🤖 AIによる機械翻訳(非公式) — これは OpenCV 5.0.0 公式リファレンス(英語)を AI (Claude) で自動翻訳したものです。訳に誤りを含む場合があります。正確な情報は 公式英語版(原文) を参照してください。
Package org.opencv.objdetect
クラス Objdetect
- java.lang.Object
-
- org.opencv.objdetect.Objdetect
-
public class Objdetect extends java.lang.Object
-
-
フィールドの要約
-
コンストラクタの要約
コンストラクタ Constructor Description Objdetect()
-
メソッドの要約
すべてのメソッド 静的メソッド 具象メソッド Modifier and Type Method Description static booleancheckChessboard​(Mat img, Size size)Checks whether the image contains chessboard of the specific size or not.static voiddrawChessboardCorners​(Mat image, Size patternSize, MatOfPoint2f corners, boolean patternWasFound)Renders the detected chessboard corners.static voiddrawDetectedCornersCharuco​(Mat image, Mat charucoCorners)Draws a set of Charuco cornersstatic voiddrawDetectedCornersCharuco​(Mat image, Mat charucoCorners, Mat charucoIds)Draws a set of Charuco cornersstatic voiddrawDetectedCornersCharuco​(Mat image, Mat charucoCorners, Mat charucoIds, Scalar cornerColor)Draws a set of Charuco cornersstatic voiddrawDetectedDiamonds​(Mat image, java.util.List<Mat> diamondCorners)Draw a set of detected ChArUco Diamond markersstatic voiddrawDetectedDiamonds​(Mat image, java.util.List<Mat> diamondCorners, Mat diamondIds)Draw a set of detected ChArUco Diamond markersstatic voiddrawDetectedDiamonds​(Mat image, java.util.List<Mat> diamondCorners, Mat diamondIds, Scalar borderColor)Draw a set of detected ChArUco Diamond markersstatic voiddrawDetectedMarkers​(Mat image, java.util.List<Mat> corners)Draw detected markers in imagestatic voiddrawDetectedMarkers​(Mat image, java.util.List<Mat> corners, Mat ids)Draw detected markers in imagestatic voiddrawDetectedMarkers​(Mat image, java.util.List<Mat> corners, Mat ids, Scalar borderColor)Draw detected markers in imagestatic ScalarestimateChessboardSharpness​(Mat image, Size patternSize, Mat corners)Estimates the sharpness of a detected chessboard.static ScalarestimateChessboardSharpness​(Mat image, Size patternSize, Mat corners, float rise_distance)Estimates the sharpness of a detected chessboard.static ScalarestimateChessboardSharpness​(Mat image, Size patternSize, Mat corners, float rise_distance, boolean vertical)Estimates the sharpness of a detected chessboard.static ScalarestimateChessboardSharpness​(Mat image, Size patternSize, Mat corners, float rise_distance, boolean vertical, Mat sharpness)Estimates the sharpness of a detected chessboard.static DictionaryextendDictionary​(int nMarkers, int markerSize)Extend base dictionary by new nMarkersstatic DictionaryextendDictionary​(int nMarkers, int markerSize, Dictionary baseDictionary)Extend base dictionary by new nMarkersstatic DictionaryextendDictionary​(int nMarkers, int markerSize, Dictionary baseDictionary, int randomSeed)Extend base dictionary by new nMarkersstatic booleanfind4QuadCornerSubpix​(Mat img, Mat corners, Size region_size)static booleanfindChessboardCorners​(Mat image, Size patternSize, MatOfPoint2f corners)Finds the positions of internal corners of the chessboard.static booleanfindChessboardCorners​(Mat image, Size patternSize, MatOfPoint2f corners, int flags)Finds the positions of internal corners of the chessboard.static booleanfindChessboardCornersSB​(Mat image, Size patternSize, Mat corners)static booleanfindChessboardCornersSB​(Mat image, Size patternSize, Mat corners, int flags)static booleanfindChessboardCornersSBWithMeta​(Mat image, Size patternSize, Mat corners, int flags, Mat meta)Finds the positions of internal corners of the chessboard using a sector based approach.static booleanfindCirclesGrid​(Mat image, Size patternSize, Mat centers)static booleanfindCirclesGrid​(Mat image, Size patternSize, Mat centers, int flags)static voidgenerateImageMarker​(Dictionary dictionary, int id, int sidePixels, Mat img)Generate a canonical marker imagestatic voidgenerateImageMarker​(Dictionary dictionary, int id, int sidePixels, Mat img, int borderBits)Generate a canonical marker imagestatic DictionarygetPredefinedDictionary​(int dict)Returns one of the predefined dictionaries referenced by DICT_*.
-
-
-
フィールドの詳細
-
CALIB_CB_ADAPTIVE_THRESH
public static final int CALIB_CB_ADAPTIVE_THRESH
- 関連項目:
- 定数フィールド値
-
CALIB_CB_NORMALIZE_IMAGE
public static final int CALIB_CB_NORMALIZE_IMAGE
- 関連項目:
- 定数フィールド値
-
CALIB_CB_FILTER_QUADS
public static final int CALIB_CB_FILTER_QUADS
- 関連項目:
- 定数フィールド値
-
CALIB_CB_FAST_CHECK
public static final int CALIB_CB_FAST_CHECK
- 関連項目:
- 定数フィールド値
-
CALIB_CB_EXHAUSTIVE
public static final int CALIB_CB_EXHAUSTIVE
- 関連項目:
- 定数フィールド値
-
CALIB_CB_ACCURACY
public static final int CALIB_CB_ACCURACY
- 関連項目:
- 定数フィールド値
-
CALIB_CB_LARGER
public static final int CALIB_CB_LARGER
- 関連項目:
- 定数フィールド値
-
CALIB_CB_MARKER
public static final int CALIB_CB_MARKER
- 関連項目:
- 定数フィールド値
-
CALIB_CB_PLAIN
public static final int CALIB_CB_PLAIN
- 関連項目:
- 定数フィールド値
-
CALIB_CB_SYMMETRIC_GRID
public static final int CALIB_CB_SYMMETRIC_GRID
- 関連項目:
- 定数フィールド値
-
CALIB_CB_ASYMMETRIC_GRID
public static final int CALIB_CB_ASYMMETRIC_GRID
- 関連項目:
- 定数フィールド値
-
CALIB_CB_CLUSTERING
public static final int CALIB_CB_CLUSTERING
- 関連項目:
- 定数フィールド値
-
CORNER_REFINE_NONE
public static final int CORNER_REFINE_NONE
- 関連項目:
- 定数フィールド値
-
CORNER_REFINE_SUBPIX
public static final int CORNER_REFINE_SUBPIX
- 関連項目:
- 定数フィールド値
-
CORNER_REFINE_CONTOUR
public static final int CORNER_REFINE_CONTOUR
- 関連項目:
- 定数フィールド値
-
CORNER_REFINE_APRILTAG
public static final int CORNER_REFINE_APRILTAG
- 関連項目:
- 定数フィールド値
-
DICT_4X4_50
public static final int DICT_4X4_50
- 関連項目:
- 定数フィールド値
-
DICT_4X4_100
public static final int DICT_4X4_100
- 関連項目:
- 定数フィールド値
-
DICT_4X4_250
public static final int DICT_4X4_250
- 関連項目:
- 定数フィールド値
-
DICT_4X4_1000
public static final int DICT_4X4_1000
- 関連項目:
- 定数フィールド値
-
DICT_5X5_50
public static final int DICT_5X5_50
- 関連項目:
- 定数フィールド値
-
DICT_5X5_100
public static final int DICT_5X5_100
- 関連項目:
- 定数フィールド値
-
DICT_5X5_250
public static final int DICT_5X5_250
- 関連項目:
- 定数フィールド値
-
DICT_5X5_1000
public static final int DICT_5X5_1000
- 関連項目:
- 定数フィールド値
-
DICT_6X6_50
public static final int DICT_6X6_50
- 関連項目:
- 定数フィールド値
-
DICT_6X6_100
public static final int DICT_6X6_100
- 関連項目:
- 定数フィールド値
-
DICT_6X6_250
public static final int DICT_6X6_250
- 関連項目:
- 定数フィールド値
-
DICT_6X6_1000
public static final int DICT_6X6_1000
- 関連項目:
- 定数フィールド値
-
DICT_7X7_50
public static final int DICT_7X7_50
- 関連項目:
- 定数フィールド値
-
DICT_7X7_100
public static final int DICT_7X7_100
- 関連項目:
- 定数フィールド値
-
DICT_7X7_250
public static final int DICT_7X7_250
- 関連項目:
- 定数フィールド値
-
DICT_7X7_1000
public static final int DICT_7X7_1000
- 関連項目:
- 定数フィールド値
-
DICT_ARUCO_ORIGINAL
public static final int DICT_ARUCO_ORIGINAL
- 関連項目:
- 定数フィールド値
-
DICT_APRILTAG_16h5
public static final int DICT_APRILTAG_16h5
- 関連項目:
- 定数フィールド値
-
DICT_APRILTAG_25h9
public static final int DICT_APRILTAG_25h9
- 関連項目:
- 定数フィールド値
-
DICT_APRILTAG_36h10
public static final int DICT_APRILTAG_36h10
- 関連項目:
- 定数フィールド値
-
DICT_APRILTAG_36h11
public static final int DICT_APRILTAG_36h11
- 関連項目:
- 定数フィールド値
-
DICT_ARUCO_MIP_36h12
public static final int DICT_ARUCO_MIP_36h12
- 関連項目:
- 定数フィールド値
-
MCC24
public static final int MCC24
- 関連項目:
- 定数フィールド値
-
SG140
public static final int SG140
- 関連項目:
- 定数フィールド値
-
VINYL18
public static final int VINYL18
- 関連項目:
- 定数フィールド値
-
-
メソッドの詳細
-
findChessboardCorners
public static boolean findChessboardCorners​(Mat image, Size patternSize, MatOfPoint2f corners, int flags)
Finds the positions of internal corners of the chessboard.- 引数:
image- 入力チェスボードビュー。8ビットのグレースケールまたはカラー画像でなければならない。patternSize- チェスボードの行および列ごとの内部コーナーの数 ( patternSize = cv::Size(points_per_row,points_per_column) = cv::Size(columns,rows) )。corners- 検出されたコーナーの出力配列。flags- Various operation flags that can be zero or a combination of the following values:- REF: CALIB_CB_ADAPTIVE_THRESH 固定しきい値レベル(平均画像輝度から計算される)ではなく、適応的しきい値処理を使用して画像を白黒に変換する。
- REF: CALIB_CB_NORMALIZE_IMAGE 固定しきい値処理または適応しきい値処理を適用する前に、equalizeHist で画像のガンマを正規化する。
- REF: CALIB_CB_FILTER_QUADS 追加の基準(輪郭面積、周囲長、正方形に近い形状など)を使用して、輪郭検出段階で抽出された誤った四角形を除外する。
- REF: CALIB_CB_FAST_CHECK 画像に対してチェスボードコーナーを探す高速チェックを実行し、見つからなければ呼び出しを打ち切る。これにより、チェスボードが観測されない退化条件において、呼び出しを劇的に高速化できる。
- REF: CALIB_CB_PLAIN 他のすべてのフラグは無視される。入力画像はそのまま使用される。チェッカーボードを見つけやすくするための画像処理は行われない。これにより関数の実行が高速化されるが、画像が事前に適切な方法で二値化されていない場合、チェッカーボードを認識できなくなる可能性がある。
- 戻り値:
- すべてのコーナーが検出され、一定の順序(行ごとに、各行で左から右へ)で配置された場合は true を返す。それ以外の場合、つまり関数がすべてのコーナーを検出できなかったり並べ替えられなかったりした場合は false を返す。この関数は、入力画像がチェスボードパターンを写したものかどうかを判定し、内部チェスボードコーナーの位置を特定しようとする。例えば、通常のチェスボードは 8 x 8 のマス目を持ち、内部コーナーは 7 x 7 個、すなわち黒いマス目同士が接する点となる。検出される座標は近似値であり、その位置をより正確に求めるために、この関数は #cornerSubPix を呼び出す。返された座標の精度が十分でない場合は、異なる引数で #cornerSubPix 関数を使用してもよい。チェスボードコーナーの検出と描画の使用例: :
Size patternsize(8,6); //interior number of corners Mat gray = ....; //source image vector<Point2f> corners; //this will be filled by the detected corners //CALIB_CB_FAST_CHECK saves a lot of time on images //that do not contain any chessboard corners bool patternfound = findChessboardCorners(gray, patternsize, corners, CALIB_CB_ADAPTIVE_THRESH + CALIB_CB_NORMALIZE_IMAGE + CALIB_CB_FAST_CHECK); if(patternfound) cornerSubPix(gray, corners, Size(11, 11), Size(-1, -1), TermCriteria(CV_TERMCRIT_EPS + CV_TERMCRIT_ITER, 30, 0.1)); drawChessboardCorners(img, patternsize, Mat(corners), patternfound);注意: この関数は、さまざまな環境で検出をより堅牢にするために、ボードの周囲に余白(正方形の太い境界など。広いほどよい)を必要とする。さもなければ、境界がなく背景が暗い場合、外側の黒いマス目を適切に領域分割できず、マス目のグループ化と並べ替えのアルゴリズムが失敗する。目的のチェッカーボードパターンを作成するには、generate_pattern.pyPython スクリプト (REF: tutorial_camera_calibration_pattern) を使用する。
-
findChessboardCorners
public static boolean findChessboardCorners​(Mat image, Size patternSize, MatOfPoint2f corners)
Finds the positions of internal corners of the chessboard.- 引数:
image- 入力チェスボードビュー。8ビットのグレースケールまたはカラー画像でなければならない。patternSize- チェスボードの行および列ごとの内部コーナーの数 ( patternSize = cv::Size(points_per_row,points_per_column) = cv::Size(columns,rows) )。corners- Output array of detected corners.- REF: CALIB_CB_ADAPTIVE_THRESH 固定しきい値レベル(平均画像輝度から計算される)ではなく、適応的しきい値処理を使用して画像を白黒に変換する。
- REF: CALIB_CB_NORMALIZE_IMAGE 固定しきい値処理または適応しきい値処理を適用する前に、equalizeHist で画像のガンマを正規化する。
- REF: CALIB_CB_FILTER_QUADS 追加の基準(輪郭面積、周囲長、正方形に近い形状など)を使用して、輪郭検出段階で抽出された誤った四角形を除外する。
- REF: CALIB_CB_FAST_CHECK 画像に対してチェスボードコーナーを探す高速チェックを実行し、見つからなければ呼び出しを打ち切る。これにより、チェスボードが観測されない退化条件において、呼び出しを劇的に高速化できる。
- REF: CALIB_CB_PLAIN 他のすべてのフラグは無視される。入力画像はそのまま使用される。チェッカーボードを見つけやすくするための画像処理は行われない。これにより関数の実行が高速化されるが、画像が事前に適切な方法で二値化されていない場合、チェッカーボードを認識できなくなる可能性がある。
- 戻り値:
- すべてのコーナーが検出され、一定の順序(行ごとに、各行で左から右へ)で配置された場合は true を返す。それ以外の場合、つまり関数がすべてのコーナーを検出できなかったり並べ替えられなかったりした場合は false を返す。この関数は、入力画像がチェスボードパターンを写したものかどうかを判定し、内部チェスボードコーナーの位置を特定しようとする。例えば、通常のチェスボードは 8 x 8 のマス目を持ち、内部コーナーは 7 x 7 個、すなわち黒いマス目同士が接する点となる。検出される座標は近似値であり、その位置をより正確に求めるために、この関数は #cornerSubPix を呼び出す。返された座標の精度が十分でない場合は、異なる引数で #cornerSubPix 関数を使用してもよい。チェスボードコーナーの検出と描画の使用例: :
Size patternsize(8,6); //interior number of corners Mat gray = ....; //source image vector<Point2f> corners; //this will be filled by the detected corners //CALIB_CB_FAST_CHECK saves a lot of time on images //that do not contain any chessboard corners bool patternfound = findChessboardCorners(gray, patternsize, corners, CALIB_CB_ADAPTIVE_THRESH + CALIB_CB_NORMALIZE_IMAGE + CALIB_CB_FAST_CHECK); if(patternfound) cornerSubPix(gray, corners, Size(11, 11), Size(-1, -1), TermCriteria(CV_TERMCRIT_EPS + CV_TERMCRIT_ITER, 30, 0.1)); drawChessboardCorners(img, patternsize, Mat(corners), patternfound);注意: この関数は、さまざまな環境で検出をより堅牢にするために、ボードの周囲に余白(正方形の太い境界など。広いほどよい)を必要とする。さもなければ、境界がなく背景が暗い場合、外側の黒いマス目を適切に領域分割できず、マス目のグループ化と並べ替えのアルゴリズムが失敗する。目的のチェッカーボードパターンを作成するには、generate_pattern.pyPython スクリプト (REF: tutorial_camera_calibration_pattern) を使用する。
-
checkChessboard
public static boolean checkChessboard​(Mat img, Size size)
Checks whether the image contains chessboard of the specific size or not.- 引数:
img- チェスボードを写した元画像。size- チェスボードのサイズ。- 戻り値:
- チェスボードが見つかったかどうか。
-
findChessboardCornersSBWithMeta
public static boolean findChessboardCornersSBWithMeta​(Mat image, Size patternSize, Mat corners, int flags, Mat meta)
Finds the positions of internal corners of the chessboard using a sector based approach.- 引数:
image- 入力チェスボードビュー。8ビットのグレースケールまたはカラー画像でなければならない。patternSize- チェスボードの行および列ごとの内部コーナーの数 ( patternSize = cv::Size(points_per_row,points_per_column) = cv::Size(columns,rows) )。corners- 検出されたコーナーの出力配列。flags- Various operation flags that can be zero or a combination of the following values:- REF: CALIB_CB_NORMALIZE_IMAGE 検出前に equalizeHist で画像ガンマを正規化する。
- REF: CALIB_CB_EXHAUSTIVE 検出率を向上させるために全数探索を実行する。
- REF: CALIB_CB_ACCURACY エイリアシング効果によるサブピクセル精度を向上させるために、入力画像をアップサンプリングする。
- REF: CALIB_CB_LARGER 検出されたパターンが patternSize より大きくなることを許可する(説明を参照)。
- REF: CALIB_CB_MARKER 検出されたパターンはマーカーを持たなければならない(説明を参照)。正確なカメラキャリブレーションが必要な場合に使用すべきである。
meta- Optional output array of detected corners (CV_8UC1 and size = cv::Size(columns,rows)). Each entry stands for one corner of the pattern and can have one of the following values:- 0 = メタデータが付与されていない
- 1 = 黒いセルの左上コーナー
- 2 = 白いセルの左上コーナー
- 3 = 白いマーカードットを持つ黒いセルの左上コーナー
- 4 = 黒いマーカードットを持つ白いセルの左上コーナー(マーカーがある場合はパターンの原点、ない場合は最初のコーナー)
generate_pattern.pyPython script (REF: tutorial_camera_calibration_pattern) to create the corresponding checkerboard pattern: \image html pics/checkerboard_radon.png width=60%- 戻り値:
- 自動生成
-
findChessboardCornersSB
public static boolean findChessboardCornersSB​(Mat image, Size patternSize, Mat corners, int flags)
-
findChessboardCornersSB
public static boolean findChessboardCornersSB​(Mat image, Size patternSize, Mat corners)
-
estimateChessboardSharpness
public static Scalar estimateChessboardSharpness​(Mat image, Size patternSize, Mat corners, float rise_distance, boolean vertical, Mat sharpness)
Estimates the sharpness of a detected chessboard. Image sharpness, as well as brightness, are a critical parameter for accuracte camera calibration. For accessing these parameters for filtering out problematic calibraiton images, this method calculates edge profiles by traveling from black to white chessboard cell centers. Based on this, the number of pixels is calculated required to transit from black to white. This width of the transition area is a good indication of how sharp the chessboard is imaged and should be below ~3.0 pixels.- 引数:
image- チェスボードコーナーを見つけるために使用されるグレー画像patternSize- 見つかったチェスボードパターンのサイズcorners- #findChessboardCornersSB で見つかったコーナーrise_distance- 立ち上がり距離。0.8 は最終信号強度の10% ... 90% を意味するvertical- デフォルトでは水平線に対するエッジ応答が計算されるsharpness- 計算されたエッジ応答の鮮鋭度値を含む省略可能な出力配列(説明を参照)。省略可能な sharpness 配列は型 CV_32FC1 で、計算された各プロファイルについて以下の5つのエントリを持つ1行を含む: 0 = 画像内の基となるエッジのx座標 1 = 画像内の基となるエッジのy座標 2 = 遷移領域の幅(鮮鋭度) 3 = 黒セルの信号強度(最小輝度) 4 = 白セルの信号強度(最大輝度)- 戻り値:
- Scalar(平均鮮鋭度, 平均最小輝度, 平均最大輝度,0)
-
estimateChessboardSharpness
public static Scalar estimateChessboardSharpness​(Mat image, Size patternSize, Mat corners, float rise_distance, boolean vertical)
Estimates the sharpness of a detected chessboard. Image sharpness, as well as brightness, are a critical parameter for accuracte camera calibration. For accessing these parameters for filtering out problematic calibraiton images, this method calculates edge profiles by traveling from black to white chessboard cell centers. Based on this, the number of pixels is calculated required to transit from black to white. This width of the transition area is a good indication of how sharp the chessboard is imaged and should be below ~3.0 pixels.- 引数:
image- チェスボードコーナーを見つけるために使用されるグレー画像patternSize- 見つかったチェスボードパターンのサイズcorners- #findChessboardCornersSB で見つかったコーナーrise_distance- 立ち上がり距離。0.8 は最終信号強度の10% ... 90% を意味するvertical- デフォルトでは水平線に対するエッジ応答が計算される。省略可能な sharpness 配列は型 CV_32FC1 で、計算された各プロファイルについて以下の5つのエントリを持つ1行を含む: 0 = 画像内の基となるエッジのx座標 1 = 画像内の基となるエッジのy座標 2 = 遷移領域の幅(鮮鋭度) 3 = 黒セルの信号強度(最小輝度) 4 = 白セルの信号強度(最大輝度)- 戻り値:
- Scalar(平均鮮鋭度, 平均最小輝度, 平均最大輝度,0)
-
estimateChessboardSharpness
public static Scalar estimateChessboardSharpness​(Mat image, Size patternSize, Mat corners, float rise_distance)
Estimates the sharpness of a detected chessboard. Image sharpness, as well as brightness, are a critical parameter for accuracte camera calibration. For accessing these parameters for filtering out problematic calibraiton images, this method calculates edge profiles by traveling from black to white chessboard cell centers. Based on this, the number of pixels is calculated required to transit from black to white. This width of the transition area is a good indication of how sharp the chessboard is imaged and should be below ~3.0 pixels.- 引数:
image- チェスボードコーナーを見つけるために使用されるグレー画像patternSize- 見つかったチェスボードパターンのサイズcorners- #findChessboardCornersSB で見つかったコーナーrise_distance- 立ち上がり距離。0.8 は最終信号強度の10% ... 90% を意味する。省略可能な sharpness 配列は型 CV_32FC1 で、計算された各プロファイルについて以下の5つのエントリを持つ1行を含む: 0 = 画像内の基となるエッジのx座標 1 = 画像内の基となるエッジのy座標 2 = 遷移領域の幅(鮮鋭度) 3 = 黒セルの信号強度(最小輝度) 4 = 白セルの信号強度(最大輝度)- 戻り値:
- Scalar(平均鮮鋭度, 平均最小輝度, 平均最大輝度,0)
-
estimateChessboardSharpness
public static Scalar estimateChessboardSharpness​(Mat image, Size patternSize, Mat corners)
Estimates the sharpness of a detected chessboard. Image sharpness, as well as brightness, are a critical parameter for accuracte camera calibration. For accessing these parameters for filtering out problematic calibraiton images, this method calculates edge profiles by traveling from black to white chessboard cell centers. Based on this, the number of pixels is calculated required to transit from black to white. This width of the transition area is a good indication of how sharp the chessboard is imaged and should be below ~3.0 pixels.- 引数:
image- チェスボードコーナーを見つけるために使用されるグレー画像patternSize- 見つかったチェスボードパターンのサイズcorners- #findChessboardCornersSB で見つかったコーナー。省略可能な sharpness 配列は型 CV_32FC1 で、計算された各プロファイルについて以下の5つのエントリを持つ1行を含む: 0 = 画像内の基となるエッジのx座標 1 = 画像内の基となるエッジのy座標 2 = 遷移領域の幅(鮮鋭度) 3 = 黒セルの信号強度(最小輝度) 4 = 白セルの信号強度(最大輝度)- 戻り値:
- Scalar(平均鮮鋭度, 平均最小輝度, 平均最大輝度,0)
-
find4QuadCornerSubpix
public static boolean find4QuadCornerSubpix​(Mat img, Mat corners, Size region_size)
-
drawChessboardCorners
public static void drawChessboardCorners​(Mat image, Size patternSize, MatOfPoint2f corners, boolean patternWasFound)
Renders the detected chessboard corners.- 引数:
image- 出力先画像。8ビットのカラー画像でなければならない。patternSize- チェスボードの行と列ごとの内側コーナーの数(patternSize = cv::Size(points_per_row,points_per_column))。corners- 検出されたコーナーの配列。#findChessboardCorners の出力。patternWasFound- ボード全体が見つかったかどうかを示す引数。#findChessboardCorners の戻り値をここに渡すべきである。この関数は、ボードが見つからなかった場合は個々のチェスボードコーナーを赤い円として描画し、ボードが見つかった場合は線で接続された色付きのコーナーとして描画する。
-
findCirclesGrid
public static boolean findCirclesGrid​(Mat image, Size patternSize, Mat centers, int flags)
-
findCirclesGrid
public static boolean findCirclesGrid​(Mat image, Size patternSize, Mat centers)
-
drawDetectedMarkers
public static void drawDetectedMarkers​(Mat image, java.util.List<Mat> corners, Mat ids, Scalar borderColor)
Draw detected markers in image- 引数:
image- 入出力画像。1チャンネルまたは3チャンネルでなければならない。チャンネル数は変更されない。corners- 入力画像上のマーカーコーナーの位置 (例: std::vector<std::vector<cv::Point2f> > )。検出されたN個のマーカーに対して、この配列の次元はNx4でなければならない。コーナーの順序は時計回りであること。ids- markersCorners 内のマーカーの識別子のベクトル。省略可能。指定しない場合、IDは描画されない。borderColor- マーカー境界の色。その他の色 (テキストの色と最初のコーナーの色) は、視認性を高めるためこの色を基準に算出される。検出されたマーカーコーナーの配列と対応するIDを与えると、この関数は画像にマーカーを描画する。マーカーの境界が描画され、指定されていればマーカー識別子も描画される。デバッグ用途に有用である。
-
drawDetectedMarkers
public static void drawDetectedMarkers​(Mat image, java.util.List<Mat> corners, Mat ids)
Draw detected markers in image- 引数:
image- 入出力画像。1チャンネルまたは3チャンネルでなければならない。チャンネル数は変更されない。corners- 入力画像上のマーカーコーナーの位置 (例: std::vector<std::vector<cv::Point2f> > )。検出されたN個のマーカーに対して、この配列の次元はNx4でなければならない。コーナーの順序は時計回りであること。ids- markersCorners 内のマーカーの識別子のベクトル。省略可能。指定しない場合、IDは描画されない。視認性を高めるためこの色を基準に算出される。検出されたマーカーコーナーの配列と対応するIDを与えると、この関数は画像にマーカーを描画する。マーカーの境界が描画され、指定されていればマーカー識別子も描画される。デバッグ用途に有用である。
-
drawDetectedMarkers
public static void drawDetectedMarkers​(Mat image, java.util.List<Mat> corners)
Draw detected markers in image- 引数:
image- 入出力画像。1チャンネルまたは3チャンネルでなければならない。チャンネル数は変更されない。corners- 入力画像上のマーカーコーナーの位置 (例: std::vector<std::vector<cv::Point2f> > )。検出されたN個のマーカーに対して、この配列の次元はNx4でなければならない。コーナーの順序は時計回りであること。省略可能。指定しない場合、IDは描画されない。視認性を高めるためこの色を基準に算出される。検出されたマーカーコーナーの配列と対応するIDを与えると、この関数は画像にマーカーを描画する。マーカーの境界が描画され、指定されていればマーカー識別子も描画される。デバッグ用途に有用である。
-
generateImageMarker
public static void generateImageMarker​(Dictionary dictionary, int id, int sidePixels, Mat img, int borderBits)
Generate a canonical marker image- 引数:
dictionary- マーカーの種類を示すマーカー辞書id- 返されるマーカーの識別子。指定された辞書において有効なIDでなければならない。sidePixels- 画像のサイズ (ピクセル単位)img- マーカーを描画した出力画像borderBits- マーカー境界の幅。この関数はマーカー画像を正規形 (すなわち印刷可能な状態) で返す。
-
generateImageMarker
public static void generateImageMarker​(Dictionary dictionary, int id, int sidePixels, Mat img)
Generate a canonical marker image- 引数:
dictionary- マーカーの種類を示すマーカー辞書id- 返されるマーカーの識別子。指定された辞書において有効なIDでなければならない。sidePixels- 画像のサイズ (ピクセル単位)img- マーカーを描画した出力画像。この関数はマーカー画像を正規形 (すなわち印刷可能な状態) で返す。
-
drawDetectedCornersCharuco
public static void drawDetectedCornersCharuco​(Mat image, Mat charucoCorners, Mat charucoIds, Scalar cornerColor)
Draws a set of Charuco corners- 引数:
image- 入出力画像。1チャンネルまたは3チャンネルでなければならない。チャンネル数は変更されない。charucoCorners- 検出されたcharucoコーナーのベクトルcharucoIds- charucoCorners内の各コーナーに対応する識別子のリストcornerColor- 各コーナーを囲む正方形の色。この関数は検出された Charuco コーナーの集合を描画する。識別子のベクトルが指定された場合は、各コーナーの id も描画する。
-
drawDetectedCornersCharuco
public static void drawDetectedCornersCharuco​(Mat image, Mat charucoCorners, Mat charucoIds)
Draws a set of Charuco corners- 引数:
image- 入出力画像。1チャンネルまたは3チャンネルでなければならない。チャンネル数は変更されない。charucoCorners- 検出されたcharucoコーナーのベクトルcharucoIds- charucoCorners の各コーナーに対応する識別子のリスト。この関数は検出された Charuco コーナーの集合を描画する。識別子のベクトルが指定された場合は、各コーナーの id も描画する。
-
drawDetectedCornersCharuco
public static void drawDetectedCornersCharuco​(Mat image, Mat charucoCorners)
Draws a set of Charuco corners- 引数:
image- 入出力画像。1チャンネルまたは3チャンネルでなければならない。チャンネル数は変更されない。charucoCorners- 検出された charuco コーナーのベクトル。この関数は検出された Charuco コーナーの集合を描画する。識別子のベクトルが指定された場合は、各コーナーの id も描画する。
-
drawDetectedDiamonds
public static void drawDetectedDiamonds​(Mat image, java.util.List<Mat> diamondCorners, Mat diamondIds, Scalar borderColor)
Draw a set of detected ChArUco Diamond markers- 引数:
image- 入出力画像。1チャンネルまたは3チャンネルでなければならない。チャンネル数は変更されない。diamondCorners- detectCharucoDiamond() が返すのと同じ形式によるダイヤモンドコーナーの位置 (例: std::vector<std::vector<cv::Point2f> > )。N 個のマーカーが検出された場合、この配列の次元は Nx4 とすべきである。コーナーの順序は時計回りとすべきである。diamondIds- diamondCorners 内のダイヤモンドに対する識別子のベクトル。detectCharucoDiamond() が返すのと同じ形式 (例: std::vector<Vec4i>)。省略可能で、指定されない場合は id は描画されない。borderColor- マーカーの境界の色。残りの色 (テキストの色と最初のコーナーの色) はこれをもとに算出される。検出されたダイヤモンドの配列を与えると、この関数はそれらを画像に描画する。マーカーの境界が描画され、指定されていればマーカーの識別子も描画される。デバッグ目的に便利である。
-
drawDetectedDiamonds
public static void drawDetectedDiamonds​(Mat image, java.util.List<Mat> diamondCorners, Mat diamondIds)
Draw a set of detected ChArUco Diamond markers- 引数:
image- 入出力画像。1チャンネルまたは3チャンネルでなければならない。チャンネル数は変更されない。diamondCorners- detectCharucoDiamond() が返すのと同じ形式によるダイヤモンドコーナーの位置 (例: std::vector<std::vector<cv::Point2f> > )。N 個のマーカーが検出された場合、この配列の次元は Nx4 とすべきである。コーナーの順序は時計回りとすべきである。diamondIds- diamondCorners 内のダイヤモンドに対する識別子のベクトル。detectCharucoDiamond() が返すのと同じ形式 (例: std::vector<Vec4i>)。省略可能で、指定されない場合は id は描画されない。これをもとに算出される。検出されたダイヤモンドの配列を与えると、この関数はそれらを画像に描画する。マーカーの境界が描画され、指定されていればマーカーの識別子も描画される。デバッグ目的に便利である。
-
drawDetectedDiamonds
public static void drawDetectedDiamonds​(Mat image, java.util.List<Mat> diamondCorners)
Draw a set of detected ChArUco Diamond markers- 引数:
image- 入出力画像。1チャンネルまたは3チャンネルでなければならない。チャンネル数は変更されない。diamondCorners- detectCharucoDiamond() が返すのと同じ形式によるダイヤモンドコーナーの位置 (例: std::vector<std::vector<cv::Point2f> > )。N 個のマーカーが検出された場合、この配列の次元は Nx4 とすべきである。コーナーの順序は時計回りとすべきである。detectCharucoDiamond() が返す (例: std::vector<Vec4i>)。省略可能で、指定されない場合は id は描画されない。これをもとに算出される。検出されたダイヤモンドの配列を与えると、この関数はそれらを画像に描画する。マーカーの境界が描画され、指定されていればマーカーの識別子も描画される。デバッグ目的に便利である。
-
getPredefinedDictionary
public static Dictionary getPredefinedDictionary​(int dict)
Returns one of the predefined dictionaries referenced by DICT_*.- 引数:
dict- 自動生成- 戻り値:
- 自動生成
-
extendDictionary
public static Dictionary extendDictionary​(int nMarkers, int markerSize, Dictionary baseDictionary, int randomSeed)
Extend base dictionary by new nMarkers- 引数:
nMarkers- 辞書に含まれるマーカーの数markerSize- 各マーカーの1次元あたりのビット数baseDictionary- この辞書のマーカーを先頭に含める (省略可能)randomSeed- theRNG() に渡すユーザー指定のシード。この関数は nMarkers 個のマーカーから構成される新しい辞書を作成し、各マーカーは markerSize x markerSize ビットで構成される。baseDictionary が指定された場合、そのマーカーはそのまま含まれ、残りはそれらをもとに生成される。baseDictionary のサイズが nMarkers より大きい場合は、baseDictionary の先頭から nMarkers 個のみが採用され、新しいマーカーは追加されない。- 戻り値:
- 自動生成
-
extendDictionary
public static Dictionary extendDictionary​(int nMarkers, int markerSize, Dictionary baseDictionary)
Extend base dictionary by new nMarkers- 引数:
nMarkers- 辞書に含まれるマーカーの数markerSize- 各マーカーの1次元あたりのビット数baseDictionary- この辞書のマーカーを先頭に含める (省略可能)。この関数は nMarkers 個のマーカーから構成される新しい辞書を作成し、各マーカーは markerSize x markerSize ビットで構成される。baseDictionary が指定された場合、そのマーカーはそのまま含まれ、残りはそれらをもとに生成される。baseDictionary のサイズが nMarkers より大きい場合は、baseDictionary の先頭から nMarkers 個のみが採用され、新しいマーカーは追加されない。- 戻り値:
- 自動生成
-
extendDictionary
public static Dictionary extendDictionary​(int nMarkers, int markerSize)
Extend base dictionary by new nMarkers- 引数:
nMarkers- 辞書に含まれるマーカーの数markerSize- 各マーカーの1次元あたりのビット数。この関数は nMarkers 個のマーカーから構成される新しい辞書を作成し、各マーカーは markerSize x markerSize ビットで構成される。baseDictionary が指定された場合、そのマーカーはそのまま含まれ、残りはそれらをもとに生成される。baseDictionary のサイズが nMarkers より大きい場合は、baseDictionary の先頭から nMarkers 個のみが採用され、新しいマーカーは追加されない。- 戻り値:
- 自動生成
-
-