KR20140010616A - 3d 가상 객체에 대한 조작 처리 장치 및 방법 - Google Patents

3d 가상 객체에 대한 조작 처리 장치 및 방법 Download PDF

Info

Publication number
KR20140010616A
KR20140010616A KR1020120077093A KR20120077093A KR20140010616A KR 20140010616 A KR20140010616 A KR 20140010616A KR 1020120077093 A KR1020120077093 A KR 1020120077093A KR 20120077093 A KR20120077093 A KR 20120077093A KR 20140010616 A KR20140010616 A KR 20140010616A
Authority
KR
South Korea
Prior art keywords
virtual object
manipulation
virtual
motion
contact
Prior art date
Application number
KR1020120077093A
Other languages
English (en)
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 KR1020120077093A priority Critical patent/KR20140010616A/ko
Priority to US13/942,078 priority patent/US20140015831A1/en
Publication of KR20140010616A publication Critical patent/KR20140010616A/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
    • 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
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/048023D-info-object: information is displayed on the internal or external surface of a three dimensional manipulable object, e.g. on the faces of a cube that can be rotated by the user

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)
  • Computer Graphics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Processing Or Creating Images (AREA)

Abstract

사용자가 현실 세계에서 물체를 손이나 도구로 건드리거나 잡을 때 사용하는 방식과 동일한 방식으로 가상 현실 또는 증강 현실에서 모델링된 3D 가상 객체를 직관적으로 조작할 수 있도록 하는 사용자 인터페이스를 제공하기 위한 3D 가상 객체에 대한 조작 처리 장치 및 방법이 개시된다.

Description

