한국인 성별과 나이 인식 모델 생성 및 사용 프로그램 (ML_FACE)
4차 산업
인공지능
적용분야
얼굴인식 응용 서비스
본 프로그램의 특징
한국인 이미지 데이터의 얼굴을 인식하여 특징을 추출하고 MLP(다층 퍼셉트론)을 이용하여 학습 후 예측한다. 성별은 Male과 Female로 구분하며, 나이는 10대부터 50대까지로 구분한다. 데이터가 부족할 경우 이미지를 회전, 반전, 조도 조절하여 학습 데이터 양을 늘린다.
주요기능
- 한국인 이미지 데이터의 얼굴을 인식하는 기능
- 인식한 얼굴의 128가지 특징 값을 추출하는 기능
- 추출한 특징 값을 MLP(다층 퍼셉트론)으로 학습하는 기능
- 테스트 이미지를 입력 값으로 받아 학습한 모델로 예측하는 기능
- 이미지를 회전, 반전, 조도 조절을 하여 학습 데이터 양을 조절하는 기능.
사용방법
- 본 소프트웨어는 한국인을 대상으로 한 성별 및 나이 인식 모델을 생성하기 때문에 한국인 안면 이미지 데이터 셋을 미리 구성해야한다.
- 데이터 셋의 파일 경로 및 파일 이름을 filepath라는 인덱스 아래에 작성하여 엑셀파일을 만든다.
- 작성한 엑셀 파일과 Data_extension 폴더의 python 파일들을 이용하여 데이터의 양을 조절한다. (명령 예시: python 12_brightness.py)
- matlab을 이용하여 파일 경로, 성별과 나이에 대한 라벨링을 포함한 7.3버전의 .mat 파일을 만든다. (라벨링은 Male, 10s, 20s, 30s, 40s, 50s 에 대하여 0과 1로 표현한다.)
- kfacefeature_extraction.py와 작성한 .mat 파일을 이용하여 특징 추출을 진행한다. (명령 예시: python --data_dir <your_data_dir> --save_feature <xxx.csv> --save_label <yyy.csv> kfacefeature_extraction.py)
- 추출한 두 개의 csv파일과 kfacetrain.py를 이용하여 학습 모델을 생성한다. (명령 예시: python --feature <xxx.csv> --label <yyy.csv> --save_model <your_model.pkl> kfacetrain.py)
- 테스트 셋을 구성하여 kfacepred.py로 예측한다. (명령 예시 : python --model <your_model.pkl> --input_dir <test_image_dir> --output_dir <result_image_dir> kfacepred.py)