4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

1: 必要なライブラリをインポートする

import cv2
import numpy as np

2: 画像を読み込む

# 画像を読み込む
image = cv2.imread('image.jpg')

3: 色空間を変換

HSV色空間に変換します。HSV色空間は、色調(Hue)、彩度(Saturation)、明度(Value)を使って色を表現し、特定の色範囲を選択しやすくなります。

# 色空間をHSVに変換
hsv = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)

4: 色の範囲を定義

特定の色範囲をHSV値で定義します。ここでは例として、青色の範囲を定義しますが、必要に応じて調整してください。

# 青色の範囲を定義(HSV空間)
lower_blue = np.array([110,50,50])
upper_blue = np.array([130,255,255])

5: 色範囲内のマスクを作成

定義した色範囲に基づいてマスクを作成します。マスクは、選択した色範囲のピクセルが白、それ以外が黒として表示される2値画像です。

# 青色の部分のみを取り出すマスクを作成
mask = cv2.inRange(hsv, lower_blue, upper_blue)

6: マスクと元画像の論理積

マスクを元の画像に適用して、特定の色が存在する領域のみを抽出します。

# マスクを元画像と組み合わせる
res = cv2.bitwise_and(image, image, mask=mask)

7: 結果を表示

# 元画像、マスク、結果を表示
cv2.imshow('Original', image)
cv2.imshow('Mask', mask)
cv2.imshow('Detected Color', res)
cv2.waitKey(0)
cv2.destroyAllWindows()
4
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?