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

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

如何檢測被陰影遮擋的黃色物體?

如何檢測被陰影遮擋的黃色物體?

白豬掌柜的 2023-06-20 15:43:53
我嘗試檢測下圖中的黃線,但陰影遮住了黃色道路。我們有什么方法可以處理嗎?編碼如下:import cv2import numpy as npimage = cv2.imread('Road.jpg')hsv = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)low_yellow = np.array([18, 94, 140])up_yellow = np.array([48, 255, 255])mask = cv2.inRange(hsv, low_yellow, up_yellow)edges = cv2.Canny(mask, 75, 150)lines = cv2.HoughLinesP(edges, 1, np.pi / 180, 50, maxLineGap=250)for line in lines:? x1, y1, x2, y2 = line[0]? cv2.line(image, (x1, y1), (x2, y2), (0, 255, 0), 5)? # cv2.imshow('image', img)? cv2.imwrite("result.jpg", edges)
查看完整描述

1 回答

?
幕布斯6054654

TA貢獻1876條經驗 獲得超7個贊

這是轉換為實驗室和自動閾值的代碼您必須使用適當的方法檢測線條。一種高級解決方案是訓練數據集進行分割(神經網絡 Ex:Unet)


import cv2

import numpy as np


img = cv2.imread('YourImagePath.jpg')


cv2.imshow("Original", img)

k = cv2.waitKey(0)


# Convert To lab

lab = cv2.cvtColor(img, cv2.COLOR_BGR2LAB)


# display b channel

cv2.imshow("Lab", lab[:, :, 2])

k = cv2.waitKey(0)


# auto threshold using Otsu

ret , mask = cv2.threshold(lab[:, :, 2] , 0 , 255 , cv2.THRESH_BINARY+ 

cv2.THRESH_OTSU)


#display Binary

cv2.imshow("Binary", mask)

k = cv2.waitKey(0)

cv2.destroyAllWindows()

輸出:

http://img1.sycdn.imooc.com//649158f70001d04b19110459.jpg

查看完整回答
反對 回復 2023-06-20
  • 1 回答
  • 0 關注
  • 112 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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