KR102122865B1 - Led detection method and apparatus for separating overlapping leds - Google Patents
Led detection method and apparatus for separating overlapping leds Download PDFInfo
- Publication number
- KR102122865B1 KR102122865B1 KR1020190125602A KR20190125602A KR102122865B1 KR 102122865 B1 KR102122865 B1 KR 102122865B1 KR 1020190125602 A KR1020190125602 A KR 1020190125602A KR 20190125602 A KR20190125602 A KR 20190125602A KR 102122865 B1 KR102122865 B1 KR 102122865B1
- Authority
- KR
- South Korea
- Prior art keywords
- led
- leds
- frame
- points
- center point
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B10/00—Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
- H04B10/50—Transmitters
- H04B10/501—Structural aspects
- H04B10/502—LED transmitters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B10/00—Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
- H04B10/07—Arrangements for monitoring or testing transmission systems; Arrangements for fault measurement of transmission systems
- H04B10/075—Arrangements for monitoring or testing transmission systems; Arrangements for fault measurement of transmission systems using an in-service signal
- H04B10/079—Arrangements for monitoring or testing transmission systems; Arrangements for fault measurement of transmission systems using an in-service signal using measurements of the data signal
- H04B10/0795—Performance monitoring; Measurement of transmission parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B10/00—Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
- H04B10/11—Arrangements specific to free-space transmission, i.e. transmission through air or vacuum
- H04B10/114—Indoor or close-range type systems
- H04B10/116—Visible light communication
Landscapes
- Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Image Analysis (AREA)
Abstract
Description
아래 실시예들은 겹쳐진 LED들을 분리하기 위한 LED 검출 방법 및 장치에 관한 것이다.The embodiments below relate to an LED detection method and apparatus for separating overlapping LEDs.
차량 가시광 통신 시스템에서, 가시광 신호는 수신기로서의 고속 카메라에 의해 포착되는, 송신기로서의 LED를 통해 나타나는 일련의 영상 프레임으로부터 얻어진다. 그러나, 캡처된 영상에서 복수의 LED들이 겹치는 경우 높은 데이터 손실 및 비트 오류율과 같은 데이터 전송과 관련된 심각한 문제가 발생할 수 있다. 이러한 데이터 전송과 관련된 문제를 해결하기 위해서는 겹쳐진 복수의 LED들을 인식하고, 이들을 서로 구분하는 것이 필요한다. 가시광 무선통신을 이용한 차량 간의 통신과 관련된 선행기술로는 한국공개특허 제10-2012-0067812호가 있다.In a vehicle visible light communication system, a visible light signal is obtained from a series of image frames that appear through LEDs as transmitters, which are captured by a high-speed camera as a receiver. However, when a plurality of LEDs overlap in the captured image, serious problems related to data transmission such as high data loss and bit error rate may occur. In order to solve the problem related to data transmission, it is necessary to recognize a plurality of overlapping LEDs and to distinguish them from each other. Prior art related to communication between vehicles using visible light wireless communication is Korean Patent Publication No. 10-2012-0067812.
일 실시예에 따르면, LED 검출 방법은 각각 복수의 LED들을 포함하는 복수의 프레임들의 입력 영상을 획득하는 단계; 상기 복수의 프레임들 중 상기 복수의 LED들이 서로 분리되어 표현된 제1 프레임에서 상기 복수의 LED들의 각 LED에 관한 제1 중심점 및 제1 경계점들을 검출하는 단계; 상기 제1 중심점 및 상기 제1 경계점들에 기초하여 상기 제1 프레임의 상기 각 LED에 관한 참조 테이블을 생성하는 단계; 상기 복수의 프레임들 중 상기 복수의 LED들이 서로 겹쳐서 표현된 제2 프레임에서 상기 복수의 LED들에 관한 임시 경계점들을 검출하는 단계; 상기 참조 테이블 및 상기 임시 경계점들에 기초하여, 상기 제2 프레임의 상기 복수의 LED들의 각 LED에 관한 후보 중심점들을 결정하는 단계; 및 상기 후보 중심점들 중에 상기 제2 프레임의 상기 복수의 LED들의 각 LED의 제2 중심점을 선택하는 단계를 포함한다.According to an embodiment, the LED detection method includes obtaining input images of a plurality of frames each including a plurality of LEDs; Detecting a first center point and first boundary points of each LED of the plurality of LEDs in a first frame in which the plurality of LEDs are separated from each other and expressed in the first frame; Generating a reference table for each LED of the first frame based on the first center point and the first boundary points; Detecting temporary boundary points of the plurality of LEDs in a second frame in which the plurality of LEDs are superimposed on each other among the plurality of frames; Determining candidate center points for each LED of the plurality of LEDs in the second frame based on the reference table and the temporary boundary points; And selecting a second center point of each LED of the plurality of LEDs of the second frame from among the candidate center points.
상기 참조 테이블을 생성하는 단계는 상기 제1 경계점들의 각 제1 경계점에 관하여, 상기 각 제1 경계점의 기울기 방향, 상기 제1 중심점과 상기 각 제1 경계점 사이의 각 선분의 길이, 및 x축과 상기 각 선분 사이의 각도를 산출하여, 상기 제1 프레임의 상기 각 LED에 관한 참조 테이블을 생성하는 단계를 포함할 수 있다.The generating of the reference table includes, with respect to each first boundary point of the first boundary points, an inclination direction of each first boundary point, a length of each line segment between the first center point and each first boundary point, and an x-axis. And generating a reference table for each LED of the first frame by calculating an angle between each line segment.
상기 후보 중심점들을 결정하는 단계는 상기 참조 테이블로부터 상기 임시 경계점들의 각 임시 경계점의 기울기 방향에 대응하는 선분의 길이 및 각도를 추출하는 단계; 및 상기 각 임시 경계점, 상기 추출된 선분의 길이 및 상기 추출된 각도에 의해 특정되는 위치들에 대응하는 후보 중심점들을 결정하는 단계를 포함할 수 있다.The determining of the candidate center points may include extracting a length and an angle of a line segment corresponding to a gradient direction of each temporary boundary point of the temporary boundary points from the reference table; And determining candidate center points corresponding to positions specified by the temporary boundary point, the length of the extracted line segment, and the extracted angle.
상기 제2 프레임의 상기 각 LED의 상기 제2 중심점을 선택하는 단계는 상기 후보 중심점들 중 상기 제2 프레임의 이전 프레임에 나타난 각 LED의 중심점과 가장 가까운 것을 상기 제2 프레임의 상기 각 LED의 상기 제2 중심점으로 선택하는 단계를 포함할 수 있다.The step of selecting the second center point of each LED of the second frame is the closest to the center point of each LED shown in the previous frame of the second frame among the candidate center points. And selecting the second center point.
상기 참조 테이블은 상기 제1 프레임의 상기 각 LED의 형상에 관한 정보를 포함할 수 있다.The reference table may include information about the shape of each LED of the first frame.
상기 LED 검출 방법은 상기 참조 테이블 및 상기 제2 중심점에 기초하여 상기 제2 프레임의 상기 각 LED의 제2 경계점들을 결정하는 단계를 더 포함할 수 있다. 상기 제2 프레임의 서로 겹쳐서 표현된 상기 각 LED는 상기 결정된 상기 제2 프레임의 상기 각 LED의 상기 제2 경계점들을 통해 서로 구분될 수 있다.The LED detection method may further include determining second boundary points of each LED of the second frame based on the reference table and the second center point. The LEDs overlapped with each other of the second frame may be distinguished from each other through the second boundary points of the LEDs of the determined second frame.
다른 일 실시예에 따르면, LED 검출 방법은 각각 복수의 LED들을 포함하는 복수의 프레임들의 입력 영상을 획득하는 단계; 상기 복수의 프레임들 중 상기 복수의 LED들이 서로 분리되어 표현된 제1 프레임에서 상기 복수의 LED들의 각 LED에 관한 제1 중심점 및 제1 경계점들을 검출하는 단계; 상기 제1 경계점들의 각 제1 경계점에 관하여, 상기 각 제1 경계점의 기울기 방향, 상기 제1 중심점과 상기 각 제1 경계점 사이의 각 선분의 길이, 및 x축과 상기 각 선분 사이의 각도를 산출하여, 상기 제1 프레임의 상기 각 LED에 관한 참조 테이블을 생성하는 단계; 상기 복수의 프레임들 중 상기 복수의 LED들이 서로 겹쳐서 표현된 제2 프레임에서 상기 복수의 LED들에 관한 임시 경계점들을 검출하는 단계; 상기 참조 테이블로부터 상기 임시 경계점들의 각 임시 경계점의 기울기 방향에 대응하는 선분의 길이 및 각도를 추출하는 단계; 상기 각 임시 경계점, 상기 추출된 선분의 길이 및 상기 추출된 각도에 의해 특정되는 위치들에 대응하는 후보 중심점들을 결정하는 단계; 상기 후보 중심점들 중에 상기 제2 프레임의 상기 복수의 LED들의 각 LED의 제2 중심점을 선택하는 단계; 및 상기 참조 테이블 및 상기 제2 중심점에 기초하여 상기 제2 프레임의 상기 각 LED의 제2 경계점들을 결정하는 단계를 포함한다.According to another embodiment, the LED detection method includes obtaining an input image of a plurality of frames each including a plurality of LEDs; Detecting a first center point and first boundary points of each LED of the plurality of LEDs in a first frame in which the plurality of LEDs are separated from each other and expressed in the first frame; For each first boundary point of the first boundary points, an inclination direction of each first boundary point, a length of each line segment between the first center point and each of the first boundary points, and an angle between the x-axis and each line segment are calculated. By doing so, generating a reference table for each LED of the first frame; Detecting temporary boundary points of the plurality of LEDs in a second frame in which the plurality of LEDs are superimposed on each other among the plurality of frames; Extracting a length and an angle of a line segment corresponding to a gradient direction of each temporary boundary point of the temporary boundary points from the reference table; Determining candidate center points corresponding to positions specified by the temporary boundary point, the length of the extracted line segment, and the extracted angle; Selecting a second center point of each LED of the plurality of LEDs of the second frame among the candidate center points; And determining second boundary points of each LED of the second frame based on the reference table and the second center point.
일 실시예에 따르면, LED 검출 장치는 프로세서; 및 상기 프로세서에서 실행가능한 명령어들을 포함하는 메모리를 포함하고, 상기 명령어들이 상기 프로세서에서 실행되면, 상기 프로세서는 각각 복수의 LED들을 포함하는 복수의 프레임들의 입력 영상을 획득하고, 상기 복수의 프레임들 중 상기 복수의 LED들이 서로 분리되어 표현된 제1 프레임에서 상기 복수의 LED들의 각 LED에 관한 제1 중심점 및 제1 경계점들을 검출하고, 상기 제1 중심점 및 상기 제1 경계점들에 기초하여 상기 제1 프레임의 상기 각 LED에 관한 참조 테이블을 생성하고, 상기 복수의 프레임들 중 상기 복수의 LED들이 서로 겹쳐서 표현된 제2 프레임에서 상기 복수의 LED들에 관한 임시 경계점들을 검출하고, 상기 참조 테이블 및 상기 임시 경계점들에 기초하여, 상기 제2 프레임의 상기 복수의 LED들의 각 LED에 관한 후보 중심점들을 결정하고, 상기 후보 중심점들 중에 상기 제2 프레임의 상기 복수의 LED들의 각 LED의 제2 중심점을 선택한다.According to an embodiment, the LED detection device includes a processor; And a memory including instructions executable in the processor, and when the instructions are executed in the processor, the processor acquires an input image of a plurality of frames each including a plurality of LEDs, and among the plurality of frames. In the first frame in which the plurality of LEDs are separated from each other, a first center point and first boundary points of each LED of the plurality of LEDs are detected, and the first center point and the first boundary points are used to detect the first center point. Create a reference table for each LED of the frame, detect temporary boundary points for the plurality of LEDs in a second frame in which the plurality of LEDs are superimposed on each other among the plurality of frames, and refer to the reference table and the Based on temporary boundary points, candidate center points for each LED of the plurality of LEDs in the second frame are determined, and among the candidate center points, a second center point of each LED of the plurality of LEDs in the second frame is selected. do.
도 1은 일 실시예에 따른 각 프레임에 관한 LED 검출 과정을 나타낸 도면이다.
도 2는 일 실시예에 따른 참조 테이블을 나타낸 도면이다.
도 3은 일 실시예에 따른 참조 테이블에 저장되는 파라미터들을 나타낸 도면이다.
도 4는 일 실시예에 따른 후보 중심점에서 중심점을 선택하는 과정을 나타낸 도면이다.
도 5는 일 실시예에 따른 분리된 LED들을 나타낸 도면이다.
도 6은 일 실시예에 따른 LED 검출 방법을 나타낸 동작 흐름도이다.
도 7은 다른 실시예에 따른 LED 검출 방법을 나타낸 동작 흐름도이다.
도 8은 일 실시예에 따른 LED 검출 장치를 나타낸 블록도이다.1 is a view showing an LED detection process for each frame according to an embodiment.
2 is a diagram illustrating a reference table according to an embodiment.
3 is a diagram illustrating parameters stored in a reference table according to an embodiment.
4 is a diagram showing a process of selecting a center point from a candidate center point according to an embodiment.
5 is a view showing separated LEDs according to an embodiment.
6 is a flowchart illustrating an LED detection method according to an embodiment.
7 is an operation flowchart showing an LED detection method according to another embodiment.
8 is a block diagram showing an LED detection device according to an embodiment.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시예들은 다양한 형태로 실시될 수 있으며 본 명세서에 설명된 실시예들에 한정되지 않는다.Specific structural or functional descriptions of the embodiments according to the concept of the present invention disclosed in this specification are exemplified only for the purpose of illustrating the embodiments according to the concept of the present invention, and the embodiments according to the concept of the present invention These can be implemented in various forms and are not limited to the embodiments described herein.
본 발명의 개념에 따른 실시예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시예들을 도면에 예시하고 본 명세서에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시예들을 특정한 개시형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 변경, 균등물, 또는 대체물을 포함한다.Embodiments according to the concept of the present invention can be applied to various changes and have various forms, so the embodiments will be illustrated in the drawings and described in detail herein. However, this is not intended to limit the embodiments according to the concept of the present invention to specific disclosure forms, and includes modifications, 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 components, but the components should not be limited by the terms. The above terms are only for the purpose of distinguishing one component from other components, for example, without departing from the scope of rights according to the concept of the present invention, the first component may be referred to as the second component, Similarly, the second component may also be referred to as the first component.
어떤 구성요소가 다른 구성요소에 “연결되어” 있다거나 “접속되어” 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 “직접 연결되어” 있다거나 “직접 접속되어” 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 표현들, 예를 들어 “~사이에”와 “바로~사이에” 또는 “~에 직접 이웃하는” 등도 마찬가지로 해석되어야 한다.When an element is said to be "connected" or "connected" to another component, it is understood that other components may be directly connected to or connected to the other component, but other components may exist in the middle. It should be. On the other hand, when a component is said to be “directly connected” or “directly connected” to another component, it should be understood that no other component exists in the middle. Expressions that describe the relationship between the components, for example, “between” and “immediately between” or “directly adjacent to” should also be interpreted.
본 명세서에서 사용한 용어는 단지 특정한 실시예들을 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, “포함하다” 또는 “가지다” 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is only used to describe specific embodiments and is not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this specification, the terms “include” or “have” are intended to designate the presence of a feature, number, step, action, component, part, or combination thereof as described, one or more other features or numbers, It should be understood that the existence or addition possibilities of steps, actions, components, parts or combinations thereof are not excluded in advance.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by a person skilled in the art to which the present invention pertains. Terms such as those defined in a commonly used dictionary should be interpreted as having meanings consistent with meanings in the context of related technologies, and should not be interpreted as ideal or excessively formal meanings unless explicitly defined herein. Does not.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 특허출원의 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. However, the scope of the patent application is not limited or limited by these embodiments. The same reference numerals in each drawing denote the same members.
도 1은 일 실시예에 따른 각 프레임에 관한 LED 검출 과정을 나타낸 도면이다.1 is a view showing an LED detection process for each frame according to an embodiment.
도 1을 참조하면, 단계(101)에서 복수의 프레임들의 입력 영상이 획득된다. 예를 들어, 입력 영상은 연속된 일련의 n개의 프레임으로, 회색조 영상으로 변환된 것일 수 있다. 복수의 프레임들은 각각 복수의 LED들을 포함할 수 있다. 복수의 LED들은 서로 분리되어 표현되거나, 혹은 서로 겹쳐서 표현될 수 있다. 예를 들어, 제1 차량과 제2 차량 간의 거리가 가까워지는 상황에서, 서로 분리되어 표현되었던 입력 영상 내 제1 차량의 제1 LED와 제2 차량의 제2 LED는 점점 가까워질 수 있고, 특정 순간에 제1 LED와 제2 LED는 서로 겹쳐서 표현될 수 있다.Referring to FIG. 1, in
다음으로, 단계(102) 내지 단계(105)에서 제1 프레임에 관한 참조 테이블이 생성된다. 구체적으로, 단계(102)에서 제1 프레임이 획득된다. 제1 프레임은 서로 분리되어 표현된 복수의 LED들을 포함할 수 있다. 단계(103)에서 LED 에지 검출이 수행되고, 단계(104)에서 LED 윤곽 추출이 수행된다. 여기서, LED 에지 검출 및 LED 윤곽 추출에 알려진 다양한 기법이 적용될 수 있다. LED 윤곽 추출의 결과로 각 LED의 경계점들이 획득될 수 있다. 경계점은 각 LED의 에지에 위치하며, 영상 내 좌표 값으로 특정될 수 있다. 단계(105)에서 참조 테이블이 생성된다.Next, in
참조 테이블은 각 LED에 관해 생성될 수 있다. 예를 들어, 도 1의 LED들 중 좌측의 것은 제1 차량의 제1 LED로 지칭될 수 있고, 우측의 것은 제2 차량의 제2 LED로 지칭될 수 있다. 이 경우, 제1 LED에 관한 제1 참조 테이블 및 제2 LED에 관한 제2 참조 테이블이 생성될 수 있다. 이와 같이 제1 프레임에 관한 참조 테이블이 생성되면, 나머지 프레임들에서 해당 참조 테이블을 이용하여 각 LED가 추적될 수 있다.Reference tables can be created for each LED. For example, one of the LEDs of FIG. 1 may be referred to as the first LED of the first vehicle, and the one of the LEDs on the right may be referred to as the second LED of the second vehicle. In this case, a first reference table for the first LED and a second reference table for the second LED may be generated. When the reference table for the first frame is generated in this way, each LED may be tracked using the reference table in the remaining frames.
참조 테이블에 관해서는 도 2 및 도 3을 참조하여 더 상세히 설명한다.The reference table will be described in more detail with reference to FIGS. 2 and 3.
도 2는 일 실시예에 따른 참조 테이블을 나타낸 도면이고, 도 3은 일 실시예에 따른 참조 테이블에 저장되는 파라미터들을 나타낸 도면이다.2 is a diagram illustrating a reference table according to an embodiment, and FIG. 3 is a diagram illustrating parameters stored in a reference table according to an embodiment.
일반화된 허프 변환(generalized Hough transform)은 임의의 모양을 감지하는 기법이다. 일반화된 허프 변환에서 객체 경계에 있는 모든 점(경계점)의 기울기 방향(gradient direction)이 키 특징으로 사용된다. 이 때, 객체의 형상 정보를 저장하기 위해 참조 테이블이라고하는 템플릿 테이블이 작성된다.The generalized Hough transform is a technique for detecting an arbitrary shape. In the generalized Hough transform, the gradient direction of all points (boundary points) at the object boundary is used as a key feature. At this time, a template table called a reference table is created to store shape information of the object.
우선, 영상(예: 제1 프레임)에서 객체(예: 각 LED) 형상의 기준점 C(x_c, y_c)가 선택된다. 기준점은 객체 영역 내부의 점(예: 중심점)으로 선택될 수 있다. n_bp가 각 LED의 경계점 수를 나타낸다면, LED 중심 좌표는 아래 수학식 1을 통해 계산될 수 있다.First, a reference point C (x_c, y_c) of an object (eg, each LED) shape is selected from an image (eg, a first frame). The reference point may be selected as a point (eg, a center point) inside the object area. If n_bp represents the number of boundary points of each LED, the center coordinates of the LED may be calculated through
그런 다음, 경계점 세트가 P이고, 가 기울기 벡터라고 가정하면, P의 각 경계점 B(x_b, y_b)의 파라미터가 계산되어 참조 테이블의 각 행에 저장된다. 파라미터는 기울기 방향을 나타내는 Φ_b, 선분 BC의 길이를 나타내는 r_b, 선분 BC와 x축 사이의 각도를 나타내는 α_b를 포함할 수 있다. r_b는 방사상 거리(radial distance)라고도 하며, 아래 수학식 2에 따라 계산될 수 있다.Then, the set of boundary points is P, Assuming that is a gradient vector, parameters of each boundary point B(x_b, y_b) of P are calculated and stored in each row of the reference table. The parameter may include Φ_b indicating the tilt direction, r_b indicating the length of the line segment BC, and α_b indicating the angle between the line segment BC and the x-axis. r_b is also called a radial distance, and can be calculated according to
모든 경계점의 기울기 방향을 고려하면, 일부 경계점의 기울기 방향이 동일한 것을 알 수 있다. 참조 테이블에서, φ_j는 고유한 기울기 방향 값(j = 1, 2, ..., m)을 나타내고, m은 고유한 기울기 방향 값의 총 수를 나타낸다. 각각의 인덱스 φ_j는 다수의 경계점을 의미하는 다수의 튜플(tuple)(rb, αb)을 포함할 수 있다.When considering the inclination directions of all boundary points, it can be seen that the inclination directions of some boundary points are the same. In the reference table, φ_j denotes a unique tilt direction value (j = 1, 2, ..., m), and m denotes the total number of unique tilt direction values. Each index φ_j may include a number of tuples (rb, αb) that mean a number of boundary points.
참조 테이블이 구축되면, 참조 테이블은 영상으로부터 기준점(예: 중심점)을 찾아서 객체를 검출하는데 활용될 수 있다. 정확한 기준점을 찾기 위해 영상 크기와 동일한 크기의 2D 누산기 배열이 생성된다. 각 배열 요소는 처음에 0으로 설정된다. 영상의 각 경계점에 관해, 그 기울기 방향 Φ_b가 참조 테이블에서 검색된다. 검색 결과는 많은 튜플(r, α)을 포함할 수 있다. 각각의 튜플(r_b, α_b)에 관해, 가능한 기준점(xc, yc)이 아래 수학식 3에 기초하여 계산되고, 누산기 어레이 내 대응 요소의 값이 1만큼 증가된다.When a reference table is constructed, the reference table can be used to detect an object by finding a reference point (eg, a center point) from an image. To find the exact reference point, a 2D accumulator array of the same size as the image size is generated. Each array element is initially set to zero. For each boundary point of the image, the tilt direction Φ_b is searched in the reference table. The search results can include many tuples (r, α). For each tuple r_b, α_b, possible reference points xc, yc are calculated based on Equation 3 below, and the value of the corresponding element in the accumulator array is increased by one.
참조 테이블에서 검색하고 누산기 어레이의 값을 업데이트하는 과정은 투표 프로세스라고 지칭될 수 있다. 객체가 겹치지 않는 경우 누산기 어레이에서 가장 높은 투표 값을 가진 요소가 가능성이 가장 높은 객체의 기준점을 나타낼 수 있지만, 객체가 겹칠 경우 두 번째 또는 세 번째로 높은 투표 값을 가진 요소가 기준점에 해당할 수도 있다.The process of searching in the reference table and updating the value of the accumulator array may be referred to as a voting process. If the objects do not overlap, the element with the highest voting value in the accumulator array may represent the base point of the most likely object, but if the objects overlap, the element with the second or third highest voting value may be the base point. have.
다시 도 1을 참조하면, 단계(105) 이후에 제1 프레임 이후의 다음 프레임들이 계속하여 처리된다. 다시 말해, 제1 프레임에 관해 참조 테이블이 생성된 이후, 다음 프레임들에 관해 참조 테이블이 더 이상 생성되지 않으며, 참조 테이블을 이용하여 LED 정보가 업데이트된다. 이 때, 다음 프레임들에서 LED가 계속하여 서로 분리되어 표현되는지, 아니면 서로 겹쳐서 표현되는지에 따라 다음 프레임에 관한 처리가 달라진다.Referring back to FIG. 1, after
단계(106)에서 다음 프레임이 마지막 프레임인지 결정된다. 제1 프레임은 추적의 대상이 되는 LED들이 서로 분리되어 표현된 첫 번째 프레임을 의미하며, 상술된 것처럼 제1 프레임에 관해 참조 테이블이 생성될 수 있다. 마지막 프레임은 제1 프레임에서 검출된 LED들이 서로 겹쳐서 표현되는 첫 번째 프레임을 의미한다. 다시 말해, 마지막 프레임은 분리된 상태로 표현된 LED들이 서로 겹쳐서 표현되는 순간에 촬영된 것일 수 있다. 마지막 프레임은 제1 프레임과의 구분을 위해 제2 프레임으로 지칭될 수도 있다.In
다음 프레임이 마지막 프레임에 해당하지 않는다면 단계(107) 내지 단계(109)를 통해 LED 정보가 업데이트된다. 보다 구체적으로, 단계(107)에서 LED 에지 검출이 수행되고, 단계(108)에서 LED 윤곽 추출이 수행된다. 다음으로, 단계(109)에서 각 LED의 중심점이 업데이트될 수 있다. 예를 들어, 단계(108)에서 수행된 LED 윤곽 추출의 결과로 다음 프레임 내 각 LED의 경계점들이 획득될 수 있고, 경계점들 및 참조 테이블에 기초한 투표 프로세스가 수행될 수 있다. 투표 프로세스 결과 가장 많은 투표 수를 획득한 위치가 중심점으로 결정될 수 있다.If the next frame does not correspond to the last frame, the LED information is updated through
반면에, 현재 프레임이 마지막 프레임에 해당한다면, 단계(110)를 통해 LED 분리 동작이 수행된다. 상술된 것처럼, LED들이 겹치지 않는 경우 누산기 어레이에서 가장 높은 투표 값을 가진 요소가 중심점을 나타낼 수 있지만, LED들이 겹칠 경우 두 번째 또는 세 번째로 높은 투표 값을 가진 요소가 중심점에 해당할 수도 있다.On the other hand, if the current frame corresponds to the last frame, the LED separation operation is performed through
겹치는 객체 문제를 해결하는 일부 기존 기술은 주어진 객체 모양만 처리할 수 있다. 그러나, 겹치는 LED가 존재하는 경우 LED의 모양에 변형이 가해지므로, 이 상황에서 나타나는 최종적인 LED의 모양은 다양하다. 따라서, 실시예들에 따르면 임의의 객체 모양을 감지하는데 사용되는 기존의 일반화된 허프 변환 알고리즘의 기본 아이디어를 기반으로, 각 LED가 겹치는 LED 영역에서 분리될 수 있다.Some existing techniques for solving overlapping object problems can only handle the given object shape. However, when overlapping LEDs are present, deformation is applied to the shape of the LEDs, so the final shape of the LEDs in this situation is various. Accordingly, according to embodiments, each LED may be separated from overlapping LED regions based on the basic idea of the existing generalized Huff transform algorithm used to detect arbitrary object shapes.
겹치는 LED가 발생할 때, LED가 겹치는 시간 간격(time interval)은 매우 짧고, 그 시간 간격 동안 다른 차량의 LED가 카메라의 시야에 들어오거나 겹치는 LED에 대응하는 차량들이 시야 밖으로 나가지 않는다는 것이 가정된다. 또한, 마지막 프레임에서, 겹치는 LED로 인해 일부 LED의 추적에 실패할 경우, 추적에 실패한 이들 LED의 수는 첫 번째 프레임에서 추적된 LED의 수로부터 마지막 프레임에서 추적된 LED의 수를 빼서 계산될 수 있다. 예를 들어, 제1 프레임에서 인식된 LED가 2개이고, 마지막 프레임에서 인식된 LED가 1개인 경우, 추적에 실패한 LED의 수는 1개로 계산될 수 있다.When overlapping LEDs occur, it is assumed that the time intervals in which the LEDs overlap are very short, during which time the LEDs of other vehicles enter the field of view of the camera or vehicles corresponding to the overlapping LEDs do not go out of view. Also, in the last frame, if tracking of some LEDs fails due to overlapping LEDs, the number of these LEDs that failed to track can be calculated by subtracting the number of LEDs tracked in the last frame from the number of LEDs tracked in the first frame. have. For example, if there are two LEDs recognized in the first frame and one LED recognized in the last frame, the number of LEDs that fail to track may be counted as one.
다음 프레임부터 마지막 프레임까지, 참조 테이블은 첫 번째 프레임의 LED와 모양이 같은 객체를 매칭하는데 사용될 수 있다. 또한, 마지막 프레임에서 참조 테이블을 이용하여 겹치는 각 LED의 윤곽이 완전히 그려질 수 있고, 이를 통해 겹치는 LED는 분리될 수 있다.From the next frame to the last frame, the reference table can be used to match objects of the same shape as the LEDs of the first frame. In addition, the outline of each overlapping LED can be completely drawn using the reference table in the last frame, so that the overlapping LEDs can be separated.
겹치는 LED를 분리하는 프로세스는 아래 표에 나타나 있다.The process of isolating overlapping LEDs is shown in the table below.
상기 프로세스는 아래와 같이 설명될 수 있다.일련의 n개의 프레임들(f[1], f[2], ..., f[n]), 및 첫 번째 프레임에서 LED들의 위치(pos)가 입력으로 주어진다. 에지 검출 및 pos를 이용하여 첫 번째 프레임에서 LED 경계(LED_edges)가 검출된다. 윤곽 추출 및 LED_edges를 이용하여 첫 번째 프레임 내 모든 LED의 LED 윤곽(LED_contours)이 추출된다. LED_contours로부터 LED 중심(LED_centres)의 리스트가 계산되고, LED_contours 및 LED_contrs로부터 참조 테이블(R)의 리스트가 작성된다.The process can be described as follows: a series of n frames (f[1], f[2], ..., f[n]), and the position (pos) of the LEDs in the first frame is input Is given as LED edges (LED_edges) are detected in the first frame using edge detection and pos. LED contours (LED_contours) of all LEDs in the first frame are extracted using contour extraction and LED_edges. A list of LED centers (LED_centres) is calculated from LED_contours, and a list of reference tables R is created from LED_contours and LED_contrs.
다음으로, 각 프레임에 관해 LED 경계 검출, LED 윤곽 추출 및 LED 중심 업데이트를 포함한 3 가지 주요 단계가 순차적으로 실행된다. LED 중심을 프레임별로 업데이트하는데 참조 테이블의 리스트가 사용된다. 마지막으로, 겹쳐진 LED를 분리하기 위해 LED 경계가 그려진다. Next, for each frame, three main steps are executed sequentially, including LED boundary detection, LED contour extraction, and LED center update. A list of reference tables is used to update the center of the LED frame by frame. Finally, an LED border is drawn to separate the overlapping LEDs.
각 프레임에서 LED 중심을 업데이트하는 주요 프로세스는 아래 표에 설명되어 있다.The main process of updating the LED center in each frame is described in the table below.
참조 테이블(R)의 리스트, 현재 프레임(f), LED의 수(n_LED), 이전 프레임 내 LED 중심(centrs_prev)이 입력으로 주어진다. f의 에지 검출을 이용하여 에지(edges)가 계산된다. 이 단계에서 LED와 유사한 형상을 가질 수 있는 일부 노이즈가 제거될 수 있고, 출력은 이진 영상일 수 있다.다음으로, 윤곽 추출 및 edges를 이용하여 모든 윤곽(contours)이 추출된다. contours는 복수의 경계점들을 포함할 수 있다. 윤곽 추출을 통해 LED 중심 업데이트 단계가 준비된다. 이 단계에서, 영상 내 모든 경계점의 기울기 방향(grad_directs)이 계산될 수 있다. 여기서 등장하는 경계점은 중심점을 찾은 이후 새롭게 그려지는 윤곽 내 경계점들과 구분을 위해 임시 경계점으로 지칭될 수 있다. 영상 내 각 경계점에 관해, 각 LED의 참조 테이블은 대응 누산기 어레이(ar)로부터 가능한 LED 중심점(pc)에 투표하는데 사용될 수 있다.The list of the reference table R, the current frame f, the number of LEDs (n_LED), and the center of the LEDs in the previous frame (centrs_prev) are given as inputs. Edges are computed using edge detection of f. In this step, some noise, which may have a shape similar to that of the LED, may be removed, and the output may be a binary image. Next, all contours are extracted using contour extraction and edges. The contours can include multiple boundary points. The LED center update step is prepared through contour extraction. In this step, gradient directions (grad_directs) of all boundary points in the image may be calculated. The boundary point appearing here may be referred to as a temporary boundary point to distinguish it from boundary points in the newly drawn contour after finding the center point. For each boundary point in the image, the reference table of each LED can be used to vote for possible LED center points (pc) from the corresponding accumulator array (ar).
pc는 중심점의 후보군을 구성할 수 있고, 이들 중 이전 프레임에서 대응하는 LED의 중심에 가장 가까운 것이 각 LED의 현재 중심으로 결정될 수 있다. 예를 들어, 도 4에서 중심점(412)은 이전 프레임에서 제1 LED의 중심점에 해당하고, 중심점(422)은 이전 프레임에서 제2 LED의 중심점에 해당하고, 중심점들(411, 421)은 pc에 해당한다. 중심점들(411, 421)은 후보 중심점으로 지칭될 수도 있다.The pc may constitute a candidate group of center points, and among these, the one closest to the center of the corresponding LED in the previous frame may be determined as the current center of each LED. For example, in FIG. 4, the
이 때, 제1 LED의 중심점을 업데이트하는 경우, 후보 중심점들(411, 421) 중에 제1 LED의 이전 중심점에 해당하는 중심점(412)에 가까운 후보 중심점(411)이 제1 LED의 현재 중심점으로 선택될 수 있다. 또한, 제2 LED의 중심점을 업데이트하는 경우, 후보 중심점들(411, 421) 중에 제2 LED의 이전 중심점에 해당하는 중심점(422)에 가까운 후보 중심점(421)이 제2 LED의 현재 중심점으로 선택될 수 있다.At this time, when updating the center point of the first LED, the
현재 프레임에서 각 LED의 중심점(LED_centrs)이 결정되면, 각 LED에 대응하는 참조 테이블을 이용하여 LED 윤곽이 그려질 수 있다. 보다 구체적으로, 현재 프레임의 중심점 (x_c, y_c) 및 참조 테이블의 정보를 알고 있는 상황이므로, 수학식 3에서 각 경계점 (x_b, y_b)을 구할 수 있다. 도 5는 일 실시예에 따른 분리된 LED들을 나타낸 도면이다.When the center point (LED_centrs) of each LED is determined in the current frame, the LED outline may be drawn using a reference table corresponding to each LED. More specifically, since the center point (x_c, y_c) of the current frame and the information of the reference table are known, each boundary point (x_b, y_b) can be obtained from Equation (3). 5 is a view showing separated LEDs according to an embodiment.
도 6은 일 실시예에 따른 LED 검출 방법을 나타낸 동작 흐름도이다.6 is a flowchart illustrating an LED detection method according to an embodiment.
도 6을 참조하면, 단계(610)에서 LED 검출 장치는 각각 복수의 LED들을 포함하는 복수의 프레임들의 입력 영상을 획득한다.Referring to FIG. 6, in
단계(620)에서 LED 검출 장치는 복수의 LED들이 서로 분리되어 표현된 제1 프레임에서 복수의 LED들의 각 LED에 관한 제1 중심점 및 제1 경계점들을 검출한다. 예를 들어, 복수의 LED들이 제1 LED 및 제2 LED를 포함하는 경우, 제1 LED에 관한 제1 중심점 및 제1 경계점들이 검출되고, 제2 LED에 관한 제1 중심점 및 제1 경계점들이 검출될 수 있다.In
단계(630)에서 LED 검출 장치는 제1 중심점 및 제1 경계점들에 기초하여 제1 프레임의 각 LED에 관한 참조 테이블을 생성한다. 예를 들어, 제1 LED에 관한 제1 중심점 및 제1 경계점들에 기초하여 제1 LED에 관한 제1 참조 테이블이 생성되고, 제2 LED에 관한 제1 중심점 및 제1 경계점들에 기초하여 제2 LED에 관한 제2 참조 테이블이 생성될 수 있다. 참조 테이블은 제1 프레임의 각 LED의 형상에 관한 정보를 포함할 수 있다.In
보다 구체적으로, 제1 LED의 제1 경계점들의 각 제1 경계점에 관하여, 각 제1 경계점의 기울기 방향, 제1 LED의 제1 중심점과 각 제1 경계점 사이의 각 선분의 길이, 및 x축과 상기 각 선분 사이의 각도를 산출하여, 제1 프레임의 제1 LED에 관한 제1 참조 테이블이 생성되고, 제2 LED의 제1 경계점들의 각 제1 경계점에 관하여, 각 제1 경계점의 기울기 방향, 제2 LED의 제1 중심점과 각 제1 경계점 사이의 각 선분의 길이, 및 x축과 상기 각 선분 사이의 각도를 산출하여, 제1 프레임의 제2 LED에 관한 제2 참조 테이블이 생성될 수 있다.More specifically, with respect to each first boundary point of the first boundary points of the first LED, the inclination direction of each first boundary point, the length of each line segment between the first center point of the first LED and each first boundary point, and the x-axis By calculating the angle between each line segment, a first reference table for the first LED of the first frame is generated, and with respect to each first boundary point of the first boundary points of the second LED, the inclination direction of each first boundary point, A second reference table for the second LED of the first frame may be generated by calculating the length of each line segment between the first center point of the second LED and each first boundary point, and the angle between the x-axis and each of the line segments. have.
단계(640)에서 LED 검출 장치는 복수의 LED들이 서로 겹쳐서 표현된 제2 프레임에서 복수의 LED들에 관한 임시 경계점들을 검출한다. 임시 경계점들에 기초하여 각 LED의 제2 중심점이 결정되면, 결정된 각 LED의 제2 중심점에 기초하여 각 LED의 제2 경계점들이 결정될 수 있다.In
단계(650)에서 LED 검출 장치는 참조 테이블 및 임시 경계점들에 기초하여, 제2 프레임의 복수의 LED들의 각 LED에 관한 후보 중심점들을 결정한다. 예를 들어, LED 검출 장치는 참조 테이블로부터 임시 경계점들의 각 임시 경계점의 기울기 방향에 대응하는 선분의 길이 및 각도를 추출하고, 각 임시 경계점, 추출된 선분의 길이 및 추출된 각도에 의해 특정되는 위치들에 대응하는 후보 중심점들을 결정할 수 있다. 예를 들어, 제1 참조 테이블 및 임시 경계점들을 통해 적어도 하나의 후보 중심점이 결정될 수 있고, 제2 참조 테이블 및 임시 경계점들을 통해 다른 적어도 하나의 후보 중심점이 결정될 수 있다.In
단계(660)에서 LED 검출 장치는 후보 중심점들 중에 제2 프레임의 복수의 LED들의 각 LED의 제2 중심점을 선택한다. 예를 들어, LED 검출 장치는 후보 중심점들 중 제2 프레임의 이전 프레임에 나타난 각 LED의 중심점과 가장 가까운 것을 제2 프레임의 각 LED의 제2 중심점으로 선택할 수 있다. 일례로, LED 검출 장치는 후보 중심점들 중 이전 프레임에 나타난 제1 LED의 중심점과 가장 가까운 것을 제2 프레임의 제1 LED의 제2 중심점으로 선택할 수 있고, 후보 중심점들 중 이전 프레임에 나타난 제2 LED의 중심점과 가장 가까운 것을 제2 프레임의 제2 LED의 제2 중심점으로 선택할 수 있다.In
도 7은 다른 실시예에 따른 LED 검출 방법을 나타낸 동작 흐름도이다.7 is an operation flowchart showing an LED detection method according to another embodiment.
단계(710)에서 LED 검출 장치는 각각 복수의 LED들을 포함하는 복수의 프레임들의 입력 영상을 획득한다. 단계(720)에서 LED 검출 장치는 복수의 LED들이 서로 분리되어 표현된 제1 프레임에서 복수의 LED들의 각 LED에 관한 제1 중심점 및 제1 경계점들을 검출한다. 단계(730)에서 LED 검출 장치는 상기 제1 경계점들의 각 제1 경계점에 관하여, 각 제1 경계점의 기울기 방향, 제1 중심점과 각 제1 경계점 사이의 각 선분의 길이, 및 x축과 상기 각 선분 사이의 각도를 산출하여, 제1 프레임의 각 LED에 관한 참조 테이블을 생성한다.In
단계(740)에서 LED 검출 장치는 복수의 LED들이 서로 겹쳐서 표현된 제2 프레임에서 복수의 LED들에 관한 임시 경계점들을 검출한다. 단계(750)에서 LED 검출 장치는 참조 테이블로부터 임시 경계점들의 각 임시 경계점의 기울기 방향에 대응하는 선분의 길이 및 각도를 추출한다. 단계(760)에서 LED 검출 장치는 각 제2 경계점, 추출된 선분의 길이 및 추출된 각도에 의해 특정되는 위치들에 대응하는 후보 중심점들을 결정한다. 단계(770)에서 LED 검출 장치는 후보 중심점들 중에 제2 프레임의 복수의 LED들의 각 LED의 제2 중심점을 선택한다.In
단계(780)에서 LED 검출 장치는 참조 테이블 및 제2 중심점에 기초하여 제2 프레임의 상기 각 LED의 제2 경계점들을 결정한다. 도 5에 도시된 것처럼, 제2 프레임의 서로 겹쳐서 표현된 각 LED는 결정된 제2 프레임의 각 LED의 제2 경계점들을 통해 서로 구분될 수 있다.In
도 8은 일 실시예에 따른 LED 검출 장치를 나타낸 블록도이다. 도 8을 참조하면, 장치(800)는 프로세서(810) 및 메모리(820)를 포함한다. 메모리(820)는 프로세서(810)에 연결되고, 프로세서(810)에 의해 실행가능한 명령어들, 프로세서(810)가 연산할 데이터 또는 프로세서(810)에 의해 처리된 데이터를 저장할 수 있다. 메모리(820)는 비일시적인 컴퓨터 판독가능 매체, 예컨대 고속 랜덤 액세스 메모리 및/또는 비휘발성 컴퓨터 판독가능 저장 매체(예컨대, 하나 이상의 디스크 저장 장치, 플래쉬 메모리 장치, 또는 기타 비휘발성 솔리드 스테이트 메모리 장치)를 포함할 수 있다.8 is a block diagram showing an LED detection device according to an embodiment. Referring to FIG. 8, the
프로세서(810)는 도 1 내지 도 7을 참조하여 설명된 하나 이상의 동작을 실행하기 위한 명령어들을 실행할 수 있다. 예를 들어, 프로세서(810)는 각각 복수의 LED들을 포함하는 복수의 프레임들의 입력 영상을 획득하고, 복수의 프레임들 중 복수의 LED들이 서로 분리되어 표현된 제1 프레임에서 복수의 LED들의 각 LED에 관한 제1 중심점 및 제1 경계점들을 검출하고, 제1 중심점 및 제1 경계점들에 기초하여 제1 프레임의 각 LED에 관한 참조 테이블을 생성하고, 복수의 프레임들 중 복수의 LED들이 서로 겹쳐서 표현된 제2 프레임에서 복수의 LED들에 관한 임시 경계점들을 검출하고, 참조 테이블 및 임시 경계점들에 기초하여, 제2 프레임의 복수의 LED들의 각 LED에 관한 후보 중심점들을 결정하고, 후보 중심점들 중에 제2 프레임의 복수의 LED들의 각 LED의 제2 중심점을 선택할 수 있다.The
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(Arithmetic Logic Unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(Field Programmable Gate Array), PLU(Programmable Logic Unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The device described above may be implemented with hardware components, software components, and/or combinations of hardware components and software components. For example, the devices and components described in the embodiments include, for example, a processor, a controller, an Arithmetic Logic Unit (ALU), a digital signal processor (micro signal processor), a microcomputer, and a Field Programmable Gate Array (FPGA). , A Programmable Logic Unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions, may be implemented using one or more general purpose computers or special purpose computers. The processing device may run an operating system (OS) and one or more software applications running on the operating system. In addition, the processing device may access, store, manipulate, process, and generate data in response to the execution of the software. For convenience of understanding, a processing device may be described as one being used, but a person having ordinary skill in the art, the processing device may include a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that may include. For example, the processing device may include a plurality of processors or a processor and a controller. In addition, other processing configurations, such as parallel processors, are possible.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instruction, or a combination of one or more of these, and configure the processing device to operate as desired, or process independently or collectively You can command the device. Software and/or data may be interpreted by a processing device, or to provide instructions or data to a processing device, of any type of machine, component, physical device, virtual equipment, computer storage medium or device. , Or may be permanently or temporarily embodied in the transmitted signal wave. The software may be distributed over networked computer systems, and stored or executed in a distributed manner. Software and data may be stored in one or more computer-readable recording media.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, or the like alone or in combination. The program instructions recorded in the medium may be specially designed and configured for the embodiments or may be known and usable by those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs, DVDs, and magnetic media such as floptical disks. Includes hardware devices specifically configured to store and execute program instructions such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of program instructions include high-level language code that can be executed by a computer using an interpreter, etc., as well as machine language codes produced by a compiler. The hardware device described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described by a limited embodiment and drawings, those skilled in the art can make various modifications and variations from the above description. For example, the described techniques are performed in a different order than the described method, and/or the components of the described system, structure, device, circuit, etc. are combined or combined in a different form from the described method, or other components Alternatively, even if replaced or substituted by equivalents, appropriate results can be achieved.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.
Claims (10)
상기 복수의 프레임들 중 상기 복수의 LED들이 서로 분리되어 표현된 제1 프레임에서 상기 복수의 LED들의 각 LED에 관한 제1 중심점 및 제1 경계점들을 검출하는 단계;
상기 제1 중심점 및 상기 제1 경계점들에 기초하여 상기 제1 프레임의 상기 각 LED에 관한 참조 테이블을 생성하는 단계;
상기 복수의 프레임들 중 상기 복수의 LED들이 서로 겹쳐서 표현된 제2 프레임에서 상기 복수의 LED들에 관한 임시 경계점들을 검출하는 단계;
상기 참조 테이블 및 상기 임시 경계점들에 기초하여, 상기 제2 프레임의 상기 복수의 LED들의 각 LED에 관한 후보 중심점들을 결정하는 단계; 및
상기 후보 중심점들 중에 상기 제2 프레임의 상기 복수의 LED들의 각 LED의 제2 중심점을 선택하는 단계
를 포함하는 LED 검출 방법.
Acquiring input images of a plurality of frames each including a plurality of LEDs;
Detecting a first center point and first boundary points of each LED of the plurality of LEDs in a first frame in which the plurality of LEDs are separated from each other and expressed in the first frame;
Generating a reference table for each LED of the first frame based on the first center point and the first boundary points;
Detecting temporary boundary points of the plurality of LEDs in a second frame in which the plurality of LEDs are superimposed on each other among the plurality of frames;
Determining candidate center points for each LED of the plurality of LEDs in the second frame based on the reference table and the temporary boundary points; And
Selecting a second center point of each LED of the plurality of LEDs of the second frame from among the candidate center points.
LED detection method comprising a.
상기 참조 테이블을 생성하는 단계는
상기 제1 경계점들의 각 제1 경계점에 관하여, 상기 각 제1 경계점의 기울기 방향, 상기 제1 중심점과 상기 각 제1 경계점 사이의 각 선분의 길이, 및 x축과 상기 각 선분 사이의 각도를 산출하여, 상기 제1 프레임의 상기 각 LED에 관한 참조 테이블을 생성하는 단계
를 포함하는, LED 검출 방법.
According to claim 1,
The step of creating the reference table
With respect to each first boundary point of the first boundary points, an inclination direction of each first boundary point, a length of each line segment between the first center point and each of the first boundary points, and an angle between the x-axis and each line segment are calculated. By doing so, generating a reference table for each LED of the first frame
Including, LED detection method.
상기 후보 중심점들을 결정하는 단계는
상기 참조 테이블로부터 상기 임시 경계점들의 각 임시 경계점의 기울기 방향에 대응하는 선분의 길이 및 각도를 추출하는 단계; 및
상기 각 임시 경계점, 상기 추출된 선분의 길이 및 상기 추출된 각도에 의해 특정되는 위치들에 대응하는 후보 중심점들을 결정하는 단계
를 포함하는, LED 검출 방법.
According to claim 2,
Determining the candidate center point is
Extracting a length and an angle of a line segment corresponding to a gradient direction of each temporary boundary point of the temporary boundary points from the reference table; And
Determining candidate center points corresponding to positions specified by the temporary boundary points, the length of the extracted line segments, and the extracted angles
Including, LED detection method.
상기 제2 프레임의 상기 각 LED의 상기 제2 중심점을 선택하는 단계는
상기 후보 중심점들 중 상기 제2 프레임의 이전 프레임에 나타난 각 LED의 중심점과 가장 가까운 것을 상기 제2 프레임의 상기 각 LED의 상기 제2 중심점으로 선택하는 단계를 포함하는,
LED 검출 방법.
According to claim 1,
The step of selecting the second center point of each LED of the second frame is
And selecting, among the candidate center points, the closest point to the center point of each LED shown in the previous frame of the second frame as the second center point of each LED of the second frame,
LED detection method.
상기 참조 테이블은 상기 제1 프레임의 상기 각 LED의 형상에 관한 정보를 포함하는,
LED 검출 방법.
According to claim 1,
The reference table includes information about the shape of each LED of the first frame,
LED detection method.
상기 참조 테이블 및 상기 제2 중심점에 기초하여 상기 제2 프레임의 상기 각 LED의 제2 경계점들을 결정하는 단계
를 더 포함하는, LED 검출 방법.
According to claim 1,
Determining second boundary points of each LED of the second frame based on the reference table and the second center point.
Further comprising, LED detection method.
상기 제2 프레임의 서로 겹쳐서 표현된 상기 각 LED는 상기 결정된 상기 제2 프레임의 상기 각 LED의 상기 제2 경계점들을 통해 서로 구분되는,
LED 검출 방법.
The method of claim 6,
The LEDs overlapped with each other of the second frame are separated from each other through the second boundary points of the LEDs of the determined second frame,
LED detection method.
상기 복수의 프레임들 중 상기 복수의 LED들이 서로 분리되어 표현된 제1 프레임에서 상기 복수의 LED들의 각 LED에 관한 제1 중심점 및 제1 경계점들을 검출하는 단계;
상기 제1 경계점들의 각 제1 경계점에 관하여, 상기 각 제1 경계점의 기울기 방향, 상기 제1 중심점과 상기 각 제1 경계점 사이의 각 선분의 길이, 및 x축과 상기 각 선분 사이의 각도를 산출하여, 상기 제1 프레임의 상기 각 LED에 관한 참조 테이블을 생성하는 단계;
상기 복수의 프레임들 중 상기 복수의 LED들이 서로 겹쳐서 표현된 제2 프레임에서 상기 복수의 LED들에 관한 임시 경계점들을 검출하는 단계;
상기 참조 테이블로부터 상기 임시 경계점들의 각 임시 경계점의 기울기 방향에 대응하는 선분의 길이 및 각도를 추출하는 단계;
상기 각 임시 경계점, 상기 추출된 선분의 길이 및 상기 추출된 각도에 의해 특정되는 위치들에 대응하는 후보 중심점들을 결정하는 단계;
상기 후보 중심점들 중에 상기 제2 프레임의 상기 복수의 LED들의 각 LED의 제2 중심점을 선택하는 단계; 및
상기 참조 테이블 및 상기 제2 중심점에 기초하여 상기 제2 프레임의 상기 각 LED의 제2 경계점들을 결정하는 단계
를 포함하는 LED 검출 방법.
Acquiring input images of a plurality of frames each including a plurality of LEDs;
Detecting a first center point and first boundary points of each LED of the plurality of LEDs in a first frame in which the plurality of LEDs are separated from each other and expressed in the first frame;
With respect to each first boundary point of the first boundary points, an inclination direction of each first boundary point, a length of each line segment between the first center point and each of the first boundary points, and an angle between the x-axis and each line segment are calculated. By doing so, generating a reference table for each LED of the first frame;
Detecting temporary boundary points of the plurality of LEDs in a second frame in which the plurality of LEDs are superimposed on each other among the plurality of frames;
Extracting a length and an angle of a line segment corresponding to a gradient direction of each temporary boundary point of the temporary boundary points from the reference table;
Determining candidate center points corresponding to positions specified by the temporary boundary point, the length of the extracted line segment, and the extracted angle;
Selecting a second center point of each LED of the plurality of LEDs of the second frame among the candidate center points; And
Determining second boundary points of each LED of the second frame based on the reference table and the second center point.
LED detection method comprising a.
A computer-readable storage medium storing one or more programs comprising instructions for performing the method of claim 1.
상기 프로세서에서 실행가능한 명령어들을 포함하는 메모리
를 포함하고,
상기 명령어들이 상기 프로세서에서 실행되면, 상기 프로세서는
각각 복수의 LED들을 포함하는 복수의 프레임들의 입력 영상을 획득하고,
상기 복수의 프레임들 중 상기 복수의 LED들이 서로 분리되어 표현된 제1 프레임에서 상기 복수의 LED들의 각 LED에 관한 제1 중심점 및 제1 경계점들을 검출하고,
상기 제1 중심점 및 상기 제1 경계점들에 기초하여 상기 제1 프레임의 상기 각 LED에 관한 참조 테이블을 생성하고,
상기 복수의 프레임들 중 상기 복수의 LED들이 서로 겹쳐서 표현된 제2 프레임에서 상기 복수의 LED들에 관한 임시 경계점들을 검출하고,
상기 참조 테이블 및 상기 임시 경계점들에 기초하여, 상기 제2 프레임의 상기 복수의 LED들의 각 LED에 관한 후보 중심점들을 결정하고,
상기 후보 중심점들 중에 상기 제2 프레임의 상기 복수의 LED들의 각 LED의 제2 중심점을 선택하는,
LED 검출 장치.Processor; And
Memory containing instructions executable on the processor
Including,
When the instructions are executed on the processor, the processor
Acquire input images of a plurality of frames each including a plurality of LEDs,
The first center point and the first boundary point of each LED of the plurality of LEDs are detected in the first frame in which the plurality of LEDs among the plurality of frames are separated and represented,
Create a reference table for each LED of the first frame based on the first center point and the first boundary points,
In the second frame in which the plurality of LEDs are overlapped among the plurality of frames, temporary boundary points of the plurality of LEDs are detected,
Based on the reference table and the temporary boundary points, candidate center points for each LED of the plurality of LEDs in the second frame are determined,
Selecting a second center point of each LED of the plurality of LEDs of the second frame among the candidate center points,
LED detection device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190125602A KR102122865B1 (en) | 2019-10-10 | 2019-10-10 | Led detection method and apparatus for separating overlapping leds |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190125602A KR102122865B1 (en) | 2019-10-10 | 2019-10-10 | Led detection method and apparatus for separating overlapping leds |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102122865B1 true KR102122865B1 (en) | 2020-06-15 |
Family
ID=71081938
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190125602A KR102122865B1 (en) | 2019-10-10 | 2019-10-10 | Led detection method and apparatus for separating overlapping leds |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102122865B1 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009005141A (en) * | 2007-06-22 | 2009-01-08 | Mitsubishi Electric Corp | Optical microwave conversion device |
JP2009026613A (en) * | 2007-07-19 | 2009-02-05 | Toshiba Lighting & Technology Corp | Illuminance sensor apparatus and illumination control system |
KR20140079718A (en) * | 2012-12-19 | 2014-06-27 | 캐논 가부시끼가이샤 | Image processing apparatus, image processing method, and storage medium |
KR20170130161A (en) * | 2016-05-18 | 2017-11-28 | 고려대학교 세종산학협력단 | Apparatus and method for detecting proximal entity in pen |
KR20190048608A (en) * | 2017-10-31 | 2019-05-09 | 숭실대학교산학협력단 | Apparatus and method for signal processing in sonar system, recording medium for performing the method |
-
2019
- 2019-10-10 KR KR1020190125602A patent/KR102122865B1/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009005141A (en) * | 2007-06-22 | 2009-01-08 | Mitsubishi Electric Corp | Optical microwave conversion device |
JP2009026613A (en) * | 2007-07-19 | 2009-02-05 | Toshiba Lighting & Technology Corp | Illuminance sensor apparatus and illumination control system |
KR20140079718A (en) * | 2012-12-19 | 2014-06-27 | 캐논 가부시끼가이샤 | Image processing apparatus, image processing method, and storage medium |
KR20170130161A (en) * | 2016-05-18 | 2017-11-28 | 고려대학교 세종산학협력단 | Apparatus and method for detecting proximal entity in pen |
KR20190048608A (en) * | 2017-10-31 | 2019-05-09 | 숭실대학교산학협력단 | Apparatus and method for signal processing in sonar system, recording medium for performing the method |
Non-Patent Citations (1)
Title |
---|
JPWO2009005141 A1 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102137264B1 (en) | Apparatus and method for camera pose estimation | |
US10540540B2 (en) | Method and device to determine landmark from region of interest of image | |
US11189032B2 (en) | Method and apparatus for extracting a satellite image-based building footprint | |
JP2018067120A (en) | Fingerprint processing apparatus, fingerprint processing method, program and fingerprint processing circuit | |
KR102476897B1 (en) | Method and apparatus for tracking object, and 3d display device thereof | |
KR102167011B1 (en) | An image traning apparatus extracting hard negative samples being used to training a neural network based on sampling and a threshold adjusting adaptively and a method performed by the image training apparatus | |
JP6997369B2 (en) | Programs, ranging methods, and ranging devices | |
KR20200050246A (en) | Method for detecting 3d object from 2d image and apparatus thereof | |
CN112231034A (en) | Software interface element identification method and device combining RPA and AI | |
CN110363790B (en) | Target tracking method, apparatus and computer readable storage medium | |
TW202011266A (en) | Neural network system for image matching and location determination, method, and device | |
US20210089823A1 (en) | Information processing device, information processing method, and non-transitory computer-readable storage medium | |
JP2022521540A (en) | Methods and systems for object tracking using online learning | |
KR101817440B1 (en) | The 3d model-based object recognition techniques and systems with a multi-camera | |
KR102122865B1 (en) | Led detection method and apparatus for separating overlapping leds | |
KR20200052068A (en) | Method and apparatus for eye tracking | |
KR102488813B1 (en) | Method and apparatus for generating disparity map using edge image | |
KR101785205B1 (en) | Method and Apparatus for Multi-object Segmentation based on Shadow using Depth Sensor | |
KR102399673B1 (en) | Method and apparatus for recognizing object based on vocabulary tree | |
KR20140061164A (en) | Apparatus and method for detecting finger using depth image | |
KR101823792B1 (en) | Method and system for detecting multi-object based on context | |
CN110705479A (en) | Model training method, target recognition method, device, equipment and medium | |
US11386706B1 (en) | Device and method for classifying biometric authentication data | |
US20240078840A1 (en) | Device and method for classifying biometric authentication data | |
US9098776B2 (en) | Information processing apparatus and information processing method that determine whether any one of a plurality of pixels in an obtained partial image has an invalid value to select an appropriate acquisition method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |