PhotoSynth Toolkit is a photogrammetry solution based on PhotoSynth and PMVS2.

Development status:


  • triangulate feature tracks computed with OpenSynther thanks to camera pose found by PhotoSynth (this way we can use CMVS)


  • PhotoSynth2PMVS: enable to run PMVS2 with a downloaded PhotoSynth point cloud
  • PMVS2: created by Yasutaka Furukawa
  • PhotoSynthViewer: Ogre3D PhotoSynth viewer
  • PMVSVisibilityComputer: tool to generate vis.dat from a previous PMVS2 call
  • PhotoSynthDownloader: download PhotoSynth point cloud and cameras parameters
  • PhotoSynthTileDownloader: download tiles of HD picture and compose them using Ogre::Canvas


Source code: github repository (MIT license).
Help: Photogrammetry forum.

Video tutorials

Josh Harle from Neonascent has created 5 video tutorials explaining how to use my PhotoSynthToolkit:

  1. Creating Synth:
  2. Downloading and Viewing:
  3. Viewing, Dense Reconstruction:
  4. Meshing model, creating texture:
  5. Projecting Hi-Res Images:

Related post:



  1. Derek says:

    Hi, just tried PhotoSynthtoolkit5, when I try to view watch the photosynth output I’m getting an error stating that I need d3dx9-41.dll as it’s missing from my computer, any ideas as to why?
    I’ve installed DX9, to no avail.


  2. admin says:

    @Derek: you need to install the latest directx runtime: it should fix your missing file error.

  3. Derek says:

    Thanks, tried installing dx9 but looks like it was an old package.

    Will let you know how I get on,


  4. Piotr says:

    All of the versions I try do not work (3,4,6,7). It suspends while downloading. Error report is as follows:

  5. admin says:

    @Piotr: I think that your comment has been filtered automatically, sorry for that… Concerning your trouble with synth downloading: are you using a proxy? (I think that PhotoSynthToolkit doesn’t support proxy)

  6. Piotr says:

    All works, it was a path problem. I save to C:\ and the problem is gone. Thank You.

  7. w gao says:

    Thanks for your great works and I just tried PhotoSynthtoolkit7. When I try to view watch the photosynth output, I can get the Ogre3D photosynth viewer. But the thumb image don’t display in the viewer, they are transparent rectangle in each camera position. From the weblink:, the image shows that the thumb images should be views in each camera position. Why? how can I fix it? Thanks.

  8. admin says:

    @w gao: Can you send me the link of your Synth and give me more information about your computer configuration? (3D Card: Nvidia or ATI? amout of ram on the GPU? Ogre.log file) Otherwise I can’t help you…

  9. JP says:

    I’m just trying to get the basics with PhotoSynthtoolkit7… I must be missing something because when I input my url the only thing that happens is a PhotoSynthDownloader.log is created… that’s it. Any ideas? thanks

  10. JoeB says:

    I spent little time to find the best way to take photographs (to get 100% synthy) and now I can create great models! Before I knew about your toolkit I’d tried to make more dense clouds by increase number of photos (it was stupid, I know J ). However one thing I’d like to have is Linux binaries. Do you plan to compile your source codes for Linux? I think a lot of users who use this superb toolkit work on open source operating systems

  11. Henri says:

    @JoeB: The PhotoSynthToolkit needs a Synth created by PhotoSynth (only available on Windows AFAIK). So PhotoSynthToolkit’s users are forced to use Windows anyway. This is not true for the SFMToolkit but my toolkits are using Windows scripting instead of Python to avoid users the needs to install a scripting solution. If you want a solution compatible with Linux you can take a look at osm-bundler: the only drawback is that they doesn’t have integrated my GPU-accelerated feature extraction and matching solution (BundlerMatcher). But I think that all my projects are based on cross-platform libraries so it should be pretty straightforward to compile them for Linux: you just need to re-write the scripting with another solution.

  12. JoeB says:

    Thank you very much for your comments and suggestions. I am still very interested in using your PhotosynthToolkit in Linux. You are right, I can re-write your scripts for Linux. My problem is to compile your binaries without having gcc MakeFile. I think your Linux followers would appreciate if you could prepare source codes for Linux compiling. It would be even better if you could compile binaries for Linux but this is probably too much to ask :)

  13. Void says:

    I’m having the same problem as JP… I enter the url of my synth, the black window pops up for a second or two, then is gone. I get the downloader.log file, but no thumbnails, distort folder, etc…

  14. Henri says:

    @Void: The PhotoSynthToolkit doesn’t support path containing whitespace or fancy character. Can you try to download your Synth to c:\ ? Proxy are also not supported.

  15. Tomer says:


    I’m having trouble projecting hi-res images on a 360 degree 3d model of a building-

    The projection in max only works on one side of the building.

    Has anyone encountered this issue?

    Or maybe I’m trying to do something that’s not possible?

    In Josh’s video he shows the projection
    just on one side of the building…

    Thanks in advance,

    P.S. excuse me if this isn’t the place to ask these questions, but I haven’t found a way to contact Josh regarding this.

  16. Jerem says:

    Great software,
    I’m just wondering something concerning PMVS2 : a lot of MVS algorithms exists with different characteristics, what made you decided to use PMVS2 as a MVS algorithm ?

  17. Henri says:

    @Jerem: I’ve used PMVS2 as AFAIK it was the only one available for free. I’ve also managed to use CMP MVS but I don’t have updated the toolkit with it. And now I’m obviously using acute3D solution as I’m working for them ;-) .

  18. Antoine says:

    Bonjour Henri,

    J’essaie de télécharger un synth mais j’ai une erreur :
    “photosynthdownloader a cessé de fonctionner”
    et “debug” indique access violation adr:1377169

    Je suis sous win7 x32.

    est-ce que le programme est bien prévu pour le x32 ?
    merci beaucoup

  19. Henri says:

    @Antoine: PhotoSynthToolkit should indeed be working on a 32bit system too. Have you installed the visual studio redistribuable?

  20. Juda says:

    Hi, thank you for the programs you have made here…
    But, I encountered some problems in runing the program
    1. The viewing PhotoSynth output, the error stated that ‘You need to download thumbs!……00000000.jpeg not found, Which clearly the picture is already in the thumbs folder
    2. The third step for preparing for PMVS2 also has error, the windows script host stated Line 215, Char 3, Error: Path Not Found, Code 800A004C, source Microsoft JScript Runtime Error

    Maybe you can help me with this. Thank You

    Best Regards,

  21. Mike says:

    Thank you for sharing interesting works.
    I try many times to run the photosynthviewer.exe but it doesn’t work. the error “photosynthviewer.exe has stop working” appear once i run it. please help me. This is my computer configuration: CPU core i5, RAM 4GB, Graphic: NVIDIA GT 220. Thank you for your help.

  22. Nicolas says:

    Hi Henri,

    Fantastic job really!

    I was just wondering how the photosynth toolkit would handle multiple projects issued by photosynth when it fails to match all the viewpoints. I see it’d be fairly simple to glue them together in meshlab afterwards… Merci mille fois!


  23. Matteop says:

    Hi Henri, I’m experiencing some problems with Toolkit 7. I’ve earlier been able to make 3D-reconstructions with previous versions, but not yet with Toolkit 7.

    After clicking “Download Synth”, setting the output path and saying “yes” for the download of the thumbs in the folder, the black window appears very shortly and in the output folder there is a notepad file “PhotoSynthDownloader”. The text in it says “value type is 6 not 0″.

    Do you have an idea of what it may cause this problem?


  24. David says:

    Trying to run, and like a couple others, the first step simply crashes in my Win7 64bit system:
    Faulting application name: PhotoSynthDownloader.exe, version:, time stamp: 0x4d6299c5
    Faulting module name: MSVCR90.dll, version: 9.0.30729.6161, time stamp: 0x4dace5b9
    Exception code: 0xc0000005
    Fault offset: 0x0003b9f0
    Faulting process id: 0×2288
    Faulting application start time: 0x01cd5fa483b1d169
    Faulting application path: C:\Users\E1123637\Downloads\PhotoSynthToolkit7\bin\PhotoSynth\PhotoSynthDownloader.exe
    Faulting module path: C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6161_none_50934f2ebcb7eb57\MSVCR90.dll
    Report Id: c1a538e9-cb97-11e1-9c4e-5469c094e40d

  25. Henri says:

    @David: this is normal as the v7 was buggy on some system/configuration. You should try the latest version (v11): I’ve rewritten the faulty network part from scratch. And this version goes with other interesting feature (take a look at the latest posts on my blog for an explanation of the features).

    I’ve update the download link to point to the latest version.

  26. Ross says:

    I’ve managed to get the point cloud onto meshlab, but the point cloud doesn’t resemble the object at all or is anything like the point cloud on the photosynth website. it is also nothing like the mesh I have from hypr3d either… any help would be seriously appreciated!

  27. Ross says:

    I’ve followed the steps and got the point cloud onto meshlab, but the point cloud doesn’t resemble the object of study at all, or the point cloud on photosynth. any help at all would be appreciated

  28. talon says:

    When I try to do 4 – Prepare for CMVS it stalls out, and will just sit there on Genoption indefinitely… photoset is 62 photos 4752×3162, I’m on win 7 pro 64. dual 3.7 with 32 gb ram and a quadro 5400 fx card… Phtos too big or am I possibly missing a dependency?

  29. Inna says:

    Hi Henri! I’m running Toolkit v11, and I’m following Josh Harle’s tutorial on projecting high-rez photos onto my mesh. The tutorial tells me to look for file in the bin folder (after I ran everything from Download Synth to launch_pmvs). Yet all I see is a coord_system_0_with_cameras.ply file. Does it serve in place of the file, and if yes, how do I use it? Thank you in advance!

  30. Stephen says:

    Can the output created from Photosynth ToolKit on Windows be used with a Linux installation of CMVS/PMVS2?

  31. danka says:

    Hi, I’m experimenting with Photosynth Toolkit 11.
    I’ve executed “1 – Download Synth”, a DOS window appeared showing a message about ‘downloading soap’. It stands still for a while, then I get an error telling that the program has stopped working. How can I solve this issue?
    Thank you very much for your help.

  32. Paul says:


    I have a question somewhat related to what you are doing. So I just downloaded photosynth recently, and my first thought was, “Wow, this would be great if I could download these patched spheres as an image to use as reflection passes in CGI”. Basically, what I am wondering is how simple (or hard) would it be to accomplish something like this, as you have obvious experience already working with the software.

  33. Ginny says:

    Hi i am getting a “windows script host error” come up HELP!!

  34. Henri, I’ve noticed a bug that’s given me some grief over the last couple of years.

    If the copied GUID/CID for a synth has capital letters in it, then PhotosynthGrabber.exe will crash after downloading the JSON and SOAP.

    If the GUID with lowercase letters referenced in the JSON file is copied and pasted into guid.txt and Download Synth is re-launched then it will finally succeed.

    Danka, that sounds like the problem you’re having.


    @Paul, if you want to download the cube map from stitched panoramas, instead of photos from a photosynth, try Christoph Hausner’s SynthExport 2, which is able to download point clouds and photos from generation 1 and generation 2 photosynths as well as pano cube maps.

Leave a Reply