OpenCV 4.13.0
Open Source Computer Vision
読み込み中...
検索中...
見つかりません
🤖 AIによる機械翻訳(非公式) — これは OpenCV 4.13.0 公式リファレンス(英語)を AI (Claude) で自動翻訳したものです。訳に誤りを含む場合があります。正確な情報は 公式英語版(原文) を参照してください。

ArUcoマーカーの Board続き...

#include <opencv2/objdetect/aruco_board.hpp>

Collaboration diagram for cv::aruco::Board:

公開メンバ関数

 Board ()
 
 Board (InputArrayOfArrays objPoints, const Dictionary &dictionary, InputArray ids)
 共通の Board コンストラクタ。
 
void generateImage (Size outSize, OutputArray img, int marginSize=0, int borderBits=1) const
 平面ボードを描画する。
 
const DictionarygetDictionary () const
 このボードに使用されるマーカーの Dictionary を返す
 
const std::vector< int > & getIds () const
 ボード内のマーカーの識別子ベクトル(objPoints と同じサイズであるべき)
 
const std::vector< std::vector< Point3f > > & getObjPoints () const
 ボード内のすべてのマーカーコーナーのオブジェクト点の配列を返す。
 
const Point3fgetRightBottomCorner () const
 ボードの右下コーナーの座標を取得する。create() 関数の呼び出し時に設定される
 
void matchImagePoints (InputArrayOfArrays detectedCorners, InputArray detectedIds, OutputArray objPoints, OutputArray imgPoints) const
 ボード構成と検出されたマーカーのセットが与えられると、対応する画像点とオブジェクト点を返す。solvePnP() で使用できる
 

限定公開メンバ関数

 Board (const Ptr< Impl > &impl)
 

限定公開変数類

Ptr< Impl > impl
 

詳細説明

ArUcoマーカーの Board

ボードは、共通の座標系を持つ3D空間内のマーカーの集合である。ボードの一般的な形態は平面(2D)ボードであるが、任意の3Dレイアウトを使用できる。Board オブジェクトは次の要素で構成される:

  • マーカーコーナーのオブジェクト点。すなわちボード座標系を基準としたその座標。
  • ボードのマーカーの種類を示す辞書。
  • ボード内の全マーカーの識別子。

構築子と解体子の詳解

◆ Board() [1/3]

cv::aruco::Board::Board ( InputArrayOfArrays objPoints,
const Dictionary & dictionary,
InputArray ids )
Python:
cv.aruco.Board(objPoints, dictionary, ids) -> <aruco_Board object>

共通の Board コンストラクタ。

引数
objPointsボード内のすべてのマーカーコーナーのオブジェクト点の配列
dictionaryこのボードで使用されるマーカーの辞書
idsボード内のマーカーの識別子のベクトル

◆ Board() [2/3]

cv::aruco::Board::Board ( )
Python:
cv.aruco.Board(objPoints, dictionary, ids) -> <aruco_Board object>

◆ Board() [3/3]

cv::aruco::Board::Board ( const Ptr< Impl > & impl)
protected
Python:
cv.aruco.Board(objPoints, dictionary, ids) -> <aruco_Board object>

メンバ関数詳解

◆ generateImage()

void cv::aruco::Board::generateImage ( Size outSize,
OutputArray img,
int marginSize = 0,
int borderBits = 1 ) const
Python:
cv.aruco.Board.generateImage(outSize[, img[, marginSize[, borderBits]]]) -> img

平面ボードを描画する。

引数
outSize出力画像のサイズ(ピクセル単位)。
imgボードを含む出力画像。この画像のサイズは outSize になり、ボードはその比率を保ったまま中央に配置される。
marginSize出力画像におけるボードの最小マージン(ピクセル単位)
borderBitsマーカーの境界線の幅。

この関数は、印刷可能な状態のボードの画像を返す。

◆ getDictionary()

const Dictionary & cv::aruco::Board::getDictionary ( ) const
Python:
cv.aruco.Board.getDictionary() -> retval

このボードで使用されるマーカーの Dictionary を返す

◆ getIds()

const std::vector< int > & cv::aruco::Board::getIds ( ) const
Python:
cv.aruco.Board.getIds() -> retval

ボード内のマーカーの識別子のベクトル(objPoints と同じサイズである必要がある)

戻り値
マーカーの識別子のベクトル

◆ getObjPoints()

const std::vector< std::vector< Point3f > > & cv::aruco::Board::getObjPoints ( ) const
Python:
cv.aruco.Board.getObjPoints() -> retval

ボード内の全マーカーコーナーのオブジェクト点の配列を返す。

各マーカーは、この順序で4つのコーナーを含む:

  • objPoints[i][0] - i番目のマーカーの左上の点
  • objPoints[i][1] - i番目のマーカーの右上の点
  • objPoints[i][2] - i番目のマーカーの右下の点
  • objPoints[i][3] - i番目のマーカーの左下の点

マーカーは一定の順序で配置される - 行ごとに、各行内では左から右へ。M個のマーカーに対して、サイズは Mx4 である。

◆ getRightBottomCorner()

const Point3f & cv::aruco::Board::getRightBottomCorner ( ) const
Python:
cv.aruco.Board.getRightBottomCorner() -> retval

ボードの右下コーナーの座標を取得する。関数 create() を呼び出すときに設定される

◆ matchImagePoints()

void cv::aruco::Board::matchImagePoints ( InputArrayOfArrays detectedCorners,
InputArray detectedIds,
OutputArray objPoints,
OutputArray imgPoints ) const
Python:
cv.aruco.Board.matchImagePoints(detectedCorners, detectedIds[, objPoints[, imgPoints]]) -> objPoints, imgPoints

ボード構成と検出済みマーカーの集合が与えられると、対応する画像点とオブジェクト点を返す。solvePnP() で使用できる

引数
detectedCornersボードで検出されたマーカーコーナーのリスト。cv::Board と cv::GridBoard の場合、このメソッドは Aruco マーカーコーナーを含む std::vector<std::vector<Point2f>> または std::vector<Mat> を期待する。cv::CharucoBoard の場合、このメソッドは ChAruco コーナー(Aruco マーカーと対応付けられたチェスボードコーナー)を含む std::vector<Point2f> または Mat を期待する。
detectedIds各マーカーまたはcharucoコーナーの識別子のリスト。任意の Board クラスに対して、このメソッドは std::vector<int> または Mat を期待する。
objPointsボード座標系におけるマーカー点のベクトル。任意の Board クラスに対して、このメソッドは std::vector<cv::Point3f> の objectPoints または cv::Mat を期待する
imgPoints画像座標系におけるマーカー点のベクトル。任意の Board クラスに対して、このメソッドは std::vector<cv::Point2f> の objectPoints または cv::Mat を期待する
参照
solvePnP

メンバ変数詳解

◆ impl

Ptr<Impl> cv::aruco::Board::impl
protected

このクラス詳解は次のファイルから抽出されました: