KR20220008256A - 몰입형 미디어를 위한 자동 포인트 클라우드 검증 - Google Patents

몰입형 미디어를 위한 자동 포인트 클라우드 검증 Download PDF

Info

Publication number
KR20220008256A
KR20220008256A KR1020217032904A KR20217032904A KR20220008256A KR 20220008256 A KR20220008256 A KR 20220008256A KR 1020217032904 A KR1020217032904 A KR 1020217032904A KR 20217032904 A KR20217032904 A KR 20217032904A KR 20220008256 A KR20220008256 A KR 20220008256A
Authority
KR
South Korea
Prior art keywords
image
captured
threshold
difference metric
scene
Prior art date
Application number
KR1020217032904A
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 KR20220008256A publication Critical patent/KR20220008256A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0012Biomedical image inspection
    • G06T7/0014Biomedical image inspection using an image reference approach
    • G06T7/0016Biomedical image inspection using an image reference approach involving temporal comparison
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/255Detecting or recognising potential candidate objects based on visual cues, e.g. shapes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/08Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30221Sports video; Sports image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/41Medical

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Radiology & Medical Imaging (AREA)
  • Quality & Reliability (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

장면의 3D 모델에 기초한 이미지 검증에 관한 기술이 논의된다. 이러한 기술은 장면을 생성하는 데 사용되는 캡처된 이미지 내에서 객체를 검출하는 것, 3D 모델을 캡처된 이미지에 대응하는 뷰에 투영하여 재구성된 이미지를 생성하는 것 및 객체에 대응하는 캡처된 이미지와 재구성된 이미지의 이미지 영역을 비교하여 3D 모델을 검증하는 것을 포함한다.

Description

몰입형 미디어를 위한 자동 포인트 클라우드 검증
스포츠 경기 및 다른 유명 행사와 같은 일부 상황에서, 다수의 고해상도 카메라가 현장 및 행사 지역 또는 장면 주변에 설치될 수 있다. 예를 들어, 임의의 수의 고해상도 카메라가 경기장에 설치될 수 있고, 운동장에 대해 트레이닝될 수 있다. 카메라에 의해 획득된 동시의(contemporaneous) 이미지는, 예를 들어 분할 및 3D 재구성을 사용하여 처리되어 캡처된 장면의 입체적 모델 표현을 생성하며, 이는 3D 포인트 클라우드(point cloud)로 표현될 수 있다. 포인트 클라우드와 그 텍스처링된 표면을 사용하여, 캡처된 장면(예컨대, 가상 뷰) 내 어느 위치에서도 몰입형 뷰(예컨대, 360도 자유도)가 생성되어 사용자에게 높은 몰입형 비디오 경험을 제공할 수 있다.
불완전한 분할 및 3D 재구성으로 인해, 예를 들어, 논의된 포인트 클라우드(point cloud)는 장면 내 관심 대상을 누락할 수 있다. 포인트 클라우드의 이러한 불완전성은 누락된 객체 또는 인체의 부분 등을 포함하여 최종 몰입 뷰에 실수를 초래할 수 있으며, 이는 시청자에게 바람직하지 않다. 본원에 따른 개선점은은 이러한 고려 사항 및 다른 고려 사항과 관련이 있다. 이러한 개선은, 다수의 카메라에 의해 획득되는 프로 스포츠 경기와 같은 장면에서 몰입형 사용자 경험을 제공하는 요구가 더 널리 퍼짐에 따라 중요해질 수 있다.
본 명세서에서 설명되는 대상은 첨부된 도면에서 제한하는 방식이 아니라 예시의 방식으로 도시된다. 도시의 단순성과 명확성을 위해, 도면에 도시된 요소는 반드시 축척에 맞게 그려진 것은 아니다. 예를 들어, 일부 요소의 치수는 명확성을 위해 다른 구성요소에 비해 과장될 수 있다. 또한, 적절하다고 판단되는 경우, 대응하는 또는 유사한 요소를 나타내기 위해 도면 간 참조 번호가 반복되었다.
도 1은 장면의 3D 모델을 검증하기 위한 예시적인 장치를 도시한다.
도 2는 예시적인 장면에 대해 트레이닝된 예시적인 카메라 어레이를 도시한다.
도 3은 장면의 3D 모델을 검증하기 위한 예시적인 프로세스를 도시한다.
도 4는 캡처된 이미지와 재구성된 이미지 내 이미지 영역의 예시적인 비교를 도시한다.
도 5는 캡처된 이미지와 재구성된 이미지 내 이미지 영역의 다른 예시적인 비교를 도시한다.
도 6은 검출된 인체의 자세(human pose)를 갖는 이미지 영역의 예시적인 비교를 도시한다.
도 7은 이미지 내 경계 박스(bounding box)의 위치에 기초한 예시적인 임계값 변화를 도시한다.
도 8은 경계 박스 밀도에 기초한 예시적인 임계값 변화를 도시한다.
도 9는 예시적인 재구성된 2D 이미지를 도시한다.
도 10은 예시적인 객체 검출을 도시한다.
도 11은 예시적인 인체 검출을 도시한다.
도 12는 예시적인 인체 자세 검출을 도시한다.
도 13은 장면의 3D 모델 검증을 위한 예시적인 프로세스를 도시하는 흐름도이다.
도 14는 장면의 3D 모델 검증을 위한 예시적인 시스템의 개략도이다.
도 15는 예시적인 시스템의 개략도이다.
도 16은 모두 본 개시의 적어도 일부 구현에 따라 구성된 예시적인 디바이스를 도시한다.
이제 하나 이상의 실시예 또는 구현이 첨부된 도면을 참조하여 설명된다. 특정 구성 및 배열이 논의되지만, 이는 오직 예시적인 목적으로 이루어진다는 것을 이해하여야 한다. 관련 기술분야의 통상의 기술자는 본 상세한 설명의 사상과 범위를 벗어나지 않고 다른 구성 및 배열이 사용될 수 있다는 것을 인식할 것이다. 관련 기술분야의 통상의 기술자에게, 본 명세서에서 설명되는 기술 및/또는 배열이 본 명세서에서 설명되는 것 이외의 다양한 다른 시스템과 애플리케이션에서도 사용될 수 있다는 것이 명백할 것이다.
이하 설명이, 예를 들어 SoC(system-on-a-chip) 아키텍처와 같은 아키텍처에서 나타날 수 있는 다양한 구현을 설명하지만, 본 명세서에서 설명되는 기술 및/또는 배열의 구현은 특정 아키텍처 및/또는 컴퓨팅 시스템에 제한되지 않고, 유사한 목적을 위해 임의의 아키텍처 및/또는 컴퓨팅 시스템에 의해 구현될 수 있다. 예를 들어, 다중 집적 회로(integrated chip, IC) 칩 및/또는 패키지, 및/또는 셋톱 박스, 스마트폰 등과 같은 다양한 컴퓨팅 디바이스 및/또는 소비자 가전(consumer electronic, CE) 디바이스를 사용하는 다양한 아키텍처가 본 명세서에서 설명되는 기술 및/또는 배열을 구현할 수 있다. 또한, 이하 설명은 논리 구현, 시스템 구성요소의 유형 및 상호관계, 논리 분할/통합 선택 등과 같은 수많은 특정 세부사항을 설명할 수 있지만, 청구된 주제는 이러한 특정 세부사항 없이 실행될 수 있다. 다른 경우에, 예를 들어 제어 구조 및 전체 소프트웨어 명령 시퀀스와 같은 일부 대상은 본 명세서에서 개시되는 대상을 모호하게 하지 않기 위해 상세하게 나타나지 않을 수 있다.
본 명세서에서 개시되는 대상은 하드웨어, 펌웨어, 소프트웨어 또는 이들의 임의의 조합으로 구현될 수 있다. 본 명세서에서 개시되는 대상은, 하나 이상의 프로세서에 의해 판독되고 실행될 수 있는 머신 판독 가능 매체에 저장된 명령어로 구현될 수 있다. 머신 판독 가능 매체는 머신(예컨대, 컴퓨팅 디바이스)에 의해 판독 가능한 형태로 정보를 저장 또는 전송하기 위한 임의의 매체 및/또는 메커니즘을 포함할 수 있다. 예를 들어, 머신 판독 가능 매체는 ROM(read only memory), RAM(random access memory), 자기 디스크 저장 매체, 광학 저장 매체, 플래시 메모리 디바이스, 전기, 광학, 음향 또는 다른 유형의 전파 신호(예컨대, 반송파, 적외선 신호, 디지털 신호 등) 등을 포함할 수 있다.
본 명세서에서 "일 실시예", "일 예시적 실시예" 등에 대한 참조는 설명된 구현이 특정 기능, 구조 또는 특징을 포함할 수 있으나, 모든 실시예가 반드시 그 특정 기능, 구조 또는 특징을 포함하지 않을 수 있다는 것을 나타낸다. 더욱이, 이러한 문구는 반드시 동일한 구현을 지칭하는 것은 아니다. 또한, 특정 기능, 구조 또는 특징이 일 실시예와 관련하여 설명될 때, 본 명세서에서 명시적으로 설명되었는지 여부에 관련 없이, 다른 구현과 관련하여 그러한 기능, 구조 또는 특징을 달성하는 것은 통상의 기술자의 지식 내에 있다는 것에 따른다.
"실질적으로", "거의", "대체로", "대략" 및 "약"이라는 용어는 일반적으로 목표 값의 +/- 10% 내에 있음을 지칭한다. 예를 들어, 명시적인 맥락에서 달리 특정되지 않는 한, "실질적으로 동일", "대략 동일" 및 "대체로 동일"은 그렇게 설명된 것들 사이에 중요하지 않은 차이 밖에 없음을 의미한다. 해당 기술분야에서, 이러한 변동은 일반적으로 사전 결정된 목표 값의 +/- 10%보다 크지 않다. 다르게 특정되지 않는 한, "제 1", "제 2" 및 "제 3" 등 순서 형용사의 사용은 단지 유사한 대상의 다른 인스턴스가 지칭되고 있다는 것을 나타내고, 그렇게 설명된 대상이 시간적으로, 공간적으로, 순위대로 또는 임의의 다른 방식으로 주어진 순서대로 있어야 한다는 것을 암시하려는 것은 아니다.
3D 모델을 생성하는 데 사용되는 캡처된 이미지의 객체 영역과 재구성된 이미지 내 그 영역을 동일한 관점(viewpoint)에서 비교함으로써, 장면의 3D 모델을 자동으로 검증하는 것과 관련된 방법, 디바이스, 장치, 컴퓨팅 플랫폼 및 물품이 본 명세서에서 설명된다.
앞서 설명한 바와 같이, 사용자에게 캡처된 장면 내 가상 뷰가 생성되도록 유명 스포츠 경기, 엔터테인먼트 이벤트 등과 같은 장면과 관련된 높은 몰입형 비디오 경험(예컨대, 360도 자유도와 함께)을 제공하는 것에 이점이 있을 수 있다. 이로써, 이전에는 달성할 수 없었던 뷰와 경험이 사용자들에게 제공될 수 있다. 이러한 가상 뷰는, 장면의 포인트 클라우드(point cloud) 표현을 생성하고, 포인트 클라우드에 텍스처를 적용하며, 텍스처링된 포인트 클라우드를 이용하여 가상 뷰를 결정함으로써 달성될 수 있다. 불완전한 포인트 클라우드 생성과 다른 이유로 인해, 최종 3D 모델은 장면 내 관심 대상을 누락하거나, 객체를 복제하거나, 기타 인공물 또는 불완전성을 포함할 수 있다. 일부 실시예에서, 3D 모델 내 이러한 오류는, 3D 모델을 생성하는 데 사용되는 하나, 일부 또는 모든 캡처된 이미지 내 객체 검출을 수행함으로써 검출될 수 있다. 본 명세서에서 사용되는 캡처된 이미지는 관심 장면에 대해 트레이닝된 카메라에 의해 캡처된 이미지를 나타낸다. 이러한 이미지는 임의의 이미지 처리 기술을 사용하여 처리될 수 있으나, 카메라에 의해 캡처된 장면 컨텐츠는 유지한다.
예를 들어, 3D 모델은, 분할 및 3D 재구성을 이용하여 3D 포인트 클라우드에 의해 표현되는 장면의 입체적 모델을 생성하기 위해 장면의 많은 캡처된 이미지(즉, 36개의 캡처된 이미지)를 이용하여 생성될 수 있다. 본 명세서에서 사용되는 입체적 모델이라는 용어는 3D 구역 또는 공간에서 객체의 포인트 또는 표면을 표현하는 모델 또는 데이터 구조를 나타낸다. 3D 포인트 클라우드라는 용어는 3D 공간에서 객체의 표면에 있는 것으로 결정되는 포인트를 포함할 수 있는 모델 또는 데이터 구조를 나타낸다. 예를 들어, 3D 포인트 클라우드 내 각각의 포인트는 공간 내 포인트의 위치를 나타내는 x, y 및 z 좌표를 포함할 수 있고, 각각의 포인트는 공간에서 객체의 표면에 있는 것으로 결정된다. 물론, 3D 포인트 클라우드 내 일부 포인트는 오류일 수 있고, 일부 포인트는 누락되어 객체 또는 객체의 부분이, 그 장면의 부분임에도 불구하고, 3D 포인트 클라우드에 의해 표현되지 않을 수도 있다. 본 명세서에서 사용되는 객체라는 용어는 장면 내 다른 객체와 구별되는 임의의 개별적인 물체를 나타낸다. 따라서 객체는 인체, 공과 같은 스포츠 객체 또는 임의의 다른 개별적인 엔티티일 수 있다.
논의된 입체적 모델 또는 포인트 클라우드는 그 후 텍스처링되어 장면의 3D 모델을 생성할 수 있다. 본 명세서에서 사용되는 3D 모델이라는 용어는, 3D 포인트 클라우드의 포인트에 대해 적, 녹, 청 채널로 제공될 수 있는 텍스처 정보, 또는 입체적 모델이나 3D 포인트 클라우드에 적용될 수 있는 표면 텍스처 등을 포함하는 입체적 모델(3D 포인트 클라우드와 같은)을 나타낸다. 텍스처는 임의의 적합한 렌더링 기술을 이용하여 적용될 수 있다. 3D 모델은 그 후 이전에 논의된 객체 검출을 수행하는 데 사용된 하나, 일부 또는 모든 캡처된 이미지에 대응하는 재구성된 이미지를 생성하는 데 사용될 수 있다.
이러한 객체 검출은 객체가 검출되는 캡처된 이미지(들)의 이미지 영역(예컨대, 경계 박스(bounding box))을 제공한다. 이미지 영역 내 캡처된 이미지(들)의 이미지 컨텐츠는 그 후 (동일) 이미지 영역 내 재구성된 이미지(들)의 이미지 컨텐츠와 비교된다. 예를 들어, 비교는 대응하는 이미지 영역 사이의 차이를 측정하는 차이 메트릭(metric)을 생성할 수 있다. 이러한 기술은 대응하는 캡처된 이미지와 재구성된 이미지 쌍 한 개, 또는 그 객체가 검출되는 이러한 이미지 쌍 여러 개에 걸쳐 단일 이미지 영역에 대해 수행될 수 있다. 본 명세서에서 사용되는 차이 메트릭이라는 용어는, 픽셀 간 비교(예컨대, 절대 차이의 합(sum of absolute differences, SAD), 차이의 제곱의 합(sum of differences) 등), 형상 비교 메트릭(예컨대, 이미지 영역 내 동일한 형상이 검출되는지 여부에 대한 표시 및/또는 이러한 감지된 형상의 유사성을 나타내는 신뢰도 값), 인체 자세(human pose) 비교 메트릭(예컨대, 이미지 영역 내 동일한 신체 자세가 검출되는지 여부에 대한 표시, 이러한 검출된 자세의 유사성을 나타내는 신뢰도 값 및 자세 간 누락된 신체 부위 표시)과 같은 이미지 컨텐츠 사이의 차이의 이미지 컨텐츠 비교 측정을 나타낸다.
하나의 특정 이미지 쌍에 대한 차이 메트릭 또는 여러 이미지 쌍들에 걸친 차이 메트릭들의 조합(예컨대, 차이 메트릭의 합, 차이 메트릭의 평균 등)은 임계값과 비교되고, 임계값에 비해 불리한(unfavorable) 경우(예컨대, 임계값보다 큼), 3D 모델 오류 표시자가 형성되고 객체, 이미지의 시간 인스턴스, 이미지의 시점 등에 대해 보고되어, 오류가 해결될 수 있다.
도 1은 본 개시의 적어도 일부 구현에 따라 구성된 장면의 3D 모델을 검증하기 위한 예시적인 장치(100)를 도시한다. 도 1에 나타난 바와 같이, 장치(100)는 카메라 어레이(101), 3D 모델 모듈(102), 2D 투영(projection) 모듈(103), 객체 검출 모듈(104) 및 이미지 영역 비교기(105)를 포함할 수 있다. 장치(100)는, 임의의 적절한 폼 팩터 디바이스 또는 서버 컴퓨터, 클라우드 컴퓨팅 환경, 개인 컴퓨터, 랩톱 컴퓨터, 태블릿, 패블릿, 스마트폰, 게이밍 콘솔, 웨어러블 디바이스, 디스플레이 디바이스, 올인원 디바이스, 투인원 디바이스 등을 포함하는 하나 이상의 이러한 디바이스로 구현될 수 있다. 특히, 일부 실시예에서, 카메라 어레이(101)는 장치(100)의 나머지 구성요소를 구현하는 디바이스와 별도로 구현될 수 있다. 카메라(101)를 통해 캡처된 이미지, 2D 이미지(111)는 장면(110)의 동시에 캡처된 이미지들을 포함한다. 본 명세서에서 사용되는 동시에 캡처된 이미지라는 용어는 동일한 또는 0.1초와 같은 공차로 거의 동일한 시간 인스턴스에 캡처되도록 동기화된 이미지를 나타낸다. 일부 실시예에서, 캡처된 이미지는 동기화된 캡처된 비디오로 캡처된다. 예를 들어, 장치(100)의 구성요소는 임의의 다중 카메라 다중 프로세서 시스템에 통합되어 장면의 시청자에게 몰입형 시각적 경험을 전달할 수 있다.
도시된 바와 같이, 장치(100)는 2D 이미지(111)를 생성하거나 획득한다. 2D 이미지(111)는 임의의 적합한 이미지 데이터, 픽처 데이터, 비디오 프레임 데이터 등 또는 임의의 적합한 해상도의 픽처를 나타내는 임의의 데이터 구조를 포함할 수 있다. 일 실시예에서, 2D 이미지(111)는 각각 픽셀에 대해 R(적), G(녹) 및 B(청) 값을 갖는 RGB 이미지 데이터를 포함한다. 일 실시예에서, 2D 이미지(111)는 각각 픽셀에 대해 Y(루마), U(크로마 1) 및 V(크로마 2)를 갖는 YUV 이미지 데이터를 포함한다. 그러나, 임의의 적합한 색 공간이 사용될 수 있다. 일 실시예에서, 2D 이미지(111)는 상이한 관점에서 캡처된 비디오 픽처의 시퀀스의 픽처이다. 일 실시예에서 2D 이미지(111)는 5k 해상도(예컨대, 5120x2880 픽셀 해상도와 같이, 약 5,000 픽셀의 수평 해상도)를 갖는다. 일부 실시예에서, 2D 이미지(111)는 4k 보다 적은 해상도(예컨대, 3840x2160 픽셀 해상도 또는 4096x2160 픽셀 해상도와 같이, 약 4,000 픽셀 및 3,840 픽셀 이상의 수평 해상도)를 갖는다.
논의된 바와 같이, 2D 이미지(111)는 임의의 수의 장면(110)의 동시에 캡처된 이미지를 포함하여, 장면(110)의 이미지가 동일하거나 거의 동일한 시간 인스턴스에서 캡처되도록 하고, 이러한 이미지 캡처가 시간에 따라 특정 프레임 레이트(예를 들어, 60fps 또는 30fps)로 반복되어 장면(110)의 동시에 획득된 비디오를 제공한다. 장면(110)은 스포츠 경기, 엔터테인먼트 이벤트, 정치 이벤트 등과 같은 임의의 장면을 포함할 수 있다. 일반적으로 유명 행사를 위해 제공되지만, 장치(100)는 임의의 장면(110)에 적용될 수 있다.
도 2는 본 개시의 적어도 일부 구현에 따라 구성된 예시적인 장면(110)에 대해 트레이닝된 예시적인 카메라 어레이(101)를 도시한다. 도시된 실시예에서, 카메라 어레이(101)는 운동장에 대해 트레이닝된 36개의 카메라를 포함한다. 그러나, 카메라 어레이(101)는 20개 이상의 카메라와 같이, 장면(110)의 3D 모델을 생성하기에 충분한 이미지를 획득하기 위해 임의의 적합한 수의 카메라를 포함할 수 있다. 더 적은 카메라는 3D 모델을 생성하는 데 적절한 정보를 제공하지 못할 수 있다. 카메라 어레이(101)는 장면(110)의 운동장을 둘러싸는 경기장(미도시)에 장착될 수 있고, 동시 비디오를 캡처하도록 장면(110)에 대해 캘리브레이션되고 트레이닝될 수 있다. 카메라 어레이(101)의 각각의 카메라는 장면(110)의 특정 뷰를 갖는다. 본 명세서에서 사용되는 뷰라는 용어는 카메라 어레이(101)의 특정 카메라의 이미지 평면의 이미지 컨텐츠 또는 장면(110) 내 위치한 가상 카메라로부터의 임의의 뷰의 이미지 컨텐츠를 나타낸다. 특히, 뷰는 캡처된 뷰(예컨대, 카메라에서 이미지 캡처를 사용하여 획득된 뷰)일 수도 있고 또는 뷰는 재구성될 수도 있다(예컨대, 3D 모델로부터 투영된 뷰). 본 명세서에서 사용되는 재구성된 이미지라는 용어는 3D 모델로부터 특정 뷰로 투영된 이미지 데이터를 나타낸다. 예를 들어, 뷰는 카메라 어레이(101)의 특정 카메라의 뷰와 동일할 수 있다.
이제 도 1로 돌아가면, 2D 이미지(111)는, 대응하는 2D 이미지(111)의 각각 또는 여러 시간 인스턴스에 대한 3D 모델(112)을 생성하는 3D 모델 모듈(102)에 제공된다. 일부 실시예에서, 각각의 이미지 캡처 인스턴스에 대해, 대응하는 3D 모델(112)이 생성된다. 3D 모델 모듈(102)은 임의의 적합한 기술 또는 기술들을 이용하여 3D 모델(112)을 생성할 수 있다. 일부 실시예에서, 3D 모델 모듈(102)은 2D 이미지(111)로부터 특정 시간 인스턴스에 대해 대응하는 이미지를 이용하여 이미지 분할 및 3D 재구성을 수행하여, 포인트 클라우드와 텍스처 정보를 포함하는 3D 모델(112)을 생성하기 위해 포인트 클라우드의 후속 렌더링을 생성한다.
또한, 2D 이미지(111)는 2D 이미지(111) 각각에 대해 객체 검출을 수행하여 2D 이미지(111) 내 객체를 검출하도록 객체 검출 모듈(104)에 제공된다. 이러한 객체 검출은, 인체, 공 또는 다른 스포츠 객체, 자동차 등과 같은 장면(110)과 관련된 객체를 검출하기에 임의의 적합한 기술 또는 기술들을 이용하여 수행된다. 2D 이미지(111)의 각각의 검출된 객체 각각에 대해, 검출된 객체를 포함하는 이미지 영역을 나타내는 경계 박스(113)의 경계 박스가 생성된다. 경계 박스(113)는 좌상단 좌표 및 대응하는 이미지 영역의 치수와 같은 이러한 이미지 영역을 나타내는 임의의 적합한 데이터 구조를 포함할 수 있다. 특히, 동일한 객체가 1개보다 많은 2D 이미지(111)로부터 검출될 수 있기 때문에(예컨대, 동일한 객체가 카메라 어레이(101)의 일부 또는 심지어 모든 뷰에서 반복될 것임), 경계 박스(113)의 위치는, 객체의 다른 이미지의 경계 박스의 위치에 기초하여 특정 이미지의 객체에 대한 경계 박스의 위치를 제한하는 다중 뷰 기하학적 제약 조건을 적용함으로써 정확도 측면에서 증강될 수 있다.
3D 모델(112)의 논의도 돌아가면, 도시된 바와 같이, 2D 투영 모듈(103)은 3D 모델(112)을 수신하고, 2D 투영 모듈(103)은 재구성된 2D 이미지(114)를 생성하여 재구성된 2D 이미지(114)가 카메라 어레이(101)의 각 뷰에 대한 2D 재구성된 이미지를 포함하도록 한다. 이러한 재구성된 2D 이미지(114)는 카메라 어레이(101)의 카메라의 특정 뷰에 대응하는 이미지 평면에 3D 모델(112)을 투영하는 임의의 적합한 기술 또는 기술들을 이용하여 생성될 수 있다.
이미지 영역 비교기(105)는 2D 이미지(111), 경계 박스(113) 및 재구성된 2D 이미지(114)를 수신한다. 2D 이미지(111)의 각각, 일부 또는 모든 검출된 객체에 대해, 이미지 영역 비교기(105)는 2D 이미지(111)와 재구성된 2D 이미지의 이미지 영역을 동일한 경계 박스 내에서 비교한다. 즉, 특정 객체 및 객체를 포함하는 카메라 뷰의 경우, 객체를 포함하는 캡처된 2D 이미지의 이미지 영역과 객체를 포함할 것으로 기대되는 2D 재구성된 이미지의 이미지 영역이 비교된다. 이러한 비교는, 캡처된 2D 이미지에서 검출되는 객체를 갖는 모든 다른 캡처된 2D 이미지/재구성된 이미지 쌍에 대해서 또한 이루어질 수 있다. 비교는 임의의 적합한 기술 또는 기술들을 이용하여 수행될 수 있고, 비교에 대한 차이 메트릭이 생성될 수 있다. 차이 메트릭은 이미지 영역 차이에 대한 측정치이고, 픽셀 간 비교(예컨대, SAD), 객체 형상 비교, 인체 자세 비교 등을 포함할 수 있다. 이러한 차이 메트릭 생성은, 이미지 영역 내 자세 검출, 이미지 영역 내 객체 검출, 이미지 영역 내 에지(edge) 검출 등과 같은 비교를 위해 필요한 임의의 하위 처리(sub-processing)를 포함할 수 있다.
논의된 바와 같이, 일부 실시예에서, 차이 메트릭은 특정 객체에 대한 여러 이미지 쌍을 이용하여 결정될 수 있다. 이러한 실시예에서, 차이 메트릭은 결합(예컨대, 합산, 평균 등)될 수 있다. 다른 실시예에서, 차이 메트릭은 특정 객체에 대해 2D 캡처된 이미지 및 2D 재구성된 이미지의 쌍 하나만을 이용하여 생성될 수 있다. 어떤 경우이든, 전체 차이 메트릭은 임계값과 비교되고, 임계값에 비해 불리한 경우, 3D 모델 오류(105)가 보고된다. 3D 모델 오류(105)는 오류에 해당하는 검출된 객체, 오류에 해당하는 검출된 객체의 위치, 오류의 시간 인스턴스를 나타내는 타임 스탬프, 오류에 해당하는 카메라 뷰(들)와 같이 검출된 오류를 나타내는 임의의 표시자(들) 또는 데이터 구조를 포함할 수 있다.
논의된 바와 같이, 차이 메트릭이 임계값에 비해 불리한 경우, 3D 모델 오류(105)가 보고된다. 본 명세서에서 사용되는 임계값에 비해 불리하다는 것은 파라미터가 임계값에 의해 설정된 기대치를 충족하지 않는다는 것을 나타낸다. 예를 들어, 차이 메트릭의 경우, 차이 메트릭은 임계값을 초과(또는 충족하거나 초과)할 때 임계값에 비해 불리하게 된다. 또한, 일부 실시예에서, 차이 메트릭이 객체의 형상이 일치한다는 표시를 포함할 때(예컨대, 1의 값은 형상 불일치를 나타낼 수 있음), 차이 메트릭이 자세간 불일치하는 신체 부분의 수의 표시를 포함할 때(예컨대, 1 이상의 값은 자세 불일치를 나타낼 수 있음) 등과 같은 경우, 임계값은 0일 수 있다. 또한, 일부 실시예에서, 임계값은 검출된 객체를 포함하는 경계 박스의 크기에 따라 스케일링될 수 있다. 예를 들어, 픽셀 간 비교 임계값의 경우, 임계값은 최소 경계 박스 크기에 기초하여(예컨대, 32x32 또는 64x64 픽셀 최소 경계 박스에 기초하여) 결정될 수 있고, 임계값은 구현되는 실제 경계 박스의 크기로 스케일링(예컨대, 선형으로)될 수 있다. 대안적으로, 차이 메트릭은 최소 경계 박스 크기에 기초하여 정규화될 수 있다.
도 3은 본 개시의 적어도 일부 구현에 따라 구성된 장면의 3D 모델을 검증하기 위한 예시적인 프로세스를 도시한다. 프로세스(300)는 도 3에 도시된 바와 같이 하나 이상의 동작(301 내지 305)을 포함할 수 있다. 예를 들어, 동작(301)은 객체 검출 모듈(104)에 의해 수행될 수 있고, 동작(302)은 3D 모델 모듈(102)에 의해 수행될 수 있으며, 동작(303)은 2D 투영 모듈(103)에 수행될 수 있고, 동작(304)과 동작(305)은 이미지 영역 비교기(105)에 의해 수행될 수 있다. 도시된 바와 같이, 2D 이미지(111)가 2D 이미지 1(311), 2D 이미지 2(312), 2D 이미지 N-1(313) 및 2D 이미지 N(314) 등과 같이, 한 장면(110)의 상이한 뷰를 각각 가지는 N개의 이미지를 포함하도록, 카메라 어레이(101)로부터의 2D 이미지(111)가 프로세스(300)에 입력으로서 제공된다. 프로세스(300)는 다중 뷰 기하학적 제약 조건을 통해 선택적으로 증강된 객체 검출 위치 정확성을 갖는 캡처된 입력 2D 이미지(111)에 객체 검출(예컨대, 공, 선수, 인체 관절 등)을 적용한다. 각각의 객체(선택적으로 스포츠 장면의 공과 같이 오직 중요한 객체만을 포함하는)에 대한 최종적인 매우 정확한 경계 박스(예컨대, 하나의 카메라가 하나의 경계 박스를 가짐)로, 3D 모델이 각각의 카메라 뷰에 투영된다. 검출된 경계 박스는 그 후 이미지 영역(예컨대, 직사각형 이미지 영역)을 자르는(crop) 데 사용되고, 캡처된 이미지의 이미지 영역은 경계 박스 영역을 통해 재구성된 이미지(동일한 카메라 뷰에 대한)의 이미지 영역과 비교된다. 비교는 모든 카메라 뷰에 적용될 수 있고, 임의의 검출된 이미지 영역 차이가 임계값에 비해 불리한 것에 대응하여, 관심 객체의 3D 모델 품질이 좋지 않다는 추론이 이루어지고, 이는 3D 모델 오류(115)로서 보고된다. 예를 들어, 3D 모델 오류는 3D 모델을 생성하는 데 사용되는 3D 포인트 클라우드 자체에 내재하는(underlying) 오류(예컨대, 3D 포인트 클라우드의 누락 객체)를 가질 수 있다. 3D 모델에 객체 삽입(객체의 사전 모델링, 객체의 사전 지식등을 이용), 이미지 영역에 대한 이미지 뷰 특징(예컨대, 확대/축소 또는 회전) 불허 등과 같이 임의의 적합한 대응이 보고된 오류에 따라 이루어질 수 있다.
프로세스(300)는 동작(301)에서 시작되는데, 여기서 처리를 위해 2D 이미지(211)가 수신되고 관심 객체가 각 카메라 뷰의 입력 이미지를 이용하여 2D 이미지(211) 내에서 검출된다. 도시된 바와 같이, 결과적인 검출은 선택적으로 다중 뷰 기하학적 제약 조건을 이용하여 정확성이 증강될 수 있다. 예를 들어, 객체가 2D 이미지(111)에서 하나 이상이 검출된 경우, 검출된 객체의 위치는 2D 이미지의 뷰 사이의 관계에 기초하여 제약될 수 있다. 이러한 기하학적 제약 조건은 2D 이미지 내 객체의 위치의 정확성을 개선하는 데 사용될 수 있다. 논의된 바와 같이, 오직 관심 객체가 동작(301)에서 검출될 수 있다. 예를 들어, 스포츠 경기를 포함하는 장면의 경우, 관심 객체는 공과 인체(예컨대, 선수 및 심판)를 포함할 수 있다. 관심 객체에만 관련된 이러한 객체 검출의 제한은 2D 이미지(111)에서 위양성(false positive) 검출을 제거할 수 있다.
논의된 바와 같이, 동작(301)은 카메라 어레이의 각 카메라 뷰에 대응하는 입력 2D 이미지(111)로부터의 객체 검출을 포함하는데, 카메라 어레이(101)는 장면 주변(예컨대, 경기장 내)에 설치된 다수의 카메라를 갖고, 카메라 어레이(101)의 각 카메라가, 예를 들어 30fps의 속도로 5K 해상도 이미지를 출력하며 장면의 특정 영역을 비추도록 한다. 동작(301)에서 수행되는 객체 검출은, 각 검출된 객체(예컨대, 공과 각 플레이어에 대한)에 대응하는 경계 박스를 획득하기 위한 2D 이미지(111)의 각 캡처된 이미지에 대한 객체 검출(예컨대, YOLO(you only look once) 객체 검출, SSD(single shot multi-box object detection 등)을 기초로 한 딥 러닝(deep learning)과 같은 적합한 객체 검출 기술을 포함할 수 있다. 일부 실시예에서, 골격 검출 기술이 인체를 검출하고 인체 관절을 찾는 데 사용될 수 있다. 또한, 동작(301)에서 수행되는 객체 검출은 동시 이미지의 시간 인스턴스에 걸친 객체 추적에 의해 향상될 수 있다.
카메라 어레이(101)의 카메라가 잘 동기화되기 때문에, 기하학적 제약 조건이, 향상된 경계 박스 위치 정확성을 위해 동일한 검출된 객체에 대한 뷰에 걸쳐 경계 박스 인스턴스에 적용될 수 있고/있거나 2D 이미지(111) 중 하나에서의 객체 검출이 2D 이미지(111) 중 다른 하나에서의 객체 검출을 향상시키는 데 사용될 수 있다. 일부 실시예에서, 객체 검출 정확성을 향상시키고, 카메라 어레이(101) 내 다수의 보정된 카메라의 이점을 활용하기 위해, 3D 객체 위치(예컨대, 전방 투영)가 2D 경계 박스 및 카메라 투영 매트릭스에 따라 결정되고, 그 후 검출된 객체의 3D 위치가 각 카메라 뷰에 다시 투영되어 객체의 새로운 2D 위치(예컨대, 후방 투영)를 결정하도록, 다중 뷰 기하학적 제약 조건이 적용된다. 그 후, 객체의 지역(local) 검색이 수행되어 검출된 객체 및/또는 검출된 객체의 위치와 관련하여 잘못된 객체 검출을 수정할 수 있다.
도 4는 본 개시의 적어도 일부 구현에 따라 구성된 캡처된 이미지와 재구성된 이미지 내 이미지 영역의 예시적인 비교를 도시한다. 도 4에 도시된 바와 같이, 예시적인 캡처된 2D 이미지(311)와 같이 2D 이미지(111) 중 하나에 대해, 관심 객체(401)(예컨대, 공 또는 다른 스포츠 아이템)가 동작(301)과 관련하여 논의된 것처럼 검출되고, 이미지 영역(431)이 관심 객체(401)에 대응하는 경계 박스(421) 내 정의된다. 논의된 바와 같이, 경계 박스(421)는 경계 박스(421)의 좌상단 좌표와 수평 및 수직 치수를 사용하여 정의될 수 있다. 또한, 경계 박스(421)의 위치 및/또는 크기는 다른 캡처된 2D 이미지(111)(미도시)에서 검출된 관심 객체(401)에 의해 제공되는 기하학적 제약을 사용하여 조정될 수 있다.
도 3으로 돌아가면, 프로세싱은 동작(302)에서 계속되는데, 여기서 2D 이미지(111) 이용, 이미지 분할, 3D 재구성 및 렌더링이 수행되어 3D 모델을 생성한다. 이러한 기술은, 각 포인트가 장면 내 객체의 표면에 위치하는 것으로 간주되도록, 본 명세서에서 논의되는 각 포인트에 대한 3D 좌표를 갖는 3D 포인트 클라우드를 생성하기 위해, 2D 이미지(111)의 이진화, 배경 모델링, 전경 검출, 2D 이미지(111)의 이미지 분할 및 3D 재구성에 의한 포인트 클라우드 재구성을 포함할 수 있다. 3D 포인트 클라우드 또는 유사한 데이터 구조는 그 후 렌더링되고 페인팅되어 텍스처가 있는 표면을 갖는 3D 모델을 생성한다.
프로세싱은 동작(303)에서 계속되는데, 여기서 3D 모델은 2D 이미지(111)의 뷰(즉, 2D 이미지(311), 2D 이미지(312), 2D 이미지(313), 2D 이미지(314) 등)에 대응하는 각 카메라 뷰에 투영된다. 이러한 3D 모델 투영은 각 카메라 뷰로 3D 장면 투영을 제공하는 임의의 적합한 기술 또는 기술들을 이용하여 수행될 수 있다. 일부 실시예에서, 카메라 어레이(101)의 각 카메라에 대해, 카메라 투영 매트릭스가 생성된다. 예를 들어, 카메라 어레이(101)의 각 카메라는 장면 캡처 이전에 보정되고, 예를 들어 바람 또는 다른 카메라 방해의 영향을 완화하도록 장면 캡처 동안 보정이 계속되기 때문에, 고품질 카메라 투영 매트릭스는 장면 캡처 이전 또는 장면 캡처 동안 유지 및/또는 생성된다. 카메라 투영 매트릭스와 동작(302)과 관련하여 논의된 3D 모델을 사용하여, 후방 투영(backward projection)을 통해, 3D 장면의 3D 모델을 2D 이미지(111)의 뷰에 대응하는 각 카메라 뷰에 매핑하여, 캡처된 2D 이미지(111)의 각각이 동일한 뷰를 갖는 대응하는 재구성된 2D 이미지(114)를 갖도록, 재구성된 2D 이미지(114)를 생성할 수 있다. 이러한 재구성된 2D 이미지(114)는 3D 모델 스냅샷 이미지, 텍스처가 있는 포인트 클라우드 스냅샷 이미지, 가상 뷰 이미지 등으로 특징지어질 수 있다. 일부 실시예에서, 3D 모델(및 대응하는 포인트 클라우드)은 카메라 어레이(101)와 동일한 좌표계를 사용하여, 재구성된 2D 이미지(114)가 2D 이미지(111) 중 대응하는 것과 동일한 좌표계를 갖도록 한다.
프로세싱은 동작(304)에서 계속되는데, 여기서는 동작(301)에서 생성된 경계 박스(즉, 경계 박스(113)를 이용하여, 캡처된 2D 이미지(111)의 캡처된 2D 이미지의 이미지 영역과 재구성된 2D 이미지(114)의 재구성된 2D 이미지의 이미지 영역이 비교된다. 즉, 대응하는 이미지 영역, 각각 캡처된 2D 이미지와 재구성된 2D 이미지가 비교된다. 이미지 영역은, 자르기를 위한 경계 박스를 이용하여, 캡처된 2D 이미지와 재구성된 2D 이미지 내 동일한 좌표와 치수를 갖는다.
도 4를 참조하면, 동작(303)과 관련하여 논의된 바와 같이, 재구성된 2D 이미지(441)(즉, 캡처된 2D 이미지(311)와 동일한 뷰를 갖는 재구성된 2D 이미지(114)의 재구성된 2D 이미지)가 생성된다. 도시된 바와 같이, 이미지 영역(432)은 경계 박스(421) 내에 정의된다(참고: 동일한 경계 박스가 재구성된 2D 이미지(441)와 캡처된 2D 이미지(311)에 모두 적용됨). 도 4의 예시에서, 재구성된 2D 이미지(441)의 이미지 영역(432)은 관심 객체(401)와 일치하는 객체(402)를 포함한다.
프로세스(300)의 동작(304)은 임의의 적합한 기술 또는 기술들을 이용하여 이미지 영역(431, 432)을 캡처할 수 있다. 일부 실시예에서, 객체 비교와 오류 식별은, 캡처된 2D 이미지(311)에서 검출된 바와 같은 관심 객체(401)에 대한 경계 박스(421)를 결정한 후, 캡처된 2D 이미지(311)로부터의 이미지 영역(431)과 재구성된 2D 이미지(441)로부터의 이미지 영역(432)을 자르기 위해 경계 박스(421)를 이용하는 것을 포함한다. 특히, 이론적으로, 3D 모델(112)이 완벽한 분할, 3D 재구성 및 렌더링(예컨대, 페인팅)을 수행하는 경우, 그 후 객체는 캡처된 2D 이미지(311)와 재구성된 2D 이미지(441) 간 동일할 것이다. 비교를 위해 이미지 영역(431, 432)이 비교되고, 오류 측정치 또는 차이 메트릭이 사용된다. 차이 메트릭이 임계값에 비해 불리한 경우, 오류가 보고된다. 그렇지 않으면, 오류가 보고되지 않는다. 일부 실시예에서, 오직 이미지 영역(431, 432)에 기초한 차이 메트릭이 임계값과 비교된다. 다른 실시예에서, 이미지 영역(431, 432)에 기초한 차이 메트릭은 관심 객체(401)에 대한 다른 차이 메트릭(예컨대, 관심 객체(401)가 검출되는 캡처된 2D 이미지(111) 모두에 걸쳐)과 결합되고, 결합된 메트릭이 임계값과 비교된다. 어떤 경우에도, 3D 모델 오류 표시자가, 이미지 영역(431, 432)에 기초한 차이 메트릭이 임계값에 비해 불리한 것에 대응하여 생성된다.
이미지 영역(431, 432)에 기초한 차이 메트릭은 임의의 적합한 차이 메트릭 또는 그들의 임의의 조합일 수 있다. 도 4에 도시된 바와 같이, 이미지 영역 비교기(105)는 이미지 컨텐츠(403)(이미지 영역(431)에 대응)와 이미지 컨텐츠(404)(이미지 영역(432)에 대응)를 수신하고, 이미지 영역 비교기(105)는 픽셀 간 비교기(411), 형상 기반 비교기(412) 및 자세 기반 비교기(413) 중 하나 이상을 포함할 수 있다. 이미지 컨텐츠(403, 404)는, 픽셀 데이터(예컨대, 임의의 색 공간 내 픽셀 값 또는 오직 루마(luma) 채널), 관심 대상 유형(가능한 경우), 골격 또는 자세 데이터(가능한 경우) 등과 같은 이미지 영역(431, 432)에 대해 수행되는 비교에 관한 임의의 적합한 이미지 컨텐츠를 포함한다. 도 3을 참조하면, 프로세스(300)는 동작(305)에서 계속되는데, 여기서 차이 매트릭이 단독으로 또는 다중 뷰 병합(aggregation)으로 임계값에 비해 불리한 것에 대응하여, 오류가 보고되고, 예를 들어 관심 객체의 객체 유형, 검출된 관심 객체의 위치, 타임 스탬프 등이 라벨링된다.
도 4로 돌아가면, 일부 실시예에서, 픽셀 간 비교기(411)는 이미지 영역(431, 432)을 SAD, 차이의 제곱의 합 등을 이용하여 픽셀 간 방식으로 비교한다. 예를 들어, 이미지 영역(431, 432) 간 대응하는 픽셀 값의 차이는, RGB 값, YUV 값, 오직 Y 값 등에 기초하여 이미지 영역(431, 432) 사이의 픽셀 간 차이 메트릭을 결정하는 데 사용될 수 있다. 논의된 바와 같이, 차이 메트릭은 경계 박스(421)의 크기에 기초하여 정규화되고, 임계값과 비교되어 관심 객체에 오류가 존재하는지를 결정할 수 있다. 도 4의 예시에서, 오류 없음 신호(410)에 관해 나타난 것처럼 오류가 검출되지 않는데, 이는 오류 신호가 없는 경우 제공되거나 추정될 수 있다. 본 명세서에서 논의되는 결합 메트릭을 이용하는 실시예의 경우, 관심 객체(401)를 갖는 임의의 이미지 쌍에 대한 정규화된 오류 메트릭은 평균화되어 임계값과 비교될 수 있다.
일부 실시예에서, 형상 기반 비교기(412)가 이미지 영역(431, 432)을 비교하는 데 사용될 수 있다. 예를 들어, 형상 검출기가 이미지 영역(431, 432) 중 하나 또는 모두에 적용되어 그 안의 하나 이상의 형상을 검출할 수 있다. 검출된 형상(들)이 있다면 비교되어 차이 메트릭을 생성할 수 있다. 예를 들어, 이미지 영역(431, 432) 중 하나에서 검출되지만 다른 영역에서는 검출되지 않는 각각의 형상에 대해, 하나의 카운트가 차이 메트릭에 대해 적용될 수 있다. 형상 기반 차이 메트릭은 그 후 임계값과 비교되어 관심 객체에 오류가 존재하는지를 결정할 수 있다. 일부 실시예에서, 매칭된 형상 기반 비교가 예상되면, 임계값은 0일 수 있다. 도 4의 예시에서, 오류 신호(410)에 관해 나타난 것처럼 오류가 검출되지 않는데, 이는 오류 신호가 없는 경우 제공되거나 추정될 수 있다. 본 명세서에서 논의되는 결합 메트릭을 이용하는 실시예의 경우, 관심 객체(401)를 갖는 임의의 이미지 쌍에 대한 형상 기반 차이 메트릭은 합산되어 임계값과 비교될 수 있다.
일부 실시예에서, 자세 기반 비교기(413)가 이미지 영역(431, 432)을 비교하는 데 사용될 수 있다. 예를 들어, 자세 검출기가 이미지 영역(431, 432) 중 하나 또는 모두에 적용되어 그 안의 하나 이상의 인체 자세를 검출할 수 있다. 대안적으로 또는 추가적으로, 이러한 자세 검출은 관심 객체(401)(예컨대, 관심 객체(401)가 인체인 때)를 검출하는 데 사용될 수 있다. 검출된 자세(들)가 있다면 비교되어 차이 메트릭을 생성할 수 있다. 예를 들어, 이미지 영역(431, 432)에서 검출되지만 나머지는 검출되지 않는 자세의 각 부분에 대해, 하나의 카운트가 차이 메트릭에 대해 적용될 수 있다. 예를 들어, 이미지 영역(431)은 머리, 2개의 팔 및 2개의 다리를 갖는 자세를 포함할 수 있는 반면, 이미지 영역(432)은 머리, 2개의 팔 및 1개의 다리를 갖는 자세를 포함할 수 있는데, 이는 다리 하나가 누락된 것을 나타내며, 자세 차이 메트릭에 추가될 수 있다. 자세 기반 차이 메트릭은 그 후 임계값과 비교되어, 관심 객체에 오류가 존재하는지 결정할 수 있다. 일부 실시예에서, 매칭된 형상 기반 비교가 예상되면, 임계값은 0일 수 있다. 본 명세서에서 논의되는 결합 메트릭을 이용하는 실시예의 경우, 관심 객체(401)를 갖는 임의의 이미지 쌍에 대한 자세 기반 차이 메트릭은 합산되어 임계값과 비교될 수 있다. 다른 실시예에서, 자세 사이의 관절 및 신체 요소의 위치 간 차이의 절대값 또는 제곱이 결정되어 임계값과 비교될 수 있다.
도 6은 본 개시의 적어도 일부 구현에 따라 구성된 검출된 인체 자세를 갖는 이미지 영역의 예시적인 비교를 도시한다. 도 6에 도시된 바와 같이, 캡처된 2D 이미지(311)의 경계 박스(621) 내 이미지 영역(631)은, (특정 점을 연결하는 선으로 표시되는) 세그먼트 또는 뼈에 의해 연결된 (점으로 표시되는) 관절을 갖는 검출된 자세(601)를 포함할 수 있다. 유사하게, 재구성된 2D 이미지(441)의 경계 박스(621) 내 이미지 영역(632)은 세그먼트 또는 뼈에 의해 연결된 관절을 갖는 검출된 자세(602)를 포함할 수 있다. 도시된 바와 같이, 검출된 자세(601)는 머리, 2개의 어깨, 흉골, 2개의 팔꿈치, 2개의 손, 2개의 엉덩이, 2개의 무릎 및 2개의 발을 포함할 수 있는 반면, 검출된 자세(602)는 머리, 2개의 어깨, 흉골, 2개의 팔꿈치, 2개의 손, 1개의 엉덩이, 1개의 무릎 및 1개의 발을 포함한다. 특히, 빈 영역(604)에 의해 표시되는 바와 같이 검출된 자세(602)에서 다리(603)가 누락된다. 일부 실시예에서, 자세 기반 비교기(413)는 검출된 자세(601)와 검출된 자세(602)의 모든 요소를 나열하고, 차이 메트릭에 검출된 자세(601, 602) 사이의 각 누락된 요소에 대해 1을 추가할 수 있다. 논의된 바와 같이, 차이 메트릭이 단일 이미지 쌍에서 또는 여러 이미지 쌍의 병합에 걸쳐 임계값을 초과하는 경우, 오류 표시자가 제공된다. 예를 들어, 자세 기반 비교기(411)는 자세(601) 및 자세(602)와 같은 인체 자세의 인체 자세 비교를 제공하여, 예를 들어 하나 또는 누락된 팔다리, 관절, 요소 등에 기초하여 차이 메트릭을 생성한다.
일부 실시예에서, 자세 차이 메트릭은, 예를 들어, 자세(601, 602) 사이의 관절의 위치의 절대값 또는 제곱에 기초하여 생성될 수 있다. 자세 차이 메트릭은 그 후 임계값과 비교될 수 있다. 일부 실시예에서, 임계값은 특정 자세 크기로 제공되고 자세(601, 602) 중 하나 또는 모두의 크기에 기초하여 스케일링된다. 본 명세서에서 논의되는 다른 기술에서와 같이, 자세 차이 메트릭은 오직 자세(601, 602) 사이에서 결정될 수 있거나 또는 자세(601, 602)에 대응하는 인체가 사용할 수 있는 자세의 모든 쌍에 걸쳐 병합될 수 있다.
도 4로 돌아가면, 논의된 바와 같이, 픽셀 간 비교기(411), 형상 기반 비교기(412) 및 자세 기반 비교기(413) 중 하나 이상이 사용될 수 있다. 일부 실시예에서, 관심 객체(401)의 객체 유형에 기초하여 픽셀 간 비교기(411), 형상 기반 비교기(412) 및 자세 기반 비교기(413) 중 하나 이상이 사용될 수 있다. 예를 들어, 공 또는 다른 스포츠 아이템의 경우, 픽셀 간 비교기(411) 및 형상 기반 비교기(412)가 사용될 수 있다. 다른 예시에서, 인체의 경우, 픽셀 간 비교기(411) 및 자세 기반 비교기(413)가 사용될 수 있다. 일부 실시예에서, 오류 검출을 통과하기 위해, 각각의 선택된 비교기(하나보다 많은 경우)가 오류가 검출되지 않기 위해 통과할 필요가 있을 수 있다.
도 5는 본 개시의 적어도 일부 구현에 따라 구성된 캡처된 이미지와 재구성된 이미지 내 이미지 영역의 다른 예시적 비교를 도시한다. 도 5는 객체가 없는 영역(502)을 갖는 이미지 영역(532)이 이미지 영역(431)과 일치하지 않고, 이미지 영역 비교기(105)에 의해 3D 모델 오류(115)가 발행된다는 점을 제외하고 도 4와 유사하다. 논의된 바와 같이, 이미지 영역 비교기(105)는 픽셀 간 비교기(411), 형상 기반 비교기(412) 및 자세 기반 비교기(413) 중 하나 이상을 구현할 수 있다. 도 5의 예시에서, 관심 객체(401)가 공이라는 것에 기초하여, 이미지 영역 비교기(105)는 픽셀 간 비교기(411)와 형상 기반 비교기(412) 중 하나 또는 모두를 구현할 수 있다. 모두 구현되는 경우, 픽셀 간 비교기(411) 또는 형상 기반 비교기(412)가 오류를 나타내는 경우(예컨대, 임계값보다 큰 차이), 3D 모델 오류(115)가 발행될 수 있다. 이에 따라, 더 강력한 오류 검출이 제공될 수 있다.
도 3으로 돌아가면, 프로세스(300)는 이미지 또는 비디오 프레임 캡처의 임의의 시간 인스턴스에 수행되어, 3D 모델의 연속적인 자동 검증을 제공할 수 있다. 이러한 기술은 계산 복잡성이 낮고 인체가 개입하지 않는 3D 모델(및 포인트 클라우드) 검증을 제공한다. 3D 모델(및 포인트 클라우드) 내 오류가, 예를 들어, 공, 인체 선수의 신체 부분(예컨대, 다리, 팔 등) 등과 같은 장면 내 관심 객체 누락을 야기하는 불완전한 분할 및 3D 재구성으로 인해 발생할 수 있다.
동작(305)에 관하여 논의된 바와 같이, 단일 또는 병합 차이 메트릭이 임계값에 비해 불리한 경우, 누락된 객체와 같은 오류를 갖는 2D 재구성된 이미지에 대응하는 기반 3D 모델을 나타내는 오류 표시자가 제공된다. 논의된 바와 같이, 일부 실시예에서, 픽셀 간 평가의 경우 특히 임계값은 경계 박스 크기로 정규화될 수 있다. 다른 실시예에서, 임계값 또는 정규화된 임계값은 이미지 내 경계 박스의 위치에 기초하여 및/또는 관심 경계 박스 근처의 경계 박스 밀도에 기초하여 변경될 수 있다.
도 7은 본 개시의 적어도 일부 구현에 따라 구성된 이미지 내 경계 박스의 위치에 기초한 예시적인 임계값 변화를 도시한다. 도 7에 도시된 바와 같이, 이미지 영역은 경계 박스(701, 702) 내 정의된다. 명확성을 위해 경계 박스에 관하여 논의되지만, 도 7의 논의는 이러한 경계 박스 내 이미지 영역에 동일하게 적용된다. 예를 들어, 경계 박스(701)는 특정 객체에 대응할 수 있고, 경계 박스(702)는 동일 프레임 내 다른 객체에 대응할 수 있다. 추가적으로 또는 대안적으로, 경계 박스(701, 702)는 캡처된 2D 이미지(311)의 개별적인 인스턴스 내 특정 관심 객체에 대한 경계 박스의 상이한 예시를 나타낼 수 있다. 특히, 이러한 경계 박스 내 이미지 영역의 비교는 본 명세서의 다른 곳에서 논의된 것과 같이 수행될 수 있다.
도 7의 실시예에서, 캡처된 2D 이미지(311)의 중앙(711)에 대한 경계 박스(701, 702)의 근접성(및 대응하는 재구성된 2D 이미지(441)의 동일한 중앙)에 응답하여, 상이한 임계값이 경계 박스(701, 702)에 적용된다. 예를 들어, 캡처된 2D 이미지(311)의 중앙(711)을 향하는 경향이 있는 더 중요한 이미지 컨텐츠로 인해, 중앙(711)으로부터 경계 박스(701)까지의 거리 d1이 중앙(711)으로부터 경계 박스(702)까지의 거리 d2보다 더 작은 것에 기초하여, 경계 박스(702)에 비하여 경계 박스(701)에 대한 이미지 컨텐츠 비교를 위해 더 낮은 임계값이 적용될 수 있다. 즉, 2D 이미지(311, 411)의 에지 부분은 민감하게 오류를 제공하지 않는 반면, 중앙 부분은 사소한 불일치에 더 민감한 오류를 제공하도록, 더 낮은 차이 임계값이 2D 이미지(311, 411)의 중앙 부분에 대해 적용될 수 있다. 경계 박스(701, 702)까지의 거리는, 경계 박스(701, 702)의 중앙까지의 거리, 경계 박스(701, 702)의 가장 가까운 모서리까지의 거리(도시된 바와 같이) 등 임의의 적합한 기술 또는 기술들을 이용하여 결정될 수 있다.
또한, 이미지의 중앙으로부터 경계 박스(701, 702)까지의 거리에 기초하여 적용된 임계값은 거리에 대한 함수 적용(예컨대, 계산 또는 룩업 테이블(look up table)을 통해)과 같은 임의의 적합한 기술 또는 기술들을 이용하여 결정될 수 있다. 일 실시예에서, 임계값은 이미지의 DFC(distance from center)의 단조 증가 함수이다. 예를 들어, 임계값은 DFC에 대해 단조 증가 선형 함수를 적용함으로써, DFC에 대해 단조 증가 계단 함수를 적용함으로써 또는 DFC에 대해 임의의 다른 적합한 단조 증가 함수를 적용함으로써 결정될 수 있다. 도 7은 이미지 중앙으로부터 경계 박스의 거리에 대응하여 적용되는 임계값을 결정하기 위한 예시적인 함수(703)를 도시한다. 도시된 예시에서, 함수(703)는 거리 D1 이하의 임의의 거리에서 낮은 임계값 TH1으로부터 시작하여, 거리 D1과 D2 사이의 임의의 거리(D1보다 큼)에서 중간 임계값 TH2, 거리 D2보다 큰 임의의 거리에서 높은 임계값 TH3까지 계단식으로 변화하는 계단 함수이다. 이러한 거리는 예를 들어 픽셀로 결정될 수 있고, 임의의 적합한 픽셀 거리를 포함할 수 있다.
비록 2D 이미지(311, 441)의 중앙(711)으로부터의 거리와 관련하여 논의되었지만, 일부 실시예에서, 구체적으로 이미지가 높은 카메라 앵글(angle)을 가진 넓고 평평한 필드의 스포츠 장면에 관한 것일 때 2D 이미지(311, 441)의 하단에서 특히 이미지의 더 세부적인 것이 발견될 수 있으므로, 경계 박스 거리는 2D 이미지(311, 441)의 하단 중앙(712)으로부터 측정될 수 있다. 이러한 맥락에서, 이미지 객체는 2D 이미지(311, 441)의 하단 중앙(712) 근처에서 더 크게 나타나고, 카메라는 이러한 이미지 객체에 초점을 맞추는 경향이 있으며, 그 안의 오류는 더 신경이 쓰일 수 있다. 더욱이, 다른 맥락에서, 논의된 거리는 2D 이미지(311, 441)의 다른 관심 지점으로부터의 것일 수 있다.
픽셀 간 비교의 예시에서, 각각의 이용 가능한 임계값(예컨대, TH1, TH2, TH3)이 최소 경계 박스 크기에 대한 것이고, 임계값이 그 후 적절한 경계 박스 크기로 스케일링될 수 있도록, 임계값은 스케일링 가능한(scalable) 임계값일 수 있다. 논의된 바와 같이, 2D 이미지(311, 441)의 중앙 부분 내 경계 박스가 더 작은 차이 임계값을 사용하도록(따라서 동일한 이미지 영역 불일치에 대해 더 많은 오류를 제공하도록) 하는 반면, 2D 이미지(311, 441)의 에지 부분은 더 큰 차이 임계값을 사용하도록(따라서 동일한 이미지 영역 불일치에 대해 더 적은 오류를 제공하도록), 임계값은 중앙에서 경계 박스까지 거리에 따라 단조 증가할 수 있다.
자세 간 누락된 요소가 사용되는 인체 자세 비교의 예시의 경우, 임계값은 TH1에서 0의 임계값부터, 예를 들어 1개 또는 2개의 관절 또는 인체 자세 요소가 누락되는 것을 허용하는 제 2 임계값(예컨대, TH2 = 1 또는 2), 선택적으로 2개 내지 4개의 관절 또는 인체 자세 요소가 누락되는 것을 허용하는 제 3 임계값(예컨대, TH3 = 2 내지 4)까지 변화할 수 있다. 특히, 임계값은 인체 또는 선수 전체가 누락되는 것으로까지 확장되지 않을 수 있지만, 2D 이미지(311, 441)의 일부 누락된 신체 부분 또는 에지 부분의 요소를 허용할 수 있다. 일부 실시예에서, 특정 누락된 신체 부분(머리와 같은)은 적용된 임계값과 관계없이 오류를 트리거할 수 있다. 자세 위치 차이의 측정이 사용되는, 다른 인체 자세 비교 실시예에서, 임계값은 스케일링 가능할 수 있고, 픽셀 간 임계값에서와 같이, 2D 이미지(311, 441)의 중앙 부분 내 자세가 더 작은 차이 임계값을 사용하도록(따라서 동일한 자세 불일치에 대해 더 많은 오류를 제공하도록) 하는 반면, 2D 이미지(311, 441)의 에지 부분은 더 큰 임계값 차이를 사용하도록(따라서 동일한 자세 불일치에 대해 더 적은 오류를 제공하도록), 임계값은 중앙에서 경계 박스까지(또는 중앙에서 자세까지) 거리에 따라 단조 증가할 수 있다.
형상 기반 비교에서, 임계값은 다시 임계값 사이의 선택적인 중간(medium) 임계값을 가지고 낮은 임계값부터 높은 임계값까지 변화할 수 있다. 일부 실시예에서, 캡처된 이미지와 재구성된 이미지 사이의 형상의 크기의 비율과 같이, 형상의 특징 또는 측정이 비교될 수 있고, 가변 임계값이 적용될 수 있다. 일부 실시예에서, 형상 기반 비교는 단순히 단일 임계값을 사용하여 일치가 발생하는지 여부를 나타낼 수 있고, 가변 임계값이 사용되지 않을 수 있다.
도 8은 본 개시의 적어도 일부 구현에 따라 구성된 경계 박스 밀도에 기초한 예시적인 임계값 변화를 도시한다. 도 8에 도시된 바와 같이, 이미지 영역이 도 7과 관련하여 논의된 경계 박스(801, 802) 내에서 정의된다. 명확성을 위해 경계 박스에 관하여 논의되었지만, 도 8의 논의는 이러한 경계 박스 내 이미지 영역에도 동일하게 적용된다. 예를 들어, 경계 박스(801)는 특정 객체에 대응할 수 있고, 경계 박스(802)는 동일한 프레임 내 다른 객체에 대응할 수 있다. 추가적으로 또는 대안적으로, 경계 박스(801, 802)는 캡처된 2D 이미지(311)의 개별적인 인스턴스 내 특정 관심 객체에 대한 경계 박스의 차이 예시를 나타낼 수 있다. 이러한 경계 박스 내 이미지 영역의 비교는 본 명세서의 다른 곳에서 논의된 바와 같이 수행될 수 있다.
도 8의 실시예에서, 상이한 임계값이 경계 박스(701, 702) 주변 경계 박스 밀도에 대응하여 경계 박스(801, 802)에 적용된다. 예를 들어, 더 중요한 이미지 컨텐츠는 함께 모이는 경향이 있기 때문에, 밀도 d1으로 나타낸 것처럼 경계 박스(801)가 높은 경계 박스 밀도에 있는 것과, 밀도 d2으로 나타낸 것처럼 경계 박스(802)가 낮은 밀도 영역에 있는 것에 기초하여, 경계 박스(802)에 비하여 더 낮은 임계값이 경계 박스(801)에 대한 이미지 컨텐츠 비교를 위해 적용될 수 있다. 즉, 더 낮은 차이 임계값이 2D 이미지(311, 441)의 높은 밀도 경계 박스 영역 내 경계 박스에 적용될 수 있는 반면, 더 높은 임계값은 2D 이미지(311, 441)의 낮은 밀도 경계 박스 영역 내 경계 박스에 적용된다. 경계 박스(701, 702)의 경계 박스 밀도는, 각각 경계 박스(801, 802) 주변 영역(811, 812)을 결정하고, 영역(811, 812) 내 경계 박스의 수를 세는 것과 같은 임의의 적합한 기술 또는 기술들을 이용하여 결정될 수 있다. 도시된 실시예에서, 경계 박스(802)는 영역(812) 내 1개의 경계 박스를 갖는 낮은 밀도 영역(802) 내에 있는 반면, 경계 박스(801)는, 이 경우에, 영역(811) 내 4개의 경계 박스를 갖는 높은 밀도 영역(801) 내에 있다.
또한, 경계 박스 밀도(또는 영역 내 경계 박스의 수)에 기초하여 적용된 임계값은 밀도에 대한 함수 적용(예컨대, 계산 또는 룩업 테이블을 통해)과 같은 임의의 적합한 기술 또는 기술들을 이용하여 결정될 수 있다. 일 실시예에서, 임계값은 BBD(bounding box density, 경계 박스 밀도)의 단조 감소 함수이다. 예를 들어, 임계값은 BBD에 단조 감소 선형 함수를 적용함으로써, BBD에 단조 감소 계단 함수를 적용함으로써 또는 BBD에 임의의 다른 적합한 단조 감소 함수를 적용함으로써 결정될 수 있다. 일 실시예에서, 함수(804)는 경계 박스 밀도 또는 카운트에 대응하여 적용된 임계값을 결정하도록 적용될 수 있다. 도시된 예시에서, 함수(804)는 밀도 D1 이하의 임의의 밀도에 대해 높은 임계값(TH1)부터, 밀도 D1 보다 큰 임의의 밀도에 대해 낮은 임계값(TH2)으로 계단식으로 변화하는 계단 함수이다. 일 실시예에서, 밀도 D1은 1이다. 일부 실시예에서, 밀도 D1은 2이다.
이전 논의에서와 같이, 픽셀 간 비교의 경우, 각각의 이용 가능한 임계값(예컨대, TH1, TH2)이 최소 경계 박스 크기에 대한 것이고 임계값이 그 후 적절한 경계 박스 크기로 스케일링될 수 있도록, 임계값은 스케일링 가능할 수 있다. 일부 실시예에서, 높은 밀도 영역의 경계 박스가 더 작은 차이 임계값을 사용하도록(따라서 동일한 이미지 영역 불일치에 대해 더 많은 오류를 제공하도록)하는 반면, 더 낮은 영역은 더 큰 차이 임계값을 사용하도록(따라서 동일한 이미지 영역 불일치에 대해 더 적은 오류를 제공하도록), 임계값은 경계 박스 밀도에 기초하여 단조 감소할 수 있다.
자세 간 누락된 요소가 사용되는 인체 자세 비교의 예시의 경우, 임계값은 TH1에서 0의 임계값부터 1개 또는 2개의 관절 또는 인체 자세 요소가 누락되는 것을 허용하는 제 2 임계값(예컨대, TH2 = 1 또는 2)까지 변화할 수 있다. 다시, 임계값은 인체 또는 선수 전체가 누락되는 것으로까지 확장되지 않을 수 있지만, 특정 영역 내 낮은 경계 박스 밀도 또는 단독 경계 박스의 일부 누락된 신체 부분 또는 요소를 허용할 수 있다. 중앙으로부터의 거리 예시에서와 같이, 특정 누락된 신체 부분(머리와 같은)은 적용된 임계값과 관계없이 오류를 트리거할 수 있다. 자세 위치 차이의 측정이 사용되는 인체 자세 비교 실시예에서, 임계값은 스케일링 가능하고, 픽셀 간 임계값에서와 같이, 임계값은 경계 박스 또는 자세 밀도에 기초하여 단조 감소할 수 있다.
형상 기반 비교에서, 임계값은 다시 낮은 임계값부터 높은 임계값까지 변화할 수 있다. 일부 실시예에서, 캡처된 이미지와 재구성된 이미지 사이의 형상의 크기의 비율과 같이, 형상의 특징 또는 측정이 비교될 수 있고, 가변 임계값이 적용될 수 있다. 일부 실시예에서, 형상 기반 비교는 단일 임계값을 이용하여 일치가 발생하는지 여부를 나타낼 수 있다.
도 7 및 도 8의 예시에서, 단일 이미지 쌍 비교가 이뤄지고, 이미지 쌍 비교의 병합이 적용될 수 있다. 예를 들어, 특정 관심 객체를 포함하는 모든 이미지 쌍에 걸친 중앙으로부터의 평균 거리, 특정 관심 객체를 포함하는 모든 이미지 쌍에 걸친 평균 경계 박스 밀도 등에 논의된 임계값 변화가 적용될 수 있다.
본 명세서에서 논의된 바와 같이, 캡처된 이미지의 이미지 영역(예컨대, 검출된 관심 객체에 대응하는 영역)은 재구성된 이미지의 동일한 이미지 영역과 비교되어 자동적으로 그리고 효율적으로 재구성된 이미지를 생성하는 데 사용된 기반 3D 모델의 오류를 검출한다.
도 9는 본 개시의 적어도 일부 구현에 따라 구성된 예시적인 재구성된 2D 이미지(900)를 도시한다. 도 9에 도시된 바와 같이, 재구성된 2D 이미지(900)는 장면의 이미지를 획득하는 데 사용되는 카메라와 동일한 뷰를 갖도록 재구성될 수 있다. 도 9의 맥락에서, 재구성된 2D 이미지(900)는 풋볼 경기의 코너 엔드 존(corner end zone) 뷰에 해당한다.
재구성된 2D 이미지(900)와 관련하여 도시된 바와 같이, 스포츠 경기의 재구성된 2D 이미지는 공(901)(또는 다른 스포츠 아이템), 다양한 인체 및 경기장과 같은 배경을 포함할 수 있다. 특히, 재구성된 2D 이미지(900)를 카메라 뷰에 투영하는 데 사용된 기반 3D 모델은 장면의 많은 부분을 올바르게 모델링하였다. 그러나, 재구성된 2D 이미지(900)는 누락된 팔다리(902), 여분 아이템(903) 및 공간 해상도 문제(904)와 같은 오류를 포함한다. 특히, 재구성된 2D 이미지(900)의 오류는 본 명세서에서 논의된 기술을 이용하여 검출되고 보고될 수 있다. 또한, 재구성된 2D 이미지(900)는 인체가 더 크게 나타나고, 동작이 포커싱되는 등의 경향이 있는 재구성된 2D 이미지(900)의 중앙 근처 또는 재구성된 2D 이미지(900)의 중앙 하단 근처의 오류의 중요성과, 동작이 포커싱되는 경향이 있는 높은 경계 박스 밀도의 오류의 중요성을 도시한다. 이러한 영역의 오류는 더 신경이 쓰이는 경향이 있고 사용자가 확대, 회전하는 경향이 있는 영역 내에 있는 경향이 있기 때문에, 더 낮은 오류 임계값으로 캡처될 수 있다.
동작(301)과 관련하여 논의된 바와 같이, 객체 추적이 객체 검출 동작을 보완하기 위해 사용될 수 있다.
도 10은 본 개시의 적어도 일부 구현에 따라 구성된 예시적인 객체 추적(1000)을 도시한다. 도 10에서, 특정 시간 인스턴스, t에 대해 현재 캡처된 2D 이미지(1011)가, 객체 영역(1012)(링으로 도시됨)을 이용하여 함께 도시된 이전 시간 인스턴스(예컨대, t-1, t-2, ..., t-10)로부터의 여러 객체 인스턴스(1012)와 함께 도시된다. 특히, 객체 검출을 돕기 위해 현재 캡처된 2D 이미지(1011) 내 관심 객체의 위치가 예측될 수 있도록, 객체 영역(1012)에 대응하는 관심 객체가 이전 캡처된 2D 이미지의 시간 인스턴스에 걸쳐 추적(및 검출)될 수 있다. 이러한 기술은 공 또는 다른 스포츠 객체와 같이 빠르게 움직이는 객체에 대해 특히 유용하다. 도시된 바와 같이, 도시된 현재 캡처된 2D 이미지(1011)의 객체 추적 및 객체 검출에 기초하여, 현재 캡처된 2D 이미지(1011)에 대한 관심 객체에 대한 경계 박스(1001)가, 현재 캡처된 2D 이미지(1011) 내 경계 박스(1001)의 이미지 영역과 현재 캡처된 2D 이미지(1011)에 대응하는 재구성된 2D 이미지 내 경계 박스(1001)의 이미지 영역의 비교에 의한 3D 모델 검증을 위해 생성 및 사용될 수 있다.
도 11은 본 개시의 적어도 일부 구현에 따라 구성된 예시적인 인체 검출(1100)을 도시한다. 도 11에서, 경계 박스(1112)에 관하여 도시된 바와 같이, 각 인체가 경계 박스 내에 있도록, 특정 타임 인스턴스, t에 대한 현재 캡처된 2D 이미지(1111)가 그 안에 검출되는 여러 인체와 함께 도시된다. 특히, 관심 객체와 같은 인체는 YOLO 또는 SSD와 같은 임의의 적합한 기술 또는 기술들을 이용하여 검출되어, 검출된 인체의 여러 인스턴스를 생성할 수 있다. 논의된 바와 같이, 현재 캡처된 2D 이미지(1111) 내 도시된 인체 검출에 기초하여, 경계 박스가, 현재 캡처된 2D 이미지(1111) 내 각 경계 박스(1112)의 이미지 영역과 현재 캡처된 2D 이미지(1111)에 대응하는 재구성된 2D 이미지 내 각 경계 박스(1112)의 이미지 영역의 비교에 의한 3D 모델 검증을 위해 생성 및 사용될 수 있다. 일부 실시예에서, 경계 박스(1112) 내 인체와 같은 관심 객체를 갖는 다른 현재 캡처된 2D 이미지(예컨대, 동시에 캡처된 이미지) 또한, 현재 캡처된 2D 이미지와 그들의 대응하는 재구성된 2D 이미지 사이의 인체를 갖는 모든 이러한 이미지 영역을 비교함으로써 3D 모델을 검증하는 데 사용된다.
도 12는 본 개시의 적어도 일부 구현에 따라 구성된 예시적인 인체 자세 검출(1200)을 도시한다. 도 12에서, 특정 시간 인스턴스, t에 대한 현재 캡처된 2D 이미지(1211)가, 골격 자세(1212)에 관하여 도시된 바와 같이 각 인체가 골격 자세를 갖도록 그 안에서 검출된 여러 인체의 자세와 함께 도시된다. 특히, 관심 객체로서 인체가 검출될 수 있고 대응하는 자세 골격 또는 유사한 데이터 구조가 임의의 적합한 기술 또는 기술들을 이용하여 생성될 수 있다. 논의된 바와 같이, 현재 캡처된 2D 이미지(1211) 내 도시된 자세 검출에 기초하여, 각 검출된 자세에 대한 자세 데이터(예컨대, 자세 요소 및/또는 위치) 또는 자세를 포함하는 경계 박스가, 현재 캡처된 2D 이미지(1111)의 각 자세(1212)의 이미지 영역과 현재 캡처된 2D 이미지(1111)에 대응하는 재구성된 2D 이미지의 대응하는 자세의 비교에 의하여 3D 모델의 검증을 위해, 생성 및 사용될 수 있다. 이러한 기술은 각 포즈의 요소를 비교하여 누락된 요소를 찾는 것 또는 자세 위치 차이의 측정 생성하는 것과, 둘 중 하나(누락된 요소의 수 또는 자세 위치 차이 측정)를 임계값과 비교하는 것을 포함한다. 일부 실시예에서, 인체를 갖는 다른 현재 캡처된 2D 이미지(예컨대, 동시에 캡처된 이미지) 또한, 자세 데이터를 생성하고, 현재 캡처된 2D 이미지와 그들의 대응하는 재구성된 2D 이미지 사이에, 인체를 갖는 모든 이러한 자세를 비교함으로써 3D 모델을 검증하는 데 사용된다.
도 13은 본 개시의 적어도 일부 구현에 따라 구성된 장면의 3D 모델을 검증하기 위한 예시적인 프로세스(1300)를 도시하는 흐름도이다. 프로세스(1300)는 도 13 에 도시된 바와 같이 하나 이상의 동작(1301 내지 1305)을 포함할 수 있다. 프로세스(1300)는 3D 모델 검증 프로세스에 기초하여 이미지의 적어도 일부를 형성할 수 있다. 비제한적인 예시로서, 프로세스(1300)는 본 명세서에서 논의된 바와 같은 장치(100)에 의해 수행되는 3D 모델 검증 프로세스의 적어도 일부를 형성할 수 있다. 또한, 프로세스(1300)는 도 13의 시스템(1400)을 참조하여 본 명세서에서 설명될 것이다.
도 14는 본 개시의 적어도 일부 구현에 따라 구성된 장면의 3D 모델을 검증하기 위한 예시적인 시스템(1400)의 개략도이다. 도 13에 도시된 바와 같이, 시스템(1400)은 중앙 프로세서(1401), 이미지 프로세서(1402), 메모리(1403) 및 카메라 어레이(101)를 포함할 수 있다. 또한 도시된 바와 같이, 이미지 프로세서(1402)는 3D 모델 모듈(102), 2D 투영 모듈(103), 객체 검출 모듈(104) 및 이미지 영역 비교기(105)를 포함 또는 구현할 수 있다. 시스템(1400)의 예시에서, 메모리(1403)는 이미지 또는 프레임 데이터, 2D 캡처된 이미지, 2D 재구성된 이미지, 3D 포인트 클라우드, 3D 모델, 경계 박스, 3D 모델 오류 표시자 또는 데이터, 또는 본 명세서에서 논의된 다른 데이터를 저장할 수 있다.
도시된 바와 같이, 일부 예시에서, 3D 모델 모듈(102), 2D 투영 모듈(103), 객체 검출 모듈(104) 및 이미지 영역 비교기(105) 중 하나 이상 또는 부분은 이미지 프로세서(1402)를 통해 구현된다. 다른 예시에서, 3D 모델 모듈(102), 2D 투영 모듈(103), 객체 검출 모듈(104) 및 이미지 영역 비교기(105) 중 하나 이상 또는 부분은 중앙 프로세서(1401), 이미지 처리 유닛, 이미지 처리 파이프라인, 이미지 신호 프로세서 등을 통해 구현된다. 일부 예시에서, 3D 모델 모듈(102), 2D 투영 모듈(103), 객체 검출 모듈(104) 및 이미지 영역 비교기(105) 중 하나 이상 또는 부분은 SoC(system-on-a-chip)로서 하드웨어로 구현된다. 일부 예시에서, 3D 모델 모듈(102), 2D 투영 모듈(103), 객체 검출 모듈(104) 및 이미지 영역 비교기(105) 중 하나 이상 또는 부분은 FPGA를 통해 하드웨어로 구현된다.
이미지 프로세서(1402)는 임의의 수 및 유형의 본 명세서에서 논의된 동작을 제공할 수 있는 이미지 또는 그래픽 처리 유닛을 포함할 수 있다. 이러한 동작은 소프트웨어 또는 하드웨어 또는 이들의 조합을 통해 구현될 수 있다. 예를 들어, 이미지 프로세서(1402)는 메모리(1403)로부터 획득된 이미지를 조작 및/또는 분석하기 위한 전용 회로를 포함할 수 있다. 중앙 프로세서(1401)는 임의의 수 및 유형의 시스템(1400)을 위한 제어 및 다른 하이 레벨 기능을 제공할 수 있고/있거나 본 명세서에서 논의된 임의의 동작을 제공할 수 있는 처리 유닛 또는 모듈을 포함할 수 있다. 메모리(1403)는 휘발성 메모리(예컨대, SRAM(Static Random Access Memory) DRAM(Dynamic Random Access Memory) 등) 또는 비휘발성 메모리(예컨대, 플래시 메모리 등) 등과 같은 임의의 유형의 메모리일 수 있다. 비제한적인 예시에서, 메모리(1403)는 캐시 메모리로 구현될 수 있다. 일 실시예에서, 3D 모델 모듈(102), 2D 투영 모듈(103), 객체 검출 모듈(104) 및 이미지 영역 비교기(105) 중 하나 이상 또는 부분은 이미지 프로세서(1402)의 실행 유닛(EU)을 통해 구현된다. EU는, 예를 들어, 프로그램 가능한 로직 함수의 넓은 어레이를 제공할 수 있는 로직 코어 또는 코어들과 같은 프로그램 가능한 로직 또는 회로를 포함할 수 있다. 일 실시예에서, 3D 모델 모듈(102), 2D 투영 모듈(103), 객체 검출 모듈(104) 및 이미지 영역 비교기(105) 중 하나 이상 또는 부분은 고정 기능 회로 등과 같은 전용 하드웨어를 통해 구현된다. 고정 기능 회로는 전용 로직 또는 회로를 포함할 수 있고, 고정 목적 또는 기능을 위해 전용 로직에 매핑할 수 있는 고정 기능 진입점(entry point)의 세트를 제공할 수 있다.
도 13의 논의로 돌아가면, 프로세스(1300)는 동작(1301)에서 시작하고, 여기서 객체가 제 1 캡처된 이미지의 이미지 영역 내 검출되는데, 제 1 캡처 이미지는 다수의 동시에 캡처된 장면의 이미지 중 하나를 포함하도록 장면에 대해 트레이닝된 복수의 카메라 중 제 1 카메라를 통해 획득된 것이고, 제 1 캡처된 이미지의 이미지 영역 내에서 객체가 검출된다. 객체는 YOLO, SSD, 객체 추적 등과 같은 임의의 적절한 기능 또는 기능들을 이용하여 검출될 수 있다. 일 실시예에서, 이미지 영역 내 객체를 검출하는 것은, 제 1 캡처된 이미지에 객체 검출을 수행하여 객체와 이미지 영역을 검출하는 것과 복수의 동시에 캡처된 장면의 이미지 중 하나 이상 내 객체의 검출에 기초한 기하학적 제약을 사용하여 제 1 캡처된 이미지 내 이미지 영역의 위치를 조정하는 것을 포함한다.
프로세싱은 동작(1302)에서 계속되는데, 여기서 동시에 캡처된 이미지에 기초하여, 동시에 캡처된 이미지에 대응하는 타임 인스턴스에 대한 장면의 3D 모델이 생성된다. 3D 모델은, 포인트 클라우드를 생성하기 위한 2D 이미지 분할 및 3D 재구성과, 텍스처를 갖는 3D 모델을 생성하기 위한 후속 렌더링 또는 페인팅과 같은 임의의 적합한 기술 또는 기술들을 이용하여 생성될 수 있다.
프로세싱은 동작(1303)에서 계속되는데, 여기서 3D 모델이 장면에 대한 제 1 카메라의 뷰에 투영되어, 제 1 시간 인스턴스에 제 1 카메라의 뷰로부터 장면을 나타내는 제 1 재구성된 이미지를 생성한다. 특히, 제 1 캡처된 이미지와 제 1 재구성된 이미지는 동일한 장면의 뷰를 공유하고, 동일한 좌표계에 있다. 3D 모델 투영은 3D 모델로부터 제 1 재구성된 이미지를 결정하기 위한 카메라 투영 매트릭스와 같은 임의의 적합한 기술 또는 기술들을 이용하여 수행될 수 있다.
프로세싱은 동작(1304)에서 계속되는데, 여기서 이미지 영역 내 제 1 캡처된 이미지의 제 1 이미지 컨텐츠와 이미지 영역 내 제 1 재구성된 이미지의 제 2 이미지 컨텐츠의 비교에 기초하여, 차이 메트릭이 결정된다. 표현의 명확성을 위해 차이 메트릭과 관련하여 본 명세서에서 논의되었지만, 차이 메트릭이 이미지 컨텐츠와 사이의 차이를 기초로 스칼라 값을 제공하고 유사성 메트릭이 이미지 컨텐츠의 유사성에 기초하여 스칼라 값을 제공하도록 유사성 메트릭 또한 사용될 수 있다. 예를 들어, 이러한 차이 또는 유사성 메트릭은, 이미지 컨텐츠 사이의 차이 측정에 관하여 본 명세서에서 논의된 바와 같은, 이미지 컨텐츠 사이의 유사성/차이를 측정하도록 사용될 수 있는 비교 메트릭으로 특징지어질 수 있다.
차이 메트릭은 임의의 적합한 기술 또는 기술들을 이용하여 생성될 수 있다. 일부 실시예에서, 차이 메트릭은 제 1 및 제 2 이미지 컨텐츠의 픽셀 값의 픽셀 간 비교, 제 1 및 제 2 이미지 컨텐츠 내 검출된 형상의 형상 비교 또는 제 1 및 제 2 이미지 컨텐츠 내 검출된 인체 자세의 인체 자세 비교 중 하나 이상을 포함한다. 일 실시예에서, 이미지 영역은 제 1 캡처된 이미지 내 좌표를 갖는 경계 박스이고, 차이 메트릭을 결정하는 것은 제 1 캡처된 이미지와 제 1 재구성된 이미지에 동일한 경계 박스 좌표를 적용하여, 대응하는 제 1 및 제 2 이미지 컨텐츠를 결정하는 것을 포함한다.
프로세싱은 동작(1305)에서 계속되는데, 여기서 차이 메트릭이 임계값에 비해 불리한 것에 대응하여 3D 모델 오류 표시자가 생성된다. 예를 들어, 이미지 컨텐츠 차이의 측정이 임계값을 초과하는 경우, 모델 오류 표시자 및/또는 모델 오류 데이터가 제공된다. 논의된 바와 같이, 일부 실시예에서, 3D 모델 오류 표시자는 단일 쌍의 이미지(즉, 하나의 캡처된 이미지와 하나의 재구성된 이미지)에 기초하여 검출된 차이에 대응하여 생성된다. 일부 실시예에서, 프로세스(1300)는 나머지 동시에 캡처된 장면의 이미지에서 검출되는 각각 객체에 대응하는 복수의 제 2 이미지 영역을 검출하는 것, 3D 모델을 나머지 복수의 카메라의 각 뷰에 투영하여 나머지 카메라의 뷰로부터 장면을 나타내는 제 2 재구성된 이미지를 생성하는 것 및, 3D 모델 오류 표시자를 생성하는 것이 복수의 제 2 차이 메트릭에 또한 대응하도록, 캡처된 이미지와 재구성된 이미지 내 제 2 이미지 영역의 각 대응하는 이미지 컨텐츠의 비교에 기초하여 복수의 제 2 차이 메트릭을 결정하는 것을 더 포함한다. 예를 들어, 3D 모델 오류 표시자는 차이 메트릭과 제 2 차이 메트릭의 평균이 제 2 임계값을 초과하는 것에 대응하여 생성될 수 있다.
일부 실시예에서, 프로세스(1300)는 제 1 캡처된 이미지의 제 2 이미지 영역 내 제 2 객체를 검출하는 것, 제 3 이미지 영역 내 제 1 캡처된 이미지의 제 3 이미지 컨텐츠와 제 2 이미지 영역 내 제 1 재구성된 이미지의 제 4 이미지 컨텐츠의 비교에 기초하여 제 2 차이 메트릭을 결정하는 것 및 제 2 차이 메트릭이 제 2 임계값보다 큰 것에 대응하여 제 2 3D 모델 오류 표시자를 생성하는 것을 더 포함하되, 차이 메트릭이 임계값에 비해 불리하다는 것은 차이 메트릭이 임계값보다 큰 것을 포함하고, 임계값은 이미지 영역이 제 2 이미지 영역보다 제 1 캡처된 이미지의 중앙과 더 가까운 것에 대응하여 제 2 임계값보다 작다. 예를 들어, 임계값 또는 정규화된 임계값은 이미지 내 이미지 영역의 위치에 기초하여 변할 수 있다. 일 실시예에서, 임계값과 제 2 임계값은, 이미지 영역과 제 2 이미지 영역의 이미지 중심으로부터의 거리에 따른 단조 증가 함수를 적용함으로써 결정될 수 있다.
일부 실시예에서, 프로세스(1300)는 제 1 캡처된 이미지의 대응하는 제 2 이미지 영역 내 복수의 제 2 객체를 검출하는 것, 제 2 이미지 영역의 개별 이미지 영역 내 제 1 캡처된 이미지의 제 3 이미지 컨텐츠와 개별 이미지 영역 내 제 1 재구성된 이미지의 제 4 이미지 컨텐츠의 비교에 기초하여 제 2 차이 메트릭을 결정하는 것 및 제 2 차이 메트릭이 제 2 임계값보다 큰 것에 대응하여 제 2 3D 모델 오류 표시자를 생성하는 것을 포함하되, 차이 메트릭이 임계값에 비해 불리하다는 것은 차이 메트릭이 임계값보다 큰 것을 포함하고, 임계값은, 이미지 영역이 제 2 이미지 영역의 개별 이미지 영역보다 더 낮은 이미지 영역 밀도를 갖는 것에 대응하여, 제 2 임계값보다 크다. 예를 들어, 임계값 또는 정규화된 임계값은 검출된 객체 밀도에 기초하여 변화될 수 있다. 일 실시예에서, 임계값과 제 2 임계값은, 이미지 영역과 제 2 이미지 영역의 개별 이미지 영역의 이미지 영역 밀도에 단조 감소 함수를 적용함으로써 결정된다.
프로세스(1300)는 임의의 수의 입력 이미지, 비디오 프레임 등에 대해 직렬로 또는 병렬로 임의의 횟수만큼 반복될 수 있다. 프로세스(1300)는 오류 검출에서 자동화되고, 계산 효율적이며, 정확한 3D 모델 검증을 제공한다.
프로세스(1300)는 본 명세서에서 논의되는 것과 같은 임의의 적합한 디바이스, 시스템 또는 플랫폼에 의해 구현될 수 있다. 일 실시예에서, 프로세스(1300)는 이미지와 임의의 다른 논의된 데이터 구조를 저장하는 메모리와 동작(1301 내지 1305)을 수행하는 프로세서에 의해 구현된다. 일 실시예에서, 메모리와 프로세서는 모놀리식(monolithic) 필드 프로그램 가능 게이트 어레이 집적 회로를 통해 구현된다. 본 명세서에서 사용되는, 모놀리식이라는 용어는, 통신과 전원 공급을 위해 다른 디바이스와 연결될 수 있지만, 다른 디바이스와 별개인 장치를 나타낸다.
본 명세서에서 설명되는 시스템의 다양한 구성요소는 소프트웨어, 펌웨어 및/또는 하드웨어 및/또는 이들의 임의의 조합으로 구현될 수 있다. 예를 들어, 본 명세서에서 논의되는 디바이스 또는 시스템의 다양한 구성요소는, 적어도 부분적으로, 예를 들어 스마트폰과 같은 컴퓨팅 시스템에서 찾을 수 있는 것과 같은 컴퓨팅 SoC(System-on-a-Chip)의 하드웨어에 의해 제공될 수 있다. 통상의 기술자는, 본 명세서에서 설명되는 시스템은 대응하는 도면에 도시되지 않은 추가적인 구성요소를 포함할 수 있다는 것을 인식할 수 있다. 예를 들어, 본 명세서에서 논의되는 시스템은, 명확성을 위해 도시되지 않은 추가적인 구성요소를 포함할 수 있다.
본 명세서에서 논의되는 예시적인 프로세스의 구현은 도시된 순서로 나타난 모든 동작의 수행을 포함할 수 있지만, 본 개시는 이와 관련하여 제한되지 않으며, 다양한 예시에서, 본 명세서의 예시적인 프로세스의 구현은, 오직 나타난 동작의 서브세트만을, 도시된 것과 상이한 순서로 수행되는 동작을 또는 추가적인 동작을 포함할 수 있다.
추가적으로, 본 명세서에서 논의되는 임의의 하나 이상의 동작은, 하나 이상의 컴퓨터 프로그램 제품에 의해 제공되는 명령어에 대응하여 수행될 수 있다. 이러한 프로그램 제품은, 예를 들어, 프로세서에 의해 실행될 때, 본 명세서에서 설명되는 기능성을 제공할 수 있는 명령어를 제공하는 신호 베어링(bearing) 매체를 포함할 수 있다. 컴퓨터 프로그램 제품은 하나 이상의 머신 판독 가능 매체의 임의의 형태로 제공될 수 있다. 따라서, 예를 들어, 하나 이상의 그래픽 처리 유닛(들) 또는 프로세서 코어(들)를 포함하는 프로세서는, 하나 이상의 머신 판독 가능 매체에 의해 프로세서로 전달되는 프로그램 코드 및/또는 명령어 또는 명령어 세트에 대응하여, 본 명세서의 예시적인 프로세스의 하나 이상의 블록을 수행할 수 있다. 일반적으로, 머신 판독 가능 매체는, 본 명세서에서 설명되는 임의의 디바이스 및/또는 시스템으로 하여금 디바이스 또는 시스템, 또는 본 명세서에서 논의되는 임의의 다른 모듈 또는 구성요소의 적어도 부분을 구현하게 할 수 있는 프로그램 코드 및/또는 명령어 또는 명령어 세트의 형태로, 소프트웨어를 전달할 수 있다.
본 명세서에서 설명되는 임의의 구현에 사용되는, "모듈"이라는 용어는 본 명세서에서 설명되는 기능성을 제공하도록 구성된 소프트웨어 로직, 펌웨어 로직, 하드웨어 로직 및/또는 회로의 임의의 조합을 지칭한다. 소프트웨어는 소프트웨어 패키지, 코드 및/또는 명령어 세트 또는 명령어로 구현될 수 있고, 본 명세서에서 설명되는 임의의 구현에서 사용되는 "하드웨어"는, 예를 들어 단독으로 또는 임의의 조합으로, 하드와이어드(hardwired) 회로, 프로그램 가능한 회로, 스테이트 머신(state machine) 회로, 고정 기능 회로, 실행 유닛 회로 및/또는 프로그램 가능한 회로에 의해 실행되는 명령어를 저장하는 펌웨어를 포함할 수 있다. 모듈은, 집합적으로 또는 개별적으로, 더 큰 시스템, 예를 들어 집적 회로(IC), SoC(system on-chip) 등의 부분을 형성하는 회로로 구현될 수 있다.
도 15는 본 개시의 적어도 일부 구현에 따라 구성된 예시적인 시스템(1500)의 개략도이다. 다양한 구현에서, 시스템(1500)은 모바일 디바이스 시스템일 수 있지만, 시스템(1500)은 본 맥락으로 제한되지 않는다. 예를 들어, 시스템(1500)은 개인용 컴퓨터(PC), 랩톱 컴퓨터, 울트라 랩톱 컴퓨터, 태블릿, 터치 패드, 휴대용 컴퓨터, 핸드헬드(handheld) 컴퓨터, 팜탑(palmtop) 컴퓨터, PDA(personal digital assistant), 셀룰러 전화, 셀룰러 전화/PDA 결합, 텔레비전, 스마트 디바이스(예컨대, 스마트폰, 스마트 태블릿 또는 스마트 텔레비전), MID(mobile internet device), 메시징 디바이스, 데이터 통신 디바이스, 카메라(예컨대, 포인트 앤 슛(point-and-shoot) 카메라, 수퍼 줌(super-zoom) 카메라, DSLR(digital single-lens reflex) 카메라), 감시 카메라, 카메라를 포함하는 감시 시스템 등에 통합될 수 있다.
다양한 구현에서, 시스템(1500)은 디스플레이(1520)에 연결된 플랫폼(1502)을 포함한다. 플랫폼(1502)은 컨텐츠 서비스 디바이스(들)(1530) 또는 컨텐츠 전달 디바이스(들)(1540)와 같은 컨텐츠 디바이스 또는 이미지 센서(1519)와 같은 다른 컨텐츠 소스로부터 컨텐츠를 수신할 수 있다. 예를 들어, 플랫폼(1502)은 이미지 센서(1519) 또는 임의의 다른 컨텐츠 소스로부터 본 명세서에서 논의되는 이미지 데이터를 수신할 수 있다. 하나 이상의 탐색 피처를 포함하는 탐색 컨트롤러(1550)는, 예를 들어, 플랫폼(1502) 및/또는 디스플레이(1520)와 상호작용하는 데 사용할 수 있다. 각각의 이러한 구성요소는 아래에서 더 상세히 설명된다.
다양한 구현에서, 플랫폼(1502)은 칩셋(1505), 프로세서(1510), 메모리(1512), 안테나(1513), 스토리지(1514), 그래픽 서브시스템(1515), 애플리케이션(1516), 이미지 신호 프로세서(1517) 및/또는 라디오(1518)의 임의의 조합을 포함할 수 있다. 칩셋(1505)은 프로세서(1510), 메모리(1512), 스토리지(1514), 그래픽 서브시스템(1515), 애플리케이션(1516), 이미지 신호 프로세서(1517) 및/또는 라디오(1518) 간의 상호통신을 제공할 수 있다. 예를 들어, 칩셋(1505)은 스토리지(1514)와의 상호통신을 제공할 수 있는 스토리지 어댑터(미도시)를 포함할 수 있다.
프로세서(1510)는 CISC(Complex Instruction Set Computer) 또는 RISC(Reduced Instruction Set Computer) 프로세서, x86 명령어 세트 호환 프로세서, 멀티 코어 또는 임의의 다른 마이크로프로세서 또는 CPU(central processing unit)으로 구현될 수 있다. 다양한 구현에서, 프로세서(1510)는 듀얼 코어 프로세서(들), 듀얼 코어 모바일 프로세서(들) 등일 수 있다.
메모리(1512)는 RAM(Random Access Memory), DRAM(Dynamic Random Access Memory) 또는 SRAM(Static RAM)과 같은 휘발성 메모리 디바이스로 구현될 수 있으나, 이에 제한되지 않는다.
스토리지(1514)는 자기 디스크 드라이브, 광 디스크 드라이브, 테이프 드라이브, 내부 스토리지 디바이스, 부착된 스토리지 디바이스, 플래시 메모리, 배터리 백업(battery backed-up) SDRAM(synchronous DRAM) 및/또는 네트워크 액세스 가능 스토리지 디바이스와 같은 비휘발성 스토리지 디바이스로 구현될 수 있으나, 이에 제한되지 않는다. 다양한 구현에서, 스토리지(1514)는, 예를 들어 다수의 하드 드라이브가 포함된 경우, 중요한 디지털 미디어에 대한 보호가 강화된 스토리지 성능을 높이는 기술을 포함할 수 있다.
이미지 신호 프로세서(1517)는 이미지 처리를 위해 사용되는 특수 디지털 신호 프로세서 등으로 구현될 수 있다. 일부 예시에서, 이미지 신호 프로세서(1517)는 단일 명령어 다중 데이터 또는 다중 명령어 다중 데이터 아키텍처 등에 기초하여 구현될 수 있다. 일부 예시에서, 이미지 신호 프로세서(1517)는 미디어 프로세서로 특징지어질 수 있다. 본 명세서에서 논의되는 바와 같이, 이미지 신호 프로세서(1517)는 SoC 아키텍처에 기초하여 및/또는 멀티 코어 아키텍처에 기초하여 구현될 수 있다.
그래픽 서브시스템(1515)은 디스플레이를 위한 스틸 또는 비디오와 같은 이미지의 처리를 수행할 수 있다. 그래픽 서브시스템(1515)은, 예를 들어 GPU(graphic processing unit) 또는 VPU(visual processing unit)일 수 있다. 아날로그 또는 디지털 인터페이스가 그래픽 서브시스템(1515)과 디스플레이(1520)를 통신 가능하게 연결하는 데 사용될 수 있다. 예를 들어, 인터페이스는 HDMI(High-Definition Multimedia Interface), DP(DisplayPort), 무선 HDMI 및/또는 무선 HD 호환 기술 중 임의의 것일 수 있다. 그래픽 서브시스템(1515)은 프로세서(1510) 또는 칩셋(1505)에 통합될 수 있다. 일부 구현에서, 그래픽 서브시스템(1515)은 칩셋(1505)과 통신 가능하게 연결된 독립형 디바이스일 수 있다.
본 명세서에서 설명되는 그래픽 및/또는 비디오 처리 기술은 다양한 하드웨어 아키텍처로 구현될 수 있다. 예를 들어, 그래픽 및/또는 비디오 기능성은 칩셋 내에 통합될 수 있다. 대안적으로, 개별적인 그래픽 및/또는 비디오 프로세서가 사용될 수 있다. 다른 구현으로, 그래픽 및/또는 비디오 기능은 멀티 코어 프로세서를 포함하는 범용 프로세서에 의해 제공될 수 있다. 추가적인 실시예에서, 기능은 소비자 가전 디바이스에서 구현될 수 있다.
라디오(1518)는 다양한 적합한 무선 통신 기술을 이용하여, 신호를 송신하고 수신할 수 있는 하나 이상의 라디오를 포함할 수 있다. 이러한 기술은 하나 이상의 무선 네트워크를 통한 통신을 포함할 수 있다. 예시적인 무선 네트워크는 (이에 제한되지는 않음) WLANs(wireless local area networks), WPANs(wireless personal area networks), WMANs(wireless metropolitan area network), 셀룰러 네트워크 및 위성 네트워크를 포함한다. 이러한 네트워크를 통한 통신에서, 라디오(1518)는 임의의 버전으로 하나 이상의 적용 가능한 표준에 따라 동작할 수 있다.
다양한 구현에서, 디스플레이(1520)는 임의의 텔레비전 유형 모니터 또는 디스플레이를 포함할 수 있다. 디스플레이(1520)는, 예를 들어, 컴퓨터 디스플레이 스크린, 터치 스크린 디스플레이, 비디오 모니터, 텔레비전형(television-like) 디바이스 및/또는 텔레비전을 포함할 수 있다. 디스플레이(1520)는 디지털 및/또는 아날로그일 수 있다. 다양한 구현에서, 디스플레이(1520)는 홀로그램 디스플레이일 수 있다. 또한, 디스플레이(1520)는 시각적 투영을 수신할 수 있는 투명한 표면일 수 있다. 이러한 투영은 다양한 형태의 정보, 이미지 및/또는 객체를 전달할 수 있다. 예를 들어, 이러한 투영은 모바일 증강 현실(MAR) 애플리케이션에 대한 시각적 오버레이일 수 있다. 하나 이상의 소프트웨어 애플리케이션(1516)의 제어 하에, 플랫폼(1502)은 디스플레이(1520)에 사용자 인터페이스(1522)를 표시할 수 있다.
다양한 구현에서, 컨텐츠 서비스 디바이스(들)(1530)는 임의의 국내, 국제 및/또는 독립적 서비스에 의해 호스팅되고, 이에 따라, 예를 들어 인터넷을 통해 플랫폼(1502)에 액세스 가능할 수 있다. 컨텐츠 서비스 디바이스(들)(1530)는 플랫폼(1502) 및/또는 디스플레이(1520)에 연결될 수 있다. 플랫폼(1502) 및/또는 컨텐츠 서비스 디바이스(들)(1530)는 네트워크(1560)에 연결되어 네트워크(1560)로 및 네트워크(1560)로부터 미디어 정보를 통신(예컨대, 전송 및/또는 수신)할 수 있다. 컨텐츠 전달 디바이스(들)(1540) 또한 플랫폼(1502) 및/또는 디스플레이(1520)에 연결될 수 있다.
이미지 센서(1519)는 장면에 기초한 이미지 데이터를 제공할 수 있는 임의의 적합한 이미지 센서를 포함할 수 있다. 예를 들어, 이미지 센서(1519)는 반도체 CCD(charge coupled device) 기반 센서, CMOS(complementary metal-oxide-semiconductor) 기반 센서, NMOS(N-type metal-oxide-semiconductor) 기반 센서 등을 포함할 수 있다. 예를 들어, 이미지 센서(1519)는 장면의 정보를 검출하여 이미지 데이터를 생성할 수 있는 임의의 디바이스를 포함한다.
다양한 구현에서, 컨텐츠 서비스 디바이스(들)(1530)는 케이블 텔레비전 박스, 개인용 컴퓨터, 네트워크, 전화, 인터넷 가능 디바이스 또는 디지털 정보 및/또는 컨텐츠를 전달 가능한 기기 및 네트워크(1560)를 통하여 또는 직접, 컨텐츠 제공자와 플랫폼(1502) 및/또는 디스플레이(1520) 사이에서 컨텐츠를 단방향으로 또는 양방향으로 통신할 수 있는 임의의 다른 유사한 디바이스를 포함할 수 있다. 컨텐츠는 네트워크(1560)를 통해 시스템(1500) 내 구성요소 중 어느 하나로 또는 어느 하나로부터, 단방향으로 및/또는 양방향으로 통신될 수 있다는 것을 이해할 것이다. 컨텐츠의 예시는, 예를 들어 비디오, 음악, 의료 및 게임 정보 등을 포함하는 임의의 미디어 정보를 포함할 수 있다.
컨텐츠 서비스 디바이스(들)(1530)는 미디어 정보, 디지털 정보 및/또는 다른 컨텐츠를 포함하는 케이블 텔레비전 프로그래밍과 같은 컨텐츠를 수신할 수 있다. 컨텐츠 제공자의 예시는 임의의 케이블 또는 위성 텔레비전, 또는 라디오 또는 인터넷 컨텐츠 제공자를 포함할 수 있다. 제공된 예시는 어떤 식으로든 본 개시에 따른 구현을 제한하는 것을 의미하지 않는다.
다양한 구현에서, 플랫폼(1502)은 하나 이상의 탐색 피처를 갖는 탐색 컨트롤러(1550)로부터 제어 신호를 수신할 수 있다. 탐색 컨트롤러(1550)의 탐색 피처는, 예를 들어 사용자 인터페이스(1522)와 상호작용하는 데 사용될 수 있다. 다양한 실시예에서, 탐색 컨트롤러(1550)는 사용자가 공간적(예컨대, 연속적이고 다차원의) 데이터를 컴퓨터에 입력할 수 있도록 하는 컴퓨터 하드웨어 구성요소(구체적으로, HID(human interface device))일 수 있는 포인팅 디바이스일 수 있다. 그래픽 사용자 인터페이스(GUI)와 같은 많은 시스템 및 텔레비전과 모니터는, 사용자가 물리적 제스처를 이용하여 컴퓨터 또는 텔레비전에 데이터를 제어하고 제공할 수 있게 한다.
탐색 컨트롤러(1550)의 탐색 피처의 움직임은, 포인터, 커서, 포커스 링 또는 디스플레이에 표시되는 다른 시각적 표시자에 의해 디스플레이(예컨대, 디스플레이(1520))에 복제될 수 있다. 예를 들어, 소프트웨어 애플리케이션(1516)의 제어 하에, 탐색 컨트롤러(1550)에 위치한 탐색 피처는, 예를 들어 사용자 인터페이스(1522)에 표시되는 가상 탐색 피처에 매핑될 수 있다. 다양한 실시예에서, 탐색 컨트롤러(1550)는 분리된 구성요소가 아니고 플랫폼(1502) 및/또는 디스플레이(1520)에 통합될 수 있다. 그러나, 본 개시는 본 명세서에 도시 또는 설명된 요소 또는 맥락으로 제한되지 않는다.
다양한 구현에서, 드라이버(미도시)는, 예를 들어, 활성화되는 경우 최초 부팅 후 버튼의 터치로 사용자가 텔레비전과 같은 플랫폼(1502)을 즉시 켜고 끌 수 있게 하는 기술을 포함할 수 있다. 프로그램 로직은, 플랫폼이 "꺼진" 경우에도 플랫폼(1502)이 미디어 어댑터 또는 다른 컨텐츠 서비스 디바이스(들)(1530) 또는 컨텐츠 전달 디바이스(들)(1540)에 컨텐츠를 스트리밍하는 것을 허용할 수 있다. 추가적으로, 칩셋(1505)은, 예를 들어 5.1 서라운드 사운드 오디오 및/또는 HD 7.1 서라운드 사운드 오디오를 위한 하드웨어 및/또는 소프트웨어 지원을 포함할 수 있다. 드라이버는 통합된 그래픽 플랫폼을 위한 그래픽 드라이버를 포함할 수 있다. 다양한 실시예에서, 그래픽 드라이버는 PCI(peripheral component interconnect) Express 그래픽 카드를 포함할 수 있다.
다양한 구현에서, 시스템(1500)에 도시된 하나 이상의 구성요소는 통합될 수 있다. 예를 들어, 플랫폼(1502)과 컨텐츠 서비스 디바이스(들)(1530)가 통합될 수 있거나 또는 플랫폼(1502)과 컨텐츠 전달 디바이스(들)(1540)가 통합될 수 있거나 또는, 예를 들어, 플랫폼(1502), 컨텐츠 서비스 디바이스(들)(1530) 및 컨텐츠 전달 디바이스(들)(1540)가 통합될 수 있다. 다양한 실시예에서, 플랫폼(1502)과 디스플레이(1520)가 통합된 유닛일 수 있다. 예를 들어, 디스플레이(1520)와 컨텐츠 서비스 디바이스(들)(1530)가 통합될 수 있거나 또는 디스플레이(1520)와 컨텐츠 전달 디바이스(들)(1540)가 통합될 수 있다. 이러한 예시는 본 개시를 제한하려는 것이 아니다.
다양한 실시예에서, 시스템(1500)은 무선 시스템, 유선 시스템 또는 이 둘의 조합으로 구현될 수 있다. 무선 시스템으로 구현되면, 시스템(1500)은, 하나 이상의 안테나, 송신기, 수신기, 송수신기(transceiver), 증폭기, 필터, 제어 로직 등과 같이, 무선 공유 매체를 통해 통신하기에 적합한 구성요소 및 인터페이스를 포함할 수 있다. 무선 공유 매체의 예시는 RF 스펙트럼 등과 같은 무선 스펙트럼의 부분을 포함할 수 있다. 유선 시스템으로 구현되면, 시스템(1500)은, 입/출력(I/O) 어댑터, I/O 어댑터를 대응하는 유선 통신 매체와 연결하는 물리적 커넥터, 네트워크 인터페이스 카드(NIC), 디스크 컨트롤러, 비디오 컨트롤러, 오디오 컨트롤러 등과 같이, 유선 통신 매체를 통해 통신하기에 적합한 구성요소 및 인터페이스를 포함할 수 있다. 유선 통신의 예시는 와이어, 케이블, 금속 리드, PCB(printed circuit board), 백플레인(backplane), 스위치 패브릭(switch fabric), 반도체 재료, 연선(twisted-pair wire), 동축 케이블, 광섬유 등을 포함할 수 있다.
플랫폼(1502)은 하나 이상의 로직 또는 물리 채널을 설정하여 정보를 통신할 수 있다. 정보는 미디어 정보와 제어 정보를 포함할 수 있다. 미디어 정보는 사용자를 위한 컨텐츠를 나타내는 임의의 데이터를 지칭할 수 있다. 컨텐츠의 예시는, 예를 들어, 음성 대화, 화상 회의, 비디오 스트리밍, 전자 메일("이메일") 메시지, 음성 메일 메시지, 영숫자(alphanumeric) 기호, 그래픽, 이미지, 비디오, 텍스트 등으로부터의 데이터를 포함할 수 있다. 음성 대화로부터의 데이터는, 예를 들어, 음성 정보, 묵음 기간, 배경 소음, 안락 소음, 톤 등일 수 있다. 제어 정보는 자동화 시스템을 위한 명령, 명령어 또는 제어 단어를 나타내는 임의의 데이터를 지칭할 수 있다. 예를 들어, 제어 정보는 시스템을 통해 미디어 정보를 라우팅하거나 또는 사전 결정된 방식으로 미디어 정보를 처리하도록 노드에 지시하는 데 사용될 수 있다. 그러나, 실시예는 도 15에 나타나거나 설명된 요소 또는 맥락으로 제한되지 않는다.
앞서 설명된 바와 같이, 시스템(1500)은 다양한 물리적 스타일 또는 폼 팩터로 구현될 수 있다. 도 16은 본 개시의 적어도 일부 구현에 따라 구성된 예시적인 작은 폼 팩터 디바이스(1600)를 도시한다. 일부 예시에서, 시스템(1500)은 디바이스(1600)를 통해 구현될 수 있다. 다른 예시에서, 본 명세서에서 논의된 다른 시스템, 구성요소 또는 모듈, 또는 이들의 부분은 디바이스(1600)를 통해 구현될 수 있다. 다양한 실시예에서, 예를 들어, 디바이스(1600)는 무선 기능을 갖는 모바일 컴퓨팅 디바이스로 구현될 수 있다. 모바일 컴퓨팅 디바이스는 처리 시스템 및, 예를 들어, 하나 이상의 배터리와 같은 모바일 전원 또는 공급 장치를 갖는 임의의 디바이스를 지칭할 수 있다.
모바일 컴퓨팅 디바이스의 예시는 개인용 컴퓨터(PC), 랩톱 컴퓨터, 울트라 랩톱 컴퓨터, 태블릿, 터치 패드, 휴대용 컴퓨터, 핸드헬드 컴퓨터, 팜탑 컴퓨터, PDA(personal digital assistant), 셀룰러 전화, 셀룰러 전화/PDA 결합, 스마트 디바이스(예컨대, 스마트폰, 스마트 태블릿 또는 스마트 모바일 텔레비전), MID(mobile internet device), 메시징 디바이스, 데이터 통신 디바이스, 카메라(예컨대, 포인트 앤 슛 카메라, 수퍼 줌 카메라, DSLR 카메라) 등을 포함할 수 있다.
모바일 컴퓨팅 디바이스의 예시는 또한, 자동차 또는 로봇에 의해서, 손목 컴퓨터, 손가락 컴퓨터, 반지 컴퓨터, 안경 컴퓨터, 벨트 클립(belt-clip) 컴퓨터, 암밴드(arm-band) 컴퓨터, 신발 컴퓨터, 의류 컴퓨터 및 다른 웨어러블 컴퓨터와 같이, 인체가 착용함으로써 구현되도록 배열된 컴퓨터를 포함할 수 있다. 다양한 실시예에서, 예를 들어, 모바일 컴퓨팅 디바이스는 음성 통신 및/또는 데이터 통신뿐만 아니라 컴퓨터 애플리케이션을 실행할 수 있는 스마트폰으로 구현될 수 있다. 일부 실시예는 예로서 스마트폰으로 구현된 모바일 컴퓨팅 디바이스로 설명될 수 있지만, 다른 실시예는 다른 무선 모바일 컴퓨팅 디바이스를 사용하여 구현될 수 있다는 것을 이해할 수 있다. 다른 실시예는 이러한 맥락에서 제한되지 않는다.
도 16에 도시된 바와 같이, 디바이스(1600)는 전면(1601)과 후면(1602)을 갖는 하우징을 포함할 수 있다. 디바이스(1600)는 디스플레이(1604), 입/출력(I/O) 디바이스(1606), 컬러 카메라(1621), 컬러 카메라(1622), 적외선 송신기(1623) 및 통합 안테나(1608)를 포함한다. 일부 실시예에서, 컬러 카메라(1621)와 컬러 카메라(1622)는 본 명세서에서 논의된 평면 이미지를 획득한다. 일부 실시예에서, 디바이스(1600)는 컬러 카메라(1621 및 1622)를 포함하지 않고, 다른 디바이스로부터 입력 이미지 데이터(예컨대, 본 명세서에서 논의된 임의의 입력 이미지 데이터)를 획득한다. 디바이스(1600)는 또한 탐색 피처(1612)를 포함할 수 있다. I/O 디바이스(1606)는 모바일 컴퓨팅 디바이스로 정보를 입력하기 위한 임의의 적합한 I/O 디바이스를 포함할 수 있다. I/O 디바이스(1606)에 대한 예시는 영숫자 키보드, 숫자 키패드, 터치 패드, 입력 키, 버튼, 스위치, 마이크로폰, 스피커, 음성 인식 디바이스 및 소프트웨어 등을 포함할 수 있다. 정보는 또한 마이크로폰(미도시)을 통해 디바이스(1600)에 입력될 수 있거나 또는 음성 인식 디바이스에 의해 디지털화될 수 있다. 도시된 바와 같이, 디바이스(1600)는 디바이스(1600)의 후면(1602)(또는 다른 곳)에 통합된 컬러 카메라(1621, 1622)와 플래시(1610)를 포함할 수 있다. 다른 예시에서, 컬러 카메라(1621, 1622)와 플래시(1610)는 디바이스(1600)의 전면(1601)에 통합될 수 있거나, 또는 전면 및 후면 카메라 세트 모두가 제공될 수 있다. 컬러 카메라(1621, 1622) 및 플래시(1610)는, 예를 들어 디스플레이(1604)로 출력되거나 안테나(1608)를 통해 디바이스(1600)로부터 원격으로 통신되는 이미지 또는 스트리밍 비디오로 처리될 수 있는, IR 텍스처 보정으로 컬러 이미지를 생성하는 카메라 모듈의 구성요소일 수 있다.
다양한 실시예는 하드웨어 요소, 소프트웨어 요소 또는 둘 모두의 조합을 이용하여 구현될 수 있다. 하드웨어 요소의 예시는 프로세서, 마이크로프로세서, 회로, 회로 소자(예컨대, 트랜지스터, 저항, 커패시터, 인덕터 등), 집적 회로, ASIC(application specific integrated circuits), PLD(programmable logic devices), DSP(digital signal processor), FPGA(field programmable gate array), 로직 게이트, 레지스터, 반도체 디바이스, 칩, 마이크로칩, 칩셋 등을 포함할 수 있다. 소프트웨어의 예시는 소프트웨어 구성요소, 프로그램, 애플리케이션, 컴퓨터 프로그램, 애플리케이션 프로그램, 시스템 프로그램, 머신 프로그램, 운영체제 소프트웨어, 미들웨어, 펌웨어, 소프트웨어 모듈, 루틴, 서브루틴, 함수, 방법, 절차, 소프트웨어 인터페이스, API(application program interface), 명령어 세트, 컴퓨팅 코드, 컴퓨터 코드, 코드 세그먼트, 컴퓨터 코드 세그먼트, 단어, 값, 기호 또는 이들의 조합을 포함할 수 있다. 실시예가 하드웨어 요소 및/또는 소프트웨어 요소를 이용하여 구현되는지 여부는, 원하는 계산 레이트, 전력 수준, 열 내성, 처리 주기 예산, 입력 데이터 레이트, 출력 데이터 레이트, 메모리 리소스, 데이터 버스 속도 및 다른 설계 또는 성능 제약과 같은 임의의 수의 요인에 따라 달라질 수 있다.
적어도 하나의 실시예의 하나 이상의 양태는 프로세서 내 다양한 로직을 나타내는 머신 판독 가능 매체에 저장된 대표적인 명령어에 의해 구현될 수 있으며, 이는 머신에 의해 판독되는 경우 머신으로 하여금 로직을 조작하여 본 명세서에서 논의된 기술을 수행하도록 한다. IP 코어로 알려진 이러한 표현은 유형의(tangible) 머신 판독 가능 매체에 저장되고, 다양한 고객 또는 제조 시설에 공급되어 실제로 로직 또는 프로세서를 만드는 제조 머신에 로드될 수 있다.
본 명세서에서 설명된 특정 특징이 다양한 구현을 참조하여 설명되었지만, 이 설명은 제한적인 의미로 해석되는 것은 아니다. 따라서, 본 개시가 속하는 기술분야의 통상의 기술자에게 자명한 본 명세서에서 설명된 구현의 수정뿐만 아니라 다른 구현은, 본 개시의 사상 및 범위 내에 속한 것으로 간주된다.
하나 이상의 제 1 실시예에서, 3D 모델을 검증하기 위한 방법은, 장면에 대해 트레이닝된 복수의 카메라 중 제 1 카메라를 통해 획득된 제 1 캡처된 이미지 내에서 객체를 검출하는(객체는 제 1 캡처된 이미지의 영역 내에서 검출되고, 제 1 캡처된 이미지는 장면의 동시에 캡처된 복수의 이미지들 중 하나를 포함함) 단계, 동시에 캡처된 이미지들에 기초하여, 시간 인스턴스에 대해 동시에 캡처된 이미지들에 대응하는 장면의 3D 모델을 생성하는 단계, 3D 모델을 장면에 대한 제 1 카메라의 뷰로 투영하여, 제 1 시간 인스턴스에서의 제 1 카메라의 뷰로부터 장면을 나타내는 제 1 재구성된 이미지를 생성하는 단계, 이미지 영역 내 제 1 캡처된 이미지의 제 1 이미지 컨텐츠와 이미지 영역 내 제 1 재구성된 이미지의 제 2 이미지 컨텐츠의 비교에 기초하여 차이 메트릭을 결정하는 단계, 및 차이 메트릭이 임계값에 비해 불리한 것에 대응하여, 3D 모델 오류 표시자를 생성하는 단계를 포함한다.
하나 이상의 제 2 실시예에서, 제 1 실시예에 추가적으로, 차이 메트릭은, 제 1 및 제 2 이미지 컨텐츠의 픽셀 값의 픽셀 간 비교, 제 1 및 제 2 이미지 컨텐츠 내 검출되는 형상의 형상 비교 또는 제 1 및 제 2 이미지 컨텐츠 내 검출된 인체 자세의 인체 자세 비교 중 하나를 포함한다.
하나 이상의 제 3 실시예에서, 제 1 또는 제 2 실시예에 추가적으로, 이미지 영역은, 제 1 캡처된 이미지 내의 좌표를 갖는 경계 박스를 포함하고, 차이 메트릭을 결정하는 단계는, 동일한 경계 박스 좌표를 제 1 캡처된 이미지와 제 1 재구성된 이미지에 적용하여 대응하는 제 1 및 제 2 이미지 컨텐츠를 결정하는 단계를 포함한다.
하나 이상의 제 4 실시예에서, 제 1 내지 제 3 실시예에 추가적으로, 방법은 장면의 나머지 동시에 캡처된 이미지에서 검출된 객체에 각각 대응하는 복수의 제 2 이미지 영역을 검출하는 단계, 3D 모델을 나머지 복수의 카메라의 각 뷰에 투영하여, 나머지 카메라의 뷰로부터의 장면을 나타내는 제 2 재구성된 이미지를 생성하는 단계, 및 캡처된 이미지와 재구성된 이미지 내 제 2 이미지 영역의 각 대응하는 이미지 컨텐츠의 비교에 기초하여, 복수의 제 2 차이 메트릭을 결정하는 단계를 더 포함하되, 3D 모델 오류 표시자를 생성하는 단계는, 복수의 제 2 차이 메트릭에도 대응한다.
하나 이상의 제 5 실시예에서, 제 1 내지 제 4 실시예에 추가적으로, 3D 모델 오류 표시자는, 차이 메트릭과 제 2 차이 메트릭의 평균이 제 2 임계값을 초과하는 것에 대응하여 생성된다.
하나 이상의 제 6 실시예에서, 제 1 내지 제 5 실시예에 추가적으로, 방법은 제 1 캡처된 이미지의 제 2 이미지 영역 내에서 제 2 객체를 검출하는 단계, 제 3 이미지 영역 내 제 1 캡처된 이미지의 제 3 이미지 컨텐츠와 제 2 이미지 영역 내 제 1 구성된 이미지의 제 4 이미지 컨텐츠의 비교에 기초하여 제 2 차이 메트릭을 결정하는 단계, 및 제 2 차이 메트릭이 제 2 임계값보다 큰 것에 대응하여 제 2 3D 모델 오류 표시자를 생성하는 단계를 더 포함하되, 차이 메트릭이 임계값에 비해 불리한 것은, 차이 메트릭이 임계값보다 큰 것을 포함하고, 이미지 영역이 제 2 이미지 영역보다 제 1 캡처된 이미지의 중앙에 더 가까우면 임계값은 제 2 임계값보다 작다.
하나 이상의 제 7 실시예에서, 제 1 내지 제 6 실시예에 추가적으로, 임계값과 제 2 임계값은, 이미지 영역과 제 2 이미지 영역의 이미지 중앙으로부터의 거리에 단조 증가 함수를 적용함으로써 결정된다.
하나 이상의 제 8 실시예에서, 제 1 내지 제 7 실시예에 추가적으로, 방법은 제 1 캡처된 이미지의 대응하는 제 2 이미지 영역 내에서 복수의 제 2 객체를 검출하는 단계, 제 2 이미지 영역의 개별 이미지 영역 내 제 1 캡처된 이미지의 제 3 이미지 컨텐츠와 개별 이미지 영역 내 제 1 재구성된 이미지의 제 4 이미지 컨텐츠의 비교에 기초하여 제 2 차이 메트릭을 결정하는 단계, 및 제 2 차이 메트릭이 제 2 임계값보다 큰 것에 대응하여 제 2 3D 모델 오류 표시자를 생성하는 단계를 더 포함하되, 차이 메트릭이 임계값에 비해 불리한 것은, 차이 메트릭이 임계값보다 큰 것을 포함하고, 이미지 영역이 제 2 이미지 영역의 개별 이미지 영역보다 더 낮은 이미지 영역 밀도를 가지면 임계값은 제 2 임계값보다 크다.
하나 이상의 제 9 실시예에서, 제 1 내지 제 8 실시예에 추가적으로, 임계값과 제 2 임계값은, 이미지 영역과 제 2 이미지 영역의 개별 이미지 영역의 이미지 영역 밀도에 단조 감소 함수를 적용함으로써 결정된다.
하나 이상의 제 10 실시예에서, 제 1 내지 제 9 실시예에 추가적으로, 이미지 영역 내에서 객체를 검출하는 단계는, 제 1 캡처된 이미지상에서 객체 검출을 수행하여, 객체와 이미지 영역을 검출하고, 장면의 동시에 캡처된 복수의 이미지 중 하나 이상 내에서의 객체의 검출에 기초하여 기하학적 제약을 이용해서, 제 1 캡처된 이미지 내 이미지 영역의 위치를 조정하는 단계를 포함한다.
하나 이상의 제 11 실시예에서, 디바이스 또는 시스템은, 메모리와 전술한 실시예 중 어느 하나에 따른 방법을 수행하는 프로세서를 포함한다.
하나 이상의 제 12 실시예에서, 적어도 하나의 머신 판독 가능 매체는, 컴퓨팅 디바이스에서 실행되는 것에 대응하여, 컴퓨팅 디바이스로 하여금 전술한 실시예 중 어느 하나에 따른 방법을 수행하도록 하는 복수의 명령어를 포함한다.
하나 이상의 제 13 실시예에서, 장치는 전술한 실시예 중 어느 하나에 따른 방법을 수행하기 위한 수단을 포함한다.
실시예는 설명된 실시예로 제한되지 않고, 첨부된 청구범위의 범위를 벗어나지 않고 수정 및 변경으로 실시될 수 있음을 인식할 것이다. 예를 들어, 위의 실시예는 특징의 특정 조합을 포함할 수 있다. 그러나, 위의 실시예는 이와 관련하여 제한되지 않으며, 다양한 구현에서, 위의 실시예는 그러한 특징의 서브세트만을 수행하는 것, 그러한 특징의 다른 순서로 수행하는 것, 그러한 특징의 다른 조합으로 수행하는 것 및/또는 명시적으로 나열된 그러한 특징에 추가적인 특징을 수행하는 것을 포함할 수 있다. 실시예의 범위는, 따라서, 첨부된 청구범위를 참조하여, 이러한 청구범위가 부여되는 균등물의 범위 전체와 함께, 결정되어야 한다.

Claims (25)

  1. 3D 모델을 검증하기 위한 장치로서,
    장면에 대해 트레이닝된 복수의 카메라 중 제 1 카메라를 통해 획득된, 제 1 캡처된 이미지를 저장하는 메모리와,
    상기 메모리에 연결된 프로세서를 포함하되,
    상기 프로세서는,
    상기 제 1 캡처된 이미지 내에서 객체를 검출하고 - 상기 객체는 상기 제 1 캡처된 이미지의 이미지 영역 내에서 검출되고, 상기 제 1 캡처된 이미지는 상기 장면의 동시에 캡처된 복수의 이미지들 중 하나를 포함함 -,
    상기 동시에 캡처된 이미지들에 기초하여, 시간 인스턴스에 대해 상기 동시에 캡처된 이미지들에 대응하는 시간 인스턴스에 대한 상기 장면의 3D 모델을 생성하며,
    상기 3D 모델을 상기 장면에 대한 상기 제 1 카메라의 뷰로 투영하여, 상기 제 1 시간 인스턴스에서의 상기 제 1 카메라의 상기 뷰로부터의 상기 장면을 나타내는 제 1 재구성된 이미지를 생성하고,
    상기 이미지 영역 내 상기 제 1 캡처된 이미지의 제 1 이미지 컨텐츠와 상기 이미지 영역 내 상기 제 1 재구성된 이미지의 제 2 이미지 컨텐츠의 비교에 기초하여 차이 메트릭(metric)을 결정하며,
    상기 차이 메트릭이 임계값에 비해 불리한(unfavorable) 것에 대응하여, 3D 모델 오류 표시자(indicator)를 생성하는,
    장치.
  2. 제 1 항에 있어서,
    상기 차이 메트릭은, 상기 제 1 및 제 2 이미지 컨텐츠의 픽셀 값의 픽셀 간 비교, 상기 제 1 및 제 2 이미지 컨텐츠 내 검출된 형상의 형상 비교 또는 상기 제 1 및 제 2 이미지 컨텐츠 내 검출된 인체 자세(human pose)의 인체 자세 비교 중 하나를 포함하는,
    장치.
  3. 제 1 항에 있어서,
    상기 이미지 영역은, 상기 제 1 캡처된 이미지 내의 좌표를 갖는 경계 박스(bounding box)를 포함하고,
    상기 프로세서가 상기 차이 메트릭을 결정하는 것은, 상기 프로세서가 상기 동일한 경계 박스 좌표를 상기 제 1 캡처된 이미지와 상기 제 1 재구성된 이미지에 적용하여 상기 대응하는 제 1 및 제 2 이미지 컨텐츠를 결정하는 것을 포함하는,
    장치.
  4. 제 1 항에 있어서,
    상기 프로세서는 추가적으로,
    상기 장면의 상기 나머지 동시에 캡처된 이미지에서 검출된 상기 객체에 각각 대응하는 복수의 제 2 이미지 영역을 검출하고,
    상기 3D 모델을 상기 나머지 복수의 카메라의 각 뷰에 투영하여, 상기 나머지 카메라의 상기 뷰로부터의 상기 장면을 나타내는 제 2 재구성된 이미지를 생성하며,
    상기 캡처된 이미지와 상기 재구성된 이미지 내 상기 제 2 이미지 영역의 각 대응하는 이미지 컨텐츠의 비교에 기초하여, 복수의 제 2 차이 메트릭 - 상기 3D 모델 오류 표시자는 상기 복수의 제 2 차이 메트릭에도 대응함 - 을 결정하는,
    장치.
  5. 제 5 항에 있어서,
    상기 3D 모델 오류 표시자는, 상기 차이 메트릭과 상기 제 2 차이 메트릭의 평균이 제 2 임계값을 초과하는 것에 대응하여 생성되는,
    장치.
  6. 제 1 항에 있어서,
    상기 프로세서는 추가적으로,
    상기 제 1 캡처된 이미지의 제 2 이미지 영역 내에서 제 2 객체를 검출하고,
    상기 제 3 이미지 영역 내 상기 제 1 캡처된 이미지의 제 3 이미지 컨텐츠와 상기 제 2 이미지 영역 내 상기 제 1 재구성된 이미지의 제 4 이미지 컨텐츠의 비교에 기초하여 제 2 차이 메트릭을 결정하며,
    상기 제 2 차이 메트릭이 제 2 임계값보다 큰 것에 대응하여 제 2 3D 모델 오류 표시자를 생성하는 - 상기 차이 메트릭이 상기 임계값에 비해 불리한 것은, 상기 차이 메트릭이 상기 임계값보다 큰 것을 포함하고, 상기 이미지 영역이 상기 제 2 이미지 영역보다 상기 제 1 캡처된 이미지의 중앙에 더 가까우면 상기 임계값은 상기 제 2 임계값보다 작음 -,
    장치.
  7. 제 6 항에 있어서,
    상기 임계값과 상기 제 2 임계값은, 상기 이미지 영역과 상기 제 2 이미지 영역의 이미지 중앙으로부터의 거리에 단조 증가 함수를 적용함으로써 결정되는,
    장치.
  8. 제 1 항에 있어서,
    상기 프로세서는 추가적으로,
    상기 제 1 캡처된 이미지의 대응하는 제 2 이미지 영역 내에서 복수의 제 2 객체를 검출하고,
    상기 제 2 이미지 영역의 개별 이미지 영역 내 상기 제 1 캡처된 이미지의 제 3 이미지 컨텐츠와 상기 개별 이미지 영역 내 상기 제 1 재구성된 이미지의 제 4 이미지 컨텐츠의 비교에 기초하여 제 2 차이 메트릭을 결정하며,
    상기 제 2 차이 메트릭이 제 2 임계값보다 큰 것에 대응하여 제 2 3D 모델 오류 표시자를 생성하는 - 상기 차이 메트릭이 상기 임계값에 비해 불리한 것은, 상기 차이 메트릭이 상기 임계값보다 큰 것을 포함하고, 상기 이미지 영역이 상기 제 2 이미지 영역의 상기 개별 이미지 영역보다 더 낮은 이미지 영역 밀도를 가지면 상기 임계값은 상기 제 2 임계값보다 큼 -,
    장치.
  9. 제 8 항에 있어서,
    상기 임계값과 상기 제 2 임계값은, 상기 이미지 영역과 상기 제 2 이미지 영역의 상기 개별 이미지 영역의 이미지 영역 밀도에 단조 감소 함수를 적용함으로써 결정되는,
    장치.
  10. 제 1 항에 있어서,
    상기 프로세서가 상기 이미지 영역 내에서 상기 객체를 검출하는 것은, 상기 프로세서가,
    상기 제 1 캡처된 이미지상에서 객체 검출을 수행하여, 상기 객체와 이미지 영역을 검출하고,
    상기 장면의 상기 동시에 캡처된 복수의 이미지 중 하나 이상 내에서의 상기 객체의 검출에 기초하여 기하학적 제약을 이용해서, 상기 제 1 캡처된 이미지 내 상기 이미지 영역의 위치를 조정하는 것을 포함하는,
    장치.
  11. 3D 모델을 검증하기 위한 방법으로서,
    장면에 대해 트레이닝된 복수의 카메라 중 제 1 카메라를 통해 획득된 제 1 캡처된 이미지 내에서 객체를 검출하는 - 상기 객체는 상기 제 1 캡처된 이미지의 영역 내에서 검출되고, 상기 제 1 캡처된 이미지는 상기 장면의 동시에 캡처된 복수의 이미지들 중 하나를 포함함 - 단계,
    상기 동시에 캡처된 이미지들에 기초하여, 시간 인스턴스에 대해 상기 동시에 캡처된 이미지들에 대응하는 상기 장면의 3D 모델을 생성하는 단계,
    상기 3D 모델을 상기 장면에 대한 상기 제 1 카메라의 뷰로 투영하여, 상기 제 1 시간 인스턴스에서의 상기 제 1 카메라의 상기 뷰로부터 상기 장면을 나타내는 제 1 재구성된 이미지를 생성하는 단계,
    상기 이미지 영역 내 상기 제 1 캡처된 이미지의 제 1 이미지 컨텐츠와 상기 이미지 영역 내 상기 제 1 재구성된 이미지의 제 2 이미지 컨텐츠의 비교에 기초하여 차이 메트릭을 결정하는 단계, 및
    상기 차이 메트릭이 임계값에 비해 불리한 것에 대응하여, 3D 모델 오류 표시자를 생성하는 단계를 포함하는,
    방법.
  12. 제 11 항에 있어서,
    상기 차이 메트릭은, 상기 제 1 및 제 2 이미지 컨텐츠의 픽셀 값의 픽셀 간 비교, 상기 제 1 및 제 2 이미지 컨텐츠 내 검출되는 형상의 형상 비교 또는 상기 제 1 및 제 2 이미지 컨텐츠 내 검출된 인체 자세의 인체 자세 비교 중 하나를 포함하는,
    방법.
  13. 제 11 항에 있어서,
    상기 장면의 상기 나머지 동시에 캡처된 이미지에서 검출된 상기 객체에 각각 대응하는 복수의 제 2 이미지 영역을 검출하는 단계,
    상기 3D 모델을 상기 나머지 복수의 카메라의 각 뷰에 투영하여, 상기 나머지 카메라의 상기 뷰로부터의 상기 장면을 나타내는 제 2 재구성된 이미지를 생성하는 단계, 및
    상기 캡처된 이미지와 상기 재구성된 이미지 내 상기 제 2 이미지 영역의 각 대응하는 이미지 컨텐츠의 비교에 기초하여, 복수의 제 2 차이 메트릭을 결정하는 단계를 더 포함하되,
    상기 3D 모델 오류 표시자를 생성하는 단계는, 상기 복수의 제 2 차이 메트릭에도 대응하는,
    방법.
  14. 제 11 항에 있어서,
    상기 제 1 캡처된 이미지의 제 2 이미지 영역 내에서 제 2 객체를 검출하는 단계,
    상기 제 3 이미지 영역 내 상기 제 1 캡처된 이미지의 제 3 이미지 컨텐츠와 상기 제 2 이미지 영역 내 상기 제 1 구성된 이미지의 제 4 이미지 컨텐츠의 비교에 기초하여 제 2 차이 메트릭을 결정하는 단계, 및
    상기 제 2 차이 메트릭이 제 2 임계값보다 큰 것에 대응하여 제 2 3D 모델 오류 표시자를 생성하는 단계를 더 포함하되,
    상기 차이 메트릭이 상기 임계값에 비해 불리한 것은, 상기 차이 메트릭이 상기 임계값보다 큰 것을 포함하고,
    상기 이미지 영역이 상기 제 2 이미지 영역보다 상기 제 1 캡처된 이미지의 중앙에 더 가까우면 상기 임계값은 상기 제 2 임계값보다 작은,
    방법.
  15. 제 11 항에 있어서,
    상기 제 1 캡처된 이미지의 대응하는 제 2 이미지 영역 내에서 복수의 제 2 객체를 검출하는 단계,
    상기 제 2 이미지 영역의 개별 이미지 영역 내 상기 제 1 캡처된 이미지의 제 3 이미지 컨텐츠와 상기 개별 이미지 영역 내 상기 제 1 재구성된 이미지의 제 4 이미지 컨텐츠의 비교에 기초하여 제 2 차이 메트릭을 결정하는 단계, 및
    상기 제 2 차이 메트릭이 제 2 임계값보다 큰 것에 대응하여 제 2 3D 모델 오류 표시자를 생성하는 단계를 더 포함하되,
    상기 차이 메트릭이 상기 임계값에 비해 불리한 것은, 상기 차이 메트릭이 상기 임계값보다 큰 것을 포함하고,
    상기 이미지 영역이 상기 제 2 이미지 영역의 상기 개별 이미지 영역보다 더 낮은 이미지 영역 밀도를 가지면 상기 임계값은 상기 제 2 임계값보다 큰,
    방법.
  16. 복수의 명령어를 포함하는 적어도 하나의 머신 판독 가능 매체로서,
    상기 명령어는, 컴퓨팅 디바이스에서 실행되는 것에 대응하여,
    장면에 대해 트레이닝된 복수의 카메라 중 제 1 카메라를 통해 획득된 제 1 캡처된 이미지 내에서 객체를 검출하고 - 상기 객체는 상기 제 1 캡처된 이미지의 이미지 영역 내에서 검출되고, 상기 제 1 캡처된 이미지는 상기 장면의 동시에 캡처된 복수의 이미지들 중 하나를 포함함 -,
    상기 동시에 캡처된 이미지들에 기초하여, 시간 인스턴스에 대해 상기 동시에 캡처된 이미지들에 대응하는 상기 장면의 3D 모델을 생성하며,
    상기 3D 모델을 상기 장면에 대한 상기 제 1 카메라의 뷰로 투영하여, 상기 제 1 시간 인스턴스에서의 상기 제 1 카메라의 상기 뷰로부터의 상기 장면을 나타내는 제 1 재구성된 이미지를 생성하고,
    상기 이미지 영역 내 상기 제 1 캡처된 이미지의 제 1 이미지 컨텐츠와 상기 이미지 영역 내 상기 제 1 재구성된 이미지의 제 2 이미지 컨텐츠의 비교에 기초하여 차이 메트릭을 결정하며,
    상기 차이 메트릭이 임계값에 비해 불리한 것에 대응하여, 3D 모델 오류 표시자를 생성함으로써,
    상기 컴퓨팅 디바이스로 하여금 3D 모델을 검증하도록 하는,
    머신 판독 가능 매체.
  17. 제 16 항에 있어서,
    상기 차이 메트릭은, 상기 제 1 및 제 2 이미지 컨텐츠의 픽셀 값의 픽셀 간 비교, 상기 제 1 및 제 2 이미지 컨텐츠 내 검출된 형상의 형상 비교 또는 상기 제 1 및 제 2 이미지 컨텐츠 내 검출된 인체 자세의 인체 자세 비교 중 하나를 포함하는,
    머신 판독 가능 매체.
  18. 제 16 항에 있어서,
    상기 컴퓨팅 디바이스에서 실행되는 것에 대응하여,
    상기 장면의 상기 나머지 동시에 캡처된 이미지에서 검출된 상기 객체에 각각 대응하는 복수의 제 2 이미지 영역을 검출하고,
    상기 3D 모델을 상기 나머지 복수의 카메라의 각 뷰에 투영하여, 상기 나머지 카메라의 상기 뷰로부터의 상기 장면을 나타내는 제 2 재구성된 이미지를 생성하며,
    상기 캡처된 이미지와 상기 재구성된 이미지 내 상기 제 2 이미지 영역의 각 대응하는 이미지 컨텐츠의 비교에 기초하여, 복수의 제 2 차이 메트릭 - 상기 3D 모델 오류 표시자를 생성하는 것은 상기 복수의 제 2 차이 메트릭에도 대응함 - 을 결정함으로써,
    상기 컴퓨팅 디바이스로 하여금 상기 3D 모델을 검증하도록 하는 명령어를 더 포함하는,
    머신 판독 가능 매체.
  19. 제 16 항에 있어서,
    상기 컴퓨팅 디바이스에서 실행되는 것에 대응하여,
    상기 제 1 캡처된 이미지의 제 2 이미지 영역 내에서 제 2 객체를 검출하고,
    상기 제 3 이미지 영역 내 상기 제 1 캡처된 이미지의 제 3 이미지 컨텐츠와 상기 제 2 이미지 영역 내 상기 제 1 재구성된 이미지의 제 4 이미지 컨텐츠의 비교에 기초하여 제 2 차이 메트릭을 결정하며,
    상기 제 2 차이 메트릭이 제 2 임계값보다 큰 것에 대응하여 제 2 3D 모델 오류 표시자를 생성함으로써 - 상기 차이 메트릭이 상기 임계값에 비해 불리한 것은, 상기 차이 메트릭이 상기 임계값보다 큰 것을 포함하고, 상기 이미지 영역이 상기 제 2 이미지 영역보다 상기 제 1 캡처된 이미지의 중앙에 더 가까우면 상기 임계값은 상기 제 2 임계값보다 작음 -,
    상기 컴퓨팅 디바이스로 하여금 상기 3D 모델을 검증하도록 하는 명령어를 더 포함하는,
    머신 판독 가능 매체.
  20. 제 16 항에 있어서,
    상기 컴퓨팅 디바이스에서 실행되는 것에 대응하여,
    상기 제 1 캡처된 이미지의 대응하는 제 2 이미지 영역 내에서 복수의 제 2 객체를 검출하고,
    상기 제 2 이미지 영역의 개별 이미지 영역 내 상기 제 1 캡처된 이미지의 제 3 이미지 컨텐츠와 상기 개별 이미지 영역 내 상기 제 1 재구성된 이미지의 제 4 이미지 컨텐츠의 비교에 기초하여 제 2 차이 메트릭을 결정하며,
    상기 제 2 차이 메트릭이 제 2 임계값보다 큰 것에 대응하여 제 2 3D 모델 오류 표시자를 생성함으로써 - 상기 차이 메트릭이 상기 임계값에 비해 불리한 것은, 상기 차이 메트릭이 상기 임계값보다 큰 것을 포함하고, 상기 이미지 영역이 상기 제 2 이미지 영역의 상기 개별 이미지 영역보다 더 낮은 이미지 영역 밀도를 가지면 상기 임계값은 상기 제 2 임계값보다 큼 -,
    상기 컴퓨팅 디바이스로 하여금 상기 3D 모델을 검증하도록 하는 명령어를 더 포함하는,
    방법.
  21. 시스템으로서,
    장면에 대해 트레이닝된 복수의 카메라 중 제 1 카메라를 통해 획득된 제 1 캡처된 이미지 내에서 객체를 검출하기 위한 - 상기 객체는 상기 제 1 캡처된 이미지의 영역 내에서 검출되고, 상기 제 1 캡처된 이미지는 상기 장면의 동시에 캡처된 복수의 이미지들 중 하나를 포함함 - 수단,
    상기 동시에 캡처된 이미지들에 기초하여, 시간 인스턴스에 대해 상기 동시에 캡처된 이미지들에 대응하는 상기 장면의 3D 모델을 생성하기 위한 수단,
    상기 3D 모델을 상기 장면에 대한 상기 제 1 카메라의 뷰로 투영하여, 상기 제 1 시간 인스턴스에서의 상기 제 1 카메라의 상기 뷰로부터 상기 장면을 나타내는 제 1 재구성된 이미지를 생성하기 위한 수단,
    상기 이미지 영역 내 상기 제 1 캡처된 이미지의 제 1 이미지 컨텐츠와 상기 이미지 영역 내 상기 제 1 재구성된 이미지의 제 2 이미지 컨텐츠의 비교에 기초하여 차이 메트릭을 결정하기 위한 수단, 및
    상기 차이 메트릭이 임계값에 비해 불리한 것에 대응하여, 3D 모델 오류 표시자를 생성하기 위한 수단을 포함하는,
    시스템.
  22. 제 21 항에 있어서,
    상기 차이 메트릭은, 상기 제 1 및 제 2 이미지 컨텐츠의 픽셀 값의 픽셀 간 비교, 상기 제 1 및 제 2 이미지 컨텐츠 내 검출되는 형상의 형상 비교 또는 상기 제 1 및 제 2 이미지 컨텐츠 내 검출된 인체 자세의 인체 자세 비교 중 하나를 포함하는,
    시스템.
  23. 제 21 항에 있어서,
    상기 장면의 상기 나머지 동시에 캡처된 이미지에서 검출된 상기 객체에 각각 대응하는 복수의 제 2 이미지 영역을 검출하기 위한 수단,
    상기 3D 모델을 상기 나머지 복수의 카메라의 각 뷰에 투영하여, 상기 나머지 카메라의 상기 뷰로부터의 상기 장면을 나타내는 제 2 재구성된 이미지를 생성하기 위한 수단, 및
    상기 캡처된 이미지와 상기 재구성된 이미지 내 상기 제 2 이미지 영역의 각 대응하는 이미지 컨텐츠의 비교에 기초하여, 복수의 제 2 차이 메트릭을 결정하기 위한 수단을 더 포함하되,
    상기 3D 모델 오류 표시자를 생성하는 것은, 상기 복수의 제 2 차이 메트릭에도 대응하는,
    시스템.
  24. 제 21 항에 있어서,
    상기 제 1 캡처된 이미지의 제 2 이미지 영역 내에서 제 2 객체를 검출하기 위한 수단,
    상기 제 3 이미지 영역 내 상기 제 1 캡처된 이미지의 제 3 이미지 컨텐츠와 상기 제 2 이미지 영역 내 상기 제 1 구성된 이미지의 제 4 이미지 컨텐츠의 비교에 기초하여 제 2 차이 메트릭을 결정하기 위한 수단, 및
    상기 제 2 차이 메트릭이 제 2 임계값보다 큰 것에 대응하여 제 2 3D 모델 오류 표시자를 생성하기 위한 수단을 더 포함하되,
    상기 차이 메트릭이 상기 임계값에 비해 불리한 것은, 상기 차이 메트릭이 상기 임계값보다 큰 것을 포함하고,
    상기 이미지 영역이 상기 제 2 이미지 영역보다 상기 제 1 캡처된 이미지의 중앙에 더 가까우면 상기 임계값은 상기 제 2 임계값보다 작은,
    시스템.
  25. 제 21 항에 있어서,
    상기 제 1 캡처된 이미지의 대응하는 제 2 이미지 영역 내에서 복수의 제 2 객체를 검출하기 위한 수단,
    상기 제 2 이미지 영역의 개별 이미지 영역 내 상기 제 1 캡처된 이미지의 제 3 이미지 컨텐츠와 상기 개별 이미지 영역 내 상기 제 1 재구성된 이미지의 제 4 이미지 컨텐츠의 비교에 기초하여 제 2 차이 메트릭을 결정하기 위한 수단, 및
    상기 제 2 차이 메트릭이 제 2 임계값보다 큰 것에 대응하여 제 2 3D 모델 오류 표시자를 생성하기 위한 수단을 더 포함하되,
    상기 차이 메트릭이 상기 임계값에 비해 불리한 것은, 상기 차이 메트릭이 상기 임계값보다 큰 것을 포함하고,
    상기 이미지 영역이 상기 제 2 이미지 영역의 상기 개별 이미지 영역보다 더 낮은 이미지 영역 밀도를 가지면 상기 임계값은 상기 제 2 임계값보다 큰,
    시스템.
KR1020217032904A 2019-05-14 2019-05-14 몰입형 미디어를 위한 자동 포인트 클라우드 검증 KR20220008256A (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/086794 WO2020227918A1 (en) 2019-05-14 2019-05-14 Automatic point cloud validation for immersive media

Publications (1)

Publication Number Publication Date
KR20220008256A true KR20220008256A (ko) 2022-01-20

Family

ID=73288921

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217032904A KR20220008256A (ko) 2019-05-14 2019-05-14 몰입형 미디어를 위한 자동 포인트 클라우드 검증

Country Status (5)

Country Link
US (1) US11869141B2 (ko)
EP (1) EP3970121A4 (ko)
KR (1) KR20220008256A (ko)
CN (1) CN113711279A (ko)
WO (1) WO2020227918A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111652113B (zh) * 2020-05-29 2023-07-25 阿波罗智联(北京)科技有限公司 障碍物检测方法、装置、设备以及存储介质
US20210112238A1 (en) * 2020-12-22 2021-04-15 Intel Corporation Method and system of image processing with multi-object multi-view association
US11657578B2 (en) 2021-03-11 2023-05-23 Quintar, Inc. Registration for augmented reality system for viewing an event
US20220295040A1 (en) * 2021-03-11 2022-09-15 Quintar, Inc. Augmented reality system with remote presentation including 3d graphics extending beyond frame
US11645819B2 (en) 2021-03-11 2023-05-09 Quintar, Inc. Augmented reality system for viewing an event with mode based on crowd sourced images
US11527047B2 (en) 2021-03-11 2022-12-13 Quintar, Inc. Augmented reality system for viewing an event with distributed computing

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7386704B2 (en) * 2002-10-31 2008-06-10 Lockheed Martin Corporation Pipeline accelerator including pipeline circuits in communication via a bus, and related system and method
WO2009132084A1 (en) * 2008-04-25 2009-10-29 Gracenote, Inc. Recognition of video content
US8487927B2 (en) * 2008-05-19 2013-07-16 Microsoft Corporation Validating user generated three-dimensional models
EP2383696A1 (en) * 2010-04-30 2011-11-02 LiberoVision AG Method for estimating a pose of an articulated object model
WO2013141868A1 (en) * 2012-03-22 2013-09-26 Hewlett-Packard Development Company, L.P. Cloud-based data processing
EP3039617B1 (en) * 2013-08-31 2020-05-20 ML Netherlands C.V. User feedback for real-time checking and improving quality of scanned image
CN103971404B (zh) 2014-04-14 2017-04-12 浙江工业大学 一种高性价比的3d实景复制装置
US9747668B2 (en) 2016-01-21 2017-08-29 Disney Enterprises, Inc. Reconstruction of articulated objects from a moving camera
US10372968B2 (en) * 2016-01-22 2019-08-06 Qualcomm Incorporated Object-focused active three-dimensional reconstruction
US11164596B2 (en) * 2016-02-25 2021-11-02 Samsung Electronics Co., Ltd. Sensor assisted evaluation of health and rehabilitation
KR101780048B1 (ko) * 2016-07-04 2017-09-19 포항공과대학교 산학협력단 단안 카메라를 이용한 동적 상황에서의 움직이는 물체 검출 방법
WO2018043225A1 (ja) 2016-09-01 2018-03-08 パナソニックIpマネジメント株式会社 多視点撮像システム、三次元空間再構成システム、及び三次元空間認識システム
US11060853B2 (en) * 2016-09-14 2021-07-13 Scantech (Hangzhou) Co., Ltd. Three-dimensional sensor system and three-dimensional data acquisition method
US10290119B2 (en) * 2016-09-15 2019-05-14 Sportsmedia Technology Corporation Multi view camera registration
KR102647351B1 (ko) * 2017-01-26 2024-03-13 삼성전자주식회사 3차원의 포인트 클라우드를 이용한 모델링 방법 및 모델링 장치
NL2019516B1 (en) * 2017-09-08 2019-03-19 Fugro N V System and method for determination of a spatial property of a submerged object in a 3D-space
US11294060B2 (en) * 2018-04-18 2022-04-05 Faraday & Future Inc. System and method for lidar-based vehicular localization relating to autonomous navigation
CN109087395B (zh) 2018-07-18 2023-03-28 西安多维机器视觉检测技术有限公司 一种三维重建的方法及系统
CN109269405B (zh) * 2018-09-05 2019-10-22 天目爱视(北京)科技有限公司 一种快速3d测量和比对方法

Also Published As

Publication number Publication date
CN113711279A (zh) 2021-11-26
US20220172429A1 (en) 2022-06-02
EP3970121A1 (en) 2022-03-23
EP3970121A4 (en) 2023-01-18
WO2020227918A1 (en) 2020-11-19
US11869141B2 (en) 2024-01-09

Similar Documents

Publication Publication Date Title
US11734798B2 (en) Method and apparatus for person super resolution from low resolution image
US11334975B2 (en) Pose synthesis in unseen human poses
US11869141B2 (en) Automatic point cloud validation for immersive media
US11295473B2 (en) Continuous local 3D reconstruction refinement in video
US11308675B2 (en) 3D facial capture and modification using image and temporal tracking neural networks
US20210112238A1 (en) Method and system of image processing with multi-object multi-view association
US9852513B2 (en) Tracking regions of interest across video frames with corresponding depth maps
CN110322542B (zh) 重建真实世界3d场景的视图
CN112561920A (zh) 用于在视频中进行密集语义分割的深度学习
CN112104854A (zh) 相机视图之间的鲁棒虚拟视图生成的方法和系统
CN114078135A (zh) 利用图像分割将复杂的3d对象嵌入到增强现实场景中
KR20220030879A (ko) 시공간 모델을 이용한 비디오 배경 추정
CN113450392A (zh) 基于图像模板的参数化透视的鲁棒表面配准
WO2022021217A1 (en) Multi-camera person association via pair-wise matching in continuous frames for immersive video
WO2022165620A1 (en) Game focus estimation in team sports for immersive video
WO2022061631A1 (en) Optical tracking for small objects in immersive video
US20240119625A1 (en) Method and system of automatically estimating a ball carrier in team sports
WO2023087164A1 (en) Method and system of multi-view image processing with accurate skeleton reconstruction