KR20190008105A - 실감 효과 적응 방법 및 이를 수행하는 적응 엔진 및 실감 장치 - Google Patents

실감 효과 적응 방법 및 이를 수행하는 적응 엔진 및 실감 장치 Download PDF

Info

Publication number
KR20190008105A
KR20190008105A KR1020180078567A KR20180078567A KR20190008105A KR 20190008105 A KR20190008105 A KR 20190008105A KR 1020180078567 A KR1020180078567 A KR 1020180078567A KR 20180078567 A KR20180078567 A KR 20180078567A KR 20190008105 A KR20190008105 A KR 20190008105A
Authority
KR
South Korea
Prior art keywords
effect
real
metadata
user
virtual world
Prior art date
Application number
KR1020180078567A
Other languages
English (en)
Other versions
KR102460671B1 (ko
Inventor
윤재관
박노삼
장종현
한미경
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to US16/035,357 priority Critical patent/US10861221B2/en
Publication of KR20190008105A publication Critical patent/KR20190008105A/ko
Application granted granted Critical
Publication of KR102460671B1 publication Critical patent/KR102460671B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/557Depth or shape recovery from multiple images from light fields, e.g. from plenoptic cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30241Trajectory

Landscapes

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

Abstract

적응 엔진에 의해 수행되는 실감 효과 적응(sensory effect adaptation) 방법에 있어서, 가상 세계의 객체를 설명하기 위한 상기 객체와 관련된 제1 메타데이터를 식별하는 단계; 상기 식별된 객체와 관련된 상기 제1 메타데이터를 현실 세계의 실감 장치(sensory device)에 적용하기 위한 제2 메타데이터로 변환하는 단계를 포함하고, 상기 제2 메타데이터는, 상기 제1 메타데이터가 상기 가상 세계에 있는 사용자의 시선에 따라 결정된 장면에 기초하여 변환되는 실감 효과 적응 방법일 수 있다.

Description

실감 효과 적응 방법 및 이를 수행하는 적응 엔진 및 실감 장치{ADAPTATION METHOD OF SENSORY EFFECT, AND ADAPTATION ENGINE AND SENSORY DEVICE TO PERFORM IT}
아래 실시예들은, 실감 효과 적응 방법 및 이를 수행하는 적응 엔진 및 실감 장치에 관한 것으로, 보다 구체적으로 가상 세계에 있는 사용자가 바라보는 장면 및 장면에 포함된 객체에 기반하는 실감 효과 적응 기술에 관한 것이다.
4D 영화관은 실감나는 멀티미디어 콘텐츠를 제공하기 위해 후각, 촉각 등의 오감을 자극하는 실감 효과 서비스를 제공하고 있다. 이와 같은 실감 효과가 함께 제공될 때, 사용자의 만족도와 몰입도는 높아질 수 있다.
시간에 따라 미리 설정된 실감 효과가 제공되는 방법(예를 들면, 기존의 4D 영화관은 사용자의 시선에 관계 없이 플레이 되는 영상의 시간에 대응하는 미리 설정된 실감 효과가 제공됨)은 가상 세계에 있는 사용자의 시선에 관계없이 실감 효과가 제공되어 사용자의 만족도와 몰입도가 낮아질 수 있다.
따라서, 가상 세계에 있는 사용자의 시선에 따라 사용자가 바라보는 장면은 변화하며, 변화된 장면에 대응하는 실감 효과가 사용자에게 제공되는 실감 효과 서비스에 관한 연구가 필요하다.
일 실시예에 따르면, 가상 세계에 있는 사용자의 시선의 변화에 따른 실감 효과 재현이 가능할 수 있다.
일 실시예에 따르면, 사용자의 선호도, 환경 정보 또는 실감 장치 성능에 따른 실감 효과 재현이 가능할 수 있다.
일 측면에 따르면, 적응 엔진에 의해 수행되는 실감 효과 적응(sensory effect adaptation) 방법에 있어서, 가상 세계의 객체를 설명하기 위한 상기 객체와 관련된 제1 메타데이터를 식별하는 단계; 상기 식별된 객체와 관련된 상기 제1 메타데이터를 현실 세계의 실감 장치(sensory device)에 적용하기 위한 제2 메타데이터로 변환하는 단계를 포함하고, 상기 제2 메타데이터는, 상기 제1 메타데이터가 상기 가상 세계에 있는 사용자의 시선에 따라 결정된 장면에 기초하여 변환되는 실감 효과 적응 방법일 수 있다.
상기 제2 메타 데이터는, 상기 사용자의 시선에 따라 결정된 장면뿐만 아니라 상기 사용자의 환경 정보, 상기 사용자의 선호도, 실감 장치(sensory device) 성능, 센서 성능을 고려하여 변환되는 실감 효과 적응 방법일 수 있다.
상기 제2 메타데이터로 변환하는 단계는, 상기 실감 장치(sensory device)를 제어하기 위한 제어명령 XML을 생성하는 단계; 상기 영상에 대한 시간과 상기 제어명령 XML에 대한 시간의 동기화를 위한 SyncTable를 생성하는 단계; 재생되는 영상의 시간에 대응하는 상기 제어명령 XML이 상기 SyncTable 에서 검색된 경우, 상기 제어명령 XML을 실감 장치(sensory device)로 전송하는 단계를 더 포함하는 실감 효과 적응 방법일 수 있다.
일 측면에 따르면, 실감 장치(sensory device)가 수행하는 실감 효과 적응 방법에 있어서, 제1 메타 데이터가 변환된 제2 메타 데이터에 기초하여 생성된 제어 명령 XML을 식별하는 단계; 상기 식별된 제어 명령 XML을 파싱하여, 바이너리 타입의 제어명령을 생성하고, 상기 생성된 바이너리 타입의 제어명령을 이용하여 상기 실감 장치(sensory device)가 제어되는 단계를 포함하고, 상기 제2 메타 데이터는, 가상 세계의 객체를 설명하기 위한 상기 객체와 관련된 상기 제1 메타데이터가 상기 가상 세계에 있는 사용자의 시선에 따라 결정된 장면에 기초하여 변환되는 실감 효과 적응 방법일 수 있다.
상기 제2 메타 데이터는, 상기 사용자의 시선에 따라 결정된 장면뿐만 아니라 상기 사용자의 환경 정보, 상기 사용자의 선호도, 실감 장치(sensory device) 성능, 센서 성능을 고려하여 변환되는 실감 효과 적응 방법일 수 있다.
적응 엔진에 있어서, 상기 적응 엔진은 프로세서를 포함하고, 상기 프로세서는, 가상 세계의 객체를 설명하기 위한 상기 객체와 관련된 제1 메타데이터를 식별하고, 상기 식별된 객체와 관련된 상기 제1 메타데이터를 현실 세계의 실감 장치(sensory device)에 적용하기 위한 제2 메타데이터로 변환하며, 상기 제2 메타데이터는, 상기 제1 메타데이터가 상기 가상 세계에 있는 사용자의 시선에 따라 결정된 장면에 기초하여 변환되는 적응 엔진일 수 있다.
상기 제2 메타데이터는, 상기 사용자의 시선에 따라 결정된 장면뿐만 아니라 상기 사용자의 현실 세계의 주변 환경 정보, 상기 사용자의 선호도, 실감 장치(sensory device) 성능, 센서 성능을 고려하여 변환되는 적응 엔진일 수 있다.
상기 프로세서는, 상기 실감 장치(sensory device)를 제어하기 위한 제어명령 XML을 생성하고, 상기 영상에 대한 시간과 상기 제어명령 XML에 대한 시간의 동기화를 위한 SyncTable를 생성하고, 재생되는 영상의 시간에 대응하는 상기 제어명령 XML이 상기 SyncTable 에서 검색된 경우, 상기 제어명령 XML을 실감 장치(sensory device)로 전송하는 것을 더 수행하는 적응 엔진일 수 있다..
일 측면에 따르면, 실감 장치(sensory device)에 있어서, 상기 실감 장치는 프로세서를 포함하고, 상기 프로세서는, 제1 메타 데이터가 변환된 제2 메타 데이터에 기초하여 생성된 제어 명령 XML을 식별하고, 상기 식별된 제어 명령 XML을 파싱하여, 바이너리 타입의 제어명령을 생성하고, 상기 생성된 바이너리 타입의 제어명령을 이용하여 상기 실감 장치가 제어되며, 상기 제2 메타 데이터는, 가상 세계의 객체를 설명하기 위한 상기 객체와 관련된 상기 제1 메타데이터가 상기 가상 세계에 있는 사용자의 시선에 따라 결정된 장면에 기초하여 변환되는 실감 장치일 수 있다.
상기 제2 메타 데이터는, 상기 사용자의 시선에 따라 결정된 장면뿐만 아니라 상기 사용자의 현실 세계의 주변 환경 정보, 상기 사용자의 선호도, 실감 장치 성능, 센서 성능을 고려하여 변환되는 실감 장치일 수 있다.
일 측면에 따르면, 컴퓨터에서 읽기 가능한 실감 효과를 위한 데이터가 기록된 기록 매체에 있어서, 상기 데이터는, 가상 세계의 객체를 설명하기 위한 객체와 관련된 정보를 포함하고, 상기 객체와 관련된 정보는, (i) 객체ID의 존재를 나타내는 객체ID플래그 및 (ii) 가상 세계에서 객체를 식별하는 객체ID를 포함하며, 상기 객체ID를 이용하여 식별된 객체와 관련된 실감 효과의 리스트는 실감효과리스트에 포함되며, 상기 실감효과리스트에 포함된 실감 효과의 사용 여부는 실감 효과리스트플래그를 통해 판별되는 기록 매체일 수 있다.
상기 객체ID플래그가 1인 경우 상기 객체ID에 대응하는 객체가 존재하는 것을 나타내며, 상기 객체ID플래그가 0인 경우 상기 객체ID에 대응하는 객체가 존재하지 않는 것을 나타내는 기록 매체일 수 있다.
일 측면에 따르면, 컴퓨터에서 읽기 가능한 실감 효과를 위한 데이터가 기록된 기록 매체에 있어서, 상기 데이터는, 가상 세계의 객체를 설명(describe)하기 위한 실감효과리스트(sensoryeffectlist)를 포함하고, 상기 실감효과리스트는, 상기 가상 세계의 객체와 관련된 실감 효과의 리스트를 나타내며, 상기 실감효과리스트에 포함된 실감 효과의 사용 여부는 실감효과리스트플래그를 통해 판별되는 포함하는 기록 매체일 수 있다.
상기 실감효과리스트플래그가 1인 경우 상기 실감효과리스트에 포함된 상기 실감 효과는 사용되는 것을 나타내며, 상기 실감효과리스트플래그가 0인 경우 상기 실감효과리스트에 포함된 상기 실감 효과는 사용되지 않는 것을 나타내는 기록 매체일 수 있다.
도 1은 일 실시예에 따른, MPEG-V 프레임워크의 전체 시스템 아키텍처를 나타낸다.
도 2는 일 실시예에 따른 모션 체어 재현 실시예를 나타낸다.
도 3a는 일 실시예에 따른, 4D 극장에서 두개의 배열된 조명(Arrayed Light) 액추에이터가 있는 영화에서 발생하는 폭파 이벤트와 연동하여 불꽃놀이 시각적 효과를 시뮬레이션한 배열된 조명(Arrayed Light) 효과의 사용 사례를 나타낸다.
도 3b는 일 실시예에 따른 4D 극장에서 컬러 조명을 갖는 터널을 통과하는 차량을 시각적으로 보강하기(augmenting) 위한 배열된 조명(Arrayed Light) 효과의 사용 사례를 나타낸다.
도 4는 일 실시예에 따른 가상 세계에서 현실 세계로의 정보 어댑테이션을 나타낸다.
도 5은 일 실시예에 따른 현실 세계에서 가상 세계로의 정보 어댑테이션을 나타낸다.
도 6는 일 실시예에 따른 가상 세계 간의 정보 교환을 나타낸다.
도 7은 일 실시예에 따른, 실감 효과를 저작하는 실감 효과 저작 장치와 저작된 실감 효과를 실감 장치에서 재현 되도록 변환하는 어댑테이션 엔진 및 실감 효과를 재현하는 실감 장치를 나타낸다.
도 8은 일 실시예에 따른, 어댑테이션 엔진에서 실감 장치 성능, 사용자의 선호도, 센서 성능, 환경 정보를 고려하는 것을 나타낸다.
도 9는 일 실시예에 따른 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
도 10는 일 실시예에 따른 식별 타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
도 11는 일 실시예에 따른 VWO사운드목록타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
도 12는 일 실시예에 따른 VWO향기목록타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
도 13는 일 실시예에 따른 VWO컨트롤목록타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
도 14는 일 실시예에 따른, VWO이벤트목록타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
도 15는 일 실시예에 따른 VWO행동모델목록타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
도 16는 일 실시예에 따른 VWO사운드타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
도 17는 일 실시예에 따른 VWO향기타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
도 18는 일 실시예에 따른 VWO컨트롤타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
도 19는 일 실시예에 따른 VWO이벤트타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
도 20는 일 실시예에 따른 VWO실감효과타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
도 21는 일 실시예에 따른, VWO행동모델타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 실시예들은 특정한 개시형태로 한정되는 것이 아니며, 본 명세서의 범위는 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제 1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소는 제 1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
<약어(abbreviated terms)>
CT - common types
DIA - digital item adaptation (ISO/IEC 21000-7)
SEDL - sensory effects description language
SEM - sensory effect metadata
SEV - sensory effects vocabulary
UMA - universal multimedia access
UME - universal multimedia experience
REL - rights expression language
URI - Uniform Resource Identifier
URL - Uniform Resource Locator
XML - Extensible Markup Language
XSI - XML streaming instructions
<정의(terms and definitions)>
장치 명령(Device Command) - 실감 효과를 생성하는데 사용되는 액츄에이터를 제어하는 것에 대한 설명.
감지된 정보(Sensed Information) - 센서로부터 획득된 정보
센서(Sensor) - 사용자 입력 또는 환경 정보를 수집할 수 있는 장치. 예를 들면, 온도 센서, 거리 센서, 모션 센서 등등
센서 어댑테이션 선호도(Sensor Adaptation Preferences) - 감지된 정보를 어댑팅시키는 것과 관련하여 (사용자의) 선호도를 나타내기 위한 디스크립터 및 설명 스키마(description schemes).
센서 성능(Sensor Capability) - 정확도 또는 감지 범위와 같은 주어진 센서의 성능의 관점에서 센서의 특성을 나타내는 설명.
실감 장치(Sensory Device) - 해당 실감 효과가 만들어 질 수 있는 소비자 장치. 현실 세계 장치는 센서와 액츄에이터의 모든 조합을 하나의 장치에 포함할 수 있다.
실감 장치 성능(Sensory Device Capability) - 주어진 장치의 성능의 관점에서 실감 효과를 발생시키는데 사용되는 액추에이터의 특성을 나타내는 설명.
실감 효과 - 특정 장면에서 인간의 감각을 자극하여 지각(perception)을 향상시키는 효과. 예를 들면, 향기, 바람, 조명, 햅틱(haptic)[kinesthetic-force, stiffness, weight, friction, texture, widget(예를 들면, 버튼, 슬라이더, 조이스틱등), tactile: air-jet, suction pressure, thermal, current, vibration, etc.]
실감 효과 메타데이터 - 실감 효과를 나타내는 설명 체계 및 디스크립터(description schemes and descriptors)를 정의하는 메타 데이터.
사용자의 실감 선호도(User's Sensory Preferences) - 실감 효과의 렌더링과 관련하여 (사용자의) 선호도를 표현하기위한 설명 체계 및 디스크립터.
<접두사의 사용(Use of prefixes)>
"xsi:" 는 http://www.w3.org/2001/XMLSchema-instance 네임 스페이스의 요소를 나타낸다.
접두사 "xml:"은 정의에 따라 http://www.w3.org/XML/1998/namespace에 바인딩된다. 접두사"xmlns:"는 네임 스페이스 바인딩에만 사용되며, 자체는 네임 스페이스 네임에 바인딩되지 않는다.
<시스템 아키텍처>
도 1은 일 실시예에 따른, MPEG-V 프레임 워크의 전체 시스템 아키텍처를 나타낸다.
MPEG-V 프레임 워크의 시스템 아키텍처는 세 가지 미디어 교환을 제공하는 데 사용될 수 있다. 현실 세계(real world)와 가상 세계(virtual world) 사이에서 발생하는 미디어 교환에는 현실 세계에서 가상 세계로의 정보 교환과 가상 세계에서 현실 세계로의 정보 교환 및 의 두 가지 유형(type)이 있다. 미디어 교환의 또 다른 유형은 가상 세계 간의 정보 교환이다.
Adaptation Engine은 18가지 실감 효과의 표현을 위해 SEM(Sensory Effect Metadata: Light effect, Flash effect, Temperature effect, Wind effect, Vibration effect, Spraying effect, Scent effect, Fog effect, Color correction effect, Rigid body motion effect, Passive kinesthetic motion effect, Passive kinesthetic force effect, Active kinesthetic effect, Tactile effect, Parameterized tactile effect, Bubble effect, Arrayed Light Effect)을 제공할 수 있다.
일 실시예에 따르면, Adaptation Engine는 18가지 실감 효과의 표현을 위한 SEM을 제공하기 위해, 아래의 표 1과 같은 SEMBaseType를 이용할 수 있다.
<complexType name="SEMBaseType" abstract="true">
<complexContent>
<restriction base="anyType">
<attribute name="id" type="ID" use="optional"/>
</restriction>
</complexContent>
</complexType>
SEMBaseType에 따르면, 18가지 실감 효과는 ID에 의해 구분될 수 있다. 따라서, ID에 해당하는 실감 효과들은 미디어가 플레이 되는 시간을 기준으로 활성화 및/또는 비활성화될 수 있다. 예를 들면, id="Light1"에 해당하는 조명 효과는 미디어가 플레이 되는 시간 동안 활성화 및/또는 비활성화될 수 있다.
이때, 하나의 ID는 하나의 실감 효과를 나타낼 수 있으며, 여러 개의 동일한 실감 효과 또는 여러 개의 다른 실감 효과들을 표현하기 위해 다른 ID가 이용될 수 있다. 또한, 각각의 다른 실감 효과와 마찬가지로 동일한 실감 효과를 둘 이상 표현할 경우, 둘 이상의 ID가 이용될 수 있다. 예를 들면, 아래의 표 2와 같이 ID에 의해 실감 효과가 구분될 수 있고, 정해진 시간에 정해진 조건(예를 들면, duration, activate, location, intensity-value, intensity-range 등등)에 해당하는 실감 효과가 표현될 수 있다.
<sedl:Effect xsi:type="sev:TemperatureType" id=“Temp1” si:pts="8100" duration="2000" activate="True" location=":WCS:Left:Top:Back" intensity-value="100" intensity-range="0 100" />
<sedl:Effect xsi:type="sev:LightType" id=“Light1” si:pts="8100" duration="3000" activate="True" location=":WCS:Left:Top:Back" color="#FF0000" intensity-value="100" intensity-range="0 100" />
<sedl:Effect xsi:type="sev:LightType" id=“Light2” si:pts="16750" duration="2000" activate="True" location=":WCS:Left:Top:Front" color="#0000FF" intensity-value="100" intensity-range="0 100" />
<sedl:Effect xsi:type="sev:FlashType" id=“Flash1” si:pts="16750" duration="1000" activate="True" location=":WCS:Left:Top:Back" frequency="255" color="#FFFFFF" intensity-value="100" intensity-range="0 100" />
<sedl:Effect xsi:type="sev:ScentType" id=“Scent1” si:pts="7900" duration="3000" activate="True" location=":WCS:Left:Top:Back" scent=":SCENT:rose" intensity-value="100" intensity-range="0 100" />
<sedl:Effect xsi:type="sev:AirjetType" id=“Air1” si:pts="5050" duration="500" activate="True" location=":WCS:Left:Top:Back" intensity-value="100" intensity-range="0 100" />
<sedl:Effect xsi:type="sev:WindType" id=“Wind1” si:pts="1500" duration="3000" activate="True" location=":WCS:CenterRight:Middle:Front" intensity-value="55" intensity-range="0 100" />
<sedl:Effect xsi:type="sev:VibrationType" id=“Vib1” si:pts="9100" duration="3000" activate="True" location=":WCS:Center:Middle:Midway" intensity-value="50" intensity-range="0 100" />
<sedl:Effect xsi:type="sev:WaterSprayerType" id=“Water1” si:pts="14100" duration="300" activate="True" location=":WCS:CenterRight:Bottom:Front" intensity-value="30" intensity-range="0 100" />
<sedl:Effect xsi:type="sev:FogType" id=“Fog1” si:pts="0" duration="3000" activate="True" location=":WCS:Center:Middle:Front" intensity-value="50" intensity-range="0 100" />
<sedl:Effect xsi:type="sev:BubbleType" id=“Bubble1” si:pts="7600" duration="5000" activate="True" location=":WCS:Center:Bottom:Front" intensity-value="250" intensity-range="0 100" />
<sedl:Effect xsi:type="sev:ArrayedLightType" updateRate="2" activate="true" si:pts="2">
<sev:LightSamples mpeg7:dim="6 12">
#000000 #0000FF #0000FF #0000FF #0000FF #000000
#000000 #0000FF #000000 #000000 #000000 #000000
#000000 #0000FF #0000FF #0000FF #0000FF #000000
#000000 #0000FF #000000 #000000 #000000 #000000
#000000 #0000FF #000000 #000000 #000000 #000000
#000000 #0000FF #0000FF #0000FF #0000FF #000000
#0000FF #0000FF #0000FF #0000FF #000000 #000000
#0000FF #000000 #000000 #000000 #000000 #000000
#0000FF #0000FF #0000FF #0000FF #000000 #000000
#0000FF #000000 #000000 #000000 #000000 #000000
#0000FF #000000 #000000 #000000 #000000 #000000
#0000FF #000000 #0000FF #0000FF #000000 #000000
</sev:LightSamples>
</sedl:Effect>
일 실시예에 따르면, 미디어가 플레이 되는 시간 정보와 장면(scene) 내부의 객체 정보를 이용하여, 사용자가 바라보는 장면과 관련된 실감 효과가 재현될 수 있다. 즉, 가상 현실 또는 증강 현실에 있는 사용자가 360도에 해당하는 영상 중에서 특정한 장면을 보고 있는 경우, 영상이 플레이 되는 시간과 사용자가 바라보고 있는 장면에 포함된 객체를 이용하여 실감 효과가 제공될 수 있다.
예를 들면, 가상 현실 또는 증강 현실에 있는 사용자가 360도에 해당하는 영상 중에서 정면을 바라보는 상황인 경우, 사용자의 현재 시야를 고려할 때 사용자 시야의 왼쪽에서 3차원 조명 효과가 재현되는 것은 바람직하지 않다. 다른 예를 들면, 가상 현실 또는 증강 현실에 있는 사용자가 스키 점프가 연출되고 있는 장면을 보고 있다면, 장면에 맞게 스키 점프를 표현할 수 있는 모션 체어를 움직이는 것이 바람직하다.
일 실시예에 따르면, 실감 효과를 표현하기 위한 ID와 객체의 참조 정보(Reference)를 아래의 표 3과 같이 표현할 수 있다. 여기서, 객체의 참조 정보는 "objectIDRef"를 포함할 수 있다. ObjectIDRef는 실감효과에 대해 참조되는 다른 효과의 ID 참조를 나타내며, 일 예로 현재의 실감효과에 대한 ID와 관련된 Trajectory 정보를 Reference로 가질 수 있다.
<complexType name="SEMBaseType" abstract="true">
<complexContent>
<restriction base="anyType">
<attribute name="id" type="ID" use="optional"/>
<attribute name="objectIdRef" type="anyURI" use="optional"/>
</restriction>
</complexContent>
</complexType>
장면이 연속될 경우, 객체가 움직이는 trajectory에 대한 정보를 미리 설정할 수 있다. 그리고, 현재의 실감효과와 그 trajectory 정보를 연결할 수 있다. 만약, 사용자 시선의 화면 영역에 trajectory가 일부 포함(overlap)될 경우, 사용자의 시선이 가리키는 방향에 대응하는 실감효과로 바뀔 수 있도록 trajectory 데이터가 활용될 수 있다. 즉, 360도 카메라 혹은 360도 VR 카메라로부터 획득된 영상으로부터 모션 체어에 대한 실감 효과 메타데이터가 생성되었을 경우, 사용자의 시선에 들어오는 장면에 따라 모션 체어의 동작이 달라질 수 있다. 이를 위해, 객체가 움직이는 trajectory에 대한 정보가 추가적으로 저장될 수 있다.
예를 들면, 도 2는 일 실시예에 따른 모션 체어 재현 실시예를 나타낸다. 도 2에 나타난 스키점프를 하는 객체의 움직임에 대한 trajectory에 대한 정보는 객체의 이동 궤적을 따라 저장될 수 있다. 그러나 사용자의 시선이 좌측을 보고 있을 경우, 모션 체어의 움직임은 사용자의 좌측 시선에 따라 변형된 trajectory에 대한 정보를 이용하여 제어될 수 있다. 즉, trajectory에 대한 정보는 사용자의 시선에 따라 변형될 수 있고, 변형된 정보에 의해 모션 체어의 움직임은 제어될 수 있다.
<Arrayed light effects>
리치 미디어(rich media)의 관점에서 볼 때 타겟 장치와 결합된(coupled)/보조된(assisted) 사실적인 미디어는 미디어 소비 경험이 크게 향상될 수 있으므로 사용자에게 매우 유용하다. 4D 시네마는 미디어와 장치를 함께 연결함으로써 더욱 풍성해질 수 있다. 조명, 바람, 플래시 등의 효과를 시뮬레이션 할 수 있는 사실적인 경험을 향상시키기 위해 복수의 장치가 사용될 수 있다.
4D 영화를 만들 때, 조명 효과(light effect)는 공간의 분위기나 따뜻함을 나타내는데 사용될 수 있지만, 복수의 조명 디스플레이 액추에이터의 배열과 함께 복잡한 조명 소스를 표현하여 스토리의 이벤트를 훨씬 더 높은 해상도로 보완하는데 배열된 조명 효과(arrayed light effect)가 사용될 수 있다.
도 3a는 일 실시예에 따른, 4D 극장에서 두개의 배열된 조명 액추에이터가 있는 영화에서 발생하는 폭파 이벤트와 연동하여 불꽃놀이 시각적 효과를 시뮬레이션한 배열된 조명 효과의 사용 사례를 나타낸다. 이때, 4D 극장은 4D 의자 앞에 대형 메인 스크린을 제공하고 두 개의 조명 디스플레이 액추에이터가 왼쪽과 오른쪽에 설치된다.
불꽃놀이 비디오가 대형 메인 스크린에서 재생되는 동안, m by n 매트릭스의 시퀀스로 표시되는 배열된 조명 효과는 영화 컨텐츠의 타임 라인에 따라 조명 디스플레이 액추에이터에 의해 시뮬레이션 된다. 배열된 조명 효과의 소스는 조명 디스플레이 액추에이터에 매핑된 m by n 매트릭스 또는 m by n 매트릭스로 구성된 비디오 또는 이미지 파일로 구성된 조명 시퀀스 일 수 있다.
따라서, 단일 혹은 복수개의 조명을 이용하여 실감 효과 재현을 하는 것이 아니라, 조명의 시퀀스(sequence)를 이용하여 벽면 혹은 공간을 light wall로 구성할 경우 가상 세계에 있는 사용자의 시선에 따라 조명 효과는 변화될 수 있다. 이 과정에서 영상에서 사용자가 보고 있는 장면에 포함된 객체의 움직임 또는 객체의 색의 변화에 따라 주변의 조명 시퀀스가 변화될 수 있다. 즉, 배열된 조명 효과는 RGB 매트릭스의 시퀀스로 구성될 수 있다.
도 3b는 일 실시예에 따른 4D 극장에서 컬러 조명을 갖는 터널을 통과하는 차량을 시각적으로 보강하기(augmenting) 위한 배열된 조명 효과의 사용 사례를 나타낸다. 적색, 청색 및 녹색 톤의 터널을 자동차가 통과 할 때, 자동차의 탑승객과 같은 조명 효과를 경험할 수 있도록 효과 편집기는 배열된 조명 효과를 추가할 수 있다.
배열된 조명 효과 메타 데이터는 극장에 설치된 조명 디스플레이 액츄에이터의 수 또는 성능을 인식하지 못한 편집자에 의해 저작(author)될 수 있다. 그러면, 어댑테이션 엔진은 배열된 조명 효과 메타 데이터를 분석(analyzing)하고 확장(extending)함으로써 적절한 조명 액츄에이터를 액츄에이팅시키기(actuating) 위한 장치 명령을 생성 할 것이다.
예를 들면, 편집자는 4D 극장에 설치된 조명 디스플레이 액츄에이터의 수가 4개인지 인식하지 못한 상태에서, 배열된 조명 효과 메타데이터를 저작할 수 있다. 일례로, 편집자는 조명 디스플레이 액츄에이터의 수가 2개로 가정하여 배열된 조명 효과 메타데이터를 생성할 수 있다.
따라서, 어댑테이션 엔진은 저작자가 생성한 배열된 조명 효과 메타데이터를 분석하고 변환함으로써, 4개의 조명 디스플레이 액츄에이터가 설치된 극장에서 최적화된 영상을 재생할 수 있다.
일 실시예에 따르면, 배열된 조명 효과의 구문(Syntax)는 아래의 표 4와 같다.
Figure pat00001
일 실시예에 따르면, 배열된 조명 장치의 성능을 위한 구문(Syntax)는 아래의 표 5와 같다.
Figure pat00002
일 실시예에 따르면, 배열된 조명의 사용자 선호도를 위한 구문(Syntax)는 아래의 표 6와 같다.
Figure pat00003
일 실시예에 따르면, 배열된 조명의 장치 제어 명령를 위한 구문(Syntax)는 아래의 표 7와 같다.
Figure pat00004
<미디어 교환의 3가지 유형>
ⅰ) 가상 세계에서 현실 세계로의 정보 어댑테이션(adaptation)
도 4는 일 실시예에 따른 가상 세계에서 현실 세계로의 정보 어댑테이션을 나타낸다.
실감 효과 메타 데이터(sensory effect metadata), VW 객체 특성(VW object characteristics), 실감 장치 성능(sensory device capability)(액추에이터 성능(actuator capability)), 장치 명령(device commands), 사용자의 실감 선호도(User's sensory preferences), 및 입력 데이터를 기반으로 출력 데이터를 생성하는 V => R 어댑테이션 엔진을 나타낸다.
프레임 워크 내의 가상 세계는 브로드 캐스터, 컨텐츠 제작자/배급자 또는 서비스 제공자와 같은 실감 효과 메타 데이터 및 VW 객체 특성의 소스로 동작하는 엔티티일 수 있다. V => R Adaptation Engine은 실감 효과 메타 데이터, 실감 장치(액추에이터) 성능 및 사용자의 감각 선호도를 입력으로 받아들이고, 이러한 입력에 기반하여 장치 명령을 생성하여 사용자에게 가치 있는 유익한 경험을 가능하게 하기 위해 소비자 장치를 제어하는 엔티티이다.
현실 세계 장치(실감 장치)는 장치 명령의 싱크(sink) 역할을 하며 실감 장치(액추에이터) 성능의 소스로 동작하는 엔티티이다. 또한 RoSE 엔진에 대한 사용자의 감각 선호도를 제공하는 엔티티도 집합적으로(collectively) 현실 세계 장치라고 한다. 실감 장치(액추에이터)는 팬(fans), 조명(lignts), 향기 장치(wcent devices), 리모콘이 있는 TV 세트(예:환경 설정)와 같은 사람 입력 장치를 포함한 현실 세계 장치의 하위 세트(sub-set)이다.
실제의 실감 효과 메타 데이터는 소위 실감 효과, 즉 멀티미디어 응용의 특정 장면에서 인간 감각 기관을 자극하여 feeling을 증대시키는(augment) 효과를 나타내는 수단을 제공한다. 실감 효과의 예는 향기, 바람, 조명등이다. 이러한 종류의 메타 데이터를 전송하는 수단은 실감 효과 전달 형식(sensory effect delivery format)으로 불리우며 물론 MPEG-2 전송 스트림, 파일 포맷, RTP (Real-time Transport Protocol) 페이로드 포맷 등과 같은 오디오/비주얼 전달 형식과 결합 될 수 있다.
실감 장치 성능은 실감 장치(액추에이터)의 특성을 나타내는 실감 효과와 수행 방법을 나타내는 설명 형식을 정의한다. 실감 장치(액추에이터)는 대응하는 실감 효과 (예: 조명, 팬, 히터등)를 만들 수 있는 소비자 장치이다. 장치 명령은 실감 장치 (액추에이터)를 제어하는 데 사용된다. 실감 효과 메타 데이터에 관해서도, 실감 장치(액추에이터) 성능 및 장치 명령에 대해서도, 이러한 자산(assets)을 운반하는 대응 수단은 각각 실감 장치 성능(sensory device capability)/명령 전달 형식(commands delivery forma)으로 지칭된다.
마지막으로, 사용자의 실감 선호도는 전달 포맷에 대한 실감 효과의 렌더링과 관련하여 현실 (최종) 사용자의 선호도를 설명할 수 있게 한다.
ⅱ) 현실 세계에서 가상 세계로의 정보 어댑테이션(adaptation)
도 5은 일 실시예에 따른 현실 세계에서 가상 세계로의 정보 어댑테이션을 나타낸다.
VW 객체 특성, 감지된 정보, 센서 성능, 센서 어댑테이션 선호도 및 입력 데이터에 기반하여 출력 데이터를 생성하는 R => V 어댑테이션 엔진을 포함하는 R2V 어댑테이션을 나타낸다.
가상 세계의 컨텍스트에서 소비되기 위해 현실 세계에서 감지된 정보를 처리하는 엔티티; 센서로부터 센서 성능, 사용자로부터 센서 어댑테이션 선호도 및/또는 가상 세계로부터 가상 세계 객체 특성의 유무에 관계없이 감지된 정보를 가져오는 엔티티; 센서 성능 및/또는 센서 어댑테이션 선호도에 기반하여 감지된 정보를 적용하여(adapting) 가상 세계 객체 특성을 제어하거나 감지된 정보를 어댑트(adapt)하는 엔티티.
현실 세계에서 가상 세계로 정보를 어댑트하기 위한 두 가지 가능한 구현이 있다. 첫 번째 시스템 구현에서, R => V adaptation은 센서 성능을 입력으로, 감지된 정보를 센서로부터, 센서 어댑테이션 선호도를 사용자로부터 가져오고, 센서 성능 및/또는 센서 어댑테이션 선호도에 기반하여 감지된 정보를 어댑트한다.
두 번째 시스템 구현에서 R => V 어댑테이션은 센서로부터 센서 성능, 사용자로부터 센서 어댑테이션 선호도 및/또는 가상 세계로부터 가상 세계 객체 특성 유무에 상관없이 감지된 정보를 가져오며, 센서 성능 및/또는 센서 어댑테이션 선호도에 기반하여 감지된 정보를 어댑트하는 가상 세계 객체 특성을 제어한다.
ⅱ) 가상 세계 간의 정보 교환(adaptation)
도 6는 일 실시예에 따른 가상 세계 간의 정보 교환을 나타낸다.
가상 세계에서 교환 가능한 정보를 생성하는 VW 객체 특성을 포함하는 정보 교환을 나타낸다.
V => V adaptation은 독점적인(proprietary) 가상 세계 객체 특성을 가상 세계에서 VW 객체 특성에 어댑트하고, 상호 운용성(interoperability)을 지원하기 위해 가상 세계에서 다른 가상 세계로 VW 객체 특성을 전송한다. 가상 세계 객체 특성에 제공된 데이터를 기반으로 가상 세계는 가상 객체/아바타에 대한 자체 표현을 내부적으로(internally) 어댑트한다.
도 7은 일 실시예에 따른, 실감 효과를 저작하는 실감 효과 저작 장치와 저작된 실감 효과를 실감 장치에서 재현 되도록 변환하는 어댑테이션 엔진 및 실감 효과를 재현하는 실감 장치를 나타낸다.
일 실시예에 따른, 실감 효과 저작 장치(710)는 VR 카메라 또는 360 카메라를 이용하여 360도 영상을 획득(711)할 수 있다. 실감 효과 저작 장치(710)는 360도 영상에 포함된 객체에 기반하여 실감 효과 메타데이터를 생성(712)할 수 있다. 실감 효과 저작 장치(710)는 360도 영상 중에서 사용자가 바라보는 장면에 해당하는 ID에 기반하여 실감 효과 메타데이터를 생성(713)할 수 있다.
생성된 실감 효과 메타데이터(712, 713)와 획득된 360도 영상(711)은 다운로드 및 송수신이 가능한 파일등의 형태로 유/무선 인터넷, Wifi, Zigbee을 통해 전송될 수 있다.
어댑테이션 엔진(730)은 360도 영상(711)과 실감 효과 메타데이터(712, 713)를 수신할 수 있다. 어댑테이션 엔진(730)은 수신한 실감 효과 메타데이터(712, 713)을 사용자 환경에서 재현하기 적합한 형태로 변환할 수 있다.
어댑테이션 엔진(730)은 센서를 이용하여 사용자의 환경 정보를 획득(731)할 수 있다. 여기서, 사용자의 획득된 환경 정보(731)는 저작된 실감 효과 메타데이터(712, 713)를 효과적으로 재현하기 위해 사용될 수 있다. 예를 들면, 센서에 의해 획득된 환경 정보 중 조도 측정기로 측정된 데이터가 밝음일 경우, 실감 효과 메타데이터에 포함된 "밝음"에 해당하는 실감 효과는 표현하지 않아도 될 수 있다.
어댑테이션 엔진(730)은 사용자의 선호도를 획득(732)할 수 있다. 여기서, 사용자의 선호도에 따라 사용자가 싫어하는 실감 효과는 제거 혹은 변형되어 표현될 수 있다. 예를 들면, 임산부의 경우 강한 자극(예를 들면, 소리, 조명, 향기등)이 싫을 경우, 강한 자극에 대한 사용자 선호도가 "약함" 또는 "무시"로 설정되었다면, 강한 자극에 대응하는 실감 효과들은 거의 재현되지 않을 수 있다.
어댑테이션 엔진(730)은 실감 장치 성능을 획득(733)할 수 있다. 저작되어 있는 실감 효과 메타데이터는 실감 장치 성능에 적합하도록 재현될 수 있다. 예를 들면, 바람은 실감 장치 중에서 선풍기를 이용하여 표현될 수 있다. 선풍기를 이용하여 바람을 100%로 표현할 경우, 선풍기의 성능에 따라 선풍기에 대한 제어 명령이 3단일 수 있거나 또는 5단일 수 있다.
어댑테이션 엔진(730)은 사용자의 시선 정보를 획득(734)할 수 있다. 여기서, 사용자의 시선 정보는 360도 영상 중에서 사용자가 바라보는 특정한 장면(scene)을 결정하기 위해 사용될 수 있다. 사용자는 360도 영상 전부를 바라볼 수 없고, 그 중 일부만 볼 수 있기 때문이다.
어댑테이션 엔진(730)은 획득된 사용자의 시선 정보(734)를 이용하여, 특정한 장면을 결정(735)할 수 있다. 어댑테이션 엔진(730)은 결정된 장면에 포함된 객체들을 추출하고, 추출된 객체들에 대한 trajectory 정보를 획득(736)할 수 있다. 이때, 획득된 trajectory 정보(736)는 사용자의 시선 이동에 따른 장면 결정에 사용될 수 있다.
어댑테이션 엔진(730)은 실감 효과 어댑테이션(737)을 통해, 실감 효과 저작 장치(710)에서 생성된 실감 효과 메타데이터(712, 713)를 사용자 환경에서 재현하기에 적합한 형태로 변환할 수 있다.
실감 효과 어댑테이션(737)이 수행된 후, 어댑테이션 엔진(730)은 실감 장치(750)을 제어하기 위한 제어명령 XML을 생성(738)할 수 있다. 어댑테이션 엔진(730)은 영상이 플레이 되는 시간에 맞게 실감 효과를 재현하기 위해, 영상 시간과 제어명령 XML 시간의 동기화를 위한 SyncTable를 생성(739)할 수 있다. 따라서, 영상이 플레이 되면서 영상 시간에 대응하는 SyncTable 내의 제어명령 XML 시간이 검색될 경우, 검색된 제어명령 XML 시간에 대응하는 제어명령 XML을 실감 장치로 전송(740)할 수 있다.
실감 장치(750)는 제어명령 XML을 수신하고, 수신한 제어명령 XML을 파싱(751)하고, XML이 아닌 바이너리 형태의 제어명령을 생성(752)할 수 있고, 유무선 네트워크/시리얼/블루투스등의 인터페이스를 이용하여 실감 장치를 제어(753)할 수 있다.
일 실시예에 따르면, 실감 장치는 현실 세계에서 사용자가 느끼는 모든 감각을 가상 세계의 사용자에게 제공할 수 있다. 이러한 실감 효과는 사용자의 시야에 따른 장면 및 장면에 포함된 객체에 따라 달리 제공될 수 있다. 이를 위해, 어댑테이션 엔진은 6DoF(yaw/pitch/roll 3DoF + 사용자 공간 위치 변경)데이터를 기반으로 사용자의 이동 거리와 방향 및 사용자의 시야에 따른 장면을 결정할 수 있다.
도 8은 일 실시예에 따른, 어댑테이션 엔진에서 사용자의 선호도를 고려하는 것을 나타낸다.
일 실시예에 따르면, 저작자 또는 편집자는 조명 효과를 저작하고자 할 때, 저작된 조명 효과가 재현되는 환경을 모두 고려할 수 없다. 따라서, 저작자 또는 편집자는 저작할 당시의 360도 영상의 장면 또는 장면에 포함된 객체를 기준으로 하여 조명 효과를 결정할 수 있다.
예를 들면, 저작자가 불꽃놀이 장면에 포함된 빨간색을 표현하려고 할 때, 실감 장치의 성능이 0~500까지 표현할 수 있음을 전제로 저작자는 빨간색을 300으로 설정하고, 실감 효과 저작 장치에서 생성된 실감 효과 메타데이터를 전송할 수 있다.
이때, 실감 장치 성능이 'red' 'blue' 'green'을 표현할 수 있고, 'white''red''blue''green'을 측정할 수 있는 센서로부터 환경 정보가 대략 'white'로 측정되고, 사용자가 'red'를 선호하지 않을 수 있다. 그러면, 어댑테이션 엔진은 '무시'에 근접한 'No operation'을 나타내는 제어 명령 XML을 전송할 수 있다.
그러나, 똑같은 상황에서 사용자 선호도가 'green'을 선호하지 않을 경우, 저작자가 저작할 당시 의도한 대로 'red'가 표현될 수 있다.
<가상 세계 객체 메타데이터>
다른 멀티미디어 응용 프로그램과 관련하여 가상 환경(Virtual Environments, VEs)의 특수성은 환경 내의 가상 세계 객체 표현에 있다. "가상 세계 객체"는 아바타와 가상 객체의 두 가지 유형으로 분류 할 수 있다. 아바타는 환경 내에서 사용자의 (시각적)표현으로 사용될 수 있다. 이러한 가상 세계 객체는 다른 용도로 사용된다:
ⅰ) VE 내의 다양한 종류의 물체를 특성화하며; ⅱ) VE와의 상호 작용을 제공한다.
객체의 일부 구성 요소가 가상 환경과 관련이 있을지라도(예: 현대 스타일 VE에서 중세(medieval) 수트를 착용 한 아바타는 부적절 할 수 있음), 다른 VEs에서 객체를 한 번 생성하고 수입하고(import)/사용할 수 있어야한다. 후자의 목적을 위해서, 외부 응용 프로그램(예: VE에서 노출되는 한 명의 아바타가 관련 사용자의 생리 센서(physiological sensors)를 처리하여 얻을 수 있는 감정)에서 객체를 제어 할 수 있어야한다. 현재 가상 세계 객체 특성 XSD는 다음 세 가지 주요 요구 사항을 고려하여 객체를 설명한다:
ⅰ) 다양한 VEs 구현으로부터 수입업자(importers)/수출업자(exporters)를 쉽게 생성할 수 있어야 하며, ⅱ) VE 내에서 객체를 제어하는 것이 쉬워야하며, ⅲ) 가상 세계 객체 특성 파일에 포함된 데이터를 사용하여 객체의 독점 템플릿(proprietary template)(가상 세계에만 해당)을 수정할 수 있어야한다.
객체가 VW에 고유한 저작 도구로 생성되면 다른 VWs에서도 사용될 수 있다. 아바타의 경우 사용자는 실생활(real life)과 같이 모든 VW 내부에 고유한 프리젠테이션을 가질 수 있다. 그는 하나의 VW겐에서 자신의 아바타(즉, "가상 자신")를 변경하고 업그레이드 할 수 있으며 모든 업데이트 된 속성은 다른 모든 VW에 반영될 수 있다. 아바타 자체는 표현 및 애니메이션 기능을 포함하지만 더 높은 레벨의 의미 정보(semantic information)도 포함한다. 그러나 각 VW에는 아바타를 처리하기위한 내부 구조가 있을 수 있다. 아바타의 모든 관련된 특성(관련된 동작을 포함)은 VW에서 수출된(exported) 다음 다른 VW로 수입될(imported) 수 있다. 마찬가지로 사용자가 만든 모든 가상 객체는 객체의 관련 특성을 내보내고 가져와 VW간에 교환될 수 있다. 가상 세계와 현실 세계 사이의 인터페이스의 경우 센싱된 현실 세계 정보는 처리되어 VW에서 객체의 관련 특성에 대한 제어 매개 변수로 사용될 수 있는 의미있는 데이터를 얻을 수 있다. 아바타에 관해서, 사용자의 캡쳐된 제스처는 아바타의 관련 특성을 업데이트함으로써 VW에서 아바타의 제스처를 제어하는데 사용될 수 있다. 유사하게, 가상 세계에서 생성된 아바타 동작은 위험한 영역에서의 사용, 유지 보수 작업, 장애인 및/또는 노인들에 대한 지원 등을 위해 실제 로봇 상에 매핑 될 수 있다.
아바타 및 가상 객체 모두에 의해 공유되는 가상 세계 객체의 특성 및 특성의 기본 타입이 있다.
가상 세계 객체 특성의 기본 타입은 다음 타입의 데이터로 구성된다:
ⅰ) Identity: 식별 디스크립터를 포함한다. ⅱ) Sound: 사운드 리소스 및 관계된 속성을 포함한다. ⅲ) Scent: 향기 리소스와 관계된 속성을 포함한다. ⅳ) Control: 번역, 오리엔테이션 및 스케일링과 같은 객체의 동작 특징을 제어하기 위한 디스크립터 세트를 포함한다. ⅴ) Event: 마우스, 키보드등에서 입력 이벤트를 제공하는 디스크립터 세트를 포함한다. ⅵ) 행동 모델(Behaviour Model): 입력 이벤트에 따라 객체의 행동 정보를 정의하는 디스크립터의 세트를 포함한다. ⅶ) id: 개별 가상 세계 객체 정보를 식별하기 위한 고유한 식별자를 포함한다.
가상 세계 객체 기본 타입은 아바타 메타 데이터 및 가상 객체 메타 데이터 모두에 상속되어(inherited) 각 메타 데이터의 특정 측면을(specific aspects) 확장할 수 있다.
<가상 세계 객체 기본 타입(Vritual world object base type)>
여기서, 아바타 특성 정보와 가상 객체 특성 정보가 상속해야(inherit) 하는 복잡한 타입의 VWOBaseType을 정의한다. 도 9는 일 실시예에 따른 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
이때, source는 아래의 표 8와 같고, 바이너리 표현 구문(Binary representation syntax)은 아래의 표 9와 같다. 그리고 이때의 의미(semantics)는 아래의 표 10과 같다.
Figure pat00005
VWOBaseType{ Number of bits Mnemonic
IdentificationFlag 1 Bslbf
DescriptionFlag 1 Bslbf
VWOCFlag 1 Bslbf
BehaviorModelListFlag 1 bslbf
IdFlag 1 bslbf
if(IdentificationFlag) {
Identification IdentificationType
}
if(DescriptionFlag) {
Description UTF-8
}
if(VWOCFlag) {
SoundListFlag 1 bslbf
ScentListFlag 1 bslbf
ControlListFlag 1 bslbf
EventListFlag 1 bslbf
SensoryEffectListFlag 1 bslbf
if(SoundListFlag) {
SoundList VWOSoundListType
}
if(ScentListFlag) {
ScentList VWOScentListType
}
if(ControlListFlag) {
ControlList VWOControlListType
}
if(EventListFlag) {
EventList VWOEventListType
}
If(SensoryEffectListFlag) {
SensoryEffectList VWOSensoryEffectListType
}
}
if(BehaviorModelListFlag) {
BehaviorModelList VWOBehaviorModelListType
}
if(IdFlag) {
id UTF-8
}
}
AvatarBaseType {
VWOBase VWOBaseType
}
VirtualObjectBaseType {
VWOBase VWOBaseType
}
Name Description
VWOBaseType 아바타 및 가상 객체의 공통 속성(attribute) 및 요소를 설명하는 기본 타입이다.
DescriptionFlag 바이너리에 의해 표현되는 이 필드는 설명(description) 요소의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하며, "0"은 요소가 사용되지 않는다는 것을 의미한다.
VWOCFlag 바이너리에 의해 표현되는 이 필드는 사운드, 향기, 컨트롤 및 이벤트 목록을 포함하는 VWOC 요소의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하며, "0"은 요소가 사용되지 않는다는 것을 의미한다.
IdFlag 바이너리에 의해 표현되는 이 필드는 id 속성(attribute)의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하며, "0"은 요소가 사용되지 않는다는 것을 의미한다.
IdentificationFlag 바이너리에 의해 표현되는 이 필드는 식별 엘리먼트의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하며, "0"은 요소가 사용되지 않는다는 것을 의미한다.
SoundListFlag 바이너리에 의해 표현되는 이 필드는 사운드 요소 목록의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하며, "0"은 요소가 사용되지 않는다는 것을 의미한다.
ScentListFlag 바이너리에 의해 표현되는 이 필드는 Scent 요소 목록의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하며, "0"은 요소가 사용되지 않는다는 것을 의미한다.
ControlListFlag 바이너리에 의해 표현되는 이 필드는 Control 요소 목록의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하며, "0"은 요소가 사용되지 않는다는 것을 의미한다.
EventListFlag 바이너리에 의해 표현되는 이 필드는 Event 요소 목록의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하며, "0"은 요소가 사용되지 않는다는 것을 의미한다.
SensoryEffectListFlag 바이너리에 의해 표현되는 이 필드는 SensoryEffect 요소 목록의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하며, "0"은 요소가 사용되지 않는다는 것을 의미한다.
BehaviorModelListFlag 바이너리에 의해 표현되는 이 필드는 BehaviorModel 요소 목록의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하며, "0"은 요소가 사용되지 않는다는 것을 의미한다.
Identification 가상 세계 객체의 식별을 설명한다.
Description 가상 세계 객체에 대한 설명을 포함한다.
VWOC 가상 세계 객체의 특성 세트을 설명한다.
SoundList 가상 세계 객체와 관련된 사운드 효과의 목록을 설명한다.
ScentList 가상 세계 객체와 관련된 향기 효과의 목록을 설명한다.
ControlList 가상 세계 객체와 관련된 컨트롤의 목록을 설명한다.
EventList 가상 세계 객체와 연결된 입력 이벤트의 목록을 설명한다.
SensoryEffectList 가상 세계 객체와 관련된 감각(sensory) 효과의 목록을 설명한다.
BehaviorModelList 가상 세계 객체와 관련된 동작 모델의 목록을 설명한다.
id 개별 가상 세계 객체 정보를 식별하기위한 고유 식별자이다.
AvatarBaseType 개인 아바타의 특징적인 설명을 제공하는 타입.
VirtualObjectBaseType 개개의 가상 객체의 특징적인 설명을 제공하는 타입.
<식별 타입(identification type)>
도 10는 일 실시예에 따른 식별 타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
이때, source는 아래의 표 11와 같고, 바이너리 표현 구문(Binary representation syntax)은 아래의 표 12와 같다. 그리고 이때의 의미(semantics)는 아래의 표 13과 같다.
Figure pat00006
IdentificationType { Number of bits Mnemonic
UserIDFlag 1 bslbf
OwnershipFlag 1 bslbf
RightsFlag 1 bslbf
CreditsFlag 1 bslbf
nameFlag 1 bslbf
familyFlag 1 bslbf
if(UserIDFlag) {
UserID UTF-8
}
if(OwnershipFlag) {
Ownership AgentType
}
if(RightsFlag) {
NumRights vluimsbf5
for(k=0; k< NumRights; k++){
Rights[k] See ISO/IEC 21000-16:2005 LicenseType
}
}
if(CreditsFlag) {
NumCredits vluimsbf5
for(k=0; k< NumCredits; k++){
Credits[k] AgentType
}
}
if(nameFlag) {
name See ISO/IEC 10646 UTF-8
}
if(familyFlag) {
family See ISO/IEC 10646 UTF-8
}
}
AgentType{ Number of bits Mnemonic
mpeg7:AgentType UTF-8
}
LicenseType{ Number of bits Mnemonic
r:LicenseType UTF-8
}
Name Definition
IdentificationType 가상 세계 객체의 식별을 설명한다.
UserIDFlag 바이너리에 의해 표현되는 이 필드는 UserID 요소의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하며, "0"은 요소가 사용되지 않는다는 것을 의미한다.
OwnershipFlag 바이너리에 의해 표현되는 이 필드는 소유권 요소(ownership element)의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하며, "0"은 요소가 사용되지 않는다는 것을 의미한다.
RightsFlag 바이너리에 의해 표현되는 이 필드는 rights 요소의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하며, "0"은 요소가 사용되지 않는다는 것을 의미한다.
CreditsFlag 바이너리에 의해 표현되는 이 필드는 크레디트 요소의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하며, "0"은 요소가 사용되지 않는다는 것을 의미한다.
nameFlag 바이너리에 의해 표현되는 이 필드는 name 속성(attribute)의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하며, "0"은 요소가 사용되지 않는다는 것을 의미한다.
familyFlag 바이너리에 의해 표현되는 이 필드는 패밀리 속성의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하며, "0"은 요소가 사용되지 않는다는 것을 의미한다.
UserID 가상 세계 객체에 연결된 사용자 ID를 포함한다.
Ownership 바이너리 표현에서 "AgentType"은 UTF-8로 인코딩된다.
NumRights 이 필드는 바이너리에 의해 표현되며 rights 정보의 수를 지정한다.
Rights 바이너리 표현에서 "LicenseType"은 UTF-8로 인코딩된다.
NumCredits 이 필드는 바이너리에 의해 표현되며, 크레디트 정보의 수를 지정한다.
Credits 바이너리 표현에서 "AgentType"은 UTF-8로 인코딩된다.
name 가상 세계 객체의 이름(name)을 설명한다.
family 다른 가상 세계 객체와의 관계를 설명한다.
<VWO사운드목록타입(VWOSountListType)>
도 11는 일 실시예에 따른 VWO사운드목록타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
이때, source는 아래의 표 14와 같고, 바이너리 표현 구문(Binary representation syntax)은 아래의 표 15와 같다. 그리고 이때의 의미(semantics)는 아래의 표 16과 같다.
Figure pat00007
VWOSoundListType { Number of bits Mnemonic
NumVWOSoundType vluimsbf5
for(k=0; k< NumVWOSoundType; k++){
Sound[k] VWOSoundType
}
}
Name Definition
VWOSoundListType 가상 세계 객체와 관련된 복수의 사운드 효과의 발생을 허용하는 래퍼 요소 타입(wrapper element type).
NumVWOSoundType 바이너리에 의해 표현되는 이 필드는 사운드 목록 타입에 포함된 사운드 정보의 수를 지정합니다.
Sound 가상 세계 객체에 관련된 사운드 효과를 설명한다.
<VWO향기목록타입(VWOScentListType)>
도 12는 일 실시예에 따른 VWO향기목록타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
이때, source는 아래의 표 17와 같고, 바이너리 표현 구문(Binary representation syntax)은 아래의 표 18와 같다. 그리고 이때의 의미(semantics)는 아래의 표 19과 같다.
Figure pat00008
VWOScentListType { Number of bits Mnemonic
NumVWOScentType vluimsbf5
for(k=0; k< NumVWOScentType; k++){
Scent[k] VWOScentType
}
}
Name Definition
VWOScentListType 가상 세계 객체에 관련된 복수의 향기 효과의 발생을 허용할 수있는 래퍼 요소 타입(wrapper element type).
NumVWOScentType 이 필드는 바이너리 표현 형식으로 표현되며, 향기 목록 타입에 포함된 향기 정보의 수를 지정한다.
Scent 가상 세계 객체와 관련된 향기 효과를 설명한다.
<VWO컨트롤목록타입(VWOControlListType)>
도 13는 일 실시예에 따른 VWO컨트롤목록타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
이때, source는 아래의 표 20와 같고, 바이너리 표현 구문(Binary representation syntax)은 아래의 표 21와 같다. 그리고 이때의 의미(semantics)는 아래의 표 22과 같다.
Figure pat00009
VWOControlListType { Number of bits Mnemonic
NumVWOControlType vluimsbf5
for(k=0; k< NumVWOControlType; k++){
Control[k] VWOControlType
}
}
Name Definition
VWOControlListType 가상 세계 객체에 관련된 컨트롤의 복수의 발생을 허용하는 래퍼 요소 타입(wrapper element type).
NumVWOControlType 이 필드는 바이너리 표현 형식으로 표현되며, 컨트롤 목록 타입에 포함된 컨트롤 정보의 수를 지정한다.
Control 가상 세계 객체와 관련된 컨트롤을 설명한다.
<VWO이벤트목록타입(VWOEventListType)>
도 14는 일 실시예에 따른, VWO이벤트목록타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
이때, source는 아래의 표 23와 같고, 바이너리 표현 구문(Binary representation syntax)은 아래의 표 24와 같다. 그리고 이때의 의미(semantics)는 아래의 표 25과 같다.
Figure pat00010
VWOEventListType { Number of bits Mnemonic
NumVWOEventType vluimsbf5
for(k=0; k< NumVWOEventType; k++){
Event[k] VWOEventType
}
}
Name Definition
VWOEventListType 가상 세계 객체와 관련된 입력 이벤트의 복수의 발생을 허용하는 래퍼 요소 유형(wrapper element type).
NumVWOEventType 이 필드는 바이너리 표현 형식으로 표현되며, 이벤트 목록 타입에 포함된 이벤트 정보의 수를 지정한다.
Event 가상 세계 객체와 관련된 입력 이벤트를 설명한다.
<VWO행동모델목록타입(VWOBehaviorModelListType)>
도 15는 일 실시예에 따른 VWO행동모델목록타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
이때, source는 아래의 표 26와 같고, 바이너리 표현 구문(Binary representation syntax)은 아래의 표 27와 같다. 그리고 이때의 의미(semantics)는 아래의 표 28과 같다.
Figure pat00011
VWOBehaviorModelListType { Number of bits Mnemonic
NumVWOBehaviorModelType vluimsbf5
for(k=0;k<NumVWOBehaviorModelType;k++){
BehaviorModel[k] VWOBehaviorModelType
}
}
Name Definition
VWOBehaviorModelListType 가상 세계 객체와 관련된 행동 모델의 복수의 발생을 허용하는 래퍼 요소 유형(wrapper element type).
NumVWOBehaviorModelType 이 필드는 바이너리 표현 형식으로 표현되며, 행동 모델 목록 타입에 포함된 행동모델 정보의 수를 지정한다.
BehaviorModel 가상 세계 객체와 관련된 행동 모델을 설명한다.
<VWO사운드타입(VWOSoundType)>
도 16는 일 실시예에 따른 VWO사운드타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
이때, source는 아래의 표 29와 같고, 바이너리 표현 구문(Binary representation syntax)은 아래의 표 30와 같다. 그리고 이때의 의미(semantics)는 아래의 표 31과 같다.
Figure pat00012
VWOSoundType{ Number of bits Mnemonic
SoundIDFlag 1 bslbf
IntensityFlag 1 bslbf
DurationFlag 1 bslbf
LoopFlag 1 bslbf
NameFlag 1 bslbf
ResourcesURL See ISO/IEC 10646 UTF-8
if(SoundIDFlag) {
soundID See ISO/IEC 10646 UTF-8
}
if(IntensityFlag) {
intensity 32 fsbf
}
if(DurationFlag) {
duration 32 uimsbf
}
if(LoopFlag) {
loop 8 uimsbf
}
if(NameFlag) {
name See ISO/IEC 10646. UTF-8
}
}
Name Definition
VWOSoundType 가상 세계 객체와 관련된 사운드 효과에 대한 설명이 포함된 타입.
SoundIDFlag 바이너리에 의해 표현되는 이 필드는 사운드의 ID 속성의 존재를 시그널한다. "1"은 속성이 사용됨을 의미하고, "0"은 속성이 사용되지 않음을 의미한다.
IntensityFlag 바이너리에 의해 표현되는 이 필드는 강도(intensity) 속성의 존재를 시그널한다. "1"은 속성이 사용됨을 의미하고, "0"은 속성이 사용되지 않음을 의미한다.
DurationFlag 바이너리에 의해 표현되는 이 필드는 duration 속성의 존재를 시그널한다. "1"은 속성이 사용됨을 의미하고, "0"은 속성이 사용되지 않음을 의미한다.
LoopFlag 바이너리에 의해 표현되는 이 필드는 루프 속성의 존재를 시그널한다. "1"은 속성이 사용됨을 의미하고, "0"은 속성이 사용되지 않음을 의미한다.
NameFlag 바이너리에 의해 표현되는 이 필드는 name 속성의 존재를 시그널한다. "1"은 속성이 사용됨을 의미하고, "0"은 속성이 사용되지 않음을 의미한다.
SoundResources URL 사운드 파일, 대게 MP4 파일에 대한 링크가 포함된 요소.
soundID 객체 사운드의 고유 식별자.
intensity 사운드의 강도(볼륨)
duration 사운드가 지속되는 시간. 기본 단위는 ms.
loop 반복 횟수를 나타내는 재생 옵션 (기본값: 1, 0 : 무기한의 반복, 1:once, 2:twice, ..., n : n times)
name 사운드의 name.
일 실시예에 따르면, 아래의 표 32와 같은 경우, 다음의 의미(semantics)를 가지는 객체와 관련된 사운드 정보의 설명을 나타낸다. 이름이 "BigAlarm"인 사운드 리소스는 "http://sounddb.com/alarmsound_0001.wav"에 저장되고 soundID의 값의 식별자는 "SoundID3"이다. 사운드의 길이는 30초이고. 사운드는 intensity = "50%"의 볼륨으로 반복해서 재생될 수 있다.
Figure pat00013
<VWO향기타입(VWOScentType)>
도 17는 일 실시예에 따른 VWO향기타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
이때, source는 아래의 표 33와 같고, 바이너리 표현 구문(Binary representation syntax)은 아래의 표 34와 같다. 그리고 이때의 의미(semantics)는 아래의 표 35과 같다.
Figure pat00014
VWOScentType{ Number of bits Mnemonic
ScentIDFlag 1 bslbf
IntensityFlag 1 bslbf
DurationFlag 1 bslbf
LoopFlag 1 bslbf
NameFlag 1 bslbf
ResourcesURL See ISO/IEC 10646 UTF-8
if(ScentIDFlag) {
scentID See ISO/IEC 10646 UTF-8
}
if(IntensityFlag) {
intensity 32 fsbf
}
if(DurationFlag) {
duration 32 uimsbf
}
if(LoopFlag) {
loop 8 uimsbf
}
if(NameFlag) {
name See ISO/IEC 10646 UTF-8
}
}
Name Definition
VWOScentType 가상 세계 객체와 관련된 향기 효과에 대한 설명이 포함된 타입.
ScentIDFlag 바이너리에 의해 표현되는 이 필드는 향기의 ID 속성의 존재를 시그널한다. "1"은 속성이 사용됨을 의미하고, "0"은 속성이 사용되지 않음을 의미한다.
IntensityFlag 바이너리에 의해 표현되는 이 필드는 강도(intensity) 속성의 존재를 시그널한다. "1"은 속성이 사용됨을 의미하고, "0"은 속성이 사용되지 않음을 의미한다.
DurationFlag 바이너리에 의해 표현되는 이 필드는 duration 속성의 존재를 시그널한다. "1"은 속성이 사용됨을 의미하고, "0"은 속성이 사용되지 않음을 의미한다.
LoopFlag 바이너리에 의해 표현되는 이 필드는 루프 속성의 존재를 시그널한다. "1"은 속성이 사용됨을 의미하고, "0"은 속성이 사용되지 않음을 의미한다.
NameFlag 바이너리에 의해 표현되는 이 필드는 name 속성의 존재를 시그널한다. "1"은 속성이 사용됨을 의미하고, "0"은 속성이 사용되지 않음을 의미한다.
ScentResources URL 향기 파일에 대한 링크가 포함된 요소.
scentID 객체 향기의 고유 식별자.
intensity 향기의 강도.
duration 향기가 지속되는 시간. 기본 단위는 ms.
loop 반복 횟수를 나타내는 재생 옵션 (기본값: 1, 0 : 무기한의 반복, 1:once, 2:twice, ..., n : n times)
name 향기의 name.
일 실시예에 따르면, 아래의 표 36와 같은 경우, 객체와 관련된 향기 정보의 설명을 표시한다. 이름이 "rose"인 향기 리소스는 "http://scentdb.com/flower_0001.sct"에 저장되고 scentID의 값의 식별자는 "ScentID5"입니다. 강도는 20 %이고 지속 시간은 20 초이다.
Figure pat00015
<VWO컨트롤타입(VWOControlType)>
도 18는 일 실시예에 따른 VWO컨트롤타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
이때, source는 아래의 표 37와 같고, 바이너리 표현 구문(Binary representation syntax)은 아래의 표 38와 같다. 그리고 이때의 의미(semantics)는 아래의 표 39과 같다.
Figure pat00016
VWOControlType { Number of bits Mnemonic
ControlIDFlag 1 bslbf
MotionFeatureControl MotionFeatureControlType
if(ControlIDFlag) {
controlID See ISO/IEC 10646 UTF-8
}
}
MotionFeaturesControlType{
PositionFlag 1 bslbf
OrientationFlag 1 bslbf
ScaleFactorFlag 1 bslbf
if(PositionFlag) {
Position Float3DVectorType
}
if(OrientationFlag) {
Orientation Float3DVectorType
}
if(ScaleFactorFlag) {
ScaleFactor Float3DVectorType
}
}
Name Definition
VWOControlType 가상 세계 객체와 관련된 컨트롤에 대한 설명이 포함된 타입.
ControlIDFlag 바이너리에 의해 표현되는 이 필드는 ControlID 요소의 존재를 시그널한다. "1"은 속성이 사용됨을 의미하고 "0"은 속성이 사용되지 않음을 의미한다.
MotionFeatureControl 가상 객체의 위치, 오리엔테이션 및 스케일을 컨트롤하는 요소 세트.
MotionFeatureControlType - 위치 제어, 오리엔테이션 제어 및 스케일링 제어와 같은 세 가지 타입의 컨트롤을 제공하는 타입.
PositionFlag - 바이너리 표현에서만 나타나는 이 필드는 위치 요소의 존재를 알립니다. "1"은 속성이 사용되어야 함을 의미하고 "0"은 속성이 사용되지 않음을 의미합니다.
OrientationFlag - 바이너리 표현으로 만 존재하는 이 필드는 오리엔테이션 요소의 존재를 알립니다. "1"은 속성이 사용되어야 함을 의미하고 "0"은 속성이 사용되지 않음을 의미합니다.
ScaleFactorFlag - 바이너리 표현에서만 나타나는 이 필드는 스케일팩터(scalefactor) 요소의 존재를 알립니다. "1"은 속성이 사용되어야 함을 의미하고 "0"은 속성이 사용되지 않음을 의미합니다.
Position - 3D 부동 소수점 벡터 (x, y, z)를 사용하여 장면에서 객체의 위치.
Orientation - Euler 각도(yaw, pitch, roll)로 3D 부동 소수점 벡터를 사용하여 장면에서 객체의 오리엔테이션.
ScaleFactor - 장면에 있는 객체 스케일은 3D 부동 소수점 벡터 (Sx, Sy, Sz)로 표현된다.
controlID 컨트롤의 고유 식별자.
두개의 컨트롤러가 같은 객체와 관련되지만 객체의 다른 부분에 관련되어 있고 이러한 부분이 계층적 구조(상위 및 하위 관계)인 경우 컨트롤러는 하위 관계에 있는 상대적인 동작을 수행한다. 컨트롤러가 동일한 부분에 관련되어 있으면, 컨트롤러는 전체 객체에 대해 스케일링 조절 또는 유사한 효과를 수행한다.
일 실시예에 따르면, 아래의 표 40과 같은 경우, 다음과 같은 의미를 갖는 객체 컨트롤 정보에 대한 설명을 나타낸다. 위치를 변경하는 모션 특징 컨트롤이 주어지며 controlID의 식별자가 "CtrlID7"이다. 객체는 X = "122.0", Y = "150.0"및 Z = "40.0"에 위치한다.
Figure pat00017
<VWO이벤트타입(VWOEventType)>
도 19는 일 실시예에 따른 VWO이벤트타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
이때, source는 아래의 표 41와 같고, 바이너리 표현 구문(Binary representation syntax)은 아래의 표 42와 같다. 그리고 이때의 의미(semantics)는 아래의 표 43과 같다.
Figure pat00018
VWOEventType { Number of bits Mnemonic
MouseFlag 1 bslbf
KeyboardFlag 1 bslbf
UserDefinedInputFlag 1 bslbf
if(MouseFlag) {
NumOfMouse vluimsbf5
for (k=0; k<NumOfMouse; k++) {
Mouse[k] MouseEventCS
}
}
if(KeyboardFlag) {
NumOfKeyboard vluimsbf5
for(k=0; k< NumOfKeyboard; k++ ) {
keyCodeFlag[k] 1 bslbf
if(keyCodeFlag[k]) {
keyCode 8 uimsbf
}
event[k] 2 bslbf
}
}
if(UserDefinedInputFlag) {
NumOfUserDefinedInput vluimsbf5
for(k=0; k<NumOfUserDefinedInput; k++ ) {
UserDefinedInput[k] See ISO/IEC 10646 UTF-8
}
}
eventID See ISO/IEC 10646 UTF-8
}
Name Definition
VWOEventType 가상 세계 객체와 관련된 입력 이벤트에 대한 설명이 포함된 타입.
MouseFlag 바이너리에 의해 표현되는 이 필드는 마우스 요소의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하고 "0"은 요소가 사용되지 않는다는 것을 의미한다.
KeyboardFlag 바이너리에 의해 표현되는 이 필드는 키보드 요소의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하고 "0"은 요소가 사용되지 않는다는 것을 의미한다.
UserDefinedInputFlag 바이너리에 의해 표현되는 이 필드는 UserDefinedInput 요소의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하고 "0"은 요소가 사용되지 않는다는 것을 의미한다.
NumOfMouse 바이너리에 의해 표현되는 이 필드는 VWOEventType에 포함된 마우스 이벤트 수를 지정한다.
Mouse Name - Element(4 bits)- Descriptio
click - 0000 - 마우스의 왼쪽 버튼을 클릭하는 이벤트를 설명한다.(click)
doubleclick - 0001 - 마우스의 왼쪽 버튼을 더블 클릭하는 이벤트를 설명한다.(doubleclick)
leftBtnDown - 0010 - 마우스의 왼쪽 버튼을 누른 채로 발생하는 이벤트를 설명한다. (LeftButtonDown)
leftBtnUp - 0011 - 마우스 왼쪽 버튼을 릴리즈할 때 발생하는 이벤트를 설명한다. (LeftButtonUP)
rightBtnDown - 0100 - 마우스의 오른쪽 버튼을 누른 채로 발생하는 이벤트를 설명한다. (RightButtonDown)
rightBtnUp - 0101 - 마우스 오른쪽 버튼을 릴리즈할 때 발생하는 이벤트를 설명한다. (RightButtonUP)
move - 0110 - 마우스 위치를 변경하는 동안 발생하는 이벤트를 설명한다. (move)
() - 0111 ~ 1111 - Reserved
NumOfKeyboard 바이너리에 의해 표현되는 이 필드는 VWOEventType에 포함된 키보드 이벤트 수를 지정한다.
keyCodeFlag 바이너리에 의해 표현되는 이 필드는 키 코드(keycode) 입력 요소의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하고 "0"은 요소가 사용되지 않는다는 것을 의미한다.
keyCode 각 키의 대응하는 키 코드(0-255)를 설명한다.
event 키보드 이벤트(pressed, clicked 또는 released)를 설명한다.바이너리 표현에서 키보드 이벤트는 다음과 같이 표시된다. (pressed: 00, clicked: 01, released: 10, and reserved: 11)
NumOfUserDefinedInput 바이너리에 의해 표현되는 이 필드는 VWOEventType에 포함된 사용자 정의 입력 이벤트의 수를 지정한다.
UserDefinedInput 사용자가 정의한 입력 이벤트를 설명한다.
eventID 이벤트의 고유 식별자.
일 실시예에 따르면, 아래의 표 44과 같은 경우, 다음과 같은 의미로 입력 이벤트에 대한 설명을 나타낸다. 입력 장치 인 마우스는 새로운 입력 값 "click"을 생성한다. 이 입력을 식별하기 위해 eventID의 값은 "EventID1"이다.
Figure pat00019
다른 일 실시예에 따르면, 아래의 표 45과 같은 경우, 다음과 같은 의미로 입력 이벤트에 대한 설명을 나타낸다. 입력 장치 인 키보드는 "65"의 키 코드를 누르는 새로운 입력 값을 생성한다. 이 입력을 식별하기 위해 eventID의 값은 "EventID2"이다.
Figure pat00020
또 다른 일 실시예에 따르면, 아래의 표 46과 같은 경우, 다음과 같은 의미로 입력 이벤트에 대한 설명을 나타낸다. 키보드는 두 개의 키 "shift"+ "a"를 누르는 새로운 입력 이벤트를 생성한다. 키보드 이벤트중 하나는 코드가 "16"인 "shift"키의 "pressed"이벤트이고 다른 하나는 코드가 "65"인 "a"키의 "pressed"이벤트이다. 이 입력을 식별하기 위해 eventID의 값은 "EventID3"이다.
Figure pat00021
<VWO실감효과타입 (VWOSensoryEffectType)>
도 20는 일 실시예에 따른 VWO실감효과타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
이때, source는 아래의 표 47와 같고, 바이너리 표현 구문(Binary representation syntax)은 아래의 표 48와 같다. 그리고 이때의 의미(semantics)는 아래의 표 49과 같다.
Figure pat00022
VWOSensoryEffectType { Number of bits Mnemonic
EffectFlag 1 bslbf
GroupOfEffectsFlag 1 bslbf
If(EffectFlag) {
EffectBaseType EffectBaseType
}
If(GroupOfEffectsFlag) {
GroupOfEffectsType GroupOfEffectType
}
}
Name Definition
VWOSensoryEffectType 가상 세계 객체와 관련된 감각얼 효과에 대한 설명이 포함된 타입.
EffectFlag 바이너리에 의해 표현되는 이 필드는 효과(effect) 요소의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하고 "0"은 요소가 사용되지 않는다는 것을 의미한다.
GroupOfEffectsFlag 바이너리에 의해 표현되는 이 필드는 GroupOfEffect 요소의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하고 "0"은 요소가 사용되지 않는다는 것을 의미한다.
Effect 감각 효과를 설명한다.
GroupOfEffects 감각 효과의 그룹을 설명한다.그룹화의 목적은 하위 요소(child elements)에서 일부 중복성을 제거하는 것이다. 여기에 포함된 모든 속성은 하위 요소로 상속된다.(inherited)
일 실시예에 따르면, 아래의 표 50과 같은 경우, 다음과 같은 의미를 가진 VWO 감각 효과 목록에 대한 설명을 나타낸다.
Figure pat00023
<VWO행동모델타입 (VWOBehaviourModelType)>
도 21는 일 실시예에 따른, VWO행동모델타입에 대한 XML 표현 구문(XML representation syntax)의 다이어그램(diagram)을 나타낸 도면이다.
이때, source는 아래의 표 51와 같고, 바이너리 표현 구문(Binary representation syntax)은 아래의 표 52와 같다. 그리고 이때의 의미(semantics)는 아래의 표 53과 같다.
Figure pat00024
VWOBehaviorModelType{ Number of bits Mnemonic
BehaviorInput BehaviorInputType
BehaviorOutput BehaviorOutputType
}
BehaviorInputType{
EventIDRefFlag 1 bslbf
if(EventIDRefFlag){
eventIDRef See ISO/IEC 10646 UTF-8
}
}
BehaviorOutputType{
SoundIDFlag 1 bslbf
ScentIDFlag 1 bslbf
AnimationIDFlag 1 bslbf
ControlIDFlag 1 bslbf
if(SoundIDFlag) {
SoundIDRefs See ISO/IEC 10646 UTF-8
}
if(ScentIDFlag) {
ScentIDRefs See ISO/IEC 10646 UTF-8
}
if(AnimationIDFlag) {
AnimationIDRefs See ISO/IEC 10646 UTF-8
}
if(ControlIDFlag) {
ControlIDRefs See ISO/IEC 10646 UTF-8
}
}
Name Description
VWOBehaviorModelType 입력 이벤트 및 관련된 출력 객체 행동의 컨테이너를 설명하는 타입.
BehaviorInput 객체 행동을 만들기 위한 입력 이벤트.
BehaviorInputType 입력 이벤트 ID를 참조.
Element - Information
eventIDRef - 입력 이벤트 ID
EventIDRef Flag - 바이너리에 의해 표현되는 이 필드는 eventIDRef 요소의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하고, "0"은 요소가 사용되지 않는다는 것을 의미한다.
BehaviorOutput 입력 이벤트에 따른 객체 행동 출력.
BehaviorOutputType 객체 행동 출력의 목록을 참조.
Element - Information
SoundFlag - 바이너리에 의해 표현되는 이 필드는 사운드 요소의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하고, "0"은 요소가 사용되지 않는다는 것을 의미한다.
ScentFlag - 바이너리에 의해 표현되는 이 필드는 향기 요소의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하고, "0"은 요소가 사용되지 않는다는 것을 의미한다.
AnimationFlag - 바이너리에 의해 표현되는 이 필드는 애니메이션 요소의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하고, "0"은 요소가 사용되지 않는다는 것을 의미한다.
ControlFlag - 바이너리에 의해 표현되는 이 필드는 컨트롤 요소의 존재를 시그널한다. "1"은 요소가 사용됨을 의미하고, "0"은 요소가 사용되지 않는다는 것을 의미한다.
soundIDRefs - soundID를 참조하여 객체의 사운드 효과를 제공한다.
scentIDRefs - scentID를 참조하여 객체의 향기 효과를 제공한다.
animationIDRefs - animationID를 참조하여 객체의 애니메이션 클립을 제공한다.
controlIDRefs - ControlID를 참조하여 객체의 컨트롤을 제공한다.
일 실시예에 따르면, 아래의 표 54과 같은 경우, 다음과 같은 의미를 가진 VWO 행동 모델에 대한 설명을 보여준다. eventID = "EventID1"이 BehaviorInput으로 주어지면 BehaviorOutput은 soundID = "SoID5"및 animationID = "AniID4"와 관련하여 실행된다.
Figure pat00025
<Light effect>
Light 효과에 대한 구문(Syntax)은 아래의 표 55과 같고, 바이너리 표현 구문(Binary representation syntax)은 아래의 표 56와 같다. 그리고 이때의 의미(semantics)는 아래의 표 57과 같다.
<complexType name="LightType">
<complexContent>
<extension base="sedl:EffectBaseType">
<attribute name="color" type="ct:colorType" use="optional"/>
<attribute name="intensity-value" type="sedl:intensityValueType" use="optional"/>
<attribute name="intensity-range" type="sedl:intensityRangeType" use="optional"/>
</extension>
</complexContent>
</complexType>
LightType { Number of bits Mnemonic
EffectBaseType EffectBaseType
colorFlag 1 bslbf
intensityValueFlag 1 bslbf
intensityRangeFlag 1 bslbf
if(colorFlag) {
color colorType
}
if(intensityValueFlag) {
intensity-value 32 fsfb
}
if(intensityRangeFlag) {
intensity-range[0] 32 fsfb
intensity-range[1] 32 fsfb
}
}
Name Definition
LightType Light 효과를 설명하기 위한 툴(tool)
colorFlag 바이너리에 의해 표현되는 이 필드는 color 속성의 존재를 나타낸다. 1이면 color 속성이 존재하고 그렇지 않으면 color 속성이 존재하지 않는다.
intensityValueFlag 바이너리에 의해 표현되는 이 필드는 intensity-value 속성의 존재를 표시한다. 1이면 intensity-value 속성이 존재하고, 그렇지 않으면 intensity-value 속성이 존재하지 않는다.
intensityRangeFlag 바이너리에 의해 표현되는 이 필드는 intensity-range 속성의 존재를 나타낸다. 1이면 intensity-range 속성이 존재하고, 그렇지 않으면 intensity-range 속성이 존재하지 않는다.
color 예제: urn:mpeg:mpeg-v:01-SI-ColorCS-NS:alice_blue는 앨리스 블루 색상을 나타낸다.
intensity-value light 효과의 강도를 lux 단위의 일루미네이션(illumination)으로 설명한다.
intensity-range intensity value의 range를 설명한다..예제: [10.0-5 lux, 130.0 klx].
일 실시예에 따르면, 아래의 표 58과 같은 경우, 다음과 같은 의미를 가진 light 효과에 대한 설명을 보여준다. 강도는 (10-5,32000) 룩스의 범위 내에서 50,0 럭스, 즉 대략적으로 color # FF0000인 가족 거실을 나타낸다. light 효과는 si : pts = "0"에서 활성화되고 si : pts = "28"에서 비활성화된다.
Figure pat00026
다른 일 실시예에 따르면, 아래의 표 59과 같은 경우, 색상이 색상 분류 체계(color classification scheme)에 대한 참조로 정의된 색상 체계를 사용하는 light 효과에 대한 설명을 보여준다.
Figure pat00027
또 다른 일 실시예에 따르면, 아래의 표 60과 같은 경우, 왼쪽:가운데:앞의 light 효과를 비활성화하는 light 효과에 대한 설명을 보여준다.
Figure pat00028
<Scent effect>
Scent 효과에 대한 구문(Syntax)은 아래의 표 61과 같고, 바이너리 표현 구문(Binary representation syntax)은 아래의 표 62와 같다. 그리고 이때의 의미(semantics)는 아래의 표 63과 같다.
<complexType name="ScentType">
<complexContent>
<extension base="sedl:EffectBaseType">
<attribute name="scent" type="mpeg7:termReferenceType"
use="optional"/>
<attribute name="intensity-value" type="sedl:intensityValueType"
use="optional"/>
<attribute name="intensity-range" type="sedl:intensityRangeType"
use="optional"/>
</extension>
</complexContent>
</complexType>
ScentType { Number of bits Mnemonic
EffectBaseType EffectBaseType
scentFlag 1 bslbf
intensityValueFlag 1 bslbf
intensityRangeFlag 1 bslbf
if(scentFlag) {
scent 9 bslbf
}
if(intensityValueFlag) {
intensity-value 32 fsfb
}
if(intensityRangeFlag) {
intensity-range[0] 32 fsfb
intensity-range[1] 32 fsfb
}
}
Name Definition
ScentType Scent 효과를 설명하기 위한 툴(tool).
scentFlag 바이너리에 의해 표현되는 이 필드는 Scent 속성이 있음을 나타낸다. 1이면 Scent 속성이 나타나고 그렇지 않으면 Scent 속성이 없다.
intensityValueFlag 바이너리에 의해 표현되는 이 필드는 intensity-value 속성의 존재를 표시한다. 1이면 intensity-value 속성이 존재하고, 그렇지 않으면 intensity-value 속성이 존재하지 않는다.
intensityRangeFlag 바이너리에 의해 표현되는 이 필드는 intensity-range 속성의 존재를 나타낸다. 1이면 intensity-range 속성이 존재하고, 그렇지 않으면 intensity-range 속성이 존재하지 않는다.
scent Scent의 사용 여부를 설명한다.
intensity-value Scent 효과의 강도를 ml / h로 나타냅니다.
intensity-range intensity value의 range를 설명한다.예제: [0.0, 10.0] ml/h.
일 실시예에 따르면, 아래의 표 64과 같은 경우, 다음과 같은 의미로 Scent 효과에 대한 설명을 보여준다. Scent는 분류 체계에 따라 라일락이며 10 초 동안 강도는 0,1 ml/h [(0.0,10.0) ml/h 범위 내]이며 효과는 si:pts = "0"에서 시작된다.
Figure pat00029
<Arrayed Light effect>
Arrayed Light 효과에 대한 구문(Syntax)은 아래의 표 65과 같고, 바이너리 표현 구문(Binary representation syntax)은 아래의 표 66와 같다. 그리고 이때의 의미(semantics)는 아래의 표 67과 같다.
<!-- ################################################ -->
<!-- SEV Arrayed Light type -->
<!-- ################################################ -->
<complexType name="ArrayedLightType">
<complexContent>
<extension base="sedl:EffectBaseType">
<sequence>
<choice>
<element name="LightSamples" type="sev:colorMatrixType"/>
<element name="LightResource" type="sev:LightResourceType"/>
</choice>
</sequence>
<attribute name="updateRate" type="positiveInteger" use="optional"/>
</extension>
</complexContent>
</complexType>

