KR20180047149A - Apparatus and method for risk alarming of collision - Google Patents

Apparatus and method for risk alarming of collision Download PDF

Info

Publication number
KR20180047149A
KR20180047149A KR1020160142927A KR20160142927A KR20180047149A KR 20180047149 A KR20180047149 A KR 20180047149A KR 1020160142927 A KR1020160142927 A KR 1020160142927A KR 20160142927 A KR20160142927 A KR 20160142927A KR 20180047149 A KR20180047149 A KR 20180047149A
Authority
KR
South Korea
Prior art keywords
image data
objects
processor
pedestrian
camera
Prior art date
Application number
KR1020160142927A
Other languages
Korean (ko)
Inventor
이성환
곽인엽
Original Assignee
고려대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 고려대학교 산학협력단 filed Critical 고려대학교 산학협력단
Priority to KR1020160142927A priority Critical patent/KR20180047149A/en
Publication of KR20180047149A publication Critical patent/KR20180047149A/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units, or advanced driver assistance systems for ensuring comfort, stability and safety or drive control systems for propelling or retarding the vehicle
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R21/00Arrangements or fittings on vehicles for protecting or preventing injuries to occupants or pedestrians in case of accidents or other traffic risks
    • B60R21/34Protecting non-occupants of a vehicle, e.g. pedestrians
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/08Interaction between the driver and the control system
    • B60W50/14Means for informing the driver, warning the driver or prompting a driver intervention
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0043Signal treatments, identification of variables or parameters, parameter estimation or state estimation
    • B60W2050/0052Filtering, filters
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo or light sensitive means, e.g. infrared sensors
    • B60W2420/403Image sensing, e.g. optical camera
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/42Image sensing, e.g. optical camera

Abstract

The present invention comprises: a memory in which a collision risk predicting program is stored; and a processor performing the program stored in the memory. At this moment, the processor extracts at least one object from image data based on an object recognizing model in accordance with the performance of the program, and reconstructs three-dimensional space information from the image data. Moreover, the processor predicts a movement passage of a camera photographing the movement passage of each one of the objects and the image data based on the three-dimensional space information and a movement passage predicting model. In addition, the processor determines whether or not an object of which a movement passage intersects with the movement passage of the camera among the objects.

Description

충돌 위험 경고 장치 및 방법{APPARATUS AND METHOD FOR RISK ALARMING OF COLLISION}[0001] APPARATUS AND METHOD FOR RISK ALARMING OF COLLISION [0002]

본 발명은 충돌 위험 경고 장치 및 방법에 관한 것이다.The present invention relates to a crash risk warning apparatus and method.

운전자 보조 시스템(advanced driver assistance system; ADAS)는 주행 중 차선 이탈, 충돌 감지 등의 운전자를 지원할 수 있는 다양한 기술을 포함하고 있다. 운전자 보조 시스템의 기술 중 충돌 방지 기술은 주로 감지 센서를 이용한다. 이때, 감지 센서는 초단파, 레이저, 레이더(rader) 및 라이다(lidar) 등이 있다. 이러한 센서 기반 기술은 장애물의 검출이 용이하다. 그러나 센서 기반 기술은 센서가 주변 환경이나 기상 상황에 쉽게 영향을 받을 수 있다. 또한, 센서 기반 기술은 센서 설치 비용이 높다는 문제가 있다.The ADAS includes a variety of technologies that can assist drivers such as lane departure and collision detection while driving. Among the technologies of the driver assistance system, the collision prevention technique mainly uses the sensor. At this time, the detection sensors include microwave, laser, radar, and lidar. This sensor-based technology makes it easy to detect obstacles. However, sensor-based technology can easily be affected by ambient conditions or weather conditions. In addition, the sensor-based technology has a problem that the sensor installation cost is high.

최근에는 컴퓨터 비전(computer vision) 기술을 응용한 운전자 보조 시스템이 주목받고 있다. 이 방법은 영상 데이터를 통하여 주변의 보행자를 탐지하거나 추적하여, 주행 차량과 보행자 간의 충돌 위험성을 판단할 수 있다. 이 방법은 실시간 응용에 적합하다. 그러나 복잡한 도심이나 변화가 많은 주행 환경에서 오인식이 자주 발생한다는 단점이 있다.In recent years, driver assistance systems have been attracting attention as they apply computer vision technology. This method can detect or track nearby pedestrians through image data to determine the risk of collision between a driving vehicle and a pedestrian. This method is suitable for real-time applications. However, there are disadvantages of frequent misunderstandings in complex urban areas or in a changing driving environment.

컴퓨터 비전 기술을 이용한 운전자 보조 시스템에서는 카메라로부터 촬영된 영상 데이터를 이용한다. 또한, 컴퓨터 비전 기술을 이용한 운전자 보조 시스템은 영상 데이터로부터 깊이 정보, 상대적인 거리 정보 및 속도 정보와 같은 영상 정보를 추정하여 사용할 수 있다. 이때, 카메라는 양안 카메라(stereo camera) 또는 단안 카메라(monocular)가 될 수 있다. 그러나 단안 카메라를 이용하여 생성된 영상 데이터로부터 영상 정보를 추정하기 위해서는 여러 가지 해결해야 할 문제가 존재한다.In the driver assistance system using computer vision technology, image data taken from the camera is used. In addition, the driver assistance system using the computer vision technology can estimate and use image information such as depth information, relative distance information, and speed information from the image data. At this time, the camera may be a stereo camera or a monocular camera. However, there are various problems to be solved in order to estimate the image information from the image data generated by using the monocular camera.

이와 관련되어, 한국 등록특허공보 제10-1489836호(발명의 명칭: "보행자 감지 및 충돌 회피 장치 및 방법")는 적어도 하나 이상의 보행자에 관련된 정보와 차량에 관련된 정보를 조합하여 차량과 보행자 간에 충돌위험이 있는지를 판단하고 충돌 위험이 있다고 판단된 경우 충돌회피가 가능한 상황들을 예측하여 각 상황별로 충돌회피를 위한 제어 신호를 출력하는 보행자 감지/충돌 회피 장치 및 방법을 개시하고 있다.In this regard, Korean Patent Registration No. 10-1489836 (entitled "Pedestrian Detection and Collision Avoiding Device and Method") combines information related to at least one or more pedestrians and information related to a vehicle, And a pedestrian detection / collision avoiding apparatus and method for estimating situations in which collision avoidance is possible when a collision risk is determined, and outputting a control signal for collision avoidance for each situation.

본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 영상 데이터로부터 차량과 보행자의 충돌 위험을 예측하고 경고할 수 있는 충돌 위험 경고 장치 및 방법을 제공한다.Disclosure of Invention Technical Problem [8] Accordingly, the present invention has been made in view of the above problems, and it is an object of the present invention to provide a collision risk warning apparatus and method capable of predicting and warning a collision risk between a vehicle and a pedestrian from image data.

다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.It should be understood, however, that the technical scope of the present invention is not limited to the above-described technical problems, and other technical problems may exist.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따른 충돌 위험 경고 장치는 충돌 위험 예측 프로그램이 저장된 메모리, 및 메모리에 저장된 프로그램을 수행하는 프로세서를 포함한다. 이때, 프로세서는 프로그램의 실행에 따라, 객체 인식 모델에 기초하여 영상 데이터로부터 하나 이상의 객체를 추출하고, 영상 데이터로부터 3차원 공간 정보를 재구성하며, 3차원 공간 정보 및 이동경로 예측 모델에 기초하여 객체 각각의 이동경로 및 영상 데이터를 촬영한 카메라의 이동경로를 예측하고, 하나 이상의 객체 중 카메라의 이동경로와 이동경로가 교차하는 객체가 존재하는지 여부를 판단한다. As a technical means for achieving the above technical object, a crash risk warning device according to the first aspect of the present invention includes a memory for storing a crash risk prediction program, and a processor for executing a program stored in the memory. At this time, according to the execution of the program, the processor extracts one or more objects from the image data based on the object recognition model, reconstructs the three-dimensional spatial information from the image data, Predicts a movement path of the camera that captured each movement path and image data, and determines whether there is an object that intersects the camera movement path and the movement path among the at least one object.

또한, 본 발명의 제 2 측면에 따른 충돌 위험 경고 장치의 충돌 위험 감지 방법은 영상 데이터로부터 하나 이상의 객체를 추출하는 단계; 영상 데이터로부터 3차원 공간 정보를 재구성하는 단계; 3차원 공간 정보 및 기생성된 이동경로 예측 모델에 기초하여 객체 각각의 이동경로를 예측하는 단계; 3차원 공간 정보 및 기생성된 이동경로 예측 모델에 기초하여 영상 데이터를 촬영한 카메라의 이동경로를 예측하는 단계; 및 하나 이상의 객체 중 카메라의 이동경로와 이동경로가 교차하는 객체가 존재하는지 여부를 판단하는 단계를 포함한다. According to a second aspect of the present invention, there is provided a method for detecting a collision risk of a collision risk warning device, comprising: extracting at least one object from image data; Reconstructing three-dimensional spatial information from the image data; Estimating a movement path of each of the objects based on the three-dimensional space information and the generated motion path prediction model; Estimating a movement path of a camera that captures image data based on the three-dimensional spatial information and the generated motion path prediction model; And determining whether there is an object that intersects the movement path of the camera among the at least one object.

그리고 본 발명의 제 3 측면에 따른 충돌 위험 경고 장치의 모델 생성 방법은 기수집된 영상 데이터 집합으로부터 객체가 포함된 학습 영상 데이터를 추출하는 단계; 및 학습 영상 데이터 및 기계학습 알고리즘에 기초하여 객체 인식 모델을 생성하는 단계를 포함한다. 이때, 객체 인식 모델은 영상 데이터로부터 복수의 객체를 추출하는 것이다. 또한, 추출된 복수의 객체는 영상 데이터에 대응하여 재구성된 3차원 공간 정보에 기초하여 이동경로가 예측된 이후, 영상 데이터를 촬영한 카메라에 대한 이동경로와 비교하고, 카메라에 대한 이동경로와 객체가 충돌 위험 객체로 추출되는 것이며, 기계학습 알고리즘은 신경망 알고리즘, 지지 벡터 머신 알고리즘 및 클러스터링 알고리즘 중 어느 하나이다.A third aspect of the present invention is a method for generating a model of a collision risk warning device, comprising: extracting learning image data including an object from a collected image data set; And generating an object recognition model based on the training image data and the machine learning algorithm. At this time, the object recognition model extracts a plurality of objects from the image data. In addition, the extracted plurality of objects are compared with the movement path for the camera that captures the image data after the movement path is predicted based on the reconstructed three-dimensional spatial information corresponding to the image data, Is extracted as a collision risk object, and the machine learning algorithm is either a neural network algorithm, a support vector machine algorithm, or a clustering algorithm.

