我始终使用InRange函数来检测HSV颜色空间中的颜色对象。现在,我需要在plc的人机界面中检测到黄光。
inRange(src, Scalar(10, 45, 150), Scalar(30, 255, 255), dst);
当界面的背景为白色时,一切都很好,我可以找到黄色的物体。
如果我将颜色更改为更深的颜色(例如黄色),则相机中的颜色会发生变化,并且无法检测到黄色的InRange。
一开始,我认为这是一个白平衡问题。在执行了一些白平衡算法之后,色彩偏移变得更加严重。 我也尝试禁用相机固有的白平衡功能,但无济于事。
如何校正灯的绿色,红色和黄色,以便可以正确检测到它?