最佳答案
我有一个形象的咖啡罐与橙色的盖子的位置,我想找到。 这里是 < img src = “ https://i.stack.imgur.com/TGrDR.jpg”alt = “ image”> 。
Gcolor 2实用程序将盖子中心的 HSV 显示为(22,59,100)。 问题是如何选择颜色的极限呢?我尝试了 min = (18,40,90)和 max = (27,255,255) ,但得到了意想不到的 < img src = “ https://i.stack.imgur.com/Sku73.png”alt = “ result”>
下面是 Python 代码:
import cv
in_image = 'kaffee.png'
out_image = 'kaffee_out.png'
out_image_thr = 'kaffee_thr.png'
ORANGE_MIN = cv.Scalar(18, 40, 90)
ORANGE_MAX = cv.Scalar(27, 255, 255)
COLOR_MIN = ORANGE_MIN
COLOR_MAX = ORANGE_MAX
def test1():
frame = cv.LoadImage(in_image)
frameHSV = cv.CreateImage(cv.GetSize(frame), 8, 3)
cv.CvtColor(frame, frameHSV, cv.CV_RGB2HSV)
frame_threshed = cv.CreateImage(cv.GetSize(frameHSV), 8, 1)
cv.InRangeS(frameHSV, COLOR_MIN, COLOR_MAX, frame_threshed)
cv.SaveImage(out_image_thr, frame_threshed)
if __name__ == '__main__':
test1()