본 발명은 2차원 영상 데이터로부터 3차원 공간 정보를 복원하고, 보행자와 차량의 충돌 위험을 감지할 수 있다. 또한, 본 발명은 차량의 움직임에 의하여 발생할 수 있는 잡음을 제거할 수 있다. 그러므로 본 발명은 위험 보행자에 대한 오인식을 감소시켜 사고 위험을 줄이고, 운전자의 안전에 도움이 될 수 있다.The present invention can restore three-dimensional spatial information from two-dimensional image data and detect a collision risk between a pedestrian and a vehicle. In addition, the present invention can remove noise that may be caused by movement of the vehicle. Therefore, the present invention can reduce the mistrust of dangerous pedestrians, reduce the risk of accidents, and can contribute to safety of the driver.

도 1은 종래의 운전자 보조 시스템에서의 위험 보행자 검출의 예시도이다.
도 2는 본 발명의 일 실시예에 따른 충돌 위험 경고 장치의 블록도이다.
도 3은 본 발명의 일 실시예에 따른 충돌 위험 예측 프로그램의 블록도이다.
도 4는 본 발명의 일 실시예에 따른 영상 데이터에서 추출된 보행자 객체의 예시도이다.
도 5는 본 발명의 일 실시예에 따른 영상 데이터에 대한 특징 정합의 예시도이다.
도 6은 본 발명의 일 실시예에 따른 카메라 모듈 및 보행자 객체의 위치에 대한 예시도이다.
도 7은 본 발명의 일 실시예에 따른 식별된 보행자 객체가 표시된 영상 데이터에 대한 예시도이다.
도 8은 본 발명의 일 실시예에 따른 식별된 보행자 객체가 표시된 영상 데이터에 대한 예시도이다.
도 9는 본 발명의 일 실시예에 따른 충돌 위험 경고 장치의 충돌 위험 감지 방법에 대한 순서도이다.
도 10은 본 발명의 일 실시예에 따른 충돌 위험 경고 장치의 객체 인식 모델 생성 방법에 대한 순서도이다.
FIG. 1 is an exemplary view of a dangerous pedestrian detection in a conventional driver assistance system. FIG.
2 is a block diagram of a collision risk warning device according to an embodiment of the present invention.
3 is a block diagram of a collision risk prediction program according to an embodiment of the present invention.
4 is an exemplary view of a pedestrian object extracted from image data according to an embodiment of the present invention.
FIG. 5 is an exemplary diagram illustrating feature matching for image data according to an exemplary embodiment of the present invention. Referring to FIG.
FIG. 6 is an exemplary view illustrating positions of a camera module and a pedestrian object according to an exemplary embodiment of the present invention.
FIG. 7 is an exemplary view of image data in which an identified pedestrian object is displayed according to an embodiment of the present invention. FIG.
FIG. 8 is an exemplary view of image data in which an identified pedestrian object is displayed according to an embodiment of the present invention.
9 is a flowchart illustrating a method of detecting a collision risk of a collision risk warning device according to an embodiment of the present invention.
10 is a flowchart illustrating a method of generating an object recognition model of a collision risk warning device according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, which will be readily apparent to those skilled in the art. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. In order to clearly illustrate the present invention, parts not related to the description are omitted, and similar parts are denoted by like reference characters throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is referred to as being "connected" to another part, it includes not only "directly connected" but also "electrically connected" with another part in between . Also, when a part is referred to as "including " an element, it does not exclude other elements unless specifically stated otherwise.

종래의 운전자 보조 시스템은 칼만 필터(Kalman filter)에 기반한 궤적 모델에 기초하여 보행자의 행동 패턴을 예측할 수 있다. 또한, 종래의 운전 보조 시스템은 보행자의 행동 패턴에 따라 위험 보행자를 검출할 수 있다. Conventional driver assistance systems can predict a behavior pattern of a pedestrian based on a Kalman filter based trajectory model. In addition, the conventional driving assistance system can detect a dangerous pedestrian according to a behavior pattern of a pedestrian.

도 1은 종래의 운전자 보조 시스템에서의 위험 보행자 검출의 예시도이다.FIG. 1 is an exemplary view of a dangerous pedestrian detection in a conventional driver assistance system. FIG.

도 1의 (a)를 참조하면, 보행자(100)의 선(102)은 보행자(100)의 궤적 정보를 의미하며, 화살표(101)는 해당 보행자(100)의 궤적 정보에 기초하여 예측된 보행자의 미래 진행 방향을 의미한다. 종래의 운전 보조 시스템은 도 1(a)의 보행자를 위험 보행자로 추출한다. 그러나 실제 해당 보행자는 다른 차량에서 하차하는 운전자이나, 서 있는 상황을 운전 보조 시스템에 대응하는 차량의 진행 방향으로 이동하는 것으로 오인식한 것이다. 도 1의 (b) 역시 도 1의 (a)와 유사하게 한 위치에 서있는 다른 차량에서 하차하는 운전자(110)를 위험 보행자로 오인식한 것이다. 1 (a), the line 102 of the pedestrian 100 represents the locus information of the pedestrian 100, and the arrow 101 represents the locus information of the pedestrian 100 that is predicted based on the locus information of the pedestrian 100, The future direction of the future. The conventional driving assistance system extracts the pedestrian shown in Fig. 1 (a) as a dangerous pedestrian. However, the actual pedestrian is misunderstood as a driver getting off the other vehicle, or moving the standing situation to the direction of the vehicle corresponding to the driving assistance system. 1 (b) is a view similar to FIG. 1 (a), in which the driver 110 departing from another vehicle standing at one position is mistaken as a dangerous pedestrian.

도 1의 (c)를 참조하면, 종래의 운전 보조 시스템은 교차로에서 보행자가 신호를 대기 중인 상황이나, 다른 차량의 움직임으로 잡음이 발생하여 해당 보행자(122)의 이동 방향을 화살표(121)와 같이 예측하고, 위험 보행자로 검출한 것이다. 이와 같이, 종래의 운전 보조 시스템은 다른 차량의 움직임(ego-motion)에 의한 잡음이 발생할 수 있다. Referring to FIG. 1 (c), in the conventional driving assist system, when a pedestrian is waiting for a signal at an intersection or a noise occurs due to movement of another vehicle, the moving direction of the pedestrian 122 is indicated by an arrow 121 Predicted, and detected as a dangerous pedestrian. As described above, the conventional driving assist system may cause noise due to ego-motion of another vehicle.

이러한 잡음은 두 개의 렌즈를 이용하는 양안 카메라를 이용하여 수집된 영상 데이터에서는 쉽게 보정될 수 있다. 그러나 차량에 설치된 블랙박스 장치와 같은 단안 카메라를 이용하는 경우에는 보정이 어려울 수 있다. Such noise can be easily corrected in image data collected using a binocular camera using two lenses. However, correction using a monocular camera such as a black box device installed in a vehicle may be difficult.

다음은 도 2 내지 도 9를 참조하여 본 발명의 일 실시예에 따른 충돌 위험 경고 시스템(200)을 설명한다. Next, a crash risk warning system 200 according to an embodiment of the present invention will be described with reference to FIGS.

도 2는 본 발명의 일 실시예에 따른 충돌 위험 경고 시스템(200)의 블록도이다. 2 is a block diagram of a crash risk warning system 200 in accordance with an embodiment of the present invention.

충돌 위험 경고 시스템(200)은 카메라 모듈(240)을 통하여 수집된 영상 데이터에 기초하여 충돌 위험이 있는 객체를 감지한다. 이때, 충돌 위험 경고 시스템(200)은 카메라 모듈(240) 및 충돌 위험 경고 장치(210)를 포함할 수 있다. The collision risk warning system 200 detects an object at risk of collision based on the image data collected through the camera module 240. At this time, the collision risk warning system 200 may include a camera module 240 and a collision risk warning device 210.

충돌 위험 경고 장치(210)는 영상 데이터로부터 객체를 추출하고, 객체의 이동경로를 예측한다. 그리고 충돌 위험 경고 장치(210)는 이동주체의 이동경로와 영상 데이터로부터 추출된 객체의 이동경로를 비교하여 충돌 위험을 감지한다. The collision risk warning device 210 extracts an object from the image data and predicts a movement path of the object. The collision risk warning device 210 detects the collision risk by comparing the movement path of the moving subject with the movement path of the object extracted from the image data.

이때, 영상 데이터는 객체의 이동경로에 따라 객체에 부착된 카메라 모듈(240)을 통하여 촬영된 것이 될 수 있다. 예를 들어, 이동주체는 차량, 자전거 및 열차와 같은 교통수단이 될 수 있다. 또는, 이동주체는 사람이 될 수 있으나, 이에 한정된 것은 아니다.At this time, the image data may be photographed through the camera module 240 attached to the object according to the movement path of the object. For example, the moving entity may be a transportation means such as a vehicle, a bicycle, and a train. Alternatively, the moving subject may be a person, but is not limited thereto.

또한, 영상 데이터로부터 추출되는 객체는 영상 데이터에 촬영된 차량, 자전거 및 열차와 같은 교통수단 또는 사람, 동물 등이 될 수 있으나, 이에 한정된 것은 아니다. In addition, the object extracted from the image data may be a vehicle such as a vehicle, a bicycle, a train, or a person, an animal, etc., but is not limited thereto.

이하에서는 차량, 차량에 설치된 카메라 모듈(240)을 통하여 수집되는 실시간 영상 데이터 및 해당 차량이 주행하는 도로 주변의 보행자를 예로 들어 설명하나 이에 한정되는 것은 안다.Hereinafter, real-time image data collected through the camera module 240 installed in the vehicle, and pedestrians around the road on which the vehicle travels are described as an example.

충돌 위험 경고 장치(210)는 메모리(230) 및 프로세서(220)를 포함한다.The collision risk warning device 210 includes a memory 230 and a processor 220.

이때, 메모리(230)는 충돌 위험 예측 프로그램(300)이 저장된다. 메모리(230)는 전원이 공급되지 않아도 저장된 정보를 계속 유지하는 비휘발성 저장장치 및 저장된 정보를 유지하기 위하여 전력이 필요한 휘발성 저장장치를 통칭하는 것이다. At this time, the collision risk prediction program 300 is stored in the memory 230. The memory 230 is collectively referred to as a non-volatile storage device that keeps stored information even when power is not supplied, and a volatile storage device that requires power to maintain stored information.