3D 가상 객체에 대한 조작 처리 장치 및 방법{Apparatus and method for processing manipulation of 3D virtual object}
본 발명은 3D 가상 객체에 대한 조작 처리 장치 및 방법에 관한 것으로, 더욱 상세하게는, 사용자가 현실 세계에서 물체를 손이나 도구로 건드리거나 잡을 때 사용하는 방식과 동일한 방식으로 가상 현실 또는 증강 현실에서 모델링된 3D 가상 객체를 직관적으로 조작할 수 있도록 하는 사용자 인터페이스를 제공하기 위한 3D 가상 객체에 대한 조작 처리 장치 및 방법에 관한 것이다.
종래의 3D(3-Dimentional) TV, 증강 현실(augmented reality), 가상 현실(virtual reality)에서 사용하는 사용자 인터페이스(UI: User Interface)는 2차원 평면에서 사용하는 UI를 그대로 가져와, 가상 터치 방식으로 사용하거나 커서를 이동해서 사용하도록 하고 있다.
또한, 증강현실 또는 가상현실에서 메뉴는 아이콘 형태로 이루어져 있고, 상위 단계로 폴더나 또 다른 화면에서 메뉴를 관리한다. 그리고 드래그 앤 드롭 방식을 사용하거나 선택을 해서 그 하위 내부를 볼 수 있도록 하고 있다. 하지만, 종래의 기술은 3차원 공간에서 2차원 배열을 활용하거나, 3차원 공간 상에 있더라도 도구나 제스처 인식 인터페이스는 원격 포인팅 또는 마우스 역할을 대체하는 수준 이상을 벗어나지 못하고 있다.
한국공개특허 제2009-0056792호는 증강현실을 위한 입력 인터페이스와 이를 구비한 증강현실 시스템에 관한 기술을 제공하고 있으나, 사용자가 3차원의 공간에서 직관적으로 메뉴를 조작하는 데는 한계가 있다.
또한, 상기한 공개특허는 사용자의 제스처를 인식하여 여러 계층으로 분류될 수 있는 메뉴를 실행할 수 없어, 사용자는 증강현실 또는 가상현실에서 직관적으로 메뉴를 선택 또는 실행할 수 없는 문제점이 있다.
본 발명의 목적은 가상 현실 또는 증강 현실에서 3D 가상 객체를 현실 세계에서 물체를 손으로 또는 도구로 잡을 때 사용하는 방식과 동일한 방식으로 건드리거나 잡아서 조작할 수 있도록 하는 사용자 인터페이스를 제공하는 것이다.
또한, 본 발명의 목적은 실제 세계에서 물체를 조작하는 경험과 가상 현실 또는 증강 현실에서 가상 물체를 조작하는 행위에 대하여 사용자가 인식하게 되는 조작감을 동일하게 함으로써, 가상 물체의 조작에 대한 직관성과 편의성을 제공할 수 있는 사용자 인터페이스를 제공하는 것이다.
또한, 본 발명의 목적은 종래 가상 현실 또는 증강 현실에서 가상 물체를 조작하기 위해 사용되었던 명령어 입력 방식이나 사용자 제스처 감지 방식에서는 한계가 있었던 현실감을 보다 높일 수 있는 사용자 인터페이스를 제공하는 것이다.
상기한 목적을 달성하기 위한 본 발명에 따른 3D 가상 객체에 대한 조작 처리 장치는, 조작 객체를 포함하는 주변 환경에 대하여 카메라를 통해 촬영하여 생성한 영상 정보를 입력받는 영상 입력부; 상기 영상 정보를 이용하여 상기 주변 환경에 대한 3D 가상 현실 공간을 재구성하는 환경 복원부; 상기 조작 객체에 의하여 조작되는 3D 가상 객체를 모델링하고 상기 3D 가상 객체를 포함하는 3D 렌더링 공간을 생성하는 3D 객체 모델링부; 상기 3D 렌더링 공간을 상기 3D 가상 현실 공간에 정합시키는 공간 정합부; 및 상기 3D 가상 객체의 표면에 대한 상기 조작 객체의 접촉 여부를 판단하고, 상기 조작 객체의 표면과 상기 조작 객체 간의 접촉 지점에 대한 이동 경로를 추적하여 상기 3D 가상 객체의 운동을 처리하는 조작 처리부를 포함하는 것을 특징으로 한다.
이때, 상기 조작 처리부는, 상기 3D 가상 현실 공간에서 상기 3D 가상 객체의 표면 상의 한 점과 상기 조작 객체의 표면 상의 한 점이 일치할 때 상기 3D 가상 객체의 표면에 대하여 상기 조작 객체가 접촉된 것으로 판단하는 접촉 판단부를 포함할 수 있다.
이때, 상기 조작 처리부는, 상기 접촉 판단부에 의해 상기 3D 가상 객체의 표면에 대하여 상기 조작 객체가 접촉된 것으로 판단된 시점에서부터, 상기 3D 가상 객체의 표면에 대한 상기 접촉 지점에서의 상기 3D 가상 객체의 무게중심으로 향하는 법선벡터를 산출하고, 상기 접촉 지점의 이동 경로를 추적하는 접촉지점 추적부를 더 포함할 수 있다.
이때, 상기 접촉지점 추적부는, 상기 접촉 지점이 2개 이상일 경우, 2개 이상의 접촉 지점들 각각에 대하여 상기 법선벡터를 산출하고 상기 이동 경로를 추적할 수 있다.
이때, 상기 조작 처리부는, 상기 법선벡터와 상기 접촉 지점의 이동 경로에 대한 방향벡터를 비교하여 상기 3D 가상 객체에 대한 운동 상태를 결정하는 운동상태 결정부를 더 포함하고, 상기 3D 가상 객체에 대한 운동 상태는 상기 3D 가상 객체의 이동 운동, 회전 운동 또는 이동과 회전이 함께 이루어지는 복합 운동 중 어느 하나에 해당할 수 있다.
이때, 상기 조작 처리부는, 상기 운동 결정부에 의해 결정된 상기 3D 가상 객체에 대한 운동 상태에 기초하여 상기 3D 가상 객체의 운동을 처리하는 운동 처리부를 더 포함할 수 있다.
이때, 본 발명에 따른 3D 가상 객체에 대한 조작 처리 장치는, 상기 카메라의 시선이 상기 조작 객체를 사용하는 사용자의 시선과 일치되도록 상기 영상 정보에 대하여 보정을 수행하여 상기 사용자의 눈의 위치와 상기 조작 객체 간의 상대적인 위치 관계 정보를 획득하는 영상 교정부를 더 포함할 수 있다.
이때, 본 발명에 따른 3D 가상 객체에 대한 조작 처리 장치는, 상기 조작 객체의 움직임에 따른 3D 가상 객체의 운동 결과를 상기 사용자에게 출력하는 조작상태 출력부를 더 포함할 수 있다.
이때, 상기 조작상태 출력부는, 상기 접촉 지점이 2개 이상이고 적어도 2개 이상의 접촉 지점들 간의 거리가 서로 가까워지는 경우, 접촉 지점들 간의 거리에 기초하여 변형된 상기 3D 가상 객체의 외형 정보를 사용자에게 출력할 수 있다.
또한, 상기한 목적을 달성하기 위한 본 발명에 따른 3D 가상 객체에 대한 조작 처리 방법은, 조작 객체를 포함하는 주변 환경에 대하여 카메라를 통해 촬영하여 생성한 영상 정보를 입력받는 단계; 상기 영상 정보를 이용하여 상기 주변 환경에 대한 3D 가상 현실 공간을 재구성하는 단계; 상기 조작 객체에 의하여 조작되는 3D 가상 객체를 모델링하고 상기 3D 가상 객체를 포함하는 3D 렌더링 공간을 생성하는 단계; 상기 3D 렌더링 공간을 상기 3D 가상 현실 공간에 정합시키는 단계; 및 상기 3D 가상 객체의 표면에 대한 상기 조작 객체의 접촉 여부를 판단하고, 상기 조작 객체의 표면과 상기 조작 객체 간의 접촉 지점에 대한 이동 경로를 추적하여 상기 3D 가상 객체의 운동을 처리하는 단계를 포함하는 것을 특징으로 한다.
이때, 상기 3D 가상 객체의 운동을 처리하는 단계는, 상기 3D 가상 현실 공간에서 상기 3D 가상 객체의 표면 상의 한 점과 상기 조작 객체의 표면 상의 한 점이 일치할 때 상기 3D 가상 객체의 표면에 대하여 상기 조작 객체가 접촉된 것으로 판단하는 단계를 포함할 수 있다.
이때, 상기 3D 가상 객체의 운동을 처리하는 단계는, 상기 3D 가상 객체의 표면에 대하여 상기 조작 객체가 접촉된 것으로 판단된 시점에서부터, 상기 3D 가상 객체의 표면에 대한 상기 접촉 지점에서의 상기 3D 가상 객체의 무게중심으로 향하는 법선벡터를 산출하고, 상기 접촉 지점의 이동 경로를 추적하는 단계를 더 포함할 수 있다.
이때, 상기 3D 가상 객체의 운동을 처리하는 단계는, 상기 접촉 지점이 2개 이상인지 여부를 판단하는 단계; 및 상기 접촉 지점이 2개 이상인 경우, 2개 이상의 접촉 지점들 각각에 대하여 상기 법선벡터를 산출하고 상기 이동 경로를 추적하는 단계를 더 포함할 수 있다.
이때, 상기 3D 가상 객체의 운동을 처리하는 단계는, 상기 법선벡터와 상기 접촉 지점의 이동 경로에 대한 방향벡터를 비교하여 상기 3D 가상 객체에 대한 운동 상태를 결정하는 단계를 더 포함하고, 상기 3D 가상 객체에 대한 운동 상태는 상기 3D 가상 객체의 이동 운동, 회전 운동 또는 이동과 회전이 함께 이루어지는 복합 운동 중 어느 하나에 해당할 수 있다.
이때, 상기 3D 가상 객체의 운동을 처리하는 단계는, 상기 3D 가상 객체에 대한 운동 상태에 기초하여 상기 3D 가상 객체의 운동을 처리하는 단계를 더 포함할 수 있다.
이때, 본 발명에 따른 3D 가상 객체에 대한 조작 처리 방법은, 상기 카메라의 시선이 상기 조작 객체를 사용하는 사용자의 시선과 일치되도록 상기 영상 정보에 대하여 보정을 수행하여 상기 사용자의 눈의 위치와 상기 조작 객체 간의 상대적인 위치 관계 정보를 획득하는 단계를 더 포함할 수 있다.
이때, 본 발명에 따른 3D 가상 객체에 대한 조작 처리 방법은, 상기 조작 객체의 움직임에 따른 3D 가상 객체의 운동 결과를 상기 사용자에게 출력하는 단계를 더 포함할 수 있다.
이때, 상기 3D 가상 객체의 운동 결과를 사용자에게 출력하는 단계는, 상기 접촉 지점이 2개 이상이고 적어도 2개 이상의 접촉 지점들 간의 거리가 서로 가까워지는 경우, 접촉 지점들 간의 거리에 기초하여 변형된 상기 3D 가상 객체의 외형 정보를 사용자에게 출력할 수 있다.
본 발명에 따르면, 현실 세계에서 물체를 손으로 또는 도구로 건드리거나 잡을 때 사용하는 방식과 동일한 방식으로 가상의 물체를 잡아서 조작할 수 있도록 한다.
또한, 본 발명은 현실 세계에서 실체하는 물체를 만지고 조작하는 행위와 가상 현실 또는 증강 현실에서 가상의 물체를 조작하는 행위 사이에서 사용자 경험을 동일하게 하여 사용자에게 가상의 물체에 대한 조작의 직관성과 편의성을 제공할 수 있다.
또한, 본 발명은 종래 가상 현실 또는 증강 현실에서 가상 물체를 조작하기 위해 사용되었던 명령어 입력 방식이나 사용자 제스처 감지 방식에서는 한계가 있었던 현실감을 보다 높일 수 있는 사용자 인터페이스를 제공할 수 있다.
도 1은 본 발명에 따른 3D 가상 객체에 대한 조작 처리 장치의 구성을 나타내는 블록도이다.
도 2는 도 1에 도시된 조작 처리부의 구성을 나타내는 블록도이다.
도 3은 마스킹 기법을 이용하여 3D 가상 객체에 대한 조작 객체의 접촉 여부를 판단하는 방식을 설명하기 위한 도면이다.
도 4는 접촉 지점의 개수가 2개 이상일 경우 3D 가상 객체에 대한 조작 객체의 접촉 여부를 판단하는 방식을 설명하기 위한 도면이다.
도 5는 예시적으로 접촉 지점이 1개에 해당하는 경우 3D 가상 객체의 이동 운동을 설명하기 위한 도면이다.
도 6은 예시적으로 접촉 지점이 1개에 해당하는 경우 3D 가상 객체의 회전 운동을 설명하기 위한 도면이다.
도 7 및 도 8은 본 발명에 따른 3D 가상 객체에 대한 조작 처리 방법을 설명하기 위한 흐름도이다.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
본 발명에 따른 3D 가상 객체에 대한 조작 처리 장치 및 방법에 있어서, 3D 가상 객체를 이용하는 사용자 인터페이스(UI)는 현실 세계의 무중력 상태에서 공중에 떠있는 물체를 만지고 옮기는 사용자 경험을 기본으로 하여, 가상현실 또는 증강현실에서 가상의 3D 물체를 시각적인 접촉효과가 있는 인터페이스를 사용할 경우에 있어서 사용가능 한 UI 개념이다.
더불어, 본 발명에서 제시하는 UI 개념은 실제 물체의 물리적인 개념과 가상세계에서의 3D 모델의 3차원 정보를 결합하여 가상세계에서 실제 세계의 물체를 조작할 수 있는 느낌을 사용자에게 제공할 수 있다.
따라서, 본 발명에 따른 3D 가상 객체에 대한 조작 처리 장치 및 방법에 있어서의 UI는 가상현실을 제공하는 3차원 영역과, 3차원 영역에 표현되고 시각적 접촉 효과를 통한 사용자 경험에 기반하여 현실 세계에서의 사용자의 손이나 도구 등과 같은 조작 객체(manipulating object)의 움직임에 따라 조작되는 적어도 하나의 3D 가상 객체를 포함한다. 이때, 3D 가상 객체를 포함하는 증강현실 또는 가상현실을 사용자에게 3차원 영역에서 제공하기 위해, 본 발명에 본 발명에 따른 3D 가상 객체에 대한 조작 처리 장치 및 방법은 HMD(Head Mounted Display), EGD(Eye Glass Display) 등을 통해 구현될 수 있다.
이하에서는 본 발명에 따른 3D 가상 객체에 대한 조작 처리 장치의 구성 및 그 동작에 대하여 설명하도록 한다.
도 1은 본 발명에 따른 3D 가상 객체에 대한 조작 처리 장치의 구성을 나타내는 블록도이다.
도 1을 참조하면, 본 발명에 따른 3D 가상 객체에 대한 조작 처리 장치(10)는, 영상 입력부(100), 영상 교정부(200), 환경 복원부(300), 3D 가상 객체 모델링부(400), 공간 정합부(500), 조작 처리부(600) 및 조작상태 출력부(700)로 구성된다.
영상 입력부(100)는 3D 가상 객체를 조작하기 위해 사용자가 사용하는 조작 객체와 사용자의 시선에서 바라보이는 주변환경에 대하여 카메라를 통해 촬영하여 생성한 영상 정보를 카메라를 통해 입력 받는다. 이때, 사용자가 사용하는 조작 객체와 주변환경에 대한 영상 정보를 획득하는 카메라는 컬러 카메라(color camera) 또는 깊이 카메라(depth camera)가 될 수 있다. 이에 따라, 영상 입력부(100)는 조작 객체와 주변환경에 대한 컬러 영상 또는 깊이 영상을 입력 받을 수 있게 된다.
영상 교정부(200)는 카메라의 시선이 조작 객체를 사용하는 사용자의 시선과 일치되도록 카메라의 의해 획득된 조작 객체와 주변환경의 영상 정보에 대하여 보정을 수행함으로, 사용자의 눈의 위치와 조작 객체 간의 정확한 상대적인 위치 관계 정보를 획득한다. 획득된 사용자의 눈의 위치와 조작 객체 간의 상대적인 위치 관계 정보는 이후 3D 가상 객체를 포함하는 3D 렌더링 공간이 정합된 3D 가상 현실 공간에서 3D 가상 객체와 조작 객체 간의 상대적인 위치 관계를 파악할 수 있도록 하는 정보로 이용될 수 있다.
환경 복원부(300)는 영상 입력부(100)에 입력된 영상 정보를 이용하여 조작 객체를 포함하는 주변 환경에 대한 3D 가상 현실 공간을 재구성한다. 즉, 환경 복원부(300)는 사용자가 증강현실 또는 가상현실 상의 3D 가상 객체를 조작하기 위해 조작 객체를 움직이는 현실 세계에서의 주변 환경을 가상의 3D 공간으로 구현하고, 구현된 가상의 3D 공간에서 조작 객체의 위치 정보를 파악한다. 이때, 사용자가 사용하는 조작 객체는 환경 복원부(300)에 의해 가상의 3D 조작 객체로 모델링되어, 현실 세계에서의 움직임에 따라 3D 가상 현실 공간에서의 위치 정보가 3차원 좌표로 표현될 수 있다.
3D 가상 객체 모델링부(400)는 사용자가 사용하는 조작 객체에 의하여 조작되는 3D 가상 객체를 모델링하고, 모델링된 3D 가상 객체를 포함하는 가상의 3D 렌더링 공간을 생성한다. 이때, 3D 가상 객체 모델링부(400)에 의해 모델링된 3D 가상 객체의 위치 정보는 3D 렌더링 공간에서 3차원 좌표로 표현될 수 있다. 또한, 3D 가상 객체 모델링부(400)는 3D 가상 객체의 무중력상태에서의 물리적인 특성 정보를 추가하여 3D 가상 객체를 모델링할 수 있다.
공간 정합부(500)는 3D 가상 객체 모델링부(400)에 의해 생성된 3D 렌더링 공간을 환경 복원부(300)에 의해 재구성된 사용자의 주변 환경에 대한 3D 가상 현실 공간에 정합하고, 3D 가상 현실 공간에서의 조작 객체와 3D 가상 객체 간의 상대적인 위치 관계 정보를 산출한다.
조작 처리부(600)는 공간 정합부(500)에 의해 산출된 3D 가상 현실 공간에서의 조작 객체와 3D 가상 객체 간의 상대적인 위치 관계 정보에 기초하여 3D 가상 객체의 표면에 대한 조작 객체의 접촉 여부를 판단한다. 또한, 조작 처리부(600)는 3D 가상 객체의 표면에 대하여 상기 조작 객체가 접촉된 것으로 판단되면, 조작 객체의 표면과 조작 객체 간의 접촉 지점에 대한 이동 경로를 추적하여 조작 객체의 움직임에 대응되는 3D 가상 객체의 운동을 처리한다. 조작 처리부(600)의 보다 구체적인 구성과 동작에 대해서는 도 2를 참조하여 후술하도록 한다.
조작상태 출력부(700)는 공간 정합부(500)에 의해 정합된 3D 가상 현실 공간과 상기 3D 가상 현실 공간에서의 조작 객체 및 3D 가상 객체의 움직임을 사용자에게 표시할 수 있다. 즉, 조작상태 출력부(700)는 사용자가 조작 객체를 사용하여 3D 가상 객체를 조작함에 따라 조작 처리부(600)에 의해 처리되는 3D 가상 객체의 운동을 사용자에게 시각적으로 표시한다.
도 2는 도 1에 도시된 조작 처리부(600)의 구성을 나타내는 블록도이다.
도 2를 참조하면, 조작 처리부(600)는 접촉 판단부(620), 접촉지점 추적부(640), 운동상태 결정부(660) 및 운동 처리부(680)를 포함한다.
접촉 판단부(620)는 공간 정합부(500)에 의해 산출된 3D 가상 현실 공간에서의 조작 객체와 3D 가상 객체 간의 상대적인 위치 관계 정보를 분석하고, 3D 가상 객체의 표면 상의 한 점과 조작 객체의 표면 상의 한 점이 일치하게 되면, 3D 가상 객체의 표면에 대하여 조작 객체가 접촉된 것으로 판단한다. 이때, 접촉 판단부(620)는 3D 가상 현실 공간에서의 3D 조작 객체의 위치 정보와 3D 가상 객체의 위치 정보에 대하여 마스킹(masking) 기법을 사용하여 3D 조작 객체의 표면과 3D 가상 객체의 표면을 일정한 크기의 단위 픽셀로 이루어지는 마스크 영역으로 구현한다. 3D 모델의 표면을 복수의 마스크 영역으로 표현하는 마스킹 기법은 영상처리 분야에서 널리 알려져 있으므로 본 명세서에서는 자세한 설명을 생략하도록 한다. 도 3을 참조하면, 접촉 판단부(620)는 조작 객체(34a, 34b)의 표면 상의 한 점(P)이 3D 가상 객체(32)의 표면의 마스크 영역(V)에 진입하여 일정 크기의 마스크 내부에 포함되었는지 여부를 검출하여 3D 가상 객체(32)의 표면에 대한 조작 객체(34a, 34b)의 접촉 여부를 판단한다.
접촉지점 추적부(640)는 접촉 판단부(620)가 3D 가상 객체(32)의 표면에 대하여 조작 객체(34a, 34b)가 접촉된 것으로 판단하였을 때, 3D 가상 객체(32)의 표면에 대한 접촉 지점에서의 3D 가상 객체(32)의 무게중심(C)으로 향하는 법선벡터(normal vector, 36)를 산출하여 접촉 지점에 대한 이동 경로를 추적한다. 이때, 접촉지점 추적부(640)는 3D 가상 객체(32)의 표면에 조작 객체(34a, 34b)가 접촉된 이후 3D 가상 객체(32)의 표면과 조작 객체(34a, 34b) 간의 접촉 지점에서의 3D 가상 객체(32)의 무게중심(C)으로 향하는 법선벡터(36)를 실시간으로 계산하여 일정 프레임(frame) 동안 저장한다. 상기 저장된 법선벡터(36)는 3D 가상 객체(32)의 표면과 조작 객체(34a, 34b) 간의 접촉 지점에 대한 이동 경로를 추적하기 위한 정보로 이용될 수 있다. 또한, 접촉지점 추적부(640)는 추적된 접촉 지점에 대한 이동 경로에 대하여 방향벡터를 실시간으로 산출할 수 있다. 한편, 도 4에 도시된 바와 같이, 3D 가상 객체(32)의 표면에 대한 조작 객체(34a)의 접촉 지점의 개수는 2개 이상이 될 수 있다. 이는 사용자가 3D 가상 객체(32)를 보다 정밀하게 조작하기 위해, 조작 객체로써 집게와 같은 도구를 사용하여 3D 가상 객체를 조작하거나, 엄지와 검지 등과 같은 두 개의 손가락을 사용하여 3D 가상 객체를 조작하는 경우에 발생할 수 있다. 이때, 접촉 판단부(620)는 조작 객체(34a)의 표면 상의 2개 이상의 점(P1, P2)이 3D 가상 객체(32)의 표면의 마스크 영역(V1, V2)에 진입하여 픽셀 포인트로 포함되었는지 여부를 검출하여 3D 가상 객체(32)의 표면에 대한 조작 객체(34a)의 접촉 여부를 판단한다. 그리고, 접촉지점 추적부(640)는 2개 이상의 접촉 지점들 각각에 대하여 법선벡터들(36a, 36b)을 산출하고, 2개 이상의 접촉 지점들 각각의 이동 경로를 추적하여 방향벡터들을 산출할 수 있다. 이때, 접촉지점 추적부(640)가 2개 이상의 접촉 지점들 각각에 대하여 이동 경로를 추적하는 과정에서, 2개 이상의 접촉 지점들 간의 거리가 서로 가까워지게 되어 3D 가상 객체(32)의 정의된 표면에 대한 한계를 초과하게 되면, 조작상태 출력부(700)는 3D 가상 객체(32)의 변형된 외형 정보를 사용자에게 출력할 수 있다. 이를 통해, 사용자가 조작 객체를 사용하여 3D 가상 객체(32)를 집어 이동시키는 경우, 3D 가상 객체(32)를 집기 위해 사용자가 가하는 힘에 따라 3D 가상 객체(32)의 외형이 변형되었다는 정보를 사용자에게 피드백 정보로써 제공할 수 있다.
운동상태 결정부(660)는 접촉지점 추적부(640)에 의해 실시간으로 산출된 법선벡터와 접촉 지점의 이동 경로에 대한 방향벡터를 비교하여 3D 가상 객체(32)에 대한 운동 상태를 결정한다. 이때, 운동상태 결정부(660)에 의해 결정되는 3D 가상 객체(32)의 운동 상태는, 3D 가상 객체(32)의 이동 운동에 해당하거나, 3D 가상 객체(32)의 회전 운동 또는 이동과 회전이 함께 이루어지는 복합 운동에 해당할 수 있다. 예시적으로, 접촉 지점이 1개에 해당하는 경우에 있어서 3D 가상 객체(32)의 이동 운동은 도 5에 도시된 바와 같이 나타날 수 있다. 도 5에 도시된 바와 같은 3D 가상 객체(32)의 이동 운동은 접촉 지점의 이동 경로에 대한 방향벡터와 3D 가상 객체(32)의 표면에 대한 접촉 지점에서의 3D 가상 객체(32)의 무게중심(C)으로 향하는 법선벡터(36)가 동일한 방향을 향할 때 이루어진다. 이때, 접촉 지점의 이동 경로에 대한 방향벡터와 법선벡터(36)가 동일한 방향을 갖게 되면, 운동상태 결정부(660)는 3D 가상 객체(32)의 운동 상태를 접촉 지점의 이동 경로에 대한 방향벡터의 방향으로 이동하는 것으로 결정한다. 반면, 접촉 지점이 1개에 해당하는 경우에 있어서 3D 가상 객체(32)의 회전 운동은 도 6에 도시된 바와 같이 나타날 수 있다. 도 6에 도시된 바와 같은 특정한 축(A)을 회전축으로 하는 3D 가상 객체(32)의 회전 운동은, 접촉 지점의 이동 경로에 대한 방향벡터와 3D 가상 객체(32)의 표면에 대한 접촉 지점에서의 3D 가상 객체(32)의 무게중심(C)으로 향하는 법선벡터(36)가 서로 다른 방향을 향할 때 이루어진다. 이때, 접촉 지점의 이동 경로에 대한 방향벡터와 법선벡터(36)가 서로 다른 방향을 갖게 되면, 운동상태 결정부(660)는 3D 가상 객체(32)의 운동 상태를 회전 운동으로 결정한다. 이때, 무중력상태에서 3D 가상 객체(32)의 회전축은 고정되어 있지 않기 때문에 접촉 지점의 이동 경로에 따라 3D 가상 객체(32)의 운동은 단순한 회전 운동에 해당되거나 이동과 회전이 함께 이루어지는 복합 운동에 해당될 수 있다. 3D 가상 객체(32)의 운동 상태를 회전 운동으로 결정할 것인지 아니면 회전과 이동이 함께 이루어지는 복합 운동으로 결정할 것인지에 대한 판단은 3D 가상 객체(32)의 무중력상태에서의 물리적인 특성과 운동 법칙에 따라 결정될 수 있다. 한편, 접촉 지점이 1개일 수밖에 없는 하나의 손가락 또는 막대 등과 같은 조작 객체를 사용하여 실제 무중력상태에서 있는 물체를 조작하고자 할 때, 조작 객체의 이동 방향을 상기 물체의 무게중심의 방향으로 정확하게 일치시키지 아니하면 상기 물체를 이동시키기 매우 어렵다. 이러한 문제점을 해결하기 위해, 가상 또는 증강 현실의 조건에서 3D 가상 객체(32)에 대한 무중력상태에서의 물리적인 특성과 함께 무게중심점에 대한 일정한 마진(margin)을 적용함으로써, 접촉 지점이 1개인 조작 객체를 사용하는 경우에도 3D 가상 객체(32)의 이동이 용이하도록 할 수 있다. 이에 따라, 3D 가상 객체(32)가 구의 형상을 가질 경우, 사용자는 조작 객체를 3D 가상 객체(32)의 무게중심점 방향으로 정확하게 움직이지 아니하더라도 3D 가상 객체(32)를 원하는 방향으로 이동시킬 수 있게 된다.
운동 처리부(680)는 운동 결정부(660)에 의해 결정된 3D 가상 객체(32)에 대한 운동 상태에 기초하여 조작 객체(34a, 34b)의 움직임에 대응하는 3D 가상 객체(32)의 운동을 처리한다. 3D 가상 객체(32)에 대하여 처리되는 구체적인 운동은 3D 가상 객체(32)의 이동 운동, 단순한 회전 운동 또는 이동과 회전이 함께 이루어지는 복합 운동 중 어느 하나가 될 수 있다. 이때, 운동 처리부(680)는 3D 가상 객체(32)에 대한 가상의 마찰 계수를 적용하여 조작 객체(34a, 34b)의 이동 속도, 가속도 및 이동 방향에 따라 3D 가상 객체(32)의 운동을 처리할 수 있다. 운동 처리부(680)에 의한 3D 가상 객체(32)의 운동에 대한 처리를 위해, 이동 운동, 단순한 회전 운동 또는 복합 운동에 해당하는 아핀 변환(affine transformation) 알고리즘이 이용될 수 있다.
이하에서는 본 발명에 따른 3D 가상 객체에 대한 조작 처리 방법에 대하여 설명하도록 한다. 앞서, 도 1 내지 도 6을 참조한 본 발명에 따른 3D 가상 객체에 대한 조작 처리 장치의 동작에 대한 설명과 일부 중복되는 부분은 생략하여 설명하기로 한다.
도 7은 본 발명에 따른 3D 가상 객체에 대한 조작 처리 방법을 설명하기 위한 흐름도이다.
도 7을 참조하면, 본 발명에 따른 3D 가상 객체에 대한 조작 처리 방법은, 먼저 영상 입력부(100)가 조작 객체를 포함하는 주변 환경에 대하여 카메라를 통해 촬영하여 생성한 영상 정보를 입력 받는다(S710). 이때, 상기 조작 객체는 사용자가 3D 가상 객체를 조작하기 위해 현실 세계에서 사용하는 도구로써, 예시적으로 사용자의 손이나 막대 등이 될 수 있으나 특별히 이에 한정되는 것은 아니다.
그리고, 영상 교정부(200)는 카메라의 시선이 조작 객체를 사용하는 사용자의 시선과 일치되도록 카메라를 통해 획득된 조작 객체를 포함하는 주변 환경에 대한 영상 정보에 대하여 보정을 수행하여 사용자의 눈의 위치와 조작 객체 간의 상대적인 위치 관계 정보를 획득한다(S720).
그 다음으로, 환경 복원부(300)는 상기 S720 단계에서 보정된 영상 정보를 이용하여 조작 객체를 포함하는 주변 환경에 대한 3D 가상 현실 공간을 재구성한다(S730).
한편, 3D 가상 객체 모델링부(400)는 사용자가 사용하는 조작 객체의 움직임에 따라 조작되는 3D 가상 객체를 모델링하고(S740), 상기 3D 가상 객체를 포함하는 3D 렌더링 공간을 생성한다(S750). 이때, 3D 가상 객체를 모델링하고 3D 렌더링 공간을 생성하는 상기 S740 내지 S750 단계는 조작 객체를 포함하는 주변 환경에 대한 영상 정보를 입력받아 3D 가상 현실 공간을 재구성하는 S710 내지 S730 단계에 앞서 수행되거나, S710 내지 S730 단계와 함께 병렬적으로 수행되어도 무방하다.
그리고, 공간 정합부(500)는 3D 가상 객체 모델링부(400)에 의해 생성된 3D 렌더링 공간을 환경 복원부(300)에 의해 재구성된 사용자의 주변 환경에 대한 3D 가상 현실 공간에 정합한다(S760). 이때, 공간 정합부(500)는 3D 가상 현실 공간에서의 조작 객체와 3D 가상 객체 간의 상대적인 위치 관계 정보를 산출할 수 있다.
그 다음으로, 조작 처리부(600)는 공간 정합부(500)에 의해 산출된 3D 가상 현실 공간에서의 조작 객체와 3D 가상 객체 간의 상대적인 위치 관계 정보에 기초하여 3D 가상 객체의 표면에 조작 객체가 접촉하였는지 여부를 판단하고, 조작 객체의 표면과 조작 객체 간의 접촉 지점에 대한 이동 경로를 추적함으로써, 조작 객체의 움직임에 따른 3D 가상 객체의 운동을 처리한다(S770).
마지막으로, 조작상태 출력부(700)는 조작 객체의 움직임에 따른 3D 가상 객체의 운동 결과를 사용자에게 출력한다(S780). 상기 S780 단계에서, 조작상태 출력부(700)는 조작 객체의 표면과 조작 객체 간의 접촉 지점이 2개 이상이고 적어도 2개 이상의 접촉 지점들 간의 거리가 서로 가까워지는 경우에는 접촉 지점들 간의 거리에 기초하여 변형된 3D 가상 객체의 외형 정보를 사용자에게 출력할 수 있다.
도 8은 도 7에 도시된 조작 객체의 움직임에 따른 3D 가상 객체의 운동을 처리하는 S770 단계를 보다 구체적으로 설명하기 위한 흐름도이다.
도 8을 참조하면, S760 단계에서 공간 정합부(500)에 의해 3D 가상 객체 모델링부(400)에 의해 생성된 3D 렌더링 공간과 환경 복원부(300)에 의해 재구성된 사용자의 주변 환경에 대한 3D 가상 현실 공간이 정합되고, 3D 가상 현실 공간에서의 조작 객체와 3D 가상 객체 간의 상대적인 위치 관계 정보가 산출되면, 접촉 판단부(620)를 통해 3D 가상 현실 공간에서 3D 가상 객체의 표면에 조작 객체가 접촉되었는지 여부를 판단한다(S771). 상기 S771 단계에서 수행되는 3D 가상 객체의 표면과 조작 객체 간의 접촉 여부 판단은, 3D 가상 현실 공간에서 3D 가상 객체의 표면 상의 한 점과 조작 객체의 표면 상의 한 점이 일치하는지 여부를 판단함에 따라 이루어진다.
그리고, 상기 S771 단계에서 3D 가상 현실 공간 상의 3D 가상 객체의 표면에 조작 객체가 접촉된 것으로 판단되면, 접촉지점 추적부(640)는 3D 가상 객체의 표면과 조작 객체 간의 접촉 지점이 2개 이상인지 여부를 판단한다(S772).
만약, 상기 S772 단계에서의 판단 결과, 3D 가상 객체의 표면과 조작 객체 간의 접촉 지점이 1개라면, 접촉지점 추적부(640)는 접촉 판단부(620)에 의해 3D 가상 객체의 표면에 대하여 조작 객체가 접촉된 것으로 판단된 시점에서부터, 3D 가상 객체의 표면에 대한 접촉 지점에서의 3D 가상 객체의 무게중심으로 향하는 법선벡터를 산출하고(S773), 접촉 지점에 대한 이동 경로를 추적한다(S774).
반면, 상기 S772 단계에서의 판단 결과, 3D 가상 객체의 표면과 조작 객체 간의 접촉 지점이 2개 이상이라면, 접촉지점 추적부(640)는 접촉 판단부(620)에 의해 3D 가상 객체의 표면에 대하여 조작 객체가 접촉된 것으로 판단된 시점에서부터, 2개 이상의 접촉 지점들 각각에 대하여 3D 가상 객체의 표면에 대한 접촉 지점에서의 3D 가상 객체의 무게중심으로 향하는 법선벡터들을 산출하고(S775), 각 접촉 지점들에 대한 이동 경로를 추적한다(S776).
그 다음으로, 운동상태 결정부(660)는 상기 S773 내지 S774 단계 또는 상기 S775 내지 S776 단계에서 산출된 법선벡터와 추적된 접촉 지점에 대한 이동 경로의 방향벡터를 비교 및 분석하여(S777), 3D 가상 객체에 대한 운동 상태를 결정한다(S778). 이때, 상기 S778 단계에서 결정되는 가상 객체에 대한 운동 상태는 3D 가상 객체의 이동 운동, 회전 운동 또는 이동과 회전이 함께 이루어지는 복합 운동 중 어느 하나에 해당한다.
그리고, 운동 처리부(680)는 상기 S778 단계에서 결정된 3D 가상 객체에 대한 운동 상태에 기초하여 조작 객체의 움직임에 대응하는 3D 가상 객체의 운동을 처리한다(S779). 이때, 운동 처리부(680)는 3D 가상 객체에 대한 가상의 마찰 계수를 적용하여 조작 객체의 이동 속도, 가속도 및 이동 방향에 따라 3D 가상 객체의 운동을 처리할 수 있다.
이상에서와 같이 도면과 명세서에서 최적의 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
10; 3D 가상 객체 조작 처리 장치
100; 영상 입력부
200; 영상 교정부
300; 환경 복원부
400; 3D 가상 객체 모델링부
500; 공간 정합부
600; 조작 처리부
620; 접촉 판단부
640; 접촉지점 추적부
660; 운동상태 결정부
680; 운동 처리부
700; 조작상태 출력부

