KR20210130330A - 호스트 차량을 제어하는 전자 장치 및 이의 동작 방법 - Google Patents

호스트 차량을 제어하는 전자 장치 및 이의 동작 방법 Download PDF

Info

Publication number
KR20210130330A
KR20210130330A KR1020200048305A KR20200048305A KR20210130330A KR 20210130330 A KR20210130330 A KR 20210130330A KR 1020200048305 A KR1020200048305 A KR 1020200048305A KR 20200048305 A KR20200048305 A KR 20200048305A KR 20210130330 A KR20210130330 A KR 20210130330A
Authority
KR
South Korea
Prior art keywords
image processing
host vehicle
image
speed
processing module
Prior art date
Application number
KR1020200048305A
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 KR1020200048305A priority Critical patent/KR20210130330A/ko
Priority to US17/146,125 priority patent/US11670092B2/en
Priority to DE102021100853.0A priority patent/DE102021100853A1/de
Priority to CN202110283501.5A priority patent/CN113548055A/zh
Publication of KR20210130330A publication Critical patent/KR20210130330A/ko
Priority to US18/139,168 priority patent/US20230260290A1/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
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/02Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R1/00Optical viewing arrangements; Real-time viewing arrangements for drivers or passengers using optical image capturing systems, e.g. cameras or video systems specially adapted for use in or on vehicles
    • 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
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • 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
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • B60W30/095Predicting travel path or likelihood of collision
    • 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
    • B60W30/14Adaptive cruise control
    • B60W30/143Speed control
    • 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
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/10Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to vehicle motion
    • B60W40/105Speed
    • 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
    • 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
    • B60W60/0015Planning or execution of driving tasks specially adapted for safety
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/93Lidar systems specially adapted for specific applications for anti-collision purposes
    • G01S17/931Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • 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/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • 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
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/57Mechanical or electrical details of cameras or camera modules specially adapted for being embedded in other devices
    • H04N5/2257
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R2300/00Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle
    • B60R2300/30Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of image processing
    • 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
    • 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
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • B60W2520/10Longitudinal speed
    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60YINDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
    • B60Y2300/00Purposes or special features of road vehicle drive control systems
    • B60Y2300/08Predicting or avoiding probable or impending collision
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60YINDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
    • B60Y2300/00Purposes or special features of road vehicle drive control systems
    • B60Y2300/14Cruise control
    • B60Y2300/143Speed control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20004Adaptive image processing
    • G06T2207/20008Globally adaptive
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle
    • 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
    • G06V20/584Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads of vehicle lights or traffic lights

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • General Physics & Mathematics (AREA)
  • Mechanical Engineering (AREA)
  • Transportation (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Electromagnetism (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Game Theory and Decision Science (AREA)
  • Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Medical Informatics (AREA)
  • Signal Processing (AREA)
  • Traffic Control Systems (AREA)
  • Image Analysis (AREA)

Abstract

본 개시의 기술적 사상에 따른 호스트 차량을 제어하는 전자 장치는, 호스트 차량의 주변 환경을 촬영하는 이미지 센서 및 이미지 센서에 의해 촬영된 제1 이미지를 기초로 이미지 처리 동작을 수행하고, 처리 결과를 기초로 호스트 차량을 제어하는 프로세서를 포함하고, 프로세서는, 호스트 차량의 속도를 기초로 이미지 처리 동작의 고속 수행이 필요한지 판단하고, 고속 수행이 필요하지 않으면, 제1 이미지 처리 모듈을 이용하여 이미지 처리 동작을 수행하고, 고속 수행이 필요하면, 제1 이미지 처리 모듈보다 데이터 처리량이 적은 제2 이미지 처리 모듈을 이용하여 이미지 처리 동작을 수행하는 것을 특징으로 할 수 있다.

Description

호스트 차량을 제어하는 전자 장치 및 이의 동작 방법{ELECTRONIC DEVICE FOR CONTROLLING DRIVING VEHICLE AND OPERATION MTEHOD THEREOF}
본 개시의 기술적 사상은 호스트 차량을 제어하는 전자 장치 및 이의 동작 방법에 관한 것으로서, 구체적으로 호스트 차량에 대한 정보를 기초로 이미지 처리 동작의 고속 수행이 필요한지 판단하고, 고속 수행이 필요하면 데이터 처리량이 적은 이미지 처리 모듈을 이용하여 이미지 처리 동작을 수행하는 전자 장치 및 이의 동작 방법에 관한 것이다.
자율 주행 시스템(또는 ADAS(Advanced Driver Assistance System))은 다양한 종류의 센서들로부터 호스트 차량 및 주변 환경에 대한 정보를 획득하고, 획득한 정보들을 기초로 호스트 차량을 제어함으로써 안전한 주행을 수행할 수 있다. 한편, 자율 주행 시스템은 호스트 차량을 제어하기 위해 상당한 양의 데이터를 처리해야 하고, 호스트 차량은 고속으로 주행할 수 있다는 점에서, 자율 주행 시스템의 빠른 데이터 처리 속도가 요구된다. 특히, 호스트 차량이 저속으로 주행하는 경우에는 자율 주행 시스템의 반응 속도의 중요도가 상대적으로 낮으나, 호스트 차량이 고속으로 주행하거나 주변 차량이 갑자기 끼어드는 등의 위험 상황의 경우에는 자율 주행 시스템의 빠른 반응 속도가 요구된다.
본 개시의 기술적 사상은 이미지 처리 동작의 고속 수행이 필요한지 판단하고, 판단 결과에 대응하는 이미지 처리 모듈을 이용하여 이미지 처리 동작을 수행하는 전자 장치 및 이의 동작 방법을 제공한다.
상기와 같은 목적을 달성하기 위하여, 본 개시의 기술적 사상의 일 측면에 따른 호스트 차량을 제어하는 전자 장치는, 호스트 차량의 주변 환경을 촬영하는 이미지 센서 및 이미지 센서에 의해 촬영된 제1 이미지를 기초로 이미지 처리 동작을 수행하고, 처리 결과를 기초로 호스트 차량을 제어하는 프로세서를 포함하고, 프로세서는, 호스트 차량의 속도를 기초로 이미지 처리 동작의 고속 수행이 필요한지 판단하고, 고속 수행이 필요하지 않으면, 제1 이미지 처리 모듈을 이용하여 이미지 처리 동작을 수행하고, 고속 수행이 필요하면, 제1 이미지 처리 모듈보다 데이터 처리량이 적은 제2 이미지 처리 모듈을 이용하여 이미지 처리 동작을 수행하는 것을 특징으로 할 수 있다.
본 개시의 기술적 사상의 일 측면에 따른 호스트 차량을 제어하는 전자 장치는, 호스트 차량의 주변 환경을 촬영하는 이미지 센서 및 이미지 센서에 의해 촬영된 제1 이미지를 기초로 이미지 처리 동작을 수행하고, 처리 결과를 기초로 상기 호스트 차량을 제어하는 프로세서를 포함하고, 프로세서는, 호스트 차량의 주행 정보 또는 호스트 차량의 주변 환경에 대한 정보를 기초로 이미지 처리 동작의 동작 파라미터를 선택하고, 선택한 동작 파라미터에 따라 이미지 처리 동작을 수행하는 것을 특징으로 할 수 있다.
본 개시의 기술적 사상의 일 측면에 따른 호스트 차량을 제어하는 전자 장치의 동작 방법은, 호스트 차량의 주변 환경을 촬영한 제1 이미지를 획득하는 단계, 호스트 차량의 속도 정보를 획득하는 단계, 호스트 차량의 속도가 임계 속도 이상인지 확인하는 단계, 호스트 차량의 속도가 임계 속도 미만이면 제1 이미지 처리 모듈을 이용하여 제1 이미지를 처리하는 단계, 호스트 차량의 속도가 임계 속도 이상이면 제1 이미지 처리 모듈보다 데이터 처리량이 적은 제2 이미지 처리 모듈을 이용하여 제1 이미지를 처리하는 단계 및 제1 이미지의 처리 결과를 기초로 호스트 차량을 제어하는 단계를 포함할 수 있다.
본 개시의 실시 예에 따른 호스트 차량을 제어하는 전자 장치 및 이의 동작 방법에 의하면, 이미지 처리 동작의 고속 수행이 필요한지 판단하고, 고속 수행이 필요하면 데이터 처리량이 적은 이미지 처리 모듈을 이용하여 이미지 처리 동작을 수행함으로써, 위험 상황에서 빠른 반응 속도로 호스트 차량을 제어할 수 있다.
도 1은 본 개시의 일 실시예에 따른 전자 장치를 나타내는 블록도이다.
도 2는 본 개시의 일 실시예에 따른 전자 장치를 포함하는 호스트 차량을 나타내는 도면이다.
도 3은 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 나타내는 흐름도이다.
도 4는 본 개시의 일 실시예에 따른 이미지 처리 동작을 설명하기 위한 도면이다.
도 5는 본 개시의 일 실시예에 따른 이미지 처리 동작을 설명하기 위한 도면이다.
도 6a 내지 도 6c는 본 개시의 일 실시예에 따른 기설정된 이벤트를 나타내는 도면이다.
도 7은 본 개시의 일 실시예에 따른 이미지 처리 모듈을 나타내는 블록도이다.
도 8a 및 도 8b는 본 개시의 일 실시예에 따른 관심 영역(Region Of Interest, ROI) 추출 동작을 설명하기 위한 도면이다.
도 9a 및 도 9b는 본 개시의 일 실시예에 따른 복수의 피라미드 이미지들의 생성 동작을 설명하기 위한 도면이다.
도 10은 본 개시의 일 실시예에 따른 제2 이미지 처리 모듈의 이미지 처리 동작을 설명하기 위한 도면이다.
도 11은 본 개시의 일 실시예에 따른 이미지 처리 모듈을 나타내는 블록도이다.
도 12는 본 개시의 일 실시예에 따른 제2 이미지 처리 모듈의 이미지 처리 동작을 설명하기 위한 도면이다.
도 13은 본 개시의 일 실시예에 따른 복수의 이미지 처리 모듈들을 이용한 이미지 처리 동작을 나타내는 타이밍도이다.
도 14는 본 개시의 일 실시예에 따른 전자 장치를 나타내는 블록도이다.
도 15는 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 나타내는 흐름도이다.
도 16은 본 개시의 일 실시예에 따른 동작 파라미터 선택 동작을 나타내는 흐름도이다.
도 17은 본 개시의 일 실시예에 따른 자율 주행 장치를 나타내는 블록도이다.
도 1은 본 개시의 일 실시예에 따른 전자 장치를 나타내는 블록도이다.
도 1을 참조하면, 전자 장치(10)는 이미지 센서(100), 메모리(200) 및 프로세서(300)를 포함할 수 있다.
전자 장치(10)는 이미지에 대하여 이미지 처리 동작을 수행하는 장치일 수 있다. 여기서 이미지 처리 동작이란, 이미지를 분석함으로써, 이미지에 포함된 적어도 하나의 객체에 대한 객체 인식(detection) 또는 분류(segmentation)를 수행하는 동작을 의미할 수 있다. 한편, 이미지 처리 동작의 종류는 전술한 예에 한하지 않으며, 다양한 동작을 포함할 수 있다.
전자 장치(10)는 PC(personal computer), IoT (Internet of Things) 장치, 휴대용 전자 기기로 구현될 수 있다. 휴대용 전자 기기는, 랩탑 컴퓨터, 이동 전화기, 스마트폰, 태블릿 PC, PDA(personal digital assistant), EDA(enterprise digital assistant), 디지털 스틸 카메라, 디지털 비디오 카메라, 오디오 장치, PMP(portable multimedia player), PND(personal navigation device), MP3 플레이어, 휴대용 게임 콘솔(handheld game console), e-북(e-book), 웨어러블 기기 등과 같은 다양한 장치에 구비될 수 있다.
일 실시예에서, 전자 장치(10)는 호스트 차량을 제어하는 장치(예를 들어, ADAS(Advanced Driver Assistance System)와 같은 차량용 장치)로 구현될 수 있다. 전자 장치(10)는 호스트 차량의 주변 환경을 촬영한 이미지를 기초로 이미지 처리 동작을 수행하고, 처리 결과(즉, 객체 인식 또는 분류 결과)를 기초로 호스트 차량을 제어할 수 있다. 이하에서는, 설명의 편의를 위해, 전자 장치(10)가 호스트 차량을 제어하는 장치인 것을 전제로 설명한다.
이미지 센서(100)는 전자 장치(10)에 임베디드되어, 전자 장치(10)의 주변 환경에 관한 영상 신호를 수신하고, 수신한 영상 신호를 이미지로 출력할 수 있다. 예를 들어, 이미지 센서(100)는 전방 또는 여러 방향의 외부 환경에 대한 빛을 전기적 에너지로 변환하여 이미지를 생성하고, 생성한 이미지를 프로세서(300)에게 출력할 수 있다. 일 실시예에서, 전자 장치(10)가 호스트 차량을 제어하는 장치인 경우, 이미지 센서(100)는 호스트 차량의 주변 환경에 관한 영상 신호를 수신하고, 수신한 영상 신호를 이미지로 출력할 수 있다.
메모리(200)는 데이터를 저장하기 위한 저장 장소로, 이미지 센서(100)를 통해 생성된 데이터 및 프로세서(300)의 연산 수행 과정에서 생성된 각종 데이터를 저장할 수 있다. 예를 들어, 메모리(200)는 이미지 센서(100)를 통해 획득된 이미지를 저장할 수 있다. 그리고 메모리(200)는 프로세서(300)의 동작과 관련하여 후술하는 바와 같이, 프로세서(300)의 이미지 처리 동작에 따른 처리 결과를 저장할 수 있다.
본 개시의 일 실시예에 따른 메모리(200)는 호스트 차량에 대한 정보(Info_V)를 포함할 수 있다. 호스트 차량에 대한 정보(Info_V)는 호스트 차량의 주행 정보 또는 호스트 차량의 주변 환경 정보를 포함할 수 있다. 여기서 호스트 차량의 주행 정보는, 호스트 차량의 속도, 가속도, 이동 거리 및 위치 중 적어도 하나를 포함할 수 있다. 예를 들어, 호스트 차량의 주행 정보는 호스트 차량의 속도를 검출하는 속도계(미도시) 또는 호스트 차량의 가속도를 검출하는 가속도계(미도시)를 이용하여 획득될 수 있다. 또 다른 예로, 호스트 차량의 주행 정보는 이미 수행된 이미지 처리 동작의 처리 결과, 예컨대, 이전 이미지들에 포함된 고정 객체의 프레임 간 이동 거리를 기초로 호스트 차량의 주행 정보를 산출함으로써 획득될 수도 있다. 또 다른 예로, 호스트 차량의 주행 정보는 외부와의 통신을 통해 수신한 호스트 차량의 GPS(Global Positioning System) 정보를 기초로 획득될 수 있다. 한편, 본 개시의 호스트 차량의 주행 정보의 종류 및 획득 방법은 전술한 예에 한하지 않는다.
여기서 호스트 차량의 주변 환경 정보는, 호스트 차량 주변에 위치한 객체의 속도, 가속도, 이동 거리 및 위치, 및 호스트 차량이 주행하는 경로의 정규 속도 또는 제한 속도 중 적어도 하나를 포함할 수 있다. 예를 들어, 호스트 차량의 주변 환경 정보는 이미 수행된 이미지 처리 동작의 처리 결과를 기초로 산출될 수 있다. 또 다른 예로, 호스트 차량의 주변 환경 정보는 외부와의 통신을 통해 수신될 수 있다. 한편, 본 개시의 호스트 차량의 주변 환경 정보의 종류 및 획득 방법은 전술한 예에 한하지 않는다.
그리고 메모리(200)는 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230)을 저장할 수 있다. 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230)은 이미지 센서(100)에 의해 촬영된 이미지를 기초로 이미지 처리 동작을 수행할 수 있다. 일 실시예에서, 제2 이미지 처리 모듈(230)은 제1 이미지 처리 모듈(220)보다 데이터 처리량이 적도록 설계될 수 있다. 구체적으로, 제2 이미지 처리 모듈(230)은 제1 이미지 처리 모듈(220)과 동일한 이미지 처리 단계들에 따라 이미지를 처리하되, 각 이미지 처리 단계에 입력되는 데이터양을 줄이는 방식으로 설계될 수 있다. 이에 따라, 제2 이미지 처리 모듈(230)은 제1 이미지 처리 모듈(220)보다 빠른 속도로 이미지 처리 동작을 수행할 수 있다.
제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230)은 펌웨어 또는 소프트웨어로 구현될 수 있고, 메모리(200)에 로딩되었다가 프로세서(300)에 의해 실행될 수 있다. 그러나, 본 개시는 이에 한정되지 않으며, 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230)은 하드웨어로 구현되거나, 소프트웨어와 하드웨어를 결합한 형태로 구현될 수 있다. 한편, 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230)의 이미지 처리 동작에 대한 구체적인 설명은 도 8과 관련하여 후술한다.
프로세서(300)는 전자 장치(10)의 전반적인 동작을 제어할 수 있다. 프로세서(300)는 CPU(Central Processing Unit), Graphic Processing Unit(GPU), AP(Application Processor), DSP(Digital Signal Processor), FPGA(Field-Programmable Gate Array), NPU(Neural network Processing unit), ECU(Electronic Control Unit), ISP(Image Signal Processor) 등 다양한 연산 처리 장치들을 포함할 수 있다.
프로세서(300)는 이미지 센서(100)에 의해 촬영된 이미지를 기초로 이미지 처리 동작을 수행하고, 처리 결과를 기초로 호스트 차량을 제어할 수 있다. 일 실시예에서, 프로세서(300)는 이미지 센서(100)로부터 이미지를 수신하고, 메모리(200)에 저장된 제1 이미지 처리 모듈(220) 또는 제2 이미지 처리 모듈(230)을 이용하여 수신한 이미지를 분석함으로써, 객체 인식(detection) 또는 분류(segmentation)를 수행할 수 있다. 그리고 프로세서(300)는 객체 인식 또는 분류 결과를 기초로 호스트 차량을 제어할 수 있다.
한편, 본 개시의 일 실시예에 따른 프로세서(300)는 호스트 차량에 대한 정보(Info_V)를 기초로 상기 이미지 처리 동작의 고속 수행이 필요한지 판단하고, 판단 결과에 따라 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230) 중 하나를 선택하고, 선택한 이미지 처리 모듈을 이용하여 이미지 처리 동작을 수행할 수 있다. 여기서 고속 수행이 필요한 경우란, 호스트 차량이 고속으로 주행하거나, 주변 차량이 호스트 차량과 매우 가깝거나, 주변 차량의 속도가 급감하는 등의 위험 상황으로, 안전을 위해 호스트 차량의 빠른 반응 속도가 요구되는 경우를 의미할 수 있다.
프로세서(300)는, 고속 수행이 필요하지 않은 것으로 판단한 경우, 제1 이미지 처리 모듈(220)을 선택할 수 있다. 반면, 고속 수행이 필요한 것으로 판단한 경우, 프로세서(300)는 제1 이미지 처리 모듈(220)보다 데이터 처리량이 적은 제2 이미지 처리 모듈(230)을 선택할 수 있다. 프로세서(300)가 제2 이미지 처리 모듈(230)을 이용하여 이미지 처리 동작을 수행하는 경우, 프로세서(300)는, 제1 이미지 처리 모듈(220)을 이용하여 이미지 처리 동작을 수행하는 경우보다 빠르게 처리 결과를 획득할 수 있다.
본 개시의 일 실시예에 따른 프로세서(300)는 호스트 차량에 대한 정보(Info_V)를 기초로 다양한 방식에 따라 상기 이미지 처리 동작의 고속 수행이 필요한지 판단할 수 있다. 예를 들어, 프로세서(300)는 호스트 차량에 대한 정보(Info_V)의 주행 정보 중 호스트 차량의 속도를 기초로 이미지 처리 동작의 고속 수행 여부를 판단할 수 있다. 또 다른 예로, 프로세서(300)는 호스트 차량에 대한 정보(Info_V)의 주변 환경 정보를 기초로 기설정된 이벤트가 발생했는지 판단하고, 기설정된 이벤트의 발생 여부에 따라 이미지 처리 동작의 고속 수행 필요를 판단할 수 있다. 한편, 프로세서(300)의 이미지 처리 동작의 고속 수행의 필요를 판단하는 동작에 대한 구체적인 설명은 도 4 내지 도 7과 관련하여 후술한다.
한편, 전술한 예에서는 프로세서(300)가 이미지 센서(100)로부터 이미지(IMG)를 수신할 때 이미지 처리 동작의 고속 수행의 필요를 판단하고, 판단 결과에 따라 제1 이미지 처리 모듈(220) 또는 제2 이미지 처리 모듈(230)을 선택하고, 선택한 이미지 처리 모듈을 이용하여 이미지 처리 동작을 수행하는 것으로 설명하였지만, 본 개시는 이에 한정되지 않는다. 프로세서(300)는 이미지 처리 동작의 고속 수행의 필요를 판단하는 동작을 주기별로 수행할 수 있다. 예를 들어, 프로세서(300)는 기설정된 개수의 이미지에 대하여 이미지 처리 동작이 완료될 때마다, 고속 수행의 필요를 판단하는 방식으로 구현될 수 있다.
본 개시의 기술적 사상에 따른 전자 장치(10)는 이미지 처리 동작의 고속 수행이 필요한지 판단하고, 고속 수행이 필요하면 데이터 처리량이 적은 이미지 처리 모듈을 이용하여 이미지 처리 동작을 수행함으로써, 위험 상황에서 빠른 반응 속도로 호스트 차량을 제어할 수 있다.
한편, 도 1에서는, 전자 장치(10)가 이미지 센서(100)를 포함하는 것으로 도시하고 설명하였지만, 실시예에 따라, 전자 장치(10)와 이미지 센서(100)는 별도의 구성으로 구현될 수 있고, 전자 장치(10)는 외부의 이미지 센서(100)로부터 이미지를 수신하고, 수신한 이미지에 대해 이미지 처리 동작을 수행하는 방식으로도 구현될 수 있다. 또한, 실시예에 따라, 전자 장치(10)는 이미지 센서(100)를 포함하지 않고, 통신 장치(미도시)를 통해 이미지를 수신하고, 수신한 이미지에 대해 이미지 처리 동작을 수행하는 방식으로도 구현될 수 있다.
또한, 도 1에서는, 전자 장치(10)가 하나의 이미지 센서(100)를 포함하는 것으로 도시하고 설명하였지만, 전자 장치(10)는 복수의 이미지 센서(100)를 포함할 수 있다. 전자 장치(10)는 복수의 이미지 센서(100)로부터 수신한 복수의 이미지들에 대하여 이미지 처리 동작을 수행하고, 처리 결과를 기초로 호스트 차량을 제어할 수 있다.
또한, 도 1에서는, 전자 장치(10)가 메모리(200)를 포함하는 것으로 도시하고 설명하였지만, 실시예에 따라, 전자 장치(10)와 메모리(200)는 별도의 구성으로 구현될 수 있고, 전자 장치(10)는 외부의 메모리(200)에 저장된 제1 이미지 처리 모듈(220) 또는 제2 이미지 처리 모듈(230)을 로딩하는 방식으로도 구현될 수 있다.
또한, 도 1에서는, 전자 장치(10)가 하나의 메모리(200)를 포함하는 것으로 도시하고 설명하였지만, 전자 장치(10)는 복수의 메모리(200)를 포함할 수 있다. 또한, 실시예에 따라, 전자 장치(10)는 하나의 메모리에 이미지 센서(100)가 촬영한 이미지를 저장하고, 나머지 메모리에 제1 이미지 처리 모듈(220) 또는 제2 이미지 처리 모듈(230)을 저장하도록 구현될 수 있다.
도 2는 본 개시의 일 실시예에 따른 전자 장치를 포함하는 호스트 차량을 나타내는 도면이다. 상세하게는, 도 2는 도 1의 전자 장치(10)를 포함하는 호스트 차량(400)의 예시를 나타내는 도면이다.
도 1 및 도 2를 참조하면, 호스트 차량(400)은 전자 장치(10) 및 차량 제어부(410)를 포함할 수 있다. 전자 장치(10)는 호스트 차량(400)의 상단에 배치될 수 있고, 이미지 센서(100)는 호스트 차량(400)의 전방을 촬영할 수 있다. 한편, 전자 장치(10)의 배치 위치는 본 실시예에 한하지 않으며, 실시예에 따라 호스트 차량(400)의 다양한 위치에 배치될 수 있다. 본 실시예에서, 전자 장치(10)는 이미지 센서(100)에 의해 촬영된 이미지에 대하여 이미지 처리 동작만을 수행하고, 이미지 처리 동작의 결과를 차량 제어부(410)에 제공하는 방식으로 구현될 수 있다.
차량 제어부(410)는 호스트 차량(400)의 전반적인 주행을 제어할 수 있다. 차량 제어부(410)는 호스트 차량(400)의 주변 상황을 판단하고, 판단 결과를 기초로 호스트 차량(400)의 주행 방향 또는 주행 속도 등을 제어할 수 있다. 일 실시예에서, 차량 제어부(410)는 전자 장치(10)의 이미지 처리 동작의 처리 결과(예컨대, 객체 인식 및 분석 결과)를 수신하고, 수신한 처리 결과를 기초로 호스트 차량(400)의 주변 상황을 판단하고, 판단 결과를 기초로 호스트 차량(400)의 구동부(미도시)에 제어 신호를 전송함으로써, 호스트 차량(400)의 주행 방향 또는 주행 속도 등을 제어할 수 있다.
한편, 도 2를 도시하고 설명함에 있어서, 차량 제어부(410)와 전자 장치(10)가 별도의 구성인 것으로 도시하고 설명하였지만, 실시예에 따라, 전자 장치(10)는 차량 제어부(410)를 포함하는 방식으로 구현되거나, 전자 장치(10)의 프로세서(300)와 차량 제어부(410)가 하나의 구성인 방식으로 구현될 수도 있다.
도 3은 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 나타내는 흐름도이다. 상세하게는, 도 3은 도 1의 전자 장치(10)의 동작 방법을 나타내는 흐름도이다. 도 3을 구성하는 단계들 중 적어도 일부는 전자 장치(10)의 프로세서(300)에 의해 수행될 수 있다.
도 1 및 도 3을 참조하면, 전자 장치(10)는 호스트 차량의 주변 환경을 촬영한 제1 이미지를 획득할 수 있다(S110). 예를 들어, 전자 장치(10)는 이미지 센서(100)를 통해 호스트 차량의 주변 환경을 촬영한 제1 이미지를 획득할 수 있다. 또 다른 예로, 전자 장치(10)에 이미지 센서(100)가 구비되지 않는 것으로 구현된 경우, 전자 장치(10)는 외부로부터 제1 이미지를 획득하는 방식으로도 구현될 수 있다.
그리고 전자 장치(10)는 이미지 처리 동작의 고속 수행이 필요한지 판단할 수 있다(S120). 구체적으로, 전자 장치(10)는 호스트 차량의 주행 정보 또는 호스트 차량의 주변 환경 정보를 기초로 이미지 처리 동작의 고속 수행이 필요한지 판단할 수 있다. 여기서 고속 수행이 필요한 경우란, 호스트 차량이 고속으로 주행하거나, 주변 차량이 호스트 차량과 매우 가깝거나, 주변 차량의 속도가 급감하는 등의 위험 상황으로, 안전을 위해 호스트 차량의 빠른 반응 속도가 요구되는 경우를 의미할 수 있다. 호스트 차량의 주행 정보 또는 호스트 차량의 주변 환경 정보는, 도 1에서 전술한 내용과 실질적으로 동일할 수 있으므로, 중복 설명은 생략한다.
만약 이미지 처리 동작의 고속 수행이 필요하지 않으면(S120-N), 전자 장치(10)는 제1 이미지 처리 모듈(220)을 이용하여 이미지 처리 동작을 수행할 수 있다(S130). 구체적으로, 프로세서(300)는 호스트 차량의 속도가 제1 임계 속도 미만이면, 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230) 중 제1 이미지 처리 모듈(220)을 선택하고, 선택한 제1 이미지 처리 모듈(220)을 이용하여 이미지 처리 동작을 수행할 수 있다.
여기서 제1 이미지 처리 모듈(220)은 제2 이미지 처리 모듈(230)보다 데이터 처리량이 많도록 설계된 이미지 처리 모듈이다. 여기서 이미지 처리 동작이란, 이미지를 분석함으로써, 이미지에 포함된 적어도 하나의 객체에 대한 객체 인식(detection) 또는 분류(segmentation)를 수행하는 동작을 의미할 수 있다. 한편, 이미지 처리 동작의 종류는 전술한 예에 한하지 않으며, 다양한 동작을 포함할 수 있다.
반면, 이미지 처리 동작의 고속 수행이 필요하면(S120-Y), 전자 장치(10)는 제1 이미지 처리 모듈(220)보다 데이터 처리량이 적은 제2 이미지 처리 모듈(230)을 이용하여 이미지 처리 동작을 수행할 수 있다(S140). 제2 이미지 처리 모듈(230)을 이용하여 이미지 처리 동작을 수행하는 경우, 전자 장치(10)는 제1 이미지 처리 모듈(220)을 이용하여 이미지 처리 동작을 수행하는 경우보다 빠르게 처리 결과를 획득할 수 있다. 그리고 전자 장치(10)는 처리 결과를 기초로 호스트 차량을 제어할 수 있다(S150). 구체적으로, 전자 장치(10)는 이미지 처리 동작의 수행 결과인 객체 인식 또는 분류 결과를 기초로 호스트 차량의 주변 상황을 판단하고, 판단 결과를 기초로 주행 방향 또는 주행 속도 등을 제어할 수 있다.
도 4는 본 개시의 일 실시예에 따른 이미지 처리 동작을 설명하기 위한 도면이다. 상세하게는, 도 4는 도 3의 이미지 처리 동작의 고속 수행의 필요를 판단하는 동작(단계 S120) 및 이미지 처리 동작(단계 S130 및 단계 S140)의 구체적인 동작을 설명하기 위한 도면이다.
도 1, 도 3 및 도 4를 참조하면, 호스트 차량의 주변 환경을 촬영한 제1 이미지를 획득한 이후(From S110), 전자 장치(10)는 호스트 차량의 속도가 제1 임계 속도 이상인지 확인할 수 있다(S121). 여기서 제1 임계 속도는 호스트 차량이 고속으로 주행함을 판단하는 기준이 되는 속도로, 제조사 또는 사용자에 의해 설정될 수 있다.
일 실시예에서, 전자 장치(10)는 호스트 차량의 주행 속도를 검출하는 속도계로부터 호스트 차량의 주행 속도를 획득할 수 있다. 또 다른 실시예에서, 전자 장치(10)는 이미 수행된 이미지 처리 동작의 처리 결과로부터 호스트 차량의 주행 속도를 획득할 수 있다. 예를 들어, 전자 장치(10)는 이전 이미지들에 대한 객체 인식 결과에서, 이전 이미지들에 포함된 고정 객체의 프레임 간 이동 거리를 기초로 호스트 차량의 주행 속도를 산출할 수 있다.
만약 호스트 차량의 속도가 제1 임계 속도 미만이면(S121-N), 전자 장치(10)는 제1 이미지 처리 모듈(220)을 이용하여 이미지 처리 동작을 수행할 수 있다(S130). 구체적으로, 호스트 차량의 속도가 제1 임계 속도 미만이면, 현재 호스트 차량이 저속 주행 중이므로, 전자 장치(10)의 이미지 처리 동작 및 처리 결과를 이용한 호스트 차량의 제어의 관점에서, 빠른 반응 속도의 필요성이 상대적으로 낮을 수 있다. 따라서, 전자 장치(10)는 제1 이미지 처리 모듈(220)을 이용하여 이미지 처리 동작을 수행할 수 있다.
반면, 호스트 차량의 속도가 제1 임계 속도 이상이면(S121-YES), 전자 장치(10)는 제1 이미지 처리 모듈(220)보다 데이터 처리량이 적은 제2 이미지 처리 모듈(230)을 이용하여 이미지 처리 동작을 수행할 수 있다(S140). 구체적으로, 호스트 차량의 속도가 제1 임계 속도 이상이면, 현재 호스트 차량이 고속 주행 중이어서 단위 시구간 동안 많은 거리를 이동하므로, 전자 장치(10)의 이미지 처리 동작 및 처리 결과를 이용한 호스트 차량의 제어의 관점에서, 빠른 반응 속도의 필요성이 상대적으로 높을 수 있다. 따라서, 전자 장치(10)는 데이터 처리량이 더 적은 제2 이미지 처리 모듈(230)을 이용하여 이미지 처리 동작을 수행할 수 있다.
그리고 전자 장치(10)는 이미지 처리 동작이 완료되면 다음 단계를 수행할 수 있다(To S150).
이와 같이, 본 실시예에 따른 전자 장치(10)는 호스트 차량이 저속 주행 또는 고속 주행 여부에 따라 이미지 처리 동작에 이용하는 이미지 처리 모듈을 선택할 수 있다. 즉, 본 실시예에 따른 전자 장치(10)는 호스트 차량의 주행 속도에 따라 이미지 처리 방식을 적응적으로 적용할 수 있다.
도 5는 본 개시의 일 실시예에 따른 이미지 처리 동작을 설명하기 위한 도면이다. 상세하게는, 도 5는 도 4의 변형 가능한 실시예를 나타내는 도면으로, 도 3의 이미지 처리 동작의 고속 수행의 필요를 판단하는 동작(단계 S120) 및 이미지 처리 동작(단계 S130 및 단계 S140)의 구체적인 동작을 설명하기 위한 도면이다.
도 1, 도 3 내지 도 5를 참조하면, 전자 장치(10)는 호스트 차량의 속도가 제1 임계 속도 이상인지 확인할 수 있다(S123). 만약 호스트 차량의 속도가 제1 임계 속도 이상이면(S123-Y), 전자 장치(10)는 제1 이미지 처리 모듈(220)보다 데이터 처리량이 적은 제2 이미지 처리 모듈(230)을 이용하여 이미지 처리 동작을 수행할 수 있다(S140).
반면, 호스트 차량의 속도가 제1 임계 속도 미만이면(S121-N), 전자 장치(10)는 기설정된 이벤트가 발생했는지 확인할 수 있다(S125). 구체적으로, 전자 장치(10)는 호스트 차량의 주행 정보 또는 호스트 차량의 주변 환경 정보 중 적어도 하나를 기초로 기설정된 이벤트가 발생했는지 확인할 수 있다. 여기서 기설정된 이벤트란, 주변 차량이 호스트 차량과 매우 가깝게 위치하거나, 주변 차량의 속도가 급감하거나, 호스트 차량이 주행하는 도로의 정규 속도 또는 제한 속도가 임계 속도를 초과하는 등의 위험 상황이 감지되는 다양한 이벤트를 의미할 수 있다. 기설정된 이벤트의 종류는 전술한 예에 한하지 않으며, 제조사 또는 사용자에 의해 설정될 수 있다. 기설정된 이벤트의 판단 동작의 구체적인 예시는 도 6a 내지 도 6c에서 후술한다.
만약 기설정된 이벤트가 발생하지 않은 경우(S125-N), 전자 장치(10)는 제1 이미지 처리 모듈(220)을 이용하여 이미지 처리 동작을 수행할 수 있다(S130). 구체적으로, 기설정된 이벤트가 발생하지 않으면, 현재 호스트 차량이 위험 상황에 처하지 않은 것이므로, 전자 장치(10)의 이미지 처리 동작 및 처리 결과를 이용한 호스트 차량의 제어의 관점에서, 빠른 반응 속도의 필요성이 상대적으로 낮을 수 있다. 따라서, 전자 장치(10)는 제1 이미지 처리 모듈(220)을 이용하여 이미지 처리 동작을 수행할 수 있다.
반면, 기설정된 이벤트가 발생한 경우(S125-Y), 전자 장치(10)는 제2 이미지 처리 모듈(230)을 이용하여 이미지 처리 동작을 수행할 수 있다(S140). 구체적으로, 기설정된 이벤트가 발생하면, 현재 호스트 차량이 위험 상황에 처한 것이므로, 전자 장치(10)의 이미지 처리 동작 및 처리 결과를 이용한 호스트 차량의 제어의 관점에서, 빠른 반응 속도의 필요성이 상대적으로 높을 수 있다. 예를 들어, 호스트 차량(400)이 제1 임계 속도 미만의 저속 주행 중이라고 하더라도, 호스트 차량(400)의 전방 차량이 급제동하는 경우, 이미지 처리 속도를 증대시켜 빠르게 반응할 필요가 있다. 따라서, 전자 장치(10)는 데이터 처리량이 더 적은 제2 이미지 처리 모듈(230)을 이용하여 이미지 처리 동작을 수행할 수 있다.
그리고 전자 장치(10)는 이미지 처리 동작이 완료되면 다음 단계를 수행할 수 있다(To S150).
이와 같이, 본 실시예에 따른 전자 장치(10)는 기설정된 이벤트의 발생 여부에 따라 이미지 처리 동작에 이용하는 이미지 처리 모듈을 선택할 수 있다. 즉, 본 실시예에 따른 전자 장치(10)는 호스트 차량이 위험 상황에 처했는지 여부에 따라 이미지 처리 방식을 선택적으로 적용할 수 있다.
한편, 도 5를 도시하고 설명함에 있어서, 단계 S123가 단계 S125에 선행하는 것으로 도시하고 설명하였지만, 본 개시는 이에 한정되지 않는다. 예를 들어, 본 개시는 단계 S125가 단계 S123에 선행하는 방식으로 구현될 수 있으며, 실시예에 따라, 단계 S125만이 수행되는 방식으로도 구현될 수 있다.
도 6a 내지 도 6c는 본 개시의 일 실시예에 따른 기설정된 이벤트를 나타내는 도면이다. 상세하게는, 도 6a는 호스트 차량에 인접한 주변 차량의 속도가 급감하는 상황을 나타내는 도면이고, 도 6b는 주변 차량이 호스트 차량과 매우 가까운 상황을 나타내는 도면이고, 도 6c는 호스트 차량이 주행하는 도로의 제한 속도가 임계 속도를 초과하는 상황을 나타내는 도면이다.
전자 장치(10)는 이미 수행된 이미지 처리 동작의 처리 결과를 이용하여 기설정된 이벤트의 발생 여부를 판단할 수 있다. 이하에서는 도 6a 내지 도 6c를 참조하여, 다양한 종류의 기설정된 이벤트의 발생을 판단하는 방법을 설명한다,
전자 장치(10)는 이전 이미지들에 공통적으로 포함된 주변 차량에 대한 정보를 기초로, 주변 차량의 속도 변화를 산출할 수 있다. 예를 들어, 도 6a를 참조하면, 전자 장치(10)는 이미 수행된 객체 인식 결과 중 이전 이미지들(IMG)에 공통적으로 포함된 주변 차량(OB1)의 프레임 간 이동 거리를 기초로, 주변 차량(OB1)의 속도 변화를 산출할 수 있다. 또 다른 예로, 전자 장치(10)는 이전 이미지들(IMG)에 공통적으로 포함된 주변 차량(OB1)의 프레임 간 크기 변화를 기초로, 주변 차량(OB1)의 속도 변화를 산출할 수 있다. 한편, 주변 차량의 속도 변화를 산출하는 방법은 전술한 예에 한하지 않으며, 다양한 방법이 적용될 수 있다.
그리고 전자 장치(10)는 도 6a의 주변 객체(OB1)의 속도의 급감을 확인하면, 호스트 차량과 충돌할 위험이 존재하므로, 기설정된 이벤트가 발생한 것으로 판단할 수 있다.
또한, 전자 장치(10)는 이전 이미지에 포함된 주변 차량의 위치를 기초로, 호스트 차량이 주변 차량으로부터 임계 거리 내에 위치하는지 판단할 수 있다. 여기서 임계 거리란, 차량간의 충돌을 피할 수 있는 정지 거리를 의미할 수 있으며, 호스트 차량의 현재 속도에 비례하게 설정될 수도 있고, 제조사 또는 사용자에 의해 설정될 수 있다. 예를 들어, 도 6b를 참조하면, 전자 장치(10)는 이미 수행된 객체 인식 결과 중 이전 이미지(IMG)에 포함된 주변 차량(OB1)의 위치를 기초로, 호스트 차량이 주변 차량(OB1)으로부터 임계 거리 내에 위치하는지 판단할 수 있다.
그리고 전자 장치(10)는 도 6b의 주변 객체(OB1)와 호스트 차량간의 거리가 임계 거리 내임을 확인하면, 호스트 차량과 충돌할 위험이 존재하므로, 기설정된 이벤트가 발생한 것으로 판단할 수 있다.
또한, 전자 장치(10)는 이전 이미지에 포함된 교통 표지판을 기초로, 호스트 차량이 주행하는 도로의 제한 속도가 제2 임계 속도 이상인지 확인할 수 있다. 여기서 제2 임계 속도란, 일반적으로 차량이 고속 주행하는 도로에 적용되는 제한 속도의 최솟값을 의미할 수 있으며, 제조사 또는 사용자에 의해 설정될 수 있다. 예를 들어, 도 6c를 참조하면, 전자 장치(10)는 이미 수행된 객체 인식 결과 중 이전 이미지(IMG)에 포함된 교통 표지판(TS1)의 제한 속도(120km/h)를 확인하고, 제한 속도(120km/h )가 제2 임계 속도(예컨대, 100km/h) 이상인지 확인할 수 있다.
그리고 전자 장치(10)는 도 6c의 교통 표지판(TS1)의 제한 속도가 제2 임계 속도 이상인 것을 확인하면, 호스트 차량이 고속 주행할 가능성이 높으므로, 기설정된 이벤트가 발생한 것으로 판단할 수 있다.
한편, 전자 장치(10)가 교통 표지판을 확인하여 기설정된 이벤트의 발생을 판단하는 동작은 전술한 예에 한하지 않는다. 예를 들어, 전자 장치(10)는 교통 표지판의 정규 속도가 제1 임계 속도(즉, 호스트 차량이 고속으로 주행함을 판단하는 기준이 되는 속도) 이상이면 기설정된 이벤트가 발생한 것으로 판단할 수도 있다. 또 다른 예에서, 전자 장치(10)는 호스트 차량의 GPS 정보를 이용하여, 맵 정보로부터 호스트 차량이 주행 중인 도로를 확인하고, 상기 맵 정보로부터 상기 도로의 정규 속도 또는 제한 속도에 대한 정보를 확인하여 기설정된 이벤트의 발생 여부를 판단할 수도 있다.
도 7은 본 개시의 일 실시예에 따른 이미지 처리 모듈을 나타내는 블록도이다.
도 7의 이미지 처리 모듈(250)은 도 1의 제1 이미지 처리 모듈(220) 또는 제2 이미지 처리 모듈(230)에 대응될 수 있다. 도 7을 참조하면, 이미지 처리 모듈(250)은 관심 영역 추출기(251), 피라미드 이미지 생성기(253), 특징 추출기(255) 및 객체 검출기(257)를 포함할 수 있다.
관심 영역 추출기(251)는 이미지로부터 관심 영역(Region Of Interest, ROI)을 추출할 수 있다. 여기서 관심 영역(ROI)이란, 객체 검출을 위해 선택되는 영역을 의미할 수 있다. 일 실시예에서, 관심 영역 추출기(251)는 이미지 센서(도 1, 100)로부터 이미지를 수신하고, 수신한 이미지로부터 관심 영역(ROI)을 추출할 수 있다.
관심 영역 추출기(251)는 다양한 방식으로 관심 영역(ROI)을 추출할 수 있다. 일 실시예에서, 관심 영역 추출기(251)는 이미지의 소실점을 기준으로 관심 영역을 추출할 수 있다. 예를 들어, 관심 영역 추출기(251)는 이미지의 소실점을 포함하는 일정 크기의 영역을 관심 영역으로 추출할 수 있다. 한편, 관심 영역 추출기(251)가 관심 영역을 추출하는 방법은 전술한 예에 한하지 않으며, 다양한 방식으로 관심 영역을 추출할 수 있다.
피라미드 이미지 생성기(253)는 서로 다른 스케일(scale)을 갖는 복수의 피라미드 이미지들을 생성할 수 있다. 일 실시예에서, 피라미드 이미지 생성기(253)는 관심 영역(ROI)을 이용하여 서로 다른 스케일을 갖는 기설정된 개수의 피라미드 이미지들(P_IMG_1 ~ P_IMG_n)을 생성할 수 있다.
특징 추출기(255)는 복수의 이미지들을 이용하여 이미지의 특징을 추출함으로써 특징 정보(Info_F)를 생성할 수 있다. 일 실시예에서, 특징 추출기(255)는 피라미드 이미지들(P_IMG_1 ~ P_IMG_n) 상에서 고정된 크기의 서치 윈도우(search window)를 이동시키면서 이미지의 특징을 추출하고, 특징 정보(Info_V)를 생성할 수 있다.
객체 검출기(257)는 특징 정보(Info_F)에 기반하여 객체 인식 또는 분류를 수행하고, 객체 인식 정보 또는 객체 분류 정보를 생성할 수 있다. 생성된 객체 인식 정보 또는 객체 분류 정보는 호스트 차량의 제어에 사용될 수 있다.
관심 영역 추출기(251), 피라미드 이미지 생성기(253), 특징 추출기(255) 및 객체 검출기(257)는 각각 펌웨어 또는 소프트웨어로 구현될 수 있고, 메모리(200)에 로딩되었다가 프로세서(300)에 의해 실행될 수 있다. 그러나, 본 개시는 이에 한정되지 않으며, 관심 영역 추출기(251), 피라미드 이미지 생성기(253), 특징 추출기(255) 및 객체 검출기(257)는 각각 하드웨어로 구현되거나, 소프트웨어와 하드웨어를 결합한 형태로 구현될 수 있다.
이하에서는, 도 8a 내지 도 10을 참조하여, 이미지 처리 모듈(250)의 동작 방법을 구체적으로 설명한다.
도 8a 및 도 8b는 본 개시의 일 실시예에 따른 관심 영역(Region Of Interest, ROI) 추출 동작을 설명하기 위한 도면이다. 상세하게는, 도 8a는 도 1의 제1 이미지 처리 모듈(220)의 관심 영역 추출 동작을 설명하기 위한 도면이고, 도 8b는 도 1의 제2 이미지 처리 모듈(230)의 관심 영역 추출 동작을 설명하기 위한 도면이다.
일 실시예에서, 제1 이미지 처리 모듈(220)은 이미지의 소실점을 이용하여 관심 영역을 추출할 수 있다. 예를 들어, 도 8a를 참조하면, 제1 이미지 처리 모듈(220)은 이미지(IMG)의 소실점(VP)을 확인하고, 소실점(VP)을 포함하는 평행선을 확인하고, 이미지(IMG) 중 확인한 평행선 아래의 영역을 관심 영역(ROI_1)으로 추출할 수 있다.
제2 이미지 처리 모듈(230)은 제1 이미지 처리 모듈에 의해 추출된 관심 영역보다 더 작은 크기의 관심 영역을 추출할 수 있다. 예를 들어, 도 8b를 참조하면, 제2 이미지 처리 모듈(230)은 이미지(IMG)의 소실점(VP)을 기초로 이미지(IMG)의 도로 영역을 확인하고, 확인한 도로 영역을 관심 영역(ROI_2)으로 추출할 수 있다. 소실점(VP)은 이미지(IMG) 내 도로의 가장자리들을 연장하여 서로 겹치는 지점을 확인함으로써 획득될 수 있으므로, 도 8b의 도로 영역(ROI_2)은 도 8a의 관심 영역(ROI_1) 보다 작은 특징을 가질 수 있다.
한편, 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230)이 관심 영역(ROI_1, ROI_2)을 추출하는 방법은 전술한 예에 한하지 않으며, 다양한 방법에 따라 관심 영역을 추출하도록 구현될 수 있고, 상기 다양한 방법들은 제2 이미지 처리 모듈(230)의 관심 영역이 제1 이미지 처리 모듈(220)의 관심 영역보다 작은 특징을 가질 수 있으면 족하다.
도 9a 및 도 9b는 본 개시의 일 실시예에 따른 복수의 피라미드 이미지들의 생성 동작을 설명하기 위한 도면이다. 상세하게는, 도 9a는 도 1의 제1 이미지 처리 모듈(220)의 복수의 피라미드 이미지들의 생성 동작을 설명하기 위한 도면이고, 도 9b는 도 1의 제2 이미지 처리 모듈(230)의 복수의 피라미드 이미지들의 생성 동작을 설명하기 위한 도면이다.
도 1, 도 7, 도 9a 및 도 9b를 참조하면, 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230)은 이미지 센서(100)로부터 이미지(IMG)를 수신하고, 수신한 이미지(IMG)를 기초로 복수의 피라미드 이미지들을 생성할 수 있다. 예를 들어, 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230)은 이미지 센서(100)로부터 수신한 이미지(IMG)와 스케일이 동일 또는 상이한 피라미드 이미지를 생성할 수 있다.
한편, 본 개시는 이에 한하지 않으며, 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230)은 관심 영역 추출기(251)로부터 관심 영역(ROI)을 수신하고, 수신한 관심 영역(ROI)을 기초로 복수의 피라미드 이미지들을 생성할 수 있다. 예를 들어, 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230)은 수신한 관심 영역(ROI)과 스케일이 동일 또는 상이한 피라미드 이미지를 생성할 수 있다.
이하에서는, 설명의 편의를 위해 이미지 센서(100)로부터 수신한 이미지(IMG)를 기초로 복수의 피라미드 이미지들을 생성하는 방법을 설명한다. 일 실시예에서, 제1 이미지 처리 모듈(220)은 M개(M은 양의 정수)의 피라미드 이미지들을 생성할 수 있다. 예를 들어, 도 9a를 참조하면, 제1 이미지 처리 모듈(220)은 서로 다른 스케일을 갖는 제1 피라미드 이미지(P_IMG_1), 제2 피라미드 이미지(P_IMG_2), 제3 피라미드 이미지(P_IMG_3), 제4 피라미드 이미지(P_IMG_4)를 생성할 수 있다.
그리고 제2 이미지 처리 모듈(230)은 N개(N은 M보다 작은 양의 정수)의 피라미드 이미지들을 생성할 수 있다. 예를 들어, 도 9b를 참조하면, 제2 이미지 처리 모듈(230)은 서로 다른 스케일을 갖는 제1 피라미드 이미지(P_IMG_1), 제4 피라미드 이미지(P_IMG_4)를 생성할 수 있다. 제1 피라미드 이미지(P_IMG_1), 제4 피라미드 이미지(P_IMG_4)는 도 9a에서 제1 이미지 처리 모듈(220)이 생성한 제1 피라미드 이미지(P_IMG_1), 제4 피라미드 이미지(P_IMG_4)와 동일한 스케일을 가질 수 있다. 즉, 제2 이미지 처리 모듈(230)은 제1 이미지 처리 모듈(220)이 생성하는 복수의 피라미드 이미지들 중 적어도 일부만을 생성할 수 있다.
한편, 변형 가능한 실시예에서, 제2 이미지 처리 모듈(230)은 제1 이미지 처리 모듈(220)이 생성하는 피라미드 이미지들의 개수(예컨대, 4개)보다 적은 개수(예컨대, 2개)의 피라미드 이미지들은 생성하되, 제1 이미지 처리 모듈(220)이 생성한 피라미드 이미지들의 스케일들과 상이한 스케일들을 갖는 피라미드 이미지들을 생성할 수 있다. 예를 들어, 제1 이미지 처리 모듈(220)이 100%, 50%, 25%, 12.5%의 스케일들을 갖는 4개의 피라미드 이미지들을 생성하는 경우, 제2 이미지 처리 모듈(230)은 80%, 40%의 스케일들을 갖는 2개의 피라미드 이미지들을 생성할 수 있다. 한편, 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230)이 생성하는 피라미드 이미지들의 스케일들은 전술한 예에 한하지 않으며, 다양한 스케일들을 갖는 피라미드 이미지들이 생성될 수 있다.
한편, 도 9a 및 도 9b를 도시하고 설명함에 있어서, 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230)이 각각 4개, 2개의 피라미드 이미지들을 생성하는 것으로 도시하고 설명하였지만, 본 개시는 이에 한하지 않으며, 제2 이미지 처리 모듈(230)이 생성한 피라미드 이미지들의 개수가 제1 이미지 처리 모듈(210)이 생성한 피라미드 이미지들의 개수보다 적으면 족하다.
도 10은 본 개시의 일 실시예에 따른 제2 이미지 처리 모듈의 이미지 처리 동작을 설명하기 위한 도면이다. 상세하게는, 도 10은 도 7의 이미지 처리 모듈(250)의 이미지 처리 동작을 설명하기 위한 도면이다. 도 10의 이미지 처리 모듈(250)은 도 1의 제2 이미지 처리 모듈(230)에 대응할 수 있다. 이하에서는 도 1의 제1 이미지 처리 모듈(220)과의 구별을 위해, 도 10의 이미지 처리 모듈(250)을 제2 이미지 처리 모듈(250)로 지칭한다.
도 1, 도 7, 도 8b, 도 9b 및 도 10을 참조하면, 제2 이미지 처리 모듈(250)의 관심 영역 추출기(251)는 이미지 센서(100)로부터 이미지(IMG)를 수신하고, 수신한 이미지(IMG)로부터 관심 영역(ROI_2)을 추출할 수 있다. 예를 들어, 관심 영역 추출기(251)는 이미지(IMG)의 소실점을 기초로 이미지(IMG)의 도로 영역을 확인하고, 확인한 도로 영역을 관심 영역(ROI_2)으로 추출할 수 있다. 그리고 관심 영역 추출기(251)는 추출한 관심 영역(ROI_2)을 피라미드 이미지 생성기(253)에 전송할 수 있다.
피라미드 이미지 생성기(253)는 수신한 관심 영역(ROI_2)을 기초로 서로 다른 스케일을 갖는 복수의 피라미드 이미지들을 생성할 수 있다. 예를 들어, 피라미드 이미지 생성기(253)는 수신한 관심 영역(ROI_2)과 스케일이 동일 또는 상이한 복수의 피라미드 이미지들(P_IMG_1, P_IMG_4)을 생성할 수 있다. 그리고 피라미드 이미지 생성기(253)는 생성한 피라미드 이미지들(P_IMG_1, P_IMG_4)을 특징 추출기(255)에 전송할 수 있다.
특징 추출기(255)는 수신한 피라미드 이미지들(P_IMG_1, P_IMG_4)을 기초로 특징 정보(Info_F)를 획득할 수 있다. 그리고 특징 추출기(255)는 획득한 특징 정보(Info_F)를 객체 검출기(257)에 전송할 수 있다. 객체 검출기(257)는 수신한 특징 정보(Info_F)를 기초로 객체 인식 또는 분류를 수행할 수 있다. 객체 검출기(257)의 객체 인식 또는 분류 결과는 호스트 차량의 제어에 이용될 수 있다.
이와 같이, 본 개시의 일 실시예에 따른 제2 이미지 처리 모듈(250)은 제1 이미지 처리 모듈(도 1, 220)의 관심 영역 보다 작은 크기의 관심 영역을 추출하고, 제1 이미지 처리 모듈(도 1, 220)의 피라미드 이미지들보다 적은 개수의 피라미드 이미지들을 생성하므로, 이미지 처리 동작의 전체 데이터 처리량을 줄일 수 있다.
도 11은 본 개시의 일 실시예에 따른 이미지 처리 모듈을 나타내는 블록도이다. 상세하게는, 도 11은 도 7의 변형 가능한 실시예를 나타내는 도면이다.
도 11의 이미지 처리 모듈(260)은 도 1의 제1 이미지 처리 모듈(220) 또는 제2 이미지 처리 모듈(230)에 대응될 수 있다. 도 11을 참조하면, 이미지 처리 모듈(260)은 관심 영역 추출기(263), 피라미드 이미지 생성기(261), 특징 추출기(265) 및 객체 검출기(267)를 포함할 수 있다.
도 11의 이미지 처리 모듈(260)은 도 7의 이미지 처리 모듈(250)과 상이한 방식으로 이미지 처리 동작을 수행할 수 있다. 아래에서는 도 11의 이미지 처리 모듈(260)의 이미지 처리 동작을 구체적으로 설명한다.
피라미드 이미지 생성기(261)는 서로 다른 스케일(scale)을 갖는 복수의 피라미드 이미지들을 생성할 수 있다. 일 실시예에서, 피라미드 이미지 생성기(261)는 이미지 센서(100)로부터 이미지를 수신하고, 수신한 이미지를 이용하여 서로 다른 스케일을 갖는 기설정된 개수의 피라미드 이미지들(P_IMG1 ~ P_IMG_n)을 생성할 수 있다. 피라미드 이미지 생성기(261)는 생성한 피라미드 이미지들(P_IMG1 ~ P_IMG_n)을 관심 영역 추출기(263) 및 특징 추출기(265)로 전송할 수 있다.
관심 영역 추출기(263)는 피라미드 이미지 생성기(261)로부터 수신한 피라미드 이미지들(P_IMG1 ~ P_IMG_n) 중 하나를 이용하여 관심 영역(ROI)을 추출할 수 있다. 관심 영역 추출기(263)가 관심 영역(ROI)을 추출하는 방법은 도 7과 관련하여 설명한 방법과 실질적으로 동일할 수 있으므로, 중복 설명은 생략한다.
특징 추출기(265)는 피라미드 이미지들(P_IMG1 ~ P_IMG_n)과 관심 영역(ROI)을 기초로 이미지의 특징을 추출함으로써 특징 정보(Info_F)를 생성할 수 있다. 구체적으로, 특징 추출기(265)는 피라미드 이미지들(P_IMG1 ~ P_IMG_n) 각각에 대하여 관심 영역(ROI)에 대응되는 대상 영역을 제외한 나머지 영역을 마스크 처리하고, 피라미드 이미지들(P_IMG1 ~ P_IMG_n) 각각의 대상 영역으로부터 이미지의 특징을 추출하고, 특징 정보(Info_F)를 생성할 수 있다.
객체 검출기(267)는 특징 정보(Info_F)를 기초로 객체 인식 또는 분류를 수행하고, 객체 인식 정보 또는 객체 분류 정보를 생성할 수 있다. 생성된 객체 인식 정보 또는 객체 분류 정보는 호스트 차량의 제어에 사용될 수 있다.
도 12는 본 개시의 일 실시예에 따른 제2 이미지 처리 모듈의 이미지 처리 동작을 설명하기 위한 도면이다. 상세하게는, 도 12는 도 11의 이미지 처리 모듈(260)의 이미지 처리 동작을 설명하기 위한 도면이다. 도 12의 이미지 처리 모듈(260)은 도 1의 제2 이미지 처리 모듈(230)에 대응할 수 있다. 이하에서는 도 1의 제1 이미지 처리 모듈(220)과의 구별을 위해, 도 12의 이미지 처리 모듈(260)을 제2 이미지 처리 모듈(260)로 지칭한다.
도 1, 도 11, 및 도 12를 참조하면, 제2 이미지 처리 모듈(260)의 피라미드 이미지 생성기(261)는 이미지 센서(100)로부터 수신한 이미지(IMG)를 기초로 서로 다른 스케일을 갖는 복수의 피라미드 이미지들을 생성할 수 있다. 예를 들어, 피라미드 이미지 생성기(261)는 수신한 이미지(IMG)와 스케일이 동일 또는 상이한 복수의 피라미드 이미지들(P_IMG_1, P_IMG_4)을 생성할 수 있다. 그리고 피라미드 이미지 생성기(261)는 생성한 피라미드 이미지들(P_IMG_1, P_IMG_4)을 관심 영역 추출기(263) 및 특징 추출기(265)로 전송할 수 있다.
관심 영역 추출기(263)는 피라미드 이미지 생성기(261)로부터 피라미드 이미지들(P_IMG_1, P_IMG_4)을 수신하고, 그 중 하나를 이용하여 관심 영역(ROI_2)을 추출할 수 있다. 예를 들어, 관심 영역 추출기(263)는 제1 피라미드 이미지(P_IMG_1)의 소실점을 기초로 도로 영역을 확인하고, 확인한 도로 영역을 관심 영역(ROI_2)으로 추출할 수 있다. 그리고 관심 영역 추출기(263)는 추출한 관심 영역(ROI_2)을 특징 추출기(265)에 전송할 수 있다.
특징 추출기(265)는 수신한 피라미드 이미지들(P_IMG_1, P_IMG_4)과 관심 영역(ROI_2)을 기초로 이미지의 특징을 추출함으로써 특징 정보(Info_F)를 생성할 수 있다. 구체적으로, 특징 추출기(265)는 피라미드 이미지들(P_IMG_1, P_IMG_4) 각각에 대하여 관심 영역(ROI_2)에 대응되는 대상 영역(즉, 도로 영역)을 제외한 나머지 영역을 마스크 처리하고, 피라미드 이미지들(ROI_2) 각각의 대상 영역(즉, 도로 영역)으로부터 이미지의 특징을 추출하고, 특징 정보(Info_F)를 생성할 수 있다. 그리고 특징 추출기(265)는 생성한 특징 정보(Info_F)를 객체 검출기(267)에 전송할 수 있다. 객체 검출기(267)는 수신한 특징 정보(Info_F)를 기초로 객체 인식 또는 분류를 수행할 수 있다. 객체 검출기(267)의 객체 인식 또는 분류 결과는 호스트 차량의 제어에 이용될 수 있다.
도 13은 본 개시의 일 실시예에 따른 복수의 이미지 처리 모듈들을 이용한 이미지 처리 동작을 나타내는 타이밍도이다. 상세하게는, 도 1의 프로세서(300)가 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230)을 이용한 이미지 처리 동작을 나타내는 타이밍도이다. 도 13을 참조하면, 제1 이미지 처리(Image Processing 1)는 제1 이미지 처리 모듈(220)만을 이용하여 이미지 처리 동작을 수행하는 경우의 타이밍도를 나타내며, 제2 이미지 처리(Image Processing 2)는 제2 이미지 처리 모듈(230)만을 이용하여 이미지 처리 동작을 수행하는 경우의 타이밍도를 나타내며, 제3 이미지 처리(Image Processing 3)는 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230)을 이용하여 이미지 처리 동작을 수행하는 경우의 타이밍도를 나타낸다.
도 1 및 도 13을 참조하면, 프로세서(300)는 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230)을 교번적으로 사용하여 이미지 처리 동작을 수행할 수 있다. 구체적으로, 프로세서(300)는 제1 이미지(IMG1)를 수신하면, 호스트 차량에 대한 정보(Info_V)를 이용하여 이미지 처리 동작의 고속 수행의 필요를 판단할 수 있다. 만약 고속 수행이 필요한 것으로 판단하면, 프로세서(300)는 제1 이미지(IMG1)를 포함하는 기설정된 개수의 연속 이미지들에 대하여 제2 이미지 처리 모듈(230)을 이용한 이미지 처리 동작을 수행할 수 있다. 예를 들어, 도 13을 참조하면, 프로세서(300)는 제1 이미지(IMG1)를 포함하는 2개의 연속 이미지들(즉, 제1 이미지(IMG1) 및 제2 이미지(IMG2))에 대하여 제2 이미지 처리 모듈(230)을 이용한 이미지 처리 동작을 수행할 수 있다.
제2 이미지 처리 모듈(230)을 이용한 이미지 처리 동작이 완료되면, 프로세서(300)는 다음 순서의 이미지에 대하여 제1 이미지 처리 모듈(220)을 이용한 이미지 처리 동작을 수행할 수 있다. 예를 들어, 도 13을 참조하면, 프로세서(300)는 제1 이미지(IMG1) 및 제2 이미지(IMG2))에 대하여 제2 이미지 처리 모듈(230)을 이용한 이미지 처리 동작이 완료되면, 다음 순서의 이미지인 제3 이미지(IMG3)에 대하여 제1 이미지 처리 모듈(220)을 이용하여 이미지 처리 동작을 수행할 수 있다. 프로세서(300)는 제1 이미지 처리 모듈(220)을 이용하여 이미지 처리 동작을 수행함으로써, 제2 이미지 처리 모듈(230)의 특징에 따라 획득하지 못한 추가 정보들(예를 들어, 이미지 내 도로 영역을 제외한 나머지 영역과 관련된 정보들)을 획득할 수 있다.
제1 이미지 처리 모듈(220)을 이용한 이미지 처리 동작이 완료되면, 프로세서(300)는 다음 순서의 이미지에 대하여 이미지 처리 동작의 고속 수행의 필요를 재판단할 수 있다. 또는, 프로세서(300)는 전술한 바와 같이 다음 순서의 이미지에 대하여 제2 이미지 처리 모듈(230)과 제1 이미지 처리 모듈(220)을 교번적으로 사용하는 이미지 처리 동작을 재반복할 수 있다.
이와 같이 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230)을 교번적으로 사용하는 경우, 프로세서(300)는 제2 이미지 처리 모듈(230)을 이용함에 따른 빠른 반응 속도와 제1 이미지 처리 모듈(220)을 이용함에 따른 추가 정보의 획득 효과를 모두 가질 수 있다.
한편, 도 13을 설명함에 있어서, 프로세서(300)가 이미지 처리 동작의 고속 수행이 필요한 것으로 판단하면 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230)을 교번적으로 사용하여 이미지 처리 동작을 수행하는 것으로 설명하였지만, 본 개시는 이에 한정되지 않는다. 예를 들어, 프로세서(300)는 고속 수행이 필요하지 않은 것으로 판단한 때에 제1 이미지 처리 모듈(220) 및 제2 이미지 처리 모듈(230)을 교번적으로 사용하여 이미지 처리 동작을 수행하고, 고속 수행이 필요한 것으로 판단한 때에 제2 이미지 처리 모듈(230)만을 사용하여 이미지 처리 동작을 수행하는 방식으로도 구현될 수 있다.
도 14는 본 개시의 일 실시예에 따른 전자 장치를 나타내는 블록도이다. 상세하게는, 도 14는 도 1의 전자 장치(10)의 변형 가능한 실시예를 나타내는 도면이다. 도 14를 참조하면, 전자 장치(10a)는 이미지 센서(100), 메모리(200a) 및 프로세서(300a)를 포함할 수 있다. 도 14의 이미지 센서(100)는 도 1의 이미지 센서(100)와 실질적으로 동일할 수 있으므로, 중복 설명은 생략한다.
메모리(200a)는 하나의 이미지 처리 모듈(220a)을 포함할 수 있다. 이미지 처리 모듈(220a)은 이미지 처리 방식을 결정하는 동작 파라미터들을 유동적으로 변경 가능하도록 설계된 모듈일 수 있다. 여기서 동작 파라미터란, 관심 영역의 크기, 피라미드 이미지들의 개수 등을 포함할 수 있다. 이미지 처리 모듈(220a)은 프로세서(300a)의 제어에 따라 결정된 동작 파라미터들을 기초로 이미지 처리 동작을 수행할 수 있다.
메모리(200a)는 매핑 테이블(240a)을 포함할 수 있다. 매핑 테이블(240a)은 이미지 처리 동작의 목표 레이턴시(latency)와 동작 파라미터들의 매핑 관계에 대한 매핑 정보를 포함할 수 있다. 프로세서(300a)는 호스트 차량에 대한 정보(Info_V)(210)를 기초로 이미지 처리 동작의 목표 레이턴시를 판단하고, 매핑 테이블(240a)을 이용하여 판단한 목표 레이턴시에 대응하는 동작 파라미터들을 선택하고, 선택한 동작 파라미터들 및 이미지 처리 모듈(200a)을 이용하여 이미지 처리 동작을 수행할 수 있다.
한편, 변형 가능한 실시예에 따르면, 메모리(200a)는 하나의 이미지 처리 모듈(220a)이 아닌 복수개의 이미지 처리 모듈들(220a)을 포함하도록 구현될 수 있다. 이 경우, 복수개의 이미지 처리 모듈들(220a)은 상기 하나의 이미지 처리 모듈(220a)과 달리 동작 파라미터들이 고정되도록 설계될 수 있다. 프로세서(300a)는 호스트 차량에 대한 정보(210)를 기초로 이미지 처리 동작의 목표 레이턴시를 판단하고, 복수개의 이미지 처리 모듈들(220a) 중 판단한 목표 레이턴시에 대응하는 이미지 처리 모듈(220a)을 확인하고, 확인한 이미지 처리 모듈(220a)을 이용하여 이미지 처리 동작을 수행할 수 있다.
도 15는 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 나타내는 흐름도이다. 상세하게는, 도 15는 도 14의 전자 장치(10a)의 동작 방법을 나타내는 도면이다. 도 15를 구성하는 단계들 중 적어도 일부는 도 14의 전자 장치(10a)의 프로세서(300a)에 의해 수행될 수 있다.
먼저, 전자 장치(10a)는 호스트 차량의 주변 환경을 촬영한 제1 이미지를 획득할 수 있다(S210). 그리고 전자 장치(10a)는 호스트 차량에 대한 정보를 획득할 수 있다(S220). 구체적으로, 전자 장치(10a)는 호스트 차량의 주행 정보 또는 호스트 차량의 주변 환경 정보를 획득할 수 있다. 전자 장치(10a)가 호스트 차량의 주행 정보 또는 호스트 차량의 주변 환경 정보를 획득하는 방법은 도 1에서 전술한 방법과 실질적으로 동일할 수 있으므로, 중복 설명은 생략한다.
그리고 전자 장치(10a)는 이미지 처리 동작의 동작 파라미터를 선택할 수 있다(S230). 구체적으로, 전자 장치(10a)는 호스트 차량에 대한 정보를 기초로 호스트 차량의 현재 상황을 판단하고, 판단한 현재 상황에 대응하는 동작 파라미터들을 결정할 수 있다. 예를 들어, 전자 장치(10a)는 호스트 차량의 주행 정보 또는 호스트 차량의 주변 환경 정보를 기초로 호스트 차량이 현재 이미지 처리 동작의 고속 수행이 필요한 상황인지 판단하고, 고속 수행이 필요한 상황이면 이에 대응하는 동작 파라미터들을 결정할 수 있다. 고속 수행이 필요한 상황에 대응하는 동작 파라미터는 고속 수행이 필요하지 않은 상황에 대응하는 동작 파라미터보다 적은 데이터 처리량으로 이미지 처리 동작을 수행할 수 있도록 설계될 수 있다. 예를 들어, 전자 장치(10a)는 고속 수행이 필요한 경우, 관심 영역의 크기를 줄이고, 피라미드 이미지들의 개수를 감소시킴으로써 적은 데이터 처리량에 기반하여 이미지 처리를 보다 빠르게 수행할 수 있다.
그리고 전자 장치(10a)는 선택한 동작 파라미터에 따라 이미지 처리 동작을 수행할 수 있다(S240). 구체적으로, 전자 장치(10a)는 선택된 동작 파라미터들에 따라 이미지 처리 동작을 수행하도록 이미지 처리 모듈(220a)에 제어할 수 있고, 이미지 처리 모듈(220a)은 전자 장치(10a)의 제어에 따라 이미지 처리 동작을 수행할 수 있다. 그리고 전자 장치(10a)는 처리 결과를 기초로 호스트 차량을 제어할 수 있다(S250).
도 16은 본 개시의 일 실시예에 따른 동작 파라미터 선택 동작을 나타내는 흐름도이다. 상세하게는, 도 16은 도 15의 동작 파라미터를 선택하는 동작(단계 S230)의 구체적인 동작을 설명하기 위한 도면이다.
도 14 내지 도 16을 참조하면, 전자 장치(10a)는 호스트 차량에 대한 정보를 획득한 이후(From S220), 목표 레이턴시를 결정할 수 있다(S231). 여기서 목표 레이턴시란, 호스트 차량의 현재 상황에서 호스트 차량을 안전하게 제어하기 위해 요구되는 반응 속도에 대응하는 레이턴시를 의미할 수 있다. 예를 들어, 호스트 차량이 빠른 응답 속도를 필요로 하는 위험 상황(예를 들어, 호스트 차량이 고속 주행하는 상황)에 처한 경우, 목표 레이턴시는 상대적으로 작은 값을 가질 수 있다. 반면, 호스트 차량이 빠른 응답 속도를 필요로 하지 않는 일반 상황(예를 들어, 호스트 차량이 저속 주행하는 상황)에 처한 경우, 목표 레이턴시는 상대적으로 큰 값을 가질 수 있다.
전자 장치(10a)는 다양한 방법으로 목표 레이턴시를 결정할 수 있다. 일 실시예에서, 전자 장치(10a)는 호스트 차량의 주행 속도를 확인하고, 복수의 속도 범위들 중 확인한 주행 속도가 속하는 속도 범위에 대응하는 목표 레이턴시를 결정할 수 있다. 예를 들어, 전자 장치(10a)는 80km/h 이상의 고속 범위 및 80km/h 미만의 저속 범위 중, 호스트 차량의 주행 속도인 100km/h가 속하는 속도 범위는 고속 범위임을 확인하고, 고속 범위에 대응하는 레이턴시를 목표 레이턴시로 결정할 수 있다. 한편, 본 개시의 기술적 사상은 고속 범위 또는 저속 범위의 2개의 범위에 대응하는 레이턴시들 중에서 목표 레이턴시를 결정하는 실시예에 한정되는 것은 아니며, 실시예에 따라 3개 이상의 속도 범위들에 대응하는 3개 이상의 레이턴시들 중에서 하나를 목표 레이턴시로 결정할 수도 있다.
또 다른 실시예에서, 전자 장치(10a)는 호스트 차량에 대한 정보를 기초로, 주변 차량이 호스트 차량과 매우 가깝거나, 주변 차량의 속도가 급감하는 등의 기설정된 이벤트가 발생한 것을 확인하면, 확인한 이벤트에 대응하는 레이턴시를 목표 레이턴시로 결정할 수 있다. 이 경우, 전자 장치(10a)의 메모리(200a)는 복수의 기설정된 이벤트들에 대한 정보를 저장할 수 있고, 전자 장치(10a)는 복수의 기설정된 이벤트들에 대한 정보 및 호스트 차량에 대한 정보를 기초로 현재 호스트 차량의 상태에 대응하는 이벤트를 확인할 수 있다. 그리고 전자 장치(10a)는 복수의 레이턴시들 중 확인한 이벤트에 대응하는 레이턴시를 목표 레이턴시로 결정할 수 있다.
그리고 전자 장치(10a)는 결정한 목표 레이턴시에 대응하는 관심 영역의 크기를 선택할 수 있다(S233). 구체적으로, 전자 장치(10a)는 매핑 테이블(240a)을 기초로 결정한 목표 레이턴시에 대응하는 관심 영역의 크기를 선택할 수 있다. 매핑 테이블(240a)에 포함된 매핑 정보는 목표 레이턴시가 작을수록 관심 영역의 크기의 값이 작고, 목표 레이턴시가 클수록 관심 영역의 크기의 값이 크도록 설계될 수 있다.
예를 들어, 결정한 목표 레이턴시가 큰 경우, 전자 장치(10a)는 이미지 내의 도로와 그 도로의 주변 영역을 포함하도록 충분히 큰 관심 영역의 크기를 선택할 수 있다. 반면, 결정한 목표 레이턴시가 작은 경우, 전자 장치(10a)는 이미지 내의 도로만을 포함하거나 도로의 적어도 일부를 포함하도록 관심 영역의 크기를 선택할 수 있다. 또 다른 예로, 전자 장치(10a)는 레이턴시 별로 기설정된 관심 영역의 크기에 대한 정보를 기초로, 목표 레이턴시에 대응하는 크기를 확인하고, 확인한 크기를 관심 영역의 크기로 선택할 수 있다. 여기서 레이턴시 별로 기설정된 관심 영역의 크기에 대한 정보는 전자 장치(10a)의 제조 시에 저장되거나, 외부로부터 수신할 수 있다. 한편, 관심 영역의 크기를 설정하는 방법은 전술한 예에 한하지 않으며, 다양한 방법으로 관심 영역의 크기를 설정할 수 있다.
그리고 전자 장치(10a)는 결정한 목표 레이턴시에 대응하는 복수의 피라미드 이미지들의 개수를 선택할 수 있다(S235). 구체적으로, 전자 장치(10a)는 매핑 테이블(240a)을 기초로 결정한 목표 레이턴시에 대응하는 복수의 피라미드 이미지들의 개수를 선택할 수 있다. 매핑 테이블(240a)에 포함된 매핑 정보는 목표 레이턴시가 작을수록 복수의 피라미드 이미지들의 개수가 적고, 목표 레이턴시가 클수록 복수의 피라미드 이미지들의 개수가 많도록 설계될 수 있다.
예를 들어, 전자 장치(10a)는 레이턴시 별로 기설정된 피라미드 이미지들의 개수에 대한 정보를 기초로, 목표 레이턴시에 대응하는 개수를 확인하고, 확인한 개수를 추후 생성할 복수의 피라미드 이미지들의 개수로 선택할 수 있다. 여기서 레이턴시 별로 기설정된 피라미드 이미지들의 개수에 대한 정보는 전자 장치(10a)의 제조 시에 저장되거나, 외부로부터 수신할 수 있다. 한편, 복수의 피라미드 이미지들의 개수를 설정하는 방법은 전술한 예에 한하지 않으며, 다양한 방법으로 복수의 피라미드 이미지들의 개수를 설정할 수 있다.
그리고 전자 장치(10a)는 복수의 피라미드 이미지들의 개수를 선택한 후 다음 단계를 수행할 수 있다(To S240). 구체적으로, 전자 장치(10a)는 선택된 크기를 갖는 관심 영역을 추출하고, 선택된 개수의 피라미드 이미지들을 생성하고, 생성한 피라미드 이미지들에 대하여 객체 인식을 수행할 수 있다. 전술한 실시예에서, 결정된 목표 레이턴시에 대응하는 관심 영역의 크기를 먼저 선택하고, 복수의 피라미드 이미지들의 개수를 나중에 선택하는 것으로 도시하였으나, 이에 제한되는 것은 아니다. 다양한 실시예들에 따라, 전자 장치(10a)는 복수의 피라미드 이미지들의 개수를 먼저 선택하고, 관심 영역의 크기를 나중에 선택할 수도 있고, 병렬적으로 동시에 선택할 수도 있을 것이다.
도 17은 본 개시의 일 실시예에 따른 자율 주행 장치를 나타내는 블록도이다.
도 17을 참조하면, 자율 주행 장치(500)는 센서(510), 메모리(520), 프로세서(530), RAM(540), 메인 프로세서(550), 구동부(560) 및 통신 인터페이스(570)를 포함할 수 있고, 자율 주행 장치(500)의 구성들은 버스를 통해 서로 통신 가능하게 연결될 수 있다. 이때, 센서(510)에 포함된 이미지 센서(511)는 전술한 실시예들의 이미지 센서(100)에 대응할 수 있고, 메모리(520)는 전술한 실시예들의 메모리(200)에 대응할 수 있고, 프로세서(530)는 전술한 실시예들의 프로세서(300)에 대응할 수 있다. 또한, 메인 프로세서(550)는 도 2의 차량 제어부(410)에 대응할 수 있다. 일부 실시예들에서, 이미지 센서(511), 메모리(520) 및 프로세서(530)는 도 1 내지 도 16을 참조하여 상술된 실시예들을 이용하여 구현될 수 있다.
자율 주행 장치(500)는 신경망을 기초로 자율 호스트 차량의 주변 환경의 데이터를 실시간으로 분석하여 상황 판단 및 차량 운행 제어 등을 수행할 수 있다.
센서(510)는 자율 주행 장치(500)의 주변 환경에 대한 정보를 생성하는 다수의 센서들을 포함할 수 있다. 예를 들어, 센서(510)는 자율 주행 장치(500)의 주변 환경에 관한 영상 신호를 수신하고, 수신한 영상 신호를 이미지로 출력하는 다수의 센서들을 포함할 수 있다. 센서(510)는 CCD(Charge Coupled Device), CMOS(Complementary Metal Oxide Semiconductor)와 같은 이미지 센서(511), 뎁스 카메라(Depth Camera)(513), LiDAR(Light Detection And Ranging) 센서(515), Radar(Radio Detecting And Ranging) 센서(517) 등을 포함할 수 있다. 일 실시예에서, 이미지 센서(511)는 자율 주행 장치(500)의 전방 이미지를 생성하여 프로세서(530)에 제공할 수 있다.
그리고 센서(510)는 자율 주행 장치(500)의 주행 정보를 생성하는 다수의 센서들을 포함할 수 있다. 예를 들어, 센서(510)는 자율 주행 장치(500)의 주행 속도를 측정하고, 측정한 속도 값을 출력하는 속도계(519), 자율 주행 장치(500)의 주행 가속도를 측정하고, 측정한 속도 값을 출력하는 가속도계(520) 등을 포함할 수 있다. 한편, 본 개시는 이에 한정되지 않으며, 센서(510)는 초음파 센서(미도시), 적외선 센서(미도시) 등을 포함할 수 있다.
메모리(520)는 데이터를 저장하기 위한 저장 장소로서, 예를 들어 메인 프로세서(550) 및 프로세서(530)의 연산 수행 과정에서 생성된 각종 데이터를 저장할 수 있다.
프로세서(530)는 이미지 센서(511)로부터 이미지를 수신하면, 호스트 차량에 대한 정보를 기초로 이미지 처리 동작의 고속 수행이 필요한지 판단하고, 고속 수행이 필요하면 데이터 처리량이 적은 이미지 처리 모듈을 이용하여 이미지 처리 동작을 수행함으로써, 위험 상황에서 빠른 반응 속도로 호스트 차량을 제어할 수 있다. 프로세서(530)가 소실점을 추출하는 방법은 도 1 내지 도 16을 참조하여 전술한 방법과 실질적으로 동일할 수 있는바, 중복 설명은 생략한다.
메인 프로세서(550)는 자율 주행 장치(500)의 전반적인 동작을 제어할 수 있다. 예를 들어, 메인 프로세서(550)는 RAM(540)에 저장된 프로그램들을 실행함으로써, 프로세서(530)의 기능을 제어할 수 있다. RAM(540)은 프로그램들, 데이터, 어플리케이션(Application) 또는 명령들(instructions)을 일시적으로 저장할 수 있다.
그리고 메인 프로세서(550)는 프로세서(530)의 연산 결과를 바탕으로 자율 주행 장치(500)의 동작을 제어할 수 있다. 일 실시예로서, 메인 프로세서(550)는 프로세서(530)로부터 소실점에 대한 정보를 수신하고, 수신한 소실점에 대한 정보를 기초로 구동부(560)의 동작을 제어할 수 있다.
구동부(560)는 자율 주행 장치(500)를 구동시키기 위한 구성으로, 엔진 및 모터(561), 조향부(563) 및 브레이크부(565)를 포함할 수 있다. 일 실시예에서, 구동부(560)는 프로세서(530)의 제어에 따라 엔진 및 모터(561), 조향부(563) 및 브레이크부(565)를 이용하여 자율 주행 장치(500)의 추진, 제동, 속력, 방향 등을 조정할 수 있다.
통신 인터페이스(570)는 외부 장치와 유선 또는 무선 통신 방식을 이용하여 통신을 수행할 수 있다. 예를 들어, 통신 인터페이스(570)는 이더넷(Ethernet)과 같은 유선 통신 방식으로 통신을 수행하거나, 와이파이(Wi-Fi) 또는 블루투스(Bluetooth) 등과 같은 무선 통신 방식으로 통신을 수행할 수 있다.
이상에서와 같이 도면과 명세서에서 예시적인 실시예들이 개시되었다. 본 명세서에서 특정한 용어를 사용하여 실시예들을 설명되었으나, 이는 단지 본 개시의 기술적 사상을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 개시의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 개시의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (20)

  1. 호스트 차량을 제어하는 전자 장치에 있어서,
    상기 호스트 차량의 주변 환경을 촬영하는 이미지 센서; 및
    상기 이미지 센서에 의해 촬영된 제1 이미지를 기초로 이미지 처리 동작을 수행하고, 상기 처리 결과를 기초로 상기 호스트 차량을 제어하는 프로세서;를 포함하고,
    상기 프로세서는,
    상기 호스트 차량의 속도를 기초로 상기 이미지 처리 동작의 고속 수행이 필요한지 판단하고,
    상기 고속 수행이 필요하지 않으면, 제1 이미지 처리 모듈을 이용하여 상기 이미지 처리 동작을 수행하고,
    상기 고속 수행이 필요하면, 상기 제1 이미지 처리 모듈보다 데이터 처리량이 적은 제2 이미지 처리 모듈을 이용하여 상기 이미지 처리 동작을 수행하는 것을 특징으로 하는 전자 장치.
  2. 제1항에 있어서,
    상기 프로세서는,
    상기 호스트 차량의 속도가 제1 임계 속도 이상이면 상기 고속 수행이 필요한 것으로 판단하고,
    상기 호스트 차량의 속도가 상기 제1 임계 속도 미만이면 상기 고속 수행이 필요하지 않은 것으로 판단하는 것을 특징으로 하는 전자 장치.
  3. 제1항에 있어서,
    상기 제1 이미지 처리 모듈 및 상기 제2 이미지 처리 모듈은,
    상기 제1 이미지로부터 관심 영역(Region of Interest, ROI)을 추출하고, 상기 추출한 관심 영역을 기초로 서로 다른 스케일(scale)을 갖는 복수의 피라미드 이미지를 생성하고, 상기 생성한 복수의 피라미드 이미지들에 대한 객체 인식(object detection)을 수행하는 것을 특징으로 하는 전자 장치.
  4. 제3항에 있어서,
    상기 제2 이미지 처리 모듈은,
    상기 제1 이미지 처리 모듈에 의해 추출된 관심 영역보다 더 작은 크기의 관심 영역을 상기 제1 이미지로부터 추출하는 것을 특징으로 하는 전자 장치.
  5. 제4항에 있어서,
    상기 제2 이미지 처리 모듈은,
    소실점 정보를 기초로 상기 제1 이미지의 도로 영역을 판단하고, 상기 판단한 도로 영역을 상기 관심 영역으로 추출하는 것을 특징으로 하는 전자 장치.
  6. 제3항에 있어서,
    상기 제1 이미지 처리 모듈은, M개(M은 양의 정수)의 피라미드 이미지들을 생성하고,
    상기 제2 이미지 처리 모듈은, N개(N은 M보다 작은 양의 정수)의 피라미드 이미지들을 생성하는 것을 특징으로 하는 전자 장치.
  7. 제1항에 있어서,
    상기 프로세서는,
    상기 호스트 차량의 주변 환경에 대한 정보를 추가적으로 고려하여 상기 이미지 처리 동작의 고속 수행이 필요한지 판단하는 것을 특징으로 하는 전자 장치.
  8. 제7항에 있어서,
    상기 프로세서는,
    상기 호스트 차량의 속도가 제1 임계 속도 미만이면, 상기 호스트 차량의 주변 환경에 대한 정보를 기초로 상기 이미지 처리 동작의 고속 수행이 필요한지 판단하는 것을 특징으로 하는 전자 장치.
  9. 제7항에 있어서,
    상기 호스트 차량의 주변 환경에 대한 정보는,
    상기 호스트 차량의 주변에 위치한 객체의 속도, 가속도, 이동 거리 및 위치에 대한 정보 및 상기 호스트 차량이 주행하는 경로의 정규 속도 또는 제한 속도에 대한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 전자 장치.
  10. 제9항에 있어서,
    상기 프로세서는,
    상기 호스트 차량의 주변에 위치한 객체의 속도, 가속도, 이동 거리 및 위치 중 적어도 하나를 기초로 상기 호스트 차량과 상기 객체의 충돌 위험을 예상하고, 충돌 위험이 예상되면 상기 이미지 처리 동작의 고속 수행이 필요한 것으로 판단하는 것을 특징으로 하는 전자 장치.
  11. 제9항에 있어서,
    상기 프로세서는,
    상기 호스트 차량이 주행하는 경로의 정규 속도 또는 제한 속도가 제2 임계 속도 이상이면 상기 이미지 처리 동작의 고속 수행이 필요한 것으로 판단하는 것을 특징으로 하는 전자 장치.
  12. 제1항에 있어서,
    상기 프로세서는,
    상기 고속 수행이 필요하면, 상기 제2 이미지 처리 모듈을 이용하여 상기 이미지 센서에 의해 촬영된 기설정된 개수의 연속 이미지들에 대하여 상기 이미지 처리 동작을 수행하고,
    상기 연속 이미지들은, 상기 제1 이미지를 포함하는 것을 특징으로 하는 전자 장치.
  13. 제1항에 있어서,
    상기 프로세서는,
    상기 고속 수행이 필요하면, 상기 이미지 센서에 의해 촬영된 기설정된 개수의 연속 이미지들에 대하여 상기 제2 이미지 처리 모듈 및 상기 제1 이미지 처리 모듈을 교번적으로 적용하여 상기 이미지 처리 동작을 수행하는 것을 특징으로 하는 전자 장치.
  14. 호스트 차량을 제어하는 전자 장치에 있어서,
    상기 호스트 차량의 주변 환경을 촬영하는 이미지 센서; 및
    상기 이미지 센서에 의해 촬영된 제1 이미지를 기초로 이미지 처리 동작을 수행하고, 상기 처리 결과를 기초로 상기 호스트 차량을 제어하는 프로세서;를 포함하고,
    상기 프로세서는,
    상기 호스트 차량의 주행 정보 또는 상기 호스트 차량의 주변 환경에 대한 정보를 기초로 이미지 처리 동작의 동작 파라미터를 선택하고, 상기 선택한 동작 파라미터에 따라 상기 이미지 처리 동작을 수행하는 것을 특징으로 하는 전자 장치.
  15. 제14항에 있어서,
    상기 프로세서는,
    상기 호스트 차량의 주행 정보 또는 상기 호스트 차량의 주변 환경에 대한 정보를 기초로 상기 이미지 처리 동작의 목표 레이턴시(latency)를 결정하고, 상기 결정한 목표 레이턴시에 따라 상기 동작 파라미터를 선택하는 것을 특징으로 하는 전자 장치.
  16. 제15항에 있어서,
    상기 동작 파라미터는, 관심 영역(Region of Interest, ROI)의 크기를 포함하고,
    상기 프로세서는,
    상기 결정한 목표 레이턴시에 대응하는 상기 관심 영역의 크기를 선택하는 것을 특징으로 하는 전자 장치.
  17. 제16항에 있어서,
    상기 동작 파라미터는, 서로 다른 스케일(scale)을 갖는 복수의 피라미드 이미지들의 개수를 포함하고,
    상기 프로세서는,
    상기 결정한 목표 레이턴시에 대응하는 상기 복수의 피라미드 이미지들의 개수를 선택하는 것을 특징으로 하는 전자 장치.
  18. 제17항에 있어서,
    상기 프로세서는,
    상기 제1 이미지로부터 상기 선택된 크기를 갖는 관심 영역을 추출하고, 상기 추출한 관심 영역을 기초로 상기 선택된 개수의 피라미드 이미지들을 생성하고, 상기 생성한 피라미드 이미지들에 대하여 객체 인식(object detection)을 수행하는 것을 특징으로 하는 전자 장치.
  19. 제15항에 있어서,
    복수의 목표 레이턴시들에 대응하는 복수의 이미지 처리 모듈들을 저장하는 메모리;를 포함하고,
    상기 프로세서는,
    상기 복수의 이미지 처리 모듈들 중 상기 목표 레이턴시에 대응하는 이미지 처리 모듈을 선택하고, 상기 선택한 이미지 처리 모듈을 이용하여 상기 이미지 처리 동작을 수행하는 것을 특징으로 하는 전자 장치.
  20. 제14항에 있어서,
    복수의 이벤트들에 대한 정보를 저장하는 메모리;를 더 포함하고,
    상기 프로세서는,
    상기 호스트 차량의 주행 정보 또는 상기 호스트 차량의 주변 환경에 대한 정보를 기초로 상기 복수의 이벤트들 중 상기 호스트 차량의 상태에 대응하는 이벤트를 확인하고, 상기 확인한 이벤트에 대응하는 상기 동작 파라미터를 선택하는 것을 특징으로 하는 전자 장치.
KR1020200048305A 2020-04-21 2020-04-21 호스트 차량을 제어하는 전자 장치 및 이의 동작 방법 KR20210130330A (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020200048305A KR20210130330A (ko) 2020-04-21 2020-04-21 호스트 차량을 제어하는 전자 장치 및 이의 동작 방법
US17/146,125 US11670092B2 (en) 2020-04-21 2021-01-11 Electronic device for controlling driving vehicle and operation method of the electronic device
DE102021100853.0A DE102021100853A1 (de) 2020-04-21 2021-01-18 Elektronische Vorrichtung zur Fahrsteuerung eines Fahrzeugs und Betriebsverfahren der elektronischen Vorrichtung
CN202110283501.5A CN113548055A (zh) 2020-04-21 2021-03-16 用于控制驾驶载运工具的电子设备和电子设备的操作方法
US18/139,168 US20230260290A1 (en) 2020-04-21 2023-04-25 Electronic device for controlling driving vehicle and operation method of the electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200048305A KR20210130330A (ko) 2020-04-21 2020-04-21 호스트 차량을 제어하는 전자 장치 및 이의 동작 방법

Publications (1)

Publication Number Publication Date
KR20210130330A true KR20210130330A (ko) 2021-11-01

Family

ID=77919733

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200048305A KR20210130330A (ko) 2020-04-21 2020-04-21 호스트 차량을 제어하는 전자 장치 및 이의 동작 방법

Country Status (4)

Country Link
US (2) US11670092B2 (ko)
KR (1) KR20210130330A (ko)
CN (1) CN113548055A (ko)
DE (1) DE102021100853A1 (ko)

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8108119B2 (en) 2006-04-21 2012-01-31 Sri International Apparatus and method for object detection and tracking and roadway awareness using stereo cameras
US9224062B2 (en) * 2013-08-09 2015-12-29 Xerox Corporation Hybrid method and system of video and vision based access control for parking stall occupancy determination
US9542848B2 (en) 2014-04-08 2017-01-10 Continental Automotive Systems, Inc. Adjustment of vehicle alerts based on response time learning
KR102199094B1 (ko) 2014-05-26 2021-01-07 에스케이텔레콤 주식회사 관심객체 검출을 위한 관심영역 학습장치 및 방법
KR101720679B1 (ko) 2015-08-03 2017-03-28 광주과학기술원 광계카메라를 이용한 차선 인식 시스템 및 방법
DE102016213494A1 (de) * 2016-07-22 2018-01-25 Conti Temic Microelectronic Gmbh Kameravorrichtung sowie Verfahren zur Erfassung eines Umgebungsbereichs eines eigenen Fahrzeugs
US10552690B2 (en) * 2016-11-04 2020-02-04 X Development Llc Intuitive occluded object indicator
KR101890612B1 (ko) 2016-12-28 2018-08-23 (주)에이다스원 적응적 관심영역 및 탐색창을 이용한 객체 검출 방법 및 장치
DE112019000122T5 (de) 2018-02-27 2020-06-25 Nvidia Corporation Echtzeiterfassung von spuren und begrenzungen durch autonome fahrzeuge
KR101978271B1 (ko) 2018-05-23 2019-05-14 (주)디렉션 원근법 대응 이미지 보정 방법 및 장치
KR102157580B1 (ko) 2018-10-29 2020-09-18 인하대학교 산학협력단 피마자 추출물을 유효성분으로 포함하는 백반증의 예방 또는 치료용 약학적 조성물
CN113039778B (zh) * 2018-10-31 2024-01-02 索尼集团公司 图像捕获装置、图像处理方法和记录介质
JP2020204839A (ja) * 2019-06-14 2020-12-24 マツダ株式会社 外部環境認識装置
JP7393433B2 (ja) * 2019-10-10 2023-12-06 株式会社小糸製作所 配光制御装置、車両位置検出装置、車両用灯具システム、配光制御方法および車両位置検出方法
EP3846009B1 (en) * 2019-12-31 2023-05-10 Seiko Epson Corporation Display system, electronic apparatus, mobile body, and display method

Also Published As

Publication number Publication date
US11670092B2 (en) 2023-06-06
US20210326611A1 (en) 2021-10-21
DE102021100853A1 (de) 2021-10-21
CN113548055A (zh) 2021-10-26
US20230260290A1 (en) 2023-08-17

Similar Documents

Publication Publication Date Title
KR102463175B1 (ko) 객체 인식 방법 및 장치
US20200331476A1 (en) Automatic lane change with minimum gap distance
CN108388834B (zh) 利用循环神经网络和级联特征映射的对象检测
US10394245B2 (en) Method and system to predict vehicle traffic behavior for autonomous vehicles to make driving decisions
CN107985313B (zh) 用于自主车辆的基于弹簧***的变换车道方法
US11527077B2 (en) Advanced driver assist system, method of calibrating the same, and method of detecting object in the same
US11443151B2 (en) Driving assistant system, electronic device, and operation method thereof
US11042999B2 (en) Advanced driver assist systems and methods of detecting objects in the same
CN111462527B (zh) 车道识别装置和车道识别方法
TWI595450B (zh) 物件偵測系統
US10909377B2 (en) Tracking objects with multiple cues
US11893766B2 (en) Neural network system and operating method thereof
US11756314B2 (en) Processors configured to detect objects and methods of detecting objects
Gluhaković et al. Vehicle detection in the autonomous vehicle environment for potential collision warning
US20210256720A1 (en) Vanishing point extraction devices and methods of extracting vanishing point
KR20210147405A (ko) 객체 인식을 수행하는 전자 장치 및 이의 동작 방법
KR20210130330A (ko) 호스트 차량을 제어하는 전자 장치 및 이의 동작 방법
KR101875517B1 (ko) 영상 처리 방법 및 장치
US10303957B2 (en) Vehicle control system based on user input and method thereof
JP2020024562A (ja) 物体認識装置、車両制御装置、物体認識方法、およびプログラム
CN114694375B (zh) 交通监视***、交通监视方法及存储介质
CN115578463B (zh) 一种单目图像物体识别方法、装置及电子设备
CN110706374B (zh) 运动状态预测方法、装置、电子设备及车辆
KR101927634B1 (ko) 환경 요소를 제거하기 위한 방법 및 장치
CN115883782A (zh) 传感器启动方法、装置、电子设备、存储介质及车辆