CN107490379B - Method and system for positioning position of AGV working point by using two-dimensional code landmark - Google Patents

Method and system for positioning position of AGV working point by using two-dimensional code landmark Download PDF

Info

Publication number
CN107490379B
CN107490379B CN201710748607.1A CN201710748607A CN107490379B CN 107490379 B CN107490379 B CN 107490379B CN 201710748607 A CN201710748607 A CN 201710748607A CN 107490379 B CN107490379 B CN 107490379B
Authority
CN
China
Prior art keywords
point
image
correction angle
agv
dimensional code
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
Application number
CN201710748607.1A
Other languages
Chinese (zh)
Other versions
CN107490379A (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.)
Shandong Feifan Intelligent Technology Co ltd
Original Assignee
Shandong Feifan Intelligent Technology Co ltd
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 Shandong Feifan Intelligent Technology Co ltd filed Critical Shandong Feifan Intelligent Technology Co ltd
Priority to CN201710748607.1A priority Critical patent/CN107490379B/en
Publication of CN107490379A publication Critical patent/CN107490379A/en
Application granted granted Critical
Publication of CN107490379B publication Critical patent/CN107490379B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding

Abstract

The invention discloses a method and a system for positioning the position of an AGV working point by using a two-dimension code landmark, which comprises the steps of firstly, acquiring a picture containing the two-dimension code landmark by using a camera installed on the AGV, analyzing the picture by using a visual technology, identifying the centroid point of the outermost square on three corners in the two-dimension code landmark, analyzing two centroid points positioned on diagonal lines, judging the position of the two-dimension code landmark according to the central point of the centroid points on the two diagonal lines, and acquiring the rotating direction of the two-dimension code landmark according to the relation of the three centroid points; meanwhile, the content information represented by the two-dimensional code landmark 1 can be obtained by utilizing a zbar algorithm, and different works can be distinguished by different information. The method accurately calculates the position coordinate and the correction angle of the AGV through the two-dimensional code landmark, has simple and reliable calculation process, is easy to realize, and is convenient for the adjustment of the robot arm to carry out high-precision work.

Description