<complexType name="colorMatrixType">
<simpleContent>
<extension base="sev:colorVector">
<attribute ref="mpeg7:dim" use="required"/>
</extension>
</simpleContent>
</complexType>

<simpleType name="colorVector">
<list itemType="ct:colorType"/>
</simpleType>

<complexType name="LightResourceType">
<attribute name="type" type="string" use="required"/>
<attribute name="ref" type="anyURI" use="required"/>
</complexType>
ArrayedLightType { Number of bits Mnemonic
EffectBaseType EffectBaseType
LightSamplesFlag 1 bsblf
updateRateFlag 1 bslbf
if(LightSamplesFlag) {
NbrOfLightSampleMatrix 16 uimsbf
SizeOfLightSamplesRow 16 uimsbf
SizeOfLightSamplesColumn 16 uimsbf
for(j=0;j<NbrOfLightSampleMatrix;j++) {
for(k=0;k<( SizeOfLightSamplesRow * SizeOfLightSamplesColumn);k++) {
LightSamples[k] ColorType
}
}
}
else {
NbrOfLightResources 16 uimsbf
for(k=0;k< NbrOfLightResources;k++) {
LightResource LightResourceType
}
}
If(updateRateFlag) {
updateRate 16 uimsbf
}
}
LightResourceType { Number of bits Mnemonic
typeLength vluimsbf5
Type typeLength *8 Bslbf
Ref UTF-8
}
Name Definition
ArrayedLightType Arrayed light 효과를 설명하는 툴(tool). Arrayed light 효과는 LightSamples 또는 LightResources에 의해 효과적으로 표현된다. LightResources는 light LED 커튼 디스플레이, 유연한 LED 배열과 같은 조명 디스플레이 액추에이터에 매핑되는 mxn 색상 행렬로 구성될 수 있다. LightResources는 m × n 픽셀로 형성되고 m × n Arrayed light 액추에이터와 일치하는 컬러(회색 음영 포함) 비디오 또는 이미지로 정의된다.
LightSamplesFlag 이 필드는 바이너리에 의해 표현되면, arrayed light source의 선택을 지정한다. 1이면 LightSamples가 있고, 그렇지 않으면 LightResource가 있다.
NbrOfLightSampleMatrix LightSamples matrix의 수를 설명한다.
SizeOfLightSamplesRow LightSamples의 열 사이즈를 설명한다.
SizeOfLightSamplesColumn LightSamples의 행 사이즈를 설명한다.
LightSamples Arrayed light 액추에이터가 사용하는 배열 조명 효과의 m 색상 샘플을 m 개 설명한다. LightSamples는 분류 체계 용어 또는 RGB 값을 참조하는 colorType 단위로 지정된다. LightSamples의 m × n 컬러 매트릭스는 배열된 조명 액추에이터의 기능 중 nbrOfColumns 및 nbrOfRows에 따라 선형 적으로 확장된다. 예를 들어, 배열 조명 효과가 100x100 색상 샘플에 의해 지정되고 배열 조명 액추에이터의 행 및 열 수가 각각 200 및 300이라고 가정한다. 그런 다음, 적응 엔진은 100 x 100 배열 조명 효과를 배열 조명 작동기의 200 x 300 행렬까지 선형적으로 확장한다.
LightResource 라이트 리소스의 유형을 설명한다. 비디오 또는 이미지의 m × n 컬러 픽셀 (예 : 배열 조명 효과)은 배열 형 광 작동기 기능의 nbrOfRows 및 nbrOfColumns에 따라 선형 적으로 확장된다. 행렬 적응은 LightSamples의 것과 동일하다.
upateRateFlag 바이너리에 의해 표현되는 이 필드는 updateRate 속성의 존재를 나타낸다. 값이 1이면 updateRate 속성이 있으며, 그렇지 않으면 updateRate 속성이 없다.
updateRate 초당 데이터 업데이트 횟수를 설명합니다.예제 값 2는 배열 된 조명 장치가 매 초 2 회 값을 변경한다는 것을 의미한다.
일 실시예에 따르면, 아래의 표 68과 같은 경우, 첫 번째 예제는 6 x 12 색상 표가 있는 LightSample을 사용하여 배열 조명 효과에 대한 설명을 보여준다. 배열된 조명 효과는 si : pts = "2"에서 활성화되며 updateRate = "2"로 인해 1 초에 두 개의 6x6 컬러 매트릭스를 나타낸다. 두 번째 예제는 LightResource를 사용하여 배열된 조명 효과에 대한 설명을 다음과 같은 의미로 보여준다. 라이트 어레이 정보 세트는 광원 무비 파일에 의해 제공되고 배열된 조명 정보의 30 프레임이 초당 주어진다. 배열된 조명 효과는 si : pts = "5"에서 활성화된다.
Figure pat00030
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다

