KR102244380B1 - 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법, 이를 수행하기 위한 기록 매체 및 장치 - Google Patents

자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법, 이를 수행하기 위한 기록 매체 및 장치 Download PDF

Info

Publication number
KR102244380B1
KR102244380B1 KR1020200094506A KR20200094506A KR102244380B1 KR 102244380 B1 KR102244380 B1 KR 102244380B1 KR 1020200094506 A KR1020200094506 A KR 1020200094506A KR 20200094506 A KR20200094506 A KR 20200094506A KR 102244380 B1 KR102244380 B1 KR 102244380B1
Authority
KR
South Korea
Prior art keywords
object recognition
optical flow
confidence
autonomous driving
driving environment
Prior art date
Application number
KR1020200094506A
Other languages
English (en)
Inventor
김중헌
윤원준
박수현
Original Assignee
고려대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 고려대학교 산학협력단 filed Critical 고려대학교 산학협력단
Priority to KR1020200094506A priority Critical patent/KR102244380B1/ko
Application granted granted Critical
Publication of KR102244380B1 publication Critical patent/KR102244380B1/ko
Priority to US17/315,554 priority patent/US20220036100A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06K9/00791
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • 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
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • G06K9/36
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4007Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • 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, light or radio wave 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
    • B60W2554/00Input parameters relating to objects
    • B60W2554/40Dynamic objects, e.g. animals, windblown objects
    • B60W2554/404Characteristics
    • B60W2554/4049Relationship among other objects, e.g. converging dynamic objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Automation & Control Theory (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Molecular Biology (AREA)
  • Software Systems (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Electromagnetism (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Image Analysis (AREA)

Abstract

자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법은, 자율 주행 차량용 센서에서 시간적으로 연속 촬영되는 이미지의 광학 흐름(Optical Flow)을 계산하여 매트릭스 형태의 덴스 플로우(dense flow)를 통해 데이터를 전처리하는 단계; 전처리된 매트릭스의 각 셀(cell)에 대해 움직이는 물체가 존재하는 확률을 나타내는 벡터화된 컨피던스(confidence) 임계값을 생성하여 컨피던스 마스크를 생성하는 단계; 상기 시간적으로 연속 촬영되는 이미지를 상기 컨피던스 마스크로 맵핑하여 이미지 상에 움직이는 사물의 유무를 판단하는 단계; 및 각 시간 단위마다 사물 인식의 정확도와 큐(Queue)의 안정성 간의 트레이드 오프(Tradeoff) 상수를 이용하여 사물 인식 모델을 선택하는 단계;를 포함한다. 이에 따라, 광학 흐름을 사물 인식 시스템의 컨피던스(confidence) 임계에 적용하여 자율 주행 환경의 사물 인식에 적용하여 성능을 높일 수 있다.

Description

자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법, 이를 수행하기 위한 기록 매체 및 장치{METHOD FOR OBJECT RECOGNITION USING QUEUE-BASED MODEL SELECTION AND OPTICAL FLOW IN AUTONOMOUS DRIVING ENVIRONMENT, RECORDING MEDIUM AND DEVICE FOR PERFORMING THE METHOD}
본 발명은 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법, 이를 수행하기 위한 기록 매체 및 장치에 관한 것으로서, 더욱 상세하게는 자율 주행 환경에서 카메라를 통한 사물 인식에 광학 흐름을 적용하고, 큐잉 기반으로 시스템을 최적화하는 기술에 관한 것이다.
사물 인식 시스템은 사진 이미지를 받아 전처리를 하고 신경망에 넣어주면 그 결과로 사물이 무엇인지, 위치는 어디인지를 반환한다. 자율 주행에서의 사물 인식의 필요 조건은 데이터 처리 연산이 실시간으로 처리할 수 있어야 한다는 것과 정확도를 높이는 것이 있다.
그러나, 사물 인식 시스템에는 연산 시간과 정확도에 트레이드 오프(Tradeoff) 관계가 존재한다.
또한, 기존의 CNN 기반 사물 인식의 경우 동영상의 특징인 이미지의 연속성을 사용하지 않으며, 기존의 Optical Flow(광학 흐름)으로 사물 인식을 할 수 없다. 또한, 성능이 좋은 모델을 계속 사용할 경우, 큐의 오버플로우(Queue Overflow)가 발생할 수 있는 문제점이 존재한다.
KR 10-2020-0015301 A KR 10-2060286 B1 KR 10-2019-0028242 A KR 10-2060662 B1
이에, 본 발명의 기술적 과제는 이러한 점에서 착안된 것으로 본 발명의 목적은 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법을 제공하는 것이다.
본 발명의 다른 목적은 상기 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법을 수행하기 위한 컴퓨터 프로그램이 기록된 기록 매체를 제공하는 것이다.
본 발명의 또 다른 목적은 상기 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법을 수행하기 위한 장치를 제공하는 것이다.
상기한 본 발명의 목적을 실현하기 위한 일 실시예에 따른 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법은, 자율 주행 차량용 센서에서 시간적으로 연속 촬영되는 이미지의 광학 흐름(Optical Flow)을 계산하여 매트릭스 형태의 덴스 플로우(dense flow)를 통해 데이터를 전처리하는 단계; 전처리된 매트릭스의 각 셀(cell)에 대해 움직이는 물체가 존재하는 확률을 나타내는 벡터화된 컨피던스(confidence) 임계값을 생성하여 컨피던스 마스크를 생성하는 단계; 상기 시간적으로 연속 촬영되는 이미지를 상기 컨피던스 마스크로 맵핑하여 이미지 상에 움직이는 사물의 유무를 판단하는 단계; 및 각 시간 단위마다 사물 인식의 정확도와 큐(Queue)의 안정성 간의 트레이드 오프(Tradeoff) 상수를 이용하여 사물 인식 모델을 선택하는 단계;를 포함한다.
본 발명의 실시예에서, 상기 데이터를 전처리하는 단계는, 크기를 나타내는 덴스 플로우에 대한 매트릭스를 최소-최대(min-max) 정규화하는 단계; 정규화된 매트릭스로부터 정적인 픽셀 정보를 제거하는 단계; 매트릭스의 크기를 보간법을 통해 축소하는 단계; 축소된 매트릭스의 각 원소를 벡터로 표현하는 단계; 및 벡터로 표현된 원소들을 적어도 한번 이상 복제하는 단계;를 포함할 수 있다.
본 발명의 실시예에서, 상기 정규화된 매트릭스로부터 정적인 픽셀 정보를 제거하는 단계는, 정규화된 매트릭스의 중앙값으로부터 미리 설정된 일정 거리 내의 픽셀 정보를 제거할 수 있다.
본 발명의 실시예에서, 상기 움직이는 사물의 유무를 판단하는 단계는, 상기 컨피던스 마스크를 맵핑한 각 셀의 컨피던스(confidence)가 대응하는 컨피던스 임계값 보다 높은 경우 사물이 없다고 판단하고, 각 셀의 컨피던스(confidence)가 대응하는 컨피던스 임계값보다 낮은 경우 사물이 있다고 판단할 수 있다.
본 발명의 실시예에서, 상기 사물 인식 모델을 선택하는 단계는, 리아프노프(Lyapunov) 최적화를 기반으로 저장된 큐(Queue)의 크기를 이용하여 최적의 사물 인식 모델을 선택할 수 있다.
본 발명의 실시예에서, 상기 사물 인식 모델을 선택하는 단계는, 큐(Queue)의 크기가 클수록 사물 인식 모델 중 가장 빠른 모델을 선택하고, 큐(Queue)의 크기가 작을수록 사물 인식 모델 중 가장 정확도가 높은 모델을 선택할 수 있다.
상기한 본 발명의 다른 목적을 실현하기 위한 일 실시예에 따른 컴퓨터로 판독 가능한 저장 매체에는, 상기 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법을 수행하기 위한 컴퓨터 프로그램이 기록되어 있다.
상기한 본 발명의 또 다른 목적을 실현하기 위한 일 실시예에 따른 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 장치는, 자율 주행 차량용 센서에서 시간적으로 연속 촬영되는 이미지의 광학 흐름(Optical Flow)을 계산하여 매트릭스 형태의 덴스 플로우(dense flow)를 통해 데이터를 전처리하는 전처리부; 전처리된 매트릭스의 각 셀(cell)에 대해 움직이는 물체가 존재하는 확률을 나타내는 벡터화된 컨피던스(confidence) 임계값을 생성하여 컨피던스 마스크를 생성하는 컨피던스 마스크 생성부; 상기 시간적으로 연속 촬영되는 이미지를 상기 컨피던스 마스크로 맵핑하여 이미지 상에 움직이는 사물의 유무를 판단하는 사물 인식부; 및 각 시간 단위마다 사물 인식의 정확도와 큐(Queue)의 안정성 간의 트레이드 오프(Tradeoff) 상수를 이용하여 사물 인식 모델을 선택하는 트레이드 오프부;를 포함한다.
본 발명의 실시예에서, 상기 전처리부는, 크기를 나타내는 덴스 플로우에 대한 매트릭스를 최소-최대(min-max) 정규화하고, 정규화된 매트릭스로부터 정적인 픽셀 정보를 제거하고, 매트릭스의 크기를 보간법을 통해 축소하고, 축소된 매트릭스의 각 원소를 벡터로 표현하고, 벡터로 표현된 원소들을 적어도 한번 이상 복제하여 데이터를 전처리할 수 있다.
본 발명의 실시예에서, 상기 사물 인식부는, 상기 컨피던스 마스크를 맵핑한 각 셀의 컨피던스(confidence)가 대응하는 컨피던스 임계값 보다 높은 경우 사물이 없다고 판단하고, 각 셀의 컨피던스(confidence)가 대응하는 컨피던스 임계값보다 낮은 경우 사물이 있다고 판단할 수 있다.
본 발명의 실시예에서, 상기 트레이드 오프부는, 리아프노프(Lyapunov) 최적화를 기반으로 저장된 큐(Queue)의 크기를 이용하여 최적의 사물 인식 모델을 선택할 수 있다.
본 발명의 실시예에서, 상기 트레이드 오프부는, 큐(Queue)의 크기가 클수록 사물 인식 모델 중 가장 빠른 모델을 선택하고, 큐(Queue)의 크기가 작을수록 사물 인식 모델 중 가장 정확도가 높은 모델을 선택할 수 있다.
이와 같은 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법에 따르면, 자율 주행 환경에서 이미지가 순차적으로 들어온다는 점을 이용하여 광학 흐름 (Optical Flow)을 사물 인식 시스템의 컨피던스(confidence) 임계에 적용하여 자율 주행 환경의 사물 인식에 적용하여 성능을 향상시킨다.
또한, 주행 환경에서 광학 흐름이 필요하지 않는 경우가 존재하는데 이러한 상황에서는 광학 흐름을 적용하지 않은 사물 인식을 할 수 있는 큐잉 기반 모델 선택을 통하여, 성능과 딜레이 간의 트레이드 오프(Tradeoff)를 최적으로 조절한다.
이에 따라, 본 발명은 광학 흐름을 이용하여 기존에 사물인식 시스템에 이미지의 연속성을 이용할 수 있게 되었고, 또한 큐잉 기반 최적화를 통하여 자율 주행에서의 시스템 안정성을 유지하면서 성능을 최대화 할 수 있다.
도 1은 본 발명의 일 실시예에 따른 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 장치의 블록도이다.
도 2는 본 발명에 따른 자율 주행 환경에서의 사물 인식 시스템을 설명하기 위한 개념도이다.
도 3은 본 발명에 따른 덴스 플로우(Dense Flow)를 이용한 컨피던스 마스크(Confidence Mask)를 구현하기 위한 슈도 코드의 일례이다.
도 4는 본 발명의 데이터 전처리를 보여주기 위한 예시 도면이다.
도 5는 본 발명에 따른 하이브리드(Hybrid) 모델의 성능을 보여주기 위한 추정 시간에 대한 비교 실험 결과이다.
도 6은 본 발명에 따른 하이브리드(Hybrid) 모델의 성능을 보여주기 위한 추정 객체 수에 대한 비교 실험 결과이다.
도 7은 본 발명에 따른 리아프노프 최적화(Lyapunov Optimization) 모델의 성능을 보여주기 위한 비교 실험 결과이다.
도 8은 본 발명의 일 실시예에 따른 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법의 흐름도이다.
도 9는 도 8의 데이터 전처리 과정에 대한 상세 흐름도이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
이하, 도면들을 참조하여 본 발명의 바람직한 실시예들을 보다 상세하게 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 장치의 블록도이다.
본 발명에 따른 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 장치(10, 이하 장치)는 광학 흐름(Optical Flow)을 사물 인식 시스템의 컨피던스(confidence) 임계에 적용하여 성능을 높이고, 시간 평균 최대 성능을 낼 수 있도록 모델 선택을 하는 기술에 관한 것이다.
자율 주행에서는 광학 센서로부터 순차적으로 사진 이미지를 받는다는 점에서 사물 인식 시스템과 차이를 보인다. 사진을 순차적으로 받으면, 시간 t와 시간 t+1에서 받은 이미지는 연속성을 띄게 된다. 이로 인하여 광학 흐름을 적용할 수 있는데, 이는 시간 t에서의 이미지와 시간 t+1에서의 이미지의 픽셀의 변위를 계산하는 방법이다. 물리적인 의미로는, 움직이는 사물, 움직이는 것들에 대한 정보를 알려준다는 것이다.
도 1을 참조하면, 본 발명에 따른 장치(10)는 전처리부(100), 컨피던스 마스크 생성부(300), 사물 인식부(500) 및 트레이드 오프부(700)를 포함한다.
본 발명의 상기 장치(10)는 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식을 수행하기 위한 소프트웨어(애플리케이션)가 설치되어 실행될 수 있으며, 상기 전처리부(100), 상기 컨피던스 마스크 생성부(300), 상기 사물 인식부(500) 및 상기 트레이드 오프부(700)의 구성은 상기 장치(10)에서 실행되는 상기 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식을 수행하기 위한 소프트웨어에 의해 제어될 수 있다.
상기 장치(10)는 별도의 단말이거나 또는 단말의 일부 모듈일 수 있다. 또한, 상기 전처리부(100), 상기 컨피던스 마스크 생성부(300), 상기 사물 인식부(500) 및 상기 트레이드 오프부(700)의 구성은 통합 모듈로 형성되거나, 하나 이상의 모듈로 이루어 질 수 있다. 그러나, 이와 반대로 각 구성은 별도의 모듈로 이루어질 수도 있다.
상기 장치(10)는 이동성을 갖거나 고정될 수 있다. 상기 장치(10)는, 서버(server) 또는 엔진(engine) 형태일 수 있으며, 디바이스(device), 기구(apparatus), 단말(terminal), UE(user equipment), MS(mobile station), 무선기기(wireless device), 휴대기기(handheld device) 등 다른 용어로 불릴 수 있다.
상기 장치(10)는 운영체제(Operation System; OS), 즉 시스템을 기반으로 다양한 소프트웨어를 실행하거나 제작할 수 있다. 상기 운영체제는 소프트웨어가 장치의 하드웨어를 사용할 수 있도록 하기 위한 시스템 프로그램으로서, 안드로이드 OS, iOS, 윈도우 모바일 OS, 바다 OS, 심비안 OS, 블랙베리 OS 등 모바일 컴퓨터 운영체제 및 윈도우 계열, 리눅스 계열, 유닉스 계열, MAC, AIX, HP-UX 등 컴퓨터 운영체제를 모두 포함할 수 있다.
상기 전처리부(100)는 자율 주행 차량용 센서에서 시간적으로 연속 촬영되는 이미지의 광학 흐름(Optical Flow)을 계산하여 매트릭스 형태의 덴스 플로우(dense flow)를 통해 데이터를 전처리한다.
상기 컨피던스 마스크 생성부(300)는 전처리된 매트릭스의 각 셀(cell)에 대해 움직이는 물체가 존재하는 확률을 나타내는 벡터화된 컨피던스(confidence) 임계값을 생성하여 컨피던스 마스크를 생성한다.
도 2를 참조하면, 실시간 사물인식으로 널리 알려진 사물 인식 시스템은 YOLOv3-Tiny가 있다. YOLOv3-Tiny는 사진 한 장을 받아 26Х26개의 격자로 나누어 각각의 셀에 대하여 해당 셀에 어떠한 사물이 존재하는지 확률로 나타내는 지도(prediction probability map)를 만든다. 또한 각각의 셀에 대해 물체가 존재할 확률을 나타내는 컨피던스(confidence)가 존재하는데 이를 취합하여 객체 탐지 여부를 결정한다.
한편 실시간으로 광학 흐름을 계산하는 딥러닝 기반 시스템이 존재한다. FlowNet이 가장 유명한 광학흐름 계산을 하는 딥러닝 시스템 구조로, 본 발명의 일 실시예에서는 이 중 가장 빠르다고 알려진 FlowNet2-S를 사용하였다. FlowNet2-S는 입력으로 연속된 이미지 두 장을 받는다.
픽셀의 변위를 계산하여, 이를 통해 변화된 것들로 하여금 출력으로 덴스 플로우(dense flow)를 반환한다. 덴스 플로우(dense flow)는 방향을 나타내는 플로우(flow)와 크기를 나타내는 플로우(flow)로 두 가지의 플로우로 구성되어 있다.
본 발명의 일 실시예에서는 사물 인식 구조인 YOLOv3-tiny의 성능을 높이기 위하여, Yolov3-tiny와 FlownNet2-S을 조합하여 Hybrid 모델을 사용한다. 덴스 플로우를 YOLO-v3-tiny의 컨피던스(confidence)에 추가 조건으로 적용된다. 광학 흐름을 계산하는 FlowNet2-S을 사용하였을 때, 실시간 적합성이 보장되고, 따라서 Hybrid 모델을 고안하였다.
Hybrid와 YOLOv3-tiny는 연산 시간(딜레이)와 사물 인식 성능 간의 트레이드 오프(Tradeoff)를 보여준다. Lyapunov 최적화 프레임워크에서는 딜레이는 큐로서 모델링 될 수 있고, 동적 큐는 Lyapunov drift에 의해 다시 모델링 될 수 있다. drift를 안정화시킴으로써, 시간 평균 최적화 프레임워크를 고안하였다.
따라서, 본 발명에서는 저장된 큐와 성능을 매 프레임마다 관측을 통하여, Lyapunov 최적화 프레임워크는 다음 시간 t+1에 대하여 연속된 시간 평균 최적 의사 결정을 하는 사물 인식 딥러닝 네트워크 모델을 선택한다.
주행 환경은 주행 상태랑 정지 상태로 분류할 수 있다. 광학 흐름은 픽셀의 변위를 계산하는 방법으로 주행 환경에서 픽셀의 변화가 존재하기 때문에 성능이 향상될 수 있다. 그러나 광학 흐름이 이미지가 정적일 때 사용된다면 픽셀의 변위가 존재하지 않기 때문에 연산은 낭비가 된다. 또한 이 경우 성능의 향상은 없다.
또한, 인식되는 사물의 개수와 연산 시간이 비례 관계를 가지고 있다. 따라서, 많은 사물이 인식되었을 때, 실시간에 적합하지 않은 시스템이 될 수 있다. 그렇기 때문에 시간 t에서 큐와 성능을 관측하고, 다음 시간 t+1에서 두 네트워크 중 안정되면서 성능이 높은 네트워크를 선택하도록 하였다.
본 발명은 Hybrid 모델을 제안한다. 사물은 닫힌 평면을 이루는 픽셀의 집합이다. 광학 흐름을 이용하여 모션 인식을 할 때, 덴스 플로우(dense flow)를 이용하여 픽셀의 크기와 방향의 변화량을 알 수 있다. 주행 환경에서 사물을 이루는 픽셀들은 선형적으로 크기가 증가/감소하는 특성을 지니고 있다.
YOLOv3-tiny의 결과는 물체의 무게중심
Figure 112020079546513-pat00001
과 상대 너비와 높이
Figure 112020079546513-pat00002
, confidence c, 80개의 클래스에 대한 확률로, 각각의 셀(cell)에 대하여 85열을 가진다. 또한, 26Х26 그리드와 3개의 경계박스(bounding box)에 대해 최종 결정을 하므로 2028개의 행을 가진다. FlowNet2-S의 출력인 덴스 플로우(dense flow)
Figure 112020079546513-pat00003
는 크기가 128Х96이며,
Figure 112020079546513-pat00004
의 모든 원소
Figure 112020079546513-pat00005
Figure 112020079546513-pat00006
범위 내 실수 값을 가진다.
Figure 112020079546513-pat00007
의 크기가 128Х96이므로 다음의 수학식 1과 같이 나타낼 수 있다.
[수학식 1]
Figure 112020079546513-pat00008
만일 관측자가 정적인 상태로 한 방향의 영상을 찍는다면,
Figure 112020079546513-pat00009
를 바로 이용할 수 있지만, 주행 상황에서는 관측자가 이동하는 상태이므로 사물이 관측자와 같은 속도로 움직인다고 하면, 움직이는 물체가 정적으로 보이는 가능성이 존재한다. 따라서, 그러한 현상을 기피하기 위해 다음의 데이터 전처리를 거친다. 먼저 덴스 플로우(dense flow)에 대한 최소-최대(min-max) 정규화를 먼저 진행한다(수학식 2a).
[수학식 2a]
Figure 112020079546513-pat00010
[수학식 2b]
Figure 112020079546513-pat00011
Figure 112020079546513-pat00012
Figure 112020079546513-pat00013
의 최솟값,
Figure 112020079546513-pat00014
Figure 112020079546513-pat00015
의 중앙값을 의미한다.
그 후,
Figure 112020079546513-pat00016
의 스펙트럼 중 양 끝에 존재하는 값(
Figure 112020079546513-pat00017
)에 가까워질수록 더 많은 동적의 픽셀 정보가 존재하고, 중앙값(
Figure 112020079546513-pat00018
)에 가까이 존재하는 픽셀일수록 정적인 픽셀 정보가 존재한다(수학식 2b). 따라서, 모든
Figure 112020079546513-pat00019
에 대하여 다음과 같은 수학식 3의 방법으로 정적인 픽셀 정보를 없앴다.
[수학식 3]
Figure 112020079546513-pat00020
YOLOv3-tiny는 26Х26 격자를 가지고 있기 때문에
Figure 112020079546513-pat00021
역시
Figure 112020079546513-pat00022
로 축소되어야 한다. 따라서, bicubic 보간법으로 이를 축소하였다.
Figure 112020079546513-pat00023
를 벡터로 나타내어
Figure 112020079546513-pat00024
를 만들었다. YOLO는 3개의 경계박스(bounding box)를 사용하므로
Figure 112020079546513-pat00025
를 세 번 복제하여
Figure 112020079546513-pat00026
을 만들었다.
데이터 전처리를 마친
Figure 112020079546513-pat00027
의 모든 원소
Figure 112020079546513-pat00028
를 다음의 수학식 4로 컨피던스(confidence) 임계
Figure 112020079546513-pat00029
에 대하여 다음과 같이 벡터화된 컨피던스 임계
Figure 112020079546513-pat00030
를 만들 수 있다.
[수학식 4]
Figure 112020079546513-pat00031
여기서,
Figure 112020079546513-pat00032
은 초월 함수를 의미한다.
도 3은 덴스 플로우(dense flow)의 데이터 전처리의 슈도 코드를 나타낸다.
도 3을 참조하면, 시간 복잡도는 O(MN)이다. 첫 줄부터 넷 째 줄까지 덴스 플로우(dense flow)
Figure 112020079546513-pat00033
는 정규화가 되어가는 과정을 보여준다. 다섯 번째 줄에서는
Figure 112020079546513-pat00034
이 bicubic 보간(interpolation)에 의하여
Figure 112020079546513-pat00035
로 축소된다. 8번째 줄과 9번째 줄에서는 벡터화된 컨피던스(confidence) 임계로 만드는 것을 보여준다. 이는 수학식 4와 동일하다.
도 4(a)는 입력 이미지, 도 4(b)는 본 발명에 따른 광학 흐름 추정 결과를 나타내고, 도 4(c)는 도 4(b)의 크기 정보를, 도 4(d)는 본 발명에 따른 전처리 결과의 예를 보여준다.
상기 사물 인식부(500)는 상기 시간적으로 연속 촬영되는 이미지를 상기 컨피던스 마스크로 맵핑하여 이미지 상에 움직이는 사물의 유무를 판단한다.
본 발명에서는 덴스 플로우(dense flow) 중에서도 크기만 나타내는 덴스 플로우를 사용하여 움직인 물체에 대한 필터를 만들 수 있다(도 4(b) 참조). YOLOv3-tiny는 컨피던스(confidence) 임계(threshold)를 가지는데, 컨피던스 임계치를 넘지 못하면 사물이 없다고 판단하고, 임계치를 넘는 경우에 사물이 있다고 판단을 한다. 컨피던스 및 컨피던스 임계치는 상수값이다.
필터를 YOLOv3-tiny의 격자에 적용을 시키면, 매 이미지마다 모든 격자의 셀에 대한 컨피던스 임계를 가질 수 있게 된다. 만일 특정 셀에서 컨피던스가 기존의 컨피던스 임계보다 낮다면, 움직이는 물체가 존재할 확률이 높다는 것을 의미하고, 특정 셀에서 컨피던스가 기존의 컨피던스 임계보다 높다면 움직이는 물체가 존재할 확률이 낮다는 것을 의미를 한다.
따라서, 이러한 방식으로 사물 인식 시스템이 YOLOv3-tiny가 물체가 존재한다고 판단을 하더라도 위의 필터를 적용한 컨피던스가 컨피던스 임계값 보다 높다면 사물이 없다고 판단을 하게 된다. 마찬가지로 YOLOv3-tiny가 사물이 존재하지 않는다고 판단을 할지라도, 컨피던스가 컨피던스 임계값 보다 낮다면 사물이 있다고 판단하게 된다. 이로써 사물 인식의 정확도를 높일 수 있다.
상기 트레이드 오프부(700)는 각 시간 단위마다 사물 인식의 정확도와 큐(Queue)의 안정성 간의 트레이드 오프(Tradeoff) 상수를 이용하여 사물 인식 모델을 선택한다.
이를 위해, 본 발명의 일 실시예에서는 리아프노프(Lyapunov) 최적화 프레임워크를 사용하며 동적 큐는 다음의 수학식 5와 같이 모델링 된다.
[수학식 5]
Figure 112020079546513-pat00036
여기서,
Figure 112020079546513-pat00037
는 시간 t에서의 저장된 큐의 크기,
Figure 112020079546513-pat00038
는 시간 t에서
Figure 112020079546513-pat00039
의 도착프로세스를 의미한다.
Figure 112020079546513-pat00040
의 도착프로세스인
Figure 112020079546513-pat00041
는 무작위 입력을 받는 비디오 스트리밍이다. 수학식 5에서,
Figure 112020079546513-pat00042
는 시간 t에서 모델 선택에 따른
Figure 112020079546513-pat00043
의 서비스 프로세스이다. 시간 평균 사물 인식 정확도를 최대화하는 수학적 프로그램
Figure 112020079546513-pat00044
은 다음의 수학식 6과 같이 나타난다.
[수학식 6]
Figure 112020079546513-pat00045
그리고 다음의 수학식 7은 큐 안정도에 종속적이다.
[수학식 7]
Figure 112020079546513-pat00046
이러한 트레이드 오프(Tradeoff)로 인하여 리아프노프(Lyapunov) 최적화 이론의 활용한 drift-plus-penalty(DPP) 알고리즘을 큐의 안정성을 유지하면서 시간 평균 성능을 최대화 할 수 있다. 리아프노프(Lyapunov) 함수는
Figure 112020079546513-pat00047
로 정의된다.
그리고,
Figure 112020079546513-pat00048
가 조건부 이차 리아프노프(Lyapunov) 함수라고 하면, 조건부 이차 Lyapunov 함수는
Figure 112020079546513-pat00049
와 같이 표기된다. 그리고, 동적 정책은 DPP의 상한을 최소화(음의
Figure 112020079546513-pat00050
를 최소화)하면서 큐의 안정성을 보장할 수 있으며, 다음의 수학식 8로 표현된다.
[수학식 8]
Figure 112020079546513-pat00051
여기서, V는 트레이드 오프(tradeoff) 상수이다. 시간 t에서 리아프노프(Lyapunov) 함수의 상한 drift는 다음의 수학식 9와 같이 유도된다.
[수학식 9]
Figure 112020079546513-pat00052
따라서, 조건부 리아프노프(Lyapunov) drift의 상한은 다음의 수학식 10과 같이 유도된다.
[수학식 10]
Figure 112020079546513-pat00053
그리고, C는 상수로 다음의 수학식 11과 같이 주어진다.
[수학식 11]
Figure 112020079546513-pat00054
여기서, C는 상수이고, 도착 프로세스
Figure 112020079546513-pat00055
는 랜덤 이미지로 통제가 불가능하다. 따라서, DPP의 상한을 최소화 하는 식은 다음의 수학식 11과 같이 유도된다.
[수학식 11]
Figure 112020079546513-pat00056
수학식 11의 시간 평균 최대화 문제는 다음의 수학식 12와 같이 다시 표현할 수 있다.
[수학식 12]
Figure 112020079546513-pat00057
수학식 12에서 기댓값의 최대치의 개념이 쓰였다. 현재의
Figure 112020079546513-pat00058
를 보고 수학식 12를 최대화 하는 방향으로
Figure 112020079546513-pat00059
를 결정한다. 그리고 다음의 수학식 13과 같이 표현된다.
[수학식 13]
Figure 112020079546513-pat00060
여기서,
Figure 112020079546513-pat00061
는 모든 가능한 사물 인식 모델이고,
Figure 112020079546513-pat00062
은 사물 인식 모델 중 수학식 13에 의해 선택된 최적 모델이다. V는 사물 인식 정확도와 큐의 안정성 간의 트레이드 오프(Tradeoff) 상수를 의미한다.
사물 인식 모델 선택 알고리즘의 일례를 설명하면, 모든 변수와 파라미터는 초기화한다. 알고리즘은 단위 시간마다 작동하며, 현재의 쌓인 큐를 관찰한다. 이는 수학식 13에 사용된다. 이후, 연산을 통하여 닫힌 형태의 방정식을 계산하고, 선택만 하는 것이므로 단위 시간당 시간 복잡도는 O(N)밖에 되지 않는다. 따라서, 본 발명에서의 사물 인식 모델 선택 알고리즘은 낮은 시간 복잡도를 보장한다.
수학식 13이 제대로 작동하는지 확인해보기 위하여, 두 가지 경우를 생각해볼 수 있다.
Figure 112020079546513-pat00063
인 경우 1을 가정해 보면, 수학식 13은
Figure 112020079546513-pat00064
을 최대화하려고 한다. 따라서, 프로세스는 큐의 안정성을 만족하기 위한 방향으로 진행되고, 사물인식 모델 중 가장 빠른 모델을 선택하게 된다.
Figure 112020079546513-pat00065
인 경우 2를 가정해 보면, 수학식 13은
Figure 112020079546513-pat00066
을 최대화하려고 한다. 따라서, 알고리즘은 성능을 상승시키는 선택을 할 것이므로, 사물 인식 모델 중 정확도가 높은 모델을 사용하게 된다.
이하에서는 본 발명에서 제안한 하이브리드 모델의 성능을 검증하기 위한 실험 결과에 대해 설명한다.
실험 1에서는 단위 시간당 걸린 시간(i), 단위 시간당 탐지한 사물의 수(ii)를 평가 방법으로 삼았다. 주로 사물 인식 분야에서 mAP가 평가 방법이 되지만, 본 발명은 컨피던스(confidence) 임계를 수정을 하기 때문에 mAP로 평가를 할 수 없다. 따라서, YOLOv3-Tiny(대조군1)과 본 발명에서 제시한 Hybrid(실험군1)에 대해서 같은 영상을 탐지하였다. 실험 1은 총 38.5만 장의 이미지를 담고 있는 주행 영상으로 실험하였다.
실험 2에서는 YOLOv3-Tiny(대조군1), YOLOv3(대조군2)과 본 발명에서 제시한 Hybrid(실험군1)에 대해서 실험 1과 마찬가지로 같은 영상을 탐지하였다. 실험 2은 총 2.7만 장의 이미지를 담고 있는 주행 영상으로 실험하였다.
실험 3에서는 총 사물을 몇 개나 탐지하였는지(1), 정확하게 물체를 몇 개나 탐지하였는지(2), 잘 못 탐지한 물체의 개수가 몇 개인지(3), 겹쳐서 탐지된 물체의 개수가 몇 개인지(4)로 정확도를 판별하였다. 실험 3은 총 2천 장의 이미지를 담고 있는 주행 영상으로 실험하였다.
모든 실험은 파이썬 라이브러리인 Pytorch, OpenCV 환경에서 진행하였다. YOLOv3-tiny의 이미지는 416Х416 크기의 이미지를 입력으로 하였고, FlowNet2-S는 384Х512 크기의 이미지를 입력으로 하였다. 컨피던스(confidence) 임계는 0.5 nms 임계는 0.2로 실험을 진행하였다.
실험 1과 실험 2의 결과는 도 5 내지 도 7에 나타나있다. 도 5는 추정 시간(inference time), 도 6은 검출 객체 수를, 도 7은 큐 백로그 사이즈(Queue-backlog Size)를 나타내었다. 또한, 실험 3의 결과는 아래의 표 1과 같다.
실험 1에서 38.5만 장의 이미지에 대해서 실험한 결과, 추론 시간은 YOLOv3-Tiny와 Hybrid에 대하여 각각 55ms와 83ms를 나타내었다. 총 검출 객체 수는 각각 103만개, 150만 개였다. 속도 측면에서 YOLOv3-tiny가 우세하였지만, 정확도 측면에서는 Hybrid가 우세하였다.
실험 2에서는 2.7만 장의 이미지에 대해서 실험한 결과, YOLOv3-tiny와 YOLOv3, Hybrid의 추론시간은 42ms, 103ms, 66ms였다. 총 검출 객체 수는 4.63만 개, 16.4만 개, 72.9만 개로, Hybrid의 성능이 YOLOv3-tiny와 YOLOv3 사이에 있다는 것을 확인할 수 있었다. 그러나, 1초 당 객체 탐지 개수는 YOLOv3이 58.9개/sec으로 가장 높았고, YOLOv3-tiny와 Hybrid는 각각 40.8개/sec, 40.9개/sec을 기록하였다.
실험 3에서는 총 2천 개의 이미지에 대해 실험한 결과, Hybrid의 정확도는 YOLOv3-tiny에 비해 Hybrid가 3.22%가 높았으며, Hybrid가 정확하게 탐지하는 사물의 수는 1.59배 더 많았다.
수학식 5에 의하면
Figure 112020079546513-pat00067
를 줄이기 위한 방법은 오로지
Figure 112020079546513-pat00068
을 모델링 하는 방법밖에 없다. 만약 시간 t에서 선택한 모델이 Hybrid 즉,
Figure 112020079546513-pat00069
일 때,
Figure 112020079546513-pat00070
를 조금 줄이고, 시간 t에서 선택한 모델이 YOLOv3-tiny 즉,
Figure 112020079546513-pat00071
일 때,
Figure 112020079546513-pat00072
를 많이 줄이기 위한 방법으로, 각각의 모델의 평균 fps으로 모델링을 하였다. 실험 1의 결과를 가중치로
Figure 112020079546513-pat00073
를 다음의 수학식 14와 같이 모델링 하였다.
[수학식 14]
Figure 112020079546513-pat00074
그리고,
Figure 112020079546513-pat00075
는 어떤 이미지가 들어올지 모르는 무작위 입력이므로 기본 fps인 30frame/sec에 대한 모델을 선택하였을 때의 fps의 비율로 모델링을 하였다.
[수학식 15]
Figure 112020079546513-pat00076
여기서, time은 모델에 입력을 가한 뒤 출력이 나오는 데까지의 시간을 의미한다.
수학식 13에서 성능
Figure 112020079546513-pat00077
는 실험 2의 결과를 가중치로 하고, 검출한 물체의 수로 모델링을 하였다.
[수학식 16]
Figure 112020079546513-pat00078
Figure 112020079546513-pat00079
은 검출된 물체의 수를 의미한다.
구체적으로, Q값이 적다고 가정한 상태에서, 정지 상태를 가정하면,
Figure 112020079546513-pat00080
값은
Figure 112020079546513-pat00081
= H나
Figure 112020079546513-pat00082
= T가 거의 같은 값을 가지게 된다(Optical Flow가 없기 때문에). 그런데,
Figure 112020079546513-pat00083
값이
Figure 112020079546513-pat00084
= T가 더 높은 값을 가지기 때문에 모델은 T를 선택하게 된다. 운전 상태를 가정하면
Figure 112020079546513-pat00085
Figure 112020079546513-pat00086
= H가 더 높은 값을 가지게 되고 이에 따라 모델 H를 선택하게 된다.
반면, Q값이 무한대라고 가정한 상태에서, 정지 상태를 가정하면,
Figure 112020079546513-pat00087
Figure 112020079546513-pat00088
= H, T가 비슷하고, Q를 줄여야 하기 때문에 이에 따라 모델 T를 선택하게 된다. 운전 상태를 가정하면,
Figure 112020079546513-pat00089
Figure 112020079546513-pat00090
= H가 더 높은 값을 갖는다 하더라도 Q를 줄여야 하기 때문에 이에 따라 모델 T를 선택하게 된다.
본 발명의 성능 평가를 위해 아무 것도 처리하지 않았을 때의 YOLOv3-tiny(대조군3), Hybrid(대조군4) 그리고 쌓인 큐를 보고 Hybrid와 YOLOv3-tiny의 모델을 선택하는 시스템(실험군2)로 실험을 진행하였다. 그 결과는 아래의 표 1과 같다.
네트워크 구조 YOLOv3-tiny Hybrid(본 발명)
총 사물 수 4603 7562
정확히 인식한 사물 개수 4157 6646
잘못 인식한 사물 개수 312 259
겹친 물체의 개수 144 667
정확도(%) 93.02 96.24
YOLOv3-tiny는 과도 안정된 상태이고, Hybrid만을 사용하고 있을 때는 오버플로우(overflow) 현상이 나타난다. 그러나, 모델 선택을 하였을 때, 시간 평균 성능을 최대로 한다는 것을 관측할 수 있었다.
이에 따라, 본 발명은 광학 흐름을 이용하여 기존에 사물인식 시스템에 이미지의 연속성을 이용할 수 있게 되었고, 또한 큐잉 기반 최적화를 통하여 자율 주행에서의 시스템 안정성을 유지하면서 성능을 최대화 할 수 있다.
도 8은 본 발명의 일 실시예에 따른 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법의 흐름도이다. 도 9는 도 8의 데이터 전처리 과정에 대한 상세 흐름도이다.
본 실시예에 따른 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법은, 도 1의 장치(10)와 실질적으로 동일한 구성에서 진행될 수 있다. 따라서, 도 1의 장치(10)와 동일한 구성요소는 동일한 도면부호를 부여하고, 반복되는 설명은 생략한다.
또한, 본 실시예에 따른 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법은 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식을 수행하기 위한 소프트웨어(애플리케이션)에 의해 실행될 수 있다.
도 8을 참조하면, 본 실시예에 따른 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법은, 자율 주행 차량용 센서에서 시간적으로 연속 촬영되는 이미지의 광학 흐름(Optical Flow)을 계산하여 매트릭스 형태의 덴스 플로우(dense flow)를 통해 데이터를 전처리한다(단계 S10).
도 9를 참조하면, 데이터 전처리 단계는 구체적으로, 크기를 나타내는 덴스 플로우에 대한 매트릭스를 최대-최소(min-max) 정규화한 후(단계 S11), 정규화된 매트릭스의 정적인 픽셀 정보를 제거한다(단계 S12). 예를 들어, 정규화된 매트릭스의 중앙값과 미리 설정된 일정 거리 내의 픽셀 정보를 제거하여 정적인 픽셀 정보를 삭제할 수 있다.
매트릭스의 크기를 보간법을 통해 축소하고(단계 S15), 축소된 매트릭스의 각 원소를 벡터로 표현한다(단계 S17). 이어, 벡터로 표현된 원소들을 적어도 한번 이상 복제한다(단계 S19).
데이터 전처리가 완료되면, 전처리된 매트릭스의 각 셀(cell)에 대해 움직이는 물체가 존재하는 확률을 나타내는 벡터화된 컨피던스(confidence) 임계값을 생성하여 컨피던스 마스크를 생성한다(단계 S30).
상기 시간적으로 연속 촬영되는 이미지를 상기 컨피던스 마스크로 맵핑하여 이미지 상에 움직이는 사물의 유무를 판단한다(단계 S50). 일 실시예에서, 상기 컨피던스 마스크를 맵핑한 각 셀의 컨피던스(confidence)가 컨피던스 임계값 보다 높은 경우 사물이 없다고 판단할 수 있다. 반면, 각 셀의 컨피던스(confidence)가 컨피던스 임계값보다 낮은 경우 사물이 있다고 판단할 수 있다.
구체적으로, 이미지를 S X S 그리드(즉, 매트릭스)로 나누고, 여기서 각각의 조각들을 셀(cell)이라고 표현한다. 각각의 셀에 대하여 (i) confidence를 bounding box 개수(상수)만큼 가진다. (ii) 85개의 class에 대해 확률값을 가진다.
예를 들어, S = 2이고 bounding box의 개수가 3이라고 하면, (1,1), (1,2), (2,1), (2,2)에 confidence가 3개(bounding box의 개수) 존재한다. 또한, 시스템은 전체 셀에 대한 컨피던스 임계(confidence threshold)를 가지는데 이는 상수값이다. 컨피던스 임계를 넘어서는 컨피던스만이 후보군에 들어가게 된다.
confidence threshold = 0.8이고 confidence = (0.4, 0.3, 0.1; 0.2, 0.6, 0.8; 0.4, 0.2 0.9; 0.3, 0.5, 0.8;)이라고 한다면, 후보군에는 (0, 0, 0; 0, 0, 0.8; 0, 0, 0.9; 0, 0, 0.8) 값만 남게된다.
후보군에 들어간 셀(cell)의 class를 매겨(85개의 class에 대해 가장 높은 확률값을 가지는) 사물을 인식하게 된다. 여기서, 덴스 플로우(dense flow mask(filter))도 마찬가지로 S X S 그리드로 나누는 단계를 거쳐, 각각의 셀에 대해 컨피던스 임계(confidence threshold)를 매핑을 시킨다.
컨피던스 임계(confidence threshold)가 낮은 값을 가질수록 광학 흐름(optical flow)에서 높은 값을 받은 관계를 가지므로, 움직이는 물체가 있을 확률이 높다. 반면, 기존의 컨피던스 임계(confidence threshold)(= 0.8)에 가까울 수록, 광학 흐름(optical flow)에서 낮은 값을 받은 관계를 가지므로 움직이는 물체가 있을 확률이 적다.
예를 들어, 벡터화된 컨피던스 임계가 (0.3, 0.3, 0.3; 0.4, 0.4 0.4; 0.5, 0.5, 0.5; 0.6, 0.6, 0.6;)를 가진다면 후보군에는 다음과 같게 된다. 후보군: (0.4, 0.3, 0; 0, 0.6, 0.8; 0, 0, 0.9; 0, 0, 0.8;), 덴스 플로우 마스크에 의해서 비록 컨피던스가 낮지만 움직이는 물체인 것을 확인했으니, 후보군으로 올릴 수 있다.
각 시간 단위마다 사물 인식의 정확도와 큐(Queue)의 안정성 간의 트레이드 오프(Tradeoff) 상수를 이용하여 사물 인식 모델을 선택한다(단계 S70).
이 경우, 리아프노프(Lyapunov) 최적화를 기반으로 저장된 큐(Queue)의 크기를 이용하여 최적의 사물 인식 모델을 선택할 수 있다. 일 실시예에서, 큐(Queue)의 크기가 클수록 사물 인식 모델 중 가장 빠른 모델을 선택하고, 큐(Queue)의 크기가 작을수록 사물 인식 모델 중 가장 정확도가 높은 모델을 선택할 수 있다.
이와 같은 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법에 따르면, 자율 주행 환경에서 이미지가 순차적으로 들어온다는 점을 이용하여 광학 흐름 (Optical Flow)을 사물 인식 시스템의 컨피던스(confidence) 임계에 적용하여 자율 주행 환경의 사물 인식에 적용하여 성능을 향상시킨다.
또한, 주행 환경에서 광학 흐름이 필요하지 않는 경우가 존재하는데 이러한 상황에서는 광학 흐름을 적용하지 않은 사물 인식을 할 수 있는 큐잉 기반 모델 선택을 통하여, 성능과 딜레이 간의 트레이드 오프(Tradeoff)를 최적으로 조절한다.
이와 같은, 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법은 애플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.
상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.
프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서는 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
본 발명은 자율 주행을 비롯해 항공 드론, 로봇, 감시카메라 등 비전 센서가 필요한 모든 무인 시스템에 적용이 가능하다. 항공 드론, 로봇도 마찬가지로 움직이는 물체에 대해서 인식하는 환경이 자주 등장하기 때문에 광학 흐름을 사물 인식에 적용하여 그 성능을 높일 수 있다. 이에 따라, 감시 카메라, 사물 추적 관련 로봇, 드론, 자동차 연구 등 다양한 분야에서 유용하게 활용할 수 있다.
10: 사물 인식 장치
100: 전처리부
300: 컨피던스 마스크 생성부
500: 사물 인식부
700: 트레이드 오프부

Claims (12)

  1. 자율 주행 차량용 센서에서 시간적으로 연속 촬영되는 이미지의 광학 흐름(Optical Flow)을 계산하여 매트릭스 형태의 덴스 플로우(dense flow)를 통해 데이터를 전처리하는 단계;
    전처리된 매트릭스의 각 셀(cell)에 대해 움직이는 물체가 존재하는 확률을 나타내는 벡터화된 컨피던스(confidence) 임계값을 생성하여 컨피던스 마스크를 생성하는 단계;
    상기 시간적으로 연속 촬영되는 이미지를 상기 컨피던스 마스크로 맵핑하여 이미지 상에 움직이는 사물의 유무를 판단하는 단계; 및
    각 시간 단위마다 사물 인식의 정확도와 큐(Queue)의 안정성 간의 트레이드 오프(Tradeoff) 상수를 이용하여 사물 인식 모델을 선택하는 단계;를 포함하고,
    상기 데이터를 전처리하는 단계는,
    크기를 나타내는 덴스 플로우에 대한 매트릭스를 최소-최대(min-max) 정규화하는 단계;
    정규화된 매트릭스로부터 정적인 픽셀 정보를 제거하는 단계;
    매트릭스의 크기를 보간법을 통해 축소하는 단계;
    축소된 매트릭스의 각 원소를 벡터로 표현하는 단계; 및
    벡터로 표현된 원소들을 적어도 한번 이상 복제하는 단계;를 포함하는, 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법.
  2. 삭제
  3. 제1항에 있어서, 상기 정규화된 매트릭스로부터 정적인 픽셀 정보를 제거하는 단계는,
    정규화된 매트릭스의 중앙값으로부터 미리 설정된 일정 거리 내의 픽셀 정보를 제거하는, 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법.
  4. 제1항에 있어서, 상기 움직이는 사물의 유무를 판단하는 단계는,
    상기 컨피던스 마스크를 맵핑한 각 셀의 컨피던스(confidence)가 대응하는 컨피던스 임계값 보다 높은 경우 사물이 없다고 판단하고,
    각 셀의 컨피던스(confidence)가 대응하는 컨피던스 임계값보다 낮은 경우 사물이 있다고 판단하는, 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법.
  5. 제1항에 있어서, 상기 사물 인식 모델을 선택하는 단계는,
    리아프노프(Lyapunov) 최적화를 기반으로 저장된 큐(Queue)의 크기를 이용하여 최적의 사물 인식 모델을 선택하는, 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법.
  6. 제5항에 있어서, 상기 사물 인식 모델을 선택하는 단계는,
    큐(Queue)의 크기가 클수록 사물 인식 모델 중 가장 빠른 모델을 선택하고,
    큐(Queue)의 크기가 작을수록 사물 인식 모델 중 가장 정확도가 높은 모델을 선택하는, 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법.
  7. 제1항 및 제3항 내지 제6항 중 어느 하나의 항에 따른 상기 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법을 수행하기 위한 컴퓨터 프로그램이 기록된 컴퓨터로 판독 가능한 저장 매체.
  8. 자율 주행 차량용 센서에서 시간적으로 연속 촬영되는 이미지의 광학 흐름(Optical Flow)을 계산하여 매트릭스 형태의 덴스 플로우(dense flow)를 통해 데이터를 전처리하는 전처리부;
    전처리된 매트릭스의 각 셀(cell)에 대해 움직이는 물체가 존재하는 확률을 나타내는 벡터화된 컨피던스(confidence) 임계값을 생성하여 컨피던스 마스크를 생성하는 컨피던스 마스크 생성부;
    상기 시간적으로 연속 촬영되는 이미지를 상기 컨피던스 마스크로 맵핑하여 이미지 상에 움직이는 사물의 유무를 판단하는 사물 인식부; 및
    각 시간 단위마다 사물 인식의 정확도와 큐(Queue)의 안정성 간의 트레이드 오프(Tradeoff) 상수를 이용하여 사물 인식 모델을 선택하는 트레이드 오프부;를 포함하고,
    상기 전처리부는,
    크기를 나타내는 덴스 플로우에 대한 매트릭스를 최소-최대(min-max) 정규화하고, 정규화된 매트릭스로부터 정적인 픽셀 정보를 제거하고, 매트릭스의 크기를 보간법을 통해 축소하고, 축소된 매트릭스의 각 원소를 벡터로 표현하고, 벡터로 표현된 원소들을 적어도 한번 이상 복제하여 데이터를 전처리하는, 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 장치.
  9. 삭제
  10. 제8항에 있어서, 상기 사물 인식부는,
    상기 컨피던스 마스크를 맵핑한 각 셀의 컨피던스(confidence)가 대응하는 컨피던스 임계값 보다 높은 경우 사물이 없다고 판단하고,
    각 셀의 컨피던스(confidence)가 대응하는 컨피던스 임계값보다 낮은 경우 사물이 있다고 판단하는, 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 장치.
  11. 제8항에 있어서, 상기 트레이드 오프부는,
    리아프노프(Lyapunov) 최적화를 기반으로 저장된 큐(Queue)의 크기를 이용하여 최적의 사물 인식 모델을 선택하는, 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 장치.
  12. 제11항에 있어서, 상기 트레이드 오프부는,
    큐(Queue)의 크기가 클수록 사물 인식 모델 중 가장 빠른 모델을 선택하고,
    큐(Queue)의 크기가 작을수록 사물 인식 모델 중 가장 정확도가 높은 모델을 선택하는, 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 장치.
KR1020200094506A 2020-07-29 2020-07-29 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법, 이를 수행하기 위한 기록 매체 및 장치 KR102244380B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200094506A KR102244380B1 (ko) 2020-07-29 2020-07-29 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법, 이를 수행하기 위한 기록 매체 및 장치
US17/315,554 US20220036100A1 (en) 2020-07-29 2021-05-10 Method for object recognition using queue-based model selection and optical flow in autonomous driving environment, recording medium and device for performing the method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200094506A KR102244380B1 (ko) 2020-07-29 2020-07-29 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법, 이를 수행하기 위한 기록 매체 및 장치

Publications (1)

Publication Number Publication Date
KR102244380B1 true KR102244380B1 (ko) 2021-04-26

Family

ID=75733442

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200094506A KR102244380B1 (ko) 2020-07-29 2020-07-29 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법, 이를 수행하기 위한 기록 매체 및 장치

Country Status (2)

Country Link
US (1) US20220036100A1 (ko)
KR (1) KR102244380B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102343047B1 (ko) * 2021-06-17 2021-12-24 주식회사 인피닉 2d 이미지 전처리 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102515081B1 (ko) * 2022-03-22 2023-03-29 한화시스템 주식회사 객체인식 소프트웨어 학습방법 및 학습장치

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101942808B1 (ko) * 2018-11-13 2019-01-29 주식회사 인텔리빅스 객체 이미지 인식 dcnn 기반 cctv 영상분석장치
KR20190028242A (ko) 2017-09-08 2019-03-18 삼성전자주식회사 뉴럴 네트워크 학습 방법 및 장치
KR20190086334A (ko) * 2018-01-12 2019-07-22 숭실대학교산학협력단 촬영 이미지에서 확률 기반으로 led를 추적하는 방법 및 장치
KR102060286B1 (ko) 2019-10-29 2019-12-27 주식회사 코드42 이미지 정보를 활용한 레이더 오브젝트 검출 임계값 결정 방법 및 이를 이용한 레이더 오브젝트 정보 생성 장치
KR102060662B1 (ko) 2017-05-16 2019-12-30 삼성전자주식회사 차량의 주행 이벤트를 검출하는 전자 장치 및 방법
KR20200015301A (ko) 2018-08-03 2020-02-12 중앙대학교 산학협력단 동적 탐지모듈 선택을 위한 객체 탐지 장치 및 그 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007104093A1 (en) * 2006-03-10 2007-09-20 Neurotech Research Pty Limited Subject modelling
CN113632094A (zh) * 2019-02-22 2021-11-09 谷歌有限责任公司 存储器引导的视频对象检测

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102060662B1 (ko) 2017-05-16 2019-12-30 삼성전자주식회사 차량의 주행 이벤트를 검출하는 전자 장치 및 방법
KR20190028242A (ko) 2017-09-08 2019-03-18 삼성전자주식회사 뉴럴 네트워크 학습 방법 및 장치
KR20190086334A (ko) * 2018-01-12 2019-07-22 숭실대학교산학협력단 촬영 이미지에서 확률 기반으로 led를 추적하는 방법 및 장치
KR20200015301A (ko) 2018-08-03 2020-02-12 중앙대학교 산학협력단 동적 탐지모듈 선택을 위한 객체 탐지 장치 및 그 방법
KR101942808B1 (ko) * 2018-11-13 2019-01-29 주식회사 인텔리빅스 객체 이미지 인식 dcnn 기반 cctv 영상분석장치
KR102060286B1 (ko) 2019-10-29 2019-12-27 주식회사 코드42 이미지 정보를 활용한 레이더 오브젝트 검출 임계값 결정 방법 및 이를 이용한 레이더 오브젝트 정보 생성 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102343047B1 (ko) * 2021-06-17 2021-12-24 주식회사 인피닉 2d 이미지 전처리 방법

Also Published As

Publication number Publication date
US20220036100A1 (en) 2022-02-03

Similar Documents

Publication Publication Date Title
US10672131B2 (en) Control method, non-transitory computer-readable storage medium, and control apparatus
US11003893B2 (en) Face location tracking method, apparatus, and electronic device
CN113286194A (zh) 视频处理方法、装置、电子设备及可读存储介质
US20180114071A1 (en) Method for analysing media content
CN111508002B (zh) 一种小型低飞目标视觉检测跟踪系统及其方法
CN111263954B (zh) 基于根据自运动的感官预测检测移动障碍物的系统和方法
Tavakkoli et al. Non-parametric statistical background modeling for efficient foreground region detection
KR102244380B1 (ko) 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법, 이를 수행하기 위한 기록 매체 및 장치
KR20200095356A (ko) 딥 뉴럴 네트워크(deep neural network) 기반의 다중 패치 조합(multiple patch combination)을 이용하여 얼굴을 인식하고, 극도의 상황에서 결함 허용 능력 및 흔들림에 강인한 성질을 향상시키는 방법
CN111489298B (zh) 用gan减少图像的畸变的学习方法及装置、测试方法及装置
GB2409028A (en) Face detection
GB2409027A (en) Face detection
US10482584B1 (en) Learning method and learning device for removing jittering on video acquired through shaking camera by using a plurality of neural networks for fault tolerance and fluctuation robustness in extreme situations, and testing method and testing device using the same
EP1542152A1 (en) Object detection
KR102217020B1 (ko) 단일 단계 고밀도 피라미드 특징 네트워크를 기반으로 하는 고해상도 항공 이미지 내의 물체감지장치
EP1542154A2 (en) Object detection
CN112200131A (zh) 一种基于视觉的车辆碰撞检测方法、智能终端及存储介质
KR20220076398A (ko) Ar장치를 위한 객체 인식 처리 장치 및 방법
KR20210099450A (ko) 딥러닝을 이용한 원거리 소형 드론 탐지 방법
EP3789909A1 (en) Image classification in a sequence of frames
CN113065379B (zh) 融合图像质量的图像检测方法、装置、电子设备
CN111583146A (zh) 一种基于改进多尺度循环网络的人脸图像去模糊方法
CN113743357A (zh) 视频表征自监督对比学习方法和装置
KR102372988B1 (ko) 시계열 이벤트를 이용하여 카메라의 자세 변화 결과를 추정하기 위한 학습 방법 및 학습 장치 그리고 이를 이용한 테스트 방법 및 테스트 장치
US11869212B1 (en) Method for training video object detection model using training dataset and learning device using the same

Legal Events

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