Method and system for positioning position of AGV working point by using two-dimensional code landmark
Technical Field
The invention belongs to the field of AGV positioning, and particularly relates to a method and a system for positioning the position of an AGV working point by using a two-dimensional code landmark.
Background
With the development of high technology, the transportation mode of materials has been changed from manual assisted transportation to full-automatic transportation by using an Automatic Guided Vehicle (AGV), and the AGV moves by using some navigation modes, mainly including electromagnetic navigation, ultrasonic navigation, laser navigation, visual navigation and the like. With the advent of the industrial 4.0 era, AGVs were not only used as material conveyers, but also carried robotic arms for station changes to perform different high precision work. When the AGV carrying robot arm reaches the workstation through a certain navigation mode, the AGV carrying robot arm is often in an approximate position, and the position and the direction are not very accurate, so that the robot arm cannot normally work with high precision.
Disclosure of Invention
The invention aims to provide a method and a system for positioning the position of an AGV working point by using a two-dimensional code landmark, which can accurately calculate the position coordinate and the correction angle of the AGV and facilitate the adjustment of a robot arm to carry out high-precision work.
In order to solve the technical problems, the technical scheme adopted by the invention is as follows: a method for positioning the position of an AGV working point by using a two-dimensional code landmark comprises the following steps:
1) acquiring an image containing a two-dimensional code landmark, converting the acquired image into a gray image, preprocessing the gray image, removing noise of the gray image, and then segmenting a binary image only containing the two-dimensional code landmark;
2) acquiring all contours matched with the areas of the outermost squares on three corners of the two-dimensional code landmark in the binary image, sequentially judging whether square contours with right angles of included angles exist in all the contours, deleting the contours with the included angles not being the right angles, and storing the square contours with the included angles being the right angles;
3) calculating the centroid points of the saved square contour to obtain coordinates of the three centroid points, namely A (A.x, A.y), B (B.x, B.y) and C (C.x, C.y);
4) a, B is obtained; B. c; A. obtaining three distance values dxy1, dxy2 and dxy3 by the square distance between C, judging the sizes of dxy1, dxy2 and dxy3, wherein the two centroid points corresponding to the maximum values are the two centroid points on the diagonal;
5) calculating the coordinate of a midpoint Q of a connecting line of the two centroid points on the diagonal line obtained in the step 4), judging whether the point Q is in the center of the image, and if the point Q is in the center of the image, determining that the point Q is the position of the station accurate point; if the image center is not in the image center, calculating the distance between the Q point and the binary image center in the X direction and the Y direction, and sending the distance to an AGV for adjustment so as to enable the Q point in the image to be close to the image center, namely the AGV approaches to the position of the accurate station position until the Q point and the binary image center are overlapped;
6) determining an inclination radian by using two mass center points on a diagonal line, determining a correction angle by using the azimuth of the other mass center point and the Q point and the inclination radian, sending the correction angle to the AGV and performing corresponding adjustment to achieve the accurate direction of a working point of the AGV;
7) and identifying the content information of the two-dimensional code landmark.
In the step 1), preprocessing the gray level image by using a Gaussian filter algorithm, and filtering noise of the gray level image; and acquiring a binary image only containing the two-dimensional code landmark by using a fixed threshold segmentation method. The realization process is simple and reliable.
In step 4), the calculation formula of the squared distance dxy1 between the point a and the point B is:
dxy1=(A.x-B.x)×(A.x-B.x)+(A.y-B.y)×(A.y-B.y)。
the square distance dxy2 between the point B and the point C and the square distance dxy3 between the point A and the point C are calculated by the same principle, namely:
the square distance dxy2 between point B and point C is calculated as:
dxy2=(B.x-C.x)×(B.x-C.x)+(B.y-C.y)×(B.y-C.y);
the square distance dxy3 between points A and C is calculated as:
dxy3=(A.x-C.x)×(A.x-C.x)+(A.y-C.y)×(A.y-C.y)。
in the step 6), two centroid points on the diagonal line are set as a point B and a point C, and the inclination radian of a connecting line of the point B and the point C is determined through a formula theta ═ tan ^ (-1) (dy/dx); wherein dx is | B.x-C.x |; dy ═ B.y-C.y |.
In step 6), the specific process of determining the correction angle by using the orientations of the other centroid point A and the other centroid point Q and the inclination radian comprises the following steps:
1) and (3) radian compensation is carried out according to the positions of the point A and the point Q:
if ((Q.x-A.x) ≦ 0& (Q.y-A.y) >0) the orientation in which the marker A point and the marker Q point are located is the first quadrant, the compensation radian is π/2;
if ((Q.x-A.x) >0& & (Q.y-A.y) ≧ 0) the orientation in which the mark A point and the Q point are located is the second quadrant, the compensation arc is 0;
if ((Q.x-A.x) ≧ 0& (Q.y-A.y) <0) the orientation in which the marker A point and Q point are located is the third quadrant, the compensation radian is (- π/2);
if ((Q.x-A.x) <0& & (Q.y-A.y) ≧ 0) the orientation in which the mark A point and the Q point are located is the fourth quadrant, the compensation radian is π;
wherein & & represents a logical relationship and; (Q.x, Q.y) is the coordinates of point Q;
2) the correction angle is determined using the following method:
the positions of the point a and the point Q are a first quadrant, and if dx is equal to 0, the correction angle is 45 °; otherwise, the correction angle is:
ang=(θ+π/2-π/4)×180/π;
the A point and the Q point are positioned in the second quadrant, and if dy is equal to 0, the correction angle is-45 degrees; otherwise, the correction angle is:
ang=(-θ+π/4)×180/π;
the A point and the Q point are positioned in the third quadrant, if dx is equal to 0, the correction angle is-135 degrees; otherwise, the correction angle is:
ang=(θ-π/2-π/4)×180/π;
the A point and the Q point are positioned in the fourth quadrant, and if dy is equal to 0, the correction angle is 135 degrees; otherwise, the correction angle is:
ang=(-θ+π+π/4)×180/π。
the correction angle is in the range of-180 to 180 degrees.
In the invention, the zbar algorithm is used for acquiring the content information of the two-dimensional code landmark.
Correspondingly, the invention also provides a system for positioning the position of the AGV working point by using the two-dimensional code landmark, which comprises the following steps:
the binary image acquisition unit is used for acquiring an image containing the two-dimensional code landmark, converting the acquired image into a gray image, preprocessing the gray image, removing noise of the gray image, and then segmenting a binary image only containing the two-dimensional code landmark;
the contour extraction unit is used for acquiring all contours matched with the areas of the outermost squares on the three corners of the two-dimensional code landmark in the binary image, sequentially judging whether square contours with right angles of included angles exist in all the contours, deleting the contours with the included angles not being the right angles, and storing the square contours with the included angles being the right angles;
a centroid point calculating unit, configured to calculate a centroid point of the saved square contour, and obtain coordinates of three centroid points, which are a (A.x, A.y), B (B.x, B.y), and C (C.x, C.y);
a first judgment unit for finding A, B; B. c; A. obtaining three distance values dxy1, dxy2 and dxy3 by the square distance between C, judging the sizes of dxy1, dxy2 and dxy3, wherein the two centroid points corresponding to the maximum values are the two centroid points on the diagonal;
the second judgment unit is used for judging whether the point Q is in the center of the image or not according to the coordinate of the middle point Q of the connecting line of the two mass center points on the diagonal line, and if the point Q is in the center of the image, the point Q is the position of the station accurate point; if the image center is not in the image center, calculating the distance between the Q point and the binary image center in the X direction and the Y direction, and sending the distance to an AGV for adjustment so as to enable the Q point in the image to be close to the image center, namely the AGV approaches to the position of the accurate station position until the Q point and the binary image center are overlapped;
the correcting unit is used for determining the inclination radian by utilizing two mass center points on a diagonal line, determining a correction angle by utilizing the direction of the other mass center point and the Q point and the inclination radian, sending the correction angle to the AGV and correspondingly adjusting the correction angle so as to achieve the accurate direction of a working point of the AGV;
and the identification unit is used for identifying the content information of the two-dimensional code landmark.
The binary image acquisition unit includes:
the image acquisition module is used for acquiring an image containing a two-dimensional code landmark;
the conversion module is used for converting the acquired image into a gray-scale image;
the preprocessing module is used for preprocessing the gray level image and removing noise of the gray level image;
and the segmentation module is used for segmenting the binary image only containing the two-dimensional code landmark from the noise-removed gray scale image.
The correction unit includes:
the inclination radian calculation unit is used for determining the inclination radian by utilizing two mass center points on the diagonal;
the correction angle calculation unit is used for determining a correction angle according to the azimuth of the other center of mass point and the Q point and the inclination radian;
and the communication unit is used for sending the correction angle to the AGV and carrying out corresponding adjustment so as to achieve the accurate direction of the working point of the AGV.
The specific working process of the correction angle calculation unit comprises the following steps:
1) and (3) radian compensation is carried out according to the positions of the point A and the point Q:
if ((Q.x-A.x) ≦ 0& (Q.y-A.y) >0) the orientation in which the marker A point and the marker Q point are located is the first quadrant, the compensation radian is π/2;
if ((Q.x-A.x) >0& & (Q.y-A.y) ≧ 0) the orientation in which the mark A point and the Q point are located is the second quadrant, the compensation arc is 0;
if ((Q.x-A.x) ≧ 0& (Q.y-A.y) <0) the orientation in which the marker A point and Q point are located is the third quadrant, the compensation radian is (- π/2);
if ((Q.x-A.x) <0& & (Q.y-A.y) ≧ 0) the orientation in which the mark A point and the Q point are located is the fourth quadrant, the compensation radian is π;
wherein & & represents a logical relationship and; (Q.x, Q.y) is the coordinates of point Q;
2) the correction angle is determined using the following method:
the positions of the point a and the point Q are a first quadrant, and if dx is equal to 0, the correction angle is 45 °; otherwise, the correction angle is:
ang=(θ+π/2-π/4)×180/π;
the A point and the Q point are positioned in the second quadrant, and if dy is equal to 0, the correction angle is-45 degrees; otherwise, the correction angle is:
ang=(-θ+π/4)×180/π;
the A point and the Q point are positioned in the third quadrant, if dx is equal to 0, the correction angle is-135 degrees; otherwise, the correction angle is:
ang=(θ-π/2-π/4)×180/π;
the A point and the Q point are positioned in the fourth quadrant, and if dy is equal to 0, the correction angle is 135 degrees; otherwise, the correction angle is:
ang=(-θ+π+π/4)×180/π。
the value range of the correction angle is-180 degrees to 180 degrees; setting two centroid points on a diagonal as a point B and a point C, setting theta as the inclination radian of a connecting line of the point B and the point C, and setting theta as tan ^ (-1) (dy/dx); dx ═ B.x-C.x |; dy ═ B.y-C.y |.
Compared with the prior art, the invention has the beneficial effects that: the method accurately calculates the position coordinate and the correction angle of the AGV through the two-dimensional code landmark, has simple and reliable calculation process, is easy to realize, and is convenient for the adjustment of the robot arm to carry out high-precision work.
Drawings
FIG. 1 is an original drawing of a two-dimensional code landmark;
fig. 2 is a diagram showing a structure of a two-dimensional code landmark in an image.
Detailed Description
When the AGV carries on the robot arm and arrives a certain workstation through certain navigation mode, often be approximate position, position and direction are all too inaccurate, and the robot arm can't carry out the work of high accuracy, consequently need discern and fix a position two-dimensional code ground mark 1 through vision technique to AGV dolly adjustment position and direction make the robot arm accurate alignment operating point.
The main realization process of the invention is as follows: firstly, acquiring a picture containing a two-dimensional code landmark 1 by using a camera installed on an AGV, analyzing the picture by using a visual technology, identifying a centroid point of an outermost square on three corners in the two-dimensional code landmark 1, analyzing two centroid points positioned on diagonal lines, judging the position of the two-dimensional code landmark 1 according to the central points of the centroid points on the two diagonal lines, and acquiring the rotation direction of the two-dimensional code landmark 1 according to the relation of the three centroid points; meanwhile, the content information represented by the two-dimensional code landmark 1 can be obtained by utilizing a zbar algorithm, and different works can be distinguished by different information. The specific visual technology steps are (the image processing process adopts Opencv operator):
step one, image preprocessing: converting the obtained picture containing the two-dimension code landmark 1 into a gray-scale image, filtering noise by Gaussian filtering, and obtaining a binary image only containing the two-dimension code landmark 1 by using a fixed threshold segmentation method;
step two, obtaining the outline: acquiring all outlines matched with the areas of the outermost squares on three corners of a two-dimensional code landmark 1 according to the area sizes, sequentially judging whether square outlines with right angles of included angles exist in all the outlines by using a curve approximation method, deleting the outlines with the right angles of the included angles, storing the square outlines with the right angles of the included angles, and totally obtaining 3 appropriate square outlines;
step three, calculating the position of a centroid: calculating the centroid points of the saved square outline, wherein the centroid points A, B and C are 3 in total, and the position coordinates are (A.x, A.y), (B.x, B.y), (C.x and C.y);
step four, solving two mass center points on the diagonal: and calculating the square distance between the two points, wherein the corresponding formula is as follows:
dxy1=(A.x-B.x)×(A.x-B.x)+(A.y-B.y)×(A.y-B.y) (1)
similarly, the square distance between the point B and the point C is calculated to be dxy2 by referring to the formula (1), and the square distance between the point A and the point C is dxy 3.
Judging the sizes of dxy1, dxy2 and dxy3, wherein the two centroid points corresponding to the maximum value are the two centroid points on the diagonal line, and the two centroid points are assumed to be a point B and a point C, and the other point is a point A;
step five, calculating the position deviation: calculating the midpoint position of the points B and C, setting the midpoint position as the point Q, setting the position coordinates as (Q.x, Q.y), and calculating the formula as follows:
Q.x=int[(B.x+C.x)/2] (2)
Q.y=int[(B.y+C.y)/2] (3)
where int denotes that only integer values are obtained; judging whether the point Q is in the center of the image, if so, determining that the point Q is the position of the accurate station point; if the image center is not located, the distance between the Q point and the image center in the X direction and the Y direction is calculated, and the distance is sent to the AGV to be adjusted, so that the Q point in the image is close to the image center, namely the position of the AGV to the accurate station position approaches until the Q point and the image center coincide.
Step six, calculating an angle to be corrected: and calculating the radian of the inclination according to the point B and the point C, and judging radian compensation according to the directions of the point A and the point Q. Firstly, calculating the inclination radian:
dx=|B.x-C.x| (4)
dy=|B.y-C.y| (5)
θ=tan^(-1)(dy/dx) (6)
taking fig. 1 as an accurate angle of the working point, at this time, the radian of inclination of a connecting line between the point B and the point C is pi/4, where pi is 3.1415926, and the corresponding angle is 45 °; this angle needs to be taken into account in the final correction angle calculation.
The method for performing radian compensation according to the positions of the point A and the point Q comprises the following steps:
if ((Q.x-A.x) ≦ 0& (Q.y-A.y) >0), marked as a first quadrant, the compensation radian is pi/2;
if ((Q.x-A.x) >0& (Q.y-A.y) ≧ 0), marked as the second quadrant, the compensation radian is 0;
(iii) if ((Q.x-A.x) ≧ 0& (Q.y-A.y) <0), marked as the third quadrant, the compensation radian is (-pi/2);
if ((Q.x-A.x) <0& (Q.y-A.y) ≧ 0), marked as the fourth quadrant, the compensation radian is pi;
if represents if; and & represents a logical relationship and; the final correction angle determination method comprises the following steps:
if dx is 0, the correction angle is 45 degrees; otherwise, the correction angle is:
ang=(θ+π/2-π/4)×180/π (7)
if dy is 0, the correction angle is-45 degrees; otherwise, the correction angle is:
ang=(-θ+π/4)×180/π (8)
if dx is 0, the correction angle is-135 degrees; otherwise, the correction angle is:
ang=(θ-π/2-π/4)×180/π (9)
the fourth quadrant belongs to, if dy is 0, the correction angle is 135 degrees; otherwise, the correction angle is:
ang=(-θ+π+π/4)×180/π (10)
the value range of the correction angle is-180 degrees, the radian needs to be converted into the angle in the calculation process, and the mode of converting the radian into the angle is (radian is multiplied by 180/pi). And sending the correction angle to the AGV and carrying out corresponding adjustment so as to achieve the accurate direction of the working point of the AGV.
And seventhly, identifying content information of the two-dimensional code by using a zbar algorithm, wherein different working points can be distinguished by different information.
As shown in fig. 1, the model is a two-dimensional code landmark original image, and is also a model presented in an image by the two-dimensional code landmark 1 when the AGV is at an accurate angle of a working point. The two-dimensional code landmark 1 comprises three centroid points A, B and C of an outermost square, wherein the point B and the point C are two centroid points on a diagonal line.
As shown in fig. 2, a structure diagram of the two-dimensional code landmark in the image, where a, B, and C are centroid points of three outermost squares, and Q is a midpoint between B and C on a diagonal line. According to the formulas (4), (5) and (6), the calculated θ is 0.152; referring to an X-Y coordinate system, the X coordinate of the point A is larger than the X coordinate of the point Q, and the Y coordinate of the point A is smaller than the Y coordinate of the point Q, so that the point A belongs to a first quadrant; from the description (one) and the formula (7), the correction angle is about 53.7 °.

