2
HSV
イメージのヒストグラムを生成するためにOpenCVのOpenCVの関数calcHist()
を使用していますが、関数が〜0%または〜100%のピクセルを無視できるようにします。明度(それぞれ白黒)または〜0%彩度(灰色)。何か案は?前もって感謝します。色相ヒストグラムを生成するときにピクセルを無視するOpenCV-
HSV
イメージのヒストグラムを生成するためにOpenCVのOpenCVの関数calcHist()
を使用していますが、関数が〜0%または〜100%のピクセルを無視できるようにします。明度(それぞれ白黒)または〜0%彩度(灰色)。何か案は?前もって感謝します。色相ヒストグラムを生成するときにピクセルを無視するOpenCV-
calcHist
ファンクションは、mask
パラメータを受け入れます。言及したこのプロパティでマスクを作成し、それを関数に渡すことができます。私はあなたが一度ピクセルを分析するものを作成することをお勧め...しかし、それを行うための簡単な方法は、次のようになります。
h,s,v = cv2.split(img)
mask = (v == 0) + (v == 100) + (s == 0)
mask = numpy.logical_not(mask)
次にあなたが機能であなたのマスク行列を使用することができます。偽の値を持つピクセルは無視されます。私はこれをC++で使っていますので、偽の値が動作するのか、C++バージョンのような整数が必要なのか分かりません。最悪の場合は別の余分な行を追加してください。mask *= 1
となります。
これが役に立ちます。
私はOpenCVをPythonで使用していますので、私はC++構文に慣れていません。 2行目のコードでは、 "+"は論理的なものか? – user3396592
@ user3396592これは実際にはPythonコードです...それは論理的または – api55