move pkg, resources, dbm_lib, to under 1 opendbm directory
This commit is contained in:
29
opendbm/dbm_lib/config/config_derive_feature.py
Normal file
29
opendbm/dbm_lib/config/config_derive_feature.py
Normal file
@@ -0,0 +1,29 @@
|
||||
"""
|
||||
file_name: config_derive_feature
|
||||
project_name: DBM
|
||||
created: 2020-20-07
|
||||
"""
|
||||
|
||||
import yaml
|
||||
from opendbm.dbm_lib import DBMLIB_DERIVE_FEATURE_CONFIG
|
||||
|
||||
class ConfigDeriveReader(object):
|
||||
"""Summary
|
||||
Read sevice end ponit
|
||||
"""
|
||||
def __init__(self,
|
||||
feature_config_yml=None):
|
||||
"""Summary
|
||||
Args:
|
||||
feature_config_yml (None, optional): yml file defined service configuration
|
||||
"""
|
||||
|
||||
if feature_config_yml is None:
|
||||
feature_config = DBMLIB_DERIVE_FEATURE_CONFIG
|
||||
else:
|
||||
feature_config = feature_config_yml
|
||||
|
||||
with open(feature_config, 'r') as ymlfile:
|
||||
config = yaml.load(ymlfile)
|
||||
self.base_derive = config
|
||||
|
||||
277
opendbm/dbm_lib/config/config_raw_feature.py
Normal file
277
opendbm/dbm_lib/config/config_raw_feature.py
Normal file
@@ -0,0 +1,277 @@
|
||||
"""
|
||||
file_name: config_raw_feature
|
||||
project_name: DBM
|
||||
created: 2020-20-07
|
||||
"""
|
||||
|
||||
import yaml
|
||||
from opendbm.dbm_lib import DBMLIB_FEATURE_CONFIG
|
||||
|
||||
class ConfigRawReader(object):
|
||||
"""Summary
|
||||
Read sevice end ponit
|
||||
"""
|
||||
def __init__(self,
|
||||
feature_config_yml=None):
|
||||
"""Summary
|
||||
Args:
|
||||
feature_config_yml (None, optional): yml file defined service configuration
|
||||
"""
|
||||
|
||||
if feature_config_yml is None:
|
||||
feature_config = DBMLIB_FEATURE_CONFIG
|
||||
else:
|
||||
feature_config = feature_config_yml
|
||||
|
||||
with open(feature_config, 'r') as ymlfile:
|
||||
config = yaml.load(ymlfile)
|
||||
|
||||
#Verbal features
|
||||
self.base_raw = config
|
||||
self.err_reason = config['raw_feature']['error_reason']
|
||||
|
||||
#Output range
|
||||
self.mov_headvel_start = config['raw_feature']['mov_headvel_start']
|
||||
self.mov_headvel_end = config['raw_feature']['mov_headvel_end']
|
||||
|
||||
#Acoustic variable
|
||||
self.aco_int = config['raw_feature']['aco_int']
|
||||
self.aco_ff = config['raw_feature']['aco_ff']
|
||||
self.aco_voiceLabel = config['raw_feature']['aco_voiceLabel']
|
||||
self.aco_hnr = config['raw_feature']['aco_hnr']
|
||||
self.aco_gne = config['raw_feature']['aco_gne']
|
||||
self.aco_fm1 = config['raw_feature']['aco_fm1']
|
||||
self.aco_fm2 = config['raw_feature']['aco_fm2']
|
||||
self.aco_fm3 = config['raw_feature']['aco_fm3']
|
||||
self.aco_fm4 = config['raw_feature']['aco_fm4']
|
||||
self.aco_jitter = config['raw_feature']['aco_jitter']
|
||||
self.aco_shimmer = config['raw_feature']['aco_shimmer']
|
||||
self.aco_mfcc1 = config['raw_feature']['aco_mfcc1']
|
||||
self.aco_mfcc2 = config['raw_feature']['aco_mfcc2']
|
||||
self.aco_mfcc3 = config['raw_feature']['aco_mfcc3']
|
||||
self.aco_mfcc4 = config['raw_feature']['aco_mfcc4']
|
||||
self.aco_mfcc5 = config['raw_feature']['aco_mfcc5']
|
||||
self.aco_mfcc6 = config['raw_feature']['aco_mfcc6']
|
||||
self.aco_mfcc7 = config['raw_feature']['aco_mfcc7']
|
||||
self.aco_mfcc8 = config['raw_feature']['aco_mfcc8']
|
||||
self.aco_mfcc9 = config['raw_feature']['aco_mfcc9']
|
||||
self.aco_mfcc10 = config['raw_feature']['aco_mfcc10']
|
||||
self.aco_mfcc11 = config['raw_feature']['aco_mfcc11']
|
||||
self.aco_mfcc12 = config['raw_feature']['aco_mfcc12']
|
||||
self.aco_voiceFrame = config['raw_feature']['aco_voiceFrame']
|
||||
self.aco_totVoiceFrame = config['raw_feature']['aco_totVoiceFrame']
|
||||
self.aco_voicePct = config['raw_feature']['aco_voicePct']
|
||||
self.aco_pausetime = config['raw_feature']['aco_pausetime']
|
||||
self.aco_totaltime = config['raw_feature']['aco_totaltime']
|
||||
self.aco_speakingtime = config['raw_feature']['aco_speakingtime']
|
||||
self.aco_numpauses = config['raw_feature']['aco_numpauses']
|
||||
self.aco_pausefrac = config['raw_feature']['aco_pausefrac']
|
||||
|
||||
#Facial Action Unit (for consistency)
|
||||
self.fac_AU01int = config['raw_feature']['fac_AU01int']
|
||||
self.fac_AU02int = config['raw_feature']['fac_AU02int']
|
||||
self.fac_AU04int = config['raw_feature']['fac_AU04int']
|
||||
self.fac_AU05int = config['raw_feature']['fac_AU05int']
|
||||
self.fac_AU06int = config['raw_feature']['fac_AU06int']
|
||||
self.fac_AU07int = config['raw_feature']['fac_AU07int']
|
||||
self.fac_AU09int = config['raw_feature']['fac_AU09int']
|
||||
self.fac_AU10int = config['raw_feature']['fac_AU10int']
|
||||
self.fac_AU12int = config['raw_feature']['fac_AU12int']
|
||||
self.fac_AU14int = config['raw_feature']['fac_AU14int']
|
||||
self.fac_AU15int = config['raw_feature']['fac_AU15int']
|
||||
self.fac_AU17int = config['raw_feature']['fac_AU17int']
|
||||
self.fac_AU20int = config['raw_feature']['fac_AU20int']
|
||||
self.fac_AU23int = config['raw_feature']['fac_AU23int']
|
||||
self.fac_AU25int = config['raw_feature']['fac_AU25int']
|
||||
self.fac_AU26int = config['raw_feature']['fac_AU26int']
|
||||
self.fac_AU45int = config['raw_feature']['fac_AU45int']
|
||||
self.fac_AU01pres = config['raw_feature']['fac_AU01pres']
|
||||
self.fac_AU02pres = config['raw_feature']['fac_AU02pres']
|
||||
self.fac_AU04pres = config['raw_feature']['fac_AU04pres']
|
||||
self.fac_AU05pres = config['raw_feature']['fac_AU05pres']
|
||||
self.fac_AU06pres = config['raw_feature']['fac_AU06pres']
|
||||
self.fac_AU07pres = config['raw_feature']['fac_AU07pres']
|
||||
self.fac_AU09pres = config['raw_feature']['fac_AU09pres']
|
||||
self.fac_AU10pres = config['raw_feature']['fac_AU10pres']
|
||||
self.fac_AU12pres = config['raw_feature']['fac_AU12pres']
|
||||
self.fac_AU14pres = config['raw_feature']['fac_AU14pres']
|
||||
self.fac_AU15pres = config['raw_feature']['fac_AU15pres']
|
||||
self.fac_AU17pres = config['raw_feature']['fac_AU17pres']
|
||||
self.fac_AU20pres = config['raw_feature']['fac_AU20pres']
|
||||
self.fac_AU23pres = config['raw_feature']['fac_AU23pres']
|
||||
self.fac_AU25pres = config['raw_feature']['fac_AU25pres']
|
||||
self.fac_AU26pres = config['raw_feature']['fac_AU26pres']
|
||||
self.fac_AU28pres = config['raw_feature']['fac_AU28pres']
|
||||
self.fac_AU45pres = config['raw_feature']['fac_AU45pres']
|
||||
|
||||
#Facial Landmarks (for consistency)
|
||||
self.fac_LMK00disp = config['raw_feature']['fac_LMK00disp']
|
||||
self.fac_LMK01disp = config['raw_feature']['fac_LMK01disp']
|
||||
self.fac_LMK02disp = config['raw_feature']['fac_LMK02disp']
|
||||
self.fac_LMK03disp = config['raw_feature']['fac_LMK03disp']
|
||||
self.fac_LMK04disp = config['raw_feature']['fac_LMK04disp']
|
||||
self.fac_LMK05disp = config['raw_feature']['fac_LMK05disp']
|
||||
self.fac_LMK06disp = config['raw_feature']['fac_LMK06disp']
|
||||
self.fac_LMK07disp = config['raw_feature']['fac_LMK07disp']
|
||||
self.fac_LMK08disp = config['raw_feature']['fac_LMK08disp']
|
||||
self.fac_LMK09disp = config['raw_feature']['fac_LMK09disp']
|
||||
self.fac_LMK10disp = config['raw_feature']['fac_LMK10disp']
|
||||
self.fac_LMK11disp = config['raw_feature']['fac_LMK11disp']
|
||||
self.fac_LMK12disp = config['raw_feature']['fac_LMK12disp']
|
||||
self.fac_LMK13disp = config['raw_feature']['fac_LMK13disp']
|
||||
self.fac_LMK14disp = config['raw_feature']['fac_LMK14disp']
|
||||
self.fac_LMK15disp = config['raw_feature']['fac_LMK15disp']
|
||||
self.fac_LMK16disp = config['raw_feature']['fac_LMK16disp']
|
||||
self.fac_LMK17disp = config['raw_feature']['fac_LMK17disp']
|
||||
self.fac_LMK18disp = config['raw_feature']['fac_LMK18disp']
|
||||
self.fac_LMK19disp = config['raw_feature']['fac_LMK19disp']
|
||||
self.fac_LMK20disp = config['raw_feature']['fac_LMK20disp']
|
||||
self.fac_LMK21disp = config['raw_feature']['fac_LMK21disp']
|
||||
self.fac_LMK22disp = config['raw_feature']['fac_LMK22disp']
|
||||
self.fac_LMK23disp = config['raw_feature']['fac_LMK23disp']
|
||||
self.fac_LMK24disp = config['raw_feature']['fac_LMK24disp']
|
||||
self.fac_LMK25disp = config['raw_feature']['fac_LMK25disp']
|
||||
self.fac_LMK26disp = config['raw_feature']['fac_LMK26disp']
|
||||
self.fac_LMK27disp = config['raw_feature']['fac_LMK27disp']
|
||||
self.fac_LMK28disp = config['raw_feature']['fac_LMK28disp']
|
||||
self.fac_LMK29disp = config['raw_feature']['fac_LMK29disp']
|
||||
self.fac_LMK30disp = config['raw_feature']['fac_LMK30disp']
|
||||
self.fac_LMK31disp = config['raw_feature']['fac_LMK31disp']
|
||||
self.fac_LMK32disp = config['raw_feature']['fac_LMK32disp']
|
||||
self.fac_LMK33disp = config['raw_feature']['fac_LMK33disp']
|
||||
self.fac_LMK34disp = config['raw_feature']['fac_LMK34disp']
|
||||
self.fac_LMK35disp = config['raw_feature']['fac_LMK35disp']
|
||||
self.fac_LMK36disp = config['raw_feature']['fac_LMK36disp']
|
||||
self.fac_LMK37disp = config['raw_feature']['fac_LMK37disp']
|
||||
self.fac_LMK38disp = config['raw_feature']['fac_LMK38disp']
|
||||
self.fac_LMK39disp = config['raw_feature']['fac_LMK39disp']
|
||||
self.fac_LMK40disp = config['raw_feature']['fac_LMK40disp']
|
||||
self.fac_LMK41disp = config['raw_feature']['fac_LMK41disp']
|
||||
self.fac_LMK42disp = config['raw_feature']['fac_LMK42disp']
|
||||
self.fac_LMK43disp = config['raw_feature']['fac_LMK43disp']
|
||||
self.fac_LMK44disp = config['raw_feature']['fac_LMK44disp']
|
||||
self.fac_LMK45disp = config['raw_feature']['fac_LMK45disp']
|
||||
self.fac_LMK46disp = config['raw_feature']['fac_LMK46disp']
|
||||
self.fac_LMK47disp = config['raw_feature']['fac_LMK47disp']
|
||||
self.fac_LMK48disp = config['raw_feature']['fac_LMK48disp']
|
||||
self.fac_LMK49disp = config['raw_feature']['fac_LMK49disp']
|
||||
self.fac_LMK50disp = config['raw_feature']['fac_LMK50disp']
|
||||
self.fac_LMK51disp = config['raw_feature']['fac_LMK51disp']
|
||||
self.fac_LMK52disp = config['raw_feature']['fac_LMK52disp']
|
||||
self.fac_LMK53disp = config['raw_feature']['fac_LMK53disp']
|
||||
self.fac_LMK54disp = config['raw_feature']['fac_LMK54disp']
|
||||
self.fac_LMK55disp = config['raw_feature']['fac_LMK55disp']
|
||||
self.fac_LMK56disp = config['raw_feature']['fac_LMK56disp']
|
||||
self.fac_LMK57disp = config['raw_feature']['fac_LMK57disp']
|
||||
self.fac_LMK58disp = config['raw_feature']['fac_LMK58disp']
|
||||
self.fac_LMK59disp = config['raw_feature']['fac_LMK59disp']
|
||||
self.fac_LMK60disp = config['raw_feature']['fac_LMK60disp']
|
||||
self.fac_LMK61disp = config['raw_feature']['fac_LMK61disp']
|
||||
self.fac_LMK62disp = config['raw_feature']['fac_LMK62disp']
|
||||
self.fac_LMK63disp = config['raw_feature']['fac_LMK63disp']
|
||||
self.fac_LMK64disp = config['raw_feature']['fac_LMK64disp']
|
||||
self.fac_LMK65disp = config['raw_feature']['fac_LMK65disp']
|
||||
self.fac_LMK66disp = config['raw_feature']['fac_LMK66disp']
|
||||
self.fac_LMK67disp = config['raw_feature']['fac_LMK67disp']
|
||||
|
||||
#Facial features
|
||||
self.hap_exp = config['raw_feature']['hap_exp']
|
||||
self.sad_exp = config['raw_feature']['sad_exp']
|
||||
self.sur_exp = config['raw_feature']['sur_exp']
|
||||
self.fea_exp = config['raw_feature']['fea_exp']
|
||||
self.ang_exp = config['raw_feature']['ang_exp']
|
||||
self.dis_exp = config['raw_feature']['dis_exp']
|
||||
self.con_exp = config['raw_feature']['con_exp']
|
||||
self.happ_occ = config['raw_feature']['happ_occ']
|
||||
self.sad_occ = config['raw_feature']['sad_occ']
|
||||
self.sur_occ = config['raw_feature']['sur_occ']
|
||||
self.fea_occ = config['raw_feature']['fea_occ']
|
||||
self.ang_occ = config['raw_feature']['ang_occ']
|
||||
self.dis_occ = config['raw_feature']['dis_occ']
|
||||
self.con_occ = config['raw_feature']['con_occ']
|
||||
self.pos_exp = config['raw_feature']['pos_exp']
|
||||
self.neg_exp = config['raw_feature']['neg_exp']
|
||||
self.neu_exp = config['raw_feature']['neu_exp']
|
||||
self.cai_exp = config['raw_feature']['cai_exp']
|
||||
self.com_exp = config['raw_feature']['com_exp']
|
||||
self.com_lower_exp = config['raw_feature']['com_lower_exp']
|
||||
self.com_upper_exp = config['raw_feature']['com_upper_exp']
|
||||
self.pai_exp = config['raw_feature']['pai_exp']
|
||||
self.hap_exp_full = config['raw_feature']['hap_exp_full']
|
||||
self.sad_exp_full = config['raw_feature']['sad_exp_full']
|
||||
self.sur_exp_full = config['raw_feature']['sur_exp_full']
|
||||
self.fea_exp_full = config['raw_feature']['fea_exp_full']
|
||||
self.ang_exp_full = config['raw_feature']['ang_exp_full']
|
||||
self.dis_exp_full = config['raw_feature']['dis_exp_full']
|
||||
self.con_exp_full = config['raw_feature']['con_exp_full']
|
||||
self.pos_exp_full = config['raw_feature']['pos_exp_full']
|
||||
self.neg_exp_full = config['raw_feature']['neg_exp_full']
|
||||
self.neu_exp_full = config['raw_feature']['neu_exp_full']
|
||||
self.cai_exp_full = config['raw_feature']['cai_exp_full']
|
||||
self.com_exp_full = config['raw_feature']['com_exp_full']
|
||||
self.com_lower_exp_full = config['raw_feature']['com_lower_exp_full']
|
||||
self.com_upper_exp_full = config['raw_feature']['com_upper_exp_full']
|
||||
self.pai_exp_full = config['raw_feature']['pai_exp_full']
|
||||
self.fac_AsymMaskMouth = config['raw_feature']['fac_AsymMaskMouth']
|
||||
self.fac_AsymMaskEye = config['raw_feature']['fac_AsymMaskEye']
|
||||
self.fac_AsymMaskEyebrow = config['raw_feature']['fac_AsymMaskEyebrow']
|
||||
self.fac_AsymMaskCom = config['raw_feature']['fac_AsymMaskCom']
|
||||
|
||||
#Movement features
|
||||
self.head_vel = config['raw_feature']['head_vel']
|
||||
self.mov_blink_ear = config['raw_feature']['mov_blink_ear']
|
||||
self.vid_dur = config['raw_feature']['vid_dur']
|
||||
self.fps = config['raw_feature']['fps']
|
||||
self.mov_blinkframes = config['raw_feature']['mov_blinkframes']
|
||||
self.mov_blinkdur = config['raw_feature']['mov_blinkdur']
|
||||
self.mov_Hpose_Pitch = config['raw_feature']['mov_Hpose_Pitch']
|
||||
self.mov_Hpose_Yaw = config['raw_feature']['mov_Hpose_Yaw']
|
||||
self.mov_Hpose_Roll = config['raw_feature']['mov_Hpose_Roll']
|
||||
self.mov_Hpose_Dist = config['raw_feature']['mov_Hpose_Dist']
|
||||
|
||||
self.mov_freq_trem_freq = config['raw_feature']['mov_freq_trem_freq']
|
||||
self.mov_freq_trem_index = config['raw_feature']['mov_freq_trem_index']
|
||||
self.mov_freq_trem_pindex = config['raw_feature']['mov_freq_trem_pindex']
|
||||
self.mov_amp_trem_freq = config['raw_feature']['mov_amp_trem_freq']
|
||||
self.mov_amp_trem_index = config['raw_feature']['mov_amp_trem_index']
|
||||
self.mov_amp_trem_pindex = config['raw_feature']['mov_amp_trem_pindex']
|
||||
|
||||
self.fac_tremor_median_5 = config['raw_feature']['fac_tremor_median_5']
|
||||
self.fac_tremor_median_12 = config['raw_feature']['fac_tremor_median_12']
|
||||
self.fac_tremor_median_8 = config['raw_feature']['fac_tremor_median_8']
|
||||
self.fac_tremor_median_48 = config['raw_feature']['fac_tremor_median_48']
|
||||
self.fac_tremor_median_54 = config['raw_feature']['fac_tremor_median_54']
|
||||
self.fac_tremor_median_28 = config['raw_feature']['fac_tremor_median_28']
|
||||
self.fac_tremor_median_51 = config['raw_feature']['fac_tremor_median_51']
|
||||
self.fac_tremor_median_66 = config['raw_feature']['fac_tremor_median_66']
|
||||
self.fac_tremor_median_57 = config['raw_feature']['fac_tremor_median_57']
|
||||
|
||||
self.mov_leye_x = config['raw_feature']['mov_leye_x']
|
||||
self.mov_leye_y = config['raw_feature']['mov_leye_y']
|
||||
self.mov_leye_z = config['raw_feature']['mov_leye_z']
|
||||
self.mov_reye_x = config['raw_feature']['mov_reye_x']
|
||||
self.mov_reye_y = config['raw_feature']['mov_reye_y']
|
||||
self.mov_reye_z = config['raw_feature']['mov_reye_z']
|
||||
self.mov_eleft_disp = config['raw_feature']['mov_eleft_disp']
|
||||
self.mov_eright_disp = config['raw_feature']['mov_eright_disp']
|
||||
|
||||
#NLP features
|
||||
self.nlp_transcribe = config['raw_feature']['nlp_transcribe']
|
||||
self.nlp_numSentences = config['raw_feature']['nlp_numSentences']
|
||||
self.nlp_singPronPerAns = config['raw_feature']['nlp_singPronPerAns']
|
||||
self.nlp_singPronPerSen = config['raw_feature']['nlp_singPronPerSen']
|
||||
self.nlp_pastTensePerAns = config['raw_feature']['nlp_pastTensePerAns']
|
||||
self.nlp_pastTensePerSen = config['raw_feature']['nlp_pastTensePerSen']
|
||||
self.nlp_pronounsPerAns = config['raw_feature']['nlp_pronounsPerAns']
|
||||
self.nlp_pronounsPerSen = config['raw_feature']['nlp_pronounsPerSen']
|
||||
self.nlp_verbsPerAns = config['raw_feature']['nlp_verbsPerAns']
|
||||
self.nlp_verbsPerSen = config['raw_feature']['nlp_verbsPerSen']
|
||||
self.nlp_adjectivesPerAns = config['raw_feature']['nlp_adjectivesPerAns']
|
||||
self.nlp_adjectivesPerSen = config['raw_feature']['nlp_adjectivesPerSen']
|
||||
self.nlp_nounsPerAns = config['raw_feature']['nlp_nounsPerAns']
|
||||
self.nlp_nounsPerSen = config['raw_feature']['nlp_nounsPerSen']
|
||||
self.nlp_sentiment_mean = config['raw_feature']['nlp_sentiment_mean']
|
||||
self.nlp_mattr = config['raw_feature']['nlp_mattr']
|
||||
self.nlp_wordsPerMin = config['raw_feature']['nlp_wordsPerMin']
|
||||
self.nlp_totalTime = config['raw_feature']['nlp_totalTime']
|
||||
|
||||
67
opendbm/dbm_lib/config/config_reader.py
Normal file
67
opendbm/dbm_lib/config/config_reader.py
Normal file
@@ -0,0 +1,67 @@
|
||||
"""
|
||||
file_name: config_reader
|
||||
project_name: DBM
|
||||
created: 2020-20-07
|
||||
"""
|
||||
|
||||
import yaml
|
||||
from opendbm.dbm_lib import DBMLIB_SERVICE_CONFIG
|
||||
|
||||
class ConfigReader(object):
|
||||
"""Summary
|
||||
Read sevice end ponit
|
||||
"""
|
||||
def __init__(self,
|
||||
service_config_yml=None):
|
||||
"""Summary
|
||||
Args:
|
||||
service_config_yml (None, optional): yml file defined service configuration
|
||||
"""
|
||||
if service_config_yml is None:
|
||||
service_config = DBMLIB_SERVICE_CONFIG
|
||||
else:
|
||||
service_config = service_config_yml
|
||||
|
||||
with open(service_config, 'r') as ymlfile:
|
||||
config = yaml.load(ymlfile)
|
||||
self.input_dir = config['cdx_configuration']['input_dir']
|
||||
self.output_dir = config['cdx_configuration']['output_dir']
|
||||
self.out_derived_dir = config['cdx_configuration']['out_derived_dir']
|
||||
self.of_path = config['cdx_configuration']['open_face_path']
|
||||
self.facial_landmarks = config['cdx_configuration']['facial_landmarks']
|
||||
self.feature_group = config['cdx_configuration']['feature_group']
|
||||
|
||||
def get_open_face_path(self):
|
||||
"""Summary
|
||||
Returns:
|
||||
TYPE: end point
|
||||
"""
|
||||
return self.of_path
|
||||
|
||||
def get_input_dir(self):
|
||||
"""Summary
|
||||
Returns:
|
||||
TYPE: end point
|
||||
"""
|
||||
return self.input_dir
|
||||
|
||||
def get_output_dir(self):
|
||||
"""Summary
|
||||
Returns:
|
||||
TYPE: end point
|
||||
"""
|
||||
return self.output_dir
|
||||
|
||||
def get_out_derived_dir(self):
|
||||
"""Summary
|
||||
Returns:
|
||||
TYPE: end point
|
||||
"""
|
||||
return self.out_derived_dir
|
||||
|
||||
def get_fac_landmark_path(self):
|
||||
"""Summary
|
||||
Returns:
|
||||
TYPE: end point
|
||||
"""
|
||||
return self.facial_landmarks
|
||||
Reference in New Issue
Block a user