Claims (18)

  1. 조작 객체(manipulating object)를 포함하는 주변 환경에 대하여 카메라를 통해 촬영하여 생성한 영상 정보를 입력받는 영상 입력부;
    상기 영상 정보를 이용하여 상기 주변 환경에 대한 3D 가상 현실 공간을 재구성하는 환경 복원부;
    상기 조작 객체에 의하여 조작되는 3D 가상 객체를 모델링하고 상기 3D 가상 객체를 포함하는 3D 렌더링 공간을 생성하는 3D 객체 모델링부;
    상기 3D 렌더링 공간을 상기 3D 가상 현실 공간에 정합시키는 공간 정합부; 및
    상기 3D 가상 객체의 표면에 대한 상기 조작 객체의 접촉 여부를 판단하고, 상기 조작 객체의 표면과 상기 조작 객체 간의 접촉 지점에 대한 이동 경로를 추적하여 상기 3D 가상 객체의 운동을 처리하는 조작 처리부를 포함하는 것을 특징으로 하는, 3D 가상 객체에 대한 조작 처리 장치.
  2. 청구항 1에 있어서,
    상기 조작 처리부는,
    상기 3D 가상 현실 공간에서 상기 3D 가상 객체의 표면 상의 한 점과 상기 조작 객체의 표면 상의 한 점이 일치할 때 상기 3D 가상 객체의 표면에 대하여 상기 조작 객체가 접촉된 것으로 판단하는 접촉 판단부를 포함하는 것을 특징으로 하는, 3D 가상 객체에 대한 조작 처리 장치.
  3. 청구항 2에 있어서,
    상기 조작 처리부는,
    상기 접촉 판단부에 의해 상기 3D 가상 객체의 표면에 대하여 상기 조작 객체가 접촉된 것으로 판단된 시점에서부터, 상기 3D 가상 객체의 표면에 대한 상기 접촉 지점에서의 상기 3D 가상 객체의 무게중심으로 향하는 법선벡터를 산출하고, 상기 접촉 지점의 이동 경로를 추적하는 접촉지점 추적부를 더 포함하는 것을 특징으로 하는, 3D 가상 객체에 대한 조작 처리 장치.
  4. 청구항 3에 있어서,
    상기 접촉지점 추적부는, 상기 접촉 지점이 2개 이상일 경우, 2개 이상의 접촉 지점들 각각에 대하여 상기 법선벡터를 산출하고 상기 이동 경로를 추적하는 것을 특징으로 하는, 3D 가상 객체에 대한 조작 처리 장치.
  5. 청구항 4에 있어서,
    상기 조작 처리부는,
    상기 법선벡터와 상기 접촉 지점의 이동 경로에 대한 방향벡터를 비교하여 상기 3D 가상 객체에 대한 운동 상태를 결정하는 운동상태 결정부를 더 포함하고,
    상기 3D 가상 객체에 대한 운동 상태는 상기 3D 가상 객체의 이동 운동, 회전 운동 또는 이동과 회전이 함께 이루어지는 복합 운동 중 어느 하나인 것을 특징으로 하는, 3D 가상 객체에 대한 조작 처리 장치.
  6. 청구항 5에 있어서,
    상기 조작 처리부는,
    상기 운동 결정부에 의해 결정된 상기 3D 가상 객체에 대한 운동 상태에 기초하여 상기 3D 가상 객체의 운동을 처리하는 운동 처리부를 더 포함하는 것을 특징으로 하는, 3D 가상 객체에 대한 조작 처리 장치.
  7. 청구항 1에 있어서,
    상기 카메라의 시선이 상기 조작 객체를 사용하는 사용자의 시선과 일치되도록 상기 영상 정보에 대하여 보정을 수행하여 상기 사용자의 눈의 위치와 상기 조작 객체 간의 상대적인 위치 관계 정보를 획득하는 영상 교정부를 더 포함하는 것을 특징으로 하는, 3D 가상 객체에 대한 조작 처리 장치.
  8. 청구항 1에 있어서,
    상기 조작 객체의 움직임에 따른 3D 가상 객체의 운동 결과를 상기 사용자에게 출력하는 조작상태 출력부를 더 포함하는 것을 특징으로 하는, 3D 가상 객체에 대한 조작 처리 장치.
  9. 청구항 8에 있어서,
    상기 조작상태 출력부는,
    상기 접촉 지점이 2개 이상이고 적어도 2개 이상의 접촉 지점들 간의 거리가 서로 가까워지는 경우, 접촉 지점들 간의 거리에 기초하여 변형된 상기 3D 가상 객체의 외형 정보를 사용자에게 출력하는 것을 특징으로 하는, 3D 가상 객체에 대한 조작 처리 장치.
  10. 조작 객체를 포함하는 주변 환경에 대하여 카메라를 통해 촬영하여 생성한 영상 정보를 입력받는 단계;
    상기 영상 정보를 이용하여 상기 주변 환경에 대한 3D 가상 현실 공간을 재구성하는 단계;
    상기 조작 객체에 의하여 조작되는 3D 가상 객체를 모델링하고 상기 3D 가상 객체를 포함하는 3D 렌더링 공간을 생성하는 단계;
    상기 3D 렌더링 공간을 상기 3D 가상 현실 공간에 정합시키는 단계; 및
    상기 3D 가상 객체의 표면에 대한 상기 조작 객체의 접촉 여부를 판단하고, 상기 조작 객체의 표면과 상기 조작 객체 간의 접촉 지점에 대한 이동 경로를 추적하여 상기 3D 가상 객체의 운동을 처리하는 단계를 포함하는 것을 특징으로 하는, 3D 가상 객체에 대한 조작 처리 방법.
  11. 청구항 10에 있어서,
    상기 3D 가상 객체의 운동을 처리하는 단계는,
    상기 3D 가상 현실 공간에서 상기 3D 가상 객체의 표면 상의 한 점과 상기 조작 객체의 표면 상의 한 점이 일치할 때 상기 3D 가상 객체의 표면에 대하여 상기 조작 객체가 접촉된 것으로 판단하는 단계를 포함하는 것을 특징으로 하는, 3D 가상 객체에 대한 조작 처리 방법.
  12. 청구항 11에 있어서,
    상기 3D 가상 객체의 운동을 처리하는 단계는,
    상기 3D 가상 객체의 표면에 대하여 상기 조작 객체가 접촉된 것으로 판단된 시점에서부터, 상기 3D 가상 객체의 표면에 대한 상기 접촉 지점에서의 상기 3D 가상 객체의 무게중심으로 향하는 법선벡터를 산출하고, 상기 접촉 지점의 이동 경로를 추적하는 단계를 더 포함하는 것을 특징으로 하는, 3D 가상 객체에 대한 조작 처리 방법.
  13. 청구항 12에 있어서,
    상기 3D 가상 객체의 운동을 처리하는 단계는,
    상기 접촉 지점이 2개 이상인지 여부를 판단하는 단계; 및
    상기 접촉 지점이 2개 이상인 경우, 2개 이상의 접촉 지점들 각각에 대하여 상기 법선벡터를 산출하고 상기 이동 경로를 추적하는 단계를 더 포함하는 것을 특징으로 하는, 3D 가상 객체에 대한 조작 처리 방법.
  14. 청구항 13에 있어서,
    상기 3D 가상 객체의 운동을 처리하는 단계는,
    상기 법선벡터와 상기 접촉 지점의 이동 경로에 대한 방향벡터를 비교하여 상기 3D 가상 객체에 대한 운동 상태를 결정하는 단계를 더 포함하고,
    상기 3D 가상 객체에 대한 운동 상태는 상기 3D 가상 객체의 이동 운동, 회전 운동 또는 이동과 회전이 함께 이루어지는 복합 운동 중 어느 하나인 것을 특징으로 하는, 3D 가상 객체에 대한 조작 처리 방법.
  15. 청구항 14에 있어서,
    상기 3D 가상 객체의 운동을 처리하는 단계는,
    상기 3D 가상 객체에 대한 운동 상태에 기초하여 상기 3D 가상 객체의 운동을 처리하는 단계를 더 포함하는 것을 특징으로 하는, 3D 가상 객체에 대한 조작 처리 방법.
  16. 청구항 10에 있어서,
    상기 카메라의 시선이 상기 조작 객체를 사용하는 사용자의 시선과 일치되도록 상기 영상 정보에 대하여 보정을 수행하여 상기 사용자의 눈의 위치와 상기 조작 객체 간의 상대적인 위치 관계 정보를 획득하는 단계를 더 포함하는 것을 특징으로 하는, 3D 가상 객체에 대한 조작 처리 방법.
  17. 청구항 10에 있어서,
    상기 조작 객체의 움직임에 따른 3D 가상 객체의 운동 결과를 상기 사용자에게 출력하는 단계를 더 포함하는 것을 특징으로 하는, 3D 가상 객체에 대한 조작 처리 방법.
  18. 청구항 17에 있어서,
    상기 3D 가상 객체의 운동 결과를 사용자에게 출력하는 단계는,
    상기 접촉 지점이 2개 이상이고 적어도 2개 이상의 접촉 지점들 간의 거리가 서로 가까워지는 경우, 접촉 지점들 간의 거리에 기초하여 변형된 상기 3D 가상 객체의 외형 정보를 사용자에게 출력하는 것을 특징으로 하는, 3D 가상 객체에 대한 조작 처리 방법.