Claims (8)

1. A method for positioning the position of an AGV working point by using a two-dimensional code landmark is characterized by comprising the following steps:
1) acquiring an image containing a two-dimensional code landmark, converting the acquired image into a gray image, preprocessing the gray image, removing noise of the gray image, and then segmenting a binary image only containing the two-dimensional code landmark;
2) acquiring all contours matched with the areas of the outermost squares on three corners of the two-dimensional code landmark in the binary image, sequentially judging whether square contours with right angles of included angles exist in all the contours, deleting the contours with the included angles not being the right angles, and storing the square contours with the included angles being the right angles;
3) calculating the centroid points of the saved square contour to obtain coordinates of the three centroid points, namely A (A.x, A.y), B (B.x, B.y) and C (C.x, C.y);
4) a, B is obtained; B. c; A. obtaining three distance values dxy1, dxy2 and dxy3 by the square distance between C, judging the sizes of dxy1, dxy2 and dxy3, wherein the two centroid points corresponding to the maximum values are the two centroid points on the diagonal;
5) calculating the coordinate of a midpoint Q of a connecting line of the two centroid points on the diagonal line obtained in the step 4), judging whether the point Q is in the center of the image, and if the point Q is in the center of the image, determining that the point Q is the position of the station accurate point; if the image center is not in the image center, calculating the distance between the Q point and the binary image center in the X direction and the Y direction, and sending the distance to an AGV for adjustment so as to enable the Q point in the image to be close to the image center, namely the AGV approaches to the position of the accurate station position until the Q point and the binary image center are overlapped;
6) determining an inclination radian by using two mass center points on a diagonal line, determining a correction angle by using the direction of the other mass center point A and Q and the inclination radian, sending the correction angle to an AGV and performing corresponding adjustment so as to achieve the accurate direction of a working point of the AGV;
7) identifying content information of the two-dimensional code landmark;
in step 6), the specific process of determining the correction angle by using the orientations of the other centroid point A and the other centroid point Q and the inclination radian comprises the following steps:
(1) and (3) radian compensation is carried out according to the positions of the point A and the point Q:
if ((Q.x-A.x) ≦ 0& (Q.y-A.y) >0) the orientation in which the mark A and Q points are located is the first quadrant, the compensation radian is π/2;
if ((Q.x-A.x) >0& & (Q.y-A.y) ≧ 0) the orientation in which the mark A and Q points are located is the second quadrant, the compensation arc is 0;
if ((Q.x-A.x) ≧ 0& (Q.y-A.y) <0) the orientation in which the marker A point and Q point are located is the third quadrant, the compensation radian is (- π/2);
if ((Q.x-A.x) <0& & (Q.y-A.y) ≧ 0) the orientation in which the mark A point and Q point are located is the fourth quadrant, the compensation radian is π;
wherein & & represents a logical relationship and; (Q.x, Q.y) is the coordinates of point Q;
(2) the correction angle is determined using the following method:
the positions of the point a and the point Q are a first quadrant, and if dx is equal to 0, the correction angle is 45 °; otherwise, the correction angle is:
ang=(θ+π/2-π/4)×180/π;
the A point and the Q point are positioned in the second quadrant, and if dy is equal to 0, the correction angle is-45 degrees; otherwise, the correction angle is:
ang=(-θ+π/4)×180/π;
the A point and the Q point are positioned in the third quadrant, if dx is equal to 0, the correction angle is-135 degrees; otherwise, the correction angle is:
ang=(θ-π/2-π/4)×180/π;
the A point and the Q point are positioned in the fourth quadrant, and if dy is equal to 0, the correction angle is 135 degrees; otherwise, the correction angle is:
ang=(-θ+π+π/4)×180/π;
the correction angle is in the range of-180 to 180 degrees.
2. The method for positioning the position of the AGV working point by using the two-dimensional code landmark according to claim 1, wherein in the step 1), the gray level image is preprocessed by using a Gaussian filter algorithm to filter noise of the gray level image; and acquiring a binary image only containing the two-dimensional code landmark by using a fixed threshold segmentation method.
3. The method for locating the position of an AGV working point according to claim 1, wherein in step 4), the square distance dxy1 between point A and point B is calculated according to the following formula:
dxy1=(A.x-B.x)×(A.x-B.x)+(A.y-B.y)×(A.y-B.y);
the square distance dxy2 between point B and point C is calculated as:
dxy2=(B.x-C.x)×(B.x-C.x)+(B.y-C.y)×(B.y-C.y);
the square distance dxy3 between points A and C is calculated as:
dxy3=(A.x-C.x)×(A.x-C.x)+(A.y-C.y)×(A.y-C.y)。
4. the method for locating the position of an AGV working point according to claim 1, wherein in step 6), two centroid points on a diagonal line are set as a point B and a point C, and the inclination radian of a connecting line between the point B and the point C is determined by a formula θ ═ tan ^ (-1) (dy/dx); wherein dx is | B.x-C.x |; dy ═ B.y-C.y |.
5. The method for locating the position of an AGV working point using a two-dimensional code landmark according to claim 1, wherein a zbar algorithm is used to obtain the content information of the two-dimensional code landmark.
6. A system for locating AGV work point locations using two-dimensional code landmarks, comprising:
the binary image acquisition unit is used for acquiring an image containing the two-dimensional code landmark, converting the acquired image into a gray image, preprocessing the gray image, removing noise of the gray image, and then segmenting a binary image only containing the two-dimensional code landmark;
the contour extraction unit is used for acquiring all contours matched with the areas of the outermost squares on the three corners of the two-dimensional code landmark in the binary image, sequentially judging whether square contours with right angles of included angles exist in all the contours, deleting the contours with the included angles not being the right angles, and storing the square contours with the included angles being the right angles;
a centroid point calculating unit, configured to calculate a centroid point of the saved square contour, and obtain coordinates of three centroid points, which are a (A.x, A.y), B (B.x, B.y), and C (C.x, C.y);
a first judgment unit for finding A, B; B. c; A. obtaining three distance values dxy1, dxy2 and dxy3 by the square distance between C, judging the sizes of dxy1, dxy2 and dxy3, wherein the two centroid points corresponding to the maximum values are the two centroid points on the diagonal;
the second judgment unit is used for judging whether the point Q is in the center of the image or not according to the coordinate of the middle point Q of the connecting line of the two mass center points on the diagonal line, and if the point Q is in the center of the image, the point Q is the position of the station accurate point; if the image center is not in the image center, calculating the distance between the Q point and the binary image center in the X direction and the Y direction, and sending the distance to an AGV for adjustment so as to enable the Q point in the image to be close to the image center, namely the AGV approaches to the position of the accurate station position until the Q point and the binary image center are overlapped;
the correcting unit is used for determining the inclination radian by utilizing two mass center points on a diagonal line, determining a correction angle by utilizing the direction of the other mass center point and the Q point and the inclination radian, sending the correction angle to the AGV and correspondingly adjusting the correction angle so as to achieve the accurate direction of a working point of the AGV;
the identification unit is used for identifying the content information of the two-dimensional code landmark;
the specific working process of the correction angle calculation unit comprises the following steps:
1) and (3) radian compensation is carried out according to the positions of the point A and the point Q:
if ((Q.x-A.x) ≦ 0& (Q.y-A.y) >0) the orientation in which the mark A and Q points are located is the first quadrant, the compensation radian is π/2;
if ((Q.x-A.x) >0& & (Q.y-A.y) ≧ 0) the orientation in which the mark A and Q points are located is the second quadrant, the compensation arc is 0;
if ((Q.x-A.x) ≧ 0& (Q.y-A.y) <0) the orientation in which the marker A point and Q point are located is the third quadrant, the compensation radian is (- π/2);
if ((Q.x-A.x) <0& & (Q.y-A.y) ≧ 0) the orientation in which the mark A point and Q point are located is the fourth quadrant, the compensation radian is π;
wherein & & represents a logical relationship and; (Q.x, Q.y) is the coordinates of point Q;
2) the correction angle is determined using the following method:
the positions of the point a and the point Q are a first quadrant, and if dx is equal to 0, the correction angle is 45 °; otherwise, the correction angle is:
ang=(θ+π/2-π/4)×180/π;
the A point and the Q point are positioned in the second quadrant, and if dy is equal to 0, the correction angle is-45 degrees; otherwise, the correction angle is:
ang=(-θ+π/4)×180/π;
the A point and the Q point are positioned in the third quadrant, if dx is equal to 0, the correction angle is-135 degrees; otherwise, the correction angle is:
ang=(θ-π/2-π/4)×180/π;
the A point and the Q point are positioned in the fourth quadrant, and if dy is equal to 0, the correction angle is 135 degrees; otherwise, the correction angle is:
ang=(-θ+π+π/4)×180/π;
the value range of the correction angle is-180 degrees to 180 degrees; setting two centroid points as a point B and a point C, setting theta as the radian of inclination of a connecting line of the point B and the point C, and setting theta as tan (-1) (dy/dx); dx ═ B.x-C.x |; dy ═ B.y-C.y |.
7. The system for locating the position of an AGV working point using a two-dimensional code landmark according to claim 6, wherein the binary image obtaining unit comprises:
the image acquisition module is used for acquiring an image containing a two-dimensional code landmark;
the conversion module is used for converting the acquired image into a gray-scale image;
the preprocessing module is used for preprocessing the gray level image and removing noise of the gray level image;
and the segmentation module is used for segmenting the binary image only containing the two-dimensional code landmark from the noise-removed gray scale image.
8. The system for locating the position of an AGV working point using a two-dimensional code landmark according to claim 6, wherein the correction unit comprises:
the inclination radian calculation unit is used for determining the inclination radian by utilizing two mass center points on the diagonal;
the correction angle calculation unit is used for determining a correction angle according to the azimuth of the other center of mass point and the Q point and the inclination radian;
and the communication unit is used for sending the correction angle to the AGV and carrying out corresponding adjustment so as to achieve the accurate direction of the working point of the AGV.
CN201710748607.1A 2017-08-28 2017-08-28 Method and system for positioning position of AGV working point by using two-dimensional code landmark Active CN107490379B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710748607.1A CN107490379B (en) 2017-08-28 2017-08-28 Method and system for positioning position of AGV working point by using two-dimensional code landmark

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710748607.1A CN107490379B (en) 2017-08-28 2017-08-28 Method and system for positioning position of AGV working point by using two-dimensional code landmark

