KR102484333B1 - 합성된 현실 설정들에서 오브젝티브 실행기들에 대한 오브젝티브들의 생성 - Google Patents

합성된 현실 설정들에서 오브젝티브 실행기들에 대한 오브젝티브들의 생성 Download PDF

Info

Publication number
KR102484333B1
KR102484333B1 KR1020207021311A KR20207021311A KR102484333B1 KR 102484333 B1 KR102484333 B1 KR 102484333B1 KR 1020207021311 A KR1020207021311 A KR 1020207021311A KR 20207021311 A KR20207021311 A KR 20207021311A KR 102484333 B1 KR102484333 B1 KR 102484333B1
Authority
KR
South Korea
Prior art keywords
objective
executor
implementations
delete delete
objectives
Prior art date
Application number
KR1020207021311A
Other languages
English (en)
Other versions
KR20200100797A (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 KR20200100797A publication Critical patent/KR20200100797A/ko
Application granted granted Critical
Publication of KR102484333B1 publication Critical patent/KR102484333B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning

Abstract

일부 구현예들에서, 방법은 오브젝티브-실행기를 합성된 현실 설정으로 인스턴스화하는 단계를 포함한다. 일부 구현예들에서, 오브젝티브-실행기는 미리정의된 오브젝티브들의 세트 및 시각적 렌더링 속성들의 세트에 의해 특징지어진다. 일부 구현예들에서, 본 방법은 합성된 현실 설정을 특징짓는 콘텍스트 정보를 획득하는 단계를 포함한다. 일부 구현예들에서, 본 방법은 오브젝티브-실행기에 대한 미리정의된 액션들의 세트 및 미리정의된 오브젝티브들의 세트의 기능에 기초하여 오브젝티브-실행기에 대한 오브젝티브를 생성하는 단계를 포함한다. 일부 구현예들에서, 본 방법은 오브젝티브-실행기에 대한 오브젝티브에 기초하여 합성된 현실 설정에 대한 환경 조건들을 설정하는 단계를 포함한다. 일부 구현예들에서, 본 방법은 오브젝티브-실행기에 대한 오브젝티브에 기초하여 오브젝티브-실행기에 대한 액션들의 현재 세트 및 초기 조건들을 확립하는 단계를 포함한다. 일부 구현예들에서, 본 방법은 오브젝티브에 기초하여 오브젝티브-실행기를 수정하는 단계를 포함한다.

Description

합성된 현실 설정들에서 오브젝티브 실행기들에 대한 오브젝티브들의 생성
본 발명은, 대체적으로, 합성된 현실 설정들에서 오브젝티브 실행기(objective-effectuator)들에 대한 오브젝티브들을 생성하는 것에 관한 것이다.
일부 디바이스들은 합성된 현실 설정들을 생성하고 제시할 수 있다. 일부 합성된 현실 설정들은 물리적 설정들의 합성된 대체물들인 가상 설정들을 포함한다. 일부 합성된 현실 설정들은 물리적 설정들의 수정된 버전들인 증강 설정들을 포함한다. 합성된 현실 설정들을 제시하는 일부 디바이스들은 스마트폰, HMD(head-mountable display), 안경, HUD(heads-up display), 및 광학 프로젝션 시스템과 같은 모바일 통신 디바이스들을 포함한다. 합성된 현실 설정들을 제시하는 대부분의 이전에 이용가능한 디바이스들은 소정 객체들의 표현들을 제시하는 것에 효과적이지 않다. 예를 들어, 합성된 현실 설정들을 제시하는 일부 이전에 이용가능한 디바이스들은 액션과 연관되는 객체들의 표현들을 제시하는 데 적합하지 않다.
본 발명이 당업자들에 의해 이해될 수 있도록, 일부 예시적인 구현예들의 태양들에 대한 참조에 의해 더 상세한 설명이 이루어질 수 있으며, 이들 중 일부는 첨부 도면들에 도시되어 있다.
도 1a 및 도 1b는 일부 구현예들에 따른 예시적인 동작 환경들의 도면들이다.
도 2는 일부 구현예들에 따른 예시적인 시스템의 블록도이다.
도 3a는 일부 구현예들에 따른 예시적인 신생 콘텐츠 엔진의 블록도이다.
도 3b는 일부 구현예들에 따른 예시적인 뉴럴 네트워크(neural network)의 블록도이다.
도 4a 내지 도 4e는 일부 구현예들에 따른, 합성된 현실 설정들에 대한 콘텐츠를 생성하는 방법의 흐름도 표현들이다.
도 5는 일부 구현예들에 따른, 신생 콘텐츠 엔진의 다양한 컴포넌트들로 인에이블된 서버 시스템의 블록도이다.
도 6은 일부 구현예들에 따라 캡처되는 캐릭터의 도면이다.
일반적인 실시에 따라, 도면들에 예시된 다양한 특징부들은 축척대로 그려지지 않을 수 있다. 따라서, 다양한 특징부들의 치수들은 명료함을 위해 임의로 확대되거나 또는 축소될 수 있다. 추가적으로, 도면들 중 일부는 주어진 시스템, 방법 또는 디바이스의 컴포넌트들 모두를 도시하지 않을 수 있다. 마지막으로, 유사한 도면 부호들이 명세서 및 도면들 전반에 걸쳐 유사한 특징부들을 나타내기 위해 사용될 수 있다.
[발명의 내용]
본 명세서에 개시된 다양한 구현예들은 합성된 현실 설정들에 대한 콘텐츠를 생성하기 위한 디바이스들, 시스템들, 및 방법들을 포함한다. 다양한 구현예들에서, 디바이스는 비일시적 메모리, 및 비일시적 메모리와 커플링된 하나 이상의 프로세서들을 포함한다. 일부 구현예들에서, 방법은 오브젝티브-실행기를 합성된 현실 설정으로 인스턴스화하는 단계를 포함한다. 일부 구현예들에서, 오브젝티브-실행기는 미리정의된 오브젝티브들의 세트 및 시각적 렌더링 속성들의 세트에 의해 특징지어진다. 일부 구현예들에서, 본 방법은 합성된 현실 설정을 특징짓는 콘텍스트 정보를 획득하는 단계를 포함한다. 일부 구현예들에서, 본 방법은 오브젝티브-실행기에 대한 미리정의된 액션들의 세트, 콘텍스트 정보, 및 미리정의된 오브젝티브들의 세트의 기능에 기초하여 오브젝티브-실행기에 대한 오브젝티브를 생성하는 단계를 포함한다. 일부 구현예들에서, 본 방법은 오브젝티브-실행기에 대한 오브젝티브에 기초하여 합성된 현실 설정에 대한 환경 조건들을 설정하는 단계를 포함한다. 일부 구현예들에서, 본 방법은 오브젝티브-실행기에 대한 오브젝티브에 기초하여 오브젝티브-실행기에 대한 액션들의 현재 세트 및 초기 조건들을 확립하는 단계를 포함한다. 일부 구현예들에서, 본 방법은 오브젝티브에 기초하여 오브젝티브-실행기를 수정하는 단계를 포함한다.
일부 구현예들에 따르면, 디바이스는 하나 이상의 프로세서들, 비일시적 메모리, 및 하나 이상의 프로그램들을 포함한다. 일부 구현예들에서, 하나 이상의 프로그램들은 비일시적 메모리에 저장되고, 하나 이상의 프로세서들에 의해 실행된다. 일부 구현예들에서, 하나 이상의 프로그램들은 본 명세서에 설명된 방법들 중 임의의 방법을 수행하거나 수행을 야기하기 위한 명령어들을 포함한다. 일부 구현예들에 따르면, 비일시적 컴퓨터 판독가능 저장 매체는, 디바이스의 하나 이상의 프로세서들에 의해 실행될 때, 디바이스로 하여금, 본 명세서에 설명된 방법들 중 임의의 방법을 수행하게 하거나 수행을 야기하게 하는 명령어들을 내부에 저장한다. 일부 구현예들에 따르면, 디바이스는 하나 이상의 프로세서들, 비일시적 메모리, 및 본 명세서에 설명된 방법들 중 임의의 방법을 수행하거나 수행을 야기하기 위한 수단을 포함한다.
도면들에 도시된 예시적인 구현예들의 완전한 이해를 제공하기 위해 다수의 세부사항들이 설명된다. 그러나, 도면들은 단지 본 발명의 일부 예시적인 태양들을 도시할 뿐이며, 따라서 제한적인 것으로 간주되지 않는다. 당업자들은 다른 효과적인 태양들 및/또는 변형들이 본 명세서에 설명되는 특정 세부사항들 모두를 포함하지는 않음을 인식할 것이다. 또한, 잘 알려진 시스템들, 방법들, 컴포넌트들, 디바이스들 및 회로들은 본 명세서에 설명되는 예시적인 구현예들의 더 적절한 태양들을 모호하게 하지 않도록 철저히 상세하게 설명되지 않았다.
물리적 설정은 사람들이 감지할 수 있고/있거나 사람들이 전자 시스템들의 보조 없이 상호작용할 수 있는 세계를 지칭한다. 물리적 설정들(예컨대, 물리적 숲)은 물리적 요소들(예컨대, 물리적 나무, 물리적 구조물, 및 물리적 동물)을 포함한다. 사람들은, 예컨대 촉각, 시각, 후각, 청각, 및 미각을 통해, 물리적 설정과 직접 상호작용하고/하거나 이를 감지할 수 있다.
대조적으로, 합성된 현실(synthesized reality, SR) 설정은 사람들이 감지할 수 있고/있거나 사람들이 전자 시스템을 통해 상호작용할 수 있는 전체적으로 또는 부분적으로 컴퓨터-생성된 설정을 지칭한다. SR에서, 사람의 움직임들의 서브세트가 모니터링되고, 그것에 응답하여, SR 설정에서 하나 이상의 가상 객체들의 하나 이상의 속성들이 하나 이상의 물리 법칙들을 따르는 방식으로 변경된다. 예를 들어, SR 시스템은 사람이 몇 걸음 앞으로 걷는 것을 검출할 수 있고, 그것에 응답하여, 이러한 풍경과 사운드들이 물리적 설정에서 변하는 방법과 유사한 방식으로 사람에게 제시되는 그래픽 및 오디오를 조정할 수 있다. SR 설정에서 가상 객체(들)의 속성(들)에 대한 수정은 또한 움직임의 표현들(예컨대, 오디오 명령어들)에 응답하여 이루어질 수 있다.
사람은 촉각, 후각, 시각, 미각, 및 청각을 포함하는 자신의 감각들 중 임의의 감각을 사용하여 SR 객체와 상호작용하고/하거나 이를 감지할 수 있다. 예를 들어, 사람은 다차원(예컨대, 3차원) 또는 공간 청각적 설정을 생성하고/하거나 청각적 투명성을 가능하게 하는 청각적 객체들과 상호작용하고/하거나 이를 감지할 수 있다. 다차원 또는 공간 청각적 설정들은 사람에게 다차원 공간에서 별개의 청각적 소스들의 인식을 제공한다. 청각적 투명성은 물리적 설정으로부터의 사운드를, 컴퓨터-생성된 오디오와 함께 또는 그것 없이 선택적으로 통합한다. 일부 SR 설정들에서, 사람은 단지 청각적 객체들과 상호작용하고/하거나 이를 감지할 수 있다.
SR의 일례는 가상 현실(virtual reality, VR)이다. VR 설정은 단지, 감각들 중 적어도 하나의 감각에 대한 컴퓨터-생성된 감각 입력들을 포함하도록 설계되는 시뮬레이션 설정을 지칭한다. VR 설정은 사람이 상호작용하고/하거나 감지할 수 있는 다수의 가상 객체들을 포함한다. 사람은 컴퓨터-생성된 설정 내에서 사람의 액션들의 서브세트의 시뮬레이션을 통해, 그리고/또는 컴퓨터-생성된 설정 내에서 사람 또는 그의 존재의 시뮬레이션을 통해 VR 설정에서의 가상 객체들과 상호작용하고/하거나 이를 감지할 수 있다.
SR의 다른 예는 혼합 현실(mixed reality, MR)이다. MR 설정은 컴퓨터-생성된 감각 입력들(예컨대, 가상 객체들)을 물리적 설정, 또는 그것의 표현으로부터의 감각 입력들과 통합하도록 설계되는 시뮬레이션 설정을 지칭한다. 현실 스펙트럼 상에서, 혼합 현실 설정은 한편으로 VR 설정과 다른 한편으로 전체 물리적 설정 사이에 존재하며, 양측 모두를 포함하지는 않는다.
일부 MR 설정들에서, 컴퓨터-생성된 감각 입력들은 물리적 설정으로부터의 감각 입력들의 변화들에 적응할 수 있다. 또한, MR 설정들을 제시하기 위한 일부 전자 시스템들은 가상 객체들과 실제 객체들(이는 물리적 설정 또는 그것의 표현들로부터의 물리적 요소들임) 사이의 상호작용을 인에이블하기 위해 물리적 설정에 대한 배향 및/또는 위치를 모니터링할 수 있다. 예를 들어, 시스템은, 가상 식물이 물리적 빌딩에 대하여 고정된 것처럼 보이도록 움직임들을 모니터링할 수 있다.
혼합 현실의 일례는 증강 현실(augmented reality, AR)이다. AR 설정은 적어도 하나의 가상 객체가 물리적 설정, 또는 그것의 표현 위에 중첩되는 시뮬레이션 설정을 지칭한다. 예를 들어, 전자 시스템은 불투명 디스플레이, 및 물리적 설정의 표현들인, 물리적 설정의 이미지들 또는 비디오를 캡처하기 위한 적어도 하나의 이미징 센서를 가질 수 있다. 시스템은 이미지들 또는 비디오를 가상 객체들과 조합하고, 불투명 디스플레이 상에 그 조합을 디스플레이한다. 사람은, 시스템을 사용하여, 물리적 설정의 이미지들 또는 비디오를 통해 간접적으로 물리적 설정을 보고, 물리적 설정 위에 중첩된 가상 객체들을 관찰한다. 시스템이 이미지 센서(들)를 사용하여 물리적 설정의 이미지들을 캡처하고, 이들 이미지들을 사용하여 불투명 디스플레이 상에 AR 설정을 제시할 때, 디스플레이되는 이미지들은 비디오 패스-스루(video pass-through)라고 불린다. 대안적으로, AR 설정을 디스플레이하기 위한 전자 시스템은 사람이 물리적 설정을 직접 볼 수 있는 투명 또는 반투명 디스플레이를 가질 수 있다. 시스템은 가상 객체들을 투명 또는 반투명 디스플레이 상에 디스플레이하여, 사람이, 시스템을 사용하여, 물리적 설정 위에 중첩된 가상 객체들을 관찰하도록 할 수 있다. 다른 예에서, 시스템은 가상 객체들을 물리적 설정 안으로 투사하는 투사 시스템을 포함할 수 있다. 가상 객체들은, 예를 들어 물리적 표면 상에 또는 홀로그래프로서 투사되어, 사람이, 시스템을 사용하여, 물리적 설정 위에 중첩된 가상 객체들을 관찰하도록 할 수 있다.
증강 현실 설정은 또한, 물리적 설정의 표현이 컴퓨터-생성된 감각 정보에 의해 변경되는 시뮬레이션 설정을 지칭할 수 있다. 예를 들어, 물리적 설정의 표현의 일부가 그래픽적으로 변경(예컨대, 확대)될 수 있으며, 따라서 변경된 부분은 여전히 원래 캡처된 이미지(들)를 나타낼 수 있지만 원래 캡처된 이미지(들)의 충실하게 재현된 버전은 아닐 수 있다. 다른 예로서, 비디오 패스-스루를 제공함에 있어서, 시스템은 센서 이미지들 중 적어도 하나를 변경하여 이미지 센서(들)에 의해 캡처된 관점과 상이한 특정 관점을 부과할 수 있다. 추가적인 예로서, 물리적 설정의 표현은 그것의 일부들을 그래픽적으로 모호하게 함으로써 또는 제외시킴으로써 변경될 수 있다.
혼합 현실의 다른 예는 증강 가상(augmented virtuality, AV)이다. AV 설정은 컴퓨터-생성된 또는 가상 설정이 물리적 설정으로부터의 적어도 하나의 감각 입력을 통합하는 시뮬레이션 설정을 지칭한다. 물리적 설정으로부터의 감각 입력(들)은 물리적 설정의 적어도 하나의 특성의 표현일 수 있다. 예를 들어, 가상 객체는 이미징 센서(들)에 의해 캡처된 물리적 요소의 색상을 취할 수 있다. 다른 예에서, 가상 객체는 이미징, 날씨-관련 센서들, 및/또는 온라인 날씨 데이터를 통해 식별되는 바와 같이, 물리적 설정에서의 실제 날씨 조건들에 일치하는 특성들을 나타낼 수 있다. 또 다른 예에서, 증강 현실 숲은 가상의 나무들 및 구조물들을 가질 수 있지만, 동물들은 물리적 동물들에 대해 찍은 이미지들로부터 정확하게 재현되는 특징부들을 가질 수 있다.
많은 전자 시스템들은 사람이 다양한 SR 설정들과 상호작용하게 하고/하거나 이를 감지할 수 있게 한다. 일례는 헤드 마운트 시스템들을 포함한다. 헤드 마운트 시스템은 불투명 디스플레이 및 스피커(들)를 가질 수 있다. 대안적으로, 헤드 마운트 시스템은 외부 디스플레이(예컨대, 스마트폰)를 수용하도록 설계될 수 있다. 헤드 마운트 시스템은 각각 물리적 설정의 이미지들/비디오를 촬영하고/하거나 오디오를 캡처하기 위한 이미징 센서(들) 및/또는 마이크로폰들을 가질 수 있다. 헤드 마운트 시스템은 또한 투명 또는 반투명 디스플레이를 가질 수 있다. 투명 또는 반투명 디스플레이는 기판을 포함할 수 있는데, 이를 통해 이미지들을 나타내는 광이 사람의 눈으로 인도된다. 디스플레이는 LED, OLED, 디지털 광 프로젝터, 레이저 스캐닝 광원, 실리콘 액정 표시 장치(liquid crystal on silicon), 또는 이들 기술들의 임의의 조합을 포함할 수 있다. 광이 투과될 수 있는 기판은 광 도파관, 광학 조합기, 광학 반사기, 홀로그래픽 기판, 또는 이들 기판들의 임의의 조합일 수 있다. 일 실시예에서, 투명 또는 반투명 디스플레이는 불투명 상태와 투명 또는 반투명 상태 사이에서 선택적으로 전환될 수 있다. 다른 예에서, 전자 시스템은 투사-기반 시스템일 수 있다. 투사-기반 시스템은 망막 투사를 사용하여 이미지들을 사람의 망막 상으로 투사할 수 있다. 대안적으로, 투사 시스템은 또한 가상 객체들을 물리적 설정으로(예컨대, 물리적 표면 상으로 또는 홀로그래프로서) 투사할 수 있다. SR 시스템들의 다른 예들은 헤드 업 디스플레이, 그래픽을 디스플레이하는 능력을 갖는 자동차 앞유리, 그래픽을 디스플레이하는 능력을 갖는 창, 그래픽을 디스플레이하는 능력을 갖는 렌즈, 헤드폰 또는 이어폰, 스피커 배열, 입력 메커니즘(예컨대, 햅틱 피드백을 갖거나 갖지 않는 제어기), 태블릿, 스마트폰, 및 데스크톱 또는 랩톱 컴퓨터를 포함한다.
본 발명은 합성된 현실 설정들에 대한 콘텐츠를 생성하기 위한 방법들, 시스템들, 및/또는 디바이스들을 제공한다. 신생 콘텐츠 엔진은 오브젝티브-실행기에 대한 오브젝티브들을 생성하고, 오브젝티브-실행기 엔진들이 오브젝티브들을 충족시키는 액션들을 생성할 수 있도록 대응하는 오브젝티브-실행기 엔진들에 오브젝티브들을 제공한다. 신생 콘텐츠 엔진에 의해 생성된 오브젝티브들은 오브젝티브-실행기 엔진들이 액션들을 생성하는 플롯들 또는 스토리 라인들을 나타낸다. 오브젝티브들을 생성하는 것은 정적 오브젝티브-실행기들을 제시하는 것과는 대조적으로 액션들을 수행하는 동적 오브젝티브-실행기들의 제시를 가능하게 함으로써, 사용자 경험을 향상시키고 합성된 현실 설정을 제시하는 디바이스의 기능을 개선시킨다.
도 1a는 일부 구현예들에 따른 예시적인 동작 환경(100)의 블록도이다. 관련 특징부들이 도시되어 있지만, 당업자는 본 발명으로부터, 간결함을 위해 그리고 본 명세서에 개시되는 예시적인 구현예들의 더 많은 관련 태양들을 모호하게 하지 않도록 하기 위해 다양한 다른 특징부들이 예시되지 않았음을 인식할 것이다. 이를 위해, 비제한적인 예로서, 동작 환경(100)은 제어기(102) 및 전자 디바이스(103)를 포함한다. 도 1a의 예에서, 전자 디바이스(103)는 사용자(10)에 의해 쥐어진다. 일부 구현예들에서, 전자 디바이스(103)는 스마트폰, 태블릿, 랩톱 등을 포함한다.
도 1a에 예시된 바와 같이, 전자 디바이스(103)는 합성된 현실 설정(106)을 제시한다. 일부 구현예들에서, 합성된 현실 설정(106)은 제어기(102) 및/또는 전자 디바이스(103)에 의해 생성된다. 일부 구현예들에서, 합성된 현실 설정(106)은 물리적 설정의 합성된 대체물인 가상 설정을 포함한다. 다시 말하면, 일부 구현예들에서, 합성된 현실 설정(106)은 제어기(102) 및/또는 전자 디바이스(103)에 의해 합성된다. 그러한 구현예들에서, 합성된 현실 설정(106)은 제어 디바이스(103)가 위치되는 물리적 설정과는 상이하다. 일부 구현예들에서, 합성된 현실 설정(106)은 물리적 설정의 수정된 버전인 증강 설정을 포함한다. 예를 들어, 일부 구현예들에서, 제어기(102) 및/또는 전자 디바이스(103)는, 합성된 현실 설정(106)을 생성하기 위해 전자 디바이스(103)가 위치되는 물리적 설정을 수정(예컨대, 증강)한다. 일부 구현예들에서, 제어기(102) 및/또는 전자 디바이스(103)는 전자 디바이스(103)가 위치되는 물리적 설정의 복제물을 시뮬레이션함으로써 합성된 현실 설정(106)을 생성한다. 일부 구현예들에서, 제어기(102) 및/또는 전자 디바이스(103)는 전자 디바이스(103)가 위치되는 물리적 설정의 합성된 복제물로부터 아이템들을 제거함으로써 그리고/또는 추가함으로써 합성된 현실 설정(106)을 생성한다.
일부 구현예들에서, 합성된 현실 설정(106)은 보이 액션 피규어(boy action figure) 표현(108a), 걸 액션 피규어(girl action figure) 표현(108b), 로봇 표현(108c), 및 드론 표현(108d)과 같은 오브젝티브-실행기들의 다양한 SR 표현들을 포함한다. 일부 구현예들에서, 오브젝티브-실행기들은 영화, 비디오 게임, 만화, 및 소설과 같은 허구적 자료(fictional material)들로부터의 캐릭터들을 표현한다. 예를 들어, 보이 액션 피규어 표현(108a)은 허구적 만화로부터의 '보이 액션 피규어' 캐릭터를 표현하고, 걸 액션 피규어 표현(108b)은 허구적 비디오 게임으로부터의 '걸 액션 피규어' 캐릭터를 표현한다. 일부 구현예들에서, 합성된 현실 설정(106)은 상이한 허구적 자료들로부터의(예컨대, 상이한 영화들/게임들/만화들/소설들로부터의) 캐릭터들을 표현하는 오브젝티브-실행기들을 포함한다. 다양한 구현예들에서, 오브젝티브-실행기들은 사물(예컨대, 유형의 객체들)을 표현한다. 예를 들어, 일부 구현예들에서, 오브젝티브-실행기들은 장비(예컨대, 비행기, 탱크, 로봇, 자동차 등과 같은 기계류)를 표현한다. 도 1a의 예에서, 로봇 표현(108c)은 로봇을 표현하고, 드론 표현(108d)은 드론을 표현한다. 일부 구현예들에서, 오브젝티브-실행기들은 허구적 자료로부터의 사물들(예컨대, 장비)을 표현한다. 일부 구현예들에서, 오브젝티브-실행기들은 합성된 현실 설정(106)의 내부 및/또는 외부에 위치된 사물들을 포함하는, 물리적 설정으로부터의 사물들을 표현한다.
다양한 구현예들에서, 오브젝티브-실행기들은 하나 이상의 액션들을 수행한다. 일부 구현예들에서, 오브젝티브-실행기들은 액션들의 시퀀스를 수행한다. 일부 구현예들에서, 제어기(102) 및/또는 전자 디바이스(103)는 오브젝티브-실행기들이 수행해야 하는 액션들을 결정한다. 일부 구현예들에서, 오브젝티브-실행기들의 액션들은, 대응하는 캐릭터들/사물들이 허구적 자료에서 수행하는 액션들과 어느 정도의 유사성 내에 있다. 도 1a의 예에서, 걸 액션 피규어 표현(108b)은 (예컨대, 대응하는 '걸 액션 피규어' 캐릭터가 비행할 수 있기 때문에) 비행 액션을 수행하고 있다. 도 1a의 예에서, 드론 표현(108d)은 (예컨대, 실세계에서의 드론들이 호버링(hovering)할 수 있기 때문에) 호버링 액션을 수행하고 있다. 일부 구현예들에서, 제어기(102) 및/또는 전자 디바이스(103)는 오브젝티브-실행기들에 대한 액션들을 획득한다. 예를 들어, 일부 구현예들에서, 제어기(102) 및/또는 전자 디바이스(103)는 액션들을 결정하는(예컨대, 선택하는) 원격 서버로부터 오브젝티브-실행기들에 대한 액션들을 수신한다.
다양한 구현예들에서, 오브젝티브-실행기는 오브젝티브를 충족시키기 위해(예컨대, 완료하거나 또는 달성하기 위해) 액션을 수행한다. 일부 구현예들에서, 오브젝티브-실행기는 특정 오브젝티브와 연관되고, 오브젝티브-실행기는 그 특정 오브젝티브를 충족시킬 가능성을 개선시키는 액션들을 수행한다. 일부 구현예들에서, 예를 들어, 오브젝티브-실행기들의 SR 표현들이 다양한 객체들(예컨대, 실제 객체들, 또는 허구적 객체들)을 나타내기 때문에, 오브젝티브-실행기들의 SR 표현들은 객체 표현들로서 지칭된다. 일부 구현예들에서, 캐릭터를 표현하는 오브젝티브-실행기는 캐릭터 오브젝티브-실행기로 지칭된다. 일부 구현예들에서, 캐릭터 오브젝티브-실행기는 캐릭터 오브젝티브를 유효하게 하기 위한 액션들을 수행한다. 일부 구현예들에서, 장비를 표현하는 오브젝티브-실행기는 장비 오브젝티브-실행기로 지칭된다. 일부 구현예들에서, 장비 오브젝티브-실행기는 장비 오브젝티브를 유효하게 하기 위한 액션들을 수행한다. 일부 구현예들에서, 환경을 표현하는 오브젝티브-실행기는 환경 오브젝티브-실행기로 지칭된다. 일부 구현예들에서, 환경 오브젝티브-실행기는 환경 오브젝티브를 유효하게 하기 위한 환경 액션들을 수행한다.
일부 구현예들에서, 합성된 현실 설정(106)은 사용자(10)로부터의 사용자 입력에 기초하여 생성된다. 예를 들어, 일부 구현예들에서, 전자 디바이스(103)는 합성된 현실 설정(106)에 대한 지형을 나타내는 사용자 입력을 수신한다. 그러한 구현예들에서, 제어기(102) 및/또는 전자 디바이스(103)는, 합성된 현실 설정(106)이 사용자 입력을 통해 표시된 지형을 포함하도록 합성된 현실 설정(106)을 구성한다. 일부 구현예들에서, 사용자 입력은 환경 조건들을 나타낸다. 그러한 구현예들에서, 제어기(102) 및/또는 전자 디바이스(103)는 사용자 입력에 의해 표시된 환경 조건들을 갖도록 합성된 현실 설정(106)을 구성한다. 일부 구현예들에서, 환경 조건들은 온도, 습도, 압력, 가시성, 주변광 레벨, 주변 사운드 레벨, 하루 중 시간(예컨대, 아침, 오후, 저녁, 또는 밤), 및 강수(예컨대, 구름, 비 또는 눈) 중 하나 이상을 포함한다.
일부 구현예들에서, 오브젝티브-실행기들에 대한 액션들은 사용자(10)로부터의 사용자 입력에 기초하여 결정된다(예컨대, 생성된다). 예를 들어, 일부 구현예들에서, 전자 디바이스(103)는 오브젝티브-실행기들의 SR 표현들의 배치를 나타내는 사용자 입력을 수신한다. 그러한 구현예들에서, 제어기(102) 및/또는 전자 디바이스(103)는 사용자 입력에 의해 표시된 배치에 따라 오브젝티브-실행기들의 SR 표현들을 위치시킨다. 일부 구현예들에서, 사용자 입력은 오브젝티브-실행기들이 수행하도록 허용되는 특정 액션들을 나타낸다. 그러한 구현예들에서, 제어기(102) 및/또는 전자 디바이스(103)는 사용자 입력에 의해 표시된 특정 액션들로부터 오브젝티브-실행기에 대한 액션들을 선택한다. 일부 구현예들에서, 제어기(102) 및/또는 전자 디바이스(103)는 사용자 입력에 의해 표시된 특정 액션들 중에 있지 않은 액션들을 보류한다.
도 1b는 일부 구현예들에 따른 예시적인 동작 환경(100a)의 블록도이다. 관련 특징부들이 도시되어 있지만, 당업자는 본 발명으로부터, 간결함을 위해 그리고 본 명세서에 개시되는 예시적인 구현예들의 더 많은 관련 태양들을 모호하게 하지 않도록 하기 위해 다양한 다른 특징부들이 예시되지 않았음을 인식할 것이다. 이를 위해, 비제한적인 예로서, 동작 환경(100a)은 제어기(102) 및 헤드 장착가능 디바이스(HMD)(104)를 포함한다. 도 1b의 예에서, HMD(104)는 사용자(10)에 의해 착용된다. 다양한 구현예들에서, HMD(104)는 도 1a에 도시된 전자 디바이스(103)와 실질적으로 동일한 방식으로 동작한다. 일부 구현예들에서, HMD(104)는 도 1a에 도시된 전자 디바이스(103)와 실질적으로 동일한 동작들을 수행한다. 일부 구현예들에서, HMD(104)는 헤드 장착가능 인클로저를 포함한다. 일부 구현예들에서, 헤드 장착가능 인클로저는 디스플레이를 갖는 전자 디바이스(예컨대, 도 1a에 도시된 전자 디바이스(103))를 수용하기 위한 리셉터클을 형성하도록 형상화된다. 일부 구현예들에서, HMD(104)는 합성된 현실 경험을 사용자(10)에게 제시하기 위한 통합형 디스플레이를 포함한다.
도 2는 합성된 현실 설정에서 다양한 오브젝티브-실행기들에 대한 오브젝티브들을 생성하는 예시적인 시스템(200)의 블록도이다. 예를 들어, 시스템(200)은 도 1a에 도시된 보이 액션 피규어 표현(108a), 걸 액션 피규어 표현(108b), 로봇 표현(108c), 및/또는 드론 표현(108d)에 대한 오브젝티브들을 생성한다. 도 2의 예에서, 시스템(200)은 보이 액션 피규어 표현(108a), 걸 액션 피규어 표현(108b), 로봇 표현(108c), 및 드론 표현(108d)에 대한 액션들(210)을 각각 생성하는 보이 액션 피규어 캐릭터 엔진(208a), 걸 액션 피규어 캐릭터 엔진(208b), 로봇 장비 엔진(208c), 및 드론 장비 엔진(208d)을 포함한다. 일부 구현예들에서, 시스템(200)은 또한 환경 엔진(208e), 신생 콘텐츠 엔진(250), 및 디스플레이 엔진(260)을 포함한다.
다양한 구현예들에서, 신생 콘텐츠 엔진(250)은 합성된 현실 설정에 있는 오브젝티브-실행기들에 대한 그리고/또는 합성된 현실 설정의 환경에 대한 각각의 오브젝티브들(254)을 생성한다. 도 2의 예에서, 신생 콘텐츠 엔진(250)은 보이 액션 피규어 표현(108a)에 대한 보이 액션 피규어 오브젝티브들(254a), 걸 액션 피규어 표현(108b)에 대한 걸 액션 피규어 오브젝티브들(254b), 로봇 표현(208c)에 대한 로봇 오브젝티브들(254c), 드론 표현(108d)에 대한 드론 오브젝티브들(254d), 및/또는 합성된 현실 설정(106)의 환경에 대한 환경 오브젝티브들(254e)(예컨대, 환경 조건들)을 생성한다. 도 2에 예시된 바와 같이, 신생 콘텐츠 엔진(250)은 오브젝티브들(254)을 대응하는 캐릭터/장비/환경 엔진들에 제공한다. 도 2의 예에서, 신생 콘텐츠 엔진(250)은 보이 액션 피규어 오브젝티브들(254a)을 보이 액션 피규어 캐릭터 엔진(208a)에, 걸 액션 피규어 오브젝티브들(254b)을 걸 액션 피규어 캐릭터 엔진(208b)에, 로봇 오브젝티브들(254c)을 로봇 장비 엔진(208c)에, 드론 오브젝티브들(254d)을 드론 장비 엔진(208d)에, 그리고 환경 오브젝티브들(254e)을 환경 엔진(208e)에 제공한다.
다양한 구현예들에서, 신생 콘텐츠 엔진(250)은 캐릭터/장비/환경 엔진들에 의해 제공된 액션들(210), 합성된 현실 설정을 특징짓는 콘텍스트 정보(258), 및 가능한 오브젝티브들(252)(예컨대, 미리정의된 오브젝티브들의 세트)의 기능에 기초하여 오브젝티브들(254)을 생성한다. 예를 들어, 일부 구현예들에서, 신생 콘텐츠 엔진(250)은 콘텍스트 정보(258) 및/또는 액션들(210)에 기초하여 가능한 오브젝티브들(252)로부터 오브젝티브들(254)을 선택함으로써 오브젝티브들(254)을 생성한다. 일부 구현예들에서, 가능한 오브젝티브들(252)은 데이터저장소(datastore)에 저장된다. 일부 구현예들에서, 가능한 오브젝티브들(252)은 (예컨대, 비디오 게임들, 영화들, 소설들, 및/또는 만화들을 스크레이핑(scraping)함으로써) 대응하는 허구적 소스 자료로부터 획득된다. 예를 들어, 일부 구현예들에서, 걸 액션 피규어 표현(108b)에 대한 가능한 오브젝티브들(252)은 생명을 구하는 것, 애완동물을 구조하는 것, 범죄와 싸우는 것 등을 포함한다.
일부 구현예들에서, 신생 콘텐츠 엔진(250)은 캐릭터/장비/환경 엔진들에 의해 제공되는 액션들(210)에 기초하여 오브젝티브들(254)을 생성한다. 일부 구현예들에서, 신생 콘텐츠 엔진(250)은, 액션들(210)을 고려하여, 오브젝티브들(254)을 완료할 확률이 임계치를 충족시키도록(예컨대, 확률이 임계치보다 큼, 예를 들어 확률이 80% 초과임) 오브젝티브들(254)을 생성한다. 일부 구현예들에서, 신생 콘텐츠 엔진(250)은 액션들(210)로 완료되는 가능성이 높은 오브젝티브들(254)을 생성한다.
일부 구현예들에서, 신생 콘텐츠 엔진(250)은 액션들(210)에 기초하여 가능한 오브젝티브들(252)의 랭킹을 매긴다. 일부 구현예들에서, 특정의 가능한 오브젝티브(252)에 대한 랭킹은 액션들(210)을 고려하여 그러한 특정의 가능한 오브젝티브(252)를 완료할 가능성을 나타낸다. 그러한 구현예들에서, 신생 콘텐츠 엔진(250)은 최고 N개 랭킹의 가능한 오브젝티브들(252)을 선택함으로써 오브젝티브(254)를 생성하며, 여기서 N은 미리정의된 정수(예컨대, 1, 3, 5, 10 등)이다.
일부 구현예들에서, 신생 콘텐츠 엔진(250)은 오브젝티브들(254)에 기초하여 합성된 현실 설정에 대한 초기/종료 상태들(256)을 확립한다. 일부 구현예들에서, 초기/종료 상태들(256)은 합성된 현실 설정 내의 다양한 캐릭터/장비 표현들의 배치들(예컨대, 위치들)을 나타낸다. 일부 구현예들에서, 합성된 현실 설정은 지속시간(예컨대, 몇 초, 몇 분, 몇 시간, 또는 며칠)과 연관된다. 예를 들어, 합성된 현실 설정은 지속시간 동안 지속되도록 스케줄링된다. 그러한 구현예들에서, 초기/종료 상태들(256)은 지속시간의 시작 시의/무렵의 그리고/또는 지속시간의 종료 시의/무렵의 다양한 캐릭터/장비 표현들의 배치들을 나타낸다. 일부 구현예들에서, 초기/종료 상태들(256)은 합성된 현실 설정과 연관된 지속시간의 시작/종료 시의/무렵의 합성된 현실 설정에 대한 환경 조건들을 나타낸다.
일부 구현예들에서, 신생 콘텐츠 엔진(250)은 캐릭터/장비/환경 엔진들에 추가하여 디스플레이 엔진(260)에 오브젝티브들(254)을 제공한다. 일부 구현예들에서, 디스플레이 엔진(260)은 캐릭터/장비/환경 엔진들에 의해 제공된 액션들(210)이 신생 콘텐츠 엔진(250)에 의해 제공된 오브젝티브들(254)과 부합되는지 여부를 결정한다. 예를 들어, 디스플레이 엔진(260)은 액션들(210)이 오브젝티브들(254)을 충족시키는지 여부를 결정한다. 다시 말하면, 일부 구현예들에서, 디스플레이 엔진(260)은 액션들(210)이 오브젝티브들(254)을 완료하는/달성하는 가능성을 개선시키는지 여부를 결정한다. 일부 구현예들에서, 액션들(210)이 오브젝티브들(254)을 충족시키면, 디스플레이 엔진(260)은 액션들(210)에 따라 합성된 현실 설정을 수정한다. 일부 구현예들에서, 액션들(210)이 오브젝티브들(254)을 충족시키지 않으면, 디스플레이 엔진(260)은 액션들(210)에 따라 합성된 현실 설정을 수정하는 것을 보류한다.
도 3a는 일부 구현예들에 따른 예시적인 신생 콘텐츠 엔진(300)의 블록도이다. 일부 구현예들에서, 신생 콘텐츠 엔진(300)은 도 2에 도시된 신생 콘텐츠 엔진(250)을 구현한다. 다양한 구현예들에서, 신생 콘텐츠 엔진(300)은 합성된 현실 설정(예컨대, 도 1a에 도시된 보이 액션 피규어 표현(108a), 걸 액션 피규어 표현(108b), 로봇 표현(108c), 및/또는 드론 표현(108d)과 같은 캐릭터/장비 표현들)에서 인스턴스화되는 다양한 오브젝티브-실행기들에 대한 오브젝티브들(254)을 생성한다. 일부 구현예들에서, 오브젝티브들(254) 중 적어도 일부는 합성된 현실 설정의 환경에 영향을 주는 환경 엔진(예컨대, 도 2에 도시된 환경 엔진(208e))에 대한 것이다.
다양한 구현예들에서, 신생 콘텐츠 엔진(300)은 뉴럴 네트워크 시스템(310)(이하에서 간결함을 위해, "뉴럴 네트워크(310)"), 뉴럴 네트워크(310)를 트레이닝하는(예컨대, 구성하는) 뉴럴 네트워크 트레이닝 시스템(330)(이하에서 간결함을 위해, "트레이닝 모듈(330)"), 및 가능한 오브젝티브들(360)을 뉴럴 네트워크(310)에 제공하는 스크레이퍼(scraper)(350)를 포함한다. 다양한 구현예들에서, 뉴럴 네트워크(310)는 오브젝티브들(254)(예컨대, 도 2에 도시된 보이 액션 피규어 표현(108a)에 대한 오브젝티브들(254a), 걸 액션 피규어 표현(108b)에 대한 오브젝티브들(254b), 로봇 표현(108c)에 대한 오브젝티브들(254c), 드론 표현(108d)에 대한 오브젝티브들(254d), 및/또는 환경 오브젝티브들(254e))을 생성한다.
일부 구현예들에서, 뉴럴 네트워크(310)는 LSTM(long short-term memory) RNN(recurrent neural network)을 포함한다. 다양한 구현예들에서, 뉴럴 네트워크(310)는 가능한 오브젝티브들(360)의 기능에 기초하여 오브젝티브들(254)을 생성한다. 예를 들어, 일부 구현예들에서, 뉴럴 네트워크(310)는 가능한 오브젝티브들(360)의 일부를 선택함으로써 오브젝티브들(254)을 생성한다. 일부 구현예들에서, 뉴럴 네트워크(310)는 오브젝티브들(254)이 가능한 오브젝티브들(360)과 어느 정도의 유사성 내에 있도록 오브젝티브들(254)을 생성한다.
다양한 구현예들에서, 뉴럴 네트워크(310)는 합성된 현실 설정을 특징짓는 콘텍스트 정보(258)에 기초하여 오브젝티브들(254)을 생성한다. 도 3a에 예시된 바와 같이, 일부 구현예들에서, 콘텍스트 정보(258)는 인스턴스화된 장비 표현들(340), 인스턴스화된 캐릭터 표현들(342), 사용자 지정된 장면/환경 정보(344), 및/또는 오브젝티브-실행기 엔진들로부터의 액션들(210)을 나타낸다.
일부 구현예들에서, 뉴럴 네트워크(310)는 인스턴스화된 장비 표현들(340)에 기초하여 오브젝티브들(254)을 생성한다. 일부 구현예들에서, 인스턴스화된 장비 표현들(340)은 합성된 현실 설정에 위치되는 장비 표현들을 지칭한다. 예를 들어, 도 1a를 참조하면, 인스턴스화된 장비 표현들(340)은 합성된 현실 설정(106)에서의 로봇 표현(108c) 및 드론 표현(108d)을 포함한다. 일부 구현예들에서, 오브젝티브들(254)은 인스턴스화된 장비 표현들(340) 중 하나 이상과 상호작용하는 것을 포함한다. 예를 들어, 도 1a를 참조하면, 일부 구현예들에서, 보이 액션 피규어 표현(108a)에 대한 오브젝티브들(254a) 중 하나는 로봇 표현(108c)을 파괴하는 것을 포함하고, 걸 액션 피규어 표현(108b)에 대한 오브젝티브들(254b) 중 하나는 로봇 표현(108c)을 보호하는 것을 포함한다.
일부 구현예들에서, 뉴럴 네트워크(310)는 인스턴스화된 장비 표현들(340)에 기초하여 각각의 캐릭터 표현에 대한 오브젝티브들(254)을 생성한다. 예를 들어, 도 1a를 참조하면, 합성된 현실 설정(106)이 로봇 표현(108c)을 포함하면, 보이 액션 피규어 표현(108a)에 대한 오브젝티브들(254a) 중 하나는 로봇 표현(108c)을 파괴하는 것을 포함한다. 그러나, 합성된 현실 설정(106)이 로봇 표현(108c)을 포함하지 않으면, 보이 액션 피규어 표현(108a)에 대한 오브젝티브(254a)는 합성된 현실 설정(106) 내에서 평화를 유지하는 것을 포함한다.
일부 구현예들에서, 뉴럴 네트워크(310)는 합성된 현실 설정에서 인스턴스화되는 다른 장비 표현들에 기초하여 각각의 장비 표현에 대한 오브젝티브들(254)을 생성한다. 예를 들어, 도 1a를 참조하면, 합성된 현실 설정(106)이 로봇 표현(108c)을 포함하면, 드론 표현(108d)에 대한 오브젝티브들(254d) 중 하나는 로봇 표현(108c)을 보호하는 것을 포함한다. 그러나, 합성된 현실 설정(106)이 로봇 표현(108c)을 포함하지 않으면, 드론 표현(108d)에 대한 오브젝티브(254d)는 합성된 현실 설정(106)의 센터에서 호버링하는 것을 포함한다.
일부 구현예들에서, 뉴럴 네트워크(310)는 인스턴스화된 캐릭터 표현들(342)에 기초하여 오브젝티브들(254)을 생성한다. 일부 구현예들에서, 인스턴스화된 캐릭터 표현들(342)은 합성된 현실 설정에 위치되는 캐릭터 표현들을 지칭한다. 예를 들어, 도 1a를 참조하면, 인스턴스화된 캐릭터 표현들(342)은 합성된 현실 설정(106)에서 보이 액션 피규어 표현(108a) 및 걸 액션 피규어 표현(108b)을 포함한다. 일부 구현예들에서, 오브젝티브들(254)은 인스턴스화된 캐릭터 표현들(342) 중 하나 이상과 상호작용하는 것을 포함한다. 예를 들어, 도 1a를 참조하면, 일부 구현예들에서, 드론 표현(108d)에 대한 오브젝티브들(254d) 중 하나는 걸 액션 피규어 표현(108b)을 따르는 것을 포함한다. 유사하게, 일부 구현예들에서, 로봇 표현(108c)에 대한 오브젝티브들(254c) 중 하나는 보이 액션 피규어 표현(108a)을 피하는 것을 포함한다.
일부 구현예들에서, 뉴럴 네트워크(310)는 합성된 현실 설정에서 인스턴스화되는 다른 캐릭터 표현들에 기초하여 각각의 캐릭터 표현에 대한 오브젝티브들(254)을 생성한다. 예를 들어, 도 1a를 참조하면, 합성된 현실 설정(106)이 보이 액션 피규어 표현(108a)을 포함하면, 걸 액션 피규어 표현(108b)에 대한 오브젝티브들(254b) 중 하나는 보이 액션 피규어 표현(108a)을 캐치하는 것을 포함한다. 그러나, 합성된 현실 설정(106)이 보이 액션 피규어 표현(108a)을 포함하지 않으면, 걸 액션 피규어 표현(108b)에 대한 오브젝티브(254b)는 합성된 현실 설정(106) 내에서 비행하는 것을 포함한다.
일부 구현예들에서, 뉴럴 네트워크(310)는 합성된 현실 설정에서 인스턴스화되는 캐릭터 표현들에 기초하여 각각의 장비 표현에 대한 오브젝티브들(254)을 생성한다. 예를 들어, 도 1a를 참조하면, 합성된 현실 설정(106)이 걸 액션 피규어 표현(108b)을 포함하면, 드론 표현(108d)에 대한 오브젝티브들(254d) 중 하나는 걸 액션 피규어 표현(108b)을 따르는 것을 포함한다. 그러나, 합성된 현실 설정(106)이 걸 액션 피규어 표현(108b)을 포함하지 않으면, 드론 표현(108d)에 대한 오브젝티브(254d)는 합성된 현실 설정(106)의 센터에서 호버링하는 것을 포함한다.
일부 구현예들에서, 뉴럴 네트워크(310)는 사용자 지정된 장면/환경 정보(344)에 기초하여 오브젝티브들(254)을 생성한다. 일부 구현예들에서, 사용자 지정된 장면/환경 정보(344)는 합성된 현실 설정의 경계들을 나타낸다. 그러한 구현예들에서, 뉴럴 네트워크(310)는 합성된 현실 설정의 경계들 내에서 오브젝티브들(254)이 충족될 수 있도록(예컨대, 달성될 수 있도록) 오브젝티브들(254)을 생성한다. 일부 구현예들에서, 뉴럴 네트워크(310)는 사용자 지정된 장면/환경 정보(344)에 의해 표시된 환경에 더 적합한 가능한 오브젝티브들(252)의 일부를 선택함으로써 오브젝티브들(254)을 생성한다. 예를 들어, 뉴럴 네트워크(310)는 사용자 지정된 장면/환경 정보(344)가 합성된 현실 설정 내에서 하늘이 맑다는 것을 나타낼 때, 드론 표현(108d)에 대한 오브젝티브들(254d) 중 하나를 보이 액션 피규어 표현(108a) 위에서 호버링하도록 설정한다. 일부 구현예들에서, 뉴럴 네트워크(310)는 사용자 지정된 장면/환경 정보(344)에 의해 표시된 환경에 적합하지 않은 가능한 오브젝티브들(252)의 일부를 선택하는 것을 보류한다. 예를 들어, 뉴럴 네트워크(310)는 사용자 지정된 장면/환경 정보(344)가 합성된 현실 설정 내에서 강풍을 나타낼 때 드론 표현(108d)에 대한 오브젝티브를 호버링하는 것을 보류한다.
일부 구현예들에서, 뉴럴 네트워크(310)는 다양한 오브젝티브-실행기 엔진들에 의해 제공된 액션들(210)에 기초하여 오브젝티브들(254)을 생성한다. 일부 구현예들에서, 뉴럴 네트워크(310)는 오브젝티브-실행기 엔진들에 의해 제공된 액션들(210)을 고려하여 오브젝티브들(254)이 충족될 수 있도록(예컨대, 달성될 수 있도록) 오브젝티브들(254)을 생성한다. 일부 구현예들에서, 뉴럴 네트워크(310)는 액션들(210)에 대하여 가능한 오브젝티브들(360)을 평가한다. 그러한 구현예들에서, 뉴럴 네트워크(310)는 액션들(210)에 의해 충족될 수 있는 가능한 오브젝티브들(360)을 선택함으로써 오브젝티브들(360)을 생성하고, 액션들(210)에 의해 충족될 수 없는 가능한 오브젝티브들(360)을 선택하는 것을 보류한다.
다양한 구현예들에서, 트레이닝 모듈(330)은 뉴럴 네트워크(310)를 트레이닝한다. 일부 구현예들에서, 트레이닝 모듈(330)은 뉴럴 네트워크(NN) 파라미터들(312)을 뉴럴 네트워크(310)에 제공한다. 일부 구현예들에서, 뉴럴 네트워크(310)는 뉴런들의 모델(들)을 포함하고, 뉴럴 네트워크 파라미터들(312)은 모델(들)에 대한 가중치들을 나타낸다. 일부 구현예들에서, 트레이닝 모듈(330)은 뉴럴 네트워크 파라미터들(312)을 생성하고(예컨대, 초기화 또는 개시하고), 뉴럴 네트워크(310)에 의해 생성된 오브젝티브들(254)에 기초하여 뉴럴 네트워크 파라미터들(312)을 개선한다(예컨대, 조정한다).
일부 구현예들에서, 트레이닝 모듈(330)은 뉴럴 네트워크(310)를 트레이닝하기 위해 보강 학습을 이용하는 보상 기능(332)을 포함한다. 일부 구현예들에서, 보상 기능(332)은 바람직한 오브젝티브들(254)에 긍정적인 보상을, 그리고 바람직하지 않은 오브젝티브들(254)에 부정적인 보상을 할당한다. 일부 구현예들에서, 트레이닝 단계 동안, 트레이닝 모듈(330)은 검증된 오브젝티브들을 포함하는 검증 데이터와 오브젝티브들(254)을 비교한다. 그러한 구현예들에서, 오브젝티브들(254)이 검증된 오브젝티브들과 어느 정도의 유사성 내에 있으면, 트레이닝 모듈(330)은 뉴럴 네트워크(310)를 트레이닝하는 것을 중지한다. 그러나, 오브젝티브들(254)이 검증된 오브젝티브들과 어느 정도의 유사성 내에 있지 않으면, 트레이닝 모듈(330)은 계속해서 뉴럴 네트워크(310)를 트레이닝한다. 다양한 구현예들에서, 트레이닝 모듈(330)은 트레이닝 동안/후에 뉴럴 네트워크 파라미터들(312)을 업데이트한다.
다양한 구현예들에서, 스크레이퍼(350)는 가능한 오브젝티브들(360)을 식별하기 위해 콘텐츠(352)를 스크레이핑한다. 일부 구현예들에서, 콘텐츠(352)는 영화, 비디오 게임, 만화, 소설, 및 블로그 및 코멘터리와 같은 팬-생성 콘텐츠를 포함한다. 일부 구현예들에서, 스크레이퍼(350)는 콘텐츠 스크레이핑과 연관된 다양한 방법들, 시스템들 및/또는 디바이스들을 이용하여 콘텐츠(352)를 스크레이핑한다. 예를 들어, 일부 구현예들에서, 스크레이퍼(350)는 텍스트 패턴 매칭, HTML(Hyper Text Markup Language) 파싱, DOM(Document Object Model) 파싱, 이미지 프로세싱 및 오디오 분석 중 하나 이상을 이용하여 콘텐츠(352)를 스크레이핑하고 가능한 오브젝티브들(360)을 식별한다.
일부 구현예들에서, 오브젝티브-실행기는 표현의 유형(362)과 연관되고, 뉴럴 네트워크(310)는 오브젝티브-실행기와 연관된 표현의 유형(362)에 기초하여 오브젝티브들(254)을 생성한다. 일부 구현예들에서, 표현의 유형(362)은 오브젝티브-실행기의 물리적 특성(예컨대, 색상, 자료 유형, 텍스처 등)을 나타낸다. 그러한 구현예들에서, 뉴럴 네트워크(310)는 오브젝티브-실행기의 물리적 특성에 기초하여 오브젝티브들(254)을 생성한다. 일부 구현예들에서, 표현의 유형(362)은 오브젝티브-실행기의 거동 특성(예컨대, 공격성, 친화성 등)을 나타낸다. 그러한 구현예들에서, 뉴럴 네트워크(310)는 오브젝티브-실행기의 거동 특성에 기초하여 오브젝티브들(254)을 생성한다. 예를 들어, 뉴럴 네트워크(310)는 공격성을 포함하는 거동 특성에 응답하여, 보이 액션 피규어 표현(108a)에 대해 파괴적인 오브젝티브를 생성한다. 일부 구현예들에서, 표현의 유형(362)은 오브젝티브-실행기의 기능적 특성 및/또는 성능 특성(예컨대, 강도, 속도, 가요성 등)을 나타낸다. 그러한 구현예들에서, 뉴럴 네트워크(310)는 오브젝티브-실행기의 기능적 특성에 기초하여 오브젝티브들(254)을 생성한다. 예를 들어, 뉴럴 네트워크(310)는 속도를 포함하는 거동 특성에 응답하여 걸 액션 피규어 표현(108b)에 대해 항상 이동하는 오브젝티브를 생성한다. 일부 구현예들에서, 표현의 유형(362)은 사용자 입력에 기초하여 결정된다. 일부 구현예들에서, 표현의 유형(362)은 규칙들의 조합에 기초하여 결정된다.
일부 구현예들에서, 뉴럴 네트워크(310)는 지정된 오브젝티브들(364)에 기초하여 오브젝티브들(254)을 생성한다. 일부 구현예들에서, 지정된 오브젝티브들(364)은 캐릭터/장비가 기원되는 허구적 자료를 제어하는(예컨대, 소유하거나 생성하는) 엔티티에 의해 제공된다. 예를 들어, 일부 구현예들에서, 지정된 오브젝티브들(364)은 영화 제작자, 비디오 게임 개발자, 소설가 등에 의해 제공된다. 일부 구현예들에서, 가능한 오브젝티브들(360)은 지정된 오브젝티브들(364)을 포함한다. 이와 같이, 일부 구현예들에서, 뉴럴 네트워크(310)는 지정된 오브젝티브들(364)의 일부를 선택함으로써 오브젝티브들(254)을 생성한다.
일부 구현예들에서, 오브젝티브-실행기에 대한 가능한 오브젝티브들(360)은 제한기(370)에 의해 제한된다. 일부 구현예들에서, 제한기(370)는 뉴럴 네트워크(310)가 가능한 오브젝티브들(360)의 일부를 선택하는 것을 제한한다. 일부 구현예들에서, 제한기(370)는 캐릭터/장비가 기원되는 허구적 자료를 소유하는(예컨대, 제어하는) 엔티티에 의해 제어된다. 예를 들어, 일부 구현예들에서, 제한기(370)는 영화 제작자, 비디오 게임 개발자, 소설가 등에 의해 제어된다. 일부 구현예들에서, 제한기(370) 및 뉴럴 네트워크(310)는 상이한 엔티티들에 의해 제어/동작된다. 일부 구현예들에서, 제한기(370)는 뉴럴 네트워크(310)가 허구적 자료를 제어하는 엔티티에 의해 정의된 기준을 위반하는 오브젝티브들을 생성하는 것을 제한한다.
도 3b는 일부 구현예들에 따른 뉴럴 네트워크(310)의 블록도이다. 도 3b의 예에서, 뉴럴 네트워크(310)는 입력 층(320), 제1 은닉 층(322), 제2 은닉 층(324), 분류 층(326), 및 오브젝티브 선택 모듈(328)을 포함한다. 뉴럴 네트워크(310)가 일례로서 2개의 은닉 층들을 포함하지만, 당업자는 하나 이상의 추가적인 은닉 층들이 또한 다양한 구현들에서 존재한다는 것을 본 발명으로부터 인식할 것이다. 추가적인 은닉 층들을 추가하는 것은 계산적 복잡성 및 메모리 요구들을 추가하지만, 일부 애플리케이션들에 대한 성능을 개선시킬 수 있다.
다양한 구현예들에서, 입력 층(320)은 다양한 입력들을 수신한다. 일부 구현예들에서, 입력 층(320)은 콘텍스트 정보(258)를 입력으로서 수신한다. 도 3b의 예에서, 입력 층(320)은 인스턴스화된 장비(340), 인스턴스화된 캐릭터들(342), 사용자 지정된 장면/환경 정보(344), 및 오브젝티브-실행기 엔진들로부터의 액션들(210)을 나타내는 입력들을 수신한다. 일부 구현예들에서, 뉴럴 네트워크(310)는 인스턴스화된 장비(340), 인스턴스화된 캐릭터들(342), 사용자 지정된 장면/환경 정보(344), 및/또는 액션들(210)에 기초하여 특징부 스트림(예컨대, 특징 벡터)을 생성하는 특징부 추출 모듈(도시되지 않음)을 포함한다. 그러한 구현예들에서, 특징부 추출 모듈은 특징부 스트림을 입력 층(320)에 제공한다. 이와 같이, 일부 구현예들에서, 입력 층(320)은 액션들(210), 사용자 지정된 장면/환경 정보(344), 인스턴스화된 캐릭터들(342), 및 인스턴스화된 장비(340)의 기능인 특징부 스트림을 수신한다. 다양한 구현예들에서, 입력 층(320)은 당업자에 의해 뉴런들 또는 뉴런들의 모델들로도 지칭되는 다수의 LSTM 로직 유닛들(320a)을 포함한다. 일부 그러한 구현예들에서, 특징부들로부터 LSTM 로직 유닛들(320a)로의 입력 매트릭스는 직사각형 매트릭스들을 포함한다. 이러한 매트릭스의 크기는 특징부 스트림 내에 포함된 특징부의 수의 함수이다.
일부 구현예들에서, 제1 은닉 층(322)은 다수의 LSTM 로직 유닛들(322a)을 포함한다. 일부 구현예들에서, LSTM 로직 유닛들(322a)의 수는 대략 10 내지 500개의 범위이다. 당업자는, 그러한 구현예들에서, 층 당 LSTM 로직 유닛들의 수가 이전에 알려진 접근법들보다 더 작은 자릿수들이고(O(101)-O(102)의 차수임), 이는 그러한 구현들이 고도로 리소스 제약된 디바이스들에 임베드되게 한다는 것을 이해할 것이다. 도 3b의 예에 예시된 바와 같이, 제1 은닉 층(322)은 입력 층(320)으로부터 그의 입력들을 수신한다.
일부 구현예들에서, 제2 은닉 층(324)은 다수의 LSTM 로직 유닛들(324a)을 포함한다. 일부 구현예들에서, LSTM 로직 유닛들(324a)의 수는 입력 층(320) 내의 LSTM 로직 유닛들(320a)의 수 또는 제1 은닉 층(322) 내의 LSTM 로직 유닛들(322a)의 수와 동일하거나 유사하다. 도 3b의 예에 예시된 바와 같이, 제2 은닉 층(324)은 제1 은닉 층(322)으로부터 그의 입력들을 수신한다. 추가적으로 또는 대안적으로, 일부 구현예들에서, 제2 은닉 층(324)은 입력 층(320)으로부터 그의 입력들을 수신한다.
일부 구현예들에서, 분류 층(326)은 다수의 LSTM 로직 유닛들(326a)을 포함한다. 일부 구현예들에서, LSTM 로직 유닛들(326a)의 수는 입력 층(320) 내의 LSTM 로직 유닛들(320a)의 수, 제1 은닉 층(322) 내의 LSTM 로직 유닛들(322a)의 수 또는 제2 은닉 층(324) 내의 LSTM 로직 유닛들(324a)의 수와 동일하거나 유사하다. 일부 구현예들에서, 분류 층(326)은 가능한 액션들(360)의 수와 대략 동일한 다수의 출력들을 생성하는 다항 로지스틱 함수(예컨대, 소프트-맥스 함수)의 구현을 포함한다. 일부 구현예들에서, 각각의 출력은 대응하는 오브젝티브가 액션들(210)에 의해 충족되는 확률 또는 신뢰도 측정치를 포함한다. 일부 구현예들에서, 출력들은 제한기(370)의 동작에 의해 배제되었던 오브젝티브들을 포함하지는 않는다.
일부 구현예들에서, 오브젝티브 선택 모듈(328)은 분류 층(326)에 의해 제공된 상위 N개의 오브젝티브 후보들을 선택함으로써 오브젝티브들(254)을 생성한다. 일부 구현예들에서, 상위 N개의 오브젝티브 후보들은 액션들(210)에 의해 충족될 가능성이 있다. 일부 구현예들에서, 오브젝티브 선택 모듈(328)은 오브젝티브들(254)을 렌더링 및 디스플레이 파이프라인(예컨대, 도 2에 도시된 디스플레이 엔진(260))에 제공한다. 일부 구현예들에서, 오브젝티브 선택 모듈(328)은 오브젝티브들(254)을 하나 이상의 오브젝티브-실행기 엔진들(예컨대, 도 2에 도시된 보이 액션 피규어 캐릭터 엔진(208a), 걸 액션 피규어 캐릭터 엔진(208b), 로봇 장비 엔진(208c), 드론 장비 엔진(208d), 및/또는 환경 엔진(208e))에 제공한다.
도 4a는 합성된 현실 설정들에 대한 콘텐츠를 생성하는 방법(400)의 흐름도 표현이다. 다양한 구현예들에서, 방법(400)은 비일시적 메모리 및 비일시적 메모리와 커플링된 하나 이상의 프로세서들을 갖는 디바이스(예컨대, 도 1a에 도시된 제어기(102) 및/또는 전자 디바이스(103))에 의해 수행된다. 일부 구현예들에서, 방법(400)은 하드웨어, 펌웨어, 소프트웨어, 또는 이들의 조합을 포함하는 프로세싱 로직에 의해 수행된다. 일부 구현예들에서, 방법(400)은 비일시적 컴퓨터 판독가능 매체(예를 들어, 메모리)에 저장된 코드를 실행하는 프로세서에 의해 수행된다. 간략하게, 일부 구현예들에서, 방법(400)은 오브젝티브-실행기를 합성된 현실 설정으로 인스턴스화하는 단계, 합성된 현실 설정에 대한 콘텍스트 정보를 획득하는 단계, 오브젝티브-실행기에 대한 오브젝티브를 생성하는 단계, 합성된 현실 설정에 대한 환경 조건들을 설정하는 단계, 오브젝티브에 기초하여 오브젝티브-실행기에 대한 초기 조건들을 확립하는 단계, 및 오브젝티브에 기초하여 오브젝티브-실행기를 수정하는 단계를 포함한다.
블록(410)에 의해 표현되는 바와 같이, 다양한 구현예들에서, 방법(400)은 오브젝티브-실행기를 합성된 현실 설정으로 인스턴스화하는 단계(예컨대, 보이 액션 피규어 표현(108a), 걸 액션 피규어 표현(108b), 로봇 표현(108c), 및/또는 드론 표현(108d)을 도 1a에 도시된 합성된 현실 설정(106)으로 인스턴스화하는 단계)를 포함한다. 일부 구현예들에서, 오브젝티브-실행기는 미리정의된 오브젝티브들(예컨대, 도 3a에 도시된 가능한 오브젝티브들(360))의 세트 및 시각적 렌더링 속성들의 세트에 의해 특징지어진다.
블록(420)에 의해 표현되는 바와 같이, 다양한 구현예들에서, 방법(400)은 합성된 현실 설정을 특징짓는 콘텍스트 정보(예컨대, 도 2 내지 도 3b에 도시된 콘텍스트 정보(258))를 획득하는 단계를 포함한다. 일부 구현예들에서, 방법(400)은 (예컨대, 사용자로부터) 콘텍스트 정보를 수신하는 단계를 포함한다.
블록(430)에 의해 표현되는 바와 같이, 다양한 구현예들에서, 방법(400)은 오브젝티브-실행기에 대한 미리정의된 액션들의 세트, 콘텍스트 정보, 및 미리정의된 오브젝티브들의 세트의 기능에 기초하여 오브젝티브-실행기에 대한 오브젝티브를 생성하는 단계를 포함한다. 예를 들어, 도 2를 참조하면, 방법(400)은 가능한 오브젝티브들(252), 콘텍스트 정보(258), 및 액션들(210)에 기초하여 오브젝티브들(254)을 생성하는 단계를 포함한다.
블록(440)에 의해 표현되는 바와 같이, 다양한 구현예들에서, 방법(400)은 오브젝티브-실행기에 대한 오브젝티브에 기초하여 합성된 현실 설정에 대한 환경 조건들을 설정하는 단계를 포함한다. 예를 들어, 도 2를 참조하면, 방법(400)은 환경 오브젝티브들(254e)(예를 들어, 환경 조건들)을 생성하는 단계를 포함한다.
블록(450)에 의해 표현되는 바와 같이, 다양한 구현예들에서, 방법(400)은 오브젝티브-실행기에 대한 오브젝티브에 기초하여 오브젝티브-실행기에 대한 액션들의 현재 세트 및 초기 조건들을 확립하는 단계를 포함한다. 예를 들어, 도 2를 참조하면, 방법(400)은 다양한 오브젝티브-실행기들(예컨대, 캐릭터 표현들, 장비 표현들 및/또는 환경)에 대한 초기/종료 상태들(256)을 확립하는 단계를 포함한다.
블록(460)에 의해 표현되는 바와 같이, 다양한 구현예들에서, 방법(400)은 오브젝티브에 기초하여 오브젝티브-실행기를 수정하는 단계를 포함한다. 예를 들어, 도 2를 참조하면, 일부 구현예들에서, 방법(400)은 오브젝티브들(254)을 디스플레이 엔진(260)에 그리고/또는 하나 이상의 오브젝티브-실행기 엔진들에 제공하는 단계를 포함한다.
도 4b를 참조하면, 블록(410a)에 의해 표현되는 바와 같이, 다양한 구현예들에서, 방법(400)은 소스 자료(예컨대, 도 3a에 도시된 콘텐츠(352), 예를 들어 영화, 책, 비디오 게임, 만화, 및/또는 소설)로부터 미리정의된 오브젝티브들의 세트(예컨대, 도 3a에 도시된 가능한 오브젝티브들(360))를 획득하는 단계를 포함한다. 블록(410b)에 의해 표현되는 바와 같이, 다양한 구현예들에서, 방법(400)은 미리정의된 오브젝티브들의 세트에 대한 소스 자료를 스크레이핑하는 단계를 포함한다.
블록(410c)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 표현의 유형(예컨대, 도 3a에 도시된 표현의 유형(362))에 기초하여 미리정의된 오브젝티브들의 세트를 결정하는 단계를 포함한다. 블록(410d)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 사용자 지정된 구성에 기초하여 미리정의된 오브젝티브들의 세트를 결정하는 단계(예컨대, 도 3a에 도시된 표현의 유형(362)은 사용자 입력에 기초하여 결정됨)를 포함한다.
블록(410e)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 객체 소유자에 의해 지정된 한계에 기초하여 미리정의된 오브젝티브들을 결정하는 단계를 포함한다. 예를 들어, 도 3a를 참조하면, 일부 구현예들에서, 방법(400)은 제한기(370)의 동작에 의해 뉴럴 네트워크(310)에 의해 선택가능한 가능한 오브젝티브들(360)을 제한하는 단계를 포함한다.
블록(410f)에 의해 표현되는 바와 같이, 일부 구현예들에서, 합성된 현실 설정(예컨대, 도 1a에 도시된 합성된 현실 설정(106))은 가상 현실 설정을 포함한다.
블록(410g)에 의해 표현되는 바와 같이, 일부 구현예들에서, 합성된 현실 설정(예컨대, 도 1a에 도시된 합성된 현실 설정(106))은 증강 현실 설정을 포함한다.
블록(410h)에 의해 표현되는 바와 같이, 일부 구현예들에서, 오브젝티브-실행기는 영화, 비디오 게임, 만화 및 소설 중 하나 이상으로부터의 캐릭터의 표현(예컨대, 도 1a에 도시된 보이 액션 피규어 표현(108a) 및/또는 걸 액션 피규어 표현(108b))이다.
블록(410i)에 의해 표현되는 바와 같이, 일부 구현예들에서, 오브젝티브-실행기는 영화, 비디오 게임, 만화 및 소설 중 하나 이상으로부터의 장비의 표현(예컨대, 도 1a에 도시된 로봇 표현(108c) 및/또는 드론 표현(108d))이다.
블록(410j)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 이미지로부터 시각적 렌더링 속성들의 세트를 획득하는 단계를 포함한다. 예를 들어, 일부 구현예들에서, 방법(400)은 이미지를 캡처하는 단계, 및 (예컨대, 이미지 프로세싱과 연관된 디바이스들, 방법들, 및/또는 시스템들을 이용함으로써) 이미지로부터 시각적 렌더링 속성들을 추출하는 단계를 포함한다.
도 4c를 참조하면, 블록(420a)에 의해 표현되는 바와 같이, 다양한 구현예들에서, 콘텍스트 정보는 오브젝티브-실행기들이 합성된 현실 설정에서 인스턴스화되었는지 여부를 나타낸다. 블록(420b)에 의해 표현되는 바와 같이, 일부 구현예들에서, 콘텍스트 정보는 합성된 현실 설정에서 어느 캐릭터 표현들이 인스턴스화되었는지를 나타낸다(예컨대, 콘텍스트 정보는 도 3a 및 도 3b에 도시된 인스턴스화된 캐릭터 표현(342)을 포함함). 블록(420c)에 의해 표현되는 바와 같이, 일부 구현예들에서, 콘텍스트 정보는 합성된 현실 설정에서 인스턴스화되었던 장비 표현들을 나타낸다(예컨대, 콘텍스트 정보는 도 3a 및 도 3b에 도시된 인스턴스화된 장비 표현들(340)을 포함함).
블록(420d)에 의해 표현되는 바와 같이, 다양한 구현예들에서, 콘텍스트 정보는 사용자 지정된 장면 정보(예컨대, 도 3a 및 도 3b에 도시된 사용자 지정된 장면/환경 정보(344))를 포함한다. 블록(420e)에 의해 표현되는 바와 같이, 다양한 구현예들에서, 콘텍스트 정보는 합성된 현실 설정의 지형(예컨대, 풍경, 예를 들어, 산, 강 등과 같은 자연적인 아티팩트들)을 나타낸다. 블록(420f)에 의해 표현되는 바와 같이, 다양한 구현예들에서, 콘텍스트 정보는 합성된 현실 설정 내의 환경 조건들(예컨대, 도 3a 및 도 3b에 도시된 사용자 지정된 장면/환경 정보(344))을 나타낸다.
블록(420g)에 의해 표현되는 바와 같이, 일부 구현예들에서, 콘텍스트 정보는 물리적 설정의 메시 맵(mesh map)(예컨대, 디바이스가 위치되는 물리적 설정의 상세한 표현)을 포함한다. 일부 구현예들에서, 메시 맵은 물리적 설정에 위치되는 실제 객체들의 위치들 및/또는 치수들을 나타낸다. 더 대체적으로, 다양한 구현예들에서, 콘텍스트 정보는 물리적 설정에 대응하는 데이터를 포함한다. 예를 들어, 일부 구현예들에서, 콘텍스트 정보는 디바이스가 위치되는 물리적 설정에 대응하는 데이터를 포함한다. 일부 구현예들에서, 콘텍스트 정보는 물리적 설정의 경계 표면(예컨대, 바닥, 벽, 및/또는 천장)을 나타낸다. 일부 구현예들에서, 물리적 설정에 대응하는 데이터는 SR 설정을 합성/수정하는 데 이용된다. 예를 들어, SR 설정은 물리적 설정에 존재하는 벽들의 SR 표현들을 포함한다.
도 4d를 참조하면, 블록(430a)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 뉴럴 네트워크(예를 들어, 도 3a 및 도 3b에 도시된 뉴럴 네트워크(310))를 이용하여 오브젝티브들을 생성하는 단계를 포함한다. 블록(430b)에 의해 표현되는 바와 같이, 일부 구현예들에서, 뉴럴 네트워크는 뉴럴 네트워크 파라미터들의 세트(예컨대, 도 3a에 도시된 뉴럴 네트워크 파라미터들(312))에 기초하여 오브젝티브들을 생성한다. 블록(430c)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 뉴럴 네트워크에 의해 생성된 오브젝티브들에 기초하여 뉴럴 네트워크 파라미터들을 조정(예컨대, 도 3a에 도시된 오브젝티브들(254)에 기초하여 뉴럴 네트워크 파라미터들(312)을 조정)하는 단계를 포함한다.
블록(430d)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 바람직한 오브젝티브들에 긍정적인 보상을 그리고 바람직하지 않은 오브젝티브들에 부정적인 보상을 할당하는 보상 기능(예컨대, 도 3a에 도시된 보상 기능(332))에 기초하여 뉴럴 네트워크 파라미터들을 결정하는 단계를 포함한다. 블록(430e)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 보강 학습에 기초하여 뉴럴 네트워크를 구성하는(예를 들어, 트레이닝하는) 단계를 포함한다. 블록(430f)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 영화와 같은 비디오들, 소설 및 만화와 같은 책들, 및 비디오 게임들로부터 (예컨대, 도 3a에 도시된 스크레이퍼(350)에 의해) 스크레이핑된 콘텐츠에 기초하여 뉴럴 네트워크를 트레이닝하는 단계를 포함한다.
블록(430g)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 제2 오브젝티브-실행기가 합성된 현실 설정에서 인스턴스화되는 경우 제1 오브젝티브를 생성하는 단계를 포함한다. 블록(430h)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 제3 오브젝티브-실행기가 합성된 현실 설정에서 인스턴스화되는 경우 제2 오브젝티브를 생성하는 단계를 포함한다. 더 대체적으로, 다양한 구현예들에서, 방법(400)은 합성된 현실 설정에 존재하는 다른 오브젝티브-실행기들에 기초하여 오브젝티브-실행기에 대한 상이한 오브젝티브들을 생성하는 단계를 포함한다.
블록(430i)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 액션들의 세트를 고려하여, 오브젝티브가 충족될 가능성이 임계치보다 큰 경우 오브젝티브를 선택하는 단계를 포함한다. 블록(430j)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 액션들의 세트를 고려하여, 오브젝티브가 충족될 가능성이 임계치보다 작은 경우 오브젝티브를 선택하는 것을 보류하는 단계를 포함한다.
도 4e를 참조하면, 블록(440a)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 합성된 현실 설정 내의 온도 값, 습도 값, 압력 값 및 강수 값 중 하나 이상을 설정하는 단계를 포함한다. 일부 구현예들에서, 방법(400)은 합성된 현실 설정에서 그것을 비 또는 눈으로 만드는 것을 포함한다. 블록(440b)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 합성된 현실 설정에 대한 (예컨대, 데시벨 단위의) 주변 사운드 레벨 값 및 (예컨대, 루멘 단위의) 주변 조명 레벨 값 중 하나 이상을 설정하는 단계를 포함한다. 블록(440c)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 합성된 현실 설정 내에서 천체들의 상태들을 설정하는 단계(예컨대, 일출 또는 일몰을 설정하는 것, 보름달(full moon) 또는 반달(partial moon)을 설정하는 것 등)를 포함한다.
블록(450a)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 오브젝티브-실행기들의 초기/종료 위치들을 확립하는 단계를 포함한다. 일부 구현예들에서, 합성된 현실 설정은 지속시간과 연관된다. 그러한 구현예들에서, 방법(400)은 오브젝티브-실행기들이 지속시간의 시작 시에 또는 그 부근에 점유하는 초기 위치들을 설정하는 단계, 및/또는 오브젝티브-실행기들이 지속시간의 종료 시에 또는 그 부근에 점유하는 종료 위치들을 설정하는 단계를 포함한다.
블록(450b)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 오브젝티브-실행기들에 대한 초기/종료 액션들을 확립하는 단계를 포함한다. 일부 구현예들에서, 합성된 현실 설정은 지속시간과 연관된다. 그러한 구현예들에서, 방법(400)은 오브젝티브-실행기들이 지속시간의 시작 시에 또는 그 부근에 수행하는 초기 액션들을 확립하는 단계, 및/또는 오브젝티브-실행기들이 지속시간의 종료 시에 또는 그 부근에 수행하는 종료 액션들을 확립하는 단계를 포함한다.
블록(460a)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 렌더링 및 디스플레이 파이프라인(예컨대, 도 2에 도시된 디스플레이 엔진(260))에 오브젝티브들을 제공하는 단계를 포함한다. 블록(460b)에 의해 표현되는 바와 같이, 일부 구현예들에서, 방법(400)은 오브젝티브-실행기의 SR 표현이 오브젝티브들을 충족시키는 액션들을 수행하는 것으로 보일 수 있도록 오브젝티브-실행기의 SR 표현을 수정하는 단계를 포함한다.
도 5는 일부 구현예들에 따른, 디바이스(예컨대, 도 1a에 도시된 제어기(102) 및/또는 전자 디바이스(103))의 하나 이상의 컴포넌트들로 인에이블되는 서버 시스템(500)의 블록도이다. 소정의 특정 특징부들이 예시되어 있지만, 당업자들은 본 발명으로부터, 간결함을 위해, 그리고 본 명세서에 개시된 구현예들의 더 적절한 태양들을 모호하게 하지 않기 위해 다양한 다른 특징부들이 예시되지 않았음을 인식할 것이다. 이를 위해, 비제한적인 예로서, 일부 구현예들에서, 서버 시스템(500)은 하나 이상의 프로세싱 유닛(CPU)들(501), 네트워크 인터페이스(502), 프로그래밍 인터페이스(503), 메모리(504), 및 이들 및 다양한 다른 컴포넌트들을 상호접속시키기 위한 하나 이상의 통신 버스들(505)을 포함한다.
일부 구현예들에서, 네트워크 인터페이스(502)는, 다른 사용들 중에서도, 클라우드 호스팅 네트워크 관리 시스템과 하나 이상의 호환 디바이스들을 포함하는 적어도 하나의 사설 네트워크 사이에 메타데이터 터널을 확립하고 유지하도록 제공된다. 일부 구현예들에서, 통신 버스들(505)은, 시스템 컴포넌트들을 상호접속시키고 그들 사이의 통신들을 제어하는 회로부를 포함한다. 메모리(504)는 고속 랜덤 액세스 메모리, 예컨대 DRAM, SRAM, DDR RAM 또는 다른 랜덤 액세스 솔리드 스테이트 메모리 디바이스들을 포함하고, 비휘발성 메모리, 예컨대 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 또는 다른 비휘발성 솔리드 스테이트 저장 디바이스들을 포함할 수 있다. 메모리(504)는, 선택적으로, CPU(들)(501)로부터 원격으로 위치된 하나 이상의 저장 디바이스들을 포함한다. 메모리(504)는 비일시적 컴퓨터 판독가능 저장 매체를 포함한다.
일부 구현예들에서, 메모리(504) 또는 메모리(504)의 비일시적 컴퓨터 판독가능 저장 매체는 선택적인 운영 체제(506), 뉴럴 네트워크(310), 트레이닝 모듈(330), 스크레이퍼(350), 및 가능한 오브젝티브들(360)을 포함하는 프로그램들, 모듈들 및 데이터 구조물들, 또는 그의 서브세트를 저장한다. 본 명세서에 기술된 바와 같이, 뉴럴 네트워크(310)는 뉴럴 네트워크 파라미터들(312)과 연관된다. 본 명세서에 기술된 바와 같이, 트레이닝 모듈(330)은 (예컨대, 뉴럴 네트워크 파라미터(312)를 결정함으로써) 뉴럴 네트워크(310)를 트레이닝하는(예컨대, 구성하는) 보상 기능(332)을 포함한다. 본 명세서에 기술된 바와 같이, 뉴럴 네트워크(310)는 합성된 현실 설정에서의 오브젝티브-실행기들에 대한 그리고/또는 합성된 현실 설정의 환경에 대한 오브젝티브들(예컨대, 도 2 내지 도 3b에 도시된 오브젝티브들(254))을 결정한다.
도 6은 캐릭터가 캡처되고 있는 환경(600)을 예시하는 도면이다. 이를 위해, 환경(600)은 디바이스(604)를 쥐고 있는 손(602), 및 허구적 자료(610)를 포함한다. 도 6의 예에서, 허구적 자료(610)는 보이 액션 피규어에 관한 책, 소설, 또는 만화를 포함한다. 허구적 자료(610)는 보이 액션 피규어의 그림(612)을 포함한다. 동작 시에, 사용자는 그림(612)이 디바이스(604)의 시야(606) 내에 있도록 디바이스(604)를 쥐고 있다. 일부 구현예들에서, 디바이스(604)는 보이 액션 피규어의 그림(612)을 포함하는 이미지를 캡처한다.
일부 구현예들에서, 그림(612)은 보이 액션 피규어를 식별하는 인코딩된 데이터(예컨대, 바코드)를 포함한다. 예를 들어, 일부 구현예들에서, 인코딩된 데이터는 그림(612)이 허구적 자료(610)로부터의 보이 액션 피규어의 것이라는 것을 지정한다. 일부 구현예들에서, 인코딩된 데이터는 디바이스(604)를, 보이 액션 피규어에 관한 정보를 포함하는 리소스로 안내하는 URL(uniform resource locator)을 포함한다. 예를 들어, 일부 구현예들에서, 리소스는 보이 액션 피규어들의 다양한 물리적 및/또는 거동 속성들을 포함한다. 일부 구현예들에서, 리소스는 보이 액션 피규어에 대한 오브젝티브들을 나타낸다.
다양한 구현예들에서, 디바이스(604)는 합성된 현실 설정에서(예컨대, 도 1a에 도시된 합성된 현실 설정(106)에서) 보이 액션 피규어의 오브젝티브-실행기의 SR 표현을 제시한다. 도 6은 캐릭터를 캡처하는 비제한적인 예를 예시한다. 일부 구현예들에서, 디바이스(604)는 오디오 입력에 기초하여 캐릭터들 및/또는 장비를 캡처한다. 예를 들어, 일부 구현예들에서, 디바이스(604)는 보이 액션 피규어를 식별하는 오디오 입력을 수신한다. 그러한 구현예들에서, 디바이스(604)는 오디오 입력에 의해 지정된 캐릭터/장비를 식별하기 위해 캐릭터들 및 장비의 데이터저장소에 질의한다.
첨부된 청구범위의 범주 내의 구현예들의 다양한 태양들이 전술되어 있지만, 전술된 구현예들의 다양한 특징부들이 매우 다양한 형태들로 구현될 수 있고 전술된 임의의 특정 구조 및/또는 기능이 단지 예시적이라는 것이 명백할 것이다. 본 발명에 기초하여, 당업자는 본 명세서에 기술된 태양이 임의의 다른 태양들과 독립적으로 구현될 수 있고 이들 태양들 중 둘 이상이 다양한 방식으로 조합될 수 있음을 이해해야 한다. 예를 들어, 본 명세서에 기술된 임의의 수의 태양들을 사용하여 장치가 구현될 수 있고/있거나 방법이 실시될 수 있다. 또한, 본 명세서에 기술된 태양들 중 하나 이상에 추가로 또는 그 이외의 다른 구조물 및/또는 기능을 사용하여 그러한 장치가 구현될 수 있고/있거나 그러한 방법이 실시될 수 있다.
용어들 "제1", "제2" 등이 다양한 요소들을 설명하기 위해 본 명세서에서 사용될 수 있지만, 이들 요소들은 이들 용어들에 의해 제한되어서는 안 된다는 것이 또한 이해될 것이다. 이러한 용어들은 하나의 요소를 다른 요소와 구별하는 데에만 사용된다. 예를 들어, 모든 "제1 노드"의 발생이 일관되게 재명명되고 모든 "제2 노드"의 발생이 일관되게 재명명되는 한, 제1 노드는 제2 노드로 지칭될 수 있고, 유사하게, 제2 노드는 제1 노드로 지칭될 수 있으며, 이는 설명의 의미를 변경한다. 제1 노드 및 제2 노드는 둘 모두 노드들이지만, 그것들은 동일한 노드가 아니다.
본 명세서에서 사용되는 용어는 단지 특정 실시예들만을 설명하는 목적을 위한 것이고, 청구범위를 제한하도록 의도되지 않는다. 본 실시예들의 설명 및 첨부된 청구범위에 사용되는 바와 같이, 단수의 형태들("a", "an" 및 "the")은 문맥상 명백히 다르게 나타나지 않는다면 복수의 형태들도 또한 포함하는 것으로 의도된다. 또한, 본 명세서에서 사용되는 바와 같은 용어 "및/또는"은 열거되는 연관된 항목들 중 하나 이상의 항목들의 임의의 그리고 모든 가능한 조합들을 나타내고 그들을 포괄하는 것임이 이해될 것이다. 본 명세서에서 사용될 때 "포함한다(comprise)" 및/또는 "포함하는(comprising)"이라는 용어들은 진술되는 특징들, 정수들, 단계들, 동작들, 요소들, 및/또는 컴포넌트들의 존재를 특정하지만, 하나 이상의 다른 특징들, 정수들, 단계들, 동작들, 요소들, 컴포넌트들 및/또는 이들의 그룹들의 존재 또는 부가를 배제하지 않는다는 것이 추가로 이해될 것이다.
본 명세서에서 사용되는 바와 같이, 상황에 따라, 진술된 선행 조건이 사실"인 경우(if)"라는 용어는 그가 사실"일 때(when)", 그가 사실"일 시(upon)" 또는 그가 사실"이라고 결정하는 것에 응답하여(in response to determining)" 또는 그가 사실"이라는 결정에 따라(in accordance with a determination)" 또는 그가 사실"임을 검출하는 것에 응답하여(in response to detecting)"를 의미하는 것으로 해석될 수 있다. 유사하게, 어구 "[언급된 선행 조건이 사실이라고] 결정하면" 또는 "[언급된 선행 조건이 사실]이면" 또는 "[언급된 선행 조건이 사실]일 때"는 맥락에 의존하여, 언급된 선행 조건이 사실"이라고 결정할 시에" 또는 그 조건이 사실"이라고 결정하는 것에 응답하여" 또는 그 조건이 사실"이라는 결정에 따라" 또는 그 조건이 사실"이라는 것을 검출할 시에" 또는 그 조건이 사실"이라는 것을 검출하는 것에 응답하여"를 의미하는 것으로 해석될 수 있다.

Claims (51)

  1. 삭제
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 방법으로서,
    비일시적 메모리 및 상기 비일시적 메모리와 커플링된 하나 이상의 프로세서들을 포함하는 디바이스에서,
    오브젝티브-실행기(objective-effectuator)를 합성된 현실 설정으로 인스턴스화하는 단계 - 상기 오브젝티브-실행기는 미리정의된 오브젝티브들의 세트 및 시각적 렌더링 속성들의 세트에 의해 특징지어짐 -;
    상기 합성된 현실 설정을 특징짓는 콘텍스트 정보를 획득하는 단계 - 상기 콘텍스트 정보는 물리적 설정에 대응하는 데이터를 포함함 -;
    상기 오브젝티브-실행기에 대한 미리정의된 액션들의 세트, 상기 콘텍스트 정보, 및 상기 미리정의된 오브젝티브들의 세트의 기능에 기초하여 상기 오브젝티브-실행기에 대한 오브젝티브를 생성하는 단계;
    상기 오브젝티브-실행기에 대한 오브젝티브에 기초하여 상기 합성된 현실 설정에 대한 환경 조건들을 설정하는 단계;
    상기 오브젝티브-실행기에 대한 오브젝티브에 기초하여 상기 오브젝티브-실행기에 대한 액션들의 현재 세트 및 초기 조건들을 확립하는 단계; 및
    상기 오브젝티브에 기초하여 상기 오브젝티브-실행기를 조작하는 단계를 포함하는, 방법.
  33. 제32항에 있어서, 상기 오브젝티브를 생성하는 단계는 뉴럴 네트워크를 이용하여 상기 오브젝티브를 생성하는 단계를 포함하는, 방법.
  34. 제33항에 있어서, 상기 뉴럴 네트워크는 뉴럴 네트워크 파라미터들의 세트에 기초하여 상기 오브젝티브를 생성하는, 방법.
  35. 제34항에 있어서,
    상기 오브젝티브에 기초하여 상기 뉴럴 네트워크 파라미터들의 세트를 조정하는 단계를 추가로 포함하는, 방법.
  36. 제34항에 있어서,
    바람직한 오브젝티브들에 긍정적인 보상들을 그리고 바람직하지 않은 오브젝티브들에 부정적인 보상들을 할당하는 보상 기능에 기초하여 상기 뉴럴 네트워크 파라미터들의 세트를 결정하는 단계를 추가로 포함하는, 방법.
  37. 제33항에 있어서,
    보강 학습에 기초하여 상기 뉴럴 네트워크를 구성하는 단계를 추가로 포함하는, 방법.
  38. 제33항에 있어서,
    상기 오브젝티브-실행기와 연관된 비디오들, 소설들, 책들, 만화들 및 비디오 게임들 중 하나 이상에 기초하여 상기 뉴럴 네트워크를 트레이닝하는 단계를 추가로 포함하는, 방법.
  39. 제32항에 있어서, 상기 오브젝티브-실행기를 조작하는 단계는,
    상기 오브젝티브를 충족시키는 액션들을 생성하는 오브젝티브-실행기 엔진에 상기 오브젝티브를 제공하는 단계를 포함하는, 방법.
  40. 제32항에 있어서,
    영화들, 비디오 게임들, 만화들 및 소설들 중 하나 이상을 포함하는 소스 자료로부터 상기 미리정의된 오브젝티브들의 세트를 획득하는 단계를 추가로 포함하는, 방법.
  41. 제40항에 있어서, 상기 미리정의된 오브젝티브들의 세트를 획득하는 단계는,
    상기 미리정의된 오브젝티브들의 세트를 추출하도록 상기 소스 자료를 스크레이핑(scraping)하는 단계를 포함하는, 방법.
  42. 제40항에 있어서, 상기 미리정의된 오브젝티브들의 세트를 획득하는 단계는,
    인스턴스화되는 상기 오브젝티브-실행기의 유형에 기초하여 상기 미리정의된 오브젝티브들의 세트를 결정하는 단계를 포함하는, 방법.
  43. 제40항에 있어서, 상기 미리정의된 오브젝티브들의 세트를 획득하는 단계는,
    상기 오브젝티브-실행기의 사용자 지정된 구성에 기초하여 상기 미리정의된 오브젝티브들의 세트를 결정하는 단계를 포함하는, 방법.
  44. 제40항에 있어서, 상기 미리정의된 오브젝티브들의 세트를 획득하는 단계는,
    상기 오브젝티브-실행기를 소유하는 엔티티에 의해 지정된 한계들에 기초하여 상기 미리정의된 오브젝티브들의 세트를 결정하는 단계를 포함하는, 방법.
  45. 제32항에 있어서,
    이미지를 캡처하는 단계; 및
    상기 이미지로부터 상기 시각적 렌더링 속성들의 세트를 획득하는 단계를 추가로 포함하는, 방법.
  46. 제32항에 있어서, 상기 오브젝티브를 생성하는 단계는,
    상기 미리정의된 액션들의 세트를 나타내는 사용자 입력을 수신하는 단계를 포함하는, 방법.
  47. 제32항에 있어서, 상기 오브젝티브를 생성하는 단계는,
    상기 오브젝티브-실행기에 대한 액션들을 생성하는 오브젝티브-실행기 엔진으로부터 상기 미리정의된 액션들의 세트를 수신하는 단계를 포함하는, 방법.
  48. 제32항에 있어서, 상기 콘텍스트 정보는, 다른 오브젝티브-실행기들이 상기 합성된 현실 설정 내에서 인스턴스화되었는지 여부를 나타내는, 방법.
  49. 제32항에 있어서, 상기 오브젝티브를 생성하는 단계는,
    제2 오브젝티브-실행기가 상기 합성된 현실 설정 내에서 인스턴스화되었음을 나타내는 상기 콘텍스트 정보에 응답하여 제1 오브젝티브를 생성하는 단계; 및
    제3 오브젝티브-실행기가 상기 합성된 현실 설정 내에서 인스턴스화되었음을 나타내는 상기 콘텍스트 정보에 응답하여 상기 제1 오브젝티브와는 상이한 제2 오브젝티브를 생성하는 단계를 포함하는, 방법.
  50. 디바이스로서,
    하나 이상의 프로세서들;
    비일시적 메모리;
    하나 이상의 디스플레이들; 및
    상기 비일시적 메모리에 저장된 하나 이상의 프로그램들을 포함하며,
    상기 하나 이상의 프로그램들은, 상기 하나 이상의 프로세서들에 의해 실행될 때, 상기 디바이스로 하여금,
    오브젝티브-실행기(objective-effectuator)를 합성된 현실 설정으로 인스턴스화하게 하는 - 상기 오브젝티브-실행기는 미리정의된 오브젝티브들의 세트 및 시각적 렌더링 속성들의 세트에 의해 특징지어짐 -;
    상기 합성된 현실 설정을 특징짓는 콘텍스트 정보를 획득하게 하는 - 상기 콘텍스트 정보는 물리적 설정에 대응하는 데이터를 포함함 -;
    상기 오브젝티브-실행기에 대한 미리정의된 액션들의 세트, 상기 콘텍스트 정보, 및 상기 미리정의된 오브젝티브들의 세트의 기능에 기초하여 상기 오브젝티브-실행기에 대한 오브젝티브를 생성하게 하는;
    상기 오브젝티브-실행기에 대한 오브젝티브에 기초하여 상기 합성된 현실 설정에 대한 환경 조건들을 설정하게 하는;
    상기 오브젝티브-실행기에 대한 오브젝티브에 기초하여 상기 오브젝티브-실행기에 대한 액션들의 현재 세트 및 초기 조건들을 확립하게 하는; 그리고
    상기 오브젝티브에 기초하여 상기 오브젝티브-실행기를 조작하게 하는, 디바이스.
  51. 하나 이상의 프로그램들을 저장하는 비일시적 메모리로서, 상기 하나 이상의 프로그램들은, 디스플레이를 갖는 디바이스의 하나 이상의 프로세서들에 의해 실행될 때, 상기 디바이스로 하여금,
    오브젝티브-실행기(objective-effectuator)를 합성된 현실 설정으로 인스턴스화하게 하는 - 상기 오브젝티브-실행기는 미리정의된 오브젝티브들의 세트 및 시각적 렌더링 속성들의 세트에 의해 특징지어짐 -;
    상기 합성된 현실 설정을 특징짓는 콘텍스트 정보를 획득하게 하는 - 상기 콘텍스트 정보는 물리적 설정에 대응하는 데이터를 포함함 -;
    상기 오브젝티브-실행기에 대한 미리정의된 액션들의 세트, 상기 콘텍스트 정보, 및 상기 미리정의된 오브젝티브들의 세트의 기능에 기초하여 상기 오브젝티브-실행기에 대한 오브젝티브를 생성하게 하는;
    상기 오브젝티브-실행기에 대한 오브젝티브에 기초하여 상기 합성된 현실 설정에 대한 환경 조건들을 설정하게 하는;
    상기 오브젝티브-실행기에 대한 오브젝티브에 기초하여 상기 오브젝티브-실행기에 대한 액션들의 현재 세트 및 초기 조건들을 확립하게 하는; 그리고
    상기 오브젝티브에 기초하여 상기 오브젝티브-실행기를 조작하게 하는, 비일시적 메모리.
KR1020207021311A 2018-01-22 2019-01-18 합성된 현실 설정들에서 오브젝티브 실행기들에 대한 오브젝티브들의 생성 KR102484333B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201862620355P 2018-01-22 2018-01-22
US62/620,355 2018-01-22
US201862734171P 2018-09-20 2018-09-20
US62/734,171 2018-09-20
PCT/US2019/014152 WO2019143907A1 (en) 2018-01-22 2019-01-18 Generating objectives for objective-effectuators in synthesized reality settings

Publications (2)

Publication Number Publication Date
KR20200100797A KR20200100797A (ko) 2020-08-26
KR102484333B1 true KR102484333B1 (ko) 2023-01-02

Family

ID=65279783

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207021311A KR102484333B1 (ko) 2018-01-22 2019-01-18 합성된 현실 설정들에서 오브젝티브 실행기들에 대한 오브젝티브들의 생성

Country Status (5)

Country Link
US (1) US20200364568A1 (ko)
EP (1) EP3724820A1 (ko)
KR (1) KR102484333B1 (ko)
CN (1) CN111630526B (ko)
WO (1) WO2019143907A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116841400B (zh) * 2023-08-29 2023-11-28 浙江大学 一种基于大语言模型的虚拟布景交互式生成方法和系统

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080163054A1 (en) * 2006-12-30 2008-07-03 Pieper Christopher M Tools for product development comprising collections of avatars and virtual reality business models for avatar use
AU2015274283B2 (en) * 2014-06-14 2020-09-10 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
US10915161B2 (en) * 2014-12-11 2021-02-09 Intel Corporation Facilitating dynamic non-visual markers for augmented reality on computing devices
WO2017177128A1 (en) * 2016-04-08 2017-10-12 The Trustees Of Columbia University In The City Of New York Systems and methods for deep reinforcement learning using a brain-artificial intelligence interface
KR101980603B1 (ko) * 2016-05-20 2019-05-22 구글 엘엘씨 오브젝트(들)를 캡처하는 이미지(들)에 기초하는 그리고 환경에서의 미래 로봇 움직임에 대한 파라미터(들)에 기초하여 로봇 환경에서의 오브젝트(들)의 모션(들)을 예측하는 것과 관련된 머신 학습 방법들 및 장치
US10198846B2 (en) * 2016-08-22 2019-02-05 Adobe Inc. Digital Image Animation
CN106383587B (zh) * 2016-10-26 2020-08-04 腾讯科技(深圳)有限公司 一种增强现实场景生成方法、装置及设备
US11177996B2 (en) * 2017-04-04 2021-11-16 Telefonaktiebolaget Lm Ericsson (Publ) Training a software agent to control a communication network
EP3714382A4 (en) * 2018-01-11 2021-01-20 End Cue, LLC CONTENT GENERATION AND SCRIPT WRITING TOOLS AND THEIR IMPROVED ORDERING PROCESS

Also Published As

Publication number Publication date
US20200364568A1 (en) 2020-11-19
EP3724820A1 (en) 2020-10-21
CN111630526B (zh) 2023-12-29
KR20200100797A (ko) 2020-08-26
WO2019143907A1 (en) 2019-07-25
CN111630526A (zh) 2020-09-04

Similar Documents

Publication Publication Date Title
US11532137B2 (en) Method and device for utilizing physical objects and physical usage patterns for presenting virtual content
CN112189203A (zh) 用于在合成现实布景中在查看矢量之间切换的方法和设备
US11949949B2 (en) Content generation based on audience engagement
US20230386149A1 (en) Method and devices for presenting and manipulating conditionally dependent synthesized reality content threads
WO2020219382A1 (en) Generating content based on state information
US20230377237A1 (en) Influencing actions of agents
KR102484333B1 (ko) 합성된 현실 설정들에서 오브젝티브 실행기들에 대한 오브젝티브들의 생성
US20220262081A1 (en) Planner for an objective-effectuator
US20210027164A1 (en) Objective-effectuators in synthesized reality settings
US11436813B2 (en) Generating directives for objective-effectuators
US10908796B1 (en) Emergent content containers
US11393135B1 (en) Modifying objects in a graphical environment
US11430184B1 (en) Deformation joints

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
GRNT Written decision to grant