Introduction
AprilTag is a two-dimensional barcode that is usually used in the field of robotics to quickly and robustly detect the position of the camera relative to the tag and support the positioning and navigation of robots. This task aims to develop an AprilTag detection and recognition algorithm on the CV180X/CV181x processor, which can accurately detect AprilTag from images and identify its number.
- Acceptance Criteria
- The algorithm performance will be evaluated on the evaluation set, focusing on AprilTag detection accuracy and number recognition accuracy.
- AprilTag detection accuracy: Achieving 95% AprilTag detection accuracy on the evaluation set.
- Number recognition accuracy: Reached 90% AprilTag number recognition accuracy on the evaluation set.
- FLOPS requirements: The computational complexity of the algorithm (FLOPS) should be adapted to the processor platform and not exceed 25G to ensure efficient operation on embedded devices.
- Evaluation set
The evaluation set will contain multiple scenarios to simulate various situations that may be encountered in actual AprilTag applications:
- Distance range: AprilRag images at different distances, such as 0.1 meters to 0.5 meters.
- Different viewing angles: Simulate AprilTag images at different camera angles, with the angle between the camera's optical center ranging from -45 degrees to +45 degrees. .
- Lighting conditions: Images under uniform lighting and low light conditions.
- AprilTag deformation: including the detection and identification of AprilTag under different deformations.
- Sample size: The number of samples in the evaluation set should be greater than 500 to ensure adequate evaluation of algorithm performance.
Through the requirements of these evaluation sets, we expect the algorithm to show high detection and recognition accuracy in actual AprilTag application scenarios and meet the actual needs of AprilTag detection and recognition.
Data Collection Process
- Data Collection Plan
The collection plan should be based on the actual application scenarios of the algorithm. First, determine the collection variables, such as: collection scene, quantity, number of people, gender, age, etc. Index and assign an English abbreviation for each variable. For example, if there are three variables: collection scene, distance, and gender, they could be numbered as:
- Scene 1: indoor; Scene 2: outdoor
- Distance 1: 1m; Distance 2: 3m; Distance 3: 5m
- Gender 1: male; Gender 2: female
Then determine the collection process based on the variables, such as whether to collect according to variable 1 or variable 2 first, the actions of the people being collected, and precautions, etc. Organize the above collection plan and variable information into a Word document for saving.
- Prepare Collection Equipment
The collection equipment should be as close as possible to the actual equipment used and ensure that it can be preserved for a long time. Prepare the collection firmware.
- Data Collection and Saving
Carry out data collection and name the files according to the order of the collection variables defined in the "Data Collection Plan", with names like x-x-x-x.xxx. For example, if there are three variables: scene, distance, and gender, the saving format would be: indoor-3m-female-12.xxx, representing the 12th data of "indoor scene, 3m distance, female" collected. After the collection is complete, the collected data and the collection instruction document from the "Data Collection Plan" should be put together for inspection.