KR20160021131A - 컴퓨터 비전 애플리케이션 프로세싱 - Google Patents

컴퓨터 비전 애플리케이션 프로세싱 Download PDF

Info

Publication number
KR20160021131A
KR20160021131A KR1020157035988A KR20157035988A KR20160021131A KR 20160021131 A KR20160021131 A KR 20160021131A KR 1020157035988 A KR1020157035988 A KR 1020157035988A KR 20157035988 A KR20157035988 A KR 20157035988A KR 20160021131 A KR20160021131 A KR 20160021131A
Authority
KR
South Korea
Prior art keywords
image
features
subset
data
frame
Prior art date
Application number
KR1020157035988A
Other languages
English (en)
Inventor
아치볼드 피츠제랄드 존
코스로 모하마드 라비
히마 빈두 다메찰라
타데우시 야로신스키
아쉬윈 스와미나탄
Original Assignee
퀄컴 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 퀄컴 인코포레이티드 filed Critical 퀄컴 인코포레이티드
Publication of KR20160021131A publication Critical patent/KR20160021131A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • H04N5/2258
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/96Management of image or video recognition tasks
    • 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/167Detection; Localisation; Normalisation using comparisons between temporally consecutive images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors
    • H04N21/8405Generation or processing of descriptive data, e.g. content descriptors represented by keywords
    • 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/667Camera operation mode switching, e.g. between still and video, sport and normal or high- and low-resolution modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • H04N5/232
    • 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

Abstract

컴퓨터 비전 애플리케이션 프로세싱을 개량하기 위한 방법들, 시스템, 및 기법들이 개시되어 있다. 특히, 방법들, 시스템, 및 기법들은 컴퓨터 비전 애플리케이션들을 위한 전력 소비를 감소시킬 수도 있고, 컴퓨터 비전 애플리케이션들을 위한 프로세싱 효율을 개선시킬 수도 있다.

Description

컴퓨터 비전 애플리케이션 프로세싱{COMPUTER VISION APPLICATION PROCESSING}
우선권 주장
본 출원은, 그 내용들이 그 전체적으로 참조를 위해 편입되는, 2013 년 6 월 14 일자로 출원된 "IMAGE-STATISTIC PROCESSING TO REDUCE COMPUTER VISION POWER USAGE (컴퓨터 비전 전력 사용을 감소시키기 위한 이미지-통계 프로세싱)" 라는 명칭의 미국 특허 가출원 제 61/835,400 호, 2013 년 8 월 29 일자로 출원된 "SYSTEM AND METHOD TO IDENTIFY A CONTEXT OF AN IMAGE (이미지의 맥락을 식별하기 위한 시스템 및 방법)" 라는 명칭의 미국 특허 가출원 제 61/871,678 호, 및 2014 년 6 월 12 일자로 출원된 "COMPUTER VISION APPLICATION PROCESSING (컴퓨터 비전 애플리케이션 프로세싱)" 이라는 명칭의 미국 특허 정규출원 제 14/303,491 호로부터 우선권을 주장한다.
분야
본 개시물은 일반적으로 컴퓨터 비전 애플리케이션 프로세싱에 관한 것이다.
기술에 있어서의 진보는 더 작고 그리고 더 강력한 컴퓨팅 디바이스들로 귀착되었다. 예를 들어, 소형이고, 경량이며, 사용자들에 의해 용이하게 휴대되는 휴대용 무선 전화들, 개인 정보 단말 (personal digital assistant; PDA) 들, 및 페이징 디바이스들과 같은 무선 컴퓨팅 디바이스들을 포함하는 다양한 휴대용 개인용 컴퓨팅 디바이스들이 현재 존재한다. 더욱 구체적으로, 셀룰러 전화들 및 인터넷 프로토콜 (Internet protocol; IP) 전화들과 같은 휴대용 무선 전화들은 무선 네트워크들 상에서 음성 및 데이터 패킷들을 통신할 수 있다. 또한, 많은 이러한 무선 전화들은 그 안에 편입된 다른 타입들의 디바이스들을 포함한다. 예를 들어, 무선 전화는 또한, 디지털 스틸 카메라, 디지털 비디오 카메라, 디지털 레코더, 및 오디오 파일 플레이어를 포함할 수 있다. 또한, 이러한 무선 전화들은 인터넷에 액세스하기 위해 이용될 수 있는, 웹 브라우저 애플리케이션과 같은 소프트웨어 애플리케이션들을 포함하는 실행가능한 명령들을 프로세싱할 수 있다. 이와 같이, 이 무선 전화들은 상당한 연산 기능들을 포함할 수 있다.
무선 전자 디바이스들 (예컨대, 무선 전화) 은 주어진 데이터 샘플링 주파수에서 이미지들을 캡처하는 이미지 센서를 가질 수도 있다. 이미지 센서는 내부 또는 외부 트리거들에 응답하여 이미지들을 캡처할 수도 있다. 외부 트리거의 예는 통신 디바이스로의 사용자의 근접성 (proximity) 이다. 예시하기 위하여, 무선 전자 디바이스는 사용자와 연관된 사운드를 검출하는 것에 응답하여 이미지 센서를 트리거링할 수도 있다. 내부 트리거의 예는 무선 전자 디바이스의 자원들의 가용성 (availability) 이다. 예시하기 위하여, 무선 전자 디바이스는 배터리 전력의 임계량을 초과하는 것이 이용가능한 것으로 결정하는 것에 응답하여 이미지 센서를 트리거링할 수도 있다.
추가적으로, 무선 전자 디바이스들은 다양한 컴퓨터 비전 애플리케이션들을 수행하기 위하여 컴퓨터 비전 기법들을 사용할 수도 있다. 예를 들어, 컴퓨터 비전 기법들은 보안 애플리케이션들 (예컨대, 감시, 침입 검출, 물체 검출, 얼굴 인식 등), 환경적-이용 애플리케이션들 (예컨대, 조명 제어), 물체 검출 및 추적 애플리케이션들 등을 위해 이용될 수도 있다. 컴퓨터 비전 기법들은 또한, 에지 검출, 광학적 문자 인식 (optical character recognition; OCR), 얼굴 검출 등을 위해 이용될 수도 있다.
컴퓨터 비전 애플리케이션들은 많은 양의 전력을 소비할 수도 있다. 예를 들어, 컴퓨터 비전 애플리케이션들은 경보 이벤트가 존재하는지 여부를 결정하기 위하여 애플리케이션-특정 프로세싱을 비디오 스트림에서의 각각의 프레임에 적용할 수도 있다. 예시하기 위하여, 컴퓨터 비전 애플리케이션은 물체가 시야에 있는지 여부 (예컨대, 경보 이벤트) 를 검출하도록 설계될 경우, 각각의 프레임은 물체가 프레임 내에 있는지 여부를 결정하기 위하여 애플리케이션-특정 프로세싱을 거칠 수도 있다. 각각의 프레임에 대해 애플리케이션-특정 프로세싱을 수행하는 것은 다량의 전력을 소비할 수도 있다.
일부의 컴퓨터 비전 애플리케이션들에 대하여, 무선 전자 디바이스는 이미지들 또는 프레임들의 시각적 디스크립터 (visual discriptor) 들을 연산할 수도 있다. 시각적 디스크립터들은 라이프-로깅 (life-logging), 제스처 식별/인식, 실내-실외 추론, 및 그 이상을 위해 이용될 수도 있다. 모든 이미지들 또는 프레임들의 시각적 디스크립터들을 연산하는 것은 자원 집중적일 수도 있고, 무선 전자 디바이스는 제한된 자원들을 가질 수도 있다. 또한, 카메라에 의해 캡처된 많은 이미지들은 거의 또는 전혀 가치를 가지지 않을 수도 있다. 예를 들어, 카메라에 의해 주기적으로 캡처된 이미지들은 동일하거나 거의 동일할 수도 있다.
컴퓨터 비전 애플리케이션들의 전력 사용을 감소시키기 위한 방법들 및 시스템들이 개시되어 있다. 비디오 스트림 (예컨대, 시간-순서화된 스틸 이미지들의 세트) 은 카메라를 통해 캡처될 수도 있고, 비디오 스트림의 개별적인 프레임들은 프로세싱 (예컨대, 통계 프로세싱) 을 거칠 수도 있다. 예를 들어, 통계 생성기는 비디오 스트림의 각각의 프레임에 대한 이미지 통계를 결정할 수도 있다. 이미지 통계는 각각의 프레임에 대한 강도 히스토그램 (intensity histogram), 각각의 프레임에 대한 컬러 히스토그램, 각각의 프레임에서의 특정 픽셀들 (예컨대, 픽셀들의 특정 행 (row) 또는 픽셀들의 특정 열 (column)) 에 대한 픽셀 값들의 합계, 또는 이들의 조합을 포함할 수도 있다. 변경 검출 회로는 제 1 프레임의 제 1 이미지 통계 및 제 2 프레임의 제 2 이미지 통계 사이의 차이가 임계점을 충족시키는지 여부를 결정할 수도 있다. 차이가 임계점을 충족시키지 않을 경우, 제 2 프레임에 대한 컴퓨터 비전 애플리케이션-특정 프로세싱은 전력을 절감하기 위하여 생략되거나 우회될 수도 있다. 차이가 임계점을 충족시킬 경우, 변경 검출 회로는 "고전력" 프로세싱 경로를 활성화 (예컨대, 웨이크 업 (wake up)) 하기 위하여 피드백 신호를 선택 회로에 제공할 수도 있다. 예를 들어, 고전력 프로세싱 경로는 제 2 프레임에 대한 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하기 위한 애플리케이션 프로세서 (예컨대, 컴퓨터 비전 애플리케이션들을 실행하기 위해 이용된 프로세서) 를 포함할 수도 있다. 일부의 예들에서, 상이한 프로세싱 경로들 또는 그 부분들은 상이한 조건들에 기초하여 상이한 시간들에서 가능하게 될 수도 있다.
컴퓨터 비전 애플리케이션-특정 프로세싱의 비-제한적인 예로서, 애플리케이션 프로세서는 갑자기 대신에, 필요에 따라 특징 (예컨대, 시각적 디스크립터) 또는 특징들의 세트를 추출할 수도 있다. 예를 들어, 애플리케이션 프로세서는 제 2 프레임의 맥락 (context) (예컨대, 로케이션) 을 식별하기 위하여 제 2 프레임의 특징들 (예컨대, 시각적 디스크립터들) 의 제 1 서브세트 (subset) 를 추출할 수도 있다. 예를 들어, 애플리케이션 프로세서는 제 2 프레임과 관련된 에지 정보 (edge information) 를 추출할 수도 있다. 애플리케이션 프로세서는 특징들의 제 1 서브세트와 연관된 신뢰 레벨 (들) 이 임계 신뢰 레벨을 충족시키지 않는 것으로 결정할 수도 있다. 결정에 기초하여, 애플리케이션 프로세서는 제 2 프레임의 더 많은 특징들 (예컨대, 특징들의 제 2 서브세트) 을 추출할 수도 있다. 예를 들어, 애플리케이션 프로세서는 제 2 프레임의 더 높은 해상도의 복사본으로부터 에지 정보를 추출할 수도 있다. 또 다른 예로서, 애플리케이션 프로세서는 제 2 프레임의 컬러 정보를 추출할 수도 있다. 애플리케이션 프로세서는 제 2 프레임의 추가적인 추출된 특징들과 연관된 신뢰 레벨 (들) 이 임계 신뢰 레벨을 충족시키는 것으로 결정할 수도 있고, 프레임의 맥락 (context) 을 결정하기 위하여 추가적인 추출된 특징들을 이용할 수도 있다.
애플리케이션 프로세서는 제 2 프레임에 대한 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하기 위하여 프로세싱 자원들 (예컨대, 프로세싱 코어들) 의 계층구조를 가질 수도 있다. 예를 들어, 제 1 프로세싱 자원 (예컨대, "저전력" 프로세싱 자원) 은 제 2 프레임에 대한 제 1 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행할 수도 있다. 제 1 프로세싱 자원이 제 2 프레임이 제 1 프로세싱 자원의 기능들 외부의 추가적인 컴퓨터 비전 애플리케이션-특정 프로세싱 (예컨대, 제 2 컴퓨터 비전 애플리케이션-특정 프로세싱) 을 요구하는 것으로 결정할 경우, 제 1 프로세싱 자원은 제 2 프로세싱 자원 (예컨대, "고전력" 프로세싱 자원) 이 제 2 프레임에 대한 제 2 컴퓨터 비전 애플리케이션-특정 프로세싱 (예컨대, 제 2 프로세싱 자원을 웨이크 업) 을 수행할 것을 요청할 수도 있다. 어떤 실시형태들에서, 제 2 프로세싱 자원은, 제 1 프로세싱 자원이 전력을 절감하기 위해 비활성화 (예컨대, "슬립 (sleep)" 상태에 진입) 될 수도 있도록, 제 2 프레임에 대한 제 1 및 제 2 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행할 수도 있다. 다른 실시형태들에서, 제 2 프로세싱 자원은 제 2프레임에 대한 제 2 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하는 것, 제 2 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하기 위하여 제 1 프로세싱 자원을 통지/프로그래밍하는 것, 및 전력을 절감하기 위하여 슬립 상태로 진입하는 것을 "거절" 할 수도 있다.
특정 실시형태에서, 방법은 변경 검출 회로에서, 센서에 의해 캡처된 제 1 센서 데이터 및 센서에 의해 캡처된 제 2 센서 데이터 사이의 변경량에 기초하여 제어 신호를 생성하는 단계를 포함하고, 여기서, 변경 검출 회로는 제 1 프로세싱 경로에 포함된다. 방법은 또한, 제어 신호에 기초하여 컴퓨터 비전 애플리케이션-특정 프로세싱을 위하여 제 2 센서 데이터를 제 2 프로세싱 경로에 제공하는 단계를 포함한다.
또 다른 특정 실시형태에서, 장치는 센서에 의해 캡처된 제 1 센서 데이터 및 센서에 의해 캡처된 제 2 센서 데이터 사이의 변경량에 기초하여 제어 신호를 생성하도록 구성된 변경 검출 회로를 포함하고, 여기서, 변경 검출 회로는 제 1 프로세싱 경로에 포함된다. 장치는 또한, 제어 신호에 기초하여 제 2 센서 데이터에 대한 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하도록 구성된 제 2 프로세싱 경로를 포함한다.
또 다른 특정 실시형태에서, 장치는 센서에 의해 캡처된 제 1 센서 데이터 및 센서에 의해 캡처된 제 2 센서 데이터 사이의 변경량에 기초하여 제어 신호를 생성하기 위한 수단을 포함하고, 여기서, 제어 신호를 생성하기 위한 수단은 제 1 프로세싱 경로에 포함된다. 장치는 또한, 제어 신호에 기초하여 제 2 센서 데이터에 대한 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하기 위한 수단을 포함하고, 여기서, 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하기 위한 수단은 제 2 프로세싱 경로에 포함된다.
또 다른 특정 실시형태에서, 비일시적인 컴퓨터 판독가능 매체는 명령들을 포함하고, 상기 명령들은, 프로세싱 유닛에 의해 실행될 때, 프로세싱 유닛으로 하여금, 변경 검출 회로에서, 센서에 의해 캡처된 제 1 센서 데이터 및 센서에 의해 캡처된 제 2 센서 데이터 사이의 변경량에 기초하여 제어 신호를 생성하게 하고, 여기서, 변경 검출 회로는 제 1 프로세싱 경로에 포함된다. 명령들은 또한, 프로세싱 유닛으로 하여금, 제어 신호에 기초하여 컴퓨터 비전 애플리케이션-특정 프로세싱을 위하여 제 2 센서 데이터를 제 2 프로세싱 경로에 제공하게 하도록 실행가능하다.
또 다른 특정 실시형태에서, 방법은 이동 디바이스에서, 이미지 센서로부터 감지 데이터 (sensory data) 를 수신하는 단계를 포함하고, 여기서, 감지 데이터는 이미지와 관련된다. 방법은 또한, 감지 데이터로부터 이미지의 특징들의 제 1 서브세트를 추출하는 단계, 및 분석 기준을 충족시키는 특징들의 제 1 서브세트에 기초하여 감지 데이터로부터 이미지의 특징들의 제 2 서브세트를 추출하는 단계를 포함한다. 방법은 특징들의 제 2 서브세트에 적어도 부분적으로 기초하여 이미지의 맥락을 표시하는 맥락 데이터를 생성하는 단계를 더 포함한다.
또 다른 특정 실시형태에서, 장치는 이미지 센서로부터 감지 데이터를 수신하도록 구성된 프로세서를 포함하고, 여기서, 감지 데이터는 이미지와 관련된다. 프로세서는 또한, 감지 데이터로부터 특징들의 제 1 서브세트를 추출하도록 구성되고, 특징들의 제 1 서브세트는 선택 기준에 기초하여 선택된다. 프로세서는 특징들의 제 1 서브세트에 적어도 부분적으로 기초하여 이미지의 맥락을 표시하는 맥락 데이터를 생성하도록 추가로 구성된다.
또 다른 특정 실시형태에서, 장치는 이미지 센서로부터 감지 데이터를 수신하기 위한 수단을 포함하고, 여기서, 감지 데이터는 이미지와 관련된다. 장치는 또한, 감지 데이터로부터 특징들의 제 1 서브세트를 추출하기 위한 수단을 포함하고, 특징들의 제 1 서브세트는 선택 기준에 기초하여 선택된다. 장치는 특징들의 제 1 서브세트에 적어도 부분적으로 기초하여 이미지의 맥락을 표시하는 맥락 데이터를 생성하기 위한 수단을 더 포함한다.
또 다른 특정 실시형태에서, 컴퓨터 판독가능 저장 매체는 명령들을 포함하고, 상기 명령들은, 프로세서에 의해 실행될 때, 프로세서로 하여금 동작들을 수행하게 하는 명령들을 포함한다. 동작들은 제 1 이미지 센서로부터 제 1 감지 데이터를 수신하는 것을 포함하고, 여기서, 제 1 감지 데이터는 제 1 이미지와 관련된다. 동작들은 또한, 제 1 감지 데이터로부터 제 1 이미지의 특징들의 제 1 서브세트를 추출하는 것, 및 분석 기준을 충족시키는 특징들의 제 1 서브세트에 기초하여 제 2 이미지 센서로부터 제 2 감지 데이터를 요청하는 것을 포함하고, 여기서, 제 2 감지 데이터는 제 2 이미지와 관련된다. 동작들은 제 2 이미지 센서로부터 제 2 감지 데이터를 수신하는 것, 제 2 감지 데이터로부터 제 2 이미지의 특징들의 제 2 서브세트를 추출하는 것, 및 특징들의 제 2 서브세트에 적어도 부분적으로 기초하여 제 1 이미지의 맥락을 표시하는 맥락 데이터를 생성하는 것을 더 포함한다.
개시된 실시형태들 중의 적어도 하나에 의해 제공된 하나의 특정한 장점은 컴퓨터 비전 애플리케이션들을 실행하기 위해 이용된 애플리케이션 프로세서에 의해 소비된 전력량을 감소시키는 것이다. 예를 들어, 특정 프레임의 애플리케이션-특정 프로세싱은 특정 프레임 및 이전의 프레임이 (예컨대, 프레임들의 이미지 통계의 비교에 기초하여) 실질적으로 유사하다는 결정에 응답하여 우회될 수도 있다. 애플리케이션-특정 프로세싱을 우회시키는 것은 배터리 전력을 절감할 수도 있다.
개시된 실시형태들 중의 적어도 하나에 의해 제공된 또 다른 특정한 장점은 이미지 맥락들의 식별을 가능하게 하는 것이다. 예를 들어, 이미지의 맥락은 이미지의 모든 특징들보다 더 적은 것을 추출함으로써 식별될 수도 있다. 연산 비용들에 있어서의 상당한 감소 및 전력 사용의 대응하는 감소가 달성될 수도 있다. 본 개시물의 다른 양태들, 장점들, 및 특징들은 다음의 섹션들: 도면들의 간단한 설명, 상세한 설명, 및 청구범위를 포함하는 전체의 출원의 검토 후에 명백해질 것이다.
도 1 은 비디오 스트림의 이미지 프레임들 및 이미지 프레임들의 대응하는 픽셀 표현들의 특정한 예시적인 실시형태의 도면이고;
도 2 는 비디오 스트림의 이미지 프레임들의 부분적인 픽셀 표현들의 특정한 예시적인 실시형태의 도면이고;
도 3 은 이미지 통계에 기초하여 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키도록 동작가능한 프로세싱 시스템의 특정한 예시적인 실시형태의 블록도이고;
도 4 는 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키도록 동작가능한 프로세싱 시스템의 특정한 예시적인 실시형태의 도면이고;
도 5 는 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키도록 동작가능한 프로세싱 시스템의 또 다른 특정한 예시적인 실시형태의 도면이고;
도 6 은 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키도록 동작가능한 프로세싱 시스템의 또 다른 특정한 예시적인 실시형태의 도면이고;
도 7 은 도 6 의 제 2 프로세싱 경로의 도면이고;
도 8 은 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키도록 동작가능한 프로세싱 시스템의 또 다른 특정한 예시적인 실시형태의 도면이고;
도 9 는 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키도록 동작가능한 프로세싱 시스템의 또 다른 특정한 예시적인 실시형태의 도면이고;
도 10 은 부분적인 전력 모드에서의 도 9 의 프로세싱 시스템을 예시하는 도면이고;
도 11 은 전체 전력 모드에서의 도 9 의 프로세싱 시스템을 예시하는 도면이고;
도 12 는 이미지의 맥락을 식별하기 위하여 상시-온 (always-on) 카메라를 사용할 수도 있는 이동 디바이스들의 특정한 예시적인 실시형태의 블록도이고;
도 13 은 디바이스들의 실시형태들이 상시-온 카메라의 샘플링 레이트의 변조에 영향을 줄 수도 있는 맥락 결정들에서 센서 및 다른 정보를 어떻게 사용할 수도 있는지를 예시하는 입력/출력 도면의 도면이고;
도 14 는 이미지의 맥락을 식별하기 위한 시스템의 특정한 예시적인 실시형태의 블록도이고;
도 15 는 이미지들의 특징들의 서브세트들을 추출하는 것과 연관된 연산 간격들을 예시하고;
도 16 은 이미지의 맥락을 식별하기 위한 시스템의 또 다른 특정 실시형태의 도면이고;
도 17 은 이미지의 맥락을 식별하기 위한 시스템의 또 다른 특정 실시형태의 도면이고;
도 18 은 이미지의 맥락을 식별하기 위한 시스템의 또 다른 특정 실시형태의 도면이고;
도 19 는 이미지의 맥락을 식별하기 위한 시스템의 또 다른 특정 실시형태의 도면이고;
도 20 은 이미지의 맥락을 식별하기 위한 시스템의 또 다른 특정 실시형태의 도면이고;
도 21 은 이미지의 맥락을 식별하기 위한 시스템의 또 다른 특정 실시형태의 도면이고;
도 22 는 이미지의 맥락을 식별하기 위한 시스템의 또 다른 특정 실시형태의 도면이고;
도 23 은 이미지의 맥락을 식별하기 위한 시스템으로서, 도 21 의 시스템에 결합될 수도 있는 상기 시스템의 또 다른 특정 실시형태의 도면이고;
도 24 는 이미지의 맥락을 식별하기 위한 시스템으로서, 도 22 의 시스템, 도 23 의 시스템, 또는 양자에 결합될 수도 있는 상기 시스템의 또 다른 특정 실시형태의 도면이고;
도 25 는 이미지의 맥락을 식별하기 위한 시스템으로서, 도 24 의 시스템에 결합될 수도 있는 상기 시스템의 또 다른 특정 실시형태의 도면이고;
도 26 은 이미지의 맥락을 식별하기 위한 시스템으로서, 도 24 의 시스템, 도 25 의 시스템, 또는 양자에 결합될 수도 있는 상기 시스템의 또 다른 특정 실시형태의 도면이고;
도 27 은 이미지의 맥락을 식별하기 위한 시스템으로서, 도 24 의 시스템, 도 26 의 시스템, 또는 양자에 결합될 수도 있는 상기 시스템의 또 다른 특정 실시형태의 도면이고;
도 28 은 테스트 이미지들의 특징들의 다양한 서브세트들을 추출하는 것과 연관된 실행 시간들의 예를 예시하는 막대 도표이고;
도 29 는 테스트 이미지들의 특징들의 다양한 서브세트들을 추출하는 것과 연관된 메모리 사용의 예를 예시하는 막대 도표이고;
도 30 은 이미지 통계에 기초하여 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키는 방법의 특정 실시형태의 플로우차트이고;
도 31 은 이미지의 맥락을 식별하는 방법의 특정 실시형태를 예시하는 플로우차트이고;
도 32 는 이미지의 맥락을 식별하는 방법의 또 다른 특정 실시형태를 예시하는 플로우차트이고;
도 33 은 이미지의 맥락을 식별하는 방법의 또 다른 특정 실시형태를 예시하는 플로우차트이고;
도 34 는 이미지의 맥락을 식별하는 방법의 또 다른 특정 실시형태를 예시하는 플로우차트이고;
도 35 는 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키는 방법의 특정 실시형태의 플로우차트이고;
도 36 은 이동 디바이스의 예시적인 실시형태의 도면이고;
도 37 은 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키도록 동작가능한 컴포넌트들을 포함하는 무선 디바이스의 블록도이고; 그리고
도 38 은 이미지의 맥락을 식별하도록 동작가능한 디바이스의 특정한 예시적인 실시형태의 블록도이다.
도 1 을 참조하면, 비디오 스트림의 이미지 프레임들 및 이미지 프레임들의 대응하는 픽셀 표현들의 특정한 예시적인 실시형태가 도시되어 있다. 예를 들어, 비디오 스트림은 이미지 데이터의 제 1 프레임 (102), 이미지 데이터의 제 2 프레임 (104), 및 이미지 데이터의 제 3 프레임 (106) 을 포함할 수도 있다. 특정 실시형태에서, 제 1 프레임 (102), 제 2 프레임 (104), 및 제 3 프레임 (106) 은 비디오 스트림에서 연속적인 이미지 프레임들일 수도 있다.
비디오 스트림은 애플리케이션-특정 프로세싱 (예컨대, 컴퓨터 비전 애플리케이션 프로세싱) 을 거칠 수도 있다. 예를 들어, 특정한 예시적인 실시형태에서, 비디오 스트림은 손 인식 애플리케이션을 거칠 수도 있다 (예컨대, 손이 시야 (field of view) 에 있는지 여부를 검출하는 프로세싱을 거침). 그러나, 다른 실시형태들에서, 비디오 스트림은 다른 컴퓨터 비전 애플리케이션들을 거칠 수도 있다. 예를 들어, 비디오 스트림은 보안 애플리케이션들 (예컨대, 감시, 침입 검출, 물체 검출, 얼굴 인식 등), 환경적-이용 애플리케이션들 (예컨대, 조명 제어), 물체 검출 및 추적 애플리케이션들 등을 거칠 수도 있다.
도 1 에서 예시된 프레임들에서, 손은 제 1 프레임 (102) 의 시야에서 존재 (예컨대, 가시적) 하지 않고, 손의 부분이 제 2 프레임 (104) 의 시야에서 가시적이고, 손은 제 3 프레임 (106) 의 시야에서 완전히 가시적이다. 제 1 프레임 (102) 은 제 1 픽셀 표현 (112) 에서의 픽셀들에 의해 특징될 수도 있고, 제 2 프레임 (104) 은 제 2 픽셀 표현 (114) 에서의 픽셀들에 의해 특징될 수도 있고, 제 3 프레임 (106) 은 제 3 픽셀 표현 (116) 에서의 픽셀들에 의해 특징될 수도 있다.
프로세싱 시스템 내의 저전력 디바이스 (도 1 에서 도시되지 않음) 는 각각의 프레임 (102 내지 106) 이 캡처된 후에 비디오 스트림에서의 각각의 프레임 (102 내지 106) 에 대한 이미지 통계를 생성할 수도 있다. 예를 들어, 저전력 디바이스는 대응하는 픽셀 표현들 (112 내지 116) 에 기초하여 각각의 프레임 (102 내지 106) 에 대한 이미지 통계를 생성할 수도 있다. 그레이스케일 이미지 프레임 (grayscale image frame) 들에 대하여, 픽셀 표현들 (112 내지 116) 에서의 각각의 픽셀은 제로 (0) 및 255 (255) 사이의 강도 값에 대응할 수도 있다. 제로의 강도 값은 백색 픽셀에 대응할 수도 있고, 255 의 강도 값은 흑색 픽셀에 대응할 수도 있다. 저전력 디바이스는 특정 프레임 (102 내지 106) 에서의 각각의 픽셀에 대한 강도 값을 결정할 수도 있고, 각각의 강도 값에 대한 카운트들에 기초하여 특정 프레임 (102 내지 106) 에 대한 강도 히스토그램 (intensity histogram) 을 생성할 수도 있다. 예를 들어, 저전력 디바이스는 제 1 프레임 (102) 에 대한 제 1 강도 히스토그램, 제 2 프레임 (104) 에 대한 제 2 강도 히스토그램, 및 제 3 프레임 (106) 에 대한 제 3 강도 히스토그램을 생성할 수도 있다.
멀티-스펙트럼 이미지 프레임들에 대하여, 픽셀 표현들 (112 내지 116) 에서의 각각의 픽셀은 특정 컬러 값에 대응할 수도 있다. 컬러 값들은 픽셀에서의 적색 (R), 녹색 (G), 및 청색 (B) 의 농도에 기초할 수도 있다. 저전력 디바이스는 특정 프레임 (102 내지 106) 에서의 각각의 픽셀에 대한 컬러 값을 결정할 수도 있고, 각각의 컬러 값에 대한 카운트들에 기초하여 특정 프레임 (102 내지 106) 에 대한 컬러 히스토그램 (color histogram) 을 생성할 수도 있다. 예를 들어, 저전력 디바이스는 제 1 프레임 (102) 에 대한 제 1 컬러 히스토그램, 제 2 프레임 (104) 에 대한 제 2 컬러 히스토그램, 및 제 3 프레임 (106) 에 대한 제 3 컬러 히스토그램을 생성할 수도 있다.
프로세싱 시스템 내의 고전력 디바이스 (도 1 에서 도시되지 않음) 는 비디오 스트림에서의 특정 프레임들에 대한 애플리케이션-특정 프로세싱을 수행할 수도 있다. 예를 들어, 특정한 예시적인 실시형태에서, 애플리케이션-특정 프로세싱은 특정 물체 (예컨대, 손) 가 선택된 프레임 내에 있는지 여부를 결정하는 것을 포함할 수도 있다. 다른 실시형태들에서, 애플리케이션-특정 프로세싱은 경보 이벤트가 트리거링되는지 여부를 결정하는 것을 포함할 수도 있다. 경보 이벤트는 프레임들 사이의 조건에 있어서의 변경에 대응할 수도 있다. 예시적인 비-제한적인 예들로서, 경보 이벤트는 환자가 침대로부터 낙하하는 것, 주택 침입, 자동차가 차도에 들어오는 것, 사람이 문을 통과하는 것, 등에 대응할 수도 있다. 저전력 디바이스에서 이미지 통계를 생성하는 것은 고전력 디바이스에서 애플리케이션-특정 프로세싱을 수행하는 것보다 더 적은 전력을 소비할 수도 있다. 예를 들어, 제 2 이미지 통계를 생성하는 것은 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱을 수행하는 것보다 더 적은 전력을 소비할 수도 있다.
동작 동안에, 카메라 (예컨대, 비디오 카메라) 는 제 1 시간에서 제 1 프레임 (102) 을 캡처할 수도 있고, 프로세싱 시스템은 제 1 프레임 (102) 에 대한 이미지 프로세싱을 수행할 수도 있다. 예를 들어, 저전력 디바이스는 제 1 프레임 (102) 에 대한 제 1 이미지 통계 (예컨대, 제 1 강도 히스토그램 및/또는 제 1 컬러 히스토그램) 를 생성할 수도 있고, 고전력 디바이스는 손이 제 1 프레임 (102) 에서 가시적인지 여부를 결정하기 위하여 제 1 프레임 (102) 에 대한 애플리케이션-특정 프로세싱을 수행할 수도 있다. 제 1 카메라 (102) 를 프로세싱한 후, 카메라는 제 2 시간에서 제 2 프레임 (104) 을 캡처할 수도 있다. 저전력 디바이스는 제 2 프레임 (104) 에 대한 제 2 이미지 통계를 생성할 수도 있다. 고전력 디바이스가 손이 제 1 프레임 (102) 에서 가시적이지 않았던 것으로 결정할 경우, 프로세싱 시스템 내의 통계 프로세싱 디바이스 (108) 는 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱을 수행할 것인지 여부를 결정하기 위하여 (예컨대, 손이 제 2 프레임 (104) 에서 가시적인지 여부를 결정하기 위하여) 제 2 이미지 통계를 제 1 이미지 통계와 비교할 수도 있다. 또 다른 특정 실시형태들에서, 애플리케이션-특정 프로세싱을 수행하는 것은 경보 이벤트가 트리거링되었는지 여부를 결정하는 것을 포함할 수도 있다. 예를 들어, 경보 이벤트는 제 1 프레임 (102) 및 제 2 프레임 (104) 사이의 조건에 있어서의 변경에 대응할 수도 있다.
예를 들어, 통계 프로세싱 디바이스 (108) 는 제 1 이미지 통계 및 제 2 이미지 통계 (예컨대, N 번째 이미지 통계) 를 수신할 수도 있다. 통계 프로세싱 디바이스 (108) 는 제 2 이미지 통계 및 제 1 이미지 통계 사이의 제 1 변경량이 임계점을 충족시키는지 여부를 결정할 수도 있다. 변경량이 임계점을 충족시키지 않을 경우, 프로세싱 시스템은 (예컨대, 제 2 프레임 (104) 의 제 2 이미지 통계를 생성하기 위하여) 제 2 프레임 (104) 의 부분적-프로세싱을 수행하기만 할 수도 있고, 제 2 프레임 (104) 의 애플리케이션-특정 프로세싱을 우회시키거나 포기할 수도 있다. 변경량이 임계점을 충족시킬 경우, 프로세싱 시스템은 제 2 이미지 통계를 생성할 뿐만 아니라, 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱을 수행함으로써, 제 2 프레임 (104) 에 대한 더욱 완전한 프로세싱을 수행할 수도 있다.
그레이스케일 이미지들에 대하여, 제 1 강도 히스토그램에서의 특정 강도 값에 대한 픽셀들의 제 1 카운트와, 제 2 강도 히스토그램에서의 특정 강도 값에 대한 픽셀들의 제 2 카운트와의 사이의 차이가 특정 값보다 더 클 때, 제 1 변경량은 임계점을 충족시킬 수도 있다. 임계점은 사용자-선택 임계점일 수도 있다. 비-제한적인 예로서, 제 1 픽셀 표현 (112) 및 제 2 픽셀 표현 (114) 은 각각 2000 만 (20,000,000) 픽셀들을 포함할 수도 있다 (예컨대, 제 1 및 제 2 프레임들 (102, 104) 은 20 메가픽셀 이미지들임). 제 1 픽셀 표현 (112) 은 1100 만 (11,000,000) 백색 픽셀들 (예컨대, 제로의 강도 값을 가지는 1100 만 픽셀들) 을 포함할 수도 있고, 제 2 픽셀 표현 (114) 은 1050 만 (10,500,000) 백색 픽셀들을 포함할 수도 있다 (예컨대, 50 만 픽셀들의 차이). 임계점이 10 만 픽셀들일 경우, 제 1 변경량 (예컨대, 차이) 은 임계점을 충족시키고, 프로세싱 시스템은 손이 제 2 프레임 (104) 에서 가시적인지 여부를 결정하기 위하여 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱을 수행할 수도 있다. 임계점이 100 만 픽셀들일 경우, 제 1 변경량은 임계점을 충족시키는 것에 실패하고, 프로세싱 시스템은 전력을 절감하기 위하여 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱을 우회시킬 수도 있다.
멀티-스펙트럼 이미지 프레임들에 대하여, 제 1 컬러 히스토그램에서의 특정 컬러 값에 대한 픽셀들의 제 1 카운트와, 제 2 컬러 히스토그램에서의 특정 컬러에 대한 픽셀들의 제 2 카운트와의 사이의 차이가 특정 값보다 더 클 때, 제 1 변경량은 임계점을 충족시킬 수도 있다. 비-제한적인 예로서, 제 1 픽셀 표현 (112) 및 제 2 픽셀 표현 (114) 은 각각 200 만 픽셀들을 포함할 수도 있다. 제 1 픽셀 표현 (112) 은 500 만 적색 픽셀들을 포함할 수도 있고, 제 2 픽셀 표현 (114) 은 800 만 적색 픽셀들을 포함할 수도 있다 (예컨대, 300 만 픽셀들의 차이). 임계점이 200 만 픽셀들일 경우, 제 1 변경량 (예컨대, 차이) 은 임계점을 충족시키고, 프로세싱 시스템은 손이 제 2 프레임 (104) 에서 가시적인지 여부를 결정하기 위하여 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱을 수행할 수도 있다. 임계점이 400 만 픽셀들일 경우, 제 1 변경량은 임계점을 충족시키는 것에 실패하고, 프로세싱 시스템은 전력을 절감하기 위하여 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱을 우회시킬 수도 있다. 값들의 특정 범위는 특정 컴퓨터 비전 애플리케이션에 기초한 임계점에 대해 이용될 수도 있다. 예를 들어, 손 검출 (또는 얼굴 검출) 과 연관된 컴퓨터 비전 애플리케이션은 피부 색조 (skin tone) 들과 연관된 컬러들에 초점을 맞출 수도 있다.
제 2 프레임 (104) 을 프로세싱한 후, 프로세싱 시스템은 제 3 프레임 (106) 을 프로세싱할 수도 있다. 예를 들어, 저전력 디바이스는 제 3 프레임 (106) 에 대한 제 3 이미지 통계 (예컨대, 제 3 강도 히스토그램 및/또는 제 3 컬러 히스토그램) 를 생성할 수도 있다. 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱이 우회되었을 경우, 통계 프로세싱 디바이스 (108) 는 제 3 이미지 통계 및 제 2 이미지 통계 사이의 제 2 변경량이 임계점을 충족시키는지 여부를 결정할 수도 있다. 제 2 변경량이 임계점을 충족시킬 경우, 고전력 디바이스는 손이 제 3 프레임 (106) 에서 가시적인지 여부를 결정하기 위하여 제 3 프레임 (106) 에 대한 애플리케이션-특정 프로세싱을 수행할 수도 있다. 제 2 변경량이 임계점을 충족시키지 않을 경우, 고전력 디바이스는 에너지를 절감하기 위하여 제 3 프레임 (106) 에 대한 애플리케이션-특정 프로세싱을 우회시킬 수도 있다.
특정 실시형태에서, 통계 프로세싱 디바이스 (108) 는 제 3 이미지 통계 및 제 1 이미지 통계 사이의 제 3 변경량이 임계점을 충족시키는지 여부를 결정할 수도 있다. 제 3 변경량이 임계점을 충족시킬 경우, 애플리케이션-특정 프로세싱은 제 3 프레임 (106) 에 대해 수행될 수도 있고, 제 3 변경량이 임계점을 충족시키는 것에 실패할 경우에는, 제 3 프레임 (106) 에 대한 애플리케이션-특정 프로세싱이 우회될 수도 있다. 제 3 변경량에 기초한 애플리케이션-특정 프로세싱을 수행하는 것은, 궁극적으로 큰 변경들을 초래하는 프레임들 사이에서 발생하는 정상적인 변경들 (이미지 통계에서의 작은 변경들) 로 인해 경보 이벤트 (예컨대, 가시적 손) 를 놓칠 가능성을 감소시킬 수도 있다. 추가적으로, 불확정한 수의 프레임들의 전체-프로세싱 (full-processing) 은 임계점이 충족되지 않는다는 결정에 기초하여 스킵 (skip) (예컨대, 우회) 될 수도 있다. 특정 실시형태에서, 이미지 통계는 주기적으로 리프레시 (refresh) 될 수도 있고, 전체-프로세싱은 임계점이 N 번째 프레임에 의해 충족되지 않더라도 임의의 N 번째 프레임에 대해 수행될 수도 있다.
이전의 프레임과 유사한 이미지 통계를 가지는 특정 프레임에 대한 애플리케이션-특정 프로세싱을 우회시키는 것은 전자 디바이스들에서 전력을 절감할 수도 있다. 예를 들어, 애플리케이션-특정 프로세싱은 프로세싱 시스템 내의 고전력 디바이스들을 사용할 수도 있다. 각각의 프레임의 통계를 생성 및/또는 평가하기 위하여, 통계 프로세싱 디바이스 (108) 와 같은 저전력 디바이스들을 이용함으로써, 특정 프레임들이 실질적으로 동일하고 애플리케이션-특정 프로세싱은 동일한 프레임들 중의 하나에 대해 수행되기만 할 필요가 있다는 결정이 행해질 수도 있다. 그 결과, 동일한 프레임들에 대한 애플리케이션-특정 프로세싱을 포기함으로써, 전력이 절감될 수도 있다.
도 2 를 참조하면, 비디오 스트림의 이미지 프레임들의 부분적인 픽셀 표현들의 특정한 예시적인 실시형태가 도시되어 있다. 예를 들어, 도 1 의 제 1 프레임 (102) 은 제 1 부분적인 픽셀 표현 (212) 에 의해 특징될 수도 있고, 도 1 의 제 2 프레임 (104) 은 제 2 부분적인 픽셀 표현 (214) 에 의해 특징될 수도 있다.
제 1 부분적인 픽셀 표현 (212) 은 픽셀들의 제 1 행 (row) (202), 픽셀들의 제 1 열 (column) (204), 또는 양자를 포함할 수도 있다. 픽셀들의 제 1 행 (202) 및 픽셀들의 제 1 열 (204) 은 도 1 의 제 1 픽셀 표현 (112) 내에 포함되는 선택 픽셀들일 수도 있다. 제 2 부분적인 픽셀 표현 (214) 은 픽셀들의 제 2 행 (222), 픽셀들의 제 2 열 (224), 또는 양자를 포함할 수도 있다. 픽셀들의 제 2 행 (222) 및 픽셀들의 제 2 열 (224) 은 도 1 의 제 2 픽셀 표현 (114) 내에 포함되는 선택 픽셀들일 수도 있다. 특정 실시형태에서, 픽셀들의 제 1 행 (202) 은 제 1 프레임 (102) 에서의 구역을 나타내는 픽셀들에 대응할 수도 있고, 픽셀들의 제 2 행 (222) 은 제 2 프레임 (104) 에서의 동일한 구역을 나타내는 픽셀들에 대응할 수도 있다. 추가적으로, 픽셀들의 제 1 열 (204) 은 제 1 프레임 (102) 에서의 구역을 나타내는 픽셀들에 대응할 수도 있고, 픽셀들의 제 2 열 (224) 은 제 2 프레임 (104) 에서의 동일한 구역을 나타내는 픽셀들에 대응할 수도 있다.
저전력 디바이스는 픽셀들의 제 1 행 (202), 픽셀들의 제 1 열 (204), 또는 이들의 조합에 기초하여 제 1 프레임 (102) 의 제 1 이미지 통계를 생성할 수도 있다. 예를 들어, 제 1 이미지 통계는 픽셀들의 제 1 행 (202) 에 대한 픽셀 값들의 제 1 합계 (예컨대, rowsum[]) 에 대응할 수도 있다. 대안적으로 또는 추가적으로, 제 1 이미지 통계는 픽셀들의 제 1 열 (204) 에 대한 픽셀 값들의 제 1 합계 (예컨대, columnsum[]) 에 대응할 수도 있다. 고전력 디바이스는 손이 제 1 프레임 (102) 에서 가시적인지 여부를 결정하기 위하여 제 1 프레임 (102) 에 대한 애플리케이션-특정 프로세싱을 수행할 수도 있다. 특정 실시형태에서, 제 1 이미지 통계는 픽셀들의 2 개 이상의 행들에서의 픽셀 값들의 합계, 픽셀들의 2 개 이상의 열들의 합계, 또는 픽셀들의 하나 이상의 행들 및 픽셀들의 하나 이상의 열들의 합계에 대응할 수도 있다.
제 1 프레임 (102) 을 프로세싱한 후, 저전력 디바이스는 픽셀들의 제 2 행 (222), 픽셀들의 제 2 열 (224), 또는 이들의 조합에 기초하여 제 2 프레임 (104) 의 제 2 이미지 통계를 생성할 수도 있다. 예를 들어, 제 2 이미지 통계는 제 2 행 (222) 에 대한 픽셀 값들의 제 2 합계에 대응할 수도 있다. 대안적으로 또는 추가적으로, 제 2 이미지 통계는 픽셀들의 제 2 열 (224) 에 대한 픽셀 값들의 제 2 합계에 대응할 수도 있다. 특정 실시형태에서, 제 2 이미지 통계는 픽셀들의 2 개 이상의 행들에서의 픽셀 값들의 합계, 픽셀들의 2 개 이상의 열들의 합계, 또는 픽셀들의 하나 이상의 행들 및 픽셀들의 하나 이상의 열들의 합계에 대응할 수도 있다.
고전력 디바이스가 손이 제 1 프레임 (102) 에서 가시적이지 않았던 것으로 결정할 경우, 통계 프로세싱 디바이스 (108) 는 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱을 수행할 것인지 여부를 결정하기 위하여 (예컨대, 손이 제 2 프레임 (104) 에서 가시적인지 여부를 결정하기 위하여) 제 2 이미지 통계를 제 1 이미지 통계와 비교할 수도 있다. 예를 들어, 통계 프로세싱 디바이스 (108) 는 제 2 이미지 통계 및 제 1 이미지 통계 사이의 제 1 변경량이 임계점을 충족시키는지 여부를 결정할 수도 있다. 변경량이 임계점을 충족시키지 않을 경우, 프로세싱 시스템은 (예컨대, 제 2 프레임 (104) 의 제 2 이미지 통계를 생성하기 위하여) 제 2 프레임 (104) 의 부분적-프로세싱을 수행하기만 할 수도 있고, 제 2 프레임 (104) 의 애플리케이션-특정 프로세싱을 우회시키거나 포기할 수도 있다. 변경량이 임계점을 충족시킬 경우, 프로세싱 시스템은 제 2 이미지 통계를 생성할 뿐만 아니라, 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱을 수행함으로써, 제 2 프레임 (104) 에 대한 더욱 완전한 프로세싱을 수행할 수도 있다.
픽셀 값들의 제 1 합계 및 픽셀 값들의 제 2 합계 사이의 차이가 특정 값보다 더 클 때, 제 1 변경량은 임계점을 충족시킬 수도 있다. 예를 들어, 예시적인 실시형태에서, 제 1 이미지 통계가 픽셀들의 제 1 열 (204) 에서의 픽셀 값들의 합계에 대응하고 제 2 이미지 통계가 픽셀들의 제 2 열 (224) 에서의 픽셀 값들의 합계에 대응할 때, 제 1 변경량은 임계점을 충족시키는 것에 실패할 수도 있다. 픽셀들의 제 1 열 (204) 에서의 각각의 픽셀은 백색 픽셀 (예컨대, 제로의 강도 값을 가지는 픽셀) 이다. 그 결과, 픽셀들의 제 1 열 (204) 에 대한 강도 값들의 합은 제로와 동일할 수도 있다. 유사하게, 픽셀들의 제 2 열 (224) 에서의 각각의 픽셀은 백색 픽셀이다. 그 결과, 제 2 열 (224) 에 대한 강도 값들의 합은 제로와 동일할 수도 있다. 이에 따라, 픽셀 값들의 제 1 합계 및 픽셀 값들의 제 2 합계의 비교에 기초하여, 제 1 변경량은 임계점을 충족시키지 않을 수도 있다. 그 결과, 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱은 우회될 수도 있다.
그러나, 제 1 이미지 통계가 픽셀들의 제 1 행 (202) 에서의 픽셀 값들의 합계에 대응하고 제 2 이미지 통계가 픽셀들의 제 2 행 (222) 에서의 픽셀 값들의 합계에 대응할 때, 제 1 변경량은 임계점을 충족시킬 수도 있다. 픽셀들의 제 1 행 (202) 에서의 각각의 픽셀은 백색 픽셀이다. 그 결과, 픽셀들의 제 1 행 (202) 의 강도 값들의 합은 제로와 동일할 수도 있다. 그러나, 픽셀들의 제 2 행 (222) 에서의 다수의 픽셀들은 더 큰 강도 값 (예컨대, 더 어두운 영역들에 기초한 255 에 더 근접한 강도 값) 을 가진다. 그 결과, 픽셀들의 제 2 행 (222) 의 강도 값들의 합은 제로보다 더 클 수도 있다. 픽셀 값들의 제 1 합계 및 픽셀 값들의 제 2 합계 사이의 차이가 임계점을 충족시키는 것으로 가정하면, 고전력 디바이스는 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱을 수행할 수도 있다.
프레임에서 특정 행들 및/또는 열들을 선택함으로써, 그리고 전체의 프레임에 대한 이미지 통계를 생성하는 것과 반대로, 선택된 행들 및/또는 열들에 기초하여 프레임들에 대한 이미지 통계들을 생성함으로써, 전력이 절감될 수도 있다. 예를 들어, 저전력 디바이스는 제 1 프레임 (102) 에서의 매 픽셀에 대한 이미지 통계를 생성하기 위한 것보다, 픽셀들의 제 1 행 (202) 에 대한 이미지 통계를 생성하기 위하여 더 적은 전력을 사용할 수도 있다.
도 3 을 참조하면, 이미지 통계에 기초하여 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키도록 동작가능한 프로세싱 시스템 (300) 의 특정한 예시적인 실시형태가 도시되어 있다. 프로세싱 시스템 (300) 은 카메라 (302), 제 1 프로세싱 디바이스 (304), 메모리 (306), 통계 프로세싱 디바이스 (108), 및 제 2 프로세싱 디바이스 (310) 를 포함한다. 제 2 프로세싱 디바이스 (310) 는 제 1 프로세싱 디바이스 (304) 보다 더욱 고전력 사용 디바이스일 수도 있다. 특정 실시형태에서, 제 1 프로세싱 디바이스 (304) 는 통계 생성기일 수도 있고, 제 2 프로세싱 디바이스 (310) 는 애플리케이션 프로세서일 수도 있다. 특정 실시형태에서, 통계 프로세싱 디바이스 (108) 및 제 1 프로세싱 디바이스 (304) 의 기능들은 디지털 신호 프로세서 (digital signal processor; DSP) 와 같은 단일 저전력 프로세싱 디바이스 내에 포함될 수도 있다.
카메라 (302) 는 복수의 이미지 프레임들 (예컨대, 비디오 스트림) 을 캡처할 수도 있다. 예를 들어, 카메라 (302) 는 제 1 시간에서 도 1 의 제 1 프레임 (102), 제 2 시간에서 제 2 프레임 (104), 그리고 제 3 시간에서 제 3 프레임 (106) 을 캡처할 수도 있다. 특정 프레임 (102 내지 106) 이 캡처된 후, 특정 프레임은 제 1 프로세싱 디바이스 (304) 에 제공된다.
제 1 프로세싱 디바이스 (304) 는 프레임들 (102 내지 106) 이 캡처될 때에 비디오 스트림에서의 각각의 프레임 (102 내지 106) 에 대한 이미지 통계를 생성하도록 구성될 수도 있다. 예를 들어, 제 1 프로세싱 디바이스 (304) 는 도 1 의 대응하는 픽셀 표현들 (112 내지 116) 또는 도 2 의 부분적인 픽셀 표현들 (212, 214) 에 기초하여 각각의 프레임 (102 내지 106) 에 대한 이미지 통계를 생성할 수도 있다. 이미지 통계가 생성된 후, 이미지 통계는 메모리 (306) 및 통계 프로세싱 디바이스 (108) 에 제공된다. 이미지 통계는 또한, 각각의 프레임 (102 내지 106) 의 특성들, 각각의 프레임 (102 내지 106) 에 대한 캡처의 시간 등을 식별하기 위해 이용될 수도 있다.
통계 프로세싱 디바이스 (108) 는 제 1 프로세싱 디바이스 (304) 로부터 현재의 프레임 (102 내지 106) (예컨대, 가장 최근의 프레임) 에 대한 이미지 통계를 수신하도록 구성될 수도 있다. 특정 실시형태에서, 통계 프로세싱 디바이스 (108) 는 또 다른 저전력 디바이스이다. 예를 들어, 통계 프로세싱 디바이스 (108) 는 제 2 프로세싱 디바이스 (310) 보다 더 적은 전력을 소비할 수도 있다. 통계 프로세싱 디바이스 (108) 는 현재의 프레임 (102 내지 106) 이 애플리케이션-특정 프로세싱을 위하여 제 2 프로세싱 디바이스 (310) 에 제공되게 하도록 구성될 수도 있다. 예를 들어, 통계 프로세싱 디바이스 (108) 는 이전의 프레임들이 없다는 결정에 응답하여 현재의 프레임 (102 내지 106) 을 제 2 프로세싱 디바이스 (310) 에 제공할 수도 있다.
이전의 프레임이 프로세싱되었을 경우, 통계 프로세싱 디바이스 (108) 는 현재의 프레임의 이미지 통계 및 이전의 프레임의 이미지 통계 사이의 변경량이 임계점을 충족시키는지 여부를 결정할 수도 있다. 예를 들어, 통계 프로세싱 디바이스 (108) 는 메모리 (306) 로부터 이전의 프레임에 대한 이미지 통계를 취출할 수도 있다. 변경량이 임계점을 충족시킬 경우, 통계 프로세싱 디바이스 (108) 는 현재의 프레임을 애플리케이션-특정 프로세싱을 위하여 제 2 프로세싱 디바이스 (310) 에 제공할 수도 있다. 이와 다를 경우, 통계 프로세싱 디바이스 (108) 는 전력을 절감하고 현재의 프레임에 대한 애플리케이션-특정 프로세싱을 우회시킬 것을 결정할 수도 있다.
제 2 프로세싱 디바이스 (310) 는 현재의 프레임에 대한 컴퓨터 비전 애플리케이션들 및 동작들을 수행하도록 동작가능할 수도 있다. 예를 들어, 제 2 프로세싱 디바이스 (310) 는 보안 애플리케이션들 (예컨대, 감시, 침입 검출, 물체 검출, 얼굴 인식 등), 환경적-이용 애플리케이션들 (예컨대, 조명 제어), 물체 검출 및 추적 애플리케이션들 등을 수행하도록 구성될 수도 있다. 제 2 프로세싱 디바이스 (310) 는 컬러 유닛 (312), 조명 유닛 (314), 특징 추출 유닛 (316), 세그먼테이션 유닛 (318), 자세 검출 유닛 (320), 추적 및 예측 유닛 (322), 및 분류 유닛 (324), 또는 이들의 조합을 포함할 수도 있다. 컬러 유닛 (312) 은 현재의 프레임의 컬러, 노출, 및 초점을 개량할 수도 있다. 조명 유닛 (314) 은 프레임의 환경적 조명을 개량할 수도 있다. 특징 추출 유닛 (316) 은 현재의 프레임으로부터 특정 특징들을 추출할 수도 있다. 세그먼테이션 유닛 (318) 은 현재의 프레임을 다수의 세그먼트들 (예컨대, 픽셀들의 다수의 세트들) 로 파티셔닝할 수도 있다. 자세 검출 유닛 (320) 은 현재의 프레임에서 위치된 특정 특징들의 자세들을 검출할 수도 있다. 추적 및 예측 유닛 (322) 은 현재의 프레임에서의 특징들의 상대적인 위치를 결정할 수도 있고, 특징들이 다음 프레임에서 어디에 있을 수도 있는지를 예측할 수도 있다. 분류 유닛 (324) 은 현재의 프레임을 분류할 수도 있고, 및/또는 경보 이벤트를 검출할 수도 있다. 제 2 프로세싱 디바이스 (310) 는 컴퓨터 비전 애플리케이션들을 프로세싱하기 위한 프로세싱 유닛들의 임의의 조합을 포함할 수도 있다. 예를 들어, 고전력 디바이스는 추가적인 유닛들 또는 더 적은 유닛들을 포함할 수도 있다.
동작 동안에, 카메라 (302) 는 제 1 시간에서 제 1 프레임 (102) 을 캡처할 수도 있고, 제 1 프로세싱 디바이스 (304) 는 제 1 프레임 (102) 에 대한 제 1 이미지 통계를 생성할 수도 있다. 제 1 프로세싱 디바이스 (304) 는 제 1 이미지 통계를 메모리 (306) 에 제공할 수도 있다. 추가적으로, 제 1 프로세싱 디바이스 (304) 는 제 1 프레임 (102) 및 제 1 이미지 통계를 통계 프로세싱 디바이스 (108) 에 제공할 수도 있다. 통계 프로세싱 디바이스 (108) 는 다른 이전의 프레임들에 대한 이미지 통계가 비교를 위해 메모리 (306) 내에 저장되는지 여부를 결정하기 위하여 메모리 (306) 를 폴링 (polling) 할 수도 있다. 이전의 프레임들에 대한 이미지 통계가 비교를 위하여 메모리 (306) 내에 저장되지 않는 것으로 결정하는 것에 응답하여, 통계 프로세싱 디바이스 (108) 는 제 1 프레임 (102) 이 제 2 프로세싱 디바이스 (310) 에 제공되게 할 수도 있고, 제 2 프로세싱 디바이스 (310) 는 손이 제 1 프레임 (102) 에서 가시적인지 여부를 결정하기 위하여 제 1 프레임 (102) 에 대한 애플리케이션-특정 프로세싱을 수행할 수도 있다.
제 1 프레임 (102) 을 캡처한 후, 카메라 (302) 는 제 2 시간에서 제 2 프레임 (104) 을 캡처할 수도 있고, 제 1 프로세싱 디바이스 (304) 는 제 2 프레임 (104) 에 대한 제 2 이미지 통계를 생성할 수도 있다. 제 1 프로세싱 디바이스 (304) 는 제 2 이미지 통계를 메모리 (306) 에 제공할 수도 있다. 추가적으로, 제 1 프로세싱 디바이스 (304) 는 제 2 프레임 (104) 및 제 2 이미지 통계를 통계 프로세싱 디바이스 (108) 에 제공할 수도 있다.
통계 프로세싱 디바이스 (108) 는 메모리 (306) 를 폴링할 수도 있고, 제 1 이미지 통계를 취출할 수도 있다. 제 1 이미지 통계를 취출한 후, 통계 프로세싱 디바이스 (108) 는 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱을 위하여 제 2 프레임 (104) 을 제 2 프로세싱 디바이스 (310) 에 제공할 것인지 여부를 결정하기 위하여, 제 2 이미지 통계를 제 1 이미지 통계와 비교할 수도 있다. 예시적인 실시형태에서, 애플리케이션-특정 프로세싱은 손이 제 2 프레임 (104) 에서 가시적인지 여부를 결정하기 위해 이용될 수도 있다. 예를 들어, 통계 프로세싱 디바이스 (108) 는 제 2 이미지 통계 및 제 1 이미지 통계 사이의 제 1 변경량이 임계점을 충족시키는지 여부를 결정할 수도 있다. 변경량이 임계점을 충족시키지 않을 경우, 통계 프로세싱 디바이스 (108) 는 전력을 절감하고 제 2 프레임 (104) 의 애플리케이션-특정 프로세싱을 우회시킬 것을 결정할 수도 있다. 변경량이 임계점을 충족시킬 경우, 통계 프로세싱 디바이스 (108) 는 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱을 위하여 제 2 프레임 (104) 을 제 2 프로세싱 디바이스 (310) 에 제공할 수도 있다.
제 2 프레임 (104) 을 캡처한 후, 카메라 (302) 는 제 3 시간에서 제 3 프레임 (106) 을 캡처할 수도 있고, 제 1 프로세싱 디바이스 (304) 는 제 3 프레임 (106) 에 대한 제 3 이미지 통계를 생성할 수도 있다. 제 1 프로세싱 디바이스 (304) 는 제 3 이미지 통계를 메모리 (306) 에 제공할 수도 있다. 추가적으로, 제 1 프로세싱 디바이스 (304) 는 제 3 프레임 (106) 및 제 3 이미지 통계를 통계 프로세싱 디바이스 (108) 에 제공할 수도 있다.
통계 프로세싱 디바이스 (108) 는 메모리 (306) 를 폴링할 수도 있고, 제 1 이미지 통계, 제 2 이미지 통계, 또는 이들의 조합을 취출할 수도 있다. 통계 프로세싱 디바이스 (108) 가 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱을 우회시킬 것을 결정하였을 경우, 통계 프로세싱 디바이스 (108) 는 제 3 프레임 (106) 에 대한 애플리케이션-특정 프로세싱을 수행할 것인지 여부를 결정하기 위하여 제 3 이미지 통계를 제 2 이미지 통계와 비교할 수도 있다. 대안적으로, 통계 프로세싱 디바이스 (108) 는 제 3 이미지 통계를 제 1 이미지 통계, 또는 제 1 및 제 2 이미지 통계의 조합과 비교할 수도 있다.
이전의 프레임과 유사한 이미지 통계를 가지는 특정 프레임에 대한 애플리케이션-특정 프로세싱을 우회시키는 것은 전자 디바이스들에서 전력을 절감할 수도 있다. 예를 들어, 애플리케이션-특정 프로세싱은 컴퓨터 비전 애플리케이션 디바이스들과 같은, 프로세싱 시스템 내의 고전력 디바이스들 (예컨대, 범용 프로세서들 또는 그래픽 프로세서) 을 사용할 수도 있다. 각각의 프레임의 통계를 생성 및/또는 평가하기 위하여, 통계 프로세싱 디바이스 (108) 와 같은 저전력 디바이스들 (예컨대, 디지털 신호 프로세서, 애플리케이션-특정 집적 회로, 필드 프로그래밍가능한 게이트 어레이 등) 을 이용함으로써, 특정 프레임들이 실질적으로 동일하고 애플리케이션-특정 프로세싱은 동일한 프레임들 중의 하나에 대해 수행되기만 할 필요가 있다는 결정이 행해질 수도 있다. 그 결과, 동일하거나 유사한 프레임들에 대한 애플리케이션-특정 프로세싱을 포기함으로써, 전력이 절감될 수도 있다.
도 4 를 참조하면, 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키도록 동작가능한 프로세싱 시스템 (400) 의 특정한 예시적인 실시형태가 도시되어 있다. 프로세싱 시스템 (400) 은 센서 (402), 변경 검출 회로 (414), 애플리케이션 프로세서 (418), 및 메모리 (420) 를 포함한다. 특정 실시형태에서, 변경 검출 회로 (414) 는 제 1 프로세싱 경로 (408) (예컨대, 저전력 프로세싱 경로 및/또는 로우 데이터 레이트 (low data rate) 프로세싱 경로) 내에 포함될 수도 있다. 애플리케이션 프로세서 (418) 및 메모리 (420) 는 제 2 프로세싱 경로 (410) (예컨대, 고전력 프로세싱 경로 및/또는 하이 데이터 레이트 (high data rate) 프로세싱 경로) 내에 포함될 수도 있다.
센서 (402) 는 센서 데이터 (430) (예컨대, 복수의 이미지 프레임들 또는 비디오 스트림) 를 캡처하도록 구성될 수도 있다. 특정 실시형태에서, 센서 (402) 는 도 3 의 카메라 (302) 에 대응할 수도 있다. 또 다른 특정 실시형태에서, 센서 (402) 는 도 8 에 대하여 설명된 바와 같은 주변광 센서 (840) 와 같은 주변광 센서, 또는 또 다른 타입의 센서일 수도 있다. 센서 데이터 (430) 는 제 1 센서 데이터 (예컨대, 도 1 의 제 1 프레임 (102)), 제 2 센서 데이터 (예컨대, 도 1 의 제 2 프레임 (104)), 제 3 센서 데이터 (예컨대, 도 1 의 제 3 프레임 (106)) 등을 포함할 수도 있다. 센서 데이터 (430) 는 제 1 프로세싱 경로 (408) 의 변경 검출 회로 (414) 에 제공될 수도 있다.
변경 검출 회로 (414) 는 프레임들 (102, 104) 사이의 변경량을 검출하기 위하여 센서 데이터 (430) 의 제 1 프레임 (102) 을 센서 데이터 (430) 의 제 2 프레임 (104) (또는 또 다른 프레임) 과 비교할 수도 있다. 예시의 간략함을 위하여, 변경 검출 회로 (414) 는 제 1 프레임 (102) 을 제 2 프레임 (104) 과 비교하는 것으로서 설명될 것이다. 그러나, 제 1 프레임 (102) 및 제 2 프레임 (104) 사이에서는 상대적으로 사소한 변경들이 발생할 수도 있으므로, 변경 검출 회로 (414) 는 프레임들 사이의 변경들을 검출하기 위하여 제 1 프레임 (102) 을 더욱 떨어져서 이격된 프레임들과 비교할 수도 있다.
변경 검출 회로 (414) 는 제 1 프레임 (102) 을 저장하기 위한 "온-보드 (on-board)" 메모리를 포함할 수도 있다. 센서 데이터 (430) 의 제 2 프레임 (104) (또는 또 다른 프레임) 이 센서 (402) 로부터 수신될 때, 변경 검출 회로 (414) 는 온-보드 메모리로부터 제 1 프레임 (102) 을 취출할 수도 있고, 프레임들 (102, 104) 을 비교할 수도 있고, 비교에 기초하여 제어 신호 (416) 를 생성할 수도 있다. 예를 들어, 변경 검출 회로 (414) 는 비교에 기초하여 (예컨대, 제 1 프레임 (102) 및 제 2 프레임 (104) 사이의 유사성들에 기초하여) 애플리케이션 프로세서 (418) 를 웨이크 업 할 것인지 여부를 결정할 수도 있다. 특정 실시형태에서, 변경 검출 회로 (414) 는 도 1 내지 도 3 에 대하여 설명된 바와 같이, 제 1 프레임 (102) 의 제 1 이미지 통계를 제 2 프레임 (104) 의 제 2 이미지 통계와 비교할 수도 있다. 예를 들어, 변경 검출 회로 (414) 는 도 1 내지 도 3 의 통계 프로세싱 디바이스 (108) 에 대응할 수도 있고, 온-보드 메모리는 도 3 의 메모리 (306) 에 대응할 수도 있다.
제어 신호 (416) 는 애플리케이션 프로세서 (418) 에 제공될 수도 있다. 제어 신호 (416) 는 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱 (예컨대, 컴퓨터 비전 애플리케이션-특정 프로세싱) 을 수행하기 위하여 애플리케이션 프로세서 (418) 를 "웨이크 업" 할 것인지 여부를 표시할 수도 있다. 예를 들어, 변경 검출 회로 (414) 가 제 1 프레임 (102) 및 제 2 프레임 (104) 사이의 변경량이 임계점을 충족시키지 않는 것으로 결정할 경우, 제어 신호 (416) 는 전력을 절감하기 위하여 애플리케이션 프로세서 (418) 를 "슬립 (sleep)" 상태에서 유지할 수도 있다. 변경 검출 회로 (414) 가 제 1 프레임 (102) 및 제 2 프레임 (104) 사이의 변경량이 임계점을 충족시키는 것으로 결정할 경우, 제어 신호 (416) 는 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱을 수행하기 위하여 애플리케이션 프로세서 (418) 를 웨이크 업 할 수도 있다. 이에 따라, 변경 검출 회로 (414) 는 또한, 컴퓨터 비전 애플리케이션-특정 프로세싱을 위하여, 센서 데이터 (430) (예컨대, 제 2 프레임 (104)) 를 애플리케이션 프로세서 (418) 에 제공할 수도 있다.
애플리케이션 프로세서 (418) 는 제 2 프레임 (104) 에 대한 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하도록 구성될 수도 있다. 비-제한적인 예로서, 애플리케이션 프로세서 (418) 는 특정 물체 (예컨대, 손) 가 제 2 프레임 (104) 내에 있는지 여부를 결정할 수도 있다. 이에 따라, 애플리케이션 프로세서 (418) 는 물체 검출/물체 인식 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행할 수도 있다. 컴퓨터 비전 애플리케이션-특정 프로세싱의 다른 예들은 보안 애플리케이션들 (예컨대, 감시, 침입 검출, 물체 검출, 얼굴 인식 등), 환경적-이용 애플리케이션들 (예컨대, 조명 제어), 물체 검출 및 추적 애플리케이션들 등을 포함할 수도 있다. 본원에서 이용된 바와 같이, "컴퓨터 비전 애플리케이션" 및/또는 "컴퓨터 비전 애플리케이션-특정 프로세싱" 은 비디오/이미지 데이터에 기초한 무제한적인 수의 애플리케이션들에 대응할 수도 있거나 이 애플리케이션들을 포함할 수도 있다. 본원에서 이용된 예들은 제한하는 것으로 의도된 것이 아니다.
특정 실시형태에서, 애플리케이션 프로세서 (418) 는 도 13 내지 도 27 에 대하여 설명된 바와 같이 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행할 수도 있다. 예를 들어, 애플리케이션 프로세서 (418) 는 제 2 프레임 (104) 의 특징들의 제 1 서브세트를 추출할 수도 있고, 분석 기준을 충족시키는 특징들의 제 1 서브세트에 기초하여 제 2 프레임 (104) 의 특징들의 제 2 서브세트를 추출할 수도 있고, 특징들의 제 2 서브세트에 적어도 부분적으로 기초하여 제 2 프레임 (104) 의 맥락 (context) 을 표시하는 맥락 데이터를 생성할 수도 있다.
애플리케이션 프로세서 (418) 는 또한, 센서 데이터 (430) (예컨대, 컴퓨터 비전 애플리케이션-특정 프로세싱을 거치는 프레임들) 를 메모리 (420) 에 제공할 수도 있다. 이에 따라, 애플리케이션 프로세서 (418) (및 추가적인 프로세서들/프로세싱 자원들) 는 컴퓨터 비전 애플리케이션-특정 프로세싱 동안에 메모리 (420) 로부터 센서 데이터 (430) 에 액세스할 수도 있다. 특정 실시형태에서, 메모리 (420) 는 더블 데이터 레이트 (double data rate; DDR) 메모리일 수도 있다. 예를 들어, 메모리 (420) 는 DDR 동기식 동적 랜덤-액세스 메모리 (DDR synchronous dynamic random-access memory; DDR SDRAM) 일 수도 있다.
도 4 의 프로세싱 시스템 (400) 은 이전의 프레임과 유사한 특정 프레임에 대한 컴퓨터 비전 애플리케이션-특정 프로세싱을 우회시킴으로써 전력 소비를 감소시킬 수도 있다. 예를 들어, 변경 검출 회로 (414) 는 현재의 프레임 및 이전의 프레임 사이의 비교에 기초하여 애플리케이션 프로세서 (418) 를 활성화 (예컨대, 웨이크 업) 할 것인지 여부를 (제어 신호 (416) 를 통해) 표시할 수도 있다. 변경 검출 회로 (414) 가 현재의 프레임 및 이전의 프레임 사이의 차이들이 임계점 (예컨대, 변경 임계점) 을 충족시키지 않는 것으로 결정할 경우, 변경 검출 회로 (414) 는 전력을 절감하기 위하여 애플리케이션 프로세서 (418) 를 비활성화할 것 (예컨대, 애플리케이션 프로세서 (418) 를 슬립 상태에서 유지함) 을 결정할 수도 있다.
도 5 를 참조하면, 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키도록 동작가능한 프로세싱 시스템 (500) 의 특정한 예시적인 실시형태가 도시되어 있다. 프로세싱 시스템 (500) 은 센서 (502), 선택 회로 (506), 제 1 프로세싱 경로 (508), 및 제 2 프로세싱 경로 (510) 를 포함한다.
제 1 프로세싱 경로 (508) 는 신호 분석기 (512) 및 변경 검출 회로 (514) 를 포함할 수도 있다. 제 2 프로세싱 경로 (510) 는 애플리케이션 프로세서 (518) 및 메모리 (520) 를 포함할 수도 있다. 특정 실시형태에서, 제 1 프로세싱 경로 (508) 는 저전력 프로세싱 경로 및/또는 로우 데이터 레이트 프로세싱 경로일 수도 있고, 제 2 프로세싱 경로 (510) 는 고전력 프로세싱 경로 및/또는 하이 데이터 레이트 프로세싱 경로일 수도 있다. 예를 들어, 제 1 프로세싱 경로 (508) 에서의 컴포넌트들은 제 2 프로세싱 경로 (510) 에서의 컴포넌트들보다 더 적은 전력을 소비할 수도 있다.
센서 (502) 는 센서 데이터 (예컨대, 복수의 이미지 프레임들 또는 비디오 스트림) 를 캡처하도록 구성될 수도 있다. 특정 실시형태에서, 센서 (502) 는 도 3 의 카메라 (302) 또는 도 4 의 센서 (402) 에 대응할 수도 있다. 센서 데이터는 제 1 센서 데이터 (예컨대, 도 1 의 제 1 프레임 (102)), 제 2 센서 데이터 (예컨대, 도 1 의 제 2 프레임 (104)), 제 3 센서 데이터 (예컨대, 도 1 의 제 3 프레임 (106)) 등을 포함할 수도 있다. 센서 데이터는 선택 회로 (506) 에 제공될 수도 있다.
선택 회로 (506) 는 제어 신호 (516) (예컨대, 피드백 신호) 에 기초하여 인입 프레임들 (예컨대, 센서 데이터) 을 제 1 프로세싱 경로 (508) 에 제공하고 및/또는 인입 프레임들을 제 2 프로세싱 경로 (510) 에 제공하도록 구성될 수도 있다. 특정 실시형태에서, 선택 회로 (506) 는 제어 신호 (516) 에 응답하는 멀티플렉서 (multiplexer) 로서 구현될 수도 있다. 선택 회로 (506) 는 먼저, 프로세싱을 위하여 센서 데이터 (530) 를 신호 분석기 (512) 에 제공할 수도 있다 (예컨대, 로우 데이터 레이트 채널을 통해 인입 프레임들을 제공함). 예시하기 위하여, 선택 회로 (506) 는 제 1 프레임 (102) 을 신호 분석기 (512) 에 제공할 수도 있고, 선택 회로 (506) 는 제 2 프레임 (104) 을 신호 분석기 (512) 에 제공할 수도 있다.
제 1 프레임 (102) 을 수신할 시에, 신호 분석기 (512) 는 제 1 프레임 (102) 을 분석할 수도 있고, 분석의 제 1 분석 결과들 (542) 을 변경 검출 회로 (514) 에 제공할 수도 있다. 특정 실시형태에서, 신호 분석기 (512) 는 도 3 의 제 1 프로세싱 디바이스 (304) 에 대응할 수도 있고, 실질적으로 유사한 방식으로 동작할 수도 있다. 변경 검출 회로 (514) 는 제 1 분석 결과들 (542) 을 저장하기 위한 "온-보드" 메모리를 포함할 수도 있다. 특정 실시형태에서, 변경 검출 회로 (514) 는 도 4 의 변경 검출 회로 (414) 와 실질적으로 유사한 방식으로 동작할 수도 있다. 제 2 프레임 (104) 을 수신할 시에, 신호 분석기 (512) 는 제 2 프레임 (104) 을 분석할 수도 있고, 분석의 제 2 분석 결과들 (542) 을 변경 검출 회로 (514) 에 제공할 수도 있다.
특정 실시형태에서, 애플리케이션 프로세서 (518) 는 분석 구성 데이터 (534) 를 생성하여 신호 분석기 (512) 및/또는 변경 검출 회로 (514) 에 제공할 수도 있다. 분석 구성 데이터 (534) 는 신호 분석기 (512) 및/또는 변경 검출 회로 (514) 에 의해 분석되어야 할 특정 타입의 특징들 (예컨대, 생성되어야 할 특정 타입의 이미지 통계) 을 표시할 수도 있다. 분석되어야 할 특정 타입의 특징들은 애플리케이션 프로세서 (518) 에 의해 수행되어야 할 특정 컴퓨터 비전 애플리케이션에 기초할 수도 있다. 비-제한적인 예로서, 애플리케이션 프로세서 (518) 가 이미지 프레임에서 "손" 을 검출하기 위하여 물체 검출/인식 컴퓨터 비전 애플리케이션을 수행하기 위한 것일 경우, 애플리케이션 프로세서 (518) 는, 신호 분석기 (512) 가 "피부 색조" 컬러들을 가지는 픽셀들에 대한 이미지 데이터를 생성하도록, 분석 구성 데이터 (534) 를 제공할 수도 있다.
변경 검출 회로 (514) 는 제 1 프레임 (102) 및 제 2 프레임 (104) 사이의 변경량 (예컨대, 제 1 분석 결과들 (542) (또는 제 1 센서 데이터) 및 제 2 분석 결과들 (542) (또는 제 2 센서 데이터) 사이의 변경량) 을 결정하도록 구성될 수도 있다. 변경량이 임계점 (예컨대, 변경 임계점) 을 충족시키는 것에 실패할 때, 변경 검출 회로 (514) 는 제 1 값을 가지는 제어 신호 (516) 를 생성할 수도 있다. 변경량이 임계점을 충족시킬 때, 변경 검출 회로 (514) 는 제 2 값을 가지는 제어 신호 (516) 를 생성할 수도 있다. 비-제한적인 예로서, (신호 분석기 (512) 에 의해 생성된) 제 1 컬러 히스토그램에서의 특정 컬러 값 (예컨대, 갈색) 에 대한 픽셀들의 제 1 카운트와, (신호 분석기 (512) 에 의해 생성된) 제 2 컬러 히스토그램에서의 특정 컬러 값에 대한 픽셀들의 제 2 카운트와의 사이의 차이가 임계 값보다 더 클 때, 변경량은 임계점을 충족시킬 수도 있다.
제어 신호 (516) 가 (예컨대, 변경량이 임계점을 충족시키는 것을 실패함을 표시하는) 제 1 값을 가질 경우, 선택 회로 (506) 는 추가적인 프레임들 (예컨대, 센서 데이터 (530)) 을 제 1 프로세싱 경로 (508) 에 제공할 수도 있어서, 신호 분석기 (512) 는 추가적인 프레임들에 대한 데이터를 생성할 수도 있고, 변경 검출 회로 (514) 는 추가적인 프레임들과 연관된 변경량이 임계점을 충족시키는지 여부를 결정할 수도 있다. 제어 신호 (516) 가 (예컨대, 변경량이 임계점을 충족시키는 것을 표시하는) 제 2 값을 가질 경우, 선택 회로 (506) 는 애플리케이션-특정 프로세싱 (예컨대, 컴퓨터 비전 애플리케이션-특정 프로세싱) 을 위하여 센서 데이터 (532) (예컨대, 제 2 프레임 (104) 및/또는 후속 프레임들 (106)) 를 제 2 프로세싱 경로 (510) 에 제공할 수도 있다. 예를 들어, 선택 회로 (506) 는 하이 데이터 레이트 채널을 통해 센서 데이터 (532) 를 애플리케이션 프로세서 (518) 에 제공할 수도 있다.
애플리케이션 프로세서 (518) 는 제 2 프레임 (104) 에 대한 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하도록 구성될 수도 있다. 비-제한적인 예로서, 애플리케이션 프로세서 (518) 는 특정 물체 (예컨대, 손) 가 제 2 프레임 (104) 내에 있는지 여부를 결정할 수도 있다.
특정 실시형태에서, 애플리케이션 프로세서 (518) 는 도 13 내지 도 27 에 대하여 설명된 바와 같이 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행할 수도 있다. 예를 들어, 애플리케이션 프로세서 (518) 는 제 2 프레임 (104) 의 특징들의 제 1 서브세트를 추출할 수도 있고, 분석 기준을 충족시키는 특징들의 제 1 서브세트에 기초하여 제 2 프레임 (104) 의 특징들의 제 2 서브세트를 추출할 수도 있고, 특징들의 제 2 서브세트에 적어도 부분적으로 기초하여 제 2 프레임 (104) 의 맥락을 표시하는 맥락 데이터를 생성할 수도 있다. 특정 실시형태에서, 제 1 프로세싱 경로 (508) 의 컴포넌트들 (예컨대, 신호 분석기 (512) 및/또는 변경 검출 회로 (514)) 은 분석 피드백 데이터 (536) 를 애플리케이션 프로세서 (518) 에 제공할 수도 있다. 분석 피드백 데이터 (536) 는 센서 데이터 (530) 의 분석 결과들 (542), 분석 결과들의 정확도 레벨의 표시, 특징들의 제 1 및 제 2 서브세트 등을 포함할 수도 있다. 예를 들어, 변경 검출 회로 (514) 는 제 2 프레임 (104) 의 특징들의 제 1 및 제 2 서브세트를 추출할 수도 있고 (분석 피드백 데이터 (536) 를 통해) 추출된 특징들을 애플리케이션 프로세서 (518) 에 제공할 수도 있어서, 애플리케이션 프로세서 (518) 는 맥락 데이터를 생성할 수도 있다.
애플리케이션 프로세서 (518) 는 또한, 센서 데이터 (532) (예컨대, 컴퓨터 비전 애플리케이션-특정 프로세싱을 거치는 프레임들) 를 메모리 (520) 에 제공할 수도 있다. 이에 따라, 애플리케이션 프로세서 (518) (및 추가적인 프로세서들/프로세싱 자원들) 는 컴퓨터 비전 애플리케이션-특정 프로세싱 동안에 메모리 (520) 로부터 센서 데이터 (532) 에 액세스할 수도 있다. 특정 실시형태에서, 메모리 (520) 는 DDR 메모리 (예컨대, DDR SDRAM) 일 수도 있다.
도 5 의 프로세싱 시스템 (500) 은 이전의 프레임과 유사한 특정 프레임에 대한 컴퓨터 비전 애플리케이션-특정 프로세싱을 우회시킴으로써 전력 소비를 감소시킬 수도 있다. 예를 들어, 변경 검출 회로 (514) 는 현재의 프레임의 이미지 통계 및 이전의 프레임의 이미지 통계 사이의 비교에 기초하여 애플리케이션 프로세서 (518) 를 활성화 (예컨대, 웨이크 업) 할 것인지 여부를 제어 신호 (516) 를 통해 표시할 수도 있다. 변경 검출 회로 (514) 가 현재의 프레임 및 이전의 프레임 사이의 차이들이 임계점 (예컨대, 변경 임계점) 을 충족시키지 않는 것으로 결정할 경우, 변경 검출 회로 (514) 는 전력을 절감하기 위하여 애플리케이션 프로세서 (518) 를 비활성화할 것 (예컨대, 애플리케이션 프로세서 (518) 를 슬립 상태에서 유지함) 을 결정할 수도 있다.
애플리케이션 프로세서 (518) 는 분석 구성 데이터 (534) 를 통해 컴퓨터 비전 애플리케이션과 "관련 있는" 통계의 타입을 (제 1 프로세싱 경로 (508) 의 컴포넌트들에) 표시할 수도 있으므로, 변경 검출 회로 (514) 에 의해 생성된 긍정 오류 (false positive) 들의 수는 감소될 수도 있다. 예를 들어, 신호 분석기 (512) 및 변경 검출 회로 (514) 는 프레임들 사이의 "임의의" 변경에 기초하여 결정을 행하는 것과 반대로, 특정 컴퓨터 비전 애플리케이션에 맞추어진 이미지 통계에 기초하여 애플리케이션 프로세서 (518) 를 웨이크 업 할 것인지 여부를 결정할 수도 있다. 긍정 오류들의 수를 감소시키는 것 (예컨대, 제 2 프로세싱 경로 (510) 가 컴퓨터 비전 애플리케이션과 관련 없는 이미지 통계에 기초하여 활성화되는 횟수를 감소시키는 것) 은 또한 전력을 절감할 수도 있다.
도 6 을 참조하면, 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키도록 동작가능한 프로세싱 시스템 (600) 의 또 다른 특정한 예시적인 실시형태가 도시되어 있다. 프로세싱 시스템 (600) 은 센서 (602), 프리프로세싱 회로 (604), 선택 회로 (506), 제 1 프로세싱 경로 (608), 및 제 2 프로세싱 경로 (610) 를 포함한다.
제 1 프로세싱 경로 (608) 는 신호 분석기 (512) 및 변경 검출 회로 (514) 를 포함할 수도 있다. 제 2 프로세싱 경로 (610) 는 애플리케이션 프로세서 (518), 메모리 (520), 및 하나 이상의 추가적인 프로세서들 (622) 을 포함할 수도 있다. 특정 실시형태에서, 제 1 프로세싱 경로 (608) 는 저전력 프로세싱 경로일 수도 있고, 제 2 프로세싱 경로 (610) 는 고전력 프로세싱 경로일 수도 있다. 예를 들어, 제 1 프로세싱 경로 (608) 에서의 컴포넌트들은 제 2 프로세싱 경로 (610) 에서의 컴포넌트들보다 더 적은 전력을 소비할 수도 있다.
센서 (602) 는 복수의 이미지 프레임들 (예컨대, 비디오 스트림) 을 캡처하도록 구성될 수도 있다. 특정 실시형태에서, 센서 (602) 는 도 3 의 카메라 (302) 에 대응할 수도 있다. 센서 (602) 에 의해 캡처된 비디오 스트림은 프리프로세싱 회로 (604) 에 제공될 수도 있다. 프리프로세싱 회로 (604) 는 비디오 스트림으로부터 프레임들의 세트 (예컨대, 도 1 의 제 1 프레임 (102), 제 2 프레임 (104), 및 제 3 프레임 (106)) 를 생성하기 위하여 비디오 스트림을 샘플링하도록 구성될 수도 있다. 예를 들어, 프리프로세싱 회로 (604) 는, 제 1 프레임 (102) 이 제 1 시간에서 생성되고, 제 2 프레임 (104) 이 제 2 시간에서 생성되고, 제 3 프레임 (106) 이 제 3 시간에서 생성되도록, 비디오 스트림을 샘플 레이트에서 샘플링할 수도 있다. 각각의 프레임 (102 내지 106) 은 선택 회로 (506) 에 제공될 수도 있다.
선택 회로 (506), 신호 분석기 (512), 변경 검출 회로 (514), 및 애플리케이션 프로세서 (518) 는 도 5 에 대하여 설명된 것과 유사한 방식으로 동작할 수도 있다. 하나 이상의 추가적인 프로세서들 (622) 은 도 7 에 대하여 설명된 바와 같이, 센서 데이터 (532) 에 대한 추가적인 프로세싱 (예컨대, 추가적인 컴퓨터 비전 애플리케이션-특정 프로세싱) 을 수행하기 위하여 메모리 (520) 로부터 센서 데이터 (532) 에 액세스할 수도 있다. 특정 실시형태에서, 하나 이상의 추가적인 프로세서 (422) 중의 적어도 하나는 제 2 애플리케이션 프로세서 또는 디지털 신호 프로세서 (DSP) 에 대응할 수도 있거나 이를 포함할 수도 있다.
도 7 을 참조하면, 제 2 프로세싱 경로 (610) 의 특정한 예시적인 실시형태가 도시되어 있다. 제 2 프로세싱 경로 (610) 는 데이터 버스 (702), 애플리케이션 프로세서 (518), 하나 이상의 추가적인 프로세서들 (622), 및 제어 버스 (710) 를 포함한다. 하나 이상의 추가적인 프로세서들 (622) 은 제 2 애플리케이션 프로세서 (706) 및 M 번째 애플리케이션 프로세서 (708) 를 포함할 수도 있다. 특정 실시형태에서, M 은 1 이상인 임의의 정수 값일 수도 있다. 예를 들어, M 이 5 와 동일할 경우, 제 2 프로세싱 경로 (610) 는 5 개의 애플리케이션 프로세서들을 포함할 수도 있다.
각각의 애플리케이션 프로세서 (518, 706, 708) 는 프로세싱 코어, 애플리케이션 프로세서 서브시스템, 프로세싱 자원 등에 대응할 수도 있다. 각각의 애플리케이션 프로세서 (518, 706, 708) 는 상이한 전력량을 소비할 수도 있다. 예를 들어, 애플리케이션 프로세서 (518) 는 제 1 전력량을 소비할 수도 있고, 제 2 애플리케이션 프로세서 (706) 는 제 2 전력량을 소비할 수도 있고, M 번째 애플리케이션 프로세서 (708) 는 M 번째 전력량을 소비할 수도 있다. 제 1 전력량은 제 2 전력량보다 더 적을 수도 있고, 제 2 전력량은 M 번째 전력량보다 더 적을 수도 있다.
선택 회로 (506) 는 데이터 버스 (702) 를 통해 센서 데이터 (532) (예컨대, 제 2 프레임 (104)) 를 메모리 (520) 에 제공할 수도 있다. 각각의 애플리케이션 프로세서 (518, 706, 708) 는 데이터 버스 (702) 를 통해 메모리 (520) 로부터 센서 데이터 (532) 에 액세스할 수 있을 수도 있다. 예를 들어, 각각의 애플리케이션 프로세서 (518, 706, 708) 는 메모리 (520) 로부터 제 2 프레임 (104) (또는 제 2 프레임 (104) 의 프로세싱된 버전 (version) 들) 을 수신하기 위하여 데이터 버스 (702) 에 결합될 수도 있다.
애플리케이션 프로세서 (518) 는 제 2 센서 데이터 (532) 에 대한 제 1 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하도록 구성될 수도 있다. 비-제한적인 예로서, 애플리케이션 프로세서 (518) 는 특정 컬러 (예컨대, 손 검출/인식을 위하여 인간의 피부 색조와 연관된 컬러) 에 대해 제 2 프레임 (104) 의 픽셀들을 스캐닝하도록 구성될 수도 있다. 애플리케이션 프로세서 (518) 가 제 2 프레임 (104) 에 대한 제 1 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하고 있지만, 제 2 애플리케이션 프로세서 (706) 및 M 번째 애플리케이션 프로세서 (708) 는 전력을 절감하기 위하여 "슬립" 상태에 있을 수도 있다.
애플리케이션 프로세서 (518) 가 특정 이벤트를 검출할 경우, 애플리케이션 프로세서 (518) 는 제 2 애플리케이션 프로세서 (706) 가 제 2 프레임 (104) 에 대한 제 2 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행할 것을 요청할 수도 있다 (예컨대, 제 2 애플리케이션 프로세서 (706) 가 슬립 상태로부터 "웨이크 업" 할 것을 요청함). 비-제한적인 예로서, 애플리케이션 프로세서 (518) 가 제 2 프레임 (104) 의 특정 픽셀이 특정 컬러를 가지는 것으로 검출 및 결정할 경우, 애플리케이션 프로세서 (518) 는 제 2 애플리케이션 프로세서 (706) 가 제 2 프레임 (104) 에 대한 제 2 컴퓨터 비전 애플리케이션-특정 프로세싱 (예컨대, 물체 검출 프로세싱, 물체 인식 프로세싱, 또는 이들의 임의의 조합) 을 수행할 것을 요청할 수도 있다. 애플리케이션 프로세서 (518) 는 제어 버스 (710) 를 통해 제 2 애플리케이션 프로세서 (706) 와 통신할 수도 있다. 예를 들어, 애플리케이션 프로세서 (518) 는 특정 이벤트를 제 2 애플리케이션 프로세서 (706) 에 경보하기 위하여, 제어 버스 (710) 를 통해 명령을 제 2 애플리케이션 프로세서 (706) 로 전송할 수도 있다.
제 2 애플리케이션 프로세서 (706) 는 센서 데이터 (532) (예컨대, 제 2 프레임 (104)) 에 대한 제 2 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행할 것인지 여부를 결정할 수도 있다. 결정은 제 2 애플리케이션 프로세서 (706) 의 프로세싱 기능들, 특정 이벤트의 관련성 등에 기초할 수도 있다. 제 2 애플리케이션 프로세서 (706) 가 제 2 프레임 (104) 에 대한 제 2 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하는 것으로 결정할 경우, 제 2 애플리케이션 프로세서 (706) 는 또한, 애플리케이션 프로세서 (518) 에서 제 2 프레임 (104) 에 대한 컴퓨터 비전 애플리케이션-특정 프로세싱을 중단할 것인지 여부를 결정할 수도 있다.
예를 들어, 제 2 애플리케이션 프로세서 (706) 는 제 2 프레임 (104) 에 대한 제 1 및 제 2 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행할 수 있을 수도 있다. 제 2 프레임 (104) 에 대한 컴퓨터 비전 애플리케이션-특정 프로세싱은 제 2 애플리케이션 프로세서 (706) 에서의 결정에 기초하여 애플리케이션 프로세서 (518) 에서 중단될 수도 있다. 이 실시형태에서, 제 2 애플리케이션 프로세서 (706) 는 슬립 상태로 진입하기 위하여 (제어 버스 (710) 를 통해) 명령을 애플리케이션 프로세서 (518) 로 전송할 수도 있고, 제 2 애플리케이션 프로세서 (706) 는 제 2 프레임 (104) 에 대한 제 1 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행할 수도 있다. 예를 들어, 제 2 애플리케이션 프로세서 (706) 가 제 2 프레임 (104) 에 대한 제 1 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행할 수 있을 경우, 애플리케이션 프로세서 (518) 는 전력을 절감하기 위하여 비활성화될 수도 있다.
제 2 애플리케이션 프로세서 (706) 가 제 2 프레임 (104) 에 대한 제 2 컴퓨터 비전 애플리케이션-특정 프로세싱을 포기하는 것으로 결정할 경우, 제 2 애플리케이션 프로세서 (706) 는 제 2 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하는 것에 대한 거부의 표시를 전송할 수도 있다. 예를 들어, 제 2 애플리케이션 프로세서 (706) 는 표시를 제어 버스 (710) 를 통해 애플리케이션 프로세서 (518) 로 전송할 수도 있다. 특정 실시형태에서, 제 2 애플리케이션 프로세서 (706) 는 애플리케이션 프로세서 (518) 로 하여금, 제 2 애플리케이션 프로세서 (706) 가 특정 이벤트에 기초하여 제 2 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하도록 요청하는 것을 금지하게 하기 위한 명령을 전송할 수도 있다. 추가적으로, 제 2 애플리케이션 프로세서 (706) 는 특정 이벤트를 트러블슈팅 (troubleshooting) 하도록 애플리케이션 프로세서 (518) 를 "프로그래밍 (program)" 할 수도 있어서, 애플리케이션 프로세서 (518) 는 특정 이벤트의 발생 시에 제 2 애플리케이션 프로세서 (706) 를 웨이크 업 하지 않는다. 이에 따라, 제 2 애플리케이션 프로세서 (706) 는 애플리케이션 프로세서 (518) 의 상태 (예컨대, 슬립 상태 또는 활성화 상태) 를 제어할 수도 있고, 제 2 애플리케이션 프로세서 (706) 는 또한, 더욱 효율적인 방식으로 기능하도록 애플리케이션 프로세서 (518) 를 프로그래밍할 수도 있다.
제 2 애플리케이션 프로세서 (706) 가 애플리케이션 프로세서 (518) 에 대하여 동작하므로, M 번째 애플리케이션 프로세서 (708) 는 제 2 애플리케이션 프로세서 (706) 및 애플리케이션 프로세서 (518) 에 대하여 실질적으로 유사한 방식으로 동작할 수도 있다. 예를 들어, M 번째 애플리케이션 프로세서 (708) 는 제 2 프레임 (104) 에 대한 M 번째 컴퓨터 비전 애플리케이션-특정 프로세싱, 제 2 컴퓨터 비전 애플리케이션-특정 프로세싱, 및 제 1 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하도록 구성될 수도 있다. 제 2 애플리케이션 프로세서 (706) 와 유사한 방식으로, M 번째 애플리케이션 프로세서 (708) 는 M 번째 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하는 것을 거절할 수도 있고, 다른 애플리케이션 프로세서들 (518, 706) 의 상태를 제어할 수도 있고, 더욱 효율적인 방식으로 동작하도록 다른 애플리케이션 프로세서들 (518, 706) 을 프로그래밍할 수도 있는 등등과 같다.
제 2 프로세싱 경로 (610) 는 프로세싱 효율을 증가시키기 위하여 하나 이상의 애플리케이션 프로세서들 (518, 706, 708) 을 선택적으로 비활성화함으로써 전력 소비를 감소시킬 수도 있다. 예를 들어, 더욱 복잡하고 (예컨대, 더 많은 컴퓨터 비전 애플리케이션-특정 프로세싱 기능들을 수행할 수 있음) 더 많은 전력을 소비하는 애플리케이션 프로세서들은 덜 복잡하고 전력을 덜 소비하는 애플리케이션 프로세서들의 상태를 제어할 수도 있다. 이에 따라, 활성인 애플리케이션 프로세서가 더욱 저전력의 애플리케이션 프로세서의 컴퓨터 비전 애플리케이션-특정 프로세싱 기능들을 수행할 수 있을 경우, 활성인 애플리케이션 프로세서는 전력을 절감하기 위하여 슬립 상태로 진입하도록 더욱 저전력의 애플리케이션 프로세서에 명령할 수도 있다.
도 8 을 참조하면, 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키도록 동작가능한 프로세싱 시스템 (800) 의 또 다른 특정한 예시적인 실시형태가 도시되어 있다. 프로세싱 시스템 (800) 은 센서들 (802), 시스템 제어기 (806), 제 1 프로세싱 경로 (808), 및 제 2 프로세싱 경로 (810) 를 포함한다. 도 8 에서, 센서들 (802) 은 주변광 센서 (840) 및 카메라 (842) 를 포함한다. 대안적인 실시형태들에서는, 상이한 수들 및/또는 타입들의 센서들이 포함될 수도 있다. 제 1 프로세싱 경로 (808) 는 신호 분석기 (512), 활성화 분석기 (814), 및 비활성화 분석기 (816) 를 포함할 수도 있다. 제 2 프로세싱 경로 (810) 는 물체 검출기 (850), 물체 식별기 (852), 활동 분류기 (854), 및 사용자 인터페이스 (856) 를 포함할 수도 있다.
주변광 센서 (840) 는 시야에서 광 및/또는 모션 (motion) 을 검출하도록 구성될 수도 있다. 예를 들어, 주변광 센서 (840) 는 광 또는 모션이 시야에서 존재하는지 여부를 결정하기 위하여 저전력 및 저해상도인 마이크로-전기-기계 시스템 (micro-electrical-mechanical system; MEMS) 기반 카메라일 수도 있다. 주변광 센서 (840) 가 시야에서 모션 및/또는 광을 검출할 경우, 주변광 센서 (840) 는 제 1 값 (예컨대, 논리적 하이 전압 값 (logical high voltage value)) 을 센서 스테이터스 (sensor status) (882) 로서 시스템 제어기 (806) 에 제공할 수도 있다. 대안적으로, 주변광 센서 (840) 가 시야에서 모션 및/또는 광을 검출하지 않을 경우, 주변광 센서 (840) 는 제 2 값 (예컨대, 논리적 로우 전압 값 (logical low voltage value)) 을 센서 스테이터스 (882) 로서 시스템 제어기 (806) 에 제공할 수도 있다.
센서 스테이터스 (882) 에 기초하여, 시스템 제어기 (806) 는 카메라 (842) 를 선택적으로 활성화 또는 비활성화할 수도 있다. 예를 들어, 시스템 제어기 (806) 는 주변광 센서 (840) 가 시야에서 광 및/또는 모션을 검출할 때에 카메라 (842) 를 활성화하기 위하여 센서 구성 데이터 (880) 를 제공할 수도 있다. 카메라 (842) 가 활성화될 때, 카메라 (842) 는 로우 레이트 데이터 (834) (예컨대, 센서 데이터 (530)) 를 신호 분석기 (512) 에 제공할 수도 있다. 대안적으로, 시스템 제어기 (806) 는 주변광 센서 (840) 가 시야에서 광 및/또는 모션을 검출하지 않을 때에 카메라 (842) 를 비활성화하기 위하여 센서 구성 데이터 (880) 를 제공할 수도 있다. 광 및/또는 모션이 시야에서 검출되지 않을 때에 카메라 (842) 를 비활성화하는 것은 전력을 절감할 수도 있다. 특정 실시형태에서, 센서 구성 데이터 (880) 는 또한, 광 및/또는 모션이 검출되었던 시야에서의 부분 (예컨대, 로케이션) 을 표시할 수도 있다.
도 8 에서의 센서들 (802) 은 주변광 센서 (840) 및 카메라 (842) 를 도시하고 있지만, 다른 실시형태들에서는, 제 1 모드 (예컨대, 저전력 모드) 및 제 2 모드 (예컨대, 고전력 모드) 에서 동작하도록 구성되는 단일 카메라가 이용될 수도 있다. 예를 들어, 저전력 모드에서는, 카메라가 시야에서 광 및/또는 모션을 검출하도록 구성될 수도 있다. 광 및/또는 모션을 검출할 시에, 카메라는 고전력 모드로 진입할 수도 있고, 로우 레이트 데이터 (834) (예컨대, 센서 데이터 (530)) 를 신호 분석기 (512) 에 제공할 수도 있다.
신호 분석기 (512) 는 분석 결과들 (542) 을 활성화 분석기 (814) 및 비활성화 분석기 (816) 에 제공할 수도 있다. 특정 실시형태에서, 활성화 분석기 (814) 및 비활성화 분석기 (816) 는 도 4 의 변경 검출 회로 (414) 또는 도 5 의 변경 검출 회로 (514) 에 대응할 수도 있다. 예를 들어, 활성화 분석기 (814) 는 (예컨대, 제 1 센서 데이터 및 제 2 센서 데이터 사이의 변경량이 변경 임계점을 충족시킬 경우) 분석 결과들 (542) 에 기초하여 활성화 신호 (844) 를 생성할 수도 있다. 시스템 제어기 (806) 는 제 2 프로세싱 경로 (810) 에서의 컴포넌트들을 활성화 (예컨대, 웨이크 업) 하기 위하여 활성화 신호 (844) 를 제 2 프로세싱 경로 (810) 에 제공할 수도 있다. 대안적으로, 비활성화 분석기 (816) 는 (예컨대, 제 1 센서 데이터 및 제 2 센서 데이터 사이의 변경량이 임계점을 충족시키는 것에 실패할 경우) 분석 결과들 (542) 에 기초하여 비활성화 신호 (846) 를 생성할 수도 있다. 시스템 제어기 (806) 는 제 2 프로세싱 경로 (810) 에서의 컴포넌트들을 비활성화하기 위하여 비활성화 신호를 제 2 프로세싱 경로 (810) 에 제공할 수도 있다.
제 2 프로세싱 경로 (810) 가 활성화될 경우, 카메라 (842) 는 컴퓨터 비전 애플리케이션-특정 프로세싱을 위하여 하이 레이트 데이터 (high rate data) (832) 를 제 2 프로세싱 경로 (810) 에서의 컴포넌트들에 제공할 수도 있다. 예를 들어, 물체 검출기 (850) 는 하이 레이트 데이터 (832) 의 프레임에서 물체들을 검출할 수도 있고, 물체 식별기 (852) 는 물체를 식별할 수도 있고, 활동 분류기 (854) 는 식별된 물체를 분류할 수도 있는 등등과 같다. 특정 실시형태에서, 물체 검출기 (850) 는 도 7 의 애플리케이션 프로세서 (518) 에 대응할 수도 있고, 물체 식별기 (852) 는 도 7 의 제 2 애플리케이션 프로세서 (706) 에 대응할 수도 있고, 활동 분류기 (854) 는 도 7 의 M 번째 애플리케이션 프로세서 (708) 에 대응할 수도 있다. 도 8 에서의 제 2 프로세싱 경로 (810) 는 물체 검출기 (850), 물체 식별기 (852), 및 활동 분류기 (854) 를 포함하지만, 다른 실시형태들에서, 제 2 프로세싱 경로 (810) 는 추가적인 또는 상이한 컴포넌트들을 포함할 수도 있다. 예를 들어, 제 2 프로세싱 경로 (810) 에서의 컴포넌트들은 컴퓨터 비전 애플리케이션에 기초할 수도 있다. 사용자 인터페이스 (856) 는 물체 검출기 (850), 물체 식별기 (852), 활동 분류기, 또는 이들의 임의의 조합의 출력들을 (예컨대, 디스플레이 디바이스에서) 사용자에게 디스플레이하도록 구성될 수도 있다.
특정 실시형태에서, 제 2 프로세싱 경로 (810) 는 시스템 제어기 (806) 를 통해 스테이터스 표시 (848) 를 제 1 프로세싱 경로 (808) 에 제공할 수도 있다. 스테이터스 표시 (848) 는 제 2 프로세싱 경로 (810) 에서의 특정 컴포넌트들이 활성 또는 아이들 (idle) 인지 여부를 제 1 프로세싱 경로 (808) 에 표시할 수도 있다.
도 9 를 참조하면, 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키도록 동작가능한 프로세싱 시스템 (900) 의 또 다른 특정한 예시적인 실시형태가 도시되어 있다. 프로세싱 시스템 (900) 은 센서 (402), 비디오 프론트-엔드 (video front-end; VFE) 라이트 서브시스템 (VFE Lite subsystem) (904), 저전력 컴퓨터 비전 서브시스템 (low power computer vision subsystem; LPCVSS) (906), 저전력 애플리케이션 서브시스템 (low power application subsystem; LPASS) (908), 애플리케이션 프로세서 서브시스템 (application processor subsystem; APSS) (910), 하나 이상의 다른 프로세서들 (912), 및 데이터 버스 (916) 를 포함한다. 특정 실시형태에서, LPASS (908) 는 도 7 의 애플리케이션 프로세서 (518) 에 대응할 수도 있으며 실질적으로 유사한 방식으로 동작할 수도 있고, APSS (910) 는 도 7 의 제 2 애플리케이션 프로세서 (706) 에 대응할 수도 있으며 실질적으로 유사한 방식으로 동작할 수도 있고, 하나 이상의 다른 프로세서들 (912) 은 도 7 의 M 번째 애플리케이션 프로세서 (708) 에 대응할 수도 있으며 실질적으로 유사한 방식으로 동작할 수도 있다.
LPASS (908), APSS (910), 및 하나 이상의 다른 프로세서들 (912) 은 프로세싱 코어, 애플리케이션 프로세서 서브시스템, 프로세싱 자원 등에 각각 대응할 수도 있다. LPASS (908) 는 제 1 전력량을 소비할 수도 있고, APSS (910) 는 제 2 전력량을 소비할 수도 있고, 추가적인 프로세서들 (912) 은 제 3 전력량을 소비할 수도 있다. 제 1 전력량은 제 2 전력량보다 더 적을 수도 있고, 제 2 전력량은 제 3 전력량보다 더 적을 수도 있다.
센서 (402) 는 센서 데이터 (430) (예컨대, 제 1 프레임 (102), 제 2 프레임 (104), 제 3 프레임 (106) 등) 를 VFE-라이트 (904) 에 제공할 수도 있다. 제 1 프레임 (102) 을 수신할 시에, VFE-라이트 (904) 는 제 1 프레임 (102) 을 분석할 수도 있고, 분석의 제 1 분석 결과들 (542) 을 LPCVSS (906) 에 제공할 수도 있다. 특정 실시형태에서, VFE-라이트 (904) 는 도 3 의 제 1 프로세싱 디바이스 (304) 또는 도 5 의 신호 분석기 (512) 에 대응할 수도 있고, 실질적으로 유사한 방식으로 동작할 수도 있다. LPCVSS (906) 는 제 1 분석 결과들 (542) 을 저장하기 위한 "온-보드" 메모리를 포함할 수도 있다. 특정 실시형태에서, LPCVSS (906) 는 도 4 의 변경 검출 회로 (414) 및 도 5 의 변경 검출 회로 (514) 와 실질적으로 유사한 방식으로 동작할 수도 있다. 제 2 프레임 (104) 을 수신할 시에, VFE-라이트 (904) 는 제 2 프레임 (104) 을 분석할 수도 있고, 분석의 제 2 분석 결과들 (542) 을 LPCVSS (906) 에 제공할 수도 있다.
추가적으로, VFE-라이트 (904) 는 데이터 버스 (916) 를 통해 센서 데이터 (430) (예컨대, 제 2 프레임 (104)) 를 DDR (914) 에 제공할 수도 있다. LPCVSS (906), LPASS (908), APSS (910), 및 추가적인 프로세서들 (912) 은 데이터 버스 (916) 를 통해 DDR (914) 로부터 센서 데이터 (430) 에 액세스할 수 있을 수도 있다. 예를 들어, LPCVSS (906), LPASS (908), APSS (910), 및 추가적인 프로세서들 (912) 은 DDR (914) 로부터 제 2 프레임 (104) (또는 제 2 프레임 (104) 의 프로세싱된 버전들) 을 수신하기 위하여 데이터 버스 (916) 에 결합될 수도 있다.
LPCVSS (906) 는 제 1 프레임 (102) 및 제 2 프레임 (104) 사이의 변경량 (예컨대, 제 1 분석 결과들 (542) (또는 제 1 센서 데이터) 및 제 2 분석 결과들 (542) (또는 제 2 센서 데이터) 사이의 변경량) 을 결정하도록 구성될 수도 있다. 변경량이 임계점 (예컨대, 변경 임계점) 을 충족시키는 것에 실패할 때, LPCVSS (906) 는 제 1 값을 가지는 제어 신호 (920) 를 생성할 수도 있다. 변경량이 임계점을 충족시킬 때, LPCVSS (906) 는 제 2 값을 가지는 제어 신호 (516) 를 생성할 수도 있다.
도 9 의 예시된 실시형태에서, 제어 신호 (920) 는 변경량이 임계점을 충족시키는 것에 실패하였음을 표시하는 제 1 값을 가진다. 그 결과, LPASS (908), APSS (910), 및 하나 이상의 추가적인 프로세서들 (912) 은 빗금 패턴을 통해 표시된 바와 같이 슬립 상태에 있다. 예를 들어, LPCVSS (906) 는 변경량에 기초하여 슬립 상태에서 유지하는 것을 (제어 신호 (920) 를 통해) LPASS (908) 에 표시할 수도 있다. 이에 따라, 도 9 의 예시된 실시형태에서는, LPASS (908), APSS (910), 및 하나 이상의 추가적인 프로세서들 (912) 을 턴 오프하여, 현재의 프레임에 대한 컴퓨터 비전 애플리케이션-특정 프로세싱이 우회될 수도 있으므로, 전력이 절감될 수도 있다.
도 10 의 예시된 실시형태에서는, 프로세싱 시스템 (900) 이 부분적인 전력 모드에 있을 수도 있다. 예시하기 위하여, 제어 신호 (920) 는 변경량이 임계점을 충족시키는 것을 표시하는 제 2 값을 가질 수도 있다. 예를 들어, LPCVSS (906) 는 "활동 (activity)" (예컨대, 현재의 프레임 및 이전의 프레임 사이의 변경) 을 검출할 수도 있고, 현재의 프레임에 대한 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행할 것을 LPASS (908) 에 시그널링할 수도 있다. LPASS (908) 가 제어 신호 (920) 를 수신할 때, LPASS (908) 는 "웨이크 업 (wake up)" 할 수도 있고, 센서 데이터 (430) 에 대한 제 1 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행할 수도 있다. 비-제한적인 예로서, LPASS (908) 는 특정 컬러 (예컨대, 손 검출/인식을 위하여 인간의 피부 색조와 연관된 컬러) 에 대해 제 2 프레임 (104) 의 픽셀들을 스캐닝하도록 구성될 수도 있다. 또 다른 비-제한적인 예로서, LPASS (908) 는 ROI 에서의 활동이 임계점을 충족시키는지 여부를 결정하기 위하여 국소화된 "관심 영역 (region of interest)" (ROI) 을 생성할 수도 있다. ROI 에서의 활동이 임계점을 충족시키지 않을 경우, LPASS (908) 는 APSS (910) 및 다른 프로세서들 (912) 을 "턴 오프 (turn off)" 할 수도 있고, 현재의 프레임을 "누락 (drop)" 시킬 수도 있다. APSS (910) 및 다른 프로세서들 (912) 을 턴 오프하는 것은 전력 소비를 감소시킬 수도 있다.
도 11 의 예시된 실시형태에서는, 프로세싱 시스템 (900) 이 전체 전력 모드에 있을 수도 있다. 예를 들어, ROI 에서의 활동이 임계점을 충족시킬 경우, LPASS (908) 는 제어 신호 (922) 를 통해, APSS (910) 가 제 2 프레임 (104) 에 대한 제 2 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행할 것을 요청할 수도 있다 (예컨대, APSS (910) 가 슬립 상태로부터 "웨이크 업" 할 것을 요청함). 비-제한적인 예로서, LPASS (908) 가 제 2 프레임 (104) 의 특정 픽셀이 특정 컬러를 가지는 것으로 검출 및 결정할 경우, LPASS (908) 는 APSS (910) 가 제 2 프레임 (104) 에 대한 제 2 컴퓨터 비전 애플리케이션-특정 프로세싱 (예컨대, 물체 검출 프로세싱, 물체 인식 프로세싱, 또는 이들의 임의의 조합) 을 수행할 것을 요청할 수도 있다. LPASS (908) 는 IPC 제어들을 통해 APSS (910) 와 통신할 수도 있다.
유사하게, APSS (910) 는 제어 신호 (924) 를 통해, 추가적인 프로세서들 (912) 이 제 2 프레임 (104) 에 대한 제 3 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행할 것을 요청할 수도 있다 (예컨대, 추가적인 프로세서들 (912) 이 슬립 상태로부터 "웨이크 업" 할 것을 요청함). APSS (910) 는 IPC 제어들을 통해 추가적인 프로세서들 (912) 과 통신할 수도 있다.
이에 따라, 도 9 내지 도 11 에 대하여 설명된 실시형태들은 프로세싱 효율을 증가시키기 위하여 하나 이상의 프로세서들/서브시스템들을 선택적으로 비활성화함으로써 전력 소비를 감소시킬 수도 있다.
입력을 컴퓨터 비전 애플리케이션 프로세서에 제공할 수도 있는 센서 (예컨대, 도 4 의 센서 (402)) 의 예는 상시-온 카메라를 포함한다. 상시-온 카메라는 다양한 이동 디바이스들 중의 임의의 것 내에 포함될 수도 있고, 및/또는 이와 통신가능하게 결합될 수도 있다. 도 12 는 상시-온 카메라를 사용할 수도 있는 이동 디바이스들 (1200) 의 실시형태들의 예시이다. 이동 디바이스들 (1200) 은 이동 전화 (1200-1), 태블릿 (1200-2), 및 머리 장착형 디스플레이 (head-mounted display; HMD) (1200-3) 를 포함한다. 도 12 에서 도시되지 않았지만, 이동 디바이스들 (1200) 은 개인 정보 단말 (personal digital assistant; PDA) 들, 노트북 컴퓨터들, 개인용 미디어 플레이어들, 게임용 디바이스들, 카메라들, 비디오 레코더들, 기타 등등을 포함할 수도 있다. 이동 디바이스들 (1200) 은, 사용자의 신체에 걸쳐 분산될 수도 있는 하나 이상의 웨어러블 디바이스들 (예컨대, 헬멧 카메라들, 스포츠 카메라들 등) 을 포함할 수도 있다. 다수의 디바이스들 (예컨대, 웨어러블 디바이스들) 은 도 13 을 참조하여 더욱 설명된 바와 같이, 맥락 결정 엔진과 통신가능하게 접속될 수도 있고, 및/또는 맥락 결정 엔진에 의해 관리될 수도 있다.
또한, 이동 디바이스의 스타일, 사이즈, 기능성, 및/또는 다른 특징들은 동일한 타입의 상이한 이동 디바이스들 사이에서 변동될 수도 있다. 이동 디바이스들 (1200) 은 이동 디바이스 (1200) 상의 다양한 로케이션들 중의 임의의 것에서 위치된 하나 이상의 카메라들 (1210) (예컨대, 도 3 의 카메라 (302), 도 8 의 카메라 (842)) 을 포함할 수도 있다. 이동 전화 (100-1) 는 예를 들어, 전방-대면 카메라 (1210-1) 및/또는 후방-대면 카메라 (1210-2) 를 포함할 수도 있다. 태블릿 (1200-2) 은 전방-대면 카메라 (1210-3), 및/또는 다른 방향들을 대면할 수도 있는 다른 표면들 (예컨대, 측면들 및/또는 후면) 상의 추가적인 카메라들 (1210-4) 을 포함할 수도 있다. HMD (100-3) 는 도시된 바와 같이, HMD (1200-3) 의 디스플레이들 (1220) 사이에서, 및/또는 HMD (1200-3) 의 또 다른 로케이션에서 위치된 외향-대면 카메라 (outward-facing camera) (1210-5) 를 가질 수도 있다.
이동 디바이스의 카메라들 (1210) 의 임의의 것 또는 전부는 희망하는 기능성에 따라서는, 상시-온 카메라로서 사용될 수도 있다. 일부의 실시형태들은 상시-온 기능성을 수용하는 특정 특징들 (예컨대, 광각 (wide-angle), 어안 (fisheye), 저전력, 저해상도 등) 을 갖는 상시-온 기능성에 대해 전용인 특정 카메라를 사용할 수도 있지만, 실시형태들은 추가적으로 또는 대안적으로, 상시-온 기능성을 위하여 다양한 카메라 타입들 (예컨대, 적외선, 자외선, 분광기 (spectrometer), 고해상도, 전방-대면 등) 중의 임의의 것을 사용할 수도 있다. 이동 디바이스가 복수의 카메라들을 포함하는 실시형태들은 사용자가 상시-온 카메라로서 이용하기 위한 카메라를 선택하는 것을 가능하게 할 수도 있고, 및/또는 이동 디바이스는 어떤 상황들에서 상이한 카메라들 사이에서 토글할 수도 있다.
이동 디바이스의 실시형태들은 도 12 에서 도시된 이동 디바이스들 (1200) 로부터 변동될 수도 있다. 예를 들어, 이동 디바이스 내에 내장된 카메라들에 추가하여, 또는 이 카메라들에 대한 대안으로서, 특정 실시형태는, 카메라로부터 물리적으로 분리되어 있지만, (예컨대, 무선 또는 유선 기술들을 통해) 그것과 통신가능하게 결합된 이동 디바이스를 포함할 수도 있다. 다른 센서들은 또한, 이동 디바이스로부터 물리적으로 분리되어 있지만, 그것과 통신할 수도 있어서, 카메라들 및/또는 다른 센서들은 예를 들어, 사용자의 신체 상 및/또는 사용자 \의 신체 주위의 다양한 로케이션들에서 분산될 수도 있다.
도 13 은 디바이스들의 실시형태들이 상시-온 카메라의 샘플링 레이트의 변조에 영향을 줄 수도 있는 맥락 결정들에서 센서 및 다른 정보를 어떻게 사용할 수도 있는지를 예시하는 입력/출력 도면이다. 이 맥락 결정들은 예를 들어, 이동 디바이스들 (1200) 중의 하나 이상의 이동 디바이스의 소프트웨어 및/또는 하드웨어에 의해 실행된 맥락 결정 엔진 (1380) 에 의해 행해질 수도 있다. 맥락 결정 엔진 (1380) 은 이동 디바이스들 (1200) 중의 하나 이상의 이동 디바이스의 더 큰 소프트웨어 및/또는 하드웨어 애플리케이션의 일부일 수도 있거나 그것 내로 통합될 수도 있다. 예를 들어, 맥락 결정 엔진 (1380) 의 하나 이상의 컴포넌트들은 애플리케이션 프로세서 (예컨대, 도 3 의 제 2 프로세싱 디바이스 (310), 도 4 의 애플리케이션 프로세서 (418), 도 5 내지 도 7 의 애플리케이션 프로세서 (518), 하나 이상의 추가적인 프로세서들 (622), 제 2 애플리케이션 프로세서 (706), 및/또는 도 7 의 M 번째 애플리케이션 프로세서 (708)), 물체 검출기 (850), 물체 식별기 (852), 활동 분류기 (854), 활성화 분석기 (814), 비활성화 분석기 (816), 도 8 의 시스템 제어기 (806), VFE-라이트 (904), LPCVSS (906), LPASS (908), APSS (910), 도 9 내지 도 11 의 하나 이상의 다른 프로세서들 (912), 변경 검출 회로 (예컨대, 도 4 의 변경 검출 회로 (414) 및/또는 도 5 의 변경 검출 회로 (514)), 도 5 의 신호 분석기 (512), 또는 이들의 조합의 일부일 수도 있거나 그것 내로 통합될 수도 있다. 맥락 결정 엔진 (1380) 은 맥락 결정을 행하기 위하여, (예를 들어, 도 8 의 주변광 센서 (840), 자외선 (ultra violet; UV) 센서 (들), UV-A 센서 (들), UV-B 센서 (들), 적색-녹색-청색 (red-green-blue; RGB) 센서 (들), 기타 등등을 포함할 수도 있는) 광 센서 (들) (1310), 마이크로폰 (들) (1320), (예를 들어, 하나 이상의 자이로스코프 (gyroscope) 들, 자력계 (magnetometer) 들 (및/또는 다른 타입들의 나침반들), 가속도계 (accelerometer) 들, 기타 등등을 포함할 수도 있는) 모션/방위 검출기 (들) (1330), 카메라 (들) (1210) (예컨대, 도 3 의 카메라 (302) 및/또는 도 8 의 카메라 (842)), (예를 들어, 2 세대 (2G) 모뎀, 3 세대 (3G) 모뎀, 4 세대 (4G) 모뎀, 무선 충실도 (wireless fidelity; WiFi) 인터페이스, 마이크로파 액세스를 위한 전세계 상호운용성 (worldwide interoperability for microwave access; WiMax) 인터페이스, 및/또는 Bluetooth® (Bluetooth SIG, Inc. 의 등록 상표) 인터페이스 또는 Bluetooth® (Bluetooth SIG, Inc. 의 등록 상표) 저에너지 (low energy; LE) 인터페이스와 같은 또 다른 무선 인터페이스를 포함할 수도 있는) 무선 통신 인터페이스 (1340), 위성 위치확인 수신기 (들) (1350), 및/또는 다른 센서 (들) (1360) (예컨대, 도 4 의 센서 (402), 도 5 의 센서 (502), 도 6 의 센서 (602), 고도계 (altimeter) (들), 근접성 센서 (들), 압축 이미징 센서 (compressive imaging sensor) (들), 온도 센서 (들), 압력 센서 (들), 터치 센서 (들), 지문 센서 (들), 기타 등등) 를 포함하는 다양한 컴포넌트들로부터 데이터를 수신할 수도 있다.
특정 실시형태에서, 맥락 결정 엔진 (1380) 은 맵 (들) (1370), 모션 모델 (들) (1390), 및/또는 애플리케이션 데이터 (1395) (예컨대, 컴퓨터 비전 애플리케이션 데이터) 로부터 데이터를 수신할 수도 있다. 희망하는 기능성에 따라서는, 컴포넌트들 중의 하나 이상이 (예를 들어, 이전에 설명된 바와 같이, 유선 및/또는 무선 접속을 통해 통신하는) 이동 디바이스들 (1200) 중의 하나 이상의 이동 디바이스 내로 통합될 수도 있고 및/또는 이동 디바이스들 (1200) 중의 하나 이상의 이동 디바이스로부터 분리되어 있을 수도 있다.
하나 이상의 카메라들 (1210) 은 이동 디바이스들 (1200) 중의 하나 이상의 이동 디바이스 내로 통합될 수도 있고 및/또는 그것과 통신가능하게 결합될 수도 있다. 또한, 카메라 (들) (1210) 중의 임의의 것 또는 전부는 상시-온 카메라로서 지정될 수도 있다. 맥락 결정 엔진 (1380) 은 이 지정을 행할 수도 있다. 상시-온 카메라의 샘플 레이트가 맥락 결정 엔진 (1380) 의 맥락 결정에 의해 영향을 받을 수도 있을 뿐만 아니라, 상시-온 카메라 (및/또는 다른 카메라 (들) (1210)) 로부터의 이미지들이 추가의 맥락 결정들을 위하여 프로세싱될 수도 있다.
맥락 결정들은 (소프트웨어 애플리케이션 앵커 하드웨어 디폴트 (software application anchor hardware default) 에 의해 선택된 초기 샘플링 레이트일 수도 있는) 상시-온 카메라의 샘플링 레이트를 변조하는 것으로 귀착될 수도 있다. 샘플링 레이트는 광범위한 샘플링 레이트들 중의 임의의 것으로 변조될 수도 있다. 예를 들어, 초기 샘플링 레이트는 매 4 내지 5 초에 하나의 샘플일 수도 있다. 그러나, 어떤 맥락 결정들은 샘플링 레이트가 초 당 30 샘플들 (즉, 초 당 30 프레임 (frame per second; FPS)) 이상으로 증가되게 할 수도 있다. 다른 결정들은 샘플링 레이트를 예를 들어, 5 분마다 한 번으로 감소시키는 것 및/또는 샘플들을 모두 억제하는 것으로 귀착될 수도 있다. 맥락 결정들은 제로 (즉, 샘플링 없음) 로부터 상시-온 카메라의 하드웨어 및/또는 소프트웨어 제약들 하에서 실현가능한 최고 레이트까지의 샘플링 레이트들로 귀착될 수도 있다. 추가적으로 또는 대안적으로, 이하에서 더욱 상세하게 설명된 바와 같이, 실시형태들은 상시-온 카메라를 선택적으로 트리거링하는 것, 및/또는 맥락 결정들에 기초한 멀티-센서 시스템에서 어떤 센서들 (예컨대, 카메라들, 광 센서들, 모션 검출기들, 마이크로폰들 등) 을 선택적으로 활성화하는 것을 제공할 수도 있다.
광 센서 (들) (1310) 는 활성 광 센서 (들), RGB 센서 (들), 자외선 (UV) 센서 (들), 기타 등등과 같은 다양한 감광성 센서 (photo-sensitive sensor) 들 중의 임의의 것을 포함할 수도 있다. 이러한 광 센서 (들) (1310) 는 전형적으로 상시-온 카메라보다 훨씬 더 적은 전력을 소비하고, 이동 디바이스들 (1200) 중의 하나 이상의 이동 디바이스의 맥락을 결정함에 있어서 이용될 수도 있다. 예를 들어, 하나 이상의 광 센서들 (1310) 은 상시-온 카메라가 노출되는 광 강도를 결정하기 위하여 위치될 수도 있다. 검출된 광 강도가 어떤 임계점 미만일 경우, 맥락 결정 엔진 (1380) 은 상기-온 카메라가 포켓 또는 지갑에 있거나 암실에 있는 것으로 결정할 수도 있고, 이 경우, 상시-온 카메라의 샘플링 레이트는 감소되거나 보류될 수도 있다.
일부의 실시형태들은 상시-온 카메라로서 사용될 수도 있는 다수의 카메라들 (1210) 을 가질 수도 있다. 조명 조건들이 카메라 로케이션에 의해 변동될 수 있고, 하나 이상의 광 센서들 (1310) 이 각각의 카메라에 대응하도록 위치될 경우, 맥락 결정 엔진 (1380) 은 광 센서 (들) (1310) 로부터의 광 강도 데이터에 기초하여 다수의 카메라들 (1210) 중의 어느 것을 상시-온 카메라로서 사용할 것인지를 결정할 수도 있다.
추가적으로 또는 대안적으로, 맥락 결정 엔진 (1380) 은 이동 디바이스의 위치 및/또는 (책상 위, 또는 사용자의 손, 가방, 셔츠 포켓, 바지 포켓, 홀스터 (holster) 안 등과 같은) 사용자와 관련된 상시-온 카메라 위치를 결정하기 위하여 모션/방위 검출기 (들) (1330), 모션 모델 (들) (1390), 및/또는 광 센서 (들) (1310) 를 이용할 수도 있고, 이에 따라, 상시-온 카메라의 샘플링 레이트를 변조할 수도 있다. 예를 들어, 이동 디바이스가 포켓, 가방, 지갑, 또는 홀스터에서 검출되고, 및/또는 어떤 임계점 미만의 광에 노출될 경우, 상시-온 카메라에 대한 뷰는 막혀질 가능성이 있고, 상시-온 카메라의 샘플링 레이트는 감소될 수도 있다. 특정 실시형태에서, 상시-온 카메라의 샘플링 레이트는 제로로 감소될 수도 있어서, 이미지 캡처를 보류할 수도 있다. 사용자의 삶의 사진 로그 (photo log) 를 자동으로 수집하기 위하여, 상시-온 카메라의 캡처된 이미지들이 라이프-로깅 (life-logging) 애플리케이션에 의해 이용되는 시나리오에서는, 이 기능성은 불필요한 이미지 캡처를 회피하는 것으로 귀착될 수 있고, 야간 시간 동안, 상시-온 카메라가 포켓 안에 있을 때, 기타 등등과 같이, 사진들이 유용한 정보를 거의 또는 전혀 제공하지 않을 때에 상당한 전력 절감을 제공할 수 있다. 모션/방위 검출기 (들) (1330) 및/또는 모션 모델 (들) (1390) 은 또한, 맥락 결정 엔진 (1380) 이 이동 디바이스들 (1200) 중의 하나 이상을 휴대하고 있고 및/또는 이와 연관되는 사용자의 상태를 결정하는 것을 가능하게 할 수도 있다. 예들은 보행, 주행, 운동, 수송 중, 및 검출가능한 운동 및/또는 방위를 수반할 수도 있는 다른 이러한 활동들을 포함한다. 또한, 사용자 상태는 상시-온 카메라가 어떻게 변조되는지에 영향을 줄 수도 있다. 예를 들어, 상시-온 카메라는 사용자 상태가 실외에서의 운동을 표시할 경우에 (예컨대, 사용자의 환경이 빈번하게 변경될 가능성이 있을 경우에) 샘플링 레이트를 증가시키도록 구성될 수도 있다. 다른 한편으로, 실내에서의 상대적으로 비활성인 상태를 표시하는 사용자 상태는 맥락 결정 엔진 (1380) 으로 하여금 상시-온 카메라의 샘플링 주파수를 감소시키게 할 수도 있다.
맥락 결정 엔진 (1380) 은 또한, 어떤 오디오 활동 및 방향을 검출하기 위하여 마이크로폰 (들) (1320) 으로부터의 데이터를 사용할 수도 있다. 마이크로폰 (들) (1320) 으로부터의 데이터는 특정 활동 (예컨대, 회의 또는 대화) 이 일어나고 있는 것으로 결정하기 위해 이용될 수도 있다. 마이크로폰 (들) (1320) 으로부터의 데이터는 상시-온 카메라의 샘플링 주파수를 변조하기 위해 이용될 수도 있어서, 예를 들어, 사운드가 검출될 때에 샘플링 레이트를 증가시킬 수도 있다.
특정 실시형태에서, 이동 디바이스는 다수의 카메라들 (1210) 중의 임의의 것을 상시-온 카메라로서 사용할 수도 있다. 마이크로폰 데이터로부터 유도된 오디오 지향성 (audio directionality) 은 사운드가 어느 방향으로부터 나오는지를 결정하기 위해 이용될 수도 있다. 다음으로, 사운드의 방향을 대면할 가능성이 있는 대응하는 카메라는 오디오 활동의 방향에 기초하여 이미지들을 캡처하기 위하여 상시-온 카메라로서 지정될 수도 있다. 오디오 활동의 방향을 대면하는 카메라에 의해 캡처된 이미지들은 또한, 스피커 정체성, 스피커의 감정들, 스피커의 표현들, 오디오 활동에 대응하는 시각적 장면, 기타 등등에 관한 시각적 정보를 포함할 가능성이 있다. 마이크로폰 (들) (1320) 은 오디오 지향성을 검출하기 위한 하나 이상의 저전력 마이크로폰 활동 검출기들을 포함할 수도 있다.
오디오 지향성 및 사용자 상태 결정은, 다수의 카메라들 (1210) 을 갖는 이동 디바이스들 (1200) 중의 하나 이상이 라이프-로깅 애플리케이션을 실행하고 있는 시나리오에서 이용될 수도 있다. 회의 맥락에서, 사용자는 이동 디바이스들 (1200) 중의 하나 이상을 테이블 위에 놓아둘 수도 있고, 이때, 맥락 결정 엔진 (1380) 은 (예컨대, "회의에서") 사용자 상태를 결정하기 위하여 마이크로폰 (들) (1320) 및/또는 다른 컴포넌트들을 이용할 수도 있고, 사용자 상태에 기초하여, 어느 카메라 (1210) 로부터 샘플링할 것인지, 및/또는 카메라의 샘플링 레이트를 어떻게 변조 (예컨대, 증가 또는 감소) 할 것인지를 결정하기 위하여 마이크로폰 (들) (1320) 의 오디오 지향성 정보를 레버리지로 활용할 수도 있다. 사용자가 그 또는 그녀의 사무실에서 작업하고 있을 때, 맥락 결정 엔진은 이 사용자 상태 (예컨대, "사무실에서 작업함") 를 결정하기 위하여 (예컨대, 오디오 환경 클러스터링 및/또는 다른 오디오 분석 기법들을 이용하여) 오디오 데이터를 사용할 수도 있고, 오디오 분위기에서의 변경이 검출될 때까지, 사용자 상태에 기초하여, 샘플링 레이트를 감소시키거나 상시-온 카메라를 턴 오프할 수도 있다.
맥락 결정 엔진 (1380) 은 또한, 사용자가 참여되어 있을 수도 있는 활동 (예컨대, 보행, 주행, 수송 중, 등) 과 같은 맥락 정보를 결정하기 위하여 모션/방위 검출기 (들) (1330) 로부터의 데이터를 이용할 수도 있다. 모션/방위 검출기 (들) (1330) 로부터의 데이터는, 결정을 행하기 위하여, 사용자의 상이한 활동들 및/또는 다른 상태들을 모델링할 수도 있는 모션 모델 (들) (1390) 에 대하여 비교될 수도 있다. 예를 들어, 감지된 모션이 어떤 활동의 모델링된 모션의 임계점 유사성 내에 있을 경우 (즉, 감지된 모션이 임계점 내에서 모델링된 모션과 유사함), 맥락 결정 엔진 (1380) 은 사용자가 그 활동에 참여되어 있는 것으로 결정할 수도 있다. 일부의 실시형태들에서, 데이터는 절대적 모션 분류기 또는 상대적 또는 전체 모션 분류기와 같은 분류기에 의해 프로세싱될 수도 있거나, 데이터는 보수계 모듈 또는 함수에 의해 프로세싱될 수도 있다.
맥락 결정 엔진 (1380) 은 사용자 (예컨대, 사용자 상태) 및/또는 이동 디바이스 (1200) 의 속력, 모션, 및/또는 결정된 맥락에 기초하여 상시-온 카메라의 샘플링 레이트를 변조할 수도 있다. 예를 들어, 맥락 결정 엔진 (1380) 이 사용자가 주행 또는 점핑과 같이, 상대적으로 높은 양의 운동을 수반하는 어떤 활동들에서 참여되어 있는 것으로 결정할 경우, 맥락 결정 엔진 (1380) 은 이에 따라, 상시-온 카메라의 샘플링 레이트를 조절할 수도 있다. 예를 들어, 사용자 운동들을 검출하는 것에 응답하여, 맥락 결정 엔진 (1380) 은 상시-온 카메라로부터의 샘플링을 감소시키거나 보류할 수도 있다.
유사하게, 맥락 결정 엔진 (1380) 은, 모션/방위 검출기 (들) (1330) 로부터, 및/또는 (예를 들어, 위성 위치확인 수신기 (들) (1350), 위치확인 및/또는 속력 정보를 제공할 수 있는 무선 통신 인터페이스 (1340), 기타 등등을 이용하여 결정될 수 있는) 로케이션 정보로부터 속력을 추정함으로써, 사용자가 어떤 속력으로 여행하고 있는 것으로 결정할 수도 있다. 속력이 어떤 임계점을 초과할 경우, 맥락 결정 엔진 (1380) 은 블러링된 이미지들을 캡처할 가능성을 감소시키기 위하여 상시-온 카메라로부터의 샘플링을 감소시키거나 보류할 수도 있다. 추가적으로 또는 대안적으로, 속력은 사용자 상태의 결정에서 이용될 수도 있고, 다음으로, 이 사용자 상태는 상시-온 카메라의 샘플링이 어떻게 변조될 수도 있는지를 결정하기 위해 이용될 수도 있다.
맥락 결정 엔진 (1380) 은 또한, 상시-온 카메라의 샘플링 레이트를 변조할 것인지 여부를 결정하기 위하여 모션/방위 검출기 (들) (1330) 로부터의 방위 정보를 이용할 수도 있고, 및/또는 하나 이상의 다른 컴포넌트들과 조합될 때, 감지된 방위 및/또는 모션에 기초하여 상시-온 기능성을 위한 카메라를 지정할 수도 있다. 예를 들어, 맥락 결정 엔진 (1380) 은, 상시-온 카메라에 의해 촬영된 이전의 이미지가 어떤 이용-케이스 (예컨대, 하늘 또는 천정을 향해 지시함) 에 대해 유익하지 않은 것으로 결정되고, 이동 디바이스들 (1200) 중의 하나 이상 및/또는 상시-온 카메라가 이전의 이미지를 캡처하는 시간 이후로 절대 정지 상태에 있었을 경우, 상시-온 카메라의 이미지 캡처를 억제할 수도 있다. 지오-펜싱 (geo-fencing) 및 관련성 장소 (place of relevance; POR)-기반 트리거들은 또한, 상시-온 카메라의 샘플링 레이트에 영향을 줄 수도 있는 맥락 결정들에서 이용될 수도 있다.
도 14 를 참조하면, 이미지의 맥락을 식별하도록 동작가능한 시스템의 특정한 예시적인 실시형태가 개시되어 있고, 1400 으로 일반적으로 지정되어 있다. 시스템 (1400) 은 디바이스 (1402) 를 포함할 수도 있다. 디바이스 (1402) 는 프로세서 (1410), 멀티미디어 컨텐츠 분류기 (1412) 및 메모리 (1408) 를 포함할 수도 있다. 멀티미디어 컨텐츠 분류기 (1412) 는 특징 세트 추출기 (1414), 특징 세트 클러스터러 (feature set clusterer; 1416), 특징 세트 분류기 (1418), 장면 변경 검출기 (1460), 블러링된 이미지 검출기 (1462), 또는 이들의 임의의 조합을 포함할 수도 있다. 특정 실시형태에서, 멀티미디어 컨텐츠 분류기 (1412) 의 하나 이상의 컴포넌트들은 제 1 프로세싱 디바이스 (304), 통계 프로세싱 디바이스 (108), 도 3 의 제 2 프로세싱 디바이스 (310), 변경 검출 회로 (414), 도 4 의 애플리케이션 프로세서 (418), 선택 회로 (506), 애플리케이션 프로세서 (518), 신호 분석기 (512), 도 5 의 변경 검출 회로 (514), 도 6 의 하나 이상의 추가적인 프로세서들 (622), 제 2 애플리케이션 프로세서 (706), M 번째 애플리케이션 프로세서 (708), 물체 검출기 (850), 물체 식별기 (852), 활동 분류기 (854), 사용자 인터페이스 (856), 활성화 분석기 (814), 비활성화 분석기 (816), 도 8 의 시스템 제어기 (806), VFE-라이트 (904), LPCVSS (906), LPASS (908), APSS (910), 도 9 의 하나 이상의 다른 프로세서들 (912), 도 13 의 맥락 결정 엔진 (1380), 또는 이들의 조합의 일부일 수도 있거나 그것 내로 통합될 수도 있다.
메모리 (1408) 는 임계 데이터 (1434), 선택 기준들 (1438), 분류 모델 (들) (1428), 사용자 선호도 (들) (1422), 타임스탬프 (들) (1494), 특징 세트 데이터 (1432), 맥락 데이터 (1490), 중간 맥락 데이터 (1492), 애플리케이션 (1444), 또는 이들의 임의의 조합을 포함할 수도 있다. 특정 실시형태에서, 메모리 (1408) 의 적어도 부분은 도 3 의 메모리 (306), 도 4 의 메모리 (420), 도 5 의 메모리 (520), 도 9 의 DDR (914), 또는 이들의 조합에 대응할 수도 있다. 본원에서 이용된 바와 같이, 이미지의 "맥락 (context)" 은 이미지로부터 추론되거나 결정된 정보 및/또는 그로부터 추출된 특징 (들) 을 포함할 수도 있다. 예를 들어, 이미지의 맥락은 특정 로케이션, 특정 사람, 특정 물체, 특정 활동, 또는 이들의 임의의 조합을 포함할 수도 있다. 예시하기 위하여, 특정 회의실에서 회의에 참석하는 특정 사람의 이미지의 맥락은 특정 사람 (예컨대, "존 (John)"), 회의에 참석하는 활동 (예컨대, "참석된 그룹 회의"), 특정 회의실 (예컨대, "룸 2.134"), 회의실 내의 물체들 (예컨대, "화이트보드"), 또는 이들의 임의의 조합을 포함할 수도 있다.
임계 데이터 (1434) 는 하나 이상의 임계 기간 (들) (1480), 임계 신뢰 레벨 (1482), 임계 선예도 레벨 (threshold sharpness level; 1484), 임계 배터리 전력 (1486), 임계 대역폭 (1488), 또는 이들의 임의의 조합을 포함할 수도 있다. 선택 기준들 (1438) 은 자원 버젯 (resource budget; 1420) (예컨대, 활성화되어야 할 동종 또는 이종 프로세서 코어들의 임계 수), 이용 케이스 (1436), 관심 영역 (1478), 또는 이들의 임의의 조합을 포함할 수도 있다. 특정 실시형태에서, 디바이스 (1402) 는 사용자 (1452) 로부터의 사용자 입력 (1430) 을 통해, 임계 데이터 (1434) 에 대응하는 하나 이상의 값들, 선택 기준들 (1438), 또는 양자를 수신할 수도 있다. 특정 실시형태에서, 멀티미디어 컨텐츠 분류기 (1412) 는 하나 이상의 이미지들과 연관된 대응하는 값들에 기초하여 임계 데이터 (1434) 에 대응하는 하나 이상의 값들을 생성할 수도 있다. 예를 들어, 멀티미디어 컨텐츠 분류기 (1412) 는 다수의 이전에 프로세싱된 및/또는 캡처된 이미지들의 평균 선예도에 기초하여 임계 선예도 레벨 (1484) 을 결정할 수도 있다.
디바이스 (1402) 는 하나 이상의 이미지 센서들 및 디스플레이 (1406) 에 결합될 수도 있거나 이와 통신할 수도 있다. 하나 이상의 이미지 센서들은 제 1 이미지 센서 (1404), N 번째 이미지 센서 (1440), 또는 이미지 센서들의 조합을 포함할 수도 있다. 특정 실시형태에서, 디바이스 (1402) 는 제 1 이미지 센서 (1404), N 번째 이미지 센서 (1440) 를 통해, 또는 이미지 센서들의 조합으로부터 이미지를 캡처하도록 구성되는 이동 디바이스일 수도 있다. 특정 실시형태에서, 제 1 이미지 센서 (1404), N 번째 이미지 센서 (1440), 또는 하나 이상의 다른 센서들은 이동 디바이스의 카메라 내로 통합될 수도 있다. 하나 이상의 이미지 센서들은 도 3 의 카메라 (302), 도 4 의 센서 (402), 도 5 의 센서 (502), 도 6 의 센서 (602), 도 8 의 센서들 (802), 도 12 의 카메라들 (1210), 하나 이상의 다른 센서들 (1360), 또는 이들의 조합에 대응할 수도 있다.
디바이스 (1402) 는 도 14 에서 예시된 것보다 더 적거나 더 많은 컴포넌트들을 포함할 수도 있다. 예를 들어, 디바이스 (1402) 는 하나를 초과하는 프로세서를 포함할 수도 있거나, 하나를 초과하는 메모리를 포함할 수도 있거나, 양자일 수도 있다. 디바이스 (1402) 는 네트워크화된 또는 분산된 컴퓨팅 시스템을 포함할 수도 있다. 특정한 예시적인 실시형태에서, 디바이스 (1402) 는 이동 통신 디바이스, 스마트 폰, 셀룰러 전화, 랩톱 컴퓨터, 컴퓨터, 태블릿, 개인 정보 단말, 디스플레이 디바이스, 텔레비전, 게임용 콘솔, 음악 플레이어, 라디오, 디지털 비디오 플레이어, 디지털 비디오 디스크 (DVD) 플레이어, 튜너, 카메라, 내비게이션 디바이스, 또는 이들의 임의의 조합을 포함할 수도 있다. 이러한 디바이스들은 사용자 인터페이스, 예컨대, 터치 스크린, 음성 인식 기능, 또는 다른 사용자 인터페이스 기능들을 포함할 수도 있다.
동작 동안에, 디바이스 (1402) 는 이미지 센서 (예컨대, 제 1 이미지 센서 (1404)) 로부터 감지 데이터 (예컨대, 제 1 감지 데이터 (1470)) 를 수신할 수도 있다. 제 1 감지 데이터 (1470) 는 이미지와 관련될 수도 있다. 예를 들어, 제 1 이미지 센서 (1404) 는 이미지를 캡처할 수도 있고, 이미지와 관련된 제 1 감지 데이터 (1470) 를 디바이스 (1402) 로 전송할 수도 있다. 제 1 이미지 센서 (1404) 는 도 19 및 도 27 을 참조하여 더욱 설명된 바와 같이, 다양한 트리거들에 기초하여 제 1 감지 데이터 (1470) 를 생성할 수도 있다. 예를 들어, 제 1 이미지 센서 (1404) 는 데이터 샘플링 간격으로 (예컨대, 매 분에 한 번) 이미지들을 주기적으로 캡처할 수도 있고, 이미지들과 관련된 감지 데이터 (예컨대, 제 1 감지 데이터 (1470)) 를 디바이스 (1402) 로 주기적으로 전송할 수도 있다. 제 1 이미지 센서 (1404) 는, 임계 이미지 캡처 기간 (예컨대, 임계 기간 (들) (1480)) 이 충족된다는 결정에 기초하여 이미지들을 캡처할 수도 있다. 예를 들어, 임계 이미지 캡처 기간은 이미지들을 캡처하는 것 사이의 특정 데이터 샘플링 간격 (예컨대, 1 분) 을 표시할 수도 있다. 임계 이미지 캡처 기간은, 이전의 이미지를 캡처한 후에 특정 데이터 샘플링 간격이 경과할 때에 충족될 수도 있다.
또 다른 예로서, 제 1 이미지 센서 (1404) 는, 디바이스 (1402) 에서의 이용가능한 대역폭이 임계 대역폭 (예컨대, 임계 대역폭 (1488)) 을 충족시킨다는 결정, 이용가능한 배터리 전력이 임계 배터리 전력 (예컨대, 임계 배터리 전력 (1486)) 을 충족시킨다는 결정, 또는 양자의 결정에 기초하여 제 1 감지 데이터 (370) 를 생성할 수도 있다. 추가의 예로서, 제 1 이미지 센서 (1404) 는 사용자 선호도 (예컨대, 사용자 선호도 (들) (1422)) 에 기초하여, 사용자 입력 (예컨대, 사용자 입력 (1430)) 에 기초하여, 또는 이들의 임의의 조합에 기초하여 제 1 감지 데이터 (1470) 를 생성할 수도 있다.
또 다른 예로서, 제 1 이미지 센서 (1404) 는 디바이스 (1402) 로부터 수신된 이미지 캡처 요청 (예컨대, 제 1 이미지 캡처 요청 (1472)) 에 기초하여 제 1 감지 데이터 (1470) 를 생성할 수도 있다. 예시하기 위하여, 다양한 트리거들 중의 하나 이상이 활성화되는 것에 응답하여, 멀티미디어 컨텐츠 분류기 (1412) 는 제 1 이미지 캡처 요청 (1472) 을 제 1 이미지 센서 (1404) 로 전송할 수도 있다. 멀티미디어 컨텐츠 분류기 (1412) 는 제 1 이미지 센서 (1404) 로부터 제 1 감지 데이터 (1470) 를 수신할 수도 있다.
특징 세트 추출기 (1414) 는 제 1 감지 데이터 (1470) 로부터 이미지의 특징들의 제 1 서브세트 (예컨대, 특징들의 서브세트 (들) (1442)) 를 추출할 수도 있다. 예를 들어, 특징 세트 추출기 (1414) 는 이미지의 하나 이상의 시각적 디스크립터 (descriptor) 들을 연산할 수도 있다. 특정 실시형태에서, 특징 세트 추출기 (1414) 는 추출 기준이 충족되는 것으로 결정하는 것에 기초하여 이미지의 특징들의 제 1 서브세트를 추출할 수도 있다. 예를 들어, 제 1 감지 데이터 (1470) 가 이전의 이미지와 관련된 이미지에서의 변경을 표시할 경우에 추출 기준이 충족될 수도 있다. 예시하기 위하여, 본원에서 설명된 바와 같이, 제 1 감지 데이터 (1470) 에 대응하는 제 1 이미지 통계 및 이전의 이미지에 대응하는 제 2 이미지 통계 사이의 차이가 변경 임계점을 충족시킬 경우에 추출 기준이 충족될 수도 있다. 제 1 감지 데이터 (1470) 가 추출 기준을 충족시키지 않는 것으로 결정하는 것에 기초하여 특징들의 제 1 서브세트를 추출하는 것을 금지하는 것은 디바이스 (1402) 의 자원들을 절감할 수도 있다는 것이 인식될 것이다. 예를 들어, 이미지는 이전의 이미지와 유사할 수도 있으며 무시될 수도 있고 (예컨대, 이미지의 프로세싱이 스킵될 수도 있음), 디바이스 (1402) 의 자원들이 다음의 이미지를 프로세싱하기 위해 이용될 수도 있다. 특정 실시형태에서, 메모리 (1408) 는 멀티미디어 컨텐츠 분류기 (1412) 의 외부에 있을 수도 있고, 메모리 (1408) 는 제 1 감지 데이터 (1470) 를 저장할 수도 있고, 특징들의 제 1 서브세트를 추출하는 것은 메모리 (1408) 에 액세스하는 것을 포함할 수도 있다.
특정 실시형태에서, 특징 세트 추출기 (1414) 는 도 18 내지 도 21 을 참조하여 더욱 설명된 바와 같이, 선택 기준들 (예컨대, 선택 기준들 (1438)) 에 기초하여 특징들의 제 1 서브세트를 선택할 수도 있다. 선택 기준들 (1438) 은 자원 버젯 (예컨대, 자원 버젯 (1420)), 이용 케이스 (예컨대, 이용 케이스 (1436)), 관심 영역 (예컨대, 관심 영역 (1478)), 또는 이들의 임의의 조합을 포함할 수도 있다. 특정 실시형태에서, 특징 세트 추출기 (1414) 는, 특징 세트 추출기 (1414) 가 제 1 감지 데이터 (1470) 로부터 추출할 수 있는 모든 특징들보다 더 적은 것을 추출할 수도 있다. 각각의 추출된 특징은 대응하는 신뢰 레벨을 가질 수도 있거나 이와 연관될 수도 있다. 대안적으로 또는 추가적으로, 집합 신뢰 레벨은 다수의 추출된 특징들로부터 (예컨대, 평균화함으로써) 결정될 수도 있다. 멀티미디어 컨텐츠 분류기 (1412) 가 특징들의 제 1 서브세트와 연관된 분석 기준 (예컨대, 신뢰 레벨 (들)) 에 기초하여, 더 많은 특징들이 추출되어야 하는 것으로 결정할 경우, 특징 세트 추출기 (1414) 는 추후에 더 많은 특징들을 추출할 수도 있다. 다양한 조건들은 추가적인 특징들의 추출을 트리거링할 수도 있다. 하나의 실시형태에서는, 임의의 추출된 특징들의 신뢰 레벨이 임계 신뢰 레벨보다 더 적을 경우에 추가적인 특징들이 추출된다. 또 다른 실시형태에서는, 집합된 신뢰 레벨이 임계 신뢰 레벨보다 더 적을 경우에 추가적인 특징들이 추출된다. 다른 조건들은 또한, 추가적인 특징들이 추출되어야 하는지 여부를 결정함에 있어서 이용될 수도 있다. 멀티미디어 컨텐츠 분류기 (1412) 가 더 많은 특징들이 추출되지 않아야 하는 것으로 결정할 수도 있으므로, 더 적은 특징들을 먼저 추출하는 것은 디바이스 (1402) 의 자원들을 절감할 수도 있다는 것이 인식될 것이다.
특정 실시형태에서, 특징 세트 추출기 (1414) 는 제 2 프로세싱 디바이스 (310) 의 일부일 수도 있거나 그것 내로 통합될 수도 있다. 예를 들어, 특징 세트 추출기 (1414) 는 추출 기준이 충족되는 것에 기초하여 특징들의 제 1 서브세트를 추출할 수도 있다. 추출 기준은 제 1 감지 데이터 (1470) 에 기초할 수도 있다. 예를 들어, 도 3 의 제 1 프로세싱 디바이스 (304) 는 도 1 의 제 1 프레임 (102) 에 대응하는 제 1 이미지 통계를 생성할 수도 있고, 도 1 의 제 2 프레임 (104) 에 대응하는 제 2 이미지 통계를 생성할 수도 있다. 이 실시형태에서, 제 1 감지 데이터 (1470) 는 제 2 프레임 (104) 에 대응할 수도 있다.
제 1 이미지 통계 및 제 2 이미지 통계는 애플리케이션-특정 프로세싱에 기초하여 생성될 수도 있다. 애플리케이션-특정 프로세싱은, 감지 데이터 (예컨대, 제 1 프레임 (102) 에 대응하는 제 1 감지 데이터 (1470) 및/또는 제 2 감지 데이터) 가 특정 물체 (예컨대, 교통 정지 표지) 가 대응하는 이미지 내에 있는 것을 표시하는지, 경보 이벤트가 트리거링되는 것 (예컨대, 특정 제스처가 검출됨) 을 표시하는지, 특정 컬러의 물체가 이미지 내에 있는 것을 표시하는지, 또는 이들의 조합의 여부를 결정하는 것을 포함할 수도 있다. 애플리케이션-특정 프로세싱은 활동 인식, 사람 인식, 물체 인식, 로케이션 인식, 또는 제스처 인식 중의 적어도 하나를 포함할 수도 있다.
특정 실시형태에서, 메모리 (1408) 는 다양한 애플리케이션 프로세싱 타입들 및 통계의 대응하는 타입들 사이의 맵핑을 저장할 수도 있다. 예를 들어, 특정 물체 (예컨대, 교통 정지 표지) 를 검출하는 것에 대응하는 특정 애플리케이션 프로세싱 타입은 특정 컬러 (예컨대, 적색) 의 컬러 히스토그램에 대응하는 특정 통계 타입에 맵핑될 수도 있다. 제 2 프로세싱 디바이스 (310) 는 특정 애플리케이션 프로세싱 타입 및 맵핑에 기초하여 특정 통계 타입을 표시하는 구성 데이터를 제 1 프로세싱 디바이스 (304) 에 제공할 수도 있다. 제 1 프로세싱 디바이스 (304) 는 특정 통계 타입에 대응하는 제 1 이미지 통계 및 제 2 이미지 통계를 생성할 수도 있다. 예를 들어, 제 1 이미지 통계는 제 2 프레임 (104) 에 대응하는 제 1 컬러 히스토그램에서의 특정 컬러 (예컨대, 적색) 의 픽셀들의 제 1 카운트를 포함할 수도 있고, 제 2 이미지 통계는 제 1 프레임 (102) 에 대응하는 제 2 컬러에서의 특정 컬러 (예컨대, 적색) 의 픽셀들의 제 2 카운트를 포함할 수도 있다.
도 1 의 통계 프로세싱 디바이스 (108) 는 추출 기준이 충족되는 것으로 결정하는 것에 응답하여 제 1 감지 데이터 (1470) 를 제 2 프로세싱 디바이스 (310) 에 제공할 수도 있다. 예를 들어, 통계 프로세싱 디바이스 (108) 는 제 1 이미지 통계 (예컨대, 픽셀들의 제 1 카운트) 및 제 2 이미지 통계 (예컨대, 픽셀들의 제 2 카운트) 사이의 변경량이 변경 임계점을 충족시키는 것으로 결정하는 것에 응답하여, 제 1 감지 데이터 (1470) 를 제 2 프로세싱 디바이스 (310) (예컨대, 특징 세트 추출기 (1414)) 에 제공할 수도 있다. 특정 실시형태에서는, 제 1 감지 데이터 (1470) 가 장면 변경을 표시할 때에 추출 기준이 충족될 수도 있다. 예를 들어, 통계 프로세싱 디바이스 (108) 는 장면 변경 검출기 (1460) 를 포함할 수도 있다. 통계 프로세싱 디바이스 (108) 는, 도 22 를 참조하여 더욱 설명된 바와 같이, 장면 변경 검출기 (1460) 가 제 1 감지 데이터 (1470) 가 장면 변경을 표시하는 것으로 결정하는 것에 기초하여, 추출 기준이 충족되는 것으로 결정할 수도 있다. 특정 실시형태에서는, 도 23 을 참조하여 더욱 설명된 바와 같이, 제 1 감지 데이터 (1470) 가 이미지의 선예도가 임계 선예도 레벨 (예컨대, 임계 데이터 (1434) 의 임계 선예도 레벨 (1484)) 을 충족시키는 것을 표시할 때에 추출 기준이 충족될 수도 있다. 예를 들어, 통계 프로세싱 디바이스 (108) 는 이미지의 선예도가 임계 선예도 레벨을 충족시키는지 여부를 결정하도록 구성된 블러링된 이미지 검출기 (1462) 를 포함할 수도 있다.
통계 프로세싱 디바이스 (108) 는 변경량이 변경 임계점을 충족시키지 않는 것으로 결정하는 것에 응답하여 제 1 감지 데이터 (1470) 를 제 2 특징 세트 추출기 (1414) 에 제공하는 것을 금지할 수도 있다. 특징 세트 추출기 (1414) 는 제 1 감지 데이터 (1470) 를 수신하는 것에 응답하여 특징들의 제 1 서브세트를 추출할 수도 있다. 추출 기준이 충족되는지 여부를 결정하는 것은 특징들의 제 1 서브세트를 추출하는 것보다 디바이스 (1402) 의 더 적은 자원들을 이용할 수도 있다. 통계 프로세싱 디바이스 (108) 가 제 1 프레임 (102) 및 제 2 프레임 (104) 사이의 변경량이 제 2 프레임 (104) 의 특징들을 추출하기에 불충분 (예컨대, 변경 임계점보다 더 낮음) 한 것으로 결정할 수도 있으므로, 추출 기준이 충족되는지 여부를 먼저 결정하는 것은 디바이스 (1402) 의 자원들을 절감할 수도 있다는 것이 인식될 것이다.
대안적인 실시형태에서, 특징 세트 추출기 (1414) 는 도 3 의 제 1 프로세싱 디바이스 (304) 의 일부일 수도 있거나 그것 내로 통합될 수도 있다. 예를 들어, 제 1 프로세싱 디바이스 (304) 에서의 특징 세트 추출기 (1414) 는 제 1 감지 데이터 (1470) 로부터 특징들의 제 1 서브세트를 추출할 수도 있다. 제 1 프로세싱 디바이스 (304) 는 특징들의 제 1 서브세트에 기초하여 제 1 이미지 통계를 결정할 수도 있다. 제 1 프로세싱 디바이스 (304) 는 제 1 이미지 통계를 도 1 의 통계 프로세싱 디바이스 (108) 에 제공할 수도 있다. 통계 프로세싱 디바이스 (108) 는 본원에서 설명된 바와 같이, 추출 기준이 제 2 이미지의 제 1 이미지 통계 및 제 2 이미지 통계에 기초하여 충족되는지 여부를 결정할 수도 있다. 통계 프로세싱 디바이스 (108) 는 추출 기준이 충족되는 것으로 결정하는 것에 기초하여 제 1 감지 데이터 (1470) 를 도 3 의 제 2 프로세싱 디바이스 (310) 에 제공할 수도 있다.
또 다른 실시형태에서, 제 1 프로세싱 디바이스 (304) 에서의 특징 세트 추출기 (1414) 는 제 1 감지 데이터 (1470) 로부터 특징들의 제 1 서브세트를 추출할 수도 있다. 제 1 프로세싱 디바이스 (304) 는 특징들의 제 1 서브세트를 추출하는 것과 연관된 신뢰 레벨을 결정할 수도 있고, 신뢰 레벨을 도 1 의 통계 프로세싱 디바이스 (108) 에 제공할 수도 있다. 통계 프로세싱 디바이스 (108) 는 신뢰 레벨이 임계 신뢰 레벨 (1482) 을 충족시키는지 여부를 결정하는 것에 기초하여, 추출 기준이 충족되는지 여부를 결정할 수도 있다. 통계 프로세싱 디바이스 (108) 는 신뢰 레벨이 임계 신뢰 레벨 (1482) 을 충족시키는 것으로 결정하는 것에 기초하여, 제 1 감지 데이터 (1470), 특징들의 제 1 서브세트, 또는 양자를 특징 세트 클러스터러 (1416) 에 제공할 수도 있다. 통계 프로세싱 디바이스 (108) 는 대안적으로, 신뢰 레벨이 임계 신뢰 레벨 (1482) 을 충족시키지 않는 것으로 결정하는 것에 기초하여 추가적인 특징들을 추출하기 위하여, 제 1 감지 데이터 (1470) 를 특징 세트 추출기 (1414) 에 제공할 수도 있다. 특정 실시형태에서, 도 3 의 제 2 프로세싱 디바이스 (310) 는 특징 세트 클러스터러 (1416) 를 포함할 수도 있고, 특징 세트 추출기 (1414) 를 포함할 수도 있다. 예를 들어, 제 1 프로세싱 디바이스 (304) 및 제 2 프로세싱 디바이스 (310) 의 각각은 특징 세트 추출기 (1414) 의 버전을 포함할 수도 있다.
특정 실시형태에서, 이미지의 특징들은 동화상 전문가 그룹 7 (MPEG-7) 시각적 디스크립터, 일반화된 검색 트리 (generalized search tree; GIST) 디스크립터, 센서스 변환 히스토그램 (CENTRIST) 시각적 디스크립터, 백-오브-워즈 (bag-of-words) 디스크립터, 시각적으로 국소적으로 집합된 디스크립터, 공간적 피라미드 정합 디스크립터, 또는 이들의 조합을 포함할 수도 있다. MPEG-7 시각적 디스크립터는 스케일러블 컬러 디스크립터 (scalable color descriptor; SCD), 컬러 구조 디스크립터 (color structure descriptor; CSD), 프레임 그룹 (group of frame; GOF) 디스크립터, 픽처들 그룹 (group of pictures; GOP) 디스크립터, 기조 컬러 디스크립터 (dominant color descriptor; DCD), 컬러 레이아웃 디스크립터 (color layout descriptor; CLD), 텍스처 브라우징 디스크립터 (texture browsing descriptor; TBD), 동종 텍스처 디스크립터 (homogeneous texture descriptor; HTD), 에지 히스토그램 디스크립터 (edge histogram descriptor; EHD), 윤곽-기반 형상 (contour-based shape) 디스크립터, 영역-기반 형상 디스크립터, 카메라 모션 디스크립터 (camera motion descriptor; CMD), 모션 궤도 디스크립터 (motion trajectory descriptor; MTD), 파라메트릭 모션 디스크립터 (parametric motion descriptor; PMD), 또는 모션 활동 디스크립터 (motion activity descriptor; MAD) 중의 하나 이상을 포함할 수도 있다. 이 디스크립터들 중의 하나 이상은 캡처된 이미지로부터 컬러, 텍스처, 모션, 에지, 형상, 및/또는 장면 정보를 추출할 수도 있다. 특징 세트 추출기는 특징들의 제 1 서브세트의 각각과 연관된 신뢰 레벨을 결정할 수도 있다. 예를 들어, 각각의 MPEG-7 시각적 디스크립터는 연관된 신뢰 레벨을 가질 수도 있다. 특징 세트 추출기 (1414) 는 특징들의 제 1 서브세트 (예컨대, 특징들의 서브세트 (들) (342)) 를 메모리 (1408) 내에 저장할 수도 있다.
특정 실시형태에서, 제 1 이미지 센서 (1404) 가 주어진 데이터 샘플링 간격으로 (예컨대, 매 분에 한 번) 이미지들을 연속적으로 캡처할 때, 감지 데이터 (예컨대, 제 1 감지 데이터 (1470)) 는 많은 연속 이미지들에 대해 실질적으로 동일하게 유지될 수도 있다. 예를 들어, 디바이스 (1402) 는 사용자 (1452) 의 이동 디바이스일 수도 있다. 사용자 (1452) 는 직장에서 디바이스 (1402) 를 책상의 상부에 놓아둘 수도 있고, 제 1 이미지 센서 (1404) 는 (예컨대, 천정의) 실질적으로 유사한 이미지들을 캡처할 수도 있다. 이러한 예에서, 특징 세트 클러스터러 (1416) 는 특정 기간 동안에 캡처된 이미지들의 특징들의 서브세트들을 조합함으로써, 특징들의 제 1 클러스터링된 서브세트 (예컨대, 특징들의 클러스터링된 서브세트 (들) (1476)) 를 생성할 수도 있다. 예를 들어, 특징 세트 클러스터러 (1416) 는 제 1 타임스탬프가 제 2 타임스탬프의 임계 클러스터 기간 (예컨대, 임계 기간 (들) (1480)) 내에 있는 것에 기초하여 이미지와 관련된 특징들의 제 1 서브세트 및 제 2 이미지와 관련된 특징들의 또 다른 서브세트 (예컨대, 특징들의 서브세트 (들) (1442)) 를 조합함으로써, 특징들의 제 1 클러스터링된 서브세트 (예컨대, 특징들의 클러스터링된 서브세트 (들) (1476)) 를 생성할 수도 있다. 제 1 타임스탬프 (예컨대, 타임스탬프 (들) (1494)) 는 이미지와 연관될 수도 있고, 제 2 타임스탬프 (예컨대, 타임스탬프 (들) (1494)) 는 제 2 이미지와 연관될 수도 있다. 예를 들어, 제 1 타임스탬프는 제 1 이미지 센서 (1404) 가 이미지를 언제 캡처하였는지, 또는 디바이스 (1402) 가 제 1 감지 데이터 (1470) 를 언제 수신하였는지를 표시할 수도 있다. 유사하게, 제 2 타임스탬프는 제 1 이미지 센서 (1404) 가 제 2 이미지를 언제 캡처하였는지, 또는 디바이스 (1402) 가 제 2 이미지와 관련된 감지 데이터를 언제 수신하였는지를 표시할 수도 있다. 특징들의 클러스터링된 서브세트 (들) (1476) 는 이에 따라, 일시적으로 클러스터링된 공통 특징들 (예컨대, 사용자가 그/그녀의 책상에 앉아 있었던 시간 동안의 천정의 특징들) 을 나타낼 수도 있다.
특징 세트 클러스터러 (1416) 는 제 1 타임스탬프 (예컨대, 2013 년 7 월 10 일의 오전 10:00) 및 제 2 타임스탬프 (예컨대, 2013 년 7 월 10 일의 오전 10:03) 가 임계 클러스터 기간 (예컨대, 5 분) 내에 있는 것에 기초하여 이미지의 특징들의 제 1 서브세트 (예컨대, 에지 히스토그램 디스크립터, 센서스 변환, 또는 가버 필터링 (gabor filtering) 결과들) 및 제 2 이미지의 특징들의 또 다른 서브세트 (예컨대, 제 2 에지 히스토그램 디스크립터, 센서스 변환, 또는 가버 필터링 결과들) 를 조합함으로써, 특징들의 제 1 클러스터링된 서브세트 (예컨대, 특징들의 클러스터링된 서브세트 (들) (1476)) 를 생성할 수도 있다. 특징들의 제 1 클러스터링된 서브세트는 특징들의 제 1 서브세트, 특징들의 다른 서브세트, 또는 양자를 포함할 수도 있다. 특징들의 제 1 클러스터링된 서브세트는 대응하는 시간 기간 (예컨대, 2013 년 7 월 10 일의 오전 10:00 내지 오전 10:04) 을 표시할 수도 있다. 특징들의 제 1 클러스터링된 서브세트의 후속 분석은 특징들의 제 1 서브세트 및 특징들의 제 2 서브세트를 개별적으로 분석하는 것과 비교하여 디바이스 (302) 의 더 적은 자원들을 이용할 수도 있다. 특징 세트 클러스터러 (1416) 는 특징들의 제 1 클러스터링된 서브세트 (예컨대, 특징들의 클러스터링된 서브세트 (들) (1476)) 를 메모리 (1408) 내에 저장할 수도 있다.
특징 세트 분류기 (1418) 는 제 1 분류 모델 (예컨대, 분류 모델 (들) (1428)) 에 기초하여 특징들의 제 1 클러스터링된 서브세트 (예컨대, 특징들의 클러스터링된 서브세트 (들) (1476)) 를 분류함으로써 특징들의 제 1 분류된 서브세트 (예컨대, 특징들의 분류된 서브세트 (들) (1474)) 를 생성할 수도 있다. 제 1 분류 모델은 특징들의 제 1 클러스터링된 서브세트가 특정 로케이션, 특정 사람, 특정 물체, 특정 활동, 또는 이들의 임의의 조합에 대응하는 것을 표시할 수도 있다. 제 1 분류 모델은 또한, 대응관계와 연관된 신뢰 레벨들을 표시할 수도 있다. 그 결과, 특징 세트 분류기 (1418) 는 특징들의 제 1 클러스터링된 서브세트가 로케이션, 사람, 물체, 활동, 또는 이들의 임의의 조합에 대응하는 것을 표시하는 특징들의 제 1 분류된 서브세트를 생성할 수도 있다. 특징들의 제 1 분류된 서브세트는 또한, 연관된 신뢰 레벨들을 표시할 수도 있다. 예를 들어, 특징들의 제 1 분류된 서브세트는 특징들의 제 1 클러스터링된 서브세트가 특정 신뢰 레벨 (예컨대, 로우 (low)) 을 갖는 특정 타입의 로케이션 (예컨대, 실내) 에 대응한다. 특정 실시형태에서, 특징들의 제 1 분류된 서브세트는 또한, 연관된 시간 기간을 표시할 수도 있다. 예를 들어, 특징들의 제 1 분류된 서브세트는 특징들의 제 1 클러스터링된 서브세트, 제 1 타임스탬프, 제 2 타임스탬프, 또는 이들의 임의의 조합과 연관된 시간 기간 (예컨대, 2013 년 7 월 10 일의 오전 10:00 내지 오전 10:04) 을 표시할 수도 있다. 예시하기 위하여, 특징들의 제 1 분류된 서브세트는 "로우" 신뢰 레벨 (예컨대, 25 % 의 "로우" 신뢰 레벨 임계점보다 더 적은 20 % 의 신뢰 레벨) 로, "맥락" 이 2013 년 7 월 10 일 오전 10:00 내지 오전 10:04 동안에 실내인 것을 표시할 수도 있다. 특징 세트 분류기 (1418) 는 특징들의 제 1 분류된 서브세트 (예컨대, 특징들의 분류된 서브세트 (들) (1474)) 를 메모리 (308) 내에 저장할 수도 있다.
멀티미디어 컨텐츠 분류기 (1412) 는 특징들의 제 1 서브세트의 신뢰 레벨들이 임계 신뢰 레벨 (예컨대, 임계 신뢰 레벨 (1482)) 을 충족시키는지 여부를 결정할 수도 있다. 특정 실시형태에서, 멀티미디어 컨텐츠 분류기 (1412) 는 중간 맥락 데이터 (예컨대, 중간 맥락 데이터 (1492)) 의 신뢰 레벨들이 임계 신뢰 레벨 (1482) 을 충족시키지 않는 것으로 결정하는 것에 응답하여, 특징들의 제 1 서브세트의 신뢰 레벨들이 임계 신뢰 레벨 (1482) 을 충족시키지 않는 것으로 결정할 수도 있다. 중간 맥락 데이터 (1492) 는 이미지의 부분적인 맥락에 대응할 수도 있다. 예를 들어, 중간 맥락 데이터 (1492) 는 특징들의 제 1 서브세트 (예컨대, 특징들의 서브세트 (들) (1442)), 특징들의 제 1 클러스터링된 서브세트 (예컨대, 특징들의 클러스터링된 서브세트 (들) (1476)), 또는 특징들의 제 1 분류된 서브세트 (예컨대, 특징들의 분류된 서브세트 (들) (1474)) 에 대응할 수도 있다.
예를 들어, 특징들의 제 1 서브세트는 이미지의 에지 히스토그램 디스크립터 또는 센서스 변환 및 연관된 신뢰 레벨들을 포함할 수도 있다. 멀티미디어 컨텐츠 분류기 (1412) 는 연관된 신뢰 레벨들 중의 하나 이상이 임계 신뢰 레벨 (1482) 을 충족시키지 않는 것으로 결정할 수도 있다. 그 결과, 멀티미디어 컨텐츠 분류기 (1412) 는 특징들의 제 1 서브세트의 신뢰 레벨들, 및 이 때문에, 중간 맥락 데이터 (1492) 가 임계 신뢰 레벨 (1482) 을 충족시키지 않는 것으로 결정할 수도 있다.
또 다른 예로서, 특징 세트 클러스터러 (1416) 는 특징들의 제 1 클러스터링된 서브세트 (예컨대, 특징들의 클러스터링된 서브세트 (들) (1476)) 와 연관된 신뢰 레벨들이 임계 신뢰 레벨 (1482) 을 충족시키지 않는 것으로 결정할 수도 있다. 예시하기 위하여, 특징 세트 클러스터러 (1416) 는 이미지 및 제 2 이미지의 양자가 아니라 하나와 관련되는 특징들의 제 1 클러스터링된 서브세트의 특징들에 대한 특정 (예컨대, 로우) 신뢰 레벨을 결정할 수도 있다. 또 다른 예로서, 특징 세트 클러스터러 (1416) 는 제 1 이미지 및 제 2 이미지와 연관된 특징들의 신뢰 레벨들의 함수 (예컨대, 평균) 에 기초하여 특정 신뢰 레벨을 결정할 수도 있다. 특징들의 제 1 서브세트의 특정 특징은 제 1 신뢰 레벨 (예컨대, 로우) 을 가질 수도 있다. 특징들의 다른 서브세트의 특정 특징은 제 2 신뢰 레벨 (예컨대, 하이 (high)) 을 가질 수도 있다. 특징 세트 클러스터러 (1416) 는 특정 신뢰 레벨이 제 1 신뢰 레벨 및 제 2 신뢰 레벨의 평균 (예컨대, 중간) 인 것으로 결정할 수도 있다. 멀티미디어 컨텐츠 분류기 (1412) 는 특정 신뢰 레벨이 임계 신뢰 레벨 (1482) 을 충족시키지 않는 것으로 결정할 수도 있다. 그 결과, 멀티미디어 컨텐츠 분류기 (1412) 는 특징들의 제 1 클러스터링된 서브세트와 연관된 신뢰 레벨들, 및 이 때문에, 중간 맥락 데이터 (1492) 가 임계 신뢰 레벨 (1482) 을 충족시키지 않는 것으로 결정할 수도 있다.
추가의 예로서, 멀티미디어 컨텐츠 분류기 (1412) 는 특징들의 제 1 분류된 서브세트 (예컨대, 특징들의 분류된 서브세트 (들) (1474)) 와 연관된 신뢰 레벨들이 임계 신뢰 레벨 (1482) 을 충족시키지 않는 것으로 결정할 수도 있다. 예시하기 위하여, 특징들의 제 1 분류된 서브세트는 특징들의 제 1 클러스터링된 서브세트가 임계 신뢰 레벨 (1482) 을 충족시키지 않는 특정 신뢰 레벨을 갖는 로케이션 (예컨대, 실내) 의 특정 타입에 대응하는 것을 표시할 수도 있다. 그 결과, 멀티미디어 컨텐츠 분류기 (1412) 는 특징들의 제 1 분류된 서브세트와 연관된 신뢰 레벨들, 및 이 때문에, 중간 맥락 데이터 (1492) 가 임계 신뢰 레벨 (1482) 을 충족시키지 않는 것으로 결정할 수도 있다.
중간 맥락 데이터 (1492) 의 신뢰 레벨들이 임계 신뢰 레벨 (1482) 을 충족시키지 않는다는 결정에 응답하여, 특징 세트 추출기 (1414) 는 특징들의 제 2 서브세트 (예컨대, 특징들의 서브세트 (들) (1442)) 를 추출할 수도 있다. 예를 들어, 특징 세트 추출기 (1414) 는 특징들의 제 1 서브세트, 특징들의 제 1 클러스터링된 서브세트, 또는 특징들의 제 1 분류된 서브세트와 연관된 신뢰 레벨 (들) 이 임계 신뢰 레벨 (1482) 을 충족시키지 않는 것으로 결정하는 것에 응답하여 추가적인 특징들 (예컨대, 특징들의 제 2 서브세트) 을 추출할 수도 있다.
특정 실시형태에서, 특징들의 제 2 서브세트 (예컨대, 특징들의 서브세트 (들) (1442)) 는 이미지와 관련될 수도 있고, 제 1 감지 데이터 (1470) 로부터 추출될 수도 있다. 예를 들어, 특징 세트 추출기 (1414) 는 이미지의 에지 히스토그램 디스크립터를 재연산하기 전에 이미지의 그레이 레벨 범위를 확장하기 위하여 히스토그램 등화 (histogram equalization) 를 이용할 수도 있다. 재연산된 에지 히스토그램 디스크립터 (즉, 특징들의 제 2 서브세트) 는 이전에 연산된 에지 히스토그램 디스크립터보다 더 높은 연관된 신뢰 레벨들을 가질 수도 있다. 또 다른 예로서, 특징 세트 추출기 (1414) 는 이전에 추출되었던 이미지의 제 2 시각적 디스크립터 (즉, 특징들의 제 2 서브세트) (예컨대, 컬러 디스크립터, 텍스처 디스크립터, GIST 디스크립터, CENTRIST 디스크립터, 또는 이들의 임의의 조합) 를 추출할 수도 있다. 제 2 시각적 디스크립터는 이전에 추출된 시각적 디스크립터보다 더 높은 관련된 신뢰 레벨들을 가질 수도 있다.
특정 실시형태에서, 특징들의 제 2 서브세트 (예컨대, 특징들의 서브세트 (들) (1442)) 는 또 다른 이미지와 관련될 수도 있다. 예를 들어, 멀티미디어 컨텐츠 분류기 (1412) 는 특징들의 제 1 서브세트의 신뢰 레벨들이 임계 신뢰 레벨 (1482) 을 충족시키지 않는 것으로 결정하는 것에 응답하여, 제 2 감지 데이터 (예컨대, 제 2 감지 데이터 (1424)) 에 대한 요청 (예컨대, 제 2 이미지 캡처 요청 (1426)) 을 또 다른 이미지 센서 (예컨대, N 번째 이미지 센서 (1440)) 로 전송할 수도 있다. 제 2 이미지 캡처 요청 (1426) 에 응답하여, N 번째 이미지 센서 (1440) 는 다른 이미지를 캡처할 수도 있고, 다른 이미지와 관련된 제 2 감지 데이터 (1424) 를 디바이스 (1402) 로 전송할 수도 있다.
특정 실시형태에서, 이미지는 제 1 이미지 센서 (1404) 의 제 1 세팅 (setting) 에 대응할 수도 있고, 다른 이미지는 N 번째 이미지 센서 (1440) 의 제 2 세팅에 대응할 수도 있다. 제 1 세팅은 줌 세팅, 해상도 세팅, 각도 세팅, 로케이션, 또는 이들의 임의의 조합을 포함할 수도 있다. 제 1 세팅은 제 2 세팅과는 별개일 수도 있다. 예를 들어, 제 2 세팅은 제 1 세팅보다 더 높은 줌, 제 1 세팅보다 더 높은 해상도, 제 1 세팅과는 상이한 각도, 제 1 세팅과는 상이한 로케이션, 또는 이들의 임의의 조합에 대응할 수도 있다. 특징들의 제 2 서브세트 (예컨대, 특징들의 서브세트 (들) (1442)) 를 이용하는 것은 특징들의 제 1 클러스터링된 서브세트, 특징들의 제 1 분류된 서브세트, 또는 양자와 연관된 하나 이상의 신뢰 레벨들을 증가시킬 수도 있다.
특정 실시형태에서, 제 1 이미지 센서 (1404) 는 제 1 디바이스 내로 통합될 수도 있고, N 번째 이미지 센서 (1440) 는 제 2 디바이스 내로 통합될 수도 있고, 제 1 디바이스는 제 2 디바이스와는 별개일 수도 있다. 예를 들어, 제 1 이미지 센서 (1404) 는 카메라 내로 통합될 수도 있고, N 번째 이미지 센서 (1440) 는 또 다른 카메라 내로 통합될 수도 있다.
특징 세트 추출기 (1414) 는 제 2 감지 데이터 (1424) 로부터 특징들의 제 2 서브세트 (예컨대, 특징들의 서브세트 (들) (1442)) 를 추출할 수도 있다. 특정 실시형태에서, 특징 세트 추출기 (1414) 는 추출 기준이 충족되는 것으로 결정하는 것에 기초하여 특징들의 제 2 서브세트를 추출할 수도 있다. 예를 들어, 멀티미디어 컨텐츠 분류기 (1412) (예컨대, 도 3 의 제 1 프로세싱 디바이스 (304)) 는 제 1 감지 데이터 (1470) 에 기초하여 제 1 이미지 통계를 결정할 수도 있고, 제 2 감지 데이터 (1424) 에 기초하여 제 2 이미지 통계를 결정할 수도 있다. 멀티미디어 컨텐츠 분류기 (1412) (예컨대, 도 1 의 통계 프로세싱 디바이스 (108)) 는, 제 1 이미지 통계 및 제 2 이미지 통계 사이의 차이에 대응하는 변경량이 변경 임계점을 충족시키는 것으로 결정하는 것에 기초하여 특징들의 제 2 서브세트를 추출하기 위하여, (예컨대, 제 2 프로세싱 디바이스 (310) 에서) 제 2 감지 데이터 (1424) 를 특징 세트 추출기 (1414) 에 제공할 수도 있다. 멀티미디어 컨텐츠 분류기 (1412) (예컨대, 도 1 의 통계 프로세싱 디바이스 (108)) 는 변경량이 변경 임계점을 충족시키는 것에 실패한 것으로 결정하는 것에 기초하여 제 2 감지 데이터 (1424) 를 폐기할 수도 있다 (예컨대, 제 2 감지 데이터 (1424) 를 제 2 프로세싱 디바이스 (310) 에 제공하는 것을 금지함).
특정 실시형태에서, 특징 세트 추출기 (1414) 는 도 18 내지 도 21 을 참조하여 더욱 설명된 바와 같이, 선택 기준들 (1438) 에 기초하여 특징들의 제 2 서브세트를 선택할 수도 있다. 특징 세트 추출기 (1414) 는 특징들의 제 2 서브세트 (예컨대, 특징들의 서브세트 (들) (1442)) 를 메모리 (1408) 내에 저장할 수도 있다. 특징들의 제 1 서브세트를 추출하는 것은 특징들의 제 2 서브세트를 추출하는 것보다 디바이스 (1402) 의 더 적은 자원들 (예컨대, 메모리, 전력, 프로세서 실행 사이클들) 을 이용할 수도 있다.
특징 세트 추출기 (1416) 는 이미지와 연관된 제 1 타임스탬프, 제 2 이미지와 연관된 제 2 타임스탬프, 다른 이미지와 연관된 또 다른 타임스탬프, 또는 이들의 임의의 조합에 기초하여 특징들의 제 2 서브세트 (예컨대, 특징들의 서브세트 (들) (1442)) 를 클러스터링함으로써 특징들의 제 2 클러스터링된 서브세트 (예컨대, 특징들의 클러스터링된 서브세트 (들) (1476)) 를 생성할 수도 있다. 예를 들어, 특징들의 제 2 클러스터링된 서브세트는 특징들의 제 1 클러스터링된 서브세트, 특징들의 제 2 서브세트, 특징들의 제 2 서브세트에 대응하는 제 2 이미지의 특징들의 또 다른 서브세트, 또는 이들의 임의의 조합을 포함할 수도 있다. 특정 실시형태에서, 특징들의 제 2 클러스터링된 서브세트는 이미지의 에지 히스토그램 디스크립터 및 제 2 이미지의 제 2 에지 히스토그램 디스크립터의 조합, 제 1 이미지의 GIST 디스크립터 및 제 2 이미지의 제 2 GIST 디스크립터의 조합, 제 1 이미지의 CENTRIST 디스크립터 및 제 2 이미지의 제 2 CENTRIST 디스크립터의 조합을 포함할 수도 있다.
특징 세트 분류기 (1418) 는 특징들의 제 2 서브세트에 적어도 부분적으로 기초하여 이미지의 맥락을 표시하는 맥락 데이터 (예컨대, 맥락 데이터 (1490)) 를 생성할 수도 있다. 이미지의 맥락은 로케이션, 사람, 활동, 또는 이들의 임의의 조합을 포함할 수도 있다. 예를 들어, 특징 세트 분류기 (1418) 는 제 2 분류 모델 (예컨대, 분류 모델 (들) (1428)) 에 기초하여 특징들의 제 1 클러스터링된 서브세트, 특징들의 제 2 클러스터링된 서브세트, 또는 양자를 분류함으로써 맥락 데이터 (1490) 를 생성할 수도 있다. 예를 들어, 제 2 분류 모델은 특징들의 제 1 클러스터링된 서브세트, 특징들의 제 2 클러스터링된 서브세트, 또는 양자가 특정 건물의 특정 룸에 대응하는 것을 표시할 수도 있다. 제 2 분류 모델은 대응관계와 연관된 신뢰 레벨들을 표시할 수도 있다. 제 2 분류 모델에 기초하여, 특징 세트 분류기 (1418) 는 이미지의 맥락이 특정 룸에 대응하는 것을 표시하는 맥락 데이터 (1490) 를 생성할 수도 있다. 맥락 데이터 (1490) 는 연관된 신뢰 레벨들을 표시할 수도 있다. 예를 들어, 맥락 데이터 (1490) 는 특정 룸에 대응하는 이미지의 맥락과 연관된 특정 신뢰 레벨 (예컨대, 하이) 을 표시할 수도 있다. 특정 실시형태에서, 맥락 데이터 (1490) 는 연관된 시간 기간을 표시할 수도 있다. 예를 들어, 맥락 데이터 (1490) 는 디바이스 (1402) 가 시간 기간 (예컨대, 2013 년 7 월 10 일의 오전 10:00 내지 오전 10:04) 동안에 (예컨대, 사용자 (1452) 가 작업하는) 특정 룸에 있었던 것을 표시할 수도 있다. 시간 기간은 특징들의 클러스터링된 서브세트 (예컨대, 특징들의 제 1 클러스터링된 서브세트, 특징들의 제 2 클러스터링된 서브세트, 또는 양자), 제 1 타임스탬프, 제 2 타임스탬프, 다른 타임스탬프, 또는 이들의 임의의 조합과 연관될 수도 있다.
이에 따라, 상기한 예에서, 특징들의 제 1 분류된 서브세트는 맥락 "실내" 와 연관된 "로우" 신뢰 레벨 (예컨대, 25 %) 을 표시하지만, 맥락 데이터 (1490) 는 더욱 세분화된 맥락 (예컨대, "직장에서") 의 더 높은 신뢰 레벨 (예컨대, 85 %) 을 표시한다. 어떤 이용 케이스들에서, 더 낮은 신뢰 레벨 및 특징들의 제 1 서브세트로부터 생성된 덜 세분화된 맥락이 충분할 수도 있다는 것이 인식될 것이다. 이러한 상황들에서는, 덜 세분화된 맥락을 출력함으로써, 그리고 특징들의 제 2 서브세트를 추출하는 것을 금지함으로써 자원들이 절감될 수도 있다. 더 낮은 신뢰 레벨 및 덜 세분화된 맥락이 불충분한 상황들에서는, 특징들의 제 2 서브세트를 추출하여 더 높은 신뢰 레벨을 가지는 더욱 세분화된 맥락을 생성하기 위하여 추가적인 자원들이 이용될 수도 있다.
멀티미디어 컨텐츠 분류기 (1412) 는 맥락 데이터 (1490) 를 애플리케이션 (예컨대, 애플리케이션 (1444)) 으로 출력 (또는 액세스 가능하게 함) 할 수도 있다. 특정 실시형태에서, 애플리케이션 (1444) 은 문맥 추출 엔진, 문맥 인지 엔진, 또는 양자를 포함할 수도 있다. 애플리케이션 (1444) 은 컴퓨터 비전 애플리케이션을 포함할 수도 있다. 예를 들어, 애플리케이션 (1444) 은 라이프 태깅 (life tagging) 애플리케이션, 매크로 지오-펜싱 (macro geo-fencing) 애플리케이션, 마이크로 지오-펜싱 (micro geo-fencing) 애플리케이션, 모션 활동 검출 애플리케이션, 텍스트 검출 애플리케이션, 물체 검출 애플리케이션, 제스처 검출 애플리케이션, 또는 이들의 임의의 조합을 포함할 수도 있다. 예를 들어, 멀티미디어 컨텐츠 분류기 (1412) 는 맥락 데이터 (1490) 를 라이프 태깅 애플리케이션으로 출력할 수도 있다. 맥락 데이터 (1490) 에 기초하여, 라이프 태깅 애플리케이션은 사용자 (1452) 가 시간 기간 동안에 (예컨대, 2013 년 7 월 10 일 오전 10:00 내지 오전 10:04) 특정 룸에서 (예컨대, 직장에서) 있었던 것으로 추론할 수도 있다.
특정 실시형태에서, 특징 세트 추출기 (1414) 는 도 22 를 참조하여 더욱 설명된 바와 같이, 장면 변경 검출기 (예컨대, 장면 변경 검출기 (1460)) 가 제 1 감지 데이터 (1470) 가 장면 변경을 표시하는 검을 검출하는 것에 응답하여, 특징들의 제 1 서브세트 (예컨대, 특징들의 서브세트 (들) (1442)) 를 추출할 수도 있다. 예를 들어, 이전에 분석된 이미지와 동일한 장면을 나타내는 이미지의 특징들이 추출되지 않을 수도 있음으로써, 디바이스 (1402) 의 자원들을 절감할 수도 있다.
특정 실시형태에서, 특징 세트 추출기 (1414) 는 도 23 을 참조하여 더욱 설명된 바와 같이, 블러링된 이미지 검출기 (예컨대, 블러링된 이미지 검출기 (1462)) 가 제 1 감지 데이터 (1470) 가 이미지의 선예도가 임계 선예도 레벨 (예컨대, 임계 데이터 (1434) 의 임계 선예도 레벨 (1484)) 을 충족시키는 것을 표시하는 것으로 결정하는 것에 응답하여 특징들의 제 1 서브세트 (예컨대, 특징들의 서브세트 (들) (1442)) 를 추출할 수도 있다. 예를 들어, 임계 선예도 레벨 (1484) 을 충족시키기 위하여 너무 블러링되는 이미지의 특징들은 이미지의 맥락을 식별함에 있어서 유용하지 않을 수도 있고 분석을 위해 추출되지 않을 수도 있음으로써, 디바이스 (1402) 의 자원들을 절감할 수도 있다.
이에 따라, 시스템 (1400) 은 디바이스 (1402) 의 자원들의 효율적인 이용을 갖는 이미지 맥락 식별을 가능하게 할 수도 있다. 예를 들어, 이미지의 특징들은 이미지가 이전에 추출된 이미지, 블러링된 이미지, 또는 양자에 대응하지 않을 때에 추출될 수도 있다. 또한, 이미지의 부분적인 특징들은, 부분적인 특징들이 임계 신뢰 레벨을 충족시키지 않을 경우에 추출된 추가적인 특징들과 함께 먼저 추출될 수도 있다. 디바이스 (1402) 는 더 적은 자원들을 이용하면서 더 큰 수의 이미지들을 분석하는 것이 가능하게 될 수도 있다.
도 15 를 참조하면, 이미지들의 특징들의 서브세트들을 추출하는 것과 연관된 연산 간격들의 특정한 예시적인 실시형태가 개시되어 있고, 1500 으로 일반적으로 지정되어 있다.
도 14 의 디바이스 (1402) 는 데이터 샘플링 간격 (예컨대, 데이터 샘플링 간격 (1506)) 으로 이미지 센서 (예컨대, 제 1 이미지 센서 (1404)) 로부터 감지 데이터 (예컨대, 제 1 감지 데이터 (1470)) 를 주기적으로 수신할 수도 있다. 특정 수 (예컨대, N = 2) 의 특징들은 감지 데이터로부터 특징 세트 추출기 (1414) 에 의해 추출가능할 수도 있다. 예를 들어, 디바이스 (1402) 는 시간 (1502) 에서, 그리고 시간 (1504) 에서 (즉, 데이터 샘플링 간격 (1506) 으로) 제 1 감지 데이터 (1470) 를 주기적으로 수신할 수도 있다. 또 다른 예로서, 디바이스 (1402) 는 시간 (1512) 에서, 시간 (1514) 에서, 그리고 시간 (1516) 에서 제 1 감지 데이터 (1470) 를 수신할 수도 있다. 특정 실시형태에서, 특징 세트 추출기 (1414) 는 각각의 데이터 샘플링 간격 동안에 모든 (예컨대, N) 특징들을 추출할 수도 있다.
또 다른 특정 실시형태에서, 추출된 특징들의 수는 감지 데이터 (예컨대, 추출된 특징들) 와 연관된, 추출 기준, 분석 기준 (예컨대, 신뢰 레벨들), 또는 양자에 기초할 수도 있다. 예를 들어, 특징 세트 추출기 (1414) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 특징들의 제 1 서브세트와 연관된 신뢰 레벨들이 임계 신뢰 레벨 (예컨대, 임계 신뢰 레벨 (1482)) 을 충족시키지 않는 것에 응답하여, 시간 (1512) 에서 특징들의 제 1 서브세트 및 특징들의 제 2 서브세트를 추출할 수도 있다. 이 때문에, 특징 세트 추출기 (1414) 는 시간 (1512) 에서 제 1 수 (예컨대, 2) 의 특징들을 추출할 수도 있다. 특정 실시형태에서, 특징 세트 추출기 (1414) 는 도 14 를 참조하여 설명된 바와 같이, 추출 기준이 충족되는 것으로 결정하는 것에 적어도 부분적으로 기초하여 시간 (1512) 에서 특징들의 제 1 서브세트 및 특징들의 제 2 서브세트를 추출할 수도 있다.
추후에, 디바이스 (1402) 는 시간 (1514) 에서 제 1 감지 데이터 (1470) 를 수신할 수도 있다. 특징 세트 추출기 (1414) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 특징들의 제 1 서브세트와 연관된 신뢰 레벨들이 임계 신뢰 레벨 (1482) 을 충족시키는 것으로 결정하는 것에 응답하여, 시간 (1514) 에서 특징들의 제 1 서브세트를 추출할 수도 있고 특징들의 제 2 서브세트를 추출하지 않을 수도 있다. 이 때문에, 특징 세트 추출기 (1414) 는 시간 (1514) 에서 더 적은 수 (예컨대, 1) 의 특징 (들) 을 추출할 수도 있다. 특정 실시형태에서, 특징 세트 추출기 (1414) 는 도 14 를 참조하여 설명된 바와 같이, 추출 기준이 충족되는 것으로 결정하는 것에 적어도 부분적으로 기초하여 시간 (1514) 에서 특징들의 제 1 서브세트를 추출할 수도 있다.
디바이스 (1402) 는 추후에 시간 (1516) 에서 제 1 감지 데이터 (1470) 를 수신할 수도 있다. 특징 세트 추출기 (1414) 는 특징들의 제 1 서브세트와 연관된 신뢰 레벨들이 임계 신뢰 레벨 (1482) 을 충족시키지 않는 것으로 결정하는 것에 응답하여, 시간 (1516) 에서 특징들의 제 1 서브세트 및 특징들의 제 2 서브세트를 추출할 수도 있다. 이 때문에, 특징 세트 추출기 (1414) 는 시간 (1514) 에서보다 시간 (1516) 에서 더 많은 (예컨대, 2) 특징들을 추출할 수도 있다. 특정 실시형태에서, 특징 세트 추출기 (1414) 는 도 14 를 참조하여 설명된 바와 같이, 추출 기준이 충족되는 것으로 결정하는 것에 적어도 부분적으로 기초하여 시간 (1516) 에서 특징들의 제 1 서브세트 및 특징들의 제 2 서브세트를 추출할 수도 있다.
이에 따라, 도 15 에서 도시된 바와 같이, 특징들의 제 1 서브세트는 시간들 (1512, 1514, 및 1516) 에서 제 1 연산 간격 (1508) 으로 추출될 수도 있다. 제 1 연산 간격 (1508) 은 데이터 샘플링 간격 (1506) 과 대략 동일할 수도 있다. 특징들의 제 2 서브세트는 시간들 (1512 및 1516) 에서 제 2 연산 간격 (1510) 으로 추출될 수도 있다. 제 2 연산 간격 (1510) 은 데이터 샘플링 간격 (1506) 보다 더 클 수도 있다.
이에 따라, 특징 세트 추출기 (1414) 는 더욱 빈번하게 더 적은 특징들을 추출할 수도 있고 덜 빈번하게 그리고 필요에 따라 더 많은 특징들을 추출할 수도 있음으로써, 디바이스 (1402) 의 자원들을 절감할 수도 있다.
도 16 을 참조하면, 이미지의 맥락을 식별하도록 동작가능한 시스템의 특정한 예시적인 실시형태가 개시되어 있고, 1600 으로 일반적으로 지정되어 있다. 시스템 (1600) 의 동작들 중의 하나 이상은 도 1 의 통계 프로세싱 디바이스 (108), 제 1 프로세싱 디바이스 (304), 도 3 의 제 2 프로세싱 디바이스 (310), 변경 검출 회로 (414), 도 4 의 애플리케이션 프로세서 (418), 선택 회로 (506), 신호 분석기 (512), 변경 검출 회로 (514), 도 5 의 애플리케이션 프로세서 (518), 프리프로세싱 회로 (604), 하나 이상의 추가적인 프로세서들 (622), 제 2 애플리케이션 프로세서 (706), 도 7 의 M 번째 애플리케이션 프로세서 (708), 활성화 분석기 (814), 비활성화 분석기 (816), 물체 검출기 (850), 물체 식별기 (852), 활동 분류기 (854), 도 8 의 시스템 제어기 (806), VFE-라이트 (904), LPCVSS (906), LPASS (908), APSS (910), 도 9 의 하나 이상의 다른 프로세서들 (912), 도 13 의 맥락 결정 엔진 (1380), 도 14 의 디바이스 (1402), 또는 이들의 조합에 의해 수행될 수도 있다.
시스템 (1600) 은 1604 에서, 특징 세트 1 추출을 포함할 수도 있다. 동작 (504) 은 도 14 를 참조하여 더욱 설명된 바와 같이, 특징들의 제 1 서브세트를 추출하는 도 14 의 특징 세트 추출기 (1414) 에 대응할 수도 있다. 시스템 (1600) 은 1624 에서, 특징 세트 M 추출을 포함할 수도 있다. 동작 (1624) 은 도 14 를 참조하여 더욱 설명된 바와 같이, 특징들의 제 2 서브세트를 추출하는 도 14 의 특징 세트 추출기 (1414) 에 대응할 수도 있다. 시스템 (1600) 은 1606 에서, 특징 세트 클러스터링을 포함할 수도 있다. 동작 (1606) 은 도 14 의 특징 세트 클러스터러 (1416) 의 동작에 대응할 수도 있다. 시스템 (1600) 은 1608 에서, 특징 세트 분류를 포함할 수도 있다. 동작 (1608) 은 도 14 의 특징 세트 분류기 (1418) 의 동작에 대응할 수도 있다.
시스템 (1600) 은 중간 추론들 (1620) 을 생성할 수도 있다. 중간 추론들 (1620) 은 도 14 의 특징들의 분류된 서브세트 (들) (1474) 에 대응할 수도 있다. 시스템 (1600) 은 최종 추론들 (1610) 을 생성할 수도 있다. 최종 추론들 (1610) 은 도 14 의 맥락 데이터 (1490) 에 대응할 수도 있다.
특정 실시형태에서, 많은 특징들의 어느 것이 그리고 어떻게 추출되어야 하는지는 디바이스 기능에 종속될 수도 있다. 예를 들어, 제 1 메모리 임계점을 충족시키지 않는 메모리, 제 1 프로세서 속력 임계점을 충족시키지 않는 프로세서 속력, 또는 양자를 갖는 디바이스는 로우-티어 (low-tier) 디바이스에 대응할 수도 있다. 제 1 메모리 임계점을 충족시키며 제 2 메모리 임계점을 충족시키지 않는 메모리, 제 1 프로세서 속력 임계점을 충족시키며 제 2 프로세서 속력 임계점을 충족시키지 않는 프로세서 속력, 또는 양자를 갖는 디바이스는 미드-티어 (mid-tier) 디바이스에 대응할 수도 있다. 양자의 메모리 임계점들을 충족시키는 디바이스, 양자의 속력 임계점들을 충족시키는 프로세서 속력은 하이-티어 (high-tier) 디바이스에 대응할 수도 있다.
특정 실시형태에서, 시스템 (1600) 은 더 많은 특징들이 로우-티어 디바이스에 대해 추출되어야 하는지 여부를 결정하는 것을 금지할 수도 있다. 이 실시형태에서, 특징들의 제 1 분류된 서브세트는 최종 추론들 (1610) 으로 취급될 수도 있다. 제 1 감지 데이터 (1470) 의 더 많은 특징들을 분석하는 것은 로우-티어 디바이스의 자원 (예컨대, 메모리 또는 프로세서 속력) 제한들로 현실적이지 않을 수도 있다. 예를 들어, 로우-티어 디바이스를 이용하여 제 1 감지 데이터 (1470) 의 추가적인 특징들을 분석하는 것은 임계 분석 기간보다 더 오래 걸릴 수도 있다.
시스템 (1600) 은 1622 에서, 더 많은 특징들이 필요하게 되는지 여부를 결정할 수도 있다. 예를 들어, 시스템 (1600) 은 디바이스 (1402) 의 기능 (예컨대, 프로세서 속력, 메모리 속력, 또는 양자), 추출 기준, 분석 기준 (예컨대, 신뢰 레벨), 또는 이들의 조합에 기초하여, 특징들의 제 2 서브세트가 추출되어야 하는지 여부를 결정할 수도 있다. 예를 들어, 시스템 (1600) 은 도 14 를 참조하여 더욱 설명된 바와 같이, 특징들의 분류된 서브세트 (들) (1474) 과 연관된 신뢰 레벨들에 기초하여, 추가적인 특징들 (예컨대, 특징들의 제 2 서브세트) 이 미드-티어 디바이스 또는 하이-티어 디바이스에 대해 추출되어야 하는지 여부를 결정할 수도 있다.
특정 실시형태에서, 특징 세트 추출기 (1414) 는 디바이스 (1402) 의 기능에 기초하여 특징들의 제 2 서브세트 내에 포함되어야 할 특정 수의 특징들을 선택할 수도 있다. 예를 들어, 특징 세트 추출기 (1414) 는 하이-티어 디바이스에 대한 것보다 미드-티어 디바이스에 대해 더 적은 추가적인 특징들을 추출할 수도 있다.
이에 따라, 더욱 로우-티어 디바이스에서보다 더욱 하이-티어 디바이스에서, 더 많은 특징들이 감지 데이터로부터 추출될 수도 있다. 더욱 로우-티어 디바이스의 더 적은 자원들은 이미지 맥락 데이터를 생성하기 위해 이용될 수도 있는 반면, 더 높은 연관된 신뢰 레벨들을 갖는 이미지 맥락 데이터는 더욱 하이-티어 디바이스에 대해 생성될 수도 있다.
도 17 을 참조하면, 이미지의 맥락을 식별하도록 동작가능한 시스템의 특정한 예시적인 실시형태가 개시되어 있고, 1700 으로 일반적으로 지정되어 있다. 시스템 (1700) 의 하나 이상의 동작들은 도 1 의 통계 프로세싱 디바이스 (108), 제 1 프로세싱 디바이스 (304), 도 3 의 제 2 프로세싱 디바이스 (310), 변경 검출 회로 (414), 도 4 의 애플리케이션 프로세서 (418), 선택 회로 (506), 신호 분석기 (512), 변경 검출 회로 (514), 도 5 의 애플리케이션 프로세서 (518), 프리프로세싱 회로 (604), 하나 이상의 추가적인 프로세서들 (622), 제 2 애플리케이션 프로세서 (706), 도 7 의 M 번째 애플리케이션 프로세서 (708), 활성화 분석기 (814), 비활성화 분석기 (816), 물체 검출기 (850), 물체 식별기 (852), 활동 분류기 (854), 도 8 의 시스템 제어기 (806), VFE-라이트 (904), LPCVSS (906), LPASS (908), APSS (910), 도 9 의 하나 이상의 다른 프로세서들 (912), 도 13 의 맥락 결정 엔진 (1380), 도 14 의 디바이스 (1402), 또는 이들의 조합에 의해 수행될 수도 있다.
시스템 (1700) 의 컴포넌트들은 도 16 의 시스템 (1600) 의 대응하는 컴포넌트들과 유사한 방식으로 동작할 수도 있다. 시스템 (1700) 은 제 1 중간 추론들 (1702) 을 생성할 수도 있다. 제 1 중간 추론들 (1702) 은 도 14 의 특징들의 클러스터링된 서브세트 (들) (1476) 에 대응할 수도 있다. 시스템 (1700) 은 제 2 중간 추론들 (1704) 을 생성할 수도 있다. 제 2 중간 추론들 (1704) 은 도 14 의 특징들의 분류된 서브세트 (들) (1474) 에 대응할 수도 있다.
시스템 (1700) 은 하나 이상의 특징 추출들 (예컨대, 특징 세트 1 추출 (1604), 특징 세트 2 추출 (1722), 특징 세트 추출 (1724), 또는 이들의 임의의 조합) 을 수행할 수도 있다. 시스템 (1700) 은 특징 세트 클러스터링 (1606) 을 수행할 수도 있고, 특징 세트 분류 (1608) 를 수행할 수도 있다.
하나 이상의 특징 세트 추출들 (예컨대, 특징 세트 1 추출 (1604), 특징 세트 2 추출 (1622), 또는 특징 세트 추출 (1624)), 특징 세트 클러스터링 (1606), 및 특징 세트 분류 (1608) 의 각각을 수행하는 것에 후속하여, 시스템 (1700) 은 예컨대, 1710, 1712, 1714, 또는 1622 에서, 더 많은 특징들이 필요하게 되는지 여부를 결정할 수도 있다. 예를 들어, 멀티미디어 맥락 분류기 (1412) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 분석 기준 (예컨대, 신뢰 레벨), 추출 기준, 또는 양자에 기초하여, 추가적인 특징들이 추출되어야 하는지 여부를 결정할 수도 있다.
이에 따라, 시스템 (1700) 은 이미지 맥락 식별을 가능하게 할 수도 있다. 추가적인 특징들은 임계 신뢰 레벨이 달성될 때까지, 다양한 분석 스테이지들 (예컨대, 다른 특징들을 추출한 후, 클러스터링한 후, 또는 분류 후) 에서 추출될 수도 있다.
도 18 을 참조하면, 이미지의 맥락을 식별하도록 동작가능한 시스템의 특정한 예시적인 실시형태가 개시되어 있고, 1800 으로 일반적으로 지정되어 있다. 시스템 (1800) 의 하나 이상의 동작들은 도 1 의 통계 프로세싱 디바이스 (108), 제 1 프로세싱 디바이스 (304), 도 3 의 제 2 프로세싱 디바이스 (310), 변경 검출 회로 (414), 도 4 의 애플리케이션 프로세서 (418), 선택 회로 (506), 신호 분석기 (512), 변경 검출 회로 (514), 도 5 의 애플리케이션 프로세서 (518), 프리프로세싱 회로 (604), 하나 이상의 추가적인 프로세서들 (622), 제 2 애플리케이션 프로세서 (706), 도 7 의 M 번째 애플리케이션 프로세서 (708), 활성화 분석기 (814), 비활성화 분석기 (816), 물체 검출기 (850), 물체 식별기 (852), 활동 분류기 (854), 도 8 의 시스템 제어기 (806), VFE-라이트 (904), LPCVSS (906), LPASS (908), APSS (910), 도 9 의 하나 이상의 다른 프로세서들 (912), 도 13 의 맥락 결정 엔진 (1380), 도 14 의 디바이스 (1402), 또는 이들의 조합에 의해 수행될 수도 있다.
시스템 (1800) 의 컴포넌트들은 도 17 의 시스템 (1700) 의 대응하는 컴포넌트들과 유사한 방식으로 동작할 수도 있다. 시스템 (1800) 은 이용 케이스 (1436) 에 기초하여 감지 데이터 (예컨대, 도 14 의 제 1 감지 데이터 (1470)) 로부터 추출하기 위한 특징들의 서브세트를 선택할 수도 있다. 이용 케이스 (1436) 는 활동 인식, 사람 인식, 물체 인식, 로케이션 인식, 제스처 인식, 감정 인식, 눈 응시 검출, 건강 모니터링 (예컨대, 육체적 상태 인식), 또는 이들의 임의의 조합을 포함할 수도 있다. 특정 실시형태에서, 이용 케이스 (1436) 는 애플리케이션-특정 프로세싱에 대응할 수도 있다. 예를 들어, 도 3 의 제 1 프로세싱 디바이스 (304) 는 도 14 를 참조하여 설명된 바와 같이, 이용 케이스 (1436) 에 기초하여 이미지 통계를 생성할 수도 있다.
인식될 수도 있는 활동들의 예는 텔레비전 시청, 게임 플레이, 읽기, 쓰기, 화면 보기, 회의에서 프리젠테이션을 하기, 단독으로 작업, 사람 만남, 식사, 쇼핑, 요리, 통근 등을 포함한다. 인식될 수도 있는 사람들의 예는 특정 개인 (예컨대, "존 스미스 (John Smith)"), 사람의 타입 (예컨대, 경찰관, 소방관, 비행사, 승무원, 또는 의사), 또는 이들의 임의의 조합을 포함한다.
물체들의 예는 도로 표지, 얼굴, 손, 손가락, 엄지 지문, 장난감, 열쇠, 전화, 무기, 자동차, 번호판 등을 포함한다. 인식될 수도 있는 로케이션들의 예는 특정 건물 (예컨대, 특정 주의 주청사 건물), 건물의 타입 (예컨대, 박물관, 학교, 병원, 또는 운동장), 또는 이들의 임의의 조합을 포함한다. 인식될 수도 있는 제스처들의 예는 특정 방향으로 보는 것, 특정 방향으로 지시하는 것, 특정 방향으로 휘두르는 것, 손 운동, 눈 운동, 또는 이들의 임의의 조합을 포함한다.
특정 실시형태에서, 분류 모델 (예컨대, 분류 모델 (들) (1428)) 은 특징들의 적어도 제 1 서브세트가 이용 케이스 (1436) 에 대하여 분석되어야 하는 것을 표시할 수도 있다. 예를 들어, 이용 케이스 (1436) 는 이미지의 맥락이 특정 타입의 로케이션 (예컨대, "실내") 에 대응하는지 여부를 결정하는 것에 대응할 수도 있다. 분류 모델은, 이미지의 맥락이 특정 로케이션에 대응하는지 여부를 결정하기 위하여 적어도 CENTRIST 디스크립터 및 GIST 디스크립터가 분석될 수도 있는 것을 표시할 수도 있다. 이용 케이스 (1436) 및 분류 모델에 기초하여, 특징 세트 추출기 (1414) 는 제 1 감지 데이터 (1470) 로부터 이미지의 특징들의 제 1 서브세트 (예컨대, GIST 및 CENTRIST 디스크립터들) 를 추출할 수도 있다. 특정 실시형태에서, 특징 세트 추출기 (1414) 는 도 14 를 참조하여 설명된 바와 같이, 추출 기준이 충족되는 것으로 결정하는 것에 기초하여 특징들의 제 1 서브세트를 추출할 수도 있다.
특정 실시형태에서, 분류 모델은 특징들의 제 2 서브세트가 동일하거나 상이한 이용 케이스 (1436) 에 대하여 분석되어야 하는 것을 표시할 수도 있다. 예를 들어, 특징들의 제 2 서브세트는 물체 뱅크 디스크립터와 같은, 사전-트레이닝된 일반 물체 검출기 (pre-trained generic object detector) 의 스케일-불변 응답 맵 (scale-invariant response map) 을 포함할 수도 있다. 특정 실시형태에서, 분류 모델은, 특징들의 제 1 서브세트가 매우 추천되고 특징들의 제 2 서브세트는 이용 케이스 (1436) 를 분석함에 있어서 유용할 수도 있다는 것을 표시할 수도 있다. 이 실시형태에서, 특징 세트 추출기 (1414) 는 분석 기준, 추출 기준, 또는 양자에 기초하여 특징들의 제 2 서브세트를 추출할 수도 있다. 예를 들어, 특징 세트 추출기 (1414) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 추출 기준이 충족되는 것, 특징들의 제 1 서브세트를 추출하는 것과 연관된 신뢰 레벨이 임계 신뢰 레벨 (예컨대, 임계 신뢰 레벨 (1482)) 을 충족시키지 않는 것, 또는 양자에 응답하여 특징들의 제 2 서브세트를 추출할 수도 있다.
이에 따라, 특정 이용 케이스를 분석하기 위해 적당한 특징들의 서브세트는 감지 데이터로부터 추출될 수도 있다. 그 결과, 이미지 맥락이 식별되는 효율은 증가할 수도 있다. 예를 들어, 특징 세트 추출기 (1414) 는 특징들의 특정 세트가 특정 이용 케이스를 분석하기 위해 매우 추천되는 것으로 결정할 수도 있다. 초기 특징 추출 동안에 매우 추천된 특징들의 전부를 추출하는 것은, 각각의 매우 추천된 특징을 추출하고, 그 다음으로, 연관된 신뢰 레벨들에 기초하여 다음으로 매우 추천된 특징을 추출한 후에 클러스터링 및 분류를 수행하는 것보다 더욱 효율적일 수도 있다. 또 다른 예로서, 특징 세트 추출기 (1414) 는 특정 이용 케이스 (1436) 를 분석함에 있어서 도움이 되지 않는 것으로 알려져 있는 추가적인 특징들을 추출하는 것을 금지할 수도 있다.
도 19 를 참조하면, 이미지의 맥락을 식별하도록 동작가능한 시스템의 특정한 예시적인 실시형태가 개시되어 있고, 1900 으로 일반적으로 지정되어 있다. 시스템 (1600) 의 하나 이상의 동작들은 도 1 의 통계 프로세싱 디바이스 (108), 제 1 프로세싱 디바이스 (304), 제 2 프로세싱 디바이스 (310), 도 3 의 카메라 (302), 센서 (404), 변경 검출 회로 (414), 도 4 의 애플리케이션 프로세서 (418), 센서 (502), 선택 회로 (506), 신호 분석기 (512), 변경 검출 회로 (514), 도 5 의 애플리케이션 프로세서 (518), 센서 (602), 프리프로세싱 회로 (604), 하나 이상의 추가적인 프로세서들 (622), 제 2 애플리케이션 프로세서 (706), 도 7 의 M 번째 애플리케이션 프로세서 (708), 카메라 (842), 주변광 센서 (840), 활성화 분석기 (814), 비활성화 분석기 (816), 물체 검출기 (850), 물체 식별기 (852), 활동 분류기 (854), 도 8 의 시스템 제어기 (806), VFE-라이트 (904), LPCVSS (906), LPASS (908), APSS (910), 도 9 의 하나 이상의 다른 프로세서들 (912), 도 12 의 하나 이상의 카메라들 (1210), 도 13 의 맥락 결정 엔진 (1380), 도 14 의 디바이스 (1402), 디바이스 (1402) 의 하나 이상의 이미지 센서들 (예컨대, 제 1 이미지 센서 (1404) 또는 N 번째 이미지 센서 (1440)), 또는 이들의 임의의 조합에 의해 수행될 수도 있다.
시스템 (1900) 의 컴포넌트들은 도 18 의 시스템 (1800) 의 대응하는 컴포넌트들과 유사한 방식으로 동작할 수도 있다. 시스템 (1900) 은 자원 정보 (예컨대, 자원 정보 (1902)) 에 기초하여 감지 데이터 (예컨대, 도 14 의 제 1 감지 데이터 (1470)) 로부터 추출하기 위한 특징들의 서브세트를 선택할 수도 있다. 자원 정보 (1902) 는 자원 가용성 정보 (resource availability information), 자원 버젯 (예컨대, 도 14 의 자원 버젯 (1420)), 또는 양자를 포함할 수도 있다.
자원 버젯 (1420) 은 메모리 버젯, 전력 버젯, 시간 주기 당 (예컨대, 초 당) 명령들의 수 버젯, 또는 이들의 임의의 조합을 포함할 수도 있다. 자원 가용성 정보 (1802) 는 메모리 가용성, 전력 가용성, 시간 주기 당 (예컨대, 초 당) 명령들의 수 가용성, 또는 이들의 임의의 조합을 포함할 수도 있다.
자원 가용성 정보 (1802) 는 디바이스 (1402) 의 자원들의 어느 부분 또는 양이 (예컨대, 임의의 애플리케이션에 의한) 이용을 위해 이용가능한지를 표시할 수도 있고, 자원 버젯 (1420) 은 디바이스 (1402) 의 자원들의 어느 부분 또는 양이 멀티미디어 컨텐츠 분류기 (1412) 에 의해 이용되도록 허용되는지를 표시할 수도 있다는 점에서, 자원 가용성 정보 (1802) 는 자원 버젯 (1420) 과 상이할 수도 있다.
자원 가용성 정보 (1802) 는 자원의 특정 백분율 (또는 특정 양) 이 이용가능한 것을 표시할 수도 있다. 특정 실시형태에서, 특징 세트 추출기 (1414) 는 자원 가용성이 임계 자원 가용성 (예컨대, 임계 배터리 전력 (1486), 임계 대역폭 (1488), 임계 메모리, 초 당 명령들의 임계 수, 또는 이들의 임의의 조합) 을 충족시키지 않을 경우에는 임의의 특징들을 추출하지 않을 수도 있다.
특정 실시형태에서, 멀티미디어 컨텐츠 분류기 (1412) 는 특징들의 특정 서브세트의 분석과 연관된 자원 사용 추정치에 대해 액세스할 수도 있다. 이 실시형태에서, 멀티미디어 컨텐츠 분류기 (1412) 는, 자원 가용성이 특징들의 특정 서브세트를 분석하는 추정된 자원 사용보다 더 클 때에 특징들의 특정 서브세트를 선택할 수도 있다.
특정 실시형태에서, 멀티미디어 컨텐츠 분류기 (1412) 는 자원 버젯 (1420) 에 기초하여, 제 1 감지 데이터 (1470) 로부터 특징들의 서브세트 (예컨대, 특징들의 제 1 서브세트, 특징들의 제 2 서브세트, 또는 양자) 를 추출할 것인지 여부를 결정할 수도 있다. 예를 들어, 특징 세트 추출기 (1414) 는 자원 버젯 (1420) 의 특정 백분율 (또는 특정 양) 이 멀티미디어 컨텐츠 분류기 (1412) 에 의해 사용되고 있는 것으로 결정할 수도 있다. 특징 세트 추출기 (1414) 는, 전체보다 더 적은 자원 버젯 (1420) 이 멀티미디어 컨텐츠 분류기 (1412) 에 의해 사용되고 있을 때에 특징들의 서브세트를 추출할 수도 있다.
특정 실시형태에서, 자원 버젯 (1420) 은 추출 기준에 대응할 수도 있다. 예를 들어, 도 3 의 제 1 프로세싱 디바이스 (304) 는 자원 버젯 (1420) 을 수신할 수도 있고, (예컨대, 시스템 (300) 에 의해) 사용되고 있는 자원 버젯 (1420) 의 특정 백분율 (또는 특정 양) 을 표시하는 제 1 이미지 통계를 생성할 수도 있다. 통계 프로세싱 디바이스 (108) 는 전체보다 더 적은 자원 버젯 (1420) 이 사용되고 있다는 결정에 기초하여 제 1 감지 데이터 (1470) 를 제 2 프로세싱 디바이스 (310) 에 제공할 수도 있다.
특정 실시형태에서, 멀티미디어 컨텐츠 분류기 (1412) 는 특징들의 특정 서브세트의 분석 (예컨대, 추출, 클러스터링, 또는 분류) 과 연관된 자원 사용의 추정치에 대해 액세스할 수도 있다. 예를 들어, 추정된 자원 사용은 또 다른 이미지에 대한 특징들의 특정 서브세트의 이전의 분석에 기초하여 멀티미디어 컨텐츠 분류기 (1412) 에 의해 생성될 수도 있다. 이 실시형태에서, 멀티미디어 컨텐츠 분류기 (1412) 는, 나머지 자원 버젯 (1420) 이 특징들의 특정 서브세트를 분석하는 추정된 자원 사용보다 더 많을 때에 특징들의 특정 서브세트를 추출할 수도 있다. 특정 실시형태에서, 제 1 프로세싱 디바이스 (304) 는 추정된 자원 사용을 표시하는 제 1 이미지 통계를 생성할 수도 있고, 통계 프로세싱 디바이스 (108) 는 나머지 자원 버젯 (1420) 이 추정된 자원 사용보다 더 많은 것으로 결정하는 것에 기초하여 제 1 감지 데이터 (1470) 를 제 2 프로세싱 디바이스 (310) 에 제공할 수도 있다.
자원 버젯 (1420) 는 사용자 선호도들 (예컨대, 사용자 선호도 (들) (1422) 에 기초할 수도 있다. 예를 들어, 사용자 선호도 (들) (1422) 는 배경 애플리케이션 (background application) 이 자원들의 특정 백분율 (예컨대, 20 %) 보다 더 많이 차지하기 위한 것이 아니라는 것을 표시할 수도 있다.
특정 실시형태에서, 시스템 (1900) 은 또한, 자원 가용성 정보, 자원 버젯 (1420), 또는 양자에 기초하여 감지 데이터 (예컨대, 도 14 의 제 1 감지 데이터 (1470)) 를 생성할 수도 있다. 예를 들어, 멀티미디어 컨텐츠 분류기 (1412) 는, 자원 가용성 정보 (1802) 가 특정 자원이 이용가능한 것, 전체보다 더 적은 자원 버젯 (1420) 이 멀티미디어 컨텐츠 분류기 (1412) 에 의해 사용되고 있는 것, 또는 양자를 표시하는 것으로 결정하는 것에 응답하여, 요청 (예컨대, 제 1 이미지 캡처 요청 (1472)) 을 제 1 이미지 센서 (1404) 로 전송할 수도 있다.
이에 따라, 멀티미디어 컨텐츠 분류기 (1412) 는 현재 또는 미래의 자원 가용성 (예컨대, 자원 버젯 (1420), 자원 가용성 정보, 또는 양자) 에 기초하여 이미지 맥락 식별을 수행할 수도 있다. 감지 데이터는 충분한 자원들이 이용가능할 때에 생성될 수도 있다. 충분한 자원들이 이용불가능할 때에 멀티미디어 컨텐츠 분류기 (1412) 에 의해 분석을 위한 감지 데이터를 생성하는 것을 금지하는 제 1 이미지 센서 (1404) 에 의해, 디바이스 (1402) 의 자원들이 절감될 수도 있다. 디바이스 (1402) 의 더 적은 자원들은 자원 버젯 (1420) 이 더욱 제한될 때에 이미지 맥락 식별을 위해 이용될 수도 있는 반면, 더 높은 연관된 신뢰 레벨들을 갖는 맥락 데이터는 자원 버젯 (1420) 이 더 클 때에 생성될 수도 있다. 또한, 디바이스 (1402) 의 더 적은 자원들은 제한된 자원들이 이용가능할 때에 이미지 맥락 식별을 위해 이용될 수도 있는 반면, 더 높은 연관된 신뢰성 레벨들을 갖는 맥락 데이터는 더 많은 자원들이 이용가능할 때에 생성될 수도 있다. 예를 들어, 자원 가용성 정보 (1802) 가 디바이스 (1402) 의 나머지 배터리 전력이 임계 배터리 전력 (1486) 을 충족시키지 않는 것을 표시할 경우, 멀티미디어 컨텐츠 분류기 (1412) 는 더 적은 이미지들을 분석할 수도 있거나 (예컨대, 데이터 샘플링 간격을 증가시킬 수도 있음), 제 1 감지 데이터 (1470) 로부터 더 적은 특징들을 추출할 수도 있거나, 제 1 감지 데이터 (1470) 로부터 특징들을 추출하는 것을 금지할 수도 있거나, 이들의 조합일 수도 있다.
도 20 을 참조하면, 이미지의 맥락을 식별하도록 동작가능한 시스템의 또 다른 특정 실시형태의 도면이 개시되어 있고, 2000 으로 일반적으로 지정되어 있다. 시스템 (2000) 의 하나 이상의 동작들은 도 1 의 통계 프로세싱 디바이스 (108), 제 1 프로세싱 디바이스 (304), 도 3 의 제 2 프로세싱 디바이스 (310), 변경 검출 회로 (414), 도 4 의 애플리케이션 프로세서 (418), 선택 회로 (506), 신호 분석기 (512), 변경 검출 회로 (514), 도 5 의 애플리케이션 프로세서 (518), 프리프로세싱 회로 (604), 하나 이상의 추가적인 프로세서들 (622), 제 2 애플리케이션 프로세서 (706), 도 7 의 M 번째 애플리케이션 프로세서 (708), 활성화 분석기 (814), 비활성화 분석기 (816), 물체 검출기 (850), 물체 식별기 (852), 활동 분류기 (854), 도 8 의 시스템 제어기 (806), VFE-라이트 (904), LPCVSS (906), LPASS (908), APSS (910), 도 9 의 하나 이상의 다른 프로세서들 (912), 도 13 의 맥락 결정 엔진 (1380), 도 14 의 디바이스 (1402), 또는 이들의 조합에 의해 수행될 수도 있다.
시스템 (2000) 의 컴포넌트들은 도 18 의 시스템 (1800) 의 대응하는 컴포넌트들과 유사한 방식으로 동작할 수도 있다. 시스템 (2000) 은 특징 세트 1 추출 (1604) 동안에 관심 영역 (예컨대, 관심 영역 (1478)) 을 추출하거나 식별할 수도 있다. 관심 영역 (1478) 은 이미지의 특정 부분에 대응할 수도 있다. 관심 영역 (1478) 은 이용 케이스 (예컨대, 도 14 의 이용 케이스 (1436)) 에 기초하여, 이미지 및 이전의 이미지 사이의 차이들에 기초하여, 또는 양자에 기초하여 결정될 수도 있다. 예를 들어, 관심 영역 (1478) 은 이용 케이스 (1436) 가 사람 인식을 포함할 때에 얼굴들에 대응할 수도 있고, 이용 케이스 (1436) 가 활동 인식을 포함할 때에 물체들에 대응할 수도 있다.
또 다른 예로서, 이용 케이스 (1436) 는 특정 물체 (예컨대, 자동차 열쇠) 의 물체 검출을 포함할 수도 있다. 사용자 (1452) 는 자동차 열쇠를 잘못 놓아둘 수도 있고, 자동차 열쇠를 최후에 포함하였던 제 1 이미지의 디스플레이를 요청할 수도 있다. 특정 실시형태에서, 이용 케이스 (1436) 는 애플리케이션-특정 프로세싱에 대응할 수도 있다. 제 1 분류 모델 (예컨대, 도 14 의 분류 모델 (들) (1428)) 은 이용 케이스 (1436) 에 대응하는 특징들의 특정 서브세트의 특정 값들을 표시할 수도 있다. 예시하기 위하여, 제 1 분류 모델은 특정 물체 (예컨대, 자동차 열쇠) 에 대응하는 에지 히스토그램 디스크립터의 특정 값들을 표시할 수도 있다. 특징 세트 추출기 (1414) 는 감지 데이터 (예컨대, 제 1 감지 데이터 (1470)) 로부터 이미지의 특징들의 특정 서브세트를 추출할 수도 있다. 특징 세트 추출기 (1414) 는 이미지의 특정 부분의 특징들의 특정 서브세트의 값들이 제 1 분류 모델에 의해 표시된 특정 값들에 대응하는 것으로 결정할 수도 있다. 제 1 감지 데이터 (1470) 의 부분은 이미지의 특정 부분에 대응할 수도 있다. 예시하기 위하여, 이미지의 특정 부분은 특정 물체 (예컨대, 자동차 열쇠) 또는 유사한 속성 (예컨대, 형상) 을 갖는 또 다른 물체를 포함할 수도 있다. 특징 세트 추출기 (1414) 는 이미지의 특정 부분에 대응하는 제 1 감지 데이터 (1470) 의 부분을 복사함으로써 관심 영역 (1478) 을 생성할 수도 있다.
또 다른 예로서, 특징 세트 추출기 (1414) 는 이미지에 대응하는 제 1 감지 데이터 (1470) 를, 이전의 이미지에 대응하는 다른 감지 데이터와 비교할 수도 있다. 예를 들어, 이미지 및 이전의 이미지는 회의 동안에 캡처되었을 수도 있다. 비교에 기초하여, 특징 세트 추출기 (1414) 는 제 1 감지 데이터 (1470) 의 부분이 다른 감지 데이터와는 별개인 것으로 결정할 수도 있다. 제 1 감지 데이터 (1470) 의 부분은 이미지의 특정 부분에 대응할 수도 있다. 예를 들어, 이미지의 특정 부분은 회의 동안에 위치를 변경하였던 사람에 대응할 수도 있다. 특징 세트 추출기 (1414) 는 이미지의 특정 부분에 대응하는 제 1 감지 데이터 (1470) 의 부분을 복사함으로써 관심 영역 (1478) 을 생성할 수도 있다.
시스템 (2000) 은 관심 영역 (1478) 을 이용하여 특징 추출 (예컨대, 특징 세트 2 추출, 특징 세트 N 추출, 또는 양자) 을 수행할 수도 있다. 예를 들어, 특징 세트 추출기 (1414) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 관심 영역 (1478) 으로부터 특징들의 제 1 서브세트를 추출할 수도 있다.
특정 실시형태에서, 도 3 의 제 1 프로세싱 디바이스 (304) 는 제 1 감지 데이터 (1470) 에서 관심 영역 (1478) 을 표시하거나 관심 영역 (1478) 의 부재를 표시하는 제 1 이미지 통계를 생성할 수도 있다. 통계 프로세싱 디바이스 (108) 는 제 1 이미지 통계가 관심 영역 (1478) 을 표시한다는 결정에 기초하여 추출 기준이 충족되는 것으로 결정할 수도 있고, 추출 기준이 충족된다는 결정에 기초하여, 관심 영역 (1478) 에 대응하는 제 1 감지 데이터 (1470) 의 부분을 제 2 프로세싱 디바이스 (310) 에 제공할 수도 있다.
이에 따라, 이미지의 관심 영역 (1478) 의 특징들의 서브세트들은 이미지의 맥락을 식별하기 위하여 추출, 클러스터링, 및 분류될 수도 있다. 전체 이미지와 비교하여, 관심 영역 (1478) 을 분석하는 것 (예컨대, 이에 대한 추가적인 특징들을 추출하는 것) 은 디바이스 (1402) 의 자원들을 절감할 수도 있다.
도 21 을 참조하면, 이미지의 맥락을 식별하도록 동작가능한 시스템의 특정한 예시적인 실시형태가 개시되어 있고, 2100 으로 일반적으로 지정되어 있다. 시스템 (2100) 의 하나 이상의 동작들은 도 1 의 통계 프로세싱 디바이스 (108), 제 1 프로세싱 디바이스 (304), 도 3 의 제 2 프로세싱 디바이스 (310), 변경 검출 회로 (414), 도 4 의 애플리케이션 프로세서 (418), 선택 회로 (506), 신호 분석기 (512), 변경 검출 회로 (514), 도 5 의 애플리케이션 프로세서 (518), 프리프로세싱 회로 (604), 하나 이상의 추가적인 프로세서들 (622), 제 2 애플리케이션 프로세서 (706), 도 7 의 M 번째 애플리케이션 프로세서 (708), 활성화 분석기 (814), 비활성화 분석기 (816), 물체 검출기 (850), 물체 식별기 (852), 활동 분류기 (854), 도 8 의 시스템 제어기 (806), VFE-라이트 (904), LPCVSS (906), LPASS (908), APSS (910), 도 9 의 하나 이상의 다른 프로세서들 (912), 도 13 의 맥락 결정 엔진 (1380), 도 14 의 디바이스 (1402), 또는 이들의 조합에 의해 수행될 수도 있다.
시스템 (2100) 의 컴포넌트들은 도 20 의 시스템 (2000) 의 대응하는 컴포넌트들과 유사한 방식으로 동작할 수도 있다. 시스템 (2100) 은 관심 영역 (예컨대, 관심 영역 (1478)) 으로부터 추출된 특징들의 제 1 서브세트 (예컨대, 특징들의 서브세트 (들) (1442)) 를 이전에 연산된 특징들 (예컨대, 이전에 연산된 특징들 (2102)) 과 조합함으로써 특징 세트 클러스터링 (1606) 을 수행할 수도 있다. 예를 들어, 도 14 의 특징 세트 클러스터러 (1416) 는 특징들의 제 1 서브세트 및 이전에 연산된 특징들 (2102) 을 클러스터링할 수도 있다. 예시하기 위하여, 관심 영역 (1478) 은 이전의 이미지와 비교하여 변경되었던 이미지의 특정 부분에 대응할 수도 있고, 이전에 연산된 특징들 (2102) 은 이전의 이미지와 비교하여 변경되지 않고 남아 있었던 이미지의 나머지 부분에 대응할 수도 있다. 예를 들어, 이전에 연산된 특징들 (2102) 은 이전의 이미지를 분석할 때에 이전에 추출되었을 수도 있다. 도 14 의 특징 세트 클러스터러 (1416) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 특징들의 제 1 서브세트, 이전에 연산된 특징들 (2102), 및 제 2 이미지의 특징들의 또 다른 서브세트를 클러스터링할 수도 있다.
이전에 연산된 특징들 (2102) 을 이용하는 것은, 전체 이미지에 대응하는 특징들을 추출하는 것과 비교하여, 디바이스 (1402) 의 자원들을 절감할 수도 있다. 또한, 분류를 위하여 이전에 연산된 특징들 (2102) 및 관심 영역 (1478) 을 클러스터링하는 것은 관심 영역 (1478) 을 단독으로 클러스터링하는 것과 비교하여, 분류 분석을 개선시킬 수도 있다.
도 22 를 참조하면, 이미지의 맥락을 식별하도록 동작가능한 시스템의 특정한 예시적인 실시형태의 도면이 개시되어 있고, 2200 으로 일반적으로 지정되어 있다. 시스템 (2200) 의 하나 이상의 동작들은 도 1 의 통계 프로세싱 디바이스 (108), 제 1 프로세싱 디바이스 (304), 도 3 의 제 2 프로세싱 디바이스 (310), 변경 검출 회로 (414), 도 4 의 애플리케이션 프로세서 (418), 선택 회로 (506), 신호 분석기 (512), 변경 검출 회로 (514), 도 5 의 애플리케이션 프로세서 (518), 프리프로세싱 회로 (604), 하나 이상의 추가적인 프로세서들 (622), 제 2 애플리케이션 프로세서 (706), 도 7 의 M 번째 애플리케이션 프로세서 (708), 활성화 분석기 (814), 비활성화 분석기 (816), 물체 검출기 (850), 물체 식별기 (852), 활동 분류기 (854), 도 8 의 시스템 제어기 (806), VFE-라이트 (904), LPCVSS (906), LPASS (908), APSS (910), 도 9 의 하나 이상의 다른 프로세서들 (912), 도 13 의 맥락 결정 엔진 (1380), 도 14 의 디바이스 (1402), 또는 이들의 조합에 의해 수행될 수도 있다.
시스템 (2200) 은 메모리 (1408) 를 통해 장면 변경 검출기 (1460) 에 결합되거나 이와 통신하는 이미지 센서 (2208) (예컨대, 도 3 의 카메라 (302), 도 4 의 센서 (402), 도 5 의 센서 (502), 도 6 의 센서 (602), 도 8 의 카메라 (842), 도 12 의 하나 이상의 카메라들 (1210), 도 13 의 하나 이상의 다른 센서들 (1360), 도 14 의 제 1 이미지 센서 (1404) 또는 N 번째 이미지 센서 (1440) 와 같은 이미지 센서들 중의 하나 이상) 를 포함할 수도 있다. 특정 실시형태에서, 메모리 (1408) 는 도 3 의 메모리 (306) 에 대응할 수도 있다.
메모리 (1408) 는 저/고 해상도 이미지 버퍼 (2214), 제 1 고해상도 이미지 버퍼 (2216), 제 2 고해상도 이미지 버퍼 (2218), 또는 이들의 임의의 조합을 포함할 수도 있다. 이미지 버퍼들의 각각은 별개의 메모리 사이즈를 가질 수도 있고 별개의 메모리 액세스 시간을 가질 수도 있다. 예를 들어, 제 2 고해상도 이미지 버퍼 (2218) 는 제 1 고해상도 이미지 버퍼 (2216) 보다 더 큰 메모리 사이즈를 가질 수도 있으며 더 큰 메모리 액세스 시간을 가질 수도 있고, 제 1 고해상도 이미지 버퍼 (2216) 는 저/고 해상도 이미지 버퍼 (2214) 보다 더 큰 메모리 사이즈를 가질 수도 있으며 더 큰 메모리 액세스 시간을 가질 수도 있다.
메모리 (1408) 는 필터 (2222) 를 통해 장면 변경 검출기 (1460) 에 결합될 수도 있거나 이와 통신할 수도 있다. 제 1 이미지 센서 (1404) 는 트리거 로직 (2202) 에 결합될 수도 있거나 이와 통신할 수도 있다. 트리거 로직 (2202) 은 카운터 (2204) 에 결합될 수도 있거나 이와 통신할 수도 있다. 장면 변경 검출기 (1460) 는 로컬 저장장치 (2228) 를 포함하거나, 이에 결합되거나, 또는 이와 통신할 수도 있다. 특정 실시형태에서, 시스템 (2200) 은 디바이스 (1402) 의 상시-온 전력 도메인에 대응할 수도 있다.
동작 동안에, 트리거 로직 (2202) 은 이미지 캡처 요청 (예컨대, 제 1 이미지 캡처 요청 (1472)) 을 제 1 이미지 센서 (1404) 로 전송할 수도 있다. 특정 실시형태에서, 트리거 로직 (2202) 은 하나 이상의 비동기 이벤트 통지들 (예컨대, 비동기 이벤트 통지 (들) (2206)) 에 응답하여 제 1 이미지 캡처 요청 (1472) 을 전송할 수도 있다. 비동기 이벤트 통지 (들) (2206) 는 자원 가용성, 사용자 입력, 사용자 근접성, 라디오 주파수 신호, 전자기 신호, 기계적 신호, 마이크로-전기기계 시스템 (MEMS) 신호, 다른 맥락 정보, 또는 이들의 임의의 조합에 관한 통지를 포함할 수도 있다. 예를 들어, 비동기 이벤트 통지 (들) (2206) 는 자원 가용성에 관한 통지를 포함할 수도 있다. 트리거 로직 (2202) 은 자원 가용성에 관한 통지에 응답하여 제 1 이미지 캡처 요청 (1472) 을 전송할 수도 있다. 예시하기 위하여, 트리거 로직 (2202) 은 자원 버젯 (예컨대, 자원 버젯 (1420)), 사용자 선호도 (예컨대, 사용자 선호도 (들) (1422)), 또는 양자를 충족시키는 것으로 결정하는 것에 응답하여 제 1 이미지 캡처 요청 (1472) 을 전송할 수도 있다.
또 다른 예로서, 비동기 이벤트 통지 (들) (2206) 는 사용자 입력 (예컨대, 사용자 입력 (1430)) 에 관한 통지를 포함할 수도 있다. 사용자 입력 (1430) 은 이미지를 캡처하기 위한 사용자 요청에 대응할 수도 있다. 트리거 로직 (2202) 은 사용자 입력 (1430) 에 관한 통지에 응답하여 제 1 이미지 캡처 요청 (1472) 을 전송할 수도 있다.
특정 실시형태에서, 트리거 로직 (2202) 은 카운터 (2204) 의 값에 응답하여 제 1 이미지 캡처 요청 (1472) 을 전송할 수도 있다. 예를 들어, 카운터 (2204) 는 이전의 이미지 캡처 이후로 특정 기간이 경과되었다는 것을 표시할 수도 있다. 트리거 로직 (2202) 은 도 14 를 참조하여 더욱 설명된 바와 같이, 특정 기간이 임계 이미지 캡처 기간 (예컨대, 임계 기간 (들) (1480)) 을 충족시키는 것으로 결정하는 것에 응답하여 제 1 이미지 캡처 요청 (1472) 을 제 1 이미지 센서 (1404) 로 전송할 수도 있다.
제 1 이미지 캡처 요청 (1472) 을 수신하는 것에 응답하여, 제 1 이미지 센서 (1404) 는 고해상도 원시 이미지 데이터 (2220) 를 메모리 (1408) 로 전송할 수도 있다. 특정 실시형태에서, 고해상도 원시 이미지 데이터 (2220) 는 도 14 의 제 1 감지 데이터 (1470) 에 대응할 수도 있다. 메모리 (1408) 는 고해상도 원시 이미지 데이터 (2220) 를 이미지 버퍼 (예컨대, 저/고 해상도 이미지 버퍼 (2214), 제 1 고해상도 이미지 버퍼 (2216), 제 2 고해상도 이미지 버퍼 (2218), 또는 이들의 임의의 조합) 내에 저장할 수도 있다. 메모리 (1408) 는 고해상도 원시 이미지 데이터 (2220) 를 필터 (2222) 로 전송 (또는 액세스 가능하게 함) 할 수도 있다.
필터 (2222) 는 고해상도 원시 이미지 데이터 (2220) 로부터 저해상도 원시 이미지 데이터 (2226) 를 생성할 수도 있다. 예를 들어, 저해상도 원시 이미지 데이터 (2226) 는 고해상도 원시 이미지 데이터 (2220) 보다 더 적은 이미지 픽셀들에 대응할 수도 있다. 특정 실시형태에서, 특정 픽셀에 대응하는 저해상도 원시 이미지 데이터 (2226) 의 값은 다수 (예컨대, 4) 의 픽셀들에 대응하는 고해상도 원시 이미지 데이터 (2220) 의 값들로부터 생성될 수도 있다. 예를 들어, 특정 픽셀에 대응하는 값은 다수의 픽셀들에 대응하는 값들의 평균일 수도 있다.
필터 (2222) 는 저해상도 원시 이미지 데이터 (2226) 를 장면 변경 검출기 (1460) 로 전송 (또는 액세스 가능하게 함) 할 수도 있다. 장면 변경 검출기 (1460) 는 저해상도 원시 이미지 데이터 (2226) 를 로컬 저장장치 (2228) 내에 저장할 수도 있다. 특정 실시형태에서, 필터 (2222) 는 저해상도 원시 이미지 데이터 (2226) 를 로컬 저장장치 (2228) 로 전송 (또는 액세스 가능하게 함) 할 수도 있다. 장면 변경 검출기 (1460) 는 저해상도 원시 이미지 데이터 (2226) 를, 이전에 캡처된 이미지에 대응하는 다른 이미지 데이터와 비교할 수도 있다. 비교에 기초하여, 장면 변경 검출기 (1460) 는 2226 에서, 저해상도 원시 이미지 데이터 (2226) 가 장면 변경을 표시하는지 여부를 결정할 수도 있다. 예를 들어, 장면 변경 검출기 (1460) 는 이미지 및 이전에 캡처된 이미지를 블록들 (예컨대, 3x3 블록들) 로 분할할 수도 있다. 장면 변경 검출기 (1460) 는 이미지의 각각의 블록과 연관된 제 1 감지 데이터 (1470) (예컨대, 저해상도 원시 이미지 데이터 (2226)) 의 부분과, 이전에 캡처된 이미지의 대응하는 블록과 연관된 감지 데이터 (예컨대, 다른 이미지 데이터) 의 부분과의 사이의 차이를 결정할 수도 있다. 예를 들어, 장면 변경 검출기 (1460) 는 이미지 및 이전에 캡처된 이미지의 부분들 사이의 절대 차이의 평균을 결정할 수도 있다. 장면 변경 검출기 (1460) 는 제 1 감지 데이터 (1470) (예컨대, 저해상도 원시 이미지 데이터 (2226)) 가 장면 변경을 표시할 것인지 여부를 결정하기 위하여, 차이 (예컨대, 평균) 를 임계 이미지 차이와 비교할 수도 있다.
저해상도 원시 이미지 데이터 (2226) 가 장면 변경을 표시하지 않는 것으로 결정하는 것에 응답하여, 시스템 (2200) 은 2242 에서 ,다음 트리거를 대기할 수도 있다. 예를 들어, 도 14 의 멀티미디어 컨텐츠 분류기 (1412) 는 트리거 로직 (2202) 이 또 다른 비동기 이벤트 통지 (2206) 또는 카운터 (2204) 의 또 다른 값을 수신하는 것을 대기할 수도 있다.
저해상도 원시 이미지 데이터 (2226) 가 2226 에서, 장면 변경을 표시하는 것으로 결정하는 것에 응답하여, 시스템 (2200) 은 도 23 을 참조하여 더욱 설명된 바와 같이 동작할 수도 있다. 특정 실시형태에서, 필터 (2222) 는 도 3 의 제 1 프로세싱 디바이스 (304) 내에 포함될 수도 있고, 장면 변경 검출기 (1460) 는 도 1 의 통계 프로세싱 디바이스 (108) 내에 포함될 수도 있다. 예를 들어, 저해상도 원시 이미지 데이터 (2226) 는 제 1 이미지 통계에 대응할 수도 있다. 장면 변경 검출기 (1460) 는, 저해상도 원시 이미지 데이터 (2226) 가 장면 변경을 표시하는 것으로 결정하는 것에 기초하여, 추출 기준이 충족되는 것으로 결정할 수도 있다.
특정 실시형태에서, 메모리 (1408) 는 도 24 를 참조하여 더욱 설명된 바와 같이, 이미지 데이터 요청 (2238) 을 수신할 수도 있다. 이미지 데이터 요청 (2238) 에 응답하여, 메모리 (1408) 는 도 24 를 참조하여 더욱 설명된 바와 같이, 이미지 데이터 (2240) 를 출력할 수도 있다. 이미지 데이터 (2240) 는 고해상도 원시 이미지 데이터 (2220) 에 대응할 수도 있다.
필터 (2222) 는, 제 1 이미지 센서 (1404) 가 고해상도 이미지 데이터를 생성할 때에 저해상도 이미지 데이터를 생성하기 위해 이용될 수도 있다. 저해상도 이미지 데이터는, 고해상도 이미지 데이터의 분석을 계속할 것인지 여부를 결정하기 위하여 장면 변경 검출기 (1460) 에 의해 분석될 수도 있다. 장면 변경 검출기 (1460) 가 저해상도 이미지 데이터를 분석하게 하는 것은 고해상도 이미지 데이터와 비교하여, 디바이스 (1402) 의 자원들을 절감할 수도 있다.
도 23 을 참조하면, 이미지의 맥락을 식별하도록 동작가능한 시스템의 특정한 예시적인 실시형태가 개시되어 있고, 2300 으로 일반적으로 지정되어 있다. 시스템 (2300) 은 도 22 의 시스템 (2200) 에 결합될 수도 있다. 시스템 (2300) 의 하나 이상의 동작들은 도 1 의 통계 프로세싱 디바이스 (108), 제 1 프로세싱 디바이스 (304), 도 3 의 제 2 프로세싱 디바이스 (310), 변경 검출 회로 (414), 도 4 의 애플리케이션 프로세서 (418), 선택 회로 (506), 신호 분석기 (512), 변경 검출 회로 (514), 도 5 의 애플리케이션 프로세서 (518), 프리프로세싱 회로 (604), 하나 이상의 추가적인 프로세서들 (622), 제 2 애플리케이션 프로세서 (706), 도 7 의 M 번째 애플리케이션 프로세서 (708), 활성화 분석기 (814), 비활성화 분석기 (816), 물체 검출기 (850), 물체 식별기 (852), 활동 분류기 (854), 도 8 의 시스템 제어기 (806), VFE-라이트 (904), LPCVSS (906), LPASS (908), APSS (910), 도 9 의 하나 이상의 다른 프로세서들 (912), 도 13 의 맥락 결정 엔진 (1380), 도 14 의 디바이스 (1402), 또는 이들의 조합에 의해 수행될 수도 있다.
시스템 (2300) 은 도 14 의 블러링된 이미지 검출기 (1462) 를 포함할 수도 있다. 블러링된 이미지 검출기 (1462) 는 로컬 저장장치 (2306) 를 포함하거나, 이에 결합되거나, 또는 이와 통신할 수도 있다.
동작 동안에, 시스템 (2300) 은 2302 에서, 디바이스 (1402) 의 제 1 전력 도메인을 활성화할 수도 있다. 예를 들어, 멀티미디어 컨텐츠 분류기 (1412) 는 도 22 를 참조하여 더욱 설명된 바와 같이, 장면 변경 검출기 (1460) 가 이미지 데이터 (예컨대, 저해상도 원시 이미지 데이터 (2226)) 가 장면 변경에 대응하는 것으로 결정하는 것에 응답하여 제 1 전력 도메인을 활성화할 수도 있다. 또 다른 예로서, 통계 프로세싱 디바이스 (108) 는 추출 기준이 충족되는 것 (예컨대, 장면 변경이 검출됨) 으로 결정하는 것에 기초하여 제 2 프로세싱 디바이스 (310) 의 제 1 전력 도메인을 활성화할 수도 있다.
블러링된 이미지 검출기 (1462) 는 저해상도 원시 이미지 데이터 (2226) 를 수신할 수도 있다. 예를 들어, 블러링된 이미지 검출기 (1462) 는 필터 (2222) 로부터 저해상도 원시 이미지 데이터 (2226) 를 수신할 수도 있다. 블러링된 이미지 검출기 (1462) 는 저해상도 원시 이미지 데이터 (2226) 를 로컬 저장장치 (2306) 내에 저장할 수도 있다. 블러링된 이미지 검출기 (1462) 는 2308 에서, 저해상도 원시 이미지 데이터 (2226) 가 이미지가 블러링되는 것을 표시하는지 여부를 결정할 수도 있다. 예를 들어, 블러링된 이미지 검출기 (1462) 는 저해상도 원시 이미지 데이터 (2226) 가 이미지의 선예도가 임계 선예도 레벨 (예컨대, 임계 선예도 레벨 (1484)) 을 충족시키는 것을 표시하는지 여부를 결정할 수도 있다. 예시하기 위하여, 블러링된 이미지 검출기 (1462) 는, 저해상도 원시 이미지 데이터 (2226) 가 이미지의 선예도가 임계 선예도 레벨 (1484) 을 충족시키는 것에 실패하는 것을 표시하는 것으로 결정하는 것에 기초하여, 저해상도 원시 이미지 데이터 (2226) 가 블러링된 이미지를 표시하는 것으로 결정할 수도 있다. 블러링된 이미지 검출기 (1462) 는 대안적으로, 저해상도 원시 이미지 데이터 (2226) 가 이미지의 선예도가 임계 선예도 레벨 (1484) 을 충족시키는 것을 표시하는 것으로 결정하는 것에 기초하여, 저해상도 원시 이미지 데이터 (2226) 가 블러링된 이미지를 표시하지 않는 것으로 결정할 수도 있다.
블러링된 이미지 검출기 (1462) 가 2308 에서, 저해상도 원시 이미지 데이터 (2226) 가 이미지가 블러링되는 것을 표시하는 것으로 결정하는 것에 응답하여, 시스템 (2300) 은 2310 에서, 디바이스 (1402) 의 제 1 전력 도메인을 비활성화할 수도 있다. 예를 들어, 멀티미디어 컨텐츠 분류기 (1412) 는, 블러링된 이미지 검출기 (1462) 가 저해상도 원시 이미지 데이터 (2226) 가 이미지가 블러링되는 것을 표시하는 것으로 결정하는 것에 응답하여 디바이스 (1402) 의 제 1 전력 도메인을 비활성화할 수도 있다. 특정 실시형태에서, 통계 프로세싱 디바이스 (108), 제 2 프로세싱 디바이스 (310), 또는 양자는 블러링된 이미지 검출기 (1462) 를 포함할 수도 있다. 통계 프로세싱 디바이스 (108) 또는 제 2 프로세싱 디바이스 (310) 는, 블러링된 이미지 검출기 (1462) 가 저해상도 원시 이미지 데이터 (2226) 가 이미지가 블러링되는 것을 표시하는 것으로 결정하는 것에 기초하여 통계 프로세싱 디바이스 (108) 의 제 1 전력 도메인을 비활성화할 수도 있다.
블러링된 이미지 검출기 (1462) 가 2308 에서, 저해상도 원시 이미지 데이터 (2226) 가 이미지가 블러링되는 것을 표시하는 것으로 결정하는 것에 응답하여, 시스템 (2300) 은 도 26 을 참조하여 설명된 바와 같이 동작할 수도 있다.
이에 따라, 도 23 에서 예시된 디바이스 (1402) 의 제 1 전력 도메인은, 이미지가 장면 변경에 대응하지 않을 때에 비활성화된 상태로 유지될 수도 있어서, 디바이스 (1402) 의 자원들을 절감할 수도 있다. 또한, 저해상도 이미지 데이터는, 고해상도 이미지 데이터의 분석을 계속할 것인지 여부를 결정하기 위하여 블러링된 이미지 검출기 (1462) 에 의해 분석될 수도 있다. 블러링된 이미지 검출기 (1462) 가 저해상도 이미지 데이터를 분석하게 하는 것은 또한, 고해상도 이미지 데이터와 비교하여, 디바이스 (1402) 의 자원들을 절감할 수도 있다.
도 24 를 참조하면, 이미지의 맥락을 식별하도록 동작가능한 시스템의 특정한 예시적인 실시형태가 개시되어 있고, 2400 으로 일반적으로 지정되어 있다. 시스템 (2400) 은 도 22 의 시스템 (2200), 도 12 의 시스템 (2300), 또는 양자에 결합되거나 이와 통신할 수도 있다. 시스템 (2400) 의 하나 이상의 동작들은 도 1 의 통계 프로세싱 디바이스 (108), 제 1 프로세싱 디바이스 (304), 도 3 의 제 2 프로세싱 디바이스 (310), 변경 검출 회로 (414), 도 4 의 애플리케이션 프로세서 (418), 선택 회로 (506), 신호 분석기 (512), 변경 검출 회로 (514), 도 5 의 애플리케이션 프로세서 (518), 프리프로세싱 회로 (604), 하나 이상의 추가적인 프로세서들 (622), 제 2 애플리케이션 프로세서 (706), 도 7 의 M 번째 애플리케이션 프로세서 (708), 활성화 분석기 (814), 비활성화 분석기 (816), 물체 검출기 (850), 물체 식별기 (852), 활동 분류기 (854), 도 8 의 시스템 제어기 (806), VFE-라이트 (904), LPCVSS (906), LPASS (908), APSS (910), 도 9 의 하나 이상의 다른 프로세서들 (912), 도 13 의 맥락 결정 엔진 (1380), 도 14 의 디바이스 (1402), 또는 이들의 조합에 의해 수행될 수도 있다.
동작 동안에, 시스템 (2400) 은 2402 에서, 디바이스 (1402) 의 제 2 전력 도메인을 활성화할 수도 있다. 예를 들어, 멀티미디어 컨텐츠 분류기 (1412) 는 도 23 을 참조하여 더욱 설명된 바와 같이, 블러링된 이미지 검출기 (1462) 가 저해상도 원시 이미지 데이터 (2226) 가 이미지가 블러링되지 않은 것을 표시하는 것으로 결정하는 것에 응답하여 제 2 전력 도메인을 활성화할 수도 있다.
특정 실시형태에서, 도 1 의 통계 프로세싱 디바이스 (108) 또는 도 3 의 제 2 프로세싱 디바이스 (310) 는, 도 23 을 참조하여 더욱 설명된 바와 같이, 블러링된 이미지 검출기 (1462) 가 저해상도 원시 이미지 데이터 (2226) 가 이미지가 블러링되지 않는 것을 표시하는 것으로 결정하는 것에 기초하여 제 2 프로세싱 디바이스 (310) 의 제 2 전력 도메인을 활성화할 수도 있다.
시스템 (2400) 은 2402 에서, 이미지 데이터 요청 (예컨대, 도 22 의 이미지 데이터 요청 (2238)) 을 출력할 수도 있다. 예를 들어, 멀티미디어 컨텐츠 분류기 (1412) 는, 블러링된 이미지 검출기 (1462) 가 저해상도 원시 이미지 데이터 (2226) 가 이미지가 블러링되지 않는 것을 표시하는 것으로 결정하는 것에 응답하여, 도 22 를 참조하여 더욱 설명된 바와 같이, 이미지 데이터 요청 (2238) 을 메모리 (1408) 로 출력할 수도 있다. 특정 실시형태에서, 제 2 프로세싱 디바이스 (310) 는, 블러링된 이미지 검출기 (1462) 가 저해상도 원시 이미지 데이터 (2226) 가 이미지가 블러링되지 않는 것을 표시하는 것으로 결정하는 것에 기초하여 이미지 데이터 요청을 메모리 (306) 로 출력할 수도 있다.
시스템 (2400) 은 이미지 데이터 (예컨대, 이미지 데이터 (2240)) 를 수신할 수도 있고 특징 연산 (2404) 을 수행할 수도 있다. 예를 들어, 메모리 (1408) 는 도 22 를 참조하여 더욱 설명된 바와 같이, 이미지 데이터 요청 (2238) 에 응답하여 이미지 데이터 (2240) 를 멀티미디어 컨텐츠 분류기 (1412) 로 출력할 수도 있다. 이미지 데이터 (2240) 는 고해상도 원시 이미지 데이터 (2220) 에 대응할 수도 있다. 특징 세트 추출기 (1414) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 고해상도 원시 이미지 데이터 (2220) 로부터 특징들의 제 1 서브세트를 추출할 수도 있다. 특정 실시형태에서, 제 2 프로세싱 디바이스 (310) 는 메모리 (306) 로부터 수신된 고해상도 원시 이미지 데이터에 대한 애플리케이션-특정 프로세싱을 수행할 수도 있다. 예를 들어, 제 2 프로세싱 디바이스 (310) 는 애플리케이션-특정 프로세싱의 특정 단계들에 대응하는 후속 전력 도메인들을 활성화할 수도 있다. 예시하기 위하여, 제 2 전력 도메인은 도 7 의 제 2 애플리케이션 프로세서 (706) 에 대응할 수도 있고, 후속 전력 도메인은 M 번째 애플리케이션 프로세서 (708) 에 대응할 수도 있다.
시스템 (2400) 은 도 16 을 참조하여 더욱 설명된 바와 같이, 특징 세트 클러스터링 (1606) 을 수행할 수도 있고, 특징 세트 분류 (1608) 를 수행할 수도 있다. 시스템 (2400) 은 2406 에서, 특징들의 제 1 서브세트와 연관된 신뢰 레벨들이 하이 (high) 인지 여부를 결정할 수도 있다. 특정 실시형태에서, 동작 (1306) 은 도 16 의 동작 (1622) 에 대응할 수도 있다. 예를 들어, 멀티미디어 컨텐츠 분류기 (1412) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 특징들의 제 1 분류된 서브세트 (예컨대, 특징들의 분류된 서브세트 (들) (1474)) 와 연관된 신뢰 레벨들이 임계 신뢰 레벨 (예컨대, 임계 신뢰 레벨 (1482)) 을 충족시키는지 여부를 결정할 수도 있다.
2406 에서, 신뢰 레벨이 하이가 아닌 것 (예컨대, "하이" 신뢰를 나타내는 수치 임계점 (예컨대, 75 %) 을 충족시키지 않음) 으로 결정하는 것에 응답하여, 시스템 (2400) 은 추가적인 특징 (예컨대, MPEG-7, GIST, CENTRIST 등) 연산 (2404) 을 수행할 수도 있다. 예를 들어, 특징 세트 추출기 (1414) 는 도 24 를 참조하여 더욱 설명된 바와 같이, 이미지 데이터 (2240) 로부터 특징들의 제 2 서브세트를 추출할 수도 있다.
2406 에서, 신뢰 레벨이 하이인 것으로 결정하는 것에 응답하여, 시스템 (2400) 은 2408 에서, 시각적 환경 데이터를 출력하기 위해 진행할 수도 있다. 예를 들어, 멀티미디어 컨텐츠 분류기 (1412) 는 도 14 를 참조하여 설명된 바와 같이, 맥락 데이터 (예컨대, 맥락 데이터 (1490)) 를 생성할 수도 있다. 멀티미디어 컨텐츠 분류기 (1412) 는 디스플레이 (1406) 에서 맥락 데이터 (1490) 의 디스플레이를 개시할 수도 있다.
시스템 (2400) 은 2410 에서, 제 2 전력 도메인을 비활성화할 수도 있다. 예를 들어, 멀티미디어 컨텐츠 분류기 (1412) 는 디바이스 (1402) 의 제 2 전력 도메인을 비활성화할 수도 있다. 특정 실시형태에서, 제 2 프로세싱 디바이스 (310) 는 제 2 프로세싱 디바이스 (310) 의 제 2 전력 도메인을 비활성화할 수도 있다.
이에 따라, 도 24 에서 예시된 디바이스 (1402) 의 제 2 전력 도메인은, 이미지가 장면 변경에 대응하지 않을 때, 또는 이미지가 블러링될 때에 비활성화된 상태로 유지될 수도 있음으로써, 디바이스 (1402) 의 자원들을 절감할 수도 있다.
도 25 를 참조하면, 이미지의 맥락을 식별하도록 동작가능한 시스템의 특정한 예시적인 실시형태가 개시되어 있고, 2500 으로 일반적으로 지정되어 있다. 시스템 (2500) 은 도 24 의 시스템 (2400) 에 결합될 수도 있다. 시스템 (2500) 의 하나 이상의 동작들은 도 1 의 통계 프로세싱 디바이스 (108), 제 1 프로세싱 디바이스 (304), 도 3 의 제 2 프로세싱 디바이스 (310), 변경 검출 회로 (414), 도 4 의 애플리케이션 프로세서 (418), 선택 회로 (506), 신호 분석기 (512), 변경 검출 회로 (514), 도 5 의 애플리케이션 프로세서 (518), 프리프로세싱 회로 (604), 하나 이상의 추가적인 프로세서들 (622), 제 2 애플리케이션 프로세서 (706), 도 7 의 M 번째 애플리케이션 프로세서 (708), 활성화 분석기 (814), 비활성화 분석기 (816), 물체 검출기 (850), 물체 식별기 (852), 활동 분류기 (854), 도 8 의 시스템 제어기 (806), VFE-라이트 (904), LPCVSS (906), LPASS (908), APSS (910), 도 9 의 하나 이상의 다른 프로세서들 (912), 도 13 의 맥락 결정 엔진 (1380), 도 14 의 디바이스 (1402), 또는 이들의 조합에 의해 수행될 수도 있다.
시스템 (2500) 의 컴포넌트들은 도 22 의 시스템 (2200) 의 대응하는 컴포넌트들과 유사한 방식으로 동작할 수도 있다. 시스템 (2500) 은 이미지 센서 및 필터 (2502) 를 포함할 수도 있다. 이미지 센서 및 필터 (2502) 는 이미지 센서 (예컨대, 제 1 이미지 센서 (1404), 도 14 의 N 번째 이미지 센서 (1440), 또는 양자와 같은, 도 14 의 디바이스 (1402) 의 이미지 센서들 중의 하나 이상) 및 필터 (예컨대, 도 22 의 필터 (2222)) 의 조합일 수도 있다.
이미지 센서 및 필터 (2502) 는 원시 이미지 데이터 (2504) 를 생성할 수도 있다. 원시 이미지 데이터 (2504) 는 도 14 의 제 1 감지 데이터 (1470) 에 대응할 수도 있다. 원시 이미지 데이터 (2504) 는 저해상도 이미지 데이터 (예컨대, 저해상도 원시 이미지 데이터 (2226)), 고해상도 이미지 데이터 (예컨대, 고해상도 원시 이미지 데이터 (2220)), 또는 양자를 포함할 수도 있다. 특정 실시형태에서, 도 3 의 제 1 프로세싱 디바이스 (304) 및 카메라 (302) 는 이미지 센서 및 필터 (2502) 에 대응할 수도 있고, 원시 이미지 데이터 (2504) 는 도 3 의 제 1 프로세싱 디바이스 (304) 에 의해 통계 프로세싱 디바이스 (108) 에 제공된 제 1 이미지 통계에 대응할 수도 있다.
특정 실시형태에서, 이미지 센서 및 필터 (2502) 는 제 1 이미지 캡처 요청 (1472) 이 고해상도 이미지 데이터가 캡처되어야 하는 것을 표시하는 것에 응답하여 고해상도 원시 이미지 데이터 (2220) 를 생성할 수도 있다. 예를 들어, 멀티미디어 컨텐츠 분류기 (1412) 는 제 1 이미지 캡처 요청 (1472) 에서 요청된 해상도를 표시할 수도 있다. 특정 실시형태에서, 이미지 센서 및 필터 (2502) 는 디바이스 (1402) 의 이미지 센서들 중의 하나 이상 (예컨대, 제 1 이미지 센서 (1404) 또는 N 번째 이미지 센서 (1440)) 을 이용하여 저해상도 원시 이미지 데이터 (2226) 를 캡처할 수도 있고, 디바이스 (1402) 의 이미지 센서들 중의 또 다른 것 (예컨대, 제 1 이미지 센서 (1404) 및 N 번째 이미지 센서 (1440) 중의 다른 것 또는 또 다른 이미지 센서) 을 이용하여 고해상도 원시 이미지 데이터 (2220) 를 캡처할 수도 있다.
이미지 데이터 (2240) 는 원시 이미지 데이터 (2504) 에 대응할 수도 있다. 예를 들어, 이미지 데이터 (2240) 는 저해상도 원시 이미지 데이터 (2226), 고해상도 원시 이미지 데이터 (2220), 또는 양자를 포함할 수도 있다.
메모리 (1408) 는 도 26 을 참조하여 더욱 설명된 바와 같이, 원시 이미지 데이터 (2504) 를 출력할 수도 있다. 메모리 (308) 는 원시 이미지 데이터 (2504) 를 장면 변경 검출기 (1460) 로 출력할 수도 있다. 특정 실시형태에서, 메모리 (1408) 는 원시 이미지 데이터 (2504) 를 로컬 저장장치 (2228) 로 출력할 수도 있다. 장면 변경 검출기 (1460) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 2226 에서, 원시 이미지 데이터 (2504) 가 장면 변경을 표시하는지 여부를 결정할 수도 있다.
장면 변경 검출기 (1460) 가 원시 이미지 데이터 (2504) 가 장면 변경을 표시하는 것으로 결정하는 것에 응답하여, 시스템 (2500) 은 도 26 을 참조하여 더욱 설명된 바와 같은 동작들을 수행할 수도 있다.
이에 따라, 이미지 센서 및 필터 (2502) 는 다양한 해상도들을 가지는 이미지 데이터를 생성할 수도 있다. 저해상도 이미지 데이터만을 생성하는 것은 디바이스 (1402) 의 자원들을 절감할 수도 있는 반면, 고해상도 이미지 데이터를 생성하는 것은 이미지 데이터로부터 생성된 맥락 데이터와 연관된 신뢰 레벨들을 개선시킬 수도 있다.
도 26 을 참조하면, 이미지의 맥락을 식별하도록 동작가능한 시스템의 특정한 예시적인 실시형태 도면이 개시되어 있고, 2600 으로 일반적으로 지정되어 있다. 시스템 (2600) 은 도 24 의 시스템 (2400), 도 25 의 시스템 (2500), 또는 양자에 결합될 수도 있다. 시스템 (2600) 의 하나 이상의 동작들은 도 1 의 통계 프로세싱 디바이스 (108), 제 1 프로세싱 디바이스 (304), 도 3 의 제 2 프로세싱 디바이스 (310), 변경 검출 회로 (414), 도 4 의 애플리케이션 프로세서 (418), 선택 회로 (506), 신호 분석기 (512), 변경 검출 회로 (514), 도 5 의 애플리케이션 프로세서 (518), 프리프로세싱 회로 (604), 하나 이상의 추가적인 프로세서들 (622), 제 2 애플리케이션 프로세서 (706), 도 7 의 M 번째 애플리케이션 프로세서 (708), 활성화 분석기 (814), 비활성화 분석기 (816), 물체 검출기 (850), 물체 식별기 (852), 활동 분류기 (854), 도 8 의 시스템 제어기 (806), VFE-라이트 (904), LPCVSS (906), LPASS (908), APSS (910), 도 9 의 하나 이상의 다른 프로세서들 (912), 도 13 의 맥락 결정 엔진 (1380), 도 14 의 디바이스 (1402), 또는 이들의 조합에 의해 수행될 수도 있다.
시스템 (2600) 의 컴포넌트들은 도 23 의 시스템 (2300) 의 대응하는 컴포넌트들과 유사한 방식으로 동작할 수도 있다. 블러링된 이미지 검출기 (1462) 는 도 25 를 참조하여 더욱 설명된 바와 같이, 메모리 (1408) 로부터 원시 이미지 데이터 (예컨대, 원시 이미지 데이터 (2504)) 를 수신할 수도 있다. 예를 들어, 블러링된 이미지 검출기 (1462) 는 메모리 (1408) 로부터 원시 이미지 데이터 (2504) 를 수신할 수도 있다.
블러링된 이미지 검출기 (1462) 가 2308 에서, 원시 이미지 데이터 (2504) 가 이미지가 블러링되지 않은 것을 표시하는 것으로 결정하는 것에 응답하여, 시스템 (2500) 은 도 24 를 참조하여 설명된 바와 같은 동작들을 수행할 수도 있다.
이에 따라, 디바이스 (1402) 의 제 1 전력 도메인은, 이미지가 장면 변경에 대응하지 않을 때에 비활성화된 상태로 유지될 수도 있어서, 디바이스 (1402) 의 자원들을 절감할 수도 있다. 또한, 이미지 데이터는, 이미지 데이터의 분석 (예컨대, 추출, 클러스터링, 또는 분류) 을 계속할 것인지 여부를 결정하기 위하여 블러링된 이미지 검출기 (1462) 에 의해 분석될 수도 있다.
도 27 을 참조하면, 이미지의 맥락을 식별하도록 동작가능한 시스템의 특정한 예시적인 실시형태가 개시되어 있고, 2700 으로 일반적으로 지정되어 있다. 시스템 (2700) 은 도 24 의 시스템 (2400), 도 26 의 시스템 (2600), 또는 양자에 결합될 수도 있다. 시스템 (2700) 의 하나 이상의 동작들은 도 1 의 통계 프로세싱 디바이스 (108), 제 1 프로세싱 디바이스 (304), 도 3 의 제 2 프로세싱 디바이스 (310), 변경 검출 회로 (414), 도 4 의 애플리케이션 프로세서 (418), 선택 회로 (506), 신호 분석기 (512), 변경 검출 회로 (514), 도 5 의 애플리케이션 프로세서 (518), 프리프로세싱 회로 (604), 하나 이상의 추가적인 프로세서들 (622), 제 2 애플리케이션 프로세서 (706), 도 7 의 M 번째 애플리케이션 프로세서 (708), 활성화 분석기 (814), 비활성화 분석기 (816), 물체 검출기 (850), 물체 식별기 (852), 활동 분류기 (854), 도 8 의 시스템 제어기 (806), VFE-라이트 (904), LPCVSS (906), LPASS (908), APSS (910), 도 9 의 하나 이상의 다른 프로세서들 (912), 도 13 의 맥락 결정 엔진 (1380), 도 14 의 디바이스 (1402), 또는 이들의 조합에 의해 수행될 수도 있다.
시스템 (2700) 의 컴포넌트들은 도 25 의 시스템 (2500) 의 대응하는 컴포넌트들과 유사한 방식으로 동작할 수도 있다. 시스템 (2700) 은 이미지 센서, 필터, 및 장면 변경 검출기 (2702) 를 포함할 수도 있다. 이미지 센서, 필터, 및 장면 변경 검출기 (2702) 는 이미지 센서 (예컨대, 제 1 이미지 센서 (1404), N 번째 이미지 센서 (1440), 또는 양자와 같은, 도 14 의 디바이스 (1402) 의 하나 이상의 이미지 센서들), 장면 변경 검출기 (예컨대, 도 14 의 장면 변경 검출기 (1460)), 및 필터 (예컨대, 도 22 의 필터 (2222)) 의 조합일 수도 있다.
특정 실시형태에서, 카메라 (302), 도 3 의 제 1 프로세싱 디바이스 (304), 및 도 1 의 통계 프로세싱 디바이스 (108) 는 이미지 센서, 필터, 및 장면 변경 검출기 (2702) 에 대응할 수도 있다. 통계 프로세싱 디바이스 (108) 는 장면 변경 통지 (2704) 및 원시 이미지 데이터 (2504) 를 도 3 의 제 2 프로세싱 디바이스 (310) 에 제공할 수도 있다. 이미지 센서, 필터, 및 장면 변경 검출기 (2702) 는 원시 이미지 데이터 (2504) 를 생성할 수도 있다. 이미지 센서, 필터, 및 장면 변경 검출기 (2702) 는 또한, 장면 변경 통지 (2704) 를 생성할 수도 있다. 이미지 센서, 필터, 및 장면 변경 검출기 (2702) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 이미지가 장면 변경에 대응하는 것으로 결정하는 것에 응답하여 장면 변경 통지 (2704) 를 생성할 수도 있다. 이미지 센서, 필터, 및 장면 변경 검출기 (2702) 는 장면 변경 통지 (2704) 를 출력할 수도 있다. 예를 들어, 시스템 (2700) 은 장면 변경 통지 (2704) 에 응답하여 도 26 을 참조하여 더욱 설명된 바와 같은 동작들을 수행할 수도 있다.
도 28 을 참조하면, 테스트 이미지들의 특징들의 다양한 서브세트들을 추출하는 것과 연관된 실행 시간들의 예를 예시하는 막대 도표가 도시되어 있고, 2800 으로 일반적으로 지정되어 있다. 특정 실시형태에서, 특징들의 다양한 서브세트들은 도 14 의 특징 추출기 (1414) 에 의해 추출될 수도 있다.
막대 도표 (2800) 는 다수의 테스트 이미지들 (예컨대, 테스트 이미지들 1 내지 4) 의 각각과 연관된 감지 데이터로부터 특징들의 다양한 서브세트들을 추출하는 것과 연관된 실행 시간들을 예시한다. 예를 들어, 각각의 테스트 이미지는 1080 프로그레시브 스캔 (progressive scan) (1080p) 해상도를 가질 수도 있다. 특징들의 제 1 서브세트는 테스트 특징 1, 테스트 특징 2, 및 테스트 특징 3 을 포함한다. 특징들의 제 2 서브세트는 특징들의 제 1 서브세트 및 테스트 특징 4 를 포함한다. 특징들의 제 3 서브세트는 특징들의 제 2 서브세트 및 테스트 특징 5 를 포함한다. 특징들의 제 4 서브세트는 특징들의 제 3 서브세트 및 테스트 특징 6 을 포함한다. 특정 실시형태에서, 테스트 특징 1 은 컬러 레이아웃 디스크립터에 대응할 수도 있고, 테스트 특징 2 는 동종 텍스처 디스크립터에 대응할 수도 있고, 테스트 특징 3 은 에지 히스토그램 디스크립터에 대응할 수도 있고, 테스트 특징 4 는 컬러 구조 디스크립터에 대응할 수도 있고, 테스트 특징 5 는 스케일러블 컬러 디스크립터에 대응할 수도 있고, 테스트 특징 6 은 기조 컬러 디스크립터에 대응할 수도 있다.
막대 도표 (2800) 는 테스트 이미지 1 의 감지 데이터로부터 특징들의 제 1 서브세트를 추출하는 것과 연관된 수백 밀리초 (millisecond) 의 실행 시간에 대응하는 막대 (2802) 를 포함한다. 막대 도표 (2800) 는 테스트 이미지 2 의 감지 데이터로부터 특징들의 제 1 서브세트를 추출하는 것과 연관된 대략 1 초의 실행 시간에 대응하는 막대 (2812) 를 포함한다. 막대 도표 (2800) 는 테스트 이미지 3 의 감지 데이터로부터 특징들의 제 1 서브세트를 추출하는 것과 연관된 대략 1 초의 실행 시간에 대응하는 막대 (2822) 를 포함한다. 막대 도표 (2800) 는 테스트 이미지 4 의 감지 데이터로부터 특징들의 제 1 서브세트를 추출하는 것과 연관된 대략 1 초의 실행 시간에 대응하는 막대 (2832) 를 포함한다.
막대 도표 (2800) 는 테스트 이미지 1 의 감지 데이터로부터 특징들의 제 2 서브세트를 추출하는 실행 시간에 대응하는 막대 (2804) 를 포함하고, 테스트 이미지 1 의 감지 데이터로부터 특징들의 제 1 서브세트를 추출하는 실행 시간의 대략 2 배이다. 막대 도표 (2800) 는 테스트 이미지 2 의 감지 데이터로부터 특징들의 제 2 서브세트를 추출하는 것과 연관된 대략 2 초의 실행 시간에 대응하는 막대 (2814) 를 포함한다. 막대 도표 (2800) 는 테스트 이미지 3 의 감지 데이터로부터 특징들의 제 2 서브세트를 추출하는 것과 연관된 대략 2 초의 실행 시간에 대응하는 막대 (2824) 를 포함한다. 막대 도표 (2800) 는 테스트 이미지 4 의 감지 데이터로부터 특징들의 제 2 서브세트를 추출하는 것과 연관된 대략 2 초의 실행 시간에 대응하는 막대 (2834) 를 포함한다.
막대 도표 (2800) 는 테스트 이미지 1 의 감지 데이터로부터 특징들의 제 3 서브세트를 추출하는 것과 연관된 대략 0.5 초의 실행 시간에 대응하는 막대 (2806) 를 포함한다. 막대 도표 (2800) 는 테스트 이미지 2 의 감지 데이터로부터 특징들의 제 3 서브세트를 추출하는 것과 연관된 대략 3 초의 실행 시간에 대응하는 막대 (2816) 를 포함한다. 막대 도표 (2800) 는 테스트 이미지 3 의 감지 데이터로부터 특징들의 제 3 서브세트를 추출하는 것과 연관된 대략 3 초의 실행 시간에 대응하는 막대 (2826) 를 포함한다. 막대 도표 (2800) 는 테스트 이미지 4 의 감지 데이터로부터 특징들의 제 3 서브세트를 추출하는 것과 연관된 대략 3 초의 실행 시간에 대응하는 막대 (2836) 를 포함한다.
막대 도표 (2800) 는 테스트 이미지 1 의 감지 데이터로부터 특징들의 제 4 서브세트를 추출하는 것과 연관된 대략 3 초의 실행 시간에 대응하는 막대 (2808) 를 포함한다. 막대 도표 (2800) 는 테스트 이미지 2 의 감지 데이터로부터 특징들의 제 4 서브세트를 추출하는 것과 연관된 대략 36 초의 실행 시간에 대응하는 막대 (2818) 를 포함한다. 막대 도표 (2800) 는 테스트 이미지 3 의 감지 데이터로부터 특징들의 제 4 서브세트를 추출하는 것과 연관된 대략 33 초의 실행 시간에 대응하는 막대 (2828) 를 포함한다. 막대 도표 (2800) 는 테스트 이미지 4 의 감지 데이터로부터 특징들의 제 4 서브세트를 추출하는 것과 연관된 대략 38 초의 실행 시간에 대응하는 막대 (2838) 를 포함한다.
이에 따라, 특징들의 서브세트를 추출하는 것과 연관된 실행 시간들은 서브세트 내에 포함된 디스크립터들에 기초하여 변동된다. 특히, 테스트 이미지들 2 내지 4 의 감지 데이터로부터 테스트 특징 6 을 추출하는 것은 대략 30 초가 걸린다. 이에 따라, 특징들의 일부의 서브세트들은 각각의 이미지에 대해 추출되지 않을 수도 있으므로, 신뢰 레벨들에 기초하여 특징들의 서브세트들을 증분식으로 (incremently) 추출하는 것은 디바이스 (1402) 의 자원들을 절감할 수도 있다.
도 29 를 참조하면, 도 28 의 테스트 이미지들의 특징들의 다양한 서브세트들을 추출하는 것과 연관된 메모리 사용의 예를 예시하는 막대 도표가 도시되어 있고, 2900 으로 일반적으로 지정되어 있다. 특정 실시형태에서, 특징들의 다양한 서브세트들은 도 14 의 특징 세트 추출기 (1414) 에 의해 추출될 수도 있다.
막대 도표 (2900) 는 특징들의 제 1 서브세트를 추출하는 것과 연관된 대략 100 킬로바이트 (kilobyte) 의 메모리 사용을 표시하는 막대 (2902), 특징들의 제 2 서브세트를 추출하는 것과 연관된 대략 140 킬로바이트의 메모리 사용을 표시하는 막대 (2904), 특징들의 제 3 서브세트를 추출하는 것과 연관된 대략 200 킬로바이트의 메모리 사용을 표시하는 막대 (2906), 및 특징들의 제 4 서브세트를 추출하는 것과 연관된 대략 280 킬로바이트의 메모리 사용을 표시하는 막대 (2908) 를 포함한다. 특정 실시형태에서, 메모리 사용은 특징 세트 추출기 (1414) 에 의해 이용된 메모리 (308) 의 양을 표시할 수도 있다.
이에 따라, 특징들의 서브세트를 추출하는 것과 연관된 메모리 사용은 서브세트 내에 포함된 디스크립터들에 기초하여 변동된다. 특히, 감지 데이터로부터 테스트 특징 4, 테스트 특징 5, 및 테스트 특징 6 을 추출하는 것은 대략 180 킬로바이트만큼 메모리 사용을 증가시킨다. 이에 따라, 특징들의 일부의 서브세트들은 각각의 이미지에 대해 추출되지 않을 수도 있으므로, 신뢰 레벨들에 기초하여 특징들의 서브세트들을 증분식으로 추출하는 것은 디바이스 (1402) 의 자원들을 절감할 수도 있다.
도 30 을 참조하면, 이미지 통계에 기초하여 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키는 방법 (3000) 의 특정 실시형태의 플로우차트가 도시되어 있다. 예시적인 실시형태에서, 방법 (3000) 은 도 1 내지 도 29 에 대하여 설명된 시스템들, 디바이스들, 및 기법들 중의 적어도 하나를 이용하여 수행될 수도 있다.
방법 (3000) 은 3002 에서, 이미지 데이터의 제 1 프레임에 대한 제 1 이미지 통계를 생성하는 것을 포함한다. 예를 들어, 도 3 에서, 카메라 (302) 는 제 1 시간에서 도 1 의 제 1 프레임 (102) 을 캡처할 수도 있고, 제 1 프로세싱 디바이스 (304) 는 제 1 프레임 (102) 에 대한 제 1 이미지 통계를 생성할 수도 있다. 제 1 프로세싱 디바이스 (304) 는 제 1 이미지 통계를 메모리 (306) 에 제공할 수도 있다.
3004 에서, 제 2 이미지 통계는 이미지 데이터의 제 2 프레임에 대해 생성될 수도 있다. 예를 들어, 도 3 에서, 제 1 프레임 (102) 을 캡처한 후, 카메라 (302) 는 제 2 시간에서 도 1 의 제 2 프레임 (104) 을 캡처할 수도 있고, 제 1 프로세싱 디바이스 (304) 는 제 2 프레임 (104) 에 대한 제 2 이미지 통계를 생성할 수도 있다. 제 1 프로세싱 디바이스 (304) 는 제 2 이미지 통계를 메모리 (306) 에 제공할 수도 있다. 추가적으로, 제 1 프로세싱 디바이스 (304) 는 제 2 프레임 (104) 및 제 2 이미지 통계를 통계 프로세싱 디바이스 (108) 에 제공할 수도 있다.
3006 에서, 제 2 이미지 통계 및 제 1 이미지 통계 사이의 제 1 변경량이 임계점을 충족시키는지 여부의 결정이 행해질 수도 있다. 예를 들어, 도 3 에서, 통계 프로세싱 디바이스 (108) 는 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱을 위하여 제 2 프레임 (104) 을 제 2 프로세싱 디바이스 (310) 에 제공할 것인지 여부를 결정하기 위하여, 제 2 이미지 통계를 제 1 이미지 통계와 비교할 수도 있다. 예를 들어, 통계 프로세싱 디바이스 (108) 는 제 2 이미지 통계 및 제 1 이미지 통계 사이의 제 1 변경량이 임계점을 충족시키는지 여부를 결정할 수도 있다.
3008 에서는, 제 1 변경량이 임계점을 충족시킨다는 결정에 응답하여, 제 2 프레임에 대한 애플리케이션-특정 프로세싱이 수행될 수도 있다. 예를 들어, 도 3 에서, 변경량이 임계점을 충족시킬 경우, 통계 프로세싱 디바이스 (108) 는 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱을 위하여 제 2 프레임 (104) 을 제 2 프로세싱 디바이스 (310) 에 제공할 수도 있다.
특정 실시형태에서, 방법 (3000) 은 제 1 변경량이 임계점을 충족시키지 않는다는 결정에 응답하여 제 2 프레임에 대한 애플리케이션-특정 프로세싱을 우회시키거나 포기하는 것을 포함할 수도 있다. 예를 들어, 도 3 에서, 변경량이 임계점을 충족시키지 않을 경우, 통계 프로세싱 디바이스 (108) 는 전력을 절감하고 제 2 프레임 (104) 의 애플리케이션-특정 프로세싱을 우회시킬 것을 결정할 수도 있다.
특정 실시형태에서, 방법 (3000) 은 제 2 프레임의 애플리케이션-특정 프로세싱을 우회시킨 후에 이미지 데이터의 제 3 프레임에 대한 제 3 이미지 통계를 생성하는 것을 포함할 수도 있다. 예를 들어, 도 3 에서, 제 2 프레임 (104) 을 캡처한 후, 카메라 (302) 는 제 3 시간에서 제 3 프레임 (106) 을 캡처할 수도 있고, 제 1 프로세싱 디바이스 (304) 는 제 3 프레임 (106) 에 대한 제 3 이미지 통계를 생성할 수도 있다. 제 1 프로세싱 디바이스 (304) 는 제 3 이미지 통계를 메모리 (306) 에 제공할 수도 있다. 이 예에서, 방법 (3000) 은 제 3 이미지 통계 및 제 2 이미지 통계 사이의 제 2 변경량이 임계점을 충족시키는지 여부를 결정하는 것을 포함할 수도 있다. 예를 들어, 도 3 에서, 통계 프로세싱 디바이스 (108) 가 제 2 프레임 (104) 에 대한 애플리케이션-특정 프로세싱을 우회시키거나 포기할 것을 결정하였을 경우, 통계 프로세싱 디바이스 (108) 는 제 3 프레임 (106) 에 대한 애플리케이션-특정 프로세싱을 수행할 것인지 여부를 결정하기 위하여 제 2 이미지 통계를 제 2 이미지 통계 (또는 제 1 이미지 통계) 와 비교할 수도 있다.
특정 실시형태에서, 방법 (3000) 은 제 2 변경량이 임계점을 충족시킨다는 결정에 응답하여 제 3 프레임에 대한 애플리케이션-특정 프로세싱을 수행하는 것을 포함할 수도 있다. 예를 들어, 도 3 에서, 제 2 변경량이 임계점을 충족시킬 경우, 통계 프로세싱 디바이스 (108) 는 제 3 프레임 (106) 에 대한 애플리케이션-특정 프로세싱을 위하여 제 3 프레임 (106) 을 제 2 프로세싱 디바이스 (310) 에 제공할 수도 있다.
이전의 프레임과 유사한 이미지 통계를 가지는 특정 프레임에 대한 애플리케이션-특정 프로세싱을 우회시키거나 포기하는 것은 전자 디바이스들에서 전력을 절감할 수도 있다. 예를 들어, 애플리케이션-특정 프로세싱은 범용 프로세서 또는 그래픽 프로세서와 같은, 프로세싱 시스템 내의 고전력 디바이스들을 사용할 수도 있다. 각각의 프레임의 통계를 생성 및/또는 평가하기 위하여, 통계 프로세싱 디바이스 (108) 및 제 1 프로세싱 디바이스 (304) 와 같은 저전력 디바이스들 (예컨대, 디지털 신호 프로세서, 애플리케이션-특정 집적 회로 등) 을 이용함으로써, 특정 프레임들이 실질적으로 동일하고 애플리케이션-특정 프로세싱은 동일한 프레임들 중의 하나에 대해 수행되기만 할 필요가 있다는 결정이 행해질 수도 있다. 그 결과, 동일하거나 유사한 프레임들에 대한 애플리케이션-특정 프로세싱을 포기함으로써, 전력이 절감될 수도 있다.
도 31 을 참조하면, 이미지의 맥락을 식별하는 방법의 특정한 예시적인 실시형태의 플로우차트가 도시되어 있고, 3100 으로 일반적으로 지정되어 있다. 방법 (3100) 은 도 1 내지 도 29 에 대하여 설명된 시스템들, 디바이스들, 및 기법들 중의 적어도 하나를 이용하여 수행될 수도 있다.
방법 (3100) 은 3102 에서, 이미지 센서로부터 감지 데이터를 이동 디바이스에서 수신하는 것을 포함할 수도 있다. 감지 데이터는 이미지와 관련될 수도 있다. 예를 들어, 도 14 의 디바이스 (1402) 는 제 1 이미지 센서 (1404) 로부터 감지 데이터 (예컨대, 제 1 감지 데이터 (1470)) 를 수신할 수도 있다. 제 1 감지 데이터 (1470) 는 도 1 의 제 2 프레임 (104) 과 관련될 수도 있다.
방법 (1300) 은 또한, 1304 에서, 감지 데이터에 기초하여 이미지의 제 1 이미지 통계를 생성하는 것을 포함할 수도 있다. 제 2 이미지의 제 1 이미지 통계 및 제 2 이미지 통계 사이의 변경량이 변경 임계점을 충족시킬 때, 추출 기준이 충족될 수도 있다. 예를 들어, 도 1 의 통계 프로세싱 디바이스 (108) 는 도 1 을 참조하여 설명된 바와 같이, 제 2 프레임 (104) 에 대응하는 제 1 이미지 통계를 생성할 수도 있고, 제 1 프레임 (102) 에 대응하는 제 2 이미지 통계를 생성할 수도 있다. 도 14 를 참조하여 더욱 설명된 바와 같이, 제 1 이미지 통계 및 제 2 이미지 통계 사이의 변경량이 변경 임계점을 충족시킬 때, 추출 기준이 충족될 수도 있다.
방법 (3100) 은 3106 에서, 추출 기준이 충족되는 것에 기초하여 감지 데이터로부터 이미지의 특징들의 제 1 서브세트를 추출하는 것을 더 포함할 수도 있다. 예를 들어, 도 14 의 특징 세트 추출기 (1414) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 추출 기준이 충족되는 것에 기초하여 제 1 감지 데이터 (1470) 로부터 특징들의 제 1 서브세트 (예컨대, 도 14 의 특징들의 서브세트 (들) (1442) 의 첫 번째) 를 추출할 수도 있다.
도 31 의 방법 (3100) 은 필드-프로그래밍가능한 게이트 어레이 (field-programmable gate array; FPGA) 디바이스, 애플리케이션-특정 집적 회로 (application-specific integrated circuit; ASIC), 프로세싱 유닛 예컨대, 중앙 프로세싱 유닛 (central processing unit; CPU), 디지털 신호 프로세서 (digital signal processor; DSP), 제어기, 또 다른 하드웨어 디바이스, 펌웨어 디바이스, 또는 이들의 임의의 조합에 의해 구현될 수도 있다. 일 예로서, 도 31 의 방법 (3100) 은 명령들을 실행하는 프로세서에 의해 수행될 수 있다.
이에 따라, 방법 (3100) 은 이미지 맥락 식별을 가능하게 할 수도 있다. 추출 기준에 기초하여 특징들의 서브세트들을 추출하는 것은 어떤 상황들에서 이미지의 특징들의 추출을 방지할 수도 있음으로써, 디바이스 (1402) 의 자원들을 절감할 수도 있다.
도 32 를 참조하면, 이미지의 맥락을 식별하는 방법의 특정한 예시적인 실시형태의 플로우차트가 도시되어 있고, 3200 으로 일반적으로 지정되어 있다. 방법 (3200) 은 도 1 내지 도 29 에 대하여 설명된 시스템들, 디바이스들, 및 기법들 중의 적어도 하나를 이용하여 수행될 수도 있다. 특정 실시형태에서, 방법 (3200) 은 도 31 의 3106 으로부터 진행할 수도 있다.
방법 (3200) 은 3202 에서, 제 1 타임스탬프가 제 2 타임스탬프의 임계 기간 내에 있는 것에 기초하여 특징들의 제 1 클러스터링된 서브세트를 생성하는 것을 포함할 수도 있다. 제 1 타임스탬프는 이미지 (예컨대, 도 1 의 제 2 프레임 (104)) 와 연관된다. 제 2 타임스탬프는 제 2 이미지와 연관된다. 특징들의 제 1 클러스터링된 서브세트는 제 2 이미지의 특징들의 제 1 서브세트, 특징들의 제 2 서브세트, 또는 양자를 포함한다. 예를 들어, 도 14 의 특징 세트 클러스터러 (1416) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 제 1 타임스탬프 (예컨대, 타임스탬프 (들) (1494) 의 첫 번째) 가 제 2 타임스탬프 (예컨대, 타임스탬프 (들) (1494) 의 두 번째) 의 임계 이미지 캡처 기간 (예컨대, 임계 기간 (들) (1480)) 내에 있는 것에 기초하여 특징들의 제 1 클러스터링된 서브세트 (예컨대, 도 14 의 특징들의 클러스터링된 서브세트 (들) (1476)) 를 생성할 수도 있다.
방법 (3200) 은 또한, 3204 에서, 제 1 분류 모델에 기초하여 특징들의 제 1 클러스터링된 서브세트를 분류함으로써 특징들의 클러스터링된 서브세트를 생성하는 것을 포함할 수도 있다. 예를 들어, 도 14 의 특징 세트 분류기 (1418) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 제 1 분류 모델 (예컨대, 분류 모델 (들) (1428) 중의 첫 번째) 에 기초하여 특징들의 제 1 클러스터링된 서브세트를 분류함으로써 특징들의 분류된 서브세트 (예컨대, 특징들의 분류된 서브세트 (들) (1474)) 를 생성할 수도 있다.
방법 (3200) 은 3206 에서, 중간 맥락 데이터의 신뢰 레벨이 임계 신뢰 레벨을 충족시키지 않는 것으로 결정하는 것에 기초하여, 특징들의 제 1 서브세트를 추출하는 것과 연관된 신뢰 레벨이 임계 신뢰 레벨을 충족시키지 않는 것으로 결정하는 것을 더 포함할 수도 있다. 중간 맥락 데이터는 특징들의 제 1 서브세트, 특징들의 제 1 클러스터링된 서브세트, 또는 특징들의 분류된 서브세트에 대응할 수도 있다. 예를 들어, 멀티미디어 컨텐츠 분류기 (1412) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 중간 맥락 데이터 (1492) 의 신뢰 레벨이 임계 신뢰 레벨 (1482) 을 충족시키지 않는 것으로 결정하는 것에 기초하여, 특징들의 제 1 서브세트를 추출하는 것과 연관된 신뢰 레벨이 임계 신뢰 레벨 (1482) 을 충족시키지 않는 것으로 결정할 수도 있다.
방법 (3200) 은 또한, 3208 에서, 특징들의 제 1 서브세트가 분석 기준을 충족시키는 것에 기초하여 감지 데이터로부터 이미지의 특징들의 제 2 서브세트를 추출하는 것을 포함할 수도 있다. 분석 기준은 특징들의 제 1 서브세트를 추출하는 것과 연관된 신뢰 레벨에 기초하고 있다. 예를 들어, 도 14 의 특징 세트 추출기 (1414) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 특징들의 제 1 서브세트가 분석 기준을 충족시키는 것에 기초하여, 제 1 감지 데이터 (1470) 로부터 특징들의 제 2 서브세트 (예컨대, 특징들의 서브세트 (들) (1442) 의 두 번째) 를 추출할 수도 있다. 도 14 를 참조하여 더욱 설명된 바와 같이, 분석 기준은 특징들의 제 1 서브세트를 추출하는 것과 연관된 신뢰 레벨에 기초할 수도 있다.
방법 (3200) 은, 3210 에서, 제 1 타임 스탬프 및 제 2 타임 스탬프에 기초하여 특징들의 제 2 서브세트를 클러스터링함으로써 특징들의 제 2 클러스터링된 서브세트를 생성하는 것을 더 포함할 수도 있다. 예를 들어, 도 14 의 특징 세트 추출기 (1416) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 제 1 타임스탬프 및 제 2 타임스탬프에 기초하여 특징들의 제 2 서브세트를 클러스터링함으로써 특징들의 제 2 클러스터링된 서브세트 (예컨대, 특징들의 클러스터링된 서브세트 (들) (1476) 의 두 번째) 를 생성할 수도 있다.
방법 (3200) 은 또한, 3212 에서, 특징들의 제 2 서브세트에 적어도 부분적으로 기초하여 이미지의 맥락을 표시하는 맥락 데이터를 생성하는 것을 포함할 수도 있다. 제 2 분류 모델에 기초하여 특징들의 제 1 클러스터링된 서브세트, 특징들의 제 2 클러스터링된 서브세트, 또는 양자를 분류함으로써, 맥락 데이터가 생성될 수도 있다. 예를 들어, 멀티미디어 컨텐츠 분류기 (1412) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 특징들의 제 2 서브세트에 적어도 부분적으로 기초하여 이미지의 맥락을 표시하는 맥락 데이터 (1490) 를 생성할 수도 있다.
도 32 의 방법 (3200) 은 필드-프로그래밍가능한 게이트 어레이 (field-programmable gate array; FPGA) 디바이스, 애플리케이션-특정 집적 회로 (application-specific integrated circuit; ASIC), 프로세싱 유닛 예컨대, 중앙 프로세싱 유닛 (central processing unit; CPU), 디지털 신호 프로세서 (digital signal processor; DSP), 제어기, 또 다른 하드웨어 디바이스, 펌웨어 디바이스, 또는 이들의 임의의 조합에 의해 구현될 수도 있다. 일 예로서, 도 32 의 방법 (3200) 은 명령들을 실행하는 프로세서에 의해 수행될 수 있다.
이에 따라, 방법 (3200) 은 이미지 맥락 식별을 가능하게 할 수도 있다. 연관된 신뢰 레벨들에 기초하여 특징들의 서브세트들을 분석 (예컨대, 추출, 클러스터링, 및 분류) 하는 것은 이미지의 모든 특징들보다 더 적은 추출로 귀착될 수도 있음으로써, 디바이스 (1402) 의 자원들을 절감할 수도 있다.
도 33 을 참조하면, 이미지의 맥락을 식별하는 방법의 특정 실시형태의 플로우차트가 도시되어 있고, 3300 으로 일반적으로 지정되어 있다. 방법 (3300) 은 도 1 내지 도 29 에 대하여 설명된 시스템들, 디바이스들, 및 기법들 중의 적어도 하나를 이용하여 수행될 수도 있다.
방법 (3300) 은 3302 에서, 이미지 센서로부터 감지 데이터를 이동 디바이스에서 수신하는 것을 포함할 수도 있다. 감지 데이터는 이미지와 관련된다. 예를 들어, 도 14 의 디바이스 (1402) 는 제 1 이미지 센서 (1404) 로부터 감지 데이터 (예컨대, 제 1 감지 데이터 (1470)) 를 수신할 수도 있다. 제 1 감지 데이터 (1470) 는 도 1 의 제 2 프레임 (104) 과 관련될 수도 있다.
방법 (3300) 은 또한, 감지 데이터에 기초하여 이미지의 제 1 이미지 통계를 생성하는 것을 포함할 수도 있다. 추출 기준은 제 1 이미지 통계에 적어도 기본적으로 기초한다. 제 1 이미지 통계는, 활동 인식, 사람 인식, 물체 인식, 로케이션 인식, 또는 제스처 인식 중의 적어도 하나를 포함하는 애플리케이션-특정 프로세싱에 기초하여 생성된다. 예를 들어, 도 3 의 통계 프로세싱 디바이스 (108) 는 도 14 를 참조하여 설명된 바와 같이, 제 1 감지 데이터 (1470) 에 기초하여 제 2 프레임 (104) 의 제 1 이미지 통계를 생성할 수도 있고 추출 기준은 제 1 이미지 통계에 적어도 부분적으로 기초할 수도 있다. 도 14 를 참조하여 설명된 바와 같이, 제 1 이미지 통계는 활동 인식, 사람 인식, 물체 인식, 로케이션 인식, 또는 제스처 인식 중의 적어도 하나를 포함하는 애플리케이션-특정 프로세싱에 기초하여 생성될 수도 있다.
방법 (3300) 은 3306 에서, 추출 기준이 충족되는 것에 기초하여 감지 데이터로부터 특징들의 제 1 서브세트를 추출하는 것을 더 포함할 수도 있다. 특징들의 제 1 서브세트는 선택 기준에 기초하여 선택될 수도 있다. 예를 들어, 도 14 의 특징 세트 추출기 (1414) 는 도 14 를 참조하여 설명된 바와 같이, 추출 기준이 충족되는 것에 기초하여 제 1 감지 데이터 (1470) 로부터 특징들의 제 1 서브세트 (예컨대, 도 14 의 특징들의 서브세트 (들) (1442)) 를 추출할 수도 있다. 특징 세트 추출기 (1414) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 선택 기준 (예컨대, 도 14 의 선택 기준들 (1438)) 에 기초하여 특징들의 제 1 서브세트를 선택할 수도 있다.
방법 (3300) 은 3308 에서, 감지 데이터가 장면 변경을 표시하는 것으로 결정하는 것에 응답하여 제 1 전력 도메인을 활성화하는 것을 더 포함할 수도 있다. 예를 들어, 도 14 의 멀티미디어 컨텐츠 분류기 (1412) 는 도 23 을 참조하여 더욱 설명된 바와 같이, 제 1 감지 데이터 (1470) 가 장면 변경을 표시하는 것으로 결정하는 것에 응답하여 디바이스 (1402) 의 제 1 전력 도메인을 활성화할 수도 있다.
방법 (3300) 은 또한, 3310 에서, 감지 데이터가 이미지의 선예도가 임계 선예도 레벨을 충족시키는 것을 표시하는 것으로 결정하는 것에 응답하여 제 2 전력 도메인을 활성화하는 것을 포함할 수도 있다. 예를 들어, 도 14 의 멀티미디어 컨텐츠 분류기 (1412) 는 도 24 를 참조하여 더욱 설명된 바와 같이, 제 1 감지 데이터 (1470) 가 이미지의 선예도가 임계 선예도 레벨을 충족시키는 것을 표시하는 것으로 결정하는 것에 응답하여 디바이스 (1402) 의 제 2 전력 도메인을 활성화할 수도 있다.
방법 (3300) 은 3312 에서, 특징들의 제 1 서브세트에 적어도 부분적으로 기초하여 이미지의 맥락을 표시하는 맥락 데이터를 생성하는 것을 더 포함할 수도 있다. 예를 들어, 도 14 의 멀티미디어 컨텐츠 분류기 (1412) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 특징들의 제 1 서브세트에 적어도 부분적으로 기초하여 이미지의 맥락을 표시하는 맥락 데이터 (1490) 를 생성할 수도 있다.
도 33 의 방법 (3300) 은 필드-프로그래밍가능한 게이트 어레이 (FPGA) 디바이스, 애플리케이션-특정 집적 회로 (ASIC), 프로세싱 유닛 예컨대, 중앙 프로세싱 유닛 (CPU), 디지털 신호 프로세서 (DSP), 제어기, 또 다른 하드웨어 디바이스, 펌웨어 디바이스, 또는 이들의 임의의 조합에 의해 구현될 수도 있다. 일 예로서, 도 33 의 방법 (3300) 은 명령들을 실행하는 프로세서에 의해 수행될 수 있다.
이에 따라, 방법 (3300) 은 이미지 맥락 식별을 가능하게 할 수도 있다. 이미지가 장면 변경에 대응하는 것, 이미지가 블러링되지 않는 것, 또는 양자로 결정하는 것에 응답하여 이미지의 특징들의 서브세트들을 분석하는 것은 이미지들의 선택적인 분석으로 귀착될 수도 있음으로써, 디바이스 (1402) 의 자원들을 절감할 수도 있다. 또한, 디바이스 (1402) 의 제 1 전력 도메인, 제 2 전력 도메인, 또는 양자를 선택적으로 활성화하는 것은 또한, 디바이스 (1402) 의 자원들을 절감할 수도 있다.
도 34 를 참조하면, 이미지의 맥락을 식별하는 방법의 특정한 예시적인 실시형태의 플로우차트가 도시되어 있고, 3400 으로 일반적으로 지정되어 있다.
방법 (3400) 은 3402 에서, 제 1 이미지 센서로부터 제 1 감지 데이터를 이동 디바이스에서 수신하는 것을 포함할 수도 있다. 제 1 감지 데이터는 제 1 이미지와 관련될 수도 있다. 예를 들어, 도 14 의 디바이스 (1402) 는 제 1 이미지 센서 (1404) 로부터 감지 데이터 (예컨대, 제 1 감지 데이터 (1470)) 를 수신할 수도 있다. 제 1 감지 데이터 (1470) 는 도 1 의 제 1 프레임 (102) 과 관련될 수도 있다.
방법 (3400) 은 또한, 3404 에서, 감지 데이터에 기초하여 제 1 이미지의 제 1 이미지 통계를 생성하는 것을 포함할 수도 있다. 제 1 이미지 통계는 애플리케이션-특정 프로세싱에 기초하여 생성된다. 예를 들어, 통계 프로세싱 디바이스 (108) 는 도 14 를 참조하여 설명된 바와 같이, 제 1 감지 데이터 (1470) 에 기초하여 도 1 의 제 1 프레임 (102) 의 제 1 이미지 통계를 생성할 수도 있다. 도 14 를 참조하여 설명된 바와 같이, 제 1 이미지 통계는 애플리케이션-특정 프로세싱에 기초하여 생성될 수도 있다.
방법 (3400) 은 3406 에서, 제 1 감지 데이터로부터 제 1 이미지의 특징들의 제 1 서브세트를 추출하는 것을 더 포함할 수도 있다. 예를 들어, 도 14 의 특징 세트 추출기 (1414) 는 제 1 감지 데이터 (1470) 로부터 특징들의 제 1 서브세트 (예컨대, 도 14 의 특징들의 서브세트 (들) (1442) 중의 첫 번째) 를 추출할 수도 있다.
방법 (3400) 은 또한, 3408 에서, 특징들의 제 1 서브세트가 분석 기준을 충족시키는 것에 기초하여 제 2 이미지 센서로부터 제 2 감지 데이터를 요청하는 것을 포함할 수도 있다. 예를 들어, 도 14 의 멀티미디어 컨텐츠 분류기 (1412) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 특징들의 제 1 서브세트를 추출하는 것과 연관된 신뢰 레벨이 임계 신뢰 레벨 (1482) 을 충족시키지 않는 것으로 결정하는 것에 응답하여, 제 2 이미지 캡처 요청 (예컨대, 제 2 이미지 캡처 요청 (1426)) 을 N 번째 이미지 센서 (1440) 로 전송할 수도 있다.
방법 (3400) 은 3410 에서, 제 2 이미지 센서로부터 제 2 이미지 데이터를 수신하는 것을 더 포함할 수도 있다. 제 2 감지 데이터는 제 2 이미지와 관련될 수도 있다. 예를 들어, 도 14 의 멀티미디어 컨텐츠 분류기 (1412) 는 N 번째 이미지 센서 (1440) 로부터 제 2 감지 데이터 (예컨대, 제 2 감지 데이터 (1424)) 를 수신할 수도 있다. 제 2 감지 데이터 (1424) 는 도 1 의 제 2 프레임 (104) 과 관련될 수도 있다.
방법 (3400) 은 또한, 3412 에서, 제 2 감지 데이터에 기초하여 제 2 이미지의 제 2 이미지 통계를 생성하는 것을 포함할 수도 있다. 제 2 이미지 통계는 애플리케이션-특정 프로세싱에 기초하여 생성된다. 예를 들어, 통계 프로세싱 디바이스 (108) 는 도 14 를 참조하여 설명된 바와 같이, 제 2 감지 데이터 (1424) 에 기초하여 도 1 의 제 2 프레임 (104) 의 제 2 이미지 통계를 생성할 수도 있다. 도 14 를 참조하여 설명된 바와 같이, 제 2 이미지 통계는 애플리케이션-특정 프로세싱에 기초하여 생성될 수도 있다.
방법 (3400) 은 3414 에서, 제 2 감지 데이터로부터 제 2 이미지의 특징들의 제 2 서브세트를 추출하는 것을 더 포함할 수도 있다. 특징들의 제 2 서브세트는 제 1 이미지 통계 및 제 2 이미지 통계 사이의 변경량이 변경 임계점을 충족시키는 것에 기초하여 추출된다. 예를 들어, 특징 세트 추출기 (1414) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 제 1 이미지 특징 및 제 2 이미지 특징 사이의 변경량이 변경 임계점을 충족시키는 것에 기초하여, 제 2 감지 데이터 (1424) 로부터 특징들의 제 2 서브세트 (예컨대, 특징들의 서브세트 (들) (1442) 의 두 번째) 를 추출할 수도 있다.
방법 (3400) 은 또한, 3416 에서, 특징들의 제 1 서브세트, 특징들의 제 2 서브세트, 또는 양자를 클러스터링함으로써 특징들의 클러스터링된 서브세트를 생성하는 것을 포함할 수도 있다. 예를 들어, 특징 세트 클러스터러 (1416) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 특징들의 제 1 서브세트, 특징들의 제 2 서브세트, 또는 양자를 클러스터링함으로써 특징들의 클러스터링된 서브세트 (예컨대, 특징들의 클러스터링된 서브세트 (들) (1476)) 를 생성할 수도 있다.
방법 (3400) 은 3418 에서, 특징들의 제 2 서브세트에 적어도 부분적으로 기초하여 제 1 이미지의 맥락을 표시하는 맥락 데이터를 생성하는 것을 더 포함할 수도 있다. 분류 모델에 기초하여 특징들의 클러스터링된 서브세트를 분류함으로써, 맥락 데이터가 생성될 수도 있다. 예를 들어, 도 14 의 멀티미디어 컨텐츠 분류기 (1412) 는 도 14 를 참조하여 더욱 설명된 바와 같이, 특징들의 제 2 서브세트에 적어도 부분적으로 기초하여 맥락 데이터 (1490) 를 생성할 수도 있다.
도 34 의 방법 (3400) 은 필드-프로그래밍가능한 게이트 어레이 (FPGA) 디바이스, 애플리케이션-특정 집적 회로 (ASIC), 프로세싱 유닛 예컨대, 중앙 프로세싱 유닛 (CPU), 디지털 신호 프로세서 (DSP), 제어기, 또 다른 하드웨어 디바이스, 펌웨어 디바이스, 또는 이들의 임의의 조합에 의해 구현될 수도 있다. 일 예로서, 도 34 의 방법 (3400) 은 명령들을 실행하는 프로세서에 의해 수행될 수 있다.
이에 따라, 방법 (3400) 은 이미지 맥락 식별을 가능하게 할 수도 있다. 멀티미디어 컨텐츠 분류기 (1412) 는, 단일 이미지 센서로부터의 감지 데이터와 연관된 신뢰 레벨들이 임계 신뢰 레벨을 충족시키지 않을 때에 다수의 이미지 센서들로부터 감지 데이터를 분석하는 것에 기초하여 이미지의 맥락을 식별할 수도 있다. 단일 이미지 센서로부터 감지 데이터를 분석하는 것은 디바이스 (1402) 의 자원들을 절감할 수도 있는 반면, 다수의 이미지 센서들로부터의 감지 데이터를 분석하는 것은 분석의 결과들과 연관된 신뢰 레벨들을 증가시킬 수도 있다. 후속 이미지로부터의 감지 데이터는, 이전의 이미지 및 후속 이미지 사이에서 변경이 검출될 때에 분석될 수도 있다. 이전의 이미지로부터 충분한 변경 (예컨대, 변경 임계점보다 더 큼) 이 있을 때에 후속 이미지를 분석하지 않음으로써, 디바이스 (1402) 의 자원들이 절감될 수도 있다.
도 35 를 참조하면, 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키는 방법 (3500) 의 특정한 예시적인 실시형태가 도시되어 있다. 방법 (3500) 은 도 1 내지 도 29 에 대하여 설명된 시스템들, 디바이스들, 및 기법들 중의 적어도 하나를 이용하여 수행될 수도 있다.
방법 (3500) 은 3502 에서, 센서에 의해 캡처된 제 1 센서 데이터 및 센서에 의해 캡처된 제 2 센서 데이터 사이의 변경량에 기초하여, 변경 검출 회로에서 제어 신호를 생성하는 것을 포함할 수도 있다. 예를 들어, 도 4 를 참조하면, 변경 검출 회로 (414) 는 센서 (402) 에 의해 캡처된 제 1 센서 데이터 (430) 및 제 2 센서 (402) 에 의해 캡처된 제 2 센서 데이터 (430) 사이의 변경량에 기초하여 제어 신호를 생성할 수도 있다. 변경 검출 회로 (414) 는 제 1 프로세싱 경로 (408) 내에 포함될 수도 있다.
3504 에서, 제 2 센서 데이터는 제어 신호에 기초하여 컴퓨터 비전 애플리케이션-특정 프로세싱을 위하여 제 2 프로세싱 경로에 제공될 수도 있다. 예를 들어, 도 4 를 참조하면, 변경 검출 회로 (414) 는 제 1 감지 데이터 (430) 및 제 2 감지 데이터 (430) 사이의 차이를 표시하는 제어 신호에 기초하여 컴퓨터 비전 애플리케이션-특정 프로세싱을 위하여 제 2 센서 데이터 (430) 를 제 2 프로세싱 경로 (410) 의 애플리케이션 프로세서 (418) 에 제공할 수도 있다. 대안적인 실시형태들 (예컨대, 도 5 내지 도 6) 에서, 제어 신호는 선택 회로 (예컨대, 멀티플렉서) 에 제공된 피드백 신호일 수도 있고, 제 2 센서 데이터는 선택 회로를 통해 애플리케이션 프로세서 (예컨대, 애플리케이션 프로세서 (518)) 에 제공될 수도 있다.
방법 (3500) 은 이전의 프레임과 유사한 특정 프레임에 대한 컴퓨터 비전 애플리케이션-특정 프로세싱을 우회시킴으로써 전력 소비를 감소시킬 수도 있다. 예를 들어, 변경 검출 회로 (414) 는 현재의 프레임 및 이전의 프레임 사이의 비교에 기초하여 애플리케이션 프로세서 (418) 를 활성화 (예컨대, 웨이크 업) 할 것인지 여부를 (제어 신호 (416) 를 통해) 표시할 수도 있다. 변경 검출 회로 (414) 가 현재의 프레임 및 이전의 프레임 사이의 차이들이 임계점 (예컨대, 변경 임계점) 을 충족시키지 않는 것으로 결정할 경우, 변경 검출 회로 (414) 는 전력을 절감하기 위하여 애플리케이션 프로세서 (418) 를 비활성화할 것 (예컨대, 애플리케이션 프로세서 (418) 를 슬립 상태에서 유지함) 을 결정할 수도 있다.
도 36 을 참조하면, 이동 디바이스의 예시적인 실시형태의 도면이 도시되어 있고, 3600 으로 일반적으로 지정되어 있다. 이동 디바이스 (3600) 는 상시-온 카메라를 포함할 수도 있고 및/또는 상시-온 카메라와 통신가능하게 결합될 수도 있다. 특정 실시형태에서, 이동 디바이스 (3600) 는 도 12 의 이동 디바이스들 (1200) 중의 하나 이상에 대응할 수도 있다. 예시적인 실시형태에서, 이동 디바이스 (3600) 는 도 30 내지 도 35 의 방법들 (3000 내지 3500) 또는 이들의 임의의 조합에 따라 동작할 수도 있다.
도 16 은 적절하게 사용될 수도 있는 다양한 컴포넌트들, 임의의 것 또는 전부의 일반화된 예시를 제공하기 위한 것이라는 것에 주목해야 한다. 또한, 도 36 에서 도시된 이동 디바이스 (3600) 의 하드웨어 및/또는 소프트웨어 컴포넌트들은 맥락 결정 엔진 (1380), 센서들, 및 다른 컴포넌트들과 같은, 도 13 에서 예시된 컴포넌트들 중의 하나 이상을 구현하도록 구현될 수도 있다.
도 36 에서 도시된 컴포넌트들은 단일 이동 디바이스로 국소화될 수도 있고, 및/또는 상이한 물리적 로케이션들에서 배치될 수도 있는 다양한 네트워크화된 디바이스들 사이에서 분산될 수도 있다. 예를 들어, 일부의 실시형태들은 사용자의 신체 상에 또는 그 근처의 다양한 로케이션들에서 분산된 카메라 (들) (3643) 및/또는 다른 센서들 (3649) 을 포함할 수도 있다. (사용자의 머리에 착용된) HMD 의 상시-온 카메라는 예를 들어, 사용자의 포켓 내의 이동 전화와 통신가능하게 결합될 수도 있고, 도 36 에서 도시된 컴포넌트들은 희망하는 기능성에 따라, 다양한 방법들 중의 임의의 것으로 HMD 및 이동 전화 사이에 분산될 수도 있다.
이동 디바이스 (3600) 는 버스 (3605) 를 통해 전기적으로 결합될 수도 있는 (또는 이와 다르게, 적절하게 통신할 수도 있는) 하드웨어 엘리먼트들을 포함하는 것으로 도시되어 있다. 하드웨어 엘리먼트들은, 하나 이상의 범용 프로세서들, (디지털 신호 프로세서 (DSP) 들, 그래픽 가속 프로세서들, 애플리케이션 특정 집적 회로 (ASIC) 들, 및/또는 기타 등등과 같은) 하나 이상의 특수-목적 프로세서들, 및/또는 도 30 내지 도 35 의 방법들 (3000 내지 3500) 을 포함하는 본원에서 설명된 방법들 중의 하나 이상을 수행하도록 구성될 수도 있는 다른 프로세싱 구조 또는 수단을 제한 없이 포함할 수도 있는 프로세싱 유닛 (들) (3610) 을 포함할 수도 있다. 이동 디바이스 (3600) 는 또한, 하나 이상의 입력 디바이스들 (3670) (예컨대, 터치 스크린, 터치 패드, 버튼 (들), 다이얼 (들), 스위치 (들), 및/또는 기타 등등), 및 디스플레이, 발광 다이오드 (LED), 스피커들, 및/또는 기타 등등을 제한 없이 포함할 수도 있는 하나 이상의 출력 디바이스들 (3615) 을 포함할 수도 있다.
이동 디바이스 (3600) 는 또한, 모뎀, 네트워크 카드, 적외선 통신 디바이스, 무선 통신 디바이스, 및/또는 (Bluetooth® (Bluetooth SIG, Inc. 의 등록 상표) 디바이스, IEEE 802.11 디바이스, IEEE 802.15.4 디바이스, WiFi 디바이스, WiMax 디바이스, 셀룰러 통신 설비들 등과 같은) 칩셋, 및/또는 기타 등등을 제한 없이 포함할 수도 있는 무선 통신 인터페이스 (3630) 를 포함할 수도 있다. 이동 디바이스 (3600) 로의, 그리고 이동 디바이스 (3600) 로부터의 통신은 또한, 다양한 무선 통신 네트워크들을 이용하여 일부의 실시형태들에서 구현될 수도 있다. 이 네트워크들은 예를 들어, 광역 무선 네트워크 (wide area wireless network; WWAN), 무선 로컬 영역 네트워크 (wireless local area network; WLAN), 무선 개인 영역 네트워크 (wireless personal area network; WPAN), 및 기타 등등을 포함할 수도 있다. 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 네트워크는 롱텀 에볼루션 (Long Term Evolution; LTE), LTE 어드밴스드 (LTE Advanced), 등등을 구현할 수도 있다. LTE, LTE 어드밴스드, GSM 및 W-CDMA 는 "3 세대 파트너십 프로젝트 (3rd Generation Partnership Project)" (3GPP) 라는 명칭의 컨소시엄으로부터의 문서들에서 설명되어 있다. cdma2000 은 "3 세대 파트너십 프로젝트 2 (3rd Generation Partnership Project 2)" (3GPP2) 라는 명칭의 컨소시엄으로부터의 문서들에서 설명되어 있다. 3GPP 및 3GPP2 문서들은 공개적으로 입수가능하다. WLAN 은 또한, IEEE 802.11x 네트워크일 수도 있고, WPAN 은 Bluetooth® (Bluetooth SIG, Inc. 의 등록 상표) 네트워크, IEEE 802.15x, 또는 일부의 다른 타입의 네트워크일 수도 있다. 본원에서 설명된 기법들은 또한, WWAN, WLAN 및/또는 WPAN 의 임의의 조합에 대해 이용될 수도 있다. 무선 통신 인터페이스 (3630) 는 본원에서 설명된 다른 센서들, 시스템들, 및/또는 임의의 다른 전자 디바이스들과 직접적으로 데이터가 교환되는 것을 허용할 수도 있다. 통신은 무선 신호들 (3634) 을 전송 및/또는 수신하는 하나 이상의 무선 통신 안테나 (들) (3632) 을 통해 수행될 수도 있다.
무선 통신 인터페이스 (3630) 는 또한, 이동 디바이스 (3600) 의 로케이션을 결정하기 위하여 사용될 수도 있다. 예를 들어, (무선 음성 및/또는 데이터 통신을 위해 이용된 기지국들 및/또는 다른 시스템들을 포함하는) 액세스 포인트들은 예컨대, 왕복 시간 (round trip time; RTT) 및/또는 수신 신호 강도 표시 (received signal strength indication; RSSI) 측정들에 예를 들어, 기초한 삼변측량-기반 (trilateration-based) 절차들의 구현을 통해 위치 데이터의 독립적인 소스들로서 작용할 수도 있다. 액세스 포인트들은 WWAN 보다 더 작은 지리적 영역들 상에서 통신들을 수행하기 위하여 건물에서 동작하는 WLAN 의 일부일 수도 있다. 또한, 액세스 포인트들은 WiFi 네트워크 (802.11x), 셀룰러 피코네트들 및/또는 펨토셀들, Bluetooth® (Bluetooth SIG, Inc. 의 등록 상표) 네트워크, 및 기타 등등의 일부일 수도 있다. 액세스 포인트들은 또한, 퀄컴 실내 위치확인 시스템 (Qualcomm indoor positioning system; QUIPSTM) 의 일부를 구성할 수도 있다.
이동 전화 (3600) 는 센서 (들) (3640) 을 더 포함할 수도 있다. 본원에서 표시된 바와 같이, 도 2 에서 설명된 센서들에 대응할 수도 있는 센서 (들) (3640) 는 하나 이상의 가속도계 (들) (3641), 자이로스코프 (들) (3642), 자력계 (들) (3644), 및 기타 등등과 같이, 이동 디바이스 (3600) 의 방위 및/또는 모션이 결정될 수도 있는 센서들을 포함할 수도 있다. 이동 디바이스 (3600) 는 도 13 을 참조하여 설명된 바와 같이, 마이크로폰 (들) (1665), 광 센서 (들) (1646), 근접성 센서들, 및 다른 센서들과 같은 다른 센서 (들) (1640) 를 더 포함할 수도 있다. 카메라 (들) (3643) 는 상이한 특징들 (RGB, 적외선, 광각, 어안, 고해상도 등) 을 갖는 임의의 수의 상이한 카메라들을 포함할 수도 있고, 이들 중의 임의의 것 또는 전부는 본원에서 설명된 바와 같은 상시-온 카메라로서 사용될 수도 있다.
이동 디바이스 (3600) 의 실시형태들은 또한, SPS 안테나 (3682) 를 이용하여 하나 이상의 SPS 로부터 신호들 (3684) 을 수신할 수 있는 위성 위치확인 시스템 satellite positioning system; SPS) 수신기 (3680) 를 포함할 수도 있다. SPS 수신기 (3680) 는 도 13 의 위성 위치확인 수신기 (들) (1350) 에 대응할 수도 있고, 이 위성 위치확인 수신기 (들) (1350) 는 이동 디바이스 (3600) 에 관한 로케이션 정보 (예컨대, 좌표들) 뿐만 아니라, 그로부터 유도된 정보 (속력, 가속도 등) 를 제공할 수도 있다. 송신된 위성 신호들 (3684) 은 예를 들어, 칩들의 세트 번호 (set number) 의 반복하는 의사-랜덤 잡음 (pseudo-random noise; PN) 코드로 표기된 신호들을 포함할 수도 있고, 제어국들, 사용자 장비 및/또는 우주선들에 기초하여 지면 상에 위치될 수도 있다. 위성 위치확인 시스템들은, 글로벌 위치확인 시스템 (Global Positioning System; GPS), 갈릴레오 (Galileo), 글로나스 (Glonass), 컴파스 (Compass), 일본 상부의 준-천정 위성 시스템 (Quasi-Zenith Satellite System; QZSS), 인도 상부의 인도 지역 내비게이션 위성 시스템 (Indian Regional Navigational Satellite System; IRNSS), 중국 상부의 바이두 (Beidou) 등과 같은 시스템들, 및/또는 하나 이상의 글로벌 및/또는 지역 내비게이션 위성 시스템들과 연관될 수도 있거나, 또는 이와 다르게, 이와 함께 이용하는 것이 가능하게 될 수도 있는 다양한 증강 시스템들 (예컨대, 위성 기반 증강 시스템 (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) 들 등을 제공하는 증강 시스템 (들) 을 포함할 수도 있다.
이동 디바이스 (3600) 는 메모리 (3660) 를 더 포함할 수도 있다 (및/또는 이와 통신할 수도 있음). 메모리 (3660) 는, 프로그래밍가능할 수도 있고, 플래시-업데이트가능 (flash-updateable) 할 수도 있고, 및/또는 기타 등등일 수도 있는 랜덤 액세스 메모리 ("RAM"), 및/또는 판독-전용 메모리 ("ROM") 와 같은, 로컬 및/또는 네트워크 액세스가능한 저장장치, 디스크 드라이브, 드라이브 어레이, 광학 저장 디바이스, 고체-상태 저장 디바이스를 제한 없이 포함할 수도 있다. 이러한 저장 디바이스들은 다양한 파일 시스템들, 데이터베이스 구조들, 및/또는 기타 등등을 제한 없이 포함하는 임의의 적절한 데이터 저장소들을 구현하도록 구성될 수도 있다.
이동 디바이스 (3600) 의 메모리 (3660) 는 또한, 다양한 실시형태들에 의해 제공된 컴퓨터 프로그램들을 포함할 수도 있고, 및/또는 본원에서 설명된 바와 같은 다른 실시형태들에 의해 제공된, 방법들을 구현하고 및/또는 시스템들을 구성하도록 설계될 수도 있는 하나 이상의 애플리케이션 프로그램들과 같이, 오퍼레이팅 시스템, 디바이스 드라이버들, 실행가능한 라이브러리들, 및/또는 다른 코드를 포함하는 소프트웨어 엘리먼트들 (도시되지 않음) 을 포함할 수도 있다. 단지 예로서, 도 30 내지 도 35 의 방법들에 대하여 설명된 하나 이상의 절차들은 이동 디바이스 (3600) (및/또는 이동 디바이스 (3600) 내의 프로세싱 유닛) (및/또는 위치확인 시스템의 또 다른 디바이스) 에 의해 실행가능한 코드 및/또는 명령들로서 구현될 수도 있다. 일 양태에서, 이러한 코드 및/또는 명령들은 설명된 방법들에 따라 하나 이상의 동작들을 수행하도록 범용 컴퓨터 (또는 다른 디바이스) 를 구성하고 및/또는 적응시키기 위해 이용될 수도 있다.
도 37 을 참조하면, 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키도록 동작가능한 컴포넌트들을 포함하는 무선 디바이스 (3700) 의 블록도가 도시되어 있다. 디바이스 (3700) 는 컴퓨터 비전 애플리케이션들과 연관된 전력 사용을 감소시키도록 동작가능한 프로세서들 (3710) (예컨대, 변경 검출 회로 (414) 및 애플리케이션 프로세서 (418)) 을 포함한다. 프로세서들 (3710) 은 메모리 (3732) 에 결합된다. 특정 실시형태에서, 프로세서들 (3710) 은 도 3 의 프로세싱 시스템 (300), 도 4 의 프로세싱 시스템 (400), 도 5 의 프로세싱 시스템 (500), 도 6 의 프로세싱 시스템 (600), 도 8 의 프로세싱 시스템 (800), 또는 이들의 임의의 조합을 포함할 수도 있다.
도 37 은 또한, 프로세서들 (3710) 및 디스플레이 (3728) 에 결합되는 디스플레이 제어기 (3726) 를 도시한다. 카메라 제어기 (3790) 는 프로세서들 (3710) 및 센서 (402) 에 결합될 수도 있다. 센서 (402) 는 이미지 프레임들 (예컨대, 도 1 의 이미지들 (102 내지 106)) 을 포함하는 비디오 스트림을 캡처하도록 구성될 수도 있다. 코더/디코더 (coder/decoder; CODEC) (3734) 는 또한, 프로세서들 (3710) 에 결합될 수 있다. 스피커 (3736) 및 마이크로폰 (3738) 은 CODEC (3734) 에 결합될 수 있다. 도 37 은 또한, 무선 제어기 (3740) 가 라디오 주파수 (RF) 인터페이스 (3780) 를 통해 프로세서들 (3710) 및 무선 안테나 (3742) 에 결합될 수 있음을 나타낸다.
메모리 (3732) 는 실행가능한 명령들 (3756) 을 포함하는 유형의 비일시적인 프로세서 판독가능 저장 매체 (tangible non-transitory processor-readable storage medium) 일 수도 있다. 명령들 (3756) 은 도 30 내지 도 35 의 방법들 (3000 내지 3500) 중의 임의의 것을 수행하기 위하여 프로세서들 (3710) 과 같은 프로세서, 또는 프로세서들 (3710) 내의 디바이스 (예컨대, 제 1 프로세싱 디바이스 (304), 통계 생성기 (304), 및/또는 제 2 프로세싱 디바이스 (310)) 에 의해 실행될 수도 있다.
특정 실시형태에서, 프로세서들 (3710), 디스플레이 제어기 (3726), 메모리 (3732), CODEC (3734), 및 무선 제어기 (3740) 는 시스템-인-패키지 (system-in-package) 또는 시스템-온-칩 (system-on-chip) 디바이스 (3722) 내에 포함된다. 특정 실시형태에서, 입력 디바이스 (3730) 및 전력 공급 장치 (3744) 는 시스템-온-칩 디바이스 (3722) 에 결합된다. 또한, 특정 실시형태에서는, 도 37 에서 예시된 바와 같이, 디스플레이 (3728), 입력 디바이스 (3730), 카메라 (302), 스피커 (3736), 마이크로폰 (3738), 무선 안테나 (3742), 및 전력 공급 장치 (3744) 가 시스템-온-칩 디바이스 (3722) 의 외부에 있다. 그러나, 디스플레이 (3728), 입력 디바이스 (3730), 카메라 (302), 스피커 (3736), 마이크로폰 (3738), 무선 안테나 (3742), 및 전력 공급 장치 (3744) 의 각각은 인터페이스 또는 제어기와 같은, 시스템-온-칩 디바이스 (3722) 의 컴포넌트에 결합될 수 있다.
설명된 실시형태들과 함께, 이미지 데이터의 제 1 프레임에 대한 제 1 이미지 통계 및 이미지 데이터의 제 2 프레임에 대한 제 2 이미지 통계를 생성하기 위한 수단을 포함하는 장치가 개시되어 있다. 예를 들어, 이미지 통계를 생성하기 위한 수단은 도 3 의 제 1 프로세싱 디바이스 (304), 도 37 의 명령들 (3756) 을 실행하도록 프로그래밍된 프로세서들 (3710), 이미지 통계를 생성하기 위한 하나 이상의 다른 디바이스들, 회로들, 모듈들, 또는 명령들, 또는 이들의 임의의 조합을 포함할 수도 있다.
장치는 또한, 제 2 이미지 통계 및 제 1 이미지 통계 사이의 변경량이 임계점을 충족시키는지 여부를 결정하기 위한 수단을 포함할 수도 있다. 예를 들어, 결정하기 위한 수단은 도 3 의 통계 프로세싱 디바이스 (108), 도 37 의 명령들 (3756) 을 실행하도록 프로그래밍된 프로세서들 (3710), 제 2 이미지 통계 및 제 1 이미지 통계 사이의 제 1 변경량이 임계점을 충족시키는지 여부를 결정하기 위한 하나 이상의 다른 디바이스들, 회로들, 모듈들, 또는 명령들, 또는 이들의 임의의 조합을 포함할 수도 있다.
장치는 또한, 변경량이 임계점을 충족시킨다는 결정에 응답하여 제 2 프레임에 대한 애플리케이션-특정 프로세싱을 수행하기 위한 수단을 포함할 수도 있다. 예를 들어, 애플리케이션-특정 프로세싱을 수행하기 위한 수단은 도 3 의 제 2 프로세싱 디바이스 (310), 도 37 의 명령들 (3756) 을 실행하도록 프로그래밍된 프로세서들 (3710), 애플리케이션-특정 프로세싱을 수행하기 위한 하나 이상의 다른 디바이스들, 회로들, 모듈들, 또는 명령들, 또는 이들의 임의의 조합을 포함할 수도 있다.
설명된 실시형태들과 함께, 센서에 의해 캡처된 제 1 센서 데이터 및 센서에 의해 캡처된 제 2 센서 데이터 사이의 변경량에 기초하여 제어 신호를 생성하기 위한 수단을 포함하는 장치가 개시되어 있다. 제어 신호를 생성하기 위한 수단은 도 1 내지 도 3 의 통계 프로세싱 디바이스 (108), 도 4 의 변경 검출 회로 (414), 도 5 내지 도 6 의 변경 검출 회로 (514), 도 8 의 활성화 분석기 (814), 도 8 의 활성화 분석기 (816), 제어 신호를 생성하기 위한 하나 이상의 다른 디바이스들, 회로들, 모듈들, 또는 명령들, 또는 이들의 임의의 조합을 포함할 수도 있다.
장치는 또한, 제어 신호에 기초하여 제 2 센서 데이터에 대한 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하기 위한 수단을 포함할 수도 있다. 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하기 위한 수단은 도 13 의 제 2 프로세싱 디바이스 (310), 도 4 의 제 2 프로세싱 경로 (410) 에서의 컴포넌트들, 도 5 의 제 2 프로세싱 경로 (510) 에서의 컴포넌트들, 도 6 의 제 2 프로세싱 경로 (610) 에서의 컴포넌트들, 도 8 의 제 2 프로세싱 경로 (810) 에서의 컴포넌트들, 제 2 센서 데이터에 대한 컴퓨터 비전 애플리케이션-특정 프로세싱을 수행하기 위한 하나 이상의 다른 디바이스들, 회로들, 모듈들, 또는 명령들, 또는 이들의 임의의 조합을 포함할 수도 있다.
도 38 을 참조하면, 이동 디바이스의 특정한 예시적인 실시형태의 블록도가 도시되어 있고, 3800 으로 일반적으로 지정되어 있다. 다양한 실시형태들에서, 디바이스 (3800) 는 도 38 에서 예시된 것보다 더 많거나 더 적은 컴포넌트들을 가질 수도 있다. 디바이스 (3800) 는 도 3 의 디바이스 (302) 를 포함할 수도 있거나, 그것 내에 포함될 수도 있거나, 그것에 대응할 수도 있다. 예시적인 실시형태에서, 디바이스 (3800) 는 도 30 내지 도 34 의 방법들 또는 이들의 임의의 조합에 따라 동작할 수도 있다.
특정 실시형태에서, 디바이스 (3800) 는 도 14 의 메모리 (1408), 코더/디코더 (CODEC) (3834), 및 무선 제어기 (3840) 를 통한 무선 안테나 (3842) 에 결합된 프로세서 (3810) (예컨대, 중앙 프로세싱 유닛 (CPU) 또는 디지털 신호 프로세서 (DSP)) 를 포함한다. 프로세서 (3810) 는 또한, 디스플레이 제어기 (3826) 를 통해 도 14 의 디스플레이 (1406) 에 결합될 수도 있다. 스피커 (3836) 및 마이크로폰 (3838) 은 CODEC (3834) 에 결합될 수도 있다. 디바이스 (3800) 는 도 14 의 디바이스 (1402) 의 하나 이상의 이미지 센서들에 결합될 수도 있다. 예를 들어, 디바이스 (3800) 는 제 1 이미지 센서 (1404), 도 14 의 N 번째 이미지 센서 (1440), 또는 양자에 결합될 수도 있다. 디바이스 (3800) 는 하나 이상의 다른 센서들 (3846) 에 결합될 수도 있다. 예를 들어, 하나 이상의 다른 센서들 (3846) 은 마이크로-전기기계 시스템 (MEMS) 센서, 광학 센서, 자기 센서, 또는 이들의 임의의 조합을 포함할 수도 있다. 디바이스 (3800) 는 도 14 의 멀티미디어 컨텐츠 분류기 (1412) 를 포함할 수도 있다. 특정 실시형태에서, 프로세서 (3810) 는 도 14 의 프로세서 (1410) 에 대응할 수도 있다. 특정 실시형태에서, 프로세서 (3810) 는 도 14 의 멀티미디어 컨텐츠 분류기 (1412) 를 포함할 수도 있다.
멀티미디어 컨텐츠 분류기 (1412) 는 본원에서 설명된 이미지 맥락 식별 기법들의 하드웨어 실시형태를 구현하기 위해 이용될 수도 있다. 대안적으로 또는 추가적으로, 소프트웨어 실시형태 (또는 조합된 소프트웨어/하드웨어 실시형태) 가 구현될 수도 있다. 예를 들어, 메모리 (1408) 는 명령들 (3856) 을 포함할 수도 있다. 명령들 (3856) 은 멀티미디어 컨텐츠 분류기 (1412) 에 대응할 수도 있다. 명령들 (3856) 은 디바이스 (3800) 의 프로세서 (3810) 또는 또 다른 프로세싱 유닛에 의해 실행가능할 수도 있다. 예를 들어, 메모리 (1408) 는, 감지 데이터를 수신함으로써 이미지의 맥락을 식별하고, 특징들의 제 1 서브세트를 추출하고, 특징들의 제 1 서브세트와 연관된 신뢰 레벨들이 임계 신뢰 레벨을 충족시키지 않는 것으로 결정하고, 결정에 응답하여 특징들의 제 2 서브세트를 추출하고, 특징들의 제 2 서브세트에 적어도 부분적으로 기초하여 이미지의 맥락을 표시하는 맥락 데이터를 생성하기 위하여 프로세서 (3810) 에 의해 실행가능한 명령들 (3856) 을 저항하는 비-순시적 (non-transient) 컴퓨터 판독가능 매체 또는 디바이스일 수도 있다.
특정 실시형태에서, 프로세서 (3810), 디스플레이 제어기 (3826), 메모리 (1408), CODEC (3834), 및 무선 제어기 (3840) 는 시스템-인-패키지 또는 시스템-온-칩 디바이스 (3822) 내에 포함된다. 특정 실시형태에서, 입력 디바이스 (3830) 및 전력 공급 장치 (3844) 는 시스템-온-칩 디바이스 (3822) 에 결합된다. 또한, 특정 실시형태에서는, 도 38 에서 예시된 바와 같이, 디스플레이 (1406), 입력 디바이스 (3830), 스피커 (3836), 마이크로폰 (3838), 제 1 이미지 센서 (1404), N 번째 이미지 센서 (340), 무선 안테나 (3842), 및 전력 공급 장치 (3844) 가 시스템-온-칩 디바이스 (3822) 의 외부에 있다. 그러나, 디스플레이 (1406), 입력 디바이스 (3830), 스피커 (3836), 마이크로폰 (3838), 제 1 이미지 센서 (1404), N 번째 이미지 센서 (1440), 무선 안테나 (3842), 및 전력 공급 장치 (3844) 의 각각은 인터페이스 또는 제어기와 같은 시스템-온-칩 디바이스 (3822) 의 컴포넌트에 결합될 수도 있다.
설명된 실시형태들과 함께, 무선 안테나 (3842), 도 14 의 멀티미디어 컨텐츠 분류기 (1412), 도 3 의 제 1 프로세싱 디바이스 (304), 감지 데이터를 수신하도록 구성된 하나 이상의 다른 디바이스들 또는 회로들, 또는 이들의 임의의 조합과 같이, 이미지 센서로부터 감지 데이터를 수신하기 위한 수단을 포함할 수도 있는 시스템이 개시되어 있다. 감지 데이터는 이미지와 관련될 수도 있다. 시스템은 또한, 제 1 프로세싱 디바이스 (304), 도 3 의 제 2 프로세싱 디바이스 (310), 특징 세트 추출기 (1414), 멀티미디어 컨텐츠 분류기 (1412), 도 14 의 프로세서 (1410), 도 38 의 프로세서 (3810), 특징들의 제 1 서브세트를 추출하도록 구성된 하나 이상의 다른 디바이스들 또는 회로들, 또는 이들의 임의의 조합과 같이, 감지 데이터로부터 특징들의 제 1 서브세트를 추출하기 위한 수단을 포함할 수도 있다. 특징들의 제 1 서브세트는 선택 기준에 기초하여 선택될 수도 있다. 시스템은 도 3 의 제 2 프로세싱 디바이스 (310), 멀티미디어 미디어 컨텐츠 분류기 (1412), 도 14 의 프로세서 (1410), 도 38 의 프로세서 (3810), 맥락 데이터를 생성하도록 구성된 하나 이상의 다른 디바이스들 또는 회로들, 또는 이들의 임의의 조합과 같이, 특징들의 제 1 서브세트에 적어도 부분적으로 기초하여 이미지의 맥락을 표시하는 맥락 데이터를 생성하기 위한 수단을 더 포함할 수도 있다.
시스템은 또한, 도 1 의 통계 프로세싱 디바이스 (108), 제 1 프로세싱 디바이스 (304), 도 3 의 제 2 프로세싱 디바이스 (310), 멀티미디어 미디어 컨텐츠 분류기 (1412), 도 14 의 추출기 (1414), 도 38 의 프로세서 (3810), 감지 데이터에 기초하여, 추출 기준이 충족되는지 여부를 결정하도록 구성된 하나 이상의 다른 디바이스들 또는 회로들, 또는 이들의 임의의 조합과 같이, 감지 데이터에 기초하여 추출 기준이 충족되는지 여부를 결정하기 위한 수단을 포함할 수도 있다. 특징들의 제 1 서브세트는 추출 기준이 충족되는 것에 기초하여 추출될 수도 있다.
시스템은 또한, 도 1 의 통계 프로세싱 디바이스 (108), 제 1 프로세싱 디바이스 (304), 도 3 의 제 2 프로세싱 디바이스 (310), 멀티미디어 미디어 컨텐츠 분류기 (1412), 도 14 의 추출기 (1414), 도 38 의 프로세서 (3810), 제 1 전력 도메인을 활성화하도록 구성된 하나 이상의 다른 디바이스들 또는 회로들, 또는 이들의 임의의 조합과 같이, 감지 데이터가 장면 변경을 표시하는 것으로 결정하는 것에 응답하여 제 1 전력 도메인을 활성화하기 위한 수단을 포함할 수도 있다.
시스템은 도 1 의 통계 프로세싱 디바이스 (108), 제 1 프로세싱 디바이스 (304), 도 3 의 제 2 프로세싱 디바이스 (310), 멀티미디어 미디어 컨텐츠 분류기 (1412), 도 14 의 추출기 (1414), 도 38 의 프로세서 (3810), 제 2 전력 도메인을 활성화하도록 구성된 하나 이상의 다른 디바이스들 또는 회로들, 또는 이들의 임의의 조합과 같이, 감지 데이터가 이미지의 선예도가 임계 선예도 레벨을 충족시키는 것을 표시하는 것으로 결정하는 것에 응답하여 제 2 전력 도메인을 활성화하기 위한 수단을 더 포함할 수도 있다.
숙련자들은, 본원에서 개시된 실시형태들과 관련하여 설명된 다양한 예시적인 논리적 블록들, 구성들, 모듈들, 회로들, 및 알고리즘 단계들이 전자 하드웨어, 프로세서에 의해 실행된 컴퓨터 소프트웨어, 또는 양자의 조합들로서 구현될 수도 있다는 것을 추가로 인식할 것이다. 다양한 예시적인 컴포넌트들, 블록들, 구성들, 모듈들, 회로들, 및 단계들은 그 기능성의 측면에서 일반적으로 위에서 설명되었다. 이러한 기능성이 하드웨어 또는 프로세서 실행가능한 명령들로서 구현되는지 여부는 특정 애플리케이션과, 전체적인 시스템에 대해 부과된 설계 제약들에 종속된다. 숙련된 기술자들은 각각의 특정 애플리케이션을 위한 다양한 방법들로 설명된 기능성을 구현할 수도 있지만, 이러한 구현 판단들은 본 개시물의 범위로부터의 이탈을 야기시키는 것으로 해석되지 않아야 한다.
본원에서 개시된 실시형태들과 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로, 프로세서에 의해 실행된 소프트웨어 모듈로, 또는 이 둘의 조합으로 직접 구체화될 수도 있다. 소프트웨어 모듈은 랜덤 액세스 메모리 (RAM), 플래시 메모리, 판독-전용 메모리 (ROM), 프로그래밍가능한 판독-전용 메모리 (programmable read-only memory; PROM), 소거가능 프로그래밍가능한 판독-전용 메모리 (erasable programmable read-only memory; EPROM), 전기적 소거가능 프로그래밍가능한 판독-전용 메모리 (electrically erasable programmable read-only memory; EEPROM), 레지스터들, 하드 디스크, 분리가능한 디스크, 컴팩트 디스크 판독-전용 메모리 (compact disc read-only memory; CD-ROM), 또는 당해 분야에서 알려진 임의의 다른 형태의 비-순시적 저장 매체 내에 상주할 수도 있다. 예시적인 저장 매체는, 프로세서가 저장 매체로부터 정보를 판독할 수 있고 정보를 저장 매체에 기록할 수 있도록 프로세서에 결합된다. 대안적으로, 저장 매체는 프로세서에 일체적일 수도 있다. 프로세서 및 저장 매체는 애플리케이션-특정 집적 회로 (ASIC) 내에 상주할 수도 있다. ASIC 은 컴퓨팅 디바이스 또는 사용자 단말 내에 상주할 수도 있다. 대안적으로, 프로세서 및 저장 매체는 컴퓨팅 디바이스 또는 사용자 단말에서 개별 컴포넌트들로서 상주할 수도 있다.
개시된 실시형태들의 이전의 설명은 당해 분야의 숙련자가 개시된 실시형태들을 제조하거나 이용하는 것을 가능하게 하도록 제공된다. 이 실시형태들에 대한 다양한 변형들은 당해 분야의 숙련자들에게 용이하게 명백할 것이고, 본원에서 정의된 원리들은 개시물의 범위로부터 이탈하지 않으면서 다른 실시형태들에 적용될 수도 있다. 이에 따라, 본 개시물은 본원에서 도시된 실시형태들에 제한되도록 의도된 것이 아니라, 다음의 청구항들에 의해 정의된 바와 같은 원리들 및 신규한 특징들과 일치하는 가능한 가장 넓은 범위를 따르도록 하기 위한 것이다.

Claims (30)

  1. 이동 디바이스에서, 이미지 센서로부터 감지 데이터를 수신하는 단계로서, 상기 감지 데이터는 이미지와 관련되는, 상기 수신하는 단계;
    상기 감지 데이터로부터 상기 이미지의 특징들의 제 1 서브세트를 추출하는 단계;
    특징들의 상기 제 1 서브세트가 분석 기준을 충족시키는 것에 기초하여, 상기 감지 데이터로부터 상기 이미지의 특징들의 제 2 서브세트를 추출하는 단계; 및
    특징들의 상기 제 2 서브세트에 적어도 부분적으로 기초하여, 상기 이미지의 맥락 (context) 을 표시하는 맥락 데이터를 생성하는 단계를 포함하는, 방법.
  2. 제 1 항에 있어서,
    특징들의 상기 제 1 서브세트는 추출 기준이 충족되는 것에 기초하여 추출되고, 상기 추출 기준은 상기 감지 데이터에 기초하고, 상기 추출 기준이 충족되는지 여부를 결정하는 것은 특징들의 상기 제 1 서브세트를 추출하는 것보다 상기 이동 디바이스의 더 적은 자원들을 이용하는, 방법.
  3. 제 2 항에 있어서,
    상기 이미지의 제 1 이미지 통계 및 제 2 이미지의 제 2 이미지 통계의 비교에 기초하여 상기 추출 기준을 충족시키는 단계를 더 포함하는, 방법.
  4. 제 2 항에 있어서,
    상기 추출 기준은 상기 감지 데이터가 장면 변경을 표시할 때에 충족되는, 방법.
  5. 제 1 항에 있어서,
    상기 감지 데이터를 데이터 샘플링 간격으로 주기적으로 수신하는 단계를 더 포함하는, 방법.
  6. 제 1 항에 있어서,
    상기 이미지의 상기 특징들은 동화상 전문가 그룹 7 (MPEG-7) 시각적 디스크립터, 일반화된 검색 트리 (generalized search tree; GIST) 디스크립터, 센서스 변환 히스토그램 (CENTRIST) 시각적 디스크립터, 백-오브-워즈 (bag-of-words) 디스크립터, 시각적으로 국소적으로 집합된 디스크립터, 공간적 피라미드 정합 디스크립터, 또는 이들의 조합을 포함하고, 상기 MPEG-7 시각적 디스크립터는 스케일러블 컬러 디스크립터 (scalable color descriptor; SCD), 컬러 구조 디스크립터 (color structure descriptor; CSD), 프레임 그룹 (group of frame; GOF) 디스크립터, 픽처들 그룹 (group of pictures; GOP) 디스크립터, 기조 컬러 디스크립터 (dominant color descriptor; DCD), 컬러 레이아웃 디스크립터 (color layout descriptor; CLD), 텍스처 브라우징 디스크립터 (texture browsing descriptor; TBD), 동종 텍스처 디스크립터 (homogeneous texture descriptor; HTD), 에지 히스토그램 디스크립터 (edge histogram descriptor; EHD), 윤곽-기반 형상 (contour-based shape) 디스크립터, 영역-기반 형상 디스크립터, 카메라 모션 디스크립터 (camera motion descriptor; CMD), 모션 궤도 디스크립터 (motion trajectory descriptor; MTD), 파라메트릭 모션 디스크립터 (parametric motion descriptor; PMD), 또는 모션 활동 디스크립터 (motion activity descriptor; MAD) 를 포함하는, 방법.
  7. 제 1 항에 있어서,
    상기 이미지의 상기 맥락은 로케이션, 사람, 물체, 활동, 감정, 눈-응시, 육체적 상태, 또는 이들의 임의의 조합을 포함하는, 방법.
  8. 제 1 항에 있어서,
    상기 특징들의 제 1 서브세트를 추출하는 단계는 특징들의 후속 서브세트를 추출하는 것보다 상기 이동 디바이스의 더 적은 자원들을 이용하고, 상기 이동 디바이스의 상기 자원들은 메모리, 전력, 프로세서 실행 사이클들, 또는 이들의 임의의 조합을 포함하는, 방법.
  9. 제 1 항에 있어서,
    상기 분석 기준은 특징들의 상기 제 1 서브세트를 추출하는 것과 연관된 신뢰 레벨에 기초하는, 방법.
  10. 제 9 항에 있어서,
    제 1 타임스탬프가 제 2 타임스탬프의 임계 기간 내에 있는 것에 기초하여, 특징들의 제 1 클러스터링된 서브세트를 생성하는 단계로서,
    상기 제 1 타임스탬프는 상기 이미지와 연관되고,
    상기 제 2 타임스탬프는 제 2 이미지와 연관되고, 그리고
    특징들의 상기 제 1 클러스터링된 서브세트는 상기 제 2 이미지의 특징들의 제 1 서브세트 및 특징들의 제 3 서브세트를 포함하는, 상기 특징들의 제 1 클러스터링된 서브세트를 생성하는 단계; 및
    제 1 분류 모델에 기초하여 특징들의 상기 제 1 클러스터링된 서브세트를 분류함으로써 특징들의 분류된 서브세트를 생성하는 단계로서,
    특징들의 상기 분류된 서브세트는 특징들의 상기 제 1 클러스터링된 서브세트가 로케이션, 사람, 물체, 활동, 또는 이들의 임의의 조합에 대응하는 것을 표시하는, 상기 특징들의 분류된 서브세트를 생성하는 단계를 더 포함하는, 방법.
  11. 제 10 항에 있어서,
    중간 맥락 데이터의 신뢰 레벨이 임계 신뢰 레벨을 충족시키지 않는 것으로 결정하는 것에 기초하여, 특징들의 상기 제 1 서브세트를 추출하는 것과 연관된 상기 신뢰 레벨이 상기 임계 신뢰 레벨을 충족시키지 않는 것으로 결정하는 단계로서,
    상기 중간 맥락 데이터는 특징들의 상기 제 1 서브세트, 특징들의 상기 제 1 클러스터링된 서브세트, 또는 특징들의 상기 분류된 서브세트에 대응하고, 그리고
    상기 중간 맥락 데이터는 상기 이미지의 부분적인 맥락을 표시하는, 상기 특징들의 상기 제 1 서브세트를 추출하는 것과 연관된 상기 신뢰 레벨이 임계 신뢰 레벨을 충족시키지 않는 것으로 결정하는 단계; 및
    상기 제 1 타임스탬프 및 상기 제 2 타임스탬프에 기초하여 특징들의 상기 제 2 서브세트를 클러스터링함으로써 특징들의 제 2 클러스터링된 서브세트를 생성하는 단계로서, 상기 맥락 데이터는 제 2 분류 모델에 기초하여 특징들의 상기 제 1 클러스터링된 서브세트, 특징들의 상기 제 2 클러스터링된 서브세트, 또는 이들 양자를 분류함으로써 생성되는, 상기 특징들의 제 2 클러스터링된 서브세트를 생성하는 단계를 더 포함하는, 방법.
  12. 제 1 항에 있어서,
    상기 감지 데이터는 특정 임계 기간이 경과되었다는 결정에 기초하여, 이용가능한 대역폭이 임계 대역폭을 충족시킨다는 결정에 기초하여, 이용가능한 배터리 전력이 임계 배터리 전력을 충족시킨다는 결정에 기초하여, 사용자 선호도에 기초하여, 사용자 입력에 기초하여, 또는 이들의 임의의 조합에 기초하여 상기 이미지 센서에 의해 생성되는, 방법.
  13. 제 1 항에 있어서,
    상기 맥락 데이터는 애플리케이션에 출력되고, 상기 애플리케이션은 라이프 태깅 (life tagging) 애플리케이션, 매크로 지오-펜싱 (macro geo-fencing) 애플리케이션, 마이크로 지오-펜싱 (micro geo-fencing) 애플리케이션, 모션 활동 검출 애플리케이션, 텍스트 검출 애플리케이션, 물체 검출 애플리케이션, 제스처 검출 애플리케이션, 또는 이들의 임의의 조합을 포함하는, 방법.
  14. 프로세서를 포함하는 장치로서,
    상기 프로세서는,
    이미지 센서로부터 감지 데이터를 수신하는 것으로서, 상기 감지 데이터는 이미지와 관련되는, 상기 감지 데이터를 수신하고;
    상기 감지 데이터로부터 특징들의 제 1 서브세트를 추출하는 것으로서, 특징들의 상기 제 1 서브세트는 선택 기준에 기초하여 선택되는, 상기 특징들의 제 1 서브세트를 추출하고; 그리고
    특징들의 상기 제 1 서브세트에 적어도 부분적으로 기초하여, 상기 이미지의 맥락을 표시하는 맥락 데이터를 생성하도록 구성되는, 장치.
  15. 제 14 항에 있어서,
    특징들의 상기 제 1 서브세트는 추출 기준이 충족되는 것에 기초하여 추출되고, 상기 추출 기준은 상기 감지 데이터에 기초하고, 상기 감지 데이터는 메모리 내에 저장되고, 상기 메모리는 상기 프로세서의 외부에 있고, 특징들의 상기 제 1 서브세트를 추출하는 것은 상기 메모리에 액세스하는 것을 포함하는, 장치.
  16. 제 15 항에 있어서,
    상기 프로세서는 상기 감지 데이터에 기초하여 상기 이미지의 제 1 이미지 통계를 생성하도록 추가로 구성되고, 상기 추출 기준은 상기 제 1 이미지 통계에 적어도 부분적으로 기초하고, 상기 제 1 이미지 통계는 활동 인식, 사람 인식, 물체 인식, 로케이션 인식, 또는 제스처 인식 중의 적어도 하나를 포함하는 애플리케이션-특정 프로세싱에 기초하여 생성되는, 장치.
  17. 제 15 항에 있어서,
    상기 프로세서는 상기 추출 기준이 충족되는 것으로 결정하는 것에 기초하여 제 1 전력 도메인을 활성화하도록 추가로 구성되는, 장치.
  18. 제 17 항에 있어서,
    상기 프로세서는, 상기 감지 데이터가 상기 이미지의 선예도가 임계 선예도 레벨을 충족시키는 것을 표시하는 것으로 결정하는 것에 기초하여 제 2 전력 도메인을 활성화하도록 추가로 구성되는, 장치.
  19. 제 14 항에 있어서,
    상기 선택 기준은 자원 버젯 (resource budget), 이용 케이스, 관심 영역, 또는 이들의 임의의 조합을 포함하고, 상기 관심 영역은 이미지의 부분을 포함하고, 상기 자원 버젯은 메모리 버젯, 전력 버젯, 초 당 명령들의 수 버젯 (number of instructions per second budget), 또는 이들의 임의의 조합을 포함하고, 상기 자원 버젯은 사용자 선호도들, 자원 가용성, 또는 이들 양자에 기초하고, 상기 이용 케이스는 활동 인식, 사람 인식, 물체 인식, 로케이션 인식, 제스처 인식, 또는 이들의 임의의 조합을 포함하는, 장치.
  20. 제 14 항에 있어서,
    특징들의 상기 제 1 서브세트는, 상기 감지 데이터가 상기 이미지의 선예도가 임계 선예도 레벨을 충족시키는 것을 표시하는 것으로 결정하는 것에 기초하여 추출되는, 장치.
  21. 이미지 센서로부터 감지 데이터를 수신하기 위한 수단으로서, 상기 감지 데이터는 이미지와 관련되는, 상기 감지 데이터를 수신하기 위한 수단;
    상기 감지 데이터로부터 특징들의 제 1 서브세트를 추출하기 위한 수단으로서, 특징들의 상기 제 1 서브세트는 선택 기준에 기초하여 선택되는, 상기 특징들의 제 1 서브세트를 추출하기 위한 수단; 및
    특징들의 상기 제 1 서브세트에 적어도 부분적으로 기초하여, 상기 이미지의 맥락을 표시하는 맥락 데이터를 생성하기 위한 수단을 포함하는, 장치.
  22. 제 21 항에 있어서,
    상기 감지 데이터에 기초하여 추출 기준이 충족되는지 여부를 결정하기 위한 수단으로서, 특징들의 상기 제 1 서브세트는 상기 추출 기준이 충족되는 것에 기초하여 추출되는, 상기 추출 기준이 충족되는지 여부를 결정하기 위한 수단;
    상기 감지 데이터가 장면 변경을 표시하는 것으로 결정하는 것에 기초하여 제 1 전력 도메인을 활성화하기 위한 수단; 및
    상기 감지 데이터가 상기 이미지의 선예도가 임계 선예도 레벨을 충족시키는 것을 표시하는 것으로 결정하는 것에 기초하여 제 2 전력 도메인을 활성화하기 위한 수단을 더 포함하는, 장치.
  23. 제 22 항에 있어서,
    상기 감지 데이터를 수신하기 위한 수단, 특징들의 상기 제 1 서브세트를 추출하기 위한 수단, 상기 맥락 데이터를 생성하기 위한 수단, 상기 추출 기준이 충족되는지 여부를 결정하기 위한 수단, 상기 제 1 전력 도메인을 활성화하기 위한 수단, 및 상기 제 2 전력 도메인을 활성화하기 위한 수단은 이동 통신 디바이스, 스마트폰, 셀룰러 전화, 랩톱 컴퓨터, 컴퓨터, 태블릿, 개인 정보 단말, 디스플레이 디바이스, 텔레비전, 게임용 콘솔, 음악 플레이어, 라디오, 디지털 비디오 플레이어, 디지털 비디오 디스크 (DVD) 플레이어, 튜너, 카메라, 또는 내비게이션 디바이스 중의 하나 내로 통합되는, 장치.
  24. 명령들을 포함하는 컴퓨터 판독가능 저장 매체로서,
    상기 명령들은 컴퓨터에 의해 실행될 경우, 상기 컴퓨터로 하여금 동작들을 수행하게 하고, 상기 동작들은,
    제 1 이미지 센서로부터 제 1 감지 데이터를 수신하는 것으로서, 상기 제 1 감지 데이터는 제 1 이미지와 관련되는, 상기 제 1 감지 데이터를 수신하는 것;
    상기 제 1 감지 데이터로부터 상기 제 1 이미지의 특징들의 제 1 서브세트를 추출하는 것;
    특징들의 상기 제 1 서브세트가 분석 기준을 충족시키는 것에 기초하여 제 2 이미지로부터 제 2 감지 데이터를 요청하는 것으로서, 상기 제 2 감지 데이터는 제 2 이미지와 관련되는, 상기 제 2 감지 데이터를 요청하는 것;
    상기 제 2 이미지 센서로부터 상기 제 2 감지 데이터를 수신하는 것;
    상기 제 2 감지 데이터로부터 상기 제 2 이미지의 특징들의 제 2 서브세트를 추출하는 것; 및
    특징들의 상기 제 2 서브세트에 적어도 부분적으로 기초하여, 상기 제 1 이미지의 맥락을 표시하는 맥락 데이터를 생성하는 것을 포함하는, 컴퓨터 판독가능 저장 매체.
  25. 제 24 항에 있어서,
    상기 동작들은 상기 감지 데이터에 기초하여 상기 제 1 이미지의 제 1 이미지 통계를 생성하는 것을 더 포함하고, 특징들의 상기 제 2 서브세트는 상기 제 2 이미지의 상기 제 1 이미지 통계 및 제 2 이미지 통계 사이의 변경량이 변경 임계점을 충족시키는 것에 기초하여 추출되고, 상기 제 1 이미지 통계 및 상기 제 2 이미지 통계는 애플리케이션-특정 프로세싱에 기초하여 생성되는, 컴퓨터 판독가능 저장 매체.
  26. 제 25 항에 있어서,
    상기 동작들은,
    상기 제 1 이미지의 제 1 컬러 히스토그램을 생성하는 것으로서, 상기 제 1 이미지 통계는 상기 제 1 컬러 히스토그램에서 특정 컬러의 픽셀들의 제 1 카운트를 포함하는, 상기 제 1 컬러 히스토그램을 생성하는 것; 및
    상기 제 2 이미지의 제 2 컬러 히스토그램을 생성하는 것으로서, 상기 제 2 이미지 통계는 상기 제 2 컬러 히스토그램에서 특정 컬러의 픽셀들의 제 2 카운트를 포함하는, 상기 제 2 컬러 히스토그램을 생성하는 것을 더 포함하는, 컴퓨터 판독가능 저장 매체.
  27. 제 26 항에 있어서,
    상기 감지 데이터에 대해 수행되어야 할 상기 애플리케이션-특정 프로세싱은 특정 컬러를 가지는 특정 물체의 식별을 포함하는, 컴퓨터 판독가능 저장 매체.
  28. 제 25 항에 있어서,
    상기 동작들은 특징들의 상기 제 1 서브세트, 특징들의 상기 제 2 서브세트, 또는 이들 양자를 클러스터링함으로써 특징들의 클러스터링된 서브세트를 생성하는 것을 더 포함하고, 상기 맥락 데이터는 분류 모델에 기초하여 특징들의 상기 클러스터링된 서브세트를 분류함으로써 생성되는, 컴퓨터 판독가능 저장 매체.
  29. 제 25 항에 있어서,
    상기 제 1 이미지는 상기 제 1 이미지 센서의 제 1 세팅에 대응하고, 상기 제 2 이미지는 상기 제 2 이미지 센서의 제 2 세팅에 대응하고, 상기 제 1 세팅은 상기 제 2 세팅과는 별개이고, 상기 제 1 이미지 센서의 세팅은 줌 세팅, 해상도 세팅, 각도 세팅, 로케이션, 또는 이들의 임의의 조합을 포함하는, 컴퓨터 판독가능 저장 매체.
  30. 제 25 항에 있어서,
    상기 제 1 이미지 센서는 제 1 디바이스 내로 통합되고, 상기 제 2 이미지 센서는 제 2 디바이스 내로 통합되고, 상기 제 1 디바이스 및 상기 제 2 디바이스는 별개인, 컴퓨터 판독가능 저장 매체.
KR1020157035988A 2013-06-14 2014-06-13 컴퓨터 비전 애플리케이션 프로세싱 KR20160021131A (ko)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201361835400P 2013-06-14 2013-06-14
US61/835,400 2013-06-14
US201361871678P 2013-08-29 2013-08-29
US61/871,678 2013-08-29
US14/303,491 2014-06-12
US14/303,491 US10091419B2 (en) 2013-06-14 2014-06-12 Computer vision application processing
PCT/US2014/042319 WO2014201362A2 (en) 2013-06-14 2014-06-13 Computer vision application processing

Publications (1)

Publication Number Publication Date
KR20160021131A true KR20160021131A (ko) 2016-02-24

Family

ID=52018885

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020157035986A KR20160021130A (ko) 2013-06-14 2014-06-13 컴퓨터 비전 애플리케이션 프로세싱
KR1020157035988A KR20160021131A (ko) 2013-06-14 2014-06-13 컴퓨터 비전 애플리케이션 프로세싱

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020157035986A KR20160021130A (ko) 2013-06-14 2014-06-13 컴퓨터 비전 애플리케이션 프로세싱

Country Status (8)

Country Link
US (2) US10091419B2 (ko)
EP (2) EP3008891B1 (ko)
JP (2) JP2016532182A (ko)
KR (2) KR20160021130A (ko)
CN (2) CN105264879B (ko)
ES (1) ES2753373T3 (ko)
HU (1) HUE045984T2 (ko)
WO (2) WO2014201362A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200071012A (ko) * 2018-12-10 2020-06-18 한국과학기술원 다중 서비스 요청 및 맥락인지 기반의 IoT 카메라 가상화 장치 및 방법

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9959471B2 (en) 2008-05-06 2018-05-01 Careview Communications, Inc. Patient video monitoring systems and methods for thermal detection of liquids
US20170155877A1 (en) * 2008-05-06 2017-06-01 Careview Communications, Inc. System and method for predicting patient falls
US9140590B2 (en) * 2011-02-09 2015-09-22 Texas Instruments Incorporated System and method of power-saving in MEMS sensor applications
US10091419B2 (en) 2013-06-14 2018-10-02 Qualcomm Incorporated Computer vision application processing
US9560273B2 (en) * 2014-02-21 2017-01-31 Apple Inc. Wearable information system having at least one camera
KR102146857B1 (ko) * 2014-04-07 2020-08-21 삼성전자주식회사 촬영 장치 및 이의 제어 방법
KR102266195B1 (ko) * 2014-06-20 2021-06-17 삼성전자주식회사 객체와 관련된 정보를 제공하는 방법 및 장치
US9965021B2 (en) * 2014-06-23 2018-05-08 Mediatek, Inc. Method and system providing power management for multimedia processing
EP3188468B1 (en) * 2014-08-29 2019-05-22 Huawei Technologies Co., Ltd. Image processing method and electronic device
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
US20170132466A1 (en) 2014-09-30 2017-05-11 Qualcomm Incorporated Low-power iris scan initialization
US10515284B2 (en) 2014-09-30 2019-12-24 Qualcomm Incorporated Single-processor computer vision hardware control and application execution
US9923004B2 (en) 2014-09-30 2018-03-20 Qualcomm Incorporated Hardware acceleration of computer vision feature detection
US9986179B2 (en) 2014-09-30 2018-05-29 Qualcomm Incorporated Sensor architecture using frame-based and event-based hybrid scheme
US9762834B2 (en) 2014-09-30 2017-09-12 Qualcomm Incorporated Configurable hardware for computing computer vision features
US10728450B2 (en) 2014-09-30 2020-07-28 Qualcomm Incorporated Event based computer vision computation
US9940533B2 (en) * 2014-09-30 2018-04-10 Qualcomm Incorporated Scanning window for isolating pixel values in hardware for computer vision operations
US9838635B2 (en) 2014-09-30 2017-12-05 Qualcomm Incorporated Feature computation in a sensor element array
EP3007029B1 (en) * 2014-10-07 2017-12-27 LG Electronics Inc. Mobile terminal and wearable device
US9621741B2 (en) * 2014-12-10 2017-04-11 Intel Corporation Techniques for context and performance adaptive processing in ultra low-power computer vision systems
US9836591B2 (en) 2014-12-16 2017-12-05 Qualcomm Incorporated Managing latency and power in a heterogeneous distributed biometric authentication hardware
GB201501510D0 (en) * 2015-01-29 2015-03-18 Apical Ltd System
US9692967B1 (en) * 2015-03-23 2017-06-27 Snap Inc. Systems and methods for reducing boot time and power consumption in camera systems
US9704056B2 (en) * 2015-04-02 2017-07-11 Qualcomm Incorporated Computing hierarchical computations for computer vision calculations
US9622177B2 (en) 2015-08-06 2017-04-11 Qualcomm Incorporated Context aware system with multiple power consumption modes
JP6529383B2 (ja) * 2015-08-11 2019-06-12 京セラ株式会社 ウェアラブル装置及び出力システム
US9811881B2 (en) * 2015-12-09 2017-11-07 Goodrich Corporation Off-band resolution emhancement
US9916866B2 (en) 2015-12-22 2018-03-13 Intel Corporation Emotional timed media playback
US9838641B1 (en) * 2015-12-30 2017-12-05 Google Llc Low power framework for processing, compressing, and transmitting images at a mobile image capture device
CN105759935B (zh) * 2016-01-29 2019-01-18 华为技术有限公司 一种终端控制方法及终端
JP6727840B2 (ja) 2016-02-19 2020-07-22 ソニーモバイルコミュニケーションズ株式会社 撮像装置、撮像制御方法及びコンピュータプログラム
US10037459B2 (en) 2016-08-19 2018-07-31 Sage Software, Inc. Real-time font edge focus measurement for optical character recognition (OCR)
EP3499852B1 (en) * 2016-09-09 2021-03-24 Huawei Technologies Co., Ltd. Method and device for controlling screen of mobile terminal
CN109154979A (zh) * 2016-10-26 2019-01-04 奥康科技有限公司 用于分析图像和提供反馈的可佩戴设备和方法
US10984235B2 (en) 2016-12-16 2021-04-20 Qualcomm Incorporated Low power data generation for iris-related detection and authentication
US10614332B2 (en) 2016-12-16 2020-04-07 Qualcomm Incorportaed Light source modulation for iris size adjustment
CN110178142B (zh) * 2017-01-23 2023-06-06 高通股份有限公司 单一处理器计算机视觉硬件控制和应用执行
US10488912B1 (en) * 2017-01-27 2019-11-26 Digimarc Corporation Method and apparatus for analyzing sensor data
JP2018191209A (ja) * 2017-05-10 2018-11-29 オリンパス株式会社 情報記録装置、情報記録システム及び情報記録装置の制御方法
US20190088108A1 (en) * 2017-09-18 2019-03-21 Qualcomm Incorporated Camera tampering detection
US10574890B2 (en) 2018-01-12 2020-02-25 Movidius Ltd. Methods and apparatus to operate a mobile camera for low-power usage
US11301022B2 (en) * 2018-03-06 2022-04-12 Motorola Mobility Llc Methods and electronic devices for determining context while minimizing high-power sensor usage
CN111630413B (zh) * 2018-06-05 2024-04-16 谷歌有限责任公司 基于置信度的应用特定的用户交互
US11429192B2 (en) 2018-06-05 2022-08-30 Google Llc Confidence-based application-specific user interactions
EP3776008B1 (en) * 2018-06-05 2022-07-27 Google LLC Method and electronic device for ultrasonic sensing in smart devices
DE102019205079A1 (de) * 2018-06-19 2019-12-19 Robert Bosch Gmbh Selektive Deaktivierung von Recheneinheiten für künstliche neuronale Netzwerke
CN109299315B (zh) * 2018-09-03 2023-03-28 腾讯科技(深圳)有限公司 多媒体资源分类方法、装置、计算机设备及存储介质
US10915995B2 (en) 2018-09-24 2021-02-09 Movidius Ltd. Methods and apparatus to generate masked images based on selective privacy and/or location tracking
US10524461B1 (en) * 2018-09-25 2020-01-07 Jace W. Files Pest detector to identify a type of pest using machine learning
US11244050B2 (en) * 2018-12-03 2022-02-08 Mayachitra, Inc. Malware classification and detection using audio descriptors
CN111832366B (zh) 2019-04-22 2024-04-02 富联精密电子(天津)有限公司 图像识别装置及方法
TWI723383B (zh) * 2019-04-22 2021-04-01 鴻齡科技股份有限公司 圖像識別裝置及方法
US11157777B2 (en) * 2019-07-15 2021-10-26 Disney Enterprises, Inc. Quality control systems and methods for annotated content
CN110531641B (zh) * 2019-08-19 2020-10-16 深圳市晨北科技有限公司 控制终端设备的方法、控制装置及终端设备
US11645579B2 (en) 2019-12-20 2023-05-09 Disney Enterprises, Inc. Automated machine learning tagging and optimization of review procedures
US11635802B2 (en) * 2020-01-13 2023-04-25 Sony Interactive Entertainment Inc. Combined light intensity based CMOS and event detection sensor for high speed predictive tracking and latency compensation in virtual and augmented reality HMD systems
EP3855348A1 (en) * 2020-01-27 2021-07-28 Microsoft Technology Licensing, LLC Error management
US11119587B1 (en) * 2020-03-25 2021-09-14 Pixart Imaging Inc. Computer readable recording medium can perform image sensing system control method and image sensing system
JP2021174135A (ja) * 2020-04-22 2021-11-01 ソニーセミコンダクタソリューションズ株式会社 画像認識装置及び画像認識方法
USD989412S1 (en) 2020-05-11 2023-06-13 Shenzhen Liyi99.Com, Ltd. Double-tier pet water fountain
US11790677B2 (en) * 2020-10-01 2023-10-17 Bank Of America Corporation System for distributed server network with embedded image decoder as chain code program runtime
USD993548S1 (en) 2021-01-15 2023-07-25 Shenzhen Liyi99.Com, Ltd. Pet water fountain
USD1003727S1 (en) 2021-01-15 2023-11-07 Aborder Products, Inc. Container
USD1013974S1 (en) 2021-06-02 2024-02-06 Aborder Products, Inc. Pet water fountain
US11302161B1 (en) 2021-08-13 2022-04-12 Sai Group Limited Monitoring and tracking checkout activity in a retail environment
US11308775B1 (en) 2021-08-13 2022-04-19 Sai Group Limited Monitoring and tracking interactions with inventory in a retail environment

Family Cites Families (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994003014A1 (en) 1992-07-24 1994-02-03 Koz Mark C Low power video security monitoring system
US5418714A (en) * 1993-04-08 1995-05-23 Eyesys Laboratories, Inc. Method and apparatus for variable block size interpolative coding of images
US5713055A (en) 1996-11-25 1998-01-27 Eastman Kodak Company Ambient light sensitive automatic flash control circuit
IL122299A (en) * 1997-11-25 2003-11-23 Broadcom Corp Video encoding device
US6895048B2 (en) 1998-03-20 2005-05-17 International Business Machines Corporation Adaptive encoding of a sequence of still frames or partially still frames within motion video
US6539055B1 (en) * 1999-12-03 2003-03-25 Intel Corporation Scene change detector for video data
JP4080276B2 (ja) 2002-08-27 2008-04-23 富士フイルム株式会社 オブジェクト抽出方法および装置ならびにプログラム
JP4231320B2 (ja) 2003-03-31 2009-02-25 本田技研工業株式会社 移動体の検出装置
JP2005176301A (ja) 2003-11-11 2005-06-30 Canon Inc 画像処理装置、ネットワークカメラシステム、画像処理方法、及びプログラム
US7668376B2 (en) * 2004-06-30 2010-02-23 National Instruments Corporation Shape feature extraction and classification
JP2006079387A (ja) 2004-09-10 2006-03-23 Seiko Epson Corp 集積回路装置及びマイクロコンピュータ
FR2875627B1 (fr) * 2004-09-21 2007-03-16 Canon Res Ct France S A S Soc Procede de determination d'un descripteur d'image, procede de comparaison d'images, procede de recherche d'image et dispositifs associes
KR100682906B1 (ko) * 2004-12-09 2007-02-15 삼성전자주식회사 부스트 알고리즘을 이용한 영상의 얼굴 검출 장치 및 방법
US7945938B2 (en) * 2005-05-11 2011-05-17 Canon Kabushiki Kaisha Network camera system and control method therefore
US20070028286A1 (en) 2005-07-28 2007-02-01 Greene David P Systems, methods, and media for detecting content change in a streaming image system
CN100517374C (zh) 2005-12-29 2009-07-22 佳能株式会社 从复杂背景文档图像提取文本的装置、方法
JP2007194850A (ja) * 2006-01-18 2007-08-02 Sharp Corp 画像処理方法、画像処理装置、画像形成装置、及びコンピュータプログラム
TW200736900A (en) * 2006-03-31 2007-10-01 Benq Corp Computer system capable of operating functions according to scene change and method thereof
US7668369B2 (en) 2006-04-26 2010-02-23 Hewlett-Packard Development Company, L.P. Using camera metadata to classify images into scene type classes
US8134642B2 (en) * 2007-01-24 2012-03-13 Focaltech Systems, Ltd. Method and system for converting interleaved video fields to progressive video frames in spatial domain
US7916971B2 (en) * 2007-05-24 2011-03-29 Tessera Technologies Ireland Limited Image processing method and apparatus
JP4964044B2 (ja) * 2007-07-06 2012-06-27 三菱電機株式会社 顔検出装置及び顔検出方法
US7683305B2 (en) * 2007-09-27 2010-03-23 Aptina Imaging Corporation Method and apparatus for ambient light detection
JP4660827B2 (ja) * 2007-11-16 2011-03-30 Necカシオモバイルコミュニケーションズ株式会社 映像信号処理装置、コントラスト制御方法及びプログラム
US20100027663A1 (en) 2008-07-29 2010-02-04 Qualcomm Incorporated Intellegent frame skipping in video coding based on similarity metric in compressed domain
US8170278B2 (en) 2008-08-06 2012-05-01 Sri International System and method for detecting and tracking an object of interest in spatio-temporal space
US8995731B2 (en) * 2008-11-26 2015-03-31 Medtronic, Inc. Image-based characterization of implanted medical leads
JP5002575B2 (ja) 2008-11-28 2012-08-15 日本電信電話株式会社 非定常度推定装置、非定常度推定方法、非定常度推定プログラム
JP2010136292A (ja) * 2008-12-08 2010-06-17 Toshiba Corp 画像処理装置
CN102450009B (zh) 2009-04-20 2015-07-22 杜比实验室特许公司 在视频应用中用于视频预处理的滤波器选择
JP4830007B2 (ja) * 2009-06-22 2011-12-07 株式会社沖データ 画像形成装置
US8339459B2 (en) 2009-09-16 2012-12-25 Microsoft Corporation Multi-camera head pose tracking
KR101688655B1 (ko) 2009-12-03 2016-12-21 엘지전자 주식회사 사용자의 프레전스 검출에 의한 제스쳐 인식 장치의 전력 제어 방법
KR101652110B1 (ko) * 2009-12-03 2016-08-29 엘지전자 주식회사 사용자의 제스쳐로 제어가능한 장치의 전력 제어 방법
CN102147851B (zh) 2010-02-08 2014-06-04 株式会社理光 多角度特定物体判断设备及多角度特定物体判断方法
US8971628B2 (en) * 2010-07-26 2015-03-03 Fotonation Limited Face detection using division-generated haar-like features for illumination invariance
US8625902B2 (en) * 2010-07-30 2014-01-07 Qualcomm Incorporated Object recognition using incremental feature extraction
US8599934B2 (en) 2010-09-08 2013-12-03 Cisco Technology, Inc. System and method for skip coding during video conferencing in a network environment
US8467611B2 (en) * 2010-12-10 2013-06-18 Eastman Kodak Company Video key-frame extraction using bi-level sparsity
JP6106921B2 (ja) 2011-04-26 2017-04-05 株式会社リコー 撮像装置、撮像方法および撮像プログラム
DK2538394T3 (da) 2011-06-24 2022-02-14 Tomra Systems Asa Fremgangsmåde og apparat til at opdage svindelforsøg i returautomater
CN103049733B (zh) * 2011-10-11 2016-02-03 株式会社理光 人脸检测方法和人脸检测设备
JP5805511B2 (ja) 2011-12-01 2015-11-04 セコム株式会社 画像監視装置
US9063574B1 (en) * 2012-03-14 2015-06-23 Amazon Technologies, Inc. Motion detection systems for electronic devices
US8965046B2 (en) * 2012-03-16 2015-02-24 Qualcomm Technologies, Inc. Method, apparatus, and manufacture for smiling face detection
US10579904B2 (en) * 2012-04-24 2020-03-03 Stmicroelectronics S.R.L. Keypoint unwarping for machine vision applications
US8971642B2 (en) 2012-04-26 2015-03-03 Google Inc. Testing the rendering of visual content
KR101303124B1 (ko) * 2012-05-31 2013-09-09 삼성에스디에스 주식회사 특징점 기술자에 의한 객체 추적장치 및 방법, 그리고 에러 특징점 제거장치 및 방법
KR101925412B1 (ko) * 2012-07-03 2018-12-05 삼성전자주식회사 휴대 단말기의 슬립 모드 제어 방법 및 장치
WO2014015889A1 (en) * 2012-07-23 2014-01-30 Metaio Gmbh Method of providing image feature descriptors
US9264584B2 (en) * 2012-09-19 2016-02-16 Tata Consultancy Services Limited Video synchronization
US9002109B2 (en) 2012-10-09 2015-04-07 Google Inc. Color correction based on multiple images
US9165196B2 (en) 2012-11-16 2015-10-20 Intel Corporation Augmenting ADAS features of a vehicle with image processing support in on-board vehicle platform
US9183460B2 (en) * 2012-11-30 2015-11-10 Google Inc. Detecting modified images
US20140157209A1 (en) 2012-12-03 2014-06-05 Google Inc. System and method for detecting gestures
US9245276B2 (en) 2012-12-12 2016-01-26 Verint Systems Ltd. Time-in-store estimation using facial recognition
US9092665B2 (en) 2013-01-30 2015-07-28 Aquifi, Inc Systems and methods for initializing motion tracking of human hands
US9633272B2 (en) 2013-02-15 2017-04-25 Yahoo! Inc. Real time object scanning using a mobile phone and cloud-based visual search engine
US9202129B2 (en) 2013-03-12 2015-12-01 Qualcomm Incorporated Reducing object detection time by utilizing space localization of features
US9661221B2 (en) 2013-03-15 2017-05-23 Qualcomm Incorporated Always-on camera sampling strategies
US10091419B2 (en) 2013-06-14 2018-10-02 Qualcomm Incorporated Computer vision application processing
FR3009635B1 (fr) * 2013-08-08 2016-08-19 St Microelectronics Sa Procede de recherche d'une image similaire dans une banque d'images a partir d'une image de reference
US9129189B2 (en) 2013-08-14 2015-09-08 Qualcomm Incorporated Performing vocabulary-based visual search using multi-resolution feature descriptors
US9443134B2 (en) * 2014-05-15 2016-09-13 Adobe Systems Incorporated Propagating object selection across multiple images
US9836591B2 (en) 2014-12-16 2017-12-05 Qualcomm Incorporated Managing latency and power in a heterogeneous distributed biometric authentication hardware
GB2553105B (en) * 2016-08-22 2019-09-04 Canon Kk Method and system for determining a relationship between two regions of a scene

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200071012A (ko) * 2018-12-10 2020-06-18 한국과학기술원 다중 서비스 요청 및 맥락인지 기반의 IoT 카메라 가상화 장치 및 방법

Also Published As

Publication number Publication date
US20140368626A1 (en) 2014-12-18
JP2016529585A (ja) 2016-09-23
CN105264879B (zh) 2019-01-08
ES2753373T3 (es) 2020-04-08
WO2014201386A1 (en) 2014-12-18
EP3008891B1 (en) 2020-10-14
JP2016532182A (ja) 2016-10-13
US10694106B2 (en) 2020-06-23
US10091419B2 (en) 2018-10-02
JP6422955B2 (ja) 2018-11-14
EP3008891A2 (en) 2016-04-20
US20140368688A1 (en) 2014-12-18
EP3008892B1 (en) 2019-07-31
CN105264879A (zh) 2016-01-20
KR20160021130A (ko) 2016-02-24
WO2014201362A3 (en) 2015-03-05
EP3008892A1 (en) 2016-04-20
CN105284102A (zh) 2016-01-27
HUE045984T2 (hu) 2020-01-28
WO2014201362A2 (en) 2014-12-18
CN105284102B (zh) 2018-07-13

Similar Documents

Publication Publication Date Title
US10091419B2 (en) Computer vision application processing
JP7009553B2 (ja) イベントベースのビジョンセンサを使用した低電力で常時オンの顔の検出、追跡、認識および/または分析
KR101826189B1 (ko) 올웨이즈-온 카메라 샘플링 전략들
US20200125842A1 (en) Low-power iris scan initialization
KR102496225B1 (ko) 영상 인코딩 방법 및 이를 지원하는 전자 장치
US11704908B1 (en) Computer vision enabled smart snooze home security cameras
TW201832126A (zh) 低功率虹膜掃描初始化

Legal Events

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