Publications (2)

Publication Number Publication Date
CN107490379A CN107490379A (en) 2017-12-19
CN107490379B true CN107490379B (en) 2020-11-27

Family

ID=60645932

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710748607.1A Active CN107490379B (en) 2017-08-28 2017-08-28 Method and system for positioning position of AGV working point by using two-dimensional code landmark

Country Status (1)

Country Link
CN (1) CN107490379B (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108037503B (en) * 2017-12-22 2021-02-19 杭州视熵科技有限公司 Laser radar-based planar multi-plate positioning method for feeding and discharging of household plates
CN108088439B (en) * 2018-01-19 2020-11-24 浙江科钛机器人股份有限公司 AGV composite navigation system and method integrating electronic map, two-dimensional code and color band
CN108279026A (en) * 2018-01-19 2018-07-13 浙江科钛机器人股份有限公司 A kind of AGV inertial navigation systems and method based on T-type RFID beacons
CN108763996B (en) * 2018-03-23 2021-06-15 南京航空航天大学 Plane positioning coordinate and direction angle measuring method based on two-dimensional code
CN108801653B (en) * 2018-06-25 2020-05-05 工业和信息化部计算机与微电子发展研究中心(中国软件评测中心) Evaluation method of carrying trolley
CN109093621B (en) * 2018-08-10 2021-03-12 北京极智嘉科技有限公司 Robot operation precision monitoring method and device, robot, server and medium
CN108931982A (en) * 2018-09-04 2018-12-04 赵凯雅 Vision navigation system and method for robot moving equipment
CN110069065B (en) * 2019-04-24 2022-05-27 合肥柯金自动化科技股份有限公司 AGV website positioning system based on laser navigation and picture discernment
CN110415299B (en) * 2019-08-02 2023-02-24 山东大学 Vehicle position estimation method based on set guideboard under motion constraint
CN110864691B (en) * 2019-11-15 2021-10-19 浙江大学华南工业技术研究院 Magnetic stripe imitation positioning method and device based on ceiling type two-dimensional code
CN111161293B (en) * 2019-11-25 2023-03-21 新绎健康科技有限公司 Method and system for determining outline of GDV energy image based on rectangular coordinate space
CN113763306A (en) * 2020-06-01 2021-12-07 杭州海康威视数字技术股份有限公司 Landmark detection method and device and electronic equipment
CN112847349B (en) * 2020-12-30 2022-05-06 深兰科技(上海)有限公司 Robot walking control method and device

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100563875B1 (en) * 2002-07-18 2006-03-28 샤프 가부시키가이샤 Two-dimensional code reading apparatus, two-dimensional code reading process, recording medium containing two-dimensional code reading program therein, portable terminal and digital camera
CN102735235A (en) * 2012-06-07 2012-10-17 无锡普智联科高新技术有限公司 Indoor mobile robot positioning system and method based on two-dimensional code
CN103345247A (en) * 2013-06-20 2013-10-09 无锡普智联科高新技术有限公司 Mobile robot positioning method used for correcting code adherence errors
CN103714313A (en) * 2013-12-30 2014-04-09 优视科技有限公司 Two-dimension code recognizing method and device
CN104197899A (en) * 2014-09-24 2014-12-10 中国科学院宁波材料技术与工程研究所 Mobile robot location method and system
CN104407615A (en) * 2014-11-03 2015-03-11 上海电器科学研究所(集团)有限公司 AGV robot guide deviation correction method
CN105651286A (en) * 2016-02-26 2016-06-08 中国科学院宁波材料技术与工程研究所 Visual navigation method and system of mobile robot as well as warehouse system
CN105912971A (en) * 2016-04-01 2016-08-31 深圳普智联科机器人技术有限公司 Regular graphic code array for AGV navigation and code reading method thereof
CN106093954A (en) * 2016-06-02 2016-11-09 邓湘 A kind of Quick Response Code laser ranging vehicle positioning method and equipment thereof

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100563875B1 (en) * 2002-07-18 2006-03-28 샤프 가부시키가이샤 Two-dimensional code reading apparatus, two-dimensional code reading process, recording medium containing two-dimensional code reading program therein, portable terminal and digital camera
CN102735235A (en) * 2012-06-07 2012-10-17 无锡普智联科高新技术有限公司 Indoor mobile robot positioning system and method based on two-dimensional code
CN103345247A (en) * 2013-06-20 2013-10-09 无锡普智联科高新技术有限公司 Mobile robot positioning method used for correcting code adherence errors
CN103714313A (en) * 2013-12-30 2014-04-09 优视科技有限公司 Two-dimension code recognizing method and device
CN104197899A (en) * 2014-09-24 2014-12-10 中国科学院宁波材料技术与工程研究所 Mobile robot location method and system
CN104407615A (en) * 2014-11-03 2015-03-11 上海电器科学研究所(集团)有限公司 AGV robot guide deviation correction method
CN105651286A (en) * 2016-02-26 2016-06-08 中国科学院宁波材料技术与工程研究所 Visual navigation method and system of mobile robot as well as warehouse system
CN105912971A (en) * 2016-04-01 2016-08-31 深圳普智联科机器人技术有限公司 Regular graphic code array for AGV navigation and code reading method thereof
CN106093954A (en) * 2016-06-02 2016-11-09 邓湘 A kind of Quick Response Code laser ranging vehicle positioning method and equipment thereof

Also Published As

Publication number Publication date
CN107490379A (en) 2017-12-19

Similar Documents

Publication Publication Date Title
CN107490379B (en) Method and system for positioning position of AGV working point by using two-dimensional code landmark
CN108571971B (en) AGV visual positioning system and method
CN109029257B (en) Large-scale workpiece pose measurement system and method based on stereoscopic vision and structured light vision
US20210233277A1 (en) Method and system for calibrating multiple cameras
CN106607907B (en) A kind of moving-vision robot and its investigating method
CN113084808B (en) Monocular vision-based 2D plane grabbing method for mobile mechanical arm
CN111721259B (en) Underwater robot recovery positioning method based on binocular vision
CN104552341B (en) Mobile industrial robot single-point various visual angles pocket watch position and attitude error detection method
US20140376768A1 (en) Systems and Methods for Tracking Location of Movable Target Object
CN112223293B (en) Online grinding method of welding line grinding and polishing robot
CN107421540B (en) Mobile robot navigation method and system based on vision
JP3208953B2 (en) Three-dimensional position and posture recognition method based on vision and three-dimensional position and posture recognition device based on vision
CN108122255B (en) Unmanned aerial vehicle pose estimation method based on trapezoidal and circular combined landmarks
CN115609591B (en) Visual positioning method and system based on 2D Marker and compound robot
CN111784655B (en) Underwater robot recycling and positioning method
CN110625644A (en) Workpiece grabbing method based on machine vision
CN107832661A (en) A kind of Localization Approach for Indoor Mobile of view-based access control model road sign
Dao et al. Visual self-localization for indoor mobile robots using natural lines
CN109459046B (en) Positioning and navigation method of suspension type underwater autonomous vehicle
CN109815966A (en) A kind of mobile robot visual odometer implementation method based on improvement SIFT algorithm
CN113845064B (en) Positioning method and system for material bearing device with round support legs
CN113109762B (en) Optical vision guiding method for AUV (autonomous Underwater vehicle) docking recovery
CN114882108A (en) Method for estimating grabbing pose of automobile engine cover under two-dimensional image
CN107516328B (en) AGV working point positioning method and system
KR100991194B1 (en) System and method for transporting object of mobing robot

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