ReconstructMe in Mac OS X via Parallels

ReconstructMe is a great tool for 3D scanning with the kinect and other depth cameras. Unfortunately it’s Windows only, and due to shoddy device handling in virtualization programs like VMware Fusion and VirtualBox the kinect isn’t recognized by Windows.

Luckily, thanks to Parallels all hope is not lost. Here’s how I was able to 3D scan with ReconstructMe in a Windows VM:

This guide assumes you have a running Windows 7 instance inside a copy of Parallels 7.

Let’s start with the installation instructions from ReconstructMe:

Display and CPU Drivers

If you try to install display drivers in a virtual machine you’ll likely get an error like this:

Native display drivers don't typically work inside virtual machines.

The real reason we need these drivers is for OpenCL support, which ReconstructMe relies on. After getting that error message, I just skipped this section and continued with the installation. Because I didn’t have OpenCL support I ended up getting this message on the first run of ReconstructMe:

The program can't start because OpenCL.dll is missing from your computer. Try reinstalling the program to fix this problem.

Luckily Intel provides an OpenCL CPU runtime for Windows that you can download here.

Apart from installing the OpenCL runtime instead of the native graphics drivers, the rest of the installation instructions are the same.  Just install the C++ redistributables, the Sensor Driver, and ReconstructMe, then you’ll be all set to try it out.

The first time you plug your kinect into your mac while Parallels is running you’ll get three notifications that look like this:

Be sure to select Windows for all three (Camera, Audio and Motor).

Now go ahead and give ReconstructMe a try!

A warning: Running anything in a virtual machine will never be as fast as running it natively, and this is especially true with ReconstructMe. Running it in realtime mode was VERY choppy and resulted in poor scans. I highly recommend running “ReconstructMe Record” which will simply record what the kinect sees at a decent framerate. Once you’ve captured what you want, open “ReconstructMe Replay” to go through your recording and build the scan. Here’s what came out of my first scan using record/replay:

An appropriate first scan with ReconstructMe on a Mac

Anyways, that’s it!  If you have any questions or comments, leave them here or hit me up on twitter!

This entry was posted in 3D. Bookmark the permalink.
  • Christoph Heindl

    Thanks for sharing this, Jeremy!

  • Positionhigh

    it works but when asked to save the file it crashes.. tried as .obj.
    any idea?
     

  • jeremy

    In the console when ReconstructMe asks for a filename, only enter the filename without the extension. ReconstructMe automatically adds the extension when it saves them as STL. Also, the filename shouldn’t have any spaces in it – if it does anything after the space will be cut off.

  • http://jherrman.com Jeremy Herrman

    In the console when ReconstructMe asks for a filename, only enter the filename without the extension. ReconstructMe automatically adds the extension when it saves them as STL. Also, the filename shouldn’t have any spaces in it – if it does anything after the space will be cut off.

  • Tom Lombardi

    I’ve have a Macbook pro mid 2009, 9600M GT and I’m running it in a freshly setup copy of Vista pro in bootcamp. It sometimes works and it sometimes wont, couldn’t scan this morning, fired it up tonight and scanned, no changes. I get an instant crash when I launch record or realtime. All drivers are up to date. I’ve tried it on my late 2010 iMac 27″ i7 with Parallels, same exact issues. How stable is your setup? Any thoughts? Thanks for any help with this. 

  • =ml=

    Using these instructions I was able to get ReconstructMe to run on this configuration:

    * MacBook Pro i5 15-inch, Mid 2010
    * OS X Lion 10.7.4

    * 8 GB 1067 MHz DDR3 RAM

    * NVIDIA GeForce GT 330M 256 MB
    * VMware Fusion 4.1.3
    * Windows 7 Pro

    Thanks! You saved me time and hair! :)
    Go!

  • Brapp

    I tried to do this on my iMac that has a AMD Radeon HD 6770M graphics card
    when ever i try running the appropriate scan batch files it gives me an error (a screen shot of what it says is attached) and it will not show the GUI

  • http://jherrman.com Jeremy Herrman

    Glad to hear it!

    So you were able to get the kinect to work with VMware? I was only able to get Parallels to recognize it.

    I’ll have to give it another shot.

  • http://jherrman.com Jeremy Herrman

    I’m not sure the screenshot got attached properly. I haven’t tried virtualizing ReconstructMe with a Radeon yet, so that might be an issue.

  • Brapp

    I actually got it to work now after alot of tinkering and searching.
    The ReconstructMe forum helped me alot.

  • skimo

    can you share how you got it working with the amd card?

  • Mu-Lin

    Hi, when using ReconstructMe on your macbook pro, is it laggy at all? The device compatibility matrix on their website says that the macbook graphics card should be laggy…

  • http://www.facebook.com/bob.hewitt Bob Hewitt

    Hi, Up and running on my MacMini. Any experience on running through Bootcamp?

  • Filipe M. S. de Campos

    Hello Jeremy!
    Nice post!

    I’m on a mac os x 10.8.2 and using parallels 7 (windows 7), but kinect is not working.

    Which version of the Kinect SDK are you using and which kinect is it (kinect for windows or xbox)?

    Thanks!

  • http://jherrman.com Jeremy Herrman

    I’ve been running ReMe on my new retina MacBook Pro with great results. Running it under boot camp should give you the best speed possible, but it all depends on your graphics card. I don’t think the Mac mini has a discrete graphics card which probably means real-time scanning won’t be possible. You should still be able to record and replay though.

  • http://jherrman.com Jeremy Herrman

    Hi Filipe, it’s been a few months since I’ve tried using virtualization, and at the time this article was written I was on Mac OS X 10.7 with Parallels 7 and ReMe 370 (I think). I was using the standard xbox kinect along with the OpenNI drivers from ReconstructMe’s site. Now that I have a MacBook with a more capable GPU I mainly restart into Boot Camp to do real time high res scanning, but I’ll have to see how it performs under virtualization and post an update.