KR20190088466A - 정보 처리 장치, 정보 처리 방법, 및 프로그램 - Google Patents

정보 처리 장치, 정보 처리 방법, 및 프로그램 Download PDF

Info

Publication number
KR20190088466A
KR20190088466A KR1020197013051A KR20197013051A KR20190088466A KR 20190088466 A KR20190088466 A KR 20190088466A KR 1020197013051 A KR1020197013051 A KR 1020197013051A KR 20197013051 A KR20197013051 A KR 20197013051A KR 20190088466 A KR20190088466 A KR 20190088466A
Authority
KR
South Korea
Prior art keywords
space
unit
user
information
shared
Prior art date
Application number
KR1020197013051A
Other languages
English (en)
Other versions
KR102355175B1 (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 KR20190088466A publication Critical patent/KR20190088466A/ko
Application granted granted Critical
Publication of KR102355175B1 publication Critical patent/KR102355175B1/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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • 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/004Annotating, labelling
    • 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/024Multi-user, collaborative environment
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)

Abstract

실공간의 센싱에 기초하여 생성되는 가상 공간 내에 배치될 오브젝트를 적절하게 결정하는 것이 가능한, 정보 처리 장치, 정보 처리 방법 및 프로그램을 제안한다.
제1 유저에 관련해 적어도 하나의 제1 실제 오브젝트를 포함하는 제1 실공간의 센싱 결과와, 제2 유저에 관련해 적어도 하나의 제2 실제 오브젝트를 포함하는 제2 실공간의 센싱 결과에 기초하여 상기 제1 유저와 상기 제2 유저 사이의 커뮤니케이션을 위하여 생성되는 가상 공간 내에 배치될 공유 오브젝트를, 소정의 기준에 기초하여 결정하는 결정부를 구비하는 정보 처리 장치.

Description

