KR20230099590A - Code recognition device, and character code recognition method using the same - Google Patents
Code recognition device, and character code recognition method using the same Download PDFInfo
- Publication number
- KR20230099590A KR20230099590A KR1020220035836A KR20220035836A KR20230099590A KR 20230099590 A KR20230099590 A KR 20230099590A KR 1020220035836 A KR1020220035836 A KR 1020220035836A KR 20220035836 A KR20220035836 A KR 20220035836A KR 20230099590 A KR20230099590 A KR 20230099590A
- Authority
- KR
- South Korea
- Prior art keywords
- code
- character
- image
- recognition device
- code recognition
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/19—Recognition using electronic means
- G06V30/191—Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
- G06V30/19127—Extracting features by transforming the feature space, e.g. multidimensional scaling; Mappings, e.g. subspace methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/1444—Selective acquisition, locating or processing of specific regions, e.g. highlighted text, fiducial marks or predetermined fields
Abstract
본 발명의 실시예는, 코드인식장치에 포함된 제어부에 의해 수행되는, 문자코드 인식 방법에 있어서, 문자코드를 포함하는 코드이미지를 획득하는 과정; 머신러닝 모델을 이용하여 상기 코드이미지에 대한 특징 맵들을 추출하고, 상기 특징 맵들로부터 상기 복수의 문자라벨 및 문자라벨의 갯수를 추출하는 과정; 상기 머신러닝 모델로부터 상기 특징 맵들에 대응하는 가중치 값들을 획득하고, 상기 특징 맵들과 상기 특징 맵들에 대응하는 상기 가중치 값들의 조합으로 상기 코드이미지에서 어텐션되는 상기 복수의 문자라벨에 대응한 각 문자의 코드영역을 탐지하는 과정; 상기 각 문자의 코드영역, 상기 복수의 문자라벨 및 문자라벨의 갯수를 이용하여 상기 문자코드에서 상기 각 문자의 위치를 지정하는 과정; 및 상기 코드이미지에 포함된 상기 문자코드를 출력하는 과정을 포함하는, 문자코드 인식 방법을 제공할 수 있다. An embodiment of the present invention is a method of recognizing a character code, which is performed by a control unit included in a code recognition device, comprising: obtaining a code image including a character code; extracting feature maps of the code image using a machine learning model, and extracting the plurality of text labels and the number of text labels from the feature maps; Weight values corresponding to the feature maps are obtained from the machine learning model, and a combination of the feature maps and the weight values corresponding to the feature maps is used to determine the value of each character corresponding to the plurality of character labels of attention in the code image. Process of detecting code area; designating a position of each character in the character code using the code area of each character, the plurality of character labels, and the number of character labels; and outputting the character code included in the code image.
Description
본 발명은 코드인식장치 및 이를 이용한 문자코드 추출 방법에 관한 것으로, 상세히는 자동차 번호판 사진과 같이 글자나 숫자와 같은 문자코드를 포함하는 코드이미지에서 문자코드를 인식하여 차량번호를 추출할 수 있는, 코드인식장치 및 이를 이용한 문자코드 추출 방법에 관한 것이다.The present invention relates to a code recognition device and a method for extracting a character code using the same, and in detail, a vehicle number can be extracted by recognizing a character code from a code image including character codes such as letters or numbers, such as a photograph of a license plate, It relates to a code recognition device and a character code extraction method using the same.
코드이미지란 규격화된 길이와 형식을 갖는 코드를 포함하는 디지털 이미지를 의미한다. 코드란 사람이 읽을 수 있는 문자 혹은 사람이 읽을 수 없는 기호 등을 포함할 수 있다. 문자의 예로, 글자 혹은 숫자 등을 들 수 있다. A code image means a digital image including a code having a standardized length and format. The code may include human-readable characters or non-human-readable symbols. Examples of characters include letters, numbers, and the like.
이하에서 적어도 하나의 글자, 적어도 하나의 숫자, 적어도 하나의 글자 및 적어도 하나의 숫자의 조합으로 구성되면서 규격화된 길이와 형식을 갖는 코드를 문자코드로 지칭한다.Hereinafter, a code composed of at least one letter, at least one number, and a combination of at least one letter and at least one number and having a standardized length and format is referred to as a character code.
일상생활에서 볼 수 있는 문자코드의 예로, 주민등록 번호, 전화 번호, 바코드 번호, 자동차 번호판 번호 등이 있으며, 이들의 디지털 이미지를 코드이미지라 한다.Examples of character codes that can be seen in everyday life include resident registration numbers, phone numbers, barcode numbers, license plate numbers, and the like, and their digital images are called code images.
최근 들어, 머신러닝 기술을 활용하여 코드이미지로부터 문자코드를 인식하는 기술이 비약적으로 발전하고 있다. 일반적인 머신러닝 기술은 코드이미지로 머신러닝 모델을 학습시키고, 학습된 머신러닝 모델을 이용하여 코드이미지를 특정 문자코드에 대응하는 클래스로 분류하여 문자코드를 인식한다.Recently, a technique for recognizing a character code from a code image using machine learning technology is rapidly developing. A general machine learning technique trains a machine learning model with a code image, classifies the code image into a class corresponding to a specific character code using the learned machine learning model, and recognizes the character code.
예를 들어, 1개 숫자로 구성된 코드이미지를 인식하는 문제에서, 머신러닝 모델은 코드이미지를 숫자 0 부터 9 중 하나에 대응하는 클래스로 분류하고, 해당 클래스에 대응된 숫자를 코드이미지 속 숫자로 인식한다. 이 경우 머신러닝 모델은 10 클래스 분류 모델 일 수 있다. For example, in the problem of recognizing a code image consisting of one number, the machine learning model classifies the code image into a class corresponding to one of the
위의 문제를 확장해서, 4개 숫자로 구성된 코드이미지를 인식하는 문제에서, 4개 숫자로 표현할 수 있는 클래스의 개수는 10 * 10 * 10 * 10 = 10,000 이다. 즉, 4개 숫자로 구성된 코드이미지를 한 번에 인식하기 위해선 10,000 클래스를 분류할 수 있는 머신러닝 모델이 필요하다.Expanding the above problem, in the problem of recognizing a code image composed of 4 numbers, the number of classes that can be expressed with 4 numbers is 10 * 10 * 10 * 10 = 10,000. That is, in order to recognize a code image composed of 4 numbers at once, a machine learning model capable of classifying 10,000 classes is required.
도 1은 분류하는 클래스의 갯수에 따른 일반적인 머신러닝 모델의 분류 정확도를 도시한 그래프 이다.1 is a graph showing the classification accuracy of a general machine learning model according to the number of classes to be classified.
도 1을 참조하면, 일반적인 머신러닝 모델의 분류 성능은 구분하고자 하는 클래스의 개수에 반비례하게 된다. 다시 말해, 코드이미지 내의 숫자의 개수가 늘어날수록 클래스의 개수가 늘어나고, 머신러닝 모델의 인식 성능은 떨어지는 문제점이 발생한다.Referring to FIG. 1 , the classification performance of a general machine learning model is in inverse proportion to the number of classes to be classified. In other words, as the number of numbers in the code image increases, the number of classes increases, and the recognition performance of the machine learning model deteriorates.
현재 딥러닝 모델의 분류 성능의 벤치마킹으로 사용되는 ImageNet 데이터의 클래스의 개수는 1,000이며 Top-1 Accuracy 기준이 90.88% (CoAtNet-7) 이다. 이 점에 비춰보면, 현재 기술 수준으로 10,000 클래스를 분류하는 머신러닝 모델은 아직 연구단계이며, 상용 수준의 성능까지 올리는데 많은 시간이 필요한 문제점이 있다. 그러므로, 자동차 번호판 번호(7자리: 1천만 클래스) 또는 전화번호(11자리: 1천억 클래스)의 인식은 더 어려운 분류 문제이다.The number of classes of ImageNet data used as a benchmark for the classification performance of the current deep learning model is 1,000, and the Top-1 Accuracy standard is 90.88% (CoAtNet-7). In light of this, the machine learning model that classifies 10,000 classes at the current technology level is still in the research stage, and there are problems that require a lot of time to raise performance to commercial level. Therefore, recognition of vehicle license plate numbers (7 digits: 10 million classes) or telephone numbers (11 digits: 100 billion classes) is a more difficult classification problem.
위와 같은 문제점 때문에, 대표적으로 종래에 사용되는 OCR 기반 코드 인식 기술은 코드이미지 속의 개별 문자를 분리하여 각 개별 문자를 인식하는 방식을 사용한다.Because of the above problems, the OCR-based code recognition technology typically used in the prior art uses a method of recognizing each individual character by separating individual characters in a code image.
도 2(a)는 종래의 OCR 기반 코드 인식 기술에 대한 대략적인 흐름도를 도시한 것이다. 도 2(b)는 컬러이미지를 전처리하여 소스 이미지를 획득하는 과정을 도시한 것이다.Figure 2 (a) shows a schematic flow chart for a conventional OCR-based code recognition technique. 2(b) illustrates a process of obtaining a source image by pre-processing a color image.
종래의 OCR 기반 코드 인식 기술은 코드이미지의 좌에서 우로, 또는 위에서 아래로 한 개의 문자씩 읽어 나가는 방식이다. The conventional OCR-based code recognition technology is a method of reading a code image one character at a time from left to right or from top to bottom.
도 2(a)에 도시된 바와 같이, 종래의 OCR 기반 코드 인식 기술은, 전처리된 소스 이미지(SI)를 획득하는 과정(S10), 소스 이미지 내의 코드를 수평하게 하기 위해 소스 이미지를 회전하는 과정(S20), 소스 이미지 내의 각 단어(예로, 'Hello', 'World') 전체를 포함하는 문자영역(WA)을 추출하는 과정(S30), 각 문자영역(WA)에서 각 개별 문자(예로, 'H', 'e', 'l', 'l', 'o')의 개별문자영역(CA)을 추출하는 과정(S40), 딥러닝 알고리즘을 이용하여 각 개별문자영역으로부터 각 개별문자(예로, 'H', 'e', 'l', 'l', 'o')를 인식하는 과정(S50), 인식된 개별글자들을 합쳐서 각 단어(예로, 'Hello', 'World')를 인식하는 과정(S60)을 포함할 수 있다.As shown in FIG. 2(a), the conventional OCR-based code recognition technique includes obtaining a preprocessed source image (SI) (S10), and rotating the source image to level the code in the source image. (S20), a process of extracting a character area (WA) including all of each word (eg, 'Hello', 'World') in the source image (S30), each individual character (eg, A process of extracting individual character areas (CA) of 'H', 'e', 'l', 'l', and 'o' (S40), each individual character (from each individual character area) using a deep learning algorithm For example, the process of recognizing 'H', 'e', 'l', 'l', 'o') (S50), each word (eg, 'Hello', 'World') by combining recognized individual letters A recognition process (S60) may be included.
도 2(b)를 참조하면, 전처리된 소스 이미지란 컬러 이미지를 먼저 회색조로 변환하고, 픽셀 값을 분석하여 밝기 및 명암 대비를 크게하여 픽셀 값을 2개 범위로 나눠 0과 1로 분류하는 이진화 작업을 거쳐, 흰색 바탕에 검정색의 문자코드만으로 된 코드이미지를 말한다(화살표 방향 참조).Referring to FIG. 2(b), a pre-processed source image is binarization in which a color image is first converted to grayscale, and pixel values are analyzed to increase brightness and contrast, dividing pixel values into two ranges and classifying them as 0 and 1. It refers to a code image consisting only of black text codes on a white background after working (refer to the direction of the arrow).
종래의 OCR 기반 코드 인식 기술은 코드이미지에서 문자를 한 개씩 개별문자영역으로 분리하여 순차적으로 개별 문자를 인식하기 때문에, 정확도가 높은 10 클래스 머신러닝 모델을 이용할 수 있다는 장점이 있다. Conventional OCR-based code recognition technology has the advantage of being able to use a 10-class machine learning model with high accuracy because it sequentially recognizes individual characters by separating characters from a code image into individual character areas one by one.
그러나, 종래의 OCR 기반 코드 인식 기술은 개별 문자와 문자 사이의 구분이 명확해야 인식률이 높다는 단점이 있다. 일반 카메라 영상은 개별 문자들 사이의 구분이 명확하지 않은 저화질 또는 이동 중 촬영으로 발생하는 모션블러를 가지는 이미지거나, 카메라 자체 떨림, 빛 반사 및 초점이 맞지 않기 때문에 문자가 명확하지 않는 이미지인 경우가 대부분이기 때문에, 종래의 OCR 기반 코드 인식 기술은 일반 카메라 영상에 대한 인식 성능이 현저하게 떨어진다.However, the conventional OCR-based code recognition technology has a disadvantage in that the recognition rate is high only when the distinction between individual characters and characters is clear. In general camera images, there are cases in which the distinction between individual characters is not clear, or images with motion blur caused by filming while moving, or images in which characters are not clear because the camera itself shakes, reflects light, and is out of focus. Since most of them, the conventional OCR-based code recognition technology has significantly poor recognition performance for general camera images.
이를 보완하기 위해서, 노이즈 제거 처리, 비스듬한 문자열을 수평으로 맞추기 위한 얼라인 처리, 엣지 영역을 명확히 하기 위한 엣지 감지 처리 등으로 영상을 클리어(clear)하게 만들기 위한 보정기술이 있으나, 이러한 보정기술은 코드 인식 속도를 느려지게 하는 문제점을 야기한다.In order to compensate for this, there are correction technologies to make the image clear by removing noise, aligning processing to horizontally align oblique strings, and edge detection processing to clarify the edge area. It causes a problem that slows down the recognition speed.
상술한 문제점들을 해결하기 위해, 본 발명의 실시예는 코드이미지 상에서 개별문자영역을 분리하지 않고 문자코드를 인식하는, 코드 인식장치, 코드의 인식방법 및 이를 활용한 차량번호의 추출시스템을 제공할 수 있다. In order to solve the above problems, an embodiment of the present invention is to provide a code recognition device, a code recognition method, and a license plate extraction system using the same, which recognizes a character code without separating individual character areas on a code image. can
본 발명의 실시예는, 개별 문자들 사이를 명확하게 구분하기 위한 전처리 보정기술이 필요 없으며, 코드이미지의 화질에 상관 없는 문자코드 인식률을 갖는, 코드 인식장치, 코드의 인식방법 및 이를 활용한 차량번호의 추출시스템을 제공할 수 있다.Embodiments of the present invention do not require preprocessing correction technology to clearly distinguish between individual characters, and have a character code recognition rate regardless of the image quality of a code image, a code recognition device, a code recognition method, and a vehicle using the same A number extraction system can be provided.
본 발명의 실시예는, 종래의 OCR 기반 코드 인식 기술 보다 빠른 인식 속도를 가지는, 코드 인식장치, 코드의 인식방법 및 이를 활용한 차량번호의 추출시스템을 제공할 수 있다.Embodiments of the present invention can provide a code recognition device, a code recognition method, and a license plate extraction system using the same, which have a faster recognition speed than conventional OCR-based code recognition technology.
본 발명의 실시예에 따른 코드 인식장치에 포함된 제어부에 의해 수행되는, 문자코드 추출 방법에 있어서, 문자코드를 포함하는 코드이미지를 획득하는 과정; 머신러닝 모델을 이용하여 상기 코드이미지에 대한 특징 맵들을 추출하고, 상기 특징 맵들로부터 상기 복수의 문자라벨 및 문자라벨의 갯수를 추출하는 과정; 상기 머신러닝 모델로부터 상기 특징 맵들에 대응하는 가중치 값들을 획득하고, 상기 특징 맵들과 상기 특징 맵들에 대응하는 상기 가중치 값들의 조합으로 상기 코드이미지에서 어텐션되는 상기 복수의 문자라벨에 대응한 각 문자의 코드영역을 탐지하는 과정; 상기 각 문자의 코드영역, 상기 복수의 문자라벨 및 문자라벨의 갯수를 이용하여 상기 문자코드에서 상기 각 문자의 위치를 지정하는 과정; 및 상기 코드이미지에 포함된 상기 문자코드를 출력하는 과정을 포함하는, 문자코드 추출 방법을 제공할 수 있다.A method of extracting a character code, performed by a control unit included in a code recognition device according to an embodiment of the present invention, comprising: obtaining a code image including a character code; extracting feature maps of the code image using a machine learning model, and extracting the plurality of text labels and the number of text labels from the feature maps; Weight values corresponding to the feature maps are obtained from the machine learning model, and a combination of the feature maps and the weight values corresponding to the feature maps is used to determine the value of each character corresponding to the plurality of character labels of attention in the code image. Process of detecting code area; designating a position of each character in the character code using the code area of each character, the plurality of character labels, and the number of character labels; and outputting the character code included in the code image.
본 발명의 실시예에 따른 코드 인식장치, 코드의 인식방법 및 이를 활용한 차량번호의 추출시스템은, 코드이미지 상에서 개별문자영역을 분리하지 않고 문자코드를 인식하며, 개별문자영역을 추출할 때 발생하는 에러를 제거하는 효과를 가진다. A code recognition device, a method for recognizing a code, and a vehicle number extraction system using the same according to an embodiment of the present invention recognize character codes without separating individual character areas on a code image, and occur when extracting individual character areas. has the effect of eliminating errors that
본 발명의 실시예에 따른 코드 인식장치, 코드의 인식방법 및 이를 활용한 차량번호의 추출시스템은, 개별글자영역을 추출하는 과정이 필요 없기 때문에 개별 문자들 사이를 명확하게 구분하기 위한 전처리 보정기술이 필요 없으며, 개별문자들 사이의 간섭 무늬로 구분이 불분명하더라도 문자코드를 명확하게 인식하는 효과를 가진다. A code recognition device, a code recognition method, and a vehicle number extraction system using the same according to an embodiment of the present invention do not require a process of extracting individual character areas, so a preprocessing correction technology for clearly distinguishing between individual characters. There is no need for this, and it has the effect of clearly recognizing the character code even if the distinction is unclear due to the interference pattern between individual characters.
본 발명의 실시예에 따른 코드 인식장치, 코드의 인식방법 및 이를 활용한 차량번호의 추출시스템은, 종래의 OCR 기반 코드 인식 기술 보다 빠른 인식 속도를 가지는 효과를 가진다.A code recognition device, a code recognition method, and a vehicle number extraction system using the same according to an embodiment of the present invention have an effect of having a faster recognition speed than conventional OCR-based code recognition technology.
본 발명의 실시예에 따른 코드 인식장치, 코드의 인식방법 및 이를 활용한 차량번호의 추출시스템은, 일반 방법용 CCTV 또는 차량용 블랙박스에 의해 촬영된 영상과 같이 모션 블러가 심하거나 원거리 촬영으로 저해상도, 저조도 및 역광 등의 노이즈로 인해 열악한 화질의 이미지라도 높은 문자코드 인식률을 가지는 효과를 가진다.A code recognition device, a code recognition method, and a vehicle number extraction system using the same according to an embodiment of the present invention, such as a video taken by a CCTV for a general method or a black box for a vehicle, have severe motion blur or low resolution by long-distance shooting. , it has the effect of having a high character code recognition rate even in poor image quality due to noise such as low illumination and backlighting.
도 1은 분류하는 클래스의 갯수에 따른 일반적인 머신러닝 모델의 분류 정확도를 도시한 그래프 이다.
도 2(a)는 종래의 OCR 기반 코드 인식 기술에 대한 대략적인 흐름도를 도시한 것이다.
도 2(b)는 컬러이미지를 전처리하여 소스 이미지를 획득하는 과정을 도시한 것이다.
도 3은 본 발명의 실시예에 따른 코드 인식장치의 구성도를 도시한 것이다.
도 4는 본 발명의 실시예에 따른 코드의 인식방법의 흐름도를 도시한 것이다.
도 5는 본 발명의 실시예에 따른 코드 인식장치의 전체 개념도를 도시한 것이다.
도 6은 본 발명의 실시예에 따른 코드 인식장치의 상세 개념도이다.
도 7(a)는 코드이미지의 일 예로 자동차 번호판의 사진이며, 도 7(b)는 학습 데이터의 예시를 나타낸 것이다.
도 8은 본 발명의 실시예에 따른 코드의 인식방법에 따라 인식된 결과를 보여주는 예시이다.
도 9는 본 발명의 실시예에 따른 코드 인식장치를 활용한 차량번호의 추출시스템의 개념도를 도시한 것이다.
도 10은 본 발명의 실시예에 따른 코드 인식장치를 활용한 차량번호의 추출시스템의 제어방법의 흐름도이다.1 is a graph showing the classification accuracy of a general machine learning model according to the number of classes to be classified.
Figure 2 (a) shows a schematic flow chart for a conventional OCR-based code recognition technique.
2(b) illustrates a process of obtaining a source image by pre-processing a color image.
3 shows a configuration diagram of a code recognition device according to an embodiment of the present invention.
4 is a flowchart of a code recognition method according to an embodiment of the present invention.
5 is an overall conceptual diagram of a code recognition device according to an embodiment of the present invention.
6 is a detailed conceptual diagram of a code recognition device according to an embodiment of the present invention.
7(a) is a picture of a car license plate as an example of a code image, and FIG. 7(b) shows an example of learning data.
8 is an example showing a result recognized according to a code recognition method according to an embodiment of the present invention.
9 is a conceptual diagram of a vehicle number extraction system using a code recognition device according to an embodiment of the present invention.
10 is a flowchart of a control method of a vehicle number extraction system using a code recognition device according to an embodiment of the present invention.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 또는 기능적 설명은 단지 본 발명의 개념에 따른 실시 예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시 예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되지 않는다.Specific structural or functional descriptions of the embodiments according to the concept of the present invention disclosed in this specification are only illustrated for the purpose of explaining the embodiments according to the concept of the present invention, and the embodiments according to the concept of the present invention It can be embodied in various forms and is not limited to the embodiments described herein.
본 발명의 개념에 따른 실시 예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시 예들을 도면에 예시하고 본 명세서에서 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물, 또는 대체물을 포함한다.Embodiments according to the concept of the present invention can apply various changes and have various forms, so the embodiments are illustrated in the drawings and described in detail in this specification. However, this is not intended to limit the embodiments according to the concept of the present invention to specific disclosure forms, and includes all changes, equivalents, or substitutes included in the spirit and technical scope of the present invention.
본 명세서에서 사용한 기술적 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로서, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 본 명세서에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Technical 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 dictates otherwise. In this specification, terms such as "comprise" or "having" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in this specification, but one or more other features It should be understood that it does not preclude the possibility of the presence or addition of numbers, steps, operations, components, parts, or combinations thereof.
본 명세서에서 사용되는 구성요소에 대한 접미사 "모듈(module)" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니며, 본 발명의 실시 예에 따른 방법을 수행하기 위한 하드웨어 또는 상기 하드웨어를 구동할 수 있는 소프트웨어의 기능적 또는 구조적 결합을 의미할 수 있다.The suffixes "module" and "unit" for the components used in this specification are given or used interchangeably in consideration of only the ease of writing the specification, and do not have a meaning or role that distinguishes each other by themselves, and this It may mean a functional or structural combination of hardware for performing a method according to an embodiment of the invention or software capable of driving the hardware.
이하에서 본 발명의 실시예에 따른 코드 인식장치, 코드의 인식방법 및 이를 활용한 차량번호의 추출시스템을 설명한다.Hereinafter, a code recognition device according to an embodiment of the present invention, a code recognition method, and a license plate extraction system using the same will be described.
도 3은 본 발명의 실시예에 따른 코드 인식장치의 구성도를 도시한 것이다.3 shows a configuration diagram of a code recognition device according to an embodiment of the present invention.
도 3을 참조하면, 본 발명의 실시예에 따른 코드 인식장치(1000)는, 코드정보 인식부(1420), 코드영역 탐지부(1430), 코드위치 지정부(1440)를 포함할 수 있다. Referring to FIG. 3 , a
일 예에 따른 코드 인식장치(1000)가 서버인 경우, 메모리(1100), 통신부(1300), 제어부(1400)로 구성될 수 있으며, 제어부(1400)는 수신된 정보를 연산한 결과 값을 메모리(1100)에 저장하거나 통신부(1300)를 통해 다른 장치로 송신할 수 있다. 이 경우, 코드정보 인식부(1420), 코드영역 탐지부(1430), 코드위치 지정부(1440)는 제어부(1400)로서 미리 저장된 소스코드 혹은 소프트웨어를 수행할 수 있다.When the
일 예에 따른 코드 인식장치(1000)가 기록매체인 경우, 정보를 저장하거나 요청된 정보를 제공하는 메모리(110)로 구성될 수 있다. 이 경우, 코드정보 인식부(1420), 코드영역 탐지부(1430), 코드위치 지정부(1440)는 메모리(1100)에 저장된 소스코드 혹은 소프트웨어 자체일 수 있다.When the
일 예에 따른 코드 인식장치(1000)가 스마트폰, 퍼스널 컴퓨터와 같은 사용자 단말기인 경우, 메모리(1100), 출력부(1200), 통신부(1300), 제어부(1400)로 구성될 수 있으며, 제어부(1400)는 수신된 정보를 연산한 결과 값을 메모리(1100)에 저장하거나 통신부(1300)를 통해 다른 장치로 송신하거나 출력부(1200)을 통해 사용자에게 출력할 수 있다. 이 경우, 코드정보 인식부(1420), 코드영역 탐지부(1430), 코드위치 지정부(1440)는 제어부(1400)로서 미리 저장된 소스코드 혹은 소프트웨어를 수행할 수 있다.When the
메모리(1100)는 제어부(1400)의 처리 및 제어를 위한 소스코드 혹은 프로그램을 저장할 수 있고, 코드 인식장치(1000)로 입력되거나 출력되는 정보를 저장할 수 있고, 저장된 정보를 읽을 수 있다.The
출력부(1200)는 오디오 신호, 영상 신호, 이미지 신호 등을 출력할 수 있다. 출력부(1200)는 코드 인식장치(1000)에서 처리되는 정보를 표시 출력하는 디스플레이부, 또는 메모리(1100)에 저장된 오디오 데이터를 출력하는 음향 출력부를 포함할 수 있다.The
통신부(1300)는 코드 인식장치(1000)가 다른 장치(미도시) 혹은 서버(미도시)와 통신하게 하는 적어도 하나의 구성요소를 포함할 수 있다. 다른 장치(미도시)는 컴퓨팅 장치이거나, 센싱 장치일 수 있으나, 이에 한정되는 것은 아니다.The
제어부(1400)는 통상적으로 코드 인식장치(1000)의 전반적인 동작을 제어한다. 제어부(1400)는 메모리(1100), 출력부(1200), 통신부(1300)에 전기적으로 연결되어, 메모리(1100)에 저장된 정보를 읽어들이거나 메모리(110)에 정보를 저장시킬 수 있으며, 출력부(1200)를 통해 사용자에게 정보를 제공하거나, 통신부(1300)를 통해서 정보를 수신 혹은 송신할 수 있다.The
도 4는 본 발명의 실시예에 따른 코드의 인식방법의 흐름도를 도시한 것이다. 도 5는 본 발명의 실시예에 따른 코드 인식장치의 전체 개념도를 도시한 것이다. 도 6은 본 발명의 실시예에 따른 코드 인식장치의 상세 개념도이다. 도 7(a)는 코드이미지의 일 예로 자동차 번호판의 사진이며, 도 7(b)는 학습 데이터의 예시를 나타낸 것이다. 도 8은 본 발명의 실시예에 따른 코드의 인식방법에 따라 인식된 결과를 보여주는 예시이다.4 is a flowchart of a code recognition method according to an embodiment of the present invention. 5 is an overall conceptual diagram of a code recognition device according to an embodiment of the present invention. 6 is a detailed conceptual diagram of a code recognition device according to an embodiment of the present invention. 7(a) is a picture of a car license plate as an example of a code image, and FIG. 7(b) shows an example of learning data. 8 is an example showing a result recognized according to a code recognition method according to an embodiment of the present invention.
상술한 바와 같이, 이하에서 설명할 본 발명의 실시예에 따른 코드의 인식방법은, 코드 인식장치(1000)의 제어부(1400)에 의해 수행되거나, 메모리(1100)와 같은 기록매체에 저장되어 있을 수 있다. 설명의 편의를 위해, 코드 인식장치(1000)의 제어부(1400)가 코드의 인식방법을 수행하는 관점에서 설명하지만, 이하에서 설명되는 코드의 인식방법은 프로그래밍 언어를 통해 코딩되어 기록매체에 소스코드 혹은 소프트웨어로서 의미할 수 있다. As described above, the code recognition method according to an embodiment of the present invention to be described below may be performed by the
도 4를 참조하면, 본 발명의 실시예에 따른 코드의 인식방법은, 코드이미지에서 코드정보를 인식하는 과정(S120), 코드이미지에서 코드영역을 탐지하는 과정(S130), 및 코드위치를 지정하는 과정(S140)를 포함할 수 있다. 나아가, 본 발명의 실시예에 따른 코드의 인식방법은, 코드정보를 인식하는 과정(S120) 이전에 코드이미지를 획득하는 과정(S110)을 더 포함할 수 있으며, 또한 코드위치를 지정하는 과정(S140) 이후에 코드를 출력하는 과정(S150)을 더 포함할 수 있다. Referring to FIG. 4, the code recognition method according to an embodiment of the present invention includes a process of recognizing code information in a code image (S120), a process of detecting a code area in a code image (S130), and specifying a code location. It may include a process (S140) of doing. Furthermore, the code recognition method according to an embodiment of the present invention may further include a step of acquiring a code image (S110) before the step of recognizing code information (S120), and also a step of designating a code location ( After S140), a process of outputting a code (S150) may be further included.
이하에서, S110 과정 내지 S150 과정에 대해 자세히 설명한다.Hereinafter, steps S110 to S150 will be described in detail.
S110 과정에서, 코드 인식장치(1000)는 코드이미지를 획득할 수 있다. 코드 인식장치(1000)는 카메라(미도시)를 통해 촬영되거나, CCTV를 통해서 촬영되어 통신부(1300)를 통해 수신되거나, 메모리(1100)에 저장되어 있는 코드이미지를 획득할 수 있다. In step S110, the
코드이미지란 문자코드를 포함하는 디지털 이미지를 의미한다. 문자코드란 적어도 하나의 글자(예로, 알파벳 대문자 A~Z, 알파벳 소문자 a~z, 등), 적어도 하나의 숫자(예로, 아라비아 숫자0~9), 혹은 적어도 하나의 글자 및 적어도 하나의 숫자의 조합으로 이뤄진 문자이며, 일반적으로 규격화된 길이와 형식을 갖는 코드를 의미한다. The code image refers to a digital image including a character code. A character code is a combination of at least one letter (eg, uppercase letters A to Z, lowercase letters a to z, etc.), at least one number (eg,
도 7(a)에 도시된 바와 같이, 코드이미지의 일 예인로 자동차 번호판 사진을 들 수 있다. 자동차 번호판 사진은 일반 방법용 CCTV 카메라로 촬영된 경우 좌측과 같이 열악한 화질로서 자동차 번호에 해당하는 문자코드를 육안으로 확인하기 어려울 수 있으며, 번호 판독용 카메라로 촬영된 경우 우측과 같이 깨끗한 화질로서 문자코드를 육안으로 확인할 수 있다. As shown in FIG. 7 (a), an example of a code image may be a license plate photo. If the car license plate picture is taken with a CCTV camera for general method, it is of poor quality as shown on the left, and it may be difficult to visually check the character code corresponding to the car number. You can visually check the code.
S120 과정에서, 코드 인식장치(1000)는 코드이미지에서 코드정보를 인식할 수 있다. In step S120, the
도 5를 참조하면, 코드 인식장치(1000)는 코드정보 인식부(1420)를 이용해 코드이미지로부터 문자코드의 코드정보를 추출할 수 있다.Referring to FIG. 5 , the
문자코드의 코드정보는 문자코드를 구성하는 문자 라벨과 문자 라벨의 갯수를 포함할 수 있다. 문자 라벨은 문자코드에 존재하는 글자 혹은 숫자의 종류를 의미한다. 예를 들어, 문자코드가 “DE008” 인 경우 문자 라벨은 D, E, 0, 8일 수 있다. “DE008”의 코드정보는 문자 라벨 D와 갯수 1, 문자 라벨 E와 갯수 1, 문자 라벨 0과 갯수 2, 문자 라벨 8과 갯수 1을 포함하며, {(D:1), (E:1), (0:2), (8:1)}으로 나타낼 수 있다. The code information of the character code may include character labels constituting the character code and the number of character labels. The character label refers to the type of characters or numbers present in the character code. For example, if the character code is “DE008”, the character labels may be D, E, 0, and 8. Code information of “DE008” includes character label D and
이러한 이유로, 코드 인식장치(1000)는 문자코드가 서로 다른 코드이미지들로부터 동일한 코드정보를 획득할 수 있다. 예를 들어, 제1 문자코드 “4423”의 제1 코드이미지와, 제2 문자코드 “4243”의 제2 코드이미지는 서로 다른 문자코드를 가지지만, 코드 인식장치(1000)는 제1 코드이미지 및 제2 코드이미지로부터 동일한 코드정보를 획득한다. 제1 코드 이미지 및 제2 코드 이미지의 코드 정보는 문자라벨 2와 갯수 1, 문자라벨 3과 갯수 1, 문자라벨 4와 갯수 2를 포함하며, {(2,1), (3,1), (4,2)}으로 나타낼 수 있다. For this reason, the
도 6을 참조하면, 코드정보 인식부(1420)는 코드이미지를 입력 받아 코드정보를 출력하는 머신러닝 모델(M)에 포함될 수 있다.Referring to FIG. 6 , the code
머신러닝 모델(M)은 뉴럴 네트워크로 구성될 수 있으며, 코드이미지를 입력받는 뉴럴 네트워크의 입력층부터 출력층까지 순서대로 뉴럴 네트워크의 변수들을 계산하고 저장하는 포워드 전파(forward propagation)를 통해 코드정보(예로, 문자라벨과 문자라벨의 갯수)를 출력할 수 있다.The machine learning model (M) may be composed of a neural network, and code information ( For example, text labels and the number of text labels) can be output.
상세히는, 머신러닝 모델(M)은 코드이미지로부터 코드이미지의 특징(Feature)을 나타내는 복수의 특징 맵(Feature map)을 추출하는 제1 네트워크(M1)를 포함할 수 있으며, 제1 네트워크(M1)은 코드이미지의 특징을 추출할 때 주로 사용되는 CNN(Convolutional Neural Networks) 일 수 있다. 이 경우 복수의 특징 맵은 머신러닝 모델(M)의 중간 인식결과 값으로 표현할 수 있으며, 최종 인식결과 값은 코드정보에 해당하는 문자라벨 및 문자라벨의 갯수를 의미할 수 있다. In detail, the machine learning model M may include a first network M1 that extracts a plurality of feature maps representing features of the code image from the code image, and the first network M1 ) may be Convolutional Neural Networks (CNNs) that are mainly used when extracting features of a code image. In this case, the plurality of feature maps may be expressed as an intermediate recognition result value of the machine learning model (M), and the final recognition result value may mean a character label corresponding to code information and the number of character labels.
또한, 머신러닝 모델(M)은 복수의 특징 맵으로부터 코드정보를 추출하는 제2 네트워크(M2)를 포함할 수 있으며, 일 예로 제2 네트워크(M2)는 플래튼 레이어(flattened layer), FC 레이어(Fully-Connected layer), 활성함수, 및 소프트맥스 함수가 순차로 연결되어 구성될 수 있다.In addition, the machine learning model (M) may include a second network (M2) for extracting code information from a plurality of feature maps, for example, the second network (M2) is a flattened layer (flattened layer), FC layer (Fully-Connected layer), an activation function, and a softmax function may be sequentially connected.
다른 예로, 머신러닝 모델(M)은 문자코드를 포함하는 코드이미지와, 각 코드이미지에 라벨링된 코드정보로 구성된 학습 데이터로 학습된 모델일 수 있다. 도 7(b)에 도시된 바와 같이, 일 예로 학습 데이터는 4자리 숫자로 구성된 문자코드를 포함하는 코드 이미지(X)와, 해당 코드이미지에 라벨링된 코드정보(Y)로 구성될 수 있다. 그러므로, 학습된 코드정보 인식부(1420)는 코드이미지의 입력으로, 문자라벨과 해당 문자라벨의 갯수를 출력할 수 있다. As another example, the machine learning model M may be a model learned with training data composed of code images including character codes and code information labeled on each code image. As shown in FIG. 7 (b), for example, the learning data may include a code image (X) including a character code consisting of 4 digits and code information (Y) labeled on the code image. Therefore, the learned code
나아가, 코드이미지에서 코드정보를 인식하는 과정(S120)은, 코드이미지에서 개별 문자들이 뭉쳐진 문자코드의 문자영역을 추출하는 과정(S121)과, 문자영역에서 코드정보 인식부(1420)를 이용해 문자코드의 코드정보를 획득하는 과정(S122)를 포함할 수 있다. 즉, 코드 인식장치(1000)는 코드이미지로부터 코드정보를 바로 추출하는 것이 아니라, 코드이미지에서 문자영역을 먼저 추출하여 문자영역이 아닌 코드이미지의 배경 부분을 제외시키고, 추출된 문자영역의 이미지에서 문자코드의 코드정보를 추출함으로써, 코드 인식 속도를 개선할 수 있다.Furthermore, the process of recognizing code information in a code image (S120) includes the process of extracting a character area of a character code in which individual characters are aggregated in a code image (S121), and character using the code
문자코드의 문자영역이란 코드이미지 내에서 규격화된 길이와 형식을 가지는 문자코드를 포함하는 부분으로, 도 7(a)의 자동차 번호판을 예를 들면, 번호판의 문자영역은 자동차 번호형식인 '2SN 4414'를 포함하는 최소영역을 의미할 수 있다. The character area of a character code is a part containing a character code having a standardized length and format within a code image. For example, in the license plate of FIG. 7(a), the character area of the license plate is '
S130 과정에서, 코드 인식장치(1000)는 코드이미지에서 코드영역을 탐지할 수 있다.In step S130, the
도 5를 참조하면, 코드 인식장치(1000)는 코드영역 탐지부(1430)에 의해 코드이미지로부터 어텐션되는 코드영역을 탐지할 수 있다. Referring to FIG. 5 , the
코드영역 탐지부(1430)는 코드이미지에서 추출한 코드정보에 기초하여 코드이미지 상에서 어텐션되는 코드영역을 탐지할 수 있다. 코드영역은 코드이미지에서 문자코드의 각 문자가 위치할 것으로 예측되는 위치를 의미한다. 다시 말하면, 코드영역은 코드정보의 문자라벨에 대응하는 각 문자를 인식하기 위해 코드영역 탐지부(1430)가 코드이미지 내에서 집중(attention)해서 본 영역을 의미한다.The code
도 6을 참조하면, 코드영역 탐지부(1430)는 코드이미지에서 추출한 코드정보에 기초하여 코드이미지에서 코드영역을 출력하는 머신러닝 모델(M)에 포함될 수 있다.Referring to FIG. 6 , the code
머신러닝 모델(M)은 뉴럴 네트워크로 구성될 수 있으며, 문자라벨을 출력하는 뉴럴 네트워크의 출력층으로부터 입력층까지 순서대로 뉴럴 네트워크의 변수들을 계산하고 저장하는 백워드 전파(backward propagation)를 통해 코드영역을 탐지할 수 있다.The machine learning model (M) may be composed of a neural network, and the code domain through backward propagation that calculates and stores variables of the neural network in order from the output layer of the neural network outputting character labels to the input layer. can detect
상세히는, 머신러닝 모델(M)은 복수의 특징 맵들에 입력층이 연결된 제3 네트워크(M3)을 포함할 수 있으며, 제3 네트워크(M3)는 제3 네트워크(M3)의 출력층에서 문자라벨의 각 개별문자를 출력하도록, 제3 네트워크(M3)의 출력층으로부터 제3 네트워크(M3)의 입력층까지 제3 네트워크(M3)의 변수들을 계산하고 저장하는 백워드 전파로 학습된다. In detail, the machine learning model (M) may include a third network (M3) in which an input layer is connected to a plurality of feature maps, and the third network (M3) is a character label in an output layer of the third network (M3). To output each individual character, it is learned by backward propagation that calculates and stores the variables of the third network M3 from the output layer of the third network M3 to the input layer of the third network M3.
머신러닝 모델(M)은 각 개별 문자 별로 복수의 특징 맵 각각에 대한 가중치 값들을 추출할 수 있으며, 복수의 특징 맵과 대응된 가중치 값의 조합으로 각 개별 문자의 어텐션 맵을 추출할 수 있다.The machine learning model M may extract weight values for each of a plurality of feature maps for each individual character, and extract an attention map of each individual character by combining a plurality of feature maps and corresponding weight values.
복수의 특징 맵과 대응된 가중치 값의 조합으로 각 개별 문자의 어텐션 맵을 추출하는 일 예로는, 복수의 특징 맵 중 하나의 특징 맵의 평균 값과 대응하는 가중치 값을 곱하여 특징 맵의 가중치 적용 값을 구하고, 모든 특징 맵에 대한 가중치 적용 값을 합하여 각 개별 문자의 어텐션 맵을 구할 수 있다. 다만, 이는 각 개별 문자의 어텐션 맵을 구하는 하나의 예일 뿐 본 발명이 이에 한정될 것은 아니다.As an example of extracting the attention map of each individual character by combining a plurality of feature maps and corresponding weight values, the average value of one feature map among the plurality of feature maps is multiplied by the corresponding weight value to apply the weight value of the feature map. , and the attention map of each individual character can be obtained by summing the weighted values for all feature maps. However, this is only one example of obtaining the attention map of each individual character, and the present invention is not limited thereto.
앞선 설명에서, 제2 네트워크(M2)와 제3 네크워크(M3)를 분리하여 개별 네트워크로 구성하였지만, 이에 한정할 것은 아니며, 제2 네크워크(M2)와 제3 네트워크(M3)를 하나의 통합 네트워크로 구성할 수 있다. 이 경우 통합 네트워크는 코드정보를 출력할 수 있으며, 출력된 코드 정보를 이용하여 통합 네트워크의 변수들을 계산하여 복수의 특징 맵에 대응하는 가중치 값이 추출될 수 있다.In the above description, the second network M2 and the third network M3 are separated and configured as individual networks, but the present invention is not limited thereto, and the second network M2 and the third network M3 are integrated into one integrated network. can be configured with In this case, the integrated network may output code information, and weight values corresponding to a plurality of feature maps may be extracted by calculating variables of the integrated network using the output code information.
한편, 각 개별 문자의 어텐션 맵은 코드이미지의 가로 및 세로에 해당하는 위치 별로 수치화된 값을 포함하며, 가로 및 세로에서 피크 값의 위치를 통해 각 개별 문자의 코드 영역을 탐지할 수 있다. 각 개별 문자의 어텐션 맵을 시각화하면 코드이미지 상에 밝은 영역이 보이는데, 이 영역이 각 개별 문자의 코드 영역이다(도 6 참조). Meanwhile, the attention map of each individual character includes digitized values for each horizontal and vertical position of the code image, and the code region of each individual character can be detected through the position of the peak value in the horizontal and vertical directions. Visualizing the attention map of each individual character shows a bright area on the code image, which is the code area of each individual character (see FIG. 6).
도 6의 경우 각 개별 문자 D, E, 0, 8의 어텐션 맵을 각각 이미지로 시각화한 예를 보여주며, 각 이미지의 좌측하단을 기준으로 가로 및 세로의 피크 값을 문자 D는 (0.10, 0.59) 지점에서 가지며, 문자 E는 (0.35, 0.50) 지점에서 가지며, 문자 0은 (0.52, 0.52) 지점 및 (0.77, 049) 지점에서 가지며, 문자 8은 (0.87, 0.50) 지점에서 가지는 것으로 보여준다. 즉, 도 6의 코드이미지에서 문자 D, 문자 E 및 문자 8은 각각 1개의 코드영역을 가지고, 문자 0는 2개의 코드영역을 가진다.6 shows an example in which the attention maps of individual letters D, E, 0, and 8 are visualized as images, respectively, and the horizontal and vertical peak values based on the lower left of each image are ) at point (0.35, 0.50),
앞서 설명한 바와 같이, 코드영역 탐지부(1430)는 인식된 문자라벨 및 추출된 특징 맵(feature map)에 기초하여 문자코드의 각 개별 문자에 대한 코드영역(혹은 문자라벨에 대응하는 각 문자에 대한 코드영역)을 탐지할 수 있다. As described above, the code
일 예로, 코드영역 탐지부(1430)는 문자라벨의 종류가 숫자인 경우 해당 문자라벨이 가질 수 있는 모든 경우의 각 문자(예로, 0부터 9까지)를 순차적으로 각각 이용하여 각 문자에 대한 코드 영역을 탐지할 수 있다. 다른 예로, 코드영역 탐지부(1430)는 문자라벨로 인식된 문자들만을 이용하여 순차적으로 각 문자를 이용하여 각 문자에 대한 코드 영역을 탐지할 수 있다. For example, when the type of character label is a number, the code
S140 과정에서, 코드 인식장치(1000)는 코드위치를 지정할 수 있다.In step S140, the
도 5를 참조하면, 코드 인식장치(1000)는 코드위치 지정부(1440)에 의해 탐지된 코드영역에 기초하여 코드이미지 속 문자코드를 구성하는 각 개별 문자의 위치를 지정해 줄 수 있다. Referring to FIG. 5 , the
코드위치 지정부(1440)는 각 문자의 코드영역을 이용하여 코드영역의 중심 위치를 획득하고, 해당 중심 위치에 각 문자의 코드영역에 대응하는 각 문자를 지정할 수 있다. The code
코드위치 지정부(1440)는 각 문자의 코드영역에서 밝은 영역의 갯수를 카운트할 수 있다. 예를 들어, 코드위치 지정부(1440)는 코드이미지 상에서 어텐션 맵의 가로 및 세로의 수치값이 미리 설정된 가로 및 세로 임계 값 이상을 가지는 영역을 코드영역으로 정의할 수 있으며, 코드영역의 갯수를 카운트할 수 있다.The code
코드위치 지정부(1440)는 문자라벨의 갯수가 복수인 경우 해당 문자라벨에 대응하는 문자를 복수개로 카운트된 해당 문자의 코드영역에 지정할 수 있다. When the number of character labels is plural, the code
또한, 코드위치 지정부(1440)는 각 문자의 코드영역을 하나의 코드이미지 상에 표현할 수 있으며, 각 문자의 코드영역에 대응하는 위치에 문자라벨에 대응하는 각 문자를 지정할 수 있다(도 5 참조). In addition, the code
S150 과정에서, 코드 인식장치(1000)는 문자코드를 출력할 수 있다. In step S150, the
코드 인식장치(1000)는 코드이미지 상에서 모든 문자들의 위치를 모두 지정한 후에 문자코드를 출력할 수 있다. 코드 인식장치(1000)는 출력부(1200)를 통해서 문자코드를 출력할 수 있으며, 통신부(1300)를 통해 다른 장치(예로, 클라이언트 PC)의 출력부(모니터)를 통해 문자코드를 출력하게 할 수 있다. The
도 8을 참조하면, 본 발명의 코드 인식장치(1000)는 열악한 화질의 코드이미지라도 정확하게 문자코드를 인식하는 결과를 제공할 수 있다. GT는 열악한 화질로 코드가 거의 보이지 않는 이미지 속 실제 문자코드 값이며, predicted는 코드 인식장치(1000)를 통해 예측(인식, 추출)된 문자코드의 값이며, 양자가 정확히 일치하는 것을 볼 수 있다.Referring to FIG. 8 , the
도 9는 본 발명의 실시예에 따른 코드 인식장치를 활용한 차량번호의 추출시스템의 개념도를 도시한 것이다. 도 10은 본 발명의 실시예에 따른 코드 인식장치를 활용한 차량번호의 추출시스템의 제어방법의 흐름도이다.9 is a conceptual diagram of a vehicle number extraction system using a code recognition device according to an embodiment of the present invention. 10 is a flowchart of a control method of a vehicle number extraction system using a code recognition device according to an embodiment of the present invention.
본 발명의 실시예에 따른 코드이미지의 인식장치를 활용한 차량번호의 추출시스템은 별도의 차량번호 인식 전용 카메라를 추가 설치하지 않더라도, 방범 혹은 과속 방지용 등 다양한 용도를 위해 기존에 설치된 CCTV 영상을 분석하여 차량번호를 추출할 수 있는 시스템을 제공할 수 있다.The vehicle number extraction system using the code image recognition device according to an embodiment of the present invention analyzes existing CCTV images for various purposes such as crime prevention or speed prevention, even if a separate vehicle number recognition dedicated camera is not additionally installed Thus, it is possible to provide a system capable of extracting a license plate number.
도 9를 참조하면, 본 발명의 실시예에 따른 코드이미지의 인식장치를 활용한 차량번호의 추출시스템은, 코드 인식장치(1000), 클라이언트 PC(2000), 영상 관리 시스템(3000)(VMS), 체납/수배 관리 서버(4000)를 포함할 수 있다. Referring to FIG. 9, the vehicle number extraction system using the code image recognition device according to an embodiment of the present invention includes a
클라이언트 PC(2000)는 코드 인식장치(1000)에 연결되어 발견된 문제 차량의 정보를 출력부(모니터)의 화면을 통해 사용자에게 제공할 수 있다. 영상 관리 시스템(3000)(VMS, Video Management System)은 도로 혹은 도시 시설에 기존에 설치된 CCTV(3100)에서 촬영된 영상을 네트워크를 통해 수신받아 저장하고 있는 서버이다. 체납/수배 관리 서버(4000)는 세금 등이 미납된 차량의 차량번호 혹은, 범죄 등에 연루된 문제 차량의 차량번호를 저장 및 관리하는 서버이다. The
코드 인식장치(1000)는 열악한 이미지 차량번호 인지(Poor Image License Plate Recognition, 이하 PILR라 함) 시스템을 포함하는 서버일 수 있다. 코드 인식장치(1000)는 상술한 도 4의 본 발명의 실시예에 따른 코드의 인식방법을 수행하는 장치일 수 있다.The
코드 인식장치(1000)는 CCTV 영상을 영상 관리 시스템(3000)으로부터 수신하고, CCTV 영상에서 프레임 단위의 코드이미지를 획득하고, 코드이미지에서 코드정보를 인식하고, 코드이미지에서 코드영역을 탐지하고, 코드정보 및 코드영역을 이용하여 코드위치를 지정하며, 코드위치에 기초하여 전체 문자코드를 출력하며, 체납/수배 관리 서버(4000)로부터 체납 혹은 수배된 문제차량의 차량번호 정보를 수신하고, 코드이미지에서 출력된 문자코드와 차량번호를 비교하여 매칭되는 차량번호를 발견할 경우 클라이언트 PC(2000)에게 문제차량의 발견사실의 알림을 제공할 수 있다. The
도 10을 참조하면, 본 발명의 실시예에 따른 코드 인식장치를 활용한 차량번호의 추출시스템의 제어방법은, CCTV 영상을 획득하는 과정(S200), 코드이미지를 획득하는 과정(S210), 코드이미지에서 코드정보를 인식하는 과정(S220), 코드이미지에서 코드영역을 탐지하는 과정(S230), 코드위치를 지정하는 과정(S240), 문자코드를 출력하는 과정(S250), 문제의 차량번호를 획득하는 과정(S260), 문제차량에 대한 알림을 제공하는 과정(S270)을 포함할 수 있다.Referring to FIG. 10, the control method of the vehicle number extraction system using the code recognition device according to an embodiment of the present invention includes a process of acquiring a CCTV image (S200), a process of acquiring a code image (S210), and a code The process of recognizing code information in an image (S220), the process of detecting a code area in a code image (S230), the process of designating a code location (S240), the process of outputting a character code (S250), the vehicle number in question It may include a process of acquiring (S260) and a process of providing a notification about the problem vehicle (S270).
상술한 바와 같이, 본 발명의 실시예에 따른 코드 인식장치(1000)는 메모리(1100), 출력부(1200), 통신부(1300), 제어부(1400) 중 적어도 하나를 포함하며, S200 과정 내지 S270 과정은 제어부(1400)에 의해 수행되거나 메모리(1100)에 저장된 소스 코드 혹은 소프트웨어 일 수 있다. As described above, the
S200 과정에서, 코드 인식장치(1000)는 VMS(3000)로부터 CCTV(3100)에서 촬영한 CCTV 영상 및 CCTV 영상을 촬영한 CCTV 식별 정보를 획득받을 수 있다. CCTV 영상은 일반 카메라로 촬영된 저화질 영상일 수 있다.In step S200, the
S210 과정에서, 코드 인식장치(1000)는 CCTV 영상을 프레임 단위로 구분하고, 프레임 단위의 컬러 이미지를 흑백의 이진화 과정을 커쳐서 코드이미지를 획득할 수 있다. 혹은, 코드 인식장치(1000)는 VMS에서 처리되어 흑백으로 이진화 된 코드이미지를 획득할 수 있다.In step S210, the
S220 내지 S250 과정에서, 코드 인식장치(1000)는 도 4의 S120 내지 S150 과정을 동일하게 수행할 수 있으며, 중복되는 설명은 생략한다. In steps S220 to S250, the
S260 과정에서, 코드 인식장치(1000)는 체납/수배 관리 서버(4000)로부터 문제차량에 대한 차량번호를 수신하여 저장할 수 있다. 혹은, 코드 인식장치(1000)는 S250 과정에서 출력한 문자코드가 차량번호인 경우 체납/수배 관리 서버(4000)에게 출력한 차량번호를 송신하여 차량번호인지 여부에 대한 정보를 요청하고, 체납/수배 관리 서버(4000)로부터 송신한 차량번호가 문제차량의 차량번호인지 여부에 대한 정보를 수신할 수 있다.In step S260, the
S270 과정에서, 코드 인식장치(1000)는 S250 과정에서 출력한 문자코드가 차량번호인 경우 실시간으로 체납/수배 관리 서버(4000)에서 수신한 차량번호와 대비하여 동일한 번호를 발견할 경우 클라이언트 PC(2000)에게 문제차량 및 차량번호의 발견사실과 문제차량을 촬영한 CCTV 식별 정보에 대한 알림을 제공할 수 있다. In step S270, the
본 발명은 도면에 도시된 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.Although the present invention has been described with reference to the embodiments shown in the drawings, this is only exemplary, and those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom. Therefore, the true technical protection scope of the present invention should be determined by the technical spirit of the attached claims.
1000 : 코드 인식장치
1100 : 메모리
1200 : 출력부
1300 : 통신부
1400 : 제어부1000: code recognition device
1100: memory
1200: output unit
1300: Ministry of Communication
1400: control unit
Claims (1)
문자코드를 포함하는 코드이미지를 획득하는 과정;
머신러닝 모델을 이용하여 상기 코드이미지에 대한 특징 맵들을 추출하고, 상기 특징 맵들로부터 상기 복수의 문자라벨 및 문자라벨의 갯수를 추출하는 과정;
상기 머신러닝 모델로부터 상기 특징 맵들에 대응하는 가중치 값들을 획득하고, 상기 특징 맵들과 상기 특징 맵들에 대응하는 상기 가중치 값들의 조합으로 상기 코드이미지에서 어텐션되는 상기 복수의 문자라벨에 대응한 각 문자의 코드영역을 탐지하는 과정;
상기 각 문자의 코드영역, 상기 복수의 문자라벨 및 문자라벨의 갯수를 이용하여 상기 문자코드에서 상기 각 문자의 위치를 지정하는 과정; 및
상기 코드이미지에 포함된 상기 문자코드를 출력하는 과정을 포함하는, 문자코드 인식 방법.
In the character code recognition method, which is performed by a control unit included in a code recognition device,
obtaining a code image including a character code;
extracting feature maps of the code image using a machine learning model, and extracting the plurality of text labels and the number of text labels from the feature maps;
Weight values corresponding to the feature maps are obtained from the machine learning model, and a combination of the feature maps and the weight values corresponding to the feature maps is used to determine the value of each character corresponding to the plurality of character labels of attention in the code image. Process of detecting code area;
designating a position of each character in the character code using the code area of each character, the plurality of character labels, and the number of character labels; and
Character code recognition method comprising the step of outputting the character code included in the code image.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220035836A KR20230099590A (en) | 2021-12-27 | 2022-03-23 | Code recognition device, and character code recognition method using the same |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210188828A KR102379575B1 (en) | 2021-12-27 | 2021-12-27 | Code recognition device, code recognition method, and vehicle number extraction system using the same |
KR1020220035836A KR20230099590A (en) | 2021-12-27 | 2022-03-23 | Code recognition device, and character code recognition method using the same |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210188828A Division KR102379575B1 (en) | 2021-12-27 | 2021-12-27 | Code recognition device, code recognition method, and vehicle number extraction system using the same |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230099590A true KR20230099590A (en) | 2023-07-04 |
Family
ID=80996306
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210188828A KR102379575B1 (en) | 2021-12-27 | 2021-12-27 | Code recognition device, code recognition method, and vehicle number extraction system using the same |
KR1020220035836A KR20230099590A (en) | 2021-12-27 | 2022-03-23 | Code recognition device, and character code recognition method using the same |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210188828A KR102379575B1 (en) | 2021-12-27 | 2021-12-27 | Code recognition device, code recognition method, and vehicle number extraction system using the same |
Country Status (1)
Country | Link |
---|---|
KR (2) | KR102379575B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116662206B (en) * | 2023-07-24 | 2024-02-13 | 泰山学院 | Computer software online real-time visual debugging method and device |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102179552B1 (en) | 2019-05-15 | 2020-11-17 | 주식회사 한컴위드 | Apparatus and method for collecting evidence based on ocr |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101971878B1 (en) * | 2018-11-28 | 2019-04-26 | 극동대학교 산학협력단 | Video surveillance system and method using deep-learning based car number recognition technology in multi-lane environment |
KR102331453B1 (en) * | 2020-02-26 | 2021-11-25 | 금오공과대학교 산학협력단 | System for vehicle number plate recognition using neural network and its method |
KR20210145447A (en) * | 2020-05-25 | 2021-12-02 | 주식회사 다온앤 | Vehicle Identification System and Method of Processing the same |
KR102194890B1 (en) * | 2020-06-29 | 2020-12-24 | 이홍기 | Unmanned enforcement and road crime prevention method and system applied with vehicle license plate recognition technology using neural network |
-
2021
- 2021-12-27 KR KR1020210188828A patent/KR102379575B1/en active IP Right Grant
-
2022
- 2022-03-23 KR KR1020220035836A patent/KR20230099590A/en unknown
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102179552B1 (en) | 2019-05-15 | 2020-11-17 | 주식회사 한컴위드 | Apparatus and method for collecting evidence based on ocr |
Also Published As
Publication number | Publication date |
---|---|
KR102379575B1 (en) | 2022-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8867828B2 (en) | Text region detection system and method | |
TWI497422B (en) | A system and method for recognizing license plate image | |
TWI431559B (en) | A vehicle registration-plate detecting method and system thereof | |
KR101179497B1 (en) | Apparatus and method for detecting face image | |
US9171224B2 (en) | Method of improving contrast for text extraction and recognition applications | |
US9251430B2 (en) | Apparatus, method, and program for character recognition using minimum intensity curve of image data | |
KR102383377B1 (en) | Electronic device for recognizing license plate | |
CN111325769A (en) | Target object detection method and device | |
CN110598566A (en) | Image processing method, device, terminal and computer readable storage medium | |
CN114387591A (en) | License plate recognition method, system, equipment and storage medium | |
US8442348B2 (en) | Image noise reduction for digital images using Gaussian blurring | |
KR102379575B1 (en) | Code recognition device, code recognition method, and vehicle number extraction system using the same | |
US8300927B2 (en) | Mouth removal method for red-eye detection and correction | |
He et al. | Segmentation of characters on car license plates | |
CN110765940B (en) | Target object statistical method and device | |
Ciuntu et al. | Real-time traffic sign detection and classification using machine learning and optical character recognition | |
Kodwani et al. | Automatic license plate recognition in real time videos using visual surveillance techniques | |
JP6377214B2 (en) | Text detection method and apparatus | |
CN111402185A (en) | Image detection method and device | |
CN115953744A (en) | Vehicle identification tracking method based on deep learning | |
Satish et al. | Edge assisted fast binarization scheme for improved vehicle license plate recognition | |
KR20210079180A (en) | Method and apparatus for recognizinf vehicle license plate | |
KR20190143525A (en) | A Method of Detecting Character Data through a Adaboost Learning Method | |
US11615634B2 (en) | Character recognition of license plate under complex background | |
KR102595910B1 (en) | Vehicle number automatic recognition system and method therefor |