KR20130115332A - 증강 현실 표현을 위한 2차원 이미지 캡쳐 - Google Patents

증강 현실 표현을 위한 2차원 이미지 캡쳐 Download PDF

Info

Publication number
KR20130115332A
KR20130115332A KR1020137019405A KR20137019405A KR20130115332A KR 20130115332 A KR20130115332 A KR 20130115332A KR 1020137019405 A KR1020137019405 A KR 1020137019405A KR 20137019405 A KR20137019405 A KR 20137019405A KR 20130115332 A KR20130115332 A KR 20130115332A
Authority
KR
South Korea
Prior art keywords
augmented reality
guidance
image capture
reality representation
capture device
Prior art date
Application number
KR1020137019405A
Other languages
English (en)
Other versions
KR101569600B1 (ko
Inventor
에제키엘 크루그릭
Original Assignee
엠파이어 테크놀로지 디벨롭먼트 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엠파이어 테크놀로지 디벨롭먼트 엘엘씨 filed Critical 엠파이어 테크놀로지 디벨롭먼트 엘엘씨
Publication of KR20130115332A publication Critical patent/KR20130115332A/ko
Application granted granted Critical
Publication of KR101569600B1 publication Critical patent/KR101569600B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • G06T7/248Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • 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/10016Video; Image sequence

Abstract

증강 현실 표현을 위한 2차원 이미지들을 캡쳐하기 위한 기술들 및 구현들이 일반적으로 개시된다.

Description

증강 현실 표현을 위한 2차원 이미지 캡쳐{TWO-DIMENSIONAL IMAGE CAPTURE FOR AN AUGMENTED REALITY REPRESENTATION}
본원에서 달리 언급하지 않는 한, 이 섹션에서 설명되는 접근법들은 본 출원에서의 청구항들에 대한 종래기술이 아니며 이 섹션에의 포함에 의해 종래 기술인 것으로 인정되지 않는다.
일부 이미지 프로세싱 서비스들은 여러 이미지들을 가상 투어 (virtual tour) 로 병합시킬 수도 있다. 이런 가상 투어들은 가능한 한 많은 3차원 (3D) 체험을 시뮬레이션하도록 시도할 수도 있다. 한편, 다른 시스템들은 일련의 2차원 (2D) 이미지들을 3D 로 변환할 수도 있다.
만들어진 3D 모델 또는 합성의 품질은 사진들의 포지셔닝 (positioning) 및 해상도에 의존할 수도 있다. 사진-대-3D 변환을 이용할 때, 예를 들어, 이런 3D 모델에의 사진의 통합을 가능하도록 하기에 충분히 공유된 컨텍스트 또는 에지들이 부족한 이미지들 및/또는 미싱 (missing) 표면들의 일부 조합으로 끝날 (wind up) 수 있다.
증강 현실 표현들 (예컨대, 3D 이미지들) 이 점점 더 많은 목적들을 위해 이용될 수도 있기 때문에, 평균적인 가정 사용자들은 오브젝트들 및 장소들의 사진을 찍고 그들의 우수한 품질 3D 모델들을 생성할 수 있기를 원할 수도 있다.
본원에서 설명하는 일부 예시적인 방법들, 장치, 및 시스템들은, 증강 현실 표현 (augmented reality representation) 을 위한 2차원 이미지들을 캡쳐하는 것과 관련될 수도 있다.
증강 현실 표현을 위한 2차원 이미지들을 캡쳐하는 것에 관련되는 일부 예시적인 방법들, 장치, 및 시스템들은 전자 이미지 캡쳐 디바이스에서 구현될 수도 있다. 이런 방법들은 전자 이미지 캡쳐 디바이스 (electronic image capturing device) 에 의해, 오브젝트의 하나 이상의 2차원 이미지들의 분석에 적어도 부분적으로 기초하여 오브젝트의 증강 현실 표현을 결정하는 것을 포함할 수도 있다. 이런 증강 현실 표현은 복수의 표면 가설 (surface hypothesis) 들을 포함할 수도 있다. 개개의 표면 가설들과 연관되는 하나 이상의 신뢰도 값 (reliability value) 들이 결정될 수도 있다. 하나 이상의 신뢰도 값들이 복수의 표면 가설들로부터 하나 이상의 관심 표면 영역들을 식별하기 위해 하나 이상의 임계 신뢰도 기준들과 비교될 수도 있다. 오브젝트의 하나 이상의 추가적인 2차원 이미지들을 캡쳐하는 것에 대한 가이던스 (guidance) 가 전자 이미지 캡쳐 디바이스의 디스플레이를 통해서 디스플레이될 수도 있다. 이런 가이던스는 식별된 관심 표면 영역들에 적어도 부분적으로 기초할 수도 있다.
증강 현실 표현을 위한 2차원 이미지들을 캡쳐하는 것에 관련된 일부 예시적인 방법들, 장치, 및 시스템들은 전자 이미지 캡쳐 디바이스에서 구현될 수도 있다. 이런 전자 이미지 캡쳐 디바이스는 광 센서 및 제어 유닛을 포함할 수도 있다. 이런 광 센서는 오브젝트의 2차원 이미지들을 캡쳐하고 실시간 비디오 데이터를 캡쳐하도록 구성될 수도 있다. 이런 제어 유닛은 오브젝트의 하나 이상의 2차원 이미지들의 분석에 적어도 부분적으로 기초하여 오브젝트의 증강 현실 표현을 결정하도록 구성될 수도 있다. 이런 증강 현실 표현은 복수의 표면 가설들을 포함할 수도 있다. 개개의 표면 가설들과 연관되는 하나 이상의 신뢰도 값들이 제어 유닛에 의해 결정될 수도 있다. 하나 이상의 신뢰도 값들이 복수의 표면 가설들로부터 하나 이상의 관심 표면 영역들을 식별하기 위해 하나 이상의 임계 신뢰도 기준들과 비교될 수도 있다. 오브젝트의 하나 이상의 추가적인 2차원 이미지들을 캡쳐하는 것에 대한 가이던스가 전자 이미지 캡쳐 디바이스의 디스플레이를 통해서 결정될 수도 있다. 이런 가이던스는 식별된 관심 표면 영역들에 적어도 부분적으로 기초할 수도 있다.
전술한 요약은 단지 예시적이며, 어떤 방법으로든 한정하려고 의도되지 않는다. 위에서 설명한 예시적인 양태들, 실시형태들, 및 특징들에 부가하여, 추가적인 양태들, 실시형태들, 및 특징들은 도면들 및 다음의 상세한 설명을 참조하면 명백해 질 것이다.
요지는 특히 명세서의 결론 부분에 적시되며 구별하여 청구된다. 본 개시의 전술한 및 다른 특징들은 첨부 도면들과 함께 고려할 때, 다음 설명 및 첨부된 청구항들로부터 보다 완전히 분명해질 것이다. 이 도면들이 본 개시에 따른 오직 몇몇 실시형태들만을 도시하고 따라서 그 범위를 제한하는 것으로 고려되지 않아야 한다는 것을 이해하면서, 본 개시는 첨부된 도면들을 이용하여 추가로 구체적이고 상세하게 설명될 것이다.
도면들에서:
도 1 은 본 개시의 적어도 일부 실시형태들에 따라 배열된 예시적인 전자 이미지 캡쳐 디바이스를 도시한다;
도 2 는 본 개시의 적어도 일부 실시형태들에 따라 배열된 오브젝트의 하나 이상의 2차원 이미지들을 캡쳐하는 예시적인 전자 이미지 캡쳐 디바이스를 도시한다;
도 3 은 본 개시의 적어도 일부 실시형태들에 따라 배열된 증강 현실 표현을 위한 2차원 이미지들을 캡쳐하는 예시적인 프로세스를 도시한다;
도 4 는 본 개시의 적어도 일부 실시형태들에 따라 배열된 증강 현실 표현을 위한 2차원 이미지들을 캡쳐하는 다른 예시적인 프로세스를 도시한다;
도 5 는 본 개시의 적어도 일부 실시형태들에 따라 배열된 다수개의 표면 가설들을 포함한 예시적인 증강 현실 표현을 도시한다;
도 6 은 본 개시의 적어도 일부 실시형태들에 따라 배열된 증강 현실 표현과 연관되는 예시적인 시야 콘 (viewing cone) 을 도시한다;
도 7 은 본 개시의 적어도 일부 실시형태들에 따라 배열된 다수개의 표면 가설들로부터 관심 표면 영역들과 연관되는 예시적인 시야 콘들을 도시한다;
도 8 은 본 개시의 적어도 일부 실시형태들에 따라 배열된 시야 콘들에 기초하여 관심 표면 영역들에 관한 데이터를 획득하기 위한 예시적인 선택을 도시한다;
도 9 는 본 개시의 적어도 일부 실시형태들에 따라 배열된 예시적인 스크린 샷을 도시한다;
도 10 은 본 개시의 적어도 일부 실시형태들에 따라 배열된 예시적인 컴퓨터 프로그램 제품의 예시이다;
도 11 은 본 개시의 적어도 일부 실시형태들에 따라 배열된 컴퓨팅 디바이스의 예시적인 실시형태의 블록도이다.
다음 설명은 청구된 요지의 완전한 이해를 제공하기 위해서 구체적인 상세들과 함께 여러 예들을 제시한다. 그러나, 청구된 요지는 본원에서 개시된 구체적인 상세들의 일부 이상이 없이도 실시될 수도 있다는 것이 당업자들에 의해 이해될 것이다. 또, 일부 상황들에서, 공지의 방법들, 프로시저들, 시스템들, 구성요소들 및/또는 회로들이 청구된 요지를 불필요하게 불명료하게 하는 것을 피하기 위해서 자세하게 설명되지 않았다.
다음의 상세한 설명에서, 본원의 일부를 형성하는 첨부 도면들을 참조한다. 도면에서, 유사한 부호들은 통상적으로 문맥이 달리 지시하지 않는 한, 유사한 구성요소들을 식별한다. 상세한 설명, 도면들, 및 청구범위에 설명되는 예시적인 실시형태들은 제한적으로 의도된 것이 아니다. 다른 실시형태들이 채용될 수도 있으며, 본원에서 제시되는 요지의 사상 또는 범위로부터 일탈함이 없이 다른 변화들이 이루어질 수도 있다. 본원에서 일반적으로 설명되고 도면들에 예시된, 본 개시의 양태들은 광범위하게 다양한 상이한 구성들로 배열되고, 대체되고, 결합되고 설계될 수 있으며, 이들 모두가 명시적으로 본 개시의 부분으로 고려되며 그 부분이 된다는 것을 쉽게 이해할 것이다.
본 개시는 그 중에서도, 증강 현실 표현을 위한 2차원 이미지들을 캡쳐하는 것에 관련된 방법들, 장치, 및 시스템들에 관련된다.
증강 현실 표현들 (예컨대, 3D 모델들) 을 구축하기 위해 사진 촬영에 유리한 뷰 포인트들을 컴퓨팅하고 그들 뷰 포인트들을 사용자에게 그들의 전자 이미지 캡쳐 디바이스 상에 나타내기 위한 방법들, 장치, 및 시스템들이 아래에서 설명된다. 예를 들어, 스마트 폰-유형 전자 이미지 캡쳐 디바이스는 사용자에 의해 촬영되도록 제안되는 목표 뷰를 나타내는 바람직한 밴티지 포인트 (vantage point) 을 디스플레이할 수도 있다. 이런 바람직한 밴티지 포인트는, 낮은 품질 데이터를 갖는 증강 현실 표현의 부분들 또는 직접 보이지는 않지만 존재하는 것으로 이론화된 증강 현실 표현의 부분들을 위해 추가적인 이미지 데이터를 제공하기 위해 계산되었을 수도 있다.
도 1 은 본 개시의 적어도 일부 실시형태들에 따라 배열된 예시적인 전자 이미지 캡쳐 디바이스 (100) 를 도시한다. 전자 이미지 캡쳐 디바이스 (100) 는 도 3 및/또는 도 4 와 관련하여 아래에서 설명하는 여러 기능들의 일부 또는 전부를 수행하기 위해 사용될 수도 있다. 전자 이미지 캡쳐 디바이스 (100) 는 디지털 이미지 캡쳐링을 맡을 수 있는 임의의 디바이스 또는 디바이스들의 컬렉션을 포함할 수도 있다. 본원에서 사용되는, 용어 "전자 이미지 캡쳐 디바이스" 는 예를 들어, 디지털 카메라, 셀 폰, 개인 휴대 정보단말 (PDA), 모바일 컴퓨팅 패드, 개인 미디어 플레이어 디바이스, 무선 웹-워치 (web-watch) 디바이스, 애플리케이션 특정의 디바이스 등, 및/또는 이들의 조합들과 같은, 디지털 이미지를 취할 수 있는 스몰-폼 팩터 (small-form factor) 휴대 전자 디바이스를 지칭할 수도 있다.
도시된 예에서, 전자 이미지 캡쳐 디바이스 (100) 는 광 센서 (102), 제어 유닛 (104), 및/또는 디스플레이 (106) 를 포함할 수도 있다. 이런 광 센서 (102) 는 오브젝트 (미도시) 의 2차원 이미지들을 캡쳐하거나 및/또는 실시간 비디오 데이터를 캡쳐하도록 구성될 수도 있다.
제어 유닛 (104) 은 광 센서 (102) 에 의해 캡쳐된 이런 오브젝트의 증강 현실 표현을 결정하도록 구성될 수도 있다. 예를 들어, 제어 유닛 (104) 은 오브젝트의 하나 이상의 2차원 이미지들의 분석에 적어도 부분적으로 기초하여 증강 현실 표현을 결정하도록 구성될 수도 있다. 본원에서 사용되는 용어 "증강 현실 표현" 은 오브젝트의 3차원의 이미지 등과 같은 물리적인 현실-세계 오브젝트의 실시간 직접 뷰 또는 간접 뷰를 지칭할 수도 있다. 오브젝트의 하나 이상의 추가적인 2차원 이미지들을 캡쳐하는 것에 대한 가이던스가 사용자에게, 예컨대, 디스플레이 (106) 를 통해 전달되는 시각적 가이던스에 의해 제공될 수도 있다. 제어 유닛 (104) 은 이런 오브젝트의 추가적인 2차원 이미지들을 이용하여 이런 오브젝트의 증강 현실 표현을 업데이트할 수도 있다.
또, 전자 이미지 캡쳐 디바이스 (100) 는 또한 명확성을 위해서 도 1 에 나타내지 않은, 메모리, 프로세서, 네트워크 인터페이스 로직 등과 같은 추가적인 아이템들을 포함할 수도 있다. 예를 들어, 전자 이미지 캡쳐 디바이스 (100) 는 또한 아래에서 도 10 과 관련하여 설명한 것들과 같은 추가적인 아이템들을 포함할 수도 있다. 일부 예들에서, 디스플레이 (106) 는 전자 이미지 캡쳐 디바이스 (100) 내에 하우징될 수도 있거나 또는 디스플레이 (106) 는 (예컨대, 헤드-업 디스플레이 또는 2차 디스플레이 디바이스와 같은) 붙어있지 않은 디스플레이 (unattached display)일 수도 있다.
도 2 는 본 개시의 적어도 일부 실시형태들에 따라 배열된 오브젝트 (200) 의 하나 이상의 2차원 이미지들을 캡쳐하는 전자 이미지 캡쳐 디바이스 (100) 를 도시한다. 도시된 예에서, 전자 이미지 캡쳐 디바이스 (100) 는 제 1 위치 (202) 로부터 취한 오브젝트 (200) 의 2차원 이미지를 캡쳐할 수도 있다. 전자 이미지 캡쳐 디바이스 (100) 는 제 1 위치 (202) 로부터 취한 오브젝트 (200) 의 2차원 이미지의 분석에 적어도 부분적으로 기초하여 증강 현실 표현을 결정하도록 구성될 수도 있다.
오브젝트의 하나 이상의 추가적인 2차원 이미지들을 캡쳐하는 것에 대한 가이던스가 전자 이미지 캡쳐 디바이스 (100) 를 통해서 사용자 (204) 에게 제공될 수도 있다. 예를 들어, 전자 이미지 캡쳐 디바이스 (100) 는 제 2 위치 (206) 로부터 취한 오브젝트 (200) 의 다른 2차원 이미지를 캡쳐하도록 사용자 (204) 를 안내할 수도 있다. 전자 이미지 캡쳐 디바이스 (100) 는 제 2 위치 (206) 로부터 취한 오브젝트 (200) 의 2차원 이미지의 분석에 적어도 부분적으로 기초하여 증강 현실 표현을 업데이트하도록 구성될 수도 있다.
도 3 은 본 개시의 적어도 일부 실시형태들에 따라 배열된 증강 현실 표현을 위한 2차원 이미지들을 캡쳐하는 예시적인 프로세스 (300) 를 도시한다. 도시된 예에서, 프로세스 (300), 및 본원에서 설명하는 다른 프로세스들은, 하드웨어, 소프트웨어, 및/또는 펌웨어에 의해 수행될 수도 있는, 프로세싱 단계들, 기능적 동작들, 이벤트들 및/또는 작용들 (acts) 등으로서 설명될 수도 있는 여러 기능 블록들 또는 액션들을 제시한다. 당업자들은 본 개시에 비추어, 도 3 에 나타낸 기능 블록들에 대한 많은 대안들이 여러 구현들에서 실시될 수도 있음을 인식할 것이다. 예를 들어, 도 3 에 나타낸 바와 같이, 프로세스 (300) 는 블록들 또는 액션들 중 하나의 특정 순서를 포함할 수도 있지만, 이들 블록들 또는 액션들이 제시되는 순서가 청구된 요지를 임의의 특정의 순서로 반드시 한정하지는 않는다. 이와 유사하게, 도 3 에 나타내지 않은 개재되는 액션들 및/또는 도 3 에 나타내지 않은 추가적인 액션들이 채용될 수도 있거나 및/또는 도 3 에 나타낸 액션들의 일부가 청구된 요지의 범위로부터 일탈함이 없이, 제거될 수도 있다. 프로세스 (300) 는 예시적인 동작들 (302, 304, 306, 및/또는 308) 로 나타낸 바와 같은 기능적 동작들 중 하나 이상을 포함할 수도 있다.
도시된 바와 같이, 전자 이미지 캡쳐 디바이스에서 구현될 수도 있는, 증강 현실 표현을 위한 2차원 이미지들을 캡쳐하는 프로세스 (300) 가 구현될 수도 있다 (예컨대, 도 1 참조). 일부 예들에서, 오브젝트의 하나 이상의 2차원 이미지들이 오브젝트의 증강 현실 표현 (예컨대, 3D 모델링) 을 위한 표면 가설들을 형성하기 위해 분석될 수도 있다. 이런 표면 가설들은 관심 표면 영역들 (예컨대, 임계 신뢰도 기준들 아래의 이미지 품질을 가진 표면들 또는 미싱 표면들) 을 결정하기 위해 사용될 수도 있다. 이런 관심 표면 영역들은 예를 들어, 목표 품질에서 풀 모델을 제공하기 위해 특성들의 요구되는 인-필 (in-fill) 을 제공할 뷰잉 로케이션들 (viewing locations) 과 같은, 하나 이상의 추가적인 2차원 이미지들을 캡쳐하는 것에 대한 가이던스를 결정하기 위해 사용될 수도 있다. 이런 가이던스 (예컨대, 뷰잉 로케이션들 및/또는 방향들) 가, 추가적인 2차원 이미지들이 캡쳐되고 증강 현실 표현이 업데이트될 수 있도록, 사용자에게 제공될 수도 있다.
프로세싱은 동작 (302), "다수의 표면 가설들을 포함하는 증강 현실 표현을 결정한다" 에서 시작할 수도 있으며, 여기서, 다수개의 표면 가설들을 포함하는 증강 현실 표현이 결정될 수도 있다. 예를 들어, 오브젝트의 이런 증강 현실 표현은 오브젝트의 하나 이상의 2차원 이미지들의 분석에 적어도 부분적으로 기초하여 결정될 수도 있다. 이런 증강 현실 표현은 다수의 표면 가설들을 포함할 수도 있다. 일부 예들에서, 어떻게 2차원 이미지들이 증강 현실 표현 (예컨대, 3D 장면) 에 피팅 (fitting) 되는 지를 결정하기 위해 "자세 매칭" (등) 이 사용될 수도 있다.
일부 예들에서, 표면 가설들은 RANSAC (Random Sample Consensus Surface Extraction) 알고리즘 등, 또는 이들의 조합들을 채용하여 컴퓨팅될 수도 있다. 예를 들어, RANSAC 는 포인트 클라우드 (point cloud) 를 취하고 표면 가설들을 그 포인트 클라우드에 피팅할 수도 있다. 전체 접근법은 여러 가정들을 만족하면서 표면으로부터 포인트 클라우드까지 최소 자승 차이를 최소화하는 표면을 생성하는 것으로 설명될 수 있다. 예를 들어, Martin A. Fischler 및 Robert C. Bolles의, "Random sample consensus: A paradigm for model fitting with applications to image analysis and automated cartography", Commun. ACM, 24(6): 381-395, 1981 를 참조한다. 이 가정들은 (아키텍처에 대해 일반적인) 평면성 및 선형 피쳐들의 기대치 (expectation) 와 같은 것들을 포함할 수 있으며, 인식된 대칭이 그 데이터에 의해 배제되지 않을 때 미검출된 영역들로 계속될 수도 있다는 가정들을 포함할 수도 있다. RANSAC 는 가능한 이미지 인식 히트들 (hits) 로부터 대칭 또는 제안된 지오메트리의 가정들과 같은 다양한 입력들을 잘 받아들일 수도 있다. RANSAC (또는, 다른 적합한 일반적인 "에러 추정" 기법들) 은 다수의 2차원 이미지들 또는 비디오 스트림으로부터의 3D 추출에 기초하여 이미지에서의 라인들 또는 에지 조건들과 함께 사용될 수도 있다. 예를 들어, 에지들은 전자 이미지 캡쳐 디바이스에서 비디오로부터 대략 추출될 수 있고, 다음으로, RANSAC 는 추적된 포인트들을 이용하여, 에지들 및 평면들의 형상들, 텍스쳐들, 및/또는 로케이션들을 마무리할 수도 있다.
일부 예들에서, 증강 현실 표현은 낮은 이미지 품질을 가진 그들의 표면 또는 표면들의 이미지들을 아직 갖지 않는 표면 가설들의 그룹을 가질 수도 있다. 이런 표면 가설들은 미관찰될 수도 있지만, 지오메트리의 일부 유형은, 예를 들어, 대칭 또는 표면 연속과 같은 증강 현실 표현의 다른 엘리먼트들에 기초하는 가정들 및/또는 이런 표면들이 있을 수 없는 곳 (예컨대, 이런 표면들이 있을 수 없거나 또는 보여졌던 곳) 의 지식에 적어도 부분적으로 기초하여 증강 현실 표현에 대해, 전개될 수도 있다.
프로세싱은 동작 (302) 으로부터 동작 (304), "개개의 표면 가설들과 연관되는 하나 이상의 신뢰도 값들을 결정한다" 로 계속할 수도 있으며, 여기서, 개개의 표면 가설들과 연관되는 하나 이상의 신뢰도 값들이 결정될 수도 있다. 예를 들어, 이런 신뢰도 값들은 표면 가설들의 품질 (예컨대, 단위 면적당 픽셀들 등) 을 정량화할 수도 있다. 이러한 예에서, 이런 신뢰도 값들은 개개의 표면 가설과 연관되는 단위 면적 (예컨대, 제곱 인치 등으로) 당 가용 픽셀들의 개수에 적어도 부분적으로 기초하여 결정될 수도 있다. 이런 신뢰도 값들은 어느 표면 가설들이 (예컨대, 높은 입사 각도로 이미지징되었기 때문에) 품질 표준들을 만족시키지 못할 지를 결정하기 위해 이용될 수도 있다.
프로세싱은 동작 (304) 로부터 동작 (306), "하나 이상의 관심 표면 영역들을 식별한다" 로 계속될 수도 있으며, 여기서, 하나 이상의 관심 표면 영역들이 식별될 수도 있다. 예를 들어, 하나 이상의 신뢰도 값들은 표면 가설들로부터 하나 이상의 관심 표면 영역들을 식별하기 위해 하나 이상의 임계 신뢰도 기준들과 비교될 수도 있다. 예를 들어, 이런 임계 신뢰도 기준들은 다음 기준들, 즉 면적당 픽셀 임계치, 불완전 이미지 데이터 임계치, 부재된 이미지 데이터 임계치, 오버랩 시에 매칭하지 않는 이미지들, 이미지 블러 (blur) 레벨, 감마 보정 (예컨대, 비디오 또는 정지 이미지 시스템들에서 휘도 또는 3자극 값들을 매칭하는 것) 등 및/또는 이들의 조합들 중 하나 이상을 포함할 수도 있다. 예를 들어, 개개의 표면 가설과 연관되는 면적당 픽셀-유형 신뢰도 값이, 면적당 픽셀-유형 임계 신뢰도 기준들과 비교되어 그 개개의 표면 가설이 관심 표면 영역으로서 식별되어야 하는지를 결정할 수도 있다.
표면 가설들의 품질을 평가하기 위해, 직교 변환이 수직선으로부터 볼 때 그 표면이 보이는 것 (예를 들어, 계산 시에 바로 디스플레이될 필요가 없는) 이미지를 취하기 위해 수행될 수도 있으며, 그후 이 이미지에 이미지 품질 평가가 적용될 수도 있다. 품질 평가는 각각의 표면을 충분한지 아닌 지로서 분류하는 메트릭에 대해 테스트될 수도 있다.
일부 예들에서, 증강 현실 표현의 표면 가설들은 기존 이미지 데이터에 기초하여 추출된 더 높은 품질 표면 가설들, 및 어떤 기존 이미지 데이터가 존재하지 않을 수도 있는 낮은 품질 다각형 "홀들" 을 포함할 수도 있다. 이런 "홀들" (예컨대, 어떤 기존 이미지 데이터가 존재하지 않는 곳) 은 임의의 메트릭이 없지만 자동적으로 제로가 될 것이며, 관심 표면 영역들로서 식별될 것이다.
프로세싱은 동작 (306) 으로부터 동작 (308), "하나 이상의 추가적인 2차원 이미지들을 캡쳐하는 것에 대한 가이던스를 결정한다" 로 계속될 수도 있으며, 여기서, 하나 이상의 추가적인 2차원 이미지들을 캡쳐하는 것에 대한 가이던스가 결정될 수도 있다. 예를 들어, 오브젝트의 하나 이상의 추가적인 2차원 이미지들을 캡쳐하는 것에 대한 가이던스가 전자 이미지 캡쳐 디바이스의 디스플레이를 통해서 디스플레이될 수도 있다. 이런 가이던스는 예를 들어, 식별된 관심 표면 영역들에 적어도 부분적으로 기초할 수도 있다. 프로세스 (300) 는 오브젝트의 이런 추가적인 2차원 이미지들을 이용하여 증강 현실 표현을 업데이트할 수도 있다.
도 9 에 대해 아래에서 더 자세히 설명하는 바와 같이, 일부 예들에서, 이런 가이던스는 오브젝트의 하나 이상의 추가적인 2차원 이미지들을 캡쳐하기 위한 하나 이상의 밴티지 포인트들을 나타낼 수도 있다. 이에 추가적으로 또는 대안적으로, 이런 가이던스는 개개의 표면 가설들과 연관된 신뢰도 값들을 나타낼 수도 있다.
프로세스 (300) 에 관련된 일부 추가적인 및/또는 대안적인 상세들이 도 4 와 관련하여 아래에서 더 자세히 설명한 구현들 중 하나 이상의 예들에서 예시될 수도 있다.
도 4 는 본 개시의 적어도 일부 실시형태들에 따라 배열된 증강 현실 표현을 위한 2차원 이미지들을 캡쳐하는 다른 예시적인 프로세스 (400) 를 도시한다. 도시된 예에서, 프로세스 (400) 는 동작들 (402, 404, 406, 408, 410, 412, 414, 및/또는 416) 로 도시된 바와 같은 동작들 중 하나 이상을 포함할 수도 있다.
프로세싱은 동작 (402), "다수의 표면 가설들을 포함하는 증강 현실 표현을 결정한다" 에서 시작할 수도 있으며, 여기서, 다수개의 표면 가설들을 포함하는 증강 현실 표현이 결정될 수도 있다. 예를 들어, 이런 오브젝트의 증강 현실 표현은 오브젝트의 하나 이상의 2차원 이미지들의 분석에 적어도 부분적으로 기초하여 결정될 수도 있다. 이런 증강 현실 표현은 다수의 표면 가설들을 포함할 수도 있다.
이에 추가적으로 또는 대안적으로, 동작 (402) 이전에, 오브젝트의 하나 이상의 2차원 이미지들이 오브젝트의 증강 현실 표현을 결정하기 위해 선택될 수도 있다. 예를 들어, 사용자는 이미 취해진 이미지를 나타낼 수도 있거나 또는 현재의 뷰포트 (viewport) 가 사용자가 모델링하기를 원하는 어떤 것을 프레이밍 (framing) 하고 있다는 것을 확립하도록 카메라 모드를 활성화할 수도 있다.
프로세싱은 동작 (402) 으로부터 동작 (404), "개개의 표면 가설들과 연관된 하나 이상의 신뢰도 값들을 결정한다" 로 계속될 수도 있으며, 여기서, 개개의 표면 가설들과 연관되는 하나 이상의 신뢰도 값들이 결정될 수도 있다.
프로세싱은 동작 (404) 으로부터 동작 (406), "하나 이상의 관심 표면 영역들을 식별한다" 로 계속될 수도 있으며, 여기서, 하나 이상의 관심 표면 영역들이 식별될 수도 있다. 예를 들어, 하나 이상의 신뢰도 값들은 다수개의 표면 가설들로부터 하나 이상의 관심 표면 영역들을 식별하기 위해 하나 이상의 임계 신뢰도 기준들과 비교될 수도 있다.
프로세싱은 동작 (406) 으로부터 동작 (408), "하나 이상의 시야 콘들 (viewing cones) 을 결정한다" 로 계속될 수도 있으며, 여기서, 하나 이상의 시야 콘들이 결정될 수도 있다. 예를 들어, 개개의 관심 표면 영역들과 연관되는 하나 이상의 시야 콘들이 결정될 수도 있다. 본원에서 사용될 때, 용어 "시야 콘" 은 정의된 시야각에 의해 경계가 지워지고 표면 법선 벡터에 의해 중심에 맞춰진 정의된 시야 영역을 지칭할 수도 있다.
예를 들어, 표면 법선 벡터 및 시야각 (예컨대, 시야 콘) 은 개개의 표면 가설들로부터 전개될 수 있다. 이런 시야 콘은 관심 표면 영역들을 관찰하기 위해, 점유하도록 사용자를 안내할 수 있는 로케이션들 및 시야각들의 세트를 제공할 수도 있다. 사용자가 이 로케이션 및 시야각 (view angle) 에 도달하지만 관심 표면 영역을 관찰하지 못하는 경우, 추가적인 2차원 이미지가 캡쳐되어, 증강 현실 표현 및 관심 표면 영역들을 업데이트할 수도 있다. 이의 대안으로, 사용자가 이 로케이션 및 시야각에 도달하지만 관심 표면 영역을 관찰하지 못하는 경우, 사용자는 다른 관심 표면 영역과 연관되는 다른 로케이션 및 시야각을 선택할 수도 있다.
일부 예들에서, 낮은 품질의 작은 영역들이 과도한 (예컨대, 수십 또는 수천 개) 관심 표면 영역들 및 연관되는 시야 콘들을 생성할 수도 있다. 이런 예들에서, 이런 과도한 관심 표면 영역들의 시야 콘들은, 최소의 인터섹션 (minimal intersection) 으로 병합되어 미싱 정보의 일부 또는 모두를 제공하는데 사용될 수 있는 더 적은 추가적인 2차원 이미지들의 하나 또는 시리즈를 선택할 수도 있다. 일부 예들에서, 소수의 이산 2차원 이미지들을 확립하기 위해 그룹들로의 시야 콘들의 병합은, 프로그래밍 Knapsack 문제의 일 버전으로서 구현될 수도 있고, 그에 대한 솔루션은 Greedy 알고리즘, 선형 프로그래밍 (예컨대, 선형 프로그래밍이 일부 경우 지오메트릭 제한 사항들로 인해 적합할 수도 있다) 등 및/또는 이들의 조합들을 포함할 수도 있다.
이에 추가적으로 또는 대안적으로, 또한 추가적인 2차원 이미지들을 캡쳐하는 것을 정당화하기 전에, 최소 증강 현실 표현 임팩트 (impact) 를 요구하기 위한, 필터가 적용될 수도 있다. 이런 필터는 아주 작은 전이 표면들 또는 표면 글레어 (glare) 가 다수의 관심 표면 영역들을 발생하는 것을 방지할 수도 있다.
프로세싱은 동작 (408) 으로부터 동작 (410), "뷰 범위 및 방위를 결정한다" 로 계속될 수도 있으며, 여기서, 뷰 범위 (range) 및 방위 (orientation) 가 결정될 수도 있다. 예를 들어, 시야 콘들 중 하나 이상과 연관되는 뷰 범위 및 방위는 품질 레벨 입력에 적어도 부분적으로 기초하여 결정될 수도 있다.
일부 예들에서, 이런 품질 레벨 입력은 사전 설정된 디폴트 설정들 및/또는 사용자 입력에 기초하여 조정될 수도 있는 설정들을 가질 수도 있다. 예를 들어, 사용자가 원하는 전체 이미지 품질 (예컨대, 높은-품질, 중간-품질, 또는 낮은-품질 등) 을 나타낼 수도 있다. 이에 추가적으로 또는 대안적으로, 일부 예들에서, (예컨대, 3D 모델을 입력으로서 획득할 수도 있는 게임 또는 출판물 또는 프로그램과 같은) 다른 소스로부터 품질 레벨 입력을 획득하여 이런 소스가 소정 품질의 증강 현실 표현들을 요구할 수 있게 하는 것이 가능할 수도 있다. 이에 추가적으로 또는 대안적으로, 이런 품질 레벨 입력은 연관되는 개개의 표면 가설들의 로케이션 및/또는 표현되는 오브젝트의 유형에 따라서 변할 수도 있다. 예를 들어, 오브젝트는 (예컨대, 전자 이미지 캡쳐 디바이스에 의해 독립적으로 인식될 수도 있거나 또는 사용자 입력에 의해 표시될 수도 있는) 비히클 (vehicle) 일 수도 있다. 이런 비히클-유형 오브젝트의 밑면 (underside) 에 관한 데이터는 전혀 필요로 하지 않을 수도 있거나, 또는 비히클-유형 오브젝트의 다른 부분들에 비해 상대적으로 낮은 연관 품질 레벨 입력을 가질 수도 있다. 따라서, 이런 품질 레벨 입력은 연관되는 개개의 표면 가설들의 로케이션 및/또는 표현되는 오브젝트의 유형에 따라서 변할 수도 있다. 일부 예들에서, 이런 품질 레벨 입력은 임계 신뢰도 기준들과 비교되거나 임계 신뢰도 기준들을 조정할 수도 있다.
도 2 를 다시 참조하면, 예를 들어, 전자 이미지 캡쳐 디바이스 (100) 와 오브젝트 (200) 사이의 뷰 범위 (207) 는, 최적의 거리에 있으면서 또한 원하는 품질에 도달하도록, 결정될 수도 있다. 이런 원하는 품질은 예를 들어, (예컨대, 영역 (210) 에 걸쳐 퍼져 있는 픽셀들과 같은) 면적당 픽셀-기반의 품질 레벨 입력에 적어도 부분적으로 기초할 수도 있다. 또한 원하는 품질에 도달하는 이런 최적의 거리는 전자 이미지 캡쳐 디바이스 (100) 의 렌즈 각도 (208) 및 해상도에 적어도 부분적으로 기초할 수도 있다. 이런 렌즈 각도 (208) 는 렌즈 설정 범위들 및/또는 프레임에서 오브젝트 (200) 의 대응 각도로부터 비롯될 수도 있다. 예를 들어, 뷰 범위 (207) 는 품질 레벨 입력에 반비례하고, 렌즈 각도 (208) 에 반비례하고, 그리고 전자 이미지 캡쳐 디바이스 (100) 의 해상도에 비례할 수도 있다.
도 4 를 다시 참조하면, 따라서, 뷰 범위 및 방위의 이런 결정은 전자 이미지 캡쳐 디바이스의 해상도, 렌즈 각도, 및/또는 품질 레벨 입력 (예컨대, 원하는 품질) 에 의해 영향을 받을 수도 있다. 단지 대강의 윤곽 (rough outline) 이 소망되면, 뷰 범위와 방위 각도들이 더 크게 산출될 수도 있기 때문에, 픽셀 밀도가 클 필요가 없기 때문에 (그리고, 뷰 콘들의 더 많은 오버랩들이 존재할 수도 있어 - 잠재적으로 더 적은 이미지들을 요구하기 때문에), 최종 뷰 범위 및/또는 방위는 상이할 수도 있다. 예를 들어, 이런 최종 뷰 범위 및/또는 방위는 특정의 거리 및/또는 렌즈 설정에서 픽셀의 사이즈에 대한 품질 레벨 입력의 비교에 적어도 부분적으로 기초할 수도 있다. 따라서, 시야 콘들 중 하나 이상과 연관되는 뷰 범위 및 방위를 품질 레벨 입력에 및/또는 해상도에 적어도 부분적으로 기초하여 조정하는 것은 (예컨대, 요구되는 최저 개수의 투영된 추가적인 2차원 이미지들을 획득하기 위해) 투영된 추가적인 2차원 이미지들의 개수를 증가시키거나 또는 감소시킬 수도 있다.
프로세싱은 동작 (410) 으로부터 동작 (412), "실시간 비디오 데이터를 모니터링한다" 로 계속될 수도 있으며, 여기서, 실시간 비디오 데이터가 모니터링될 수도 있다. 예를 들어, 실시간 비디오 데이터는 전자 이미지 캡쳐 디바이스와 오브젝트 사이의 상대적인 위치 및 방위를 추적하기 위해서, 전자 이미지 캡쳐 디바이스에 의해 모니터링될 수도 있다.
프로세싱은 동작 (412) 으로부터 동작 (414), "실시간 상대 위치 및 방위를 결정한다" 로 계속될 수도 있으며, 여기서, 실시간 상대 위치 및 방위가 결정될 수도 있다. 예를 들어, 전자 이미지 캡쳐 디바이스와 오브젝트 사이의 실시간 상대 위치 및 방위는 실시간 비디오 데이터에 적어도 부분적으로 기초하여 결정될 수도 있다. 예를 들어, 실시간 비디오 데이터는, 오브젝트가 현재 모니터링되고 있다는 것을 확인하거나 및/또는 전자 이미지 캡쳐 디바이스와 오브젝트 사이의 상대적인 위치 및 방위를 결정하기 위해서, 현재의 증강 현실 표현과 비교될 수도 있다. 예를 들어, 실시간 비디오 데이터는 "자세 매칭" (등) 을 통해서 현재의 증강 현실 표현과 비교될 수도 있으며; 여기서, 이런 자세 매칭은 얼마만큼 2차원 이미지들이 증강 현실 표현 (예컨대, 3D 장면) 에 비교되는 지를 결정하기 위해 사용될 수도 있다. 예를 들어, Lingyun Liu., Stamos I.의, A systematic approach for 2D-image to 3D-range registration in urban environments. IEEE ICCV, 1-8, 2007 참조.
프로세싱은 동작 (414) 으로부터 동작 (416), "하나 이상의 추가적인 2차원 이미지들을 캡쳐하는 것에 대한 가이던스를 결정한다" 로 계속될 수도 있으며, 여기서, 하나 이상의 추가적인 2차원 이미지들을 캡쳐하는 것에 대한 가이던스가 결정될 수도 있다. 예를 들어, 오브젝트의 하나 이상의 추가적인 2차원 이미지들을 캡쳐하는 것에 대한 가이던스가 전자 이미지 캡쳐 디바이스의 디스플레이를 통해서 디스플레이될 수도 있다. 이런 가이던스는 예를 들어, 식별된 관심 표면 영역들에 적어도 부분적으로 기초할 수도 있다. 일부 예들에서, 가이던스는 시야 콘들 중 하나 이상과 연관되는 뷰 범위 및 방위에 적어도 부분적으로 기초할 수도 있다.
일부 예들에서, 이런 가이던스는 사용자에게 개개의 관심 표면 영역들과 연관되는 뷰 콘들을 보이고 뷰 콘들을 채울 것을 요청하는 것을 포함할 수도 있다. 일부 예들에서, 이런 가이던스는 사용자에게 (예컨대, 대응하는 시야 콘에 적어도 부분적으로 기초하여) 관심 표면 영역들을 관찰하기 위해 점유하도록 사용자를 안내할 수 있는 로케이션들 및 시야각들의 세트를 보이는 것을 포함할 수도 있다. 이러한 예에서, 다수의 중첩하는 가능한 시야 콘들이 존재할 것이며 (예컨대, 도 8 참조), 특정의 안내되는 로케이션 및 시야각이 (예컨대, 아마도, 그 특정의 안내되는 로케이션 및 시야각이 여러 뷰 콘들 내에 있기 때문에) 가장 유익한 것으로서 결정될 수도 있다. 이에 추가적으로 또는 대안적으로, 이런 가이던스는 사용자가 증강 현실 표현에 채우기 위해 추가적인 2차원 이미지들을 취할 곳을 결정할 수 있도록, 개개의 관심 표면 영역들과 연관되는 신뢰도 값들 (또는, 임계 신뢰도 기준들과의 신뢰도 값들의 비교의 표시) 또는 개개의 뷰 콘들 (예컨대, 각각의 잠재적인 사진 촬영 로케이션) 과 연관되는 신뢰도 값들을 나타내는 어떤 종류의 오버레이 (overlay) 를 사용자에게 보이는 것을 포함할 수도 있다.
이 가이던스는, 그후 특정의 관심 표면 영역들 또는 특정의 뷰 콘들과 연관되는 이미지들이 캡쳐되어진 것으로 인식되기 때문에, 취해된 각각의 2차원 이미지와 함께 전개될 수도 있다. 이러한 예에서, 이런 가이던스는, 그후 대응하는 2차원 이미지가 캡쳐될 때 이런 특정의 관심 표면 영역들 또는 특정의 뷰 콘들이 표시로부터 제거될 수 있도록, 추가적인 2차원 이미지들의 캡쳐시 증강 현실 표현이 업데이트될 수도 있기 때문에, 취해진 각각의 2차원 이미지와 함께 전개될 수도 있다. 이에 추가적으로 또는 대안적으로, 이런 가이던스는 전자 이미지 캡쳐 디바이스에 의해 캡쳐된 실시간 비디오 데이터로부터 캡쳐된 이미지들에 적어도 부분적으로 기초하여 전개될 수도 있다.
일부 예들에서, 이런 가이던스는 상부의 하나, 2개, 또는 3개의 뷰 콘들을 단지 디스플레이할 수도 있으며, 이 뷰 콘들은 이런 뷰 콘들 중 하나로부터 이미지의 캡쳐시 업데이트될 수도 있다. 이에 추가적으로 또는 대안적으로, 이런 가이던스는 그후 관심 표면 영역들 및/또는 뷰 콘들의 새로운 세트를 초래할 수도 있는, 추가적인 2차원 이미지들의 캡쳐시 증강 현실 표현이 업데이트될 수도 있기 때문에, 취해진 각각의 2차원 이미지와 함께 전개될 수도 있다.
도 9 에 대해 아래에서 더 자세히 설명하는 바와 같이, 일부 예들에서, 가이던스는 동작들 (408 및 410) 에 대해 위에서 설명한 바와 같이, 시야 콘들 중 하나 이상과 연관되는 뷰 범위 및 방위에 적어도 부분적으로 기초할 수도 있다. 이에 추가적으로 또는 대안적으로, 가이던스는 동작들 (412 및 414) 에 대해 위에서 설명한 바와 같이, 전자 이미지 캡쳐 디바이스와 오브젝트 사이의 결정된 실시간 상대 위치 및 방위에 적어도 부분적으로 기초할 수도 있다.
도 1 을 다시 참조하면, 도 3 및 도 4 의 프로세스들 (300 및/또는 400) 을 참조하여 설명한 바와 같이, 증강 현실 표현은 다수개의 표면 가설들을 포함할 수도 있다. 하나 이상의 신뢰도 값들이 제어 유닛 (104) 에 의해 결정될 수도 있는 개개의 표면 가설들과 연관될 수도 있다. 하나 이상의 신뢰도 값들은 다수개의 표면 가설들로부터 하나 이상의 관심 표면 영역들을 식별하기 위해 하나 이상의 임계 신뢰도 기준들과 비교될 수도 있다. 오브젝트의 하나 이상의 추가적인 2차원 이미지들을 캡쳐하는 것에 대한 가이던스가 예컨대, 디스플레이 (106) 를 통해서 전달되는 시각적 가이던스에 의해, 사용자에게 제공될 수도 있다. 이런 가이던스는 식별된 관심 표면 영역들에 적어도 부분적으로 기초하여 결정될 수도 있다. 예를 들어, 이런 가이던스는 식별된 관심 표면 영역들에 관한 추가적인 데이터를 획득하기 위해서 사용자에게 오브젝트의 하나 이상의 추가적인 2차원 이미지들을 캡쳐하도록 프롬프트할 수도 있다.
도 5 는 본 개시의 적어도 일부 실시형태들에 따라 배열된 다수개의 표면 가설들을 포함하는 예시적인 증강 현실 표현 (500) 을 도시한다. 도시된 예에서, 증강 현실 표현 (500) 은 제 1 뷰 (502), 제 2 뷰 (504), 및 제 3 뷰 (506) 에 의해 도시된다.
다수의 상이한 접근법들이, 관심 표면 영역들 (예컨대, 미관찰된 표면들 또는 낮은 품질 표면들) 을 커버 (cover) 하기 위해서, 하나 이상의 추가적인 2차원 이미지들을 캡쳐하기 위한 원하는 로케이션들을 결정하는데, 채용될 수도 있다. 이것은 관찰되는 표면들로부터의 정보에 기초하여 행해질 수도 있다. 예를 들어, RANSAC 는 "Random Sample Consensus" 의 약어로서, 포인트 클라우드를 취하고 그 포인트 클라우드에 표면 가설들을 피팅하는데 사용될 수도 있다. 전체 접근법은 그 표면으로부터 포인트 클라우드까지의 최소 자승 차이 (least squares difference) 를 최소화면서 여러 가정들을 만족시키는 표면을 발생하는 것으로 기술될 수도 있다. 가정들은 데이터에 의해 제외되지 않을 때 미관찰된 영역들로 계속될 가능성이 있는, (아키텍처에 일반적인) 평면성 및 선형 특성들의 기대치, (도 5 에서와 같이) 대칭의 인식, 및 비슷한 것들을 포함할 수도 있다. 하나 이상의 추가적인 2차원 이미지들을 캡쳐하기 위한 원하는 로케이션들을 결정하기 위해서, 어떤 점에서 부적당한 표면들이 그러한 표면들에 관한 더 많은 데이터가 수집될 수 있도록 식별될 수도 있다.
증강 현실 표현 (500) 에서 3차원 도형 (figure) 들은 개개의 표면 가설의 표시 (presentation) 를 변경함으로써 개개의 표면 가설과 연관되는 신뢰도 값들을 변경하는 것을 도시한다. 예시적인 시나리오에 따르면, 이런 신뢰도 값들은 평균 아래의 포인트 밀도를 가진 영역 비율과, 측정된 뷰와의 법선에 가장 가까운 표면들 상의 표면 평균 에러에 대한 표면 평균 에러의 비와 합계로서 컴퓨팅될 수도 있다. 따라서, 포인트들의 품질 및 관찰되지 않는 표면의 비율 양자가 이런 신뢰도 값들을 결정하는데 사용될 수도 있다.
예를 들어, 제 1 뷰 (502) 와 유사한 2차원 이미지들에 기초하여 생성된 증강 현실 표현 (500) 은 표면 (510) 과 연관되는 상대적으로 높은 신뢰도 값, 표면 (512 및 516) 과 연관되는 상대적으로 낮은 신뢰도 값, 및 표면 (514) 과 연관되는 상대적으로 중간 신뢰도 값을 가질 수도 있다. 예를 들어, 표면 (510) 은 제 1 뷰 (502) 로부터 용이하게 시인될 수 있지만, 표면 (512) 은 단지 부분적으로 시인되거나 또는 극단적인 각도 (extreme angle) 로부터 시인될 수 있고 표면 (516) 은 직접적으로 시인불가능한 것으로 단지 예측될 수 있어, 표면 (512) 및 표면 (516) 과 연관되는 데이터의 품질을 제한한다.
증강 현실 표현 (500) 의 뷰들 (502, 504, 및 506) 은 RANSAC 표면 추출기 프로그램의 출력으로서 획득될 수도 있다. 뷰들 (502, 504, 및 506) 에서, 동일한 아키텍쳐 구조의 표면들이 가설화되며 (이하 표면 가설 (surface hypothesis) 이라함), 그 구조는 관심 표면 영역들 (예컨대, 표면 이미지 데이터가 취해지지 않은 가설화되지만 미관찰된 표면들 또는 낮은 품질 표면들) 을 예시하기 위해 여러 회전된 위치들로 도시된다.
적합한 지오메트리 구조를 컴퓨팅하는 것에 더해, 신뢰도 값이 (상이한 그레이 음영들로 도시되는) 개개의 표면 가설 세그먼트들에 대해 발생될 수도 있다. 단지 (소수의 포인트들로 추정된 표면에 대해 실제로 아주 높을 수 있는) 신뢰성 (confidence) 에 대한 최소 자승 매칭을 이용하는 대신에, (예컨대, 면적 당 이미지 픽셀들에 기초한) 적합한 신뢰도 값이 이용될 수도 있다. 이러한 예에서, (직접적으로 관찰되더라도, 표면 (512) 에 대해 여기서 낮은) 포인트들의 품질 및 (표면 (514) 및 표면 (516) 에 대해 높은) 관찰되지 않은 표면의 비율 양자가 평가될 수도 있다.
도시된 예에서, 신뢰도 값들은 개개의 표면 가설 세그먼트들에 대한 그레이 음영들을 변경하여 도시될 수도 있다. 표면 (510) 과 연관되는 상대적으로 높은 신뢰도 값은 밝은 (light) 그레이 음영으로 도시될 수도 있으며, 표면 (512 및 516) 과 연관되는 상대적으로 낮은 신뢰도 값은 어두운 (dark) 그레이 음영들로 도시될 것이며, 표면 (514) 과 연관되는 상대적으로 중간 신뢰도 값은 중간 그레이 음영으로 도시될 것이다. 일부 실시형태들에서, 이런 신뢰도 값들은 칼라 (예컨대, 적색, 오렌지색, 황색, 및 녹색) 의 음영들을 변경하여 도시될 수도 있다. 이에 추가적으로 또는 대안적으로, 이런 신뢰도 값들은 연관되는 표면 가설 세그먼트들 상에 또는 근처에 나타나거나, 또는 표시된 콘 또는 사진 뷰 포인트와 연관되는 신뢰도 값을 나타내는 수치 또는 퍼센티지 값들에 의해 도시될 수도 있다.
도 6 은 본 개시의 적어도 일부 실시형태들에 따라 배열된 증강 현실 표현과 연관되는 예시적인 시야 콘을 도시한다. 도시된 예에서, 증강 현실 표현 (600) 은 제 1 뷰 (602) 및 제 2 뷰 (606) 에 의해 도시된다. 낮은 품질 표면 (512) 과 연관되는 뷰 콘 (604) 은 제 1 뷰 (602) 와 연관되는 브로드 뷰 (broad view) 로 도시되며, 제 2 뷰 (606) 과 연관되는 엔드 뷰 (end view) (예컨대, 표면 (512) 에 대한 표면 법선 벡터에 의해 중심에 맞춰진 뷰) 로 도시된다. 여기서는, 명확성을 위해 단일 뷰 콘 (604) 이 도시된다. 이 경우, 뷰 콘 (604) 은 정의된 시야각 (612) 을 가진 기존 표면 (512) 으로부터의 표면 법선 벡터 (610) 로부터 성장된 드래프트 연장부 (draft extension) 일 수도 있다. 이런 정의된 시야각 (612) 은 원하는 표면 품질 또는 해상도를 획득하기 위해서, 해상도 및/또는 거리에 적어도 부분적으로 기초하여 계산될 수도 있다. 오브젝트에 대한 증강 현실 표현을 완성하기 위해 관심 표면 영역들 (예컨대, 표면 (512)) 에 대한 더 나은 데이터를 캡쳐할 수도 있는 뷰들은, 정의된 시야각 (612) 및 이런 관심 표면 영역들로부터 컴퓨팅된 표면 법선 벡터 (610) 에 적어도 부분적으로 기초하여 결정될 수도 있다.
도 7 은 본 개시의 적어도 일부 실시형태들에 따라 배열된 다수개의 표면 가설들로부터 관심 표면 영역들과 연관되는 예시적인 시야 콘들을 도시한다. 도시된 예에서, 증강 현실 표현 (700) 은 제 1 뷰 (702), 제 2 뷰 (704), 및 제 3 뷰 (706) 에 의해 도시된다. 다수개의 뷰 콘들 (708) 이 관심 표면 영역들 (예컨대, 미관찰된 표면 및 낮은 품질 표면 (예를 들어, 도 5 의 512, 514, 516)) 과 연관될 수도 있다.
개개의 뷰 콘들 (708) 은 각각의 관심 표면 영역 (예컨대, 미관찰된 및 낮은 품질 표면들, 예를 들어, 도 5 의 (512, 514, 516)) 과 연관되는 표면 법선 벡터를 이용하여 그려질 수도 있다. 비-평면 표면들에 대해, 이것은, 예를 들어, 단일 스코어 (상위) 로부터 낮은 품질로서 이전에 식별된 표면들을 Voronoi 테셀레이션 (또는, 기타 등등) 으로 분해 (break down) 하고, 각각의 영역에 유사한 스코어를 부여한 후, 임계치 아래의 스코어를 가진 Voronoi 다이어그램에서 가장 큰 영역을 법선 (normal) 생성 (예컨대, 도 5 의 표면 (514) 의 좌측 절반으로부터의 콘의 생성) 을 위한 표면으로서 이용함으로써 이루어질 수도 있다. Voronoi 다이어그램의 세그먼트들은 2개의 가장 가까운 사이트들에 등거리인 평면 내 포인트들일 수도 있다. 그 후, 각각의 표면 법선 벡터는 연장될 수도 있으며, 대응하는 뷰 콘 (702) 이 위에서 설명한 이미징 메트릭들에 기초하여 정의될 수 있다.
도 8 은 본 개시의 적어도 일부 실시형태들에 따라 배열된 시야 콘들에 기초하여 관심 표면 영역들에 관한 데이터를 획득하는 예시적인 선택을 도시한다. 도시된 예에서, 증강 현실 표현 (800) 은 제 1 뷰 (802) 에 의해 도시된다. 다수개의 뷰 콘들 (708) 이 관심 표면 영역들 (예컨대, 미관찰된 및 낮은 품질 표면들 (예를 들어, 도 5 의 512, 514, 516)) 과 연관될 수도 있다.
다수개의 뷰 콘들 (708) 중 일부 또는 모두는 인터섹션 (804) 에서 중첩될 수도 있다. 이미지들을 캡쳐하기 위한 원하는 로케이션들의 선택은 (예컨대, 인터섹션 (804) 을 통해서와 같이) 가능한 한 많은 관심 표면 영역들에 관하여 그 만큼 데이터를 발생하는 로케이션들을 발견하는 것에 적어도 부분적으로 기초할 수도 있다. 알고리즘적인 용어들에서, 뷰 콘들 (708) 의 하나를 채우는 것이 어떤 "스코어 (score)" 를 갖는 것으로서 할당되면, 각각의 가용 뷰 콘 (708) 은 뷰 콘 (708) 이 증강 현실 표현에 얼마나 많은 데이터를 기여하는 지를 나타낼 수도 있는 전체 복합 스코어 (compound score) 를 가질 수도 있다. 가능한 로케이션들은 또한 사진사의 신장 및 내부 다른 오브젝트들로부터 2차원 이미지들을 취하는 것의 제외와 같은 그들에 대한 다른 제한을 가질 수도 있다. 최고 스코어링 로케이션들을 염두에 두는 것은, 예를 들어, 다수개의 뷰 콘들 (708) 중 일부 또는 모두가 인터섹션 (804) 에서 중첩할 수도 있는 경우와 같이, 증강 현실 표현을 최소 이미지들로 채우는 것을 야기할 수도 있다.
도 9 는 본 개시의 적어도 일부 실시형태들에 따라 배열된 예시적인 스크린 샷을 도시한다. 위에서 설명한 바와 같이, 일부 예들에서, 이런 가이던스는 오브젝트의 하나 이상의 추가적인 2차원 이미지들을 캡쳐하기 위한 하나 이상의 밴티지 포인트들을 나타낼 수도 있다. 이에 추가적으로 또는 대안적으로, 이런 가이던스는 개개의 표면 가설들과 연관된 신뢰도 값들을 나타낼 수도 있다.
(도 5 에 대해) 위에서 설명한 바와 같이, 신뢰도 값은 (상이한 회색 음영들로 나타낸) 개개의 표면 가설 세그먼트들에 대해 생성될 수도 있다. 도시된 예에서, 신뢰도 값들은 개개의 표면 가설 세그먼트들에 대한 그레이 음영들을 변경하여 도시될 수도 있다. 표면 (512 및 516) 과 연관되는 상대적으로 낮은 신뢰도 값은 어두운 회색 음영들로 도시될 수도 있으며, 표면 (514) 과 연관되는 상대적으로 중간 신뢰도 값은 중간 회색 음영으로 도시될 수도 있다. 일부 실시형태들에서, 이런 신뢰도 값들은 칼라 (예컨대, 적색, 오렌지색, 황색, 및 녹색) 의 음영들을 변경하여 도시될 수도 있다. 이러한 예에서, 적색 칼라는 미관찰된 표면 (516) 과 연관될 수도 있으며, 오렌지색 칼라는 표면 (512) 과 연관되는 상대적으로 낮은 신뢰도 값을 예시할 수도 있으며, 칼라 황색은 표면 (514) 과 연관되는 상대적으로 중간 신뢰도 값을 도시할 수도 있으며, 칼라 녹색은 상대적으로 높은 신뢰도 값을 도시할 수도 있다. 이에 추가적으로 또는 대안적으로, 이런 신뢰도 값들은 연관되는 표면 가설 세그먼트들 상에 또는 근처에 나타나는 신뢰도 값을 나타내는 수치 또는 퍼센티지 값들에 의해 예시될 수도 있다.
일부 예들에서, 이런 가이던스는 현재의 증강 현실 표현 (902) 의 디스플레이를 포함할 수도 있다. 이런 현재의 증강 현실 표현 (902) 은 예를 들어, 표면들 (510, 512, 및/또는 514) 과 연관되는 도시된 신뢰도 값들을 포함할 수도 있다. 현재의 증강 현실 표현 (902) 은 (예컨대, 터치 스크린 등을 통해서) 전자 이미지 캡쳐 디바이스와의 사용자 상호작용에 의해 회전되어, 사용자가 개개의 관심 표면 영역들 (예컨대, 표면들 (512 및/또는 514)) 이 최상으로 시인될 수 있는 그 각도들로부터 시각적으로 볼 수 있을 것이다.
이에 추가적으로 또는 대안적으로, 일부 예들에서, 이런 가이던스는 하나 이상의 추가적인 2차원 이미지들을 캡쳐하기 위해 제안된 밴티지 포인트를 나타내도록 배향 (orient) 될 수도 있는 현재의 증강 현실 표현 (904) 의 디스플레이를 포함할 수도 있다. 도시된 예에서, 현재의 증강 현실 표현 (904) 은 개개의 관심 표면 영역들 (예컨대, 표면들 (512, 514, 및/또는 516)) 이 최상으로 시인될 수 있도록 배향될 수도 있다.
이에 추가적으로 또는 대안적으로, 일부 예들에서, 이런 가이던스는 오브젝트 (906) 의 디스플레이 (예컨대, 라이브 디스플레이) 를 포함할 수도 있다. 뷰 콘 (604) 은 하나 이상의 추가적인 2차원 이미지들을 캡쳐하기 위해 제안된 밴티지 포인트를 나타내기 위해 오브젝트 (906) 상에 중첩될 수도 있다. 이에 추가적으로 또는 대안적으로, 다른 시각적 가이던스는 (예컨대, 대응하는 시야 콘에 적어도 부분적으로 기초하여) 관심 표면 영역들을 관찰하기 위해 점유하도록 사용자에게 안내할 수 있는 로케이션 및 시야각을 사용자에게 보이는 것을 포함할 수도 있다. 이런 예들에서, 가이던스는 전자 이미지 캡쳐 디바이스와 오브젝트 사이의 결정된 실시간 상대 위치 및 방위에 적어도 부분적으로 기초할 수도 있다. 예를 들어, 전자 이미지 캡쳐 디바이스는 사용자가 로케이션을 변경함에 따라 사용자에게 전자 이미지 캡쳐 디바이스를 오브젝트 상에 포커싱한 채로 유지하도록 명령함으로써, 오브젝트 (906) 및 뷰 콘 (604) 의 디스플레이가 전자 이미지 캡쳐 디바이스와 오브젝트 변화들 사이의 상대적인 위치 및 방위에 따라서 동적으로 변경될 수도 있다.
이에 추가적으로 또는 대안적으로, 뷰 콘 (604) 은 하나 이상의 추가적인 2차원 이미지들을 캡쳐하기 위해 제안된 밴티지 포인트를 나타내기 위해 현재의 증강 현실 표현 (902 및/또는 904) 상에 겹치게 놓여질 수도 있다. 일부 예들에서, 다수개의 뷰 콘들 (604) 이 제공될 수도 있다. 이러한 예에서, 다수개의 뷰 콘들 (604) 각각을 만족하는 이미지가 캡쳐될 때에 시각적 표시가 주어질 수도 있다.
일부 예들에서, 사용자는 전자 이미지 캡쳐 디바이스를 시프트하거나 회전하고, 그것을 더 높게 또는 낮게 유지하거나, 또는 그 오브젝트에 접근하거나 그로부터 멀리 이동하는 것을 나타내는 화살표들 (912) 을 보여줌으로써, 각각의 2차원 이미지를 만족시키도록 안내될 수 있다. 오브젝트로부터의 원하는 거리는 더 넓은 뷰와 더 높은 해상도 사이의 트레이드 오프 (trade off) 일 수도 있으며, 거리는, (예컨대, 선형 거리 당 픽셀들의) 요구된 메트릭을 전자 이미지 캡쳐 디바이스 해상도 및 프레임에서의 표면들에 대한 뷰의 각도와 비교함으로써 계산될 수도 있다. 이런 해상도 메트릭은 최대 거리를 설정할 수도 있는 한편, 최소 거리가 뷰의 범위와, 따라서, 얼마나 많은 이미지들이 획득될 필요가 있는지에 영향을 미친다. 이러한 예에서, 가이던스는 전자 이미지 캡쳐 디바이스와 오브젝트 사이의 결정된 실시간 상대 위치 및 방위에 적어도 부분적으로 기초할 수도 있다. 예를 들어, 전자 이미지 캡쳐 디바이스는, 사용자가 로케이션을 변경함에 따라 사용자로 하여금 전자 이미지 캡쳐 디바이스를 오브젝트 상에 포커싱한 채로 유지하도록 명령함으로써, (전자 이미지 캡쳐 디바이스를 시프트하거나 또는 회전하거나, 그것을 더 높거나 또는 더 낮게 유지하거나, 또는 오브젝트에 접근하거나 또는 이로부터 멀리 이동하는 것을 나타내는) 화살표들 (912) 의 디스플레이가 전자 이미지 캡쳐 디바이스와 오브젝트 변화들 사이의 상대적인 위치 및 방위에 따라서 동적으로 변경될 수도 있다.
동작 시, 디스플레이 (106) 는 사용자에게 더 나은 결과들 및 더 적은 좌절을 제공할 수도 있는 동적 피드백을 제공하기 위해 이용될 수도 있다. 이에 추가적으로 또는 대안적으로, 전자 이미지 캡쳐 디바이스 (100) (도 1) 내에서 증강 현실 표현들 (예컨대, 3D 모델들) 의 실시간 업데이팅은, 증강 현실 표현들이 발생 직후에 시인되거나 또는 공유될 수 있게 하거나, 및/또는 각각의 추가적인 2차원 이미지가 캡쳐됨에 따라 증강 현실 표현을 향상시키는 것에 대한 반복 접근 (iterative approach) 을 가능하게 할 수도 있다.
동작 시, 사용자가 2차원 이미지들을 이용하여 증강 현실 표현을 발생하는 것을 돕기 위해 실시간 사용자 피드백을 제공하는 것은, 사용자 결과 좌절을 감소시킬 수도 있으며, "크라우드-소싱된 (crowd-sourced)" 3D 오브젝트들로부터 더 높은 레벨의 품질을 허용할 수도 있다. 이런 증강 현실 표현들은, 사용자들이 기어 (gear), 장소들, 또는 사람의 증강 현실 표현들을 생성할 수도 있고 그들을 게임에 이용하는 전자 게임들; 사용자들이 친구들과 공유하기 위한 3D 로케이션 및 피쳐 이미저리 (feature imagery) 를 생성하는 일반 사진 촬영 (general photography); 및/또는 사용자들이 차 사고 이후의 위치들을 기록하거나 또는 "전" 에 대한 추후 비교 또는 주석 (annotation) 을 위한 로케이션을 기록할 수도 있는 문서화 (documentation) 와 함께 이용될 수도 있다.
도 10 은 본 개시의 적어도 일부 예들에 따라 배열된 예시적인 컴퓨터 프로그램 제품 (1000) 을 도시한다. 프로그램 제품 (1000) 은 신호 베어링 매체 (signal bearing medium; 1002) 를 포함할 수도 있다. 신호 베어링 매체 (1002) 는 하나 이상의 프로세서들에 의해 실행되는 경우, 컴퓨팅 디바이스로 하여금 동작가능하게 도 3 및/또는 도 4 에 대해 위에서 설명한 기능을 제공하는 것을 동작적으로 가능하게 할 수도 있는 하나 이상의 머신-판독가능 명령들 (1004) 을 포함할 수도 있다. 따라서, 예를 들어, 도 1 의 시스템을 참조하면, 전자 이미지 캡쳐 디바이스 (100) 는 매체 (1002) 에 의해 전달되는 명령들 (1004) 에 응답하여 도 3 및/또는 도 4 에 나타낸 액션들 중 하나 이상을 맡을 수도 있다.
일부 구현들에서, 신호 베어링 매체 (1002) 는 하드 디스크 드라이브, 컴팩트 디스크 (CD), 디지털 다기능 디스크 (DVD), 디지털 테이프, 메모리 등과 같은, 그러나, 이에 한정되지 않는, 비일시적 컴퓨터-판독가능 매체 (1006) 를 포함할 수도 있다. 일부 구현들에서, 신호 베어링 매체 (1002) 는 메모리, 읽기/쓰기 (R/W) CD, R/W DVD 등과 같은, 그러나 이에 한정되지 않는, 기록가능한 매체 (1008) 를 포함할 수도 있다. 일부 구현들에서, 신호 베어링 매체 (1002) 는 디지털 및/또는 아날로그 통신 매체 (예컨대, 광섬유 케이블, 도파관, 유선 통신 링크, 무선 통신 링크 등) 와 같은, 그러나, 이에 한정되지 않는, 통신 매체 (1010) 를 포함할 수도 있다.
도 11 은 예컨대, 당업자에 의해 구현될 수 있는, 본 개시의 적어도 일부 실시형태들에 따라 배열된 예시적인 컴퓨팅 디바이스 (1100) 를 도시하는 블록도이다. 일 예시적인 구성 (1101) 에서, 컴퓨팅 디바이스 (1100) 는 하나 이상의 프로세서들 (1110) 및 시스템 메모리 (1120) 를 포함할 수도 있다. 메모리 버스 (1130) 가 프로세서 (1110) 와 시스템 메모리 (1120) 사이에 통신하기 위해 사용될 수도 있다.
원하는 구성에 따라서, 프로세서 (1110) 는 마이크로프로세서 (μP), 마이크로제어기 (μC), 디지털 신호 프로세서 (DSP), 또는 이들의 임의의 조합을 포함하지만 이에 한정되지 않는, 임의의 유형일 수도 있다. 프로세서 (1110) 는 하나 이상의 레벨들의 캐싱, 예컨대, 레벨 1 캐시 (1111) 및 레벨 2 캐시 (1112), 프로세서 코어 (1113), 및 레지스터들 (1114) 을 포함할 수도 있다. 프로세서 코어 (1113) 는 산술 로직 유닛 (ALU), 부동 소수점 유닛 (FPU), 디지털 신호 프로세싱 코어 (DSP 코어), 또는 이들의 임의의 조합을 포함할 수도 있다. 메모리 제어기 (1115) 는 또한 프로세서 (1110) 와 함께 사용될 수도 있거나, 또는 일부 구현들에서 메모리 제어기 (1115) 는 프로세서 (1110) 의 내부 부분일 수도 있다.
원하는 구성에 따라서, 시스템 메모리 (1120) 는 (RAM 과 같은) 휘발성 메모리, (ROM, 플래시 메모리 등과 같은) 비-휘발성 메모리 또는 이들의 임의의 조합을 포함하지만 이에 한정되지 않는 임의의 유형일 수도 있다. 시스템 메모리 (1120) 는 운영 시스템 (1121), 하나 이상의 애플리케이션들 (1122), 및 프로그램 데이터 (1124) 를 포함할 수도 있다. 애플리케이션 (1122) 은 도 3 의 프로세스 (300) 및/또는 도 4 의 프로세스 (400) 에 대해 설명한 기능 블록들 및/또는 액션들을 포함한, 본원에서 설명한 바와 같은 기능들을 수행하도록 배열된 이미지 가이던스 알고리즘 (1123) 을 포함할 수도 있다. 프로그램 데이터 (1124) 는 이미지 가이던스 알고리즘 (1123) 과 함께 사용하기 위한 이미지 데이터 (1125) 를 포함할 수도 있다. 일부 예시적인 실시형태들에서, 애플리케이션 (1122) 은 증강 현실 표현을 위한 2차원 이미지들을 캡쳐하기 위해 가이던스를 제공하는 구현들이 본원에서 설명한 바와 같이 제공될 수 있도록, 운영 시스템 (1121) 상의 프로그램 데이터 (1124) 와 함께 동작하도록 배열될 수도 있다. 예를 들어, 전자 이미지 캡쳐 디바이스 (100) (예컨대, 도 1 참조) 는, 컴퓨팅 디바이스 (1100) 의 모두 또는 부분을 포함할 수도 있으며, 증강 현실 표현을 위한 2차원 이미지들을 캡쳐하기 위해 가이던스를 제공하는 구현들이 본원에서 설명하는 바와 같이 제공될 수 있도록, 애플리케이션 (1122) 의 모두 또는 부분을 수행가능할 수도 있다. 이 설명되는 기본 구성은 도 11 에서 파선 (1101) 내 그러한 구성요소들에 의해 도시된다.
컴퓨팅 디바이스 (1100) 는 기본 구성 (1101) 과 임의의 요구된 디바이스들 및 인터페이스들 사이의 통신을 용이하게 하기 위해, 추가적인 특성들 또는 기능, 및 추가적인 인터페이스들을 가질 수도 있다. 예를 들어, 버스/인터페이스 제어기 (1140) 가 스토리지 인터페이스 버스 (1141) 를 통해서 기본 구성 (1101) 과 하나 이상의 데이터 스토리지 디바이스들 (1150) 사이의 통신을 용이하게 하기 위해서 사용될 수도 있다. 데이터 스토리지 디바이스들 (1150) 은 착탈식 스토리지 디바이스들 (1151), 비-착탈식 스토리지 디바이스들 (1152), 또는 이들의 조합일 수도 있다. 착탈식 스토리지 및 비-착탈식 스토리지 디바이스들의 예들은 몇 개 예를 들면, 가요성 디스크 드라이브들 및 하드-디스크 드라이브들 (HDD) 과 같은 자기 디스크 디바이스들, 컴팩트 디스크 (CD) 드라이브들 또는 디지털 다기능 디스크 (DVD) 드라이브들과 같은 광 디스크 드라이브들, 고체 상태 드라이브들 (SSD), 및 테이프 드라이브들을 포함한다. 예시적인 컴퓨터 저장 매체들은 컴퓨터 판독가능 명령들, 데이터 구조들, 프로그램 모듈들, 또는 다른 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 착탈식 및 비-착탈식 매체들을 포함할 수도 있다.
시스템 메모리 (1120), 착탈식 스토리지 (1151) 및 비-착탈식 스토리지 (1152) 는 모두 컴퓨터 저장 매체들의 예들이다. 컴퓨터 저장 매체들은 RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술, CD-ROM, 디지털 다기능 디스크들 (DVD) 또는 다른 광학적 스토리지, 자기 카세트들, 자기 테이프, 자기디스크 스토리지 또는 다른 자기 스토리지 디바이스들, 또는 원하는 정보를 저장하는데 사용될 수도 있고 컴퓨팅 디바이스 (1100) 에 의해 액세스될 수도 있는 임의의 다른 매체를 포함하지만 이에 한정되지 않는다. 임의의 이런 컴퓨터 저장 매체들은 디바이스 (1100) 의 부분일 수도 있다.
컴퓨팅 디바이스 (1100) 는 또한 여러 인터페이스 디바이스들 (예컨대, 출력 인터페이스들, 주변장치 인터페이스들, 및 통신 인터페이스들) 로부터 버스/인터페이스 제어기 (1140) 를 통해서 기본 구성 (1101) 으로의 통신을 용이하게 하기 위해 인터페이스 버스 (1142) 를 포함할 수도 있다. 예시적인 출력 인터페이스들 (1160) 은 하나 이상의 A/V 포트들 (1163) 을 통해서 디스플레이 또는 스피커들과 같은 여러 외부 디바이스들로 통신하도록 구성될 수도 있는, 그래픽스 프로세싱 유닛 (1161) 및 오디오 프로세싱 유닛 (1162) 을 포함할 수도 있다. 예시적인 주변장치 인터페이스들 (1160) 은 입력 디바이스들 (예컨대, 키보드, 마우스, 펜, 보이스 입력 디바이스, 터치 입력 디바이스 등) 또는 다른 주변장치 디바이스들 (예컨대, 프린터, 스캐너 등) 등의 외부 디바이스들과 하나 이상의 I/O 포트들 (1173) 을 통해서 통신하도록 구성될 수도 있는, 직렬 인터페이스 제어기 (1171) 또는 병렬 인터페이스 제어기 (1172) 를 포함할 수도 있다. 예시적인 통신 인터페이스 (1180) 는 하나 이상의 통신 포트들 (1182) 을 경유한 네트워크 통신을 통한 하나 이상의 다른 컴퓨팅 디바이스들 (1190) 과의 통신을 용이하게 하도록 배열될 수도 있는, 네트워크 제어기 (1181) 를 포함할 수도 있다. 통신 접속은 통신 매체들의 일 예이다. 통신 매체들은 일반적으로 컴퓨터 판독가능 명령들, 데이터 구조들, 프로그램 모듈들, 또는 캐리어 파 또는 다른 전송 메커니즘과 같은 변조된 데이터 신호 내 다른 데이터에 의해 구현될 수도 있으며, 임의의 정보 전달 매체들을 포함할 수도 있다. "변조된 데이터 신호" 는 그의 특성들 중 하나 이상이 신호로 정보를 인코딩하는 방법으로 설정 또는 변경되는 신호일 수도 있다. 일 예로써, 이에 한정하지 않고, 통신 매체들은 유선 네트워크 또는 직접-유선 접속과 같은 유선 매체들, 및 음향, 무선 주파수 (RF), 적외선 (IR) 및 다른 무선 매체들과 같은 무선 매체들을 포함할 수도 있다. 본원에서 사용 용어 컴퓨터 판독가능 매체들은 저장 매체들 및 통신 매체들 양자를 포함할 수도 있다.
컴퓨팅 디바이스 (1100) 는 셀 폰, 개인 휴대 정보단말 (PDA), 개인 미디어 플레이어 디바이스, 무선 웹-워치 디바이스, 개인 헤드셋 디바이스, 애플리케이션 특정의 디바이스, 또는 상기 기능들 중 임의의 기능을 포함하는 하이브리드 디바이스와 같은 스몰-폼 팩터 휴대형 (또는, 모바일) 전자 디바이스의 부분으로서 구현될 수도 있다. 컴퓨팅 디바이스 (1100) 는 또한 랩탑 컴퓨터 및 비-랩탑 컴퓨터 구성들 양자를 포함한 개인용 컴퓨터로서 구현될 수도 있다. 게다가, 컴퓨팅 디바이스 (1100) 는 무선 기지국 또는 다른 무선 시스템 또는 디바이스의 부분으로서 구현될 수도 있다.
전술한 상세한 설명의 일부 부분들은 컴퓨터 메모리와 같은 컴퓨팅 시스템 메모리 내에 저장된 데이터 비트들 또는 2진 디지털 신호들에 관한 동작들의 알고리즘들 또는 심볼 표현들의 관점에서 제공된다. 이들 알고리즘적인 설명들 또는 표현들은 데이터 프로세싱 당업자가 그들 연구의 실체를 다른 당업자들에게 전달하기 위해 사용되는 기법들의 예들이다. 알고리즘은 여기서 그리고 일반적으로, 원하는 결과를 초래하는 동작들의 일관성 있는 시퀀스 또는 유사한 프로세싱인 것으로 간주된다. 이 상황에서, 동작들 또는 프로세싱은 물리량들의 물리적인 조작을 수반한다. 일반적으로, 반드시는 아니지만, 이런 양들은 저장되거나, 전달되거나, 결합되거나, 비교되거나 또는 아니면 조작될 수 있는 전기적 또는 자기적 신호들의 형태를 취할 수도 있다. 주로 일반적인 사용의 이유들로, 이런 신호들을 비트들, 데이터, 값들, 엘리먼트들, 심볼들, 문자들, 용어들, 번호들, 숫자들 또는 기타 등등으로 지칭하는 것이 편리한 것으로 종종, 알려져 있다. 그러나, 모든 이들 및 유사한 용어들은 적합한 물리량들과 연관되어질 수 있으며 단지 편의상의 표식들인 것으로 이해되어야 한다. 달리 구체적으로 언급하지 않는 한, 다음 설명으로부터 명백히 알 수 있는 바와 같이, 본 명세서 전체에 걸쳐서, "프로세싱하는", "컴퓨팅하는", "계산하는", "결정하는" 등과 같은 용어들을 이용한 설명들이 컴퓨팅 디바이스의 메모리들, 레지스터들, 또는 다른 정보 스토리지 디바이스들, 송신 장치들, 또는 디스플레이 디바이스들 내 물리적인 전자 또는 자기 양들로서 표현되는 데이터를 조작하거나 또는 변환하는, 컴퓨팅 디바이스의 액션들 또는 프로세스들을 지칭하는 것으로 이해된다.
청구된 요지는 본원에서 설명하는 특정의 구현들에 범위가 한정되지 않는다. 예를 들어, 일부 구현들은 예를 들어, 디바이스 또는 디바이스들의 조합 상에서 동작하도록 채용되는 하드웨어로 존재할 수도 있으며, 반면 다른 구현들은 소프트웨어 및/또는 펌웨어로 존재할 수도 있다. 이와 유사하게, 청구된 요지는 이러한 관점에서의 범위가 한정되지 않지만, 일부 구현들은 신호 베어링 매체, 저장 매체 및/또는 저장 매체들과 같은 하나 이상의 물품들을 포함할 수도 있다. 예를 들어, CD-ROM, 컴퓨터 디스크들, 플래시 메모리 등과 같은 이 저장 매체들은 예를 들어, 컴퓨팅 시스템, 컴퓨팅 플랫폼, 또는 다른 시스템과 같은 컴퓨팅 디바이스에 의해 실행될 때, 예를 들어, 앞에서 설명한 구현들 중 하나와 같은 청구된 요지에 따라서 프로세서의 실행을 야기할 수도 있는, 명령들이 저장될 수도 있다. 하나의 가능성으로서, 컴퓨팅 디바이스는 하나 이상의 프로세싱 유닛들 또는 프로세서들, 하나 이상의 입력/출력 디바이스들, 예컨대 디스플레이, 키보드 및/또는 마우스, 및 하나 이상의 메모리들, 예컨대 정적 랜덤 액세스 메모리, 동적 랜덤 액세스 메모리, 플래시 메모리, 및/또는 하드 드라이브를 포함할 수도 있다.
시스템들의 양태들의 하드웨어 구현와 소프트웨어 구현들 사이에는 구별이 거의 없다; 하드웨어 또는 소프트웨어의 사용은 일반적으로 비용 대 효율 트레이드 오프를 나타내는 설계 선택이다 (그러나, 어떤 상황에서 하드웨어와 소프트웨어 사이의 선택이 중요해 질 수 있다는 점에서 항상 그렇지는 않다). 본원에서 설명하는 프로세스들 및/또는 시스템들 및/또는 다른 기술들이 달성될 수 있는 여러 비히클이 존재하며 (예컨대, 하드웨어, 소프트웨어, 및/또는 펌웨어), 게다가 바람직한 비히클은 프로세스들 및/또는 시스템들 및/또는 다른 기술들이 전개되는 맥락에 따라서 변할 것이다. 예를 들어, 속도 및 정확도가 가장 중요하다고 구현자가 결정하면, 구현자는 주로 하드웨어 및/또는 펌웨어 비히클을 선택할 수도 있으며; 유연성이 가장 중요하면, 구현자는 주로 소프트웨어 구현를 선택할 수도 있으며; 또는, 또 다시 대안적으로, 구현자는 하드웨어, 소프트웨어, 및/또는 펌웨어의 일부 조합을 선택할 수도 있다.
전술한 상세한 설명은 블록도들, 플로우차트들, 및/또는 예들의 사용을 통해서 디바이스들 및/또는 프로세스들의 여러 실시형태들을 제시하였다. 이런 블록도들, 플로우차트들, 및/또는 예들이 하나 이상의 기능들 및/또는 동작들을 포함하는 한, 당업자들은, 이런 블록도들, 플로우차트들, 또는 예들 내 각각의 기능 및/또는 동작이 광범위한 하드웨어, 소프트웨어, 펌웨어, 또는 사실상 이들의 임의의 조합에 의해, 개별적으로 및/또는 집합적으로, 구현될 수 있음을 알 수 있을 것이다. 일 실시형태에서, 본원에서 설명하는 요지의 여러 부분들은 주문형 집적회로 (ASIC), 필드 프로그래밍가능 게이트 어레이 (FPGA), 디지털 신호 프로세서들 (DSP), 또는 다른 집적 포맷들을 통해서 구현될 수도 있다. 그러나, 당업자들은, 본원에서 개시된 실시형태들의 일부 양태들이, 전체적으로 또는 부분적으로, 집적 회로들에서 하나 이상의 컴퓨터들 상에서 실행하는 하나 이상의 컴퓨터 프로그램들로서 (예컨대, 하나 이상의 컴퓨터 시스템들 상에서 실행하는 하나 이상의 프로그램들로서), 하나 이상의 프로세서들 상에서 실행하는 하나 이상의 프로그램들로서 (예컨대, 하나 이상의 마이크로프로세서들 상에서 실행하는 하나 이상의 프로그램들로서), 펌웨어로서, 또는 사실상 이들의 임의의 조합으로서 동등하게 구현될 수 있으며, 회로를 설계하는 것 및/또는 소프트웨어 및 또는 펌웨어용 코드를 작성 (write) 하는 것이 완전히 본 개시를 감안할 때 당업자의 기술 내에 있을 것임을 알 수 있을 것이다. 게다가, 당업자들은, 본원에서 설명하는 요지의 메카니즘들이 다양한 유형들의 프로그램 제품으로서 배포되는 것이 가능하고 본원에서 설명하는 요지의 예시적인 실시형태가 그 배포를 실제로 실행하는데 사용되는 특정 유형의 신호 베어링 매체에 상관없이 적용할 수 있음을, 명백히 알 수 있을 것이다. 신호 베어링 매체의 예들은 가요성 디스크, 하드 디스크 드라이브 (HDD), 컴팩트 디스크 (CD), 디지털 다기능 디스크 (DVD), 디지털 테이프, 컴퓨터 메모리 등과 같은 기록가능한 유형의 매체; 및 디지털 및/또는 아날로그 통신 매체와 같은 송신 유형의 매체 (예컨대, 광섬유 케이블, 도파관, 유선 통신 링크, 무선 통신 링크 등) 을 포함하지만, 이에 한정되지 않는다.
당업자들은, 본원에서 제시된 방식으로 디바이스들 및/또는 프로세스들을 기술하고 이후 엔지니어링 관례들 (engineering practice) 을 이용하여 이런 설명되는 디바이스들 및/또는 프로세스들을 데이터 프로세싱 시스템들에 통합하는 것이 당업계에서 일반적임을 알 수 있을 것이다. 즉, 본원에서 설명하는 디바이스들 및/또는 프로세스들 중 적어도 일 부분은 적당한 양의 실험을 통해서 데이터 프로세싱 시스템에 통합될 수 있다. 당업자들은, 대표적인 데이터 프로세싱 시스템이 일반적으로 시스템 유닛 하우징, 비디오 디스플레이 디바이스, 휘발성 및 비-휘발성 메모리와 같은 메모리, 마이크로프로세서들 및 디지털 신호 프로세서들과 같은 프로세서들, 운영 시스템들과 같은 계산 엔터티들 (computational entities), 드라이버들, 그래픽 사용자 인터페이스들, 및 애플리케이션들 프로그램들, 하나 이상의 상호작용 디바이스들, 예컨대 터치 패드 또는 스크린, 및/또는 피드백 루프들 및 제어 모터들을 포함한 제어 시스템들 (예컨대, 위치 및/또는 속도를 감지하는 피드백; 구성요소들 및/또는 양들을 이동시키거나 및/또는 조정하는 제어 모터들) 중 하나 이상을 포함함을 알 수 있을 것이다. 통상적인 데이터 프로세싱 시스템은 데이터 컴퓨팅/통신 및/또는 네트워크 컴퓨팅/통신 시스템들에서 일반적으로 발견되는 구성요소들과 같은, 임의의 적합한 시중에서 입수가능한 구성요소들을 이용하여 구현될 수도 있다.
본원에서 설명하는 요지는 종종 상이한 다른 구성요소들 내에 포함되거나, 또는 그와 접속된 상이한 구성요소들을 도시한다. 이런 도시된 아키텍쳐들은 단지 예시적이며, 실제는 동일한 기능을 달성하는 많은 다른 아키텍쳐들이 구현될 수 있는 것으로 이해되어야 한다. 개념적인 의미에서, 동일한 기능을 달성하기 위해 구성요소들의 임의의 배열이 원하는 기능이 달성되도록, 효과적으로 "연관된다". 그러므로, 특정의 기능을 달성하기 위해 본원에서 결합되는 임의의 2개의 구성요소들은 아키텍쳐들 또는 중간 (intermedial) 구성요소들과 무관하게, 원하는 기능이 달성되도록, 서로와 "연관되는" 것으로 간주될 수 있다. 이와 유사하게, 그렇게 연관된 임의의 2개의 구성요소들은 또한 원하는 기능을 달성하기 위해 서로에 "동작가능하게 접속된", 또는 "동작가능하게 커플링된" 것으로 간주될 수 있으며, 그렇게 연관되는 것이 가능한 임의의 2개의 구성요소들은 또한 원하는 기능을 달성하기 위해 서로에 "동작가능하게 커플링가능한" 것으로 간주될 수 있다. 동작가능하게 커플링가능한의 구체적인 예들은 물리적으로 짝지어질 수 있거나 및/또는 물리적으로 상호작용하는 구성요소들 및/또는 무선으로 상호작용가능한 및/또는 무선으로 상호작용하는 구성요소들 및/또는 논리적으로 상호작용하는 및/또는 논리적으로 상호작용가능한 구성요소들을 포함하지만 이에 한정되지 않는다.
본원에서 실질적으로 임의의 복수 및/또는 단수 용어들의 사용과 관련하여, 당업자들은 상황 및/또는 애플리케이션에 적합하게 복수형으로부터 단수형으로 및/또는 단수형으로부터 복수형으로 전환될 수 있다. 본원에서는 명확성을 위해 여러 단수/복수 순열 (permutation) 들이 명확하게 제시될 수도 있다.
당업자들에 의해, 일반적으로, 본 명세서에서 그리고 특히 첨부된 청구항들 (예를 들어, 첨부된 청구항들의 본문) 에서 사용되는 용어는 일반적으로 "개방적인 (open) " 용어들 (예를 들어, "포함하는 (including) " 이라는 용어는 "포함하지만 한정되지 않는" 으로 해석되어야 하며, "가지는 (having) " 이라는 용어는 "적어도 가지는" 으로 해석되어야 하며, "포함한다" 라는 용어는 "포함하지만 한정되지 않는다" 로 해석되어야 한다) 로서 의도되는 것으로 이해되어야 할 것이다. 당업자들에 의해 또한, 도입된 청구항 기재의 구체적인 개수가 의도되는 경우, 이런 의도는 청구항에 명시적으로 기재될 것이며, 이런 기재 (recitation) 의 부재 시 이런 의도가 없는 것으로, 이해되어야 할 것이다. 예를 들어, 이해에 대한 도움으로서, 다음 첨부된 청구항들은 청구항 기재들을 도입하기 위해 도입 어구들 "적어도 하나의" 및 "하나 이상의" 의 사용을 포함할 수도 있다. 그러나, 이러한 어구의 사용은, 동일 청구항이 서두 어구 "하나 이상" 또는 "적어도 하나" 및 "a" 또는 "an" 과 같은 부정관사를 포함할 때에도, 부정관사 "a" 또는 "an" 에 의한 청구항 기재의 도입이 이렇게 도입된 청구항 기재를 포함하는 임의의 특정 청구항을 하나의 이러한 기재만을 포함하는 발명들로 한정한다는 것을 의미하는 것으로 해석되어서는 안되며 (예를 들어, "a" 및/또는 "an" 은 "적어도 하나" 또는 "하나 이상" 을 의미하도록 해석되어야 한다), 청구항 기재를 도입하는 데 사용되는 정관사의 사용에 대해서도 동일하게 유효하다. 게다가, 도입된 청구항 기재의 구체적인 개수가 명시적으로 기재되더라도, 당업자들은 이러한 기재가 적어도 기재된 수를 의미하는 것으로 해석되어야 함을 알 수 있을 것이다 (예를 들어, 다른 수식어 없이, "2 개의 기재" 에 대한 그대로의 기재는, 적어도 2 개의 기재들 또는 2 개 이상의 기재들을 의미한다). 더욱이, "A, B 및 C 중 적어도 하나 등" 과 유사한 관례가 사용되는 경우, 일반적으로 이러한 구성은 당업자가 그 관례를 이해할 것이라는 의미로 의도된다 (예를 들어, "A, B 및 C 중 적어도 하나를 갖는 시스템" 은 A 만을, B 만을, C 만을, A 와 B 를 함께, A 와 C 를 함께, B 와 C 를 함께, 및/또는 A, B 및 C 를 함께 등을 갖는 시스템을 포함하지만 이에 한정되지 않을 것이다). "A, B 또는 C 중 적어도 하나 등" 과 유사한 관례가 사용되는 경우, 일반적으로 이러한 구성은 당업자가 그 관례를 이해할 것이라는 의미로 의도된다 (예를 들어, "A, B 또는 C 중 적어도 하나를 갖는 시스템" 은 A 만을, B 만을, C 만을, A 및 B 를 함께, A 및 C 를 함께, B 및 C 를 함께, 및/또는 A, B 및 C 를 함께 갖는 시스템 등을 포함하지만 이에 한정되지 않을 것이다). 또한, 당업자들은, 상세한 설명, 청구항들 또는 도면들에서, 2 개 이상의 택일적 용어를 제시하는 사실상 임의의 이접 단어 및/또는 어구는 용어들 중 하나, 용어들 중 어느 하나 또는 양자의 용어 모두를 포함할 가능성들을 고려하도록 이해되어야 하는 것으로, 이해해야 할 것이다. 예를 들어, 어구 "A 또는 B" 는 "A" 또는 "B" 또는 "A 및 B" 의 가능성을 포함하도록 이해되어야 할 것이다.
명세서에서 "일 구현 (an implementation)", "하나의 구현 (one implementation)", "일부 구현들 (some implementations)", 또는 "다른 구현들 (other implementations)" 에 대한 참조는 하나 이상의 구현들과 관련하여 설명된 특정의 특성, 구조, 또는 특징이 적어도 일부 구현들에 포함될 수도 있지만 반드시 모든 구현들에 포함되지 않을 수도 있음을 의미할 수도 있다. 선행하는 설명에서 "일 구현 (an implementation)", "하나의 구현 (one implementation)", "일부 구현들 (some implementations)" 의 여러 출현들은 모두 동일한 구현들을 반드시 언급하는 것은 아니다.
본원에서는 어떤 예시적인 기법들이 여러 방법들 및 시스템들을 이용하여 설명되고 도시되지만, 당업자들은, 여러 다른 변경들이 이루어질 수도 있으며, 청구된 요지로부터 일탈함이 없이, 균등물들로 대체될 수도 있는 것으로 이해해야 한다. 게다가, 많은 변경들이 특정의 상황을 청구된 요지의 교시들에 적응시키기 위해서 본원에서 설명하는 중심 컨셉으로부터 일탈함이 없이 이루어질 수도 있다. 따라서, 청구된 요지가 개시된 특정의 예들에 한정되는 것이 아니라, 이런 청구된 요지가 또한 첨부된 청구항들 및 그의 균등물들의 범위 내에 들어가는 모든 구현들을 포함할 수 있는 것으로 의도된다.

Claims (21)

  1. 오브젝트의 하나 이상의 2차원 이미지들의 분석에 적어도 부분적으로 기초하여, 전자 이미지 캡쳐 디바이스에 의해, 상기 오브젝트의 증강 현실 표현 (augmented reality representation) 을 결정하는 것으로서, 상기 증강 현실 표현은 복수의 표면 가설 (surface hypothesis) 들을 포함하는, 상기 오브젝트의 증강 현실 표현을 결정하는 것;
    개개의 표면 가설들과 연관되는 하나 이상의 신뢰도 값들을 결정하는 것;
    복수의 표면 가설들로부터 하나 이상의 관심 표면 영역들을 식별하기 위해 상기 하나 이상의 신뢰도 값들을 하나 이상의 임계 신뢰도 기준들과 비교하는 것; 및
    상기 전자 이미지 캡쳐 디바이스의 디스플레이를 통해서, 상기 오브젝트의 하나 이상의 추가적인 2차원 이미지들을 캡쳐하는 것에 대한 가이던스 (guidance) 를 디스플레이하는 것으로서, 상기 가이던스는 식별된 상기 관심 표면 영역들에 적어도 부분적으로 기초하는, 상기 가이던스를 디스플레이하는 것을 포함하는, 방법.
  2. 제 1 항에 있어서,
    개개의 관심 표면 영역들과 연관되는 하나 이상의 시야 콘들 (viewing cones) 을 결정하는 것; 및
    품질 레벨 입력에 적어도 부분적으로 기초하여 상기 시야 콘들 중 하나 이상과 연관되는 뷰 범위 및 방위 (orientation) 를 결정하는 것을 더 포함하고,
    상기 가이던스는 상기 시야 콘들 중 하나 이상과 연관되는 상기 뷰 범위 및 방위에 적어도 부분적으로 기초하는, 방법.
  3. 제 2 항에 있어서,
    상기 하나 이상의 시야 콘들은 정의된 시야각에 의해 경계가 지워지고 표면 법선 벡터에 의해 중심이 맞춰진 정의된 시야 영역 (viewing area) 을 개별적으로 포함하는, 방법.
  4. 제 1 항에 있어서,
    실시간 비디오 데이터를 모니터링하는 것; 및
    상기 실시간 비디오 데이터에 적어도 부분적으로 기초하여 상기 전자 이미지 캡쳐 디바이스와 상기 오브젝트 사이의 실시간 상대 위치 및 방위를 결정하는 것을 더 포함하며,
    상기 가이던스는 상기 전자 이미지 캡쳐 디바이스와 상기 오브젝트 사이의 상기 결정된 실시간 상대 위치 및 방위에 적어도 부분적으로 기초하는, 방법.
  5. 제 1 항에 있어서,
    상기 증강 현실 표현은 상기 오브젝트의 3차원 이미지를 포함하는, 방법.
  6. 제 1 항에 있어서,
    상기 복수의 표면 가설들은 RANSAC (Random Sample Consensus Surface Extraction) 알고리즘을 채용하여 컴퓨팅되는, 방법.
  7. 제 1 항에 있어서,
    상기 하나 이상의 임계 신뢰도 기준들은 다음 기준들, 즉, 영역당 픽셀 임계치, 불완전한 이미지 데이터 임계치, 및/또는 부재 (absent) 이미지 데이터 임계치 중 하나 이상을 포함하는, 방법.
  8. 제 1 항에 있어서,
    상기 가이던스는 상기 오브젝트의 상기 하나 이상의 추가적인 2차원 이미지들을 캡쳐하기 위한 하나 이상의 밴티지 포인트들 (vantage points) 을 나타내는, 방법.
  9. 제 1 항에 있어서,
    상기 가이던스는 개개의 표면 가설들과 연관되는 상기 신뢰도 값들을 나타내는, 방법.
  10. 제 1 항에 있어서,
    상기 오브젝트의 하나 이상의 2차원 이미지들이 선택되었다는 표시를 사용자로부터 수신하는 것을 더 포함하며,
    상기 전자 이미지 캡쳐 디바이스에 의해, 상기 오브젝트의 상기 증강 현실 표현을 결정하는 것은 상기 사용자로부터의 상기 표시에 적어도 부분적으로 기초하는, 방법.
  11. 전자 이미지 캡쳐 디바이스로서,
    오브젝트의 2차원 이미지들을 캡쳐하고 실시간 비디오 데이터를 캡쳐하도록 구성된 광 센서; 및
    제어 유닛을 포함하고,
    상기 제어 유닛은,
    상기 오브젝트의 하나 이상의 2차원 이미지들의 분석에 적어도 부분적으로 기초하여 상기 오브젝트의 증강 현실 표현 (augmented reality representation) 으로서, 복수의 표면 가설 (surface hypothesis) 들을 포함하는, 상기 오브젝트의 증강 현실 표현을 결정하고,
    개개의 표면 가설들과 연관되는 하나 이상의 신뢰도 값들을 결정하고,
    상기 복수의 표면 가설들로부터 하나 이상의 관심 표면 영역들을 식별하기 위해 상기 하나 이상의 신뢰도 값들을 하나 이상의 임계 신뢰도 기준들과 비교하고,
    상기 전자 이미지 캡쳐 디바이스의 디스플레이를 통해서, 상기 오브젝트의 하나 이상의 추가적인 2차원 이미지들을 캡쳐하는 것에 대한 가이던스 (guidance) 를 결정하도록 구성되며,
    상기 가이던스는 식별된 상기 관심 표면 영역들에 적어도 부분적으로 기초하는, 전자 이미지 캡쳐 디바이스.
  12. 제 11 항에 있어서,
    상기 제어 유닛은,
    개개의 관심 표면 영역들과 연관되는 하나 이상의 시야 콘들을 결정하고, 그리고
    품질 레벨 입력에 적어도 부분적으로 기초하여 상기 시야 콘들 중 하나 이상과 연관되는 뷰 범위 및 방위 (orientation) 를 결정하도록 추가로 구성되며,
    상기 가이던스는 상기 시야 콘들 중 하나 이상과 연관되는 상기 뷰 범위 및 방위에 적어도 부분적으로 기초하는, 전자 이미지 캡쳐 디바이스.
  13. 제 12 항에 있어서,
    상기 하나 이상의 시야 콘들은, 정의된 시야각에 의해 경계가 지워지고 표면 법선 벡터에 의해 중심이 맞춰진 정의된 시야 영역을 개별적으로 포함하는, 전자 이미지 캡쳐 디바이스.
  14. 제 11 항에 있어서,
    상기 제어 유닛은,
    실시간 비디오 데이터를 모니터링하고, 그리고
    상기 실시간 비디오 데이터에 적어도 부분적으로 기초하여 상기 전자 이미지 캡쳐 디바이스와 상기 오브젝트 사이의 실시간 상대 위치 및 방위를 결정하도록 추가로 구성되며,
    상기 가이던스는 상기 전자 이미지 캡쳐 디바이스와 상기 오브젝트 사이의 상기 결정된 실시간 상대 위치 및 방위에 적어도 부분적으로 기초하는, 전자 이미지 캡쳐 디바이스.
  15. 제 11 항에 있어서,
    상기 증강 현실 표현은 상기 오브젝트의 3차원 이미지를 포함하는, 전자 이미지 캡쳐 디바이스.
  16. 제 11 항에 있어서,
    상기 복수의 표면 가설들은 RANSAC (Random Sample Consensus Surface Extraction) 알고리즘을 채용하여 컴퓨팅되는, 전자 이미지 캡쳐 디바이스.
  17. 제 11 항에 있어서,
    상기 하나 이상의 임계 신뢰도 기준들은 다음 기준들, 즉, 단위 면적당 픽셀 임계치, 불완전한 이미지 데이터 임계치, 및/또는 부재 이미지 데이터 임계치 중 하나 이상을 포함하는, 전자 이미지 캡쳐 디바이스.
  18. 제 11 항에 있어서,
    상기 가이던스는 상기 오브젝트의 상기 하나 이상의 추가적인 2차원 이미지들을 캡쳐하기 위한 하나 이상의 밴티지 포인트들을 나타내는, 전자 이미지 캡쳐 디바이스.
  19. 제 11 항에 있어서,
    상기 가이던스는 개개의 표면 가설들과 연관되는 상기 신뢰도 값들을 나타내는, 전자 이미지 캡쳐 디바이스.
  20. 제 11 항에 있어서,
    상기 전자 이미지 캡쳐 디바이스는 디지털 카메라, 셀 폰, 개인 휴대 정보단말, 모바일 컴퓨팅 패드, 개인 미디어 플레이어 디바이스, 또는 무선 웹-워치 (web-watch) 디바이스를 포함하는, 전자 이미지 캡쳐 디바이스.
  21. 머신-판독가능 명령들이 저장된 신호 베어링 매체를 포함하는 물품으로서,
    상기 머신-판독가능 명령들은,
    하나 이상의 프로세서들에 의해 실행될 경우, 컴퓨팅 디바이스로 하여금,
    오브젝트의 하나 이상의 2차원 이미지들의 분석에 적어도 부분적으로 기초하여 상기 오브젝트의 증강 현실 표현 (augmented reality representation) 으로서, 복수의 표면 가설 (surface hypothesis) 들을 포함하는, 상기 오브젝트의 증강 현실 표현을 결정하고;
    개개의 표면 가설들과 연관된 하나 이상의 신뢰도 값들을 결정하고;
    상기 복수의 표면 가설들로부터 하나 이상의 관심 표면 영역들을 식별하기 위해 상기 하나 이상의 신뢰도 값들을 하나 이상의 임계 신뢰도 기준들과 비교하고; 그리고
    상기 전자 이미지 캡쳐 디바이스의 디스플레이를 통해서 상기 오브젝트의 하나 이상의 추가적인 2차원 이미지들을 캡쳐하는 것에 대한 가이던스 (guidance) 를 결정할 수 있도록 동작적으로 가능하게 하며,
    상기 가이던스는 식별된 상기 관심 표면 영역들에 적어도 부분적으로 기초하는, 물품.
KR1020137019405A 2011-06-08 2011-06-08 증강 현실 표현을 위한 2차원 이미지 캡쳐 KR101569600B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2011/039639 WO2012170023A1 (en) 2011-06-08 2011-06-08 Two-dimensional image capture for an augmented reality representation

Publications (2)

Publication Number Publication Date
KR20130115332A true KR20130115332A (ko) 2013-10-21
KR101569600B1 KR101569600B1 (ko) 2015-11-16

Family

ID=47292877

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137019405A KR101569600B1 (ko) 2011-06-08 2011-06-08 증강 현실 표현을 위한 2차원 이미지 캡쳐

Country Status (5)

Country Link
US (1) US9058687B2 (ko)
JP (1) JP5847924B2 (ko)
KR (1) KR101569600B1 (ko)
CN (1) CN103582893B (ko)
WO (1) WO2012170023A1 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190032501A (ko) * 2016-07-22 2019-03-27 알리바바 그룹 홀딩 리미티드 2차원 코드 내 위치 정보를 인지하기 위한 방법 및 시스템
KR20190037280A (ko) * 2016-07-27 2019-04-05 알리바바 그룹 홀딩 리미티드 2차원 코드 식별 방법 및 디바이스, 및 이동 단말기
KR20190067861A (ko) * 2016-10-14 2019-06-17 우니크페에드 아게 증강된 이미지 제작 시스템
US10740905B2 (en) 2016-10-14 2020-08-11 Uniqfeed Ag System for dynamically maximizing the contrast between the foreground and background in images and/or image sequences
US10832732B2 (en) 2016-10-14 2020-11-10 Uniqfeed Ag Television broadcast system for generating augmented images
US11087134B2 (en) 2017-05-30 2021-08-10 Artglass Usa, Llc Augmented reality smartglasses for use at cultural sites

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5924077B2 (ja) 2012-03-30 2016-05-25 ソニー株式会社 微小粒子分取装置及び微小粒子分取装置における軌道方向判定方法
WO2013145905A1 (ja) 2012-03-30 2013-10-03 ソニー株式会社 微小粒子分取装置及び該装置における流体ストリーム最適化方法
WO2014115409A1 (ja) 2013-01-28 2014-07-31 ソニー株式会社 微小粒子分取装置、微小粒子分取方法及びプログラム
US9460561B1 (en) 2013-03-15 2016-10-04 Bentley Systems, Incorporated Hypermodel-based panorama augmentation
US9761045B1 (en) 2013-03-15 2017-09-12 Bentley Systems, Incorporated Dynamic and selective model clipping for enhanced augmented hypermodel visualization
US20140355888A1 (en) * 2013-05-31 2014-12-04 Siemens Product Lifecycle Management Software Inc. Automatic detection of regular patterns of features
US9595125B2 (en) * 2013-08-30 2017-03-14 Qualcomm Incorporated Expanding a digital representation of a physical plane
US9286718B2 (en) * 2013-09-27 2016-03-15 Ortery Technologies, Inc. Method using 3D geometry data for virtual reality image presentation and control in 3D space
US8818081B1 (en) 2013-10-16 2014-08-26 Google Inc. 3D model updates using crowdsourced video
US10309891B2 (en) 2013-10-16 2019-06-04 Sony Corporation Particle sorting apparatus, particle sorting method, and program
US9508186B2 (en) * 2013-11-07 2016-11-29 Autodesk, Inc. Pre-segment point cloud data to run real-time shape extraction faster
JP6465036B2 (ja) * 2014-02-13 2019-02-06 ソニー株式会社 粒子分取装置、粒子分取方法、プログラム及び粒子分取システム
US9430038B2 (en) * 2014-05-01 2016-08-30 Microsoft Technology Licensing, Llc World-locked display quality feedback
WO2015168847A1 (en) * 2014-05-05 2015-11-12 Harman International Industries, Incorporated Playback control
CN105531625B (zh) 2014-05-27 2018-06-01 联发科技股份有限公司 投射显示部件和电子装置
CN104143212A (zh) * 2014-07-02 2014-11-12 惠州Tcl移动通信有限公司 基于穿戴设备的增强现实方法及系统
JP6657625B2 (ja) 2014-09-05 2020-03-04 ソニー株式会社 液滴分取装置、液滴分取方法及びプログラム
CN108139312B (zh) 2015-10-19 2021-02-05 索尼公司 图像处理设备、微粒分选设备和图像处理方法
US9652896B1 (en) 2015-10-30 2017-05-16 Snap Inc. Image based tracking in augmented reality systems
US9984499B1 (en) 2015-11-30 2018-05-29 Snap Inc. Image and point cloud based tracking and in augmented reality systems
KR102434406B1 (ko) * 2016-01-05 2022-08-22 한국전자통신연구원 공간 구조 인식을 통한 증강 현실 장치 및 그 방법
US20170280130A1 (en) * 2016-03-25 2017-09-28 Microsoft Technology Licensing, Llc 2d video analysis for 3d modeling
JP2017187882A (ja) 2016-04-04 2017-10-12 セイコーエプソン株式会社 画像処理に用いられるコンピュータープログラム
CN107798704B (zh) * 2016-08-30 2021-04-30 成都理想境界科技有限公司 一种用于增强现实的实时图像叠加方法及装置
US10585939B2 (en) * 2016-10-11 2020-03-10 International Business Machines Corporation Real time object description service integrated with knowledge center on augmented reality (AR) and virtual reality (VR) devices
US10319149B1 (en) 2017-02-17 2019-06-11 Snap Inc. Augmented reality anamorphosis system
US10074381B1 (en) 2017-02-20 2018-09-11 Snap Inc. Augmented reality speech balloon system
US10387730B1 (en) 2017-04-20 2019-08-20 Snap Inc. Augmented reality typography personalization system
US10740974B1 (en) 2017-09-15 2020-08-11 Snap Inc. Augmented reality system
US10552665B2 (en) 2017-12-12 2020-02-04 Seiko Epson Corporation Methods and systems for training an object detection algorithm using synthetic images
US10410089B2 (en) * 2018-01-19 2019-09-10 Seiko Epson Corporation Training assistance using synthetic images
US10769437B2 (en) 2018-04-10 2020-09-08 Seiko Epson Corporation Adaptive sampling of training views
US10878285B2 (en) 2018-04-12 2020-12-29 Seiko Epson Corporation Methods and systems for shape based training for an object detection algorithm
JP7195785B2 (ja) * 2018-06-29 2022-12-26 キヤノン株式会社 3次元形状データを生成する装置、方法、及びプログラム
US10997760B2 (en) 2018-08-31 2021-05-04 Snap Inc. Augmented reality anthropomorphization system
US10634918B2 (en) 2018-09-06 2020-04-28 Seiko Epson Corporation Internal edge verification
JP7182976B2 (ja) 2018-09-27 2022-12-05 キヤノン株式会社 情報処理装置、情報処理方法、およびプログラム
US11030811B2 (en) 2018-10-15 2021-06-08 Orbit Technology Corporation Augmented reality enabled layout system and method
US10872459B2 (en) 2019-02-05 2020-12-22 X Development Llc Scene recognition using volumetric substitution of real world objects
CN110415331B (zh) * 2019-06-14 2022-08-19 中国电建集团昆明勘测设计研究院有限公司 一种基于点云数据的轮廓或孔洞快速检测判别和孔洞修补方法
US11248914B2 (en) 2019-06-20 2022-02-15 Lyft, Inc. Systems and methods for progressive semantic mapping
CN111596594B (zh) 2020-06-08 2021-07-23 厦门理工学院 一种全景大数据应用监测管控系统

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69823116D1 (de) 1997-08-05 2004-05-19 Canon Kk Bildverarbeitungsverfahren und -gerät
WO2004038657A2 (en) * 2002-10-22 2004-05-06 Artoolworks Tracking a surface in a 3-dimensional scene using natural visual features of the surface
US7680300B2 (en) * 2004-06-01 2010-03-16 Energid Technologies Visual object recognition and tracking
EP1782228A1 (en) * 2004-08-03 2007-05-09 Silverbrook Research Pty. Ltd Walk-up printing
JP4926817B2 (ja) 2006-08-11 2012-05-09 キヤノン株式会社 指標配置情報計測装置および方法
NO327279B1 (no) * 2007-05-22 2009-06-02 Metaio Gmbh Kamerapositurestimeringsanordning og- fremgangsmate for foroket virkelighetsavbildning
EP2201495B1 (en) * 2007-10-12 2013-03-27 MVTec Software GmbH Computer vision cad models
US8180396B2 (en) 2007-10-18 2012-05-15 Yahoo! Inc. User augmented reality for camera-enabled mobile devices
US20100045701A1 (en) 2008-08-22 2010-02-25 Cybernet Systems Corporation Automatic mapping of augmented reality fiducials
CN101520849B (zh) * 2009-03-24 2011-12-28 上海水晶石信息技术有限公司 基于图像特征点提取与随机树分类的增强现实方法及系统
US8688443B2 (en) * 2009-12-23 2014-04-01 At&T Intellectual Property I, L.P. Multimodal augmented reality for location mobile information service
EP2339537B1 (en) * 2009-12-23 2016-02-24 Metaio GmbH Method of determining reference features for use in an optical object initialization tracking process and object initialization tracking method
US9508191B2 (en) * 2010-07-23 2016-11-29 Pacific Data Images Llc Optimal point density using camera proximity for point-based global illumination
CN101976464B (zh) * 2010-11-03 2013-07-31 北京航空航天大学 基于单应性矩阵的多平面动态的增强现实注册的方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190032501A (ko) * 2016-07-22 2019-03-27 알리바바 그룹 홀딩 리미티드 2차원 코드 내 위치 정보를 인지하기 위한 방법 및 시스템
US10685201B2 (en) 2016-07-22 2020-06-16 Alibaba Group Holding Limited Method and system for recognizing location information in two-dimensional code
KR20190037280A (ko) * 2016-07-27 2019-04-05 알리바바 그룹 홀딩 리미티드 2차원 코드 식별 방법 및 디바이스, 및 이동 단말기
US11393017B2 (en) 2016-07-27 2022-07-19 Advanced New Technologies Co., Ltd. Two-dimensional code identification method and device, and mobile terminal
KR20190067861A (ko) * 2016-10-14 2019-06-17 우니크페에드 아게 증강된 이미지 제작 시스템
US10740905B2 (en) 2016-10-14 2020-08-11 Uniqfeed Ag System for dynamically maximizing the contrast between the foreground and background in images and/or image sequences
US10805558B2 (en) 2016-10-14 2020-10-13 Uniqfeed Ag System for producing augmented images
US10832732B2 (en) 2016-10-14 2020-11-10 Uniqfeed Ag Television broadcast system for generating augmented images
US11087134B2 (en) 2017-05-30 2021-08-10 Artglass Usa, Llc Augmented reality smartglasses for use at cultural sites

Also Published As

Publication number Publication date
JP5847924B2 (ja) 2016-01-27
US9058687B2 (en) 2015-06-16
JP2014520298A (ja) 2014-08-21
US20120314096A1 (en) 2012-12-13
CN103582893A (zh) 2014-02-12
CN103582893B (zh) 2017-10-13
WO2012170023A1 (en) 2012-12-13
KR101569600B1 (ko) 2015-11-16

Similar Documents

Publication Publication Date Title
KR101569600B1 (ko) 증강 현실 표현을 위한 2차원 이미지 캡쳐
EP2992508B1 (en) Diminished and mediated reality effects from reconstruction
TWI619088B (zh) 圖像資料處理系統和相關方法以及相關圖像融合方法
TWI583176B (zh) 具有功率有效深度感測器運用之即時三維重建
US9948911B2 (en) Method and apparatus for efficient depth image transformation
US11663733B2 (en) Depth determination for images captured with a moving camera and representing moving features
US9674507B2 (en) Monocular visual SLAM with general and panorama camera movements
CN115699114B (zh) 用于分析的图像增广的方法和装置
CN110322542B (zh) 重建真实世界3d场景的视图
US11004267B2 (en) Information processing apparatus, information processing method, and storage medium for generating a virtual viewpoint image
AU2017254859A1 (en) Method, system and apparatus for stabilising frames of a captured video sequence
US10484599B2 (en) Simulating depth of field
US20210342971A1 (en) Photogrammetric alignment for immersive content production
JP2008217593A (ja) 被写体領域抽出装置及び被写体領域抽出プログラム
JP2018033107A (ja) 動画の配信装置及び配信方法
KR101529820B1 (ko) 월드 좌표계 내의 피사체의 위치를 결정하는 방법 및 장치
US8891857B2 (en) Concave surface modeling in image-based visual hull
JP2014529823A (ja) グラフマッチングおよびサイクル検出による自動モデル初期化を用いた線トラッキング
US11770551B2 (en) Object pose estimation and tracking using machine learning
JP2012173858A (ja) 全方位画像生成方法、画像生成装置およびプログラム
Lin et al. Fast intra-frame video splicing for occlusion removal in diminished reality
US20230326136A1 (en) Apparatus and methods for image reconstruction using machine learning processes
US20230360333A1 (en) Systems and methods for augmented reality video generation

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20181129

Year of fee payment: 4