亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何定義閾值以僅檢測圖像中的綠色對象:Opencv

如何定義閾值以僅檢測圖像中的綠色對象:Opencv

呼如林 2019-08-19 17:42:02
如何定義閾值以僅檢測圖像中的綠色對象:Opencv 我只是想從自然環境中捕獲的圖像中僅檢測綠色物體。如何定義它?因為在這里我要通過閾值讓我們說'x',通過使用這個x我想只獲得一種顏色的綠色對象(白色)其他必須出現在另一種顏色(黑色)請指導我做這個。提前致謝。
查看完整描述

1 回答

?
慕少森

TA貢獻2019條經驗 獲得超9個贊

更新

我做了一個HSV色彩圖。這是more easy and accurate使用這張地圖找到顏色范圍比以前。

也許我應該改變用途(40, 40,40) ~ (70, 255,255) in hsv來找到green。

https://img1.sycdn.imooc.com//5d5a6f2c0001e39007200355.png


原始答案

  1. 轉換為HSV色彩空間,

  2. 使用cv2.inRange(hsv, hsv_lower, hsv_higher)中獲取綠色面具。

我們使用the range (in hsv)(36,0,0) ~ (86,255,255)為此sunflower。


源圖片:

https://img1.sycdn.imooc.com//5d5a6f300001161202750183.png

蒙面綠色區域:

https://img1.sycdn.imooc.com//5d5a6f320001747202750183.png

更多步驟:

https://img1.sycdn.imooc.com//5d5a6f340001f1fe11000183.png


核心源代碼:

import cv2import numpy as np## Readimg = cv2.imread("sunflower.jpg")## convert to hsvhsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)## mask of green (36,25,25) ~ (86, 255,255)# mask = cv2.inRange(hsv, (36, 25, 25), (86, 255,255))mask = cv2.inRange(hsv, (36, 25, 25), (70, 255,255))## slice the greenimask = mask>0green = np.zeros_like(img, np.uint8)green[imask] = img[imask]## save cv2.imwrite("green.png", green)


查看完整回答
反對 回復 2019-08-19
  • 1 回答
  • 0 關注
  • 1393 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號