我想要查找图像的大小(高度,宽度和面积)并将大小值保存在txt文件中。我试过这个命令:如何使用matlab保存txt文件中的图像大小
img = imread('TN4.jpg');
abu=rgb2gray(img);
imwrite(abu,'abu.jpg');
cb=imclearborder(abu);
imwrite(cb,'cb.jpg')
thresh=graythresh(cb);
b=im2bw(cb,thresh);
imwrite(b,'b.jpg');
bw=bwareaopen(b,100);
bwfill=imfill(bw,'holes');
imwrite(bwfill,'bw.jpg');
s = regionprops(bwfill,'BoundingBox');
out = bsxfun(@times,img,uint8(bwfill));
objects=cell(numel(s),1);
for idx = 1:numel(s)
bb=floor(s(idx).BoundingBox);
objects{idx} = out(bb(2):bb(2)+bb(4), bb(1):bb(1)+bb(3),:);
end
k1=objects{1};
c1=rgb2gray(k1);
t1=graythresh(c1);
biner1=im2bw(c1,t1);
[height, width] = size(biner1);
a1 = bwarea(biner1);
h1=height(biner1);
w1=width(biner1);
X = [(h1);(w1);(a1)];
save datagrading.txt X -ascii
,但我得到警告按摩
??? Index exceeds matrix dimensions.
Error in ==> exercise at 35
h1=height(biner1);
谁能帮助我? 谢谢
谢谢。有用。 但是,如您所见,这些命令仅适用于图像中的一个对象(k1 = objects {1}),而我的对象很少。我打算将图像中的所有对象的大小数据保存在相同的txt中。我该怎么办? –
您可以遍历每个图像,然后保存整个矩阵。我将编辑我的帖子。 – rayryeng
@ZulfaLuthfi检查我的编辑。 – rayryeng