CN113129394B - Parallelogram coding mark based on region division coding and coding method thereof - Google Patents
Parallelogram coding mark based on region division coding and coding method thereof Download PDFInfo
- Publication number
- CN113129394B CN113129394B CN202110392310.2A CN202110392310A CN113129394B CN 113129394 B CN113129394 B CN 113129394B CN 202110392310 A CN202110392310 A CN 202110392310A CN 113129394 B CN113129394 B CN 113129394B
- Authority
- CN
- China
- Prior art keywords
- coding
- mark
- parallelogram
- region
- pattern
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/20—Contour coding, e.g. using detection of edges
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
The invention discloses a parallelogram coding mark based on region partition coding and a coding method thereof, which mainly comprises the following steps: the positive integer e is the coding number of the parallelogram coding mark; establishing a coding coordinate system o of a parallelogram coding mark corresponding to a coding number e e ‑X e Y e Z e (ii) a Dividing a parallelogram coding mark with a coding number of e into 6 coding regions, wherein each coding region in the parallelogram coding mark with the coding number of e comprises 2 coding mark patterns; numbering 6 coding regions in the code sign; each corner point of the 6 coding regions within the coding logo is coded. The invention divides the parallelogram coding mark into six areas for coding, and has higher processing precision for affine transformation images; the parallelogram coding mark has large information capacity, four corners of the parallelogram coding mark can realize sub-pixel level image coordinate extraction, and the coding pattern is simple and is easy for digital image processing.
Description
Technical Field
The invention relates to the field of vision measurement in computer vision, which is suitable for the fields of camera calibration, target feature extraction, stereo matching, three-dimensional data splicing and the like, in particular to a coding method of a parallelogram coding mark based on region segmentation coding.
Background
With the development of modern industry, in order to improve the product quality and the product benefit and solve the measurement problems of large size, small size and complex background, the visual measurement technology is compliant. The vision measurement technology has the characteristics of non-contact, difficult influence of temperature change and vibration, high precision, good portability and the like. In the field of vision measurement, the problems of difficult camera calibration under a large visual field and a complex background, how to realize stereo matching and three-dimensional data splicing of a large-size target and the like are still research hotspots.
In order to effectively solve the problems, the coding mark point technology is rapidly developed, the types of the generated coding mark points are many, but most of the coding mark points are annular, circular or fan-shaped, and the like, and when the coding mark points face affine transformation images or three-dimensionally splice large-size targets, the accuracy and precision of results cannot be ensured, and a plurality of difficulties exist in the coding and coding processes, so that the digital images are not easy to process. Therefore, the coding method of the parallelogram coding mark based on the region partition coding effectively makes up the defects.
Disclosure of Invention
The technical problem to be solved by the invention is to provide a coding method of a parallelogram coding sign based on region segmentation coding, which overcomes the defects of the prior art, and the method for coding by using segmented regions can still cope with camera calibration under large view field and complex background, and stereo matching and three-dimensional data splicing of large-size targets under the condition of keeping accuracy and accuracy.
In order to solve the technical problems, the invention adopts a technical scheme that: the method for coding the parallelogram coding mark based on the region partition coding mainly comprises the following steps:
step 2, establishing a coding coordinate system o of the parallelogram coding mark corresponding to the coding number e e -X e Y e Z e ;
Step 3, dividing the parallelogram coding marks with the coding number e into 6 coding regions, wherein each coding region in the parallelogram coding marks with the coding number e comprises 2 coding mark patterns;
step 4, numbering 6 coding areas in the parallelogram coding mark corresponding to the coding number e;
and 5, coding each corner point of 6 coding areas in the parallelogram coding mark corresponding to the coding number e.
Further, in step 3, the specific method for dividing the region of the parallelogram coding flag with the coding number e includes the following steps:
step 3.1, recording the coordinate of the positioning circle mass center in the parallelogram coding mark corresponding to the coding number e as o l,e (x l,e ,y l,e 0), the coordinate of the orientation circular ring mass center in the parallelogram coding mark corresponding to the coding number e is o d,e (x d,e ,y d,e 0); locate the distance to the centroid o l,e The two nearest vertexes are respectively marked as C e,1min (x e,1min ,y e,1min 0) and C e,2min (x e,2min ,y e,2min ,0);
Step 3.2, respectively calculating the direction vector in the parallelogram coding mark corresponding to the coding number e according to the following formulaAnd vertex vector
Step 3.3, recording the centroid o of the positioning circle l,e And parallel to the vertex vectorIs a straight line of 1,e Over-orientation of the center of mass o of the ring d,e And parallel to the vertex vectorIs a straight line of 2,e Passing through the location of the centroid o l,e And the center of mass o of the directional ring d,e Is a straight line of 3,e Then straight line l 3,e Straight line l 1,e And a straight line l 2,e The parallelogram coding flag with the coding number e can be divided into 6 coding areas.
Further, in step 4, the specific method for numbering the coding region of the parallelogram coding flag with the coding number e includes the following steps:
step 4.1, in the parallelogram coding mark with the coding number e, respectively calculating a first judgment vector in the parallelogram coding mark with the coding number e according to the following formulaAnd a second decision vector
Step 4.2, respectively calculating the first vector of the area division in the parallelogram coding mark corresponding to the coding number e by the following formulaAnd area division second vector
Step 4.3, dividing the first vector according to the regionAnd area division second vectorDetermine the vertex C of the direction situation e,1min (x e,1min ,y e,1min 0) locating a vertex for the 1 st coding region in the parallelogram coding flag with the coding number eOr 6 th coding region locating vertexCorrespondingly determining the vertex C e,2min (x e,2min ,y e,2min 0) locating the vertex for the 6 th coding regionOr 1 st coding region locating vertex
Step 4.4, positioning the vertex of the 1 st coding regionThe coding region is marked as the 1 st coding region in the parallelogram coding mark with the coding number e, and the 6 th coding region is positioned to the vertexThe coding region is marked as the 6 th coding region in the parallelogram coding mark with the coding number e;
and 4.5, taking the 1 st coding region of the parallelogram coding mark with the coding number of e as a starting region and the 6 th coding region as an end region, and sequentially marking the 6 coding regions in the parallelogram coding mark with the coding number of e as the 1 st coding region, the 2 nd coding region, the 3 rd coding region, the 4 th coding region, the 5 th coding region and the 6 th coding region of the parallelogram coding mark with the coding number of e according to the clockwise direction.
Further, in step 5, the method for coding each corner point of 6 coding regions in the parallelogram coding index with the coding number e comprises the following steps:
step 5.1, in the parallelogram coding mark corresponding to the coding number e, the centroid of the ith coding mark pattern in the sigma coding region is aligned to the straight line l 1e Is recorded asCentroid-to-straight line l of ith coded logo pattern in the pi-th coded region 2,e Is recorded asCentroid-to-straight line l of ith code mark pattern in theta code area 3,e Is recorded asWhere σ is 1,2,5,6, pi is 3,4, i is 1,2, θ is 1,2,3,4,5, 6;
step 5.2, in the parallelogram coding mark corresponding to the coding number e, according toAndthe size relationship between the sigma-bit coded mark patterns determines the 1 st bit coded mark pattern in the sigma-bit coded regionAnd 2 nd bit coded flag patternWhere σ is 1,2,5,6, i is 1,2, θ is σ;
within a parallelogram-shaped coding index corresponding to the coding number e, according toAndthe size relationship between the coded mark patterns determines and determines the 1 st bit of the coded mark pattern in the pi-th coding areaAnd 2 nd bit coded flag patternWherein pi is 3,4, i is 1,2, and θ is pi;
step 5.3, in the parallelogram coding mark with the coding number e, coding the j-th bit coding mark pattern in the theta coding areaThe corresponding code value is notedWherein j is 1,2 and θ is 1,2,3,4,5,6, andcan only take the value of 0 or 1;
step 5.4, for the parallelogram coding mark with the coding number e, the 12-bit binary number corresponding to the coding number e is marked as w e Stipulate thatRespectively corresponding to binary numbers w in sequence from the lowest order to the highest order e And satisfies the formula (11),
G T ·F e ==e (11)
wherein, the column vector G is (2) 0 ,2 1 ,2 2 ,2 3 ,2 4 ,2 5 ,2 6 ,2 7 ,2 8 ,2 9 ,2 10 ,2 11 ) T (ii) a And is
Step 5.5, according to the j bit coding mark pattern of the theta coding area in the parallelogram coding mark corresponding to the coding number e determined in the step 5.4Corresponding code valueThe value of (a) designates the j-th bit coding mark pattern of the theta-th coding area in the parallelogram coding mark corresponding to the coding number eWherein j is 1,2 and θ is 1,2,3,4,5, 6;
step 5.6, parallel four with code number eIn the edge-shaped coded markThe corner points on the coding region are marked as the first in a parallelogram coding mark with a coding number of eCorner point of a coding regionWherein
Further, in step 5.2, ifAnd isThen the 1 st coding mark pattern in the sigma coding region in the parallelogram coding mark with the coding number e is the 1 st coding mark pattern in the sigma coding region in the parallelogram coding mark with the coding number eThe 2 nd coding mark pattern in the sigma coding region in the parallelogram coding mark with the coding number of e is the 2 nd coding mark pattern in the sigma coding region in the parallelogram coding mark with the coding number of e
If it isAnd is provided withThen the sigma-th code in the parallelogram coding mark corresponding to the code number e is markedThe 2 nd coding mark pattern in the code region is the 1 st coding mark pattern in the sigma coding region in the parallelogram coding mark corresponding to the coding number eThe 1 st coding mark pattern in the sigma coding region in the parallelogram coding mark with the coding number of e is the 2 nd coding mark pattern in the sigma coding region in the parallelogram coding mark with the coding number of e
Further, in step 5.2, ifAnd isThen the 1 st coding mark pattern in the pi-th coding area in the parallelogram coding mark with the coding number e is the 1 st coding mark pattern in the pi-th coding area in the parallelogram coding mark with the coding number eThe 2 nd coding mark pattern in the pi-th coding area in the parallelogram coding mark with the coding number of e is the 2 nd coding mark pattern in the pi-th coding area in the parallelogram coding mark with the coding number of e
If it isAnd isThen the 2 nd coding mark picture in the pi coding area in the parallelogram coding mark with the coding number of eThe pattern of the 1 st bit coding mark in the pi coding region in the parallelogram coding mark corresponding to the coding number eThe 1 st coding mark pattern in the pi-th coding area in the parallelogram coding mark with the coding number of e is the 2 nd coding mark pattern in the pi-th coding area in the parallelogram coding mark with the coding number of e
Furthermore, in step 5.5, if the code number is e, the j-th coded mark pattern in the theta-th coded area in the corresponding parallelogram coded markIs coded value ofThe j-th bit coding mark pattern of the theta-th coding area in the parallelogram coding mark with the coding number eIs color I; if it isLet the j-th bit encode the mark patternIs color II, where j is 1,2 and θ is 1,2,3,4,5, 6.
Further, the color I and the color II have a distinct difference.
Also, a computer-readable storage medium is provided, comprising a computer program for use in conjunction with an electronic device having image processing capabilities, the computer program being executable by a processor to perform the encoding method.
The invention has the following beneficial effects:
1. the method for coding by utilizing the partition area, which is disclosed by the invention, takes four vertexes of the parallelogram coding mark as four coding angular points, and combines the characteristics that the four coding angular points are beneficial to extraction and high-precision positioning, so that the method for judging the color of each coding mark pattern is used for coding, and the positioning of the high-precision parallelogram coding mark, high-precision three-dimensional point cloud splicing and other applications can be realized, therefore, the method still has better robustness and precision in the face of affine transformation images, and is not easily influenced by complex environments;
2. in the parallelogram coding mark adopted by the coding method, because the orientation pattern and the positioning pattern are set, the method can also adapt to the condition that the angle of the camera changes, obtain accurate results, and has simple and convenient operation and strong flexibility;
3. in the parallelogram coding marks adopted by the coding method, 12 coding mark patterns are totally adopted, so 4096 different codes can be generated totally, and sufficient capacity is provided for three-dimensional data splicing of large-size targets or camera calibration under a large view field; meanwhile, as the coding capacity is large, the high accuracy can be still kept for the point cloud splicing of the three-dimensional data of the large-size target;
4. the parallelogram coding mark adopted by the coding method has simple structure and convenient operation, and is easy to obtain accurate coding information by using a digital image processing technology, thereby facilitating the extraction of real-time digital images in computer vision measurement and the realization of a decoding algorithm of the real-time parallelogram coding mark.
Drawings
FIG. 1 is a view of a parallelogram shaped code symbol when all code symbol patterns are white;
FIG. 2 is a schematic diagram of the distribution of the predetermined vector, the auxiliary vector and each region;
FIG. 3 is a schematic diagram of a parallelogram coding flag with a code number of 757;
FIG. 4 is a flowchart illustrating an encoding method according to the present invention.
Detailed Description
The following detailed description of the preferred embodiments of the present invention, taken in conjunction with the accompanying drawings, will make the advantages and features of the invention easier to understand by those skilled in the art, and thus will clearly and clearly define the scope of the invention.
Referring to fig. 1, the parallelogram coding flag used in the present invention includes a coding pattern and a parallelogram background pattern, wherein the coding pattern is in the parallelogram background pattern. And in the visual structured light three-dimensional measurement process, the four corners of the parallelogram coding mark are used for splicing the three-dimensional point cloud of the target curved surface.
The coding pattern of the parallelogram coding mark comprises a positioning pattern (a larger white circular connected domain shown in figure 1), an orientation pattern (a white circular connected domain shown in figure 1) and a coding mark pattern (a plurality of smaller white circular connected domains shown in figure 1), wherein the coding mark pattern is composed of a plurality of coding unit patterns. The judgment of the rotation direction of the parallelogram coding mark can be realized by the orientation pattern and the positioning pattern, and the coding mark pattern is used for coding each corner point of the parallelogram coding mark; in this embodiment, there are 12 coding unit patterns in total.
In the parallelogram coding mark, a connecting line of the centroid of the positioning pattern and the centroid of the orientation pattern is parallel to any one side of the parallelogram coding mark, and the midpoint of the connecting line of the centroid of the positioning pattern and the centroid of the orientation pattern is near the center position of the parallelogram coding mark. In this embodiment, in the square code square, the midpoint of the line connecting the centroid of the positioning pattern and the centroid of the orientation pattern coincides with the centroid of the square code square. Because the orientation pattern and the positioning pattern are set, the method can adapt to the condition that the angle of the camera changes, obtain an accurate result, and has simple and convenient operation and strong flexibility.
The positioning pattern, the orientation pattern and the coding mark pattern in the parallelogram coding mark are not overlapped and not communicated. The parallelogram coding mark is a parallelogram with the length of a and the width of b, and both a and b are larger than zero; in this embodiment, the parallelogram-shaped code marks are square with a side length of 40 mm. In the parallelogram coding mark, the contour length of each coding unit pattern is smaller than that of the positioning pattern, and the contour length of the positioning pattern is smaller than that of the parallelogram coding mark. In this embodiment, all the positioning patterns are solid circles with a diameter of 6.5 mm in the square coding squares; all the directional patterns are circular rings with an inner diameter of 3.5 mm and an outer diameter of 6.5 mm; the number of the code cell patterns in each code square was 12 in total, and each was a solid circle having a diameter of 3 mm.
The background color of the parallelogram coding mark is marked as color I, the colors of the positioning pattern and the orientation pattern are marked as color II, and the colors of all the coding unit patterns are the same as the color I or the same as the color II, and the color I is obviously different from the color II. In this example, the selected color I is black and the color II is white. In the parallelogram-shaped coded mark, the positions and colors of all the coding unit patterns can be determined by the coding method of the invention.
Taking the integer z v As an initial coding number in the coding plane target, calculating and determining the total number epsilon of the parallelogram coding units according to the number M of rows and the number N of columns of calibration angular points in the coding plane target; in this embodiment, ∈ ═ 4096;
wherein z is v Satisfies the formula: z is a radical of v ≤4096-ε;
The total number of parallelogram-shaped coding units ε can be obtained by the following formula:
if M, N are both odd numbers, or M, N is an odd-even number, then ε can be calculated from equation (2):
ε=[(M-1)(N-1)]/2+M+N;
if M, N are both even numbers, then ε can be calculated by equation (3):
ε=[(M-1)(N-1)+1]/2+M+N;
taking an integer variable e and giving an initial value e ═ z v ;
Referring to fig. 4, a method for coding a parallelogram coding flag based on region partition coding mainly includes the following steps:
in the parallelogram coding marks adopted by the coding method, 12 coding mark patterns are totally adopted, so 4096 different codes can be generated totally, and sufficient capacity is provided for three-dimensional data splicing of large-size targets or camera calibration under a large view field; meanwhile, due to the fact that the coding capacity is large, high accuracy can be still kept for three-dimensional data point cloud splicing of large-size targets.
Step 2, establishing a coding coordinate system o of the parallelogram coding mark corresponding to the coding number e e -X e Y e Z e ;
Selecting one vertex on the parallelogram coding mark with the code number e as the origin o of the coding coordinate system e Recording the center of mass O of the directional ring in the code mark d,e Point-oriented positioning circular mass center O l,e The vector of (a) is a direction vector with a code number in the code signTo be measured by the direction vectorDirection of (2) as Y of the coding coordinate system of the coding mark e An axial direction;
in the plane of the parallelogram coding mark with the coding number e, the original point o of the coding coordinate system of the coding mark is used e Make one and Y as the starting point e Unit vector with same axial positive directionWhen the person looks at the coding mark, the origin o of the coding coordinate system of the coding mark is used e As a rotation center, in the plane of the coding mark, a unit vectorClockwise rotation of 90 degrees is carried out to obtain a rotation unit vectorWill rotate the unit vectorAs X of said coding coordinate system e Axial, simultaneous encoding of Z of the coordinate system e Axis, X e Axis and Y e The axes meet the right-hand criterion, thereby establishing a coding coordinate system o e -X e Y e Z e . In this embodiment, the coordinate system o is encoded 1 "-XYZ is shown in FIG. 2.
Step 3, dividing the parallelogram coding mark with the coding number e into 6 coding regions, so that each coding region in the coding mark comprises 2 coding mark patterns;
the specific method for dividing the region comprises the following steps:
step 3.1, recording the coordinate of the positioning circle mass center in the parallelogram coding mark corresponding to the coding number e as o l,e (x l,e ,y l,e 0), the coordinates of the center of mass of the oriented circle in the code mark are o d,e (x d,e ,y d,e 0), locate the distance to the centroid o l,e The two nearest vertexes are respectively marked as C e,1min (x e,1min ,y e,1min 0) and C e,2min (x e,2min ,y e,2min ,0);
Step 3.2, respectively calculating the direction vector in the parallelogram coding mark corresponding to the coding number e according to the following formulaAnd vertex vector
Step 3.3, recording the centroid o of the positioning circle l,e And parallel to the vertex vectorIs a straight line of 1,e Over-orientation of the center of mass o of the ring d,e And parallel to the vertex vectorIs a straight line of 2,e Passing through the location of the centroid o l,e And the center of mass o of the directional ring d,e Is a straight line of 3,e Then straight line l 3,e Line l 1,e And a straight line l 2,e The parallelogram coding mark with the coding number e can be divided into 6 coding regions, and each coding region in the coding mark comprises 2 coding mark patterns.
In this embodiment, the code number e of the parallelogram-shaped code mark is 757, and if the color of all the code mark patterns is color II, the straight line l 3,757 Line l 1,757 And a straight line l 2,757 As shown in fig. 2.
Step 4, numbering 6 coding areas in the parallelogram coding mark corresponding to the coding number e;
the specific method comprises the following steps:
step 4.1, in the parallelogram coding mark with the coding number e, respectively calculating a first judgment vector in the parallelogram coding mark with the coding number e according to the following formulaAnd a second decision vector
Step 4.2, respectively calculating the first vector of the area division in the parallelogram coding mark corresponding to the coding number e by the following formulaAnd area division second vector
Step 4.3, dividing the first vector according to the regionAnd area division second vectorDetermine the vertex C of the direction situation e,1min (x e,1min ,y e,1min 0) locating a vertex for the 1 st coding region in the parallelogram coding flag with the coding number eOr 6 th coding region locating vertexCorrespondingly determining the vertex C e,2min (x e,2min ,y e,2min 0) locating the vertex for the 6 th coding regionOr 1 st coding region locating vertexThe method specifically comprises the following situations:
(1) if z is J1 > 0 and z J2 If < 0, the vertex C is pointed to e,1min (x e,1min ,y e,1min 0) positioning vertex of the 1 st coding region in the parallelogram coding mark with the coding number eAnd the coding mark includes the 1 st coding region positioning vertexThe coding region of (1) is marked as the 1 st coding region in the coding mark; at the same time, the vertex C e,2min (x e,2min ,y e,2min 0) positioning vertex of the 6 th coding region in the parallelogram coding mark with the coding number eAnd the coding mark includes the 6 th coding region positioning vertexThe coding region of (2) is marked as the 6 th coding region in the coding mark;
(2) if it isAnd isThen vertex C will be pointed out e,1min (x e,1min ,y e,1min 0) positioning vertex of the 6 th coding region in the parallelogram coding mark with the coding number eAnd the 6 th coding region locating vertex is included in the coding markThe coding region of (2) is marked as the 6 th coding region in the coding mark; at the same time, the vertex C e,2min (x e,2min ,y e,2min 0) positioning vertex of the 1 st coding region in the parallelogram coding mark with the coding number eAnd the coding mark includes the 1 st coding region positioning vertexThe coding region of (1) is marked as the 1 st coding region in the coding flag.
Step 4.4, positioning vertex of the 1 st coding regionThe coding region is marked as the 1 st coding region in the parallelogram coding mark with the coding number e, and the 6 th coding region is positioned at the vertexThe coding region is marked as the 6 th coding region in the parallelogram coding mark with the coding number e;
and 4.5, taking the 1 st coding region of the parallelogram coding mark with the coding number of e as a starting region and the 6 th coding region as an end region, and sequentially marking the 6 coding regions in the parallelogram coding mark with the coding number of e as the 1 st coding region, the 2 nd coding region, the 3 rd coding region, the 4 th coding region, the 5 th coding region and the 6 th coding region of the parallelogram coding mark with the coding number of e according to the clockwise direction.
In this embodiment, in the parallelogram-shaped code flag with the code number of 757, the 1 st code region is used as the start region, and the 6 th code region is used as the end region, and the 1 st code region, the 2 nd code region, the 3 rd code region, the 4 th code region, the 5 th code region and the 6 th code region of the parallelogram-shaped code flag corresponding to the code number are obtained in the clockwise direction as shown in fig. 2.
And 5, coding each corner point of 6 coding areas in the parallelogram coding mark corresponding to the coding number e.
The method of encoding each corner point of the coding mark comprises the steps of:
step 5.1, in the parallelogram coding mark corresponding to the coding number e, the centroid of the ith coding mark pattern in the sigma coding region is converted into a straight line l 1,e Is recorded asCentroid-to-straight line l of ith coded logo pattern in the pi-th coded region 2,e Is recorded asCentroid-to-straight line l of ith code mark pattern in theta code area 3,e Is recorded asWhere σ ═ 1,2,5,6, pi ═ 3,4, i ═ 1,2, θ ═ 1,2,3,4,5, 6;
step 5.2, in the parallelogram coding mark with the coding number e, according toAndthe size relationship between the sigma-bit coded mark patterns determines the 1 st bit coded mark pattern in the sigma-bit coded regionAnd 2 nd bit coded flag patternWhere σ ═ 1,2,5,6, i ═ 1,2, and θ ═ σ; the method specifically comprises the following situations:
(1) if it isAnd isThen the 1 st coding mark pattern in the sigma coding region in the parallelogram coding mark with the coding number e is the 1 st coding mark pattern in the sigma coding region in the coding markLet the 2 nd coded mark pattern in the sigma-th coding region be the 2 nd coded mark pattern in the sigma-th coding region in the coded mark
(2) If it isAnd isThe 2 nd coding mark pattern in the sigma coding region in the parallelogram coding mark with the coding number e is the 1 st coding mark pattern in the sigma coding region in the coding markLet the 1 st coding mark pattern in the sigma coding region be the 2 nd coding mark pattern in the sigma coding region in the coding mark
Within a parallelogram-shaped coding index corresponding to the coding number e, according toAndthe size relationship between the coded mark patterns determines and determines the 1 st bit of the coded mark pattern in the pi-th coding areaAnd 2 nd bit coded flag patternWherein pi is 3,4, i is 1,2, and θ is pi; the method specifically comprises the following situations:
(1) if it isAnd isThen the 1 st coded mark pattern in the pi-th coding region in the parallelogram coded mark with the code number e is the 1 st coded mark pattern in the pi-th coding region in the coded markNote that the 2 nd coded mark pattern in the pi-th coding region is the 2 nd coded mark pattern in the pi-th coding region in the coded mark
(2) If it isAnd isThen the 2 nd coding mark pattern in the pi-th coding area in the parallelogram coding mark with the coding number e is the 1 st coding mark pattern in the pi-th coding area in the coding markMarking the 1 st coded mark pattern in the pi-th coding region as the 2 nd coded mark pattern in the pi-th coding region of the coded mark
In this embodiment, the centroid of the 1 st code mark pattern in the σ -encoding region in the parallelogram code mark corresponding to code number 757 is directed to the straight line l 1 And a straight line l 3 Are respectively at a distance ofSatisfy the requirement ofAnd the centroid of the 2 nd coding mark pattern in the sigma coding region in the coding mark is respectively positioned to the straight line l 1 And a straight line l 3 Are respectively at a distance ofSatisfy the requirement ofThen the 1 st coded mark pattern in the sigma coding region in the parallelogram coded mark with the code number of 757 is the 1 st coded mark pattern in the sigma coding region in the coded markMarking the 2 nd coding mark pattern in the sigma-th coding region in the coding mark as the 2 nd coding mark pattern in the sigma-th coding region in the coding mark
In this embodiment, the 1 st coded mark in the pi-th coded region in the parallelogram coded mark corresponding to the code number 757The centroid of the pattern respectively falling on the straight line l 2 And a straight line l 3 Are respectively at a distance ofSatisfy the requirement ofAnd the centroid of the 2 nd coded mark pattern in the pi-th coded region in the coded mark is respectively aligned to the line l 2 And a straight line l 3 Are respectively at a distance ofSatisfy the requirement ofThen the 1 st coded mark pattern in the pi-th coded area in the parallelogram coded mark with the mark number of 757 is the 1 st coded mark pattern in the pi-th coded area in the coded markNoting that the 2 nd coded mark pattern in the pi-th coding region in the coded mark is the 2 nd coded mark pattern in the pi-th coding region in the coded mark
Step 5.3, in the parallelogram coding mark with the coding number e, coding the j-th coding mark pattern in the theta-th coding areaThe corresponding code value is notedWherein j is 1,2 and θ is 1,2,3,4,5,6, andcan only take the value of 0 or 1;
step 5.4,For the parallelogram coding mark with the coding number e, the 12-bit binary number corresponding to the coding number e is marked as w e Provision forSequentially and respectively corresponding to binary numbers w from the lowest order to the highest order e And satisfies the formula (11),
G T ·F e ==e (11)
wherein, the column vector G is (2) 0 ,2 1 ,2 2 ,2 3 ,2 4 ,2 5 ,2 6 ,2 7 ,2 8 ,2 9 ,2 10 ,2 11 ) T (ii) a And is
In this example, G T ·F 757 757, and column vector G (2) 0 ,2 1 ,2 2 ,2 3 ,2 4 ,2 5 ,2 6 ,2 7 ,2 8 ,2 9 ,2 10 ,2 11 ) T ;
Step 5.5, according to the j bit coding mark pattern of the theta coding area in the parallelogram coding mark corresponding to the coding number e determined in the step 5.4Corresponding code valueThe value of (a) designates the j-th bit coding mark pattern of the theta-th coding area in the parallelogram coding mark corresponding to the coding number eWherein j is 1,2 and θ is 1,2,3,4,5, 6; the method specifically comprises the following situations:
(1) if the code number is e, the j-th coded mark pattern in the theta-th coded area in the corresponding parallelogram coded markIs coded value ofThe j-th bit coding mark pattern of the theta-th coding area in the parallelogram coding mark with the coding number of eIs color I, where j is 1,2 and θ is 1,2,3,4,5, 6;
(2) if the code number is e, the j-th coded mark pattern in the theta-th coded area in the corresponding parallelogram coded markIs coded value ofThe j-th bit coding mark pattern in the theta-th coding area in the parallelogram coding mark corresponding to the coding number e is made to beIs color II, where j is 1,2 and θ is 1,2,3,4,5, 6;
then the result obtained in step 5.4The color of all of the coded logo patterns in each of the coded areas in the parallelogram-shaped coded logo corresponding to reference number 757 is shown in FIG. 3, where a portion of the coded logo patterns are the same color as the background color and are not shown.
Step 5.6, the first parallelogram coding mark with the coding number eThe corner points on the coding region are marked as the first in the parallelogram coding mark with the coding number of eCorner point of a coding regionWherein
Therefore, the coding work of the parallelogram coding mark with the coding number of 757 is completed, and the coding sequence numbers of the four angular points are respectively as follows: corner point of No. 1 coding region in parallelogram coding mark with code number 757Corner point of No. 3 coding region in parallelogram coding mark with code number 757Corner of the 4 th coding region in a 757 code number parallelogram coding indexCorner point of the 6 th coding region in the parallelogram coding index with code number 757The coding sequence number of each angular point can realize the judgment of the position of the uniquely determined angular point on the parallelogram coding mark.
The coding of the parallelogram coding flags of the other code numbers can be completed by referring to the coding process of the parallelogram coding flag corresponding to the code number 757.
The invention also provides a computer readable storage medium comprising a computer program for use with an electronic device having an image processing function, wherein the computer program is executable by a processor to perform the encoding method.
The above description is only an embodiment of the present invention, and not intended to limit the scope of the present invention, and all modifications of equivalent structures and equivalent processes performed by the present specification and drawings, or directly or indirectly applied to other related technical fields, are included in the scope of the present invention.
Claims (6)
1. A coding method of a parallelogram coding flag based on region partition coding is characterized in that: four vertexes of the parallelogram coding mark are used as four angular points of the parallelogram coding mark, and the four angular points of the parallelogram coding mark are used for splicing three-dimensional point clouds of a target curved surface in the visual structured light three-dimensional measurement process;
the method mainly comprises the following steps:
step 1, recording a positive integer e as a coding number of the parallelogram coding mark, wherein e belongs to [0,4095 ];
step 2, establishing a coding coordinate system o of the parallelogram coding mark corresponding to the coding number e e -X e Y e Z e ;
Step 3, dividing the parallelogram coding sign with the coding number e into 6 coding areas, wherein each coding area in the parallelogram coding sign with the coding number e comprises 2 coding sign patterns, and the method comprises the following steps:
step 3.1, recording the coordinate of the positioning circle mass center in the parallelogram coding mark corresponding to the coding number e as o l,e (x l,e ,y l,e 0), the coordinate of the orientation ring centroid in the parallelogram code sign corresponding to the code number e is o d,e (x d,e ,y d,e 0); locate the distance to the circular centroid o l,e More recentTwo vertexes are respectively marked as C e,1min (x e,1min ,y e,1min 0) and C e,2min (x e,2min ,y e,2min ,0);
Step 3.2, respectively calculating the direction vector in the parallelogram coding mark corresponding to the coding number e according to the following formulaAnd vertex vector
Step 3.3, recording the centroid o of the positioning circle l,e And parallel to the vertex vectorIs a straight line of 1,e Over-orientation of the center of mass o of the ring d,e And parallel to the vertex vectorIs a straight line of 2,e Passing through the location of the centroid o l,e And the center of mass o of the directional ring d,e Is a straight line of 3,e Then straight line l 3,e Straight line l 1,e And a straight line l 2,e The parallelogram coding mark with the coding number e can be divided into 6 coding areas;
step 4, numbering 6 coding areas in the parallelogram coding mark corresponding to the coding number e;
step 5, coding each corner point of 6 coding areas in the parallelogram coding mark corresponding to the coding number e, comprising the following steps:
step 5.1, in the parallelogram coding mark corresponding to the coding number e, the centroid of the ith coding mark pattern in the sigma coding region is converted into a straight line l 1,e Is recorded asCentroid-to-straight line l of ith coded logo pattern in the pi-th coded region 2,e Is recorded asCentroid-to-straight line l of ith code mark pattern in theta code area 3,e Is recorded asWhere σ is 1,2,5,6, pi is 3,4, i is 1,2, θ is 1,2,3,4,5, 6;
step 5.2, in the parallelogram coding mark corresponding to the coding number e, according toAndthe size relationship between the sigma-bit coded mark patterns determines the 1 st bit coded mark pattern in the sigma-bit coded regionAnd 2 nd bit coded flag patternWhere σ ═ 1,2,5,6, i ═ 1,2, and θ ═ σ;
within a parallelogram-shaped coding index corresponding to the coding number e, according toAndthe size relationship between the coded mark patterns determines the 1 st bit in the pi coding regionAnd 2 nd bit coded flag patternWherein pi is 3,4, i is 1,2, and θ is pi;
step 5.3, in the parallelogram coding mark with the coding number e, coding the j-th bit coding mark pattern in the theta coding areaThe corresponding code value is notedWherein j is 1,2 and θ is 1,2,3,4,5,6, andcan only take the value of 0 or 1;
step 5.4, for the parallelogram coding mark with the coding number e, recording the 12-bit binary number with the coding number e as w e Stipulate that Respectively corresponding to binary numbers w in sequence from the lowest order to the highest order e And satisfies the formula (11),
G T ·F e ==e (11)
wherein, the column vector G is (2) 0 ,2 1 ,2 2 ,2 3 ,2 4 ,2 5 ,2 6 ,2 7 ,2 8 ,2 9 ,2 10 ,2 11 ) T (ii) a And is
Step 5.5, according to the j bit coding mark pattern of the theta coding area in the parallelogram coding mark corresponding to the coding number e determined in the step 5.4Corresponding code valueThe value of (a) designates the j-th bit coding mark pattern of the theta-th coding area in the parallelogram coding mark corresponding to the coding number eWherein j is 1,2 and θ is 1,2,3,4,5, 6;
2. The encoding method according to claim 1, wherein: in step 4, the specific method for numbering the coding region of the parallelogram coding mark with the coding number e comprises the following steps:
step 4.1, in the parallelogram coding mark with the coding number e, respectively calculating a first judgment vector in the parallelogram coding mark with the coding number e according to the following formulaAnd a second decision vector
Step 4.2, respectively calculating the first vector of the regional division in the parallelogram coding mark corresponding to the coding number e by the following formulaAnd area division second vector
Step 4.3, dividing the first vector according to the regionAnd area division second vectorDetermine the vertex C of the direction situation e,1min (x e,1min ,y e,1min 0) locating a vertex for the 1 st coding region in the parallelogram coding flag with the coding number eOr 6 th coding region locating vertexCorrespondingly determining the vertex C e,2min (x e,2min ,y e,2min 0) locating the vertex for the 6 th coding regionOr 1 st coding region locating vertex
Step 4.4, positioning vertex of the 1 st coding regionThe coding region is marked as the 1 st coding region in the parallelogram coding mark with the coding number e, and the 6 th coding region is positioned at the vertexThe coding region is marked as the 6 th coding region in the parallelogram coding mark with the coding number e;
and 4.5, taking the 1 st coding region of the parallelogram coding mark with the coding number of e as a starting region and the 6 th coding region as an end region, and sequentially marking the 6 coding regions in the parallelogram coding mark with the coding number of e as the 1 st coding region, the 2 nd coding region, the 3 rd coding region, the 4 th coding region, the 5 th coding region and the 6 th coding region of the parallelogram coding mark with the coding number of e according to the clockwise direction.
3. The encoding method according to claim 1, wherein: in step 5.2, ifAnd isThen the 1 st coding mark pattern in the sigma coding region in the parallelogram coding mark corresponding to the coding number e is marked as a coding number
If it isAnd isThen the 2 nd coding mark pattern in the pi-th coding area in the parallelogram coding mark with the coding number e is the 1 st coding mark pattern in the pi-th coding area in the parallelogram coding mark with the coding number eThe 1 st coding mark pattern in the pi-th coding area in the parallelogram coding mark with the coding number of e is the 2 nd coding mark pattern in the pi-th coding area in the parallelogram coding mark with the coding number of e
4. According to claimThe encoding method of claim 1, wherein: in step 5.5, if the code number is e, the j-th bit code mark pattern in the theta-th code area in the corresponding parallelogram code markIs coded value ofThe j-th bit coding mark pattern of the theta-th coding area in the parallelogram coding mark with the coding number of eIs color I; if it isLet the j-th bit encode the mark patternIs color II, where j is 1,2 and θ is 1,2,3,4,5, 6.
5. The encoding method according to claim 4, wherein: the color I and the color II have a clear difference.
6. A computer-readable storage medium comprising a computer program for use in conjunction with an electronic device having image processing capabilities, the computer program being executable by a processor to perform the encoding method of claim 1.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011540913 | 2020-12-23 | ||
CN2020115409134 | 2020-12-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113129394A CN113129394A (en) | 2021-07-16 |
CN113129394B true CN113129394B (en) | 2022-09-06 |
Family
ID=76775862
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110392310.2A Active CN113129394B (en) | 2020-12-23 | 2021-04-13 | Parallelogram coding mark based on region division coding and coding method thereof |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113129394B (en) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU7977300A (en) * | 1999-10-01 | 2001-05-10 | Anoto Ab | Determination of a position code |
CN101950409A (en) * | 2010-08-30 | 2011-01-19 | 天津工业大学 | Quadrant-based encoding label point design method |
CN102053249A (en) * | 2009-10-30 | 2011-05-11 | 吴立新 | Underground space high-precision positioning method based on laser scanning and sequence encoded graphics |
EP2410406A1 (en) * | 2010-07-23 | 2012-01-25 | Anoto AB | Display with coding pattern |
CN103400373A (en) * | 2013-07-13 | 2013-11-20 | 西安科技大学 | Method for automatically identifying and positioning coordinates of image point of artificial mark in camera calibration control field |
CN104867160A (en) * | 2015-06-17 | 2015-08-26 | 合肥工业大学 | Directional calibration target for camera inner and outer parameter calibration |
CN106767502A (en) * | 2016-12-06 | 2017-05-31 | 合肥工业大学 | A kind of circle codification index point with start information |
CN106898025A (en) * | 2017-02-24 | 2017-06-27 | 上海坤辕检测科技有限公司 | It is a kind of to be based on 8 camera displacement transformation matrix scaling methods of coding maker |
CN109186550A (en) * | 2018-07-20 | 2019-01-11 | 潘玥 | A kind of coding and decoding and measurement method of codified close-range photogrammetry mark |
CN109215016A (en) * | 2018-08-03 | 2019-01-15 | 湖南科技大学 | A kind of recognition positioning method of coding maker |
CN109739237A (en) * | 2019-01-09 | 2019-05-10 | 华南理工大学 | A kind of AGV vision guided navigation and localization method based on novel coding mark |
CN110009692A (en) * | 2019-03-28 | 2019-07-12 | 渤海大学 | For the large-scale controlling filed artificial target of camera calibration and its coding method |
CN110018633A (en) * | 2018-12-14 | 2019-07-16 | 华南理工大学 | A kind of two-dimensional encoded design method positioned for AGV with navigation |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110117075A (en) * | 2009-01-29 | 2011-10-26 | 엘지전자 주식회사 | Method and apparatus for processing video signals using boundary intra coding |
-
2021
- 2021-04-13 CN CN202110392310.2A patent/CN113129394B/en active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU7977300A (en) * | 1999-10-01 | 2001-05-10 | Anoto Ab | Determination of a position code |
CN102053249A (en) * | 2009-10-30 | 2011-05-11 | 吴立新 | Underground space high-precision positioning method based on laser scanning and sequence encoded graphics |
EP2410406A1 (en) * | 2010-07-23 | 2012-01-25 | Anoto AB | Display with coding pattern |
CN101950409A (en) * | 2010-08-30 | 2011-01-19 | 天津工业大学 | Quadrant-based encoding label point design method |
CN103400373A (en) * | 2013-07-13 | 2013-11-20 | 西安科技大学 | Method for automatically identifying and positioning coordinates of image point of artificial mark in camera calibration control field |
CN104867160A (en) * | 2015-06-17 | 2015-08-26 | 合肥工业大学 | Directional calibration target for camera inner and outer parameter calibration |
CN106767502A (en) * | 2016-12-06 | 2017-05-31 | 合肥工业大学 | A kind of circle codification index point with start information |
CN106898025A (en) * | 2017-02-24 | 2017-06-27 | 上海坤辕检测科技有限公司 | It is a kind of to be based on 8 camera displacement transformation matrix scaling methods of coding maker |
CN109186550A (en) * | 2018-07-20 | 2019-01-11 | 潘玥 | A kind of coding and decoding and measurement method of codified close-range photogrammetry mark |
CN109215016A (en) * | 2018-08-03 | 2019-01-15 | 湖南科技大学 | A kind of recognition positioning method of coding maker |
CN110018633A (en) * | 2018-12-14 | 2019-07-16 | 华南理工大学 | A kind of two-dimensional encoded design method positioned for AGV with navigation |
CN109739237A (en) * | 2019-01-09 | 2019-05-10 | 华南理工大学 | A kind of AGV vision guided navigation and localization method based on novel coding mark |
CN110009692A (en) * | 2019-03-28 | 2019-07-12 | 渤海大学 | For the large-scale controlling filed artificial target of camera calibration and its coding method |
Non-Patent Citations (4)
Title |
---|
Improved power decoding of interleaved one-point Hermitian codes;Puchinger, Sven;Rosenkilde, Johan;《Designs, Codes, and Cryptography》;20191231;第87卷;第589-607页 * |
一种圆形编码标志点的设计及解码算法研究;孟祥丽等;《传感器与微系统》;20180712(第07期);第49-51页 * |
一种基于同心圆的环形编码标志设计与检测;张小迪等;《机械制造与自动化》;20200420(第02期);第139-142页 * |
一种字符编码标志识别定位方法;王文韫等;《测绘科学》;20190401(第03期);第126-131页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113129394A (en) | 2021-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109215016B (en) | Identification and positioning method for coding mark | |
CN108573511B (en) | Point-distributed cooperative coding mark and identification and positioning method thereof | |
CN111981982B (en) | Multi-directional cooperative target optical measurement method based on weighted SFM algorithm | |
CN111223133A (en) | Registration method of heterogeneous images | |
CN113506276B (en) | Marker and method for measuring structural displacement | |
CN114792104A (en) | Method for identifying and decoding ring-shaped coding points | |
CN115880373A (en) | Calibration plate and calibration method of stereoscopic vision system based on novel coding characteristics | |
CN111256607A (en) | Deformation measurement method based on three-channel mark points | |
CN112270716B (en) | Decoding and positioning method for artificial visual landmarks | |
CN113421311B (en) | Regular hexagon coding mark and coding method thereof | |
CN113129394B (en) | Parallelogram coding mark based on region division coding and coding method thereof | |
Ding et al. | Detection and recognition method for pointer-type meter based on deep learning | |
CN113129396A (en) | Decoding method of parallelogram coding mark based on region segmentation | |
CN113129397A (en) | Decoding method of parallelogram coding mark based on graphic geometric relation | |
CN112419224A (en) | Spherical pin chip positioning method and system | |
CN114299172B (en) | Planar coding target for visual system and real-time pose measurement method thereof | |
Wang et al. | A novel capacity expansion and recognition acceleration method for dot-dispersing coded targets in photogrammetry | |
CN115222828A (en) | Regular hexagon coding mark decoding method for visual positioning | |
CN116245948A (en) | Monocular vision cooperative target and pose measuring and calculating method | |
CN214583089U (en) | Calibration template for calibrating rotating shaft of rotary table | |
CN113989368A (en) | High-precision positioning method and system for object surface | |
CN114882487A (en) | Pointer instrument reading method and system | |
CN113188524B (en) | Parallelogram coding sign based on graphic geometric relation and coding method thereof | |
CN113112550A (en) | Coding plane target for calibrating internal and external parameters of camera and coding method thereof | |
CN113379846B (en) | Method for calibrating rotating shaft of rotary table based on direction indication mark point calibration template |
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 |