KR20190134515A - 이미지 처리 - Google Patents

이미지 처리 Download PDF

Info

Publication number
KR20190134515A
KR20190134515A KR1020190060637A KR20190060637A KR20190134515A KR 20190134515 A KR20190134515 A KR 20190134515A KR 1020190060637 A KR1020190060637 A KR 1020190060637A KR 20190060637 A KR20190060637 A KR 20190060637A KR 20190134515 A KR20190134515 A KR 20190134515A
Authority
KR
South Korea
Prior art keywords
data
object classification
definitions
classification
cycle
Prior art date
Application number
KR1020190060637A
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 KR20190134515A publication Critical patent/KR20190134515A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/51Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/2431Multiple classes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/24323Tree-organised classifiers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/28Determining representative reference patterns, e.g. by averaging or distorting; Generating dictionaries
    • G06K9/00536
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/33Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/41Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/70Labelling scene content, e.g. deriving syntactic or semantic representations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • 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/172Classification, e.g. identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2218/00Aspects of pattern recognition specially adapted for signal processing
    • G06F2218/12Classification; Matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20016Hierarchical, coarse-to-fine, multiscale or multiresolution image processing; Pyramid transform
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes

Abstract

적어도 제 1 그룹의 개략 레벨(coarse-level) 오브젝트 정의 및 제 2 그룹의 상세 레벨(finer-level) 오브젝트 정의를 포함하는 오브젝트 정의 계층에 배열된 오브젝트 정의 세트를 이용하는 오브젝트 분류기. 상기 오브젝트 분류기는 상기 제 1 오브젝트 분류 사이클에서 상기 분류 데이터로부터 오브젝트 정의의 제 1 서브 세트를 선택적으로 실행함으로써 그리고 상기 제 2 오브젝트 분류 사이클에서 제 2의 상이한 서브 세트를 선택적으로 실행함으로써 제 1 오브젝트 분류 사이클 및 제 2 후속 오브젝트 분류 사이클을 구성하도록 배열된다.

Description

