c++ - 空结构元素的 OpenCV 腐 eclipse /膨胀错误输出?

标签 c++ opencv image-processing

如果用 zeros(3,3) 结构元素腐 eclipse 图像,它应该全为 1,但在 OpenCV 的情况下,它返回图像。类似地,用 zeros(3,3) 结构元素对图像进行膨胀会返回图像本身,而不是全 0。

最佳答案

documentation说:

  • element – structuring element used for dilation; if element=Mat() , a 3x3 rectangular structuring element is used

如果您看一下实现,您会发现在空内核的情况下,ksize 将是 morphOp() #1683 内的 3x3。 :

Size ksize = !kernel.empty() ? kernel.size() : Size(3,3);

这个也适合我:

cv::Mat input = cv::Mat::eye(10, 10, CV_8UC1);
cv::Mat output;

cv::erode(input, output, cv::Mat());

关于c++ - 空结构元素的 OpenCV 腐 eclipse /膨胀错误输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28956656/

相关文章:

c++ - 使用 C++17 强制枚举无效值

C++:在 Vista 上获取网络适配器的 MAC 地址?

c++ - 使用 OpenCV 确定草绘箭头的方向

image - 如何访问 OpenCV 中的像素?

python - 如何提取图像中的白色区域

matlab - 试图找到/理解哈里斯角的正确实现

CodeIgniter:图像处理类不能工作两次

android - "return 0 faces because error exists btk_facefinder_putdcr"安卓人脸检测报错

C++:引用和智能指针——有智能引用这样的东西吗?

c++ - 将一条线从2个点延长到一定长度