我想腐蚀具有特定结构元素的图像。opencv 提供的默认元素形状是椭圆、矩形和十字形。
int erosion_type = MORPH_RECT;
Mat element = getStructuringElement(erosion_type,Size(seSize,seSize),
Point(seSize/2,seSize/2));
erode(mat,result,element);
我想要的是不同的东西。我想用这样的特定矩形腐蚀图像:
00000
00000
11111
00000
00000
我尝试了以下代码,它在创建后更改了结构元素数据,但它似乎不起作用。假设结构元素为 CV_8UC1 且形状为 5 * 5
for(int i = 0 ; i < 25 ; i++)
{
if(i>10 & i < 15)
data[i] = 0;
else
data[i] = 255;
}