Claims (14)

  1. 적응 엔진에 의해 수행되는 실감 효과 적응(sensory effect adaptation) 방법에 있어서,
    가상 세계의 객체를 설명하기 위한 상기 객체와 관련된 제1 메타데이터를 식별하는 단계;
    상기 식별된 객체와 관련된 상기 제1 메타데이터를 현실 세계의 실감 장치(sensory device)에 적용하기 위한 제2 메타데이터로 변환하는 단계
    를 포함하고,
    상기 제2 메타데이터는, 상기 제1 메타데이터가 상기 가상 세계에 있는 사용자의 시선에 따라 결정된 장면에 기초하여 변환되는 실감 효과 적응 방법.
  2. 제1항에 있어서,
    상기 제2 메타 데이터는,
    상기 사용자의 시선에 따라 결정된 장면뿐만 아니라 상기 사용자의 환경 정보, 상기 사용자의 선호도, 실감 장치(sensory device) 성능, 센서 성능을 고려하여 변환되는 실감 효과 적응 방법.
  3. 제1항에 있어서,
    상기 제2 메타데이터로 변환하는 단계는,
    상기 실감 장치(sensory device)를 제어하기 위한 제어명령 XML을 생성하는 단계;
    상기 영상에 대한 시간과 상기 제어명령 XML에 대한 시간의 동기화를 위한 SyncTable를 생성하는 단계;
    재생되는 영상의 시간에 대응하는 상기 제어명령 XML이 상기 SyncTable 에서 검색된 경우, 상기 제어명령 XML을 실감 장치(sensory device)로 전송하는 단계
    를 더 포함하는 실감 효과 적응 방법.
  4. 실감 장치(sensory device)가 수행하는 실감 효과 적응 방법에 있어서,
    제1 메타 데이터가 변환된 제2 메타 데이터에 기초하여 생성된 제어 명령 XML을 식별하는 단계;
    상기 식별된 제어 명령 XML을 파싱하여, 바이너리 타입의 제어명령을 생성하고, 상기 생성된 바이너리 타입의 제어명령을 이용하여 상기 실감 장치(sensory device)가 제어되는 단계
    를 포함하고,
    상기 제2 메타 데이터는, 가상 세계의 객체를 설명하기 위한 상기 객체와 관련된 상기 제1 메타데이터가 상기 가상 세계에 있는 사용자의 시선에 따라 결정된 장면에 기초하여 변환되는 실감 효과 적응 방법.
  5. 제4항에 있어서,
    상기 제2 메타 데이터는,
    상기 사용자의 시선에 따라 결정된 장면뿐만 아니라 상기 사용자의 환경 정보, 상기 사용자의 선호도, 실감 장치(sensory device)의 성능을 고려하여 변환되는 실감 효과 적응 방법.
  6. 적응 엔진에 있어서,
    상기 적응 엔진은 프로세서를 포함하고,
    상기 프로세서는,
    가상 세계의 객체를 설명하기 위한 상기 객체와 관련된 제1 메타데이터를 식별하고, 상기 식별된 객체와 관련된 상기 제1 메타데이터를 현실 세계의 실감 장치(sensory device)에 적용하기 위한 제2 메타데이터로 변환하며,
    상기 제2 메타데이터는,
    상기 제1 메타데이터가 상기 가상 세계에 있는 사용자의 시선에 따라 결정된 장면에 기초하여 변환되는 적응 엔진.
  7. 제6항에 있어서,
    상기 제2 메타 데이터는,
    상기 사용자의 시선에 따라 결정된 장면뿐만 아니라 상기 사용자의 현실 세계의 주변 환경 정보, 상기 사용자의 선호도, 실감 장치(sensory device) 성능, 센서 성능을 고려하여 변환되는 적응 엔진.
  8. 제6항에 있어서,
    상기 프로세서는,
    상기 실감 장치(sensory device)를 제어하기 위한 제어명령 XML을 생성하고, 상기 영상에 대한 시간과 상기 제어명령 XML에 대한 시간의 동기화를 위한 SyncTable를 생성하고, 재생되는 영상의 시간에 대응하는 상기 제어명령 XML이 상기 SyncTable 에서 검색된 경우, 상기 제어명령 XML을 실감 장치(sensory device)로 전송하는 것을 더 수행하는 적응 엔진.
  9. 실감 장치(sensory device)에 있어서,
    상기 실감 장치는 프로세서를 포함하고,
    상기 프로세서는,
    제1 메타 데이터가 변환된 제2 메타 데이터에 기초하여 생성된 제어 명령 XML을 식별하고, 상기 식별된 제어 명령 XML을 파싱하여, 바이너리 타입의 제어명령을 생성하고, 상기 생성된 바이너리 타입의 제어명령을 이용하여 상기 실감 장치가 제어되며,
    상기 제2 메타 데이터는,
    가상 세계의 객체를 설명하기 위한 상기 객체와 관련된 상기 제1 메타데이터가 상기 가상 세계에 있는 사용자의 시선에 따라 결정된 장면에 기초하여 변환되는 실감 장치.
  10. 제9항에 있어서,
    상기 제2 메타 데이터는,
    상기 사용자의 시선에 따라 결정된 장면뿐만 아니라 상기 사용자의 현실 세계의 주변 환경 정보, 상기 사용자의 선호도, 실감 장치 성능, 센서 성능을 고려하여 변환되는 실감 장치.
  11. 컴퓨터에서 읽기 가능한 실감 효과를 위한 데이터가 기록된 기록 매체에 있어서,
    상기 데이터는, 가상 세계의 객체를 설명하기 위한 객체와 관련된 정보를 포함하고,
    상기 객체와 관련된 정보는, (i) 객체ID의 존재를 나타내는 객체ID플래그 및 (ii) 가상 세계에서 객체를 식별하는 객체ID를 포함하며,
    상기 객체ID를 이용하여 식별된 객체와 관련된 실감 효과의 리스트는 실감효과리스트에 포함되며, 상기 실감효과리스트에 포함된 실감 효과의 사용 여부는 실감 효과리스트플래그를 통해 판별되는 기록 매체.
  12. 제11항에 있어서,
    상기 객체ID플래그가 1인 경우 상기 객체ID에 대응하는 객체가 존재하는 것을 나타내며,
    상기 객체ID플래그가 0인 경우 상기 객체ID에 대응하는 객체가 존재하지 않는 것을 나타내는 기록 매체.
  13. 컴퓨터에서 읽기 가능한 실감 효과를 위한 데이터가 기록된 기록 매체에 있어서,
    상기 데이터는, 가상 세계의 객체를 설명(describe)하기 위한 실감효과리스트(sensoryeffectlist)를 포함하고,
    상기 실감효과리스트는, 상기 가상 세계의 객체와 관련된 실감 효과의 리스트를 나타내며,
    상기 실감효과리스트에 포함된 실감 효과의 사용 여부는 실감효과리스트플래그를 통해 판별되는 포함하는 기록 매체.
  14. 제13항에 있어서,
    상기 실감효과리스트플래그가 1인 경우 상기 실감효과리스트에 포함된 상기 실감 효과는 사용되는 것을 나타내며,
    상기 실감효과리스트플래그가 0인 경우 상기 실감효과리스트에 포함된 상기 실감 효과는 사용되지 않는 것을 나타내는 기록 매체.
