很多软件制作的图像都存在白边,例如MATLAB、Visio、Origin等,这些存在白边的图像插入文档时将使排版看起来很空,不太美观。网上给出了很多去白边的办法,私以为不是太好用。以下给出一种基于MATLAB的图像去白边方法,已封装为函数,经测试效果良好,如下:
function im_cut( filename )
im_data = imread( filename );
[ a, b, c ] = size( im_data );
for i = 1: 1: a
for j = 1: 1: b
for k = 1: 1: c
if im_data( i, j, k ) < 225
a_end = i;
break;
end
end
end
end
for i = a: -1: 1
for j = 1: 1: b
for k = 1: 1: c
if im_data( i, j, k ) < 225
a_start = i;
break;
end
end
end
end
for j = 1: 1: b
for i = 1: 1: a
for k = 1: 1: c
if im_data( i, j, k ) < 225
b_end = j;
break;
end
end
end
end
for j = b: -1: 1
for i = 1: 1: a
for k = 1: 1: c
if im_data( i, j, k ) < 225
b_start = j;
break;
end
end
end
end
im_data_cut = im_data( a_start: a_end, ...
b_start: b_end, : );
imwrite( im_data_cut, filename );
Provided by 昨夜三更雨, see https://www.cnblogs.com/zysgy/p/16701338.html
浙公网安备 33010602011771号