KR20110090789A - 통신 제어 장치, 통신 제어 방법 및 프로그램 - Google Patents

통신 제어 장치, 통신 제어 방법 및 프로그램 Download PDF

Info

Publication number
KR20110090789A
KR20110090789A KR1020110008300A KR20110008300A KR20110090789A KR 20110090789 A KR20110090789 A KR 20110090789A KR 1020110008300 A KR1020110008300 A KR 1020110008300A KR 20110008300 A KR20110008300 A KR 20110008300A KR 20110090789 A KR20110090789 A KR 20110090789A
Authority
KR
South Korea
Prior art keywords
communication device
data
communication
environment map
unit
Prior art date
Application number
KR1020110008300A
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 소니 주식회사
Publication of KR20110090789A publication Critical patent/KR20110090789A/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/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/02Networking aspects
    • G09G2370/025LAN communication management
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/04Exchange of auxiliary data, i.e. other than image data, between monitor and graphics controller

Abstract

하나 이상의 통신 장치의 외관의 특징을 나타내는 특징 데이터를 기억하는 데이터 기억부와; 실제 공간을 촬영하여 취득된 입력 화상 및 상기 데이터 기억부에 기억되어 있는 상기 특징 데이터에 기초하여, 상기 실제 공간 내에 존재하는 통신 장치의 위치를 나타내는 환경 맵을 구축하는 환경 맵 구축부와; 제1 통신 장치에 제공되는 임의의 데이터와 방향을 지정하는, 상기 제1 통신 장치로의 유저 입력을 검출하는 검출부와; 상기 유저 입력에 의해 지정된 상기 방향에 기초하여, 지정된 상기 데이터의 송신처가 되는 제2 통신 장치를 상기 환경 맵으로부터 선택하는 선택부와; 상기 제1 통신 장치에 제공되는 상기 데이터를 상기 제1 통신 장치로부터 상기 제2 통신 장치로 송신하는 통신 제어부를 포함하는 통신 제어 장치가 제공된다.

Description

