mirror of
https://github.com/AleziaKurdis/overte.git
synced 2025-04-07 02:33:23 +02:00
Applied Ryan's tweaks to Visage mapping and config file.
This commit is contained in:
parent
de8165c544
commit
853bba27ca
3 changed files with 345 additions and 14 deletions
5
.gitignore
vendored
5
.gitignore
vendored
|
@ -39,7 +39,8 @@ interface/external/sixense/*
|
|||
# Ignore Visage
|
||||
interface/external/visage/*
|
||||
!interface/external/visage/readme.txt
|
||||
interface/resources/visage/
|
||||
interface/resources/visage/*
|
||||
!interface/resources/visage/tracker.cfg
|
||||
|
||||
# Ignore interfaceCache for Linux users
|
||||
interface/interfaceCache/
|
||||
interface/interfaceCache/
|
||||
|
|
334
interface/resources/visage/tracker.cfg
Normal file
334
interface/resources/visage/tracker.cfg
Normal file
|
@ -0,0 +1,334 @@
|
|||
display_width 800
|
||||
|
||||
max_init_image_width 800
|
||||
max_work_image_width 384
|
||||
fast_image_resize 1
|
||||
|
||||
camera_input 0
|
||||
camera_device 0
|
||||
camera_width 800
|
||||
camera_height 600
|
||||
camera_frame_rate 30
|
||||
camera_mirror 1
|
||||
camera_settings_dialog 0
|
||||
camera_auto_settings 0
|
||||
|
||||
video_file_sync 1
|
||||
|
||||
automatic_initialisation 1
|
||||
init_yaw_threshold 0.005
|
||||
init_roll_threshold 10
|
||||
init_velocity_threshold 0.015
|
||||
init_timeout 1000
|
||||
init_timeout_enable 6
|
||||
init_display_status 1
|
||||
recovery_timeout 800
|
||||
|
||||
display_video 1
|
||||
display_model_texture 0
|
||||
display_tri_mask 0
|
||||
display_model_wireframe 0
|
||||
display_results 1
|
||||
display_track_points 0
|
||||
|
||||
detect_strip_area_threshold 1000
|
||||
detect_strip_angle_threshold 0.15
|
||||
detect_strip_ratio_threshold 0.2
|
||||
detect_strip_perfect_ratio 6.848
|
||||
detect_strip_roi_y_offset 0
|
||||
detect_strip_roi_width 2
|
||||
detect_strip_roi_height 4
|
||||
|
||||
smoothing_factors
|
||||
150 15 -2 100 -1 50 50 0
|
||||
#translation rotation action_units eyebrows mouth gaze eye_closure other
|
||||
|
||||
process_eyes 1
|
||||
leye_closing_au 12
|
||||
reye_closing_au 12
|
||||
eye_h_rotation_au 15
|
||||
eye_v_rotation_au 16
|
||||
eye_points_coords
|
||||
162 1.0 0.0 0.0
|
||||
157 0.0 0.0 1.0
|
||||
|
||||
bdts_points_use
|
||||
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
|
||||
#3.5 3.6 3.7 3.8 3.11 3.12 8.1 8.2 8.3 8.4 9.1 9.2 9.3 4.1 4.2 4.3 4.4 4.5 4.6 2.1
|
||||
|
||||
bdts_points_angle
|
||||
0 0 20 -20 20 -20 0 0 20 -20 20 -20 0 25 -25 20 -20 20 -20 0 0
|
||||
|
||||
model_filename candide3-exp.wfm
|
||||
fdp_filename candide3.fdp
|
||||
bdts_data_path bdtsdata
|
||||
|
||||
au_use
|
||||
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
|
||||
#AU1 AU2 AU3 AU4 AU5 AU6 AU7 AU8 AU9 AU10 AU11 AU12 AU13 AU14 AU15 AU16 AU17 AU18 AU19 AU20 AU21 AU22 AU23
|
||||
|
||||
au_names
|
||||
au_nose_wrinkler
|
||||
au_jaw_z_push
|
||||
au_jaw_x_push
|
||||
au_jaw_drop
|
||||
au_lower_lip_drop
|
||||
au_upper_lip_raiser
|
||||
au_lip_stretcher_left
|
||||
au_lip_corner_depressor
|
||||
au_lip_presser
|
||||
au_left_outer_brow_raiser
|
||||
au_left_inner_brow_raiser
|
||||
au_left_brow_lowerer
|
||||
au_leye_closed
|
||||
au_lid_tightener
|
||||
au_upper_lid_raiser
|
||||
au_rotate_eyes_left
|
||||
au_rotate_eyes_down
|
||||
au_lower_lip_x_push
|
||||
au_lip_stretcher_right
|
||||
au_right_outer_brow_raiser
|
||||
au_right_inner_brow_raiser
|
||||
au_right_brow_lowerer
|
||||
au_reye_closed
|
||||
|
||||
|
||||
ekf_sensitivity
|
||||
100 100 100 100 100 100 100 100 100 100 100 200 200 100 100 400 400 100 100 100 100 300 300 100 100 400 400 100 100
|
||||
#x y z rx ry rz AU1 AU2 AU3 AU4 AU5 AU6 AU7 AU8 AU9 AU10 AU11 AU12 AU13 AU14 AU15 AU16 AU17 AU18 AU19 AU20 AU21 AU22 AU23
|
||||
|
||||
au_gravity
|
||||
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
||||
#AU1 AU2 AU3 AU4 AU5 AU6 AU7 AU8 AU9 AU10 AU11 AU12 AU13 AU14 AU15 AU16 AU17 AU18 AU19 AU20 AU21 AU22 AU23
|
||||
|
||||
gravity_threshold 0.0
|
||||
|
||||
camera_focus 3
|
||||
|
||||
tex_size 512
|
||||
|
||||
ROI_num 14
|
||||
|
||||
#ROI 0 - nose region (setting default values)
|
||||
feature_points_num[0] 7
|
||||
feature_points_tri_use_num[0] 21
|
||||
feature_points_tri_use_list[0]
|
||||
48 154 54 55 152 45 46 47 103 109
|
||||
108 107 106 101 104 110 111 105 99 102
|
||||
100
|
||||
bound_rect_modifiers[0] -10 -10 -20 10
|
||||
feature_points_min_distance[0] 0.78125
|
||||
feature_point_block_size[0] 0.46875
|
||||
search_range[0] 4.0625 4.0625
|
||||
refine_range[0] 0.3125 0.3125
|
||||
patch_size[0] 4.6875
|
||||
match_method[0] 5
|
||||
bad_match_threshold[0] 0.35
|
||||
sensitivity_falloff[0] 10
|
||||
init_angle[0] 0
|
||||
feature_points_coords[0]
|
||||
97 0.18 0.54 0.28
|
||||
90 0.18 0.28 0.54
|
||||
51 0.76 0.09 0.15
|
||||
97 0.36 0.10 0.54
|
||||
90 0.36 0.54 0.10
|
||||
69 0.55 0.10 0.35
|
||||
67 0.55 0.35 0.10
|
||||
|
||||
#ROI 1 - left eyebrow region
|
||||
feature_points_num[1] 4
|
||||
feature_points_tri_use_num[1] 2
|
||||
feature_points_tri_use_list[1]
|
||||
25 26
|
||||
bound_rect_modifiers[1] 2 2 40 2
|
||||
feature_points_coords[1]
|
||||
25 0.0 0.0 1.0
|
||||
26 0.15 0.1 0.75
|
||||
25 1.0 0.0 0.0
|
||||
26 0.2 0.4 0.4
|
||||
|
||||
#ROI 2 - right eyebrow region
|
||||
feature_points_num[2] 4
|
||||
feature_points_tri_use_num[2] 2
|
||||
feature_points_tri_use_list[2]
|
||||
33 34
|
||||
bound_rect_modifiers[2] 2 2 40 2
|
||||
feature_points_coords[2]
|
||||
33 0.15 0.75 0.1
|
||||
34 1.0 0.0 0.0
|
||||
33 0.0 0.0 1.0
|
||||
33 0.2 0.4 0.4
|
||||
|
||||
#ROI 3 - left outer eye corner region
|
||||
feature_points_num[3] 3
|
||||
feature_points_tri_use_num[3] 4
|
||||
feature_points_tri_use_list[3]
|
||||
112 23 39 115
|
||||
bound_rect_modifiers[3] -5 -5 -25 -25
|
||||
feature_points_coords[3]
|
||||
23 0 0.2 0.8
|
||||
119 0.8351877 0.08414026 0.08067206
|
||||
116 0.3218788 0.4626164 0.2155048
|
||||
|
||||
#ROI 4 - right outer eye corner region
|
||||
feature_points_num[4] 3
|
||||
feature_points_tri_use_num[4] 4
|
||||
feature_points_tri_use_list[4]
|
||||
142 36 42 145
|
||||
bound_rect_modifiers[4] -5 -5 -25 -25
|
||||
feature_points_coords[4]
|
||||
36 0 0.8 0.2
|
||||
151 0.8566859 0.0405132 0.1028009
|
||||
146 0.2871178 0.3467231 0.366159
|
||||
|
||||
#ROI 5 - left inner eye corner region
|
||||
feature_points_num[5] 3
|
||||
feature_points_tri_use_num[5] 5
|
||||
feature_points_tri_use_list[5]
|
||||
122 28 99 100 125
|
||||
bound_rect_modifiers[5] -5 -5 -25 -40
|
||||
feature_points_coords[5]
|
||||
99 0.2 0.1 0.7
|
||||
122 0.2664618 0.3707059 0.3628323
|
||||
125 0.387767 0.4655813 0.1466517
|
||||
|
||||
#ROI 6 - right inner eye corner region
|
||||
feature_points_num[6] 3
|
||||
feature_points_tri_use_num[6] 5
|
||||
feature_points_tri_use_list[6]
|
||||
132 31 102 104 135
|
||||
bound_rect_modifiers[6] -5 -5 -25 -40
|
||||
feature_points_coords[6]
|
||||
102 0.2 0.7 0.1
|
||||
132 0.3673472 0.2426805 0.3899724
|
||||
135 0.2833096 0.1345753 0.5821151
|
||||
|
||||
#ROI 7 - lower lip region
|
||||
feature_points_num[7] 6
|
||||
feature_points_tri_use_num[7] 6
|
||||
feature_points_tri_use_list[7]
|
||||
79 80 82 84 52 53
|
||||
bound_rect_modifiers[7] 0 0 0 -80
|
||||
refine_range[7] 0.5 1
|
||||
patch_size[7] 7
|
||||
feature_points_coords[7]
|
||||
80 0.0 0.0 1.0
|
||||
80 1.0 0.0 0.0
|
||||
80 0.0 1.0 0.0
|
||||
79 0.0 0.0 1.0
|
||||
82 0.1 0.3 0.6
|
||||
84 0.1 0.6 0.3
|
||||
|
||||
#ROI 8 - upper lip region
|
||||
feature_points_num[8] 6
|
||||
feature_points_tri_use_num[8] 10
|
||||
feature_points_tri_use_list[8]
|
||||
69 49 155 51 50 153 44 67 57 60
|
||||
bound_rect_modifiers[8] 0 0 -70 0
|
||||
refine_range[8] 0.5 1
|
||||
patch_size[8] 7
|
||||
feature_points_coords[8]
|
||||
67 0.1 0.45 0.45
|
||||
69 0.1 0.45 0.45
|
||||
57 0.0 0.0 1.0
|
||||
60 0.0 1.0 0.0
|
||||
51 0.0 1.0 0.0
|
||||
51 0.3 0.7 0.0
|
||||
|
||||
#ROI 9 - left lip corner region
|
||||
feature_points_num[9] 4
|
||||
feature_points_tri_use_num[9] 4
|
||||
feature_points_tri_use_list[9]
|
||||
87 89 81 68
|
||||
bound_rect_modifiers[9] 0 0 -35 -35
|
||||
refine_range[9] 1 1
|
||||
patch_size[9] 7
|
||||
feature_points_coords[9]
|
||||
87 0.0 0.0 1.0
|
||||
87 0.2 0.0 0.8
|
||||
66 0.33 0.33 0.34
|
||||
72 0.33 0.33 0.34
|
||||
|
||||
#ROI 10 - right lip corner region
|
||||
feature_points_num[10] 4
|
||||
feature_points_tri_use_num[10] 4
|
||||
feature_points_tri_use_list[10]
|
||||
94 96 83 70
|
||||
bound_rect_modifiers[10] 0 0 -35 -35
|
||||
refine_range[10] 1 1
|
||||
patch_size[10] 7
|
||||
feature_points_coords[10]
|
||||
94 0.0 1.0 0.0
|
||||
94 0.2 0.8 0.0
|
||||
64 0.33 0.33 0.34
|
||||
78 0.33 0.33 0.34
|
||||
|
||||
#ROI 11 - jaw region
|
||||
feature_points_num[11] 4
|
||||
feature_points_tri_use_num[11] 2
|
||||
feature_points_tri_use_list[11]
|
||||
52 53
|
||||
bound_rect_modifiers[11] 0 0 -30 0
|
||||
refine_range[11] 0.5 1
|
||||
patch_size[11] 7
|
||||
bad_match_threshold[11] 0.6
|
||||
feature_points_coords[11]
|
||||
52 0.4 0.3 0.3
|
||||
53 0.4 0.3 0.3
|
||||
87 0.0 0.5 0.5
|
||||
94 0.0 0.5 0.5
|
||||
|
||||
feature_points_num[12] 6
|
||||
feature_points_tri_use_num[12] 3
|
||||
feature_points_tri_use_list[12]
|
||||
188 189 190 191
|
||||
bound_rect_modifiers[12] -30 0 0 -30
|
||||
init_angle[12] -20
|
||||
|
||||
feature_points_num[13] 6
|
||||
feature_points_tri_use_num[13] 3
|
||||
feature_points_tri_use_list[13]
|
||||
192 193 194 195
|
||||
bound_rect_modifiers[13] 0 -30 0 -30
|
||||
init_angle[13] 20
|
||||
|
||||
recovery_frames 4
|
||||
global_bad_match_threshold 0.5
|
||||
visibility_check 1
|
||||
|
||||
rotation_limit
|
||||
-1.570796 1.570796
|
||||
1.570796 4.712389
|
||||
-3.2 3.2
|
||||
|
||||
translation_limit
|
||||
-4 4
|
||||
-3 3
|
||||
0 11
|
||||
|
||||
action_unit_limit
|
||||
-0.5 0.5
|
||||
-0.5 0.5
|
||||
-1.0 1.0
|
||||
-0.05 1.2
|
||||
-0.05 1.5
|
||||
-0.05 1.5
|
||||
-1.0 1.0
|
||||
-1.5 1.5
|
||||
-1.5 1.5
|
||||
-1.5 2
|
||||
-1.5 2
|
||||
-1 1.5
|
||||
-2.8 2.8
|
||||
-1.5 1.5
|
||||
-1.5 1.5
|
||||
-100 100
|
||||
-100 100
|
||||
-1.5 1.5
|
||||
-1.5 1.5
|
||||
-1.5 1.5
|
||||
-1.5 1.5
|
||||
-1.5 1.5
|
||||
-2.8 2.8
|
||||
|
||||
|
|
@ -38,7 +38,7 @@ Visage::Visage() :
|
|||
#ifdef HAVE_VISAGE
|
||||
QByteArray licensePath = Application::resourcesPath() + "visage/license.vlc";
|
||||
initializeLicenseManager(licensePath.data());
|
||||
_tracker = new VisageTracker2(Application::resourcesPath() + "visage/Facial Features Tracker - Asymmetric.cfg");
|
||||
_tracker = new VisageTracker2(Application::resourcesPath() + "visage/tracker.cfg");
|
||||
if (_tracker->trackFromCam()) {
|
||||
_data = new FaceData();
|
||||
|
||||
|
@ -65,29 +65,25 @@ static int rightEyeBlinkIndex = 1;
|
|||
|
||||
static QMultiHash<QByteArray, QPair<int, float> > createActionUnitNameMap() {
|
||||
QMultiHash<QByteArray, QPair<QByteArray, float> > blendshapeMap;
|
||||
blendshapeMap.insert("Sneer", QPair<QByteArray, float>("au_nose_wrinkler", 1.0f));
|
||||
blendshapeMap.insert("JawFwd", QPair<QByteArray, float>("au_jaw_z_push", 1.0f));
|
||||
blendshapeMap.insert("JawLeft", QPair<QByteArray, float>("au_jaw_x_push", 1.0f));
|
||||
blendshapeMap.insert("JawOpen", QPair<QByteArray, float>("au_jaw_drop", 1.0f));
|
||||
blendshapeMap.insert("LipsLowerDown", QPair<QByteArray, float>("au_lower_lip_drop", 1.0f));
|
||||
blendshapeMap.insert("LipsUpperUp", QPair<QByteArray, float>("au_upper_lip_raiser", 1.0f));
|
||||
blendshapeMap.insert("LipsStretch_R", QPair<QByteArray, float>("au_lip_stretcher_left", 1.0f));
|
||||
blendshapeMap.insert("LipsUpperOpen", QPair<QByteArray, float>("au_upper_lip_raiser", 1.0f));
|
||||
blendshapeMap.insert("LipsStretch_R", QPair<QByteArray, float>("au_lip_stretcher_left", 0.5f));
|
||||
blendshapeMap.insert("MouthSmile_L", QPair<QByteArray, float>("au_lip_corner_depressor", -1.0f));
|
||||
blendshapeMap.insert("MouthSmile_R", QPair<QByteArray, float>("au_lip_corner_depressor", -1.0f));
|
||||
blendshapeMap.insert("LipsPucker", QPair<QByteArray, float>("au_lip_presser", 0.0f));
|
||||
blendshapeMap.insert("BrowsU_R", QPair<QByteArray, float>("au_left_outer_brow_raiser", 1.0f));
|
||||
blendshapeMap.insert("BrowsU_C", QPair<QByteArray, float>("au_left_inner_brow_raiser", 0.5f));
|
||||
blendshapeMap.insert("BrowsU_C", QPair<QByteArray, float>("au_left_inner_brow_raiser", 1.0f));
|
||||
blendshapeMap.insert("BrowsD_R", QPair<QByteArray, float>("au_left_brow_lowerer", 1.0f));
|
||||
blendshapeMap.insert("EyeBlink_L", QPair<QByteArray, float>("au_leye_closed", 1.0f));
|
||||
blendshapeMap.insert("EyeBlink_R", QPair<QByteArray, float>("au_leye_closed", 1.0f));
|
||||
blendshapeMap.insert("EyeSquint_L", QPair<QByteArray, float>("au_lid_tightener", 1.0f));
|
||||
blendshapeMap.insert("EyeSquint_R", QPair<QByteArray, float>("au_lid_tightener", 1.0f));
|
||||
blendshapeMap.insert("EyeBlink_R", QPair<QByteArray, float>("au_reye_closed", 1.0f));
|
||||
blendshapeMap.insert("EyeOpen_L", QPair<QByteArray, float>("au_upper_lid_raiser", 1.0f));
|
||||
blendshapeMap.insert("EyeOpen_R", QPair<QByteArray, float>("au_upper_lid_raiser", 1.0f));
|
||||
blendshapeMap.insert("MouthLeft", QPair<QByteArray, float>("au_lower_lip_x_push", 0.0f));
|
||||
blendshapeMap.insert("LipsStretch_L", QPair<QByteArray, float>("au_lip_stretcher_right", 1.0f));
|
||||
blendshapeMap.insert("LipLowerOpen", QPair<QByteArray, float>("au_lower_lip_x_push", 1.0f));
|
||||
blendshapeMap.insert("LipsStretch_L", QPair<QByteArray, float>("au_lip_stretcher_right", 0.5f));
|
||||
blendshapeMap.insert("BrowsU_L", QPair<QByteArray, float>("au_right_outer_brow_raiser", 1.0f));
|
||||
blendshapeMap.insert("BrowsU_C", QPair<QByteArray, float>("au_right_inner_brow_raiser", 0.5f));
|
||||
blendshapeMap.insert("BrowsU_C", QPair<QByteArray, float>("au_right_inner_brow_raiser", 1.0f));
|
||||
blendshapeMap.insert("BrowsD_L", QPair<QByteArray, float>("au_right_brow_lowerer", 1.0f));
|
||||
|
||||
QMultiHash<QByteArray, QPair<int, float> > actionUnitNameMap;
|
||||
|
|
Loading…
Reference in a new issue