我正在编写一个代码,该代码应该检测视频中带有彩色线条的帧。我是openCV的新手,我想知道是否应该评估饱和度,熵,RBG强度等。图片中显示的线条具有各种颜色和密度。当是黑色和白色时,但是它们在给定框架内都具有相同的颜色。有什么建议吗?
常规框架:
示例1:
示例2:
答案 0 :(得分:2)
您可以使用类似的方法来获得平均饱和度,并看到它对于灰度图像来说较低,而对于彩色图像来说较高:
#!/usr/bin/env python3
import cv2
# Open image
im =cv2.imread('a.png',cv2.IMREAD_UNCHANGED)
# Convert to HSV
hsv=cv2.cvtColor(im,cv2.COLOR_BGR2HSV)
# Get mean Saturation - I use index "1" because Hue is index "0" and Value is index "2"
meanSat = hsv[...,1].mean()
结果
first image (greyish): meanSat = 78
second image (blueish): meanSat = 162
third image (redish): meanSat = 151
如果时间紧迫,我想您可以计算出一个小的提取色块,因为红/蓝线仍然遍布图像。