KR102399017B1 - 이미지 생성 방법 및 장치 - Google Patents

이미지 생성 방법 및 장치 Download PDF

Info

Publication number
KR102399017B1
KR102399017B1 KR1020150160206A KR20150160206A KR102399017B1 KR 102399017 B1 KR102399017 B1 KR 102399017B1 KR 1020150160206 A KR1020150160206 A KR 1020150160206A KR 20150160206 A KR20150160206 A KR 20150160206A KR 102399017 B1 KR102399017 B1 KR 102399017B1
Authority
KR
South Korea
Prior art keywords
image
event
event signals
buffer
signals
Prior art date
Application number
KR1020150160206A
Other languages
English (en)
Other versions
KR20170056860A (ko
Inventor
이규빈
류현석
박근주
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020150160206A priority Critical patent/KR102399017B1/ko
Priority to US15/210,243 priority patent/US10096091B2/en
Priority to EP16182062.6A priority patent/EP3168810B1/en
Priority to CN201610915437.7A priority patent/CN106709895B/zh
Priority to JP2016209292A priority patent/JP6872877B2/ja
Publication of KR20170056860A publication Critical patent/KR20170056860A/ko
Application granted granted Critical
Publication of KR102399017B1 publication Critical patent/KR102399017B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/73Deblurring; Sharpening
    • H04N5/23251
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • H04N5/23258
    • H04N5/23264
    • H04N5/23267
    • 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/10004Still image; Photographic image
    • 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/20172Image enhancement details
    • G06T2207/20201Motion blur correction
    • 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/20212Image combination
    • 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/20212Image combination
    • G06T2207/20221Image fusion; Image merging

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Processing (AREA)
  • Studio Devices (AREA)

Abstract

버퍼에 저장된 제1 시간 구간의 이벤트 신호들을 이용하여 제1 이미지를 생성하고, 버퍼에 저장된 제2 시간 구간의 이벤트 신호들을 이용하여 제2 이미지를 생성하며, 제1 이미지와 제2 이미지를 중첩함으로써, 제1 이미지 및 제2 이미지에 비하여 높은 품질의 제3 이미지를 생성하는 이미지 생성 방법 및 장치가 제공된다.

Description

이미지 생성 방법 및 장치{METHOD OF GENERATING IMAGE AND APPARATUS THEREOF}
아래 실시예들은 이미지 생성 방법 및 장치에 관한 것이다.
프레임 기반 비전 센서에 의해 획득한 이미지에 대한 이미지 품질의 개선을 위해 손떨림에 의해 발생하는 블러(Blur)를 제거하는 기술 및 저조도에서 흐릿한 이미지를 또렷하는 만드는 기술이 존재한다. 프레임 기반 비전 센서와 달리, 이벤트 기반 비전 센서는 빛의 변화에만 반응하므로 움직이는 사물의 윤곽선만을 검출할 수 있다. 이벤트 기반 비전 센서에 의해 획득된 이미지는 사물의 윤곽선만을 검출하므로 상대적으로 적은 데이터 량으로 인한 고속 처리가 가능하고, 프라이버시 유지가 가능하다. 다만, 이벤트 기반 비전 센서에서 출력된 이벤트들을 모아서 하나의 이미지로 만드는 경우, 프레임 기반 비전 센서에 의해 획득된 이미지보다 품질이 떨어질 수 있다.
일 측에 따르면, 이미지 생성 방법은 버퍼에 저장된 제1 시간 구간의 이벤트 신호들을 이용하여 제1 이미지를 생성하는 단계; 상기 버퍼에 저장된 제2 시간 구간의 이벤트 신호들을 이용하여 제2 이미지를 생성하는 단계; 및 상기 제1 이미지와 상기 제2 이미지를 중첩함으로써, 상기 제1 이미지 및 상기 제2 이미지에 비하여 높은 품질의 제3 이미지를 생성하는 단계를 포함한다.
상기 이벤트 신호들 각각은 이벤트 기반 센서에 포함된 복수의 픽셀들 중 이벤트를 감지한 픽셀을 지시하는 식별 정보, 및 상기 이벤트를 감지한 시간에 관한 시간 정보를 포함할 수 있다.
상기 제1 시간 구간에 해당하는 이벤트 신호들의 수는 상기 제2 시간 구간에 해당하는 이벤트 신호들의 수보다 클 수 있다.
상기 제1 이미지를 생성하는 단계는 상기 버퍼에 저장된 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출하는 단계; 상기 추출된 이벤트 신호들의 분산에 기초하여 상기 제1 이미지를 위한 제1 임계치를 결정하는 단계; 및 상기 추출된 이벤트 신호들의 수와 상기 제1 임계치의 비교 결과에 기초하여, 상기 버퍼로부터 이벤트 신호를 더 추출할지 여부를 결정하는 단계를 포함할 수 있다.
상기 제2 이미지를 생성하는 단계는 상기 버퍼에 저장된 이벤트 신호들 중 상기 제1 이미지의 생성에 이용된 이벤트 신호들을 제외한 나머지 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출하는 단계; 상기 추출된 이벤트 신호들의 분산에 기초하여 상기 제2 이미지를 위한 제2 임계치를 결정하는 단계; 및 상기 추출된 이벤트 신호들의 수와 상기 제2 임계치의 비교 결과에 기초하여, 상기 버퍼로부터 이벤트 신호를 더 추출할지 여부를 결정하는 단계를 포함할 수 있다.
상기 제1 이미지를 생성하는 단계는 상기 버퍼에 저장된 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출하는 단계; 상기 추출된 이벤트 신호들과 관련된 솔리드 레벨(solid level)을 결정하는 단계; 및 상기 솔리드 레벨과 미리 설정된 임계치의 비교 결과에 기초하여, 상기 버퍼로부터 이벤트 신호를 더 추출할지 여부를 결정하는 단계를 포함할 수 있다.
상기 제3 이미지를 생성하는 단계는 상기 제2 이미지를 이동, 회전, 축소, 확대 중 적어도 하나의 동작에 의해 상기 제1 이미지와 중첩함으로써 중첩 후보 이미지들을 생성하는 단계를 포함할 수 있다.
상기 제3 이미지를 생성하는 단계는 상기 제1 이미지를 복수의 구역들로 분할하는 단계; 및 상기 복수의 구역들 각각과 상기 제2 이미지의 적어도 일부가 중첩되도록 상기 제2 이미지의 적어도 일부를 이동 또는 회전시켜 구역별 중첩 후보 이미지들을 생성하는 단계를 포함할 수 있다.
상기 제3 이미지를 생성하는 단계는 상기 제1 이미지 내 복수의 객체들을 인식하는 단계; 및 상기 복수의 객체들 각각과 상기 제2 이미지의 적어도 일부가 중첩되도록 상기 제2 이미지의 적어도 일부를 이동 또는 회전시켜 구역별 중첩 후보 이미지들을 생성하는 단계를 포함할 수 있다.
상기 제3 이미지를 생성하는 단계는 상기 제1 이미지에 대비되는 상기 제2 이미지의 확대 비율 또는 축소 비율에 따라 상기 제2 이미지의 이동 거리를 설정하는 단계; 및 상기 설정된 이동 거리만큼 상기 제2 이미지를 이동시켜 상기 제1 이미지와 중첩함으로써 상기 중첩 후보 이미지들을 생성하는 단계를 포함할 수 있다.
상기 제3 이미지를 생성하는 단계는 상기 중첩 후보 이미지들과 상기 제1 이미지와의 유사도들을 산출하는 단계; 및 상기 산출된 유사도들 중 최대 유사도에 대응하는 중첩 후보 이미지를 상기 제1 이미지와 중첩하여 상기 제3 이미지를 생성하는 단계를 포함할 수 있다.
상기 유사도들을 산출하는 단계는 상기 중첩 후보 이미지들 및 상기 제1 이미지의 동일 위치의 픽셀에 대응하는 이벤트 신호 값의 총합을 이용하여 상기 유사도들을 산출하는 단계를 포함할 수 있다.
상기 제3 이미지를 생성하는 단계는 상기 이벤트 신호들 중 온(ON) 이벤트 신호 또는 오프(OFF) 이벤트 신호 및 거리 정보를 기초로, 상기 제2 이미지를 6 자유도(DoF)에 따라 3 방향으로 회전 및 이동시킴으로써 상기 제1 이미지와 상기 제2 이미지를 중첩하는 단계를 포함할 수 있다.
상기 이미지 생성 방법은 상기 이벤트 신호들을 상기 버퍼에 저장하기에 앞서, 미리 정해진 시간 구간 이내에 상기 제1 이벤트 신호들 및 상기 제2 이벤트 신호들로부터 일정 거리 이내에서 발생된 이벤트 신호가 있는지 여부에 기초하여, 상기 이벤트 신호들 중 노이즈 신호를 제거하는 단계를 더 포함할 수 있다.
상기 이미지 생성 방법은 카메라 캘리브레이션에 의해 상기 제1 이벤트 신호들 및 상기 제2 이벤트 신호들의 렌즈 왜곡을 보정하는 단계를 더 포함할 수 있다.
일 측에 따르면, 이미지 생성 장치는 이벤트 기반 비전 센서; 상기 이벤트 기반 비전 센서에서 제1 시간 구간에 감지된 이벤트 신호들 및 제2 시간 구간에 감지된 이벤트 신호들을 저장하는 버퍼; 및 상기 제1 시간 구간의 이벤트 신호들을 이용하여 제1 이미지를 생성하고, 상기 제2 시간 구간의 이벤트 신호들을 이용하여 제2 이미지를 생성하며, 상기 제1 이미지와 상기 제2 이미지를 중첩함으로써, 상기 제1 이미지 및 상기 제2 이미지에 비하여 높은 품질의 제3 이미지를 생성하는 프로세서를 포함한다.
상기 이벤트 신호들 각각은 상기 이벤트 기반 센서에 포함된 복수의 픽셀들 중 이벤트를 감지한 픽셀을 지시하는 식별 정보, 및 상기 이벤트를 감지한 시간에 관한 시간 정보를 포함할 수 있다.
상기 프로세서는 상기 버퍼에 저장된 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출하고, 상기 추출된 이벤트 신호들의 분산에 기초하여 상기 제1 이미지를 위한 제1 임계치를 결정하며, 상기 추출된 이벤트 신호들의 수와 상기 제1 임계치의 비교 결과에 기초하여, 상기 버퍼로부터 이벤트 신호를 더 추출할지 여부를 결정할 수 있다.
상기 프로세서는 상기 버퍼에 저장된 이벤트 신호들 중 상기 제1 이미지의 생성에 이용된 이벤트 신호들을 제외한 나머지 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출하고, 상기 추출된 이벤트 신호들의 분산에 기초하여 상기 제2 이미지를 위한 제2 임계치를 결정하며, 상기 추출된 이벤트 신호들의 수와 상기 제2 임계치의 비교 결과에 기초하여, 상기 버퍼로부터 이벤트 신호를 더 추출할지 여부를 결정할 수 있다.
상기 프로세서는 상기 버퍼에 저장된 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출하고, 상기 추출된 이벤트 신호들과 관련된 솔리드 레벨을 결정하며, 상기 솔리드 레벨과 미리 설정된 임계치의 비교 결과에 기초하여, 상기 버퍼로부터 이벤트 신호를 더 추출할지 여부를 결정할 수 있다.
상기 프로세서는 상기 제2 이미지를 이동, 회전, 축소, 확대 중 적어도 하나의 동작에 의해 상기 제1 이미지와 중첩함으로써 중첩 후보 이미지들을 생성할 수 있다.
상기 프로세서는 상기 제1 이미지를 복수의 구역들로 분할하고, 상기 복수의 구역들 각각과 상기 제2 이미지의 적어도 일부가 중첩되도록 상기 제2 이미지의 적어도 일부를 이동 또는 회전시켜 구역별 중첩 후보 이미지들을 생성할 수 있다.
상기 프로세서는 상기 제1 이미지 내 복수의 객체들을 인식하고, 상기 복수의 객체들 각각과 상기 제2 이미지의 적어도 일부가 중첩되도록 상기 제2 이미지의 적어도 일부를 이동 또는 회전시켜 구역별 중첩 후보 이미지들을 생성할 수 있다.
상기 프로세서는 상기 제1 이미지에 대비되는 상기 제2 이미지의 확대 비율 또는 축소 비율에 따라 상기 제2 이미지의 이동 거리를 설정하고, 상기 설정된 이동 거리만큼 상기 제2 이미지를 이동시켜 상기 제1 이미지와 중첩함으로써 상기 중첩 후보 이미지들을 생성할 수 있다.
상기 프로세서는 상기 중첩 후보 이미지들과 상기 제1 이미지와의 유사도들을 산출하고, 상기 산출된 유사도들 중 최대 유사도에 대응하는 중첩 후보 이미지를 상기 제1 이미지와 중첩하여 상기 제3 이미지를 생성할 수 있다.
상기 프로세서는 상기 중첩 후보 이미지들 및 상기 제1 이미지의 동일 위치의 픽셀에 대응하는 이벤트 신호 값의 총합을 이용하여 상기 유사도들을 산출할 수 있다.
상기 프로세서는 상기 이벤트 신호들을 상기 버퍼에 저장하기에 앞서, 미리 정해진 시간 구간 이내에 상기 제1 이벤트 신호들 및 상기 제2 이벤트 신호들로부터 일정 거리 이내에서 발생된 이벤트 신호가 있는지 여부에 기초하여, 상기 이벤트 신호들 중 노이즈 신호를 제거할 수 있다.
상기 프로세서는 카메라 캘리브레이션에 의해 상기 제1 이벤트 신호들 및 상기 제2 이벤트 신호들의 렌즈 왜곡을 보정할 수 있다.
도 1은 일 실시예에 따른 이벤트 기반 비전 센서에서 감지된 이벤트 신호들이 버퍼에 저장되는 방법을 설명하기 위한 도면.
도 2는 일 실시예에 따른 이미지 생성 방법의 동작 방식을 설명하기 위한 도면.
도 3은 일 실시예에 따른 이미지 생성 방법을 나타낸 흐름도.
도 4는 일 실시예에 따라 이벤트 신호들의 분산에 기초하여 제1 이미지를 생성하는 방법을 나타낸 흐름도.
도 5는 일 실시예에 따른 이벤트 신호들의 분산에 기초하여 이미지를 위한 임계치를 결정하는 방법을 설명하기 위한 도면.
도 6은 일 실시예에 따라 이벤트 신호들과 관련된 솔리드 레벨(solid level)에 기초하여 제1 이미지를 생성하는 방법을 나타낸 흐름도.
도 7은 일 실시예에 따른 이벤트 신호들과 관련된 솔리드 레벨을 설명하기 위한 도면.
도 8은 일 실시예에 따른 제3 이미지를 생성하는 방법을 나타낸 흐름도.
도 9 내지 도 12는 다른 실시예들에 따른 이미지 생성 방법을 나타낸 흐름도들.
도 13 내지 도 14는 실시예들에 따른 이미지 생성 장치의 블록도들.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것이다. 개시된 실시예들은 다양한 다른 형태로 변경되어 실시될 수 있으며 본 명세서의 범위는 개시된 실시예들에 한정되지 않는다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
하기에서 설명될 실시예들은 휴대폰, 스마트 텔레비전 또는 기타의 보안 모니터링 기기에서 촬영된 이미지를 처리하는 데에 사용될 수 있다.
실시예들은 퍼스널 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트 폰, 텔레비전, 스마트 가전 기기, 지능형 자동차, 웨어러블 장치 등 다양한 형태의 제품으로 구현될 수 있다. 예를 들어, 실시예들은 스마트 폰, 모바일 기기, 스마트 홈 시스템 등에서 촬영된 이미지의 품질을 향상시키는 데에 적용될 수 있다. 또한, 실시예들은 촬영된 사용자 이미지를 통해 사용자를 인증하여 자동으로 시동을 거는 지능형 자동차 시스템 등에도 적용될 수 있다. 이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 일 실시예에 따른 이벤트 기반 비전 센서에서 감지된 이벤트 신호들이 버퍼에 저장되는 방법을 설명하기 위한 도면이다. 도 1을 참조하면, 이벤트 기반 비전 센서(110) 및 버퍼(130)가 도시된다.
이벤트 기반 비전 센서(110)는 픽셀 어레이(pixel array)를 포함한다. 픽셀 어레이에 포함된 각 픽셀들은 해당 픽셀로 입사되는 빛의 변화를 감지할 수 있다. 이하, 빛의 변화는 빛의 세기(intensity)의 변화일 수 있다. 이벤트 기반 비전 센서(110)는 빛의 변화가 감지된 픽셀(들)에 대응하는 이벤트 신호(들)을 출력할 수 있다.
픽셀 어레이에 포함된 모든 픽셀들을 프레임 단위로 스캔(scan)하는 프레임 기반 비전 센서와 달리, 이벤트 기반 비전 센서(110)는 빛의 변화를 감지한 픽셀만을 이용하여 이벤트 신호를 출력할 수 있다. 예를 들어, 특정 픽셀에서 빛이 밝아지거나 어두워지는 이벤트가 감지되는 경우, 이벤트 기반 비전 센서(110)는 해당 픽셀에 대응하는 온(ON) 이벤트 신호 또는 오프(OFF) 이벤트 신호를 출력할 수 있다.
이벤트 기반 비전 센서(110)는 객체(object)의 움직임을 감지하여 이벤트 신호를 출력할 수 있다. 객체는 피사체일 수 있다. 이벤트 기반 비전 센서(110)로 입사되는 빛의 변화는 객체의 움직임에 기인할 수 있다. 예를 들어, 광원이 고정되어 있고 객체는 스스로 발광하지 않는 경우를 상정하면, 이벤트 기반 비전 센서(110)로 입사되는 빛은 광원에서 발생되어 객체에 의해 반사된 빛일 수 있다. 객체가 움직이지 않는 경우, 움직임이 없는 상태의 객체에 의해 반사되는 빛은 실질적으로 변하지 않으므로, 이벤트 기반 비전 센서(110)에 입사되는 빛의 변화도 발생되지 않는다. 반면, 객체가 움직이는 경우, 움직이는 객체에 의해 반사되는 빛은 객체의 움직임에 따라 변하므로, 이벤트 기반 비전 센서(110)에 입사되는 빛의 변화가 발생될 수 있다.
이벤트 신호는 식별 정보 및 시간 정보를 포함할 수 있다. 식별 정보는 이벤트 기반 센서(110)에 포함된 복수의 픽셀들 중 이벤트(다시 말해, 빛의 변화)를 감지한 픽셀(111)을 지시하는 정보일 수 있다. 식별 정보는 예를 들어, 픽셀의 (x,y) 좌표 또는 픽셀 인덱스, 및 온(ON) 이벤트 또는 오프(OFF) 이벤트와 같은 픽셀의 극성(polarity) 등을 포함할 수 있다. 식별 정보는 '위치 정보'라고도 부를 수 있다.
시간 정보는 픽셀(111)이 이벤트를 감지한 시간을 나타내는 정보일 수 있다. 시간 정보는 예를 들어, 픽셀(111)에서 이벤트가 감지된 시간을 나타낸 타임 스탬프(time stamp)일 수 있다.
각 픽셀에서 발생한 이벤트 신호는 각 시간 구간에 대응하여 버퍼(130)에 저장될 수 있다. 예를 들어, 이전 시간 구간(t-2, t-1)의 이벤트 신호들이 버퍼의 제1 공간(131)에 저장되었다고 하면, 현재 시간 구간(t0)의 이벤트 신호들은 제2 공간(132)에 저장될 수 있다.
제1 공간(131)과 제2 공간(132)는 예를 들어, 링크드 리스트(linked list), 스택(stack) 또는 큐(queue) 형태의 데이터 구조에 의해 구성될 수 있다.
도 2는 일 실시예에 따른 이미지 생성 방법의 동작 방식을 설명하기 위한 도면이다. 도 2를 참조하면, 일 실시예에 따른 이미지 생성 장치(이하, 생성 장치)에 의해 버퍼에 저장된 이벤트 신호들에 대응하는 이미지로부터 높은 품질의 이미지를 생성하는 과정이 도시된다.
버퍼는 과거 시간 구간(t-2)부터 최근 시간 구간(t0)까지 누적된 시간 구간들의 이벤트 신호들을 저장할 수 있다. 이미지(210)는 과거 시간 구간(t-2)부터 최근 시간 구간(t0)까지 누적된 시간 구간들의 이벤트 신호들에 대응하는 이미지일 수 있다.
생성 장치는 버퍼에 저장된 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출하여 각 시간 구간에 대응하는 이미지들을 생성할 수 있다. 생성 장치는 예를 들어, 최근 시간 구간(t0)의 이벤트 신호들을 이용하여 이미지(231)를 생성할 수 있다. 최근 시간 구간(t0)의 이벤트 신호들에 대응하여 생성된 이미지(231)는 '제1 이미지' 또는 '시드 이미지(seed image)'라고 부를 수 있다.
마찬가지 방식으로, 생성 장치는 시간 구간(t-1) 및 시간 구간(t-2)의 이벤트 신호들을 각각 추출하여 해당 시간 구간에 대응하는 이미지들(233, 235)을 생성할 수 있다. 이때, 최근 시간 구간(t0)을 제외한 나머지 시간 구간들(t-1, t-2)의 이벤트 신호들에 대응하여 생성된 이미지(들)(233, 235)을 '제2 이미지' 또는 '프래그먼트 이미지(fragment image)'라고 부를 수 있다. 최근 시간 구간(t0)에 해당하는 이벤트 신호들의 수는 최근 시간 구간을 제외한 나머지 시간 구간(들)(t-1, t-2)에 해당하는 이벤트 신호들의 수보다 클 수 있다. 다시 말해, 제1 이미지를 생성하는 데에 이용되는 이벤트 신호들의 수는 제2 이미지를 생성하는 데에 이용되는 이벤트 신호들의 수보다 클 수 있다.
생성 장치는 제1 이미지(231)에 제2 이미지들(233, 235)을 중첩하여 중첩된 이미지(aligned image)(250)를 생성할 수 있다. 이때, 이미지들(231, 233, 235)은 예를 들어, 4초 전의 사용자의 움직임, 2초 전의 사용자의 움직임 및 현재의 사용자의 움직임에 의해 발생된 빛의 변화에 대응된 것으로서, 사용자의 움직임에 의해 각 이미지에 나타난 사용자의 위치가 서로 다를 수 있다. 생성 장치는 제2 이미지(들)(233, 235)의 위치를 변환(이동, 회전, 축소, 확대 등)하고, 변환된 제2 이미지들(233, 235)을 제1 이미지(231)에 중첩하여 중첩된 이미지(250)를 생성할 수 있다.
실시예에 따라서, 생성 장치는 제1 이미지(231) 전체를 제2 이미지들(233, 235)과 중첩할 수도 있고, 제1 이미지(231)를 복수의 구역들로 분할하여 분할된 구역들 각각과 제2 이미지들(233, 235)을 중첩할 수 있다. 또는 생성 장치는 제 1 이미지(231) 내에 포함된 복수의 객체들 각각과 제2 이미지들(233, 235)을 중첩할 수 있다.
생성 장치가 제1 이미지(231)의 분할된 구역들 각각과 제2 이미지들(233, 235)을 중첩하는 실시예는 도 9를 참조하여 설명하고, 생성 장치가 제 1 이미지(231) 내에 포함된 복수의 객체들 각각과 제2 이미지들(233, 235)을 중첩하는 실시예는 도 10을 참조하여 설명한다.
생성 장치는 중첩된 이미지(250)에 의해 제1 이미지(231) 및 제2 이미지들(233, 235) 각각에 비해 높은 품질의 최종 이미지(270)를 획득할 수 있다.
도 3은 일 실시예에 따른 이미지 생성 방법을 나타낸 흐름도이다. 도 3을 참조하면, 일 실시예에 따른 생성 장치는 버퍼에 저장된 제1 시간 구간의 이벤트 신호들을 이용하여 제1 이미지를 생성한다(310). 이때, 제1 시간 구간은 최근 시간 구간에 해당할 수 있다. 시간 구간은 미리 설정되거나, 동적으로 갱신될 수 있다. 시간 구간의 이벤트 신호들은 일정 시간 구간 동안 수신되는 이벤트 신호들로, 각 이벤트 신호들은 식별 정보(위치 정보) 및/또는 시간 정보를 포함할 수 있다.
생성 장치는 버퍼에 저장된 제2 시간 구간의 이벤트 신호들을 이용하여 제2 이미지를 생성한다(320). 제2 시간 구간은 최근 시간 구간을 제외한 나머지 시간 국간에 해당할 수 있다. 제2 이미지는 단수 또는 복수 개일 수 있다.
생성 장치는 버퍼에 저장된 이벤트 신호들을 중 이벤트가 감지된 시간의 역순으로 추출된 이벤트 신호들에 기초하여 제1 이미지(또는 제2 이미지)를 생성할 수 있다.
전술한 바와 같이, 이벤트 기반 비전 센서는 빛의 변화 또는 객체의 움직임에 반응하여 이벤트 신호를 출력하므로, 빛의 변화 또는 객체의 움직임이 빠를수록 동일한 시간 구간 동안 많은 이벤트 신호들이 출력될 수 있다. 이에 따라, 고정된 시간 구간을 이용하여 이벤트 신호들을 추출하는 경우, 빛의 변화 또는 객체의 움직임의 속도에 따라 추출되는 이벤트 신호들의 수가 적절하지 않을 수 있다.
생성 장치는 추출된 이벤트 신호들에 기초하여 이미지를 생성하므로, 추출되는 이벤트 신호들의 수가 적절하지 않은 경우 생성되는 이미지의 품질이 감소될 수 있다. 생성 장치는 추출된 이벤트 신호들의 수가 적절한지 여부를 판단할 수 있다. 생성 장치는 예를 들어, 이벤트 신호들의 위치 관계를 이용하여, 추출된 이벤트 신호들의 수가 적절한지 여부를 판단할 수 있다. 이벤트 신호들의 위치 관계는 이벤트 신호들에 대응하는 위치들 사이의 관계로, 예를 들어, 이벤트 신호들의 위치가 분포된 양상, 이벤트 신호들의 위치가 서로 흩어진 정도, 이벤트 신호들의 위치가 서로 밀집한 정도 등을 포함할 수 있다. 생성 장치는 이벤트 신호들의 위치 관계에 기초하여 결정되는 임계 값과 추출된 이벤트 신호들의 수를 비교함으로써, 추출된 이벤트 신호들의 수가 적절한지 여부를 판단할 수 있다.
일 예로, 생성 장치는 이벤트 신호들의 분산을 이용하여 추출된 이벤트 신호들의 수가 적절한지 여부를 판단할 수 있다. 생성 장치가 이벤트 신호들의 분산에 기초하여 이미지(제1 이미지 또는 제2 이미지)를 생성하는 방법은 도 4 내지 도 5를 참조하여 설명한다.
또는, 생성 장치는 이벤트 신호들과 관련된 솔리드 레벨(solid level)을 이용하여 추출된 이벤트 신호들의 수가 적절한지 여부를 판단할 수 있다. 생성 장치가 이벤트 신호들과 관련된 솔리드 레벨에 기초하여 이미지(제1 이미지 또는 제2 이미지)를 생성하는 방법은 도 6 내지 도 7을 참조하여 설명한다.
생성 장치는 제1 이미지와 제2 이미지를 중첩함으로써, 제1 이미지 및 제2 이미지에 비하여 높은 품질의 제3 이미지를 생성한다(330). 실시예에 따라서, 생성 장치는 제1 이미지에 대비되는 제2 이미지의 확대 비율 또는 축소 비율에 따라 제2 이미지의 이동 거리를 설정하고, 설정된 이동 거리만큼 제2 이미지를 이동시켜 제1 이미지와 중첩함으로써 중첩 후보 이미지들을 생성할 수 있다. 또는 생성 장치는 이벤트 신호들 중 온(ON) 이벤트 신호 또는 오프(OFF) 이벤트 신호 및 거리 정보를 기초로, 제2 이미지를 6 자유도(DoF)에 따라 3 방향으로 회전 및 이동시킴으로써 제1 이미지와 제2 이미지를 중첩하여 제3 이미지를 생성할 수 있다. 생성 장치가 제3 이미지를 생성하는 방법은 도 8을 참조하여 설명한다.
도 4는 일 실시예에 따라 이벤트 신호들의 분산에 기초하여 제1 이미지를 생성하는 방법을 나타낸 흐름도이다. 도 4를 참조하면, 일 실시예에 따른 생성 장치는 버퍼에 저장된 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출할 수 있다(410). 예를 들어, 버퍼에 방금 감지된 이벤트 신호, 2초 전에 감지된 이벤트 신호, 4초 전에 감지된 이벤트 신호 등이 저장되어 있다고 하자. 생성 장치는 방금 감지된 이벤트 신호, 2초 전에 감지된 이벤트 신호, 4초 전에 감지된 이벤트 신호와 같이 이벤트가 감지된 시간의 역순으로 이벤트 신호들을 추출할 수 있다.
생성 장치는 추출된 이벤트 신호들의 분산에 기초하여 제1 이미지를 위한 임계치를 결정할 수 있다(420). 생성 장치가 이벤트 신호들의 분산에 기초하여 제1 이미지를 위한 임계치를 결정하는 방법은 도 5를 참조하여 설명한다.
생성 장치는 추출된 이벤트 신호들의 수와 임계치를 비교하여 버퍼로부터 이벤트 신호를 더 추출할 지 여부를 결정할 수 있다. 생성 장치는 단계(410)에서 추출된 이벤트 신호들의 수가 임계치보다 큰지 여부를 판단할 수 있다(430).
단계(430)의 판단 결과, 추출된 이벤트 신호들의 수가 임계치보다 크다면, 생성 장치는 현재 추출된 이벤트 신호들을 이용하여 이미지를 생성할 수 있다(440).
단계(430)의 판단 결과, 추출된 이벤트 신호들의 수가 임계치보다 작거나 같다면, 생성 장치는 버퍼에 저장된 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 더 추출할 수 있다(410).
도 5는 일 실시예에 따른 이벤트 신호들의 분산에 기초하여 이미지를 위한 임계치를 결정하는 방법을 설명하기 위한 도면이다. 일 실시예에 따른 생성 장치는 일정 시간 구간에 해당하는 이벤트 신호들의 개수를 측정하여 이벤트 신호들과 관련된 분산을 계산할 수 있다. 도 5를 참조하면, 생성 장치는 이벤트 신호에 포함된 위치 정보를 이용하여, x축 방향의 분산 σx(511) 및 y축 방향의 분산 σy(512)를 계산할 수 있다. x축 방향의 분산 σx(511)는 이벤트 신호들(510)이 x축 방향으로 분포된 정도를 나타내고, y축 방향의 분산 σy(512)는 이벤트 신호들(510)이 y축 방향으로 분포된 정도를 나타낼 수 있다.
생성 장치는 이벤트 신호들의 개수와 분산 기반 임계 값을 비교할 수 있다.이때, 분산 기반 임계 값은 제1 이미지를 위한 제1 임계치일 수도 있고, 또는 제2 이미지를 위한 제2 임계치일 수도 있다.
분산 기반 임계 값은 분산에 기초하여 결정되는 임계 값으로, x축 방향의 분산 σx 및 y축 방향의 분산 σy의 함수인 fx, σy)로 표현될 수 있다. fxy)는 다양하게 설정될 수 있다. f(?x, σy)는 예를 들어, 아래의 <수학식 1>과 같이 설정될 수 있다.
Figure 112015111199844-pat00001
이벤트 신호들의 개수가 fx, σy)보다 큰 경우, 생성 장치는 추출된 이벤트 신호들의 수가 이미지를 생성하는 데에 적절하다고 판단하고, 추출된 이벤트 신호들을 이용하여 이미지를 생성할 수 있다.
생성 장치는 <수학식 1>을 효율적으로 연산하기 위하여, 아래 [표 1]의 알고리즘을 이용할 수 있다. [표 1]에서 α는 2인 경우를 가정한다.
Figure 112015111199844-pat00002
도 6은 일 실시예에 따라 이벤트 신호들과 관련된 솔리드 레벨(solid level)에 기초하여 제1 이미지를 생성하는 방법을 나타낸 흐름도이다. 도 6을 참조하면, 일 실시예에 따른 생성 장치는 버퍼에 저장된 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출하고(610), 추출된 이벤트 신호들과 관련된 솔리드 레벨을 결정할 수 있다(620). 생성 장치는 이벤트 신호들과 관련된 솔리드 레벨을 이용하여 추출된 이벤트 신호들의 수가 적절한지 여부를 판단할 수 있다. 생성 장치가 솔리드 레벨을 결정하는 방법에 대하여는 도 7을 참조하여 설명한다.
생성 장치는 솔리드 레벨을 미리 설정된 임계치와 비교하여 버퍼로부터 이벤트 신호를 더 추출할 지 여부를 결정할 수 있다. 생성 장치는 단계(620)에서 결정된 솔리드 레벨이 임계치보다 큰지 여부를 판단할 수 있다(630). 단계(630)의 판단 결과, 솔리드 레벨이 임계치보다 크다면, 생성 장치는 현재 추출된 이벤트 신호들을 이용하여 이미지를 생성할 수 있다(640).
단계(630)의 판단 결과, 추출된 이벤트 신호들의 수가 임계치보다 작거나 같다면, 생성 장치는 버퍼에 저장된 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 더 추출할 수 있다(610).
도 7은 일 실시예에 따른 이벤트 신호들과 관련된 솔리드 레벨을 설명하기 위한 도면이다. 전술한 바와 같이 생성 장치는 이벤트 신호들과 관련된 솔리드 레벨을 이용하여 수집된 이벤트 신호들의 수가 적절한지 여부를 판단할 수 있다. 솔리드 레벨은 이벤트 신호들의 위치 관계에 기초하여 계산되는 파라미터이다. 솔리드 레벨은 이벤트 신호들의 솔리디티(solidity)를 지시하는 파라미터일 수 있다. 예를 들어, 솔리드 레벨은 수집된 이벤트 신호들의 위치가 서로 밀집한 정도를 지시하는 척도일 수 있다. 또는, 솔리드 레벨은 이벤트 신호들이 모여 생성되는 형상의 뚜렷한 정도를 지시하는 척도일 수 있다. 일 예로, 솔리드 레벨은 특정 이벤트 신호에 대응하는 주변 이벤트들의 수가 미리 정해진 수보다 크면 증가되고, 해당 이벤트 신호에 대응하는 주변 이벤트들의 수가 미리 정해진 수보다 작으면 감소되는 파라미터일 수 있다. 이때, 특정 이벤트 신호의 위치 정보에 기초하여 해당 이벤트 신호의 위치가 결정될 수 있고, 결정된 위치 주변의 미리 정해진 영역 내에 포함된 이벤트 신호들이 주변 이벤트 신호들로 결정될 수 있다.
생성 장치는 이벤트 신호들을 누적하여 저장할 수 있다. 예를 들어, 생성 장치는 이벤트 기반 비전 센서의 픽셀 어레이에 대응하는 원소들을 포함하는 이벤트 맵을 이용하여 이벤트 신호들을 누적하여 저장할 수 있다. 이벤트 맵에 포함된 각 원소들의 값은 '0'으로 초기화될 수 있다. 생성 장치는 수신된 이벤트 신호의 위치 정보에 기초하여, 수신된 이벤트 신호에 대응하는 원소의 값을 '1'로 설정할 수 있다.
생성 장치는 누적 저장된 결과에 기초하여 솔리드 레벨을 계산할 수 있다. 예를 들어, 생성 장치는 아래의 <수학식 2>를 이용하여 솔리드 레벨 s 를 계산할 수 있다. 솔리드 레벨 s 는 미리 정해진 값으로 초기화된 후, <수학식 2>를 통하여 갱신될 수 있다. 솔리드 레벨 s 는 0과 1 사이의 값을 가질 수 있다.
Figure 112015111199844-pat00003
여기서,
Figure 112015111199844-pat00004
는 솔리드 레벨의 변화량이고,
Figure 112015111199844-pat00005
는 결정 민감도(decision sensitivity)이다.
Figure 112015111199844-pat00006
는 0과 1 사이의 상수(constant)일 수 있다.
Figure 112015111199844-pat00007
는 해비사이드 스텝 함수(heaviside step function)이다. 내부 값이 0보다 크면
Figure 112015111199844-pat00008
는 1이고, 그 외의 경우
Figure 112015111199844-pat00009
는 0일 수 있다.
m 은 이벤트 맵이다. 이벤트 맵 m 에서 특정 이벤트 신호 e에 대응하는 원소의 i번째 이웃 원소가 '1'로 설정된 경우
Figure 112015111199844-pat00010
는 1이고, 그 외의 경우
Figure 112015111199844-pat00011
는 0일 수 있다. θ는 임계 값이다.
생성 장치는 솔리드 레벨과 미리 정해진 임계치(임계 레벨)(예를 들어, 0.4 등)을 비교할 수 있다. 예를 들어, 솔리드 레벨이 임계치보다 큰 경우, 생성 장치는 추출된 이벤트 신호들의 수가 이미지를 생성하는 데에 적절하다고 판단하고, 추출된 이벤트 신호들을 이용하여 이미지를 생성할 수 있다.
도 7을 참조하면, 생성 장치는 솔리드 레벨을 이용함으로써, 객체가 단순한 패턴을 가지는 경우(710) 및 복잡한 패턴을 가지는 경우(720) 모두에서 적절한 수의 이벤트 신호들을 추출할 수 있다.
예를 들어, 생성 장치는 객체가 단순한 패턴을 가지는 경우(710)의 솔리드 레벨에 대응하는 임계치보다 복잡한 패턴을 가지는 경우(720)의 솔리드 레벨에 대응하는 임계치를 높게 설정함으로써 각 경우에 맞는 적절한 수의 이벤트 신호들을 추출할 수 있다.
생성 장치는 전술한 실시예들에 따라 적절한 수의 이벤트 신호들이 추출되면, 이미지를 생성할 수 있다. 이때, 추출된 이벤트 신호들은 위치 정보를 포함하므로, 해당 위치 정보를 이용하여 이벤트 신호들에 대응하는 포인트들이 2차원 평면 위에 배치될 수 있다. 예를 들어, 도 7과 같은 이미지가 생성될 수 있다. 경우에 따라서, 생성 장치는 생성된 이미지에 노이즈 필터링, 에지 디텍션 등 다양한 이미지 처리 기법을 적용할 수도 있다.
도 8은 일 실시예에 따른 제3 이미지를 생성하는 방법을 나타낸 흐름도이다. 도 8을 참조하면, 일 실시예에 따른 생성 장치는 제2 이미지를 이동, 회전, 축소, 확대 중 적어도 하나의 동작에 의해 제1 이미지와 중첩함으로써 중첩 후보 이미지들을 생성할 수 있다(810). 생성 장치는 예를 들어, 시간 구간(t-1)에 대응하는 제2-1 이미지, 시간 구간(t-2)에 대응하는 제2-2 이미지, 시간 구간(t-3)에 대응하는 제2-3 이미지들을 이동, 회전, 축소, 확대 등의 동작에 의해 시간 구간(t0)에 대응하는 제1 이미지와 중첩함으로써 중첩 후보 이미지들을 생성할 수 있다.
생성 장치는 중첩 후보 이미지들과 제1 이미지와의 유사도들을 산출할 수 있다(820). 생성 장치는 예를 들어, 중첩 후보 이미지들 및 제1 이미지의 동일 위치의 픽셀에 대응하는 이벤트 신호 값의 총합, 다시 말해 픽셀 값의 곱의 총합을 이용하여 유사도들을 산출할 수 있다. 이때, 생성 장치는 중첩 후보 이미지들과 제1 이미지의 동일 위치의 픽셀에 대응하는 이벤트가 있으면, 이벤트 신호의 값을 1로 설정하고, 없으면 0으로 설정할 수 있다. 또는 생성 장치는 중첩 후보 이미지들 및 제1 이미지 각각에 대응하는 이벤트 신호가 온/온 또는 오프/오프와 같이 같으면 이벤트 신호의 값을 +1로 설정하고, 서로 다르면 -1로 설정하며, 이미지들 각각에 대응하는 이벤트 신호가 발생하지 않으면 0으로 설정할 수 있다. 생성 장치는 이벤트 신호 값들의 총합을 유사도로 산출할 수 있다.
생성 장치는 산출된 유사도들 중 최대 유사도에 대응하는 중첩 후보 이미지를 제1 이미지와 중첩하여 제3 이미지를 생성할 수 있다(830).
실시예에 따라서, 생성 장치는 단계(810)에서 생성된 중첩 후보 이미지들을 CIS(CMOS Image Sensor) 등에 제공하여 예를 들어, 디블러링(deblurring)과 같은 이미지 프로세싱에 이용하도록 할 수 있다.
도 9는 다른 실시예에 따른 이미지 생성 방법을 나타낸 흐름도이다. 도 9를 참조하면, 단계(910) 내지 단계(920)의 과정은 도 3의 단계(310) 내지 단계(320)의 과정과 동일하므로 해당 부분의 설명을 참조하도록 한다. 일 실시예에 따른 생성 장치는 단계(910) 내지 단계(920)에 의해 제1 이미지 및 제2 이미지가 생성되면, 제1 이미지를 복수의 구역들로 분할할 수 있다(930). 생성 장치는 제1 이미지를 예를 들어, 4개의 구역들, 또는 9개의 구역들과 같이 미리 정해진 영역들을 분할할 수 있다. 생성 장치는 제1 이미지를 서로 동일한 크기의 구역들로 분할하거나 또는 서로 다른 크기의 구역들로 분할할 수 있다. 또는 생성 장치는 제1 이미지를 깊이 정보에 따라 복수의 구역들로 분할할 수도 있다.
생성 장치는 복수의 구역들 각각과 제2 이미지의 적어도 일부가 중첩되도록 제2 이미지의 적어도 일부를 이동 또는 회전시켜 구역별 중첩 후보 이미지들을 생성할 수 있다(940). 이때, 제2 이미지의 적어도 일부는 제1 이미지의 복수의 구역들 각각에 대응하는 크기일 수도 있고, 제1 이미지의 복수의 구역들보다 작거나 큰 크기일 수도 있다.
생성 장치는 구역별 중첩 후보 이미지들과 제1 이미지와의 유사도들을 산출할 수 있다(950). 생성 장치는 예를 들어, 구역별 중첩 후보 이미지들 및 제1 이미지의 동일 위치의 픽셀에 대응하는 이벤트 신호 값의 총합, 다시 말해 픽셀 값의 곱의 총합을 이용하여 유사도들을 산출할 수 있다.
생성 장치는 산출된 유사도들 중 최대 유사도에 대응하는 중첩 후보 이미지를 제1 이미지와 중첩하여 제3 이미지를 생성할 수 있다(960).
도 10은 다른 실시예에 따른 이미지 생성 방법을 나타낸 흐름도이다. 도 10을 참조하면, 단계(1010) 내지 단계(1020)의 과정은 도 3의 단계(310) 내지 단계(320)의 과정과 동일하므로 해당 부분의 설명을 참조하도록 한다.
일 실시예에 따른 생성 장치는 단계(1010) 내지 단계(1020)에 의해 제1 이미지 및 제2 이미지가 생성되면, 제1 이미지 내 복수 개의 객체들을 인식할 수 있다(1030). 단계(1030)에서, 생성 장치는 이미지를 이용하여 객체를 인식하는 다양한 기법들을 이용하여 객체들을 인식할 수 있다. 생성 장치는 예를 들어, 학습 기반 분류기를 이용하여 이미지로부터 객체를 인식할 수 있다. 생성 장치는 인식된 객체가 기 등록된 객체 유형들 중 하나로 분류되는 경우 객체 인식이 성공하였다고 판단할 수 있다. 반면, 생성 장치는 인식된 객체가 기 등록된 객체 유형들 중 어디에도 해당하지 않는 경우 객체 인식이 실패하였다고 판단할 수 있다. 객체 인식이 성공하였다고 판단되는 경우, 생성 장치는 인식 결과를 출력할 수 있다. 인식 결과는 객체 유형을 지시하는 아이디일 수 있다. 또는 생성 장치는 제1 시간 구간의 이벤트 신호들을 이용하여 제1 이미지에 포함된 객체들의 클래스들(classes)을 구분하고, 객체들의 클래스들의 평균값을 기초로, 제1 시간 구간의 이벤트 신호가 어느 객체의 클래스에 속하는지를 판단함으로써 제1 이미지 내 복수 개의 객체들을 인식할 수도 있다.
생성 장치는 복수의 객체들 각각과 제2 이미지의 적어도 일부가 중첩되도록 제2 이미지의 적어도 일부를 이동 또는 회전시켜 객체 별 중첩 후보 이미지들을 생성할 수 있다(1040).
생성 장치는 객체 별 중첩 후보 이미지들과 제1 이미지와의 유사도들을 산출할 수 있다(1050). 생성 장치는 예를 들어, 객체 별 중첩 후보 이미지들 및 제1 이미지의 동일 위치의 픽셀에 대응하는 이벤트 신호 값의 총합, 다시 말해 픽셀 값의 곱의 총합을 이용하여 유사도들을 산출할 수 있다.
생성 장치는 산출된 유사도들 중 최대 유사도에 대응하는 중첩 후보 이미지를 제1 이미지와 중첩하여 제3 이미지를 생성할 수 있다(1060).
도 11은 다른 실시예에 따른 이미지 생성 방법을 나타낸 흐름도이다. 도 11을 참조하면, 일 실시예에 따른 생성 장치는 이벤트 신호들을 저장할 수 있다(1105). 생성 장치는 예를 들어, 버퍼 또는 메모리에 이벤트 신호들을 저장할 수 있다.
생성 장치는 최근 이벤트 순으로 저장된 이벤트 신호들을 인출(또는 추출)할 수 있다(1110). 생성 장치는 인출된 제1 이벤트 신호들의 수가 제1 이미지를 생성하는 데에 충분한지 여부를 판단할 수 있다(1115). 생성 장치는 전술한 바와 같이 인출된 이벤트 신호들의 분산 또는 인출된 이벤트 신호들과 관련된 솔리드 레벨을 이용하여 제1 이벤트 신호들의 수가 제1 이미지를 생성하는 데에 충분한지 여부를 판단할 수 있다. 여기서, '제1 이벤트 신호들'은 제1 시간 구간의 이벤트 신호들을 의미하는 것으로 이해될 수 있다. 생성 장치는 예를 들어, 제1 이벤트 신호들의 가로축 분산과 세로축 분산을 계산할 수 있다. 생성 장치는 제1 이벤트 신호들의 수가 예를 들어, (가로축 분산 x 세로축 분산 x 미리 정의된 상수) 보다 크면, 제1 이미지를 최초의 중첩 이미지로 저장할 수 있다.
단계(1115)의 판단 결과, 제1 이벤트 신호들의 수가 충분하다면, 생성 장치는 제2 이벤트 신호들을 추출할 수 있다(1120). 여기서, 제2 이벤트 신호들은 제2 시간 구간의 이벤트 신호들일 수 있다. 생성 장치는 제2 이벤트 신호을 이용하여 제2 이미지를 생성할 수 있다. 단계(1120)에서도 생성 장치는 마찬가지로, 제2 이벤트 신호들의 가로축 분산과 세로축 분산을 계산하고, 제2 이벤트 신호들의 수가 제2 이미지를 생성하기에 충분한지 여부를 판단할 수 있다.
생성 장치는 제2 이미지를 예를 들어, 이동, 회전, 축소, 및 확대 등과 같이 변환할 수 있다(1125). 생성 장치는 변환된 제2 이미지들과 제1 이미지를 중첩하여 중첩 후보 이미지들을 생성하고, 중첩 후보 이미지들과 제1 이미지와의 유사도들을 산출할 수 있다(1130).
생성 장치는 산출된 유사도들 중 최대 유사도를 갖는 중첩 후보 이미지의 이동 거리를 추출할 수 있다(1135).
생성 장치는 추출된 이동 거리에 따라 최대 유사도를 갖는 중첩 후보 이미지를 이동하여 제1 이미지와 정합(중첩)할 수 있다(1140).
생성 장치는 이미지가 완성되었는지 여부를 판단할 수 있다(1145). 단계(1145)에서, 생성 장치는 예를 들어, 이미지의 퀄리티에 기초하여 이미지가 완성되었는지를 판단하거나, 또는 버퍼에 남아 있는 이벤트 신호들의 개수에 기초하여 이미지 완성 여부를 판단할 수 있다. 단계(1145)의 판단 결과, 이미지가 완성되지 않았다면, 생성 장치는 최근 이벤트 순으로 이벤트 신호들을 추출(1110)하고, 이후의 과정을 반복할 수 있다. 단계(1145)의 판단 결과, 이미지가 완성되었다면, 생성 장치는 이미지를 출력할 수 있다(1150).
단계(1115)의 판단 결과, 제1 이벤트 신호들의 수가 충분하지 않다면, 생성 장치는 제1 이벤트 신호들을 추가로 수집하고(1155), 이미지가 완성되었는지 여부를 판단할 수 있다(1145). 단계(1145)에서 이미지가 완성되었다면, 생성 장치는 제1 이미지를 출력할 수 있다(1150).
도 12는 다른 실시예에 따른 이미지 생성 방법을 나타낸 흐름도이다. 도 12를 참조하면, 일 실시예에 따른 생성 장치는 이벤트 기반 비전 센서에서 각 시간 구간에 감지된 이벤트 신호들 중 노이즈 신호를 제거할 수 있다(1205). 생성 장치는 예를 들어, 미리 정해진 시간 구간 이내에 제1 이벤트 신호들 및 제2 이벤트 신호들로부터 일정 거리 이내에서 발생된 이벤트 신호가 있는지 여부에 기초하여, 이벤트 신호들 중 노이즈 신호를 제거할 수 있다. 생성 장치는 예를 들어, 각 이벤트 신호들과 일정 거리 이상 이격되어 홀로 감지된 이벤트 신호들을 잘못 감지된 노이즈 신호로 판단하여 제거할 수 있다.
생성 장치는 카메라 캘리브레이션에 의해 단계(1205)에서 노이즈 신호가 제거된 이벤트 신호들(다시 말해 노이즈 신호가 제거되 제1 이벤트 신호들 및 제2 이벤트 신호들)의 렌즈 왜곡을 보정할 수 있다(1210).
생성 장치는 렌즈 왜곡이 보정된 이벤트 신호들을 버퍼에 저장할 수 있다(1215).
생성 장치는 버퍼에 저장된 이벤트 신호들을 이용하여 제1 이미지를 생성하고(1220), 버퍼에 저장된 이벤트 신호들 중 제1 이미지의 생성에 이용된 이벤트 신호들을 제외한 나머지 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출할 수 있다(1225).
생성 장치는 추출된 이벤트 신호들의 분산에 기초하여 제2 이미지를 위한 제2 임계치를 결정할 수 있다(1230). 생성 장치는 추출된 이벤트 신호들의 수와 제2 임계치의 비교 결과에 기초하여, 버퍼로부터 이벤트 신호를 더 추출할지 여부를 결정할 수 있다.
생성 장치는 추출된 이벤트 신호들의 수가 제2 임계치보다 큰 지 여부를 판단할 수 있다(1235). 단계(1235)의 판단 결과, 추출된 이벤트 신호들의 수가 제2 임계치보다 작거나 같다면, 생성 장치는 제1 이미지의 생성에 이용된 이벤트 신호들을 제외한 나머지 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출할 수 있다(1225).
단계(1235)의 판단 결과, 추출된 이벤트 신호들의 수가 제2 임계치보다 크다면, 생성 장치는 현재 추출된 이벤트 신호들을 이용하여 제2 이미지를 생성할 수 있다(1240).
생성 장치는 제2 이미지를 이동, 회전, 축소, 확대 중 적어도 하나의 동작에 의해 제1 이미지와 중첩함으로써 중첩 후보 이미지들을 생성할 수 있다(1245).
생성 장치는 후보 중첩 이미지들과 제1 이미지와의 유사도들을 산출하고(1250), 산출된 유사도들 중 최대 유사도에 대응하는 후보 중첩 이미지를 제1 이미지와 중첩하여 제3 이미지를 생성할 수 있다(1255).
도 13은 일 실시예에 따른 이미지 생성 장치의 블록도이다. 도 13을 참조하면, 일 실시예에 따른 이미지 생성 장치(이하, '생성 장치')(1300)는 이벤트 기반 비전 센서(1310), 버퍼(1320), 및 프로세서(1330)를 포함한다. 이벤트 기반 비전 센서(1310), 버퍼(1320), 및 프로세서(1330)는 버스(1340)를 통해 서로 연결될 수 있다.
이벤트 기반 비전 센서(1310)는 빛의 변화를 감지한다. 이벤트 기반 비전 센서(1310)는 픽셀 어레이를 포함한다. 픽셀 어레이에 포함된 각 픽셀들은 해당 픽셀로 입사되는 빛의 변화를 감지할 수 있다. 이벤트 기반 비전 센서(1310)는 빛의 변화가 감지된 픽셀(들)에 대응하는 이벤트 신호(들)을 출력할 수 있다. 이벤트 기반 비전 센서(1310)는 객체의 움직임을 감지하여 이벤트 신호를 출력할 수 있다.
버퍼(1320)는 이벤트 기반 비전 센서(1310)에서 제1 시간 구간에 감지된 이벤트 신호들 및 제2 시간 구간에 감지된 이벤트 신호들을 저장한다. 이벤트 신호들 각각은 이벤트 기반 센서(1310)에 포함된 복수의 픽셀들 중 이벤트를 감지한 픽셀을 지시하는 식별 정보, 및 이벤트를 감지한 시간에 관한 시간 정보를 포함할 수 있다.
프로세서(1330)는 마이크로프로세서, 콘트롤러, CPU(central processing unit), ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), FPGA(field programmable gate array), PLU(programmable logic unit), 명령(instruction)을 실행하고 응답할 수 있는 하나 이상의 범용 또는 특수 목적 컴퓨터, 또는 이들의 다양한 조합으로 구현될 수 있다.
이하, 설명의 편의를 위하여 생성 장치(1300)의 구조 및 동작을 설명하나, 실시예들은 생성 장치를 포함하는 다양한 컴퓨팅 장치들, 스마트 텔레비전, 스마트 폰, 웨어러블 디바이스 등 모바일 장치들, 및 각종 보안 장치들 등에 적용될 수 있다.
프로세서(1330)는 버퍼(1320)에 저장된 제1 시간 구간의 이벤트 신호들을 이용하여 제1 이미지를 생성하고, 버퍼(1320)에 저장된 제2 시간 구간의 이벤트 신호들을 이용하여 제2 이미지를 생성한다. 프로세서(1330)는 제1 이미지와 제2 이미지를 중첩함으로써, 제1 이미지 및 제2 이미지에 비하여 높은 품질의 제3 이미지를 생성한다.
프로세서(1330)는 버퍼(1320)에 저장된 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출하고, 추출된 이벤트 신호들의 분산에 기초하여 제1 이미지를 위한 제1 임계치를 결정할 수 있다. 프로세서(1330)는 추출된 이벤트 신호들의 수와 제1 임계치의 비교 결과에 기초하여, 버퍼(1320)로부터 이벤트 신호를 더 추출할지 여부를 결정할 수 있다.
프로세서(1330)는 버퍼(1320)에 저장된 이벤트 신호들 중 제1 이미지의 생성에 이용된 이벤트 신호들을 제외한 나머지 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출할 수 있다. 프로세서(1330)는 추출된 이벤트 신호들의 분산에 기초하여 제2 이미지를 위한 제2 임계치를 결정하고, 추출된 이벤트 신호들의 수와 제2 임계치의 비교 결과에 기초하여, 버퍼(1320)로부터 이벤트 신호를 더 추출할지 여부를 결정할 수 있다.
프로세서(1330)는 버퍼(1320)에 저장된 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출하고, 추출된 이벤트 신호들과 관련된 솔리드 레벨을 결정할 수 있다. 프로세서(1330)는 솔리드 레벨과 미리 설정된 임계치의 비교 결과에 기초하여, 버퍼(1320)로부터 이벤트 신호를 더 추출할지 여부를 결정할 수 있다.
프로세서(1330)는 제2 이미지를 이동, 회전, 축소, 확대 중 적어도 하나의 동작에 의해 제1 이미지와 중첩함으로써 중첩 후보 이미지들을 생성할 수 있다.
프로세서(1330)는 제1 이미지를 복수의 구역들로 분할하고, 복수의 구역들 각각과 제2 이미지의 적어도 일부가 중첩되도록 제2 이미지의 적어도 일부를 이동 또는 회전시켜 구역별 중첩 후보 이미지들을 생성할 수 있다.
프로세서(1330)는 제1 이미지 내 복수의 객체들을 인식하고, 복수의 객체들 각각과 제2 이미지의 적어도 일부가 중첩되도록 제2 이미지의 적어도 일부를 이동 또는 회전시켜 구역별 중첩 후보 이미지들을 생성할 수 있다.
프로세서(1330)는 제1 이미지에 대비되는 제2 이미지의 확대 비율 또는 축소 비율에 따라 제2 이미지의 이동 거리를 설정할 수 있다. 프로세서(1330)는 설정된 이동 거리만큼 제2 이미지를 이동시켜 제1 이미지와 중첩함으로써 중첩 후보 이미지들을 생성할 수 있다.
프로세서(1330)는 중첩 후보 이미지들과 제1 이미지와의 유사도들을 산출하고, 산출된 유사도들 중 최대 유사도에 대응하는 중첩 후보 이미지를 제1 이미지와 중첩하여 제3 이미지를 생성할 수 있다.
프로세서(1330)는 중첩 후보 이미지들 및 제1 이미지의 동일 위치의 픽셀에 대응하는 이벤트 신호 값의 총합을 이용하여 유사도들을 산출할 수 있다.
이 밖에도, 프로세서(1330)는 도 1 내지 도 12를 통하여 전술하는 적어도 하나의 방법을 수행할 수 있다. 프로세서(1330)는 프로그램을 실행하고, 생성 장치(1300)를 제어할 수 있다. 프로세서(1330)에 의하여 실행되는 프로그램 코드는 메모리(미도시)에 저장될 수 있다. 생성 장치(1300)는 입출력 장치(도면 미 표시)를 통하여 외부 장치(예를 들어, 퍼스널 컴퓨터 또는 네트워크)에 연결되고, 데이터를 교환할 수 있다.
도 1 내지 도 12를 통하여 전술한 적어도 하나의 방법은 태블릿, 스마트 폰, 스마트 텔레비전 또는 웨어러블 디바이스 내의 프로세서에서 동작하는 앱 형태로도 구현되거나, 칩 형태로 구현되어 스마트 폰, 스마트 텔레비전, 웨어러블 디바이스 또는 지능형 자동차, 기타 다양한 AV(Audio Video) 기기 내에 내장될 수 있다.
도 14는 다른 실시예에 따른 이미지 생성 장치의 블록도이다. 도 14를 참조하면, 일 실시예에 따른 생성 장치(1400)는 이벤트 기반 비전 센서(1410), 버퍼(1430) 및 프로세서(1450)를 포함할 수 있다.
버퍼(1430)는 이벤트 기반 비전 센서(1410)에서 감지된 이벤트 신호들을 미리 정해진 크기만큼 저장하고 있다가 프로세서(1450)가 이미지를 생성할 때, 최근 발생한 이벤트 신호부터 역순으로 출력할 수 있다. 버퍼(1430)는 이벤트 신호가 발생한 픽셀의 위치, 이벤트 신호가 발생한 시간, 이벤트가 발생한 픽셀에서의 밝기값 등을 저장할 수 있다. 이 밖에, 이벤트 기반 비전 센서(1410), 및 버퍼(1430)에 대한 설명은 도 13의 이벤트 기반 비전 센서(1310), 버퍼(1320)와 동일하므로 해당 부분의 설명을 참고하기로 한다.
프로세서(1450)는 제1 이벤트 신호 수집부(1451), 제2 이벤트 신호 수집부(1452), 이동부(1453), 비교부(1454) 및 정합부(1455)를 포함할 수 있다.
제1 이벤트 신호 수집부(1451)는 버퍼(1430)로부터 제1 이벤트 신호들을 수집할 수 있다. 제1 이벤트 신호 수집부(1451)는 수집된 제1 이벤트 신호들을 이용하여 제1 이미지를 생성할 수 있다. 제1 이벤트 신호 수집부(1451)는 이미지 정합의 기초가 되는 최초의 중첩 이미지를 생성할 수 있다.
제1 이미지를 구성하는 제1 이벤트 신호들의 수가 너무 적으면 추후 이미지의 이동 및 정합 과정에서 오차가 커져서 적절한 정합 이미지(중첩 이미지)가 생성되지 않을 수도 있다. 제1 이벤트 신호 수집부(1451)는 제1 이미지를 생성하는 데에 사용되는 이벤트 신호들의 수를 일반적으로 제2 이미지를 생성하는 데에 사용되는 이벤트들의 수보다 많이 사용할 수 있다. 제1 이미지를 생성하는데에 필요한 이벤트 신호들의 수는 상황에 따라 달라질 수 있다. 일례로, 제1 이벤트 신호 수집부(1451)는 제1 이벤트 신호들의 가로축 분산과 세로축 분산을 곱하여 이벤트 신호들이 차지하는 이미지 상의 면적과 비례하는 값을 구할 수 있다. 제1 이벤트 신호 수집부(1451)는 구해진 값에 미리 정의된 상수를 곱하여 그 값보다 제1 이벤트 신호들의 수가 많으면, 제1 이미지의 생성을 완료할 수 있다.
제2 이벤트 신호 수집부(1452)는 버퍼(1430)로부터 제2 이벤트 신호들을 수집할 수 있다. 제2 이벤트 신호 수집부(1452)는 수집된 제2 이벤트 신호들을 이용하여 제2 이미지(들)을 생성할 수 있다. 제2 이벤트 신호 수집부(1452) 또한, 제1 이벤트 신호 수집부(1451)와 마찬가지 방식으로 제2 이미지의 생성을 완료할 수 있다. 다만, 제2 이벤트 신호 수집부(1452)는 제1 이벤트 신호 수집부(1451)에 비해 적은 수의 이벤트 신호들에 의해 제2 이미지를 생성할 수 있다. 제2 이미지를 생성하기 위한 제2 이벤트 신호들의 개수 또한 상황에 따라 달라질 수 있다.
이동부(1453)는 제2 이미지(들)을 이동, 회전, 축소, 확대 중 적어도 하나의 동작에 의해 제1 이미지와 중첩 가능한 위치로 이동 변환시킬 수 있다. 이동부(1453)는 제2 이미지를 이동 변환한 이미지를 생성할 수 있다. 이동부(1453)는 제2 이미지를 가로축과 세로축으로 이동시킬 수 있다. 또는 이동부(1453)는 제2 이미지를 가로축, 세로축 그리고 앞, 뒤 축으로 이동시킬 수 있다. 또는 이동부(1453)는 제2 이미지를 가로축, 세로축, 앞뒤축, 그리고 3 방향으로 회전 이동시킬 수 있다.
비교부(1454)는 이동부(1453)에서 생성한 이동 변환된 제2 이미지(들)과 중첩 이미지(제1 이미지) 사이의 유사도들을 산출할 수 있다. 비교부(1454)는 두 이미지들 각각의 같은 위치에서의 픽셀값의 곱의 총합을 유사도로 산출할 수 있다.
정합부(1455)는 비교부(1454)에서 산출한 유사도들 중 가장 큰 값에 해당하는 이동 변환된 제2 이미지를 중첩 이미지에 추가적으로 중첩할 수 있다. 정합부(1455)는 이동 변화된 제2 이미지(들) 중 가장 유사도가 큰 제2 이미지를 중첩 이미지에 추가로 중첩하여 최종 이미지를 출력할 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.

