ホームページ  >  記事  >  バックエンド開発  >  Python OpenCV を使用して画像内の緑色のオブジェクトを検出するためのしきい値を定義するにはどうすればよいですか?

Python OpenCV を使用して画像内の緑色のオブジェクトを検出するためのしきい値を定義するにはどうすればよいですか?

DDD
DDDオリジナル
2024-11-02 00:57:31326ブラウズ

How do you Define a Threshold Value for Detecting Green Objects in Images using Python OpenCV?

Python OpenCV を使用して画像内の緑色のオブジェクトを検出するためのしきい値を定義する

画像内の緑色のオブジェクトを検出するには、しきい値を次の値にする必要があります。緑色のピクセルと非緑色のピクセルを区別するために定義されています。 OpenCV を使用して Python でこのタスクに取り組む方法を次に示します。

HSV 色空間としきい値

1 つの方法には、画像を HSV 色空間に変換することが含まれます。 HSV では、色相コンポーネントが色を表し、緑は 36 ~ 70 度の範囲内に収まります。

<code class="python">hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
mask = cv2.inRange(hsv, (36, 25, 25), (70, 255, 255))</code>

このコードは、指定された HSV 範囲 (緑) 内のピクセルが true としてマークされるマスクを作成します。 .

BGR カラー スペースとしきい値

もう 1 つのアプローチは、BGR カラー スペースで直接作業することです。ここで、緑の値の範囲を定義できます:

<code class="python">mask = cv2.inRange(img, (0, 100, 0), (100, 255, 100))</code>

このマスクは、緑のチャネル (G) が 100 ~ 255 であり、他のチャネル (B および R) がそれ以下であるピクセルに真の値を割り当てます。 100.

緑色のオブジェクトの抽出と表示

マスクを使用すると、画像内の緑色のオブジェクトのみを抽出できます:

<code class="python">green = cv2.bitwise_and(img, img, mask=mask)</code>

この操作では、緑色のピクセルを元の色のまま保持しながら、緑色以外のピクセルをすべて黒に設定します。

適切なしきい値を定義することで、画像内の緑色のオブジェクトを効果的に検出して分離でき、さらなる分析と処理タスクが容易になります。 .

以上がPython OpenCV を使用して画像内の緑色のオブジェクトを検出するためのしきい値を定義するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。