Matlab source code for file selection

조회 수: 2 (최근 30일)
Rishav
Rishav 2014년 3월 10일
편집: Marta Salas 2014년 3월 10일
I am doing a project on Video Compression. My problem is that i have a folder named "Snaps" that contains all the frames of the video. I want to select a number of sequential files having a certain interval and save those files into another folder named "Newsnaps". Can anyone please help me with the source code on this matter??

채택된 답변

Marta Salas
Marta Salas 2014년 3월 10일
편집: Marta Salas 2014년 3월 10일
Hi,
If I understood correctly you want to read the files from the folder Snaps, subsample them and then save them on a new folder called NewSpnas.
video_dir = 'snaps/'
extension = 'jpg'
out_dir = 'Newsnaps/'
step = 2 % this parameter decide which frames to save
resnames=dir(fullfile(video_dirs,['*.' extension]));
for i=1:step:length(resnames)
img=imread(fullfile(video_dirs,resnames(i).name));
imwrite(img, [out_dir resnames(i).name]);
end

추가 답변 (1개)

Nitin
Nitin 2014년 3월 10일
This should get you started on selecting the sequential frames:
% The following will give the lengths of the consecutive sequences of your vector:
a=diff(frame_number);
b=find([a inf]>1);
c=diff([0 b]); % length of the sequences
d=cumsum(c); % endpoints of the sequences
% Choose frames with highest number of consecutive frames
ind5 = max(c);
if length(ind5)> 1
ind5 = ind5(1);
end
% Proceed only if the number of consecutive frames is greater >
% length consecutive frames
if ind5>=length_cons_frames
ind6 = find(c==ind5);
end_point = d(ind6);

카테고리

Help CenterFile Exchange에서 Whos에 대해 자세히 알아보기

태그

아직 태그를 입력하지 않았습니다.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by