Spaces:
Sleeping
Sleeping
import os | |
import cv2 | |
import speech_recognition as sr | |
import dlib | |
import sys | |
os.environ['TF_ENABLE_ONEDNN_OPTS'] = '0' | |
from functions.eye_track import Facetrack | |
from functions.fer import Model | |
from functions.valence_arousal import load_models | |
from tensorflow.keras.models import load_model # type: ignore | |
def load_values(file_path): | |
values_dict = {} | |
with open(file_path, 'r') as file: | |
for line in file: | |
word, value = line.strip().split('\t') | |
values_dict[word.lower()] = float(value) | |
return values_dict | |
models_folder='models' | |
fer_model_path=os.path.join(models_folder,'22.6_AffectNet_10K_part2.pt') | |
arousal_dict_path=os.path.join(models_folder,'arousal-NRC-VAD-Lexicon.txt') | |
dominance_dict_path=os.path.join(models_folder,'dominance-NRC-VAD-Lexicon.txt') | |
valence_arousal_model=os.path.join(models_folder,'emotion_model.pt') | |
val_ar_feat_path=os.path.join(models_folder,'resnet_features.pt') | |
speech_model=os.path.join(models_folder,'speech.keras') | |
valence_dict_path=os.path.join(models_folder,'valence-NRC-VAD-Lexicon.txt') | |
print("Loading models ") | |
#Face detection models | |
dnn_net = cv2.dnn.readNetFromCaffe(os.path.join(models_folder,"deploy.prototxt"), os.path.join(models_folder,"res10_300x300_ssd_iter_140000.caffemodel")) | |
predictor = dlib.shape_predictor(os.path.join(models_folder,"shape_predictor_68_face_landmarks.dat")) | |
# print("face models loaded ") | |
#FER model | |
fer_model=Model(fps=30,fer_model=fer_model_path) | |
# print("fer model loaded ") | |
#Speech model | |
model_s = load_model(speech_model) | |
# print("speech model loaded ") | |
#Load valence,arousal,dominance_dicts | |
valence_dict = load_values(valence_dict_path) | |
arousal_dict = load_values(arousal_dict_path) | |
dominance_dict = load_values(dominance_dict_path) | |
#Loading valence_arousal_models | |
resnet,emotion_model=load_models(valence_arousal_model,val_ar_feat_path) | |
models_dict={ | |
'face':(dnn_net,predictor), | |
'speech':model_s, | |
'fer':fer_model, | |
'vad':(valence_dict,arousal_dict,dominance_dict), | |
"valence_fer":(resnet,emotion_model) | |
} | |
print("models loaded") |