Difference between revisions of "Multiple PS Eye Cameras Calibration"

From iPi Docs
Jump to: navigation, search
Line 180: Line 180:
 
* Click '''Calibrate Based on AI Joints''' button and wait while the system finishes calibration (4).
 
* Click '''Calibrate Based on AI Joints''' button and wait while the system finishes calibration (4).
  
==== Step 6: Check Calibration Quality ====
+
==== Complete Calibration ====
  
Resulting scene should look like this:
+
Follow the same [[User_Guide_for_Multiple_PS_Eye_Cameras_Configuration#Step_6:_Check_Calibration_Quality|Steps 6-8]] described for flashlight calibration
 
+
[[File:Calibration_result1.png|center|800px]]
+
 
+
Make sure you have <span style="color:white; background:#ffd700; padding:5px;">Good</span> or <span style="color:white; background:#8cbf26; padding:5px;">Perfect</span> calibration result.
+
{{Important|1=<span style="color:white; background:#e93f3f; padding:5px;">Failed</span> calibration is not recommended to use, as you will not be able to get accurate tracking results. However, sometimes '''Failed''' status can be misdetected. If detected marker positions are close to marker image on video in all frames for all sensors, you can use this calibration for tracking.}}
+
 
+
==== Step 7: Check Ground Plane ====
+
[[Image:Floor-Detection-1.png|thumb|334px|Manual Floor Detection]]
+
Ground plane should be detected automatically. Ground points are marked by <span style="color:white; background:#ffd700; padding:5px;">yellow</span> color.
+
* Make sure that ground points are actually near the ground plane.
+
* If ground plane is detected incorrectly, select ground points manually.
+
** Expand '''Manual Calibration Adjustment''' expander.
+
** First, unmark all ground points by pressing '''Clear all points''' button.
+
** For each ground point, click on it in 3D view and press '''Mark as ground''' button.
+
** You can cancel marking point as ground point by pressing '''Unmark ground''' button.
+
 
+
{{Important|If you do not mark ground points then the ground plane is incorrect and there is no sense in using Foot tracking option and camera heights values.}}
+
 
+
==== Step 8: Set Scene Scale Using Camera Height as Reference ====
+
 
+
Now cameras in your scene are properly oriented relative to other cameras and relative to ground plane. But you still need to find one more parameter: scene scale.
+
 
+
Use '''Сamera #1''' height over ground to set correct scene scale.
+
 
+
[[File:Calibration_scale1.png|center|800px]]
+
+
* Save results to calibration project file or using '''Save scene...''' button on '''Scene''' tab (6).
+
[[Image:Depth_Project_Scene_Tab.png|center|link=]]
+

Revision as of 06:14, 31 October 2024

Flashlight Calibration

Calibration is a process of computing accurate camera positions and orientations from a video of user waving a small glowing object called marker (for color/color+depth cameras). This step is essential and required for multi-camera system setup.

Important.png
Important! Once you calibrated the camera system, you should not move your cameras for subsequent video shoots. If you move at least one camera, you need to perform calibration again.
Tip.png
Tip: We recommend to run calibration twice - before and after capture session. If any camera was moved during capture session, calibration made after the session can give you correct camera positions.

Importance of high frame rate

You should record calibration video at the same resolution as your action video and at the same (or higher) frame rate.

Calibration at a different resolution may lead to reduced accuracy because cameras usually have different minor distortions at different resolutions (caused by internal scaling algorithm).

Calibration at low frame rate may lead to reduced accuracy because of increased synchronization errors.

Glowing Marker

Mini Maglite flashlight is recommended for calibration. This is a very common flashlight in US and many other countries. Removing flashlight reflector converts it into an ideal glowing marker easily detectable by motion capture software.

Maglite.jpg

If you cannot get a Mini Maglite, you can use some other similar flashlight.

Noname flashlight.jpg

Alternatively, you can use Sony Move motion controller with white light turned on.

Psmove.jpg

Step 1: Running iPi Recorder in Calibration Mode

Run iPi Recorder and choose one of the darkening modes in "darkening for calibration" list (for Sony PS Eye cameras)

Calibration-darkening.png

or set Exposure to reasonably small value (for DirectShow-compatible web cameras)

Calibration-exposure.png

This is important because it helps to reduce motion blur during calibration.

Video will look dim in calibration mode.

Important.png
Important! Do not turn off the light in the room during calibration! This will not help the software but will make it harder for you to see what is happening on recorded video when you view it later.

Step 2: Record Calibration Video

Start video recording.

Move the marker slowly through your entire capture volume (front-top-right-bottom-left-back-top-right-bottom-left). Start from top and move the marker in a descending spiral motion.

Tip.png
Tip: The exact trajectory of the marker is not so important, just try to cover the whole capture volume, or at least its perimeter.
Tip.png
Tip: For successful calibration, several hundred frames are sufficient. Much more frames (like several thousands) will not produce more accurate results, but instead will increase the processing time and possible number of marker detection errors. So generally it is not recommended to record calibration videos of more than 1 minute length.
Tip.png
Tip: You should make the marker visible to as much cameras as possible at all times. Hold the marker in the straight arm away from your body. In a circle configuration, when approaching the boundary of the capture area, position the marker inside the area, and your body outside.
Calibration1.jpg
Calibration2.jpg
Calibration3.jpg

Put the marker to the ground at each corner and at the center of capture volume. At least 4-5 ground points are needed for the correct detection of the groundplane.

Calibration ground1.jpg
Calibration ground2.jpg

Step 3: Stop Recording and Check Recorded Video

Check the video and make sure that:

  • There is no significant motion blur (image of marker looks like a round spot rather than an ellipse or a luminescent line)
  • Most of the time (80%-90% of all recording time) marker is visible in all cameras

Step 4: Take Note of Height of Your First Camera Over the Ground.

Take note of height of your first camera over the ground. You will need this parameter later.

Step 5: Process Calibration Video in iPi Mocap Studio

Tip.png
Tip: You can postpone processing calibration video until after you finished recording other videos (e.g. your action videos). However, it is a good idea to process your calibration video as soon as it was recorded because it helps you ensure that you have good calibration.

To process calibration video please do the following:

  • Create new calibration project in iPi Mocap Studio:
    • Press New button or select File > New Project menu item or use Ctrl+N (2)
    Calibration Start.png
    • Choose Calibration project type in New Project Wizard.
    • Set the diagonal Field of View (FOV) for your cameras. If this screen is not shown, this means FOV is already known and you do not need to manually specify it.
    Note.png
    Note: If you use Sony PS Eye or Logitech QuickCam 9000 cameras, leave the FOV value at the default 75 degrees.
Select Project Type Calibration.png
Calibration Select Camera FOV.png
  • Adjust the Region-of-Interest to cover the part of video that contains the glowing marker (3).
  • Normally, you need to use default calibration settings
    • Auto-detect initial camera positions turned on
      • If calibration fails to detect initial camera positions correctly, you can turn this checkbox off and set camera positions manually. But in most cases it will be easier to re-record calibration sequence.
    • Auto-adjust camera FOV turned off
      • Use this mode only if you did not know camera field of view requested during project creation (if it was requested) or if it was set by default (this may be recommended for particular camera models).
  • Click Calibrate Based on Flashlight Marker button and wait while the system finishes calibration (4).

Step 6: Check Calibration Quality

Resulting scene should look like this:

Calibration result1.png

Make sure you have Good or Perfect calibration result.

Important.png
Important! Failed calibration is not recommended to use, as you will not be able to get accurate tracking results. However, sometimes Failed status can be misdetected. If detected marker positions are close to marker image on video in all frames for all sensors, you can use this calibration for tracking.

Step 7: Check Ground Plane

Manual Floor Detection

Ground plane should be detected automatically. Ground points are marked by yellow color.

  • Make sure that ground points are actually near the ground plane.
  • If ground plane is detected incorrectly, select ground points manually.
    • Expand Manual Calibration Adjustment expander.
    • First, unmark all ground points by pressing Clear all points button.
    • For each ground point, click on it in 3D view and press Mark as ground button.
    • You can cancel marking point as ground point by pressing Unmark ground button.
Important.png
Important! If you do not mark ground points then the ground plane is incorrect and there is no sense in using Foot tracking option and camera heights values.

Step 8: Set Scene Scale Using Camera Height as Reference

Now cameras in your scene are properly oriented relative to other cameras and relative to ground plane. But you still need to find one more parameter: scene scale.

Use Сamera #1 height over ground to set correct scene scale.

Calibration scale1.png
  • Save results to calibration project file or using Save scene... button on Scene tab (6).
Depth Project Scene Tab.png

Calibration Based on AI Joints

Novel AI-based pose estimation algorithms allow to use AI-detected joint positions instead of glowing object (flashlight), that makes the calibration workflow simpler.

Note.png
Note: This feature requires Nvidia RTX video card. Please refer to detailed System Requirements
Important.png
Important! Once you calibrated the camera system, you should not move your cameras for subsequent video shoots. If you move at least one camera, you need to perform calibration again.
Tip.png
Tip: We recommend to run calibration twice - before and after capture session. If any camera was moved during capture session, calibration made after the session can give you correct camera positions.

Importance of high frame rate

You should record calibration video at the same resolution as your action video and at the same (or higher) frame rate.

Calibration at a different resolution may lead to reduced accuracy because cameras usually have different minor distortions at different resolutions (caused by internal scaling algorithm).

Calibration at low frame rate may lead to reduced accuracy because of increased synchronization errors.

Step 1: Running iPi Recorder

Run iPi Recorder in a regular (default) mode used for recording action videos. Do not use darkening modes in "darkening for calibration" list (if available). Darkening is good for flashlight calibration, but bad for joints detection.

Step 2: Record Calibration Video

Start video recording.

Just walk around the whole capture area, and put hands up from time to time.

Tip.png
Tip: The exact movement is not so important, just try to cover the whole capture volume by arms and legs movement, or at least its perimeter.
Tip.png
Tip: You can use your action videos for calibration, if the body movement cover the whole capture area. Videos when you stand at the same place all the time will not allow for accurate calibration.
Tip.png
Tip: For successful calibration, 1000 frames shoud be enough. Recording long videos over 1 minute length does not make much sense, but you still can use them for calibration.

Step 3: Take Note of Height of Your First Camera Over the Ground.

Take note of height of your first camera over the ground. You will need this parameter later.

Step 4: Process Calibration Video in iPi Mocap Studio

Tip.png
Tip: You can postpone processing calibration video until after you finished recording other videos (e.g. your action videos). However, it is a good idea to process your calibration video as soon as it was recorded because it helps you ensure that you have good calibration.

To process calibration video please do the following:

  • Create new calibration project in iPi Mocap Studio:
    • Press New button or select File > New Project menu item or use Ctrl+N (2)
    Calibration Start AI 1.png
    • Choose Calibration project type in New Project Wizard.
    • Set the diagonal Field of View (FOV) for your cameras. If this screen is not shown, this means FOV is already known and you do not need to manually specify it.
    Note.png
    Note: If you use Sony PS Eye or Logitech QuickCam 9000 cameras, leave the FOV value at the default 75 degrees.
Select Project Type Calibration.png
Calibration Select Camera FOV.png
  • Adjust the Region-of-Interest to cover the part of video that contains movement around capture area.
  • Normally, you need to use default calibration settings
    • Auto-detect initial camera positions turned on
      • If calibration fails to detect initial camera positions correctly, you can turn this checkbox off and set camera positions manually. But in most cases it will be easier to re-record calibration sequence.
    • Auto-adjust camera FOV turned off
      • Use this mode only if you did not know camera field of view requested during project creation (if it was requested) or if it was set by default (this may be recommended for particular camera models).
  • Click Calibrate Based on AI Joints button and wait while the system finishes calibration (4).

Complete Calibration

Follow the same Steps 6-8 described for flashlight calibration