A multi-camera constrained image pose optimization method and system
By utilizing laser odometry and camera calibration extrinsic parameters, overlapping image pairs are screened for feature matching and triangulation, and a joint optimization method for relative pose constraints of multiple cameras is constructed. This solves the problem of pose error that cannot be corrected in multi-camera systems and achieves high-precision and stable image pose optimization.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- TIANJIN PEGASUS ROBOT TECH CO LTD
- Filing Date
- 2026-05-29
- Publication Date
- 2026-07-03
AI Technical Summary
In existing technologies, multi-camera systems fail to effectively utilize the visual correlation information between multiple cameras during pose optimization, resulting in the inability to correct pose errors of a single camera, which affects the accuracy and stability of image pose optimization.
The initial pose is obtained by laser odometry. Combined with the calibration extrinsic parameters of the camera and lidar, image pairs with overlap are selected, feature point matching and triangulation are performed, and a joint objective function including reprojection error and multi-camera relative pose constraints is constructed. The camera pose and 3D point coordinates are optimized by bundle adjustment.
It significantly shortens image reconstruction time, improves the accuracy and stability of image pose optimization, ensures that the pose error of the multi-camera system can be corrected by the constraints between multiple cameras, and improves the registration accuracy between the image and the laser point cloud.
Smart Images

