selecting an image from folder
조회 수: 7 (최근 30일)
이전 댓글 표시
I have 30 images in a folder,I have to select only21st image from it,please help,i tried this code but only first image is shown
I have 30 images in folder named photos
path='D:\photos\';
files=dir(strcat(path,'*.jpg'))
for k=1:numel(files(21))%numel(files)
file_name=files(k).name;
image_name=strcat(path,file_name);
I=imread(image_name);
figure,imshow(I)
end
댓글 수: 2
채택된 답변
Chandra Kurniawan
2011년 12월 22일
path='D:\photos\';
jpeg_files = dir(fullfile(path,'*.jpg'));
for cnt = 1 : 21
I{cnt} = imread(fullfile(path,jpeg_files(cnt).name));
figure,imshow(I{cnt});
end
댓글 수: 12
Chandra Kurniawan
2011년 12월 22일
Can you show me about 'feature vector of query image' and 'feature vector that you saved in your .MAT file?
추가 답변 (1개)
Chandra Kurniawan
2011년 12월 22일
Then you just need to pass your feature vector 1x80 and
feature vector of query image in
suppose that dataset1 is feature vector 1x80
dataset2 is feature vector of query image
function D = DistEuclidian(dataset1, dataset2)
[m1 n1] = size(dataset1);
[m2 n2] = size(dataset2);
D = zeros(m1, m2);
for i = 1 : m1
for j = 1 : m2
D(i, j) = sqrt((dataset1(i, 1) - dataset2(j, 1)) ^ 2 + ...
(dataset1(i, 2) - dataset2(j, 2)) ^ 2);
end
end
And you'll get the Distance matrix.
Then make a limit. If all values in Distance matrix lower than your limit,
We can say that your query image is match with feature vector 1x80
댓글 수: 7
Image Analyst
2011년 12월 28일
Did you try
% Multiply by 2 and divide by 2, for some weird reason.
newVector = (2*data80) / (2*data80); % Not sure of the point.
% Get running average.
output = conv(newVector, ones(1,8)/8, 'valid');
참고 항목
카테고리
Help Center 및 File Exchange에서 Convert Image Type에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!