KR20220135072A - 3차원 객체를 저작하는 방법 및 시스템 - Google Patents

3차원 객체를 저작하는 방법 및 시스템 Download PDF

Info

Publication number
KR20220135072A
KR20220135072A KR1020210040620A KR20210040620A KR20220135072A KR 20220135072 A KR20220135072 A KR 20220135072A KR 1020210040620 A KR1020210040620 A KR 1020210040620A KR 20210040620 A KR20210040620 A KR 20210040620A KR 20220135072 A KR20220135072 A KR 20220135072A
Authority
KR
South Korea
Prior art keywords
information
hmd
building
user
mixed reality
Prior art date
Application number
KR1020210040620A
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 KR1020210040620A priority Critical patent/KR20220135072A/ko
Publication of KR20220135072A publication Critical patent/KR20220135072A/ko

Links

Images

Classifications

    • 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/017Head mounted
    • G02B27/0172Head mounted characterised by optical features
    • 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/0093Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00 with means for monitoring data relating to the user, e.g. head-tracking, eye-tracking
    • 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
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • 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/0101Head-up displays characterised by optical features
    • G02B2027/014Head-up displays characterised by optical features comprising information/image processing systems
    • 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/0101Head-up displays characterised by optical features
    • G02B2027/0141Head-up displays characterised by optical features characterised by the informative content of the display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling

Landscapes

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

Abstract

컴퓨터와 통신하는 헤드마운트디스플레이(HMD, Head-Mounted Display)가 상기컴퓨터 상 표시되는 3차원 공간 데이터 중 3차원 객체를 저작하는 방법이 개시될 수 있다. 상기 방법은, 사용자로부터 저작할 3차원 객체에 대응하는 제1 정보를 추출하는 단계, 상기 제1 정보를 상기 컴퓨터로 전송하는 단계, 상기 컴퓨터로부터 상기 저작할 3차원 객체에 대응하는 제2 정보를 전송 받는 단계, 상기 제2 정보에 대응하는 3차원 혼합현실 객체를 시각화하는 단계, 상기 3차원 혼합현실 객체를 저작하는 단계, 그리고 상기 저작한 3차원 혼합현실 객체를 상기 컴퓨터로 전송하는 단계를 포함할 수 있다.

Description

3차원 객체를 저작하는 방법 및 시스템{METHOD AND SYSTEM FOR AUTHORING 3D OBJECT}
본 개시는 3차원 객체를 저작하는 방법 및 시스템에 관한 것이다.
개인 컴퓨터(PC, Personal Computer) 환경에서 3차원 객체를 저작하는 경우, 2차원 모니터 화면에 의해 시야와 방향이 제한된다. 이에 따라, 사용자(저작자)가 저작 대상인 3차원 객체를 살펴보는데 있어서 직관적이 못하다. 그리고 키보드와 마우스를 조작하는 방법도 2차원적이어서 3차원 공간에서 객체를 저작하는데 부적합하고 불편을 초래한다.
한편, 헤드마운트디스플레이(HMD, Head-Mounted Display)를 이용한 혼합현실 환경에서 3차원 객체를 저작하는 경우, 사용자가 3차원 공간에서 객체 주위를 둘러보는 등 객체를 직관적으로 파악할 수 있다. 그리고 사용자가 자신의 손이나 컨틀롤러로 3차원 공간에서 객체를 늘이고, 줄이고, 돌리는 등의 움직임을 통해 효과적으로 객체를 저작할 수 있다. 다만, HMD 단독 환경에서는 기기의 성능이 제약되어, 3차원 도시 공간 데이터와 같은 대용량 데이터를 한꺼번에 처리하는 데에는 한계가 있다.
본 발명이 해결하고자 하는 과제는 PC와 HMD를 서로 연동시켜 3차원 객체를 저작하는 방법 및 시스템을 제공하는 것이다.
한 측면에 따르면, 컴퓨터와 통신하는 헤드마운트디스플레이(HMD, Head-Mounted Display)가 상기 컴퓨터 상에 표시되는 3차원 공간 데이터 중에서 소정의 3차원 객체를 저작하는 방법이 제공될 수 있다. 상기 방법은, 사용자로부터 저작할 3차원 객체에 대응하는 제1 정보를 추출하는 단계, 상기 제1 정보를 상기 컴퓨터로 전송하는 단계, 상기 컴퓨터로부터 상기 저작할 3차원 객체에 대응하는 제2 정보를 전송 받는 단계, 상기 제2 정보에 대응하는 3차원 혼합현실 객체를 시각화하는 단계, 상기 3차원 혼합현실 객체를 저작하는 단계, 그리고 상기 저작한 3차원 혼합현실 객체를 상기 컴퓨터로 전송하는 단계를 포함할 수 있다.
상기 저작하는 단계는, 상기 3차원 혼합현실 객체에 대해서 회전, 이동, 크기 조정, 색상 변경, 그리고 텍스쳐 대체 중 적어도 하나를 수행하는 단계를 포함할 수 있다.
상기 제1 정보를 추출하는 단계는, 상기 사용자의 응시점을 추적하는 단계, 그리고 상기 사용자의 응시점을 추적하던 중 사용자의 선택 이벤트에 대응하는 피킹점 좌표를 계산하는 단계를 포함할 수 있으며, 상기 제1 정보는 상기 피킹점 좌표일 수 있다.
상기 제2 정보는 상기 피킹점 좌표에 대응하는 건물 객체의 아이디(ID)일 수 있으며, 상기 시각화하는 단계는, 상기 건물 객체의 아이디에 대응하는 3차원 혼합현실 객체를 상기 HMD의 인터페이스 상에 구현하는 단계를 포함할 수 있다.
상기 제1 정보를 추출하는 단계는, 상기 3차원 공간 데이터를 포함하는 영상 프레임을 추출하는 단계, 그리고 상기 영상 프레임 내에서 상기 사용자의 응시점에 대응하는 상기 제1 정보를 획득하는 단계를 포함할 수 있다.
상기 제2 정보는 상기 제1 정보에 대응하는 건물명 후보 리스트일 수 있으며, 상기 시각화하는 단계는, 상기 건물명 후보 리스트 중에서 상기 사용자로부터 저작할 건물 객체를 선택 받는 단계, 그리고 상기 선택 받은 건물 객체에 대응하는 3차원 혼합현실 객체를 상기 HMD의 인터페이스 상에 구현하는 단계를 포함할 수 있다.
상기 제1 정보를 추출하는 단계는, 상기 사용자의 음성 인식을 수행하는 단계, 그리고 상기 사용자의 음성 인식을 통해 질의할 건물명 후보를 추출하는 단계를 포함할 수 있으며, 상기 제1 정보는 상기 질의할 건물명 후보일 수 있다.
상기 제2 정보는 상기 질의할 건물명 후보에 대응하는 건물명 후보 리스트일 수 있으며, 상기 시각화하는 단계는, 상기 건물명 후보 리스트 중에서 상기 사용자로부터 저작할 건물 객체를 선택 받는 단계, 그리고 상기 선택 받은 건물 객체에 대응하는 3차원 혼합현실 객체를 상기 HMD의 인터페이스 상에 구현하는 단계를 포함할 수 있다.
상기 저작한 3차원 혼합현실 객체는 상기 컴퓨터에서 갱신되어 저장될 수 있다.
다른 측면에 따르면, 헤드마운트디스플레이(HMD, Head-Mounted Display)와 연동하는 컴퓨터가 3차원 객체를 저작하는 방법이 제공될 수 있다. 상기 방법은, 저작할 3차원 객체에 대응하는 제1 정보를 상기 HMD로부터 전송 받는 단계, 상기 제1 정보를 이용하여, 상기 저작할 3차원 객체에 대응하는 제2 정보를 획득하는 단계, 상기 제2 정보를 상기 HMD로 전송하는 단계, 상기 HMD로부터 상기 HMD가 저작한 3차원 혼합현실 객체를 전송 받는 단계, 그리고 상기 3차원 혼합현실 객체를 갱신하는 단계를 포함할 수 있다.
상기 방법은, 인터페이스 상에 3차원 공간 데이터를 가시화하는 단계를 더 포함할 수 있으며, 상기 제1 정보는 상기 3차원 공간 데이터 중에서 사용자의 응시점에 대응하는 피킹점 좌표일 수 있으며, 상기 제2 정보를 획득하는 단계는, 상기 피킹점 좌표에 대응하는 건물 객체의 아이디(ID)를 조회하는 단계를 포함할 수 있다.
상기 방법은 인터페이스 상에 3차원 공간 데이터를 가시화하는 단계를 더 포함할 수 있으며, 상기 제1 정보는 상기 3차원 공간 데이터를 포함하는 영상 프레임에서 사용자의 응시점에 대응하는 정보일 수 있으며, 상기 제2 정보를 획득하는 단계는 상기 제1 정보를 기계학습 모델에 적용하여 건물명을 인식하는 단계를 포함할 수 있으며, 상기 제2 정보는 상기 건물명에 대한 건물명 후보 리스트일 수 있다.
상기 제1 정보는 사용자의 음성 인식을 통해 추출된 질의할 건물명 후보일 수 있으며, 상기 제2 정보를 획득하는 단계는 상기 질의할 건물명 후보에 대응하는 건물후보를 조회하는 단계를 포함할 수 있으며, 상기 제2 정보는 상기 조회된 건물 후보에 대한 건물명 후보 리스트일 수 있다.
또 다른 측면에 따르면, 헤드마운트디스플레이(HMD, Head-Mounted Display)가 제공될 수 있다. 상기 HMD는, 컴퓨터와 통신하는 통신 인터페이스, 그리고 사용자로부터 저작할 3차원 객체에 대응하는 제1 정보를 추출하며 상기 통신 인터페이스가 상기 제1 정보를 상기 컴퓨터로 전송하는 것을 제어하며 상기 통신 인터페이스가 상기 컴퓨터로부터 상기 저작할 3차원 객체에 대응하는 제2 정보를 수신하는 것을 제어하는 프로세서를 포함할 수 있으며, 상기 프로세서는, 상기 제2 정보에 대응하는 3차원 혼합현실 객체가 시각화되는 것을 제어하고, 상기 3차원 혼합현실 객체를 저작하며, 상기 통신 인터페이스가 상기 저작한 3차원 혼합현실 객체를 상기 컴퓨터로 전송하는 것을 제어할 수 있다.
상기 프로세서는, 상기 3차원 혼합현실 객체에 대해서 회전, 이동, 크기 조정, 색상 변경, 그리고 텍스쳐 대체 중 적어도 하나를 수행하여, 상기 3차원 혼합현실 객체를 저작할 수 있다.
상기 프로세서는 상기 사용자의 응시점을 추적하던 중 사용자의 선택 이벤트에 대응하는 피킹점 좌표를 계산할 수 있으며, 상기 제1 정보는 상기 피킹점 좌표일 수 있다.
상기 제2 정보는 상기 피킹점 좌표에 대응하는 건물 객체의 아이디(ID)일 수 있으며, 상기 HMD는 상기 건물 객체의 아이디에 대응하는 3차원 혼합현실 객체를 시각화하는 인터페이스를 더 포함할 수 있다.
상기 프로세서는, 상기 컴퓨터 상에 표시되는 3차원 공간 데이터를 포함하는 영상 프레임을 추출하며, 상기 영상 프레임 내에서 상기 사용자의 응시점에 대응하는 상기 제1 정보를 추출할 수 있다.
상기 프로세서는 상기 사용자의 음성 인식을 수행하여 질의한 건물명 후보를 추출할 수 있으며, 상기 제1 정보는 상기 질의할 건물명 후보일 수 있다.
상기 저작한 3차원 혼합 현실 객체는 상기 컴퓨터에서 갱신되어 저장될 수 있다.
실시예들 중 적어도 하나의 실시예에 따르면, PC와 HMD가 서로 연동하여 3차원 객체를 저작할 수 있다.
실시예들 중 적어도 하나의 실시예에 따르면, PC 환경과 혼합현실 환경의 장단점을 상호 보완하여, 3차원 도시공간 시각화와 건물 객체 저작을 연속적으로 수행할 수 있다.
도 1은 한 실시예에 따른 3차원 객체를 저작하는 개념을 나타내는 도면이다.
도 2는 한 실시예에 따른 3차원 객체를 저작하는 방법을 나타내는 플로우차트이다.
도 3은 다른 실시예에 다른 3차원 객체를 저작하는 방법을 나타내는 플로우차트이다.
도 4는 또 다른 실시예에 따른 3차원 객체를 저작하는 방법을 나타내는 플로우차트이다.
도 5는 한 실시예에 따른 PC(100)의 내부 구성을 나타내는 블록도이다.
도 6은 한 실시예에 따른 HMD(200)의 내부 구성을 나타내는 블록도이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이하에서는 실시예에 따른 3차원 객체를 저작하는 방법 및 시스템에 대해서 상세히 설명한다. 이하의 설명에서, 저작하고자 하는 '3차원 객체'를 '건물'로 예를 들어 설명하지만 다른 3차원 객체의 저작에도 적용될 수 있다.
실시예에 따른 3차원 객체를 저작하는 방법은 PC 환경에서 대용량의 3차원 도시 공간 데이터를 한 번에 시각화하고, 사용자는 HMD를 사용하여 PC 환경 상의 건물 객체를 선택하여 PC 모니터 밖의 현실 공간에 3차원 혼합 현실 객체로 불러온다. 사용자는 혼합 현실 환경에서 건물 객체를 늘이고, 줄이고, 또는 돌리는 등의 직관적인 방식으로 저작을 수행한다. 저작된 결과는 다시 PC 환경 내로 갱신되며 시각화되는 연속적인 과정이 이루어진다.
도 1은 한 실시예에 따른 3차원 객체를 저작하는 개념을 나타내는 도면이다.
도 1에 나타낸 바와 같이, 3차원 객체를 저작하는 환경은 크게 개인용 컴퓨터(PC, Personal Computer)(100)와 헤드마운트디스플레이(HMD, Head-Mounted Display)(200)를 포함할 수 있다. PC(100)와 HMD(200)는 서로 데이터를 주고받을 수 있도록 유선 또는 무선 통신으로 연결된다.
PC(100)는 인터페이스(예를 들면, 모니터) 상에 대용량 3차원 공간 데이터를 가시화한다. 가시화된 영상은 저작하고자 하는 건물 객체를 포함하고 있다.
3차원 객체를 저작하고자 하는 사용자(이하, '사용자'라 함)는 HMD(200)를 장착하고 있다. HMD(200)는 투시(See-Through) 방식일 수 있다. 사용자는 투시 방식의 HMD(200)를 이용하여, 다양한 방식을 통해 PC(100)의 모니터 상의 건물 객체를 선택한다(S110). 여기서, 건물 객체를 선택하는 다양한 방식은 사용자 응시 추적 방식(A), 기계 학습 및 객체 인식 방식(B), 그리고 음성인식 및 지오코딩(geocoding) 방식(C)을 포함할 수 있다.
HMD(200)는 S110 단계에서 선택한 건물 객체에 대응하는 3차원 혼합현실 객체를 가져온다(S120). 즉, HMD(200)는 선택한 건물 객체에 대응하는 3차원 혼합현실 객체를 혼합현실 인터페이스 상에 구현한다. 여기서, 사용자에 의해 선택된 건물 객체는 PC(100)와 HMD(200) 간의 인터랙션(interaction)을 통해, PC(100)의 모니터에서 혼합현실 인터페이스 상으로 튀어나올 수 있다. 즉, HMD(200)는 카메라나 라이다 센서를 이용하여 PC(100)의 모니터의 물리적인 면을 인식할 수 있다. 이에 따라, HMD(200)는 선택한 건물 객체을 시각화 할 시에, 건물 객체의 일부분부터 모니터 밖으로 나오다가 전체가 모니터 밖으로 튀어나게 할 수 있다.
사용자는 HMD(200)를 통해 구현된 3차원 혼합현실 객체에 대해서 회전, 이동, 크기 조정, 색상 변경, 텍스쳐 대체 등을 통해, 3차원 객체를 저작한다(S130).
HMD(200)는 저작은 완료한 3차원 객체를 PC(100)로 반환한다(S140). 여기서, 저작 완료된 3차원 객체는 PC(100)와 HMD(200) 간의 인터랙션을 통해, 혼합현실 인터페이스 상에서 PC(100)의 모니터로 밀어 넣어질 수 있다. 즉, HMD(200)에서 저작 완료한 3차원 객체가 선택되어 모니터 안으로 밀어 넣는 제스처가 취해지는 경우, 저작 완료한 3차원 객체의 일부분부터 모니터 안으로 사라지게 할 수 있다.
PC(100)는 S140 단계에서 반환된 3차원 객체를 갱신하고, 갱신된 건물 객체를 포함한 3차원 도시공간 데이터를 인터페이스(예를 들면, 모니터) 상에 다시 시각화한다(S150).
도 2는 한 실시예에 따른 3차원 객체를 저작하는 방법을 나타내는 플로우차트이다.
PC(100)는 인터페이스(예를 들면, 모니터) 상에 대용량 3차원 공간 데이터를 가시화한다(S200). 여기서, 가시화된 영상은 저작하고자 하는 건물 객체를 포함하고 있다.
HMD(200)는 사용자의 응시점(gaze point)을 추적한다(S210). 즉, 사용자는 HMD(200)를 장착하고 있으며, HMD(200)는 사용자의 시선 추적(eye-tracking)을 수행한다. HMD(200)가 사용자 응시점을 추적하는 방법은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 알 수 있는 바 구체적인 설명은 생략한다. 사용자의 응시점을 추적하는 방법의 하나의 예로서, HMD(200)에 장착되어 있는 카메라를 통해 사용자의 눈동자를 촬영하여 응시점을 추적할 수 있다.
HMD(200)는 사용자의 응시점을 추적하던 중에 사용자의 선택 이벤트가 발생하는 경우, 선택 이벤트에 대응되는 응시점에 대한 피킹(picking) 점 좌표를 계산한다(S220). 사용자의 선택 이벤트에 대한 예는 손의 제스처일 수 있다. 즉, HMD(200)를 장착한 사용자는 PC(100)의 모니터 상에 가시화된 3차원 공간 데이터 중에서 저작하고자 하는 건물 객체를 선택하는 선택 이벤트를 수행하며, HMD(200)는 건물 객체에 대응하는 피킹 점 좌표를 계산한다. 여기서, HMD(200)의 깊이 카메라 또는 라이다 센서가 PC(100)의 모니터 크기와 모양을 측정한 결과를 참조하여, HMD(200)는 PC(100)의 모니터 상의 피킹(picking) 점 좌표 계산을 수행할 수 있다. 피킹 점 좌표 계산은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 알 수 있는 바 구체적인 설명은 생략한다.
HMD(200)는 S220 단계에서 계산한 피킹(picking) 점 좌표를 PC(100)로 전송한다(S230).
PC(100)는 S230 단계에서 전송 받은 피킹(picking) 점 좌표에 대응하는 건물 객체의 아이디(ID, identifier)를 조회한다(S240). 즉, PC(100)는 전송 받은 피킹(picking) 점 좌표에 대응하는 건물 객체의 아이디(ID)를 내부 또는 외부 메모리에서 추출한다. 여기서, 건물 객체의 아이디(ID)는 저작하고자 하는 건물 객체(즉, 사용자에 의해 선택된 객체)를 나타내는 정보의 하나의 예이며, 아이디 외에 다른 정보로 대체될 수 있다.
PC(100)는 S240 단계에서 조회한 건물 객체의 아이디(ID)를 HMD(200)로 전송한다(S250).
HMD(200)는 S250 단계에서 전송 받은 객체 건물의 ID에 대응하는 3차원 혼합현실 객체를 시각화한다(S260). 즉, HMD(200)는 전송 받은 객체 건물의 ID에 대응하는 3차원 혼합 현실 객체를 내부 또는 외부의 메모리에서 추출하고 이를 인터페이스 상에 구현한다. 여기서, 3차원 혼합 현실 객체는, PC(100)와 HMD(200) 간의 인터랙션(interaction)을 통해, PC(100)의 모니터에서 혼합현실 인터페이스 상으로 튀어나올 수 있다.
사용자는 S260 단계에서 시각화된 3차원 혼합 현실 객체에 대해서, HMD(200) 상에서 저작을 수행한다(S270). 즉, 사용자는 HMD(200)를 통해 구현된 3차원 혼합현실 객체에 대해서 회전, 이동, 크기 조정, 색상 변경, 텍스쳐 대체 등을 통해, 3차원 객체를 저작한다
HMD(200)는 S270 단계에서 저작한 3차원 객체를 PC(100)로 전송한다(S280). 여기서, 저작한 3차원 객체는, PC(100)와 HMD(200) 간의 인터랙션을 통해, 혼합현실 인터페이스 상에서 PC(100)의 모니터로 밀어 넣어질 수 있다.
그리고 PC(100)는 S280 단계에서 전송 받은 3차원 객체를 갱신한다(S290). 즉, PC(100)는 전송 받은 3차원 객체를 내부 또는 외부의 메모리에 갱신하여 저장한다.
도 3은 다른 실시예에 다른 3차원 객체를 저작하는 방법을 나타내는 플로우차트이다.
PC(100)는 인터페이스(예를 들면, 모니터) 상에 대용량 3차원 공간 데이터를 가시화한다(S300). 여기서, 가시화된 영상은 저작하고자 하는 건물 객체를 포함하고 있다.
HMD(200)는 3차원 공간 데이터가 가시화되고 있는 PC(100)의 모니터 화면을 포함하는 영상 프레임을 추출한다(S310). 즉, HMD(200)는 내부에 광학 카메라를 포함하고 있으며, 이 광학 카메라를 이용하여 PC(100)의 모니터 화면을 포함하는 영상 프레임을 추출한다.
그리고 HMD(200)는 S310 단계에서 추출한 영상 프레임 내에서 사용자가 바라보는 응시점에 대응하는 정보(즉, 응시점 정보)를 획득한다(S320). 즉, HMD(200)는 사용자가 응시한 상태에서 수행한 선택 이벤트를 감지하며, 감지한 선택 이벤트에 대응하는 응시점 정보(응시점의 이미지 좌표)를 추출한 영상 프레임 내에서 획득한다.
HMD(200)는 S320 단계에서 획득한 응시점 정보를 PC(100)로 전송한다(S330).
PC(100)는 S330 단계에서 전송 받은 응시점 정보에 대응하는 건물 객체를 추출하고 추출한 건물 객체에 대한 건물명을 인식한다(S340). 여기서, PC(100)는 미리 학습된 기계학습 모델을 통해, 응시점 정보에 대응하는 건물 객체의 추출 및 건물명을 인식할 수 있다. 기계학습 모델을 통해 건물 객체를 추출하고 건물명을 인식하는 방법은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 알 수 있는 바 구체적인 설명은 생략한다. 한편, PC(100)가 인식한 건물명은 여러 후보를 포함하는 리스트일 수 있다.
PC(100)는 S340 단계에서 인식한 건물명이 여러 후보를 포함하는 경우, 건물명 후보 리스트를 HMD(200)로 전송한다(S350).
HMD(200)는 상기 S350 단계에서 전송 받은 건물명 후보 리스트를 혼합 현실 환경에 나타나게 한다(S360). 그리고, 사용자는 혼합 현실 환경 상에 나타나는 건물명 후보 리스트 중에서 저작할 건물 객체를 선택한다(S360). 즉, HMD(200)는 사용자로부터 건물명 후보 리스트 중에서 저작할 건물 객체를 입력 받는다.
HMD(200)는 사용자로부터 선택 받은 건물 객체에 대응하는 3차원 혼합현실 객체를 시각화한다(S370). 즉, HMD(200)는 사용자로부터 선택 받은 건물 객체에 대응하는 3차원 혼합 현실 객체를 내부 또는 외부의 메모리에서 추출하고 이를 인터페이스 상에 구현한다. 여기서, 3차원 혼합 현실 객체는, PC(100)와 HMD(200) 간의 인터랙션(interaction)을 통해, PC(100)의 모니터에서 혼합현실 인터페이스 상으로 튀어나올 수 있다.
사용자는 S370 단계에서 시각화된 3차원 혼합 현실 객체에 대해서, HMD(200) 상에서 저작을 수행한다(S380). 즉, 사용자는 HMD(200)를 통해 구현된 3차원 혼합현실 객체에 대해서 회전, 이동, 크기 조정, 색상 변경, 텍스쳐 대체 등을 통해, 3차원 객체를 저작한다
HMD(200)는 S380 단계에서 저작한 3차원 객체를 PC(100)로 전송한다(S390). 여기서, 저작한 3차원 객체는, PC(100)와 HMD(200) 간의 인터랙션을 통해, 혼합현실 인터페이스 상에서 PC(100)의 모니터로 밀어 넣어질 수 있다.
그리고 PC(100)는 S390 단계에서 전송 받은 3차원 객체를 갱신한다(S391). 즉, PC(100)는 전송 받은 3차원 객체를 내부의 메모리에 갱신하여 저장한다.
도 4는 또 다른 실시예에 따른 3차원 객체를 저작하는 방법을 나타내는 플로우차트이다.
HMD(200)는 사용자의 음성 입력을 대기하고 있으며 사용자의 음성 인식을 수행한다(S400). 즉, HMD(200)는 건물 테스쳐 내 텍스트 등으로부터 유추된 건물명에 대한 사용자의 음성 인식을 수행한다. 사용자의 음성 인식을 수행하는 방법은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 알 수 있는 바 구체적인 설명은 생략한다.
그리고 HMD(200)는 사용자의 음성 인식을 통해 질의할 건물명을 추출한다(S410). 이때, HMD(200)는 질의할 건물명을 추출 할 시에 질의한 건물명 후보를 텍스트 형식으로 획득할 수 있다.
HMD(200)는 S410 단계에서 추출한 질의할 건물명 후보를 PC(100)로 전송한다(S420).
PC(100)는 S420 단계에서 전송 받은 질의할 건물명 후보에 대응하는 건물명후보를 조회하여 획득한다(S430). PC(100)는 전송 받은 질의할 건물명 후보에 대응하는 건물명 후보를 내부 또는 외부의 메모리에서 조회한다. 그리고 PC(100)는 지오코딩을 통해 현재 지점 부근으로 한정해 건물명 후보의 범위를 좁힐 수 있다. PC(100)는 각 건물명 후보에 대하여 지오코딩을 수행하여 각 건물의 경도 및 위도 좌표 등 지리적 위치를 얻는다. 이때 얻은 건물의 지리적 위치가 PC(100)의 모니터에 보여지는 현재 위치 부근의 범위를 벗어날 때 해당 건물을 리스트에서 제외함으로써 건물명 후보의 범위를 좁힐 수 있다.
PC(100)는 S430 단계에서 획득한 건물명 후보 리스트를 HMD(200)로 전송한다(S440).
HMD(200)는 상기 S440 단계에서 전송 받은 건물명 후보 리스트를 혼합 현실 환경에 나타나게 한다(S450). 그리고, 사용자는 혼합 현실 환경 상에 나타나는 건물명 후보 리스트 중에서 저작할 건물 객체를 선택한다(S450). 즉, HMD(200)는 사용자로부터 건물명 후보 리스트 중에서 저작할 건물 객체를 입력 받는다.
HMD(200)는 사용자로부터 선택 받은 건물 객체에 대응하는 3차원 혼합현실 객체를 시각화한다(S460). 즉, HMD(200)는 사용자로부터 선택 받은 건물 객체에 대응하는 3차원 혼합 현실 객체를 내부의 메모리에서 추출하고 이를 인터페이스 상에 구현한다. 여기서, 3차원 혼합 현실 객체는, PC(100)와 HMD(200) 간의 인터랙션(interaction)을 통해, PC(100)의 모니터에서 혼합현실 인터페이스 상으로 튀어나올 수 있다.
사용자는 S460 단계에서 시각화된 3차원 혼합 현실 객체에 대해서, HMD(200) 상에서 저작을 수행한다(S470). 즉, 사용자는 HMD(200)를 통해 구현된 3차원 혼합현실 객체에 대해서 회전, 이동, 크기 조정, 색상 변경, 텍스쳐 대체 등을 통해, 3차원 객체를 저작한다
HMD(200)는 S470 단계에서 저작한 3차원 객체를 PC(100)로 전송한다(S480). 여기서, 저작한 3차원 객체는, PC(100)와 HMD(200) 간의 인터랙션을 통해, 혼합현실 인터페이스 상에서 PC(100)의 모니터로 밀어 넣어질 수 있다.
그리고 PC(100)는 S390 단계에서 전송 받은 3차원 객체를 갱신한다(S490). 즉, PC(100)는 전송 받은 3차원 객체를 내부의 메모리에 갱신하여 저장한다.
상기 도 1 내지 도 4에서 설명한 바와 같이, 실시예에 따르면, PC 환경에서 대용량의 3차원 도시 공간 데이터를 시각화하고, PC 환경의 건물 객체를 모니터 밖의 3차원 혼합 현실 객체를 가져온다. 사용자는 3차원 혼합 현실 환경에서 직관적으로 저작을 수행하며, 저작된 결과는 다시 PC 환경에 반영된다. 즉, 실시예에 따르면, PC 환경과 혼합현실 환경의 장단점을 상호 보완하여, 3차원 도시공간 시각화와 건물 객체 저작을 연속적으로 수행할 수 있다.
도 5는 한 실시예에 따른 PC(100)의 내부 구성을 나타내는 블록도이다.
도 5에 나타낸 바와 같이, 한 실시예에 따른 PC(100)는 버스(120)를 통해 통신하는 프로세서(110), 메모리(130), 사용자 인터페이스 입력 장치(140), 사용자 인터페이스 출력 장치(150), 그리고 저장 장치(160)를 포함할 수 있다. PC(100)은 HMD(200)와 데이터를 송수신하기 위한 통신 인터페이스(170)를 더 포함할 수 있다. 통신 인터페이스(170)는 유선 또는 무선 통신 인터페이스일 수 있다.
프로세서(110)는 중앙 처리 장치(central processing unit, CPU)이거나, 또는 메모리(130) 또는 저장 장치(160)에 저장된 명령을 실행하는 반도체 장치일 수 있다. 프로세서(110)는 도 1 내지 도 4에서 설명한 기능 및 방법들을 구현하도록 구성될 수 있다. 하나의 예로서, 프로세서(110)는 지오코딩을 수행하는 기능, 기계학습 모델을 통해 건물 객체의 추출 및 건물명을 인식하는 영상 처리 기능, 피킹(picking) 점 좌표에 대응하는 건물 객체의 아이디(ID, identifier)를 조회하는 기능, 또는 저작한 3차원 객체를 갱신하는 기능을 포함할 수 있다.
메모리(130) 및 저장 장치(160)는 다양한 형태의 휘발성 또는 비휘발성 저장 매체를 포함할 수 있다. 예를 들어, 메모리(130)는 ROM(read only memory)(131) 및 RAM(random access memory)(132)를 포함할 수 있다. 실시예에서 메모리(130)는 프로세서(110)의 내부 또는 외부에 위치할 수 있고, 메모리(130)는 이미 알려진 다양한 수단을 통해 프로세서(110)와 연결될 수 있다.
도 6은 한 실시예에 따른 HMD(200)의 내부 구성을 나타내는 블록도이다.
도 6에 나타낸 바와 같이, 한 실시예에 따른 HMD(200)는 버스(220)를 통해 통신하는 프로세서(210), 메모리(230), 사용자 인터페이스 입력 장치(240), 사용자 인터페이스 출력 장치(250), 그리고 저장 장치(260)를 포함할 수 있다. HMD(200)는 PC(200)와 데이터를 송수신하기 위한 통신 인터페이스(270)를 더 포함할 수 있다. 통신 인터페이스(270)는 유선 또는 무선 통신 인터페이스일 수 있다.
프로세서(210)는 중앙 처리 장치(central processing unit, CPU)이거나, 또는 메모리(230) 또는 저장 장치(260)에 저장된 명령을 실행하는 반도체 장치일 수 있다. 프로세서(210)는 도 1 내지 도 4에서 설명한 기능 및 방법들을 구현하도록 구성될 수 있다. 하나의 예로서, 프로세서(210)는 응시점을 추적하는 기능, 사용자의 음성을 인식하는 기능, 영상 프레임을 추출하는 기능, 또는 3차원 객체를 저작하는 기능을 포함할 수 있다.
메모리(230) 및 저장 장치(260)는 다양한 형태의 휘발성 또는 비휘발성 저장 매체를 포함할 수 있다. 예를 들어, 메모리(230)는 ROM(read only memory)(231) 및 RAM(random access memory)(232)를 포함할 수 있다. 실시예에서 메모리(230)는 프로세서(210)의 내부 또는 외부에 위치할 수 있고, 메모리(230)는 이미 알려진 다양한 수단을 통해 프로세서(210)와 연결될 수 있다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.

Claims (20)

  1. 컴퓨터와 통신하는 헤드마운트디스플레이(HMD, Head-Mounted Display)가 상기 컴퓨터 상에 표시되는 3차원 공간 데이터 중에서 소정의 3차원 객체를 저작하는 방법으로서,
    사용자로부터 저작할 3차원 객체에 대응하는 제1 정보를 추출하는 단계,
    상기 제1 정보를 상기 컴퓨터로 전송하는 단계,
    상기 컴퓨터로부터 상기 저작할 3차원 객체에 대응하는 제2 정보를 전송 받는 단계,
    상기 제2 정보에 대응하는 3차원 혼합현실 객체를 시각화하는 단계,
    상기 3차원 혼합현실 객체를 저작하는 단계, 그리고
    상기 저작한 3차원 혼합현실 객체를 상기 컴퓨터로 전송하는 단계를 포함하는 방법.
  2. 제1항에 있어서,
    상기 저작하는 단계는, 상기 3차원 혼합현실 객체에 대해서 회전, 이동, 크기 조정, 색상 변경, 그리고 텍스쳐 대체 중 적어도 하나를 수행하는 단계를 포함하는 방법.
  3. 제1항에 있어서,
    상기 제1 정보를 추출하는 단계는,
    상기 사용자의 응시점을 추적하는 단계, 그리고
    상기 사용자의 응시점을 추적하던 중 사용자의 선택 이벤트에 대응하는 피킹점 좌표를 계산하는 단계를 포함하며,
    상기 제1 정보는 상기 피킹점 좌표인 방법.
  4. 제3항에 있어서,
    상기 제2 정보는 상기 피킹점 좌표에 대응하는 건물 객체의 아이디(ID)이며,
    상기 시각화하는 단계는, 상기 건물 객체의 아이디에 대응하는 3차원 혼합현실 객체를 상기 HMD의 인터페이스 상에 구현하는 단계를 포함하는 방법.
  5. 제1항에 있어서,
    상기 제1 정보를 추출하는 단계는,
    상기 3차원 공간 데이터를 포함하는 영상 프레임을 추출하는 단계, 그리고
    상기 영상 프레임 내에서 상기 사용자의 응시점에 대응하는 상기 제1 정보를 획득하는 단계를 포함하는 방법.
  6. 제5항에 있어서,
    상기 제2 정보는 상기 제1 정보에 대응하는 건물명 후보 리스트이며,
    상기 시각화하는 단계는,
    상기 건물명 후보 리스트 중에서 상기 사용자로부터 저작할 건물 객체를 선택 받는 단계, 그리고
    상기 선택 받은 건물 객체에 대응하는 3차원 혼합현실 객체를 상기 HMD의 인터페이스 상에 구현하는 단계를 포함하는 방법
  7. 제1항에 있어서,
    상기 제1 정보를 추출하는 단계는,
    상기 사용자의 음성 인식을 수행하는 단계, 그리고
    상기 사용자의 음성 인식을 통해 질의할 건물명 후보를 추출하는 단계를 포함하며,
    상기 제1 정보는 상기 질의할 건물명 후보인 방법.
  8. 제7항에 있어서,
    상기 제2 정보는 상기 질의할 건물명 후보에 대응하는 건물명 후보 리스트이며,
    상기 시각화하는 단계는,
    상기 건물명 후보 리스트 중에서 상기 사용자로부터 저작할 건물 객체를 선택 받는 단계, 그리고
    상기 선택 받은 건물 객체에 대응하는 3차원 혼합현실 객체를 상기 HMD의 인터페이스 상에 구현하는 단계를 포함하는 방법.
  9. 제1항에 있어서,
    상기 저작한 3차원 혼합현실 객체는 상기 컴퓨터에서 갱신되어 저장되는 방법.
  10. 헤드마운트디스플레이(HMD, Head-Mounted Display)와 연동하는 컴퓨터가 3차원 객체를 저작하는 방법으로서,
    저작할 3차원 객체에 대응하는 제1 정보를 상기 HMD로부터 전송 받는 단계,
    상기 제1 정보를 이용하여, 상기 저작할 3차원 객체에 대응하는 제2 정보를 획득하는 단계,
    상기 제2 정보를 상기 HMD로 전송하는 단계,
    상기 HMD로부터 상기 HMD가 저작한 3차원 혼합현실 객체를 전송 받는 단계, 그리고
    상기 3차원 혼합현실 객체를 갱신하는 단계를 포함하는 방법.
  11. 제10항에 있어서,
    인터페이스 상에 3차원 공간 데이터를 가시화하는 단계를 더 포함하며,
    상기 제1 정보는 상기 3차원 공간 데이터 중에서 사용자의 응시점에 대응하는 피킹점 좌표이며,
    상기 제2 정보를 획득하는 단계는, 상기 피킹점 좌표에 대응하는 건물 객체의 아이디(ID)를 조회하는 단계를 포함하는 방법.
  12. 제10항에 있어서,
    인터페이스 상에 3차원 공간 데이터를 가시화하는 단계를 더 포함하며,
    상기 제1 정보는 상기 3차원 공간 데이터를 포함하는 영상 프레임에서 사용자의 응시점에 대응하는 정보이며,
    상기 제2 정보를 획득하는 단계는 상기 제1 정보를 기계학습 모델에 적용하여 건물명을 인식하는 단계를 포함하며,
    상기 제2 정보는 상기 건물명에 대한 건물명 후보 리스트인 방법.
  13. 제10항에 있어서,
    상기 제1 정보는 사용자의 음성 인식을 통해 추출된 질의할 건물명 후보이며,
    상기 제2 정보를 획득하는 단계는, 상기 질의할 건물명 후보에 대응하는 건물후보를 조회하는 단계를 포함하며,
    상기 제2 정보는 상기 조회된 건물 후보에 대한 건물명 후보 리스트인 방법.
  14. 컴퓨터와 통신하는 통신 인터페이스, 그리고
    사용자로부터 저작할 3차원 객체에 대응하는 제1 정보를 추출하며, 상기 통신 인터페이스가 상기 제1 정보를 상기 컴퓨터로 전송하는 것을 제어하며, 상기 통신 인터페이스가 상기 컴퓨터로부터 상기 저작할 3차원 객체에 대응하는 제2 정보를 수신하는 것을 제어하는 프로세서를 포함하며,
    상기 프로세서는, 상기 제2 정보에 대응하는 3차원 혼합현실 객체가 시각화되는 것을 제어하고, 상기 3차원 혼합현실 객체를 저작하며, 상기 통신 인터페이스가 상기 저작한 3차원 혼합현실 객체를 상기 컴퓨터로 전송하는 것을 제어하는 헤드마운트디스플레이(HMD, Head-Mounted Display).
  15. 제14항에 있어서,
    상기 프로세서는, 상기 3차원 혼합현실 객체에 대해서 회전, 이동, 크기 조정, 색상 변경, 그리고 텍스쳐 대체 중 적어도 하나를 수행하여, 상기 3차원 혼합현실 객체를 저작하는 HMD.
  16. 제14항에 있어서,
    상기 프로세서는, 상기 사용자의 응시점을 추적하던 중 사용자의 선택 이벤트에 대응하는 피킹점 좌표를 계산하며,
    상기 제1 정보는 상기 피킹점 좌표인 HMD.
  17. 제16항에 있어서,
    상기 제2 정보는 상기 피킹점 좌표에 대응하는 건물 객체의 아이디(ID)이며,
    상기 건물 객체의 아이디에 대응하는 3차원 혼합현실 객체를 시각화하는 인터페이스를 더 포함하는 HMD.
  18. 제14항에 있어서,
    상기 프로세서는, 상기 컴퓨터 상에 표시되는 3차원 공간 데이터를 포함하는 영상 프레임을 추출하며, 상기 영상 프레임 내에서 상기 사용자의 응시점에 대응하는 상기 제1 정보를 추출하는 HMD.
  19. 제14항에 있어서,
    상기 프로세서는, 상기 사용자의 음성 인식을 수행하여 질의한 건물명 후보를 추출하며,
    상기 제1 정보는 상기 질의할 건물명 후보인 HMD.
  20. 제14항에 있어서,
    상기 저작한 3차원 혼합 현실 객체는 상기 컴퓨터에서 갱신되어 저장되는 HMD.
KR1020210040620A 2021-03-29 2021-03-29 3차원 객체를 저작하는 방법 및 시스템 KR20220135072A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210040620A KR20220135072A (ko) 2021-03-29 2021-03-29 3차원 객체를 저작하는 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210040620A KR20220135072A (ko) 2021-03-29 2021-03-29 3차원 객체를 저작하는 방법 및 시스템

Publications (1)

Publication Number Publication Date
KR20220135072A true KR20220135072A (ko) 2022-10-06

Family

ID=83597056

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210040620A KR20220135072A (ko) 2021-03-29 2021-03-29 3차원 객체를 저작하는 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR20220135072A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024106567A1 (ko) * 2022-11-14 2024-05-23 주식회사 딥파인 증강콘텐츠 변환을 위한 영상처리 시스템
WO2024186080A1 (ko) * 2023-03-03 2024-09-12 엘지전자 주식회사 자연어 기반 3차원 객체 조작 장치 및 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024106567A1 (ko) * 2022-11-14 2024-05-23 주식회사 딥파인 증강콘텐츠 변환을 위한 영상처리 시스템
WO2024186080A1 (ko) * 2023-03-03 2024-09-12 엘지전자 주식회사 자연어 기반 3차원 객체 조작 장치 및 방법

Similar Documents

Publication Publication Date Title
EP3781896B1 (en) System for locating and identifying an object in unconstrained environments
TWI446175B (zh) 通信控制裝置、通信控制方法及相關之電腦可讀媒體
CN110362193B (zh) 用手或眼睛跟踪辅助的目标跟踪方法及系统
KR101666561B1 (ko) 증강 공간 내 부분 공간 획득 시스템 및 방법
US10019839B2 (en) Three-dimensional object scanning feedback
US10719193B2 (en) Augmenting search with three-dimensional representations
TW201346640A (zh) 影像處理裝置及電腦程式產品
KR20220135072A (ko) 3차원 객체를 저작하는 방법 및 시스템
JPWO2014141504A1 (ja) 3次元ユーザインタフェース装置及び3次元操作処理方法
KR20150132526A (ko) 체험 콘텐츠 데이터세트에 대한 캠페인 최적화
JP6495538B2 (ja) イメージコンテンツ検索
JP6129363B2 (ja) インタラクティブシステム、リモコン及びその操作方法
CN114170407B (zh) 输入设备的模型映射方法、装置、设备和存储介质
WO2015093130A1 (ja) 情報処理装置、情報処理方法およびプログラム
JP5868128B2 (ja) 情報処理装置およびその制御方法
CN111872928B (zh) 一种障碍物属性判别方法、系统及智能机器人
CN111068309B (zh) 虚拟现实游戏的显示控制方法、装置、设备、系统及介质
CN112788443B (zh) 基于光通信装置的交互方法和系统
KR20200122754A (ko) 증강 현실 이미지를 제공하는 스마트 안경 시스템
JPWO2020144848A1 (ja) オーサリング装置、オーサリング方法、及びオーサリングプログラム
JP2023136238A (ja) 情報表示システム、情報表示方法、及びプログラム
JP2021162876A (ja) 画像生成システム、画像生成装置及び画像生成方法
JP7390891B2 (ja) クライアント装置、サーバ、プログラム、及び、情報処理方法
JP2017187944A (ja) 情報処理装置、指示位置の決定方法、コンピュータプログラム、及び記憶媒体
JP2023053631A (ja) 注視位置分析システム及び注視位置分析方法