想要单独对图像在HSV颜色空间下的色相分量或饱和度分量进行分析处理,应当调用什么函数?(对象是整幅图范围,不是单个像素点的hsv分量)
iluw
@iluw
iluw 发布的帖子
-
如何将图像从RGB颜色空间转换到HSV或HSI颜色空间?
-
关闭白平衡和自动增益后,改变光源的亮度却还是会被自动校正平衡。如何彻底关闭白平衡和自动增益?
简单的成像代码如下:
import sensor, image, time sensor.reset() # Reset and initialize the sensor. sensor.set_pixformat(sensor.RGB565) # Set pixel format to RGB565 (or GRAYSCALE) sensor.set_framesize(sensor.XGA) # Set frame size to QVGA (320x240) sensor.set_auto_gain(False) #关闭相机自动增益 sensor.set_auto_whitebal(False) #关闭相机自动白平衡 sensor.skip_frames(time = 2000) # Wait for settings take effect. clock = time.clock() # Create a clock object to track the FPS. while(True): clock.tick() # Update the FPS clock. img = sensor.snapshot() # Take a picture and return the image. img.lens_corr(1.3) print(clock.fps()) # Note: OpenMV Cam runs about half as fast when connected # to the IDE. The FPS should increase once disconnected.
-
image.binary()如何设定mask参数?
image.binary(thresholds[, invert=False[, zero=False[, mask=None[, to_bitmap=False[, copy=False]]]]])
以上函数中的mask是如何设定的?mask=?
-
RE: 有什么方法去设定二维倾斜的矩形区域为感兴趣区域
@kidswong999
image.binary()需要以颜色阈值范围作为判断标准,我的“最终检测色块”的颜色变化范围较大,可能和标准颜色区的某个标准色块颜色相近,这样可能会出现误把“最终检测色块”也包含进某个标准色块对应生成的mask里的情况,成为干扰因素。我想给每个标准色块和二维码设定ROI的初衷是尽量避免干扰因素,提高精确度。 -
RE: 有什么方法去设定二维倾斜的矩形区域为感兴趣区域
我的思路是第一步:利用find_blobs()去识别右侧蓝色圆点,然后利用blob.roundness()圆点筛选,再利用blob.enclosing_circle()去返回其中心坐标,于是得到中心点坐标,通过计算也可以得到这整个图像的倾斜角度;第二步:根据得到的坐标去分别给左侧标准颜色区与中间二维码区设定一个ROI。但是实际情况检测对象可能是倾斜一定角度的,左侧标准颜色区因面积限制排列紧凑,普通(x,y,w,h)可能导致某个ROI错误扩展到相邻的色块上,导致我获取的区域像素颜色信息出现干扰。第三步:根据标准颜色区的颜色信息作为“最终检测色块区”的环境偏差修正参数,从而获取最终检测色块区的颜色信息。
所以我想,如果可以自己根据算出来的每个色块的四角坐标(与定位块的相对位置是固定的)与倾斜角度去设定一个与对象倾斜角度相同的ROI就好了。
或者已知倾斜角后,把图像反向水平旋转矫正后再去设定ROI就可以避免倾斜ROI扩展到其他色块上了。 -
RE: 有什么方法去设定二维倾斜的矩形区域为感兴趣区域
感谢指点,但是上面的红色块目标只是举例, 我想设定的感兴趣区域并不是以已知对象位置为前提,而是以我想设定的感兴趣区域的四角坐标与倾斜角度为已知。(已知信息是由大目标上的定位块计算出的,根据相对坐标差与倾斜角去定位大目标上的小目标的大概位置)也就是想要实现的不是“识别”、而是“设定”,设定一个倾斜的感兴趣区域。
-
有什么方法去设定二维倾斜的矩形区域为感兴趣区域
举例:目标是红色块,但是其倾斜一定角度。我想设定感兴趣区域为黑色矩形框范围(图像本身是无黑色矩形框的,这里是为展示清晰),黑色矩形框四角坐标与长、宽已知。
我能想到的解决方法有两个:1.算出目标的旋转角度,然后将图像整个旋转一定角度后,设定(x,y,w,h);2.有没有什么可以直接匹配出倾斜矩形框,然后调用设定为感兴趣区域的。但是roi=(x,y,w,h)嘛,不明白倾斜状态下如何设定w和h。
请教各位大佬指点指点。