KR1020180078567A 2017-07-14 2018-07-06 실감 효과 적응 방법 및 이를 수행하는 적응 엔진 및 실감 장치 KR102460671B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/035,357 US10861221B2 (en) 2017-07-14 2018-07-13 Sensory effect adaptation method, and adaptation engine and sensory device to perform the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170089750 2017-07-14
KR20170089750 2017-07-14

Publications (2)

Publication Number Publication Date
KR20190008105A true KR20190008105A (ko) 2019-01-23
KR102460671B1 KR102460671B1 (ko) 2022-10-31

Family

ID=65324104

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180078567A KR102460671B1 (ko) 2017-07-14 2018-07-06 실감 효과 적응 방법 및 이를 수행하는 적응 엔진 및 실감 장치

Country Status (1)

Country Link
KR (1) KR102460671B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150072209A (ko) * 2013-12-19 2015-06-29 한국전자통신연구원 멀티스크린 기반 콘텐츠 제공방법, 수신방법 및 그 시스템
KR20160077548A (ko) * 2014-12-23 2016-07-04 한국전자통신연구원 실감 효과 메타데이터 생성 장치 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150072209A (ko) * 2013-12-19 2015-06-29 한국전자통신연구원 멀티스크린 기반 콘텐츠 제공방법, 수신방법 및 그 시스템
KR20160077548A (ko) * 2014-12-23 2016-07-04 한국전자통신연구원 실감 효과 메타데이터 생성 장치 및 방법

