ReconstructMe, an innovative solution for 3D reconstruction, has integrated CANDELOR to improve it’s already amazing tracking capabilities. The results are astounding — the tracking capability and robustness of the scanning process has be hugely improved. You can evaluate ReconstructMeQt for free here – all you need is a Kinect Sensor and a moderately fast graphics card.
How does Global Tracking Work?
CANDELOR is written in C and has a simple interface. ReconstructMe makes use of the API and calls the locating functionality whenever the default local tracking did nut succeed. Whenever tracking is lost and the current position of the camera should be found again, the following steps are run:
- First, 3D points are extracted from the already reconstructed Volume. This is the input for CANDELOR’s global locating algorithm, the scene.
- Second, another set of 3D points is gathered from the camera, the model. This is another input for CANDELOR.
- The goal is now simple: find a position of the model points so that it fits as good to the scene as possible. When that position is found, we know the position of the camera. Internally, CANDELOR is executed with a time limit of 0.1 seconds to do it’s magic.
- After CANDELOR has found a position, this input is used for ReconstructMe’s local tracking.
All of the above steps have been highly optimized to be able to run at a speed that allows interactive global tracking – even when the model and scene points change all the time. Read on to see how ReconstructMe makes uses of this feature.
Tracking Comparison — Without and With CANDELOR
To actually see the improvement in action, here is a video to see the new capabilities in action:
Restart after Pause
The scan process can be paused and restarted. Before CANDELOR, the position and orientation of the camera when continuing the scan had to be very close to the position where pause was initiated. With CANDELOR it is enough to point the camera roughly at the same position. In our experiments, this led to a more robust and higher quality scans.
In case the camera is accidentally pointed at a position that is not scanned, tracking will be lost. To recover the tracking position it is now enough to point the camera at roughly the previous position and CANDELOR will find the previous tracking position again. The above video demonstrates a direct comparison in the second part.
Besides recovering tracking position to achieve more robust scans, CANDELOR also enables new features:
Calibration of Multiple Sensors
ReconstructMe supports the simultaneous use of multiple sensors to reconstruct one object. Without CANDELOR, it was necessary to register the two sensors by bringing them very close together – not more than a few centimeter. With global registration it is possible to have a much larger separation between the sensors. This allows scenarios where e.g. two sensors are mounted somewhere, with different view angles towards the object. When scanning starts, global registration can automatically calculate the position of the two sensors relative to each other.
The video below shows how two Kinects are automatically calibrated with CANDELOR’s locating feature.
Another use case enabled with CANDELOR is to take single “shots” with the camera, and register each of these single shots. This allows to use ReconstructMe even with computers that have very low GPU processing power, where real time tracking is not an option.
See CANDELOR – Robust Global Tracking for more information on all the global tracking updates.