国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

Python-opencv實現紅綠兩色識別操作

瀏覽:3日期:2022-07-22 18:51:47

1.顏色空間轉換(RGB轉HSV)

為了較準確的調紅色和綠色的HSV,我使用cv2.createTrackbar()函數創建了六個滾動條

#創建HSV最低滾動條cv2.createTrackbar(’H_min’,’image’,35,180,nothing)cv2.createTrackbar(’S_min’,’image’,43,255,nothing)cv2.createTrackbar(’V_min’,’image’,46,255,nothing)#創建HSV最高滾動條cv2.createTrackbar(’H_max’,’image’,0,180,nothing)cv2.createTrackbar(’S_max’,’image’,255,255,nothing)cv2.createTrackbar(’V_max’,’image’,255,255,nothing)

Python-opencv實現紅綠兩色識別操作

實際效果如圖

Python-opencv實現紅綠兩色識別操作

Python-opencv實現紅綠兩色識別操作

2.識別顏色并畫矩形框

顏色閾值已經確定了,這就可以進行顏色識別了。

為了讓識別更穩定,在代碼中加入自適應閾值。

th_img = cv2.adaptiveThreshold(mask,255,cv2.ADAPTIVE_THRESH_MEAN_C,cv2.THRESH_BINARY_INV,5,2)

3.畫矩形框

使用函數cv2.findContours()來檢測物體輪框

再使用函數cv2.boundingRect()查找最小矩形框

使用函數cv2.rectangle()畫出

contours_green,hierarchy = cv2.findContours(th_green,cv2.RETR_EXTERNAL,cv2.CHAIN_APPROX_SIMPLE)contours_red,hierarchy = cv2.findContours(th_red,cv2.RETR_EXTERNAL,cv2.CHAIN_APPROX_SIMPLE)for red in contours_red: x_red,y_red,w_red,h_red = cv2.boundingRect(red) if w_red>width|h_red>height: cv2.rectangle(img,(x_red,y_red),((x_red+h_red),(y_red+w_red)),(0,255,0),1)for red in contours_red: x_red,y_red,w_red,h_red = cv2.boundingRect(red) if w_red>width|h_red>height: cv2.rectangle(img,(x_red,y_red),((x_red+h_red),(y_red+w_red)),(0,255,0),1)

為了凸顯出顏色的差距,我使用綠色的矩形框,畫紅色的物體,用紅色的矩形框畫綠色物體

Python-opencv實現紅綠兩色識別操作

以上這篇Python-opencv實現紅綠兩色識別操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 昌吉市| 宽甸| 临沭县| 扶余县| 前郭尔| 绿春县| 图木舒克市| 临猗县| 中西区| 梨树县| 扬州市| 丽水市| 平舆县| 南昌县| 淳安县| 巴塘县| 普定县| 昔阳县| 汉沽区| 修水县| 仁怀市| 马边| 咸丰县| 克什克腾旗| 石家庄市| 远安县| 徐汇区| 八宿县| 石河子市| 万年县| 普格县| 射洪县| 白朗县| 东莞市| 施秉县| 夏邑县| 饶阳县| 左贡县| 偃师市| 墨江| 贡嘎县|