Figure CN122335992A_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of computer vision and 3D reconstruction technology, and in particular relates to a method and system for image pose optimization with multi-camera constraints. Background Technology
[0002] Current handheld laser devices typically carry multiple cameras, using complementary camera perspectives to cover the front, back, left, right, top, and bottom areas of the scanned target, avoiding color loss caused by blind spots in a single camera. However, in actual scanning, multiple cameras and pose accuracy are key prerequisites for ensuring color quality. Only when the image pose reaches a certain level of accuracy can the pixel colors captured by the cameras be accurately mapped to the corresponding three-dimensional coordinates of the laser point cloud through coordinate transformation.
[0003] Existing solutions mostly process the pose optimization of each camera independently, without utilizing the visual correlation information between multiple cameras to construct constraints. This results in the pose error of a single camera not being able to be corrected using accurate information from other cameras.
[0004] Therefore, how to utilize the relative pose constraints between multiple cameras to improve the accuracy and stability of image pose optimization has become a technical problem that urgently needs to be solved in this field. Summary of the Invention
[0005] In view of this, the present invention aims to overcome the shortcomings of the above-mentioned problems in the prior art and proposes a multi-camera constrained image pose optimization method and system.
[0006] To achieve the above objectives, the technical solution of the present invention is implemented as follows:
[0007] In a first aspect, the present invention provides a multi-camera constrained image pose optimization method, comprising the following steps:
[0008] Step S1: Obtain the pose of the laser odometry through laser mapping, and calculate the initial pose of each camera in the world coordinate system by combining the calibration extrinsic parameters of the camera and the lidar.
[0009] Step S2: Based on the initial pose of each camera, determine the overlap between image pairs and filter out image pairs with overlap.
[0010] Step S3: Extract and match feature points from the selected image pairs;
[0011] Step S4: Triangulate the matched feature points using the initial pose to generate the 3D coordinates of the feature points;
[0012] Step S5: Construct a joint objective function that includes reprojection error and multi-camera relative pose constraint factors, perform bundle adjustment optimization on camera pose and 3D points, and output the optimized camera pose and 3D point coordinates.
[0013] Furthermore, the specific method for calculating the initial pose of the camera in step S1 is as follows:
[0014] Given the pose of the lidar in the world coordinate system at time k is: The calibration extrinsic parameters from the i-th camera to the LiDAR are: Then the pose of the i-th camera in the world coordinate system at time k. for:
[0015] ;
[0016] in This represents the pose of the i-th camera in the world coordinate system at time k. This represents the position of the i-th camera in the world coordinate system at time k.
[0017] Furthermore, the method for determining whether image pairs overlap in step S2 is as follows:
[0018] First, determine that the spatial distance between the images is less than a set distance threshold. Then, determine that the difference in the orientation angle of the images is less than a set angle threshold. If both conditions are met, then it is determined that there is overlap.
[0019] Furthermore, the distance threshold is set to 10 meters, and the angle threshold is set to 90 degrees.
[0020] Furthermore, the joint objective function in step S5 is:
[0021]
[0022] Where i represents the i-th camera. This indicates the pose of all cameras. Let k represent all points in three-dimensional space, and k represent the k-th three-dimensional point. This indicates that each camera i has seen a valid observation of point k. This indicates the reprojection error. This represents the relative pose error. This represents the weighting coefficients used to adjust the constraints on the relative poses between multiple cameras, where j represents the j-th camera. This represents a constrained combination of all cameras i and j.
[0023] Furthermore, The relative pose error is further refined, representing the relative pose error between camera i and camera j. for:
[0024] ;
[0025] in, : The current optimized pose of camera i;
[0026] T j : The current optimized pose of camera j;
[0027] The "current estimated relative pose" from camera i to camera j;
[0028] The "true calibration relative pose" from camera i to camera j;
[0029] : The inverse of the estimated relative pose x the true relative pose;
[0030] Transform the matrix difference into a 6-dimensional vector.
[0031] Furthermore, weighting coefficients Set it to 10.
[0032] Furthermore, in step S5, the bundle adjustment optimization uses the QR decomposition method to solve the linear incremental equation. The iterative convergence condition is: the average reprojection error is less than 1 pixel, or the total error change in two consecutive iterations is less than a preset threshold.
[0033] Secondly, the present invention provides a multi-camera constrained image pose optimization system, comprising:
[0034] The initial pose calculation module is used to obtain the laser odometry pose through laser mapping and, in combination with the calibration extrinsic parameters of the camera and lidar, calculate the initial pose of each camera in the world coordinate system.
[0035] The overlap filtering module is used to determine the overlap between image pairs based on the initial pose of each camera and to filter out image pairs with overlap.
[0036] The feature matching module is used to extract and match feature points on the selected image pairs.
[0037] The triangulation module is used to triangulate the matched feature points using the initial pose, generating the three-dimensional coordinates of the feature points.
[0038] The joint optimization module is used to construct a joint objective function that includes reprojection error and multi-camera relative pose constraint factors. It performs bundle adjustment optimization on the camera pose and 3D points, and outputs the optimized camera pose and 3D point coordinates.
[0039] Thirdly, the present invention provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the above-mentioned multi-camera constrained image pose optimization method.
[0040] Compared with existing technologies, the multi-camera constrained image pose optimization method and system described in this invention have the following advantages:
[0041] This invention utilizes the prior pose of a laser odometry to obtain the initial pose of an image, directly skipping the initialization stage of pure image mapping, which significantly shortens the image reconstruction time; and the method of direct triangulation of the prior pose of the image is more stable than pure image mapping.
[0042] This invention improves the accuracy and stability of image pose optimization. Attached Figure Description
[0043] The accompanying drawings, which form part of this invention, are used to provide a further understanding of the invention. The illustrative embodiments of the invention and their descriptions are used to explain the invention and do not constitute an undue limitation of the invention. In the drawings:
[0044] Figure 1 This is a schematic diagram of the method flow of the present invention. Detailed Implementation
[0045] It should be noted that, unless otherwise specified, the embodiments and features described in the present invention can be combined with each other.
[0046] In the description of this invention, it should be understood that the terms "center," "longitudinal," "lateral," "upper," "lower," "front," "rear," "left," "right," "vertical," "horizontal," "top," "bottom," "inner," and "outer," etc., indicating orientations or positional relationships based on the orientations or positional relationships shown in the accompanying drawings, are only for the convenience of describing the invention and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation, and therefore should not be construed as a limitation of the invention. Furthermore, the terms "first," "second," etc., are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of indicated technical features. Thus, a feature defined with "first," "second," etc., may explicitly or implicitly include one or more of that feature. In the description of this invention, unless otherwise stated, "a plurality of" means two or more.
[0047] In the description of this invention, it should be noted that, unless otherwise explicitly specified and limited, the terms "installation," "connection," and "linking" should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral connection; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; and they can refer to the internal connection of two components. Those skilled in the art will understand the specific meaning of the above terms in this invention based on the specific circumstances.
[0048] The present invention will now be described in detail with reference to the accompanying drawings and embodiments.
[0049] Example 1
[0050] like Figure 1 As shown, this invention provides a multi-camera constrained image pose optimization method, comprising the following steps:
[0051] Step S1: Calculate the initial pose of the camera.
[0052] A laser odometry system can output the pose of a lidar in the world coordinate system. Then, by using the extrinsic parameters obtained from the calibration of the camera and lidar, the initial pose of the camera can be calculated directly.
[0053] (1) Given that the laser's pose in the world coordinate system at time k is: If the pose includes the rotation matrix and translation vector, then:
[0054]
[0055] Let be the rotation matrix corresponding to the attitude of the lidar in the world coordinate system at time k. Let be the translation vector corresponding to the position of the lidar in the world coordinate system at time k.
[0056] (2) The extrinsic parameter matrix from the i-th camera to the laser (i.e., the relative pose, which has been pre-calibrated) is known.
[0057]
[0058] R i Let t be the rotation matrix for the i-th camera. i Let be the translation vector of the i-th camera.
[0059] (3) Calculate the pose of the i-th camera in the world coordinate system at time k.
[0060]
[0061] in This represents the pose of the i-th camera in the world coordinate system at time k. This represents the position of the i-th camera in the world coordinate system at time k.
[0062] Step S2: Determine if the image pairs have overlap.
[0063] Exhaustively enumerate all image pairs and determine whether they overlap based on their initial poses. Suppose there are two images A and B, with poses as follows: The translation vector is in meters. First, the distance difference between image pairs is determined, and the distance threshold is set. t1 represents the position of the camera in image A in the world coordinate system, and t2 represents the position of the camera in image B in the world coordinate system. If the distance is greater than 10 meters, the two images are considered to have no overlap and will not be matched in subsequent processes. If d < 10, the distance condition is met, and the angle difference between the image poses is then determined. First, the relative rotation is calculated. The angle difference between the image pairs The trace is the trace of a matrix, which is the sum of the elements on the main diagonal of the square matrix. Convert bit degree If the angle is less than 90 degrees, it means that the two images have overlap, and subsequent matching will be performed. That is, to determine whether two images have overlap, first determine that the positional distance between the images is less than 10 meters, and then determine whether the angle difference is less than 90 degrees. If both conditions are met, the two images are considered to have overlap.
[0064] Step S3: Image Feature Point Extraction and Matching
[0065] The SIFT-GPU algorithm is used to extract feature points. SIFT features are local features of an image, which are invariant to rotation, scaling, and brightness changes, and also maintain a certain degree of stability to viewpoint changes, affine transformations, and noise. The GPU version of the SIFT algorithm further accelerates feature point extraction and improves processing speed.
[0066] During feature point matching, only image pairs that are determined to have overlap in step S2 are matched to avoid unnecessary computational overhead.
[0067] Step S4: Triangulation
[0068] This invention utilizes the camera's initial pose and, after acquiring matching points, directly employs triangulation to obtain the 3D point coordinates. Triangulation is the process in computer vision of recovering the position of a 3D point from 2D feature points in two or more views. When the poses of two views (i.e., the camera's position and orientation in the world coordinate system) and their matching feature points are known, the positions of these feature points in 3D space can be estimated through triangulation. This invention uses DLT (Digital Thresholding Theorem) for triangulation to recover the 3D point coordinates corresponding to the feature points.
[0069] Known camera intrinsic parameters External reference , 3D points The corresponding image points P1 and P2 have pixel coordinates. Camera matrix T represents the camera pose matrix, where R is the rotation matrix, t is the translation vector, and K is a 3x3 matrix;
[0070] Pixel coordinates ,in These are the coordinates of a three-dimensional point.
[0071] By eliminating scalar factors through cross products, each image point yields three equations, two of which are linearly independent. For the matching points in the first image, we have: ,in, ,express The antisymmetric matrix, combined with the matrix form of P1, yields... , unfold to get In the formula, the components with respect to X are all linear. Similarly, for the matching points in the second image... Performing the same operation will also yield the following result. Taking the first two formulas of the two systems of equations, we obtain four homogeneous equations with four unknowns, forming... The equation is given by A, where A is the coefficient matrix.
[0072] pass untie get .
[0073] Step S5: BA optimization based on pose constraints among multiple cameras
[0074] The core of traditional bundle adjustment (BA) is to optimize camera pose and 3D point coordinates by minimizing reprojection error. However, when relying solely on reprojection error, the poses of each camera in a multi-camera system are prone to "relative drift"—that is, in order to fit its own reprojection error, the pose of a single camera deviates from the calibration relative pose of other cameras, which leads to the destruction of the rigid structure of the entire camera group and ultimately affects the registration accuracy.
[0075] This invention adds a "multi-camera relative pose factor" to the objective function of traditional BA, using the fixed relative poses calibrated between multiple cameras as a hard constraint to force the relative poses of each camera to remain unchanged during the optimization process. At the same time, it takes into account reprojection error (to ensure the consistency of image and 3D point projection), and finally achieves multi-camera joint optimization with "accurate projection + structural stability", providing a high-precision and high-stability camera pose foundation for subsequent fine registration of images and laser point clouds.
[0076] The relative pose factor of this invention is a "pre-known and fixed" geometric constraint between multiple cameras, which is the extrinsic parameter (rotation matrix and translation vector) between multiple cameras. Multiple cameras are rigidly mounted together, and their positions and angles relative to each other do not change. This unchanging relative rotation and translation constitute the known relative pose. In this invention, the pose of the camera group is used as nodes in the graph, and the known relative poses between cameras are used as edges, forming a strongly connected factor graph. The relative pose factor between cameras is added to the objective function of BA to constrain the pose relationship of multiple cameras at the same time. Adding the constraint of the entire camera group to BA optimization can effectively improve the stability of image pose optimization. It also improves observability: multiple cameras at the same time are "constrained into a network," providing additional independent information for pose, significantly mitigating degradation caused by pure rotation, planar scenes, and weak textures. It suppresses drift and deformation: the relative pose factor across cameras limits the free drift of each camera, resulting in a more consistent and smoother overall trajectory. Applying constraints to the same structure from multiple perspectives (different optical axes / fields of view / focal lengths) makes rotation and translation estimation more accurate.
[0077] The specific process is as follows:
[0078] (5.1) Calculation of relative pose of multiple cameras
[0079] The relative pose between multiple cameras is essentially a coordinate transformation from one camera coordinate system to another. There are two types of relative pose values: one is the pre-calibrated relative pose between images, and the other is the relative pose between images calculated during the BA (Balanced Attraction) optimization process. These include:
[0080] True relative pose: The true relative pose between camera i and camera j is defined as follows: , which represents the true relative pose from camera j to camera i. This value is obtained through prior calibration and is a known value.
[0081] Estimating relative pose: In each iteration of BA optimization, we obtain the currently estimated camera pose. Using the same logic, the relative pose between the two cameras is estimated as follows:
[0082]
[0083] This value will change continuously with optimization iterations, and the goal of multi-camera constraints is to make... as close as possible This avoids relative pose drift between cameras.
[0084] (5.2) Complete cost function
[0085] BA optimization based on multi-camera pose constraints aims to jointly minimize the "reprojection error" and the "multi-camera relative pose constraint error" to obtain the optimal camera pose. and three-dimensional points The complete objective function is as follows:
[0086]
[0087] : Pose of all cameras (rotation R + translation t)
[0088] All three-dimensional space points
[0089] That is, by adjusting the poses of all cameras and all 3D points, the total error is minimized.
[0090] i represents the i-th camera, and k represents the k-th 3D point. This indicates that each camera i has seen a valid observation of point k. The reprojection error is represented by the square of the L2 norm. The x and y components of the error vector are squared and then summed. This makes the error a positive number, which is convenient for minimizing.
[0091] : Weighting coefficient, this is the constraint weight for adjusting the relative pose between multiple cameras. When When the value is 0, there are no constraints between multiple cameras; here, it is set to 10.
[0092] j represents the j-th camera;
[0093] : All camera i and camera j are constrained combinations, that is, traversing every pair of cameras that need to remain rigid;
[0094] Will The relative pose error is further refined, and the relative pose error between camera i and camera j is:
[0095]
[0096] The current optimized pose of camera i
[0097] T j : The current optimized pose of camera j
[0098] The "current estimated relative pose" from camera i to camera j
[0099] The "true calibration relative pose" from camera i to camera j
[0100] : The inverse of the estimated relative pose x the true relative pose
[0101] Transform the matrix difference into a 6-dimensional vector (3 rotations + 3 translations).
[0102] (5.3) Optimization process
[0103] Step 5.3.1: Initialization. The camera pose is initialized to the result of step S1, and the 3D points are initialized to the result of step S4. Fixed parameters include: the true relative pose between multiple cameras, the weight coefficient λ=10, and the convergence threshold (average reprojection error less than 1 pixel, or the total error change between two iterations less than a preset threshold).
[0104] Step 5.3.2: Calculate all error terms.
[0105] Calculate the reprojection error: , representing the reprojection error for each camera i and the corresponding 3D point k. Where z ik T represents the pixel coordinates of the feature point. i For the image pose, P k Let h be a 3D point, and h represent the pixel coordinates obtained by reprojecting the 3D point onto the image according to the image pose.
[0106] Calculate the relative pose constraint error: for each camera i-camera j constraint pair
[0107] Calculate the current estimated relative pose:
[0108] The difference matrix between the actual relative pose and the estimated relative pose:
[0109] The difference matrix is transformed into an error vector through logarithmic mapping.
[0110] Calculate the sum of squares of the total error: .
[0111] Step 5.3.3: Solve the linear incremental equations. Linearize the nonlinear least squares problem using a first-order Taylor expansion to construct the normal equations.
[0112]
[0113] in,
[0114] J is the Jacobian matrix obtained from the Taylor expansion, where For the partial derivative of the residual with respect to the coordinates of the 3D point, This is the partial derivative of the residual with respect to the camera pose.
[0115] : The incremental vector of the optimization variables (total dimension = number of cameras x 6 + number of 3D points x 3), which includes the increment of all camera poses and the increment of all 3D points.
[0116] e: Total error vector (total dimension = total dimension of reprojection error + total dimension of constraint error), including all reprojection errors and all relative pose constraint errors;
[0117] Finally, the QR decomposition method is used to avoid direct inversion and obtain the increment. .
[0118] Step 5.3.4: Update and optimize variables.
[0119] From the increment vector Extract the pose increment of each camera (6D: 3D rotation increment and 3D translation increment), then update the camera pose;
[0120] From the increment vector Extract the increment of the k-th 3D point Then update the coordinates of the three-dimensional points.
[0121] Step 5.3.5: Determine convergence.
[0122] Calculate the updated total error and determine whether it meets any of the following convergence conditions:
[0123] The amount of error variation is small enough;
[0124] The average reprojection error is less than 1 pixel; if the convergence condition is met, the iteration is terminated; otherwise, return to step 5.3.2 to continue the iteration.
[0125] Step 5.3.6: Output the optimal result. After the iteration converges, the result is... (The pose of each camera in the world coordinate system) and The world coordinates of each 3D point are the optimal result after joint optimization. This result ensures both the accuracy of the 3D point projection onto the ordinary camera image and the stability of the rigid structure between multiple cameras. It can be directly used for subsequent fine registration of the image and the laser point cloud (such as matching and constraining the 3D points with the laser point cloud).
[0126] Example 2:
[0127] A multi-camera constrained image pose optimization system includes:
[0128] The initial pose calculation module is used to obtain the laser odometry pose through laser mapping and, in combination with the calibration extrinsic parameters of the camera and lidar, calculate the initial pose of each camera in the world coordinate system.
[0129] The overlap filtering module is used to determine the overlap between image pairs based on the initial pose of each camera and to filter out image pairs with overlap.
[0130] The feature matching module is used to extract and match feature points on the selected image pairs.
[0131] The triangulation module is used to triangulate the matched feature points using the initial pose, generating the three-dimensional coordinates of the feature points.
[0132] The joint optimization module is used to construct a joint objective function that includes reprojection error and multi-camera relative pose constraint factors. It performs bundle adjustment optimization on the camera pose and 3D points, and outputs the optimized camera pose and 3D point coordinates.
[0133] Example 3:
[0134] A computer-readable storage medium storing a computer program, which, when executed by a processor, implements the aforementioned multi-camera constrained image pose optimization method.
[0135] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A method of multi-camera constrained image pose optimization, the method comprising: Includes the following steps: Step S1: Obtain the pose of the laser odometry through laser mapping, and calculate the initial pose of each camera in the world coordinate system by combining the calibration extrinsic parameters of the camera and the lidar. Step S2: Based on the initial pose of each camera, determine the overlap between image pairs and filter out image pairs with overlap. Step S3: Extract and match feature points from the selected image pairs; Step S4: Triangulate the matched feature points using the initial pose to generate the 3D coordinates of the feature points; Step S5: Construct a joint objective function that includes reprojection error and multi-camera relative pose constraint factors, perform bundle adjustment optimization on camera pose and 3D points, and output the optimized camera pose and 3D point coordinates.
2. The method of claim 1, wherein: The specific method for calculating the initial pose of the camera in step S1 is as follows: The pose of the laser radar in the world coordinate system at time k is known as The i-th camera to the laser radar is calibrated as The pose of the i-th camera in the world coordinate system at time k is : ; in This represents the pose of the i-th camera in the world coordinate system at time k. This represents the position of the i-th camera in the world coordinate system at time k.
3. The image pose optimization method with multi-camera constraints according to claim 1, characterized in that: The method for determining whether image pairs overlap in step S2 is as follows: First, determine that the spatial distance between the images is less than a set distance threshold. Then, determine that the difference in the orientation angle of the images is less than a set angle threshold. If both conditions are met, then it is determined that there is overlap.
4. The image pose optimization method with multi-camera constraints according to claim 3, characterized in that: The distance threshold is set to 10 meters, and the angle threshold is set to 90 degrees.
5. The image pose optimization method with multi-camera constraints according to claim 1, characterized in that: The joint objective function in step S5 is: ; Where i represents the i-th camera. This indicates the pose of all cameras. Let k represent all points in three-dimensional space, and k represent the k-th three-dimensional point. This indicates that each camera i has seen a valid observation of point k. This indicates the reprojection error. This represents the relative pose error. This represents the weighting coefficients used to adjust the constraints on the relative poses between multiple cameras, where j represents the j-th camera. This represents a constrained combination of all cameras i and j.
6. The image pose optimization method with multi-camera constraints according to claim 5, characterized in that: Will The relative pose error is further refined, representing the relative pose error between camera i and camera j. for: ; in, : The current optimized pose of camera i; T j : camera j's current optimized pose; The "current estimated relative pose" from camera i to camera j; The "true calibrated relative pose" from camera i to camera j; : The inverse of the estimated relative pose x the true relative pose; Transform the matrix difference into a 6-dimensional vector.
7. The image pose optimization method with multi-camera constraints according to claim 5, characterized in that: Weighting coefficient Set to 10.
8. The image pose optimization method with multi-camera constraints according to claim 1, characterized in that: In step S5, the bundle adjustment optimization uses the QR decomposition method to solve the linear incremental equation. The iterative convergence condition is: the average reprojection error is less than 1 pixel, or the total error change between two consecutive iterations is less than a preset threshold.
9. A multi-camera constrained image pose optimization system, characterized in that: include: The initial pose calculation module is used to obtain the laser odometry pose through laser mapping and, in combination with the calibration extrinsic parameters of the camera and lidar, calculate the initial pose of each camera in the world coordinate system. The overlap filtering module is used to determine the overlap between image pairs based on the initial pose of each camera and to filter out image pairs with overlap. The feature matching module is used to extract and match feature points on the selected image pairs. The triangulation module is used to triangulate the matched feature points using the initial pose, generating the three-dimensional coordinates of the feature points. The joint optimization module is used to construct a joint objective function that includes reprojection error and multi-camera relative pose constraint factors. It performs bundle adjustment optimization on the camera pose and 3D points, and outputs the optimized camera pose and 3D point coordinates.
10. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, it implements the method described in any one of claims 1-8.