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

Quasi Dense Stereo の計算に必要なメソッドを含むクラス。 続き...

#include <opencv2/stereo/quasi_dense_stereo.hpp>

Collaboration diagram for cv::stereo::QuasiDenseStereo:

公開メンバ関数

virtual ~QuasiDenseStereo ()=0
 このクラスの行列やベクトルが確保したすべてのメモリを解放するデストラクタメソッド。
 
virtual void getDenseMatches (std::vector< MatchQuasiDense > &denseMatches)=0
 密な対応点を取得する。
 
virtual cv::Mat getDisparity ()=0
 「process」メソッドで見つかった対応に基づいて視差マップを計算して返す。
 
virtual cv::Point2f getMatch (const int x, const int y)=0
 左画像のピクセル座標を指定し、右画像における対応する位置を取得する。
 
virtual void getSparseMatches (std::vector< MatchQuasiDense > &sMatches)=0
 疎な対応点を取得する。
 
virtual int loadParameters (cv::String filepath)=0
 クラスの設定パラメータを含むファイルを読み込む。
 
virtual void process (const cv::Mat &imgLeft, const cv::Mat &imgRight)=0
 アルゴリズムのメイン処理。このメソッドは疎なシードを計算し、それらを密化する。
 
virtual int saveParameters (cv::String filepath)=0
 クラスに現在設定されているすべての設定パラメータを含むファイルを保存する。
 

静的公開メンバ関数

static cv::Ptr< QuasiDenseStereocreate (cv::Size monoImgSize, cv::String paramFilepath=cv::String())
 

公開変数類

PropagationParameters Param
 

詳細説明

Quasi Dense Stereo の計算に必要なメソッドを含むクラス。

このモジュールには、quasi dense なステレオマッチングを実行するコードが含まれている。本手法はまず、ステレオ画像ペア間の特徴マッチングに基づく疎な3次元再構成から始め、続いてその構造を近傍の画像領域へ伝播させる。初期のシード対応を得るために、アルゴリズムはステレオペアの左画像で Shi-Tomashi 特徴を見つけ、それらをピラミッド型 Lucas-Kanade を用いて右画像で追跡する。疎な対応を密化するために、アルゴリズムは各シードペアの周囲の小さなパッチでゼロ平均正規化相互相関 (ZNCC) を計算し、それを各マッチの品質指標として用いる。本コードでは、対応の位置と ZNCC 値を保存するための「Match」と呼ぶ独自の構造体を導入している。シードマッチは ZNCC 値に従ってソートされた優先度付きキューに保存され、最も品質の高い Match をすぐに利用できるようにしている。アルゴリズムは Match を取り出し、それらを使って周囲から新しいマッチを抽出する。これは、各シードの周囲の小さな近傍領域を考慮し、ある一定のテクスチャしきい値を超え、かつまだ計算されていない対応を取得することで行われる。新しいマッチはシード優先度付きキューに保存され、シードとして使われる。これ以上マッチを取得できなくなった時点で伝播処理は終了する。

参照
このコードは [259] で発表された成果を表している。このコードがあなたの研究に有用であれば [259] を引用してほしい。

また、オリジナルの成長スキームのアイデアは [165] で述べられている。

構築子と解体子の詳解

◆ ~QuasiDenseStereo()

virtual cv::stereo::QuasiDenseStereo::~QuasiDenseStereo ( )
pure virtual

このクラスの行列やベクトルが確保したすべてのメモリを解放するデストラクタメソッド。

メンバ関数詳解

◆ create()

static cv::Ptr< QuasiDenseStereo > cv::stereo::QuasiDenseStereo::create ( cv::Size monoImgSize,
cv::String paramFilepath = cv::String() )
static
Python:
cv.stereo.QuasiDenseStereo.create(monoImgSize[, paramFilepath]) -> retval
cv.stereo.QuasiDenseStereo_create(monoImgSize[, paramFilepath]) -> retval

◆ getDenseMatches()

virtual void cv::stereo::QuasiDenseStereo::getDenseMatches ( std::vector< MatchQuasiDense > & denseMatches)
pure virtual
Python:
cv.stereo.QuasiDenseStereo.getDenseMatches() -> denseMatches

密な対応点を取得する。

引数
[out]denseMatchesすべての密マッチを含むベクトル。
覚え書き
このメソッドは denseMatches ベクトルをクリアする。
sMatches ベクトル内の返された Match 要素は corr メンバを使用しない。

◆ getDisparity()

virtual cv::Mat cv::stereo::QuasiDenseStereo::getDisparity ( )
pure virtual
Python:
cv.stereo.QuasiDenseStereo.getDisparity() -> retval

「process」メソッドで見つかった対応に基づいて視差マップを計算して返す。

覚え書き
デフォルトのレベルは 50
戻り値
cv::Mat。グレースケールの視差画像を含む。
参照
computeDisparity
quantizeDisparity

◆ getMatch()

virtual cv::Point2f cv::stereo::QuasiDenseStereo::getMatch ( const int x,
const int y )
pure virtual
Python:
cv.stereo.QuasiDenseStereo.getMatch(x, y) -> retval

左画像のピクセル座標を指定し、右画像における対応する位置を取得する。

引数
[in]x左画像チャンネルにおける x ピクセル座標。
[in]y左画像チャンネルにおける y ピクセル座標。
戻り値
cv::Point(x,y)The location of the corresponding pixel in the right image.
cv::Point(0,0)(NO_MATCH) if no match is found in the right image for the specified pixel location in the left image.
覚え書き
このメソッドは必ず process の後に呼び出す必要がある。さもないとマッチが正しくならない。

◆ getSparseMatches()

virtual void cv::stereo::QuasiDenseStereo::getSparseMatches ( std::vector< MatchQuasiDense > & sMatches)
pure virtual
Python:
cv.stereo.QuasiDenseStereo.getSparseMatches() -> sMatches

疎な対応点を取得する。

引数
[out]sMatchesすべての疎な対応を含むベクトル。
覚え書き
このメソッドは sMatches ベクトルをクリアする。
sMatches ベクトル内の返された Match 要素は corr メンバを使用しない。

◆ loadParameters()

virtual int cv::stereo::QuasiDenseStereo::loadParameters ( cv::String filepath)
pure virtual
Python:
cv.stereo.QuasiDenseStereo.loadParameters(filepath) -> retval

クラスの設定パラメータを含むファイルを読み込む。

引数
[in]filepath設定パラメータを含む .YAML ファイルの場所。
覚え書き
デフォルト値は空文字列であり、その場合はデフォルトのパラメータが読み込まれる。
戻り値
1If the path is not empty and the program loaded the parameters successfully.
0If the path is empty and the program loaded default parameters.
-1If the file location is not valid or the program could not open the file and loaded default parameters from defaults.hpp.
覚え書き
このメソッドはコンストラクタ内で自動的に呼び出され、クラスを設定する。
異なるパラメータを読み込むと出力に影響する。これは動画処理の場合のチューニングに有用である。
参照
loadParameters

◆ process()

virtual void cv::stereo::QuasiDenseStereo::process ( const cv::Mat & imgLeft,
const cv::Mat & imgRight )
pure virtual
Python:
cv.stereo.QuasiDenseStereo.process(imgLeft, imgRight) -> None

アルゴリズムのメイン処理。このメソッドは疎なシードを計算し、それらを密化する。

最初に入力画像はグレースケールに変換され、その後 sparseMatching メソッドが呼び出されて疎なステレオを取得する。最後に quasiDenseMatching が呼び出されて対応点を密化する。

引数
[in]imgLeftステレオ画像ペアの左チャンネル。
[in]imgRightステレオ画像ペアの右チャンネル。
覚え書き
入力画像がカラーの場合、このメソッドは BGR であると仮定してグレースケールに変換する。
参照
sparseMatching
quasiDenseMatching

◆ saveParameters()

virtual int cv::stereo::QuasiDenseStereo::saveParameters ( cv::String filepath)
pure virtual
Python:
cv.stereo.QuasiDenseStereo.saveParameters(filepath) -> retval

クラスに現在設定されているすべての構成パラメータを含むファイルを保存する。

引数
[in]filepathパラメータファイルを保存する場所。
覚え書き
引数なしでこのメソッドを呼び出すと、クラスのパラメータがプロジェクトルートフォルダ内の "qds_parameters.yaml" という名前のファイルに保存される。
このメソッドは、クラスを調整するためのテンプレートファイルを生成するために使用できる。
参照
loadParameters

メンバ変数詳解

◆ Param

PropagationParameters cv::stereo::QuasiDenseStereo::Param

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