정보 처리 장치, 정보 처리 방법, 및 프로그램
본 개시는 정보 처리 장치, 정보 처리 방법 및 프로그램에 관한 것이다.
종래, 예를 들어 임장감이 높은 콘텐츠를 생성하는 것을 목적으로 하여, 실공간을 센싱한 결과에 기초하여 콘텐츠를 생성하는 기술이 각종 제안되어 있다.
예를 들어, 하기 특허문헌 1에는, 복수의 카메라에 의해 촬영된 화상에 기초하여, 자유 시점 영상을 생성하는 기술이 기재되어 있다.
일본 특허 공개 제2005-4487호 공보
그러나, 특허문헌 1에 기재된 기술에서는, 실공간에서 센싱된 모든 오브젝트가 자유 시점 영상에 표시된다. 이 때문에, 예를 들어 표시되는 것이 바람직하지 않은 오브젝트도 자유 시점 영상에 표시되어 버린다.
그래서, 본 개시에서는, 실공간의 센싱에 기초하여 생성되는 가상 공간 내에 배치될 오브젝트를 적절하게 결정하는 것이 가능한, 신규이면서 개량된 정보 처리 장치, 정보 처리 방법 및 프로그램을 제안한다.
본 개시에 의하면, 제1 유저에 관련해 적어도 하나의 제1 실제 오브젝트를 포함하는 제1 실공간의 센싱 결과와, 제2 유저에 관련해 적어도 하나의 제2 실제 오브젝트를 포함하는 제2 실공간의 센싱 결과에 기초하여 상기 제1 유저와 상기 제2 유저 사이의 커뮤니케이션을 위하여 생성되는 가상 공간 내에 배치될 공유 오브젝트를, 소정의 기준에 기초하여 결정하는 결정부를 구비하는 정보 처리 장치가 제공된다.
또한, 본 개시에 의하면, 제1 유저에 관련해 적어도 하나의 제1 실제 오브젝트를 포함하는 제1 실공간의 센싱 결과와, 제2 유저에 관련해 적어도 하나의 제2 실제 오브젝트를 포함하는 제2 실공간의 센싱 결과에 기초하여 상기 제1 유저와 상기 제2 유저 사이의 커뮤니케이션을 위하여 생성되는 가상 공간 내에 배치될 공유 오브젝트를, 소정의 기준에 기초하여 프로세서가 결정하는 것을 포함하는 정보 처리 방법이 제공된다.
또한, 본 개시에 의하면, 컴퓨터를, 제1 유저에 관련해 적어도 하나의 제1 실제 오브젝트를 포함하는 제1 실공간의 센싱 결과와, 제2 유저에 관련해 적어도 하나의 제2 실제 오브젝트를 포함하는 제2 실공간의 센싱 결과에 기초하여 상기 제1 유저와 상기 제2 유저 사이의 커뮤니케이션을 위하여 생성되는 가상 공간 내에 배치될 공유 오브젝트를, 소정의 기준에 기초하여 결정하는 결정부로서 기능시키기 위한 프로그램이 제공된다.
이상 설명한 바와 같이 본 개시에 의하면, 실공간의 센싱에 기초하여 생성되는 가상 공간 내에 배치될 오브젝트를 적절하게 결정할 수 있다. 또한, 여기에 기재된 효과는 반드시 한정되는 것은 아니며, 본 개시 중에 기재된 어느 효과여도 된다.
도 1은 제1 실시 형태에 따른 정보 처리 시스템의 구성예를 나타낸 설명도이다.
도 2는 제1 실시 형태에 따른 클라이언트(20)의 구성예를 도시한 기능 블록도이다.
도 3은 공간(2) 내에 위치하는 오브젝트의 세그멘테이션의 예를 나타낸 설명도이다.
도 4는 제1 실시 형태에 따른 Frame 데이터의 구성예를 나타낸 설명도이다.
도 5는 제1 실시 형태에 따른 메타 정보(306)의 구성예를 나타낸 설명도이다.
도 6은 제1 실시 형태에 따른 공유 공간의 생성예를 나타낸 설명도이다.
도 7은 제1 실시 형태에 따른 서버(10-1)의 구성예를 도시한 기능 블록도이다.
도 8은 제1 실시 형태에 따른 공유 공간 관리부(100-1)의 상세한 구성예를 도시한 기능 블록도이다.
도 9는 제1 실시 형태의 과제를 설명하기 위한 설명도이다.
도 10은 제1 실시 형태에 따른 공유 공간 합성부(152)의 구성예를 도시한 기능 블록도이다.
도 11은 각 오브젝트에 관하여 산출된 우선도의 예를 나타낸 설명도이다.
도 12는 공유 공간에 있어서의 오브젝트(42)의 배치예를 나타낸 설명도이다.
도 13은 제1 실시 형태의 응용예의 과제를 설명하기 위한 설명도이다.
도 14는 선행하는 프레임의 메타 정보를 사용하는 예를 나타낸 설명도이다.
도 15는 새로운 오브젝트의 표시가 개시되는 것을 나타내는 애니메이션의 일례를 나타낸 도면이다.
도 16은 새로운 오브젝트의 표시가 개시되는 것을 나타내는 애니메이션의 일례를 나타낸 도면이다.
도 17은 새로운 오브젝트의 표시가 개시되는 것을 나타내는 애니메이션의 일례를 나타낸 도면이다.
도 18은 삭제 대상 오브젝트의 표시가 종료되는 것을 나타내는 애니메이션의 일례를 나타낸 도면이다.
도 19는 삭제 대상 오브젝트의 표시가 종료되는 것을 나타내는 애니메이션의 일례를 나타낸 도면이다.
도 20은 삭제 대상 오브젝트의 표시가 종료되는 것을 나타내는 애니메이션의 일례를 나타낸 도면이다.
도 21은 제2 실시 형태에 따른 공유 공간 관리부(100-2)의 구성예를 도시한 기능 블록도이다.
도 22는 공유 공간 관리용 DB(110)의 구성예를 나타낸 설명도이다.
도 23은 베이스 공간 레이아웃 정보(160)의 구성예를 나타낸 설명도이다.
도 24는 레이아웃 폴리시 정보 DB(162)의 구성예를 나타낸 설명도이다.
도 25는 오브젝트 관리 정보 DB(164)의 구성예를 나타낸 설명도이다.
도 26은 공유 오브젝트 테이블(180)의 구성예를 나타낸 설명도이다.
도 27은 공유 오브젝트 관련 정보(182)의 구성예를 나타낸 설명도이다.
도 28a는 제2 실시 형태에 따른 공유 공간의 생성예의 일부를 나타낸 설명도이다.
도 28b는 제2 실시 형태에 따른 공유 공간의 생성예의 일부를 나타낸 설명도이다.
도 29는 제2 실시 형태에 따른 공유 공간의 생성예의 일부를 나타낸 설명도이다.
도 30은 제2 실시 형태에 따른 처리의 흐름을 나타낸 흐름도이다.
도 31은 제2 실시 형태에 따른 「베이스 공간 레이아웃 생성 처리」의 흐름을 나타낸 흐름도이다.
도 32는 제2 실시 형태에 따른 「오브젝트 트래킹 보상 처리」의 흐름을 나타낸 흐름도이다.
도 33은 제2 실시 형태에 따른 「오브젝트 우선도 계산 처리」의 흐름을 나타낸 흐름도이다.
도 34는 제2 실시 형태에 따른 「오브젝트 레이아웃 처리」의 흐름을 나타낸 흐름도이다.
도 35는 오브젝트 레이아웃 평가 그래프의 생성예를 나타낸 설명도이다.
도 36은 레이아웃 처리가 종료된 시점의 오브젝트 레이아웃 평가 그래프의 예를 나타낸 설명도이다.
도 37은 실공간(2)에 있어서의 유저(4), 복수의 실제 오브젝트(330), 및 복수의 가상 오브젝트(340)의 위치 관계의 예를 나타낸 설명도이다.
도 38a는 도 37에 나타낸 상황에 있어서 덮어쓰기 표현을 사용하여 자유 시점의 콘텐츠가 표시되는 예를 나타낸 설명도이다.
도 38b는 도 37에 나타낸 상황에 있어서 차폐 표현을 사용하여 자유 시점의 콘텐츠가 표시되는 예를 나타낸 설명도이다.
도 39는 공유 공간에 참가 중의 실공간 A 및 실공간 B를 나타낸 설명도이다.
도 40은 유저(4a)로부터 소정의 범위 내에서는 차폐 표현을 사용하고, 또한, 유저(4a)로부터 소정의 범위 외에서는 덮어쓰기 표현을 사용하여 자유 시점의 콘텐츠를 표시시키는 예를 나타낸 설명도이다.
도 41은 차폐 표현의 대상으로 된 실제 오브젝트를 나타내는 표시를 자유 시점의 콘텐츠에 중첩되어 표시시키는 예를 나타낸 설명도이다.
도 42는 제2 실시 형태의 응용예 2에 의한 공유 공간 관리용 DB(110)의 구성예를 도시한 도면이다.
도 43은 동 응용예 2에 의한 설정 정보 DB(112)의 구성예를 나타낸 설명도이다.
도 44는 실공간(2a) 내의 유저(4a)가, 공간 공유를 행할 것을 촉구하는 초대 메시지를 실공간(2b) 내의 유저(4b)에 대해 발행하는 예를 나타낸 설명도이다.
도 45는 실공간마다의, 당해 실공간 내의 유저의, 베이스 공간으로의 집합 상태를 관리하기 위한 테이블(360)의 구성예를 나타낸 설명도이다.
도 46은 동 응용예 2에 의한, 베이스 공간이 전환되는 것을 나타내는 애니메이션의 일례를 나타낸 도면이다.
도 47은 동 응용예 2에 의한, 베이스 공간이 전환되는 것을 나타내는 애니메이션의 일례를 나타낸 도면이다.
도 48은 동 응용예 2에 의한, 공간 공유의 개시 시의 처리(공간 공유의 개시 시의 설정 정보를 사용한 예)의 흐름의 일부를 나타낸 흐름도이다.
도 49는 동 응용예 2에 의한, 공간 공유의 개시 시의 처리(공간 공유의 개시 시의 설정 정보를 사용한 예)의 흐름의 일부를 나타낸 흐름도이다.
도 50은 동 응용예 2에 의한, 공간 공유의 개시 시의 처리(초대용 UI를 사용한 예)의 흐름의 일부를 나타낸 흐름도이다.
도 51은 동 응용예 2에 의한 「공유 공간에의 추가 참가 시의 처리」의 흐름을 나타낸 흐름도이다.
도 52는 제3 실시 형태의 스트림 생성부(130)에 의한 처리예를 나타낸 흐름도이다.
도 53은 제3 실시 형태의 제어 정보 송신부(122)에 의한 처리예를 나타낸 흐름도이다.
도 54는 제3 실시 형태의 스트림 생성부(226)에 의한 처리예를 나타낸 흐름도이다.
도 55는 제3 실시 형태의 인식부(224)에 의한 처리예를 나타낸 흐름도이다.
도 56은 제4 실시 형태에 따른 베이스 공간 레이아웃 정보(160)의 구성예를 나타낸 설명도이다.
도 57은 제4 실시 형태에 따른 베이스 공간 레이아웃의 예를 나타낸 설명도이다.
도 58은 제4 실시 형태에 따른 정보 처리 시스템의 구성예를 나타낸 설명도이다.
도 59는 자유 시점 동화상 콘텐츠 서버(50) 및 자유 시점 라이브 콘텐츠 서버(52)의 구성예를 도시한 기능 블록도이다.
도 60은 베이스 공간 레이아웃 서버(54)의 구성예를 도시한 기능 블록도이다.
도 61은 제4 실시 형태에 따른 공유 공간 관리부(100-4)의 구성예를 도시한 기능 블록도이다.
도 62는 제5 실시 형태에 따른 베이스 공간 레이아웃 에디터의 사용예를 나타낸 설명도이다.
도 63은 제5 실시 형태에 따른 베이스 공간 레이아웃 에디터의 사용예를 나타낸 설명도이다.
도 64는 제6 실시 형태에 따른 입력부(22)의 구성예를 도시한 기능 블록도이다.
도 65는 제6 실시 형태에 따른 표시 가부 설정 에디터의 사용예를 나타낸 설명도이다.
도 66은 제7 실시 형태에 따른 2개의 공간의 합성예를 나타낸 설명도이다.
도 67은 제7 실시 형태에 따른 2개의 공간의 합성예를 나타낸 설명도이다.
도 68은 손가락 포인팅 제스처에 의한 공간 합성 시의 위치 관계의 지정예를 나타낸 설명도이다.
도 69는 악수의 제스처에 의한 공간 합성 시의 위치 관계의 지정예를 나타낸 설명도이다.
도 70은 제7 실시 형태에 따른 처리의 흐름을 나타낸 흐름도이다.
도 71은 각 실시 형태에 공통되는 서버(10)의 하드웨어 구성을 나타낸 설명도이다.
이하에 첨부 도면을 참조하면서, 본 개시의 바람직한 실시 형태에 대해 상세하게 설명한다. 또한, 본 명세서 및 도면에 있어서, 실질적으로 동일한 기능 구성을 갖는 구성 요소에 대해서는, 동일한 부호를 부여함으로써 중복 설명을 생략한다.
또한, 본 명세서 및 도면에 있어서, 실질적으로 동일한 기능 구성을 갖는 복수의 구성 요소를, 동일한 부호의 뒤에 다른 알파벳을 붙여 구별하는 경우도 있다. 예를 들어, 실질적으로 동일한 기능 구성을 갖는 복수의 구성을 필요에 따라 입력부(22a) 및 입력부(22b)와 같이 구별한다. 단, 실질적으로 동일한 기능 구성을 갖는 복수의 구성 요소의 각각을 특별히 구별할 필요가 없는 경우, 동일한 부호만을 부여한다. 예를 들어, 입력부(22a) 및 입력부(22b)를 특별히 구별할 필요가 없는 경우에는, 간단히 입력부(22)라고 칭한다.
또한, 이하에 나타내는 항목 순서에 따라 당해 「발명을 실시하기 위한 형태」를 설명한다.
1. 제1 실시 형태
2. 제2 실시 형태
3. 제3 실시 형태
4. 제4 실시 형태
5. 제5 실시 형태
6. 제6 실시 형태
7. 제7 실시 형태
8. 하드웨어 구성
9. 변형예
또한, 본 명세서 및 도면에 있어서, 제1 실시 형태에 따른 서버(10-1) 내지 제7 실시 형태에 따른 서버(10-7)를 총칭하여, 서버(10)라 칭하는 경우가 있다.
<<1. 제1 실시 형태>>
<1-1. 정보 처리 시스템의 구성>
{1-1-1. 개요}
먼저, 제1 실시 형태에 대해 설명한다. 도 1은, 제1 실시 형태에 따른 정보 처리 시스템의 구성예를 나타낸 설명도이다. 도 1에 도시된 바와 같이, 제1 실시 형태에 따른 정보 처리 시스템은, 서버(10-1), 복수의 클라이언트(20), 및 통신망(26)을 포함한다. 또한, 각 클라이언트(20)는 입력부(22) 및 출력부(24)를 갖는다.
도 1에 도시된 바와 같이, 제1 실시 형태에서는, 복수의 실공간(2)이 미리 정해져 있고, 그리고, 복수의 실공간(2)의 각각에는, 클라이언트(20)가 배치되어 있는 것을 상정한다. 여기서, 실공간(2)은, 예를 들어 집, 점포, 오피스 빌딩, 역 또는 레저 시설 등의 시설 내의 방(예를 들어 거실이나 회의실 등)이나 복도 등일 수 있다. 또한, 도 1에서는, 실공간(2)이 두 개 마련되어 있는 예를 도시하고 있지만, 이러한 예에 한정되지 않고, 실공간은 세개 이상 마련되어도 된다. 여기서, 각 실공간은, 적어도 하나의 실제 오브젝트를 포함할 수 있다. 또한, 각 실공간은 각각 서로 다른 적어도 1명의 유저에 관련될 수 있다. 예를 들어, 각 실공간 내에는, 하나 이상의 유저가 존재한다. 단, 이러한 예에 한정되지 않고, 유저가 존재하지 않는 실공간이 있어도 된다.
또한, 서버(10-1)와 각 클라이언트(20)는, 통신망(26)을 통하여 각각 접속되고, 그리고, 데이터의 송수신을 행하는 것이 가능하다.
그런데, 다른 실공간(2) 내에 위치하는 유저끼리 커뮤니케이션을 행하는 장면에서는, 상대 유저에게 실물을 보여주면서 이야기를 함으로써, 보다 원활한 커뮤니케이션이 실현 가능해진다. 예를 들어, 유저가 상품 설명을 행하는 장면에서는, 상품 자체나 상품의 모형 등을 상대 유저에게 보여주면서 설명하는 쪽이, 상대 유저는 설명을 보다 이해하기 쉽다.
또한, 커뮤니케이션의 상황에 따라서는, 유저의 근처에 위치하는 물체뿐만 아니라, 당해 유저로부터 이격되어 위치하는 물체(예를 들어 커뮤니케이션을 행하는 유저 사이에서 화제가 되고 있는 물체 등)도 상대 유저에게 열람시키는 것이 바람직한 경우도 있다. 그래서, 서버(10-1)는, 커뮤니케이션을 행하는 각 유저가 위치하는 각 실공간(2)의 대략 전체의 3D 데이터를 합성함으로써, 자유 시점의 콘텐츠를 생성한다. 그리고, 각 유저는 자유 시점의 콘텐츠를 동시에 시청함으로써, 마치 동일한 공간 내에 위치하는 듯한 체험을 하면서, 자유롭게 커뮤니케이션을 행할 수 있다. 이하, 클라이언트(20) 및 서버(10-1)의 내용에 대해 보다 상세하게 설명을 행한다.
{1-1-2. 입력부(22)}
입력부(22)는, 입력부(22)가 배치되어 있는 실공간을 센싱한다. 예를 들어, 입력부(22)는, 당해 실공간을 센싱함으로써, 당해 실공간 내의 각 오브젝트(물체)의 3D 데이터 등을 센싱 결과로서 취득한다. 그리고, 입력부(22)는, 취득된 센싱 결과를 서버(10-1)로 송신한다. 또한, 센싱 결과는, 센싱되는 데이터 또는 센싱에 의해 얻어지는 신호를 포함할 수 있다.
도 2는, 클라이언트(20)(입력부(22) 및 출력부(24))의 구성예를 도시한 기능 블록도이다. 도 2에 도시된 바와 같이, 입력부(22)는, 센서부(220), 제어 정보 수신부(222), 인식부(224), 스트림 생성부(226), 및 송신부(228)를 갖는다.
(1-1-2-1. 센서부(220))
센서부(220)는, 센서부(220)가 배치되어 있는 실공간 내의 3D 데이터 등의 각종 정보를 센싱한다. 예를 들어, 센서부(220)는, 복수의 뎁스 카메라, 및 복수의 RGB 카메라를 가질 수 있다. 그리고, 당해 복수의 뎁스 카메라 각각이, 당해 뎁스 카메라의 전방에 위치하는 오브젝트까지의 거리 정보를 검출함으로써, 센서부(220)는, 해당 실공간 대략 전체의 3D 데이터를 취득할 수 있다. 또한, 당해 복수의 RGB 카메라의 각각은, 촬상함으로써 2D 화상을 취득할 수 있다. 여기서, 3D 데이터의 형식은, 예를 들어 포인트 클라우드(점군)나 3D 메쉬(폴리곤) 등, 임의의 형식일 수 있다. 또한, 센서부(220)가 갖는 복수의 카메라 사이는 서로 접속되어, 프레임 동기가 행하여질 수 있다.
-세그멘테이션 처리
예를 들어, 센서부(220)는, 프레임 단위로, 먼저, 포인트 클라우드 데이터를 생성하고, 그리고, 생성된 포인트 클라우드 데이터에 기초하여, 오브젝트의 분리 처리(세그멘테이션 처리)를 행한다. 그리고, 센서부(220)는, 분리된 각 오브젝트에 관해서, 센서부(220)가 배치되어 있는 실공간(2)에 있어서 당해 오브젝트가 차지하는 영역의 정보를 특정한다. 또한, 센서부(220)는, 당해 각 오브젝트에 대해 오브젝트 ID를 부여한다. 여기서, 오브젝트 ID는, 각 오브젝트를 일의적으로 식별하기 위한 ID이다.
여기서, 도 3을 참조하여, 상기한 내용에 대해 보다 상세하게 설명한다. 도 3에 도시된 바와 같이, 예를 들어 실공간(2a) 내의 센서부(220a)는, 오브젝트(42a) 및 오브젝트(42b)를 각각 세그멘테이션하고, 그리고, 오브젝트(42a)의 오브젝트 ID로서 「1」, 오브젝트(42b)의 오브젝트 ID로서 「2」를 각각 설정한다. 마찬가지로, 실공간(2b) 내의 센서부(220b)는, 도 3에 도시된 바와 같이, 오브젝트(42c) 및 오브젝트(42d)를 각각 세그멘테이션하고, 그리고, 오브젝트(42c)의 오브젝트 ID로서 「1」, 오브젝트(42d)의 오브젝트 ID로서 「2」를 각각 설정한다.
-모델링 처리
또한, 센서부(220)는, 분리된 각 오브젝트에 관하여 모델링 처리를 행하고, 3D 메쉬를 생성하는 것이 가능하다.
또한, 센서부(220)는, 당해 각 오브젝트와, 센서부(220)가 촬영한 2D 화상의 대응 관계를 나타내는 2D 화상 상관 정보를 추가로 생성한다. 여기서, 2D 화상 상관 정보는, 각 오브젝트가, 촬영된 2D 화상 내의 어느 위치에 각각 대응하는지를 나타내는 정보이다.
또한, 센서부(220)는, 분리된 각 오브젝트의 특징량 등에 기초하여, 각 오브젝트의 트래킹 처리를 행하는 것도 가능하다. 그리고, 센서부(220)는, 연속되는 프레임 사이에서 동일하다고 판정되는 오브젝트에 관해서는, 당해 오브젝트에 부여되어 있는 오브젝트 ID를 변경하지 않는다.
또한, 센서부(220)는, 하나 이상의 마이크로 폰을 추가로 가질 수 있다. 그리고, 센서부(220)는, 해당 실공간 내의 소리를 집음할 수 있다.
-출력
또한, 센서부(220)는, 하나의 프레임별로 센싱 결과를 출력한다. 예를 들어, 센서부(220)는, 하나의 프레임별로, 촬영한 2D 화상, 취득한 각 오브젝트의 3D 데이터 및 2D 화상 상관 정보를 포함하는 Frame 데이터를 출력한다. 또한, 당해 Frame 데이터는, 집음된 음성 데이터를 더 포함해도 된다.
또한, 센서부(220)는, 단일 디바이스(예를 들어 카메라 등)에 의해 구성되어도 되고, 또는, 복수 디바이스에 의해 구성되어도 된다. 또한, 복수 디바이스에 의해 구성되는 경우에는, 당해 복수 디바이스에 의해 센싱되는 데이터(3D 데이터 등)가, 예를 들어 캘리브레이션이나 프레임 동기 처리 등에 의해 고정밀도로 합성될 수 있다.
(1-1-2-2. 제어 정보 수신부(222))
제어 정보 수신부(222)는, 서버(10-1)로부터 제1 제어 정보를 수신한다. 또한, 제어 정보 수신부(222)는, 수신된 제1 제어 정보를 인식부(224) 및 스트림 생성부(226)로 전달한다. 여기서, 제1 제어 정보는, 예를 들어 후술하는 인식부(224)에 의한 인식 처리에 관한 지시의 정보나, 후술하는 스트림 생성부(226)에 의한 스트림의 생성에 관한 지시의 정보를 포함할 수 있다.
(1-1-2-3. 인식부(224))
-인식
인식부(224)는, 센서부(220)로부터 전달되는 Frame 데이터에 기초하여, 각종 인식 처리를 행한다. 예를 들어, 인식부(224)는, 당해 Frame 데이터에 포함되는 3D 데이터에 기초하여 인식 처리를 행해도 되고, 또는 당해 Frame 데이터에 포함되는 2D 화상에 기초하여 인식 처리를 행해도 된다.
예를 들어, 인식부(224)는, 당해 Frame 데이터에 기초하여 오브젝트의 종별 인식을 행한다. 그리고, 인식부(224)는, 사람으로 판정된 오브젝트에 대해서는 얼굴 인식, 본 인식 및 손가락 인식을 추가로 행한다. 또한, 인식부(224)는, (서버 (10)에 의해 생성되는) 자유 시점의 콘텐츠 이용을 개시하기 위한 유저의 조작이나, 당해 자유 시점의 콘텐츠 이용을 종료하기 위한 유저의 조작을 인식하는 것이 가능하다. 또한, 이들 조작의 구체적인 내용에 대해서는 후술한다.
또한, 제1 제어 정보가 제어 정보 수신부(222)로부터 전달된 경우에는, 인식부(224)는, 당해 제1 제어 정보에 따라 인식 처리를 추가로 행하는 것도 가능하다.
-출력
또한, 인식부(224)는, 인식 처리의 결과를, 전달된 Frame 데이터에 부가하고, 그리고, 부가 후의 Frame 데이터를 스트림 생성부(226)로 전달한다. 예를 들어, 인식부(224)는, 먼저, 예를 들어 사람으로 판정된 오브젝트에 대한 인식 처리의 결과에 기초하여 메타 정보, 본 인식 정보 및 손가락 인식 정보를 생성한다. 그리고, 인식부(224)는, 이들 정보를 전달된 Frame 데이터에 부가한다.
도 4는, Frame 데이터의 구성예(Frame 데이터(30))을 나타낸 설명도이다. 도 4에 도시된 바와 같이, Frame 데이터(30)는, 예를 들어 2D 카메라 화상(300), 3D 오브젝트(302), 오디오 데이터(304), 메타 정보(306), 본 인식 정보(308) 및 손가락 인식 정보(310)를 갖는다. 여기서, 2D 카메라 화상(300)은, 센서부(220)에 의해 촬영된, 해당 프레임 2D 화상이 저장된다. 또한, 3D 오브젝트(302)는, 센서부(220)에 의한 촬영에 기초하여, 해당 프레임에 있어서 특정된 각각의 오브젝트3D 데이터가 저장된다. 예를 들어, 3D 오브젝트(302)는, 오브젝트별로, 오브젝트 ID, 당해 오브젝트의 점(위치 및 색), 및 당해 오브젝트의 면의 정보를 갖는다. 또한, 3D 오브젝트(302)는, 2D 화상 상관 정보를 갖는다. 또한, 여기에서 설명하는 3D 오브젝트에는, 바닥이나 벽과 같은 실공간으로부터 이동할 수 없는 평면적인 오브젝트는 포함하지 않는 것으로 간주되어도 된다.
또한, 오디오 데이터(304)는, 센서부(220)에 의해 녹음된, 해당 프레임 시의 음성 데이터가 저장된다. 또한, 본 인식 정보(308)에는, 예를 들어 인식부(224)에 의해 인식된, 각각의 오브젝트에 관한 본 인식의 결과가 저장된다. 예를 들어, 본 인식 정보(308)에는, 인식된 본마다, 당해 본을 갖는 오브젝트의 오브젝트 ID, 당해 오브젝트의 종류 및 당해 본의 영역 정보 등이 저장된다. 또한, 손가락 인식 정보(310)에는, 예를 들어 인식부(224)에 의해 인식된, 각각의 오브젝트에 관한 손이나 손가락의 인식 결과가 저장된다. 예를 들어, 손가락 인식 정보(310)에는, 인식된 손이나 손가락별로, 당해 손 또는 손가락을 갖는 오브젝트(사람 등)의 오브젝트 ID, 당해 오브젝트의 종류 및 당해 손 또는 손가락의 영역 정보 등이 저장된다.
또한, 메타 정보(306)는, 3D 오브젝트(302)에 저장되어 있는 각각의 오브젝트에 관한 정보(예를 들어 속성 등)이다. 도 5는, 메타 정보(306)의 구성예를 나타낸 설명도이다. 도 5에 도시된 바와 같이, 메타 정보(306)는, 예를 들어 오브젝트 ID(3060), 영역(3064), 종류(3066), 원래 공간(3068), 인물(3070), 접촉 정보(3072) 및 이웃 정보(3074)를 포함한다. 여기서, 오브젝트 ID(3060)에는, 해당 오브젝트에 할당되어 있는 오브젝트 ID가 저장된다. 또한, 영역(3064)에는, 해당 오브젝트가 위치하는 영역의 정보가 저장된다. 또한, 종류(3066)에는, 미리 인식된 해당 오브젝트의 종류가 저장된다. 또한, 원래 공간(3068)에는, 해당 실공간 식별 정보가 기록된다. 또한, 인물(3070)에는, 해당 오브젝트가 사람인 경우에, 미리 얼굴 인식 등에 의해 특정된 당해 사람의 식별 정보(이름 등)가 저장된다. 또한, 접촉 정보(3072)에는, 해당 실공간에 있어서 해당 오브젝트와 접촉하고 있으면 인식된 오브젝트의 정보(예를 들어 오브젝트 ID 등)가 저장된다. 또한, 이웃 정보(3074)에는, 해당 실공간에 있어서 해당 오브젝트 근처에 위치한다고 인식된 오브젝트의 정보(예를 들어 오브젝트 ID 등)가 저장된다.
(1-1-2-4. 스트림 생성부(226))
스트림 생성부(226)는, 인식부(224)로부터 전달되는 Frame 데이터에 기초하여, 스트림을 생성한다. 그리고, 스트림 생성부(226)는, 생성된 스트림을 송신부(228)로 전달한다. 예를 들어, 스트림 생성부(226)는, 먼저, 인식부(224)로부터 전달되는 각종 정보를 다중화함으로써 하나의 스트림을 생성하고, 그리고, 당해 하나의 스트림을 송신부(228)로 전달해도 된다. 또는 스트림 생성부(226)는, 인식부(224)로부터 전달되는 각종 정보로부터 각각 별도의 스트림을 생성하고, 그리고, 생성된 각 스트림을 송신부(228)로 전달해도 된다.
또한, 제1 제어 정보가 제어 정보 수신부(222)로부터 전달된 경우에는, 스트림 생성부(226)는, 인식부(224)로부터 전달된 정보 중에서, 당해 제1 제어 정보가 지정하는 일부의 정보를 추출하고, 그리고, 추출된 정보만을 포함하는 스트림을 생성해도 된다. 그리고, 스트림 생성부(226)는, 당해 스트림을 송신부(228)로 전달해도 된다.
(1-1-2-5. 송신부(228))
송신부(228)는, 스트림 생성부(226)로부터 전달된 스트림을 서버(10-1)로 송신한다.
{1-1-3. 서버(10-1)}
서버(10-1)는, 본 개시에 있어서의 정보 처리 장치의 일례이다. 서버(10-1)는, 유저(4a)가 위치하는 실공간(2a)의 센싱 결과와, 유저(4b)가 위치하는 실공간(2b)의 센싱 결과에 기초하여, 유저(4a) 및 유저(4b) 사이의 커뮤니케이션을 위한 (가상의) 공유 공간을 생성할 수 있다. 여기서, 실공간(2a)은, 본 개시에 있어서의 제1 실공간의 일례이며, 또한, 실공간(2b)은, 본 개시에 있어서의 제2 실공간의 일례이다. 예를 들어, 서버(10-1)는, 복수의 실공간(2)의 각각 입력부(22)로부터 수신되는 스트림(즉, 당해 실공간(2)의 센싱 결과)에 기초하여 당해 공유 공간을 생성할 수 있다. 일례로서, 서버(10-1)는, 각 실공간(2) 내의 입력부(22)로부터 수신되는 스트림을 합성함으로써 공유 공간을 생성한다.
또한, 서버(10-1)는, 실공간(2a) 내의 제1 실제 오브젝트에 대응하는 제1 가상 오브젝트 및 실공간(2b) 내의 제2 실제 오브젝트에 대응하는 제2 가상 오브젝트 중 적어도 하나 이상을, 공유 오브젝트로서 당해 공유 공간 내에 배치할 수 있다.
도 6은, 공유 공간의 생성예를 나타낸 설명도이다. 도 6에 도시된 바와 같이, 예를 들어 공유 공간 생성부(102)는, 실공간(2a)의 입력부(22)로부터 수신되는 스트림에 포함되는 오브젝트(42a) 및 오브젝트(42b)의 3D 데이터와, 실공간(2b)의 입력부(22)로부터 수신되는 스트림에 포함되는 오브젝트(42c) 및 오브젝트(42d)의 3D 데이터를, 공유 오브젝트로서 공유 공간(40) 내에 각각 배치함으로써, 공유 공간(40)을 생성한다.
또한, 서버(10-1)는, 생성된 공유 공간에 기초하여 자유 시점의 콘텐츠를 생성하고, 그리고, 당해 콘텐츠를 각 실공간(2)의 출력부(24)로 각각 송신한다.
도 7은, 서버(10-1)의 구성예를 도시한 기능 블록도이다. 도 7에 나타내는 바와 같이, 서버(10-1)는, 공유 공간 관리부(100-1), 및 복수의 클라이언트 접속부(120)를 갖는다. 또한, 배치되어 있는 클라이언트(20)별로, 클라이언트 접속부(120)는 하나씩 마련될 수 있다. 또한, 클라이언트 접속부(120)와 클라이언트(20)의 조(접속 관계)는 미리 정해질 수 있다.
(1-1-3-1. 클라이언트 접속부(120))
클라이언트 접속부(120)는, 공유 공간 관리부(100-1)로부터 전달되는 정보를 접속처의 클라이언트(20)로 송신한다. 또한, 클라이언트 접속부(120)는, 접속처의 클라이언트(20)로부터 수신되는 정보를 공유 공간 관리부(100-1)로 전달한다.
또한, 도 7에 나타내는 바와 같이, 각 클라이언트 접속부(120)는, 제어 정보 송신부(122), 스트림 분리부(124), 수신부(126), 제어 정보 수신부(128), 스트림 생성부(130), 및 송신부(132)를 갖는다.
(1-1-3-2. 수신부(126))
수신부(126)는, 접속처의 입력부(22)로부터 스트림을 수신한다. 그리고, 수신부(126)는, 수신된 스트림을 스트림 분리부(124)로 전달한다.
(1-1-3-3. 스트림 분리부(124))
스트림 분리부(124)는, 수신부(126)로부터 전달된 스트림에 대해 예를 들어 역 다중화 등을 행함으로써, 하나의 프레임별로 3D 데이터와 메타 정보로 분리한다. 그리고, 스트림 분리부(124)는, 분리 후의 3D 데이터와 메타 정보를, 후술하는 공유 공간 생성부(102)로 전달한다.
(1-1-3-4. 제어 정보 송신부(122))
제어 정보 송신부(122)는, 공유 공간 생성부(102)의 지시에 기초하여, 접속처의 클라이언트(20)(입력부(22))로 제1 제어 정보를 송신한다. 예를 들어, 제어 정보 송신부(122)는, 공유 공간 생성부(102)에 의해 결정되는, 바람직한 3D 데이터 또는 메타 정보에 관한 정보를 제1 제어 정보로서 생성하고, 그리고, 당해 제1 제어 정보를 입력부(22)로 송신한다. 이에 의해, 네트워크 대역의 이용을 절약하거나, 또한, 클라이언트(20)측에서의 인식 처리를 경감시키는 것이 가능해진다.
예를 들어, 특정한 실공간의 3D 데이터의 일부를 공유 공간 생성부(102)가 이용하지 않는 것이 결정된 경우에는, 제어 정보 송신부(122)는, 당해 결정의 내용을 제1 제어 정보에 포함하고, 제1 제어 정보를 생성하고, 그리고, 당해 제1 제어 정보를 해당 실공간 입력부(22)로 송신한다. 이에 의해, 송신처의 입력부(22)는, 해당 데이터를 서버(10-1)에 송신하지 않도록 제어하는 것이 가능해진다.
(1-1-3-5. 제어 정보 수신부(128))
제어 정보 수신부(128)는, 접속처의 출력부(24)로부터 제2 제어 정보를 수신한다. 또한, 제어 정보 수신부(128)는, 수신된 제2 제어 정보를 공유 공간 생성부(102) 및 스트림 생성부(130)로 전달한다. 여기서, 제2 제어 정보는, 예를 들어 후술하는 (출력부(24)의) 표시부(246)의 위치나 자세 등의 검출 결과 등의 정보를 포함할 수 있다.
(1-1-3-6. 스트림 생성부(130))
스트림 생성부(130)는, 공유 공간 생성부(102)에 의해 생성되는 공유 공간 Frame 데이터에 기초하여, 접속처의 클라이언트(20)용 스트림을 생성한다. 여기서, 공유 공간 Frame 데이터는, 공유 공간에 관한 자유 시점의 콘텐츠, 하나의 프레임분의 데이터일 수 있다. 예를 들어, 공유 공간 Frame 데이터는, 공유 공간 내의 각 오브젝트의 3D 데이터 및 메타 정보 등을 포함한다.
예를 들어, 스트림 생성부(130)는, 생성된 공유 공간의 3D 데이터 및 메타 정보 등을 다중화함으로써, 당해 스트림을 생성한다. 또한, 제2 제어 정보가 제어 정보 수신부(128)로부터 전달된 경우에는, 스트림 생성부(130)는, 또한 당해 제2 제어 정보에 기초하여, 당해 스트림을 생성하는 것도 가능하다. 예를 들어, 스트림 생성부(130)는, 당해 제2 제어 정보가 지시하는, 표시 불필요한 3D 데이터를 생성 대상의 스트림으로부터 제외하거나 또는 화질을 저하시키는 등의 처리를 행함으로써, 당해 스트림을 생성한다.
또한, 스트림 생성부(130)는, 생성된 스트림을 송신부(132)로 전달한다.
(1-1-3-7. 송신부(132))
송신부(132)는, 스트림 생성부(130)로부터 전달된 스트림을, 접속처의 클라이언트(20)의 출력부(24)로 송신한다.
(1-1-3-8. 공유 공간 관리부(100-1))
공유 공간 관리부(100-1)는, 후술하는 CPU(Central Processing Unit)(900)나 RAM(Random Access Memory)(904) 등을 사용하여, 서버(10-1)의 동작을 통괄적으로 제어한다. 또한, 공유 공간 관리부(100-1)는, 각 클라이언트 접속부(120)로부터 전달되는, 각 실공간(2) 내의 클라이언트(20)로부터 수신된 Frame 데이터 및 제2 제어 정보에 기초하여, 자유 시점의 콘텐츠(공유 공간 Frame 데이터)를 생성한다. 또한, 공유 공간 관리부(100-1)는, 생성된 자유 시점의 콘텐츠를 각 클라이언트 접속부(120)로 전달한다.
도 8은, 공유 공간 관리부(100-1)의 보다 상세한 구성예를 도시한 기능 블록도이다. 도 8에 나타내는 바와 같이, 공유 공간 관리부(100-1)는, 공유 공간 생성부(102), 인식부(104), 이벤트 인식부(106), 및 제어부(108)를 갖는다.
(1-1-3-9. 인식부(104))
인식부(104)는, 공유 공간 생성부(102)에 의해 생성되는 공유 공간 Frame 데이터에 기초하여, 예를 들어 얼굴 인식, 손가락 인식 또는 본 인식 등의 각종 인식 처리를 행한다. 상세에 대해서는 후술하겠지만, 예를 들어 인식부(104)는, 먼저, 공유 공간 Frame 데이터를 공유 공간 Frame 데이터 DB(156)로부터 프레임순으로 취득한다. 그리고, 인식부(104)는, 취득한 공유 공간 Frame 데이터에 기초하여 각종 인식 처리를 행하고, 그리고, 인식한 결과를 이벤트 인식부(106)로 전달한다.
또한, 인식부(104)는, 복수의 클라이언트(20)의 각각으로부터 수신된 스트림으로부터 얻어지는 메타 정보를 사용함으로써, 인식 처리를 경감하는 것(일부의 처리를 생략하는 등)도 가능하다.
(1-1-3-10. 이벤트 인식부(106))
이벤트 인식부(106)는, 인식부(104)로부터 전달되는 시계열의 정보에 기초하여, 이벤트 정보를 생성한다. 예를 들어, 생성된 공유 공간에 유저가 참가하고 있으며, 또한, 당해 공유 공간 상에 배치되어 있는 책상에 대해 유저가 가리킨 것이 인식된 경우에는, 이벤트 인식부(106)는, 당해 책상을 가리킨 것을 이벤트 정보로서 생성한다. 또한, 어느 유저가 위치하는 실공간 내의 책상 위의 랩톱형 PC(Personal Computer)를 당해 유저가 들어 올린 것이 인식된 경우에는, 이벤트 인식부(106)는, 당해 랩톱형 PC를 들어 올린 것을 이벤트 정보로서 생성한다.
또한, 이벤트 인식부(106)는, 생성된 이벤트 정보를 제어부(108)로 전달한다.
(1-1-3-11. 제어부(108))
제어부(108)는, 이벤트 인식부(106)로부터 전달되는 이벤트 정보에 기초하여, 제3 제어 정보를 생성한다. 그리고, 제어부(108)는, 생성된 제3 제어 정보를 공유 공간 생성부(102)로 전달한다. 여기서, 제3 제어 정보는, 공유 공간 생성부(102)에 의한 공유 공간의 생성 시에 이용되는 정보일 수 있다.
(1-1-3-12. 공유 공간 생성부(102))
공유 공간 생성부(102)는, 복수의 클라이언트(20)의 각각으로부터 수신된 스트림으로부터 얻어지는 Frame 데이터 및 메타 정보에 기초하여, 공유 공간 Frame 데이터를 생성한다. 또한, 도 8에 나타내는 바와 같이, 공유 공간 생성부(102)는, 동기부(150), 공유 공간 합성부(152), 배신부(154), 및 공유 공간 Frame 데이터 DB(156)를 갖는다.
(1-1-3-13. 동기부(150))
동기부(150)는, 복수의 클라이언트(20)의 각각으로부터 수신된 Frame 데이터 및 제2 제어 정보에 관해서, 타이밍이 동일한 정보별로(예를 들어, 하나의 프레임별로) 통합하여 공유 공간 합성부(152)로 순차 전달한다.
(1-1-3-14. 공유 공간 합성부(152))
공유 공간 합성부(152)는, 동기부(150)로부터 전달되는 각 실공간의 Frame 데이터에 기초하여, 공유 공간 Frame 데이터를 생성한다. 또한, 공유 공간 합성부(152)는, 생성된 공유 공간 Frame 데이터를 공유 공간 Frame 데이터 DB(156)로 저장한다.
예를 들어, 자유 시점의 콘텐츠가 미생성인 경우에는, 공유 공간 합성부(152)는, 먼저, 소정의 개시 조건에 기초하여, 자유 시점의 콘텐츠를 생성할지 여부를 결정한다. 그리고, 자유 시점의 콘텐츠를 생성할 것을 결정한 경우에는, 공유 공간 합성부(152)는, 자유 시점의 콘텐츠(공유 공간 Frame 데이터)를 생성한다. 일례로서, 소정의 개시 조건이 성립한 경우에는, 공유 공간 합성부(152)는, 자유 시점의 콘텐츠를 생성할 것을 결정한다. 또한, 소정의 개시 조건이 성립되지 않는 경우에는, 공유 공간 합성부(152)는, 자유 시점의 콘텐츠를 생성하지 않을 것을 결정한다.
-개시 조건: 상대 유저의 선택
여기서, 소정의 개시 조건은, 공유 공간이 생성되지 않은(이하, 공간 공유가 개시되지 않았다고 칭하는 경우가 있음) 상황에 있어서, 어떤 유저(4a)가, (공간 공유를 개시하기 위해) 공간 공유를 희망하는 상대 유저(4b)를 선택하는 조작을 행한 것이 검출되는 것을 포함할 수 있다. 또한, 상대 유저의 선택 방법으로는, 예를 들어 유저(4a)가 열람하는 표시부(246)에 표시되는 유저 리스트 내에서 예를 들어 소정의 입력 장치에 대한 조작, 제스처, 시선 조작 또는 발화(發話) 등에 의해 상대 유저(4b)를 선택하는 것이어도 된다. 또는 유저(4a)가 상대 유저명을 직접 발화함으로써 상대 유저(4b)가 선택되어도 된다.
-개시 조건: 공간의 선택
또한, 소정의 개시 조건은, 공간 공유가 이루어지지 않은 상황에 있어서, 어떤 유저(4a)가, (공간 공유를 개시하기 위해서) 공유 공간의 기초로 되는 실공간을 선택하는 조작을 행한 것이 검출되는 것을 포함할 수 있다. 또한, 실공간의 선택 방법으로는, 예를 들어 유저(4a)가 열람하는 표시부(246)에 표시되는 공간 리스트 내에서 예를 들어 소정의 입력 장치에 대한 조작, 제스처, 시선 조작 또는 발화 등에 의해, 공간 공유를 희망하는 실공간을 유저(4a)가 선택하는 것이어도 된다. 또는 유저(4a)가, 원하는 실공간의 이름을 직접 발화함으로써, 당해 실공간이 선택되어도 된다.
(1-1-3-15. 배신부(154))
배신부(154)는, 공유 공간 합성부(152)에 의해 생성된 공유 공간 Frame 데이터에 기초하여, 실공간마다의, 당해 실공간 내의 출력부(24)에 송신되는 Frame 데이터를 생성한다. 그리고, 배신부(154)는, 생성된 각 Frame 데이터를, 당해 Frame 데이터의 송신처 실공간에 대응하는 클라이언트 접속부(120)에 각각 전달한다.
{1-1-4. 출력부(24)}
출력부(24)는, 서버(10-1)로부터 수신되는 스트림(예를 들어 자유 시점의 콘텐츠)을 출력한다. 이에 의해, 해당 실공간 내의 유저는, 출력된 콘텐츠를 시청함으로써, 마치, 생성된 공유 공간의 내부에 위치하는 체험을 할 수 있다.
출력부(24)는, 예를 들어 HMD(Head Mounted Display)나 AR(Augumented Reality) 유리 등의 웨어러블 디바이스일 수 있다. 또한, HMD는 차폐형이어도 되고, 비디오 투과형이어도 된다. 또한, 출력부(24)는, 웨어러블 디바이스인 예에 한정되지 않고, 예를 들어 프로젝터이며, 또한, 서버(10)로부터 수신되는 스트림을, 해당 실공간 내의 투영 대상(예를 들어 벽 등)에 투영해도 된다. 또는 출력부(24)는, 복수 디바이스의 조합(예를 들어, AR 유리 및 프로젝터의 조합 등)에 의해 구성되어도 된다. 또한, 이하에서는, 출력부(24)가 웨어러블 디바이스인 예를 중심으로 하여 설명을 행한다.
여기서, 도 2를 다시 참조하여, 출력부(24)의 구성에 대해 구체적으로 설명한다. 도 2에 도시된 바와 같이, 출력부(24)는, 수신부(240), 스트림 분리부(242), 합성부(244), 표시부(246), 센서부(248), 인식부(250), 및 제어 정보 송신부(252)를 갖는다.
(1-1-4-1. 수신부(240))
수신부(240)는, 서버(10-1)로부터 스트림을 수신한다. 또한, 수신부(240)는, 수신한 스트림을 스트림 분리부(242)로 전달한다.
(1-1-4-2. 스트림 분리부(242))
스트림 분리부(242)는, 수신부(240)로부터 전달된 스트림에 대해 예를 들어 역 다중화 등을 행함으로써, 당해 스트림을 분리한다. 또한, 스트림 분리부(242)는, 분리된 데이터를 합성부(244)로 전달한다. 또는 스트림 분리부(242)는, 분리된 데이터를 표시부(246)로 전달해도 된다.
(1-1-4-3. 합성부(244))
합성부(244)는, 스트림 분리부(242)로부터 전달되는 데이터와, 인식부(250)로부터 전달되는 인식 결과(예를 들어, 표시부(246)의 위치나 자세 등의 인식 결과 등)에 기초하여, 3D 영상(예를 들어 VR(Virtual Reality) 영상이나 AR 영상 등)을 생성(렌더링)한다. 또한, 합성부(244)는, 생성된 영상을 표시부(246)로 전달한다.
(1-1-4-4. 표시부(246))
표시부(246)는, 합성부(244)에 의해 생성된 영상 또는 스트림 분리부(242)로부터 전달되는 영상 데이터를 표시한다.
표시부(246)는, 예를 들어 액정 디스플레이(LCD: Liquid Crystal Display)나, OLED(Organic Light Emitting Diode) 등으로 구성될 수 있다. 또는 표시부(246)는, 투과형 디스플레이 상에 영상을 표시해도 된다. 또는 표시부(246)는, 프로젝터여도 된다.
(1-1-4-5. 센서부(248))
센서부(248)는, 예를 들어 RGB 카메라, GPS(Global Positioning System) 수신기, 가속도 센서, 자이로스코프, 및 지자기 센서 등의 각종 센서를 포함할 수 있다. 예를 들어, 센서부(248)는, 표시부(246)의 위치 및 자세 등에 관한 정보를 검출한다. 또한, 센서부(248)는, 검출된 정보를 인식부(250)로 전달한다.
또한, 센서부(248)는, 단일 디바이스에 의해 구성되어도 되고 또는 복수 디바이스에 의해 구성되어도 된다. 또한, 복수 디바이스에 의해 구성되는 경우에는, 당해 복수 디바이스에 의해 센싱되는 정보(화상 등)가, 캘리브레이션이나 프레임 동기 처리 등에 의해 고정밀도로 합성될 수 있다.
(1-1-4-6. 인식부(250))
인식부(250)는, 센서부(248)로부터 전달되는 정보에 기초하여, 표시부(246)의 위치 및 자세 등의 인식 처리를 행한다. 또한, 인식부(250)는, 또한, 유저의 시점 위치의 인식을 행해도 된다.
또한, 인식부(250)는, 인식된 결과를 합성부(244) 및 제어 정보 송신부(252)로 전달한다.
(1-1-4-7. 제어 정보 송신부(252))
제어 정보 송신부(252)는, 인식부(250)로부터 전달되는 인식 결과(표시부(246)의 위치 및 자세의 인식 결과 등)를 제2 제어 정보로서 서버(10-1)로 송신한다.
{1-1-5. 통신망(26)}
통신망(26)은, 통신망(26)에 접속되어 있는 장치로부터 송신되는 정보의 유선 또는 무선의 전송로이다. 예를 들어, 통신망(26)은, 전화 회선망, 인터넷, 위성 통신망 등의 공중 회선망이나, Ethernet(등록 상표)을 포함하는 각종 LAN(Local Area Network), WAN(Wide Area Network) 등을 포함해도 된다. 또한, 통신망(26)은, IP-VPN(Internet Protocol-Virtual Private Network) 등의 전용 회선망을 포함해도 된다.
{1-1-6. 변형예}
(1-1-6-1. 변형예 1)
또한, 제1 실시 형태에 따른 정보 처리 시스템의 구성은, 상술한 예에 한정되지 않는다. 예를 들어, 상기 설명에서는, 입력부(22) 및 출력부(24)가 실공간마다의 각각 하나씩 배치되는 예를 설명했지만, 이러한 예에 한정되지 않고, 입력부(22) 및 출력부(24)는, 당해 정보 처리 시스템에 있어서 각각 하나 이상 배치하면 된다. 또한, 입력부(22)만 또는 출력부(24)만이 배치되는 실공간이 존재해도 된다.
(1-1-6-2. 변형예 2)
또한, 서버(10-1)는, 클라우드 상의 서버로서 구성되어도 되고, 또는 관련된 클라이언트(20) 상에 구성되어도 된다.
또한, 상기 설명에서는, 공유 공간 관리부(100-1)가, 하나의 서버(즉 서버(10-1))에 포함되는 예를 설명했지만, 이러한 예에 한정되지 않는다. 예를 들어, 복수대의 컴퓨터(도시 생략)가 협동하여 동작함으로써, 공유 공간 관리부(100-1)의 기능이 실현되어도 된다. 또는 상술한 공유 공간 관리부(100)의 기능은, 각 클라이언트(20) 상에 분산 배치되며, 또한, 그들이 협조하여 동작하도록 구성되어도 된다.
(1-1-6-3. 변형예 3)
또한, 클라이언트(20)는, 단일 디바이스로서 구성되어도 되고 또는 복수 디바이스에 의해 구성되어도 된다.
또한, 상기 설명에서는, 입력부(22)의 센서부(220)와, 출력부(24)의 센서부(248)가 별도로 마련되는 예에 대해 설명했지만, 이러한 예에 한정되지 않는다. 예를 들어, 센서부(220) 및 센서부(248)는 일체적으로 구성되고, 또한, 이 센서부를 입력부(22)와 출력부(24)가 공유해도 된다. 마찬가지로, 입력부(22)의 인식부(224) 및 출력부(24)의 인식부(250)는 일체적으로 구성되고, 또한, 이 인식부를 입력부(22)와 출력부(24)가 공유해도 된다.
(1-1-6-4. 변형예 4)
또한, 상기 설명에서는, (입력부(22)의) 인식부(224), (출력부(24)의) 인식부(250) 및(서버(10)의) 인식부(104)가 마련되는 예에 대해 설명했지만, 이러한 예에 한정되지 않고, 인식부(224), 인식부(250) 및 인식부(104) 중 어느 하나 또는 두 개는 마련되지 않아도 된다. 그리고, 이 경우, 다른 인식부가, 마련되지 않는 인식부에 대응하는 처리를 추가로 행하도록 구성되어도 된다.
(1-1-6-5. 변형예 5)
또한, 상기 설명에서는, 입력부(22)의 스트림 생성부(226) 및 서버(10-1)의 스트림 생성부(130)가 다중화 처리를 행하는 예에 대해 설명했지만, 이러한 예에 한정되지 않고, 스트림 생성부(226) 및 스트림 생성부(130)는, 다중화 처리를 행하지 않아도 된다. 즉, 다중화 처리가 되지 않고, 서버(10-1)와 클라이언트(20) 사이에서 데이터가 송신되어도 된다.
{1-1-7. 과제의 정리}
이상, 제1 실시 형태에 따른 정보 처리 시스템의 구성에 대해 설명하였다. 그런데, 복수의 실공간의 입력부(22)로부터 송신된 3D 데이터를 합성할 때에, 가령 무조건으로 3D 데이터를 합성하면, 다른 실공간 내의 오브젝트끼리 겹칠 수 있다. 예를 들어, 도 9에 도시된 바와 같이, 실공간 A 내의 오브젝트(42a)와 실공간 B 내의 오브젝트(42d)가, 공유 공간(40) 내에서 동일 위치에 배치됨으로써 겹쳐져 버린다. 그 결과, 표시되는 영상이 유저에게 부자연스럽게 지각될 수 있다.
그래서, 상기 사정을 하나의 착안점으로 하여, 제1 실시 형태에 따른 서버(10-1)를 창작하기에 이르렀다. 제1 실시 형태에 의하면, 서버(10-1)는, 제1 실공간의 센싱 결과와, 제2 실공간의 센싱 결과에 기초하여 생성되는 공유 공간 내에 배치될 공유 오브젝트를 소정의 기준에 기초하여 결정한다. 예를 들어, 서버(10-1)는, 각 실공간 내에 위치하는 각 오브젝트에 대해 우선도를 산출하고, 그리고, 산출된 우선도에 기초하여 당해 공유 공간 내에 배치될 공유 오브젝트를 결정한다. 이에 의해, 오브젝트가 겹쳐서 표시되는 것을 방지할 수 있다.
<1-2. 구성>
제1 실시 형태에 따른 서버(10-1) 구성의 특징은, 특히 공유 공간 합성부(152)의 구성에 관한 것이다. 이하에서는, 도 10을 참조하여, 공유 공간 합성부(152)의 구성에 대해 더욱 상세하게 설명한다. 도 10에 도시되는 바와 같이, 공유 공간 합성부(152)는, 우선도 산출부(400), 및 결정부(402)를 포함한다.
{1-2-1. 우선도 산출부(400)}
(1-2-1-1. 전체적인 우선도)
우선도 산출부(400)는, 각 실공간으로부터 수신되는 Frame 데이터에 기초하여, 각 실공간 내의 각 오브젝트의 우선도를 산출한다. 예를 들어, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 당해 오브젝트의 속성에 관한 우선도에 따른 값을 당해 오브젝트의 우선도로서 산출한다. 또한, 우선도 산출부(400)는, 다른 오브젝트와의 관계성에 관한 당해 오브젝트의 우선도에 따른 값을, 당해 오브젝트의 우선도로서 추가로 산출한다. 또한, 우선도 산출부(400)는, 공유 공간 상에서의 컨텍스트에 관한 당해 오브젝트의 우선도에 따른 값을, 당해 오브젝트의 우선도로서 추가로 산출한다.
예를 들어, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 상술한 세 종류의 우선도(즉, 「오브젝트의 속성에 관한 우선도」(이하, 우선도 A라 칭하는 경우가 있음), 「다른 오브젝트와의 관계성에 관한 우선도」(이하, 우선도 B라 칭하는 경우가 있음), 및 「공유 공간 상에서의 컨텍스트에 관한 우선도」(이하, 우선도 C라 칭하는 경우가 있음))의 가중치 부여합을 산출함으로써, 당해 오브젝트의 최종적인 우선도를 계산한다. 일례로서, 당해 세 종류의 우선도의 각각에 관하여 소정의 가중치가 미리 등록될 수 있다. 그리고, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 이하의 수식(1)과 같이, 당해 오브젝트에 관하여 산출된 당해 세 종류의 우선도와, 각 우선도에 대응하는 가중치에 기초하여 가중치 부여합을 산출하고, 그리고, 산출된 값을, 당해 오브젝트의 최종적인 우선도로 한다.
Figure pct00001
여기서, Priority(i)는, i번째 오브젝트의 최종적인 우선도이다. 또한, PriorityA(i), PriorityB(i), 및 PriorityC(i)는 각각 i번째 오브젝트의 우선도 A, 우선도 B 또는 우선도 C이다. 또한, KA, KB, 및 KC는 각각의 우선도 A에 대응하는 가중치(상수), 우선도 B에 대응하는 가중치(상수) 또는 우선도 C에 대응하는 가중치(상수)이다.
(1-2-1-2. 오브젝트의 속성에 관한 우선도)
이하에서는, 당해 세 종류의 우선도의 각각의 구체적인 산출 방법에 대해 설명을 행한다. 예를 들어, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 당해 오브젝트의 속성에 관한 지표에 기초하여 당해 오브젝트의 우선도 A를 산출한다.
-사이즈
여기서, 「오브젝트의 속성에 관한 지표」는, 오브젝트의 사이즈를 포함할 수 있다. 예를 들어, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 당해 오브젝트의 사이즈(체적 등)에 기초하여, 당해 오브젝트의 우선도 A를 산출한다. 일례로서, 우선도 산출부(400)는, 오브젝트의 사이즈가 커지는 만큼 우선도가 높아지도록, 당해 오브젝트의 우선도 A를 산출한다. 이 산출예에 의하면, 사이즈가 큰 오브젝트일수록 우선하여 공유 공간 상에 배치된다. 따라서, 사이즈가 작은 오브젝트가 공유 공간 상에 다수 배치되는 것에 수반하는(콘텐츠의 표시 시에 있어서의) 시인성의 저하를 방지할 수 있다.
또는 오브젝트의 사이즈별로 우선도가 미리 테이블에 등록될 수 있다. 그리고, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 당해 오브젝트의 사이즈의 인식 결과와, 당해 테이블의 등록 내용에 기초하여 당해 오브젝트의 우선도 A를 산출해도 된다.
또한, 오브젝트의 사이즈의 인식은, 3D 데이터에 기초하여 행하여져도 되고 또는 2D 화상에 기초하여 행하여지고, 또한, 대응하는 3D 데이터에 인식 결과가 매핑되어도 된다.
-종류
또한, 「오브젝트의 속성에 관한 지표」는, 오브젝트의 종류를 포함할 수 있다. 예를 들어, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 당해 오브젝트의 종류의 인식 결과에 기초하여 당해 오브젝트의 우선도 A를 산출한다. 예를 들어, 오브젝트의 종류별로 우선도가 미리 테이블에 등록될 수 있다. 그리고, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 당해 오브젝트 종류의 인식 결과와, 당해 테이블의 등록 내용에 기초하여 당해 오브젝트의 우선도 A를 산출한다. 또한, 오브젝트 종류의 인식은, 3D 데이터에 기초하여 행하여져도 되고 또는 2D 화상에 기초하여 행하여지고, 또한, 대응하는 3D 데이터에 인식 결과가 매핑되어도 된다.
-공간
또한, 「오브젝트의 속성에 관한 지표」는, 오브젝트가 위치하는 실공간(원래 공간)을 포함할 수 있다. 예를 들어, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 당해 오브젝트가 위치하는 실공간에 기초하여 당해 오브젝트의 우선도 A를 산출한다. 예를 들어, 공간마다 우선도가 미리 테이블에 등록될 수 있다. 그리고, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 당해 오브젝트가 위치하는 실공간과, 당해 테이블의 등록 내용에 기초하여 당해 오브젝트의 우선도 A를 산출한다.
-인물
또한, 「오브젝트의 속성에 관한 지표」는, 오브젝트가 사람인 경우에 당해 사람의 식별 정보를 포함할 수 있다. 예를 들어, 각 실공간 내의 각 오브젝트에 관해서, 당해 오브젝트가 사람인 경우에는, 우선도 산출부(400)는, 당해 인물(오브젝트)에 기초하여, 당해 오브젝트의 우선도 A를 산출한다. 예를 들어, 인물마다 우선도가 미리 테이블에 등록될 수 있다. 그리고, 오브젝트가 사람인 경우에는, 우선도 산출부(400)는, 당해 인물과, 당해 테이블의 등록 내용에 기초하여 당해 오브젝트의 우선도 A를 산출한다. 또한, 오브젝트가 사람이 아닌 경우에는, 우선도 산출부(400)는, 당해 오브젝트의 우선도 A를 「0」으로 산출해도 된다.
또한, 인물의 식별은, 3D 데이터에 기초하여 행하여져도 되고 또는 2D 화상에 기초하여 행하여지고, 또한, 대응하는 3D 데이터에 식별 결과가 매핑되어도 된다.
-조합
또는 우선도 산출부(400)는, 오브젝트별로, 복수의 「오브젝트의 속성에 관한 지표」의 각각의 우선도를 산출함으로써, 당해 오브젝트의 우선도 A를 산출해도 된다. 예를 들어, 우선도 산출부(400)는, 오브젝트별로, 먼저, 당해 오브젝트에 관해서, 당해 복수의 「오브젝트의 속성에 관한 지표」의 각각의 우선도를 산출한다. 그리고, 우선도 산출부(400)는, 오브젝트별로, 당해 오브젝트에 관하여 산출된 당해 복수의 지표의 각각의 우선도와, 당해 복수의 지표의 각각에 관한 소정의 가중치에 기초하여 가중치 부여합을 산출하고, 그리고, 산출된 값을, 당해 오브젝트의 우선도 A로 해도 된다.
(1-2-1-3. 다른 오브젝트와의 관계성에 관한 우선도)
또한, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 당해 오브젝트의 이웃에 위치하는 다른 오브젝트와 당해 오브젝트와의 관계성에 관한 지표에 기초하여, 당해 오브젝트의 우선도 B를 산출하는 것이 가능하다.
-사람과의 접촉 유무
여기서, 「다른 오브젝트와의 관계성에 관한 지표」는, 원래 공간에 있어서의 사람과의 접촉 유무를 포함할 수 있다. 예를 들어, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 당해 오브젝트가 위치하는 원래 공간 내에서 당해 오브젝트가 사람과 접촉하고 있는지 여부에 기초하여, 당해 오브젝트의 우선도 B를 산출한다. 여기서, 당해 오브젝트가 사람과 접촉하고 있는 경우의 예로서는, 사람이 당해 오브젝트를 갖고 있는 경우나, 사람이 당해 오브젝트 상에 앉아 있는 경우 등을 들 수 있다.
예를 들어, 사람마다 우선도가 미리 테이블에 등록될 수 있다. 그리고, 각 실공간(원래 공간) 내의 각 오브젝트에 관해서, 당해 오브젝트가 원래 공간 내에서 사람과 접촉하고 있는 경우에는, 우선도 산출부(400)는, 해당 사람과, 당해 테이블의 등록 내용에 기초하여 당해 오브젝트의 우선도 B를 산출한다. 또한, 당해 오브젝트가 원래 공간 내에서 사람과 접촉하고 있지 않은 경우에는, 우선도 산출부(400)는, 당해 오브젝트의 우선도 B를 「0」으로 산출해도 된다.
일반적으로, 원래 공간이 상이한 유저끼리 공유 공간 상에서 회화하는 장면에서는, 적어도 어느 유저가 원래 공간 내에서 어떠한 오브젝트와 접촉하고 있는 경우(예를 들어 당해 오브젝트를 갖고 있는 경우 등)에는, 당해 회화에 있어서 당해 오브젝트가 화제가 되고 있을 가능성이 높다. 이 산출예에 의하면, 화제가 되고 있을 가능성이 높은 오브젝트를 보다 우선하여 표시시킬 수 있다.
-사람과의 거리
또한, 「다른 오브젝트와의 관계성에 관한 지표」는, 원래 공간에 있어서의 사람과의 거리를 포함할 수 있다. 예를 들어, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 당해 오브젝트가 위치하는 원래 공간에 있어서의 당해 오브젝트와 사람과의 거리에 기초하여, 당해 오브젝트의 우선도 B를 산출한다. 일례로서, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 원래 공간 내에서 당해 오브젝트의 가장 가까이에 위치하는 사람과 당해 오브젝트 사이의 거리와, 당해 사람의 식별 정보에 기초하여 당해 오브젝트의 우선도 B를 산출한다.
예를 들어, 사람마다 우선도가 미리 테이블에 등록될 수 있다. 그리고, 각 실공간 내의 각 오브젝트에 관해서, 원래 공간 내에서 당해 오브젝트의 가장 가까이에 위치하는 사람과 당해 오브젝트 사이의 거리가 소정의 임계값 이하인 경우에는, 우선도 산출부(400)는, 당해 테이블에 있어서 당해 사람에게 관련지어서 등록되어 있는 내용에 기초하여, 당해 오브젝트의 우선도 B를 산출한다. 또한, 원래 공간 내에서 당해 오브젝트의 가장 가까이에 위치하는 사람과 당해 오브젝트 사이의 거리가 소정의 임계값보다도 큰 경우에는, 우선도 산출부(400)는, 당해 오브젝트의 우선도 B를 「0」으로 산출해도 된다.
-조합
또는 우선도 산출부(400)는, 오브젝트별로, 복수의 「다른 오브젝트와의 관계성에 관한 지표」의 각각의 우선도를 산출함으로써, 당해 오브젝트의 우선도 B를 산출해도 된다. 예를 들어, 우선도 산출부(400)는, 오브젝트별로, 먼저, 당해 복수의 「다른 오브젝트와의 관계성에 관한 지표」의 각각에 관해서, 당해 오브젝트의 우선도를 산출한다. 그리고, 우선도 산출부(400)는, 오브젝트별로, 당해 복수의 지표의 각각의 우선도와, 당해 복수의 지표의 각각에 관한 소정의 가중치에 기초하여 가중치 부여합을 산출하고, 그리고, 산출된 값을, 당해 오브젝트의 우선도 B로 해도 된다.
(1-2-1-4. 공유 공간 상에서의 컨텍스트에 관한 우선도)
그런데, 원래 공간이 상이한 유저 사이에서 지금 막 화제가 되고 있는 오브젝트가 가령 갑자기 표시되지 않게 되면, 유저에게 부자연스럽게 지각될 수 있으므로, 바람직하지 않다. 또한, 공유 공간에 있어서, 다른 오브젝트와 의존 관계에 있는 오브젝트가 가령 갑자기 표시되지 않게 되면, 역시 유저에게 부자연스럽게 지각될 수 있다. 여기서, 당해 의존 관계의 예로서는, 공유 공간에 있어서 원래 공간이 상이한 오브젝트가 대상 오브젝트 상에 배치되어 있는 경우(예를 들어 공유 공간에 있어서 실공간(2a)의 컴퓨터가 실공간(2b)의 책상 위에 배치되어 있는 경우 등)를 들 수 있다.
그래서, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 공유 공간에 있어서의 컨텍스트를 나타내는 정보(이하, 컨텍스트 정보라고 칭함)에 기초하여, 당해 오브젝트의 우선도 C를 산출하는 것이 가능하다. 예를 들어, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 컨텍스트 정보와, 공유 공간 상에서의 컨텍스트에 관한 지표에 기초하여, 당해 오브젝트의 우선도 C를 산출한다.
-유저 사이의 회화 시의 화제
여기서, 당해 컨텍스트 정보는, 공유 공간 상에서의 복수의 유저 사이의 회화 시의 화제를 나타내는 정보를 포함하고, 그리고, 「공유 공간 상에서의 컨텍스트에 관한 지표」는, 공유 공간 상에서의 복수의 유저 사이의 회화 시의 화제를 포함할 수 있다. 이 경우, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 공유 공간 상에서의 복수의 유저 사이의 회화 시의 화제에 기초하여, 당해 오브젝트의 우선도 C를 산출한다. 일례로서, 각 실공간 내의 각 오브젝트에 관해서, 당해 회화 시에 발해진 적어도 어느 단어가 당해 오브젝트를 나타내는 경우에는, 우선도 산출부(400)는, 당해 오브젝트의 우선도 C를, 「0」보다도 큰 소정의 값으로서 산출한다. 또한, 유저 사이의 회화 시에 발해진 어느 단어도 당해 오브젝트를 나타내지 않는 경우에는, 우선도 산출부(400)는, 당해 오브젝트의 우선도 C를 「0」으로 산출해도 된다. 또한, 유저 사이의 회화 시에 발해진 단어는, 예를 들어 입력부(22)(센서부(220))에 의해 집음된 음성의 인식 결과에 기초하여 특정될 수 있다.
-공유 공간 상에서의 유저의 포인팅
또한, 당해 컨텍스트 정보는, 공유 공간 상에서의 유저의 포인팅 검출의 유무를 나타내는 정보를 포함하고, 그리고, 「공유 공간 상에서의 컨텍스트에 관한 지표」는, 공유 공간 상에서의 유저의 포인팅 검출의 유무를 포함할 수 있다. 이 경우, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 공유 공간 상에서 당해 오브젝트가 유저에 의해 포인팅되어 있는지 여부에 기초하여, 당해 오브젝트의 우선도 C를 산출한다. 예를 들어, 당해 오브젝트가 유저에 의해 포인팅되어 있는 경우에는, 우선도 산출부(400)는, 당해 오브젝트의 우선도 C를, 「0」보다도 큰 소정의 값으로서 산출한다. 또한, 당해 오브젝트가 유저에 의해 포인팅되지 않은 경우에는, 우선도 산출부(400)는, 당해 오브젝트의 우선도 C를 「0」으로 산출해도 된다. 또한, 당해 오브젝트가 유저에 의해 포인팅되었는지 여부에 관해서는, 유저의 제스처의 인식 결과나, 유저 손가락의 인식 결과 등에 기초하여 특정될 수 있다.
-공유 공간 상에서의 오브젝트 사이의 의존 관계
또한, 당해 컨텍스트 정보는, 공유 공간 상에서의 오브젝트 사이의 의존 관계를 나타내는 정보를 포함하고, 그리고, 「공유 공간 상에서의 컨텍스트에 관한 지표」는, 공유 공간 상에서의 오브젝트 사이의 의존 관계를 포함할 수 있다. 이 경우, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 공유 공간 상에서의 오브젝트 사이의 의존 관계에 기초하여, 당해 오브젝트의 우선도 C를 산출한다. 일례로서, 각 실공간 내의 각 오브젝트에 관해서, 당해 오브젝트가 공유 공간 상에서 다른 오브젝트와 의존 관계에 있는 경우에는, 우선도 산출부(400)는, 당해 오브젝트의 우선도 C를, 「0」보다도 큰 소정의 값으로서 산출한다. 또한, 당해 오브젝트가 공유 공간 상에서 다른 오브젝트와 의존 관계에 있지 않은 경우에는, 우선도 산출부(400)는, 당해 오브젝트의 우선도 C를 「0」으로 산출해도 된다.
-그 밖의 예
또한, 당해 컨텍스트 정보는, 유저의 표정(화내고 있거나, 웃고 있는 등), 시간대(낮, 밤 등) 및 요일(평일, 휴일 등) 등을 나타내는 정보를 포함하고, 그리고, 「공유 공간 상에서의 컨텍스트에 관한 지표」는, 유저의 표정, 시간대, 및 요일 등을 포함할 수 있다.
또한, 당해 컨텍스트 정보는, 공유 공간에 참가 중인 유저 또는 공유 공간 상에서 회화를 하고 있는 유저의 프로파일을 나타내는 정보를 포함하고, 그리고, 「공유 공간 상에서의 컨텍스트에 관한 지표」는, 공유 공간에 참가 중인 유저 또는 공유 공간 상에서 회화를 하고 있는 유저의 프로파일을 포함할 수 있다. 이 경우, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 공유 공간 상에 위치하는 유저(또는 공유 공간 상에서 회화를 하고 있는 유저)에 관하여 미리 등록되어 있는 프로파일 정보에 기초하여, 당해 오브젝트의 우선도 C를 산출해도 된다. 여기서, 프로파일 정보는, 해당 유저의 예를 들어 연령, 성별, 국적, 취미, 및 기호 등의 정보를 포함할 수 있다.
-조합
또는 우선도 산출부(400)는, 오브젝트별로, 복수의 「공유 공간 상에서의 컨텍스트에 관한 지표」의 각각의 우선도를 산출함으로써, 당해 오브젝트의 우선도 C를 산출해도 된다. 예를 들어, 우선도 산출부(400)는, 오브젝트별로, 먼저, 복수의 「공유 공간 상에서의 컨텍스트에 관한 지표」의 각각에 관해서, 당해 오브젝트의 우선도를 산출한다. 그리고, 우선도 산출부(400)는, 오브젝트별로, 당해 복수의 지표의 각각의 우선도와, 당해 복수의 지표의 각각에 관한 소정의 가중치에 기초하여 가중치 부여합을 산출하고, 그리고, 산출된 값을, 당해 오브젝트의 우선도 C로 해도 된다.
{1-2-2. 결정부(402)}
결정부(402)는, 우선도 산출부(400)에 의해 산출된 각 오브젝트의 우선도에 기초하여, 공유 공간 내에 배치될 공유 오브젝트(이하, 「표시 대상 오브젝트」라고도 칭함)를 결정한다. 예를 들어, 각 오브젝트에 관해서, 당해 오브젝트보다도 우선도가 높은 다른 오브젝트와 공유 공간 상의 배치 위치가 겹치지 않는 경우에만, 결정부(402)는, 당해 오브젝트를 표시 대상 오브젝트로서 결정한다. 또한, 제1 실시 형태에서는, 기본적으로, 각 오브젝트에 관해서, 당해 오브젝트의 원래 공간 상의 위치에 대응하는 공유 공간 상의 위치에, 당해 오브젝트는 배치될 수 있다.
도 11은, 우선도 산출부(400)에 의해 산출된 각 오브젝트의 우선도의 예를 나타낸 설명도이다. 도 11에 도시한 예에서는, 우선도가 높은 오브젝트의 순번은, (1) 실공간 A 내의 오브젝트 ID가 「1」인 오브젝트(42a)(우선도(1000)), (2) 실공간 B 내의 오브젝트 ID가 「1」인 오브젝트(42c)(우선도(1000)), (3) 실공간 A 내의 오브젝트 ID가 「2」인 오브젝트(42b)(우선도(500)), (4) 실공간 B 내의 오브젝트 ID가 「2」인 오브젝트(42d)(우선도(300))이다. 또한, 도 11에 도시된 바와 같이, 공유 공간에 있어서 오브젝트(42a)가 배치되어야 할 영역(즉, 실공간 A에 있어서 오브젝트(42a)가 위치하는 영역에 대응하는 공유 공간의 영역)과, 공유 공간에 있어서 오브젝트(42d)가 배치되어야 할 영역(즉, 실공간 B에 있어서 오브젝트(42d)가 위치하는 영역에 대응하는 공유 공간의 영역)은 중복된다. 그래서, 공유 공간 합성부(152)는, 도 12에 도시된 바와 같이, 우선도가 높은 순, 즉 오브젝트(42a), 오브젝트(42c), 오브젝트(42b)의 순으로, 오브젝트(42)를 공유 공간 상에 배치한다. 또한, 공유 공간 합성부(152)는, (오브젝트(42a)와 위치가 중복되므로) 오브젝트(42d)를 배치하지 않는 것을 결정한다. 이에 의해, 공유 공간에 있어서 복수의 오브젝트가 겹쳐서 배치되는 것을 방지할 수 있다.
<1-3. 효과>
이상 설명한 바와 같이, 제1 실시 형태에 의하면, 서버(10-1)는, 각 실공간 내의 각 오브젝트에 관하여 우선도를 산출하고, 그리고, 산출된 우선도에 기초하여 표시 대상 오브젝트를 결정한다. 이에 의해, 각 실공간 내의 각 오브젝트를 일의적으로 순위 부여를 행할 수 있다. 그리고, 서버(10-1)는, 예를 들어 우선도가 높은 순으로 각 오브젝트를 공유 공간 상에 배치할 수 있다. 따라서, 공유 공간에 있어서 복수의 오브젝트가 겹쳐서 배치되는 것을 방지할 수 있으므로, 오브젝트가 겹쳐서 표시되는 것을 방지할 수 있다.
<1-4. 응용예 1>
{1-4-1. 개요}
상기 설명에서는, 우선도 산출부(400)가, 프레임 단위로, 각 오브젝트의 우선도를 산출하는 예에 대해 설명하였다. 그런데, 오브젝트 자체는 동일하여도, 당해 오브젝트에 대한 인식 결과는 프레임별로 상이할 수 있다. 특히, 얼굴 인식에서는, 사람의 얼굴의 방향이 바뀌면 인식 결과가 크게 바뀔 수 있다. 이 때문에, 동일한 오브젝트여도, 산출되는 우선도는 프레임별로 상이할 수 있다. 그 결과, 연속되는 프레임 사이에서, 표시 대상으로서 선택되는 오브젝트가 빈번히 변화할 수 있으므로, 깜박거림(flickering)이 생길 수 있다.
여기서, 도 13을 참조하여, 상기한 내용에 대해 보다 상세하게 설명한다. 도 13에 도시된 바와 같이, N-1번째 프레임에서는, 오브젝트(42a)의 우선도가 높게 산출됨으로써, 오브젝트(42a)가 표시된다. 한편, N번째 프레임에서는, 오브젝트(42d) 쪽이 오브젝트(42a)보다도 우선도가 높게 산출됨으로써, 오브젝트(42d)가 우선하여 표시되며, 또한, 오브젝트(42a)가 비표시가 된다. 그 결과, 표시부(246)에 표시되는 영상이 깜박거릴 수 있다.
다음에, 제1 실시 형태의 응용예 1에 대해 설명한다. 응용예 1에 의한 서버(10-1)는, 선행하는 프레임에 있어서 표시 대상으로 되어 있던 오브젝트에 관한 정보에 기초하여, 대상 프레임에 있어서의 표시 대상 오브젝트를 더 결정한다. 이에 의해, 연속되는 프레임에 있어서, 표시 대상으로서 결정되는 오브젝트의 변동을 억제할 수 있다.
또한, 응용예 1에 의한 클라이언트(20) 및 서버(10-1)에 포함되는 구성 요소는, 상기 설명과 동일하다. 이하에서는, 상기 설명과 다른 기능을 갖는 구성 요소에 대해서만 설명을 행한다.
{1-4-2. 결정부(402)}
응용예 1에 의한 결정부(402)는, 연속되는 프레임에 있어서의, 각 실공간 내의 각 오브젝트의 트래킹의 결과에 기초하여, 표시 대상 오브젝트를 결정한다. 예를 들어, 결정부(402)는, 이하와 같이, 선행하는 프레임에 있어서 표시 대상이었던 오브젝트를, 표시 대상이 아니었던 오브젝트보다도 우선하여, 대상 프레임에 있어서의 표시 대상 오브젝트를 결정한다.
먼저, 결정부(402)는, 프레임별로, 각 실공간 내의 각 오브젝트를 트래킹한다. 그리고, 대상 프레임에 포함되는 각 오브젝트에 관해서, (트래킹의 결과에 기초하여) 선행하는 프레임 내에 동일한 오브젝트가 존재하는 것으로 추정되는 경우에는, 결정부(402)는, 선행하는 프레임에 있어서의 해당 오브젝트와 동일한 오브젝트 ID를 대상 프레임에 있어서의) 당해 오브젝트에 대해 부여한다.
계속해서, 결정부(402)는, 선행하는 프레임에 있어서 표시 대상이었던 오브젝트를 표시 대상 오브젝트 후보로서 설정한다. 그리고, 결정부(402)는, 우선도 산출부(400)에 의해 산출된 우선도가 높은 순으로, 당해 표시 대상 오브젝트 후보를 공유 공간 상에 배치한다. 또한, 이 때, 이미 배치 완료된 오브젝트와 위치가 겹칠 경우에는, 결정부(402)는, 해당 오브젝트를 표시 대상으로 하지 않는다.
계속해서, 결정부(402)는, 선행하는 프레임에 있어서 표시 대상이 아니었던 오브젝트를, 표시 대상 오브젝트 후보로서 설정한다. 그리고, 결정부(402)는, 우선도 산출부(400)에 의해 산출된 우선도가 높은 순으로, 당해 표시 대상 오브젝트 후보를 공유 공간 상에 배치해 간다. 또한, 이 때, 이미 배치 완료된 오브젝트와 위치가 겹칠 경우에는, 결정부(402)는, 해당 오브젝트를 표시 대상으로 하지 않는다.
{1-4-3. 효과}
이상 설명한 바와 같이, 응용예 1에 의한 서버(10-1)는, 선행하는 프레임에 있어서 표시 대상이었던 오브젝트를, 표시 대상이 아니었던 오브젝트보다도 우선하고, 대상 프레임에 있어서의 표시 대상 오브젝트를 결정한다. 이 때문에, 연속되는 프레임에 있어서, 표시 대상으로서 결정되는 오브젝트의 변동을 억제할 수 있다. 그리고, 시인성의 저하를 방지할 수 있다.
{1-4-4. 변형예 1}
또한, 응용예 1은, 상술한 예에 한정되지 않고, 복수의 변형예가 적용 가능하다. 예를 들어, 각 오브젝트에 관해서, 당해 오브젝트의 인식 결과의 정밀도가 낮은 경우에는, 서버(10-1)는, 선행하는 프레임에 있어서의 당해 오브젝트의 인식 결과를, 대상 프레임에 있어서의 당해 오브젝트의 인식 결과로서 대용해도 된다.
(1-4-4-1. 인식부(224)·인식부(104))
이 변형예 1에 의한 입력부(22)의 인식부(224), 및/또는 서버(10-1)의 인식부(104)는, 각 오브젝트에 관하여 인식을 행했을 때, 인식 결과의 신뢰도가 소정의 임계값보다도 낮은 경우에는 당해 인식 결과를 메타 정보에 부여(저장)하지 않는다.
(1-4-4-2. 공유 공간 합성부(152))
변형예 1에 의한 공유 공간 합성부(152)는, 각 실공간 내의 각 오브젝트에 관해서, 하나 이상의 인식 결과가 메타 정보 내에 저장되어 있지 않은 경우에는, 선행하는 프레임의 메타 정보 내의 당해 오브젝트의 해당 인식 결과를, 대상 프레임에 있어서의 당해 오브젝트의 해당 인식 결과로서 이용한다. 예를 들어, 이 경우, 결정부(402)는, 먼저, 선행하는 프레임의 메타 정보 내에 당해 오브젝트의 인식 결과가 부여되어 있는지 여부를 확인한다. 그리고, 인식 결과가 부여되어 있는 경우에는, 결정부(402)는, 당해 인식 결과를, 대상 프레임에 있어서의 당해 오브젝트의 인식 결과로서 사용한다.
도 14는, N-1번째 프레임 및 N번째 프레임에 있어서의 메타 정보(306)의 예를 나타낸 설명도이다. 도 14에 도시된 바와 같이, N번째 프레임에 있어서, 실공간 A 내의 오브젝트 ID가 「2」번인 오브젝트(42a), 및 실공간 B 내의 오브젝트 ID가 「2」번인 오브젝트에 관하여 「오브젝트의 종류」가 메타 정보(306)에 저장되지 않았다고(즉, 인식 결과의 정밀도가 소정의 정밀도보다도 낮다고) 하자. 이 경우, 도 14에서 화살표로 나타낸 바와 같이, 결정부(402)는, N-1번째 프레임에 있어서의 메타 정보 내의 오브젝트(42a)의 「종류」의 인식 결과(「Chair(L)」) 및 오브젝트(42b)의 「종류」의 인식 결과(「Chair(M)」)를 각각 N번째 프레임에 있어서의 오브젝트(42a)의 「종류」 또는 오브젝트(42b)의 「종류」로서 사용한다.
{1-4-5. 변형예 2}
또한, 상기 설명에서는, 결정부(402)가 연속되는 프레임 사이의 각 오브젝트의 트래킹의 결과에 기초하여, 표시 대상 오브젝트를 결정하는 예에 대해 설명했지만, 이러한 예에 한정되지 않는다. 다른 변형예로서, 서버(10-1)는, 각 실공간 내의 각 오브젝트에 관해서, 당해 오브젝트의 표시 상황에 관한 우선도(이하, 우선도 D라 칭하는 경우가 있음)를 다시 계산하고, 그리고, 우선도 D에 기초하여, 대상 프레임에 있어서의 표시 대상 오브젝트를 결정해도 된다.
(우선도 산출부(400))
이 변형예 2에 의한 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 당해 오브젝트의 우선도 D를 추가로 계산한다. 예를 들어, 각 실공간 내의 각 오브젝트에 관해서, 직전의 표시 프레임에 있어서 당해 오브젝트가 표시되어 있는 경우에는, 우선도 산출부(400)는, 당해 오브젝트의 우선도 D를, 「0」보다도 큰 소정의 값으로서 산출한다. 또한, 직전의 표시 프레임에 있어서 당해 오브젝트가 표시되지 않은 경우에는, 우선도 산출부(400)는, 당해 오브젝트의 우선도 D를 「0」으로 산출한다.
그리고, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 당해 오브젝트의 우선도 D, 및 1-2-1절에서 설명한 세 종류의 우선도(즉, 합계 네 종류의 우선도)의 가중치 부여합을 산출함으로써, 당해 오브젝트의 최종적인 우선도를 계산하는 것이 가능하다. 예를 들어, 우선도의 종류별로 소정의 가중치가 미리 등록될 수 있다. 그리고, 우선도 산출부(400)는, 각 실공간 내의 각 오브젝트에 관해서, 네 종류의 우선도와, 각 우선도의 종류에 대응하는 가중치에 기초하여 가중치 부여합을 산출하고, 그리고, 산출된 값을, 당해 오브젝트의 최종적인 우선도로 해도 된다.
이 변형예에 의하면, 오브젝트가 직전의 표시 프레임에서 표시되어 있는 경우 쪽이, 직전의 표시 프레임에서 표시되지 않은 경우보다도 (최종적인)우선도가 높아진다. 따라서, 직전의 표시 프레임에서 표시되어 있는 오브젝트가 우선하여 표시 대상으로서 (계속해서) 결정될 수 있다.
{1-4-6. 변형예 3}
그런데, 통상 실공간에서는 물체가 갑자기 소멸되는 것은 생각하기 어렵다. 그래서, 다른 변형예로서, 선행하는 프레임에 있어서 존재하고 있던 단일 오브젝트가 대상 프레임에 있어서 소멸되며, 또한, 당해 오브젝트와 동일 위치에 복수의 오브젝트가 위치하고 있는 경우에는, 서버(10-1)(공유 공간 합성부(152))는, 선행하는 프레임 내의 오브젝트가 당해 복수의 오브젝트로 분할된 것으로 간주하는 것이 가능하다. 예를 들어, 공유 공간 합성부(152)는, 대상 프레임에 있어서 동일한 장소에 위치하는 복수의 오브젝트 모두를, 선행하는 프레임 내의, 대응하는 하나의 오브젝트와 동일하다고 간주해도 된다.
또한, 통상 실공간에서는 물체가 갑자기 출현하는 것도 생각하기 어렵다. 그래서, 선행하는 프레임에 있어서 존재하고 있던 복수의 오브젝트가 대상 프레임에 있어서 소멸되며, 또한, 당해 복수의 오브젝트와 동일 위치에 하나의 오브젝트만이 위치하고 있는 경우에는, 서버(10-1)(공유 공간 합성부(152))는, 선행하는 프레임 내의 당해 복수의 오브젝트가 당해 하나의 오브젝트로 결합되었다고 간주하는 것이 가능하다. 예를 들어, 공유 공간 합성부(152)는, 대상 프레임에 있어서 동일한 장소에 위치하는 하나의 오브젝트를, 선행하는 프레임 내의, 대응하는 당해 복수의 오브젝트와 동일하다고 간주해도 된다.
이 변형예 3에 의하면, 오브젝트가 소멸되거나 또는 결합되었다고 추정되는 경우에 있어서, 선행하는 프레임과의 사이에서의 표시의 안정성을 향상시킬 수 있다.
{1-4-7. 변형예 4}
또한, 상기 설명에서는, 결정부(402)가 표시 대상 오브젝트를 프레임별로 결정하는 예에 대해 설명했지만, 이러한 예에 한정되지 않는다. 다른 변형예로서, 서버(10-1)(공유 공간 합성부(152))는, 소정의 조건이 만족되는 경우에만 표시 대상 오브젝트 결정 처리(표시 판정 처리)를 행하는 것도 가능하다.
여기서, 소정의 조건은, 예를 들어 유저의 지시 등에 기초하여, 공간의 공유 (즉 공유 공간의 생성)가 개시되는 것이어도 된다. 또는 소정의 조건은, 생성 완료된 공유 공간에 대해, 새로운 실공간이 합성의 대상으로서 추가되는 것 또는 당해 공유 공간의 생성을 위하여 사용되고 있는 복수의 실공간 중 어느 것이 삭제되는 것이어도 된다. 또는 소정의 조건은, 유저에 의한 소정의 지시(예를 들어 콘텐츠의 표시를 갱신하기 위한 지시 등)가 검출되는 것이어도 된다. 또는 소정의 조건은, 오브젝트가 새롭게 나타나는 것 또는 선행하는 프레임에 있어서 존재하고 있던 오브젝트가 소멸되는 것이어도 된다. 또는 소정의 조건은, 어느 오브젝트가 출현하고 나서 일정 기간 계속하여 당해 오브젝트가 존재하는 것(예를 들어 3 프레임 연속으로 존재하는 경우 등)이어도 되고 또는 어떤 오브젝트가 소멸되고 나서 일정 기간 계속하여 당해 오브젝트가 소멸된 채 그대로인 것(예를 들어 「3 프레임」 연속으로 소멸된 경우 등)이어도 된다. 또는 소정의 조건은, 어떤 오브젝트의 사이즈가 직전의 표시 프레임으로부터 소정의 사이즈 이상 커지는 것 또는 소정의 사이즈 이상 작아지는 것이어도 된다.
이 변형예 4에 의하면, 연속되는 프레임 사이에서의 오브젝트의 표시의 안정성을 더욱 향상시킬 수 있다.
<1-5. 응용예 2>
이상, 응용예 1에 대해 설명하였다. 그런데, 오브젝트가 갑자기 새롭게 표시되거나 또는 갑자기 표시되지 않게 되면, 유저는 위화감을 느낄 수 있다. 다음에, 응용예 2에 대해 설명한다.
응용예 2에 의한 공유 공간 합성부(152)는, 선행하는 프레임으로부터 오브젝트가 새롭게 표시되거나 또는 오브젝트가 소멸되는 경우에는, 당해 자유 시점의 콘텐츠 변화를 유저가 지각 가능하도록, 당해 자유 시점의 콘텐츠를 가공한다.
{1-5-1. 오브젝트의 추가시}
예를 들어, 오브젝트(유저(4)를 포함함)가 새롭게 표시되는 경우에는, 공유 공간 합성부(152)는, 당해 새로운 오브젝트가 표시되는 것을, 당해 공유 공간에 참가 중인 유저가 지각 가능하도록, 당해 자유 시점의 콘텐츠를 가공한다. 일례로서, 공유 공간 합성부(152)는, 당해 새로운 오브젝트의 표시가 개시되는 것을 나타내는, 소정 시간(예를 들어 1분 등)의 애니메이션을 표시시키도록, 당해 자유 시점의 콘텐츠를 가공한다.
예를 들어, 새로운 오브젝트(42c)의 표시가 개시되는 경우에는, 공유 공간 합성부(152)는, 먼저, 투과도가 초기값(예를 들어 100)%)으로 설정된, 당해 새로운 오브젝트(42c)를 표시시키고, 그리고, 도 15에 도시된 바와 같이, 당해 새로운 오브젝트(42c)의 투과도를 당해 초기값으로부터 0%로 소정 시간을 들여서 점차 낮추는 처리를 행한다. 또는 공유 공간 합성부(152)는, 도 16에 도시된 바와 같이, 새로운 오브젝트(42c)의 표시를 개시하고 나서 소정 시간만큼, 당해 새로운 오브젝트(42c)의 주위에 파티클(44)을 표시시키도록, 당해 자유 시점의 콘텐츠를 가공한다. 또는 공유 공간 합성부(152)는, 도 17에 도시된 바와 같이, 작은 파티클 군(46)이 공유 공간(40)의 외부로부터 날아오고, 파티클 군(46)이 공유 공간(40) 내에서 점차 커진 후에, 당해 파티클 군(46)이 오브젝트(42c)의 영상으로 전환되는 애니메이션을 표시시키도록, 당해 자유 시점의 콘텐츠를 가공한다. 이들 처리예에 의하면, 예를 들어 새로운 오브젝트가 공유 공간 내에 배치될 경우에, 당해 오브젝트가 갑자기 표시되는 일이 없다. 이 때문에, 공유 공간에 이미 참가 중인 각 유저가 위화감을 느끼거나, 놀라는 것을 방지할 수 있다.
또한, 공유 공간 합성부(152)는, 새로운 오브젝트가 표시되는 타이밍에 소정의 효과음(예를 들어, 새로운 오브젝트의 표시에 대응하는 효과음 등)을 출력시키도록, 당해 자유 시점의 콘텐츠를 가공해도 된다.
{1-5-2. 오브젝트의 삭제시}
또한, 당해 공유 공간 내의 하나 이상의 오브젝트(유저(4)을 포함함)가 당해 공유 공간으로부터 삭제되는 것이 결정된 경우(예를 들어 공유 공간에 참가 중인 유저가 공유 공간으로부터 퇴출될 때 등)에는, 공유 공간 합성부(152)는, 해당 오브젝트가 삭제되는 것을, 당해 공유 공간에 참가 중인 유저가 지각 가능하도록, 당해 자유 시점의 콘텐츠를 가공한다. 예를 들어, 공유 공간 합성부(152)는, 해당 오브젝트 표시가 종료되는 것을 나타내는, 소정 시간(예를 들어 1분 등)의 애니메이션을 표시시키도록, 당해 자유 시점의 콘텐츠를 가공한다.
일례로서, 오브젝트(42c)가 삭제되는 것이 결정된 경우에는, 공유 공간 합성부(152)는, 도 18에 도시된 바와 같이, 오브젝트(42c)의 투과도가 0%로부터 100%로 점차 상승되고, 그 후, 오브젝트(42c)가 비표시가 되는 애니메이션을 표시시키도록, 당해 자유 시점의 콘텐츠를 가공한다. 또는 공유 공간 합성부(152)는, 도 19에 도시된 바와 같이, 삭제 대상 오브젝트(42c)의 주위에 파티클(44)이 소정 시간만큼 표시되고, 그 후, 오브젝트(42c)가 비표시가 되는 애니메이션을 표시시키도록, 당해 자유 시점의 콘텐츠를 가공한다. 또는 공유 공간 합성부(152)는, 도 20에 도시된 바와 같이, 삭제 대상 오브젝트(42c)가 파티클 군(46)으로 변형되고, 또한, 파티클 군(46)의 사이즈가 점차 작아지면서 공유 공간(40)의 외부로 날아가고, 그 후, 파티클 군(46)이 소멸되는 애니메이션을 표시시키도록, 당해 자유 시점의 콘텐츠를 가공한다. 이들 처리예에 의하면, 공유 공간에 배치되어 있는 삭제 대상 오브젝트(퇴출 유저(4) 등)가 갑자기 비표시로 되는 경우는 없다. 이 때문에, 공유 공간에 이미 참가 중인 각 유저가 위화감을 느끼거나, 놀라는 것을 방지할 수 있다.
또한, 공유 공간 합성부(152)는, 삭제 대상 오브젝트가 비표시가 되는 타이밍에 소정의 효과음(예를 들어, 오브젝트의 삭제에 대응하는 효과음 등)을 출력 시키도록, 당해 자유 시점의 콘텐츠를 가공해도 된다.
<1-6. 응용예 3>
이상, 응용예 2에 대해 설명하였다. 그런데, 실공간(2a)에 위치하는 유저(4a)와 실공간(2b)에 위치하는 유저(4b)가 공유 공간 내에서 커뮤니케이션을 하고 있을 때에, 별도의 실공간(2c)에 위치하는 유저(4c)가 당해 공유 공간 내에 참가할 것을 희망하는 장면도 상정된다. 이러한 장면에서는, 세 실공간(실공간(2a), 실공간(2b) 및 실공간(2c))의 3D 데이터가 합성됨으로써, 공유 공간이 재생성될 것이 요망된다. 한편, 예를 들어 이미 참가하고 있는 두 유저의 원래 공간 내의 다수의 오브젝트가 표시되지 않게 되는 등, 지금까지의 공유 공간이 갑자기 크게 변화하는 것은 바람직하지 않다.
다음에, 제2 실시 형태의 응용예 3에 대해 설명한다. 응용예 3에 의한 공유 공간 합성부(152)는, 공유 공간에 미참가의 유저가 당해 공유 공간에 참가하기 위한 조작이 검출된 경우에, 오브젝트 우선 폴리시(1624)에 있어서의, 공간별 우선도 테이블(우선도 테이블 「area」)의 등록 내용을 변경한다. 예를 들어, 공유 공간에 새롭게 참가하는 유저가 검출되며, 또한, 당해 공유 공간에 이미 참가하고 있는 모든 유저의 원래 공간(2a)과, 새롭게 참가하는 유저의 원래 공간(2b)이 상이한 경우에는, 공유 공간 합성부(152)는, 이미 참가하고 있는 모든 유저의 원래 공간(2a)보다도, 새롭게 참가하는 유저의 원래 공간(2b) 쪽이 우선도가 낮아지도록, 우선도 테이블 「area」의 등록 내용을 변경한다.
이상 설명한 바와 같이, 응용예 3에 의하면, 공유 공간에 대해 새로운 유저가 참가하는 경우에, 당해 새로운 유저의 원래 공간 내의 오브젝트보다도, 이미 공유 공간에 참가하고 있는 유저의 원래 공간 내의 오브젝트가 우선하여, 당해 공유 공간 상에 배치될 수 있다. 따라서, 공유 공간이 갑자기 크게 변화되는 것을 방지하면서, 새로운 유저의 원래 공간 내의 일부의 오브젝트를 공유 공간 상에 적절하게 배치할 수 있다.
<<2. 제2 실시 형태>>
<2-1. 개요>
이상, 제1 실시 형태에 대해 설명하였다. 그런데, 참가할 유저별로, 이용하는 표시 디바이스(예를 들어 표시부(246) 등)가 상이한 것도 상정된다. 예를 들어, 실공간(2a) 내에 위치하는 유저(4a)는 차폐형 웨어러블 디바이스(이하, VR 디바이스라 칭하는 경우가 있음)를 이용하고 있으며, 또한, 실공간(2b) 내에 위치하는 유저(4b)는, AR 디바이스를 이용하는 것이 상정된다. 이 경우, (유저(4a)가 위치하는)실공간(2a) 내의 임의의 오브젝트를 유저(4a)에게 보이지 않도록 VR 디바이스의 표시를 제어하는 것이 가능한 데 비해, (유저(4b)가 위치하는)실공간(2b) 내의 오브젝트를 유저(4b)에게 보이지 않도록 AR 디바이스의 표시를 제어하기는 매우 어렵다. 그래서, 실공간(2b) 내의 오브젝트를 실공간(2a) 내의 오브젝트보다도 우선하여 표시하는 쪽이, 유저(4a) 및 유저(4b)의 양쪽에 있어서 만족감이 향상될 수 있다.
다음에, 제2 실시 형태에 대해 설명한다. 후술하는 바와 같이, 제2 실시 형태에 따른 서버(10-2)는, 복수의 실공간 중 어느 것을 베이스 공간으로서 결정하고, 그리고, 베이스 공간 내에 위치하는 오브젝트를 우선하여 공유 공간 상에 배치하는 것이 가능하다. 여기서, 베이스 공간은, 생성되는 공유 공간의 기초가 되는 공간이다. 예를 들어, 공유 공간에 참가하는 각 유저가 위치하는 복수의 실공간 중 어느 것이 베이스 공간으로서 결정될 수 있다. 또한, 당해 복수의 실공간 중 베이스 공간에 선택되지 않은 모든 실공간 내의 오브젝트 중의 일부가 당해 베이스 공간 상(예를 들어 베이스 공간 상의 빈 영역)에 배치될 수 있다. 또한, 베이스 공간은, 기본적으로는, 실재하는 공간이지만, 이러한 예에 한정되지 않고, 가상 공간(예를 들어 완전한 빈 영역 등)이어도 된다.
<2-2. 구성>
먼저, 제2 실시 형태에 따른 서버(10-2)의 구성에 대해 설명한다. 또한, 이하에서는, 제1 실시 형태와 상이한 내용에 대해서만 설명을 행한다.
{2-2-1. 공유 공간 관리부(100-2)}
도 21은, 제2 실시 형태에 따른 공유 공간 관리부(100-2)의 구성예를 도시한 기능 블록도이다. 도 21에 나타내는 바와 같이, 공유 공간 관리부(100-2)는, 도 8에 나타낸 공유 공간 관리부(100-1)와 비교하여, 베이스 공간 레이아웃 생성부(158) 및 공유 공간 관리용 DB(110)를 추가로 포함한다.
공유 공간 관리용 DB(110)는, 공유 공간의 생성이나 갱신 등의 관리를 위하여 사용되는 데이터베이스이다. 도 22는, 공유 공간 관리용 DB(110)의 구성예를 도시한 도면이다. 도 22에 도시된 바와 같이, 공유 공간 관리용 DB(110)는, 예를 들어 베이스 공간 레이아웃 정보(160), 레이아웃 폴리시 정보 DB(162), 및 오브젝트 관리 정보 DB(164)를 포함한다. 또한, 이들 데이터베이스의 구체적인 내용에 대해서는 후술한다.
{2-2-2. 베이스 공간 레이아웃 생성부(158)}
(2-2-2-1. 베이스 공간의 결정)
-결정예 1
베이스 공간 레이아웃 생성부(158)는, 소정의 조건에 기초하여, 베이스 공간을 (자동적으로)결정한다. 예를 들어, 공간 공유의 개시 시에 있어서, 공유 공간으로의 참가를 희망하고 있는 각 유저가 이용하는 표시 디바이스에 따라 베이스 공간을 결정한다. 일례로서, (공유 공간으로의 참가를 희망하고 있는)모든 유저가 VR 디바이스를 장착하고 있는 경우에는, 베이스 공간 레이아웃 생성부(158)는, 당해 모든 유저 중 어느 유저의 원래 공간 또는 임의의 가상 공간을 베이스 공간으로서 결정한다. 또한, 한사람의 유저(4a)만이 AR 디바이스를 장착하고 있으며, 또한, 나머지 모든 유저(4b)가 VR 디바이스를 장착하고 있는 경우에는, 베이스 공간 레이아웃 생성부(158)는, 당해 유저(4a)의 원래 공간을 베이스 공간으로서 결정한다. 또한, 서로 다른 실공간(2)에 위치하는 복수의 유저가 AR 디바이스를 장착하고 있는 경우에는, 베이스 공간 레이아웃 생성부(158)는, 당해 복수의 유저 중 어느 유저의 원래 공간을 베이스 공간으로서 결정한다. 이들 결정예에 의하면, 적어도 어느 유저가 AR 디바이스를 이용하고 있는 경우에는, 해당 유저의 원래 공간이 베이스 공간으로서 결정된다.
-결정예 2
또는 베이스 공간 레이아웃 생성부(158)는, 레이아웃 폴리시 정보 DB(162)에 저장되어 있는 베이스 공간 선택 폴리시(1620)에 기초하여 베이스 공간을 결정하는 것이 가능하다. 여기서, 베이스 공간 선택 폴리시(1620)에는, 베이스 공간을 선택하기 위한 기준(을 나타내는 데이터)이 미리 저장된다. 예를 들어, 베이스 공간 선택 폴리시(1620)에는, 복수의 평가 지표가 등록되어 있으며, 또한, 평가 지표마다, 당해 평가 지표와 당해 평가 지표의 계수가 관련지어져 있다. 여기서, 평가 지표의 종류는, 예를 들어 (대상의 실공간 내의)빈 영역의 바닥 면적의 합계, 및 (대상의 실공간 내의) 최대의, 연속하는 빈 영역의 바닥 면적 등이다.
예를 들어, 베이스 공간 레이아웃 생성부(158)는, 공유 공간으로의 참가를 희망하고 있는 각 유저가 위치하는 원래 공간마다, 먼저, 베이스 공간 선택 폴리시(1620)에 저장되어 있는 복수의 평가 지표의 각각의 값을 산출한다. 그리고, 베이스 공간 레이아웃 생성부(158)는, 원래 공간마다, 당해 원래 공간에 관하여 산출된 당해 복수의 평가 지표의 각각의 값과, 당해 복수의 평가 지표의 각각 계수의 가중치 부여합을 산출함으로써, 베이스 공간을 결정한다. 예를 들어, 베이스 공간 레이아웃 생성부(158)는, 산출된 가중치 부여합이 최대인 원래 공간을 베이스 공간으로서 결정한다.
-변형예
또한, 변형예로서, 베이스 공간 레이아웃 생성부(158)는, 공유 공간으로의 참가 대상의 각 유저의 행동 인식의 결과에 따라, 베이스 공간을 결정하는 것도 가능하다. 예를 들어, 공유 공간으로의 참가 대상의 복수의 유저 중, 소정의 행동(청소나 요리 등)을 하고 있는 유저가 있는 경우에는, 베이스 공간 레이아웃 생성부(158)는, 당해 유저가 위치하는 실공간을 베이스 공간으로서 결정해도 된다. 이에 따라, 당해 유저에 대해 자유 시점의 콘텐츠가 제시되는 경우에, 당해 유저가 불편해지거나, 또한, 당해 유저의 위험성이 높아지는 것을 방지할 수 있다.
또한, 다른 변형예로서, 베이스 공간 레이아웃 생성부(158)는, 예를 들어 베이스 공간 레이아웃 정보(160)에 레이아웃이 저장되어 있지 않은(즉 비어 있는) 경우에만, 베이스 공간을 결정해도 된다.
(2-2-2-2. 베이스 공간의 생성)
또한, 베이스 공간 레이아웃 생성부(158)는, 결정한 베이스 공간에 기초하여, 베이스 공간의 레이아웃 정보를 생성한다. 그리고, 베이스 공간 레이아웃 생성부(158)는, 생성된 레이아웃 정보를 베이스 공간 레이아웃 정보(160)에 저장한다.
{2-2-3. 베이스 공간 레이아웃 정보(160)}
베이스 공간 레이아웃 정보(160)는, 베이스 공간 레이아웃 생성부(158)에 의해 생성된 레이아웃 정보를 저장한다. 도 23은, 베이스 공간 레이아웃 정보(160)의 구성예를 나타낸 설명도이다. 도 23에 나타내는 바와 같이, 베이스 공간 레이아웃 정보(160)에서는 정적 오브젝트(1600), 빈 영역 정보(1602) 및 메타 정보(1604)가 저장된다. 여기서, 정적 오브젝트(1600)에는, 베이스 공간 내에 사전에 위치하는 오브젝트의 정보가 저장된다. 예를 들어, 정적 오브젝트(1600)에는, 오브젝트별로, 오브젝트 ID, 당해 오브젝트의 점의 정보(좌표나 색 정보 등) 및 당해 오브젝트의 면의 정보가 저장된다. 또한, 빈 영역 정보(1602)에는, 베이스 공간에 있어서의 빈 영역의 정보가 저장된다. 또한, 메타 정보(1604)에는 정적 오브젝트(1600)에 저장되어 있는 모든 오브젝트에 관한 메타 정보가 저장된다. 또한, 메타 정보(1604)의 구체적인 내용은, 도 5에 도시된 메타 정보(306)와 개략 마찬가지일 수 있다.
{2-2-4. 레이아웃 폴리시 정보 DB(162)}
레이아웃 폴리시 정보 DB(162)는, 공유 공간 상에 오브젝트를 레이아웃하기 위한 폴리시(기준)를 저장하는 데이터베이스이다. 도 24는, 레이아웃 폴리시 정보 DB(162)의 구성예를 나타낸 설명도이다. 도 24에 도시된 바와 같이, 레이아웃 폴리시 정보 DB(162)는, 베이스 공간 선택 폴리시(1620), 베이스 공간 오브젝트 선택 폴리시(1622), 오브젝트 우선 폴리시(1624), 오브젝트 레이아웃 평가 폴리시(1626), 및 레이아웃 종료 판정 폴리시(1628)를 포함한다.
여기서, 베이스 공간 오브젝트 선택 폴리시(1622)는, 베이스 공간 내에 배치하는 오브젝트를 선택하기 위한 폴리시(조건)를 저장한다. 예를 들어, 베이스 공간 오브젝트 선택 폴리시(1622)에는, 오브젝트의 종류와, (당해 오브젝트가)베이스 공간에 배치 가능한지 여부 등의 조건이 관련지어서 저장될 수 있다.
또한, 오브젝트 우선 폴리시(1624)는, 1-2-1절에서 설명한 세 종류의 우선도에 관한 지표(「오브젝트의 속성에 관한 지표」, 「다른 오브젝트와의 관계성에 관한 지표」 및 「공유 공간 상에서의 컨텍스트에 관한 지표」)의 각각에 관해서, 당해 지표의 값과, 미리 정해져 있는 우선도를 관련지어서 저장한다. 예를 들어, 오브젝트 우선 폴리시(1624)는, 오브젝트의 종류별의 우선도를 저장한 「우선도 테이블 「type」」, 및 사람마다의 우선도를 저장한 「우선도 테이블 「face」」 등을 저장한다. 여기서, 우선도 테이블 「type」에서는, 예를 들어 오브젝트의 종류가 「사람」인 경우에는 우선도가 「1000」, 또한, 오브젝트의 종류가 「의자(L)」인 경우에는 우선도가 「500」 등과 같이 오브젝트의 종류와 우선도가 관련지어질 수 있다. 또한, 우선도 테이블 「face」에서는, 예를 들어 (대상의) 인물이 「Becky」인 경우에는 우선도가 「1000」, 또한, 인물이 「Beth」인 경우에는 우선도가 「800」 등과 같이 인물과 우선도가 관련지어질 수 있다.
또한, 오브젝트 레이아웃 평가 폴리시(1626)는, 오브젝트의 레이아웃을 평가하기 위한 폴리시(기준)를 저장한다. 예를 들어, 오브젝트 레이아웃 평가 폴리시(1626)에는, 복수의 평가 지표가 등록되어 있으며, 또한, 평가 지표마다, 당해 평가 지표와 당해 평가 지표의 계수가 관련지어져 있다. 여기서, 평가 지표의 종류는, 예를 들어 빈 영역의 바닥 면적의 합계, 및, 사람의 방향 등이다.
또한, 레이아웃 종료 판정 폴리시(1628)는, 베이스 공간에 있어서의 오브젝트의 배치(레이아웃)의 종료를 판정하기 위한 폴리시(판정 조건)를 저장한다. 예를 들어, 레이아웃 종료 판정 폴리시(1628)에는, (베이스 공간의)빈 영역의 바닥 면적 비율이 「30% 미만」이 된 경우나, (베이스 공간의)빈 영역의 체적 비율이 「50% 미만」이 된 경우 등에, 베이스 공간에 있어서의 오브젝트의 배치를 종료하는 것이 등록될 수 있다.
또한, 상술한 각 폴리시는, (한 종류의 기준뿐만 아니라)복수의 종류의 기준을 각각 저장해도 된다. 또한, 폴리시별로, (당해 폴리시에 관련한)복수의 종류의 기준 중에서 유저에 의해 선택된 기준만을 저장해도 된다. 또는 서버(10-2)(공유 공간 생성부(102))는 폴리시별로, (당해 폴리시에 관련한)복수의 종류의 기준 중 어느 것을 사용할지를 자동적으로 결정해도 된다. 예를 들어, 공유 공간 생성부(102)는, 공유 공간 상에서의 컨텍스트에 기초하여, 폴리시별로, (당해 폴리시에 관련한)복수의 종류의 기준 중 어느 것을 사용할지를 결정해도 되고 또는 공유 공간에 참가 중인 유저에 미리 관련지어져 있는 기준을 사용할 것을 결정해도 된다.
{2-2-5. 제어부(108)}
제2 실시 형태에 따른 제어부(108)는, 제3 제어 정보를 생성했을 때, 당해 제3 제어 정보에 기초하여, 후술하는 오브젝트 관리 정보 DB(164) 내의 공유 오브젝트 관련 정보(182)의 등록 내용을 갱신한다. 예를 들어, 원래 공간 내에서 유저가 랩톱형 PC를 들어 올린 이벤트가 이벤트 인식부(106)로부터 전달된 경우에는, 제어부(108)는, 당해 랩톱형 PC의 우선도가 보다 높게 산출되도록 지시하기 위한 제3 제어 정보를 생성하며, 또한, 당해 제3 제어 정보에 기초하여 공유 오브젝트 관련 정보(182)의 내용을 갱신한다. 이에 의해, 우선도 산출부(400)는, 다음 우선도의 산출 시에 있어서, 당해 제3 제어 정보에 기초하여, 당해 랩톱형 PC에 관한 우선도 B를 보다 높게 산출할 수 있다. 따라서, 인식된 이벤트에 대응하는 오브젝트를 우선하여 표시시키는 것이 가능해진다.
{2-2-6. 오브젝트 관리 정보 DB(164)}
오브젝트 관리 정보 DB(164)는, 공유 공간 내에 배치될 공유 오브젝트에 관한 정보를 저장하는 데이터베이스이다. 도 25는, 오브젝트 관리 정보 DB(164)의 구성예를 나타낸 설명도이다. 도 25에 나타내는 바와 같이, 오브젝트 관리 정보 DB(164)는, 공유 오브젝트 테이블(180), 및 공유 오브젝트 관련 정보(182)를 포함한다.
(2-2-6-1. 공유 오브젝트 테이블(180))
공유 오브젝트 테이블(180)은, 공유 공간 내에 배치될 각 오브젝트에 관한 정보를 저장하는 테이블이다. 도 26은, 공유 오브젝트 테이블(180)의 구성예를 나타낸 설명도이다. 도 26에 도시된 바와 같이, 공유 오브젝트 테이블(180)에서는, 오브젝트 ID(1800), 원래 공간(1802), 메타 정보(1804), 및 공유 공간 정보(1806)가 관련지어져 있다. 여기서, 공유 공간 정보(1806)는, 우선도(1808), 표시 판정 결과(1810) 및 영역 정보(1812) 등을 포함한다. 우선도(1808)에는, 해당 오브젝트에 관하여 산출된 우선도가 기록된다. 또한, 표시 판정 결과(1810)에는, 해당 오브젝트가 표시 대상으로 판정되었는지 여부가 기록된다. 또한, 영역 정보(1812)에는, 공유 공간에 있어서 해당 오브젝트가 배치되는 영역(공간)의 정보가 기록된다.
(2-2-6-2. 공유 오브젝트 관련 정보(182))
공유 오브젝트 관련 정보(182)는, 공유 공간 내에 배치될 공유 오브젝트마다의, 다른 오브젝트와의 관계성을 나타내는 정보를 저장한다.
도 27은, 공유 오브젝트 관련 정보(182)의 구성예를 나타낸 설명도이다. 도 27에 도시된 바와 같이, 공유 오브젝트 관련 정보(182)에서는, 오브젝트 ID(1822), 원래 공간(1824), 오브젝트 ID(1826), 원래 공간(1828), 관계성(1830), 및 원인(1832)이 관련지어져 있다. 여기서, 오브젝트 ID(1822)에는, 각 오브젝트의 오브젝트 ID가 기록된다. 또한, 원래 공간(1824)에는, 해당 오브젝트의 원래 공간이 기록된다. 또한, 오브젝트 ID(1826) 및 원래 공간(1828)에는, 해당 오브젝트와 공유 공간 상에서 어떠한 관계성을 갖는 다른 오브젝트의 오브젝트 ID 및 원래 공간이 각각 기록된다. 또한, 관계성(1830)에는, 해당 오브젝트와 다른 오브젝트의 관계성을 나타내는 정보가 기록된다. 예를 들어, 관계성(1830)에는, 공유 공간에 있어서, 해당 오브젝트가 다른 오브젝트(예를 들어 사람)에 참조되고 있다는 것, 다른 오브젝트(예를 들어 사람)에 포인팅되고 있다는 것, 또는 해당 오브젝트와 다른 오브젝트가 의존 관계에 있다는 것 등이 기록된다. 또한, 원인(1832)에는, 관계성(1830)에 기록되어 있는 관계성이 특정된 방법이나, 당해 관계성이 발생된 원인 등이 기록된다. 예를 들어, 원인(1832)에는, 음성 인식이나 제스처 인식 등이 기록된다.
{2-2-7. 공유 공간 합성부(152)}
(2-2-7-1. 공유 공간의 생성)
제2 실시 형태에 따른 공유 공간 합성부(152)는, 동기부(150)로부터 전달되는 복수의 실공간의 Frame 데이터와, 공유 공간 관리용 DB(110)의 등록 내용에 기초하여, 공유 공간 Frame 데이터(자유 시점의 콘텐츠)를 생성한다. 예를 들어, 공유 공간 합성부(152)는, 먼저, 베이스 공간의 레이아웃 정보를 베이스 공간 레이아웃 정보(160)로부터 추출한다. 계속해서, 공유 공간 합성부(152)는, 레이아웃 폴리시 정보 DB(162)의 등록 내용에 기초하여, 베이스 공간 이외의 실공간(원래 공간) 내의 복수의 오브젝트 중에서 표시 대상 오브젝트를 결정하고, 그리고, 당해 표시 대상 오브젝트를 베이스 공간 상에 배치함으로써, 공유 공간을 생성한다. 그리고, 공유 공간 합성부(152)는, 당해 공유 공간에 기초하여 공유 공간 Frame 데이터를 생성한다.
여기서, 도 28a, 도 28b, 및 도 29를 참조하여, 공유 공간의 생성예에 대해 보다 상세하게 설명한다. 또한, 도 28a, 도 28b, 및 도 29에서는, 실공간(2a)이 베이스 공간으로서 결정된 것을 전제로 하고 있다. 또한, 도 28a, 도 28b, 및 도 29에서는, 실공간(2b) 내의 오브젝트가 베이스 공간 상에 배치됨으로써, 공유 공간이 생성되는 예를 나타내고 있다. 또한, 도 28a, 도 28b, 및 도 29에서는, 실공간(2a) 및 실공간(2b)의 상면도를 나타내고 있다.
예를 들어, 도 28a에 도시된 바와 같이, 베이스 공간 레이아웃 생성부(158)는, 먼저, (베이스 공간으로서 결정된) 실공간(2a)에 관해서, (입력부(22)에 의한) 각 오브젝트의 인식 결과에 기초하여, 도 28a의 우측 도면에 도시된 바와 같이 레이아웃 정보를 생성하고, 그리고, 당해 레이아웃 정보를 베이스 공간 레이아웃 정보(160)에 저장한다. 이 때, 베이스 공간 레이아웃 생성부(158)는, 도 28a의 우측 도면에 도시된 바와 같이, 베이스 공간 내의 빈 영역의 정보(1602)(위치나 바닥 면적 등)도 특정하고, 그리고, 특정한 결과를 포함하여 레이아웃 정보를 생성한다. 또한, 변형예로서, 베이스 공간 레이아웃 생성부(158)는, (베이스 공간으로서 결정된) 해당 실공간(2a)에 있어서, 오브젝트가 배치되지 않은 영역뿐만 아니라, 오브젝트가 배치되어 있는 일부 또는 전부의 영역도 빈 영역으로 간주하여 레이아웃 정보를 생성해도 된다.
또한, 도 28b에 도시된 바와 같이, 실공간(2b)에 관해서는, (입력부(22)에 의한) 오브젝트의 인식 결과에 기초하여, 도 28b의 우측 도면에 도시된 바와 같이, 실공간(2b) 내의 각 오브젝트(42)가 특정될 수 있다.
그 후, 우선도 산출부(400)는, 오브젝트 우선 폴리시(1624)의 등록 내용에 기초하여, 실공간(2b) 내의 각 오브젝트(42)의 우선도를 산출한다. 그리고, 공유 공간 합성부(152)는, 오브젝트 레이아웃 평가 폴리시(1626)의 등록 내용에 기초하여, 산출된 우선도가 높은 오브젝트(42)의 순으로, 각 오브젝트(42)를 (베이스 공간 레이아웃 정보(160)가 제시하는)레이아웃 상에 배치한다. 예를 들어, 레이아웃 종료 판정 폴리시(1628)에 저장되어 있는, (오브젝트의 배치를 종료하기 위한)어느 판정 조건이 만족될 때까지, 공유 공간 합성부(152)는, 당해 레이아웃 상에 실공간(2b) 내의 오브젝트(42)를 하나씩 배치한다. 도 29는, 생성 후의 공유 공간(40)의 일례를 나타낸 도면(상면도)이다. 도 29에서는, 실공간(2b) 내의 의자(42d), 사이드 테이블(42c) 및 유저(42e)가 빈 영역(1602a)에 배치되며, 또한, 다른 오브젝트는 공유 공간(40) 상에 배치되지 않은 예를 나타내고 있다.
이 생성예에 의하면, 베이스 공간 상의 오브젝트와, 베이스 공간 이외의 실공간(2) 내의 오브젝트가 베이스 공간 상에 적절하게 배치됨으로써, 공유 공간을 생성할 수 있다.
(2-2-7-2. 유저에 대한 권한 부여)
-공간 공유의 개시 시
또한, 공유 공간 합성부(152)는, 공유 공간에 참가하는 하나 이상의 유저(4) 중, 결정된 베이스 공간 이외의 실공간 내에 위치하는 유저(4b)에 대해 당해 베이스 공간 내의 오브젝트의 액세스 권한을 부여하는 것이 가능하다. 예를 들어, 공유 공간 합성부(152)는, 당해 베이스 공간 내의 기기의 액세스권을 유저(4b)에 대해 (무조건)부여한다. 여기서, 기기는, 홈 네트워크 기기나 IoT(Internet Of Things) 기기 등을 포함할 수 있다. 예를 들어, 기기는, AV(Audio-Visual) 기기, 조명 기기 또는 에어 컨디셔너 등을 포함한다.
또한, 자유 시점의 콘텐츠 생성 후, 당해 베이스 공간 내에서 어떠한 콘텐츠의 재생이 개시된 경우에는, 공유 공간 합성부(152)는, 당해 베이스 공간 이외의 실공간 내에서 당해 콘텐츠를 재생 가능하게 하기 위한 정보(이하, 재생용 정보라고 칭함)를, 당해 실공간 내에 위치하는 유저(4b)에 대해 제공(공유)하는 것이 가능하다. 여기서, 당해 재생용 정보는, 예를 들어 당해 공유 공간 내의 텔레비전 수신기에 의해 표시되고 있는 프로그램의 채널 정보나, 당해 공유 공간 내의 소정의 단말기 상에서 기동되고 있는 Web 브라우저에 표시되어 있는 웹페이지의 URL(Uniform Resource Locator)을 포함할 수 있다. 또한, 당해 재생용 정보는, 네트워크 스트리밍 콘텐츠(예를 들어 Video Streaming 콘텐츠 등)의 URL, 현재의 재생 시각의 정보나, 베이스 공간(과 같은 실공간)에 위치하는 유저(4a)의 당해 네트워크 스트리밍 콘텐츠에 관한 권리 정보 등을 포함할 수 있다. 이 처리예에 의하면, 당해 베이스 공간과는 다른 실공간 내에 위치하는 유저(4b)도 베이스 공간 상의 기기나, 베이스 공간 내의 공유 콘텐츠에 대해 자유롭게 액세스할 수 있다. 예를 들어, 유저(4b)는, 베이스 공간 내에서 재생되고 있는 공유 콘텐츠의 재생 타이밍과 동일한 타이밍에 당해 콘텐츠를 실공간(2b)에 있어서 재생할 수 있다. 따라서, 마치 동일한 공간 내에 함께 있는 것같은 감각을 유저(4b)에 대해 부여할 수 있다.
-새로운 유저에 대한 권한 부여
또한, 공유 공간에 미참가의 유저(4a)가 당해 공유 공간에 참가하기 위한 조작이 검출된 경우에는, 공유 공간 합성부(152)는, 당해 베이스 공간 내의 오브젝트의 액세스 권한을 당해 유저(4a)에 부여하거나, 또한, 상술한 재생용 정보를 당해 유저(4a)에 제공하는 것이 가능하다.
<2-3. 처리의 흐름>
{2-3-1. 처리의 전체적인 흐름}
이상, 제2 실시 형태의 구성에 대해 설명하였다. 다음에, 제2 실시 형태에 따른 처리의 흐름에 대해, 도 30 내지 도 36을 참조하여 설명한다. 도 30은, 제2 실시 형태에 따른 처리의 전체적인 흐름을 나타낸 흐름도이다. 도 30에 도시된 바와 같이, 먼저, 서버(10-2)는, 공유 공간에 참가하는 각 유저의 원래 공간의 각각 입력부(22)로부터 Frame 데이터를 수신한다(S2001). 계속해서, 베이스 공간 레이아웃 정보(160)가 작성 완료인 경우에는(S2003: "예"), 공유 공간 관리부(100-2)는, 후술하는 S2007의 처리를 행한다.
한편, 베이스 공간 레이아웃 정보(160)가 작성되지 않은 경우에는(S2003: "아니오"), 베이스 공간 레이아웃 생성부(158)는, 후술하는 「베이스 공간 레이아웃 생성 처리」를 행한다(S2005).
그 후, 공유 공간 합성부(152)는, 후술하는 「오브젝트 트래킹 보상 처리」를 행한다(S2007). 계속해서, 공유 공간 합성부(152)는, 후술하는 「오브젝트 우선도 계산 처리」를 행한다(S2009). 계속해서, 공유 공간 합성부(152)는, 후술하는 「오브젝트 레이아웃 처리」를 행한다(S2011).
그 후, 배신부(154)는, S2011에서 생성된 공유 공간 Frame 데이터에 기초하여, 실공간(원래 공간)별로, 당해 실공간 내의 출력부(24)에 송신되는 Frame 데이터를 생성한다. 그리고, 서버(10-2)는, 실공간마다, 당해 실공간에 대응하는 Frame 데이터를 당해 실공간의 출력부(24)로 송신한다(S2013).
{2-3-2. 베이스 공간 레이아웃 생성 처리}
다음에, 도 31을 참조하여, S2005에 있어서의 「베이스 공간 레이아웃 생성 처리」의 내용에 대해 상세하게 설명한다. 도 31에 도시된 바와 같이, 먼저, 베이스 공간 레이아웃 생성부(158)는, 처리 대상의 원래 공간의 번호를 나타내는 변수 I에 「1」을 설정한다(S2101). 그리고, 베이스 공간 레이아웃 생성부(158)는, 원래 공간의 총 수를 N으로 설정한다(S2103).
그리고, I가 N 이하인 한(S2105: "예"), 베이스 공간 레이아웃 생성부(158)는, 이하의 S2107 내지 S2111의 처리를 반복한다. 구체적으로는, 베이스 공간 레이아웃 생성부(158)는, 먼저, I번째의 원래 공간을 복사함으로써 I번째의 베이스 공간 후보를 생성한다(S2107). 다음에, 베이스 공간 레이아웃 생성부(158)는, I번째의 베이스 공간 후보에 포함되는 각 오브젝트에 관해서, 베이스 공간 오브젝트 선택 폴리시(1622)에 기초하여 표시 대상인지 여부를 판정하고, 그리고, 표시 대상 외로 판정된 오브젝트를 I번째의 베이스 공간 후보로부터 삭제한다(S2109). 그리고, 베이스 공간 레이아웃 생성부(158)는, I에 「1」을 가산한다(S2111). 그 후, 베이스 공간 레이아웃 생성부(158)는, 다시 S2105의 처리를 행한다.
S2105에서, I가 N보다도 커진 경우에는(S2105: "아니오"), 베이스 공간 레이아웃 생성부(158)는, I에 「1」을 재설정한다(S2113).
그리고, I가 N 이하인 한(S2115: "예"), 베이스 공간 레이아웃 생성부(158)는, 이하의 S2117 내지 S2119의 처리를 반복한다. 구체적으로는, 베이스 공간 레이아웃 생성부(158)는, 먼저, 베이스 공간 선택 폴리시(1620)에 기초하여, I번째의 베이스 공간 후보의 평가값을 계산한다(S2117). 그리고, 베이스 공간 레이아웃 생성부(158)는, I에 「1」을 가산한다(S2119). 그 후, 베이스 공간 레이아웃 생성부(158)는, 다시 S2115의 처리를 반복한다.
S2115에 있어서, I가 N보다도 커진 경우에는(S2115: "아니오"), 베이스 공간 레이아웃 생성부(158)는, S2117에서 산출된 각 베이스 공간 후보의 평가값 중, 평가값이 최대인 베이스 공간 후보를 특정한다. 그리고, 베이스 공간 레이아웃 생성부(158)는, 특정한 베이스 공간 후보를 베이스 공간으로서 결정한다(S2121).
그 후, 베이스 공간 레이아웃 생성부(158)는, 결정된 베이스 공간의 레이아웃을 베이스 공간 레이아웃 정보(160)에 저장한다(S2123).
{2-3-3. 오브젝트 트래킹 보상 처리}
다음에, 도 32를 참조하여, S2007에서의 「오브젝트 트래킹 보상 처리」의 내용을 상세하게 설명한다. 도 32에 도시된 바와 같이, 먼저, 동기부(150)는, 각원래 공간의 입력부(22)로부터 수신된 Frame 데이터를 공유 공간 합성부(152)로 전달한다(S2201).
계속해서, 공유 공간 합성부(152)는, 처리 대상 오브젝트 번호를 나타내는 변수 I에 「1」을 설정한다(S2203). 그리고, 공유 공간 합성부(152)는, S2201에서 취득된 모든 Frame 데이터에 포함되는 오브젝트의 총 수를 N으로 설정한다(S2205).
그리고, I가 N 이하인 한(S2207: "예"), 공유 공간 합성부(152)는, 이하의S2209 내지 S2219의 처리를 반복한다. 또한, I가 N보다도 커진 경우에는(S2207: "아니오"), 당해 「오브젝트 트래킹 보상 처리」는 종료한다.
구체적으로는, 먼저, 공유 공간 합성부(152)는, 전의 프레임 정보를 오브젝트 관리 정보 DB(164)로부터 추출한다(S2209). 그리고, 공유 공간 합성부(152)는, I번째 오브젝트와 오브젝트 ID의 동일한 정보가, S2209에서 추출된 정보 중에 존재하는지 여부를 판정한다(S2211).
오브젝트 ID가 일치하는 정보가 존재하는 경우에는(S2211: "예"), 먼저, 공유 공간 합성부(152)는, I번째 오브젝트 메타 정보에 포함되는 각 항목에 대해, 값이 미정의(블랭크)인 항목이 있는지 여부를 판정한다. 그리고, 값이 미정의인 항목이 존재하는 경우에는, 공유 공간 합성부(152)는, S2209에서 추출된 정보에 포함되는 해당 항목값을 추출하고, 그리고, 추출된 값을, 당해 메타 정보에 있어서의 해당 항목으로 설정한다(S2213). 그리고, 공유 공간 합성부(152)는, 후술하는 S2219의 처리를 행한다.
한편, S2211에서, 오브젝트 ID가 일치하는 정보가 존재하지 않는 경우에는(S2211: "아니오"), 다음에, 공유 공간 합성부(152)는, I번째 오브젝트와 영역이 겹치는 오브젝트가, S2209에서 추출된, 전의 프레임에 존재하는지 여부를 판정한다(S2215). 영역이 겹치는 오브젝트가 전의 프레임에 존재하지 않는 경우에는(S2215: "아니오"), 공유 공간 합성부(152)는, 후술하는 S2219의 처리를 행한다.
한편, 영역이 겹치는 오브젝트가 전의 프레임에 존재하는 경우에는(S2215: "예"), 공유 공간 합성부(152)는, I번째 오브젝트 선행 오브젝트 ID 리스트에, 당해 영역이 겹치는 오브젝트의 오브젝트 ID를 추가한다(S2217).
그리고, 공유 공간 합성부(152)는, I에 「1」을 가산한다(S2219). 그 후, 공유 공간 합성부(152)는, 다시 S2207의 처리를 행한다.
{2-3-4. 오브젝트 우선도 계산 처리}
다음에, 도 33을 참조하여, S2009에서의 「오브젝트 우선도 계산 처리」의 내용을 상세하게 설명한다. 도 33에 도시된 바와 같이, 먼저, 공유 공간 합성부(152)는, 처리 대상 오브젝트 번호를 나타내는 변수 I에 「1」을 설정한다(S2301). 그리고, 공유 공간 합성부(152)는, 각 원래 공간의 입력부(22)로부터 수신된 Frame 데이터에 포함되는 오브젝트의 총 수를 N으로 설정한다(S2303).
그리고, I가 N 이하인 한(S2305: "예"), 공유 공간 합성부(152)는, 이하의S2307 내지 S2317의 처리를 행한다. 또한, I가 N보다도 커진 경우에는(S2305: "아니오"), 당해 「오브젝트 우선도 계산 처리」는 종료된다.
구체적으로는, 먼저, 우선도 산출부(400)는, 각 원래 공간으로부터 취득된 Frame 데이터로부터 I번째 오브젝트를 추출한다. 그리고, 우선도 산출부(400)는, 오브젝트 우선 폴리시(1624)에 기초하여, I번째 오브젝트 속성에 관한 우선도(이하, I번째 오브젝트의 우선도 A라 칭하는 경우가 있음)를 계산한다(S2307).
계속해서, 우선도 산출부(400)는, 오브젝트 우선 폴리시(1624)에 기초하여, 다른 오브젝트와의 관계성에 관한 I번째 오브젝트의 우선도(이하, I번째 오브젝트의 우선도 B라 칭하는 경우가 있음)를 계산한다(S2309).
계속해서, 우선도 산출부(400)는, 오브젝트 우선 폴리시(1624)와, 오브젝트 관리 정보 DB(164)에 기초하여, 공유 공간 상에서의 컨텍스트에 관한 I번째 오브젝트의 우선도(이하, I번째 오브젝트의 우선도 C와 칭하는 경우가 있음)를 계산한다(S2311).
계속해서, 우선도 산출부(400)는, I번째 오브젝트 선행 오브젝트 ID 리스트와, 오브젝트 관리 정보 DB(164)에 기초하여, I번째 오브젝트 표시 상황에 관한 우선도(이하, I번째 오브젝트의 우선도 D라 칭하는 경우가 있음)를 계산한다(S2313). 예를 들어, I번째 오브젝트가 전의 프레임에서 표시되어 있으면, 우선도 산출부(400)는, I번째 오브젝트의 우선도 D를 (「0」보다도 큰) 소정의 값으로 산출한다. 또한, I번째 오브젝트가 전의 프레임에서 표시되어 있지 않으면, 우선도 산출부(400)는, I번째 오브젝트의 우선도 D를 「0」으로 산출한다.
계속해서, 우선도 산출부(400)는, S2307 내지 S2313으로 계산된, I번째 오브젝트의 우선도 A, 우선도 B, 우선도 C, 및 우선도 D에 기초하여, I번째 오브젝트의 최종적인 우선도를 계산한다(S2315).
계속해서, 우선도 산출부(400)는, I에 「1」을 가산한다(S2317). 그 후, 우선도 산출부(400)는, 다시 S2305의 처리를 행한다.
{2-3-5. 오브젝트 레이아웃 처리}
다음에, 도 34 내지 도 36을 참조하여, S2011에 있어서의 「오브젝트 레이아웃 처리」의 내용을 상세하게 설명한다. 도 34에 도시된 바와 같이, 먼저, 공유 공간 합성부(152)는, 빈 공유 공간 Frame 데이터를 생성한다(S2401).
계속해서, 공유 공간 합성부(152)는, 베이스 공간 레이아웃 정보(160)에 저장되어 있는 모든 오브젝트를, 생성된 공유 공간 Frame 데이터에 복사한다(S2403).
계속해서, 공유 공간 합성부(152)는, 베이스 공간 이외의 모든 원래 공간의 각각으로부터 취득된 Frame 데이터에 포함되는 오브젝트에 관해서, S2009에서 산출된 우선도가 높은 오브젝트의 순을 나타내는 리스트를 생성한다(S2405).
계속해서, 공유 공간 합성부(152)는, 처리 대상 오브젝트 번호를 나타내는 변수 I에 「1」을 설정한다(S2407).
계속해서, 공유 공간 합성부(152)는, S2405에서 생성된 리스트로부터, 우선도가 I번째로 높은 오브젝트를 추출한다(S2409). 그리고, 공유 공간 합성부(152)는, 추출한 오브젝트에 관해서, 공유 공간 상의 배치 위치의 후보를 복수 생성한다(S2411). 그리고, 공유 공간 합성부(152)는, 생성된 각 후보에 관해서, 예를 들어 도 35에 도시된 바와 같은 오브젝트 레이아웃 평가 그래프 상에 노드를 추가한다(S2413). 예를 들어, 도 35에서는, I가 「1」인 경우(「오브젝트 1」)에서는, 「오브젝트 1」이 배치 가능한 위치의 후보가 3개(Pos1, Pos2, 및 Pos3) 생성된 예를 나타내고 있다. 이 경우, 도 35에 도시된 바와 같이, 공유 공간 합성부(152)는, 세 후보의 각각에 대응하는 노드를 오브젝트 레이아웃 평가 그래프 상에 추가한다.
계속해서, 공유 공간 합성부(152)는, 생성된 각 후보에 관해서, 오브젝트 레이아웃 평가 폴리시(1626)에 기초하여 당해 후보의 오브젝트 레이아웃 평가값을 계산하고, 그리고, 계산된 오브젝트 레이아웃 평가값을, 당해 후보에 대응하는 노드에 기록한다(S2415).
계속해서, 공유 공간 합성부(152)는, 오브젝트 레이아웃 평가값이 높은 후보의 순으로, 노드를 배열한다(S2417). 예를 들어, 도 35에 도시된 예에서는, 공유 공간 합성부(152)는, 「오브젝트 1」에 관한 세 후보에 관해서, 오브젝트 레이아웃 평가값이 높은 순(즉 Pos1, Pos2, Pos3의 순)으로, 각 후보에 대응하는 노드를 배열한다.
계속해서, 공유 공간 합성부(152)는, I에 「1」을 가산한다(S2419). 그리고, 공유 공간 합성부(152)는, 레이아웃 종료 판정 폴리시(1628)에 기초하여, 레이아웃 처리를 종료할 것인지 여부를 판정한다(S2421). 레이아웃 처리를 종료하지 않을 것으로 판정한 경우에는(S2421: "아니오"), 공유 공간 합성부(152)는, 다시 S2409 이후의 처리를 행한다.
한편, 레이아웃 처리를 종료할 것으로 판정한 경우에는(S2421: "예"), 공유 공간 합성부(152)는, 먼저, 최후의 노드에 관해서, 오브젝트 레이아웃 평가 그래프 상에서의 평가값이 최대인 배치 위치를 특정한다. 도 36은, 레이아웃 처리가 종료된 시점의 오브젝트 레이아웃 평가 그래프의 예를 나타낸 설명도이다. 도 36에 도시된 예에서는, 공유 공간 합성부(152)는, 레이아웃 처리가 종료된 시점의 최후의 오브젝트인 「오브젝트 X」에 관해서, 평가값이 최대인 배치 위치가 「Pos 14」임을 특정한다.
그 후, 공유 공간 합성부(152)는, 예를 들어 도 36에서 파선 화살표로 나타낸 바와 같이, 최후의 노드로부터 루트 노드로 거스르면서, 레이아웃 대상으로 된 각 오브젝트의 배치 위치를 순차 특정한다. 그리고, 공유 공간 합성부(152)는, 특정한 각 오브젝트의 정보(배치 위치 등)를 공유 공간 Frame 데이터 및 오브젝트 관리 정보 DB(164)에 순차 기록한다(S2423).
<2-4. 효과>
이상 설명한 바와 같이, 제2 실시 형태에 의하면, 서버(10-2)는, 레이아웃 폴리시 정보 DB(162)에 기초하여 베이스 공간을 결정하고, 그리고, 베이스 공간 내에 위치하는 오브젝트를 우선하면서, 베이스 공간 내의 오브젝트와 다른 원래 공간 내의 오브젝트를 공유 공간 상에 배치한다. 예를 들어, 공간(2a) 내의 유저(4a)가 AR 디바이스를 장착하고 있으며, 또한, 공간(2b) 내의 유저(4b)가 VR 디바이스를 장착하고 있는 경우에는, 서버(10-2)는, 공간(2a)을 베이스 공간으로 결정하고, 그리고, 공간(2a) 내의 오브젝트를 (공간(2b) 내의 오브젝트보다도) 우선하여 공유 공간 상에 배치한다. 이에 의해, 유저(4a) 및 유저(4b)의 쌍방에게 만족감 높은 공유 공간을 생성할 수 있다.
<2-5. 응용예 1>
{2-5-1. AR 디바이스 사용 시의 오브젝트의 표시 제어}
이상, 제2 실시 형태에 대해 설명하였다. 다음에, 제2 실시 형태의 응용예 1에 대해 설명한다. 이 응용예 1에 의하면, 표시부(246)가 AR 디바이스인 경우에는, AR 디바이스에 의해 적합한 영상이 표시부(246)에 표시되도록 제어하는 것이 가능하다.
예를 들어, 표시부(246)가 AR 디바이스인 실공간에 관해서는, 입력부(22)의 센서부(220)는, Frame 데이터의 생성 시에, 당해 실공간 내의 모든 오브젝트를 「AR 오브젝트」로 설정하고, 메타 정보 내에 기록한다. 그리고, 서버(10-2)의 공유 공간 합성부(152)는, 「AR 오브젝트」로 설정되어 있는 오브젝트를 (「AR 오브젝트」로서 설정되지 않은 오브젝트보다도) 우선하여 배치한다.
또한, 서버(10-2)는, 「AR 오브젝트」로서 설정되어 있는 오브젝트의 원래 공간에 대해, 당해 오브젝트의 영상을 포함하지 않는 자유 시점의 콘텐츠를 송신하도록 제어해도 된다. 예를 들어, 생성된 공유 공간 Frame 데이터에 포함되는 오브젝트가 「AR 오브젝트」로서 설정되어 있고, 또한, 송신처의 실공간이 당해 오브젝트의 원래 공간인 경우에는, 서버(10-2)는, 당해 오브젝트를 제외하여 스트림을 생성하고, 그리고, 생성된 스트림을 당해 실공간으로 송신한다. 이에 의해, 「AR 오브젝트」로서 설정되어 있는 오브젝트의 영상은, 당해 오브젝트의 원래 공간에 있어서 표시되지 않게 된다.
또는, 출력부(24)가 해당 「AR 오브젝트」를 표시하지 않도록 제어하는 것도 가능하다. 예를 들어, 표시부(246)가 AR 디바이스인 경우에는, 출력부(24)는, 먼저, 서버(10-2)로부터 수신된 스트림 (공유 공간 Frame 데이터)에 포함되는 복수의 오브젝트 중, 「AR 오브젝트」로서 설정되어 있고, 또한, 출력부(24)가 위치하는 실공간 내의 오브젝트를 특정한다. 그리고, 출력부(24)는, 특정한 오브젝트를 표시부(246)에 표시시키지 않도록 제어한다.
{2-5-2. 차폐 표현·덮어쓰기 표현}
또한, 표시부(246)가 AR 디바이스인 경우에는, 서버(10)(제어 정보 송신부(122) 등) 또는 당해 표시부(246)를 포함하고 있는 출력부(24)는, 당해 자유 시점의 콘텐츠를 덮어쓰기 표현 또는 차폐 표현을 사용하여 표시부(246)에 표시시키는 것이 가능하다. 여기서, 덮어쓰기 표현은, 원칙으로서 당해 자유 시점의 콘텐츠만이 시인되도록 표시부(246)에 표시시키는 표시 방법이다. 즉, 덮어쓰기 표현이 사용되는 경우에는, 유저가 위치하는 실공간 내의 실제 오브젝트가 표시 대상으로서 선택되지 않는 한, 당해 실제 오브젝트는, 원칙으로서 당해 유저에게 시인되지 않는다. 또한, 차폐 표현은, 실공간 내의 유저의 위치, 당해 실공간 내의 실제 오브젝트의 위치 및 당해 자유 시점의 콘텐츠 내의 가상 오브젝트의 위치 관계성에 기초하여, 당해 자유 시점의 콘텐츠 내의 일부의 가상 오브젝트가 당해 실공간 내의 실제 오브젝트에 의해 차폐되도록 당해 자유 시점의 콘텐츠를 표시부(246)에 표시시키는 표시 방법이다.
(2-5-2-1. 덮어쓰기 표현)
여기서, 도 37 내지 도 38b를 참조하여, 「덮어쓰기 표현」 및 「차폐 표현」의 내용에 대해 보다 상세하게 설명한다. 도 37은, 실공간(2) 내의 유저(4)와, 실공간(2) 내의 복수의 실제 오브젝트(330)와, (유저(4)가 시청하고 있는) 자유 시점의 콘텐츠 내의 복수의 가상 오브젝트(340)의 위치 관계의 예를 나타낸 설명도이다. 예를 들어, 도 37에 도시된 상황에 있어서, 자유 시점의 콘텐츠가 덮어쓰기 표현을 사용하여 표시되는 경우에는, 유저(4)는, 도 38a에 도시된 바와 같은 경관을 표시부(246)를 통하여 시인한다. 여기서, 파선으로 나타낸 바와 같이, 실공간(2) 내의 실제 오브젝트(330a) 및 실제 오브젝트(330b)는, 마치 자유 시점의 콘텐츠에 의해 덮어쓰게 되는 영상이 표시부(246)에 표시될 수 있다. 이 때문에, 실제 오브젝트(330a) 및 실제 오브젝트(330b)는 유저(4)에게 시인되지 않는다. 따라서, 유저(4)는, 마치 공유 공간 내에 위치하고 있는 것 같은 감각을 강하게 느낄 수 있다.
(2-5-2-2. 차폐 표현)
한편, 예를 들어 도 37에 도시된 상황에 있어서, 자유 시점의 콘텐츠가 차폐 표현을 사용하여 표시되는 경우에는, 유저(4)는, 도 38b에 도시된 바와 같은 경관을 표시부(246)를 통하여 시인한다. 도 38b에 도시된 바와 같이, 도 37에 나타낸 복수의 실제 오브젝트(330) 및 복수의 가상 오브젝트(340) 중, 예를 들어 유저(4)의 시점 위치 및 시선 방향의 검출 결과에 기초하여, 보다 전방측에 위치하는 오브젝트가, 표시부(246)를 통하여 유저(4)에게 시인될 수 있다. 이에 의해, 예를 들어 유저(4)는, 자유 시점의 콘텐츠를 시청하면서, 주위의 실제 오브젝트를 확인할 수 있다. 이 때문에, 유저(4)가 주위의 실제 오브젝트에 잘못하여 충돌할 위험성이 감소된다.
(2-5-2-3. 덮어쓰기 표현과 차폐 표현의 병용)
또는 서버(10)(제어 정보 송신부(122) 등) 또는 당해 표시부(246)를 포함하고 있는 출력부(24)는, 덮어쓰기 표현과 차폐 표현을 병용하여, 당해 자유 시점의 콘텐츠를 표시부(246)에 표시시키는 것도 가능하다.
여기서, 도 39 내지 도 41을 참조하여, 상기 기능에 대해 보다 상세하게 설명한다. 또한, 여기에서는, 도 39에 도시된 실공간(2b)이 베이스 공간으로 설정되고, 그리고, 실공간(2a) 내의 복수의 실제 오브젝트(330) 및 실공간(2b) 내의 복수의 실제 오브젝트(332)에 기초하여, 공유 공간 및 자유 시점의 콘텐츠가 생성되는 것을 전제로 한다. 또한, 실공간(2a) 내의 표시부(246a)는 AR 디바이스인 것을 전제로 한다.
이 경우, 도 40에 도시된 바와 같이, 서버(10) 또는 실공간(2a) 내의 출력부(24a)는, 실공간(2) 내의 유저(4a)의 위치에서 소정의 범위(도 40에 도시된 예에서는 거리 "d") 내에서는 차폐 표현을 사용하고, 또한, 유저(4a)의 위치로부터 소정의 범위 외에서는 덮어쓰기 표현을 사용함으로써, 당해 자유 시점의 콘텐츠를 표시부(246a)에 표시시켜도 된다. 또한, 도 40에서는, 자유 시점의 콘텐츠 내의 각 가상 오브젝트(342)를 해치로 나타내며, 또한, 실공간(2a) 내의 실제 오브젝트를 해치 표시를 하지 않고 도시되어 있다. 도 40에 도시된 바와 같이, 유저(4a)의 위치에서 소정의 범위 내에 위치하는 실제 오브젝트(330d)는, 예를 들어 당해 소정의 범위 내의 부분만(당해 자유 시점의 콘텐츠 내의 가상 오브젝트(342d)에 의해 덮어쓰지 않고) 유저(4a)에게 시인될 수 있다. 이에 의해, 공유 공간 내에 위치하고 있는 것 같은 체험을 유저(4a)에 대해 제공하면서, 또한, 유저(4a)의 안전성을 확보할 수 있다. 여기서, 당해 소정의 범위는, 자동적으로 설정되어도 되고 또는 예를 들어 표시부(246)에 표시되는 UI에 대한 조작 등에 의해, 유저에 의해 지정되어도 된다.
또한, 이 경우, 서버(10)(제어 정보 송신부(122) 등) 또는 실공간(2b) 내의 출력부(24b)는, 예를 들어 도 41에 도시된 바와 같이, 해당 실공간(2a)에 있어서, 차폐 표현의 대상으로 된 실제 오브젝트를 나타내는 표시를 당해 자유 시점의 콘텐츠에 중첩하여 표시시켜도 된다. 예를 들어, 서버(10) 또는 실공간(2b) 내의 출력부(24b)는, 도 41에 도시된 바와 같이, 차폐 표현의 대상으로 된 실제 오브젝트(330d)에 대응하는 가상 오브젝트(340d)를 당해 자유 시점의 콘텐츠에 중첩하여 표시시켜도 된다. 이 표시예에 의하면, 유저(4b)는, 상대 유저(4a)가 실제로 시인하고 있는 영상을 알(공유할) 수 있다. 그 결과, 예를 들어 유저(4a)와 유저(4b)가 회화를 하는 경우에, 가령 유저(4a)가 실제 오브젝트(330d)를 화제로 했다고 해도, 이야기를 이해하지 못하게 되는 것을 방지할 수 있다.
{2-5-3. 휘도의 조정}
또한, 변형예로서, 표시부(246)가 AR 디바이스인 경우에는, 당해 표시부(246)를 포함하고 있는 출력부(24)는, 출력부(24)가 위치하는 실공간(여기서는, 실공간(2a)이라고 칭함)에 있어서의 센서부(220)에 의한 센싱 결과에 기초하여 특정된 실공간(2a)의 휘도에 기초하여, 수신된 스트림(즉, 자유 시점의 콘텐츠) 내의 각 오브젝트의 표시 휘도를 조정하는 것도 가능하다. 예를 들어, 특정된 실공간(2a)의 휘도가 높을수록, 출력부(24)는, 수신된 자유 시점의 콘텐츠 내의 각 오브젝트의 표시 휘도를 보다 높게 한다. 이에 의해, 실공간(2a) 내의 실제 오브젝트와, 자유 시점의 콘텐츠 내의 각 오브젝트의 시인성을 대략 일치시키고 표시시킬 수 있다.
또한, 자유 시점의 콘텐츠 내의 각 오브젝트가 실공간(2a)에 있어서 표시되는 위치에 있어서의(실공간(2a)의) 휘도가, 예를 들어 센서부(220)에 의해 촬영된 화상에 대한 화상 인식 등에 의해 특정되는 경우에는, 출력부(24)는, 특정된 각 위치의 휘도와 정합하도록, 당해 자유 시점의 콘텐츠 내의 각 오브젝트의 표시 휘도를 조정해도 된다. 이에 의해, 예를 들어 당해 자유 시점의 콘텐츠 내의, 어떤 오브젝트가 실공간(2a) 내의 그림자에 배치되는 경우에는, 당해 오브젝트의 표시 휘도는 상대적으로 낮게 설정될 수 있다. 따라서, 실공간(2a)에 있어서 자유 시점의 콘텐츠가 표시될 때의 시인성(통일감)을 양호하게 조정할 수 있다.
<2-6. 응용예 2>
다음에, 제2 실시 형태의 응용예 2에 대해 설명한다. 이 응용예 2에 의하면, 서버(10-2)는, 예를 들어 유저별로 미리 설정되어 있는 정보에 기초하여 베이스 공간을 결정할 수 있다.
도 42는, 응용예 2에 의한 공유 공간 관리용 DB(110)의 구성예를 도시한 도면이다. 도 42에 도시된 바와 같이, 응용예 2에 의한 공유 공간 관리용 DB(110)는, 설정 정보 DB(112)를 추가로 포함한다.
{2-6-1. 설정 정보 DB(112)}
설정 정보 DB(112)는, 예를 들어 유저에 의한 자유 시점의 콘텐츠 이용 개시 시나 이용 종료 시에 있어서의, 당해 자유 시점의 콘텐츠에 대응하는 공유 공간의 생성이나 변경에 관한 설정 정보를 저장하는 데이터베이스이다. 도 43은, 설정 정보 DB(112)의 구성예를 도시한 도면이다. 도 43에 도시된 바와 같이, 설정 정보 DB(112)는, 예를 들어 베이스 공간 선택 설정 테이블(114), 및 참가 시 베이스 공간 전환 설정 테이블(116)을 포함한다. 또한, 각 테이블의 구체적인 내용에 대해서는 후술한다.
또한, 설정 정보 DB(112)의 등록 내용은, 각 실공간(2) 내의 유저에 의해 클라이언트(20)를 통하여 참조되거나, 변경될 수 있다. 예를 들어, 각 실공간(2) 내의 출력부(24)가 설정 화면을 표시하고 있을 때에, 소정의 입력 방법(예를 들어, 소정의 입력 장치에 대한 조작, 제스처, 시선 조작 또는 발화 등)에 의해, 각 실공간(2) 내의 유저가 설정 정보 DB(112)의 등록 내용을 참조하거나, 변경할 수도 있다. 또는 유저가 공유 공간에 참가하고 있는 경우에, 당해 유저의 공유 공간 상에서의 제스처나 음성이 인식됨으로써, 당해 유저는 설정 정보 DB(112)의 등록 내용을 참조하거나, 변경할 수도 있다. 또한, 각 유저는, 설정 정보 DB(112)에 있어서, 당해 유저 또는 당해 유저의 원래 공간에 관련지어져 있는 설정값만을 변경할 수도 있다.
{2-6-2. 공유 공간 합성부(152)}
(2-6-2-1. 베이스 공간의 결정예: 공간 공유의 개시 시)
응용예 2에 의한 공유 공간 합성부(152)는, 예를 들어 공간 공유의 개시 시에 있어서, 설정 정보 DB(112)의 등록 내용에 기초하여 베이스 공간을 결정한다.
-공간 공유의 개시 시의 설정 정보: 유저의 선택
예를 들어, 어떤 유저(4a)가 상대 유저(4b)를 선택하고, 또한, 공간 공유를 개시하기 위한 조작을 행한 것이 검출되었을 때는, 공유 공간 합성부(152)는, 설정 정보 DB(112) 내의 베이스 공간 선택 설정 테이블(114)의 등록 내용에 기초하여 베이스 공간을 결정한다.
일례로서, 공유 공간 합성부(152)는, 베이스 공간 선택 설정 테이블(114)에 있어서, 유저(4a)에 관련지어져 있는 설정값과, 유저(4b)에 관련지어져 있는 설정값의 비교에 기초하여 베이스 공간을 결정한다. 예를 들어, 베이스 공간 선택 설정 테이블(114)에 있어서, 유저(4a)에 관련지어져 있는, 희망하는 베이스 공간의 후보와, 유저(4b)에 관련지어져 있는, 희망하는 베이스 공간의 후보가 적어도 하나 이상 일치하는 경우에는, 공유 공간 합성부(152)는, 일치한 베이스 공간의 후보를 베이스 공간으로서 결정하며, 또한, 자유 시점의 콘텐츠를 생성할 것을 결정한다.
더욱 상세하게는, 일치하는 베이스 공간의 후보가 하나만 존재하는 경우에는, 공유 공간 합성부(152)는, 당해 베이스 공간의 후보를 베이스 공간으로서 결정한다. 또한, 일치하는 베이스 공간의 후보가 복수 존재하는 경우에는, 공유 공간 합성부(152)는, 당해 복수의 베이스 공간의 후보를 유저(4a) 및 유저(4b) 중의 어느 유저에 제시하고, 그리고, 해당 유저에 의해 선택된 베이스 공간의 후보를 베이스 공간으로서 결정한다. 여기서, 제시 대상 유저는, 예를 들어 공간 공유의 개시 조작을 행한 유저(4)여도 되고 또는 미리 정해져 있는 우선 순위가 보다 높은 유저여도 된다. 또는 공유 공간 합성부(152)는, 두 명의 유저(4)(유저(4a) 및 유저(4b))에 대해 당해 복수의 베이스 공간의 후보를 제시하고, 그리고, 당해 두 명의 유저(4)가 합의한 베이스 공간의 후보를 베이스 공간으로서 결정해도 된다.
또한, 베이스 공간 선택 설정 테이블(114)에 있어서, 유저(4a)에 관련지어져 있는, 희망하는 베이스 공간의 후보와, 유저(4b)에 관련지어져 있는, 희망하는 베이스 공간의 후보가 일치하지 않는 경우에는, 공유 공간 합성부(152)는, 자유 시점의 콘텐츠를 생성하지 않을 것을 결정하고, 또한, 베이스 공간을 결정하지 않는다. 또한, 이 때, 공유 공간 합성부(152)는, 유저(4a)가 위치하는 실공간(2a) 내의 출력부(24a) 및 유저(4b)가 위치하는 실공간(2b) 내의 출력부(24b)에, 에러를 나타내는 정보를 출력시켜도 된다.
-공간 공유의 개시 시의 설정 정보: 실공간의 선택
또는 어떤 유저(4)가 실공간을 선택하고, 또한, 공간 공유를 개시하기 위한 조작을 행한 것이 검출되었을 때도, 공유 공간 합성부(152)는, 설정 정보 DB(112) 내의 베이스 공간 선택 설정 테이블(114)의 등록 내용에 기초하여 베이스 공간을 결정하는 것이 가능하다.
예를 들어, 공유 공간 합성부(152)는, 후술하는 베이스 공간 선택 설정 테이블(114)에 있어서, 당해 유저(4a)에 관련지어져 있는 설정값과, 당해 선택된 실공간 내에 위치하는 유저(4b) 또는 당해 실공간에 관련지어져 있는 설정값의 비교에 기초하여 베이스 공간을 결정한다. 예를 들어, 베이스 공간 선택 설정 테이블(114)에 있어서, 유저(4a)에 관련지어져 있는 설정값이 「다른 유저의 실공간을 베이스 공간으로서 이용한다」이며, 또한, 당해 선택된 실공간 내에 위치하는 유저(4b)에 관련지어져 있는 설정값이 「어느 쪽이어도 된다」인 경우에는, 공유 공간 합성부(152)는, 당해 선택된 실공간을 베이스 공간으로서 결정하며, 또한, 자유 시점의 콘텐츠를 생성할 것을 결정한다.
--베이스 공간 선택 설정 테이블(114)
베이스 공간 선택 설정 테이블(114)은, 베이스 공간의 선택에 관한 설정 정보가 저장되는 테이블이다. 예를 들어, 베이스 공간 선택 설정 테이블(114)에서는, 유저 ID와 설정값이 관련지어져 있어도 되고 또는 실공간과 설정값이 관련지어져 있어도 된다. 또한, 후자의 경우, 실공간 내에 위치하는 유저가 누구라도, 또한, 당해 실공간 내에 유저가 없는 경우라도, 베이스 공간의 선택에 관하여 동일한 설정값이 적용된다. 또는 베이스 공간 선택 설정 테이블(114)에서는, 유저 ID, 실공간, 및 설정값이 관련지어져 있어도 된다.
여기서, 당해 설정값에는, 예를 들어 「자신의 실공간을 베이스 공간으로서 이용한다」, 「다른 유저의 실공간을 베이스 공간으로서 이용한다」, 및 「어느 쪽이어도 된다」 등이 등록될 수 있다. 예를 들어, 베이스 공간 선택 설정 테이블(114)에 있어서 유저(4a)에 관련지어져 있는 설정값이 「자신의 실공간을 베이스 공간으로서 이용한다」이며, 또한, 유저(4b)에 관련지어져 있는 설정값이 「어느 쪽이어도 된다」인 경우에는, 공유 공간 합성부(152)는, (유저(4a)가 위치하는)실공간(2a)을 베이스 공간으로서 결정한다.
또는 당해 설정값에는, 예를 들어 「실공간 A」, 「실공간 B」 및 「실공간 C」등, 실공간의 식별 정보가 등록될 수 있다. 이 경우, 베이스 공간 선택 설정 테이블(114)에 있어서, 유저(4a)에 관련지어져 있는 설정값이 「실공간 A, 실공간 C, 실공간 D」이며, 또한, 유저(4b)에 관련지어져 있는 설정값이 「실공간 B, 실공간 C」인 경우에는, 양자간에서 「실공간 C」만이 일치한다. 그래서, 공유 공간 합성부(152)는, 「실공간 C」를 베이스 공간으로서 결정한다.
-초대용 UI
또한, 변형예로서, 실공간(2a) 내에 위치하는 유저(4a)가, 다른 실공간(2b) 내에 위치하는 유저(4b)에 대해 초대 메시지를 발행하고, 그리고, 공유 공간 합성부(152)는, 당해 초대 메시지에 대한 유저(4b)의 회답에 기초하여, 베이스 공간을 결정하는 것도 가능하다.
예를 들어, 도 44에 도시된 바와 같이, 실공간(2a) 내의 유저(4a)는, 먼저, 실공간(2a)을 베이스 공간으로서 설정하여 공간 공유를 함께 행할 것을 촉구하는 초대 메시지를, 실공간(2b) 내의 유저(4b)에 대해 발행했다고 하자. 이 경우, 유저(4b)가 열람하는 표시부(246)에는, 예를 들어 도 44에 도시된 바와 같은 초대용 UI(350)가 표시될 수 있다. 그리고, 초대용 UI(350)에 대해, 승낙하는 취지의 회답(도 44에 나타낸 예에서는 "예")을 유저(4b)가 입력한 경우에는, 서버(10)(공유 공간 합성부(152))는, 실공간(2a)을 베이스 공간으로서 결정한다.
또한, 다른 실공간(2b) 내에 복수의 유저가 존재하는 경우에는, 실공간(2a) 내의 유저는, 다른 실공간(2b) 내의 모든 유저에 대해 동일한 초대 메시지를 발행하는 것도 가능하다. 이에 의해, 당해 다른 실공간(2b) 내에 위치하는 유저별로, 표시되는 영상의 종류가 상이한 것을 방지할 수 있다.
또한, 상기 설명에서는, 베이스 공간이 결정되기 전에, 유저(4a)가 초대 메시지를 상대 유저(4b)에 대해 발행하는 예를 설명했지만, 이러한 예에 한정되지 않는다. 예를 들어, 베이스 공간이 결정된 후(또는 공유 공간이 생성된 후)에, 유저(4a)는, 당해 베이스 공간에 대응하는 공유 공간에 참가하는 것을 촉진시키는 초대 메시지를 상대 유저(4b)에 대해 발행해도 된다. 이 경우, 상대 유저(4b)가 당해 초대 메시지에 대해 승낙하는 취지의 회답을 한 경우에는, 서버(10)는, 당해 상대 유저(4b)가 당해 공유 공간에 참가하는 것을 허가하는 것이 가능하다.
--집합 상태의 관리
또한, 서버(10)는, 복수의 실공간의 각각에 관하여 공유 공간으로의 참가 상황을 관리할 수 있다. 예를 들어, 서버(10)는, 실공간마다의, 당해 실공간 내의 유저의 베이스 공간으로의 집합 상태를 관리한다. 도 45는, 실공간마다의, 당해 실공간 내의 유저의, 베이스 공간으로의 집합 상태를 관리하기 위한 테이블(360)의 구성예를 나타낸 설명도이다. 도 45에 도시된 바와 같이, 테이블(360)에서는, 실공간(370)과, 집합 에어리어(372)가 관련지어질 수 있다. 또한, 집합 에어리어(372)는, 상태(374) 및 에어리어(376)를 포함한다. 여기서, 상태(374)에는, 해당 실공간 내의 유저가 베이스 공간에 집합한 상태인지 여부(「집합 있음」 또는 「집합 없음」)가 기록될 수 있다. 또한, 에어리어(376)에는, 해당 실공간이 「집합 있음」인 경우에는 「집합한 공간」의 식별 정보 (즉, 베이스 공간의(원래 공간의) 식별 정보)가 기록될 수 있다. 또한, 해당 실공간이 「집합 없음」인 경우에는, 에어리어(376)에는, 블랭크(공백)가 설정될 수 있다.
예를 들어, 도 45에 도시된 예에서는, 「실공간 B」가 베이스 공간으로서 설정되어 있고, 그리고, 「실공간 A」 및 「실공간 D」내의 각 유저가 당해 베이스 공간에 집합한 것을 나타내고 있다. 또한, 「실공간 C」내의 각 유저는, 당해 베이스 공간에 집합하지 않은(즉, 당해 베이스 공간에 대응하는 공유 공간에 참가하지 않은) 것을 나타내고 있다. 또한, 도 45에 도시된 바와 같이, 당해 베이스 공간의 원래 공간인 「실공간 B」에서는, 「집합 없음」이 상태(374)로 설정될 수 있다.
(2-6-2-2. 베이스 공간의 결정예: 공유 공간으로의 유저의 추가 참가 시)
또한, 응용예 2에 의한 공유 공간 합성부(152)는, 생성 완료된 공유 공간에 대한 새로운 유저의 참가 시에 있어서, 설정 정보 DB(112)의 등록 내용에 기초하여 베이스 공간을 결정하는 것도 가능하다. 예를 들어, 자유 시점의 콘텐츠 생성 후이며, 또한, 당해 자유 시점의 콘텐츠에 대응하는 공유 공간에 새로운 유저(4a)가 참가하기 위한 조작이 검출된 경우에는, 공유 공간 합성부(152)는, 당해 공유 공간에 대응하는 베이스 공간을 변경할 것인지 여부를 소정의 조건에 기초하여 결정한다.
여기서, 당해 공유 공간에 새로운 유저(4a)가 참가하기 위한 조작은, 예를 들어 당해 새로운 유저(4a)가 열람하는 표시부(246)에 표시되는 공유 공간 리스트 내에서 예를 들어 소정의 입력 장치에 대한 조작, 제스처, 시선 조작 또는 발화 등에 의해, 참가를 희망하는 공유 공간을 당해 새로운 유저(4a)가 선택하는 것이어도 된다. 또는 당해 조작은, 당해 새로운 유저(4a)가, 원하는 공유 공간 (또는 당해 공유 공간에 대응하는 베이스 공간)의 이름을 직접 발화하는 것이어도 된다. 또한, 새로운 유저(4a)가 열람하는 표시부(246)에는, 당해 공유 공간에 대응하는 베이스 공간의 식별 정보나, 당해 공유 공간에 현재 참가 중인 유저의 식별 정보 등이, 당해 공유 공간에 참가하기 전에 표시되어도 된다.
-결정예 1
이하, 공유 공간 합성부(152)에 의한, 베이스 공간의 변경 결정예에 대해 보다 상세하게 설명한다. 예를 들어, 공유 공간 합성부(152)는, 베이스 공간 선택 설정 테이블(114)에 있어서 당해 새로운 유저(4a)에 관련지어져 있는 설정값에 기초하여, 현재의 베이스 공간을 변경할 것인지 여부를 결정한다. 예를 들어, 베이스 공간 선택 설정 테이블(114)에 있어서 당해 새로운 유저(4a)에 관련지어져 있는 설정값이 「다른 유저의 실공간을 베이스 공간으로서 이용한다」 또는 「어느 쪽이어도 된다」인 경우에는, 공유 공간 합성부(152)는, 현재의 베이스 공간을 변경하지 않을 것을 결정한다. 또는 베이스 공간 선택 설정 테이블(114)에 있어서 당해 새로운 유저(4a)에게 관련지어, 희망하는 베이스 공간의 후보가 등록되어 있는 경우이며, 또한, 당해 희망하는 베이스 공간의 후보 중에, 당해 공유 공간에 대응하는 베이스 공간이 존재하는 경우에는, 공유 공간 합성부(152)는, 현재의 베이스 공간을 변경하지 않을 것을 결정한다. 즉, 현재의 베이스 공간이 우선된다. 이에 의해, 베이스 공간이 빈번히 전환되는 것이 방지되므로, 공유 공간에 참가 중인 유저의 활동에 영향이 생기는 것을 억제할 수 있다. 또한, 이 때, 당해 공유 공간에의 당해 새로운 유저(4a)의 참가는 허가될 수 있다.
또한, 베이스 공간 선택 설정 테이블(114)에 있어서 당해 새로운 유저(4a)에게 관련지어져 있는, 희망하는 베이스 공간의 후보 중에, 당해 공유 공간에 대응하는 베이스 공간이 존재하지 않는 경우에는, 공유 공간 합성부(152)는, 당해 공유 공간에 참가 중인 모든 유저(4b)에 대한, 베이스 공간의 전환에 관한 문의에 대한 회답에 기초하여, 현재의 베이스 공간을 변경할 것인지 여부를 결정해도 된다. 예를 들어, 공유 공간 합성부(152)는, 먼저, 베이스 공간 선택 설정 테이블(114)에 있어서 당해 새로운 유저(4a)에 관련지어져 있는, 희망하는 하나 이상의 베이스 공간의 후보를, 당해 공유 공간에 참가 중인 모든 유저(4b)에게 제시한다. 그리고, 당해 하나 이상의 베이스 공간의 후보 중 어느 것으로 베이스 공간을 전환하는 것을 모든 유저(4b)가 합의한 경우에만, 공유 공간 합성부(152)는, 현재의 베이스 공간을, 해당 베이스 공간의 후보로 전환할 것을 결정해도 된다.
-결정예 2
또한, 공유 공간 합성부(152)는, 참가 시 베이스 공간 전환 설정 테이블(116)에 있어서, 당해 공유 공간에 참가 중인 모든 유저(4b)의 각각에 관련지어져 있는 설정값에 기초하여, 현재의 베이스 공간을 변경할 것인지 여부를 결정하는 것도 가능하다. 여기서, 참가 시 베이스 공간 전환 설정 테이블(116)은, 별도의 유저가 공유 공간에 새롭게 참가하려고 할 때의, 베이스 공간의 전환을 허가할지 여부에 관한 설정 정보가 저장되는 테이블이다. 예를 들어, 참가 시 베이스 공간 전환 설정 테이블(116)에서는, 유저 ID와 설정값이 관련지어져 있어도 되고, 실공간과 설정값이 관련지어져 있어도 되고 또는 유저 ID, 실공간 및 설정값이 관련지어져 있어도 된다. 여기서, 당해 설정값에는, 예를 들어 「베이스 공간의 전환을 허가함」 및 「베이스 공간의 전환을 허가하지 않음」 등이 등록될 수 있다.
예를 들어, 참가 시 베이스 공간 전환 설정 테이블(116)에 있어서, 당해 공유 공간에 참가 중인 모든 유저(4b)의 각각에 관련지어져 있는 설정값 중 적어도 하나 이상이 「베이스 공간의 전환을 허가하지 않음」인 경우에는, 공유 공간 합성부(152)는, 현재의 베이스 공간을 변경하지 않을 것을 결정한다. 또한, 참가 시 베이스 공간 전환 설정 테이블(116)에 있어서 당해 공유 공간에 참가 중인 모든 유저(4b)의 각각에 관련지어져 있는 설정값의 모두가 「베이스 공간의 전환을 허가함」인 경우에는, 공유 공간 합성부(152)는, 상술한 바와 같은, 당해 공유 공간에 참가 중인 모든 유저(4b)에 대한, 베이스 공간의 전환에 관한 문의에 대한 회답에 기초하여, 현재의 베이스 공간을 변경할 것인지 여부를 결정해도 된다. 이 결정예 2에 의하면, 다른 유저가 공유 공간에 참가를 희망하는 경우에, 당해 공유 공간에 이미 참가 중인 각 유저가, 베이스 공간의 전환의 시비에 관한 회답을 매회 요구받는 것을 회피하는 것이 가능해진다. 이 때문에, 각 유저의 부담이 경감된다.
-초대용 UI
또한, 변형예로서, 당해 공유 공간에 참가 중인 적어도 한사람의 유저(4a)가, 공유 공간에 미참가의 유저(4b)에 대해 공유 공간으로의 참가를 촉구하는 초대 메시지를 발행하고, 그리고, 당해 초대 메시지에 대해, 당해 미참가의 유저(4b)가 승낙하는 취지를 회답한 경우에는, 서버(10)는, 당해 미참가의 유저(4b)가 당해 공유 공간에 참가하는 것을 가능하게 해도 된다. 또한, 이 경우, 공유 공간 합성부(152)는, 현재의 베이스 공간을 변경하지 않을 것을 결정한다.
(2-6-2-3. 베이스 공간의 전환에 기초하는 콘텐츠의 가공)
또한, 베이스 공간을 전환할 것이 결정된 경우에는, 공유 공간 합성부(152)는, 당해 베이스 공간이 전환되는 것을, 당해 공유 공간에 참가중의 유저가 지각 가능하도록, 당해 자유 시점의 콘텐츠를 가공한다. 예를 들어, 공유 공간 합성부(152)는, 당해 베이스 공간이 전환되는 것을 나타내는, 소정 시간 (예를 들어 10초 등)의 애니메이션을 표시시키도록, 당해 자유 시점의 콘텐츠를 가공한다.
일례로서, 베이스 공간을 전환할 것이 결정된 경우에는, 공유 공간 합성부(152)는, 도 46에 도시된 바와 같이, 먼저, 투과도가 초기값(예를 들어 100% 등)으로 설정된, 변경 후의 베이스 공간을, 변경 전의 베이스 공간에 중첩하여 표시시킨다. 그리고, 공유 공간 합성부(152)는, 소정 시간을 들여, 당해 변경 전의 베이스 공간의 투과도를 0%로부터 100%로 점차 높이고, 또한, 당해 변경 후의 베이스 공간의 투과도를 초기값으로부터 0%로 점차 낮추는 처리를 행한다. 또한, 도 46에서는, 오브젝트(42c)가 당해 변경 전의 베이스 공간 내에 위치하고 있으며, 또한, 오브젝트(42d)가 당해 변경 후의 베이스 공간 내에 위치하고 있는 예를 나타내고 있다.
또한, 도 47에 도시된 바와 같이, 공유 공간 합성부(152)는, 베이스 공간의 변경 전후에 함께 표시되는 오브젝트 모두(예를 들어, 베이스 공간의 변경 후에 공유 공간 내에 남은 유저 등)가 변경 전의 베이스 공간으로부터 변경 후의 베이스 공간으로 날아서 이동하는 듯한 애니메이션을 표시시키도록, 당해 자유 시점의 콘텐츠를 가공해도 된다. 이들 처리예에 의하면, 베이스 공간이 전환되는 경우에, 해당 자유 시점의 콘텐츠 영상이 연속적으로 지각되도록 표시된다. 이 때문에, 공유 공간에 이미 참가 중인 각 유저가 위화감을 품거나, 놀라는 것을 방지할 수 있다.
또한, 공유 공간 합성부(152)는, 베이스 공간의 전환 타이밍에, 소정의 효과음을 출력시키도록, 당해 자유 시점의 콘텐츠를 가공해도 된다.
(2-6-2-4. 기타)
-미참가 중인 유저의 표시
또한, 변형예로서, 공유 공간 합성부(152)는, 예를 들어 소정의 조건이 만족되는 경우에는, 공유 공간에 참가하고 있지 않은 실공간 내의 유저(4)를 나타내는 정보(예를 들어, 당해 실공간 내의 유저(4)의 영상이나 이름 등)를, 자유 시점의 콘텐츠에 포함하도록 당해 자유 시점의 콘텐츠를 가공해도 된다.
예를 들어, 공유 공간 합성부(152)는, 공유 공간에 참가하고 있지 않은 실공간 내의 유저(4)에 대응하는 공유 오브젝트를 공유 공간 내에 배치하고, 또한, 당해 공유 오브젝트의 투과도를 높임으로써, 자유 시점의 콘텐츠를 생성해도 된다. 이에 의해, 공유 공간에 참가 중인 유저는, 자유 시점의 콘텐츠를 시청하면서, 공유 공간에 참가하고 있지 않은 유저(4)를 알 수 있다.
또한, 이 경우, 서버(10)는, 공유 공간에 참가하고 있는 실공간 내의 유저(4)의 영상을, 공유 공간에 참가하고 있지 않은 실공간 내의 출력부(24)에 추가로 표시시켜도 된다. 이에 의해, 공유 공간에 참가하고 있지 않은 실공간 내의 유저는, 현재 공유 공간에 참가하고 있지 않음을 알 수 있거나, 또한, 공유 공간에 참가하고 있는 (실공간 내의)유저를 알 수 있다.
{2-6-3. 처리의 흐름}
이상, 응용예 2에 의한 구성에 대해 설명하였다. 다음에, 응용예 2에 의한 처리의 흐름에 대해, 「2-6-3-1. 공간 공유의 개시 시의 처리의 흐름」 및 「2-6-3-2. 공유 공간으로의 추가 참가 시의 처리의 흐름」에 있어서 설명한다.
(2-6-3-1. 공간 공유의 개시 시의 처리의 흐름)
-(a) 공간 공유의 개시 시의 설정 정보를 사용한 예
먼저, 「공간 공유의 개시 시의 처리의 흐름」에 대해, 2종류의 예(「(a) 공간 공유의 개시 시의 설정 정보를 사용한 예」 및 「(b) 초대용 UI를 사용한 예」)를 설명한다.
먼저, 「(a) 공간 공유의 개시 시의 설정 정보를 사용한 예」에 관한 처리의 흐름에 대해, 도 48 및 도 49를 참조하여 설명한다. 도 48에 도시된 바와 같이, 먼저, 실공간(2a) 내에 위치하는 유저(4a)가, 예를 들어 실공간(2b) 내에 위치하는 유저(4b)를 지정함으로써, 공간 공유를 개시하기 위한 조작을 행한다. 그리고, 실공간(2a) 내의 입력부(22a)는, 당해 조작이 행하여진 것을 검출하고, 그리고, 검출 결과를 서버(10-2)로 송신한다(S2501).
그 후, 당해 검출 결과가 수신되면, 서버(10-2)의 공유 공간 합성부(152)는, 베이스 공간 선택 설정 테이블(114)에 있어서 유저(4a)에 관련지어져 있는 설정값을 베이스 공간 선택 설정 테이블(114)로부터 추출한다(S2503). 또한, 공유 공간 합성부(152)는, 베이스 공간 선택 설정 테이블(114)에 있어서 상대 유저(4b)에게 관련지어져 있는 설정값을 베이스 공간 선택 설정 테이블(114)로부터 추출한다(S2505).
계속해서, 공유 공간 합성부(152)는, S2503에서 추출된 설정값과, S2505에서 추출된 설정값에 기초하여, 선택 가능한 베이스 공간의 후보를 특정하고, 그리고, 특정된 베이스 공간의 후보 리스트를 생성한다(S2507).
S2507에서 베이스 공간의 후보가 완전히 특정되지 않은 경우에는(S2509: "아니오"), 공유 공간 합성부(152)는, 자유 시점의 콘텐츠를 생성하지 않을 것을 결정한다. 그리고, 서버(10-2)는, 에러를 나타내는 정보를 실공간(2a) 내의 출력부(24a)에 출력시킨다(S2511). 또한, 서버(10-2)는, 에러를 나타내는 정보를 실공간(2b) 내의 출력부(24b)에 더 출력시켜도 된다. 그 후, 당해 「공간 공유의 개시 시의 처리」는 종료한다.
한편, 베이스 공간의 후보가 하나만 특정된 경우에는(S2509: "예", S2513: "아니오"), 공유 공간 합성부(152)는, 후술하는 S2521의 처리를 행한다.
한편, 베이스 공간의 후보가 복수 특정된 경우에는(S2509: "예", S2513: "예"), 공유 공간 합성부(152)는, S2507에서 생성된 베이스 공간의 후보 리스트를 예를 들어 유저(4a)에 대해 출력부(24a)에 제시시키고, 그리고, 희망하는 베이스 공간의 후보를 유저(4a)에게 선택시킨다(S2515). 또한, 변형예로서, 공유 공간 합성부(152)는, 유저(4a) 및 유저(4b)에 대해 당해 리스트를 제시시키고, 그리고, 희망하는 베이스 공간의 후보를 당해 두 명의 유저의 각각에게 선택시켜도 된다.
여기서, 도 49를 참조하여, S2515보다도 후의 처리에 대해 설명한다. S2515의 후, 공유 공간 합성부(152)는, S2515에서 선택된 베이스 공간의 후보 또는 S2507에서 특정된 베이스 공간의 후보를 베이스 공간으로서 결정한다(S2521).
계속해서, 공유 공간 합성부(152)는, 실공간(2a) 및 실공간(2b) 중 당해 베이스 공간과는 다른 실공간과, S2521에서 결정된 베이스 공간에 기초하여 공유 공간을 생성한다(S2523). 그리고, 공유 공간 합성부(152)는, 생성된 공유 공간에 기초하여 자유 시점의 콘텐츠를 생성한다(S2525).
계속해서, 공유 공간 합성부(152)는, S2521에서 결정된 베이스 공간 상의 기기의 액세스권을, 당해 베이스 공간과는 다른 실공간 내에 위치하는 유저(4)에 대해 부여한다(S2527).
계속해서, 공유 공간 합성부(152)는, S2521에서 결정된 베이스 공간 상에서 재생될 수 있는 공유 콘텐츠의 액세스권을, 당해 베이스 공간과는 다른 실공간 내에 위치하는 유저(4)에 대해 부여한다(S2529). 그 후, 당해 「공간 공유의 개시 시의 처리」는 종료한다.
-(b) 초대용 UI를 사용한 예
다음에, 「(b)초대용 UI를 사용한 예」에 관한 처리의 흐름에 대해, 도 50을 참조하여 설명한다. 또한, 여기에서는, 실공간(2a) 내에 위치하는 유저(4a)가, 예를 들어 실공간(2b) 내에 위치하는 유저(4b)에 대해, 공간 공유를 함께 행하기 위한 초대용 메시지를 발행하는 예에 대해 설명한다.
도 50에 도시된 바와 같이, 먼저, 실공간(2a) 내의 유저(4a)가, 예를 들어 실공간(2a)을 베이스 공간으로서 설정하여 공간 공유를 함께 개시하는 것을, 실공간(2b) 내의 유저(4b)에 대해 초대하기 위한 입력을 행한 경우에는(S2551: "예"), 서버(10)는, 입력된 초대 메시지를 유저(4b)에 대해 통지한다(S2553).
그 후, 당해 초대 메시지에 대해 유저(4b)가 승낙하지 않은 경우(즉, 유저(4a)와 공간 공유를 행하는 것을 승낙하지 않은 경우)에는 (S2555: "아니오"), 다시 S2551의 처리가 실행된다.
한편, 당해 초대 메시지에 대해 유저(4b)가 승낙한 경우에는(S2555: "예"), 서버(10)의 공유 공간 합성부(152)는, 실공간(2a)을 베이스 공간으로서 결정한다(S2557).
또한, 도 50에 나타낸 S2559 내지 S2561은, 도 49에 나타낸 S2523 내지 S2525와 동일하다. 그 후, 서버(10)의 송신부(132)는, 생성된 자유 시점의 콘텐츠(스트림)를 실공간(2a) 및 실공간(2b)의 각각의 출력부(24)로 송신한다.
그리고, 실공간(2b)에 관련지어져 있는, 차폐 표현의 사용 설정이 「ON」인 경우에는, 서버(10) 또는 실공간(2b) 내의 출력부(24)는, 당해 설정을 「OFF」로 전환한다(S2563).
그 후, 실공간(2a) 및 실공간(2b) 내의 각각의 출력부(24) (의 표시부(246))는, 수신된 자유 시점의 콘텐츠를 각각 표시한다(S2565).
그 후, 서버(10)는, S2551에서 입력된 초대 요구를 처리 완료로서, 폐기한다(S2567). 그리고, 다시 S2551의 처리가 실행된다.
(2-6-3-2. 공유 공간으로의 추가 참가 시의 처리의 흐름)
다음에, 도 51을 참조하여, 「공유 공간으로의 추가 참가 시의 처리의 흐름」에 대해 설명한다. 또한, 여기에서는, 실공간(2c) 내에 위치하고 있으며, 또한, 공유 공간에 미참가인 유저(4c)가, 공유 공간으로의 참가를 희망하는 장면에 있어서의 처리 흐름의 일례에 대해 설명한다.
도 51에 도시된 바와 같이, 먼저, 유저(4c)가, 참가를 희망하는 공유 공간으로 참가하기 위한 조작을 행한다. 그리고, 실공간(2c) 내의 입력부(22c)는, 당해 조작이 행하여진 것을 검출하고, 그리고, 검출 결과를 서버(10-2)로 송신한다(S2601).
그 후, 당해 검출 결과가 수신되면, 서버(10-2)의 공유 공간 합성부(152)는, 베이스 공간 선택 설정 테이블(114)에 있어서, 유저(4c)에 관련지어져 있는 설정값을 베이스 공간 선택 설정 테이블(114)로부터 추출한다(S2603).
계속해서, 공유 공간 합성부(152)는, S2603에서 추출된 설정값이 「자신의 실공간을 베이스 공간으로서 이용한다」인지 여부를 판정한다(S2605). 당해 설정값이 「자신의 실공간을 베이스 공간으로서 이용한다」가 아닌 경우에는(S2605: "아니오"), 공유 공간 합성부(152)는, 해당 공유 공간에 대응하는 베이스 공간을 변경하지 않을 것을 결정한다(S2607). 그 후, 공유 공간 합성부(152)는, 후술하는 S2619의 처리를 행한다.
한편, 당해 설정값이 「자신의 실공간을 베이스 공간으로서 이용한다」인 경우에는(S2605: "예"), 공유 공간 합성부(152)는, 참가 시 베이스 공간 전환 설정 테이블(116)에 있어서, 해당 공유 공간에 참가 중인 각 유저에 관련지어져 있는 설정값을 참가 시 베이스 공간 전환 설정 테이블(116)로부터 각각 추출한다(S2609).
계속해서, 공유 공간 합성부(152)는, S2609에서 추출된, 모든 유저에 관한 설정값이 「베이스 공간의 전환을 허가한다」인지 여부를 판정한다(S2611). 적어도 하나 이상의 유저에 관한 설정값이 「베이스 공간의 전환을 허가한다」가 아닌 경우에는(S2611: "아니오"), 공유 공간 합성부(152)는, 현재의 베이스 공간을 전환하지 않을 것, 및 당해 공유 공간으로의 유저(4c)의 참가를 허가하지 않을 것을 결정한다. 그리고, 서버(10-2)는, 에러를 나타내는 정보를 실공간(2c) 내의 출력부(24c)에 출력시킨다(S2613). 그 후, 당해 「공유 공간으로의 추가 참가 시의 처리」는 종료한다.
한편, 모든 유저에 관한 설정값이 「베이스 공간의 전환을 허가한다」인 경우에는(S2611: "예"), 공유 공간 합성부(152)는, 현재의 베이스 공간을 유저(4c)가 위치함) 실공간(2c)으로 전환할 것을 결정한다(S2615).
계속해서, 공유 공간 합성부(152)는, 당해 베이스 공간이 전환되는 것을 나타내는, 소정 시간의 애니메이션을 표시시키도록, 당해 자유 시점의 콘텐츠를 가공한다. 이에 의해, 당해 공유 공간에 참가 중인 각 유저(4)가 위치하는 실공간(2) 내의 출력부(24)는 당해 애니메이션을 표시한다(S2617).
그 후, 공유 공간 합성부(152)는, 당해 공유 공간 내에 새롭게 배치되는 것이 결정된 모든 오브젝트(유저(4c)를 포함함)의 표시가 개시되는 것을 나타내는, 소정 시간의 애니메이션을 표시시키도록, 당해 자유 시점의 콘텐츠를 가공한다. 이에 의해, 당해 공유 공간에 참가 중인 각 유저(4)가 위치하는 실공간(2) 내의 출력부(24)는 당해 애니메이션을 표시한다(S2619). 그 후, 당해 「공유 공간으로의 추가 참가 시의 처리」는 종료한다.
<<3. 제3 실시 형태>>
<3-1. 개요>
이상, 제2 실시 형태에 대해 설명하였다. 그런데, 상술한 각 실시 형태와 같이, 각 실공간과 서버(10) 사이에서, 당해 실공간의 대략 전체의 3D 데이터가 송수신되는 경우에는, 네트워크 대역을 대량으로 사용할 수 있다. 또한, 별도의 과제로서, 예를 들어 표시 대상 외로 판정된 오브젝트 등, 인식 처리가 불필요한 경우에는 인식 처리를 생략하는 것이 바람직하다.
다음에, 제3 실시 형태에 대해 설명한다. 후술하는 바와 같이, 제3 실시 형태에 따른 서버(10-3)는, 표시 대상 외의 오브젝트에 관해서는, 클라이언트(20)와 서버(10-3) 사이에서 데이터를 송신하지 않도록 제어하거나, 또한, 클라이언트(20)에 인식 처리를 행하게 하지 않도록 제어한다. 또한, 제3 실시 형태에 따른 서버(10-3)에 포함되는 구성 요소는, 제2 실시 형태와 동일하다. 이하에서는, 제2 실시 형태와 상이한 내용에 대해서만 설명을 행한다.
<3-2. 구성>
{3-2-1. 서버(10-3)}
(3-2-1-1. 오브젝트 관리 정보 DB(164))
먼저, 제3 실시 형태에 따른 서버(10-3)의 구성에 대해 설명한다. 제3 실시 형태에 따른 오브젝트 관리 정보 DB(164)에서는, 후술하는 바와 같이, 각 실공간의 입력부(22)(송신부(228))로부터 수신되는, 각 오브젝트의 송신에 필요한 대역의 정보가 추가로 저장된다.
(3-2-1-2. 공유 공간 관리부(100-3))
제3 실시 형태에 따른 공유 공간 관리부(100-3)는, (제2 실시 형태에 따른 공유 공간 관리부(100-2)와 비교해) 또한, 각 오브젝트의 송신에 필요한 대역의 정보에 기초하여, 각 오브젝트를 표시 대상 오브젝트에 설정할지 여부를 판정한다. 그리고, 공유 공간 관리부(100-3)는, 표시 대상으로 판정된 각 오브젝트의 오브젝트 ID 리스트를 제어 정보 송신부(122)로 전달한다.
또한, (후술하는 바와 같이) 입력부(22)의 인식부(224)에 의해 인식 처리가 정지되어 있을 때에, 표시 대상 오브젝트 판정 처리를 새롭게 행하는 경우에는, 공유 공간 관리부(100-3)는, 정지하고 있는 인식 처리를 재개할 것을 지시하도록 제1 제어 정보를 생성하고, 그리고, 당해 제1 제어 정보를 해당 입력부(22)(인식부(224))에 제어 정보 송신부(122)에 송신시킨다. 그리고, 인식 처리가 재개되며, 또한, 당해 인식 처리의 결과가 수신된 시점에서, 공유 공간 관리부(100-3)는, 표시 대상의 판정 처리를 다시 행한다.
(3-2-1-3. 스트림 생성부(130))
제3 실시 형태에 따른 스트림 생성부(130)는, 표시 대상 외로 판정된 오브젝트를 공유 공간 Frame 데이터로부터 삭제함으로써 스트림을 생성한다. 그리고, 스트림 생성부(130)는, 생성된 스트림을 송신부(132)에 전달한다.
또한, 스트림 생성부(130)는, 출력부(24)(의 제어 정보 송신부(252))로부터 수신되는 제2 제어 정보가 나타내는, 표시부(246)의 위치 및 자세에 따라, 공유 공간 Frame 데이터 내의 오브젝트를 간략화하는 처리를 행하고, 그리고, 처리 후의 공유 공간 Frame 데이터에 기초하여 스트림을 생성하는 것도 가능하다. 또한, 제어 정보 송신부(122)는, 당해 오브젝트의 간략화를 지시하기 위한 제1 제어 정보를, 당해 오브젝트의 원래 공간의 입력부(22)에 추가로 송신해도 된다. 이에 의해, 당해 입력부(22)는, 이후, 수신된 제1 제어 정보를 예를 들어 인식부(224)나 스트림 생성부(226)에 의한 처리에 반영시킴으로써, 처리의 부하를 경감시킬 수 있다.
-처리의 흐름
여기서, 도 52를 참조하여, 제3 실시 형태에 따른 스트림 생성부(130)에 의한 처리 흐름의 일례에 대해 설명한다. 도 52에 도시된 바와 같이, 스트림 생성부(130)는, 먼저, 처리 대상의 원래 공간의 번호를 나타내는 변수 I에 「1」을 설정한다(S3001). 그리고, 스트림 생성부(130)는, 원래 공간의 총 수를 N으로 설정한다(S3003).
그리고, I가 N 이하인 한(S3005: "예"), 스트림 생성부(130)는, 이하의 S3007 내지 S3015의 처리를 반복한다. 또한, I가 N보다도 커진 경우에는(S3005: "아니오"), 스트림 생성부(130)는, 당해 처리를 종료한다.
구체적으로는, 먼저, 스트림 생성부(130)는, 생성된 공유 공간 Frame 데이터를 공유 공간 생성부(102)로부터 취득한다(S3007).
계속해서, 스트림 생성부(130)는, 오브젝트 관리 정보 DB(164)를 참조함으로써, 표시 대상 외로 판정된 오브젝트를 특정한다. 그리고, 스트림 생성부(130)는, 특정된 오브젝트의 데이터를, 취득된 공유 공간 Frame 데이터로부터 삭제한다(S3009).
계속해서, 스트림 생성부(130)는, 오브젝트 관리 정보 DB(164)를 참조함으로써, I번째의 원래 공간 내의 오브젝트를 특정한다. 그리고, 스트림 생성부(130)는, 특정한 오브젝트의 데이터를 공유 공간 Frame 데이터로부터 추가로 삭제한다(S3011).
계속해서, 스트림 생성부(130)는, S3011에서 변경된 공유 공간 Frame 데이터에 기초하여, (I번째의 원래 공간에 송신되는)스트림을 생성한다. 그리고, 송신부(132)는, 생성된 스트림을 I번째의 원래 공간의 출력부(24)로 송신한다(S3013).
계속해서, 스트림 생성부(130)는, I에 「1」을 가산한다(S3015). 그 후, 스트림 생성부(130)는, 다시 S3005의 처리를 행한다.
(3-2-1-4. 제어 정보 송신부(122))
제3 실시 형태에 따른 제어 정보 송신부(122)는, 공유 공간 관리부(100-3)로부터 전달되는, 표시 대상 오브젝트의 오브젝트 ID의 리스트를 제1 제어 정보로서, 각 실공간의 출력부(24)로 송신한다. 예를 들어, 표시 대상으로 판정되어 있던 오브젝트가 표시 대상 외로 새롭게 판정되었을 때는, 제어 정보 송신부(122)는, 당해 오브젝트가 표시 대상 외로 새롭게 판정되었음을 나타내는 제1 제어 정보를, 당해 오브젝트의 원래 공간 내의 출력부(24)로 송신한다. 이에 의해, 후술하는 바와 같이, 해당 원래 공간의 입력부(22)는, 이후, 당해 오브젝트의 3D 데이터를 서버(10-3)에 송신하지 않고, 또한, 당해 오브젝트의 인식 처리를 정지할 수 있다.
-처리의 흐름
여기서, 도 53을 참조하여, 제3 실시 형태에 따른 제어 정보 송신부(122)에 의한 처리 흐름의 일례에 대해 설명한다. 도 53에 도시된 바와 같이, 제어 정보 송신부(122)는, 먼저, 처리 대상의 원래 공간의 번호를 나타내는 변수 I에 「1」을 설정한다(S3101). 그리고, 제어 정보 송신부(122)는, 원래 공간의 총 수를 N으로 설정한다(S3103).
그리고, I가 N 이하인 한(S3105: "예"), 제어 정보 송신부(122)는, 이하의S3107 내지 S3115의 처리를 반복한다. 또한, I가 N보다도 커진 경우에는(S3105: "아니오"), 제어 정보 송신부(122)는, 당해 처리를 종료한다.
구체적으로는, 먼저, 오브젝트 관리 정보 DB(164)에 있어서 표시 대상 오브젝트가 변경된 경우에는, 제어 정보 송신부(122)는, 표시 대상 오브젝트가 변경되었다는 취지의 통지를 공유 공간 생성부(102)로부터 취득한다(S3107).
계속해서, 제어 정보 송신부(122)는, 취득된 통지에 기초하여, I번째의 원래 공간 내의 각 오브젝트에 관하여 표시 대상인지 여부의 판정 결과가 변경되었는지 여부를 확인한다(S3109). 당해 판정 결과가 변경되지 않은 경우에는(S3109: "아니오"), 제어 정보 송신부(122)는, 후술하는 S3115의 처리를 행한다.
한편, 당해 판정 결과가 변경된 경우에는(S3109: "예"), 제어 정보 송신부(122)는, 당해 판정 결과가 변경되었음을 나타내는 제1 제어 정보를 생성한다(S3111).
계속해서, 제어 정보 송신부(122)는, 생성된 제1 제어 정보를 I번째의 원래 공간의 출력부(24)로 송신한다(S3113).
계속해서, 제어 정보 송신부(122)는, I에 「1」을 가산한다(S3115). 그 후, 제어 정보 송신부(122)는, 다시 S3105의 처리를 행한다.
{3-2-2. 입력부(22)}
(3-2-2-1. 센서부(220))
다음에, 제3 실시 형태에 따른 입력부(22)의 구성에 대해 설명한다. 제3 실시 형태에 따른 센서부(220)는, 세그멘테이션된 각 오브젝트에 관해서, 당해 오브젝트의 송신에 필요한 대역의 정보를 취득(또는 산출)하고, 그리고, 취득된 정보를 메타 정보 내에 기록한다. 이에 의해, 각 오브젝트의 송신에 필요한 대역의 정보가(Frame 데이터 등과 함께) 서버(10-3)로 송신되게 된다.
(3-2-2-2. 스트림 생성부(226))
제3 실시 형태에 따른 스트림 생성부(226)는, 서버(10-3)로부터 수신되는 제1 제어 정보에 기초하여, 표시 대상 외의 오브젝트를 포함하지 않도록 스트림을 생성한다. 이에 의해, 표시 대상 외의 오브젝트 3D 데이터는 서버(10-3)로 송신되지 않게 된다.
-처리의 흐름
여기서, 도 54를 참조하여, 제3 실시 형태에 따른 스트림 생성부(226)에 의한 처리 흐름의 일례에 대해 설명한다. 도 54에 도시된 바와 같이, 스트림 생성부(226)는, 먼저, 센서부(220)에 의해 센싱(취득)되며, 또한, 인식부(224)에 의해 인식 처리가 행하여진 Frame 데이터를 인식부(224)로부터 취득한다(S3201).
계속해서, 스트림 생성부(226)는, 서버(10-3)로부터 수신된 제1 제어 정보를 제어 정보 수신부(222)를 통하여 취득한다(S3203).
계속해서, 스트림 생성부(226)는, 처리 대상 오브젝트 번호를 나타내는 변수 I에 「1」을 설정한다(S3205). 그리고, 스트림 생성부(226)는, S3201에서 취득된 Frame 데이터에 포함되는 오브젝트의 수를 N으로 설정한다(S3207).
그리고, I가 N 이하인 한(S3209: "예"), 스트림 생성부(226)는, 이하의 S3211 내지 S3213의 처리를 반복한다. 구체적으로는, 스트림 생성부(226)는, 먼저, 이전의 프레임에 있어서의 I번째 오브젝트 정보와, S3203에서 취득된 제1 제어 정보가 나타내는 표시 대상 오브젝트의 오브젝트 ID의 리스트에 기초하여, I번째 오브젝트가 표시 대상인지 여부의 정보를 갱신한다(S3211). 그리고, 스트림 생성부(226)는, I에 「1」을 가산한다(S3213).
한편, I가 N보다도 커진 경우에는(S3209: "아니오"), 스트림 생성부(226)는, S3201에서 취득된 Frame 데이터로부터, S3211의 갱신 후의 정보에 기초하여 표시 대상 외의 오브젝트 정보를 삭제한다(S3215).
그 후, 스트림 생성부(226)는, 변경 후의 Frame 데이터에 기초하여 스트림을 생성하고, 그리고, 생성된 스트림을 송신부(228)로 출력한다(S3217).
(3-2-2-3. 인식부(224))
제3 실시 형태에 따른 인식부(224)는, 서버(10-3)로부터 수신되는 제1 제어 정보가 나타내는 표시 대상 오브젝트의 ID 리스트에 기초하여, 표시 대상 오브젝트에 관해서만 인식 처리를 행하는 것이 가능하다.
또는 인식부(224)는, 서버(10-3)로부터 수신되는 제1 제어 정보에 기초하여, 인식 처리를 실행하거나, 정지하는 것도 가능하다. 예를 들어, 인식 처리가 불필요함을 나타내는 제1 제어 정보가 수신된 경우에는, 인식부(224)는, 인식 처리를 정지한다. 그 후, 인식 처리를 재개할 것을 지시하는 제1 제어 정보가 서버(10-3)부터 수신된 경우에는, 인식부(224)는, 인식 처리를 재개한다.
-처리의 흐름
여기서, 도 55를 참조하여, 제3 실시 형태에 따른 인식부(224)에 의한 처리 흐름의 일례에 대해 설명한다. 도 55에 도시된 바와 같이, 인식부(224)는, 먼저, 센서부(220)에 의해 센싱(취득)된 Frame 데이터를 센서부(220)로부터 취득한다(S3301).
계속해서, 인식부(224)는, 서버(10-3)로부터 수신된 제1 제어 정보를 제어 정보 수신부(222)를 통하여 취득한다(S3303).
계속해서, 인식부(224)는, 처리 대상 오브젝트 번호를 나타내는 변수 I에 「1」을 설정한다(S3305). 그리고, 인식부(224)는, S3301에서 취득된 Frame 데이터에 포함되는 오브젝트의 수를 N으로 설정한다(S3307).
그리고, I가 N 이하인 한(S3309: "예"), 인식부(224)는, 이하의 S3311 내지 S3317의 처리를 반복한다. 구체적으로는, 먼저, 인식부(224)는, 이전의 프레임에 있어서의 I번째 오브젝트 정보와, S3303에서 취득된 제어 정보가 나타내는 표시 대상 오브젝트의 오브젝트 ID의 리스트에 기초하여, I번째 오브젝트가 표시 대상인지 여부의 정보를 갱신한다(S3311). 그리고, I번째 오브젝트가 현재 표시 대상이 아닌 경우에는(S3313: "아니오"), 인식부(224)는, 후술하는 S3317의 처리를 행한다. 한편, I번째 오브젝트가 현재 표시 대상인 경우에는(S3313: "예"), 인식부(224)는, I번째 오브젝트에 대해 인식 처리를 실행한다(S3315). 그리고, 인식부(224)는, I에 「1」을 가산한다(S3317).
한편, I가 N보다도 커진 경우에는(S3309: "아니오"), 인식부(224)는, S3315에 있어서의 인식 결과에 기초하여, S3301에서 취득된 Frame 데이터를 갱신한다(S3319). 그 후, 인식부(224)는, 갱신 후의 Frame 데이터를 스트림 생성부(226)로 출력한다(S3321).
<3-3. 효과>
이상 설명한 바와 같이, 제3 실시 형태에 의하면, 서버(10-3)는, 표시 대상 외의 오브젝트에 관해서는, 클라이언트(20)와 서버(10-3) 사이에서 데이터를 송신하지 않도록 제어하고, 또한, 클라이언트(20)에 인식 처리를 행하게 하지 않도록 제어한다. 이에 의해, 통신 대역, 통신량 및 계산 부하를 줄일 수 있다.
<3-4. 응용예>
그런데, 네트워크 대역이 변동하면, 지금까지 송신 가능했던 오브젝트의 데이터가 송신 불능이 될 수 있다. 그 결과, 표시 지연이나 프레임 레이트의 저하가 발생될 수 있다. 다음에, 제3 실시 형태의 응용예에 대해 설명한다. 후술하는 바와 같이, 본 응용예에 의하면, 네트워크 대역의 범위 내에서, 서버(10-3)와 클라이언트(20) 사이에서 데이터를 송신하도록 제어하는 것이 가능하다.
{3-4-1. 구성}
본 응용예에 의한 입력부(22)의 인식부(224)는, 오브젝트별로, 당해 오브젝트의 송신에 필요한 데이터양을, 메타 정보 내에 추가로 기록한다.
또한, 본 응용예에 의한 클라이언트 접속부(120)는 각각 접속처의 클라이언트(20)에 관한 네트워크 대역의 상한값을 순차 측정하는 측정부(도시 생략)를 추가로 구비한다.
또한, 본 응용예에 의한 공유 공간 합성부(152)는, 적어도 어느 원래 공간에 관해서, 네트워크 대역이 변동되었음이 당해 측정부에 의해 측정될 때마다, 표시 대상 오브젝트의 선택 처리를 순차 행한다.
여기서, 「표시 대상 오브젝트의 선택 처리」의 내용에 대해 설명한다. 예를 들어, 공유 공간 합성부(152)는, 먼저, 표시 대상으로서 선택되지 않은 오브젝트 중 우선도가 가장 높은 오브젝트를, 표시 대상 오브젝트로서 선택한다. 다음에, 공유 공간 합성부(152)는, 메타 정보에 기록되어 있는 당해 오브젝트의 데이터 사이즈에 기초하여, 현재까지 선택 완료된 모든 표시 대상 오브젝트 데이터 사이즈의 합계를 산출한다. 그리고, 당해 데이터 사이즈의 합계가, 측정된 네트워크 대역의 상한에 따른 임계값에 도달될 때까지, 공유 공간 합성부(152)는, 당해 선택 처리를 반복한다.
또한, 본 응용예에 의한 제어 정보 송신부(122)는, (공유 공간 합성부(152)에 의한) 표시 대상 오브젝트의 선택 처리가 종료될 때마다, 표시 대상 외의 오브젝트 오브젝트 ID의 리스트를 제1 제어 정보로서, 당해 오브젝트의 원래 공간의 입력부(22)로 송신한다. 이에 의해, 해당 입력부(22)는, 선택 대상 외가 된 오브젝트를 이후 서버(10-3)에 송신하지 않게 된다.
{3-4-2. 효과}
이상 설명한 바와 같이, 본 응용예에 의하면, 네트워크 대역의 범위 내에서, 서버(10-3)와 클라이언트(20) 사이에서 데이터를 송신하도록 제어한다. 이 때문에, 네트워크 대역이 변동된 경우에도, 표시 지연이나 프레임 레이트의 저하의 발생을 방지할 수 있다.
<<4. 제4 실시 형태>>
이상, 제3 실시 형태에 대해 설명하였다. 상술한 바와 같이, 각 실시 형태에 따른 서버(10)는, 복수의 실공간 내의 오브젝트를 공유 공간 상에 배치한다. 그런데, 특별한 고려가 없으면, 유저에게 있어서 바람직하지 않은 위치 관계로 각 오브젝트가 공유 공간 상에 배치될 수 있다. 예를 들어, 다른 실공간에 위치하는 두 명의 유저가 마주 보지 않도록 공유 공간 상에 배치될 수 있다. 또한, 당해 두 명의 유저가 마주 보도록 배치된 경우에도, 당해 두 명의 유저 사이에 별도의 오브젝트가 배치될 수 있다. 그 결과, 당해 두 명의 유저가 회화를 할 때에 지장이 생길 수 있다.
또한, 빈 공간이 있는 한 오브젝트가 가득 채워지도록, 다수의 오브젝트가 공유 공간 상에 배치될 수 있다. 그 결과, 유저에게 있어서 쾌적하지 않은 공유 공간이 생성될 수 있다.
다음에, 제4 실시 형태에 대해 설명한다. 후술하는 바와 같이, 제4 실시 형태에 의하면, 미리 등록되어 있는 복수의 베이스 공간 레이아웃 중에서 어느 것인가가 선택되고, 그리고, 서버(10-4)는, 선택된 베이스 공간 레이아웃에 대해 표시 대상 오브젝트를 배치함으로써, 공유 공간을 생성하는 것이 가능하다.
<4-1. 개요>
먼저, 제4 실시 형태에 따른 베이스 공간에 대한 오브젝트의 레이아웃 개요에 대해 설명한다. 제4 실시 형태에서는, (예를 들어 제2 실시 형태와 비교하여)베이스 공간 내에 보다 많은 종류의 오브젝트를 배치 가능하게 한다. 예를 들어, 베이스 공간 내에 자유 시점 동화상 오브젝트가 (베이스 공간 오브젝트로서)배치 가능하다. 여기서, 자유 시점 동화상 오브젝트는, 예를 들어 자유 시점의 라이브 영상 콘텐츠여도 된다. 또한, 자유 시점 동화상 오브젝트는, 배경으로서 표시되어도 된다.
또한, 제4 실시 형태에서는, 베이스 공간 내에 2D 동화상 오브젝트도 (베이스 공간 오브젝트로서)배치 가능하다. 예를 들어, 공유 공간 내에 떠오르는 디스플레이가 베이스 공간 상에 배치되는 경우에는, 2D 동화상 오브젝트가 당해 디스플레이에 표시되어도 된다. 여기서, 2D 동화상 오브젝트는, 예를 들어 텔레비전 방송, 비디오 배신 콘텐츠 또는 웹페이지 등이다. 또한, 2D 동화상 오브젝트(의 표시 정보)는 외부의 서버(도시 생략)나, 각 클라이언트(20)의 부근에 위치하는 디바이스(도시 생략) 등으로부터 취득될 수 있다.
또한, 제4 실시 형태에서는, 오브젝트의 배치를 권장할 빈 영역에 관한 정보(이하, 배치 권장 정보라고 칭함)가 베이스 공간 레이아웃 정보(160)에 추가로 저장될 수 있다. 여기서, 배치 권장 정보는, 예를 들어 베이스 공간에 있어서의 오브젝트의 배치 권장 위치의 정보, 및 배치를 권장할 오브젝트의 조건(오브젝트의 종류 등) 등을 포함한다. 또한, 베이스 공간 레이아웃 정보(160)에는, 예를 들어 인물이 3명 이하인 것 등, 베이스 공간 상에 배치 가능한 오브젝트의 조건(이하, 배치 가능 오브젝트 조건이라고 칭하는 경우가 있음)이 저장될 수 있다.
{베이스 공간 레이아웃 정보(160)}
도 56은, 제4 실시 형태에 따른 베이스 공간 레이아웃 정보(160)의 구성예를 나타낸 설명도이다. 도 56에 도시된 바와 같이, 제4 실시 형태에 따른 베이스 공간 레이아웃 정보(160)는, (도 23에 도시된) 제2 실시 형태에 따른 베이스 공간 레이아웃 정보(160)와 비교하여, 2D 동화상 오브젝트 정보(1606) 및 자유 시점 동화상 오브젝트 정보(1608)를 추가로 포함한다. 여기서, 2D 동화상 오브젝트 정보(1606)에는, 해당 베이스 공간 내에 배치될 모든 2D 동화상 오브젝트에 관한 정보가 기록된다. 예를 들어, 2D 동화상 오브젝트 정보(1606)에는, 2D 동화상 오브젝트별로, 당해 2D 동화상 오브젝트가 배치되는 공유 오브젝트의 정보(오브젝트 ID, 오브젝트를 구성하는 점 및 면의 좌표 등), 당해 2D 동화상 오브젝트가 묘화되는 면의 좌표, 및 당해 2D 동화상 오브젝트가 저장되어 있는 서버(도시 생략)의 URL 등이 기록된다. 또한, 자유 시점 동화상 오브젝트 정보(1608)에는, 해당 베이스 공간 내에 배치될 자유 시점 동화상 오브젝트에 관한 정보가 기록된다. 예를 들어, 자유 시점 동화상 오브젝트 정보(1608)에는, 해당 자유 시점 동화상 오브젝트가 배치되는 베이스 공간 상의 영역, 및 해당 자유 시점 동화상 오브젝트가 저장되어 있는 서버(도시 생략)의 URL 등이 기록된다.
도 57은, 제4 실시 형태에 따른 베이스 공간의 레이아웃의 예(레이아웃(60))를 도시한 설명도이다. 도 57에 도시된 바와 같이, 레이아웃(60)에서는, 두 개의 식물의 오브젝트, 디스플레이의 오브젝트(600), 풀의 오브젝트 및 2대의 데크 체어의 오브젝트가 베이스 공간 상에 각각 배치되어 있다. 여기서, 디스플레이의 오브젝트(600)는, 예를 들어 공중에 뜨도록 배치되어도 된다. 또한, 디스플레이의 오브젝트(600)는, 예를 들어 외부의 서버로부터 수신되는 2D 동화상 오브젝트를 표시 가능하게 구성된다. 또한, 도 57에 나타낸 예에서는, 인물의 자유 시점 동화상 오브젝트(602)가 풀의 오브젝트 상에 배치되어 있다. 여기서, 자유 시점 동화상 오브젝트(602)는, 예를 들어 후술하는, 자유 시점 동화상 콘텐츠 서버(50) 또는 자유 시점 라이브 콘텐츠 서버(52) 등으로부터 수신되는 자유 시점 동화상 오브젝트일 수 있다.
또한, 레이아웃(60)에는, 오브젝트 배치 가능 영역(604), 및 오브젝트 배치 권장 영역(606)이 설정되어 있다. 여기서, 오브젝트 배치 가능 영역(604)은, 예를 들어 임의의 종류의 3D 오브젝트가 배치 가능한 영역이다. 또한, 오브젝트 배치 권장 영역(606)에는, 특정한 종류의 3D 오브젝트(예를 들어 사람 등)의 배치가 권장되는 영역이다.
<4-2. 정보 처리 시스템의 구성>
다음에, 제4 실시 형태에 따른 정보 처리 시스템의 구성예에 대해, 도 58 내지 도 60을 참조하여 설명한다. 도 58에 나타내는 바와 같이, 제4 실시 형태에 따른 정보 처리 시스템은, 도 1에 도시된 제1 실시 형태와 비교하여, 자유 시점 동화상 콘텐츠 서버(50), 자유 시점 라이브 콘텐츠 서버(52), 및 베이스 공간 레이아웃 서버(54)을 추가로 포함한다.
{4-2-1. 자유 시점 동화상 콘텐츠 서버(50)}
자유 시점 동화상 콘텐츠 서버(50)는, 자유 시점 동화상 콘텐츠를 예를 들어 서버(10-4) 등에 배신하는 장치이다. 여기서, 도 59를 참조하여, 자유 시점 동화상 콘텐츠 서버(50)의 구성예에 대해 설명한다. 도 59에 나타내는 바와 같이, 자유 시점 동화상 콘텐츠 서버(50)는, 제어 정보 수신부(500), 스트림 생성부(502), 송신부(504), 및 자유 시점 동화상 콘텐츠 DB(506)를 갖는다.
(4-2-1-1. 제어 정보 수신부(500))
제어 정보 수신부(500)는, 서버(10-4)로부터 제4 제어 정보를 수신한다. 그리고, 제어 정보 수신부(500)는, 수신된 제4 제어 정보를 스트림 생성부(502)로 전달한다.
(4-2-1-2. 스트림 생성부(502))
스트림 생성부(502)는, 자유 시점 동화상 콘텐츠 DB(506)에 저장되어 있는 콘텐츠와, 제어 정보 수신부(500)로부터 전달되는 제4 제어 정보에 기초하여, 자동 시점 동화상 오브젝트(스트림)를 생성한다. 예를 들어, 스트림 생성부(502)는, 제4 제어 정보가 지정하는 종류의 콘텐츠를 자유 시점 동화상 콘텐츠 DB(506)로부터 추출함으로써, 자동 시점 동화상 오브젝트를 생성한다.
(4-2-1-3. 자유 시점 동화상 콘텐츠 DB(506))
자유 시점 동화상 콘텐츠 DB(506)는, 복수의 자유 시점 동화상 콘텐츠를 저장하는 데이터베이스이다. 예를 들어, 자유 시점 동화상 콘텐츠 DB(506)에서는, 예를 들어 콘서트 회장, 이벤트 회장, 스포츠 회장 또는 거리 등의 실공간의 센싱에 기초하여 생성된 자유 시점 동화상이나, 유저의 이동 시의 촬영에 기초하여 생성된 자유 시점 동화상 등이 저장될 수 있다.
(4-2-1-4. 송신부(504))
송신부(504)는, 스트림 생성부(502)에 의해 생성된 자동 시점 동화상 오브젝트를 서버(10-4)(클라이언트 접속부(120))로 송신한다.
{4-2-2. 자유 시점 라이브 콘텐츠 서버(52)}
자유 시점 라이브 콘텐츠 서버(52)는, 자유 시점의 라이브 콘텐츠를 예를 들어 서버(10-4) 등에 배신하는 장치이다. 여기서, 자유 시점의 라이브 콘텐츠는, 예를 들어 콘서트 회장, 이벤트 회장, 스포츠 회장, 거리, 도서관, 스포츠 클럽 또는 음식점 등의 각종 장소에 있어서의, 후술하는 센서부(520)에 의한 센싱에 기초하여 생성되는 자유 시점 콘텐츠이다. 또는 어떤 사람의 이동 중의 촬영에 기초하여 실시간으로 생성되는 자유 시점 콘텐츠여도 된다.
여기서, 도 59를 참조하여, 자유 시점 라이브 콘텐츠 서버(52)의 구성예에 대해 설명한다. 도 59에 나타내는 바와 같이, 자유 시점 라이브 콘텐츠 서버(52)는, 센서부(520), 제어 정보 수신부(522), 인식부(524), 스트림 생성부(526), 및 송신부(528)를 갖는다.
(4-2-2-1. 센서부(520))
센서부(520)는, 센서부(520)가 배치되어 있는 실공간 내의 3D 데이터 등의 각종 데이터를 수신 또는 판독 처리 등을 행함으로써 검출된다. 예를 들어, 센서부(520)는, 복수의 뎁스 카메라 및 복수의 RGB 카메라를 가질 수 있다. 그리고, 당해 복수의 뎁스 카메라는, 센서부(520)가 배치되어 있는 실공간 내의 3D 데이터를 취득한다. 또한, 센서부(520)는, 취득한 데이터를 인식부(524)로 전달한다. 또한, 센서부(520)의 기능은, (입력부(22)의) 센서부(220)와 개략 마찬가지일 수 있다.
(4-2-2-2. 제어 정보 수신부(522))
제어 정보 수신부(522)는, 서버(10-4)로부터 제4 제어 정보를 수신한다. 그리고, 제어 정보 수신부(500)는, 수신된 제4 제어 정보를 인식부(524) 및 스트림 생성부(526)로 전달한다.
(4-2-2-3. 인식부(524))
인식부(524)는, 센서부(520)로부터 전달되는 데이터와, 제어 정보 수신부(522)로부터 전달되는 제4 제어 정보에 기초하여, 예를 들어 오브젝트의 종별 인식 등의 각종 인식 처리를 행한다. 또한, 인식부(524)는, 센서부(520)로부터 전달된 데이터와, 인식 처리의 결과를 스트림 생성부(526)로 전달한다. 또한, 인식부(524)의 기능은, (입력부(22)의) 인식부(224)와 개략 마찬가지일 수 있다.
(4-2-2-4. 스트림 생성부(526))
스트림 생성부(526)는, 인식부(524)로부터 전달되는 정보와, 제어 정보 수신부(522)로부터 전달되는 제4 제어 정보에 기초하여, 자동 시점 동화상 오브젝트(스트림)를 생성한다. 또한, 스트림 생성부(526)는, 생성된 자동 시점 동화상 오브젝트를 송신부(528)로 전달한다. 또한, 스트림 생성부(526)의 기능은, (입력부(22)의) 스트림 생성부(226)와 개략 마찬가지일 수 있다.
(4-2-2-5. 송신부(528))
송신부(528)는, 스트림 생성부(526)로부터 전달된 자동 시점 동화상 오브젝트를 서버(10-4) (클라이언트 접속부(120))로 송신한다.
{4-2-3. 베이스 공간 레이아웃 서버(54)}
베이스 공간 레이아웃 서버(54)는, 베이스 공간 레이아웃 정보 DB(542)를 관리하는 장치이다. 여기서, 도 60을 참조하여, 베이스 공간 레이아웃 서버(54)의 구성예에 대해 설명한다. 도 60에 나타내는 바와 같이, 베이스 공간 레이아웃 서버(54)는, 베이스 공간 레이아웃 정보 DB 관리부(540), 및 베이스 공간 레이아웃 정보 DB(542)를 갖는다.
(4-2-3-1. 베이스 공간 레이아웃 정보 DB(542))
베이스 공간 레이아웃 정보 DB(542)는, 미리 등록되어 있는 복수의 레이아웃의 정보를 저장하는 데이터베이스이다. 예를 들어, 베이스 공간 레이아웃 정보 DB(542)는, 레이아웃의 식별 정보(명칭 등)와, 레이아웃을 관련지어서 저장한다.
(4-2-3-2. 베이스 공간 레이아웃 정보 DB 관리부(540))
베이스 공간 레이아웃 정보 DB 관리부(540)는, 베이스 공간 레이아웃 정보 DB(542)에 대해, 데이터의 추출, 등록, 갱신 등의 각종 처리를 행한다. 예를 들어, 레이아웃의 취득 요구가 서버(10-4)로부터 수신된 경우에는, 베이스 공간 레이아웃 정보 DB 관리부(540)는, 먼저, 당해 취득 요구가 나타내는 종류의 레이아웃을 베이스 공간 레이아웃 정보 DB(542)로부터 추출한다. 그리고, 베이스 공간 레이아웃 정보 DB 관리부(540)는, 추출된 레이아웃을 서버(10-4)로 송신한다.
<4-3. 구성>
이상, 제4 실시 형태에 따른 정보 처리 시스템의 구성에 대해 설명하였다. 다음에, 제4 실시 형태에 따른 서버(10-4)의 구성에 대해 상세하게 설명한다. 도 61은, 제4 실시 형태에 따른 공유 공간 관리부(100-4)의 구성예를 도시한 기능 블록도이다. 도 61에 나타내는 바와 같이, 공유 공간 관리부(100-4)는, (제2 실시 형태에 따른 공유 공간 관리부(100-2)와 비교하여)베이스 공간 레이아웃 정보 관리부(166)를 추가로 갖는다.
{4-3-1. 제어부(108)}
제4 실시 형태에 따른 제어부(108)는, 이벤트 인식부(106)에 의한 인식 결과에 기초하여, 베이스 공간의 레이아웃을 전환하기 위한 제어 정보를 생성한다. 예를 들어, 공유 공간에 있어서 참가 유저가 예를 들어 제스처, 발화(음성 커맨드 등), 또는 소정의 UI에 대한 조작 등에 의해 레이아웃의 변경을 지시한 것이 인식된 경우에는, 제어부(108)는, 베이스 공간의 레이아웃을, 지시된 종류의 레이아웃으로 전환하기 위한 제3 제어 정보를 생성한다. 그리고, 제어부(108)는, 생성된 제어 정보를 베이스 공간 레이아웃 정보 관리부(166)로 전달한다.
{4-3-2. 베이스 공간 레이아웃 정보 관리부(166)}
베이스 공간 레이아웃 정보 관리부(166)는, 제어부(108)로부터 전달되는 제3 제어 정보에 기초하여, 후보가 되는 베이스 공간 레이아웃 정보를 베이스 공간 레이아웃 서버(54)로부터 취득한다.
또한, 베이스 공간 레이아웃 정보 관리부(166)는, 베이스 공간 레이아웃 서버(54)로부터 수신된 레이아웃 정보를 베이스 공간 레이아웃 정보(160)에 저장하는 것이 가능하다. 예를 들어, 베이스 공간 레이아웃 정보 관리부(166)는, 베이스 공간 레이아웃 정보(160)에 현재 저장되어 있는 정보를, 수신된 레이아웃 정보로 치환한다.
{4-3-3. 공유 공간 합성부(152)}
(4-3-3-1. 오브젝트의 배치)
제4 실시 형태에 따른 공유 공간 합성부(152)는, 레이아웃 정보를 베이스 공간 레이아웃 정보(160)로부터 취득하고, 그리고, 취득된 레이아웃 정보에 기초하여 공유 공간을 생성한다. 예를 들어, 취득한 베이스 공간 레이아웃 정보 내에 3D 자유 시점 동화상 오브젝트 또는 2D 동화상 오브젝트가 저장되어 있는 경우에는, 공유 공간 합성부(152)는, 당해 오브젝트를 다른 오브젝트보다 우선하여 표시 대상 오브젝트로서 결정한다.
또한, 취득된 베이스 공간 레이아웃 정보 중에 빈 영역 정보가 있으며, 또한, 당해 빈 영역 정보 내에 배치 권장 정보가 있는 경우에는, 공유 공간 합성부(152)는, (선택한 표시 대상 오브젝트 중)배치 권장 정보가 나타내는 권장 오브젝트를, 당해 배치 권장 정보가 나타내는 위치에 배치한다. 그리고, 배치가 권장되어 있는 영역에 공간이 없어진 시점(즉 오브젝트가 충분히 배치된 시점)에서, 공유 공간 합성부(152)는, 공유 공간 상에서의 오브젝트의 레이아웃을 종료한다.
또한, 취득된 베이스 공간 레이아웃 정보가, 자유 시점 동화상 오브젝트나 2D 동화상 오브젝트의 배치를 지시하는 경우에는, 공유 공간 합성부(152)는, 당해 오브젝트(또는 Frame 데이터)를 자유 시점 동화상 콘텐츠 서버(50), 자유 시점 라이브 콘텐츠 서버(52) 또는 다른 외부의 서버(도시 생략)로부터 취득한다. 그리고, 공유 공간 합성부(152)는, 프레임별로, 취득된 오브젝트(또는 Frame 데이터)와, 각 원래 공간의 입력부(22)로부터 수신되는 Frame 데이터를 합성함으로써, 공유 공간 Frame 데이터를 생성한다.
(4-3-3-2. 베이스 공간의 전환 타이밍)
또한, 공유 공간 합성부(152)는, 베이스 공간 레이아웃 정보 관리부(166)에 의한 베이스 공간 레이아웃 정보의 취득에 기초하여, 공유 공간에 있어서의 베이스 공간을 전환하는 것이 가능하다. 예를 들어, 베이스 공간 레이아웃 정보가 취득 되었을 때, 공유 공간 합성부(152)는, 공유 공간에 있어서의 베이스 공간의 레이아웃을, 취득된 베이스 공간 레이아웃 정보가 나타내는 레이아웃으로 자동적으로 전환한다.
<4-4. 효과>
이상 설명한 바와 같이, 제4 실시 형태에 의하면, 서버(10-4)는, 미리 등록되어 있는 복수의 베이스 공간 레이아웃 중에서 유저에 의해 선택된 베이스 공간 레이아웃에 대해, 표시 대상 오브젝트를 배치함으로써, 공유 공간을 생성한다. 이에 의해, 유저에게 있어서 바람직하도록 각 오브젝트를 공유 공간 상에 레이아웃할 수 있다.
예를 들어, 서로 다른 실공간에 위치하는 친구(2명)는, 누군가가 위치하는 실공간을 베이스 공간으로서 선택함으로써, 어느 실공간 내에 함께 있는 것 같은 감각을 얻을 수 있다. 또는 휴양지나 콘서트 홀을 베이스 공간으로서 선택함으로써 휴양지나 콘서트 홀의 분위기를 함께 즐길 수 있다.
또한, 서버(10-4)는, 선택된 베이스 공간 상의 디스플레이 등에, 2D 동화상 오브젝트 등의 각종의 콘텐츠를 표시시키는 것이 가능하다. 이에 의해, 공유 공간 상에서, 친구끼리 각종 콘텐츠를 시청하여 즐길 수도 있다. 또한, 친구끼리 콘텐츠를 시청하면서, 상대의 표정을 확인할 수도 있으므로, 서로가 공유 공간 내에서 동일한 체험을 하고, 즐기고 있는 것을 실감할 수 있다.
<4-5. 변형예>
또한, 상기 설명에서는, 미리 등록되어 있는 복수의 레이아웃 정보 중 어느 것을 유저가 선택하는 예에 대해 설명했지만, 이러한 예에 한정되지 않는다. 예를 들어, 미리 등록되어 있는 복수의 레이아웃 정보의 각각에는, 배치 가능 오브젝트 조건(예를 들어 사람을 3명까지 배치 가능 등)이 부여될 수 있다. 그리고, 서버(10-4)는, 각 레이아웃 정보에 부여되어 있는 배치 가능 오브젝트 조건과, 원래 공간에 관한 정보(예를 들어 공유 공간에 참가하는 각 유저가 위치함) 원래 공간의 수, 원래 공간 내의 오브젝트 또는 유저의 수 등)에 기초하여, 최적의 레이아웃을 자동적으로 선택하는 것도 가능하다.
<<5. 제5 실시 형태>>
이상, 제4 실시 형태에 대해 설명하였다. 상술한 바와 같이, 제4 실시 형태에서는, 베이스 공간의 레이아웃 정보가 미리 등록되어 있는 것을 상정한다.
다음에, 제5 실시 형태에 대해 설명한다. 후술하는 바와 같이, 제5 실시 형태에 따른 서버(10-5)는, 베이스 공간 레이아웃 에디터의 기동 중에 있어서의 유저의 지시에 기초하여, 베이스 공간의 레이아웃 정보를 편집하는 것이 가능하다. 이에 의해, 유저는, 베이스 공간의 레이아웃 정보를 희망대로 편집할 수 있다.
<5-1. 구성>
제5 실시 형태에 따른 서버(10-5)에 포함되는 구성 요소는, (예를 들어 도 61에 도시된) 제4 실시 형태와 동일하다. 이하에서는, 제4 실시 형태와는 상이한 내용에 대해서만 설명을 행한다.
{5-1-1. 베이스 공간 레이아웃 정보 관리부(166)}
제5 실시 형태에 따른 베이스 공간 레이아웃 정보 관리부(166)는, 베이스 공간 레이아웃 에디터의 기동 중에 있어서의 유저의 지시(예를 들어 제스처나 발화(음성 커맨드 등) 등)의 인식 결과에 기초하여, 베이스 공간의 레이아웃 정보를 생성 또는 수정한다. 또한, 베이스 공간 레이아웃 정보 관리부(166)는, 생성 또는 갱신된 레이아웃 정보를 베이스 공간 레이아웃 서버(54)에 송신하는 것이 가능하다.
(5-1-1-1. 베이스 공간 레이아웃 에디터)
베이스 공간 레이아웃 에디터는, 베이스 공간의 레이아웃 정보를 편집하기 위한 모드이다. 예를 들어, 베이스 공간 레이아웃 에디터에서는, 베이스 공간 레이아웃 정보(160)에 저장되어 있는 오브젝트만이 공유 공간 상에 표시되고, 그리고, 유저는, 표시된 오브젝트를 보면서 베이스 공간의 레이아웃 정보를 편집할 수 있다.
베이스 공간 레이아웃 에디터의 기동 및 종료는, 예를 들어 공유 공간 상에 있어서의, 유저의 제스처나 음성 커맨드의 인식 결과 등에 기초하여 실행된다. 또한, 베이스 공간 레이아웃 에디터에서는, 유저의 지시(예를 들어 제스처나 음성 커맨드 등)의 인식 결과에 기초하여 당해 레이아웃 정보가 편집될 수 있다. 예를 들어, 베이스 공간 레이아웃 정보(160)에 저장되어 있는 오브젝트의 삭제나 위치의 변경, 당해 레이아웃에 있어서의 오브젝트의 배치 가능 영역의 설정, 표시 대상 오브젝트 지정, 및 빈 영역에 배치 가능한 오브젝트의 종류 지정 등이, 유저의 지시 인식 결과에 기초하여 실행될 수 있다.
또한, 베이스 공간 레이아웃 에디터에 있어서 편집 조작이 1회 이루어질 때마다, 베이스 공간 레이아웃 정보 관리부(166)는, 베이스 공간의 레이아웃 정보를 재작성하고, 그리고, 공유 공간 합성부(152)는, 재 작성 후의 베이스 공간의 레이아웃 정보를, 다음의 프레임 이후의 공유 공간을 생성하기 위해서 사용된다. 즉, 편집 조작의 결과는 공유 공간에 바로 반영되고, 그리고, 반영 후의 영상이 표시부(246)에 표시될 수 있다.
또한, 베이스 공간 레이아웃 에디터의 기동 중에, 베이스 공간 레이아웃 정보의 보존 조작이 이루어지면, 베이스 공간 레이아웃 정보 관리부(166)는, 현시점의 레이아웃 정보를 베이스 공간 레이아웃 서버(54)로 송신한다. 이에 의해, 편집된 레이아웃 정보가 베이스 공간 레이아웃 정보 DB(542)에 보존된다. 따라서, 편집된 레이아웃 정보를 이후 언제나 이용하는 것이 가능해진다.
-베이스 공간 레이아웃 에디터의 사용예
여기서, 도 62 및 도 63을 참조하여, 베이스 공간 레이아웃 에디터의 사용예에 대해 설명한다. 먼저, 예를 들어 공유 공간 상에서, 베이스 공간 레이아웃 에디터의 기동을 위한 음성 커맨드를 유저(4)가 발한 것이 인식되면, 서버(10-5)는 베이스 공간 레이아웃 에디터를 기동한다. 그리고, 도 62의 A에 도시된 바와 같이, 베이스 공간 레이아웃 정보(160)에 저장되어 있는 오브젝트만을 포함하는 공유 공간 내에 유저(4)가 위치하는 영상이, (유저(4)가 열람하는) 표시부(246)에 표시된다.
그 후, 예를 들어 테이블 및 복수의 의자(620)를 삭제할 것을 유저(4)가 희망하고, 그리고, 도 62의 B에 도시된 바와 같이, 베이스 공간으로부터 오브젝트를 삭제하기 위한 음성 커맨드를 유저(4)가 발했다고 하자. 이 경우, 도 62의 C에 도시된 바와 같이, 서버(10-5)는, 테이블 및 복수의 의자(620)를 베이스 공간 레이아웃 정보(160)로부터 삭제한다.
그 후, 베이스 공간 레이아웃 정보(160)에 등록되어 있는 배치 가능 영역(빈 영역)의 편집을 유저(4)가 희망하고, 그리고, 도 63의 A에 도시된 바와 같이, 예를 들어 배치 가능 영역을 표시시키기 위한 음성 커맨드를 유저(4)가 발했다고 하자. 이 경우, 도 63의 B에 도시된 바와 같이, 베이스 공간 레이아웃 정보(160)에 등록되어 있는 복수의 배치 가능 영역(624)가 표시부(246)에 더 표시된다. 그 후, 예를 들어 배치 가능 영역(624b)에 대해 「사람」의 배치를 권장하도록 설정하는 것을 유저(4)가 희망하고, 그리고, 도 63의 B에 도시된 바와 같이, 배치 가능 영역(624b)을 「사람」의 배치 권장 영역으로 설정하기 위한 음성 커맨드를 유저(4)가 발했다고 하자. 이 경우, 도 63의 C에 도시된 바와 같이, 서버(10-5)는, 배치 가능 영역(624b)을 「사람」의 배치 권장 영역으로서 설정한다.
그 후, 레이아웃 정보를 보존하기 위한 음성 커맨드 및 베이스 공간 레이아웃 에디터의 종료를 위한 음성 커맨드를 유저(4)가 발하면, 서버(10-5)(베이스 공간 레이아웃 정보 관리부(166))는, 현시점의 레이아웃 정보를 베이스 공간 레이아웃 서버(54)로 송신한다.
<5-2. 효과>
이상 설명한 바와 같이, 제5 실시 형태에 의하면, 서버(10-5)는, 유저의 지시에 기초하여 베이스 공간 레이아웃 에디터를 기동하고, 그리고, 베이스 공간 레이아웃 에디터의 기동 중에 있어서의 유저의 지시에 기초하여, 베이스 공간의 레이아웃 정보를 편집한다. 이에 의해, 유저는, 베이스 공간의 레이아웃 정보를 희망대로 편집할 수 있다.
또한, 제5 실시 형태에 의하면, 편집된 레이아웃 정보가 (그대로)베이스 공간 레이아웃 서버(54)에 송신되어, 보존될 수 있다. 이에 의해, 편집된 베이스 공간 레이아웃 정보를 다음번 이후 언제든지 이용하는 것이 가능해진다. 또한, 당해 베이스 공간 레이아웃 정보를 콘텐츠로서 유통시키는 것도 가능해진다.
<<6. 제6 실시 형태>>
이상, 제5 실시 형태에 대해 설명하였다. 그런데, 공간 공유 중에 있어서, 유저(4a)가 위치하는 원래 공간(2a) 내의 특정한 오브젝트(또는 인물)를 (별도의 원래 공간(2b) 내의) 다른 유저(4b)에게 보이고 싶지 않은 경우도 상정된다. 이러한 경우, 원래 공간(2a) 내의 오브젝트 공유의 가부를 유저(4a)가 지정 가능한 것이 바람직하다.
다음에, 제6 실시 형태에 대해 설명한다. 후술하는 바와 같이, 제6 실시 형태에 따르면, 유저가 위치하는 원래 공간 내의 오브젝트 공유의 가부를 유저가 지정할 수 있다.
<6-1. 구성>
{6-1-1. 입력부(22)}
먼저, 제6 실시 형태에 따른 구성에 대해 설명한다. 도 64는, 제6 실시 형태에 따른 입력부(22)의 구성예를 도시한 기능 블록도이다. 도 64에 나타내는 바와 같이, 제6 실시 형태에 따른 입력부(22)는, (도 2에 도시한) 제1 실시 형태와 비교하여, 표시 가부 설정 정보 DB(230)를 더 포함한다.
(6-1-1-1. 표시 가부 설정 정보 DB(230))
표시 가부 설정 정보 DB(230)은, 입력부(22)가 위치하는 실공간 내의 각 오브젝트에 관한 표시 가부의 설정 정보를 저장하는 데이터베이스이다. 표시 가부 설정 정보 DB(230)에서는, 예를 들어 서버(10-6)로부터 수신되는 제1 제어 정보에 기초하여, 각 오브젝트의 표시 가부가 설정 및 변경된다. 예를 들어, 서버(10-6)는, 후술하는 표시 가부 설정 에디터의 기동 중에 있어서의 유저의 지시(제스처나 음성 커맨드 등)의 인식 결과에 기초하여 각 오브젝트의 표시 가부를 결정하고, 그리고, 결정한 정보를 제1 제어 정보로서 입력부(22)로 송신한다. 이에 의해, 입력부(22)는, 수신된 제1 제어 정보에 기초하여, 표시 가부 설정 정보 DB(230)의 등록 내용을 변경할 수 있다.
(6-1-1-2. 표시 가부 설정 에디터)
여기서, 상술한 표시 가부 설정 에디터의 내용에 대해 보다 상세하게 설명한다. 표시 가부 설정 에디터는, 유저가 위치하는 실공간 내의 각 오브젝트의 표시 가부를 설정하기 위한 모드이다. 예를 들어, 표시 가부 설정 에디터에서는, 유저가 위치하는 실공간 내의 각 오브젝트가, 예를 들어 당해 실공간에 대응하는 가상 공간(예를 들어 공유 공간 등) 상에 표시될 수 있다. 그리고, 유저는, 표시된 오브젝트의 영상을 보면서, 각 오브젝트의 표시 가부를 설정할 수 있다. 또한, 표시부(246)에 표시되어 있는 각 오브젝트의 위치에, 당해 오브젝트에 설정되어 있는 표시 가부를 나타내는 마크가 표시되어도 된다. 또는 표시 불가로 설정된 오브젝트는 비표시로 되어도 된다.
예를 들어, 표시 가부 설정 에디터의 기동 및 종료는, 예를 들어 공유 공간 상에 있어서의, 유저의 제스처나 음성 커맨드의 인식 결과 등에 기초하여 실행된다. 또한, 표시 가부 설정 에디터에서는, 유저의 지시(예를 들어 제스처나 음성 커맨드 등)의 인식 결과에 기초하여, 각 오브젝트의 표시 가부가 설정된다. 또한, 유저는, 각 오브젝트의 표시 가부를 개별로 지정하는 것도 가능하고 또는 예를 들어 「여기부터 저쪽의 오브젝트는 전부 표시 불가!」 등의 발화에 의해 복수의 오브젝트의 표시 가부를 일괄하여 지정하는 것도 가능하다.
또한, 표시 가부 설정 에디터에 있어서 표시 가부의 지시가 1회 인식될 때마다, 서버(10-6)는, 오브젝트 관리 정보 DB(164)에 있어서의, 해당 오브젝트 공유 가부에 관한 설정 정보를 변경한다. 또한, 이 경우, 서버(10-6)는, 다음의 프레임 이후에 있어서, 당해 오브젝트의 표시 양태를 변경시켜, 공유 공간 Frame 데이터를 생성한다. 예를 들어, 서버(10-6)는, 다음의 프레임 이후에 있어서, 당해 오브젝트의 투과도를 높이거나, 표시 색을 바꾸거나 또는 점멸시킨다.
또한, 표시 가부 설정 에디터의 기동 중에, 설정 종료의 조작이 이루어지면, 서버(10-6)(제어 정보 송신부(122))는, 표시 불가로 설정된 오브젝트의 정보를 제1 제어 정보로서, (당해 오브젝트의 원래 공간의) 입력부(22)로 송신한다. 이에 의해, 입력부(22)는, 수신된 제1 제어 정보에 기초하여, 표시 가부 설정 정보 DB(230)의 등록 내용을 변경할 수 있다.
-표시 가부 설정 에디터의 사용예
여기서, 도 65를 참조하여, 표시 가부 설정 에디터의 사용예에 대해 설명한다. 먼저, 예를 들어 공유 공간 상에서, 표시 가부 설정 에디터의 기동을 위한 음성 커맨드를 유저(4)가 발한 것이 인식되면, 서버(10-6)는 표시 가부 설정 에디터를 기동한다. 그리고, 도 65의 A에 도시된 바와 같이, 유저(4)가 위치하는 실공간 내의 오브젝트가 공유 공간 상에 배치된 영상이, (유저(4)가 열람하는) 표시부(246)에 표시된다.
그 후, 예를 들어 베드(640)를 표시 불가로 설정하는 것을 유저(4)가 희망하고, 그리고, 도 65의 B에 도시된 바와 같이, 베드(640)를 표시 불가로 설정하기 위한 음성 커맨드를 유저(4)가 발했다고 하자. 이 경우, 도 65의 C에 도시된 바와 같이, 서버(10-6)는, 베드(640)를 표시 불가로 결정한다. 또한, 이 때, 서버(10-6)는, 다음의 프레임 이후에 있어서, 예를 들어 베드(640)를 비표시로 하는 등, 베드(640)의 표시 양태를 변화시켜도 된다.
그 후, 표시 가부 설정 에디터의 종료를 위한 음성 커맨드를 유저(4)가 발하면, 서버(10-6)는, 현시점까지 표시 불가로 설정된 모든 오브젝트의 정보를 제1 제어 정보로서, (유저(4)가 위치하는 원래 공간의) 입력부(22)로 송신한다.
-변형예
또한, 변형예로서, 각 오브젝트의 표시 가부는, 상대 유저마다 설정할 수도 있다. 예를 들어, 어떤 오브젝트에 관해서, 가족에게는 표시 가능으로 설정하며, 또한, 친구에게는 표시 불가로 설정할 수도 있다.
또한, 다른 변형예로서, 입력부(22) 또는 서버(10-6)가, 각 오브젝트의 표시 가부를 소정의 조건에 기초하여 자동적으로 설정해도 된다. 예를 들어, 표시 불가의 오브젝트의 종류가 미리 테이블에 등록될 수 있다. 이 경우, 입력부(22) 또는 서버(10-6)는, 해당 종류의 오브젝트를 일괄하여 표시 불가로 설정해도 된다. 이 변형예에 의하면, 예를 들어 다수의 유저가 다른 유저에게 보이고 싶지 않은 종류의 오브젝트에 관해서는, 자동적으로 표시 불가로 설정할 수 있다. 그리고, 각 유저는 설정 작업을 행할 필요가 없어, 편리성이 향상된다.
(6-1-1-3. 인식부(224))
제6 실시 형태에 따른 인식부(224)는, 표시 가부 설정 정보 DB(230)의 등록 내용에 기초하여, 각 오브젝트에 관하여 인식 처리를 실행한다. 예를 들어, 인식부(224)는, 표시 가부 설정 정보 DB(230)에 있어서 표시 가능으로 설정되어 있는 오브젝트에 관해서만, 당해 오브젝트의 인식 처리를 행한다. 이에 의해, 처리의 부하를 줄일 수 있다.
(6-1-1-4. 스트림 생성부(226))
제6 실시 형태에 따른 스트림 생성부(226)는, 또한, 표시 가부 설정 정보 DB(230)의 등록 내용에 기초하여 스트림을 생성한다. 예를 들어, 스트림 생성부(226)는, 표시 가부 설정 정보 DB(230)에 있어서 표시 불가로 설정되어 있는 모든 오브젝트의 3D 데이터를 생성 대상의 스트림으로부터 제외함으로써, 스트림을 생성한다. 이에 의해, 표시 불가로 설정되어 있는 모든 오브젝트의 3D 데이터는, 서버(10-6)에 송신되지 않게 된다. 따라서, 통신량을 줄일 수 있다.
<6-2. 효과>
이상 설명한 바와 같이, 제6 실시 형태에 따르면, 유저가 위치하는 원래 공간 내의 각 오브젝트에 관해서, (공유 공간에 대응하는) 자유 시점의 콘텐츠에 있어서의 표시의 가부를 유저는 설정할 수 있다. 이에 의해, 공간 공유를 가능하게 하면서, 유저의 원래 공간(2a) 내의 특정한 오브젝트(인물을 포함함)가, 별도의 원래 공간(2b) 내의 다른 유저에게 보이지 않도록 제한할 수 있다.
<6-3. 변형예>
{6-3-1. 변형예 1}
또한, 변형예로서, 서버(10-6)는, 어떤 실공간이 베이스 공간으로서 설정되어 있는지 여부에 따라, 당해 실공간에 관하여 설정되어 있는, 오브젝트의 표시 제한의 설정을 동적으로 변경해도 된다. 예를 들어, 어떤 실공간이 베이스 공간으로서 설정되어 있는 경우에는, 서버(10-6)는, 당해 실공간에 관하여 설정되어 있는, 오브젝트의 표시 제한의 설정을 동적으로 풀어도 된다.
{6-3-2. 변형예 2}
또한, 다른 변형예로서, 공유 공간에 참가 중인 각 실공간 내의 유저는, 당해 공유 공간에 참가 중인 다른 실공간에 있어서 표시 제한되어 있는 오브젝트에 관한 표시의 허가를, 당해 다른 실공간 내의 유저에 대해(예를 들어 UI 등을 사용해) 요구할 수도 있다. 그리고, 당해 표시 요구에 대해 승낙하는 것이(예를 들어, 출력부(24)에 의해 표시되는 UI 등을 통하여), 당해 표시 요구의 송신처의 실공간(2b) 내의 유저에 의해 회답된 경우에는, 서버(10-6)는, 실공간(2b) 내의 오브젝트의 표시 제한의 설정을 당해 표시 요구에 따라 완화하거나, 해제해도 된다.
<<7. 제7 실시 형태>>
이상, 제6 실시 형태에 대해 설명하였다. 그런데, 복수의 실공간을 합성함으로써 공유 공간을 생성하는 장면에서는, 당해 복수의 실공간끼리의 바람직한 위치 관계는, 당해 복수의 실공간의 각각에 위치하는 유저끼리의 상황에 따라 변화될 수 있다. 예를 들어, 두 실공간 내의 유저가 공유 공간 상에서 각각 의자에 앉으면서 마주보고 이야기를 하는 상황에서는, 당해 두 실공간 내의 유저끼리의 눈 높이가 맞는 것이 바람직하다. 또한, 테이블 상에 놓인 노트 을 다른 실공간의 유저와 함께 보는 상황에서는, 두 실공간의 테이블 높이가 맞는 것이 바람직하다.
그러나, 복수의 공간의 위치 관계를 유저가 상황에 따라 때마다 재설정하는 것은, 유저의 부하가 크다.
다음에, 제7 실시 형태에 대해 설명한다. 후술하는 바와 같이, 제7 실시 형태에 따른 서버(10-7)는, 복수의 실공간의 각각에 위치하는, (서로) 유사하다고 인식되는 오브젝트를 기준 오브젝트로서 각각 결정하고, 그리고, 당해 기준 오브젝트에 관련지어져 있는 기준점 또는 기준면에 기초하여, 당해 복수의 실공간을 합성함으로써, 공유 공간을 생성한다. 이에 의해, 각 유저의 상황에 적합한 위치 관계로 두 실공간을 합성할 수 있다.
또한, 제7 실시 형태에서는, 기본적으로, 복수의 실공간을 그대로 합성함으로써, 공유 공간을 생성하는 것을 상정한다. 또한, 표시부(246)가 AR 디바이스인 것을 상정한다. 또한, 제7 실시 형태에 따른 베이스 공간은, 공유 공간에 있어서의 각 오브젝트의 위치 정렬에만 사용되는 공간일 수 있다. 즉, 베이스 공간은, 기본적으로, 표시부(246)에 표시되지 않는다.
<7-1. 구성>
먼저, 제7 실시 형태에 따른 서버(10-7)의 구성에 대해 설명한다. 또한, 서버(10-7)에 포함되는 구성 요소는, (도 21에 도시된) 제2 실시 형태와 동일하다. 이하에서는, 제2 실시 형태와는 다른 기능을 갖는 구성 요소에 대해서만 설명을 행한다.
{7-1-1. 공유 공간 합성부(152)}
(7-1-1-1. 공간의 합성)
제7 실시 형태에서는, 복수의 종류의 오브젝트 사이의 일반적인 유사도(또는 관련도)가 미리 테이블에 등록될 수 있다. 그리고, 공유 공간 합성부(152)는, 별도의 실공간에 위치하는 오브젝트끼리의 유사도와, 각 실공간에 있어서의 오브젝트와 유저의 위치 관계에 기초하여, 당해 복수의 실공간의 합성 방법을 결정한다.
예를 들어, 실공간(2a) 및 실공간(2b)을 합성하는 경우에는, 공유 공간 합성부(152)는, 먼저, 실공간(2a) 내의 유저 근처에 위치하는 각 오브젝트와, 실공간(2b) 내의 유저의 근처에 위치하는 각 오브젝트 사이의 유사도에 기초하여, 실공간(2a) 내의 하나의 오브젝트 및 실공간(2b) 내의 하나의 오브젝트를 각각 기준 오브젝트로서 결정한다. 그리고, 공유 공간 합성부(152)는, 결정된 두 기준 오브젝트에 각각 관련지어져 있는, 기준점(또는 기준면)의 맞춤 방식에 기초하여, 당해 두 기준 오브젝트에 각각 대응하는 기준점(또는 기준면)을 맞춤으로써, 실공간(2a) 및 실공간(2b)을 합성한다.
더욱 상세하게는, 공유 공간 합성부(152)는, 먼저, 실공간(2a) 내의 유저 근처에 위치하는 각 오브젝트와, 실공간(2b) 내의 유저의 근처에 위치하는 각 오브젝트 사이의 유사도를 각각 당해 테이블을 참조함으로써 특정한다. 그리고, 공유 공간 합성부(152)는, 특정한 유사도가 가장 높은, 실공간(2a) 내의 오브젝트와 실공간(2b) 내의 오브젝트의 조합을 추출하고, 그리고, 추출한 실공간(2a) 내의 하나의 오브젝트 및 실공간(2b) 내의 하나의 오브젝트를 각각 기준 오브젝트로서 결정한다. 다음에, 공유 공간 합성부(152)는, 결정한 기준 오브젝트에 관련지어서 당해 테이블에 등록되어 있는, 기준점(또는 기준면)의 맞추는 방법을 특정한다. 그리고, 공유 공간 합성부(152)는, 특정한 기준점(또는 기준면)의 맞추는 방법에 따라, 당해 두 기준 오브젝트의 각각에 관련지어져 있는 기준점(또는 기준면)을 맞춤으로써, 실공간(2a) 및 실공간(2b)을 합성한다.
(7-1-1-2. 위치 관계의 결정)
또한, 공유 공간 합성부(152)는, 복수의 실공간을 합성할 때의 위치 관계를, 입력부(22)의 인식부(224) 또는 서버(10-7)의 인식부(104)의 인식 결과에 기초하여 결정하는 것이 가능하다. 여기서, 당해 인식 결과의 예로서는, 오브젝트의 종류(예를 들어 바닥, 책상, 의자, 기타, 피아노 등)의 인식 결과나, 사람에 관한 인식 결과(예를 들어 관절 정보, 얼굴 위치, 제스처 등) 등을 들 수 있다. 또는 자이로 데이터와 조맞춤으로써, 수평면이나 수직면 등의 기하 정보가 당해 인식 결과로서 이용되어도 된다.
여기서, 도 66 및 도 67을 참조하여, 상기한 내용에 대해 보다 상세하게 설명한다. 또한, 도 66 및 도 67에서는, 실공간(2a)의 센싱에 기초로 한 Frame 데이터 및 실공간(2b)의 센싱에 기초로 한 Frame 데이터가 각각 그대로 합성됨으로써 공유 공간이 생성되는 예를 도시하고 있다.
예를 들어, 도 66에 도시된 바와 같이, 공유 공간 합성부(152)는, 먼저, 실공간(2a)의 Frame 데이터 및 실공간(2b)의 Frame 데이터로부터 각각 기준점으로서 3점씩 추출한다. 예를 들어, 공유 공간 합성부(152)는, 실공간(2a) 내의 오브젝트(42a)(유저)의 헤드의 점(700a), 점(700a)으로부터 오브젝트(42a)의 전방 방향으로 단위 길이만큼 이동한 점(700b), 및 점(700a)으로부터 중력 방향으로 단위 길이만큼 이동한 점(700c)을 각각 기준점으로서 추출한다. 또한, 공유 공간 합성부(152)는, 실공간(2b) 내의 오브젝트(42b)(유저)의 헤드의 점(700d), 점(700d)으로부터 오브젝트(42b)의 전방 방향으로 단위 길이만큼 이동한 점(700e), 및 점(700d)으로부터 중력 방향으로 단위 길이만큼 이동한 점(700f)을 각각 기준점으로서 추출한다.
그리고, 공유 공간 합성부(152)는, 예를 들어 도 67에 도시된 바와 같이, 오브젝트(42a)의 얼굴과 오브젝트(42b)의 얼굴이 마주 향하는 위치 관계로, 실공간(2a)의 Frame 데이터로부터 추출된 3개의 기준점, 및 실공간(2b)의 Frame 데이터로부터 추출된 3개의 기준점을 공유 공간 상에 배치한다.
그리고, 공유 공간 합성부(152)는, 설정한 위치 관계에 기초하여, 공간(2a)의 좌표계(로컬 좌표계)로부터 공유 공간 좌표계(글로벌 좌표계)로 변환하기 위한 변환 행렬, 및 공간(2b)의 좌표계(로컬 좌표계)로부터 공유 공간 좌표계로 변환하기 위한 변환 행렬을 산출한다. 그리고, 공유 공간 합성부(152)는, 도 67에 도시된 바와 같이, 실공간(2a)의 Frame 데이터와 실공간(2b)의 Frame 데이터를 합성한다. 이와 같이, 각 유저의 원래 공간의 인식 결과를 사용함으로써 각 유저에게 적합한 위치 관계를 자동적으로 결정할 수 있다.
-오브젝트의 인식 결과
이하, 복수의 실공간을 합성할 때의 위치 관계의 결정 방법의 예에 대해 구체적으로 설명한다. 예를 들어, 공유 공간 합성부(152)는, 복수의 실공간을 합성할 때의 위치 관계를, 당해 복수의 실공간 중 어느 것에 있어서의 오브젝트의 인식 결과에 기초하여 결정하는 것이 가능하다. 예를 들어, 실공간(2a) 내의 유저(4a)가 소파에 앉아 있으며, 또한, 실공간(2a)과 공간(2b)을 합성할 때에는, 공유 공간 합성부(152)는, 실공간(2b) 내의 거실의 빈 영역 내에, 실공간(2a) 내의 소파 및 유저(4a)를 (함께)배치하는 것을 결정한다. 또한, 실공간(2a)과 실공간(2b)을 합성할 때에는, 공유 공간 합성부(152)는, 바닥이 일치되도록 실공간(2a)과 실공간(2b)을 합성하는 것을 결정해도 된다.
또는 공유 공간 합성부(152)는, 복수의 실공간을 합성할 때의 위치 관계를, 당해 복수의 실공간 내의 오브젝트의 인식 결과에 기초하여 결정하는 것도 가능하다. 예를 들어, 공유 공간 합성부(152)는, 두 실공간 내에 각각 위치하는 텔레비전 수신기의 중심 부분이 겹치도록 정렬시키고, 당해 두 실공간을 합성하는 것을 결정한다. 또는 공유 공간 합성부(152)는, 실공간(2a), 및 실공간(2b)에 각각 위치하는 책상의 높이를 맞춤으로써, 당해 두 실공간을 합성하는 것을 결정한다. 또한, 공유 공간 합성부(152)는, 실공간(2a) 내의 유저와 실공간(2b) 내의 유저가 당해 책상에 있어서 마주 보거나 또는 인접하는 위치 관계가 되도록 당해 두 실공간을 합성하는 것을 결정한다. 또는 공유 공간 합성부(152)는, 실공간(2a) 및 실공간(2b)에 각각 위치하는 소파의 시트면을 맞추고, 또한, 실공간(2a)의 소파와 실공간(2b)의 소파가 인접하도록 당해 두 실공간을 합성하는 것을 결정한다. 이에 의해, 실공간(2a)의 유저와 실공간(2b)의 유저가 인접하여 소파에 앉아 있는 공유 공간이 생성될 수 있다. 또는 공유 공간 합성부(152)는, 실공간(2a) 및 실공간(2b)에 각각 위치하는 피아노의 건반이 겹치도록 당해 두 실공간을 합성하는 것을 결정한다. 또는 실공간(2a) 및 실공간(2b)에 각각 위치하는 기타의 지판이 겹치도록 당해 두 실공간을 합성하는 것을 결정한다.
-사람의 인식 결과
또는 공유 공간 합성부(152)는, 복수의 실공간을 합성할 때의 위치 관계를, 당해 복수의 실공간 내에 위치하는 사람에 관한 인식 결과에 기초하여 결정하는 것도 가능하다. 예를 들어, 공유 공간 합성부(152)는, 실공간(2a) 내의 유저의 눈앞에, 실공간(2b) 내의 유저가 위치하는 위치 관계로, 당해 두 실공간을 합성하는 것을 결정한다. 또는 공유 공간 합성부(152)는, 실공간(2a) 내의 유저와, 실공간(2b) 내의 유저가 얼굴이 대향하는 위치 관계로, 당해 두 실공간을 합성하는 것을 결정한다.
-제스처의 인식 결과: 한사람에 의한 지정
또는 공유 공간 합성부(152)는, 복수의 실공간을 합성할 때의 위치 관계를, 당해 복수의 실공간 중의 어느 것에 위치하는 한사람의 유저의 제스처의 인식 결과에 기초하여 결정하는 것도 가능하다. 예를 들어, 실공간(2a) 내의 유저가 (실공간(2a) 내의) 바닥을 가리킨 것이 인식된 경우에는, 공유 공간 합성부(152)는, 손가락이 가리키는 바닥의 위치에, 공간(2b) 내의 유저 (또는 다른 오브젝트)가 위치하는 위치 관계로, 실공간(2a) 및 실공간(2b)을 합성하는 것을 결정한다.
도 68은, 실공간(2b) 내의 유저가 손가락에 의해, 공간 합성 시에 있어서의, 실공간(2a) 내의 유저(4a)의 배치 위치를 지정하는 예를 나타낸 설명도이다. 예를 들어, 도 68의 B에 도시된 바와 같이, (실공간(2b) 내의) 바닥을 유저가 가리킨 것이 인식된 경우에는, 공유 공간 합성부(152)는, 당해 손가락에 기초하는 3점을 실공간(2b)에 관한 기준점으로서 각각 결정한다. 보다 구체적으로는, 공유 공간 합성부(152)는, 손가락이 가리키는 직선과 바닥(또는 소파의 시트면)의 교점(점 B1), 당해 교점을 바닥(또는 소파의 시트면) 위에 가리키는 원래의 방향으로 단위 길이 이동한 점(점 B2), 및 점 B1과 점 B2를 연결하는 직선과 직교하는, 바닥면(또는 소파의 시트면) 상의 직선 상의 점(점 B3)의 3점을 기준점으로서 각각 결정한다.
또한, 도 68의 A에 도시된 바와 같이, 공유 공간 합성부(152)는, 실공간(2a) 내의 유저(4a)에 기초하는 3점을 실공간(2a)에 관한 기준점으로서 각각 결정한다. 보다 구체적으로는, 공유 공간 합성부(152)는, 실공간(2a) 내의 유저(4a)의 머리부터 바닥(또는 소파의 시트면)으로의 수직선과 바닥(또는 소파의 시트면)의 교점(점 A1), 당해 교점을 유저(4a)의 전방 방향으로 단위 길이만큼 이동한 점(점 A2) 및 점 A1과 점 A2를 연결하는 직선과 직교하는 바닥면(또는 소파의 시트면) 상의 직선 상의 점(점 A3)의 3점을 기준점으로서 각각 결정한다. 그리고, 공유 공간 합성부(152)는, 예를 들어 실공간(2a)에 관한 기준점 A1, A2 및 A3과, 실공간(2b)에 관한 기준점 B1, B2 및 B3이 각각 일치하는 위치 관계로, 실공간(2a) 및 실공간(2b)을 합성하는 것을 결정한다.
또한, 공유 공간 합성부(152)는, 실공간(2b) 내의 유저의 손가락이 가리키는 위치에 따라, 실공간(2a)과 실공간(2b)의 합성 방법을 변경해도 된다. 예를 들어, 도 68에 나타낸 화살표(710a)와 같이, 당해 손가락이 가리키는 위치가 바닥인 경우에는, 공유 공간 합성부(152)는, 실공간(2a) 내의 소파(42a) 및 유저(4a)를 당해 손가락 위치에 배치되도록, 실공간(2a)과 실공간(2b)을 합성해도 된다. 또한, 도 68에 나타낸 화살표(710b)와 같이, 당해 손가락 위치가 소파(42b)인 경우에는, 공유 공간 합성부(152)는, 실공간(2a) 내의 유저(4a)만을 당해 손가락 위치에 배치하도록, 실공간(2a)과 실공간(2b)을 합성해도 된다. 이상의 결정예에 의하면, 별도의 공간 내의 유저나 오브젝트의 배치 위치를, 유저는 손가락 등의 조작에 의해 직감적으로 지정할 수 있다.
-제스처의 인식 결과: 복수인에 의한 지정
또는 복수의 실공간 내의 유저가 소정의 제스처를 동시에 행하고 있음이 인식된 경우에는, 공유 공간 합성부(152)는, 인식된 제스처에 기초하여 당해 복수의 실공간을 합성하는 것을 결정하는 것도 가능하다. 예를 들어, 실공간(2a) 내의 유저 및 실공간(2b) 내의 유저가 악수의 제스처를 동시에 행하는 것이 인식된 경우에는, 공유 공간 합성부(152)는, 당해 두 명의 유저가 각각 내민 손이 겹치도록, 실공간(2a) 및 실공간(2b)을 합성하는 것을 결정한다. 또한, 실공간(2a) 내의 유저 및 실공간(2b) 내의 유저가 하이 터치의 제스처를 동시에 행하는 것이 인식된 경우에는, 공유 공간 합성부(152)는, 당해 두 명의 유저가 각각 든 손(손바닥 등)이 겹치도록, 실공간(2a) 및 실공간(2b)을 합성하는 것을 결정한다. 또한, 실공간(2a) 내의 유저 및 실공간(2b) 내의 유저가 가위 바위 보의 제스처를 동시에 행하는 것이 인식된 경우에는, 공유 공간 합성부(152)는, 당해 두 명의 유저가 각각 가리킨 손 사이에 일정한 공극이 위치하는 위치 관계로, 실공간(2a) 및 실공간(2b)을 합성하는 것을 결정한다.
도 69는, 실공간(2a) 내의 유저(4a)와 실공간(2b) 내의 유저(4b)가 악수의 제스처를 동시에 행한 것이 인식된 경우에 있어서의, 두 실공간의 합성예(공유 공간의 생성예)를 나타낸 설명도이다. 예를 들어, 도 69의 A에 도시된 바와 같이, 공유 공간 합성부(152)는, 유저(4a)가 내민 손에 기초하는 3점을 실공간(2a)에 관한 기준점으로서 결정한다. 보다 구체적으로는, 공유 공간 합성부(152)는, 유저(4a)가 내민 손의 위치에 대응하는 점(점 C1), 점 C1로부터 유저(4a)의 전방 방향으로 단위 길이만큼 이동한 점(점 C2) 및 점 C1로부터 중력 방향으로 단위 길이만큼 이동한 점(점 C3)의 3점을 기준점으로서 각각 결정한다. 마찬가지로, 도 69의 B에 도시된 바와 같이, 공유 공간 합성부(152)는, 유저(4b)가 내민 손에 기초하는 3점(점 D1, 점 D2, 및 점 D3)을 실공간(2b)에 관한 기준점으로서 각각 결정한다. 그리고, 공유 공간 합성부(152)는, 점 C1과 점 D1이 겹치고, 벡터 C1C3과 벡터 D1D3이 겹치고, 또한, 벡터 C1C2와 벡터 D1D2가 마주 보는 위치 관계로, 실공간(2a)과 실공간(2b)을 합성하는 것을 결정한다. 이에 의해, 당해 공유 공간에 대응하는 자유 시점의 콘텐츠에 있어서, 도 69의 C 및 D에 도시된 바와 같이, 유저가 가리킨 손끝에, 별도의 실공간의 유저가 표시될 수 있다.
이 결정예에 의하면, 제스처의 동시성을 사용함으로써, 공유 공간에 있어서의 최적인 위치 관계를 효율적으로 설정할 수 있다. 예를 들어, 공유 공간에 있어서의 최적인 위치 관계를 찾기 위한, 유저의 조작수를 대폭 줄일 수 있다.
-조합
또는, 공유 공간 합성부(152)는, 상술한 오브젝트의 인식 결과, 사람의 인식 결과, 및 제스처의 인식 결과 중 어느 둘 이상의 조합에 기초하여, 복수의 실공간을 합성하는 것을 결정해도 된다. 예를 들어, 실공간(2a) 내의 유저 및 실공간(2b) 내의 유저가 각각의 실공간 내의 책상을 동시에 두드린 것이 인식된 경우에는, 공유 공간 합성부(152)는, 각각의 실공간 내의 책상의 높이가 일치하는 위치 관계로, 실공간(2a) 및 실공간(2b)을 합성하는 것을 결정한다.
(7-1-1-3. 위치 관계의 변경)
-행동 인식
또한, 복수의 실공간이 합성된 후(공유 공간이 생성된 후)에, 공유 공간 합성부(152)는, 당해 위치 관계를 소정의 조건에 기초하여 변경하는 것도 가능하다. 예를 들어, 실공간(2a) 내의 유저(학생)와 실공간(2b) 내의 유저(교사) 사이에서 종이 접기의 수업을 행하는 경우에는, 공유 공간 합성부(152)는, 초기 상태에서는, 학생의 손앞에서 예를 들어 전방 30㎝의 위치에 교사의 손이 배치되는 위치 관계로, 실공간(2a) 및 실공간(2b)을 합성해도 된다. 또한, 수업 개시 후에, 학생이 종이 접기를 갖고 이동하는 것이 인식된 경우에는, 공유 공간 합성부(152)는, 공유 공간 상에서의 교사의 손의 위치가 종이 접기에 추종하여 이동하도록, 두 실공간의 위치 관계를 순차 변경해도 된다(공유 공간을 순차 재생성해도 된다).
또한, 위치 관계 변경 모드의 기동 중에 있어서, 실공간(2a) 내의 유저가 실공간(2b) 내의 오브젝트(유저를 포함함)를 쥐고 움직이는 것이 인식된 경우에는, 공유 공간 합성부(152)는, 인식 결과에 따라, 실공간(2a) 및 실공간(2b)의 위치 관계를 순차 변경해도 된다. 또한, 위치 관계 변경 모드의 기동 및 종료는, 예를 들어 제스처나 음성 커맨드의 인식 또는 UI에 대한 조작 등에 기초하여 실행된다.
-마커의 위치에 의한 지정
또한, 복수의 실공간이 합성된 후에, 공유 공간 합성부(152)는, 소정의 마커(위치 정렬용 물체 등)의 위치 변화에 기초하여, 당해 위치 관계를 변경하는 것이 가능하다. 예를 들어, 특정한 의자가 소정의 마커로서 미리 등록되어 있는 경우에는, 공유 공간 합성부(152)는, 어느 원래 공간에 있어서의 당해 의자의 위치 변화에 따라, 공유 공간 상에서의 각 실공간의 위치 관계를 순차 변경해도 된다. 이 변경예에 의하면, 유저는 소정의 마커를 이동시킴으로써, 별도의 실공간의 위치 관계를 직감적으로 변경할 수 있다. 또한, 유저는 실제로 오브젝트에 접촉하므로, 예를 들어 가상 공간에서의 조작과 비교하여, 조작감(촉각 등)을 얻을 수 있다.
(7-1-1-4. 표시 대상 오브젝트 선택)
또한, 공유 공간 합성부(152)는, 복수의 실공간 중 적어도 어느 것에 위치하는 유저의 제스처의 인식 결과에 기초하여, 표시 대상 오브젝트 선택과, 당해 오브젝트의 표시 위치의 결정을 동시에 행하는 것도 가능하다. 예를 들어, 실공간(2a) 내의 유저가 의자에 앉아 있으며, 또한, 별도의 실공간(2b) 내의 유저가 바닥을 가리킨 것이 인식된 경우에는, 공유 공간 합성부(152)는, 실공간(2a) 내의 유저가 앉아 있는 의자 및 당해 유저를 공유 공간 상에(함께)배치하는 것을 결정한다. 또한, 실공간(2a) 내의 유저가 의자를 가리킨 것이 인식된 경우에는, 공유 공간 합성부(152)는, 실공간(2b) 내의 유저만을(의자에 앉아 있는 포즈인 채로) 공유 공간 상에 배치하는 것을 결정한다.
또한, 공유 공간 합성부(152)는, 실공간(2a) 내의 유저의 제스처 인식과, 별도의 실공간(2b) 내의 오브젝트(유저 등)의 상황에 기초하여, 표시 대상 오브젝트를(대략적으로)결정하거나, 당해 표시 대상 오브젝트 배치 위치를(대략적으로)결정하는 것도 가능하다. 예를 들어, 실공간(2a) 내의 유저가(실공간(2a) 내의) 의자를 가리키면서, 또한, 실공간(2b) 내의 유저가 서 있는 것이 인식된 경우에는, 공유 공간 합성부(152)는, 당해 손가락 위치의 의자 근처의 바닥 상에 실공간(2b) 내의 유저를 (서 있는 자세 그대로)배치하는 것을 결정한다. 이 결정예에 의하면, 예를 들어 센서부(220)의 정밀도가 낮은 경우에도, 대략 유저의 의도대로 오브젝트를 선택하거나, 배치할 수 있다.
(7-1-1-5. 모드의 전환)
또는 복수의 실공간을 합성할 때의 위치 관계의, 복수의 매칭 방식이 각각, 사전 모드로서 등록될 수 있다. 그리고, 당해 모드는, 유저가 수동(예를 들어 제스처나 음성 커맨드 등)으로 전환 가능하다.
또한, 당해 모드는, 예를 들어 유저의 행동 인식 결과 등에 기초하여, 자동으로 전환 가능하다. 예를 들어, 서버(10-7)는, 장면을 자동으로 검출하고, 그리고, 검출된 장면에 대응하는 모드로 자동적으로 전환해도 된다. 일례로서, 실공간(2a) 내의 유저(4a) 및 실공간(2b) 내의 유저(4b)가 공유 공간에 참가하고 있으며, 또한, 당해 두 명의 유저가 각각 원래 공간 내의 테이블에 앉은 것이 인식된 경우에는, 서버(10-7)는, 테이블의 높이를 일치하는 모드로 자동적으로 전환한다. 이 제어예에 의하면, 유저가 설정 모드를 전환하는 수고가 불필요하게 된다.
또한, 실공간(2a) 내의 유저가, 표시부(246)에 표시되어 있는 가상의 노트 상에(실공간(2a) 내의) 실물 노트를 펴, 또한, 당해 가상의 노트에 대해 소정의 임계값 이하까지 당해 실물 노트를 접근시킨 것이 인식된 경우에는, 서버(10-7)는, 「노트 매칭 모드」로 자동적으로 전환해도 된다. 이에 의해, 미세 조정에 필요한 수고를 삭감할 수 있으며, 또한, 표시 위치의 동적인 변경이 가능해진다.
또한, 오브젝트의 인식 결과와, 인식된 오브젝트를 맞추는 방식의 이력이 기록될 수 있다. 그리고, 서버(10-7)는, 당해 이력에 기초하여, 위치 관계의 설정 모드를 자동적으로 전환해도 된다. 예를 들어, 서도를 행하고 있는 유저가 2매의 화선지를 겹친 것이 인식된 경우에는, 당해 조작이 이력으로서 기록될 수 있다. 그리고, 다음번 이후에, 2매의 화선지가 접근되었음이 인식된 경우에는, 서버(10-7)는, 이력에 기초하여, 「2매의 화지를 겹치는 모드」로 자동적으로 설정하는 것이 가능하다. 또한, 피아노의 레슨 시간이 된 경우에는, 서버(10-7)는, 이력에 기초하여, 「건반을 맞추는 모드」로 자동적으로 설정하는 것이 가능하다. 이들 제어예에 의하면, 위치 관계의 설정 모드를 유저가 매회 지정하는 수고를 줄일 수 있다. 또한, 이력이 대량으로 축적됨으로써, 최적의 모드가 자동적으로 선택될 수 있다.
<7-2. 처리의 흐름>
이상, 제7 실시 형태의 구성에 대해 설명하였다. 다음에, 제7 실시 형태에 따른 처리의 흐름에 대해, 도 70을 참조하여 설명한다. 도 70은, 제7 실시 형태에 따른, 각 실공간의 로컬 좌표계로부터 공유 공간 좌표계로의 변환 행렬을 산출하는 처리의 흐름을 나타낸 흐름도이다. 이하에서는, 실공간 A에 관해서, 실공간 A의 로컬 좌표계로부터 공유 공간 좌표계에의 변환 행렬을 산출하는 예에 대해 설명한다. 또한, 본 처리의 흐름은, 임의의 실공간에 관하여 마찬가지로 적용될 수 있다.
도 70에 도시된 바와 같이, 먼저, 서버(10-7)는, 새로운 Frame 데이터를 실공간 A로부터 수신한다(S7001).
계속해서, 공유 공간 합성부(152)는, 입력부(22)의 인식부(224) 또는 서버(10-7)의 인식부(104)에 의한, (당해 Frame 데이터에 대응하는) 인식 결과를 취득한다(S7003).
계속해서, 공유 공간 합성부(152)는, S7001에서 수신된 Frame 데이터와, S7003로 취득된 인식 결과에 기초하여, (실공간 A 내의 오브젝트 중에서) 기준 오브젝트를 결정한다. 그리고, 공유 공간 합성부(152)는, 실공간 A의 좌표계에 있어서의 당해 기준 오브젝트의 위치 및 자세를 특정한다(S7005).
계속해서, 공유 공간 합성부(152)는, S7005에서 특정된 기준 오브젝트의 위치 및 자세에 기초하여, 기준점을 추출한다(S7007).
그 후, 공유 공간 합성부(152)는, 공유 공간 상에 이미 설정되어 있는, 복수의 실공간의 기준점간의 위치 관계와, S7007에서 추출된 기준점에 기초하여, 실공간 A의 좌표계(로컬 좌표계)로부터 공유 공간 좌표계(글로벌 좌표계)로 변환하기 위한 변환 행렬을 산출한다.
<7-3. 효과>
이상 설명한 바와 같이, 제7 실시 형태에 의하면, 서버(10-7)는, 복수의 실공간의 각각에 위치하는, 유사하다고 인식되는 오브젝트를 기준 오브젝트로서 각각 결정하고, 그리고, 당해 기준 오브젝트에 관련지어져 있는 기준점 또는 기준면에 기초하여, 당해 복수의 실공간에 관한 센싱 데이터를 합성함으로써, 공유 공간을 생성한다. 이에 의해, 각 유저의 상황에 적합한 위치 관계로 당해 두 실공간을 합성할 수 있다.
<<8. 하드웨어 구성>>
다음에, 각 실시 형태에 공통되는 서버(10)의 하드웨어 구성에 대해, 도 71을 참조하여 설명한다. 도 71에 나타내는 바와 같이, 서버(10)는, CPU(900), ROM(Read Only Memory)(902), RAM(904), 버스(906), 인터페이스(908), 스토리지 장치(910) 및 통신 장치(912)를 구비한다.
CPU(900)는, 연산 처리 장치 및 제어 장치로서 기능하고, 각종 프로그램에 따라 서버(10) 내의 동작 전반을 제어한다. 또한, CPU(900)는, 마이크로 프로세서 등의 프로세서에 의해 구성된다.
ROM(902)은, CPU(900)가 사용하는 프로그램이나 연산 파라미터 등의 제어용 데이터 등을 기억한다.
RAM(904)은, 예를 들어 CPU(900)에 의해 실행되는 프로그램 등을 일시적으로 기억한다.
버스(906)는, CPU 버스 등으로 구성된다. 이 버스(906)는, CPU(900), ROM(902) 및 RAM(904)을 서로 접속한다.
인터페이스(908)는, 스토리지 장치(910), 및 통신 장치(912)를, 버스(906)와 접속한다.
스토리지 장치(910)는, 데이터 저장용 장치이다. 스토리지 장치(910)는, 예를 들어 기억 매체, 기억 매체에 데이터를 기록하는 기록 장치, 기억 매체로부터 데이터를 판독하는 판독 장치, 또는 기억 매체에 기록된 데이터를 삭제하는 삭제 장치 등을 포함한다.
통신 장치(912)는, 예를 들어 통신망(26) 등에 접속하기 위한 통신 디바이스 등으로 구성된 통신 인터페이스이다. 또한, 통신 장치(912)는, 무선 LAN 대응 통신 장치, LTE(Long Term Evolution) 대응 통신 장치 또는 유선에 의한 통신을 행하는 와이어 통신 장치여도 된다.
<<9. 변형예>>
이상, 첨부 도면을 참조하면서 본 개시의 바람직한 실시 형태에 대해 상세하게 설명했지만, 본 개시는 이러한 예에 한정되지 않는다. 본 개시가 속하는 기술 분야에 있어서의 통상의 지식을 갖는 자이면, 청구범위에 기재된 기술적 사상의 범주 내에서, 각종 변경예 또는 수정예에 상도할 수 있는 것은 명백하며, 이들에 대해서도, 당연히 본 개시의 기술적 범위에 속하는 것이라고 이해된다.
<9-1. 변형예 1>
예를 들어, 상술한 각 실시 형태에서는, 서버(10)는, (프레임별로) 공유 공간을 하나만 생성하는 예를 중심으로 설명했지만, 이러한 예에 한정되지 않고, 서버(10)(공유 공간 합성부(152))는, 프레임별로, 다른 공유 공간을 복수 생성해도 된다. 예를 들어, 공유 공간 합성부(152)는, 실공간(2a) 내의 입력부(22a)로부터 수신된 스트림과 실공간(2b) 내의 입력부(22b)로부터 수신된 스트림에 기초하여 공유 공간 A를 생성하며, 또한, 실공간(2c) 내의 입력부(22c)로부터 수신된 스트림과 실공간(2d) 내의 입력부(22d)로부터 수신된 스트림에 기초하여 공유 공간 B를 생성해도 된다.
또한, 공유 공간 합성부(152)는, 각 프레임에 관해서, 공유 공간에 참가 중인 유저별로 각각 상이한 공유 공간을 생성해도 된다. 예를 들어, 공유 공간 합성부(152)는, 각 프레임에 관해서, 유저별로, 표시 대상 오브젝트를 별도로 결정하고, 그리고, 결정된 오브젝트에 기초하여 공유 공간을 각각 생성해도 된다. 또한, 이 때, 서버(10)(베이스 공간 레이아웃 생성부(158))는, 유저별로 각각 상이한 베이스 공간을 생성해도 된다.
일례로서, 유저별로, 우선도를 산출하기 위한 가중치가 테이블에 별도로 등록될 수 있다. 그리고, 서버(10)(우선도 산출부(400))는, 각 실공간 내의 각 오브젝트에 관해서, 유저별로, 당해 테이블의 등록 내용에 기초하여, 당해 오브젝트의 우선도를 산출한다. 이 변형예에 의하면, 예를 들어 유저(4a)가 열람 가능한 오브젝트와, 유저(4b)가 열람 가능한 오브젝트를 상이하게 할 수 있다.
<9-2. 변형예 2>
또한, 다른 변형예로서, 비표시로 하는 오브젝트의 종류가 유저별로 미리 설정되어 있는 필터가 준비될 수 있다. 이 경우, 서버(10)는, 공유 공간에 참가 중인 유저별로, 생성된 공유 공간 Frame 데이터에 대해, 당해 유저에 관련지어져 있는 필터를 적용해도 된다. 이 변형예에 의하면, 유저별로 열람 가능한 오브젝트를 상이하게 할 수 있다.
<9-3. 변형예 3>
또한, 상술한 각 실시 형태의 처리의 흐름에 있어서의 각 스텝은, 반드시 기재된 순서를 따라 처리되지 않아도 된다. 예를 들어, 각 스텝은, 적절히 순서가 변경되어 처리되어도 된다. 또한, 각 스텝은, 시계열적으로 처리되는 대신, 일부 병렬적으로 또는 개별적으로 처리되어도 된다. 또한, 기재된 스텝 중 일부가 생략되거나 또는 별도의 스텝이 더 추가되어도 된다.
또한, 상술한 각 실시 형태에 의하면, CPU(900), ROM(902), 및 RAM(904) 등의 하드웨어를, 상술한 각 실시 형태에 따른 서버(10)의 각 구성과 동등한 기능을 발휘시키기 위한 컴퓨터 프로그램도 제공 가능하다. 또한, 당해 컴퓨터 프로그램이 기록된 기록 매체도 제공된다.
또한, 본 명세서에 기재된 효과는, 어디까지나 설명적 또는 예시적인 것이지, 한정적인 것은 아니다. 즉, 본 개시에 관한 기술은, 상기 효과와 함께, 또는 상기 효과 대신에, 본 명세서의 기재로부터 당업자에게는 명백한 다른 효과를 발휘할 수 있다.
또한, 이하와 같은 구성도 본 개시의 기술적 범위에 속한다.
(1)
제1 유저에 관련해 적어도 하나의 제1 실제 오브젝트를 포함하는 제1 실공간의 센싱 결과와, 제2 유저에 관련해 적어도 하나의 제2 실제 오브젝트를 포함하는 제2 실공간의 센싱 결과에 기초하여 상기 제1 유저와 상기 제2 유저 사이의 커뮤니케이션을 위하여 생성되는 가상 공간 내에 배치될 공유 오브젝트를, 소정의 기준에 기초하여 결정하는 결정부
를 구비하는, 정보 처리 장치.
(2)
상기 결정부는, 상기 공유 오브젝트로서, 상기 제1 실제 오브젝트에 대응하는 제1 가상 오브젝트 및 상기 제2 실제 오브젝트에 대응하는 제2 가상 오브젝트 중 적어도 한쪽을 상기 소정의 기준에 기초하여 선택하는, 상기 (1)에 기재된 정보 처리 장치.
(3)
상기 정보 처리 장치는, 상기 제1 실제 오브젝트의 우선도 및 상기 제2 실제 오브젝트의 우선도를 소정의 지표에 기초하여 산출하는 우선도 산출부를 추가로 구비하고,
상기 소정의 기준은, 상기 우선도 산출부에 의해 산출된 상기 제1 실제 오브젝트의 우선도 및 상기 제2 실제 오브젝트의 우선도를 포함하는, 상기 (2)에 기재된 정보 처리 장치.
(4)
상기 우선도 산출부는, 상기 제1 실제 오브젝트의 속성 정보 및 상기 제2 실제 오브젝트의 속성 정보에 기초하여, 상기 제1 실제 오브젝트의 우선도 및 상기 제2 실제 오브젝트의 우선도를 산출하는, 상기 (3)에 기재된 정보 처리 장치.
(5)
상기 제1 실제 오브젝트의 속성 정보는, 상기 제1 실제 오브젝트의 사이즈, 상기 제1 실제 오브젝트의 종류 또는 상기 제1 실공간의 식별 정보를 포함하고,
상기 제2 실제 오브젝트의 속성 정보는, 상기 제2 실제 오브젝트의 사이즈, 상기 제2 실제 오브젝트의 종류 또는 상기 제2 실공간의 식별 정보를 포함하는, 상기 (4)에 기재된 정보 처리 장치.
(6)
상기 우선도 산출부는, 상기 제1 실공간에 있어서의 상기 제1 실제 오브젝트와 상기 제1 유저의 위치 관계에 기초하여, 상기 제1 실제 오브젝트의 우선도를 산출함과 함께, 상기 제2 실공간에 있어서의 상기 제2 실제 오브젝트와 상기 제2 유저의 위치 관계에 기초하여, 상기 제2 실제 오브젝트의 우선도를 산출하는, 상기 (3) 내지 (5) 중 어느 한 항에 기재된 정보 처리 장치.
(7)
상기 우선도 산출부는, 표시부에 의해 표시되는 상기 가상 공간의 직전의 표시 프레임에 있어서 상기 제1 가상 오브젝트 또는 상기 제2 가상 오브젝트가 상기 가상 공간 내에 배치되어 있는지 여부에 기초하여, 상기 제1 실제 오브젝트의 우선도 및 상기 제2 실제 오브젝트의 우선도를 산출하는, 상기 (3) 내지 (6) 중 어느 한 항에 기재된 정보 처리 장치.
(8)
상기 우선도 산출부는, 상기 제1 실제 오브젝트의 우선도 및 상기 제2 실제 오브젝트의 우선도를, 상기 가상 공간에 있어서의 컨텍스트 정보에 기초하여 산출하는, 상기 (3) 내지 (7) 중 어느 한 항에 기재된 정보 처리 장치.
(9)
상기 우선도 산출부는, 상기 제1 실제 오브젝트 및 상기 제2 실제 오브젝트 중 상기 컨텍스트 정보에 관련된 실제 오브젝트의 우선도를 보다 높게 산출하는, 상기 (8)에 기재된 정보 처리 장치.
(10)
상기 제1 실공간의 센싱 결과에 기초하여 취득되는 제1 삼차원 정보와, 상기 제2 실공간의 센싱 결과에 기초하여 취득되는 제2 삼차원 정보를 합성함으로써 상기 가상 공간을 생성하는 공간 생성부를 추가로 구비하는, 상기 (2) 내지 (9) 중 어느 한 항에 기재된 정보 처리 장치.
(11)
상기 공간 생성부는, 상기 가상 공간 내에 배치될 것이 상기 결정부에 의해 결정된 모든 공유 오브젝트를 레이아웃 정보에 기초하여 상기 가상 공간 내에 배치하는, 상기 (10)에 기재된 정보 처리 장치.
(12)
상기 제1 실공간 또는 상기 제2 실공간 중 어느 것이 베이스 공간으로서 결정되고,
상기 정보 처리 장치는, 상기 베이스 공간의 삼차원 정보에 기초하여 상기 레이아웃 정보를 생성하는 레이아웃 정보 생성부를 추가로 구비하는, 상기 (11)에 기재된 정보 처리 장치.
(13)
상기 레이아웃 정보는, 미리 등록되어 있는 복수의 레이아웃 정보 중에서, 상기 제1 유저 또는 상기 제2 유저에 의해 선택된 정보인, 상기 (11)에 기재된 정보 처리 장치.
(14)
상기 레이아웃 정보를 편집하기 위한 상기 제1 유저 또는 상기 제2 유저에 의한 지시의 인식 결과에 기초하여 상기 레이아웃 정보는 편집되는, 상기 (11)에 기재된 정보 처리 장치.
(15)
상기 소정의 기준은, 상기 제1 가상 오브젝트의 표시 가부에 관한 설정 정보 및 상기 제2 가상 오브젝트의 표시 가부에 관한 설정 정보를 포함하는, 상기 (2) 내지 (14) 중 어느 한 항에 기재된 정보 처리 장치.
(16)
상기 소정의 기준은, 상기 제1 실제 오브젝트에 관한 데이터양과, 상기 제2 실제 오브젝트에 관한 데이터양과, 상기 제1 실공간과 상기 정보 처리 장치 사이의 네트워크 대역과, 상기 제2 실공간과 상기 정보 처리 장치 사이의 네트워크 대역의 관계성을 포함하는, 상기 (2) 내지 (15) 중 어느 한 항에 기재된 정보 처리 장치.
(17)
상기 제2 실제 오브젝트는, 상기 제1 실제 오브젝트에 대해 소정의 유사도를 갖고,
상기 결정부는, 상기 제1 실제 오브젝트 및 상기 제2 실제 오브젝트를 각각 기준 오브젝트로서 결정하고,
상기 정보 처리 장치는, 상기 제1 실공간의 센싱 결과에 기초하여 취득되는 제1 삼차원 정보와, 상기 제2 실공간의 센싱 결과에 기초하여 취득되는 제2 삼차원 정보를, 상기 기준 오브젝트에 따른 기준점 또는 기준면에 기초하여 합성함으로써 상기 가상 공간을 생성하는 공간 생성부를 추가로 구비하는, 상기 (1) 내지 (16) 중 어느 한 항에 기재된 정보 처리 장치.
(18)
상기 결정부는, 복수의 상기 제1 실제 오브젝트와 상기 제1 유저의 위치 관계, 복수의 상기 제2 실제 오브젝트와 상기 제2 유저의 위치 관계 및 상기 복수의 제1 실제 오브젝트에 대한 상기 복수의 제2 실제 오브젝트의 각각의 유사도에 기초하여, 상기 복수의 제1 실제 오브젝트 중에서 적어도 하나를 상기 기준 오브젝트로서 특정하고, 또한, 상기 복수의 제2 실제 오브젝트 중에서 적어도 하나를 상기 기준 오브젝트로서 특정하는, 상기 (17)에 기재된 정보 처리 장치.
(19)
제1 유저에 관련해 적어도 하나의 제1 실제 오브젝트를 포함하는 제1 실공간의 센싱 결과와, 제2 유저에 관련해 적어도 하나의 제2 실제 오브젝트를 포함하는 제2 실공간의 센싱 결과에 기초하여 상기 제1 유저와 상기 제2 유저 사이의 커뮤니케이션을 위하여 생성되는 가상 공간 내에 배치될 공유 오브젝트를, 소정의 기준에 기초하여 프로세서가 결정하는 것,
을 포함하는, 정보 처리 방법.
(20)
컴퓨터를,
제1 유저에 관련해 적어도 하나의 제1 실제 오브젝트를 포함하는 제1 실공간의 센싱 결과와, 제2 유저에 관련해 적어도 하나의 제2 실제 오브젝트를 포함하는 제2 실공간의 센싱 결과에 기초하여 상기 제1 유저와 상기 제2 유저 사이의 커뮤니케이션을 위하여 생성되는 가상 공간 내에 배치될 공유 오브젝트를, 소정의 기준에 기초하여 결정하는 결정부
로서 기능시키기 위한, 프로그램.
10-1 내지 10-7: 서버
20: 클라이언트
22: 입력부
24: 출력부
26: 통신망
50: 자유 시점 동화상 콘텐츠 서버
52: 자유 시점 라이브 콘텐츠 서버
54: 베이스 공간 레이아웃 서버
100-1, 100-2, 100-4: 공유 공간 관리부
102: 공유 공간 생성부
104, 224, 250, 524: 인식부
106: 이벤트 인식부
108: 제어부
120: 클라이언트 접속부
122, 252: 제어 정보 송신부
124, 242: 스트림 분리부
126, 240: 수신부
128, 222, 500, 522: 제어 정보 수신부
130, 226, 502, 526: 스트림 생성부
132, 228, 504, 528: 송신부
150: 동기부
152: 공유 공간 합성부
154: 배신부
156: 공유 공간 Frame 데이터 DB
158: 베이스 공간 레이아웃 생성부
166: 베이스 공간 레이아웃 정보 관리부
220, 248, 520: 센서부
244: 합성부
246: 표시부
400: 우선도 산출부
402: 결정부
540: 베이스 공간 레이아웃 정보 DB 관리부