KR1020120077093A 2012-07-16 2012-07-16 3d 가상 객체에 대한 조작 처리 장치 및 방법 KR20140010616A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020120077093A KR20140010616A (ko) 2012-07-16 2012-07-16 3d 가상 객체에 대한 조작 처리 장치 및 방법
US13/942,078 US20140015831A1 (en) 2012-07-16 2013-07-15 Apparatus and method for processing manipulation of 3d virtual object

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120077093A KR20140010616A (ko) 2012-07-16 2012-07-16 3d 가상 객체에 대한 조작 처리 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20140010616A true KR20140010616A (ko) 2014-01-27

Family

ID=49913605

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120077093A KR20140010616A (ko) 2012-07-16 2012-07-16 3d 가상 객체에 대한 조작 처리 장치 및 방법

Country Status (2)

Country Link
US (1) US20140015831A1 (ko)
KR (1) KR20140010616A (ko)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160025376A (ko) * 2014-08-27 2016-03-08 엘지디스플레이 주식회사 입체영상 표시장치의 터치 보정장치
KR20160096392A (ko) * 2015-02-05 2016-08-16 한국전자통신연구원 직관적인 상호작용 장치 및 방법
KR101712350B1 (ko) 2015-10-15 2017-03-07 한국과학기술연구원 시선 및 손 정보를 이용하여 가상 객체를 선택하기 위한 니어 아이 디스플레이 장치, 상기 장치를 이용하여 가상 객체를 선택하는 방법 및 그 방법을 수행하기 위한 기록 매체
KR101716326B1 (ko) * 2015-09-08 2017-03-14 클릭트 주식회사 가상현실영상 전송방법, 재생방법 및 이를 이용한 프로그램
KR20170088655A (ko) * 2016-01-25 2017-08-02 삼성전자주식회사 증강 현실 출력 방법 및 이를 지원하는 전자 장치
US9818228B2 (en) 2015-08-07 2017-11-14 Microsoft Technology Licensing, Llc Mixed reality social interaction
US9922463B2 (en) 2015-08-07 2018-03-20 Microsoft Technology Licensing, Llc Virtually visualizing energy
KR20180058895A (ko) * 2016-11-24 2018-06-04 한국전자통신연구원 스마트 기기와 연동하는 증강현실 시스템 및 이를 이용한 증간현실 구현 방법
KR20180088074A (ko) * 2017-01-26 2018-08-03 김종민 굴삭기 가상 현실 장치
WO2018159981A1 (ko) * 2017-03-03 2018-09-07 클릭트 주식회사 가상현실영상 재생방법 및 이를 이용한 프로그램
KR20180101282A (ko) * 2018-06-27 2018-09-12 클릭트 주식회사 가상현실영상 재생방법 및 이를 이용한 프로그램
WO2018221808A1 (ko) * 2017-05-31 2018-12-06 주식회사 네비웍스 햅틱 인터랙션 기반 가상현실시뮬레이터 및 그 동작 방법
US10163001B2 (en) 2015-07-14 2018-12-25 Korea Institute Of Science And Technology Method and system for controlling virtual model formed in virtual space
KR101947160B1 (ko) * 2018-06-20 2019-02-12 (주)코딩앤플레이 증강현실을 이용한 코딩교육 방법
KR101961221B1 (ko) * 2017-09-18 2019-03-25 한국과학기술연구원 가상 공간에 형성된 가상 모델을 제어하는 방법 및 시스템
KR102007493B1 (ko) * 2019-01-31 2019-08-05 (주)코딩앤플레이 코딩용 학습 콘텐츠 제공 방법
KR102007491B1 (ko) * 2019-02-01 2019-08-05 (주)코딩앤플레이 가상의 로봇을 이용한 코딩 교육 제공 방법
KR102007495B1 (ko) * 2019-01-31 2019-08-05 (주)코딩앤플레이 가상 로봇을 활용한 교육 콘텐츠 실행 방법
KR20200001871A (ko) * 2018-06-28 2020-01-07 한국과학기술연구원 가상 공간의 인터랙션 3차원 가시화 시스템 및 방법
KR20200082449A (ko) * 2018-12-28 2020-07-08 한국과학기술원 가상 모델 제어 방법 및 장치

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9043707B2 (en) * 2007-03-28 2015-05-26 Autodesk, Inc. Configurable viewcube controller
US11493998B2 (en) 2012-01-17 2022-11-08 Ultrahaptics IP Two Limited Systems and methods for machine control
US9501152B2 (en) 2013-01-15 2016-11-22 Leap Motion, Inc. Free-space user interface and control using virtual constructs
US9459697B2 (en) 2013-01-15 2016-10-04 Leap Motion, Inc. Dynamic, free-space user interactions for machine control
US20150277699A1 (en) * 2013-04-02 2015-10-01 Cherif Atia Algreatly Interaction method for optical head-mounted display
US9916009B2 (en) 2013-04-26 2018-03-13 Leap Motion, Inc. Non-tactile interface systems and methods
US10533850B2 (en) 2013-07-12 2020-01-14 Magic Leap, Inc. Method and system for inserting recognized object data into a virtual world
US10281987B1 (en) 2013-08-09 2019-05-07 Leap Motion, Inc. Systems and methods of free-space gestural interaction
JP6367951B2 (ja) 2013-09-27 2018-08-01 センセル インコーポレイテッドSensel,Inc. 抵抗型タッチセンサシステム及び方法
US11221706B2 (en) 2013-09-27 2022-01-11 Sensel, Inc. Tactile touch sensor system and method
US10168873B1 (en) 2013-10-29 2019-01-01 Leap Motion, Inc. Virtual interactions for machine control
US9996797B1 (en) 2013-10-31 2018-06-12 Leap Motion, Inc. Interactions with virtual objects for machine control
US10416834B1 (en) * 2013-11-15 2019-09-17 Leap Motion, Inc. Interaction strength using virtual objects for machine control
US20150244747A1 (en) * 2014-02-26 2015-08-27 United Video Properties, Inc. Methods and systems for sharing holographic content
CN104123747B (zh) * 2014-07-17 2017-10-27 北京毛豆科技有限公司 多方式触控三维建模方法和***
JP2016038889A (ja) 2014-08-08 2016-03-22 リープ モーション, インコーポレーテッドLeap Motion, Inc. モーション感知を伴う拡張現実
KR101807513B1 (ko) 2015-05-13 2017-12-12 한국전자통신연구원 3차원 공간에서 영상정보를 이용한 사용자 의도 분석장치 및 분석방법
KR102317247B1 (ko) 2015-06-15 2021-10-26 한국전자통신연구원 영상정보를 이용한 증강현실 기반 손 인터랙션 장치 및 방법
US20160378206A1 (en) * 2015-06-26 2016-12-29 Intel Corporation Circular, hand-held stress mouse
CN108140360B (zh) * 2015-07-29 2020-12-04 森赛尔股份有限公司 用于操纵虚拟环境的***和方法
EP3332313B1 (en) 2015-08-06 2019-10-09 PCMS Holdings, Inc. Methods and systems for providing haptic feedback for virtual 3d objects
US10386926B2 (en) * 2015-09-25 2019-08-20 Intel Corporation Haptic mapping
US10771508B2 (en) 2016-01-19 2020-09-08 Nadejda Sarmova Systems and methods for establishing a virtual shared experience for media playback
US10290149B2 (en) 2016-04-08 2019-05-14 Maxx Media Group, LLC System, method and software for interacting with virtual three dimensional images that appear to project forward of or above an electronic display
EP3467792B1 (en) * 2016-05-25 2024-04-24 Sony Interactive Entertainment Inc. Image processing apparatus, image processing method, and program
CN106095104A (zh) * 2016-06-20 2016-11-09 电子科技大学 基于目标模型信息的连续手势轨迹分割方法及***
US10489978B2 (en) * 2016-07-26 2019-11-26 Rouslan Lyubomirov DIMITROV System and method for displaying computer-based content in a virtual or augmented environment
US10649615B2 (en) 2016-10-20 2020-05-12 Microsoft Technology Licensing, Llc Control interface for a three-dimensional graphical object
CN106875465B (zh) * 2017-01-20 2021-06-11 奥比中光科技集团股份有限公司 基于rgbd图像的三维操控空间的建立方法及设备
JP6948801B2 (ja) * 2017-02-28 2021-10-13 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及びプログラム
US10417827B2 (en) 2017-05-04 2019-09-17 Microsoft Technology Licensing, Llc Syndication of direct and indirect interactions in a computer-mediated reality environment
US10914957B1 (en) 2017-05-30 2021-02-09 Apple Inc. Video compression methods and apparatus
CN108983954B (zh) * 2017-05-31 2022-11-18 腾讯科技(深圳)有限公司 基于虚拟现实的数据处理方法、装置以及***
US11320911B2 (en) * 2019-01-11 2022-05-03 Microsoft Technology Licensing, Llc Hand motion and orientation-aware buttons and grabbable objects in mixed reality
US20200286298A1 (en) * 2019-03-06 2020-09-10 Immersion Corporation Systems and methods for a user interaction proxy
EP3813018A1 (en) * 2019-10-24 2021-04-28 XRSpace CO., LTD. Virtual object operating system and virtual object operating method

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7472047B2 (en) * 1997-05-12 2008-12-30 Immersion Corporation System and method for constraining a graphical hand from penetrating simulated graphical objects
JP3383563B2 (ja) * 1997-12-18 2003-03-04 富士通株式会社 物体移動シミュレーション装置
US6147678A (en) * 1998-12-09 2000-11-14 Lucent Technologies Inc. Video hand image-three-dimensional computer interface with multiple degrees of freedom
US7227526B2 (en) * 2000-07-24 2007-06-05 Gesturetek, Inc. Video-based image control system
US20020133264A1 (en) * 2001-01-26 2002-09-19 New Jersey Institute Of Technology Virtual reality system for creation of design models and generation of numerically controlled machining trajectories
US20050010326A1 (en) * 2003-05-28 2005-01-13 Vincent Hayward Method and apparatus for synthesizing virtual interaction between rigid and deformable bodies
US8730156B2 (en) * 2010-03-05 2014-05-20 Sony Computer Entertainment America Llc Maintaining multiple views on a shared stable virtual space
JP4986543B2 (ja) * 2006-08-31 2012-07-25 キヤノン株式会社 情報処理方法、情報処理装置
US7961173B2 (en) * 2006-09-05 2011-06-14 Navisense Method and apparatus for touchless calibration
JP4921113B2 (ja) * 2006-10-25 2012-04-25 キヤノン株式会社 接触提示装置及び方法
KR101651568B1 (ko) * 2009-10-27 2016-09-06 삼성전자주식회사 3차원 공간 인터페이스 장치 및 방법
US8576253B2 (en) * 2010-04-27 2013-11-05 Microsoft Corporation Grasp simulation of a virtual object
JP5640486B2 (ja) * 2010-06-15 2014-12-17 日産自動車株式会社 情報表示装置
US9271660B2 (en) * 2010-07-02 2016-03-01 Gangming Luo Virtual prosthetic limb system
US8704879B1 (en) * 2010-08-31 2014-04-22 Nintendo Co., Ltd. Eye tracking enabling 3D viewing on conventional 2D display
US9619104B2 (en) * 2010-10-01 2017-04-11 Smart Technologies Ulc Interactive input system having a 3D input space
US9092135B2 (en) * 2010-11-01 2015-07-28 Sony Computer Entertainment Inc. Control of virtual object using device touch interface functionality
US20120117514A1 (en) * 2010-11-04 2012-05-10 Microsoft Corporation Three-Dimensional User Interaction
US9529424B2 (en) * 2010-11-05 2016-12-27 Microsoft Technology Licensing, Llc Augmented reality with direct user interaction
US20120113223A1 (en) * 2010-11-05 2012-05-10 Microsoft Corporation User Interaction in Augmented Reality
US9760180B2 (en) * 2012-10-05 2017-09-12 Nec Solution Innovators, Ltd. User interface device and user interface method
US9552673B2 (en) * 2012-10-17 2017-01-24 Microsoft Technology Licensing, Llc Grasping virtual objects in augmented reality

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160025376A (ko) * 2014-08-27 2016-03-08 엘지디스플레이 주식회사 입체영상 표시장치의 터치 보정장치
KR20160096392A (ko) * 2015-02-05 2016-08-16 한국전자통신연구원 직관적인 상호작용 장치 및 방법
US10163001B2 (en) 2015-07-14 2018-12-25 Korea Institute Of Science And Technology Method and system for controlling virtual model formed in virtual space
US9818228B2 (en) 2015-08-07 2017-11-14 Microsoft Technology Licensing, Llc Mixed reality social interaction
US9922463B2 (en) 2015-08-07 2018-03-20 Microsoft Technology Licensing, Llc Virtually visualizing energy
KR101716326B1 (ko) * 2015-09-08 2017-03-14 클릭트 주식회사 가상현실영상 전송방법, 재생방법 및 이를 이용한 프로그램
WO2017043795A1 (ko) * 2015-09-08 2017-03-16 클릭트 주식회사 가상현실영상 전송방법, 재생방법 및 이를 이용한 프로그램
US10970931B2 (en) 2015-09-08 2021-04-06 Clicked Inc. Method for transmitting virtual reality image created based on image direction data, and computer readable medium storing program using the same
KR101712350B1 (ko) 2015-10-15 2017-03-07 한국과학기술연구원 시선 및 손 정보를 이용하여 가상 객체를 선택하기 위한 니어 아이 디스플레이 장치, 상기 장치를 이용하여 가상 객체를 선택하는 방법 및 그 방법을 수행하기 위한 기록 매체
KR20170088655A (ko) * 2016-01-25 2017-08-02 삼성전자주식회사 증강 현실 출력 방법 및 이를 지원하는 전자 장치
KR20180058895A (ko) * 2016-11-24 2018-06-04 한국전자통신연구원 스마트 기기와 연동하는 증강현실 시스템 및 이를 이용한 증간현실 구현 방법
KR20180088074A (ko) * 2017-01-26 2018-08-03 김종민 굴삭기 가상 현실 장치
WO2018159981A1 (ko) * 2017-03-03 2018-09-07 클릭트 주식회사 가상현실영상 재생방법 및 이를 이용한 프로그램
US10540826B2 (en) 2017-03-03 2020-01-21 Clicked Inc. Method of playing virtual reality image and program using the same
WO2018221808A1 (ko) * 2017-05-31 2018-12-06 주식회사 네비웍스 햅틱 인터랙션 기반 가상현실시뮬레이터 및 그 동작 방법
US11249550B2 (en) 2017-05-31 2022-02-15 Naviworks Co., Ltd. Haptic interaction-based virtual reality simulator and operation method therefor
KR101961221B1 (ko) * 2017-09-18 2019-03-25 한국과학기술연구원 가상 공간에 형성된 가상 모델을 제어하는 방법 및 시스템
WO2019245166A1 (ko) * 2018-06-20 2019-12-26 (주)코딩앤플레이 증강현실을 이용한 코딩교육 방법
KR101947160B1 (ko) * 2018-06-20 2019-02-12 (주)코딩앤플레이 증강현실을 이용한 코딩교육 방법
US11334325B2 (en) 2018-06-20 2022-05-17 Coding & Play Inc. Coding training method using augmented reality
KR20180101282A (ko) * 2018-06-27 2018-09-12 클릭트 주식회사 가상현실영상 재생방법 및 이를 이용한 프로그램
KR20200001871A (ko) * 2018-06-28 2020-01-07 한국과학기술연구원 가상 공간의 인터랙션 3차원 가시화 시스템 및 방법
KR20200082449A (ko) * 2018-12-28 2020-07-08 한국과학기술원 가상 모델 제어 방법 및 장치
KR102007493B1 (ko) * 2019-01-31 2019-08-05 (주)코딩앤플레이 코딩용 학습 콘텐츠 제공 방법
KR102007495B1 (ko) * 2019-01-31 2019-08-05 (주)코딩앤플레이 가상 로봇을 활용한 교육 콘텐츠 실행 방법
KR102007491B1 (ko) * 2019-02-01 2019-08-05 (주)코딩앤플레이 가상의 로봇을 이용한 코딩 교육 제공 방법

