컴퓨터에게 사진은 숫자 표입니다. 그 숫자에서 '무엇이', '어디에', '어느 픽셀까지' 있는지를 알아내는 계산을 직접 해 봅니다. 작은 CNN은 이 브라우저에서 바로 학습하고, 검출과 분할은 결과를 재는 방법까지 손으로 확인합니다.
컬러 사진은 빨강·초록·파랑 세 장의 표이고, 픽셀마다 표마다 0~255 정수 하나가 들어 있습니다. 비전 모델이 하는 일은 모두 이 표에서 시작합니다. 숫자가 몇 개인지(해상도), 얼마나 잘게 나뉘는지(비트 깊이), 어떻게 퍼져 있는지(히스토그램).
그림을 누르거나 끌면 그 둘레 12×12 픽셀이 숫자로 나옵니다.
가장 단순한 '인식'입니다. 픽셀 숫자에 규칙 하나를 건 것이라, 물체가 아니라 색을 찾습니다. 탭 4가 여기서 이어집니다.
그림의 한 점을 눌러 색을 고릅니다.
분류는 그림 한 장에 이름표 하나를 붙입니다. 여기 자료는 네 가지 도형(원, 네모, 세모, 십자)을 크기·위치·회전·밝고 어두운 색·잡음을 바꿔 가며 코드로 그린 24×24 회색 그림입니다. 작은 합성곱 신경망(3×3 합성곱 2층과 풀링, 완전연결 1층, 매개변수 약 2,300개)이 바로 여기서 이것을 배웁니다. 비교로, 같은 수의 매개변수로 픽셀 576개를 그대로 쓰는 소프트맥스 회귀를 함께 학습합니다.
학습 2,000장(도형마다 500장), 시험은 모델이 학습에 쓰지 않는 다른 600장입니다.
행은 정답, 열은 예측. 칸을 누르면 그 시험 그림들이 나옵니다.
첫 층 필터(학습한 3×3 커널 8개, 파랑 +, 주황 −)와, 위 그림판의 그림에 대해 이것들이 만든 특징 지도.
둘째 층, 풀링 뒤: 4×4 지도 16장. 이것이 마지막 완전연결 층으로 들어갑니다.
검출기는 상자를 내놓고, 상자마다 범주와 확신 점수가 붙습니다. 상자가 맞았는지는 IoU로 정합니다. 예측 상자와 정답 상자가 겹친 넓이를 둘을 합친 넓이로 나눈 값입니다. 검출기는 겹치는 상자를 많이 내놓으므로, NMS(non-maximum suppression)가 점수가 가장 높은 상자를 남기고 거의 같은 상자들을 지웁니다. AP(average precision)는 점수 문턱을 내릴 때 정밀도와 재현율이 어떻게 바뀌는지를 숫자 하나로 요약합니다. 아래 예측 상자는 모델이 아니라 규칙으로 만든 교육용 예시입니다(정답 상자를 흔들고, 겹치게 복제하고, 틀린 상자를 몇 개 더함).
상자 안을 끌면 옮기고, 오른쪽 아래 모서리 가까이를 끌면 크기를 바꿉니다. 흔한 기준은 IoU 0.5 이상이면 맞음이고, 더 엄격한 평가는 0.5~0.95를 평균합니다.
행을 누르면 위 장면에서 그 상자를 표시합니다.
분할은 모든 픽셀에 이름표를 붙입니다. 심층 신경망 전에는 밝기 문턱(Otsu가 자동으로 고름), 픽셀 색 묶기(k-평균), 씨앗에서 영역 키우기가 기본 도구였습니다. 지금도 쓸모 있고, 이것들이 틀리는 곳이 학습한 모델이 더 잘해야 하는 곳입니다. 합성 장면은 정답 마스크를 정확히 알기 때문에 모든 결과를 IoU와 Dice로 잽니다.
위 색을 눌러 어느 무리를 '물체'로 볼지 고르면 점수가 바뀝니다.
물체 안을 누르세요. 누른 픽셀과 색이 허용 거리 안인 붙은 픽셀로 영역이 퍼집니다. 너무 작으면 구멍이 나고, 너무 크면 배경으로 샙니다.
모델은 학습한 그림과 실제로 만나는 그림이 닮은 만큼만 잘합니다. 조명, 대비, 센서 잡음, 시야를 가리는 것, 초점, 다른 모양새의 물체는 모두 입력을 학습한 것에서 멀어지게 합니다. 여기서는 탭 2의 CNN을 같은 시험 그림 600장에 변화를 하나씩 주며 시험합니다.
학습한 도형은 모두 속이 찬 것이었습니다. 사람은 똑같이 쉽게 읽는 윤곽선 도형으로 같은 모델을 시험해 보세요. 그다음 윤곽선 그림 몇백 장을 학습 자료에 더해 다시 학습해 봅니다.
교육용 페이지입니다. 도형 그림과 장면은 코드로 만든 합성 자료이고, 검출 탭의 예측 상자는 규칙으로 만든 예시이며 모델 출력이 아닙니다. 직접 연 사진은 브라우저 안에서만 처리합니다.