如何从图像中删除直线?
答
我得到的结果已经,
这是我的代码。
RGBImg = imread('test.png');
grayImg = rgb2gray(RGBImg);
Img = im2bw(grayImg);
Img = ~Img;
bwImgs = bwareaopen(Img,70);
se90 = strel('line', 2, 90);
se0 = strel('line', 2, 0);
borderImgs = double(imdilate(bwImgs, [se90 se0]));
%figure; imshow(borderImgs);
%remove border
%***************************************************************
[row col dim] = size(RGBImg);
rmBorderImgs = RGBImg;
for r=1:row
for c=1:col
if borderImgs(r,c) == 1
rmBorderImgs(r,c,1) = 255;
rmBorderImgs(r,c,2) = 255;
rmBorderImgs(r,c,3) = 255;
end
end
end
这是结果图片;
你对此有一个更好的主意吗?
你能建议我吗?