Claims (27)

  1. 제 1 시간 구간 동안 이벤트 기반 비전 센서에서 출력되고, 버퍼에 저장되는 제 1 이벤트 신호들에 기반하여, 제 1 이미지를 생성하는 단계;
    제 2 시간 구간 동안 상기 이벤트 기반 비전 센서에서 출력되고, 상기 버퍼에 저장되는 제 2 이벤트 신호들에 기반하여, 제 2 이미지를 생성하는 단계;
    상기 제 1 이미지와 상기 제 2 이미지의 품질들보다 높은 품질을 갖는 제 3 이미지를 생성하기 위하여, 상기 제 1 이미지와 상기 제 2 이미지를 중첩하는 단계를 포함하되,
    상기 제 1 이미지를 생성하는 단계는:
    상기 버퍼로부터, 상기 저장된 제 1 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출하는 단계;
    상기 추출된 제 1 이벤트 신호들의 분산에 기반하여, 제 1 이미지에 대한 임계치를 결정하는 단계;
    상기 추출된 제 1 이벤트 신호들의 수가 상기 임계치보다 큰지 결정하는 단계; 및
    상기 추출된 제 1 이벤트 신호들의 상기 수가 상기 임계치보다 작거나 같은 것으로 결정되는 것에 응답하여, 이벤트가 감지된 시간의 역순으로 상기 버퍼에 저장된 하나 또는 그 이상의 추가적인 이벤트 신호들을 추출하는 단계를 포함하는 이미지 생성 방법.
  2. 제 1 항에 있어서,
    상기 제 1 이벤트 신호들 및 상기 제 2 이벤트 신호들 각각은 상기 이벤트 기반 비전 센서에 포함된 픽셀들 중 이벤트를 감지한 픽셀을 지시하는 식별 정보, 및 상기 이벤트가 감지된 시간을 지시하는 시간 정보를 포함하는 이미지 생성 방법.
  3. 제 1 항에 있어서,
    상기 제 1 이벤트 신호들의 수는 상기 제 2 이벤트 신호들의 수보다 큰 이미지 생성 방법.
  4. 삭제
  5. 제 1 항에 있어서,
    상기 제 2 이미지를 생성하는 단계는:
    상기 버퍼로부터, 상기 저장된 제 2 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출하는 단계;
    상기 추출된 제 2 이벤트 신호들의 분산에 기반하여, 제 2 이미지에 대한 임계치를 결정하는 단계;
    상기 추출된 제 2 이벤트 신호들의 상기 수가 상기 임계치보다 작거나 같은 것으로 결정되는 것에 응답하여, 이벤트가 감지된 시간의 역순으로 상기 버퍼에 저장된 하나 또는 그 이상의 추가적인 이벤트 신호들을 추출하는 단계를 포함하는 이미지 생성 방법.
  6. 제 1 항에 있어서,
    상기 제 1 이미지를 생성하는 단계는:
    상기 버퍼로부터, 상기 저장된 제 1 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출하는 단계;
    상기 추출된 제 1 이벤트 신호들의 솔리드 레벨(solid level)을 결정하는 단계;
    상기 솔리드 레벨이 임계치보다 작거나 같은지 결정하는 단계; 및
    상기 솔리드 레벨이 상기 임계치보다 작거나 같은 것으로 결정되는 것에 응답하여, 이벤트가 감지된 시간의 역순으로 상기 버퍼에 저장된 하나 또는 그 이상의 추가적인 이벤트 신호들을 추출하는 단계를 포함하는 이미지 생성 방법.
  7. 제 1 항에 있어서,
    상기 중첩하는 단계는, 중첩 후보 이미지들을 생성하기 위하여 이동, 회전, 축소, 및 확대 중 적어도 하나의 동작을 통해 상기 제 1 이미지와 상기 제 2 이미지를 중첩하는 단계를 포함하는 이미지 생성 방법.
  8. 제 7 항에 있어서,
    상기 중첩하는 단계는:
    상기 제 1 이미지와 상기 중첩 후보 이미지들 사이의 유사도들을 결정하는 단계; 및
    상기 제 3 이미지를 생성하기 위하여, 상기 유사도들 중 최대 유사도를 갖는 중첩 후보 이미지와 상기 제 1 이미지를 중첩하는 단계를 더 포함하는 이미지 생성 방법.
  9. 제 8 항에 있어서,
    상기 결정하는 단계는:
    상기 제 1 이벤트 신호들 및 상기 제 2 이벤트 신호들 중, 상기 제 1 이미지의 위치들 및 상기 중첩 후보 이미지들의 위치들의 픽셀들에 대응하는 이벤트 신호들의 값들의 합에 기반하여, 상기 유사도들을 결정하는 단계를 포함하되,
    상기 제 1 이미지의 상기 위치들은 상기 중첩 후보 이미지들의 상기 위치들과 동일한 이미지 생성 방법.
  10. 상기 제 1 항에 있어서,
    상기 중첩하는 단계는:
    상기 제 1 이미지를 구역들로 분할하는 단계; 및
    상기 구역들의 각각에 대한 중첩 후보 이미지들을 생성하기 위하여, 상기 제 2 이미지의 일부가 상기 구역들의 각각과 중첩되도록 상기 제 2 이미지의 상기 일부를 이동 또는 회전시키는 단계를 포함하는 이미지 생성 방법.
  11. 제 1 항에 있어서,
    상기 중첩하는 단계는:
    상기 제 1 이미지의 객체들을 인식하는 단계; 및
    상기 객체들의 각각에 대한 중첩 후보 이미지들을 생성하기 위하여, 상기 제 2 이미지의 일부가 상기 객체들의 각각과 중첩되도록 상기 제 2 이미지의 상기 일부를 이동 또는 회전시키는 단계를 포함하는 이미지 생성 방법.
  12. 제 1 항에 있어서,
    상기 중첩하는 단계는:
    상기 제 1 이미지에 대한 상기 제 2 이미지의 확대 비율 또는 축소 비율에 기반하여, 상기 제 2 이미지의 이동 거리를 결정하는 단계; 및
    상기 제 2 이미지를 상기 제 1 이미지와 중첩되도록 상기 이동 거리만큼 이동시키는 단계를 포함하는 이미지 생성 방법.
  13. 제 1 시간 구간 동안 제 1 이벤트 신호들을 출력하고 제 2 시간 구간 동안 제 2 이벤트 신호들을 출력하는 이벤트 기반 비전 센서;
    상기 제 1 이벤트 신호들 및 상기 제 2 이벤트 신호들을 저장하는 버퍼; 및
    상기 제 1 이벤트 신호들에 기반하여, 제 1 이미지를 생성하고,
    상기 제 2 이벤트 신호들에 기반하여, 제 2 이미지를 생성하고,
    상기 제 1 이미지와 상기 제 2 이미지의 품질들보다 높은 품질을 갖는 제 3 이미지를 생성하기 위하여, 상기 제 1 이미지와 상기 제 2 이미지를 중첩하고,
    상기 버퍼로부터, 상기 저장된 제 1 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출하고,
    상기 추출된 제 1 이벤트 신호들의 분산에 기반하여, 제 1 이미지에 대한 임계치를 결정하고,
    상기 추출된 제 1 이벤트 신호들의 수가 상기 임계치보다 큰지 결정하고, 그리고
    상기 추출된 제 1 이벤트 신호들의 상기 수가 상기 임계치보다 작거나 같은 것으로 결정되는 것에 응답하여, 이벤트가 감지된 시간의 역순으로 상기 버퍼에 저장된 하나 또는 그 이상의 추가적인 이벤트 신호들을 추출하는 프로세서를 포함하는 이미지 생성 장치.
  14. 제 13 항에 있어서,
    상기 제 1 이벤트 신호들 및 상기 제 2 이벤트 신호들의 각각은 상기 이벤트 기반 비전 센서에 포함된 픽셀들 중 이벤트를 감지한 픽셀을 지시하는 식별 정보, 및 상기 이벤트가 감지된 시간을 지시하는 시간 정보를 포함하는 이미지 생성 장치.
  15. 삭제
  16. 제 13 항에 있어서,
    상기 프로세서는:
    상기 버퍼로부터, 상기 저장된 제 2 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출하고,
    상기 추출된 제 2 이벤트 신호들의 분산에 기반하여, 제 2 이미지에 대한 임계치를 결정하고,
    상기 추출된 제 2 이벤트 신호들의 수가 상기 임계치보다 큰지 결정하고, 그리고
    상기 추출된 제 2 이벤트 신호들의 상기 수가 상기 임계치보다 작거나 같은 것으로 결정되는 것에 응답하여, 이벤트가 감지된 시간의 역순으로 상기 버퍼에 저장된 하나 또는 그 이상의 추가적인 이벤트 신호들을 추출하는 이미지 생성 장치.
  17. 제 13 항에 있어서,
    상기 프로세서는:
    상기 버퍼로부터, 상기 저장된 제 1 이벤트 신호들을 이벤트가 감지된 시간의 역순으로 추출하고,
    상기 추출된 제 1 이벤트 신호들의 솔리드 레벨(solid level)을 결정하고,
    상기 솔리드 레벨이 임계치보다 작거나 같은지 결정하고, 그리고
    상기 솔리드 레벨이 상기 임계치보다 작거나 같은 것으로 결정되는 것에 응답하여, 이벤트가 감지된 시간의 역순으로 상기 버퍼에 저장된 하나 또는 그 이상의 추가적인 이벤트 신호들을 추출하는 이미지 생성 장치.
  18. 제 13 항에 있어서,
    상기 프로세서는, 상기 중첩하는 단계는 중첩 후보 이미지들을 생성하기 위하여, 이동, 회전, 축소, 및 확대 중 적어도 하나의 동작을 통해 상기 제 1 이미지와 상기 제 2 이미지를 중첩하는 이미지 생성 장치.
  19. 각 제 1 이벤트들이 감지된 시간의 역순으로 제 1 시간 구간 동안 이벤트 기반 비전 센서에서 출력되는 제 1 이벤트 신호들을 버퍼로부터 검색하는 단계;
    상기 검색한 제 1 이벤트 신호들에 기반하여 제 1 이미지를 생성하는 단계;
    각 제 2 이벤트들이 감지된 시간의 역순으로 제 2 시간 구간 동안 상기 이벤트 기반 비전 센서에서 출력되는 제 2 이벤트 신호들을 상기 버퍼로부터 검색하는 단계;
    상기 검색한 제 2 이벤트 신호들에 기반하여 제 2 이미지를 생성하는 단계;
    중첩 후보 이미지들을 생성하기 위하여, 상기 제 1 이미지와 상기 제 2 이미지를 중첩하는 단계;
    상기 제 1 이미지와 상기 중첩 후보 이미지들 사이의 유사도들을 결정하는 단계; 및
    제 3 이미지를 생성하기 위하여, 상기 유사도들 중 최대 유사도를 갖는 중첩 후보 이미지와 상기 제 1 이미지를 중첩하는 단계를 포함하는 이미지 생성 방법.
  20. 제 19 항에 대하여,
    상기 제 1 이미지에 대한, 상기 최대 유사도를 갖는 상기 중첩 후보 이미지의 확대 비율 또는 축소 비율에 기반하여, 상기 중첩 후보 이미지의 이동 거리를 결정하는 단계를 더 포함하고,
    상기 중첩하는 단계는:
    상기 중첩 후보 이미지를 상기 제 1 이미지와 중첩되도록 상기 이동 거리만큼 이동시키는 단계를 포함하는 이미지 생성 방법.
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
KR1020150160206A 2015-11-16 2015-11-16 이미지 생성 방법 및 장치 KR102399017B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020150160206A KR102399017B1 (ko) 2015-11-16 2015-11-16 이미지 생성 방법 및 장치
US15/210,243 US10096091B2 (en) 2015-11-16 2016-07-14 Image generating method and apparatus
EP16182062.6A EP3168810B1 (en) 2015-11-16 2016-07-29 Image generating method and apparatus
CN201610915437.7A CN106709895B (zh) 2015-11-16 2016-10-20 图像生成方法和设备
JP2016209292A JP6872877B2 (ja) 2015-11-16 2016-10-26 イメージ生成方法及び装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150160206A KR102399017B1 (ko) 2015-11-16 2015-11-16 이미지 생성 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20170056860A KR20170056860A (ko) 2017-05-24
KR102399017B1 true KR102399017B1 (ko) 2022-05-17

Family

ID=56939858

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150160206A KR102399017B1 (ko) 2015-11-16 2015-11-16 이미지 생성 방법 및 장치

Country Status (5)

Country Link
US (1) US10096091B2 (ko)
EP (1) EP3168810B1 (ko)
JP (1) JP6872877B2 (ko)
KR (1) KR102399017B1 (ko)
CN (1) CN106709895B (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10567679B2 (en) 2016-12-30 2020-02-18 Insightness Ag Dynamic vision sensor architecture
EP3668077B1 (en) * 2017-08-09 2023-08-02 FUJIFILM Corporation Image processing system, server device, image processing method, and image processing program
KR102503543B1 (ko) * 2018-05-24 2023-02-24 삼성전자주식회사 다이나믹 비전 센서, 전자 장치 및 이의 데이터 전송 방법
CN109068024B (zh) * 2018-06-29 2020-07-21 北京大学 一种对时空信号进行滤波的方法
JP7298277B2 (ja) * 2019-04-25 2023-06-27 トヨタ自動車株式会社 イベントカメラ
JP7350515B2 (ja) * 2019-05-22 2023-09-26 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム
EP3993404A4 (en) * 2019-06-25 2023-01-18 Sony Interactive Entertainment Inc. INFORMATION PROCESSING SYSTEM, DEVICE AND METHOD, AND PROGRAM
US11687642B2 (en) * 2019-10-23 2023-06-27 Blue Cromos Management AB System and method for identifying and authenticating counterfeiting articles
US11303811B2 (en) * 2019-11-05 2022-04-12 Fotonation Limited Event-sensor camera
JP2021083004A (ja) 2019-11-21 2021-05-27 アイシン精機株式会社 センサシステム
KR20220039022A (ko) * 2020-09-21 2022-03-29 삼성전자주식회사 비전 센서를 포함하는 이미지 처리 장치 및 그 동작 방법
JPWO2023032320A1 (ko) * 2021-09-03 2023-03-09
JP2023087430A (ja) 2021-12-13 2023-06-23 キヤノン株式会社 撮像装置、情報処理装置、情報処理装置の制御方法、プログラムおよび記憶媒体
US11558542B1 (en) * 2022-01-03 2023-01-17 Omnivision Technologies, Inc. Event-assisted autofocus methods and apparatus implementing the same
KR102519006B1 (ko) * 2022-11-21 2023-04-07 주식회사 에스티씨랩 디지털 기반 로그 데이터의 조회 속도 향상을 위한 로그 데이터 관리 방법 및 서버
CN116757968B (zh) * 2023-08-18 2023-11-24 深圳时识科技有限公司 降噪方法及装置、芯片、事件成像装置和电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013079937A (ja) * 2011-09-30 2013-05-02 Honda Research Inst Europe Gmbh 路面分析

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05167975A (ja) 1991-12-10 1993-07-02 Kyocera Corp 電子スチルカメラ
JPH06350972A (ja) 1993-06-08 1994-12-22 Matsushita Electric Ind Co Ltd 画像信号の動き検出装置
JPH09261526A (ja) 1996-03-19 1997-10-03 Olympus Optical Co Ltd 撮像装置
US7015954B1 (en) * 1999-08-09 2006-03-21 Fuji Xerox Co., Ltd. Automatic video system using multiple cameras
US8385658B2 (en) * 2007-07-27 2013-02-26 Sportvision, Inc. Detecting an object in an image using multiple templates
US7916177B2 (en) 2007-08-03 2011-03-29 Panasonic Corporation Image-capturing apparatus, image-capturing method and program for detecting and correcting image blur
CN100538723C (zh) * 2007-10-26 2009-09-09 浙江工业大学 多视觉传感器信息融合的内河船舶自动识别系统
US8339456B2 (en) * 2008-05-15 2012-12-25 Sri International Apparatus for intelligent and autonomous video content generation and streaming
CN101848369B (zh) 2009-12-04 2012-10-03 四川川大智胜软件股份有限公司 一种基于自适应双背景模型的视频禁停事件检测方法
JP2011199786A (ja) 2010-03-23 2011-10-06 Olympus Corp 画像処理装置及び画像処理方法並びにプログラム
KR101880998B1 (ko) * 2011-10-14 2018-07-24 삼성전자주식회사 이벤트 기반 비전 센서를 이용한 동작 인식 장치 및 방법
US9008366B1 (en) * 2012-01-23 2015-04-14 Hrl Laboratories, Llc Bio-inspired method of ground object cueing in airborne motion imagery
KR102124188B1 (ko) * 2013-03-13 2020-06-26 삼성전자주식회사 이미지를 처리하는 전자장치 및 방법
GB2512621A (en) * 2013-04-04 2014-10-08 Sony Corp A method and apparatus
KR102081087B1 (ko) * 2013-06-17 2020-02-25 삼성전자주식회사 동기적 영상과 비동기적 영상을 위한 영상 정합 장치 및 이미지 센서
US9363427B2 (en) 2013-08-28 2016-06-07 Disney Enterprises, Inc. Device and method for calibrating a temporal contrast sensor with a frame-based camera sensor
KR102224932B1 (ko) * 2014-02-19 2021-03-08 삼성전자주식회사 비전 센서를 이용한 사용자 입력 처리 장치 및 사용자 입력 처리 방법
CN104284158B (zh) 2014-10-23 2018-09-14 南京信必达智能技术有限公司 应用于面向事件的智能监控相机的方法
KR20160121287A (ko) * 2015-04-10 2016-10-19 삼성전자주식회사 이벤트에 기반하여 화면을 디스플레이하는 방법 및 장치
CN105046676A (zh) * 2015-08-27 2015-11-11 上海斐讯数据通信技术有限公司 一种基于智能终端的图像融合方法及设备

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013079937A (ja) * 2011-09-30 2013-05-02 Honda Research Inst Europe Gmbh 路面分析

Also Published As

Publication number Publication date
EP3168810A1 (en) 2017-05-17
EP3168810B1 (en) 2019-11-13
JP2017091518A (ja) 2017-05-25
US10096091B2 (en) 2018-10-09
CN106709895B (zh) 2022-03-01
KR20170056860A (ko) 2017-05-24
US20170140509A1 (en) 2017-05-18
CN106709895A (zh) 2017-05-24
JP6872877B2 (ja) 2021-05-19

Similar Documents

Publication Publication Date Title
KR102399017B1 (ko) 이미지 생성 방법 및 장치
JP6655878B2 (ja) 画像認識方法及び装置、プログラム
KR102415509B1 (ko) 얼굴 인증 방법 및 장치
JP6608465B2 (ja) ジェスチャーの検知識別の方法及びシステム
US10506174B2 (en) Information processing apparatus and method for identifying objects and instructing a capturing apparatus, and storage medium for performing the processes
US10839537B2 (en) Depth maps generated from a single sensor
KR102476022B1 (ko) 얼굴검출 방법 및 그 장치
CN111626163B (zh) 一种人脸活体检测方法、装置及计算机设备
JP6157165B2 (ja) 視線検出装置及び撮像装置
US10733423B2 (en) Image processing apparatus, image processing method, and storage medium
JP5656768B2 (ja) 画像特徴量抽出装置およびそのプログラム
KR101909326B1 (ko) 얼굴 모션 변화에 따른 삼각 매쉬 모델을 활용하는 사용자 인터페이스 제어 방법 및 시스템
WO2018037479A1 (ja) 画像処理装置、ステレオカメラ装置及び画像処理方法
US9536137B2 (en) Object detection apparatus
JP5935118B2 (ja) 物体検出装置および物体検出方法
JP6399122B2 (ja) 顔検出装置およびその制御方法
JP2010113562A (ja) 物体検知追跡装置,物体検知追跡方法および物体検知追跡プログラム
JP2013029996A (ja) 画像処理装置
KR101276792B1 (ko) 눈 검출 장치 및 방법
KR102512435B1 (ko) 얼굴 식별 방법, 및 이를 이용하는 장치 및 프로그램
KR101349672B1 (ko) 영상 특징 고속 추출 방법 및 이를 지원하는 장치
CN115576510A (zh) 设备调节和图像处理装置、方法、电子设备及存储介质
KR20170062959A (ko) 객체 검출 방법 및 장치
TW202411949A (zh) 臉部屬性的串級偵測
JP6161931B2 (ja) 物体検出装置

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant