如何解决如何在 OpenCV 中使用 inRange 执行准确的阈值处理
我正在尝试使用 inRange 函数执行阈值处理,以创建用于特征检测的游戏内项目的白色遮罩。我目前正在使用带有轻微高斯模糊的 inRange 函数来去除噪声,试图完全掩盖我图像中的项目。
与硬编码 HSV 值相比,是否有更自适应的阈值方法?我对 OpenCV 比较陌生,想知道是否有更有效/更精确的方法来执行此任务。
这是关于我目前如何通过阈值执行的代码,以及我的结果。
Mat mask,scene;
scene = imread("./inGameWeapon.png");
resize(scene,scene,Size(),(270.0 / scene.rows),(270.0 / scene.cols));
cv::GaussianBlur(scene,cv::Size(5,5),0);
cvtColor(scene,COLOR_BGR2HSV);
inRange(scene,Scalar(0,50,0),Scalar(200,92,100),mask); //Remove blue background
imshow("Threshold",mask);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。