이미지 처리{IMAGE PROCESSING}
본 발명은 동적 장면을 나타내는 순차적 이미지 데이터 프레임들의 형태인 이미지 데이터를 처리하기 위한 방법 및 장치에 관한 것이다.
이미지 데이터를 처리하기 위한, 예를 들어, 이미지의 특징 또는 객체와 같은 이미지의 특성을 탐지하기 위한 방법은 연산 집약적일 수 있다. 따라서, 이미지들의 특성을 탐지하기 위한 더 효율적인 방법이 요구된다.
본 공개의 제1 측면에 있어서, 이미지 처리 시스템이 제공되고, 상기 이미지 처리 시스템은:
동적 장면(dynamic scene)을 나타내는 순차적 이미지 데이터 프레임들의 형태인 이미지 데이터를 수신하도록 되어있는 이미지 데이터 인터페이스;
객체 분류 사이클들에서 객체 분류를 수행하도록 되어있는 객체 분류기(object classifier) - 주어진 객체 분류 사이클에서, 상기 객체 분류기는 선택된 이미지 프레임에서의 객체 분류를 수행함 - ;
범주화 데이터를 저장하도록 되어있는 스토리지 - 상기 범주화 데이터는 상기 객체 분류기에 의한 사용을 위해 객체 정의들의 세트를 포함하고, 상기 객체 정의들의 세트는 객체 정의 계층(object definition hierarchy)으로 되어있고 적어도 제1 객체 정의 레벨에서의 조-레벨(coarse-level)의 객체 정의의 적어도 하나의 제1 그룹 및 상기 제1 객체 정의 레벨보다 하위인(below) 제2 객체 정의 레벨에서의 미세-레벨(finer-level)의 객체 정의들의 제2 그룹을 포함함 - 를 포함하고,
상기 객체 분류기는, 제1 객체 분류 사이클 및 제2 후속 객체 분류 사이클을:
상기 범주화 데이터로부터의 객체 정의들의 제1 서브세트 - 상기 제1 서브세트는 상기 제1 및 제2 그룹 객체 정의들 중 적어도 하나로부터 선택됨 - 를 선택하고, 상기 제1 객체 분류 사이클에서 제1 서브세트를 선택적으로 실행함으로써; 그리고
상기 범주화 데이터로부터의 객체 정의들의 제2 서브세트 - 상기 제2 서브세트는 상기 제1 및 제2 그룹 객체 정의들 중 적어도 하나로부터 선택되고, 상기 제1 서브세트와 상이함 - 를 선택하고, 상기 제2 객체 분류 사이클에서 제2 서브세트를 선택적으로 실행함으로써 구성하도록 되어있다.
본 공개의 제2 측면에 있어서, 이미지 데이터를 처리하는 방법이 제공되고, 상기 방법은:
동적 장면을 나타내는 순차적 이미지 데이터 프레임들의 형태인 이미지 데이터를 수신하는 단계;
객체 분류 사이클들에서 객체 분류를 수행하는 단계 - 주어진 객체 분류 사이클에서, 객체 분류가 선택된 이미지 프레임에서 수행됨 - ;
범주화 데이터를 저장하는 단계 - 상기 범주화 데이터는 객체 분류 동안 사용하기 위한 객체 정의들의 세트를 포함함 - ; 및
제1 객체 분류 사이클 및 제2 후속 객체 분류 사이클을 구성하는 단계로서,
상기 범주화 데이터로부터 객체 정의들의 제1 서브세트 - 상기 제1 서브세트는 상기 제1 및 제2 그룹 객체 정의들 중 적어도 하나로부터 선택됨 - 를 선택하고; 상기 제1 객체 분류 사이클에서 상기 제1 서브세트를 선택적으로 실행함으로써; 그리고
상기 범주화 데이터로부터의 객체 정의들의 제2 서브세트 - 상기 제2 서브세트는 상기 제1 및 제2 그룹 객체 정의들 중 적어도 하나로부터 선택되며 상기 제1 서브세트와 상이함 - 를 선택하고; 상기 제2 객체 분류 사이클에서 제2 서브세트를 선택적으로 실행함으로써 구성하는 단계를 포함한다.
추가 특징 및 이점은 첨부된 도면을 참조하여 이루어진 예시에 대한 다음의 설명으로부터 명백해질 것이다.
도 1은 예시에 따른 신경망 시스템을 개략적으로 도시한다.
도 2는 예시에 따른 신경망 시스템 및 제2 신경망 시스템을 개략적으로 도시한다.
도 3은 본원에 기재된 방법과 함께 사용하기 위한 예시적인 이미지 처리 시스템을 개략적으로 도시한다.
실시예에 따른 시스템 및 방법의 세부 사항은 도면을 참조하여 다음의 설명으로부터 명백해 질 것이다. 이 설명에서, 설명의 목적으로, 특정 예들에 대한 다수의 특정 세부 사항들이 설명된다. 명세서에서의 "예" 또는 유사한 언어의 언급은 실시예와 관련하여 기술된 특정한 특징, 구조 또는 특성이 적어도 하나의 예에 포함되지만, 다른 예들에 반드시 포함되는 것은 아니라는 것을 의미한다. 또한, 특정 예가 개략적으로 설명되고, 예시의 기초가 되는 개념의 이해 및 이해를 용이하게 하기 위해 생략되거나 및/또는 필수적으로 단순화된다는 것을 유의해야 한다.
본원에 기재된 방법은 이미지 처리 시스템을 사용하여 이미지의 적어도 일부를 나타내는 이미지 데이터를 처리하는 것에 관한 것이다. 이미지 처리 시스템은 동적 장면(dynamic scene)을 나타내는 순차적 이미지 데이터 프레임들의 형태인 이미지 데이터를 수신하도록 되어있는 이미지 데이터 인터페이스를 포함한다. 이미지 데이터는 예를 들어 비디오 카메라를 사용하여 캡처된 이미지 데이터일 수 있다. 객체 분류기는 객체 분류 사이클들에서 객체 분류를 수행하도록 되어있을 수 있고, 주어진 객체 분류 사이클에서 객체 분류기는 선택된 이미지 프레임에서 객체 분류를 수행할 수 있다. 객체 분류기는 CPU(중앙 처리 장치) 또는 GPU(그래픽 처리 장치) 및/또는 특별히 구성된 하드웨어 컴퓨터 비전 데이터 프로세서와 같은 적어도 하나의 다목적 데이터 프로세서에서 실행되는 컴퓨터 소프트웨어 명령들로서 구현될 수 있다. 이미지 처리 시스템은 스토리지, 예를 들어 객체 분류기에 의해 사용될 객체 정의들이 세트를 포함하는 범주화 데이터를 보유하는 SDRAM((synchronous DRAM (dynamic random access memory) 및/또는 다른 종류의 RAM(random access memory)을 포함할 수 있다. 객체 정의들의 세트는 적어도 제1 객체 정의 레벨에서의 조-레벨의(coarse-level) 객체 정의의 적어도 하나의 제1 그룹 및 제1 객체 정의 레벨보다 하위인(below) 제2 객체 정의 레벨에서의 미세-레벨(finer-level)의 객체 정의들의 제2 그룹을 포함하는 객체 정의 계층(object definition hierarchy)으로 될 수 있다. 대안적으로, 객체 정의들의 세트는 플랫(flat) 구조 또는 다른 비계층적 구조에서 객체 정의들의 제1 및 제2 그룹들을 갖고 되어있을 수 있다. 객체 분류기는, 제1 객체 분류 사이클에서 범주화 데이터로부터의 객체 정의들의 제1 서브세트를 선택적으로 실행하고; 그리고 제2 객체 분류 사이클에서 제2, 상이한 서브세트를 선택적으로 실행함으로써 제1 객체 분류 사이클 및 제2 후속 객체 분류 사이클을 구성하도록 되어있을 수 있다. 제1 서브세트는 제1 및 제2 그룹의 객체 정의들 중 적어도 하나로부터 선택될 수 있으며 객체 정의들의 제1 및 제2 그룹들 중 단 하나 또는 양쪽으로부터의 객체 정의들을 포함할 수 있다. 제2 서브세트는 제1 및 제2 그룹의 객체 정의들 중 적어도 하나로부터 선택될 수 있으며 객체 정의들의 제1 및 제2 그룹들 중 단 하나 또는 양쪽으로부터의 객체 정의들을 포함할 수 있다. 제1 서브세트와 상이한 제2 서브세트는 제1 서브세트와 공통된 하나의 또는 복수의 객체 정의들을 포함할 수 있다.
객체 정의들은 예를 들어 객체들의 클래스(class)들에 상응하며, 객체 분류를 수행하는 것은 이미지 데이터 내의 다양한 클래스들에 속하는 객체들을 탐지 및/또는 인식하는 것을 포함할 수 있다. 예를 들어, 객체 분류기는 이미지 내의 인간 얼굴 또는 이미지 내의 동물의 존재를 탐지하는데 사용될 수 있다. 일부 경우, 객체 분류기는 객체의 특정 인스턴스를 식별한다. 예를 들어, 조-레벨의 객체 정의는 인간의 얼굴 클래스를 정의할 수 있고, 미세-레벨의 객체 정의는 특정 인간의 얼굴을 식별하기 위한 개별적인 얼굴 클래스를 정의할 수 있다. 추가 예로서, 조-레벨의 객체 정의는 4족 동물 클래스를 정의할 수 있고, 미세 객체 정의는 4족 동물의 특정 종을 식별하기 위한 4족 동물 종 클래스와 관련될 수 있다. 개체 정의의 다른 레벨이 포함될 수 있고, 예를 들어, 특정 4족 동물을 식별하기 위한 개별적인 4족 동물 클래스가 객체 정의의 더욱 미세-레벨에 속할 수 있다. 객체 정의들의 제1 그룹은 상이한 조-레벨의 객체 정의들, 예를 들어, 인간의 얼굴 클래스 및 4족 동물 클래스 모두를 포함할 수 있다. 객체 정의들의 제2 그룹은 상이한 미세-레벨의 객체 정의들, 예를 들어, 인간의 얼굴 클래스 및 4족 동물 클래스 모두 그리고/또는 개별적인 4족 동물 클래스를 포함할 수 있다.
신경망은 전형적으로 인공 뉴런 또는 뉴런으로 지칭될 수 있는 다수의 상호 연결된 노드를 포함한다. 뉴런의 내부 상태(뉴런의 "활성화"라고도 함)는 일반적으로 뉴런이 수신한 입력에 따라 달라진다. 뉴런의 출력은 입력, 가중치, 바이어스 및 활성화 함수에 따라 달라질 수 있다. 일부 뉴런의 출력은 다른 뉴런의 입력에 연결되어 그래프의 정점(연결부에 해당) 또는 에지(연결에 해당)가 각각 가중치와 관련되는 방향성 가중치 그래프(directed, weighted graph)를 형성한다. 뉴런은 정보가 하나의 층에서 주어진 뉴런으로부터 신경망의 연속하는 층의 하나 이상의 뉴런으로 흐를 수 있도록 층들에서 되어있을 수 있다. 예시들은 신경망 가속기에서 실행하는 객체 분류기를 포함한다.
도 1은 예시에 따른 신경망 시스템(100)을 개략적으로 도시한다. 신경망 시스템(100)은 제1 복수의 층(101)을 포함하고 제2 신경망 시스템(200)은 제2 복수의 층(201)을 포함한다. 제2 복수의 층(201)은 제1 복수의 층(101)보다 많은 층을 포함한다. 다른 예에서, 제2 복수의 층(201)은 제1 복수의 층(101)보다 더 많은 뉴런 및/또는 뉴런들 사이의 더 많은 상호 연결을 추가적으로 또는 대안적으로 포함한다.
도 1에서, 신경망(100)은 콘볼루션(convolution) 신경망(CNN)이다. CNN의 예는 VGG-16 CNN이지만 다른 CNN이 대신 사용될 수 있다. 전형적인 CNN은 입력 층(102), 복수의 콘볼루션 층(이들 중 104a, 104b, 104c가 도 1에 도시됨), 적어도 하나의 완전히 연결된 층(이중 하나인 106이 도 1에 도시됨) 및 출력 층(108)을 포함한다. 입력 층(102)은 예를 들어 이 예에서 이미지 데이터인 신경망(100)에 대한 입력에 대응한다. 이미지 데이터는 예를 들어 폭이 224 픽셀이고 높이가 224 픽셀이며 3개의 색상 채널(예를 들어 적색, 녹색 및 청색 채널)을 포함한다. 콘볼루션 층은 일반적으로 입력 데이터로부터 특정한 특징을 추출하여 특징 맵을 생성한다. 완전히 연결된 층들은 분류를 위해 기능 맵을 사용한다. 완전히 연결된 층은 이미지 데이터의 객체 클래스에 일치하는 객체의 존재를 탐지하기 위해 객체 클래스의 형태로 객체 정의를 실행한다. 객체 정의는 스토리지에서 선택적으로 검색되고 특정 객체 분류사이클 동안 사용하기 위해 객체 분류기에 로드된다. 객체 분류 사이클은 이미지 데이터가 입력 층(102)으로부터 출력 층(102)까지의 층들의 시퀀스를 통과하는 사이클일 수 있다. 모든 층들이 객체 분류 사이클 동안 사용될 필요는 없고; 예를 들어 하나 이상의 콘볼루션 층은 사이클 동안의 데이터 처리 요건을 감소시키기 위해 객체 분류 사이클 동안 처리로부터 생략될 수 있다.
도 1에 따른 실시 예에서, 층(104a)의 출력은 층(104b)에 입력되기 전에 풀링된다. 예를 들어, 풀링(pooling)은 이미지 또는 특징 맵의 영역에 대한 값이 예를 들어 영역 내의 최고 값을 취함으로써 집합 또는 결합되도록 허용한다. 예를 들어, 2x2 최대 풀링에 의해, 층(104a)로부터 출력된 특징 맵의 2x2 패치 내의 층(104a)의 출력의 최고 값은 층(104a)의 전체 출력으로부터 층(104b)으로 전달하는 것보다 104b로의 입력으로서 사용된다. 이것은 신경망(100)의 후속하는 층들에 대해 연산의 양을 감소시킨다. 다른 풀링은 신경망(100)의 다른 층들 간에 수행될 수 있다. 반대로, 어떤 경우 풀링은 생략될 수 있다. 신경망은 설명의 용이함을 위해 크게 단순화되었고 전형적인 신경망은 훨씬 더 복잡할 수 있음을 이해해야 한다.
일반적으로, 도 1의 신경망(100)과 같은 신경망 시스템은 신경망이 특정 목적을 위해 트레이닝되는 "트레이닝 단계(training phase)"로 불리는 것을 겪을 수 있다. 기술된 바와 같이, 신경망은 통상적으로 그래프의 정점(뉴런에 대응) 또는 에지(연결에 대응하는)가 각각 가중치와 관련되는 지향성 가중치 그래프(directed, weighted graph)를 형성하는 다수의 상호 연결된 뉴런을 포함한다. 가중치는 개별 뉴런의 출력을 변경하여 전체적인 신경망의 출력을 변경하여 조정될 수 있다. CNN에서, 완전히 연결된 층은 일반적으로 한 층의 모든 뉴런을 다른 층의 모든 뉴런에 연결하므로 이미지가 특정 클래스의 객체를 포함하는지 또는 특정 인스턴트가 특정 클래스에 속하는지 여부와 같은, 이미지의 전체 특성을 식별하도록 사용될 수 있다.
도 1의 예시에서, 신경망(100)은, 예를 들어, 객체들의 미리 결정된 클래스의 한 객체가 이미지 데이터가 나타내는 이미지 내에 존재하는지를 결정하기 위해, 이미지 데이터를 처리함으로써 객체 검출을 수행하도록 트레이닝되었다(다른 예시에서, 신경망(100)이 대신 이미지의 다른 이미지 특성들을 식별하도록 트레이닝되었을 수 있다). 이러한 방식으로 신경망(100)을 트레이닝하는 것은 예를 들어(입력 층(102) 및 출력 층(108) 이외의 신경망(100)의 층들과 같은) 층들 중 적어도 일부와 관련된 하나 이상의 커널(kernel)을 생성한다. 따라서, 트레이닝의 출력은 미리 결정된 신경망 구조(예를 들어, 다층 신경망 구조의 상이한 개별적인 층들과 관련된 다른 커널들을 갖는)와 관련된 복수의 커널일 수 있다. 커널 데이터는 이미지 데이터에 적용될 가중치를 나타내는 가중치 데이터에 대응하는 것으로 간주될 수 있으며, 이는 커널의 각 요소가 각각 가중치에 해당하는 것으로 간주될 수 있기 때문이다. 이들 가중치들 각각은 이미지 패치의 대응하는 픽셀 값에 의해 곱해질 수 있으며, 커널은 이하 설명되는 바와 같이 이미지 패치로 콘볼브(convolve)한다.
커널은 이미지의 특징이 식별되게 할 수 있다. 예를 들어, 일부 커널은 이미지 데이터가 나타내는 이미지의 에지를 식별하는 데 사용될 수 있고 나머지는 이미지의 수평 또는 수직 특징을 식별하는 데 사용될 수 있다(이에 한정되지 않고 다른 커널도 가능함). 커널이 식별하는 정확한 특징은 신경망(100)이 탐지하도록 트레이닝된 객체들의 클래스와 같은 이미지 특성에 따를 수 있다. 커널은 크기가 다를 수 있다. 예를 들어, 각각의 커널은 3x3 행렬일 수 있고, 1의 스트라이드(stride)를 갖는 이미지 데이터와 콘볼브될 수 있다. 커널이 탐지하도록 설계된 특징을 식별하도록, 커널은 이미지 패치(또는 이미지 패치를 갖는 커널의 콘볼루션에 의해 얻어진 특징 맵)와 콘볼브될 수 있다. 콘볼루션은 일반적으로 인접 픽셀 또는 이웃하는 특징 맵 요소에 적용되는 동일한 작업의 결과에 이러한 작업의 결과를 더하기 전에 이미지 패치(이 예에서는 3x3 이미지 패치)의 각 픽셀 또는 특징 맵의 각 요소에 커널의 가중치를 곱하는 것을 포함한다. 예를 들어 스트라이드는 커널이 각 작업 사이에서 이동하는 픽셀 또는 특징 맵 요소의 수를 의미한다. 따라서, 1의 스트라이드는 주어진 3x3 이미지 패치에 대한 콘볼루션을 계산한 후에 커널이 이미지를 가로질러 1 픽셀만큼 슬라이드되고 후속 이미지 패치에 대해 콘볼루션이 계산됨을 표시한다. 이 프로세스는 커널이 이미지 전체(또는 콘볼루션을 계산될 이미지의 전체 부분)와 콘볼브되거나 특징 맵의 전체를 갖고 커널이 콘볼브될 때까지 반복될 수 있다. 커널은 필터 커널 또는 필터라고도 한다. 콘볼루션은 일반적으로 곱셈 연산과 덧셈 연산(때로는 곱셈 누적 연산이라고 함)을 포함한다. 따라서, 도 3과 같은 신경망을 구현하도록 구성된 신경망 가속기는 이러한 작업을 수행하도록 구성된 곱셈기-누산기(MAC) 유닛을 포함할 수 있다.
트레이닝 단계 후에, 신경망(100)(트레이닝된 신경망(100)으로 지칭될 수 있음)은 입력 이미지에서 미리 결정된 클래스의 객체들의 존재를 탐지하는데 사용될 수 있다. 이러한 프로세스는 "분류" 또는 "추론(inference)"이라고 할 수 있다. 분류는 전형적으로 트레이닝 단계 동안 얻어진 커널을 신경망(100)에 입력된 이미지의 이미지 패치와 콘볼루션하여 특징 맵을 생성하는 것을 포함한다. 그 다음, 특징 맵은 이미지를 분류하기 위해 적어도 하나의 완전히 연결된 층을 사용하여 처리될 수 있다.
도 1의 예에서, 층(104a)은 64개의 상이한 커널과 입력 층(102)의 이미지 데이터의 콘볼루션을 포함한다. 64개의 커널 각각은 예를 들어, 이미지 데이터의 상이한 각각의 특징을 식별하도록 되어있다. 이미지 데이터가 3개의 컬러 채널을 갖는 224×224 픽셀 크기이고, 3×3 픽셀 크기의 64개의 커널과 콘볼브되는 설명적인 예에서, 신경망(100)의 층(104a)은 224×224×3×(3×3)×64 곱셈 누적 연산, 즉 8천6백만 곱셈 누적 연산을 포함한다. 또한, 신경망(100)의 추가 층(104b, 104c, 106) 각각과 관련된 추가 곱셈 누적 연산들이 또한 존재할 것이다. 이해되는 바와 같이, 상이한 수의 커널을 갖는 콘볼루션을 포함할 수 있다. 그럼에도 불구하고, 미리 결정된 클래스의 객체 또는 객체의 특정 인스턴스의 존재와 같은 이미지 특성을 식별하기 위해 이미지를 처리하는 것은, 통상적으로 다수의 데이터 처리 작업을 포함하고, 이 작업들의 각각은 전력을 소비한다.
도 1의 예에서, 신경망(100)의 입력 층(102)에 의해 수신된 이미지 데이터는 특성 데이터를 생성하기 위해 층(104a, 104b, 104c)을 사용하여 처리된다. 이미지 데이터는 센서 픽셀에 의해 캡처된 광의 강도와 같이 이미지 센서에 의해 캡처된 광의 적어도 하나의 특성을 나타내며, 이는 센서 픽셀에 의해 캡처된 광자의 수에 비례할 수 있다. 강도는 캡처된 광의 휘도를 나타낼 수 있으며, 이는 예를 들어 절대 강도보다는 단위 면적당 광 강도의 척도이다. 다른 예에서, 이미지 데이터는 휘도에 비례하거나 비례하지 않을 수 있는 휘도의 인식에 상응하는 것으로 고려될 수 있는 캡처된 광의 밝기를 나타낼 수 있다. 일반적으로, 이미지 데이터는 이미지 데이터가 나타낸 이미지의 시각적 외관을 나타내기 위해 사용될 수 있는 임의의 측광량(photometric quantity) 또는 특성을 나타낼 수 있고 또는 임의의 이러한 측광량 또는 특성으로부터 도출될 수 있다. 이미지 데이터는 미가공(raw) 이미지 포맷과 같은 임의의 적합한 포맷일 수 있다. 예를 들어, 이미지 데이터는 미가공 이미지 데이터를 메모리에 저장하지 않고 프레임 버퍼에 저장되거나 저장되지 않고 이미지 센서로부터 스트리밍될 수 있다. 그러나, 이 경우, 미가공 이미지 데이터의 처리 후에 얻어진 이미지 데이터는 메모리에 기록될 수 있다.
이 예에서, 신경망(100)의 층들(104a, 104b, 104c)은 이미지의 적어도 하나의 특징을 나타내는 특징 데이터를 생성하는데 사용될 수 있다. 특징 데이터는 도 1의 신경망(100)과 같은 CNN의 콘볼루션 층으로부터 출력될 수 있는 출력 특징 맵을 나타낼 수 있다. 도 1에 도시된 것보다 더 많은 또는 더 적은 층들이 신경망(100)에 존재할 수 있다. 신경망(100)이 도 1에 도시된 바와 같이 입력 층(102)과 완전히 연결된 층(106) 및/또는 출력 층(108) 사이에 복수의 층(104a, 104b, 104c)을 포함하는 예에서, 복수의 층들(104a, 104b, 104c)의 각각은 이미지의 적어도 하나의 특징을 나타내는 중간 특징 데이터를 생성하는데 사용될 수 있다. 신경망(100)에 입력된 이미지 데이터가 나타내는 이미지의 다른 특징들을 식별하기 위해, 층들 중 하나의 층(예를 들어, 층(104a))으로부터 출력된 중간 특징 데이터는 신경망(100)의 후속 층(예를 들어, 층(104b))에 입력될 수 있다.
도 1에 도시되지 않았지만, 이미지 데이터가 이미지 센서에 의해 획득된 후, 신경망(100)의 층에 의해 처리되기 전에, 추가 처리가 이미지 데이터에 적용될 수 있음을 이해해야 한다. 추가 처리는 이미지 처리 시스템의 다른 구성 요소들에 의해 또는 신경망(100) 자체의 일부로서 수행될 수 있다.
도 1에서와 같이, 신경망(100)이 CNN인 예에서, 신경망(100)의 적어도 하나의 층(이 예에서, 각각의 층들(104a, 104b, 104c))은 각각 콘볼루션 층일 수 있다. 신경망(100)은, 예를 들어 출력 특징 맵을 나타내는 콘볼루션 층(104c)으로부터 출력 특징 데이터를 수신하고, 객체 데이터를 생성하기 위해 출력 특징 데이터를 처리하도록 도 1에서 되어있는 완전히 연결된 층(106)을 또한 포함한다. 예를 들어 객체 데이터는 신경망(100)의 출력 층(108)에 대응한다. 완전히 연결된 층(106)에 의해 생성된 객체 데이터는, 신경망(100)이 이미지 데이터가 나타내는 이미지의 미리 결정된 클래스의 객체의 존재를 탐지하는지에 대한 표시를 제공할 수 있다. 도 1에서, 신경망(100)은 단 하나의 완전히 연결된 층(106)을 포함한다. 그러나, 다른 예들에서, 신경망(100)은 복수의 완전히 연결된 층들을 포함할 수 있고, 완전히 연결된 층들 중 하나의 출력은 후속하는 완전히 연결된 층에 의해 입력으로서 수신된다.
객체 정의들의 일반 목적 세트에 대한 예시적인 계층은 이하의 클래스들 및 서브클래스들 중 하나 이상을 포함할 수 있다:
Figure pat00001
동물
a. 2족
i. 인간
1. … 서브클래스(이하 참조)
b. 4족
i. 고양이과(Feline)
ii. 개과(Canine)
iii. 마과(Equine)
1. 말(horse)
2. 얼룩말(Zebra)
iv. 코끼릿과(Elephantidae)
1. 아프리칸 부쉬(African bush)
2. 아프리칸 포레스트(African forest)
3. 아시안(Asian)
c. 6족
i. ..
d. 8족
i. ..
e. 어류
Figure pat00002
광물
f. 보석
g. 암석
h. 기타
Figure pat00003
식물
i. 나무
i. 상록수(evergreen)
j. 꽃
k. 덤불
l. 허브
Figure pat00004
인공물
m. 가구
i. 의자
1. 3발 의자
a. 특정 의자
2. 4발 의자
ii. 탁상
n. 백색 가전
i.
o. 그림
i. 예술가
1. 예술가에 의한 특정 그림
p. 차량
i. 제조사
1. 모델
a. 연식.
특정 인간 개인을 인지하기 위한 미세 객체 정의들의 예시적인 세트는 이하의 서브클래스들 중 하나 이상을 포함할 수 있다:
1. 남성/여성
2. 눈동자 색상(예를 들어 3개의 그룹)
3. 추산 연령 그룹(예를 들어 4개의 그룹)
4. 피부색(예를 들어 4개의 그룹)
5. 얼굴 형상(예를 들어 4개의 그룹)
6. 신장(예를 들어 4개의 그룹)
상기 예에서, 그러한 특성을 가진 개인을 탐지할 때에도 모든 클래스가 탐지될 수 있는 것은 아니다. 예를 들어 사람이 어두운 안경을 쓰고 있다면 눈동자 색을 이용할 수 없다.
예들에서, 객체 분류기는 객체 분류기 외부의 하나 이상의 데이터 소스로부터 도출된 제어 데이터에 응하여 제1 및 제2 객체 분류 사이클들 중 적어도 하나를 구성하도록 되어있을 수 있다. 하나 이상의 데이터 소스는 객체 분류기 외부에 있는 하나 이상의 센서를 포함할 수 있으며, 하나 이상의 센서는 센서 데이터를 생성하도록 되어있다. 제어 데이터는 적어도 부분적으로 센서 데이터로부터 도출될 수 있다.
예시에서, 하나 이상의 데이터 소스는 이미지 처리 시스템의 시스템 리소스의 이용가능성을 감지하도록 되어있는 센서를 포함하고, 센서 데이터는 시스템 리소스의 이용가능성을 표시한다. 시스템 리소스의 이용가능성은 이하를 포함할 수 있다:
a. 이미지 처리 시스템에 전력을 공급하도록 구성되는 전기 배터리의 충전 상태;
b. 이미지 처리 시스템에 의해 액세스 가능한 이용 가능한 스토리지의 크기;
c. 이미지 처리 시스템에 이용 가능한 컴퓨트 리소스(compute resource)의 양; 또는
d. 이미지 처리 시스템에 이용 가능한 전력의 양.
예시에서, 하나 이상의 데이터 소스는 퍼스널 컴퓨터, 랩탑, 스마트폰 또는 차와 같은 차량 내에 결합되거나 장착될 수 있는 온-보드 컴퓨팅 장치와 같은 컴퓨팅 장치(computing device)에 통합되거나 관련되는 데이터 소스일 수 있다. 이러한 데이터 소스는 다음 중 하나 이상을 포함할 수 있다:
a. 지리적 위치를 표시하는 센서 데이터를 생성하도록 되어있는 위치 센서;
b. 주변 온도를 표시하는 센서 데이터를 생성하도록 되어있는 온도 센서;
c. 이미지 데이터의 의미적 정보, 예를 들어 바코드 데이터 및/또는 차량 번호판 인식 데이터를 표시하는 센서 데이터를 생성하도록 되어있는 비주얼 정보 센서;
d. 오디오 데이터를 표시하는 센서 데이터를 생성하도록 되어있는 오디오 정보 센서;
e. 이동 속도를 표시하는 센서 데이터를 생성하도록 되어있는 속도 센서;
f. 가속도의 양을 표시하는 센서 데이터를 생성하도록 되어있는 가속도 센서;
g. Wi-FiTM 액세스 포인트 아이덴티티 정보(access point identity information)와 같이, 무선 신호에 의해 반송되는 데이터를 표시하는 센서 데이터를 생성하도록 되어있는 무선 신호 센서;
h. 동작을 표시하는 센서 데이터를 생성하도록 되어있는 동작 센서; 및
i. 동시 위치 및 맵핑(SLAM) 모듈.
이하의 외부의 입력은 또한 제1 및 제2 객체 분류 사이클들 중 적어도 하나의 구성을 제어하는데 사용될 수 있다:
a. 장면에서 인식된 또는 최근에 보여진 사람들과 관련된 소셜 네트워크로부터 도출된 데이터,
b. 마이크로폰을 사용하여 감지될 수 있는 구어(language spoken), 억양, 소리 특성 등과 같이 감지된 사용자 특성을 표시하는 데이터.
예시에서, 객체 분류기는 객체 분류기로부터 도출된 제어 데이터에 응하여 제1 및 제2 객체 분류 사이클들 중 적어도 하나를 구성하도록 구성된다. 객체 분류기로부터 도출된 제어 데이터는 객체 분류가 제1 및 제2 객체 분류 사이클들 중 적어도 하나 동안 수행되는 이미지 프레임에서 객체의 분류를 나타내는 제어 데이터를 포함할 수 있다. 객체 분류기는 객체 분류기로부터 도출된 제어 데이터에 응하여 적어도 제2 객체 분류 사이클을 구성하도록 되어있을 수 있으며, 객체 분류기로부터 도출된 제어 데이터는 대안적으로 또는 부가적으로 객체 분류가 제1 객체 분류 사이클 동안 수행되는 이미지 프레임 내의 객체의 분류를 표시하는 제어 데이터를 포함한다. 객체 분류기로부터 도출되는 제어 데이터는 대안적으로 또는 부가적으로 제1 및 제2 객체 분류 사이클들에 선행하는 객체 분류 사이클 동안 처리를 위해 선택되는 이미지 프레임 내의 객체의 분류를 표시하는 제어 데이터를 포함할 수 있다.
예시에서, 객체 분류기는 제1 및 제2 객체 분류 사이클들 모두 동안 동일한 주어진 이미지 프레임에서 객체 분류를 수행하도록 되어있다. 객체 분류기는, 주어진 이미지 프레임에서 객체 분류가 먼저 수행되는 초기 객체 분류 사이클로서 제1 객체 분류 사이클을 수행하고, 주어진 이미지 프레임에서 객체 분류가 수행되는 후속 객체 분류 사이클로서 제2 객체 분류 사이클을 수행하도록 되어있을 수 있다.
예시에서, 객체 분류기는 복수의 콘볼루션 층과 하나의 완전히 연결된 층을 포함하는 콘볼루션 신경망을 포함한다. 객체 분류기는:
a. 제1 객체 분류 사이클에서 제1 특징 데이터를 생성하도록 적어도 하나의 제1 콘볼루션 층 내의 주어진 이미지 프레임을 표시하는 이미지 데이터를 처리함으로써;
b. 제1 콘볼루션 층과는 상이한 제2 층에 특징 맵 데이터로서 제1 특징 데이터를 전송함으로써; 그리고
c. 제2 객체 분류 사이클 동안 제2 특징 데이터를 생성하도록 적어도 제2 콘볼루션 층을 사용하여 제1 특징 데이터를 처리함으로써 객체 분류를 수행하도록 되어있을 수 있다.
다른 예에서, 객체 분류기는, 제1 객체 분류 사이클 동안 주어진 이미지 프레임 내의 객체 분류를 수행하고, 제2 객체 분류 사이클 동안 주어진 이미지 프레임에 후속하는 이미지 프레임 내의 객체 분류를 수행하도록 되어있다.
예시에서, 객체 분류기는, 하나 이상의 객체 정의가 객체 분류 사이클들의 시퀀스에서 선택된 객체 분류 사이클에서 주기적으로 실행되고 시퀀스에서의 다른 객체 분류 사이클들에서는 실행되지 않는 실행 패턴에 따라 세트로부터 하나 이상의 객체 정의를 구성하도록 되어있다.
예에서, 객체 분류기는 제1 실행 패턴에 따라 세트로부터 하나 이상의 조-레벨의 객체 정의를 구성하고, 제2 실행 패턴에 따라 세트로부터 하나 이상의 미세-레벨의 객체 정의를 구성하도록 되어있을 수 있다. 하나 이상의 조-레벨의 객체 정의는, 하나 이상의 미세-레벨의 객체 정의가 제2 실행 패턴에서 실행되는 것 보다 더 빈번하게 제1 실행 패턴에서 실행될 수 있다. 제1 실행 패턴은 일련의 연속적 객체 분류 사이클들을 포함하고, 제2 실행 패턴은 일련의 비연속적 객체 분류 사이클들을 포함할 수 있다.
예에서, 객체 분류기는 제1 조-레벨의 실행 패턴에 따라 세트로부터 하나 이상의 조-레벨의 객체 정의를 구성하며 제2 조-레벨의 실행 패턴에 따라 세트로부터 하나 이상의 조-레벨의 객체 정의를 구성하도록 되어있을 수 있다. 제1 및 제2 실행 패턴들은 중첩하지 않고; 예를 들어 패턴들은 사이클들 사이에서 교번할 수 있고; 순차적으로 활성화하는 3개 또는 그 이상의 패턴이 존재할 수 있다.
도 2는 신경망(100)과 제2 신경망(200)이 콘볼루션 층(104a)(및 입력 층(102))을 공유하는 예를 도시한다. 공유 층(104a)에 의해 출력된 특징 데이터는, 예를 들어 제1 객체 분류 사이클에서 입력 층(102)으로서 수신된 이미지 데이터를 처리하기 위해 제1 신경망(100)이 선택될 때 층(104b)에 의해 입력 데이터로서 전달되고 수신될 수 있다. 후속하여, 제2 신경망(200)이 예를 들어 제2 객체 분류 사이클에서 이미지 데이터를 처리하도록 선택되면, 공유된 층(104a)의 출력은 층(204b)에 의해 입력으로서 수신될 수 있다. 예에서, 제1 및 제2 신경망(100, 200)은 복수의 층을 공유한다.
예에서, 입력 이미지를 나타내는 입력 이미지 데이터가 입력 이미지를 복수의 블록들로 분할하도록 수신되고 처리된다. 예를 들어, 복수의 블록들 중 하나의 블록은 이미지 데이터가 나타내는 이미지에 대응하고, 이는 상술한 바와 같이 처리될 수 있다. 각각의 블록은 미리 결정된 크기를 가질 수 있고, 입력 이미지와 같은 더 큰 이미지의 타일에 대응하는 것으로 간주될 수 있다. 블록은 임의의 형상(단지 정사각형 또는 직사각형이 아닌)일 수 있고, 일부 블록은 다른 블록과 다른 형상 및/또는 크기일 수 있다. 블록의 크기는 입력 이미지를 처리하도록 되어있는 이미지 처리 시스템의 가용 처리 용량에 의존하거나 고정된 크기일 수 있다. 입력 이미지를 블록으로 분할함으로써, 탐지된 객체들을 포함하는 블록들은 예를 들어, 관심 영역들로서 식별될 수 있고, 탐지된 객체들을 포함하지 않는 다른 블록(하늘 또는 잔디와 같은 장면의 배경에 상응하는 이미지의 블록)의 처리를 동반하지 않는 추가 처리의 대상이 될 수 있다. 이는 관심 객체들을 포함할 가능성이 있는 이미지 부분에 리소스를 집중시킴으로써 이미지 데이터의 불필요한 처리를 줄일 수 있다.
본 명세서에 설명된 방법들과 함께 사용하기 위한 이미지 처리 시스템(300)의 예가 도 3에 개략적으로 도시되어있다. 도 3의 이미지 처리 시스템(300)은 퍼스널 컴퓨터, 랩톱, 스마트폰 또는 차량과 같은 자동차 내에 결합되거나 장착될 수 있는 온보드 컴퓨터 장치와 같은 컴퓨팅 장치에 결합되거나 그 일부를 형성할 수 있다.
도 3의 이미지 처리 시스템(300)은 이미지 센서(310)를 포함한다. 이미지 센서는 전형적으로 이미지들을 캡처하기 위한 임의의 적합한 광센서(photosensor)일 수 있는 센서 픽셀들의 어레이를 포함한다. 예를 들어, 전형적인 센서 픽셀은 입사광을 전자 신호 또는 데이터로 변환할 수 있는 포토다이오드와 같은 감광성 소자를 포함한다. 센서 픽셀은 예를 들어 CCD(charge-coupled device) 또는 CMOS(complementary metal-oxide-semiconductor)일 수 있다. 이 예에서 이미지 센서(310)는 이미지를 나타내는 이미지 데이터를 캡처하도록 되어있다. 이미지는 일반적으로 연속적으로 캡처된 일련의 이미지인 비디오의 일부를 구성할 수 있다. 예를 들어, 이미지는 비디오의 프레임에 해당할 수 있다.
도 3에서, 이미지 센서(310)는 카메라 직렬 인터페이스(CSI)(325)를 통해 이미지 처리 시스템(305)의 이미지 신호 프로세서(ISP)(320)에 이미지 데이터를 전송하도록 되어있다. ISP(320)는 이미지 데이터의 초기 처리를 수행하여 디스플레이를 위한 이미지 데이터를 준비할 수 있다. 예를 들어, ISP(320)는 포화 교정(saturation correction), 재정규화(renormalization), 화이트 밸런스 조정 및/또는 디모자이킹(demosaicing)을 수행할 수 있지만, 이것으로 한정되는 것은 아니다.
도 3의 이미지 처리 시스템(305)은 적어도 하나의 프로세서를 포함한다. 이 예에서, 이미지 처리 시스템(300)은 중앙 프로세서 유닛(CPU)(330)을 포함한다. 이미지 처리 시스템(305)은 또한 적어도 하나의 신경망 가속기를 포함한다. 신경망 가속기는 예를 들어 적어도 신경망을 사용하여 데이터의 분류를 구현하기 위한 프로세서이다. 예를 들어, 신경망 가속기는 적어도 신경망을 사용하는 데이터의 분류 를 구현하기 위한 전용 프로세서일 수 있다. 적어도 하나의 신경망 가속기는 상술한 것과 같은 제1 및 제2 신경망을 구현하도록 구성된다. 적어도 하나의 신경망 가속기는 제1 및 제2 신경망 모두를 구현하도록 구성된 신경망 가속기(단일 또는 단독 신경망 가속기와 같은)일 수 있다.
도 3의 예에서, 이미지 처리 시스템은 동시 위치 및 맵핑(SLAM) 모듈(360) 및 신경망 가속기(NNA)(370)를 포함한다. 도 3의 예에서, 신경망 가속기(370)는 기재된 바와 같은 신경망을 구현하도록 구성된다.
그러나, 다른 예에서, 이미지 처리 시스템(305)은 마이크로프로세서, 범용 프로세서, 디지털 신호 프로세서(DSP), 주문형 집적 회로(ASIC), 필드 프로그래머블 게이트 어레이(FPGA) 또는 다른 프로그래머블 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 구성 요소들, 또는 본원에 설명된 기능들을 수행하도록 설계된 이들의 임의의 적절한 조합과 같은 다른 또는 대안적인 프로세서를 포함할 수 있다. 이미지 처리 시스템(305)은 또한 또는 대안적으로 예를 들어 DSP와 마이크로프로세서의 조합, 복수의 마이크로프로세서, DSP 코어와 관련된 하나 이상의 마이크로프로세서 또는 임의의 다른 이러한 구성과 같이 컴퓨팅 장치의 조합으로서 구현된 프로세서를 포함할 수 있다. 이미지 처리 시스템(305)은 또한 적어도 하나의 그래픽 처리 유닛(GPU)을 포함할 수 있다. 제1 및/또는 제2 신경망은 예에서 이들 하나 이상의 프로세서들에 의해 구현될 수 있다.
도 3의 이미지 처리 시스템(305)은, 본원에 기재된 방법에 따라, 제1 및 제2 객체 분류 사이클들의 구성을 제어하도록 되어있는 제어부(340)를 포함한다. 제어기는 신경망을 제어 또는 구성하기 위한 하드웨어 및/또는 소프트웨어를 포함할 수 있다. 예를 들어, 제어기는 (비일시적) 메모리에 저장되고 프로세서에 의해 실행가능한 컴퓨터 소프트웨어에 의해, 또는 하드웨어에 의해, 또는 유형적으로 저장된 소프트웨어 및 하드웨어(및 유형적으로 저장된 펌웨어)의 조합에 의해 적어도 부분적으로 구현될 수 있다. 일부 예에서, 제어기(340)는 프로세서 및 메모리를 포함한다. 여기에 기술된 제어기의 다양한 동작을 수행하기 위한 명령을 포함하는 컴퓨터 실행 가능 코드는 메모리에 저장될 수 있다. 예를 들어, 복수의 신경망을 제어 또는 상호 작용하기 위한 기능은 메모리에 저장되고 프로세서에 의해 실행되는 실행 가능한 신경망 제어 코드로서 구현될 수 있다. 이와 같이, 메모리에 저장된 실행 가능한 코드는 프로세서에 의해 실행될 때 프로세서로 하여금 예시적인 제어기(340)를 참조하여 설명된 기능을 구현하게 하는 작업을 위한 명령들을 포함할 수 있다.
다른 예에서, 제어기(340)는 CPU(330)의 일부로서 드라이버를 추가적으로 또는 대안적으로 포함할 수 있다. 드라이버는 신경망을 제어 또는 구성하도록 구성된 소프트웨어와, 신경망을 구현하기 위하여 처리를 수행하도록 구성된 적어도 하나의 신경망 가속기 사이의 인터페이스를 포함한다. 그러나, 다른 예들에서, 신경망은 상술한 바와 같이 CPU 또는 GPU와 같은 더욱 일반적인 프로세서를 사용하여 구현될 수 있다. 본 명세서에 설명된 바와 같이, 이미지 데이터를 처리하기 위해 신경망을 선택하는 것 이외에, 제어기(340)는 특정 예들에 설명된 바와 같이 신경망으로부터 제2 신경망으로의 특징 데이터의 전달을 제어하도록 구성될 수 있다.
도 3의 이미지 처리 시스템(305)은 스토리지(350)를 포함한다. 스토리지(350)는 예를 들어 신경망 가속기(370)의 외부에 있다. 스토리지(350)는 DDR-SDRAM(double data rate synchronous dynamic)과 같은 RAM(random access memory)일 수 있다. 다른 예에서, 스토리지(350)는 ROM(Read Only Memory) 또는 플래시 메모리와 같은 SSD(Solid State Drive)와 같은 비휘발성 메모리일 수 있거나 포함할 수 있다. 예시의 스토리지(350)는 예를 들어 자기, 광학 또는 테이프 매체, 콤팩트 디스크(CD), DVD(digital versatile disc) 또는 다른 데이터 저장 매체와 같은 추가 스토리지 장치를 포함할 수 있다. 스토리지(350)는 이미지 처리 시스템(305)으로부터 제거 가능하거나 제거 불가능할 수 있다. 스토리지(350)는 예를 들어 ISP(320)로부터 수신될 수 있는 이미지의 적어도 일부를 나타내는 이미지 데이터를 저장하도록 되어있다. 일부 예에서, 도 3의 이미지 처리 시스템(305)은 이미지 처리 시스템(305)의 스토리지(350)에 대한 액세스를 제어하도록 사용될 수 있는 동적 메모리 제어기(DMC)를 또한 포함한다.
도 3의 예에서 이미지 처리 시스템(305)의 구성요소들 시스템 버스(315)를 사용하여 상호 연결된다. 이는 데이터가 다양한 구성요소들 사이에서 전송되도록 한다. 버스(315)는 임의의 적합한 인터페이스 또는 버스일 수 있거나 포함할 수 있다. 예를 들어, AXI(Advanced eXtensible Interface)와 같은 AMBA®(ARM® Advanced Microcontroller Bus Architecture) 인터페이스가 사용될 수 있다.
상기 실시 예는 예시적인 것으로 이해되어야 한다. 추가의 예가 예상된다. 예를 들어, 상술한 예들에서, 제1 및 제2 신경망은 각각 CNN이지만, 다른 예에서는 다른 유형의 신경망이 제1 및/또는 제2 신경망으로 사용될 수 있다.
임의의 예시와 관련하여 설명된 임의의 특징은 단독으로 또는 설명된 다른 특징과 조합하여 사용될 수 있고, 임의의 다른 실시예의 하나 이상의 특징 또는 임의의 조합과 함께 사용될 수도 있다. 또한, 상기 기재되지 않은 등가물 및 변형이 동반하는 청구범위의 범위로부터 벗어나지 않고 사용될 수 있다.

Claims (22)

  1. 이미지 처리 시스템으로서,
    동적 장면(dynamic scene)을 나타내는 순차적 이미지 데이터 프레임들의 형태인 이미지 데이터를 수신하도록 되어있는 이미지 데이터 인터페이스;
    객체 분류 사이클들에서 객체 분류를 수행하도록 되어있는 객체 분류기(object classifier) - 주어진 객체 분류 사이클에서, 상기 객체 분류기는 선택된 이미지 프레임에서의 객체 분류를 수행함 - ;
    범주화 데이터를 저장하도록 되어있는 스토리지 - 상기 범주화 데이터는 상기 객체 분류기에 의한 사용을 위해 객체 정의들의 세트를 포함하고, 상기 객체 정의들의 세트는 객체 정의 계층(object definition hierarchy)으로 되어있고 적어도 제1 객체 정의 레벨에서의 조-레벨(coarse-level)의 객체 정의의 적어도 하나의 제1 그룹 및 상기 제1 객체 정의 레벨보다 하위인(below) 제2 객체 정의 레벨에서의 미세-레벨(finer-level)의 객체 정의들의 제2 그룹을 포함함 - 를 포함하고,
    상기 객체 분류기는, 제1 객체 분류 사이클 및 제2 후속 객체 분류 사이클을:
    상기 범주화 데이터로부터의 객체 정의들의 제1 서브세트 - 상기 제1 서브세트는 제1 및 제2 그룹 객체 정의들 중 적어도 하나로부터 선택됨 - 를 선택하고, 상기 제1 객체 분류 사이클에서 제1 서브세트를 선택적으로 실행함으로써; 그리고
    상기 범주화 데이터로부터의 객체 정의들의 제2 서브세트 - 상기 제2 서브세트는 제1 및 제2 그룹 객체 정의들 중 적어도 하나로부터 선택되고, 상기 제1 서브세트와 상이함 - 를 선택하고, 상기 제2 객체 분류 사이클에서 제2 서브세트를 선택적으로 실행함으로써,
    구성하도록 되어있는, 이미지 처리 시스템.
  2. 청구항 1에 있어서, 상기 객체 분류기는, 상기 객체 분류기 외부의 하나 이상의 데이터 소스로부터 도출되는 제어 데이터에 응하여 상기 제1 및 제2 객체 분류 사이클들 중 적어도 하나를 구성하도록 되어있는, 이미지 처리 시스템.
  3. 청구항 2에 있어서, 상기 하나 이상의 데이터 소스는 상기 객체 분류기의 외부의 하나 이상의 센서를 포함하고, 상기 하나 이상의 센서는 센서 데이터를 생성하도록 되어있고, 상기 제어 데이터는 상기 센서 데이터로부터 도출되는, 이미지 처리 시스템.
  4. 청구항 3에 있어서, 상기 하나 이상의 데이터 소스는 상기 이미지 처리 시스템의 시스템 리소스의 이용가능성을 감지하도록 되어있는 센서를 포함하고, 상기 센서 데이터는 상기 시스템 리소스의 이용가능성을 표시하는, 이미지 처리 시스템.
  5. 청구항 4에 있어서, 상기 시스템 리소스의 이용가능성은:
    상기 이미지 처리 시스템에 전력을 공급하도록 구성되는 전기 배터리의 충전 상태;
    상기 이미지 처리 시스템에 의해 액세스가능한 이용가능한 스토리지의 크기;
    상기 이미지 처리 시스템에 이용가능한 컴퓨트 리소스(compute resource)의 양; 또는
    상기 이미지 처리 시스템에 이용 가능한 전력의 양을 포함하는, 이미지 처리 시스템.
  6. 청구항 3 내지 청구항 5 중 어느 한 항에 있어서, 상기 하나 이상의 데이터 소스는,
    지리적 위치를 표시하는 센서 데이터를 생성하도록 되어있는 위치 센서;
    주변 온도를 표시하는 센서 데이터를 생성하도록 되어있는 온도 센서;
    이미지 데이터를 표시하는 센서 데이터를 생성하도록 되어있는 비주얼 정보 센서;
    오디오 데이터를 표시하는 센서 데이터를 생성하도록 되어있는 오디오 정보 센서;
    이동 속도를 표시하는 센서 데이터를 생성하도록 되어있는 속도 센서;
    가속도의 양을 표시하는 센서 데이터를 생성하도록 되어있는 가속도 센서;
    무선 신호에 의해 반송되는 데이터를 표시하는 센서 데이터를 생성하도록 되어있는 무선 신호 센서;
    동작을 표시하는 센서 데이터를 생성하도록 되어있는 동작 센서; 및
    동시 위치 및 맵핑(SLAM) 모듈 중 하나 이상을 포함하는, 이미지 처리 시스템.
  7. 청구항 1 내지 청구항 6 중 어느 한 항에 있어서, 상기 객체 분류기는 상기 객체 분류기로부터 도출되는 제어 데이터에 응하여 상기 제1 및 제2 객체 분류 사이클들 중 적어도 하나를 구성하도록 되어있는, 이미지 처리 시스템.
  8. 청구항 7에 있어서, 상기 객체 분류기로부터 도출되는 제어 데이터는, 상기 객체 분류가 상기 제1 및 제2 객체 분류 사이클들 중 적어도 하나 동안 수행되는 이미지 프레임 내의 객체의 분류를 표시하는 제어 데이터를 포함하는, 이미지 처리 시스템.
  9. 청구항 8에 있어서, 상기 객체 분류기는 상기 객체 분류기로부터 도출되는 제어 데이터에 응하여 적어도 상기 제2 객체 분류 사이클을 구성하도록 되어있으며, 상기 객체 분류기로부터 도출되는 제어 데이터는, 상기 객체 분류가 제1 객체 분류 사이클 동안 수행되는 이미지 프레임 내의 객체의 분류를 나타내는 제어 데이터를 포함하는, 이미지 처리 시스템.
  10. 청구항 8 또는 청구항 9에 있어서, 상기 객체 분류기로부터 도출되는 제어 데이터는 상기 제1 및 제2 객체 분류 사이클들에 선행하는 객체 분류 사이클 동안 처리를 위해 선택되는 이미지 프레임 내의 객체의 분류를 표시하는 제어 데이터를 포함하는, 이미지 처리 시스템.
  11. 청구항 1 내지 청구항 10 중 어느 한 항에 있어서, 상기 객체 분류기는 상기 제1 및 제2 객체 분류 사이클들 모두 동안 주어진 이미지 프레임 내의 객체 분류를 수행하도록 되어있는, 이미지 처리 시스템.
  12. 청구항 11에 있어서, 상기 객체 분류기는, 상기 주어진 이미지 프레임에서 객체 분류가 먼저 수행되는 초기 객체 분류 사이클로서 상기 제1 객체 분류 사이클을 수행하고, 상기 주어진 이미지 프레임에서 객체 분류가 수행되는 후속 객체 분류 사이클로서 상기 제2 객체 분류 사이클을 수행하도록 되어있는, 이미지 처리 시스템.
  13. 청구항 11 또는 청구항 12에 있어서, 상기 객체 분류기는 복수의 콘볼루션 층과 하나의 완전히 연결된 층을 포함하는 콘볼루션 신경망을 포함하며, 상기 객체 분류기는:
    상기 제1 객체 분류 사이클에서 제1 특징 데이터를 생성하도록 적어도 하나의 제1 콘볼루션 층 내의 주어진 이미지 프레임을 표시하는 이미지 데이터를 처리함으로써;
    상기 제1 콘볼루션 층과는 상이한 제2 층에 특징 맵 데이터로서 제1 특징 데이터를 전송함으로써; 그리고
    상기 제2 객체 분류 사이클 동안 제2 특징 데이터를 생성하도록 적어도 상기 제2 콘볼루션 층을 사용하여 상기 제1 특징 데이터를 처리함으로써,
    객체 분류를 수행하도록 되어있는, 이미지 처리 시스템.
  14. 청구항 1 내지 청구항 10 중 어느 한 항에 있어서, 상기 객체 분류기는, 상기 제1 객체 분류 사이클 동안 주어진 이미지 프레임 내의 객체 분류를 수행하고, 상기 제2 객체 분류 사이클 동안 주어진 이미지 프레임에 후속하는 이미지 프레임 내의 객체 분류를 수행하도록 되어있는, 이미지 처리 시스템.
  15. 청구항 1 내지 청구항 14 중 어느 한 항에 있어서, 상기 객체 분류기는, 상기 하나 이상의 객체 정의가 객체 분류 사이클들의 시퀀스에서 선택된 객체 분류 사이클에서 주기적으로 실행되고 상기 시퀀스에서의 다른 객체 분류 사이클들에서는 실행되지 않는 실행 패턴에 따라 상기 세트로부터 하나 이상의 객체 정의를 구성하도록 되어있는, 이미지 처리 시스템.
  16. 청구항 15에 있어서, 상기 객체 분류기는 제1 실행 패턴에 따라 상기 세트로부터 하나 이상의 조-레벨의 객체 정의를 구성하고, 제2 실행 패턴에 따라 상기 세트로부터 하나 이상의 미세-레벨의 객체 정의를 구성하도록 되어있으며, 상기 하나 이상의 조-레벨의 객체 정의는, 상기 하나 이상의 미세-레벨의 객체 정의가 상기 제2 실행 패턴에서 실행되는 것 보다 더 빈번하게 제1 실행 패턴에서 실행되는, 이미지 처리 시스템.
  17. 청구항 16에 있어서, 상기 제1 실행 패턴은 일련의 연속적 객체 분류 사이클들을 포함하고, 상기 제2 실행 패턴은 일련의 비연속적 객체 분류 사이클들을 포함하는, 이미지 처리 시스템.
  18. 청구항 15 내지 청구항 17 중 어느 한 항에 있어서, 상기 객체 분류기는 제1 조-레벨의 실행 패턴에 따라 상기 세트로부터 하나 이상의 조-레벨의 객체 정의를 구성하며 제2 조-레벨의 실행 패턴에 따라 상기 세트로부터 하나 이상의 조-레벨의 객체 정의를 구성하도록 되어있으며, 상기 제1 및 제2 실행 패턴들은 중첩하지 않는, 이미지 처리 시스템.
  19. 청구항 1 내지 청구항 18 중 어느 한 항에 있어서, 상기 객체 분류기는 적어도 하나의 프로세서에서 실행되도록 되어있으며, 상기 적어도 하나의 프로세서는 신경망 가속기를 포함하는, 이미지 처리 시스템.
  20. 이미지 데이터를 처리하는 방법으로서,
    동적 장면을 나타내는 순차적 이미지 데이터 프레임들의 형태인 이미지 데이터를 수신하는 단계;
    객체 분류 사이클들에서 객체 분류를 수행하는 단계 - 주어진 객체 분류 사이클에서, 객체 분류가 선택된 이미지 프레임에서 수행됨 - ;
    범주화 데이터를 저장하는 단계 - 상기 범주화 데이터는 객체 분류 동안 사용하기 위한 객체 정의들의 세트를 포함함 - ; 및
    제1 객체 분류 사이클 및 제2 후속 객체 분류 사이클을 구성하는 단계로서,
    상기 범주화 데이터로부터 객체 정의들의 제1 서브세트 - 상기 제1 서브세트는 제1 및 제2 그룹 객체 정의들 중 적어도 하나로부터 선택됨 - 를 선택하고; 상기 제1 객체 분류 사이클에서 상기 제1 서브세트를 선택적으로 실행함으로써; 그리고
    상기 범주화 데이터로부터의 객체 정의들의 제2 서브세트 - 상기 제2 서브세트는 제1 및 제2 그룹 객체 정의들 중 적어도 하나로부터 선택되며 상기 제1 서브세트와 상이함 - 를 선택하고; 상기 제2 객체 분류 사이클에서 제2 서브세트를 선택적으로 실행함으로써, 제1 객체 분류 사이클 및 제2 후속 객체 분류 사이클을 구성하는 단계를 포함하는, 이미지 데이터를 처리하는 방법.
  21. 청구항 20에 있어서, 상기 객체 정의들의 세트는, 객체 정의 계층으로 되어있고, 적어도, 제1 객체 정의 레벨에서의 조-레벨의 객체 정의의 제1 그룹 및 상기 제1 객체 정의 레벨보다 하위인 제2 객체 정의 레벨에서의 미세-레벨의 객체 정의들의 제2 그룹을 포함하는, 이미지 데이터를 처리하는 방법.
  22. 명령들을 저장하는 비일시적 컴퓨터 판독가능한 저장 매체로서, 상기 명령들은 프로세서에 의해 실행될 때, 상기 프로세서로 하여금,
    동적 장면을 나타내는 순차적 이미지 데이터 프레임들의 형태인 이미지 데이터를 수신하게 하고;
    객체 분류 사이클들에서 객체 분류 - 주어진 객체 분류 사이클에서 상기 객체 분류는 선택된 이미지 프레임에서 수행됨 - 를 수행하게 하고;
    범주화 데이터 - 상기 범주화 데이터는 객체 분류 동안 사용하기 위한 객체 정의들의 세트를 포함함 - 를 저장하게 하며; 그리고
    제1 객체 분류 사이클 및 제2 후속 객체 분류 사이클을 :
    상기 범주화 데이터로부터 객체 정의들의 제1 서브세트 - 상기 제1 서브세트는 제1 및 제2 그룹 객체 정의들 중 적어도 하나로부터 선택됨 - 를 선택하고 상기 제1 객체 분류 사이클에서 상기 제1 서브세트를 선택적으로 실행함으로써; 그리고
    범주화 데이터로부터의 객체 정의들의 제2 서브세트 - 상기 제2 서브세트는 제1 및 제2 그룹 객체 정의들 중 적어도 하나로부터 선택되며 상기 제1 서브세트와 상이함 - 를 선택하고 상기 제2 객체 분류 사이클에서 제2 서브세트를 선택적으로 실행함으로써, 제1 객체 분류 사이클 및 제2 후속 객체 분류 사이클을 구성하게 하는, 비일시적 컴퓨터 판독가능한 저장 매체.
KR1020190060637A 2018-05-24 2019-05-23 이미지 처리 KR20190134515A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB1808595.1A GB2574052B (en) 2018-05-24 2018-05-24 Image processing
GB1808595.1 2018-05-24

Publications (1)

Publication Number Publication Date
KR20190134515A true KR20190134515A (ko) 2019-12-04

Family

ID=62812181

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190060637A KR20190134515A (ko) 2018-05-24 2019-05-23 이미지 처리

Country Status (4)

Country Link
US (1) US11010644B2 (ko)
KR (1) KR20190134515A (ko)
CN (1) CN110533059A (ko)
GB (1) GB2574052B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023128026A1 (ko) * 2021-12-30 2023-07-06 한국전자기술연구원 영상 데이터의 라벨링 가이드 방법 및 자동 라벨링 장치

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11792507B1 (en) * 2021-01-15 2023-10-17 Apple Inc. Video monitoring using a hierarchical combination of camera sensors
US20220408098A1 (en) * 2021-06-18 2022-12-22 Tencent America LLC Block-wise entropy coding method in neural image compression

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9767595B2 (en) * 2013-05-02 2017-09-19 Arm Limited Graphics processing systems
WO2015143173A2 (en) * 2014-03-19 2015-09-24 Neurala, Inc. Methods and apparatus for autonomous robotic control
DE102014106506A1 (de) * 2014-05-08 2015-11-12 Valeo Schalter Und Sensoren Gmbh Verfahren zum Durchführen einer Diagnose eines Kamerasystems eines Kraftfahrzeugs, Kamerasystem und Kraftfahrzeug
WO2016074247A1 (en) * 2014-11-15 2016-05-19 Beijing Kuangshi Technology Co., Ltd. Face detection using machine learning
JP6603477B2 (ja) * 2015-04-30 2019-11-06 キヤノン株式会社 情報処理装置、情報処理方法
US9940539B2 (en) * 2015-05-08 2018-04-10 Samsung Electronics Co., Ltd. Object recognition apparatus and method
US9767363B2 (en) * 2015-10-30 2017-09-19 Google Inc. System and method for automatic detection of spherical video content
US10373019B2 (en) * 2016-01-13 2019-08-06 Ford Global Technologies, Llc Low- and high-fidelity classifiers applied to road-scene images
US11032473B2 (en) * 2016-03-02 2021-06-08 Minuteman Security Technologies, Inc. Surveillance and monitoring system
US9842283B2 (en) * 2016-04-29 2017-12-12 Automotive Research & Testing Center Target object detection system and a method for target object detection
CN106295568B (zh) * 2016-08-11 2019-10-18 上海电力学院 基于表情和行为双模态结合的人类自然状态情感识别方法
US9953210B1 (en) * 2017-05-30 2018-04-24 Gatekeeper Inc. Apparatus, systems and methods for improved facial detection and recognition in vehicle inspection security systems
CN107609601B (zh) * 2017-09-28 2021-01-22 北京计算机技术及应用研究所 一种基于多层卷积神经网络的舰船目标识别方法
US10902288B2 (en) * 2018-05-11 2021-01-26 Microsoft Technology Licensing, Llc Training set sufficiency for image analysis

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023128026A1 (ko) * 2021-12-30 2023-07-06 한국전자기술연구원 영상 데이터의 라벨링 가이드 방법 및 자동 라벨링 장치

Also Published As

Publication number Publication date
GB2574052B (en) 2021-11-03
GB2574052A (en) 2019-11-27
CN110533059A (zh) 2019-12-03
US11010644B2 (en) 2021-05-18
US20190362180A1 (en) 2019-11-28
GB201808595D0 (en) 2018-07-11

Similar Documents

Publication Publication Date Title
TWI805869B (zh) 計算場景的主要分類的系統及方法
US11423645B2 (en) Image processing
US10922833B2 (en) Image processing
WO2021238366A1 (zh) 一种神经网络构建方法以及装置
CN111133452A (zh) 用于提高卷积效率的方法、系统和装置
CN108268885B (zh) 特征点检测方法、设备和计算机可读存储介质
JP2022515895A (ja) 物体認識方法及び装置
US20190385024A1 (en) Image processing using a neural network system
US11849226B2 (en) Image processing device including neural network processor and operating method thereof
US11010644B2 (en) Image processing
US11699064B2 (en) Data processing using a neural network system
US10839222B2 (en) Video data processing
US20170085774A1 (en) Managing crowd sourced photography in a wireless network
WO2016176095A1 (en) Reducing image resolution in deep convolutional networks
KR20170140228A (ko) 바이어스 항을 통한 딥 신경망들에서의 톱-다운 정보의 병합
CN109740589B (zh) 视频模式中的异步对象roi检测方法及系统
US11385526B2 (en) Method of processing image based on artificial intelligence and image processing device performing the same
CN111832592A (zh) Rgbd显著性检测方法以及相关装置
Jagannathan et al. Optimizing convolutional neural network on DSP
US20190362155A1 (en) Video data processing
WO2021231183A1 (en) Methods and apparatus for performing analytics on image data
US11514312B2 (en) Computer vision optimisation for small value changes
US10878592B2 (en) Video data processing
WO2022179599A1 (zh) 一种感知网络及数据处理方法
US20220405972A1 (en) An imaging sensor, an image processing device and an image processing method

Legal Events

Date Code Title Description
A201 Request for examination