1 (edited by Ben321 2012-01-27 1:38:53)

Topic: Generate distance data from 2 images.

You know how our brain can judge distance to different objects in a scene from 2 images of that scene (left and right images from our eyes). I'm wondering if you could implement such a function in Image Anayzer. A camera on a rack/pinion mount could take a picture and then be moved perpendicular to the direction it is facing, and take another picture (or better yet 2 side by side cameras, so no movement would be needed).

If you could implement it, these 2 images could then be loaded into Image Analyzer and it would compare them and calculate the distance from the camera's position to different points on the image. The closer an an object is to the camera the brighter a pixel of that object would be (alternatively it could be made darker).

Could you please add such a function? I don't know what the algorithm is for doing this, and I can't find any software that exists that can do this. I'll need to have software that can do this for a college science project I'm doing, as it involves putting 2 mini video cameras mounted side by side on a rocket that will be launched and the cameras will wirelessly send images back to a computer. A pair of images will need to be compared to generate depth data for this project. I don't even need 3d video, just a depth image, because I'll be extracting a frame from each camera's video (2 corresponding frames) using already available software, and then comparing them to generate depth data. The nature of the project is not so technical that the professor expects me to program this myself. So I'm NOT asking you to cheat for me when I ask this of you. So if you could be so kind as to implement an algorithm to calculate depths in an image from 2 side-by-side images in Image Analyzer, I would be very thankful.

2

Re: Generate distance data from 2 images.

The reason why such software I not easy find is that basically it is a very complex problem to solve and a lot of reasearh has been done in this area. There are some programs that can do it - not that I remember them exactly.
I did some experiments with such algorithms some years ago - you can try it here:
http://meesoft.logicnet.dk/Analyzer/plu … Motion.htm
How well it works depends very much on the input pictures, but sometimes it can produce nice results.

Michael Vinther

> software developer <

3 (edited by Ben321 2012-01-28 13:38:46)

Re: Generate distance data from 2 images.

Thanks, that looks promising. Unfortunately the 3d model viewer can only output 3d model files. I was hoping that I could output a distance map where the points farther out of the screen (larger z coordinate values) would be brighter pixels, and the farther into the screen ones (smaller z coordinate values) would be darker pixels. Thus the depth data could be saved as an ordinary 2d bitmap file with brightness being the z coordinate. Do you suppose you could set up a customized copy of your above mentioned software to have that capability?

Also when I click in the image it puts dots like in morphing program. Is that how your software detects offsets? It depends on the human eye to do it? Or does the program do it automatically, and the dots placement are just a leftover from the morphing program?

4

Re: Generate distance data from 2 images.

If you save the 3D model and open it in Image Analyzer, you can press the Screenshot button in the 3D model viewer to get both the rendered view and the depth map.

Michael Vinther

> software developer <