Also Published As

Publication number Publication date
KR102460671B1 (ko) 2022-10-31

Similar Documents

Publication Publication Date Title
US10861221B2 (en) Sensory effect adaptation method, and adaptation engine and sensory device to perform the same
US11538213B2 (en) Creating and distributing interactive addressable virtual content
US11200028B2 (en) Apparatus, systems and methods for presenting content reviews in a virtual world
Yoon et al. MPEG-V: Bridging the virtual and real world
US8176115B2 (en) Real-world representation system and language
JP6504165B2 (ja) 情報処理装置及び情報処理方法並びにプログラム
US9652046B2 (en) Augmented reality system
Kim Authoring multisensorial content
US9201497B2 (en) Systems, methods, and computer readable storage media for providing virtual media environments
US20040015983A1 (en) Method and apparatus for a data receiver and controller for the facilitation of an enhanced television viewing environment
US20100268745A1 (en) Method and apparatus for representing sensory effects using sensory device capability metadata
KR20100114857A (ko) 사용자 실감 효과 선호정보를 이용한 실감 효과 표현 방법 및 장치
Josué et al. Modeling sensory effects as first-class entities in multimedia applications
Choi et al. Streaming media with sensory effect
KR20180092778A (ko) 실감정보 제공 장치, 영상분석 서버 및 실감정보 제공 방법
KR20100008776A (ko) 실감 효과 표현 방법 및 그 장치 및 실감 기기 성능 메타데이터가 기록된 컴퓨터로 읽을 수 있는 기록 매체
US9143750B2 (en) Apparatus and method for processing media in convergence media service platform
KR20100008777A (ko) 실감 효과 표현 방법 및 그 장치 및 실감 기기 제어 메타데이터가 기록된 컴퓨터로 읽을 수 있는 기록 매체
Mattos et al. Beyond multimedia authoring: On the need for mulsemedia authoring tools
CN113225587B (zh) 视频处理方法、视频处理装置及电子设备
US20030061400A1 (en) Enabled device and a method of operating a set of devices
JP4601255B2 (ja) 一群のデバイス集合の操作
Kim et al. Virtual world control system using sensed information and adaptation engine
KR102460671B1 (ko) 실감 효과 적응 방법 및 이를 수행하는 적응 엔진 및 실감 장치
Kim et al. MPEG-V international standard and the internet of things

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant