diff --git a/exe/FaceLandmarkImg/FaceLandmarkImg.vcxproj b/exe/FaceLandmarkImg/FaceLandmarkImg.vcxproj
index 58a8b7b..d9358b2 100644
--- a/exe/FaceLandmarkImg/FaceLandmarkImg.vcxproj
+++ b/exe/FaceLandmarkImg/FaceLandmarkImg.vcxproj
@@ -110,6 +110,7 @@
WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
$(SolutionDir)\lib\local\LandmarkDetector\include;$(SolutionDir)\lib\local\FaceAnalyser\include;%(AdditionalIncludeDirectories)
StreamingSIMDExtensions2
+ true
Console
@@ -124,6 +125,7 @@
WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
$(SolutionDir)\lib\local\LandmarkDetector\include;$(SolutionDir)\lib\local\FaceAnalyser\include;%(AdditionalIncludeDirectories)
AdvancedVectorExtensions
+ true
Console
@@ -141,6 +143,7 @@
$(SolutionDir)\lib\local\LandmarkDetector\include;$(SolutionDir)\lib\local\FaceAnalyser\include;%(AdditionalIncludeDirectories)
false
StreamingSIMDExtensions2
+ true
Console
@@ -160,6 +163,7 @@
$(SolutionDir)\lib\local\LandmarkDetector\include;$(SolutionDir)\lib\local\FaceAnalyser\include;%(AdditionalIncludeDirectories)
false
AdvancedVectorExtensions
+ true
Console
diff --git a/exe/FaceLandmarkVid/FaceLandmarkVid.vcxproj b/exe/FaceLandmarkVid/FaceLandmarkVid.vcxproj
index a9b3616..71666c9 100644
--- a/exe/FaceLandmarkVid/FaceLandmarkVid.vcxproj
+++ b/exe/FaceLandmarkVid/FaceLandmarkVid.vcxproj
@@ -111,6 +111,7 @@
$(SolutionDir)\lib\local\LandmarkDetector\include;$(SolutionDir)\lib\local\FaceAnalyser\include;%(AdditionalIncludeDirectories)
false
StreamingSIMDExtensions2
+ true
Console
@@ -126,6 +127,7 @@
$(SolutionDir)\lib\local\LandmarkDetector\include;$(SolutionDir)\lib\local\FaceAnalyser\include;%(AdditionalIncludeDirectories)
false
AdvancedVectorExtensions
+ true
Console
@@ -145,6 +147,7 @@
false
Speed
StreamingSIMDExtensions2
+ true
Console
@@ -166,6 +169,7 @@
false
Speed
AdvancedVectorExtensions
+ true
Console
diff --git a/exe/FaceLandmarkVidMulti/FaceLandmarkVidMulti.vcxproj b/exe/FaceLandmarkVidMulti/FaceLandmarkVidMulti.vcxproj
index 0c1a3c7..802cb25 100644
--- a/exe/FaceLandmarkVidMulti/FaceLandmarkVidMulti.vcxproj
+++ b/exe/FaceLandmarkVidMulti/FaceLandmarkVidMulti.vcxproj
@@ -103,6 +103,7 @@
Disabled
$(SolutionDir)\lib\local\LandmarkDetector\include;%(AdditionalIncludeDirectories)
StreamingSIMDExtensions2
+ true
true
@@ -114,6 +115,7 @@
Disabled
$(SolutionDir)\lib\local\LandmarkDetector\include;%(AdditionalIncludeDirectories)
AdvancedVectorExtensions
+ true
true
@@ -128,6 +130,7 @@
$(SolutionDir)\lib\local\LandmarkDetector\include;%(AdditionalIncludeDirectories)
StreamingSIMDExtensions2
MultiThreadedDLL
+ true
true
@@ -144,6 +147,7 @@
$(SolutionDir)\lib\local\LandmarkDetector\include;%(AdditionalIncludeDirectories)
AdvancedVectorExtensions
MultiThreadedDLL
+ true
true
diff --git a/exe/FeatureExtraction/FeatureExtraction.cpp b/exe/FeatureExtraction/FeatureExtraction.cpp
index b49b143..7139d91 100644
--- a/exe/FeatureExtraction/FeatureExtraction.cpp
+++ b/exe/FeatureExtraction/FeatureExtraction.cpp
@@ -815,16 +815,16 @@ void post_process_output_file(FaceAnalysis::FaceAnalyser& face_analyser, string
{
if(t - begin_ind < num_reg)
{
- outfile << "," << predictions_reg[inds_reg[t - begin_ind]].second[i - 1];
+ outfile << ", " << predictions_reg[inds_reg[t - begin_ind]].second[i - 1];
}
else
{
- outfile << "," << predictions_class[inds_class[t - begin_ind - num_reg]].second[i - 1];
+ outfile << ", " << predictions_class[inds_class[t - begin_ind - num_reg]].second[i - 1];
}
}
else
{
- outfile << "," << tokens[t];
+ outfile << ", " << tokens[t];
}
}
outfile << endl;
@@ -929,8 +929,15 @@ void outputAllFeatures(std::ofstream* output_file, bool output_2D_landmarks, boo
// Output the estimated head pose
if (output_pose)
{
- *output_file << ", " << pose_estimate[0] << ", " << pose_estimate[1] << ", " << pose_estimate[2]
- << ", " << pose_estimate[3] << ", " << pose_estimate[4] << ", " << pose_estimate[5];
+ if(face_model.tracking_initialised)
+ {
+ *output_file << ", " << pose_estimate[0] << ", " << pose_estimate[1] << ", " << pose_estimate[2]
+ << ", " << pose_estimate[3] << ", " << pose_estimate[4] << ", " << pose_estimate[5];
+ }
+ else
+ {
+ *output_file << ", 0, 0, 0, 0, 0, 0";
+ }
}
// Output the detected 2D facial landmarks
@@ -938,7 +945,14 @@ void outputAllFeatures(std::ofstream* output_file, bool output_2D_landmarks, boo
{
for (int i = 0; i < face_model.pdm.NumberOfPoints() * 2; ++i)
{
- *output_file << ", " << face_model.detected_landmarks.at(i);
+ if(face_model.tracking_initialised)
+ {
+ *output_file << ", " << face_model.detected_landmarks.at(i);
+ }
+ else
+ {
+ *output_file << ", 0";
+ }
}
}
@@ -948,7 +962,14 @@ void outputAllFeatures(std::ofstream* output_file, bool output_2D_landmarks, boo
cv::Mat_ shape_3D = face_model.GetShape(fx, fy, cx, cy);
for (int i = 0; i < face_model.pdm.NumberOfPoints() * 3; ++i)
{
- *output_file << ", " << shape_3D.at(i);
+ if (face_model.tracking_initialised)
+ {
+ *output_file << ", " << shape_3D.at(i);
+ }
+ else
+ {
+ *output_file << ", 0";
+ }
}
}
@@ -956,11 +977,25 @@ void outputAllFeatures(std::ofstream* output_file, bool output_2D_landmarks, boo
{
for (int i = 0; i < 6; ++i)
{
- *output_file << ", " << face_model.params_global[i];
+ if (face_model.tracking_initialised)
+ {
+ *output_file << ", " << face_model.params_global[i];
+ }
+ else
+ {
+ *output_file << ", 0";
+ }
}
for (int i = 0; i < face_model.pdm.NumberOfModes(); ++i)
{
- *output_file << ", " << face_model.params_local.at(i, 0);
+ if(face_model.tracking_initialised)
+ {
+ *output_file << ", " << face_model.params_local.at(i, 0);
+ }
+ else
+ {
+ *output_file << ", 0";
+ }
}
}
diff --git a/exe/FeatureExtraction/FeatureExtraction.vcxproj b/exe/FeatureExtraction/FeatureExtraction.vcxproj
index 8a3fc8c..69fb3d1 100644
--- a/exe/FeatureExtraction/FeatureExtraction.vcxproj
+++ b/exe/FeatureExtraction/FeatureExtraction.vcxproj
@@ -110,6 +110,7 @@
$(SolutionDir)\lib\local\FaceAnalyser\include;$(SolutionDir)\lib\local\LandmarkDetector\include;%(AdditionalIncludeDirectories)
false
StreamingSIMDExtensions2
+ true
Console
@@ -125,6 +126,7 @@
$(SolutionDir)\lib\local\FaceAnalyser\include;$(SolutionDir)\lib\local\LandmarkDetector\include;%(AdditionalIncludeDirectories)
false
AdvancedVectorExtensions
+ true
Console
@@ -144,6 +146,7 @@
Speed
StreamingSIMDExtensions2
MultiThreadedDLL
+ true
Console
@@ -165,6 +168,7 @@
Speed
AdvancedVectorExtensions
MultiThreadedDLL
+ true
Console
diff --git a/exe/Recording/Recording.vcxproj b/exe/Recording/Recording.vcxproj
index 57b2b8a..5f04e4c 100644
--- a/exe/Recording/Recording.vcxproj
+++ b/exe/Recording/Recording.vcxproj
@@ -85,6 +85,7 @@
Level3
Disabled
+ true
true
@@ -94,6 +95,7 @@
Level3
Disabled
+ true
true
@@ -107,6 +109,7 @@
true
false
Cdecl
+ true
true
@@ -124,6 +127,7 @@
true
false
Cdecl
+ true
true
diff --git a/lib/3rdParty/dlib/dlib.vcxproj b/lib/3rdParty/dlib/dlib.vcxproj
index 94126b8..5203d2d 100644
--- a/lib/3rdParty/dlib/dlib.vcxproj
+++ b/lib/3rdParty/dlib/dlib.vcxproj
@@ -107,6 +107,7 @@
Debug
$(IntDir)
$(IntDir)vc$(PlatformToolsetVersion).pdb
+ true
true
@@ -130,6 +131,7 @@
Debug
$(IntDir)
$(IntDir)vc$(PlatformToolsetVersion).pdb
+ true
true
@@ -154,6 +156,7 @@
$(IntDir)
$(IntDir)vc$(PlatformToolsetVersion).pdb
Speed
+ true
WIN32;_WINDOWS;DLIB_PNG_SUPPORT;DLIB_JPEG_SUPPORT;NDEBUG;DLIB_HAVE_SSE2;DLIB_HAVE_SSE3;DLIB_HAVE_SSE41;CMAKE_INTDIR=\"Release\";%(PreprocessorDefinitions)
@@ -190,6 +193,7 @@
$(IntDir)
$(IntDir)vc$(PlatformToolsetVersion).pdb
Speed
+ true
WIN32;_WINDOWS;DLIB_PNG_SUPPORT;DLIB_JPEG_SUPPORT;NDEBUG;DLIB_HAVE_SSE2;DLIB_HAVE_SSE3;DLIB_HAVE_SSE41;CMAKE_INTDIR=\"Release\";%(PreprocessorDefinitions)
diff --git a/lib/local/FaceAnalyser/FaceAnalyser.vcxproj b/lib/local/FaceAnalyser/FaceAnalyser.vcxproj
index 400502d..8ac84ae 100644
--- a/lib/local/FaceAnalyser/FaceAnalyser.vcxproj
+++ b/lib/local/FaceAnalyser/FaceAnalyser.vcxproj
@@ -96,6 +96,7 @@
false
./include;$(SolutionDir)lib\local\LandmarkDetector\include;%(AdditionalIncludeDirectories)
StreamingSIMDExtensions2
+ true
true
@@ -114,6 +115,7 @@
false
./include;$(SolutionDir)lib\local\LandmarkDetector\include;%(AdditionalIncludeDirectories)
AdvancedVectorExtensions
+ true
true
@@ -135,6 +137,7 @@
./include;$(SolutionDir)lib\local\LandmarkDetector\include;%(AdditionalIncludeDirectories)
StreamingSIMDExtensions2
+ true
true
@@ -159,6 +162,7 @@
./include;$(SolutionDir)lib\local\LandmarkDetector\include;%(AdditionalIncludeDirectories)
AdvancedVectorExtensions
+ true
true
diff --git a/lib/local/LandmarkDetector/LandmarkDetector.vcxproj b/lib/local/LandmarkDetector/LandmarkDetector.vcxproj
index 0a0c856..c06eb3c 100644
--- a/lib/local/LandmarkDetector/LandmarkDetector.vcxproj
+++ b/lib/local/LandmarkDetector/LandmarkDetector.vcxproj
@@ -100,6 +100,7 @@
StreamingSIMDExtensions2
false
/Zm300 %(AdditionalOptions)
+ true
$(OutDir)$(TargetName)$(TargetExt)
@@ -122,6 +123,7 @@ xcopy /I /E /Y /D "$(SolutionDir)lib\3rdParty\OpenCV3.1\classifiers" "$(OutDir)c
AdvancedVectorExtensions
false
/Zm300 %(AdditionalOptions)
+ true
$(OutDir)$(TargetName)$(TargetExt)
@@ -146,6 +148,7 @@ xcopy /I /E /Y /D "$(SolutionDir)lib\3rdParty\OpenCV3.1\classifiers" "$(OutDir)c
Speed
false
/Zm300 %(AdditionalOptions)
+ true
$(OutDir)$(TargetName)$(TargetExt)
@@ -170,6 +173,7 @@ xcopy /I /E /Y /D "$(SolutionDir)lib\3rdParty\OpenCV3.1\classifiers" "$(OutDir)c
Speed
false
/Zm300 %(AdditionalOptions)
+ true
$(OutDir)$(TargetName)$(TargetExt)
diff --git a/matlab_runners/Feature Point Experiments/results/fps_yt.mat b/matlab_runners/Feature Point Experiments/results/fps_yt.mat
index 496e0fd..7da2870 100644
Binary files a/matlab_runners/Feature Point Experiments/results/fps_yt.mat and b/matlab_runners/Feature Point Experiments/results/fps_yt.mat differ
diff --git a/matlab_runners/Feature Point Experiments/results/in-the-wild-res-no-outline.pdf b/matlab_runners/Feature Point Experiments/results/in-the-wild-res-no-outline.pdf
index 86d949f..e2500ed 100644
Binary files a/matlab_runners/Feature Point Experiments/results/in-the-wild-res-no-outline.pdf and b/matlab_runners/Feature Point Experiments/results/in-the-wild-res-no-outline.pdf differ
diff --git a/matlab_runners/Feature Point Experiments/results/landmark_detections.mat b/matlab_runners/Feature Point Experiments/results/landmark_detections.mat
index a919379..cd7fb61 100644
Binary files a/matlab_runners/Feature Point Experiments/results/landmark_detections.mat and b/matlab_runners/Feature Point Experiments/results/landmark_detections.mat differ
diff --git a/matlab_runners/Gaze Experiments/mpii_1500_errs.mat b/matlab_runners/Gaze Experiments/mpii_1500_errs.mat
index b7c3354..6c892ca 100644
Binary files a/matlab_runners/Gaze Experiments/mpii_1500_errs.mat and b/matlab_runners/Gaze Experiments/mpii_1500_errs.mat differ
diff --git a/matlab_runners/Head Pose Experiments/results/Pose_OF.mat b/matlab_runners/Head Pose Experiments/results/Pose_OF.mat
index 7fe4af2..247d83d 100644
Binary files a/matlab_runners/Head Pose Experiments/results/Pose_OF.mat and b/matlab_runners/Head Pose Experiments/results/Pose_OF.mat differ
diff --git a/matlab_runners/Head Pose Experiments/results/Pose_OF.txt b/matlab_runners/Head Pose Experiments/results/Pose_OF.txt
index dc63c7f..9e98dec 100644
--- a/matlab_runners/Head Pose Experiments/results/Pose_OF.txt
+++ b/matlab_runners/Head Pose Experiments/results/Pose_OF.txt
@@ -1,4 +1,4 @@
Dataset and model, pitch, yaw, roll, mean, median
-biwi error: 7.970, 5.611, 4.436, 6.006, 2.624
+biwi error: 7.955, 5.583, 4.402, 5.980, 2.624
bu error: 2.762, 4.103, 2.568, 3.145, 2.118
ict error: 3.619, 3.606, 3.625, 3.617, 2.027