현실 손글씨 이미지셋 전처리(컬러 사진) :
1.
1 2 3 4 5 6 7 8 9 0 손글씨 숫자를 나열한 컬러 사진을
그레이스케일 사진으로 변환
2.
숫자가 나열된 종이 이외의 노이즈(책상 등)를 전단 변환(Crop)으로 제거
3.
완전히 흑백 사진으로 바이너리화
4.
3의 이미지를 보면 점이나 빛으로 인한 노이즈가 있다.
이것을 모폴로지 연산을 통해 제거
5.
노이즈를 제거한 이진화 이미지에 대해
외각선 검출 findContours()를 사용해 객체 외곽선 배열을 얻고,
외곽선 배열을 응용해 숫자들의 사각형 행렬을 받아옴
6.
5에서 만약 객체 숫자가 실제 숫자보다 많을 경우
일정 크기 이상의 객체만을 다시 검출
7.
객체들의 사각형 행렬을 외곽선 x, y좌표에 대해 오름차순으로 정렬하고,
32*32 크기 이미지(MNIST 데이터 셋 크기)로 리사이즈해서 순서대로 저장
8.
위 방법으로 직접 얻은 데이터의 수가 부족하다면
MNIST 손글씨 데이터셋을 추가해 사용
출처 :
엣지 검출 미분 마스크에 기반해서 객체를 인식해야하는 줄 알았는데,
아예 외곽선 객체 인식을 해주는 함수가 따로 있었네요.
엣지 검출 미분 마스크 종류에는 이런게 있네요.
:
bkshin.tistory.com/entry/OpenCV-18-경계-검출-미분-필터-로버츠-교차-필터-프리윗-필터-소벨-필터-샤르-필터-라플라시안-필터-캐니-엣지
엣지 검출에 기반한 객체 인식을 한다면..
:
https://lyzqm.blogspot.com/2015/07/1-open-cv.html
'프로그래밍 > 머신러닝' 카테고리의 다른 글
YoLov1 신경망 각 레이어들 연산, 손실함수 담백한 리뷰 (0) | 2021.09.18 |
---|---|
[딥러닝] 합성곱 신경망(CNN) 편향 bias 계산 방법 (0) | 2021.03.19 |
[머신러닝 데이터 전처리] 훈련 세트, 테스트 세트, 검증 세트 차이 (0) | 2021.03.13 |
시그마, 인테그랄(적분) 뜻 (0) | 2020.09.27 |