Я хочу найти размер изображения (высота, ширина и область) и сохранить значение размера в txt-файле. Я попробовал эту команду:Как сохранить размер изображения в txt-файле с помощью matlab
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