A calibration system, a calibration method, a calibration device and a readable storage medium
By setting multiple positioning areas on the calibration board and utilizing coded identifiers and mapping tables, the problem of needing to capture a complete image of the calibration board in existing technologies is solved, enabling camera calibration under occlusion or blurring conditions and improving the robustness and flexibility of the calibration process.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHENZHEN ORBBEC CO LTD
- Filing Date
- 2023-04-11
- Publication Date
- 2026-05-15
AI Technical Summary
In the existing technology, camera calibration requires taking a complete image of the calibration board, and calibration parameters cannot be calculated when the calibration board is obscured or the image is blurry.
By setting multiple positioning areas on the calibration board, each containing at least two types of marker graphics, and using coded identifiers and coded position mapping tables, calibration is performed by capturing only the calibration images containing the positioning areas and combining the coordinates of the positioning areas on the calibration board and the images.
It enables camera calibration even when the calibration plate is obscured or the image is blurred, improving the robustness and flexibility of the calibration process.
Smart Images

Figure CN116503486B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of camera calibration technology, and in particular relates to a calibration system, calibration method, calibration device and readable storage medium. Background Technology
[0002] In image measurement and machine vision applications, in order to determine the relationship between the three-dimensional geometric position of a point on the surface of a spatial object and its corresponding point in the image, it is necessary to solve for the camera's calibration parameters.
[0003] The process of determining camera calibration parameters generally involves capturing a complete image of the calibration board, followed by calculation using a calibration algorithm to obtain the camera's calibration parameters. Therefore, determining camera calibration parameters typically requires a calibration board. In existing technologies, calibration boards generally have a fixed-interval pattern array, such as a checkerboard calibration board. When using such a calibration board to determine camera calibration parameters, a complete image of the calibration board needs to be captured. Summary of the Invention
[0004] This application provides a calibration system, calibration method, calibration device, and readable storage medium, which can solve the problem that in the prior art, when solving the calibration parameters of a camera, it is necessary to take a complete image of the calibration board.
[0005] In a first aspect, embodiments of this application provide a calibration system for obtaining calibration parameters of a camera to be calibrated, comprising: a calibration board, including a body having multiple positioning areas, each positioning area including at least two types of marker graphics, and the arrangement of marker graphics in each positioning area being unique on the calibration board; and a host computer, configured to receive a calibration image containing the calibration board acquired by the camera to be calibrated, and to process the calibration image according to a preset calibration method to obtain the image coordinates of the marker graphics on the calibration image and the world coordinates on the calibration board, and to combine the world coordinates of the marker graphics on the calibration board with the image coordinates corresponding to the marker graphics to calibrate the camera to be calibrated to obtain the calibration parameters of the camera to be calibrated.
[0006] The first advantage of this application is that multiple positioning areas are set on the calibration plate body, each positioning area includes at least two types of marker graphics, and the arrangement of marker graphics in each positioning area is unique on the calibration plate. Since the arrangement of marker graphics in the positioning area is unique on the calibration plate, the camera can be calibrated by taking a calibration image containing the positioning area, determining the world coordinates of the positioning area on the calibration plate, and then combining the image coordinates of the positioning area on the calibration image, without needing to take a complete picture of the calibration plate.
[0007] Secondly, embodiments of this application provide a calibration method applied to the aforementioned calibration system. The method includes: encoding and identifying each marker graphic on a calibration board to obtain a combination of encoded identifiers for the positioning area of the calibration board; constructing an encoded position mapping table based on the mapping relationship between the encoded identifier combination of the positioning area and the row and column information of the positioning area on the calibration board; triggering the camera to be calibrated to acquire a calibration image including the calibration board; selecting the positioning area of the calibration board in the calibration image according to a preset dimension, and identifying each marker graphic in the positioning area to obtain the encoded identifier combination of the positioning area and the image coordinates of the positioning area on the calibration image; wherein the preset dimension is determined by the encoded identifier combination of the positioning area of the calibration board in the encoded position mapping table; obtaining the row and column information of the positioning area on the calibration board based on the encoded identifier combination of the positioning area and the encoded position mapping table to further obtain the world coordinates of the marker graphics of the positioning area or the entire calibration image on the calibration board; and using the world coordinates of the marker graphics of the positioning area or the entire calibration image on the calibration board and the image coordinates on the calibration image to calibrate the camera to be calibrated to obtain the calibration parameters of the camera to be calibrated.
[0008] Thirdly, embodiments of this application provide a calibration device, including: a construction module 700, used to encode and identify each marker graphic on a calibration board to obtain a combination of coded identifiers for the positioning area of the calibration board; a coded position mapping table trigger module, used to trigger the camera to be calibrated to acquire a calibration image including the calibration board; an acquisition module, used to select the positioning area of the calibration board in the calibration image according to a preset dimension, and identify each marker graphic in the positioning area to obtain the combination of coded identifiers for the positioning area and the image coordinates of the positioning area on the calibration image; wherein, the preset dimension is determined by the combination of coded identifiers for the positioning area of the calibration board in the coded position mapping table; and a calibration module, used to obtain the row and column information of the positioning area on the calibration board based on the combination of coded identifiers for the positioning area and the coded position mapping table to further obtain the world coordinates of the positioning area on the calibration board, and use the world coordinates of the positioning area on the calibration board and the image coordinates of the positioning area on the calibration image to calibrate the camera to be calibrated to obtain the calibration parameters of the camera to be calibrated.
[0009] Fourthly, embodiments of this application provide a terminal device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of the above-described calibration method.
[0010] Fifthly, embodiments of this application provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the above-described calibration method.
[0011] Sixthly, embodiments of this application provide a computer program product that, when run on a terminal device, causes the terminal device to execute the above-described calibration method.
[0012] It is understood that the beneficial effects of the second to sixth aspects mentioned above can be found in the relevant descriptions in the first aspect mentioned above, and will not be repeated here. Attached Figure Description
[0013] To more clearly illustrate the technical solutions in the embodiments of this application, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0014] Figure 1 This is a schematic diagram of the architecture of a calibration system provided in an embodiment of this application;
[0015] Figure 2 This is a schematic diagram of the structure of a calibration plate provided in an embodiment of this application;
[0016] Figure 3 This is a schematic diagram of the logo graphic and corresponding coded identifier provided in the embodiments of this application;
[0017] Figure 4 This is a schematic diagram illustrating the implementation process of a calibration method provided in an embodiment of this application;
[0018] Figure 5 This is a schematic representation of the logo graphic and corresponding coded identifier of the calibration board provided in the embodiments of this application;
[0019] Figure 6 This is a schematic diagram of the positioning area and corresponding coding identifier combination of the calibration board provided in the embodiments of this application;
[0020] Figure 7 This is a schematic diagram of the coding identifier combination corresponding to the positioning area and the coding identifier combination corresponding to the calibration image provided in the embodiments of this application;
[0021] Figure 8 This is a schematic diagram of the structure of a calibration device provided in an embodiment of this application;
[0022] Figure 9 This is a schematic diagram of the structure of the terminal device provided in the embodiments of this application. Detailed Implementation
[0023] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without inventive effort are protected by this application.
[0024] It should be noted that the terms "comprising," "including," and "having," and any variations thereof, in the specification, claims, and accompanying drawings of this application, are intended to cover non-exclusive inclusion. For example, a process, method, terminal, product, or device that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products, or devices. Terms such as "first" and "second" in the claims, specification, and accompanying drawings of this application, as well as relational terms, are used merely to distinguish one entity / operation / object from another entity / operation / object, and do not necessarily require or imply any such immediate relationship or order between these entities / operations / objects.
[0025] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a mutually exclusive, independent, or alternative embodiment. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.
[0026] In some application scenarios of existing technology, when calibrating a camera, it is necessary to take a complete image of the calibration board, and the calibration board must not be obscured in the image, and the image must not be blurry. When the above conditions are not met simultaneously, it is impossible to extract the complete plane angle of the calibration board. In this case, the calibration parameters of the camera cannot be calculated, and it is necessary to take a new picture.
[0027] In view of this, the embodiments of this application can calibrate the camera by taking a calibration image containing the positioning area, determining the world coordinates of the positioning area on the calibration board based on the positioning area, and then combining the image coordinates of the positioning area on the calibration image. This can be done without taking a complete image of the calibration board, or even when the calibration board is obscured or the calibration image is blurry.
[0028] To illustrate the technical solution of this application, specific embodiments are described below.
[0029] Figure 1 This is a schematic diagram of a calibration system provided in an embodiment of the present invention. The calibration system is used to obtain calibration parameters of a camera 12 to be calibrated. The system includes a guide rail 10, a calibration plate 11, and a host 13. The calibration plate 11 and the camera 12 to be calibrated are located on both sides of the guide rail 10 and are arranged parallel to each other. The calibration plate 11 can move along the guide rail 10. The calibration plate 11 includes a body with multiple positioning areas. Each positioning area includes at least two types of marker graphics, and the arrangement of the marker graphics in each positioning area is unique on the calibration plate 11. The host 13 is electrically connected to the camera 12 to be calibrated and the calibration plate 11, respectively. It is used to receive calibration images of the camera 12 to be calibrated, including the calibration plate 11, and to process the calibration images according to the calibration method provided in one or more embodiments of the present application to obtain the image coordinates of the marker graphics on the calibration images and the world coordinates on the calibration plate 11. The calibration parameters of the camera 12 to be calibrated are obtained by combining the world coordinates of the marker graphics on the calibration plate 11 and the corresponding image coordinates of the marker graphics.
[0030] In the embodiments of this application, the material of the calibration plate body can be the same as that of a conventional calibration plate, such as ceramic, glass, aluminum alloy, film, quartz, etc. The shape of the body can also be the same as that of a conventional calibration plate, such as a rectangle, a square, etc. The graphic area composed of all the marking graphics on the calibration plate 11 can be the same size as the body or smaller than the body.
[0031] The logo graphic can be formed on the body by printing or engraving, or by other processing methods. The logo graphic may include a calibration pattern, which may include elements such as pattern style, number of patterns, and pattern color. Each logo graphic on the calibration plate 11 has unique positional information. Multiple different types of logo graphics are arranged on the calibration plate 11; for example, a calibration plate 11 may have two, three, or four logo graphics. As an example, Figure 2 The calibration plate 11 shown contains four types of marker graphics. The marker graphics on the calibration plate 11 can be randomly arranged. The marker graphics can be arranged at equal intervals. The boundaries of the marker graphics can be quadrilaterals, such as squares, or other shapes, such as circles.
[0032] A positioning area is a region of marker graphics on the calibration plate 11 consisting of at least two adjacent marker graphics, and each positioning area includes at least two types of marker graphics. For example, a positioning area can be composed of marker graphics within a 3×3 area (one marker graphic occupies one area) on the calibration plate 11, or it can be composed of marker graphics within a 4×4 area. It is worth noting that the arrangement of marker graphics within each positioning area is unique on the calibration plate 11, meaning that the position of each positioning area on the calibration plate 11 is unique. For example, if a 3×3 marker graphics area exists on a calibration plate 11, and the arrangement of marker graphics within this 3×3 marker graphics area is unique on the calibration plate 11, then the position of this 3×3 marker graphics area on the calibration plate 11 is unique, and this 3×3 marker graphics area can be considered a positioning area. For example, in... Figure 2 In the calibration plate 11, there is a 3×3 marker graphic area 103 in the lower right corner. The arrangement of the marker graphics within this 3×3 marker graphic area on the calibration plate 11 is unique, therefore this marker graphic area can be regarded as a positioning area. In addition, in order to facilitate the determination of the positioning area in the calibration plate 11, the boundary of the positioning area should be set as a rectangle.
[0033] The calibration image is an image captured by the camera 12 to be calibrated, containing the calibration plate 11. The calibration image may contain the complete calibration plate 11 or a portion of the calibration plate 11. When the calibration image contains a portion of the calibration plate 11, and when there is a positioning area on that portion of the calibration plate 11, the position of the portion of the calibration plate 11 in the calibration image can be determined based on the positioning area. Combined with the position of the portion of the calibration plate 11 in the calibration image, the camera is calibrated.
[0034] It is worth noting that the range of the positioning area is not fixed. In the calibration plate 11, the smallest positioning area can be the smallest area among all the unique combinations of all the marker graphics in the calibration plate 11; the largest positioning area can be the area composed of all the marker graphics in the entire calibration plate 11. In the calibration image, the smallest positioning area can also be the smallest area among all the unique combinations of all the marker graphics in the calibration plate 11; the largest positioning area can be the area composed of all the marker graphics in the entire calibration image. In other words, the entire calibration plate area within the calibration image can be used as the positioning area.
[0035] In this embodiment, multiple positioning areas are set on the calibration plate body, each positioning area includes at least two types of marker graphics, and the arrangement of marker graphics in each positioning area is unique on the calibration plate 11. Since the arrangement of marker graphics in the positioning area is unique on the calibration plate 11, the camera can be calibrated by taking a calibration image containing the positioning area, determining the world coordinates of the marker graphics in the positioning area on the calibration plate 11, and then combining the image coordinates of the marker graphics in the positioning area on the calibration image, without needing to take a complete picture of the calibration plate 11.
[0036] Furthermore, since the different types of marker patterns on the calibration plate 11 are randomly arranged, any area of marker patterns with unique combinations at any position on the calibration plate 11 can be used as a positioning area. This eliminates the need to photograph one or more designated areas of the calibration plate 11, thus increasing the freedom of shooting the calibration plate 11 during the camera calibration process.
[0037] Meanwhile, when the positioning area in the captured calibration image is not obstructed and is clear, even if other areas of the calibration plate 11 in the calibration image are obstructed or unclear, the position of the positioning area on the calibration plate 11 can be determined based on the positioning area, thereby calibrating the camera and improving the robustness of camera calibration.
[0038] During camera calibration, different calibration patterns can be used to distinguish different marker graphics. For example, in some embodiments of this application, at least two types of marker graphics may include calibration patterns with different pattern styles, pattern quantities, and / or pattern colors.
[0039] In embodiments of this application, the logo graphic may include a boundary and a marking pattern within the boundary. The boundary may be a quadrilateral, such as a square. The marking pattern refers to the pattern within the boundary of the logo graphic, and may be composed of one or more elements such as pattern style, number of patterns, and pattern color, without limitation. The pattern style may be the shape of the marking pattern in the logo graphic, such as a circle, triangle, or rectangle. The number of patterns may be the number of marking patterns in a logo graphic, and may be one, two, or more. For example, the marking pattern within the boundary of a logo graphic may consist of two circular patterns, such as... Figure 3 The code identifier shown is a white background with black concentric circles corresponding to number 1. Its design consists of a large black circle and a small white circle forming concentric circles. Different types of logos can be distinguished by different colored designations, for example... Figure 3 The white background with a black circle corresponding to the code identifier 0 and the black background with a white circle corresponding to the code identifier 3 are different in that the colors of the circular area and the edge area surrounding the circular area are opposite in the two logos.
[0040] Different calibration patterns can be used to distinguish different marker graphics. The more types of marker graphics on the calibration plate 11, the less likely it is that areas with the same arrangement of marker graphics will appear on the calibration plate 11. Therefore, it is easier for positioning areas to appear on the calibration plate 11. Moreover, the more types of marker graphics on the calibration plate 11, the greater the probability that a positioning area will appear within a small area on the calibration plate 11. For example, on a 10×10 calibration plate 11, if there are two types of marker graphics, the smallest positioning area on the calibration plate 11 may be 5×5; if there are three types of marker graphics, the smallest positioning area may be 4×4; and if there are four types of marker graphics, the smallest positioning area may be 3×3. In other words, the more types of marker graphics on the calibration plate 11, the smaller the minimum size of the positioning area; the more types of marker graphics on the calibration plate 11, the easier it is for a positioning area to appear on the calibration plate 11. The smaller the minimum range of the positioning area, the greater the freedom in shooting.
[0041] In specific embodiments, in order to facilitate the differentiation of different types of logo graphics, at least two types of logo graphics in this application may include any one or more of the following types of logo graphics: white background with black circle logo graphics, white background with black concentric circle logo graphics, black background with white concentric circle logo graphics, and black background with white circle logo graphics.
[0042] When there are fewer than or equal to four types of marking graphics on the calibration plate 11, different types of marking graphics can be set to any one of the four types mentioned above, but different types of marking graphics should use different types of calibration patterns.
[0043] To facilitate calculation, the marker graphics can be encoded. Different types of marker graphics can correspond to different encoded identifiers, which can be digital representations of the marker graphics. During the design of the calibration plate 11, the calibration plate 11 can be randomly generated from a random number seed. Different random number seeds correspond to different calibration plates 11, thus generating different calibration plates 11 through random number seeds. This avoids the situation where two identical calibration plates 11 exist for a single calibration image during the calibration process, making it impossible for the camera 12 to distinguish them and thus failing to provide sufficient constraints for calibrating the camera 12. Figure 2 and Figure 3 In the example shown, the calibration board 11 is set to 8 rows and 8 columns. Based on the random numbers 0, 1, 2, and 3 generated by the random number seed, the graphic type of each position of the calibration board 11 corresponds one-to-one with the random arrangement of the numbers 0 to 3 generated by the random number seed.
[0044] like Figure 3As shown, the white background with black circles corresponds to code 0. From the inside out, it includes a first circular area and a first edge area surrounding the first circular area. The first circular area is black, and the first edge area is white. The white background with black concentric circles corresponds to code 1. From the inside out, it includes a second circular area, a first annular area surrounding the second circular area (the area remaining after removing the small white circle from the large black circle; the centers of the large black circle and the small white circle are at the same position), and a second edge area surrounding the first annular area. The second circular area and the second edge area are white, and the first annular area is black. The black background with white concentric circles corresponds to code 2. From the inside out, it includes a third circular area, a second annular area surrounding the third circular area (the area remaining after removing the small black circle from the large white circle; the centers of the large white circle and the small black circle are at the same position), and a third edge area surrounding the second annular area. The third circular area and the third edge area are black, and the second annular area is white. The black background with a white circle logo corresponds to the code 3. From the inside out, it includes a fourth circular area, a fourth edge area surrounding the fourth circular area, the fourth circular area is white, and the fourth edge area is black.
[0045] In addition, the marking patterns in the white background with black concentric circles logo and the black background with white concentric circles logo are both concentric circles, which can compensate for the errors caused by perspective distortion.
[0046] In this embodiment, the camera 12 to be calibrated may include a structured light depth camera, a TOF depth camera, a binocular camera, an RGB camera, a multispectral camera, etc., and there is no limitation on this. It can be a single camera or multiple cameras arranged in parallel, as long as the calibration board 11 is within the field of view of each of the multiple cameras. There is no limitation on the type and number of cameras.
[0047] This application also provides a calibration method. This calibration method is based on the aforementioned calibration system to achieve camera calibration. The method is executed by a host 13 and can be implemented by software and / or hardware. The host 13 may include, but is not limited to, electronic devices with computing capabilities such as mobile phones, cameras, tablets, wearable devices, in-vehicle devices, augmented reality (AR) / virtual reality (VR) devices, laptops, ultra-mobile personal computers (UMPCs), netbooks, and personal digital assistants (PDAs). This application does not impose any restrictions on the specific type of host 13.
[0048] Figure 4The illustration shows a schematic diagram of the implementation process of a calibration method provided in an embodiment of this application, which includes steps S300 to S303.
[0049] Step S300: Encode and label each mark graphic on the calibration board to obtain the encoding and label combination of the calibration board positioning area. Construct an encoding position mapping table based on the mapping relationship between the encoding and label combination of the calibration board positioning area and the row and column information of the positioning area on the calibration board.
[0050] To facilitate calculation, the logo graphics can be encoded, and different types of logo graphics on the calibration plate 11 can correspond to different encoded identifiers. In the embodiments of this application, the encoded identifier can be a digital representation of the logo graphics. Figure 5 Four types of logo graphics and their coded representations of applied numbers are shown. Figure 5 Figure a shows the marking graphic area of a calibration plate 11. Figure 5 Figure b is Figure 5 The table shows the coding identifiers corresponding to the marked graphic areas shown in Figure a. Since the positioning area is composed of multiple marked graphics, that is, the coding identifiers of the positioning area are formed by combining the coding identifiers of multiple marked graphics, such as... Figure 5 The positioning area formed by the 3×3 logo shown in the box contains a combination of coded identifiers.
[0051] In some embodiments, the row and column information of the positioning area on the calibration plate 11 can be used to represent the position of each marker graphic within the positioning area on the calibration plate 11, or it can be used to represent the position of a target point within the positioning area on the calibration plate 11. The image coordinates of the positioning area on the calibration image can be used to represent the position of each marker graphic within the positioning area on the calibration image, or it can be used to represent the position of a target point within the positioning area on the calibration image. The target point can be a point within any marker graphic within the positioning area, and the marker graphic containing the target point is the target marker graphic. For example, if the target point is the midpoint of the positioning area, then the marker graphic in the center of the positioning area is the target marker graphic.
[0052] Based on this, a coded position mapping table is constructed by combining the coded identifiers of the calibration board positioning area with the row and column information of each marker graphic in the calibration board positioning area, or with the row and column information of a target point in the calibration board positioning area on the calibration board 11. Specifically, taking the construction of a mapping table between the coded identifiers of the positioning area and each marker graphic in the calibration board positioning area as an example, if the coded identifier of the positioning area is... The row and column information of each marker graphic in the positioning area on calibration plate 11 can be obtained from the encoded location mapping table. Taking the construction of a mapping table between the coding identifier combination of the positioning area and a target point (such as the center point) in the positioning area of the calibration board 11 as an example, if the coding identifier combination of the positioning area is... The coded position mapping table shows that the center of the positioning area on the calibration plate 11 has a row and column information of (2,2). Based on the row and column information of the positioning area on the calibration plate 11, the corresponding world coordinates can be obtained. It should be noted that the world coordinates are three-dimensional coordinates, which include depth information in addition to the row and column information. This depth information represents the distance between the camera 12 to be calibrated and the calibration plate 11, and it can be determined based on the distance between the camera 12 to be calibrated and the calibration plate 11 during the calibration process.
[0053] Step S301: Trigger the camera to be calibrated to acquire a calibration image including the calibration plate.
[0054] Specifically, the host 13 can trigger the camera 12 to acquire a calibration image of the calibration board 11, including the positioning area. The calibration image is an image of the calibration board 11 acquired by the camera 12, and may include a complete or partial image of the calibration board. The host 13 can send a shooting command to the camera 12 to trigger it to acquire the calibration image of the calibration board 11.
[0055] Furthermore, in some implementations of this application, multiple calibration images with rich coordinate information can be acquired using the camera at different positions, angles, or postures by adjusting at least one of the orientation of the calibration plate 11, the camera orientation, and the distance between the calibration plate 11 and the camera. It should be noted that for calibration without marker graphics, when the rotation angle of the calibration plate 11 exceeds 90°, feature points on the calibration plate 11 may be obscured or overlapped, making it impossible to accurately identify and extract image features, thus affecting the accuracy and precision of the calibration. Therefore, setting different marker graphics on the calibration plate 11 is beneficial for accurately identifying and locating the calibration plate 11 in the calibration images, further improving calibration accuracy.
[0056] Step S302: Select the positioning area of the calibration board in the calibration image according to the preset dimension, and identify each marker graphic in the positioning area to obtain the coded identifier combination of the positioning area and the image coordinates of the positioning area on the calibration image; wherein, the preset dimension is determined by the dimension of the coded identifier combination of the positioning area of the calibration board in the coded position mapping table.
[0057] The arrangement of the marker graphics within the positioning area is unique on the calibration plate 11, which is also unique on the calibration image. Therefore, after selecting the positioning area of the calibration plate 11 in the calibration image according to the preset dimensions, image recognition can be performed on each marker graphic within the positioning area in the calibration image to decode each marker graphic and obtain the encoded identifier of each marker graphic. Thus, based on the encoded identifiers of each marker graphic within the positioning area, the combination of encoded identifiers of the positioning area and the image coordinates of the positioning area on the calibration image can be obtained.
[0058] Step S303: Based on the combination of the coding identifiers of the positioning area and the coding position mapping table, obtain the row and column information of the positioning area on the calibration board to further obtain the world coordinates of the marker graphic of the positioning area or the entire calibration image on the calibration board. Use the world coordinates of the marker graphic of the positioning area or the entire calibration image on the calibration board and the image coordinates on the calibration image to calibrate the camera to be calibrated and obtain the calibration parameters of the camera to be calibrated.
[0059] In some embodiments, when constructing an encoded position mapping table by mapping the row and column information of a target point in the calibration plate positioning area on the calibration plate 11, the above step S303 may include the following steps:
[0060] Step S401: Calculate the image coordinates of the target point within the positioning area in the calibration image based on the image coordinates of the positioning area on the calibration image.
[0061] In this application, the target point can be a point within the positioning area, or it can be pre-set, such as setting the midpoint of the positioning area as the target point. The position of the target point in the positioning area on the calibration image can be used to represent the position of the positioning area on the calibration image.
[0062] Step S402: Use the combination of coded identifiers and the coded position mapping table of the positioning area in the calibration image to obtain the row and column information of the target point in the positioning area on the calibration board, and obtain the world coordinates of the target point in the positioning area on the calibration board. Start from the marker graphic where the target point is located and expand the search outward to obtain the world coordinates and image coordinates of the marker graphic of the positioning area or the entire calibration image.
[0063] Step S403: Based on the world coordinates of the marker graphic on the calibration plate and the image coordinates on the calibration image of the positioning area or the entire calibration image, calibrate the camera to be calibrated to obtain the calibration parameters of the camera to be calibrated.
[0064] In one specific embodiment, step S402 above may include:
[0065] Step S4021: Based on the marker graphics within the positioning area and the target points within the positioning area, determine the target marker graphics corresponding to the target points within the positioning area.
[0066] Step S4022: Determine the world coordinates of the target point in the positioning area on the calibration board by using the combination of the coding identifiers of the positioning area, the coding identifiers corresponding to the target mark graphics, and the coding position mapping table.
[0067] Figure 6 The image shows a calibration board 11 and its corresponding encoding identifier table in one embodiment. Figure 6 The figure in diagram a includes location area A. Figure 6Figure b in the diagram includes a coded identifier combination B, which consists of the coded identifiers corresponding to the various marker graphics within positioning area A on calibration plate 11. The coded identifiers corresponding to the various marker graphics within the positioning area can form a coded identifier combination; for example, it could be... Figure 6 The code identifier combination B is located in the b-figure. Therefore, the code identifier combination of the positioning area is searched in the code location mapping table until a matching code identifier is found, so as to obtain the row and column information of the target point in the positioning area on the calibration plate 11, thereby further obtaining the world coordinates of the target point.
[0068] Step S4023: Starting from the marker graphic where the target point is located, expand the search outward to obtain the world coordinates and image coordinates of the marker graphic in the positioning area or the entire calibration image.
[0069] Specifically, after obtaining the target image coordinates of the current target point, step S403 further includes expanding the search outward from the marker graphic where the target point is located, thereby decoding the remaining marker graphics to obtain the relative positional relationship between the remaining marker graphics and the current target point on the calibration image. Based on the relative positional relationship between the marker graphic where the target point is located and the remaining marker graphics, and the row and column information of the marker graphic where the target point is located on the calibration plate 11, the row and column information of the remaining marker graphics on the calibration plate 11 is obtained, so as to further obtain the world coordinates of the remaining marker graphics, such as obtaining the world coordinates of the marker graphics within the positioning area or the marker graphics of the entire calibration image.
[0070] To facilitate understanding of the above extended search steps, we will use traversing the entire calibration image as an example.
[0071] Figure 7 This embodiment illustrates a calibration image, a coded identifier table obtained based on the calibration image, a positioning region C in the calibration image, and the positioning center D (i.e., the target point) of the positioning region C. The coded identifier combination C of the positioning region C in the calibration image is identified and searched in the coded position mapping table to obtain the row and column information of the positioning center D of the current positioning region C on the calibration board 11. Starting from the marker graphic where the positioning center D is located, a breadth-first search is used to gradually grow outward (e.g., searching around with a step size of 1), traversing the entire calibration image. The remaining marker graphics are decoded to obtain the relative positional relationship between the remaining marker graphics and the current positioning center D on the calibration image, thus obtaining the image coordinates of the remaining marker graphics on the calibration image. Based on the relative positional relationship between the remaining marker graphics and the current positioning center D on the calibration image and the row and column information of the current positioning center D on the calibration board 11, the row and column information of the remaining marker graphics on the calibration board 11 is obtained. Based on the marker graphic where the positioning center D is located and the row and column information of the remaining marker graphics on the calibration board 11, the world coordinates of the entire calibration image marker graphics are obtained.
[0072] In one embodiment, multiple positioning regions can be selected from the calibration image, with the world coordinates of the target points in each positioning region representing the world coordinates of the entire positioning region. The camera 12 to be calibrated is then calibrated by obtaining the world coordinates and image coordinates of the target points in the multiple positioning regions. Specifically, the world coordinates of the target points corresponding to each positioning region on the calibration plate 11 are determined using the combination of coded identifiers of multiple positioning regions, the coded identifiers corresponding to the target graphics, and the coded position mapping table. This yields the world coordinates and image coordinates of the target points in each positioning region, and the camera 12 to be calibrated is then calibrated based on the world coordinates and image coordinates of the multiple target points corresponding to the multiple positioning regions, thus obtaining the calibration parameters of the camera 12 to be calibrated.
[0073] In other specific embodiments, when constructing a coding position mapping table using the combination of coded identifiers in the calibration board positioning area and the row and column information of each marker graphic in the calibration board positioning area, the above step S303 may include the following steps:
[0074] Step S501: Obtain the image coordinates of each marker graphic in the positioning area on the calibration image, and identify the corresponding code identifier of each marker graphic in the positioning area in the calibration image to obtain the code identifier of each marker graphic in the positioning area.
[0075] The positioning region can be composed of a portion of the calibration plate 11 within the calibration image. A portion means that the marker graphic area within the positioning region is only a part of the marker graphics within the calibration image. Specifically, image recognition can be used to identify each marker graphic within the positioning region of the calibration plate 11 in the calibration image, obtaining the coded identifier of the marker graphic within the positioning region. After obtaining the positioning regions of each marker graphic within the positioning region, the coded identifier combination corresponding to the positioning region is determined based on the coded identifiers corresponding to different types of marker graphics. It should be noted that the positioning region can also be composed of the entire region of the calibration plate 11 within the calibration image. However, compared to being composed of a portion of the calibration plate 11 within the calibration image, having the entire region of the calibration plate 11 within the calibration image results in a larger computational load and lower calibration efficiency when identifying the position of the calibration plate 11 using the positioning region.
[0076] Step S502: Determine the combination of coded identifiers for the positioning area based on the coded identifiers of each marker graphic within the positioning area, and obtain the world coordinates of each marker graphic within the positioning area on the calibration board using the combination of coded identifiers and the coded position mapping table.
[0077] Since the coding location mapping table is constructed by mapping the coding identifier combination of the positioning area of the calibration board to the row and column information of each mark graphic in the positioning area of the calibration board, after determining the coding identifier combination of the positioning area, the coding location mapping table can be directly searched to obtain the matching coding identifier, thereby obtaining the row and column information of each mark graphic in the positioning area on the calibration board 11, so as to further obtain the world coordinates of each mark graphic in the positioning area on the calibration board 11.
[0078] Step S503: Use the image coordinates of each marker in the positioning area of the calibration image and the world coordinates of each marker in the positioning area on the calibration plate to calibrate the camera to be calibrated, and obtain the calibration parameters of the camera to be calibrated.
[0079] Furthermore, when the positioning area can be composed of a portion of the calibration plate 11 within the calibration image, multiple positioning areas can be selected from the calibration image to obtain the world coordinates of all the marker graphics in the calibration image on the calibration plate 11. Specifically, the coded identifier combination of each positioning area is obtained and searched in the coded position mapping table to obtain the world coordinates and image coordinates of the target point in each positioning area. Thus, by combining the positioning areas, the image coordinates of all the marker graphics in the calibration image and their world coordinates on the calibration plate 11 are obtained.
[0080] Compared to calibrating the camera based on the world coordinates of the target points within the positioning area on the calibration board 11 and the target image coordinates of the target points within the positioning area on the calibration image, calibrating the camera based on the image coordinates of each marker graphic within the calibration image on the calibration image and the world coordinates of each marker graphic within the calibration image on the calibration board 11 can obtain the world coordinates and image coordinates of multiple marker graphics at once, which is more beneficial for camera calibration. Furthermore, by performing an extended search of the positioning area to obtain the coded identifier combination corresponding to the complete calibration image, and thus determining the position of the calibration image on the calibration board 11, the position of each marker graphic within the calibration image on the calibration board 11 can be obtained with less computation.
[0081] In summary, this embodiment of the application acquires a calibration image containing the positioning area, determines the positioning area of the calibration image, determines the world coordinates of the positioning area on the calibration plate 11, and calibrates the camera 12 to be calibrated based on the image coordinates of the positioning area in the calibration image. This allows the calibration parameters of the camera 12 to be calibrated to be obtained without taking a complete image of the calibration plate during camera calibration.
[0082] The beneficial effects of this application embodiment compared with the prior art are as follows: By triggering the camera to acquire a calibration image of the calibration plate 11, the positioning area on the calibration plate 11 in the calibration image is determined, and then the camera is calibrated based on the world coordinates of the positioning area on the calibration plate 11 and the image coordinates of the positioning area in the calibration image. This application embodiment acquires a calibration image containing the positioning area, determines the positioning area of the calibration image, determines the world coordinates of the positioning area on the calibration plate 11, and calibrates the camera based on the image coordinates of the positioning area in the calibration image. Therefore, this application embodiment does not require capturing a complete calibration plate image during camera calibration.
[0083] Figure 8 This application provides a system structure diagram of a calibration device 7 according to an embodiment. The calibration device 7 can be configured on a terminal device. Specifically, the calibration device 7 may include:
[0084] The construction module 700 is used to encode and identify each mark graphic on the calibration board 11 to obtain the encoding and identification combination of the calibration board positioning area. Based on the mapping relationship between the encoding and identification combination of the calibration board positioning area and the row and column information of the positioning area on the calibration board 11, an encoding position mapping table is constructed.
[0085] Trigger module 701 is used to trigger the camera 12 to be calibrated to acquire a calibration image including the calibration plate 11 of the positioning area;
[0086] The acquisition module 702 is used to select the positioning area of the calibration plate 11 in the calibration image according to a preset dimension, and identify each marker graphic in the positioning area to obtain the coded identifier combination of the positioning area and the image coordinates of the positioning area on the calibration image; wherein, the preset dimension is determined by the coded identifier combination of the positioning area of the calibration plate in the coded position mapping table;
[0087] The calibration module 703 is used to obtain the row and column information of the positioning area on the calibration plate 11 based on the combination of the coding identifiers of the positioning area and the coding position mapping table, so as to further obtain the world coordinates of the positioning area on the calibration plate 11. The world coordinates of the positioning area on the calibration plate 11 and the image coordinates on the calibration image are used to calibrate the camera 12 to be calibrated to obtain the calibration parameters of the camera 12 to be calibrated.
[0088] It should be noted that the information interaction and execution process between the above-mentioned devices / modules are based on the same concept as the method embodiments of this application. For details on their specific functions and technical effects, please refer to the method embodiments section, and they will not be repeated here.
[0089] like Figure 9The diagram shown is a schematic of a terminal device provided in an embodiment of this application. The terminal device 8 may include: a processor 801, a memory 802, and a computer program 803 stored in the memory 802 and executable on the processor 801, such as a calibration program. When the processor 801 executes the computer program 803, it implements the steps in the various calibration method embodiments described above, for example... Figure 4 Steps S300 to S303 are shown. Alternatively, when the processor 801 executes the computer program 803, it implements the functions of each module / unit in the above-described device embodiments, for example... Figure 8 The shown modules are: 700 (construction module), 701 (trigger module), 702 (acquisition module), and 703 (calibration module).
[0090] The computer program can be divided into one or more modules / units, which are stored in the memory 802 and executed by the processor 801 to complete this application. The one or more modules / units can be a series of computer program instruction segments capable of performing specific functions, which describe the execution process of the computer program in the terminal device.
[0091] The terminal device may include, but is not limited to, a processor 801 and a memory 802. Those skilled in the art will understand that... Figure 9 This is merely an example of a terminal device and does not constitute a limitation on the terminal device. It may include more or fewer components than shown, or combine certain components, or different components. For example, the terminal device may also include input / output devices, network access devices, buses, etc.
[0092] The processor 801 may be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor.
[0093] The memory 802 can be an internal storage unit of the terminal device, such as a hard drive or memory. The memory 802 can also be an external storage device of the terminal device, such as a plug-in hard drive, Smart Media Card (SMC), Secure Digital (SD) card, or Flash Card. Furthermore, the memory 802 can include both internal and external storage units. The memory 802 is used to store the computer program and other programs and data required by the terminal device. The memory 802 can also be used to temporarily store data that has been output or will be output.
[0094] It should be noted that, for the sake of convenience and brevity, the structure of the terminal device described above can also be referred to the specific description of the structure in the method embodiment, which will not be repeated here.
[0095] This application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps described in the various method embodiments above.
[0096] This application provides a computer program product that, when run on a mobile terminal, enables the mobile terminal to implement the steps described in the above-described method embodiments.
[0097] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0098] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is used as an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. Furthermore, the specific names of the functional units and modules are only for easy differentiation and are not intended to limit the scope of protection of this application. The specific working process of the units and modules in the above system can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here. Those skilled in the art will recognize that the units and algorithm steps of the examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware or a combination of computer software and electronic hardware. Whether these functions are executed in hardware or software depends on the specific application and design constraints of the technical solution. Skilled professionals may use different methods to implement the described functions for various specific applications, but such implementation should not be considered beyond the scope of this application.
[0099] In the embodiments provided in this application, it should be understood that the disclosed devices / terminal equipment and methods can be implemented in other ways. For example, the device / terminal equipment embodiments described above are merely illustrative. For instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual coupling or direct coupling or communication connection may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.
[0100] If the integrated module / unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments can also be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include: any entity or device capable of carrying the computer program code, recording media, USB flash drives, portable hard drives, magnetic disks, optical disks, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the content included in the computer-readable medium can be appropriately added or removed according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, computer-readable media do not include electrical carrier signals and telecommunication signals.
[0101] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.
Claims
1. A calibration system for acquiring calibration parameters of a camera to be calibrated, characterized in that, include: The calibration plate includes a body with multiple positioning areas, each positioning area including at least two types of marker graphics, and the arrangement of the marker graphics in each positioning area is unique on the calibration plate; The host is used to receive a calibration image containing the calibration board acquired by the camera to be calibrated, and to process the calibration image according to a preset calibration method to obtain the image coordinates of the mark graphic on the calibration image and the world coordinates on the calibration board. The host combines the world coordinates of the mark graphic on the calibration board and the corresponding image coordinates of the mark graphic to calibrate the camera to be calibrated to obtain the calibration parameters of the camera to be calibrated. The preset calibration method includes: The calibration board is coded and identified to obtain the coded identifier combination of the calibration board positioning area. Based on the mapping relationship between the coded identifier combination of the calibration board positioning area and the row and column information of the positioning area on the calibration board, a coded position mapping table is constructed. Trigger the camera to be calibrated to acquire a calibration image including the calibration plate; The calibration plate is selected in the calibration image according to a preset dimension, and each marker graphic in the positioning area is identified to obtain the coded identifier combination of the positioning area and the image coordinates of the positioning area on the calibration image; wherein, the preset dimension is determined by the coded identifier combination dimension of the positioning area of the calibration plate used in the coded position mapping table; Based on the coded identifier combination of the positioning area and the coded position mapping table, the row and column information of the positioning area on the calibration board is obtained to further obtain the world coordinates of the marker graphic of the positioning area or the entire calibration image on the calibration board. Using the world coordinates of the marker graphic of the positioning area or the entire calibration image on the calibration board and the image coordinates on the calibration image, the camera to be calibrated is calibrated to obtain the calibration parameters of the camera to be calibrated.
2. The calibration system as described in claim 1, characterized in that, The at least two types of sign graphics include pattern styles, number of patterns, and / or, marking patterns with different pattern colors.
3. The calibration system as described in claim 2, characterized in that, The at least two types of logo graphics include any one or more of the following: white background with black concentric circles logo graphics, black background with white concentric circles logo graphics, white background with black circles logo graphics, and black background with white circles logo graphics.
4. A calibration method, characterized in that, The calibration system is applied to a calibration system comprising: a calibration plate, the calibration plate including a body having multiple positioning areas, each positioning area including at least two types of marker graphics, and the arrangement of the marker graphics in each positioning area being unique on the calibration plate; the calibration method comprising: The calibration board is coded and identified to obtain the coded identifier combination of the calibration board positioning area. Based on the mapping relationship between the coded identifier combination of the calibration board positioning area and the row and column information of the positioning area on the calibration board, a coded position mapping table is constructed. Trigger the camera to be calibrated to acquire a calibration image including the calibration plate; The calibration plate is selected in the calibration image according to a preset dimension, and each marker graphic in the positioning area is identified to obtain the coded identifier combination of the positioning area and the image coordinates of the positioning area on the calibration image; wherein, the preset dimension is determined by the coded identifier combination dimension of the positioning area of the calibration plate used in the coded position mapping table; Based on the coded identifier combination of the positioning area and the coded position mapping table, the row and column information of the positioning area on the calibration board is obtained to further obtain the world coordinates of the marker graphic of the positioning area or the entire calibration image on the calibration board. Using the world coordinates of the marker graphic of the positioning area or the entire calibration image on the calibration board and the image coordinates on the calibration image, the camera to be calibrated is calibrated to obtain the calibration parameters of the camera to be calibrated.
5. The calibration method according to claim 4, characterized in that, The step of constructing a coding position mapping table based on the mapping relationship between the coding identifier combination of the calibration board positioning area and the row and column information of the positioning area on the calibration board includes: constructing the coding position mapping table by using the coding identifier combination of the calibration board positioning area and the row and column information of each marker graphic in the calibration board positioning area or the row and column information of a target point in the calibration board positioning area on the calibration board; wherein, the target point can be a point within any marker graphic in the positioning area.
6. The calibration method as described in claim 5, characterized in that, When an coded position mapping table is constructed by mapping the row and column information of a target point in the calibration plate location area to the calibration plate, the row and column information of the location area on the calibration plate is obtained based on the coded identifier combination of the location area and the coded position mapping table to further obtain the world coordinates of the marker graphic of the location area or the entire calibration image on the calibration plate. The world coordinates of the marker graphic of the location area or the entire calibration image on the calibration plate and the image coordinates on the calibration image are used to calibrate the camera to be calibrated to obtain the calibration parameters of the camera to be calibrated, including: Based on the image coordinates of the positioning area on the calibration image, calculate the image coordinates of the target point within the positioning area in the calibration image; By using the combination of the coded identifiers of the positioning area in the calibration image and the coded position mapping table, the row and column information of the target point in the positioning area on the calibration board is obtained, and the world coordinates of the target point in the positioning area on the calibration board are obtained. Starting from the marker graphic where the target point is located, the search is expanded outward to obtain the world coordinates and image coordinates of the marker graphic of the positioning area or the entire calibration image. The camera to be calibrated is calibrated based on the world coordinates of the marker graphic on the calibration plate and the image coordinates on the calibration image of the positioning area or the entire calibration image, thereby obtaining the calibration parameters of the camera to be calibrated.
7. The calibration method as described in claim 5, characterized in that, When an coded position mapping table is constructed using the mapping relationship between the row and column information of a target point in the calibration plate's positioning area, the row and column information of the positioning area on the calibration plate is obtained based on the coded identifier combination of the positioning area and the coded position mapping table to further obtain the world coordinates of the positioning area on the calibration plate. The camera to be calibrated is then calibrated using the world coordinates of the positioning area on the calibration plate and the image coordinates on the calibration image to obtain the calibration parameters of the camera to be calibrated, including: Using the world coordinates of the target point in the positioning area to represent the world coordinates of the entire positioning area, multiple positioning areas are selected from the calibration image; By using the combination of the coded identifiers of the multiple positioning regions and the coded position mapping table, the world coordinates of the target points corresponding to each positioning region on the calibration board are determined, thereby obtaining the world coordinates and image coordinates of the target points of each positioning region. The camera to be calibrated is calibrated based on the world coordinates and image coordinates of multiple target points corresponding to the multiple positioning areas, and the calibration parameters of the camera to be calibrated are obtained.
8. The calibration method as described in claim 5, characterized in that, When a coding position mapping table is constructed using the coding identifier combination of the positioning area on the calibration board and the row and column information of each marker graphic in the positioning area of the calibration board, the row and column information of the positioning area on the calibration board is obtained based on the coding identifier combination of the positioning area and the coding position mapping table. This further obtains the world coordinates of the marker graphics of the positioning area or the entire calibration image on the calibration board. Using the world coordinates of the marker graphics of the positioning area or the entire calibration image on the calibration board and the image coordinates on the calibration image, the camera to be calibrated is calibrated to obtain the calibration parameters of the camera to be calibrated, including: The image coordinates of each marker graphic in the positioning area on the calibration image are obtained, and the coded identifiers corresponding to each marker graphic in the positioning area in the calibration image are identified to obtain the coded identifiers of each marker graphic in the positioning area. Based on the coded identifiers of each marker graphic within the positioning area, the coded identifier combination of the positioning area is determined, and the world coordinates of each marker graphic within the positioning area on the calibration board are obtained using the coded identifier combination of the positioning area and the coded position mapping table. The camera to be calibrated is calibrated using the image coordinates of the marker graphic in the positioning area or the entire calibration image and the world coordinates on the calibration plate, thereby obtaining the calibration parameters of the camera to be calibrated.
9. A calibration device, characterized in that, The calibration device is configured in a calibration system, which includes a calibration plate. The calibration plate includes a body with multiple positioning areas, each positioning area including at least two types of marker graphics, and the arrangement of the marker graphics in each positioning area is unique on the calibration plate. The calibration device includes: The construction module is used to encode and identify each mark graphic on the calibration board to obtain the encoding identifier combination of the calibration board positioning area, and to construct an encoding position mapping table based on the mapping relationship between the encoding identifier combination of the calibration board positioning area and the row and column information of the positioning area on the calibration board; The trigger module is used to trigger the camera to be calibrated to acquire a calibration image including the calibration board; The acquisition module is used to select the positioning area of the calibration board in the calibration image according to a preset dimension, and identify each marker graphic in the positioning area to obtain the coded identifier combination of the positioning area and the image coordinates of the positioning area on the calibration image; wherein, the preset dimension is determined by the coded identifier combination dimension of the positioning area of the calibration board used in the coded position mapping table; The calibration module is used to obtain the row and column information of the positioning area on the calibration board based on the coded identifier combination of the positioning area and the coded position mapping table, so as to further obtain the world coordinates of the marker graphic of the positioning area or the entire calibration image on the calibration board, and use the world coordinates of the marker graphic of the positioning area or the entire calibration image on the calibration board and the image coordinates on the calibration image to calibrate the camera to be calibrated to obtain the calibration parameters of the camera to be calibrated.
10. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the calibration method as described in any one of claims 4 to 8.