32
Fitness Check 알알알알 알알 2002-11890 알알알 2004-11944 알알알 2008-11595 알알알

Fitness Check 알고리즘 개발

  • Upload
    mimir

  • View
    53

  • Download
    0

Embed Size (px)

DESCRIPTION

Fitness Check 알고리즘 개발. 2002-11890 남태인 2004-11944 김현우 2008-11595 류석호. 목차. 1. 프로젝트 개괄. 2. 접근 방법. 3. 결과. 4. 결론 및 보완할 점. 프로젝트 개괄. Fit!. 프로젝트 개괄. Unfit!. 프로젝트 개괄. - 유 로 화를 대상으로 함 (5, 10, 20, 50, 100, 200, 500). - 기본 5 가지 사 항 에 대해 95% 이상의 hit ratio. - PowerPoint PPT Presentation

Citation preview

Page 1: Fitness Check  알고리즘 개발

Fitness Check 알고리즘 개발

2002-11890 남태인2004-11944 김현우2008-11595 류석호

Page 2: Fitness Check  알고리즘 개발

목차

1. 프로젝트 개괄

2. 접근 방법

3. 결과

4. 결론 및 보완할 점

Page 3: Fitness Check  알고리즘 개발

프로젝트 개괄

Fit!

Page 4: Fitness Check  알고리즘 개발

프로젝트 개괄

Unfit!

Page 5: Fitness Check  알고리즘 개발

프로젝트 개괄

- 유로화를 대상으로 함 (5, 10, 20, 50, 100, 200, 500)

- 제시한 coding convention 준수

- 기본 5 가지 사항에 대해 95% 이상의 hit ratio

- 100 장의 데이터를 cpu time 10ms 에 처리 ( 인텔 i7 린필드 870 기준 )

- 추가로 7 가지 사항에 대한 알고리즘 개발 시 추가점수

Page 6: Fitness Check  알고리즘 개발

프로젝트 개괄

Page 7: Fitness Check  알고리즘 개발

접근 방법 - 지폐영상 전처리 ( GBC 포맷 )

Page 8: Fitness Check  알고리즘 개발

접근 방법 - 지폐영상 전처리 ( GBC 포맷 )

Page 9: Fitness Check  알고리즘 개발

접근 방법 – 코너 이미지의 활용

1. Rotate 시도- 너무 느리다 ( pixel skip 불가능 )

Page 10: Fitness Check  알고리즘 개발

접근 방법 – 코너 이미지의 활용

2. 변환 함수 제공

CCornerInfo::GetConverted

𝜽

Page 11: Fitness Check  알고리즘 개발

접근 방법 – 코너 이미지의 활용

변환 함수 속도 개선

Sin, Cos 계산시 float 연산 대신 interger 영역 활용iCos = fCos * 2^20

iCos 이용 후 결과값 >> 20

- 매우 빈번히 호출되는 함수

Page 12: Fitness Check  알고리즘 개발

정상권

soil ( 전체적인 얼룩 )

접근 방법 – soil & deinked

deinked ( 탈색 )

Page 13: Fitness Check  알고리즘 개발

접근 방법 – soil & deinked

1. 전체적인 grayscale 평균 이용 가능

정상권 grayscale 총합 + Threshhold > 대상 지폐의

grayscale 총합

De-inked

Grid Sampling 가능 ! 10 pixel grid

정상권 grayscale 총합 - Threshhold < 대상 지폐의

grayscale 총합

Soil

Page 14: Fitness Check  알고리즘 개발

접근 방법 – soil & deinked

- 오차를 줄이기 위해 모든 정상권종을 테스트권종 , 지폐방향별 평균값구하기

- 실행속도 향상을 위해 학습결과 File 로 Serialize

정상 권종 grayscale 총합 구하기

Page 15: Fitness Check  알고리즘 개발

접근 방법 – stain

정상권 stain ( 부분 얼룩 )

Page 16: Fitness Check  알고리즘 개발

접근 방법 – stain

Page 17: Fitness Check  알고리즘 개발

접근 방법 – stain

1. 정상권과 대상 지폐를 각 section 별로 나누어 RGB 합을 비교

정상권의 특정 sectionRGB 총합 * 0.85 > 대상 지폐의 같은 section

RGB 총합

2.1

정상권의 특정 sectionRGB 총합 * 0.93 > 대상 지폐의 같은 section

RGB 총합

2.2

이런 section 이 2 개 이상 인접해 있을 경우

Page 18: Fitness Check  알고리즘 개발

접근 방법 – graffiti

정상권 graffiti ( 낙서 )

Page 19: Fitness Check  알고리즘 개발

접근 방법 – graffiti

낙서가 눈에 잘 띄는 곳을 찾자

류석호바보

류석호바보

Page 20: Fitness Check  알고리즘 개발

접근 방법 – graffiti

정상권 같은 권종 , 같은 방향에서상하좌우 3pixel 영역이모두 흰색인 점들을 찾자

여기서도 Grid sampling

테스트할 지폐에서 위의 점들 중흰색인 점이 80% 미만이면

Graffiti

Page 21: Fitness Check  알고리즘 개발

접근 방법 – tear

정상권 tear ( 찢어짐 )

Page 22: Fitness Check  알고리즘 개발

접근 방법 – tear

1. 지폐의 태두리를 따라가며 지폐에 빈 공간이 나오는지 체크

2. 빈 공간이 나오면 그 부분의 가로 길이 , 세로 길이 , 대각선 길이를 체크

3. 찢어진 부분의 크기가 조건에 만족하는지 확인

수직 : 폭 4mm, 길이 8mm 이상 수평 : 폭 4mm, 길이 15mm 이상대각 : 폭 4mm, 길이 18mm 이상

1mm 길이 -> 약 2픽셀

Page 23: Fitness Check  알고리즘 개발

접근 방법 – hole ( 추가 구현 )

Page 24: Fitness Check  알고리즘 개발

접근 방법 – hole ( 추가 구현 )

1. 지폐를 처음부터 따라가며 지폐에 빈 공간이 나오는지 체크

2. 빈 공간이 나오면 그 점을 기준으로 구멍의 크기를 계산

3. 구멍난 부분의 크기가 조건에 만족하는지 확인

면적 : 10 ㎟ 이상 -> 약 40 픽셀

Page 25: Fitness Check  알고리즘 개발

결과 - soil

Page 26: Fitness Check  알고리즘 개발

결과 - deinked

Page 27: Fitness Check  알고리즘 개발

결과 - stain

Page 28: Fitness Check  알고리즘 개발

결과 - graffiti

Page 29: Fitness Check  알고리즘 개발

결과 - tear

Page 30: Fitness Check  알고리즘 개발

결과 - hole

Page 31: Fitness Check  알고리즘 개발

결론 및 보완할 점

Page 32: Fitness Check  알고리즘 개발

감사합니다