통신 제어 장치, 통신 제어 방법 및 프로그램{COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL METHOD AND PROGRAM}
본 발명은 통신 제어 장치, 통신 제어 방법 및 프로그램에 관한 것이다.
최근, 실제 공간을 촬영하여 취득되는 화상을 가공하여 이 가공된 화상을 유저에게 제시하는 확장 현실(AR:augmented reality)이라고 불리는 기술이 주목받고 있다. AR 기술에서는, 컴퓨터가 실제 공간의 상황을 인식하는 것이 중요하다. 실제 공간의 상황을 인식하기 위한 기술로서, 예를 들어, 일본 특허 공개 공보 제2008-304268호에는, 카메라의 위치 및 자세와 카메라의 화상에 존재하는 특징점의 위치를 동시에 추정 가능한 SLAM(simultaneous localization and mapping)이라고 불리는 기술을 응용하여, 실제 공간 내에 존재하는 물리적 물체의 3차원 위치를 나타내는 환경 맵을 동적으로 생성하는 방법이 개시되어 있다. 외눈 카메라를 사용한 SLAM 기술의 기본적인 원리는 "Real-Time Simultaneous Localization and Mapping with a Single Camera" (Andrew J. Davison, Proceedings of the 9th IEEE International Conference on Computer Vision Volume 2, 2003, pp.1403-1410)에 개시되어 있다.
그런데, 정보 통신 기술이 일반 유저의 사이에 넓게 보급된 현재에 있어서, 많은 유저들이 서로 통신 가능한 복수의 통신 장치를 갖는다. 예를 들어, PC(Personal Computer)로부터 프린터로의 인쇄 데이터 송신, 디지털 카메라로부터 PC로의 화상 데이터 송신, 데스크탑 PC와 휴대폰 사이의 데이터 교환, 무선 장치 간의 접속 데이터 교환 등은 모두 서로 통신 가능한 통신 장치 간의 통신이다. 이러한 통신 장치 간의 통신 시에 유저의 편리성을 향상시키기 위한 기술이 예를 들어 일본 특허 공개 공보 제2001-142825호에 개시되어 있다.
일본 특허 공개 공보 제2008-304268호 일본 특허 공개 공보 제2001-142825호
"Real-Time Simultaneous Localization and Mapping with a Single Camera" (Andrew J. Davison, Proceedings of the 9th IEEE International Conference on Computer Vision Volume 2, 2003, pp.1403-1410)
일반적으로, 상술된 통신 장치 간에 데이터를 교환할 때, 유저는 송신원(transmission source) 또는 송신처(transmission destination) 중 임의의 하나의 화면 상에 원하는 송신 데이터 및 통신 상대방의 장치를 지정하고, 데이터 송신 명령을 발행한다. 데이터 송신 명령을 발행하는 방법으로서, 아이콘 드래그(dragging), 메뉴 선택, 텍스트 기반 명령 입력 등과 같은 다양한 유형이 있다. 그러나, 어느 방식에서도, 유저는 통신 상대방 장치를 나타내는 어드레스, 식별명, 또는 아이콘을 알아야 한다. 이는 유저의 동작을 복잡하게 하여, 유저가 직감적인 조작을 행하는 것을 방해한다. 일본 특허 공개 공보 제2001-142825호에 개시된 "픽 앤 드롭(Pick and Drop)"은 직감적인 유저 인터페이스에 의한 장치 간의 데이터 교환을 지향한 방법이다. 그러나, "픽 앤 드롭" 방법을 위해서는 송신원 및 송신처 양쪽의 장치에 특별한 인터페이스가 구비되어야 하므로, 유저가 충분한 편리성을 누릴 수 없다.
이에 대해, 상술한 환경 맵은 실제 공간 내에 위치된 통신 장치의 위치를 컴퓨터가 정확하게 인식하는 것을 가능하게 한다. 그로 인해, 환경 맵을 응용한 유저 인터페이스에 의해, 보다 직감적으로 장치 간에 데이터 송신 지시를 제공하는 것이 가능하게 되는 것으로 기대된다.
상기를 고려할 때, 환경 맵을 응용함으로써 장치 간에 데이터 송신을 위한 직감적인 유저 인터페이스를 제공하는, 신규의 개량된 통신 장치, 통신 제어 방법 및 프로그램을 제공하는 것이 바람직하다.
본 발명의 실시예에 따르면, 하나 이상의 통신 장치의 외관의 특징을 나타내는 특징 데이터를 기억하는 데이터 기억부와; 실제 공간을 촬영하여 취득된 입력 화상 및 상기 데이터 기억부에 기억되어 있는 상기 특징 데이터에 기초하여, 상기 실제 공간 내에 존재하는 통신 장치의 위치를 나타내는 환경 맵을 구축하는 환경 맵 구축부와; 제1 통신 장치에 제공되는 임의의 데이터와 방향을 지정하는, 상기 제1 통신 장치로의 유저 입력을 검출하는 검출부와; 상기 유저 입력에 의해 지정된 상기 방향에 기초하여, 지정된 상기 데이터의 송신처가 되는 제2 통신 장치를 상기 환경 맵으로부터 선택하는 선택부와; 상기 제1 통신 장치에 제공되는 상기 데이터를 상기 제1 통신 장치로부터 상기 제2 통신 장치로 송신하는 통신 제어부를 포함하는 통신 제어 장치가 제공된다.
이러한 구성에 따르면, 실제 공간을 촬영하여 취득된 입력 화상에 기초하여, 실제 공간 내에 위치된 통신 장치의 위치를 나타내는 환경 맵이 동적으로 구축된다. 데이터 송신원의 제1 통신 장치로의 유저 입력이 검출되면, 제1 통신 장치로부터, 유저 입력에 의해 지정된 방향에 기초하여 환경 맵으로부터 선택되는 제2 통신 장치로, 지정된 데이터가 송신된다.
상기 선택부는 상기 환경 맵에서 상기 제1 통신 장치에 대해 상기 유저 입력에 의해 지정된 상기 방향으로 위치하는 통신 장치를 상기 제2 통신 장치로서 선택할 수 있다.
상기 선택부는 상기 환경 맵에서의 상기 제1 통신 장치의 위치 및 자세와 상기 유저 입력에 의해 지정된 상기 방향에 기초하여, 상기 제1 통신 장치를 기점으로 하는 하나의 직선을 특정하고, 상기 직선의 적어도 근방에 위치하는 통신 장치를 상기 제2 통신 장치로서 선택할 수 있다.
상기 환경 맵에서 상기 제1 통신 장치에 대해 상기 유저 입력에 의해 지정된 상기 방향으로 복수의 통신 장치가 위치하는 경우에는, 상기 선택부는 상기 복수의 통신 장치 중에서 상기 제1 통신 장치에 가장 가까이 위치하는 통신 장치를 상기 제2 통신 장치로서 선택할 수 있다.
통신 제어 장치는 상기 제1 통신 장치로부터 상기 제2 통신 장치로 상기 데이터가 송신될 때, 데이터 송신을 나타내는 애니메이션을 표시 장치가 표시하게 하는 표시 제어부를 더 포함할 수 있다.
상기 유저 입력은 상기 제1 통신 장치에 제공되는 화면 상에 표시된 아이콘을 드래그하는 것이고, 어떤 아이콘이 유저에 의해 드래그되는지에 따라, 상기 제1 통신 장치로부터 송신될 상기 데이터가 특정될 수 있다.
본 발명의 다른 실시예에 따르면, 하나 이상의 통신 장치의 외관의 특징을 나타내는 특징 데이터를 기억하는 기억 매체를 포함하는 통신 제어 장치에 의한 통신 제어 방법으로서, 실제 공간을 촬영하여 취득된 입력 화상 및 상기 특징 데이터에 기초하여, 상기 실제 공간 내에 존재하는 통신 장치의 위치를 나타내는 환경 맵을 구축하는 단계와; 제1 통신 장치에 제공되는 임의의 데이터와 방향을 지정하는, 상기 제1 통신 장치로의 유저 입력을 검출하는 단계와; 상기 유저 입력에 의해 지정된 상기 방향에 기초하여, 지정된 상기 데이터의 송신처가 되는 제2 통신 장치를 상기 환경 맵으로부터 선택하는 단계와; 상기 제1 통신 장치에 제공되는 상기 데이터를 상기 제1 통신 장치로부터 상기 제2 통신 장치로 송신하는 단계를 포함하는 통신 제어 방법이 제공된다.
본 발명의 다른 실시예에 따르면, 하나 이상의 통신 장치의 외관의 특징을 나타내는 특징 데이터를 기억하는 기억 매체를 포함하는 통신 제어 장치를 제어하는 컴퓨터를, 실제 공간을 촬영하여 취득된 입력 화상 및 데이터 기억부에 기억되는 상기 특징 데이터에 기초하여, 상기 실제 공간 내에 존재하는 통신 장치의 위치를 나타내는 환경 맵을 구축하는 환경 맵 구축부와; 제1 통신 장치에 제공되는 임의의 데이터와 방향을 지정하는, 상기 제1 통신 장치로의 유저 입력을 검출하는 검출부와; 상기 유저 입력에 의해 지정된 상기 방향에 기초하여, 지정된 상기 데이터의 송신처가 되는 제2 통신 장치를 상기 환경 맵으로부터 선택하는 선택부와; 상기 제1 통신 장치에 제공되는 상기 데이터를 상기 제1 통신 장치로부터 상기 제2 통신 장치로 송신하는 통신 제어부로서 기능하게 하는 프로그램이 제공된다.
본 발명의 다른 실시예에 따르면, 하나 이상의 통신 장치의 외관의 특징을 나타내는 특징 데이터를 기억하는 데이터 기억부와; 실제 공간을 촬영하여 취득된 입력 화상 및 상기 데이터 기억부에 기억되어 있는 상기 특징 데이터에 기초하여, 상기 실제 공간 내에 존재하는 통신 장치의 위치를 나타내는 환경 맵을 구축하는 환경 맵 구축부와; 제1 통신 장치에 제공되는 임의의 데이터를 지정하는, 상기 제1 통신 장치로의 유저 입력을 검출하는 검출부와; 상기 환경 맵에서의 상기 제1 통신 장치의 위치에 기초하여, 지정된 상기 데이터의 송신처가 되는 제2 통신 장치를 상기 환경 맵으로부터 선택하는 선택부와; 상기 제1 통신 장치에 제공되는 상기 데이터를 상기 제1 통신 장치로부터 상기 제2 통신 장치로 송신하는 통신 제어부를 포함하는 통신 제어 장치가 제공된다.
상기 선택부는 상기 환경 맵에서 상기 제1 통신 장치 아래에 위치하는 통신 장치를 상기 제2 통신 장치로서 선택할 수 있다.
본 발명의 다른 실시예에 따르면, 하나 이상의 통신 장치의 외관의 특징을 나타내는 특징 데이터를 기억하는 기억 매체를 포함하는 통신 제어 장치에 의한 통신 제어 방법으로서, 실제 공간을 촬영하여 취득된 입력 화상 및 상기 특징 데이터에 기초하여, 상기 실제 공간 내에 존재하는 통신 장치의 위치를 나타내는 환경 맵을 구축하는 단계와; 제1 통신 장치에 제공되는 임의의 데이터를 지정하는, 상기 제1 통신 장치로의 유저 입력을 검출하는 단계와; 상기 환경 맵에서의 상기 제1 통신 장치의 위치에 기초하여, 지정된 상기 데이터의 송신처가 되는 제2 통신 장치를 상기 환경 맵으로부터 선택하는 단계와; 상기 제1 통신 장치에 제공되는 상기 데이터를 상기 제1 통신 장치로부터 상기 제2 통신 장치로 송신하는 단계를 포함하는 통신 제어 방법이 제공된다.
본 발명의 다른 실시예에 따르면, 하나 이상의 통신 장치의 외관의 특징을 나타내는 특징 데이터를 기억하는 기억 매체를 포함하는 통신 제어 장치를 제어하는 컴퓨터를, 실제 공간을 촬영하여 취득된 입력 화상 및 데이터 기억부에 기억되는 상기 특징 데이터에 기초하여, 상기 실제 공간 내에 존재하는 통신 장치의 위치를 나타내는 환경 맵을 구축하는 환경 맵 구축부와; 제1 통신 장치에 제공되는 임의의 데이터를 지정하는, 상기 제1 통신 장치로의 유저 입력을 검출하는 검출부와; 상기 환경 맵에서의 상기 제1 통신 장치의 위치에 기초하여, 지정된 상기 데이터의 송신처가 되는 제2 통신 장치를 상기 환경 맵으로부터 선택하는 선택부와; 상기 제1 통신 장치에 제공되는 상기 데이터를 상기 제1 통신 장치로부터 상기 제2 통신 장치로 송신하는 통신 제어부로서 기능하게 하는 프로그램이 제공된다.
상술된 바와 같은 본 발명의 실시예에 따른 통신 제어 장치, 통신 제어 방법 및 프로그램에 따르면, 장치 간의 데이터 송신을 위한 직감적인 유저 인터페이스를 제공할 수 있다.
도 1은 실시예에 따른 시스템의 개요를 설명하는 개략도이다.
도 2는 실시예에 따른 통신 제어 장치에서 취득된 입력 화상의 일례를 도시하는 설명도이다.
도 3은 실시예에 따른 통신 장치의 구성의 일례를 도시하는 블록도이다.
도 4는 실시예에 따른 통신 제어 장치의 구성의 일례를 도시하는 블록도이다.
도 5는 실시예에 따른 자기 위치 검출 처리의 흐름의 일례를 나타내는 흐름도이다.
도 6은 대상(object) 상에 설정된 특징점을 설명하는 설명도이다.
도 7은 특징점의 추가를 설명하는 설명도이다.
도 8은 예측 모델의 일례를 설명하는 설명도이다.
도 9는 특징 데이터의 구성의 일례를 설명하는 설명도이다.
도 10은 실시예에 따른 대상 인식 처리의 흐름의 일례를 나타내는 흐름도이다.
도 11은 실시예에 따른 통신 장치로의 유저 입력을 설명하는 설명도이다.
도 12는 실시예에 따른 송신처의 선택을 설명하는 제1 설명도이다.
도 13은 실시예에 따른 송신처의 선택을 설명하는 제2 설명도이다.
도 14는 실시예에 따른 송신처 선택 처리의 일예를 나타내는 흐름도이다.
도 15는 실시예에 따른 데이터 송신에 관한 애니메이션의 일례를 도시하는 설명도이다.
도 16은 실시예에 따른 통신 제어 처리의 흐름의 일례를 나타내는 흐름도이다.
도 17은 변형예에 따른 송신처의 선택을 설명하는 설명도이다.
도 18은 변형예에 따른 송신처 선택 처리의 흐름의 일례를 나타내는 흐름도이다.
이하에서는, 첨부 도면을 참조하여, 본 발명의 적합한 실시예를 상세하게 설명한다. 본 명세서 및 첨부 도면에서는, 실질적으로 동일한 기능 구성을 갖는 구성 요소에 대해서는 동일한 부호를 부여하고, 이들 구성 요소에 대한 중복 설명은 생략한다는 것을 알아야 한다.
이하의 순서에 따라 "발명을 실시하기 위한 구체적인 내용"을 설명한다.
1. 시스템의 개요
2. 실시예에 따른 통신 장치의 구성
3. 실시예에 따른 통신 제어 장치의 구성
3-1. 촬상부
3-2. 환경 맵 생성부
3-3. 통신 처리부
3-4. 표시 제어부
3-5. 통신 제어 처리의 흐름
4. 변형예
5. 정리
<1. 시스템의 개요>
우선, 도 1 및 도 2를 참조하여, 본 발명의 실시예에 따른 시스템의 개요에 대해 설명한다. 도 1은 본 발명의 실시예에 따른 시스템의 개요를 설명하는 개략도이다. 도 2는 도 1에 도시된 실시예에 따른 통신 제어 장치(100)에서 취득될 수 있는 입력 화상의 일례를 도시하는 설명도이다.
도 1을 참조하면, 통신 제어 장치(100)가 사용될 수 있는 일례로서의 환경(1)이 도시되고 있다. 환경(1)의 내부에는 테이블(10) 및 통신 장치(20a, 20b, 20c 및 20d)가 존재하고 있다. 테이블(10)은 환경(1)의 저면인 플로어에 설치되어 있다. 통신 장치(20a)는, 예를 들어, 스마트폰 등의 휴대폰에 상응하고, 유저에 의해 파지되어 있다. 통신 장치(20b)는, 예를 들어, 노트북 PC에 상응하고, 테이블(10) 상에 위치되어 있다. 통신 장치(20c)는, 예를 들어, 디지털 카메라에 상응하고, 테이블(10) 상에 위치되어 있다. 통신 장치(20d)는, 예를 들어, 프린터에 상응하고, 플로어에 설치되어 있다. 통신 장치(20a, 20b, 20c 및 20d)는 유선 또는 무선 통신 접속을 통해 서로 통신할 수 있다.
통신 제어 장치(100)는 유저 Ua에 장착되는 카메라 및 HMD(head mounted display)(104)를 갖는 통신 장치이다. 통신 제어 장치(100)의 본체는 반드시 유저 Ua에 장착되지 않을 수도 있다. 통신 제어 장치(100)도 유선 또는 무선 통신 접속을 통해 통신 장치(20a, 20b, 20c 및 20d)와 통신할 수 있다. 통신 제어 장치(100)는 도 1에 나타낸 일례로서의 환경(1)을 촬영하고, 일련의 입력 화상을 취득한다. 통신 제어 장치(100)는 취득된 입력 화상에 기초하여 후술되는 환경 맵을 구축한다. 통신 제어 장치(100)는 통신 장치(20a, 20b, 20c 및 20d) 중 어느 하나로의 데이터 송신에 관한 유저 입력을 검출한다. 통신 제어 장치(100)는 검출된 유저 입력에 기초하여 하나의 장치로부터 다른 장치로의 데이터 송신을 제어한다.
도 2는 통신 제어 장치(100)에 의해 취득되는 일례로서의 입력 화상(106)을 도시하는 설명도이다. 도 2를 참조하면, 입력 화상(106)에는 도 1에 나타낸 통신 장치(20a 및 20d)가 도시된다. 통신 장치(20a)의 화면 상에는, 통신 장치(20a)에 제공된 데이터에 대응되는 2개의 아이콘이 표시되어 있다. 본 실시예에서는, 예를 들어, 유저 Ua가 아이콘에 대해 후술하는 유저 입력을 행함으로써, 통신 제어 장치(100)의 제어 하에, 통신 장치(20a)로부터 다른 통신 장치로 데이터가 송신된다.
본 명세서에서는, 통신 장치(20a, 20b, 20c 및 20d)를 서로 구별할 특별한 필요가 없는 경우에는 부호의 문자를 생략함으로써 이들 통신 장치를 통신 장치(20)로 총칭한다. 다른 요소들에 대해서도 마찬가지로 한다.
<2 실시예에 따른 통신 장치의 구성>
도 3은 본 발명의 실시예에 따른 통신 장치(20)의 구성의 일례를 도시하는 블록도이다. 도 3을 참조하면, 통신 장치(20)는 기억부(40), 표시부(42), 유저 인터페이스(I/F)(44), 통신 I/F(46) 및 제어부(48)를 포함한다.
기억부(40)는 하드 디스크 또는 반도체 메모리 등의 기억 매체를 사용하여 데이터를 기억한다. 기억부(40)에 의해 기억되는 데이터는 어플리케이션 데이터, 텍스트 데이터, 화상 데이터, 음성 데이터 또는 프로그램 데이터 등의 임의의 종류의 데이터일 수 있다.
표시부(42)는 제어부(48)에 의한 제어에 따라 통신 장치(20)에 설치되는 화면 상에 정보를 표시한다. 예를 들어, 도 2에 예시한 바와 같이, 표시부(42)는 기억부(40)에 기억되어 있는 데이터에 각각 대응하는 아이콘을 화면 상에 표시한다. 표시부(42)는 기억부(40)에 기억되어 있는 개별 데이터를 기억하는 데이터 파일의 파일명의 리스트를 표시할 수 있다. 아이콘 또는 파일명은 유저가 통신 장치(20)로부터 다른 장치로 데이터를 송신하자고 할 때 송신해야 할 데이터를 특정하기 위해 사용된다.
유저 I/F(44)는 유저가 정보를 입력하거나 또는 지시를 내리는 것을 허용하는 입력 수단을 제공한다. 본 실시예에서, 유저 I/F(44)는 통신 장치(20)의 화면 상의 임의의 위치를 유저가 지정할 수 있게 하는 포인팅 디바이스를 포함한다. 포인팅 디바이스는, 예를 들어, 표시부(42)와 일체로 구성되는 터치 패널일 수 있거나, 또는 그 대신에 마우스, 터치 패드 등일 수 있다. 또한, 유저 I/F(44)는 키보드, 버튼, 휠 등을 추가로 포함할 수 있다.
통신 I/F(46)는 통신 장치(20)에 의한 다른 장치(통신 제어 장치(100) 및 다른 통신 장치(20)를 포함)와의 통신을 중개한다. 통신 I/F(46)는, 예를 들어, 무선 LAN(local area network), 블루투스(등록 상표) 또는 WiMax(등록 상표) 등의 무선 통신 인터페이스일 수 있거나, 또는 유선 LAN 또는 USB(universal serial bus) 등의 유선 통신 인터페이스일 수 있다.
제어부(48)는 CPU(central processing unit) 또는 DSP(digital signal processor) 등의 프로세서를 사용하여 통신 장치(20)의 동작 전반을 제어한다. 예를 들어, 제어부(48)는 통신 장치(20)의 고유한 기능(PC의 정보 처리 기능, 스마트폰의 통화 기능, 또는 다른 어플리케이션 기능)을 동작시킨다. 제어부(48)는, 예를 들어, 기억부(40)에 기억되어 있는 데이터에 각각 대응하는 아이콘 등을 표시부(42)에 의해 표시시킨다. 본 실시예에서, 예를 들어, 유저 I/F(44)를 통해 데이터 송신에 관한 미리 결정된 유저 입력을 검지하면, 제어부(48)는 유저 입력의 내용을 통지하는 유저 입력 신호를 통신 I/F(46)를 통해 통신 제어 장치(100)에 송신한다. 데이터 송신에 관한 유저 입력에 대해서는 이후에 구체적으로 설명한다.
제어부(48)는 통신 제어 장치(100)로부터의 지시에 따라, 유저에 의해 지정된 데이터를 기억부(40)로부터 판독하고, 데이터를 통신 I/F(46)를 통해 다른 통신 장치로 송신한다. 통신 장치(20)로부터의 데이터의 송신은, 예를 들어, FTP(file transfer protocol), HTTP(hyper-text transfer protocol), Samba 등의 구조에 의해 실현될 수 있다. 데이터 송신처는 통신 제어 장치(100)에 의해 선택된다.
통신 제어 장치(100)는 통신 장치(20)로부터 다른 통신 장치로의 데이터 송신을 제어하기 위한 장치이다. 다음 설명 부분에서는, 본 실시예에 따른 통신 제어 장치(100)의 구성에 대해 구체적으로 설명한다.
<3. 실시예에 따른 통신 제어 장치의 구성>
도 4는 본 발명의 실시예에 따른 통신 제어 장치(100)의 구성의 일례를 도시하는 블록도이다. 도 4를 참조하면, 통신 제어 장치(100)는 촬상부(102), 환경 맵 생성부(110), 통신 처리부(180) 및 표시 제어부(190)를 포함한다.
[3-1. 촬상부]
촬상부(102)는, 예를 들어, CCD(charge coupled device) 또는 CMOS(complementary metal oxide semiconductor) 등의 촬상 소자를 갖는 카메라로서 실현될 수 있다. 촬상부(102)는 통신 제어 장치(100)의 외부에 설치될 수 있다. 촬상부(102)는 도 1에 예시된 환경(1) 등의 실제 공간을 촬상하여 생성된 화상을, 입력 화상으로서 환경 맵 생성부(110) 및 표시 제어부(190)로 출력한다.
[3-2. 환경 맵 생성부]
환경 맵 생성부(110)는 촬상부(102)로부터 입력되는 입력 화상 및 데이터 기억부(130)에 의해 기억되는 후술하는 대상의 특징 데이터에 기초하여, 실제 공간 내에 존재하는 하나 이상의 물리적 대상의 위치 등을 나타내는 환경 맵을 생성한다. 도 4에 도시되는 본 실시예에서, 환경 맵 생성부(110)는 자기 위치 검출부(120), 데이터 기억부(130), 화상 인식부(140), 환경 맵 구축부(150) 및 환경 맵 기억부(152)를 포함한다.
(1) 자기 위치 검출부
자기 위치 검출부(120)는 촬상부(102)로부터 입력되는 입력 화상 및 데이터 기억부(130)에 기억되는 특징 데이터에 기초하여, 입력 화상을 나타내는 카메라의 위치를 동적으로 검출한다. 예를 들어, 촬상 장치가 외눈 카메라를 구비하는 경우에도, 자기 위치 검출부(120)는 상술된 "Real-Time Simultaneous Localization and Mapping with a Single Camera" (Andrew J. Davison, Proceedings of the 9th IEEE International Conference on Computer Vision Volume 2, 2003, pp.1403-1410)에 개시되어 있는 SLAM 기술을 응용함으로써, 카메라의 위치 및 자세와 카메라의 촬상면에서의 FP의 위치를 프레임마다 동적으로 결정할 수 있다.
우선, 도 5를 참조하여, 자기 위치 검출부(120)에 의한 SLAM 기술을 응용한 자기 위치 검출 처리의 전체적인 흐름에 대해 설명한다. 다음, 도 6 내지 도 8을 참조하여, 자기 위치 검출 처리를 상세하게 설명한다.
도 5는 자기 위치 검출부(120)에 의한 SLAM 기술을 응용한 자기 위치 검출 처리의 흐름의 예를 나타내는 흐름도이다. 도 5에서, 자기 위치 검출 처리가 개시되면, 자기 위치 검출부(120)는 우선 상태 변수를 초기화한다(스텝 S102). 본 실시예에서, 상태 변수는 카메라의 위치 및 자세(회전각), 카메라의 이동 속도 및 각속도 및 하나 이상의 FP의 위치를 요소로서 포함하는 벡터이다. 그리고, 자기 위치 검출부(120)는 촬상부(102)로부터 입력 화상을 순차적으로 취득한다(스텝 S112). 스텝 S112에서 스텝 S118까지의 처리는 각 입력 화상마다(즉, 각 프레임마다) 반복될 수 있다.
스텝 S114에서는, 자기 위치 검출부(120)는 입력 화상에 존재하는 FP를 추적한다. 예를 들어, 자기 위치 검출부(120)는 데이터 기억부(130)에 미리 기억되어 있는 각 FP의 패치(예를 들어, FP 중심을 갖는 3×3=9 화소의 소화상)를 입력 화상으로부터 검출한다. 여기서, 검출된 패치의 위치, 즉, FP의 위치는 후에 상태 변수가 갱신될 때 사용된다.
스텝 S116에서는, 자기 위치 검출부(120)는 미리 결정된 예측 모델에 기초하여, 예를 들어, 1 프레임 후의 상태 변수의 예측값을 생성한다. 또한, 스텝 S118에서는, 자기 위치 검출부(120)는 스텝 S116에서 생성된 상태 변수의 예측값과, 스텝 S114에서 검출된 FP의 위치에 대응되는 관측값을 사용하여 상태 변수를 갱신한다. 자기 위치 검출부(120)는 스텝 S116 및 S118의 처리를, 확장 칼만 필터(extended Kalman filter)의 원리에 기초하여 실행한다.
이러한 처리의 결과로서, 프레임마다 갱신되는 상태 변수의 값이 출력된다. FP의 추적(스텝 S114), 상태 변수의 예측(스텝 S116) 및 상태 변수의 갱신(스텝 S118)의 처리의 내용에 대해 보다 구체적으로 설명한다.
(1-1) 특징점의 추적
본 실시예에서, 데이터 기억부(130)는 실제 공간 내에 존재할 수 있는 물리적 대상(통신 장치(20) 및 다른 물리적 대상)에 대응하는 대상의 특징을 나타내는 특징 데이터를 미리 기억한다. 특징 데이터는, 예를 들어, 각 대상의 외관의 특징을 각각 나타내는 하나 이상의 FP에 관한 소화상, 즉, 패치를 포함한다. 패치는, 예를 들어, FP 중심을 갖는 3×3=9 화소를 포함하는 소화상일 수 있다.
도 6은 대상의 2개의 예 및 각 대상 상에 설정되는 FP 및 패치의 예를 나타내고 있다. 도 6의 좌측의 대상은 PC를 나타내는 대상이다(6a 참조). 대상 상에는 특징점 FP1을 포함하는 복수의 FP가 설정되어 있다. 또한, 특징점 FP1과 관련되어 패치 Pth1이 정의되어 있다. 한편, 도 6의 우측의 대상은 달력을 나타내는 대상이다(6b 참조). 대상 상에는 특징점 FP2를 포함하는 복수의 FP가 설정되어 있다. 또한, 특징점 FP2와 관련되어 패치 Pth2가 정의되어 있다.
촬상부(102)로부터 입력 화상을 취득하면, 자기 위치 검출부(120)는 입력 화상에 포함되는 부분 화상과, 데이터 기억부(130)에 미리 기억되어 있는 도 6에 예시된 각 FP에 대한 패치를 대조한다. 그리고, 자기 위치 검출부(120)는 대조 결과로서, 입력 화상에 포함되는 각 FP의 위치(예를 들어, 검출된 패치의 중심 화소의 위치)를 특정한다.
FP의 추적(도 5의 스텝 S114)에서, 추적되는 모든 FP에 관한 데이터가 미리 데이터 기억부(130)에 기억될 필요는 없다. 예를 들어, 도 7에 도시된 예에서는, 시간 T=t-1에서 4개의 FP가 입력 화상내에서 검출된다(7a 참조). 다음, 시간 T=t에서 카메라의 위치 또는 자세가 변화되면, 시간 T=t-1에서 입력 화상에 나타나는 4개의 FP 중 2개만이 입력 화상에 나타난다. 이러한 경우, 자기 위치 검출부(120)는 입력 화상의 특징 화소 패턴을 갖는 위치에 새롭게 FP를 설정하고, 새로운 FP를 이후의 프레임에서의 자기 위치 검출 처리에 사용할 수 있다. 예를 들어, 도 7의 예에서는, 시간 T=t에서 3개의 새로운 FP가 대상 상에 설정된다(7b 참조). 이는 SLAM 기술의 하나의 특징이다. 이로써, 모든 FP를 미리 설정하는 비용을 삭감할 수 있고, 추적되는 다수의 FP를 사용하여 처리의 정밀도를 향상시킬 수 있다.
(1-2) 상태 변수의 예측
본 실시예에서, 자기 위치 검출부(120)는 확장 칼만 필터를 적용할 상태 변수로서 다음 식에 나타내는 상태 변수 X를 사용한다.
[식 1]
Figure pat00001
(1)
식 (1)에서의 상태 변수 X의 제1 요소는 다음 식에 표현된 바와 같이, 실제 공간에 설정되는 좌표계인 세계 좌표계(x, y, z)에서의 카메라의 3차원 위치를 나타낸다.
[식 2]
Figure pat00002
(2)
또한, 상태 변수의 제2 요소는 카메라의 자세를 나타내는 회전 행렬에 대응하는 4원수(quaternion)를 요소로 갖는 4차원 벡터 ω이다. 4원수 대신에 오일러각(Euler angle)을 사용하여 카메라의 자세를 나타낼 수 있다. 또한, 상태 변수의 제3 및 제4 요소는 카메라의 이동 속도 및 각속도를 각각 나타낸다.
또한, 상태 변수의 제5 및 그 이후의 요소는 다음 식에 표현된 바와 같이, 세계 좌표계에서의 특징점 FPi(i=1...N)의 3차원 위치 pi를 나타낸다. 상술된 바와 같이, FP의 개수 N은 처리 동안 변화될 수 있다.
[식 3]
Figure pat00003
(3)
자기 위치 검출부(120)는 스텝 S102에서 초기화된 상태 변수 X의 값 또는 이전 프레임에서 갱신된 상태 변수 X의 값에 기초하여 최신 프레임에서의 상태 변수의 예측값을 생성한다. 상태 변수의 예측값은 다음 식에 나타내는 다차원 정규 분포에 따른 확장 칼만 필터의 상태 방정식에 따라 생성된다.
[식 4]
예측된 상태 변수
Figure pat00004
(4)
여기서, F는 시스템의 상태 천이에 관한 예측 모델을 나타내고, a는 예측 조건을 나타낸다. 또한, w는 가우시안 노이즈를 나타내고, 예를 들어, 모델 근사 오차, 관측 오차 등을 포함할 수 있다. 일반적으로, 가우시안 노이즈 w의 평균은 0이다.
도 8은 본 실시예에 따른 예측 모델의 일례를 설명하는 설명도이다. 도 8을 참조하면, 본 실시예에 따른 예측 모델에서의 2개의 예측 조건이 나타내어진다. 우선, 제1 조건으로서, 세계 좌표계에서의 FP의 3차원 위치가 변화하지 않는 것으로 한다. 즉, 시간 T에서의 특징점 FP1의 3차원 위치를 pT로 하면, 다음 관계식이 성립한다.
[식 5]
Figure pat00005
(5)
다음, 제2 조건으로서, 카메라의 운동은 등속 운동인 것으로 한다. 즉, 시간 T=t-1로부터 시간 T=t까지 카메라의 속도 및 각속도에 대해 다음 관계식이 성립한다.
[식 6]
Figure pat00006
(6)
Figure pat00007
(7)
이러한 예측 모델 및 식 (4)에 표현된 상태 방정식에 기초하여, 자기 위치 검출부(120)는 최신 프레임에 관한 상태 변수의 예측값을 생성한다.
(1-3) 상태 변수의 갱신
예를 들어, 자기 위치 검출부(120)는 관측 방정식을 사용하여, 상태 변수의 예측값으로부터 예측되는 관측 정보와, FP 추적 결과로 취득되는 실제 관측 정보 사이의 오차를 평가한다. 식 (8)에서, ν이 오차다.
[식 7]
관측 정보
Figure pat00008
(8)
예측된 관측 정보
Figure pat00009
(9)
여기서, H는 관측 모델을 나타낸다. 예를 들어, 특징점 FPi의 촬상면(u-v 평면) 상의 위치를 다음 식에 표현되는 바와 같이 정의한다.
[식 8]
FPi의 촬상면 상의 위치
Figure pat00010
(10)
여기서, 카메라의 위치 x, 카메라의 자세 ω 및 특징점 FPi의 3차원 위치 pi는 상태 변수 X의 요소로서 부여된다. 그렇다면, 핀홀 모델(pinhole model)에 따라, 특징점 FPi의 촬상면 상의 위치는 다음 식을 사용하여 유도된다.
[식 9]
Figure pat00011
(11)
여기서, λ는 정규화를 위한 파라미터, A는 카메라 내부 파라미터, Rω는 상태 변수 X에 포함되는 카메라의 자세를 나타내는 4원수 ω에 대응되는 회전 행렬을 나타낸다. 카메라 내부 파라미터 A는 입력 화상을 촬영하는 촬상 장치의 특성에 따라 미리 다음 식에 표현되는 바와 같이 부여된다.
[식 10]
Figure pat00012
(12)
여기서, f는 초점 거리, θ는 화상축의 직교성(이상값은 90도), ku는 촬상면의 수직축의 스케일(세계 좌표계로부터 촬상면의 좌표계로의 스케일 변화율), kv는 촬상면의 수평축의 스케일, (uo, vo)은 촬상면의 중심 위치를 나타낸다.
따라서, 식(11)을 사용하여 유도되는 예측되는 관측 정보, 즉, 각 FP의 촬상면 상의 위치와, 도 5의 스텝 S114에서의 FP 추적 결과 사이의 오차를 최소화하는 상태 변수 X를 탐색함으로써, 가능한(feasible) 최신의 상태 변수 X를 취득할 수 있다.
[식 11]
최신의 상태 변수
Figure pat00013
(13)
자기 위치 검출부(120)는 SLAM 기술을 응용하여 동적으로 갱신된 카메라(촬상 장치)의 위치 x 및 자세 ω를 환경 맵 구축부(150), 통신 처리부(180) 및 표시 제어부(190)로 출력한다.
(2) 데이터 기억부
데이터 기억부(130)는 하드 디스크 또는 반도체 메모리 등의 기억 매체를 사용하여, 실제 공간 내에 존재할 수 있는 물리적 대상에 대응하는 대상의 특징을 나타내는 특징 데이터를 미리 기억하고 있다. 도 4에서는, 데이터 기억부(130)가 환경 맵 생성부(110)의 일부인 예를 나타내고 있지만, 본 발명은 이러한 예에 한정되지 않고, 데이터 기억부(130)는 환경 맵 생성부(110)의 외부에 설치될 수도 있다. 도 9는 특징 데이터의 구성의 일례를 설명하는 설명도이다.
도 9를 참조하면, 대상 Obj1의 일례로서 특징 데이터 FD1이 나타내어진다. 특징 데이터 FD1은 대상 명칭 FD11, 6 방향으로부터 촬영된 화상 데이터 FD12, 패치 데이터 FD13, 3차원 형상 데이터 FD14 및 온톨러지(ontology) 데이터 FD15를 포함한다.
대상 명칭 FD11은 "스마트폰 A" 등 대응하는 대상을 특정할 수 있는 명칭이다.
화상 데이터 FD12는, 예를 들어, 대응하는 대상의 화상을 6 방향(앞, 뒤, 좌, 우, 상, 하)으로부터 촬영하여 취득된 6개의 화상 데이터를 포함한다. 패치 데이터 FD13은 각 대상 상에 설정되는 하나 이상의 FP 각각에 대한 각 FP 중심을 갖는 일련의 소화상이다. 화상 데이터 FD12 및 패치 데이터 FD13은 후술하는 화상 인식부(140)에 의한 대상 인식 처리를 위해 사용될 수 있다. 또한, 패치 데이터 FD13은 자기 위치 검출부(120)에 의한 상술된 자기 위치 검출 처리를 위해 사용될 수 있다.
3차원 형상 데이터 FD14는 대응하는 대상의 형상을 인식하기 위한 폴리곤 정보 및 FP의 3차원 위치 정보를 포함한다. 3차원 형상 데이터 FD14는 후술하는 환경 맵 구축부(150)에 의한 환경 맵 구축 처리를 위해 사용될 수 있다.
온톨러지 데이터 FD15는, 예를 들어, 환경 맵 구축부(150)에 의한 환경 맵 구축 처리를 지원하기 위해 사용될 수 있는 데이터이다. 도 9의 예에서는, 온톨러지 데이터 FD15는 스마트폰인 대상 Obj1이 테이블에 대응하는 대상에 접할 가능성이 높고, 책장에 대응하는 대상에 접할 가능성이 낮은 것을 나타내고 있다.
(3) 화상 인식부
화상 인식부(140)는 데이터 기억부(130)에 기억되어 있는 상술된 특징 데이터를 사용하여, 입력 화상에 나타나는 물리적 대상 각각에 어느 대상이 대응하는 지를 특정한다.
도 10은 화상 인식부(140)에 의한 대상 인식 처리의 흐름의 예를 나타내는 흐름도다. 도 10을 참조하면, 우선, 화상 인식부(140)는 촬상부(102)로부터 입력 화상을 취득한다(스텝 S212). 다음, 화상 인식부(140)는 입력 화상에 포함되는 부분 화상과, 특징 데이터에 포함되는 각 대상의 하나 이상의 FP의 패치를 대조하고, 입력 화상에 포함되는 FP를 추출한다(스텝 S214). 화상 인식부(140)에 의한 대상 인식 처리에 사용되는 FP는 자기 위치 검출부(120)에 의한 자기 위치 검출 처리에 사용되는 FP와 반드시 같지 않을 수 있다. 그러나, 양쪽의 처리에서 공통된 FP가 사용되면, 화상 인식부(140)는 자기 위치 검출부(120)에 의한 FP의 추적 결과를 재사용할 수 있다.
다음, 화상 인식부(140)는 FP의 추출 결과에 기초하여, 입력 화상에 나타나는 대상을 특정한다(스텝 S216). 예를 들어, 어떤 영역에서 하나의 대상에 속하는 FP가 높은 밀도로 추출되면, 화상 인식부(140)는 그 영역에 그 대상이 나타나는 것을 인식할 수 있다. 그리고, 화상 인식부(140)는 특정한 대상의 대상 명칭(또는 식별자) 및 그 대상에 속하는 FP의 촬상면 상의 위치를 환경 맵 구축부(150)에 출력한다(스텝 S218).
(4) 환경 맵 구축부
환경 맵 구축부(150)는 자기 위치 검출부(120)로부터 입력되는 카메라의 위치 및 자세, 화상 인식부(140)로부터 입력되는 FP의 촬상면 상의 위치 및 데이터 기억부(130)에 기억되어 있는 특징 데이터를 사용하여 환경 맵을 생성한다. 본 명세서에서, 환경 맵은 실제 공간 내에 존재하는 하나 이상의 물리적 대상의 위치(및 자세)를 나타내는 일련의 데이터이다. 구체적으로, 본 실시예에서는, 환경 맵은 실제 공간 내에 존재하는 물리적 대상으로서 2개 이상의 통신 장치(20)의 위치 및 자세를 나타내는 데이터를 포함한다. 또한, 예를 들어, 환경 맵은 물리적 대상에 대응하는 대상 명칭, 물리적 대상에 속하는 FP의 3차원 위치, 물리적 대상의 형상을 구성하는 폴리곤 정보 등을 포함할 수 있다. 환경 맵은, 예를 들어, 화상 인식부(140)로부터 입력되는 FP의 촬상면 상의 위치로부터, 상술된 핀홀 모델에 따라 각 FP의 3차원 위치를 취득함으로써 구축될 수 있다.
식 (11)에 표현된 핀홀 모델의 관계식을 변형하면, 특징점 FPi의 세계 좌표계에서의 3차원 위치 pi는 다음 식에 의해 구해질 수 있다.
[식 12]
Figure pat00014
(14)
여기서, d는 카메라와 각 FP 사이의 세계 좌표계에서의 거리를 나타낸다. 환경 맵 구축부(150)는 거리 d를, 각 대상마다 적어도 4개의 FP의 촬상면 상의 위치 및 FP 간의 거리에 기초하여 산출할 수 있다. FP 간의 거리는 도 9를 참조하여 설명한 특징 데이터에 포함되는 3차원 형상 데이터 FD14로서 미리 데이터 기억부(130)에 기억되어 있다. 식 (14)에서의 거리 d의 산출 처리는 상술된 일본 특허 공개 공보 제2008-304268호에 상세하게 설명되어 있다.
거리 d가 산출되면, 식 (14)에서의 우변의 나머지의 변수는 자기 위치 검출부(120)로부터 입력되는 카메라의 위치 및 자세 및 화상 인식부(140)로부터 입력되는 FP의 촬상면 상의 위치이며, 이들 모두는 기지의 것들이다. 이 때, 환경 맵 구축부(150)는 식 (14)에 따라 화상 인식부(140)로부터 입력되는 각 FP에 대해 세계 좌표계에서의 3차원 위치를 산출한다. 이 때, 환경 맵 구축부(150)는 산출된 각 FP의 3차원 위치에 따라 최신의 환경 맵을 구축하고, 구축된 환경 맵을 환경 맵 기억부(152)가 기억하게 한다. 이 때, 환경 맵 구축부(150)는 도 9를 참조하여 설명된 특징 데이터에 포함되는 온톨러지 데이터 FD15를 사용하여 환경 맵의 데이터의 정확성을 향상시킬 수 있다.
환경 맵 기억부(152)는 하드 디스크 또는 반도체 메모리 등의 기억 매체를 사용하여 환경 맵 구축부(150)에 의해 구축되는 환경 맵을 기억한다. 본 실시예에서는, 환경 맵 기억부(152)에서, 각 통신 장치(20)에 관한 데이터는 미리 등록되는 각 통신 장치(20)의 식별 정보(예를 들어, IP 어드레스, 호스트명, MAC 어드레스 등)과 관련지어진다.
[3-3. 통신 처리부]
통신 처리부(180)는 환경 맵 생성부(110)에 의해 생성되는 환경 맵을 사용하여 통신 장치(20)로부터 수신되는 유저 입력에 따라 하나의 통신 장치(20)로부터 다른 장치로의 데이터의 송신을 제어한다. 도 4에 도시된 본 실시예에서, 통신 처리부(180)는 통신 I/F(182), 검출부(184), 선택부(186) 및 통신 제어부(188)를 포함한다.
(1) 통신 I/F
통신 I/F(182)는 통신 제어 장치(100)에 의한 통신 장치(20)와의 통신을 중개한다. 통신 I/F(182)는, 예를 들어, 통신 장치(20)의 통신 I/F(46)와 동일한 무선 또는 유선 통신 인터페이스일 수 있다. 통신 I/F(182)는 통신 장치(20)로부터 수신되는 신호를 검출부(184) 및 통신 제어부(188)에 출력한다. 또한, 통신 I/F(182)는 통신 제어부(188)로부터 입력되는 신호를 통신 장치(20)에 송신한다.
(2) 검출부
검출부(184)는 통신 I/F(182)에 의해 수신되는 신호를 감시함으로써, 통신 장치(20)에 제공되는 임의의 데이터와 방향을 지정하는, 유저에 의한 통신 장치(20)에 대한 유저 입력을 검출한다. 통신 장치(20)에 제공되는 임의의 데이터와 방향을 지정하는 유저 입력은, 예를 들어, 통신 장치(20)에서 유저 입력 신호 IN으로 변환되어, 통신 장치(20)로부터 통신 제어 장치(100)에 송신된다. 유저 입력 신호 IN이 통신 I/F(182)에 의해 수신된 것을 검출하면, 검출부(184)는 유저 입력의 내용을 선택부(186)에 통지하고, 유저 입력 신호 IN의 송신원의 통신 장치(20)로부터의 데이터의 송신처로 지정될 장치를 선택부(186)가 선택하게 한다.
도 11은 검출부(184)에 의해 검출되는 통신 장치(20)에 대한 유저 입력을 설명하는 설명도이다. 도 11을 참조하면, 통신 제어 장치(100)의 카메라에 의해 촬상되는 일례로서의 입력 화상 Im1이 도시된다. 입력 화상 Im1에는 통신 장치(20a, 20b 및 20c)가 나타난다. 통신 장치(20a)의 화면 상에는 데이터 D1 및 D2를 각각 나타내는 2개의 아이콘이 표시되어 있다.
도 11에 도시된 상황에서, 예를 들어, 데이터 D2를 통신 장치(20b)에 송신하는 것을 원하는 유저는 데이터 D2를 나타내는 아이콘을 통신 장치(20b)가 존재하는 방향(도면 중의 우측 방향)으로 드래그한다. 그렇다면, 통신 장치(20a)는 드래그 이벤트를 검지하고, 유저 입력에 의해 지정된 아이콘과 드래그 방향을 인식한다. 통신 장치(20a)는 지정된 아이콘에 대응하는 데이터 D2를 특정하기 위한 정보(예를 들어, 데이터 파일 경로) 및 드래그 방향의 내용을 갖는 유저 입력 신호 IN을 통신 제어 장치(100)에 송신한다. 통신 제어 장치(100)의 검출부(184)는 통신 I/F(182)에 의해 수신되는 신호를 감시하여, 유저 입력 신호 IN을 검출한다.
검출부(184)는, 예를 들어, 통신 장치(20)로부터 송신되는 유저 입력 신호 IN을 검출하는 대신, 촬상부(102)로부터 입력되는 일련의 입력 화상을 감시하고, 입력 화상에 나타나는 유저의 동작의 화상을 인식함으로써, 통신 장치(20)에 대한 유저 입력을 검출할 수 있다.
(3) 선택부
선택부(186)는 유저 입력에 의해 지정된 방향에 기초하여, 지정된 데이터의 송신처인 통신 장치를, 환경 맵 생성부(110)에 의해 생성되는 환경 맵으로부터 선택한다. 본 실시예에서, 선택부(186)는, 예를 들어, 환경 맵에서 유저 입력 신호 IN의 송신원의 통신 장치(20)에 대해, 유저 입력에 의해 지정된 방향에 위치되는 통신 장치를 데이터 송신처의 장치로서 선택한다. 이 방향으로 위치되는 복수의 통신 장치가 존재하는 경우, 예를 들어, 선택부(186)는 복수의 장치 중 송신원의 통신 장치(20)에 가장 가깝게 위치되는 장치를 데이터 송신처 장치로서 선택할 수 있다.
도 12 및 도 13은 본 실시예에 따른 선택부(186)에 의한 송신처의 선택을 설명하는 설명도이다.
도 12를 참조하면, 환경 맵에 포함되는 통신 장치(20a, 20b 및 20c)가 도시된다. 통신 장치(20a)의 위치는 세계 좌표계(x, y, z)에서의 3차원 위치 Xs로서 환경 맵에 유지되고 있다. 통신 장치(20a)의 자세는 환경 맵의 세계 좌표계(x, y, z)에서의 회전 행렬에 대응하는 4원수 ωs로서 환경 맵에 유지되고 있다. 통신 장치(20a)의 자세 ωs는 통신 장치(20a)의 화면의 법선의 회전각에 대응한다. 통신 장치(20a)의 위치 Xs 및 자세 ωs 외에, 유저 입력 신호 IN에 포함되는 통신 장치(20a)의 화면 상의 드래그 방향(u, v)이 정해지면, 위치 Xs를 기점으로 지정하고, 유저가 드래그에 의해 지정된 방향을 따르는 직선 L1을 환경 맵의 세계 좌표계에서 고유하게 특정할 수 있다.
선택부(186)는 상술된 바와 같이 직선 L1을 특정하고, 직선 L1상 또는 직선 L1의 적어도 근방에 위치되는 통신 장치(20)를 데이터 송신처 장치로서 선택한다. 도 12의 예에서는, 통신 장치(20b)가 통신 장치(20a)의 위치 Xs를 기점으로 하는 직선 L1 상에 위치된다. 한편, 통신 장치(20c)는 직선 L1으로부터 이격되어 위치된다. 여기서, 선택부(186)는 통신 장치(20b)를 통신 장치(20a)로부터의 데이터의 송신처 장치로서 선택한다.
도 13을 참조하면, 환경 맵에 포함되는 통신 장치(20a, 20b 및 20c)가 도시된다. 이들 장치는 도 12의 예와는 다른 위치 관계를 갖는다. 이 경우에도, 선택부(186)는 환경 맵에서의 통신 장치(20a)의 위치 Xs 및 자세ωs 및 유저 입력에 의해 지정된 드래그 방향(u, v)에 기초하여, 통신 장치(20a)에 기점을 갖는 직선 L1을 특정한다. 도 13의 예에서는, 직선 L1 상에 통신 장치(20b 및 20c)가 모두 위치된다. 이 때, 선택부(186)는, 예를 들어, 통신 장치(20b 및 20c) 중, 통신 장치(20a)에 보다 가까이 위치되는 통신 장치(20b)를, 통신 장치(20a)로부터의 데이터의 송신처 장치로서 선택할 수 있다. 대안적으로, 선택부(186)는, 예를 들어, 유저에 임의의 장치(통신 장치(20b 또는 20c))를 지정하기 위한 메시지를 표시하고, 유저에 의한 지정의 결과에 따라, 임의의 장치를 데이터 송신처 장치로서 선택할 수 있다.
도 14는 본 실시예에 따른 선택부(186)에 의한 송신처 선택 처리의 흐름의 예를 나타내는 흐름도이다.
도 14를 참조하면, 선택부(186)는 우선 환경 맵으로부터 각 통신 장치의 위치 및 자세를 취득한다(스텝 S302). 다음, 선택부(186)는 송신원의 통신 장치(20)의 위치를 기점으로 지정하고, 유저 입력에 의해 지정된 방향을 따른 직선 L1을 특정한다(스텝 S304).
다음, 선택부(186)는 특정된 직선 L1의 적어도 근방에(즉, 직선 L1 상에 또는 직선 L1의 근방에) 다른 통신 장치가 존재하는지의 여부를 판정한다(스텝 S306). 예를 들어, 직선 L1으로부터의 거리가 미리 설정된 임계값보다 작은 장치는 직선 L1의 근방에 위치된다고 판정될 수 있다. 여기서, 다른 통신 장치가 직선 L1의 근방에 위치되지 않는다면, 선택부(186)는 통신 제어부(188)로 에러를 출력하여(스텝 S314), 처리를 종료한다. 한편, 적어도 직선 L1의 근방에 다른 통신 장치가 존재하면, 처리는 스텝 S308로 진행한다.
다음, 선택부(186)는 적어도 직선 L1의 근방에 복수의 다른 통신 장치가 존재하는지 여부를 판정한다(스텝 S308). 여기서, 적어도 직선 L1의 근방에 복수의 다른 통신 장치가 존재하는 경우에는, 선택부(186)는 송신원의 통신 장치(20)에 가장 가까이 위치되는 통신 장치를 데이터 송신처 장치로서 선택한다(스텝 S310). 한편, 하나의 다른 통신 장치만이 적어도 직선 L1의 근방에 위치되는 경우에는, 선택부(186)는 다른 통신 장치를 데이터 송신처 장치로서 선택한다(스텝 S312).
선택부(186)는 상술된 송신처 선택 처리에 의해 선택된 데이터 송신처 장치를 식별하기 위한 식별 정보를 통신 제어부(188)에 출력한다. 선택부(186)에 의해 선택되는 데이터 송신처 장치는 반드시 본 실시예에 따른 통신 장치(20)와 동등한 구성을 갖지 않아도 된다. 예를 들어, 유저 입력 신호 IN을 통신 제어 장치(100)에 송신하는 기능을 갖지 않는 일반적인 통신 장치가 환경 맵 생성부(110)에 의해 생성되는 환경 맵에서 인식될 수 있다면, 이 일반적인 통신 장치가 선택부(186)에 의해 데이터 송신처 장치로서 선택될 수 있다.
(4) 통신 제어부
검출부(184)에 의해 유저 입력이 검출된 경우, 통신 제어부(188)는 유저 입력의 대상이 된 통신 장치(20)로부터 다른 통신 장치로, 유저 입력에 의해 지정된 데이터를 송신시킨다. 보다 구체적으로는, 예를 들어, 하나의 통신 장치(20)로부터 유저 입력 신호 IN이 수신되면, 통신 제어부(188)는 데이터 송신 지시를 하는 지시 신호 SIG를, 통신 I/F(182)를 통해 그 하나의 통신 장치(20)에 송신한다. 지시 신호 SIG는 유저 입력에 의해 지정된 데이터를, 상술된 송신처 선택 처리에 따라 선택부(186)에 의해 선택된 다른 통신 장치에 송신하도록 지시하는 신호이다. 그 결과, 유저 입력에 의해 지정된 데이터가 상기 하나의 통신 장치(20)로부터, 유저 입력에 의해 지정된 방향으로 위치된 다른 통신 장치로 송신된다.
통신 제어부(188)는 지시 신호 SIG를 송신하고, 또한 데이터 송신원 장치 및 데이터 송신처 장치를 식별하기 위한 식별 정보를 표시 제어부(190)에 출력한다.
[3-4. 표시 제어부]
표시 제어부(190)는 데이터 송신원 장치로부터 데이터 송신처 장치로 데이터가 송신될 때, 데이터 송신을 나타내는 애니메이션을 표시 장치의 화면 상에 표시한다. 예를 들어, 표시 제어부(190)는 촬상부(102)로부터 입력되는 입력 화상에 데이터 송신을 나타내는 애니메이션을 중첩함으로써 출력 화상을 생성한다. 표시 제어부(190)는 생성된 출력 화상을 HMD(104)에 표시한다. 데이터 송신을 나타내는 애니메이션은, 예를 들어, 데이터 송신원 장치로부터 데이터 송신처 장치로 임의의 가상적 대상(도형, 기호 또는 캐릭터)이 움직이는 애니메이션일 수 있다.
보다 구체적으로는, 예를 들어, 표시 제어부(190)는 애니메이션이 입력 화상에 중첩될 위치를, 환경 맵 생성부(110)로부터 취득되는 카메라의 위치 및 자세를 사용하여 핀홀 모델의 식 (11)에 따라 산출한다. 예를 들어, 식 (11)에서의 우변의 특징점 FPi의 3차원 위치 pi에 데이터 송신원 장치의 3차원 위치를 대입함으로써, 애니메이션의 기점의 표시 위치가 산출된다. 또한, 식 (11)에서의 우변의 특징점 FPi의 3차원 위치 pi에 데이터 송신처 장치의 3차원 위치를 대입함으로써, 애니메이션의 종점의 표시 위치가 산출된다. 표시 제어부(190)는 대상이 기점의 표시 위치와 종점의 표시 위치 사이를 움직이는 애니메이션을 일련의 입력 화상 위에 중첩한다.
도 15는 본 실시예에 따른 데이터 송신에 관한 애니메이션의 일례를 도시하는 설명도이다. 도 15를 참조하면, 일련의 애니메이션(192a 내지 193a)이 중첩되어 있는 출력 화상 Im2a 내지 Im2c가 편의상 하나의 설명도에 도시되어 있다. 실제로, 시간축을 따라, 출력 화상 Im2a 상에 애니메이션(192a), 출력 화상 Im2b 상에 애니메이션(192b), 출력 화상 Im2c 상에 애니메이션(192c)이 순서대로 중첩될 수 있다. 도 15에 도시된 애니메이션은 화살표의 형상을 갖는다. 상술된 바와 같이, 애니메이션(192a 내지 192c)이 순서대로 표시됨으로써, 유저는 통신 장치(20a)로부터 통신 장치(20d)로 데이터가 송신된다는 것을 알 수 있다. 데이터 송신처 장치는 환경 맵에서 그 위치가 인식되는 한, 반드시 입력 화상 또는 출력 화상에 나타나지 않을 수도 있다. 즉, 유저 입력에 의해 지정된 방향으로 위치된 통신 장치 가운데 화면의 범위 외에 위치된 장치에 데이터가 송신될 수도 있다.
[3-5. 통신 제어 처리의 흐름]
도 16은 본 실시예에 따른 통신 제어 장치(100)에 의한 통신 제어 처리의 흐름의 예를 나타내는 흐름도이다.
도 16을 참조하면, 우선, 검출부(184)는 통신 장치(20)에 대한 미리 결정된 유저 입력의 존재 유무를 감시한다(스텝 S352). 검출부(184)가, 예를 들어, 통신 장치(20)에 대한 임의의 데이터 아이콘과 방향을 지정하는 유저 입력(드래그 등)을 검출하면, 처리는 스텝 S354으로 진행된다.
다음, 선택부(186)는 환경 맵 생성부(110)에 의해 생성되는 환경 맵을 취득한다(스텝 S354). 여기서, 취득되는 환경 맵은 검출부(184)에 의해 검출된 유저 입력의 대상이 된 통신 장치(20)에 대응하는 대상 및 다른 통신 장치에 대응하는 대상을 포함한다.
다음, 선택부(186)에 의해, 도 14를 참조하여 설명된 송신처 선택 처리가 행해진다(스텝 S356). 이로써, 유저 입력의 대상이 된 통신 장치(20)로부터의 데이터의 송신처의 장치가 선택된다.
다음, 통신 제어부(188)는 선택 결과에서의 데이터 송신처 장치의 존재 유무를 판정한다(스텝 S358). 예를 들어, 유저 입력에 의해 지정된 방향으로 통신 장치가 존재하지 않는 경우에는, 선택부(186)로부터 통신 제어부(188)로 에러가 출력된다. 이러한 경우, 통신 제어부(188)는 표시 제어부(190)에 지시하여 화면 상에 에러 메시지를 표시한다(스텝 S360).
한편, 선택부(186)에 의한 선택 결과에 데이터 송신처 장치가 존재하는 경우에는, 통신 제어부(188)는 유저 입력의 대상이 된 통신 장치(20)에 지시 신호 SIG를 송신하고, 선택부(186)에 의해 선택된 데이터 송신처 장치에 데이터를 송신한다(스텝 S362). 데이터 송신이 행해지는 동안, 표시 제어부(190)는 HMD(104)의 화면 상에 데이터 송신을 나타내는 애니메이션을 표시한다(스텝 S364).
<4. 변형예>
상술된 실시예에서는, 통신 제어 장치(100)의 선택부(186)는 드래그 등의 유저 입력에 의해 지정된 방향에 기초하여, 데이터 송신처가 되는 장치를 환경 맵으로부터 선택한다. 이로써, 유저는 통신 장치 간의 데이터 송신 시에 송신처를 직감적으로 지정할 수 있다. 한편, 송신처의 직감적인 지정은 다른 방법에 따라 행해질 수 있다. 본 절에서는, 상술된 실시예의 변형예로서, 송신처의 직감적인 지정을 행하는 것을 가능하게 하는 다른 방법에 대해 설명한다.
도 17은 일 변형예에 따른 선택부(186)에 의한 송신처의 선택에 대해 설명하는 설명도이다.
도 17을 참조하면, 환경 맵에 포함되는 통신 장치(20a, 20b 및 20c)가 도시된다. 통신 장치(20a)의 화면 상에는 데이터 D1 및 D2를 각각 나타내는 2개의 아이콘이 표시되어 있다. 도 17에 도시된 상황에서, 예를 들어, 데이터 D2를 통신 장치(20b)에 송신하기를 원하는 유저는 실제로 통신 장치(20b) 위에 통신 장치(20a)를 유지하고, 데이터 D2를 나타내는 아이콘을 클릭 또는 탭한다. 그렇다면, 통신 장치(20a)는 유저 입력을 검지하고, 유저 입력 신호 IN을 통신 제어 장치(100)에 송신한다. 통신 제어 장치(100)의 검출부(184)는 유저 입력 신호 IN을 검출한다.
이 때, 통신 장치(20a)의 위치는 환경 맵의 세계 좌표계(x, y, z)에서의 3차원 위치 Xs로서 환경 맵에 유지된다. 여기서, 선택부(186)는 통신 장치(20a)의 위치 Xs를 기점으로 지정하고, 수직선에 따라 아래쪽으로 연장하는 직선 L2를 환경 맵의 세계 좌표계에서 특정한다. 선택부(186)는 직선 L2 상에 또는 직선 L2의 적어도 근방에 위치되는 통신 장치(20)를 데이터 송신처 장치로서 선택한다. 도 17의 예에서, 통신 장치(20b)는 직선 L2 상에 위치된다. 한편, 통신 장치(20c)는 직선 L2로부터 이격되어 위치된다. 여기서, 선택부(186)는 통신 장치(20b)를, 통신 장치(20a)로부터의 데이터의 송신처의 장치로서 선택한다.
도 18은 일 변형예에 따른 선택부(186)에 의한 송신처 선택 처리의 흐름의 예를 나타내는 흐름도이다.
도 18을 참조하면, 선택부(186)는 우선 환경 맵으로부터 각 통신 장치의 위치를 취득한다(스텝 S402). 다음, 선택부(186)는 송신원의 통신 장치(20)의 위치를 기점으로 지정하고, 수직선에 따라 아래쪽으로 연장하는 직선 L2를 특정한다(스텝 S404).
다음, 선택부(186)는 직선 L2의 적어도 근방에(즉, 직선 L2 상에 또는 직선 L2의 근방에) 다른 통신 장치가 존재하는지 여부를 판정한다(스텝 S406). 예를 들어, 직선 L2로부터의 거리가 미리 설정된 임계값보다 작은 장치는 직선 L2의 근방에 위치된다고 판정될 수 있다. 여기서, 직선 L2의 근방에 다른 통신 장치가 위치되지 않는 경우에는, 선택부(186)는 통신 제어부(188)로 에러를 출력하여(스텝 S414), 처리를 종료한다. 한편, 직선 L2의 적어도 근방에 다른 통신 장치가 존재하는 경우에는, 처리는 스텝 S408로 진행한다.
다음, 선택부(186)는 직선 L2의 적어도 근방에 복수의 다른 통신 장치가 존재하는지 여부를 판정한다(스텝 S408). 여기서, 직선 L2의 적어도 근방에 복수의 다른 통신 장치가 존재하는 경우에는, 선택부(186)는 송신원의 통신 장치(20)에 가장 가까이 위치되는 통신 장치를 데이터 송신처 장치로서 선택한다(스텝 S410). 한편, 직선 L2의 적어도 근방에 하나의 다른 통신 장치만이 위치되는 경우에는, 선택부(186)는 그 다른 통신 장치를 데이터 송신처 장치로서 선택한다(스텝 S412).
이러한 변형예에 따른 송신처 선택 처리에 따르면, 유저는 통신 장치에 제공된 데이터가 중력에 의해 낙하되는 것 같이 이 데이터를 다른 통신 장치로 직감적으로 송신할 수 있다.
<5. 정리>
지금까지, 도 1 내지 도 18을 참조하여, 본 발명의 실시예에 따른 통신 장치(20) 및 통신 제어 장치(100), 및 통신 제어 장치(100)의 변형예에 대해서 상세하게 설명했다. 통신 제어 장치(100)에 따르면, 실제 공간을 촬영하여 취득된 입력 화상에 기초하여, 복수의 통신 장치(20)에 대응하는 복수의 대상을 포함하는 환경 맵이 동적으로 구축된다. 데이터 송신원의 통신 장치(20)에 대한 유저 입력이 검출되면, 유저 입력에 의해 지정된 방향에 기초하여 환경 맵으로부터 선택되는 데이터 송신처 장치에, 지정된 데이터가 송신된다. 대안적으로, 유저 입력에 의해 지정되는 방향 대신에, 중력이 작용하는 방향에 기초하여 데이터 송신처 장치를 선택할 수 있다. 이로써, 유저는 PC로부터 프린터로, 디지털 카메라로부터 PC로, 휴대 단말기로부터 PC로의 다양한 형태의 데이터 송신을, 송신원 장치에 대한 단순한 유저 입력(예를 들어, 드래그, 클릭 등과 같은 단순하고 용이한 조작)에 의해 직감적으로 행할 수 있다.
데이터 송신처로서 선택되는 장치는 환경 맵에서 데이터 송신원 장치에 대해, 유저 입력에 의해 지정된 방향 또는 중력이 작용하는 방향으로 위치된 장치일 수 있다. 통신 제어 장치(100)는 환경 맵에서의 데이터 송신원 장치의 위치 등의 정보에 기초하여, 데이터 송신처 장치를 선택한다. 즉, 환경 맵을 응용한 데이터 송신처 장치의 선택을 사용하여, 통신 장치의 위치 관계에 대응하는 직감적인 유저 인터페이스를 제공할 수 있다. 이 때, 지정된 방향 또는 중력이 작용하는 방향으로 복수의 통신 장치가 존재하는 경우에는, 통신 제어 장치(100)는 데이터 송신원 장치에 가장 가까이 위치되는 장치를 데이터 송신처로서 선택할 수 있다. 즉, 실제 공간에 대응하는 환경 맵을 응용함으로써, 복수의 통신 장치가 존재하는 환경에서도 데이터 송신처를 고유하게 선택할 수 있다.
통신 제어 장치(100)는 데이터 송신원의 장치로부터 데이터 송신처의 장치로 데이터가 송신될 때, 데이터 송신을 나타내는 애니메이션을 표시 장치가 표시하게 할 수 있다. 통신 제어 장치(100)는 환경 맵에서의 데이터 송신원 장치 및 데이터 송신처 장치의 위치에 기초하여 애니메이션을 표시함으로써, 데이터 송신처 장치/데이터 송신원 장치를 유저가 용이하게 알게 할 수 있다.
본 명세서에서는, 통신 장치(20)와 통신 제어 장치(100)가 물리적으로 별도의 본체로 구성되는 예에 대해서 주로 설명하였다. 그러나, 카메라 및 HMD를 제외하는 통신 제어 장치(100)의 여러 기능은 데이터 송신원의 통신 장치(20)와 물리적으로 동일한 장치에 장착될 수 있다.
본 명세서에서 설명된 통신 장치(20) 및 통신 제어 장치(100)에 의한 일련의 처리는 일반적으로 소프트웨어를 사용하여 실현된다. 일련의 처리를 실현하는 소프트웨어를 구성하는 프로그램은, 예를 들어, 각 장치의 내부 또는 외부의 기억 매체에 미리 저장된다. 각 프로그램은, 예를 들어, 실행 시에 각 장치의 RAM(random access memory)에 판독되어, CPU 등과 같은 프로세서에 의해 실행된다.
당업자는 첨부된 청구범위 또는 그 균등물의 범위 이내라면 설계 요건들 및 다른 요인에 따라 다양한 변형, 조합, 서브조합 및 변경이 행해질 수 있다는 것을 이해할 것이다.
본 출원은 2010년 2월 4일자로 출원된 일본 특허 출원 제2010-022973호에 개시된 것에 관한 요지를 포함하며, 그 전체 내용은 본 명세서에 참조로서 원용된다.
1: 환경
10: 테이블
20a, 20b, 20c 및 20d: 통신 장치
40: 기억부
100: 통신 제어 장치

Claims (12)

  1. 통신 제어 장치로서,
    하나 이상의 통신 장치의 외관의 특징을 나타내는 특징 데이터를 기억하는 데이터 기억부와,
    실제 공간을 촬영하여 취득된 입력 화상 및 상기 데이터 기억부에 기억되어 있는 상기 특징 데이터에 기초하여, 상기 실제 공간 내에 존재하는 통신 장치의 위치를 나타내는 환경 맵을 구축하는 환경 맵 구축부와,
    제1 통신 장치에 제공되는 임의의 데이터와 방향을 지정하는, 상기 제1 통신 장치로의 유저 입력을 검출하는 검출부와,
    상기 유저 입력에 의해 지정된 상기 방향에 기초하여, 지정된 상기 데이터의 송신처가 되는 제2 통신 장치를 상기 환경 맵으로부터 선택하는 선택부와,
    상기 제1 통신 장치에 제공되는 상기 데이터를 상기 제1 통신 장치로부터 상기 제2 통신 장치로 송신하는 통신 제어부를 포함하는, 통신 제어 장치.
  2. 제1항에 있어서, 상기 선택부는 상기 환경 맵에서 상기 제1 통신 장치에 대해 상기 유저 입력에 의해 지정된 상기 방향으로 위치하는 통신 장치를 상기 제2 통신 장치로서 선택하는, 통신 제어 장치.
  3. 제2항에 있어서, 상기 선택부는 상기 환경 맵에서의 상기 제1 통신 장치의 위치 및 자세와 상기 유저 입력에 의해 지정된 상기 방향에 기초하여, 상기 제1 통신 장치를 기점으로 하는 하나의 직선을 특정하고, 상기 직선의 적어도 근방에 위치하는 통신 장치를 상기 제2 통신 장치로서 선택하는, 통신 제어 장치.
  4. 제2항에 있어서, 상기 환경 맵에서 상기 제1 통신 장치에 대해 상기 유저 입력에 의해 지정된 상기 방향으로 복수의 통신 장치가 위치하는 경우에는, 상기 선택부는 상기 복수의 통신 장치 중에서 상기 제1 통신 장치에 가장 가까이 위치하는 통신 장치를 상기 제2 통신 장치로서 선택하는, 통신 제어 장치.
  5. 제1항에 있어서, 상기 제1 통신 장치로부터 상기 제2 통신 장치로 상기 데이터가 송신될 때, 데이터 송신을 나타내는 애니메이션을 표시 장치가 표시하게 하는 표시 제어부를 더 포함하는, 통신 제어 장치.
  6. 제1항에 있어서, 상기 유저 입력은 상기 제1 통신 장치에 제공되는 화면 상에 표시된 아이콘을 드래그하는 것이고, 어떤 아이콘이 유저에 의해 드래그되는지에 따라, 상기 제1 통신 장치로부터 송신될 상기 데이터가 특정되는, 통신 제어 장치.
  7. 하나 이상의 통신 장치의 외관의 특징을 나타내는 특징 데이터를 기억하는 기억 매체를 포함하는 통신 제어 장치에 의한 통신 제어 방법으로서,
    실제 공간을 촬영하여 취득된 입력 화상 및 상기 특징 데이터에 기초하여, 상기 실제 공간 내에 존재하는 통신 장치의 위치를 나타내는 환경 맵을 구축하는 단계와,
    제1 통신 장치에 제공되는 임의의 데이터와 방향을 지정하는, 상기 제1 통신 장치로의 유저 입력을 검출하는 단계와,
    상기 유저 입력에 의해 지정된 상기 방향에 기초하여, 지정된 상기 데이터의 송신처가 되는 제2 통신 장치를 상기 환경 맵으로부터 선택하는 단계와,
    상기 제1 통신 장치에 제공되는 상기 데이터를 상기 제1 통신 장치로부터 상기 제2 통신 장치로 송신하는 단계를 포함하는, 통신 제어 방법.
  8. 하나 이상의 통신 장치의 외관의 특징을 나타내는 특징 데이터를 기억하는 기억 매체를 포함하는 통신 제어 장치를 제어하는 컴퓨터를
    실제 공간을 촬영하여 취득된 입력 화상 및 데이터 기억부에 기억되는 상기 특징 데이터에 기초하여, 상기 실제 공간 내에 존재하는 통신 장치의 위치를 나타내는 환경 맵을 구축하는 환경 맵 구축부와,
    제1 통신 장치에 제공되는 임의의 데이터와 방향을 지정하는, 상기 제1 통신 장치로의 유저 입력을 검출하는 검출부와,
    상기 유저 입력에 의해 지정된 상기 방향에 기초하여, 지정된 상기 데이터의 송신처가 되는 제2 통신 장치를 상기 환경 맵으로부터 선택하는 선택부와,
    상기 제1 통신 장치에 제공되는 상기 데이터를 상기 제1 통신 장치로부터 상기 제2 통신 장치로 송신하는 통신 제어부로서 기능하게 하는, 프로그램.
  9. 통신 제어 장치로서,
    하나 이상의 통신 장치의 외관의 특징을 나타내는 특징 데이터를 기억하는 데이터 기억부와,
    실제 공간을 촬영하여 취득된 입력 화상 및 상기 데이터 기억부에 기억되어 있는 상기 특징 데이터에 기초하여, 상기 실제 공간 내에 존재하는 통신 장치의 위치를 나타내는 환경 맵을 구축하는 환경 맵 구축부와,
    제1 통신 장치에 제공되는 임의의 데이터를 지정하는, 상기 제1 통신 장치로의 유저 입력을 검출하는 검출부와,
    상기 환경 맵에서의 상기 제1 통신 장치의 위치에 기초하여, 지정된 상기 데이터의 송신처가 되는 제2 통신 장치를 상기 환경 맵으로부터 선택하는 선택부와,
    상기 제1 통신 장치에 제공되는 상기 데이터를 상기 제1 통신 장치로부터 상기 제2 통신 장치로 송신하는 통신 제어부를 포함하는, 통신 제어 장치.
  10. 제9항에 있어서, 상기 선택부는 상기 환경 맵에서 상기 제1 통신 장치 아래에 위치하는 통신 장치를 상기 제2 통신 장치로서 선택하는, 통신 제어 장치.
  11. 하나 이상의 통신 장치의 외관의 특징을 나타내는 특징 데이터를 기억하는 기억 매체를 포함하는 통신 제어 장치에 의한 통신 제어 방법으로서,
    실제 공간을 촬영하여 취득된 입력 화상 및 상기 특징 데이터에 기초하여, 상기 실제 공간 내에 존재하는 통신 장치의 위치를 나타내는 환경 맵을 구축하는 단계와,
    제1 통신 장치에 제공되는 임의의 데이터를 지정하는, 상기 제1 통신 장치로의 유저 입력을 검출하는 단계와,
    상기 환경 맵에서의 상기 제1 통신 장치의 위치에 기초하여, 지정된 상기 데이터의 송신처가 되는 제2 통신 장치를 상기 환경 맵으로부터 선택하는 단계와,
    상기 제1 통신 장치에 제공되는 상기 데이터를 상기 제1 통신 장치로부터 상기 제2 통신 장치로 송신하는 단계를 포함하는, 통신 제어 방법.
  12. 하나 이상의 통신 장치의 외관의 특징을 나타내는 특징 데이터를 기억하는 기억 매체를 포함하는 통신 제어 장치를 제어하는 컴퓨터를
    실제 공간을 촬영하여 취득된 입력 화상 및 데이터 기억부에 기억되는 상기 특징 데이터에 기초하여, 상기 실제 공간 내에 존재하는 통신 장치의 위치를 나타내는 환경 맵을 구축하는 환경 맵 구축부와,
    제1 통신 장치에 제공되는 임의의 데이터를 지정하는, 상기 제1 통신 장치로의 유저 입력을 검출하는 검출부와,
    상기 환경 맵에서의 상기 제1 통신 장치의 위치에 기초하여, 지정된 상기 데이터의 송신처가 되는 제2 통신 장치를 상기 환경 맵으로부터 선택하는 선택부와,
    상기 제1 통신 장치에 제공되는 상기 데이터를 상기 제1 통신 장치로부터 상기 제2 통신 장치로 송신하는 통신 제어부로서 기능하게 하는, 프로그램.
KR1020110008300A 2010-02-04 2011-01-27 통신 제어 장치, 통신 제어 방법 및 프로그램 KR20110090789A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010022973A JP5488011B2 (ja) 2010-02-04 2010-02-04 通信制御装置、通信制御方法及びプログラム
JPJP-P-2010-022973 2010-02-04

Publications (1)

Publication Number Publication Date
KR20110090789A true KR20110090789A (ko) 2011-08-10

Family

ID=43901540

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110008300A KR20110090789A (ko) 2010-02-04 2011-01-27 통신 제어 장치, 통신 제어 방법 및 프로그램

Country Status (8)

Country Link
US (1) US8717388B2 (ko)
EP (1) EP2354894A3 (ko)
JP (1) JP5488011B2 (ko)
KR (1) KR20110090789A (ko)
CN (1) CN102193725A (ko)
BR (1) BRPI1100726A2 (ko)
RU (1) RU2011103164A (ko)
TW (1) TWI446175B (ko)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5255674B2 (ja) * 2011-06-14 2013-08-07 シャープ株式会社 データ送信操作機器、および、データ送信制御方法
EP2602691A1 (en) * 2011-12-05 2013-06-12 Alcatel Lucent Method for gesture control, gesture server device and sensor input device
US9563278B2 (en) * 2011-12-19 2017-02-07 Qualcomm Incorporated Gesture controlled audio user interface
JP6012093B2 (ja) * 2012-03-27 2016-10-25 シャープ株式会社 データ送信操作機器、および、データ送信制御方法
CN102932412B (zh) * 2012-09-26 2016-02-03 华为终端有限公司 文件传输方法及系统、主控设备
JP6155593B2 (ja) * 2012-10-15 2017-07-05 株式会社ニコン システム、装置及び方法
JP5787099B2 (ja) * 2012-11-06 2015-09-30 コニカミノルタ株式会社 案内情報表示装置
JP6225469B2 (ja) * 2013-04-26 2017-11-08 株式会社ニコン 装置、情報処理装置、方法、及び、プログラム
JP2015115046A (ja) 2013-12-16 2015-06-22 ソニー株式会社 情報処理装置、プログラム、情報処理方法及び情報処理システム
JP6261038B2 (ja) * 2014-02-27 2018-01-17 日本電気通信システム株式会社 空間認識システム及び空間認識方法
IN2014DE00899A (ko) * 2014-03-28 2015-10-02 Samsung Electronics Co Ltd
JP6292181B2 (ja) * 2014-06-27 2018-03-14 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理システム、その制御方法及びプログラム
KR102332752B1 (ko) * 2014-11-24 2021-11-30 삼성전자주식회사 지도 서비스를 제공하는 전자 장치 및 방법
US9940521B2 (en) * 2015-02-27 2018-04-10 Sony Corporation Visibility enhancement devices, systems, and methods
JP6953948B2 (ja) * 2017-09-22 2021-10-27 富士フイルムビジネスイノベーション株式会社 情報処理装置、プログラム及び情報送信システム
GB2574882B (en) 2018-06-22 2020-08-12 Sony Interactive Entertainment Inc Method and system for displaying a virtual object
JP7274782B1 (ja) 2021-12-10 2023-05-17 株式会社 Sai 建屋内構造物認識システム及び建屋内構造物認識方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2332124Y (zh) * 1998-07-03 1999-08-04 机械工业部广州电器科学研究所 智能型家电遥控器
JP4178697B2 (ja) 1999-11-18 2008-11-12 ソニー株式会社 携帯型情報処理端末、情報入出力システム及び情報入出力方法
JP4332964B2 (ja) * 1999-12-21 2009-09-16 ソニー株式会社 情報入出力システム及び情報入出力方法
JP2002132618A (ja) * 2000-10-27 2002-05-10 Sony Corp 情報処理装置、情報提供媒体、情報処理方法及び情報処理システム
JP3944824B2 (ja) * 2001-11-09 2007-07-18 ソニー株式会社 データ通信装置、表示方法、プログラム及びプログラム格納媒体
JP3938892B2 (ja) * 2002-08-16 2007-06-27 富士フイルム株式会社 情報授受システム
KR100746995B1 (ko) * 2005-09-22 2007-08-08 한국과학기술원 직관적인 실제 공간적 조준에 따른 시스템 및 그식별방법과 통신방법
JP2008299619A (ja) * 2007-05-31 2008-12-11 Toshiba Corp モバイル機器、データ転送方法、およびデータ転送システム
JP5380789B2 (ja) * 2007-06-06 2014-01-08 ソニー株式会社 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
US8397168B2 (en) * 2008-04-05 2013-03-12 Social Communications Company Interfacing with a spatial virtual communication environment
JP2009205556A (ja) * 2008-02-28 2009-09-10 Panasonic Corp ユーザインタフェース装置
US8077157B2 (en) * 2008-03-31 2011-12-13 Intel Corporation Device, system, and method of wireless transfer of files
JP2010154344A (ja) * 2008-12-25 2010-07-08 Kyocera Corp 情報処理装置、通信装置、無線通信システム、および、データ送信方法
US8312392B2 (en) * 2009-10-02 2012-11-13 Qualcomm Incorporated User interface gestures and methods for providing file sharing functionality

Also Published As

Publication number Publication date
EP2354894A3 (en) 2015-01-28
JP2011164666A (ja) 2011-08-25
JP5488011B2 (ja) 2014-05-14
US8717388B2 (en) 2014-05-06
BRPI1100726A2 (pt) 2012-12-04
US20110187725A1 (en) 2011-08-04
RU2011103164A (ru) 2012-08-10
TWI446175B (zh) 2014-07-21
CN102193725A (zh) 2011-09-21
TW201145024A (en) 2011-12-16
EP2354894A2 (en) 2011-08-10

Similar Documents

Publication Publication Date Title
KR20110090789A (ko) 통신 제어 장치, 통신 제어 방법 및 프로그램
US20220414993A1 (en) Image processing apparatus, image processing method, and program
JP5617246B2 (ja) 画像処理装置、物体選択方法及びプログラム
JP5776201B2 (ja) 情報処理装置、情報共有方法、プログラム及び端末装置
JP3926837B2 (ja) 表示制御方法および装置、プログラム、並びに携帯機器
JP5942456B2 (ja) 画像処理装置、画像処理方法及びプログラム
US9367961B2 (en) Method, device and storage medium for implementing augmented reality
WO2014169692A1 (en) Method,device and storage medium for implementing augmented reality
JP2013206322A (ja) 情報処理装置、情報処理システム及び情報処理方法
JP2012212345A (ja) 端末装置、オブジェクト制御方法及びプログラム
KR20120092496A (ko) 정보 처리 장치, 정보 처리 방법, 프로그램 및 정보 처리 시스템
WO2015093130A1 (ja) 情報処理装置、情報処理方法およびプログラム
CN115904188A (zh) 户型图的编辑方法、装置、电子设备及存储介质
JP6304305B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP7373090B1 (ja) 情報処理システム、情報処理装置、プログラム及び情報処理方法
JP7335335B2 (ja) 情報処理装置、情報処理方法、及びプログラム
CN111399631B (zh) 虚拟内容显示方法、装置、终端设备及存储介质
JP7299478B2 (ja) オブジェクト姿勢制御プログラムおよび情報処理装置
CN117950537A (zh) 三维扫描系统的界面控制方法和三维扫描系统
CN115760584A (zh) 一种图像处理方法及相关设备
JP2011123748A (ja) 携帯端末、描画システム及び描画方法

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