KR20230055947A - 멀티 모달리티를 제공하는 웨어러블 디바이스 및 이의 동작 방법 - Google Patents

멀티 모달리티를 제공하는 웨어러블 디바이스 및 이의 동작 방법 Download PDF

Info

Publication number
KR20230055947A
KR20230055947A KR1020220116642A KR20220116642A KR20230055947A KR 20230055947 A KR20230055947 A KR 20230055947A KR 1020220116642 A KR1020220116642 A KR 1020220116642A KR 20220116642 A KR20220116642 A KR 20220116642A KR 20230055947 A KR20230055947 A KR 20230055947A
Authority
KR
South Korea
Prior art keywords
data
voice
speech
pwm signal
wearable device
Prior art date
Application number
KR1020220116642A
Other languages
English (en)
Inventor
이동섭
김학중
다니엘 리
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to EP22883979.1A priority Critical patent/EP4354259A1/en
Priority to CN202280062566.XA priority patent/CN117980865A/zh
Priority to PCT/KR2022/015862 priority patent/WO2023068756A1/ko
Priority to US18/126,862 priority patent/US20230239618A1/en
Publication of KR20230055947A publication Critical patent/KR20230055947A/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/016Input arrangements with force or tactile feedback as computer generated output to the user
    • 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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • 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/16Sound input; Sound output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 개시는 멀티 모달리티를 제공하는 웨어러블 디바이스 및 이의 동작 방법에 관한 것이다. 본 개시의 실시 예에 따른 웨어러블 디바이스의 동작 방법은, 이미지 데이터, 텍스트 데이터, 및 음성 데이터 중 적어도 하나를 포함하는 소스 데이터를 획득하고, 소스 데이터에 이미지 데이터, 텍스트 데이터, 및 음성 데이터가 포함되는지 여부를 결정하고, 소스 데이터에 이미지 데이터, 텍스트 데이터, 및 음성 데이터 중 적어도 하나가 포함되지 않은 경우, 소스 데이터를 입력으로 하는 GAN의 생성기를 이용하여, 소스 데이터에 포함되지 않은 이미지 데이터, 텍스트 데이터, 및 음성 데이터를 생성하고, 음성 데이터에 기초하여 PWM 신호를 생성하고, 이미지 데이터, 텍스트 데이터, 음성 데이터, 및 PWM 신호에 기초하여 멀티 모달리티를 출력한다.

Description

멀티 모달리티를 제공하는 웨어러블 디바이스 및 이의 동작 방법{Wearable device for providing multi-modality and operating method thereof}
본 개시는 웨어러블 디바이스 및 이의 동작 방법에 관한 것이다. 구체적으로, 본 개시는 소스 데이터로부터 소스 데이터에 포함되지 않는 이미지, 텍스트, 및 음성을 생성하고, 음성으로부터 촉각 모달리티에 대응하는 PWM 신호를 생성하는 웨어러블 디바이스 및 이의 동작 방법에 관한 것이다.
과거 사용자 간 의사소통은 단독 모달리티인 음성, 이미지, 또는 텍스트를 이용하여 이루어져 왔다. 최근 가상 현실 기반 메타버스의 시대가 빠르게 전개되고 있으며, 스마트 워치, 스마트 밴드, 스마트 의복, 헤드마운트 디스플레이 등 다양한 유형의 웨어러블 디바이스가 사용자에게 제공되고 있다. 웨어러블 디바이스는 웨어러블 디바이스의 동작을 수행하면서 사용자에게 멀티 모달리티를 제공함으로써, 사용자에게 개선된 디바이스 사용 경험을 제공할 수 있다.
메타버스 시대에 최적화된 다중 경험(예컨대, 시각, 청각, 촉각 등)의 구현을 위해 다양한 모달리티에 대한 연구가 진행되고 있다. 그 중 촉각 모달리티는 음성, 이미지, 텍스트에 대해 사용자에게 몰입감을 주는 핵심 모달리티로 주목받고 있다. 촉각 모달리티는 웨어러블 디바이스를 장착한 사용자에게 음성, 이미지, 텍스트에 대응하는 햅틱 피드백으로서 전달될 수 있다.
일 실시 예에 따른 멀티 모달리티를 제공하는 웨어러블 디바이스의 동작 방법은, 이미지 데이터, 텍스트 데이터, 및 음성 데이터 중 적어도 하나를 포함하는 소스 데이터를 획득하는 단계를 포함할 수 있다. 웨어러블 디바이스의 동작 방법은, 상기 소스 데이터에 상기 이미지 데이터, 상기 텍스트 데이터, 및 상기 음성 데이터가 포함되는지 여부를 결정하는 단계를 포함할 수 있다. 웨어러블 디바이스의 동작 방법은, 상기 소스 데이터에 상기 이미지 데이터, 상기 텍스트 데이터, 및 상기 음성 데이터 중 적어도 하나가 포함되지 않은 경우, 상기 소스 데이터를 입력으로 하는 적대적 생성 신경망(Generative Adversarial Network; GAN)의 생성기(generator)를 이용하여, 상기 소스 데이터에 포함되지 않은 상기 이미지 데이터, 상기 텍스트 데이터, 및 상기 음성 데이터를 생성하는 단계를 포함할 수 있다. 웨어러블 디바이스의 동작 방법은, 상기 음성 데이터에 기초하여 PWM(Pulse Width Modulation) 신호를 생성하는 단계를 포함할 수 있다. 웨어러블 디바이스의 동작 방법은, 상기 이미지 데이터, 상기 텍스트 데이터, 상기 음성 데이터, 및 상기 PWM 신호에 기초하여 상기 멀티 모달리티를 출력하는 단계를 포함할 수 있다.
일 실시 예에 따른 멀티 모달리티를 제공하는 웨어러블 디바이스는, 디스플레이를 포함할 수 있다. 웨어러블 디바이스는, 스피커를 포함할 수 있다. 웨어러블 디바이스는, 적어도 하나의 액추에이터를 포함할 수 있다. 웨어러블 디바이스는, 하나 이상의 인스트럭션을 저장하는 메모리를 포함할 수 있다. 웨어러블 디바이스는, 상기 메모리에 저장된 하나 이상의 인스트럭션을 실행하는 적어도 하나의 프로세서를 포함할 수 있다. 상기 적어도 하나의 프로세서는, 이미지 데이터, 텍스트 데이터, 및 음성 데이터 중 적어도 하나를 포함하는 소스 데이터를 획득하는, 상기 하나 이상의 인스트럭션을 실행할 수 있다. 상기 적어도 하나의 프로세서는, 이미지 데이터, 텍스트 데이터, 및 음성 데이터 중 적어도 하나를 포함하는 소스 데이터를 획득하는, 상기 하나 이상의 인스트럭션을 실행할 수 있다. 상기 적어도 하나의 프로세서는, 상기 소스 데이터에 상기 이미지 데이터, 상기 텍스트 데이터, 및 상기 음성 데이터가 포함되는지 여부를 결정하는, 상기 하나 이상의 인스트럭션을 실행할 수 있다. 상기 적어도 하나의 프로세서는, 상기 소스 데이터에 상기 이미지 데이터, 상기 텍스트 데이터, 및 상기 음성 데이터 중 적어도 하나가 포함되지 않은 경우, 상기 소스 데이터를 입력으로 하는 적대적 생성 신경망(Generative Adversarial Network; GAN)의 생성기(generator)를 이용하여, 상기 소스 데이터에 포함되지 않은 상기 이미지 데이터, 상기 텍스트 데이터, 및 상기 음성 데이터를 생성하는, 상기 하나 이상의 인스트럭션을 실행할 수 있다. 상기 적어도 하나의 프로세서는, 상기 음성 데이터에 기초하여 PWM(Pulse Width Modulation) 신호를 생성하는, 상기 하나 이상의 인스트럭션을 실행할 수 있다. 상기 적어도 하나의 프로세서는, 상기 이미지 데이터, 상기 텍스트 데이터, 상기 음성 데이터, 및 상기 PWM 신호에 기초하여, 상기 디스플레이, 상기 스피커, 상기 적어도 하나의 액추에이터로 하여금 상기 멀티 모달리티를 출력하도록 제어하는, 상기 하나 이상의 인스트럭션을 실행할 수 있다.
일 실시 예에 따르면, 본 개시의 기술적 과제를 해결하기 위하여, 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
도 1은 일 실시 예에 따른 멀티 모달리티를 제공하는 웨어러블 디바이스를 보여주는 개념도이다.
도 2는 일 실시 예에 따른 웨어러블 디바이스의 동작을 설명하기 위한 블록도이다.
도 3은 일 실시 예에 따른 적대적 생성 신경망의 학습 방법을 보여주는 블록도이다.
도 4a 및 4b는 도 2의 PWM 신호 생성기를 좀 더 상세하게 보여주는 블록도들이다.
도 5는 일 실시 예에 따른 웨어러블 디바이스가 사용자 입력에 기초하여 PWM 신호를 조정하는 방법을 설명하기 위한 개념도이다.
도 6은 일 실시 예에 따른 웨어러블 디바이스가 커브 가중치 팩터를 이용하여 PWM 신호를 조정하는 방법을 설명하기 위한 개념도이다.
도 7a 내지 7c는 일 실시 예에 따른 웨어러블 디바이스가 사용자 스피치 특성에 기초하여 PWM 신호를 조정하는 방법을 설명하기 위한 개념도이다.
도 8은 일 실시 예에 따른 웨어러블 디바이스의 효과를 설명하기 위한 개념도이다.
도 9a는 일 실시 예에 따른 웨어러블 디바이스의 동작 방법을 설명하기 위한 흐름도이다.
도 9b는 일 실시 예에 따른 소스 데이터에 이미지 데이터, 텍스트 데이터, 및 음성 데이터가 포함되는지 여부를 결정하는 방법을 설명하기 위한 흐름도이다.
도 9c 및 9d는 일 실시 예에 따른 음성 데이터에 기초하여 PWM 신호를 생성하는 방법을 설명하기 위한 흐름도이다.
도 10은 일 실시 예에 따른 웨어러블 디바이스의 구성을 보여주는 블록도이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 개시에 대해 구체적으로 설명하기로 한다.
본 개시에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 명세서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 또한, 본 명세서에서 사용되는 '제1' 또는 '제2' 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용할 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
아래에서는 첨부한 도면을 참고하여 실시 예들에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본 개시를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본 명세서에서, "사용자"라는 용어는 시스템, 기능 또는 동작을 제어하는 사람을 의미하며, 개발자, 관리자 또는 설치 기사를 포함할 수 있다.
본 명세서에서, "모달리티(modality)"는 웨어러블 디바이스를 장착한 사용자와의 인터랙션을 위한 채널 또는 채널을 통해 입출력되는 신호, 정보 또는 데이터 등을 나타낼 수 있다. 예를 들어, 청각 모달리티는 스피커를 통해 출력되는 음성 신호를 나타내고, 시각 모달리티는 디스플레이를 통해 출력되는 텍스트, 이미지 또는 영상 데이터 등을 나타내고, 촉각 모달리티는 액추에이터 등을 통해 출력되는 진동 신호를 나타낼 수 있다.
도 1은 일 실시 예에 따른 멀티 모달리티를 제공하는 웨어러블 디바이스를 보여주는 개념도이다. 도 1을 참조하면, 웨어러블 디바이스(100)는 사용자(10)에게 멀티 모달리티(Multi-Modality)를 제공할 수 있다.
예를 들어, 웨어러블 디바이스(100)는 헤드마운트 디스플레이(head mounted display), 스마트 워치(smart watch), 스마트 밴드(smart band), 스마트 의복 등 중 적어도 하나를 포함할 수 있으나, 본 개시는 이에 한정되지 않으며, 사용자(10)가 착용하거나 상호작용할 수 있는 임의의 디바이스를 포함할 수 있다. 예를 들어, 멀티 모달리티는 시각 모달리티, 청각 모달리티, 및 촉각 모달리티를 포함할 수 있으나, 본 개시는 이에 한정되지 않으며, 사용자(10)의 다양한 감각기관과 상호작용할 수 있는 임의의 모달리티(예컨대, 후각, 미각 등)를 더 포함할 수 있다. 설명의 편의를 위해, 웨어러블 디바이스(100)가 제공하는 멀티 모달리티는 시각 모달리티, 청각 모달리티, 및 촉각 모달리티를 포함하는 것으로 가정하여 이하 설명한다.
일 실시 예에 있어서, 웨어러블 디바이스(100)는 모달리티 소스 데이터(또는 소스 데이터로 지칭될 수 있음)를 획득할 수 있다. 여기서, 모달리티 소스 데이터는 이미지 데이터, 텍스트 데이터, 및 음성 데이터 중 적어도 하나를 포함할 수 있다. 이미지 데이터, 텍스트 데이터, 및 음성 데이터 각각은 서로 대응될 수 있다. 예를 들어, 이미지 데이터는 웃는 사람의 이미지 정보를 포함하고, 텍스트 데이터는 "ㅋㅋㅋㅋㅋㅋ"의 텍스트 정보를 포함하고, 음성 데이터는 사람의 웃는 소리 정보를 포함할 수 있다.
일 실시 예에 있어서, 모달리티 소스 데이터에 이미지 데이터, 텍스트 데이터, 및 음성 데이터 중 적어도 하나가 포함되지 않는 경우, 웨어러블 디바이스(100)는 획득한 모달리티 소스 데이터에 기초하여 이미지 데이터, 텍스트 데이터, 및 음성 데이터를 생성할 수 있다. 예를 들어, 모달리티 소스 데이터에 이미지 데이터가 포함된 경우, 웨어러블 디바이스(100)는 이미지 데이터에 기초하여 텍스트 데이터 및 음성 데이터를 생성할 수 있다. 예를 들어, 모달리티 소스 데이터에 텍스트 데이터가 포함된 경우, 웨어러블 디바이스(100)는 텍스트 데이터에 기초하여 이미지 데이터 및 음성 데이터를 생성할 수 있다. 예를 들어, 모달리티 소스 데이터에 음성 데이터가 포함된 경우, 웨어러블 디바이스(100)는 이미지 데이터에 기초하여 이미지 데이터 및 텍스트 데이터를 생성할 수 있다. 예를 들어, 모달리티 소스 데이터에 이미지 데이터 및 텍스트 데이터가 포함된 경우, 웨어러블 디바이스(100)는 이미지 데이터 및 텍스트 데이터 중 적어도 하나에 기초하여 음성 데이터를 생성할 수 있다. 예를 들어, 모달리티 소스 데이터에 이미지 데이터 및 음성 데이터가 포함된 경우, 웨어러블 디바이스(100)는 이미지 데이터 및 음성 데이터 중 적어도 하나에 기초하여 텍스트 데이터를 생성할 수 있다. 예를 들어, 모달리티 소스 데이터에 음성 데이터 및 텍스트 데이터가 포함된 경우, 웨어러블 디바이스(100)는 음성 데이터 및 텍스트 데이터 중 적어도 하나에 기초하여 이미지 데이터를 생성할 수 있다.
일 실시 예에 있어서, 웨어러블 디바이스(100)는 모달리티 소스 데이터를 입력으로 하는 적대적 생성 신경망(Generative Adversarial Network; 이하 GAN)의 생성기를 이용하여, 모달리티 소스 데이터에 포함되지 않은 이미지 데이터, 텍스트 데이터, 및 음성 데이터를 생성할 수 있다. GAN 의 생성기가 학습되는 방법에 대한 예시는 도 3에서 상세하게 설명한다.
일 실시 예에 있어서, 웨어러블 디바이스(100)는 음성 데이터에 기초하여 PWM(pulse width modulation) 신호를 생성할 수 있다. 예를 들어, 웨어러블 디바이스(100)는 음성 데이터에 기초하여 음성 피처(feature)를 계산(또는 추출)할 수 있다. 웨어러블 디바이스(100)는 음성 피처의 펄스 폭을 변조함으로써, PWM 신호를 생성할 수 있다. 웨어러블 디바이스(100)는 PWM 신호에 기초하여 액추에이터를 제어함으로써, 촉각 모달리티를 출력할 수 있다. 즉, 촉각 모달리티에 의한 햅틱 피드백(haptic feedback)이 사용자에게 전달할 수 있다.
일 실시 예에 있어서, 웨어러블 디바이스(100)는 음성 데이터를 주파수에 따라 필터링함으로써 서브 음성 데이터들을 생성할 수 있다. 웨어러블 디바이스(100)는 서브 음성 데이터들 각각에 기초하여 대응하는 PWM 신호를 생성할 수 있다. 서브 음성 데이터들 각각에 대응하는 PWM 신호는 대응하는 액추에이터에 전달될 수 있다.
일 실시 예에 있어서, 웨어러블 디바이스(100)는 음성 데이터를 입력으로 하는 IFN(Integrate-and-Fire Neuron) 모델을 이용하여, PWM 신호를 생성할 수 있다. IFN 모델을 이용하는 방법에 대한 예시는 도 4a 및 4b에서 상세하게 설명한다.
일 실시 예에 있어서, 웨어러블 디바이스(100)는 햅틱 일루전(haptic illusion) 방식(예컨대, 선형, 로그, 파워, 삼각법 등)을 이용하여, 음성 데이터에 기초하여 PWM 신호를 생성할 수 있다.
일 실시 예에 있어서, 웨어러블 디바이스(100)는 사용자 입력에 기초하여 PWM 신호를 조정할 수 있다. 사용자(10)가 햅틱 피드백을 느끼는 인지 정도가 상이할 수 있다. 웨어러블 디바이스(100)는 햅틱 피드백의 세기에 대응하는 사용자 입력을 수신할 수 있다. 웨어러블 디바이스(100)는 사용자 입력에 대응하는 햅틱 피드백의 세기가 형성되도록 PWM 신호를 조정할 수 있다.
일 실시 예에 있어서, 웨어러블 디바이스(100)는 사용자 메타데이터에 기초하여 PWM 신호를 조정할 수 있다. 사용자 메타데이터는 사용자의 특성(예컨대, 목소리, 나이, 성별, 키, 몸무게 등)을 나타내는 사용자 프로파일 정보를 포함할 수 있다. 예를 들어, 웨어러블 디바이스(100)는 사용자의 특성을 반영하여 햅틱 피드백의 세기가 형성되도록 PWM 신호를 조정할 수 있다. 사용자의 목소리 특성을 반영하는 방법에 대한 예시는 도 6에서 상세하게 설명한다.
일 실시 예에 있어서, 웨어러블 디바이스(100)는 이미지 데이터 및 텍스트 데이터에 기초하여 시각 모달리티를 출력할 수 있다. 예를 들어, 웨어러블 디바이스(100)는 웨어러블 디바이스(100)에 포함되는 디스플레이를 제어함으로써 시각 모달리티를 출력할 수 있다. 예를 들어, 웨어러블 디바이스(100)는 외부 장치에 이미지 데이터를 전달하고, 외부 장치로 하여금 시각 모달리티를 출력하도록 제어할 수 있다.
일 실시 예에 있어서, 웨어러블 디바이스(100)는 음성 데이터에 기초하여 청각 모달리티를 출력할 수 있다. 예를 들어, 웨어러블 디바이스(100)는 웨어러블 디바이스(100)에 포함되는 스피커를 제어함으로써 청각 모달리티를 출력할 수 있다. 예를 들어, 웨어러블 디바이스(100)는 외부 장치에 음성 데이터를 전달하고, 외부 장치로 하여금 청각 모달리티를 출력하도록 제어할 수 있다.
일 실시 예에 있어서, 웨어러블 디바이스(100)는 시각 모달리티, 청각 모달리티, 및 촉각 모달리티를 포함하는 멀티 모달리티를 동시에 출력할 수 있다.
도 2는 일 실시 예에 따른 웨어러블 디바이스의 동작을 설명하기 위한 블록도이다. 도 1에서 설명한 웨어러블 디바이스(100)의 기능, 구성, 및 동작은 웨어러블 디바이스(200)의 기능, 구성, 및 동작과 유사하므로, 중복되는 내용은 생략될 수 있다. 도 1의 웨어러블 디바이스(100)와 웨어러블 디바이스(200)가 동일한 장치인 것을 가정하여 이하 설명한다.
웨어러블 디바이스(200)는 모달리티 소스 식별기(210), 미획득 모달리티 소스 생성기(220), PWM 신호 생성기(230), 및 멀티 모달리티 출력 장치(240)를 포함할 수 있다. 모달리티 소스 식별기(210), 미획득 모달리티 소스 생성기(220), 및 PWM 신호 생성기(230)의 기능 중 적어도 일부는 웨어러블 디바이스(200)에 포함되는 적어도 하나의 프로세서에 의해 수행될 수 있다.
모달리티 소스 식별기(210)는 외부 장치 또는 사용자로부터 모달리티 소스 데이터(MSD)를 수신할 수 있다. 모달리티 소스 식별기(210)는 모달리티 소스 데이터(MSD)를 분석할 수 있다. 모달리티 소스 식별기(210)는 모달리티 소스 데이터(MSD)에 이미지 데이터(ID), 텍스트 데이터(TD), 및 음성 데이터(SD)가 포함되는지 여부를 결정할 수 있다.
모달리티 소스 데이터(MSD)에 이미지 데이터(ID), 텍스트 데이터(TD), 및 음성 데이터(SD) 모두 포함된 경우, 모달리티 소스 식별기(210)는 모달리티 소스 데이터(MSD)를 멀티 모달리티 출력 장치(240)에 전달할 수 있다.
모달리티 소스 데이터(MSD)에 이미지 데이터(ID), 텍스트 데이터(TD), 및 음성 데이터(SD) 중 적어도 하나가 포함되지 않은 경우, 모달리티 소스 식별기(210)는 모달리티 소스 데이터(MSD)를 미획득 모달리티 소스 생성기(220)와 멀티 모달리티 출력 장치(240)에 전달할 수 있다. 일 실시 예에 있어서, 모달리티 소스 데이터(MSD)에 음성 데이터(SD)가 포함된 경우, 모달리티 소스 식별기(210)는 음성 데이터(SD)를 PWM 신호 생성기(230)에 전달할 수 있다.
미획득 모달리티 소스 생성기(220)는 모달리티 소스 데이터(MSD)에 포함되지 않은 이미지 데이터(ID'), 텍스트 데이터(TD'), 및 음성 데이터(SD')를 생성할 수 있다. 미획득 모달리티 소스 생성기(220)는 모달리티 소스 데이터(MSD)를 수신할 수 있다. 모달리티 소스 데이터(MSD)에 기초하여 이미지 데이터(ID'), 텍스트 데이터(TD'), 및 음성 데이터(SD')가 생성되는 동작은 도 1에서 설명하였으므로 생략한다. 미획득 모달리티 소스 생성기(220)는 음성 데이터(SD')를 PWM 신호 생성기(230)에 전달할 수 있다.
일 실시 예에 있어서, 미획득 모달리티 소스 생성기(220)는 학습된 생성기(221)를 포함할 수 있다. 학습된 생성기(221)는 GAN 모델에 포함되는 생성기일 수 있다. 학습된 생성기(221)는 모달리티 소스 데이터(MSD)에 기초하여 이미지 데이터(ID'), 텍스트 데이터(TD'), 및 음성 데이터(SD')를 생성할 수 있다. 학습된 생성기(221)의 학습 과정은 도 3에서 상세하게 설명한다.
미획득 모달리티 소스 생성기(220)는, 모달리티 소스 데이터(MSD)에 포함되지 않았으나 미획득 모달리티 소스 생성기(220)에 의해 생성된 이미지 데이터(ID'), 텍스트 데이터(TD'), 및 음성 데이터(SD')를 멀티 모달리티 출력 장치(240)에 전달할 수 있다.
PWM 신호 생성기(230)는 모달리티 소스 식별기(210)로부터 음성 데이터(SD)를 수신하거나, 미획득 모달리티 소스 생성기(220)로부터 음성 데이터(SD')를 수신할 수 있다. PWM 신호 생성기(230)는 음성 데이터(SD, SD')에 기초하여 PWM 신호(PWMS)를 생성할 수 있다. 예시적으로, PWM 신호 생성기(230)는 음성 데이터(SD, SD')의 음성 에너지 파형을 펄스 폭 변조함으로써 PWM 신호(PWMS)을 생성할 수 있다. PWM 신호 생성기(230)의 구체적인 구성 및 기능은 도 4a 및 4b에서 상세하게 설명한다.
멀티 모달리티 출력 장치(240)는 멀티 모달리티 소스(MSD)(예컨대, 이미지 데이터(ID), 텍스트 데이터(TD), 및 음성 데이터(SD) 중 적어도 하나), 모달리티 소스 데이터(MSD)에 포함되지 않았으나 미획득 모달리티 소스 생성기(220)에 의해 생성된 이미지 데이터(ID'), 텍스트 데이터(TD'), 및 음성 데이터(SD'), 및 PWM 신호(PWMS) 신호에 기초하여 멀티 모달리티를 출력할 수 있다.
일 실시 예에 있어서, 멀티 모달리티 출력 장치(240)는 액추에이터, 디스플레이, 및 스피커를 포함할 수 있다. 예를 들어, 액추에이터는 PWM 신호(PWMS)에 기초하여 촉각 모달리티를 출력할 수 있다. 예를 들어, 디스플레이는 이미지 데이터(예컨대, ID 또는 ID') 및 텍스트 데이터(예컨대, TD 또는 TD')에 기초하여 시각 모달리티를 출력할 수 있다. 예를 들어, 스피커는 음성 데이터(예컨대, SD 또는 SD')에 기초하여 음성 모달리티를 출력할 수 있다.
도 3은 일 실시 예에 따른 적대적 생성 신경망의 학습 방법을 보여주는 블록도이다. 적대적 생성 신경망(GAN)은 생성기(generator)(321), 판별기(discriminator)(322), 및 손실 함수(loss fuction)(323)을 포함할 수 있다. GAN은 학습을 통해 생성기(321)와 판별기(322)가 서로의 성능을 개선해 적대적으로 경쟁해 나가는 모델이다. 생성기(321) 및 판별기(322) 각각은 적어도 하나의 레이어를 포함할 수 있다. 레이어는 입력 데이터로부터 특징을 추출하기 위한 가중치 정보들로 구성된 필터를 포함할 수 있다.
생성기(321)는 데이터 셋(DS)을 입력으로 하여, 가짜 데이터(FD)를 출력하도록 학습될 수 있다. 데이터 셋(DS)은 이미지, 텍스트, 및 음성 중 적어도 하나를 포함하는 데이터의 집합일 수 있다. 가짜 데이터(FD)는 가짜 이미지 데이터, 가짜 텍스트 데이터 또는 가짜 음성 데이터일 수 있다.
실제 데이터 DB(310)는 실제 데이터(RD)의 집합을 포함할 수 있다. 실제 데이터(RD)는 가짜 데이터(FD)에 대응할 수 있다. 예를 들어, 가짜 데이터(FD)가 가짜 이미지 데이터인 경우, 실제 데이터(RD)는 실제 이미지 데이터일 수 있다.
판별기(322)는 가짜 데이터(FD) 또는 실제 데이터(RD)를 입력으로 하여, 가짜 데이터(FD) 또는 실제 데이터(RD)의 가짜 여부를 판별하도록 학습될 수 있다.
손실 함수(323)는 판별 결과(DR)에 기초하여 손실 함수 값을 계산할 수 있다. 손실 함수 값은 역전파를 통해 판별기(322) 및 생성기(321)에 전달될 수 있다. 판별기(322) 및 생성기(321)에 포함되는 적어도 하나의 레이어의 가중치는 손실 함수 값에 기초하여 업데이트될 수 있다.
일 실시 예에 있어서, 생성기(321)는 데이터 셋(DS)의 유형 및 출력 데이터에 따라 복수 개의 서브 생성기들을 포함할 수 있다. 예를 들어, 제1 서브 생성기는 이미지 데이터의 집합인 데이터 셋을 입력으로 하여, 가짜 음성 데이터를 출력하도록 학습될 수 있다. 예를 들어, 제2 서브 생성기는 이미지 데이터의 집합인 데이터 셋을 입력으로 하여, 가짜 텍스트 데이터를 출력하도록 학습될 수 있다. 예를 들어, 제3 서브 생성기는 이미지 데이터 및 텍스트 데이터의 집합인 데이터 셋을 입력으로 하여, 가짜 음성 데이터를 출력하도록 학습될 수 있다. 그러나 본 개시는 이에 제한되지 않으며, 생성기(321)는, 데이터 셋의 유형(예컨대, 이미지, 텍스트, 및 음성 중 적어도 하나를 포함하는 데이터의 집합) 및 출력 데이터(예컨대, 가짜 이미지 데이터, 가짜 텍스트 데이터 또는 가짜 음성 데이터)의 임의의 조합을 특징으로 하는 서브 생성기들을 포함할 수 있다.
일 실시 예에 있어서, 유사하게, 판별기(322)는 생성기(321)가 출력하는 출력 데이터, 즉 가짜 데이터(FD)의 유형에 따라 복수 개의 서브 판별기들을 포함할 수 있다. 예를 들어, 제1 서브 판별기는 가짜 음성 데이터 또는 실제 음성 데이터를 입력으로 하여, 가짜 음성 데이터 또는 실제 음성 데이터의 가짜 여부를 판별하도록 학습될 수 있다. 제2 서브 판별기는 가짜 이미지 데이터 또는 실제 이미지 데이터를 입력으로 하여, 가짜 이미지 데이터 또는 실제 이미지 데이터의 가짜 여부를 판별하도록 학습될 수 있다. 제3 서브 판별기는 가짜 텍스트 데이터 또는 실제 텍스트 데이터를 입력으로 하여, 가짜 텍스트 데이터 또는 실제 텍스트 데이터의 가짜 여부를 판별하도록 학습될 수 있다.
도 2와 함께, 도 3을 참조하면, 생성기(321)는 상술한 GAN의 학습 과정을 통해 학습될 수 있으며, 학습된 생성기(321)는 도 2의 학습된 생성기(221)와 구성, 기능, 동작이 유사할 수 있다.
도 4a 및 4b는 도 2의 PWM 신호 생성기를 좀 더 상세하게 보여주는 블록도들이다.
도 2와 함께, 도 4a를 참조하면, PWM 신호 생성기(230)는 분배기(231), 음성 피처 추출기(232), IFN 모델(233), 및 PWM 신호 변환기(234)를 포함할 수 있다.
분배기(231)는 모달리티 소스 식별기(210) 또는 미획득 모달리티 소스 생성기(220)로부터 음성 데이터(예컨대, SD 또는 SD')를 입력 받을 수 있다. 분배기(231)는 음성 데이터(예컨대, SD 또는 SD')의 주파수 범위에 대한 에너지 스펙트럼을 측정할 수 있다. 분배기(231)는 측정된 에너지 스펙트럼에 기초하여, 미리 정의된 스케일(예컨대, 선형, 로그(log10, ln, Mel), 지수 등)로 서브 음성 데이터(예컨대, SSD1, SSD2, SSD3)를 생성할 수 있다. 예시적으로, 서브 음성 데이터(예컨대, SSD1, SSD2, SSD3)의 개수는 액추에이터(예컨대, 410a, 410b, 410c)의 개수와 동일할 수 있다. 설명의 편의를 위해 액추에이터와 서브 음성 데이터의 개수는 3 개인 것으로 도시되었으나, 본 개시는 이에 제한되지 않는다.
분배기(231)는 적어도 하나의 필터(예컨대, 231a, 231b, 231c)를 포함할 수 있다. 적어도 하나의 필터(예컨대, 231a, 231b, 231c)는 음성 데이터(예컨대, SD 또는 SD')의 주파수 성분에 따라 적어도 하나의 서브 음성 데이터(예컨대, SSD1, SSD2, SSD3)로 필터링할 수 있다.
예시적으로, 분배기(231)는 로우 패스 필터(low pass filter; 이하, LPF)(231a), 밴드 패스 필터(band pass filter; 이하, BPF)(231b), 및 하이 패스 필터(high pass filter; 이하, HPF)(231c)를 포함할 수 있다. LPF(231a)는 음성 데이터(예컨대, SD 또는 SD')에 대응하는 신호의 제1 차단 주파수(cutoff frequency) 이상의 신호를 감쇠시킴으로써 차단 주파수 이하의 신호만 통과시키는 필터일 수 있다. LPF(231a)는 음성 데이터(예컨대, SD 또는 SD')에 기초하여 제1 서브 음성 데이터(SSD1)를 출력할 수 있다. BPF(231b)는 음성 데이터(예컨대, SD 또는 SD')에 대응하는 신호의 제1 차단 주파수 및 제2 차단 주파수 사이의 신호만 통과시키는 필터일 수 있다. BPF(231b)는 음성 데이터(예컨대, SD 또는 SD')에 기초하여 제2 서브 음성 데이터(SSD2)를 출력할 수 있다. HPF(231c)는 음성 데이터(예컨대, SD 또는 SD')에 대응하는 신호의 제2 차단 주파수 이하의 신호를 감쇠시킴으로써 차단 주파수 이상의 신호만 통과시키는 필터일 수 있다. HPF(231c)는 음성 데이터(예컨대, SD 또는 SD')에 기초하여 제3 서브 음성 데이터(SSD3)를 출력할 수 있다.
음성 피처 추출기(232)는 적어도 하나의 서브 음성 데이터(예컨대, SSD1, SSD2, SSD3)에 기초하여, 서브 음성 데이터 각각에 대응하는 적어도 하나의 음성 피처(예컨대, SF1, SF2, SF3)를 추출할 수 있다. 예를 들어, 음성 피처(예컨대, SF1, SF2, SF3)는 적어도 하나의 서브 음성 데이터(예컨대, SSD1, SSD2, SSD3) 각각의 음성 에너지(진폭으로도 지칭될 수 있음), 주파수, 피치, 및 강도 중 적어도 하나를 포함할 수 있으나, 본 개시는 이에 제한되지 않는다. 예를 들어, 음성 피처는 스펙트로그램(spectrogram) 기법을 이용하여 추출될 수 있으나, 본 개시는 이에 제한되지 않으며, 스펙트럼(spectrum), 멜 스펙트로그램(Mel spectrogram), MFCC(Mel-Frequency Cepstral Coefficient) 기법 등이 이용될 수 있다.
예시적으로, 음성 피처 추출기(232)는 제1 서브 음성 데이터(SSD1)에 기초하여 적어도 하나의 제1 음성 피처(SF1)를 추출할 수 있다. 음성 피처 추출기(232)는 제2 서브 음성 데이터(SSD2)에 기초하여 적어도 하나의 제2 음성 피처(SF2)를 추출할 수 있다. 음성 피처 추출기(232)는 제3 서브 음성 데이터(SSD3)에 기초하여 적어도 하나의 제3 음성 피처(SF3)를 추출할 수 있다.
일 실시 예에 있어서, 서브 음성 데이터(예컨대, SSD1, SSD2, SSD3) 각각에 대응하는 음성 피처(예컨대, SF1, SF2, SF3)가 복수 개인 경우(예를 들어, 음성 피처(예컨대, SF1, SF2, SF3)가 적어도 하나의 서브 음성 데이터(예컨대, SSD1, SSD2, SSD3)의 음성 에너지, 주파수, 피치, 및 강도 중 적어도 둘 이상인 경우), IFN 모델(233)은 음성 피처들 간의 상관 관계 및 음성 피처들 각각의 통계 분포(예컨대, 분산 값)를 계산할 수 있다. IFN 모델(233)은 음성 피처들 중 대표 음성 피처를 선정할 수 있다.
IFN 모델(233)은 음성 피처(예컨대, SF1, SF2, SF3)(또는 대표 음성 피처)의 분산 값을 계산할 수 있다. IFN 모델(233)은 음성 피처(예컨대, SF1, SF2, SF3)의 분산 값의 임계 값 초과 여부를 식별할 수 있다. 음성 피처(예컨대, SF1, SF2, SF3)의 분산 값이 임계 값을 초과한 경우, IFN 모델(233)은 적어도 하나의 서브 음성 데이터(예컨대, SSD1, SSD2, SSD3)의 음성 에너지 강도 및 적어도 하나의 서브 음성 데이터(예컨대, SSD1, SSD2, SSD3)의 음성 에너지 기울기(gradient)에 기초하여 음성 피처(예컨대, SF1, SF2, SF3)를 필터링할 수 있다. IFN 모델(233)은 필터링된 음성 피처(예컨대, SF1', SF2', SF3')를 PWM 신호 변환기(234)에 전달할 수 있다. 예를 들어, 음성 에너지 강도는 음성 데이터에 대응하는 음성의 크기를 나타낼 수 있다. 예를 들어, 음성 에너지 강도는 데시벨(dB)을 단위로 하여 표현될 수 있다. 예를 들어, 음성 에너지 기울기는 음성 에너지 강도의 단위 시간당 변화량을 나타낼 수 있다. 예를 들어, 음성 에너지 기울기는 ddB/dt 와 같이 표현될 수 있다.
일 실시 예에 있어서, IFN 모델(233)은 노멀라이저(233_1), SEI(sound energy intensity) 필터(233_2), SEG(sound energy gradient) 필터(233_3), 및 액티브 함수(233_4)를 포함할 수 있다.
노멀라이저(233_1)는 음성 피처(예컨대, SF1, SF2, SF3)를 시간 도메인 및 에너지 도메인에서 정규화할 수일 수 있다. 예를 들어, 노멀라이저(233_1)는 음성 에너지 강도의 최댓값 및 최솟값에 기초하여 음성 피처를 정규화할 수 있다.
SEI 필터(233_2)는 적어도 하나의 서브 음성 데이터(예컨대, SSD1, SSD2, SSD3)의 음성 에너지 강도의 분포(예컨대, 분산 값)에 기초하여 강도 임계 값을 계산할 수 있다. 일 실시 예에 있어서, 강도 임계 값은 미리 정의된 수학식에 의해 산출될 수 있다. 일 실시 예에 있어서, 강도 임계 값은 미리 정의된 값일 수 있다. SEI 필터(233_2)는 음성 피처(예컨대, SF1, SF2, SF3) 중 적어도 하나의 서브 음성 데이터(예컨대, SSD1, SSD2, SSD3)의 음성 에너지 강도의 강도 임계 값을 초과하는 구간 및 강도 임계 값을 초과하지 않는 구간을 추출할 수 있다.
SEG 필터(233_3)는 적어도 하나의 서브 음성 데이터(예컨대, SSD1, SSD2, SSD3)의 음성 에너지 기울기의 분포에 기초하여 기울기 임계 값을 계산할 수 있다. 일 실시 예에 있어서, 기울기 임계 값은 미리 정의된 수학식에 의해 산출될 수 있다. 일 실시 예에 있어서, 기울기 임계 값은 미리 정의된 값일 수 있다. SEG 필터(233_3)는 음성 피처(예컨대, SF1, SF2, SF3) 중 적어도 하나의 서브 음성 데이터(예컨대, SSD1, SSD2, SSD3)의 음성 에너지 강도의 강도 임계 값을 초과하는 구간 및 강도 임계 값을 초과하지 않는 구간을 추출할 수 있다. IFN 모델(233)은 강도 임계 값 및 기울기 임계 값을 초과하는 음성 피처의 구간을 통과시킬 수 있다. IFN 모델(233)은 강도 임계 값 및 기울기 임계 값 중 적어도 하나를 초과하지 않는 음성 피처의 구간을 미리 정의된 가중치 값을 부여하여 감쇠시킬 수 있다. IFN 모델(233)이 특정 음성 피처의 구간을 통과시키고, 감쇠시키는 기능은 액티브 함수(active function)(233_4)로 명명될 수 있다. 액티브 함수(233_4)를 통해 필터링된 음성 피처(예컨대, SF1', SF2', SF3')는 PWM 신호 변환기(234)로 전달될 수 있다.
음성 피처(예컨대, SF1, SF2, SF3)의 분산 값이 임계 값을 초과하지 않은 경우, IFN 모델(233)은 음성 피처(예컨대, SF1, SF2, SF3)를 PWM 신호 변환기(234)에 전달할 수 있다.
PWM 신호 변환기(234)는 음성 피처(예컨대, SF1, SF2, SF3) 또는 필터링된 음성 피처(예컨대, SF1', SF2', SF3')에 기초하여, 적어도 하나의 PWM 신호(예컨대, PWMS1, PWMS2, PWMS3)를 생성할 수 있다. PWM 신호 변환기(234)는 음성 피처(예컨대, SF1, SF2, SF3) 또는 필터링된 음성 피처(예컨대, SF1', SF2', SF3')에 대응하는 적어도 하나의 서브 음성 데이터(예컨대, SSD1, SSD2, SSD3)의 음성 에너지 강도와 듀티 사이클(duty cycle)을 맵핑함으로써, 적어도 하나의 PWM 신호(예컨대, PWMS1, PWMS2, PWMS3)를 생성할 수 있다.
예시적으로, PWM 신호 변환기(234)는 제1 음성 피처(예컨대, SF1 또는 SF1')에 기초하여 제1 PWM 신호(PWMS1)를 생성할 수 있다. 제1 PWM 신호(PWMS1)는 제1 액추에이터(410a)에 전달될 수 있다. PWM 신호 변환기(234)는 제2 음성 피처(예컨대, SF2 또는 SF2')에 기초하여 제2 PWM 신호(PWMS2)를 생성할 수 있다. 제2 PWM 신호(PWMS2)는 제2 액추에이터(410b)에 전달될 수 있다. PWM 신호 변환기(234)는 제3 음성 피처(예컨대, SF3 또는 SF3')에 기초하여 제3 PWM 신호(PWMS3)를 생성할 수 있다. 제3 PWM 신호(PWMS3)는 제3 액추에이터(410c)에 전달될 수 있다. 여기서, 제1 내지 제3 액추에이터들(410a, 410b, 410c)은 웨어러블 디바이스(200)에 포함될 수 있다.
일 실시 예에 있어서, PWM 신호 변환기(234)는 사용자 메타데이터 DB(420)로부터 사용자 스피치 특징을 획득할 수 있다. PWM 신호 변환기(234)는 사용자 스피치 특징에 기초하여 적어도 하나의 PWM 신호(예컨대, PWMS1, PWMS2, PWMS3)를 조정할 수 있다. 예를 들어, PWM 신호 변환기(234)는 PWM 신호(예컨대, PWMS1, PWMS2, PWMS3)에 대해 시간 도메인 리-스케일링(re-scaling) 또는 파형 간격 시프팅(waveform interval shifting)을 수행할 수 있다. 일 실시 예에 따르면, 사용자 스피치 특징을 반영한 PWM 신호가 생성됨으로써, 사용자에게 더 나은 햅틱 피드백을 전달할 수 있다. 예를 들어, 사용자 스피치 특징은 사용자의 목소리(예컨대, 작은 목소리, 큰 목소리, 낮은 목소리, 높은 목소리, 느린 목소리, 빠른 목소리, 울리는 목소리, 쉰 목소리, 갈라지는 목소리 등)에 대응하는 데이터일 수 있다.
일 실시 예에 있어서, PWM 신호 변환기(234)는 사용자 입력(UI)를 획득(또는 수신)할 수 있다. PWM 신호 변환기(234)는 사용자 입력(UI)에 기초하여 적어도 하나의 PWM 신호(예컨대, PWMS1, PWMS2, PWMS3)를 조정할 수 있다. 일 실시 예에 따르면, 사용자 입력을 반영한 PWM 신호가 생성됨으로써, 사용자에게 더 나은 햅틱 피드백을 전달할 수 있다.
도 2와 함께, 도 4b를 참조하면, 일 실시 예에 있어서, PWM 신호 생성기(230)는 음성 피처 추출기(232), IFN 모델(233), 및 PWM 신호 변환기(234)를 포함할 수 있다. 즉, 도 4a에 도시된 분배기(231)가 생략될 수 있다. 음성 피처 추출기(232) 및 IFN 모델(233)의 구성, 기능, 및 동작은 도 4b에서 설명한 음성 피처 추출기(232) 및 IFN 모델(233)의 구성, 기능, 및 동작과 유사하므로, 중복되는 내용은 이하 생략한다.
음성 피처 추출기(232)는 모달리티 소스 식별기(210) 또는 미획득 모달리티 소스 생성기(220)로부터 음성 데이터(예컨대, SD 또는 SD')를 입력 받을 수 있다. 음성 피처 추출기(232)는 음성 데이터(예컨대, SD 또는 SD')에 기초하여, 음성 피처(SF)를 추출할 수 있다. IFN 모델(233)은 음성 피처(SF)의 분산 값을 계산할 수 있다. 음성 피처(SF)의 분산 값이 임계 값을 초과한 경우, IFN 모델(233)은 음성 피처(SF)를 필터링하고, 필터링된 음성 피처(SF')를 PWM 신호 변환기(234)에 전달할 수 있다. 음성 피처(SF)의 분산 값이 임계 값을 초과하지 않은 경우, IFN 모델(233)은 음성 피처(SF)를 PWM 신호 변환기(234)에 전달할 수 있다.
PWM 신호 변환기(234)는 음성 피처(예컨대, SF 또는 SF')에 기초하여 PWM 신호(PWMSA) 및 부분 PWM 신호(PWMSP)를 생성할 수 있다. PWM 신호 변환기(234)는 음성 피처(SF) 또는 필터링된 음성 피처(SF')에 대응하는 음성 데이터(SD 또는 SD')의 음성 에너지 강도와 듀티 사이클(duty cycle)을 맵핑함으로써 PWM 신호(PWMSA)를 생성할 수 있다.
변환된 신호의 전체 영역(DCI2)에 대응하는 신호가 PWM 신호(PWMSA)로 명명되고, 변환된 신호의 부분 영역(DCI1)에 대응하는 신호가 부분 PWM 신호(PWMSP)로 명명될 수 있다. 부분 영역(DCI1)은 듀티 사이클이 미리 정의된 값을 초과하는 영역일 수 있다. 예를 들어, 부분 영역(DCI1)은 듀티 사이클이 200을 초과하는 영역일 수 있다. PWM 신호(PWMSA)는 제2 액추에이터(410b)에 전달될 수 있다. 부분 PWM 신호(PWMSP)는 제1 및 제3 액추에이터들(410a, 410c)에 전달될 수 있다.
도 5는 일 실시 예에 따른 웨어러블 디바이스가 사용자 입력에 기초하여 PWM 신호를 조정하는 방법을 설명하기 위한 개념도이다. 도 1 내지 도 4b와 함께, 도 5를 참조하면, 웨어러블 디바이스(100, 200)는 사용자 입력을 수신할 수 있다. 예시적으로, 사용자 입력은 웨어러블 디바이스(100, 200)에 직접 연결된 디스플레이 또는 외부 장치의 디스플레이의 터치 입력을 통해 입력될 수 있으나, 본 개시는 터치 입력을 통해 사용자 입력을 수신하는 방식에 한정되지 않는다.
웨어러블 디바이스(100, 200)는 디스플레이에 주파수 대역 선택 창 및 커스터마이징 창을 표시할 수 있다. 주파수 대역 선택 창에는 적어도 하나의 필터에 기초하여 필터링된 서브 음성 데이터들에 대응하는 시각화 데이터가 표시될 수 있다. 웨어러블 디바이스(100, 200)는 주파수 대역을 선택하기 위한 제1 사용자 입력을 수신할 수 있다. 웨어러블 디바이스(100, 200)는 제1 사용자 입력에 응답하여, 선택된 주파수 대역에 대응하는 PWM 신호의 시각화 데이터를 디스플레이(예컨대, 커스터마이징 창)에 표시할 수 있다.
웨어러블 디바이스(100, 200)는 PWM 신호를 조정하기 위한 제2 사용자 입력을 수신할 수 있다. 예를 들어, 제2 사용자 입력은 PWM 신호의 특정 시점에서의 듀티 사이클을 상승(UP)시키거나 하락(DOWN)시키는 데이터에 대응할 수 있다. 도시되지 않았으나, 제2 사용자 입력은 PWM 신호의 시간 도메인을 조정하는 데이터에 대응할 수 있다.
도 6은 일 실시 예에 따른 웨어러블 디바이스가 커브 가중치 팩터를 이용하여 PWM 신호를 조정하는 방법을 설명하기 위한 개념도이다. 도 1 내지 도 4b와 함께, 도 5를 참조하면, 웨어러블 디바이스(100, 200)의 PWM 신호 생성기(230)는 PWM 신호에 커브 가중치 팩터를 적용할 수 있다. 일 실시 예에 따르면, PWM 신호에 커브 가중치 팩터를 적용함으로써, PWM 신호를 스무딩(smoothing) 필터링하거나, 러핑(roughing) 필터링할 수 있다.
도 7a 내지 7c는 일 실시 예에 따른 웨어러블 디바이스가 사용자 스피치 특징에 기초하여 PWM 신호를 조정하는 방법을 설명하기 위한 개념도이다. 도 1 내지 도 4b와 함께, 도 7a 내지 7b를 참조하면, 웨어러블 디바이스(100, 200)는 사용자 메타데이터 DB로부터 사용자 스피치 특징을 획득할 수 있다. 웨어러블 디바이스(100, 200)는 사용자 스피치 특징에 기초하여 커스텀 필터를 선택할 수 있다. 커스텀 필터는 제조사의 설정 또는 사용자의 입력에 의해 결정될 수 있다. 예를 들어, 커스텀 필터는 quieter 필터, louder 필터, slower 필터, 및 faster 필터를 포함할 수 있으나, 이에 한정되는 것은 아니다. 웨어러블 디바이스(100, 200)는 사용자 스피치 특징에 기초하여 선택된 커스텀 필터를 이용하여, PWM 신호를 조정할 수 있다.
예를 들어, quieter 필터는 PWM 신호의 듀티 사이클을 일정 비율로 감소시키는 필터일 수 있다. 일 실시 예에 따른 quieter 필터를 이용함으로써, 사용자의 목소리가 크거나 높은 스타일인 경우, PWM 신호의 강도가 감소되어 사용자의 촉각 인지가 향상될 수 있다. 예를 들어, louder 필터는 PWM 신호의 듀티 사이클을 일정 비율로 증가시키는 필터일 수 있다. 일 실시 예에 따른 louder 필터를 이용함으로써, 사용자의 목소리가 작거나 낮은 스타일인 경우, PWM 신호의 강도가 증가되어 사용자의 촉각 인지가 향상될 수 있다. 예를 들어, slower 필터는 PWM 신호의 시간 도메인을 일정 비율로 확장시키는 필터일 수 있다. 일 실시 예에 따른 slower 필터를 이용함으로써, 사용자의 목소리가 빠른 스타일인 경우, PWM 신호의 속도가 감소되어 사용자의 촉각 인지가 향상될 수 있다. 예를 들어, faster 필터는 PWM 신호의 시간 도메인을 일정 비율로 축소시키는 필터일 수 있다. 일 실시 예에 따른 faster 필터를 이용함으로써, 사용자의 목소리가 느린 스타일인 경우, PWM 신호의 속도가 증가되어 사용자의 촉각 인지가 향상될 수 있다.
도 8은 일 실시 예에 따른 IFN 모델의 효과를 설명하기 위한 개념도이다. 도 1 내지 4b와 함께, 도 8을 참조하면, 웨어러블 디바이스(100, 200)는 멀티 모달리티를 사용자에게 제공할 수 있다. 웨어러블 디바이스(100, 200)는 IFN 모델(233)을 이용하여 음성 피처를 필터링할 수 있다. 도 8은 웨어러블 디바이스(100, 200)가 IFN 모델(233)을 이용하여 촉각 모달리티를 10명의 사용자들 각각에게 제공한 경우(C1_PM, C2_PM, ..., C10_PM)와, 웨어러블 디바이스(100, 200)가 IFN 모델(233)을 이용하지 않고 촉각 모달리티를 10명의 사용자들 각각에게 제공한 경우(C1_CM, C2_CM, ..., C10_CM)에서, 10명의 사용자들 각각이 촉각 모달리티에 대응하는 이모지(이미지, 텍스트, 음성을 포함하는 데이터)들을 구별하는 정확성을 실험한 결과를 보여준다. 도 8을 참조하면, 웨어러블 디바이스(100, 200)가 IFN 모델(233)를 이용한 경우에서 더 나은 정확성을 보여주는 것을 알 수 있다. 즉, 웨어러블 디바이스(100, 200)가 IFN 모델(233)을 이용함으로써 사용자들의 촉각 인지가 향상될 수 있다.
도 9a는 일 실시 예에 따른 웨어러블 디바이스의 동작 방법을 설명하기 위한 흐름도이다. 설명의 편의를 위해, 도 1 내지 4b를 참조하여 도 9a를 설명한다. 웨어러블 디바이스(100, 200)의 동작 방법은 단계 S910 내지 S950을 포함할 수 있다. 일 실시 예에 있어서, 단계 S910 내지 S950은 웨어러블 디바이스(100, 200) 또는 웨어러블 디바이스(100, 200)의 프로세서에 의해 수행될 수 있다. 일 실시 예에 따른 웨어러블 디바이스(100, 200)의 동작 방법은 도 9a에 도시된 바에 한정되지 않으며, 도 9a에 도시된 단계 중 어느 하나를 생략할 수도 있고, 도 9a에 도시되지 않은 단계를 더 포함할 수도 있다.
단계 S910에서, 웨어러블 디바이스(100, 200)는 이미지 데이터, 텍스트 데이터, 및 음성 데이터 중 적어도 하나를 포함하는 소스 데이터를 획득할 수 있다. 예를 들어, 소스 데이터는 이미지 데이터를 포함할 수 있다. 소스 데이터는 텍스트 데이터를 포함할 수 있다. 소스 데이터는 음성 데이터를 포함할 수 있다. 소스 데이터는 이미지 데이터 및 텍스트 데이터를 포함할 수 있다. 소스 데이터는 이미지 데이터 및 음성 데이터를 포함할 수 있다. 소스 데이터는 텍스트 데이터 및 음성 데이터를 포함할 수 있다. 소스 데이터는 이미지 데이터, 텍스트 데이터, 및 음성 데이터를 포함할 수 있다.
단계 S920에서, 웨어러블 디바이스(100, 200)는 소스 데이터에 이미지 데이터, 텍스트 데이터 및 음성 데이터가 포함되는지 여부를 식별할 수 있다. 소스 데이터에 이미지 데이터, 텍스트 데이터 및 음성 데이터 중 적어도 하나가 포함되지 않은 경우, 절차는 단계 S930으로 이동한다. 소스 데이터에 이미지 데이터, 텍스트 데이터 및 음성 데이터 모두가 포함된 경우, 절차는 단계 S940으로 이동한다. 단계 S920의 세부 단계들은 도 9b에서 상세하게 설명한다.
단계 S930에서, 웨어러블 디바이스(100, 200)는 소스 데이터를 입력으로 하는 GAN의 (학습된) 생성기를 이용하여, 소스 데이터에 포함되지 않은 이미지 데이터, 텍스트 데이터, 및 음성 데이터를 생성하고, 절차는 단계 S940으로 이동한다.
일 실시 예에 있어서, GAN은, 이미지 데이터, 텍스트 데이터, 및 음성 데이터 중 적어도 하나를 포함하지 않는 훈련 소스 데이터를 획득하고, 훈련 소스 데이터를 입력으로 하는 생성기를 이용하여, 훈련 소스 데이터에 포함되지 않는 이미지 데이터, 텍스트 데이터, 및 음성 데이터 중 적어도 하나에 대응하는 가상 데이터를 생성하고, 가상 데이터 및 가상 데이터에 대응하는 실제 데이터를 입력으로 하는 판별기(discriminator)를 이용하여, 가상 데이터 및 상기 실제 데이터의 실제 여부를 판단하고, 판단 결과에 기초하여 생성기 및 판별기를 학습시키는 동작을 수행함으로써 미리 학습된 모델일 수 있다.
단계 S940에서, 웨어러블 디바이스(100, 200)는 음성 데이터에 기초하여 PWM 신호를 생성할 수 있다. 단계 S940의 세부 단계들은 도 9c 또는 9d에서 상세하게 설명한다. 일 실시 예에 있어서, 웨어러블 디바이스(100, 200)는 사용자 메타데이터로부터 사용자 스피치 특징을 획득할 수 있다. 웨어러블 디바이스(100, 200)는 사용자 스피치 특징에 기초하여 PWM 신호를 조정할 수 있다. 일 실시 예에 있어서, 웨어러블 디바이스(100, 200)는 사용자 입력을 획득할 수 있다. 웨어러블 디바이스(100, 200)는 사용자 입력에 기초하여 PWM 신호를 조정할 수 있다.
단계 S950에서, 웨어러블 디바이스(100, 200)는 이미지 데이터, 텍스트 데이터, 음성 데이터, 및 PWM 신호에 기초하여 멀티 모달리티를 출력하고, 절차는 종료된다. 웨어러블 디바이스(100, 200)는 이미지 데이터 및 텍스트 데이터에 기초하여 시각 모달리티를 출력할 수 있다. 웨어러블 디바이스(100, 200)는 음성 데이터에 기초하여 청각 모달리티를 출력할 수 있다. 웨어러블 디바이스(100, 200)는 PWM 신호에 기초하여 촉각 모달리티를 출력할 수 있다.
도 9b는 일 실시 예에 따른 소스 데이터에 이미지 데이터, 텍스트 데이터, 및 음성 데이터가 포함되는지 여부를 결정하는 방법을 설명하기 위한 흐름도이다. 설명의 편의를 위해, 도 1 내지 4b, 및 9a를 참조하여 도 9b를 설명한다. 일 실시 예에 따른 단계 S920은 단계 S921, S922a,S 922b 및 S922c를 포함할 수 있다.
단계 S921에서, 웨어러블 디바이스(100, 200)는 소스 데이터를 분석할 수 있다. 단계 S922a에서, 웨어러블 디바이스(100, 200)는 분석 결과에 기초하여 소스 데이터에 이미지 데이터가 존재하는지를 식별할 수 있다. 단계 S922b에서, 웨어러블 디바이스(100, 200)는 분석 결과에 기초하여 소스 데이터에 텍스트 데이터가 존재하는지를 식별할 수 있다. 단계 S922c에서, 웨어러블 디바이스(100, 200)는 분석 결과에 기초하여 소스 데이터에 음성 데이터가 존재하는지를 식별할 수 있다. 단계 S921 이후, 단계 S922a, S922b 및 S922c가 수행되는 순서는 제조사의 설정 또는 사용자의 입력에 의해 결정될 수 있다. 단계 S922a, S922b 및 S922c에 의해 이미지 데이터, 텍스트 데이터, 음성 데이터 중 적어도 하나가 존재하지 않는 것으로 식별되는 경우, 절차는 S930으로 이동한다. 단계 S922a, S922b 및 S922c에 의해 이미지 데이터, 텍스트 데이터, 음성 데이터 모두가 존재하는 것으로 식별되는 경우, 절차는 S940으로 이동한다.
도 9c 및 9d는 일 실시 예에 따른 음성 데이터에 기초하여 PWM 신호를 생성하는 방법을 설명하기 위한 흐름도이다.
설명의 편의를 위해, 도 1 내지 4b, 및 9a를 참조하여 도 9c를 설명한다. 일 실시 예에 따른 단계 S940은 단계 S941, S942, S943, S944 및 S945를 포함할 수 있다.
단계 S941에서, 웨어러블 디바이스(100, 200)는 적어도 하나의 필터(예컨대, LPF, BPF, HPF)를 이용하여, 음성 데이터를 주파수 성분에 따라 적어도 하나의 서브 음성 데이터로 필터링할 수 있다.
단계 S942에서, 웨어러블 디바이스(100, 200)는 적어도 하나의 서브 음성 데이터에 기초하여, 음성 피처를 획득할 수 있다. 일 실시 예에 있어서, 음성 피처는 음성 에너지(진폭), 주파수, 피치, 및 강도 중 적어도 하나를 포함할 수 있다.
일 실시 예에 있어서, 단계 S942는, 적어도 하나의 서브 음성 데이터에 기초하여 복수의 음성 피처들을 추출하는 단계, 복수의 음성 피처들 간의 상관 관계 및 복수의 음성 피처들의 분산 값을 계산하는 단계, 및 상관 관계 및 분산 값에 기초하여 대표 음성 피처를 선정하는 단계를 포함할 수 있다.
단계 S943에서, 웨어러블 디바이스(100, 200)는 음성 피처(대표 음성 피처를 선정한 경우, 대표 음성 피처)의 분산 값의 임계 값 초과 여부를 식별할 수 있다. 음성 피처의 분산 값이 임계 값을 초과한 경우, 절차는 단계 S944로 이동한다. 음성 피처의 분산 값이 임계 값을 초과하지 않은 경우, 절차는 단계 S945로 이동한다.
단계 S944에서, 웨어러블 디바이스(100, 200)는 적어도 하나의 서브 음성 데이터의 음성 에너지 강도 및 적어도 하나의 서브 음성 데이터의 음성 에너지 기울기에 기초하여 음성 피처를 필터링할 수 있다.
일 실시 예에 있어서, 단계 S944는, 적어도 하나의 서브 음성 데이터를 정규화하는 단계, 음성 피처 중, 음성 에너지 강도가 강도 임계 값을 초과하는 구간 및 강도 임계 값을 초과하지 않는 구간을 추출하는 단계, 음성 피처 중, 음성 에너지 기울기가 기울기 임계 값을 초과하는 구간 및 기울기 임계 값을 초과하지 않는 구간을 추출하는 단계, 강도 임계 값 및 기울기 임계 값을 초과하는 음성 피처의 구간을 통과시키고, 강도 임계 값 및 기울기 임계 값 중 적어도 하나를 초과하지 않는 음성 피처의 구간을 감쇠시키는 단계를 포함할 수 있다.
단계 S945에서, 웨어러블 디바이스(100, 200)는 음성 피처에 대응하는 적어도 하나의 서브 음성 데이터의 음성 에너지 강도와 듀티 사이클을 맵핑함으로써, 상기 PWM 신호를 생성할 수 있다.
설명의 편의를 위해, 도 1 내지 4b, 및 9a를 참조하여 도 9d를 설명한다. 일 실시 예에 따른 단계 S940은 단계 S946, S947, 및 S948를 포함할 수 있다.
단계 S946에서, 웨어러블 디바이스(100, 200)는 음성 데이터에 기초하여 음성 피처를 획득할 수 있다.
단계 S947에서, 웨어러블 디바이스(100, 200)는 음성 피처에 대응하는 음성 데이터의 음성 에너지 강도와 듀티 사이클을 맵핑함으로써 PWM 신호를 생성할 수 있다.
단계 S948에서, 웨어러블 디바이스(100, 200)는 PWM 신호 중 듀티 사이클이 미리 정의된 값을 초과하는 부분 영역에 대응하는 신호를 제1 액추에이터에 전달하고, PWM 신호의 전체 영역에 대응하는 신호를 제2 액추에이터에 전달할 수 있다. 일 실시 예에 있어서, 웨어러블 디바이스(100, 200)는 PWM 신호 중 듀티 사이클이 미리 정의된 값을 초과하는 부분 영역에 대응하는 신호를 제1 및 제3 액추에이터에 전달하고, PWM 신호의 전체 영역에 대응하는 신호를 제2 액추에이터에 전달할 수 있다.
도 10은 일 실시 예에 따른 웨어러블 디바이스의 구성을 보여주는 블록도이다. 도 1 내지 4b와 함께, 도 5를 참조하면, 웨어러블 디바이스(1000)의 구성, 기능, 동작은 웨어러블 디바이스(100, 200)의 구성, 기능, 동작과 유사할 수 있다.
웨어러블 디바이스(1000)는 통신 인터페이스(1100), 사용자 인터페이스(1200), 적어도 하나의 액추에이터(1300), 디스플레이(1400), 스피커(1500), 메모리(1600), 및 프로세서(1700)을 포함할 수 있다.
통신 인터페이스(1100)는 웨어러블 디바이스(1000)와 외부의 다른 전자 장치(미도시) 또는 서버(미도시) 사이의 유선 또는 무선 통신 채널의 수립 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 일 실시 예에 있어서, 통신 인터페이스(1100)는 유선 또는 무선 통신을 통해 외부의 다른 전자 장치(미도시) 또는 서버(미도시)로부터 데이터를 수신하거나 외부의 다른 전자 장치(미도시) 또는 서버(미도시)로 데이터를 송신할 수 있다. 일 실시 예에 있어서, 통신 인터페이스(1100)는 무선 통신 모듈(예컨대, 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(예컨대, LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있고, 그 중 어느 하나의 통신 모듈을 이용하여 적어도 하나의 네트워크(예컨대, 근거리 통신 네트워크(예컨대, 블루투스, WiFi direct 또는 IrDA(infrared data association)) 또는 원거리 통신 네트워크(예컨대, 셀룰러 네트워크, 인터넷, 또는 컴퓨터 네트워크(예컨대, LAN 또는 WAN)))를 통하여 외부의 다른 전자 장치(미도시) 또는 서버(미도시)와 통신할 수 있다. 예를 들어, 통신 인터페이스(1100)는 외부 장치와의 통신을 통해 모달리티 소스 데이터를 수신할 수 있다.
사용자 인터페이스(1200)는 사용자가 웨어러블 디바이스(1000)를 제어하기 위한 데이터(또는 사용자 입력으로도 지칭될 수 있음)를 입력하는 수단을 의미할 수 있다. 예를 들어, 사용자 인터페이스(1200)는 키 패드(key pad), 돔 스위치 (dome switch), 터치 패드(접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등), 조그 휠 또는 조그 스위치 중 적어도 하나를 포함할 수 있으나 이에 한정되는 것은 아니다. 일 실시 예에 있어서, 사용자 인터페이스(1200)는 생략될 수 있다. 이 경우, 사용자 인터페이스(1200)의 기능의 적어도 일부는 외부의 다른 전자 장치(미도시)에 구현될 수 있다.
적어도 하나의 액추에이터(1300)는 PWM 신호에 기초하여 촉각 모달리티를 출력할 수 있다. 적어도 하나의 액추에이터(1300)는 사용자의 신체에 접촉되도록 웨어러블 디바이스(1000) 상에 배치될 수 있다. 즉, 촉각 모달리티에 의한 햅틱 피드백(haptic feedback)이 사용자에게 전달될 수 있다. 햅틱 피드백은 힘, 진동 및 모션 등을 통해 사용자가 힘, 운동감 등의 촉각적 감각을 느낄 수 있도록 사용자에게 제공되는 피드백을 말한다. 적어도 하나의 액추에이터(1300)는 선형 공진(linear resonance) 타입, 이심 회전 질량(eccentric rotating mass) 타입, 피에조 타입, 솔레노이드 타입 중 적어도 하나를 포함할 수 있으나, 본 개시는 이에 한정되지 않는다.
일 실시 예에 있어서, 적어도 하나의 액추에이터(1300)의 개수는 PWM 신호의 개수와 동일할 수 있다. 적어도 하나의 액추에이터(1300)가 복수 개인 경우, 액추에이터들은 일정 간격으로 이격되어 웨어러블 디바이스(1000) 상에 배치될 수 있다. 웨어러블 디바이스(1000)는 사용자에게 햅틱 피드백을 제공하기 위해서, 적어도 하나의 액추에이터(1300)의 위치가 사용자의 신체에 더 가까워지도록 조절하거나, 적어도 하나의 액추에이터(1300)의 위치가 사용자의 신체로부터 더 멀어지도록 조절할 수 있는, 물리적인 구조들을 포함할 수 있다.
디스플레이(1400)는 웨어러블 디바이스(1000)의 외부(예컨대, 사용자)로 정보를 시각적으로 제공할 수 있다. 예를 들어, 디스플레이(1400)는 이미지 데이터 및 텍스트 데이터에 기초하여 시각 모달리티를 출력할 수 있다. 디스플레이(1400)는, 예를 들어, 홀로그램 장치, 프로젝터, 및/또는 디스플레이를 제어하기 위한 제어 회로를 포함할 수 있다. 일 실시 예에 있어서, 디스플레이(1400)는 터치를 감지하도록 설정된 터치 센서, 또는 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 압력 센서를 포함할 수 있다.
스피커(1500)는 전기 신호를 소리로 변환시킬 수 있다. 예를 들어, 스피커(1500)는 음성 데이터에 기초하여 청각 모달리티를 출력할 수 있다. 일 실시 예에 있어서, 스피커(1500)는 웨어러블 디바이스(1000)와 직접 또는 무선으로 연결된 외부 전자 장치를 통해 소리를 출력할 수 있다.
메모리(1600)에는 프로세서(1700)에 의하여 처리되거나 처리될 예정인 데이터, 펌웨어, 소프트웨어, 및 프로세스 코드 등이 저장될 수 있다. 일 실시 예에 있어서, 메모리(1600)에는 모달리티 소스 식별기(561), 미획득 모달리티 소스 생성기(562), PWM 신호 생성기(563), 및 인공지능 모듈(564) 중 적어도 하나에 대응되는 데이터 및 프로그램 코드들이 저장될 수 있다. 모달리티 소스 식별기(561), 미획득 모달리티 소스 생성기(562), PWM 신호 생성기(563)의 구성, 기능, 동작은 모달리티 소스 식별기(210), 미획득 모달리티 소스 생성기(220), PWM 신호 생성기(230)의 구성, 기능, 동작과 유사하므로 이하 생략한다. 인공지능 모듈(564)은 학습된 생성기(221) 및 GAN(300)의 기능의 적어도 일부를 포함할 수 있다. 인공지능 모듈(564)은 인공지능 모델(예컨대, GAN(300))을 데이터셋을 이용하여 학습시킬 수 있다. 인공지능 모듈(564)은 인공지능 모델(예컨대, GAN(300))을 이용하여 데이터를 출력할 수 있다.
메모리(1600)는 웨어러블 디바이스(1000)의 주 기억 장치로 이용될 수 있다. 예를 들어, 메모리(1600)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), DRAM(dynamic random access memory), SRAM(static random access memory), PRAM(phase-change random access memory), MRAM (magnetic random access memory), FeRAM(ferroelectric random access memory), RRAM(resistive random access memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 메모리(1600)는 버퍼 메모리, 워킹 메모리, 또는 캐시 메모리로서 지칭될 수 있다. 도시되지 않았지만, 메모리(1600)의 개수는 하나 이상일 수 있다.
프로세서(1700)는 웨어러블 디바이스(1000)에 포함된 구성들과 전기적으로 연결되어, 웨어러블 디바이스(1000)에 포함된 구성들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 수행할 수 있다. 예를 들어, 프로세서(1700)는 CPU(central processing unit), AP(application processor), GPU(graphic processing unit), 또는 NPU(neural processing unit) 중 적어도 하나를 포함할 수 있다.
일 실시 예에 있어서, 프로세서(1700)는 다른 구성들 중 적어도 하나로부터 수신된 명령 또는 데이터를 메모리(1600)에 로드하여 처리하고, 결과 데이터를 메모리(1600)에 저장할 수 있다. 예를 들어, 프로세서(1700)는 모달리티 소스 식별기(561), 미획득 모달리티 소스 생성기(562), PWM 신호 생성기(563), 및 인공지능 모듈(564)의 기능에 대응하는 명령 또는 데이터를 메모리(1600)에 로드하고 처리할 수 있다. 도시되지 않았지만, 프로세서(1700)는 기능 또는 목적에 따라 하나 이상일 수 있다. 이 경우, 적어도 하나의 프로세서는 웨어러블 디바이스(1000)에 포함된 구성들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 분산하여 수행할 수 있다. 예를 들어, 웨어러블 디바이스(1000)는 인공지능 모듈(564)을 실행하기 위한 별도의 프로세서, 예컨대, NPU(neural processing unit)를 더 포함할 수 있다.
일 실시 예에 있어서, 웨어러블 디바이스의 동작 방법은, 이미지 데이터, 텍스트 데이터, 및 음성 데이터 중 적어도 하나를 포함하는 소스 데이터를 획득하는 단계를 포함할 수 있다. 웨어러블 디바이스의 동작 방법은, 소스 데이터에 이미지 데이터, 텍스트 데이터, 및 음성 데이터가 포함되는지 여부를 결정하는 단계를 포함할 수 있다. 웨어러블 디바이스의 동작 방법은, 소스 데이터에 이미지 데이터, 텍스트 데이터, 음성 데이터 중 적어도 하나가 포함되지 않은 경우, 소스 데이터를 입력으로 하는 GAN의 생성기를 이용하여, 소스 데이터에 포함되지 않은 이미지 데이터, 텍스트 데이터, 및 음성 데이터를 생성하는 단계를 포함할 수 있다. 웨어러블 디바이스의 동작 방법은, 음성 데이터에 기초하여 PWM 신호를 생성하는 단계를 포함할 수 있다. 웨어러블 디바이스의 동작 방법은, 이미지 데이터, 텍스트 데이터, 음성 데이터, PWM 신호에 기초하여 멀티 모달리티를 출력하는 단계를 포함할 수 있다.
일 실시 예에 있어서, 멀티 모달리티는 시각 모달리티, 청각 모달리티, 및 촉각 모달리티를 포함할 수 있다.
일 실시 예에 있어서, PWM 신호를 생성하는 단계는, 음성 데이터를 입력으로 하는 적어도 하나의 필터를 이용하여, 상기 음성 데이터의 주파수 성분에 따라 적어도 하나의 서브 음성 데이터로 필터링하는 단계를 포함할 수 있다. PWM 신호를 생성하는 단계는, 적어도 하나의 서브 음성 데이터에 기초하여, 음성 피처를 획득하는 단계를 포함할 수 있다. PWM 신호를 생성하는 단계는, 음성 피처의 분산 값의 임계 값 초과 여부를 식별하는 단계를 포함할 수 있다. PWM 신호를 생성하는 단계는, 음성 피처의 분산 값이 임계 값을 초과한 경우, 적어도 하나의 서브 음성 데이터의 음성 에너지 강도 및 적어도 하나의 서브 음성 데이터의 음성 에너지 기울기에 기초하여 음성 피처를 필터링하는 단계를 포함할 수 있다. PWM 신호를 생성하는 단계는, 음성 피처에 대응하는 적어도 하나의 서브 음성 데이터의 음성 에너지 강도와 듀티 사이클을 맵핑함으로써, PWM 신호를 생성하는 단계를 포함할 수 있다.
일 실시 예에 있어서, 음성 피처를 획득하는 단계는, 적어도 하나의 서브 음성 데이터에 기초하여 복수의 음성 피처들을 추출하는 단계를 포함할 수 있다. 음성 피처를 획득하는 단계는, 복수의 음성 피처들 간의 상관 관계 및 복수의 음성 피처들의 분산 값을 계산하는 단계를 포함할 수 있다. 음성 피처를 획득하는 단계는, 상관 관계 및 상기 분산 값에 기초하여 대표 음성 피처를 선정하는 단계를 포함할 수 있다. 대표 음성 피처는 상기 음성 피처일 수 있다.
일 실시 예에 있어서, 음성 피처를 필터링하는 단계는, 적어도 하나의 서브 음성 데이터를 정규화하는 단계를 포함할 수 있다. 음성 피처를 필터링하는 단계는, 음성 피처 중, 상기 음성 에너지 강도가 강도 임계 값을 초과하는 구간 및 상기 강도 임계 값을 초과하지 않는 구간을 추출하는 단계를 포함할 수 있다. 음성 피처를 필터링하는 단계는, 음성 피처 중, 상기 음성 에너지 기울기가 기울기 임계 값을 초과하는 구간 및 상기 기울기 임계 값을 초과하지 않는 구간을 추출하는 단계를 포함할 수 있다. 음성 피처를 필터링하는 단계는, 강도 임계 값 및 기울기 임계 값을 초과하는 음성 피처의 구간을 통과시키고, 강도 임계 값 및 기울기 임계 값 중 적어도 하나를 초과하지 않는 음성 피처의 구간을 감쇠시키는 단계를 포함할 수 있다.
일 실시 예에 있어서, 음성 피처는 음성 에너지, 주파수, 피치, 및 강도 중 적어도 하나를 포함할 수 있다.
일 실시 예에 있어서, 웨어러블 디바이스의 동작 방법은, 적어도 하나의 서브 음성 데이터에 대응하는 상기 PWM 신호를, 대응하는 액추에이터에 전달하는 단계를 포함할 수 있다. 예시적으로, 웨어러블 디바이스의 동작 방법은, 제1 서브 음성 데이터에 대응하는 제1 PWM 신호를 제1 액추에이터에 전달하는 단계, 및 제2 서브 음성 데이터에 대응하는 제2 PWM 신호를 제2 액추에이터에 전달하는 단계를 포함할 수 있다.
일 실시 예에 있어서, PWM 신호를 생성하는 단계는, 사용자 메타데이터(또는 사용자 메타데이터 DB)로부터 사용자 스피치 특징을 획득하는 단계를 포함할 수 있다. PWM 신호를 생성하는 단계는, 사용자 스피치 특징에 기초하여 PWM 신호를 조정하는 단계를 포함할 수 있다.
일 실시 예에 있어서, PWM 신호를 생성하는 단계는, 사용자 메타데이터(또는 사용자 메타데이터 DB)로부터 사용자 입력을 획득하는 단계를 포함할 수 있다. PWM 신호를 생성하는 단계는, 사용자 입력에 기초하여 PWM 신호를 조정하는 단계를 포함할 수 있다.
일 실시 예에 있어서, PWM 신호를 생성하는 단계는, 음성 데이터에 기초하여 음성 피처를 획득하는 단계를 포함할 수 있다. PWM 신호를 생성하는 단계는, 음성 피처에 대응하는 음성 데이터의 음성 에너지 강도와 듀티 사이클을 맵핑함으로써, PWM 신호를 생성하는 단계를 포함할 수 있다. PWM 신호를 생성하는 단계는, PWM 신호 중 듀티 사이클이 미리 정의된 값을 초과하는 부분 영역에 대응하는 신호를 제1 액추에이터에 전달하고, PWM 신호의 전체 영역에 대응하는 신호를 제2 액추에이터에 전달하는 단계를 포함할 수 있다.
일 실시 예에 있어서, GAN은, 이미지 데이터, 상기 텍스트 데이터, 및 상기 음성 데이터 중 적어도 하나를 포함하지 않는 훈련 소스 데이터를 획득하는 동작을 수행할 수 있다. GAN은, 훈련 소스 데이터를 입력으로 하는 생성기를 이용하여, 훈련 소스 데이터에 포함되지 않는 이미지 데이터, 텍스트 데이터, 및 음성 데이터 중 적어도 하나에 대응하는 가상 데이터를 생성하는 동작을 수행할 수 있다. GAN은, 가상 데이터 및 가상 데이터에 대응하는 실제 데이터를 입력으로 하는 판별기를 이용하여, 가상 데이터 및 실제 데이터의 실제 여부를 판단하는 동작을 수행할 수 있다. GAN은, 판단 결과에 기초하여 상기 생성기 및 상기 판별기를 학습시키는 동작을 수행할 수 있다.
일 실시 예에 있어서, 상술한 웨어러블 디바이스의 동작 방법의 다양한 실시 예들은 컴퓨터에서 수행하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체의 형태로 제공될 수 있다.
일 실시 예에 있어서, 웨어러블 디바이스는, 디스플레이를 포함할 수 있다. 웨어러블 디바이스는, 스피커를 포함할 수 있다. 웨어러블 디바이스는, 적어도 하나의 액추에이터를 포함할 수 있다. 웨어러블 디바이스는, 하나 이상의 인스트럭션을 저장하는 메모리를 포함할 수 있다. 웨어러블 디바이스는, 메모리에 저장된 하나 이상의 인스트럭션을 실행하는 적어도 하나의 프로세서를 포함할 수 있다. 적어도 하나의 프로세서는, 이미지 데이터, 텍스트 데이터, 및 음성 데이터 중 적어도 하나를 포함하는 소스 데이터를 획득하는, 하나 이상의 인스트럭션을 실행할 수 있다. 적어도 하나의 프로세서는, 이미지 데이터, 텍스트 데이터, 및 음성 데이터 중 적어도 하나를 포함하는 소스 데이터를 획득하는, 하나 이상의 인스트럭션을 실행할 수 있다. 적어도 하나의 프로세서는, 소스 데이터에 이미지 데이터, 텍스트 데이터, 및 음성 데이터가 포함되는지 여부를 결정하는, 하나 이상의 인스트럭션을 실행할 수 있다. 적어도 하나의 프로세서는, 소스 데이터에 이미지 데이터, 텍스트 데이터, 및 음성 데이터 중 적어도 하나가 포함되지 않은 경우, 소스 데이터를 입력으로 하는 GAN의 생성기를 이용하여, 소스 데이터에 포함되지 않은 이미지 데이터, 텍스트 데이터, 및 음성 데이터를 생성하는, 하나 이상의 인스트럭션을 실행할 수 있다. 적어도 하나의 프로세서는, 음성 데이터에 기초하여 PWM 신호를 생성하는, 하나 이상의 인스트럭션을 실행할 수 있다. 적어도 하나의 프로세서는, 이미지 데이터, 텍스트 데이터, 음성 데이터, 및 PWM 신호에 기초하여, 디스플레이, 스피커, 적어도 하나의 액추에이터로 하여금 멀티 모달리티를 출력하도록 제어하는, 상기 하나 이상의 인스트럭션을 실행할 수 있다.
일 실시 예에 있어서, 적어도 하나의 프로세서는, 이미지 데이터 및 텍스트 데이터에 기초하여 디스플레이로 하여금 시각 모달리티를 출력하도록 제어할 수 있다. 적어도 하나의 프로세서는, 음성 데이터에 기초하여 스피커로 하여금 청각 모달리티를 출력하도록 제어할 수 있다. 적어도 하나의 프로세서는, 적어도 하나의 액추에이터로 하여금 촉각 모달리티를 출력하도록 제어할 수 있다.
일 실시 예에 있어서, PWM 신호를 생성하는, 하나 이상의 인스트럭션은, 음성 데이터에 기초하여 음성 피처를 획득하고, 음성 피처에 대응하는 음성 데이터의 음성 에너지 강도와 듀티 사이클을 맵핑함으로써, PWM 신호를 생성하고, PWM 신호 중 상기 듀티 사이클이 미리 정의된 값을 초과하는 부분 영역에 대응하는 신호를 적어도 하나의 액추에이터 중 제1 액추에이터에 전달하고, PWM 신호의 전체 영역에 대응하는 신호를 적어도 하나의 액추에이터 중 제2 액추에이터에 전달하는, 하나 이상의 인스트럭션을 포함할 수 있다.
기기로 읽을 수 있는 저장매체(또는 기록매체)는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
일 실시 예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
컴퓨터 프로그램 제품은, 서버 및 클라이언트 장치로 구성되는 시스템에서, 서버의 저장매체 또는 클라이언트 장치의 저장매체를 포함할 수 있다. 또는, 서버 또는 클라이언트 장치와 통신 연결되는 제3 장치(예, 스마트폰)가 존재하는 경우, 컴퓨터 프로그램 제품은 제3 장치의 저장매체를 포함할 수 있다. 또는, 컴퓨터 프로그램 제품은 서버로부터 클라이언트 장치 또는 제3 장치로 전송되거나, 제3 장치로부터 클라이언트 장치로 전송되는 S/W 프로그램 자체를 포함할 수 있다.
이 경우, 서버, 클라이언트 장치 및 제3 장치 중 하나가 컴퓨터 프로그램 제품을 실행하여 개시된 실시예들에 따른 방법을 수행할 수 있다. 또는, 서버, 클라이언트 장치 및 제3 장치 중 둘 이상이 컴퓨터 프로그램 제품을 실행하여 개시된 실시예들에 따른 방법을 분산하여 실시할 수 있다.
이상에서 실시예들에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속한다.

Claims (20)

  1. 멀티 모달리티(multi-modality)를 제공하는 웨어러블 디바이스(100, 200, 1000)의 동작 방법에 있어서,
    이미지 데이터, 텍스트 데이터, 및 음성 데이터 중 적어도 하나를 포함하는 소스 데이터를 획득하는 단계(S910);
    상기 소스 데이터에 상기 이미지 데이터, 상기 텍스트 데이터, 및 상기 음성 데이터가 포함되는지 여부를 결정하는 단계(S920);
    상기 소스 데이터에 상기 이미지 데이터, 상기 텍스트 데이터, 및 상기 음성 데이터 중 적어도 하나가 포함되지 않은 경우, 상기 소스 데이터를 입력으로 하는 적대적 생성 신경망(Generative Adversarial Network; GAN)의 생성기(generator)를 이용하여, 상기 소스 데이터에 포함되지 않은 상기 이미지 데이터, 상기 텍스트 데이터, 및 상기 음성 데이터를 생성하는 단계(S930);
    상기 음성 데이터에 기초하여 PWM(Pulse Width Modulation) 신호를 생성하는 단계(S940); 및
    상기 이미지 데이터, 상기 텍스트 데이터, 상기 음성 데이터, 및 상기 PWM 신호에 기초하여 상기 멀티 모달리티를 출력하는 단계(S950)를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 PWM 신호를 생성하는 단계는:
    상기 음성 데이터를 입력으로 하는 적어도 하나의 필터를 이용하여, 상기 음성 데이터의 주파수 성분에 따라 적어도 하나의 서브 음성 데이터로 필터링하는 단계(S941);
    상기 적어도 하나의 서브 음성 데이터에 기초하여, 음성 피처를 획득하는 단계(S942);
    상기 음성 피처의 분산 값의 임계 값 초과 여부를 식별하는 단계(S943);
    상기 음성 피처의 분산 값이 상기 임계 값을 초과한 경우, 상기 적어도 하나의 서브 음성 데이터의 음성 에너지 강도 및 상기 적어도 하나의 서브 음성 데이터의 음성 에너지 기울기에 기초하여 상기 음성 피처를 필터링하는 단계(S944);
    상기 음성 피처에 대응하는 상기 적어도 하나의 서브 음성 데이터의 상기 음성 에너지 강도와 듀티 사이클을 맵핑함으로써, 상기 PWM 신호를 생성하는 단계(S945)를 포함하는, 방법.
  3. 제2항에 있어서,
    상기 음성 피처를 획득하는 단계는:
    상기 적어도 하나의 서브 음성 데이터에 기초하여 복수의 음성 피처들을 추출하는 단계;
    상기 복수의 음성 피처들 간의 상관 관계 및 복수의 음성 피처들의 분산 값을 계산하는 단계; 및
    상기 상관 관계 및 상기 분산 값에 기초하여 대표 음성 피처를 선정하는 단계를 포함하되,
    상기 대표 음성 피처는 상기 음성 피처인, 방법.
  4. 제2항 및 제3항 중 어느 한 항에 있어서,
    상기 음성 피처를 필터링하는 단계는,
    상기 적어도 하나의 서브 음성 데이터를 정규화하는 단계;
    상기 음성 피처 중, 상기 음성 에너지 강도가 강도 임계 값을 초과하는 구간 및 상기 강도 임계 값을 초과하지 않는 구간을 추출하는 단계;
    상기 음성 피처 중, 상기 음성 에너지 기울기가 기울기 임계 값을 초과하는 구간 및 상기 기울기 임계 값을 초과하지 않는 구간을 추출하는 단계;
    상기 강도 임계 값 및 상기 기울기 임계 값을 초과하는 상기 음성 피처의 구간을 통과시키고, 상기 강도 임계 값 및 상기 기울기 임계 값 중 적어도 하나를 초과하지 않는 상기 음성 피처의 구간을 감쇠시키는 단계를 포함하는, 방법.
  5. 제2항 내지 제4항 중 어느 한 항에 있어서,
    상기 음성 피처는 음성 에너지, 주파수, 피치, 및 강도 중 적어도 하나를 포함하는, 방법.
  6. 제2항 내지 제5항 중 어느 한 항에 있어서,
    상기 적어도 하나의 서브 음성 데이터에 대응하는 상기 PWM 신호를, 대응하는 액추에이터에 전달하는 단계를 더 포함하는 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서,
    상기 PWM 신호를 생성하는 단계는:
    사용자 메타데이터로부터 사용자 스피치 특징을 획득하는 단계; 및
    상기 사용자 스피치 특징에 기초하여 상기 PWM 신호를 조정하는 단계를 포함하는, 방법.
  8. 제1항 내지 제7항 중 어느 한 항에 있어서,
    상기 PWM 신호를 생성하는 단계는:
    사용자 입력을 획득하는 단계; 및
    상기 사용자 입력에 기초하여 상기 PWM 신호를 조정하는 단계를 포함하는, 방법.
  9. 제1항, 제7항, 및 제8항 중 어느 한 항에 있어서,
    상기 PWM 신호를 생성하는 단계는:
    상기 음성 데이터에 기초하여 음성 피처를 획득하는 단계(S946);
    상기 음성 피처에 대응하는 상기 음성 데이터의 음성 에너지 강도와 듀티 사이클을 맵핑함으로써, 상기 PWM 신호를 생성하는 단계(S947);
    상기 PWM 신호 중 상기 듀티 사이클이 미리 정의된 값을 초과하는 부분 영역에 대응하는 신호를 제1 액추에이터에 전달하고, 상기 PWM 신호의 전체 영역에 대응하는 신호를 제2 액추에이터에 전달하는 단계(S948)를 포함하는, 방법.
  10. 제1항 내지 제9항 중 어느 한 항에 있어서,
    상기 GAN은:
    상기 이미지 데이터, 상기 텍스트 데이터, 및 상기 음성 데이터 중 적어도 하나를 포함하지 않는 훈련 소스 데이터를 획득하고,
    상기 훈련 소스 데이터를 입력으로 하는 상기 생성기를 이용하여, 상기 훈련 소스 데이터에 포함되지 않는 상기 이미지 데이터, 상기 텍스트 데이터, 및 상기 음성 데이터 중 적어도 하나에 대응하는 가상 데이터를 생성하고,
    상기 가상 데이터 및 상기 가상 데이터에 대응하는 실제 데이터를 입력으로 하는 판별기(discriminator)를 이용하여, 상기 가상 데이터 및 상기 실제 데이터의 실제 여부를 판단하고,
    상기 판단 결과에 기초하여 상기 생성기 및 상기 판별기를 학습시키는 동작을 수행함으로써 미리 학습된 모델인, 방법.
  11. 멀티 모달리티(multi-modality)를 제공하는 웨어러블 디바이스(100, 200, 1000)에 있어서,
    디스플레이(1400);
    스피커(1500);
    적어도 하나의 액추에이터(1300);
    하나 이상의 인스트럭션을 저장하는 메모리(1600);
    상기 메모리(1600)에 저장된 하나 이상의 인스트럭션을 실행하는 적어도 하나의 프로세서(1700)를 포함하되, 상기 적어도 하나의 프로세서(1700)는,
    이미지 데이터, 텍스트 데이터, 및 음성 데이터 중 적어도 하나를 포함하는 소스 데이터를 획득하고,
    상기 소스 데이터에 상기 이미지 데이터, 상기 텍스트 데이터, 및 상기 음성 데이터가 포함되는지 여부를 결정하고,
    상기 소스 데이터에 상기 이미지 데이터, 상기 텍스트 데이터, 및 상기 음성 데이터 중 적어도 하나가 포함되지 않은 경우, 상기 소스 데이터를 입력으로 하는 적대적 생성 신경망(Generative Adversarial Network; GAN)의 생성기(generator)를 이용하여, 상기 소스 데이터에 포함되지 않은 상기 이미지 데이터, 상기 텍스트 데이터, 및 상기 음성 데이터를 생성하고,
    상기 음성 데이터에 기초하여 PWM(Pulse Width Modulation) 신호를 생성하고,
    상기 이미지 데이터, 상기 텍스트 데이터, 상기 음성 데이터, 및 상기 PWM 신호에 기초하여, 상기 디스플레이(1400), 상기 스피커(1500), 상기 적어도 하나의 액추에이터(1300)로 하여금 상기 멀티 모달리티를 출력하도록 제어하는, 상기 하나 이상의 인스트럭션을 실행하는, 웨어러블 디바이스.
  12. 제11항에 있어서,
    상기 PWM 신호를 생성하는, 상기 하나 이상의 인스트럭션은,
    상기 음성 데이터를 입력으로 하는 적어도 하나의 필터를 이용하여, 상기 음성 데이터의 주파수 성분에 따라 적어도 하나의 서브 음성 데이터로 필터링하고,
    상기 적어도 하나의 서브 음성 데이터에 기초하여, 음성 피처를 획득하고,
    상기 음성 피처의 분산 값의 임계 값 초과 여부를 식별하고,
    상기 음성 피처의 분산 값이 임계 값을 초과한 경우, 상기 적어도 하나의 서브 음성 데이터의 음성 에너지 강도 및 상기 적어도 하나의 서브 음성 데이터의 음성 에너지 기울기에 기초하여 상기 음성 피처를 필터링하고,
    상기 음성 피처에 대응하는 상기 적어도 하나의 서브 음성 데이터의 상기 음성 에너지 강도와 듀티 사이클을 맵핑함으로써, 상기 PWM 신호를 생성하는, 상기 하나 이상의 인스트럭션을 포함하는, 웨어러블 디바이스.
  13. 제12항에 있어서,
    상기 음성 피처를 획득하는, 상기 하나 이상의 인스트럭션은,
    상기 적어도 하나의 서브 음성 데이터에 기초하여 복수의 음성 피처들을 추출하고,
    상기 복수의 음성 피처들 간의 상관 관계 및 복수의 음성 피처들의 분산 값을 계산하고,
    상기 상관 관계 및 분산 값에 기초하여 대표 음성 피처를 선정하는, 상기 하나 이상의 인스트럭션을 포함하되,
    상기 대표 음성 피처는 상기 음성 피처인, 웨어러블 디바이스
  14. 제12항 및 제13항 중 어느 한 항에 있어서,
    상기 음성 피처를 필터링하는, 상기 하나 이상의 인스트럭션은,
    상기 적어도 하나의 서브 음성 데이터를 정규화하고,
    상기 음성 피처 중, 상기 음성 에너지 강도가 강도 임계 값을 초과하는 구간 및 상기 강도 임계 값을 초과하지 않는 구간을 추출하고,
    상기 음성 피처 중, 상기 음성 에너지 기울기가 기울기 임계 값을 초과하는 구간 및 상기 기울기 임계 값을 초과하지 않는 구간을 추출하고,
    상기 강도 임계 값 및 상기 기울기 임계 값을 초과하는 상기 음성 피처의 구간을 통과시키고, 상기 강도 임계 값 및 상기 기울기 임계 값 중 적어도 하나를 초과하지 않는 상기 음성 피처의 구간을 감쇠시키는, 상기 하나 이상의 인스트럭션을 포함하는, 웨어러블 디바이스.
  15. 제12항 내지 제14항 중 어느 한 항에 있어서,
    상기 음성 피처는 음성 에너지, 주파수, 피치, 및 강도 중 적어도 하나를 포함하는, 웨어러블 디바이스.
  16. 제11항 내지 제15항 중 어느 한 항에 있어서,
    상기 PWM 신호를 생성하는, 상기 하나 이상의 인스트럭션은,
    사용자 메타데이터로부터 사용자 스피치 특징을 획득하고,
    상기 사용자 스피치 특징에 기초하여 상기 음성 데이터를 조정하는, 상기 하나 이상의 인스트럭션을 포함하는, 웨어러블 디바이스.
  17. 제11항 내지 제16항 중 어느 한 항에 있어서,
    상기 PWM 신호를 생성하는, 상기 하나 이상의 인스트럭션은,
    사용자 입력을 획득하고,
    상기 사용자 입력에 기초하여 상기 PWM 신호를 조정하는, 상기 하나 이상의 인스트럭션을 포함하는, 웨어러블 디바이스.
  18. 제11항, 제16항 및 제17항 중 어느 한 항에 있어서,
    상기 PWM 신호를 생성하는, 상기 하나 이상의 인스트럭션은,
    상기 음성 데이터에 기초하여 음성 피처를 획득하고,
    상기 음성 피처에 대응하는 상기 음성 데이터의 음성 에너지 강도와 듀티 사이클을 맵핑함으로써, 상기 PWM 신호를 생성하고,
    상기 PWM 신호 중 상기 듀티 사이클이 미리 정의된 값을 초과하는 부분 영역에 대응하는 신호를 상기 적어도 하나의 액추에이터 중 제1 액추에이터에 전달하고, 상기 PWM 신호의 전체 영역에 대응하는 신호를 상기 적어도 하나의 액추에이터 중 제2 액추에이터에 전달하는, 상기 하나 이상의 인스트럭션을 포함하는, 웨어러블 디바이스.
  19. 제11항 내지 제18항 중 어느 한 항에 있어서,
    상기 GAN은:
    상기 이미지 데이터, 상기 텍스트 데이터, 및 상기 음성 데이터 중 적어도 하나를 포함하지 않는 훈련 소스 데이터를 획득하고,
    상기 훈련 소스 데이터를 입력으로 하는 상기 생성기를 이용하여, 상기 훈련 소스 데이터에 포함되지 않는 상기 이미지 데이터, 상기 텍스트 데이터, 및 상기 음성 데이터 중 적어도 하나에 대응하는 가상 데이터를 생성하고,
    상기 가상 데이터 및 상기 가상 데이터에 대응하는 실제 데이터를 입력으로 하는 판별기(discriminator)를 이용하여, 상기 가상 데이터 및 상기 실제 데이터의 실제 여부를 판단하고,
    상기 판단 결과에 기초하여 상기 생성기 및 상기 판별기를 학습시키는 동작을 수행함으로써 미리 학습된 모델인, 웨어러블 디바이스.
  20. 제1항 내지 제10항 중 어느 한 항의 방법을 컴퓨터에서 수행하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체.
KR1020220116642A 2021-10-19 2022-09-15 멀티 모달리티를 제공하는 웨어러블 디바이스 및 이의 동작 방법 KR20230055947A (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP22883979.1A EP4354259A1 (en) 2021-10-19 2022-10-18 Wearable device providing multi-modality, and method for operating same
CN202280062566.XA CN117980865A (zh) 2021-10-19 2022-10-18 提供多模态的可穿戴设备及其操作方法
PCT/KR2022/015862 WO2023068756A1 (ko) 2021-10-19 2022-10-18 멀티 모달리티를 제공하는 웨어러블 디바이스 및 이의 동작 방법
US18/126,862 US20230239618A1 (en) 2021-10-19 2023-03-27 Wearable device for providing multi-modality and operation method thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20210139739 2021-10-19
KR1020210139739 2021-10-19

Publications (1)

Publication Number Publication Date
KR20230055947A true KR20230055947A (ko) 2023-04-26

Family

ID=86099525

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220116642A KR20230055947A (ko) 2021-10-19 2022-09-15 멀티 모달리티를 제공하는 웨어러블 디바이스 및 이의 동작 방법

Country Status (1)

Country Link
KR (1) KR20230055947A (ko)

Similar Documents

Publication Publication Date Title
US10409380B2 (en) Dynamic haptic conversion system
US10650701B2 (en) Haptic communication using inside body illusions
CN104049733B (zh) 自动触觉效果调节系统
US10499149B2 (en) Microphone, vocal training apparatus comprising microphone and vocal analyzer, vocal training method, and non-transitory tangible computer-readable storage medium
JP6939797B2 (ja) 情報処理装置、情報処理方法、及びプログラム
US11681372B2 (en) Touch enabling process, haptic accessory, and core haptic engine to enable creation and delivery of tactile-enabled experiences with virtual objects
US20210272585A1 (en) Server for providing response message on basis of user's voice input and operating method thereof
KR102396794B1 (ko) 전자 장치 및 이의 제어 방법
KR101926074B1 (ko) 촉각자극 제공 방법 및 컴퓨터로 읽을 수 있는 기록매체
KR20230055947A (ko) 멀티 모달리티를 제공하는 웨어러블 디바이스 및 이의 동작 방법
KR20190090281A (ko) 사운드를 제어하는 전자 장치 및 그 동작 방법
US11710495B2 (en) Device for outputting sound and method therefor
JP2018045192A (ja) 音声対話装置および発話音量調整方法
US20210075903A1 (en) Method For and a Communication Device Adapted to Modify the Shape of the Device
US20230239618A1 (en) Wearable device for providing multi-modality and operation method thereof
CN117980865A (zh) 提供多模态的可穿戴设备及其操作方法
KR20220003197A (ko) 전자 장치 및 그 제어 방법
KR20220120052A (ko) 데이터를 생성하는 전자 장치 및 그 동작 방법