KR101991794B1 - 공간적 관계 정보를 이용하여 겹쳐 있는 가상 객체를 선택하기 위한 방법, 프로그램 및 장치 - Google Patents

공간적 관계 정보를 이용하여 겹쳐 있는 가상 객체를 선택하기 위한 방법, 프로그램 및 장치 Download PDF

Info

Publication number
KR101991794B1
KR101991794B1 KR1020160164995A KR20160164995A KR101991794B1 KR 101991794 B1 KR101991794 B1 KR 101991794B1 KR 1020160164995 A KR1020160164995 A KR 1020160164995A KR 20160164995 A KR20160164995 A KR 20160164995A KR 101991794 B1 KR101991794 B1 KR 101991794B1
Authority
KR
South Korea
Prior art keywords
virtual
virtual objects
virtual object
group
selecting
Prior art date
Application number
KR1020160164995A
Other languages
English (en)
Other versions
KR20180064748A (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 KR1020160164995A priority Critical patent/KR101991794B1/ko
Publication of KR20180064748A publication Critical patent/KR20180064748A/ko
Application granted granted Critical
Publication of KR101991794B1 publication Critical patent/KR101991794B1/ko

Links

Images

Classifications

    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0179Display position adjusting means not related to the information to be displayed
    • 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/002Specific input/output arrangements not covered by G06F3/01 - G06F3/16
    • G06F3/005Input arrangements through a video camera
    • 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/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • 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
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0179Display position adjusting means not related to the information to be displayed
    • G02B2027/0187Display position adjusting means not related to the information to be displayed slaved to motion of at least a part of the body of the user, e.g. head, eye

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Optics & Photonics (AREA)
  • Multimedia (AREA)
  • Architecture (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 명세서의 실시예에 따른 가상 객체를 선택하기 위한 방법은, 겹쳐 있는 가상 객체 그룹을 선택하는 단계, 상기 선택된 가상 객체 그룹 내 가상 객체들 각각의 중심점을 계산하는 단계, 상기 계산된 중심점을 이용하여 그룹 내 가상 객체들 간의 공간적 관계 정보를 획득하는 단계, 상기 공간적 관계 정보에 기초하여 상기 그룹 내 가상 객체들을 서로 겹치지 않도록 배열하는 단계, 및 상기 배열된 그룹 내 가상 객체들 중 적어도 하나의 가상 객체를 선택하는 단계를 포함하고, 이에 따르면, 가상 환경에서 서로 겹쳐 있는 가상 객체들 간의 공간적 관계 정보를 유지하면서 가상 객체들을 겹치지 않도록 배열하여 표시하므로, 가상 객체를 선택하는데 소요되는 시간을 줄이고 정확도를 향상시킬 수 있다.

Description

공간적 관계 정보를 이용하여 겹쳐 있는 가상 객체를 선택하기 위한 방법, 프로그램 및 장치{METHOD, PROGRAM AND APPARATUS FOR SELECTING OVERLAPPING VIRTUAL OBJECTS USING SPATIAL RELATIO NSHIP INFORMATION}
본 발명은 공간적 관계 정보를 이용하여 겹쳐 있는 가상 객체를 선택하기 위한 방법, 프로그램 및 장치에 관한 것으로서, 더욱 상세하게는 가상 현실 세계에서 겹쳐 있는 가상 객체를 선택하는 경우 가상 객체들 간의 공간적 관계 정보를 획득하고 이를 기초로 가상 객체들이 서로 겹치지 않도록 배열함으로써, 겹쳐 있는 가상 객체를 오류 없이 정확하게 선택하기 위한 방법, 프로그램 및 장치에 관한 것이다.
[국가지원 연구개발에 대한 설명]
본 연구는 한국과학기술연구원의 주관 하에 미래창조과학부의 글로벌프론티어사업(몰입형 VST Glasses 기반 공존현실 UI/UX 및 Human Factor 연구개발, 과제고유번호: 1711041262)의 지원에 의하여 이루어진 것이다.
몰입 가상 환경이란 컴퓨터 상의 가상공간의 가상 객체들과 인간의 다양한 감각들이 서로 상호 작용할 수 있는 공간을 의미한다. 최근 몰입 가상 환경을 제공해 주는 Head Mounted Display (HMD) 디바이스가 보급화 되면서 여러 가상 객체들과 상호작용하는 방법이 중요한 이슈가 되고 있다. 몰입 가상 환경에서 가상 객체와 상호작용하기 위해서 가장 중요한 부분은 사용자가 가상 객체를 정확하고 빠르게 선택할 수 있어야 하고 이를 위해서 많은 연구들이 이루어졌다.
가상 환경에서 사용자는 키보드, 마우스, 조이스틱 등의 기존 입력장치를 이용하거나 터치, 음성 인식, 시선 추적 및 손 동작 인식 등을 통해 가상 객체 또는 가상 메뉴 등을 선택할 수 있다. 최근에는 HMD 등을 이용하여 가상 환경을 접할 때 사용자의 손을 인식하여 이를 기초로 화면 상에 가상의 손을 생성하고, 가상의 손을 통해 원하는 가상 객체를 선택하는 방법 등이 개발되고 있다.
이와 같은 방법은 사용자가 실제 세상에서 객체를 선택하는 것처럼 쉽게 가상의 객체를 선택할 수 있고 직관적으로 사용할 수 있다는 장점이 있지만, 가상 환경에서 가상 손으로 선택할 수 있는 범위 너머에 있는 멀리 떨어져 있는 객체들을 선택하기 어렵다는 문제점이 있다.
멀리 떨어져 있는 객체들을 선택할 수 있는 방법 중 가장 많이 사용되는 방법은 광선 투사법(Ray-casting)이다. 이 방법은 사용자의 시점에서 가상의 광선(Ray)을 발사하여 이 광선의 범위에 포함되는 객체를 사용자가 손동작이나 버튼을 클릭하여 선택하는 방법으로 사용자가 원하는 객체를 빠르면서도 간단하게 선택할 수 있다는 점에서 널리 이용되고 있다.
하지만 이러한 광선 투사법(Ray-casting)도 한계점을 가지고 있는데, 가상 캐드(CAD) 및 몰입 가상 게임 환경에서와 같이, 선택하고자 하는 가상 객체들의 수가 많고 가상 객체들이 겹쳐 있는 상황에서는 가상 객체를 선택하는 과정에서 많은 에러가 발생하고 원하는 객체를 선택하는데 소요되는 시간이 증가하게 된다.
이러한 문제를 해결하기 위하여 많은 연구들이 이루어졌다. 한 가지 방법은 사용자의 눈에서 광선 투사(Ray-casting)를 실행하고, 사용자의 손목을 회전하여 가상객체들이 겹쳐진 경우, 이들을 하나씩 변경해서 볼 수 있도록 하는 것이다. 다른 방법인 플렉서블 포인터(Flexible Pointer) 방법에 의하면, 겹쳐져 있는 가상 객체를 선택할 때 사용자의 조작에 따라서 직선의 광선(Ray)을 휘게 만들어서 가상 객체를 선택할 수 있다.
다른 센서들과 결합한 방법으로는 IMU 센서로 감지한 회전 값을 이용하여 겹쳐 있는 객체들 중에서 원하는 객체를 선택 할 수 있도록 하는 방법이 있다. 하지만 이러한 방법들을 사용하더라도 겹쳐 있는 가상 객체들이 밀집되어 있는 환경에서는 여전히 객체를 선택하는데 시간이 많이 소요되고 선택의 정확성이 떨어진다는 문제점이 있다.
이러한 문제를 해결하기 위해서 가상 객체들을 임의의 4개의 그룹으로 나누고 사용자가 원하는 그룹을 선택하면 다시 이 그룹 내 객체들을 임의의 4개의 그룹으로 나누는 단계를 반복하는 방법이 제안되었다. 하지만 상기 방법을 사용하는 경우 그룹화된 객체를 나누는 과정에서 객체들이 가지던 공간의 관계정보가 없어져 버리기 때문에 사용자가 선택하고자 하는 객체에 대한 공간/위치 정보를 잃게 되어 다시 선택을 해야 하는 문제가 발생한다.
출원번호 제10-2010-0099859호 출원번호 제10-2016-7001428호
Argelaguet, F. and Andujar, C. 2013. A survey of 3D object selection techniques for virtual environments. Computers & Graphics, 37 (3). A. Steed and C. Parker. 3D selection strategies for head tracked and non-head tracked operation of spatially immersive displays. In 8th International Immersive Projection Technology Workshop, pages 13- 14, 2004. Kopper R. Bacim F. and Bowman D.A. Rapid and Accurate 3D Selection by Progressive Refinement, IEEE 3DUI 2011, 67-74, 2011.
본 발명의 기술적 과제는 이러한 점에서 착안된 것으로, 몰입 가상환경에서 다수의 가상 객체들이 밀집하여 겹쳐 있는 경우 가상 객체들이 서로 겹치지 않도록 배열하되, 가상 객체들 간의 공간적 관계 정보에 기초하여 배열함으로써 사용자가 겹쳐져 있는 가상 객체들 중 원하는 가상 객체의 구조 정보를 이해하면서 손쉽게 가상 객체를 선택할 수 있도록 하는 기술을 제공하는 것을 목적으로 한다.
본 명세서의 일 측면에 따른 가상 객체를 선택하기 위한 방법은, 겹쳐 있는 가상 객체 그룹을 선택하는 단계, 상기 선택된 가상 객체 그룹 내 가상 객체들 각각의 중심점을 계산하는 단계, 상기 계산된 중심점을 이용하여 그룹 내 가상 객체들 간의 공간적 관계 정보를 획득하는 단계, 상기 공간적 관계 정보에 기초하여 상기 그룹 내 가상 객체들을 서로 겹치지 않도록 배열하는 단계, 및 상기 배열된 그룹 내 가상 객체들 중 적어도 하나의 가상 객체를 선택하는 단계를 포함한다.
일 실시예에서, 상기 겹쳐 있는 가상 객체 그룹을 선택하는 단계 또는 상기 배열된 그룹 내 가상 객체들 중 적어도 하나의 가상 객체를 선택하는 단계는, 사용자의 손 영상을 획득하는 단계, 상기 사용자의 손 영상에 기초하여 사용자의 손동작을 인식하는 단계, 및 상기 인식된 손동작에 기초하여 가상 객체 그룹 또는 가상 객체를 선택하는 단계를 포함할 수 있다.
일 실시예에서, 상기 그룹 내 가상 객체들의 크기가 상이한 경우, 가상 객체 그룹의 선택 범위를 조절하는 단계를 더 포함할 수 있다.
일 실시예에서, 상기 공간적 관계 정보에 기초하여 상기 그룹 내 가상 객체들을 서로 겹치지 않도록 배열하는 단계는, 상기 그룹 내 겹쳐 있는 가상 객체들의 수가 임계 값 이상인 경우, 상기 가상 객체들을 미리 정해진 수의 하위 그룹으로 분할하여 배열하는 단계를 포함하되, 상기 하위 그룹으로 분할하여 배열하는 단계는, 분할된 상기 하위 그룹 내 가상 객체들의 수가 상기 임계 값 미만이 될 때까지 반복될 수 있다.
일 실시예에서, 상기 선택된 가상 객체 그룹 내 가상 객체들 각각의 중심점을 계산하는 단계는, 상기 그룹 내 가상 객체들 각각의 중심점에 기초하여 상기 그룹 내 가상 객체들의 프록시들(proxies)의 중심점을 계산 단계를 포함할 수 있다.
일 실시예에서, 상기 가상 객체를 선택하기 위한 방법을 실행하기 위한 컴퓨터 프로그램이 제공될 수 있다.
본 명세서의 또 다른 측면에 따른 가상 객체를 선택하기 위한 장치는, 가상 객체 정보를 표시하기 위한 디스플레이 모듈, 디스플레이 모듈에 표시된 가상 객체 그룹 또는 적어도 하나의 가상 객체를 선택하기 위한 가상 객체 선택 모듈, 상기 가상 객체 그룹 내 가상 객체들 각각의 중심점을 계산하는 중심점 계산 모듈, 계산된 상기 중심점을 이용하여 그룹 내 가상 객체들 간의 공간적 관계 정보를 획득하기 위한 공간적 관계 정보 획득 모듈, 및 상기 공간적 관계 정보에 기초하여 상기 그룹 내 가상 객체들을 서로 겹치지 않도록 배열하기 위한 가상 객체 배열 모듈을 포함하되, 상기 가상 객체 선택 모듈은 배열된 상기 그룹 내 가상 객체들 중 적어도 하나의 가상 객체를 선택하기 위해 이용될 수 있다.
일 실시예에서, 상기 장치는 사용자의 손 영상을 획득하기 위한 촬영 모듈을 더 포함하고, 상기 가상 객체 그룹 선택 모듈 및 상기 가상 객체 선택 모듈은, 상기 촬영 모듈에 의해 획득한 사용자의 손 영상에 기초하여 사용자의 손동작을 인식하기 위한 손 동작 인식 유닛, 및 상기 인식된 손동작에 기초하여 가상 객체 그룹 또는 가상 객체를 선택하기 위한 가상 객체 선택 유닛을 포함할 수 있다.
일 실시예에서, 상기 그룹 내 가상 객체들의 크기가 상이한 경우, 가상 객체 그룹의 선택 범위를 조절하기 위한 선택 범위 조절 모듈을 더 포함할 수 있다.
일 실시예에서, 상기 가상 객체 배열 모듈은, 상기 그룹 내 겹쳐 있는 가상 객체들의 수가 임계 값 이상인 경우, 상기 가상 객체들을 미리 정해진 수의 하위 그룹으로 분할하여 배열하기 위한 가상 객체 그룹 분할 유닛을 포함하되, 상기 가상 객체 그룹 분할 유닛은, 분할된 상기 하위 그룹 내 가상 객체들의 수가 상기 임계 값 미만이 될 때까지 분할을 반복할 수 있다.
일 실시예에서, 상기 중심점 계산 모듈은 상기 그룹 내 가상 객체들 각각의 중심점에 기초하여 상기 그룹 내 가상 객체들의 프록시들(proxies)의 중심점을 계산할 수 있다.
일 실시예에서, 상기 디스플레이 모듈은, 헤드 마운티드 디스플레이(HMD, Head Mounted Display) 또는 시스루 디스플레이(See-through display)일 수 있다.
본 명세서에서 제공하는 가상 객체를 선택하기 위한 방법에 의하면, 헤드 마운티드 디스플레이(HMD; Head Mounted Display) 등의 니어 아이 디스플레이를 착용한 몰입 가상 환경에서 사용자가 상호작용을 하는 경우, 가상 객체들이 겹쳐 있는 경우에 효율적으로 원하는 가상 객체들을 선택할 수 있다. 본 명세서에서 제공된 실시예들에 따르면, 종래의 광선 투사법(Ray-casting)에 따라 가상 객체를 선택하는 경우 원하는 객체들을 선택하지 못해서 선택 에러가 발생하고, 객체를 선택하는데 시간이 많이 소요되는 문제점을 해결할 수 있을 뿐만 아니라, 종래의 가상 객체를 그룹으로 분할하여 표시하는 방법에서 가상 객체들 간의 공간적 연관 관계를 상실하여 사용자가 원하는 가상 객체를 선택하는 것이 용이하지 않았던 문제점을 해결할 수 있다.
본 발명에서 제안하는 방법은 다양한 애플리케이션에 적용될 수 있는데, 대표적으로 몰입 가상 현실에서 객체들의 조립과 설계 작업들을 해야 하는 CAD (Computer Aided Design) 분야에 적용될 수 있다. 또한 몰입 가상현실 기반의 게임에서도 사용자들이 자신이 원하는 객체들을 선택하고 조작할 수 있다는 점에서 기존의 방법들에 비해서 선택 시간이 빠르고 선택 과정에서 에러가 줄어든다는 장점을 가지고 있다. 또한 분자 구조 모델링과 같이 겹쳐져 있는 객체들의 수가 많고 사용자가 실험 과정에서 선택을 해야 하는 상황에서도 유용하게 이용될 수 있다.
도 1은 일 실시예에 따른 가상 객체 선택 방법의 각 단계를 도시한 순서도이다.
도 2는 일 실시예에 따라 가상 객체의 프록시들(proxies)이 겹치지 않도록 배열하는 것을 나타낸 도면이다.
도 3a는 일 실시예에 따라 가상 객체들의 중심점과 프록시들의 중심점을 계산하는 과정을 나타낸 도면이다.
도 3b는 프록시들의 중심점을 이용하여 가상 객체들 간의 거리와 상대적인 방향을 포함하는 공간적 관계 정보를 계산하는 것을 나타낸 도면이다.
도 4a는 종래의 기술인 광선 투사법(Ray-Casting)을 이용하여 가상 객체를 선택하는 경우를 나타낸 도면이다.
도 4b는 일 실시예에 따른 가상 객체 선택 방법을 이용하여 가상 객체를 선택하는 경우를 나타낸 도면이다.
도 5은 일 실시예에 따라 가상의 손 영역을 이용하여 가상 객체를 선택하는 과정이 도시되어 있다.
도 6은 일 실시예에 따라 HMD를 착용시 손 동작을 인식하여 가상 객체를 선택하는 것을 나타낸 도면이다.
도 7는 일 실시예에 따른 가상 객체 선택 장치 및 구성요소들을 도시한 블록도이다.
도 8은 도 7의 가상 객체 선택 모듈 및 구성요소들을 도시한 블록도이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당 업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시 예는 서로 다르지만 상호 배타적일 필요는 없다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예와 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있다. 따라서, 후술하는 상세한 설명은 한정적인 의미로 기술된 것이 아니며, 본 발명의 범위는 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에서 동일하거나 유사한 기능을 지칭한다.
본 명세서에서 사용되는 용어는 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어를 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 관례 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 명세서의 설명 부분에서 그 의미를 기재할 것이다. 따라서 본 명세서에서 사용되는 용어는, 단순한 용어의 명칭이 아닌 그 용어가 가지는 실질적인 의미와 본 명세서의 전반에 걸친 내용을 토대로 해석되어야 한다.
또한, 본 명세서에 기술된 실시예는 전적으로 하드웨어이거나, 부분적으로 하드웨어이고 부분적으로 소프트웨어이거나, 또는 전적으로 소프트웨어인 측면을 가질 수 있다. 본 명세서에서 "부(unit)", "모듈(module)", "장치(device)", "서버(server)" 또는 "시스템(system)" 등은 하드웨어, 하드웨어와 소프트웨어의 조합, 또는 소프트웨어 등 컴퓨터 관련 엔티티(entity)를 지칭한다. 예를 들어, 부, 모듈, 장치, 서버 또는 시스템은 플랫폼(platform)의 일부 또는 전부를 구성하는 하드웨어 및/또는 상기 하드웨어를 구동하기 위한 애플리케이션(application) 등의 소프트웨어를 지칭하는 것일 수 있다.
이하, 도면들을 참조하여 공간적 관계 정보를 이용하여 겹쳐 있는 가상 객체를 선택하기 위한 방법의 바람직한 실시예를 보다 상세하게 설명하기로 한다.
도 1은 일 실시예에 따른 공간적 관계 정보를 이용하여 겹쳐 있는 가상 객체 선택 방법의 각 단계를 도시한 순서도이다. 도 1을 참조하면, 사용자의 입력에 따라 겹쳐 있는 가상 객체 그룹을 선택하는 단계가 수행된다(S100).
가상 객체 그룹은 몰입형 가상 환경 내 존재하는 개별적인 가상 객체들의 일부 또는 전체가 포함된 구(sphere) 형태의 범위이다. 도 2를 참조하면, 상기 가상 객체 그룹(20) 내 포함된 가상 객체들(21 내지 23)은 서로 겹쳐 있기 때문에 사용자가 광선 투사법(Ray-Casting) 등 종래의 방법으로는 개별적인 가상 객체를 선택하기에 용이하지가 않다.
후술하는 본 명세서의 실시예들에 따르면, 가상 객체들 간의 공간적 관계 정보를 이용하여 가상 객체들의 프록시들(21' 내지 23')이 겹치지 않도록 배열(익스플로젼 캐스팅(explosion-casting))하기 때문에 겹쳐 있는 가상 객체를 사용자가 보다 정확하게 선택하는 것이 가능하다.
상기 단계(S100)에서, 사용자는 디스플레이 된 가상 객체 중 선택하고자 하는 가상 객체가 포함된 가상 객체 그룹을 선택하기 위해 입력 장치를 이용하여 선택 명령을 내리면, 사용자의 입력에 따라 겹쳐 있는 가상 객체 그룹이 구 형태로 선택된다. 일 실시예에서, 상기 그룹 내 가상 객체들의 크기가 상이한 경우, 사용자는 구의 크기를 조정함으로써 가상 객체들의 크기에 따라 다양하게 가상 객체 그룹의 선택 범위를 조절할 수 있다.
상기 입력은 키보드, 마우스, 조이스틱 또는 터치 패드 등의 기존의 입력 장치에 의해 수행될 수 있고, 후술하는 바와 같이 사용자의 손 동작을 인식함으로써 수행될 수도 있다.
이어, 상기 선택된 가상 객체 그룹 내 가상 객체들 각각의 중심점을 계산하는 단계가 수행된다(S200). 일 실시예에서, 상기 단계(S200)는 상기 그룹 내 가상 객체들 각각의 중심점 Co에 기초하여 상기 그룹 내 가상 객체들의 프록시들(proxies)의 중심점을 계산하는 단계를 포함할 수 있다.
도 3a를 참조하면, 가상 객체들의 중심점인 Co 와 가상 객체 그룹 선택 범위인 구의 중심인 Cs 에 대한 내적을 수행하고, 이 값을 다시 사용자가 보는 시점의 중심인 Cv 의 차이 만큼 이동하게 되면 선택된 객체들이 프록시들(proxies)로 다시 시각화될 중심점인 Cp를 구할 수 있다. 이와 같이 프록시들의 중심점을 구하는 이유는 익스플로젼(explosion) 알고리즘을 사용하여 겹쳐져 있는 가상 객체들을 펼쳐서 시각화를 하는 경우 원래 겹쳐져 있던 가상 객체들의 공간적인 연관 관계를 유지하기 위함이다.
여기서, 가상 객체들의 중심점인 Co, 가상 객체 그룹 선택 범위의 중심인 Cs, 가상 객체들이 겹치지 않게 배열된 프록시들(proxies)의 중심점인 Cp는 하기의 수식에 의해 계산될 수 있다.
Figure 112016119487696-pat00001
이어, 상기 계산된 가상 객체의 중심점을 이용하여 그룹 내 가상 객체들 간의 공간적 관계 정보를 획득하는 단계가 수행된다(S300).
도 3b를 참조하면, 프록시들의 중심점 Cp을 기반으로 각 가상 객체들(21 내지 23) 간의 거리와 상대적인 방향을 포함하는 공간적 관계 정보를 계산할 수 있다. 프록시들의 중심점 Cp를 계산한 다음에는 이 프록시들의 중심점 Cp을 기준으로 한 객체들의 공간적 연관관계를 구하게 된다.
가상 객체들 간의 연관관계를 계산할 때는 프록시들의 중심점에서부터 가장 가까운 가상 객체들부터 하나씩 계산을 수행한다. 도 3b의 (A)를 참조하면, 프록시들의 중심점 Cp 와 객체(21)의 중심점 Co1 간의 떨어진 거리(Ro1)와 방향을 계산한다. 도 3b의 (B)를 참조하면, 다음 단계로 첫 번째 객체(21)의 중심점 Co1 과 두 번째 객체(22)의 중심점 Co2 와 떨어진 거리(Ro2) 및 방향을 계산한다. 도 3b의 (C)를 참조하면, 이후에는 두 번째 객체(22)의 중심점 Co2 와 세 번째 객체(23)의 중심점 Co3 의 떨어진 거리(Ro3) 및 방향을 계산한다.
이와 같이, 객체들간의 거리와 방향 정보들을 포함하는 공간적 연관관계가 만들어지면, 계산된 공간적 관계 정보에 기초하여 그룹 내 가상 객체들이 서로 겹치지 않도록 배열하는 단계가 수행된다(S400). 도 3b의 (D)를 참조하면, 각 중심점 간의 방향 및 거리 비율을 유지하면서 프록시들(21' 내지 23')이 서로 겹치지 않도록 배열할 수 있다(익스플로젼 캐스팅(explosion-casting)).
이어, 사용자의 입력에 따라 상기 배열된 그룹 내 가상 객체들 중 적어도 하나의 가상 객체를 선택하는 단계가 수행된다(S500). 사용자는 디스플레이 된 가상 객체의 프록시들 중 선택하고자 하는 가상 객체를 선택하기 위해, 입력 장치를 이용하여 선택 명령을 내리면 사용자의 입력에 따라 가상 객체가 선택된다.
상기 입력은 키보드, 마우스, 조이스틱 또는 터치 패드 등의 기존의 입력 장치에 의해 수행될 수 있고, 후술하는 바와 같이 사용자의 손 동작을 인식함으로써 수행될 수도 있다. 이하에서는, HMD 착용시 사용자의 손 동작을 인식하여 가상 객체 그룹 및 가상 객체를 선택하는 방법에 관하여 상세하게 설명한다.
실시예들에 따르면, 가상 환경에서 서로 겹쳐 있는 가상 객체들 간의 공간적 관계 정보를 유지하면서 가상 객체들을 겹치지 않도록 배열하여 표시하므로, 가상 객체를 선택하는데 소요되는 시간을 줄이고 정확도를 향상시킬 수 있다.
일 실시예에서, 사용자가 헤드 마운티드 디스플레이(HMD; Head Mounted Display) 또는 시스루 디스플레이(See-through display) 등 니어 아이 디스플레이를 착용하여 가상 환경에서 상호작용하는 경우, HMD에 장착된 IMU 센서의 회전 값을 통해 사용자의 머리 움직임을 동기화 시킬 수 있고, 사용자는 가상 객체를 선택하기 위해 머리를 회전하여 선택하고자 하는 범위의 가상 객체 그룹을 선택할 수 있다.
일 실시예에서, 상기 겹쳐 있는 가상 객체 그룹을 선택하는 단계(S100), 또는 상기 가상 객체를 선택하는 단계(S500)는, 사용자의 손 영상을 획득하는 단계, 상기 사용자의 손 영상에 기초하여 사용자의 손동작을 인식하는 단계, 상기 인식된 손동작에 기초하여 가상 객체 그룹을 선택하는 단계를 포함할 수 있다. 이와 같이 사용자의 손동작을 인식하여 이에 대응되는 가상 손을 이용하여 객체를 선택하는 방법에 의하면, 사용자는 실제 세상에서 객체를 선택하는 것처럼 쉽게 가상의 객체를 선택할 수 있고 직관적으로 사용할 수 있다.
먼저, 촬영 모듈을 이용하여 사용자의 손 영상을 획득하는 단계가 수행된다. 일 실시예에서 상기 영상을 취득하는 장치는 카메라 등의 촬영 장치일 수 있고, 바람직하게는 촬영 대상의 깊이 정보까지도 획득할 수 있는 촬영 장치(예를 들어, RGB-D 센서)일 수 있다.
이어, 상기 사용자의 손 영상에 기초하여 사용자의 손동작을 인식하는 단계가 수행된다. 일 실시예에서, 상기 사용자의 손 영역 중 손가락 관절 영역 또는 손바닥 영역에 하나 이상의 포인트를 매칭(matching)시키고, 상기 매칭된 하나 이상의 포인트의 위치 변화 또는 깊이 변화에 기초하여 손 동작을 인식할 수 있다. 추가적으로, 사용자의 인식된 손 모양이 가상 환경 내 가상의 손 형태로 실시간으로 디스플레이 된다.
이어, 상기 인식된 손동작에 기초하여 가상 객체 그룹을 선택하는 단계가 수행된다. 도 5를 참조하면, 상기 가상의 손 영역(30)으로 가상 객체 그룹(20)을 선택하면, 가상 객체들이 공간적 관계 정보에 따라 서로 겹치지 않도록 배열되고, 사용자는 가상의 손 영역(30)을 이용하여 원하는 객체를 선택할 수 있다. 이 때 상기 가상의 손 영역(30) 대비 가려지는 면적이 일정 임계치 이상이면 가상 객체를 선택할 수 있다.
도 6에는 실제로 사용자가 HMD를 착용하고 손 동작을 통해 가상 객체를 선택하는 것이 도시되어 있다. 이와 같이, 사용자의 손동작을 인식하여 가상 객체를 선택하는 방법에 의하면, 사용자는 실제 세상에서 객체를 선택하는 것처럼 쉽게 가상의 객체를 선택할 수 있고 직관적으로 사용할 수 있다.
일 실시예에서, 상기 공간적 관계 정보에 기초하여 상기 그룹 내 가상 객체들을 서로 겹치지 않도록 배열하는 단계(S400)는, 상기 그룹 내 겹쳐 있는 가상 객체들의 수가 임계 값(예를 들어, 20개) 이상인 경우, 상기 가상 객체들을 미리 정해진 수(예를 들어, 4개)의 하위 그룹으로 분할하여 배열하는 단계를 포함할 수 있다.
예를 들어, 사용자가 선택한 가상 객체 그룹 내 포함된 가상 객체의 수가 20개 이상인 경우, 상기 방법에 의해 프록시들이 겹치지 않도록 배열하여도 개체 수가 너무 많기 때문에, 사용자가 원하는 가상 객체를 선택하는데 어려움이 있을 수 있다. 이 경우, 상기 가상 객체들을 4개의 하위 그룹으로 분할하여 표시할 수 있고, 사용자가 4개의 하위 그룹 중 하나를 선택한 경우, 선택된 하위 그룹 내 가상 객체의 프록시들이 서로 겹치지 않도록 배열될 수 있다.
일 실시예에서, 상기 하위 그룹으로 분할하여 배열하는 단계는, 분할된 상기 하위 그룹 내 가상 객체들의 수가 상기 임계 값 미만이 될 때까지 반복될 수 있다. 이와 같은 실시예들에 따르면, 분자 구조 모델링이나 CAD 분야와 같이 매우 많은 수의 가상 객체가 밀집되어 있는 경우에도 사용자가 용이하게 원하는 가상 객체를 선택하여 오류를 줄일 수 있다.
도 4a는 종래의 기술인 광선 투사법(Ray-Casting)을 이용하여 가상 객체를 선택하는 경우를 나타낸 도면이고, 도 4b는 본 명세서의 일 실시예에 따른 가상 객체 선택 방법을 이용하여 가상 객체를 선택하는 경우를 나타낸 도면이다.
도 4a를 참조하면, 종래의 광선 투사법을 이용하여 가상 객체 그룹 내 다른 가상 객체에 가려진 객체(기둥)를 선택하고자 하는 경우, 원하는 객체(기둥) 대신에 전방에 위치한 다른 가상 객체가 선택될 확률이 높다. 따라서, 가상 객체 선택에 있어서 오류가 증가하고, 선택에 소요되는 시간 증가한다.
이에 비해, 도 4b를 참조하면 전술된 방법으로 계산된 가상 객체들의 공간적 관계 정보에 기초하여 프록시들을 겹치지 않도록 배열함으로써, 사용자가 원하는 가상 객체를 용이하게 선택할 수 있는바, 종래의 방법에 비해 정확하고 신속하게 가상 객체를 선택하는 것이 가능하다.
상기 가상 객체를 선택하기 위한 방법은, 애플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현될 수 있고, 상기 프로그램은 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이하에서는, 공간적 관계 정보를 이용하여 겹쳐 있는 가상 객체를 선택하기 위한 장치에 관하여 설명한다.
도 7는 일 실시예에 따른 공간적 관계 정보를 이용하여 겹쳐 있는 가상 객체 선택 장치 및 구성요소들을 도시한 블록도이다. 디스플레이 모듈(100)은 몰입형 가상 현실을 외부로 출력하고, 가상 현실 내 가상 객체들 및 이를 선택하기 위한 가상 손 등의 정보를 사용자에게 디스플레이 하기 위해 이용된다.
일 실시예에서, 디스플레이 모듈(100)은 헤드 마운티드 디스플레이(Head Mounted Display) 또는 시스루 디스플레이(See-through display)와 같은 니어 아이 디스플레이일 수 있다. 이 경우, 상기 디스플레이 모듈(100)은 사용자의 각 눈에 대응되는 제1 디스플레이 및 제2 디스플레이로 구성될 수 있고, 상기 제1 및 제2 디스플레이는 비디오 장치, TV, 컴퓨터와 같은 외부의 영상 출력 장치로부터 입력되는 영상을 사용자의 각 눈에 표시할 수 있다.
상기 디스플레이부는 LCD(Liquid Crystal Display), PDP(Plasma Display Panel), 프로젝터 디스플레이일 수도 있고, 셔터 글래스(shutter glass) 방식, 렌티큘라(Lenticular) 방식, 패러랙스 배리어(parallax barrier) 방식 등의 오토스테레오그래피(autostereography) 또는 홀로그램(hologram)을 이용한 3차원 디스플레이일 수도 있다. 또한, 발광다이오드(LED; Light Emitting Diode), 유기발광소자(OLED; Organic Light Emitting Display), 발광중합체(LEP; Light Emitting Polymer), 전자발광소자(EL Element; Electro-Luminescence Element), 전계방출소자(FED; Field Emission Display), 또는 중합체발광소자(PLED; Polymer Light Emitting Display) 등이 적용될 수도 있다.
가상 객체 선택 모듈(110)은 디스플레이 모듈(100)에 표시된 가상 객체 그룹 또는 적어도 하나의 가상 객체를 선택하기 위해 이용된다. 디스플레이 된 가상 객체 중 사용자가 선택하고자 하는 가상 객체가 포함된 가상 객체 그룹을 선택하기 위해 입력 장치를 이용하여 선택 명령을 내리면, 사용자의 입력에 따라 겹쳐 있는 가상 객체 그룹이 구(sphere) 형태로 선택된다.
일 실시예에서, 상기 그룹 내 가상 객체들의 크기가 상이한 경우, 사용자는 구의 크기를 조정함으로써 가상 객체들의 크기에 따라 다양하게 가상 객체 그룹의 선택 범위를 조절할 수 있음은 전술한 바와 같다. 상기 입력은 키보드, 마우스, 조이스틱 또는 터치 패드 등의 기존의 입력 장치에 의해 수행될 수 있고, 전술한 바와 같이 사용자의 손 동작을 인식함으로써 수행될 수도 있다.
중심점 계산 모듈(120)은 선택된 가상 객체 그룹 내 가상 객체들 각각의 중심점을 계산하기 위해 이용된다. 일 실시예에서, 중심점 계산 모듈(120)은 그룹 내 가상 객체들 각각의 중심점에 기초하여 상기 그룹 내 가상 객체들의 프록시들(proxies)의 중심점을 계산할 수 있다.
이와 같이 프록시들의 중심점을 구하는 이유는 익스플로젼(explosion) 알고리즘을 사용하여 겹쳐져 있는 가상 객체들을 펼쳐서 시각화를 하는 경우 원래 겹쳐져 있던 가상 객체들의 공간적인 연관 관계를 유지하기 위함이고, 상기 값들(Co, Cs, Cp 등)을 계산하는 상세한 과정은 중복되는 설명을 피하기 위해 생략한다.
공간적 관계 정보 획득 모듈(130)은, 계산된 상기 중심점을 이용하여 그룹 내 가상 객체들 간의 공간적 관계 정보를 획득하기 위해 이용된다. 상기 프록시들의 중심점을 이용하여 각각의 가상 객체들 간의 거리 및 방향 정보를 계산하는 상세한 과정은 중복되는 설명을 피하기 위해 생략한다.
이렇게 객체들간의 거리와 방향 정보들을 포함하는 공간적 연관관계가 만들어지면, 가상 객체 배열 모듈(140)은 계산된 공간적 관계 정보에 기초하여 그룹 내 가상 객체들이 서로 겹치지 않도록 배열한다. 도 3b를 참조하면, (D)와 같이 각 중심점 간의 방향 및 거리 비율을 유지하면서 프록시들(21' 내지 23')이 서로 겹치지 않도록 익스플로젼(explosion) 시각화가 가능하다.
일 실시예에서, 상기 가상 객체 배열 모듈(140)은 상기 그룹 내 겹쳐 있는 가상 객체들의 수가 임계 값 이상인 경우, 상기 가상 객체들을 미리 정해진 수의 하위 그룹으로 분할하여 배열하기 위한 가상 객체 그룹 분할 유닛(도시되지 않음)을 포함할 수 있다. 일 실시예에서, 가상 객체 그룹 분할 유닛은 분할된 상기 하위 그룹 내 가상 객체들의 수가 상기 임계 값 미만이 될 때까지 분할을 반복하도록 구성될 수 있다.
이에 따른 하위 그룹 분할 방식의 구체적인 예시는 전술한 바와 같고, 이와 같은 실시예들에 따르면, 분자 구조 모델링이나 CAD 분야와 같이 매우 많은 수의 가상 객체가 밀집되어 있는 경우에도 사용자가 용이하게 원하는 가상 객체를 선택하여 오류를 줄일 수 있다.
도 8을 참조하면, 가상 객체 선택 모듈(110)은 사용자의 손 영상에 기초하여 사용자의 손동작을 인식하기 위한 손 동작 인식 유닛(112) 및 상기 인식된 손동작에 기초하여 가상 객체 그룹 또는 가상 객체를 선택하기 위한 가상 객체 선택 유닛(114)을 포함할 수 있다. 추가적으로, 상기 가상 객체 선택 장치(10)는 사용자의 손 영상을 획득하기 위한 촬영 모듈(150)을 더 포함할 수 있다.
손 동작 인식 유닛(112)은, 상기 사용자의 손 영역 중 손가락 관절 영역 또는 손바닥 영역에 하나 이상의 포인트를 매칭(matching)시키고, 상기 매칭된 하나 이상의 포인트의 위치 변화 또는 깊이 변화에 기초하여 손 동작을 인식하기 위해 이용될 수 있다. 도 5을 참조하면, 인식된 손 동작은 가상의 손 영역(30)으로서 가상 환경 내에 표시된다.
가상 객체 선택 유닛(114)은, 상기 인식된 손 영역에 기초하여 원하는 가상 객체를 선택하기 위해 이용된다. 일 실시예에서, 가상의 손 영역 대비 가려지는 면적이 일정 임계치 이상이면 가상 객체를 선택할 수 있다.
이상에서는 실시예들을 참조하여 설명하였지만 본 발명은 이러한 실시예들 또는 도면에 의해 한정되는 것으로 해석되어서는 안 되며, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
10: 가상 객체를 선택하기 위한 장치
20: 가상 객체 그룹
21 내지 23: 가상 객체
21' 내지 23': 가상 객체의 프록시
30: 가상 손 영역
100: 디스플레이 모듈
110: 가상 객체 선택 모듈
112: 손 동작 인식 유닛
114: 가상 객체 선택 유닛
120: 중심점 계산 모듈
130: 공간적 관계 정보 획득 모듈
140: 가상 객체 배열 모듈
150: 촬영 모듈
160: 선택 범위 조절 모듈

Claims (12)

  1. 공간적 관계 정보를 이용하여 겹쳐 있는 가상 객체를 선택하기 위한 방법으로서,
    겹쳐 있는 가상 객체 그룹을 선택하는 단계;
    상기 선택된 가상 객체 그룹 내 가상 객체들 각각의 중심점을 계산하는 단계;
    상기 가상 객체들 각각의 중심점에 기초하여 프록시들의 중심점을 계산하는 단계;
    상기 프록시들의 중심점에 기초하여 상기 가상 객체들 간의 거리와 방향을 계산하는 단계;
    상기 가상 객체들 간의 거리와 방향에 기초하여 그룹 내 가상 객체들 간의 공간적 관계 정보를 획득하는 단계;
    상기 공간적 관계 정보에 기초하여, 상기 프록시들의 중심점을 중심으로 상기 가상 객체들 간의 거리의 비율과 방향을 유지하면서 상기 그룹 내 가상 객체들을 서로 겹치지 않도록 배열하는 단계; 및
    상기 배열된 그룹 내 가상 객체들 중 적어도 하나의 가상 객체를 선택하는 단계를 포함하는, 가상 객체를 선택하기 위한 방법.
  2. 제1항에 있어서,
    상기 겹쳐 있는 가상 객체 그룹을 선택하는 단계 또는 상기 배열된 그룹 내 가상 객체들 중 적어도 하나의 가상 객체를 선택하는 단계는,
    사용자의 손 영상을 획득하는 단계;
    상기 사용자의 손 영상에서 손 영역을 인식하는 단계;
    상기 사용자의 손 영역 중 손가락 관절 영역 또는 손바닥 영역에 하나 이상의 포인트를 매칭(matching)시키는 단계;
    상기 매칭된 하나 이상의 포인트의 위치 변화 또는 깊이 변화에 기초하여 사용자의 손동작을 인식하는 단계; 및
    상기 인식된 손동작에 기초하여 가상 객체 그룹 또는 가상 객체를 선택하는 단계를 포함하는 것을 특징으로 하는, 가상 객체를 선택하기 위한 방법.
  3. 제2항에 있어서,
    상기 그룹 내 가상 객체들의 크기가 상이한 경우, 가상 객체 그룹의 선택 범위를 조절하는 단계를 더 포함하는 것을 특징으로 하는, 가상 객체를 선택하기 위한 방법.
  4. 제1항에 있어서,
    상기 공간적 관계 정보에 기초하여 상기 그룹 내 가상 객체들을 서로 겹치지 않도록 배열하는 단계는,
    상기 그룹 내 겹쳐 있는 가상 객체들의 수가 임계 값 이상인 경우, 상기 가상 객체들을 미리 정해진 수의 하위 그룹으로 분할하여 배열하는 단계를 포함하되,
    상기 하위 그룹으로 분할하여 배열하는 단계는, 분할된 상기 하위 그룹 내 가상 객체들의 수가 상기 임계 값 미만이 될 때까지 반복되는 것을 특징으로 하는, 가상 객체를 선택하기 위한 방법.
  5. 삭제
  6. 제1항 내지 제4항 중 어느 하나의 청구항에 따른 가상 객체를 선택하기 위한 방법을 컴퓨터에서 실행하기 위한, 컴퓨터로 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
  7. 공간적 관계 정보를 이용하여 겹쳐 있는 가상 객체를 선택하기 위한 장치로서,
    가상 객체 정보를 표시하기 위한, 디스플레이 모듈;
    디스플레이 모듈에 표시된 가상 객체 그룹 또는 가상 객체를 선택하기 위한, 가상 객체 선택 모듈;
    상기 가상 객체 그룹 내 가상 객체들 각각의 중심점을 계산하는, 중심점 계산 모듈;
    계산된 상기 중심점을 이용하여 그룹 내 가상 객체들 간의 공간적 관계 정보를 획득하기 위한, 공간적 관계 정보 획득 모듈;
    상기 공간적 관계 정보에 기초하여 상기 그룹 내 가상 객체들을 서로 겹치지 않도록 배열하기 위한, 가상 객체 배열 모듈을 포함하되,
    상기 가상 객체 선택 모듈은, 배열된 상기 그룹 내 가상 객체들 중 적어도 하나의 가상 객체를 선택하기 위해 이용되고,
    상기 공간적 관계 정보 획득 모듈은,
    상기 가상 객체들 각각의 중심점에 기초하여 프록시들의 중심점을 계산하고, 상기 프록시들의 중심점에 기초하여 상기 가상 객체들 간의 거리와 방향을 계산하고, 상기 가상 객체들 간의 거리와 방향에 기초하여 상기 가상 객체들 간의 공간적 관계 정보를 획득하고,
    상기 가상 객체 배열 모듈은,
    상기 공간적 관계 정보에 기초하여, 상기 프록시들의 중심점을 중심으로 상기 가상 객체들 간의 거리의 비율과 방향을 유지하면서 상기 그룹 내 가상 객체들을 서로 겹치지 않도록 배열하는, 가상 객체를 선택하기 위한 장치.
  8. 제7항에 있어서,
    상기 장치는, 사용자의 손 영상을 획득하기 위한 촬영 모듈을 더 포함하고,
    상기 가상 객체 선택 모듈은,
    상기 촬영 모듈에 의해 획득한 사용자의 손 영상에 기초하여 사용자의 손동작을 인식하기 위한, 손 동작 인식 유닛; 및
    상기 인식된 손동작에 기초하여 가상 객체 그룹 또는 가상 객체를 선택하기 위한, 가상 객체 선택 유닛을 포함하고,
    상기 손 동작 인식 유닛은, 상기 사용자의 손 영상에서 손 영역을 인식하고, 상기 사용자의 손 영역 중 손가락 관절 영역 또는 손바닥 영역에 하나 이상의 포인트를 매칭(matching)시키고, 상기 매칭된 하나 이상의 포인트의 위치 변화 또는 깊이 변화에 기초하여 사용자의 손동작을 인식하는 것을 특징으로 하는, 가상 객체를 선택하기 위한 장치.
  9. 제8항에 있어서,
    상기 그룹 내 가상 객체들의 크기가 상이한 경우, 가상 객체 그룹의 선택 범위를 조절하기 위한, 선택 범위 조절 모듈을 더 포함하는 것을 특징으로 하는, 가상 객체를 선택하기 위한 장치.
  10. 제7항에 있어서,
    상기 가상 객체 배열 모듈은, 상기 그룹 내 겹쳐 있는 가상 객체들의 수가 임계 값 이상인 경우, 상기 가상 객체들을 미리 정해진 수의 하위 그룹으로 분할하여 배열하기 위한 가상 객체 그룹 분할 유닛을 포함하되,
    상기 가상 객체 그룹 분할 유닛은, 분할된 상기 하위 그룹 내 가상 객체들의 수가 상기 임계 값 미만이 될 때까지 분할을 반복하는 것을 특징으로 하는, 가상 객체를 선택하기 위한 장치.
  11. 삭제
  12. 제7항 내지 제10항 중 어느 하나의 청구항에 있어서,
    상기 디스플레이 모듈은, 헤드 마운티드 디스플레이(HMD, Head Mounted Display) 또는 시스루 디스플레이(See-through display)인 것을 특징으로 하는, 가상 객체를 선택하기 위한 장치.
KR1020160164995A 2016-12-06 2016-12-06 공간적 관계 정보를 이용하여 겹쳐 있는 가상 객체를 선택하기 위한 방법, 프로그램 및 장치 KR101991794B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160164995A KR101991794B1 (ko) 2016-12-06 2016-12-06 공간적 관계 정보를 이용하여 겹쳐 있는 가상 객체를 선택하기 위한 방법, 프로그램 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160164995A KR101991794B1 (ko) 2016-12-06 2016-12-06 공간적 관계 정보를 이용하여 겹쳐 있는 가상 객체를 선택하기 위한 방법, 프로그램 및 장치

Publications (2)

Publication Number Publication Date
KR20180064748A KR20180064748A (ko) 2018-06-15
KR101991794B1 true KR101991794B1 (ko) 2019-06-25

Family

ID=62628886

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160164995A KR101991794B1 (ko) 2016-12-06 2016-12-06 공간적 관계 정보를 이용하여 겹쳐 있는 가상 객체를 선택하기 위한 방법, 프로그램 및 장치

Country Status (1)

Country Link
KR (1) KR101991794B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022154166A1 (ko) * 2021-01-12 2022-07-21 삼성전자 주식회사 콘텐츠 생성 기능을 제공하기 위한 방법 및 이를 지원하는 전자 장치

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200094970A (ko) * 2019-01-31 2020-08-10 삼성전자주식회사 증강 현실 환경에서 다양한 기능을 수행하는 전자 장치 및 그 동작 방법
WO2023085847A1 (ko) * 2021-11-15 2023-05-19 삼성전자 주식회사 트리거 이벤트에 따라 적어도 하나의 상대방 디바이스와 통신을 수행하는 웨어러블 디바이스 및 그 제어 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101117649B1 (ko) 2010-10-13 2012-03-20 세종대학교산학협력단 Olap 기반의 3차원 공간에서 데이터 분석 객체의 선택 방법 및 시스템
JP2012155678A (ja) * 2011-01-28 2012-08-16 Konica Minolta Holdings Inc 表示システム、表示処理装置、表示方法、および表示プログラム
JP2016029591A (ja) 2015-10-30 2016-03-03 ソニー株式会社 情報処理装置、情報処理方法およびプログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101043246B1 (ko) 2009-03-04 2011-06-21 주식회사 두원전자 인버터가 장착된 전동식 압축기
JP5880199B2 (ja) * 2012-03-27 2016-03-08 ソニー株式会社 表示制御装置、表示制御方法およびプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101117649B1 (ko) 2010-10-13 2012-03-20 세종대학교산학협력단 Olap 기반의 3차원 공간에서 데이터 분석 객체의 선택 방법 및 시스템
JP2012155678A (ja) * 2011-01-28 2012-08-16 Konica Minolta Holdings Inc 表示システム、表示処理装置、表示方法、および表示プログラム
JP2016029591A (ja) 2015-10-30 2016-03-03 ソニー株式会社 情報処理装置、情報処理方法およびプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
이준 외 3명. 다중터치 인터페이스에서의 자연스러운 상호작용 및 그 응용에 대한 사례 연구. 정보과학회논문지, 소프트웨어 및 응용, 제39권, 제7호. 2012.07. 1부.*

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022154166A1 (ko) * 2021-01-12 2022-07-21 삼성전자 주식회사 콘텐츠 생성 기능을 제공하기 위한 방법 및 이를 지원하는 전자 장치

Also Published As

Publication number Publication date
KR20180064748A (ko) 2018-06-15

Similar Documents

Publication Publication Date Title
EP3908904B1 (en) Holographic palm raycasting for targeting virtual objects
EP3997552B1 (en) Virtual user interface using a peripheral device in artificial reality environments
JP6436628B2 (ja) 多入力インタフェースを用いて三次元環境を航行するためのシステムおよび方法
US10409443B2 (en) Contextual cursor display based on hand tracking
JP5609416B2 (ja) 情報処理装置、情報処理方法およびプログラム
KR102283747B1 (ko) 시선 추적을 갖는 타겟 위치결정
KR102258424B1 (ko) 사용자 인터페이스 프로그래밍적 스케일링
US11599239B2 (en) Devices, methods, and graphical user interfaces for providing computer-generated experiences
AU2014302873B2 (en) User interface navigation
KR101833253B1 (ko) 증강현실 환경에서의 가상객체 조작방법 및 이를 구현하는 증강현실 장치
US20200387286A1 (en) Arm gaze-driven user interface element gating for artificial reality systems
JP6110893B2 (ja) 仮想空間位置指定方法、プログラム、プログラムを記録した記録媒体、および、装置
US11023035B1 (en) Virtual pinboard interaction using a peripheral device in artificial reality environments
CN111742283B (zh) 混合现实中内容的弯曲显示
KR101991794B1 (ko) 공간적 관계 정보를 이용하여 겹쳐 있는 가상 객체를 선택하기 위한 방법, 프로그램 및 장치
US10976804B1 (en) Pointer-based interaction with a virtual surface using a peripheral device in artificial reality environments
Choi et al. Usability of one-handed interaction methods for handheld projection-based augmented reality
Chun et al. A combination of static and stroke gesture with speech for multimodal interaction in a virtual environment
US11527049B2 (en) Method and device for sketch-based placement of virtual objects
US20210208688A1 (en) Method and device for presenting a synthesized reality user interface
US11023036B1 (en) Virtual drawing surface interaction using a peripheral device in artificial reality environments
Gruenefeld et al. Improving search time performance for locating out-of-view objects in augmented reality
CN116848495A (zh) 用于选择虚拟对象以进行扩展现实交互的设备、方法、系统和介质
Prima et al. A Pointing Device for 3D Interactive Spherical Displays
JP2017004539A (ja) 仮想空間位置指定方法、プログラム、プログラムを記録した記録媒体、および、装置

Legal Events

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