Visual calibration method for tool coordinates of movie and television mechanical arm
By using a non-contact geometric relationship derivation method, combined with the historical movement data of the film and television robotic arm and the calibration needle reference, high-precision calibration of the tool coordinates of the film and television robotic arm was achieved, solving the problem that traditional contact methods cannot be applied, and improving the safety and ease of operation of the film and television robotic arm.
Patent Information
- Application Number
- CN202511865328.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-11
- Publication Date
- 2026-02-24
AI Technical Summary
The calibration methods for tool coordinates in film and television robotic arms cannot achieve high-precision calibration without damaging the equipment, and traditional contact methods are not applicable to film and television robotic arms.
By visually measuring the positional relationship between the tool's coordinate points and the reference point of the robotic arm's end flange, and combining this with the robotic arm's historical movement data, a non-contact geometric relationship derivation method is used for calibration. This includes multiple movements and attitude adjustments. A calibration pin is used as a reference point for camera alignment, and the three-dimensional coordinate representation of the tool's coordinates is calculated.
It achieves non-contact, high-precision calibration of tool coordinates for film and television robotic arms, avoiding equipment damage, simplifying the operation process, reducing computational complexity, and is suitable for scenarios involving frequent movement and disassembly, meeting the rapid deployment needs of film and television shooting.
Smart Images

Figure CN121552359A_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of image recognition technology, and in particular relates to a method for coordinate visual calibration of film and television robotic arm tools. Background Technology
[0002] In industrial applications, the calibration of tool coordinates for robotic arms primarily involves using specialized measuring instruments to physically contact the end effector to acquire and calibrate parameters. While this method offers high accuracy in structured industrial environments, its reliance on contact, specific requirements for tool shape and material, and the need for space to deploy calibration equipment make it unsuitable for robotic arms used in film and television.
[0003] In film and television robotic arm applications, end effectors are typically devices containing precision optical components such as cameras and lenses. These devices have complex structures and fragile surfaces, making them susceptible to scratches or displacement from physical contact. For film and television robotic arms, the tool coordinate points are located inside the actual camera, making direct contact impossible. Therefore, industrial-grade contact calibration methods are difficult to apply directly to the film and television industry, resulting in a lack of a dedicated tool coordinate calibration solution that guarantees measurement accuracy while also ensuring equipment safety and ease of operation.
[0004] To address the aforementioned technical problems, this invention provides a method for coordinate visual calibration of film and television robotic arm tools. Summary of the Invention
[0005] The purpose of this invention is to provide a method for coordinate vision calibration of film and television robotic arm tools.
[0006] To address the aforementioned technical problems, this invention provides a method for coordinate vision calibration of film and television robotic arms, specifically comprising: The S1 operator visually determines the positional relationship between the tool coordinate point and the reference point of the end flange of the robotic arm in the video, and measures the projected length of each axis direction one by one to obtain the three-dimensional coordinate representation of the tool coordinate point in the end coordinate. The S2 robotic arm's execution end rotates to the position where the ABC coordinates are 0. The calibration needle is placed on the horizontal plane as a reference. The current robotic arm pose and the XYZ coordinates of the current posture are recorded as the starting posture for ABC calibration. Based on the robotic arm's historical movement distance and the matching of the ABC coordinates after calibration, a target movement distance of not less than a preset distance threshold is determined. The robotic arm is moved in the positive direction of the camera according to the matching movement method. The center of the camera image is aligned with the tip of the calibration needle. The current robotic arm pose and the XYZ coordinates of the current posture are recorded as the ending posture for ABC calibration. The starting posture and ending posture of ABC calibration are processed to obtain the ABC coordinates after calibration. After multiple target movement distances, based on historical movement data, if it is determined that the matching of the obtained ABC coordinates after calibration meets the requirements, the next step is initiated. The S3 robotic arm's execution end coordinates ABC are 0. Align the center of the camera image with the tip of the calibration needle and record the current robotic arm pose and the XYZ coordinates of the current posture. This is the starting posture for YZ calibration. S4 rotates the camera around the X-axis of the camera coordinate system (i.e., rotates by an angle C) beyond the target reading, and then aligns the center of the camera image with the calibration needle again. After alignment, the XYZABC coordinates of the current robotic arm pose and the current posture are recorded as the YZ calibration end posture. Based on the YZ calibration start posture and end posture, and in conjunction with the rotation angle, the calibrated YZ coordinates are calculated.
[0007] Furthermore, the three-dimensional coordinate representation of the tool coordinate point in the end coordinate system is obtained, specifically including: The operator visually determines the positional relationship between the tool's coordinate points and the reference point of the robotic arm's end flange. The line connecting the tool coordinate point and the flange reference point is decomposed and projected onto the XYZ axes of the robotic arm end coordinates.
[0008] The projected lengths in each axis direction are measured and recorded one by one, thereby obtaining the three-dimensional coordinate representation of the tool coordinate points in the end coordinate system.
[0009] Furthermore, the coordinates ABC of the robotic arm's execution end are 0, specifically: Align the camera coordinates with the end effector coordinates of the robotic arm.
[0010] Furthermore, the calibrated ABC coordinates are obtained, specifically including: The camera's vertical position was ensured, so the coordinates of the starting pose were extracted, and its Z-axis became the Z-axis of the calibrated camera coordinates. It should be noted that camera coordinates are called tool coordinates in the manufacturing industry. However, since the tool installed on the robotic arm in the film and television industry is usually a camera, it is called camera coordinates in the film and television industry.
[0011] The end effector coordinates of the robotic arm refer to the physical position of the end effector of the robotic arm, while the camera coordinates (tool coordinates) refer to the physical position of the camera. When a camera is installed, there will be a positional difference between the end effector of the robotic arm and the camera.
[0012] The end effector of the robotic arm moves from the starting pose P_s in the base coordinate system to the ending pose P_e, forming a direction vector. The calibrated camera coordinate X-axis is determined based on the direction vector. Given camera coordinates axis Find it by cross product Axial direction: Finally, a set of orthogonal unit vectors is obtained. The rotation matrix that constitutes the camera coordinates: Convert the rotation matrix of the camera coordinates into the corresponding quaternions. This facilitates subsequent fusion with the robotic arm's end effector posture. Through quaternion inverse kinematics, the Euler angle form is output, and the Euler angle coordinates at this point are... This refers to the ABC coordinates after calibration. .
[0013] Furthermore, the calibrated YZ coordinates are obtained, specifically including: On a two-dimensional plane, a point , around point Rotation angle , to obtain new points The Y and Z coordinates after calibration are obtained by substituting the end and start coordinates of the YZ calibration attitude into the formula.
[0014] The beneficial effects of this invention are as follows: 1. This invention proposes an innovative solution to meet the actual needs of film and television robotic arms: Since the tool coordinates are located inside the camera, traditional touch-based calibration methods cannot be implemented. This invention completes the calibration in a non-contact manner, which not only avoids scratches, displacement and mechanical damage that may be caused by contact, but also breaks through the limitations of existing methods in terms of structure and principle, making camera coordinate calibration truly feasible and practical in film and television robotic arm scenarios, thereby improving the safety and service life of the system.
[0015] 2. This method is simple to operate, and the required auxiliary tools are easy to obtain and carry, meeting the needs of film and television robotic arms in scenarios involving frequent movement and disassembly / reassembly. Furthermore, this method is based on geometric derivation, eliminating the need for image recognition or computer vision processing, thus significantly reducing computational complexity and reliance on computing resources.
[0016] 3. This method ensures high-precision calibration while maintaining good operability. The calibration process can be completed within five minutes, meeting the requirements for rapid deployment, stable operation, and complex motion control of robotic arms during film and television shooting. It provides reliable technical support for high-precision and high-efficiency film and television shooting.
[0017] Other features and advantages will be set forth in the description which follows, and will be apparent in part from the description, or may be learned by practicing the invention. The objects and other advantages of the invention are realized and obtained through the structures particularly pointed out in the description and the drawings.
[0018] To make the above-mentioned objects, features and advantages of the present invention more apparent and understandable, preferred embodiments are described below in detail with reference to the accompanying drawings. Attached Figure Description
[0019] The above and other features and advantages of the present invention will become more apparent from a detailed description of exemplary embodiments thereof with reference to the accompanying drawings.
[0020] Figure 1 This is a flowchart of a coordinate vision calibration method for a film and television robotic arm tool.
[0021] Figure 2 A flowchart illustrating the method for determining the target's movement distance; Figure 3 This is a visual calibration diagram of the tool coordinates for a robotic arm in film and television production. Detailed Implementation
[0022] Exemplary embodiments will now be described more fully with reference to the accompanying drawings. However, these exemplary embodiments can be implemented in many forms and should not be construed as limited to the embodiments set forth herein; rather, they are provided so that the invention will be thorough and complete, and the concept of the exemplary embodiments will be fully conveyed to those skilled in the art. The same reference numerals in the drawings denote the same or similar structures, and therefore their detailed description will be omitted. Example
[0023] To solve the above technical problems, such as Figure 1 As shown, this invention provides a method for coordinate vision calibration of film and television robotic arm tools, specifically including: The S1 operator visually determines the positional relationship between the tool coordinate point and the reference point of the end flange of the robotic arm in the video, and measures the projected length of each axis direction one by one to obtain the three-dimensional coordinate representation of the tool coordinate point in the end coordinate. The S2 robotic arm's execution end coordinates ABC are 0. The calibration needle is placed on the horizontal plane as a reference. The current robotic arm pose and the XYZ coordinates of the current posture are recorded as the starting posture for ABC calibration. Based on the robotic arm's historical movement distance and the matching of the calibrated ABC coordinates, a target movement distance of not less than a preset distance threshold is determined. The robotic arm is moved in the positive direction of the camera according to the matching movement method. The center of the camera image is aligned with the tip of the calibration needle. The current robotic arm pose and the XYZ coordinates of the current posture are recorded as the ending posture for ABC calibration. The starting posture and the ending posture of ABC calibration are processed to obtain the calibrated ABC coordinates. After multiple target movement distances, based on historical movement data, if it is determined that the matching of the obtained calibrated ABC coordinates meets the requirements, the next step is initiated. The S3 robotic arm's execution end coordinates ABC are 0. Align the center of the camera image with the tip of the calibration needle and record the current robotic arm pose and the XYZ coordinates of the current posture. This is the starting posture for YZ calibration. S4 rotates the camera around the X-axis of the camera coordinate system (i.e., rotates by an angle C) beyond the target reading, and then aligns the center of the camera image with the calibration needle again. After alignment, the XYZABC coordinates of the current robotic arm pose and the current posture are recorded as the YZ calibration end posture. Based on the YZ calibration start posture and end posture, and in conjunction with the rotation angle, the calibrated YZ coordinates are calculated.
[0024] Furthermore, the three-dimensional coordinate representation of the tool coordinate point in the end coordinate system is obtained, specifically including: The operator visually determines the positional relationship between the tool's coordinate points and the reference point of the robotic arm's end flange. The line connecting the tool coordinate point and the flange reference point is decomposed and projected onto the XYZ axes of the robotic arm end coordinates.
[0025] The projected lengths in each axis direction are measured and recorded one by one, thereby obtaining the three-dimensional coordinate representation of the tool coordinate points in the end coordinate system.
[0026] Furthermore, the coordinates ABC of the robotic arm's execution end are 0, specifically: Align the camera coordinates with the end effector coordinates of the robotic arm.
[0027] Furthermore, the historical movement distance of the robotic arm is based on the number of times the robotic arm moves and the movement distance of different numbers of moves.
[0028] Furthermore, the matching of the calibrated ABC coordinates is determined based on the deviation of the calibrated ABC coordinates between different numbers of moves.
[0029] Specifically, such as Figure 2As shown, the method for determining the target movement distance is as follows: This application presents an automatic calibration and movement distance decision algorithm for a robotic arm. Its core idea is that the robotic arm "learns" and determines an optimal movement distance (i.e., the "target movement distance") through multiple attempts at movement, thereby improving the accuracy of the calibration process.
[0030] Before delving into the logic behind the decision, let's understand the two basic action plans that the algorithm might ultimately take: Option C (Regular Multiplier Movement): Target distance = Preset multiplier × Previous movement distance. This is a relatively conservative strategy.
[0031] Option F (Optimized Multiplier Movement): Target distance = Second preset multiplier × Previous movement distance. Here, the "second preset multiplier" is less than the "preset multiplier" for more precise adjustments.
[0032] The number of movements and the movement distance for different numbers of movements are determined based on the historical movement distance of the robotic arm. Based on the matching of the calibrated ABC coordinates, the deviation of the calibrated ABC coordinates between different numbers of moves is determined. The target moving distance is determined using the deviation, the number of moves, and the moving distances at different numbers of moves.
[0033] It is understood that the target moving distance is determined using the deviation, the number of moves, and the moving distances of different numbers of moves, specifically including: The number of moves is obtained, and it is determined whether the number of moves is greater than a preset number of moves threshold. If it is, proceed to the next step; otherwise, the target distance is the product of a preset multiple and the previous moving distance. Based on the distance traveled after different number of moves, the difference between the distance traveled after different number of moves and the preset distance threshold is determined and used as the distance difference. It is then determined whether there are any number of moves with a distance difference greater than the preset difference threshold. If so, proceed to the next step; otherwise, the target distance is the product of the preset multiple and the previous distance traveled. By determining the deviation of the ABC coordinates after calibration between different number of moves, the maximum value of the deviation of the ABC coordinates after calibration between different number of moves is determined. It is then determined whether the maximum value of the deviation is within a preset deviation range. If so, the target distance is obtained by multiplying the second preset multiple by the previous movement distance. If not, proceed to the next step. Based on the difference in movement distance for different number of moves, the available weight values for different number of moves are determined, and the adaptation coefficient is determined by combining the average deviation of the ABC coordinates after calibration between different number of moves. The target movement distance is then determined based on the adaptation coefficient.
[0034] Specifically, the adaptation coefficient is determined based on the difference between the sum of the available weight values for different number of moves and the average of the absolute values of the deviation rates of the calibrated ABC coordinates between different number of moves.
[0035] The deviation rate is determined by the ratio of the difference in deviation between the calibration values of the ABC coordinates between different number of moves to the average value of the calibration values of the ABC coordinates between different number of moves. For example, the ratio of the difference in deviation between the calibration values of the ABC coordinates between number of moves A and B to the average value of the calibration values of the ABC coordinates between number of moves A and B is used as the deviation rate between number of moves A and B. The average value of the absolute values of the deviation rates between multiple number of moves is used as the reference value, and the difference between the sum of the available weight values of different number of moves and the reference value is used as the adaptation coefficient.
[0036] It is understood that determining the target movement distance based on the adaptation coefficient specifically includes: When the adaptation coefficient is greater than the preset adaptation coefficient threshold, the target distance is determined to be the product of the second preset multiple and the previous movement distance. If the adaptation coefficient is not greater than the preset adaptation coefficient threshold, the target distance is determined to be the product of the preset multiple and the previous movement distance.
[0037] Detailed process steps B: Judgment based on sufficient number of moves; Objective: To ensure sufficient historical data for decision-making and avoid complex calculations when data is insufficient.
[0038] Judgment: Is the number of historical moves greater than the preset move threshold? (e.g., >5 times). Result: If "No", it means there is insufficient data, and scheme C is adopted directly.
[0039] D: Stability judgment of movement distance. Purpose: To check whether the calibration result significantly "deviates from the normal range" after a certain movement distance. Generally, the longer the distance, the higher the accuracy. Judgment: Calculate the difference between each movement distance and an ideal "preset distance threshold" (movement distance difference) and check whether the difference is greater than the "preset difference threshold" (e.g., 3cm). Result: If "no", it means that there is abnormal movement. To be on the safe side, adopt scheme C.
[0040] E: Coordinate Deviation Consistency Judgment. Purpose: To check the stability of the actual position reached after multiple movements of the robotic arm. If the maximum deviation is within a reasonable range, it indicates that the system is stable.
[0041] Judgment: Calculate the maximum value of the deviation between all moved coordinates and check if it falls within the preset deviation range. Result: If "yes", it means that the accuracy is already good and a more conservative scheme F can be used for fine-tuning.
[0042] G / H: Comprehensive adaptability judgment (core calculation). If the above simple rules cannot make a decision, then proceed to this most complex calculation stage.
[0043] G. Calculate the fit coefficient: Step 1: Calculate the available weight values. Assign a weight to each move based on the "difference in moving distance," with smaller differences (more reasonable moving distances) receiving smaller weights. Step 2: Calculate the deviation rate. This measures the degree of fluctuation in the results between two moves. The formula is: Deviation rate _AB = (Coordinate deviation _AB) / (Average value of ABC coordinate calibration _AB) Then calculate the average of the absolute values of all deviation rates, and denote it as the mean absolute deviation rate.
[0044] Step 3: Calculate the fit coefficient.
[0045] The fit coefficient = SUM (available weights) - mean absolute deviation rate. The logic behind this coefficient is: the sum of weights represents the "overall reasonableness of historical movement distances," and the mean absolute deviation rate represents the "volatility of historical movement results." A higher fit coefficient indicates more reliable historical data and a more stable system.
[0046] H. Decision based on adaptation coefficient: Judgment: Is the adaptation coefficient > the preset adaptation coefficient threshold? Result: Yes: It means that the system is stable and the data is reliable, and a more aggressive approach F can be adopted; No: It means that the system fluctuates greatly or the data is unreliable, and a conservative approach C should be adopted. The specific threshold can be set by the user according to their needs.
[0047] Furthermore, the preset distance threshold is 15cm.
[0048] Furthermore, the robotic arm is moved a specified distance in the positive direction of the camera according to a matching movement pattern, specifically including: The number of moves is obtained, and it is determined whether the number of moves is greater than a preset number threshold (e.g., 3 times). If so, the target movement distance is moved after returning to the initial position (i.e., the very beginning position). If not, the target movement distance is moved forward according to the current position.
[0049] Specifically, determining whether the matching of the ABC coordinates after calibration meets the requirements includes: Based on historical movement data, the number of historical movements of the robotic arm is determined; Obtain the matching status of ABC coordinates after calibration within the most recent preset number of times; Based on the matching results of the calibrated ABC coordinates in the historical number of moves and the most recent preset number of moves, it is determined whether the matching results of the calibrated ABC coordinates meet the requirements.
[0050] It should be noted that the most recent preset number is the most recent 3 times, and the specific number is determined based on the user's settings.
[0051] It is understood that the matching of the calibrated ABC coordinates after calibration is determined based on the historical number of moves and the matching of the most recent preset number of moves. This determination includes: If the number of historical moves is less than the preset number, then the matching of the ABC coordinates after calibration is determined to be unsatisfactory. When the number of historical moves is not less than a preset number, the average value of the absolute value of the deviation rate of the ABC coordinates after calibration is determined based on the matching situation of the ABC coordinates after calibration in the most recent preset number of moves. When the average value is less than a preset deviation rate threshold, it is determined that the matching situation of the ABC coordinates after calibration meets the requirements.
[0052] It is understood that the value of the preset deviation rate threshold is determined based on the user setting result, and the specific value range is between 0 and 3%.
[0053] Furthermore, the calibrated ABC coordinates are obtained, specifically including: The camera's vertical position was ensured, so the coordinates of the starting pose were extracted, and its Z-axis became the Z-axis of the calibrated camera coordinates. It should be noted that camera coordinates are called tool coordinates in the manufacturing industry. However, since the tool installed on the robotic arm in the film and television industry is usually a camera, it is called camera coordinates in the film and television industry.
[0054] The end effector coordinates of the robotic arm refer to the physical position of the end effector of the robotic arm, while the camera coordinates (tool coordinates) refer to the physical position of the camera. When a camera is installed, there will be a positional difference between the end effector of the robotic arm and the camera.
[0055] It should be noted that the end effector of the robotic arm refers to all parts after the last joint of the robotic arm. It is the physical interface point through which the robotic arm interacts with the external environment (especially the work object).
[0056] The end effector of the robotic arm moves from the starting pose P_s in the base coordinate system to the ending pose P_e, forming a direction vector. The calibrated camera coordinate X-axis is determined based on the direction vector. Given camera coordinates axis Find it by cross product Axial direction: Finally, a set of orthogonal unit vectors is obtained. The rotation matrix that constitutes the camera coordinates: Convert the rotation matrix of the camera coordinates into the corresponding quaternions. This facilitates subsequent fusion with the robotic arm's end effector posture. Through quaternion inverse kinematics, the Euler angle form is output, and the Euler angle coordinates at this point are... This refers to the ABC coordinates after calibration. Specific examples include... Figure 3 As shown, the coordinates ABC of the S21 robotic arm's execution end are 0, meaning that the camera coordinates coincide with the robotic arm's base coordinate system, which is beneficial for subsequent coordinate calculations.
[0057] The accuracy of selecting reference points S22 and S23 directly affects the final calibration result. To ensure reliability, a calibration probe can be used as a reference (e.g., Figure 3 Place the camera on a horizontal plane and align the center of the camera with the tip of the calibration needle to serve as a precise calibration reference point. The vertical line of the calibration needle can be used as a vertical reference line. Align the vertical line of the crosshair reference line in the camera image with the vertical line on the calibration needle for calibration. After alignment, record the current robot arm pose and the XYZ coordinates of the current posture to form the starting posture for ABC calibration.
[0058] S24 and S25: Move the robotic arm at least 15cm in the positive direction of the camera. The longer the forward movement, the more accurate the result. Align the center of the camera image with the tip of the calibration needle again, and record the current robotic arm pose and its XYZ coordinates. This is the final pose for ABC calibration.
[0059] The S26 algorithm processes the starting and ending poses of the ABC calibration to obtain the calibrated ABC coordinates.
[0060] Algorithm principle: The recorded starting and ending poses of the ABC calibration, and their XYZ position coordinates in the base coordinate system, can form a direction vector pointing from the starting point to the ending point. The direction of this vector is the camera coordinate after calibration. Positive direction of the axis.
[0061] Camera coordinates are defined as A right-handed coordinate system with the axis pointing upwards. Where: : around camera coordinates Axis rotation (yaw).
[0062] : around camera coordinates Axis rotation (pitch).
[0063] : around camera coordinates Rotation of the axis (roll, roll angle).
[0064] Rotation angle according to The Euler angle order represents the overall attitude.
[0065] In practical calculations, Euler angles are not directly manipulated; instead, they are first converted into quaternions for cumulative rotation or attitude calculation, avoiding singularities and gimbal lock. The conversion from Euler angles (a,b,c) to quaternions... The conversion formula is:
[0066] Each component is:
[0067]
[0068]
[0069] 1. Determining the Z-axis Since the camera was kept vertical during operation, the coordinates of the starting pose were extracted. The axis is the calibrated camera coordinate system. axis:
[0070] Camera coordinates Axial direction vector.
[0071] 2. Determining the X-axis The robotic arm end effector's orientation from its starting point in the base coordinate system Move to the endpoint posture This forms a direction vector:
[0072] : Position vector of the starting attitude in the base coordinate system .
[0073] : The position vector of the final pose in the base coordinate system .
[0074] Camera coordinates Axial direction vector.
[0075] Determining the Y-axis Given camera coordinates axis Find it by cross product Axial direction:
[0076] Camera coordinates Axial direction vector.
[0077] Finally, a set of orthogonal unit vectors is obtained. The rotation matrix that constitutes the camera coordinates:
[0078] : Rotation matrix of camera coordinates.
[0079] Will Convert to the corresponding quaternion This facilitates subsequent fusion with the robotic arm's end effector posture. Euler angles are output through quaternion inverse kinematics. The Euler angle coordinates at this point are... This refers to the tool coordinates after calibration is complete. .
[0080] : The quaternion corresponding to the calibrated camera coordinates and attitude.
[0081] The tool coordinates Euler angles after calibration (i.e., tool coordinates) value).
[0082] Furthermore, the calibrated YZ coordinates are obtained, specifically including: On a two-dimensional plane, a point , around point Rotation angle , to obtain new points ; By combining the difference vector between the endpoint coordinates of the YZ calibration end posture and the starting coordinates after rotation, and substituting it into the formula, the calibrated coordinates Y and Z are obtained.
[0083] It should be noted that the X, Y, Z, A, B, and C coordinates are a set of data describing the position and attitude of the robotic arm's end effector and the camera. The X, Y, and Z coordinates describe the spatial positional offset relationship between the camera and the robotic arm's end effector, while A, B, and C describe the angular offset relationship between them. Together, these two sets of six data points describe the spatial offset relationship between the robotic arm's end effector and the camera's position and attitude.
[0084] like Figure 3The diagram shows the visual calibration of the tool coordinates of the robotic arm. S31 starts YZ calibration only after completing ABC calibration; otherwise, the accuracy of YZ calibration will be affected. The coordinates ABC of the robotic arm's execution end are 0, meaning that the camera coordinates coincide with the robotic arm's base coordinate system, which is beneficial for subsequent coordinate calculations.
[0085] S32 and S33 align the center of the camera image with the tip of the calibration needle. Ensure that the ABC coordinate data is 0 at this time, and record the current robot arm pose and the XYZ coordinates of the current posture, which is the starting posture for YZ calibration.
[0086] S34 and S35 rotate the camera around the X-axis of the camera coordinate system (i.e., rotate by an angle C) by more than 20 degrees but less than 180 degrees; then align the center of the camera image with the calibration pin again. After alignment, record the XYZABC coordinates of the current robotic arm pose and the current posture, which is the YZ calibration end posture. The S36 algorithm processes the initial and final orientations of the YZ calibration, and, in conjunction with the rotation angle, calculates the calibrated YZ coordinates.
[0087] Algorithm principle: Using the coordinates of the initial and final poses and the rotation angle, the center of the circle during the rotation process is determined. This center is a point on the straight line where the camera's optical axis lies.
[0088] Since we only care about the YZ plane, the problem can be simplified to a two-dimensional plane rotation problem:
[0089] The coordinates of a point on a plane; : Two-dimensional real number space.
[0090] Given: the initial coordinates of a point in the base coordinate system Rotated coordinates Rotation angle (Right-hand rule about the X-axis).
[0091] On a two-dimensional plane, a point , around point Rotation angle , to obtain new points The relationships between the points are as follows:
[0092] Rotate the coordinates of the center of the circle. ; Rotation matrix: Substitute and solve:
[0093] The difference vector between the coordinates of the starting point and the starting point; Finally obtained ; The calibrated coordinates are as follows: , ; The camera's optical axis in the base coordinate system The calibration results of the orientation; The camera's optical axis in the base coordinate system The calibration results for the orientation.
[0094] Additionally, it should be noted that after completing the ABCYZ calibration, you can verify whether the calibration is accurate: Align the center of the camera image with a point in space, move the robotic arm directly in front of the camera, and observe the image. If the spatial point remains in the center of the image throughout the movement of the robotic arm without any positional shift, then the ABC calibration is accurate. Rotate the camera along the camera's x-axis. If the spatial point remains in the center of the image throughout the movement of the robotic arm without any positional shift, then the YZ calibration is accurate.
[0095] The above are merely preferred embodiments of the present invention and are not intended to limit the scope of the present invention. For those skilled in the art, the embodiments of the present invention can have various modifications and variations. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the embodiments of the present invention should be included within the protection scope of the embodiments of the present invention.
Claims
1. A method for coordinate vision calibration of film and television robotic arm tools, characterized in that, Specifically, it includes: The operator visually determines the positional relationship between the tool coordinate point and the reference point of the end flange of the robotic arm in the video, and measures the projected length of each axis direction one by one to obtain the three-dimensional coordinate representation of the tool coordinate point in the end coordinate. The robotic arm's execution end coordinates ABC are set to 0. The calibration needle is placed on a horizontal plane as a reference. The current robotic arm pose and the XYZ coordinates of the current posture are recorded as the starting posture for ABC calibration. Based on the robotic arm's historical movement distance and the matching of the calibrated ABC coordinates, a target movement distance of not less than a preset distance threshold is determined. The robotic arm is moved in the positive direction of the camera according to the matching movement method. The center of the camera image is aligned with the tip of the calibration needle. The current robotic arm pose and the XYZ coordinates of the current posture are recorded as the ending posture for ABC calibration. The starting posture and the ending posture of ABC calibration are processed to obtain the calibrated ABC coordinates. After multiple target movement distances, based on historical movement data, if it is determined that the matching of the obtained calibrated ABC coordinates meets the requirements, the next step is initiated. The coordinates ABC of the robotic arm's execution end are 0. Align the center of the camera image with the tip of the calibration needle and record the current robotic arm pose and the XYZ coordinates of the current posture. This is the starting posture for YZ calibration. Rotate the camera beyond the target reading around the X-axis of the camera coordinate system, and then align the center of the camera image with the calibration needle again. After alignment, record the current robot arm pose and the XYZABC coordinates of the current posture. This is the YZ calibration end posture. Based on the YZ calibration start and end postures, and in conjunction with the rotation angle, calculate the calibrated YZ coordinates.
2. The method for coordinate vision calibration of film and television robotic arm tools as described in claim 1, characterized in that, The tool's coordinate points are obtained in three-dimensional coordinates in the end-effector coordinate system, specifically including: The operator visually determines the positional relationship between the tool's coordinate points and the reference point of the robotic arm's end flange. Decompose the line connecting the tool coordinate point and the flange reference point, and project it onto the XYZ axes of the robot arm end coordinates respectively. The projected lengths in each axis direction are measured and recorded one by one, thereby obtaining the three-dimensional coordinate representation of the tool coordinate points in the end coordinate system.
3. The method for coordinate vision calibration of film and television robotic arm tools as described in claim 1, characterized in that, The coordinates ABC of the robotic arm's execution end are 0, specifically: Align the camera coordinates with the end effector coordinates of the robotic arm.
4. The method for coordinate vision calibration of film and television robotic arm tools as described in claim 1, characterized in that, The historical movement distance of the robotic arm is based on the number of times the robotic arm moves and the movement distance of different numbers of moves.
5. The method for coordinate vision calibration of film and television robotic arm tools as described in claim 1, characterized in that, The method for determining the target movement distance is as follows: The number of movements and the movement distance for different numbers of movements are determined based on the historical movement distance of the robotic arm. Based on the matching of the calibrated ABC coordinates, the deviation of the calibrated ABC coordinates between different numbers of moves is determined. The target moving distance is determined using the deviation, the number of moves, and the moving distances at different numbers of moves.
6. The method for coordinate vision calibration of film and television robotic arm tools as described in claim 1, characterized in that, The preset distance threshold is 15cm.
7. The method for coordinate vision calibration of film and television robotic arm tools as described in claim 1, characterized in that, The calibrated ABC coordinates are obtained, specifically including: The camera's vertical position was ensured, so the coordinates of the starting pose were extracted, and its Z-axis became the Z-axis of the calibrated camera coordinates. The end effector of the robotic arm moves from the starting pose P_s in the base coordinate system to the ending pose P_e, forming a direction vector. The calibrated camera coordinate X-axis is determined based on the direction vector. Given camera coordinates axis Find it by cross product Axial direction: Finally, a set of orthogonal unit vectors is obtained. The rotation matrix that constitutes the camera coordinates: Convert the rotation matrix of the camera coordinates into the corresponding quaternions. This facilitates subsequent fusion with the robotic arm's end effector posture. Through quaternion inverse kinematics, the Euler angle form is output, and the Euler angle coordinates at this point are... This refers to the ABC coordinates after calibration. .
8. The method for coordinate vision calibration of film and television robotic arm tools as described in claim 1, characterized in that, The calibrated YZ coordinates are obtained, specifically including: On a two-dimensional plane, a point , around point Rotation angle , to obtain new points ; By combining the difference vector between the endpoint coordinates of the YZ calibration end posture and the starting coordinates after rotation, and substituting it into the formula, the calibrated coordinates Y and Z are obtained.