KR102161948B1 - 신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템 및 이의 주차 차량 위치 정보 제공 방법 - Google Patents

신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템 및 이의 주차 차량 위치 정보 제공 방법 Download PDF

Info

Publication number
KR102161948B1
KR102161948B1 KR1020200079197A KR20200079197A KR102161948B1 KR 102161948 B1 KR102161948 B1 KR 102161948B1 KR 1020200079197 A KR1020200079197 A KR 1020200079197A KR 20200079197 A KR20200079197 A KR 20200079197A KR 102161948 B1 KR102161948 B1 KR 102161948B1
Authority
KR
South Korea
Prior art keywords
output
feature map
vehicle
license plate
character
Prior art date
Application number
KR1020200079197A
Other languages
English (en)
Inventor
이홍기
이순기
김진호
Original Assignee
이홍기
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 이홍기 filed Critical 이홍기
Priority to KR1020200079197A priority Critical patent/KR102161948B1/ko
Application granted granted Critical
Publication of KR102161948B1 publication Critical patent/KR102161948B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0454
    • G06K2209/15
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/62Text, e.g. of license plates, overlay texts or captions on TV images
    • G06V20/625License plates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Image Analysis (AREA)
  • Traffic Control Systems (AREA)

Abstract

차량의 번호판의 문자를 인식하기 위해 프로세서와 메모리를 포함하는 이미지 분석 서버에 의해 수행되는 신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템의 주차 차량 위치 정보 제공 방법은 상기 프로세서는 차량의 번호판 영역을 포함하는 이미지를 카메라 모듈로부터 수신하는 단계, 상기 프로세서는 상기 차량의 번호판 영역에서 하나의 문자 영역을 인식하는 단계, 상기 프로세서는 인식된 하나의 문자 영역을 포함하는 이미지에 대해 제1컨볼루션 연산을 수행하여 제1출력 피처 맵을 출력하는 단계, 상기 프로세서는 상기 출력된 제1출력 피처 맵에 대해 샘플링을 적용하여 제2출력 피처 맵을 출력하는 단계, 상기 프로세서는 상기 제2출력 피처 맵에 대해 제2컨볼루션 연산을 수행하여 제3출력 피처 맵을 출력하는 단계, 상기 프로세서는 상기 출력된 제3출력 피처 맵에 대해 샘플링을 적용하여 제4출력 피처 맵을 출력하는 단계; 및 상기 프로세서는 상기 출력된 제4출력 피처 맵과, 상기 문자의 특징을 수치로 표현한 것으로 정의되며, 상기 문자 영역을 일정 영역들로 나누고 각 영역에 포함된 문자의 픽셀 개수이거나, 상기 문자의 높이를 따라 여러 개로 그려진 수평 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합이거나, 폭에 따라 여러 개로 그려진 수직 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합으로 정의될 수 있는 미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어(fully connected layer)를 이용하여 상기 하나의 인식된 문자 영역에서 문자를 인식하는 단계를 포함하며, 건물의 각 층마다 설치된 키오스크들 각각이 상기 차량의 운전자에게 현재 주차된 차량의 위치 정보와, 현재 운전자의 위치와 주차된 차량의 위치 정보 사이의 최단 이동 경로 정보를 제공하기 위해 상기 인식된 문자를 필요로 한다.

Description

신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템 및 이의 주차 차량 위치 정보 제공 방법 {Parking guidance system applied with vehicle license plate recognition technology using neural network and method of providing parking vehicle location information thereof}
본 발명은 신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템 및 이의 주차 차량 위치 정보 제공 방법에 관한 것으로, 상세하게는 자동차 번호판 문자 인식의 성능을 높을 수 있는 신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템 및 이의 주차 차량 위치 정보 제공 방법에 관한 것이다.
최근 건물의 규모가 커짐에 따라 주차장의 규모도 커지고 있다. 주차장의 규모가 크면 주차한 차량의 운전자는 자신의 차량을 어디에 주차했는지 알기가 어려워진다.
주차 유도 시스템은 차량을 빈 주차 공간으로 안내하여 주차를 유도하고 주차된 차량의 위치 정보와, 현재 운전자의 위치와 주차된 차량의 위치 정보 사이의 최단 이동 경로 정보를 제공하는 시스템이다.
주차된 차량의 위치 정보를 차량의 운전자에게 제공하기 위해서는 차량의 번호판 인식이 필요하다. 차량의 번호판 인식은 먼저 차량의 영상을 획득하고, 획득된 차량의 영상에서 번호판 영역을 추출한다. 그리고 나서 추출된 번호판 영역에서 문자 인식을 통해 차량의 번호판이 인식된다.
하지만, 차량과 카메라의 촬영 각도, 위치, 또는 주변의 빛에 따라 카메라에 의해 촬영된 비디오, 또는 이미지의 왜곡이 발생되고, 이에 차량의 번호판이 제대로 인식되지 않을 수 있다. 또한, 기존의 다양한 차량 번호판 형식, 신규 번호판 양식, 또는 국내와 다른 형식의 해외 번호판 형식 등은 차량의 번호판 인식을 어렵게 하게 하는 요인이 될 수 있다. 국내 및 해외의 새로운 번호판 규격에 대한 개발기간의 단축 및 신뢰성 확보를 위한 번호판 인식 기술이 요구된다.
한국 등록특허공보 제10-1999985호(2019.07.09.)
본 발명이 이루고자 하는 기술적인 과제는 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN(Convolutional Neural Network) 알고리즘에 같이 적용하는 신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템 및 이의 주차 차량 위치 정보 제공 방법을 제공하는 것이다.
본 발명의 실시 예에 따른 차량의 번호판의 문자를 인식하기 위해 프로세서와 메모리를 포함하는 이미지 분석 서버에 의해 수행되는 신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템의 주차 차량 위치 정보 제공 방법은 상기 프로세서는 차량의 번호판 영역을 포함하는 이미지를 수신하는 단계, 상기 프로세서는 상기 차량의 번호판 영역에서 문자 영역을 분류하는 단계, 상기 프로세서는 상기 분류된 문자 영역을 포함하는 이미지에 대해 제1컨볼루션 연산을 수행하여 제1출력 피처 맵을 출력하는 단계, 상기 프로세서는 상기 출력된 제1출력 피처 맵에 대해 샘플링을 적용하여 제2출력 피처 맵을 출력하는 단계, 상기 프로세서는 상기 제2출력 피처 맵에 대해 제2컨볼루션 연산을 수행하여 제3출력 피처 맵을 출력하는 단계, 상기 프로세서는 상기 출력된 제3출력 피처 맵에 대해 샘플링을 적용하여 제4출력 피처 맵을 출력하는 단계, 및 상기 프로세서는 상기 출력된 제4출력 피처 맵과, 제1미리 설정된 피처 맵을 완전히 연결하는 제1풀리 커넥티드 레이어(fully connected layer)를 이용하여 상기 분류된 문자 영역에서 문자를 인식하는 단계를 포함한다.
상기 풀리 커넥티드 레이어는 입력 레이어(input layer), 은닉 레이어(hidden layer), 및 출력 레이어(output layer)를 포함한다.
상기 은닉 레이어는 복수의 은닉 뉴런들(neurons)을 포함한다.
상기 미리 설정된 피처 맵의 특징들의 개수가 m(m은 2이상의 자연수)개이고, 상기 출력된 제4출력 피처의 특징들의 개수가 n개(n은 2이상의 자연수)일 때, 상기 복수의 은닉 뉴런들 중 j번째(j는 자연수) 은닉 뉴런의 입력 값(
Figure 112020066813325-pat00001
)은 다음의 수학식으로 표현된다.
[수학식]
Figure 112020066813325-pat00002
상기 복수의 은닉 뉴런들 중 j번째(j는 자연수) 은닉 뉴런의 출력 값(
Figure 112020066813325-pat00003
)은 다음의 수학식으로 표현된다.
[수학식]
Figure 112020066813325-pat00004
상기
Figure 112020088786553-pat00005
는 상기 a번째 특징에 대한 j번째 가중치를, 상기
Figure 112020088786553-pat00006
는 상기 미리 설정된 피처 맵의 특징들 중 a번째 특징을, 상기
Figure 112020088786553-pat00007
는 상기 c번째 결과 값에 대한 j번째 가중치를, 상기
Figure 112020088786553-pat00008
는 상기 출력된 제4출력 피처의 특징들 중 c번째 결과 값을, 상기
Figure 112020088786553-pat00009
는 j번째 오프셋(offset)을, 상기 함수 f()는 시그모이드(sigmoid) 함수를 나타낸다.
상기 출력 레이어는 복수의 출력 뉴런들을 포함한다.
상기 복수의 출력 뉴런들 중 k번째(k는 자연수) 출력 뉴런의 입력 값(
Figure 112020066813325-pat00010
)은 다음의 수학식으로 표현된다.
[수학식]
Figure 112020066813325-pat00011
상기 복수의 출력 뉴런들 중 k번째(k는 자연수) 출력 뉴런의 출력 값(
Figure 112020066813325-pat00012
)은 다음의 수학식으로 표현된다.
[수학식]
Figure 112020066813325-pat00013
상기
Figure 112020088786553-pat00014
는 상기 j번째 은닉 뉴런의 출력 값에 대한 k번째 가중치를, 상기
Figure 112020088786553-pat00015
는 상기 j번째 은닉 뉴런의 출력 값을, 상기
Figure 112020088786553-pat00016
는 k번째 오프셋을, 상기 함수 f()는 시그모이드(sigmoid) 함수를 나타낸다.
상기 i번째 입력 뉴런의 출력 값에 대한 j번째 가중치의 오차인 상기
Figure 112020066813325-pat00017
는 다음의 수학식으로 표현된다.
[수학식]
Figure 112020088786553-pat00115
상기
Figure 112020066813325-pat00019
는 상수로, 기존의 가중치를 줄이기 위해 가중치 감소 비율을, 상기
Figure 112020066813325-pat00020
는 가중치를 어느 정도로 업데이트할 것인지 결정하는 학습율을 나타낸다.
상기 j번째 은닉 뉴런의 출력 값에 대한 k번째 가중치의 오차인 상기
Figure 112020066813325-pat00021
는 다음의 수학식으로 표현된다.
[수학식]
Figure 112020088786553-pat00116
상기
Figure 112020088786553-pat00023
는 상수로, 기존의 가중치를 줄이기 위해 가중치 감소 비율을, 상기
Figure 112020088786553-pat00024
는 가중치를 어느 정도로 업데이트할 것인지 결정하는 학습율을, 상기
Figure 112020088786553-pat00025
는 복수의 출력 뉴런들 중 k번째 뉴런의 에러를, 상기 f'(zk)는
Figure 112020088786553-pat00117
를 나타낸다.
본 발명의 실시 예에 따른 이미지 분석 서버는 신경망을 이용한 차량 번호판 인식 기술에 관한 명령들을 저장하는 메모리, 및 상기 명령들을 실행하는 프로세서를 포함한다.
상기 명령들은 상기 프로세서는 차량의 번호판 영역을 포함하는 이미지를 수신하고, 상기 차량의 번호판 영역에서 문자 영역을 분류하며, 분류된 문자 영역을 포함하는 이미지에 대해 제1컨볼루션 연산을 수행하여 제1출력 피처 맵을 출력하며, 상기 출력된 제1출력 피처 맵에 대해 샘플링을 적용하여 제2출력 피처 맵을 출력하며, 상기 제2출력 피처 맵에 대해 제2컨볼루션 연산을 수행하여 제3출력 피처 맵을 출력하며, 상기 출력된 제3출력 피처 맵에 대해 샘플링을 적용하여 제4출력 피처 맵을 출력하며, 상기 출력된 제4출력 피처 맵과, 미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어를 이용하여 상기 분류된 문자 영역에서 문자를 인식하도록 구현된다.
본 발명의 실시 예에 따른 주차 유도 시스템은 차량을 촬영하고, 촬영된 이미지에서 차량의 번호판 영역을 포함하는 이미지를 전송하는 카메라 모듈, 상기 촬영된 차량의 번호판 영역을 포함하는 이미지에서 차량의 번호판을 인식하는 이미지 분석 모듈, 각각이 각층의 주차 가능 대수를 표시하는 복수의 입구 가이드 디스플레이들, 및 각각이 현재 층에서 주차 가능 대수를 표시하는 복수의 층 가이드 디스플레이들을 포함한다.
상기 이미지 분석 모듈은 신경망을 이용한 차량 번호판 인식 기술에 관한 명령들을 저장하는 메모리, 및 상기 명령들을 실행하는 프로세서를 포함한다.
상기 명령들은 상기 프로세서는 차량의 번호판 영역을 포함하는 이미지를 수신하고, 상기 차량의 번호판 영역에서 문자 영역을 분류하며, 상기 분류된 문자 영역을 포함하는 이미지에 대해 제1컨볼루션 연산을 수행하여 제1출력 피처 맵을 출력하며, 상기 출력된 제1출력 피처 맵에 대해 샘플링을 적용하여 제2출력 피처 맵을 출력하며, 상기 제2출력 피처 맵에 대해 제2컨볼루션 연산을 수행하여 제3출력 피처 맵을 출력하며, 상기 출력된 제3출력 피처 맵에 대해 샘플링을 적용하여 제4출력 피처 맵을 출력하며, 상기 출력된 제4출력 피처 맵과, 미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어를 이용하여 상기 분류된 문자 영역에서 문자를 인식하도록 구현된다.
본 발명의 실시 예에 따른 신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템 및 이의 주차 차량 위치 정보 제공 방법은 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN(Convolutional Neural Network) 알고리즘에 같이 적용하여 차량 번호판을 인식함으로써 보다 정확하게 차량 번호판을 인식할 수 있어 주차 차량 위치 정보 제공의 효율성을 높일 수 있다는 효과가 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 상세한 설명이 제공된다.
도 1은 본 발명의 일 실시 예에 따른 주차 유도 시스템이 적용되는 주차장의 블록도를 나타낸다.
도 2는 본 발명의 다른 실시 예에 따른 주차 유도 시스템이 적용되는 주차장의 블록도를 나타낸다.
도 3은 도 2에 도시된 카메라 모듈에 의해 촬영된 이미지들을 나타낸다.
도 4는 본 발명의 일 실시 예에 따른 주차 유도 시스템의 블록도를 나타낸다.
도 5는 도 4에 도시된 이미지 분석 서버의 차량 번호판 인식 동작을 설명하기 위한 흐름도를 나타낸다.
도 6은 도 4에 도시된 이미지 분석 서버의 동작을 설명하기 위해 이미지 분석 서버의 프로세서에 의해 처리된 이미지들을 나타낸다.
도 7은 도 4에 도시된 이미지 분석 서버의 동작을 설명하기 위해 이미지 분석 서버의 프로세서에 의해 처리된 다른 이미지들을 나타낸다.
도 8은 도 4에 도시된 프로세서에 의해 처리되는 CNN 알고리즘의 블록도를 나타낸다.
도 9는 도 8에 도시된 입력 피처 맵과 출력 피처 맵 사이의 관계를 설명하기 위한 블록도를 나타낸다.
도 10은 도 4에 도시된 프로세서에 의해 처리되는 신경망 알고리즘의 블록도의 일 실시 예를 나타낸다.
도 11은 도 4에 도시된 프로세서에 의해 처리되는 신경망 알고리즘의 블록도의 다른 실시 예를 나타낸다.
도 12는 도 4에 도시된 프로세서에 의해 처리되는 신경망 알고리즘의 블록도의 또 다른 실시 예를 나타낸다.
도 13은 도 10에 도시된 신경망 알고리즘의 학습에 따른 과적합 왜곡의 그래프를 나타낸다.
도 14는 도 13에 도시된 과적합 왜곡의 문제점을 해소하기 위한 그래프를 나타낸다.
도 15는 도 4에 도시된 프로세서에 의해 처리되는 신경망 알고리즘의 블록도의 또 다른 실시 예를 나타낸다.
도 16은 혼동가능성이 있는 숫자들의 차이를 나타내는 이미지들이다.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시 예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시 예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되지 않는다.
본 발명의 개념에 따른 실시 예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시 예들을 도면에 예시하고 본 명세서에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1구성요소는 제2구성요소로 명명될 수 있고, 유사하게 제2구성요소는 제1구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 나타낸다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다.
도 1은 본 발명의 일 실시 예에 따른 주차 유도 시스템이 적용되는 주차장의 블록도를 나타낸다.
도 1을 참고하면, 주차 유도 시스템(100-1)은 카메라 모듈(113, 또는 115)을 포함한다. 레이스웨이(raceway, 109, 또는 111)에 설치된 카메라 모듈(113, 또는 115)은 서로 반대편 주차면(101, 또는 103)에 주차된 차량(105, 또는 107)을 촬영한다. 예컨대, 제1레이스웨이(109)에 설치된 제1카메라 모듈(113)은 제2주차면(103)에 주차된 차량(107)을 촬영할 수 있다. 제2레이스웨이(111)에 설치된 제2카메라 모듈(115)은 제1주차면(101)에 주차된 차량(105)을 촬영할 수 있다. 카메라 모듈(113, 115)은 한 번에 4개의 차량을 동시에 촬영할 수 있다.
카메라 모듈(113, 115)은 카메라와 LED를 포함한다. 주차면(101, 103)에 차량이 없을 때, 상기 LED는 녹색의 빛을 발산할 수 있다. 주차면(101, 103)에 차량이 있을 때, 상기 LED는 빨간색 빛을 발산할 수 있다.
도 2는 본 발명의 다른 실시 예에 따른 주차 유도 시스템이 적용되는 주차장의 블록도를 나타낸다.
도 2를 참고하면, 주차 유도 시스템(100-2)은 카메라 모듈(123, 또는 125)을 포함한다. 레이스웨이(121)에 설치된 카메라 모듈(123, 또는 125)은 동시에 양쪽의 주차면들(127과 129, 또는 131과 133)에 주차된 차량들(135와 137, 또는 139와 141)을 촬영할 수 있다. 예컨대, 레이스웨이(121)에 설치된 제3카메라 모듈(123)은 제3, 4주차면(127과 129)에 주차된 차량들(135와 137)을 촬영할 수 있다. 레이스웨이(121)에 설치된 제4카메라 모듈(125)은 제5, 6주차면(131과 133)에 주차된 차량들(139와 141)을 촬영할 수 있다. 즉, 카메라 모듈(123, 125)은 레이스웨이(121)을 기준으로 360도 방향으로 촬영이 가능하다. 마찬가지로, 카메라 모듈(123, 125)은 카메라와 LED를 포함한다.
도 3은 도 2에 도시된 카메라 모듈에 의해 촬영된 이미지들을 나타낸다.
도 3의 (a)는 카메라 모듈(123, 또는 125)에 의해 촬영된 이미지를 나타내며, 도 3의 (b)는 도 3의 (a)의 이미지를 분할한 이미지를 나타낸다.
도 3의 (b)에서 사각형 박스들은 차량 번호판 인식을 위한 관심 영역(ROI)을 나타낸다. 카메라 모듈(123, 또는 125)은 도 3의 (a)와 같이 촬영된 이미지를 도 3의 (b)와 같이 분할된 이미지로 변환할 수 있다. 또한, 카메라 모듈(123, 또는 125)은 도 3의 (a)과 같이 촬영된 이미지에서 관심 영역(ROI)을 추출할 수 있다. 카메라 모듈(123, 또는 125)은 도 3의 (b)에 도시된 이미지 전체, 또는 관심 영역(ROI)을 포함하는 이미지를 이미지 분석 서버(미도시)로 전송할 수 있다. 또한, 실시 예에 따라 카메라 모듈(123, 또는 125)은 도 3의 (b)에 도시된 이미지 전체, 또는 관심 영역(ROI)을 포함하는 이미지를 이미지 분석 모듈(미도시)로 전송할 수 있다. 상기 이미지 분석 모듈은 차량 번호 인식 장치(미도시)에서 구현될 수 있다.
상기 이미지 분석 모듈은 프로세서(미도시)와 메모리(미도시)를 포함한다. 상기 프로세서(미도시)는 차량의 번호판의 문자를 인식하기 위해 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN(Convolutional Neural Network) 알고리즘에 같이 적용한 차량 번호판 인식 기술을 실행한다. 상기 메모리는차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN(Convolutional Neural Network) 알고리즘에 같이 적용하는 차량 번호판 인식 기술에 대응되는 명령들을 저장한다. 상기 프로세서와 상기 메모리의 구체적인 동작은 뒤에 자세히 설명될 프로세서(310)와 메모리(320)의 동작과 유사하다. 프로세서(310)와 메모리(320)는 이미지 분석 서버(300)의 구성요소들이다.
도 4는 본 발명의 일 실시 예에 따른 주차 유도 시스템의 블록도를 나타낸다.
도 4를 참고하면, 주차 유도 시스템(100)은 복수의 카메라 모듈들(140, 150, 160, 및 170), 복수의 입구 가이드 디스플레이들(141, 151, 161, 및 171), 복수의 층 가이드 디스플레이들(143, 153), 복수의 키오스크들(145, 155, 163, 및 173), 복수의 SCU(Sub Control units; 147, 157), 복수의 MCU(Main Control units; 149, 159, 169, 및 179), 스위치(180), API 서버(190), NVR(Network Video Recorder; 200), 이미지 분석 서버(300), 가이드 서버(220), 및 모니터링 서버(230)를 포함한다.
복수의 카메라 모듈들(140, 150, 160, 및 170)은 건물의 지하 2층(B02)부터 지상 3층(F03) 각각에 설치된다. 복수의 카메라 모듈들(140, 150, 160, 및 170)은 도 1에 도시된 카메라 모듈과 같이 서로 반대편 주차면에 주차된 차량을 촬영하는 카메라 모듈들일 수 있다. 또한, 실시 예에 따라 복수의 카메라 모듈들(140, 150, 160, 및 170)은 도 2에 도시된 카메라 모듈과 같이 360도 촬영이 가능한 카메라 모듈일 수 있다. 복수의 카메라 모듈들(140, 150, 160, 및 170)은 주차된 차량을 촬영하고, 촬영된 차량의 이미지를 스위치(180)를 통해 NVR(200), 이미지 분석 서버(300), 또는 모니터링 서버(230)로 전송한다. 복수의 카메라 모듈들(140, 150, 160, 및 170) 각각은 주차면에서 차량의 움직임의 검출이 가능한 카메라이다. 복수의 카메라 모듈들(140, 150, 160, 및 170) 각각은 주차면에서 차량의 움직임이 감지될 때 촬영된 차량의 이미지를 이미지 분석 서버(300)로 전송한다.
복수의 입구 가이드 디스플레이들(141, 151, 161, 및 171) 각각은 각 층의 주차 가능 대수를 표시한다. 복수의 층 가이드 디스플레이들(143, 153) 각각은 현재 층에서 주차 가능 대수를 표시한다. 복수의 키오스크들(145, 155, 163, 및 173)은 각 층마다 설치되며, 차량의 운전자에게 현재 주차된 차량의 위치 정보와, 현재 운전자의 위치와 주차된 차량의 위치 정보 사이의 최단 이동 경로 정보를 제공한다.
복수의 SCU(147, 157), 또는 복수의 MCU(149, 159, 169, 및 179)는 복수의 카메라 모듈들(140, 150, 160, 및 170), 복수의 입구 가이드 디스플레이들(141, 151, 161, 및 171), 복수의 층 가이드 디스플레이들(143, 153), 및 복수의 키오스크들(145, 155, 163, 및 173)과 연결된다. 복수의 SCU(147, 157), 또는 복수의 MCU(149, 159, 169, 및 179)는 복수의 카메라 모듈들(140, 150, 160, 및 170), 복수의 입구 가이드 디스플레이들(141, 151, 161, 및 171), 복수의 층 가이드 디스플레이들(143, 153), 및 복수의 키오스크들(145, 155, 163, 및 173)에 전원을 공급하고, 이들을 제어한다.
스위치(180)는 복수의 MCU(149, 159, 169, 및 179), API 서버(190), NVR(200), 이미지 분석 서버(300), 가이드 서버(220), 및 모니터링 서버(230)와 연결된다. 스위치(180)는 복수의 MCU(149, 159, 169, 및 179) 중 어느 하나를 통해 전송되는 주차 위치 정보, 차량의 이미지를 API 서버(190), NVR(200), 이미지 분석 서버(300), 가이드 서버(220), 및 모니터링 서버(230) 중 어느 하나로 전송할 수 있다.
API 서버(190)는 주차 관제를 위한 주차 요금 관제 시스템(미도시), 또는 주차 가능 정보를 필요로 하는 관공서의 서버 등과의 연계를 위한 장치이다.
NVR(200)은 보안 및 저장을 위한 목적으로 복수의 카메라 모듈들(140, 150, 160, 및 170) 중 어느 하나로부터 전송된 주차된 차량의 이미지를 저장한다. 일반적으로 주차장에서 별도의 보안용 CCTV 카메라가 설치되는 경우가 있다. 하지만, 복수의 카메라 모듈들(140, 150, 160, 및 170)은 2개의 채널을 이용하여 하나는 CCTV 카메라와 같은 방범용으로, 나머지 하나는 차량 번호판 인식을 위한 이미지 분석용으로 사용될 수 있다. 이 때, 별도의 보안용 CCTV 카메라를 설치할 필요 없이 하나의 카메라 모듈만을 이용하여 방범과 이미지 분석의 목적을 달성할 수 있어 비용 절감이 가능하다.
이미지 분석 서버(300)는 복수의 카메라 모듈들(140, 150, 160, 및 170) 중 어느 하나로부터 전송된 주차된 차량의 번호판 영역을 포함하는 이미지를 수신한다. 이미지 분석 서버(300)는 수신된 이미지에 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN(Convolutional Neural Network) 알고리즘에 같이 적용한 차량 번호판 인식 기술을 적용하여 차량의 번호판의 문자를 인식한다. 이미지 분석 서버(300)는 복수의 카메라 모듈들(140, 150, 160, 및 170) 각각으로부터 차량의 움직임이 감지될 때마다 차량의 이미지를 수신하고, 각각의 이미지에서 차량의 번호판의 문자를 인식한다. 이미지 분석 서버(300)는 각각 인식된 차량의 번호판의 문자에 대해 가중치를 적용한다. 이미지 분석 서버(300)는 가중치가 적용된 번호판의 문자에 대해 최종 문자를 확정한다.
이미지 분석 서버(300)는 프로세서(310)와 메모리(320)를 포함한다. 프로세서(310)는 차량의 번호판의 문자를 인식하기 위해 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN(Convolutional Neural Network) 알고리즘에 같이 적용한 차량 번호판 인식 기술을 실행한다. 메모리(320)는 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN(Convolutional Neural Network) 알고리즘에 같이 적용한 차량 번호판 인식 기술에 대응되는 명령들을 저장한다. 프로세서(310)와 메모리(320)의 구체적인 동작은 뒤에 자세히 설명될 것이다.
가이드 서버(220)는 각 층의 주차 가능 대수 정보, 특정 차량의 주차 위치 정보, 또는 현재 운전자의 위치와 주차된 차량의 위치 정보 사이의 최단 이동 경로 정보를 복수의 입구 가이드 디스플레이들(141, 151, 161, 및 171), 복수의 층 가이드 디스플레이들(143, 153), 또는 복수의 키오스크들(145, 155, 163, 및 173)에 제공한다.
모니터링 서버(230)는 복수의 카메라 모듈들(140, 150, 160, 및 170) 중 어느 하나로부터 전송된 주차된 차량의 이미지를 수신하여 주차된 차량을 모니터링하는데 이용된다.
도 5는 도 4에 도시된 이미지 분석 서버의 차량 번호판 인식 동작을 설명하기 위한 흐름도를 나타낸다. 도 6은 도 4에 도시된 이미지 분석 서버의 동작을 설명하기 위해 이미지 분석 서버의 프로세서에 의해 처리된 이미지들을 나타낸다.
도 4 내지 도 6을 참고하면, 복수의 카메라 모듈들(140, 150, 160, 및 170) 중 어느 하나는 주차된 차량을 촬영한다(S4001). 복수의 카메라 모듈들(140, 150, 160, 및 170) 중 어느 하나는 촬영된 차량의 이미지를 스위치(180)를 통해 이미지 분석 서버(300)로 전송한다. 상기 촬영된 차량의 이미지는 차량의 번호판 영역을 포함한다.
프로세서(310)는 촬영된 차량의 번호판 영역들을 포함하는 이미지를 이진화한다(S4003). 상기 번호판 영역들을 포함하는 이미지를 이진화하는 구체적인 알고리즘은 다음과 같다.
프로세서(310)는 번호판 영역들을 포함하는 이미지에 DoG(Difference of Gaussian) 필터를 적용하여 텍스트 획 후보들의 수평 경계점들을 추출하고 수평 획 경계점 지도(Horizontal Stroke Boundary Map)을 생성한다. 도 6의 (b)는 수평 획 경계점 지도의 이미지를 나타낸다. 프로세서(310)는 수평 경계점 연결선의 수직방향 누적을 통해 텍스트 획 사이의 픽셀을 그룹핑하여 세그멘트(segment) 이미지를 생성한다. 도 6의 (c)는 세그먼트 이미지를 나타낸다. 프로세서(310)는 상기 세그멘트 이미지에서 각각의 텍스트가 서로 다른 색깔을 갖도록 컬러 이미지를 생성한다. 도 6의 (d)는 상기 컬러 이미지를 나타낸다. 실시 예에 따라 상기 컬러 이미지 생성 동작은 생략될 수 있다. 프로세서(310)는 상기 컬러 이미지를 흑백 이미지로 변환한다. 도 6의 (a)는 흑백 이미지를 나타낸다.
도 5를 참고하면, 프로세서(310)는 문자 덩어리 분석(character blob analysis)을 수행한다. 프로세서(310)는 픽셀 덩어리들을 각각 인덱싱하여 픽셀 덩어리들의 위치 정보와 사이즈 정보를 계산하고, 인덱싱된 픽셀 덩어리들을 해석하여 번호판 후보 문자들을 추출한다(S4004).
프로세서(310)는 상기 추출된 번호판 후보 문자들에 따라 차량의 번호판 영역을 추출하고 잘라낸다(S4005). 프로세서(310)는 잘라낸 차량의 번호판 영역을 그레이스케일 이미지(grayscale image)로 변환한다.
프로세서(310)는 상기 잘라낸 번호판 영역의 선명도를 추정한다(S4006). 프로세서(310)는 선명도를 추정하고, 번호판 크기의 정규화와 기울기를 보정한다(S4007). 프로세서(310)는 선명도를 계산하고, 계산된 선명도가 일정값보다 큰지 판단한다(S4008). 프로세서(310)는 상기 계산된 선명도가 일정값보다 클 때, 선명도를 감소시킨다(S4009). 프로세서(310)는 상기 계산된 선명도가 일정값보다 작을 때, 상기 차량의 번호판 영역의 이미지를 향상시킨다(S4010).
프로세서(310)는 차량의 번호판 영역이 포함된 이미지에서 번호판 타입을 선택한다(S4011). 상기 번호판 타입은 싱글 라인(single line) 번호판, 또는 더블 라인(double line) 번호판으로 나눠질 수 있다. 또한, 상기 번호판 타입은 지명명이 포함되는지 여부로 분류될 수 있다. 프로세서(310)는 분류된 번호판 영역에서 문자 영역을 분류한다(S4012).
도 7은 도 4에 도시된 차량 번호 인식기의 동작을 설명하기 위해 차량 번호 인식기의 프로세서에 의해 처리된 다른 이미지들을 나타낸다. 구체적으로 도 7은 잘못된 문자 영역의 분류를 나타내는 이미지들이다. 분류된 번호판 영역에서 문자 영역의 분류 동작은 중요하다. 분류 동작이 잘못되면, 잘못된 문자로 인식될 수 있다.
프로세서(310)는 분류된 문자 영역에서 미리 설정된 피처 맵을 추출한다(S4013). 상기 미리 설정된 피처 맵은 문자의 특징을 수치로 표현한 것으로 정의된다. 상기 미리 설정된 피처 맵은 ANN 구조 신경망 알고리즘에서 입력으로 이용된다. 예컨대, 상기 미리 설정된 피처 맵은 문자 영역을 일정 영역들로 나누고 각 영역에 포함된 문자의 픽셀 개수로 정의될 수 있다. 또한, 상기 미리 설정된 피처 맵은 문자의 높이를 따라 여러 개로 그려진 수평 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합으로 정의될 수 있다. 또한, 상기 미리 설정된 피처 맵 폭에 따라 여러 개로 그려진 수직 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합으로 정의될 수 있다.
프로세서(310)는 분류된 문자 영역에서 CNN 알고리즘을 수행하여 CNN 피처 맵을 출력한다(S4014).
프로세서(310)는 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN(Convolutional Neural Network) 알고리즘에 같이 적용하여 차량 번호판을 인식한다(S4015). 즉, 프로세서(310)는 미리 설정된 피처 맵과 CNN 알고리즘을 통해 출력된 CNN 피처 맵을 입력으로 CNN 알고리즘을 적용하여 차량 번호판을 인식한다.
프로세서(310)는 문자열을 인식하고, 문자들의 종류 및 배치 규칙에 따라 오인식 여부를 판단하고, 최종 번호판 문자열 인식 결과를 출력한다(S4016). 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN(Convolutional Neural Network) 알고리즘에 같이 적용하는 것에 대해서는 뒤에서 자세히 설명될 것이다.
도 8은 도 4에 도시된 프로세서에 의해 처리되는 CNN 알고리즘의 블록도를 나타낸다.
도 4와 도 8을 참고하면, CNN(Convolutional Neural Network)는 딥 러닝(deep learning) 알고리즘으로, 이미지를 분석하는데 주로 이용된다.
CNN 알고리즘은 제1컨볼루션 레이어(convolution layer), 제1맥스 풀링 레이어(max pooling layer), 제2컨볼루션 레이어(convolution layer), 제2맥스 풀링 레이어(max pooling layer), 및 풀리 커넥티드 레이어(fully connected layer)를 포함한다.
프로세서(310)는 제1컨볼루션 레이어의 동작을 수행한다. 제1컨볼루션 레이어에서 동작은 아래와 같다.
프로세서(310)는 하나의 인식된 문자 영역을 포함하는 이미지를 수신한다. 상기 하나의 인식된 문자 영역을 포함하는 이미지에는 하나의 숫자, 하나의 영문자, 또는 하나의 한글이 포함된다. 상기 이미지는 0, 또는 1을 가지는 픽셀값들로 구성된다. 상기 이미지는 (가로 사이즈, 세로 사이즈, 채널의 수)로 표현된다. 이미지가 이진화될 때, 채널의 수는 1이다. 예컨대, 도 12에 도시된 이미지는 (28, 28, 1)로 표현될 수 있다.
프로세서(310)는 상기 수신된 이미지와 제1필터에 대해 컨볼루션 연산을 수행하여 제1컨볼루션 결과 값들을 출력한다. 상기 수신된 이미지는 입력 피처 맵(input feature map)으로 호칭될 수 있다. 상기 제1컨볼루션 결과 값들은 제1출력 피처 맵(output feature map)으로 호칭될 수 있다. 상기 제1필터는 매트릭스 형태로 구현되며, 상기 수신된 이미지에서 에지(edge)를 검출하거나 상기 수신된 이미지를 선명화하는데 이용된다. 각각의 목적에 따라 상기 매트릭스에 이용되는 정수는 다양할 수 있다. 상기 제1필터는 커널(kernel)이라고 호칭될 수 있다. 상기 제1필터는 (필터의 가로 사이즈, 필터의 세로 사이즈, 필터 채널의 수) x (필터의 개수)로 표현될 수 있다. 예컨대, 도 8에 도시된 제1필터는 (5, 5, 1) x 16으로 표현될 수 있다.
상기 컨볼루션 연산은 상기 수신된 이미지와 상기 제1필터의 컨볼루션을 의미한다. 이 때, 상기 제1필터에 가중치(weight)가 곱해질 수 있다. 컨볼루션 연산의 결과인 제1출력 피처 맵은 (가로 크기, 세로 크기, 필터의 개수)로 표현될 수 있다.
도 8에 도시된 상기 수신된 이미지인 입력 피처 맵이 (28, 28, 1)이고, 제1필터가 (5, 5, 1) x 16일 때, 제1출력 피처 맵은 (24, 24, 16)으로 표현될 수 있다.
도 9는 도 8에 도시된 입력 피처 맵과 출력 피처 맵 사이의 관계를 설명하기 위한 블록도를 나타낸다.
도 4, 도 8, 및 9를 참고하면, 입력 피처 맵이 (l-1)이고, 출력 피처 맵이 (l)이고, 필터 뱅크 w을 이용한 컨볼루션 연산은 다음의 수학식과 같다.
[수학식 1]
Figure 112020066813325-pat00026
상기
Figure 112020066813325-pat00027
는 k번째 피처 맵의 c번째 필터의 u행, v열에 위치한 뉴런의 가중치를, 상기
Figure 112020066813325-pat00028
는 입력 피처 맵(l-1)의 c 피처 맵의 (i+u)행, (j+v)열에 있는 뉴런의 출력을, 상기
Figure 112020066813325-pat00029
는 l층의 k번째 피처 맵의 바이어스를, 상기
Figure 112020066813325-pat00030
는 출력 피처 맵(l)의 k번째 출력 피처 맵에서 i행, j열에 위치한 뉴런의 출력을 의미한다. 상기 fc는 입력 피처 맵의 채널 개수, 상기 k는 필터 뱅크의 인덱스를, 상기 c는 입력 피처 맵의 인덱스를. 상기 u와 v는 필터의 가로, 세로 인덱스를 의미한다.
예컨대, 상기 제1맥스 풀링 레이어의 출력인 제2출력 피처 맵(12, 12, 16)이 입력 피처 맵(l-1)이고, 제2컨볼루션 레이어의 출력인 제3출력 피처 맵(10, 10, 24)이 출력 피처 맵(l)일 수 있다. 이 때, 제3필터((3, 3, 16) x 24)의 뱅크는 w일 수 있다.
도 8을 참고하면, 프로세서(310)는 제1맥스 풀링 레이어의 동작을 수행한다. 제1맥스 풀링 레이어에서 동작은 제1컨볼루션 레이어의 결과값인 제1출력 피처 맵에 제2필터를 적용하여 제2출력 피처 맵을 출력하는 것을 의미한다. 제2필터는 (필터의 가로 사이즈, 필터의 세로 사이즈)로 표현될 수 있다. 예컨대, 도 8에 도시된 제2필터는 (2, 2)로 표현될 수 있다.
도 8에 도시된 제1출력 피처 맵이 (24, 24, 16)이고, 제2필터가 (2, 2)일 때, 제2출력 피처 맵은 (12, 12, 16)으로 표현될 수 있다.
제1맥스 풀링 레이어에서의 연산은 아래의 수학식과 같이 표현될 수 있다.
[수학식 2]
Figure 112020066813325-pat00031
여기서, 상기 m과 상기 n은 각각 필터의 가로와 세로의 크기를 나타내며, 상기 s와 상기 t는 입력 피처 맵의 샘플링 영역 인덱스를 나타낸다.
프로세서(310)는 제2컨볼루션 레이어의 동작을 수행한다. 제2컨볼루션 레이어에서 동작은 제1컨볼루션 레이어에서의 동작과 유사하다. 즉, 프로세서(310)는 제1맥스 풀링 레이어의 출력인 제2출력 피처 맵과 제3필터를 컨볼루션하여 제3출력 피처 맵을 출력한다. 상기 제3필터는 상기 제1필터와 다른 필터일 수 있다. 도 8에 도시된 상기 수신된 이미지인 제2출력 피처 맵이 (12, 12, 16)이고, 제3필터가 (3, 3, 16) x 24일 때, 제3출력 피처 맵은 (10, 10, 24)으로 표현될 수 있다.
프로세서(310)는 제2맥스 풀링 레이어의 동작을 수행한다. 제2맥스 풀링 레이어에서 동작은 아래와 같다. 제2맥스 풀링 레이어에서 동작은 제1맥스 풀링 레이어에서의 동작과 유사하다. 즉, 프로세서(310)는 제2컨볼루션 레이어의 출력인 제3출력 피처 맵에 제4필터를 적용하여 제4출력 피처 맵을 출력한다. 상기 제4필터는 상기 제2필터와 다른 필터일 수 있다. 도 8에 도시된 제3출력 피처 맵이 (10, 10, 24)이고, 제4필터가 (2, 2)일 때, 제4출력 피처 맵은 (5, 5, 24)으로 표현될 수 있다.
프로세서(310)는 풀리 커넥티드 레이어의 동작을 수행한다. 풀리 커넥티드 레이어에서 동작은 아래와 같다. 풀리 커넥티드 레이어는 복수의 풀리 커넥티드 레이어들을 포함한다. 제1풀리 커넉티드 레이어와 제2풀리 커넥티드 레이어 각각은 (입력 뉴런의 개수, 출력 뉴런의 개수)로 표현된다. 제1풀리 커넥티드 레이어에서 입력 뉴런의 개수는 600개이며, 제1풀리 커넥티드 레이어에서 출력 뉴런의 개수는 200개일 수 있다. 제1풀리 커넥티드 레이어의 입력 뉴런은 제4출력 피처 맵(5, 5, 24)에서 도출된다. 제1풀리 커넥티드 레이어의 j번째 출력 뉴런(
Figure 112020066813325-pat00032
)은 다음의 수학식과 같이 표현될 수 있다.
[수학식 3]
Figure 112020066813325-pat00033
또한, 제2풀리 커넥티드 레이어에서 입력 뉴런의 개수는 제1풀리 커넥티드 레이어의 출력 뉴런의 개수인 200개이며, 제2풀리 커넥티드 레이어의 출력 뉴런의 개수인 10개일 수 있다. 제2풀리 커넥티트 레이어의 k번째 뉴런의 가중 합의 입력값 z와 출력 값은 O은 아래의 수학식과 같이 표현될 수 있다.
[수학식 4]
Figure 112020066813325-pat00034
프로세서(310)는 복수의 서로 다른 이미지들을 수신하여 CNN 알고리즘인 제1컨볼루션 레이어, 제1맥스 풀링 레이어, 제2컨볼루션 레이어, 제2맥스 풀링 레이어, 및 풀리 커넥티드 레이어의 동작들을 반복하여 CNN 알고리즘을 학습시킨다. 학습에 따라 풀리 커넥티드 레이어의 가중치와 컨볼루션 레이어들의 필터 가중치가 업데이트된다.
도 10은 도 4에 도시된 프로세서에 의해 처리되는 신경망 알고리즘의 블록도의 일 실시 예를 나타낸다. 도 11은 도 4에 도시된 프로세서에 의해 처리되는 신경망 알고리즘의 블록도의 다른 실시 예를 나타낸다. 도 12는 도 4에 도시된 프로세서에 의해 처리되는 신경망 알고리즘의 블록도의 또 다른 실시 예를 나타낸다.
도 4, 및 도 10 내지 12를 참고하면, 프로세서(310)는 하나의 인식된 문자 영역을 포함하는 이미지를 수신한다. 프로세서(310)는 상기 수신된 이미지에 대해 제1컨볼루션 연산을 수행하여 제1출력 피처 맵을 출력한다.
프로세서(310)는 상기 제1출력 피처 맵에 대해 샘플링을 적용하여 제2출력 피처 맵을 출력한다. 즉, 프로세서(310)는 제1맥스 풀링 레이어의 동작을 수행한다.
프로세서(310)는 상기 출력된 제2출력 피처 맵에 대해 제2컨볼루션 연산을 수행하여 제3출력 피처 맵을 출력한다.
프로세서(310)는 상기 출력된 제3출력 피처 맵에 대해 샘플링을 적용하여 제4출력 피처 맵을 출력한다. 즉, 프로세서(310)는 제2맥스 풀링 레이어의 동작을 수행한다.
프로세서(310)는 상기 출력된 제4출력 피처 맵과 미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어(fully connected layer)를 이용하여 상기 하나의 인식된 문자 영역에서 문자를 인식한다.
상기 풀리 커넥티드 레이어는 입력 레이어(input layer), 은닉 레이어(hidden layer), 및 출력 레이어(output layer)를 포함한다.
상기 은닉 레이어는 복수의 은닉 뉴런들(neurons)을 포함한다. 상기 은닉 레이어는 (은닉 레이어의 입력 뉴런의 개수, 은닉 레이어의 출력 뉴런의 개수)로 표현될 수 있다. 상기 출력 레이어는 (출력 레이어의 입력 뉴런의 개수, 출력 레이어의 출력 뉴런의 개수)로 표현될 수 있다. 예컨대, 도 15에 도시된 은닉 레이어의 (840, 60)는 은닉 레이어의 입력 뉴런의 개수가 840개이고, 은닉 레이어의 출력 뉴런의 개수가 60개임을 의미한다. 또한, 도 11에 도시된 출력 레이어의 (60, 10)는 출력 레이어의 입력 뉴런의 개수가 60개이며, 출력 레이어의 출력 뉴런의 개수가 10개임을 의미한다.
상기 미리 설정된 피처 맵의 특징들의 개수가 m(m은 2이상의 자연수)개이고, 상기 출력된 제4출력 피처의 특징들의 개수가 n개(n은 2이상의 자연수)일 때, 상기 복수의 은닉 뉴런들 중 j번째(j는 자연수) 은닉 뉴런의 입력 값(
Figure 112020066813325-pat00035
)은 다음의 수학식으로 표현된다.
[수학식 5]
Figure 112020066813325-pat00036
상기 복수의 은닉 뉴런들 중 j번째(j는 자연수) 은닉 뉴런의 출력 값(
Figure 112020066813325-pat00037
)은 다음의 수학식으로 표현된다.
[수학식 6]
Figure 112020066813325-pat00038
상기
Figure 112020066813325-pat00039
는 상기 a번째 특징에 대한 j번째 가중치를, 상기
Figure 112020066813325-pat00040
는 상기 미리 설정된 피처 맵의 특징들 중 a번째 특징을, 상기
Figure 112020066813325-pat00041
는 상기 c번째 결과 값에 대한 j번째 가중치를, 상기
Figure 112020066813325-pat00042
는 상기 출력된 제4출력 피처의 특징들 중 c번째 결과 값을, 상기
Figure 112020066813325-pat00043
는 j번째 오프셋(offset)을 나타낸다.
상기 미리 설정된 피처 맵의 특징들끼리만 서로 연결되며, 상기 출력된 제4출력 피처의 특징들끼리만 서로 연결된다.
상기 출력 레이어는 복수의 출력 뉴런들을 포함하며, 상기 복수의 출력 뉴런들 중 k번째(k는 자연수) 출력 뉴런의 입력 값(
Figure 112020066813325-pat00044
)은 다음의 수학식으로 표현된다.
[수학식 7]
Figure 112020066813325-pat00045
상기 복수의 출력 뉴런들 중 k번째(k는 자연수) 출력 뉴런의 출력 값(
Figure 112020066813325-pat00046
)은 다음의 수학식으로 표현된다.
[수학식 8]
Figure 112020066813325-pat00047
상기
Figure 112020088786553-pat00048
는 상기 j번째 은닉 뉴런의 출력 값에 대한 k번째 가중치를, 상기
Figure 112020088786553-pat00049
는 상기 j번째 은닉 뉴런의 출력 값을, 상기
Figure 112020088786553-pat00050
는 k번째 오프셋을, 상기 함수 f()는 시그모이드(sigmoid) 함수를 나타낸다.
복수의 출력 뉴런들 중 k번째 뉴런의 에러
Figure 112020066813325-pat00051
와 10개의 뉴런들의 전체 에러 E는 다음의 수학식들로 표현된다.
[수학식 9]
Figure 112020066813325-pat00052
상기
Figure 112020066813325-pat00053
는 입력 샘플 이미지에 대한 기대되는 출력 값이고, 상기
Figure 112020066813325-pat00054
는 실제 출력 값을 나타낸다.
[수학식 10]
Figure 112020066813325-pat00055
상기 E는 10개의 뉴런들의 전체 에러를 나타낸다.
프로세서(310)는 출력된 제4출력 피처 맵과, 미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어(fully connected layer)에서도 전체 에러(E)를 줄이기 위해 가중치(W)를 업데이트한다.
j번째 은닉 뉴런의 출력 값에 대한 k번째 가중치의 오차와, 상기 i번째 입력 뉴런의 출력 값에 대한 j번째 가중치의 오차는 에러 역전파(error backpropagation) 알고리즘으로 계산될 수 있다. 에러 역전판 알고리즘은 다음의 수학식들로 표현된다.
[수학식 11]
Figure 112020088786553-pat00118
[수학식 12]
Figure 112020088786553-pat00119
상기
Figure 112020088786553-pat00058
는 상기 j번째 은닉 뉴런의 출력 값에 대한 k번째 가중치의 오차를, 상기
Figure 112020088786553-pat00059
는 상기 i번째 입력 뉴런의 출력 값에 대한 j번째 가중치의 오차를 나타낸다. 상기
Figure 112020088786553-pat00060
은 학습율을 나타낸다. 상기 f'(zk)는
Figure 112020088786553-pat00120
를 나타낸다.
프로세서(310)는 은닉 레이어와 출력 레이어에서 가중치들의 오차를 계산하고, 아래의 수학식을 이용하여 기존의 가중치들을 업데이트한다.
[수학식 13]
Figure 112020066813325-pat00061
상기
Figure 112020066813325-pat00062
는 모멘템으로 가중치를 업데이트할 때, 기존의 업데이트 방향으로 관성이 유지되도록하는 상수이다.
차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN(Convolutional Neural Network) 알고리즘에 같이 적용한 주차 유도 시스템(100)은 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN(Convolutional Neural Network) 알고리즘에 같이 적용하여 차량 번호판을 인식함으로써 CNN 알고리즘만을 이용하여 차량 번호판을 인식하는 것보다 정확하게 차량 번호판을 인식할 수 있다는 장점이 있다.
도 13은 도 10에 도시된 신경망 알고리즘의 학습에 따른 과적합 왜곡의 그래프를 나타낸다.
도 13을 참고하면, 가중치들을 업데이트하기 위해 반복적으로 신경망 알고리즘을 학습시킬 때, 도 13에 도시된 바와 같이 결정면이 왜곡될 수 있다. 특히, 결정면의 근처의 샘플들의 분류 능력이 떨어질 수 있다. 가중치들을 과도하게 업데이트하여 분류 능력이 떨어지는 현상을 오버-피팅(over-fitting) 또는 과적합이라 한다.
도 14는 도 13에 도시된 과적합 왜곡의 문제점을 해소하기 위한 그래프를 나타낸다. 도 18의 X축은 반복 학습의 횟수를 의미하며, Y축은 정확도를 나타낸다.
도 4와 도 14를 참고하면, 반복 학습의 횟수가 증가할수록 객체 분류의 정확도가 증가하지 않는다. 반복 학습의 횟수가 과다하게 수행될 때, 오버-피팅의 문제가 발생할 수 있다. 반복 학습의 횟수가 너무 적게 수행될 때, 정확도가 떨어지는 언더-피팅(under-fitting)의 문제가 발생할 수 있다.
오버-피팅의 문제를 해결하기 위해 프로세서(310)는 아래와 같은 수학식들을 적용한다.
[수학식 14]
Figure 112020088786553-pat00121
상기
Figure 112020066813325-pat00064
는 상기 i번째 입력 뉴런의 출력 값에 대한 j번째 가중치의 오차를 , 상기
Figure 112020066813325-pat00065
는 상수로, 기존의 가중치를 줄이기 위해 가중치 감소 비율을, 상기
Figure 112020066813325-pat00066
는 가중치를 어느 정도로 업데이트할 것인지 결정하는 학습율을 나타낸다. 상기
Figure 112020066813325-pat00067
는 상기 i번째 입력 뉴런의 출력 값에 대한 j번째 가중치를 나타낸다.
[수학식 15]
Figure 112020088786553-pat00122
상기
Figure 112020066813325-pat00069
는 상기 j번째 은닉 뉴런의 출력 값에 대한 k번째 가중치의 오차를, 상기
Figure 112020066813325-pat00070
는 상수로, 기존의 가중치를 줄이기 위해 가중치 감소 비율을, 상기
Figure 112020066813325-pat00071
는 가중치를 어느 정도로 업데이트할 것인지 결정하는 학습율을, 상기
Figure 112020066813325-pat00072
는 복수의 출력 뉴런들 중 k번째 뉴런의 에러를 나타낸다. 상기
Figure 112020066813325-pat00073
는 상기 j번째 은닉 뉴런의 출력 값에 대한 k번째 가중치를 나타낸다.
상기 수학식 14와 수학식 15는 상기 수학식 11과 수학식 12와는 다르다. 상기 수학식 14와 수학식 15를 이용하여 가중치를 업데이트할 때, 큰 가중치에 대해 가중치를 어느 정도 감소시킴으로써 오버-피팅의 문제를 해결할 수 있다.
도 15는 도 4에 도시된 프로세서에 의해 처리되는 신경망 알고리즘의 블록도의 또 다른 실시 예를 나타낸다.
도 4와 도 15를 참고하면, 프로세서(310)는 상기 출력된 제4출력 피처 맵과 상기 미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어를 이용하여 출력된 결과 값들의 차이와 임계값을 비교하여 상기 출력된 결과 값들을 통해 기대되는 문자가 아닌 다른 문자로 인식하는 혼동 가능성이 있는지를 판단한다. 도 15에서 도시된 분류기에 의해 혼동 가능성이 판단된다. 예컨대, 숫자 3과 8은 주변 빛의 영향이나, 카메라의 촬영 각도 때문에 혼동 가능성이 있을 수 있다. 숫자 3을 포함하는 이미지에서 인식을 통해 기대되는 문자는 3이지만, 다른 문자 8로 인식될 수 있다. 반대로, 기대되는 문자가 8일 때, 다른 문자 3으로 인식될 수도 있다.
숫자 3을 포함하는 이미지에 대해 상기 출력 피처 맵과 상기 미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어를 적용하여 도출된 결과 값들은 숫자 3일 확률이 0.7, 숫자 8일 확률이 0.6일 수 있다. 상기 도출된 결과 값들(예컨대, 0.7과 0.6)의 차이(0.1)는 상기 임계값(예컨대, 0.2)보다 작을 때, 다른 문자로의 혼동 가능성이 있다고 판단될 수 있다. 따라서 상기 풀리 커넥티드 레이어를 적용하여 도출된 결과 값들을 통해 기대되는 숫자 3이 아닌 다른 숫자 8로의 혼동 가능성이 있다고 판단될 수 있다.
프로세서(310)는 상기 출력된 결과 값들을 통해 상기 기대되는 문자가 아닌 다른 문자로 인식하는 혼동 가능성이 있다고 판단될 때, 상기 미리 설정된 피처 맵을 재설정하여 제2미리 설정된 피처 맵으로 정의한다. 이 때, 상기 미리 설정된 피처 맵은 제1미리 설정된 피처 맵으로 호칭될 수 있다.
상기 재설정은 혼동 가능성이 있는 문자들을 명확히 구별하기 위해 미리 설정된 피처 맵의 개수를 증가시키는 것을 의미한다. 혼동 가능성이 있는 문자들(예컨대, 3과 8)에서 서로 구별 문자의 특징(예컨대, 대칭성, 또는 선의 연결 여부)을 나타낼 수 있는 피처 맵(예컨대, 문자 가운데를 기준으로 왼쪽 어느 하나의 픽셀과 오른쪽 하나의 픽셀이 서로 대응하는지 여부, 또는 검은 픽셀이 계속 연결되는지 여부)이 추가될 수 있다.
상기 제1미리 설정된 피처 맵과 상기 제2미리 설정된 피처 맵은 ANN 구조 신경망에서 입력으로 이용된다. 예컨대, 상기 제1, 2미리 설정된 피처 맵은 문자 영역을 일정 영역들로 나누고 각 영역에 포함된 문자의 픽셀 개수로 정의될 수 있다. 또한, 상기 제1, 2미리 설정된 피처 맵은 문자의 높이를 따라 여러 개로 그려진 수평 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합으로 정의될 수 있다. 또한, 상기 제1, 2미리 설정된 피처 맵 폭에 따라 여러 개로 그려진 수직 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합으로 정의될 수 있다. 다만, 상기 제2미리 설정된 피처 맵은 상기 제1미리 설정된 피처 맵과 달리 혼동 가능성이 있는 문자들을 명확히 구분하기 위해 설정된다는 점에서 다르다.
도 16은 혼동가능성이 있는 숫자들의 차이를 나타내는 이미지들이다.
도 16을 참고하면, 숫자 8은 빨간 선을 중심으로 대칭이며, 숫자 3은 빨간 선을 중심으로 대칭이지 않다. 상기 제2미리 설정된 피처 맵은 이러한 숫자의 대칭성을 판단할 수 있도록 설정될 수 있다.
또한, 도 16을 참고하면, 숫자 8의 왼쪽 사각형 부분은 검은색 픽셀들이 연결되어 있으나, 숫자 3의 왼쪽 사각형 부분은 검은색 픽셀들이 서로 연결되어 있지 않다. 실시 예에 따라 상기 제2미리 설정된 피처 맵은 이러한 픽셀의 연결성을 판단할 수 있도록 설정될 수 있다.
프로세서(310)는 상기 분류된 문자 영역을 포함하는 이미지에 대해 상기 CNN 알고리즘을 재적용하여 출력된 제5출력 피처 맵과, 상기 제2미리 설정된 피처 맵을 완전히 연결하는 제2풀리 커넥티드 레이어를 적용하여 문자를 인식한다. 상기 출력된 제4출력 피처 맵과 상기 제1미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어는 제1풀리 커넥티드 레이어로 호칭될 수 있다.
상기 혼동 가능성이 있는 문자들을 명확히 인식하기 위해 상기 제2풀리 커넥티드 레이어를 적용하는 동작을 수행한다. 상기 적용된 CNN 알고리즘은 상기 제4출력 피처 맵의 출력 과정에서 이용된 가중치들과 같다.
상기 제1풀리 커넥티드 레이어에 입력되는 상기 제4출력 피처 맵의 개수와 상기 제2풀리 커넥티드 레이어에 입력되는 상기 제5출력 피처 맵의 개수는 서로 다르다. 예컨대, 상기 제4출력 피처 맵의 개수가 상기 제5출력 피처 맵의 개수보다 많을 수 있다. 상기 제4출력 피처 맵의 개수가 n개일 때, 상기 제5출력 피처 맵의 개수는 q(q는 n보다 작은 자연수)개일 수 있다.
상기 제1풀리 커넥티드 레이어에 입력되는 상기 제1미리 설정된 피처 맵의 개수와 상기 제2풀리 커넥티드 레이어에 입력되는 상기 제2미리 설정된 피처 맵의 개수는 서로 다르다. 예컨대, 상기 제1미리 설정된 피처 맵의 개수가 상기 제2미리 설정된 피처 맵의 개수보다 적을 수 있다. 상기 제1미리 설정된 피처 맵의 개수가 m개일 때, 상기 제2미리 설정된 피처 맵의 개수는 p(p는 m보다 큰 자연수)개일 수 있다. 상기 제2미리 설정된 피처 맵의 개수를 상기 제1미리 설정된 피처 맵의 개수보다 많게 함으로써 혼동 가능성이 있는 문자들을 명확히 구분할 수 있다. 즉, 상기 제2미리 설정된 피처 맵의 개수를 증가시킴으로써 상기 제1미리 설정된 피처 맵보다 문자의 특징을 보다 많이 추출할 수 있다.
상기 제4출력 피처 맵의 개수와 상기 제1미리 설정된 피처 맵의 개수의 합과 상기 제5출력 피처 맵의 개수와 상기 제2미리 설정된 피처 맵의 개수는 같다.
상기 제1풀리 커넥티드 레이어의 은닉 레이어와 출력 레이어에서 가중치들과 상기 제2풀리 커넥티드 레이어의 은닉 레이어와 출력 레이어에서 가중치들은 같다.
본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
100: 주차 유도 시스템;
140, 150, 160, 170: 복수의 카메라 모듈들;
141, 151, 161, 171: 입구 가이드 디스플레이;
143, 153: 층 가이드 디스플레이;
145, 155, 163, 173: 키오스크;
147, 157: SCU;
149, 159, 169, 179: MCU;
180: 스위치;
190: API 서버;
200: NVR;
300: 이미지 분석 서버;
220: 가이드 서버;
230: 모니터링 서버;

