The objective of autocalibration is to easily obtain one seamless display with multiple video projectors as presented in the image below:

Result of an autocalibration with 5 projectors on a dome.Result of an autocalibration with 5 projectors on a dome.

Autocalibration can be used with the following screen setups: flat, curved and domes.

Setup

To perform auto-calibration, you will need the following equipment:


Auto-calibration steps

Step 1/10 – Instructions

In order to achieve the best results with autocalibration, take care to prepare your environment:

1. For each projector, make sure the following built-in settings are set to:

  • Video projector is powered on
  • Automatic keystone set to OFF
  • Overscan set to OFF
  • Noise reduction set to OFF

In your Modulo Remote:

  • Every output has rotation set to 0 (autocalibration will not work if some outputs are rotated (-90, 90, 180, etc.))
  • Every output has warping reset (no warp applied). Make sure the columns and rows are set to a 2×2 grid

2. For a better image contrast, consider minimizing the influence of external light sources (turn off the lights as much as possible)


Step 2/10 – Defining groups

In this page you can define one or several autocalibration group(s). Each group contains a dedicated camera and a set of outputs that will be calibrated together.

If this is the first time you run the autocalibration wizard in your project, this page will be empty, and you need to create a new group by using the Create button. If you have already run the autocalibration wizard, your previous groups will be displayed here.

In this page you may also choose the autocalibration mode:

  • Default: This mode should be used for the first autocalibration. It will take you through every steps where all the parameters of the camera and patterns will be setup.
  • One-click calibration: This mode brings you directly to step 10: Image acquisition. The new image capture will be made using all the parameters defined during the last Default calibration. This mode is useful in case one of the projectors has moved and you need to update the autocalibration but keep the same masks and warp. If the camera has moved, the display mask and warp may not be valid anymore and you should consider running the autocalibration wizard in Default mode.

By selecting a group and clicking Next, you continue the autocalibration in the Default mode.


Step 3/10 – Selecting outputs

To outputs to autocalibration, drag & drop the outputs you would like to add from the right panel to the left panel.

Blend groups can be defined for multiple layer configurations (such as dual projector configuration). In this case, the blending will be performed only between the outputs of the same group.

For example:

Flat screen. 2 projectors side by side:

Blend group Output
0 Output Left
0 Output Right

Curved screen. 4 projectors, 2 duals side by side:

Blend group Output
0 Output Left 1
1 Output Left 2
0 Output Right 1
1 Output Right 2


Step 4/10 – Selecting camera

In this page, you can select the camera that will be used for autocalibration. The right panel displays the list of all available cameras.

Adding a camera.in the Autocalibration wizard.Adding a camera.in the Autocalibration wizard.

Make sure the camera is connected to the same network as your Modulo Remote and Modulo Player. If it is not detected in this step, check that the drivers are properly installed and that the camera’s IP address is correctly configured for your network.

Camera configuration guides:

- Flir BlackFly GigE
- Lucid Triton GigE 200S


Step 5/10 – Setting camera parameters

In this page, you can increase/decrease the exposure of your camera and crop the view to match the region where autocalibration will take place.

It is important to ensure a good contrast between projector black and white (see example below).

The gain value should remain at its lowest possible value. The only reason to increase it should be when exposure is at maximum but the contrast is still insufficient.

Exposure too low Exposure OK Exposure too high

A second set of parameters enables you to crop the camera view.

While it does not have a direct impact on the results of autocalibration, image crop does offers some advantages: It increases the speed of image acquisition and decreases the file size of the images on the hard drive.

No crop Crop

Step 6/10 – Pattern settings

In this page you can set the size of the grid composing the patterns that will be projected during autocalibration.

This parameter has a huge impact on the results of calibration.

The most appropriate value may be very different from one setup to another, and can only be determined experimentally.

A good rule of thumb is to choose a pattern size so that you have approximately 20 circles along the output width.

Setting the pattern size in the Autocalibration wizard;Setting the pattern size in the Autocalibration wizard;

Avoid pattern sizes that are too small or too big.

Too small Ok Too big

Step 7/10 – Configuration

In this page you can set the type of display that is being calibrated. Selecting one of the three options (Flat, Curved, Dome) will load the preset parameters in the Advanced section.

Deformation tolerance has four possible values: Low, Normal, High, Very high. This property defines the tolerance in the transformation matrix that the algorithm will apply to the output image. A higher tolerance compensates more imperfections on the screen surface.

Selecting the display type for autocalibration.Selecting the display type for autocalibration.

Advanced parameters:

Filter features by size Toggle to discard features (blobs) that are too different from the average size of all detected blobs. This should be activated only for flat or nearly-flat screens.
Auto threshold Toggles whether pattern binarization is performed automatically or using the threshold defined in Step 9.
Undistort image Undistort image during calibration
Display outside camera view Indicates whether the camera sees the entire display or not. By setting this parameter to ON, the algorithm will consider the zones invisible by the camera as zones without blending (full projection). Otherwise, it will set blending to zero (no image emitted).
Update regions from displacement map Should be used only for flat screens in case the camera does not see the whole screen.
Filter mirror effect This option prevents a mirror-like effect that can occur when a projector concerned by autocalibration has a portion of its projection hitting another surface (like a floor or wall) that is not concerned by the autocalibration region.

Step 8/10 – Global mask definition

In this page you can define a mask that will be applied to the entire screen. In the following example there will not be any projection outside the blue area.

To start drawing the mask, click on the button (Add path).

If no mask is specified it is the equivalent of drawing a mask covering the entire screen.

Setting a mask on the calibration process.Setting a mask on the calibration process.

Step 9/10 – Mask per output

Each autocalibration output has a mask. These masks correspond to the area of the display that is covered by each individual output (projector).

The Binarization threshold property enables you to adjust them. The blue area on the image corresponds to the zone that will later be used for the blending of the output.

Setting the binarization threshold of an output.Setting the binarization threshold of an output.

The value of the threshold is correct when the blue area on the image corresponds as much as possible to the area covered by the output.

Too low Ok Too high

Step 10/10 – Acquiring images

This page displays the progress of image acquisition if the capture is not in “From capture” mode.

Need more help with this?
Don’t hesitate to contact us here.

Thanks for your feedback.