Can You Build a 3D Model From Phone Photos? — Getting Started With Photogrammetry
You can build a 3D model from nothing but photos taken on a phone. That claim got my attention, so I went through photogrammetry from top to bottom. I normally write about VR, 3D printing and AI, and I run AI inference daily on an Ubuntu PC at home with two GPUs in it (an RTX 3090 and an RTX 3060).
Going through official tutorials and user examples: even a phone without LiDAR (a sensor that measures distance with light), such as a Pixel 8, can produce a textured 3D model in a few minutes if you take about 40 photos and drop them into Luma AI. My honest first reaction was “that is all it takes?"
Scan with Polycam using the LiDAR sensor on an iPhone 12 Pro Max and the shape accuracy steps up, with many reports that the mesh holds together even in a dimly lit room. Whether LiDAR really makes that much difference was the other thing I wanted to know.
From my research, a phone without LiDAR is good enough for practical work as long as you shoot 30 or more photos somewhere bright. This article covers how the technology works, compares the apps, goes through shooting technique, and looks at combining phone capture with PC processing. It should be useful whether you want material for 3D printing or want to bring real objects into VR. (Prices are Japanese retail as of April 2026; ¥1,000 is roughly $6.70.)
- 1. What photogrammetry is
- 2. How Structure from Motion works
- 3. Four approaches to 3D scanning
- 4. Five phone apps compared
- 5. With and without LiDAR: what changes
- 6. Ease against quality
- 7. Seven things that raise your success rate
- 8. What to do with the model
- 9. Compared with processing on a PC
- 10. In summary
What photogrammetry is
Photogrammetry reconstructs a 3D model from multiple photographs. Shoot a subject from many angles and the software matches feature points across the photos, recovering both shape and texture.
It originated in surveying and the digital preservation of cultural artefacts, and required dedicated cameras and powerful computers. As of 2026, AI has improved feature matching and depth estimation enormously, and the situation has changed completely.
Photogrammetry as it was:
- 200–500 photos on a DSLR
- Processing in dedicated software such as COLMAP
- Several hours to half a day on an RTX 3090-class GPU
Photogrammetry in 2026:
- 20–50 photos on a phone
- The app processes it automatically (in the cloud or on the device)
- A finished 3D model in 3–10 minutes
Behind that change is AI filling in from fewer photos. Blind spots used to come out as holes; today’s algorithms guess at the missing parts and fill them. Not perfect, but well into usable territory.
How Structure from Motion works
“Take photos on a phone and get a 3D model" sounds like magic, but rigorous mathematics is running underneath. Here is the core of it, Structure from Motion (SfM), explained with the formulas but in plain terms.
Step 1: detecting feature points
First, find landmarks (feature points) in each photo. Corners, edges, and areas with strong texture contrast. A single photo yields thousands to tens of thousands of them.
The algorithms have advanced steadily.
| Algorithm | Year | Approach | Strength | Weakness |
|---|---|---|---|---|
| SIFT | 2004 | Hand-designed filters | Rotation and scale invariant. The industry standard for years | Slow. Weak in low light |
| ORB | 2011 | Hand-designed (fast version) | Over ten times faster than SIFT. Patent-free | Less accurate than SIFT |
| SuperPoint | 2018 | CNN (deep learning) | Learned, so it copes with low light and low-texture scenes | GPU recommended. Large model |
| LightGlue | 2023 | Transformer | Used with SuperPoint. Substantially better matching accuracy | Somewhat expensive to compute |
From SIFT in 2004 to LightGlue in 2023, roughly twenty years took this from hand-designed filters through deep learning to transformers. The current SuperPoint plus LightGlue combination is said to match feature points reliably even on dark or texture-poor surfaces. That improvement in matching is much of why phone apps can produce a decent model from few photos.
Step 2: recovering camera positions with epipolar geometry
When the same feature point is found in two photos, you have to work backwards to where the two cameras were. That is what epipolar geometry does.
The geometric relationship between two cameras is described by the essential matrix E.
x'ᵀ · E · x = 0
Here x and x’ are the 2D coordinates where the same 3D point appears in each of the two photos.
Doing that for every pair of photos and adding camera positions one at a time is SfM’s incremental reconstruction. Start with two photos, add a third, a fourth, and grow the point cloud step by step.
Step 3: bundle adjustment to minimise error
The camera positions and point cloud that SfM produces accumulate error. Bundle adjustment corrects all of it at once, nudging every camera position and every 3D point simultaneously to minimise the error when the points are projected back into each camera.
min Σ ‖xᵢⱼ − π(Cⱼ, Xᵢ)‖²
Photo count against accuracy
More photos means more accuracy, and sharply more processing time. Feature matching in SfM is O(N²) in the number of photos N. Thirty photos means 30×30 = 900 pairs; a hundred means 10,000.
Here is a guide to accuracy against time (scanning a single figurine, based on user reports processing with Meshroom on an RTX 3090-class GPU).
| Photos | Coverage | SfM time | Mesh accuracy | Holes |
|---|---|---|---|---|
| 10 | About 180 degrees | About 1 minute | Low (shape distorts) | Large holes |
| 20 | About 300 degrees | About 3 minutes | Moderate | Small holes |
| 30–40 | 360 degrees | About 8–15 minutes | Practical | Effectively none |
| 60 | 360 degrees (dense) | About 25 minutes | High | None |
| 100 | 360 degrees (very dense) | About 60 minutes | Very high | None |
Four approaches to 3D scanning
Photogrammetry is not the only way to build a 3D model on a phone. As of 2026 there are four main approaches, each good at something different.
| Item | Photogrammetry | 3D Gaussian Splatting | NeRF | LiDAR scanning |
|---|---|---|---|---|
| Input | Photos (20–50) | Photos or video | Photos (50–200) | Data from a LiDAR sensor |
| How it works | Feature matching then mesh generation | Represents space with 3D Gaussians | A neural network learns the light field | Measures distance with an infrared laser |
| Texture quality | Very good, since it is the photographs | Excellent, photoreal | Excellent but noisy | Poor, texture must come from elsewhere |
| Shape accuracy | Fair, edges soften | Fair, degrades on mesh conversion | Fair, degrades on mesh conversion | Excellent, it is distance data |
| Speed | Minutes to tens of minutes | Minutes to 30 minutes | Hours | Real time to minutes |
| Equipment | A phone is enough | Phone or PC (GPU recommended) | PC (GPU essential) | A LiDAR phone or dedicated hardware |
| Suits 3D printing | Very well, mesh straight out | Poorly, needs mesh conversion | Poorly, needs mesh conversion | Perfectly, usable as-is |
| In common use since | The 2010s | 2024, spreading fast | 2022 | 2020 (iPhone 12 Pro onwards) |
Photogrammetry has the longest history and the advantage of working entirely on a phone. Textures come from photographs so colour reproduction is good, and it outputs a mesh you can print directly.
3D Gaussian Splatting was presented at SIGGRAPH in 2023 and spread rapidly from 2024. Instead of a mesh (a collection of triangles) it represents space with 3D Gaussians, blurry points. It takes video as input, which makes shooting easy, and it suits real-time rendering. For 3D printing it has to be converted to a mesh, and quality falls in the process.
NeRF (Neural Radiance Fields) is high quality but needs a GPU and time. Training one scene can take hours even on an RTX 3090. It has a research flavour and does not suit casual use on a phone.
LiDAR scanning uses the sensor in the iPhone 12 Pro and later. Measuring distance directly with an infrared laser gives high shape accuracy and works in the dark. Texture has to be applied from camera images, so combining it with photogrammetry is the ideal.
Five phone apps compared
Which app you use matters. Here is the state of the main five as of April 2026. Prices move quickly, so check the official pages before committing.
| App | Price | Platforms | Uses LiDAR | 3DGS | Export formats | Processing |
|---|---|---|---|---|---|---|
| Luma AI | Free with paid tiers | iOS / Android | No | Yes | glTF, USDZ, PLY, OBJ | Cloud |
| Polycam | Free with paid plans | iOS / Android | Yes | Partly | OBJ, STL, glTF, USDZ, FBX, PLY | Cloud, LiDAR locally |
| Apple Object Capture | Free | iOS only (with a Mac) | Yes | No | USDZ, OBJ | Local (on the Mac) |
| Kiri Engine | Free with paid plans | iOS / Android | Partly | Partly | OBJ, STL, glTF, FBX, PLY | Cloud |
| RealityScan | Free | iOS / Android | No | No | OBJ, GLB | Cloud (Sketchfab integration) |
What each one is like
Luma AI's defining feature is 3DGS support. Shoot a video on a phone and you get a photoreal 3D scene. For “I just want to try it," this is the easiest way. It does not support LiDAR, and detailed export settings require a paid plan.
Polycam switches between LiDAR and photogrammetry modes, so one app covers both. It exports in many formats including STL, which makes it a good fit for 3D printing. The free version limits exports to glTF, so STL and other formats need a paid plan.
Apple Object Capture shoots on an iPhone and processes on a Mac. Being Apple’s own, it works naturally with USDZ and is easy to use with ARKit. It requires a Mac and does not support Android.
Kiri Engine handles both photogrammetry and 3DGS in the cloud. Scanning and export work on the free tier; the paid Premium raises the per-scan photo limit and similar constraints, letting you trade quality against processing time.
RealityScan comes from Epic Games (of Unreal Engine) and descends from the desktop RealityCapture. Its Sketchfab integration is strong, so scanned models can be published to the web directly. It suits game developers building assets.
With and without LiDAR: what changes
Taking an iPhone 12 Pro Max (with LiDAR) and a Pixel 8 (without) as examples, here is what differs, based on published specifications and user reviews of results.
Device specifications
| Item | iPhone 12 Pro Max | Pixel 8 |
|---|---|---|
| LiDAR sensor | Yes (direct time-of-flight) | No |
| Main camera | 12MP, f/1.6 | 50MP, f/1.68 |
| Ultra-wide | 12MP, f/2.4 | 12MP, f/2.2 |
| LiDAR range | About 5m | — |
| Depth estimation | LiDAR fused with the cameras | AI estimation in software |
Quality by condition
The tendencies that emerge from reviews and posted results:
| Conditions | iPhone 12 Pro Max (LiDAR) | Pixel 8 (no LiDAR) | Where the difference shows |
|---|---|---|---|
| Indoors, bright | Excellent | Very good | Fine without LiDAR. Little difference |
| Indoors, dim | Very good | Poor | LiDAR’s home ground. A large gap in the dark |
| Outdoors, clear | Very good | Very good | With enough light there is little in it |
| Small objects (under 10cm) | Excellent | Fair | Close-range depth is accurate. Sharper edges |
| A whole room | Very good | Poor | LiDAR measures distance accurately, so walls and floors distort less |
From what I found, a phone without LiDAR is practical for medium to large subjects in good light. In dim conditions, on small objects, and when scanning a whole room, the difference is pronounced. That is consistent across the reviews.
The Pixel 8’s 50MP main camera means texture colour reproduction can actually beat the iPhone. It loses on shape accuracy, but on texture quality a phone without LiDAR can compete.
Ease against quality
Here is where each approach sits on two axes: how easy it is, and how good the model is.
| Approach | Ease (out of 10) | Quality (out of 10) | Notes |
|---|---|---|---|
| Phone (no LiDAR) with Luma AI | 9 | 5 | The easiest. Shoot a video. Quality is a compromise |
| Phone (LiDAR) with Polycam | 8 | 7 | LiDAR raises quality. Well balanced |
| Phone (LiDAR) with Apple Object Capture | 7 | 7 | Needing a Mac makes it slightly less convenient |
| PC with COLMAP and 3DGS | 3 | 9 | Setting up the environment is work, but quality is high |
| PC with Meshroom (photogrammetry) | 4 | 8 | Open source. Needs a GPU |
| A dedicated 3D scanner | 2 | 10 | The best quality, but the hardware starts around $670 |
quality 10 / ease 2
quality 9 / ease 3
quality 8 / ease 4
quality 7 / ease 8
quality 7 / ease 7
quality 5 / ease 9
Reading that
- Top right would be easy and high quality. That corner is currently empty; every approach trades one against the other
- Bottom right, Luma AI, is for people who want to try it. Even at 5/10, it is plenty for a VR backdrop or sharing on the web
- Top left, PC with COLMAP and 3DGS or a dedicated scanner, is for quality above all. It costs setup effort or money, but this is where you go for precise 3D-printed parts
- The middle, LiDAR with Polycam, is the balanced zone: phone-only and decent quality. If you have an iPhone Pro, start here
Seven things that raise your success rate
Photogrammetry quality is largely decided at the moment of shooting. Before any question of software, the input matters. Here are the points that recur across official tutorials and user knowledge.
1. Take 30–50 photos all the way around
Circle the subject at about 20-degree intervals, which gives you around 18 photos. Add 15–20 from above and about 10 from below at an angle, for a total of 30–50. Too few and you get holes; too many and processing time climbs. This is the balance point.
2. Shoot somewhere bright
Natural light is best: by a window indoors, or an overcast day outside. Direct sun creates hard shadows, and texture in the shadows goes dark and featureless. A room lit only by fluorescents is fine with LiDAR; without it, adding light improves accuracy.
3. Texture in the background helps
Put the subject on a pure white table and the software may not find background feature points, and alignment fails. Lay down newspaper, or use a wooden table: a patterned background stabilises things.
4. Do not move the subject
If it moves mid-shoot, the model falls apart. Scanning people is currently very difficult; this assumes still objects. Fabric and plants moving in a breeze are also difficult.
5. Reflective and transparent materials do not work
Glass, mirrors and polished metal are photogrammetry’s natural enemies. Reflections change with camera position, so feature matching fails. Where you can apply matting spray, doing so improves things dramatically.
6. Avoid soft focus and camera shake
A single blurred photo degrades accuracy in that region. Hold the phone in both hands and stay still for half a second after the shutter. A tripod and a remote shutter would be ideal.
7. Mind the overlap
Aim for 60–80% overlap between adjacent photos. With too little, the software cannot tell that two photos connect. In practice: keep the subject centred in the frame and move sideways in small steps.
What to do with the model
A scanned model on its own is just something to look at. Four common uses.
3D printing
The most obvious. Export as STL or OBJ, load it into a slicer (Cura, PrusaSlicer and so on), and print. Photogrammetry meshes are often uneven, so remeshing in something like Meshmixer before printing is standard practice.
Bringing it into VR
Export as glTF or USD and import into Unity. Place it in a VRChat world, or use it in your own VR application. Scanned models of real objects carry a lived-in quality that hand-made models do not, which many people say adds to the realism of a VR space.
Publishing on the web
Upload to Sketchfab and anyone can spin the model around in a browser. Luma AI has a share function, so a URL is enough to show someone a 3DGS scene. It can be embedded in a blog post too.
AR
Overlay the model on the real world with Quick Look on iPhone or ARCore on Android. Export USDZ and an iPhone can view it in AR straight from Safari. Useful for checking whether furniture fits, or putting a figurine on your desk.
Compared with processing on a PC
Doing everything on a phone is appealing, but for quality, PC processing is an option. I have an RTX 3090 to hand, so I was curious. Here is the comparison from published information.
Phone only
- Good: 5–10 minutes from shooting to a finished model. Install an app and start. No PC knowledge needed
- Not so good: limits on resolution and accuracy. Restricted export formats on free tiers. With cloud processing, your data goes to a server
PC processing (an RTX 3090-class GPU)
- COLMAP into 3D Gaussian Splatting: match features in COLMAP, then train 3DGS. Around 30 minutes to an hour on an RTX 3090 class. Quality is very high and the scenes are photoreal. Setting up the environment (CUDA, Python, various libraries) is a chore
- Meshroom (AliceVision): open-source photogrammetry with a GUI, so more approachable than COLMAP. Around 20–40 minutes for 50 photos on an RTX 3090 class. It outputs mesh and texture directly, which suits 3D printing
The combination: shoot on a phone, finish on a PC
The workflow that appears most often among quality-focused users:
- Shoot 30–50 photos on a phone. If LiDAR is available, capture the LiDAR data in Polycam as well
- Transfer the photos to the PC however you like
- Run high-accuracy photogrammetry in Meshroom. Around 20–40 minutes on an RTX 3090 class
- Fix things in Blender as needed: delete what you do not want, fill holes, remesh
- Export for the purpose: STL for printing, glTF for VR, GLB for the web
It is more work than the phone-only route, but quality is said to rise a step or two. For small objects in particular, processing in Meshroom’s high-accuracy mode reportedly changes how well edges are reproduced.
In summary
As of 2026, one phone is enough to make a 3D model. Pulling the research together:
- A phone without LiDAR (a Pixel 8, say) can produce a practical model from 30-plus photos in good light. With Luma AI, plenty of examples show a video being enough, finished in minutes
- With LiDAR (an iPhone Pro), dim rooms and small objects scan reliably too. Pairing that with Polycam is currently rated the best-balanced option
- For serious quality, shoot on the phone and process on a PC. With an RTX 3090-class GPU, COLMAP or Meshroom gets you a step further
Starting is simple: install Luma AI or Polycam and photograph something small nearby. Reading accounts of “an object I own becoming a model I can spin around" made me want to try it here, combined with PC processing on the RTX 3090.
Hardware mentioned
[kimono_product id="16559″]Sources
- RealityScan (Epic Games) official site — app overview, features, LiDAR and laser scan support
- Polycam pricing — free-tier export limits and paid plan pricing
- KIRI Engine pricing — free against Premium, photo count limits
- Luma AI — 3DGS generation, export formats, platforms
- LightGlue (cvg, ICCV 2023) — the year and approach for feature matching
- 3D Gaussian Splatting (SIGGRAPH 2023, Kerbl et al.) — the year 3DGS was presented
- Evaluation of the Apple iPhone 12 Pro LiDAR (Scientific Reports) — range and characteristics
- Google Pixel 8 specifications (GSMArena) — 50MP f/1.68 main camera and ultra-wide
- Building a 3D model from phone photos (photogrammetry) (you are here)
- Turning a moving person into 3D video (4D Gaussian Splatting)