this articles is a part of
The FACC'25 event

FACC'25

Setup camera cho April Tag

Những kiến thức cần biết để chỉnh sửa thông số cho camera sử dụng trong thu thập dữ liệu (computer vision).

Level

Intermediate

Source

Author

Aggregate

Translator

FTC26749 aDudu

Date Published

Sep 23, 2025

Camera Calibration

Mục tiêu: lấy fx, fy, cx, cy (camera matrix) và hệ số distortion để nhập vào pipeline AprilTag.

  1. Chuẩn bị

  • In chessboard (bảng ô cờ), ví dụ 9x6 inner corners (tức 10×7 squares hoặc ngược lại — chọn pattern nhất quán). Mẫu tham khảo: [https://github.com/opencv/opencv/blob/master/doc/pattern.png]

  • Chuẩn bị ít nhất 15–25 ảnh chessboard chụp ở nhiều góc, độ nghiêng, khoảng cách khác nhau. Dùng chính camera và độ phân giải mà bạn dự định dùng trong OpMode.

  1. Example (OpenCV)

(Lưu ảnh vào folder calib_images/)

Chú ý: Bạn phải cài thư viện opencv-python.

  1. Output

Lấy các giá trị:

  • fx = camera_matrix[0][0]

  • fy = camera_matrix[1][1]

  • cx = camera_matrix[0][2]

  • cy = camera_matrix[1][2]

Nhập vào AprilTagDetectionPipeline.

  1. Một số lưu ý

  • Chụp ảnh ở nhiều góc & khoảng cách; tránh phản xạ/ánh sáng chói trên chessboard.

  • Dùng đúng square_size_m (khoảng cách cạnh ô thực tế) để calibration trả về đúng đơn vị mét.

  • Ghi rõ resolution ảnh khi chụp (sẽ dùng cùng resolution khi startStreaming).

Công trình liên quan

Hệ thống định vị trực quan (visual fiducial system) sử dụng thẻ chứa mã 2D để cung cấp vị trí và hướng (pose) của marker đối với camera. Trong robotics, các marker này được ưa chuộng vì chi phí thấp, chỉ cần camera và thẻ in giấy.

AprilTag, được Olson giới thiệu năm 2011, vượt trội hơn các hệ thống trước (ARTag, CALTag) về phát hiện, độ chính xác và khả năng chống che khuất. Nhiều nghiên cứu đã ứng dụng AprilTag trong:

  • Điều hướng và nội kiểm (gắn tag trong tòa nhà, dùng cho robot và AR cầm tay, kết hợp cảm biến quán tính).

  • Theo dõi và hạ cánh tự động UAV/UGV/tàu thủy.

  • Hiệu chỉnh đa camera và LiDAR (hợp nhất dữ liệu để tăng độ chính xác pose).

  • Đánh giá hệ thống (tạo dữ liệu chuẩn cho odometry, định vị thị giác, điều khiển PD, so sánh kỹ thuật robot).

  • Ứng dụng thực tế như cứu hộ bằng swarm UAV, robot công nghiệp, mô hình động học và quỹ đạo, định vị phương tiện dưới nước.

Ưu điểm:

  • Đơn giản, chi phí thấp.

  • Độ chính xác cao, dùng rộng rãi trong AR và robotics.

  • Có thể làm chuẩn dữ liệu đánh giá hệ thống.

Nhược điểm và thách thức:

  • Độ chính xác bị ảnh hưởng bởi góc nhìn, khoảng cách, độ xoay.

  • Hạn chế ngoài trời (camera RGB-D thất bại dưới ánh sáng mặt trời, không thể đặt nhiều tag trên diện rộng).

  • Hướng tính toán còn nhiễu, cần hợp nhất dữ liệu từ nhiều thẻ và kỹ thuật như Kalman Filter.

Kết luận: AprilTag đã chứng minh tính mạnh mẽ trong nhiều ứng dụng robotics và AR, nhưng việc cải thiện độ chính xác (đặc biệt ngoài trời) để trở thành giải pháp dữ liệu chuẩn vẫn là vấn đề mở.

  1. Các nguồn tham khảo

ADUDU

A proud team of passionate Robotics Enthusiasts competing in nation-wide Technology competitions in Vietnam, the FIRST Tech Challenge and the FIRST Robotics Competition.

Copyright ©

, all rights reserved

Made by aDudu's Programming Department

made by aDudu

Setup camera cho April Tag

Edit Content