我在How to implement an function equivalent to bwmorph Matlab function in OpenCV找到了一个适用于C ++的MATLAB bwmorph
函数版本,带有选项'endpoints'
,在bwmorph(image,'clean') equivalent in opencv有一个选项'clean'
,但没有一个选项{ {1}}。有人有C ++实现吗?
答案 0 :(得分:2)
The 'remove'
option to `bwmorph:
删除内部像素。如果所有4个相邻像素均为1,则此选项会将像素设置为0,从而仅保留边界像素。
您可以使用简单的4连接侵蚀来实现此目的,然后获取输入图像和侵蚀图像之间的差异。
auto se = getStructuringElement(MORPH_CROSS, Size{3,3});
erode(in, out, se);
subtract(in, out, out);