3D Software

Software to
- create depth maps from stereo pairs (stereo matching),
- generate intermediate synthetic views (lenticular),
- create depth maps from multiple views (multi-view stereo matching),
- create dense 3D reconstruction (point cloud) from multiple views (structure from motion and multi-view stereo),
- perform 2D to 3D image conversion (stereo conversion),
- perform edge-preserving smoothing,
- rectify/align stereo pairs, and
- much more
is available on dropbox in rar archive form, totally free of any charge.

The executables are for the pc windows operating system in 32 bit or 64 bit flavor. It is highly recommended to use 64 bit because 32 bit application can only address 4 gigabytes of memory (on top of that, they are not updated anymore). The programs were developed on a linux machine using Qt for the graphical interface. The port to windows was done rather painlessly thanks to the MinGW compiling environment.

Given an executable (for example, DMAG5), the number (5 for DMAG5) used after the acronym (DMAG for DMAG5) is not a version number. For example, in the DMAG line of software, DMAG, DMAG2, DMAG3, DMAG4, DMAG5, DMAG6, and DMAG7 have very little to do with each other. In particular, DMAG7 is certainly not better than the rest.

The executables without GUI (Graphical User Interface) are run via a .bat file (batch file). When you unzip any of the archives containing GUI-less executables, there will be a manual for the program of interest called *_manual.pdf (where * is the name of the program) which explains how to use the program. There will also be a directory called *_test (where * is the name of the program) that contains a sample test case which can be run directly by double-clicking on the batch file after having made sure the path to the .exe executable in the batch file is correct. Typically, to run any of the GUI-less executables, one would create a directory which contains the input images, copy the batch file (*.bat) and the input file (*_input.txt) from the *_test directory, edit the batch file so that the path to the .exe executable is correct, possibly edit the input file to modify the parameters, and then double-click on the batch file to launch the program of interest. Personally, to edit a file, I use a program called Notepad++ but any other text editor can be used. If you are experiencing problems running the GUI-less executables, please send me you batch file (*.bat file) and input file (*_input.txt) where * is the name of the program you want to use.

For some executables, the image size doesn't matter too much, in other words, you can use pixel heavy stuff but, in general, it's better to take it easy on the image size and start with images that are relatively small (under two mega pixels for instance). If it looks like the executable is not completely hogging the machine, then you can try using larger images. If you really don't want to reduce the size of the images, you can make use of the downsampling factor that's available in some of the executables.

Recommendations on what to use depending on what you are looking for:

Two-view epipolar rectification:
- Use ER9b to rectify the images (also outputs min and max disparities needed by automatic depth map generators). Note that the input two views may be completely misaligned. The quality of the rectification process is given by the mean vertical disparity error (it's usually close to perfect if below 0.5 pixels). If ER9b appears to be too aggressive (large zooming effect and/or large white framing areas) and the views are not too misaligned to begin with, use StereoPhoto Maker's auto-alignment feature and get the min and max disparities with DF2. I strongly recommend using ER9b prior to generating depth maps although I understand having a lot of rotation in the images can be a problem.

Generation of depth map from two views:
- To get depth map or the depth maps, I have implemented (in chronological order): DMAG (followed by DMAG9b if you don't like fuzzy object borders), DMAG2 (use downsampling if images are large), DMAG3 (use downsampling if images are large), DMAG5, DMAG6 (use downsampling if images are large), or DMAG7. I recommend using DMAG5 for most stereo pairs because it's fast and it usually gives good results. For small stereo baseline, DMAG5b should be used instead of DMAG5. Check A Qualitative Comparison of Selected Automatic Depth Map Generators for a link to an academic looking paper that attempts to compare DMAG2, DMAG5, DMAG6, and DMAG7. Check Depth Map Generation using Optical Flow for an in-depth look at DMAG. Check Depth Map Generation using Graph Cuts for an in-depth look at DMAG3. To improve depth map quality, you may want to post-process the depth map(s) with DMAG9b.

Generation of intermediate synthetic views (tweeners) between the left and right images:
- Use FSG6 to get the intermediate frames. Input is the left image, left depth map, right image, and right depth map. Make sure that the right depth map is such that foreground is white and background is black (just like the left depth map). If the right depth map comes from a depth map generator that produces two depth maps (left and right), it will need to be color inverted before using FSG6. If you have only have one reference image and one depth map or if you want to increase the stereo effect of a stereo pair, you can use FSG4 or its big brother FSG11 to get synthetic frames on either side of the reference image.

Generation of depth map from multiple views:
- Use SfM10 (Structure from Motion) to get the nvm file and then DMAG8b to get the depth map. Computing a depth map in the multi-view case is not recommended. It makes much more sense to compute the dense 3D reconstruction instead.

3D scene reconstruction from multiple views:
- Use SfM10 (Structure from Motion) to get the nvm file and then MVS10 (Multi-View Stereo) to get the dense 3D reconstruction. The main output is a point cloud representing the 3D scene in ply format.

2D to 3D image conversion:
- Use DMAG4 to get the depth map in a semi-automatic manner. DMAG9 or DMAG11 may be used as an alternative with very similar results. To know more about DMAG4, check 2D to 3D Image Conversion using DMAG4.

Edge-preserving smoothing:
- Not sure it's needed since the depth map generators on offer here all have some kind of edge-preserving safeguards built in. If you have depth maps with outliers (tiny specks at the wrong depths), EPS9 is good at removing them. To smooth depth maps while preserving object boundaries, you can use EPS2, EPS5, or EPS7. You can see them in action in 3D Photos - Reindeer. I personally temd to prefer EPS2 which is a "true" (as opposed to approximated) bilateral filter.

Depth map improvement:
- To improve the quality of any depth map, DMAG9b can be used. It is a very powerful tool, much more potent than a mere edge preserving smoother. DMAG9b is more a depth map "improver" than a depth map generator. To see DMAG9b in action against EPS2, EPS5, and EPS7, check 3D Photos - Reindeer. For more info about DMAG9b, consult Depth Map Improvement Using The Fast Bilateral Solver.

Generation of an animated 3d gif (smooth wiggle not to be confused with the migraine inducing two-view wiggle) from a reference image and depth map:
- Use wigglemaker to get the animated gif.

What follows is the complete list of all the executables that you can download. The executables which are grouped into archives (in the rar format) are hosted on dropbox.

The executables contained in the 32-bit archive ugosoft3d.rar and 64-bit archive ugosoft3d-x64.rar are described in the following posts:
- Depth Map Automatic Generator (DMAG), and
- Frame Sequence Generator (FSG).

The executables contained in the 32-bit archive ugosoft3d-2.rar and 64-bit archive ugosoft3d-2-x64.rar are described in the following posts:
- Depth Map Automatic Generator 2 (DMAG2),
- Disparity Finder 2 (DF2),
- Frame Sequence Generator 2 (FSG2), and
- Edge Preserving Smoothing 2 (EPS2).

If you would prefer executables with no Graphical User Interface (GUI), download the 64-bit archive ugosoft3d-2-nogui-x64.rar (only contains DMAG2).

The executables contained in the 32-bit archive ugosoft3d-3.rar and 64-bit archive ugosoft3d-3-x64.rar are described in the following posts:
- Depth Map Automatic Generator 3 (DMAG3), and
- Frame Sequence Generator 3 (FSG3).

The executables contained in the 32-bit archive ugosoft3d-4.rar and 64-bit archive ugosoft3d-4-x64.rar are described in the following posts:
- Depth Map Automatic Generator 4 (DMAG4), and
- Frame Sequence Generator 4 (FSG4).

The executables contained in the 32-bit archive ugosoft3d-5.rar and 64-bit archive ugosoft3d-5-x64.rar are described in the following posts:
- Depth Map Automatic Generator 5 (DMAG5),
- Depth Map Automatic Generator 5b (DMAG5b),
- Depth Map Automatic Generator 5c (DMAG5c),
- Edge Preserving Smoothing 5 (EPS5), and
- Frame Sequence Generator 5 (FSG5).

If you would prefer executables with no Graphical User Interface (GUI), download the 64-bit archive ugosoft3d-5-nogui-x64.rar (only contains DMAG5).

The executables contained in the 32-bit archive ugosoft3d-6.rar and 64-bit archive ugosoft3d-6-x64.rar are described in the following posts:
- Depth Map Automatic Generator 6 (DMAG6) and
- Frame Sequence Generator 6 (FSG6).

If you would prefer executables with no Graphical User Interface (GUI), download the 64-bit archive ugosoft3d-6-nogui-x64.rar (only contains DMAG6).

From now on, I will not support 32 bit any longer as it is safe to say that nobody uses (or should use) Windows xp anymore. Everything is going to be 64 bit. Also, I will not bother with a graphical interface any longer. There is no point having a graphical interface when any parameter that is needed can be read from a file. Also, it is plain easier for me not to have to worry about Qt on Linux (where I develop everything) and Windows.

The executables contained in the 64-bit archive ugosoft3d-7-x64.rar are described in the following posts:
- Depth Map Automatic Generator 7 (DMAG7) and
- Edge Preserving Smoothing 7 (EPS7).

The executables contained in the 64-bit archive ugosoft3d-8-x64.rar are described in the following posts:
- Depth Map Automatic Generator 8 (DMAG8),
- Depth Map Automatic Generator 8b (DMAG8b),
- Depth Finder 8 (DF8), and
- Camera Remover 8 (CR8).

The executables contained in the 64-bit archive ugosoft3d-9-x64.rar are described in the following posts:
- Depth Map Automatic Generator 9 (DMAG9),
- Depth Map Automatic Generator 9b (DMAG9b),
- Edge Preserving Smoothing 9 (EPS9),
- Epipolar Rectification 9 (ER9), and
- Epipolar Rectification 9b (ER9b).

The executables contained in the 64-bit archive ugosoft3d-10-x64.rar are described in the following posts:
- Structure from Motion 10 (SfM10), and
- Multi View Stereo 10 (MVS10).

The executables contained in the 64-bit archive ugosoft3d-11-x64.rar are described in the following posts:
- Shallow Depth-of-Field Generator 11 (SDOFG11),
- Point Cloud Maker 11 (PCM11),
- Depth Map Automatic Generator 11 (DMAG11),
- Depth Map Automatic Generator 11b (DMAG11b), and
- Frame Sequence Generator 11 (FSG11).

But wait! There's more ...

Websites (web apps) related to automatic depth map creation:

- Wiggle Maker. For more info, visit Wiggle Maker blog post.
- Depth Map Viewer. For more info, visit Depth Map Viewer blog post.

If you have any questions, want to give me some feedback/suggestions, or just want to let me know that you are using my software (successfully I hope), send me an email (ugocapetodifrancia3d gmail com), tweet at me (ugocapeto3d), or leave a comment somewhere. The more feedback (positive or negative) I get, the more motivation I have to keep going, so don't hesitate to contact me.

When the manual says to put the correct path to the executable in the .bat file, the way to get the proper path is as follows:
- using the file explorer, go to the directory where you have extracted the archive (where the executables are),
- click on the folder symbol to the left of the current "symbolic" path,
- copy/paste that path (should already be selected) into the .bat file.

Directory path (in blue) used in .bat files.


  1. Program loads, but when I attempt to open an image it says "Cannot load c:\users....jpg etc.
    Tried several images some large, some small, same result.
    This is Windows 7 64 bit 6gb ram.
    Does it only work in 32 bit?

    1. it's because the graphics formats that are supported at the moment are: BMP, PNG, PPM, XBM, XPM. Please, use GIMP or similar to convert to PNG.

    2. All the usual graphics formats are now supported.

  2. i couldn't find this Disparity Finder 2 (DF2) program link to download.. pls provide link,.. thanks.

    1. DF2 is in ugosoft3d-2.rar
      The link is right there in the above post.

  3. Thanks for this! I haven't tried it yet, but it looks exactly like what I need. I've been wanting to create some gifs with more frames from my fuji w3 and maybe even do some lenticular prints with the added frames. Keep up the good work! - J

    1. Well, I hope they are useful to you in your endeavors. thanks for the kind words.

  4. I'm using Windows 8, and it throws an error every time I try to use it. I'm using .png files. Does it only work in previous versions of Windows?

    1. it should work on all flavors of windows that support 32 bit, windows 8, windows 7, etc. If it crashes, it's probably because it's running out of memory (images are too big). Try to use smaller size images.

  5. It's good! I'm a student working on the same concepts. Is your code for this implementation also an open source? If not can you briefly just walk me through your approach or algorithms you used?, that would help me lot through my work.
    Thank you very much.

    1. Dear Prateek:
      Thank you. The code is not open source. Each dmag version is based on a different academic approach, from optic flow to graph cuts. For each dmag version, I've tried to explain the algorithm as best as I could, usually explaining in detail the paper it comes from. if you have specific questions, just let me know.

  6. Hi Ugo,
    I realy appreciate your work but I'm stock... Can you help me?
    FATAL ERROR detect occlusion... any ideas? I use Win7 64bit and I was try ver. 32 and 64 bit.
    Thanks in advance.

    1. Which program are you using? Send me an email (to address that's on the right side) with the image files and tell me whatever parameters you were using. It may take a while before I can answer though.

  7. You might be interested in this Yahoo group for lenticular artists:

    1. cool. this link works better though:

  8. Please I want to download the follow software,can you help me?Depth Map Automatic Generator 5 (DMAG5)

  9. Hi Ugo, great work. Do you have any plans to publish a 64 bit version of EPS5 and FSG6?

    1. are they crashing? it's a bit of work to create 64-bit versions.

    2. Yes, they crash.
      I use to generate depth maps from 1/4 resolution as you suggest, and then scale them back, but for generating intermediate views for lenticular, I wanted the high resolution images.
      Maybe it is stupid to use so much resolution after all.
      Have a happy new year!

    3. ok. i'll try to create 64 bit versions this week-end then.

    4. Wow! Thanks!
      I will give it a try when you publish it and will give you feedback. Do not hurry though!!

    5. Hi:
      I have uploaded 64 bit versions of eps5 and fsg6. Don't guarantee anything though.

    6. thanks! I will give a try later on tonight

    7. Tested both and they work very well!! at least on the images that crashed on my computer with the 32bit version. Thanks and keep up with the good work!!

  10. Tried to use the 64 bit fsg6. Runs ok, but asks for two depth maps. When I run DMAG5 it only creates 1 depth map. How do I get the second depth map?

    1. You flip (horizontally) the right image, that becomes your new image1. You flip the left image, that becomes image2. You give that to DMAG5 with the exact same parameters. You flip the depth map that's obtained, it's your right depth map. it's explained here in more details: http://3dstereophoto.blogspot.com/2014/11/3d-photos-pipes.html

  11. OK, that worked. A lot of steps, but interesting. Thanks!

  12. Hi! I just came across this post. Great share! Will it work for left and right images with resolution 3856(H) X 2764(V) each?

    1. that's a bit much. it should work with 64 bit version although it's probably gonna be slow. i recommend reducing image size though and enlarge the depth map back to proper size.

  13. Hello there Ugo, I was wondering, is there an easy way to generate depth maps using DMAG4 for a sequence of images, like a video, to create 3D film from a 2D one?

    1. Hmm, no. For video where you need tracking, you'd probably be better off with gimpel3d or the pro programs like flame, flare, maya from autodesk but those cost a pretty penny. Maybe you can do things with Blender with I doubt it.

  14. Why not put a download for the linux version??

    1. i probably will at some point. thanks for your interest.

  15. Hello there Ugo, great software's! What do you think about a low resolution 2d to 3d, whit depth map from defocus(single image, no focus stacking); because i read some of that, and sounds great!

    1. Could you elaborate since I am not sure I understand?

    2. It is a method that extracts depth maps, from a single photograph, the photograph requirement is that count with depth on field. finally a depth is extracted after calculating the amount of blurring at the edges of objects. more distant objects have a greater blur. I think, is really good implementation for 2d to 3d vídeos; Pretty than best to something looks like depth propagación.
      Are some papers in internet, if do you want try search"depth from defocus single image"

    3. oh ok, I know what you mean now. No, I have never looked into extracting depth from blurring clues. Will have to look into it but i am not too confident on the outcome.

  16. Dear Sir:
    my name is Li,I am a DMAG user,I also use DMAG4 to make 3D gif,I know DMAG9 is a Latest version of DMAG4.
    so I try to download and open the .RAR file of DMAG9 by "BANDZIP",but I can not open DMAG9 normally,and did not find the cause of the problem.

    1. DMAG9 is used differently than DMAG4 as it doesn't have a graphical user interface. There's a file called dmag9_manual.pdf that explains how to use DMAG9. By the way, DMAG4 is probably superior to DMAG9 but it is slower. So you don't really need DMAG9 if you already have DMAG4.

  17. Replies
    1. i don't have win10 so can't really check myself. Which program are you using?

    2. Complains then runs away when you try to help in less than hour. Very bad. Maybe he learn his mistake because every program I test runs in Win10 x64.

    3. ha, that's no problem. Thanks for confirming that it indeed runs on win10 x64 (as it should).

  18. Hello, is possibly use EPS7 in vídeos?

  19. Salut, je voudrais essayer de convertir des fichiers video 2d en 3d, Je cherche un programme gratuit, (pourquoi pas open source) pour faire exactement ce que fait ce petit logiciel "https://www.youtube.com/watch?v=jszPDQWoszc&feature=youtu.be" 3dcombine : on met une video, et le logiciel genere des keyframes, ensuite grace a DMAG4, on cree une depth map pour chaque key frame, et puis le logiciel entre 2 key frame se debrouille pour adapter le depth map. Ya til donc un logiciel en open/free pour ca? merci.

    1. Bonjour: je ne connais pas de tel programme mais je dois avouer que je n'ai guere d'experience avec la video. Il faudrait chercher sur github des codes de "tracking". Tracking est un sujet classique en Computer Vision, donc il doit bien exister des programmes open sur github et autres pour le faire.

  20. Estimated ugo, none of the files of 64 bits me work. I have win7 of 64 bits. Them of 32 bits work perfectly. Some suggestion?
    Regards and congratulations for your work.

    1. The 64 bit exectuables are not graphical so they need to be run differently from the 32 bit executables that are all graphical. Say, you want to run dmag7 on a set of images in a directory on your computer. Make sure you follow the directions given in the file called dmag7_manual.pdf. The simplest way is to look at the directory called dmag7_test and copy the .bat file to the directory where your images are and make sure the path to the executable is correct. You also need to copy the input file called dmag7_input.txt. If you still have problems, send me your .bat file and your input file.

    2. To run dmag7, then you simply double click on the .bat file.

  21. Hi! Amazing softwares! I Have been playing with each Depth Map Generator for a while now. WHich depth map do you feel gives the best results for Stereo Pairs?

    I have had the most success with DMAG5?


    1. dmag5 works for most stereo pairs. if the edges are not crisp, you can use dmag9b to improve depth map. in some cases, you may have to use a different depth map generator like dmag3, for instance. it depends.

    2. Thanks Ugo! I will check out DMAG9 and 3.

      I am having an issue with the ground and sky not being captured for the depth map?

      I believe the ground is not matching as it gets a little bit warped toward the bottom of the image?

      But the sky is mostly blue so I am unsure why it isnt just pure black?
      Any ideas?


    3. Areas with no texture have unknown depths, so you can end up with whatever depth for those. if you're planning on creating lenticulars or wobbles/wiggles, it really doesn't matter if the depth is wrong for those areas. Anyways, try to increase the radius and see if that helps. also, make sure the stereo pair is properly aligned/rectified.

    4. Thanks for the speedy response Ugo,

      The issue is I am trying to create geometry from the depth map, so the sky will look extremely wrong if it has random depths?

      Is there a way that I can make the generator recognize that the sky has no depth thus render it black?


  22. Couldn't load that, Tryagain
    Error code: 0X80004005
    What am I doing wrong?

    1. which program are you trying to use? what operating system do you have? For non graphical programs, you need an input file, so that might be missing. check the pdf manuals that are in the directory where you extracted the .rar archive.

    2. ugosoft3d-11-x64 (PC Windows 10 x64). I do not understand this is:The le pcm11.bat must be modi ed so that the path to pcm11.exe is the correct one for your computer.

    3. When you go into the directory where dmag11.exe using the file explorer, click on the yellow folder icon that's to the left of the space at the top that shows the current directory, it will display the full path (something that starts with C:\). that path needs to be copied to the .bat file.

  23. Hi, can I use your tools to create a anaglyph 3D picture from a depth map and a picture?

    1. You can use FSG4 to create either a left or right image with reference image being at the center (you use either the lefty image + center image or center image + right image to make the anaglyph). Then use stereophotomaker to actually make the anaglyph. You can also use https://sourceforge.net/projects/two2three/ to create the anaglyph directly from image and depth map. The differences will be in the quality of the inpainting.

  24. Hi,

    Do you plan on posting source code for your apps at some point? Would be nice to see them ported to other platforms.