我只是想将灰色图像转换为二进制图像。但是阈值函数给我一个完整的黑色图像作为二进制图像。我想得到深灰色的物体。 这有什么不对?
代码:
Mat theFrame = imread("C:\\asdsss.png"); // opencv
Mat gray,binary;
cvtColor(theFrame, gray, CV_BGR2GRAY);
threshold(gray, binary, 150, 255, THRESH_BINARY);
imwrite("result.jpg",binary);
答案 0 :(得分:0)
代码完美无缺。我在提供的图像上运行了确切的代码。它没有问题。
我通过运行代码获得了以下输出。我能想到的唯一问题可能是加载图像。加载后尝试使用cv :: imshow查看图像。还尝试将图像转换为jpg格式,然后再次尝试加载它。您也可以尝试编译并运行opencv thresholding sample。