Matlab strel函数参数为opencv cpp中的八边形

时间:2015-10-20 05:32:05

标签: c++ matlab opencv image-processing

我用几行matlab代码来应用八边形的结构元素。我想将相同的代码转换为opencv cpp。

Matlab代码

se1 = strel('octagon',3);
imgNew = imerode(image,se1);

Opencv Cpp Code

我知道我们可以创建一个结构元素然后我们必须调用erode函数,但是如何在opencv中创建八边形结构元素。

element = ??
erode(image,dst,element);

如何在opencv中创建Octagon结构元素?

1 个答案:

答案 0 :(得分:2)

一种简单的方法是计算八边形的顶点,并使用mixins.py绘制八边形。

fillConvexPoly必须是3的非负数倍(如在Matlab中)。

<强>代码

M

<强>结果

M = 3:

enter image description here

M = 12:

enter image description here