표제지
목차
ABSTRACT 9
I. 서론 10
1. 얼굴인식을 위한 기본 Algorithm 소개 12
가. Adaboost 알고리즘 12
II. 각 모듈 별 동작 특징과 하드웨어 구조 14
1. 얼굴인식 제어기(Face Detection Controller) 14
2. 적분 영상 처리(Integral image) 16
3. 영상 축소(Image resize) 19
4. 윈도우내 크기 20×20 (Update 20×20) 22
5. 얼굴 영역 검출(Boxfilter) 26
가. 데이터 길이 감소 방법(Reducing the word length) 29
6. FPGA 제어기(FPGA controller) 32
가. I2C 버스 프로토콜 32
나. 얼굴 인식 라인 생성(Draw_box) 34
다. 겹침 현상 제거(Overlap) 35
III. 하드웨어 구조 및 기능 37
1. 하드웨어 전체 모듈 구조 37
2. 얼굴 인식 시스템 하드웨어 데이터 흐름 구조 38
3. 각 모듈 기능 및 입출력 신호 정의 39
가. 얼굴 인식 제어 모듈(Face_detection_top) 39
나. 영상 축소 모듈(Imreszie_75) 40
다. 적분 영상 추출 모듈(Integrator) 42
라. 얼굴 인식 결과 출력 모듈(Box_filter_top) 43
마. 얼굴 인식 라인 생성 모듈(Draw_box) 45
4. 램 사용과 정의 47
가. 입력 영상 메모리(Original sram) 47
나. 이미지 축소 메모리(Block sram) 47
다. 적분 영상 처리 메모리(Integral sram) 47
IV. 하드웨어 설계 결과 및 기능 검증 48
1. 하드웨어 기능 검증 48
2. 시뮬레이션 결과 48
3. 합성 환경 및 성능 결과 50
4. FPGA 보드 화면 출력 결과 51
V. 결론 52
참고문헌 53
표 2.1. 영상 크기 계산 방법과 결과 22
표 2.2. 480×272 영상에 대한 사이클 계산 24
표 2.3. 1920×1080 영상에 대한 사이클 계산 25
표 3.1. 얼굴 인식 제어 모듈 입출력 핀 정의 40
표 3.2. 영상 축소 모듈 입출력 핀 정의 41
표 3.3. 적분 영상 추출 모듈 입출력 핀 정의 43
표 3.4. 얼굴 인식 결과 출력 모듈 입출력 핀 정의 44
표 3.5. 얼굴 인식 라인 생성 모듈 46
표 3.6. 입력 영상 메모리(Original sram) 47
표 3.7. 이미지 축소 메모리(Block sram) 47
표 3.8. 적분 영상 처리 메모리(Integral sram) 47
그림 1.1. 하알-유사 특징 집합 11
그림 1.2. 강한 분류기 추출 13
그림 1.3. 단계 검출 방법 13
그림 2.1. 단계 순서에 의한 동작 모듈도 14
그림 2.2. 얼굴 인식 제어기 동작 순서도 15
그림 2.3. 적분 영상 처리 데이터 흐름도 16
그림 2.4. 적분 영상 17
그림 2.5. 적분 영상 연산의 예 18
그림 2.6. 얼굴 입력 데이터와 적분 영상 18
그림 2.7. 비 얼굴 입력 데이터와 적분 영상 18
그림 2.8. 영상 축소 연산 방법 19
그림 2.9. 영상 축소 연산 통한 화면 크기 20
그림 2.10. 영상 축소의 데이터 흐름도 21
그림 2.11. 윈도우내 기본 크기 이미지 추출 23
그림 2.12. 윈도우내 데이터 저장순서 24
그림 2.13. 사용된 특징 벡터 개수 27
그림 2.14. 특징 벡터를 이용한 예제 27
그림 2.15. 사이클을 줄이기 위한 데이터 처리방법 28
그림 2.16. 과부하(Overflow)를 통한modulo연산 30
그림 2.17. I2C 버스와 장치간의 연결도 32
그림 2.18. I2C 버스와 장치간의 데이터 흐름도 33
그림 2.19. 얼굴 인식 라인 생성(Draw_box)과정 34
그림 2.20. 겹침 현상 제거 알고리즘 35
그림 2.21. 겹침 현상 제거의 필요성 36
그림 3.1. 모듈 전체 블록도 37
그림 3.2. 얼굴인식 시스템 하드웨어 데이터 흐름도 38
그림 3.3. 얼굴 인식 제어 모듈(Face_detection_top) 39
그림 3.4. 영상 축소 모듈(Imresize_75) 40
그림 3.5. 적분 영상 추출 모듈(Integrator) 42
그림 3.6. 얼굴 인식 결과 출력 모듈(Box_filter_top) 43
그림 3.7. 얼굴 인식 라인 생성 모듈 45
그림 4.1. 검증 순서도 48
그림 4.2. 이미지 축소의 수직/수평 방향 결과 값 비교 49
그림 4.3. 적분 영상 처리 결과 값 비교 49
그림 4.4. 최종 출력 값 비교 49
그림 4.5. 합성 결과 50
그림 4.6. 보드에서 출력 화면(1) 51
그림 4.7. 보드에서 출력 화면(2) 51