Claims (20)

  1. 제1 유저에 관련해 적어도 하나의 제1 실제 오브젝트를 포함하는 제1 실공간의 센싱 결과와, 제2 유저에 관련해 적어도 하나의 제2 실제 오브젝트를 포함하는 제2 실공간의 센싱 결과에 기초하여 상기 제1 유저와 상기 제2 유저 사이의 커뮤니케이션을 위하여 생성되는 가상 공간 내에 배치될 공유 오브젝트를, 소정의 기준에 기초하여 결정하는 결정부
    를 구비하는, 정보 처리 장치.
  2. 제1항에 있어서, 상기 결정부는, 상기 공유 오브젝트로서, 상기 제1 실제 오브젝트에 대응하는 제1 가상 오브젝트 및 상기 제2 실제 오브젝트에 대응하는 제2 가상 오브젝트 중 적어도 한쪽을 상기 소정의 기준에 기초하여 선택하는, 정보 처리 장치.
  3. 제2항에 있어서, 상기 정보 처리 장치는, 상기 제1 실제 오브젝트의 우선도 및 상기 제2 실제 오브젝트의 우선도를 소정의 지표에 기초하여 산출하는 우선도 산출부를 추가로 구비하고,
    상기 소정의 기준은, 상기 우선도 산출부에 의해 산출된 상기 제1 실제 오브젝트의 우선도 및 상기 제2 실제 오브젝트의 우선도를 포함하는, 정보 처리 장치.
  4. 제3항에 있어서, 상기 우선도 산출부는, 상기 제1 실제 오브젝트의 속성 정보 및 상기 제2 실제 오브젝트의 속성 정보에 기초하여, 상기 제1 실제 오브젝트의 우선도 및 상기 제2 실제 오브젝트의 우선도를 산출하는, 정보 처리 장치.
  5. 제4항에 있어서, 상기 제1 실제 오브젝트의 속성 정보는, 상기 제1 실제 오브젝트의 사이즈, 상기 제1 실제 오브젝트의 종류 또는 상기 제1 실공간의 식별 정보를 포함하고,
    상기 제2 실제 오브젝트의 속성 정보는, 상기 제2 실제 오브젝트의 사이즈, 상기 제2 실제 오브젝트의 종류 또는 상기 제2 실공간의 식별 정보를 포함하는, 정보 처리 장치.
  6. 제3항에 있어서, 상기 우선도 산출부는, 상기 제1 실공간에 있어서의 상기 제1 실제 오브젝트와 상기 제1 유저의 위치 관계에 기초하여, 상기 제1 실제 오브젝트의 우선도를 산출함과 함께, 상기 제2 실공간에 있어서의 상기 제2 실제 오브젝트와 상기 제2 유저의 위치 관계에 기초하여, 상기 제2 실제 오브젝트의 우선도를 산출하는, 정보 처리 장치.
  7. 제3항에 있어서, 상기 우선도 산출부는, 표시부에 의해 표시되는 상기 가상 공간의 직전의 표시 프레임에 있어서 상기 제1 가상 오브젝트 또는 상기 제2 가상 오브젝트가 상기 가상 공간 내에 배치되어 있는지 여부에 기초하여, 상기 제1 실제 오브젝트의 우선도 및 상기 제2 실제 오브젝트의 우선도를 산출하는, 정보 처리 장치.
  8. 제3항에 있어서, 상기 우선도 산출부는, 상기 제1 실제 오브젝트의 우선도 및 상기 제2 실제 오브젝트의 우선도를, 상기 가상 공간에 있어서의 컨텍스트 정보에 기초하여 산출하는, 정보 처리 장치.
  9. 제8항에 있어서, 상기 우선도 산출부는, 상기 제1 실제 오브젝트 및 상기 제2 실제 오브젝트 중, 상기 컨텍스트 정보에 관련된 실제 오브젝트의 우선도를 보다 높게 산출하는, 정보 처리 장치.
  10. 제2항에 있어서, 상기 제1 실공간의 센싱 결과에 기초하여 취득되는 제1 삼차원 정보와, 상기 제2 실공간의 센싱 결과에 기초하여 취득되는 제2 삼차원 정보를 합성함으로써 상기 가상 공간을 생성하는 공간 생성부를 추가로 구비하는, 정보 처리 장치.
  11. 제10항에 있어서, 상기 공간 생성부는, 상기 가상 공간 내에 배치될 것이 상기 결정부에 의해 결정된 모든 공유 오브젝트를 레이아웃 정보에 기초하여 상기 가상 공간 내에 배치하는, 정보 처리 장치.
  12. 제11항에 있어서, 상기 제1 실공간 또는 상기 제2 실공간 중 어느 것이 베이스 공간으로서 결정되고,
    상기 정보 처리 장치는, 상기 베이스 공간의 삼차원 정보에 기초하여 상기 레이아웃 정보를 생성하는 레이아웃 정보 생성부를 추가로 구비하는, 정보 처리 장치.
  13. 제11항에 있어서, 상기 레이아웃 정보는, 미리 등록되어 있는 복수의 레이아웃 정보 중에서, 상기 제1 유저 또는 상기 제2 유저에 의해 선택된 정보인, 정보 처리 장치.
  14. 제11항에 있어서, 상기 레이아웃 정보를 편집하기 위한 상기 제1 유저 또는 상기 제2 유저에 의한 지시의 인식 결과에 기초하여 상기 레이아웃 정보는 편집되는, 정보 처리 장치.
  15. 제2항에 있어서, 상기 소정의 기준은, 상기 제1 가상 오브젝트의 표시 가부에 관한 설정 정보 및 상기 제2 가상 오브젝트의 표시 가부에 관한 설정 정보를 포함하는, 정보 처리 장치.
  16. 제2항에 있어서, 상기 소정의 기준은, 상기 제1 실제 오브젝트에 관한 데이터양과, 상기 제2 실제 오브젝트에 관한 데이터양과, 상기 제1 실공간과 상기 정보 처리 장치 사이의 네트워크 대역과, 상기 제2 실공간과 상기 정보 처리 장치 사이의 네트워크 대역의 관계성을 포함하는, 정보 처리 장치.
  17. 제1항에 있어서, 상기 제2 실제 오브젝트는, 상기 제1 실제 오브젝트에 대해 소정의 유사도를 갖고,
    상기 결정부는, 상기 제1 실제 오브젝트 및 상기 제2 실제 오브젝트를 각각 기준 오브젝트로서 결정하고,
    상기 정보 처리 장치는, 상기 제1 실공간의 센싱 결과에 기초하여 취득되는 제1 삼차원 정보와, 상기 제2 실공간의 센싱 결과에 기초하여 취득되는 제2 삼차원 정보를, 상기 기준 오브젝트에 따른 기준점 또는 기준면에 기초하여 합성함으로써 상기 가상 공간을 생성하는 공간 생성부를 추가로 구비하는, 정보 처리 장치.
  18. 제17항에 있어서, 상기 결정부는, 복수의 상기 제1 실제 오브젝트와 상기 제1 유저의 위치 관계, 복수의 상기 제2 실제 오브젝트와 상기 제2 유저의 위치 관계 및 상기 복수의 제1 실제 오브젝트에 대한 상기 복수의 제2 실제 오브젝트의 각각의 유사도에 기초하여, 상기 복수의 제1 실제 오브젝트 중에서 적어도 하나를 상기 기준 오브젝트로서 특정하고, 또한, 상기 복수의 제2 실제 오브젝트 중에서 적어도 하나를 상기 기준 오브젝트로서 특정하는, 정보 처리 장치.
  19. 제1 유저에 관련해 적어도 하나의 제1 실제 오브젝트를 포함하는 제1 실공간의 센싱 결과와, 제2 유저에 관련해 적어도 하나의 제2 실제 오브젝트를 포함하는 제2 실공간의 센싱 결과에 기초하여 상기 제1 유저와 상기 제2 유저 사이의 커뮤니케이션을 위하여 생성되는 가상 공간 내에 배치될 공유 오브젝트를, 소정의 기준에 기초하여 프로세서가 결정하는 것
    을 포함하는, 정보 처리 방법.
  20. 컴퓨터를,
    제1 유저에 관련해 적어도 하나의 제1 실제 오브젝트를 포함하는 제1 실공간의 센싱 결과와, 제2 유저에 관련해 적어도 하나의 제2 실제 오브젝트를 포함하는 제2 실공간의 센싱 결과에 기초하여 상기 제1 유저와 상기 제2 유저 사이의 커뮤니케이션을 위하여 생성되는 가상 공간 내에 배치될 공유 오브젝트를, 소정의 기준에 기초하여 결정하는 결정부
    로서 기능시키기 위한, 프로그램.
