在這篇OpenCV Python文章中,我想展示OpenCV中的基本顏色檢測示例。 我們用顏色空間或顏色模型來表示計(jì)算機(jī)上的顏色,該模型基本上將顏色范圍描述為數(shù)字元組。除了討論每種顏色之外,我們還將討論我們使用的最常見的顏色空間。即RGB(紅色,綠色,藍(lán)色)和HSV(色調(diào),飽和度,值)。 RGB基本上將顏色描述為三個(gè)組成部分的元組。每個(gè)分量可以取0到255之間的值,其中元組(0,0,0)表示黑色,而(255,255,255)表示白色。例如,如果要在屏幕上顯示純藍(lán)色像素,則R值將為0,G值將為0,B值將為255。 下面是一些RGB顏色的例子:
顏色 | RGB 值 |
---|---|
紅色 | 255, 0, 0 |
橙色 | 255, 128, 0 |
粉色 | 255, 153, 255 |
下面是OpenCV Python顏色檢測示例的完整代碼
import cv2 import numpy as np img = cv2.imread('www.linuxmi.com.png') hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV) #Red color rangle 169, 100, 100 , 189, 255, 255 lower_range = np.array([110,50,50]) upper_range = np.array([255,255,0]) mask = cv2.inRange(hsv, lower_range, upper_range) cv2.imshow('www.linuxmi.ccom - image', img) cv2.imshow('www.linuxmi.ccom - mask', mask) cv2.waitKey(0) cv2.destroyAllWindows()首先,你需要在你的工作目錄中有一個(gè)圖像,我正在使用這個(gè)圖像,你可以從下面得到這個(gè)圖像。
首先我們需要加載圖像,然后我們將圖像轉(zhuǎn)換為HSV顏色。 img = cv2.imread('www.linuxmi.com.png') hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV) 之后,您需要確定顏色的上限和下限,可以為此建議使用imutils。在上圖中,我們將檢測三種藍(lán)色。 lower_range = np.array([110,50,50])
upper_range = np.array([255,255,0]) 之后,我們需要?jiǎng)?chuàng)建圖像的蒙版。 mask = cv2.inRange(hsv, lower_range, upper_range) 最后我們需要展示圖像和蒙版。 cv2.imshow('www.linuxmi.ccom - image', img)
cv2.imshow('www.linuxmi.ccom - mask', mask) 現(xiàn)在運(yùn)行完整的代碼。
審核編輯:湯梓紅
-
計(jì)算機(jī)
+關(guān)注
關(guān)注
19文章
7488瀏覽量
87848 -
RGB
+關(guān)注
關(guān)注
4文章
798瀏覽量
58461 -
OpenCV
+關(guān)注
關(guān)注
31文章
634瀏覽量
41337 -
python
+關(guān)注
關(guān)注
56文章
4792瀏覽量
84626
原文標(biāo)題:Python OpenCV教程:特定顏色的檢測
文章出處:【微信號:vision263com,微信公眾號:新機(jī)器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論