A method for correcting pointing error of rotating dual-prism based on search and rescue optimization algorithm
By introducing the Search and Rescue Optimization Algorithm (SARO) into the rotating double prism system, a fitness function and assembly error parameter estimation model were constructed, which solved the problem of insufficient identification of multiple error parameters, achieved efficient pointing error correction, and significantly improved the pointing accuracy of the system.
Patent Information
- Application Number
- CN202510510280.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-23
- Publication Date
- 2026-02-03
- Estimated Expiration
- 2045-04-23
AI Technical Summary
Existing technologies cannot simultaneously identify multiple error parameters in a rotating biprism system, causing the beam propagation path to deviate from the theoretical trajectory, resulting in scanning domain distortion and loss of field of view coverage.
The Search and Rescue Optimization Algorithm (SARO) is introduced into the rotating biprism system. By constructing a fitness function and an assembly error parameter estimation model, the pointing error of the rotating biprism system is corrected. The combination of a CMOS camera and an independent rotating prism is used to accurately calculate the prism angle command.
It significantly improves the open-loop pointing accuracy of the rotating double prism system, reducing the maximum pointing error by 81.3%, the average pointing error by 89.2%, and the root mean square error by 87.3%, thereby improving the stability and accuracy of the system.
Smart Images

Figure CN120449654B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to an error calibration method, more particularly to a pointing error correction method for a rotating double prism based on a search and rescue optimization algorithm. BACKGROUND
[0002] The rotating double prism system (RDPS) is a kind of refractive beam control device based on the coaxial rotation of double wedge prisms. It has been widely used in free space communication, photoelectric tracking, laser radar and other fields due to its compact structure, low motion inertia and excellent scanning continuity.
[0003] In engineering practice, the rotating double prism pointing control system is composed of a camera detector, Risley prisms, bearings, DC motors and other mechanisms. The core mechanism of the system is to realize the continuous deflection of the light beam by rotating two prisms independently. However, the pointing accuracy of the system is easily affected by manufacturing tolerances and assembly errors. Specifically, the coupling effect of multiple error sources such as prism wedge angle error, refractive index error, optical axis misalignment, bearing tilt and rotation angle deviation causes the light beam propagation path to deviate from the theoretical trajectory, which in turn leads to problems such as scanning domain distortion, field of view coverage loss, etc.
[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.) proposes a method for describing pointing errors based on graphics. The errors of prism vertex angle, prism thickness, prism separation, light height through prism and prism orientation angle are equivalent to a comprehensive error for correction and compensation. However, the influence of each error source is not mentioned, and the solution obtained by the paraxial approximation method deviates from the actual situation when the deflection angle is large.
[0005] The existing technology (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.) proposes a correction method based on the coordinate transformation of the pointing field. This method requires pre-establishing a table to determine the circular trajectory of the target pointing position. It has a good effect on the error correction of the pointing position with a small deflection angle, but when the system error is large, the pointing position with a large deflection angle has a large error.
[0006] In summary, existing technical solutions cannot comprehensively identify multiple error parameters in the system and efficiently correct the pointing error of the rotating double prism system. Summary of the Invention
[0007] The purpose of this invention is to provide a method for correcting the pointing error of a rotating biprism based on a search and rescue optimization algorithm. This method can take into account the comprehensive identification of multiple error parameters in the system and efficiently correct the pointing error of the rotating biprism system.
[0008] The objective of this invention is achieved through the following technical solution:
[0009] A method for correcting the pointing error of a rotating biprism based on a search and rescue optimization algorithm is proposed. This method uses a rotating biprism system and introduces the search and rescue optimization (SARO) algorithm into the parameter estimation of the error of the rotating biprism system. 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 the pointing error correction.
[0010] The rotating dual-prism system includes a CMOS camera for extracting the position information of the target pixel to be tracked in the image and two prisms that can rotate independently. The prism refractive surfaces are arranged in the order of flat-wedge-wedge-flat. After the CMOS camera extracts the position information of the target pixel to be tracked in the image, it sends the information back to the embedded drive controller as feedback. The embedded drive controller receives the feedback information from the CMOS camera and the current angle information of the prisms, and calculates the angle command of the two prisms according to the pointing error correction method based on the search and rescue optimization algorithm.
[0011] In the rotating biprism system, the incident ray vector is refracted by the biprism system. According to Snell's law of refraction and the pinhole camera imaging model, the ideal incident ray vector corresponding to each pixel in the camera image can be determined as follows:
[0012]
[0013] The incident light rays passing through any pixel position in the imaging plane of the CMOS camera, i.e. the target imaging position, intersect with the plane of prism Π1. By combining the size, spacing, and shape information of the rotating double prism system components, the spatial coordinates of the intersection points on each refractive surface can be obtained.
[0014] This process is divided into i+1 stages, where (x0, y0, z0) is the position of the optical center of the camera lens; i=0 is the stage of reverse beam incidence, where (x1, y1, z1) is the position where the beam intersects with the left plane of prism Π1; i=1 is the stage of refraction on the left plane of prism Π1, where (x2, y2, z2) is the position where the beam intersects with the right wedge face of prism Π1; i=2 is the stage of refraction on the right wedge face of prism Π1, where (x3, y3, z3) is the position where the beam intersects with the left plane of prism Ώ2; i=3 is the stage of refraction on the left wedge face of prism Π2, where (x4, y4, z4) is the position where the beam intersects with the right plane of prism Π2; i=4 is the stage of refraction on the right plane of prism Π2, where (x... rp ,y rp ,z rp () is the point where the light beam intersects with the screen:
[0015]
[0016] Where N i S is the unit normal vector of the current refraction surface. i It is the incident ray vector, O i It is a point on the refracting surface, (x i ,y i ,z i (x) is a point through which the incident ray passes, and (x) i+1 ,y i+1 ,z i+1 () is the intersection of the incident ray and the refracting surface; at a specific screen distance z rp At this point, the actual spatial location (x) of the final pointing point is obtained. rp ,y rp ,z rp This process is the mapping process of g(·);
[0017] The actual reverse incident ray vector can be 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 The ideal pointing point position of the rotating double prism system is φ, which is the pose error of the CMOS camera caused by actual assembly, and p′ is the position of the ideal pointing point of the rotating double prism system. rp It is the actual pointing position of the rotating biprism system. For rotation matrix, defined by Euler angles (α) Z ,β Y ,γ X )Sure;
[0023] Based on 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 double prism 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 Let φ0 be the pose error parameter, and φ0 = [0,0,0,0,0,0]. Euler angles representing misaligned orientations, ε X ε Y ε Z Δp represents the error value of the misalignment translation. x Δp y θ1 and θ2 represent the pixel values of the target off-center in the CMOS camera image, respectively, and g(·) represents the angular positions of prisms Π1 and Π2.
[0026] The Search and Rescue Optimization (SARO) algorithm is introduced into the parameter estimation of the rotating biprism system error, specifically including the following steps:
[0027] Step S1: Construct the form φ of the solution in the Search and Rescue Optimization (SARO) algorithm. i Random initialization in 2N solutions are uniformly distributed within the range, and the fitness value of all solutions is evaluated by using fit;
[0028]
[0029] Step S2: Sort the solutions in descending order of fitness value, and construct the clue matrix C. Use the first half of the N solutions after sorting for X, and use the remaining N solutions for M. In the D-dimensional search space, there are multiple search agents. The total number of iterations in 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 agents is divided into two stages: the social stage and the individual stage.
[0030] Simultaneously, algorithm hyperparameters (SE = 0.5, MU = 15) are defined. SE is used to control the interaction among group members; a larger value results in faster convergence but also reduces the algorithm's global search capability. MU is used to control the search depth; a larger MU value results in more searches near the current solution's location. USN is also set. i =0, where i = 1, ..., N;
[0031]
[0032] Step S3: In the social phase, calculate the search direction SD i , where k is randomly selected;
[0033] SD i =(X i -C k ),k≠i
[0034] Step S4: Generate a new solution when r2 < SE or j = j rand At that time, the new solution X′ of the i-th agent i,j Calculate using the following formula; otherwise, leave it unchanged while utilizing boundary parameters. and Control the range of solutions;
[0035]
[0036] In step S4, r1 is a random number uniformly distributed in the range [-1, 1]; r2 is a random number uniformly distributed in the range [0, 1], which is different in each dimension, but r1 is fixed for all dimensions; f(C k ) and f(X i These are solutions to C. k and X i The objective function value; SE is a hyperparameter between 0 and 1;
[0037] Step S5: Update matrices M, X, and USN i and C;
[0038]
[0039]
[0040] USN i This represents the number of times the i-th agent failed to find a better clue;
[0041] Step S6: In the individual stage, according to formula X i ′=X i +r3×(C k -C m Guided by the principle that i ≠ k ≠ m, the new position X′ of the i-th agent is obtained. 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, and USN i When a certain agent's USN i When the number of unsuccessful searches exceeds 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 agent's USN. i Reset to 0:
[0043]
[0044] Where r4 is a uniformly distributed random number, ranging from 0 to 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 changes, obtain the optimal fitness value X in the final X matrix. best This serves as the actual error parameter for the calibrated CMOS camera.
[0046] The beneficial effects of this invention are as follows:
[0047] This method can significantly improve the open-loop pointing accuracy of a rotating biprism system. The improvement can reach up to 89.2%, depending on the assembly deviation of the rotating biprism system. Compared to 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. Specifically, it combines the multi-parameter error coupling characteristics of the rotating biprism system and designs the fitness function of the SARO algorithm to calibrate the CMOS camera's spindle error parameters and correct the pointing error.
[0048] This method for correcting the pointing error of a rotating biprism based on a search and rescue optimization algorithm is physically interpretable and can quickly adjust error convergence-related parameters for different biprism systems. Simulation experiments demonstrate that the proposed optimization method can accurately identify the actual pose of the CMOS camera's main axis, exhibiting stable and reliable parameter identification performance, significantly improving pointing error, and enhancing the open-loop pointing accuracy of the biprism system. Attached Figure Description
[0049] The present invention will now be described in further detail with reference to the accompanying drawings and specific implementation methods.
[0050] Figure 1 This is a schematic diagram of the rotating double prism system of the present invention;
[0051] Figure 2 This is a schematic diagram of the optical path of the rotating double prism of the present invention;
[0052] Figure 3 This is a schematic diagram of the pointing point before correction according to the present invention;
[0053] Figure 4 This is a schematic diagram of the pointing point after correction according to the present invention. Detailed Implementation
[0054] The present invention will now be described in further detail with reference to the accompanying drawings.
[0055] like Figures 1 to 4 As shown, in order to achieve the technical effect of "comprehensive identification of multiple error parameters in the system and efficient correction of the pointing error of the rotating biprism system", the steps and functions of a method for correcting the pointing error of a rotating biprism based on a search and rescue optimization algorithm are explained in detail below.
[0056] A method for correcting the pointing error of a rotating biprism based on a search and rescue optimization algorithm is proposed. This method uses a rotating biprism system and introduces the search and rescue optimization (SARO) algorithm into the parameter estimation of the error of the rotating biprism system. 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 the pointing error correction.
[0057] This paper introduces the Search and Rescue Optimization (SARO) algorithm into the parameter estimation problem of systematic errors. SARO 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] Addressing the technical problem that existing technologies cannot simultaneously consider the comprehensive identification of multiple error parameters in a system and efficiently correct the pointing error of a rotating biprism system, the Search and Rescue Optimization (SARO) algorithm has the advantage of good global convergence and accurately and stably identifies camera pose error parameters, providing important technical support for the stable operation of rotating biprism systems in complex applications.
[0059] The rotating dual-prism system includes a CMOS camera for extracting the position information of the target pixel in the image and two prisms that can rotate independently. The prisms can rotate to ensure the correct angle position. The two circular wedge prisms are used to deflect the beam (or line of sight) to form a larger detection range, and are also the objects controlled by this method.
[0060] The prism refractive surfaces are arranged in a flat-wedge-wedge-flat configuration. The two prisms rotate independently, and by coordinating and controlling their rotation positions, the orientation of the CMOS camera's field of view in space can be changed, thereby controlling the orientation of the CMOS camera's field of view to lock the target in the center of the image plane for imaging; for example... Figure 1 As shown, a CMOS camera rectangular coordinate system and a world rectangular coordinate system were established, where the origin and the point of intersection of the incident plane of prism Π1 and the optical axis of the prism are located at the optical center of the camera lens and the point of intersection of the incident plane of prism Π1 and the optical axis of the prism, respectively.
[0061] In the rotating biprism system, the incident ray vector is refracted by the biprism system. According to Snell's law of refraction and the pinhole camera imaging model, the ideal incident ray vector corresponding to each pixel in the camera image can be determined as follows:
[0062]
[0063] The incident light rays passing through any pixel position in the imaging plane of the CMOS camera, i.e. the target imaging position, intersect with the plane of prism Π1. By combining the size, spacing, and shape information of the rotating double prism system components, the spatial coordinates of the intersection points on each refractive surface can be obtained.
[0064] This process is divided into i+1 stages, where (x0, y0, z0) is the position of the optical center of the camera lens; i=0 is the stage of reverse beam incidence, where (x1, y1, z1) is the position where the beam intersects with the left plane of prism π1; i=1 is the stage of refraction on the left plane of prism π1, where (x2, y2, z2) is the position where the beam intersects with the right wedge face of prism π1; i=2 is the stage of refraction on the right wedge face of prism π1, where (x3, y3, z3) is the position where the beam intersects with the left plane of prism Π2; i=3 is the stage of refraction on the left wedge face of prism π2, where (x4, y4, z4) is the position where the beam intersects with the right plane of prism π2; i=4 is the stage of refraction on the right plane of prism Π2, where (x... rp ,y rp ,zrp () is the point where the light beam intersects with the screen:
[0065]
[0066] Where N i S is the unit normal vector of the current refraction surface. i It is the incident ray vector, O i It is a point on the refracting surface, (x i ,y i ,z i (x) is a point through which the incident ray passes, and (x) i+1 ,y i+1 ,z i+1 () is the intersection of the incident ray and the refracting surface; at a specific screen distance z rp At this point, the actual spatial location (x) of the final pointing point is obtained. rp ,y rp ,z rp This process is the mapping process of g(·); however, due to the assembly error of the rotating double prism system, the final pointing point will be offset in the XOY plane, resulting in pointing error;
[0067] Due to pose errors in the actual assembly process of the CMOS camera detector, the CMOS camera's main axis will deviate from the system's optical axis. The actual reverse incident ray vector can be obtained using the following relationship:
[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 The ideal pointing point position of the rotating double prism system is φ, which is the pose error of the CMOS camera caused by actual assembly, and p′ is the position of the ideal pointing point of the rotating double prism system. rp It is the actual pointing position of the rotating biprism system. For rotation matrix, defined by Euler angles (α) Z ,β Y ,γ X )Sure;
[0073] Based on 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 double prism 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 Let φ0 be the pose error parameter, and φ0 = [0,0,0,0,0,0]. Euler angles representing misaligned orientations, ε X ε Y ε Z Δp represents the error value of the misalignment translation. x Δp y θ1 and θ2 represent the pixel values of the target off-center in the CMOS camera image, respectively, and g(·) represents the angular positions of prism Π1 and prism ∏2.
[0076] The pointing error of the rotating double prism system is mainly caused by the misalignment angle error of the CMOS camera's main axis. To make the objectives, technical solutions, and advantages of this invention clearer, specific embodiments are described below, with reference to the appendix. Figures 1 to 4 The present invention will be further described in detail below; the introduction of the Search and Rescue Optimization (SARO) algorithm into the parameter estimation of the rotating biprism system error specifically includes the following steps:
[0077] Step S1: Construct the form φ of the solution in the Search and Rescue Optimization (SARO) algorithm. i Random initialization in 2N solutions are uniformly distributed within the range, and the fitness value of all solutions is evaluated by using fit;
[0078]
[0079] Step S2: Sort the solutions in descending order of fitness value, and construct the clue matrix C. Use the first half of the N solutions after sorting for X, and use the remaining N solutions for M. In the D-dimensional search space, there are multiple search agents. The total number of iterations in 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 agents is divided into two stages: the social stage and the individual stage.
[0080] Simultaneously, algorithm hyperparameters (SE = 0.5, MU = 15) are defined. SE is used to control the interaction among group members; a larger value results in faster convergence but also reduces the algorithm's global search capability. MU is used to control the search depth; a larger MU value results in more searches near the current solution's location. USN is also set. i =0, where i = 1, ..., N;
[0081]
[0082] Step S3: In the social phase, calculate the search direction SD i , where k is randomly selected;
[0083] SD i =(X i -C k ),k≠i
[0084] Step S4: Generate a new solution when r2 < SE or j = j rand At that time, the new solution X′ of the i-th agent i,j Calculate using the following formula; otherwise, leave it unchanged while utilizing boundary parameters. and Control the range of solutions;
[0085]
[0086] In step S4, r1 is a random number uniformly distributed in the range [-1, 1]; r2 is a random number uniformly distributed in the range [0, 1], which is different in each dimension, but r1 is fixed for all dimensions; f(C k ) and f(X i These are solutions to C. k and X i The objective function value; SE is a hyperparameter between 0 and 1;
[0087] Step S5: Update matrices M, X, and USN i and C;
[0088]
[0089] USN i This represents the number of times the i-th agent failed to find a better clue;
[0090] Step S6: In the individual stage, according to formula X i ′=X i +r3×(C k -C m Guided by the principle that i ≠ k ≠ m, the new position X′ of the i-th agent is obtained.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, and USN i When a certain agent's USN i When the number of unsuccessful searches exceeds 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 agent's USN. i Reset to 0:
[0092]
[0093] Where r4 is a uniformly distributed random number, ranging from 0 to 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 changes, obtain the optimal fitness value X in the final X matrix. best As the actual error parameters of the calibrated CMOS camera; after multiple adjustments and experience, when the total number of iterations N=100, the search process has been stably converged, and the required iteration time is relatively short;
[0095] Step 9: Test the calibrated camera spindle error parameters. A series of prism preset states were selected as input conditions, where K is 4, T is 20, and the selected preset calibration states are (θ1, θ2), (p x ,p y As shown in Table 1, the pointing position data (x, y) under the corresponding state are collected as shown in Table 2; based on the method proposed in this invention, the actual parameters of the camera spindle are calculated and calibrated as follows:
[0096]
[0097] Table 1 shows the calibration states 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 shows the pointing position data under calibration conditions (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 position points that can be solved in reverse 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 for the corresponding prism angle solution, and used the calibrated CMOS camera spindle parameters to solve for the corresponding prism angle solution. We calculated the deviation of the two solutions relative to the target direction under actual execution to verify the calibrated error parameters.
[0102] To assess the pointing error of the actual equipment, after the prism is in position, 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, Table 3 provides several evaluation metrics, 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 the pointing error of a rotating double prism based on a search and rescue optimization algorithm, characterized in that: This method uses a rotating biprism system and introduces the SARO search and rescue optimization algorithm into the parameter estimation of the rotating biprism system error. It constructs a fitness function for search and rescue optimization by the deviation between the actual pointing position and the theoretical pointing position, proposes an assembly error parameter estimation model, and applies it to pointing error correction. The SARO algorithm optimized for search and rescue is introduced into the parameter estimation of the rotating double prism system error, specifically including the following steps: Step S1: Construct the form φ of the solution in the SARO algorithm for search and rescue optimization. i Random initialization in 2N solutions are uniformly distributed within the range, and the fitness value of all solutions is evaluated by using fit; Step S2: Sort the solutions in descending order of fitness value, and construct the clue matrix C. Use the first half of the N solutions after sorting for X, and use the remaining N solutions for M. In the D-dimensional search space, there are multiple search agents. The total number of iterations in 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 agents is divided into two stages: the social stage and the individual stage. Step S3: In the social phase, calculate the search direction SD i , where k is randomly selected; Step S4: Generate a new solution when r2 < SE or j = j rand At that time, the new solution X′ of the i-th agent i,j Calculate using the following formula; otherwise, leave it unchanged while utilizing boundary parameters. and Control the range of solutions; Step S5: Update matrices M, X, and USN i and C; Step S6: In the individual stage, according to formula X′ i =X i +r3×(C k -C m Guided by the principle that i ≠ k ≠ m, the new position X′ of the i-th agent is obtained. i And perform boundary control: Step S7: Update matrices M, X, and 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 changes, obtain the optimal fitness value X in the final X matrix. best This serves as the actual error parameter for the calibrated CMOS camera.
2. The method for correcting the pointing error of a rotating double 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 the position information of the target pixel in the image and two prisms that can rotate independently. The prism refractive surfaces are arranged in a flat-wedge-wedge-flat configuration. After the CMOS camera extracts the position information of the target pixel in the image, it sends the information back to the embedded driver controller as feedback. The embedded driver controller receives the feedback information from the CMOS camera and the current angle information of the prisms, and calculates the angle command of the two prisms according to the pointing error correction method based on the search and rescue optimization algorithm.
3. The method for correcting the pointing error of a rotating double prism based on a search and rescue optimization algorithm according to claim 2, characterized in that: In the rotating biprism system, the incident ray vector is refracted by the biprism system. According to Snell's law of refraction and the pinhole camera imaging model, the ideal incident ray vector corresponding to each pixel in the camera image can be determined as follows: The incident light rays passing through any pixel position in the imaging plane of the CMOS camera, i.e. the target imaging position, intersect with the plane of the prism ∏1. By combining the size, spacing, and shape information of the rotating double prism system components, the spatial coordinates of the intersection points on each refractive surface can be obtained. This process is divided into i+1 stages, where (x0, y0, z0) is the position of the optical center of the camera lens; i=0 is the stage of reverse beam incidence, where (x1, y1, z1) is the position where the beam intersects with the left plane of prism π1; i=1 is the stage of refraction on the left plane of prism π1, where (x2, y2, z2) is the position where the beam intersects with the right wedge face of prism π1; i=2 is the stage of refraction on the right wedge face of prism π1, where (x3, y3, z3) is the position where the beam intersects with the left plane of prism π2; i=3 is the stage of refraction on the left wedge face of prism π2, where (x4, y4, z4) is the position where the beam intersects with the right plane of prism π2; i=4 is the stage of refraction on the right plane of prism π2, where (x... rp ,y rp ,z rp () is the point where the light beam intersects with the screen: Where N i S is the unit normal vector of the current refraction surface. i It is the incident ray vector, O i It is a point on the refracting surface, (x i ,y i ,z i (x) is a point through which the incident ray passes, and (x) i+1 ,y i+1 ,z i+1 () is the intersection of the incident ray and the refracting surface; at a specific screen distance z rp At this point, the actual spatial location (x) of the final pointing point is obtained. rp ,y rp ,z rp This process is the mapping process of g(·); The actual reverse incident ray vector can be 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 The ideal pointing point position of the rotating double prism system is φ, which is the pose error of the CMOS camera caused by actual assembly, and p′ is the position of the ideal pointing point of the rotating double prism system. rp It is the actual pointing position of the rotating biprism system. For rotation matrix, defined by Euler angles (α) Z ,β Y ,γ X )Sure; Based on 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 double prism system can be expressed as: (Δx,Δy)=g(φ,θ1,θ2,Δp x ,Δp y )-g(φ0,θ1,θ2,Δp x ,Δp y ) in Let φ0 be the pose error parameter, and φ0 = [0,0,0,0,0,0]. Euler angles representing misaligned orientations, ε X ε Y ε Z Δp represents the error value of the misalignment translation. x Δp y θ1 and θ2 represent the pixel values of the target off-center in the CMOS camera image, respectively, and g(·) represents the angular positions of prisms Π1 and Π2.
4. The method for correcting the pointing error of a rotating double prism based on a search and rescue optimization algorithm according to claim 1, characterized in that: In step S2: Simultaneously define algorithm hyperparameters (SE = 0.5, MU = 15). SE is used to control the interaction between group members; a larger value results in faster convergence but also reduces the algorithm's global search capability. MU is used to control the search depth; a larger MU value results in more searches near the current solution's location. Also, set USN. i =0, where i = 1, ..., N; 5. The method for correcting the pointing error of a rotating double prism based on a search and rescue optimization algorithm according to claim 1, characterized in that: In step S3: SD i =(X i -C k ),k≠i.
6. The method for correcting the pointing error of a rotating biprism based on a search and rescue optimization algorithm according to claim 1, characterized in that: In step S4, r1 is a random number uniformly distributed in the range [-1, 1]; r2 is a random number uniformly distributed in the range [0, 1], which is different in each dimension, but r1 is fixed for all dimensions; f(C k ) and f(X i These are solutions to C. k and X i The objective function value; SE is a hyperparameter between 0 and 1.
7. The method for correcting the pointing error of a rotating double prism based on a search and rescue optimization algorithm according to claim 1, characterized in that: In step S5: USN i This represents the number of times the i-th agent failed to find a better clue.
8. The method for correcting the pointing error of a rotating double prism based on a search and rescue optimization algorithm according to claim 1, characterized in that: In step S6, k and m are random integers between 1 and 2N, while r3 is a uniformly distributed random number between 0 and 1.
9. The method for correcting the pointing error of a rotating double prism based on a search and rescue optimization algorithm according to claim 1, characterized in that: In step S7, when a certain agent's USN i When the number of unsuccessful searches exceeds 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 agent's USN. i Reset to 0: Here, r4 is a uniformly distributed random number, ranging from 0 to 1.
Citation Information
Patent Citations
Rotating biprism pointing correction method based on particle swarm optimization
CN113703490A
Error correction method used for line structured light 3D camera, and apparatus
WO2024021654A1