KR1020197013051A 2016-11-21 2017-08-30 정보 처리 장치, 정보 처리 방법, 및 비일시적 컴퓨터 판독가능 매체 KR102355175B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2016-226211 2016-11-21
JP2016226211 2016-11-21
PCT/JP2017/031043 WO2018092384A1 (ja) 2016-11-21 2017-08-30 情報処理装置、情報処理方法、およびプログラム

Publications (2)

Publication Number Publication Date
KR20190088466A true KR20190088466A (ko) 2019-07-26
KR102355175B1 KR102355175B1 (ko) 2022-01-26

Family

ID=62146324

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197013051A KR102355175B1 (ko) 2016-11-21 2017-08-30 정보 처리 장치, 정보 처리 방법, 및 비일시적 컴퓨터 판독가능 매체

Country Status (6)

Country Link
US (1) US11043033B2 (ko)
EP (1) EP3543961A4 (ko)
JP (1) JP6773126B2 (ko)
KR (1) KR102355175B1 (ko)
CN (1) CN109952599A (ko)
WO (1) WO2018092384A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102608117B1 (ko) * 2022-06-16 2023-11-30 주식회사 엘지유플러스 이미지 보정 방법 및 이미지 보정 시스템

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10417810B2 (en) * 2017-05-31 2019-09-17 Verizon Patent And Licensing Inc. Methods and systems for rendering virtual reality content based on two-dimensional (“2D”) captured imagery of a three-dimensional (“3D”) scene
KR102085440B1 (ko) * 2017-12-26 2020-03-05 (주)스코넥엔터테인먼트 가상 현실 제어 시스템
JP6658799B2 (ja) * 2018-06-08 2020-03-04 株式会社セガゲームス 端末装置及びプログラム
US10921878B2 (en) * 2018-12-27 2021-02-16 Facebook, Inc. Virtual spaces, mixed reality spaces, and combined mixed reality spaces for improved interaction and collaboration
KR102303401B1 (ko) * 2019-02-08 2021-09-24 한양대학교 에리카산학협력단 하이브리드 홈 음성인식 시스템 및 그 제공 방법
WO2020202747A1 (ja) 2019-03-29 2020-10-08 ソニー株式会社 情報処理装置、情報処理方法、及び記録媒体
US11470017B2 (en) * 2019-07-30 2022-10-11 At&T Intellectual Property I, L.P. Immersive reality component management via a reduced competition core network component
WO2021024479A1 (ja) * 2019-08-08 2021-02-11 Graffity株式会社 情報処理装置、情報処理方法、及びプログラム
CN114222942A (zh) 2019-08-12 2022-03-22 奇跃公司 用于虚拟和增强现实的***和方法
KR20190104282A (ko) * 2019-08-20 2019-09-09 엘지전자 주식회사 영상 기반으로 정보를 제공하는 방법 및 이를 위한 이동 단말
US11361473B1 (en) * 2019-09-25 2022-06-14 Apple Inc. Including a physical object based on context
US11151795B2 (en) * 2019-12-10 2021-10-19 Wormhole Labs, Inc. Systems and methods of creating virtual pop-up spaces
US11095855B2 (en) * 2020-01-16 2021-08-17 Microsoft Technology Licensing, Llc Remote collaborations with volumetric space indications
JP6754908B1 (ja) * 2020-02-07 2020-09-16 株式会社ドワンゴ 視聴端末、視聴方法、視聴システム及びプログラム
US11206294B2 (en) * 2020-03-31 2021-12-21 Konica Minolta Business Solutions U.S.A., Inc. Method for separating local and remote content in a camera-projector based collaborative system
US12014455B2 (en) * 2020-05-06 2024-06-18 Magic Leap, Inc. Audiovisual presence transitions in a collaborative reality environment
WO2021245930A1 (ja) * 2020-06-05 2021-12-09 日本電信電話株式会社 画像処理装置、画像処理方法、および画像処理プログラム
CN111651051B (zh) * 2020-06-10 2023-08-22 浙江商汤科技开发有限公司 一种虚拟沙盘展示方法及装置
JP2022003498A (ja) * 2020-06-23 2022-01-11 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置、方法、プログラム及び情報処理システム
SE2030252A1 (en) * 2020-08-13 2022-02-14 Nagoon AB Method performed by a computer system for creation of augmented reality experiences and connection of these to the real world
US20220070239A1 (en) * 2020-08-28 2022-03-03 Tmrw Foundation Ip S. À R.L. System and method to provision cloud computing-based virtual computing resources within a virtual environment
US12034785B2 (en) 2020-08-28 2024-07-09 Tmrw Foundation Ip S.Àr.L. System and method enabling interactions in virtual environments with virtual presence
CN112203142A (zh) * 2020-12-03 2021-01-08 浙江岩华文化科技有限公司 视频的处理方法、装置、电子装置和存储介质
EP4343705A4 (en) * 2021-05-19 2024-06-19 Sony Group Corporation INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING PROGRAM AND INFORMATION PROCESSING SYSTEM
US11733772B2 (en) * 2021-10-14 2023-08-22 Surefire, Llc Viewing a virtual world through a virtual window
JP7158781B1 (ja) 2021-11-29 2022-10-24 クラスター株式会社 端末装置、サーバ、仮想現実空間提供システム、プログラムおよび仮想現実空間提供方法
JP7299371B1 (ja) 2022-03-31 2023-06-27 Kddi株式会社 情報処理装置及び情報処理方法
WO2023189580A1 (ja) * 2022-03-31 2023-10-05 ソニーグループ株式会社 画像処理装置及び画像処理システム
EP4354262A1 (en) * 2022-10-11 2024-04-17 Meta Platforms Technologies, LLC Pre-scanning and indexing nearby objects during load
WO2024128262A1 (ja) * 2022-12-13 2024-06-20 株式会社ニコン 変換プログラム、電子機器システム、電子機器、および変換方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005004487A (ja) 2003-06-12 2005-01-06 Sony Corp 捕捉パス上で撮影されたサラウンド画像を処理する装置及び方法
KR20130091541A (ko) * 2012-02-08 2013-08-19 삼성전자주식회사 사용자 인터랙션에 기초하여 3d 영상을 생성하기 위한 방법 및 장치
JP2014149712A (ja) * 2013-02-01 2014-08-21 Sony Corp 情報処理装置、端末装置、情報処理方法及びプログラム
US20160212468A1 (en) * 2015-01-21 2016-07-21 Ming-Chieh Lee Shared Scene Mesh Data Synchronisation

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2180891C (en) * 1995-07-12 2010-01-12 Junichi Rekimoto Notification of updates in a three-dimensional virtual reality space sharing system
JP2002305758A (ja) 2001-04-04 2002-10-18 Nippon Telegr & Teleph Corp <Ntt> 臨場感通信装置及び臨場感通信システム
JP2003223653A (ja) * 2002-01-29 2003-08-08 Nippon Telegr & Teleph Corp <Ntt> ユーザ位置情報伝達方法およびユーザ位置情報伝達装置
JP2005182331A (ja) * 2003-12-18 2005-07-07 Sony Corp 情報処理システム、サービス提供装置および方法、情報処理装置および方法、並びに、プログラムおよび記録媒体
EP1686554A3 (en) 2005-01-31 2008-06-18 Canon Kabushiki Kaisha Virtual space generating system, image processing apparatus and information processing method
JP4553362B2 (ja) 2005-01-31 2010-09-29 キヤノン株式会社 システム、画像処理装置、情報処理方法
US20060224964A1 (en) * 2005-03-30 2006-10-05 Microsoft Corporation Method, apparatus, and system of displaying personal digital media according to display characteristics
JP4738870B2 (ja) 2005-04-08 2011-08-03 キヤノン株式会社 情報処理方法、情報処理装置および遠隔複合現実感共有装置
US7840568B2 (en) * 2006-05-16 2010-11-23 Sony Corporation Sorting media objects by similarity
US9329469B2 (en) * 2011-02-17 2016-05-03 Microsoft Technology Licensing, Llc Providing an interactive experience using a 3D depth camera and a 3D projector
JP6102215B2 (ja) * 2011-12-21 2017-03-29 株式会社リコー 画像処理装置、画像処理方法およびプログラム
US9325943B2 (en) * 2013-02-20 2016-04-26 Microsoft Technology Licensing, Llc Providing a tele-immersive experience using a mirror metaphor
JP2014203175A (ja) * 2013-04-02 2014-10-27 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム。
US9529917B2 (en) * 2013-05-21 2016-12-27 Saleforce.com, inc. System and method for generating information feed based on contextual data

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005004487A (ja) 2003-06-12 2005-01-06 Sony Corp 捕捉パス上で撮影されたサラウンド画像を処理する装置及び方法
KR20130091541A (ko) * 2012-02-08 2013-08-19 삼성전자주식회사 사용자 인터랙션에 기초하여 3d 영상을 생성하기 위한 방법 및 장치
JP2014149712A (ja) * 2013-02-01 2014-08-21 Sony Corp 情報処理装置、端末装置、情報処理方法及びプログラム
US20160212468A1 (en) * 2015-01-21 2016-07-21 Ming-Chieh Lee Shared Scene Mesh Data Synchronisation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102608117B1 (ko) * 2022-06-16 2023-11-30 주식회사 엘지유플러스 이미지 보정 방법 및 이미지 보정 시스템

