我正在使用OpenCV的ColorBlodDetector示例,我想修改代码以指定应用程序以检测红色,而不是按用户选择颜色。
我在process()
中修改了这样的代码mBlobColorHsv = new Scalar(0, 255, 200, 0);
mBlobColorRgba = converScalarHsv2Rgba(mBlobColorHsv);
并且还修改了mLowerBound,mUpperBound和mColorRadius,但是可以检测到的红色范围仍然非常小。例如,应用程序可以检测红色圆珠笔的红色,但不能检测红色圆珠笔写的字,也无法检测到打印的红色字。
请告诉我如何增加颜色范围。
答案 0 :(得分:0)
我不熟悉Android中的开发,但对于c ++,openCV确实提供inRange()
,您可以使用它来提取位于该范围内的像素。我相信Android也可以使用类似的功能。因此,您应该尝试提取具有某个范围内值的像素,而不是尝试提取具有精确值的像素。