I just added a few Photogrammetry experiments to my portfolio. This blog post is meant to encourage people to give Photogrammetry a try. If you already know a lot about the subject you may not learn anything new here. :)
Photogrammetry is basically 3d scanning using still images. You take a bunch of photos of a subject from different angles. The "subject" can be a rock, a sandwich, a human or anything really. Then you feed those images into a Photogrammetry software. The software does all sorts of sophisticated calculations and (hopefully) produces an accurate 3d reconstruction of the subject.
5+ years ago I attempted to do image reconstruction with the now discontinued Autodesk 123catch . I couldn't obtain good results back then so I let it go. I was still interested in the topic tho so I kept consuming relevant information.
And a few months ago I stumbled upon a software called Meshroom . Supposedly, it was not only free but also produced high quality results and it was very user friendly.
That sparked my interest again. I ran a few quick tests. You can see what I came up with in the video below. The assets aren't perfect but I thought they hold some promise. I have also shared the 3d models for free on gumroad if you're interested. The links are at the end of this post.
I am quite excited about photogrammetry. With this blog post I am hoping to inspire other artist to give it a go.
So here are a few assumptions that were holding me back and why they were wrong.
●"you need expensive gear"
Not really. You can get decent results using a more or less recent smartphone and PC. My phone and my PC are not top of the line but they did the trick. With better gear you can probably produce better assets but it's not a showstopper.
●"you need to take hundreds of photos of the subject"
When I ran my experiments I realized you can get surprisingly good reconstructions with few images. Sometimes as few as 10 or so. This wall was recreated from just 12 photos. Nevertheless the software was able to figure out the shape of the blocks and even the spaces between the blocks.
●"operating the Photogrammetry software is difficult"
Meshroom is extremely easy to use. Create a new project, throw some images in there, click Start. Then wait a while.
●"the reconstruction process takes ages"
most of my tests finished within an hour. Granted, I haven't been using a ton of images and huge resolutions. I read that as the number and resolution of the images goes up, computation time and memory consumption goes up exponentially. Nevertheless I feel like I can produce some really nice models even with limited resources. Also my PC stays responsive throughout the computations. So I can do other work while Meshroom is doing its thing.
So in a nutshell I felt like the process would be difficult and inaccessible. But that wasn't the case at all :)
Failures
The video above shows my first "successful" tests. "Success"means that Meshroom was able to make sense of all my images and the reconstructed 3d model was close enough to the real thing.
I also had a bunch of failed projects. "Failure" means that Meshroom was unable to connect the images I fed it. The computation either stopped with an error or subject was only partially reconstructed or the quality was very poor.
I noticed a common theme with my failed projects. Almost all of them were shot indoors. I am pretty sure the main reason for this is ..."light"! I don't have any photography equipment at my house so my only available light sources are windows and household lamps. They produce harsh shadows and highlights. Especially when taking a picture where the window is visible you get backlighting. I found that Meshroom is unable to reconstruct from those images.
Of course there is a solution to this problem: Photography equipment. A couple of softboxes will probably enable me to shoot at home! I am planning to purchase some in the future. Until then I won't be shooting at home. It's a shame because I'd love to scan a lot of the food from my fridge :P
So now I am hooked on photogrammetry! I walk around and literally go "Wooo!" when I see a nice rock laying on the side of the road. :)
I'll definitely write another blog post on this topic. Today the weather was nice and cloudy and I had some time on my hands. So I went out and came back home with a few hundred photos worth of scanning material. I have a dozen new projects cooking as I write this.
I may also write about how to get good reconstructions. For now here the most important tips I can give you:
- -take plenty of images but don't overdo it. 10~50 images is great for your first experiments
- -shoot in highres
- -make sure the images are sharp
- -make sure each picture you take overlaps with the one before it (around 40% overlap is recommended)
- -if you're a beginner shoot outside rather than indoors
- -cloudy, overcast days provide the ideal lighting
- -highly reflective and/or transparent objects are almost impossible to scan. Avoid them
- -rocks and stone walls make for a great subject
- -use Meshroom. It's free, intuitive and produces good results
Here are a few free 3d models that I share on gumroad. I'll be uploading more later.
https://gum.co/Cobblestone_Wall
https://gum.co/wall_photogrammetry
https://gum.co/rock_photogrammetry
https://gum.co/Street_Tiles_photogrammetry
Hope this post has been informative and interesting.
Got something related to photogrammetry that you want to share? I am interested so let me know!