KR101285076B1 - 인간의 행동을 모방하는 가상 객체를 이용한 통신 방법 및 그 방법에 따른 통신 시스템 - Google Patents

인간의 행동을 모방하는 가상 객체를 이용한 통신 방법 및 그 방법에 따른 통신 시스템 Download PDF

Info

Publication number
KR101285076B1
KR101285076B1 KR1020110091828A KR20110091828A KR101285076B1 KR 101285076 B1 KR101285076 B1 KR 101285076B1 KR 1020110091828 A KR1020110091828 A KR 1020110091828A KR 20110091828 A KR20110091828 A KR 20110091828A KR 101285076 B1 KR101285076 B1 KR 101285076B1
Authority
KR
South Korea
Prior art keywords
pose
sender
action
behavior
index
Prior art date
Application number
KR1020110091828A
Other languages
English (en)
Other versions
KR20130028344A (ko
Inventor
조경은
엄기현
성연식
조성재
Original Assignee
동국대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 동국대학교 산학협력단 filed Critical 동국대학교 산학협력단
Priority to KR1020110091828A priority Critical patent/KR101285076B1/ko
Publication of KR20130028344A publication Critical patent/KR20130028344A/ko
Application granted granted Critical
Publication of KR101285076B1 publication Critical patent/KR101285076B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/34Browsing; Visualisation therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5854Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using shape and object relationship
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/783Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/7837Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using objects detected or recognised in the video content
    • G06F16/784Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using objects detected or recognised in the video content the detected or recognised objects being people
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Library & Information Science (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Processing Or Creating Images (AREA)

Abstract

본 발명은 인간의 행동을 모방하는 가상 객체를 이용한 통신 방법 및 그 방법에 따른 통신 시스템에 관한 것으로, 본 발명에 따른 송신측의 통신 방법은, 송신자의 행동을 촬영한 영상을 입력받고, 입력된 영상으로부터 배경을 분리함으로써 송신자의 실루엣을 추출하고, 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 복수 개의 대표 포즈가 미리 저장된 데이터 구조체를 이용하여 실루엣과 가장 유사한 포즈를 선택함으로써 송신자의 행동에 대응하는 포즈의 인덱스를 추정하며, 추정된 포즈의 인덱스를 포함하는 메시지를 생성하여 수신자에게 전송한다.

Description

인간의 행동을 모방하는 가상 객체를 이용한 통신 방법 및 그 방법에 따른 통신 시스템{Communication method using virtual object emulating behavior of human, and communication system thereof}
본 발명은 아바타(avatar)와 같은 가상 객체를 이용한 통신 방법 및 그 방법에 따른 통신 시스템에 관한 것으로, 특히 송신자 및 수신자간의 통신에 있어서 송신자의 행동을 가상 객체가 그대로 모방하고 그 행동을 수신자에게 표시하는 통신 방법, 그 방법을 기록한 기록매체, 및 그 방법에 따른 통신 시스템에 관한 것이다.
기술의 진보에 따라 사용자 단말기들은 상시로 네트워크에 연결되어 데이터 송수신이 가능해졌으며, 이에 따라 네트워크를 통한 커뮤니케이션 기술 또한 더불어 발전하게 되었다. 이러한 네트워크 커뮤니케이션 수단으로 오늘날 널리 활용되고 있는 것이 인스턴트 메신저(Instant Messenger) 내지 화상 통신 시스템이다. 인스턴트 메신저란 인터넷을 통해 쪽지, 파일, 자료들을 실시간 전송할 수 있는 서비스로 채팅이나 전화와 마찬가지로 실시간으로 의사소통이 가능하다는 특징을 갖는다. 동일한 메신저 프로그램을 설치한 사용자들은 별도의 웹사이트와의 연결 없이도 단말기 대 단말기로 직접 통신기능이 가능하다. 별도의 인터넷이나 PC 통신 서비스에 가입하지 않고도 메신저 프로그램 설치만으로 상호 간의 대화가 가능하다.
이러한 메신저 프로그램을 비롯하여 다양한 통신 서비스들은 최근 음성이나 화상 등의 데이터를 첨부하여 송수신하는 수준으로 진화하기에 이르렀으나, 다수의 사람이 동시에 화상을 통해서 데이터를 주고 받을 때 발생되는 데이터량이 상대적으로 크다는 점이 문제점으로 지적되었다. 뿐만 아니라, 네트워크의 물리적인 한계 내지 제약 조건들로 인해 통신 시스템을 통해 실시간으로 다수의 영상을 처리하기 어려운 문제가 발생할 수 있다. 따라서, 통신 시스템을 통해 영상과 같이 대용량 데이터를 주고 받음에 있어서 송수신 데이터의 크기를 줄이기 위한 기술적 수단이 요구된다.
본 발명이 해결하고자 하는 기술적 과제는 통신 시스템을 통해 영상 데이터와 같은 대용량 데이터를 주고 받음에 있어서 그 데이터의 크기로 인해 원활한 서비스가 제공되지 못하는 한계를 극복하고, 이러한 대용량 영상 데이터로 인해 네트워크의 트래픽이 증가하는 문제점을 해결하고자 한다.
상기 기술적 과제를 해결하기 위하여, 본 발명의 일 실시예에 따른 송신측의 통신 방법은, 송신자의 행동을 촬영한 영상을 입력받는 단계; 상기 입력된 영상으로부터 배경을 분리함으로써 상기 송신자의 실루엣(silhouette)을 추출하는 단계; 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 복수 개의 대표 포즈(pose)가 미리 저장된 데이터 구조체를 이용하여, 상기 추출된 실루엣과 가장 유사한 포즈를 선택함으로써 상기 송신자의 행동에 대응하는 포즈의 인덱스를 추정하는 단계; 및 상기 추정된 포즈의 인덱스를 포함하는 메시지를 생성하여 수신자에게 전송하는 단계;를 포함한다.
상기된 송신측의 통신 방법에서, 상기 데이터 구조체는 상기 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 복수 개의 대표 포즈로 구성된 결정 트리(decision tree)이고, 상기 포즈의 인덱스를 추정하는 단계는, 상기 추출된 실루엣의 영상값을 이용하여 상기 결정 트리 내에서 상기 추출된 실루엣과 가장 유사한 포즈를 탐색하는 단계; 및 상기 탐색 결과 획득된 노드에 저장된 포즈의 인덱스를 상기 송신자의 행동에 대응하는 포즈의 인덱스로 결정하는 단계;를 포함한다.
또한, 상기된 송신측의 통신 방법에서 상기 데이터 구조체는, 상기 인간의 행동을 포함하는 시범 영상으로부터 복수 개의 후보 포즈를 추출하고, 상기 추출된 후보 포즈로부터 복수 개의 대표 포즈를 자동으로 선택하며, 상기 선택된 대표 포즈로부터 각 레벨(level)의 부모 노드의 임계치를 기준으로 상기 부모 노드의 자식 노드들이 양분되도록 구성된 결정 트리인 것이 바람직하다.
상기 기술적 과제를 해결하기 위하여, 본 발명의 일 실시예에 따른 수신측의 통신 방법은, 송신자의 행동에 대응하는 포즈의 인덱스를 포함하는 메시지를 수신하는 단계; 상기 수신된 메시지에 포함된 포즈의 인덱스와 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 행위 데이터베이스를 이용하여 상기 송신자에 대응하는 가상 객체에 대한 일련의 행위 계획을 생성하는 단계; 및 상기 생성된 일련의 행위 계획에 따라 상기 가상 객체를 재생함으로써 상기 송신자의 메시지를 수신자에게 전달하는 단계;를 포함한다.
또한, 상기된 수신측의 통신 방법에서 상기 행위 데이터베이스는, 상기 인간의 행동을 포함하는 시범 영상으로부터 추출된 일 순간의 포즈에 대한 정보를 저장하는 행동 데이터베이스로부터 적어도 둘 이상의 행동을 선택하고, 상기 선택된 행동에 대한 지속 시간과 순서를 할당함으로써 설정된 복수 개의 행위를 저장한다.
나아가, 이하에서는 상기 기재된 인간의 행동을 모방하는 가상 객체를 이용한 통신 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
상기 기술적 과제를 해결하기 위하여, 본 발명의 일 실시예에 따른 송신측의 통신 시스템은, 송신자의 행동을 촬영하는 카메라; 상기 촬영된 영상으로부터 배경을 분리함으로써 상기 송신자의 실루엣을 추출하는 실루엣 추출부; 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 복수 개의 대표 포즈가 미리 저장된 데이터 구조체를 이용하여, 상기 추출된 실루엣과 가장 유사한 포즈를 선택함으로써 상기 송신자의 행동에 대응하는 포즈의 인덱스를 추정하는 포즈 추정부; 및 상기 추정된 포즈의 인덱스를 포함하는 메시지를 생성하여 수신자에게 전송하는 메시지 생성부;를 포함한다.
또한, 상기된 송신측의 통신 시스템은, 상기 인간의 행동을 포함하는 시범 영상으로부터 추출된 일 순간의 포즈에 대한 정보를 행동 데이터베이스에 저장하는 행동 생성부; 및 상기 행동 데이터베이스로부터 적어도 둘 이상의 행동을 선택하고, 상기 선택된 행동에 대한 지속 시간과 순서를 할당함으로써 설정된 복수 개의 행위를 상기 행위 데이터베이스에 저장하는 행위 생성부;를 더 포함한다.
상기 기술적 과제를 해결하기 위하여, 본 발명의 일 실시예에 따른 수신측의 통신 시스템은, 송신자의 행동에 대응하는 포즈의 인덱스를 포함하는 메시지를 수신하는 수신부; 상기 수신된 메시지에 포함된 포즈의 인덱스와 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 행위 데이터베이스를 이용하여 상기 송신자에 대응하는 가상 객체에 대한 일련의 행위 계획을 생성하는 행위 계획부; 및 상기 생성된 일련의 행위 계획에 따라 상기 가상 객체를 재생함으로써 상기 송신자의 메시지를 수신자에게 전달하는 재생부;를 포함한다.
또한, 상기된 수신측의 통신 시스템은, 상기 인간의 행동을 포함하는 시범 영상으로부터 추출된 일 순간의 포즈에 대한 정보를 행동 데이터베이스에 저장하는 행동 생성부; 및 상기 행동 데이터베이스로부터 적어도 둘 이상의 행동을 선택하고, 상기 선택된 행동에 대한 지속 시간과 순서를 할당함으로써 설정된 일련의 행위를 상기 행위 데이터베이스에 저장하는 행위 생성부;를 더 포함한다.
본 발명의 다양한 실시예들은 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 복수 개의 대표 포즈를 이용하여 송신자의 행동에 대응하는 포즈의 인덱스 값만을 수신자에게 전송하고, 수신자를 이로부터 송신자의 행동을 재생함으로써, 대용량 영상 데이터의 송수신 없이도 송신자 및 수신자 간에 원활한 통신이 가능하며, 영상 데이터를 주고 받는데 필요한 네트워크 트래픽을 감소시킬 수 있다.
도 1은 본 발명의 실시예들에 따른 통신 시스템에서 활용될 수 있는 다양한 사용자 입력을 예시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 인간의 행동을 모방하는 가상 객체를 이용한 송신측의 통신 방법을 도시한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 인간의 행동을 모방하는 가상 객체를 이용한 수신측의 통신 방법을 도시한 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 인간의 행동을 모방하는 가상 객체를 이용한 통신 시스템의 전체 구성을 도시한 블록도이다.
도 5는 본 발명의 일 실시예에 따른 통신 방법 및 이에 따른 시스템에서 송신자의 행동을 촬영한 영상으로부터 실루엣을 추출하는 과정을 예시한 도면이다.
도 6은 본 발명의 일 실시예에 따른 송신측의 통신 방법 및 이에 따른 시스템에서 포즈 데이터베이스 내에 저장되는 데이터를 예시한 도면이다.
도 7은 본 발명의 일 실시예에 따른 송신측의 통신 방법 및 이에 따른 시스템에서 포즈의 인덱스를 추정하기 위해 활용되는 결정 트리를 예시한 도면이다.
도 8은 본 발명의 일 실시예에 따른 송신측의 통신 방법 및 이에 따른 시스템에서 생성된 메시지를 예시한 도면이다.
도 9는 본 발명의 일 실시예에 따른 수신측의 통신 방법 및 이에 따른 시스템에서 행동(action) 데이터베이스 내에 저장되는 데이터를 예시한 도면이다.
도 10은 본 발명의 일 실시예에 따른 수신측의 통신 방법 및 이에 따른 시스템에서 행위(behavior) 데이터베이스 내에 저장되는 데이터를 예시한 도면이다.
도 11은 본 발명의 일 실시예에 따른 수신측의 통신 방법 및 이에 따른 시스템에서 행위 계획부가 생성하는 가상 객체에 대한 일련의 행위 계획을 예시한 도면이다.
본 발명의 실시예들을 설명하기에 앞서, 우선 본 발명의 실시예들이 구현되는 통신 서비스(메신저 서비스 또는 실시간 영상 채팅 서비스)의 특징에 대해 소개하고, 이러한 실시예들이 구현되는 환경의 특징으로부터 안출될 수 있는 본 발명의 기본적인 아이디어를 제시하고자 한다.
앞서 간단히 소개한 바와 같이 통신 서비스에 참여하는 사용자들 간에 영상 정보를 직접 송수신할 경우 실시간 영상 정보의 특징으로 인해 많은 네트워크 트래픽을 발생시킨다. 따라서, 이하에서 제안되는 본 발명의 다양한 실시예들은 직접 이러한 영상 정보를 전송하지 않고, 단지 영상 정보를 나타낼 수 있는 코드(code)(이하에서는 영상의 특정 포즈, 단편적인 행동, 일련의 행위 등을 식별하기 위한 인덱스라고 명명하자.) 정보만을 수신자에게 전달한다. 그러면, 수신자는 이러한 인덱스만을 수신하여 송신자의 행동이 어떠한 것인지는 재현하게 된다.
이를 위해 본 발명의 실시예들은 사전에 시범(demonstration) 영상을 통해 인간의 행동을 모방하기 위한 대표 영상들을 자동으로 생성하고, 데이터베이스를 구축한다. 이 때, 대표 영상들은 각각의 대표 영상들과 이에 부여된 고유 식별자(포즈 인덱스를 의미한다.)가 매칭되어 저장된다. 또한, 이러한 대표 영상들은 시범 영상 내에 존재하는 다양한 사용자 포즈들 중에서 각각의 행동을 가장 잘 나타내는 대표적인 포즈로서 선택되는 것이 바람직하다. 따라서, 본 발명의 실시예들은 이러한 대표 영상을 선택하기 위한 특별한 알고리즘을 제시하고 있다.
이제, 이러한 대표 영상들이 저장된 데이터베이스를 이용하여 카메라를 통해 실시간으로 입력되는 사용자의 영상에 대응하는 대표 영상의 인덱스 값을 결정할 수 있고, 결정된 인덱스 값은 수신자에게 전송된다. 인덱스 값을 수신한 수신자는 송신자와 동일한 포즈 데이터베이스를 가지고 있어야 하며, 이로부터 영상을 재생할 수 있다. 이 때, 영상의 재생은 단지 일 순간의 포즈만을 재생하는 것이 아니라, 시간적 순서와 단일 포즈의 지속 시간을 고려하여 행동을 구성한다. 그리고 이를 기반으로 일련의 다양한 행위를 구성하여 재생할 수 있다. 이하에서 첨부된 도면을 참조하여 본 발명의 실시예들 및 그 구성요소들을 각각 구체적으로 설명한다.
도 1은 본 발명의 실시예들에 따른 통신 시스템에서 활용될 수 있는 다양한 사용자 입력을 예시한 도면으로서, 본 실시예들이 제안하는 통신 시스템은 송신자에 대응하는 가상 객체(예를 들어, 아바타가 될 수 있다.)를 이용하며, 다양한 입력 장치로부터 데이터를 입력받아 가상 객체를 제어하고 음성을 출력할 수 있다. 도 1에 예시된 사용자가 활용할 수 있는 입력 수단은 크게 네 가지이다.
첫째, 사용자는 마이크만 사용하여 통신 서비스를 이용할 수 있다. 휴대전화와 같이 빠르게 문자를 입력하는데 제약이 존재하는 경우 사용자의 음성을 통해서만 통신을 하는 경우에 해당한다. 이 경우에는 카메라가 없기 때문에 해당 사용자를 위한 가상 객체는 인식한 음성을 분석해서 자동으로 제어할 수 있다.
둘째, 카메라와 마이크가 없는 장치에서 사용자는 오직 키보드를 통해서 메시지를 입력할 수 있다. 이 경우의 사용자도 카메라가 없기 때문에 입력한 텍스트를 통해서 자동으로 가상 객체를 제어할 수 있다.
셋째, 사용자는 메시지를 전송하기 위해 카메라와 마이크를 모두 이용할 수 있다. 이 경우, 사용자는 키보드를 통한 텍스트 입력 없이도 영상과 음성을 발생시켜 아바타를 제어할 수 있다.
넷째, 사용자는 카메라와 키보드를 사용하여 메시지를 전송할 수 있다. 이러한 경우는 일반적으로는 언어에 장애가 있는 사용자에 유용할 것이다. 가상 객체는 카메라를 통해 입력받은 영상 데이터로부터 추출된 포즈 인덱스를 이용하여 제어되며, 별도로 입력된 텍스트는 텍스트 메시지로 활용될 수 있다.
본 발명의 다양한 실시예들에 따른 통신 시스템은 이상의 네 가지의 상황하에서도 모두 적용이 가능하나, 이하에서는 특히 영상 정보가 입력되는 경우의 데이터 처리를 중심으로 설명하도록 한다.
도 2는 본 발명의 일 실시예에 따른 인간의 행동을 모방하는 가상 객체를 이용한 송신측의 통신 방법을 도시한 흐름도로서, 다음과 같은 단계들을 포함한다.
210 단계에서, 통신 시스템을 구성하는 송신측 장치는 송신자의 행동을 촬영한 영상을 입력받는다. 이러한 영상은 통상적인 무비 카메라를 통해 촬영되어, 다수의 정지 화상이 시간의 흐름에 따라 연속적으로 배치된 동영상인 것이 일반적일 것이다.
220 단계에서, 송신 장치는 210 단계를 통해 입력된 영상으로부터 배경을 분리함으로써 상기 송신자의 실루엣(silhouette)을 추출한다. 입력된 영상으로부터 배경과 객체(사람이 될 것이다.)를 분리하기 위해, 사전에 배경 이미지를 저장해 놓을 경우, 이러한 배경 분리가 더욱 용이하다. 즉, 미리 저장된 배경 이미지와 입력된 영상 중 일 순간의 영상의 이미지 차이를 산출함으로써 객체의 실루엣을 추출할 수 있다. 물론 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 이러한 방법 이외에서 다양한 기술적 수단을 통해 영상으로부터 배경과 객체를 분리하는 것이 가능하다. 성능 향상을 위해 이렇게 추출된 실루엣으로부터 추가적으로 노이즈(noise)를 제거하는 것이 바람직하다.
230 단계에서, 송신 장치는 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 복수 개의 대표 포즈(pose)가 미리 저장된 데이터 구조체를 이용하여, 220 단계를 통해 추출된 실루엣과 가장 유사한 포즈를 선택함으로써 송신자의 행동에 대응하는 포즈의 인덱스를 추정한다. 이 때, 미리 저장된 데이터 구조체는 다양한 데이터 포맷이 활용될 수 있으나, 본 실시예에서는 결정 트리(decision tree)를 활용하는 방법을 제안하고 있다.
이러한 결정 트리는 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 복수 개의 대표 포즈로 구성된다. 보다 구체적으로, 결정 트리는, 인간의 행동을 포함하는 시범 영상으로부터 복수 개의 후보 포즈를 추출하고, 추출된 후보 포즈로부터 복수 개의 대표 포즈를 자동으로 선택하며, 선택된 대표 포즈로부터 각 레벨(level)의 부모 노드의 임계치를 기준으로 부모 노드의 자식 노드들이 양분되도록 구성된 결정 트리인 것이 바람직하다. 이를 위해, 결정 트리의 각 노드(node)는 포즈 데이터와 임계치의 쌍으로 정의될 수 있다.
이러한 결정 트리의 구조 하에서, 포즈의 인덱스를 추정하는 과정(220 단계를 통해 추출된 실루엣의 영상값을 이용하여 결정 트리 내에서 추출된 실루엣과 가장 유사한 포즈를 탐색하는 과정을 의미한다.)은 다음과 같이 수행될 수 있다.
첫째, 결정 트리의 루트(root) 노드로부터 220 단계를 통해 추출된 실루엣의 영상값과 결정 트리의 노드에 저장된 포즈의 유사도를 해당 노드에 저장된 제 1 임계치와 비교한다.
둘째, 비교 결과 유사도가 제 1 임계치보다 큰 경우에는 현재의 노드를 결과값으로 선택하여 반환한다. 즉, 현재의 노드에 저장된 대표 포즈가 카메라를 통해 촬영된 현재의 포즈와 가장 유사한 포즈임이 추정된다. 이에 반해, 만약 유사도가 제 1 임계치보다 작거나 같은 경우에는 유사도와 해당 노드에 저장된 제 2 임계치를 비교하여 종말 노드까지 탐색한 후 종말(leaf) 노드를 결과값으로 선택하여 반환한다. 이 때, 제 2 임계치는 결정 트리를 생성하는 과정에서 자신과 나머지 모두의 영상값을 비교하여 산출된 임계치 중 중간값으로 설정되는 것이 바람직하다.
이제, 이상과 같은 탐색 결과 획득된 노드에 저장된 포즈의 인덱스를 송신자의 행동에 대응하는 포즈의 인덱스로 결정한다.
240 단계에서, 송신 장치는 230 단계를 통해 추정된 포즈의 인덱스를 포함하는 메시지를 생성하여 수신자에게 전송한다.
한편, 이상의 송신측의 통신 방법은 송신자로부터 음성 또는 텍스트 중 적어도 하나를 입력받는 단계를 더 포함할 수 있다. 이 경우, 240 단계를 통해 생성되는 메시지는 입력된 음성 또는 텍스트 중 적어도 하나를 더 포함하여 수신자에게 전송할 수 있다.
이상의 단계들은 적어도 하나의 프로세서(processor)를 통해 수행될 수 있다. 이러한 프로세서는 상기된 일련의 영상 처리 및 결정 트리를 이용한 연산 과정을 처리한다. 나아가 이상의 송신 장치는 상기된 프로세서가 일련의 연산을 수행하는 과정에서 연산 그 자체 또는 임시 저장을 위한 공간으로서 사용되는 메모리(memory)를 더 포함할 수 있다. 물론, 이들 연산들을 상기된 프로세서와 메모리를 통해 수행하기 위해 부가적인 소프트웨어 코드(software code)가 활용될 수 있음은 당연하다.
도 3은 본 발명의 일 실시예에 따른 인간의 행동을 모방하는 가상 객체를 이용한 수신측의 통신 방법을 도시한 흐름도로서, 다음과 같은 단계들을 포함한다.
310 단계에서, 통신 시스템을 구성하는 수신측 장치는 송신자의 행동에 대응하는 포즈의 인덱스를 포함하는 메시지를 수신한다. 이 때, 포즈의 인덱스는 이상의 도 2를 통해 추정된 인덱스로서, 영상 데이터의 송수신 없이도 송신자의 행동을 모방하여 수신자에게 표시할 수 있는 수단에 해당한다.
320 단계에서, 수신 장치는 310 단계를 통해 수신된 메시지에 포함된 포즈의 인덱스와 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 행위 데이터베이스를 이용하여 상기 송신자에 대응하는 가상 객체에 대한 일련의 행위 계획을 생성한다.
이 때, 행위(behavior) 데이터베이스는, 인간의 행동을 포함하는 시범 영상으로부터 추출된 일 순간의 포즈에 대한 정보를 저장하는 행동(action) 데이터베이스로부터 적어도 둘 이상의 행동을 선택하고, 선택된 행동에 대한 지속 시간과 순서를 할당함으로써 설정된 다양한 행위를 저장한다. 이를 위해, 행위 데이터베이스는, 시간적으로 연속하는 2 개의 포즈 인덱스와 이에 대응하는 일련의 행위를 사상시켜(mapping) 저장하는 것이 바람직하다. 또한, 행동 데이터베이스는, 인간의 행동을 포함하는 시범 영상으로부터 후보 포즈를 수집하고, 수집된 후보 포즈로부터 자동으로 복수 개의 대표 행동을 선택하여 각각의 행동의 관절 각도와 함께 저장하는 것이 바람직하다. 각각의 데이터베이스의 구체적인 구조와 이를 구축하는 방법에 대해서는 이후 도 4를 통해 보다 자세히 설명한다.
330 단계에서, 수신 장치는 320 단계를 통해 생성된 일련의 행위 계획에 따라 상기 가상 객체를 재생함으로써 송신자의 메시지를 수신자에게 전달한다.
한편, 이상의 수신측의 통신 방법에서 310 단계를 통해 수신된 메시지는 송신자로부터 입력된 음성 또는 텍스트 중 적어도 하나를 더 포함할 수 있다. 이 경우, 330 단계의 가상 객체를 재생하는 단계는, 가상 객체와 더불어 상기 음성 또는 텍스트를 재생할 수 있다.
이상의 단계들은 적어도 하나의 프로세서를 통해 수행될 수 있다. 이러한 프로세서는 상기된 일련의 행동 데이터베이스 및 행위 데이터베이스를 자동으로 구축하고, 수신된 인덱스를 이용하여 상기된 데이터베이스들로부터 가상 객체에 대한 일련의 행위 계획을 생성하고 재생한다. 나아가 이상의 수신 장치는 상기된 프로세서가 일련의 연산을 수행하는 과정에서 연산 그 자체 또는 임시 저장을 위한 공간으로서 사용되는 메모리를 더 포함할 수 있다. 물론, 이들 연산들을 상기된 프로세서와 메모리를 통해 수행하기 위해 부가적인 소프트웨어 코드가 활용될 수 있음은 당연하다.
이상에서, 인간의 행동을 모방하는 가상 객체를 이용한 통신 방법을 각각 송신측과 수신측의 관점에서 개괄적으로 설명하였다. 이하에서는 이러한 통신 방법이 구현되는 통신 시스템의 개별 구성들을 중심으로 각각의 구성들의 기능과 역할을 구체적으로 설명한다.
도 4는 본 발명의 일 실시예에 따른 인간의 행동을 모방하는 가상 객체를 이용한 통신 시스템(400)의 전체 구성을 도시한 블록도로서, 크게 송신 장치(400A) 및 수신 장치(400B)로 구분된다. 각각의 구성 요소들을 순서대로 설명한다.
먼저 송신 장치(400A)를 살펴보자.
카메라(10)는 송신자의 행동을 촬영하는 입력 수단이다. 이러한 카메라(10)외에 텍스트 입력 장치(12)(예를 들어, 키보드가 될 수 있다.) 및 음성을 녹음할 수 있는 마이크로폰(microphone)(14) 등이 더 포함될 수 있으나, 여기서는 카메라(10)를 중심으로 한 영상 정보의 처리에 집중하도록 한다.
이미지 수신부(405)는 카메라(10)로부터 촬영된 영상을 전달받아 실루엣 추출부(410)에 전달한다.
실루엣 추출부(410)는 카메라(10)를 통해 촬영된 영상으로부터 배경을 분리함으로써 송신자의 실루엣을 추출한다. 앞서 설명한 바와 같이, 실루엣 추출부(410)는 이미지로부터 사람의 형태를 추출하여 실루엣을 생성하기 위해 배경 이미지를 미리 기록할 수 있다. 즉, 이미 기록한 배경 이미지와 실시간으로 전달받은 이미지와의 차이로부터 실루엣을 추출할 수 있다. 도 5를 참조하면, 송신자의 행동을 촬영한 영상 [A]로부터 추출된 실루엣 영상 [B]가 예시되어 있다. 이렇게 추출된 실루엣은 송신자의 행동을 추정하는 키(key)로서 활용된다.
포즈 추정부(420)는 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 복수 개의 대표 포즈가 미리 저장된 데이터 구조체를 이용하여, 실루엣 추출부(410)를 통해 추출된 실루엣과 가장 유사한 포즈를 선택함으로써 송신자의 행동에 대응하는 포즈의 인덱스를 추정한다. 이후, 추정된 포즈의 인덱스는 메시지 생성부(430)에 전달된다. 이 때, 데이터 구조체는 포즈 생성부(440) 및 결정 트리 생성부(450)에 의해 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 복수 개의 대표 포즈로 구성된 결정 트리인 것이 바람직하다.
이를 위해, 포즈 생성부(440)는 실루엣과의 비교를 위해 인간의 행동을 포함하는 시범 영상으로부터 추출된 복수 개의 후보 포즈를 포즈 후보 데이터베이스(415)에 저장하고, 후보 포즈로부터 자동으로 선택된 복수 개의 대표 포즈를 포즈 데이터베이스(445)에 저장한다. 메신저 서비스와 같은 통신 시스템은 포즈 데이터베이스(415)에 정의된 포즈에만 의존하기 때문에 다양한 포즈가 정의될 필요가 있다. 그러나, 송신 장치가(400A)가 정의된 포즈와 실루엣을 실시간으로 비교하기 위해서는 그 반응 속도의 유지를 위해 저장되는 포즈의 개수에 제약이 발생할 수 밖에 없다. 따라서, 포즈 데이터베이스(445)는 추출한 실루엣의 포즈를 추정하기 위해서 예상되는 다양한 포즈에 대해 최적의 개수로 표현할 수 있는 대표 포즈를 사전에 정확하게 선정하여 정의하는 역할을 수행할 필요가 있다.
이를 위해, 포즈 생성부(440)는 통신 시스템(400)이 상호 통신을 수행하기 이전에 미리 포즈 후보 데이터베이스(415)와 포즈 데이터베이스(445)를 자동으로 구성한다. 사람이 직접 관여하는 작업을 감소시키기 위해서 일정 기간 동안 카메라로 영상 이미지(시범 영상을 의미한다.)를 전달받아 대표 포즈를 선택할 후보 포즈를 정의한다. εPoseCandidate 개의 후보 포즈가 수집되면 대표 포즈를 선택한다. 대표 포즈의 선택을 위해서는 다수의 후보 포즈들 중에서 각각의 포즈의 특징을 대표하는 대표 행동을 선택할 수 있는 특별한 대표 행동 선택 기법이 요구된다. 이하에서 기술되는 본 발명의 실시예는 이러한 대표 행동 선택 기법으로서 Maximin 선택(selection) 알고리즘을 제안하고자 한다.
Maximin 선택 알고리즘은 복수 개의 원소를 갖는 집합에서 각각의 원소들의 특성에 따라 군집이 형성되는 경우 이러한 군집을 대표하는 대표 원소를 선택할 수 있는 기법이다. 따라서, 선택되는 대표 원소는 각 군집의 특성을 대표하는 대표성을 가지며, 또한 대표 원소들 각각은 서로 차별적인 특성을 가지게 된다. 이러한 목적 하에 Maximin 선택 알고리즘을 본 발명의 실시예에 적용하면, 포즈 후보 데이터베이스(415)에 저장된 다양한 후보 포즈들로부터 상대적으로 적은 수의 대표 행동을 선택할 수 있다. 이하에서는 의사 코드(pseudo-code)로 구현된 Maximin 선택 알고리즘을 참조하여 대표 행동 선택 방법을 보다 구체적으로 설명한다.
[Manimin 선택 알고리즘]
Figure 112011070776991-pat00001
상기된 알고리즘에서 C는 후보 포즈의 집합을 의미하고, B는 후보 포즈들 중 대표가 아닌 포즈의 집합을 의미하며, T는 대표로 선택된 대표 행동의 집합을 의미한다. 즉, 집합 B는 집합 C에서 집합 T를 뺀 차집합에 해당한다. 알고리즘은 함수 호출시 포즈 후보 데이터베이스(415)에 저장된 후보 포즈의 집합을 입력받는다. 또한, 변수 actionCount는 최종적으로 선택하고자 하는 대표 행동의 개수를 의미하는 것으로, 사전에 미리 설정되는 것이 바람직하다. 알고리즘의 최초 실행시 집합 B는 후보 포즈의 집합 C 전체를 할당받으며, 알고리즘의 수행 과정을 통해 집합 B로부터 선택된 대표 행동은 집합 B에서 삭제되어 집합 T로 입력된다.즉, 대표 행동으로 선택된 이후에는 더 이상 후보 포즈가 아니므로, 선택된 원소에 대한 집합 B로부터 집합 T로의 데이터 이동이 이루어진다.
대표 행동의 선택 과정은 다음과 같다. 우선, 집합 B에서 최초의 원소를 임의로 선택하여 대표 행동으로 설정한다. 즉, 선택된 원소를 집합 B에서 삭제한 후, 집합 T의 최초의 원소로서 저장한다. 이후 두 번째로 선택되는 대표 행동에 대해서는 다음과 같은 일련의 과정을 수행하게 된다.
집합 B의 각각의 후보 포즈들을 집합 T의 각각의 대표 행동들과 비교하여 그 차이값을 산출한다. 이 때, 집합 B의 원소마다 집합 T의 대표 행동들과 비교를 수행하게 되므로, 산출되는 차이값의 수는 집합 B의 원소의 개수와 집합 T의 원소의 개수의 곱이 될 것이다. 이제, 이렇게 산출된 차이값들 중, 집합 B의 원소별로 최소값을 선택한다. 집합 B의 원소마다 하나의 최소값을 선택하게 되므로, 선택된 최소값의 개수는 집합 B의 원소의 개수와 같다. 이어서, 선택된 최소값들을 재차 비교하여, 이들 최소값 중에서 가장 큰 값을 갖는 집합 B의 원소를 대표 행동으로 선택한다. 당연히 선택된 대표 행동은 집합 B에서 삭제되어 집합 T에 저장된다. 즉, 이미 선택되어 대표 행동을 구성하는 집합 T와 가장 상이한 원소가 새로운 대표 행동으로 선택되게 된다. 이상과 같은 일련의 과정을 반복 수행함으로써 선택된 대표 행동의 수가 최초에 설정된 변수 actionCount와 같아지면 알고리즘을 종료한다.
이상의 과정을 통해 본 발명의 실시예는 다양한 후보 포즈들 중에서 가장 특징적인 포즈들이 대표 행동으로서 자동으로 선택될 수 있다. 앞서 설명한 바와 같이 이상의 대표 행동 선택 알고리즘에 따르면, 새로운 대표 행동을 선택함에 있어서, 이미 선택되어 대표 행동을 구성하는 집합 T와 가장 상이한 원소가 새롭게 선택되므로, 이러한 연산을 반복할수록 자동으로 최초의 후보 포즈 집합 중에서 가장 특징적이고 차별적인 영상들만이 대표 행동으로 선택될 수 있는 효과가 나타난다. 즉, 복수 개의 후보 포즈들에 대해 사용자가 일일히 대표적인 포즈를 시각적으로 확인하고 선택할 필요없이 자동으로 대표 행동에 대한 데이터베이스를 구축할 수 있다. 본 발명에 속하는 기술 분야에서 통상의 지식을 가진 자는 이상과 같이 복수의 대표 행동을 추출하는 과정 및 부분 행동들을 분류하는 과정에 Maximin 선택 알고리즘 외에도 다양한 분류 알고리즘이 활용될 수 있음을 알 수 있다.
이상과 같이 선정된 대표 포즈는 포즈 데이터베이스(445)에 저장된다. 도 6은 본 발명의 일 실시예에 따른 송신측의 통신 방법 및 이에 따른 시스템에서 포즈 데이터베이스 내에 저장되는 데이터를 예시한 도면으로, 각각의 대표 포즈에 대해 포즈 인덱스가 부여되어 있음을 확인할 수 있다.
또한, 결정 트리 생성부(450)는 이상의 대표 포즈로부터 각 레벨의 부모 노드의 임계치를 기준으로 부모 노드의 자식 노드들이 양분되도록 구성된 결정 트리를 생성한다.
앞서 포즈 생성부(440)를 통해 대표 포즈 선정이 끝나면, 결정 트리를 자동으로 생성한다. 이 때, 엔트로피와 정보이득 개념을 적용해서 분리 기준을 결정한다. 가장 먼저 첫 번째 후보 포즈를 최상위 노드로 설정하고, 나머지 대표 포즈가 절반으로 나누어지도록 임계치 εPoseCritical를 조절한다. 나누어진 각각의 대표 포즈 그룹은 각각을 또 다시 절반으로 나누는 포즈를 기준으로 임계치를 조절한다. 이상의 나누는 작업은 모든 포즈를 이용하여 결정 트리를 구성할 때까지 반복적으로 수행한다.
도 7은 본 발명의 일 실시예에 따른 송신측의 통신 방법 및 이에 따른 시스템에서 포즈의 인덱스를 추정하기 위해 활용되는 결정 트리를 예시한 도면이다. 도 7에서 볼 수 있듯이, 결정 트리의 노드는 임계치 쌍 (p, εPoseCritical)으로 정의될 수 있다. 편의상 εPoseCritical를 제 2 임계치라고 명명하자.
이러한 결정 트리에서 의사 결정은 루트 노드에서부터 탐색하며 추정한다. 실루엣과 포즈의 매칭 정도가 해당 노드 각각에 저장된 또 다른 임계치인 εPoseMatching보다 크다면, 해당 노드의 포즈 인덱스를 메시지 생성부(430)에 전달한다. 편의상 εPoseMatching를 제 1 임계치라고 명명하자. 반면, 실루엣과 포즈의 매칭 정도가 제 1 임계치인 εPoseMatching보다 작거나 같다면, 실루엣과 해당 노드의 포즈 유사도를 제 2 임계치 εPoseCritical과 비교하게 된다. 즉, 실루엣과 해당 노드의 포즈 유사도가 제 2 임계치 εPoseCritical보다 작거나 같으면 결정 트리의 왼쪽 자식 노드로 진행하여 탐색을 계속하고, 반대의 경우에는 결정 트리의 오른쪽 자식 노드로 진행하여 탐색을 계속한다. 각각의 노드에 대해 탐색을 반복하다가 종말 노드에 다다르면 종말 노드가 저장하는 포즈의 인덱스를 반환하게 된다.
요약하건대, 포즈 추정부(420)는, 실루엣 추출부(410)를 통해 추출된 실루엣의 영상값과 결정 트리(455)의 노드에 저장된 포즈의 유사도를 해당 노드에 저장된 제 1 임계치와 비교하고, 유사도가 제 1 임계치보다 큰 경우에는 현재의 노드를 결과값으로 선택하고, 그 외의 경우에는 유사도와 해당 노드에 저장된 제 2 임계치를 비교하여 종말 노드까지 탐색한 후 종말 노드를 결과값으로 선택한다. 이제, 이러한 탐색 결과 획득된 노드에 저장된 포즈의 인덱스는 송신자의 행동에 대응하는 포즈의 인덱스로 결정된다.
메시지 생성부(430)는 포즈 추정부(420)를 통해 추정된 포즈의 인덱스를 포함하는 메시지를 생성하여 메시지 전송부(435)를 통해 수신자에게 전송한다. 사용자가 사용하는 장치에 따라 메시지 생성부(430)에서 발생되는 데이터의 종류는 매우 다양해질 수 있다. 이를 위해 메시지 생성부(430)는 다양한 데이터를 입력받아 네트워크로 전송한 메시지를 생성할 수 있도록 확장성을 갖는 언어로써 기술되는 것이 바람직하다. 도 8은 본 발명의 일 실시예에 따른 송신측의 통신 방법 및 이에 따른 시스템에서 생성된 메시지를 예시한 도면으로서, 메타(meta) 언어를 이용하여 데이터의 종류와 해당 속성을 기술할 수 있다.
한편, 이상의 송신 장치(400A)가 송신자로부터 음성(14) 또는 텍스트(12) 중 적어도 하나를 입력받는 입력부를 더 포함하는 경우, 메시지 생성부(430)를 통해 생성된 메시지는 입력된 음성(14) 또는 텍스트(12) 중 적어도 하나를 더 포함하여 수신자에게 전송될 수 있다.
이제 수신 장치(400B)를 살펴보자.
수신부(465)는 송신자의 행동에 대응하는 포즈의 인덱스를 포함하는 메시지를 수신한다. 만약 수신된 메시지 내에 음성 정보가 더 포함되어 있다면 이러한 음성 정보는 음성 계획부(speech planner)에 전달되어 처리될 것이다.
행위 계획부(460)는 수신부(465)에 수신된 메시지에 포함된 포즈의 인덱스와 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 행위 데이터베이스를 이용하여 송신자에 대응하는 가상 객체에 대한 일련의 행위 계획을 생성한다. 행위 계획부(460)의 수행 동작을 구체적으로 설명하기에 앞서, 행동 생성부(480)와 행위 생성부(490)를 먼저 설명하도록 한다.
행동 생성부(480)는 인간의 행동을 포함하는 시범 영상으로부터 추출된 일 순간의 포즈에 대한 정보를 행동 데이터베이스(485)에 저장한다. 행동 데이터베이스(485)에 저장된 행동은 각각의 포즈의 연속적인 수행으로 정의된다. 따라서, 행동 데이터베이스(485)에는 가상 객체(20)가 수행할 각각의 행동에 대한 관절의 각도(DOF)를 정의하는 것이 바람직하다. 도 9는 본 발명의 일 실시예에 따른 수신측의 통신 방법 및 이에 따른 시스템에서 행동(action) 데이터베이스 내에 저장되는 데이터를 예시한 도면으로서, 일 순간의 포즈에 대한 행동 인덱스와 이에 대한 각 관절의 위치가 매칭되어 저장되어 있음을 확인할 수 있다.
행동 생성부(480)는 통신 시스템이 상호 메시지 송수신을 수행하기 전에 미리 행동 후보 데이터베이스(475)와 행동 데이터베이스(485)를 자동으로 구성한다. 앞서 설명한 바와 같이 행동 데이터베이스(485)에는 실루엣을 수행하는 행동을 정의한다. 이 때, 송신 장치(400A)의 포즈 생성부(440)와 수신 장치(400B)의 행동 생성부(480)에 전달되는 실루엣의 개수는 동일하여야 함은 당연하다. 포즈 생성부(440)에서와 유사하게, 행동 생성부(480)에서도 다양한 행동을 최적의 개수로 표현할 수 있는 대표 행동을 선정하는 방법이 필요하다.
이를 위해 행동 생성부(480)는 캠(10)으로부터 시범 영상을 전달받아 행동 후보 데이터베이스(475)를 정의한다. εActionCandidate 개의 후보 포즈가 수집되면 대표 행동을 선택한다. 이러한 대표 행동의 선택은 앞서 설명한 Maximin 선택 알고리즘을 사용하는 것이 바람직하다. 이렇게 선정된 대표 행동은 행동 데이터베이스(485)에 저장된다.
또한, 행위 생성부(490)는 행동 데이터베이스(485)로부터 적어도 둘 이상의 행동을 선택하고, 선택된 행동에 대한 지속 시간과 순서를 할당함으로써 설정된 복수 개의 다양한 행위를 행위 데이터베이스(495)에 저장한다. 본 발명의 실시예들을 통해 행동(action)과 행위(behavior)는 구별되며, 행동이 인간의 행동 중 일 순간의 포즈에 해당한다면, 행위는 이러한 행동들이 순서와 지속 시간을 갖고 조합된 결과로서, 일련의 연속 동작을 의미한다.
가상 객체(20)가 실시간으로 수행할 행동을 계획할 경우, 물리적으로 해당 움직임을 실시간으로 처리하기에 어려운 문제가 존재한다. 따라서, 행위 생성부(490)에서는 행위 계획을 미리 생성하고 생성된 행위 계획을 테이블에 기록한다. 즉, 각각의 포즈로 시작하는 모든 행동과 각각의 포즈로 끝나는 모든 행동 사이를 연결할 수 있는 모든 일련의 행동을 미리 계획하여 행위로 정의한다. 따라서, 본 발명의 실시예들은 전달받은 연속적인 두 개의 포즈 중, 시작 포즈와 종료 포즈의 사이에 하나 이상의 중간 행동을 계획, 삽입해서 행위를 구성한다. 이러한 연속 동작의 구성을 통해 가상 객체(20)의 행동이 보다 자연스럽고 인간의 행동에 가까워질 수 있다.
도 10은 본 발명의 일 실시예에 따른 수신측의 통신 방법 및 이에 따른 시스템에서 행위(behavior) 데이터베이스 내에 저장되는 데이터를 예시한 도면으로서, 이전 행위 인덱스와 현재의 행위 인덱스를 키(key)로 삼아 일련의 행위의 순서와 그 지속 시간을 개별적으로 구성한 것을 확인할 수 있다. 이 때, 시작 포즈와 종료 포즈 사이에 삽입될 수 있는 중간 포즈는 필요에 따라 0 개 이상으로 결정될 수 있다. 나아가, 행위의 특성상 단일 포즈(일 순간의 행동을 의미한다.)만으로도 하나의 행위를 구성할 수도 있을 것이다. 이러한 일련의 행위를 구성하는 것은 직전의 시간에 수행된 행위가 어떠한 행위인지에 따라 달라질 수 있다.
다시, 행위 계획부(460)로 돌아오자.
행위 계획부(460)에서 가상 객체(20)의 행위는 수신부(465)에 수신된 메시지 내에 포함된 포즈 인덱스를 전달받아 계획된다. 앞서 설명한 바와 같이 현재 실행 중인 행위가 없다면 이전의 포즈와 현재의 포즈에 기초하여 행위 데이터베이스(495)에 저장된 행위를 탐색한다. 그리고, 메시지 전송 지연 시간을 고려해서 각각의 행동의 수행 시간을 조정할 수 있다. 즉, 일련의 행위 내에 포함된 개별 행동의 수행 시간을 연장시키거나 감소시킨다.
도 11은 본 발명의 일 실시예에 따른 수신측의 통신 방법 및 이에 따른 시스템에서 행위 계획부가 생성하는 가상 객체에 대한 일련의 행위 계획을 예시한 도면으로서, 시간 순서에 따라 재생되어야 하는 행동 인덱스와 각각의 지속 시간, 순서가 계획되어 있음을 확인할 수 있다.
이제, 재생부(470)는 행위 계획부(460)를 통해 생성된 일련의 행위 계획에 따라 행동 데이터베이스(485)를 참조하여 가상 객체(20)를 재생함으로써 송신자의 메시지를 수신자에게 전달한다. 계획된 행위 내에 정의된 각각의 행동들은 설정된 수행시간 동안 순차적으로 수행된다. 모든 행동을 수행하면 해당 행위를 종료한다. 만약 실행 중인 행위가 있으면 해당 행위가 종료할 때까지 대기할 수 있다.
한편, 수신부(465)를 통해 수신된 메시지가 송신자로부터 입력된 음성(14) 또는 텍스트(12) 중 적어도 하나를 포함하는 경우, 재생부(470)는 가상 객체(20)와 더불어 음성(22) 또는 텍스트를 재생할 수 있다.
상기된 본 발명의 다양한 실시예들에 따르면, 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 복수 개의 대표 포즈를 이용하여 송신자의 행동에 대응하는 포즈의 인덱스 값만을 수신자에게 전송하고, 수신자를 이로부터 송신자의 행동을 재생함으로써, 대용량 영상 데이터의 송수신 없이도 송신자 및 수신자 간에 원활한 통신이 가능하며, 영상 데이터를 주고 받는데 필요한 네트워크 트래픽을 감소시킬 수 있다.
또한, 본 발명의 실시예들은 전송되는 데이터량을 크게 감소시키기 때문에 휴대 전화, 테이블 PC와 같은 저성능 모바일 장치에서도 다수의 사람들과 동시에 화상 통신을 수행하는 것이 가능하다. 나아가, 마이크로폰, 캠코더와 같은 다양한 입력 장치를 제공하기 때문에 각기 다양한 사용자 환경에 놓은 사람들의 대화 참여가 가능하다.
한편, 본 발명의 실시예들은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.
컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현하는 것을 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술 분야의 프로그래머들에 의하여 용이하게 추론될 수 있다.
이상에서 본 발명에 대하여 그 다양한 실시예들을 중심으로 살펴보았다. 본 발명에 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
400 : 인간의 행동을 모방하는 가상 객체를 이용한 통신 시스템
400A : 송신 장치
10 : 캠코더
12 : 텍스트 입력 14 : 음성 입력
405 : 영상 수신부 410 : 실루엣 추출부
420 : 포즈 추정부 430 : 메시지 생성부
435 : 메시지 전송부
415 : 포즈 후보 데이터베이스 445 : 포즈 데이터베이스
440 : 포즈 생성부 450 : 결정 트리 생성부
455 : 결정 트리 데이터베이스
400B : 수신 장치
20 : 가상 객체 22 : 음성 출력
465 : 수신부
460 : 행위 계획부 470 : 재생부
480 : 행동 생성부 490 : 행위 생성부
475 : 행동 후보 데이터베이스 485 : 행동 데이터베이스
495 : 행위 데이터베이스

Claims (18)

  1. 송신측의 통신 방법에 있어서,
    송신 장치가 송신자의 행동을 촬영한 영상을 입력받는 단계;
    상기 송신 장치가 상기 입력된 영상으로부터 배경을 분리함으로써 상기 송신자의 실루엣(silhouette)을 추출하는 단계;
    상기 송신 장치가 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 복수 개의 대표 포즈(pose)가 미리 저장된 데이터 구조체를 이용하여, 상기 추출된 실루엣과 가장 유사한 포즈를 선택함으로써 상기 송신자의 행동에 대응하는 포즈의 인덱스를 추정하는 단계; 및
    상기 송신 장치가 상기 추정된 포즈의 인덱스를 포함하는 메시지를 생성하여 수신자에게 전송하는 단계;를 포함하되,
    상기 데이터 구조체는 상기 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 복수 개의 대표 포즈로 구성되고,
    상기 포즈의 인덱스를 추정하는 단계는,
    상기 추출된 실루엣의 영상값을 이용하여 상기 데이터 구조체 내에서 상기 추출된 실루엣과 가장 유사한 포즈를 탐색하는 단계; 및
    상기 탐색 결과 획득된 노드에 저장된 포즈의 인덱스를 상기 송신자의 행동에 대응하는 포즈의 인덱스로 결정하는 단계;를 포함하는 것을 특징으로 하는 통신 방법.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 데이터 구조체는 결정 트리(decision tree)이고,
    상기 추출된 실루엣과 가장 유사한 포즈를 탐색하는 단계는,
    상기 추출된 실루엣의 영상값과 상기 결정 트리의 노드에 저장된 포즈의 유사도를 해당 노드에 저장된 제 1 임계치와 비교하는 단계; 및
    상기 유사도가 상기 제 1 임계치보다 큰 경우에는 현재의 노드를 결과값으로 선택하고, 그 외의 경우에는 상기 유사도와 상기 해당 노드에 저장된 제 2 임계치를 비교하여 종말 노드까지 탐색한 후 상기 종말 노드를 결과값으로 선택하는 단계;를 포함하는 것을 특징으로 하는 통신 방법.
  4. 제 1 항에 있어서,
    상기 데이터 구조체는,
    상기 인간의 행동을 포함하는 시범 영상으로부터 복수 개의 후보 포즈를 추출하고,
    상기 추출된 후보 포즈로부터 복수 개의 대표 포즈를 자동으로 선택하며,
    상기 선택된 대표 포즈로부터 각 레벨(level)의 부모 노드의 임계치를 기준으로 상기 부모 노드의 자식 노드들이 양분되도록 구성된 결정 트리인 것을 특징으로 하는 통신 방법.
  5. 제 1 항에 있어서,
    상기 송신자로부터 음성 또는 텍스트 중 적어도 하나를 입력받는 단계를 더 포함하고,
    상기 생성된 메시지는 상기 입력된 음성 또는 텍스트 중 적어도 하나를 더 포함하여 상기 수신자에게 전송하는 것을 특징으로 하는 통신 방법.
  6. 수신측의 통신 방법에 있어서,
    수신 장치가 송신자의 행동에 대응하는 포즈의 인덱스를 포함하는 메시지를 수신하는 단계;
    상기 수신 장치가 상기 수신된 메시지에 포함된 포즈의 인덱스와 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 행위 데이터베이스를 이용하여 상기 송신자에 대응하는 가상 객체에 대한 일련의 행위 계획을 생성하는 단계; 및
    상기 수신 장치가 상기 생성된 일련의 행위 계획에 따라 상기 가상 객체를 재생함으로써 상기 송신자의 메시지를 수신자에게 전달하는 단계;를 포함하는 통신 방법.
  7. 제 6 항에 있어서,
    상기 행위 데이터베이스는,
    상기 인간의 행동을 포함하는 시범 영상으로부터 추출된 일 순간의 포즈에 대한 정보를 저장하는 행동 데이터베이스로부터 적어도 둘 이상의 행동을 선택하고, 상기 선택된 행동에 대한 지속 시간과 순서를 할당함으로써 설정된 복수 개의 행위를 저장하는 것을 특징으로 하는 통신 방법.
  8. 제 7 항에 있어서,
    상기 행위 데이터베이스는,
    시간적으로 연속하는 2 개의 포즈 인덱스와 이에 대응하는 일련의 행위를 사상시켜(mapping) 저장하는 것을 특징으로 하는 통신 방법.
  9. 제 7 항에 있어서,
    상기 행동 데이터베이스는,
    상기 인간의 행동을 포함하는 시범 영상으로부터 후보 포즈를 수집하고, 수집된 후보 포즈로부터 자동으로 복수 개의 대표 행동을 선택하여 각각의 행동의 관절 각도와 함께 저장하는 것을 특징으로 하는 통신 방법.
  10. 제 6 항에 있어서,
    상기 수신된 메시지가 상기 송신자로부터 입력된 음성 또는 텍스트 중 적어도 하나를 포함하는 경우,
    상기 가상 객체를 재생하는 단계는, 상기 가상 객체와 더불어 상기 음성 또는 텍스트를 재생하는 것을 특징으로 하는 통신 방법.
  11. 제 1 항, 제 3 항 내지 제 10 항 중 어느 한 항의 방법을 컴퓨터 시스템에서 실행하기 위한 프로그램이 기록된 컴퓨터 시스템이 판독할 수 있는 기록매체.
  12. 송신자의 행동을 촬영하는 카메라;
    상기 촬영된 영상으로부터 배경을 분리함으로써 상기 송신자의 실루엣을 추출하는 실루엣 추출부;
    인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 복수 개의 대표 포즈가 미리 저장된 데이터 구조체를 이용하여, 상기 추출된 실루엣과 가장 유사한 포즈를 선택함으로써 상기 송신자의 행동에 대응하는 포즈의 인덱스를 추정하는 포즈 추정부; 및
    상기 추정된 포즈의 인덱스를 포함하는 메시지를 생성하여 수신자에게 전송하는 메시지 생성부;를 포함하되,
    상기 데이터 구조체는 상기 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 복수 개의 대표 포즈로 구성되고,
    상기 인간의 행동을 포함하는 시범 영상으로부터 추출된 복수 개의 후보 포즈를 포즈 후보 데이터베이스에 저장하고, 상기 후보 포즈로부터 자동으로 선택된 복수 개의 대표 포즈를 포즈 데이터베이스에 저장하며,
    상기 대표 포즈로부터 각 레벨의 부모 노드의 임계치를 기준으로 상기 부모 노드의 자식 노드들이 양분되도록 구성된 데이터 구조체를 생성하는 것을 특징으로 하는 통신 시스템.
  13. 삭제
  14. 제 12 항에 있어서,
    상기 데이터 구조체는 결정 트리이고,
    상기 포즈 추정부는,
    상기 추출된 실루엣의 영상값과 상기 결정 트리의 노드에 저장된 포즈의 유사도를 해당 노드에 저장된 제 1 임계치와 비교하고,
    상기 유사도가 상기 제 1 임계치보다 큰 경우에는 현재의 노드를 결과값으로 선택하고, 그 외의 경우에는 상기 유사도와 상기 해당 노드에 저장된 제 2 임계치를 비교하여 종말 노드까지 탐색한 후 상기 종말 노드를 결과값으로 선택하며,
    상기 결과값으로 선택된 노드에 저장된 포즈의 인덱스를 상기 송신자의 행동에 대응하는 포즈의 인덱스로 결정하는 것을 특징으로 하는 통신 시스템.
  15. 제 12 항에 있어서,
    상기 송신자로부터 음성 또는 텍스트 중 적어도 하나를 입력받는 입력부;를 더 포함하고,
    상기 생성된 메시지는 상기 입력된 음성 또는 텍스트 중 적어도 하나를 더 포함하여 상기 수신자에게 전송하는 것을 특징으로 하는 통신 시스템.
  16. 송신자의 행동에 대응하는 포즈의 인덱스를 포함하는 메시지를 수신하는 수신부;
    상기 수신된 메시지에 포함된 포즈의 인덱스와 인간의 행동을 포함하는 시범 영상으로부터 자동으로 생성된 행위 데이터베이스를 이용하여 상기 송신자에 대응하는 가상 객체에 대한 일련의 행위 계획을 생성하는 행위 계획부; 및
    상기 생성된 일련의 행위 계획에 따라 상기 가상 객체를 재생함으로써 상기 송신자의 메시지를 수신자에게 전달하는 재생부;를 포함하는 통신 시스템.
  17. 제 16 항에 있어서,
    상기 인간의 행동을 포함하는 시범 영상으로부터 추출된 일 순간의 포즈에 대한 정보를 행동 데이터베이스에 저장하는 행동 생성부; 및
    상기 행동 데이터베이스로부터 적어도 둘 이상의 행동을 선택하고, 상기 선택된 행동에 대한 지속 시간과 순서를 할당함으로써 설정된 복수 개의 행위를 상기 행위 데이터베이스에 저장하는 행위 생성부;를 더 포함하는 것을 특징으로 하는 통신 시스템.
  18. 제 16 항에 있어서,
    상기 수신된 메시지가 상기 송신자로부터 입력된 음성 또는 텍스트 중 적어도 하나를 포함하는 경우,
    상기 재생부는, 상기 가상 객체와 더불어 상기 음성 또는 텍스트를 재생하는 것을 특징으로 하는 통신 시스템.
KR1020110091828A 2011-09-09 2011-09-09 인간의 행동을 모방하는 가상 객체를 이용한 통신 방법 및 그 방법에 따른 통신 시스템 KR101285076B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110091828A KR101285076B1 (ko) 2011-09-09 2011-09-09 인간의 행동을 모방하는 가상 객체를 이용한 통신 방법 및 그 방법에 따른 통신 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110091828A KR101285076B1 (ko) 2011-09-09 2011-09-09 인간의 행동을 모방하는 가상 객체를 이용한 통신 방법 및 그 방법에 따른 통신 시스템

Publications (2)

Publication Number Publication Date
KR20130028344A KR20130028344A (ko) 2013-03-19
KR101285076B1 true KR101285076B1 (ko) 2013-07-17

Family

ID=48178893

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110091828A KR101285076B1 (ko) 2011-09-09 2011-09-09 인간의 행동을 모방하는 가상 객체를 이용한 통신 방법 및 그 방법에 따른 통신 시스템

Country Status (1)

Country Link
KR (1) KR101285076B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101480256B1 (ko) * 2013-12-13 2015-01-09 계명대학교 산학협력단 얼굴 영역의 위치를 고려한 화상 통신 장치 및 그 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002008041A (ja) 2000-06-22 2002-01-11 Namco Ltd 動作検出装置、動作検出方法および情報記憶媒体
KR20060095781A (ko) * 2002-05-28 2006-09-01 가시오게산키 가부시키가이샤 합성화상배송장치, 합성화상배송방법 및 기록매체
KR20110012491A (ko) * 2009-07-30 2011-02-09 에스케이텔레콤 주식회사 영상데이터 및 아바타를 이용한 메시지 전송 시스템, 관리서버, 단말 및 방법
KR20110025720A (ko) * 2009-09-05 2011-03-11 에스케이텔레콤 주식회사 아바타 기반 화상 통화 방법 및 시스템, 이를 지원하는 단말기

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002008041A (ja) 2000-06-22 2002-01-11 Namco Ltd 動作検出装置、動作検出方法および情報記憶媒体
KR20060095781A (ko) * 2002-05-28 2006-09-01 가시오게산키 가부시키가이샤 합성화상배송장치, 합성화상배송방법 및 기록매체
KR20110012491A (ko) * 2009-07-30 2011-02-09 에스케이텔레콤 주식회사 영상데이터 및 아바타를 이용한 메시지 전송 시스템, 관리서버, 단말 및 방법
KR20110025720A (ko) * 2009-09-05 2011-03-11 에스케이텔레콤 주식회사 아바타 기반 화상 통화 방법 및 시스템, 이를 지원하는 단말기

Also Published As

Publication number Publication date
KR20130028344A (ko) 2013-03-19

Similar Documents

Publication Publication Date Title
CN104992709B (zh) 一种语音指令的执行方法及语音识别设备
JP6510536B2 (ja) インスタント通信において表現情報を処理する方法及び装置
EP2709357B1 (en) Conference recording method and conference system
CN105893562B (zh) 会话消息处理方法、装置及终端
CN107533850A (zh) 音频内容识别方法和装置
CN102905233A (zh) 一种终端功能推荐的方法及装置
US11468708B2 (en) Videoconferencing using hybrid edge/cloud inference with machine-learned systems
CN104216956A (zh) 一种图片信息的搜索方法和装置
CN109428859A (zh) 一种同步通信方法、终端及服务器
JP4469867B2 (ja) コミュニケーションの状況を管理する装置、方法およびプログラム
CN105577504A (zh) 建立通信通道的方法和装置
CN117319441A (zh) 一种元宇宙的远程互动方法及系统
KR102135077B1 (ko) 인공지능 스피커를 이용한 실시간 이야깃거리 제공 시스템
KR101285076B1 (ko) 인간의 행동을 모방하는 가상 객체를 이용한 통신 방법 및 그 방법에 따른 통신 시스템
CN113962417A (zh) 一种视频处理方法、装置、电子设备和存储介质
CN109784267B (zh) 一种移动端多源融合图像语义内容生成系统及方法
CN113656927B (zh) 数据处理方法、相关设备及计算机存储介质
KR101089288B1 (ko) 얼굴 색인 장치 및 방법
US20230260549A1 (en) Information processing apparatus, information processing method, and program
CN105100235B (zh) 一种扫地机器人的信息分享方法及服务器
CN111176430B (zh) 一种智能终端的交互方法、智能终端及存储介质
CN113099305A (zh) 播放控制方法及装置
KR101480256B1 (ko) 얼굴 영역의 위치를 고려한 화상 통신 장치 및 그 방법
CN113886674A (zh) 资源推荐方法、装置、电子设备及存储介质
CN112040329B (zh) 动态处理并播放多媒体内容的方法及多媒体播放装置

Legal Events

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

Payment date: 20160628

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170703

Year of fee payment: 5