Claims (6)

  1. 차량의 번호판의 문자를 인식하기 위해 프로세서와 메모리를 포함하는 이미지 분석 서버에 의해 수행되는 신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템의 주차 차량 위치 정보 제공 방법은,
    상기 프로세서는 차량의 번호판 영역을 포함하는 이미지를 카메라 모듈로부터 수신하는 단계;
    상기 프로세서는 상기 차량의 번호판 영역에서 문자 영역을 분류하는 단계;
    상기 프로세서는 상기 분류된 문자 영역을 포함하는 이미지에 대해 제1컨볼루션 연산을 수행하여 제1출력 피처 맵을 출력하는 단계;
    상기 프로세서는 상기 출력된 제1출력 피처 맵에 대해 샘플링을 적용하여 제2출력 피처 맵을 출력하는 단계;
    상기 프로세서는 상기 제2출력 피처 맵에 대해 제2컨볼루션 연산을 수행하여 제3출력 피처 맵을 출력하는 단계;
    상기 프로세서는 상기 출력된 제3출력 피처 맵에 대해 샘플링을 적용하여 제4출력 피처 맵을 출력하는 단계; 및
    상기 프로세서는 상기 출력된 제4출력 피처 맵과, 상기 문자의 특징을 수치로 표현한 것으로 정의되며, 상기 문자 영역을 일정 영역들로 나누고 각 영역에 포함된 문자의 픽셀 개수이거나, 상기 문자의 높이를 따라 여러 개로 그려진 수평 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합이거나, 폭에 따라 여러 개로 그려진 수직 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합으로 정의될 수 있는 미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어(fully connected layer)를 이용하여 상기 분류된 문자 영역에서 문자를 인식하는 단계를 포함하며,
    건물의 각 층마다 설치된 키오스크들 각각이 상기 차량의 운전자에게 현재 주차된 차량의 위치 정보와, 현재 운전자의 위치와 주차된 차량의 위치 정보 사이의 최단 이동 경로 정보를 제공하기 위해 상기 인식된 문자를 필요로 하는 신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템의 주차 차량 위치 정보 제공 방법.
  2. 제1항에 있어서, 상기 풀리 커넥티드 레이어는,
    입력 레이어(input layer), 은닉 레이어(hidden layer), 및 출력 레이어(output layer)를 포함하며,
    상기 은닉 레이어는 복수의 은닉 뉴런들(neurons)을 포함하며,
    상기 미리 설정된 피처 맵의 특징들의 개수가 m(m은 2이상의 자연수)개이고, 상기 출력된 제4출력 피처의 특징들의 개수가 n개(n은 2이상의 자연수)일 때,
    상기 복수의 은닉 뉴런들 중 j번째(j는 자연수) 은닉 뉴런의 입력 값(
    Figure 112020096688014-pat00074
    )은 다음의 수학식으로 표현되며,
    [수학식]
    Figure 112020096688014-pat00075

    상기 복수의 은닉 뉴런들 중 j번째(j는 자연수) 은닉 뉴런의 출력 값(
    Figure 112020096688014-pat00076
    )은 다음의 수학식으로 표현되며,
    [수학식]
    Figure 112020096688014-pat00077

    상기
    Figure 112020096688014-pat00078
    는 상기 a번째 특징에 대한 j번째 가중치를, 상기
    Figure 112020096688014-pat00079
    는 상기 미리 설정된 피처들의 특징들 중 a번째 특징을, 상기
    Figure 112020096688014-pat00080
    는 상기 c번째 결과 값에 대한 j번째 가중치를, 상기
    Figure 112020096688014-pat00081
    는 상기 출력된 제4출력 피처의 특징들 중 c번째 결과 값을, 상기
    Figure 112020096688014-pat00082
    는 j번째 오프셋(offset)을, 상기 함수 f()는 시그모이드(sigmoid) 함수를 나타내는 신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템의 주차 차량 위치 정보 제공 방법.
  3. 제2항에 있어서,
    상기 출력 레이어는 복수의 출력 뉴런들을 포함하며,
    상기 복수의 출력 뉴런들 중 k번째(k는 자연수) 출력 뉴런의 입력 값(
    Figure 112020096688014-pat00083
    )은 다음의 수학식으로 표현되며,
    [수학식]
    Figure 112020096688014-pat00084

    상기 복수의 출력 뉴런들 중 k번째(k는 자연수) 출력 뉴런의 출력 값(
    Figure 112020096688014-pat00085
    )은 다음의 수학식으로 표현되며,
    [수학식]
    Figure 112020096688014-pat00086

    상기
    Figure 112020096688014-pat00087
    는 상기 j번째 은닉 뉴런의 출력 값에 대한 k번째 가중치를, 상기
    Figure 112020096688014-pat00088
    는 상기 j번째 은닉 뉴런의 출력 값을, 상기
    Figure 112020096688014-pat00089
    는 k번째 오프셋을, 상기 함수 f()는 시그모이드(sigmoid) 함수를 나타내는 신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템의 주차 차량 위치 정보 제공 방법.
  4. 제3항에 있어서,
    상기 i번째 입력 뉴런의 출력 값에 대한 j번째 가중치의 오차인 상기
    Figure 112020096688014-pat00090
    는 다음의 수학식으로 표현되며,
    [수학식]
    Figure 112020096688014-pat00123

    상기
    Figure 112020096688014-pat00092
    는 상수로, 기존의 가중치를 줄이기 위해 가중치 감소 비율을, 상기
    Figure 112020096688014-pat00093
    는 가중치를 어느 정도로 업데이트할 것인지 결정하는 학습율을 나타내며,
    상기 j번째 은닉 뉴런의 출력 값에 대한 k번째 가중치의 오차인 상기
    Figure 112020096688014-pat00094
    는 다음의 수학식으로 표현되며,
    [수학식]
    Figure 112020096688014-pat00124

    상기
    Figure 112020096688014-pat00096
    는 상수로, 기존의 가중치를 줄이기 위해 가중치 감소 비율을, 상기
    Figure 112020096688014-pat00097
    는 가중치를 어느 정도로 업데이트할 것인지 결정하는 학습율을, 상기
    Figure 112020096688014-pat00098
    는 복수의 출력 뉴런들 중 k번째 뉴런의 에러를, 상기 f'(zk)는
    Figure 112020096688014-pat00125
    를 나타내는 신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템의 주차 차량 위치 정보 제공 방법.
  5. 신경망을 이용한 차량 번호판 인식 기술에 관한 명령들을 저장하는 메모리; 및
    상기 명령들을 실행하는 프로세서를 포함하며,
    상기 명령들은,
    상기 프로세서는 차량의 번호판 영역을 포함하는 이미지를 수신하고, 상기 차량의 번호판 영역에서 문자 영역을 분류하며, 분류된 문자 영역을 포함하는 이미지에 대해 제1컨볼루션 연산을 수행하여 제1출력 피처 맵을 출력하며, 상기 출력된 제1출력 피처 맵에 대해 샘플링을 적용하여 제2출력 피처 맵을 출력하며, 상기 제2출력 피처 맵에 대해 제2컨볼루션 연산을 수행하여 제3출력 피처 맵을 출력하며, 상기 출력된 제3출력 피처 맵에 대해 샘플링을 적용하여 제4출력 피처 맵을 출력하며, 상기 출력된 제4출력 피처 맵과, 상기 문자의 특징을 수치로 표현한 것으로 정의되며, 상기 문자 영역을 일정 영역들로 나누고 각 영역에 포함된 문자의 픽셀 개수이거나, 상기 문자의 높이를 따라 여러 개로 그려진 수평 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합이거나, 폭에 따라 여러 개로 그려진 수직 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합으로 정의될 수 있는 미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어를 이용하여 상기 분류된 문자 영역에서 문자를 인식하도록 구현되는 이미지 분석 서버.
  6. 차량을 촬영하고, 촬영된 이미지에서 차량의 번호판 영역을 포함하는 이미지를 전송하는 카메라 모듈;
    상기 촬영된 차량의 번호판 영역을 포함하는 이미지에서 차량의 번호판을 인식하는 이미지 분석 모듈;
    각각이 각층의 주차 가능 대수를 표시하는 복수의 입구 가이드 디스플레이들; 및
    각각이 현재 층에서 주차 가능 대수를 표시하는 복수의 층 가이드 디스플레이들을 포함하며,
    상기 이미지 분석 모듈은,
    신경망을 이용한 차량 번호판 인식 기술에 관한 명령들을 저장하는 메모리; 및
    상기 명령들을 실행하는 프로세서를 포함하며,
    상기 명령들은,
    상기 프로세서는 차량의 번호판 영역을 포함하는 이미지를 수신하고, 상기 차량의 번호판 영역에서 문자 영역을 분류하며, 분류된 문자 영역을 포함하는 이미지에 대해 제1컨볼루션 연산을 수행하여 제1출력 피처 맵을 출력하며, 상기 출력된 제1출력 피처 맵에 대해 샘플링을 적용하여 제2출력 피처 맵을 출력하며, 상기 제2출력 피처 맵에 대해 제2컨볼루션 연산을 수행하여 제3출력 피처 맵을 출력하며, 상기 출력된 제3출력 피처 맵에 대해 샘플링을 적용하여 제4출력 피처 맵을 출력하며, 상기 출력된 제4출력 피처 맵과, 상기 문자의 특징을 수치로 표현한 것으로 정의되며, 상기 문자 영역을 일정 영역들로 나누고 각 영역에 포함된 문자의 픽셀 개수이거나, 상기 문자의 높이를 따라 여러 개로 그려진 수평 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합이거나, 폭에 따라 여러 개로 그려진 수직 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합으로 정의될 수 있는 미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어를 이용하여 상기 분류된 문자 영역에서 문자를 인식하도록 구현되며, 건물의 각 층마다 설치된 키오스크들 각각이 상기 차량의 운전자에게 현재 주차된 차량의 위치 정보와, 현재 운전자의 위치와 주차된 차량의 위치 정보 사이의 최단 이동 경로 정보를 제공하기 위해 상기 인식된 문자를 필요로 하는 주차 유도 시스템.
KR1020200079197A 2020-06-29 2020-06-29 신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템 및 이의 주차 차량 위치 정보 제공 방법 KR102161948B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200079197A KR102161948B1 (ko) 2020-06-29 2020-06-29 신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템 및 이의 주차 차량 위치 정보 제공 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200079197A KR102161948B1 (ko) 2020-06-29 2020-06-29 신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템 및 이의 주차 차량 위치 정보 제공 방법

Publications (1)

Publication Number Publication Date
KR102161948B1 true KR102161948B1 (ko) 2020-10-06

Family

ID=72826260

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200079197A KR102161948B1 (ko) 2020-06-29 2020-06-29 신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템 및 이의 주차 차량 위치 정보 제공 방법

Country Status (1)

Country Link
KR (1) KR102161948B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115205088A (zh) * 2022-07-15 2022-10-18 小米汽车科技有限公司 图像处理方法、装置、介质及芯片
KR20230027679A (ko) * 2021-08-19 2023-02-28 주식회사 대영아이오티 이용자가 선호하는 지정주차구역으로 유도 가능한 차량 유도관제 시스템

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101986592B1 (ko) * 2019-04-22 2019-06-10 주식회사 펜타게이트 앵커박스 및 cnn 특징 맵을 이용한 차량 번호 인식 장치 및 방법
KR101999985B1 (ko) 2016-03-10 2019-07-15 주식회사한맥아이피에스 차량 번호판 인식 방법과 시스템
US20200034647A1 (en) * 2018-07-27 2020-01-30 JENOPTIK Traffic Solutions UK Ltd Method and apparatus for recognizing a license plate of a vehicle
KR102116797B1 (ko) * 2018-06-14 2020-05-29 주식회사 메인시스 주차장 출입 시스템 및 그 제어 방법
KR102122560B1 (ko) * 2018-11-22 2020-06-12 삼성생명보험주식회사 글자 인식 모델의 업데이트 방법
US20200193232A1 (en) * 2016-12-23 2020-06-18 Shenzhen Institute Of Advanced Technology License plate recognition method, device thereof, and user equipment

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101999985B1 (ko) 2016-03-10 2019-07-15 주식회사한맥아이피에스 차량 번호판 인식 방법과 시스템
US20200193232A1 (en) * 2016-12-23 2020-06-18 Shenzhen Institute Of Advanced Technology License plate recognition method, device thereof, and user equipment
KR102116797B1 (ko) * 2018-06-14 2020-05-29 주식회사 메인시스 주차장 출입 시스템 및 그 제어 방법
US20200034647A1 (en) * 2018-07-27 2020-01-30 JENOPTIK Traffic Solutions UK Ltd Method and apparatus for recognizing a license plate of a vehicle
KR102122560B1 (ko) * 2018-11-22 2020-06-12 삼성생명보험주식회사 글자 인식 모델의 업데이트 방법
KR101986592B1 (ko) * 2019-04-22 2019-06-10 주식회사 펜타게이트 앵커박스 및 cnn 특징 맵을 이용한 차량 번호 인식 장치 및 방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230027679A (ko) * 2021-08-19 2023-02-28 주식회사 대영아이오티 이용자가 선호하는 지정주차구역으로 유도 가능한 차량 유도관제 시스템
KR102685841B1 (ko) * 2021-08-19 2024-07-18 주식회사 대영아이오티 이용자가 선호하는 지정주차구역으로 유도 가능한 차량 유도관제 시스템
CN115205088A (zh) * 2022-07-15 2022-10-18 小米汽车科技有限公司 图像处理方法、装置、介质及芯片
CN115205088B (zh) * 2022-07-15 2024-04-09 小米汽车科技有限公司 图像处理方法、装置、介质及芯片

Similar Documents

Publication Publication Date Title
KR102030628B1 (ko) Cnn 기반 차량 번호판 인식 방법 및 시스템
US20210110180A1 (en) Method and apparatus for traffic sign detection, electronic device and computer storage medium
Babu et al. Indian car number plate recognition using deep learning
KR101179497B1 (ko) 얼굴 검출 방법 및 장치
CN103390164B (zh) 基于深度图像的对象检测方法及其实现装置
Alefs et al. Road sign detection from edge orientation histograms
KR102194890B1 (ko) 신경망을 이용한 차량 번호판 인식 기술이 적용된 무인 단속 및 도로 방범 방법 및 시스템
KR102161949B1 (ko) 신경망을 이용한 차량 번호판 인식 기술이 적용된 통합 주차 관리 방법 및 시스템
CN111985403B (zh) 一种基于人脸姿态估计和视线偏离的分心驾驶检测方法
KR102161948B1 (ko) 신경망을 이용한 차량 번호판 인식 기술이 적용된 주차 유도 시스템 및 이의 주차 차량 위치 정보 제공 방법
CN111242046B (zh) 一种基于图像检索的地面交通标志识别方法
KR102157990B1 (ko) 신경망을 이용한 차량 번호판 인식 방법 및 시스템
CN111950546B (zh) 一种车牌识别方法、装置、计算机设备和存储介质
Asgarian Dehkordi et al. Vehicle type recognition based on dimension estimation and bag of word classification
Parada-Loira et al. Local contour patterns for fast traffic sign detection
CN109670455A (zh) 计算机视觉车道线检测系统及其检测方法
Zhang et al. Detection-by-tracking of traffic signs in videos
Moseva et al. Development of a System for Fixing Road Markings in Real Time
KR102157989B1 (ko) 신경망을 이용한 차량 번호판 인식 기술이 적용된 불법 주정차 단속 방법 및 시스템
Jain et al. Number plate detection using drone surveillance
CN116630904A (zh) 融合非临近跳连与多尺度残差结构的小目标车辆检测方法
KR102368066B1 (ko) 문자 정렬을 이용한 컨테이너 문자 인식 방법 및 장치
KR102624702B1 (ko) 자동차 번호 인식 방법 및 장치
KhabiriKhatiri et al. Road Traffic Sign Detection and Recognition using Adaptive Color Segmentation and Deep Learning
Kapoor et al. Traffic signs recognition using CNN

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant