Tuesday, August 16, 2011

Large vs small baseline when shooting 3D

I have been on holiday with my family to a theme park called "Astrid Lindgrens Värld" (Pippi Longstockings world in English). I can recommend anyone with small children to go there, my son just loves it.

Of course I brought my 3D camera (which also shots good 2D photos). Below are some shots I made of a stone bridge. I made some experiments with the baseline (the distance between photo shots). And you can see the results in the 3D boxes below.

Small baseline

A small baseline is used (the cameras built in baseline wish is about 75mm or about 3inch)

The result of the "small baseline" shot. (click and drag to rotate 3D model)



Large baseline
A large baseline is used. A normal digital camera is used and the camera is moved between photo shots.
The result of the "large baseline" shot. (click and drag to rotate 3D model)


Conclusion
As you can see, the 3D model made with the large baseline is much "smoother". The shape of the rocks are captured more accurately. The "small baseline" model is not as smooth at all. This is not surprising when using a baseline much smaller than the size of the object you are photographing, the depth in the picture is much harder to calculate for the computer. In this case the 3D camera is not doing a better job than a normal digital camera. The 3D camera (which is in fact two cameras built into one with a small distance (baseline) between) is best used as a normal 2D camera when shooting large objects.

My recommendations for creating 3D models from photos:
  • Use a 3D camera when photographing small objects close by (of course a 2D camera works too but it is harder to make perfect shots).
  • Use a normal digital (2D) camera when photographing large objects (or use your 3D camera as a 2D camera). And remember to use a larger baseline.


Monday, August 8, 2011

Pigeons in a park, 3D model of moving animals

A 3D model I created from photos of pigeons in a park. Here is an example when a 3D camera is superior to a normal digital camera when creating 3D models. If I used a normal camera for the two shots, the pigeons would have moved in between the two shots and thus ruined the 3D model. But the 3D camera makes both shots in the same millisecond and thus making it possible to make a 3D model of moving animals!

If you use a normal digital camera, only create 3D models of things that can stand still between the two photo shots (animals are almost impossible, even people have a hard time standing still between photo shots sometimes).

See the photos and 3D model below (if your browser supports WebGl like Firefox and Chrome) or visit the 3D page and download in other file formats here.


Photo 1
Photo 2
3D model below, click and drag to rotate.

Answers to some relevant questions

After my last blog post I've received some relevant questions which I will now answer:

Do you really need a 3D camera to create 3D models?
No! You only need a normal digital camera (or a cellphone with a camera). The important thing is how you shoot your photos. Just any photos can not be converted to 3D models, only the ones that you have shot with some skills. And if you use a normal digital camera, you need to take much more care when shooting your photos than if you do if you use a real 3D camera.
View the figure below, if you use a normal digital camera, you will need to take two photos with a small distance between the two photo shots. This is what the 3D camera does for you, it is after all only two "normal" cameras built into one.
Angle/Distance between photo shots if you use a normal digital camera

How do you convert the photos to 3D models? And can I do this to?
To create the 3D models I use the webpage www.photo-to-3d.com/model.html where I simply upload my photos and wait for the 3D model to be calculated (normally within 5-10 minutes). The webpage is public for anyone to use.
But remember that not just any photo can be converted to 3D, you must have some skills when making the two photo shots. (or use a 3D camera if you want it to be simple).

What program do you recommend for viewing/editing 3D models created from photos?
I recomend Google SketchUp, I use it myself. It is easy to use and 3D models created from www.photo-to-3d.com can be imported as 3DS files.




Some more experiments with my new 3D camera

Today I made some more experiments. The 3D camera really is great for creating 3D models. Of course I could  have used a normal digital camera, but to get the same result I would have had to be extremely careful using a normal camera.

Se the result below, if your browser supports WebGL (like Firfox and Chrome), you will see a real 3D turtle below.

The two photos that the 3D model was created from:




The 3D model: (Click and drag to rotate)





Saturday, August 6, 2011

3D model created with my new 3D camera

A couple of days ago I got my new Fujifilm Finepix W3 camera. Its a real 3D camera that snap two photos at the same time (one for each eye). The photos can then be viewed in 3D if you have a monitor or TV that supports it. But that's not why I bought it...
It is perfect for creating 3D models. It is much simpler to create 3D models with this than with a normal digital camera since both pictures are shot at exactly the same time and with a perfect angle of each other. I have spent some time since I got it to make my programs support MPO files (which is the file format created by the 3D camera) and now I think it works.
The result of one of my first attempts below, first the pictures snapped by the camera, and then a shaded model and a textured model.
View the model in real 3D here (if your browser supports WebGL like Firefox or Chrome).


First photo
Second photo

Shaded model viewed in SketchUp

Textured model viewed in SketchUp

This is my first blog entry

I am blogging about my hobby, creating 3D models out of photos. I am a programmer and have been fascinated with the idea that there is enough information in two (or more photos) to create a 3D model (this is what your brain does). The only question is "how"? It has been a hobby of mine for at least 11 years to try to figure this out. The result is the web site that I have created, www.photo-to-3d.com where you can see the result or try my algorithms yourself on your own photos. I know there is a lot of research going on in the academic world to do this, and some known algorithms to do this, but currently I only use my own algorithms.