myAGV Precise Camera Positioning

1 Camera Positioning Principle

In the positioning process, we used Aruco identification to assist positioning

An ArUco marker is a binary square marker, which is composed of a wide black edge and an internal binary matrix, and the internal matrix determines their IDS. The black boundary facilitates rapid image detection, binary coding can verify THE ID, and allows the application of error detection and correction techniques. The size of marker determines the size of the internal matrix. For example, in the figure below, a 4x4 marker consists of 16bits

Aruco二维码例子

It should be noted that we need to detect the rotation of a Marker in space. However, the detection process needs to determine its initial Angle, so every corner needs to be clear and ambiguous, ensuring that the above mentioned point is also accomplished by binary coding. When the Marker is rotated in the space, the corresponding binary information will also change. According to the variation, the position and attitude of the Marker relative to the camera in the space can be obtained, as shown in the figure below. The coordinate system and boundary of the Marker can also be displayed in the camera screen:

aruco坐标边框

Flow chart as below:

folwchart

2 Precise positioning environment preparation

2.1 Generate an Aruco marker

First we need to parper two Aruco marker,it can be generated automatically in this webpage:https://chev.me/arucogen/ 标记生成网页

In our demo,We chose a dictionary set of 6*6, with the size of 50mm and two marker markers with the ID of 3 and 4 respectively. Then click the red "Save" in the picture to save the generated marker in the local format of PDF, and then the actual marker can be printed out with the printer for later positioning and use.

2.2 Place the Aruco marker

As mentioned above, the precise positioning of the camera is based on the position analysis of two characteristic Aruco markers to obtain the precise positioning path planning. As shown in the figure below, paste the Aruco mark printed in the previous step on both sides of the target point we want to reach.
Note: The distance between the two mark distances should be consistent as far as possible, so as to ensure the accuracy of distance calculation 标记放置

3 Software operation

3.1 Open myAGV navigation file

first open a terminal(shoutcut keyCtrl+Alt+T),enter instruction as below

roslaunch navigation_demo myagv_navigation.launch

3.2 Run the precision locator program

open another terminal,enter code as below:

rosrun navigation_demo aibot_detect_marker.py

It is suggested that the initial position of the car should be greater than 40cm away from the target so that the camera can simultaneously take pictures of the marks on the left and right sides

results matching ""

    No results matching ""