OpenCV 4.5.3(日本語機械翻訳)
列挙型 | 関数

列挙型

enum { cv::NORMAL_CLONE = 1 , cv::MIXED_CLONE = 2 , cv::MONOCHROME_TRANSFER = 3 }
seamlessCloneアルゴリズムのフラグ[【詳解】(英語]

関数

CV_EXPORTS_W void cv::seamlessClone (InputArray src, InputArray dst, InputArray mask, Point p, OutputArray blend, int flags)
画像編集作業には,全体的な変更(色や濃度の補正,フィルタ,変形)と,選択範囲に関わる局所的な変更があります.ここでは、手動で選択した領域(ROI)に限定した局所的な変更を、シームレスかつ容易に実現することに関心があります。変更の範囲は,わずかな歪みから,新しいコンテンツへの完全な置き換えまで多岐にわたる。[PM03]では.[【詳解】(英語]
CV_EXPORTS_W void cv::colorChange (InputArray src, InputArray mask, OutputArray dst, float red_mul=1.0f, float green_mul=1.0f, float blue_mul=1.0f)
元のカラーイメージがあれば、そのイメージの2つの異なる色のバージョンをシームレスに混合することができます。[【詳解】(英語]
CV_EXPORTS_W void cv::illuminationChange (InputArray src, InputArray mask, OutputArray dst, float alpha=0.2f, float beta=0.4f)
選択範囲内のグラデーションフィールドに適切な非線形変換を施し,それをポアソンソルバーで積分し直すことで,画像の見かけ上の照明を局所的に変更します.[【詳解】(英語]
CV_EXPORTS_W void cv::textureFlattening (InputArray src, InputArray mask, OutputArray dst, float low_threshold=30, float high_threshold=45, int kernel_size=3)
ポアソンソルバーで積分する前に、エッジ位置のグラデーションのみを保持することで、選択された領域のテクスチャを洗い流し、コンテンツを平面的にします。ここではCanny Edge Detectorを使用しています。[【詳解】(英語]

詳解

列挙型詳解

anonymous enum

anonymous enum

seamlessCloneアルゴリズムのフラグ

列挙値
ノーマルクローン(NORMAL_CLONE

複雑なアウトラインを持つオブジェクトを新しい背景に挿入する際に、このメソッドの力が十分に発揮される

MIXED_CLONE

古典的な方法であるカラーベースの選択とアルファマスキングは、時間がかかり、しばしば望ましくないハローが残ることがあります。シームレスなクローニングでは、元の画像と平均化しても効果はありません。緩い選択をベースにした混合シームレスクローニングが効果的です。

モノクローム・トランスファー

モノクロ転写は、ある物体のある部分を別の部分に簡単に置き換えることができる機能です。

関数詳解

colorChange()

CV_EXPORTS_W void cv::colorChange ( InputArray src,
InputArray mask,
OutputArray dst,
float red_mul = 1.0f,
float green_mul = 1.0f,
float blue_mul = 1.0f
)

元のカラーイメージがあれば、そのイメージの2つの異なる色のバージョンをシームレスに混合することができます。

引数
src 入力 8ビット3チャンネル画像.
mask 8ビットの1チャンネルまたは3チャンネルの画像を入力します。
dst src と同じサイズ,同じタイプの画像を出力します.
red_mul Rチャンネルの乗算器.
green_mul Gチャンネルの乗算器
blue_mul Bチャンネルの乗算係数

乗算係数は 0.5 から 2.5 の間です.

illuminationChange()

CV_EXPORTS_W void cv::illuminationChange ( InputArray src,
InputArray mask,
OutputArray dst,
float alpha = 0.2f,
float beta = 0.4f
)

選択範囲内のグラデーションフィールドに適切な非線形変換を施し,それをポアソンソルバーで積分し直すことで,画像の見かけ上の照明を局所的に変更します.

引数
src 入力 8ビット3チャンネル画像.
mask 8ビットの1チャンネルまたは3チャンネルの画像を入力します。
dst src と同じサイズとタイプの画像を出力します。
alpha 値の範囲は0〜2です。
beta 値の範囲は0〜2です。

これは,露出不足の前景オブジェクトを強調したり,鏡面反射を抑えたりするのに便利です.

seamlessClone()

CV_EXPORTS_W void cv::seamlessClone ( InputArray src,
InputArray dst,
InputArray mask,
Point p,
OutputArray blend,
int flags
)

画像編集作業には,全体的な変更(色や濃度の補正,フィルタ,変形)と,選択範囲に関わる局所的な変更があります.ここでは、手動で選択した領域(ROI)に限定した局所的な変更を、シームレスかつ容易に実現することに関心があります。変更の範囲は,わずかな歪みから,新しいコンテンツへの完全な置き換えまで多岐にわたる。[PM03]では.

引数
src 入力 8ビット3チャンネル画像.
dst 入力 8ビット3チャンネル画像.
mask 8ビットの1チャンネルまたは3チャンネルの画像を入力します。
p dst画像内のオブジェクトが配置されている点。
blend dst画像と同じサイズとタイプの出力画像。
flags となりうるクローニング方法cv::NORMAL_CLONE,cv::MIXED_CLONEまたはcv::MONOCHROME_TRANSFER

textureFlattening()

CV_EXPORTS_W void cv::textureFlattening ( InputArray src,
InputArray mask,
OutputArray dst,
float low_threshold = 30,
float high_threshold = 45,
int kernel_size = 3
)

ポアソンソルバーで積分する前に、エッジ位置のグラデーションのみを保持することで、選択された領域のテクスチャを洗い流し、コンテンツを平面的にします。ここではCanny Edge Detectorを使用しています。

引数
src 入力 8ビット3チャンネル画像.
mask 8ビットの1チャンネルまたは3チャンネルの画像を入力します。
dst src と同じサイズとタイプの画像を出力します。
low_threshold 範囲は0から100まで。
high_threshold 値>100。
kernel_size 使用されるSobelカーネルのサイズ。
覚え書き
このアルゴリズムは、ソース画像の色がデスティネーションの色に近いことを前提としています。この仮定は、色が一致しない場合、ソース画像の色がデスティネーション画像の色に染まることを意味します。