KR102157990B1 - Method and system for recognizing vehicle number plate using neural network - Google Patents

Method and system for recognizing vehicle number plate using neural network Download PDF

Info

Publication number
KR102157990B1
KR102157990B1 KR1020200079201A KR20200079201A KR102157990B1 KR 102157990 B1 KR102157990 B1 KR 102157990B1 KR 1020200079201 A KR1020200079201 A KR 1020200079201A KR 20200079201 A KR20200079201 A KR 20200079201A KR 102157990 B1 KR102157990 B1 KR 102157990B1
Authority
KR
South Korea
Prior art keywords
output
vehicle
feature map
license plate
processor
Prior art date
Application number
KR1020200079201A
Other languages
Korean (ko)
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 KR1020200079201A priority Critical patent/KR102157990B1/en
Application granted granted Critical
Publication of KR102157990B1 publication Critical patent/KR102157990B1/en

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)
  • Traffic Control Systems (AREA)
  • Image Analysis (AREA)

Abstract

A vehicle license plate recognition method using a neural network that is performed by a vehicle license plate recognition device including a processor and a memory to recognize characters on a vehicle license plate comprises the steps of: receiving, by a processor, an image including a license plate area of a vehicle; recognizing, by the processor, a character area classified in the license plate area of the vehicle; outputting, by the processor, a first output feature map by performing a first convolution operation on an image including the classified character area; outputting, by the processor, a second output feature map by applying sampling to the output first output feature map; outputting, by the processor, a third output feature map by performing a second convolution operation on the second output feature map; outputting, by the processor, a fourth output feature map by applying sampling to the output third output feature map; and recognizing, by the processor, characters in the classified character area by using a fully connected layer for fully connecting the output fourth output feature map and a predetermined feature map that is defined as a numerical expression of the characteristics of characters, and divides the character area into certain areas to be defined as the number of pixels of characters included in each area, the sum of white pixels or black pixels placed in several horizontal lines drawn according to the height of the characters, or the sum of while pixels or black pixels placed in several vertical lines drawn according to the width of the characters.

Description

신경망을 이용한 차량 번호판 인식 방법 및 시스템 {Method and system for recognizing vehicle number plate using neural network}Vehicle license plate recognition method and system using neural network {Method and system for recognizing vehicle number plate using neural network}

본 발명은 신경망을 이용한 차량 번호판 인식 방법 및 시스템에 관한 것으로, 상세하게는 자동차 번호판 문자 인식의 성능을 높을 수 있는 신경망을 이용한 차량 번호판 인식 방법 및 시스템에 관한 것이다. The present invention relates to a vehicle license plate recognition method and system using a neural network, and more particularly, to a vehicle license plate recognition method and system using a neural network capable of enhancing the performance of vehicle license plate character recognition.

안전과 원활한 교통의 흐름을 위해 차량 번호판 인식의 중요성은 증대되고 있다. 차량의 번호판 인식은 차량의 과속 단속, 주행 중인 차량의 모니터링, 주차 차량의 관리, 주차 유도 등 다양한 목적으로 이용된다. The importance of vehicle license plate recognition is increasing for safety and smooth traffic flow. Vehicle license plate recognition is used for a variety of purposes, such as speeding control of vehicles, monitoring of running vehicles, management of parked vehicles, and induction of parking.

차량의 번호판 인식은 먼저 차량의 영상을 획득하고, 획득된 차량의 영상에서 번호판 영역을 추출한다. 그리고 나서 추출된 번호판 영역에서 문자 인식을 통해 차량의 번호판이 인식된다. 하지만, 차량과 카메라의 촬영 각도, 위치, 또는 주변의 빛에 따라 차량의 번호판이 제대로 인식되지 않을 수 있다. 또한, 다양한 차량 번호판 형식, 국내와 다른 형식의 해외 번호판 형식 등으로 인해 차량의 번호판 인식이 용이하지 않을 수 있다. 상기와 같은 문제점을 개선하기 위한 향상된 번호판 인식 기술이 요구된다. Recognizing the license plate of a vehicle first acquires an image of the vehicle, and then extracts a license plate area from the acquired image of the vehicle. Then, the license plate of the vehicle is recognized through character recognition in the extracted license plate area. However, the license plate of the vehicle may not be properly recognized depending on the shooting angle, location, or ambient light of the vehicle and the camera. In addition, it may not be easy to recognize the license plate of the vehicle due to various vehicle license plate formats and overseas license plate formats different from those in Korea. There is a need for an improved license plate recognition technology to improve the above problems.

한국 등록특허공보 제10-1999985호(2019.07.09.)Korean Patent Publication No. 10-1999985 (2019.07.09.)

본 발명이 이루고자 하는 기술적인 과제는 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN(Convolutional Neural Network) 알고리즘에 같이 적용하는 차량 번호판 인식 방법 및 시스템을 제공하는 것이다. A technical problem to be achieved by the present invention is to provide a vehicle license plate recognition method and system in which feature maps extracted from a character region recognized in a vehicle license plate region are applied together to a Convolutional Neural Network (CNN) algorithm.

본 발명의 실시 예에 따른 차량의 번호판의 문자를 인식하기 위해 프로세서와 메모리를 포함하는 차량 번호판 인식 장치에 의해 수행되는 신경망을 이용한 차량 번호판 인식 방법은 상기 프로세서는 차량의 번호판 영역을 포함하는 이미지를 수신하는 단계, 상기 프로세서는 상기 차량의 번호판 영역에서 분류된 문자 영역을 인식하는 단계, 상기 프로세서는 상기 분류된 문자 영역을 포함하는 이미지에 대해 제1컨볼루션 연산을 수행하여 제1출력 피처 맵을 출력하는 단계, 상기 프로세서는 상기 출력된 제1출력 피처 맵에 대해 샘플링을 적용하여 제2출력 피처 맵을 출력하는 단계, 상기 프로세서는 상기 제2출력 피처 맵에 대해 제2컨볼루션 연산을 수행하여 제3출력 피처 맵을 출력하는 단계, 상기 프로세서는 상기 출력된 제3출력 피처 맵에 대해 샘플링을 적용하여 제4출력 피처 맵을 출력하는 단계, 및 상기 프로세서는 상기 출력된 제4출력 피처 맵과, 상기 문자의 특징을 수치로 표현한 것으로 정의되며, 상기 문자 영역을 일정 영역들로 나누고 각 영역에 포함된 문자의 픽셀 개수이거나, 상기 문자의 높이를 따라 여러 개로 그려진 수평 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합이거나, 폭에 따라 여러 개로 그려진 수직 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합으로 정의될 수 있는 미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어(fully connected layer)를 이용하여 상기 분류된 문자 영역에서 문자를 인식하는 단계를 포함한다. A vehicle license plate recognition method using a neural network performed by a vehicle license plate recognition apparatus including a processor and a memory to recognize characters on a license plate of a vehicle according to an embodiment of the present invention, wherein the processor generates an image including the license plate region of the vehicle. Receiving, the processor recognizing a classified character area in the license plate area of the vehicle, the processor performing a first convolution operation on an image including the classified character area to generate a first output feature map Outputting, the processor applying a sampling to the outputted first output feature map to output a second output feature map, the processor performing a second convolution operation on the second output feature map Outputting a third output feature map, wherein the processor applies sampling to the output third output feature map to output a fourth output feature map, and the processor includes the output fourth output feature map and , Defined as a numerical expression of the character's characteristic, and divides the character area into certain areas and is the number of pixels of characters included in each area, or white pixels located on horizontal lines drawn in multiple numbers along the height of the character , Or a fully connected layer that completely connects a preset feature map that can be defined as the sum of black pixels, white pixels located on vertical lines drawn in multiples depending on the width, or the sum of black pixels And recognizing a character in the classified character area by using.

상기 프로세서는 상기 문자 영역에 해당할 수 있는 데이터들에 대해 CNN 알고리즘 중 컨볼루션 연산들과 샘플링 연산들을 수행하여 출력된 제5출력 피처 맵과, 제2미리 설정된 피처 맵을 완전히 연결하는 제2풀리 커넥티드 레이어를 적용하여 도출된 결과 값들에 대해 상기 도출된 결과 값들의 차이와 임계값을 비교하여 혼동 가능성이 있는 문자들끼리 서로 분류하는 단계, 상기 프로세서는 상기 분류된 문자들에 따라 상기 제2미리 설정된 피처 맵을 재설정하여 제3미리 설정된 피처 맵으로 정의하는 단계, 및 상기 프로세서는 상기 혼동 가능성이 있는 문자들 중 어느 하나에 대해 상기 CNN 알고리즘을 적용하여 출력된 제6출력 피처 맵과, 상기 제3미리 설정된 피처 맵을 완전히 연결하는 제3풀리 커넥티드 레이어를 적용하여 문자를 인식하는 단계를 포함한다.The processor is a second pulley for completely connecting a fifth output feature map output by performing convolution operations and sampling operations among CNN algorithms for data that may correspond to the character region and a second preset feature map. Classifying characters that may be confusing with each other by comparing the difference between the derived result values and a threshold value with respect to the result values derived by applying the connected layer, and the processor classifying the second characters according to the classified characters. Resetting a preset feature map to define a third preset feature map, and the processor includes a sixth output feature map output by applying the CNN algorithm to any one of the confusing characters, and the And recognizing a character by applying a third pulley connected layer that completely connects the third preset feature map.

상기 제2풀리 커넥티드 레이어에 입력되는 상기 제5출력 피처 맵의 개수와 상기 제3풀리 커넥티드 레이어에 입력되는 상기 제6출력 피처 맵의 개수는 서로 다르며, 상기 제2풀리 커넥티드 레이어에 입력되는 상기 제2미리 설정된 피처맵의 개수와 상기 제3풀리 커넥티드 레이어에 입력되는 상기 제3미리 설정된 피처맵의 개수는 서로 다르다. The number of the fifth output feature map input to the second pulley connected layer and the number of the sixth output feature map input to the third pulley connected layer are different from each other, and input to the second pulley connected layer The number of second preset feature maps to be set and the number of third preset feature maps input to the third pulley connected layer are different from each other.

상기 풀리 커넥티드 레이어는 입력 레이어(input layer), 은닉 레이어(hidden layer), 및 출력 레이어(output layer)를 포함한다. The fully connected layer includes an input layer, a hidden layer, and an output layer.

상기 은닉 레이어는 복수의 은닉 뉴런들(neurons)을 포함한다. The hidden layer includes a plurality of hidden neurons.

상기 미리 설정된 피처 맵의 특징들의 개수가 m(m은 2이상의 자연수)개이고, 상기 출력된 제4출력 피처의 특징들의 개수가 n개(n은 2이상의 자연수)일 때, 상기 복수의 은닉 뉴런들 중 j번째(j는 자연수) 은닉 뉴런의 입력 값(

Figure 112020066813718-pat00001
)은 다음의 수학식으로 표현된다. When the number of features of the preset feature map is m (m is a natural number of 2 or more), and the number of features of the output fourth output feature is n (n is a natural number of 2 or more), the plurality of hidden neurons Of the jth (j is a natural number) hidden neuron input value (
Figure 112020066813718-pat00001
) Is expressed by the following equation.

[수학식][Equation]

Figure 112020066813718-pat00002
Figure 112020066813718-pat00002

상기 복수의 은닉 뉴런들 중 j번째(j는 자연수) 은닉 뉴런의 출력 값(

Figure 112020066813718-pat00003
)은 다음의 수학식으로 표현된다. The output value of the j-th (j is a natural number) hidden neuron among the plurality of hidden neurons (
Figure 112020066813718-pat00003
) Is expressed by the following equation.

[수학식][Equation]

Figure 112020066813718-pat00004
Figure 112020066813718-pat00004

상기

Figure 112020088791885-pat00005
는 상기 a번째 특징에 대한 j번째 가중치를, 상기
Figure 112020088791885-pat00006
는 상기 미리 설정된 피처 맵의 특징들 중 a번째 특징을, 상기
Figure 112020088791885-pat00007
는 상기 c번째 결과 값에 대한 j번째 가중치를, 상기
Figure 112020088791885-pat00008
는 상기 출력된 제4출력 피처의 특징들 중 c번째 결과 값을, 상기
Figure 112020088791885-pat00009
는 j번째 오프셋(offset)를, 상기 함수 f()는 시그모이드(sigmoid) 함수를 나타낸다. remind
Figure 112020088791885-pat00005
Is the j-th weight for the a-th feature,
Figure 112020088791885-pat00006
Is the a-th feature among the features of the preset feature map,
Figure 112020088791885-pat00007
Is the j-th weight for the c-th result value,
Figure 112020088791885-pat00008
Is the c-th result value among the features of the outputted fourth output feature,
Figure 112020088791885-pat00009
Denotes the j-th offset, and the function f() denotes a sigmoid function.

상기 출력 레이어는 복수의 출력 뉴런들을 포함한다. The output layer includes a plurality of output neurons.

상기 복수의 출력 뉴런들 중 k번째(k는 자연수) 출력 뉴런의 입력 값(

Figure 112020066813718-pat00010
)은 다음의 수학식으로 표현된다. The input value of the k-th (k is a natural number) output neuron among the plurality of output neurons (
Figure 112020066813718-pat00010
) Is expressed by the following equation.

[수학식][Equation]

Figure 112020066813718-pat00011
Figure 112020066813718-pat00011

상기 복수의 출력 뉴런들 중 k번째(k는 자연수) 출력 뉴런의 출력 값(

Figure 112020066813718-pat00012
)은 다음의 수학식으로 표현된다. The output value of the k-th (k is a natural number) output neuron among the plurality of output neurons (
Figure 112020066813718-pat00012
) Is expressed by the following equation.

[수학식][Equation]

Figure 112020066813718-pat00013
Figure 112020066813718-pat00013

상기

Figure 112020088791885-pat00014
는 상기 j번째 은닉 뉴런의 출력 값에 대한 k번째 가중치를, 상기
Figure 112020088791885-pat00015
는 상기 j번째 은닉 뉴런의 출력 값을, 상기
Figure 112020088791885-pat00016
는 k번째 오프셋을, 상기 함수 f()는 시그모이드(sigmoid) 함수를 나타낸다. remind
Figure 112020088791885-pat00014
Is the k-th weight for the output value of the j-th hidden neuron,
Figure 112020088791885-pat00015
Is the output value of the j-th hidden neuron,
Figure 112020088791885-pat00016
Denotes the k-th offset, and the function f() denotes a sigmoid function.

상기 i번째 입력 뉴런의 출력 값에 대한 j번째 가중치의 오차인 상기

Figure 112020066813718-pat00017
는 다음의 수학식으로 표현된다. The error of the j-th weight with respect to the output value of the i-th input neuron
Figure 112020066813718-pat00017
Is expressed by the following equation.

[수학식][Equation]

Figure 112020088791885-pat00116
Figure 112020088791885-pat00116

상기

Figure 112020066813718-pat00019
는 상수로, 기존의 가중치를 줄이기 위해 가중치 감소 비율을, 상기
Figure 112020066813718-pat00020
는 가중치를 어느 정도로 업데이트할 것인지 결정하는 학습율을 나타낸다. remind
Figure 112020066813718-pat00019
Is a constant, the weight reduction ratio to reduce the existing weight,
Figure 112020066813718-pat00020
Denotes a learning rate that determines how much to update the weights.

상기 j번째 은닉 뉴런의 출력 값에 대한 k번째 가중치의 오차인 상기

Figure 112020066813718-pat00021
는 다음의 수학식으로 표현된다. The error of the k-th weight with respect to the output value of the j-th hidden neuron
Figure 112020066813718-pat00021
Is expressed by the following equation.

[수학식][Equation]

Figure 112020088791885-pat00117
Figure 112020088791885-pat00117

상기

Figure 112020088791885-pat00023
는 상수로, 기존의 가중치를 줄이기 위해 가중치 감소 비율을, 상기
Figure 112020088791885-pat00024
는 가중치를 어느 정도로 업데이트할 것인지 결정하는 학습율을, 상기
Figure 112020088791885-pat00025
는 복수의 출력 뉴런들 중 k번째 뉴런의 에러를, 상기 f'(zk)는
Figure 112020088791885-pat00118
를 나타낸다. remind
Figure 112020088791885-pat00023
Is a constant, the weight reduction ratio to reduce the existing weight,
Figure 112020088791885-pat00024
Is the learning rate that determines how much to update the weights,
Figure 112020088791885-pat00025
Is the error of the k-th neuron among the plurality of output neurons, and f'(z k ) is
Figure 112020088791885-pat00118
Represents.

