open source pkg v1
This commit is contained in:
@@ -0,0 +1,75 @@
|
||||
executable = '"../../x64/Release/FeatureExtraction.exe"';
|
||||
|
||||
outputDir = 'D:\Datasets\face2face\2007_processed/';
|
||||
|
||||
% First collect the filenames of the data to be used
|
||||
input_label_dir = 'D:\Datasets\face2face\f2f-2007-all-transcriptions/';
|
||||
|
||||
folds = dir([input_label_dir, '*Rapport*']);
|
||||
|
||||
listener_file_labels = {};
|
||||
speaker_file_labels = {};
|
||||
|
||||
listener_vid_files = {};
|
||||
speaker_vid_files = {};
|
||||
|
||||
speaker_vid_dir = 'D:\Datasets\face2face\f2f-2007-all-movie-speaker/';
|
||||
listener_vid_dir = 'D:\Datasets\face2face\f2f-2007-all-movie-listener/';
|
||||
verbose = true;
|
||||
for i=1:numel(folds)
|
||||
|
||||
listener_file = dir([input_label_dir, folds(i).name, '/*.L.nod.eaf']);
|
||||
speaker_file = dir([input_label_dir, folds(i).name, '/*.S.nod.eaf']);
|
||||
|
||||
if(~isempty(listener_file))
|
||||
% Need to find the appropriate video file if it exists
|
||||
num = listener_file.name(end-15:end-10);
|
||||
vid_file_dir = dir([listener_vid_dir, '/*', num, '*']);
|
||||
vid_file = dir([listener_vid_dir, '/', vid_file_dir.name, '/*.mp4']);
|
||||
if(~isempty(vid_file))
|
||||
listener_vid_files = cat(1, listener_vid_files, [listener_vid_dir, '/', vid_file_dir.name, '/', vid_file.name]);
|
||||
listener_file_labels = cat(1, listener_file_labels, [input_label_dir, '/' folds(i).name, '/' listener_file.name]);
|
||||
end
|
||||
end
|
||||
|
||||
if(~isempty(speaker_file))
|
||||
num = speaker_file.name(end-15:end-10);
|
||||
vid_file_dir = dir([speaker_vid_dir, '/*', num, '*']);
|
||||
vid_file = dir([speaker_vid_dir, '/', vid_file_dir.name, '/*.mp4']);
|
||||
if(~isempty(vid_file))
|
||||
speaker_vid_files = cat(1, speaker_vid_files, [speaker_vid_dir, '/', vid_file_dir.name, '/', vid_file.name]);
|
||||
speaker_file_labels = cat(1, speaker_file_labels, [input_label_dir, '/' folds(i).name, '/' speaker_file.name]);
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
file_labels = cat(1, listener_file_labels, speaker_file_labels);
|
||||
video_files = cat(1, listener_vid_files, speaker_vid_files);
|
||||
|
||||
parfor i=1:numel(file_labels)
|
||||
|
||||
[~,short_name,vid_ext] = fileparts(video_files{i});
|
||||
|
||||
command = executable;
|
||||
|
||||
inputFile = video_files{i};
|
||||
outputFile = [outputDir short_name '.txt'];
|
||||
|
||||
outputEaf = [outputDir short_name '.eaf'];
|
||||
|
||||
command = cat(2, command, [' -f "' inputFile '" -of "' outputFile '"']);
|
||||
|
||||
if(verbose)
|
||||
outputVideo = [outputDir short_name '.track.avi'];
|
||||
command = cat(2, command, [' -ov "' outputVideo '"']);
|
||||
end
|
||||
|
||||
command = cat(2, command, [' -no2Dfp -no3Dfp -noMparams -noAUs -noGaze']);
|
||||
|
||||
dos(command);
|
||||
|
||||
copyfile(file_labels{i}, outputEaf);
|
||||
copyfile(video_files{i}, [outputDir '/' short_name, '.mp4']);
|
||||
|
||||
end
|
||||
Reference in New Issue
Block a user