軽量な AR ライブラリの ArUco について調査中
OpenCVのcontribを利用する場合
OpenCV3.2 ではcontrib の中にArUcoが含まれている。引用している記事に述べるように、サンプルプログラムのビルドには別途 CMakeLists.txt を作って(あるいは引用先のCMakeLists.txtをコピーして)、cmakeしてからビルドする。
- OpenCV3.2 /Related Pages Tutorials for contrib modules
- ArUcoマーカー検出(aruco モジュール) ArUcoマーカは、カメラの姿勢推定に使用できるバイナリの正方形の基準マーカです。その主な利点は、検出が堅牢で、迅速かつ簡単であることです。 arucoモジュールは、これらのタイプのマーカーの検出と、姿勢推定およびカメラ較正のために使用するツールを含む。 また、ChArUcoの機能はArucoマーカーと従来のチェスボードを組み合わせて、簡単で多彩なコーナー検出を可能にします。このモジュールにはChArUcoのコーナーを検出し、姿勢推定やカメラ較正に使用する機能も含まれています。
- opencv_contrib-master/modules/aruco/src モジュールとしてインストールされるもの
- opencv_contrib-master/modules/aruco/samples ArUcoのモジュールを利用するsampleプログラム
- OpenCV3 ArUcoサンプルのビルド このサイトにはopencv_contrib-master/modules/aruco/samplesのプログラムをbuildするためのCMakeLists.txtの見本がある。2つのプログラムだけ書かれている部分を、残り全てのプログラムについて同様に記述すれば十分だ。
OpenCV3ではopencv_contributeというリポジトリにOpenCVを使用して作成されたライブラリがモジュールとして収録されている。 この中にAR向けマーカー認識ライブラリのArUcoがある。
opencv_contrib/modules/arucoにはCMakeLists.txtが存在するが、これはArUcoそのものをビルドするためのものであるため、 サンプルのビルドには使用できない。
ArUcoマーカー検出(aruco モジュール)
ArUcoマーカーは、カメラの姿勢推定に使用できるバイナリの正方形の基準マーカーです。その主な利点は、検出が堅牢で、迅速かつ簡単であることです。
arucoモジュールは、これらのタイプのマーカーの検出と、姿勢推定およびカメラ較正のために使用するツールを含む。
また、ChArUcoの機能はArucoマーカーと従来のチェスボードを組み合わせて、簡単で多彩なコーナー検出を可能にします。このモジュールにはChArUcoのコーナーを検出し、姿勢推定やカメラ較正に使用する機能も含まれています。
Arucoマーカーの検出
互換性:> OpenCV 3.0
著者:Sergio Garrido
単一のArUcoマーカーからの基本的な検出と姿勢推定。
Arucoボードの検出
互換性:> OpenCV 3.0
著者:Sergio Garrido
マーカボードを用いた検出と姿勢推定
ChArUcoコーナーの検出
互換性:> OpenCV 3.0
著者:Sergio Garrido
ChArUcoコーナーを使った基本的な検出
ダイヤモンドマーカーの検出
互換性:> OpenCV 3.0
著者:Sergio Garrido
ChArUcoマーカーを用いた検出と姿勢推定
ArucoとChArUcoによる校正
互換性:> OpenCV 3.0
著者:Sergio Garrido
ArucoおよびChArUcoボードを使用したカメラキャリブレーション
ArucoモジュールFAQ
互換性:> OpenCV 3.0
著者:Sergio Garrido
arucoモジュールに関する一般的で有用な質問
サンプルのソースコード
opencv_contrib-master/modules/aruco/samples
calibrate_camera.cpp Arucoによる校正
calibrate_camera_charuco.cpp ChArUcoによる校正
create_board.cpp
create_board_charuco.cpp
create_diamond.cpp
create_marker.cpp
detect_board.cpp Arucoボードの検出
detect_board_charuco.cpp
detect_diamonds.cpp ダイヤモンドマーカーの検出
detect_markers.cpp Arucoマーカーの検出
単独配布のArUcoを利用する場合
- ArUco: a minimal library for Augmented Reality applications based on OpenCV
Windows Visual Studio ARライブラリ ArUco を CMake なしでビルドする
Mac clang 軽量な AR ライブラリの ArUco を Mac で使ってみた
-
Mac Android Unity で Android 向けの OpenCV x ArUco を利用した AR アプリを作ってみる
- github unity-android-aruco-sample
-
Github ArUcoでマーカー検出(静止画&動画ファイル)]
- 動画ファイル中の全フレームを連続で処理するサンプルコード(aruco_simple.cppを改変)
aruco-2.0.13からビルドしたsampleプログラム
aruco_calibration.exe
aruco_calibration_fromimages.exe
aruco_create_markermap.exe
aruco_markermap_pix2meters.exe
aruco_print_dictionary.exe
aruco_print_marker.exe
aruco_simple.exe
aruco_simple_markermap.exe
aruco_test.exe
aruco_test_markermap.exe
aruco_tracker.exe
ROSの一部としてのArUco
sudo apt install aruco_ros
catkinが必要になった。
sudo apt install catkinn
Github
JanezCim/Aruco-with-Python
https://github.com/JanezCim/Aruco-with-Python/tree/master/aruco_testproject/build