KR102433857B1 - 혼합 현실에서 동적 가상 콘텐츠들을 생성하기 위한 디바이스 및 방법 - Google Patents

혼합 현실에서 동적 가상 콘텐츠들을 생성하기 위한 디바이스 및 방법 Download PDF

Info

Publication number
KR102433857B1
KR102433857B1 KR1020197021616A KR20197021616A KR102433857B1 KR 102433857 B1 KR102433857 B1 KR 102433857B1 KR 1020197021616 A KR1020197021616 A KR 1020197021616A KR 20197021616 A KR20197021616 A KR 20197021616A KR 102433857 B1 KR102433857 B1 KR 102433857B1
Authority
KR
South Korea
Prior art keywords
real
scene
world
scenario
constraint
Prior art date
Application number
KR1020197021616A
Other languages
English (en)
Other versions
KR20190100305A (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 인터디지털 씨이 페이튼트 홀딩스, 에스에이에스
Priority to KR1020227028124A priority Critical patent/KR102555214B1/ko
Publication of KR20190100305A publication Critical patent/KR20190100305A/ko
Application granted granted Critical
Publication of KR102433857B1 publication Critical patent/KR102433857B1/ko

Links

Images

Classifications

    • 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
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2021Shape modification

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Architecture (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

실제 3D 장면의 표현에 중첩될 동적 가상 콘텐츠(들)는 실행시간 전에 정의되고 실세계 제약들(23)을 포함하는 시나리오를 따른다. 실세계 정보(22)는 실제 3D 장면에서 캡처되고, 시나리오는 실세계 제약들의 존재 시에 실행시간(14)에서 실행된다. 실세계 제약들이 실세계 정보로부터 식별되지 않을 때(12), 실제 3D 장면의 표현의 가상적으로 적응된 3D 장면으로의 변환은 시나리오를 실행하기 전에 수행되어(13), 가상적으로 적응된 3D 장면이 이러한 제약들을 충족시키고, 시나리오는 실제 3D 장면 대신에 실제 3D 장면을 대체하는 가상적으로 적응된 3D 장면에서 실행된다. 혼합 현실 애플리케이션.

Description

혼합 현실에서 동적 가상 콘텐츠들을 생성하기 위한 디바이스 및 방법
본 발명은 컴퓨터 생성(CG) 콘텐츠가 실세계 뷰의 상단에만 오버레이되는 것이 아니라, 실세계 환경과 실제로 상호작용하여 디지털 및 물리적 현실들이 함께 매끄럽게 섞이는 혼합 현실(MR) 분야에 관한 것이다.
증강 현실(AR) 애플리케이션들은 그 요소들이 비디오 또는 그래픽과 같은 CG 콘텐츠에 의해 증강되는 실세계 환경의 라이브 뷰를 나타낸다. MR에서, CG 콘텐츠는 또한 실세계 환경과 상호작용한다.
AR/MR 애플리케이션들에서, 시각적 CG 콘텐츠는 주어진 위치에서 실세계 뷰에 삽입된다. 이 위치는 일반적으로 미리 정의된 시각적 2D/3D 패턴(예를 들어, 산업용 애플리케이션들)에 대해 상대적으로 정의되거나, 공간 좌표들(예를 들어, 실외 위치 기반 애플리케이션들) 또는 스크린 좌표들(예를 들어, Google Glass 애플리케이션들)에 의해 미리 결정되거나, 또는 사용자(예를 들어, 상호작용적 애플리케이션들)에 의해 수동으로 선택된다.
그러나, 진보된 애플리케이션들에서, 가상 장면들은 준비된 애니메이션 콘텐츠를 포함할 수 있다. 이것은 단일 평면 및 감소된 점유 부피에 기반한 애니메이션(예를 들어, 제자리에서 깡충 뛰는 캐릭터 또는 빙빙 도는 댄서)으로부터 가능한 상호작용들 및 복잡한 궤적들(예를 들어, 캐릭터는 처음 위치로부터 제2 위치로 평면 위를 걸어가서 그 위치에서 오브젝트를 움켜잡은 후, 그 방향을 바꾸어 다른 것 뒤에 오브젝트를 숨기러 가며, 그 후 그 방향을 다시 바꾸고 갑자기 구멍에 빠짐)을 갖는 수개의 캐릭터들 및/또는 오브젝트들을 포함하는 상이한 평면들에 기반한, 복잡한 시나리오로 제작된 애니메이션으로 확장한다.
양호한 사용자 경험, 몰입감 및 현실성을 위해, 이러한 복잡한 가상 애니메이션 콘텐츠는 실제 환경과 공간적으로 상호작용해야 한다: 캐릭터가 걷는 평면은 충분히 커야 하고 충분한 자유 장소를 갖는 실제 평면 표면, 예를 들어 테이블일 수 있고, 가리고 있는 오브젝트는 테이블 상의 실제 오브젝트일 수 있고, 구멍은 테이블의 가장자리에 대응할 수 있으며, 기타 등등이다.
이는 실제 환경의 기하구조 및 애니메이션 CG 콘텐츠가 아티스트에 의해 생성되는 실제 요소들의 존재 또는 부재에 대한 이러한 종류의 강한 가정 및 제약들에 기반한다. 그러나, 실제 환경이 제어되지 않는다면 이러한 복잡한 MR 애니메이션을 효율적으로 렌더링하는 것은 문제가 된다. 예를 들어, 수평 장소는 예상된 것보다 훨씬 더 작거나 훨씬 더 클 수 있고, 수평 평면은 누락 가림물들과 같은 기하학적 일탈들 없이도 애니메이션을 수행하기에 충분한 자유 장소가 남아 있지 않도록 그 위에 많은 오브젝트들을 가질 수 있다. 이 상황은 또한 애니메이션 자체의 의미를 질문하는 것으로 이어질 수 있다.
알려진 솔루션은 가상 애니메이션을 실제 환경에 적응시키는 것으로 구성된다. 이것은 2개의 단계들, 즉 가상 애니메이션 콘텐츠를 준비할 때 애니메이션을 파라미터화하는 것, 및 나중의 전처리 단계에서 실제 환경을 스캐닝하고 그 레이아웃을 분석하여 가상 콘텐츠에 적용될 최적의 위치, 배향 및 스케일을 계산하는 것으로 이루어질 수 있다.
이와 관련하여, 증강 현실 콘텐츠가 로컬 환경의 실세계 공간 기하구조에서의 변화들에 적응되는, Daqri LLC의 특허 출원 US 2015/0187108호에서 유연한 향상된 솔루션이 개발되었다. 보다 정확하게는, 디바이스는 매핑된 실세계 공간 기하구조에 기반하여 실세계 공간 기하구조의 물리적 변화를 식별하고, 그 물리적 변화에 응답하여 가상 오브젝트를 수정할 수 있다. 이러한 수정은 가상 오브젝트의 크기, 형상, 위치, 또는 거동과 관련될 수 있다.
그러나, 이러한 기존의 솔루션들은 실제 환경이 애니메이션을 효율적으로 렌더링하기에 충분한 최소 요건들을 포함하는 것을 보장하지 않는다. 예를 들어, 가상 캐릭터가 걸을 수 있는 수평 평면이 누락될 수 있거나, 캐릭터가 움켜잡은 가상 오브젝트를 실제 오브젝트가 숨길 수 있다.
또한, US 2015/0187108호에서 제안된 바와 같이 가상 콘텐츠를 동적으로 적응시키는 것은 원하는 시나리오에 불리할 수 있다. 또한, 광범위한 실제 상황들에 적응될 정도로 충분히 유연한 시나리오들을 제공하는 것은 상당한 저장 및 계산 리소스들을 필요로 할 수 있다.
본 개시내용의 목적은 상당히 추가적인 저장 또는 계산 리소스들을 요구하지 않고, 유리하게도 광범위한 실제 상황들까지 MR 시나리오들의 유연한 적응을 가능하게 하는 것이다.
바람직한 실시예들에서, 다양한 제약들을 갖는 다수의 시나리오들이 이에 따라 실제 환경의 그라운드 상에서 실시간으로 실행될 수 있다.
이와 관련하여, 본 개시내용의 목적은 특히, 실제 3D 장면의 표현에 중첩될 적어도 하나의 동적 가상 콘텐츠를 생성하기 위한 디바이스이며, 동적 가상 콘텐츠(들)는 시나리오(들)의 실행시간 전에 정의되고 적어도 하나의 실세계 제약을 포함하는 적어도 하나의 시나리오를 따른다. 이러한 디바이스는,
실제 3D 장면에서 캡처된 실세계 정보를 수신하도록 적응된 적어도 하나의 입력부, 및
실세계 정보로부터 식별된 실세계 제약(들)의 존재 시에 실행시간에서 시나리오(들)를 실행하도록 구성된 적어도 하나의 프로세서를 포함한다.
본 개시내용에 따르면, 적어도 하나의 프로세서는, 적어도 하나의 실세계 제약이 실세계 정보로부터 식별되지 않을 때, 시나리오(들)를 실행하기 전에 실제 3D 장면의 표현의 가상적으로 적응된 3D 장면으로의 변환을 수행하여, 가상적으로 적응된 3D 장면이 제약(들)을 충족시키고, 실제 3D 장면에서 시나리오(들)를 실행하는 대신에 실제 3D 장면을 대체하는 가상적으로 적응된 3D 장면에서 시나리오(들)를 실행하도록 추가로 구성된다.
이에 의해, 디바이스는 유리하게도, 가상적으로 적응된 3D 장면에 대해 획득된 정보가 유효 실제 3D 장면에 관한 정보인 것처럼 작용하도록 구성되어, 일종의 고의적 시스템 오도에 이르게 한다. 즉, 계획된 시나리오들은 실세계의 표현에 적용되는 일부 예비 가상 패치들에 따라 유리하게도 정상적으로 실행될 수 있다.
MR 시나리오들은 환경에 대한 임의의 정확한 지식 없이, 또는 매우 다양하고 상이한 환경들, 예컨대 TV 세트 및 TV가 위치하는 테이블에 대해 더 높은 정확도 없이 업스트림 설계되었을 수 있다는 점에 유의할 수 있다. 이어서, 적응은 유리하게도 실행 장소에서 로컬적으로 실시되어 이러한 시나리오들이 작동할 수 있게 한다.
이하에서는, "적응된" 또는 "완성된" 환경 또는 실제 장면, 또는 "이동된" 또는 "변환된" 실제 오브젝트들에 대한 참조가 이루어질 것이다. 편의 및 간결성을 위해 사용되는 이러한 표현들은 실제 3D 장면이 가상 효과들을 통해, 시나리오를 실행하기 전에 그 표현의 관련된 변환을 받는다는 것을 의미하는 것으로 이해되어야 한다. 이러한 가상 효과들은 특히 추가들, 감산들, 컬러 또는 텍스처 수정들을 포함할 수 있다. 더 일반적으로, 이들은 현실 표현 상의 액션들로 인해 사용자가 실제 3D 장면을 인지하는 것에 대한 임의의 변화들을 포함한다.
이러한 표현은 특히 투명 또는 반투명 안경(직접 뷰)을 통할 수 있거나, 또는 실제 3D 장면의 이미지들을 캡처하는 카메라의 중개에 의할 수 있는, 사용자에게의 임의의 종류의 표현을 또한 의미하며, 이러한 이미지들은 사용자에 의해 스크린(간접 뷰) 상에서 시각화된다. 이러한 기술들은 관련 기술분야의 통상의 기술자에게 잘 알려져 있으므로 본 명세서에서는 전개되지 않을 것이다.
시나리오는 생성자에 의해 미리 설계된 CG 콘텐츠 애니메이션으로서 정의된다.
실제 3D 장면뿐만 아니라 가상적으로 적응된 3D 장면의 표현은 실시간으로 바람직하게 수행된다.
기존의 솔루션들과는 대조적으로, 그리고 실세계에 대한 가상 세계의 적응들에 이용할 통상의 기술자에게 놀랍게도, 본 디바이스는 가상 시나리오 제약들을 충족시키기 위해 실세계에 적용되는 것처럼 가상 수정들을 인위적으로 도입한다. 적용된 변환들이 실제로 가상 세계 영역에 남아 있지만, 이들은 실세계와 관련된 제약들을 정상적으로 충족시키기 위해 주어진 시나리오가 실행되기 전에 도입된다.
일 실시예에서, 실제 3D 장면의 표현의 변환은 임의의 시나리오 실행시간 전에 예비 조정 단계에서 수행된다.
다른 실시예에서, 그 표현의 변환은 전자의 시나리오의 실행시간 동안 수행되고, 하나 이상의 다음 시나리오를 예상한다. 이와 관련하여, 2개 이상의 장면들을 포함하는 주어진 시나리오의 상이한 연속적인 부분들은, 그 연속적인 부분들 각각이 적어도 하나의 각각의 실세계 제약과 연관되는 한, 가능하게는 별개의 시나리오들로서 간주될 수 있다.
향상된 버전에서, 시나리오의 한 부분을 다른 부분으로 나아가게 하는 것은 실제 3D 장면에서의 변화에 의해 트리거링된다(예를 들어, 실제 오브젝트는 환경에서 제거된다). 이것은 유리하게도 시나리오가 양쪽 부분들에서 유사한 특징들 및 실세계 제약들을 포함하지만, 제약들 중 적어도 하나가 실행시간 동안 수정되는 실제 3D 장면의 특이성들에 의존하는 경우도 포함한다. 그 후, 이러한 변화는, 이전에 개시된 바와 같이, MR 처리의 프레임에서 실제 3D 장면의 인지를 트릭킹하는 것에 의해 가상적으로 적응된 3D 장면에서 관련된 제약(들)을 충족시킴으로써 고려될 수 있다. 그 다음에, 변화 후의 시나리오의 부분은 그 자체로 "시나리오"로서 고려된다.
실제 3D 장면에서 캡처된 실세계 정보는 유리하게도 환경을 스캐닝하는 것으로부터 획득된 포인트 클라우드 또는 3D 모델을 포함한다. 또한, 적어도 하나의 프로세서는 유리하게도, 실제 3D 장면에 존재하는 오브젝트들을 그들의 유형, 위치, 크기 및 형상의 일부 또는 전부뿐만 아니라 자유 평면 영역들과 함께 특히 식별하는 것과 같이 환경 특이성들을 결정하도록 구성된다. 이것은 또한 유리하게도 MR 애플리케이션 요건들(특히 요소들 또는 자유 평면 영역들에 관련될 수 있는 실세계 제약들)을 분석하고 환경이 그 요건들을 부분적으로라도 충족시키는지를 체크하도록 구성된다.
또한, 적어도 하나의 프로세서는 유리하게도 실행될 또는 현재 실행되고 있는 MR 애플리케이션을, 실제 3D 장면을 대체하는 가상적으로 적응된 3D 장면으로 업데이트하도록 구성된다.
바람직한 구현예에서, 적어도 하나의 실세계 제약은 적어도 2개이고 잠재적으로 상호작용하며, 적어도 하나의 프로세서는 가상적으로 적응된 3D 장면이 이러한 제약들을 충족시키도록 그 실세계 제약들에 대해 공동으로 변환을 수행하도록 추가로 구성된다.
일부 관련 실시예들에서, 공동 변환은 그 후 2개 이상의 제약들이 충족될 때까지 변환의 상이한 아이템들에 관한 여러 연속적인 시도들을 통해 반복적으로 실시된다.
다른 구현예에서, 적어도 하나의 실세계 제약은 적어도 2개이고, 잠재적으로 상호작용하며 중요도 순서에 따라 순위화된다. 적어도 하나의 프로세서는 적어도 하나의 최고 우선 순위를 갖는 제약(들)에 대해 우선으로 변환을 수행하고, 최고 우선 순위(들)를 갖는 실세계 제약들과 별개인 실세계 제약들 중 적어도 하나의 부재 시에 실행시간에서 시나리오를 실행하도록 추가로 구성된다.
그 결과, 일부 제약들은 충족될 수 있는 반면, 다른 제약들은 관련 시나리오의 실행에 있어서 덜 중요한 것으로 간주되는 한 충족되지 않는다.
바람직한 실시예들에 따르면, 단독으로 또는 임의의 적절한 조합으로 다음이 고려된다:
적어도 하나의 제약은 적어도 하나의 실세계 오브젝트의 존재를 포함하고, 적어도 하나의 프로세서는 실세계 오브젝트(들)의 가상 표현을 가상적으로 적응된 3D 장면에 추가하도록 구성되고;
적어도 하나의 제약은 적어도 하나의 실세계 오브젝트의 적어도 하나의 치수와 관련되고, 적어도 하나의 프로세서는 치수(들)에 대한 적어도 하나의 제약이 충족되도록 가상적으로 적응된 3D 장면에서 실세계 오브젝트(들)의 적어도 하나의 치수의 표현을 수정하도록 구성되고;
적어도 하나의 프로세서는 적어도 하나의 제약이 충족되도록 가상적으로 적응된 3D 장면에서 적어도 하나의 제약에 불리한 적어도 하나의 실세계 오브젝트의 가상 표현을 변환하도록 구성되고;
적어도 하나의 프로세서는 가상적으로 적응된 3D 장면에서 실세계 오브젝트(들)를 제거, 감소 및 이동시키는 것 중 적어도 하나에 의해 변환을 수행하도록 구성되며;
적어도 하나의 제약은 적어도 하나의 실세계 오브젝트와 관련되고, 적어도 하나의 프로세서는 실세계 오브젝트(들)에 대한 적어도 하나의 제약이 충족되도록 실세계 오브젝트(들)를 이동, 회전, 병진, 스케일링, 복제하는 것 중 적어도 하나에 의해 변환을 수행하도록 구성된다.
유리하게도, 변환은 가상적으로 적응된 3D 장면에서 적어도 하나의 영역을 소거하는 것을 포함하고, 적어도 하나의 프로세서는 가상적으로 적응된 3D 장면에서 적어도 하나의 영역을 복원하도록 추가로 구성된다.
이어서, 일부 불규칙성들이 가상 적응들에 의해, 예컨대 실제 3D 장면의 실제 오브젝트를 가상적으로 제거함으로써 도입되는 경우에도 연속성의 인지가 사용자에게 제공될 수 있다.
일부 구현예들에서, 적어도 하나의 프로세서는 변환을 수행하는데에 사용자가 명백하게 참여하게 하도록 추가로 구성된다.
이에 의해, 사용자는 자동 프로세스들을 완료할 수 있으며, 이는 특히 가능한 보다 사용자 친화적이거나 또는 맞춤형인 시나리오 실행들을 가능하게 한다.
유리하게도, 적어도 하나의 입력부는 또한 시나리오(들)를 수신하도록 적응되고, 디바이스는 가상적으로 적응된 3D 장면에서 시나리오(들)를 시각화하기 위해 사용자에게 가상적으로 적응된 3D 장면의 표현의 적어도 일부를 출력하도록 적응된 적어도 하나의 출력부를 더 포함한다.
본 개시내용은 또한 본 개시내용에 따른 디바이스를 포함하는 장치에 관한 것이며, 이 장치는 비디오 수신기, 모바일 폰, 태블릿 또는 증강 현실 헤드 장착 디스플레이 시스템이다.
본 개시내용의 다른 목적은 실제 3D 장면의 표현에 중첩될 적어도 하나의 동적 가상 콘텐츠를 생성하기 위한 디바이스이며, 동적 가상 콘텐츠(들)는 시나리오(들)의 실행시간 전에 정의되고 적어도 하나의 실세계 제약을 포함하는 적어도 하나의 시나리오를 따른다. 이러한 디바이스는,
실제 3D 장면에서 캡처된 실세계 정보를 수신하기 위한 수단, 및
실세계 정보로부터 식별된 실세계 제약(들)의 존재 시에 실행시간에서 시나리오(들)를 실행하기 위한 수단을 포함한다.
본 개시내용에 따르면, 실행하기 위한 수단은, 적어도 하나의 실세계 제약이 실세계 정보로부터 식별되지 않을 때, 시나리오(들)를 실행하기 전에 실제 3D 장면의 표현의 가상적으로 적응된 3D 장면으로의 변환을 수행하여 가상적으로 적응된 3D 장면이 제약(들)을 충족시키고, 실제 3D 장면에서 시나리오(들)를 실행하는 대신에 실제 3D 장면을 대체하는 가상적으로 적응된 3D 장면에서 시나리오(들)를 실행하도록 적응된다.
본 개시내용은 또한 실제 3D 장면의 표현에 중첩될 적어도 하나의 동적 가상 콘텐츠를 생성하기 위한 방법에 관한 것이며, 적어도 하나의 동적 가상 콘텐츠는 시나리오(들)의 실행시간 전에 정의되고 적어도 하나의 실세계 제약을 포함하는 적어도 하나의 시나리오를 따른다. 이 방법은,
실제 3D 장면에서 캡처된 실세계 정보를 수신하는 단계, 및
실세계 정보로부터 식별된 실세계 제약(들)의 존재 시에 실행시간에서 시나리오(들)를 실행하는 단계를 포함한다.
본 개시내용에 따르면, 이 방법은, 적어도 하나의 실세계 제약이 실세계 정보로부터 식별되지 않을 때, 시나리오(들)를 실행하기 전에 실제 3D 장면의 표현의 가상적으로 적응된 3D 장면으로의 변환을 수행하여 가상적으로 적응된 3D 장면이 적어도 하나의 제약을 충족시키는 단계, 및 실제 3D 장면에서 시나리오(들)를 실행하는 대신에 실제 3D 장면을 대체하는 가상적으로 적응된 3D 장면에서 시나리오(들)를 실행하는 단계를 더 포함한다.
이 방법은 유리하게도 본 개시내용의 구현 모드들 중 임의의 모드에 따른 디바이스에 의해 실행된다.
또한, 본 개시내용은 적어도 하나의 동적 가상 콘텐츠를 생성하기 위한 컴퓨터 프로그램에 관한 것이며, 이 컴퓨터 프로그램은 프로그램이 프로세서에 의해 실행될 때 위의 실행 모드들 중 임의의 모드에 따른 방법을 수행하도록 적응된 소프트웨어 코드를 포함한다.
또한, 본 개시내용은 본 개시내용에 따라 적어도 하나의 동적 가상 콘텐츠를 생성하기 위한 방법을 수행하도록 컴퓨터에 의해 실행가능한 명령어들의 프로그램을 유형적으로 구현하는, 컴퓨터에 의해 판독가능한 비일시적 프로그램 저장 디바이스에 관한 것이다.
이러한 비일시적 프로그램 저장 디바이스는 전자, 자기, 광학, 전자기, 적외선 또는 반도체 디바이스, 또는 이들의 임의의 적절한 조합일 수 있으며, 이에 한정되지 않는다. 이하의 휴대용 컴퓨터 디스켓, 하드 디스크, ROM, EPROM 또는 플래시 메모리, 휴대용 CD-ROM(Compact-Disc ROM)은, 보다 구체적인 예들을 제공하지만, 관련 기술분야의 통상의 기술자에 의해 용이하게 이해되는 바와 같이 단지 예시적인 것이며 포괄적인 목록이 아님을 이해해야 한다.
특정의 비제한적인 예시적 실시예들에 대한 이하의 설명을 읽어보면 본 개시내용이 보다 잘 이해될 것이고, 다른 구체적인 특징들 및 이점들이 드러날 것이며, 이 설명은 첨부된 도면들을 참조한다.
도 1은 본 개시내용에 따라, 동적 가상 콘텐츠들을 생성하기 위한 디바이스를 개략적으로 나타내는 블록도이다.
도 2는 도 1의 디바이스를 활용하도록 고려되는 사용자 환경의 예를 도시한다.
도 3은 도 1의 디바이스에 의해 실행되는 연속적인 혼합 현실 단계들을 도시하는 흐름도이다.
도 4는 도 1에 나타낸 디바이스를 포함하는 MR 장치를 도해적으로 나타낸다.
본 설명은 본 개시내용의 원리들을 예시한다. 따라서, 관련 기술분야의 통상의 기술자는 본 명세서에서 명시적으로 설명되거나 도시되지 않았더라도, 본 개시내용의 원리들을 구체화하고 그 사상 및 범위 내에 포함되는 다양한 구성들을 안출할 수 있을 것이라는 점이 인식될 것이다.
본 명세서에서 언급된 모든 예들 및 조건적 언어는 독자로 하여금 본 발명자가 해당 분야의 증진을 위해 기여한 본 개시내용의 원리들 및 개념들을 이해하는 것을 도울 교육적 목적으로 의도되었으며, 이와 같이 구체적으로 언급된 예들 및 조건들에 제한되지 않는 것으로 해석되어야 한다.
또한, 본 개시내용의 원리들, 양태들 및 실시예들 그리고 그 특정 예들을 언급한 본 명세서의 모든 진술들은 그 구조적 및 기능적 균등물들 모두를 포함하는 것으로 의도된다. 또한, 이러한 균등물들은 현재 알려진 균등물들뿐만 아니라 차후에 개발되는 균등물들, 즉, 구조와 무관하게, 동일한 기능을 수행하는 임의의 개발된 요소들을 포함하는 것으로 의도된다.
따라서, 예를 들어, 본 명세서에서 제시된 블록도들이 본 개시내용의 원리들을 구현하는 예시적인 회로의 개념도들을 나타낸다는 점이 관련 기술분야의 통상의 기술자에 의해 인식될 것이다. 마찬가지로, 임의의 흐름도 등은 컴퓨터 판독가능한 매체에 실질적으로 나타내어질 수 있고, 따라서 컴퓨터 또는 프로세서가 명시적으로 도시되는지의 여부에 관계없이 이러한 컴퓨터 또는 프로세서에 의해 실행될 수 있는 다양한 프로세스들을 나타낸다는 것을 인식할 것이다.
"적응되는" 및 "구성되는"이라는 용어들은 본 개시내용에서 물질을 통해 실시되는지 또는 소프트웨어 수단(펌웨어 포함)을 통해 실시되는지 여부와 관계없이, 본 디바이스의 초기 구성, 이후의 적응 또는 보완 또는 이들의 임의의 조합을 광범위하게 포함하는 것으로서 사용된다.
도면들에 도시된 다양한 요소들의 기능들은 적절한 소프트웨어와 관련하여 소프트웨어를 실행할 수 있는 하드웨어뿐만 아니라 전용 하드웨어의 이용을 통해 제공될 수 있다. 프로세서에 의해 제공될 경우, 그 기능들은 단일의 전용 프로세서, 단일의 공유 프로세서, 또는 복수의 개별 프로세서들에 의해 제공될 수 있으며, 이들 중 일부는 공유될 수 있다. 또한, "프로세서"라는 용어의 명시적 이용은 소프트웨어를 실행할 수 있는 하드웨어만을 전적으로 지칭하는 것으로 해석되어서는 안되며, 예를 들어 컴퓨터, 마이크로프로세서, 집적 회로, 또는 프로그래머블 로직 디바이스(PLD)를 포함할 수 있는 처리 디바이스를 일반적으로 지칭하는 것이다. 또한, 연관된 및/또는 그 결과의 기능들을 수행할 수 있는 명령어들 및/또는 데이터는, 예를 들어, 집적 회로, 하드 디스크, CD(Compact Disc), DVD(Digital Versatile Disc)와 같은 광학 디스크, RAM(Random-Access Memory) 또는 ROM 메모리와 같은 임의의 프로세서 판독가능한 매체에 저장될 수 있다. 명령어들은 특히 하드웨어, 소프트웨어, 펌웨어 또는 이들의 임의의 조합에 저장될 수 있다.
도면들에 도시된 요소들은 하드웨어, 소프트웨어 또는 그 조합들의 다양한 형태들로 구현될 수 있는 것이 이해되어야 한다. 바람직하게는, 이들 요소들이 프로세서, 메모리 및 입출력 인터페이스들을 포함할 수 있는 하나 이상의 적절히 프로그램된 범용 디바이스 상에서 하드웨어와 소프트웨어의 조합으로 구현된다.
본 개시내용은 도 1에 도시된 바와 같이 동적 가상 콘텐츠들을 생성하기 위한 디바이스(1)의 특정 기능적 실시예를 참조하여 설명될 것이다.
디바이스(1)는 실제 3D 장면의 표현에 중첩되고 적어도 하나의 시나리오를 따르는 적어도 하나의 동적 가상 콘텐츠를 생성하도록 적응되고, 혼합 현실(MR)과 관련된다.
디바이스(1)는 유리하게도 전술한 기능들을 수행하여 전술한 효과들 또는 결과들을 생성하도록 설계, 구성 및/또는 적응된 장치 또는 장치의 물리적 부분이다. 대안적인 구현예들에서, 디바이스(1)는 동일한 머신으로 그룹화되는지 또는 상이한, 가능하게는 원격 머신들로 그룹화되는지 여부에 관계없이, 장치 또는 장치의 물리적 부분들의 세트로서 구현된다.
다음에서, 모듈들은 물질적, 물리적으로 구별되는 컴포넌트들이 아닌 기능적 엔티티들로서 이해되어야 한다. 그 결과, 이들은 동일한 유형의 구체적인 컴포넌트로 함께 그룹화되거나, 수개의 이러한 컴포넌트들로 분산된 것으로 구현될 수 있다. 또한, 이들 모듈들 각각은 가능하게는 적어도 2개의 물리적 컴포넌트들 사이에서 자체 공유된다. 또한, 모듈들은 하드웨어, 소프트웨어, 펌웨어 또는 이들의 임의의 혼합된 형태로 구현된다. 이들은 바람직하게는 디바이스(1)의 적어도 하나의 프로세서 내에서 구현된다.
디바이스(1)는, 예를 들어 실제 3D 장면의 카메라 캡처로부터 검색된 실세계 정보(22)를 분석하기 위한 모듈(11), 분석된 실세계 정보(22)에 대한 MR 시나리오(가상 애플리케이션(23))의 요건들을 분석하고 체크하기 위한 모듈(12), 실제 3D 장면의 표현에 적용되는 관련 가상 적응을 진행하기 위한 모듈(13), 및 그 적응으로부터 생기는 가상적으로 적응된 3D 장면에 적용되는 것으로서 시나리오를 실행하기 위한 모듈(14)을 포함한다. 모듈(13)의 출력은 가능하게는 모듈(12)로 복귀될 수 있어서, 만족하는 적응 솔루션이 발견될 때까지 적응들이 반복적으로 조정될 수 있다.
디바이스(1)와 상호작용하는 사용자 인터페이스(20)를 통해 사용자에 의해서 정보가 입력되고 검색될 수 있다. 사용자 인터페이스(20)는 데이터, 정보 또는 명령어들, 특히 관련 기술분야의 통상의 기술자에게 잘 알려진 바와 같은 스크린, 키보드, 트랙볼, 터치패드, 터치스크린, 확성기, 음성 인식 시스템과 같은 수단들 중 어느 것 또는 수개를 포함할 수 있는 시각적, 촉각적 및/또는 청각적 능력들을 입력하거나 검색하기 위한 임의의 적절한 수단을 포함한다.
디바이스(1)는 MR 시나리오 요건들에 대한 가상 적응을 수행하는데 전용되는 저장 리소스들(10)로부터 가상 툴들(21)을 제공받도록 또한 적응된다. 이러한 저장 리소스들(10)은 임의의 종류의 적절한 저장 수단으로부터 이용가능할 수 있으며, 특히 이러한 저장 수단은 가능하게는 SSD(Solid-State Disk) 내의 플래시 메모리와 같은 EEPROM(Electrically-Erasable Programmable Read-Only Memory) 또는 RAM일 수 있다.
디바이스(1)의 기능이 아래에 상세히 설명된다.
5.1 전제: 시나리오 정의
초기 단계에서, MR 애플리케이션 생성자는 시나리오를 정의한다. 생성자는 특히 시나리오에 관련된 실제 요소들 및 가상 요소들이 이들과 어떻게 상호작용하는지를 지정한다. 연속적인 시나리오 요소들의 예들은 다음과 같다:
- 제1 가상 돌이 떨어지고, 실제 큐브 상에서 튀며 실제 테이블 상에서 멈추고;
- 제2 가상 돌이 실제 빈 유리 제품에 충격을 주고;
- 가상 동물은 실제 테이블 상의 자유 평면 영역에 위치하는 미리 정의되고 수정불가능한 애니메이션을 갖고;
- 가상 캐릭터는 자유 영역에서 그라운드 위를 걷고, 실제 테이블 다리를 올라가고, 실제 테이블 상에서 걷고 가상 동물과 합류하며; 그 궤적은 실제 테이블 상의 자유 영역들에 의존한다.
이 시나리오를 이행하기 위해, 생성자는 실제 환경에 관한 일부 요건들을 지정한다. 이전 시나리오에 대한 요건들의 일부 예들이 아래에 열거되며, 그 장면은 실내에서 발생한다:
- 1.20 m × 0.60 m의 최소 크기를 갖는 테이블;
- 0.3 m × 0.2 m의 치수들을 갖고 테이블 중앙에 중심이 있는, 테이블 상의 자유 평면 영역;
- 테이블의 좌측 부분 상에 놓인, 0.10 m의 측부를 갖는 큐브;
- 테이블 상에 놓인 빈 유리 제품;
- 테이블의 좌측에 위치하고 테이블의 전방 좌측 다리를 포함하고, 0.6 m × 0.3 m의 치수들을 갖는, 그라운드 상의 자유 평면 영역.
요건들은 또한 특정 위치 또는 배향을 부과할 수 있다. 이들은 또한 "제약 레벨"에 의해 영향을 받을 수 있다. 즉, 일부 요건들은 강하게 제약하는 반면 다른 요건들은 덜 강하게 제약한다. 예를 들어, 강한 제약 요건은 1.20 m × 0.60 m의 크기를 갖는 테이블을 구비하는 것으로 구성되는데, 그 이유는 테이블이 존재하는 경우 요건을 충족시키기 위해 이들의 정확한 치수들을 가져야 하기 때문이다. 덜 제약하는 요건은, 그 정확한 위치가 부과되지 않기 때문에, 테이블 좌측에 놓인 0.10 m의 측부를 갖는 큐브를 구비하는 것으로 구성된다.
5.2 전제: 요건들의 계층적 분류
요건들은 바람직하게는 요건들 사이의 연결들에 관련된 계층적 방식으로 분류된다. 따라서, 각각의 요건은 계층적 레벨을 할당받고, 계층적 분류는 콘텐츠 작성 단계 내에서 콘텐츠 생성자에 의해 행해진다.
예를 들어 위의 요건들을 고려하면, 가장 중요한 요건은 첫 번째 요건("1.20 m × 0.60 m의 최소 크기를 갖는 테이블")이다. 4개의 다른 요건들은 테이블의 존재에 의존하지만, 서로 독립적이다. 따라서, 이들은 동일한 중요도, 즉 동일한 계층적 레벨을 갖는다. 따라서, 다음과 같이 분류된 표가 얻어진다:
1 1.20 m × 0.60 m의 최소 크기를 갖는 테이블
1.1 0.3 m × 0.2 m의 치수들을 갖고 테이블 중앙에 중심이 있는, 테이블 상의 자유 평면 영역
1.2 테이블의 좌측 부분 상에 놓인, 0.10 m의 측부를 갖는 큐브
1.3 테이블 상에 놓인 빈 유리 제품
1.4 테이블의 좌측에 위치하고 테이블의 전방 좌측 다리를 포함하고, 0.6 m × 0.3 m의 치수들을 갖는, 그라운드 상의 자유 평면 영역.
"큐브 상에 놓인 0.1 m의 반경과 0.3 m의 높이를 갖는 원통"과 같은 추가 요건이 포함되는 경우, 그 레벨은 이것이 요건 1.2의 충족에 의존하기 때문에 1.2.1이다.
5.3 환경 스캔 및 특이성 결정
다음 단계는 환경 스캔 및 관련 특이성들의 결정으로 구성된다. 이것은 특히 그 환경에 존재하는 오브젝트들(예를 들어, 테이블, 테이블 상에 놓인 유리 제품, 식물) 및 자유 평면 영역들과 같은 환경 특이성들을 검출하고 라벨링함으로써 환경 설명을 확립하는 것에 관한 것이다.
따라서, 사용자는 그 환경을 스캐닝하며, 이는 스캐닝된 장면의 포인트 클라우드를 제공하는, "Intel Real Sense"라는 명칭으로 상업화된 제품과 같은 깊이 센서를 구비한 디바이스에 의해 특히 달성될 수 있다.
그 후, 환경 특성들을 검출하고 라벨링하기 위해 포인트 클라우드가 분석된다. 이러한 작업을 달성하기 위한 기술적 솔루션들은 특히 다음과 같은 논문들에 설명되어 있다: Dirk Holz, Stefan Holzer, Rady Bogdan Rusu 및 Sven Behnke의 "Real-Time Plane Segmentation using RGB-D Cameras", Proceedings of the 15 th RoboCup International Symposium, Istanbul, July 2011; Andr
Figure 112019075564449-pct00001
Uckermann, Robert Haschke 및 Helge J. Ritter의 "Real-time 3D segmentation of cluttered scenes for robot grasping", Humanoids 2012, pp. 198-203; Zhe Whang, Hong Liu, Xiangdong Wang 및 Yueliang Qian의 "Segment and Label Indoor Scene Based on RB-D for the Visually Impaired", MultiMedia Modeling 2014, pp. 449-460; 및 J. Xiao, J. Zhang, B. Adler, H. Zhang 및 J. Zhang의 "Three-dimensional point cloud plane segmentation in both structured and unstructured environments", Robotics and Autonomous Systems 2013, 61(12), pp. 1641-1652.
환경의 분석은 3D 메시를 출력하는, "Microsoft Hololens"라는 명칭으로 상업화된 것과 같은 디바이스에 의해 또한 달성될 수 있다. 이러한 3D 메시로부터 환경 특성들을 검색하는 것을 가능하게 하는 일부 솔루션들은 다음과 같은 논문들에 설명된 것들을 포함한다: Julien P. C. Valentin, Sunando Sengupta, Jonathan Warrel, Ali Shahrokni 및 Philip H. S. Torr의 "Mesh Based Semantic Modelling for Indoor and Outdoor Scenes", CVPR 2013; 및 Ariel Shamir의 "A survey on Mesh Segmentation Techniques", Computer Graphics forum, vol. 27, 2008, n. 6, pp. 1539-1556.
실세계 정보를 분석하기 위한 모듈(11)은, 이 단계를 담당하며, 장면을 스캐닝하거나 서버 상에서 실행하는데 이용되는 디바이스에 내장될 수 있다.
5.4 가상 정보 결정
본 레벨에서, 환경의 설명이 알려진다. 본 단계는 아마도 요구되는 가상 환경을 결정하기 위해 시나리오 요건들과 결합된 다양한 환경 설명들을 분석하는 것으로 구성된다. 이 가상 환경은 각각의 사용자에 대해 고유하고, 모든 사용자들에게 유사한 거동 및 경험을 제공하기 위해 실제 환경에 중첩된다.
이 단계는 2개의 부분들, 즉 충족되는 시나리오 요건들 및 충족되지 않은 시나리오 요건들을 체크하는 단계(모듈(12)), 및 각각의 실제 환경에 대해, 완전히 충족되지 않은 각각의 시나리오 요건을 어떻게 보상할지를 결정하는 단계(모듈(13))를 포함한다.
이러한 2개의 부분들은 이전에 제시된 예시적인 요건들과 관련하여 아래에서 상세히 설명된다. 따라서, 그 환경은 다음을 포함해야 한다:
1/ 1.20 m × 0.60 m의 최소 크기를 갖는 테이블;
2/ 0.3 m × 0.2 m의 치수들을 갖고 테이블 중앙에 중심이 있는, 테이블 상의 자유 평면 영역;
3/ 테이블의 좌측 부분 상에 놓인, 0.10 m의 측부를 갖는 큐브;
4/ 테이블 상에 놓인 빈 유리 제품;
5/ 테이블의 좌측에 위치하고 테이블의 전방 좌측 다리를 포함하고, 0.6 m × 0.3 m의 치수들을 갖는, 그라운드 상의 자유 평면 영역.
예시적인 실제 환경이 도 2에 나타내어져 있으며, 테이블(31)은 좌측에 놓인 큐브(32) 및 우측에 놓인 꽃병(33)을 갖는 반면, 식물(34)은 테이블(31)의 우측에 위치한다.
5.4.1 시나리오 요건들의 체크
모듈(12)은 어느 시나리오 요건들이 충족되는지 및 어느 시나리오 요건들이 충족되지 않는지를 체크하며, 요건들의 총 수는 nbReq로 나타내진다.
대응하는 알고리즘은 다음과 같이 진행한다:
- 환경 스캔 및 특이성 결정으로부터 추론된 특성들을 로딩하는 것(모듈(11));
- 각각의 요건의 상태를 저장하는 nbReq 부울들의 리스트 statusList를 생성하는 것(완전히 충족되거나 그렇지 않음);
- 대응하는 시나리오 요건이 부분적으로 또는 완전히 충족되는 경우 실제 환경 특이성/특이성들을 저장하는 nbReq 데이터의 리스트 dataList를 생성하는 것, 또는 다른 경우에는 없음;
- 시나리오 요건들의 리스트를 로딩하는 것.
- 각각의 시나리오 요건에 대해, 모듈(13)은 그 후 다음을 담당한다:
- 요건이 충족되는지 여부를 체크하는 것;
- "예"인 경우, statusList의 대응하는 요소를 참으로 설정하고, dataList의 대응하는 요소를 이 요건과 연관된 환경 특이성/특이성들로 채우는 것;
- "아니오"인 경우, statusList의 대응하는 요소를 거짓으로 설정하고, dataList의 대응하는 요소를 이 요건과 연관된 환경 특이성/특이성들(예를 들어, 오브젝트가 존재하지만 예상되는 것보다 더 작거나 잘못된 위치에 있음)로 채우는 것 또는 특이성들이 없다면(예를 들어, 요구된 오브젝트가 존재하지 않는다면) 빈으로 설정하는 것.
요건이 부분적으로만 충족되더라도, 이하에서 전개된 이유들로 인해 환경 특이성/특이성들을 저장하는 것이 흥미롭다는 점에 유의해야 한다.
위의 예에 후속하여, statusList는 다음과 같은 값들을 가지며:
1/ 거짓(테이블(31)이 요구된 치수들을 갖지 않음)
2/ 참
3/ 참(큐브(32))
4/ 거짓
5/ 참
dataList는 다음과 같은 값들을 갖는다:
1/ 1.0 m × 0.6 m의 테이블 크기
2/ (X tfp , Y tfp )에 중심이 있는 0.5 m × 0.6 m 크기의 자유 평면 영역
3/ (X c , Y c )에 중심이 있는 0.10 m 크기를 갖는 큐브(32)
4/
5/ (X gfp , Y gfp )에 중심이 있는 2 m × 1 m의 그라운드 상의 자유 평면 영역
5.4.2 시나리오 요건들의 분석
MR 애플리케이션 요건들(특히, 요소들, 자유 평면 영역들)의 분석 및 환경이 부분적으로라도 이러한 요건들을 충족시키는지 여부의 체크에 더하여, 모듈(13)은 요건(들)을 완전히 충족시키지 않은 사용자 (실제) 환경의 기존 부분들을 가상 요소들로 완성시킨다. 이러한 적응은 MR 애플리케이션이 유사한 방식으로 렌더링될 것을 보장하는 공통의 특이성들을 임의의 환경이 궁극적으로 포함하도록 하는 것이다.
마지막으로, 모듈(13)은 실제 환경을 향상시키는 가상 환경을 이용하여 MR 애플리케이션을 업데이트한다.
보다 정확하게는, 모듈(13)은 각각의 특정 실제 환경에 대해, 완전히 충족되지 않은 각각의 시나리오 요건을 보상하는 방법을 결정한다.
제1 상황에서, 특이성들이 누락되는데, 이는 예를 들어 위의 예에서 유리 제품과 같은 요구되는 요소의 부재에 해당할 수 있다. 이 문제는 오브젝트의 미리 정의된 가상 모델에 기반하는 가상 오브젝트를 추가함으로써 해결된다.
제2 상황에서, 특이성들이 실제 환경에 존재하지만, 적절한 방식으로 존재하지는 않는다. 이것은 특히 요구되는 오브젝트가 존재하지만 그 크기, 위치 및/또는 배향이 시나리오 요건을 충족시키지 않는 경우를 커버한다. 실제 오브젝트가 라벨링되기 때문에, 그 관련된 3D 모델 및 가능하게는 그 텍스처가 알려진다. 그 후, 유리한 구현예들에서, 그 3D 모델이 변환(이동, 스케일링 및/또는 회전)된다.
3D 모델은, 너무 작으면 업 스케일링될 수 있고, 너무 크면 다운 스케일링될 수 있다. 후자의 경우에, 실제 환경에서 "제거된" 또는 "누락된" 실제 오브젝트의 부분이 채워지고, 이는 예를 들어 다음과 같은 논문에서 개발된 것과 같은 복원 기술들에 의해 행해질 수 있다: Jan Herling 및 Wolfgang Broll의 "High-Quality Real-Time Video Inpainting with PixMix", IEEE Transactions on Visualization and Computer Graphics, Vol. 20, 2014, n. 6, pp. 866-879.
요구되는 오브젝트가 실제 3D 장면에 존재하지만 잘못된 위치에 존재하는 경우, 이것은 유리하게도 이동되거나 복제/복사된다. 그 다음, 적용된 솔루션이 오브젝트를 이동시키는 것으로 구성되는 경우, 오브젝트에 의해 더 이상 커버되지 않는 실제 오브젝트의 영역이 채워진다(이는 복원에 의해 행해질 수 있다). 오브젝트 배향이 올바르지 않은 경우에도 유사한 액션들이 행해질 수 있다.
다른 실시예에서, 사용자는 올바른 위치 및/또는 배향으로 실제 오브젝트를 수동으로 이동 및/또는 회전시키도록 요청받는다. 이와 관련하여, 오브젝트의 최종 위치 및/또는 배향은 가상 오브젝트를 표시함으로써 사용자에게 도시되며, 그 기하구조는 실제 오브젝트의 기하구조와 동일하다. 사용자는 실제 오브젝트가 가상 오브젝트와 중첩될 때까지 실제 오브젝트의 표현을 이동/회전시킨다.
자유 평면 영역/부피가 누락되거나 충분히 크지 않은 경우, 이전에 언급된 두 가지 방법들이 적용될 수 있다. 복원 기술들을 이용하여 평면 영역/부피를 차지하는 실제 요소들의 표현을 "제거"하는 것이 가능해지며, 사용자는 그 영역/부피를 수동으로 "깨끗하게" 하도록 요청받을 수 있다.
5.4.3 복수의 시나리오 요건들의 공동 관리
완전히 충족되지 않은 요건을 보상하는 것은 또 다른 요건이 더 이상 충족되지 않는다는 사실을 초래할 수 있다. 예를 들어, 테이블(31)(도 2) 상에 누락된 유리 제품을 추가함으로써, 요건 2의 자유 영역(테이블 상의 0.3 m × 0.2 m의 자유 평면 영역)이 사라질 수 있다.
이러한 상황들을 관리하는데 이용되는 알고리즘이 이하에서 설명된다. 거짓으로 설정된 값을 갖는 statusList의 각각의 현재 요소에 대해, 현재 요소는 그 후 Ifalse로 불리는 인덱스를 가지며, 다음의 단계들이 실행된다:
- 위에서 전개된 바와 같이, 현재 요소에 대응하는 요건을 충족시키기 위한 솔루션을 결정하는 단계;
- 인덱스 Ifalse를 갖는 statusList의 현재 요소를 참으로 설정하는 단계;
- 참으로 설정된 값을 갖는 (그리고 Itrue로 불리는 인덱스를 갖는) statusList의 각각의 다른 요소에 대해, 현재 요소에 대해 위의 솔루션을 채택할 때 대응하는 요건이 여전히 충족되는지 여부를 체크하는 단계;
- 그렇지 않다면, 현재 요소에 대해 여전히 충족되는 인덱스 Itrue의 요건을 갖도록 허용하는 다른 구성을 테스트하는 단계;
- 가능하지 않다면, 인덱스 Ifalse를 갖는 statusList의 현재 요소를 거짓으로 하는 단계.
이러한 프로세스의 향상된 버전은 제어되지 않는 방식으로, 첫 번째로 처리된 요건들만이 충족되는 것을 피할 수 있게 하는 반면, 나중에 고려되는 요건들은 충족될 수 없다("먼저 도달된 것이, 먼저 서빙됨"). 따라서, 최고 우선 순위들을 갖는 요건들이 먼저 처리되고, 다른 요건들은 순차적으로 감소하는 순위에 따라 최저 요건에 이르기까지 처리된다.
추가의 향상된 버전에서, (이미 배열된 요소들을 특히 포함하여) statusList 값이 인 요건(들)을 이미 충족시키는 하나 이상의 실제 요소의 표현에 일부 수정들이 적용될 수 있는지 여부를 체크하여, 다음의 것을 획득한다:
- 이미 충족된 요건들이 완전히 충족된 채로 남아있는 것;
- 인덱스 Ifalse를 갖는 현재 요건이 또한 완전히 충족되는 것.
즉, 이 단계는 양 목적들을 만족시키는 수정들의 조합을 찾도록 시도하는 반면에, 실제 요소의 표현을 수정하는 것은 하나 이상의 (가능하게는 많은) 다른 실제 요소들의 표현을 수정하는 것을 초래할 수 있다.
다시, 요건들의 계층구조는 유리하게도 모든 제약들이 충족될 수 없을 때 최고 순위들에게 특권을 주는데 이용된다.
statusList의 모든 요소들이 과 동일한 경우, 시나리오를 완전히 충족시키는 솔루션이 발견된다. 그렇지 않으면, 어떠한 사소한 솔루션도 발견되지 않고, 최저 우선 순위(또는 최저 우선 순위들)를 갖는 하나 이상의 제약이 따로 남겨질 수 있다. 임의의 전역적 솔루션이 없을 때의 변형 구현예에서, 모든 요건들이 사용자에게 제시되며, 사용자는 요건들을 충족시키기 위해 그 실제 환경의 표현을 수정(요소들을 추가/이동/제거)하도록 요청받는다.
실행 시에, 도 3에 도시된 바와 같이, 디바이스(1)는 바람직하게는 MR 동작에서 다음과 같이 진행한다. 취득 단계들에서, 실제 3D 환경의 특이성들(이들 특이성들은 각각의 가능하게는 동일한 토픽들과 연관됨)(단계 41)뿐만 아니라 시나리오 요건들의 리스트(단계 42)가 로딩된다. 모든 요건들이 처리되었는지 여부가 체크된다(단계 431). "예"인 경우, 프로세스가 중지된다(단계 432). 그렇지 않으면, 다음 요건이 로딩되고, 대응하는 statusList거짓에서 초기화되고, 대응하는 dataList으로 초기화된다(단계 433).
그 다음, 모든 환경 특이성들이 처리되었는지 여부가 체크된다(단계 441). "예"인 경우, 프로세스는 단계 431로 되돌아간다. 그렇지 않으면, 다음 환경 특이성이 로딩된다(단계 451). 그 다음, 특이성이 요건 토픽을 다루는지 여부가 체크된다(단계 452). "아니오"인 경우, 프로세스는 단계 441로 되돌아간다. 그렇지 않으면, 특이성이 고려된 요건을 충족시키는지 여부가 체크된다(단계 453). "아니오"인 경우, 대응하는 statusList가 거짓으로 설정되고, 특이성이 대응하는 dataList에 추가되며, 프로세스는 단계 441로 되돌아간다.
그렇지 않으면, 대응하는 statusList가 으로 설정되고, 특이성이 대응하는 dataList에 추가되며, 프로세스는 단계 441로 되돌아간다.
도 4에 도시된 특정 장치(5)는 전술한 디바이스(1)를 구현한 것이다. 이것은 예를 들어 태블릿, 스마트폰, 헤드 장착 디스플레이(HMD), 게임 콘솔, 예컨대 라이브 이미지들을 생성하고 표시하는 전문 게임 콘솔, 또는 랩톱에 대응한다. 이 장치(5)는 직접 뷰(사용자가 전형적으로 안경을 통해 실제 3D 장면을 보는 것) 또는 간접 뷰(사용자가 스크린 상에 표시되는 실제 3D 장면을 보는 것)에 상관없이 증강 현실에 적합하다. 양 능력들이 또한 조합될 수 있다.
이 장치(5)는 어드레스들 및 클럭 신호를 또한 전송하는 데이터의 버스(55)에 의해 서로 연결된, 다음의 요소들을 포함한다:
- 마이크로프로세서(51)(또는 CPU);
- 수개의 그래픽 프로세서 유닛들(또는 GPU들)(520) 및 그래픽 랜덤 액세스 메모리(GRAM)(521)를 포함하는 그래픽 카드(52);
- ROM 타입의 비휘발성 메모리(56);
- RAM(57);
- 예를 들어 키보드, 마우스, 조이스틱, 웹캠과 같은 하나 또는 수개의 I/O(입/출력) 디바이스(54), 그리고 예를 들어 음성 인식과 같은 명령들의 도입을 위한 다른 모드들이 또한 가능함;
- 전원(58); 및
- 무선 주파수 유닛(59).
또한, 장치(5)는 그래픽 카드(52)에서 계산되고 구성되는 합성 이미지들을 예를 들어 라이브로 표시하기 위해 그래픽 카드에 직접 연결된 디스플레이 스크린 타입의 디스플레이 디바이스(53)를 포함한다. 그래픽 카드(52)에 디스플레이 디바이스(53)를 연결하기 위해 전용 버스를 이용하면 훨씬 더 큰 데이터 전송 비트레이트들을 가지므로 그래픽 카드에 의해 구성된 이미지들의 표시를 위한 대기 시간을 단축시킨다는 이점이 있다. 변형예에 따르면, 디스플레이 디바이스는 장치(5)의 외부에 있으며, 디스플레이 신호들을 전송하기 위해 케이블에 의해 또는 무선으로 이에 연결된다. 장치(5)는, 예를 들어 그래픽 카드(52)를 통해, 예를 들어 LCD 또는 플라즈마 스크린 또는 비디오 프로젝터와 같은 외부 디스플레이 수단에 디스플레이 신호를 전송하도록 적응된 전송 또는 연결을 위한 인터페이스를 포함한다. 이와 관련하여, RF 유닛(59)이 무선 전송들에 이용될 수 있다.
대안적인 구현예에서, 디스플레이 디바이스(53)는 사용자가 실제 환경을 보고 있는 안경에 대응하고, 장치(5)는 예를 들어 생성된 가상 이미지들 또는 콘텐츠들을 안경 상에 투사할 수 있게 해주는 광학 투사 시스템(도시되지 않음)을 더 포함한다.
메모리들(521, 56 및 57)의 설명에서 사용되는 "레지스터"라는 단어가 언급된 메모리들 각각에서 저 용량(일부 이진 데이터)의 메모리 구역뿐만 아니라 큰 용량(전체 프로그램이 저장될 수 있게 하는 것 또는 계산되거나 표시될 데이터를 나타내는 데이터의 전부 또는 일부)의 메모리 구역 둘 다를 나타낸다는 점에 유의한다. 또한, GRAM(521)에 대해 나타낸 레지스터들은 임의의 방식으로 배열되고 구성될 수 있으며, 이들 각각은 인접한 메모리 위치들에 반드시 대응하지는 않으며, (특히 하나의 레지스터가 수개의 더 작은 레지스터들을 포함하는 상황을 커버하는) 다른 방식으로 분산될 수 있다.
온으로 스위칭될 때, 마이크로프로세서(51)는 RAM(57)에 포함된 프로그램의 명령어들을 로딩하고 실행한다.
랜덤 액세스 메모리(57)는 특히,
- 레지스터(570)에, 장치(5)의 스위칭 온을 담당하는 마이크로프로세서(51)의 동작 프로그램을 포함하고,
- 레지스터(571)에, 실제 3D 장면을 나타내는 파라미터들(예를 들어, 장면의 오브젝트(들)의 모델들 및 조명 파라미터들)을 포함하고,
- 레지스터(572)에, 하나 또는 수개의 MR 시나리오를 나타내는 파라미터들을 포함하고,
- 레지스터(573)에, MR 시나리오들과 연관된 실제 3D 장면에 대한 제약들을 포함하며,
- 레지스터(574)에, 실제 3D 장면에 대해 그리고 MR 시나리오들의 제약들에 대응하는 가상 적응들에 대한 파라미터들을 포함한다.
전술하였고 본 개시내용에 특정적인 방법의 단계들을 구현하는 알고리즘들은 이러한 단계들을 구현하는 장치(5)와 연관된 그래픽 카드(52)의 메모리 GRAM(521)에 저장된다. 온으로 스위칭되고 파라미터들(571, 572 및 574)이 RAM(57)에 로딩될 때, 그래픽 카드(52)의 그래픽 프로세서들(520)은 이들 파라미터들을 GRAM(521)에 로딩하고 예를 들어 HLSL(High Level Shader Language) 언어 또는 GLSL(OpenGL Shading Language)을 이용하는 "셰이더" 타입의 마이크로프로그램들의 형태로 이들 알고리즘들의 명령어들을 실행한다.
랜덤 액세스 메모리 GRAM(521)은 특히,
- 레지스터(5211)에, 실제 3D 장면을 나타내는 파라미터들을 포함하고,
- 레지스터(5212)에, MR 시나리오들을 나타내는 파라미터들을 포함하며,
- 레지스터(5213)에, 시나리오 제약들과 관련하여 적용될 가상 적응들을 나타내는 파라미터들을 포함한다.
변형예에 따르면, 프리미티브들에 관한 데이터의 적어도 일부가 RAM(57)에 저장되고 마이크로프로세서(51)에 의해 처리된다. 그러나, 이 변형예는 GPU들(520)에 포함된 마이크로프로그램들로부터 구성되는 환경의 표현을 포함하는 이미지의 구성에서 더 큰 대기 시간을 야기하는데, 그 이유는 일반적으로 그 전송 능력들이 GPU들(520)로부터 GRAM(521)으로 그리고 그 반대로 데이터를 전송하기 위해 그래픽 카드에서 이용가능한 것들보다 뒤떨어지는 버스(55)를 통해 그래픽 카드로부터 랜덤 액세스 메모리(57)로 데이터가 전송되어야 하기 때문이다.
통상의 기술자에 의해 이해되는 바와 같이, 그래픽 카드(52)의 존재는 필수적이지 않고, 더 간단한 시각화 구현들로 대체될 수 있다.
다른 변형예에 따르면, 전원(58)은 장치(1)의 외부에 존재한다.
본 개시내용과 상세한 실시예들에 의거하여, 본 발명의 범위를 벗어나지 않고서 관련 기술분야의 통상의 기술자의 범위 내에서 다른 구현예들이 가능하다. 특정된 요소들은 특히 본 개시내용의 프레임을 유지하는 임의의 방식으로 상호교환되거나 연관될 수 있다. 또한, 상이한 구현예들의 요소들이 조합, 보충, 수정 또는 제거됨으로써 다른 구현예들을 생성할 수 있다. 이러한 모든 가능성들이 본 개시내용에 의해 고려된다.

Claims (15)

  1. 실제 3D 장면의 표현에 중첩될 적어도 하나의 동적 가상 콘텐츠를 생성하기 위한 디바이스(1, 5)로서,
    상기 적어도 하나의 동적 가상 콘텐츠는 적어도 하나의 시나리오의 실행시간 전에 정의되고 적어도 하나의 실세계 제약(23)을 포함하는 상기 적어도 하나의 시나리오를 따르고, 상기 디바이스는,
    상기 실제 3D 장면에서 캡처된 실세계 정보(22)를 수신하도록 적응된 적어도 하나의 입력부; 및
    상기 실세계 정보로부터 식별된 상기 적어도 하나의 실세계 제약의 존재 시에 상기 실행시간에서 상기 적어도 하나의 시나리오를 실행(14)하도록 구성된 적어도 하나의 프로세서
    를 포함하며,
    상기 적어도 하나의 프로세서는 상기 적어도 하나의 실세계 제약이 상기 실세계 정보로부터 식별되지 않을 때(12), 상기 적어도 하나의 시나리오를 실행하기 전에 상기 실제 3D 장면의 상기 표현의 가상적으로 적응된 3D 장면으로의 변환을 수행하여(13) 상기 가상적으로 적응된 3D 장면이 상기 적어도 하나의 제약을 충족시키고, 상기 실제 3D 장면에서 상기 적어도 하나의 시나리오를 실행하는 대신에 상기 실제 3D 장면을 대체하는 상기 가상적으로 적응된 3D 장면에서 상기 적어도 하나의 시나리오를 실행하도록 추가로 구성되는 것을 특징으로 하는 디바이스(1, 5).
  2. 제1항에 있어서,
    상기 적어도 하나의 실세계 제약은 적어도 2개이고 잠재적으로 상호작용하며, 상기 적어도 하나의 프로세서는 상기 가상적으로 적응된 3D 장면이 상기 적어도 2개의 제약들을 충족시키도록 상기 적어도 2개의 실세계 제약들에 대해 공동으로 상기 변환을 수행하도록 추가로 구성되는 것을 특징으로 하는 디바이스(1, 5).
  3. 제1항 또는 제2항에 있어서,
    상기 적어도 하나의 실세계 제약은 적어도 2개이고, 잠재적으로 상호작용하며 중요도 순서에 따라 순위화되고, 상기 적어도 하나의 프로세서는 적어도 하나의 최고 우선 순위를 갖는 상기 적어도 하나의 실세계 제약에 대해 우선으로 상기 변환을 수행하고, 상기 적어도 하나의 최고 우선 순위를 갖는 상기 적어도 하나의 실세계 제약과 별개인 상기 적어도 하나의 실세계 제약 중 적어도 하나의 부재 시에 상기 실행시간에서 상기 적어도 하나의 시나리오를 실행하도록 추가로 구성되는 것을 특징으로 하는 디바이스(1, 5).
  4. 제1항 또는 제2항에 있어서,
    상기 적어도 하나의 제약은 적어도 하나의 실세계 오브젝트의 존재를 포함하고, 상기 적어도 하나의 프로세서는 상기 적어도 하나의 실세계 오브젝트의 가상 표현을 상기 가상적으로 적응된 3D 장면에 추가하도록 구성되는 것을 특징으로 하는 디바이스(1, 5).
  5. 제1항 또는 제2항에 있어서,
    상기 적어도 하나의 제약은 적어도 하나의 실세계 오브젝트의 적어도 하나의 치수와 관련되고, 상기 적어도 하나의 프로세서는 상기 적어도 하나의 치수에 대한 상기 적어도 하나의 제약이 충족되도록 상기 가상적으로 적응된 3D 장면에서 상기 적어도 하나의 실세계 오브젝트의 상기 적어도 하나의 치수의 표현을 수정하도록 구성되는 것을 특징으로 하는 디바이스(1, 5).
  6. 제1항 또는 제2항에 있어서,
    상기 적어도 하나의 프로세서는 상기 적어도 하나의 제약이 충족되도록 상기 가상적으로 적응된 3D 장면에서 상기 적어도 하나의 제약에 불리한 적어도 하나의 실세계 오브젝트의 가상 표현을 변환하도록 구성되는 것을 특징으로 하는 디바이스(1, 5).
  7. 제6항에 있어서,
    상기 적어도 하나의 프로세서는 상기 가상적으로 적응된 3D 장면에서 상기 적어도 하나의 실세계 오브젝트를 제거, 감소 및 이동시키는 것 중 적어도 하나에 의해 상기 변환을 수행하도록 구성되는 것을 특징으로 하는 디바이스(1, 5).
  8. 제1항 또는 제2항에 있어서,
    상기 적어도 하나의 제약은 적어도 하나의 실세계 오브젝트와 관련되고, 상기 적어도 하나의 프로세서는 상기 적어도 하나의 실세계 오브젝트에 대한 상기 적어도 하나의 제약이 충족되도록 상기 적어도 하나의 실세계 오브젝트를 이동, 회전, 병진, 스케일링, 복제하는 것 중 적어도 하나에 의해 상기 변환을 수행하도록 구성되는 것을 특징으로 하는 디바이스(1, 5).
  9. 제1항 또는 제2항에 있어서,
    상기 변환은 상기 가상적으로 적응된 3D 장면에서 적어도 하나의 영역을 소거하는 것을 포함하고, 상기 적어도 하나의 프로세서는 상기 가상적으로 적응된 3D 장면에서 상기 적어도 하나의 영역을 복원하도록 추가로 구성되는 것을 특징으로 하는 디바이스(1, 5).
  10. 제1항 또는 제2항에 있어서,
    상기 적어도 하나의 프로세서는 상기 변환을 수행하는데에 사용자가 명백하게 참여하게 하도록 추가로 구성되는 것을 특징으로 하는 디바이스(1, 5).
  11. 제1항 또는 제2항에 있어서,
    상기 적어도 하나의 입력부는 또한 상기 적어도 하나의 시나리오를 수신하도록 적응되고, 상기 디바이스는 상기 가상적으로 적응된 3D 장면에서 상기 적어도 하나의 시나리오를 시각화하기 위해 사용자에게 상기 가상적으로 적응된 3D 장면의 표현의 적어도 일부를 출력하도록 적응된 적어도 하나의 출력부를 더 포함하는 것을 특징으로 하는 디바이스(1, 5).
  12. 장치(5)로서,
    제1항 또는 제2항에 따른 디바이스를 포함하고, 상기 장치는 비디오 수신기, 모바일 폰, 태블릿 및 증강 현실 헤드 장착 디스플레이 시스템 중에서 선택되는 것을 특징으로 하는 장치(5).
  13. 실제 3D 장면의 표현에 중첩될 적어도 하나의 동적 가상 콘텐츠를 생성하기 위한 방법으로서,
    상기 적어도 하나의 동적 가상 콘텐츠는 적어도 하나의 시나리오의 실행시간 전에 정의되고 적어도 하나의 실세계 제약을 포함하는 상기 적어도 하나의 시나리오를 따르고, 상기 방법은,
    상기 실제 3D 장면에서 캡처된 실세계 정보를 수신하는 단계(41); 및
    상기 실세계 정보로부터 식별된 상기 적어도 하나의 실세계 제약의 존재 시에 상기 실행시간에서 상기 적어도 하나의 시나리오를 실행하는 단계
    를 포함하며,
    상기 방법은, 상기 적어도 하나의 실세계 제약이 상기 실세계 정보로부터 식별되지 않을 때(452, 453), 상기 적어도 하나의 시나리오를 실행하기 전에 상기 실제 3D 장면의 상기 표현의 가상적으로 적응된 3D 장면으로의 변환을 수행하여 상기 가상적으로 적응된 3D 장면이 상기 적어도 하나의 제약을 충족시키는 단계, 및 상기 실제 3D 장면에서 상기 적어도 하나의 시나리오를 실행하는 대신에 상기 실제 3D 장면을 대체하는 상기 가상적으로 적응된 3D 장면에서 상기 적어도 하나의 시나리오를 실행하는 단계를 더 포함하는 것을 특징으로 하는, 실제 3D 장면의 표현에 중첩될 적어도 하나의 동적 가상 콘텐츠를 생성하기 위한 방법.
  14. 제13항에 있어서,
    상기 방법은 제1항 또는 제2항에 따른 디바이스(1, 5)에 의해 실행되는 것을 특징으로 하는, 실제 3D 장면의 표현에 중첩될 적어도 하나의 동적 가상 콘텐츠를 생성하기 위한 방법.
  15. 적어도 하나의 동적 가상 콘텐츠를 생성하기 위한 기록 매체에 저장된 컴퓨터 프로그램으로서,
    상기 프로그램이 프로세서에 의해 실행될 때 제13항에 따른 방법을 수행하도록 적응된 소프트웨어 코드를 포함하는, 기록 매체에 저장된 컴퓨터 프로그램.
KR1020197021616A 2016-12-26 2017-12-19 혼합 현실에서 동적 가상 콘텐츠들을 생성하기 위한 디바이스 및 방법 KR102433857B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020227028124A KR102555214B1 (ko) 2016-12-26 2017-12-19 혼합 현실에서 동적 가상 콘텐츠들을 생성하기 위한 디바이스 및 방법

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP16306818.2 2016-12-26
EP16306818.2A EP3340187A1 (en) 2016-12-26 2016-12-26 Device and method for generating dynamic virtual contents in mixed reality
PCT/EP2017/083461 WO2018122030A1 (en) 2016-12-26 2017-12-19 Device and method for generating dynamic virtual contents in mixed reality

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020227028124A Division KR102555214B1 (ko) 2016-12-26 2017-12-19 혼합 현실에서 동적 가상 콘텐츠들을 생성하기 위한 디바이스 및 방법

Publications (2)

Publication Number Publication Date
KR20190100305A KR20190100305A (ko) 2019-08-28
KR102433857B1 true KR102433857B1 (ko) 2022-08-19

Family

ID=57755150

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020197021616A KR102433857B1 (ko) 2016-12-26 2017-12-19 혼합 현실에서 동적 가상 콘텐츠들을 생성하기 위한 디바이스 및 방법
KR1020227028124A KR102555214B1 (ko) 2016-12-26 2017-12-19 혼합 현실에서 동적 가상 콘텐츠들을 생성하기 위한 디바이스 및 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020227028124A KR102555214B1 (ko) 2016-12-26 2017-12-19 혼합 현실에서 동적 가상 콘텐츠들을 생성하기 위한 디바이스 및 방법

Country Status (6)

Country Link
US (2) US11113888B2 (ko)
EP (2) EP3340187A1 (ko)
JP (3) JP6972135B2 (ko)
KR (2) KR102433857B1 (ko)
CN (2) CN110168614B (ko)
WO (1) WO2018122030A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3640767A1 (de) * 2018-10-17 2020-04-22 Siemens Schweiz AG Verfahren zum bestimmen mindestens eines bereichs in mindestens einem eingabemodell für mindestens ein zu platzierendes element
CN112015272B (zh) * 2020-03-10 2022-03-25 北京欧倍尔软件技术开发有限公司 虚拟现实系统及虚拟现实对象控制装置
US20210327146A1 (en) * 2020-04-17 2021-10-21 Michael E. Buerli Virtual anchoring systems and methods for extended reality
CN111932683B (zh) * 2020-08-06 2022-12-30 北京理工大学 一种语义驱动的混合现实场景下的虚拟宠物行为生成方法
CN113129372B (zh) * 2021-03-29 2023-11-03 深圳清元文化科技有限公司 基于HoloLens空间映射的三维场景语义分析方法
US11943565B2 (en) * 2021-07-12 2024-03-26 Milestone Systems A/S Computer implemented method and apparatus for operating a video management system
CN114363557B (zh) * 2022-03-04 2022-06-24 西安电子科技大学 一种面向语义保真的虚拟会议方法及三维虚拟会议系统
CN115147520A (zh) * 2022-06-07 2022-10-04 聚好看科技股份有限公司 基于视觉语义驱动虚拟人物的方法及设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150187108A1 (en) * 2013-12-31 2015-07-02 Daqri, Llc Augmented reality content adapted to changes in real world space geometry

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7523411B2 (en) * 2000-08-22 2009-04-21 Bruce Carlin Network-linked interactive three-dimensional composition and display of saleable objects in situ in viewer-selected scenes for purposes of object promotion and procurement, and generation of object advertisements
CN101174332B (zh) * 2007-10-29 2010-11-03 张建中 一种将真实世界实时场景与虚拟现实场景结合交互的方法和装置以及系统
JP2012513059A (ja) 2008-12-19 2012-06-07 サーブ エービー 場面と仮想シナリオを融合するシステムおよび方法
US8939840B2 (en) * 2009-07-29 2015-01-27 Disney Enterprises, Inc. System and method for playsets using tracked objects and corresponding virtual worlds
US9490003B2 (en) * 2011-03-31 2016-11-08 Intel Corporation Induced thermal gradients
US20120269494A1 (en) 2011-04-22 2012-10-25 Qualcomm Incorporated Augmented reality for live events
JP6040564B2 (ja) * 2012-05-08 2016-12-07 ソニー株式会社 画像処理装置、投影制御方法及びプログラム
US8878846B1 (en) * 2012-10-29 2014-11-04 Google Inc. Superimposing virtual views of 3D objects with live images
EP2953098B1 (en) * 2013-02-01 2019-03-13 Sony Corporation Information processing device, terminal device, information processing method, and programme
US20140267228A1 (en) * 2013-03-14 2014-09-18 Microsoft Corporation Mapping augmented reality experience to various environments
US9639964B2 (en) 2013-03-15 2017-05-02 Elwha Llc Dynamically preserving scene elements in augmented reality systems
KR101543287B1 (ko) * 2013-04-23 2015-08-11 한국과학기술원 현실 객체의 물리적 동작-증강 현실 상호작용형 전자책 시스템 및 구현 방법
US10509533B2 (en) * 2013-05-14 2019-12-17 Qualcomm Incorporated Systems and methods of generating augmented reality (AR) objects
US9639987B2 (en) 2013-06-27 2017-05-02 Canon Information And Imaging Solutions, Inc. Devices, systems, and methods for generating proxy models for an enhanced scene
US9761053B2 (en) * 2013-08-21 2017-09-12 Nantmobile, Llc Chroma key content management systems and methods
WO2015048905A1 (en) * 2013-10-03 2015-04-09 Sulon Technologies Inc. System and method for incorporating a physical image stream in a head mounted display
EP3086292B1 (en) * 2013-12-17 2018-12-26 Sony Corporation Information processing device, information processing method, and program
US9460340B2 (en) 2014-01-31 2016-10-04 Google Inc. Self-initiated change of appearance for subjects in video and images
CN103810353A (zh) 2014-03-09 2014-05-21 杨智 一种虚拟现实中的现实场景映射系统和方法
US9240077B1 (en) * 2014-03-19 2016-01-19 A9.Com, Inc. Real-time visual effects for a live camera view
JP6572600B2 (ja) 2015-04-09 2019-09-11 セイコーエプソン株式会社 情報処理装置、情報処理装置の制御方法、および、コンピュータープログラム
AU2016250773A1 (en) 2015-04-23 2017-10-12 Hasbro, Inc. Context-aware digital play
CN109155082B (zh) * 2016-05-26 2023-06-20 索尼公司 信息处理设备、信息处理方法和存储介质
US10380803B1 (en) * 2018-03-26 2019-08-13 Verizon Patent And Licensing Inc. Methods and systems for virtualizing a target object within a mixed reality presentation

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150187108A1 (en) * 2013-12-31 2015-07-02 Daqri, Llc Augmented reality content adapted to changes in real world space geometry

Also Published As

Publication number Publication date
US20210366197A1 (en) 2021-11-25
KR102555214B1 (ko) 2023-07-13
EP3340187A1 (en) 2018-06-27
CN110168614B (zh) 2023-08-15
US11113888B2 (en) 2021-09-07
JP2023171435A (ja) 2023-12-01
JP2020503611A (ja) 2020-01-30
CN110168614A (zh) 2019-08-23
US20190340825A1 (en) 2019-11-07
WO2018122030A1 (en) 2018-07-05
JP2022019748A (ja) 2022-01-27
CN117274542A (zh) 2023-12-22
KR20190100305A (ko) 2019-08-28
US11580706B2 (en) 2023-02-14
JP6972135B2 (ja) 2021-11-24
EP3559915A1 (en) 2019-10-30
KR20220119180A (ko) 2022-08-26

Similar Documents

Publication Publication Date Title
KR102433857B1 (ko) 혼합 현실에서 동적 가상 콘텐츠들을 생성하기 위한 디바이스 및 방법
US9607437B2 (en) Generating augmented reality content for unknown objects
US9852544B2 (en) Methods and systems for providing a preloader animation for image viewers
CN102622776B (zh) 三维环境重构
US9305403B2 (en) Creation of a playable scene with an authoring system
JP2019003621A (ja) 建築物のレイアウトの決定
CN102089786A (zh) 在性能分析期间将图形指令映射到相关联的图形数据
CN103970518A (zh) 一种逻辑窗口的3d渲染方法和装置
US10600255B2 (en) Technologies for composing a virtual reality setting in a mobile computing environment
EP3343513A1 (en) Device and method for generating flexible dynamic virtual contents in mixed reality
US11625900B2 (en) Broker for instancing
JP2023529790A (ja) フロアプランを生成するための方法、装置およびプログラム
US20240015263A1 (en) Methods and apparatus to provide remote telepresence communication
Dahl Real-time Object Removal in Augmented Reality
CN116912425A (zh) 基于三维重建的可视化场景搭建方法以及相关设备

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right