This article explains how a perspective camera lens can be calibrated in PIX4Dmapper.
PIX4Dmapper requires as input the internal parameters of the camera used to acquire the images for processing. These parameters are used for the 3D reconstruction and therefore, they must be accurate to achieve an optimal 3D reconstruction.
PIX4Dmapper has an internal camera database with the optimal parameters for many cameras. For cameras that do not exist in PIX4Dmapper ́s camera database, the optimal internal camera parameters can be computed in PIX4Dmapper while processing a good dataset. These parameters can then be used for all the projects acquired with the same camera. As small consumer-grade cameras are sensitive to vibration, temperature, etc., the software will, by default, optimize the internal parameters for each project starting from the same initial parameters.
Image requirements
A good dataset with the following properties is required:
- Enough images (100 - 300 images).
- Non-planar scene (not all objects have the same height)
- High overlap and rich texture.
- Several grid flights (at different heights) OR oblique imagery with sufficient overlap.
- Images with NO distortion correction applied. Original images are needed.
- If possible, with GCPs.
Calibration procedure
1. Create a new project: Step 2. Creating a Project.
2. Import the images: Step 2. Creating a Project.
3. Configure the image properties:
3.1 (optional) Select the image coordinate system: Select Image / GCP / Output Coordinate System .
3.2 (optional, recommended) Import the image geolocation and orientation: Step 2. Creating a Project.
3.3 Edit the camera model. In the Select Camera Model section, click Edit.
3.3.1 In the Camera Model section, click Edit.
3.3.2 (Only for non RGB cameras) Set the correct band configuration and weights: How to set the band weights for modified cameras (NIR,R,G and NIR,G,B) (steps 4 to 8).
3.3.3 In the Camera Model Parameters section, select Perspective Lens and set the following values:
- Sensor Width [mm] or Pixel Size [um]: Set either the sensor width in millimeters or the pixel size in micrometers.
- Focal Length [mm]: Set the focal length in millimeters.
- Principal Point x [pixel]: Set the principal point in the center of the image, i.e. set the value to ImageWidth/2.
- Principal Point y [pixel]: Set the principal point in the center of the image, i.e. set the value to ImageHeight/2.
- Camera Model with Distortions = 5.
- Radial Distortion R1 = 0.
- Radial Distortion R2 = 0.
- Radial Distortion R3 = 0.
- Tangential Distortion T1 = 0.
- Tangential Distortion T2 = 0.
3.4 In the Edit Camera Model window, click OK.
3.5 In the Image Properties window, click Next.
4. Select the processing options template: Step 2. Creating a Project. If the images were acquired using a grid flight plan, select 3D Maps. If not, select 3D Models.
5. Select the output coordinate system: Step 2. Creating a Project.
6. (optional) Import GCPs without marking them: How to import and mark ground control points (GCPs).
7. In the Local Processing window, select step 1.Initial Processing, unselect step 2. Point Cloud and Mesh and 3. DSM, Orthomosaic and Index and click Start.
8. (optional) If the project has image geolocation and GCPs in a known coordinate system, mark the GCPs using the rayCloud following How to import and mark ground control points (GCPs), reoptimize and regenerate the Quality Report (Menu Process > Generate Quality Report).
9. Verify the quality of the reconstruction by:
- Assessing the Quality Report.
- Selecting Automatic Tie Points at different locations in the rayCloud and verifying the reprojection on the original images.
- Selecting the GCPs in the rayCloud and verifying the reprojection on the original images.
10. If the reconstruction is not good enough, mark Manual Tie Points in the areas that are not well reconstructed and Reoptimize: How to import and mark Manual Tie Points (MTPs).
11. Generate the Quality Report by clicking Process > Generate Quality Report and repeat steps 9 and 10 till the reconstruction is good.
12. Once the reconstruction is good, save the optimized camera parameters so that they can be used as initial values for other projects:
12.1 Click Project > Image Properties Editor... to open the Image Properties Editor.
12.2 In the Selected Camera Model section, click Edit.
12.3 In the Camera Model section, click Edit.
12.4 In the Camera Model Parameters section, click Load Optimized Parameters and set the following values.
- Principal Point x [pixel]: Set the principal point in the center of the image, i.e. set the value to ImageWidth/2.
- Principal Point y [pixel]: Set the principal point in the center of the image, i.e. set the value to ImageHeight/2.
12.5 In the Camera Model section, click Save to DB.
12.6 In the Edit Camera Model window, click OK.
13. Remove the Manual Tie Points.
14. On the Processing bar, click Start to reprocess step 1.
15. Verify the quality of the reconstruction by:
- Assessing the Quality Report.
- Selecting automatic tie points at different locations in the rayCloud and verifying the reprojection on the original images.
- Selecting the GCPs in the rayCloud and verifying the reprojection on the original images.
16. If the reconstruction is not good, repeat steps 10 to 15.
The camera model is now saved in the user camera database. The next time that a project is created with the same camera, the camera parameters will be correctly detected.
For non-RGB cameras, the correct band configuration should be selected from the Bands dropdown list: Menu Project > Image Properties Editor... > Selected Camera Model > Edit Camera Model.