Also Published As

Publication number Publication date
US20140015831A1 (en) 2014-01-16

Similar Documents

Publication Publication Date Title
KR20140010616A (ko) 3d 가상 객체에 대한 조작 처리 장치 및 방법
EP3908904B1 (en) Holographic palm raycasting for targeting virtual objects
US20220084279A1 (en) Methods for manipulating objects in an environment
US10394334B2 (en) Gesture-based control system
EP3311249B1 (en) Three-dimensional user input
US8760395B2 (en) Gesture recognition techniques
CN110476142A (zh) 虚拟对象用户界面显示
US20140240225A1 (en) Method for touchless control of a device
KR102147430B1 (ko) 가상 공간 멀티 터치 인터랙션 장치 및 방법
CN113050802A (zh) 用于在虚拟现实环境中导航的方法、***及设备
US11714540B2 (en) Remote touch detection enabled by peripheral device
US11776182B1 (en) Techniques for enabling drawing in a computer-generated reality environment
US10497179B2 (en) Apparatus and method for performing real object detection and control using a virtual reality head mounted display system
EP3591503B1 (en) Rendering of mediated reality content
CN108401452B (zh) 使用虚拟现实头戴式显示器***来执行真实目标检测和控制的装置和方法
US20230267667A1 (en) Immersive analysis environment for human motion data
Unuma et al. [poster] natural 3d interaction using a see-through mobile AR system
VanWaardhuizen et al. Table top augmented reality system for conceptual design and prototyping
US20230042447A1 (en) Method and Device for Managing Interactions Directed to a User Interface with a Physical Object
Jung et al. Interactive auto-stereoscopic display with efficient and flexible interleaving
CN117435055A (zh) 基于空间立体显示器的手势增强眼球追踪的人机交互方法
Bhowmik Visual sensing and gesture interactions
Manders et al. Tracking a user's face and hands in three-dimensions in real-time

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid