11
한국CAD/CAM학회 논문집 Vol. 21, No. 2, pp. 159-169. June 2016 Transactions of the Society of CAD/CAM Engineers DOI http://dx.doi.org/10.7315/CADCAM.2016.159 <응용논문> pISSN 1226-0606 eISSN 2288-6036 Unity Leap Motion 이용한 기반 3D 가상품평 정호균 · 박형준 조선대학교 산업공학과 Web-based 3D Virtual Experience using Unity and Leap Motion Ho-Kyun Jung and Hyungjun Park Department of Industrial Engineering, Chosun University Received 22 October 2015; received in revised form 29 December 2015; accepted 31 December 2015 ABSTRACT In order to realize the virtual prototyping (VP) of digital products, it is important to provide the people involved in product development with the appropriate visualization and interaction of the products, and the vivid simulation of user interface (UI) behaviors in an interactive 3D virtual environment. In this paper, we propose an approach to web-based 3D virtual experience using Unity and Leap Motion. We adopt Unity as an implementation platform which easily and rap- idly implements the visualization of the products and the design and simulation of their UI behaviors, and allows remote users to get an easy access to the virtual environment. Addition- ally, we combine Leap Motion with Unity to embody natural and immersive interaction using the user’s hand gesture. Based on the proposed approach, we have developed a testbed system for web-based 3D virtual experience and applied it for the design evaluation of various digital products. Button selection test was done to investigate the quality of the interaction using Leap Motion, and a preliminary user study was also performed to show the usefulness of the pro- posed approach. Key Words: Virtual Experience, Digital Products, Natural User Interaction, Behavior Simulation, Unity, Leap Motion, Web-based System 1. 서 론 정보통신 기술의 발전에 힘입어 인터넷 접속 능이 탑재된 단말기 보급이 확대되면서 정보의 산이 가속화되고, 소비자 트랜드가 급변하고 . 특히, 디지털 제품 시장의 경우 경쟁이 급속하 가속화됨에 따라 제품의 성공적인 시장 진입을 위해서는 제품에 대한 고객요구를 제품 특성 (features) 기능(functions) 정확히 반영하고, 품출시기간(time-to-market) 혁신적으로 줄이는 것이 절실히 요구된다. 소비자 요구의 신속· 정확 파악, 제품 개발 비용과 시간 절감, 그리고 품의 효과적인 홍보 마케팅을 위한 도구로서 제품개발과정에서의 3D 가상시작( , 가상체험 품평) 기술이 각광받고 있다 [1,2] . 디지털 제품의 3D 가상품평 관련 연구는 제품 User Interface(UI) 기능 시뮬레이션, 제품- 사용 상호작용, 가상환경의 3D 시각화 등으로 나누 어져 지속적으로 수행되어 왔다 [3-7] . 제품의 UI Corresponding Author, [email protected] © 2016 Society of CAD/CAM Engineers

Unity와 Leap Motion 을 이용한 웹 기반 3Dkoreascience.or.kr/article/JAKO201616853626702.pdf · Motion, and a preliminary user study was also performed to show the usefulness

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

  • 한국CAD/CAM학회 논문집 Vol. 21, No. 2, pp. 159-169. June 2016

    Transactions of the Society of CAD/CAM Engineers DOI http://dx.doi.org/10.7315/CADCAM.2016.159

    pISSN 1226-0606eISSN 2288-6036

    Unity와 Leap Motion을 이용한 웹 기반 3D 가상품평

    정호균 · 박형준†

    조선대학교 산업공학과

    Web-based 3D Virtual Experience using Unity and Leap Motion

    Ho-Kyun Jung and Hyungjun Park†

    Department of Industrial Engineering, Chosun University

    Received 22 October 2015; received in revised form 29 December 2015; accepted 31 December 2015

    ABSTRACT

    In order to realize the virtual prototyping (VP) of digital products, it is important to provide the

    people involved in product development with the appropriate visualization and interaction of the

    products, and the vivid simulation of user interface (UI) behaviors in an interactive 3D virtual

    environment. In this paper, we propose an approach to web-based 3D virtual experience using

    Unity and Leap Motion. We adopt Unity as an implementation platform which easily and rap-

    idly implements the visualization of the products and the design and simulation of their UI

    behaviors, and allows remote users to get an easy access to the virtual environment. Addition-

    ally, we combine Leap Motion with Unity to embody natural and immersive interaction using

    the user’s hand gesture. Based on the proposed approach, we have developed a testbed system

    for web-based 3D virtual experience and applied it for the design evaluation of various digital

    products. Button selection test was done to investigate the quality of the interaction using Leap

    Motion, and a preliminary user study was also performed to show the usefulness of the pro-

    posed approach.

    Key Words: Virtual Experience, Digital Products, Natural User Interaction, Behavior Simulation,

    Unity, Leap Motion, Web-based System

    1. 서 론

    정보통신 기술의 발전에 힘입어 인터넷 접속 기

    능이 탑재된 단말기 보급이 확대되면서 정보의 확

    산이 가속화되고, 소비자 트랜드가 급변하고 있

    다. 특히, 디지털 제품 시장의 경우 경쟁이 급속하

    게 가속화됨에 따라 제품의 성공적인 시장 진입을

    위해서는 제품에 대한 고객요구를 제품 특성

    (features)과 기능(functions)에 정확히 반영하고, 제

    품출시기간(time-to-market)을 혁신적으로 줄이는

    것이 절실히 요구된다. 소비자 요구의 신속·정확

    한 파악, 제품 개발 비용과 시간 절감, 그리고 제

    품의 효과적인 홍보 및 마케팅을 위한 도구로서

    제품개발과정에서의 3D 가상시작(즉, 가상체험 및

    품평) 기술이 각광받고 있다[1,2].

    디지털 제품의 3D 가상품평 관련 연구는 제품

    의 User Interface(UI) 기능 시뮬레이션, 제품-사용

    자 상호작용, 가상환경의 3D 시각화 등으로 나누

    어져 지속적으로 수행되어 왔다[3-7]. 제품의 UI 기

    †Corresponding Author, [email protected]

    © 2016 Society of CAD/CAM Engineers

  • 160 정호균 · 박형준

    능 시뮬레이션이란 제품-사용자 상호작용을 통해

    사용자가 제품의 입력장치를 조작하면 제품의 UI

    또는 Human Machine Interaction(HMI) 기능 정보

    모델에 의거하여 제품 상태가 바뀌면서 제품 기능

    을 재현하는 것을 말한다. 국외에서는 상태전이 도

    표 또는 상태 트리(state-tree)에 관한 연구가 발

    표되었고, 디지털 제품의 가상시작을 위해 UI(또

    는 HMI) 기능 시뮬레이션 개념을 적용한 사례가

    발표되었다[3,4]. 국내에서도 HMI 기능 시뮬레이션

    이 고려된 휴대용 전자제품 가상품평 방안이 제시

    되었다[5-7]. 하지만 UI 설계 환경과 3D 가상시작

    개발 환경이 서로 달라 개발자 간의 원활한 의사

    소통이 어렵고, 수정을 위해서는 많은 시간과 노

    력이 중복 소요되는 문제점이 있다. 이를 해결하

    기 위해 개발환경을 통합하는 노력이 요구된다.

    제품-사용자 상호작용을 위해 전통적인 마우스/

    키보드와 함께 데이터 글러브, 햅틱 장비 등을 이

    용한 손 동작 인식, 음성 인식 등이 가상현실 환경

    에서의 입력 도구로 사용되고 있지만, 별도의 측

    정 환경 구축과 고가의 장비 구입으로 인해 그 활

    용도가 높지 않았다. 하지만 최근 사용자의 몸 동

    작의 움직임을 감지하는 Kinect[8], Leap Motion[9]

    등과 같은 저가의 도구들이 개발되면서, 이를 입

    력 정보로 활용하려는 연구가 활발히 이루어지고

    있다. 저가의 측정장치를 이용하여 사용자의 손 동

    작을 인식하기 위한 노력으로 Raheja 등[10]과

    Oikonomidis 등[11]은 Kinect의 깊이 정보를 이용하

    여 사용자의 손을 추적하는 방안에 대해 제안하였

    다. 하지만 Kinect의 측정 단위가 커서 사용자의

    정교한 손 동작을 정확히 추적하기 어렵다는 단점

    이 있다. Leap Motion은 손 동작을 감지/추적하는

    방식의 사용자 입력 장치로 가격이 비교적 저렴하

    고, 사용이 간편하여 가상현실 응용 분야에서 관

    심을 끌고 있다[12-14]. Marin 등[13]은 Leap Motion과

    Kinect의 측정 정보를 활용하여 손 동작을 인식하

    는 방안을 제안하였고, Regenbrecht 등[14]은 Leap

    Motion의 측정 정보와 실제 손 이미지를 이용하여

    증강현실 환경에서 가상의 객체와 상호작용하는

    방안을 제안하였다.

    Unity[15]는 3D 비디오 게임이나 건축 시각화, 실

    시간 3D 애니메이션 같은 대화식(interactive) 콘텐

    츠를 제작하기 위한 통합 저작 도구로 웹 환경을

    포함한 다양한 플랫폼을 지원하며, 애셋 스토어

    (asset store)를 통해 다양한 플러그인(plugin) 형태

    의 응용 프로그램을 다운 받아 개발에 활용할 수 있다.

    본 논문에서는 이러한 Unity와 Leap Motion을

    이용하여 디지털 제품의 웹 기반 3D 가상 품평 시

    스템을 효과적으로 구현하는 방안을 제시한다.

    Unity를 개발환경으로 이용하여 제품 형상의 시각

    화 기능과 제품 UI 행동양태 설계 및 시뮬레이션

    기능을 간편하고 효과적으로 구현하는 방안을 제

    시하고, 웹(Web)을 통해 가상시작 환경에 접근하

    여 디지털 제품의 3D 가상 품평을 수행하는 방안

    을 제시한다. 아울러, Leap Motion을 Unity와 연

    동시켜 사용자의 손동작을 이용한 편리하고 몰입

    감(immersion) 있는 상호작용을 구현하는 방안을

    제시한다. 제시된 방안을 토대로 디지털 제품에 대

    한 웹 기반 3D 가상설계 품평 시스템을 개발하였

    으며, 상호작용 정확도 평가와 시스템 사용자 평

    가를 통해 제시된 방안의 유용성을 확인하였다.

    2장에서는 Unity와 Leap Motion을 이용한 웹 기

    반 3D 가상 품평을 위한 주요 과정을 설명하고,

    3장에서는 Unity를 이용한 제품 행동양태 모델링

    과 시뮬레이션 방안에 대하여 기술한다. 4장에서

    는 Leap Motion을 이용한 손동작을 통한 상호작

    용 방안데 대하여 기술하며, 5장에서는 제안된 방

    안에 대한 시스템 구현에 대해 설명하고, 정확도

    평가 및 사용자 평가 측면에서 기존 마우스 입력

    방식과 Leap Motion 기반 손동작 입력 방식을 비

    교한다. 마지막으로 6장에서는 결론과 향후 연구

    방향에 대해 언급한다.

    2. 웹 기반 3D 가상 품평 프레임워크

    본 논문에서 제시하는 3D 가상 품평은 Unity를

    이용한 제품의 UI 기능 정보 모델의 설계·생성을

    통해 생생한 UI 기능 시뮬레이션을 가능케 하고,

    Leap Motion을 이용한 손 동작(gesture) 인식을 통

    해 몰입감이 높고 편리한 제품-사용자 상호작용을

    제공한다. 또한, 웹 기반 서비스를 통해 향상된 사

    용자 접근 편의성을 제공한다. Fig. 1은 Unity와

    Leap Motion을 이용한 웹 기반 3D 가상품평을 위

    한 주요 프로세스를 나타낸다.

    UI 디자이너는 Unity를 이용하여 제품에 대한

    멀티미디어 콘텐츠와 제품 UI 기능에 대한 상태전

    이(state transition) 정보를 기반으로 제품의 UI 기

    능 정보 모델을 정의 및 생성한다. VR 개발자는

    Unity 환경에서 UI 행동양태 시뮬레이션의 수행을

  • Unity 와 Leap Motion을 이용한 웹 기반 3D 가상품평 161

    지원하고, 3D 제품/부품 행동양태 정보(부품의 이

    동, 회전 등)를 이용한 3D 제품 모델의 동적 시각

    화와 함께 Leap Motion 기반 손 동작 정보를 이용

    한 가상 손 모델의 동적 시각화를 제공하는 3D 가

    상품평 시스템을 제작하고, 원격 서비스 제공을 위

    한 웹 환경을 구축한다. 사용자는 장소와 시간에

    제약 없이 웹에 접근하여 3D 가상 제품의 기능과

    외관을 체험하고, 이에 대한 평가를 개발자에게 전

    달한다.

    2.1 독립형 3D 가상 품평 시스템

    Fig. 2는 Unity와 Leap Motion을 이용한 독립형

    (stand-alone) 3D 가상품평 시스템의 프레임워크

    (framework)를 나타낸다.

    사용자는 화면에 시각화된 제품을 보면서 Leap

    Motion 바로 위에서 손으로 조작하고 만지는 동작

    을 취하면 시스템은 사용자의 손 위치 정보를 얻

    고, 그 정보를 가상 손에 매핑(mapping)하여 시각

    화한다. 이러한 과정에서 얻게 되는 제품 모델의

    부품들과 가상 손 모델의 충돌을 검증하고, 사용

    자 입력(버튼 터치, 드래그 등)을 판별한다. 사용

    자 입력 정보는 UI 행동양태 이벤트와 3D 제품/부

    품 행동양태 이벤트를 촉발시킨다. UI 기능 정보

    모델은 UI 행동양태 이벤트를 기반으로 제품의 상

    태 전이를 수행하고, 각 상태에 맞는 UI 시각 및

    음성 정보를 제공한다. 3D 제품/부품 행동양태 이

    벤트에 따라 3D 제품 및 부품들의 이동, 회전 등

    이 수행된다. 이와 같이 제품 상태에 따른 UI 시

    각 및 음성 정보, 3D 모델의 시각 정보를 출력 장

    치로 출력한다. 이를 통해 사용자는 제품의 기능

    과 외관을 체험한다.

    2.2 웹 기반 3D 가상 품평 시스템

    앞에서 설명한 독립형 3D 가상 품평 시스템의

    경우, 프로그램과 함께 제품 데이터(멀티미디어 데

    이터, 행동양태 모델, 3D 제품 모델 등) 파일을 사

    용자 컴퓨팅 환경에 다운로드한 후 사용자가 프로

    그램을 실행한다. 그러나, 제품 데이터 파일을 사

    용자에게 직접 제공함에 따라 제품 정보에 대한

    보안 및 관리의 취약점이 발생하게 된다. 즉, 가상

    품평을 통해 제품 출시 전 개발자, 경영진, 그리고

    고객에게 제품에 대한 기능과 외관에 대한 정보를

    제공하기 때문에 제품 관련 데이터를 제한적으로

    공개하는 것이 요구된다.

    이러한 문제를 해결하기 위해 웹 환경을 활용한

    3D 가상 품평 방안을 채택하였다. 즉, 웹 기반 클

    라이언트-서버(client-server) 구조를 이용해 서버

    는 사용자의 접속 정보를 관리하고, 프로그램에 출

    력 정보만을 제공함으로써 사용자는 제품의 기능

    과 외관을 체험하되 제품 데이터에 직접적인 접근

    을 제한하게 하였다. Unity의 경우 웹 환경을 지원

    하기 위해 자체적으로 Unity Web Player를 제공한

    다. 이는 개발된 프로그램이 웹 플랫폼에서 구동

    될 수 있게 지원해 주며, 제품 데이터를 암호화하

    여 보안을 유지할 수 있으며, 웹 브라우저(Web

    Browser)와의 소켓통신을 지원한다. 이를 이용하

    여 사용자의 Leap Motion에서 얻어진 손 동작 데

    이터(손 가락 마디의 위치, 방향, 각도)를 재가공

    하여 서버에 보내고, 서버에서 이를 바탕으로 제

    품-사용자 상호작용에 활용하도록 하였다. Fig. 3

    는 위에서 설명한 클라이언트-서버 구조의 웹 환

    경 기반 3D 가상품평 시스템의 프레임워크를 나

    타낸다.

    Fig. 1 Process of web-based 3D virtual experience of

    digital products using Unity and Leap Motion

    Fig. 2 3D virtual experience using Unity and Leap

    Motion

  • 162 정호균 · 박형준

    3. 제품 행동양태 모델링과 시뮬레이션

    3.1 UI 행동양태 모델링 및 시뮬레이션

    UI 기능(또는 행동양태) 정보 모델링은 제품의

    가상 품평을 구현하기 위한 요소 기술로서 이벤트

    드리븐(event-driven) 방법론, 상태전이 방법론 등

    을 토대로 하는 연구가 이루어지고 있다. 본 논문

    에서는 UI 행동양태 모델링과 시뮬레이션을 위해

    Uinty에서 제공하는 Mecanim을 활용하여 상태전

    이 방법론에 의거한 디지털 제품의 UI 행동양태

    정보를 표현 및 생성하고, 이를 토대로 시뮬레이

    션을 수행하는 방식을 채택하였다.

    UI 행동양태 정보의 구성요소는 UI와 관련되는

    이벤트(event) 리스트, 제품이 취할 수 있는 상태

    (state) 리스트, 각 상태에서 발생할 수 있는 상태

    전이(transition) 리스트와 각 상태 전이를 유발시

    키는 이벤트-액션(action) 정보, 각 상태 안에서 수

    행되는 활동(activity) 등이 포함된다[5]. Fig. 4은 제

    품의 상태 전이를 도식화한 것으로 상태의 활동을

    진입 활동, 모드 활동, 종료 활동으로 구분한다.

    현재의 상태에서 모드 활동이 진행하는 동안에

    이벤트가 발생하면 이벤트-액션 조건에 맞는 액션

    을 찾고 정의된 상태로 전이가 이뤄진다. 이후 이

    전 상태의 종료 활동과 현재 상태의 진입 활동이

    순차적으로 실행된다.

    UI 행동양태 모델링에 의거하여 제품의 상태전

    이를 제어하는 것을 유한상태기계(finite state

    machine, FSM)라 부르며 Unity에서는 애니메이션

    을 설계하는 Mecanim에서 이를 제작할 수 있다.

    Mecanim은 이전에 프로그래머가 스크립팅(scripting)

    을 통해 구현하던 유한상태기계를 직관적인 다이

    어그램 인터페이스로 설계할 수 있고, 시뮬레이션

    중에 상태전이 정보를 실시간으로 제공한다[15]. Fig.

    5는 Mecanim을 이용하여 PMP 제품에 대한 UI 행

    동양태 정보를 다이어그램으로 표현하고 유한상

    태기계를 저작한 사례를 보여준다. 제작된 유한상

    태기계를 기반으로 각 상태의 멀티미디어 정보를

    지정하고, 이를 출력장치에 출력함으로써 시뮬레

    이션을 수행한다. 본 연구에서는 유한상태기계와

    연동되는 스크립트를 생성하고, 해당 스크립트에

    서 제품의 멀티미디어 정보를 변수화하여 등록 및

    수정이 용이하게 하였다. Fig. 6은 앞서 제작된

    PMP 제품의 UI 행동양태의 검증을 위한 시뮬레

    이션 과정을 나타낸다.

    3.2 3D 제품/부품 행동양태 저작

    제품의 3D 부품 모델들과 조립체 모델을 포함

    하는 제품모델(product model)은 가상 품평 구축

    Fig. 3 Web-based 3D virtual experience using Unity and

    Leap Motion

    Fig. 4 State Transition

    Fig. 5 UI behavior of PMP created by Mecanim

    Fig. 6 UI behavior simulation of PMP using Unity

  • Unity 와 Leap Motion을 이용한 웹 기반 3D 가상품평 163

    에 우선적으로 필요하며, 대개 CAD 디자이너에

    의해 생성된다. 제품모델에는 제품을 이루는 부품

    들의 기하모델 정보, 재질 및 색상 정보가 포함되

    며, 부품들 간의 조립 관계(assembly structure)와

    기구학적 운동(kinematics)에 관한 정보도 포함된

    다[5]. 일반적으로 CAD 소프트웨어를 이용하거나,

    제품의 목업(mockup)이 존재할 경우 역공학(reverse

    engineering) 기법을 이용하여 제품의 기하 모델을

    생성한다. Unity의 경우, FBX, 3DS, DXF, OBJ 포

    맷 등의 3D 모델을 불러들일 수 있어 다양한 CAD

    툴의 활용이 가능하다. Fig. 7는 Portable Multimedia

    Player(PMP) 제품에 대한 제품 모델을 Unity에 불

    러들인 후 시각화한 결과를 나타낸다.

    제품의 가상 품평을 수행하기 위해서는 UI 행동

    양태뿐만 아니라 제품-사용자 간의 상호작용에 따

    른 3D 제품 및 부품들 간의 행동양태의 표현 및

    생성이 요구된다. 대표적인 3D 제품/부품 행동양

    태는 3D 부품들 간의 이동 및 회전인데, 사용자

    입력을 통해 제품의 버튼을 클릭하는 경우 버튼의

    눌림을 표현하기 위한 해당 부품의 이동, 회전 등

    이 이루어진다. 또한, 3D 제품의 물리적 회전 변

    환 등도 포함된다.

    본 연구에서는 키보드/마우스 및 Leap Motion

    사용이 고려된 스크립트 기반의 3D 행동양태 정

    보를 생성한다. Leap Motion의 경우, 3D 행동양태

    는 입력장치(버튼, 슬라이드 등)의 조작과 제품의

    3D 변환(이동/회전/축소)으로 구분되며, Leap Motion

    에서 인식되는 손가락의 굽힘 정보를 토대로 판별

    이 이루어 진다.

    4. Leap Motion을 이용한 손동작

    상호작용

    제품-사용자 상호작용을 위한 기본적인 입력 장

    치로 마우스/키보드가 있다. 하지만 마우스/키보드

    의 경우 사용자가 컴퓨터를 조작하기 위한 기본

    장치로 가상환경에서 제품을 만지거나 조작하는

    것과 같은 몰입감을 제공하지 못한다. 최근 Natural

    User Interface(NUI) 또는 Natural User eXperience

    (NUX)가 대두되면서 사용자의 자연스러운 행동

    을 인식하고, 이를 활용하여 가상환경의 객체와 상

    호작용 하는 연구가 이루어지고 있다[16]. 본 논문

    에서는 손동작 인식에 특화된 Leap Motion을 활

    용하여 사용자의 양쪽 손 자세 및 위치를 파악하

    고, 3D 손 모델과 연동해 가상 제품과 상호작용하

    는 방안을 제안한다.

    4.1 Leap Motion과 3D 손 모델과의 연동

    가상환경에서 손의 움직임을 사실적으로 표현

    하기 위해서는 사용자 손과 일치하는 3D 손 모델

    이 필요하고, 3D 손 모델의 자연스러운 움직임이

    지원되어야 한다. 3D 손 모델의 자연스러운 움직

    임을 표현하기 위해 일반적으로 골격모델(skeleton

    model)을 활용한다. 이를 위해 계층구조를 갖는 골

    격 모델을 생성하고, 골격 모델 기반의 메쉬 변형

    (mesh deforming)을 통해 3D 손 모델의 자연스러

    운 움직임을 표현하였다[17]. Fig. 8은 본 연구에 사

    용된 3D 손 모델과 손의 골격 모델이다.

    Leap Motion 시스템은 적외선 카메라를 이용해

    사용자의 손바닥과 손가락 정보를 3D 스캔으로 측

    정하며, 측정된 정보를 기반으로 손가락 관절(joint)

    의 위치와 방향을 얻을 수 있고, 이 정보를 3D 손

    모델의 골격 정보에 대응시켜 사용자 손의 움직임

    을 가상공간에서 표현할 수 있다[17]. Fig. 9는 Leap

    Motion을 이용해 사용자의 손 위치 및 자세를 파

    악하여 가상환경의 3D 손 모델에 대응시킨 결과이다.

    Fig. 7 Product model of PMP

    Fig. 8 Skeletal structure of a 3D hand model

  • 164 정호균 · 박형준

    4.2 가상제품-사용자 간 상호작용 원리

    본 연구에서는 Leap Motion을 이용하여 양손의

    동작에 대응되는 3D 손 모델을 가상제품-사용자

    상호작용에 이용한다. 제안된 상호작용에서는 두

    가지 사용자 모드(I, II)를 지원한다. 모드 I에서는

    왼손에 가상제품을 탑재(mount)하여 제품을 왼손

    으로 잡은 것 같은 자세를 취하게 하고, 오른손을

    이용하여 버튼 선택을 하도록 한다. 양손의 사용

    을 지원함으로써 사용자에게 정확한 제품의 위치

    정보를 제공하고, 가상환경의 몰입감을 높이는 역

    할을 한다. 모드 II에서는 가상제품의 위치를 고정

    시켜 오른손만을 이용하여 버튼 선택 및 제품의

    3D 변환 등의 제품 조작을 쉽게 할 수 있게 지원

    한다. 각 모드로의 전환을 위해 왼손을 일정시간

    (3초) 동안 움켜쥐는 동작을 적용시켰다. 제품의

    3D 변환은 두 모드에서 함께 지원되게 하였다. Fig.

    10은 사용자가 양손을 이용하여 가상 제품과 상호

    작용하는 모습을 보여준다.

    제품 조작을 위한 오른손 동작의 경우, 손가락

    의 굽힘 정도를 판별하여 제품의 입력장치 조작과

    3D 변환으로 상호작용을 구분하였다. 만약 검지

    손가락만 펴진 상태인 경우, 입력장치 조작을 위

    한 동작으로 인식하고 손가락 끝과 입력장치와의

    접촉을 판별한다. 반대로 오른손의 손가락이 다 펴

    진 상태일 경우, 제품의 3D 변환을 위한 동작으로

    인식하고 해당 동작에 따른 제품의 자세 변환이

    수행되게 하였다.

    본 연구에서 제품의 3D 변환을 위해 Leap Motion

    에서 얻어진 사용자의 손 바닥 정보(위치, 방향)를

    활용하여 확대/축소, 이동 및 회전을 수행한다. 시

    점(view) 중심축 방향에 대한 사용자 손 바닥 중

    심의 위치 값을 이용하여 가상제품을 확대/축소

    (zoom in/out)하고, 시점 평면(view plane)에 대한

    손 바닥 중심의 위치 값을 이용하여 화면에서의

    가상제품의 위치를 이동(translation)한다. 또한 손

    바닥의 방향(orientation)을 활용하여 가상제품의

    회전(rotation)을 수행한다. Fig. 11은 모드 II에서

    왼손만을 이용하여 가상 제품의 3D 변환을 수행

    하는 모습을 나타낸다.

    오른손 검지 손가락을 이용한 제품-사용자 간 상

    호작용에서는 사용자가 오른손 3D 모델의 검지 손

    가락 끝 부분을 이용하여 제품의 특정 부품(입력

    장치)을 선택(접촉)함으로써 이벤트가 발생하고 이

    에 따라 특정 행동양태가 전개된다. 하지만 사용

    자는 가상 환경 공간에서 부품의 정확한 위치를

    파악하기 어렵고, 3D 손 모델과 제품 모델 간의

    간섭(interference)이 발생하는 현상을 방지하기 어

    렵다. 이를 해결하기 위해 본 연구에서는 3D 제품

    간의 충돌(collision) 검사를 이용하였다.

    3D 손 모델과 가상 제품 간의 물리적 충돌이 있

    는지 판별한다. 가상환경에서 두 모델 간의 충돌

    은 충돌탐지(collision detection), 충돌결정(collision

    determination), 충돌 후 반응(collision response)의

    절차로 정의된다. 본 연구에서는 Fig. 12과 같이

    3D 손 모델의 각 손가락 끝에 대한 충돌탐지를 실

    시하여 충돌이 일어났는지에 대한 대략적인 정보

    를 얻고, 충돌 결정 단계에서 가상 제품과 손가락

    끝과의 정확한 충돌 위치를 찾는다.

    충돌 위치가 가상제품의 입력장치(버튼, 슬라이

    드, 터치 패드 등)로 판정되면 해당 입력장치의 선

    Fig. 9 3D hand models corresponding to real hands on a

    Leap Motion device

    Fig. 10 User interaction of a virtual product using the

    gesture of both hands in Mode I

    Fig. 11 3D Transformation of a virtual product using

    the left hand gesture in Mode II

  • Unity 와 Leap Motion을 이용한 웹 기반 3D 가상품평 165

    택(누름)에 해당하는 이벤트가 촉발된다. 해당 이

    벤트는 UI 행동양태 시뮬레이션(즉, 상태 전이 및

    유한상태기계 작동)의 실행과 3D부품 행동양태

    (입력장치의 이동/회전)의 실행에 이용된다. 하지

    만 충돌 위치가 가상 제품의 입력장치로 판정되지

    않을 경우, 가상제품-사용자 간의 간섭 발생을 나

    타내는 음성신호를 사용자에게 보낸다. 음성신호

    는 모델 간의 간섭이 발생하고, 모델 간의 중심점

    의 거리가 가까워 짐에 따라 음성신호 주기를 짧

    게 하여 간섭 정도를 표현하였다. 이를 통해 사용

    자는 가상공간 안에서 제품 모델의 위치를 보다

    정확하게 파악 할 수 있고, 손 모델과 제품 모델이

    겹쳐지는 현상을 줄이고자 하였다.

    5. 시스템 구현 및 적용

    본 장에서는 제안된 방안에 대한 시스템 구현에

    대해 설명하고, 정확도 평가 및 사용자 평가 측면

    에서 기존 마우스 입력 방식과 Leap Motion 기반

    손동작 입력 방식을 비교한다.

    5.1 시스템 구현

    전술한 바와 같이 Unity를 이용하여 UI 행동양

    태 모델을 생성하고 유한상태기계를 구현하였고,

    제품 모델 생성을 위해 CAD 소프트웨어 Rhino3D

    V3.0과 역공학 소프트웨어 RapidForm 2004을 이

    용하였다[18,19]. 제품-사용자 간의 상호작용을 위해

    Leap Motion에서 제공하는 Unity/C# SDK,

    JavaScript SDK을 활용하여 사용자의 손 움직임을

    추적하였다. 그리고, C# 기반의 스크립트를 이용

    하여 제품의 3D 변환 관련 행동양태 처리 모듈을

    개발하였고, UI 기능 관련 행동양태 모델과 유한

    상태기계 간의 이벤트 처리를 위한 모듈을 개발하

    였다.

    Unity는 개발된 프로그램을 개인용 컴퓨터

    (Window, Mac), 스마트폰(Android, iOS), 콘솔

    (Xbox 360, PlayStation 3, Wii), 웹, 플레쉬 등의 다

    양한 플랫폼에 이식하는 것을 지원한다. 웹 환경

    은 유니티 웹 플레이어 플러그인을 이용하여 개발

    된 프로그램에 접근이 가능하며, 크로스 도메인 보

    안정책을 채택하고 있다[15]. 제작된 3D 가상 품평

    시스템은 웹에서 사용하는 것이 가능하지만 Leap

    Motion과 웹의 서버 간의 직접 접근은 차단된다.

    이러한 문제를 해결하기 위해 웹과 Leap Motion

    간의 소켓 통신을 활용하여 사용자의 손을 추적하

    였다. Fig. 13은 웹 환경에서 사용자가 서버에 접

    근하여 제품의 UI 기능과 외관을 체험하는 환경을

    보여준다.

    5.2 상호작용 정확도 비교

    제안된 Leap Motion을 이용한 상호작용 방식에

    대한 정확도를 파악하기 위해 기본 입력장치인 마

    우스/키보드를 이용한 상호작용 방식과의 성능 비

    교 실험을 수행하였다. 비교 실험을 위한 마우스/

    키보드 방식에서는 가상제품의 위치가 고정되고

    (상호작용 모드 II), 마우스/키보드 조합을 통한 입

    력 정보를 바탕으로 버튼 선택과 제품 3D 변환이

    수행한다. 제품의 버튼 선택은 사용자가 마우스를

    화면 상에 출력된 제품의 특정부품 위에 놓고 마

    우스 왼쪽 버튼을 클릭함으로써 특정 버튼이 선택

    되었다는 이벤트가 발생하고, 이에 따른 UI 행동

    양태가 전개된다. 3D 변환의 경우, 키보드의 버튼

    (S, T, R)을 누름과 동시에 마우스 오른쪽 버튼을

    드래그함으로써 제품의 확대/축소(S), 이동(T), 회

    전(R)을 수행하게 하였다.

    Fig. 12 User interaction of a virtual product using the

    right hand gesture with a Leap Motion device

    Fig. 13 Environment for 3D virtual experience

  • 166 정호균 · 박형준

    정확도 평가는 Fig. 14와 같이 가상현실 공간

    에 5 × 5 격자의 숫자 열(1~25)을 제시하고, 피

    실험자로 하여금 각각의 상호작용 방법을 사용하

    여 임의로 생성된 4개의 숫자를 순서에 맞춰 클

    릭하는 작업으로 수행되며, 버튼 크기를 변화시

    켜 각 상호작용에 대한 정확도를 평가 하였다. 본

    연구에서는 대학생 10명을 대상으로 버튼 크기를

    20, 16, 12, 8, 6 mm로 설정하였고, 피실험자가

    각 작업을 완료하는데 소요되는 완료시간을 측정

    하였다.

    Fig. 15는 정확도 평가를 통해 얻어진 크기별 버

    튼 선택을 위한 평균 소요시간을 나타낸다. 마우

    스/키보드 방식의 경우, 커서(cursor) 크기가 작고,

    사용이 익숙하여 버튼 크기에 상관없이 일정한 작

    업 시간이 소요되는 것을 확인하였다. 제안된 Leap

    Motion을 이용한 방안의 경우, 마우스/키보드 방

    식에 비해 평균 소요시간이 2~3초 더 걸리는 것을

    확인하였다. 그러나, 실제 제품의 버튼 크기가8mm

    이상인 경우가 대부분이라는 점을 고려했을 때, 버

    튼 크기 8 mm 이상의 경우 Leap Motion 방식이

    마우스/키보드 방식의 70% 성능을 유지함을 알 수

    있다.

    5.3 사용자 평가

    본 연구에서는 PMP 제품의 가상품평에 대하여

    대학생 10명으로 구성된 피실험자들을 대상으로

    간단한 사용자 평가를 수행하였다. PMP 제품의

    버튼들의 크기는 5~15 mm이며, Table 1는 사용자

    평가를 수행하기 위해 피실험자에게 주어지는 작

    업 순서를 나타낸다.

    작업 수행 전, 사용자는 제품의 3D 변환을 통해

    제품의 전면이 화면에 적절히 보이도록 하며, 피

    실험자는 두 가지 상호작용 방식(Leap Motion방

    식과 마우스/키보드 방식)을 이용하여 가상 제품

    을 조작하여 초기화면인 주 메뉴로 이동하고, 사

    진보기 메뉴를 실행하여 사진 리스트에서 5번째

    사진을 보는 작업을 수행한다. 이 작업 과정에 소

    요되는 시간을 측정하였고, 피실험자는 모든 작업

    이 완료된 후, Table 2에 열거된 간단한 설문에 5

    점 척도로 답을 하였다. Fig. 16, 17은 각 상호작용

    Fig. 14 Task of button selection (20 mm)

    Fig. 15 Time required for each button selection task

    Table 1 Task used in user experience

    Step 1 Move to main menu

    Step 2 Select submenu for photo view

    Step 3 Move to the 5th photo file

    Step 4 View the photo

    Step 5 Return to main menu

    Table 2 Questionnaire contents

    Q1 Is it comfortable to use during user interaction?

    Q2 Is it easy to click buttons during user interaction?

    Q3 Do you get a feeling of grabbing a product?

    Q4 Is it interesting to use the interaction method?

    Q5 Does it provide immersion during user interaction?

  • Unity 와 Leap Motion을 이용한 웹 기반 3D 가상품평 167

    방안에 대한 평균 소요 시간과 설문 평가 결과를

    나타낸다.

    사용자 평가 결과, 평균 작업 소요시간에서 마

    우스/키보드 방식이 빠르게 나왔지만, Leap Motion

    방식과의 차이는 크지 않았다. 사용자 평가에 사

    용된 PMP 제품의 경우, 버튼 크기가 8 mm 이상

    이고, 버튼 간의 간격이 커서 작업 오류 가능성이

    낮기 때문에 작업 소요시간의 차이가 크지 않게

    나온 것으로 사료된다.

    정성적 설문 평가에 대한 사용 편의성(Q1)과 버

    튼 선택 용이성(Q2) 측면에서는 마우스/키보드 방

    식이 Leap Motion 방식보다 우월함을 알 수 있

    다. 이것은 앞 절에서 언급된 상호작용 정확도 비

    교 결과와 상응한다. 그러나, 제품을 잡는 느낌

    (Q3), 상호작용의 흥미성(Q4), 그리고 상호작용의

    몰입감(Q5) 측면에서는 Leap Motion 방식이 마우

    스/키보드 방식보다 우월함을 알 수 있다. 설문조

    사 결과에서 마우스/키보드 방식이 사용자에게 평

    소 익숙한 방식이어서 “조작이 쉽다”는 의견이 대

    체적이었지만, Leap Motion 방식이 사용자에게 흥

    미를 유발시키고, 가상환경에서 몰입감을 높여 제

    품을 체험하는데 긍정적인 도움이 되었다’는 진술

    을 얻을 수 있었다. 추가적으로는 ‘가상환경을 체

    험하는데 촉감이나 깊이 정보를 제공하면 좋겠다’

    는 의견도 얻을 수 있었다.

    6. 결 론

    본 논문에서는 Unity와 Leap Motion을 이용한

    디지털 제품의 웹 기반 3D 가상 품평 방안을 제시

    하였다. 3D 가상 품평 시스템 개발을 위해 Unity

    를 이용함으로써 UI 설계와 가상품평 개발을 위한

    환경을 Unity로 단일화하여 개발과정에서 자주 발

    생하는 오류를 제거할 수 있으며, 직관적인 UI 행

    동양태 설계/생성 방식을 이용하여 프로그램에 전

    문지식이 없는 UI 설계자도 제작이 가능함을 확인

    하였다.

    또한, Leap Motion을 활용하여 사용자의 손 동

    작을 인식하고, 이를 가상환경에서의 제품-사용자

    간의 자연스러운 상호작용을 제공하는 방안을 제

    시하였으며, 이를 통해 상호작용의 다양성과 체험

    환경의 몰입감을 향상시켰다. 아울러, 개발된 시

    스템이 웹 환경에서 구동되게 함으로써 제품 정보

    의 보완 및 관리를 효율화시키고, 원격 사용자 접

    근성을 향상시켰다.

    추후 연구에서는 본 논문에서 제시된 방안을 이

    용하여 다양한 제품들에 대한 가상품평을 구현하

    고자 한다. 이를 위해 슬라이드, 드래그 등이 포함

    된 상호작용 방안을 구현하고, 해당 제품들에 대

    한 사용성 평가를 실시하고자 한다. 그리고, 제시

    된 Leap Motion 을 이용한 상호작용 방안에 대한

    정확성 비교·평가를 위해 햅틱, 데이터 글러브,

    Kinect 등을 이용한 상호작용 방안과의 비교·평가

    를 고려하고 있다. 3D 가상 품평에 대한 현실감을

    보다 향상시키기 위해 NyARToolkit, Metaio[20],

    Vuforia[21] 등을 활용하여 증강현실 환경에서 구동

    되는 3D 가상 품평 방안을 연구·개발하고자 한

    다. 또한, Leap Motion 및 3D 프린팅으로 제작된

    목업(Mockup)을 활용하여 상호작용 과정에서 촉

    감 및 부피감을 제공할 수 있는 감각형 증강현실

    (Tangible Augmented Reality) 기반 가상 품평을 구

    현하고자 한다. 아울러, 증강현실로 구현된 시스

    템을 인터넷 기능이 탑재된 스마트폰에 이식하여

    사용자의 접근성을 보다 향상시키는 방안을 모색

    하고자 한다.

    Fig. 16 Average task performance

    Fig. 17 Questionnaire results

  • 168 정호균 · 박형준

    감사의 글

    이 논문은 2010년 정부(교육인적자원부)의 재원

    으로 한국연구재단의 지원을 받아 수행된 기초

    연구사업(NRF-2010-0021953)의 실적임. 또한,

    2015년 정부(교육부)의 재원으로 한국연구재단의

    지원을 받아 수행된 기초연구사업(NRF-2015-

    R1D1A1A09058997)의 실적임.

    References

    1. Bullinger, H.J., Breining, R. and Baucer, W.,

    1999, Virtual Prototyping – State of the Art in

    Product Design, Proceedings of the 26th Inter-

    national Conference on Computers & Industrial

    Engineering, pp.103-107.

    2. Zorriassantine, F., Wykes, C., Parkin, R. and

    Gindy, N., 2003, A Survey of Virtual Prototyping

    Techniques for Mechanical Product Develop-

    ment, Journal of Engineering Manufacture, 217,

    pp.513-530.

    3. Kanai, S., Higuchi, T. and Kikuta, T., 2009, 3D

    Digital Prototyping and Usability Enhancement

    of Information Appliances Based on UsiXML,

    International Journal on Interactive Design and

    Manufacturing, 3(3), pp.201-222.

    4. Fabio, B., Agostino, A., Francesco, C. and Mau-

    rizio, M., 2010, Functional Behavior Simulation

    of Industrial Products in Virtual Reality, Pro-

    ceedings of TMCE 2010 Symposium, 16(1), pp.1-

    10.

    5. Park, H., Bae, C. and Lee, K., 2007, Virtual

    Prototyping of Consumer Electronic Products by

    Embedding HMI Functional Simulation into VR

    Techniques, Transactions of the Society of CAD/

    CAM Engineers, 12(2), pp.87-94.

    6. Park, H. and Moon, H., 2011, AR-based Tangible

    Interaction Using a Finger Fixture for Digital

    Handheld Products, Transactions of the Society

    of CAD/CAM Engineers, 16(1), pp.1-10.

    7. Park, H. and Moon, H., 2013, Design Evaluation

    of Information Appliances Using Augmented

    Reality-Based Tangible Interaction, Computers

    in Industry, 64(7), pp.854-868.

    8. Kinect, https://dev.windows.com/en-us/kinect/

    9. Leap Motion, http://www.leapmotion.com/

    10. Raheja, J.L., Chaudhary, A. and Singal, K., 2011,

    Tracking of Fingertips and Centers of Palm Using

    Kinect. In Computational Intelligence, Modelling

    and Simulation (CIMSiM), 2011 Third Interna-

    tional Conference on. IEEE, pp.248-252.

    11. Oikonomidis, I., Kyriazis, N. and Argyros, A.,

    2011, Efficient Model-based 3D Tracking of

    Hand Articulations using Kinect, In Proceedings.

    Brit. Mach. Vision Conference (BMVC), 1(2),

    pp.101.1-101.11.

    12. Leigh, E.P., Jake, A. and Lewis, C., 2013, The

    Leap Motion Controller: A View on Sign Lan-

    guage, Proceedings of the 25th Australian Com-

    puter-Human Interaction Conference: Augmentation,

    Application, Innovation, Collaboration, pp.175-

    178.

    13. Marin, G., Dominio, F. and Zanuttigh, P., 2014,

    Hand Gesture Recognition with Leap Motion

    and Kinect Devices, Proceedings of IEEE Inter-

    national Conference on Image Processing(ICIP),

    pp.1565-1569.

    14. Regenbrecht, H., Collins, J. and Hoermann, S.,

    2013, A Leap-Supported, Hybrid AR Interface

    Approach, Proceedings of the 25th Australian

    Computer-Human Interaction Conference: Aug-

    mentation, Application, Innovation, Collabora-

    tion, pp.25-29.

    15. Unity, http://www.unity3d.com/

    16. Lee, G., Shin, D. and Shin, D., 2014, NUI/NUX

    Framework Based on Intuitive Hand Motion,

    Journal of Internet Computing and Services (JICS),

    15(3), pp.11-19.

    17. Zhanguo, M., Bo, L. and Hongbin, Z., 2007,

    Skeleton Based 3D Mesh Deformation, Proceed-

    ing of the 6th International Conference on Infor-

    mation, Communications and Signal Processing

    (ICICS), NTU, Singapore.2007:1154-1158.

    18. Rhino3D, http://www.rhino3d.com/

    19. RapidForm, http://www.rapidform.com/

    20. Maetaio, https://www.metaio.com/

    21. Vuforia, https://www.qualcomm.com/products/

    vuforia/

  • Unity 와 Leap Motion을 이용한 웹 기반 3D 가상품평 169

    정 호 균

    2011년 조선대학교 산업공학과 학사

    2013년 조선대학교 산업공학과 석사

    2013년~현재 조선대학교 산업공학

    과 대학원 박사과정

    관심분야: Tangible Augmented Reality, AR Tracking, Virtual

    Prototyping, CAD/CAM Appli-

    cations

    박 형 준

    1991년 포항공대 산업공학과 학사

    1993년 포항공대 산업공학과 석사

    1996년 포항공대 산업공학과 박사

    1996년~2001년 삼성전자 중앙연구

    소 책임연구원

    2008년~2010년 UCLA 전산학과

    방문교수

    2014년~현재 조선대학교 대학원

    문화학과 겸임교수

    2001년~현재 조선대학교 산업공학

    과 교수

    관심분야: Geometric Modeling and Processing, Virtual Prototyping of

    Engineered Products, 3D Shape

    Reconstruction and Understand-

    ing, Biomedical Engineering

    Applications, Digital Cultural

    Content Creation, CAD/CAM/

    CG Applications