/read_license_plate

차량번호판 문자인식(OCR)

Primary LanguagePython

🔹 스마트 파킹 가이드 시스템

Python YOLO v3 Node JS Tesseract-OCR Super Resolution(WDSR) Image Processing

주차장에서 촬영한 영상을 통해 사용자에게 차량이 주차된 위치를 알려준다

전체 프로젝트 중 차량번호판 문자인식(OCR)에 해당하는 부분입니다

프로젝트 설명 및 시연 영상 링크: 스마트파킹가이드_시스템-YouTube

프로젝트 파이프라인

image


Flow Chart

image


이미지 분할

이미지 분할이란 이미지에 존재하는 특정 객체를 인식하기 위해 전처리 과정을 하는 것이다.
차량 번호판 이미지를 input 데이터로 설정하고, 이미지 분할을 진행한다.

image
그림 2) 이미지 외곽 추출

그림2는 번호판 이미지의 외곽을 추출한 것이다.
이미지 내부 객체들의 외곽을 추출하여 각각의 객체를 담은 contour box를 생성한다.
가운데 7개의 contour box는 번호판 내부 문자를 나타내는 것이다.
이를 제외한 다른 것은 모두 불필요한 contour box이므로 코드 구현을 통해 제거했다.

image
그림 3) 이미지 분할 처리 완성

그림3은 불필요한 객체를 나타내는 box를 모두 제거하고 난 뒤의 모습이다.
이미지 분할을 적용시킨 전처리 후의 이미지로
tesseract OCR를 사용하여 문자를 인식한 결과 인식률이 향상된 것을 알 수 있다.

  • 이미지 분할 적용 전
    image

  • 이미지 분할 적용 후
    image

  • 인식 결과
    image


이미지 이진화

이미지 프로세싱의 최종 단계로 이미지 이진화를 통해 차량 번호판 인식률을 향상시켰다.

  • 이진화 적용 및 인식 결과
    image