OpenCV 4.5.3(日本語機械翻訳)
クラス | 関数
silhouette based 3D object tracking

クラス

class cv::rapid::Tracker
ステートフルなシルエットトラッカーのための抽象ベースクラス[【詳解】(英語]
class cv::rapid::Rapid
ラッパーsilhouette based 3D object tracking均一なアクセスのための関数[【詳解】(英語]
class cv::rapid::OLSTracker
class cv::rapid::GOSTracker

関数

CV_EXPORTS_W void cv::rapid::drawCorrespondencies (InputOutputArray bundle, InputArray cols, InputArray colors=noArray())
CV_EXPORTS_W void cv::rapid::drawSearchLines (InputOutputArray img, InputArray locations, const Scalar &color)
CV_EXPORTS_W void cv::rapid::drawWireframe (InputOutputArray img, InputArray pts2d, InputArray tris, const Scalar &color, int type=LINE_8, bool cullBackface=false)
CV_EXPORTS_W void cv::rapid::extractControlPoints (int num, int len, InputArray pts3d, InputArray rvec, InputArray tvec, InputArray K, const Size &imsize, InputArray tris, OutputArray ctl2d, OutputArray ctl3d)
CV_EXPORTS_W void cv::rapid::extractLineBundle (int len, InputArray ctl2d, InputArray img, OutputArray bundle, OutputArray srcLocations)
CV_EXPORTS_W void cv::rapid::findCorrespondencies (InputArray bundle, OutputArray cols, OutputArray response=noArray())
CV_EXPORTS_W void cv::rapid::convertCorrespondencies (InputArray cols, InputArray srcLocations, OutputArray pts2d, InputOutputArray pts3d=noArray(), InputArray mask=noArray())
CV_EXPORTS_W float cv::rapid::rapid (InputArray img, int num, int len, InputArray pts3d, InputArray tris, InputArray K, InputOutputArray rvec, InputOutputArray tvec, CV_OUT double *rmsd=0)

詳解

implements "RAPID-a video rate object tracker" [harris1990rapid] with the dynamic control point extraction of [drummond2002real]

関数詳解

convertCorrespondencies()

CV_EXPORTS_W void cv::rapid::convertCorrespondencies ( InputArray cols,
InputArray srcLocations,
OutputArray pts2d,
InputOutputArray pts3d = noArray(),
InputArray mask = noArray()
)

対応関係とマスクに基づいて、対応する2次元および3次元のポイントを収集します。

引数
cols ラインバンドル空間におけるラインごとの対応関係-位置
srcLocations ソース画像の位置
pts2d 2次元点
pts3d 3d点
mask 保持すべき要素の非ゼロ値を含むマスク

drawCorrespondencies()

CV_EXPORTS_W void cv::rapid::drawCorrespondencies ( InputOutputArray bundle,
InputArray cols,
InputArray colors = noArray()
)

デバッグ マッチした対応関係のマーカーをラインバンドルに描画

引数
bundle ラインバンドル
cols ラインバンドル内の列座標
colors マーカーの色。デフォルトでは白です。

drawSearchLines()

CV_EXPORTS_W void cv::rapid::drawSearchLines ( InputOutputArray img,
InputArray locations,
const Scalar & color
)

Debug 探索線を画像に描画

引数
img 出力画像
locations 線分束の元となる位置
color 線の色

drawWireframe()

CV_EXPORTS_W void cv::rapid::drawWireframe ( InputOutputArray img,
InputArray pts2d,
InputArray tris,
const Scalar & color,
int type = LINE_8 ,
bool cullBackface = false
)

三角形のメッシュのワイヤーフレームを描く

引数
img 出力画像
pts2d 三角メッシュの2次元点をprojectPoints
tris 三角形の面の接続性
color 線の色
type 線の種類 見るLineTypes.
cullBackface CCWオーダーに基づく背面カリングの有効化

extractControlPoints()

CV_EXPORTS_W void cv::rapid::extractControlPoints ( int num,
int len,
InputArray pts3d,
InputArray rvec,
InputArray tvec,
InputArray K,
const Size & imsize,
InputArray tris,
OutputArray ctl2d,
OutputArray ctl3d
)

メッシュの投影されたシルエットから制御点を抽出する

見る[drummond2002real]Sec 2.1, Step b

引数
num 制御点の数
len 探索半径(ROIの制限に使用)
pts3d メッシュの3次元点
rvec メッシュとカメラの間の回転
tvec メッシュとカメラ間の移動
K カメラの固有値
imsize ビデオフレームのサイズ
tris 三角形の面の接続性
ctl2d 制御点の2次元位置
ctl3d メッシュの3次元点のマッチング

extractLineBundle()

CV_EXPORTS_W void cv::rapid::extractLineBundle ( int len,
InputArray ctl2d,
InputArray img,
OutputArray bundle,
OutputArray srcLocations
)

画像からの線束の抽出

引数
len 探索半径 束は2*len + 1の列があります。
ctl2d 探索線は、これらの点を中心にして、その点で定義される輪郭に直交します。束は同じ数の行を持つことになります。
img 画素の強度を読み取る画像
bundle 線の束の画像で,サイズはctl2d.rows() x (2 * len + 1)と同じタイプの画像です。img
srcLocations のソースピクセルの位置をbundleを使用します。imgCV_16SC2のように

findCorrespondencies()

CV_EXPORTS_W void cv::rapid::findCorrespondencies ( InputArray bundle,
OutputArray cols,
OutputArray response = noArray()
)

探索線(線分束の1つの行)に沿って,最大のソーベルエッジを探索することで,対応する画像位置を見つけます.

引数
bundle 線の束
cols ラインバンドル空間におけるラインごとの対応関係-位置
response 選択された点に対する sobel 応答

rapid()

CV_EXPORTS_W float cv::rapid::rapid ( InputArray img,
int num,
int len,
InputArray pts3d,
InputArray tris,
InputArray K,
InputOutputArray rvec,
InputOutputArray tvec,
CV_OUT double * rmsd = 0
)

単一のラピッドを実行する高レベル関数[harris1990rapid]イテレーション

  1. extractControlPoints
  2. ラインバンドルの抽出
  3. 対応関係の検索
  4. 対応関係の変換
  5. solvePnPRefineLM
引数
img ビデオフレーム
num 検索ラインの数
len 検索ラインの半径
pts3d メッシュの3次元点
tris 三角形の面の接続性
K カメラ行列
rvec メッシュとカメラの間の回転 入力値は初期解として使用されます。
tvec メッシュとカメラの間の移動。入力された値が初期解として使用されます.
rmsd 2次元再投影差
戻り値
抽出され,照合される可能性のある探索線の比率