프로세서(220)는 충돌 위험 예측 프로그램(300)의 실행에 따라 영상 데이터로부터 복수의 보행자를 추출할 수 있다. 그리고 프로세서(220)는 영상 데이터를 촬영한 카메라 모듈(240)의 이동방향과 추출된 복수의 보행자 각각의 이동 방향을 비교하여 충돌 가능성을 감지할 수 있다. 이때, 충돌 위험 예측 프로그램(300)을 도 3을 참조하여 상세하게 설명한다. The processor 220 may extract a plurality of pedestrians from the image data according to the execution of the collision risk prediction program 300. [ The processor 220 can detect the possibility of collision by comparing the moving direction of the camera module 240 that captured the image data with the moving direction of each of the plurality of extracted pedestrians. At this time, the collision risk prediction program 300 will be described in detail with reference to FIG.

도 3은 본 발명의 일 실시예에 따른 충돌 위험 예측 프로그램(300)의 블록도이다. 3 is a block diagram of a collision risk prediction program 300 according to an embodiment of the present invention.

충돌 위험 예측 프로그램(300)은 카메라 움직임 추정 모듈(320), 3차원 공간 구축 모듈(321), 차량 움직임 추정 모듈(322), 차량 이동경로 예측 모듈(323), 보행자 검출 모듈(330), 보행자 움직임 추정 모듈(331), 보행자 이동경로 예측 모듈(332) 및 충돌 판단 모듈(340)을 포함할 수 있다. The collision risk prediction program 300 includes a camera motion estimation module 320, a three-dimensional space construction module 321, a vehicle motion estimation module 322, a vehicle movement path prediction module 323, a pedestrian detection module 330, A motion estimation module 331, a pedestrian movement path prediction module 332, and a conflict determination module 340.

또한, 충돌 위험 예측 프로그램(300)을 영상 데이터(310)로부터 보행자의 충돌 가능성을 감지할 수 있다. 이때, 영상 데이터(310)는 충돌 위험 경고 장치(210)에 연결된 카메라 모듈(240)로부터 수집된 것이거나, 별도의 카메라 또는 카메라 모듈을 통하여 촬영된 이후 충돌 위험 경고 장치(210)로 전달된 것일 수 있다. 또한, 영상 데이터(310)는 카메라 모듈(240)을 포함하는 별도의 장치로부터 수집된 후 충돌 위험 경고 장치(210)로 전달된 것일 수 있다. 예를 들어, 영상 데이터(310)는 주행 중인 차량에 부착된 블랙박스 장치에 포함된 카메라 모듈(240)로부터 실시간으로 수집되어 충돌 위험 경고 장치(210)로 전달된 것일 수 있다.In addition, the collision risk prediction program 300 can detect the possibility of a collision of the pedestrian from the image data 310. The image data 310 may be acquired from the camera module 240 connected to the collision risk warning device 210 or may be captured through a separate camera or camera module and then transmitted to the collision risk warning device 210 . In addition, the image data 310 may be collected from a separate device including the camera module 240 and then transmitted to the collision risk warning device 210. For example, the image data 310 may be collected in real time from the camera module 240 included in the black box device attached to the running vehicle and transmitted to the collision risk warning device 210.

먼저, 프로세서(220)는 보행자 검출 모듈(330)을 통하여, 영상 데이터(310)에서 복수의 보행자 객체를 추출할 수 있다.First, the processor 220 can extract a plurality of pedestrian objects from the image data 310 through the pedestrian detection module 330.

구체적으로 프로세서(220)는 영상 데이터(310)에 포함된 복수의 프레임을 슬라이딩 윈도우(sliding window) 기법을 통하여 복수의 윈도우로 구분할 수 있다. 이때, 슬라이딩 윈도우 기법은 다중 크기(multi-scale)를 고려할 수 있다. 그러므로 윈도우의 크기는 미리 정해진 초깃값부터 미리 정해진 초깃값의 특정 배수가 될 수 있다. 또한, 각 윈도우의 크기는 상이할 수 있으며, 시간상으로 앞서 추출된 윈도우와 미리 정해진 프레임만큼 오버 랩(overlap)되어 추출될 수 있다.Specifically, the processor 220 can divide a plurality of frames included in the image data 310 into a plurality of windows through a sliding window technique. At this time, the sliding window technique can consider multi-scale. Therefore, the size of the window may be a predetermined multiple of a predetermined value from a predetermined value. In addition, the size of each window may be different, and may be extracted overlapping with the previously extracted window in time by a predetermined frame.

예를 들어, 윈도우의 크기는 미리 정해진 초깃값인 5 프레임부터 1.2배수인 6프레임 사이의 한 값이 될 수 있다. 또한, 오버랩의 크기는 1 이상 윈도우의 크기 미만이 될 수 있다.For example, the size of the window may be a value between 5 frames, which is a predetermined threshold value, and 6 frames, which is a multiple of 1.2. Also, the size of the overlap may be less than the size of one or more windows.

또한, 프로세서(220)는 각 윈도우에 포함된 프레임으로부터 특징을 추출할 수 있다. 이때, 특징은 HoG(histogram of gradient), 엣지(edge) 정보 및 색상 히스토그램 등이 될 수 있다. 그러므로 프로세서(220)는 HoG(histogram of gradient), 엣지 정보 및 색상 히스토그램 중 하나 이상의 특징을 추출하고 추출된 특징에 기초하여 해당 윈도우에 대응하는 특징 벡터를 생성할 수 있다.In addition, the processor 220 may extract features from the frames contained in each window. In this case, the feature may be a histogram of gradient (HoG), edge information, and a color histogram. Thus, the processor 220 may extract one or more features of a histogram of gradient (HoG), edge information, and color histogram, and generate a feature vector corresponding to the window based on the extracted feature.

프로세서(220)는 미리 학습된 객체 인식 모델과 각 윈도우에 대응하여 추출된 특징 벡터를 비교할 수 있다. 이때, 미리 학습된 객체 인식 모델은 분류(classification) 또는 군집화(clustering)를 위한 기계학습(machine learning) 알고리즘에 기초하여 생성된 것일 수 있다. 예를 들어, 미리 학습된 객체 인식 모델은 서포트 벡터 머신(support vector machine) 및 신경망(neural network)에 기초하여 생성된 것일 수 있다.The processor 220 can compare the extracted object recognition model with the extracted feature vector corresponding to each window. At this time, the pre-learned object recognition model may be generated based on a machine learning algorithm for classification or clustering. For example, the pre-learned object recognition model may be generated based on a support vector machine and a neural network.

프로세서(220)는 미리 학습된 객체 인식 모델과 각 윈도우에 대응하는 특징 벡터 간의 유사도를 산출할 수 있다. 그리고 프로세서(220)는 산출된 유사도가 미리 정해진 값 이상인 경우, 해당 윈도우에 보행자 객체가 있다고 판단할 수 있다. 그리고 프로세서(220)는 보행자를 포함한 윈도우를 후보 영역으로 추출할 수 있다. The processor 220 may calculate the degree of similarity between the object recognition model previously learned and the feature vectors corresponding to the respective windows. If the calculated degree of similarity is equal to or greater than a predetermined value, the processor 220 can determine that a pedestrian object exists in the corresponding window. The processor 220 can extract the window including the pedestrian into the candidate area.

도 4는 본 발명의 일 실시예에 따른 영상 데이터(310)에서 추출된 보행자 객체의 예시도이다. 4 is an exemplary view of a pedestrian object extracted from the image data 310 according to an embodiment of the present invention.

예를 들어, 프로세서(220)는 객체 인식 모델을 통하여 윈도우에 포함된 하나의 프레임별로 보행자 객체를 추출할 수 있다. 프로세서(220)는 추출된 보행자 객체를 포함하는 프레임을 후보 영역으로 추출할 수 있다. 그리고 프로세서(220)는 도 4의 (a) 및 (b)와 같이, 후보 영역에서 추출된 보행자의 영역을 사각형으로 표시할 수 있다.For example, the processor 220 may extract a pedestrian object for each frame included in the window through the object recognition model. The processor 220 may extract a frame including the extracted pedestrian object as a candidate area. 4A and 4B, the processor 220 may display the area of the pedestrian extracted from the candidate area as a rectangle.

이때, 한 명의 보행자는 복수의 후보 영역에 연속적으로 추출될 수 있다. 또한, 영상 데이터(310)는 주행 중인 차량에서 촬영한 것이기 때문에 각각의 후보 영역에 포함된 동일한 보행자의 크기 및 위치는 각각 상이할 수 있다.At this time, one pedestrian can be continuously extracted in a plurality of candidate regions. In addition, since the image data 310 is taken by a moving vehicle, the size and position of the same pedestrian included in each candidate region may be different from each other.

그러므로 영상 데이터(310)로부터 복수의 후보 영역이 추출되면, 프로세서(220)는 추출된 복수의 후보 영역 중 인접된 후보 영역 간의 유사도를 산출할 수 있다. 그리고 프로세서(220)는 인접된 후보 영역에서 추출된 보행자가 동일한 보행자인지 여부를 판단할 수 있다.Therefore, when a plurality of candidate regions are extracted from the image data 310, the processor 220 can calculate the similarity between adjacent candidate regions out of the extracted plurality of candidate regions. The processor 220 may then determine whether the pedestrian extracted in the adjacent candidate region is the same pedestrian.

또는, 프로세서(220)는 복수의 후보 영역 중 연속된 후보 영역으로부터 추출된 보행자의 위치가 유사하거나 일치하거나, 특징 벡터에 대응하는 이동방향이 매칭되는 경우, 동일한 보행자로 판단할 수 있다.Alternatively, the processor 220 may determine that the positions of the pedestrians extracted from the continuous candidate regions among the plurality of candidate regions are similar or coincident, or the moving directions corresponding to the feature vectors are matched, as the same pedestrian.

이러한 과정을 통하여, 프로세서(220)는 영상 데이터(310)로부터 복수의 후보 보행자 객체를 추출할 수 있다.Through this process, the processor 220 can extract a plurality of candidate pedestrian objects from the image data 310. [

그리고 프로세서(220)는 특정 프레임 내에서 후보 보행자 객체가 추출된 보행자 영역의 무게중심을 해당 후보 보행자의 위치로 추출할 수 있다. 프로세서(220)는 보행자 움직임 추정 모듈(331)을 통하여 복수의 보행자 객체를 추출할 수 있다.Then, the processor 220 can extract the center of gravity of the pedestrian zone in which the candidate pedestrian object is extracted within the specific frame to the position of the candidate pedestrian. The processor 220 can extract a plurality of pedestrian objects through the pedestrian motion estimation module 331. [

구체적으로 프로세서(220)는 보행자 검출 모듈(330)에 포함된 보행자 추적 모델을 이용하여 영상 데이터(310)에 포함된 연속된 프레임 상의 후보 보행자의 영역을 시간상으로 매칭하여 하나의 보행자 객체로 인식할 수 있다. 이때, 보행자 추적 모델은 비선형 동적 모델 또는 선형 동적 모델과 같은 동적 모델을 활용하여 생성될 수 있다. 예를 들어, 동적 모델 또는 Mean-shift 알고리즘, 칼만 필터 및 파티클 필터(particle filter) 중 어느 하나에 기초한 것일 수 있다. Specifically, the processor 220 uses the pedestrian tracking model included in the pedestrian detection module 330 to recognize the area of the candidate pedestrian on the continuous frame included in the image data 310 as a pedestrian object in time . At this time, the pedestrian tracking model can be generated using a dynamic model such as a nonlinear dynamic model or a linear dynamic model. For example, it may be based on either a dynamic model or a mean-shift algorithm, a Kalman filter, and a particle filter.

이하에서는 동적 모델로 칼만 필터를 사용하는 경우를 예로 들어 설명한다. Hereinafter, a case where a Kalman filter is used as a dynamic model will be described as an example.

프로세서(220)는 특정 프레임에서 후보 보행자 객체가 탐지하면, 후보 보행자 객체에 대응하는 후보 보행자 정보를 추출할 수 있다. 이때, 후보 보행자 정보는 후보 보행자의 식별자, 위치 정보 및 이전 프레임에서의 해당 보행자의 위치 및 추적 정보를 포함한다.The processor 220 may extract candidate pedestrian information corresponding to the candidate pedestrian object when the candidate pedestrian object detects the specific frame. At this time, the candidate pedestrian information includes the identifier of the candidate pedestrian, the position information, and the position and tracking information of the corresponding pedestrian in the previous frame.

또한, 후보 보행자 정보는 해당 보행자 객체의 생명 정보를 포함할 수 있다. 이때, 생명 정보는 특정 보행자가 해당 영상 데이터(310)에서 새로 나타났을 때, 높은 값을 가지도록 설정되며, 해당 보행자가 사라졌을 때, 낮은 값을 가지도록 설정될 수 있다. 그러므로 생명 정보가 특정 값 이상인 보행자는 카메라 모듈(240)의 촬영 영역에 새롭게 나타난 보행자일 수 있다. 또한, 생명 정보가 특정 값 이하인 보행자는 카메라 모듈(240)의 촬영 영역을 벗어난 보행자가 될 수 있다.In addition, the candidate pedestrian information may include the life information of the pedestrian object. At this time, the life information is set to have a high value when a specific pedestrian newly appears in the corresponding image data 310, and may be set to have a low value when the pedestrian disappears. Therefore, a pedestrian whose life information is a specific value or more may be a pedestrian newly appearing in the photographing area of the camera module 240. In addition, the pedestrian whose life information is less than or equal to a specific value can be a pedestrian out of the shooting area of the camera module 240.

프로세서(220)는 후보 보행자의 정보 및 보행자 추적 모델을 통하여, 해당 보행자 객체를 추적할 수 있다. 이때, 프로세서(220)는 시간적 보행자 객체를 추적하기 위하여 보행자가 일정한 속도를 유지한다고 가정하고, 보행자 추적 모델을 통하여 이전 프레임 및 현재 프레임 또는 이전 윈도우 및 현재 윈도우에서의 위치 변화를 예측할 수 있다.The processor 220 can track the pedestrian object through the information of the candidate pedestrian and the pedestrian tracking model. At this time, the processor 220 can estimate the position change in the previous frame and the current frame, the previous window, and the current window through the pedestrian tracking model, assuming that the pedestrian maintains a constant velocity to track the temporal pedestrian object.

예를 들어, 프로세서(220)가 제 1 윈도우에서 n 명의 보행자를 추출하고, 제 2 윈도우에서 m 명의 보행자를 추출하였다면, 프로세서(220)는 n X m 크기의 비용 행렬을 생성할 수 있다.For example, if processor 220 extracts n pedestrians in a first window and m pedestrians in a second window, processor 220 may generate a cost matrix of size n X m.

이때, 비용은 특정 보행자에 대응하여 이전 윈도우에서 예측된 위치와 실제 현재 윈도우에서 탐지된 위치가 얼마나 유사한지를 산출한 것이다. 비용은 거리 측정 척도 또는 유사도 측정 척도를 이용하여 산출될 수 있다. 예를 들어, 거리 측정 척도는 유클리디언 거리 및 맨해튼 거리 등이 될 수 있으나, 이에 한정된 것은 아니다. 또한, 유사도 측정 척도는 피어슨 상관계수(Pearson's correlation coefficient), 스피어만 상관계수(Spearman correlation coefficient), 코사인 유사도 및 자카드 계수 등이 될 수 있으나, 이에 한정된 것은 아니다.In this case, the cost is calculated by comparing how the position predicted in the previous window corresponds to the position detected in the actual window corresponding to the specific pedestrian. The cost can be calculated using the distance measurement scale or the similarity measurement scale. For example, the distance measure may be, but is not limited to, Euclidian distance and Manhattan distance. The similarity measure may be, but not limited to, a Pearson's correlation coefficient, a Spearman correlation coefficient, a cosine similarity, and a Jacquard coefficient.

그리고 프로세서(220)는 비용 행렬에 기초하여, 보행자 객체를 추출할 수 있다. 예를 들어, 프로세서(220)는 탐욕(greedy) 알고리즘을 이용한 최소 비용 문제에 기초하여 보행자 객체를 추출할 수 있다.The processor 220 may then extract the pedestrian object based on the cost matrix. For example, processor 220 may extract a pedestrian object based on a least cost problem using a greedy algorithm.

이때, 제 2 윈도우에서 추출된 m이 제 1 윈도우에서 추출된 n보다 클 경우 프로세서(220)는 영상 데이터에 이전 프레임 또는 이전 윈도우에 존재하지 않은 새로운 보행자 객체가 추가되었음을 감지할 수 있다. 또한, 제 2 윈도우에서 추출된 m이 제 1 윈도우에서 추출된 n보다 작을 경우, 프로세서(220)는 이전 프레임에서 감지하였던 보행자 객체가 카메라 모듈(240)의 영역 밖으로 이동한 것으로 판단할 수 있다.At this time, if m extracted from the second window is larger than n extracted from the first window, the processor 220 can detect that a new pedestrian object that is not present in the previous frame or the previous window is added to the image data. If m extracted from the second window is smaller than n extracted from the first window, the processor 220 may determine that the pedestrian object detected in the previous frame has moved outside the area of the camera module 240. [

그러므로 프로세서(220)는 카메라 모듈(240)의 영역 밖으로 이동한 것으로 추적되는 보행자 객체의 생명 주기를 감소시키거나, 미리 정해진 값으로 설정할 수 있다. 그리고 프로세서(220)는 생명 주기가 미리 정해진 값 이하인 보행자 객체에 대한 추적을 종료할 수 있다.Thus, the processor 220 may reduce the life cycle of the pedestrian object tracked as moving out of the area of the camera module 240, or may set it to a predetermined value. The processor 220 may then terminate tracing for a pedestrian object whose life cycle is less than or equal to a predetermined value.

이때, 영상 데이터(310) 상에 특정 두 보행자 객체가 겹쳐져서 서 있거나, 두 보행자 객체가 엇갈려 지나갈 때 인식된 보행자 객체가 혼동될 수 있다. 그러므로 프로세서(220)는 이전 윈도우에서의 특징 벡터 몇 현재 윈도우에서의 특징 벡터를 비교하고, 칼만 필터를 적용하여 예측된 위치로부터 보행자 객체가 벗어나더라도 추적될 수 있도록 보정할 수 있다. 프로세서(220)는 이러한 과정을 통하여 보행자 객체의 혼동을 방지할 수 있다.At this time, if two specific pedestrian objects are overlapped on the image data 310, or the two pedestrian objects are staggered, the recognized pedestrian object may be confused. Therefore, the processor 220 may compare the feature vectors in some current windows of the feature vectors in the previous window, and apply a Kalman filter to correct them so that they can be tracked even if the pedestrian object is out of the predicted position. The processor 220 can prevent confusion of the pedestrian object through this process.

프로세서(220)는 보행자 검출 모듈(330)을 통하여, 보행자 객체를 추출하고, 보행자 움직임 추정 모듈(331)을 통하여 움직임을 추적한 이후, 보행자 이동경로 예측 모듈(332)을 통하여, 복수의 보행자 객체에 대한 이동경로를 예측할 수 있다. 이때, 보행자 객체에 대한 이동경로 예측 과정은 추후에 설명하기로 한다.The processor 220 extracts a pedestrian object through the pedestrian detection module 330 and traces the motion through the pedestrian motion estimation module 331. The pedestrian motion estimation module 332 then detects a plurality of pedestrian objects Can be predicted. In this case, the route prediction process for the pedestrian object will be described later.

한편, 프로세서(220)는 카메라 움직임 추정 모듈(320)을 통하여, 카메라 모듈(240)의 움직임을 추정할 수 있다. 이를 위하여 프로세서(220)는 영상 데이터(310)로부터 추출된 특징에 대한 정합을 수행할 수 있다. Meanwhile, the processor 220 can estimate the motion of the camera module 240 through the camera motion estimation module 320. For this purpose, the processor 220 may perform matching of features extracted from the image data 310. [

도 5는 본 발명의 일 실시예에 따른 영상 데이터(310)에 대한 특징 정합의 예시도이다. 5 is an exemplary view of feature matching for image data 310 according to an embodiment of the present invention.

구체적으로 프로세서(220)는 특징 기술자(feature descriptor)에 기초하여 영상 데이터(310)에 포함된 특정 두 윈도우 또는 두 프레임 간의 변환 행렬을 산출하기 위하여 기준점을 설정할 수 있다. 예를 들어, 특징 기술자는 Harris 코너, SIFT(Scale-invariant feature transformation), SURF(Speeded-up robust feature)와 같이 크기나 방향 변화 등에 강인한 특성을 가지는 기술자를 사용할 수 있다. Specifically, the processor 220 can set a reference point to calculate a transformation matrix between two specific windows or two frames included in the image data 310 based on a feature descriptor. For example, the feature descriptor may use a descriptor having characteristics such as a Harris corner, a Scale-invariant feature transformation (SIFT), and a Speeded-up robust feature (SURF).

이때, 단일 특징 기술자만을 고려하는 경우 이상 값이 많이 포함될 수 있다. 그러므로 단일 특징 기술자만을 이용하는 경우에는 변환 행렬이 부정확해질 수 있다. 따라서, 본 발명의 일 실시예에 따른 프로세서(220)는 윈도우 또는 프레임 간에 하나 이상의 특징 기술자를 이용하여 변환 행렬을 산출한다. 그리고 프로세서(220)는 들로네 삼각 분할(Delaunay triangulation)에 기초하여 하나 이상의 특징 기술자를 정합할 수 있다. 예를 들어, 프로세서(220)는 10개 이상의 특징 기술자 및 들로네 삼각 분할에 기초하여 두 윈도우 또는 두 프레임 간의 변환 행렬을 산출할 수 있다. At this time, if only a single feature descriptor is considered, many abnormal values may be included. Therefore, if only a single feature descriptor is used, the transformation matrix may become inaccurate. Accordingly, the processor 220 according to an embodiment of the present invention computes a transformation matrix using one or more feature descriptors between windows or frames. And the processor 220 may match one or more feature descriptors based on the Delaunay triangulation. For example, processor 220 may compute a transformation matrix between two windows or two frames based on ten or more feature descriptors and Trine triangulation.

또한, 프로세서(220)는 카메라의 정보 및 RANSAC(random sample consensus) 알고리즘에 기초하여 카메라 모듈(240)의 움직임을 추정할 수 있다. 이때, 카메라의 정보는 영상 데이터(310)를 수집하는 카메라의 초점 거리, 주점 및 설치 정보 등이 포함될 수 있다. 카메라의 설치 정보는 카메라 모듈(240)의 높이 및 각도 등이 될 수 있다. In addition, the processor 220 may estimate the motion of the camera module 240 based on the information of the camera and a random sample consensus (RANSAC) algorithm. At this time, the information of the camera may include a focal distance of the camera for collecting the image data 310, a main point, installation information, and the like. The installation information of the camera may be the height and angle of the camera module 240 and the like.

이때, 카메라의 정보는 충돌 위험 경고 장치(210)의 사용자가 입력한 것일 수 있다. 또는, 카메라의 정보는 영상 데이터(310)의 메타 정보를 통하여 수집하거나, 카메라 모듈(240)이 설치된 차량의 정보를 통하여 유추한 것일 수 있다. At this time, the camera information may be input by the user of the collision risk warning device 210. Alternatively, the information of the camera may be collected through meta information of the image data 310, or analogized through the information of the vehicle in which the camera module 240 is installed.

프로세서(220)는 RANSAC 알고리즘에 기초하여 특징 정합으로 선택된 특징 기술자 쌍 중 랜덤하게 선택하여 두 프레임 간의 3차원 변환 행렬을 산출한다. 그리고 프로세서(220)는 영상 데이터(310)에 포함된 해당 두 윈도우 또는 프레임에 대하여 3차원 변환 행렬 산출 과정을 반복 수행할 수 있다. 프로세서(220)는 반복 수행된 3차원 변환 행렬 산출 과정에서, 최소 오차를 가지는 특징 기술자 쌍이 가장 많이 포함된 변환 행렬을 선택할 수 있다. 그리고 프로세서(220)는 선택된 변환 행렬을 두 윈도우 또는 프레임 간의 카메라 움직임 행렬로 추출할 수 있다. The processor 220 randomly selects one of the pair of feature descriptors selected as the feature matching based on the RANSAC algorithm to calculate a three-dimensional transformation matrix between the two frames. The processor 220 may repeat the three-dimensional transformation matrix calculation process for the two windows or frames included in the image data 310. The processor 220 can select a transformation matrix including the most pairs of feature descriptors having a minimum error in the repeated calculation of the three-dimensional transformation matrix. The processor 220 may then extract the selected transformation matrix as a camera motion matrix between two windows or frames.

이와 같이, 프로세서(220)는 영상 데이터(310)에 포함된 복수의 윈도우 또는 복수의 프레임에 대하여 반복적으로 카메라 움직임을 추정할 수 있다. In this manner, the processor 220 can repeatedly estimate the camera motion for a plurality of windows or a plurality of frames included in the image data 310. [

그리고 프로세서(220)는 칼리브레이션 공식에 기반하여 차량의 움직임 및 보행자 객체의 움직임을 3차원 공간에 사형할 수 있다. 예를 들어, 칼리 브레이션 공식은 [수학식 1] 또는 [수학식 2]와 같다.Then, the processor 220 can execute the motion of the vehicle and the motion of the pedestrian object in the three-dimensional space based on the calibration formula. For example, the calibration formula is as shown in Equation (1) or Equation (2).

Figure pat00001
Figure pat00001

Figure pat00002
Figure pat00002

[수학식 1] 및 [수학식 2]에서 '(X, Y, Z)'는 실제 3차원 좌표이며, '(u, v)' 는 카메라 모듈(240) 상의 2차원 좌표이다. 또한, '[R|t]'는 3차원 회전 변환 행렬이며, 'A'는 카메라 정보 행렬이고, '(cx, cy)'는 카메라 주점, '(fx, fy)'는 카메라 초점 거리이다. '(X, Y, Z)' is an actual three-dimensional coordinate and '(u, v)' is a two-dimensional coordinate on the camera module 240 in Equations (1) and (2). Also, '[R | t]' is the 3D rotation transformation matrix, 'A' is the camera information matrix, '(cx, cy)' is the camera principal point and '(fx, fy)' is the camera focal length.

그리고 프로세서(220)는 산출된 3차원 정보에 기초하여 3차원 그래프를 생성할 수 있다.The processor 220 may generate a three-dimensional graph based on the calculated three-dimensional information.

도 6은 본 발명의 일 실시예에 따른 카메라 모듈(240) 및 보행자 객체의 위치에 대한 예시도이다. 이때, 도 6의 (b)는 도 6의 (a)의 영상 데이터(310)로부터 추출된 카메라 모듈(240) 및 보행자 객체의 3차원 정보를 그래프(600)에 매핑한 것이다. FIG. 6 is an exemplary view of a camera module 240 and a position of a pedestrian object according to an embodiment of the present invention. 6B is a graph 600 illustrating the three-dimensional information of the camera module 240 and the pedestrian object extracted from the image data 310 of FIG. 6A.

도 6의 (b)에서 그래프(600)에서 중앙의 선(620)은 카메라 모듈(240)의 움직임을 나타낸다. 이때, 카메라 모듈(240)은 차량에 부착된 것이므로, 중앙 선(620)은 차량의 움직임을 나타낸 것이 될 수 있다. 또한, 중앙 선(620) 옆의 짧은 실선(640, 650)은 보행자 객체의 움직임을 나타낸다. 도 6의 (b)에서 그래프(600)일 부분을 확대한 확대 그래프(610)를 확인하면, 차량(620)의 옆에 제 1 보행자(640) 및 제 2 보행자(630)의 위치를 확인할 수 있다. In FIG. 6 (b), the center line 620 in the graph 600 represents the movement of the camera module 240. At this time, since the camera module 240 is attached to the vehicle, the center line 620 may indicate the movement of the vehicle. In addition, the short solid lines 640 and 650 near the center line 620 indicate the movement of the pedestrian object. 6B, the position of the first pedestrian 640 and the position of the second pedestrian 630 can be confirmed on the side of the vehicle 620 by confirming the enlarged graph 610 obtained by enlarging a part of the graph 600 have.

한편, 프로세서(220)는 차량 이동경로 예측 모듈(323) 및 보행자 이동경로 예측 모듈(332)을 통하여, 카메라 모듈(240)에 대응하는 차량 및 보행자 객체의 이동경로를 예측할 수 있다. 이때, 프로세서(220)는 앞에서 설명한 바와 같이 동적 모델을 이용할 수 있다. 예를 들어, 동적 모델은 칼만 필터일 수 있다. The processor 220 can predict the movement path of the vehicle and the pedestrian object corresponding to the camera module 240 through the vehicle movement path prediction module 323 and the pedestrian movement path prediction module 332. [ At this time, the processor 220 can use the dynamic model as described above. For example, the dynamic model may be a Kalman filter.

구체적으로 프로세서(220)는 복수의 객체 각각에 대응하는 연속된 3차원 위치 정보를 동적 모델의 입력으로 이용하여 이동경로를 학습시킬 수 있다. 그리고 프로세서(220)는 이를 이용하여 현재 프레임에서 다음 프레임의 위치를 예측할 수 있다. 프로세서(220)는 다시 예측된 프레임의 위치를 다시 동적 모델의 입력으로 하여 동적 모델을 학습시킬 수 있다. 그리고 프로세서(220)는 다음 프레임에서의 해당 객체의 위치를 예측할 수 있다.Specifically, the processor 220 may use the continuous three-dimensional position information corresponding to each of the plurality of objects as an input of the dynamic model to learn the movement path. The processor 220 may then use this to predict the location of the next frame in the current frame. The processor 220 can again learn the dynamic model by using the position of the predicted frame again as the input of the dynamic model. The processor 220 may then predict the location of the object in the next frame.

즉, 프로세서(220)는 t 번 반복하여 해당 객체의 이동경로를 예측할 수 있다. t 값이 너무 작으면, 예측된 위치가 너무 짧을 수 있다. 그리고 t 값이 너무 크면 예측 오차가 누적될 수 있다. 그러므로 t 번은 15 ~ 30 사이의 값을 이용할 수 있다.That is, the processor 220 may repeat the t times to predict the movement path of the object. If the t value is too small, the predicted position may be too short. If the t value is too large, the prediction error can be accumulated. Therefore, a value between 15 and 30 can be used for t times.

프로세서(220)는 앞에서 설명한 동적 모델에 기초하여 방법을 통하여 카메라 모듈(240) 및 보행자 객체의 이동경로를 예측할 수 있다. 그리고 프로세서(220)는 충돌 판단 모듈(340)을 통하여, 카메라 모듈(240)의 이동경로 및 특정 보행자 객체의 이동경로가 교차하는 경우, 해당 보행자 객체의 충돌 위험을 감지할 수 있다.The processor 220 may predict the movement path of the camera module 240 and the pedestrian object through a method based on the dynamic model described above. The processor 220 can detect a collision risk of the pedestrian object when the movement path of the camera module 240 and the movement path of the specific pedestrian object intersect with each other through the collision determination module 340. [

구체적으로 프로세서(220)는 특정 보행자 객체에 대응하는 영역 및 해당 보행자 객체의 예측 경로를 포함하는 영역이 포함되도록 평행 사변형 좌표를 산출할 수 있다. 그리고 프로세서(220)는 차량에 대응하는 예측 경로를 포함하는 사다리꼴 좌표를 산출할 수 있다. 이때, 사다리꼴 영역은 현재 차량의 속도를 고려하여 생성될 수 있다. 예를 들어, 사다리꼴 영역은 차량에서 멀어질수록 점점 넓어지는 형태를 가질 수 있다.Specifically, the processor 220 may calculate parallelogram coordinates so that an area corresponding to a specific pedestrian object and an area including a predicted path of the pedestrian object are included. The processor 220 may then calculate the trapezoidal coordinates including the predicted path corresponding to the vehicle. At this time, the trapezoidal area can be generated considering the current vehicle speed. For example, the trapezoidal area may have a shape that becomes wider as it gets farther away from the vehicle.

프로세서(220)는 평행 사변형 좌표 및 사다리꼴 좌표에 기초하여 겹침 정도를 산출할 수 있다. 그리고 프로세서(220)는 겹침 정도에 기초하여 해당 보행자 객체의 위험도를 산출할 수 있다. 프로세서(220)는 해당 보행자 객체의 위험도가 미리 정해진 값 이상인 경우, 해당 보행자 객체의 상태를 위험 상태로 분류할 수 있다. 예를 들어, 프로세서(220)는 겹침 정도에 기초하여 위험도를 산출하고, 위험도가 30% 이상인 경우, 잠재적인 위험 상태로 판단할 수 있다.The processor 220 may calculate the degree of overlap based on the parallelogram and trapezoid coordinates. The processor 220 may then calculate the risk of the pedestrian object based on the degree of overlap. The processor 220 can classify the state of the pedestrian object into a dangerous state when the risk of the pedestrian object is greater than or equal to a predetermined value. For example, the processor 220 may calculate a risk based on the degree of overlap, and may determine a potential risk if the risk is greater than 30%.

본 발명의 또 다른 실시예에서는 프로세서(220)는 특정 보행자 객체에 대응하는 이동경로 및 차량의 이동경로의 결합 확률을 산출하여 해당 보행자 객체의 충돌 위험 여부를 판단할 수 있다.In another embodiment of the present invention, the processor 220 may determine the risk of collision of the pedestrian object by calculating the combination probability of the movement path and the vehicle movement path corresponding to the specific pedestrian object.

예를 들어, 프로세서(220)는 해당 보행자 객체의 이동경로 및 차량의 이동경로를 현재 속도의 변화량에 기초한 정규 분포 형태로 표현할 수 있다. 그리고 프로세서(220)는 이를 이용하여, 두 이동경로 간의 결합확률을 산출할 수 있다. 프로세서(220)는 결합확률이 미리 정해진 값 이상인 경우 해당 보행자 객체를 잠재적인 위험 상태로 판단할 수 있다.For example, the processor 220 may express the moving path of the pedestrian object and the moving path of the vehicle in a normal distribution form based on the change amount of the current speed. Then, the processor 220 can calculate the coupling probability between the two movement paths. The processor 220 may determine that the pedestrian object is a potentially dangerous state if the joint probability is greater than or equal to a predetermined value.

그리고 프로세서(220)는 해당 보행자 객체가 위험 잠재적인 위험 상태 또는 위험 상태로 판단되면, 충돌 위험을 경고할 수 있다.The processor 220 may then warn of the risk of a collision if the pedestrian object is determined to be a potentially dangerous or dangerous state.

예를 들어, 프로세서(220)는 충돌 위험 경고 장치(210)에 포함된 음성 모듈(미도시)을 통하여 충돌 위험을 경고할 수 있다. 또는, 프로세서(220)는 충돌 위험 경고 장치(210)에 포함된 디스플레이 모듈(미도시)에 충돌 위험 경고 및 보행자의 정보를 디스플레이할 수 있다.For example, the processor 220 may warn of a crash risk through a voice module (not shown) included in the crash risk warning device 210. Alternatively, the processor 220 may display a crash risk warning and pedestrian information in a display module (not shown) included in the crash risk warning device 210.

이 밖에도 통신모듈(미도시)을 통하여, 차량과 연결된 경우, 프로세서(220)는 차량에 충돌 위험 경고 및 보행자의 정보를 전달하여 차량이 운전자에게 충돌 위험을 경고하도록 할 수 있다. 또는, 프로세서(220)는 영상 데이터(310)를 수집하는 블랙박스 장치 또는 충돌 위험 경고 장치(210)와 연결된 내비게이션 장치 등에 충돌 위험 경고 및 보행자의 정보를 전달할 수 있다.In addition, when the vehicle is connected to the vehicle through a communication module (not shown), the processor 220 may transmit a warning of collision risk and pedestrian information to the vehicle so that the vehicle warns the driver of the risk of collision. Alternatively, the processor 220 may transmit collision risk warning and pedestrian information to a black box device for collecting the image data 310 or a navigation device connected to the collision risk warning device 210.

한편, 프로세서(220)는 디스플레이 모듈(미도시) 또는 충돌 위험 경고 장치(210)와 연결된 디스플레이 장치를 통하여, 추출된 보행자를 영상 데이터에 표시할 수 있다. 이때, 디스플레이 장치는 블랙박스 장치 및 내비게이션 장치와 같이 디스플레이 모듈을 포함하는 별도의 장치일 수 있으며, 증강 현실을 디스플레이할 수 있는 헤드업 디스플레이 장치일 수 있으나, 이에 한정된 것은 아니다.Meanwhile, the processor 220 may display the extracted pedestrian on the image data through a display module (not shown) or a display device connected to the collision risk warning device 210. At this time, the display device may be a separate device including a display module such as a black box device and a navigation device, and may be a head-up display device capable of displaying an augmented reality, but is not limited thereto.

도 7 및 도 8은 본 발명의 일 실시예에 따른 식별된 보행자 객체가 표시된 영상 데이터에 대한 예시도이다. FIGS. 7 and 8 are illustrations of image data in which an identified pedestrian object is displayed according to an embodiment of the present invention.

프로세서(220)는 추출된 보행자 객체의 위치 정보 및 식별 정보에 기초하여 레이어를 생성할 수 있다. 예를 들어, 도 7을 참조하면 프로세서(220)는 영상 데이터에 보행자 개체의 위치가 직사각형으로 나타날 수 있도록 레이어를 생성할 수 있다. The processor 220 may generate a layer based on the extracted positional information and identification information of the pedestrian object. For example, referring to FIG. 7, the processor 220 may generate a layer so that the position of a pedestrian object may appear as a rectangle in the image data.

또한, 프로세서(220)는 보행자 객체의 위치에 보행자 객체의 이동경로를 표시할 수 있다. 예를 들어, 프로세서(220)는 "o" 형태의 점들을 연속적으로 배치시켜 보행자 객체의 이동 방향을 표시할 수 있다.In addition, the processor 220 may display the movement path of the pedestrian object at the position of the pedestrian object. For example, the processor 220 may position the points of the "o" shape continuously to indicate the direction of movement of the pedestrian object.

도 7의 (a)를 참조하면, 프로세서(220)는 보행자(700)의 위치 및 이동경로를 표시할 수 있다. Referring to FIG. 7A, the processor 220 can display the position and the movement path of the pedestrian 700.

또한, 도 7의 (b), (c) 및 (d)를 참조하면, 영상 데이터에 복수의 보행자를 포함한다면, 프로세서(220)는 각각의 보행자의 직사각형 색이 상이하도록 레이어를 생성할 수 있다. 그리고 도 7의 (b)및 (c)를 참조하면, 프로세서(220)는 복수의 보행자 중 이동 중인 보행자(710, 720)만 이동경로를 표시할 수 있다. 또는 프로세서(220)는 도 7의 (b)와 같이, 복수의 보행자(730, 740) 모두에 이동경로를 표시할 수 있다.7 (b), (c), and (d), if the image data includes a plurality of pedestrians, the processor 220 can generate the layers so that the colors of the rectangles of the respective pedestrians are different . 7 (b) and 7 (c), the processor 220 can display only the moving path of the moving pedestrians 710 and 720 among the plurality of pedestrians. Alternatively, the processor 220 may display the movement path to all of the plurality of pedestrians 730 and 740, as shown in FIG. 7B.

프로세서(220)는 각 보행자의 위험도에 기초하여 보행자 중 위험도 높은 보행자를 별도로 표시하도록 레이어를 생성할 수 있다.The processor 220 may create a layer to separately display the high-risk pedestrian of the pedestrian based on the risk of each pedestrian.

프로세서(220)는 투명도 및 그라데이션을 적용하여 보행자의 이동경로 및 위치를 표현할 수 있다. 예를 들어, 프로세서(220)는 보행자의 위치와 가까운 곳은 진한 색으로 나타내며, 보행자의 위치와 떨어진 부분은 연한 색으로 나타낼 수 있다. 또한, 프로세서(220)는 보행자의 위치를 나타내는 삼각형을 보행자의 윗부분에 표시할 수 있다.The processor 220 can express the movement path and position of the pedestrian by applying transparency and gradation. For example, the processor 220 may be represented by a dark color near the position of the pedestrian, and may be represented by a light color at a position away from the position of the pedestrian. In addition, the processor 220 can display a triangle indicating the position of the pedestrian on the upper part of the pedestrian.

예를 들어, 도 8을 참조하면 프로세서(220)는 보행자(800)의 무게중심을 투명도가 적용된 빨간 색으로 표시되도록 할 수 있다. 그리고 프로세서(220)는 보행자(800)가 멀어질수록 빨간색이 옅어지고, 노란색이 진해지도록 그라데이션을 적용할 수 있다.For example, referring to FIG. 8, the processor 220 may cause the center of gravity of the pedestrian 800 to be displayed in red with transparency. In addition, the processor 220 may apply a gradient so that the red color becomes lighter and the yellow color becomes darker as the pedestrian 800 moves further away.

프로세서(220)는 영상 데이터에 앞에서 설명한 레이어를 병합할 수 있다. 그리고 프로세서(220)는 디스플레이 모듈(미도시)을 통하여 레이어가 병합된 영상 데이터를 디스플레이하거나, 별도의 장치로 레이어가 병합된 영상 데이터를 전달할 수 있다.The processor 220 may merge the previously described layers into the image data. In addition, the processor 220 may display the layered image data through a display module (not shown) or may transmit the layered image data to a separate device.

한편, 프로세서(220)는 기수집된 학습 영상 데이터를 이용하여 객체 인식 모델을 생성할 수 있다. 이때, 기수집된 학습 영상 데이터는 객체 인식 모델을 생성하기 위하여 수집한 영상 데이터 또는 과거에 수집된 주행 영상 데이터가 될 수 있다. Meanwhile, the processor 220 can generate an object recognition model using the collected learning image data. At this time, the collected learning image data may be the image data collected to generate the object recognition model or the traveling image data collected in the past.

구체적으로 프로세서(220)는 기수집된 학습 영상 데이터 중 보행자 객체가 포함된 프레임을 추출할 수 있다. 그리고 프로세서(220)는 추출된 보행자 객체가 포함된 프레임과 분류 또는 군집화를 위한 기계학습 알고리즘에 기초하여 객체 인식 모델을 생성할 수 있다.Specifically, the processor 220 can extract a frame including a pedestrian object from the collected learning image data. The processor 220 may then generate an object recognition model based on a frame containing the extracted pedestrian object and a machine learning algorithm for classification or clustering.

그리고 프로세서(220)는 보행자 검출 모듈(330)이 생성된 객체 인식 모델을 이용할 수 있도록 메모리에 저장할 수 있다.The processor 220 may store the object recognition model in the memory so that the pedestrian detection module 330 can use the generated object recognition model.

다음은 도 9에 기초하여, 본 발명의 일 실시예에 따른 충돌 위험 경고 장치(210)의 충돌 위험 감지 방법을 설명한다.Next, a collision risk detection method of the collision risk warning device 210 according to an embodiment of the present invention will be described with reference to FIG.

도 9는 본 발명의 일 실시예에 따른 충돌 위험 경고 장치(210)의 충돌 위험 감지 방법에 대한 순서도이다.9 is a flowchart of a collision risk detection method of the collision risk warning device 210 according to an embodiment of the present invention.

충돌 위험 경고 장치(210)는 영상 데이터로부터 하나 이상의 객체를 추출한다(S900).The collision risk warning device 210 extracts one or more objects from the image data (S900).

구체적으로 충돌 위험 경고 장치(210)는 슬라이딩 윈도우 기법에 기초하여 영상 데이터에 포함된 하나 이상의 윈도우로부터 후보 객체를 추출할 수 있다. 그리고 충돌 위험 경고 장치(210)는 후보 객체가 추출된 복수의 윈도우를 통합하여 복수의 객체를 추출할 수 있다. 충돌 위험 경고 장치(210)는 추출된 객체를 각각 추적할 수 있다. 이때, 하나 이상의 윈도우의 크기는 각각 상이하거나, 동일할 수 있다.Specifically, the collision risk warning device 210 may extract a candidate object from one or more windows included in the image data based on the sliding window technique. The collision risk warning device 210 may extract a plurality of objects by combining a plurality of windows from which candidate objects are extracted. The collision risk warning device 210 can track the extracted objects, respectively. At this time, the sizes of the one or more windows may be different from each other or may be the same.

하나 이상의 객체가 추출된 이후, 충돌 위험 경고 장치(210)는 영상 데이터로부터 3차원 공간 정보를 재구성한다(S910). 그리고 충돌 위험 경고 장치(210)는 들로네 삼각 분할(Delaunay triangulation)에 기초하여 영상 데이터에 포함된 각 프레임 및 각 프레임의 이전 프레임에 대하여 미리 정해진 개수 이상의 특징 기술자를 포함하는 변환 행렬을 산출할 수 있다.After one or more objects have been extracted, the collision risk warning device 210 reconstructs three-dimensional spatial information from the image data (S910). The collision risk warning device 210 may calculate a transformation matrix including a predetermined number of feature descriptors for each frame included in the image data and the previous frame of each frame based on Delaunay triangulation .

충돌 위험 경고 장치(210)는 3차원 공간 정보 및 기생성된 이동경로 예측 모델에 기초하여 객체 각각의 이동경로를 예측한다(S920).The collision risk warning device 210 predicts the movement path of each object based on the three-dimensional spatial information and the created movement path prediction model (S920).

또한, 충돌 위험 경고 장치(210)는 3차원 공간 정보 및 기생성된 이동경로 예측 모델에 기초하여 영상 데이터를 촬영한 카메라 모듈(240)의 이동경로를 예측한다(S930). 이때, 충돌 위험 경고 장치(210)는 영상 데이터에 포함된 미리 정해진 개수의 프레임의 재구성된 3차원 공간 정보를 반복적으로 동적 모델에 입력하여, 객체 각각에 대한 이동경로 또는 카메라 모듈(240)의 이동경로를 예측할 수 있다.In addition, the collision risk warning device 210 predicts the movement path of the camera module 240 that has captured the image data based on the three-dimensional spatial information and the generated motion path prediction model (S930). At this time, the collision risk warning device 210 repeatedly inputs the reconstructed three-dimensional spatial information of a predetermined number of frames included in the image data to the dynamic model so that the movement path for each object or the movement of the camera module 240 The path can be predicted.

그리고 충돌 위험 경고 장치(210)는 하나 이상의 객체 중 카메라 모듈(240)의 이동경로와 이동경로가 교차하는 객체가 존재하는지 여부를 판단한다(S940).In step S940, the collision risk warning device 210 determines whether there is an object that intersects the movement path and the movement path of the camera module 240 among at least one object.

다음은 도 10을 참조하여 충돌 위험 경고 장치(210)의 이동경로 예측 모델 생성 방법을 설명한다.Next, a method of generating a movement path prediction model of the collision risk warning device 210 will be described with reference to FIG.

도 10은 본 발명의 일 실시예에 따른 충돌 위험 경고 장치(210)의 객체 인식 모델 생성 방법에 대한 순서도이다.10 is a flowchart illustrating a method of generating an object recognition model of the collision risk warning device 210 according to an embodiment of the present invention.

충돌 위험 경고 장치(210)는 기수집된 영상 데이터 집합으로부터 객체가 포함된 학습 영상 데이터를 추출한다(S1000).The collision risk warning device 210 extracts learning image data including an object from the collected image data sets (S1000).

그리고 충돌 위험 경고 장치(210)는 학습 영상 데이터 및 기계학습 알고리즘에 기초하여 객체 인식 모델을 생성한다(S1010). 이때, 객체 인식 모델은 영상 데이터로부터 복수의 객체를 추출하는 것이다. 그리고 기계학습 알고리즘은 신경망 알고리즘, 지지 벡터 머신 알고리즘 및 클러스터링 알고리즘 중 어느 하나이다.The collision risk warning device 210 generates an object recognition model based on the learning image data and the machine learning algorithm (S1010). At this time, the object recognition model extracts a plurality of objects from the image data. The machine learning algorithm is either a neural network algorithm, a support vector machine algorithm, or a clustering algorithm.

즉, 충돌 위험 경고 장치(210)는 영상 데이터에 대응하여 재구성된 3차원 공간 정보에 기초하여 이동경로가 예측된 이후, 영상 데이터를 촬영한 카메라 모듈(240)에 대한 이동경로와 비교하고, 카메라 모듈(240)에 대한 이동경로와 객체가 충돌 위험 객체로 추출될 수 있다.That is, after the movement route is predicted based on the reconstructed three-dimensional spatial information corresponding to the image data, the collision risk warning device 210 compares the movement route to the camera module 240, The movement path and object to the module 240 may be extracted as a collision risk object.

본 발명의 일 실시예에 따른 충돌 위험 경고 장치(210) 및 방법은 2차원 영상 데이터로부터 3차원 공간 정보를 복원하고, 보행자와 차량의 충돌 위험을 감지할 수 있다. 또한, 충돌 위험 경고 장치(210) 및 방법은 차량의 움직임에 의하여 발생할 수 있는 잡음을 제거할 수 있다. 그러므로 충돌 위험 경고 장치(210) 및 방법은 위험 보행자에 대한 오인식을 감소시켜 사고 위험을 줄이고, 운전자의 안전의 도움이 될 수 있다.The collision risk warning device 210 and method according to an embodiment of the present invention can restore 3D space information from 2D image data and detect a collision risk between a pedestrian and a vehicle. In addition, the collision risk warning device 210 and the method may eliminate noise that may be caused by movement of the vehicle. Therefore, the collision risk warning device 210 and method can reduce the mistrust of a dangerous pedestrian, reduce the risk of accident, and can help the driver's safety.

본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. One embodiment of the present invention may also be embodied in the form of a recording medium including instructions executable by a computer, such as program modules, being executed by a computer. Computer readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. The computer-readable medium may also include computer storage media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.

본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다.While the methods and systems of the present invention have been described in connection with specific embodiments, some or all of those elements or operations may be implemented using a computer system having a general purpose hardware architecture.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.It will be understood by those skilled in the art that the foregoing description of the present invention is for illustrative purposes only and that those of ordinary skill in the art can readily understand that various changes and modifications may be made without departing from the spirit or essential characteristics of the present invention. will be. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. For example, each component described as a single entity may be distributed and implemented, and components described as being distributed may also be implemented in a combined form.

본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is defined by the appended claims rather than the detailed description and all changes or modifications derived from the meaning and scope of the claims and their equivalents are to be construed as being included within the scope of the present invention do.

200: 충돌 위험 경고 시스템
210: 충돌 위험 경고 장치
220: 프로세서
230: 메모리
240: 카메라 모듈
200: crash hazard warning system
210: crash hazard warning device
220: Processor
230: Memory
240: Camera module

Claims (15)

충돌 위험 경고 장치에 있어서,
충돌 위험 예측 프로그램이 저장된 메모리, 및
상기 메모리에 저장된 프로그램을 수행하는 프로세서를 포함하되,
상기 프로세서는 상기 프로그램의 실행에 따라, 객체 인식 모델에 기초하여 영상 데이터로부터 하나 이상의 객체를 추출하고, 상기 영상 데이터로부터 3차원 공간 정보를 재구성하며, 상기 3차원 공간 정보 및 이동경로 예측 모델에 기초하여 상기 객체 각각의 이동경로 및 상기 영상 데이터를 촬영한 카메라의 이동경로를 예측하고, 상기 하나 이상의 객체 중 상기 카메라의 이동경로와 이동경로가 교차하는 객체가 존재하는지 여부를 판단하는, 충돌 위험 경고 장치.
In a crash hazard warning device,
The crash risk prediction program stores the memory, and
A processor for executing a program stored in the memory,
The processor extracts one or more objects from the image data based on the object recognition model, reconstructs the three-dimensional spatial information from the image data, and based on the three-dimensional spatial information and the motion path prediction model, And estimating a movement path of each of the at least one object and a moving path of a camera that has captured the image data, Device.
제 1 항에 있어서,
상기 프로세서는 슬라이딩 윈도우 기법에 기초하여 상기 영상 데이터에 포함된 복수의 윈도우로부터 하나 이상의 객체를 추출하고, 상기 복수의 윈도우를 시간적으로 매칭하여 상기 객체를 각각 추적하되,
상기 영상 데이터는 하나 이상의 프레임을 포함하며,
상기 윈도우는 각각 동일하거나, 상이한 개수의 프레임을 포함하는, 충돌 위험 경고 장치.
The method according to claim 1,
Wherein the processor is configured to extract one or more objects from a plurality of windows included in the image data based on a sliding window technique and to track each object in time by matching the plurality of windows,
Wherein the image data comprises one or more frames,
Wherein the window comprises the same or a different number of frames, respectively.
제 2 항에 있어서,
상기 프로세서는 상기 하나 이상의 객체에 기초하여 비용 행렬을 생성하고, 상기 비용 행렬 및 탐욕 알고리즘에 기초하여 상기 객체 각각에 대한 추적을 수행하되,
상기 비용 행렬은 상기 객체 각각에 대응하여 예측된 위치 및 실제 위치의 유사도를 산출하여 생성하는 것인, 충돌 위험 경고 장치.
3. The method of claim 2,
The processor generating a cost matrix based on the one or more objects, performing tracking on each of the objects based on the cost matrix and the greedy algorithm,
Wherein the cost matrix computes and generates a similarity between the predicted position and the actual position corresponding to each of the objects.
제 2 항 있어서,
상기 프로세서는 동적 모델을 통하여 상기 복수의 윈도우를 통합하여, 상기 하나 이상의 객체를 추출하되,
상기 동적 모델은 Mean-shift 알고리즘, 칼만 필터(Kalman filter) 및 파티클 필터(particle filter) 중 어느 하나에 기초한 것인, 충돌 위험 경고 장치.
3. The method of claim 2,
The processor integrates the plurality of windows through a dynamic model to extract the one or more objects,
Wherein the dynamic model is based on any one of a Mean-shift algorithm, a Kalman filter, and a particle filter.
제 2 항에 있어서,
상기 프로세서는 상기 영상 데이터에 포함된 미리 정해진 개수의 프레임의 재구성된 3차원 공간 정보를 반복적으로 동적 모델에 입력하여, 상기 객체 각각에 대한 이동경로 또는 상기 카메라의 이동경로를 예측하되,
상기 동적 모델은 Mean-shift 알고리즘, 칼만 필터(Kalman filter) 및 파티클 필터(particle filter) 중 어느 하나에 기초한 것인, 충돌 위험 경고 장치.
3. The method of claim 2,
The processor repeatedly inputs reconstructed three-dimensional spatial information of a predetermined number of frames included in the image data to the dynamic model to predict a movement path for each of the objects or a movement path of the camera,
Wherein the dynamic model is based on any one of a Mean-shift algorithm, a Kalman filter, and a particle filter.
제 1 항에 있어서,
상기 프로세서는 들로네 삼각 분할(Delaunay triangulation)에 기초하여 상기 영상 데이터에 포함된 각 프레임 및 상기 각 프레임의 이전 프레임에 대하여 10개 이상의 특징 기술자를 포함하는 변환 행렬을 산출하고, 상기 산출된 변환 행렬에 기초하여 상기 객체 각각의 이동경로 및 상기 카메라의 이동경로를 예측하는, 충돌 위험 경고 장치.
The method according to claim 1,
The processor calculates a transform matrix including at least 10 feature descriptors for each frame included in the image data and a previous frame of each frame based on Delaunay triangulation, And predicts a moving path of each of the objects and a moving path of the camera based on the moving path of the object.
제 1 항에 있어서,
상기 프로세서는 기수집된 영상 데이터 집합으로부터 객체가 포함된 학습 영상 데이터를 추출하고, 상기 학습 영상 데이터 및 기계학습 알고리즘에 기초하여 상기 객체 인식 모델을 생성하되,
상기 기계학습 알고리즘은 신경망 알고리즘, 지지 벡터 머신 알고리즘 및 클러스터링 알고리즘 중 어느 하나인, 충돌 위험 경고 장치.
The method according to claim 1,
Wherein the processor extracts learning image data including an object from the collected image data set and generates the object recognition model based on the learning image data and the machine learning algorithm,
Wherein the machine learning algorithm is one of a neural network algorithm, a support vector machine algorithm, and a clustering algorithm.
제 1 항에 있어서,
상기 프로세서는 상기 객체 각각에 대응하는 레이어를 생성하고, 상기 영상 데이터에 상기 레이어를 병합하되,
상기 레이어는 상기 객체의 식별 정보 및 상기 객체에 대응하여 예측된 이동경로를 포함하는, 충돌 위험 경고 장치.
The method according to claim 1,
Wherein the processor generates a layer corresponding to each of the objects, merges the layer into the image data,
Wherein the layer includes identification information of the object and a predicted travel path corresponding to the object.
제 1 항에 있어서,
상기 카메라는 하나의 렌즈를 포함하는 단안 카메라이며,
상기 영상 데이터로부터 추출된 객체는 도로 상의 보행자이고,
상기 영상 데이터는 상기 단안 카메라를 이용하여 차량에서 촬영된 2차원 영상 데이터인, 충돌 위험 경고 장치.
The method according to claim 1,
Wherein the camera is a monocular camera including one lens,
Wherein the object extracted from the image data is a pedestrian on the road,
Wherein the image data is two-dimensional image data photographed in a vehicle using the monocular camera.
충돌 위험 경고 장치의 충돌 위험 감지 방법에 있어서,
영상 데이터로부터 하나 이상의 객체를 추출하는 단계;
상기 영상 데이터로부터 3차원 공간 정보를 재구성하는 단계;
상기 3차원 공간 정보 및 기생성된 이동경로 예측 모델에 기초하여 상기 객체 각각의 이동경로를 예측하는 단계;
상기 3차원 공간 정보 및 상기 기생성된 이동경로 예측 모델에 기초하여 상기 영상 데이터를 촬영한 카메라의 이동경로를 예측하는 단계; 및
상기 하나 이상의 객체 중 상기 카메라의 이동경로와 이동경로가 교차하는 객체가 존재하는지 여부를 판단하는 단계를 포함하는, 충돌 위험 감지 방법.
A method for detecting a collision risk of a collision hazard warning device,
Extracting one or more objects from the image data;
Reconstructing three-dimensional spatial information from the image data;
Estimating a movement path of each of the objects based on the three-dimensional spatial information and the created motion path prediction model;
Estimating a moving path of a camera that has photographed the image data based on the three-dimensional spatial information and the pre-generated moving path prediction model; And
Determining whether there is an object that intersects a movement path and a movement path of the camera among the one or more objects.
제 10 항에 있어서,
상기 하나 이상의 객체를 추출하는 단계는,
슬라이딩 윈도우 기법에 기초하여 상기 영상 데이터에 포함된 복수의 윈도우로부터 하나 이상의 객체를 추출하는 단계; 및
상기 복수의 윈도우를 시간적으로 매칭하여 상기 객체를 각각 추적하는 단계를 포함하되,
상기 영상 데이터는 하나 이상의 프레임을 포함하며,
상기 윈도우는 각각 동일하거나, 상이한 개수의 프레임을 포함하는, 충돌 위험 감지 방법.
11. The method of claim 10,
Wherein the extracting of the one or more objects comprises:
Extracting one or more objects from a plurality of windows included in the image data based on a sliding window technique; And
And tracking each of the objects by temporally matching the plurality of windows,
Wherein the image data comprises one or more frames,
Wherein the windows each comprise the same or a different number of frames.
제 10 항에 있어서,
상기 3차원 공간 정보를 재구성하는 단계는
들로네 삼각 분할(Delaunay triangulation)에 기초하여 상기 영상 데이터에 포함된 각 프레임 및 상기 각 프레임의 이전 프레임에 대하여 미리 정해진 개수 이상의 특징 기술자를 포함하는 변환 행렬을 산출하는 것이되,
상기 하나 이상의 객체 각각의 이동경로를 예측하는 단계 또는 상기 카메라의 이동경로를 예측하는 단계는,
상기 산출된 변환 행렬에 기초하여 상기 객체 각각의 이동경로 및 상기 카메라의 이동경로를 예측하는 것인, 충돌 위험 감지 방법.
11. The method of claim 10,
Wherein reconstructing the three-dimensional spatial information comprises:
A transformation matrix including at least a predetermined number of feature descriptors for each frame included in the image data and a previous frame of each frame based on Delaunay triangulation,
Wherein the step of predicting the movement path of each of the at least one object or the step of predicting the movement path of the camera comprises:
And predicts the movement path of each of the objects and the movement path of the camera based on the calculated transformation matrix.
제 10 항에 있어서,
상기 객체 각각의 이동경로를 예측하는 단계 또는 상기 카메라의 이동경로를 예측하는 단계는,
상기 영상 데이터에 포함된 미리 정해진 개수의 프레임의 재구성된 3차원 공간 정보를 반복적으로 동적 모델에 입력하여, 상기 객체 각각에 대한 이동경로 또는 상기 카메라의 이동경로를 예측하되,
상기 동적 모델은 Mean-shift 알고리즘, 칼만 필터(Kalman filter) 및 파티클 필터(particle filter) 중 어느 하나에 기초한 것인, 충돌 위험 감지 방법.
11. The method of claim 10,
Wherein the step of predicting the moving path of each of the objects or the step of predicting the moving path of the camera comprises:
Dimensional space information of a predetermined number of frames included in the image data is repeatedly input to the dynamic model to predict a moving path for each of the objects or a moving path of the camera,
Wherein the dynamic model is based on a Mean-shift algorithm, a Kalman filter, and a particle filter.
충돌 위험 경고 장치의 모델 생성 방법에 있어서,
기수집된 영상 데이터 집합으로부터 객체가 포함된 학습 영상 데이터를 추출하는 단계; 및
상기 학습 영상 데이터 및 기계학습 알고리즘에 기초하여 객체 인식 모델을 생성하는 단계를 포함하되,
상기 객체 인식 모델은 영상 데이터로부터 복수의 객체를 추출하는 것이되,
상기 추출된 복수의 객체는 상기 영상 데이터에 대응하여 재구성된 3차원 공간 정보에 기초하여 이동경로가 예측된 이후, 상기 영상 데이터를 촬영한 카메라에 대한 이동경로와 비교하고, 상기 카메라에 대한 이동경로와 객체가 충돌 위험 객체로 추출되는 것이며,
상기 기계학습 알고리즘은 신경망 알고리즘, 지지 벡터 머신 알고리즘 및 클러스터링 알고리즘 중 어느 하나인, 이동경로 예측 모델 생성 방법.
A method for generating a model of a crash risk warning device,
Extracting learning image data including an object from the collected image data sets; And
And generating an object recognition model based on the learning image data and the machine learning algorithm,
The object recognition model extracts a plurality of objects from the image data,
Wherein the extracted plurality of objects are compared with a movement path for a camera that captures the image data after the movement path is predicted based on the reconstructed three-dimensional space information corresponding to the image data, And objects are extracted as collision dangerous objects,
Wherein the machine learning algorithm is one of a neural network algorithm, a support vector machine algorithm, and a clustering algorithm.
제 10 항 내지 제 14 항 중 어느 한 항에 기재된 방법을 컴퓨터 상에서 수행하기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.A computer-readable recording medium recording a program for performing the method according to any one of claims 10 to 14 on a computer.
KR1020160142927A 2016-10-31 2016-10-31 Apparatus and method for risk alarming of collision KR20180047149A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160142927A KR20180047149A (en) 2016-10-31 2016-10-31 Apparatus and method for risk alarming of collision

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160142927A KR20180047149A (en) 2016-10-31 2016-10-31 Apparatus and method for risk alarming of collision

Publications (1)

Publication Number Publication Date
KR20180047149A true KR20180047149A (en) 2018-05-10

Family

ID=62185002

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160142927A KR20180047149A (en) 2016-10-31 2016-10-31 Apparatus and method for risk alarming of collision

Country Status (1)

Country Link
KR (1) KR20180047149A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210074803A (en) * 2019-12-12 2021-06-22 주식회사 이편한자동화기술 Collision prevention device for heavy equipment using artificial intelligence
CN113401082A (en) * 2021-08-02 2021-09-17 姜春诗 Self-judging automobile safety automatic braking system and method
US20220089152A1 (en) * 2020-09-21 2022-03-24 Hyundai Motor Company Apparatus and method for controlling autonomous driving of vehicle
KR102620115B1 (en) * 2023-09-05 2024-01-02 박찬배 Wireless AI Object Recognition Remote Monitoring System And Oject Recognition Method by the Same

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210074803A (en) * 2019-12-12 2021-06-22 주식회사 이편한자동화기술 Collision prevention device for heavy equipment using artificial intelligence
US20220089152A1 (en) * 2020-09-21 2022-03-24 Hyundai Motor Company Apparatus and method for controlling autonomous driving of vehicle
US11932244B2 (en) 2020-09-21 2024-03-19 Hyundai Motor Company Apparatus and method for controlling autonomous driving of vehicle
CN113401082A (en) * 2021-08-02 2021-09-17 姜春诗 Self-judging automobile safety automatic braking system and method
KR102620115B1 (en) * 2023-09-05 2024-01-02 박찬배 Wireless AI Object Recognition Remote Monitoring System And Oject Recognition Method by the Same

Similar Documents

Publication Publication Date Title
Nidamanuri et al. A progressive review: Emerging technologies for ADAS driven solutions
EP3007099B1 (en) Image recognition system for a vehicle and corresponding method
JP5297078B2 (en) Method for detecting moving object in blind spot of vehicle, and blind spot detection device
US9767368B2 (en) Method and system for adaptive ray based scene analysis of semantic traffic spaces and vehicle equipped with such system
CN102792314B (en) Cross traffic collision alert system
KR102099265B1 (en) System and method for pedestrian-vehicle collision warning based on pedestrian state
KR101982298B1 (en) Method and apparatus for detecting sudden moving objecj appearance at vehicle
US8406472B2 (en) Method and system for processing image data
WO2016129403A1 (en) Object detection device
JP4173902B2 (en) Vehicle periphery monitoring device
US9352746B2 (en) Lane relative position estimation method and system for driver assistance systems
JP2013225295A5 (en)
Aytekin et al. Increasing driving safety with a multiple vehicle detection and tracking system using ongoing vehicle shadow information
KR20170127036A (en) Method and apparatus for detecting and assessing road reflections
KR101694837B1 (en) Apparatus and Method of Detecting Vehicle Information in Image taken on Moving Vehicle
KR20180047149A (en) Apparatus and method for risk alarming of collision
Liu et al. Vehicle detection and ranging using two different focal length cameras
Petrovai et al. A stereovision based approach for detecting and tracking lane and forward obstacles on mobile devices
US20120155711A1 (en) Apparatus and method for analyzing video
Xiao et al. Detection of drivers visual attention using smartphone
JP2013069045A (en) Image recognition device, image recognition method, and image recognition program
KR102003387B1 (en) Method for detecting and locating traffic participants using bird's-eye view image, computer-readerble recording medium storing traffic participants detecting and locating program
US20200003574A1 (en) Method and device for fast detection of repetitive structures in the image of a road scene
Shashidhar et al. Computer Vision and the IoT-Based Intelligent Road Lane Detection System
JP2017211765A (en) Object recognition device

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application