mirror of
https://gitcode.com/gh_mirrors/ope/OpenFace.git
synced 2026-08-31 12:47:46 +00:00
- AUs retrained using CE-CLM landmark detection
- bug fix with -gaze parameter - bug fix with prefered location of bounding box - re-initializing more often
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -63,3 +63,4 @@ matlab_runners/Action Unit Experiments/out_fera/
|
||||
matlab_runners/Action Unit Experiments/out_SEMAINE/
|
||||
matlab_runners/Gaze Experiments/mpii_out/
|
||||
*.vspx
|
||||
matlab_version/AU_training/experiments/full_model_training/mat_models_o/
|
||||
|
||||
@@ -14,7 +14,7 @@ svm_combined/AU_20_dynamic.dat AU20
|
||||
svm_combined/AU_23_static.dat AU23
|
||||
svm_combined/AU_25_dynamic.dat AU25
|
||||
svm_combined/AU_26_dynamic.dat AU26
|
||||
svm_combined/AU_28_static.dat AU28
|
||||
svm_combined/AU_28_dynamic.dat AU28
|
||||
svm_combined/AU_45_dynamic.dat AU45
|
||||
svr_combined/AU_1_dynamic_intensity_comb.dat AU01
|
||||
svr_combined/AU_2_dynamic_intensity_comb.dat AU02
|
||||
|
||||
@@ -16,7 +16,7 @@ svm_combined/AU_25_static.dat AU25
|
||||
svm_combined/AU_26_static.dat AU26
|
||||
svm_combined/AU_28_static.dat AU28
|
||||
svm_combined/AU_45_static.dat AU45
|
||||
svr_combined/AU_1_static_intensity.dat AU01
|
||||
svr_combined/AU_1_static_intensity_comb.dat AU01
|
||||
svr_combined/AU_2_static_intensity_comb.dat AU02
|
||||
svr_combined/AU_4_static_intensity_comb.dat AU04
|
||||
svr_combined/AU_5_static_intensity.dat AU05
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
||||
1.000 0.969 1.017 0.954 0.954 1.017 0.969 0.000 0.047 0.164 -0.375 -0.375 0.164 0.047 -0.270 -0.260 -0.170 0.250 0.250 -0.170 -0.260
|
||||
1.000 1.005 1.054 0.976 0.976 1.054 1.005 0.000 0.049 0.121 -0.370 -0.370 0.121 0.049 -0.230 -0.200 -0.140 0.260 0.260 -0.140 -0.200
|
||||
@@ -151,9 +151,7 @@ FaceModelParameters::FaceModelParameters(vector<string> &arguments)
|
||||
else if (arguments[i].compare("-gaze") == 0)
|
||||
{
|
||||
track_gaze = true;
|
||||
|
||||
valid[i] = false;
|
||||
i++;
|
||||
}
|
||||
else if (arguments[i].compare("-q") == 0)
|
||||
{
|
||||
@@ -308,7 +306,7 @@ void FaceModelParameters::init()
|
||||
limit_pose = true;
|
||||
multi_view = false;
|
||||
|
||||
reinit_video_every = 4;
|
||||
reinit_video_every = 2;
|
||||
|
||||
// Face detection
|
||||
haar_face_detector_location = "classifiers/haarcascade_frontalface_alt.xml";
|
||||
|
||||
@@ -1612,8 +1612,8 @@ bool DetectSingleFaceMTCNN(cv::Rect_<double>& o_region, const cv::Mat& image, La
|
||||
|
||||
if (use_preferred)
|
||||
{
|
||||
dist = sqrt((preference.x - (face_detections[0].width / 2 + face_detections[0].x)) * (preference.x - (face_detections[0].width / 2 + face_detections[0].x)) +
|
||||
(preference.y - (face_detections[0].height / 2 + face_detections[0].y)) * (preference.y - (face_detections[0].height / 2 + face_detections[0].y)));
|
||||
dist = sqrt((preference.x - (face_detections[i].width / 2 + face_detections[i].x)) * (preference.x - (face_detections[i].width / 2 + face_detections[i].x)) +
|
||||
(preference.y - (face_detections[i].height / 2 + face_detections[i].y)) * (preference.y - (face_detections[i].height / 2 + face_detections[i].y)));
|
||||
better = dist < best_so_far;
|
||||
}
|
||||
else
|
||||
|
||||
@@ -8,4 +8,4 @@ PO-CR 2.95 3.08 3.68
|
||||
CFAN 3.17 3.72 4.94
|
||||
------------------------------
|
||||
OpenFace CLNF 2.83 3.38 3.82
|
||||
OpenFace CE-CLM 2.40 2.65 3.16
|
||||
OpenFace CE-CLM 2.41 2.67 3.21
|
||||
|
||||
@@ -6,4 +6,4 @@ ICCR 3.37 3.45 4.46
|
||||
CFAN 3.93 4.43 6.39
|
||||
------------------------------
|
||||
OpenFace CLNF 3.79 4.23 4.78
|
||||
OpenFace CE-CLM 3.15 3.54 4.12
|
||||
OpenFace CE-CLM 3.15 3.55 4.18
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,4 +1,4 @@
|
||||
Model, mean, median
|
||||
OpenFace (CE-CLM): 0.0495, 0.0471
|
||||
OpenFace (CE-CLM): 0.0499, 0.0473
|
||||
OpenFace (CLNF): 0.0553, 0.0515
|
||||
CLM: 0.0647, 0.0592
|
||||
CLM: 0.0632, 0.0588
|
||||
|
||||
Binary file not shown.
@@ -1,4 +1,4 @@
|
||||
Type, mean, median
|
||||
err ce-clm: 0.042290, 0.034776
|
||||
err ce-clm: 0.042604, 0.034670
|
||||
err clnf: 0.054960, 0.038257
|
||||
err svr: 0.070022, 0.049925
|
||||
|
||||
@@ -25,7 +25,7 @@ assert(median(clnf_error) < 0.053);
|
||||
run_300VW_dataset_OpenFace;
|
||||
assert(median(ceclm_error_49_cat_1) < 0.025);
|
||||
assert(median(ceclm_error_49_cat_2) < 0.027);
|
||||
assert(median(ceclm_error_49_cat_3) < 0.032);
|
||||
assert(median(ceclm_error_49_cat_3) < 0.033);
|
||||
assert(median(ceclm_error_66_cat_1) < 0.032);
|
||||
assert(median(ceclm_error_66_cat_2) < 0.036);
|
||||
assert(median(ceclm_error_66_cat_3) < 0.042);
|
||||
|
||||
@@ -40,7 +40,6 @@ parfor p=1:numel(p_dirs)
|
||||
out_p_loc = ['-opdir "', [output, p_dirs(p).name], '" '];
|
||||
command_c = cat(2, command, input_loc, out_img_loc, out_p_loc);
|
||||
|
||||
command_c = cat(2, command_c, ' -wild');
|
||||
if(isunix)
|
||||
unix(command_c, '-echo');
|
||||
else
|
||||
|
||||
Binary file not shown.
@@ -1,2 +1,2 @@
|
||||
Mean error, median error
|
||||
9.096, 8.447
|
||||
9.098, 8.468
|
||||
|
||||
Binary file not shown.
@@ -1,4 +1,4 @@
|
||||
Dataset and model, pitch, yaw, roll, mean, median
|
||||
biwi error: 8.065, 6.022, 4.434, 6.173, 2.684
|
||||
biwi error: 8.046, 6.096, 4.443, 6.195, 2.681
|
||||
bu error: 2.779, 3.348, 2.448, 2.859, 1.985
|
||||
ict error: 3.814, 3.768, 3.503, 3.695, 1.933
|
||||
|
||||
Binary file not shown.
@@ -1,4 +1,4 @@
|
||||
Dataset and model, pitch, yaw, roll, mean, median
|
||||
biwi error: 6.850, 6.165, 3.349, 5.454, 2.618
|
||||
bu error: 2.394, 3.245, 2.407, 2.682, 1.827
|
||||
ict error: 3.132, 3.482, 3.121, 3.245, 1.858
|
||||
biwi error: 6.767, 6.080, 3.428, 5.425, 2.616
|
||||
bu error: 2.398, 3.247, 2.409, 2.685, 1.834
|
||||
ict error: 3.132, 3.510, 3.137, 3.260, 1.867
|
||||
|
||||
@@ -32,7 +32,7 @@ for f1=1:numel(bp4d_dirs)
|
||||
|
||||
command = cat(2, command, [' -fx 2000 -fy 2000 -rigid -asvid -fdir "' curr_vid '" -simalign "' output_file '" -simscale 0.7 -simsize 112']);
|
||||
command = cat(2, command, [' -hogalign "' output_hog '"']);
|
||||
command = cat(2, command, [' -of "' output_params '" -no2Dfp -no3Dfp -noAUs -noPose -noGaze']);
|
||||
command = cat(2, command, [' -of "' output_params '" -no2Dfp -no3Dfp -noAUs -noPose -noGaze -q ']);
|
||||
dos(command);
|
||||
end
|
||||
end
|
||||
@@ -65,7 +65,7 @@ for f1=1:numel(bp4d_dirs)
|
||||
|
||||
command = cat(2, command, [' -fx 2000 -fy 2000 -rigid -q -asvid -fdir "' curr_vid '" -simalign "' output_file '" -simscale 0.7 -simsize 112']);
|
||||
command = cat(2, command, [' -hogalign "' output_hog '"']);
|
||||
command = cat(2, command, [' -of "' output_params '" -no2Dfp -no3Dfp -noAUs -noPose -noGaze']);
|
||||
command = cat(2, command, [' -of "' output_params '" -no2Dfp -no3Dfp -noAUs -noPose -noGaze -q ']);
|
||||
dos(command);
|
||||
end
|
||||
end
|
||||
|
||||
@@ -16,6 +16,10 @@ for f1=1:numel(bosph_dirs)
|
||||
|
||||
for i=1:numel(curr_vids)
|
||||
command = features_exe;
|
||||
% Do not do angled faces, does not add much information for AU
|
||||
if(~isempty(strfind(curr_vids(i).name, 'YR')) || ~isempty(strfind(curr_vids(i).name, 'PR'))|| ~isempty(strfind(curr_vids(i).name, 'CR')))
|
||||
continue;
|
||||
end
|
||||
input_file = [bosph_loc, '/' name '/', curr_vids(i).name];
|
||||
[~, curr_name, ~] = fileparts(curr_vids(i).name);
|
||||
output_file = [out_loc, '/hog_aligned_rigid_b/', curr_name, '/'];
|
||||
|
||||
@@ -55,7 +55,7 @@ for i=1:numel(disfa_loc_1_files)
|
||||
|
||||
command = cat(2, command, [' -rigid -f "' input_file '" -simalign "' output_file '" -simscale 0.7 -simsize 112']);
|
||||
command = cat(2, command, [' -hogalign "' output_hog '"' ]);
|
||||
command = cat(2, command, [' -of "' output_params '" -no2Dfp -no3Dfp -noAUs -noPose -noGaze ']);
|
||||
command = cat(2, command, [' -of "' output_params '" -no2Dfp -no3Dfp -noAUs -noPose -noGaze -q ']);
|
||||
|
||||
dos(command);
|
||||
end
|
||||
@@ -76,7 +76,7 @@ for i=1:numel(disfa_loc_2_files)
|
||||
|
||||
command = cat(2, command, [' -rigid -f "' input_file '" -simalign "' output_file '" -simscale 0.7 -simsize 112']);
|
||||
command = cat(2, command, [' -hogalign "' output_hog '"']);
|
||||
command = cat(2, command, [' -of "' output_params '" -no2Dfp -no3Dfp -noAUs -noPose -noGaze ']);
|
||||
command = cat(2, command, [' -of "' output_params '" -no2Dfp -no3Dfp -noAUs -noPose -noGaze -q ']);
|
||||
|
||||
dos(command);
|
||||
end
|
||||
|
||||
@@ -35,7 +35,7 @@ for f1=1:numel(fera_dirs)
|
||||
command = cat(2, command, [' -rigid -f "' curr_vid '" -simalign "' output_file '" -simscale 0.7 -simsize 112']);
|
||||
command = cat(2, command, [' -hogalign "' output_hog '"']);
|
||||
|
||||
command = cat(2, command, [' -of "' output_params '" -no2Dfp -no3Dfp -noAUs -noPose -noGaze ']);
|
||||
command = cat(2, command, [' -of "' output_params '" -no2Dfp -no3Dfp -noAUs -noPose -noGaze -q ']);
|
||||
|
||||
dos(command);
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ parfor f1=1:numel(semaine_dirs)
|
||||
|
||||
command = cat(2, command, [' -rigid -f "' curr_vid '" -simalign "' output_file '" -simscale 0.7 -simsize 112']);
|
||||
command = cat(2, command, [' -hogalign "' output_hog '"']);
|
||||
command = cat(2, command, [' -of "' output_params '" -no2Dfp -no3Dfp -noAUs -noPose -noGaze ']);
|
||||
command = cat(2, command, [' -of "' output_params '" -no2Dfp -no3Dfp -noAUs -noPose -noGaze -q ']);
|
||||
dos(command);
|
||||
|
||||
end
|
||||
@@ -63,7 +63,7 @@ parfor f1=1:numel(semaine_dirs)
|
||||
|
||||
command = cat(2, command, [' -rigid -f "' curr_vid '" -simalign "' output_file '" -simscale 0.7 -simsize 112']);
|
||||
command = cat(2, command, [' -hogalign "' output_hog '"']);
|
||||
command = cat(2, command, [' -of "' output_params '" -no2Dfp -no3Dfp -noAUs -noPose -noGaze ']);
|
||||
command = cat(2, command, [' -of "' output_params '" -no2Dfp -no3Dfp -noAUs -noPose -noGaze -q ']);
|
||||
dos(command);
|
||||
|
||||
end
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
if(exist('D:\Datasets\fera/au_training', 'file'))
|
||||
FERA2011_dir = 'D:\Datasets\fera/au_training/';
|
||||
hog_data_dir = 'D:\Datasets\face_datasets\hog_aligned_rigid/';
|
||||
elseif(exist('E:\Datasets\fera/au_training', 'file'))
|
||||
FERA2011_dir = 'E:\Datasets\fera/au_training/';
|
||||
hog_data_dir = 'E:\Datasets\face_datasets\hog_aligned_rigid/';
|
||||
else
|
||||
fprintf('FERA2011 location not found (or not defined)\n');
|
||||
end
|
||||
|
||||
@@ -11,7 +11,7 @@ elseif(exist('D:\Datasets\FERA_2015\semaine\SEMAINE-Sessions/', 'file'))
|
||||
elseif(exist('D:/fera_2015/semaine/SEMAINE-Sessions/', 'file'))
|
||||
SEMAINE_dir = 'D:/fera_2015/semaine/SEMAINE-Sessions/';
|
||||
else
|
||||
fprintf('DISFA location not found (or not defined)\n');
|
||||
fprintf('SEMAINE location not found (or not defined)\n');
|
||||
end
|
||||
|
||||
if(exist('SEMAINE_dir', 'var'))
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user