Also Published As

Publication number Publication date
US11043033B2 (en) 2021-06-22
JPWO2018092384A1 (ja) 2019-10-10
EP3543961A4 (en) 2020-02-12
EP3543961A1 (en) 2019-09-25
US20200051336A1 (en) 2020-02-13
WO2018092384A1 (ja) 2018-05-24
KR102355175B1 (ko) 2022-01-26
CN109952599A (zh) 2019-06-28
JP6773126B2 (ja) 2020-10-21

Similar Documents

Publication Publication Date Title
KR102355175B1 (ko) 정보 처리 장치, 정보 처리 방법, 및 비일시적 컴퓨터 판독가능 매체
US11915670B2 (en) Systems, methods, and media for displaying interactive augmented reality presentations
US11748056B2 (en) Tying a virtual speaker to a physical space
US10356382B2 (en) Information processing device, information processing method, and program
US11023599B2 (en) Information processing device, information processing method, and program
US12020667B2 (en) Systems, methods, and media for displaying interactive augmented reality presentations
US20240196025A1 (en) Computer program, server device, terminal device, and method
CN116964544A (zh) 信息处理装置、信息处理终端、信息处理方法和程序
US20200349766A1 (en) Methods and Systems for Viewing and Editing AR/VR Computer-based Designs Allowing Impaired Vision Simulation
WO2022209297A1 (ja) 情報処理装置、情報処理方法および記録媒体
KR102659585B1 (ko) 실내 공간 내 맞춤형 난간 벽 추천 방법
WO2019150469A1 (ja) 複合現実空間におけるキャラクタの制御方法
Lovett Expanded Architectural Awareness Through Locative Media

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