OpenCV-画像処理 - 色空間変換(追尾対象)

  • 色空間変換

  一般的な変換方法:BGR < - > RGBBGR < - > グレー BGR < - > HSV

  関数:cv2.cvtColor(input_image フラグ)前記フラグは変換タイプです。

  コード:

1つの インポートCV2
 2  インポートAS NP numpyの
 。3  
。4 IMG = cv2.imread(' ../image/min.jpg ' 。5  
。6  BGRは、RGBマトリックスに変換
7 IMG = cv2.cvtColor(IMG、cv2.COLOR_BGR2RGB)
 。8  
。9  BGR GRAYは、マトリックスに変換
10 IMG = cv2.cvtColor(IMG、cv2.COLOR_BGR2GRAY)
 。11  
12である BGRは、HSV行列に変換
13は、 IMG = cv2.cvtColor(IMG、cv2.COLOR_BGR2HSV)
コードの表示

  注:OpenCVのHSVの形式、H (色/ 色度)の範囲にある[0 、 179] 、 Sの範囲(飽和)、[0 、 255] 、 V (明度)の範囲[0 、 255] 。 しかし、このソフトウェアは、異なる値が異なる場合があります使用しています。一般的な範囲:360°、S 0〜100%のH 0は、Vは0〜255です。

 

  • 単純なオブジェクトの追跡

  HSVモードで画像を使用して、特定の色のオブジェクトの抽出(HSV色空間は、BGRの色空間よりも容易に特定の色を表します。)

  

1つの インポートNP AS numpyの
 2  インポートCV2
 3。 
4。  キャプチャカメラ
5。 CAP = cv2.VideoCapture(0)
 6。 
7。 一方、(1。 。8  
。9      #は、各フレームを取得
10      RET、フレーム= cap.readを()
 。11  
12は、     #1 変換HSV空間に
13である      HSV = cv2.cvtColor(フレーム、cv2.COLOR_BGR2HSV)
 14  
15      組しきい値ブルー
16      lower_blue np.array =([110、50、50 ])
 。17      upper_blue np.array =([130、 255、255 ])
 18 
19      閾値による建設マスク(255個のピクセルに設定された閾値以内、それ以外の場合は0)
20は、      マスク= cv2.inRange(HSV、lower_blue、upper_blue)
 21である 
22れる      RES = cv2.bitwise_and(フレーム、フレーム、マスク= マスク)
 23であります 
24      cv2.imshow(' フレーム' 、フレーム)
 25      cv2.imshow(' マスク' 、マスク)
 26が      cv2.imshow(' RES ' 、RES)
 27      K = cv2.waitKey(5)&0xFFで
 28      IFのK == 27 29          BREAK 
30  
31 cv2.destroyAllWindows()

 

おすすめ

転載: www.cnblogs.com/bingma/p/11203066.html