プロジェクトにopencv#を使用していて、2つの画像をマージしようとしています(1つは3チャンネルの画像で、もう1つは単一チャンネルの画像です)。methos Cv.ScaleAddを使用してみましたが、異なるチャネルの2つの画像がマージされません。これについては助けが必要です。前もって感謝します。
質問する
496 次
1 に答える
0
結果をグレースケールまたはカラーのどちらにしますか? 2 つの画像を追加する最も簡単な方法は、それぞれの重み付けを宣言することです。1 つは 0.4、もう 1 つは 0.6 とします。次に、ピクセルごとに一方の画像を .4 倍し、もう一方の画像を .6 倍し、それらを加算して新しいピクセル値を取得します。最終結果をグレースケールにしたい場合は、3 チャンネルの画像をグレースケールに変換することから始めます。カラーにしたい場合は、グレースケールをカラーに変換することから始めます。グレースケールをカラーに変換しても、実際には色が付けられず、3 つのチャネルでグレーが表現されるだけです。これを自分でコーディングするか、関数呼び出しが疑わしい
cv::cvtColor(input,output,CV_GRAY2BGR);
or
cv::cvtColor(input,output,CV_BGR2GRAY);
に続く
cv::scaleAdd
トリックを行うでしょう。
于 2012-07-30T15:14:20.280 に答える