KR102474008B1 - 이벤트들-기반 시각 센서를 이용한 저-전력 상시-온 얼굴 검출, 추적, 인식 및/또는 분석 - Google Patents

이벤트들-기반 시각 센서를 이용한 저-전력 상시-온 얼굴 검출, 추적, 인식 및/또는 분석 Download PDF

Info

Publication number
KR102474008B1
KR102474008B1 KR1020177008531A KR20177008531A KR102474008B1 KR 102474008 B1 KR102474008 B1 KR 102474008B1 KR 1020177008531 A KR1020177008531 A KR 1020177008531A KR 20177008531 A KR20177008531 A KR 20177008531A KR 102474008 B1 KR102474008 B1 KR 102474008B1
Authority
KR
South Korea
Prior art keywords
sensor
hardware
processing unit
power
computer vision
Prior art date
Application number
KR1020177008531A
Other languages
English (en)
Other versions
KR20170063643A (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 KR1020227042166A priority Critical patent/KR102633876B1/ko
Publication of KR20170063643A publication Critical patent/KR20170063643A/ko
Application granted granted Critical
Publication of KR102474008B1 publication Critical patent/KR102474008B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/94Hardware or software architectures specially adapted for image or video understanding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/94Hardware or software architectures specially adapted for image or video understanding
    • G06V10/955Hardware or software architectures specially adapted for image or video understanding using specific electronic processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/166Detection; Localisation; Normalisation using acquisition arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/23Recognition of whole body movements, e.g. for sport training
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/28Recognition of hand or arm movements, e.g. recognition of deaf sign language
    • 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/61Control of cameras or camera modules based on recognised objects
    • 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/61Control of cameras or camera modules based on recognised objects
    • H04N23/611Control of cameras or camera modules based on recognised objects where the recognised objects include parts of the human body
    • 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/65Control of camera operation in relation to power supply
    • H04N23/651Control of camera operation in relation to power supply for reducing power consumption by affecting camera operations, e.g. sleep mode, hibernation mode or power off of selective parts of the camera
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/70Circuitry for compensating brightness variation in the scene
    • H04N23/741Circuitry for compensating brightness variation in the scene by increasing the dynamic range of the image compared to the dynamic range of the electronic image sensors
    • H04N5/23219
    • H04N5/23241
    • H04N5/2355
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/183Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a single remote source
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/467Encoded features or binary features, e.g. local binary patterns [LBP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Social Psychology (AREA)
  • Psychiatry (AREA)
  • Data Mining & Analysis (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Evolutionary Computation (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Artificial Intelligence (AREA)
  • Image Analysis (AREA)
  • Studio Devices (AREA)
  • Image Processing (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Geophysics And Detection Of Objects (AREA)
  • Burglar Alarm Systems (AREA)

Abstract

본원에서 개시된 기법들은 카메라의 뷰에서 대상자들, 객체들, 및 장면들을 검출하고, 추적하고, 인식하고, 및/또는 분석하는 목적들을 위하여, 특수-목적 카메라를 전용 컴퓨터 시각 (CV) 연산 하드웨어 및 전용 저-전력 마이크로프로세서와 통합하는 시각 센서를 사용한다. 시각 센서는 포함된 저-전력 마이크로프로세서를 이용하여 카메라로부터 취출된 정보를 프로세싱하고, 필요할 때에만, 또는 애플리케이션에 의해 정의되고 구성된 바와 같이, 주 프로세서에 대한 "이벤트들" (또는 하나 이상의 기준 발생들이 발생하였다는 표시들, 및 가능하게는, 연관된 데이터) 을 전송한다. 이것은 (다양한 애플리케이션들을 지원하기 위하여 전형적으로 상대적으로 고속 및 고-전력인) 범용 마이크로프로세서가 기존과 같이 대부분의 시간에 저-전력 (예컨대, 슬립 모드) 으로 유지되는 반면, 이벤트들이 시각 센서로부터 수신될 때에만 활성으로 되는 것을 허용한다.

Description

이벤트들-기반 시각 센서를 이용한 저-전력 상시-온 얼굴 검출, 추적, 인식 및/또는 분석{LOW-POWER ALWAYS-ON FACE DETECTION, TRACKING, RECOGNITION AND/OR ANALYSIS USING EVENTS-BASED VISION SENSOR}
인간-컴퓨터 상호작용은 언어 (타이핑, 음성 인식, 온-스크린 (on-screen) 텍스트 디스플레이, 스피치 합성 등등) 및 시각 (스틸 및 비디오 카메라들, 그래픽 디스플레이들 등등) 을 포함하는 다수의 양상들을 이용한다. 얼굴 검출, 인식, 표정들 등등은 인간-대-인간 (human-to-human) 통신의 중요한 일부를 형성하고, 이것에 의해, 마찬가지로 인간-기계 상호작용을 위하여 중요하다. 감정 검출, 성별 분류, 독순술 (lip reading), 시선/응시 추적 등을 포함하는, 스틸 이미지들 및 비디오들에서의 얼굴 (들) 의 검출, 추적, 인식을 위하여 이용가능한 많은 방법들 및 애플리케이션들이 있다.
얼굴 또는 일반적인 객체 검출 및 추적을 위한 전통적인 시스템들은 고속 (high-speed), 전력-과다요구 (power-hungry) 마이크로프로세서들, 많은 수들의 피연산자 (operand) 들을 이동시키기 위한 데이터 경로 대역폭의 높은-소비, 및 메모리의 과다 사용을 요구하는 컴퓨팅-집약적 (computing-intensive) 알고리즘들을 이용한다. 이 시스템들은 전형적으로, 스틸/비디오 카메라 캡처와, 이미지들을 분석하거나, 스크린 상에 얻어진 이미지들을 디스플레이하거나, 또는 그렇지 않을 경우에, 이와 같이 취출 (retrieve) 된 장면-정보에 기초하여 작동하는 범용 마이크로프로세서로의 강도-기반 이미지 (intensity-based image) 들의 전달을 이용한다. 기존의 시스템들의 높은 전력 소비를 고려해 볼 때, 얼굴 또는 일반적인 객체 검출을 위한 이용-케이스들 및 애플리케이션들은 상당히 제한되었다. 예를 들어, 카메라 및 프로세서 서브-시스템은 휴대용, 배터리-급전 디바이스들을 위한 대부분의 시간 동안에 턴 온 (turn on) 된 채로 유지될 수 없다.
본원에서 개시된 기법들은 카메라의 뷰 (view) 에서 대상자들, 객체들, 및 장면들을 검출하고, 추적하고, 인식하고, 및/또는 분석하는 목적들을 위하여, 특수-목적 카메라를 전용 컴퓨터 시각 (computer vision; CV) 연산 하드웨어 및 전용 저-전력 (low-power) 마이크로프로세서와 통합하는 시각 센서를 사용한다. 시각 센서는 포함된 저-전력 마이크로프로세서를 이용하여 카메라로부터 취출된 정보를 프로세싱하고, 필요할 때에만, 또는 애플리케이션에 의해 정의되고 구성된 바와 같이, 주 프로세서에 대한 "이벤트들" (또는 하나 이상의 기준 발생들이 발생하였다는 표시들) 을 전송한다. 이것은 (다양한 애플리케이션들을 지원하기 위하여 전형적으로 상대적으로 고속 및 고-전력 (high-power) 인) 범용 마이크로프로세서가 기존과 같이 대부분의 시간에 저-전력 (예컨대, 슬립 모드 (sleep mode)) 으로 유지되는 반면, 이벤트들이 시각 센서로부터 취출될 때에만 활성으로 되는 것을 허용한다.
설명에 따르면, 동적 장면-기반 발생들을 감지하기 위한 스마트 센서는 하나를 초과하는 센서 픽셀을 포함하고 센서 어레이의 이웃하는 센서 픽셀들로부터의 판독들을 이용하여 하나 이상의 CV 특징들을 컴퓨팅할 수 있는 센서 어레이로부터 센서 데이터를 수신하도록 구성된 전용 컴퓨터 시각 (CV) 연산 하드웨어, 및 전용 CV 연산 하드웨어와 통신가능하게 결합되고 하나 이상의 컴퓨팅된 CV 특징들에 기초한 동작들로부터 기인하는 신호들을 프로세싱하도록 구성된 제 1 프로세싱 유닛을 포함할 수 있다. 스마트 센서는 제 1 프로세싱 유닛에 의한 하나 이상의 컴퓨팅된 CV 특징들에 기초한 동작들로부터 기인하는 신호들의 프로세싱에 응답하여, 제 2 프로세싱 유닛에 의해 수신되어야 할 이벤트를 생성하도록 구성될 수 있고, 이벤트는 제 2 프로세싱 유닛에 대한 기준 발생을 표시할 수 있다.
스마트 센서는 다음의 특징들 중의 하나 이상을 포함할 수 있다. 기준 발생은 인간 얼굴의 뷰 등장 (coming into view), 인간 신체의 뷰 등장, 인간 얼굴 상에 표현된 감정, 비-인간 (non-human) 동물 얼굴의 뷰 등장, 비-인간 동물 신체의 뷰 등장, 인간 손의 뷰 등장, 손 제스처, 기준 객체의 뷰 등장, 실내 환경으로부터 실외 환경으로의 변경, 기준 이동, 추락을 표시하는 장면에서의 급속한 이동, 충돌의 위험을 표시하는 객체를 향한 모션, 위험을 표시하는 장면에서의 이동 또는 객체들, 또는 그 임의의 조합 중의 하나 이상일 수 있다. 이벤트는 얼굴 검출을 포함할 수도 있다. 전용 CV 연산 하드웨어는 로컬 2 진 패턴 (Local Binary Pattern; LBP) 들을 제공하도록 구성될 수도 있다. 스마트 센서는 전용 CV 연산 하드웨어에 결합된, 센서 데이터의 서브세트에서 기준 객체의 존재를 검출하도록 구성된 캐스케이드 분류기 하드웨어 (cascade classifier hardware) 를 포함할 수도 있다. 하나 이상의 컴퓨팅된 CV 특징들에 기초한 동작들은 캐스케이드 분류기 하드웨어에 의해 수행된 동작들을 포함할 수도 있고, 기준 발생은 기준 객체와 연관될 수도 있다. 제 1 프로세싱 유닛은 기준 객체의 존재가 캐스케이드 분류기 하드웨어에 의해 검출될 때, 기준 객체의 존재의 캐스케이드 분류기 하드웨어로부터의 표시를 수신하도록 구성될 수도 있다. 전용 CV 연산 하드웨어는 센서 어레이로부터 원시 센서 데이터 (raw sensor data) 를 수신하도록 구성될 수도 있고, 이미지 신호 프로세싱 회로부는 센서 어레이와 전용 CV 연산 하드웨어 사이에 배치되지 않는다. 전용 CV 연산 하드웨어는 집적 회로를 포함할 수도 있다. 스마트 센서는 주변 광 감지, 근접성 검출, 기준 객체로의 근접성, 모션 검출, 또는 그 임의의 조합을 표시하는 적어도 하나의 더욱 저-전력 광학 센서 판독을 생성하기 위하여 전용 CV 연산 하드웨어의 적어도 일부를 디스에이블 (disable) 하도록 구성될 수도 있다. 스마트 센서는 적어도 하나의 더욱 저-전력 (lower-power) 광학 센서 판독에 기초하여 기준 발생을 생성할 수도 있다. 스마트 센서는 더욱 저-전력 모드에서 동작하면서 전용 CV 연산 하드웨어의 적어도 일부를 디스에이블하고, 더욱 저-전력 모드에서 장면 변경을 검출하고, 장면 변경의 검출에 기초하여 전용 CV 연산 하드웨어를 활성화하도록 구성될 수도 있다. 이벤트는 제 2 프로세싱 유닛에 대한 기준 발생을 표시할 수도 있고, 기준 발생과 연관된 데이터를 더 포함한다. 스마트 센서는 더욱 고-전력 동작이 더욱 저-전력 동작보다 더 많은 전력을 소비한다는 것을 포함하는, 더욱 고-전력 (higher-power) 동작을 하나 이상의 컴퓨팅된 CV 특징들에 기초한 동작들의 적어도 일부로서 수행하고, 이벤트에 기초하여 더욱 저-전력 동작에 대한 파라미터를 제공하도록 구성될 수도 있다. 스마트 센서는 더욱 저-전력 동작이 더욱 고-전력 동작보다 더 적은 전력을 소비한다는 것을 포함하는, 더욱 저-전력 동작을 하나 이상의 컴퓨팅된 CV 특징들에 기초한 동작들의 적어도 일부로서 수행하고, 더욱 고-전력 동작에 대한 센서 판독을 제공하도록 구성될 수도 있다.
설명에 따르면, 얼굴 검출 이벤트들을 결정하기 위한 일 예의 장치는 하나를 초과하는 센서 픽셀을 포함하는 센서 어레이, 센서 어레이로부터 센서 데이터를 수신할 수 있고 센서 어레이의 이웃하는 센서 픽셀들로부터의 판독들을 이용하여 CV 특징들을 컴퓨팅할 수 있는 전용 컴퓨터 시각 (CV) 연산 하드웨어, 및 전용 CV 연산 하드웨어와 통신가능하게 결합되고, 하나 이상의 컴퓨팅된 CV 특징들에 기초한 동작들로부터 기인하는 하나 이상의 신호들로부터, 얼굴이 검출된 것으로 결정하고, 결정에 응답하여, 제 2 프로세싱 유닛에 의해 수신되어야 할 얼굴-검출된 이벤트를 생성하도록 구성된 제 1 프로세싱 유닛을 포함할 수도 있다.
장치는 다음의 특징들 중의 하나 이상을 포함할 수 있다. 장치는 제 2 프로세싱 유닛을 포함할 수도 있고, 여기서, 제 1 프로세싱 유닛은 제 2 프로세싱 유닛이 저-전력 모드에서 동작하고 있는 동안에, 얼굴-검출된 이벤트를 제 2 프로세싱 유닛으로 통신하도록 구성된다. 전용 CV 연산 하드웨어는 센서 어레이로부터 원시 센서 데이터를 수신하도록 구성될 수도 있고, 이미지 신호 프로세싱 회로부는 센서 어레이와 전용 CV 연산 하드웨어 사이에 배치되지 않는다. 장치는 타이밍 동작, 포커싱 동작, 자동-노출 정정 동작, 객체 검출, 객체 인식, 스캐닝 윈도우의 저장, 이벤트-큐잉 (event-queuing) 및/또는 프로세싱 동작, 아날로그 프로세싱, 아날로그-대-디지털 변환, 적분 동작 (integration operation), CV 특징 연산, 캐스케이드-분류기-기반 분류, 히스토그램-기반 분류, 또는 메모리 버퍼링, 또는 그 임의의 조합 중의 적어도 하나를 제공하도록 구성된 주변 회로부를 포함할 수도 있다. 장치는 제 2 프로세싱 유닛을 포함할 수도 있고, 제 1 프로세싱 유닛은 제 2 프로세싱 유닛이 저-전력 모드에서 동작하고 있는 동안에, 얼굴-검출된 이벤트를 제 2 프로세싱 유닛으로 통신하도록 추가로 구성될 수도 있다.
설명에 따르면, 장치로 동적 장면-기반 발생들을 감지하기 위한 방법은 전용 컴퓨터 시각 (CV) 연산 하드웨어로, 하나를 초과하는 센서 픽셀을 포함하는 센서 어레이로부터 센서 데이터를 수신하는 단계, 전용 CV 연산 하드웨어로, 센서 어레이의 이웃하는 센서 픽셀들로부터의 판독들을 이용하여 하나 이상의 CV 특징들을 컴퓨팅하는 단계, 제 1 프로세싱 유닛으로, 하나 이상의 컴퓨팅된 CV 특징들에 기초한 동작들로부터 기인하는 신호들을 프로세싱하는 단계, 및 제 1 프로세싱 유닛에 의한 하나 이상의 컴퓨팅된 CV 특징들에 기초한 동작들로부터 기인하는 신호들의 프로세싱에 응답하여, 제 2 프로세싱 유닛에 의해 수신되어야 할 이벤트를 생성하는 단계로서, 이벤트는 제 2 프로세싱 유닛에 대한 기준 발생을 표시하는, 상기 생성하는 단계를 포함할 수도 있다.
방법은 다음 특징들 중의 하나 이상을 더 포함할 수도 있다. 기준 발생은 인간 얼굴의 뷰 등장, 인간 신체의 뷰 등장, 인간 얼굴 상에 표현된 감정, 비-인간 동물 얼굴의 뷰 등장, 비-인간 동물 신체의 뷰 등장, 인간 손의 뷰 등장, 손 제스처, 기준 객체의 뷰 등장, 실내 환경으로부터 실외 환경으로의 변경, 기준 이동, 추락을 표시하는 장면에서의 급속한 이동, 충돌의 위험을 표시하는 객체를 향한 모션, 위험을 표시하는 장면에서의 이동 또는 객체들, 또는 그 임의의 조합 중의 하나 이상일 수도 있다. 방법은 전용 CV 연산 하드웨어로, 로컬 2 진 패턴 (LBP) 들을 제공하는 단계를 포함할 수도 있다. 방법은 캐스케이드 분류기 하드웨어로, 센서 데이터의 서브세트에서 기준 객체의 존재를 검출하는 단계를 포함할 수도 있고, 하나 이상의 컴퓨팅된 CV 특징들에 기초한 동작들은 캐스케이드 분류기 하드웨어에 의해 수행된 동작들을 포함하고, 기준 발생은 기준 객체와 연관된다. 방법은 제 1 프로세싱 유닛에 의해, 기준 객체의 존재가 캐스케이드 분류기 하드웨어에 의해 검출될 때, 기준 객체의 존재의 캐스케이드 분류기 하드웨어로부터의 표시를 수신하는 단계를 포함할 수도 있다. 방법은 주변 광 감지, 근접성 검출, 기준 객체로의 근접성, 모션 검출, 또는 그 임의의 조합을 표시하는 적어도 하나의 더욱 저-전력 광학 센서 판독을 생성하기 위하여 전용 CV 연산 하드웨어의 적어도 일부를 디스에이블하는 단계를 포함할 수도 있다. 방법은 적어도 하나의 더욱 저-전력 광학 센서 판독에 기초하여 기준 발생을 검출하는 단계를 더 포함할 수도 있다. 방법은 더욱 저-전력 모드에서 동작하면서 전용 CV 연산 하드웨어의 적어도 일부를 디스에이블하는 단계, 더욱 저-전력 모드에서 동작하면서 장면 변경을 검출하는 단계, 및 장면 변경의 검출에 기초하여 전용 CV 연산 하드웨어의 디스에이블된 적어도 일부를 활성화하는 단계를 더 포함할 수도 있다. 전용 CV 연산 하드웨어로, 센서 어레이로부터 센서 데이터를 수신하는 단계는, 센서 어레이로부터 원시 센서 데이터를 수신하는 단계를 포함하고, 여기서, 이미지 신호 프로세싱은 수신하는 단계 이전에 센서 데이터에 대해 수행되지 않는다.
설명에 따르면, 얼굴 검출 이벤트들을 결정하기 위한 방법은 전용 컴퓨터 시각 (CV) 연산 하드웨어로, 센서 어레이로부터 센서 데이터를 수신하는 단계, 센서 어레이의 이웃하는 센서 픽셀들로부터의 판독들을 이용하여 하나 이상의 CV 특징들을 컴퓨팅하는 단계, 및 하나 이상의 컴퓨팅된 CV 특징들에 기초한 동작들로부터 기인하는 하나 이상의 신호들로부터, 얼굴이 검출된 것으로 결정하고, 결정에 응답하여, 제 2 프로세싱 유닛에 의해 수신되어야 할 얼굴-검출된 이벤트를 생성하기 위하여 제 1 프로세싱 유닛을 이용하는 단계를 포함할 수도 있다. 전용 CV 연산 하드웨어로, 센서 어레이로부터 센서 데이터를 수신하는 단계는, 센서 어레이로부터 원시 센서 데이터를 수신하는 단계를 포함할 수도 있고, 여기서, 이미지 신호 프로세싱은 수신하는 단계 이전에 센서 데이터에 대해 수행되지 않는다.
다양한 실시형태들의 본질 및 장점들의 이해는 다음의 도면들을 참조하여 인식될 수도 있다.
도 1 은 사용자가 본원에서 설명된 특징들 및 기법들을 포함하는 이동 디바이스와 상호작용하고 있을 수도 있는 일 예의 설정을 예시한다.
도 2a 는 하나의 실시형태에 따라, 센서 시스템 및 주 프로세서를 포함하는 구성의 블록도이다.
도 2b 는 하나의 실시형태에 따라, 센서 어레이 유닛, 마이크로프로세서, 및 일 예의 주변 회로부 (214) 를 갖는 센서 시스템의 블록도이다.
도 3a 내지 도 3c 는 일부 실시형태들에 따라, 센서 시스템의 컴포넌트들이 저-전력 센서 프로세싱을 제공하기 위하여 어떻게 사용될 수 있는지를 예시하는 블록도들이다.
도 4 는 실시형태에 따라, 동적 장면-기반 발생들을 감지하는 방법의 흐름도이다.
도 5 는 일 예의 센서 어레이의 간략화된 예시도이다.
도 6 은 도 5 의 센서 어레이의 일 예의 구성들의 간략화된 예시도이다.
도 7 내지 도 9 는 컴퓨터 시각 연산들 더욱 저-전력 광학 센서 판독들을 위한 센서 시스템을 이용하기 위한 일 예의 방법들을 예시하는 흐름도들이다.
도 10a 내지 도 10b 는 컴퓨터 시각 연산들 및 더욱 저-전력 광학 센서 판독들을 위한 센서 시스템의 일 예의 상태들을 예시하는 상태도들이다.
도 11a 내지 도 11c 는 일부 실시형태들에 따라, 복수의 센서 엘리먼트들로부터의 센서 판독들을 CV 특징들로 변환하는 프로세스를 예시한다.
도 12 는 본원에서 설명된 기법들 및 특징들을 사용할 수 있는 이동 디바이스의 실시형태의 블록도이다.
뒤따르는 설명은 실시형태 (들) 를 오직 제공하고, 개시물의 범위, 적용가능성, 또는 구성을 제한하도록 의도된 것이 아니다. 오히려, 실시형태 (들) 의 뒤따르는 설명은 당해 분야의 당업자들에게 실시형태를 구현하기 위한 가능한 설명을 제공할 것이다. 개시물의 범위로부터 이탈하지 않으면서, 엘리먼트들의 기능 및 배열에서 다양한 변경들이 행해질 수도 있다는 것이 이해된다.
도 1 은 사용자 (130) 가 본원에서 설명된 특징들 및 기법들을 포함하는 이동 디바이스 (105) 와 상호작용하고 있을 수도 있는 일 예의 설정 (100) 을 예시한다. 여기서, 사용자 (130) 는 적어도 부분적으로, 이하의 본원에서 설명된 바와 같은 특수-목적 카메라, 전용 컴퓨터 시각 (CV) 연산 하드웨어, 및 전용 저-전력 마이크로프로세서를 가지는 센서 시스템을 통해 이동 디바이스 (105) 와 상호작용할 수도 있다. 이 특징들은 이동 디바이스 (105) 가 카메라의 시야 (field of view; 105) 내의 (사용자 (130) 와 같은) 대상자 및 다른 객체들 및 장면들을 검출하고, 추적하고, 인식하고, 및/또는 분석하는 것을 가능하게 한다. 센서 시스템은 포함된 내장형 프로세서를 이용하여 카메라로부터 취출된 정보를 프로세싱하고, 필요할 때에만, 또는 애플리케이션에 의해 정의되고 구성된 바와 같이, 주 프로세서에 대한 "이벤트들" (또는 하나 이상의 기준 발생들이 발생하였다는 표시들) 을 전송한다. 이것은 (다양한 애플리케이션들을 지원하기 위하여 전형적으로 상대적으로 고속 및 고-전력 (high-power) 인) 범용 마이크로프로세서가 기존과 같이 대부분의 시간에 저-전력 (예컨대, 슬립 모드 (sleep mode)) 으로 유지되는 반면, 이벤트들이 센서 시스템으로부터 수신될 때에만 활성으로 되는 것을 허용한다. 이동 디바이스 (105) 를 참조하여 예시되고 설명되었지만, 객체 검출, 인식 등을 수행할 수 있는 스마트 센서는 사물 인터넷 (internet of things; IoT) 애플리케이션들을 포함하는 다양한 애플리케이션들에서 유용할 수 있다는 것이 이해된다.
본원에서 설명된 바와 같이, 전용 CV 연산 하드웨어는 적어도 부분적으로, 이웃하는 센서 엘리먼트들과 연관된 신호들에 기초하여, 센서 어레이 유닛에서의 각각의 센서 엘리먼트 또는 픽셀에 대한 CV 특징들 또는 국소화된 CV 특징들을 컴퓨팅하거나 컴퓨팅할 수 있다. (본원에서, 용어 "로컬 (local)" 또는 "국소화된 (localized)" 은 전체 이미지의 통계적 또는 다른 수학적 평가가 아니라, 하나 이상의 이웃하는 센서 엘리먼트들에 기초하여 컴퓨팅된 특징들을 지칭한다.) 본원에서 설명된 바와 같이, 대상 센서 엘리먼트 및 대상 센서 엘리먼트에 상대적으로 근접한 다른 센서 엘리먼트들을 포함하는 센서 엘리먼트들은 이웃하는 센서 엘리먼트들로서 지칭될 수도 있다. 개시물의 어떤 양태들에서, 이웃하는 센서 엘리먼트들은 대상 센서 엘리먼트 및 대상 센서 엘리먼트에 바로 인접하는 센서 엘리먼트들을 포함할 수도 있다. 개시물의 어떤 다른 양태들에서, 이웃하는 센서 엘리먼트들은 또한, 바로 인접한 것이 아니라, 대상 센서 엘리먼트에 상대적으로 근접한 센서 엘리먼트들을 포함할 수도 있다. 예를 들어, 어떤 사례들에서, 대상 센서 엘리먼트로부터의 3 개의 센서 엘리먼트들 내의 센서 엘리먼트들은 다수의 센서들의 폭 또는 높이가 64 개의 센서 엘리먼트들일 때, 이웃하는 센서 엘리먼트들로 여전히 고려될 수도 있다.
본원에서 설명된 바와 같이, CV 특징들 또는 국소화된 CV 특징들은 각각의 센서 엘리먼트 또는 센서의 픽셀과 연관된 라벨 (label) 들과 같은, 로우 레벨 (low level) 컴퓨터 시각 마커들 또는 표시자들을 검출하는 것을 지칭할 수도 있다. 이하에서 더욱 상세하게 표시된 바와 같이, 이러한 CV 특징들은 부호부여된 그래디언트들의 히스토그램 (Histogram of Signed Gradients; HSG) 및/또는 로컬 2 진 패턴 (LBP) 과 같은 출력들을 포함할 수 있다. LBP 계산은 이웃하는 센서 엘리먼트들, 예를 들어, 기준 또는 대상 센서 픽셀 및 그 8 개의 바로-인접한 이웃하는 센서 픽셀들에 기초할 수 있다. LBP 계산은 강도 (intensity) 에 있어서의 그 개개의 차이에 기초하여 기준 픽셀의 바로-인접한 이웃하는 픽셀들의 각각을 점수부여 (score) 할 수도 있다. (컬러는 상이한 컬러 채널들 (예컨대, 적색, 청색, 및 녹색) 에 대한 상이한 LBP 들을 이용하여 처리될 것이다.) HSG 계산은 또한, 장면 내의 다양한 특징들을 검출하기 위하여 이웃하는 센서 엘리먼트들, 예를 들어, 기준 픽셀 및 하나 이상의 바로-인접한 이웃하는 픽셀들을 채용한다.
예를 들어, 도 1 의 설정 (100) 에서, 사용자 (130) 는 이동 디바이스의 범용 마이크로프로세서가 슬립 모드에 있는 동안에, 이동 디바이스 (105) 를 픽업 (pick up) 하였을 수도 있다. 그러나, 이동 디바이스 (105) 의 센서 시스템은 활성으로 유지될 수도 있고, 예를 들어, 사용자 (130) 의 얼굴, 손 제스처, 장면에서의 다른 객체들 및/또는 등등을 인식할 수 있을 수도 있다. 어떤 기준 발생이 발생하였다는 것을 인식할 시에 - 이 경우, 사용자 (130) 의 특정 얼굴 특징들은 센서 시스템의 시야 (110) 내에 있음 -, 센서 시스템은 사용자 (130) 의 얼굴 특징들이 인식되었다는 것을 표시하고 및/또는 이동 디바이스의 범용 마이크로프로세서로 하여금, 저-전력 모드를 탈출하고 완전히 활성으로 되게 하는 이벤트를 이동 디바이스의 범용 마이크로프로세서로 전송할 수 있다.
센서 시스템으로 하여금, 이벤트를 이동 디바이스의 범용 마이크로프로세서로 전송하게 하는 기준 발생들은 희망하는 기능성에 따라서는, 다양한 CV-검출가능한 발생들 중의 임의의 것을 포함할 수 있다. 이 발생들은 예를 들어, 얼굴 및/또는 객체 검출, 얼굴 및/또는 객체 인식, 제스처 인식, 및/또는 등등을 포함할 수도 있다. 일부 실시형태들에서, 하나 이상의 기준 발생들은 사용자 (130) 에 의해 구성가능할 수도 있다. 기준 발생들의 추가적인 예들은 이하의 본원에서 제공된다.
특수-목적 카메라가 센서 시스템에 전용되므로, 그것은 사진들을 찍거나 비디오들을 촬영하기 위하여 주로 의도되지 않을 수도 있다. 그러므로, 특수-목적 카메라는 강도-기반 이미지들을 산출하지 않을 수도 있다. 그 대신에, 특수-목적 카메라는 특수-목적 카메라의 이웃하는 센서 픽셀들로부터의 판독들이 상기 특징들의 저-전력 하드웨어-기반 연산을 위하여 CV 특징들을 컴퓨팅하기 위하여 이용되는 LBP 들, 그래디언트들, 에지 (Edge) 들, HSG 들, 및/또는 다른 동작들과 같은 픽셀-레벨 컴퓨터 시각 특징 연산들을 포함할 수도 있다.
그렇지만, 특수-목적 카메라를 포함하는 센서 시스템이 이용될 수도 있더라도, 실시형태들은 그렇게 제한되지는 않는다. 더욱 대략적으로, 센서 시스템은 화학적, 시각적, 청각적, 생물학적, 기계적, 및/또는 다른 타입들의 입력을 감지하기 위한 센서 셀들을 포함하는 센서 어레이 유닛을 포함할 수 있다.
추가적으로, 도 1 및 다른 실시형태들은 이동 디바이스 내에 포함되는 센서 시스템을 설명하지만, 실시형태들은 그렇게 제한되지는 않는다. 본원에서 설명된 기법들 및 특징들에 의해 야기된 전력 절감들은 이동 전화들, 태블릿들, 랩톱들, 휴대용 미디어 플레이어들, 및/또는 등등과 같은 이동 디바이스들에 대한 특정한 장점을 가질 수 있지만, 텔레비전들, 데스크톱 컴퓨터들, 및/또는 일반적으로 이동식으로 고려되지 않을 수도 있는 다른 디바이스들과 같은 다른 디바이스들은 본원에서 설명된 특징들 및 기법들을 사용할 수도 있다.
도 2a 는 하나의 실시형태에 따라, (또한, "스마트 센서" 로서 본원에서 지칭된) 센서 시스템 (210) 이 주 프로세서 (220) 가 저-전력 (예컨대, "슬립" 또는 "대기 (stand-by)") 모드에서 동작하고 있을 수 있는 동안에 어떻게 하이-레벨 감지 동작들을 가능하게 하도록 구성될 수 있는지를 예시하는 블록도이다. 도 2a 의 컴포넌트들은 더 큰 전자 디바이스들 내로 포함될 수 있다. 센서 시스템 (210) 이 포함될 수도 있는 이동 디바이스의 예는 도 5 에 관하여 이하에서 설명된다.
또한, 대안적인 실시형태들은 도 2a 에서 도시된 컴포넌트들로부터 변동될 수도 있다는 것이 이해될 것이다. 예를 들어, 이하에서 설명된 바와 같이, 센서 시스템 (210) 의 실시형태들은 주변 회로부 (214), 마이크로프로세서 (216), 및/또는 메모리 (218) 를 포함할 수도 있거나 포함하지 않을 수도 있다. 추가적으로 또는 대안적으로, 실시형태들은 희망하는 기능성에 따라서는, 도 2a 의 컴포넌트들을 조합할 수도 있고, 분리할 수도 있고, 추가할 수도 있고, 생략할 수도 있고, 및/또는 재배열할 수도 있다. 예를 들어, 센서 시스템 (210) 이 센서 어레이 (예컨대, 픽셀 어레이 또는 카메라) 를 포함할 경우, 일부 광학기기들은 그것이 센서 어레이에 도달하기 전에 입력 (예컨대, 광) 을 조작하기 위하여 사용될 수도 있다. 본원에서의 실시형태들은 "이미지 어레이" 의 이용을 설명하지만, 실시형태들은 그렇게 제한되지는 않고, 더욱 대략적으로, 반드시 이미지를 생성하거나 캡처하지 않는 센서 어레이를 사용할 수도 있다. (이하에서 더욱 상세하게 설명된 도 2b 는 하나의 실시형태에 따라, 센서 어레이 유닛 (212), 마이크로프로세서 (216), 및 일 예의 주변 회로부 (214) 를 갖는 센서 시스템 (210) 을 예시한다.)
도 2a 에서 예시된 바와 같이, 입력을 수신하는 센서 시스템 (210) 은 센서 어레이 유닛 (212), 주변 회로부 (214), 마이크로프로세서 (216), 및/또는 메모리 (218) 를 포함할 수 있다. 전자 센서는, 질의 (query) 들을 센서 시스템 (210) 에 제공할 수 있고 센서 시스템 (210) 으로부터 이벤트들 및/또는 다른 트리거들을 수신할 수 있는, (이동 전화의 애플리케이션 프로세서와 같은) 전자 디바이스의 주 프로세서 (220) 와의 유선 또는 무선 접속의 어느 하나를 통해 통신가능하게 결합될 수 있다. 일부 실시형태들에서, "주 프로세서" (220) 는 마이크로프로세서 (216) 보다 더 큰, 예를 들어, 프로세싱 파워 (processing power) 에 있어서 더 크고 및/또는 전기적 전력 이용에 있어서 더 큰 프로세싱 유닛에 간단하게 대응할 수도 있다. 일부 구현예들에서, 마이크로프로세서 (216) 는 전용 마이크로프로세서 또는 제 1 프로세싱 유닛에 대응할 수 있고, 제 2 프로세싱 유닛에 대응할 수 있는 주 프로세서 (220) 보다 더 적은 전력을 소비하도록 구성될 수 있다.
사용된 센서 어레이 유닛 (212) 의 타입은 전자 센서의 희망하는 기능성에 따라 변동될 수 있다. 이전에 표시된 바와 같이, 센서 어레이 유닛 (212) 은 화학적, 시각적, 청각적, 기계적, 및/또는 다른 타입들의 입력을 감지하기 위한 센서 셀들의 어레이 (예컨대, 1 차원 또는 2 차원 어레이) 를 포함할 수 있다. 예를 들어, 센서 어레이 유닛 (212) 은 카메라 센서 또는 다른 시각 및/또는, 복수의 센서 셀들이 픽셀들의 그리드 (grid) 를 형성하는 센서 어레이를 포함할 수 있다.
일부 실시형태들에서, 센서 어레이 유닛 (212) 은, 센서 셀들의 하나 이상의 출력들에 대한 동작들이 수행될 수도 있는 일부 추가적인 메모리 및/또는 로직 회로부를 포함하는 "스마트" 어레이를 포함할 수도 있다. 일부 실시형태들에서, 센서 어레이에서의 각각의 센서 픽셀은, (이하에서 더욱 상세하게 논의된) 주변 회로부 (214) 의 일부일 수도 있거나 일부가 아닐 수도 있는 메모리 및/또는 로직 회로부와 결합될 수도 있다. 센서 어레이 유닛 (212) 및/또는 주변 회로부의 출력은 센서 셀들의 원시 센서 판독들에 추가하여, 또는 원시 센서 판독들에 대한 대안으로서 출력들을 포함할 수도 있다. 예를 들어, 일부 실시형태들에서, 센서 어레이 유닛 (212) 및/또는 주변 회로부는 하나를 초과하는 센서 픽셀을 포함하는 센서 어레이 유닛 (212) 의 센서 어레이로부터 이미지 데이터를 수신하도록 구성된 전용 CV 연산 하드웨어를 포함할 수 있다. 그 다음으로, CV 특징들은 센서 어레이의 이웃하는 센서 픽셀들로부터의 판독들을 이용하여 전용 CV 연산 하드웨어에 의해 컴퓨팅될 수 있거나 추출될 수 있어서, 컴퓨팅된 HSG 및/또는 LBP 특징, 라벨, 또는 디스크립터 (descriptor) 와 같은 출력들을 제공할 수 있다. 일부 실시형태들에서는, 이미지 신호 프로세싱 회로부가 센서 어레이 유닛 (212) 과 전용 CV 연산 하드웨어 사이에 배치되지 않을 수도 있다. 다시 말해서, 전용 CV 연산 하드웨어는 임의의 이미지 신호 프로세싱이 원시 센서 데이터에 대해 수행되기 전에, 센서 어레이 유닛 (212) 으로부터 원시 센서 데이터를 수신할 수도 있다. 다른 CV 연산들은 또한, 에지 검출, 코너 검출, 스케일-불변 특징 변환 (scale-invariant feature transform) (또는 SIFT), 속도 증대된 강인한 특징들 (speeded up robust features; SURF), 배향된 그래디언트들의 히스토그램 (histogram of oriented gradients; HOG), 로컬 3 진 패턴들 (local ternary patterns; LTP) 등뿐만 아니라, 상기 중의 임의의 것의 확장들에 기초하여 가능하다.
센서 어레이 유닛 (212) 의 동기성 (또는 비동기성) 은 또한, 희망하는 기능성에 종속될 수도 있다. 일부 실시형태들에서, 예를 들어, 센서 어레이 유닛 (212) 은 어떤 타이밍 요건들에 기초하여 각각의 픽셀의 주기적인 샘플링을 제공하도록 타이밍이 정해진 판독 회로부를 갖는 전통적인 (즉, "프레임-기반") 카메라를 포함할 수도 있다. 일부 실시형태들에서, 센서 어레이 유닛 (212) 은, 특정한 샘플링 레이트를 고수하는 것이 아니라 (또는 고수하는 것에 추가하여), 센서 판독 또는 다른 출력이 어떤 임계치에 도달하고 및/또는 어떤 임계치만큼 변경될 때, 센서 출력이 결정될 수도 있는 이벤트-구동식 어레이 (event-driven array) 를 포함할 수도 있다. "스마트" 어레이에 대하여, 위에서 논의된 바와 같이, 센서 판독 또는 다른 출력은 추가적인 메모리 및/또는 로직의 출력 (예컨대, 스마트 센서 어레이로부터의 HSG 또는 LBP 출력) 을 포함할 수 있다. 하나의 실시형태에서, 스마트 센서 어레이는, 값이 임계치 양만큼 이전의 값으로부터 변경될 때, 스마트 센서 어레이에서의 각각의 픽셀에 대하여, 픽셀 값이 비동기 방식으로 출력되는 동적 시각 센서 (dynamic vision sensor; DVS) 를 포함할 수 있다. 일부 구현예들에서, 센서 어레이 유닛 (212) 은, 주어진 프레임 레이트에서 값을 판독하지만, 이전의 판독 이후로 변경되었던 어레이에서의 엘리먼트들에 대한 값들을 오직 판독함으로써 전력을 절감하는 하이브리드 프레임-이벤트-구동식 어레이 (hybrid frame-event-driven array) 일 수 있다.
주변 회로부 (214) 는 또한, 전자 센서의 희망하는 기능성에 따라 변동될 수 있다. 주변 회로부 (214) 는 센서 어레이 유닛 (212) 으로부터 정보를 수신하도록 구성될 수 있다. 일부 실시형태들에서, 주변 회로부 (214) 는 센서 어레이 유닛 (212) 내의 일부 또는 모든 픽셀들, (중요한 픽셀내 (in-pixel) 회로부를 갖는 구현예들에서의) 센서 어레이 유닛 (212) 의 픽셀내 회로부의 일부 또는 전부, 또는 양자로부터 정보를 수신할 수도 있다. 센서 어레이 유닛 (212) 이 동기화된 출력을 제공하는 실시형태들에 대하여, 예를 들어, 주변 회로부는 센서 어레이 유닛 출력에 대한 타이밍 및/또는 제어 동작들을 제공할 수 있다 (예컨대, 프레임-기반 및/또는 유사한 타이밍을 실행함). 주변 회로부 (214) 에 의해 제공된 다른 기능성은 이벤트-큐잉 (event-queuing) 및/또는 프로세싱 동작, 아날로그 프로세싱, 아날로그-대-디지털 변환, 적분 동작 (예컨대, 픽셀 값들의 1 차원 또는 2 차원 적분), CV 특징 연산, 객체 분류 (예를 들어, 캐스케이드-분류기-기반 분류 또는 히스토그램-기반 분류), 또는 히스토그램 동작, 메모리 버퍼링, 또는 그 임의의 조합, "픽셀 블록 값 합산", "이웃하는 픽셀 값 비교 및 임계화 (thresholding)", "벡터 내적 (vector dot product) 연산" 등등을 포함할 수 있다. 이러한 기능성을 수행하기 위한 수단은 예를 들어, 다양한 구현예들에서 주변 회로부 (214) 를 포함할 수 있다. 일부 실시형태들에서, 주변 회로부 (214) 는 센서 어레이 유닛 (212) 의 센서 셀 출력들에 결합되고, 마이크로프로세서 또는 다른 프로세싱 유닛을 포함하지 않는다. 주변 회로부 (214) 의 일부 예들은 도 2b 에 관하여, 이하의 본원에서 포함된다.
그렇지만, 일부 실시형태들은 주변 회로부 (214) 의 출력에 결합된 마이크로프로세서 (216) 를 더 포함할 수 있다. 마이크로프로세서 (216) 는 주 프로세서 (220) 에 비해, 상대적으로 저-전력에서 동작하는 프로세싱 유닛을 포함할 수 있다. 일부 구현예들에서, 마이크로프로세서 (216) 는 그 자신의 프로그램 (예를 들어, 소프트웨어-기반) 및 데이터 메모리를 이용하여 (프레임-기반 및/또는 이벤트-기반일 수 있는) 컴퓨터 시각 및/또는 머신-학습 (machine-learning) 알고리즘들을 추가로 실행할 수 있다. 이에 따라, 마이크로프로세서 (216) 는 또한, 주 프로세서 (220) 가 저-전력 모드에서 동작하는 동안에, 센서 어레이 유닛 (212) 에 의해 수신된 입력에 기초하여 컴퓨터 시각 및/또는 머신 학습 기능들을 수행할 수 있다. 마이크로프로세서 (216) 가 주 프로세서 (220) 로의 출력을 요구하는 이벤트가 발생한 것으로 결정할 때, 마이크로프로세서 (216) 는, 주 프로세서 (220) 를 그 저-전력 모드에서 벗어나서 정상 동작 모드로 가져갈 수 있는 이벤트를 주 프로세서 (220) 로 통신할 수 있다.
임의적으로, 일부 실시형태들에서, 마이크로프로세서 (216) 의 출력은 주 프로세서 (220) 로 중계되기 전에, 메모리 (218) 에 추가로 제공될 수도 있다. 메모리 (218) 는 어느 이벤트들 또는 트리거들이 주 프로세서 (220) 로 전송되는지에 기초하여 마이크로프로세서 (216) 에 의해 유지된 작업 메모리 및/또는 데이터 구조들을 포함할 수도 있다. 메모리는 예를 들어, 이미지들을 저장하고, 검출된 객체들을 추적하고, 및/또는 도 2b 에 관하여 이하에서 더욱 상세하게 논의된 바와 같은 다른 동작들을 수행함에 있어서 사용될 수도 있다. 추가적으로 또는 대안적으로, 메모리 (218) 는 주 프로세서 (220) 가 센서 시스템 (210) 으로부터 질의할 수도 있는 정보를 포함할 수 있다. 주 프로세서 (220) 는 애플리케이션 소프트웨어, 알고리즘들 등 (222) 을 실행할 수 있고, 그 일부는 센서 시스템 (210) 으로부터 수신된 정보를 추가로 사용할 수도 있다.
이전에 언급된 바와 같이, 주 프로세서 (220) 에 독립적인, 이미지 프로세싱 및/또는 컴퓨터 시각 기능들과 같은 어떤 기능들을 수행하기 위한 센서 시스템 (210) 의 능력은, 그렇지 않을 경우에, 센서 시스템 (210) 의 기능들의 일부 또는 전부를 수행하기 위하여 주 프로세서 (220) 를 사용하여야 할 전자 디바이스에서의 막대한 전력, 속도, 및 메모리 절감들을 제공할 수 있다. 특히, 센서 어레이 유닛 (212), 주변 회로부 (214), 및 마이크로프로세서 (216) 의 조합은 이미지 어레이에 의해 캡처된 동적으로 변경되는 장면에서, 발생을 검출할 수 있는 장면 이해를 허용한다.
하나의 예에서, 도 2a 에서 도시된 구성을 가지는 이동 전화는 대기 모드로부터 탈출하기 위하여 얼굴 검출을 이용할 수 있다. 이 예에서, 이동 전화는 이동 전화의 디스플레이가 전력 차단되는 대기 모드로 진입하고, 주 프로세서 (220) 는 저-전력 슬립 모드 상에서 동작한다. 그러나, 센서 어레이 유닛 (212) 으로서 이미지 어레이를 갖는 센서 시스템 (210) 은, 객체들이 이미지 어레이의 시야에 진입하고 탈출할 때에 센서 어레이 유닛 (212) 으로부터의 데이터를 프로세싱하도록 동작하는 것을 계속한다. 얼굴이 이미지 어레이의 시유에 진입할 때 (도 1 에서와 같이, 사용자 (130) 의 얼굴이 이동 디바이스 (105) 의 시야 (110) 로 진입할 때), 그것은 센서 어레이 유닛 (212), 주변 회로부 (214), 마이크로프로세서 (216), 또는 그 임의의 조합에 의해 검출될 수도 있다. 검출된 얼굴이 임계치 시간의 주기 (예컨대, 0.5 초, 1 초, 2 초 등) 동안에 이미지 어레이의 시야에서 유지될 경우, 마이크로프로세서 (216) 는 얼굴 검출이 발생하였다는 것을 표시하는 얼굴-검출 이벤트를 주 프로세서 (220) 로 전송할 수 있다. 그 다음으로, 이동 전화의 주 프로세서 (220) 및 디스플레이는 정상 동작 상태로 다시 스위칭할 수 있다.
본원의 어딘가에서 언급된 바와 같이, 이벤트는 하나 이상의 기준 발생들이 발생하였다는 표시일 수 있다. 더욱 일반적으로 말하면, 이벤트들은 기준 발생에 관련된 데이터를 포함할 수 있다. 희망하는 기능성에 따라, 이벤트 내에 포함된 데이터는 검출된 기준 객체, 기준 객체에 관련된 로케이션 정보, 기준 객체들의 수, 검출된 기준 객체와 연관된 이동 등등을 표시할 수 있다. 이 데이터는 다양한 방법들 중의 임의의 것으로 전달될 수도 있다. 예를 들어, 객체 검출의 경우, 이벤트는 간단하게 2 진 출력일 수 있고, 여기서, "0" 은 기준 객체가 검출되지 않았다는 것을 의미하고, "1" 은 기준 객체가 검출되었다는 것을 의미한다.
이벤트는 기준 발생이 발생하였다는 표시 이외의 정보를 포함할 수도 있다. 예를 들어, 이벤트는 또한, 기준 발생과 연관된 일부 데이터를 포함할 수도 있다. 일부 실시형태들에서, 이벤트는 n-비트/바이트 메시지, 또는 멀티-필드 (multi-field) 메시지를 포함할 수도 있고, 여기서, 각각의 비트 또는 필드는 데이터의 특정 피스 (piece) 에 맵핑된다. 예를 들어, 이벤트는, 제 1 비트/필드가 객체가 검출되었는지 여부를 표시하고, 제 2 비트/필드가 객체가 이동하고 있는지 또는 정지되어 있는지 여부를 표시하고, 제 3 비트/필드가 객체의 로케이션 (또는 객체의 경계를 정하는 최소 박스의 4 개의 코너들, 객체의 코너의 로케이션 등과 같은 로케이션-관련된 정보) 을 관련시키고, 제 4 비트/필드가 얼마나 많은 객체들이 검출되는지를 관련시키는 등의 출력을 포함할 수도 있다. 일반적으로, 이벤트는 단지 기준 발생뿐 아니라, 기준 발생에 관련된 측정들 또는 연산들을 포함하는, 기준 발생과 연관된 임의의 방법으로, 하드웨어-컴퓨팅된 CV 특징들을 포함하는 임의의 데이터, 또는 이미지를 포함할 수 있다.
희망하는 기능성에 따라, 기준 발생은 얼굴 또는 다른 객체 검출 이벤트, 제스처 이벤트, 얼굴 및/또는 기준 객체 검출 및/또는 인식 등등과 같은 다양한 트리거들 중의 임의의 것을 포함할 수도 있다. 다양한 얼굴-검출 알고리즘들 중의 임의의 것을 이용하여 구현될 수 있는 얼굴 검출은 인간 얼굴 또는 비-인간 동물 얼굴 (예컨대, 개, 고양이, 또는 다른 애완동물) 의 뷰 등장, 또는 인간 신체 또는 비-인간 동물 신체의 뷰 등장을 포함할 수 있다. 객체의 이러한 "뷰 등장 (coming into view)" 은 객체의 이동 및/또는 카메라의 이동의 결과일 수 있다. 기준 발생은 다양한 얼굴 특징들 및/또는 표정을 표시하는 그 특징들의 위치의 분석으로부터 인간 얼굴의 감정 또는 다른 표정을 결정하기 위한 얼굴 검출을 초과할 수도 있다. 추가적으로 또는 대안적으로, 기준 발생은 인간 손의 뷰 등장, 손 제스처, (어떤 객체, 로고 (logo), 또는 다른 기준 객체와 같은) 기준 객체의 뷰 등장 등등과 같은, 추가적인 객체들 및/또는 객체 이동들의 검출 및/또는 인식을 포함할 수도 있다. 일부 실시형태들에서, 센서 시스템 (210) 은 어떤 기준 객체들을 검출하도록 사전구성 (preconfigure) 될 수도 있다. 추가적으로 또는 대안적으로, 센서 시스템 (210) 에 의한 검출 및/또는 인식을 위한 객체는 사용자 및/또는 주 프로세서 (220) 에 의해 실행된 애플리케이션에 의해 선택가능할 수도 있다. 기준 발생은 실내 환경으로부터 실외 환경으로의 변경, 기준 이동, (예컨대, 추락을 표시하는) 장면에서의 급속한 이동, (예컨대, 충돌의 위험을 표시하는) 객체를 향한 모션, 위험 (예컨대, 화재 검출을 위한 화재) 을 표시하는 장면에서의 이동 또는 객체들, 또는 그 임의의 조합과 같은 검출된 환경적 변경들을 포함할 수도 있다. 일부 구현예들에서, 기준 발생은 도 2b 및 본원의 어딘가에서 이하에 더욱 상세하게 설명된 바와 같이, 기준 객체의 검출에 관련될 수도 있거나 기준 객체의 검출에 기초할 수도 있다. 일부 구현예들에서, 일단 기준 객체가 이미지 프레임에서 검출되면, 마이크로프로세서 (216) 는 동일한 객체가 추후의 이미지 프레임에서 추후에 검출되는지를 보기 위하여 검사할 수 있다. 마이크로프로세서 (216) 는 기준 객체의 검출에 기초할 수 있는 기준 발생의 발생을 결정하기 위하여, 주변 회로부 (214) 로부터 수신된, 또는 마이크로프로세서 (216) 자체에 의해 생성된 검출된 객체와 연관된 로케이션 정보 및 다른 데이터를 이용할 수 있다. 이전의 단락에서의 얼굴 검출의 예를 다시 참조하면, 얼굴 검출 (기준 발생) 은 얼굴의 검출 (기준 발생) 이 임계치 시간의 주기 동안에 이미지 어레이의 시야에서 유지될 경우에 발생할 수도 있어서, 대응하는 얼굴-검출 이벤트가 주 프로세서 (220) 로 전송되는 것으로 귀착될 수도 있다.
도 2b 는 센서 어레이 유닛, CV 연산 하드웨어, 및 제 2 마이크로프로세서와의 통신을 위한 인터페이스를 포함하는 마이크로프로세서를 포함하는, 도 2a 의 센서 시스템 (210) 과 같은 일 예의 구현 센서 시스템을 예시한다. 센서 어레이 유닛 (212) 은 상관된 이중 샘플링 회로 (correlated double sampling circuit) 를 포함할 수도 있다. 센서 어레이 유닛 (212) 은 또한, 예를 들어, CV 연산이 조합된 픽셀 값들 또는 더 낮은 해상도를 이용하여 개선되는 구현예들에서, 신호들을 라인 버퍼 (들) (230) 로 출력하기 전에, 센서 엘리먼트 또는 픽셀 신호들 또는 값들을 조합하거나, 합산하거나, 평균화하기 위한 회로부를 포함할 수도 있다. 라인 버퍼 (들) (230) 는 이미지 또는 이미지의 부분들을 나타내는 신호들을 센서 어레이 유닛 (212) 으로부터 시각 센서의 다른 부분들로 전송하기 위한 하나 이상의 라인 버퍼들을 포함할 수도 있다. 일부 구현예들에서, 센서 엘리먼트 어레이 (212) 는 더 많은 기존의 센서 어레이 유닛들과 달리, 이미지 신호 프로세싱 (image signal processing; ISP) 을 위한 회로부를 포함하지 않을 수도 있고, 이 때문에, 도 2b 는 센서 어레이 유닛 (212) 및 CV 연산 하드웨어 (242) 가 매개하는 ISP 회로부 없이 접속되는 구현예를 예시하고, 이 때문에, 일부 구현예들에서, ISP 회로부는 센서 어레이 유닛 (212) 과, 하드웨어 스캐닝 윈도우 어레이 (238) 또는 전용 CV 연산 하드웨어 (242) 사이에 배치되지 않는다. 예를 들어, 일부 구현예들에서, 센서 어레이 유닛 (212) 으로부터 CV 연산 하드웨어 (242) 에 의해 수신된 신호들은 ISP 를 거치지 않았고, 예를 들어, 신호들은 결함 정정, 백색 밸런싱 (white balancing), 컬러 밸런싱 (color balancing), 자동 포커스 (auto focus), 렌즈 롤 오프 (lens roll off), 디모자이킹 (demosaicing), 디베이어링 (debayering), 또는 이미지 샤프닝 (image sharpening), 또는 그 임의의 조합 중의 하나 이상을 거치지 않았다. 그러나, 일부 이러한 무-ISP (no-ISP) 구현예들에서는, 포커싱 또는 자동-노출 정정과 같은 일부 프로세싱이 발생할 수도 있다. ISP 를 거치지 않았던 이러한 신호들은 원시 신호들 또는 원시 센서 판독들 또는 원시 센서 데이터로서 지칭될 수도 있다. 원시 신호들, 원시 센서 판독들, 또는 원시 센서 데이터가 (합산 또는 적분을 포함하는) 일부 데이터 조작을 거쳤지만, ISP 를 거치지 않은 것이 이해되더라도, 원시 신호들, 원시 센서 판독들, 또는 원시 센서 데이터는 디지털로 변환될 수 있고, 적분 이미지를 형성하기 위하여 적분될 수 있고, 스캐닝 윈도우 내에 저장될 수 있고, 전용 CV 연산 하드웨어는 원시 신호들, 원시 센서 판독들, 또는 원시 센서 데이터를 수신하도록 구성될 수 있다. 하나의 구현예에서, 센서 어레이 유닛 (212) 은 216 대 240 센서 엘리먼트들을 포함하는 어레이를 갖는 ISP 회로부를 갖지 않는 쿼터 비디오 그래픽스 어레이 (Quarter Video Graphics Array; QVGA) 카메라 센서이다.
다양한 구현예들에서, CV 연산 하드웨어 (242) 는 디지털 또는 아날로그 도메인의 어느 하나에서 CV 연산들을 수행할 수 있다. 그러므로, 임의적으로, 디지털 구현예들에서, 아날로그-대-디지털 변환기 (analog-to-digital converter; ADC) (234) 는 라인 버퍼 (들) (230) 와 CV 연산 하드웨어 (242) 사이에 배치될 수도 있다. 일부 구현예들에서, CV 연산 하드웨어 (242) 는 그것이 CV 특징들, 라벨들, 또는 디스크립터들을 컴퓨팅하는 것 이외의 기능성을 거의 또는 전혀 가지지 않도록 설계된 하드웨어라는 의미에서, 전용 CV 연산 하드웨어이다.
일부 구현예들에서, CV 연산 하드웨어 (242) 는 센서 엘리먼트들 또는 픽셀들의 블록들과 연관된 신호들의 조합들, 합들, 또는 평균들을 이용할 수도 있다. 이러한 구현예들에서, 적분 이미지는 CV 연산 하드웨어 (242) 내로 입력하기 전에 이러한 조합들, 합들, 또는 평균들을 컴퓨팅함에 있어서 유용할 수 있다. 예를 들어, (예컨대, 3x3 또는 11x11 과 같은, 2x2 보다 더 큰 블록들에 대한) 4 개를 초과하는 픽셀들을 합산하기 위하여, 오직 4 개의 값들은 개개의 3x3 또는 11x11 이미지 블록들에 대한 합 9 또는 121 값들이 아니라, 적분 이미지에서의 픽셀들의 합을 결정하기 위하여 가산되거나 감산될 필요가 있으므로, 합산은 적분 이미지를 이용하여 훨씬 더 신속할 수 있다. 그러므로, 임의적으로, 시각 센서는 또한, 센서 어레이 유닛에서의 센서 엘리먼트들 (예컨대, 픽셀들) 의 적어도 서브세트에 의해 샘플링된 이미지를 나타내는 신호들의 적어도 서브세트에 기초하여 이미지의 적어도 일부의 적분 이미지를 컴퓨팅하기 위한 2 차원 적분 하드웨어 (236) 를 포함할 수도 있다. 예시된 바와 같이, 2 차원 적분 연산 하드웨어 (236) 는 전용 CV 연산 하드웨어 (242) 와 통신할 수 있다. 이전에 언급된 바와 같이, 센서 어레이 유닛에 의해 샘플링된 이미지를 나타내는 적분 이미지 및/또는 센서 어레이 유닛에 의해 샘플링된 이미지의 부분의 적분 이미지는 신호 값들을 직접적으로 추가하는 것에 비해, 센서 엘리먼트들의 블록들에 대한 신호 값들을 더욱 신속하게 조합하거나, 합산하거나, 또는 평균화하기 위하여 이용될 수 있다. 2 차원 적분 하드웨어 (236) 는 센서 어레이 유닛 (212) 으로부터의 원시 신호들에 기초하여, 디지털 또는 아날로그 도메인들의 어느 하나에서 센서 어레이 유닛에 의해 샘플링된 이미지의 전부 또는 부분의 적분 이미지를 나타내는 신호들을 생성할 수 있는 회로부를 포함할 수 있다. 일부 구현예들에서, 2 차원 적분 하드웨어 (236) 에 의해 생성된 (센서 어레이 유닛에 의해 샘플링된 이미지의 오직 부분 또는 샘플 윈도우의 적분 이미지일 수도 있는) 적분 이미지는 도 2b 에서 예시된 바와 같이, 하드웨어 스캐닝 윈도우 어레이 (238) 내에 저장될 수 있다. 예를 들어, 하드웨어 스캐닝 윈도우 어레이는 적분 이미지를 저장하기 위한 랜덤-액세스 메모리 (random-access memory; RAM) 어레이 또는 다른 형태의 아날로그 또는 디지털 메모리를 포함할 수도 있다. 픽셀-레벨 LBP 와 같이, 센서 엘리먼트들의 블록들에 대응하는 신호들의 조합들, 합들, 또는 평균들을 컴퓨팅하는 것이 유용하지 않은 구현예들에서는, 2 차원 적분 하드웨어 (236) 가 포함되지 않을 수도 있고, 이 때문에, 센서 어레이 유닛 (230) 으로부터의 아날로그 원시 신호들 또는 ADC (234) 로부터의 디지털로 변환된 원시 신호들을 포함하는 샘플 윈도우가 하드웨어 스캐닝 윈도우 어레이 (238) 내에 직접적으로 저장될 수도 있다는 것이 이해된다. 또한, 일부 구현예들에서, 2 차원 적분 하드웨어 (236) 는 또한 또는 그 대신에, 1 차원 적분을 수행할 수도 있다는 것이 이해된다. 유사하게, 하드웨어 스캐닝 윈도우 어레이 (238) 는 센서 어레이 (230) 에 의해 캡처된 이미지의 샘플 윈도우에 대응하는 1 차원 적분 이미지를 저장할 수도 있다. 1 차원 적분 이미지들의 이용은 예를 들어, 회전된 기준 객체들, 예를 들어, 얼굴들을 검출하기 위하여 회전된 블록들을 이용하는 멀티-블록 LBP 의 연산을 허용할 수 있다. 임의적으로, 프레임 버퍼 (예시되지 않음) 는 2 차원 적분 하드웨어 (236) 이전 또는 이후에 이용될 수도 있다. 2 차원 적분 하드웨어 (236) 이전에 배치된 프레임 버퍼를 갖는 구현예들에서, 전체 프레임 또는 이미지는 센서 어레이 유닛 (212) 으로부터 프레임 버퍼로 전송될 수 있다. 그 다음으로, 2 차원 적분 하드웨어 (236) 는 프레임 버퍼 내에 저장된 이미지의 부분들 또는 윈도우들의 적분 이미지들을 생성할 수 있고, 이러한 윈도우들을 하드웨어 스캐닝 윈도우 어레이 (238) 내에 저장할 수 있다. 대안적으로, 2 차원 적분 하드웨어 (236) 는 전체 이미지를 적분할 수 있고, 전체 적분 이미지를 2 차원 적분 하드웨어 (236) 와 하드웨어 스캐닝 윈도우 어레이 (238) 사이에 배치된 프레임 버퍼 내에 저장할 수 있고, 이 경우, 프레임 버퍼 내에 저장된 적분 이미지의 윈도우들은 스캐닝 윈도우 어레이 (238) 내에 저장될 수 있다. 그러나, 프레임 버퍼는 임의적이고, 2 차원 적분 하드웨어 (236) 는 센서 어레이 유닛 (212) 으로부터 이미지의 윈도우들 또는 부분들에 대응하는 데이터를 수신할 수 있고, 윈도우들 또는 부분들을 즉시 적분할 수도 있고, 이러한 적분 이미지 윈도우들을 하드웨어 스캐닝 윈도우 어레이 (238) 내에 저장할 수도 있다는 것이 이해된다.
시각 센서는 또한, CV 연산 하드웨어 (242) 를 포함할 수도 있다. 일부 구현예들에서, CV 연산 하드웨어는 적어도 부분적으로, 센서 엘리먼트들의 블록에 근접한 복수의 이웃하는 센서 엘리먼트들과 연관된 신호들에 기초하여 하나 이상의 대상 센서 엘리먼트들의 블록에 대한 국소화된 CV 특징을 컴퓨팅할 수 있다. 예를 들어, CV 연산 하드웨어의 로컬 2 진 패턴 (LBP) 구현예에서, CV 연산 하드웨어는 원시 이미지 신호들 - 또는 (예를 들어, 적분 이미지를 이용하여 생성된) 원시 이미지 신호들의 조합들, 합들, 또는 평균들 - 에 대응하는 신호 값들을 수신하고 원시 이미지 신호들에 기초하여 디지털 LBP 라벨 또는 벡터를 생성하는 하드웨어를 포함할 수 있다. 멀티-블록 LBPP 가 컴퓨팅되는 구현예들에서, 하나 이상의 대상 센서 엘리먼트들의 블록은 m 대 n 센서 엘리먼트들, 예를 들어, 11 대 11 센서 엘리먼트들의 블록을 포함할 수 있다. 또한, 픽셀-레벨 LBP 연산은 또한, 국소화된 CV 특징이 컴퓨팅되는 하나 이상의 대상 센서 엘리먼트들의 블록이 단일 대상 센서 엘리먼트인 경우에 행해질 수도 있다는 것이 이해된다. 상기 설명은 CV 연산 하드웨어 (312) 를 전용 마이크로프로세서 (320) 와는 별도인 것으로서 참조하였지만, 일부 구현예들에서, 전용 CV 연산 하드웨어 (312) 는 전용 마이크로프로세서 (320) 내에서 하드웨어로 구현될 수도 있다는 것이 이해된다.
전용 하드웨어로, 위에서 논의된 LBP 라벨들과 같은 CV 특징들을 생성하는 것은 프로세서, 예를 들어, 애플리케이션 프로세서 또는 심지어 마이크로프로세서 (216) 와 같은 범용 프로세서로 CV 특징들을 컴퓨팅하는 것과 비교하여, 시각 센서의 전력을 감소시킬 수 있다. 그러나, 시각 센서는 CV 특징 연산 이외에 CV-관련된 동작들 또는 연산들과 같은, CV 특징 연산 이외의 기능들을 수행하거나, CV 특징 연산 하드웨어 (242) 를 이용하여 수행된 연산들에 관련된 추가적인 CV 특징 연산을 수행하기 위하여, CV 연산 하드웨어 (242) 에 결합된 마이크로프로세서 (216) 를 여전히 포함할 수도 있다. 마이크로프로세서 (216) 는 CV 연산 하드웨어 (238) 로부터 하드웨어-컴퓨팅된 CV 특징들을 수신하고, 작업이 다른 컴퓨터 시각 동작들 중에서, 주어진 클래스에 속하는 이미지에서의 모든 객체들의 로케이션들 및 크기들을 구하기 위한 것인, (그 얼굴 검출이 특정 경우로서 간주될 수 있고, 다른 예들은 상부 몸통들, 보행자들, 및 자동차들을 포함하는) 객체-클래스 검출과 같은 더욱 하이-레벨 컴퓨터 시각 동작들을 수행할 수 있다. 또한, 마이크로프로세서 (216) 는 제어 신호들을 라인 버퍼 (들) (230), ADC (234), 2 차원 적분 하드웨어 (236), 하드웨어 스캐닝 윈도우 어레이 (238), 및 CV 연산 하드웨어 (242) 에 제공할 수 있다. 일부 구현예들에서, 객체-클래스 검출 또는 다른 컴퓨터 시각 동작들을 수행하기 위하여, 마이크로프로세서 (216) 는 객체-클래스 검출, 예를 들어, 얼굴 검출을 수행하기 위한 캐스케이드 분류기 알고리즘을 이용할 수도 있다. 임의적인 구현예에서, 마이크로프로세서 (216) 상의 연산 부담을 추가로 감소시키기 위하여 캐스케이드 분류기를 하드웨어로 구현함으로써, 추가의 전력 절감들이 가능하다.
임의적인 캐스케이드 분류기 하드웨어 (244) 는 캐스케이드 분류기의 하드웨어 구현예를 포함한다. 일부 구현예들에서, 캐스케이드 분류기는 캐스케이드 분류기가 검출하거나 분류하기 위하여 훈련될 기준 객체의 예들과, 비-객체 (non-object) 들의 예들, 예를 들어, 얼굴들 및 비-얼굴들의 이미지들, 또는 자동차들 및 비-자동차들의 이미지들, 또는 상부 몸통들 및 비-상부 몸통들의 이미지들 등을 포함하는 이미지들의 데이터 세트에 대하여 머신 학습 기법들을 이용하여 훈련된다. 예를 들어, 제 1 스테이지 (stage) 에서, 캐스케이드 분류기 하드웨어는 예를 들어, 하드웨어 스캐닝 윈도우 어레이 (238) 내에 저장된 어떤 수 l 의 객체 센서 엘리먼트들에 대한 LBP 특징들을 컴퓨팅할 것을 CV 연산 하드웨어 (242) 에 요청할 수도 있다. 게다가, 대상 센서 엘리먼트들의 로케이션, {(x11, y11), … (x1 l , y1 l )} 은 또한, 캐스케이드 분류기 하드웨어 (244) 에 의해 제공될 것이다. 일단 CV 연산 하드웨어 (242) 가 벡터 값들로서 취급될 수 있는 요청된 LBP 특징들을 컴퓨팅하고 제공하면, 캐스케이드 분류기 하드웨어는 제 1 가중화된 스칼라 합 값을 생성하기 위하여, 하나 이상의 가중치들과의 LBP 특징들의 각각의 내적의 합산을 수행한다. 일반적으로, 각각의 LBP 특징, (LBP11, …, LBP1 l ) 은, 각각이 상이할 수 있는 주어진 가중치, (w11, …, w1 l ) 에 의해 승산될 것이다. 그 다음으로, 제 1 가중화된 스칼라 합 값은 제 1 임계치와 비교된다. 스칼라 합이 임계치보다 더 작을 경우, 주어진 확률까지, 하드웨어 스캐닝 윈도우 어레이 (238) 내에 저장된 신호들에 의해 표현된 이미지의 부분에서 기준 객체가 없고, 이 때문에, 캐스케이드 분류기 하드웨어 (244) 는 하드웨어 스캐닝 윈도우 어레이 (238) 가 스캐닝하는 것을 계속해야 하고 하나 이상의 새로운 열 (column) 들 및/또는 행 (row) 들을 추가해야 하고 하나 이상의 홀수 열들 및/또는 행들을 제거해야 한다는 것을 표시하기 위하여, 신호를 하드웨어 스캐닝 윈도우 어레이 (238) 로, 그리고 임의적으로, 라인 버퍼 (들) (230) 및 센서 어레이 유닛 (212) 과 같은, 시각 센서의 다른 컴포넌트들로 전송한다. 하드웨어 스캐닝 윈도우 어레이 (238) 내에 저장된, 추후의 이미지의 윈도우, 또는 센서 어레이 유닛의 센서 엘리먼트들의 추후의 서브세트에 대응하는 추후의 복수의 신호들로, 프로세스가 다시 시작될 수 있다. 추후의 이미지의 윈도우는 이전의 이미지의 윈도우와 대부분 중첩할 수도 있다는 것이 이해된다. 일부 구현예들에서, 이미지는 좌측으로부터 우측으로 스캐닝되고, 일단 센서 어레이 유닛 (212) 의 단부에 도달되면, 이미지는 하나 이상의 행들 아래로 이동한 후에, 좌측으로부터 우측으로 다시 스캐닝될 수도 있다. 또 다른 구현예에서, 이미지는 이전의 이미지와의 증가된 중첩을 허용할 수도 있는 하나 이상의 행들만큼 아래로 시프트한 후에, 우측으로부터 좌측으로 스캐닝될 수도 있다.
스칼라 합이 그 대신에 제 1 임계치보다 더 클 경우, 캐스케이드 분류기 하드웨어 (244) 는 다음 스테이지로 이동한다. 다음 (이 예에서, 제 2) 스테이지에서, 캐스케이드 분류기 하드웨어는 하드웨어 스캐닝 윈도우 어레이 (238) 내에 저장된 로케이션들 {(x21, y21), … (x2 m , y2 m )} 에서 m 대상 센서 엘리먼트들에 대한 LBP 특징들을 제공할 것을 CV 연산 하드웨어 (242) 에 다시 요청한다. 일단 CV 연산 하드웨어 (242) 가 요청된 LBP 특징들, (LBP21, …, LBP2 m ) 을 컴퓨팅하고 제공하면, 캐스케이드 분류기 하드웨어 (244) 는 제 2 가중화된 스칼라 합 값을 생성하기 위하여, 하나 이상의 가중치들, (w21, …, w2 m ) 과의 LBP 특징들의 각각의 내적의 또 다른 합산을 수행한다. 그 다음으로, 제 2 가중화된 스칼라 합 값은 제 2 임계치와 비교된다. 스칼라 합이 제 2 임계치보다 더 작을 경우, 기준 객체가 하드웨어 스캐닝 윈도우 어레이 (238) 내에 저장된 신호들에 의해 표현된 이미지의 부분에서 존재할 낮은 가능성이 있고, 캐스케이드 분류기는 스캐닝을 계속하고 이미지의 다음 부분으로 이동하기 위하여, 신호를 시각 센서 어레이에서의 다른 컴포넌트들로 전송한다. 제 2 가중화된 스칼라 합 값이 제 2 임계치보다 더 클 경우, 프로세스는 위에서 설명된 바와 같은 제 3 스테이지로 계속한다. 최종 스테이지, 예를 들어, N-스테이지 캐스케이드 분류기에서의 N 번째 스테이지의 종료 시에, N 번째 가중화된 스칼라 합 값이 N 번째 임계치보다 더 클 경우, 기준 객체는 하드웨어 스캐닝 윈도우 어레이 (238) 내에 저장된 이미지의 부분에서 검출된다. 그 다음으로, 캐스케이드 분류기 하드웨어 (244) 는 기준 객체가 검출되었다는 것을 마이크로프로세서 (216) 에 표시할 수도 있고, 임의적으로, 기준 객체 또는 기준 객체의 부분이 검출되었던 이미지의 부분의 로케이션을 추가로 표시할 수도 있다. 일반적으로, 캐스케이드 분류기 하드웨어 (244) 는 기준 객체를 검출하는 프로세스에서 컴퓨팅된 CV 특징들의 전부 또는 일부, 그 CV 특징들의 이미지 내의 로케이션, 또는 CV 연산 하드웨어 (242) 및/또는 캐스케이드 분류기 하드웨어 (244) 에 의해 수행된 연산들 또는 동작들과 연관된 임의의 다른 데이터와 같은, 기준 객체와 연관된 데이터와 함께, 기준 객체가 검출되었다는 표시를 마이크로프로세서 (216) 로 전송하도록 구성될 수 있다.
LBP 특징들, 라벨들, 또는 벡터들이 각각의 스테이지에서 컴퓨팅되어야 하는 하드웨어 스캐닝 윈도우 어레이 (238) 내의 대상 센서 엘리먼트들의 수들 및 로케이션들은 일반적으로 캐스케이드 분류기 하드웨어 (244) 내로 프로그래밍되고, 위에서 논의된 머신 학습 훈련으로부터 기인한다. 유사하게, LBP 특징들의 각각에 승산하기 위한 가중치들은 또한 일반적으로, 머신 학습 훈련 동안에 결정되고, 그 다음으로, 캐스케이드 분류기 하드웨어 (244) 내로 프로그래밍된다. 스테이지들의 수는 또한, 훈련으로부터 기인하고, 캐스케이드 분류기 하드웨어 (244) 내로 프로그래밍된다. 일부 구현예들에서, 캐스케이드 분류기는 1 내지 31 스테이지들 사이, 예를 들어, 15 스테이지들을 포함할 수 있다. 일부 구현예들에서, 캐스케이드 분류기는 1 내지 31 스테이지들 사이, 예를 들어, 15 스테이지들을 포함할 수 있다. 캐스케이드 분류기 하드웨어 (244) 는 일부 구현예들에서, 그것이 캐스케이드 분류기 기능을 수행하고 다른 중요한 기능들을 거의 내지 전혀 수행하지 않도록 설계된 하드웨어라는 의미에서, 전용 캐스케이드 분류기 하드웨어로 고려될 수 있다. 위에서 설명된 구현예는 모델을 생성하기 위한 실험실에서의, 이전의 훈련 및 머신 학습에 기초한 프로그래밍된 가중치들 및 임계치들에 기초한 캐스케이드 분류기에 관한 것이지만, 캐스케이드 분류기 하드웨어 (244), 또는 CV 연산 하드웨어 (242) 로부터 수신된 하드웨어-컴퓨팅된 CV 특징들에 기초하여 CV 동작들을 수행하도록 설계된 주변 회로부에서의 다른 하드웨어는 필드 (field) 에서 머신 학습을 수행하도록 설계될 수 있다.
방금 설명된 구현예들에서, 그 다음으로, 마이크로프로세서 (216) 는 예를 들어, 기준 객체 검출된 이벤트로 무엇을 행할 것인지를 결정할 수 있다. 예를 들어, 그것은 이벤트를 제 2 마이크로프로세서로 전송할 수도 있다. 일부 구현예들에서, 마이크로프로세서 (216) 및 제 2 마이크로프로세서는 도 2a 의 마이크로프로세서 (216) 및 주 프로세서 (220) 에 대응할 수도 있다. 도 2b 에서 예시된 바와 같이, 마이크로프로세서 (216) 는 제 2 마이크로프로세서와의 통신들을 위한 인터페이스 (246) 를 포함한다. 추가적으로 또는 대안적으로, 마이크로프로세서 (216) 는 예를 들어, 제스처 인식, 충돌의 위험, 위험, 및/또는 다른 이벤트들에 대한 이동을 결정하기 위하여 시간에 걸쳐 (예컨대, 다수의 이미지들에 걸쳐) 검출된 기준 객체의 위치를 추적할 수도 있다.
더욱 일반적으로, 일부 실시형태들은 객체를 먼저 검출함으로써, 그 다음으로, 다른 특징들을 결정함으로써, 광범위한 기능성을 인에이블 (enable) 할 수 있다. 이러한 실시형태들에서, 객체 검출은 주변 회로부 (예컨대, 캐스케이드 분류기 하드웨어 (244) 및/또는 다른 전용 하드웨어) 를 통해 행해질 수도 있고, 추가적인 동작들은 마이크로프로세서 (216) 에 의해 수행될 수도 있다. 예를 들어, 객체의 뷰 등장은 먼저, 객체의 검출, 그 다음으로, (예컨대, 마이크로프로세서를 이용한) 객체가 임계치 시간의 주기 동안에 카메라의 시야 내에 있었다는 결정에 의해 결정될 수도 있다. 위에서 언급된 바와 같은 제스처 검출은 제스처-제어 객체 (예컨대, 손) 를 검출함으로써, 그 다음으로, 손의 이동을 결정함으로써 행해질 수도 있다. 충돌의 위험은 객체를 검출함으로써, 그리고 (예컨대, 카메라에 의해, 카메라의 시야 내의 제 2 객체 등에 의해) 객체와의 충돌의 위험을 표시하는 이동을 결정함으로써 행해질 수도 있다. 당해 분야의 당업자는 실시형태들이 상기 특징들의 임의의 조합, 및/또는 이 특징들에 대한 변동들을 포함할 수도 있다는 것을 인식할 것이다.
상기 설명은 캐스케이드 분류기 하드웨어 (244) 를 마이크로프로세서 (216) 와는 별도인 것으로서 참조하였지만, 일부 구현예들에서, 캐스케이드 분류기 하드웨어 (244) 는 마이크로프로세서 (216) 내에서 하드웨어로 구현될 수도 있다는 것이 이해된다. 또한, 캐스케이드 분류기 하드웨어 (244) 는 일부 구현예들에서, 그것이 예시된 바와 같이, CV 연산 하드웨어 (242) 및 하드웨어 스캐닝 윈도우 어레이 (238) 를 제어하는 것을 허용하기 위한 일부 제어 기능성을 부여받을 수 있다. 이와 같이, 캐스케이드 분류기 하드웨어 (242) 는 마이크로프로세서 (216) 로부터 자율적으로 특징들을 검출할 수 있고, 이 때문에, 마이크로프로세서 (216) 는 캐스케이드 분류기 하드웨어 (244) 가 그 기능들을 수행하는 동안에 저-전력 상태에 있을 수 있다. 이와 같이, 스마트 센서는 하나 이상의 컴퓨팅된 CV 특징들에 기초하여 더욱 저-전력 동작들을 수행할 수 있고, 예를 들어, 객체가 검출될 때, 캐스케이드 분류기 하드웨어 (242) 는 마이크로프로세서 (216) 를 깨우기 위하여, 센서 판독과 같은 데이터를 포함하는 이벤트를 마이크로프로세서 (216) 에 제공할 수 있다. 그 다음으로, 마이크로프로세서 (216) 는 액션의 다음 코스, 예를 들어, 인터페이스 (246) 를 통해 이벤트를 제 2 마이크로프로세서로 전송하는 것을 결정할 수 있다. 심지어 저-전력 상태에서, 마이크로프로세서 (216) 는 일부 구현예들에서, 제어 신호들을 센서 어레이 유닛 (212), 라인 버퍼 (들) (230) 등에 여전히 제공할 수 있거나, 대안적으로 또는 추가적으로, 이러한 제어 신호들은 더욱 저 전력 제어 로직에 의해 제공될 수도 있다는 것이 이해된다. 대안적으로, 캐스케이드 분류기는 마이크로프로세서 (216) 상에서 소프트웨어 알고리즘으로서 실행될 수도 있다. 또한, 다른 소프트웨어 알고리즘들은 캐스케이드 분류기 대신에, 마이크로프로세서 상에서 실행될 수도 있다. 예를 들어, 기준 객체 검출은 도 11c 에서 설명된 바와 같이, 히스토그램들을 이용하여 수행될 수도 있다. 일부 이러한 구현예들에서는, 스캐닝 윈도우 어레이 (238) 내에 저장된 샘플 윈도우에서 얼굴의 존재를 검출하기 위하여, 스캐닝 윈도우 어레이 (238) 내에 저장된 이미지의 샘플 윈도우에 대하여 컴퓨팅된 모든 LBP 라벨들의 히스토그램이 기준 히스토그램과 비교될 수 있다. 일부 구현예들에서, 전용 하드웨어는 히스토그램들을 이용하여 예를 들어, 얼굴을 검출하도록 구현될 수도 있다. 이러한 구현예는 캐스케이드 분류기 하드웨어 (244) 대신에, 또는 캐스케이드 분류기 하드웨어 (244) 에 추가하여, 이러한 전용 하드웨어를 포함할 수도 있다.
도 2b 에서 예시된 구현예에서, 라인 버퍼 (들) (230), ADC (234), 2 차원 적분 하드웨어 (236), 하드웨어 스캐닝 윈도우 어레이 (238), CV 연산 하드웨어 (242), 캐스케이드 분류기 하드웨어 (244), 또는 그 임의의 조합 중의 하나 이상은, 센서 어레이 유닛 (212) 에 대해 주변적이고 도 2a 의 주변 회로부 (214) 에 대응할 수도 있는 회로부인 주변 회로부로 고려될 수도 있다. 또한, 방금 열거된 다양한 컴포넌트들, 또는 그 임의의 조합은 그 대신에, 센서 어레이 유닛 (212) 내의 픽셀내 회로부로서 구현될 수도 있다는 것이 이해된다.
도 3a 내지 도 3c 는 센서 시스템 (210) 의 컴포넌트들이 저-전력 센서 프로세싱을 제공하기 위하여 어떻게 사용될 수 있는지를 예시하는 블록도들이다. 여기에서는, 오직 어떤 컴포넌트들이 예시되어 있다. 센서 시스템은 도 2a 및 도 2b 에서 도시된 바와 같이, 추가적인 컴포넌트들을 가질 수도 있다는 것이 이해될 것이다.
도 3a 에서, 주변 회로부 (214) 는 센서 어레이 유닛 (212) 의 복수의 센서 셀 출력들과 결합된다. 센서 어레이 유닛 (212) 및/또는 주변 회로부 (214) 는 복수의 센서 셀 출력들의 적어도 서브세트를 이용하여 특징 검출 연산을 수행하기 위한 전용 CV 연산 하드웨어를 포함하고, 여기서, 복수의 센서 셀 출력들의 서브세트는 이웃하는 센서 셀들 또는 픽셀들을 센서 어레이 유닛 (212) (예컨대, 이미지 어레이) 의 영역에 대응한다. 이에 따라, 주변 회로부 (214) 의 출력은 특징 검출 연산에 (적어도 부분적으로) 기초한다. 이러한 특징 검출 연산은 특징 검출 (예컨대, 에지 검출, 라인 검출 등) 을 제공할 수 있는 센서 어레이 유닛 (212) 의 이웃하는 센서 셀들 또는 픽셀들을 이용한 다양한 연산들 중의 임의의 것을 포함할 수 있다. 이러한 특징 검출 연산들은 예를 들어, LBP, HSG 등등을 포함한다. 일부 실시형태들에서, 전용 CV 연산 하드웨어는 집적 회로를 포함할 수도 있다.
도 3b 에서, 제 1 프로세싱 유닛 (217) 은, 다수의 센서 픽셀들이 메모리 및/또는 로직 회로부와 결합되는 스마트 이미지 어레이 (213) 의 하나 이상의 출력들과 통신가능하게 결합된다. 여기서, 제 1 프로세싱 유닛 (217) 은 도 2a 및 도 2b 의 마이크로프로세서 (216) 에 대응할 수도 있고, 스마트 이미지 어레이 (213) 는 도 2a 및 도 2b 의 센서 어레이 유닛 (212) 에 대응할 수도 있다. 스마트 이미지 어레이 (213) 는 도 3a 및/또는 도 2b 에 관하여 위에서 설명된 바와 같이, 이웃하는 센서 픽셀들로부터의 판독들을 이용하여 컴퓨팅된 CV 특징들을 컴퓨팅하기 위한 전용 CV 연산 하드웨어를 포함할 수도 있다. 도 2a 및 도 2b 에서 도시된 바와 같이, 이 2 개의 컴포넌트들은 서로 직접적으로 결합되지 않을 수도 있지만, 매개 회로부를 가질 수도 있다. 제 1 프로세싱 유닛 (217) 은 기준 발생을 검출하기 위하여, 스마트 이미지 어레이의 하나 이상의 출력들로부터 수신된 신호들을 프로세싱한다. 그 다음으로, 제 1 프로세싱 유닛 (217) 은 제 2 프로세싱 유닛 (예컨대, 도 2a 의 주 프로세서 (220)) 에 의해 수신되어야 할, 기준 발생을 표시하는 이벤트를 생성한다.
이벤트는 하나 이상의 컴퓨팅된 CV 특징들에 기초하는 동작들로부터 기인하는 프로세싱 신호들에 기초하여 생성될 수 있다. 이러한 동작들은 일부 구현예들에서, 얼굴을 검출하기 위하여 캐스케이드 분류기 (예컨대, 도 2b 의 캐스케이드 분류기 하드웨어 (244)) 에 의해 수행된 동작들 또는 연산들을 수행할 수 있다. 그러므로, 이벤트가 그 동작들로부터 기인하는 프로세싱 신호들에 기초하여 생성되는 것은, 마이크로프로세서가 기준 객체가 검출되었다는 캐스케이드 식별자로부터의 표시와 같은 신호를 프로세싱하는 것을 포함할 수도 있다. 표시는 로케이션, 연관된 LBP 특징들 및 그 로케이션들, 및/또는 이미지 데이터 자체와 같은, 검출된 객체와 연관된 데이터를 포함할 수도 있다. 이것은 마이크로프로세서가 기준 객체가 검출되지 않을 때에 이미지 데이터를 분석하지 않음으로써 에너지를 절감하는 것을 가능하게 한다.
도 3c 에서, 설정은 도 3b 와 유사하다. 여기서, 제 1 프로세싱 유닛 (217) 은 이미지 어레이 (215) 의 하나 이상의 출력들과 통신가능하게 결합된다. 다시, 제 1 프로세싱 유닛 (217) 은 도 2a 및/또는 도 2b 의 마이크로프로세서 (216) 와 대응할 수도 있고, 이미지 어레이 (215) 는 도 2a 및/또는 도 2b 의 센서 어레이 유닛 (212) 과 유사하게 대응할 수도 있다. 그러나, 이 실시형태에서, 제 1 프로세싱 유닛 (217) 은 얼굴이 검출된 것으로 결정하고, 제 2 프로세싱 유닛에 대한 얼굴-검출 이벤트를 생성한다. 희망하는 기능성에 따라서는, 제 1 프로세싱 유닛 (217) 이 이미지 어레이 (215) 의 하나 이상의 출력들로부터 수신된 하나 이상의 신호들을 이용하여 얼굴을 검출하도록 동작가능할 수도 있다.
도 4 는 실시형태에 따라, 동적 장면-기반 발생들을 감지하는 방법 (400) 을 예시하는 흐름도이다. 본원에서 제공된 다른 도면들에서와 같이, 도 4 는 비-제한적인 예로서 제공된다. 대안적인 실시형태들은 도면에서 도시된 것에 대한 추가적인 기능성을 포함할 수도 있고, 및/또는 도면에서의 블록들 중의 하나 이상에서 도시된 기능성은 생략될 수도 있고, 조합될 수도 있고, 분리될 수도 있고, 및/또는 동시에 수행될 수도 있다. 블록들의 기능성을 수행하기 위한 수단은 도 5 에서 예시되고 이하에서 설명된 이동 디바이스의 하나 이상의 컴포넌트들과 같은, 전자 디바이스의 하나 이상의 하드웨어 및/또는 소프트웨어 컴포넌트들을 포함할 수도 있다. 당해 분야의 당업자는 다수의 변형들을 인식할 것이다.
방법 (400) 은 블록 (410) 에서 시작할 수 있고, 여기서, 전용 CV 하드웨어는 센서 어레이로부터 이미지 데이터를 수신한다. 이미지 데이터는 센서 어레이의 복수의 이미지 픽셀들로부터의 센서 판독들을 포함할 수 있다. 이전에 표시된 바와 같이, 전용 CV 하드웨어는 도 2a 의 센서 어레이 유닛 (212) 및/또는 주변 회로부 (214) 에서 구현될 수도 있고 및/또는 도 2a 의 센서 어레이 유닛 (212) 및/또는 주변 회로부 (214) 내로 포함될 수도 있다. (센서 어레이는 센서 어레이 유닛 (212) 내에 포함될 수 있다.)
블록 (420) 에서, 하나 이상의 CV 특징들은 센서 어레이의 이웃하는 센서 픽셀들로부터의 판독들을 이용하여 전용 CV 연산 하드웨어에 의해 컴퓨팅된다. 여기서, CV 특징들은 예를 들어, LBP, HSG, 및/또는 다른 연산들을 이용하여 컴퓨팅될 수도 있는 에지들, 라인들 등등을 포함할 수 있다. 전용 CV 연산 하드웨어의 사용은 상대적으로 더 높은 양들의 에너지 및/또는 프로세싱 파워를 이용할 필요 없이, 신속하고 효율적인 연산들을 인에이블할 수 있다.
블록 (425) 에서, 하나 이상의 CV 동작들은 하나 이상의 CV 특징들에 기초하여 수행된다. 이전에 언급된 바와 같이, 이러한 동작들은 주변 회로부에서 발생할 수 있다. 예를 들어, 도 2b 와 관련하여 설명된 바와 같이, 캐스케이드 분류기는 얼굴 또는 다른 객체를 검출하기 위한 동작들을 수행할 수도 있고, 얼굴 또는 다른 객체의 검출을 표시하는 신호를 마이크로프로세서에 제공할 수도 있다. 그러나, 이하에서 언급된 바와 같이, 하나 이상의 CV 특징들에 기초하여 CV 동작들을 수행하는 것은 주변 회로부 (예컨대, 전용 하드웨어) 및/또는 마이크로프로세서의 어느 하나 또는 양자에 의해 수행될 수 있다. CV 동작들을 수행하는 하드웨어 및/또는 소프트웨어 컴포넌트들은 출력 신호들 (예컨대, 캐스케이드 분류기의 출력, CV 연산 HW 로부터 직접적으로 수신된 LBP 연산들을 표시하는 신호들, 마이크로프로세서 내에서 내부적으로 생성된 신호들 등) 을 생성할 수 있다. 마이크로프로세서는 기준 발생 (예컨대, 얼굴 검출) 이 발생한 것으로 결정하기 위하여 이 신호들 중의 하나 이상을 이용할 수도 있다.
블록 (430) 에서는, 기준 발생이 발생한 것으로 결정된다. 이전에 표시된 바와 같이, 기준 발생은 다양한 이벤트들 중의 하나 이상을 포함할 수 있다. 이것들은 예를 들어, 인간 얼굴의 뷰 등장, 인간 얼굴 상에 표현된 감정, 비-인간 동물 얼굴의 뷰 등장, 인간 손의 뷰 등장, 손 제스처, 기준 객체의 뷰 등장, 실내 환경으로부터 실외 환경으로의 변경, 기준 이동, 추락을 표시하는 장면에서의 급속한 이동, 충돌의 위험을 표시하는 객체를 향한 모션, 위험을 표시하는 장면에서의 이동 또는 객체들, 또는 그 임의의 조합을 포함할 수 있다. 일부 실시형태들에서, 이 기준 발생들은 미리 정의될 수도 있고 및/또는 사용자 구성가능할 수도 있다.
블록 (440) 에서는, 제 2 프로세싱 유닛에 대한 이벤트가 생성되고, 여기서, 이벤트는 기준 발생을 표시한다. 본원에서 이용된 바와 같이, 용어 "이벤트" 는 기준 발생을 표시하는, 프로세싱 유닛에 제공된 정보를 설명한다. 여기서, 이벤트는 제 2 프로세싱 유닛에 제공된다. 일부 실시형태들에서, 이벤트는 기준 발생이 발생하였다는 표시를 간단하게 포함할 수도 있다. 일부 실시형태들에서, 이벤트는 검출되었던 기준 발생의 타입의 표시를 더 포함할 수도 있다. 이벤트는 제 1 프로세싱 유닛에 의해 생성될 수도 있고, 제 2 프로세싱 유닛으로 전송될 수도 있다. 일부 실시형태들에서는, 제 1 및 제 2 프로세싱 유닛들 사이에 매개 회로부가 있을 수도 있다.
희망하는 기능성에 따라서는, 도 4 에서 예시된 다양한 블록들에 의해 수행된 기능성이 센서 시스템 (예컨대, 도 2a 및 도 2b 의 센서 시스템 (210)) 의 다양한 컴포넌트들에 의해 수행될 수 있다는 것이 주목될 수 있다. 블록 (410 및 420) 의 기능성은 예를 들어, 픽셀내 또는 주변 회로부 (예컨대, CV 연산 하드웨어) 에 의해 수행될 수도 있다. 예를 들어, 블록 (425) 의 기능성은 마이크로프로세서 또는 전용 하드웨어 (예컨대, 캐스케이드 분류기 또는 다른 전용 하드웨어) 에 의해 수행될 수도 있다. 일부 실시형태들에서, 블록들 (425, 430, 및 440) 의 기능성은 모두 마이크로프로세서에 의해 수행될 수도 있다. 대안적으로, 일부 실시형태들은 주변 회로부에 의한 블록 (425) 의 기능성, 및 마이크로프로세서에 의한 블록들 (430 및 440) 의 기능성을 수행할 수도 있다. 당해 분야의 당업자는 몇몇 변형들을 인식할 것이다.
도 2a 를 다시 참조하면, 본원에서 설명된 센서 시스템 (210) 의 실시형태들은, 개개의 더욱 저-전력 및 더욱 고-전력 모드들에서 이용된 전력 또는 에너지 소비와 관련되는 더욱 저-전력 동작들 및 더욱 고-전력 동작들과 같은 상이한 타입들의 기능들을 추가로 수행할 수 있다. 예를 들어, 더욱 고-전력 모드에서, 센서 시스템은 본원에서 설명된 바와 같은 전용 CV 연산 하드웨어를 사용함으로써, 센서 시스템 (210) 자체 내의 이미지 프로세싱 능력들을 제공할 수도 있다. 본원에서의 "더욱 저-전력" 및 "더욱 고-전력" 의 이용은 상대적인 것으로 의도되는 것이 이해된다. 다시 말해서, 심지어 더욱 고-전력 모드에서는, 설명된 센서 시스템이 소프트웨어로 CV 알고리즘들을 실행하는 마이크로프로세서에 의한 그 동일한 CV-기반 연산들을 수행하는 것보다 더 적은 전력을 이용하여, 하드웨어-컴퓨팅된 CV 특징들에 기초하여 강력한 CV-기반 연산들을 여전히 수행할 수 있을 수도 있다. 이전에 상세하게 설명된 바와 같이, 전용 CV 연산 하드웨어는 하나 이상의 이웃하는 픽셀들에 관련된 감지된 광 강도를 검출하는 것, 이웃하는 픽셀들에 대한 감지된 광의 컬러들 또는 강도들에 있어서의 차이들에 기초하여 객체들의 에지들을 검출하는 것, 및/또는 LBP, HSG, 및/또는 다른 CV 연산들을 행하는 것과 같은, 각각의 개개의 픽셀에 대한 프로세싱을 수행할 수 있는, 일부 또는 모든 픽셀들에 대한 회로들을 포함할 수도 있는 센서 어레이 유닛 (212) 내로 통합된 픽셀내 회로부를 포함할 수 있다. 전용 CV 연산 하드웨어는 이 연산들의 일부 또는 전부를 수행하기 위한 픽셀내 회로부에 추가하여, 또는 이에 대안적으로 이용될 수 있는 주변 회로부 (214) 를 더 포함할 수 있다. 실시형태들은 전력을 절감할 수 있는 더욱 고-전력 동작들이 필요하지 않을 때에 센서 시스템 (210) 의 이 전용 CV 연산 하드웨어의 일부 또는 전부를 디스에이블할 수도 있거나, 또는 그렇지 않을 경우에 저-전력 모드에서 동작할 수도 있다. 이에 따라, 본원에서 설명된 바와 같이, 더욱 고-전력 동작들은 전용 CV 연산 하드웨어 (센서 어레이 유닛 (212)에서의 픽셀내 회로부 및/또는 주변 회로부 (214)) 를 수반하는 반면, 더욱 저-전력 동작들은 전용 CV 연산 하드웨어의 일부 또는 전부가 디스에이블되거나 감소된-전력 상태에 있을 때에 수행된다.
하나의 예에서, 센서 시스템 (210) 은 단일 픽셀로서 동작하도록 센서 어레이 유닛 (212) 을 구성할 수 있다. 이러한 경우, 센서 시스템 (210) 은 모든 픽셀내 회로들 및/또는 주변 회로부 (214) 를 디스에이블할 수 있다. 이러한 구성에서, 어레이의 개별적인 픽셀들의 각각은 전체 센서 어레이에 대한 단일 감지된 값에 기여한다.
도 5 는 도 2a 의 센서 어레이 유닛 (212) 의 간략화된 예시를 도시한다. 센서 어레이 유닛 (212) 에서, 픽셀들 (510) 은 행들 및 열들로 배열되고, 이미지 캡처를 제공하기 위한 수신 광학기기의 초점 평면에 배치된다. (명료함을 위하여, 도 5 에서의 오직 몇 개의 픽셀들 (510) 이 수치 라벨들을 가진다.) 픽셀 크기, 종횡비 (aspect ratio), 해상도 등등과 같은 센서 어레이 유닛의 특징들은 희망하는 기능성에 따라 변동될 수 있다는 것이 이해될 것이다. 예를 들어, 도 5 의 간략화된 예시는 10x10 픽셀 어레이를 도시하지만, 실시형태들은 수백, 수천, 수백만 개의 픽셀들 (또는 그 초과) 을 가질 수도 있다.
이전에 표시된 바와 같이, 각각의 픽셀 (510) 은 픽셀 (510) 에 대한 CV 계산들을 수행하기 위하여 센서뿐만 아니라 픽셀내 회로부를 포함할 수도 있다. 추가적으로 또는 대안적으로, 주변 회로부는 본원의 어딘가에서 표시된 바와 같이, 픽셀에 대한 CV 계산들을 수행하도록 포함될 수도 있다. 상기 예를 계속하면, 센서 어레이 유닛 (212) 의 픽셀내 회로부 및/또는 주변 회로부에서의 하나 이상의 컴포넌트들은 센서 어레이 유닛 (212)이 예를 들어, 전부에서 하나를 제외한 픽셀의 회전 (turn) 에 대한 전력 효율적인 방식으로 더욱 저-전력 동작들을 수행하거나, "단일-픽셀 모드" 로서 지칭된, 오직 단일 픽셀로서 효과적으로 동작하기 위한 모든 픽셀들로부터의 감지된 값들을 판독하고 조합하는 것을 가능하게 하기 위하여 디스에이블될 수도 있다. 이 구성에서, 센서 시스템 (210) 은 주변 광 감지 (ambient light sensing; ALS), 근접성 검출 (proximity detection; PD), 기준 객체 검출에 대한 근접성, 또는 모션 검출과 같은 하나 이상의 더욱 저-전력 동작들을 수행하도록 구성된다. 일부 경우들에는, 이 기능들의 각각이 오직 단일 픽셀을 가지는 센서 어레이를 이용하여 적절하게 수행될 수도 있다.
추가적으로 또는 대안적으로, 센서 어레이 유닛 (212) 은 오직 단일 픽셀로서 효과적으로 동작하는 것이 아니라, 센서 어레이 유닛 (212) 이 복수의 픽셀들로서 동작할 수도 있는 더욱 저-해상도 구성에서 인에이블할 수도 있다. 6 에서 도시된 바와 같이, 센서 어레이 유닛 (212) 의 픽셀들 (510) 의 서브그룹들 (610) 은 위에서 설명된 단일-픽셀 모드와 유사한 방식으로 각각 동작할 수 있음으로써, 다수의 픽셀들을 갖는 센서로서 효과적으로 동작할 수 있다 (도 6 의 구성에서, 4 개의 서브그룹들 (610) 은 2x2 픽셀 어레이를 효과적으로 형성함). 다시, 예를 들어, 센서 시스템 (210) 의 전용 CV 연산 하드웨어의 일부 또는 전부 (예컨대, 주변 회로부 (214) 및/또는 센서 어레이 유닛 (212) 의 픽셀내 회로부) 는 이 모드 동안에 디스에이블될 수 있다. 이 구성에서, 센서 시스템 (210) 은 ALS, PD, 변경 검출 (change detection; CD), 또는 모션 검출과 같은 하나 이상의 더욱 저-전력 동작들을 수행할 수도 있다. 그리고 도 6 의 예는 2x2 픽셀들의 분명한 해상도를 채용하지만, 다른 감소된 해상도들이 구성될 수도 있다. 다시, 이러한 감소된 해상도들은 더 적은 수의 픽셀들로서 집합적으로 동작하기 위한 다수의 개별적인 픽셀들 (510) 을 집합시키는 것을 포함할 수도 있거나, 픽셀이 광을 감지하지 않거나 그것이 디스에이블되는 동안에 출력을 제공하지 않도록, 센서 어레이 유닛 (212) 에서의 픽셀들 (510) 중의 하나 이상을 디스에이블하는 것을 포함할 수도 있다.
도 3a 내지 도 3c 와 관련하여 설명된 동작들에서와 같이, 센서 시스템 (210) 은 하나 또는 기준 발생들을 검출하고, 그것이 더욱 저-전력 동작으로 수행하고 있는 동안에 하나 이상의 대응하는 이벤트들을 생성하도록 구성될 수도 있다. 예를 들어, 센서 시스템 (210) 은 이동 전화 내로 포함될 수도 있고, 단일 픽셀 (310) 에 대한 감지된 값이 센서 시스템 (210) 에 의해 검출된 광의 양에 있어서의 상당한 증가를 표시할 때에 기준 발생을 검출하도록 구성될 수도 있다. 검출된 광의 양에 있어서의 이러한 변경은 이동 전화가 사용자의 주머니로부터 꺼내졌거나, 테이블 또는 침실탁자로부터 집어 올려졌다는 것을 표시할 수도 있다. 센서 시스템 (210) 은 더욱 저-전력 동작에 있는 동안, 이 기준 발생이 발생한 것으로 결정할 수 있고, 주 프로세서 (220) 에 대한 기준 발생을 표시하는 이벤트를 생성할 수 있다. 이 이벤트를 검출할 시에, 센서 시스템 (210) 은 얼굴 검출 및 얼굴 인식과 같은 상이한 타입들의 CV 동작들을 수행하기 위한 더욱 고-전력 동작을 인에이블하기 위하여 전용 CV 연산 하드웨어를 추가로 활성화할 수 있다.
도 7 은 센서 시스템을 광학 센서로서 이용하기 위한 일 예의 방법 (700) 을 예시하는 간략화된 흐름도이다. 본원에서 제공된 다른 도면들에서와 같이, 도 7 은 비-제한적인 예로서 제공된다. 추가적으로, 방법 (700) 은 도 5 에서 도시된 동적 장면-기반 발생들을 감지하는 방법 (400) 을 포함하는 본원에서 설명된 실시형태들에 대략적으로 적용할 수도 있다. 도 7 에서 예시된 블록들의 기능성을 수행하기 위한 수단은 도 2a 의 센서 시스템 (210) 과 같은 센서 시스템의 하나 이상의 하드웨어 컴포넌트들을 포함할 수도 있다. 일부 실시형태들에서, 수단은 도 2a 의 주 프로세서 (220) 와 같은 주 프로세서를 더 포함할 수도 있다. 그리고 방법 (500) 은 도 2a 의 센서 시스템 (210) 에 의해 수행되는 것으로서 이하에서 설명되지만, 실시형태들은 이러한 센서 시스템으로 제한되지는 않는다.
방법 (700) 은 센서 시스템 (210) 이 더욱 저-전력 동작을 개시할 때에 블록 (710) 에서 시작할 수 있다. 예를 들어, 하나의 양태에서, 센서 시스템 (210) 은 ALS 동작, PD 동작, CD 동작, 또는 MD 동작 중의 하나를 개시한다. 이 양태에서, 센서 시스템 (210) 은 전용 CV 연산 하드웨어를 디스에이블함으로써 더욱 저-전력 동작을 개시하고, 감소된 해상도에서 동작하도록 센서 어레이 유닛 (212) 을 구성한다. 위에서 논의된 바와 같이, 상이한 예들에서, 감소된 해상도는 단일-픽셀 모드를 포함할 수도 있다. 일부 실시형태들에서, 센서 시스템 (210) 은 ALS 동작 및 PD 동작, CD 동작 및 MD 동작의 양자, 또는 ALS 동작, PD 동작, CD 동작, 및 MD 동작의 전부 4 개와 같은 복수의 더욱 저-전력 동작들을 개시할 수도 있다. 더욱 저-전력 동작을 개시한 후, 방법 (700) 은 블록 (720) 으로 진행한다.
블록 (720) 에서, 더욱 저-전력 동작을 수행하면서, 센서 시스템 (210) 은 기준 발생을 검출한다. 센서 시스템 (210) 이 ALS 기능을 수행하도록 구성되는 하나의 예에서, 센서 시스템 (210) 은 기준 발생을 검출하기 위하여 이용될 수도 있는 적어도 하나의 더욱 저-전력 광학 센서 판독을 생성한다. 예를 들어, 더욱 저-전력 광학 센서 판독은 주변 광의 양에 있어서의 변경을 표시할 수도 있고, 센서 시스템 (210) 은 광의 감지된 레벨이 기준 임계치를 초과하는 레이트에서 변경되거나 기준 임계치를 초과하는 레이트에서 컬러를 변경할 때, 더욱 저-전력 광학 센서 판독에 기초하여 기준 발생을 검출할 수도 있다.
또 다른 예에서, 센서 시스템 (210) 은 PD 기능을 수행하도록 구성된다. 이 예에서, 센서 시스템 (210) 은 발광 다이오드 (LED) 와 같은 광 에미터 (light emitter) 를 더 포함하고, 센서 어레이 유닛 (212) 은 반사된 광의 양을 검출하도록 구성된다. 검출된 반사된 광의 양이 임계치를 초과할 때, 센서 시스템 (210) 은 기준 발생을 검출한다. 예를 들어, 센서 시스템 (210) 은 객체가 센서 시스템 (210) 근처에 있다는 것을 표시하는 기준 발생을 검출할 수도 있다. 하나의 양태에서, 검출된 반사된 광의 양이 임계치 미만일 때, 센서 시스템 (210) 은 기준 발생을 검출할 수도 있다. 예를 들어, 센서 시스템 (210) 은 객체가 더 이상 센서 시스템 (210) 근처에 있지 않다는 이벤트를 검출할 수도 있다.
하나의 예에서, 센서 시스템 (210) 은 CD 기능을 수행하도록 구성된다. 변경 검출은 임계치를 초과하는 장면에서의 변경을 검출할 수 있고, 여기서, 이러한 장면 변경은 예를 들어, 도 7 의 블록 (720) 에서 설명된 바와 같이, 기준 발생에 대응한다. 도 2b 를 참조하면, 일부 구현예들에서, 하드웨어 스캐닝 윈도우 어레이 (238), CV 연산 하드웨어 (242), 캐스케이드 분류기 (244), 및/또는 전용 마이크로프로세서 (216), 또는 그 임의의 조합은 디스에이블될 수도 있거나 저-전력 모드에 있을 수도 있다. 여기에서 이용된 바와 같이, 디스에이블은, 그 기능성이 사용되고 있지 않거나 그 기능성이 그 정상 동작과 비교하여 극적으로 감소될 때에 이러한 컴포넌트들이 감소된 전력 상태에 있다는 것을 표시하도록 의도된다. 그러므로, 이러한 상태에서, 센서 시스템은 CV 특징 연산 및 추후의 CV 동작들을 수반하는 정상 동작과 비교하여 더욱 저-전력 모드에서 동작할 수 있다. 센서 어레이 유닛 (212) 에서의 픽셀들의 대형 블록들에 대한 픽셀 값들은 예를 들어, 서브그룹들 (610) 에 대응하는 도 6 블록들에서 예시된 바와 같이, 각각의 블록에서의 모든 픽셀 값들을 나타내는 단일 값을 얻기 위하여 합산될 수 있다. 이러한 합산은, 2 차원 적분 하드웨어 (236) 에 의해 제공되고, 예를 들어, 적분 이미지 프레임 버퍼 (도 2b 에서 도시되지 않음) 내에 저장된 적분 이미지를 이용하여 컴퓨팅될 수 있다. 그 다음으로, 블록 합산들은 시간에 있어서 프레임마다 비교될 수 있다. 주어진 블록에서, 이전의 프레임과 비교한 현재의 프레임으로부터의 합산 값에 있어서의 변경이 기준 변경 임계치보다 더 클 경우, 장면 변경 기준 발생이 검출될 수 있다. 대안적인 구현예에서, 장면 변경 기준 발생은 기준 최소 수의 블록들이 이러한 변경을 등록할 경우에만 검출될 것이다. 예를 들어, 81 블록들로 분할된 센서 엘리먼트 어레이를 갖는 시스템 (픽셀들은 9 대 9 어레이로 그룹화되고, 여기서, 9 대 9 어레이에서의 각각의 블록은 픽셀들의 서브어레이 (subarray) 를 포함함) 에서는, 각각의 블록에 있어서의 변경이 위에서 설명된 바와 같이 검출될 수 있고, 장면 변경 기준 발생은 3 개, 4 개, 또는 또 다른 수의 블록들이 변경을 등록할 경우에 오직 트리거링될 수도 있다. 장면 변경을 검출할 시에, 센서 시스템 (210) 은 하드웨어 스캐닝 윈도우 어레이 (238), CV 연산 하드웨어 (242), 캐스케이드 분류기 (244), 및/또는 전용 마이크로프로세서 (216) 의 임의의 조합을 추가로 활성화할 수 있다. 위에서 설명된 CD 동작은 적분 이미지 또는 2 차원 적분 하드웨어의 이용 없이 구현될 수도 있지만, 합산된 블록 값들을 결정하기 위하여 다른 하드웨어를 이용할 수도 있다는 것이 이해된다.
하나의 예에서, 센서 시스템 (210) 은 MD 기능을 수행하도록 구성될 수 있다. 이 예에서, 센서 시스템 (210) 은, 2x2 픽셀 해상도보다 더 크지만, 센서 어레이 유닛 (212) 에서의 픽셀들의 최대 해상도보다 더 작은 감소된 해상도를 가지도록 센서 어레이 유닛 (212) 을 구성한다. 이 예에서, 센서 시스템 (210) 은 상이한 유효 픽셀들에서 감지된 광에서의 상대적인 변경들을 검출하도록 구성된다. 이러한 예에서, 센서 시스템 (210) 은 유효 픽셀들 (예컨대, 도 6 에서 도시된 바와 같은 서브그룹들 (610)) 의 각각에서 감지된 광의 양을 분석하고, 적어도 하나의 다른 유효 픽셀에 관련된 각각의 유효 픽셀에서 감지된 광의 양 사이의 차이들의 제 1 세트를 결정한다. 그 다음으로, 센서 시스템 (210) 은 유효 픽셀들의 각각에서 감지된 광의 제 2 양을 검출하고, 적어도 하나의 다른 유효 픽셀에 관련된 각각의 유효 픽셀에서 감지된 광의 양 사이의 차이들의 제 2 세트를 결정한다. 그 다음으로, 센서 시스템 (210) 은 제 1 세트 및 제 2 세트에 기초하여 차이들에 있어서의 변경을 결정한다. 센서 시스템 (210) 은 차이들에 있어서의 변경이 기준 모션 임계치를 초과할 경우에 기준 발생을 검출한다. 하나의 양태에서, 제 1 유효 픽셀이 제 2 유효 픽셀에 관련된 감지된 광에 있어서의 포지티브 변경을 표시하고, 추후에, 제 1 유효 픽셀이 제 2 유효 픽셀에 관련된 감지된 광에 있어서의 네거티브 변경을 표시할 경우에, 센서 시스템 (210) 은 모션 이벤트를 검출할 수도 있다.
그 다음으로, 블록 (720) 에서의 기준 발생의 검출은 적어도 하나의 더욱 고-전력 동작의 개시를 트리거링할 수 있다. 블록 (730) 에서, 센서 시스템 (210) 은 전용 CV 연산 하드웨어를 인에이블함으로써 더욱 고-전력 동작을 개시한다. 예를 들어, 센서 시스템 (210) 은 얼굴 검출 동작 또는 얼굴 인식 동작, 또는 제스처 인식 동작을 개시할 수도 있다. 대안적으로, 센서 시스템 (210) 은 센서 시스템 (210) 에 의해 캡처된 이미지들에서의 기준 객체의 존재를 검출하기 위하여 객체 검출 동작을 개시할 수도 있다.
더욱 고-전력 동작을 트리거링하는 기준 발생이 PD 동작인 상황들에서, 센서 시스템 (210) 에 의해 캡처된 이미지들에서의 기준 객체의 검출은 기준 객체의 근접성을 표시할 수 있다. 이에 따라, 이 예의 방법에서, 더욱 고-전력 동작은 더욱 저-전력 동작과 더욱 고-전력 동작 사이의 일방향 종속 관계에 기초한다. 이 예에서의 일방향 종속 관계는 더욱 저-전력 동작이 기준 발생을 검출한 후에 오직 발생하는 더욱 고-전력 동작에 관련된다.
또한, 더욱 고-전력 동작은 적어도 하나의 더욱 저-전력 광학 센서 판독을 평가하는 것에 기초할 수도 있다. 예를 들어, 위에서 논의된 바와 같이, 센서 시스템 (210) 은 더욱 저-전력 ALS 동작을 수행할 수도 있고, 더욱 고-전력 동작을 개시할 수도 있다. 일부 예들에서, 더욱 고-전력 동작은 또한, 더욱 저-전력 ALS 동작으로부터의 센서 판독을 평가할 수도 있다. 예를 들어, 더욱 고-전력 동작은 얼굴 검출 또는 인식 기능을 포함할 수도 있다. 하나의 양태에서, 센서 시스템 (210) 은 주변 광 레벨을 결정하기 위하여 ALS 센서 판독을 평가할 수도 있고, 얼굴 인식 기능을 수행할 때에 노출 시간 또는 개구 크기를 조절할 수도 있다. 또는, 일부 양태들에서, PD 기능은 더욱 고-전력 동작이 검출된 객체까지의 추정된 범위를 결정하기 위하여 평가할 수도 있는 센서 판독을 생성할 수도 있다. 일부 양태들에서, 센서 시스템 (210) 은 다른 또는 다수의 더욱 고-전력 동작들을 개시할 수도 있다. 일부 양태들에서, 센서 시스템 (210) 은 방법 (700) 을 반복적으로 실행할 수도 있다. 예를 들어, 더욱 고-전력 동작을 수행한 후, 센서 시스템 (210) 은 방법 (700) 을 재시작할 수도 있고, 더욱 저-전력 동작을 개시함으로써 블록 (710) 에서 기능성을 수행할 수도 있다. 장면 변경을 검출할 시에, 예를 들어, 센서 시스템 (210) 은 하나 이상의 더욱 고-전력 동작들을 수행하기 위하여 추가적인 컴포넌트들 (예컨대, 하드웨어 스캐닝 윈도우 어레이 (238), CV 연산 하드웨어 (242), 캐스케이드 분류기 (244), 및/또는 마이크로프로세서 (216)) 의 임의의 조합을 추가로 활성화할 수 있다. 그 다음으로, 센서 시스템 (210) 은 일단 더욱 고-전력 동작들이 수행되면, 더욱 저-전력 모드로 다시 복귀할 수도 있다.
도 7 의 방법 (700) 은 더욱 저-전력 및 더욱 고-전력 동작들의 시퀀스로서 설명되었지만, 일부 예들에서, 센서 시스템 (210) 은 더욱 저-전력 및 더욱 고-전력 동작들의 양자를 실질적으로 동시에 수행할 수도 있다. 예를 들어, 블록 (730) 에서, 더욱 고-전력 동작을 수행한 후, 센서 시스템 (210) 은 더욱 저-전력 동작을 개시할 수도 있지만, 더욱 고-전력 동작들을 수행하는 것을 계속할 수도 있다. 이에 따라, 일부 예들에서, 블록 (710) 에서, 센서 시스템 (210) 은 더욱 저-전력 동작을 수행하고 있지만, 센서 시스템 (210) 은 또한, 더욱 고-전력 동작들과 같은 추가적인 기능들을 수행하고 있을 수도 있고, 더욱 저-전력 동작을 개시함으로써, 센서 시스템 (210) 은 더욱 저-전력 동작들을 배타적으로 수행하고 있지 않을 수도 있다. 또한, 센서 시스템 (210) 이 블록 (730) 에서 더욱 고-전력 동작을 개시할 때, 센서 시스템 (210) 은 일부 예들에서, 더욱 저-전력 동작들을 수행하는 것을 계속할 수도 있다.
도 8 은 센서 시스템을 광학 센서로서 이용하기 위한 일 예의 방법 (800) 을 도시한다. 다시, 방법 (800) 은 도 2a 에서 도시된 일 예의 센서 시스템 (210) 에 대하여 논의될 것이지만, 이러한 센서 시스템으로 제한되지는 않는다.
방법 (800) 은 블록 (810) 에서 시작되고, 여기서, 센서 시스템 (210) 은 도 7 의 방법 (700) 에 대하여 위에서 논의된 바와 같이 더욱 저-전력 동작을 개시한다. 블록 (820) 에서, 더욱 저-전력 동작을 수행하는 동안, 센서 시스템 (210) 은 도 7 의 방법 (700) 에 대하여 위에서 논의된 바와 같이 기준 발생을 검출한다. 기준 발생을 검출한 후, 방법 (800) 은 블록 (830) 으로 진행한다.
블록 (830) 에서, 센서 시스템 (210) 은 더욱 고-전력 동작에 대한 파라미터 값을 제공한다. 하나의 예에서, 센서 시스템 (210) 은 주변 광의 레벨을 더욱 고-전력 동작에 대한 구성 세팅으로서 제공한다. 이 예에서, 센서 시스템 (210) 은 파라미터 값을, 광 강도 또는 자동-노출 파라미터, 또는 이미지에 대한 적분 시간과 연관된 구성 세팅으로서 제공할 수도 있다. 또 다른 예에서, 센서 시스템 (210) 은 객체까지의 추정된 거리를 제공한다. 하나의 이러한 예에서, 센서 시스템 (210) 이 PD 동작을 수행하였고 객체를 검출하였을 경우, 센서 시스템 (210) 은 객체까지의 추정된 거리 또는 검출된 반사된 광의 양을 제공한다. 또 다른 예에서, 센서 시스템 (210) 은 모션의 방향을 더욱 고-전력 동작에 제공한다. 하나의 이러한 예에서, 센서 시스템 (210) 은 변경을 등록하는 블록 (상기 CD 의 논의를 참조) 의 더욱 저-전력 MD 동작 및/또는 이동을 수행하고 시간에 걸쳐 감지된 광의 상대적인 양들에서의 변경들에 기초하여 모션의 방향을 검출하도록 구성될 수도 있다. 모션의 방향은 제스처 검출 동작과 같은 더욱 고-전력 동작에 제공될 수도 있다.
일부 실시형태들에서, 센서 시스템 (210) 은 센서 시스템 (210) 에 의해 관측된 장면이 실내 장면 또는 실외 장면일 것 같은지 여부를 표시하는 파라미터를 제공하도록 구성될 수도 있다. 예를 들어, 주변 광의 레벨이 미리 정의된 임계치를 초과할 경우, 센서 시스템 (210) 은 장면이 실외 장면인 것을 표시하는 파라미터를 제공할 수도 있는 반면, 주변 광이 제 2 미리 정의된 임계치 미만일 경우, 센서 시스템 (210) 은 장면이 장면내인 것으로 표시하는 파라미터를 제공할 수도 있다. 일부 예들에서, 실내/실외 결정은 하나 이상의 빈도에서 검출된 피크 강도에 기초하여 행해질 수도 있다.
일부 실시형태들에서, 센서 시스템 (210) 은 장면에서의 관심 영역을 표시하는 파라미터를 제공하도록 구성될 수도 있다. 하나의 예에서, 센서 시스템 (210) 은 3x3 유효 픽셀들의 감소된 해상도에서 동작하도록 센서 어레이 유닛 (212) 을 구성하였다. 이러한 예에서, 센서 시스템 (210) 은 주변 광에서의 검출된 변경들, 근접성 검출 기준 발생, 유효 픽셀들 중의 하나 이상에서의 변경 검출, 및/또는 모션의 검출된 방향에 기초할 수도 있는 관심 유효 픽셀을 결정할 수도 있다. 하나의 예에서, 센서 시스템 (210) 은 기준 발생 빈도와 연관된 파라미터를 제공하도록 구성될 수도 있다. 이 예에서, 센서 시스템 (210) 은 이벤트의 다수의 발생들을 검출하고, 이벤트가 발생하는 빈도를 결정한다.
일부 실시형태들에 따르면, 파라미터는 더욱 고-전력 동작을 결정하기 위하여 이용될 수도 있다. 하나의 예에서, 파라미터는 CV 특징 선택 동작을 표시할 수도 있다. 예를 들어, 파라미터는 광의 강도에 기초하여 LBP 기능, HSG 기능, 또는 CV 기능을 이용할 것인지 여부를 표시할 수도 있다. 센서 시스템 (210) 이 파라미터를 제공한 후, 방법은 블록 (840) 으로 진행한다.
블록 (840) 에서, 센서 시스템 (210) 은 위에서 논의된 바와 같이 (블록 (830) 에서 제공된) 파라미터를 이용하여 더욱 고-전력 동작을 개시한다.
도 7 의 방법 (700) 에 대하여 위에서 논의된 바와 같이, 도 8 의 방법 (800) 은 더욱 저-전력 및 더욱 고-전력 동작들의 시퀀스로서 설명되었지만, 일부 예들에서, 센서 시스템 (210) 은 더욱 저-전력 및 더욱 고-전력 동작들의 양자를 동시에 실질적으로 수행할 수도 있다. 예를 들어, 블록 (840) 에서, 더욱 고-전력 동작을 수행한 후, 센서 시스템 (210) 은 더욱 저-전력 동작을 개시할 수도 있지만, 더욱 고-전력 동작을 수행하는 것을 계속할 수도 있다. 이에 따라, 일부 예들에서, 블록 (810) 에서, 센서 시스템 (210) 은 더욱 저-전력 동작을 수행하고 있지만, 센서 시스템 (210) 은 또한, 더욱 고-전력 동작들과 같은 추가적인 기능들을 수행하고 있을 수도 있고, 더욱 저-전력 동작을 개시함으로써, 센서 시스템 (210) 은 더욱 저-전력 동작들을 배타적으로 수행하고 있지 않을 수도 있다. 또한, 센서 시스템 (210) 이 블록 (840) 에서 더욱 고-전력 동작을 개시할 때, 센서 시스템 (210) 은 일부 예들에서, 더욱 저-전력 동작들을 수행하는 것을 계속할 수도 있다. 여기서, 더욱 저-전력 동작들을 수행하기 위한 전용 CV 연산 하드웨어를 디스에이블하는 것이 아니라, 센서 시스템 (210) 은 인에이블된 전용 CV 연산 하드웨어로 동작하는 것을 계속할 수도 있다. 그러나, 더욱 저-전력 동작들은 전용 CV 연산 하드웨어를 간단하게 사용하지 않을 수도 있다.
도 9 는 센서 시스템을 광학 센서로서 이용하기 위한 일 예의 방법을 도시한다. 본원에서 설명된 다른 방법들에서와 같이, 방법 (900) 은 도 2a 에서 도시된 일 예의 센서 시스템 (210) 에 대하여 논의될 것이지만, 이러한 센서 시스템으로 제한되지는 않는다.
방법 (900) 은 블록 (910) 에서 시작되고, 여기서, 센서 시스템 (210) 은 위에서 논의된 바와 같이 더욱 고-전력 동작을 개시한다. 블록 (920) 에서, 센서 시스템 (210) 은 블록 (910) 에서의 더욱 고-전력 동작에 기초하여, 얼굴 검출 또는 얼굴 인식과 같은 기준 발생을 검출한다. 기준 발생을 검출한 후, 방법 (900) 은 블록 (930) 으로 진행한다.
블록 (930) 에서, 센서 시스템 (210) 은 더욱 저-전력 동작에 대한 파라미터를 제공한다. 하나의 실시형태에서, 더욱 고-전력 동작은 센서 시스템 (210) 근처의 객체를 검출할 수도 있고, 일부 예들에서, 시스템들은 또한, 객체까지의 추정된 거리를 결정할 수도 있다. 센서 시스템 (210) 은 객체의 존재를 표시하는 파라미터를 포함하는 이벤트를 더욱 저-전력 동작에 제공할 수도 있거나, 또한 (또는 그 대신에) 객체까지의 거리를 표시하는 파라미터를 제공할 수도 있다. 이러한 파라미터는 PD 기능을 보조하거나 증대시키기 위하여 더욱 저-전력 동작에 의해 채용될 수도 있다. 예를 들어, PD 기능은 예컨대, 임계치 강도 레벨을 확립하거나 조절함으로써, 파라미터에 기초하여 센서 근처의 객체를 더욱 정확하게 검출할 수 있을 수도 있다.
일부 실시형태들에서, 센서 시스템 (210) 은 광 소스에 대한 방향을 표시하는 파라미터를 제공할 수 있다. 예를 들어, 더욱 고-전력 동작은 조명된 객체 또는 반사 객체, 및 객체에 대한 로케이션 또는 방향을 검출할 수도 있다. 센서 시스템 (210) 은 더욱 고-전력 동작에 기초하여, 광 소스에 대한 방향을 표시하는 파라미터를 제공할 수도 있다. 더욱 저-전력 동작은 예를 들어, ALS 를 수행할 때에 이 파라미터를 채용할 수도 있다. 하나의 예에서, 더욱 고-전력 동작은 센서 시스템 (210) 에 의해 관측된 장면이 실내 또는 실외 장면인 것으로 결정할 수도 있다. 센서 시스템 (210) 은 파라미터를 더욱 고-전력 동작에 제공할 수도 있다. 예를 들어, 파라미터는 예컨대, 주변 조명에서의 변경들을 검출하기 위한 임계치와 연관된 정보를 제공하여 ALS 기능을 보조함으로써, 더욱 저-전력 동작을 보조할 수도 있거나 증대시킬 수도 있다.
일부 실시형태들에서, 일 예의 센서 시스템 (210) 은 센서 시스템 (210) 에 의해 관측된 장면에서 가시적인 방의 점유 또는 사람의 수의 표시자를 표시하는 파라미터를 제공한다. 예를 들어, 더욱 고-전력 동작은 센서 시스템 (210) 에 의해 관측된 장면에서, 하나 이상의 얼굴들 또는 하나 이상의 사람을 검출할 수도 있다. 그 다음으로, 센서 시스템 (210) 은 장면에서의 사람의 수 또는 얼굴들을 표시하는 파라미터, 또는 영역의 점유의 레벨의 표시자를 제공할 수도 있다. 하나의 예에서, MD 기능과 같은 더욱 저-전력 동작은 모션을 더욱 양호하게 검출하거나, 모션에 대한 MD 기능의 민감도를 감소시키기 위하여 이러한 정보를 이용할 수도 있다. 예를 들어, 센서 시스템 (210) 이 점유의 하이 레벨을 표시하는 파라미터를 제공할 경우, MD 기능은 모션의 더욱 강한 표시를 요구하는 미리 결정된 임계치로 스위칭할 수도 있고, 이에 따라, MD 기능은 모션에 덜 민감하다. 대안적으로, 센서 시스템 (210) 이 점유의 로우 레벨을 표시하는 파라미터를 제공할 경우, MD 기능은 모션 이벤트들을 검출할 때에 그 민감도를 증가시킬 수도 있다. 또 다른 예에서, 더욱 고 전력 동작은 위에서 설명된 CD 동작에 대한 임계치 및/또는 최소 수의 블록들을 설정할 수도 있다.
블록 (940) 에서, 센서 시스템 (210) 은 파라미터를 이용하여 더욱 저-전력 동작을 개시한다. 예를 들어, 센서 시스템 (210) 은 도 7 및 도 8 에 대하여 위에서 설명된 바와 같이 더욱 저-전력 동작을 개시할 수도 있다. 이 예에서, 더욱 저-전력 동작은 개시 후에, 파라미터를 이용하도록 구성된다. 예를 들어, 위에서 논의된 바와 같이, PD 기능은 예컨대, 임계치 강도 레벨을 확립하거나 조절함으로써, 파라미터에 기초하여 센서 근처의 객체를 더욱 정확하게 검출할 수 있을 수도 있다. 하나의 예에서, 파라미터는 예컨대, 주변 조명에서의 변경들을 검출하기 위한 임계치와 연관된 정보를 제공하여 ALS 기능을 보조함으로써, 더욱 저-전력 동작을 보조할 수도 있거나 증대시킬 수도 있다.
일부 실시형태들은 방법 (900) 을 반복적으로 실행할 수도 있다. 예를 들어, 더욱 고-전력 동작을 수행한 후, 센서 시스템 (210) 은 방법 (900) 을 재시작할 수도 있고, 블록 (910) 에서 더욱 저-전력 동작을 개시할 수도 있다.
도 7 및 도 8 의 방법들 (700, 800) 에 대하여 위에서 논의된 바와 같이, 도 9 의 방법 (900) 은 더욱 고-전력 및 더욱 저-전력 동작들의 시퀀스로서 설명되었지만, 일부 예들에서, 센서 시스템 (210) 은 더욱 저-전력 및 더욱 고-전력 동작들의 양자를 동시에 실질적으로 수행할 수도 있다. 예를 들어, 블록 (940) 에서, 더욱 저-전력 동작을 수행한 후, 센서 시스템 (210) 은 더욱 고-전력 동작을 개시할 수도 있지만, 더욱 저-전력 동작들을 수행하는 것을 계속할 수도 있다. 이에 따라, 일부 예들에서, 블록 (910) 에서, 센서 시스템 (210) 은 더욱 고-전력 동작을 수행하고 있지만, 센서 시스템 (210) 은 또한, 더욱 저-전력 동작들과 같은 추가적인 기능들을 수행하고 있을 수도 있고, 더욱 고-전력 동작을 개시함으로써, 센서 시스템 (210) 은 더욱 고-전력 동작들을 배타적으로 수행하고 있지 않을 수도 있다. 또한, 센서 시스템 (210) 이 블록 (940) 에서 더욱 저-전력 동작을 개시할 때, 센서 시스템 (210) 은 일부 예들에서, 더욱 고-전력 동작들을 수행하는 것을 계속할 수도 있다.
일부 실시형태들에서는, 하나 이상의 방법들이 조합될 수도 있다. 예를 들어, 도 7 또는 도 8 의 방법들은 도 9 의 방법과 조합될 수도 있다. 예를 들어, 도 7 의 방법 (700) 의 블록 (730) 을 완료한 후, 방법은 도 9 의 방법 (900) 의 블록 (920) 으로 진행할 수도 있다. 하나의 예에서, 도 8 의 방법 (800) 의 블록 (840) 을 완료한 후, 방법은 도 9 의 방법 (900) 의 블록 (920) 으로 진행할 수도 있다. 여전히 추가의 조합들이 마찬가지로 고려된다.
도 10a 는 센서 시스템 (210) 에 의해 수행될 수도 있는 컴퓨터-시각 연산들 및 더욱 저-전력 광학 센서 판독들에 대한 일 예의 상태도를 도시한다. 도 10a 는 2 개의 상태들, 더욱 저-전력 동작 (들) 상태 (1010) 및 더욱 고-전력 동작 (들) 상태 (1020) 를 포함한다. 더욱 저-전력 동작 (들) 상태 (1010) 에서, 센서 시스템 (210) 은 하나 이상의 더욱 저-전력 동작들을 수행하도록 구성되고, 하나 이상의 센서 판독들을 획득할 수도 있다. 더욱 고-전력 동작 (들) 상태 (1020) 에서, 센서 시스템 (210) 은 컴퓨터-시각 연산들 및 동작들과 같은 하나 이상의 더욱 고-전력 동작들을 수행하도록 구성되고, 하나 이상의 센서 판독들을 획득할 수도 있다. 일부 실시형태들에서, 센서 시스템 (210) 은 동시에 둘 모두가 아니라, 더욱 저-전력 동작 (들) 상태 (1010) 또는 더욱 저-전력 동작 (들) 상태 (1020) 의 어느 하나에 있도록 구성된다. 하나의 이러한 예에서, 센서 시스템 (210) 은 단계들 사이의 일방향 종속 관계를 확립할 수도 있는 센서 판독들에 기초하여 하나의 상태로부터 다른 것으로 천이하도록 구성된다. 예를 들어, 하나의 예에서, 더욱 고-전력 동작의 실행은 더욱 저-전력 동작으로부터의 센서 판독에 종속적이거나, 더욱 저-전력 동작의 실행은 더욱 고-전력 동작으로부터의 센서 판독에 종속적이다.
그러나, 일부 예들에서, 센서 시스템 (210) 은 양자의 상태들 (1010, 1020) 에서 실질적으로 동시에 동작하도록 구성될 수도 있다. 예를 들어, 하나의 예에서, 센서 시스템 (210) 은 복수의 센서 어레이 유닛들 (212) 을 포함할 수도 있고, 그 하나는 더욱 저-전력 동작들을 수행하도록 구성될 수도 있고, 또 다른 것은 더욱 고-전력 동작들을 수행하도록 구성될 수도 있다. 일부 예들에서, 센서 시스템 (210) 은 센서 어레이 유닛 (212) 을 재분할할 수도 있어서, 센서 어레이 유닛 (212) 의 부분이 더욱 저-전력 (또는 동작들) 을 수행하도록 구성되는 반면, 센서 어레이 유닛 (212) 의 또 다른 부분이 더욱 고-전력 동작 (또는 동작들) 을 수행하도록 구성된다. 센서 시스템 (210) 이 양자의 상태들 (1010, 1020) 에서 실질적으로 동시에 동작하도록 구성되는 하나의 예에서, 일방향 종속 관계는 다른 상태에서의 특정 동작의 개시를 야기시키거나 다른 상태에서의 동작의 재구성을 야기시키는 상태들 중의 하나로부터의 센서 판독에 기초하여 확립될 수도 있다. 일부 실시형태들에서, 하나의 상태에서의 동작은 도 10b 에서 보일 수도 있는 바와 같이, 다른 상태에서의 동작에 의해 이용가능한 하나 이상의 파라미터 값들을 제공할 수도 있다.
도 10b 는 센서 시스템 (210) 에 의해 수행될 수도 있는 컴퓨터-시각 연산들 및 더욱 저-전력 광학 센서 판독들에 대한 일 예의 상태도를 도시한다. 도 10b 는 도 10a 에 대하여 위에서 설명된 상태들을 포함하지만, 또한, 상태들 (1010, 1020) 의 하나 또는 양자에서의 이벤트 검출들에 응답하여 상태들 (1010, 1020) 사이에서 통과하는 상태 천이들 또는 정보를 포함한다. 도 10a 에서의 상태도에서와 같이, 센서 시스템 (210) 은 2 개의 상태들 (1010, 1020) 사이에서 시퀀스로 천이할 수도 있거나, 양자의 상태들 (1010, 1020) 에서 동시에 동작할 수도 있다. 센서 시스템 (210) 은 상태들의 각각에서 이벤트들을 검출하도록 구성될 수 있다. 기준 발생들의 예들은 이 개시물에서 더 이전에 설명된다. 도 10b 에서 도시된 바와 같이, 센서 시스템 (210) 은 하나의 상태에서의 기능으로부터 다른 상태에서의 하나 이상의 기능들로의 검출된 이벤트에 기초하여 하나 이상의 파라미터 값들을 제공한다.
예를 들어, 센서 시스템 (210) 이 더욱 저-전력 동작 상태 (1010) 에서 PD 동작을 수행하고 있고 센서 시스템 (210) 근처의 객체를 검출할 경우, 센서 시스템 (210) 은 객체가 검출된다는 것을 표시하는 플래그 값 또는 객체까지의 추정된 범위와 같은 파라미터 값을, 얼굴 검출 기능과 같은 더욱 고-전력 동작 상태 (1020) 에서의 컴퓨터-시각 기능에 제공한다. 일부 상황들에서, 센서 시스템 (210) 은 또한, 더욱 저-전력 동작 상태 (1010) 로부터 더욱 고-전력 동작 상태 (1020) 로 천이할 수도 있지만; 그러나, 센서 시스템 (210) 은 하나 이상의 파라미터 값들을 이용하여 더욱 고-전력 동작 (들) 상태 (1020) 에서 동작들을 실행하는 것을 활성화할 수도 있거나 계속할 수도 있다. 센서 시스템 (210) 은 또한, 더욱 고-전력 동작 상태 (1020) 에서 이벤트들을 검출할 수도 있고 하나 이상의 파라미터 값들을 더욱 저-전력 동작에 제공할 수도 있고, 센서 시스템은 더욱 저-전력 동작 상태로 천이할 수도 있거나, 하나 이상의 파라미터 값들을 이용하여 더욱 저-전력 동작 (들) 상태 (1020) 에서 동작들을 실행하는 것을 활성화할 수도 있거나 계속할 수도 있다.
도 11a, 도 11b, 및 도 11c 는 일부 실시형태들에 따라, 복수의 센서 엘리먼트들로부터의 센서 판독들을 CV 특징들로 변환하는 프로세스를 예시한다.
도 11a 는 히스토그램을 생성하고 특징들을 검출하기 위하여 고려 중인 센서 어레이 유닛 (예컨대, 도 2a 또는 도 2b 의 센서 어레이 유닛 (212)) 의 복수의 센서 엘리먼트들로부터의 센서 판독들 (윈도우 (1102)) 의 그룹을 예시한다.
도 11b 는 LBP 라벨을 생성하기 위하여 중심 센서 엘리먼트 (1104) 에 대한 2 진 임계치 값들을 생성하는 프로세스를 예시한다. 도 2b 의 CV 연산 하드웨어 (242) 는 LBP 라벨을 컴퓨팅하기 위한 하드웨어를 포함할 수 있다. 중심 센서 엘리먼트에 대하여 생성된 라벨은 2 진 값 1111000 에 의해 표현될 수도 있다. 유사하게, LBP 라벨은 윈도우 (1102) 로부터의 9 개의 센서류 엘리먼트들의 각각에 대하여 생성된다. 각각의 라벨은 대상 센서 엘리먼트의 관점으로부터의 CV 특징의 표시를 제공할 수도 있다. 라벨을 생성하기 위한 임계화는 센서 어레이에서의 다수의 대상 센서 엘리먼트들에 대응하는 신호들에 대하여 반복될 수도 있다. 도 11b 에서 예시된 픽셀-레벨 LBP 는 멀티-블록 LBP 를 포함하도록 확대될 수 있고, 여기서, 예시된 2 진 임계치 값들은 블록에서의 하나 이상의 대상 센서 엘리먼트들과 연관된 값들의 합과 같은 하나 이상의 대상 센서 엘리먼트들의 블록에 대응하는 값을, 그 이웃하는 센서 엘리먼트 블록들과 비교함으로써, 하나 이상의 대상 센서 엘리먼트들의 블록에 대하여 생성된다. 센서 엘리먼트들의 블록들의 각각에 대응하는 값들의 연산들은 적분 이미지를 컴퓨팅함으로써 가능하게 될 수 있다. 유사하게, 대상 센서 엘리먼트와 이웃하는 센서 엘리먼트들 사이의 차이에 따라 3 개의 출력들을 제공하는 로컬 3 진 패턴들 (LTP) 과 같은 LBP 의 확장들은 또한, 유사하게 컴퓨팅될 수도 있다. 예를 들어, LTP 의 하나의 구현예에서, 출력은 이웃하는 센서 엘리먼트에 대응하는 신호가 대상 센서 엘리먼트에 대응하는 신호 플러스 임계치보다 더 클 경우에 1 이고, 출력은 이웃하는 센서 엘리먼트에 대응하는 신호가 대상 센서 엘리먼트에 대응하는 신호와 비교하여 임계치 내에 있을 경우에 제로 (zero) 이고, 출력은 이웃하는 센서 엘리먼트에 대응하는 신호가 대상 센서 엘리먼트에 대응하는 신호 마이너스 임계치보다 더 작을 경우에 음의 1 이다.
도 11c 는 예를 들어, 도 2b 의 하드웨어 스캐닝 윈도우 어레이 (238) 내에 저장된 샘플 윈도우인 윈도우로부터의 센서 엘리먼트들의 각각에 대한 복수의 라벨들로부터 생성된, 예를 들어, 센서 엘리먼트 어레이로부터의 센서 엘리먼트들의 일부 서브세트를 나타내는 윈도우인 윈도우에 대한 정규화된 히스토그램을 예시한다. 도 11c 에서 도시된 바와 같이, 윈도우 (1102) 로부터의 센서 판독들에 대한 LBP 라벨들의 각각은 예를 들어, 256 슬롯들을 갖는 히스토그램 상의 어딘가에 떨어질 수도 있다. 따라서, 예를 들어, 대상 센서 엘리먼트를 그 8 개의 이웃들과 비교할 때, 8 비트 수가 생성될 것이고, 256 개의 상이한 LBP 라벨들이 가능하다는 것을 의미할 것이다. 히스토그램은 주어진 LBP 라벨들의 각각이 윈도우에서 실제적으로 생성되었던 횟수를 나타낼 수 있다. 얼굴이 윈도우에서 존재하는지를 결정하기 위하여, 생성된 히스토그램은 얼굴의 기준 히스토그램과 비교될 수 있다. 생성된 히스토그램과 기준 히스토그램 사이의 교차점이 컴퓨팅될 수 있고, 스칼라 합은 교차점의 합산으로부터 생성될 수 있다. 스칼라 합이 임계치보다 더 클 경우, 주어진 확률까지, 얼굴은 윈도우 내에서 검출된다. 기준 히스토그램 및 임계치는 일반적으로, 이 예에서, 샘플 얼굴들 및 샘플 비-얼굴들 및 그 LBP 히스토그램들의 데이터세트에 대한 머신 학습 알고리즘들을 이용하여 훈련 국면에서 결정된다. 일단 기준 히스토그램 및 임계치가 훈련 국면에서 결정되면, 동일한 아키텍처에 대하여, 그것들은 예를 들어, 도 2a 또는 도 2b 의 마이크로프로세서 (216) 에서 프로그래밍될 수 있거나, 대안적으로, 상기 히스토그램 프로세스는 이미지 내에서 주어진 윈도우에 대한 히스토그램을 컴퓨팅하고 얼굴 또는 다른 객체가 상기 도 2b 에서 논의된 캐스케이드 분류기 하드웨어 (244) 와 유사한 윈도우 내에 존재하는지 여부를 결정하기 위한 전용 하드웨어에 의해 프로그래밍될 수도 있다. LBP 라벨들은 히스토그램 생성을 위한 LBP 라벨들을 이용하는 것 대신에, 또는 이에 추가하여, 도 2b 에서 논의된 바와 같이, 객체 검출을 위한 캐스케이드 분류기에 의해 이용될 수 있다는 것이 이해된다.
도 12 는 위에서 설명된 바와 같이, 센서 시스템 (210) 을 사용할 수 있는 이동 디바이스 (105) 의 실시형태를 예시한다. 도 12 는 그 임의의 것 또는 전부가 적절하게 사용될 수도 있는 다양한 컴포넌트들의 일반화된 예시를 제공하도록 오직 의도된 것이라는 것에 주목해야 한다. 일부 사례들에서, 도 12 에 의해 예시된 컴포넌트들은 단일 물리적 디바이스로 국소화될 수 있고 및/또는 상이한 물리적 로케이션들에서 배치될 수도 있는 다양한 네트워크화된 디바이스들 사이에서 분산될 수 있다는 것이 주목될 수 있다.
이동 디바이스 (105) 는 버스 (1205) 를 통해 전기적으로 결합될 수 있는 (또는 그렇지 않을 경우에, 적절하게 통신할 수도 있는) 하드웨어 엘리먼트들을 포함하는 것으로 도시되어 있다. 하드웨어 엘리먼트들은, 하나 이상의 범용 프로세서들, (디지털 신호 프로세싱 (digital signal processing; DSP) 칩들, 그래픽 가속 프로세서들, 애플리케이션 특정 집적 회로 (application specific integrated circuit; ASIC) 들, 및/또는 등등과 같은) 하나 이상의 특수-목적 프로세서들, 및/또는 다른 프로세싱 구조 또는 수단을 제한 없이 포함할 수 있는 프로세싱 유닛 (들) (1210) 을 포함할 수도 있다. 상기 설명된 실시형태들에서, 프로세싱 유닛 (들) (1210) 은 도 2a 의 주 프로세서 (220) 및/또는 도 4 와 관련하여 설명된 제 2 프로세싱 유닛에 대응할 수도 있다. 도 12 에서 도시된 바와 같이, 일부 실시형태들은 희망하는 기능성에 따라, 별도의 DSP (1220) 를 가질 수도 있다. 이동 디바이스 (105) 는 또한, 터치 스크린, 터치 패드, 마이크로폰, 버튼 (들), 다이얼 (들), 스위치 (들), 및/또는 등등을 제한 없이 포함할 수 있는 하나 이상의 입력 디바이스들 (1270); 및 디스플레이, 발광 다이오드 (LED), 스피커들, 및/또는 등등을 제한 없이 포함할 수 있는 하나 이상의 출력 디바이스들 (1215) 을 포함할 수 있다.
이동 디바이스 (105) 는 또한, 모뎀, 네트워크 카드, 적외선 통신 디바이스, 무선 통신 디바이스, 및/또는 (블루투스™ 디바이스, IEEE 802.11 디바이스, IEEE 802.15.4 디바이스, WiFi 디바이스, WiMax 디바이스, 셀룰러 통신 설비들 등과 같은) 칩셋, 및/또는 등등을 제한 없이 포함할 수 있는 무선 통신 인터페이스 (1230) 를 포함할 수도 있다. 무선 통신 인터페이스 (1230) 는 데이터가 네트워크, 무선 액세스 포인트들, 다른 컴퓨터 시스템들, 및/또는 본원에서 설명된 다른 전자 디바이스들과 교환되는 것을 허용할 수도 있다. 통신은 무선 신호들 (1234) 을 전송하고 및/또는 수신하는 하나 이상의 무선 통신 안테나 (들) (1232) 를 통해 수행될 수도 있다.
희망하는 기능성에 따라서는, 무선 통신 인터페이스 (1230) 가 기지국 트랜시버들 (예컨대, 셀룰러 네트워크의 기지국들) 및/또는 액세스 포인트 (들) 과 통신하기 위한 별도의 트랜시버들을 포함할 수 있다. 이 상이한 데이터 네트워크들은 다양한 네트워크 타입들을 포함할 수 있다. 추가적으로, 무선 광역 네트워크 (Wireless Wide Area Network; WWAN) 는 코드 분할 다중 액세스 (Code Division Multiple Access; CDMA) 네트워크, 시간 분할 다중 액세스 (Time Division Multiple Access; TDMA) 네트워크, 주파수 분할 다중 액세스 (Frequency Division Multiple Access; FDMA) 네트워크, 직교 주파수 분할 다중 액세스 (Orthogonal Frequency Division Multiple Access; OFDMA) 네트워크, 단일-캐리어 주파수 분할 다중 액세스 (Single-Carrier Frequency Division Multiple Access; SC-FDMA) 네트워크, WiMax (IEEE 802.16) 등등일 수도 있다. CDMA 네트워크는 cdma2000, 광대역-CDMA (Wideband-CDMA; W-CDMA), 등등과 같은 하나 이상의 라디오 액세스 기술 (radio access technology; RAT) 들을 구현할 수도 있다. cdma2000 은 IS-95, IS-2000 및 IS-856 표준들을 포함한다. TDMA 네트워크는 이동 통신을 위한 글로벌 시스템 (Global System for Mobile Communications; GSM), 디지털 진보된 이동 전화 시스템 (Digital Advanced Mobile Phone System; D-AMPS), 또는 일부의 다른 RAT 를 구현할 수도 있다. OFDMA 네트워크는 LTE, LTE 어드밴스드 등등을 채용할 수도 있다. LTE, LTE 어드밴스드, GSM, 및 W-CDMA 는 3GPP 로부터의 문서들에서 설명된다. cdma2000 은 "3 세대 파트너십 프로젝트 2 (3rd Generation Partnership Project 2)" (3GPP2) 라는 명칭의 컨소시엄으로부터의 문서들에서 설명되어 있다. 3GPP 및 3GPP2 문서들은 공개적으로 입수가능하다. 무선 로컬 영역 네트워크 (Wireless Local Area Network; WLAN) 는 또한, IEEE 802.11x 네트워크일 수도 있고, 무선 개인 영역 네트워크 (Wireless Personal Area Network; WPAN) 는 블루투스 네트워크, IEEE 802.15x, 또는 일부 다른 타입의 네트워크일 수도 있다. 본원에서 설명된 기법들은 또한, WWAN, WLAN, 및/또는 WPAN 의 임의의 조합에 대해 이용될 수도 있다.
이동 디바이스 (105) 는 센서 (들) (1240) 를 추가로 포함할 수 있다. 이러한 센서들은 하나 이상의 가속도계 (들), 자이로스코프 (들), 카메라 (들), 자력계 (magnetometer) (들), 고도계 (altimeter) (들), 마이크로폰 (들), 근접성 센서 (들), 광 센서 (들) 등등을 제한 없이 포함할 수 있다. 추가적으로 또는 대안적으로, 센서 (들) (1240) 는 도 2a 또는 도 2b 의 센서 시스템 (210) 및/또는 유사한 전자 센서들을 포함할 수도 있다. 이에 따라, 본원에서 설명된 실시형태들은 (도 2a 의 주 프로세서 (220) 에 대응하는) 도 12 의 프로세싱 유닛 (들) (1210) 내에 포함된 제 2 프로세싱 유닛에 대한 이벤트를 생성하는 센서 (들) (1240) 의 센서 시스템 (210) 내에 제 1 프로세서 (예컨대, 도 2a 또는 도 2b 에서의 마이크로프로세서 (216)) 를 포함할 수 있다. 일부 실시형태들에서, 센서 (들) (1240) 의 제 1 프로세싱 유닛 (예컨대, 도 2a 또는 도 2b 에서의 센서 시스템 (210) 의 마이크로프로세서 (216)) 은 이미지 어레이 (예컨대, 도 2a 또는 도 2b 의 센서 어레이 유닛 (212)) 의 하나 이상의 출력들로부터 수신된 하나 이상의 신호들로부터, 얼굴이 검출된 것으로 결정할 수 있고, 결정에 응답하여, 제 2 프로세싱 유닛 (예컨대, 도 12 의 프로세싱 유닛 (들) (1210)) 에 대한 얼굴-검출 이벤트를 생성할 수 있다. 일부 실시형태들에서, 프로세싱 유닛 (들) (1210) 은 저 전력 모드에서 동작할 수 있고, 센서 (들) 의 제 1 프로세싱 유닛 (1240) (예컨대, 도 2a 또는 도 2b 에서의 센서 시스템 (210) 의 마이크로프로세서 (216)) 은 프로세싱 유닛 (들) (1210) 이 저 전력 모드에서 동작하고 있는 동안에, 프로세싱 유닛 (들) (1210) 에 의해 수신되어야 할 이벤트를 생성하도록 동작가능하거나 생성하고 및/또는 이벤트를 프로세싱 유닛 (들) (1210) 에 통신한다.
이동 디바이스의 실시형태들은 또한, SPS 안테나 (1282) 를 이용하여 하나 이상의 SPS 위성들로부터 신호들 (1284) 을 수신할 수 있는 위성 위치확인 시스템 (satellite positioning system; SPS) 수신기 (1280) 를 포함할 수도 있다. SPS 수신기 (1280) 는 글로벌 내비게이션 위성 시스템 (global navigation satellite system; GNSS) (예컨대, 글로벌 위치결정 시스템 (Global Positioning System; GPS)), 갈릴레오 (Galileo), 글로나스 (Glonass), 콤파스 (Compass), 일본 상부의 준-천정 위성 시스템 (Quasi-Zenith Satellite System; QZSS), 인도 상부의 인도 지역 내비게이션 위성 시스템 (Indian Regional Navigational Satellite System; IRNSS), 중국 상부의 바이두 (Beidou), 및/또는 등등과 같은 SPS 시스템의 위성들로부터, 기존의 기법들을 이용하여 이동 디바이스의 위치를 추출할 수 있다. 또한, SPS 수신기 (1280) 는, 하나 이상의 글로벌 및/또는 지역 내비게이션 위성 시스템들과 연관될 수도 있거나, 또는 그렇지 않을 경우에, 하나 이상의 글로벌 및/또는 지역 내비게이션 위성 시스템들과의 이용을 위하여 가능하게 될 수도 있는 다양한 증강 시스템 (augmentation system) 들 (예컨대, 위성 기반 증강 시스템 (Satellite Based Augmentation System; SBAS)) 에서 이용될 수 있다. 제한이 아닌 예로서, SBAS 는 예컨대, 광역 증강 시스템 (Wide Area Augmentation System; WAAS), EGNOS (European Geostationary Navigation Overlay Service), 멀티-기능 위성 증강 시스템 (Multifunctional Satellite Augmentation System; MSAS), GPS 보조 지리 증강된 내비게이션 (GPS Aided Geo Augmented Navigation) 또는 GPS 및 지리 증강된 내비게이션 시스템 (GPS and Geo Augmented Navigation system; GAGAN), 및/또는 기타 등등과 같이, 무결성 정보 (integrity information), 차동 정정 (differential correction) 들 등을 제공하는 증강 시스템 (들) 을 포함할 수도 있다. 이에 따라, 본원에서 이용된 바와 같이, SPS 는 하나 이상의 글로벌 및/또는 지역 내비게이션 위성 시스템들 및/또는 증강 시스템들의 임의의 조합을 포함할 수도 있고, SPS 신호들은 SPS, SPS-유사, 및/또는 이러한 하나 이상의 SPS 와 연관된 다른 신호들을 포함할 수도 있다.
이동 디바이스 (105) 는 메모리 (1260) 를 더 포함할 수도 있고 및/또는 메모리 (1260) 와 통신할 수도 있다. 메모리 (1260) 는, 프로그래밍가능할 수 있고, 플래시-업데이트가능 (flash-updateable) 할 수 있고, 및/또는 기타 등등일 수 있는 랜덤 액세스 메모리 ("RAM"), 및/또는 판독-전용 메모리 ("ROM") 와 같은, 로컬 및/또는 네트워크 액세스가능한 저장장치, 디스크 드라이브, 드라이브 어레이, 광학 저장 디바이스, 고체-상태 저장 디바이스를 제한 없이 포함할 수 있다. 이러한 저장 디바이스들은 다양한 파일 시스템들, 데이터베이스 구조들, 및/또는 기타 등등을 제한 없이 포함하는 임의의 적절한 데이터 저장소들을 구현하도록 구성될 수도 있다. 이전에 열거된 메모리 타입들 중의 임의의 것을 포함할 수 있는 도 2a 의 메모리 (218) 는 희망하는 기능성에 따라, 메모리 (1260) 내에 포함될 수도 있거나, 메모리 (1260) 로부터 별개일 수도 있다.
이동 디바이스 (105) 의 메모리 (1260) 는 또한, 다양한 실시형태들에 의해 제공된 컴퓨터 프로그램들을 포함할 수 있고, 및/또는 본원에서 설명된 바와 같은 다른 실시형태들에 의해 제공된, 방법들을 구현하고 및/또는 시스템들을 구성하도록 설계될 수도 있는 하나 이상의 애플리케이션 프로그램들과 같이, 오퍼레이팅 시스템, 디바이스 드라이버들, 실행가능한 라이브러리들, 및/또는 컴퓨터-판독가능 매체 내에 내장된 다른 코드를 포함하는 소프트웨어 엘리먼트들 (도시되지 않음) 을 포함할 수 있다. 그 다음으로, 양태에서, 이러한 코드 및/또는 명령들은 설명된 방법들에 따라 하나 이상의 동작들을 수행하도록 범용 컴퓨터 (또는 다른 디바이스) 를 구성하고 및/또는 적응시키기 위해 이용될 수 있다.
실질적인 변동들은 특정 요건들에 따라 행해질 수도 있다는 것이 당해 분야의 당업자들에게 명백할 것이다. 예를 들어, 맞춤화된 하드웨어가 또한 이용될 수도 있고, 및/또는 특정한 엘리먼트들이 하드웨어, (애플렛 (applet) 들 등과 같은 휴대용 소프트웨어를 포함하는) 소프트웨어, 또는 양자로 구현될 수도 있다. 또한, 네트워크 입력/출력 디바이스들과 같은 다른 컴퓨팅 디바이스들로의 접속이 채용될 수도 있다.
첨부된 도면들을 참조하면, 메모리를 포함할 수 있는 컴포넌트들은 비-일시적 머신-판독가능 매체들을 포함할 수 있다. 본원에서 이용된 바와 같은 용어 "머신-판독가능 매체" 및 "컴퓨터-판독가능 매체" 는 머신으로 하여금, 특정 기법으로 동작하게 하는 데이터를 제공하는 것에 관여하는 임의의 저장 매체를 지칭한다. 상기에서 제공된 실시형태들에서, 다양한 머신-판독가능 매체들은 명령들/코드를 실행을 위한 프로세싱 유닛들 및/또는 다른 디바이스 (들) 에 제공하는 것에 관여될 수도 있다. 추가적으로 또는 대안적으로, 머신-판독가능 매체들은 이러한 명령들/코드를 저장하고 및/또는 반송하기 위하여 이용될 수도 있다. 다수의 구현예들에서, 컴퓨터-판독가능 매체는 물리적 및/또는 유형의 저장 매체이다. 이러한 매체는 비-휘발성 매체들, 휘발성 매체들, 및 송신 매체들을 포함하지만, 이것으로 제한되지는 않는 다수의 형태들을 취할 수도 있다. 컴퓨터-판독가능 매체들의 보편적인 형태들은 예를 들어, 자기적 및/또는 광학적 매체들, 펀치카드들, 종이테이프, 구멍들의 패턴들을 갖는 임의의 다른 물리적 매체, RAM, PROM, EPROM, FLASH-EPROM, 임의의 다른 메모리 칩 또는 카트리지, 이하에서 설명된 바와 같은 반송파, 또는 컴퓨터가 명령들 및/또는 코드를 그로부터 판독할 수 있는 임의의 다른 매체를 포함할 수도 있다.
본원에서 논의된 방법들, 시스템들, 및 디바이스들은 예들이다. 다양한 실시형태들은 다양한 절차들 또는 컴포넌트들을 적절하게 생략할 수도 있거나, 치환할 수도 있거나, 또는 추가할 수도 있다. 예를 들어, 어떤 실시형태들에 대하여 설명된 특징들은 다양한 다른 실시형태들에서 조합될 수도 있다. 실시형태들의 상이한 양태들 및 엘리먼트들은 유사한 방식으로 조합될 수도 있다. 본원에서 제공된 도면들의 다양한 컴포넌트들은 하드웨어 및/또는 소프트웨어로 구체화될 수 있다. 또한, 기술이 진화하고, 이에 따라, 엘리먼트들의 다수는 개시물의 범위를 그 특정 예들로 제한하지 않는 예들이다.
주로 보편적인 용법의 이유들로, 이러한 신호들을 비트들, 정보, 값들, 엘리먼트들, 기호들, 문자들, 변수들, 항들, 수들, 숫자들 등등으로서 지칭하는 것이 때때로 펀리한 것으로 입증되었다. 그러나, 이러한 그리고 유사한 용어들의 전부는 적절한 물리적 양들과 연관되어야 하고 단지 편리한 라벨들인 것을 이해해야 한다. 이와 다르게 구체적으로 기재되지 않으면, 상기 논의로부터 명백한 바와 같이, 이 명세서의 전반에 걸쳐, "프로세싱 (processing)", "컴퓨팅 (computing)", "계산 (calculating)", "결정 (determining)", "확인 (ascertaining)", "식별 (identifying)", "연관 (associating)", "측정 (measuring)", "수행 (performing)" 등등과 같은 용어들을 사용한 논의들은 특수 목적 컴퓨터 또는 유사한 특수 목적 전자 컴퓨팅 디바이스와 같은 특정 장치의 액션들 또는 프로세스들을 지칭한다는 것이 인식된다. 그러므로, 이 명세서의 문맥에서, 특수 목적 컴퓨터 또는 유사한 특수 목적 전자 컴퓨팅 디바이스는 메모리들, 레지스터들, 또는 특수 목적 컴퓨터 또는 유사한 특수 목적 전자 컴퓨팅 디바이스의 다른 정보 저장 디바이스들, 송신 디바이스들, 또는 디스플레이 디바이스들 내에서, 물리적 전자적, 전기적, 또는 자기적 양들로서 전형적으로 표현된 신호들을 조작할 수 있거나 변환할 수 있다.
본원에서 이용된 바와 같은 용어들 "및" 및 "또는" 은 적어도 부분적으로, 이러한 용어들이 이용되는 문맥에 종속되는 것으로 또한 예상되는 다양한 의미들을 포함할 수도 있다. 전형적으로, A, B, 또는 C 와 같은 리스트를 연관시키기 위하여 이용될 경우의 "또는" 은 포괄적 의미로 여기에서 이용된 A, B, 및 C 뿐만 아니라, 배타적 의미로 여기에서 이용된 A, B, 또는 C 를 의미하도록 의도된다. 게다가, 본원에서 이용된 바와 같은 용어 "하나 이상" 은 임의의 특징, 구조, 또는 특성을 단수로 설명하기 위하여 이용될 수도 있거나, 특징들, 구조들, 또는 특성들의 일부 조합을 설명하기 위하여 이용될 수도 있다. 그러나, 이것은 단지 예시적인 예이고 청구된 발명 요지는 이 예로 제한되지는 않는다는 것에 주목해야 한다. 또한, A, B, 또는 C 와 같은 리스트를 연관시키기 위하여 이용될 경우의 용어 "~ 중의 적어도 하나" 는 A, AB, AA, AAB, AABBCCC 등과 같은, A, B, 및/또는 C 의 임의의 조합을 의미하도록 해독될 수 있다.
몇몇 실시형태들을 설명하였지만, 다양한 수정들, 대안적인 구성들, 및 등가물들은 개시물의 사상으로부터 이탈하지 않으면서 이용될 수도 있다. 예를 들어, 상기 엘리먼트들은 단지 더욱 대형 시스템의 컴포넌트일 수도 있고, 여기서, 다른 규칙들은 발명의 응용에 대하여 우선권을 가질 수도 있거나, 또는 그렇지 않을 경우에 발명의 응용을 수정할 수도 있다. 또한, 다수의 단계들은 상기 엘리먼트들이 고려되기 전에, 고려되는 동안, 또는 고려된 후에 취해질 수도 있다. 따라서, 상기 설명은 개시물의 범위를 제한하지는 않는다.

Claims (30)

  1. 동적 장면-기반 발생들을 감지하기 위한 스마트 센서로서,
    하나를 초과하는 센서 픽셀을 포함하고 센서 어레이의 이웃하는 센서 픽셀들로부터의 판독들을 이용하여 하나 이상의 컴퓨터 시각 (computer vision; CV) 특징들을 컴퓨팅할 수 있는 상기 센서 어레이로부터 센서 데이터를 수신하도록 구성된 전용 컴퓨터 시각 (CV) 연산 하드웨어; 및
    상기 전용 컴퓨터 시각 (CV) 연산 하드웨어와 통신가능하게 결합되고, 상기 하나 이상의 컴퓨팅된 CV 특징들에 기초한 동작들로부터 기인하는 신호들을 프로세싱하도록 구성된 제 1 프로세싱 유닛을 포함하고,
    상기 스마트 센서는 상기 제 1 프로세싱 유닛에 의한 상기 하나 이상의 컴퓨팅된 CV 특징들에 기초한 상기 동작들로부터 기인하는 상기 신호들의 상기 프로세싱에 응답하여, 제 2 프로세싱 유닛에 의해 수신되어야 할 이벤트를 생성하도록 구성되고, 상기 이벤트는 상기 제 2 프로세싱 유닛에 대한 기준 발생을 표시하고 멀티-필드 메시지를 포함하는, 동적 장면-기반 발생들을 감지하기 위한 스마트 센서.
  2. 제 1 항에 있어서,
    상기 기준 발생은,
    인간 얼굴의 뷰 등장,
    인간 신체의 뷰 등장,
    인간 얼굴 상에 표현된 감정,
    비-인간 동물 얼굴의 뷰 등장,
    비-인간 동물 신체의 뷰 등장,
    인간 손의 뷰 등장,
    손 제스처,
    기준 객체의 뷰 등장,
    실내 환경으로부터 실외 환경으로의 변경,
    기준 이동,
    추락을 표시하는 장면에서의 급속한 이동,
    충돌의 위험을 표시하는 객체를 향한 모션,
    위험을 표시하는 장면에서의 이동 또는 객체들, 또는
    그 임의의 조합 중의 하나 이상인, 동적 장면-기반 발생들을 감지하기 위한 스마트 센서.
  3. 제 1 항에 있어서,
    상기 기준 발생은 얼굴 검출을 포함하는, 동적 장면-기반 발생들을 감지하기 위한 스마트 센서.
  4. 제 1 항에 있어서,
    상기 전용 컴퓨터 시각 (CV) 연산 하드웨어는 로컬 2 진 패턴 (Local Binary Pattern; LBP) 들을 제공하도록 구성되는, 동적 장면-기반 발생들을 감지하기 위한 스마트 센서.
  5. 제 4 항에 있어서,
    상기 전용 컴퓨터 시각 (CV) 연산 하드웨어에 결합된, 상기 센서 데이터의 서브세트에서 기준 객체의 존재를 검출하도록 구성된 캐스케이드 분류기 하드웨어를 더 포함하고, 상기 하나 이상의 컴퓨팅된 CV 특징들에 기초한 상기 동작들은 상기 캐스케이드 분류기 하드웨어에 의해 수행된 동작들을 포함하고, 상기 기준 발생은 상기 기준 객체와 연관되는, 동적 장면-기반 발생들을 감지하기 위한 스마트 센서.
  6. 제 5 항에 있어서,
    상기 제 1 프로세싱 유닛은 상기 기준 객체의 존재가 상기 캐스케이드 분류기 하드웨어에 의해 검출될 때, 상기 기준 객체의 존재의 상기 캐스케이드 분류기 하드웨어로부터의 표시를 수신하도록 구성되는, 동적 장면-기반 발생들을 감지하기 위한 스마트 센서.
  7. 제 1 항에 있어서,
    상기 전용 컴퓨터 시각 (CV) 연산 하드웨어는 상기 센서 어레이로부터 원시 센서 데이터 (raw sensor data) 를 수신하도록 구성되고, 이미지 신호 프로세싱 회로부가 상기 센서 어레이와 상기 전용 컴퓨터 시각 (CV) 연산 하드웨어 사이에 배치되지 않는, 동적 장면-기반 발생들을 감지하기 위한 스마트 센서.
  8. 제 1 항에 있어서,
    상기 전용 컴퓨터 시각 (CV) 연산 하드웨어는 집적 회로를 포함하는, 동적 장면-기반 발생들을 감지하기 위한 스마트 센서.
  9. 제 1 항에 있어서,
    상기 스마트 센서는 주변 광 감지, 근접성 검출, 기준 객체로의 근접성, 모션 검출, 또는 그 임의의 조합을 표시하는 적어도 하나의 저-전력 광학 센서 판독을 생성하기 위하여 상기 전용 컴퓨터 시각 (CV) 연산 하드웨어의 적어도 일부를 디스에이블 (disable) 하도록 구성되는, 동적 장면-기반 발생들을 감지하기 위한 스마트 센서.
  10. 제 9 항에 있어서,
    상기 스마트 센서는 상기 적어도 하나의 저-전력 광학 센서 판독에 기초하여 상기 기준 발생을 생성하는, 동적 장면-기반 발생들을 감지하기 위한 스마트 센서.
  11. 제 1 항에 있어서,
    상기 스마트 센서는 저-전력 모드에서 동작하면서 상기 전용 컴퓨터 시각 (CV) 연산 하드웨어의 적어도 일부를 디스에이블하고, 상기 저-전력 모드에서 장면 변경을 검출하고, 상기 장면 변경의 검출에 기초하여 상기 전용 컴퓨터 시각 (CV) 연산 하드웨어를 활성화하도록 구성되는, 동적 장면-기반 발생들을 감지하기 위한 스마트 센서.
  12. 제 1 항에 있어서,
    상기 멀티-필드 메시지에서, 상기 이벤트는 상기 제 2 프로세싱 유닛에 대한 상기 기준 발생을 표시하고, 상기 기준 발생과 연관된 데이터를 더 포함하는, 동적 장면-기반 발생들을 감지하기 위한 스마트 센서.
  13. 제 1 항에 있어서,
    상기 스마트 센서는,
    상기 하나 이상의 컴퓨팅된 CV 특징들에 기초한 상기 동작들의 적어도 일부로서 고-전력 동작을 수행하고, 상기 고-전력 동작은 상기 저-전력 동작보다 더 많은 전력을 소비하고, 그리고
    상기 이벤트에 기초하여 상기 저-전력 동작에 대한 파라미터를 제공하도록 구성되는, 동적 장면-기반 발생들을 감지하기 위한 스마트 센서.
  14. 제 1 항에 있어서,
    상기 스마트 센서는,
    상기 하나 이상의 컴퓨팅된 CV 특징들에 기초한 상기 동작들의 적어도 일부로서 저-전력 동작을 수행하고, 상기 저-전력 동작은 상기 고-전력 동작보다 더 적은 전력을 소비하고, 그리고
    상기 고-전력 동작에 대한 센서 판독을 제공하도록 구성되는, 동적 장면-기반 발생들을 감지하기 위한 스마트 센서.
  15. 얼굴 검출 이벤트들을 결정하기 위한 장치로서,
    하나를 초과하는 센서 픽셀을 포함하는 센서 어레이;
    상기 센서 어레이로부터 센서 데이터를 수신할 수 있고 상기 센서 어레이의 이웃하는 센서 픽셀들로부터의 판독들을 이용하여 CV 특징들을 컴퓨팅하는 전용 컴퓨터 시각 (CV) 연산 하드웨어; 및
    상기 전용 컴퓨터 시각 (CV) 연산 하드웨어와 통신가능하게 결합된 제 1 프로세싱 유닛으로서,
    상기 하나 이상의 컴퓨팅된 CV 특징들에 기초한 동작들로부터 기인하는 하나 이상의 신호들로부터, 얼굴이 검출된 것으로 결정하고, 그리고
    상기 결정에 응답하여, 제 2 프로세싱 유닛에 의해 수신되어야 할 멀티-필드 메시지를 포함하는 얼굴-검출된 이벤트를 생성하도록 구성된 상기 제 1 프로세싱 유닛을 포함하는, 얼굴 검출 이벤트들을 결정하기 위한 장치.
  16. 제 15 항에 있어서,
    상기 제 2 프로세싱 유닛을 더 포함하고, 상기 제 1 프로세싱 유닛은 상기 제 2 프로세싱 유닛이 저-전력 모드에서 동작하고 있는 동안에, 상기 얼굴-검출된 이벤트를 상기 제 2 프로세싱 유닛으로 통신하도록 구성되는, 얼굴 검출 이벤트들을 결정하기 위한 장치.
  17. 제 15 항에 있어서,
    상기 전용 컴퓨터 시각 (CV) 연산 하드웨어는 상기 센서 어레이로부터 원시 센서 데이터를 수신하도록 구성되고, 이미지 신호 프로세싱 회로부가 상기 센서 어레이와 상기 전용 컴퓨터 시각 (CV) 연산 하드웨어 사이에 배치되지 않는, 얼굴 검출 이벤트들을 결정하기 위한 장치.
  18. 제 15 항에 있어서,
    타이밍 동작,
    포커싱 동작,
    자동-노출 정정 동작,
    객체 검출,
    객체 인식,
    스캐닝 윈도우의 저장,
    이벤트-큐잉 및 프로세싱 동작 중 적어도 하나,
    아날로그 프로세싱,
    아날로그-대-디지털 변환,
    적분 동작,
    CV 특징 연산,
    캐스케이드-분류기-기반 분류,
    히스토그램-기반 분류, 또는
    메모리 버퍼링, 또는
    그 임의의 조합 중의 하나 이상을 제공하도록 구성된 주변 회로부를 더 포함하는, 얼굴 검출 이벤트들을 결정하기 위한 장치.
  19. 장치로 동적 장면-기반 발생들을 감지하기 위한 방법으로서,
    전용 컴퓨터 시각 (CV) 연산 하드웨어로, 하나를 초과하는 센서 픽셀을 포함하는 센서 어레이로부터 센서 데이터를 수신하는 단계;
    상기 전용 컴퓨터 시각 (CV) 연산 하드웨어로, 상기 센서 어레이의 이웃하는 센서 픽셀들로부터의 판독들을 이용하여 하나 이상의 CV 특징들을 컴퓨팅하는 단계;
    제 1 프로세싱 유닛으로, 상기 하나 이상의 컴퓨팅된 CV 특징들에 기초한 동작들로부터 기인하는 신호들을 프로세싱하는 단계; 및
    상기 제 1 프로세싱 유닛에 의한 상기 하나 이상의 컴퓨팅된 CV 특징들에 기초한 상기 동작들로부터 기인하는 상기 신호들의 상기 프로세싱에 응답하여, 제 2 프로세싱 유닛에 의해 수신되어야 할 이벤트를 생성하는 단계로서, 상기 이벤트는 상기 제 2 프로세싱 유닛에 대한 기준 발생을 표시하고 멀티-필드 메시지를 포함하는, 상기 이벤트를 생성하는 단계를 포함하는, 장치로 동적 장면-기반 발생들을 감지하기 위한 방법.
  20. 제 19 항에 있어서,
    상기 기준 발생은,
    인간 얼굴의 뷰 등장,
    인간 신체의 뷰 등장,
    인간 얼굴 상에 표현된 감정,
    비-인간 동물 얼굴의 뷰 등장,
    비-인간 동물 신체의 뷰 등장,
    인간 손의 뷰 등장,
    손 제스처,
    기준 객체의 뷰 등장,
    실내 환경으로부터 실외 환경으로의 변경,
    기준 이동,
    추락을 표시하는 장면에서의 급속한 이동,
    충돌의 위험을 표시하는 객체를 향한 모션,
    위험을 표시하는 장면에서의 이동 또는 객체들, 또는
    그 임의의 조합 중의 하나 이상인, 장치로 동적 장면-기반 발생들을 감지하기 위한 방법.
  21. 제 19 항에 있어서,
    상기 전용 컴퓨터 시각 (CV) 연산 하드웨어로, 로컬 2 진 패턴 (LBP) 들을 제공하는 단계를 더 포함하는, 장치로 동적 장면-기반 발생들을 감지하기 위한 방법.
  22. 제 21 항에 있어서,
    캐스케이드 분류기 하드웨어로, 상기 센서 데이터의 서브세트에서 기준 객체의 존재를 검출하는 단계를 더 포함하고, 상기 하나 이상의 컴퓨팅된 CV 특징들에 기초한 상기 동작들은 상기 캐스케이드 분류기 하드웨어에 의해 수행된 동작들을 포함하고, 상기 기준 발생은 상기 기준 객체와 연관되는, 장치로 동적 장면-기반 발생들을 감지하기 위한 방법.
  23. 제 22 항에 있어서,
    상기 제 1 프로세싱 유닛에 의해, 상기 기준 객체의 존재가 상기 캐스케이드 분류기 하드웨어에 의해 검출될 때, 상기 기준 객체의 상기 존재의 상기 캐스케이드 분류기 하드웨어로부터의 표시를 수신하는 단계를 더 포함하는, 장치로 동적 장면-기반 발생들을 감지하기 위한 방법.
  24. 제 19 항에 있어서,
    주변 광 감지, 근접성 검출, 기준 객체로의 근접성, 모션 검출, 또는 그 임의의 조합을 표시하는 적어도 하나의 저-전력 광학 센서 판독을 생성하기 위하여 상기 전용 컴퓨터 시각 (CV) 연산 하드웨어의 적어도 일부를 디스에이블하는 단계를 더 포함하는, 장치로 동적 장면-기반 발생들을 감지하기 위한 방법.
  25. 제 24 항에 있어서,
    상기 적어도 하나의 저-전력 광학 센서 판독에 기초하여 상기 기준 발생을 검출하는 단계를 더 포함하는, 장치로 동적 장면-기반 발생들을 감지하기 위한 방법.
  26. 제 19 항에 있어서,
    저-전력 모드에서 동작하면서 상기 전용 컴퓨터 시각 (CV) 연산 하드웨어의 적어도 일부를 디스에이블하는 단계;
    상기 저-전력 모드에서 동작하면서 장면 변경을 검출하는 단계; 및
    상기 장면 변경의 검출에 기초하여 상기 전용 컴퓨터 시각 (CV) 연산 하드웨어의 디스에이블된 적어도 일부를 활성화하는 단계를 더 포함하는, 장치로 동적 장면-기반 발생들을 감지하기 위한 방법.
  27. 제 19 항에 있어서,
    상기 전용 컴퓨터 시각 (CV) 연산 하드웨어로, 상기 센서 어레이로부터 상기 센서 데이터를 수신하는 단계는, 상기 센서 어레이로부터 원시 센서 데이터를 수신하는 단계를 포함하고, 이미지 신호 프로세싱은 상기 수신하는 단계 이전에 상기 센서 데이터에 대해 수행되지 않는, 장치로 동적 장면-기반 발생들을 감지하기 위한 방법.
  28. 얼굴 검출 이벤트들을 결정하기 위한 방법으로서,
    전용 컴퓨터 시각 (CV) 연산 하드웨어로, 센서 어레이로부터 센서 데이터를 수신하는 단계;
    상기 센서 어레이의 이웃하는 센서 픽셀들로부터의 판독들을 이용하여 하나 이상의 CV 특징들을 컴퓨팅하는 단계; 및
    제 1 프로세싱 유닛을 이용하는 단계로서,
    상기 하나 이상의 컴퓨팅된 CV 특징들에 기초한 동작들로부터 기인하는 하나 이상의 신호들로부터, 얼굴이 검출된 것으로 결정하고, 그리고
    상기 결정에 응답하여, 제 2 프로세싱 유닛에 의해 수신되어야 할 멀티-필드 메시지를 포함하는 얼굴-검출된 이벤트를 생성하기 위하여
    상기 제 1 프로세싱 유닛을 이용하는 단계를 포함하는, 얼굴 검출 이벤트들을 결정하기 위한 방법.
  29. 제 28 항에 있어서,
    상기 제 2 프로세싱 유닛을 더 포함하고, 상기 제 1 프로세싱 유닛은 상기 제 2 프로세싱 유닛이 저-전력 모드에서 동작하고 있는 동안에, 상기 얼굴-검출된 이벤트를 상기 제 2 프로세싱 유닛으로 통신하도록 추가로 구성되는, 얼굴 검출 이벤트들을 결정하기 위한 방법.
  30. 제 28 항에 있어서,
    상기 전용 컴퓨터 시각 (CV) 연산 하드웨어로, 상기 센서 어레이로부터 상기 센서 데이터를 수신하는 단계는, 상기 센서 어레이로부터 원시 센서 데이터를 수신하는 단계를 포함하고, 이미지 신호 프로세싱은 상기 수신하는 단계 이전에 상기 센서 데이터에 대해 수행되지 않는, 얼굴 검출 이벤트들을 결정하기 위한 방법.
KR1020177008531A 2014-09-30 2015-09-28 이벤트들-기반 시각 센서를 이용한 저-전력 상시-온 얼굴 검출, 추적, 인식 및/또는 분석 KR102474008B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020227042166A KR102633876B1 (ko) 2014-09-30 2015-09-28 이벤트들-기반 시각 센서를 이용한 저-전력 상시-온 얼굴 검출, 추적, 인식 및/또는 분석

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US201462058009P 2014-09-30 2014-09-30
US201462057800P 2014-09-30 2014-09-30
US201462057972P 2014-09-30 2014-09-30
US62/058,009 2014-09-30
US62/057,972 2014-09-30
US62/057,800 2014-09-30
US14/866,549 US9554100B2 (en) 2014-09-30 2015-09-25 Low-power always-on face detection, tracking, recognition and/or analysis using events-based vision sensor
US14/866,549 2015-09-25
PCT/US2015/052684 WO2016053886A1 (en) 2014-09-30 2015-09-28 Low-power always-on face detection, tracking, recognition and/or analysis using events-based vision sensor

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020227042166A Division KR102633876B1 (ko) 2014-09-30 2015-09-28 이벤트들-기반 시각 센서를 이용한 저-전력 상시-온 얼굴 검출, 추적, 인식 및/또는 분석

Publications (2)

Publication Number Publication Date
KR20170063643A KR20170063643A (ko) 2017-06-08
KR102474008B1 true KR102474008B1 (ko) 2022-12-02

Family

ID=55585883

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020227042166A KR102633876B1 (ko) 2014-09-30 2015-09-28 이벤트들-기반 시각 센서를 이용한 저-전력 상시-온 얼굴 검출, 추적, 인식 및/또는 분석
KR1020177008531A KR102474008B1 (ko) 2014-09-30 2015-09-28 이벤트들-기반 시각 센서를 이용한 저-전력 상시-온 얼굴 검출, 추적, 인식 및/또는 분석

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020227042166A KR102633876B1 (ko) 2014-09-30 2015-09-28 이벤트들-기반 시각 센서를 이용한 저-전력 상시-온 얼굴 검출, 추적, 인식 및/또는 분석

Country Status (7)

Country Link
US (3) US9554100B2 (ko)
EP (1) EP3201831B1 (ko)
JP (2) JP6737777B2 (ko)
KR (2) KR102633876B1 (ko)
CN (1) CN107077601A (ko)
CA (1) CA2959549C (ko)
WO (1) WO2016053886A1 (ko)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10979674B2 (en) * 2013-07-22 2021-04-13 Intellivision Cloud-based segregated video storage and retrieval for improved network scalability and throughput
US11601620B2 (en) * 2013-07-22 2023-03-07 Intellivision Technologies Corp. Cloud-based segregated video storage and retrieval for improved network scalability and throughput
US10515284B2 (en) 2014-09-30 2019-12-24 Qualcomm Incorporated Single-processor computer vision hardware control and application execution
US9940533B2 (en) 2014-09-30 2018-04-10 Qualcomm Incorporated Scanning window for isolating pixel values in hardware for computer vision operations
US9554100B2 (en) * 2014-09-30 2017-01-24 Qualcomm Incorporated Low-power always-on face detection, tracking, recognition and/or analysis using events-based vision sensor
US9838635B2 (en) 2014-09-30 2017-12-05 Qualcomm Incorporated Feature computation in a sensor element array
US20170132466A1 (en) * 2014-09-30 2017-05-11 Qualcomm Incorporated Low-power iris scan initialization
KR101751020B1 (ko) * 2015-12-08 2017-07-11 한국해양과학기술원 다중 위성 기반 위험유해물질 연속 탐지 방법 및 장치
US10062151B2 (en) * 2016-01-21 2018-08-28 Samsung Electronics Co., Ltd. Image deblurring method and apparatus
CN105759935B (zh) * 2016-01-29 2019-01-18 华为技术有限公司 一种终端控制方法及终端
KR102586962B1 (ko) * 2016-04-07 2023-10-10 한화비전 주식회사 감시 시스템 및 그 제어 방법
KR101904453B1 (ko) * 2016-05-25 2018-10-04 김선필 인공 지능 투명 디스플레이의 동작 방법 및 인공 지능 투명 디스플레이
US9977994B2 (en) 2016-06-30 2018-05-22 Apple Inc. Configurable histogram-of-oriented gradients (HOG) processor
US10375317B2 (en) 2016-07-07 2019-08-06 Qualcomm Incorporated Low complexity auto-exposure control for computer vision and imaging systems
KR20180014992A (ko) * 2016-08-02 2018-02-12 삼성전자주식회사 이벤트 신호 처리 방법 및 장치
US11507389B2 (en) 2016-09-29 2022-11-22 Hewlett-Packard Development Company, L.P. Adjusting settings on computing devices based on location
US10614332B2 (en) 2016-12-16 2020-04-07 Qualcomm Incorportaed Light source modulation for iris size adjustment
US10984235B2 (en) 2016-12-16 2021-04-20 Qualcomm Incorporated Low power data generation for iris-related detection and authentication
US10860841B2 (en) * 2016-12-29 2020-12-08 Samsung Electronics Co., Ltd. Facial expression image processing method and apparatus
WO2018136326A1 (en) * 2017-01-23 2018-07-26 Qualcomm Incorporated Low-power iris scan initialization
CN110178142B (zh) * 2017-01-23 2023-06-06 高通股份有限公司 单一处理器计算机视觉硬件控制和应用执行
US10855927B2 (en) 2017-03-08 2020-12-01 Samsung Electronics Co., Ltd. Event detecting device including an event signal generator and an output signal generator
US10516841B2 (en) 2017-03-08 2019-12-24 Samsung Electronics Co., Ltd. Pixel, pixel driving circuit, and vision sensor including the same
EP3393122A1 (en) * 2017-04-18 2018-10-24 Oculus VR, LLC Event camera
US10237481B2 (en) * 2017-04-18 2019-03-19 Facebook Technologies, Llc Event camera for generation of event-based images
KR102013935B1 (ko) 2017-05-25 2019-08-23 삼성전자주식회사 위험 상황을 감지하는 방법 및 시스템
CN107358175B (zh) * 2017-06-26 2020-11-24 Oppo广东移动通信有限公司 虹膜采集方法及电子装置
US10466779B1 (en) * 2017-07-24 2019-11-05 Facebook Technologies, Llc Event camera for eye tracking
KR20190017280A (ko) * 2017-08-10 2019-02-20 엘지전자 주식회사 이동 단말기 및 이동 단말기의 제어 방법
US10838505B2 (en) 2017-08-25 2020-11-17 Qualcomm Incorporated System and method for gesture recognition
KR102320310B1 (ko) * 2017-09-11 2021-11-02 한국전자기술연구원 이진트리 기반 고속 다종 분류 회로 장치
US10484530B2 (en) * 2017-11-07 2019-11-19 Google Llc Sensor based component activation
EP3711024B1 (en) 2017-11-14 2024-05-01 Apple Inc. Event camera-based deformable object tracking
CN107908289B (zh) * 2017-12-01 2021-06-11 宁波高新区锦众信息科技有限公司 一种基于头部的机器人的人脸识别交互系统
JP2019134271A (ja) * 2018-01-31 2019-08-08 ソニーセミコンダクタソリューションズ株式会社 固体撮像素子、撮像装置、および、固体撮像素子の制御方法
KR20190106251A (ko) 2018-03-08 2019-09-18 삼성전자주식회사 이미지 센서와 연결된 인터페이스 및 복수의 프로세서들간에 연결된 인터페이스를 포함하는 전자 장치
US11176490B2 (en) * 2018-03-09 2021-11-16 Qualcomm Incorporated Accumulate across stages in machine learning object detection
KR102138657B1 (ko) * 2018-04-12 2020-07-28 가천대학교 산학협력단 계층적 협업 표현 기반 분류를 통한 강인한 얼굴인식 장치 및 그 방법
US10691926B2 (en) 2018-05-03 2020-06-23 Analog Devices, Inc. Single-pixel sensor
US20210073541A1 (en) * 2018-05-22 2021-03-11 Vivo Mobile Communication Co., Ltd. Object recognition method and mobile terminal
JP7100826B2 (ja) * 2018-11-22 2022-07-14 オムロン株式会社 検出装置
US20220036110A1 (en) 2018-12-13 2022-02-03 Prophesee Method of tracking objects in a scene
TWI682329B (zh) * 2018-12-14 2020-01-11 技嘉科技股份有限公司 臉部辨識方法、裝置及計算機可讀取媒體
US10832543B2 (en) 2019-01-11 2020-11-10 The Chamberlain Group, Inc. Activity sensor
JP2020162016A (ja) * 2019-03-27 2020-10-01 ソニー株式会社 状態検出装置、状態検出システム及び状態検出方法
CN110191319A (zh) * 2019-05-28 2019-08-30 英业达科技有限公司 电力供应及影像处理系统及其方法
CN110276314A (zh) * 2019-06-26 2019-09-24 苏州万店掌网络科技有限公司 人脸识别方法及人脸识别摄像机
CN112311964B (zh) 2019-07-26 2022-06-07 华为技术有限公司 一种像素采集电路、动态视觉传感器以及图像采集设备
WO2021127030A1 (en) * 2019-12-17 2021-06-24 Google Llc Low-power vision sensing
US11233956B2 (en) 2020-03-31 2022-01-25 Western Digital Technologies, Inc. Sensor system with low power sensor devices and high power sensor devices
US11620476B2 (en) * 2020-05-14 2023-04-04 Micron Technology, Inc. Methods and apparatus for performing analytics on image data
US11551099B1 (en) * 2020-06-27 2023-01-10 Unicorn Labs Llc Smart sensor
KR20220019170A (ko) 2020-08-07 2022-02-16 삼성전자주식회사 대기 모드에서 오브젝트 검출을 위한 프로세서, 이를 포함하는 전자 장치 및 그의 작동 방법
JP2022040818A (ja) * 2020-08-31 2022-03-11 株式会社リコー 画像処理装置、画像処理方法およびプログラム
CN112417184B (zh) * 2020-11-23 2021-05-25 上海点泽智能科技有限公司 多场景特征信息存储结构及其比对方法、设备和存储介质
CN116530092A (zh) * 2020-12-31 2023-08-01 华为技术有限公司 一种视觉传感器芯片、操作视觉传感器芯片的方法以及设备
EP4102256A1 (en) 2021-06-11 2022-12-14 Infineon Technologies AG Sensor devices, electronic devices, method for performing object detection by a sensor device and method for performing object detection by an electronic device
WO2023188004A1 (ja) * 2022-03-29 2023-10-05 株式会社ソニー・インタラクティブエンタテインメント コンピュータシステム、方法およびプログラム
US11756274B1 (en) * 2022-07-07 2023-09-12 Snap Inc. Low-power architecture for augmented reality device

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130229508A1 (en) * 2012-03-01 2013-09-05 Qualcomm Incorporated Gesture Detection Based on Information from Multiple Types of Sensors

Family Cites Families (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4641349A (en) 1985-02-20 1987-02-03 Leonard Flom Iris recognition system
US5324958A (en) 1991-02-19 1994-06-28 Synaptics, Incorporated Integrating imaging systgem having wide dynamic range with sample/hold circuits
US5543590A (en) 1992-06-08 1996-08-06 Synaptics, Incorporated Object position detector with edge motion feature
US5877897A (en) 1993-02-26 1999-03-02 Donnelly Corporation Automatic rearview mirror, vehicle lighting control and vehicle interior monitoring system using a photosensor array
US6822563B2 (en) 1997-09-22 2004-11-23 Donnelly Corporation Vehicle imaging system with accessory control
JPH0799646A (ja) 1993-05-31 1995-04-11 Sony Corp ディジタル画像信号の階層符号化および復号装置
JP3212874B2 (ja) 1996-04-19 2001-09-25 日本電気株式会社 ボロメータ型赤外線撮像装置
JP2002516045A (ja) 1996-11-08 2002-05-28 ナショナル・コンピューター・システムズ・インコーポレーテッド 較正画素出力を伴う光走査
US20020012459A1 (en) 2000-06-22 2002-01-31 Chips Brain Co. Ltd. Method and apparatus for detecting stereo disparity in sequential parallel processing mode
US7154548B2 (en) 2001-01-29 2006-12-26 Valley Oak Semiconductor Multiplexed and pipelined column buffer for use with an array of photo sensors
US7151844B2 (en) 2001-12-06 2006-12-19 General Motors Corporation Image sensor method and apparatus having hardware implemented edge detection processing
EP1593258B1 (en) 2003-02-03 2009-04-22 Goodrich Corporation Random access imaging sensor
US8902971B2 (en) 2004-07-30 2014-12-02 Euclid Discoveries, Llc Video compression repository and model reuse
US7377643B1 (en) 2004-08-13 2008-05-27 Q Step Technologies, Inc. Method and apparatus for eye imaging with position registration and constant pupil size
US7038185B1 (en) 2004-12-01 2006-05-02 Mitsubishi Electric Research Laboratories, Inc. Camera for directly generating a gradient image
US7744216B1 (en) 2006-01-06 2010-06-29 Lockheed Martin Corporation Display system intensity adjustment based on pupil dilation
DE102006023611A1 (de) 2006-05-19 2007-11-22 Siemens Ag Verfahren und Vorrichtung zur pixelsynchronen Bildauswertung eines kamerabasierten Systems
CN100468385C (zh) * 2006-06-30 2009-03-11 大唐移动通信设备有限公司 一种实现串行信号处理的协处理器及方法
JP2008109477A (ja) * 2006-10-26 2008-05-08 Fuji Electric Holdings Co Ltd 画像生成装置および画像生成方法
US20100226495A1 (en) 2007-10-29 2010-09-09 Michael Kelly Digital readout method and apparatus
WO2008060124A2 (en) * 2006-11-17 2008-05-22 Silicon Communications Technology Co., Ltd. Low power image sensor adjusting reference voltage automatically and optical pointing device comprising the same
JP2008131407A (ja) 2006-11-22 2008-06-05 Matsushita Electric Ind Co Ltd 固体撮像素子およびそれを用いた撮像装置
AT504582B1 (de) 2006-11-23 2008-12-15 Arc Austrian Res Centers Gmbh Verfahren zur generierung eines bildes in elektronischer form, bildelement für einen bildsensor zur generierung eines bildes sowie bildsensor
US20090020612A1 (en) 2007-06-28 2009-01-22 Symbol Technologies, Inc. Imaging dual window scanner with presentation scanning
US8031970B2 (en) * 2007-08-27 2011-10-04 Arcsoft, Inc. Method of restoring closed-eye portrait photo
US9117119B2 (en) 2007-09-01 2015-08-25 Eyelock, Inc. Mobile identity platform
JP4948379B2 (ja) 2007-12-18 2012-06-06 キヤノン株式会社 パターン識別器生成方法、情報処理装置、プログラム及び記憶媒体
US8462996B2 (en) 2008-05-19 2013-06-11 Videomining Corporation Method and system for measuring human response to visual stimulus based on changes in facial expression
US8213782B2 (en) 2008-08-07 2012-07-03 Honeywell International Inc. Predictive autofocusing system
DE102008052930B4 (de) 2008-10-23 2011-04-07 Leuze Electronic Gmbh & Co Kg Bildverarbeitender Sensor
CN101754389A (zh) * 2008-12-03 2010-06-23 大唐移动通信设备有限公司 资源控制方法、装置和系统
FR2939919A1 (fr) 2008-12-16 2010-06-18 New Imaging Technologies Sas Capteur matriciel
US8886206B2 (en) 2009-05-01 2014-11-11 Digimarc Corporation Methods and systems for content processing
US20100295782A1 (en) 2009-05-21 2010-11-25 Yehuda Binder System and method for control based on face ore hand gesture detection
GB2471647B (en) * 2009-06-16 2016-03-23 Aptina Imaging Corp Use of Z-order data in an image sensor
JP5721994B2 (ja) 2009-11-27 2015-05-20 株式会社ジャパンディスプレイ 放射線撮像装置
WO2011077623A1 (ja) 2009-12-24 2011-06-30 株式会社ソニー・コンピュータエンタテインメント 画像処理装置、画像データ生成装置、画像処理方法、画像データ生成方法、および画像ファイルのデータ構造
EP2528015A1 (en) 2010-01-22 2012-11-28 Iritech Inc. Device and method for iris recognition using a plurality of iris images having different iris sizes
JP5848754B2 (ja) 2010-05-12 2016-01-27 ペリカン イメージング コーポレイション 撮像装置アレイおよびアレイカメラのためのアーキテクチャ
WO2012093381A1 (en) 2011-01-03 2012-07-12 Vitaly Sheraizin Camera assembly with an integrated content analyzer
CN103503029B (zh) 2011-04-11 2016-08-17 英特尔公司 检测面部特性的方法
JP2013003787A (ja) 2011-06-15 2013-01-07 Panasonic Corp 対象物検出装置
US9444547B2 (en) 2011-07-26 2016-09-13 Abl Ip Holding Llc Self-identifying one-way authentication method using optical signals
JP5789751B2 (ja) 2011-08-11 2015-10-07 パナソニックIpマネジメント株式会社 特徴抽出装置、特徴抽出方法、特徴抽出プログラム、および画像処理装置
KR101824413B1 (ko) 2011-08-30 2018-02-02 삼성전자주식회사 휴대단말기의 동작 모드 제어 방법 및 장치
US9299036B2 (en) 2011-08-31 2016-03-29 Striiv, Inc. Life pattern detection
JP5983616B2 (ja) 2011-09-13 2016-09-06 日本電気株式会社 撮像装置、撮像方法及びプログラム
US8748828B2 (en) 2011-09-21 2014-06-10 Kla-Tencor Corporation Interposer based imaging sensor for high-speed image acquisition and inspection systems
US9824296B2 (en) 2011-11-10 2017-11-21 Canon Kabushiki Kaisha Event detection apparatus and event detection method
EP2782258A4 (en) 2011-11-16 2015-08-12 Univ Shizuoka Nat Univ Corp LAMP SIGNAL GENERATION CIRCUIT AND CMOS IMAGE SENSOR
CN103135889B (zh) * 2011-12-05 2017-06-23 Lg电子株式会社 移动终端及其3d图像控制方法
FR2985065B1 (fr) 2011-12-21 2014-01-10 Univ Paris Curie Procede d'estimation de flot optique a partir d'un capteur asynchrone de lumiere
CN102663409B (zh) 2012-02-28 2015-04-22 西安电子科技大学 一种基于hog-lbp描述的行人跟踪方法
JP5655806B2 (ja) * 2012-03-23 2015-01-21 横河電機株式会社 同期装置及びフィールド機器
EP2665257B1 (en) 2012-05-16 2014-09-10 Harvest Imaging bvba Image sensor and method for power efficient readout of sub-picture
US9332239B2 (en) 2012-05-31 2016-05-03 Apple Inc. Systems and methods for RGB image processing
KR101896666B1 (ko) * 2012-07-05 2018-09-07 삼성전자주식회사 이미지 센서 칩, 이의 동작 방법, 및 이를 포함하는 시스템
US9389229B2 (en) 2012-07-18 2016-07-12 Theranos, Inc. Methods for detecting and measuring aggregation
EP2709066A1 (en) 2012-09-17 2014-03-19 Lakeside Labs GmbH Concept for detecting a motion of a moving object
US9936132B2 (en) 2012-10-26 2018-04-03 The Regents Of The University Of Michigan CMOS image sensors with feature extraction
US9081571B2 (en) 2012-11-29 2015-07-14 Amazon Technologies, Inc. Gesture detection management for an electronic device
US20140169663A1 (en) 2012-12-19 2014-06-19 Futurewei Technologies, Inc. System and Method for Video Detection and Tracking
US9760966B2 (en) 2013-01-08 2017-09-12 Nvidia Corporation Parallel processor with integrated correlation and convolution engine
US10373470B2 (en) 2013-04-29 2019-08-06 Intelliview Technologies, Inc. Object detection
US10694106B2 (en) 2013-06-14 2020-06-23 Qualcomm Incorporated Computer vision application processing
US20140368423A1 (en) 2013-06-17 2014-12-18 Nvidia Corporation Method and system for low power gesture recognition for waking up mobile devices
KR102081087B1 (ko) 2013-06-17 2020-02-25 삼성전자주식회사 동기적 영상과 비동기적 영상을 위한 영상 정합 장치 및 이미지 센서
US20150036942A1 (en) 2013-07-31 2015-02-05 Lsi Corporation Object recognition and tracking using a classifier comprising cascaded stages of multiple decision trees
US20150311977A1 (en) 2013-12-16 2015-10-29 Qualcomm Incorporated Methods and apparatus for configuring an image sensor for decoding high frequency visible light communication signals
KR101569268B1 (ko) 2014-01-02 2015-11-13 아이리텍 잉크 얼굴 구성요소 거리를 이용한 홍채인식용 이미지 획득 장치 및 방법
WO2015131045A1 (en) 2014-02-28 2015-09-03 The Board Of Trustees Of The Leland Stanford Junior University Imaging providing ratio pixel intensity
US9621266B2 (en) 2014-03-25 2017-04-11 Osram Sylvania Inc. Techniques for raster line alignment in light-based communication
US9983663B2 (en) 2014-05-16 2018-05-29 Qualcomm Incorporated Imaging arrangement for object motion detection and characterization
US20170091550A1 (en) 2014-07-15 2017-03-30 Qualcomm Incorporated Multispectral eye analysis for identity authentication
US9940533B2 (en) 2014-09-30 2018-04-10 Qualcomm Incorporated Scanning window for isolating pixel values in hardware for computer vision operations
US9554100B2 (en) 2014-09-30 2017-01-24 Qualcomm Incorporated Low-power always-on face detection, tracking, recognition and/or analysis using events-based vision sensor
US9838635B2 (en) 2014-09-30 2017-12-05 Qualcomm Incorporated Feature computation in a sensor element array
US10515284B2 (en) 2014-09-30 2019-12-24 Qualcomm Incorporated Single-processor computer vision hardware control and application execution
US20170132466A1 (en) 2014-09-30 2017-05-11 Qualcomm Incorporated Low-power iris scan initialization
US9762834B2 (en) 2014-09-30 2017-09-12 Qualcomm Incorporated Configurable hardware for computing computer vision features
US9767358B2 (en) 2014-10-22 2017-09-19 Veridium Ip Limited Systems and methods for performing iris identification and verification using mobile devices
US20160275348A1 (en) 2015-03-17 2016-09-22 Motorola Mobility Llc Low-power iris authentication alignment
US20160283789A1 (en) 2015-03-25 2016-09-29 Motorola Mobility Llc Power-saving illumination for iris authentication

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130229508A1 (en) * 2012-03-01 2013-09-05 Qualcomm Incorporated Gesture Detection Based on Information from Multiple Types of Sensors

Also Published As

Publication number Publication date
US20170116478A1 (en) 2017-04-27
CA2959549A1 (en) 2016-04-07
US9870506B2 (en) 2018-01-16
CN107077601A (zh) 2017-08-18
JP2018501531A (ja) 2018-01-18
JP7009553B2 (ja) 2022-01-25
US20160094814A1 (en) 2016-03-31
KR20230001014A (ko) 2023-01-03
WO2016053886A1 (en) 2016-04-07
BR112017006399A2 (pt) 2017-12-19
US9986211B2 (en) 2018-05-29
CA2959549C (en) 2023-03-14
EP3201831C0 (en) 2024-05-01
EP3201831A1 (en) 2017-08-09
US9554100B2 (en) 2017-01-24
KR20170063643A (ko) 2017-06-08
JP2020145714A (ja) 2020-09-10
US20170374322A1 (en) 2017-12-28
KR102633876B1 (ko) 2024-02-20
EP3201831B1 (en) 2024-05-01
JP6737777B2 (ja) 2020-08-12

Similar Documents

Publication Publication Date Title
KR102474008B1 (ko) 이벤트들-기반 시각 센서를 이용한 저-전력 상시-온 얼굴 검출, 추적, 인식 및/또는 분석
US11068712B2 (en) Low-power iris scan initialization
US10515284B2 (en) Single-processor computer vision hardware control and application execution
US10984235B2 (en) Low power data generation for iris-related detection and authentication
US10614332B2 (en) Light source modulation for iris size adjustment
US20140368626A1 (en) Computer vision application processing
US20180173933A1 (en) User authentication using iris sector
TWI763769B (zh) 單一處理器電腦視覺硬體控制及應用執行之裝置及方法
TWI775801B (zh) 低功率虹膜掃描初始化
BR112017006399B1 (pt) Detecção, rastreamento e/ou análise facial sempre ligado de baixo consumo de energia usando um sensor de visão baseado em eventos

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