본 발명의 실시 예에 따른 차량 번호판 인식 시스템은 차량을 촬영하고, 촬영된 이미지에서 차량의 번호판 영역을 포함하는 이미지를 전송하는 카메라, 신경망을 이용한 차량 번호판 인식 방법에 관한 명령들을 저장하는 메모리, 및 상기 명령들을 실행하는 프로세서를 포함한다. A vehicle license plate recognition system according to an embodiment of the present invention includes a camera that photographs a vehicle and transmits an image including a license plate area of the vehicle from the photographed image, a memory for storing instructions regarding a vehicle license plate recognition method using a neural network, and And a processor that executes the instructions.

상기 명령들은 상기 프로세서는 차량의 번호판 영역을 포함하는 이미지를 수신하고, 상기 차량의 번호판 영역에서 분류된 문자 영역을 인식하며, 상기 분류된 문자 영역을 포함하는 이미지에 대해 제1컨볼루션 연산을 수행하여 제1출력 피처 맵을 출력하며, 상기 출력된 제1출력 피처 맵에 대해 샘플링을 적용하여 제2출력 피처 맵을 출력하며, 상기 제2출력 피처 맵에 대해 제2컨볼루션 연산을 수행하여 제3출력 피처 맵을 출력하며, 상기 출력된 제3출력 피처 맵에 대해 샘플링을 적용하여 제4출력 피처 맵을 출력하며, 상기 출력된 제4출력 피처 맵과, 문자의 특징을 수치로 표현한 것으로 정의되며, 상기 문자 영역을 일정 영역들로 나누고 각 영역에 포함된 문자의 픽셀 개수이거나, 상기 문자의 높이를 따라 여러 개로 그려진 수평 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합이거나, 폭에 따라 여러 개로 그려진 수직 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합으로 정의될 수 있는 미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어를 이용하여 상기 분류된 문자 영역에서 문자를 인식하도록 구현된다. According to the instructions, the processor receives an image including the license plate area of the vehicle, recognizes the classified character area in the license plate area of the vehicle, and performs a first convolution operation on the image including the classified character area. To output a first output feature map, apply sampling to the output first output feature map to output a second output feature map, and perform a second convolution operation on the second output feature map Outputs 3 output feature maps, applies sampling to the output 3 output feature maps to output a 4th output feature map, and defines the output 4 output feature map and character features as numerical expressions. The character area is divided into certain areas and is the number of pixels of characters included in each area, or is the sum of white pixels or black pixels located on horizontal lines drawn in several along the height of the character, or according to the width. It is implemented to recognize a character in the classified character area by using a fully connected layer that completely connects a preset feature map that can be defined as a sum of white pixels or black pixels positioned on multiple drawn vertical lines.

본 발명의 실시 예에 따른 신경망을 이용한 차량 번호판 인식 방법 및 시스템은 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN(Convolutional Neural Network) 알고리즘에 같이 적용하여 차량 번호판을 인식함으로써 보다 정확하게 차량 번호판을 인식할 수 있어 주차 유도, 주차 관제, 불법 주차, 또는 과속 단속의 효율성을 높일 수 있는 효과가 있다. Vehicle license plate recognition method and system using a neural network according to an embodiment of the present invention more accurately recognize the vehicle license plate by applying the feature maps extracted from the character region recognized in the license plate region of the vehicle together with the CNN (Convolutional Neural Network) algorithm. Since the vehicle license plate can be recognized, there is an effect of increasing the efficiency of parking guidance, parking control, illegal parking, or speeding control.

본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 상세한 설명이 제공된다.
도 1은 본 발명의 일 실시 예에 따른 차량 번호판 인식 시스템의 블록도를 나타낸다.
도 2는 도 1에 도시된 차량 번호판 인식 장치의 동작을 설명하기 위한 흐름도를 나타낸다.
도 3은 도 1에 도시된 차량 번호판 인식 장치의 동작을 설명하기 위해 차량 번호판 인식 장치에 의해 처리된 이미지들을 나타낸다.
도 4는 도 1에 도시된 차량 번호판 인식 장치의 동작을 설명하기 위해 차량번호판 인식 장치에 의해 처리된 다른 이미지들을 나타낸다.
도 5는 도 1에 도시된 프로세서에 의해 처리되는 CNN 알고리즘의 블록도를 나타낸다.
도 6은 도 5에 도시된 입력 피처 맵과 출력 피처 맵 사이의 관계를 설명하기 위한 블록도를 나타낸다.
도 7은 도 1에 도시된 프로세서에 의해 처리되는 신경망 알고리즘의 블록도의 일 실시 예를 나타낸다.
도 8은 도 1에 도시된 프로세서에 의해 처리되는 신경망 알고리즘의 블록도의 다른 실시 예를 나타낸다.
도 9는 도 1에 도시된 프로세서에 의해 처리되는 신경망 알고리즘의 블록도의 또 다른 실시 예를 나타낸다.
도 10은 도 7에 도시된 신경망 알고리즘의 학습에 따른 과적합 왜곡의 그래프를 나타낸다.
도 11은 도 10에 도시된 과적합 왜곡의 문제점을 해소하기 위한 그래프를 나타낸다.
도 12는 본 발명의 다른 실시 예에 따른 차량 번호판 인식 시스템의 블록도를 나타낸다.
도 13은 본 발명의 또 다른 실시 예에 따른 차량 번호판 인식 시스템의 블록도를 나타낸다.
도 14는 본 발명의 또 다른 실시 예에 따른 차량 번호판 인식 시스템의 블록도를 나타낸다.
도 15는 본 발명의 또 다른 실시 예에 따른 차량 번호판 인식 시스템의 블록도를 나타낸다.
도 16은 도 1에 도시된 프로세서에 의해 처리되는 신경망 알고리즘의 블록도의 또 다른 실시 예를 나타낸다.
도 17은 혼동가능성이 있는 숫자들의 차이를 나타내는 이미지들이다.
A detailed description of each drawing is provided in order to more fully understand the drawings cited in the detailed description of the present invention.
1 is a block diagram of a vehicle license plate recognition system according to an embodiment of the present invention.
2 is a flowchart illustrating an operation of the vehicle license plate recognition apparatus shown in FIG. 1.
FIG. 3 shows images processed by the vehicle license plate recognition apparatus in order to explain the operation of the vehicle license plate recognition apparatus shown in FIG. 1.
FIG. 4 shows other images processed by the vehicle license plate recognition apparatus to explain the operation of the vehicle license plate recognition apparatus shown in FIG. 1.
5 shows a block diagram of a CNN algorithm processed by the processor shown in FIG. 1.
FIG. 6 is a block diagram illustrating a relationship between an input feature map and an output feature map shown in FIG. 5.
7 shows an embodiment of a block diagram of a neural network algorithm processed by the processor shown in FIG. 1.
8 shows another embodiment of a block diagram of the neural network algorithm processed by the processor shown in FIG. 1.
9 shows another embodiment of a block diagram of a neural network algorithm processed by the processor shown in FIG. 1.
10 shows a graph of overfit distortion according to learning of the neural network algorithm shown in FIG. 7.
11 shows a graph for solving the problem of overfit distortion shown in FIG. 10.
12 is a block diagram of a vehicle license plate recognition system according to another embodiment of the present invention.
13 is a block diagram of a vehicle license plate recognition system according to another embodiment of the present invention.
14 is a block diagram of a vehicle license plate recognition system according to another embodiment of the present invention.
15 is a block diagram of a vehicle license plate recognition system according to another embodiment of the present invention.
16 shows another embodiment of a block diagram of a neural network algorithm processed by the processor shown in FIG. 1.
17 are images showing differences between numbers that may be confusing.

본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시 예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시 예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되지 않는다.Specific structural or functional descriptions of the embodiments according to the concept of the present invention disclosed in the present specification are exemplified only for the purpose of describing the embodiments according to the concept of the present invention, and the embodiments according to the concept of the present invention are It may be implemented in various forms and is not limited to the embodiments described herein.

본 발명의 개념에 따른 실시 예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시 예들을 도면에 예시하고 본 명세서에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물, 또는 대체물을 포함한다.Since the embodiments according to the concept of the present invention can apply various changes and have various forms, the embodiments will be illustrated in the drawings and described in detail in the present specification. However, this is not intended to limit the embodiments according to the concept of the present invention to specific disclosed forms, and includes all changes, equivalents, or substitutes included in the spirit and scope of the present invention.

제1 또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1구성요소는 제2구성요소로 명명될 수 있고, 유사하게 제2구성요소는 제1구성요소로도 명명될 수 있다.Terms such as first or second may be used to describe various elements, but the elements should not be limited by the terms. The terms are only for the purpose of distinguishing one component from other components, for example, without departing from the scope of the rights according to the concept of the present invention, the first component may be referred to as the second component, and similarly The second component may also be referred to as a first component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.When a component is referred to as being "connected" or "connected" to another component, it is understood that it may be directly connected or connected to the other component, but other components may exist in the middle. Should be. On the other hand, when a component is referred to as being "directly connected" or "directly connected" to another component, it should be understood that there is no other component in the middle. Other expressions describing the relationship between components, such as "between" and "just between" or "adjacent to" and "directly adjacent to" should be interpreted as well.

본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in this specification are used only to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In the present specification, terms such as "comprise" or "have" are intended to designate that the described feature, number, step, action, component, part, or combination thereof is present, but one or more other features or numbers It is to be understood that the possibility of addition or presence of, steps, actions, components, parts, or combinations thereof is not preliminarily excluded.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 나타낸다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which the present invention belongs. Terms as defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related technology, and should not be interpreted as an ideal or excessively formal meaning unless explicitly defined in this specification. Does not.

이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다.Hereinafter, the present invention will be described in detail by describing a preferred embodiment of the present invention with reference to the accompanying drawings.

도 1은 본 발명의 일 실시 예에 따른 차량 번호판 인식 시스템의 블록도를 나타낸다. 1 is a block diagram of a vehicle license plate recognition system according to an embodiment of the present invention.

도 1을 참고하면, 차량 번호판 인식 시스템(10)은 차량(3)의 번호판을 인식하기 위한 시스템을 의미한다. 차량 번호판 인식 시스템(10)은 주차 관리, 주차 유도, 불법 주차 단속, 차량 과속 단속, 또는 차량의 모니터링 등 다양한 분야에서 활용될 수 있는 시스템이다. Referring to FIG. 1, the vehicle license plate recognition system 10 refers to a system for recognizing the license plate of the vehicle 3. The vehicle license plate recognition system 10 is a system that can be used in various fields such as parking management, parking guidance, illegal parking control, vehicle speeding control, or vehicle monitoring.

차량 번호판 인식 시스템(10)은 차량 번호판 인식 장치(100)를 포함한다. 차량 번호판 인식 장치(100)는 차량(3)의 번호를 인식하는 장치를 의미한다. 차량 번호판 인식 장치(100)는 프로세서(110), 메모리(120), 카메라(130), 및 통신 모듈(140)을 포함한다. 프로세서(110), 메모리(120), 카메라(130), 및 통신 모듈(140)은 서로 통신이 가능하다. 카메라(130)는 차량(3)의 일부를 촬영하고, 촬영된 차량(3)의 이미지를 프로세서(110)로 전달한다. 프로세서(110)는 카메라(130)로부터 수신된 이미지에 대해 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN 알고리즘에 같이 적용하여 차량(3)의 번호를 인식하는 명령들을 실행한다. 프로세서(110)의 구체적인 동작에 대해서는 뒤에서 자세히 설명될 것이다. 메모리(120)는 프로세서(110)에 의해 실행되는 명령들을 저장한다. 통신 모듈(140)은 프로세서(110)에 의해 인식된 차량의 번호판 정보를 네트워크를 통해 다른 서버(미도시)로 전송한다. 상기 다른 서버는 수신된 차량의 번호판 정보를 과속에 대한 벌칙금 부과, 주차 요금 계산 등에 이용한다. 실시 예에 따라 카메라(130)는 외부로 분리될 수 있다. 카메라(130)가 외부로 분리될 때, 카메라(130)는 차량 번호판 인식 장치(100)와 통신할 수 있다. 차량 번호판 인식 장치(100)는 LPR(License Plate Recognition) 등 다양한 용어로 호칭될 수 있다. The vehicle license plate recognition system 10 includes a vehicle license plate recognition device 100. The vehicle license plate recognition device 100 refers to a device that recognizes the number of the vehicle 3. The vehicle license plate recognition apparatus 100 includes a processor 110, a memory 120, a camera 130, and a communication module 140. The processor 110, the memory 120, the camera 130, and the communication module 140 can communicate with each other. The camera 130 photographs a part of the vehicle 3 and transmits the photographed image of the vehicle 3 to the processor 110. The processor 110 executes commands for recognizing the number of the vehicle 3 by applying the feature maps extracted from the character region recognized in the license plate region of the vehicle to the CNN algorithm with respect to the image received from the camera 130. The specific operation of the processor 110 will be described in detail later. The memory 120 stores instructions executed by the processor 110. The communication module 140 transmits the vehicle license plate information recognized by the processor 110 to another server (not shown) through a network. The other server uses the received vehicle license plate information to impose a penalty for speeding, calculate parking fees, and the like. According to an embodiment, the camera 130 may be externally separated. When the camera 130 is separated to the outside, the camera 130 may communicate with the vehicle license plate recognition apparatus 100. The vehicle license plate recognition device 100 may be referred to as various terms such as LPR (License Plate Recognition).

도 2는 도 1에 도시된 차량 번호판 인식 장치의 동작을 설명하기 위한 흐름도를 나타낸다. 도 3은 도 1에 도시된 차량 번호판 인식 장치의 동작을 설명하기 위해 차량 번호판 인식 장치에 의해 처리된 이미지들을 나타낸다., 2 is a flowchart illustrating an operation of the vehicle license plate recognition apparatus shown in FIG. 1. 3 shows images processed by the vehicle license plate recognition apparatus to explain the operation of the vehicle license plate recognition apparatus shown in FIG. 1.

도 1 내지 도 3을 참고하면, 카메라(130)는 차량(3)을 촬영한다(S4001). 1 to 3, the camera 130 photographs the vehicle 3 (S4001).

프로세서(110)는 카메라(130)에 의해 촬영된 차량 번호판 이미지를 이진화한다(S4003). 상기 차량 번호판 이미지를 이진화하는 구체적인 알고리즘은 다음과 같다. The processor 110 binarizes the vehicle license plate image photographed by the camera 130 (S4003). A specific algorithm for binarizing the vehicle license plate image is as follows.

프로세서(110)는 상기 차량 번호판 이미지에 DoG(Difference of Gaussian) 필터를 적용하여 텍스트 획 후보들의 수평 경계점들을 추출하고 수평 획 경계점 지도(Horizontal Stroke Boundary Map)을 생성한다. 도 3의 (b)는 수평 획 경계점 지도의 이미지를 나타낸다. 프로세서(110)는 수평 경계점 연결선의 수직방향 누적을 통해 텍스트 획 사이의 픽셀을 그룹핑하여 세그멘트(segment) 이미지를 생성한다. 도 3의 (c)는 세그먼트 이미지를 나타낸다. 프로세서(110)는 상기 세그멘트 이미지에서 각각의 텍스트가 서로 다른 색깔을 갖도록 컬러 이미지를 생성한다. 도 3의 (d)는 상기 컬러 이미지를 나타낸다. 실시 예에 따라 상기 컬러 이미지 생성 동작은 생략될 수 있다. 프로세서(110)는 상기 컬러 이미지를 흑백 이미지로 변환한다. 도 10의 (a)는 흑백 이미지를 나타낸다. The processor 110 extracts horizontal boundary points of text stroke candidates by applying a DoG (Difference of Gaussian) filter to the vehicle license plate image and generates a horizontal stroke boundary map (Horizontal Stroke Boundary Map). 3(b) shows an image of a horizontal stroke boundary point map. The processor 110 generates a segment image by grouping pixels between text strokes through vertical accumulation of horizontal boundary point connection lines. 3C shows a segment image. The processor 110 generates a color image so that each text has a different color in the segment image. 3D shows the color image. Depending on the embodiment, the color image generation operation may be omitted. The processor 110 converts the color image into a black and white image. 10A shows a black and white image.

도 2를 참고하면, 프로세서(110)는 상기 세그먼트 이미지를 분석한다(S4004). 프로세서(110)는 상기 분석 결과에 따라 차량의 번호판 영역을 추출하고 잘라낸다(S4005). 프로세서(110)는 상기 잘라낸 번호판 영역의 선명도를 추정한다(S4006). 프로세서(110)는 선명도를 추정하고, 번호판 크기의 정규화와 기울기를 보정한다(S4007). 프로세서(110)는 선명도를 계산하고, 계산된 선명도가 일정값보다 큰지 판단한다(S4008). 프로세서(110)는 상기 계산된 선명도가 일정값보다 클 때, 선명도를 감소시킨다(S4009). 프로세서(110)는 상기 계산된 선명도가 일정값보다 작을 때, 상기 차량의 번호판 영역의 이미지를 향상시킨다(S4010). Referring to FIG. 2, the processor 110 analyzes the segment image (S4004). The processor 110 extracts and cuts out the license plate area of the vehicle according to the analysis result (S4005). The processor 110 estimates the sharpness of the cut-out license plate area (S4006). The processor 110 estimates the sharpness, normalizes the size of the license plate and corrects the inclination (S4007). The processor 110 calculates the sharpness and determines whether the calculated sharpness is greater than a predetermined value (S4008). When the calculated sharpness is greater than a predetermined value, the processor 110 reduces the sharpness (S4009). When the calculated sharpness is less than a predetermined value, the processor 110 enhances the image of the license plate area of the vehicle (S4010).

프로세서(110)는 차량의 번호판 영역이 포함된 이미지에서 번호판 타입을 선택한다(S4011). 상기 번호판 타입은 싱글 라인(single line) 번호판, 또는 더블 라인(double line) 번호판으로 나눠질 수 있다. 또한, 상기 번호판 타입은 지명명이 포함되는지 여부로 분류될 수 있다. 프로세서(110)는 분류된 번호판 영역에서 문자 영역을 분류한다(S4012). The processor 110 selects a license plate type from the image including the license plate area of the vehicle (S4011). The license plate type may be divided into a single line license plate or a double line license plate. In addition, the license plate type may be classified by whether or not a place name is included. The processor 110 classifies the character area from the classified license plate area (S4012).

도 4는 도 1에 도시된 차량 번호판 인식 장치의 동작을 설명하기 위해 차량번호판 인식 장치에 의해 처리된 다른 이미지들을 나타낸다. 구체적으로 도 4는 잘못된 문자 영역의 분류를 나타내는 이미지들이다. 분류된 번호판 영역에서 문자 영역의 분류 동작은 중요하다. 분류 동작이 잘못되면, 잘못된 문자로 인식될 수 있다. FIG. 4 shows other images processed by the vehicle license plate recognition apparatus to explain the operation of the vehicle license plate recognition apparatus shown in FIG. 1. Specifically, FIG. 4 is an image showing classification of an incorrect character area. In the classified license plate area, the classification operation of the character area is important. If the classification operation is wrong, it may be recognized as an incorrect character.

프로세서(110)는 분류된 문자 영역에서 미리 설정된 피처 맵을 추출한다(S4013). 상기 미리 설정된 피처 맵은 문자의 특징을 수치로 표현한 것으로 정의된다. 상기 미리 설정된 피처 맵은 ANN 구조 신경망 알고리즘에서 입력으로 이용된다. 예컨대, 상기 미리 설정된 피처 맵은 문자 영역을 일정 영역들로 나누고 각 영역에 포함된 문자의 픽셀 개수로 정의될 수 있다. 또한, 상기 미리 설정된 피처 맵은 문자의 높이를 따라 여러 개로 그려진 수평 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합으로 정의될 수 있다. 또한, 상기 미리 설정된 피처 맵은 폭에 따라 여러 개로 그려진 수직 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합으로 정의될 수 있다.
프로세서(110)는 분류된 문자 영역에서 CNN 알고리즘을 수행하여 CNN 피처 맵을 출력한다(S4014).
The processor 110 extracts a preset feature map from the classified text area (S4013). The preset feature map is defined as a numerical expression of character features. The preset feature map is used as an input in an ANN structured neural network algorithm. For example, the preset feature map may divide a character area into predetermined areas and be defined as the number of pixels of characters included in each area. In addition, the preset feature map may be defined as a sum of white pixels or black pixels positioned on horizontal lines drawn in multiple numbers along the height of a character. In addition, the preset feature map may be defined as a sum of white pixels or black pixels positioned on vertical lines drawn in multiple numbers according to a width.
The processor 110 outputs a CNN feature map by performing a CNN algorithm in the classified character region (S4014).

프로세서(110)는 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN 알고리즘에 같이 적용하여 차량 번호판을 인식한다(S4015). 즉, 프로세서(110)는 미리 설정된 피처 맵과 CNN 알고리즘을 통해 출력된 CNN 피처 맵을 입력으로 CNN 알고리즘을 적용하여 차량 번호판을 인식한다. The processor 110 recognizes the vehicle license plate by applying the feature maps extracted from the character region recognized in the vehicle license plate region together with the CNN algorithm (S4015). That is, the processor 110 recognizes the vehicle license plate by applying the CNN algorithm as inputs to the preset feature map and the CNN feature map output through the CNN algorithm.

프로세서(110)는 문자열을 인식하고, 문자들의 종류 및 배치 규칙에 따라 오인식 여부를 판단하고, 최종 번호판 문자열 인식 결과를 출력한다(S4016). The processor 110 recognizes the character string, determines whether or not it is misrecognized according to the type and arrangement rule of the characters, and outputs a final license plate character string recognition result (S4016).

차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN 알고리즘에 같이 적용하는 것에 대해서는 뒤에서 자세히 설명될 것이다. The application of the feature maps extracted from the text area recognized in the vehicle license plate area to the CNN algorithm will be described in detail later.

도 5는 도 1에 도시된 프로세서에 의해 처리되는 CNN 알고리즘의 블록도를 나타낸다. 5 shows a block diagram of a CNN algorithm processed by the processor shown in FIG. 1.

도 1 내지 도 5를 참고하면, CNN(Convolutional Neural Network)는 딥 러닝(deep learning) 알고리즘으로, 이미지를 분석하는데 주로 이용된다. 1 to 5, a convolutional neural network (CNN) is a deep learning algorithm and is mainly used to analyze an image.

CNN 알고리즘은 제1컨볼루션 레이어(convolution layer), 제1맥스 풀링 레이어(max pooling layer), 제2컨볼루션 레이어(convolution layer), 제2맥스 풀링 레이어(max pooling layer), 및 풀리 커넥티드 레이어(fully connected layer)를 포함한다. The CNN algorithm includes a first convolution layer, a first max pooling layer, a second convolution layer, a second max pooling layer, and a fully connected layer. Includes (fully connected layer).

프로세서(110)는 제1컨볼루션 레이어의 동작을 수행한다. 제1컨볼루션 레이어에서 동작은 아래와 같다. The processor 110 performs an operation of the first convolution layer. The operation in the first convolution layer is as follows.

프로세서(110)는 하나의 인식된 문자 영역을 포함하는 이미지를 수신한다. 상기 하나의 인식된 문자 영역을 포함하는 이미지에는 하나의 숫자, 하나의 영문자, 또는 하나의 한글이 포함된다. 상기 이미지는 0, 또는 1을 가지는 픽셀값들로 구성된다. 상기 이미지는 (가로 사이즈, 세로 사이즈, 채널의 수)로 표현된다. 이미지가 이진화될 때, 채널의 수는 1이다. 예컨대, 도 6에 도시된 이미지는 (28, 28, 1)로 표현될 수 있다. The processor 110 receives an image including one recognized character area. The image including the one recognized character area includes one number, one English character, or one Hangul. The image is composed of pixel values having 0 or 1. The image is expressed as (horizontal size, vertical size, number of channels). When the image is binarized, the number of channels is 1. For example, the image shown in FIG. 6 may be expressed as (28, 28, 1).

프로세서(110)는 상기 수신된 이미지와 제1필터에 대해 컨볼루션 연산을 수행하여 제1컨볼루션 결과 값들을 출력한다. 상기 수신된 이미지는 입력 피처 맵(input feature map)으로 호칭될 수 있다. 상기 제1컨볼루션 결과 값들은 제1출력 피처 맵(output feature map)으로 호칭될 수 있다. 상기 제1필터는 매트릭스 형태로 구현되며, 상기 수신된 이미지에서 에지(edge)를 검출하거나 상기 수신된 이미지를 선명화하는데 이용된다. 각각의 목적에 따라 상기 매트릭스에 이용되는 정수는 다양할 수 있다. 상기 제1필터는 커널(kernel)이라고 호칭될 수 있다. 상기 제1필터는 (필터의 가로 사이즈, 필터의 세로 사이즈, 필터 채널의 수) x (필터의 개수)로 표현될 수 있다. 예컨대, 도 5에 도시된 제1필터는 (5, 5, 1) x 16으로 표현될 수 있다. The processor 110 outputs first convolution result values by performing a convolution operation on the received image and the first filter. The received image may be referred to as an input feature map. The first convolution result values may be referred to as a first output feature map. The first filter is implemented in a matrix form and is used to detect an edge in the received image or sharpen the received image. Depending on each purpose, the integer used in the matrix may vary. The first filter may be referred to as a kernel. The first filter may be expressed as (the horizontal size of the filter, the vertical size of the filter, the number of filter channels) x (the number of filters). For example, the first filter shown in FIG. 5 may be expressed as (5, 5, 1) x 16.

상기 컨볼루션 연산은 상기 수신된 이미지와 상기 제1필터의 컨볼루션을 의미한다. 이 때, 상기 제1필터에 가중치(weight)가 곱해질 수 있다. 컨볼루션 연산의 결과인 제1출력 피처 맵은 (가로 크기, 세로 크기, 필터의 개수)로 표현될 수 있다. The convolution operation means convolution of the received image and the first filter. In this case, a weight may be multiplied by the first filter. The first output feature map resulting from the convolution operation may be expressed as (horizontal size, vertical size, number of filters).

도 5에 도시된 상기 수신된 이미지인 입력 피처 맵이 (28, 28, 1)이고, 제1필터가 (5, 5, 1) x 16일 때, 제1출력 피처 맵은 (24, 24, 16)으로 표현될 수 있다. When the input feature map that is the received image shown in FIG. 5 is (28, 28, 1) and the first filter is (5, 5, 1) x 16, the first output feature map is (24, 24, It can be expressed as 16).

도 6은 도 5에 도시된 입력 피처 맵과 출력 피처 맵 사이의 관계를 설명하기 위한 블록도를 나타낸다. FIG. 6 is a block diagram illustrating a relationship between an input feature map and an output feature map shown in FIG. 5.

도 1 내지 도 6을 참고하면, 입력 피처 맵이 (l-1)이고, 출력 피처 맵이 (l)이고, 필터 뱅크 w을 이용한 컨볼루션 연산은 다음의 수학식과 같다. 1 to 6, an input feature map is (l-1), an output feature map is (l), and a convolution operation using the filter bank w is as follows.

[수학식 1] [Equation 1]

Figure 112020066813718-pat00026
Figure 112020066813718-pat00026

상기

Figure 112020066813718-pat00027
는 k번째 피처 맵의 c번째 필터의 u행, v열에 위치한 뉴런의 가중치를, 상기
Figure 112020066813718-pat00028
는 입력 피처 맵(l-1)의 c 피처 맵의 (i+u)행, (j+v)열에 있는 뉴런의 출력을, 상기
Figure 112020066813718-pat00029
는 l층의 k번째 피처 맵의 바이어스를, 상기
Figure 112020066813718-pat00030
는 출력 피처 맵(l)의 k번째 출력 피처 맵에서 i행, j열에 위치한 뉴런의 출력을 의미한다. 상기 fc는 입력 피처 맵의 채널 개수, 상기 k는 필터 뱅크의 인덱스를, 상기 c는 입력 피처 맵의 인덱스를. 상기 u와 v는 필터의 가로, 세로 인덱스를 의미한다. remind
Figure 112020066813718-pat00027
Is the weight of neurons located in row u and column v of the c-th filter of the k-th feature map,
Figure 112020066813718-pat00028
Is the output of the neuron in the (i+u) row, (j+v) column of the c feature map of the input feature map (l-1),
Figure 112020066813718-pat00029
Is the bias of the k-th feature map of the l layer,
Figure 112020066813718-pat00030
Denotes the output of neurons located in row i and column j in the k-th output feature map of the output feature map (l). Wherein fc is the number of channels of the input feature map, k is the index of the filter bank, and c is the index of the input feature map. The u and v denote the horizontal and vertical indexes of the filter.

예컨대, 상기 제1맥스 풀링 레이어의 출력인 제2출력 피처 맵(12, 12, 16)이 입력 피처 맵(l-1)이고, 제2컨볼루션 레이어의 출력인 제3출력 피처 맵(10, 10, 24)이 출력 피처 맵(l)일 수 있다. 이 때, 제3필터((3, 3, 16) x 24)의 뱅크는 w일 수 있다. For example, the second output feature map (12, 12, 16) that is the output of the first max pooling layer is the input feature map (l-1), and the third output feature map (10, which is the output of the second convolution layer) 10, 24) may be the output feature map (l). In this case, the bank of the third filter (3, 3, 16) x 24 may be w.

도 5를 참고하면, 프로세서(110)는 제1맥스 풀링 레이어의 동작을 수행한다. 제1맥스 풀링 레이어에서 동작은 제1컨볼루션 레이어의 결과값인 제1출력 피처 맵에 제2필터를 적용하여 제2출력 피처 맵을 출력하는 것을 의미한다. 제2필터는 (필터의 가로 사이즈, 필터의 세로 사이즈)로 표현될 수 있다. 예컨대, 도 5에 도시된 제2필터는 (2, 2)로 표현될 수 있다. Referring to FIG. 5, the processor 110 performs an operation of the first max pooling layer. The operation in the first max pooling layer refers to outputting a second output feature map by applying a second filter to a first output feature map that is a result value of the first convolution layer. The second filter may be expressed as (the horizontal size of the filter and the vertical size of the filter). For example, the second filter shown in FIG. 5 may be expressed as (2, 2).

도 5에 도시된 제1출력 피처 맵이 (24, 24, 16)이고, 제2필터가 (2, 2)일 때, 제2출력 피처 맵은 (12, 12, 16)으로 표현될 수 있다. When the first output feature map shown in FIG. 5 is (24, 24, 16) and the second filter is (2, 2), the second output feature map may be expressed as (12, 12, 16). .

제1맥스 풀링 레이어에서의 연산은 아래의 수학식과 같이 표현될 수 있다. The operation in the first max pooling layer may be expressed as the following equation.

[수학식 2][Equation 2]

Figure 112020066813718-pat00031
Figure 112020066813718-pat00031

여기서, 상기 m과 상기 n은 각각 필터의 가로와 세로의 크기를 나타내며, 상기 s와 상기 t는 입력 피처 맵의 샘플링 영역 인덱스를 나타낸다. Here, m and n denote the horizontal and vertical dimensions of the filter, respectively, and s and t denote the sampling area index of the input feature map.

프로세서(110)는 제2컨볼루션 레이어의 동작을 수행한다. 제2컨볼루션 레이어에서 동작은 제1컨볼루션 레이어에서의 동작과 유사하다. 즉, 프로세서(110)는 제1맥스 풀링 레이어의 출력인 제2출력 피처 맵과 제3필터를 컨볼루션하여 제3출력 피처 맵을 출력한다. 상기 제3필터는 상기 제1필터와 다른 필터일 수 있다. 도 5에 도시된 상기 수신된 이미지인 제2출력 피처 맵이 (12, 12, 16)이고, 제3필터가 (3, 3, 16) x 24일 때, 제3출력 피처 맵은 (10, 10, 24)으로 표현될 수 있다. The processor 110 performs an operation of the second convolution layer. The operation in the second convolution layer is similar to the operation in the first convolution layer. That is, the processor 110 outputs a third output feature map by convolving the second output feature map, which is the output of the first max pooling layer, and the third filter. The third filter may be a filter different from the first filter. When the second output feature map that is the received image shown in FIG. 5 is (12, 12, 16) and the third filter is (3, 3, 16) x 24, the third output feature map is (10, It can be expressed as 10, 24).

프로세서(110)는 제2맥스 풀링 레이어의 동작을 수행한다. 제2맥스 풀링 레이어에서 동작은 아래와 같다. 제2맥스 풀링 레이어에서 동작은 제1맥스 풀링 레이어에서의 동작과 유사하다. 즉, 프로세서(110)는 제2컨볼루션 레이어의 출력인 제3출력 피처 맵에 제4필터를 적용하여 제4출력 피처 맵을 출력한다. 상기 제4필터는 상기 제2필터와 다른 필터일 수 있다. 도 5에 도시된 제3출력 피처 맵이 (10, 10, 24)이고, 제4필터가 (2, 2)일 때, 제4출력 피처 맵은 (5, 5, 24)으로 표현될 수 있다. The processor 110 performs an operation of the second max pooling layer. The operation in the second max pooling layer is as follows. The operation in the second max pooling layer is similar to the operation in the first max pooling layer. That is, the processor 110 outputs the fourth output feature map by applying the fourth filter to the third output feature map that is the output of the second convolution layer. The fourth filter may be a filter different from the second filter. When the third output feature map shown in FIG. 5 is (10, 10, 24) and the fourth filter is (2, 2), the fourth output feature map may be expressed as (5, 5, 24). .

프로세서(110)는 풀리 커넥티드 레이어의 동작을 수행한다. 풀리 커넥티드 레이어에서 동작은 아래와 같다. 풀리 커넥티드 레이어는 복수의 풀리 커넥티드 레이어들을 포함한다. 제1풀리 커넉티드 레이어와 제2풀리 커넥티드 레이어 각각은 (입력 뉴런의 개수, 출력 뉴런의 개수)로 표현된다. 제1풀리 커넥티드 레이어에서 입력 뉴런의 개수는 600개이며, 제1풀리 커넥티드 레이어에서 출력 뉴런의 개수는 200개일 수 있다. 제1풀리 커넥티드 레이어의 입력 뉴런은 제4출력 피처 맵(5, 5, 24)에서 도출된다. 제1풀리 커넥티드 레이어의 j번째 출력 뉴런(

Figure 112020066813718-pat00032
)은 다음의 수학식과 같이 표현될 수 있다. The processor 110 performs an operation of a fully connected layer. The operation in the fully connected layer is as follows. The pulley connected layer includes a plurality of pulley connected layers. Each of the first pulley connected layer and the second pulley connected layer is expressed as (the number of input neurons and the number of output neurons). The number of input neurons in the first pulley-connected layer may be 600, and the number of output neurons in the first pulley-connected layer may be 200. The input neurons of the first pulley connected layer are derived from the fourth output feature maps 5, 5, and 24. J-th output neuron of the first pulley connected layer (
Figure 112020066813718-pat00032
) Can be expressed as the following equation.

[수학식 3][Equation 3]

Figure 112020066813718-pat00033
Figure 112020066813718-pat00033

또한, 제2풀리 커넥티드 레이어에서 입력 뉴런의 개수는 제1풀리 커넥티드 레이어의 출력 뉴런의 개수인 200개이며, 제2풀리 커넥티드 레이어의 출력 뉴런의 개수인 10개일 수 있다. 제2풀리 커넥티트 레이어의 k번째 뉴런의 가중 합의 입력값 z와 출력 값은 O은 아래의 수학식과 같이 표현될 수 있다. In addition, the number of input neurons in the second pulley-connected layer may be 200, which is the number of output neurons in the first pulley-connected layer, and 10, which is the number of output neurons in the second pulley-connected layer. An input value z and an output value of the sum of the weights of the k-th neuron of the second pulley connect layer may be expressed by the following equation.

[수학식 4][Equation 4]

Figure 112020066813718-pat00034
Figure 112020066813718-pat00034

프로세서(110)는 복수의 서로 다른 이미지들을 수신하여 CNN 알고리즘인 제1컨볼루션 레이어, 제1맥스 풀링 레이어, 제2컨볼루션 레이어, 제2맥스 풀링 레이어, 및 풀리 커넥티드 레이어의 동작들을 반복하여 CNN 알고리즘을 학습시킨다. 학습에 따라 풀리 커넥티드 레이어의 가중치와 컨볼루션 레이어들의 필터 가중치가 업데이트된다. The processor 110 receives a plurality of different images and repeats the operations of the first convolution layer, the first max pooling layer, the second convolution layer, the second max pooling layer, and the fully connected layer, which are CNN algorithms. Train the CNN algorithm. According to learning, the weight of the fully connected layer and the filter weight of the convolutional layers are updated.

도 7은 도 1에 도시된 프로세서에 의해 처리되는 신경망 알고리즘의 블록도의 일 실시 예를 나타낸다. 도 8은 도 1에 도시된 프로세서에 의해 처리되는 신경망 알고리즘의 블록도의 다른 실시 예를 나타낸다. 도 9는 도 1에 도시된 프로세서에 의해 처리되는 신경망 알고리즘의 블록도의 또 다른 실시 예를 나타낸다. 7 shows an embodiment of a block diagram of a neural network algorithm processed by the processor shown in FIG. 1. 8 shows another embodiment of a block diagram of the neural network algorithm processed by the processor shown in FIG. 1. 9 shows another embodiment of a block diagram of a neural network algorithm processed by the processor shown in FIG. 1.

도 1, 및 도 7 내지 도 9를 참고하면, 프로세서(110)는 하나의 인식된 문자 영역을 포함하는 이미지를 수신한다. 프로세서(110)는 상기 수신된 이미지에 대해 제1컨볼루션 연산을 수행하여 제1출력 피처 맵을 출력한다. 1 and 7 to 9, the processor 110 receives an image including one recognized character area. The processor 110 outputs a first output feature map by performing a first convolution operation on the received image.

프로세서(110)는 상기 제1출력 피처 맵에 대해 샘플링을 적용하여 제2출력 피처 맵을 출력한다. 즉, 프로세서(110)는 제1맥스 풀링 레이어의 동작을 수행한다.The processor 110 outputs a second output feature map by applying sampling to the first output feature map. That is, the processor 110 performs the operation of the first max pooling layer.

프로세서(110)는 상기 출력된 제2출력 피처 맵에 대해 제2컨볼루션 연산을 수행하여 제3출력 피처 맵을 출력한다. The processor 110 outputs a third output feature map by performing a second convolution operation on the output second output feature map.

프로세서(110)는 상기 출력된 제3출력 피처 맵에 대해 샘플링을 적용하여 제4출력 피처 맵을 출력한다. 즉, 프로세서(110)는 제2맥스 풀링 레이어의 동작을 수행한다.The processor 110 outputs a fourth output feature map by applying sampling to the output third output feature map. That is, the processor 110 performs the operation of the second max pooling layer.

프로세서(110)는 상기 출력된 제4출력 피처 맵과, 미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어(fully connected layer)를 이용하여 상기 하나의 인식된 문자 영역에서 문자를 인식한다. The processor 110 recognizes a character in the one recognized character region using a fully connected layer that completely connects the output fourth output feature map and a preset feature map.

상기 풀리 커넥티드 레이어는 입력 레이어(input layer), 은닉 레이어(hidden layer), 및 출력 레이어(output layer)를 포함한다. The fully connected layer includes an input layer, a hidden layer, and an output layer.

상기 은닉 레이어는 복수의 은닉 뉴런들(neurons)을 포함한다. 상기 은닉 레이어는 (은닉 레이어의 입력 뉴런의 개수, 은닉 레이어의 출력 뉴런의 개수)로 표현될 수 있다. 상기 출력 레이어는 (출력 레이어의 입력 뉴런의 개수, 출력 레이어의 출력 뉴런의 개수)로 표현될 수 있다. 예컨대, 도 8에 도시된 은닉 레이어의 (840, 60)는 은닉 레이어의 입력 뉴런의 개수가 840개이고, 은닉 레이어의 출력 뉴런의 개수가 60개임을 의미한다. 또한, 도 8에 도시된 출력 레이어의 (60, 10)는 출력 레이어의 입력 뉴런의 개수가 60개이며, 출력 레이어의 출력 뉴런의 개수가 10개임을 의미한다. The hidden layer includes a plurality of hidden neurons. The hidden layer may be expressed as (the number of input neurons of the hidden layer and the number of output neurons of the hidden layer). The output layer may be expressed as (the number of input neurons in the output layer and the number of output neurons in the output layer). For example, (840, 60) of the hidden layer shown in FIG. 8 means that the number of input neurons of the hidden layer is 840 and the number of output neurons of the hidden layer is 60. In addition, (60, 10) of the output layer shown in FIG. 8 means that the number of input neurons of the output layer is 60 and the number of output neurons of the output layer is 10.

상기 미리 설정된 피처 맵의 특징들의 개수가 m(m은 2이상의 자연수)개이고, 상기 출력된 제4출력 피처의 특징들의 개수가 n개(n은 2이상의 자연수)일 때, 상기 복수의 은닉 뉴런들 중 j번째(j는 자연수) 은닉 뉴런의 입력 값(

Figure 112020066813718-pat00035
)은 다음의 수학식으로 표현된다. When the number of features of the preset feature map is m (m is a natural number of 2 or more), and the number of features of the output fourth output feature is n (n is a natural number of 2 or more), the plurality of hidden neurons Of the jth (j is a natural number) hidden neuron input value (
Figure 112020066813718-pat00035
) Is expressed by the following equation.

[수학식 5][Equation 5]

Figure 112020066813718-pat00036
Figure 112020066813718-pat00036

상기 복수의 은닉 뉴런들 중 j번째(j는 자연수) 은닉 뉴런의 출력 값(

Figure 112020066813718-pat00037
)은 다음의 수학식으로 표현된다. The output value of the j-th (j is a natural number) hidden neuron among the plurality of hidden neurons (
Figure 112020066813718-pat00037
) Is expressed by the following equation.

[수학식 6][Equation 6]

Figure 112020066813718-pat00038
Figure 112020066813718-pat00038

상기

Figure 112020088791885-pat00039
는 상기 a번째 특징에 대한 j번째 가중치를, 상기
Figure 112020088791885-pat00040
는 상기 미리 설정된 피처 맵의 특징들 중 a번째 특징을, 상기
Figure 112020088791885-pat00041
는 상기 c번째 결과 값에 대한 j번째 가중치를, 상기
Figure 112020088791885-pat00042
는 상기 출력된 제4출력 피처의 특징들 중 c번째 결과 값을, 상기
Figure 112020088791885-pat00043
는 j번째 오프셋(offset)을, 상기 함수 f()는 시그모이드(sigmoid) 함수를 나타낸다. remind
Figure 112020088791885-pat00039
Is the j-th weight for the a-th feature,
Figure 112020088791885-pat00040
Is the a-th feature among the features of the preset feature map,
Figure 112020088791885-pat00041
Is the j-th weight for the c-th result value,
Figure 112020088791885-pat00042
Is the c-th result value among the features of the outputted fourth output feature,
Figure 112020088791885-pat00043
Denotes the j-th offset, and the function f() denotes a sigmoid function.

상기 미리 설정된 피처 맵의 특징들끼리만 서로 연결되며, 상기 출력된 제4출력 피처의 특징들끼리만 서로 연결된다. Only features of the preset feature map are connected to each other, and only features of the output fourth output feature are connected to each other.

상기 출력 레이어는 복수의 출력 뉴런들을 포함하며, 상기 복수의 출력 뉴런들 중 k번째(k는 자연수) 출력 뉴런의 입력 값(

Figure 112020066813718-pat00044
)은 다음의 수학식으로 표현된다. The output layer includes a plurality of output neurons, and an input value of the output neuron (k is a natural number) among the plurality of output neurons (
Figure 112020066813718-pat00044
) Is expressed by the following equation.

[수학식 7][Equation 7]

Figure 112020066813718-pat00045
Figure 112020066813718-pat00045

상기 복수의 출력 뉴런들 중 k번째(k는 자연수) 출력 뉴런의 출력 값(

Figure 112020066813718-pat00046
)은 다음의 수학식으로 표현된다. The output value of the k-th (k is a natural number) output neuron among the plurality of output neurons (
Figure 112020066813718-pat00046
) Is expressed by the following equation.

[수학식 8][Equation 8]

Figure 112020066813718-pat00047
Figure 112020066813718-pat00047

상기

Figure 112020066813718-pat00048
는 상기 j번째 은닉 뉴런의 출력 값에 대한 k번째 가중치를, 상기
Figure 112020066813718-pat00049
는 상기 j번째 은닉 뉴런의 출력 값을, 상기
Figure 112020066813718-pat00050
는 k번째 오프셋을 나타낸다. remind
Figure 112020066813718-pat00048
Is the k-th weight for the output value of the j-th hidden neuron,
Figure 112020066813718-pat00049
Is the output value of the j-th hidden neuron,
Figure 112020066813718-pat00050
Represents the k-th offset.

복수의 출력 뉴런들 중 k번째 뉴런의 에러

Figure 112020066813718-pat00051
와 10개의 뉴런들의 전체 에러 E는 다음의 수학식들로 표현된다. The error of the k-th neuron among the plurality of output neurons
Figure 112020066813718-pat00051
The total error E of and 10 neurons is expressed by the following equations.

[수학식 9][Equation 9]

Figure 112020066813718-pat00052
Figure 112020066813718-pat00052

상기

Figure 112020066813718-pat00053
는 입력 샘플 이미지에 대한 기대되는 출력 값이고, 상기
Figure 112020066813718-pat00054
는 실제 출력 값을 나타낸다. remind
Figure 112020066813718-pat00053
Is the expected output value for the input sample image, where
Figure 112020066813718-pat00054
Represents the actual output value.

[수학식 10][Equation 10]

Figure 112020066813718-pat00055
Figure 112020066813718-pat00055

상기 E는 10개의 뉴런들의 전체 에러를 나타낸다. E represents the total error of 10 neurons.

프로세서(110)는 출력된 제4출력 피처 맵과, 미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어(fully connected layer)에서도 전체 에러(E)를 줄이기 위해 가중치(W)를 업데이트한다. The processor 110 updates the weight W in order to reduce the total error E even in a fully connected layer that completely connects the output fourth output feature map and the preset feature map.

j번째 은닉 뉴런의 출력 값에 대한 k번째 가중치의 오차와, 상기 i번째 입력 뉴런의 출력 값에 대한 j번째 가중치의 오차는 에러 역전파(error backpropagation) 알고리즘으로 계산될 수 있다. 에러 역전판 알고리즘은 다음의 수학식들로 표현된다. An error of the k-th weight with respect to the output value of the j-th hidden neuron and the error of the j-th weight with respect to the output value of the i-th input neuron may be calculated by an error backpropagation algorithm. The error inversion plate algorithm is expressed by the following equations.

[수학식 11][Equation 11]

Figure 112020088791885-pat00119
Figure 112020088791885-pat00119

[수학식 12][Equation 12]

Figure 112020088791885-pat00120
Figure 112020088791885-pat00120

상기

Figure 112020066813718-pat00058
는 상기 j번째 은닉 뉴런의 출력 값에 대한 k번째 가중치의 오차를, 상기
Figure 112020066813718-pat00059
는 상기 i번째 입력 뉴런의 출력 값에 대한 j번째 가중치의 오차를 나타낸다. 상기
Figure 112020066813718-pat00060
은 학습율을 나타낸다. remind
Figure 112020066813718-pat00058
Is the error of the k-th weight with respect to the output value of the j-th hidden neuron,
Figure 112020066813718-pat00059
Denotes an error of the j-th weight with respect to the output value of the i-th input neuron. remind
Figure 112020066813718-pat00060
Represents the learning rate.

프로세서(110)는 은닉 레이어와 출력 레이어에서 가중치들의 오차를 계산하고, 아래의 수학식을 이용하여 기존의 가중치들을 업데이트한다. The processor 110 calculates an error of the weights in the hidden layer and the output layer, and updates the existing weights using the following equation.

[수학식 13][Equation 13]

Figure 112020066813718-pat00061
Figure 112020066813718-pat00061

상기

Figure 112020066813718-pat00062
는 모멘템으로 가중치를 업데이트할 때, 기존의 업데이트 방향으로 관성이 유지되도록하는 상수이다.remind
Figure 112020066813718-pat00062
Is a constant that keeps the inertia in the existing update direction when updating the weight with the momentum.

차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN 알고리즘에 같이 적용하는 차량 번호판 인식 시스템(10)은 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN 알고리즘에 같이 적용하여 차량 번호판을 인식함으로써 CNN 알고리즘만을 이용하여 차량 번호판을 인식하는 것보다 정확하게 차량 번호판을 인식할 수 있다는 장점이 있다. The vehicle license plate recognition system 10, which applies the feature maps extracted from the text region recognized in the vehicle license plate region to the CNN algorithm, applies the feature maps extracted from the text region recognized in the vehicle license plate region to the CNN algorithm. By recognizing the vehicle license plate, there is an advantage in that it is possible to accurately recognize the vehicle license plate rather than recognizing the vehicle license plate using only the CNN algorithm.

도 10은 도 7에 도시된 신경망 알고리즘의 학습에 따른 과적합 왜곡의 그래프를 나타낸다. 10 shows a graph of overfit distortion according to learning of the neural network algorithm shown in FIG. 7.

도 10을 참고하면, 가중치들을 업데이트하기 위해 반복적으로 신경망 알고리즘을 학습시킬 때, 도 10에 도시된 바와 같이 결정면이 왜곡될 수 있다. 특히, 결정면의 근처의 샘플들의 분류 능력이 떨어질 수 있다. 가중치들을 과도하게 업데이트하여 분류 능력이 떨어지는 현상을 오버-피팅(over-fitting) 또는 과적합이라 한다.Referring to FIG. 10, when a neural network algorithm is repeatedly trained to update weights, a crystal plane may be distorted as shown in FIG. 10. In particular, the ability to classify samples in the vicinity of the crystal plane may deteriorate. A phenomenon in which the classification ability is deteriorated by excessively updating the weights is called over-fitting or overfitting.

도 11은 도 10에 도시된 과적합 왜곡의 문제점을 해소하기 위한 그래프를 나타낸다. 도 10의 X축은 반복 학습의 횟수를 의미하며, Y축은 정확도를 나타낸다. 11 shows a graph for solving the problem of overfit distortion shown in FIG. 10. The X-axis of FIG. 10 indicates the number of repetitive learning, and the Y-axis indicates accuracy.

도 1과 도 11을 참고하면, 반복 학습의 횟수가 증가할수록 객체 분류의 정확도가 증가하지 않는다. 반복 학습의 횟수가 과다하게 수행될 때, 오버-피팅의 문제가 발생할 수 있다. 반복 학습의 횟수가 너무 적게 수행될 때, 정확도가 떨어지는 언더-피팅(under-fitting)의 문제가 발생할 수 있다. Referring to FIGS. 1 and 11, the accuracy of object classification does not increase as the number of repetitive learning increases. When the number of repetitive learning is excessively performed, a problem of over-fitting may occur. When the number of iterative learning is performed too little, a problem of under-fitting, which is less accurate, may occur.

오버-피팅의 문제를 해결하기 위해 프로세서(110)는 아래와 같은 수학식들을 적용한다. In order to solve the over-fitting problem, the processor 110 applies the following equations.

[수학식 14][Equation 14]

Figure 112020088791885-pat00121
Figure 112020088791885-pat00121

상기

Figure 112020066813718-pat00064
는 상기 i번째 입력 뉴런의 출력 값에 대한 j번째 가중치의 오차를 , 상기
Figure 112020066813718-pat00065
는 상수로, 기존의 가중치를 줄이기 위해 가중치 감소 비율을, 상기
Figure 112020066813718-pat00066
는 가중치를 어느 정도로 업데이트할 것인지 결정하는 학습율을 나타낸다. 상기
Figure 112020066813718-pat00067
는 상기 i번째 입력 뉴런의 출력 값에 대한 j번째 가중치를 나타낸다. remind
Figure 112020066813718-pat00064
Is the error of the j-th weight with respect to the output value of the i-th input neuron,
Figure 112020066813718-pat00065
Is a constant, the weight reduction ratio to reduce the existing weight,
Figure 112020066813718-pat00066
Denotes a learning rate that determines how much to update the weights. remind
Figure 112020066813718-pat00067
Represents the j-th weight for the output value of the i-th input neuron.

[수학식 15][Equation 15]

Figure 112020088791885-pat00122
Figure 112020088791885-pat00122

상기

Figure 112020088791885-pat00069
는 상기 j번째 은닉 뉴런의 출력 값에 대한 k번째 가중치의 오차를, 상기
Figure 112020088791885-pat00070
는 상수로, 기존의 가중치를 줄이기 위해 가중치 감소 비율을, 상기
Figure 112020088791885-pat00071
는 가중치를 어느 정도로 업데이트할 것인지 결정하는 학습율을, 상기
Figure 112020088791885-pat00072
는 복수의 출력 뉴런들 중 k번째 뉴런의 에러를 나타낸다. 상기
Figure 112020088791885-pat00073
는 상기 j번째 은닉 뉴런의 출력 값에 대한 k번째 가중치를, 상기 f'(zk)는
Figure 112020088791885-pat00123
를 나타낸다. remind
Figure 112020088791885-pat00069
Is the error of the k-th weight with respect to the output value of the j-th hidden neuron,
Figure 112020088791885-pat00070
Is a constant, the weight reduction ratio to reduce the existing weight,
Figure 112020088791885-pat00071
Is the learning rate that determines how much to update the weights,
Figure 112020088791885-pat00072
Represents the error of the k-th neuron among the plurality of output neurons. remind
Figure 112020088791885-pat00073
Is the k-th weight for the output value of the j-th hidden neuron, and f'(z k ) is
Figure 112020088791885-pat00123
Represents.

상기 수학식 14와 수학식 15는 상기 수학식 11과 수학식 12와는 다르다. 상기 수학식 14와 수학식 15를 이용하여 가중치를 업데이트할 때, 큰 가중치에 대해 가중치를 어느 정도 감소시킴으로써 오버-피팅의 문제를 해결할 수 있다. Equations 14 and 15 are different from Equations 11 and 12. When updating the weights using Equations 14 and 15, the over-fitting problem can be solved by reducing the weight to some extent for a large weight.

도 12는 본 발명의 다른 실시 예에 따른 차량 번호판 인식 시스템의 블록도를 나타낸다.12 is a block diagram of a vehicle license plate recognition system according to another embodiment of the present invention.

도 12를 참고하면, 도 1에 도시된 차량 번호판 인식 시스템(10)은 주차 유도 시스템(200)으로 이용될 수 있다. 주차 유도 시스템(200)은 주차된 차량의 번호판을 인식하여 주차된 차량의 위치 정보를 제공할 수 있는 시스템이다. Referring to FIG. 12, the vehicle license plate recognition system 10 illustrated in FIG. 1 may be used as a parking guidance system 200. The parking guidance system 200 is a system capable of providing location information of a parked vehicle by recognizing a license plate of a parked vehicle.

주차 유도 시스템(200)은 복수의 카메라 모듈들(240, 250, 260, 및 270), 복수의 입구 가이드 디스플레이들(241, 251, 261, 및 271), 복수의 층 가이드 디스플레이들(243, 253), 복수의 키오스크들(245, 255, 263, 및 273), 복수의 SCU(Sub Control units; 247, 257), 복수의 MCU(Main Control units; 249, 259, 269, 및 279), 스위치(280), API 서버(201), NVR(Network Video Recorder; 203), 이미지 분석 서버(210), 가이드 서버(205), 및 모니터링 서버(207)를 포함한다. 도 1에 도시된 차량 번호판 인식 장치(100)는 도 12에서는 이미지 분석 서버(210)와 대응된다. 다만, 이미지 분석 서버(210)는 도 1에 도시된 차량 번호판 인식 장치(100)와는 달리 복수의 카메라 모듈들(240, 250, 260, 및 270)이 이미지 분석 서버(210)의 내부가 아니라 외부에 구현되어 있다는 점에서 차이가 있다. 이미지 분석 서버(210)는 프로세서(211)와 메모리(213)를 포함한다. 이미지 분석 서버(210)의 프로세서(211)와 메모리(213)의 동작은 도 1에 도시된 차량 번호판 인식 장치(100)의 프로세서(110)와 메모리(120)의 동작과 서로 비슷한 동작을 수행한다. The parking guidance system 200 includes a plurality of camera modules 240, 250, 260, and 270, a plurality of entrance guide displays 241, 251, 261, and 271, and a plurality of floor guide displays 243 and 253. ), a plurality of kiosks (245, 255, 263, and 273), a plurality of SCU (Sub Control Units; 247, 257), a plurality of MCU (Main Control Units; 249, 259, 269, and 279), a switch ( 280), an API server 201, a Network Video Recorder (NVR) 203, an image analysis server 210, a guide server 205, and a monitoring server 207. The vehicle license plate recognition apparatus 100 shown in FIG. 1 corresponds to the image analysis server 210 in FIG. 12. However, unlike the vehicle license plate recognition apparatus 100 shown in FIG. 1, the image analysis server 210 has a plurality of camera modules 240, 250, 260, and 270 outside the image analysis server 210. There is a difference in that it is implemented in. The image analysis server 210 includes a processor 211 and a memory 213. The operations of the processor 211 and the memory 213 of the image analysis server 210 are similar to the operations of the processor 110 and the memory 120 of the vehicle license plate recognition apparatus 100 shown in FIG. 1. .

복수의 카메라 모듈들(240, 250, 260, 및 270)은 건물의 지하 2층(B02)부터 지상 3층(F03) 각각에 설치된다. 복수의 카메라 모듈들(240, 250, 260, 및 270)은 주차된 차량을 촬영하고, 촬영된 차량의 이미지를 스위치(280)를 통해 NVR(203), 이미지 분석 서버(210), 또는 모니터링 서버(207)로 전송한다. 복수의 카메라 모듈들(240, 250, 260, 및 270) 각각은 주차면에서 차량의 움직임의 감지가 가능한 카메라이다. 복수의 카메라 모듈들(240, 250, 260, 및 270) 각각은 주차면에서 차량의 움직임이 감지될 때 촬영된 차량의 이미지를 이미지 분석 서버(210)로 전송한다. The plurality of camera modules 240, 250, 260, and 270 are installed on each of the second basement floor (B02) to the third floor (F03) above the building. A plurality of camera modules (240, 250, 260, and 270) photographs a parked vehicle, and through a switch 280, the captured vehicle image is NVR 203, image analysis server 210, or monitoring server Transfer to (207). Each of the plurality of camera modules 240, 250, 260, and 270 is a camera capable of detecting movement of a vehicle on a parking surface. Each of the plurality of camera modules 240, 250, 260, and 270 transmits an image of a vehicle captured when a vehicle movement is detected on the parking surface to the image analysis server 210.

복수의 입구 가이드 디스플레이들(241, 251, 261, 및 271) 각각은 각 층의 주차 가능 대수를 표시한다. 복수의 층 가이드 디스플레이들(243, 253) 각각은 현재 층에서 주차 가능 대수를 표시한다. 복수의 키오스크들(245, 255, 263, 및 273)은 각 층마다 설치되며, 차량의 운전자에게 현재 주차된 차량의 위치 정보와, 현재 운전자의 위치와 주차된 차량의 위치 정보 사이의 최단 이동 경로 정보를 제공한다. Each of the plurality of entrance guide displays 241, 251, 261, and 271 displays the number of parking available on each floor. Each of the plurality of floor guide displays 243 and 253 displays the number of available parking spaces on the current floor. A plurality of kiosks (245, 255, 263, and 273) are installed on each floor, and the shortest path between the location information of the currently parked vehicle to the driver of the vehicle and the location of the current driver and the parked vehicle Provide information.

복수의 SCU(247, 257), 또는 복수의 MCU(249, 259, 269, 및 279)는 복수의 카메라 모듈들(240, 250, 260, 및 270), 복수의 입구 가이드 디스플레이들(241, 251, 261, 및 271), 복수의 층 가이드 디스플레이들(243, 253), 및 복수의 키오스크들(245, 255, 263, 및 273)와 연결된다. 복수의 SCU(247, 257), 또는 복수의 MCU(249, 259, 269, 및 279)는 복수의 카메라 모듈들(240, 250, 260, 및 270), 복수의 입구 가이드 디스플레이들(241, 251, 261, 및 271), 복수의 층 가이드 디스플레이들(243, 253), 및 복수의 키오스크들(245, 255, 263, 및 273)에 전원을 공급하고, 이들을 제어한다. A plurality of SCU (247, 257), or a plurality of MCUs (249, 259, 269, and 279) is a plurality of camera modules (240, 250, 260, and 270), a plurality of entrance guide displays (241, 251) , 261, and 271, a plurality of floor guide displays 243, 253, and a plurality of kiosks 245, 255, 263, and 273. A plurality of SCU (247, 257), or a plurality of MCUs (249, 259, 269, and 279) is a plurality of camera modules (240, 250, 260, and 270), a plurality of entrance guide displays (241, 251) , 261, and 271), a plurality of floor guide displays 243, 253, and a plurality of kiosks 245, 255, 263, and 273 are powered and controlled.

스위치(280)는 복수의 MCU(249, 259, 269, 및 279), API 서버(290), NVR(203), 이미지 분석 서버(210), 가이드 서버(205), 및 모니터링 서버(207)와 연결된다. 스위치(280)는 복수의 MCU(249, 259, 269, 및 279) 중 어느 하나를 통해 전송되는 주차 위치 정보, 차량의 이미지를 API 서버(201), NVR(203), 이미지 분석 서버(210), 가이드 서버(205), 및 모니터링 서버(207) 중 어느 하나로 전송할 수 있다. The switch 280 includes a plurality of MCUs 249, 259, 269, and 279, an API server 290, an NVR 203, an image analysis server 210, a guide server 205, and a monitoring server 207. Connected. The switch 280 is an API server 201, an NVR 203, and an image analysis server 210 of parking location information and vehicle images transmitted through any one of a plurality of MCUs 249, 259, 269, and 279. , The guide server 205, and the monitoring server 207 can be transmitted to any one of.

API 서버(201)는 주차 관제를 위한 주차 요금 관제 시스템(미도시), 또는 주차 가능 정보를 필요로 하는 관공서의 서버 등과의 연계를 위한 장치이다. The API server 201 is a device for linking with a parking fee control system (not shown) for parking control, or a server of a government office that requires parking availability information.

NVR(203)은 복수의 카메라 모듈들(240, 250, 260, 및 270) 중 어느 하나로부터 전송된 주차된 차량의 이미지를 저장한다. 일반적으로 주차장에서 별도의 보안용 CCTV 카메라가 설치되는 경우가 있다. 하지만, 복수의 카메라 모듈들(240, 250, 260, 및 270)은 2개의 채널을 이용하여 하나는 CCTV 카메라와 같은 방범용으로, 나머지 하나는 차량 번호판 인식을 위한 이미지 분석용으로 사용될 수 있다. 이 때, 별도의 보안용 CCTV 카메라를 설치할 필요 없이 하나의 카메라 모듈만을 이용하여 방범과 이미지 분석의 목적을 달성할 수 있어 비용 절감이 가능하다. The NVR 203 stores an image of a parked vehicle transmitted from any one of the plurality of camera modules 240, 250, 260, and 270. In general, there are cases where a separate security CCTV camera is installed in a parking lot. However, the plurality of camera modules 240, 250, 260, and 270 may be used for image analysis, one for crime prevention, such as a CCTV camera, and the other for recognizing a vehicle license plate using two channels. In this case, it is possible to achieve the purpose of crime prevention and image analysis by using only one camera module without the need to install a separate security CCTV camera, so cost reduction is possible.

이미지 분석 서버(210)는 복수의 카메라 모듈들(240, 250, 260, 및 270) 중 어느 하나로부터 전송된 주차된 차량의 번호판 영역을 포함하는 이미지를 수신한다. 이미지 분석 서버(210)는 수신된 이미지에 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN 알고리즘에 같이 적용하여 차량의 번호판의 문자를 인식한다. 이미지 분석 서버(210)는 복수의 카메라 모듈들(240, 250, 260, 및 270) 각각으로부터 차량의 움직임이 감지될 때마다 차량의 이미지를 수신하고, 각각의 이미지에서 차량의 번호판의 문자를 인식한다. 이미지 분석 서버(210)는 각각 인식된 차량의 번호판의 문자에 대해 가중치를 적용한다. 이미지 분석 서버(210)는 가중치가 적용된 번호판의 문자에 대해 최종 문자를 확정한다. The image analysis server 210 receives an image including a license plate area of a parked vehicle transmitted from any one of the plurality of camera modules 240, 250, 260, and 270. The image analysis server 210 recognizes the characters of the license plate of the vehicle by applying the feature maps extracted from the character region recognized in the license plate region of the vehicle to the received image together with the CNN algorithm. The image analysis server 210 receives an image of the vehicle whenever movement of the vehicle is detected from each of the plurality of camera modules 240, 250, 260, and 270, and recognizes the character of the vehicle license plate from each image. do. The image analysis server 210 applies a weight to each recognized character of the license plate of the vehicle. The image analysis server 210 determines a final character for the character of the license plate to which the weight is applied.

이미지 분석 서버(210)의 프로세서(211)는 도 1에 도시된 차량 번호판 인식 장치(100)의 프로세서(110)와 유사하게 차량의 번호판의 문자를 인식하기 위해 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN 알고리즘에 같이 적용하는 차량 번호판 인식 기술을 실행한다. 도 1에 도시된 차량 번호판 인식 장치(100)의 메모리(120)와 유사하게 메모리(213)는 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN 알고리즘에 같이 적용하는 차량 번호판 인식 기술에 대응되는 명령들을 저장한다. 프로세서(110)와 메모리(120)의 구체적인 동작은 앞에서 자세히 설명되었다. The processor 211 of the image analysis server 210 is similar to the processor 110 of the vehicle license plate recognition apparatus 100 shown in FIG. 1 in order to recognize characters on the license plate of the vehicle. Car license plate recognition technology is implemented that applies the feature maps extracted from the CNN algorithm together. Similar to the memory 120 of the vehicle license plate recognition apparatus 100 shown in FIG. 1, the memory 213 is a vehicle license plate recognition technology that applies feature maps extracted from the character region recognized in the vehicle license plate region to the CNN algorithm. Save the commands corresponding to. Specific operations of the processor 110 and the memory 120 have been described in detail above.

가이드 서버(205)는 각 층의 주차 가능 대수 정보, 특정 차량의 주차 위치 정보, 또는 현재 운전자의 위치와 주차된 차량의 위치 정보 사이의 최단 이동 경로 정보를 복수의 입구 가이드 디스플레이들(241, 251, 261, 및 271), 복수의 층 가이드 디스플레이들(243, 253), 또는 복수의 키오스크들(245, 255, 263, 및 273)에 제공한다. The guide server 205 provides information on the number of available parking spaces on each floor, information on the parking position of a specific vehicle, or information on the shortest movement route between the current driver's position and the parked vehicle's position information on a plurality of entrance guide displays (241, 251). , 261, and 271), a plurality of floor guide displays 243, 253, or a plurality of kiosks 245, 255, 263, and 273.

모니터링 서버(207)는 복수의 카메라 모듈들(240, 250, 260, 및 270) 중 어느 하나로부터 전송된 주차된 차량의 이미지를 수신하여 주차된 차량을 모니터링하는데 이용된다. The monitoring server 207 is used to monitor the parked vehicle by receiving an image of the parked vehicle transmitted from any one of the plurality of camera modules 240, 250, 260, and 270.

도 13은 본 발명의 또 다른 실시 예에 따른 차량 번호판 인식 시스템의 블록도를 나타낸다.13 is a block diagram of a vehicle license plate recognition system according to another embodiment of the present invention.

도 13을 참고하면, 도 1에 도시된 차량 번호판 인식 시스템(10)은 주차 관제 시스템(300)으로 이용될 수 있다. 주차 관제 시스템(300)은 주차 차량의 관리를 위해 차량의 번호판을 인식하는 시스템이다. Referring to FIG. 13, the vehicle license plate recognition system 10 illustrated in FIG. 1 may be used as a parking control system 300. The parking control system 300 is a system that recognizes a license plate of a vehicle for management of a parked vehicle.

주차 관제 시스템(300)은 제1차단기(310)와 제1차량 번호 인식기(320)를 포함한다. 실시 예에 따라 주차 관제 시스템(300)은 제2차단기(311), 제2차량 번호 인식기(330), 경차 판별 센서(340), 4면 촬영 카메라(350), 제3차량 번호 인식기(360), 출구 무인 요금 정산기(370), 출차 주의등(380), 또는 루프 코일(390)을 더 포함할 수 있다. 주차 관제 시스템(300)에 포함된 각 구성요소들(310, 311, 320, 330, 340, 350, 360, 370, 380, 390)은 무선, 또는 유선으로 네트워크로 연결된다. The parking control system 300 includes a first circuit breaker 310 and a first vehicle number recognizer 320. According to an embodiment, the parking control system 300 includes a second circuit breaker 311, a second vehicle number recognizer 330, a light vehicle identification sensor 340, a four-sided photographing camera 350, and a third vehicle number recognizer 360. , It may further include an exit unmanned fare setter 370, a departure caution light 380, or a loop coil 390. Each of the components 310, 311, 320, 330, 340, 350, 360, 370, 380, 390 included in the parking control system 300 is connected to a network by wireless or wired.

제1차단기(310)는 차량이 허가 없이 주차장으로 진입하는 것을 방지하는데 이용된다. 제2차단기(311)는 차량이 허가 없이 주차장에서 진출하는 것을 방지하는데 이용된다. The first circuit breaker 310 is used to prevent the vehicle from entering the parking lot without permission. The second circuit breaker 311 is used to prevent the vehicle from leaving the parking lot without permission.

제1차량 번호 인식기(320), 제2차량 번호 인식기(330), 또는 제3차량 번호 인식기(360)는 차량의 번호판을 촬영하고 촬영된 차량 번호판 이미지에서 차량의 번호판을 인식하고, 인식된 차량의 번호를 네트워크를 통해 주차 관제 서버(미도시)로 전송한다. 제1차량 번호 인식기(320), 제2차량 번호 인식기(330), 또는 제3차량 번호 인식기(360)는 도 1에 도시된 차량 번호판 인식 장치(100)와 유사한 기능을 수행한다.The first vehicle number recognizer 320, the second vehicle number recognizer 330, or the third vehicle number recognizer 360 photographs the license plate of the vehicle, recognizes the license plate of the vehicle from the photographed vehicle license plate image, and recognizes the recognized vehicle. The number of is transmitted to the parking control server (not shown) through the network. The first vehicle number recognizer 320, the second vehicle number recognizer 330, or the third vehicle number recognizer 360 performs a function similar to that of the vehicle license plate recognition apparatus 100 shown in FIG. 1.

제1차량 번호 인식기(320)는 진입하는 차량의 전면의 차량 번호판을 촬영한다. 제2차량 번호 인식기(330)는 진입하는 차량의 후면의 차량의 번호판을 촬영한다. 제3차량 번호 인식기(360)는 진출하는 차량의 전면의 차량 번호판을 촬영한다. The first vehicle number recognizer 320 photographs a vehicle license plate in front of the entering vehicle. The second vehicle number recognizer 330 photographs the license plate of the vehicle at the rear of the entering vehicle. The third vehicle number recognizer 360 photographs a vehicle license plate in front of the advancing vehicle.

제1차량 번호 인식기(320), 제2차량 번호 인식기(330), 또는 제3차량 번호 인식기(360) 각각은 각각의 프로세서(미도시)와 메모리(미도시)를 포함한다. 상기 프로세서는 도 1에 도시된 차량 번호판 인식 장치(100)의 프로세서(110)와 유사하게 차량의 번호판의 문자를 인식하기 위해 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN 알고리즘에 같이 적용하는 차량 번호판 인식 기술을 실행한다. 도 1에 도시된 차량 번호판 인식 장치(100)의 메모리(120)와 유사하게 상기 메모리는 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN 알고리즘에 같이 적용하는 차량 번호판 인식 기술에 대응되는 명령들을 저장한다. 프로세서(110)와 메모리(120)의 구체적인 동작은 앞에서 자세히 설명되었다. Each of the first vehicle number recognizer 320, the second vehicle number recognizer 330, or the third vehicle number recognizer 360 includes a respective processor (not shown) and a memory (not shown). Similar to the processor 110 of the vehicle license plate recognition apparatus 100 shown in FIG. 1, the processor uses the feature maps extracted from the character region recognized in the vehicle license plate region to the CNN algorithm in order to recognize the character of the vehicle license plate. Car license plate recognition technology applied together is implemented. Similar to the memory 120 of the vehicle license plate recognition apparatus 100 shown in FIG. 1, the memory corresponds to a vehicle license plate recognition technology that applies feature maps extracted from the character region recognized in the license plate region of the vehicle together with the CNN algorithm. Stored commands. Specific operations of the processor 110 and the memory 120 have been described in detail above.

경차 판별 센서(340)는 빛을 쏘아 차량이 경차인지 여부를 판단한다. 경차 판별 센서(340)는 레이저 스캐너로 구현될 수 있다. The compact vehicle determination sensor 340 determines whether the vehicle is a compact vehicle by emitting light. The small vehicle determination sensor 340 may be implemented as a laser scanner.

4면 촬영 카메라(350)는 차량의 4면을 촬영할 수 있다. 4면 촬영 카메라(350)는 촬영된 차량의 4면의 이미지를 처리하는 프로세서(미도시)와, 처리된 이미지를 저장하는 메모리(미도시)를 더 포함할 수 있다. 실시 예에 따라 상기 프로세서와 상기 메모리는 NVR(Network Video Network)로 구현될 수 있다. The four-sided photographing camera 350 may photograph four sides of the vehicle. The four-sided camera 350 may further include a processor (not shown) that processes images of four sides of the captured vehicle, and a memory (not shown) that stores the processed images. According to an embodiment, the processor and the memory may be implemented as a network video network (NVR).

출구 무인 요금 정산기(370)는 네트워크를 통해 상기 주차 관제 서버로부터 차량의 주차 요금을 수신한다. The exit unmanned fee calculator 370 receives the parking fee of the vehicle from the parking control server through the network.

출차 주의등(380)은 차량이 출차할 때, 출차 중임이 표시된다. When the vehicle leaves the vehicle, the departure caution light 380 indicates that the vehicle is leaving the vehicle.

루프 코일(390)은 차량의 진입을 인식한다. The roof coil 390 recognizes the entry of the vehicle.

도 14는 본 발명의 또 다른 실시 예에 따른 차량 번호판 인식 시스템의 블록도를 나타낸다.14 is a block diagram of a vehicle license plate recognition system according to another embodiment of the present invention.

도 14를 참고하면, 도 1에 도시된 차량 번호판 인식 시스템(10)은 불법 주정차 단속 시스템(400)으로 이용될 수 있다. 불법 주정차 단속 시스템(400)은 도로에 불법으로 주정차된 차량을 감시하는 시스템이다. Referring to FIG. 14, the vehicle license plate recognition system 10 illustrated in FIG. 1 may be used as an illegal parking control system 400. The illegal parking control system 400 is a system that monitors vehicles parked illegally on a road.

불법 주정차 단속 시스템(400)은 카메라(410), 보조 카메라(421, 423), 및 차량 번호 인식기(440)를 포함할 수 있다. 또한, 실시 예에 따라 불법 주정차 단속 시스템(400)은 LED 전광판(430), 또는 스피커(미도시)를 더 포함할 수 있다. LED 전광판(430)은 주차 정보에 관한 정보가 표시될 수 있다. 예컨대, LED 전광판(430)은 '주차금지'라는 단어가 표시될 수 있다. 상기 스피커는 차량의 주정차를 금지한다는 음성을 출력한다. The illegal parking control system 400 may include a camera 410, auxiliary cameras 421 and 423, and a vehicle number recognizer 440. In addition, according to an embodiment, the illegal parking control system 400 may further include an LED billboard 430 or a speaker (not shown). The LED billboard 430 may display information about parking information. For example, the word'no parking' may be displayed on the LED billboard 430. The speaker outputs a voice saying that parking and stopping of the vehicle is prohibited.

카메라(410)와 보조 카메라(421, 423)는 지지대(401)의 끝 부분에 구현된 다른 지지대의 끝에 구현될 수 있다. 차량 번호 인식기(440)는 지지대(401)의 아랫부분에 위치한 별도의 박스 내부에 구현될 수 있다. 카메라(410), 보조 카메라(421, 423), LED 전광판(430), 및 차량 번호 인식기(440)는 유선, 또는 무선으로 서로 연결된다.The camera 410 and the auxiliary cameras 421 and 423 may be implemented at the end of another support implemented at the end of the support 401. The vehicle number recognizer 440 may be implemented in a separate box located under the support 401. The camera 410, auxiliary cameras 421 and 423, the LED display board 430, and the vehicle number recognizer 440 are connected to each other by wire or wirelessly.

차량(403)이 주정차가 금지된 도로에 있을 때, 카메라(410)는 차량(403)의 번호판을 촬영한다. When the vehicle 403 is on a road where parking is prohibited, the camera 410 photographs the license plate of the vehicle 403.

차량 번호 인식기(440)는 카메라(410)에 의해 촬영된 차량(403)의 번호판 이미지를 수신하여 차량(403)의 번호를 식별한다. 차량 번호 인식기(440)는 도 1에 도시된 차량 번호판 인식 장치(100)와 유사한 동작을 수행한다. 다만, 차량 번호 인식기(440)는 도 1에 도시된 차량 번호판 인식 장치(100)와는 다르게 카메라(410)가 외부에 구현되어 있다. The vehicle number recognizer 440 identifies the number of the vehicle 403 by receiving the license plate image of the vehicle 403 photographed by the camera 410. The vehicle number recognizer 440 performs an operation similar to the vehicle license plate recognition apparatus 100 shown in FIG. 1. However, unlike the vehicle license plate recognition apparatus 100 illustrated in FIG. 1, the vehicle number recognizer 440 has a camera 410 externally implemented.

차량 번호 인식기(440)는 프로세서(450), 메모리(460), 및 통신 모듈(470)을 포함한다. 프로세서(450)는 메모리(460)에 저장된 차량 번호 인식 기술에 관한 명령들을 실행한다. 프로세서(450)는 도 1에 도시된 차량 번호판 인식 장치(100)의 프로세서(110)와 유사하게 카메라(410)에 의해 촬영된 차량(403)의 번호판 이미지를 수신하고, 수신된 차량 번호판 이미지에 대해차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN 알고리즘에 같이 적용하여 차량의 번호를 인식한다. 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN 알고리즘에 같이 적용한 차량 번호판 인식 기술은 앞에서 자세히 설명되었다. 메모리(460)는 도 1에 도시된 메모리(120)와 유사한 명령들을 저장한다. The vehicle number recognizer 440 includes a processor 450, a memory 460, and a communication module 470. The processor 450 executes instructions related to vehicle number recognition technology stored in the memory 460. The processor 450 receives the license plate image of the vehicle 403 photographed by the camera 410, similar to the processor 110 of the vehicle license plate recognition apparatus 100 shown in FIG. 1, and the received vehicle license plate image The vehicle number is recognized by applying the feature maps extracted from the text area recognized in the license plate area of the Daehan vehicle to the CNN algorithm. The vehicle license plate recognition technology that applied the feature maps extracted from the text region recognized in the vehicle license plate region to the CNN algorithm was described in detail above. Memory 460 stores instructions similar to memory 120 shown in FIG. 1.

실시 예에 따라 불법 주정차 단속 시스템(400)은 AMP(480)와 AVR(Automatic Voltage Regulator; 490)를 더 포함할 수 있다. AMP(480)와 AVR(490)는 차량 번호 인식기(440)와 서로 연결된다. AMP(480)는 상기 스피커를 통해 출력되는 음성을 증폭한다. AVR(490)는 불법 주정차 단속 시스템(400)이 안정적으로 전원을 공급받도록 한다. According to an embodiment, the illegal parking control system 400 may further include an AMP 480 and an automatic voltage regulator 490 (AVR). The AMP 480 and the AVR 490 are connected to the vehicle number recognizer 440. The AMP 480 amplifies the voice output through the speaker. The AVR 490 allows the illegal parking and stopping control system 400 to stably receive power.

도 15는 본 발명의 또 다른 실시 예에 따른 차량 번호판 인식 시스템의 블록도를 나타낸다.15 is a block diagram of a vehicle license plate recognition system according to another embodiment of the present invention.

도 15를 참고하면, 도 1에 도시된 차량 번호판 인식 시스템(10)은 무인 단속 시스템(500)으로 이용될 수 있다. 무인 단속 시스템(500)은 과속으로 주행하는 차량(503)을 단속하거나, 신호를 위반하는 차량(503)을 단속하거나, 구간에서 과속으로 주행하는 차량(503)을 단속하는 시스템이다. Referring to FIG. 15, the vehicle license plate recognition system 10 illustrated in FIG. 1 may be used as an unmanned enforcement system 500. The unmanned enforcement system 500 is a system that regulates a vehicle 503 traveling at a speeding speed, a vehicle 503 violating a signal, or a vehicle 503 traveling at a speed in a section.

무인 단속 시스템(500)은 레이더(520), 카메라(510), 및 차량 번호 인식기(530)를 포함할 수 있다. The unmanned enforcement system 500 may include a radar 520, a camera 510, and a vehicle number recognizer 530.

레이더(520)와 카메라(510)는 지지대(501)의 끝 부분에 구현된 다른 지지대의 끝에 구현될 수 있다. 차량 번호 인식기(530)는 지지대(501)의 아랫부분에 위치한 별도의 박스 내부에 구현될 수 있다. 레이더(520), 카메라(510), 및 차량 번호 인식기(530)는 유선, 또는 무선으로 서로 연결된다. 실시 예에 따라 무인 단속 시스템(500)은 보조 카메라(미도시)를 더 포함할 수도 있다. The radar 520 and the camera 510 may be implemented at the end of another support embodied at the end of the support 501. The vehicle number recognizer 530 may be implemented in a separate box located under the support 501. The radar 520, the camera 510, and the vehicle number recognizer 530 are connected to each other by wire or wirelessly. According to an embodiment, the unmanned enforcement system 500 may further include an auxiliary camera (not shown).

무인 단속 시스템(500)을 향해 차량(503)이 주행할 때, 레이더(520)는 레이더 신호를 발산하고 차량(503)에 의해 반사되어 되돌아 오는 레이더 신호를 분석하여 차량(503)을 감지한다. 레이더(520)는 서로 다른 시점에서 레이더 신호를 발산하여 차량(503)의 속도를 판단할 수 있다. 레이더(520)의 차량(503)의 감지 범위는 2개의 차선 이상이다. 차량(503)이 가상 트리거 영역에 진입할 때, 레이더(520)는 차량이 주행하는 차선 정보, 트리거 정보, 또는 차량의 속도 정보를 차량 번호 인식기(530)에 전송한다. 상기 차선 정보는 차량이 1차선으로 주행하는지 2차선으로 주행하는지를 나타내는 정보이며, 상기 트리거 정보는 차량이 가상 트리거 영역에 진입한 시간을 나타내는 정보이다. When the vehicle 503 travels toward the unmanned enforcement system 500, the radar 520 detects the vehicle 503 by emitting a radar signal and analyzing the radar signal reflected by the vehicle 503 and returned. The radar 520 may determine the speed of the vehicle 503 by emitting radar signals at different viewpoints. The detection range of the vehicle 503 of the radar 520 is more than two lanes. When the vehicle 503 enters the virtual trigger area, the radar 520 transmits lane information on which the vehicle is traveling, trigger information, or vehicle speed information to the vehicle number recognizer 530. The lane information is information indicating whether the vehicle travels in one lane or two lanes, and the trigger information is information indicating a time when the vehicle enters the virtual trigger area.

