ML, OpenCV/딥러닝 손글씨 인식(3)
-
MNIST 데이터를 이용한 글자 인식 프로그램 (3)
결과, 정확도 결과 덤프 화면은 아래 그림과 같습니다. *정확도 기본 학습 데이터 Accuracy:0.9758616 역전파 Accuracy:0.97534880086174 오차 역전파 Accuracy:0.9118631680482993 CNN Accuracy:0.41925920819255125 문제점 같은 이미지로 비교한 결과 여러가지 문제점들이 발견되었습니다. 다른 학습 방법들의 예측결과를 비교한 결과 기본학습데이터의 정확도가 가장 높았습니다. 그리고 가장 높은 정확도를 가질 것이라고 예상했던 CNN이 가장 낮게 나왔습니다. 문제 파악을 위해 입력데이터에 다른 이미지를 사용해봤는데 CNN을 제외한 나머지는 숫자를 얼마나 정확하게 그리는지에 따라서 정확도의 편차가 큰 것을 확인 할 수 있었고 CNN은 정답도..
2019.10.08 -
MNIST 데이터를 이용한 글자 인식 프로그램 (2)
OpenCV로 결과 나타내기 직접 그린 손 글씨를 어떤 숫자로 인식했고 어느 정도의 정확도가 나왔는지 확인하기 위해 openCV를 사용해 결과를 출력했습니다. dst[:,:] = 0 #지우기 b,g,r,a = 0,255,0,0 cv2.putText(dst, text1, (0,15), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (b,g,r), 1, cv2.LINE_AA) cv2.putText(dst, text2, (160,360), cv2.FONT_HERSHEY_SIMPLEX, 10, (b,g,r), 3, cv2.LINE_AA) ## 정답그리기 cv2.imshow('dst', dst) Colored by Color Scripter CV창에는 이미 손 글씨가 그려져 있는 상태이기 때문에 CV창을..
2019.10.08 -
MNIST 데이터를 이용한 글자 인식 프로그램 (1)
요약 기계학습은 인공지능의 한 분야로 컴퓨터가 학습할 수 있도록 하는 알고리즘과 기술을 사용하여 학습하는 것을 말합니다. 이 프로젝트에서는 손 글씨로 된 숫자 데이터로 이루어진 MNIST 데이터를 사용하여 학습합니다. 사용자가 직접 그린 손 글씨 이미지를 학습된 매개변수로 이루어진 신경망을 통과시켜 어떤 수를 입력했는지 판단하고 정확도를 출력하는 코드 작성을 목표로 합니다. 완성된 코드를 바탕으로 단순 신경망을 통한 학습이외에도 오차역전파법, CNN을 사용한 학습 데이터를 사용하여 각각의 정확도를 비교합니다. 프로젝트 준비(설계) 코드의 실행순서를 간략하게 요약하면 다음과 같습니다. 1. 코드를 실행시키면 CV창이 보여지고 사용자가 CV창에 마우스를 사용해서 숫자를 그립니다. 2. 스페이스바를 누르면 2..
2019.10.08