Usage

Here is short introduction on using ReconstructMe. Please read this from front to back to ensure maximum reconstruction success.

Topics

  1. How do I start ReconstructMe?
  2. When I start ReconstructMe, a window pops up and closes immediately?
  3. How to perform real-time reconstruction?
  4. How to scan multiple volumes and stitch them together?
  5. How to select a different sensor?
  6. How to select a different device to perform computations on?
  7. How to change the reconstruction configuration?
  8. How to perform offline reconstruction?
  9. How to resume a previously started reconstruction?
  10. How to calibrate my depth sensor?
  11. What coordinate system are used?

How do I start ReconstructMe?

  1. If you have not done so already, follow the installation guideline.
  2. In the Windows Explorer, go into the ReconstructMe directory. You should see somewhat like this:

  3. When you scroll down, you will see a few files named “Start ReconstrucMe ….“. These are the files you can doubleclick to start ReconstructMe. Each of these batch files uses a some pre-configured settings to get you started.
  4. Now, what batchfile do you start? The most important question is, whether you have a Kinect for Windows, a Xbox Kinect, or an Asus Xtion:
    • Doubleclick Start ReconstructMe Scan MSKinect.bat if you have a Microsoft Kinect
    • Doubleclick Start ReconstructMe Scan OpenNI.bat if you have a Xbox Kinect or Asus Xtion.
  5. After starting, you will see a Windows Console window that looks like this:

  6. To continue, press the key y, then Enter.
  7. If you have followed the installation guideline, doubleclicked the correct batch file, and have a supported graphics card, you should now get a GUI window:
  8. Now you can click that GUI Window (to make sure it is the active window), and press p to switch between play and pause mode to start reconstruction. To quickly restart scanning if something went wrong, press r.
  9. After you have finished scanning, press Esc (top left key on your keyboard). This will close the GUI window, and leave you with the Console window where you can save your scan.
  10. To save your scan, answer the question Save content? (y/n): by pressing the key y and then Enter.
  11. You will now be asked to enter a filename:

    It is important that you enter a name with extension. For example, enter MyScan.obj as above. The extension automatically determines the file format. .obj is usually a good choice because the file will be small and can be quickly opened in e.g. Meshlab. See What output formats does ReconstructMe support? for a list of supported file formats.

  12. The resulting file will be written in the same directory as ReconstructMe, so you might have to scroll up and down a bit in the Explorer to find it:

  13. Now you can open your 3D model in your favorite application. That’s it, you now have performed a 3D scan using ReconstructMe!

When I start ReconstructMe, a window pops up and closes immediately?

If you have started the correct batch file (see How do I start ReconstructMe?), you can find error logs in the directory logs. Go into this directory, and doubleclick the last file:
This will give you the error messages. Have a look at the FAQ, maybe your problem is described here. If you do not find any answer, We have an active Forum where you can search for your problem and get help quickly.

Good luck! :-)

How to perform real-time reconstruction

Make sure you have completed the installation instructions before continuing. ReconstructMe is currently a console application, which is configured via a command line interface. To reconstruct using live sensor data use the --scan command.

[sourcecode language="text"]
reconstructme.exe –scan
[/sourcecode]

The above command will try to open the sensor via the OpenNI backend. If you use Kinect for Windows, make sure you read How to select a different sensor?.

After agreeing to our license terms, the above command will start the reconstruction in paused mode. You can switch between paused and play mode by pressing the ‘p’ key with reconstruction window in the foreground.

Reconstruction happens in a predefined volume. By default the size of this cube to a side-length of one meter. When you press ‘p’ for the first time, the position of the volume will be fixed relative to the current sensor position as illustrated in the following top/side view sketch:

Reconstruction works best when you know about a couple constraints and keep them in mind when performing.

Points of failure

  • Violating view point constraints
    Tracking can only succeed when the volume to be reconstructed is in view. Pointing the sensor away from the volume or stretching the distance between the sensor and the volume to more than 2000mm will lead to reconstruction errors. Keep in mind that the Kinect sensor does not see anything closer than 400mm. Objects within that range won’t be seen.
  • Violating geometry constraints
    Stable tracking requires geometry that is non-planar and non-symmetric. Make sure that whatever you reconstruct does not entirely consist of a single plane, a cylinder, a sphere or anything else that looks alike from different perspectives. When keeping the sensor fixed and turning an object infront of it, make sure everything inside the volume turns.
  • Violating acceleration constraints
    Fast movements of the sensor will lead to blurry data and thus to reconstruction errors.

Avoiding these points will improve your reconstruction success a lot. To aid you in avoiding reconstruction errors, we’ve added a tracking failure detection that attempts to detect points of failure and stops reconstruction until the sensor is moved to a recovery position. The details are shown in the following video

Upon closing the reconstruction window, you will be queried if you like to export the scanned model. Type ‘y’ for yes and then type in a filename. We currently support the following file formats: .stl, .obj, .osg, .3ds and .raw. The correct exporter is chosen based on the filename extension you type in.

How to scan multiple volumes and stitch them together?

ReconstructMe supports a scanning mode that allows the user to scan multiple volumes and stitch them together like a panorama image in 3d. In order to start a new multiple volume project, you need to use the --multiscan command

[sourcecode language="text"]
reconstructme.exe –multiscan
[/sourcecode]

This command is very similar to --scan and shares a lot of available command switches. Since we are about to scan multiple volumes, ReconstructMe will place all volumes belonging to one project inside a folder. If you don’t specify any other this folder will be called default_project. Once ReconstructMe starts press ‘p’ to start scanning. Press ‘n’ to create a new volume at the exact position and orientation of the current sensor position. While scanning the new volume, the previous volume will be downloaded in the background and stored as .raw.

It is important to note, that there should be overlap between the old volume and the new one created to allow the stitching process to refine the position. Also note, that only one volume can be downloaded in the background. Wait for the volume to complete the download (see console to get a feeling), before pressing ‘n’ again. Also note that all volumes committed by pressing the ‘n’ key are part of the project.

Once you have completed scanning volumes, use the --stitch command to convert the .raw parts into matching 3d surfaces.

[sourcecode language="text"]
reconstructme.exe –stitch
[/sourcecode]

By default this command loads all volumes from default_project that haven’t yet been converted, stitches them together and saves them as .ply output. Note that --stitch does not fusion volumes, but re-positions them to fit together.

In case you used a non-default --config with the --multiscan command, you need to pass the same config to the --stitch command.

In case you wan’t to resume at a previously scanned volume (say volume_3.raw) simply invoke

[sourcecode language="text"]
reconstructme.exe –multiscan –resume_raw default_project/volume_3.raw
[/sourcecode]

This allows you refine this particular volume and offers the possibility to create new volume branches using the ‘n’ key. Once you are done, simply invoke

[sourcecode language="text"]
reconstructme.exe –stitch
[/sourcecode]

again. This will only load the modified or new volumes and stitches them. Since stitching is not always perfect, you might need to post-process the volumes in tools such Meshlab to improve the accuracy of the output.

How to select a different sensor?

By default ReconstructMe tries to open the first sensor through the OpenNI backend. In case you want to use the Microsoft Kinect backend or have multiple sensors attached or, you can use the --sensor switch to select the correct driver/sensor. Here are some examples

  • --sensor mskinect,0 Instructs ReconstructMe to use the Microsoft Kinect backend and open the first sensor.
  • --sensor openni,1 Instructs ReconstructMe to use the OpenNI backend and open the second sensor.
  • --sensor mskinect,1 Instructs ReconstructMe to use the Microsoft Kinect backend and open the second sensor.

This switch is simply added to the invocation of ReconstructMe. Here’s an example

[sourcecode language="text"]
reconstructme.exe –scan –sensor mskinect,0
[/sourcecode]

How to select a different device to perform computations on?

By default ReconstructMe selects the ‘best’ OpenCL compliant device found: If no GPU device is found, the first CPU is used. In case you have multiple devices you can use the --device switch to select a different one.
Here are some examples

  • --device 0 Use the first device.
  • --device 1 Use the second device.

This switch is simply added to the invocation of ReconstructMe. Here’s an example

[sourcecode language="text"]
reconstructme.exe –scan –device 0
[/sourcecode]

Available devices can be listed by calling

[sourcecode language="text"]
reconstructme.exe –list_devices
[/sourcecode]

How to change the reconstruction configuration?

ReconstructMe comes with a set of predefined parameter sets. Those parameter sets are stored as text files inside the cfg sub directory. In order to tell ReconstructMe to use a different configuration, you can use the --config switch.

The following command will load the parameters for scanning a 3m volume using highres mode.

[sourcecode language="text"]
reconstructme.exe –scan –config cfg/volume_3m_highres.txt
[/sourcecode]

You can change and create new parameter sets easily. Just copy an existing one and play around with the settings. Keep in mind that there is no official parameter documentation. A look at the content of volume_1m.txt and reading the coordinate systems section carefully might help.

How to perform offline reconstruction

Your GPU is too slow for real-time reconstruction or you want record for later reconstruction? No problem, we have considered this use case and equipped ReconstructMe with the --record feature. It allows you to record raw sensor data and reconstruct offline using the --replay command.

[sourcecode language="text"]
reconstructme.exe –record
[/sourcecode]

Use ‘p’ to play/pause. Upon exit the output can be reconstructed by

[sourcecode language="text"]
reconstructme.exe –replay –depths reconstructme.depths.gz –colors reconstructme.avi
[/sourcecode]

Upon closing the reconstruction window, you will be queried if you like to export the scanned model. Type ‘y’ for yes and then type in a filename. We currently support the following file formats: .stl, .obj, .osg and .3ds. The correct exporter is chosen based on the filename extension you type in.

How to resume a previously started reconstruction

In order to be able to resume a real-time reconstruction at a later point in time, you need to save the volume with the .raw extension. To resume reconstruction, you simple use the --resume_raw switch and add the previously saved .raw volume filename. Here is an example

[sourcecode language="text"]
reconstructme.exe –scan –resume_raw volume.raw
[/sourcecode]

When ReconstructMe starts, the viewpoint you need to align your sensor with will be shown on the right. Once ReconstructMe has confidence that the viewpoints are aligned, the bar on the bottom will turn green reconstruction continues. Note that ReconstructMe starts in paused mode, so you need to press ‘p’ before ReconstructMe is able to test for alignment.

In theory this process can be repeated any number of times in order to continuously update your world and eventually create a polygonal model from it. A raw volume in standard resolution will take around 5MB of disk space. A raw volume in high resolution around 30 MB.

Note that the configuration settings should be the same across reconstructions. In case you used the --config switch to start a reconstruction, you should use the same configuration file to continue reconstruction.

How to calibrate my depth sensor?

ReconstructMe ships with built in functionality to calibrate your depth sensor. This functionality is only available with the OpenNI backend, because it is the only backend that provides access to the raw infrared stream. To calibrate your depth sensor follow these steps.

First, print a chessboard pattern in either A4 or A3 (recommended). Ready to print patterns are provided inside the patterns sub directory of ReconstructMe. The pattern is best printed on a laser printer with pigments opaque to infra red, as it is discussed in this thread. Here’s an image provided by Francis that shows contrast differences of a ink-jet printed chessboard pattern (A3 background) and a laser printed one (A4 foreground) as observed by the sensors infra red sensor.

Once you have your printed pattern, ensure that the printer did not distort the chessboard pattern (i.e squares in the pdf remain squares when printed). Measure the size of a square in millimeter and save it for a later step.

Next, cover the infrared emitter on your sensor with a paper, your hand or something similar. This is necessary to improve the image quality. Below are two images of a chessboard: on the left side without covering, on the right side with cover.

Start ReconstructMe with

[sourcecode language="text"]
reconstructme.exe –calibrate –square_size 33.875
[/sourcecode]

The --square_size of 33.875 is the default for A3. Exchange this with what you have measured previously.

ReconstructMe will start up and on the left side you will see the current infrared image. On the console you will see an estimation of the factory calibration. Put your chessboard on the ground (it has to lie down flat) and position the camera so it can see the entire chessboard. Press ‘n’ to take an image of the chessboard. If the chessboard is detected correctly, you will see that on the right side of the viewer (see below).

Next, take roughly 10-20 views from the chessboard from different angles and distances. The quality of the calibrations improves when you move as close as possible, so that the chessboard covers the entire chip.

Once you are done, close the viewer. The calibration will start automatically. Once it has finished, it outputs a reprojection error and intrinsic depth calibration values. Here are some typical values.

[sourcecode language="text"]
Reprojection error in pixels 0.297901
Calibration depth intrinsics are
camera_fx: 589.546
camera_fy: 590.936
camera_px: 326.965
camera_py: 249.184
[/sourcecode]

The reprojection error should stay below 1 pixel. If not, repeat the process. Finally, copy those values (fx, fy, px, py) over to your configuration file.

What coordinate system are used?

ReconstructMe uses a couple of right-handed coordinate systems that you might want to be aware of.

For one ReconstructMe uses the sensor coordinate system. This coordinate system is attached to the sensor in the following way

Next, ReconstructMe uses the world coordinate system. This frame aligns with the sensor coordinate system when the reconstruction starts. From then on, the world coordinate system stays fixed. The volume to be reconstructed is expressed in terms of this coordinate system. Below is an example for the world coordinate system

Finally, ReconstructMe uses the CAD coordinate system. This coordinate system aligns with the world coordinate system but is rotated around x+ about 180 degrees.

We use this coordinate system exclusively when exporting the model to common 3D file formats, in order to allow third-party programs to display the content correctly upon opening.

54 thoughts on “Usage

    1. Lee

      I’m also interested to know more about this? Is there a reason why the bounding box is set? can it be extended? Great research and Application.

      Reply
        1. Eric

          Why not provide both options? Certainly you all have lots of work to do, and I hope I speak for many when I say we greatly appreciate the work you all have put in so far. It’s quite amazing. :) Both options might be good since we have differing computer systems, with different system specifications

          Reply
  1. naeef

    hi when i type the highres list device and other commands it say not valid command what do i need to do to resolve this problem .
    cheers ,
    naeef

    Reply
      1. Caspar

        Where exactly should the –highres command be entered?
        I tried: reconstructme.exe –realtime –highres
        When the reconstruction is started with p I get two quick beeps and the bar at the bottom of the reconstruction window
        goes red.

        Best regards/ Caspar

        Reply
  2. vivek

    Can I use this with the new Kinect for Windows. I’ve tried installing openNI and primesense kinect drivers but they don’t seem to be working.

    Reply
  3. vivek

    The error I get is:

    Do you agree to our license terms? (y/n) : y
    [2012/02/28 12:13:00.170351][info ] Starting sensor
    CVCapture_OpenNI::CvCapture_OpenNI : Failed to enumerate production trees: Can’t create any node of the requested type!
    [2012/02/28 12:13:02.155258][error ] THROWING EXCEPTION: Throw in function (unknown)
    Dynamic exception type: class LibFundament::robvis_error
    std::exception::what: Cannot open sensor
    [struct LibFundament::tag_robvis_condition *] = vc.isOpened()
    [struct LibFundament::tag_robvis_message *] = Cannot open sensor

    ..\..\source\lib_reconstructme\src\sensor.cpp(21): Throw in function __thiscall
    LibReconstructME::openni_sensor::data::data(void)
    Dynamic exception type: class boost::exception_detail::clone_impl(class LibFundament::robvis_error)
    std::exception::what: Cannot open sensor

    Reply
    1. Fredini

      I am also having this same issue, and I do have write permissions to the directory. My case is also complicated by the fact that I’m trying to run this on a Mac inside windows 7 in Virtualbox VM. Any Advice?

      Reply
      1. Luke Chilson

        I’m attempting to get this up and running on a Mac running virtual box as well and am encountering a nearly identical error. I can’t say i’m familiar enough with virtual box or windows to even know where to start looking.

        Reply
  4. Johnvid

    Great to see this software released, is this separate to Fusion that is due out, I assume this is a windows 7 install only, Is there an XP version? Also the driver package is only 8MB, I presume that is an online install package, which is not always desirable, as the other bundle’s (ZIgFu & Brekel,/OpenNI/PrimeSense) are usually 100-128MB.

    Reply
    1. Christoph Heindl Post author

      works on xp as well. 8mb is all you need, except for the driver package in the download section (roughly 18mb).

      Best,
      Christoph

      Reply
  5. Johnvid

    Cool, can’t wait to have a go, just didn’t want to mess up current install, last time I tried to put on latest PrimeSense/Open NI it wouldn’t work because it wanted windows 7.

    Reply
    1. Christoph Heindl Post author

      Really? Hmm then my claim was potentially wrong. ReconstructMe (it doesn’t need a sensor for reconstructing offline) works on WinXP, I haven’t checked with PrimeSense though.

      Reply
  6. Bryan Sang

    Hi, I’ve enjoyed your wonderful ReconstructMe for my Kinect for Xbox, almost couple of hours, with successful files(STL) saved.
    However, suddenly, the mesh window does not seem to behave well. The left side RGB image window works OK. The mesh window shows only red bar at the bottom with gray background only, without showing any mesh images. The DOS prompt window does not show me any further error messages regarding the problem. The only symptom I could recognized was that the reaction of ‘p’ key for toggling Pause/Reconstruting feels a bit sluggish when pressed.
    My current PC: i5 2500@3.2GHz, 4GB RAM, nvidia GTX560 1GB V\RAM, Windows 7 32bit.
    Any suggestions regarding this problem will be much appreciated.

    Thanks,
    Bryan Sang

    Reply
    1. Christoph Heindl Post author

      Hmm, never seen before..check the taskmanger if any reconstructme is there as a ghost process or try a reboot.

      Reply
      1. Bryan Sang

        Thank you, Christoph.

        After a reboot, as you suggested, the reconstruction process resumed OK.
        I will check whether there is any ghost process running.
        Anyway, your ReconstructMe is really cool.

        Bryan Sang

        Reply
  7. Laurent

    Reconstruct me is amazing! it got me some time to install it properly (got to remove graphic drivers etc…) but it’s really working great! the highres mode doesn’t work on my computer (it records only one frame and stops, my pc has an Intel Q6600 and a Nvidia 8800GTX) but it still is a really nice scanning tool!
    Very good work :)

    Reply
  8. Jimmy Alenius

    Hi! Do you have any forum? I have some problems getting ReconstructMe to work and I need some help.

    Regards / Jimmy

    Reply
  9. Lachlan Phillips

    Looks to be working pretty great for me… Is there a possibility of including the origin cameras and source frames as projected textures?

    Also, any word on the multi-part version you blogged about? (for larger areas?)

    Cheers for the great work
    Lachlan

    Reply
  10. Mauro

    Hi all,
    everything it’s ok for recontructme, but I have big problem with google group!
    I cant access couse the pass it’s wrong but I’m sure it’s ok.Maybe becouse I use 2 PC (one at work and 1home?)

    Reply
    1. Christoph Heindl Post author

      This problem seems to be related to google. Try to recover your password through google services.

      Reply
  11. Pingback: ReconstructMe 0.4.0-193 released | ReconstructMe

  12. james

    Hello, Im so corous for testing your Software- but now im stuck, thats the error i get- please help

    E:\ReconstructMe\bin>reconstructme.exe –realtime
    [2012/03/08 19:23:26.156250][info ] Welcome to ReconstructMe
    [2012/03/08 19:23:26.156250][info ] Running 0.4.0-193
    [2012/03/08 19:23:26.156250][info ]
    [2012/03/08 19:23:26.156250][info ] Licensed for non-commercial purposes only.

    [2012/03/08 19:23:26.156250][info ] See ‘License of ReconstructMe.txt’
    [2012/03/08 19:23:26.171875][info ]
    Do you agree to our license terms? (y/n) : y
    [2012/03/08 19:23:31.750000][info ] Starting sensor
    [2012/03/08 19:23:31.765625][info ] Testing OpenNI driver backend
    [2012/03/08 19:23:37.906250][error ] THROWING EXCEPTION: Throw in function (unk
    nown)
    Dynamic exception type: class LibFundament::robvis_error
    std::exception::what: Check ‘status == ((XnStatus)0)’ failed [131106 != 0] Faile
    d create production tree
    [struct LibFundament::tag_robvis_condition *] = status == ((XnStatus)0)
    [struct LibFundament::tag_robvis_message *] = Check ‘status == ((XnStatus)0)’ fa
    iled [131106 != 0] Failed create production tree

    ..\..\source\lib_rgbdsensor\src\rgbdsensor\openni_sensor.cpp(108): Throw in func
    tion void __thiscall LibRGBDSensor::openni_sensor::open(int)
    Dynamic exception type: class boost::exception_detail::clone_impl
    std::exception::what: Check ‘status == ((XnStatus)0)’ failed [131106 != 0] Faile
    d create production tree
    [struct LibFundament::tag_robvis_condition *] = status == ((XnStatus)0)
    [struct LibFundament::tag_robvis_message *] = Check ‘status == ((XnStatus)0)’ fa
    iled [131106 != 0] Failed create production tree

    [2012/03/08 19:23:37.984375][info ]
    [2012/03/08 19:23:37.984375][info ] Thanks using ReconstructMe!
    [2012/03/08 19:23:38.000000][info ] Visit us http://www.reconstructme.net

    Reply
  13. Pascal

    Wahoo, i’me realy impressed by my first test’s results. Great software. Congratulation, aud thak you for sharing it.
    pascal.

    Reply
    1. Christoph Heindl Post author

      Great, when you have some results let us know so we can upload them to our gallery.

      Reply
  14. Steve Cardon

    Do you know I get this error when I use the option –highres?
    =====================================================
    Do you agree to our license terms? (y/n) : y
    [2012/03/12 18:20:34.273477][info ] Starting sensor
    [2012/03/12 18:20:34.276478][info ] Testing OpenNI driver backend
    [2012/03/12 18:20:34.503491][error ] THROWING EXCEPTION: Throw in function (unk
    nown)
    Dynamic exception type: class LibFundament::robvis_error
    std::exception::what: Check ‘status == ((XnStatus)0)’ failed [65565 != 0] Failed
    to enumerate production trees
    [struct LibFundament::tag_robvis_condition *] = status == ((XnStatus)0)
    [struct LibFundament::tag_robvis_message *] = Check ‘status == ((XnStatus)0)’ fa
    iled [65565 != 0] Failed to enumerate production trees

    ..\..\source\lib_rgbdsensor\src\rgbdsensor\openni_sensor.cpp(94): Throw in funct
    ion void __thiscall LibRGBDSensor::openni_sensor::open(int)
    Dynamic exception type: class boost::exception_detail::clone_impl
    std::exception::what: Check ‘status == ((XnStatus)0)’ failed [65565 != 0] Failed
    to enumerate production trees
    [struct LibFundament::tag_robvis_condition *] = status == ((XnStatus)0)
    [struct LibFundament::tag_robvis_message *] = Check ‘status == ((XnStatus)0)’ fa
    iled [65565 != 0] Failed to enumerate production trees

    Reply
    1. Christoph Heindl Post author

      That means that the sensor could not be found. I wonder why this should be related to highres. Will investigate.

      Reply
      1. Christoph Heindl Post author

        Could you join the newsgroup and post your problem over there? it is easier to track this issues over there.

        Reply
  15. hugo arcier

    Hello
    I tested reconstructme and it is working very well. I was wondering, is there a way to capture in realtime the 3D stream in order to make an animated film?

    Reply
  16. Pingback: ReconstructMe 0.4.0-255 released | ReconstructMe

  17. jake

    Hi there, awesome product! I’d like to use it to make some more artwork (http://jakestollery.com/M-E-R-G-E)
    Anyhoo, I keep getting an error, any chance you could help?

    [2012/03/25 00:33:08.708457][info ] Starting sensor
    [2012/03/25 00:33:08.711457][info ] Testing OpenNI driver backend
    [2012/03/25 00:33:16.761917][error ] THROWING EXCEPTION: Throw in function (unknown)
    Dynamic exception type: class LibFundament::robvis_error
    std::exception::what: Check ‘status == ((XnStatus)0)’ failed [131124 != 0] Failed start from XML
    [struct LibFundament::tag_robvis_condition *] = status == ((XnStatus)0)
    [struct LibFundament::tag_robvis_message *] = Check ‘status == ((XnStatus)0)’ failed [131124 != 0] Failed start from XML

    Thanks!

    - Jake :)

    Reply
    1. Christoph Heindl Post author

      There is a problem with connecting to your sensor. make sure the power supply has been plugged in (kinect), try differnt usb ports and make sure you have the correct drivers installed. Please post problems in the newsgroup (see Help/FAQ)

      Reply
  18. Pingback: ReconstructMe 0.4.0-269 Released | ReconstructMe

  19. Th3DEAD

    Hello, i follow installation instruction perfectly and when i launch the program i get this error :

    [2012/04/06 16:12:13.742802][info ] See ‘License of ReconstructMe.txt’
    [2012/04/06 16:12:13.745802][info ]
    Do you agree to our license terms? (y/n) : y
    [2012/04/06 16:12:18.298062][info ] Starting sensor
    [2012/04/06 16:12:18.302062][info ] Testing OpenNI driver backend
    [2012/04/06 16:12:20.192170][error ] THROWING EXCEPTION: Throw in function (unk
    nown)
    Dynamic exception type: class LibFundament::robvis_error
    std::exception::what: Check ‘status == ((XnStatus)0)’ failed [65565 != 0] Failed
    start from XML
    [struct LibFundament::tag_robvis_condition *] = status == ((XnStatus)0)
    [struct LibFundament::tag_robvis_message *] = Check ‘status == ((XnStatus)0)’ fa
    iled [65565 != 0] Failed start from XML

    e:\hudson\workspace\ras_reconstructme\Platforms\waldohreule.profactor.local\sour
    ce\lib_rgbdsensor\src\rgbdsensor\openni_sensor.cpp(147): Throw in function void
    __thiscall LibRGBDSensor::openni_sensor::open(int,const class std::basic_string<
    char,struct std::char_traits,class std::allocator > &)
    Dynamic exception type: class boost::exception_detail::clone_impl
    std::exception::what: Check ‘status == ((XnStatus)0)’ failed [65565 != 0] Failed
    start from XML
    [struct LibFundament::tag_robvis_condition *] = status == ((XnStatus)0)
    [struct LibFundament::tag_robvis_message *] = Check ‘status == ((XnStatus)0)’ fa
    iled [65565 != 0] Failed start from XML

    If you could help me, thank you.

    Reply
  20. Tabbe

    I get always this error:

    D:\ReconstructMe\bin>reconstructme.exe –realtime
    [2012/04/13 12:27:44.926161][info ] Welcome to ReconstructMe
    [2012/04/13 12:27:44.932161][info ] Running 0.4.0-278
    [2012/04/13 12:27:44.936162][info ]
    [2012/04/13 12:27:44.940162][info ] Licensed for non-commercial purposes only.

    [2012/04/13 12:27:44.946162][info ] See ‘License of ReconstructMe.txt’
    [2012/04/13 12:27:44.952163][info ]
    Do you agree to our license terms? (y/n) : y
    [2012/04/13 12:27:46.562255][error ] THROWING EXCEPTION: Throw in function (unk
    nown)
    Dynamic exception type: class LibFundament::robvis_error
    std::exception::what: No OpenCL compatible device found
    [struct LibFundament::tag_robvis_condition *] = !devs.empty()
    [struct LibFundament::tag_robvis_message *] = No OpenCL compatible device found

    e:\hudson\workspace\ras_reconstructme\Platforms\waldohreule.profactor.local\sour
    ce\robvis\lib_openclbridge\src\openclbridge\environment.cpp(64): Throw in functi
    on class cl::Device __cdecl LibOpenCLBridge::env::ith_device(int)
    Dynamic exception type: class boost::exception_detail::clone_impl
    std::exception::what: No OpenCL compatible device found
    [struct LibFundament::tag_robvis_condition *] = !devs.empty()
    [struct LibFundament::tag_robvis_message *] = No OpenCL compatible device found

    [2012/04/13 12:27:46.633259][info ]
    [2012/04/13 12:27:46.636259][info ] Thanks using ReconstructMe!
    [2012/04/13 12:27:46.642259][info ] Visit us http://www.reconstructme.net

    Reply
    1. Christoph Heindl Post author

      Hi Tabble,

      please use our newsgroup for reporting problems. From the error message it seems that no OpenCL compliant GPU/CPU was found. What GPU do you have and did you update your GPU to the latest driver?

      Reply
  21. Eric

    I am really new to this. I downloaded the program, and I can get it running, but when I press “p” to record, I barely see anything in the gray part of the window. My kinect is aiming down when on the desk, as I do not know how to move the head. Is there something I am doing wrong? It seemed like for a brief second, I got a scan of the corner of the desk, tried saving it as STL, but it was 1kb. If anyone is willing to help, greatly appreciated, or if they make a kinect and reconstructme for dummies, I could use that too :)

    Reply
    1. Christoph Heindl Post author

      Hi Eric, thanks for testing ReconstructMe. Please join the newsgroup to report your problems (see help/faq). More people are active there to help you with your problem. What sensor do you use, what driver model? How far was the distance from the sensor to the object (depends on the driver model, move it away around a meter). what device GPU/CPU do you run ReconstructMe on? It would be best to start a newsgroup posting and paste the console output of the program.

      Thanks,
      Christoph

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>