Skip to content

Volumetric Capture Application

zuru edited this page Jul 11, 2019 · 15 revisions

Volumetric Capture Application User-Guide

First time usage: Once you have installed all the required software packages:

1. Name each Intel RealSense Device and save their intrinsic parameters

  • Plug an Intel RealSense device on the Workstation-PC to add the connected device to the device repository.
  • Follow instructions on Device Repository Page to add a device to the Device Repository
  • Repeat for all the devices you are going to use.

If the devices' intrinsic parameters are not saved in the device repository you will not be able to calibrate the system

2. Starting the Volumetric Capture application

  • First, make sure that the devices are plugged on the Intel NUCs, and that each NUC mini-PC as well as the Workstation-PC are connected to the Network switch.
  • When you first start the Volumetric Capture application it should connect automatically to the RabbitMQ broker running on the Workstation-PC. If that is not the case, or if RabbitMQ broker runs on a different PC, you can start the application from a command-line with the following arguments:

volumetric_capture.exe -b <rabbit_mq_broker_local_ip> -u <rabbit_mq_username> -p <rabbit_mq_password>

  • The application's GUI when the application starts:

accessibility text

  • The GUI is divided in widgets. Each widget is responsible for a different aspect of the application workflow.

accessibility text

  1. Device Connection Manager Widget

  2. Connected Devices Widget

  3. Device Parameters Widget

  4. Record Widget

  5. Workflow Parameters Widget

  6. Viewport Control Widget

Application Workflow

1. Connection Manager Widget

When you first start the application, each of the named devices should appear on the Connection Manager Widget. From this widget you can connect all of the devices at once, or connect each device separately. In addition, you can modify the devices' connection Profile, or configure which device should be the Master device when using HW sync.

  • Connect a device:

accessibility text

In order to connect a device you have to select which device to connect by clicking on the checkbox next to that device, and click the "Connect" Button. If you want to connect all of the devices at once, you can click the "Connect All" Button.
  • Changing the Connection Profile.

accessibility text

Connection Profiles control the resolution of the color and the depth streams. The available Profiles are the following:

  • RGBD - FHD -> (color & depth: 1920 x 1080)
  • RGBD - VGA -> (color & depth: 640 x 480)
  • RGB - FHD, D - FHD / 2 -> (color: 1920 x 1080, depth: 1920 x 1080 resized to 960 x 540)
  • RGB - VGA, D - VGA / 2 -> (color: 640 x 480. depth: depth: 640 x 480 resized to 320 x 240)
  • RGB - FHD, D - FHD / 4 -> (color: 1920 x 1080, depth: 1920 x 1080 resized to 480 x 270)
  • RGB - VGA, D - FHD / 4 -> (color: 640 x 480, depth: 1920 x 1080 resized to 480 x 270)

If you have a slow connection, or if the Network Switch is not unmanaged you can select a Profile with lower resolution than Full HD. The default selected Profile is RGB - FHD, D - FHD / 4 which has no problems with the recommended Network switch.

  • Set Master device for HW device synchronization:

accessibility text

From the drop-down menu next to the "Connect All" Button, you can select which device will be the Master device in a Hardware sync scenario. In order to use the hardware sync feature, you need to have the HW sync cable assembled, and all of the devices connected via the GPIO port which is on the top of the device.

Finally, when all of the devices are connected, each device viewport as well as the parameters of all the other widgets should appear on screen.

accessibility text

3. Connected Devices Widget

The Connected Devices Widget, presents the bandwidth used from each connected device. In addition, you can change the corresponding device color, by clicking on each device's color picker.

accessibility text

4. Device Parameters Widget

Experienced users have the ability to modify the parameters of the connected devices, by using the Device Parameters Widget. You can modify a specific parameter for all the devices at once, or for each device separately.

accessibility text

The parameters you can modify are:

  • Color Exposure
  • Color Gain
  • Color Brightness
  • Color Sharpness
  • Color Hue
  • Color Saturation
  • Maximum Distance (Depth Sensor)
  • Depth Exposure
  • Depth Gain
  • Laser Power
  • set/unset Color Auto Exposure
  • set/unset Depth Auto Exposure

When modifying device parameters via the main Device Parameter Widget, then by default the modification will be applied to all of the connected devices. In order to modify parameters of a specific device, you have to first click on the device (colored buttons at the top of the Device Parameters Widget)

accessibility text

5. Workflow Parameters Widget

More experienced users have also the ability to modify workflow parameters, via the Workflow Parameters Widget. From Workflow Parameters Widget you can change parameters regarding color, and depth compression, as well as temporal and spatial filter parameters for the depth stream.

accessibility text

The parameters you can modify via this widget are the following:

  • Jpeg Compression:
    • Quality: Modifies the quality of the color stream compression (higher value means higher quality)
  • Entropy Compression (Depth stream compression parameters):
    • Method: You can choose one of the following entropy compression methods:
      • Blosc
      • Lz4
      • Lz4HC
      • Snappy
      • Zlib
      • Zstd
    • Level: The level of compression (higher value means better compression)
    • Shuffle: Byte or Bit
  • Spatial Filter (Depth Stream Spatial Filter):
    • Iterations: Number of iterations
    • Weight:
    • Step:
    • Hole Filling:
  • Temporal Filter (Depth Stream Temporal Filter):
    • Weight:
    • Step:
    • Persistency:

6. Viewport Control Widget

From the Viewport Control Widget can modify the main Viewport's parameters, like hide/show the Bounding Box, hide/show the Plane, switch from color per view to colored point cloud etc.

accessibility text

7. Record Widget

From the Record Widget you can record sequences and take snapshot of all the connected devices. You can select a name for the sequence or the snapshot you are going to capture, by typing the name that you desire in the text-field of each operation (Record or Snapshot) and by hitting Enter.

accessibility text

accessibility text

Then you can hit the "Start" Button to start recording a sequence, or the "Snapshot" Button to save a snapshot. The captured sequences and snapshots are saved in the Data folder, in the directory in which the Volumetric Capture application is installed.

System Calibration

We provide an easy calibration method analyzed here. In order to calibrate the system you have to assemble the calibration structure and put it in the middle of the capturing space. Open "Calibration"->"Configure" to visualize the calibration parameters (set iterations to maximum for optimal calibration). Then from the top toolbar you must select "Calibration"->"Capture" in order to capture snapshots of the depth stream. When snapshot capturing is finished, you must select "Calibration"->"Calibrate". The you should wait until the Calibration is finished and hit the "Load Latest" Button on the down-left side of the calibration pop-up.

accessibility text

accessibility text

accessibility text

Once the calibration is finished, you should be able to see the point-cloud of the calibration structure.

Hardware & Software Synchronization

As mentioned above, you can use the Hardware synchronization feature if you have assembled the synchronization cables, by choosing the Master device from the drop-down menu of the Connection Manager Widget.

If you don't have the required synchronization cables, you can use the PTP-Sync Software synchronization method from the Toolbar by Selecting "Synchronization"->"PTP". Then a pop-up will appear displaying the synchronization results, when the synchronization procedure finishes.