Dataset Download 주소 URBAN SOUND DATASETS
- 0 = air_conditioner( 에어컨 소리 )
- 1 = car_horn( 차 경적 소리 ) <- 해당 소리에 반응
- 2 = children_playing( 아이들이 노는 소리 )
- 3 = dog_bark( 개가 짖는 소리 )
- 4 = engine_idling( 자동차 엔진 소리 )
- 5 = gun_shot( 총 소리 )
- 6 = jackhammer( 착암기 소리 )
- 7 = siren( 사이렌 소리 ) <- 해당 소리에 반응
- 8 = speech( 사람 말소리 )
- 9 = street_music( 길거리 음악 소리 )
10가지의 도시 소리 중 청각 장애인의 교통사고와 직결되는 자동차 경적 소리와 사이렌 소리에 반응하는 모델 설계( 10가지의 소리를 모두 학습 후 두가지의 경우에만 진동을 울리게 동작 )
- 1초가 넘어가는 음성의 경우) RMS -> Max Point -> 앞,뒤로 음성 자르기
- 1초가 체 안되는 음성의 경우) Zero Padding으로 강제적으로 1초짜리 음성 만들기 (차후 오류의 주원인)
- MFCC를 사용하여 WAV 파일을 2D 이미지화 (MFCC = 40 사용)
- conv2d - Maxpooling - conv2d - Maxpooling - Flatten - Dense 로 이어지는 2층의 신경망 사용
- 학습된 모델을 안드로이드에 이식하기위해 가중치를 동결 시킴.
- Application 실행 시 핸드폰이 실시간(0.2초마다)으로 녹음하여 input data를 thread가 돌아가며 받고 audio analysis를 진행하는 thread로 던짐
- 던져진 데이터를 분석하여 만약 결과가 1인 경적 소리나 8인 사이렌소리라면 Main thread에 전달하고 시각적 디스플레이(output)와 진동(output)이 울림