KR20210150414A - 이미지 이해를 사용하여 데이터 파이프라인을 구성하는 기법 - Google Patents

이미지 이해를 사용하여 데이터 파이프라인을 구성하는 기법 Download PDF

Info

Publication number
KR20210150414A
KR20210150414A KR1020217033105A KR20217033105A KR20210150414A KR 20210150414 A KR20210150414 A KR 20210150414A KR 1020217033105 A KR1020217033105 A KR 1020217033105A KR 20217033105 A KR20217033105 A KR 20217033105A KR 20210150414 A KR20210150414 A KR 20210150414A
Authority
KR
South Korea
Prior art keywords
node
image
data
way
data pipeline
Prior art date
Application number
KR1020217033105A
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 KR20210150414A publication Critical patent/KR20210150414A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06K9/00228
    • 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
    • G06K9/00288
    • G06K9/00302
    • G06K9/00718
    • G06K9/00979
    • G06K9/00993
    • G06K9/6217
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/94Hardware or software architectures specially adapted for image or video understanding
    • G06V10/95Hardware or software architectures specially adapted for image or video understanding structured as a network, e.g. client-server architectures
    • 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
    • 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/40Scenes; Scene-specific elements in video content
    • G06V20/44Event detection
    • G06K2009/00738
    • G06K2209/25
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/09Recognition of logos
    • 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
    • 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
    • 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/174Facial expression recognition

Abstract

노드의 네트워크는 이미지 이해를 필요로 하는 하나 이상의 애플리케이션을 위한 데이터 파이프라인으로 구성된다. 노드는 애플리케이션에 따라 상이한 데이터 파이프라인을 형성하도록 구성할 수 있다. 노드로부터 데이터 파이프라인을 구성하는 프로세스는 표준화될 수 있다. 일 구현에서, 노드는 센서 기능(예를 들어, 이미지 캡처) 및 이미지 이해 기능(예를 들어, 객체 검출 및 인식)을 포함할 수 있는 다양한 능력을 갖는다. 노드의 능력에 대한 설명에 기초하여, 데이터 파이프라인에 포함할 다양한 노드가 선택되고 데이터 파이프라인을 형성하기 위해 선택된 노드 간의 상호연결도 결정된다. 제어 데이터는 데이터 파이프라인을 형성하기 위해 선택된 노드로 전송된다. 제어 데이터는 데이터 파이프라인에서 각각의 노드의 역할에 따라 선택된 노드에 대한 센서 및/또는 이미지 이해 기능을 지정하고 선택된 노드 간의 상호연결도 지정한다.

Description

이미지 이해를 사용하여 데이터 파이프라인을 구성하는 기법
본 개시는 일반적으로 이미지를 포함하는 센서 데이터의 처리 및 이해에 관한 것이다.
오늘날 수백만 개의 카메라 및 기타 센서 장치가 배치되어 있다. 일반적으로 컴퓨팅이 카메라로 캡처한 콘텐츠와 의미 있는 방식으로 쉽게 상호작용할 수 있도록 하는 메커니즘이 없다. 이로 인해 카메라로부터의 대부분의 데이터가 실시간으로 처리되지 않고, 기껏해야 이벤트가 발생한 것으로 알려진 후에 캡처된 이미지가 포렌식 목적으로 사용된다. 그 결과, 결국 분석이 흥미롭지 않은 비디오를 저장하기 위해 많은 양의 데이터 스토리지가 낭비된다. 또한, 캡처된 비디오를 이해하려면 일반적으로 인간의 모니터링이 필요하다. 이미지에서 관련 데이터를 해석하거나 검출하는 데 사용할 수 있는 기계 지원은 제한적이다.
오늘날의 또 다른 문제는 정보 처리가 애플리케이션에 따라 매우 다양하다는 것이다. 고급 운전자 지원 시스템 및 얼굴 인식 기반 보안과 같은 애플리케이션에는 각각의 카메라의 기본 로우 레벨 인터페이스를 사용하여 카메라로부터 미처리(raw) 이미지를 읽은 다음 대상 애플리케이션에 대해 특정 방식으로 미처리 이미지를 처리하는 맞춤형 소프트웨어가 필요하다. 애플리케이션 개발자는 전형적으로 그저 미처리 이미지를 얻기 위해 각기 다른 유형의 카메라에 대해 특정 로우 레벨 인터페이스를 생성해야 하며, 그 후 전형적으로 미처리 비디오 프레임을 처리하여 원하는 정보를 추출하는 애플리케이션 특정 소프트웨어도 생성해야 한다.
로우 레벨 카메라 인터페이스에 더하여, 애플리케이션 개발자가 더 높은 레벨의 이미지 이해를 위해 인공 지능 또는 머신 러닝과 같은 기존의 처리 또는 분석 능력을 사용하기를 원하면, 또한 이들 시스템 각각에 대한 인터페이스를 이해하고 생성해야 할 것이다. 이들 시스템은 독점 API를 사용할 수 있다. 애플리케이션 개발자는 특정 공급업체의 솔루션에 갇혀 나중에 다른 솔루션으로 전환하기 어려울 수 있다.
그 결과, 센서의 네트워크를 사용하는 애플리케이션의 개발은 느리고 제한적이다. 예를 들어, 환경에 설치된 감시 카메라는 전형적으로 보안 목적으로만 매우 제한적인 방식으로 사용된다. 이는 부분적으로 이러한 시스템에 의해 캡처된 이미지 프레임이 의미 있는 데이터를 추출하기가 매우 어렵기 때문이다. 마찬가지로, 자동차에 장착된 카메라 네트워크가 있는 자동차 환경에서, 이들 카메라로부터 캡처한 이미지 데이터는 자동차의 특징부에 매우 특정한 방식으로 처리된다. 예를 들어, 전방 카메라는 차선 지원에만 사용될 수 있다. 일반적으로 애플리케이션이 데이터나 비디오를 다른 용도로 사용할 수 있게 하는 능력은 없다. 또한 일반적으로 서로 다른 애플리케이션이 특정 애플리케이션에 필요한 대로 서로 다른 센서와 서로 다른 처리 기능을 데이터 파이프라인으로 통합할 수 있게 하는 유연성이 없다.
따라서, 카메라에 의해 캡처된 이미지 및 비디오에 대한 더 높은 레벨의 이해를 포함하여 센서 장치에 의해 캡처된 데이터에 액세스하고 처리하는 데 있어 더 많은 유연성과 용이성이 필요하다. 복수의 애플리케이션이 기존 (및 공유) 센서 및 처리 능력으로부터 맞춤형 데이터 파이프라인을 어셈블할 수 있도록 하는 데 있어 더 많은 유연성과 용이성도 필요하다.
본 개시는 이미지 이해를 필요로 하는 하나 이상의 애플리케이션을 위한 데이터 파이프라인으로 노드의 네트워크를 구성하기 위한 방안을 제공함으로써 종래 기술의 한계를 극복한다. 노드는 애플리케이션의 요구사항에 따라 상이한 데이터 파이프라인을 형성하도록 구성가능하다. 몇몇 실시예에서, 노드로부터 데이터 파이프라인을 구성하는 프로세스는 표준에 따라 및/또는 표준화된 API를 통해 수행된다.
노드는 센서 기능(예컨대, 이미지 캡처) 및 이미지 이해 기능(예컨대, 객체 검출 및 인식)에 대한 액세스를 포함할 수 있는 다양한 능력을 가지고 있다. 노드의 능력에 대한 설명을 기반으로, 데이터 파이프라인에 포함될 소정의 노드가 선택된다. 데이터 파이프라인을 형성하기 위해 선택된 노드들 간의 상호접속도 결정된다. 제어 데이터는 선택된 노드로 전송되어 데이터 파이프라인이 형성된다. 제어 데이터는 데이터 파이프라인에서 각 노드의 역할에 따라 선택된 노드에 대한 센서 및/또는 이미지 이해 기능을 지정하고 선택된 노드들 간의 상호접속도 지정한다.
파이프라인에서, 몇몇 노드는 센서 능력에 대한 액세스를 갖는다. 이들은 센서 자체이거나 센서에 대한 액세스를 갖는다. 센서 기능은 데이터 파이프라인의 소스로서 작동한다. 이는 이미지 캡처(예컨대, 카메라)가 가능한 노드를 포함한다. 데이터 파이프라인은 소스에 의해 캡처된 센서 데이터로부터 이미지 데이터 및 이미지 이해 메타데이터를 생성한다. 이미지 데이터의 예는 캡처된 이미지 및/또는 캡처된 이미지에서 파생된 향상된 이미지를 포함한다. 이미지 이해 메타데이터는 이미지 데이터의 이미지 이해를 설명하는 메타데이터, 예컨대, 얼굴 또는 객체의 검출 또는 인식이다. 이미지 이해 메타데이터는 이미지 이해에 대응하는 이미지 데이터도 참조한다. 예를 들어, 인식된 얼굴이나 객체의 비디오 프레임에 대한 썸네일 및 포인터를 포함할 수 있다. 경우에 따라, 제어 데이터는 데이터 파이프라인에 의해 생성된 이미지 데이터 및 이미지 이해 메타데이터도 지정한다.
다른 양상은 구성요소, 장치, 시스템, 개선, 방법, 프로세스, 애플리케이션, 컴퓨터 판독가능 매체 및 앞에 설명된 것 중 임의의 것과 관련된 다른 기술을 포함한다.
특허 또는 출원 파일은 컬러로 실행된 적어도 하나의 도면을 포함한다. 컬러 도면(들)이 있는 이 특허 또는 특허 출원 공개의 사본은 필요한 수수료의 요청 및 지불 시 사무소에서 제공한다.
본 개시의 실시예는 첨부 도면의 예와 관련하여 취해질 때 다음의 상세한 설명 및 첨부된 청구범위로부터 보다 쉽게 명백해질 다른 이점 및 특징을 갖는다.
도 1a는 애플리케이션을 위한 데이터 파이프라인으로 구성가능한 노드의 네트워크의 블록도이다.
도 1b는 노드의 블록도이다.
도 2 내지 도 4는 이미지 이해를 가진 데이터 파이프라인의 예를 도시한다.
도 5는 데이터 파이프라인으로의 도 1의 노드의 구성을 도시하는 블록도이다.
도 6a 내지 도 6b는 데이터 파이프라인에 의해 생성된 출력 데이터를 도시한다.
도 7은 중개 서비스의 사용을 도시하는 블록도이다.
도 8은 데이터 파이프라인의 표준 기반 구성의 이벤트 트레이스이다.
도 9는 구성된 데이터 파이프라인의 블록도이다.
도 10은 노드 내부에 피드백을 갖는 데이터 파이프라인의 블록도이다.
도 11은 노드들 간의 피드백을 갖는 데이터 파이프라인의 블록도이다.
도면 및 다음 설명은 단지 예시에 의한 바람직한 실시예에 관한 것이다. 다음의 논의로부터, 본 명세서에 개시된 구조 및 방법의 대안적인 실시예는 청구된 것의 원리를 벗어나지 않고 이용될 수 있는 실행 가능한 대안으로서 쉽게 인식될 것이라는 점에 유의해야 한다.
도 1a는 애플리케이션(170)을 위한 데이터 파이프라인으로 구성가능한 노드(110)의 네트워크의 블록도이다. 애플리케이션(170)의 예는 스마트폰 애플리케이션, 클라우드 애플리케이션 및 웹 페이지 애플리케이션을 포함한다. 노드(110)는 애플리케이션(170)이 원하는 기능을 달성하기 위해 물리적 장치 내에서 또는 별개의 물리적 장치에서 다른 노드에 상호연결될 수 있다.
도 1b는 예시적인 노드(110)의 블록도이다. 노드(110)는 입력 포트(112) 또는 출력 포트(118)일 수 있는 하나 이상의 포트를 갖는다. 노드(110)는 변환기 능력(120) 및/또는 처리 능력(130)을 또한 갖는다. 도 1b는 노드의 일반적인 블록도이다. 실제 노드는 표시된 기능 전부를 갖지 않을 수도 있다.
변환기(120)는 센서(122) 및 액추에이터(128)로 광범위하게 세분될 수 있다. 센서(122)는 외부 자극을 데이터로 변환한다. 예는 이미지 및 다른 스펙트럼 센서, 마이크로폰, 온도 또는 열 센서, 압력 센서, 연기 및 기타 화학 센서를 포함한다. 액추에이터(128)는 데이터를 외부 자극으로 변환한다. 예는 스피커 및 촉각 피드백을 포함한다.
아래의 예에서, 변환기 능력은 편의상 노드(110) 내부에 도시되어 있다. 노드(110)가 물리적 변환기를 포함하는 경우, 노드는 변환기 기능에 직접 액세스할 것이다. 그러나, 노드(110)는 노드 외부에 위치한 변환기에 대한 변환기 기능에 액세스할 수도 있다. 예를 들어, 레거시 카메라는 아래에 설명된 개념을 구현하는 표준과 호환되지 않을 수 있다. 이 경우, 브리지가 카메라의 능력에 대한 액세스를 갖는 노드(110) 역할을 할 수 있다. 이는 처리 기능(130)에도 적용된다.
처리(130)는 이미지 처리(132) 및 비-이미지 처리(138)로 광범위하게 세분될 수 있다. 이미지 처리(132)는 이미지 진화(134) 및 이미지 이해(136)로 더 세분될 수 있다. 이미지 진화(134)는 이미지의 품질을 개선하는 데 사용되는 하위 레벨 기능이다. 예는 센서 바이어스 보정, 픽셀 결함 보정, 비네팅(vignetting) 보상, 다크 프레임 제거, 화이트 밸런싱, 디모자이킹(demosaicing), 노이즈 감소, 공간 필터링, 컬러 공간 변환, 톤 매핑, 감마 보정, 콘트라스트 향상, 에지 향상, 수차(aberration) 보정, 초점 조정, 노출 조정, 리샘플링, 해상도 향상, 하이 다이내믹 레인지 조정 및 컬러 필터 어레이 보간을 포함한다.
이미지 이해(136)는 이미지의 콘텐츠를 이해하는 데 사용되는 상위 레벨의 기능이다. 일례는 특정 객체의 존재 또는 부재의 검출이다: 얼굴, 인간, 동물 또는 소정 유형의 동물, 차량, 무기, 인공 구조물 또는 소정 유형의 구조물, 또는 텍스트 또는 로고 또는 바코드의 검출. 상위 레벨의 예는 특정 객체의 식별(즉, 인식)이다: 군중 속의 테러리스트 식별, 이름으로 개인 식별, 회사 로고 식별, 여권 또는 운전 면허증 또는 기타 자격증명으로 개인 식별. 이미지 이해(136)의 더 높은 레벨의 예는 특정 객체의 검출 또는 식별에 기초한 추가 특성화이다. 예를 들어, 얼굴을 검출한 다음 분석하여 표현된 감정을 이해할 수 있다. 이미지 이해의 다른 예는 특정 동작이나 활동 및 특정 위치 또는 환경의 검출 및 식별을 포함한다.
도 1a로 돌아가면, 노드(110)는 다수의 상이한 플랫폼에서 구현될 수 있고, 예를 들어, 카메라 내에 내장되거나, 클라우드 상에서 또는 모바일 애플리케이션으로서 실행될 수 있다. 장치는 하나의 노드 또는 복수의 노드를 포함할 수 있다. 장치는 노드 구성을 담당한다. 장치는 물리적 장치이거나 서버 상에 또는 클라우드에서 가상화될 수 있다. 각각의 노드는 고유하게 식별가능하다.
도 1a에서, 상이한 노드(110A-C)의 그룹은 대응하는 관리 계층(160A-C)에 의해 관리되지만, 이것이 필요한 것은 아니다. 이 예에서, 관리 계층(160A)은 그룹 A의 노드(110A1-3)를 관리하고, 관리 계층(160B)은 그룹 B의 노드(110B1-2)를 관리하며, 관리 계층(160C)은 그룹 C의 노드(110C1-2)를 관리한다.
그룹화는 장치 또는 다른 것에 의해 이루어질 수 있다. 예를 들어, 그룹 A는 카메라 내의 모든 노드(110), 예를 들어, 개별 센서, 온-디바이스(on-device) 이미지 처리 및 애플리케이션 프로세서를 포함할 수 있다. 그룹 B는 함께 네트워킹된 장치의 시스템 전체에 걸쳐 분산된 상이한 기능과 같이 로컬로 액세스 가능한 노드(110)의 풀을 포함할 수 있다. 보다 복잡한 형태의 이미지 이해는 상당한 컴퓨팅 자원을 필요로 하는 머신 러닝, 딥 러닝 및/또는 인공 지능 기법에 기초할 수 있다. 예를 들어, 그룹 C는 클라우드 서비스로서 사용할 수 있는 상위 레벨의 기능을 포함할 수 있다.
애플리케이션(170)은 노드(110)를 데이터 파이프라인으로 구성한다. 데이터 파이프라인은 데이터의 소스로서 이미지 캡처를 포함한다. 또한 캡처된 이미지 데이터의 이미지 이해를 수행하고 이미지 이해를 설명하는 메타데이터를 생성한다. 명확성을 위해, 이를 다른 유형의 메타데이터와 구별하기 위해 이미지 이해 메타데이터로 지칭할 것이다. 예를 들어, 이미지 이해 메타데이터는 인간이 있는지 여부를 명시하거나, 식별된 인간의 이름을 제공하거나, 얼굴에서 식별된 감정을 나열할 수 있다. 전형적으로, 데이터 파이프라인은 이미지 데이터(캡처된 이미지 또는 캡처된 이미지에서 파생된 버전)도 생성할 것이고 이미지 이해 메타데이터는 이미지 이해에 해당하는 이미지 데이터도 참조할 것이다. 예를 들어, 감정을 식별하는 이미지 이해 메타데이터는 해당 얼굴에 대한 이미지 프레임(들)도 참조할 수 있다.
애플리케이션(170)은 다른 엔티티의 지원으로 직접 데이터 파이프라인을 직접 어셈블하거나 다른 엔티티(예컨대, 관리 계층)를 통해 간접적으로 어셈블할 수 있다. 노드(110)가 구성되고 나서 상이한 데이터 파이프라인으로 여러 번 재구성될 수 있기 때문에, 본 명세서에 설명된 방안은 노드의 능력을 더 잘 사용하도록 하는 유연성을 제공한다. 일부 실시예에서, 노드를 데이터 파이프라인으로 구성하기 위한 프로세스는 표준화된 API(application programming interface)와 같은 표준에 기초한다. 그 다음, 다수의 애플리케이션(170)은 상이한 데이터 파이프라인을 구축하기 위해 노드에 액세스할 수 있고 노드가 충분한 용량을 갖는다면 파이프라인을 동시에 구동할 수 있다.
도 2 내지 도 4는 이미지 이해를 가진 데이터 파이프라인의 예이다. 도 2에서, 애플리케이션은 군중 속에 있는 사람들의 홍채 스캔을 수행하고 있다. 데이터 파이프라인은 넓은 시야를 가진 저해상도 컬러 이미지(210)를 캡처하는 것으로 시작된다. 파이프라인의 다음 단계는 빠른 디지털 줌을 사용하여 관심 영역을 확대한다(212). 관심 대상을 식별하기 위한 얼굴 검출 및 인식(214)(이미지 이해)이 이어진다. 그런 다음 눈의 위치가 결정된다(216). 광학 줌 및 디지털 크로핑을 사용하여 고배율 카메라가 눈 위치로 향하게 된다(218). 그 다음에 이들 이미지는 생체인식 홍채 식별에 사용될 수 있다. 도 2의 하단은 데이터 파이프라인에 의해 생성된 이미지 데이터를 보여준다. 예를 들어, 이 파이프라인의 메타데이터는 대상 식별을 포함할 수 있다.
도 3의 예에서, 애플리케이션은 학교의 감시를 제공한다. 이 예에서, 데이터 파이프라인은 교실의 일반적인 비디오 감시를 제공하는 단계로 시작한다. 이 단계는 넓은 영역의 일반 감시에 적합하다. 이 단계 동안, 12시에, 우는 사람을 식별하는 사운드 인식 이벤트가 있다. 이것은 12시에 이미지 프레임을 자동으로 마킹한다.
이벤트는 도 3의 하위 4개 프레임에 도시된 바와 같이 더 많은 데이터를 캡처하고/하거나 더 많은 처리를 제공하기 위한 파이프라인 단계를 트리거한다. 여기에서, 일반 비디오는 너무 어둡기 때문에 높은 노출 프레임도 캡처된다. 데이터 파이프라인은 또한 적외선 프레임을 캡처하고 클로즈업 프레임을 위해 확대한다. 이러한 상이한 이미지로부터, 데이터 파이프라인의 추가 단계는 학생을 존으로 식별하고 그가 괴로워하는 감정 상태에 있음을 식별한다. 이 이미지 이해는 도 3에 도시된 바와 같이 메타데이터 얼굴=존 및 감정=괴로움으로서 데이터 파이프라인에 의해 출력된다. 이 메타데이터는 임의의 특정한 하나의 프레임이 아니라 4개의 이미지 프레임 세트에 대한 것이다. 메타데이터는 해당 이미지 프레임도 참조한다.
도 4는 고속 프레임 레이트가 데이터 파이프라인에 의한 분석을 위해 복수의 프레임이 결합되도록 하는 예를 도시한다. 이 예에서, 센서 장치의 미처리 프레임 속도는 초당 120 프레임이다. 정상 작동 하에서, 매 4번째 프레임이 캡처되어 이미지 데이터로서 저장된다. 그러나, 데이터 파이프라인에서, 소정의 트리거 시, 상이한 조건에서 추가 프레임이 캡처된다. 이 예에서, 카메라는 3색 카메라이지만, IR 이미지를 효과적으로 캡처하기 위해 필터링될 수 있다. 움직임이 검출되면, 추가 이미지가 캡처된다: 노출 증가 이미지, 적외선 이미지 및 깊이 측정이 있는 프레임(이 예에서는 적외선 구조광에 기반함). 데이터 파이프라인은 이들 이미지를 이후 단계에서 처리하여 얼굴 또는 객체를 검출하거나 다른 유형의 이미지 이해를 수행한다.
도 5는 데이터 파이프라인으로의 도 1의 노드의 구성을 도시하는 블록도이다. 이 예는 노드 및 노드의 능력의 목록을 유지하고 애플리케이션에 노드에 대한 액세스도 허가하는 계정 서비스(580)를 포함한다. 계정 서비스(580)는 최종 사용자가 카메라 및 기타 센서 장치는 물론 더 높은 레벨의 처리를 관리하는 방법을 제공할 수 있다.
하나의 방안에서, 사용자는 자신의 사용자 계정에 액세스하는 장치/노드를 할당한 다음 선택한 애플리케이션(170)을 자신의 계정에 연결한다. 애플리케이션(170)이 사용자의 계정에 대한 액세스를 허가하면, 애플리케이션(170)은 사용자의 계정 및 이의 능력과 연관된 장치의 목록을 요청할 수 있다(510). 계정 서비스(580)는 이 정보를 반환(512)하고 또한 노드에 대한 액세스를 얻는 데 필요한 암호, 키 또는 기타 자격증명을 반환할 수 있다. 전형적으로, 이는 액세스 토큰일 것이다. 계정 서비스(580)가 사용되지 않는 경우, 애플리케이션(170)은 예를 들어, 표준에 지정된 자동 탐색 프로세스를 통해 이용가능한 노드 및 이의 능력을 직접 결정할 수 있다. 이와 달리, 이 정보가 별개의 파일로 제공될 수 있다.
노드의 능력에 대한 설명에 기초하여, 애플리케이션(170)은 데이터 파이프라인을 결정한다(520). 애플리케이션(170)은 데이터 파이프라인에 포함할 노드를 선택하고 선택한 노드 간의 상호연결을 결정하여 데이터 파이프라인을 형성한다. 데이터 파이프라인은 나머지 파이프라인에 대한 데이터 소스 역할을 하는 센서 노드를 포함할 것이며 이미지 이해 능력이 있는 노드도 포함할 것이다. 데이터 파이프라인의 결정은 단지 노드의 능력에 대한 설명이 아닌 추가 정보를 기반으로 할 수 있다. 예를 들어, 센서의 지리적 커버리지 또는 서로에 대한 근접성은 파이프라인에 포함할 센서와 이들을 상호연결하는 방법을 결정하는 데 사용될 수 있다.
애플리케이션(170)은 데이터 파이프라인을 형성하도록 선택된 노드(110)에 제어 데이터를 전송한다(530). 도 5에서, 제어 데이터는 관리 계층(160)으로(즉, 노드에 간접적으로) 전송(530)되며, 그 다음에 요청된 구성을 수행한다. 제어 데이터는 각각의 노드의 기능을 지정하고 노드 간의 상호연결도 지정한다. 또한 데이터 파이프라인에 의해 생성될 이미지 데이터 및 메타데이터를 지정할 수도 있다. 일 방안에서, 데이터 파이프라인은 데이터를 공급하는 즉시 업스트림 노드(소스 노드)와의 제어 세션을 설정하는 각각의 노드(싱크 노드)에 의해 형성되지만, 다른 제어 방안도 사용될 수 있다. 도 5에서, 제어 평면은 점선으로 표시되고 데이터 파이프라인은 굵은 실선으로 표시된다.
도 5의 예시적인 데이터 파이프라인은 선형이 아니다. 이것은 분기를 갖는다. 노드(110A1)는 전체 데이터 파이프라인용 소스이다. 순방향 데이터 경로는 먼저 노드(110A1)에서 노드(110A2)까지이다. 그 다음 노드(110A3 및 110B2)로 분기한다. 110A3 분기는 110B1, 110C1, 110C2로 그 다음에 540으로 그리고 애플리케이션(170)으로 계속된다. 다른 분기에서, 노드(110B2)의 출력은 애플리케이션(170)에 제공된다(540). 110C2에도 공급되어 110A3 분기와 결합된다. 따라서, 애플리케이션(170)에 대한 2개의 데이터 피드(540)가 존재하는데, 하나는 노드(110B2)로부터, 하나는 노드(110C2)로부터이다.
데이터 파이프라인의 분기화는 정적일 수 있으며, 위에서 설명된 바와 같이 노드(110A2)로부터의 데이터가 항상 두 분기로 흐른다. 그것은 이미지 이해의 조건에 의해 트리거될 수도 있다. 예를 들어, 노드(110A2)가 몇몇 이미지 이해를 수행하는 경우, 데이터 파이프라인은 이미지 이해의 결과에 따라 110A3 또는 110B2로 계속될 수 있다. 예를 들어, 무기가 검출되지 않으면 소정의 처리가 발생하지만, 치명적인 무기가 검출되면 다른 처리가 발생한다. 트리거는 제어 데이터에 지정될 수 있다.
도 5의 예시적인 데이터 파이프라인은 또한 노드(110A2)로부터 노드(110A1)로의 피드백 루프를 포함하며, 이는 동일한 그룹(예를 들어, 동일한 장치 상)의 2개의 노드 사이의 피드백이다. 이 특정 루프는 소스 노드(110A1)에 피드백을 제공한다. 예를 들어, 이미지 캡처 설정은 이미지 이해에 따라 변경될 수 있다. 피드백 루프는 다른 노드 사이, 예를 들어, 상이한 장치의 노드 사이에도 수립될 수 있다.
도 5는 일례일 뿐이다. 다른 예와 토폴로지가 명백할 것다. 예를 들어, 데이터 파이프라인은 서로 다른 유형의 센서 데이터를 캡처하는 복수의 소스를 포함할 수 있으며, 데이터 파이프라인은 센서 융합을 기반으로 하는 이미지 이해 기능도 포함한다. 또한, 동일하거나 상이한 사용자로부터의 복수의 애플리케이션(170)은 그들 자신의 데이터 파이프라인을 구성하기 위해 동일한 노드에 액세스할 수 있다.
도 6a 및 도 6b는 데이터 파이프라인에 의해 생성된 데이터의 예를 제공한다. 이 예에서, 이미지 데이터 및 다른 미처리 또는 향상된 센서 데이터는 "장면 데이터"로 지칭된다. 데이터는 "장면 샷"으로 시간별로 구성된다. 스냅샷이 일련의 비디오 이미지 중 하나의 프레임이면, 장면 샷은 유사한 개념이지만 단일 프레임이나 이미지에만 국한되지 않는다. 장면 샷은 전형적으로 메타데이터도 포함하며, 이는 도 6a에서 이미지 이해 메타데이터 및 다른 유형의 메타데이터로 나뉜다.
도 6a는 장면 샷의 블록도이다. 이 장면 샷은 헤더를 포함한다. 그것은 다음 일반 메타데이터를 포함한다: 센서 장치 ID, SceneMode(아래에 설명된 제어 데이터 유형), 요청 애플리케이션의 ID, 타임스탬프, GPS 위치 스탬프.
장면 샷의 데이터 부분은 또한 2개의 카메라로부터의 컬러 비디오, 상이한 해상도 및 프레임 레이트의 IR 비디오, 깊이 측정 및 오디오를 포함할 수 있는 장면 데이터를 포함한다. 비디오 컨텍스트 내에서, 장면 데이터의 예는 흑백, 컬러, 적외선 및 상이한 해상도와 프레임 레이트로 캡처된 이미지를 포함한다. 비이미지 유형의 장면 데이터는 오디오, 온도, 주변 조명 또는 광도 및 주변 환경에 대한 다른 유형의 데이터를 포함한다. 장면 데이터는 인코딩 및/또는 암호화될 수 있다. 이들은 또한 센서 바이어스 보정, 다크 프레임 제거, 화이트 밸런싱, 디모자이킹, 노이즈 감소, 공간 필터링, 콘트라스트 향상, 에지 향상 등과 같은 이미지 진화 기능에 의해 향상될 수 있다.
장면 샷은 또한 이미지 이해 메타데이터, 예를 들어, 움직임 검출 및 객체/인간/얼굴 검출을 포함한다. 이들은 아래에서 더 자세히 설명하는 대로 SceneMark의 형태를 취할 수 있다.
이 데이터는 또한 시간적 양상을 갖는다. 종래의 비디오에서는, 비디오의 프레임 레이트에 따라 일정한 간격으로 새로운 이미지가 캡처된다. 비디오 시퀀스의 각각의 이미지는 프레임으로 지칭된다. 유사하게, 장면은 전형적으로 소정 지속시간을 가지며(일부 장면은 무한정 계속될 수 있음) 장면의 상이한 "샘플"이 시간이 지남에 따라 캡처/생성된다. 혼동을 피하기 위해, 장면 샷은 하나 이상의 비디오 프레임을 포함할 수 있으므로, 이들 장면 샘플은 프레임이 아닌 장면 샷으로 지칭될 것이다. 장면 샷이라는 용어는 장면과 스냅샷의 조합이다.
종래의 비디오에 비해, 장면 샷은 또한 더 많은 가변성을 가질 수 있다. 장면 샷은 일정한 시간 간격으로 생성되거나 생성되지 않을 수 있다. 일정한 시간 간격으로 생성되더라도, 장면이 진행됨에 따라 시간 간격이 변경될 수 있다. 예를 들어, 장면에서 흥미로운 것이 검출되면, 장면 샷의 빈도가 증가할 수 있다. 동일한 애플리케이션에 대한 일련의 장면 샷은 또한 동일한 유형의 데이터 또는 모든 장면 샷의 동일한 센서 채널에서 파생된 데이터을 포함할 수도 있고 또는 포함하지 않을 수도 있다. 예를 들어, 장면의 소정 부분에 대한 고해상도 주밍된 이미지가 바람직할 수 있거나 장면이 진행됨에 따라 추가 센서 채널이 추가되거나 제거될 수 있다. 마지막 예로서, 장면 샷 또는 장면 샷 내의 구성요소는 상이한 애플리케이션 간에뿐만 아니라 더 광범위하게 공유될 수 있다.
실제로, 실제 장면 데이터는 부피가 너무 클 수 있다. 결과적으로, 이 데이터는 미들웨어에 의해 또는 클라우드에 저장될 수 있으며, 장면 샷의 실제 데이터 패킷은 실제 데이터 자체가 아닌 장면 데이터에 대한 포인터를 포함할 수 있다. 다른 예로서, 메타데이터는 동적일 수 있다(즉, 각 장면 샷에 포함되고 가변적일 수 있다). 그러나, 메타데이터가 자주 변경되지 않는 경우, 개별 장면 샷과 별도로 전송되거나 별개의 채널로서 전송될 수 있다.
도 6b는 장면 샷을 "장면"으로 구성하는 것을 도시하는 타임라인이다. 이 도면에서, 시간은 왼쪽에서 오른쪽으로 진행된다. 원래 장면 1은 학교의 방과후 감시를 수행하는 애플리케이션에 대한 것이다. 장면 샷(652A)은 이 장면 1에 대해 캡처/생성된다. 장면 샷(652A)은 학교에 대한 주요 진입 포인트의 대략적인 해상도, 비교적 낮은 프레임 레이트 비디오를 포함할 수 있다. 장면 샷(652A)은 또한 잠재적으로 의심스러운 활동을 나타낼 수 있는 움직임 검출 또는 기타 처리된 데이터를 포함할 수 있다. 도 6b에서, 장면 샷은 괄호 안의 숫자(N)로 표시되므로, 652A(01)는 하나의 장면 샷이고, 652A(02)는 다음 장면 샷 등이다.
장면 마크 2로 표시된 장면 샷 652A(01)에서 의심스러울 수 있는 활동이 검출되고 제2 장면 2가 생성된다. 장면 마크 2는 움직임이 검출되었음을 나타내는 이미지 이해 메타데이터를 포함한다. 이 장면 2는 장면 1의 하위 장면이다. "하위"는 생성 관계를 지칭하며 장면 2가 데이터의 측면 또는 시간적 지속기간에서 장면 1의 하위집합임을 의미하지 않는다는 점에 유의한다. 사실, 이 장면 2는 추가 데이터(652B)를 요청한다. 아마도 이 추가 데이터는 얼굴 인식이다. 사이트에서 검출된 개인은 승인된 것으로 인식되지 않으며, 이는 장면 마크 3으로 표시된 장면 3(즉, 하위 하위 장면 3)을 생성한다. 장면 3은 데이터(652B)를 사용하지 않지만, 추가 데이터(652C), 예컨대, 진입 지점에서뿐만 아니라 사이트 전체에 위치한 카메라로부터의 고해상도 이미지를 사용한다. 이미지 캡처 속도도 증가한다. 장면 마크 3은 상황을 조사하기 위해 관계자에게 통지를 트리거한다.
그 동안에, 관련 없는 또 다른 애플리케이션이 장면 4를 생성한다. 아마도 이 애플리케이션은 고장의 조기 검출 또는 예방 유지보수를 위한 학교 인프라구조의 원격 모니터링에 사용된다. 또한 동일한 데이터(652A)의 일부를 사용하지만, 다른 목적을 위해 상이한 애플리케이션에 의해 사용된다.
도 7은 데이터 파이프라인을 구성하기 위한 중개 서비스의 사용을 도시하는 블록도이다. 도 7은 중개 서비스(790)가 도입된 것을 제외하고는 도 5와 유사하다. 애플리케이션(170)은 계정 서비스(580) 또는 관리 계층(160)과 직접 상호작용하지 않는다. 오히려, 애플리케이션(170)은 계정 서비스(580) 및 관리 계층(160)과 상호작용하는 중개자(790)와 상호작용한다. 예를 들어, 데이터 서비스(790)는 API를 애플리케이션(170)에 제공하여 애플리케이션에 서비스를 제공할 수 있다.
도 7에서, 시스템은 다음과 같이 동작한다. 데이터 서비스(790)는 노드 및 이들의 능력의 목록을 유지한다. 데이터 서비스(790)는 장치, 노드 및 이들의 능력의 목록을 주기적으로 요청할 수 있다(710). 계정 서비스(580)는 이 정보를 반환하고(712) 또한 노드에 대한 액세스를 얻는 데 필요한 암호, 키 또는 기타 자격증명을 반환할 수 있다. 그 다음, 애플리케이션(170)은 데이터 서비스(790)로부터 이 정보를 요청하고(714) 수신한다(716).
노드의 능력에 대한 설명에 기초하여, 애플리케이션(170)은 데이터 파이프라인을 결정한다(720). 애플리케이션(170)은 데이터 파이프라인에 포함할 노드를 선택하고 선택한 노드 간의 상호연결을 결정하여 데이터 파이프라인을 형성한다. 그 다음, 애플리케이션(170)은 제어 데이터를 데이터 서비스(790)에 전송하고(730), 이는 대응하는 제어 데이터를 관리 계층(160)에(즉, 노드에 간접적으로) 전송하며(732), 그 다음에 요청된 구성을 수행한다. 제어 데이터는 각 노드의 기능을 지정하고 노드 간의 상호연결도 지정한다. 또한 데이터 파이프라인에 의해 생성될 이미지 데이터 및 메타데이터를 지정할 수도 있다.
결과적인 데이터 파이프라인은 데이터를 데이터 서비스(790)에 반환하고(740), 이는 데이터를 요청 애플리케이션(170)에 제공한다(742). 상이한 데이터 파이프라인이 도 5와 관련하여 설명된 바와 같이 구성될 수 있다.
위의 예에서, 중개 서비스(790)는 애플리케이션(170)과 시스템의 나머지 사이에 있는 통과 엔티티로 설명되었다. 그러나, 데이터 서비스(790)는 또한 추가 기능을 제공할 수 있다. 예를 들어, 데이터 서비스(790)는 자체적으로 변환기 또는 처리 기능을 가질 수 있다. 데이터 서비스(790)는 또한 복수의 노드(110)로부터 또는 복수의 애플리케이션(170)에 대한 데이터의 교차 분석을 수행할 수 있다. 데이터 서비스(790는 또한 복수의 애플리케이션(170)으로부터 데이터에 대한 요청을 집계, 우선순위화 또는 다중화할 수 있다. 장치는 한 번에 단일 애플리케이션(170)과 상호작용하는 것으로 제한될 수 있다. 그러나, 그 경우에, 복수의 애플리케이션(170)은 데이터 서비스(790)와 상호작용할 수 있으며, 그 후 장치와 상호작용한다.
데이터 서비스(790)는 또한 추가 서비스를 제공할 수 있으며, 예를 들어 근접 맵 또는 장치가 서로 상호작용하는 방법에 대한 추가 정보와 같은 장치 및 노드에 대한 추가 정보를 제공할 수 있다. 데이터 서비스(790)는 또한 개별 장치로부터 벗어나 노드(110)를 추상화한다. 노드(110)와 상호작용하는 애플리케이션(170)은 각 노드를 구성하기 위해 각 장치와 제어 세션을 설정할 필요가 없다. 오히려, 애플리케이션(170)은 노드(110)를 구성하도록 데이터 서비스(790)를 요청하고, 데이터 서비스(790)는 각 노드(110)와의 제어 세션 생성을 처리한다. 중개자는 데이터 서비스일 필요는 없다. 예를 들어, 미들웨어 계층일 수 있다.
몇몇 구현에서, 데이터 파이프라인을 구성하기 위한 프로세스는 표준에서 또는 표준화된 API의 사용을 통해 정의된다. 도 8 내지 도 11은 표준의 일례를 제공한다. 이 예에서, 싱크(Sink), 소스(Source), 능력(Capabilities), SceneData, SceneMark 및 SceneMode와 같은 대문자 용어가 표준에 정의되어 있다. 도 8은 데이터 파이프라인의 표준 기반 구성의 이벤트 트레이스이다. 이 예에서 도 1 내지 도 7과 비교하면, 싱크(870)는 요청 애플리케이션(170)에 대응하는 노드이고 소스(810)는 노드(110)에 대응하는 노드이다. 능력(Capabilities)은 표준의 신택스를 사용하여 노드의 능력을 설명한다. SceneMode는 노드를 구성하는 데 사용되는 도 5의 제어 데이터이다. SceneData 및 SceneMark는 데이터 파이프라인에 의해 반환되는 데이터이다. SceneData는 이미지 데이터 및 기타 센서 데이터를 포함한다. SceneMark는 관련 SceneData에 대한 참조와 함께 이미지 이해 메타데이터를 포함한다. 이 데이터는 장면으로 구성되며, 장면의 샘플은 SceneShot으로 지칭된다.
더 자세하게, 이 예는 표준에 의해 정의되는 다음 데이터 객체를 사용한다:
노드는 데이터 파이프라인의 빌딩 블록이다. 각 노드는 고유한 ID를 갖는다.
능력은 AI 알고리즘, 지원되는 SceneMode, 하드웨어 센서 능력 등과 같이 소스 노드가 제공할 수 있는 것이다.
SceneMode는 노드에 대한 구성이다. 해당하는 경우, SceneMode는 센서의 캡처 프로세스, 데이터를 처리하는 데 사용되는 컴퓨터 비전 또는 인공 지능 알고리즘, 데이터 출력 포맷 등을 정의한다.
SceneMark는 이벤트를 설명하는 노드에 의해 생성된 구조화된 출력이다. 이는 노드의 식별자, SceneMark가 트리거되었을 때의 타임스탬프 및 이벤트를 트리거한 노드 처리 결과를 포함한다. 이는 이벤트와 연관된 SceneData에 대한 참조도 포함한다.
SceneData는 SceneMark를 트리거한 이벤트와 관련된 실제 데이터이다. 이는 정지 이미지, 비디오 클립, 온도 또는 다른 센서의 데이터일 수 있다. 데이터는 이벤트가 발생하기 몇 초 전에 시작되고 요청된 SceneMode에 따라 이벤트가 발생한 후 몇 초 동안 실행될 수 있다.
능력 객체는 노드의 능력을 설정하는 데 사용되며 SceneMode 객체는 각 노드의 구성 및 노드 간의 상호연결을 정의하는 데 사용된다. SceneMark 객체 및 SceneData 객체는 데이터 파이프라인에 의해 처리되는 데이터의 표현이다.
데이터 파이프라인은 애플리케이션에 의해 궁극적으로 소비되는 SceneMark 객체 및 SceneData 객체를 생성한다. SceneMark 객체는 데이터 파이프라인의 상이한 노드에 의해 조작될 수 있다. 이것은 전형적으로 노드가 이전 노드로부터의 SceneMark 또는 SceneData를 처리한 결과인 SceneMark 객체에 추가 필드를 추가하는 것을 수반한다. 노드는 또한 이전 SceneMark 및 SceneData를 처리한 결과인 SceneData를 더 생성할 수 있다. 예를 들어, 얼굴을 검출할 수 있는 노드는 이전 노드에 의해 생성된 SceneData로부터의 비디오 프레임을 처리하고 프레임으로부터 검출되었던 얼굴에 해당하는 직사각형을 추출할 수 있다.
데이터 파이프라인의 구성은 능력 객체를 사용하여 노드의 능력을 결정한다. 능력 객체는 노드가 변환기(들)를 포함하는지 여부, 어느 SceneMode가 지원되는지를 포함한 노드의 처리 능력, 노드에서 프로세스에 의해 수행될 수 있는 분석 레벨 및 노드로부터 데이터를 입력 또는 출력하기 위한 포트 옵션을 설명한다. 이 정보를 사용하여, 노드에 들어오고 나가는 데이터가 무엇인지 및 노드가 새로운 센서 데이터를 캡처하고/하거나 다른 노드에서 들어오는 데이터를 처리하는지를 포함하는 노드에 대한 SceneMode가 정의된다.
각 노드에 대한 SceneMode가 각 노드에 제공되었으면, 데이터 파이프라인이 구성되고 각 노드에 제공된 SceneMode에 따라 일련의 SceneMode 및 SceneData를 생성하기 시작할 것이다. 이 예제 표준에 대한 이들 데이터 객체의 더 상세한 정의는 아래 섹션 A에 제공된다.
도 8을 참조하면, 데이터 파이프라인은 다음과 같이 설정된다. 싱크(870)는 소스(810)와의 제어 세션을 설정한다(805). 일 방안에서, 제어 세션의 구성은 싱크(870)에 액세스 토큰 또는 자격증명을 제공하는 계정 서비스를 통해 발생한다. 싱크(870)는 액세스 토큰을 사용하여 소스(810)와 통신한다. 싱크는 각 소스에 GetCapabilities 요청(814)을 함으로써 각 소스의 능력을 결정한다. 소스는 그들의 능력을 반환한다(816). 싱크는 파이프라인의 각 노드에 대한 변환기 및 처리 기능/구성을 결정하고 노드 간의 상호연결을 결정함으로써 프로세스의 데이터 파이프라인을 정의한다(820).
싱크는 대응하는 SetSceneMode 커맨드를 발행한다(832). SceneMode 데이터 객체는 노드에 대한 센서 및/또는 이미지 이해 기능을 지정한다. 이 구성은 또한 각 노드가 데이터 파이프라인의 다른 노드와의 상호연결을 생성하도록 트리거한다. 싱크는 StartScene 커맨드를 사용하여 SceneMode를 시작하도록 각 노드를 개별적으로 트리거한다(834). 그런 다음 데이터 파이프라인은 표준에 정의된 SceneMark 및 SceneData 포맷을 사용하여 데이터를 생성한다. 싱크는 노드에 의해 생성된 SceneMark와 SceneData를 소비한다(840). 데이터 파이프라인은 싱크가 StopScene 커맨드를 발행(848)할 때까지 작동한다.
더 상세하게는, 일 방안에서, 노드는 노드 ID에 의해 고유하게 식별될 수 있다. 노드 ID는 노드를 호스팅하는 장치의 장치 ID를 기반으로 하며 둘 이상의 노드를 호스팅하는 장치의 경우, 노드에는 장치 ID와 결합할 때 노드에 대한 고유한 노드 ID를 정의하는 추가 노드 번호가 제공된다. 노드와 연관된 입력 및 출력 포트와 유사하게, 각 포트는 노드 범위 내에서 고유한 포트 번호를 갖는다. 장치 ID, 노드 번호 및 포트 번호의 조합은 고유한 포트 ID를 정의한다.
노드는 일반적으로 2개의 인터페이스, 제어 인터페이스 및 데이터 인터페이스를 갖는다. 제어 인터페이스는 노드의 능력을 결정하고 데이터 파이프라인 내의 노드에 SceneMode를 배포하는 것과 같은 기능을 포함하여 노드를 사용하는 데이터 파이프라인을 구성하는 데 사용된다. 일 구현에서, 소스 노드는 한 번에 하나의 제어 세션만 수락하도록 제한되며, 이는 임의의 노드가 하나의 다른 노드에 의해서만 제어될 수 있음을 의미한다. 그러나 싱크 노드는 병렬로 복수의 제어 세션을 설정할 수 있어서 복수의 소스 노드를 제어한다. 몇몇 노드는 상이한 노드와 관련하여 소스와 싱크 모두로서 기능할 수 있다.
노드는 데이터 인터페이스를 사용하여 SceneMark 및 SceneData를 처리하고 배포한다. 이들은 SceneMode에 정의된 노드 및 이의 구성의 순서에 따라 처리된다. 노드의 데이터 인터페이스는 노드가 그들 간에 데이터를 교환할 수 있게 한다.
도 8로 돌아가면, 싱크 노드는 노드 ID를 사용하여 소스 노드에 SetSceneMode 커맨드(832)를 전송한다. SetSceneMode는 다음을 결정한다:
ㆍ 우선순위가 지정될 데이터 - 예를 들어 SceneMode = 얼굴의 경우 얼굴에 우선순위가 지정된다.
ㆍ SceneMark가 생성되도록 하는 트리거.
ㆍ 트리거가 발생할 때 생성되는 SceneData의 유형 및 양, 예컨대, JPEG 또는 트리거 전 3초 및 트리거 후 20초 비디오 등.
ㆍ 노드가 SceneMark에 대한 정보를 추출하기 위해 SceneData에서 수행하는 임의의 처리.
이 예제 표준에서 지원하는 커맨드에 대한 추가 세부사항은 아래 섹션 B에 제공된다.
데이터 파이프라인은 노드의 입력과 출력을 연결함으로써 구성된다. SceneMode 객체에 대한 사양에는 다음 항목이 포함된다:
ㆍ 입력(들): 각 입력은 입력을 통해 수신될 것으로 예상되는 데이터의 유형, 암호화 상태, 권한 객체에 대한 참조 및 입력에 대한 소스 데이터의 소스 URI의 구성을 갖는다. 각 입력에는 고유한 포트 ID도 있다.
ㆍ 출력(들): 각 출력은 입력 포트와 유사한 구성을 갖는다. 각 출력에는 고유한 포트 ID도 있다.
ㆍ 변환기(들): 변환기는 센서 또는 액추에이터이다. 변환기의 출력은 하나 이상의 출력, 입력(액추에이터용) 및 노드의 처리 기능으로 라우팅될 수 있다.
ㆍ 프로세스(들): 프로세스는 노드에 의해 생성되거나 다른 노드로부터 라우팅되는 데이터의 분석을 수행한다. 데이터는 다른 노드로부터의 SceneMark 또는 SceneData의 형태일 수 있다. 프로세스는 분석을 수행하고 정의된 임계값에 도달하면 프로세스는 SceneMode 구성에 따라 SceneMark 및 SceneData가 생성되게 하는 트리거 조건을 생성할 것이다.
도 9는 구성된 데이터 파이프라인의 블록도이다. 이 예에서 노드(910A)는 이미지 센서(변환기 능력) 및 움직임 검출(프로세스 능력)을 포함한다. 출력된 SceneData는 캡처된 비디오이다. 이는 노드의 출력 포트의 구성에 따라 인코딩되며 노드(910B) 상의 입력 포트에 연결된다. SceneData는 특정 목표 비트 레이트 및 인코딩 메커니즘을 사용하여 비디오 스트림으로 인코딩될 수 있다. 노드(910A)는 또한 움직임이 검출된 경우 움직임이 검출되었음을 나타내는 메타데이터를 가진 SceneMark를 생성한다. 노드(910B) 내의 프로세스는 "얼굴" SceneMode로 설정되며, 이는 또한 노드가 움직임이 검출될 때 얼굴 "검출" 및 "인식"의 분석 레벨을 수행할 것임을 지정한다. 이 프로세스는 노드(910A)로부터 수신된 SceneMark에 결과 메타데이터를 추가하고 업데이트된 SceneMark를 요청 애플리케이션(170)에 전달한다. 예를 들어, 업데이트된 SceneMark는 이제 검출된 얼굴의 (x,y) 좌표 및 얼굴에 기초한 개인의 신원을 나타내는 메타데이터를 포함할 수 있다. 입력 포트에서 수신된 SceneData는 얼굴 정보를 추출하기 위해 추가 처리된다. 예를 들어, 디지털 줌 및 크로핑이 적용될 수 있다. 이 SceneData는 또한 애플리케이션(170)으로 전달될 수 있다.
데이터 파이프라인은 노드를 함께 연결함으로써 구성된다. 노드의 SceneMode는 이 구성을 정의한다. 파이프라인을 구성하는 애플리케이션은 각 노드에 대해 SceneMode를 설정하는데, 노드가 프로세스를 수행하고 이 프로세스로부터 요구되는 출력이 데이터 파이프라인의 후속 노드의 입력으로 전달되는 것을 실행한다. 연결은 생성된 포트 또는 SceneMark에 대한 목적지를 정의하고 포트 또는 SceneMark에 대한 소스를 정의함으로써 수행된다. 소스와 목적지를 동시에 정의하는 것은 브로커가 두 프로세스 사이의 중개자인 MQTT와 같은 프로토콜의 사용과 호환된다. 소스 노드는 브로커의 주제에 대한 메시지를 게시하고 싱크 노드는 브로커로부터의 메시지를 구독한다. 이 연결 유형의 경우, 소스 노드에는 메시지에 대한 목적지가 있고 싱크 노드에는 착신 메시지에 대한 소스가 있다. 이것은 사용 중인 프로토콜에 따라 다를 수 있다.
단일 장치는 단일 노드를 갖거나 복수의 노드를 가질 수 있다. 장치가 복수의 노드를 가진 경우, 장치 내의 노드 간에 SceneData 및 SceneMark를 이송하는 방법은 장치에 독점적일 수 있다. 일 방안에서, 장치 내의 노드에 대한 SceneMode의 구성은 장치 내의 데이터에 대한 소스 및 목적지를 정의한다. 포트 구성은 장치 간에 데이터가 이송될 때 데이터의 인코딩을 구성하는 데 사용된다.
데이터 파이프라인 내의 몇몇 프로세스는 데이터 파이프라인에서 조기에 프로세스에 결과를 피드백할 수 있다. 예를 들어 얼굴 검출을 수행하는 프로세스는 얼굴이 검출된 영역을 센서에 피드백할 수 있다. 센서는 이 정보를 사용하여 검출된 얼굴이 가장 선명하게 캡처되는 것을 보장하도록 캡처 설정(초점, 노출, 줌 등)을 조정할 수 있다.
도 10은 노드 내부에 피드백을 갖는 데이터 파이프라인의 블록도이다. 이 예에서, 노드(1010A)는 움직임을 검출하는 능력을 갖는다. 이 노드의 SceneMode는 움직임이 감지되면 캡처 시퀀스가 센서에 피드백되도록 설정된다. 캡처 시퀀스는 센서가 캡처할 일련의 프레임에 대한 설정을 정의한다. 이러한 설정은 움직임이 검출되었던 영역 및 초점, 노출 및 줌 설정에 대한 안내를 포함할 수 있다. 캡처 시퀀스는 하나 이상의 프레임을 포함할 수 있다. 캡처 시퀀스는 노드 내에서 내부적으로 이송되지만 노드에 대한 SceneMode 구성의 일부로서 정의된다.
도 11은 노드들 간의 피드백을 갖는 데이터 파이프라인의 블록도이다. 이 예에서, 노드(1110B)는 SceneMode가 얼굴로 설정되어 있고 센서에 대한 캡처 시퀀스를 노드(1110A)에 피드백하도록 구성된다. 이 예에서, 프로세스는 얼굴을 검출하도록 설정되고 얼굴을 검출하면 얼굴에 해당하는 관심 영역이 센서로 전송되어 센서가 얼굴이 검출되었던 영역에 대한 캡처를 최적화할 수 있다.
상세한 설명은 많은 세부사항을 포함하지만, 이들은 본 발명의 범위를 제한하는 것으로 해석되어서는 안 되며 단지 상이한 예를 예시하는 것으로 해석되어야 한다. 본 개시의 범위는 앞에서 상세히 논의되지 않은 다른 실시예를 포함한다는 것을 이해해야 한다. 당업자에게 자명할 다양한 다른 수정, 변경 및 변형이, 첨부된 청구범위에 정의된 사상 및 범위를 벗어나지 않고 본 명세서에 개시된 방법 및 장치의 배열, 동작 및 세부사항에서 이루어질 수 있다. 따라서, 본 발명의 범위는 첨부된 청구범위 및 그 법적 균등물에 의해 결정되어야 한다.
대안적인 실시예는 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 및/또는 이들의 조합으로 구현된다. 구현은 프로그램 가능 프로세서에 의한 실행을 위해 기계 판독가능 저장 장치에 유형적으로 구현된 컴퓨터 프로그램 제품으로 구현될 수 있고, 방법 단계는 입력 데이터에 대해 동작하고 출력을 생성함으로써 기능을 수행하기 위한 명령어의 프로그램을 실행하는 프로그램 가능 프로세서에 의해 수행될 수 있다. 실시예는 데이터 저장 시스템, 적어도 하나의 입력 장치 및 적어도 하나의 출력 장치로부터 데이터 및 명령어를 수신하고 이들로 데이터 및 명령어를 송신하도록 결합된 적어도 하나의 프로그램 가능 프로세서를 포함하는 프로그램 가능 시스템에서 실행가능한 하나 이상의 컴퓨터 프로그램으로 유리하게 구현될 수 있다. 각 컴퓨터 프로그램은 하이 레벨 절차적 또는 객체 지향 프로그래밍 언어로 또는 원하는 경우 어셈블리 또는 기계어로 구현될 수 있고, 어떤 경우에, 언어는 컴파일되거나 해석된 언어일 수 있다. 적합한 프로세서는 예로서 범용 및 특수 목적 마이크로프로세서를 모두 포함한다. 일반적으로, 프로세서는 판독 전용 메모리 및/또는 랜덤 액세스 메모리로부터 명령어 및 데이터를 수신할 것이다. 일반적으로, 컴퓨터는 데이터 파일을 저장하기 위한 하나 이상의 대용량 저장 장치를 포함할 것이며, 이러한 장치는 내부 하드 디스크 및 착탈식 디스크와 같은 자기 디스크, 광자기 디스크 및 광 디스크를 포함한다. 컴퓨터 프로그램 명령어 및 데이터를 유형적으로 구현하기에 적합한 저장 장치는 EPROM, EEPROM 및 플래시 메모리 장치와 같은 반도체 메모리 장치, 내부 하드 디스크 및 착탈식 디스크와 같은 자기 디스크, 광자기 디스크, 및 CD-ROM 디스크를 예로서 포함하는 모든 형태의 비휘발성 메모리를 포함한다. 전술한 것 중 임의의 것은 ASIC(application-specific integrated circuit) 및 다른 형태의 하드웨어에 의해 보완되거나 이에 통합될 수 있다.
섹션 A: 데이터 객체의 설명
이 섹션 A는 다음 데이터 객체를 설명한다:
능력(Capabilities)
SceneMode
SceneMark
SceneData
Capabilities 객체
능력 객체는 노드가 제공할 수 있는 처리, 변환기 및 포트를 정의한다. 능력 데이터 구조는 노드에 의해 지원되는 이용가능 처리, 이미지의 캡처 (입력) 및 출력, 오디오, 데이터의 소스 및 데이터의 출력을 설명한다. 이들은 다음을 포함한다:
1. 변환기: 변환기는 데이터를 물리적 교란(예컨대, 스피커)으로 변환할 수 있는 센서 또는 액추에이터이다. 다음은 변환기의 예이다.
ㆍ 이미지 센서(이미지, 깊이 또는 온도 카메라)는 전형적으로 프레임을 나타내는 2차원 어레이를 출력한다.
ㆍ 데이터 센서(습도 센서, 온도 센서 등)는 전형적으로 텍스트 또는 데이터 구조를 출력한다.
ㆍ 오디오 마이크로폰은 전형적으로 연속적인 일련의 오디오 샘플을 생성한다.
ㆍ 스피커는 일련의 오디오 샘플을 입력으로 받아 오디오를 출력한다.
2. SceneMode 지원: 이들은 이미지 분석을 위한 정의된 모드이다. 아래의 SceneMode 객체도 참조하시오.
3. 오디오 처리: 이것은 노드에 의해 정의될 수 있다. 음성을 텍스트로 변환하는 기능을 포함한다.
4. CustomAnalysis: 이것은 사용자가 커스텀 분석을 정의할 수 있게 한다. 일례로서, 오디오, 이미지 또는 비디오 입력을 처리하고 알고리즘에 의해 의미가 정의된 점수 벡터를 생성할 수 있는 알고리즘일 수 있다.
5. 입력: 이것은 SceneData 또는 SceneMark일 수 있고 처리되거나 처리되지 않은 형태일 수 있다. 다음은 프로세스의 소스일 수 있다:
ㆍ 장치 내부 또는 외부 센서의 출력.
ㆍ 상이한 장치 상의 노드의 출력.
ㆍ 동일한 장치 내에서 상이한 노드의 출력.
6. 출력: 출력은 SceneData 또는 SceneMark일 수 있으며 처리되거나 처리되지 않은 형태일 수도 있다.
SceneMode 객체
SceneMode는 생성될 데이터를 결정한다. 그것은 프레임의 캡처 및 캡처된 프레임의 처리에 의해 우선순위기 지정될 데이터 유형을 정의한다. 그것은 또한 생성되는 SceneMark와 SceneMark를 생성하기 위한 트리거 조건을 정의한다.
예를 들어, 얼굴 SceneMode는 일련의 프레임 내에서 얼굴 캡처를 우선순위화할 것이다. 얼굴이 검출되면, 카메라 시스템은 얼굴이 정확하게 초점이 맞춰지고, 조명을 받으며, 필요한 경우 충분히 주밍된 위치에 있는 얼굴을 가진 프레임을 캡처하여 얼굴 인식이 높은 성공 가능성으로 실행될 수 있게 할 것이다. 두 개 이상의 얼굴이 검출되면, 카메라는 가능한 한 많은 얼굴을 정확하게 캡처할 수 있다. 카메라는 보이는 얼굴에 최적화된 설정이 다른 복수의 프레임을 사용할 수 있다. 예를 들어, 얼굴이 카메라에 가까운 경우, 카메라가 가까이 초점을 맞춘다. 얼굴이 더 멀리 있는 경우, 디지털 줌 및 더 긴 초점이 사용된다.
다음 SceneModes가 정의될 수 있다:
ㆍ 얼굴
ㆍ 인간
ㆍ 동물
ㆍ 텍스트/로고/바코드
ㆍ 차량
ㆍ 객체 라벨. 이것은 카메라로 캡처한 이미지의 일반화된 라벨링이다.
ㆍ 커스텀. 이것은 사용자 정의된다.
SceneMode는 다른 SceneMode와 연관된 SceneMark에서 데이터 필드를 생성할 수 있다. SceneMode의 목적은 모드에 맞게 이미지의 캡처를 안내하고 SceneMode에 의해 정의된 대로 데이터를 생성하기 위한 작업흐름을 정의하는 것이다. 애플리케이션 레벨에서, 애플리케이션은 장치의 특정 구성과 장치가 이미지를 캡처하는 방법에 대한 통찰력을 가질 필요가 없다. 애플리케이션은 SceneMode를 사용하여 애플리케이션이 관심을 갖고 애플리케이션에 최고 우선순위를 갖는 데이터 유형을 나타낸다.
트리거 조건
SceneMode는 전형적으로 하나 이상의 "트리거"를 가질 것이다. 트리거는 SceneMark가 생성되고 SceneMode에 대해 정의된 SceneData가 캡처되고 처리되는 조건이다. 애플리케이션은 SceneMark가 생성되어야 할 때를 결정할 수 있다.
일 방안에서, 트리거는 이미지 이해의 멀티 레벨 모델에 기초한다. 분석 레벨은 다음과 같다:
1. 움직임 검출됨: 프로세스는 시야 내에서 움직임을 검출할 수 있다.
2. 항목 검출됨 또는 항목 사라짐: 프로세스는 SceneMode(항목 검출)와 연관된 항목을 검출하거나 항목이 더 이상 존재하지 않을 때(항목 사라짐)를 검출할 수 있다. 예를 들어 SceneMode = 얼굴의 경우, 항목 검출됨은 얼굴이 검출되었음을 의미한다. SceneMode = 동물의 경우, 항목 사라짐은 이전에 검출된 동물이 더 이상 존재하지 않음을 의미한다.
3. 항목 인식됨: 프로세스는 검출된 항목을 식별할 수 있다. 예를 들어, SceneMode = 라벨의 경우, "인식됨"은 검출된 항목이 라벨링될 수 있음을 의미한다. SceneMode = 얼굴의 경우, "인식됨"는 얼굴의 신원이 결정될 수 있음을 의미한다. 한 버전에서, SceneMode 구성은 객체에 대한 참조 이미지에 기초하여 객체의 인식을 지원한다.
4. 항목 특성화됨: 프로세스는 항목에 대한 상위 레벨 특성을 결정할 수 있다. 예를 들어 SceneMode = 얼굴에서, "특성화됨"은 검출된 얼굴의 몇몇 특징부가 이와 연관된 속성을 가짐을 의미한다. 예를 들어, 기분이나 감정은 검출된 얼굴에 기인한다.
SceneMode는 SceneMark의 생성을 트리거하는 데 필요한 분석 레벨을 정의한다. 예를 들어, SceneMode = 얼굴의 경우, 트리거 조건은 얼굴 검출됨, 얼굴 인식됨 또는 감정에 대해 얼굴 특성화됨일 수 있다. 위에 나열된 다른 SceneMode에 대해서도 유사한 옵션을 사용할 수 있다.
SceneMark 객체
SceneMark는 시간 및/또는 위치 상관 집계 이벤트의 이미지 이해에 기초하여 인식된 관심 장면의 간결한 표현이다. SceneMark는 센서 데이터의 소비자와 관련된 정보를 추출하고 제시하는 데 사용될 수 있다. SceneMark는 미처리 센서 데이터를 포함하는 상세한 정보의 지능적이고 효율적인 기록/검색을 용이하게 하는 데에도 사용될 수 있다. 이 역할에서, SceneMark는 훨씬 더 많은 양의 센서 데이터에 대한 인덱스로서 동작한다.
SceneMark 객체는 다음을 포함한다:
ㆍ SceneMark 식별자
ㆍ 타임스탬프
ㆍ 이미지 이해 메타데이터
ㆍ 해당 SceneData에 대한 참조
분석 엔진이 트리거 조건을 만나면, SceneMark가 생성된다. 트리거 조건에 대한 SceneData 및 메타데이터에 대한 참조를 제공한다. SceneMark의 완성도는 노드의 분석 능력에 의해 결정된다. 노드가 상위 레벨의 분석이 궁극적으로 요구되는 경우에만 움직임 검출을 수행할 수 있으면, 부분적인 SceneMark가 생성될 수 있다. 부분적인 SceneMark는 그 다음에 후속 처리 노드에 의해 완료될 수 있다.
SceneData 객체
SceneData는 장면과 관련된 상이한 유형의 센서 데이터를 포함하는 하나 이상의 센서 장치 및/또는 센서 모듈의 그룹에 의해 캡처되거나 제공된다. SceneData는 캡처된 미처리 데이터에 국한되지 않고, 몇몇 추가 처리를 또한 포함할 수 있다. 예는 다음을 포함한다:
ㆍ RGB 이미지 데이터
ㆍ IR 이미지 데이터
ㆍ RGB IR 이미지 데이터
ㆍ 깊이 맵
ㆍ 스테레오 이미지 데이터
ㆍ 오디오
ㆍ 온도
ㆍ 습도
ㆍ 일산화탄소
ㆍ 수동 적외선
SceneMode는 SceneMode와 연관된 트리거가 트리거될 때 생성되는 SceneData의 유형 및 양을 정의한다. 예를 들어 SceneMode 구성은 트리거 전 10초 비디오 및 트리거 후 30초 비디오가 SceneData로서 생성됨을 나타낼 수 있다. 이것은 SceneMode 데이터 객체의 SceneData 구성 필드에 설정된다. 복수의 SceneMark는 SceneData에 대해 정의된 기간보다 트리거가 더 빠르게 발생하는 경우 SceneData의 단일 비디오 파일을 참조할 수 있다. 예를 들어 30초 이내에 복수의 트리거가 발생하고 각 트리거에 대해 SceneData가 정의된 경우는 30초이다. 이 30초 내에 복수의 트리거가 발생하는 경우, 각 트리거에 대해 생성된 SceneMark는 트리거에 대한 SceneData를 구성하는 동일한 비디오 파일을 참조한다.
섹션 B: 커맨드의 설명
다음 커맨드는 제어 인터페이스에 대해 지원된다:
GetCapabilities. 특정 소스 노드에 대한 능력의 목록을 얻기 위해 싱크에 의해 사용됨.
SetSceneMode. 싱크는 SceneMode를 소스 노드로 로딩한다. SceneModeSchedule이 SceneMode를 트리거하거나 명시적인 StartScene 커맨드가 노드로 전송되면 SceneMode가 활성화된다. SceneMode는 스케줄에 따라 또는 StopScene 커맨드가 노드에 전송될 때 비활성화된다. StartScene 및 StopScene 커맨드는 스케줄을 오버라이딩한다.
SetCaptureSequence. 이 제어 클래스 구현은 이미지 캡처에 사용되는 변환기 소스 노드의 캡처 설정을 제어하기 위해 싱크에 의해 사용되기 위한 것이다. 캡처 모드는 일련의 프레임 캡처 및 각 프레임의 설정을 나타낸다. 예를 들어, 캡처 모드에 4개의 비디오 프레임이 이어지는 고해상도 프레임이 필요한 경우, 센서로 전송되는 두 개의 제어 클래스가 있을 것이다. 첫 번째는 스틸 이미지가 캡처되기 전에 전송될 것이며 특정 노출 설정, 특정 초점 설정 등으로 전체 해상도 프레임이 캡처되어야 함을 나타낼 것이다. 시퀀스 내의 프레임 수, 디지털 줌 설정 등으로 비디오 시퀀스를 캡처해야 함을 나타내는 두 번째 클래스가 전송될 것이다.
StartScene. 싱크가 SceneMode를 시작한다. 이 SceneMode를 중지하기 위해, 명시적인 StopScene 커맨드가 발행된다. SceneMarkSchedule에 동일한 SceneID가 나타나는 경우, 이 커맨드는 SceneMarkSchedule을 오버라이딩한다.
StopScene. 싱크는 실행 중인 SceneMode를 중지한다. 이것은 스케줄링되거나 정기적으로 트리거되는 SceneMode를 중지하는 데 사용될 수 있다. 이 커맨드를 사용하여 스케줄링된 SceneMode가 중지되면, StartSceneMode 커맨드가 전송되거나 다음 스케줄링된 시간이 발생한 경우에만 SceneMode가 재시작될 것이다.
SetSceneModeSchedule. 싱크는 사전로딩된 SceneMode와 함께 사용할 SceneMode 스케줄을 설정한다. 복수의 SceneModes가 노드에 로딩될 수 있다. 이 객체가 노드에 로딩되면, 객체에 나열된 SceneModeID가 객체 내에 정의된 스케줄에 따라 수행된다.
다음 커맨드가 데이터 인터페이스에 대해 지원된다.
GetSceneData. 싱크는 소스 노드로부터 SceneData 파일 또는 매니페스트를 요청한다.
SetSceneData. 소스 노드는 적어도 하나의 SceneData 객체 또는 적어도 하나의 SceneData 파일에 대한 참조를 포함하는 SceneData 매니페스트를 게시한다. 이 구조는 또한 이력적 SceneData의 부분 또는 전체 세트를 포함하거나 참조하는 데 사용될 수 있다. SceneData는 이 데이터 객체 내에 인코딩될 수도 있다.
GetSceneMark. 싱크는 특정 SceneMarkID에 해당하는 특정 SceneMark를 노드로부터 요청한다.
SetSceneMark. 소스는 노드 내에 저장될 수 있는 SceneMark를 기록한다.

Claims (42)

  1. 복수의 구성가능한 노드를 포함하는 네트워크의 경우, 이미지 이해를 필요로 하는 하나 이상의 애플리케이션을 위한 데이터 파이프라인으로 상기 노드를 구성하는 방법으로서,
    상기 노드의 능력에 대한 설명에 기초하여, 상기 데이터 파이프라인에 포함할 노드를 선택하고 상기 선택된 노드 간의 상호연결을 결정하여 상기 데이터 파이프라인을 형성하는 단계 - 상기 노드의 능력은 적어도 하나의 센서 기능에 대한 액세스를 포함하고 적어도 하나의 이미지 이해 기능도 포함함 - 와,
    상기 선택된 노드에 제어 데이터를 전송하는 단계 - 상기 제어 데이터는 상기 데이터 파이프라인에서 각각의 노드의 역할에 따라 상기 선택된 노드에 대한 기능을 지정하고 상기 선택된 노드 간의 상기 결정된 상호연결을 또한 지정함 - 를 포함하되,
    상기 데이터 파이프라인은 상기 데이터 파이프라인에 대한 소스로서 동작하는 센서 기능에 대한 액세스를 갖는 하나 이상의 노드를 포함하고, 상기 소스 중 적어도 하나는 이미지를 캡처하며, 상기 데이터 파이프라인은 상기 소스에 의해 캡처된 센서 데이터로부터 이미지 데이터 및 이미지 이해 메타데이터를 생성하고, 상기 이미지 데이터는 캡처된 이미지 및/또는 상기 캡처된 이미지로부터 진화된 향상된 이미지를 포함하며, 상기 이미지 이해 메타데이터는 상기 이미지 데이터의 이미지 이해를 설명하고 상기 이미지 이해에 대응하는 상기 이미지 데이터를 참조하는 메타데이터를 포함하고, 상기 제어 데이터는 상기 데이터 파이프라인에 의해 생성된 상기 이미지 데이터 및 이미지 이해 메타데이터를 또한 지정하는
    방법.
  2. 제1항에 있어서,
    상기 데이터 파이프라인은 사전지정된 객체의 검출, 사전지정된 객체의 부재 검출 및/또는 사전지정된 객체의 식별을 포함하는 이미지 이해를 수행하고, 상기 이미지 이해 메타데이터는 상기 이미지 이해를 설명하는
    방법.
  3. 제2항에 있어서,
    상기 사전지정된 객체는 얼굴, 인간, 동물, 차량, 텍스트, 로고 또는 바코드 중 적어도 하나를 포함하는
    방법.
  4. 제2항에 있어서,
    상기 데이터 파이프라인은 상기 사전지정된 객체의 검출 또는 식별에 기초하여 추가 이해를 포함하는 이미지 이해를 수행하고,
    상기 이미지 이해 메타데이터는 상기 이미지 이해를 설명하는
    방법.
  5. 제1항에 있어서,
    상기 데이터 파이프라인은 사전지정된 동작 또는 활동의 검출, 사전지정된 동작 또는 활동의 식별, 사전지정된 위치 또는 환경의 검출 및/또는 사전지정된 위치 또는 환경의 식별을 포함하는 이미지 이해를 수행하고,
    상기 이미지 이해 메타데이터는 상기 이미지 이해를 설명하는
    방법.
  6. 제1항에 있어서,
    상기 데이터 파이프라인은 머신 러닝, 딥 러닝 및/또는 인공 지능 기법을 사용하여 이미지 이해를 수행하고, 상기 이미지 이해 메타데이터는 상기 이미지 이해를 설명하는
    방법.
  7. 제1항에 있어서,
    상기 제어 데이터는 이미지 이해의 멀티 레벨 모델에 기초하고,
    상기 멀티 레벨 모델은 움직임 검출 레벨, 객체 검출 레벨, 객체 식별 레벨 및 객체 특성화 레벨을 포함하는
    방법.
  8. 제7항에 있어서,
    상기 능력에 대한 설명은 상기 멀티 레벨 모델의 어느 레벨이 각각의 노드에 의해 및 어떤 객체에 대해 구현될 수 있는지를 지정하는
    방법.
  9. 제7항에 있어서,
    상기 제어 데이터는 상기 멀티 레벨 모델의 어느 레벨이 상기 선택된 노드에 대해 및 어떤 객체에 대해 구성되는지를 지정하는
    방법.
  10. 제1항에 있어서,
    상기 노드의 능력에 대한 설명은 상기 노드의 이미지 진화 기능에 대한 설명을 포함하는
    방법.
  11. 제10항에 있어서,
    상기 이미지 진화 기능은 센서 바이어스 보정, 픽셀 결함 보정, 비네팅 보상(vignetting compensation), 다크 프레임 제거, 화이트 밸런싱, 디모자이킹(demosaicing), 노이즈 감소, 공간 필터링, 컬러 공간 변환, 톤 매핑, 감마 보정, 콘트라스트 향상, 에지 향상, 수차 보정(aberration correction), 초점 조정, 노출 조정, 리샘플링, 해상도 향상, 하이 다이내믹 레인지 조정 및 컬러 필터 어레이 보간 중 적어도 하나를 포함하는
    방법.
  12. 제1항에 있어서,
    상기 데이터 파이프라인은 상이한 센서, 이미지 진화 및/또는 이미지 이해 기능을 포함하는 상이한 분기를 포함하고,
    상기 상이한 분기는 상기 이미지 이해에 대한 조건에 의해 트리거되는
    방법.
  13. 제12항에 있어서,
    상기 제어 데이터는 또한 상기 이미지 이해에 대한 조건을 지정하는
    방법.
  14. 제1항에 있어서,
    상기 데이터 파이프라인은 적어도 하나의 이미지 이해 기능으로부터의 피드백 루프를 포함하는
    방법.
  15. 제14항에 있어서,
    상기 피드백 루프는 상기 이미지 이해 기능으로부터 적어도 하나의 이미지 캡처 기능으로인
    방법.
  16. 제14항에 있어서,
    상기 이미지 이해 기능은 상기 노드 중 하나에서 구현되고, 상기 피드백 루프는 상기 이미지 이해 기능으로부터 상이한 노드 내의 기능으로인
    방법.
  17. 제1항에 있어서,
    상기 데이터 파이프라인은 상이한 유형의 센서 데이터를 캡처하는 복수의 소스에 대한 액세스를 갖고, 상기 데이터 파이프라인은 적어도 하나의 이미지 이해 기능을 위해 상기 센서 데이터를 융합하는
    방법.
  18. 제1항에 있어서,
    상기 데이터 파이프라인에 포함할 노드를 선택하고 상기 선택된 노드 간의 상호연결을 결정하여 상기 데이터 파이프라인을 형성하는 단계는 센서 데이터를 상기 데이터 파이프라인에 제공하는 센서 사이의 알려진 근접성에 더 기초하는
    방법.
  19. 제1항에 있어서,
    상기 데이터 파이프라인에 포함할 노드를 선택하고 상기 선택된 노드 간의 상호연결을 결정하여 상기 데이터 파이프라인을 형성하는 단계는 상기 노드의 능력에 대한 설명에 포함되지 않은 정보에 더 기초하는
    방법.
  20. 제1항에 있어서,
    상기 구성가능한 노드의 네트워크는 마이크로폰, 온도 센서 및 스피커 중 적어도 하나에 대한 액세스를 또한 포함하는
    방법.
  21. 제1항에 있어서,
    적어도 하나의 애플리케이션은 상기 노드에 대한 액세스를 가진 중개 서비스에 대한 액세스를 갖는
    방법.
  22. 제1항에 있어서,
    상기 노드에 대한 액세스는 조건부 액세스인
    방법.
  23. 제22항에 있어서,
    상기 조건부 액세스는 상기 애플리케이션 및 상기 노드와 별개의 서비스에 의해 승인되는
    방법.
  24. 제1항에 있어서,
    상기 데이터 파이프라인은 인터넷을 통해 적어도 하나의 노드에 액세스하는
    방법.
  25. 복수의 상이한 애플리케이션에 의해 액세스 가능한 복수의 구성가능한 노드를 포함하는 네트워크의 경우, 각각의 애플리케이션에 대한 표준에 지정된, 상기 네트워크로부터의 노드를 해당 애플리케이션을 위한 데이터 파이프라인으로 구성하는 방법으로서,
    상기 노드의 능력에 대한 설명에 기초하여, 상기 데이터 파이프라인에 포함할 노드를 선택하고 상기 선택된 노드 간의 상호연결을 결정하여 상기 데이터 파이프라인을 형성하는 단계 - 상기 노드의 능력은 상기 노드에 의한 센서 기능에 대한 액세스를 포함하고 상기 노드의 이미지 이해 기능도 포함함 - 와,
    상기 데이터 파이프라인에서 각각의 노드의 역할에 따라 상기 선택된 노드에 SceneMode를 전송하는 단계 - 상기 SceneMode는 상기 선택된 노드에 대한 기능을 지정하기 위해 상기 표준에 의해 정의됨 - 를 포함하고,
    상기 데이터 파이프라인은 상기 데이터 파이프라인에 대한 소스로서 동작하는 센서 기능에 대한 액세스를 가진 하나 이상의 노드를 포함하고, 상기 소스 중 적어도 하나는 이미지를 캡처하며, 상기 데이터 파이프라인은 상기 소스에 의해 캡처된 센서 데이터로부터 SceneData 및 SceneMark를 생성하고, 상기 SceneData는 캡처된 이미지 및/또는 상기 캡처된 이미지로부터 진화된 향상된 이미지를 포함하며, 상기 SceneMark는 상기 SceneData의 이미지 이해를 설명하는 이미지 이해 메타데이터 및 상기 이미지 이해에 해당하는 상기 SceneData에 대한 참조를 포함하도록 상기 표준에 의해 정의되고, 상기 SceneMode는 상기 데이터 파이프라인에 의해 생성된 상기 SceneData 및 SceneMark를 지정하도록 상기 표준에 의해 더 정의되는
    방법.
  26. 제25항에 있어서,
    상기 표준에 의해 정의된 상기 SceneMode는 얼굴 SceneMode, 인간 SceneMode, 객체라벨 SceneMode, 동물 SceneMode, 텍스트 SceneMode, 로고 SceneMode, 바코드 SceneMode 및 차량 SceneMode 중 적어도 하나를 포함하는
    방법.
  27. 제25항에 있어서,
    상기 SceneMode는 상기 선택된 노드 간의 상호연결을 또한 지정하도록 상기 표준에 의해 정의되는
    방법.
  28. 제25항에 있어서,
    상기 표준에 의해 정의된 상기 SceneMark는 객체 검출 및 객체 식별 중 적어도 하나를 설명하는 이미지 이해 메타데이터를 포함하는
    방법.
  29. 제25항에 있어서,
    상기 SceneMark는 상기 SceneData의 이미지 이해에서 트리거의 발생시에 생성되고, 상기 SceneMode는 상기 트리거를 또한 지정하도록 상기 표준에 의해 정의되는
    방법.
  30. 제25항에 있어서,
    상기 표준에 의해 지정된 방식으로 상기 노드의 능력에 대한 설명에 액세스하는 단계를 더 포함하는
    방법.
  31. 제30항에 있어서,
    상기 표준은 각각의 노드로부터 해당 노드의 능력을 탐색하기 위한 자동 탐색 프로세스를 지정하는
    방법.
  32. 제30항에 있어서,
    상기 표준은 상기 노드의 능력에 대한 설명을 포함하는 데이터 객체를 지정하는
    방법.
  33. 제30항에 있어서,
    상기 표준은 상기 노드의 능력이 각각의 노드에 의해 지원되는 SceneMode의 목록을 포함한다는 것을 지정하는
    방법.
  34. 제30항에 있어서,
    상기 표준은 상기 노드의 능력이 각각의 노드로부터의 입력 또는 각각의 노드로의 출력으로서 지원되는 SceneData 및/또는 SceneMark의 목록을 포함한다는 것을 지정하는
    방법.
  35. 제34항에 있어서,
    상기 SceneData 및/또는 SceneMark의 목록은 인코딩 및/또는 암호화를 또한 지정하는
    방법.
  36. 제25항에 있어서,
    적어도 하나의 애플리케이션은 상기 노드에 대한 직접 액세스를 갖는
    방법.
  37. 제25항에 있어서,
    적어도 하나의 애플리케이션은 상기 노드에 대한 액세스를 가진 중개 서비스에 대한 액세스를 갖는
    방법.
  38. 제25항에 있어서,
    상기 노드에 대한 액세스는 조건부 액세스인
    방법.
  39. 제38항에 있어서,
    상기 조건부 액세스는 상기 애플리케이션 및 상기 노드와 별개의 서비스에 의해 승인되는
    방법.
  40. 제25항에 있어서,
    상기 표준은 사용자 정의된 SceneMode를 지원하는
    방법.
  41. 제25항에 있어서,
    상기 데이터 파이프라인은 인터넷을 통해 적어도 하나의 노드에 액세스하는
    방법.
  42. 제25항에 있어서,
    상기 노드 중 적어도 2개는 동일한 장치에서 구현되는
    방법.
KR1020217033105A 2019-03-15 2020-03-12 이미지 이해를 사용하여 데이터 파이프라인을 구성하는 기법 KR20210150414A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/355,705 US10990840B2 (en) 2019-03-15 2019-03-15 Configuring data pipelines with image understanding
US16/355,705 2019-03-15
PCT/US2020/022485 WO2020190657A1 (en) 2019-03-15 2020-03-12 Configuring data pipelines with image understanding

Publications (1)

Publication Number Publication Date
KR20210150414A true KR20210150414A (ko) 2021-12-10

Family

ID=72424688

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217033105A KR20210150414A (ko) 2019-03-15 2020-03-12 이미지 이해를 사용하여 데이터 파이프라인을 구성하는 기법

Country Status (7)

Country Link
US (1) US10990840B2 (ko)
EP (1) EP3938954A4 (ko)
JP (1) JP2022526869A (ko)
KR (1) KR20210150414A (ko)
CN (1) CN113841155A (ko)
TW (2) TWI767763B (ko)
WO (1) WO2020190657A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11579940B2 (en) * 2019-04-11 2023-02-14 Salesforce.Com, Inc. Techniques and architectures for managing global installations and configurations
US11068742B2 (en) 2019-10-30 2021-07-20 Scenera, Inc. Curation of custom workflows using multiple cameras
US11188758B2 (en) 2019-10-30 2021-11-30 Scenera, Inc. Tracking sequences of events
US11438519B2 (en) 2020-01-13 2022-09-06 Samsung Electronics Co., Ltd. Method of fast estimation of scene brightness and optimal camera exposure
CA3199392A1 (en) * 2020-11-18 2022-05-27 Apera Ai Inc. Method and system for image processing using a vision pipeline
WO2022225375A1 (ko) * 2021-04-22 2022-10-27 서울대학교산학협력단 병렬처리 파이프라인을 이용한 다중 dnn 기반 얼굴 인식 방법 및 장치
CN114647472B (zh) * 2022-03-24 2023-08-15 北京字跳网络技术有限公司 图片处理方法、装置、设备、存储介质和程序产品

Family Cites Families (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4809346A (en) 1986-07-18 1989-02-28 Hughes Aircraft Company Computer vision architecture for iconic to symbolic transformation
JPH08135889A (ja) 1994-11-10 1996-05-31 Canon Inc 電動雲台、撮像装置および画像入力装置
US6031573A (en) 1996-10-31 2000-02-29 Sensormatic Electronics Corporation Intelligent video information management system performing multiple functions in parallel
US7110024B1 (en) * 1997-07-15 2006-09-19 Silverbrook Research Pty Ltd Digital camera system having motion deblurring means
US6628339B1 (en) 1999-06-14 2003-09-30 Eastman Kodak Company Image sensor mount for a digital camera
US7969306B2 (en) 2002-01-11 2011-06-28 Sap Aktiengesellschaft Context-aware and real-time item tracking system architecture and scenarios
WO2003077530A2 (en) 2002-03-05 2003-09-18 Hitron Usa Quick-release sensor assembly and method
US20050132385A1 (en) 2003-10-06 2005-06-16 Mikael Bourges-Sevenier System and method for creating and executing rich applications on multimedia terminals
DE502004005457D1 (de) * 2004-01-30 2007-12-20 Baumer Optronic Gmbh Bildverarbeitungssystem
US7307663B2 (en) 2004-09-16 2007-12-11 Pelco Video surveillance camera
US7561191B2 (en) 2005-02-18 2009-07-14 Eastman Kodak Company Camera phone using multiple lenses and image sensors to provide an extended zoom range
JP4506658B2 (ja) 2005-11-30 2010-07-21 ソニー株式会社 無線通信システム,通信装置,設定情報提供方法,設定情報取得方法,およびコンピュータプログラム
JP2007228019A (ja) 2006-02-21 2007-09-06 Olympus Corp 撮像装置
US7860271B2 (en) 2006-09-05 2010-12-28 Zippy Technology Corp. Portable image monitoring and identifying device
US8655939B2 (en) 2007-01-05 2014-02-18 Digital Doors, Inc. Electromagnetic pulse (EMP) hardened information infrastructure with extractor, cloud dispersal, secure storage, content analysis and classification and method therefor
US7978239B2 (en) 2007-03-01 2011-07-12 Eastman Kodak Company Digital camera using multiple image sensors to provide improved temporal sampling
US8791984B2 (en) 2007-11-16 2014-07-29 Scallop Imaging, Llc Digital security camera
US8560785B1 (en) 2008-06-02 2013-10-15 Symantec Corporation Techniques for providing multiple levels of security for a backup medium
EP2313847A4 (en) * 2008-08-19 2015-12-09 Digimarc Corp METHODS AND SYSTEMS FOR PROCESSING CONTENT
US20120033101A9 (en) 2008-11-12 2012-02-09 Xiaoguang Yu Apparatus and methods for controlling image sensors
US8970654B1 (en) 2008-12-22 2015-03-03 Verint Systems Inc. System and method for selecting portions of video data for high quality feed while continuing a low quality feed
US8311983B2 (en) 2009-04-28 2012-11-13 Whp Workflow Solutions, Llc Correlated media for distributed sources
US8494259B2 (en) 2009-12-28 2013-07-23 Teledyne Scientific & Imaging, Llc Biologically-inspired metadata extraction (BIME) of visual data using a multi-level universal scene descriptor (USD)
US8587682B2 (en) 2010-02-12 2013-11-19 Nvidia Corporation Display system, method, and computer program product for capturing images using multiple integrated image sensors
JP5068333B2 (ja) 2010-02-26 2012-11-07 京セラドキュメントソリューションズ株式会社 画像形成装置
US9756292B2 (en) 2010-04-05 2017-09-05 Alcatel Lucent System and method for distributing digital video streams from remote video surveillance cameras to display devices
US8320644B2 (en) 2010-06-15 2012-11-27 Apple Inc. Object detection metadata
US9210322B2 (en) 2010-12-27 2015-12-08 Dolby Laboratories Licensing Corporation 3D cameras for HDR
US8750621B2 (en) 2011-04-27 2014-06-10 Eastman Kodak Company Method of authenticating security marker
JP2012242821A (ja) 2011-05-16 2012-12-10 Sony Mobile Communications Inc 表示画像生成方法
US9596398B2 (en) 2011-09-02 2017-03-14 Microsoft Technology Licensing, Llc Automatic image capture
WO2013045964A1 (en) * 2011-09-27 2013-04-04 Telefonaktiebolaget Lm Ericsson (Publ) Management of data flows between networked resource nodes in a social web
US8958659B2 (en) 2011-12-24 2015-02-17 Ecole De Technologie Superieure Image registration method and system robust to noise
US9288377B2 (en) 2012-05-02 2016-03-15 Semiconductor Components Industries, Llc System and method for combining focus bracket images
US8780219B2 (en) 2012-07-23 2014-07-15 Wooblue, Inc. Wireless viewing and control interface for imaging devices
EP2932704B1 (en) 2012-12-13 2019-08-07 Thomson Licensing Remote control of a camera module
US8761448B1 (en) * 2012-12-13 2014-06-24 Intel Corporation Gesture pre-processing of video stream using a markered region
US8812752B1 (en) 2012-12-18 2014-08-19 Amazon Technologies, Inc. Connector interface for data pipeline
US8888005B2 (en) 2013-04-12 2014-11-18 David Prokop Uniquely identifiable drug dosage form units
US20150146037A1 (en) 2013-11-25 2015-05-28 Semiconductor Components Industries, Llc Imaging systems with broadband image pixels for generating monochrome and color images
CN106164934A (zh) 2014-02-10 2016-11-23 谷歌公司 智能相机用户界面
US9189707B2 (en) 2014-02-24 2015-11-17 Invent.ly LLC Classifying and annotating images based on user context
US20160044227A1 (en) 2014-03-14 2016-02-11 Ashley Lynn Johnson Image capturing device support with remote controller
US10178329B2 (en) * 2014-05-27 2019-01-08 Rambus Inc. Oversampled high dynamic-range image sensor
US9788039B2 (en) 2014-06-23 2017-10-10 Google Inc. Camera system API for third-party integrations
US9225889B1 (en) 2014-08-18 2015-12-29 Entropix, Inc. Photographic image acquisition device and method
US9654296B2 (en) 2014-08-25 2017-05-16 Intel Corporation Handling sensor data
JP6429539B2 (ja) 2014-09-03 2018-11-28 キヤノン株式会社 通信装置、通信装置の制御方法、プログラム
US10489407B2 (en) 2014-09-19 2019-11-26 Ebay Inc. Dynamic modifications of results for search interfaces
US9723200B2 (en) 2014-10-15 2017-08-01 Microsoft Technology Licensing, Llc Camera capture recommendation for applications
US9697796B2 (en) * 2015-03-26 2017-07-04 Intel Corporation Adaptive linear luma domain video pipeline architecture
US9826149B2 (en) * 2015-03-27 2017-11-21 Intel Corporation Machine learning of real-time image capture parameters
US9769169B2 (en) 2015-09-25 2017-09-19 Intel Corporation Secure sensor data transport and processing
US10516651B2 (en) 2015-12-22 2019-12-24 Intel IP Corporation Securely routing sensor data from sensors to a trusted execution environment (TEE)
US20170337425A1 (en) 2016-05-19 2017-11-23 Scenera, Inc. Scene marking
US10509459B2 (en) * 2016-05-19 2019-12-17 Scenera, Inc. Scene-based sensor networks
US10693843B2 (en) * 2016-09-02 2020-06-23 Scenera, Inc. Security for scene-based sensor networks
US10742399B2 (en) 2017-12-28 2020-08-11 Intel Corporation Context-aware image compression

Also Published As

Publication number Publication date
TW202137061A (zh) 2021-10-01
US20200293803A1 (en) 2020-09-17
EP3938954A1 (en) 2022-01-19
TW202044114A (zh) 2020-12-01
TWI734406B (zh) 2021-07-21
CN113841155A (zh) 2021-12-24
US10990840B2 (en) 2021-04-27
TWI767763B (zh) 2022-06-11
EP3938954A4 (en) 2022-12-14
JP2022526869A (ja) 2022-05-26
WO2020190657A1 (en) 2020-09-24

Similar Documents

Publication Publication Date Title
TWI767763B (zh) 資料管線裝置
US11416063B2 (en) Scene-based sensor networks
US11245676B2 (en) Security for scene-based sensor networks, with privacy management system
US10958820B2 (en) Intelligent interface for interchangeable sensors
US20210397848A1 (en) Scene marking
US8063936B2 (en) Modular immersive surveillance processing system and method
JP2008502229A (ja) ビデオフラッシュライト/視覚警報
JP2019513275A (ja) 監視方法及び装置
US20110142233A1 (en) Server and camera for video surviellance system and method for processing events in the same system
KR20210104979A (ko) 영상 검색 장치 및 이를 포함하는 네트워크 감시 카메라 시스템
US20210306560A1 (en) Software-driven image understanding
JP2013026642A (ja) カメラ及び制御装置及びプログラム
US11972036B2 (en) Scene-based sensor networks
US20220286642A1 (en) Event-oriented multi-channel video backup apparatus and method, and network surveillance camera system including the same
CN113906735A (zh) 网络监控相机系统及其操作方法
FR3116973A1 (fr) Procédé et installation pour contrôler et/ou configurer des caméras IP installées en réseau
KR20200139612A (ko) 네트워크 감시 카메라 시스템 및 그 동작 방법
EP2300997A1 (fr) Systeme de videosurveillance intelligent reconfigurable dynamiquement.
Chaum Smart sensor end-to-end architecture considerations
GB2550971A (en) Method and system for managing access to a media sample captured at a first site by a movable camera
JP2018005275A (ja) 制御装置、制御方法及びプログラム
JP2007019915A (ja) 監視カメラ制御装置