ColorDetector 类可以在一幅图像中找出与指定颜色接近的像素,它的判断方法是对像素进行逐个检查。cv::floodFill 函数的做法与之类似,但有一个很大的区别,那就是它在判断一个像素时,还要检查附近像素的状态,这是为了识别某种颜色的相关区域。用户只需指定一个起始位置和允许的误差,就可以找出颜色接近的连续区域。
首先根据亚像素确定搜寻的颜色,并检查它旁边的像素,判断它们是否为颜色接近的像素;然后,继续检查它们旁边的像素,并持续操作。这样就可以从图像中提取出特定颜色的区域。例如要从图中提取出蓝天,可以执行以下语句:
cv::floodFill(image, // 输入/输出图像
cv::Point(100, 50), // 起始点
cv

ColorDetector类通过逐像素检查来识别图像中的颜色,而cv::floodFill函数则通过检查相邻像素状态来识别颜色区域。用户指定起始位置和颜色误差,函数能找出颜色接近的连续区域。例如,用它提取蓝天,只需设定起始位置和颜色阈值,函数会重绘颜色接近的像素,创建出特定颜色的区域。
最低0.47元/天 解锁文章
816

被折叠的 条评论
为什么被折叠?



