python-opencv中的cv2.inRange函數


本次目標是將一副圖像從rgb顏色空間轉換到hsv顏色空間,顏色去除白色背景部分

具體就調用了cv2的兩個函數,一個是rgb轉hsv的函數

具體用法

hsv = cv2.cvtColor(rgb_image, cv2.COLOR_BGR2HSV)
然后利用cv2.inRange函數設閾值,去除背景部分
mask = cv2.inRange(hsv, lower_red, upper_red) #lower20===>0,upper200==>0,
函數很簡單,參數有三個
第一個參數:hsv指的是原圖

第二個參數:lower_red指的是圖像中低於這個lower_red的值,圖像值變為0

第三個參數:upper_red指的是圖像中高於這個upper_red的值,圖像值變為0

而在lower_red~upper_red之間的值變成255

lower_red = np.array([20, 20, 20])
upper_red = np.array([200, 200, 200])
mask = cv2.inRange(hsv, lower_red, upper_red) #lower20===>0,upper200==>0,lower~upper==>255
就是將低於lower_red和高於upper_red的部分分別變成0,lower_red~upper_red之間的值變成255
具體用法如下

hsv = cv2.cvtColor(rgb_image, cv2.COLOR_BGR2HSV)
lower_red = np.array([20, 20, 20])
upper_red = np.array([200, 200, 200])
# mask -> 1 channel
mask = cv2.inRange(hsv, lower_red, upper_red) #lower20===>0,upper200==>0

轉自:
原文鏈接:https://blog.csdn.net/hjxu2016/article/details/77834599


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM