Apparatus and computer-implemented method for calibrating a system
The apparatus and method provide high-accuracy geometric calibration of imaging systems by using strategically arranged calibration objects on a substrate, enhancing image quality and measurement precision with reduced computational effort.
Patent Information
- Application Number
- JP2025517987
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-09-27
- Filing Date
- 2023-09-27
- Publication Date
- 2025-09-29
AI Technical Summary
Existing imaging systems, particularly in computed tomography, face challenges in accurately determining geometric calibration parameters with high computational efficiency, leading to image errors and measurement inaccuracies.
An apparatus and method using a substrate with specific arrangements of calibration objects at vertices, edges, and surface elements, allowing for high-accuracy determination of detector parameters through known relationships between these subsets, and a computer-implemented method to identify and optimize test calibrations.
Enables accurate calibration of imaging systems with reduced computational effort, improving image quality and measurement precision by minimizing geometric calibration errors.
Smart Images

Figure 2025532247000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to an apparatus and computer-implemented method for calibrating a system that generates at least one image of an object. [Background technology]
[0002] The system for generating at least one image of an object can be used in different fields. In the example of workpiece inspection, manufactured workpieces can be inspected using optical methods, for example, to compare the surface of the manufactured workpiece with target parameters. Furthermore, transmission measurements, such as measurements by computer tomography, can be used to inspect manufactured workpieces, for example for dimensional measurements.
[0003] To perform an inspection, calibration of the imaging system is necessary. In particular, for scans using computed tomography, especially in the case of robotic CT, geometric calibration is required. In the case of a computed tomography system for generating an image of an object, geometric calibration refers to the relative geometric positioning and orientation of the components (radiation source, detector, and measurement object) for each recorded individual radiographic image. The geometric positioning and orientation of the components can also be referred to as the recording geometry. Furthermore, each recorded radiographic image can also be referred to as a projection image or projected image. In the case of an optical system, the recording geometry refers to the relative positioning and orientation of the camera and the object.
[0004] In order to be able to perform computed tomography reconstruction based on images, especially radiographic images, it is necessary to have a quantitative description of the recording geometry for each individual image as accurate as possible.Especially in the case of radiographic images, errors in geometric calibration cause image errors, such as blurred edges, double edges, distortions, etc., in the reconstructed volume data, and thus cause measurement errors when performing dimensional measurements or other analyses, such as defect analysis or pore analysis and porosity analysis.Even for the evaluation of radiographic images without tomographic reconstruction, geometric calibration may be important when multiple radiographic images are evaluated together, for example, to determine the spatial position of identified characteristics or identified features of the imaged object by observing them from various directions.Errors in geometric calibration also cause measurement errors here.
[0005] A quantitative description of the recording geometry of a radiographic image is achieved, for example, by determining nine parameters of a pinhole camera. In addition to a Euclidean camera reference system with the radiation source as the coordinate origin and the detector plane parallel to one of the coordinate planes, if a fixed but arbitrary Euclidean object reference system is selected across all recordings, three so-called intrinsic camera parameters describe the mapping of the three-dimensional coordinates of the camera reference system to the image coordinate system. The remaining six so-called extrinsic camera parameters describe the relative position and orientation of the camera and object reference systems. In this case, three of the six extrinsic camera parameters determine translation vectors that describe the relative position of the camera and object reference systems. The other three extrinsic camera parameters determine rotations that describe the relative orientation of the camera and object reference systems. The set of extrinsic camera parameters is also referred to as pose. These camera parameters may also be referred to below under the term detector parameters.
[0006] Thus, by determining the intrinsic and extrinsic camera parameters, it is determined how each point of the object to be mapped, described by its three-dimensional coordinates in the object reference system, should be mapped to a pixel in the image or radiographic image. As already explained above, this pose, which includes six camera parameters, describes the mapping of three-dimensional coordinates from the object reference system to three-dimensional coordinates in the camera reference system. The intrinsic camera parameters describe how these three-dimensional coordinates in the camera reference system are mapped to two-dimensional coordinates (which may also be called pixel coordinates) in the image.
[0007] In particular, in the general case involving a complex trajectory of a robotic CT, there is a unique set of nine camera parameters that must be determined for each individual radiographic image. Therefore, through reconstruction, the object volume for that set in the radiographic image of the measured object can be reconstructed based on these camera parameters. In this case, the camera parameters serve as calibration parameters.
[0008] It is known to carry out so-called offline calibration, in which a dedicated phantom is imaged or irradiated in advance or afterwards in all the required recording geometries. That is, for each image or each radiographic image of the object to be measured, an image or radiographic image of the phantom is also recorded under the same recording geometry as far as possible. By analyzing the image or radiographic image of the phantom, the recording geometry of each image or each radiographic image of the object to be measured is determined or estimated.
[0009] In the following, the term "image" also refers to a radiographic image.
[0010] US Patent No. 10,977,839 discloses a phantom in which the individual spheres are arranged along a straight line. For each of the four spheres, a numerical descriptor is calculated that is invariant to a two-dimensional projection. This descriptor is therefore constant in all projections in which the spheres are recognizable. This allows for the creation of a correspondence between two-dimensional coordinates of the image and three-dimensional coordinates. This, in turn, allows for the estimation of intrinsic and extrinsic camera parameters. These estimated camera parameters can then be optimized to obtain an accurate calibration. Summary of the Invention [Problem to be solved by the invention]
[0011] It is an object of the present invention to provide an apparatus and a method for calibrating a system for producing at least one image of an object, which allows detector parameters to be determined with high accuracy and with a relatively low computational effort. [Means for solving the problem]
[0012] The main features of the invention are set out in claims 1, 9 and 14. Embodiments are the subject of claims 2-8 and 10-13.
[0013] An apparatus for calibrating a system that generates at least one image of an object, the apparatus comprising a plurality of calibration objects and a substrate having vertices and outer edges extending between the vertices and defining surface elements, wherein a first subset of the calibration objects is arranged on the vertices of the substrate. In the apparatus, according to the present invention, it is envisaged that a second subset of the calibration objects is arranged on the outer edges between the vertices and a third subset of the calibration objects is arranged between the outer edges on the surface elements.
[0014] Thus, the present invention provides an apparatus capable of determining estimates of detector parameters based on known relationships between various calibration object subsets, between the subsets, and within the subsets. In the case of radiographic measurements, the calibration object has absorption characteristics for the radiographic measurement beam that differ from the absorption characteristics of the substrate. Furthermore, the calibration object is preferably three-dimensional. The calibration objects of a first subset, located at the vertices of the surface elements, represent parameters for the general shape of the surface elements. Between the vertices, preferably, linear outer edges extend, on which the calibration objects of a second subset are located. In this way, the contours of the surface elements are displayed in an inspectable manner by the first and second subsets of the calibration objects in the image. Therefore, when determining or estimating the detector parameters, the surface elements to be mapped in at least one image of the apparatus can be determined by taking into account or using the known positional relationships between the calibration object and at least the first and second subsets. If the surface element is, for example, a triangle, it can be checked whether a further calibration object is located on the connecting line between two of the three mapped calibration objects so that all triangles formed by each of the three mapped calibration objects in the image correspond to the periphery defined by the triangle. If this is not the case, the triangle checked in this way is discarded. Otherwise, there is a high probability that a mapped surface element of the device is present. To determine whether a mapped surface element is present, it can be checked whether the triangle has a calibration object of a third subset. This check can be simplified if it is known where the calibration objects of the third subset are located relative to the calibration objects of the other two subsets. Once the surface element is found, so-called initial estimates can be generated in succession using various test calibrations, whereby, for example, calculated test maps of the first and second subsets of the device's calibration objects can be transferred to the vertices or periphery of the mapped device. The test calibration corresponds to a mapping rule between the device and the mapped device.If the test calibration is incorrect, the calibration objects of the third subset are not transferred to the correct positions within the surface element. Only if a correct test calibration is found are all calibration objects properly mapped. This test calibration can then be further optimized to obtain an accurate calibration. Thus, the present invention provides an apparatus that can determine detector parameters with high accuracy with relatively little computational effort.
[0015] According to one example, the positioning of the calibration objects of the third subset relative to the calibration objects of the first and second subsets may differ between at least two of the surface elements.
[0016] In this example, the calibration objects in the third subset can encode a particular arrangement of the surface elements relative to one another, and in particular, if all of the surface elements have the same shape or contour, the third subset can be used to identify the particular arrangement of the surface elements relative to one another in an image of the device.
[0017] In a further example, each outer edge may have at most one calibration object assigned to the second subset of calibration objects, and / or the second subset of calibration objects may be centered between the vertices on each outer edge.
[0018] In this case, at most one calibration object of the second subset may be arranged between the calibration objects of the first subset. This reduces or, ideally, completely avoids the number of overlaps in the mapping of the calibration objects. Similarly, determining the surface elements is easier if the calibration objects of the second subset are arranged centered between the vertices on the periphery. This means that the calibration objects of the second subset have the same distance, within a tolerance, from the two vertices of the periphery on which they are arranged.
[0019] Furthermore, the calibration objects may be arranged, for example, in at least two planes, where each plane has a plurality of at least four calibration objects, and where preferably only some of these planes are parallel to each other.
[0020] The various planes can be defined, for example, by various surface elements, which can form different and / or opposing sides of the substrate. The more calibration objects that are arranged in a plane, the easier it is to identify each plane.
[0021] In a further example, the planes may be non-parallel to one another. The surface elements to which the planes are assigned may have a common outer edge, for example, at the cutting edge of the plane. Furthermore, the substrate may have surface elements on two opposing sides that are arranged non-parallel to one another, for example.
[0022] According to another example, each surface element may have at least two, preferably at least three, and even more preferably at least four predefined positions internally, wherein each surface element is assigned a calibration object of a third subset of the calibration objects, the calibration object being located at one of the predefined positions, and the other predefined positions, preferably at least two, more preferably at least three, and even more preferably at least four, may be free of calibration objects, wherein even more preferably as large a subset of the predefined positions as possible, or even the entire set of predefined positions, may be invariant under all symmetry transformations of the surface element.
[0023] For example, the four predefined positions become the center points of four triangles, which may in some cases become equilateral triangles excluding the sides, and the sum of these becomes the surface element.
[0024] The calibration objects can thus be effectively used to encode individual vertices of the surface elements. Therefore, the distribution of the calibration objects of the third subset at predefined locations can be configured such that the placement of the calibration objects allows for an unambiguous assignment of the surface elements. That is, each orientation of the device has a unique distribution of the calibration objects of the third subset. This can lead to a reliable determination of a correct test calibration.
[0025] In a further example, the first and second subsets of calibration objects in each surface element may have the same relative positioning with respect to each other.
[0026] The uniform placement of the calibration objects of the first and second subsets relative to one another can facilitate identification of surface elements in the image, which can then be made even easier to identify because the surface elements will all have the same shape and size.
[0027] Furthermore, the surface elements may be, for example, triangular faces, preferably isosceles triangular faces, more preferably equilateral triangular faces, and / or the substrate may be, for example, a polyhedron, preferably a regular polyhedron, more preferably a regular icosahedron.
[0028] Triangles are also mapped to triangles in the perspective projection, which therefore simplifies the identification of surface elements in the image as well: in particular, triangles of the device are mapped to triangles in the image.
[0029] In other examples, the substrates may be irregularly shaped substrates whose symmetry groups contain only identity transformations.
[0030] For example, the third subset of calibration objects may have no symmetry with respect to the substrate under Euclidean space transformation, i.e., completely destroy the symmetry of the substrate.
[0031] This allows the orientation of the device to be easily determined from the image, or the test calibration calculations to be more reliable.
[0032] According to a further example, the subsets of calibration objects may differ from one another in shape and / or size, and may preferably be formed as spheres.
[0033] This makes it easy to assign the images of the calibration object to the individual subsets.
[0034] The present invention further provides a computer-implemented method for calibrating a system that generates at least one image of an object using an apparatus according to the above description, wherein each surface element has a shape, wherein object position data of calibration objects within the apparatus relative to one another is known, and wherein object position data of a third subset of calibration objects is differentiated between at least two surface elements relative to object position data of the first and second subsets of calibration objects, the method comprising the steps of: providing at least one image of the apparatus using the system, wherein the calibration objects in the at least one image are mapped to image calibration objects; determining image position data of all visible image calibration objects in the at least one image; identifying image surface elements of the apparatus mapped in the at least one image using the determined image position data, the shape of the surface elements, and the object position data of at least the first and second subsets of calibration objects, wherein image vertices and image edges are determined using the identified image surface elements; selecting a test calibration, wherein in the test mapping, object position data of a first subset of the calibration objects is mapped to image vertices and object position data of a second subset of the calibration objects is mapped to image edges; determining test image position data of a third subset of the calibration objects using the test calibration; comparing the test image position data with the image position data of the third subset of the calibration objects; and determining whether the test image position data and the image position data of the third subset of the calibration objects correlate within a predefined tolerance range. repeating the steps of: selecting a modified test calibration, wherein in the test mapping, object position data of the first and second subsets of calibration objects are mapped to image vertices and object position data of the second subset of calibration objects are mapped to image edges within the image; determining test image position data for a third subset of calibration objects; and comparing the test image position data with the image position data of the third subset of calibration objects and the modified test calibration, untilComputer-implemented methods.
[0035] In a method according to the present invention, an apparatus according to the above description is used to calibrate a system that generates at least one image of an object. The object position data of the calibration object here represents the positioning of the calibration object within the apparatus. Here, the object position data of the calibration objects relative to one another is known. Between various surface elements of the apparatus, the object position data of the calibration objects of the third subset relative to the object position data of the calibration objects of the first and second subsets is different. That is, the object position data of the calibration objects of the first and second subsets relative to one another may be the same for each surface element. However, for at least two various surface elements, the object position data of the calibration objects of the third subset relative to the object position data of the calibration objects of the first and second subsets is different. Thus, for example, in a first surface element, the calibration objects of the third subset may be positioned centrally between the calibration objects of the first and second subsets. In the second surface element, the corresponding calibration objects of the third subset may be arranged, for example, offset from the center point.
[0036] To calibrate the system, at least one image of the device is first generated using a computer-implemented method, which can be provided, for example, using a file on a storage medium, by data transfer from another computer or other method, or directly. This system can be used to generate the at least one image. In the at least one image, the calibration object is mapped onto an image calibration object. The term "image calibration object" is used hereinafter synonymously with the calibration object of the device mapped into the image. The at least one image here is typically a two-dimensional image, for example a projected or optical representation of the device. However, this does not exclude that the at least one image can be a three-dimensional image.
[0037] Then, image position data of the visible image calibration object is determined in at least one image. To save computational effort, image position data of the visible image calibration object can be determined first in only one image and then used in subsequent steps. However, this does not exclude determining and further using image position data of the visible image calibration object in several or all provided images.
[0038] To determine the image position data, known image analysis methods can be used to identify image calibration objects in an image. Furthermore, the center points of the image calibration objects can be determined with high accuracy. If the calibration objects are, for example, spherical, they are mapped to ellipses in the image. For this purpose, the center points of the ellipses can then be determined to estimate the positions of the spherical center points in the image. These center points can then be considered to be, for example, perspective image points of the three-dimensional calibration object.
[0039] The following steps are used to assign the 3D object position data of the calibration object and the 2D image position data of the image calibration object to each other, i.e., to determine which image calibration object is a mapping of the corresponding calibration object from the device. The problem so described and subsequently solved is referred to herein and hereafter as the spherical correspondence problem.
[0040] For this purpose, image surface elements within the image are identified, using the determined image position data. Since the relative relationships between the object position data are known, this knowledge can be used to identify the image surface elements within the image. For example, if the surface elements have a triangular shape, with a first subset of calibration objects located at the vertices of the triangle and a second subset of calibration objects located between the vertices of the triangle's sides, then within the image, for example, three different image position data can be checked to see if they satisfy these relative relationships with each other and with further image position data. If these relationships are satisfied, the three image position data are likely located on the image vertices of the image surface element. Once an image surface element is found, the image perimeters of the image surface elements adjacent to this image surface element are also known. Based on this, the identification of further image surface elements can be simplified. Therefore, simultaneously with the identification of the image surface element, the image vertices and image perimeters can also be identified.
[0041] When the image surface elements, and thus the image vertices and image periphery, are known, the image calibration objects are assigned to at least three subsets of the calibration objects: the image calibration objects located on the image vertices are assigned as images of the first subset of the calibration objects; the image calibration objects located on the image periphery are assigned as images of the second subset of the calibration objects; and the remaining image calibration objects located within the image surface elements are assigned as images of the third subset of the calibration objects.
[0042] A test calibration is then selected, in which the object position data of the first or second subset is mapped to the image position data of the image calibration object assigned to the first or second subset in a test map. With a properly selected test calibration, the correspondence between all known image calibration objects and corresponding calibration objects is known based on the assumed correspondence between a few calibration objects and image calibration objects, for example, in the case of the assumed correspondence between only one surface element and a specific image surface element. The test calibration selection may be an estimate including intrinsic and extrinsic detector parameters. A test map can then be performed using the estimated detector parameters. This test map does not necessarily have to be performed in practice, but rather can be calculated or simulated. This allows the calibration objects of the first and second subsets to be used to construct a test calibration, and thus for the test calibration so constructed, it is checked whether the image position data of the image calibration object can be generated by mapping the object position data of the corresponding calibration object of the first or second subset, generated using the test calibration.
[0043] Since the test calibration is formed in such a way that at least a portion of the object position data of the calibration objects of the first and second subsets is mapped to a portion of the image position data of the corresponding image calibration objects, essentially the resulting test image position data must be determined, inter alia, from the object position data of the calibration objects of the third subset, which are then compared with the image position data of the image calibration objects of the third subset.
[0044] If the test image position data does not match the image position data of the third subset of calibration objects within a predefined tolerance, the test calibration is invalid and is discarded. The predefined tolerance can define the maximum possible deviation between the test image position data and the image position data of the third subset of calibration objects. If the surface elements are triangles, the predefined tolerance can be defined by using centroid triangle coordinates. To that extent, a modified test calibration is selected, and inspection using the above-mentioned test map is repeated until the position data of the test image matches the image position data of the third subset of calibration objects within the predefined tolerance.
[0045] In an alternative example of this method, all possible test calibrations are examined and then compared to each other to determine which test calibration is the most accurate.
[0046] From the test calibration thus obtained, the intrinsic and extrinsic detector parameters are sufficiently known to complete the calibration of the system, and at least one subset of object position data corresponding to a subset of image position data is then known, thereby solving the spherical correspondence problem.
[0047] Thus, according to the present invention, a method for calibrating a system for producing at least one image of an object is provided, which allows for determining detector parameters with high accuracy and with relatively little computational effort.
[0048] According to one example, if the test image position data and the image position data of the third subset of calibration objects are mapped to each other within a predefined tolerance range, the method further includes the following step: optimizing the test calibration using a nonlinear optimization method.
[0049] Nonlinear optimization methods can be used to increase the accuracy of the test calibration or calibration, where the determined geometric error is reduced more and more by adapting the determined test calibration to the currently known correspondence between the object position data and the image position data.
[0050] In a further example, the method may further include, prior to the step of selecting a test calibration, the step of determining intrinsic detector parameters using at least image position data of the image vertices and the image outer edge, wherein the step of selecting a test calibration may include the sub-step of determining extrinsic sample detector parameters using the determined intrinsic detector parameters of the image surface elements and the image position data of the image surface elements.
[0051] In this case, the intrinsic detector parameters are determined first before the extrinsic detector parameters are determined. This is particularly advantageous when the device has a high degree of symmetry. If the body of the device is formed, for example, as an icosahedron and the calibration objects of the first and second subsets are identically positioned on each surface element, the object position data of the calibration objects of the first subset form an equilateral triangle. This simplifies, on the one hand, the identification of the image surface elements. On the other hand, the determined image surface elements can be used to formulate an overdetermined equation system for the intrinsic detector parameters. This allows the intrinsic camera parameters to be determined or estimated with sufficient accuracy with little effort. Therefore, for the test calibration, only the extrinsic detector parameters need to be estimated as the extrinsic sample detector parameters. The estimation of the extrinsic sample detector parameters can thereby be performed based on the determined intrinsic detector parameters and the image position data of a single image surface element. It is particularly advantageous that only a single image of the object can be used to determine the test calibration, instead of having to use multiple or all available images to determine the test calibration. That is, the method works even if the images are not recorded in a connected trajectory, but rather in any order, or even if only one image is recorded, which is a major advantage, especially in cases where images of the object can only be obtained from fully specified positions, such as in robotic CT.
[0052] Determining the intrinsic detector parameters and determining the extrinsic sample detector parameters may also be performed by estimating the intrinsic detector parameters or the extrinsic sample detector parameters.
[0053] The method here may, for example, further comprise the step of: performing a bundle adjustment method on all images for which the intrinsic and extrinsic detector parameters have been determined.
[0054] Implementation of the bundle adjustment method makes it possible to compensate for deviations from the expected geometry of the device, i.e., deviations due to slightly off object position data of calibration objects in the device that occur when compared to target position data during device manufacture, or deviations due to temperature expansion.
[0055] Furthermore, the step of determining the intrinsic detector parameters using at least image position data of the image vertices and the image outer edge can be performed for all provided images, for example, before the step of determining the extrinsic detector parameters for each surface element using the determined intrinsic detector parameters.
[0056] In this way, the intrinsic detector parameters are optimized first before optimization of the extrinsic detector parameters is performed.
[0057] The invention further relates to the use of an apparatus according to the above description for calibrating a system for producing at least one image of an object.
[0058] Advantages, effects and developments of the use of the device will become apparent from the advantages, effects and developments of the device and possibly the computer-implemented method described above, and reference is therefore made in this respect to the preceding description.
[0059] In a further aspect, the invention relates to a computer program product comprising computer executable instructions which, when executed on a computer, cause the computer to carry out the method according to the above description.
[0060] Advantages, effects and developments of the computer program product will be apparent from the advantages, effects and developments of the method described above. In this respect, reference is therefore made to the above description. A computer program product can be understood to mean, for example, a data carrier on which computer program elements with computer-executable instructions are stored. Alternatively or additionally, a computer program product can also be understood to mean, for example, a permanent or volatile data memory, such as a flash memory or a main memory, with computer program elements. However, other types of data memory with computer program elements are not excluded.
[0061] Further features, details and advantages of the invention will become apparent from the claims and the following description of exemplary embodiments with reference to the drawings. [Brief explanation of the drawings]
[0062] [Figure 1] FIG. 2 is a schematic diagram showing the base of the device. [Figure 2] FIG. 1 is a schematic diagram showing a surface element with a calibration object. [Figure 3] 1 is a schematic diagram illustrating a system for generating at least one image of an object. [Figure 4a] FIG. 1 is a schematic diagram showing the mapping of the device. [Figure 4b] FIG. 1 is a schematic diagram showing the mapping of the device. [Figure 4c] FIG. 1 is a schematic diagram showing the mapping of the device. [Figure 5] FIG. 1 is a schematic diagram illustrating a graph of a computer-implemented method. DETAILED DESCRIPTION OF THE INVENTION
[0063] As shown in FIG. 1, in the following an apparatus for calibrating a system for producing at least one image of an object will be given the general reference number 10 .
[0064] The device 10 has a substrate 12, which in this example is formed as an icosahedron, with vertices 14 forming end pieces of a linear outer edge 16. The outer edge 16 surrounds surface elements 18, which in this example are formed as equilateral triangles. An example of a surface element 18 formed as an equilateral triangle is shown in FIG. 2.
[0065] Furthermore, the device comprises a number of calibration objects 20, 22, 24. The calibration objects 20, 22, 24 may be formed as spheres.
[0066] A first subset of calibration objects are located at vertices 14. These calibration objects are labeled with reference numeral 20.
[0067] A second subset of calibration objects are located on the outer edge 16. These calibration objects are labeled with the reference numeral 22. The second subset of calibration objects 22 may now be located on the outer edge 16, centered between the vertices 14.
[0068] A third subset of calibration objects is arranged on the surface element 18. These calibration objects are designated by the reference numeral 24. In this example, the calibration objects 24 of the third subset may be arranged internally on the surface element 18 at one of four predefined positions 26-32. The remaining predefined positions 26-32 may be free of calibration objects 20, 22, 24. The predefined position 26 may here be arranged at the center point of the surface element 18. The predefined positions 28-32 may be arranged outside the center point of the surface element 18 and offset with respect to a respective one of the vertices 14 of the surface element 18.
[0069] The apparatus 10 has at least two surface elements 18 in which the calibration objects 24 of each of the third subsets are positioned differently, i.e., the calibration objects 24 of the third subsets of the two surface elements 18 are positioned at different ones of the predefined positions.
[0070] Furthermore, the subset of predefined positions 26-32 may be invariant under all symmetry transformations of the surface elements 18. For example, if the vertices 14 are permuted, the subset of predefined positions 26-32 will be transformed relative to one another.
[0071] In this example, where the substrate 12 is shaped as an icosahedron, all surface elements 18 have the same shape, which is shown in Figure 2. Thus, the relative positions of the calibration objects 20 of the first subset and the relative positions of the calibration objects 22 of the second subset are the same for all surface elements 18 of the substrate 12. Only the relative positions of the calibration objects 24 of the various surface elements 18 with respect to the calibration objects 20, 22 of the first and second subsets may differ from one surface element to another.
[0072] Under Euclidean space transformation, the third subset of calibration objects 24 does not have symmetry, thereby interrupting the symmetry of the calibration object or substrate 12.
[0073] In this example, where the substrate 12 is shaped as an icosahedron, four surface elements 18 can be selected that are not adjacent to one another, and on these surface elements 18, the third subset of calibration objects 24 are located at positions 26 at the center points of the respective surface elements 18. Thus, each vertex 14 is adjacent to exactly one surface element 18 on which the third subset of calibration objects 24 is located at position 26.
[0074] On the remaining surface elements 18, the calibration objects 24 are positioned at respective ones of positions 28, 30, and 32. The distribution at positions 28, 30, and 32 is performed in such a way that if the calibration objects 24 of the third subset start from the surface element 18 positioned at position 26 and travel around one vertex 14 via the adjacent surface elements 18, a unique distribution at positions 28, 30, and 32 results with respect to the other vertices, regardless of the orientation of the distribution.
[0075] It is particularly advantageous if the various distributions are as distinct as possible.
[0076] Among the three subsets, the calibration objects 20, 22, 24 may differ from one another, for example, in their size or shape.
[0077] When the apparatus 10 is configured to calibrate a system in which images are produced by radiographic measurements, the absorption characteristics of the calibration objects 20, 22, 24 differ from the absorption characteristics of the substrate 12.
[0078] 3 shows a system 34 for generating at least one image of an object, which in this example comprises a radiation source 36 and a detector 38. The radiation source 36 is present here only in systems that perform radiographic measurements. If the system 34 generates an image using an optical beam, the radiation source 36 can be omitted.
[0079] For calibration of the system 34, the device 10 is positioned so that in the case of an optical beam the detector 38 detects the beam reflected by the device 10, and in the case of radiotransmission measurements the detector 38 detects the transmitted radiation.
[0080] If a radiation source 36 is present, it emits radiation in the direction of the device 10. The device 10 is therefore positioned between the radiation source 36 and the detector 38.
[0081] In the following, it is assumed that the system 34 performs radiographic measurements and is capable of generating corresponding images of the object, however, the following description also applies to systems in which images are generated by beams reflected from a surface.
[0082] A computer-implemented method 100 for calibrating a system configured to generate at least one image of an object can be used for calibrating the system 34. The apparatus 10 is used to perform the method 100. A flowchart of the method 100 is shown in FIG.
[0083] Using system 34, at least one image 40 of device 10 is generated in step 102 and can be provided to method 100, for example, directly or by reading from a file previously stored on a storage medium. Examples of image 40 are shown in Figures 4a-4c.
[0084] 4a, image 40 is shown as the result of a radiographic measurement of apparatus 10. Image 40 includes representations of apparatus calibration objects 20, 22, and 24, which will hereinafter be referred to as image calibration objects 42, 44, and 46. Because calibration objects 20, 22, and 24 are spherical, they are mapped as elliptical dark surfaces in image 40. Initially, it is unclear where in image 40 calibration objects 20, 22, and 24 image calibration objects 42, 44, and 46 are located.
[0085] Therefore, in step 104, image position data for image calibration objects 42, 44, 46 visible in the image is determined, which can be done, for example, using known edge detection techniques.
[0086] As image position data, preferably the center points of the mapped ellipsoids of the image calibration objects 42, 44, 46 are used.
[0087] As shown in Figure 4b, in step 106, image surface elements 48 are identified in the image 40 shown therein. This image 40 may be the same image as shown in Figure 4a. In this example, multiple images were used, and step 104 was performed on all of them.
[0088] For step 106, image position data is used. Because the relative positions of calibration objects 20, 22, and 24 within apparatus 10 are known, these relative positions can be used in identifying image surface elements 48 as well.
[0089] If the calibration objects 20, 22, and 24 of the three subsets have different shapes and / or sizes, the identification of the image surface elements 48 can be made even easier and with greater security. Therefore, it is basically possible to directly assign an image calibration object 42 having the correct shape and / or size as the image of the first subset of calibration objects 20, while it is still not possible to directly assign the image calibration object 42 corresponding to calibration object 20 to this location. The same applies correspondingly to calibration objects 22 and 24. To group each of the three image calibration objects 42, together with the three image calibration objects 44 and one image calibration object 46, into one surface element 48 each and thus identify the corresponding surface elements in the image, it is possible to proceed as follows: It must initially be ensured that for all completely possible combinations of three (presumed) image calibration objects 42 and three (presumed) image calibration objects 44, within a tolerance range, the three (presumed) image calibration objects 44 are positioned relative to the three (presumed) image calibration objects 42, so that exactly one (presumed) image calibration object 44 lies on the connecting line segment of two (presumed) image calibration objects 42. If this is the case, knowledge of the exact geometry of the surface elements, i.e., knowledge of the exact (known) relative positions of the calibration objects 20, 22 within an equilateral triangle in which each surface element is identical, allows the construction of a so-called plane homography that cancels out the perspective distortions that occur during perspective mapping of the plane defined by the triangle.
[0090] Such a planar homography can be readily constructed if at least four points lying on a common plane are known. In this case, six points defined by the selected image calibration objects 42 and 44 are used. For all other image calibration objects that can essentially be inferred as potentially forming a surface element 48 as the image calibration object 46, along with the three (inferred) image calibration objects 42 and the three (inferred) image calibration objects 44, the planar homography is then used to determine the (inferred) equilateral triangle where the (inferred) image calibration object 46 will be located. If the (inferred) position within the equilateral triangle thus determined is within the tolerance range at one of the positions 26, 28, 30, and 32, it is (initially) assumed in a further process that the seven image calibration objects 42, 44, and 46 thus grouped are assigned to the image surface element 48. If this could not have been determined beforehand, for example, via the various sizes and / or shapes of the calibration objects 20, 22, 24, then, as described herein, the identification of image surface elements 48 by assigning the seven image calibration objects 42, 44, 46 to known geometric locations (corners, edges, and areas) has in any event determined which of the seven image calibration objects are assigned to the first, second, and third subsets of calibration objects 20, 22, 24. This knowledge allows, among other things, compensation for the perspective distortion of the detectors or cameras on this common plane.
[0091] Intrinsic detector parameters can now be determined in optional step 120. For this purpose, image position data of the image vertices and image periphery of the image surface elements 48 on which the image calibration objects 42, 44 are located are used. This calculation can also be referred to as estimating the intrinsic detector parameters.
[0092] Knowledge of the planar homography can be used for step 120. Given a known metric planar homography, as determined here for each image surface element, two linear conditions arise for each of these planes on the components of the image of the absolute conic (IAC). This allows for the formulation of an overdetermined linear system of equations. This system can be solved, for example, using a least-squares method, which may be linear in some cases. Subsequently, the intrinsic detector parameters can be obtained, for example, using a Cholesky factorization of the IAC. This can be done before it is known which calibration objects 20, 22, and 24 map to which image calibration objects 42, 44, and 46.
[0093] In step 108 of the method 100, a test calibration is selected. To select the test calibration, corresponding calibration objects 20, 22, 24 are assumed for some image calibration objects 42, 44, 46 and are mapped onto these image calibration objects 42, 44, 46. The test calibration then determines corresponding calibration objects 20, 22, 24 for further, preferably all, determined image calibration objects 42, 44, 46, and this assignment is recorded or stored.
[0094] If step 120 was not performed, then in step 108, a plurality of surface elements 18, at least two and preferably three, are selected and correspondences are determined between the calibration objects 20, 22, and 24 and the image calibration objects 42, 44, and 46. Correspondences are then determined for the remaining surface elements 18 using the selected test calibration. By determining the test mapping, the extrinsic and intrinsic detector parameters are only implicitly defined in this case. At least one condition for determining correspondences is that a first subset of calibration objects 20 are mapped to the image calibration object 42 and a second subset of calibration objects 22 are mapped to the image calibration object 44.
[0095] In an alternative example, if optional step 120 is performed, the selection for the test calibration can be performed using only the surface elements 18 for which the correspondence between the calibration object and the image calibration object is sought. Furthermore, optional sub-step 122 can be performed, and then in this case only the extrinsic detector parameters need to be selected for the test calibration in step 108, since the intrinsic detector parameters are then already known by performing step 120.
[0096] Optional step 120 may be any sub-step of step 108 in an example not shown.
[0097] In substep 122, the extrinsic detector parameters for the test calibration can be determined, for example, using an n-point perspective method. Here, for each image surface element determined in the image, it is possible to infer which surface element is mapped thereto. Additionally, it is also necessary to infer the permutation of the calibration objects of the first subset. In the example of equilateral triangles as surface elements, up to six possible permutations arise depending on the positioning of the calibration objects of the third subset. Only a small number of mapping possibilities arise for a particular surface element. Therefore, even though all three-dimensional object position data exist on a common plane, for each of these possibilities, the extrinsic detector parameters can be determined using the n-point perspective method using the intrinsic detector parameters and the correspondence between the image position data and the object position data resulting from these selections. The set of extrinsic detector parameters thus determined can be combined with the intrinsic detector parameters to define the test calibration. In the test calibration thus obtained, the calibration objects of the first and second subsets are typically mapped to image position data in which image calibration objects that are images of the first and second subsets are located.
[0098] A test calibration is then selected, which then generates a test map of the device 10 in step 110, where the test map may be simulated or calculated without performing an actual map, in which test image position data for the map of the third subset of calibration objects 24 is determined.
[0099] This test image position data is compared with the image position data of the third subset of calibration objects 46 in step 112. This comparison is shown explicitly in FIG. 4c. If the test calibration is assumed to be correct and sufficiently accurate, the test image position data will not deviate from the image position data within a predefined tolerance range. However, if the test calibration is assumed to be incorrect, a deviation 50 will occur between the test image position data and the image position data. The deviation 50 resulting from an inaccurate test calibration is shown graphically in FIG. 4c as a line segment emanating from the corresponding image position data in FIG. 4c.
[0100] If the comparison from step 112 does not result in a sufficiently accurate test calibration, i.e., if the test image position data and image position data of the third subset of calibration objects do not map to each other within a predefined tolerance, then steps 116, 110, and 112 are repeated in step 114. The originally used test calibration is then discarded, as are the recorded correspondences between image calibration objects 42, 44, and 46 and calibration objects 20, 22, and 24. In step 116, a modified test calibration is then selected, which maps the object position data of the first and second subsets of calibration objects to image vertices in the test map and maps the object position data of the second subset of calibration objects to image edges within the image. Step 116 is identical to step 108, except that the modified test calibration is used. Therefore, steps 110 and 112 are performed using the modified test calibration in each iteration.
[0101] If optional sub-step 122 is performed, the test calibration as being incorrectly determined is discarded in the iteration and a set of previously untested extrinsic detector parameters is combined with the intrinsic detector parameters to form a modified test calibration.
[0102] If the comparison from step 112 results in a sufficiently accurate test calibration, i.e., if the test image position data and the image position data of the third subset of calibration objects map to each other within a predefined tolerance, the method can proceed to optional step 118. Further, the correspondence between the object position data and the image position data is then known.
[0103] In an alternative example of this method, all possible test calibrations are examined and then compared to each other to determine which test calibration is the most accurate.
[0104] In optional step 118, the accuracy of the determined sufficiently accurate test calibration can be improved using nonlinear optimization methods. Additionally, the sufficiently accurate test calibration here provides known estimates of the intrinsic and extrinsic detector parameters, so-called initial estimates, that at least approximately take into account the specific mapping characteristics of the detector, in particular square and non-affinely distorted pixels. Using such initial estimates and the correspondences thus determined, the intrinsic and extrinsic detector parameters can be adapted using nonlinear optimization methods in such a way that the so-called geometric error of the determined correspondences between image position data and object position data is minimized.
[0105] If optional step 120 is not performed, optional step 118 optimizes the mapping matrix to improve the implicitly defined detector parameters. If optional step 120 is performed, step 118 optimizes the detector parameters. In doing so, the detector's special mapping characteristics, particularly square and non-affine distorted pixels, are accurately taken into account because the intrinsic detector parameters are further optimized. Thus, the nonlinear optimization from step 118 takes into account the detector's special mapping characteristics, i.e., the intrinsic detector parameters determined from step 120, which already accurately take these detector's special mapping characteristics into account. After the optimization in step 118, the above-mentioned special mapping characteristics are also applied more accurately to the optimized test calibration.
[0106] The above-described steps of method 100 can advantageously be performed using only one image of the device. Alternatively, the above-described steps of method 100 can be performed using multiple images of the device, where the device is preferably imaged at a different orientation with respect to the system's detector or camera in each of the images used.
[0107] In a further optional step 124, a bundle adjustment can be performed across all images generated by the device using the system, which can compensate for small deviations in the object position data of the calibration object compared to target position data of the calibration object in the device, for example.
[0108] In this case, a nonlinear optimization method can jointly optimize the detector parameters of all images as well as the object position data of the calibration object to minimize the reprojection error of the correspondences found between the image position data and the object position data across all images. The predetermined detector parameters and the known target position of the calibration object are used as initial guesses for the nonlinear optimization.
[0109] The present invention is not limited to one of the above-described embodiments, but rather can be varied in a wide variety of ways. The features and advantages (including design details, spatial arrangements and method steps) that become apparent from the claims, the specification and the drawings as a whole may be essential to the invention, both individually and in various combinations.
Claims
1. 1. An apparatus for calibrating a system (34) for producing at least one image of an object, comprising: The apparatus (10) comprises a plurality of calibration objects (20, 22, 24) and a base (12) having vertices (14) and an outer edge (16) extending between the vertices (14) and defining surface elements (18), wherein a first subset of the calibration objects (20) are disposed on the vertices (14) of the base (12); a second subset of the calibration objects (22) disposed on the outer edge (16) between the vertices (14); a third subset of the calibration objects (24) being disposed between the outer edges (16) on the surface elements (18); Device.
2. a positioning of the calibration objects (24) of the third subset relative to the calibration objects (20, 22) of the first and second subsets differs between at least two surface elements (18); 10. The apparatus of claim 1.
3. each outer edge (16) has at most one calibration object (22) assigned to the second subset of calibration objects, and / or the second subset of calibration objects (20) is centered between the vertices (14) on each outer edge (16); 3. The device according to claim 1 or 2.
4. each surface element (18) has at least two, preferably at least three, and more preferably at least four predefined positions (26, 28, 30, 32) internally, and each surface element (18) is assigned a calibration object (24) of the third subset of calibration objects, the calibration object (24) being located at one of the predefined positions (26, 28, 30, 32) and no calibration object (24) being present at the other predefined positions (26, 28, 30, 32); and more preferably, the subset of predefined positions (26, 28, 30, 32) is invariant under all symmetry transformations of the surface element (18).
4. An apparatus according to any one of claims 1 to 3.
5. the relative positions of the calibration objects (20, 22) of the first subset and the second subset on each surface element (18) are the same; 5. An apparatus according to any one of claims 1 to 4.
6. the surface elements (18) are triangular faces, preferably equilateral triangular faces, and / or the base body (12) is a polyhedron, preferably a regular polyhedron, more preferably a regular icosahedron; 6. An apparatus according to any one of claims 1 to 5.
7. the third subset of the calibration object (24) is not symmetric with respect to the substrate (12) under a Euclidean space transformation; 7. An apparatus according to any one of claims 1 to 6.
8. the subsets of calibration objects (20, 22, 24) differ from one another in shape and / or size and are preferably formed as spheres; 8. An apparatus according to any one of claims 1 to 7.
9. 9. A computer-implemented method for calibrating a system for generating at least one image of an object using an apparatus according to any one of claims 1 to 8, comprising the steps of: each surface element has a shape, and object position data relative to one another of calibration objects within the apparatus are known; the object position data of the calibration objects of the third subset are differentiated between at least two surface elements relative to the object position data of the calibration objects of the first subset and the second subset; The method (100) comprises the following steps: - providing (102) with said system at least one image of said device, said calibration object in said at least one image being mapped to an image calibration object; - determining (104) image position data for all visible image calibration objects in said at least one image; - identifying (106) image surface elements of the device mapped in the at least one image using the determined image position data, the shape of the surface elements, and object position data of at least the first and second subsets of the calibration objects, wherein image vertices and image perimeters are determined using the identified image surface elements; - selecting (108) a test calibration, in which in a test mapping the object position data of the first subset of the calibration objects are mapped to the image vertices and the object position data of the second subset of the calibration objects are mapped to the image periphery; - determining (110) test image position data for the third subset of the calibration objects using the test calibration; - comparing (112) said test image position data with said image position data of said third subset of said calibration objects; performing the following steps until the test image position data and the image position data of the third subset of the calibration objects map to each other within a predefined tolerance range: - selecting (116) a modified test calibration, in which in a test mapping the object position data of the first and second subsets of the calibration objects are mapped to the image vertices and the object position data of the second subset of the calibration objects are mapped to the image periphery in the image; - repeating (114) the steps of determining (110) the test image position data of the third subset of the calibration objects and comparing (110) the test image position data with the image position data of the third subset of the calibration objects and with the modified test calibration; 10. A computer-implemented method comprising:
10. If the test image position data and the image position data of the third subset of calibration objects map to each other within a predefined tolerance range, the method (100) further comprises the steps of: - optimizing (118) said test calibration using a non-linear optimization method, 10. The method of claim 9.
11. The method (100) further comprises the following steps before the step (108) of selecting the test calibration: - determining (120) intrinsic detector parameters using at least said image position data of said image vertices and said image outer edge, said step of selecting (108) a test calibration comprising the following sub-steps: - determining (122) extrinsic sample detector parameters using the determined intrinsic detector parameters of the image surface elements and the image position data, 11. The method according to claim 9 or 10.
12. The method (100) further comprises the following steps: - performing a bundle adjustment method (124) on all images for which the intrinsic and extrinsic detector parameters have been determined, The method of claim 11.
13. determining (120) the intrinsic detector parameters using at least the image position data of the image vertices and the image edge is performed before determining (122) the extrinsic detector parameters for each surface element using the determined intrinsic detector parameters for all provided images.
13. The method according to claim 11 or 12.
14. Use of the device (10) according to any one of claims 1 to 8 for calibrating a system (34) for generating at least one image of an object or for solving a spherical correspondence problem.
15. 1. A computer program product comprising: comprising computer executable instructions that, when executed on a computer, cause the computer to perform the method of any one of claims 9 to 13; Computer program products.