Detect depression from communication: how computer vision, signal processing, and sentiment analysis join forces Aven Samareh, Yan Jin, Zhangyang Wang, Xiangyu Chang & Shuai Huang """ """extract origin training set data or feature data into sqlite db; """ #这部分 我好像已经做过了 import pandas as pd from sqlalchemy import create_engine, MetaData import config import global_values from common.sql_handler import SqlHandler import common.log_handler as log_handler logger = log_handler.get_logger() #把PHQ8两张表存入数据库中 def data_set(): df_train = pd.read_csv(config.data_dir + global_values.TRAIN_SET_NAME, header=0) df_dev = pd.read_csv(config.data_dir + global_values.DEL_SET_NAME, header=0) logger.debug(df_dev.head()) sql_handler = SqlHandler() sql_handler.execute(f'drop table {config.tbl_develop_set}') sql_handler.execute(f'drop table {config.tbl_training_set}') sql_handler.df_to_db(df_train, config.tbl_training_set)
""" Extract aduio Low-Level Descriptors via OpenSMILE. """ import config import os import pandas as pd from concurrent.futures import ThreadPoolExecutor, as_completed from common.log_handler import get_logger from common.sql_handler import SqlHandler from global_values import * logger = get_logger() # feature_type = 'egemaps' # feature_type = 'mfcc' def extract_audio(sample, prefix, opensmile_options, outputoption, feature_type): """Dispatch extraction tasks sample: phq-id like 310 prefix: phq file prefix like 310_ feature_type: mfcc or egemaps """ infilename = f"{config.sample_dir}/{prefix}P/{prefix}{SUFFIX['wav']}" outfilename = f'{sample}_{feature_type}.csv' opensmile_call = config.opensmile_exe + ' ' + opensmile_options + ' -inputfile ' + infilename + ' ' + outputoption + ' ' + outfilename + ' -instname ' + str( sample) + ' -output ?' os.system(opensmile_call) if os.path.exists(outfilename): df = pd.read_csv(outfilename, sep=';') else: return sample, feature_type