小编Stu*_*urK的帖子

使用`cv :: inRange`(OpenCV)为颜色检测选择正确的上下HSV边界

我有一个咖啡罐的图像,橙色的盖子位置,我想找到.就这个图片.

gcolor2实用程序显示盖子中心的HSV为(22,59,100).问题是如何选择颜色的限制呢?我尝试了min =(18,40,90)和max =(27,255,255),但是出乎意料结果

这是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()
Run Code Online (Sandbox Code Playgroud)

opencv hsv color-detection

67
推荐指数
7
解决办法
17万
查看次数

Python:变量scope和profile.run

我想在我的函数中调用profile.run,即:

def g():
    ...
def f():
    x = ...
    run.profile('g(x)')
Run Code Online (Sandbox Code Playgroud)

但是,在调用run.profile时,它表示"x未定义".据我所知,我必须在调用run.profile的字符串参数中的g(x)之前提供import语句,我可以使用全局变量来完成此操作.

这可能与局部变量有关吗?

python variables profile scope

4
推荐指数
2
解决办法
4173
查看次数

标签 统计

color-detection ×1

hsv ×1

opencv ×1

profile ×1

python ×1

scope ×1

variables ×1