카메라(510)는 연속적으로 복수의 차선들에 대해 영상을 촬영한다. 실시 예에 따라 카메라(510)는 야간에서 촬영을 위해 적외선 LED를 더 포함할 수 있다. The camera 510 continuously captures an image for a plurality of lanes. According to an embodiment, the camera 510 may further include an infrared LED for photographing at night.

차량 번호 인식기(530)는 도 1에 도시된 차량 번호판 인식 장치(100)와 유사한 기능을 수행한다. 다만, 차량 번호 인식기(530)는 도 1에 도시된 차량 번호판 인식 장치(100)와는 다르게 카메라(510)가 외부에 구현되어 있다. The vehicle number recognizer 530 performs a function similar to that of the vehicle license plate recognition apparatus 100 shown in FIG. 1. However, unlike the vehicle license plate recognition apparatus 100 illustrated in FIG. 1, the vehicle number recognizer 530 has a camera 510 externally implemented.

차량 번호 인식기(530)는 CCU(Central Control Unit; 540), ECU(Electrical Control Unit; 550), 및 통신 모듈(560)을 포함한다. CCU(540)는 카메라(510)로부터 촬영된 이미지들을 연속적으로 수신한다. 또한, CCU(540)는 레이더(520)로부터 상기 차선 정보와 상기 트리거 정보를 수신한다. CCU(540)는 도 1에 도시된 차량 번호판 인식 장치(100)의 프로세서(110)와 유사하게 상기 차선 정보와 상기 트리거 정보를 이용하여 카메라(510)로부터 수신된 이미지들 각각에 대해 차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN 알고리즘에 같이 적용하여 차량의 번호를 인식한다. CCU(540)는 복수의 이미지들에 대해 인식된 차량의 번호에 대해 가중치를 부여하고, 부여된 가중치에 따라 최종 차량의 번호를 도출한다. 실시 예에 따라 CCU(540)는 프로세서로 호칭될 수 있다. 이하, 프로세서는 CCU(540)를 의미한다. 차량 번호 인식기(530)는 CCU(540)의 동작을 실행하기 위한 명령들을 저장하는 메모리(미도시)를 더 포함할 수 있다. 상기 메모리는 도 1에 도시된 차량 번호판 인식 장치(100)의 메모리(120)와 유사한 명령들을 저장한다. The vehicle number recognizer 530 includes a Central Control Unit (CCU) 540, an Electrical Control Unit (ECU) 550, and a communication module 560. The CCU 540 continuously receives images captured from the camera 510. In addition, the CCU 540 receives the lane information and the trigger information from the radar 520. The CCU 540 uses the lane information and the trigger information, similar to the processor 110 of the vehicle license plate recognition apparatus 100 shown in FIG. 1, for each of the images received from the camera 510. The vehicle number is recognized by applying the feature maps extracted from the text region recognized in the region to the CNN algorithm. The CCU 540 assigns a weight to the recognized vehicle number for a plurality of images, and derives a final vehicle number according to the assigned weight. According to an embodiment, the CCU 540 may be referred to as a processor. Hereinafter, the processor means the CCU 540. The vehicle number recognizer 530 may further include a memory (not shown) that stores commands for executing an operation of the CCU 540. The memory stores commands similar to the memory 120 of the vehicle license plate recognition apparatus 100 shown in FIG. 1.

차량의 번호판 영역에서 인식된 문자 영역에서 추출된 피처맵들을 CNN 알고리즘에 같이 적용하는 차량 번호판 인식 기술은 앞에서 자세히 설명되었다.
ECU(550)는 신호등의 신호를 감지하고, CCU(540), 카메라(510), 또는 레이더(520)에 전원을 공급한다. CCU(540), ECU(550), 통신 모듈(560), 카메라(510), 및 레이더(520)는 서로 유선, 또는 무선으로 연결된다.
The vehicle license plate recognition technology that applies the feature maps extracted from the text region recognized in the vehicle license plate region to the CNN algorithm has been described in detail above.
The ECU 550 detects a signal such as a traffic light, and supplies power to the CCU 540, the camera 510, or the radar 520. The CCU 540, ECU 550, communication module 560, camera 510, and radar 520 are connected to each other by wire or wirelessly.

CCU(540)는 상기 차선 정보, 상기 트리거 정보, 차량(503)의 속도 정보, 차량(503)의 인식된 번호 정보, 단속 일시 정보, 차량(503)의 이미지, 무인 단속 시스템(500)의 설치 위치 정보 등을 포함하는 데이터를 생성한다. 생성된 데이터는 통신 모듈(530)을 통하여 외부의 서버(미도시)로 전송한다. 상기 외부의 서버는 도로 방범 관제 서버일 수 있다. The CCU 540 includes the lane information, the trigger information, the speed information of the vehicle 503, the recognized number information of the vehicle 503, the enforcement date and time information, the image of the vehicle 503, and the installation of the unmanned enforcement system 500 Generate data including location information and the like. The generated data is transmitted to an external server (not shown) through the communication module 530. The external server may be a road security control server.

도 16은 도 1에 도시된 프로세서에 의해 처리되는 신경망 알고리즘의 블록도의 또 다른 실시 예를 나타낸다. 16 shows another embodiment of a block diagram of a neural network algorithm processed by the processor shown in FIG. 1.

도 1과 도 16을 참고하면, 프로세서(110)은 상기 출력된 제4출력 피처 맵과 상기 미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어를 이용하여 출력된 결과 값들의 차이와 임계값을 비교하여 상기 출력된 결과 값들을 통해 기대되는 문자가 아닌 다른 문자로 인식하는 혼동 가능성이 있는지를 판단한다. 도 15에서 도시된 분류기에 의해 혼동 가능성이 판단된다. 예컨대, 숫자 3과 8은 주변 빛의 영향이나, 카메라의 촬영 각도 때문에 혼동 가능성이 있을 수 있다. 숫자 3을 포함하는 이미지에서 인식을 통해 기대되는 문자는 3이지만, 다른 문자 8로 인식될 수 있다. 반대로, 기대되는 문자가 8일 때, 다른 문자 3으로 인식될 수도 있다. 1 and 16, the processor 110 compares the difference and the threshold value between the output result values using a fully connected layer that completely connects the output fourth output feature map and the preset feature map. Thus, it is determined whether there is a possibility of confusion in recognizing a character other than an expected character through the output result values. The possibility of confusion is determined by the classifier shown in FIG. 15. For example, numbers 3 and 8 can be confusing due to the influence of ambient light or the angle of the camera. In the image including the number 3, the character expected through recognition is 3, but it can be recognized as another character 8. Conversely, when the expected character is 8, it may be recognized as another character 3.

숫자 3을 포함하는 이미지에 대해 상기 출력 피처 맵과 상기 미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어를 적용하여 도출된 결과 값들은 숫자 3일 확률이 0.7, 숫자 8일 확률이 0.6일 수 있다. 상기 도출된 결과 값들(예컨대, 0.7과 0.6)의 차이(0.1)는 상기 임계값(예컨대, 0.2)보다 작을 때, 다른 문자로의 혼동 가능성이 있다고 판단될 수 있다. 따라서 상기 풀리 커넥티드 레이어를 적용하여 도출된 결과 값들을 통해 기대되는 숫자 3이 아닌 다른 숫자 8로의 혼동 가능성이 있다고 판단될 수 있다.For the image including the number 3, result values derived by applying a fully connected layer that completely connects the output feature map and the preset feature map may have a probability of being number 3 being 0.7 and a probability of being number 8 being 0.6. . When the difference (0.1) between the derived result values (eg, 0.7 and 0.6) is less than the threshold value (eg, 0.2), it may be determined that there is a possibility of confusion with other characters. Accordingly, it may be determined that there is a possibility of confusion with the number 8 other than the expected number 3 through the result values derived by applying the fully connected layer.

프로세서(110)은 상기 출력된 결과 값들을 통해 상기 기대되는 문자가 아닌 다른 문자로 인식하는 혼동 가능성이 있다고 판단될 때, 상기 미리 설정된 피처 맵을 재설정하여 제2미리 설정된 피처 맵으로 정의한다. 이 때, 상기 미리 설정된 피처 맵은 제1미리 설정된 피처 맵으로 호칭될 수 있다. When it is determined through the output result values that there is a possibility of confusion in recognizing a character other than the expected character, the processor 110 resets the preset feature map to define a second preset feature map. In this case, the preset feature map may be referred to as a first preset feature map.

상기 재설정은 혼동 가능성이 있는 문자들을 명확히 구별하기 위해 미리 설정된 피처 맵의 개수를 증가시키는 것을 의미한다. 혼동 가능성이 있는 문자들(예컨대, 3과 8)에서 서로 구별 문자의 특징(예컨대, 대칭성, 또는 선의 연결 여부)을 나타낼 수 있는 피처 맵(예컨대, 문자 가운데를 기준으로 왼쪽 어느 하나의 픽셀과 오른쪽 하나의 픽셀이 서로 대응하는지 여부, 또는 검은 픽셀이 계속 연결되는지 여부)이 추가될 수 있다. The resetting means increasing the number of preset feature maps to clearly distinguish characters that may be confusing. Feature maps (e.g., one pixel on the left and one pixel on the right, based on the center of the character) that can indicate the characteristics of the characters (e.g., symmetry, or whether lines are connected) that can be distinguished from each other in potentially confusing characters (e.g., 3 and 8). Whether one pixel corresponds to each other, or whether black pixels are continuously connected) may be added.

상기 제1미리 설정된 피처 맵과 상기 제2미리 설정된 피처 맵은 ANN 구조 신경망에서 입력으로 이용된다. 예컨대, 상기 제1, 2미리 설정된 피처 맵은 문자 영역을 일정 영역들로 나누고 각 영역에 포함된 문자의 픽셀 개수로 정의될 수 있다. 또한, 상기 제1, 2미리 설정된 피처 맵은 문자의 높이를 따라 여러 개로 그려진 수평 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합으로 정의될 수 있다. 또한, 상기 제1, 2미리 설정된 피처 맵 폭에 따라 여러 개로 그려진 수직 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합으로 정의될 수 있다. 다만, 상기 제2미리 설정된 피처 맵은 상기 제1미리 설정된 피처 맵과 달리 혼동 가능성이 있는 문자들을 명확히 구분하기 위해 설정된다는 점에서 다르다. The first preset feature map and the second preset feature map are used as inputs in an ANN structured neural network. For example, the first and second preset feature maps may divide a character area into predetermined areas and be defined as the number of pixels of characters included in each area. In addition, the first and second preset feature maps may be defined as the sum of white pixels or black pixels positioned on horizontal lines drawn in multiple numbers along the height of a character. In addition, it may be defined as a sum of white pixels or black pixels positioned on vertical lines drawn in multiple numbers according to the first and second preset feature map widths. However, the second preset feature map is different from the first preset feature map in that it is set to clearly distinguish characters that may be confusing.

도 17은 혼동가능성이 있는 숫자들의 차이를 나타내는 이미지들이다. 17 are images showing differences between numbers that may be confusing.

도 17을 참고하면, 숫자 8은 빨간 선을 중심으로 대칭이며, 숫자 3은 빨간 선을 중심으로 대칭이지 않다. 상기 제2미리 설정된 피처 맵은 이러한 숫자의 대칭성을 판단할 수 있도록 설정될 수 있다. Referring to FIG. 17, the number 8 is symmetric about the red line, and the number 3 is not symmetric about the red line. The second preset feature map may be set to determine the symmetry of these numbers.

또한, 도 17을 참고하면, 숫자 8의 왼쪽 사각형 부분은 검은색 픽셀들이 연결되어 있으나, 숫자 3의 왼쪽 사각형 부분은 검은색 픽셀들이 서로 연결되어 있지 않다. 실시 예에 따라 상기 제2미리 설정된 피처 맵은 이러한 픽셀의 연결성을 판단할 수 있도록 설정될 수 있다. In addition, referring to FIG. 17, black pixels are connected to the left square of the number 8, but black pixels are not connected to the left square of the number 3. According to an embodiment, the second preset feature map may be set to determine the connectivity of such pixels.

프로세서(110)은 상기 분류된 문자 영역을 포함하는 이미지에 대해 상기 CNN 알고리즘을 재적용하여 출력된 제5출력 피처 맵과, 상기 제2미리 설정된 피처 맵을 완전히 연결하는 제2풀리 커넥티드 레이어를 적용하여 문자를 인식한다. 상기 출력된 제4출력 피처 맵과 상기 제1미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어는 제1풀리 커넥티드 레이어로 호칭될 수 있다. The processor 110 provides a second fully connected layer that completely connects the fifth output feature map output by reapplying the CNN algorithm to the image including the classified character region and the second preset feature map. Apply to recognize characters. A pulley connected layer that completely connects the output fourth output feature map and the first preset feature map may be referred to as a first pulley connected layer.

상기 혼동 가능성이 있는 문자들을 명확히 인식하기 위해 상기 제2풀리 커넥티드 레이어를 적용하는 동작을 수행한다. 상기 적용된 CNN 알고리즘은 상기 제4출력 피처 맵의 출력 과정에서 이용된 가중치들과 같다. In order to clearly recognize the potentially confusing characters, an operation of applying the second pulley connected layer is performed. The applied CNN algorithm is the same as the weights used in the process of outputting the fourth output feature map.

상기 제1풀리 커넥티드 레이어에 입력되는 상기 제4출력 피처 맵의 개수와 상기 제2풀리 커넥티드 레이어에 입력되는 상기 제5출력 피처 맵의 개수는 서로 다르다. 예컨대, 상기 제4출력 피처 맵의 개수가 상기 제5출력 피처 맵의 개수보다 많을 수 있다. 상기 제4출력 피처 맵의 개수가 n개일 때, 상기 제5출력 피처 맵의 개수는 q(q는 n보다 작은 자연수)개일 수 있다.The number of the fourth output feature maps input to the first pulley-connected layer and the number of fifth output feature maps input to the second pulley-connected layer are different from each other. For example, the number of the fourth output feature map may be greater than the number of the fifth output feature map. When the number of the fourth output feature maps is n, the number of the fifth output feature maps may be q (q is a natural number less than n).

상기 제1풀리 커넥티드 레이어에 입력되는 상기 제1미리 설정된 피처 맵의 개수와 상기 제2풀리 커넥티드 레이어에 입력되는 상기 제2미리 설정된 피처 맵의 개수는 서로 다르다. 예컨대, 상기 제1미리 설정된 피처 맵의 개수가 상기 제2미리 설정된 피처 맵의 개수보다 적을 수 있다. 상기 제1미리 설정된 피처 맵의 개수가 m개일 때, 상기 제2미리 설정된 피처 맵의 개수는 p(p는 m보다 큰 자연수)개일 수 있다. 상기 제2미리 설정된 피처 맵의 개수를 상기 제1미리 설정된 피처 맵의 개수보다 많게 함으로써 혼동 가능성이 있는 문자들을 명확히 구분할 수 있다. 즉, 상기 제2미리 설정된 피처 맵의 개수를 증가시킴으로써 상기 제1미리 설정된 피처 맵보다 문자의 특징을 보다 많이 추출할 수 있다. The number of the first preset feature maps input to the first pulley connected layer and the number of second preset feature maps input to the second pulley connected layer are different from each other. For example, the number of first preset feature maps may be smaller than the number of second preset feature maps. When the number of first preset feature maps is m, the number of second preset feature maps may be p (p is a natural number greater than m). By making the number of the second preset feature maps greater than the number of the first preset feature maps, characters that may be confused can be clearly identified. That is, by increasing the number of the second preset feature maps, more character features can be extracted than the first preset feature map.

상기 제4출력 피처 맵의 개수와 상기 제1미리 설정된 피처 맵의 개수의 합과 상기 제5출력 피처 맵의 개수와 상기 제2미리 설정된 피처 맵의 개수는 같다. The sum of the number of the fourth output feature map and the number of the first preset feature map, the number of the fifth output feature map and the number of the second preset feature map are the same.

상기 제1풀리 커넥티드 레이어의 은닉 레이어와 출력 레이어에서 가중치들과 상기 제2풀리 커넥티드 레이어의 은닉 레이어와 출력 레이어에서 가중치들은 같다. Weights in the hidden layer and the output layer of the first pulley-connected layer and the weights in the hidden layer and the output layer of the second pulley-connected layer are the same.

본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.Although the present invention has been described with reference to an embodiment illustrated in the drawings, this is only exemplary, and those of ordinary skill in the art will appreciate that various modifications and other equivalent embodiments are possible therefrom. Therefore, the true technical protection scope of the present invention should be determined by the technical idea of the attached registration claims.

10: 차량 번호판 인식 시스템
100: 차량 번호판 인식 장치
110: 프로세서;
120: 메모리;
130: 카메라;
140: 통신 모듈;
10: vehicle license plate recognition system
100: vehicle license plate recognition device
110: processor;
120: memory;
130: camera;
140: communication module;

Claims (5)

차량의 번호판의 문자를 인식하기 위해 프로세서와 메모리를 포함하는 차량 번호판 인식 장치에 의해 수행되는 신견망 신경망을 이용한 차량 번호판 인식 방법은,
상기 프로세서는 차량의 번호판 영역을 포함하는 이미지를 수신하는 단계;
상기 프로세서는 상기 차량의 번호판 영역에서 분류된 문자 영역을 인식하는 단계;
상기 프로세서는 상기 분류된 문자 영역을 포함하는 이미지에 대해 제1컨볼루션 연산을 수행하여 제1출력 피처 맵을 출력하는 단계;
상기 프로세서는 상기 출력된 제1출력 피처 맵에 대해 샘플링을 적용하여 제2출력 피처 맵을 출력하는 단계;
상기 프로세서는 상기 제2출력 피처 맵에 대해 제2컨볼루션 연산을 수행하여 제3출력 피처 맵을 출력하는 단계;
상기 프로세서는 상기 출력된 제3출력 피처 맵에 대해 샘플링을 적용하여 제4출력 피처 맵을 출력하는 단계; 및
상기 프로세서는 상기 출력된 제4출력 피처 맵과, 문자의 특징을 수치로 표현한 것으로 정의되며, 상기 문자 영역을 일정 영역들로 나누고 각 영역에 포함된 문자의 픽셀 개수이거나, 상기 문자의 높이를 따라 여러 개로 그려진 수평 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합이거나, 폭에 따라 여러 개로 그려진 수직 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합으로 정의될 수 있는 미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어(fully connected layer)를 이용하여 상기 분류된 문자 영역에서 문자를 인식하는 단계를 포함하는 신경망을 이용한 차량 번호판 인식 방법.
A vehicle license plate recognition method using a new network neural network performed by a vehicle license plate recognition device including a processor and a memory to recognize characters on the license plate of the vehicle,
The processor receiving an image including a license plate area of the vehicle;
Recognizing, by the processor, a character area classified in a license plate area of the vehicle;
The processor outputting a first output feature map by performing a first convolution operation on the image including the classified character region;
The processor outputting a second output feature map by applying sampling to the output first output feature map;
The processor performing a second convolution operation on the second output feature map to output a third output feature map;
The processor outputting a fourth output feature map by applying sampling to the outputted third output feature map; And
The processor is defined as a numerical expression of the outputted fourth output feature map and character characteristics, and divides the character area into predetermined areas and is the number of pixels of characters included in each area, or according to the height of the character. Complete a preset feature map that can be defined as the sum of white pixels or black pixels located on multiple drawn horizontal lines, or the sum of white pixels or black pixels located on multiple drawn vertical lines depending on the width. A method for recognizing a vehicle license plate using a neural network, comprising the step of recognizing a character in the classified character area using a fully connected layer that connects.
제1항에 있어서, 상기 풀리 커넥티드 레이어는,
입력 레이어(input layer), 은닉 레이어(hidden layer), 및 출력 레이어(output layer)를 포함하며,
상기 은닉 레이어는 복수의 은닉 뉴런들(neurons)을 포함하며,
상기 미리 설정된 피처 맵의 특징들의 개수가 m(m은 2이상의 자연수)개이고, 상기 출력된 제4출력 피처의 특징들의 개수가 n개(n은 2이상의 자연수)일 때,
상기 복수의 은닉 뉴런들 중 j번째(j는 자연수) 은닉 뉴런의 입력 값(
Figure 112020088791885-pat00074
)은 다음의 수학식으로 표현되며,
[수학식]
Figure 112020088791885-pat00075

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

상기
Figure 112020088791885-pat00078
는 상기 a번째 특징에 대한 j번째 가중치를, 상기
Figure 112020088791885-pat00079
는 상기 미리 설정된 피처 맵의 특징들 중 a번째 특징을, 상기
Figure 112020088791885-pat00080
는 상기 c번째 결과 값에 대한 j번째 가중치를, 상기
Figure 112020088791885-pat00081
는 상기 출력된 제4출력 피처의 특징들 중 c번째 결과 값을, 상기
Figure 112020088791885-pat00082
는 j번째 오프셋(offset)을, 상기 함수 f()는 시그모이드(sigmoid) 함수를 나타내는 신경망을 이용한 차량 번호판 인식 방법.
The method of claim 1, wherein the fully connected layer,
Includes an input layer, a hidden layer, and an output layer,
The hidden layer includes a plurality of hidden neurons (neurons),
When the number of features of the preset feature map is m (m is a natural number of 2 or more), and the number of features of the output fourth output feature is n (n is a natural number of 2 or more),
The input value of the j-th (j is a natural number) hidden neuron among the plurality of hidden neurons (
Figure 112020088791885-pat00074
) Is expressed by the following equation,
[Equation]
Figure 112020088791885-pat00075

The output value of the j-th (j is a natural number) hidden neuron among the plurality of hidden neurons (
Figure 112020088791885-pat00076
) Is expressed by the following equation,
[Equation]
Figure 112020088791885-pat00077

remind
Figure 112020088791885-pat00078
Is the j-th weight for the a-th feature,
Figure 112020088791885-pat00079
Is the a-th feature among the features of the preset feature map,
Figure 112020088791885-pat00080
Is the j-th weight for the c-th result value,
Figure 112020088791885-pat00081
Is the c-th result value among the features of the outputted fourth output feature,
Figure 112020088791885-pat00082
Denotes the j-th offset, and the function f() denotes a sigmoid function.
제2항에 있어서,
상기 출력 레이어는 복수의 출력 뉴런들을 포함하며,
상기 복수의 출력 뉴런들 중 k번째(k는 자연수) 출력 뉴런의 입력 값(
Figure 112020088791885-pat00083
)은 다음의 수학식으로 표현되며,
[수학식]
Figure 112020088791885-pat00084

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

상기
Figure 112020088791885-pat00087
는 상기 j번째 은닉 뉴런의 출력 값에 대한 k번째 가중치를, 상기
Figure 112020088791885-pat00088
는 상기 j번째 은닉 뉴런의 출력 값을, 상기
Figure 112020088791885-pat00089
는 k번째 오프셋을, 상기 함수 f()는 시그모이드(sigmoid) 함수를 나타내는 신경망을 이용한 차량 번호판 인식 방법.
The method of claim 2,
The output layer includes a plurality of output neurons,
The input value of the k-th (k is a natural number) output neuron among the plurality of output neurons (
Figure 112020088791885-pat00083
) Is expressed by the following equation,
[Equation]
Figure 112020088791885-pat00084

The output value of the k-th (k is a natural number) output neuron among the plurality of output neurons (
Figure 112020088791885-pat00085
) Is expressed by the following equation,
[Equation]
Figure 112020088791885-pat00086

remind
Figure 112020088791885-pat00087
Is the k-th weight for the output value of the j-th hidden neuron,
Figure 112020088791885-pat00088
Is the output value of the j-th hidden neuron,
Figure 112020088791885-pat00089
Is a k-th offset, and the function f() is a sigmoid function. A method of recognizing a vehicle license plate using a neural network.
제3항에 있어서,
상기 i번째 입력 뉴런의 출력 값에 대한 j번째 가중치의 오차인 상기
Figure 112020088791885-pat00090
는 다음의 수학식으로 표현되며,
[수학식]
Figure 112020088791885-pat00124

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

상기
Figure 112020088791885-pat00096
는 상수로, 기존의 가중치를 줄이기 위해 가중치 감소 비율을, 상기
Figure 112020088791885-pat00097
는 가중치를 어느 정도로 업데이트할 것인지 결정하는 학습율을, 상기
Figure 112020088791885-pat00098
는 복수의 출력 뉴런들 중 k번째 뉴런의 에러를, 상기 f'(zk)는
Figure 112020088791885-pat00126
를 나타내는 신경망을 이용한 차량 번호판 인식 방법.
The method of claim 3,
The error of the j-th weight with respect to the output value of the i-th input neuron
Figure 112020088791885-pat00090
Is expressed by the following equation,
[Equation]
Figure 112020088791885-pat00124

remind
Figure 112020088791885-pat00092
Is a constant, the weight reduction ratio to reduce the existing weight,
Figure 112020088791885-pat00093
Represents the learning rate that determines how much to update the weights,
The error of the k-th weight with respect to the output value of the j-th hidden neuron
Figure 112020088791885-pat00094
Is expressed by the following equation,
[Equation]
Figure 112020088791885-pat00125

remind
Figure 112020088791885-pat00096
Is a constant, the weight reduction ratio to reduce the existing weight,
Figure 112020088791885-pat00097
Is the learning rate that determines how much to update the weights,
Figure 112020088791885-pat00098
Is the error of the k-th neuron among the plurality of output neurons, and f'(z k ) is
Figure 112020088791885-pat00126
Vehicle license plate recognition method using a neural network representing.
차량을 촬영하고, 촬영된 이미지에서 차량의 번호판 영역을 포함하는 이미지를 전송하는 카메라;
신경망을 이용한 차량 번호판 인식 방법에 관한 명령들을 저장하는 메모리; 및
상기 명령들을 실행하는 프로세서를 포함하며,
상기 명령들은,
상기 프로세서는 차량의 번호판 영역을 포함하는 이미지를 수신하고, 상기 차량의 번호판 영역에서 분류된 문자 영역을 인식하며, 상기 분류된 문자 영역을 포함하는 이미지에 대해 제1컨볼루션 연산을 수행하여 제1출력 피처 맵을 출력하며, 상기 출력된 제1출력 피처 맵에 대해 샘플링을 적용하여 제2출력 피처 맵을 출력하며, 상기 제2출력 피처 맵에 대해 제2컨볼루션 연산을 수행하여 제3출력 피처 맵을 출력하며, 상기 출력된 제3출력 피처 맵에 대해 샘플링을 적용하여 제4출력 피처 맵을 출력하며, 상기 출력된 제4출력 피처 맵과, 문자의 특징을 수치로 표현한 것으로 정의되며, 상기 문자 영역을 일정 영역들로 나누고 각 영역에 포함된 문자의 픽셀 개수이거나, 상기 문자의 높이를 따라 여러 개로 그려진 수평 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합이거나, 폭에 따라 여러 개로 그려진 수직 선들에 위치하는 흰 픽셀들, 또는 검은 픽셀들의 합으로 정의될 수 있는 미리 설정된 피처 맵을 완전히 연결하는 풀리 커넥티드 레이어를 이용하여 상기 분류된 문자 영역에서 문자를 인식하도록 구현되는 차량 번호판 인식 시스템.
A camera that photographs a vehicle and transmits an image including a license plate area of the vehicle from the photographed image;
A memory for storing instructions related to a vehicle license plate recognition method using a neural network; And
And a processor that executes the instructions,
The above commands are:
The processor receives the image including the license plate area of the vehicle, recognizes the classified character area in the license plate area of the vehicle, and performs a first convolution operation on the image including the classified character area. Outputs an output feature map, applies sampling to the output first output feature map to output a second output feature map, and performs a second convolution operation on the second output feature map to obtain a third output feature. A map is output, sampling is applied to the outputted third output feature map, and a fourth output feature map is output, and the outputted fourth output feature map and character characteristics are defined as numerical expressions. The character area is divided into certain areas, and is the number of pixels of the character included in each area, or is the sum of white pixels or black pixels located on horizontal lines drawn several times along the height of the character, or is drawn several times according to the width. A vehicle license plate recognition system implemented to recognize characters in the classified character area using a fully connected layer that completely connects white pixels positioned on vertical lines or a preset feature map that can be defined as the sum of black pixels .
KR1020200079201A 2020-06-29 2020-06-29 Method and system for recognizing vehicle number plate using neural network KR102157990B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200079201A KR102157990B1 (en) 2020-06-29 2020-06-29 Method and system for recognizing vehicle number plate using neural network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200079201A KR102157990B1 (en) 2020-06-29 2020-06-29 Method and system for recognizing vehicle number plate using neural network

Publications (1)

Publication Number Publication Date
KR102157990B1 true KR102157990B1 (en) 2020-09-21

Family

ID=72708103

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200079201A KR102157990B1 (en) 2020-06-29 2020-06-29 Method and system for recognizing vehicle number plate using neural network

Country Status (1)

Country Link
KR (1) KR102157990B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112541500A (en) * 2020-12-03 2021-03-23 北京智芯原动科技有限公司 End-to-end license plate identification method and device
KR102338912B1 (en) * 2021-08-11 2021-12-15 주식회사 아프로시스템즈 Recognition method of vehicles license plate using super resolution

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101986592B1 (en) * 2019-04-22 2019-06-10 주식회사 펜타게이트 Recognition method of license plate number using anchor box and cnn and apparatus using thereof
KR101999985B1 (en) 2016-03-10 2019-07-15 주식회사한맥아이피에스 Method and system for recognizing vehicle license plate
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 (en) * 2018-06-14 2020-05-29 주식회사 메인시스 Parking access system and control method thereof
KR102122560B1 (en) * 2018-11-22 2020-06-12 삼성생명보험주식회사 Method to update character recognition model
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 (en) 2016-03-10 2019-07-15 주식회사한맥아이피에스 Method and system for recognizing vehicle license plate
US20200193232A1 (en) * 2016-12-23 2020-06-18 Shenzhen Institute Of Advanced Technology License plate recognition method, device thereof, and user equipment
KR102116797B1 (en) * 2018-06-14 2020-05-29 주식회사 메인시스 Parking access system and control method thereof
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 (en) * 2018-11-22 2020-06-12 삼성생명보험주식회사 Method to update character recognition model
KR101986592B1 (en) * 2019-04-22 2019-06-10 주식회사 펜타게이트 Recognition method of license plate number using anchor box and cnn and apparatus using thereof

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112541500A (en) * 2020-12-03 2021-03-23 北京智芯原动科技有限公司 End-to-end license plate identification method and device
CN112541500B (en) * 2020-12-03 2023-07-25 北京智芯原动科技有限公司 End-to-end license plate recognition method and device
KR102338912B1 (en) * 2021-08-11 2021-12-15 주식회사 아프로시스템즈 Recognition method of vehicles license plate using super resolution

Similar Documents

Publication Publication Date Title
US20210110180A1 (en) Method and apparatus for traffic sign detection, electronic device and computer storage medium
WO2019223582A1 (en) Target detection method and system
Rahman et al. A real-time wrong-way vehicle detection based on YOLO and centroid tracking
KR102161949B1 (en) Integrated parking management method and system using vehicle number plate recognition technology using neural network
Malbog MASK R-CNN for pedestrian crosswalk detection and instance segmentation
KR102194890B1 (en) Unmanned enforcement and road crime prevention method and system applied with vehicle license plate recognition technology using neural network
Loce et al. Computer vision and imaging in intelligent transportation systems
CN111491093B (en) Method and device for adjusting field angle of camera
CN112712057B (en) Traffic signal identification method and device, electronic equipment and storage medium
KR102157990B1 (en) Method and system for recognizing vehicle number plate using neural network
KR102001002B1 (en) Method and system for recognzing license plate based on deep learning
CN111898491B (en) Identification method and device for reverse driving of vehicle and electronic equipment
CN111931683B (en) Image recognition method, device and computer readable storage medium
US10984264B2 (en) Detection and validation of objects from sequential images of a camera
Ketcham et al. Recognizing the Illegal Parking Patterns of Cars on the Road in Front of the Bus Stop Using the Support Vector Machine
Ren et al. An improved mask-RCNN algorithm for UAV TIR video stream target detection
Khan et al. Lane detection using lane boundary marker network with road geometry constraints
Kamble et al. Lane departure warning system for advanced drivers assistance
KR102161948B1 (en) Parking guidance system applied with vehicle license plate recognition technology using neural network and method of providing parking vehicle location information thereof
Ho et al. Intelligent speed bump system with dynamic license plate recognition
KR102157989B1 (en) Illegal parking control method and system by using neural network
Nienhüser et al. Fast and reliable recognition of supplementary traffic signs
Athree et al. Vision-based automatic warning system to prevent dangerous and illegal vehicle overtaking
CN109670455A (en) Computer vision lane detection system and its detection method
US11715215B2 (en) Untrained systems and methods for vehicle speed estimation

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant