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

詳細説明

ICP点対平面オドメトリアルゴリズム

クラス

class  cv::linemod::ColorGradient
 カラー画像から量子化された勾配方向を計算する Modality詳細...
 
class  cv::rgbd::DepthCleaner
 
class  cv::linemod::DepthNormal
 密な深度マップから量子化された表面法線を計算する Modality詳細...
 
class  cv::linemod::Detector
 任意のモダリティの組み合わせを用いた LINE テンプレートマッチングアルゴリズムによる物体検出器。詳細...
 
class  cv::rgbd::FastICPOdometry
 
struct  cv::linemod::Feature
 位置とラベルで記述される識別特徴。詳細...
 
class  cv::rgbd::ICPOdometry
 
struct  cv::linemod::Match
 テンプレートマッチングの成功結果を表す。詳細...
 
class  cv::linemod::Modality
 LINE テンプレートマッチング表現に組み込むモダリティのインターフェース。詳細...
 
class  cv::rgbd::Odometry
 
struct  cv::rgbd::OdometryFrame
 
class  cv::linemod::QuantizedPyramid
 画像ピラミッド上で動作するモダリティを表す。詳細...
 
struct  cv::rgbd::RgbdFrame
 
class  cv::rgbd::RgbdICPOdometry
 
class  cv::rgbd::RgbdNormals
 
class  cv::rgbd::RgbdOdometry
 
class  cv::rgbd::RgbdPlane
 
struct  cv::linemod::Template
 

関数

 cv::linemod::QuantizedPyramid::Candidate::Candidate (int x, int y, int label, float score)
 
 cv::linemod::Feature::Feature (int x, int y, int label)
 
 cv::linemod::Match::Match (int x, int y, float similarity, const String &class_id, int template_id)
 
void cv::linemod::colormap (const Mat &quantized, Mat &dst)
 量子化画像を表示用にカラーマップ化するデバッグ関数。
 
void cv::rgbd::depthTo3d (InputArray depth, InputArray K, OutputArray points3d, InputArray mask=noArray())
 
void cv::rgbd::depthTo3dSparse (InputArray depth, InputArray in_K, InputArray in_points, OutputArray points3d)
 
void cv::linemod::drawFeatures (InputOutputArray img, const std::vector< Template > &templates, const Point2i &tl, int size=10)
 linemod 特徴を描画するデバッグ関数。
 
Ptr< linemod::Detectorcv::linemod::getDefaultLINE ()
 カラー勾配を用いた LINE アルゴリズムによる検出器のファクトリ関数。
 
Ptr< linemod::Detectorcv::linemod::getDefaultLINEMOD ()
 カラー勾配と深度法線を用いた LINE-MOD アルゴリズムによる検出器のファクトリ関数。
 
bool cv::rgbd::isValidDepth (const double &depth)
 
bool cv::rgbd::isValidDepth (const float &depth)
 
bool cv::rgbd::isValidDepth (const int &depth)
 
bool cv::rgbd::isValidDepth (const short int &depth)
 
bool cv::rgbd::isValidDepth (const unsigned int &depth)
 
bool cv::rgbd::isValidDepth (const unsigned short int &depth)
 
void cv::rgbd::registerDepth (InputArray unregisteredCameraMatrix, InputArray registeredCameraMatrix, InputArray registeredDistCoeffs, InputArray Rt, InputArray unregisteredDepth, const Size &outputImagePlaneSize, OutputArray registeredDepth, bool depthDilation=false)
 
void cv::rgbd::rescaleDepth (InputArray in, int depth, OutputArray out, double depth_factor=1000.0)
 
void cv::rgbd::warpFrame (const Mat &image, const Mat &depth, const Mat &mask, const Mat &Rt, const Mat &cameraMatrix, const Mat &distCoeff, OutputArray warpedImage, OutputArray warpedDepth=noArray(), OutputArray warpedMask=noArray())
 

関数詳解

◆ Candidate()

cv::linemod::QuantizedPyramid::Candidate::Candidate ( int x,
int y,
int label,
float score )
inline

◆ Feature()

cv::linemod::Feature::Feature ( int x,
int y,
int label )
inline

◆ Match()

cv::linemod::Match::Match ( int x,
int y,
float similarity,
const String & class_id,
int template_id )
inline

◆ colormap()

void cv::linemod::colormap ( const Mat & quantized,
Mat & dst )
Python:
cv.linemod.colormap(quantized[, dst]) -> dst

#include <opencv2/rgbd/linemod.hpp>

量子化画像を表示用にカラーマップ化するデバッグ関数。

◆ depthTo3d()

void cv::rgbd::depthTo3d ( InputArray depth,
InputArray K,
OutputArray points3d,
InputArray mask = noArray() )
Python:
cv.rgbd.depthTo3d(depth, K[, points3d[, mask]]) -> points3d

#include <opencv2/rgbd/depth.hpp>

深度画像を整列された3D点群へ変換する。座標系は x が左方向、y が下方向、z がカメラから遠ざかる方向を指す

引数
depth深度画像(short int CV_U として与えられた場合はミリメートル単位の深度とみなされる(Microsoft Kinect で行われるように)。一方、CV_32F または CV_64F として与えられた場合はメートル単位とみなされる)
Kキャリブレーション行列
points3d結果として得られる3D点群。depth が CV_32F または CV_64F の場合はそれと同じビット深度になり、depth が CV_U のビット深度の場合は K のビット深度になる
mask考慮する点のマスク(空でもよい)

◆ depthTo3dSparse()

void cv::rgbd::depthTo3dSparse ( InputArray depth,
InputArray in_K,
InputArray in_points,
OutputArray points3d )
Python:
cv.rgbd.depthTo3dSparse(depth, in_K, in_points[, points3d]) -> points3d

#include <opencv2/rgbd/depth.hpp>

引数
depth深度画像
in_K
in_pointsxy座標のリスト
points3d結果として得られる3D点群

◆ drawFeatures()

void cv::linemod::drawFeatures ( InputOutputArray img,
const std::vector< Template > & templates,
const Point2i & tl,
int size = 10 )
Python:
cv.linemod.drawFeatures(img, templates, tl[, size]) -> img

#include <opencv2/rgbd/linemod.hpp>

linemod 特徴を描画するデバッグ関数。

引数
img
templatesDetector::addTemplate を参照
tlテンプレートのバウンディングボックスの左上オフセット。Detector::addTemplate を参照
sizeマーカーサイズ。cv::drawMarker を参照

◆ getDefaultLINE()

Ptr< linemod::Detector > cv::linemod::getDefaultLINE ( )
Python:
cv.linemod.getDefaultLINE() -> retval

#include <opencv2/rgbd/linemod.hpp>

カラー勾配を用いた LINE アルゴリズムによる検出器のファクトリ関数。

VGA画像に適したデフォルトの引数設定。

◆ getDefaultLINEMOD()

Ptr< linemod::Detector > cv::linemod::getDefaultLINEMOD ( )
Python:
cv.linemod.getDefaultLINEMOD() -> retval

#include <opencv2/rgbd/linemod.hpp>

カラー勾配と深度法線を用いた LINE-MOD アルゴリズムによる検出器のファクトリ関数。

VGA画像に適したデフォルトの引数設定。

◆ isValidDepth() [1/6]

bool cv::rgbd::isValidDepth ( const double & depth)
inline

#include <opencv2/rgbd/depth.hpp>

この関数の呼び出しグラフ:

◆ isValidDepth() [2/6]

bool cv::rgbd::isValidDepth ( const float & depth)
inline

#include <opencv2/rgbd/depth.hpp>

値が妥当な深度かどうかをチェックする。CV_16U または CV_16S では、限界値の場合に無効とみなす慣例である。float/double の場合は単にNaNかどうかをチェックする

引数
depth妥当性をチェックする深度
この関数の呼び出しグラフ:

◆ isValidDepth() [3/6]

bool cv::rgbd::isValidDepth ( const int & depth)
inline

◆ isValidDepth() [4/6]

bool cv::rgbd::isValidDepth ( const short int & depth)
inline

◆ isValidDepth() [5/6]

bool cv::rgbd::isValidDepth ( const unsigned int & depth)
inline

◆ isValidDepth() [6/6]

bool cv::rgbd::isValidDepth ( const unsigned short int & depth)
inline

◆ registerDepth()

void cv::rgbd::registerDepth ( InputArray unregisteredCameraMatrix,
InputArray registeredCameraMatrix,
InputArray registeredDistCoeffs,
InputArray Rt,
InputArray unregisteredDepth,
const Size & outputImagePlaneSize,
OutputArray registeredDepth,
bool depthDilation = false )
Python:
cv.rgbd.registerDepth(unregisteredCameraMatrix, registeredCameraMatrix, registeredDistCoeffs, Rt, unregisteredDepth, outputImagePlaneSize[, registeredDepth[, depthDilation]]) -> registeredDepth

#include <opencv2/rgbd/depth.hpp>

深度データを外部カメラへ位置合わせする。深度クラウドを作成し、カメラ間の剛体変換でクラウドを変換し、変換後の点を RGB カメラへ投影することで位置合わせを行う。

uv_rgb = K_rgb * [R | t] * z * inv(K_ir) * uv_ir

現時点では負の深度値はチェックしない。

引数
unregisteredCameraMatrix深度カメラのカメラ行列
registeredCameraMatrix外部カメラのカメラ行列
registeredDistCoeffs外部カメラの歪み係数
Rtカメラ間の剛体変換。深度カメラ座標系から外部カメラ座標系へ点を変換する。
unregisteredDepth入力深度データ
outputImagePlaneSize外部カメラの画像平面の寸法(幅, 高さ)
registeredDepth深度を外部カメラへ変換した結果
depthDilation穴やオクルージョン誤差を避けるために深度を膨張させるかどうか(省略可能)

◆ rescaleDepth()

void cv::rgbd::rescaleDepth ( InputArray in,
int depth,
OutputArray out,
double depth_factor = 1000.0 )
Python:
cv.rgbd.rescaleDepth(in_, depth[, out[, depth_factor]]) -> out

#include <opencv2/rgbd/depth.hpp>

入力画像が CV_16UC1 型(Kinect のものなど)の場合、画像は float に変換され、depth_factor で割ってメートル単位の深度を得て、値0は std::numeric_limits<float>::quiet_NaN() に変換される。そうでない場合は、画像は単に float に変換される

引数
in深度画像(short int CV_U として与えられた場合はミリメートル単位の深度とみなされる(Microsoft Kinect で行われるように)。それ以外はメートル単位とみなされる)
depth希望する出力ビット深度(float または double)
out再スケールされたfloat型の深度画像
depth_factor(省略可能)深度を距離に変換する係数(デフォルトは Kinect センサー用の 1000.0)

◆ warpFrame()

void cv::rgbd::warpFrame ( const Mat & image,
const Mat & depth,
const Mat & mask,
const Mat & Rt,
const Mat & cameraMatrix,
const Mat & distCoeff,
OutputArray warpedImage,
OutputArray warpedDepth = noArray(),
OutputArray warpedMask = noArray() )
Python:
cv.rgbd.warpFrame(image, depth, mask, Rt, cameraMatrix, distCoeff[, warpedImage[, warpedDepth[, warpedMask]]]) -> warpedImage, warpedDepth, warpedMask

#include <opencv2/rgbd/depth.hpp>

画像をワープする。深度から3D点群を計算し、与えられた変換でそれらを変換し、カラー点群を画像平面へ投影する。この関数は Odometry アルゴリズムの結果を可視化するために使用できる。

引数
image画像(CV_8UC1 または CV_8UC3 型)
depth深度(depthTo3d 関数で使われる型)
mask使用するピクセルのマスク(CV_8UC1)。空でもよい
Rt深度から計算された3D点群に適用される変換
cameraMatrixカメラ行列
distCoeff歪み係数
warpedImageワープされた画像。
warpedDepthワープされた深度。
warpedMaskワープされたマスク。