CN115170665A - Image-based spherical object pose determination method and system - Google Patents

Image-based spherical object pose determination method and system Download PDF

Info

Publication number
CN115170665A
CN115170665A CN202210804715.7A CN202210804715A CN115170665A CN 115170665 A CN115170665 A CN 115170665A CN 202210804715 A CN202210804715 A CN 202210804715A CN 115170665 A CN115170665 A CN 115170665A
Authority
CN
China
Prior art keywords
target
spots
spherical object
spot
determining
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202210804715.7A
Other languages
Chinese (zh)
Other versions
CN115170665B (en
Inventor
孟偲
任龙飞
冯飞
齐巍
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beihang University
Original Assignee
Beihang University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beihang University filed Critical Beihang University
Priority to CN202210804715.7A priority Critical patent/CN115170665B/en
Publication of CN115170665A publication Critical patent/CN115170665A/en
Application granted granted Critical
Publication of CN115170665B publication Critical patent/CN115170665B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/62Analysis of geometric attributes of area, perimeter, diameter or volume

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)

Abstract

The invention relates to a method and a system for determining a pose of a spherical object based on an image, wherein the method comprises the following steps: acquiring spot information in an image of a spherical object; determining two large-area spots as two target large spots according to the spot information, wherein the spots except the two target large spots are all used as target small spots; constructing a target triangular pyramid; matching the target triangular pyramid with triangular pyramids in a database, and determining the number of each target large spot by adopting a voting method; determining the initial position coordinates of each target big spot according to the number of each target big spot; and determining the current pose of the spherical object according to the current position coordinates and the initial position coordinates of the two target blobs. The invention realizes the determination of the pose of the spherical object by adopting a triangular pyramid matching mode, is not limited by the division precision of longitude and latitude, and improves the determination precision of the pose of the spherical object.

Description

