Rotary biprism pointing error correction method based on search and rescue optimization algorithm
By introducing a search and rescue optimization algorithm (SARO) into the rotating double prism system, the fitness function and assembly error parameter estimation model are constructed, and the comprehensive identification of multiple error parameters in the rotating double prism system is solved, efficient direction error correction is achieved, and the system direction accuracy is improved.
Patent Information
- Application Number
- CN202510510280.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-23
- Publication Date
- 2025-08-08
- Estimated Expiration
- 2045-04-23
AI Technical Summary
The prior art cannot take into account the comprehensive identification of multiple error parameters in rotating double prism systems, causing the beam propagation path to deviate from the theoretical trajectory, causing problems such as scanning domain distortion and missing field coverage.
A search and rescue optimization algorithm (SARO) was introduced into the rotating double prism system. By constructing a fitness function, an assembly error parameter estimation model was established, and the direction error was corrected by combining the rotation control of the CMOS camera and the prism.
The open-loop direction accuracy of the rotating double prism system is significantly improved, with the maximum direction error reduced by 81.3%, the average direction error reduced by 89.2%, and the root mean square error reduced by 87.3%, improving the stability and accuracy of the system.
Smart Images

Figure CN120449654A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to an error calibration method, and more particularly to a method for correcting pointing errors of a rotating bi-prism based on a search and rescue optimization algorithm. Background Art
[0002] The Rotating Double Prism System (RDPS), a refractive beam control device based on the coaxial rotation of double wedge-shaped prisms, has been widely used in free-space communications, optoelectronic tracking, lidar and other fields due to its compact structure, low motion inertia, and excellent scanning continuity.
[0003] In engineering practice, the rotating dual-prism pointing control system consists of multiple mechanisms such as a camera detector, a Risley prism, bearings, and a DC motor. The core mechanism of this system is to achieve continuous deflection of the light beam by independently rotating the two prisms. However, its pointing accuracy is easily affected by manufacturing tolerances and assembly errors. Specifically, it manifests itself in the coupling of multiple source errors such as prism wedge angle error, refractive index error, optical axis misalignment, bearing tilt, and rotation angle deviation, causing the light beam propagation path to deviate from the theoretical trajectory, thereby causing problems such as scanning domain distortion and lack of field of view coverage.
[0004] The prior art (Bravo-Medina B, Strojnik M, Garcia-Torales G, et al. Error compensation in a pointing system based on Risley prisms [J]. Applied Optics, 2017, 56(8): 2209-2216.) proposed a method for describing pointing errors using a graphical representation. This method equates the errors in the prism vertex angle, prism thickness, inter-prism separation, the height at which light passes through the prism, and the prism orientation angle to a comprehensive error for correction and compensation. However, the impact of each error source is not mentioned, and the solution obtained using the paraxial approximation method deviates from the actual situation when the deflection angle is large.
[0005] The prior art (Song Y, Gao S, Wu J, et al. Inverse Solution Error Analysis and Correction of Beam Steering System Based on Risley Prisms [J]. Applied Sciences-Basel, 2022, 12(4): 1972.) proposed a correction method based on pointing field coordinate transformation. This method requires pre-building a table to determine the circular trajectory of the target pointing position. The error correction effect of the pointing position at a small deflection angle is very good, but when the system error is large, the pointing position at a large deflection angle has a large error.
[0006] In summary, the technical solutions in the prior art cannot take into account the comprehensive identification of multiple error parameters in the system and effectively correct the pointing error of the rotating dual prism system. Summary of the Invention
[0007] The purpose of the present invention is to provide a method for correcting the pointing error of a rotating bi-prism based on a search and rescue optimization algorithm, which can take into account the comprehensive identification of multiple error parameters in the system and efficiently correct the pointing error of the rotating bi-prism system.
[0008] The purpose of the present invention is achieved through the following technical solutions:
[0009] A method for correcting the pointing error of a rotating bi-prism based on the Search and Rescue Optimization (SARO) algorithm is proposed. Using a rotating bi-prism system, the method introduces the Search and Rescue Optimization (SARO) algorithm into the parameter estimation of the system error. A fitness function for the SARO algorithm is constructed based on the deviation between the actual pointing position and the theoretical pointing position. An assembly error parameter estimation model is proposed and applied to pointing error correction.
[0010] The rotating dual-prism system includes a CMOS camera for extracting pixel position information of a target to be tracked in an image and two prisms capable of independent rotation. The prism refractive surfaces are arranged in a flat-wedge-wedge-flat order. The CMOS camera extracts the pixel position information of the target to be tracked in the image and returns it as feedback to an embedded drive controller. The embedded drive controller receives the feedback information from the CMOS camera and the current angle information of the prisms, and calculates the angle instructions of the two prisms according to a pointing error correction method based on a search and rescue optimization algorithm.
[0011] In the rotating biprism system, the incident light vector is refracted by the biprism system. According to Snell's refraction law and the camera pinhole imaging model, the ideal incident light vector corresponding to each pixel in the camera image can be obtained:
[0012]
[0013] The incident light passing through any pixel position in the CMOS camera imaging plane, i.e., the target imaging position, intersects with the plane of prism π1. The spatial coordinates of the intersection points on each refractive surface can be obtained by combining the size, spacing, and shape information of the rotating dual prism system components.
[0014] This process is divided into i+1 stages, (x0, y0, z0) is the position of the optical center of the camera lens; i=0 is the reverse light beam incident stage, (x1, y1, z1) is the position where the light beam intersects with the left plane of prism Π1; i=1 is the refraction stage on the left plane of prism Π1, (x2, y2, z2) is the position where the light beam intersects with the right wedge surface of prism Π1; i=2 is the refraction stage on the right wedge surface of prism Π1, (x3, y3, z3) is the position where the light beam intersects with the left plane of prism Π2; i=3 is the refraction stage on the left wedge surface of prism Π2, (x4, y4, z4) is the position where the light beam intersects with the right plane of prism Π2; i=4 is the refraction stage on the right plane of prism Π2, (x rp ,y rp ,z rp ) is the position where the beam intersects the screen:
[0015]
[0016] where N i is the unit normal vector of the current refraction surface, S i is the incident light vector, O i is a point on the refractive surface, (x i ,y i ,z i ) is a point where the incident light passes through, (x i+1 ,y i+1 ,z i+1 ) is the intersection of the incident light and the refractive surface; at a specific screen distance z rp At this point, the actual spatial position of the final pointing point (x rp ,y rp ,z rp ), this process is the mapping process of g(·);
[0017] The actual reverse incident ray vector is obtained using the following relationship:
[0018]
[0019] p' rp =g(φ,θ1,θ2,Δp x ,Δp y )
[0020] p rp =g([0],θ1,θ2,Δp x ,Δp y )
[0021]
[0022] where p rp is the ideal pointing point position of the rotating bi-prism system, φ is the CMOS camera pose error caused by the actual assembly, and p′ rp is the actual pointing point position of the rotating biprism system, is the rotation matrix, which is represented by the Euler angle (α Z ,β Y ,γ X )Sure;
[0023] According to the aforementioned equation for calculating the beam pointing point position, the deviation between the theoretical pointing point and the actual pointing point of the rotating biprism system can be expressed as:
[0024] (Δx, Δy)=g(φ,θ1,θ2,Δp x ,Δp y )-g(φ0,θ1,θ2,Δp x ,Δp y )
[0025] in is the pose error parameter, φ0=[0,0,0,0,0,0], Euler angle representing the misalignment posture, ε X , ε Y , ε Z Indicates the error value of misalignment and translation, Δp x ,Δp y represents the pixel value of the target off-center in the CMOS camera image, θ1 and θ2 represent the angular positions of prism Π1 and prism Π2, respectively, and g(·) represents the pointing point position determined by the rotating dual-prism system in a certain state;
[0026] The search and rescue optimization (SARO) algorithm is introduced into the parameter estimation of the rotating bi-prism system error, which specifically includes the following steps:
[0027] Step S1: Construct the solution form φ in the search and rescue optimization (SARO) algorithm i , randomly initialized in 2N solutions are evenly distributed within the range, and the fitness of all solutions is evaluated by fit;
[0028]
[0029] Step S2: Sort the solutions in descending order of fitness, and construct a clue matrix C. Use the first N solutions after sorting for X, and the remaining N solutions for M. In the D-dimensional search space, there are multiple search agents. The total number of iterations of the search process is N. The current position of each agent is a potential solution to the corresponding optimization problem. The search and rescue process of the agent is divided into two stages: the social stage and the individual stage.
[0030] At the same time, the algorithm hyperparameters (SE=0.5, MU=15) are defined. SE is used to control the interaction between group members. The larger the value, the faster the convergence speed, but also reduces the global search ability of the algorithm. MU is used to control the depth of the search. The larger the MU value, the more times the search will be conducted near the current solution position. USN is also set. i =0, where i=1,…,N;
[0031]
[0032] Step S3: In the social stage, calculate the search direction SD i , where k is chosen randomly;
[0033] SD i =(X i -C k ),k≠i
[0034] Step S4: Generate a new solution when r2<SE or j=j rand When the i-th agent's new solution X′ i,j Calculate using the following formula; otherwise, keep it unchanged and use the boundary parameters and Control the scope of the solution;
[0035]
[0036] In step S4, r1 is a random number uniformly distributed in the range of [-1, 1]; r2 is a random number uniformly distributed in the range of [0, 1], which is different in each dimension, but r1 is fixed for all dimensions; f(C k ) and f(X i ) are respectively to solve C k and X i The objective function value of SE is a hyperparameter between 0 and 1.
[0037] Step S5: Update matrices M, X, USN i and C;
[0038]
[0039]
[0040] Among them, USN i represents the number of times the i-th agent fails to find a better clue;
[0041] Step S6: At the individual stage, according to formula X i ′=X i +r3×(C k -C m ), i≠k≠m, and obtain the new position X′ of the i-th agent. i , and perform boundary control: where k and m are random integers between 1 and 2N, and r3 is a uniformly distributed random number between 0 and 1;
[0042] Step S7: Update matrices M, X, USN i ; When an agent's USN i When the number of unsuccessful searches is greater than the maximum number of unsuccessful searches (MU), it will enter a random position in the search space according to the following formula and set the USN of the agent to i Reset to 0:
[0043]
[0044] Among them, r4 is a uniformly distributed random number ranging between 0 and 1;
[0045] Step S8: Repeat steps S2 to S7. When the stopping rule is met: the number of iterations meets the requirement or the optimal solution no longer updates, obtain the optimal fitness value X in the final X matrix. best As the actual error parameter of the calibrated CMOS camera.
[0046] The beneficial effects of the present invention are:
[0047] The open-loop pointing accuracy of a rotating biprism system can be significantly improved. The improved accuracy can reach up to 89.2%, depending on the assembly deviation of the rotating biprism system. Compared to the pointing accuracy of the original method, this method reduces the maximum pointing error by 81.3%, the average pointing error by 89.2%, and the root mean square error by 87.3%. Experimental results demonstrate that this method can effectively improve the pointing accuracy of a rotating biprism system under open-loop conditions. This advantage stems directly from the innovative design of the error calibration process, which incorporates the multi-parameter error coupling characteristics of the rotating biprism system and designs the fitness value function of the SARO algorithm to achieve calibration of the CMOS camera's main axis error parameters and correction of the pointing error.
[0048] This method for correcting the pointing error of a rotating dual-prism, based on a search-and-rescue optimization algorithm, is physically interpretable and can rapidly adjust parameters related to error convergence for different dual-prism systems. Simulation experiments demonstrate that the proposed optimization method can accurately identify the actual position of the CMOS camera's main axis, providing stable and reliable parameter identification results. This method significantly improves pointing error and enhances the open-loop pointing accuracy of the dual-prism system. BRIEF DESCRIPTION OF THE DRAWINGS
[0049] The present invention will be further described in detail below with reference to the accompanying drawings and specific implementation methods.
[0050] Figure 1 is a schematic diagram of a rotating biprism system of the present invention;
[0051] Figure 2 Schematic diagram of the optical path of the rotating biprism of the present invention;
[0052] Figure 3 This is a schematic diagram of the present invention before the pointing point is corrected;
[0053] Figure 4 It is a schematic diagram of the pointing point after correction of the present invention. DETAILED DESCRIPTION
[0054] The present invention will be further described in detail below with reference to the accompanying drawings.
[0055] like Figures 1 to 4 As shown, in order to achieve the technical effect of "comprehensively identifying multiple error parameters in the system and efficiently correcting the pointing error of the rotating dual prism system", the steps and functions of a correction method for the pointing error of the rotating dual prism based on the search and rescue optimization algorithm are described in detail below;
[0056] A method for correcting the pointing error of a rotating bi-prism based on the Search and Rescue Optimization (SARO) algorithm is proposed. Using a rotating bi-prism system, the method introduces the Search and Rescue Optimization (SARO) algorithm into the parameter estimation of the system error. A fitness function for the SARO algorithm is constructed based on the deviation between the actual pointing position and the theoretical pointing position. An assembly error parameter estimation model is proposed and applied to pointing error correction.
[0057] The Search and Rescue Optimization (SARO) algorithm is introduced into the parameter estimation problem of system errors. The SARO algorithm is an optimization algorithm inspired by human search and rescue behavior. It simulates the process of humans collaboratively searching for targets in complex environments to achieve global optimization of multi-parameter, nonlinear problems.
[0058] To address the technical problem that existing technologies cannot comprehensively identify multiple error parameters in the system and efficiently correct the pointing error of the rotating dual-prism system, the Search and Rescue Optimization (SARO) algorithm has the advantage of good global convergence. This method accurately and stably identifies the camera pose error parameters, providing important technical support for the stable operation of the rotating dual-prism system in complex applications.
[0059] The rotating dual-prism system includes a CMOS camera for extracting pixel position information of the target to be tracked in the image and two prisms that can be rotated independently to ensure the correct angular position. The two circular wedge prisms are used to deflect the light beam (or visual axis) to form a larger detection range, which is also the object controlled by this method.
[0060] The arrangement order of the prism refractive surfaces is flat-wedge-wedge-flat. The two prisms rotate independently. By coordinating and controlling the rotation position of the two prisms, the direction of the CMOS camera's visual axis in space can be changed, thereby controlling the direction of the CMOS camera's field of view so that the target is locked in the center of the image plane for imaging; Figure 1 As shown, the CMOS camera rectangular coordinate system and the world rectangular coordinate system are established, where the coordinate origins and are located at the optical center of the camera lens and the intersection of the incident plane of the prism Π1 and the optical axis of the prism, respectively;
[0061] In the rotating biprism system, the incident light vector is refracted by the biprism system. According to Snell's refraction law and the camera pinhole imaging model, the ideal incident light vector corresponding to each pixel in the camera image can be obtained:
[0062]
[0063] The incident light passing through any pixel position in the CMOS camera imaging plane, i.e., the target imaging position, intersects with the plane of prism π1. The spatial coordinates of the intersection points on each refractive surface can be obtained by combining the size, spacing, and shape information of the rotating dual prism system components.
[0064] This process is divided into i+1 stages, (x0, y0, z0) is the position of the optical center of the camera lens; i=0 is the reverse light beam incident stage, (x1, y1, z1) is the position where the light beam intersects the left plane of prism ∏1; i=1 is the refraction stage on the left plane of prism ∏1, (x2, y2, z2) is the position where the light beam intersects the right wedge surface of prism ∏1; i=2 is the refraction stage on the right wedge surface of prism ∏1, (x3, y3, z3) is the position where the light beam intersects the left plane of prism ∏2; i=3 is the refraction stage on the left wedge surface of prism ∏2, (x4, y4, z4) is the position where the light beam intersects the right plane of prism ∏2; i=4 is the refraction stage on the right plane of prism ∏2, (x rp ,y rp ,zrp ) is the position where the beam intersects the screen:
[0065]
[0066] where N i is the unit normal vector of the current refraction surface, S i is the incident light vector, O i is a point on the refractive surface, (x i ,y i ,z i ) is a point where the incident light passes through, (x i+1 ,y i+1 ,z i+1 ) is the intersection of the incident light and the refractive surface; at a specific screen distance z rp At this point, the actual spatial position of the final pointing point (x rp ,y rp ,z rp ), this process is the mapping process of g(·); however, due to the assembly error of the rotating biprism system, the final pointing point will be offset in the XOY plane, resulting in a pointing error;
[0067] Since the CMOS camera detector has posture errors during the actual assembly process, the main axis of the CMOS camera will deviate from the system optical axis. The following relationship is used to obtain the actual reverse incident light vector:
[0068]
[0069] p' rp =g(φ,θ1,θ2,Δp x ,Δp y )
[0070] p rp =g([0],θ1,θ2,Δp x ,Δp y )
[0071]
[0072] where p rp is the ideal pointing point position of the rotating bi-prism system, φ is the CMOS camera pose error caused by the actual assembly, and p′ rp is the actual pointing point position of the rotating biprism system, is the rotation matrix, which is represented by the Euler angle (α Z ,β Y ,γ X )Sure;
[0073] According to the aforementioned equation for calculating the beam pointing point position, the deviation between the theoretical pointing point and the actual pointing point of the rotating biprism system can be expressed as:
[0074] (Δx, Δy)=g(φ,θ1,θ2,Δp x ,Δp y )-g(φ0,θ1,θ2,Δp x ,Δp y )
[0075] in is the pose error parameter, φ0=[0,0,0,0,0,0], Euler angle representing the misalignment posture, ε X , ε Y , ε Z Indicates the error value of misalignment and translation, Δp x ,Δp y represents the pixel value of the target off-center in the CMOS camera image, θ1 and θ2 represent the angular positions of prism Π1 and prism ∏2, respectively, and g(·) represents the pointing point position determined by the rotating dual-prism system in a certain state;
[0076] The pointing error of the rotating dual prism system is mainly caused by the misalignment angle error of the CMOS camera main axis. In order to make the purpose, technical solution and advantages of the present invention more clear, the following is combined with specific embodiments and with reference to the attached drawings. Figures 1 to 4 , the present invention is further described in detail; the search and rescue optimization (SARO) algorithm is introduced into the parameter estimation of the rotating bi-prism system error, which specifically includes the following steps:
[0077] Step S1: Construct the solution form φ in the search and rescue optimization (SARO) algorithm i , randomly initialized in 2N solutions are evenly distributed within the range, and the fitness of all solutions is evaluated by fit;
[0078]
[0079] Step S2: Sort the solutions in descending order of fitness, and construct a clue matrix C. Use the first N solutions after sorting for X, and the remaining N solutions for M. In the D-dimensional search space, there are multiple search agents. The total number of iterations of the search process is N. The current position of each agent is a potential solution to the corresponding optimization problem. The search and rescue process of the agent is divided into two stages: the social stage and the individual stage.
[0080] At the same time, the algorithm hyperparameters (SE=0.5, MU=15) are defined. SE is used to control the interaction between group members. The larger the value, the faster the convergence speed, but also reduces the global search ability of the algorithm. MU is used to control the depth of the search. The larger the MU value, the more times the search will be conducted near the current solution position. USN is also set. i =0, where i=1,…,N;
[0081]
[0082] Step S3: In the social stage, calculate the search direction SD i , where k is chosen randomly;
[0083] SD i =(X i -C k ),k≠i
[0084] Step S4: Generate a new solution when r2<SE or j=j rand When the i-th agent's new solution X′ i,j Calculate using the following formula; otherwise, keep it unchanged and use the boundary parameters and Control the scope of the solution;
[0085]
[0086] In step S4, r1 is a random number uniformly distributed in the range of [-1, 1]; r2 is a random number uniformly distributed in the range of [0, 1], which is different in each dimension, but r1 is fixed for all dimensions; f(C k ) and f(X i ) are respectively to solve C k and X i The objective function value of SE is a hyperparameter between 0 and 1.
[0087] Step S5: Update matrices M, X, USN i and C;
[0088]
[0089] Among them, USN i represents the number of times the i-th agent fails to find a better clue;
[0090] Step S6: At the individual stage, according to formula X i ′=X i +r3×(C k -C m ), i≠k≠m, and obtain the new position X′ of the i-th agent.i , and perform boundary control: where k and m are random integers between 1 and 2N, and r3 is a uniformly distributed random number between 0 and 1;
[0091] Step S7: Update matrices M, X, USN i ; When an agent's USN i When the number of unsuccessful searches is greater than the maximum number of unsuccessful searches (MU), it will enter a random position in the search space according to the following formula and set the USN of the agent to i Reset to 0:
[0092]
[0093] Among them, r4 is a uniformly distributed random number ranging between 0 and 1;
[0094] Step S8: Repeat steps S2 to S7. When the stopping rule is met: the number of iterations meets the requirement or the optimal solution no longer updates, obtain the optimal fitness value X in the final X matrix. best As the actual error parameter of the calibrated CMOS camera; after multiple adjustments, when the total number of iterations N = 100, the search process has converged stably and the required iteration time is relatively short;
[0095] Step 9: Test the calibrated camera axis error parameters. A series of prism preset states are selected as input conditions, where K is 4, T is 20, and the selected preset calibration states (θ1, θ2), (p x ,p y ) as shown in Table 1, and the pointing position data (x, y) under the corresponding state is collected as shown in Table 2; the actual parameters of the camera main axis calculated and calibrated based on the method proposed in the present invention are:
[0096]
[0097] Table 1 Calibration state selected in the example (K=4, T=20)
[0098] k=1 k=2 k=3 k=4 1 (0,0),(100,100) (0,0),(-100,100) (0,0),(-100,-100) (0,0),(100,-100) 2 (45,45),(100,100) (45,45),(-100,100) (45,45),(-100,-100) (45,45),(100,-100) 3 (90,90),(100,100) (90,90),(-100,100) (90,90),(-100,-100) (90,90),(100,-100) 4 (135,145),(100,100) (135,145),(-100,100) (135,145),(-100,-100) (135,145),(100,-100) 5 (180,180),(100,100) (180,180),(-100,100) (180,180),(-100,-100) (180,180),(100,-100) 6 (225,225),(100,100) (225,225),(-100,100) (225,225),(-100,-100) (225,225),(100,-100) 7 (270,270),(100,100) (270,270),(-100,100) (270,270),(-100,-100) (270,270),(100,-100) 8 (315,315),(100,100) (315,315),(-100,100) (315,315),(-100,-100) (315,315),(100,-100) 9 (0,90),(100,100) (0,90),(-100,100) (0,90),(-100,-100) (0,90),(100,-100) 10 (90,180),(100,100) (90,180),(-100,100) (90,180),(-100,-100) (90,180),(100,-100) 11 (180,270),(100,100) (180,270),(-100,100) (180,270),(-100,-100) (180,270),(100,-100) 12 (270,0),(100,100) (270,0),(-100,100) (270,0),(-100,-100) (270,0),(100,-100) 13 (90,0),(100,100) (90,0),(-100,100) (90,0),(-100,-100) (90,0),(100,-100) 14 (180,90),(100,100) (180,90),(-100,100) (180,90),(-100,-100) (180,90),(100,-100) 15 (270,180),(100,100) (270,180),(-100,100) (270,180),(-100,-100) (270,180),(100,-100) 16 (0,270),(100,100) (0,270),(-100,100) (0,270),(-100,-100) (0,270),(100,-100) 17 (0,180),(100,100) (0,180),(-100,100) (0,180),(-100,-100) (0,180),(100,-100) 18 (90,270),(100,100) (90,270),(-100,100) (90,270),(-100,-100) (90,270),(100,-100) 19 (180,0),(100,100) (180,0),(-100,100) (180,0),(-100,-100) (180,0),(100,-100) 20 (270,90),(100,100) (270,90),(-100,100) (270,90),(-100,-100) (270,90),(100,-100)
[0099] Table 2 Corresponding pointing position data under calibration state (z=306.4)
[0100] k=1 k=2 k=3 k=4 1 (54.3,-9.0) (41.6,-9.0) (41.8,-21.2) (54.3,-21.3) 2 (40.9,22.3) (28.4,22.1) (28.3,9.8) (40.8,10.0) 3 (9.4,34.9) (-2.8,34.9) (-2.8,22.3) (9.5,22.3) 4 (-21.7,21.8) (-34.0,21.9) (-33.9,9.6) (-21.4,9.5) 5 (-34.5,-9.4) (-47.0,-9.5) (-47.0,-21.8) (-34.5,-21.7) 6 (-21.5,-40.7) (-33.9,-40.9) (-34.1,-53.1) (-21.8,-53.0) 7 (9.9,-53.9) (-2.3,-53.9) (-2.3,-66.9) (10.0,-66.9) 8 (41.3,-40.7) (29.0,-40.5) (29.2,-52.9) (41.6,-53.0) 9 (35.0,10.8) (22.5,10.5) (22.7,-1.8) (35.1,-1.5) 10 (-10.1,15.9) (-22.2,15.9) (-22.2,3.8) (-10.0,3.8) 11 (-15.7,-28.9) (-27.9,-29.0) (-27.9,-41.2) (-15.6,-41.1) 12 (29.6,-34.8) (17.2,-34.8) (17.4,-47.0) (29.8,-47.0) 13 (28.2,15.2) (16.0,15.2) (16.0,3.0) (28.2,3.1) 14 (-14.9,9.5) (-27.1,9.5) (-27.1,-2.8) (-14.9,-2.8) 15 (-9.1,-33.9) (-21.3,-33.9) (-21.5,-46.2) (-9.1,-46.1) 16 (34.2,-28.0) (21.9,-27.9) (22.0,-40.1) (34.5,-40.2) 17 (15.2,-8.2) (3.1,-8.2) (3.1,-20.3) (15.3,-20.3) 18 (8.8,-3.7) (-3.4,-3.8) (-3.4,-15.9) (8.8,-15.9) 19 (4.0,-10.0) (-8.2,-10.0) (-8.2,-22.2) (4.0,-22.2) 20 (10.4,-14.9) (-1.8,-14.9) (-1.7,-27.1) (10.5,-27.1)
[0101] In this example, we selected all 193 positions that can be reverse-solved under both ideal and non-ideal assembly conditions as the test set. In the actual device, we used the CMOS camera spindle parameters under ideal assembly conditions to solve the corresponding prism angle solution. We also used the calibrated CMOS camera spindle parameters to solve the corresponding prism angle solution. We calculated the deviation of the two relative to the target pointing under actual execution and verified the calibrated error parameters.
[0102] To evaluate the pointing error of the actual device, after the prism is in place, the distance between the target point and the pointing point corresponding to the image center is defined as the pointing error Δe:
[0103]
[0104] The pointing error distribution before and after correction is as follows: Figure 3 and Figure 4 As shown in Table 3, several evaluation indicators are given, including the average pointing error Δ mean , maximum pointing error Δ max , root mean square error Δ rsme .
[0105] Table 3 Comparison of pointing accuracy indicators before and after correction
[0106]
[0107]
Claims
1. A method for correcting pointing errors of rotating bi-prisms based on a search and rescue optimization algorithm, characterized by: This method uses a rotating bi-prism system and introduces the Search and Rescue Optimization (SARO) algorithm into the parameter estimation of the rotating bi-prism system error. The fitness function of the search and rescue optimization is constructed by the deviation between the actual pointing position and the theoretical pointing position. An assembly error parameter estimation model is proposed and applied to pointing error correction.
2. The method for correcting the pointing error of a rotating bi-prism based on a search and rescue optimization algorithm according to claim 1, characterized in that: The rotating dual-prism system includes a CMOS camera for extracting pixel position information of a target to be tracked in an image and two prisms capable of independent rotation. The prism refractive surfaces are arranged in a flat-wedge-wedge-flat order. The CMOS camera extracts the pixel position information of the target to be tracked in the image and returns it as feedback to an embedded drive controller. The embedded drive controller receives the feedback information from the CMOS camera and the current angle information of the prisms, and calculates the angle instructions of the two prisms according to a pointing error correction method based on a search and rescue optimization algorithm.
3. The method for correcting the pointing error of a rotating bi-prism based on a search and rescue optimization algorithm according to claim 2, characterized in that: In the rotating biprism system, the incident light vector is refracted by the biprism system. According to Snell's refraction law and the camera pinhole imaging model, the ideal incident light vector corresponding to each pixel in the camera image can be obtained: The incident light passing through any pixel position in the CMOS camera imaging plane, i.e., the target imaging position, intersects with the plane of prism π1. The spatial coordinates of the intersection points on each refractive surface can be obtained by combining the size, spacing, and shape information of the rotating dual prism system components. This process is divided into i+1 stages, (x0, y0, z0) is the position of the optical center of the camera lens; i=0 is the reverse light beam incident stage, (x1, y1, z1) is the position where the light beam intersects with the left plane of prism Π1; i=1 is the refraction stage on the left plane of prism Π1, (x2, y2, z2) is the position where the light beam intersects with the right wedge surface of prism Π1; i=2 is the refraction stage on the right wedge surface of prism Π1, (x3, y3, z3) is the position where the light beam intersects with the left plane of prism Π2; i=3 is the refraction stage on the left wedge surface of prism ∏2, (x4, y4, z4) is the position where the light beam intersects with the right plane of prism ∏2; i=4 is the refraction stage on the right plane of prism ∏2, (x rp ,y rp ,z rp ) is the position where the beam intersects the screen: where N i is the unit normal vector of the current refraction surface, S i is the incident light vector, O i is a point on the refractive surface, (x i ,y i ,z i ) is a point where the incident light passes through, (x i+1 ,y i+1 ,z i+1 ) is the intersection of the incident light and the refractive surface; at a specific screen distance z rp At this point, the actual spatial position of the final pointing point (x rp ,y rp ,z rp ), this process is the mapping process of g(·); The actual reverse incident ray vector is obtained using the following relationship: p' rp =g(φ,θ1,θ2,Δp x ,Δp y ) p rp =g([0],θ1,θ2,Δp x ,Δp y ) where p rp is the ideal pointing point position of the rotating bi-prism system, φ is the CMOS camera pose error caused by the actual assembly, and p′ rp is the actual pointing point position of the rotating biprism system, is the rotation matrix, which is represented by the Euler angle (α Z ,β Y ,γ X )Sure; According to the aforementioned equation for calculating the beam pointing point position, the deviation between the theoretical pointing point and the actual pointing point of the rotating biprism system can be expressed as: (Δx,Δy)=g(φ,θ1,θ2,Δp x ,Δp y )-g(φ0,θ1,θ2,Δp x ,Δp y ) in is the pose error parameter, φ0=[0,0,0,0,0,0], Euler angle representing the misalignment posture, ε X , ε Y , ε Z Indicates the error value of misalignment and translation, Δp x ,Δp y represents the pixel value of the target off-center in the CMOS camera image, θ1 and θ2 represent the angular positions of prism Π1 and prism Π2, respectively, and g(·) represents the pointing point position determined by the rotating dual-prism system in a certain state.
4. The method for correcting the pointing error of a rotating bi-prism based on a search and rescue optimization algorithm according to claim 3, wherein: The search and rescue optimization (SARO) algorithm is introduced into the parameter estimation of the rotating bi-prism system error, which specifically includes the following steps: Step S1: Construct the solution form φ in the search and rescue optimization (SARO) algorithm i , randomly initialized in 2N solutions are evenly distributed within the range, and the fitness of all solutions is evaluated by fit; Step S2: Sort the solutions in descending order of fitness, and construct a clue matrix C. Use the first N solutions after sorting for X, and the remaining N solutions for M. In the D-dimensional search space, there are multiple search agents. The total number of iterations of the search process is N. The current position of each agent is a potential solution to the corresponding optimization problem. The search and rescue process of the agent is divided into two stages: the social stage and the individual stage. Step S3: In the social stage, calculate the search direction SD i , where k is chosen randomly; Step S4: Generate a new solution when r2<SE or j=j rand When the i-th agent's new solution X′ i,j Calculate using the following formula; otherwise, keep it unchanged and use the boundary parameters and Control the scope of the solution; Step S5: Update matrices M, X, USN i and C; Step S6: At the individual stage, according to formula X′ i =X i +r3×(C k -C m ), i≠k≠m, and obtain the new position X′ of the i-th agent. i , and perform border control: Step S7: Update matrices M, X, USN i ; Step S8: Repeat steps S2 to S7. When the stopping rule is met: the number of iterations meets the requirement or the optimal solution no longer updates, obtain the optimal fitness value X in the final X matrix. best As the actual error parameter of the calibrated CMOS camera.
5. The method for correcting the pointing error of a rotating bi-prism based on a search and rescue optimization algorithm according to claim 4, characterized in that: In step S2, the algorithm hyperparameters (SE=0.5, MU=15) are defined at the same time. SE is used to control the interaction between group members. The larger the value, the faster the convergence speed, but also reduces the global search ability of the algorithm. MU is used to control the depth of the search. The larger the MU value, the more times the search is performed near the current solution position. USN is also set. i =0, where i=1,…,N; 6. The method for correcting the pointing error of a rotating bi-prism based on a search and rescue optimization algorithm according to claim 4, characterized in that: In the step S3: SD i =(X i -C k ),k≠i.
7. The method for correcting the pointing error of a rotating bi-prism based on a search and rescue optimization algorithm according to claim 4, characterized in that: In step S4, r1 is a random number uniformly distributed in the range of [-1, 1]; r2 is a random number uniformly distributed in the range of [0, 1], which is different in each dimension, but r1 is fixed for all dimensions; f(C k ) and f(X i ) are respectively to solve C k and X i The objective function value of ; SE is a hyperparameter between 0 and 1.
8. The method for correcting the pointing error of a rotating bi-prism based on a search and rescue optimization algorithm according to claim 4, characterized in that: In the step S5: Among them, USN i represents the number of times the i-th agent fails to find a better clue.
9. The method for correcting the pointing error of a rotating bi-prism based on a search and rescue optimization algorithm according to claim 4, characterized in that: In step S6, k and m are random integers with values between 1 and 2N, and r3 is a uniformly distributed random number with values between 0 and 1.
10. The method for correcting the pointing error of a rotating bi-prism based on a search and rescue optimization algorithm according to claim 4, characterized in that: In step S7, when the USN of a certain agent i When the number of unsuccessful searches is greater than the maximum number of unsuccessful searches (MU), it will enter a random position in the search space according to the following formula and set the USN of the agent to i Reset to 0: Here, r4 is a uniformly distributed random number ranging between 0 and 1.
Citation Information
Patent Citations
Rotating biprism pointing correction method based on particle swarm optimization
CN113703490A
Rotation biprism pointing correction method based on mouse swarm optimization algorithm
CN117270230A
Error correction method used for line structured light 3D camera, and apparatus
WO2024021654A1