OpenCV - 使用 C++ 填充对象中的空白区域
OpenCV - Filling empty spaces in object using c++
如何在 OpenCV 中填充空的 space 对象?
让我澄清一下我的问题。
我有下面的图片
现在我想像这样填充图像中的所有空白:
在Matlab中我用凸包做的,但我不知道在C++中如何做。
谢谢。
尝试形态学操作。如果你这样做,请注意,你可以改变内核大小(增加以减少迭代次数)或迭代(更多迭代将消除空space,即使内核很小),或两者。
cv::Mat img = cv::imread("cwyX5.jpeg");
cv::imshow("image", img);
cv::Size kernelSize(5, 5);
cv::Mat kernel = cv::getStructuringElement(cv::MORPH_ELLIPSE, kernelSize);
cv::Mat result;
int iterations = 3;
cv::morphologyEx(img, result, cv::MORPH_OPEN, kernel, cv::Point(-1,-1), iterations);
cv::imshow("result", result);
cv::waitKey();
如何在 OpenCV 中填充空的 space 对象?
让我澄清一下我的问题。
我有下面的图片
现在我想像这样填充图像中的所有空白:
在Matlab中我用凸包做的,但我不知道在C++中如何做。
谢谢。
尝试形态学操作。如果你这样做,请注意,你可以改变内核大小(增加以减少迭代次数)或迭代(更多迭代将消除空space,即使内核很小),或两者。
cv::Mat img = cv::imread("cwyX5.jpeg");
cv::imshow("image", img);
cv::Size kernelSize(5, 5);
cv::Mat kernel = cv::getStructuringElement(cv::MORPH_ELLIPSE, kernelSize);
cv::Mat result;
int iterations = 3;
cv::morphologyEx(img, result, cv::MORPH_OPEN, kernel, cv::Point(-1,-1), iterations);
cv::imshow("result", result);
cv::waitKey();