Image-based spherical object pose determination method and system
Technical Field
The invention relates to the technical field of pose measurement, in particular to a method and a system for determining a pose of a spherical object based on an image.
Background
The existing positioning mode of the spherical object usually adopts a longitude and latitude mode, the pose determination precision of the method depends on the longitude and latitude division precision, and the pose determination precision of the method is limited.
Disclosure of Invention
In view of this, the present invention provides a method and a system for determining a pose of a spherical object based on an image, so as to improve the accuracy of determining the pose of the spherical object.
In order to achieve the purpose, the invention provides the following scheme:
an image-based spherical object pose determination method, the method comprising the steps of:
acquiring spot information in an image of a spherical object; the spherical object is marked with a plurality of large spots and a plurality of small spots;
determining two spots with the largest area as two target large spots according to the spot information, wherein the spots except the two target large spots are all used as target small spots;
constructing a target triangular pyramid by taking the two target large spots as two vertexes of the bottom surface, taking the sphere center of the spherical object as a vertex except the bottom surface, and taking each target small spot as another vertex of the bottom surface respectively to obtain a plurality of target triangular pyramids;
respectively matching each target triangular pyramid with triangular pyramids in a database to obtain the number combination of two large spots of the triangular pyramid matched with each target triangular pyramid in the direction; the database stores the number and initial position coordinates of each large spot, and any two large spots and any one small spot are respectively used as three vertexes of the bottom surface, the sphere center of the spherical object is used as a triangular pyramid constructed by vertexes outside the bottom surface, and the two large spots and the one small spot which form the same triangular pyramid are arranged clockwise according to the sequence of the large spots, the large spots and the small spots;
determining the number combination corresponding to the two target large spots by adopting a voting statistic mode, and further determining the number of each target large spot;
determining the initial position coordinates of each target macro-blob according to the number of each target macro-blob;
determining the current position coordinate of each target macro-speckle according to the position information of the two target macro-speckles in the image;
and determining the current pose of the spherical object according to the current position coordinates and the initial position coordinates of the two target large spots.
Optionally, the determining, according to the blob information, two blobs having the largest area as two target large blobs, and all blobs other than the two target large blobs as target small blobs specifically includes:
correcting the image measurement area of the spots in the image by adopting the following formula to obtain the corrected area;
Figure BDA0003736431100000021
wherein S' represents the corrected area, S represents the image measurement area, theta is the included angle between the gradient direction of the central point of the spot relative to the XOZ plane and the XOZ plane, R is the radius of the spherical object, and x and z are the x-axis coordinate and the z-axis coordinate of the central point of the spot respectively;
carrying out secondary correction on the corrected area which is more than 2 times of the image measurement area to obtain the area after secondary correction; the area after the secondary correction is equal to 2 times of the image measurement area;
respectively taking the corrected area of the spot or the area after the secondary correction as the standard area of the spot;
and selecting two spots with the largest standard area as two target large spots, and determining spots except for the two target large spots as target small spots.
Optionally, the determining the current pose of the spherical object according to the current position coordinates and the initial position coordinates of the two target blobs specifically includes:
solving a rotation matrix of the spherical object by using the following equation;
Figure BDA0003736431100000031
Figure BDA0003736431100000032
(P t1 '-P t0 )×(P t2 '-P t0 )=R M [(P t1 -P t0 )×(P t2 -P t0 )];
wherein, P t1 ' and P t2 ' Current position coordinates, P, of two target blobs, respectively t1 And P t2 Initial position coordinates, R, of two target blobs, respectively M Rotation matrix, P, representing spherical objects t0 Representing the sphere center coordinates of a spherical object;
determining a current homogeneous matrix of the spherical object by using the following formula according to the rotation matrix of the spherical object, namely determining the current pose of the spherical object;
Figure BDA0003736431100000033
Figure BDA0003736431100000034
wherein r is 11 、r 12 、r 13 、r 21 、r 22 、r 23 、r 31 、r 32 And r 33 Are elements in a rotation matrix of the spherical object, and H is a current homogeneous matrix of the spherical object.
Optionally, the acquiring speckle information in the image of the spherical object further includes:
equating the spherical object to an Archimedes polyhedron;
arranging a large spot at the center of a regular hexagon of the Archimedes polyhedron;
setting a small spot on at least one central line of a regular hexagon or a regular pentagon of the Archimedes polyhedron; the central line is a line segment connecting the central point and the end point of the regular hexagon or the regular pentagon.
An image-based spherical object pose determination system, the system comprising:
the spot information acquisition module is used for acquiring spot information in the image of the spherical object; the spherical object is marked with a plurality of large spots and a plurality of small spots;
the target spot selection module is used for determining two spots with the largest areas as two target large spots according to the spot information, and the spots except the two target large spots are all used as target small spots;
the target triangular pyramid building module is used for building a target triangular pyramid by taking the two target large spots as two vertexes of the bottom surface, taking the sphere center of the spherical object as a vertex except the bottom surface and respectively taking each target small spot as the other vertex of the bottom surface to obtain a plurality of target triangular pyramids;
the number combination determining module is used for respectively matching each target triangular pyramid with the triangular pyramids in the database to obtain the number combination of two large spots of the triangular pyramid matched with each target triangular pyramid in the direction; the database stores the number and initial position coordinates of each large spot, any two large spots and any one small spot respectively as three vertexes of the bottom surface, the sphere center of the spherical object is used as a triangular pyramid constructed by vertexes except the bottom surface, and the two large spots and the one small spot which form the same triangular pyramid are arranged clockwise according to the sequence of the large spots, the large spots and the small spots;
the number determining module of the target big spots is used for determining the number combination corresponding to the two target big spots by adopting a voting statistic mode so as to determine the number of each target big spot;
an initial position coordinate determination module, configured to determine an initial position coordinate of each of the target blobs according to the number of each of the target blobs;
the current position coordinate determination module is used for determining the current position coordinate of each target macro-speckle according to the position information of the two target macro-speckles in the image;
and the current pose determining module is used for determining the current pose of the spherical object according to the current position coordinates and the initial position coordinates of the two target blobs.
Optionally, the target blob selecting module specifically includes:
the correction submodule is used for correcting the image measurement area of the spots in the image by adopting the following formula to obtain the corrected area;
Figure BDA0003736431100000041
wherein S' represents the corrected area, S represents the image measurement area, theta is the included angle between the gradient direction of the central point of the spot relative to the XOZ plane and the XOZ plane, R is the radius of the spherical object, and x and z are the x-axis coordinate and the z-axis coordinate of the central point of the spot respectively;
the secondary correction submodule is used for carrying out secondary correction on the corrected area which is larger than 2 times of the image measurement area to obtain the area after secondary correction; the area after the secondary correction is equal to 2 times of the image measurement area;
the standard area determination submodule is used for respectively taking the corrected area or the secondarily corrected area of the spot as the standard area of the spot;
and the target spot selection sub-module is used for selecting the two spots with the largest standard areas as the two target large spots and determining the spots except the two target large spots as the target small spots.
Optionally, the module for determining the current position coordinate specifically includes:
the rotation matrix solving submodule is used for solving a rotation matrix of the spherical object by using the following equation;
Figure BDA0003736431100000051
Figure BDA0003736431100000052
(P t1 '-P t0 )×(P t2 '-P t0 )=R M [(P t1 -P t0 )×(P t2 -P t0 )];
wherein, P t1 ' and P t2 ' Current position coordinates, P, of two target blobs, respectively t1 And P t2 Respectively the initial position coordinates of two target macro-speckles, R M Rotation matrix representing a spherical object, P t0 Representing the sphere center coordinates of a spherical object;
the current pose determining submodule is used for determining a current homogeneous matrix of the spherical object by using the following formula according to the rotation matrix of the spherical object, namely the current pose of the spherical object;
Figure BDA0003736431100000053
Figure BDA0003736431100000054
wherein r is 11 、r 12 、r 13 、r 21 、r 22 、r 23 、r 31 、r 32 And r 33 Are elements in a rotation matrix of the spherical object, and H is a current homogeneous matrix of the spherical object.
Optionally, the system further includes:
the equivalent processing module is used for equivalent the spherical object into an Archimedes polyhedron;
the macro-patch setting module is used for setting a macro-patch at the center of a regular hexagon of the Archimedes polyhedron;
the small spot setting module is used for setting a small spot on at least one central line of a regular hexagon or a regular pentagon of the Archimedes polyhedron; the central line is a line segment connecting the central point and the end point of the regular hexagon or the regular pentagon.
According to the specific embodiment provided by the invention, the invention discloses the following technical effects:
the invention discloses a method and a system for determining a pose of a spherical object based on an image, wherein the method comprises the following steps: acquiring spot information in an image of a spherical object; determining two spots with the largest area as two target large spots according to the spot information, wherein the spots except the two target large spots are all used as target small spots; constructing a target triangular pyramid by taking the two target large spots as two vertexes of the bottom surface, taking the sphere center of the spherical object as a vertex except the bottom surface, and taking each target small spot as the other vertex of the bottom surface respectively to obtain a plurality of target triangular pyramids; respectively matching each target triangular pyramid with triangular pyramids in a database to obtain the number combination of two large spots of the triangular pyramid matched with each target triangular pyramid in the direction; the database stores the number and initial position coordinates of each large spot, and any two large spots and any one small spot are respectively used as three vertexes of the bottom surface, the sphere center of the spherical object is used as a triangular pyramid constructed by vertexes outside the bottom surface, and the two large spots and the one small spot which form the same triangular pyramid are arranged clockwise according to the sequence of the large spots, the large spots and the small spots; determining the number combination corresponding to the two target blobs by adopting a voting statistical mode, and further determining the number of each target blob; determining the initial position coordinates of each target macro-blob according to the number of each target macro-blob; determining the current position coordinates of each target macro-speckle according to the position information of the two target macro-speckles in the image; and determining the current pose of the spherical object according to the current position coordinates and the initial position coordinates of the two target blobs. The invention adopts the triangular pyramid matching mode to realize the determination of the pose of the spherical object, is not limited by the longitude and latitude division precision, and improves the accuracy of the pose determination of the spherical object.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required to be used in the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to these drawings without inventive labor.
Fig. 1 is a flowchart of an image-based spherical object pose determination method according to embodiment 1 of the present invention;
fig. 2 is a schematic diagram of a method for determining the pose of a spherical object based on an image according to embodiment 1 of the present invention;
fig. 3 is a schematic diagram of a binarized image of a spherical object provided in embodiment 1 of the present invention;
fig. 4 is a schematic structural diagram of an archimedean polyhedron of a spherical object provided in embodiment 1 of the present invention;
FIG. 5 is an exemplary graph of the distribution of large and small speckles on a regular hexagon provided in example 1 of the present invention;
FIG. 6 is another exemplary plot of the distribution of large and small speckles on a regular hexagon provided in example 1 of the present invention;
FIG. 7 is a schematic diagram of the distribution of large spots and small spots of a semi-regular polyhedron of Archimedes' polyhedron provided in example 1 of the present invention;
FIG. 8 is a schematic view of the structure of a target triangular pyramid provided in embodiment 1 of the present invention;
FIG. 9 is a schematic diagram of the numbering determination of the target blobs according to embodiment 1 of the present invention;
fig. 10 is a schematic diagram of pose determination provided in embodiment 1 of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be obtained by a person skilled in the art without making any creative effort based on the embodiments in the present invention, belong to the protection scope of the present invention.
The invention aims to provide a method and a system for determining the pose of a spherical object based on an image so as to improve the accuracy of determining the pose of the spherical object.
In order to make the aforementioned objects, features and advantages of the present invention more comprehensible, the present invention is described in detail with reference to the accompanying drawings and the detailed description thereof.
Example 1
As shown in fig. 1 and 2, embodiment 1 of the present invention provides a method for determining a pose of a spherical object based on an image, where the method includes the following steps:
step 101, acquiring spot information in an image of a spherical object; the spherical object is marked with a plurality of large spots and a plurality of small spots.
The core of embodiment 1 of the present invention is to utilize coordinate information of a blob, which is illustratively a black blob, and it is necessary to acquire black blob features (i.e., black blob information or blob information) on a spherical object in an image, so that a plurality of blob position information is obtained by performing various processing means such as binarization, connected component analysis, etc. on an image with a standard size.
After the image is binarized, a binarized image as shown in fig. 3 may be obtained.
After the connected domain analysis is carried out on the binarized image, the binarized image is divided into a plurality of small regions, so that which parts belong to the same spot and which parts belong to other parts and backgrounds on the spherical object can be determined.
And step 102, determining two spots with the largest area as two target large spots according to the spot information, wherein the spots except the two target large spots are all used as target small spots.
As shown in fig. 3, a certain number of large spots and small spots are distributed on the binarized image, and the size of the area of each spot on the image and the corresponding center point coordinates thereof can be calculated by calculating the connected domain. However, since the captured image corresponds to projecting a spherical surface onto a plane, the closer the spot is to the center, the closer the spot area is to the true value, and the farther the spot is from the center, the flatter the spot shape is, and the area is much smaller than the true value. This may result in the area of the small spot in the center on the image being larger than the area of the large spot on the edge on the image, so that it is possible that the area of the small spot is identified as a large spot due to the particular top ranking when finally sorted by area, eventually making the result of triangular pyramid matching erroneous.
In order to avoid this problem, the present invention proposes a way of correcting the spot area on the image based on the gradient, based on the condition that the picture taken corresponds to a spherical surface projected onto a plane. Since the gradients of all the spots on a spherical object relative to the projection plane cannot be equal everywhere, for the purpose of solving the approximation, the invention proposes to use the gradient of the center point of the spot to approximately replace the gradient of all the points on the spot. Thus, the problem becomes a plane projection problem, and if the gradient size of a plane and the size of the projection area of the plane on the projection plane are known, the size of the actual area of the plane can be obtained. For a ball
x 2 +y 2 +z 2 =R 2
Requiring the solution of the gradient of any point thereon relative to the XOZ plane, the surface equation can be expressed as
Figure BDA0003736431100000091
Then
Figure BDA0003736431100000092
Figure BDA0003736431100000093
Figure BDA0003736431100000094
The mode of the gradient is
Figure BDA0003736431100000095
The gradient direction forms an angle with the XOZ plane
Figure BDA0003736431100000096
Therefore, the corrected area is calculated according to the formula
Figure BDA0003736431100000097
However, this formula also has the drawback that when the spot center is at the boundary of a circle in the image, i.e. when the spot center is at the boundary of a circle in the image
Figure BDA0003736431100000098
Very close to R, calculated
Figure BDA0003736431100000099
It will be very close to 0 and thus S' will be close to infinity, which is clearly not in line with reality. The invention provides that S' is a maximum of 2 times S, in which case
Figure BDA00037364311000000910
Illustrating that the applicability of the gradient-based algorithm has covered most of the area of the circle in which spots, marked according to the present invention, are generally locatedIt is possible to find two large spots, and even beyond this area, the area of the large spot multiplied by 2 tends to be larger than the area of the small spot. Therefore, after the areas of the blobs on the image are corrected by the algorithm, the blobs are sorted according to the corrected areas, and the category to which the two blobs having the largest areas belong is always the large blob.
And 103, constructing a target triangular pyramid by taking the two target large spots as two vertexes of the bottom surface, taking the sphere center of the spherical object as a vertex except the bottom surface, and taking each target small spot as the other vertex of the bottom surface respectively, so as to obtain a plurality of target triangular pyramids.
According to the embodiment of the invention, the spots are sorted according to the areas of the spots, and two spots with the largest areas are always large spots when viewed from each angle on the marked spherical object, so that the two largest spots detected in the image are considered as target large spots. For other smaller area blobs, they are all considered small blobs. Although there are still blobs that belong to large blobs among the small blobs considered, since the exemplary voting-based algorithm can be adopted, the number of small blobs considered but the number of large blobs is much smaller than the number of small blobs, the final result is not affected much after the voting.
On each image, as shown in FIG. 3, there are several large blobs and several small blobs. According to the triangular pyramid construction rule, each two large spots and one small spot are three vertexes of the triangular pyramid bottom surface, and the sphere center is taken as a vertex, so that a triangular pyramid, namely a target triangular pyramid, can be constructed, as shown in fig. 8.
104, respectively matching each target triangular pyramid with triangular pyramids in a database to obtain the number combination of two large spots of the triangular pyramid matched with each target triangular pyramid in the direction; the database stores the number and initial position coordinates of each large spot, and any two large spots and any one small spot are respectively used as three vertexes of the bottom surface, the sphere center of the spherical object is used as a triangular pyramid constructed by vertexes outside the bottom surface, and the two large spots and the one small spot which form the same triangular pyramid are arranged clockwise according to the sequence of the large spots, the large spots and the small spots.
For the construction of the database:
firstly, the spherical object needs to be marked with large spots and small spots arranged according to a certain rule.
To visually describe the distribution of spots on a spherical object, we consider the sphere as a semi-regular polyhedron, also known as an "archimedean polyhedron". The surface of the semi-regular polyhedron in the invention is composed of 20 regular hexagons and 12 regular pentagons. As shown in fig. 4.
Then, the large spots and the small spots are distributed on each regular polygon according to a certain rule. Wherein, a large spot is distributed at the center of each regular hexagon, and a plurality of small spots are distributed on the top angles of the regular hexagons around the large spot, as shown in fig. 5 and 6.
Meanwhile, a plurality of small spots are distributed on the top corners of the regular pentagon. The final effect is shown in fig. 7.
In order to make the distribution of the large and small spots unique on the images taken from any angle, the present invention totally designs that the number of the large spots is 20 and the number of the small spots is 78. And then, projecting the spots on the semi-regular polyhedron onto the spherical surface, thereby completing the marking of the spots.
The spots marked on the spherical object comprise 20 big spots and 78 small spots, the spots are respectively numbered, the positions of the central points of the spots in the space are recorded, the ball in the current state is taken as a reference ball, and then the pose of the spherical object is calculated according to the space coordinates of the corresponding numbered spots after rotation.
For each triangular pyramid, the vertex of the triangular pyramid is the sphere center of the spherical object, two of the three vertexes on the triangle on the bottom surface are the central points of the large spots, and the other one is the central point of the small spot. To ensure that each triangular pyramid constructed appears only once in the triangular pyramid library, the vertices of the triangular pyramids are numbered. As shown in fig. 8, pt0 is the center of the spherical object, pt1 and Pt2 are the centers of the large spots, and Pt3 is the center of the small spot, i.e., the arrangement of Pt1, pt2 and Pt3 is clockwise when viewed from the bottom toward the apex. With such a numbering rule, the number formed by the four vertices of each triangular pyramid is uniquely determined. Meanwhile, the triangular pyramids to be matched (i.e., the target triangular pyramids) are numbered only in the same manner, and the triangular pyramids can be effectively matched only if all the triangular pyramids are numbered in the same manner.
The method matches a target triangular pyramid constructed on the image with triangular pyramids in a database based on the side length of each side of the triangular pyramid. Because the radius of three lateral edges of the triangular pyramid is consistent with that of the spherical object, the triangular pyramid does not need to be matched, and only three edges of the bottom surface of the triangular pyramid need to be matched. The three edges of the bottom surface of the triangular pyramid are sequenced as the top points of the bottom surface of the triangular pyramid, wherein the connecting line of the central points of the two large spots is the first edge, and the subsequent edges are sequentially arranged in the clockwise direction. And matching the three edges with three edges of each triangular pyramid in the triangular pyramid library, wherein if the error of each edge of the triangular pyramid and the target triangular pyramid in the triangular pyramid library is within 5%, the successful matching is indicated.
And 105, determining the number combination corresponding to the two target large spots by adopting a voting statistic mode, and further determining the number of each target large spot.
And voting large spot combinations corresponding to the triangular pyramids of the triangular pyramid library. The most likely corresponding serial numbers of the two large spots in the image on the marked spherical object can be obtained through voting, and the poses of the spherical object can be calculated through the serial numbers of the two large spots.
After finding the two target large spots on the image, the next step is to determine the numbers of the two target large spots, and then calculate the pose of the spherical object at the moment.
The vertex coordinates on the image can be calculated from the relationship between the image and the space and the characteristics of the spherical object. Therefore, the spatial vertex coordinates of the center point coordinates of the target macro patch on the image can be calculated. The calculation procedure is as follows. As shown in fig. 9, the width and height of the binarized image are the diameters of the spherical objects, and half the length thereof is the radius of the sphere on the image. Exemplary if the radius of the spherical object is 1m, the determination of the current position coordinates is performed in combination with the following formula
x 2 +y 2 +z 2 =R 2
The x and z sizes can be measured on the image, and since the y coordinate of the spot on the image in the spherical coordinate system is less than 0, the y coordinate size can be calculated by the above formula.
A database containing a triangular pyramid library containing triangular pyramids has been previously constructed using the initial coordinate information of the large and small spots. A triangular pyramid, namely a target triangular pyramid, can be constructed by taking the central points of the maximum two target large spots on the image, then taking one central point from the identified target small spots and adding the spherical center of the spherical object. If the constructed target triangular pyramid has a triangular pyramid matched with the target triangular pyramid in the triangular pyramid library, voting is carried out on the serial numbers of the large spots of the matched triangular pyramids in the triangular pyramid library (namely, the number of votes is added with 1). After matching and voting are carried out on all the triangular pyramids which can be constructed on the image, the number of votes obtained by each large-spot combination is counted, and the combination with the highest vote is the serial number corresponding to the two largest spots (namely, the two target large spots) on the image.
After the numbers of the two blobs are determined, the respective numbers of the two blobs also need to be determined. As shown in FIG. 9, nos. 10 and 12 are the numbers of the two large blobs determined by the voting method. The determination method is as follows, the spot at A has the largest product after being corrected by the spot area sorting algorithm, the spot at B is ranked second, therefore the two spots are regarded as big spots, and the number of the spots is determined according to the voting method. For the base of two selected triangular pyramids on the image, the order of the vertices of the triangular pyramids when matching should be (0, a, B, c) and (0, B, a, d) according to the clockwise principle previously designed, the number of the large spot should be determined, where we cannot vote for (10, 12) and (12, 10) respectively, because the positions of a and B are determined, and thus the vote should be cast to a certain combination. To avoid this problem, it is specified that voting is performed in order of area when voting is performed. When the triangular pyramid is generated, three vertexes on the base surface of the triangular pyramid are sorted according to the spot area, and whether the arrangement order of the three vertexes is clockwise is judged. If the direction is clockwise, voting is carried out on the combination according to the sequence of the two big spots; if the direction is anticlockwise, voting is carried out on the combination of the two big spots after the exchange sequence. By this method, the tickets can all be cast to the (A, B) combination, thereby avoiding the occurrence of the situation of ticket distribution.
And 106, determining the initial position coordinates of each target macro-blob according to the number of each target macro-blob.
And 107, determining the current position coordinates of each target macro patch according to the position information of the two target macro patches in the image.
And 108, determining the current pose of the spherical object according to the current position coordinates and the initial position coordinates of the two target large spots.
As shown in fig. 10, the posture of the spherical object is calculated by the coordinates pt0 of the center of the sphere of the spherical object, and the current position coordinates pt1', pt2' and the initial position coordinates pt1, pt2 of the two target blobs.
Since the ball has only undergone rotation, it
Figure BDA0003736431100000131
Figure BDA0003736431100000132
Wherein R is M For rotation matrices, according to the rotation matrix property R M U×R M V=R M (U × V) to obtain
(P t1 '-P t0 )×(P t2 '-P t0 )=R M [(P t1 -P t0 )×(P t2 -P t0 )]
Combining the two preceding equations with R M By constraint of (2), the rotation matrix R can be determined M
The homogeneous matrix H (4 × 4) is often used to represent the position and attitude of a rigid body, where the translation vector is 0 since no translation of a spherical object is involved, and the homogeneous matrix is only associated with the rotation matrix R of a spherical object M It is relevant. Calculating the rotation matrix R of the spherical object M To obtain a homogeneous matrix of the spherical object
Figure BDA0003736431100000133
Wherein
Figure BDA0003736431100000141
Since the initial sphere is in a standard state, its homogeneous matrix is a unit matrix. The homogeneous matrix H of the rotated spherical object is the pose of the spherical object at that time.
An image-based spherical object pose determination system, the system comprising:
the spot information acquisition module is used for acquiring spot information in the image of the spherical object; the spherical object is marked with a plurality of large spots and a plurality of small spots;
and the target spot selection module is used for determining two spots with the largest areas as two target large spots according to the spot information, and the spots except the two target large spots are all used as target small spots.
The target spot selection module specifically comprises:
and the correction submodule is used for correcting the image measurement area of the spots in the image by adopting the following formula to obtain the corrected area.
Figure BDA0003736431100000142
Wherein S' represents the corrected area, S represents the image measurement area, theta is the included angle between the gradient direction of the center point of the spot relative to the XOZ plane and the XOZ plane, R is the radius of the spherical object, and x and z are the x-axis coordinate and the z-axis coordinate of the center point of the spot respectively.
The secondary correction submodule is used for carrying out secondary correction on the corrected area which is larger than 2 times of the image measurement area to obtain the area after secondary correction; the area after the secondary correction is equal to 2 times of the image measurement area.
And the standard area determination submodule is used for respectively taking the corrected area or the secondarily corrected area of the spot as the standard area of the spot.
And the target spot selection sub-module is used for selecting the two spots with the largest standard areas as the two target large spots and determining the spots except the two target large spots as the target small spots.
The target triangular pyramid building module is used for building a target triangular pyramid by taking the two target large spots as two vertexes of the bottom surface, taking the sphere center of the spherical object as a vertex except the bottom surface and respectively taking each target small spot as the other vertex of the bottom surface to obtain a plurality of target triangular pyramids;
the number combination determining module is used for respectively matching each target triangular pyramid with the triangular pyramids in the database to obtain the number combination of two large spots of the triangular pyramid matched with each target triangular pyramid in the direction; the database stores the number and initial position coordinates of each large spot, any two large spots and any one small spot respectively as three vertexes of the bottom surface, the sphere center of the spherical object is used as a triangular pyramid constructed by vertexes except the bottom surface, and the two large spots and the one small spot which form the same triangular pyramid are arranged clockwise according to the sequence of the large spots, the large spots and the small spots;
the number determining module of the target big spots is used for determining the number combination corresponding to the two target big spots by adopting a voting statistic mode so as to determine the number of each target big spot;
an initial position coordinate determination module, configured to determine an initial position coordinate of each of the target blobs according to the number of each of the target blobs;
the current position coordinate determination module is used for determining the current position coordinate of each target macro-speckle according to the position information of the two target macro-speckles in the image;
and the current pose determining module is used for determining the current pose of the spherical object according to the current position coordinates and the initial position coordinates of the two target large spots.
The current position coordinate determination module specifically includes:
and the rotation matrix solving submodule is used for solving the rotation matrix of the spherical object by using the following equation.
Figure BDA0003736431100000151
Figure BDA0003736431100000152
(P t1 '-P t0 )×(P t2 '-P t0 )=R M [(P t1 -P t0 )×(P t2 -P t0 )];
Wherein, P t1 ' and P t2 ' Current position coordinates, P, of two target blobs, respectively t1 And P t2 Initial position coordinates, R, of two target blobs, respectively M Rotation matrix representing a spherical object, P t0 Representing the sphere center coordinates of a spherical object.
And the current pose determining submodule is used for determining a current homogeneous matrix of the spherical object according to the rotation matrix of the spherical object by using the following formula, namely the current pose of the spherical object.
Figure BDA0003736431100000161
Figure BDA0003736431100000162
Wherein r is 11 、r 12 、r 13 、r 21 、r 22 、r 23 、r 31 、r 32 And r 33 Are elements in a rotation matrix of the spherical object, and H is a current homogeneous matrix of the spherical object.
Illustratively, the system further comprises:
the equivalent processing module is used for equivalent the spherical object into an Archimedes polyhedron;
the macro-patch setting module is used for setting a macro-patch at the center of a regular hexagon of the Archimedes polyhedron;
the small spot setting module is used for setting a small spot on at least one central line of a regular hexagon or a regular pentagon of the Archimedes polyhedron; the central line is a line segment connecting the central point and the end point of the regular hexagon or the regular pentagon.
According to the specific embodiment provided by the invention, the invention discloses the following technical effects:
the invention discloses a method and a system for determining a pose of a spherical object based on an image, wherein the method comprises the following steps: acquiring spot information in an image of a spherical object; determining two spots with the largest area as two target large spots according to the spot information, wherein the spots except the two target large spots are all used as target small spots; constructing a target triangular pyramid by taking the two target large spots as two vertexes of the bottom surface, taking the sphere center of the spherical object as a vertex except the bottom surface, and taking each target small spot as the other vertex of the bottom surface respectively to obtain a plurality of target triangular pyramids; respectively matching each target triangular pyramid with triangular pyramids in a database to obtain the number combination of two large spots of the triangular pyramid matched with each target triangular pyramid in the direction; the database stores the number and initial position coordinates of each large spot, and any two large spots and any one small spot are respectively used as three vertexes of the bottom surface, the sphere center of the spherical object is used as a triangular pyramid constructed by vertexes outside the bottom surface, and the two large spots and the one small spot which form the same triangular pyramid are arranged clockwise according to the sequence of the large spots, the large spots and the small spots; determining the number combination corresponding to the two target blobs by adopting a voting statistical mode, and further determining the number of each target blob; determining the initial position coordinates of each target macro-blob according to the number of each target macro-blob; determining the current position coordinates of each target macro-speckle according to the position information of the two target macro-speckles in the image; and determining the current pose of the spherical object according to the current position coordinates and the initial position coordinates of the two target large spots. The invention realizes the determination of the pose of the spherical object by adopting a triangular pyramid matching mode, is not limited by the division precision of longitude and latitude, and improves the determination precision of the pose of the spherical object.
The embodiments are described in a progressive manner in the specification, the heavy vertex description of each embodiment is different from that of other embodiments, and the same and similar parts among the embodiments can be referred to each other. The device disclosed in the embodiment corresponds to the method disclosed in the embodiment, so that the description is simple, and the relevant points can be referred to the description of the method part.
The principles and embodiments of the present invention have been described herein using specific examples, which are provided only to help understand the method and the core concept of the present invention; meanwhile, for a person skilled in the art, according to the idea of the present invention, the specific embodiments and the application range may be changed. In view of the above, the present disclosure should not be construed as limiting the invention.

Claims (8)

1. An image-based spherical object pose determination method is characterized by comprising the following steps:
acquiring spot information in an image of a spherical object; the spherical object is marked with a plurality of large spots and a plurality of small spots;
determining two spots with the largest area as two target large spots according to the spot information, wherein the spots except the two target large spots are all used as target small spots;
constructing a target triangular pyramid by taking the two target large spots as two vertexes of the bottom surface, taking the sphere center of the spherical object as a vertex except the bottom surface, and taking each target small spot as the other vertex of the bottom surface respectively to obtain a plurality of target triangular pyramids;
respectively matching each target triangular pyramid with triangular pyramids in a database to obtain the number combination of two large spots of the triangular pyramid matched with each target triangular pyramid in the direction; the database stores the number and initial position coordinates of each large spot, any two large spots and any one small spot respectively as three vertexes of the bottom surface, the sphere center of the spherical object is used as a triangular pyramid constructed by vertexes except the bottom surface, and the two large spots and the one small spot which form the same triangular pyramid are arranged clockwise according to the sequence of the large spots, the large spots and the small spots;
determining the number combination corresponding to the two target large spots by adopting a voting statistic mode, and further determining the number of each target large spot;
determining the initial position coordinates of each target macro-blob according to the number of each target macro-blob;
determining the current position coordinate of each target macro-speckle according to the position information of the two target macro-speckles in the image;
and determining the current pose of the spherical object according to the current position coordinates and the initial position coordinates of the two target large spots.
2. The image-based spherical object pose determination method according to claim 1, wherein the determining two blobs with the largest areas as two target large blobs according to the blob information, and all the blobs except the two target large blobs as target small blobs, specifically comprises:
correcting the image measurement area of the spots in the image by adopting the following formula to obtain the corrected area;
Figure FDA0003736431090000021
wherein S' represents the corrected area, S represents the image measurement area, theta is the included angle between the gradient direction of the central point of the spot relative to the XOZ plane and the XOZ plane, R is the radius of the spherical object, and x and z are the x-axis coordinate and the z-axis coordinate of the central point of the spot respectively;
carrying out secondary correction on the corrected area which is more than 2 times of the image measurement area to obtain the area after secondary correction; the area after the secondary correction is equal to 2 times of the image measurement area;
respectively taking the corrected area or the secondarily corrected area of the spot as the standard area of the spot;
and selecting two spots with the largest standard area as two target large spots, and determining spots except for the two target large spots as target small spots.
3. The image-based spherical object pose determination method according to claim 1, wherein the determining the current pose of the spherical object according to the current position coordinates and the initial position coordinates of the two large target blobs specifically comprises:
solving a rotation matrix of the spherical object by using the following equation;
Figure FDA0003736431090000022
Figure FDA0003736431090000023
(P t1 '-P t0 )×(P t2 '-P t0 )=R M [(P t1 -P t0 )×(P t2 -P t0 )];
wherein, P t1 ' and P t2 ' Current position coordinates, P, of two target blobs, respectively t1 And P t2 Initial position coordinates, R, of two target blobs, respectively M Rotation matrix, P, representing spherical objects t0 Representing the sphere center coordinates of a spherical object;
determining a current homogeneous matrix of the spherical object by using the following formula according to the rotation matrix of the spherical object, namely determining the current pose of the spherical object;
Figure FDA0003736431090000031
Figure FDA0003736431090000032
wherein r is 11 、r 12 、r 13 、r 21 、r 22 、r 23 、r 31 、r 32 And r 33 Are elements in a rotation matrix of the spherical object, and H is a current homogeneous matrix of the spherical object.
4. The image-based spherical object pose determination method according to claim 1, wherein the acquiring speckle information in the image of the spherical object further comprises:
the spherical object is equivalent to an Archimedes polyhedron;
arranging a large spot at the center of a regular hexagon of the Archimedes polyhedron;
setting a small spot on at least one central line of a regular hexagon or a regular pentagon of the Archimedes polyhedron; the central line is a line segment connecting the central point and the end point of the regular hexagon or the regular pentagon.
5. An image-based spherical object pose determination system, the system comprising:
the spot information acquisition module is used for acquiring spot information in the image of the spherical object; the spherical object is marked with a plurality of large spots and a plurality of small spots;
the target spot selection module is used for determining two spots with the largest areas as two target large spots according to the spot information, and the spots except the two target large spots are all used as target small spots;
the target triangular pyramid building module is used for building a target triangular pyramid by taking the two target large spots as two vertexes of the bottom surface, taking the sphere center of the spherical object as a vertex except the bottom surface and taking each target small spot as the other vertex of the bottom surface respectively to obtain a plurality of target triangular pyramids;
the number combination determining module is used for respectively matching each target triangular pyramid with the triangular pyramids in the database to obtain the number combination of two large spots of the triangular pyramid matched with each target triangular pyramid in the direction; the database stores the number and initial position coordinates of each large spot, any two large spots and any one small spot respectively as three vertexes of the bottom surface, the sphere center of the spherical object is used as a triangular pyramid constructed by vertexes except the bottom surface, and the two large spots and the one small spot which form the same triangular pyramid are arranged clockwise according to the sequence of the large spots, the large spots and the small spots;
the number determining module of the target big spots is used for determining the number combination corresponding to the two target big spots by adopting a voting statistic mode so as to determine the number of each target big spot;
an initial position coordinate determination module, configured to determine an initial position coordinate of each of the target blobs according to the number of each of the target blobs;
the current position coordinate determination module is used for determining the current position coordinate of each target macro-speckle according to the position information of the two target macro-speckles in the image;
and the current pose determining module is used for determining the current pose of the spherical object according to the current position coordinates and the initial position coordinates of the two target blobs.
6. The image-based spherical object pose determination system according to claim 5, wherein the target spot selection module specifically comprises:
the correction submodule is used for correcting the image measurement area of the spots in the image by adopting the following formula to obtain the corrected area;
Figure FDA0003736431090000041
wherein S' represents the corrected area, S represents the image measurement area, theta is the included angle between the gradient direction of the central point of the spot relative to the XOZ plane and the XOZ plane, R is the radius of the spherical object, and x and z are the x-axis coordinate and the z-axis coordinate of the central point of the spot respectively;
the secondary correction submodule is used for carrying out secondary correction on the corrected area which is larger than 2 times of the image measurement area to obtain the area after secondary correction; the area after the secondary correction is equal to 2 times of the image measurement area;
the standard area determination submodule is used for respectively taking the corrected area or the secondarily corrected area of the spot as the standard area of the spot;
and the target spot selection submodule is used for selecting the two spots with the maximum standard areas as two target large spots and determining spots except the two target large spots as target small spots.
7. The image-based spherical object pose determination system according to claim 5, wherein the current position coordinate determination module specifically comprises:
the rotation matrix solving submodule is used for solving a rotation matrix of the spherical object by using the following equation;
Figure FDA0003736431090000051
Figure FDA0003736431090000052
(P t1 '-P t0 )×(P t2 '-P t0 )=R M [(P t1 -P t0 )×(P t2 -P t0 )];
wherein, P t1 ' and P t2 ' Current position coordinates, P, of two target blobs, respectively t1 And P t2 Initial position coordinates, R, of two target blobs, respectively M Rotation matrix representing a spherical object, P t0 Representing the sphere center coordinates of a spherical object;
the current pose determining submodule is used for determining a current homogeneous matrix of the spherical object by using the following formula according to the rotation matrix of the spherical object, namely the current pose of the spherical object;
Figure FDA0003736431090000053
Figure FDA0003736431090000054
wherein r is 11 、r 12 、r 13 、r 21 、r 22 、r 23 、r 31 、r 32 And r 33 Are elements in a rotation matrix of the spherical object, and H is a current homogeneous matrix of the spherical object.
8. An image-based spherical object pose determination system according to claim 5, characterized in that the system further comprises:
the equivalent processing module is used for enabling the spherical object to be equivalent to an Archimedes polyhedron;
the macro-patch setting module is used for setting a macro-patch at the center position of a regular hexagon of the Archimedes polyhedron;
the small spot setting module is used for setting a small spot on at least one central line of a regular hexagon or a regular pentagon of the Archimedes polyhedron; the central line is a line segment connecting the central point and the end point of the regular hexagon or the regular pentagon.
CN202210804715.7A 2022-07-08 2022-07-08 Image-based spherical object pose determination method and system Active CN115170665B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210804715.7A CN115170665B (en) 2022-07-08 2022-07-08 Image-based spherical object pose determination method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210804715.7A CN115170665B (en) 2022-07-08 2022-07-08 Image-based spherical object pose determination method and system

Publications (2)

Publication Number Publication Date
CN115170665A true CN115170665A (en) 2022-10-11
CN115170665B CN115170665B (en) 2023-08-01

Family

ID=83493420

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210804715.7A Active CN115170665B (en) 2022-07-08 2022-07-08 Image-based spherical object pose determination method and system

Country Status (1)

Country Link
CN (1) CN115170665B (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130070239A1 (en) * 2005-06-09 2013-03-21 Analog Modules Inc. Laser spot tracking with off-axis angle detection
CN107146254A (en) * 2017-04-05 2017-09-08 西安电子科技大学 The Camera extrinsic number scaling method of multicamera system
CN108253915A (en) * 2018-01-18 2018-07-06 北方民族大学 A kind of six ball models and scaling method
CN110686650A (en) * 2019-10-29 2020-01-14 北京航空航天大学 Monocular vision pose measuring method based on point characteristics
US20200064119A1 (en) * 2018-08-22 2020-02-27 Government Of The United States Of America, As Represented By The Secretary Of Commerce Non-contact coordinate measuring machine using a noncontact metrology probe
CN111833333A (en) * 2020-07-16 2020-10-27 西安科技大学 Binocular vision-based boom type tunneling equipment pose measurement method and system
CN113538592A (en) * 2021-06-18 2021-10-22 深圳奥锐达科技有限公司 Calibration method and device for distance measuring device and camera fusion system
US20220044443A1 (en) * 2019-05-22 2022-02-10 Sichuan Visensing Technology Co., Ltd. Fisheye camera calibration system, method and electronic device

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130070239A1 (en) * 2005-06-09 2013-03-21 Analog Modules Inc. Laser spot tracking with off-axis angle detection
CN107146254A (en) * 2017-04-05 2017-09-08 西安电子科技大学 The Camera extrinsic number scaling method of multicamera system
CN108253915A (en) * 2018-01-18 2018-07-06 北方民族大学 A kind of six ball models and scaling method
US20200064119A1 (en) * 2018-08-22 2020-02-27 Government Of The United States Of America, As Represented By The Secretary Of Commerce Non-contact coordinate measuring machine using a noncontact metrology probe
US20220044443A1 (en) * 2019-05-22 2022-02-10 Sichuan Visensing Technology Co., Ltd. Fisheye camera calibration system, method and electronic device
CN110686650A (en) * 2019-10-29 2020-01-14 北京航空航天大学 Monocular vision pose measuring method based on point characteristics
CN111833333A (en) * 2020-07-16 2020-10-27 西安科技大学 Binocular vision-based boom type tunneling equipment pose measurement method and system
CN113538592A (en) * 2021-06-18 2021-10-22 深圳奥锐达科技有限公司 Calibration method and device for distance measuring device and camera fusion system

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ENRIC CORONA 等: "Pose Estimation for Objects with Rotational Symmetry", ARXIV, pages 1 - 24 *
王天宇 等: "基于单目视觉和固定靶标的位姿测量系统", 红外与激光工程, pages 1 - 8 *
钱伟 等: "数字图像相关方法中数字散斑场的制作与应用研究", 液晶与显示, pages 81 - 89 *

Also Published As

Publication number Publication date
CN115170665B (en) 2023-08-01

Similar Documents

Publication Publication Date Title
KR102446163B1 (en) Target, method, and system for camera calibration
CN111243032A (en) Full-automatic checkerboard angular point detection method
US8106968B1 (en) System and method for pattern detection and camera calibration
US8949060B2 (en) Inspection method
CN112614188B (en) Dot-matrix calibration board based on cross ratio invariance and identification method thereof
JP2022528301A (en) Calibration method, positioning method, equipment, electronic devices and storage media
EP3944194B1 (en) Fisheye camera calibration system, method and apparatus, and electronic device and storage medium
CN113963067B (en) Calibration method for calibrating large-view-field visual sensor by using small target
CN111699513B (en) Calibration plate, internal parameter calibration method, machine vision system and storage device
CN113096191B (en) Intelligent calibration method for monocular camera based on coding plane target
CN115170665B (en) Image-based spherical object pose determination method and system
CN110163922B (en) Fisheye camera calibration system, fisheye camera calibration method, fisheye camera calibration device, electronic equipment and storage medium
CN104484647B (en) A kind of high-resolution remote sensing image cloud height detection method
US6985609B2 (en) Method for identifying an object image
US11402524B2 (en) Geometric calibration of X-ray imaging systems
CN115713564A (en) Camera calibration method and device
CN110458951A (en) A kind of the modeling data acquisition methods and relevant apparatus of power grid shaft tower
CN113506347B (en) Camera internal reference processing method and system based on single picture
KR102442545B1 (en) Method and apparatus of detecting object using deep learning of omni directional image, method of autonomous driving of vehicle and drone using the method
CN115131433A (en) Non-cooperative target pose processing method and device and electronic equipment
CN114494316A (en) Corner marking method, parameter calibration method, medium, and electronic device
CN110399931B (en) Fisheye image matching method and system
Li et al. Positional deviation detection of silicone caps on FPCB
CN115131273A (en) Information processing method, ranging method and device
CN111445453A (en) Method, system, medium, and apparatus for determining deviation of key image acquired by camera

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant