KR20130108661A - 콘텍스트 유사성에 기초하여 클라이언트 디바이스들을 그룹화하는 방법 및 장치 - Google Patents

콘텍스트 유사성에 기초하여 클라이언트 디바이스들을 그룹화하는 방법 및 장치 Download PDF

Info

Publication number
KR20130108661A
KR20130108661A KR20137020608A KR20137020608A KR20130108661A KR 20130108661 A KR20130108661 A KR 20130108661A KR 20137020608 A KR20137020608 A KR 20137020608A KR 20137020608 A KR20137020608 A KR 20137020608A KR 20130108661 A KR20130108661 A KR 20130108661A
Authority
KR
South Korea
Prior art keywords
sound
client devices
similarity
context
descriptors
Prior art date
Application number
KR20137020608A
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 KR20130108661A publication Critical patent/KR20130108661A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • H04W4/08User group management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/021Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/023Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/20Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
    • H04W4/21Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel for social networking applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

복수의 클라이언트 디바이스들을 그룹화하는 방법이 개시된다. 그 방법은 복수의 클라이언트 디바이스들로부터 사운드 디스크립터 (sound descriptor) 들을 수신하는 단계를 포함한다. 사운드 디스크립터들이 환경의 사운드로부터 추출된다. 사운드 디스크립터들의 각각은 서버로 송신되고, 그 서버는 클라이언트 디바이스들로부터 수신된 사운드 디스크립터들의 유사성을 결정한다. 서버는 사운드 디스크립터들의 유사성에 기초하여 적어도 하나의 유사한 콘텍스트 그룹으로 복수의 클라이언트 디바이스들을 그룹화한다.

Description

콘텍스트 유사성에 기초하여 클라이언트 디바이스들을 그룹화하는 방법 및 장치 {METHOD AND APPARATUS FOR GROUPING CLIENT DEVICES BASED ON CONTEXT SIMILARITY}
본 개시는 일반적으로 클라이언트 디바이스들을 그룹화하는 것에 관한 것이다. 더 상세하게는, 본 개시는 클라이언트 디바이스들의 환경의 사운드들에 기초하여 클라이언트 디바이스들을 그룹화하는 방법 및 장치에 관한 것이다.
현대 모바일 통신 시스템들은 다양한 서비스들을 모바일 디바이스 사용자들에게 제공한다. 그러한 시스템들은 종종, 모바일 디바이스들의 위치 정보에 기초하여 모바일 디바이스 사용자들에게 광고 및 소셜 네트워킹 서비스들을 제공한다. 사용자의 모바일 디바이스의 위치 정보는 서비스 제공자로 하여금 사용자의 환경을 추론하고 보다 타겟화된 광고 및 소셜 네트워킹 서비스들을 사용자에게 제공할 수 있게 한다.
하나의 종래 방법은 GPS (Global Positioning System) 를 사용하는 것에 의해 모바일 디바이스들의 위치들을 결정한다. 모바일 통신 시스템들은 GPS를 사용하는 것에 의해 결정된 모바일 디바이스들의 위치들에 기초하여 근처 위치들에 있는 모바일 디바이스들을 식별할 수도 있다. 위치 정보에 기초하여, 시스템들은 소셜 네트워킹 서비스들을 식별된 모바일 디바이스들의 사용자들에게 제공할 수도 있다. 예를 들면, 서비스 제공자는 동일 위치에 있는 것으로 결정된 모바일 디바이스들의 사용자들에게 동일 광고 정보를 제공할 수도 있다.
불행하게도, 위치 기반 서비스를 제공하는 시스템과 같은 종래 시스템들은, 그들의 위치에 상관 없이, 활동, 환경 등의 그들의 콘텍스트에 기초하여 사용자들에게 타겟화된 서비스 (targeted service) 들을 제공하는 것이 가능하지 않을 수도 있다. 전술된 방법을 사용함에 있어서, 동일한 서비스들이, 동일한 일반 위치 또는 근처 위치에 있는, 예를 들면 동일한 쇼핑 몰에 있는 모바일 디바이스들에 통상적으로 제공되는데, 왜냐하면 그 서비스들은 위치 정보에 기초하여 제공되기 때문이다. 하지만, 서비스 제공자는 상이한 쇼핑 몰에 있는 사용자들에게 동일한 타겟화된 광고 정보를 제공하는 것이 가능하지 않을 수도 있다.
따라서, 클라이언트 디바이스들의 사용자들에게 그들의 콘텍스트 정보에 기초하여 보다 타겟화된 서비스들의 전달을 허용하기 위하여 클라이언트 디바이스들의 사용자들을 그룹화하는 방법 및 장치가 요망된다.
본 개시는 콘텍스트 유사성 (context similarity) 에 기초하여 클라이언트 디바이스들을 그룹화하는 방법 및 장치를 제공한다.
본 개시의 일 양태에 따르면, 복수의 클라이언트 디바이스들을 그룹화하는 방법이 개시된다. 그 방법은 복수의 클라이언트 디바이스들로부터 사운드 디스크립터 (sound descriptor) 들을 수신하는 단계를 포함한다. 각 클라이언트 디바이스는 환경의 사운드 (environmental sound) 로부터 사운드 디스크립터를 추출한다. 사운드 디스크립터는 서버로 송신되고, 서버는 클라이언트 디바이스들로부터 수신된 사운드 디스크립터들의 유사성을 결정한다. 서버는 사운드 디스크립터들의 유사성에 기초하여 적어도 하나의 유사한 콘텍스트 그룹으로 클라이언트 디바이스들을 그룹화한다. 본 개시는 또한, 이 방법에 관한 장치, 서버, 수단의 조합 및 컴퓨터 판독가능 매체를 기술한다.
본 개시의 다른 양태에 따르면, 수신기, 유사성 프로세싱 유닛 및 그룹화 유닛을 포함하는 서버가 제공된다. 수신기는 복수의 클라이언트 디바이스들로부터 사운드 디스크립터들을 수신하도록 구성되고, 여기에서 사운드 디스크립터들은 각 클라이언트 디바이스에 의해 캡쳐된 환경의 사운드로부터 추출된다. 유사성 프로세싱 유닛은 클라이언트 디바이스들로부터 수신된 사운드 디스크립터들의 유사성을 결정하도록 적합화된다. 또한, 그룹화 유닛에서, 복수의 클라이언트 디바이스들이, 사운드 디스크립터들의 유사성에 기초하여 유사한 콘텍스트 그룹으로 그룹화된다.
본 개시의 또 다른 양태에 따르면, 사운드 센서, 사운드 프로세서, 및 송신 유닛을 포함하는 클라이언트 디바이스가 제공된다. 사운드 센서는 환경의 사운드를 캡쳐하도록 구성된다. 또한, 사운드 프로세서는 캡쳐된 환경의 사운드로부터 사운드 디스크립터를 추출하도록 구성된다. 사운드 디스크립터는, 클라이언트 디바이스로부터의 사운드 디스크립터와 다른 클라이언트 디바이스들로부터의 사운드 디스크립터들의 유사성에 기초하여 적어도 하나의 유사한 콘텍스트 그룹으로 복수의 클라이언트 디바이스들을 그룹화하도록 구성된 서버로, 송신기에 의해 송신된다.
도 1은 일 실시형태에 따라 실질적으로 동일한 환경의 사운드들에 기초하여 클라이언트 디바이스들을 그룹화하기 위한 시스템의 개략적인 개요를 예시한다.
도 2는 일 실시형태에 따라 유사한 환경의 사운드들에 기초하여 클라이언트 디바이스들을 그룹화하기 위한 시스템의 개략적인 개요를 예시한다.
도 3은 일 실시형태에 따라 경시적으로 환경의 사운드 시퀀스들로부터 추출된 사운드 디스크립터들에 기초하여 클라이언트 디바이스들을 그룹화하기 위한 시스템의 개요도를 예시한다.
도 4는 일 실시형태에 따라, 서버 및 복수의 클라이언트 디바이스들을 포함하는, 클라이언트 디바이스들을 그룹화하기 위한 시스템을 도시한다.
도 5는 일 실시형태에 따라 유사한 콘텍스트에 있는 클라이언트 디바이스들을 그룹화하는데 사용하기 위한, 클라이언트 디바이스에 의해 수행되는, 방법의 플로우차트를 예시한다.
도 6은 일 실시형태에 따라 유사한 콘텍스트에 있는 클라이언트 디바이스들을 그룹화하고 각 클라이언트 디바이스의 콘텍스트를 결정하기 위한, 서버에 의해 수행되는, 방법의 플로우차트를 예시한다.
도 7은 16개의 클러스터들로 클러스터화되는 트레이닝 (training) 사운드 컴포넌트들의 예시적 2차원 클러스터 분포를 나타낸다.
도 8은 복수의 클라이언트 디바이스들에서 생성된 환경의 사운드들의 예시적인 히스토그램들을 나타낸다.
도 9a는 일 실시형태에 따른 클라이언트 디바이스의 더 상세한 블록도를 도시한다.
도 9b는 다른 실시형태에 따른 클라이언트 디바이스의 더 상세한 블록도를 도시한다.
도 10은 일 실시형태에 따라 클라이언트 디바이스들의 콘텍스트를 결정하기 위한, 서버에 의해 수행되는, 방법의 플로우차트를 예시한다.
도 11은 일 실시형태에 따라 히스토그램들에 기초하여 클라이언트 디바이스들을 그룹화하기 위한, 서버에 의해 수행되는, 방법의 플로우차트를 예시한다.
도 12는 다른 실시형태에 따라 히스토그램들로부터 도출된 유사성 매트릭스에 기초하여 클라이언트 디바이스들을 그룹화하기 위한, 서버에 의해 수행되는, 방법의 플로우차트를 예시한다.
도 13은 일 실시형태에 따른 무선 통신 시스템에서의 예시적인 클라이언트 디바이스의 블록도이다.
지금부터, 다양한 실시형태들이 도면들을 참조하여 설명되며, 여기서 유사한 참조 번호들은 전체에 걸쳐 유사한 엘리먼트들을 지칭하는데 이용된다. 하기의 설명에서, 설명을 목적으로, 다수의 특정 세부사항들이 하나 이상의 실시형태들의 완전한 이해를 제공하기 위해 제시된다. 그러나, 그러한 실시형태(들)는 이들 특정 세부사항들 없이 실시될 수 있음이 명백할 수도 있다. 다른 경우들에서, 잘 알려진 구조들 및 디바이스들은 하나 이상의 실시형태들을 설명하는 것을 용이하게 하기 위해 블록도 형태로 도시된다.
이하 설명되는 일부 실시형태들에서, 클라이언트-서버 시스템이 채용될 수도 있고, 여기서 서버는 클라이언트 디바이스들로부터의 환경의 사운드들을 설명하는 정보를 수집한다. 클라이언트 디바이스들은 셀룰러폰, 랩톱, 차에서 이용하기 위한 디바이스 등등과 같은 임의의 적합한 사용자 디바이스들을 포함할 수도 있다. 일부 다른 실시형태들에서, 서버는 클라이언트 디바이스들을 포함하는 피어-투-피어 (peer-to-peer) 시스템에서 클라이언트 디바이스로서 구현될 수도 있다.
도 1 은 일 실시형태에 따른 실질적으로 동일한 환경의 사운드들에 기초하여 클라이언트 디바이스들 (110 및 120) 을 그룹화하는 시스템 (100) 의 개략적인 개요를 도시한다. 이러한 시스템에서, 클라이언트 디바이스들 (110 및 120) 은 각각 위치들 (130 및 140) 에서 환경의 사운드들을 캡쳐하고, 환경의 사운드들로부터 사운드 피쳐들을 추출한다. 클라이언트 디바이스들 (110 및 120) 은 네트워크 (150) 를 통해 사운드 피쳐들을 서버 (180) 로 전송한다. 서버 (180) 는 클라이언트 디바이스들 (110 및 120) 로부터 수신된 2 개의 사운드 피쳐들이 동일한지를 결정한다. 예컨대, 클라이언트 디바이스들 (110 및 120) 의 사용자들이 각각 상이한 위치들 (130 및 140) 에서 동일한 TV 프로그램을 시청하고 있다면, 이러한 위치들에서 환경의 사운드들은 실질적으로 동일한 TV 사운드들을 나타내며, 실질적으로 동일한 사운드 피쳐들의 추출을 초래할 수도 있다. 위치들 (130 및 140) 에서 2 개의 환경의 사운드들로부터 추출된 사운드 피쳐들에 기초하여, 그 후, 서버 (180) 는 클라이언트 디바이스들 (110 및 120) 을 동일한 콘텍스트 내에 있는 것으로 그룹화 (group) 또는 클러스터화 (cluster) 한다. 서버 (180) 는 그룹화 결과 (예컨대, 유사한 클라이언트 리스트) 및/또는 콘텍스트 정보 (예컨대, 클라이언트 디바이스 환경을 설명하는 위치, 활동 등등) 을 클라이언트 디바이스들 (110 및 120) 에 제공할 수도 있다. 그룹화 결과 및/또는 콘텍스트 정보에 기초하여, 서버 (180) 는 소설 네트워킹 서비스들과 같은 타겟화된 서비스들을 클라이언트 디바이스들 (110 및 120) 에 제공할 수 있다. 본 명세서에서 이용된 것과 같이, 특정 클라이언트 디바이스의 "콘텍스트 (context)" 는 사용자가 작업중인 사무실, 사용자가 그/그녀의 친구들과 함께 점심 식사중인 레스토랑 및 사용자가 통근하기 위해 이용하는 교통 시설과 같이, 디바이스가 위치된 환경을 포함할 수도 있다. "콘텍스트" 는 또한, 특정 TV 프로그램을 보고, 특정 음악을 듣고, 운동장에서 축구를 하는 것과 같이, 디바이스 또는 그 사용자가 관련된 활동들을 포함할 수도 있다.
도 2 는 일 실시형태에 따라 유사한 환경의 사운드들에 기초하여 클라이언트 디바이스들 (210 및 220) 을 그룹화하는 시스템 (200) 의 개략적인 개요를 도시한다. 이러한 시스템에서, 클라이언트 디바이스들 (210 및 220) 은 각각 위치들 (230 및 240) 에서 환경의 사운드들을 캡쳐하고, 환경의 사운드들로부터 사운드 디스크립터들을 추출한다. 본 명세서에서 이용되는 것과 같이, 용어 "사운드 디스크립터 (sound descriptor)" 는 사운드를 설명하거나 표현하는 임의의 정보를 지칭하고, 환경의 사운드로부터 추출된 사운드 피쳐 (sound feature), 캡쳐된 환경의 사운드의 분류 (classification) 를 나타내는 사운드 클래스 식별자, 사운드 컴포넌트들의 히스토그램, 및/또는 환경의 사운드로부터 획득된 임의의 다른 정보를 포함한다. 클라이언트 디바이스들 (210 및 220) 은 네트워크 (250) 를 통해 사운드 디스크립터들을 서버 (280) 로 전송한다. 서버 (280) 는 클라이언트 디바이스들 (110 및 120) 로부터 수신된 2 개의 사운드 디스크립터들 간의 유사성을 결정한다. 예를 들면, 만약 클라이언트 디바이스들 (210 및 220) 의 사용자들이 각각 상이한 커피숍들 (230 및 240) 에서 커피를 마시고 있다면, 이러한 위치들에서의 환경의 사운드들은, 정확히 동일하지는 않더라도, 캡쳐된 사운드들의 타입들이 유사할 수도 있고, 그에 의해 유사한 사운드 디스크립터들을 초래한다. 위치들 (230 및 240) 에서 2 개의 환경의 사운드들로부터 추출된 사운드 디스크립터들 간의 유사성에 기초하여, 그 후에, 서버 (280) 는 클라이언트 디바이스들 (210 및 220) 이 유사한 콘텍스트 내에 있는 것으로 그룹화 또는 클러스터화한다. 본 명세서에서 이용된 것과 같이, 어구 "유사한 콘텍스트에 있는" 의 이용은, 클라이언트 디바이스들 (210 및 220) 과 같은 디바이스들이 일반적으로 그들의 위치들과 관계없이 유사한 행동들 또는 환경들에 관련되는 것을 의미한다. 서버 (280) 는 그룹화 결과 및/또는 콘텍스트 정보를 클라이언트 디바이스들 (210 및 220) 로 제공할 수도 있다. 그룹화 결과 및/또는 콘텍스트 정보에 기초하여, 서버 (280) 는, 클라이언트 디바이스들 (210 및 220) 로부터의 환경의 사운드들이 정확히 동일하지 않더라도, 유사한 콘텍스트 (예컨대 유사한 활동들) 에 있는 클라이언트 디바이스들 (210 및 220) 에 타겟화된 서비스들을 제공할 수도 있다.
일부 다른 실시형태들에서, 서버는 클라이언트 디바이스들을 그룹화 또는 클러스터화하기 위해 클라이언트 디바이스들의 환경의 사운드들의 시퀀스들을 비교할 수도 있다. 클라이언트 디바이스에 의해 캡쳐된 환경의 사운드들의 각각의 시퀀스는 클라이언트 디바이스 사용자의 생활 패턴에 관한 정보를 포함할 수도 있다. 예컨대, 클라이언트 디바이스는 주중 하루에 매 시 간격 (every hour interval) 으로 1 분 지속시간으로 환경의 사운드를 캡쳐할 수도 있다. 특정 시간 기간에 캡쳐된 각 환경의 사운드는 특정 시간 기간, 예를 들면 기상하는 동안, 통근용 버스를 타는 동안, 거리를 걷는 동안 그리고 사무실에서 작업하는 동안에 발생하는 특정 환경 또는 활동에 관한 소정 사운드 피쳐들을 포함할 수도 있다. 이러한 캡쳐된 환경의 사운드들의 시퀀스는 클라이언트 디바이스 사용자의 생활 패턴을 나타낼 수도 있다.
도 3 은 일 실시형태에 따라 경시적으로 환경의 사운드 시퀀스들 (330 및 340) 로부터 추출된 사운드 디스크립터들에 기초하여 클라이언트 디바이스들 (310 및 320) 을 그룹화하는 시스템 (300) 의 개요도이다. 클라이언트 디바이스들 (310 및 320) 은 각각 환경의 사운드 시퀀스들 (330 및 340) 을 나타내는 환경의 사운드들을 주기적으로 캡쳐하고, 네트워크 (350) 를 통해 환경의 사운드 시퀀스들로부터 추출된 사운드 디스크립터들을 서버 (380) 로 전송하도록 구성된다. 예를 들면, 클라이언트 디바이스들 (310 및 320) 의 각각은 하루 중 미리결정된 시점들 또는 미리결정된 시간 간격들로 환경의 사운드들을 캡쳐할 수도 있다. 서버 (380) 는 2 개의 환경의 사운드 시퀀스들 (330 및 340) 간에 유사성을 결정한다. 클라이언트 디바이스들 (310 및 320) 의 사용자들이 유사한 생활 패턴들을 갖는다면, 사용자들의 환경의 사운드 시퀀스들은 각각의 사용자들의 활동들 및 환경들에 관한 유사한 사운드 디스크립터들을 초래할 수도 있다. 사운드 디스크립터들의 유사성에 기초하여, 서버 (380) 는 유사한 생활 패턴을 가지는 사용자들에 대하여 클라이언트 디바이스들 (310 및 320) 을 그룹화 또는 클러스터화한다. 서버 (380) 는 그룹화 결과 (예컨대, 유사한 클라이언트 리스트) 및/또는 콘텍스트 정보 (예컨대, 클라이언트 디바이스 환경을 설명하는 위치, 활동들, 등등) 를 클라이언트 디바이스들 (310 및 320) 로 제공할 수도 있다. 그룹화 결과 및/또는 콘텍스트 정보에 기초하여, 서버 (380) 는 소셜 네트워킹 서비스들과 같은 타겟화된 서비스들을 클라이언트 디바이스들 (310 및 320) 로 제공할 수 있다.
본 명세서에 설명된 것과 같이, 클라이언트 디바이스는 마이크로폰과 같은 사운드 센서를 통해 환경의 사운드를 검출한다. 일 실시형태에서, 클라이언트는 항상 환경의 사운드를 검출하도록 구성될 수도 있다. 대안적으로, 클라이언트 디바이스는 미리결정된 시간에, 미리결정된 간격들로, 또는 사용자의 커맨드에 응답하여 환경의 사운드를 검출하도록 구성될 수도 있다.
도 4 는 일 실시형태에 따라 서버 (480) 및 복수의 클라이언트 디바이스들 (412, 422 및 432) 을 포함하는 클라이언트 디바이스들을 그룹화하는 시스템 (400) 을 도시한다. 시스템 (400) 에서, 클라이언트 디바이스들 (412, 422, 및 432) 은 사운드 환경들 (410, 420, 및 430) 에 위치된다. 클라이언트 디바이스들 (412, 422, 및 432) 각각은 임의의 타입의 네트워크 뿐만 아니라, 셀룰러 네트워크들, 회로 교환 네트워크들, 공중 교환 네트워크들, 근거리 네트워크들, 광역 네트워크들, 무선 네트워크들 및/또는 패킷 교환 네트워크들 등등을 포함하는 네트워크들의 임의의 조합에서 동작할 수도 있다.
도 4 의 예시적인 시스템 (400) 에서, 클라이언트 디바이스들 (412, 422, 및 432) 의 사운드 환경들 (410, 420, 및 430) 은 각각 그들의 각각의 위치들에서 사용자 활동들의 콘텍스트를 나타낼 수도 있다. 예를 들어, 클라이언트 디바이스들 (412, 422, 및 432) 의 사용자들이 방에서 텔레비전 프로그램을 보는 것, 레스토랑에서 저녁 식사를 하는 것, 도로에서 차를 운전하는 것과 같은 행동들과 관련될 수도 있다. 클라이언트 디바이스들 (412 및 422) 의 행동들 또는 환경들 (410 및 420) 이 유사하면, 클라이언트 디바이스들 (412 및 422) 로부터 캡쳐된 환경의 사운드들은 통상적으로 유사할 것인데, 왜냐하면 환경의 사운드가 그 행동들 및 환경들 (410 및 420) 에 관한 충분한 정보를 포함하기 때문이다. 따라서, 환경의 사운드들은 클라이언트 디바이스들 (412 및 422) 이 유사한 콘텍스트를 가지는지를 결정하는데 이용될 수도 있다. 예를 들어, 클라이언트 디바이스들 (412 및 422) 의 양자 모두가 레스토랑들에 있을 수도 있거나, 상이한 빌딩들에 위치된 회의실에 있을 수도 있다. 이 경우들에서, 클라이언트 디바이스들 (412 및 422) 은 유사한 콘텍스트를 가지는 것으로 고려될 수 있다.
다른 한편으로는, 사운드 환경 (430) 이 사운드 환경들 (410 및 420) 과 유사하지 않다면, 사운드 환경 (430) 으로부터의 환경의 사운드는 일반적으로 사운드 환경들 (410 및 420) 로부터의 환경의 사운드들과 상이할 것이다. 따라서, 사운드 환경 (430) 에 대한 콘텍스트는 사운드 환경들 (410 및 420) 의 콘텍스트와 상이할 것이다.
서버 (480) 는 행동들 및 환경들과 같은 유사한 콘텍스트에서 클라이언트 디바이스들의 그룹을 식별하기 위해 클라이언트 디바이스들 (412, 422, 및 432) 로부터의 사운드 디스크립터들을 비교하도록 구성된다. 서버 (480) 내의 수신기 (492) 는 클라이언트 디바이스들 (412, 422, 및 432) 로부터 사운드 디스크립터들을 포함하는 패킷들을 수신한다. 각각의 패킷은 클라이언트 디바이스로부터의 하나 이상의 사운드 디스크립터들을 포함한다. 서버 (480) 가 도 4 의 서버-클라이언트 시스템에서 도시되지만, 또한, 클라이언트 디바이스들 (412, 422, 및 432) 을 포함하는 피어-투-피어 시스템에서의 클라이언트 디바이스로서 구현될 수도 있다. 예를 들면, 클라이언트 디바이스들 (412, 422, 및 432) 중 하나는 콘텍스트 유사성에 기초하여 클라이언트 디바이스들 (412, 422, 및 432) 의 사용자들을 그룹화하도록 서버 (480) 의 기능들을 구현할 수도 있다. 서버 (480) 는 유사성 프로세싱 유닛 (482), 그룹화 유닛 (484), 및 송신기 (494) 를 포함한다. 유사성 프로세싱 유닛 (482) 은 클라이언트 디바이스들 (412, 422, 및 432) 로부터의 사운드 디스크립터들의 각 쌍 간에 유사성 값들을 결정하도록 구성된다. 예를 들면, 클라이언트 디바이스 (412) 로부터 수신된 사운드 디스크립터와 클라이언트 디바이스 (422) 및/또는 클라이언트 디바이스 (432) 로부터 수신된 사운드 디스크립터 간의 유사성 값이 계산될 수도 있다.
유사성 프로세싱 유닛 (482) 으로부터의 유사성 값들에 기초하여, 그룹화 유닛 (484) 은 클라이언트 디바이스들 (412, 422, 및 432) 중 어느 것이 유사한 콘텍스트에 있는지를 결정하고, 그에 따라 클라이언트 디바이스들을 그룹화한다. 클라이언트 디바이스들 (412 및 422) 이 유사한 환경에 있다면, 클라이언트 디바이스들 (412 및 422) 은 유사한 콘텍스트에 있는 것으로 식별된다. 본 명세서에서 사용된 것과 같이, 용어 "유사한 콘텍스트 (similar context)" 는, 클라이언트 디바이스들 (412, 422, 및 432) 과 같은 디바이스들이 그들이 서로 지리적으로 인근에 있는지 또는 지리적으로 상이한 위치들에 있는지에 관계없이, 유사한 행동들과 연관되거나 유사한 환경들에 위치되는 것을 의미할 수도 있다. 예를 들면, 클라이언트 디바이스들 (412 및 422) 의 2 개의 사용자들이 상이한 위치들에서 텔레비전 프로그램을 보고 있다면, 그들의 지리적인 비유사성에도 불구하고, 2 개의 클라이언트 디바이스들은 유사한 콘텍스트 내에 있는 것으로 간주될 수도 있는데, 왜냐하면 그 클라이언트 디바이스들이 텔레비전 스피커들에서 나오는 유사한 주변 사운드들을 캡쳐할 수도 있기 때문이다.
클라이언트 디바이스들을 그룹화한 이후, 그룹화 유닛 (484) 은 그룹화된 클라이언트 디바이스들 또는 유사성 값들로부터 각각의 클라이언트 디바이스에 대한 유사한 클라이언트 리스트를 구성하도록 구성될 수도 있다. 각각의 클라이언트 디바이스에 대하여, 유사한 클라이언트 리스트는 유사한 콘텍스트 그룹에 속하는 것으로 식별된 다른 클라이언트 디바이스들의 리스트를 포함한다.
송신기 (494) 는 그룹화 유닛 (484) 으로부터의 유사한 클라이언트 리스트들을 하나 이상의 클라이언트 디바이스들 (412, 422, 및 432) 로 패킷 포맷으로 전송하도록 구성된다. 클라이언트 디바이스 (412) 에 대한 유사한 클라이언트 리스트의 경우, 그 리스트는 클라이언트 디바이스 (422) 를 포함할 수도 있다. 이 경우, 송신기 (494) 는 클라이언트 디바이스 (422) 를 식별하는 유사한 클라이언트 리스트를 클라이언트 디바이스 (412) 로 전송한다. 유사하게, 클라이언트 디바이스 (412) 를 식별하는 유사한 클라이언트 리스트가 클라이언트 디바이스 (422) 로 전송될 수도 있다.
표 1 은 유사한 클라이언트 리스트를 전달하기 위한 지정된 길이 (specified length) 를 갖는 데이터 필드들을 포함하는 예시적인 패킷 포맷을 나타낸다.
필드명 패킷 필드
패킷 타입 4 비트
유사한 클라이언트들의 수 8 비트
유사한 사용자 ID[1] 64 비트
유사한 사용자 ID[2] 64 비트
·
·
·
·
·
·
유사한 사용자 ID[L-1] 64 비트
유사한 사용자 ID[L] 64 비트
상기 표에 나타낸 것과 같이, 패킷은 우측 컬럼 상에 열거된 패킷 필드들을 포함한다. 좌측 컬럼 상의 필드명은 설명의 목적으로 이용되며, 패킷에 포함될 필요는 없다. 패킷 포맷에서, 패킷 타입 필드는 길이가 4 비트이고, 패킷의 타입을 나타내는 정보를 포함한다. 예시된 패킷 타입은 패킷이 유사한 사용자 ID들을 포함하는 유사한 클라이언트 리스트를 포함한다는 것을 나타낼 수도 있다. 일부 실시형태들에서, 패킷 타입은 패킷이 사운드 히스토그램과 같은 다른 타입의 정보 및 임의의 다른 연관된 정보를 포함한다는 것을 나타낼 수 있다.
유사한 클라이언트들의 수 필드는 길이가 8 비트이고, 유사한 콘텍스트를 가지는 그룹화된 클라이언트 디바이스들의 수 L 를 나타낸다. 수 L 를 반영하여, 패킷은 그룹화된 클라이언트 디바이스들의 각각에 대한 유사한 사용자 ID[i] 필드를 포함한다. 구체적으로, 유사한 사용자 ID[i] 필드는 길이가 64 비트이고, 패킷을 수신하고 있는 클라이언트 디바이스와 함께 그룹화되는 i-번째 클라이언트 디바이스에 대한 고유 식별자를 포함한다. 패킷 포맷은 지정된 사이즈를 갖는 전술된 필드들을 갖는 것으로 예시되지만, 또한 네트워크를 통한 통신을 용이하게 하기 위해 헤더, CRC 정보 등과 같은 적합한 사이즈의 임의의 필드들을 포함할 수도 있다.
대안적으로 또는 부가적으로, 서버 (480) 는 사운드 콘텍스트 데이터베이스 (486) 및 식별 유닛 (488) 을 포함한다. 사운드 콘텍스트 데이터베이스 (486) 는 하나 이상의 레퍼런스 사운드 디스크립터들 및 관련된 레퍼런스 콘텍스트들을 포함한다. 레퍼런스 사운드 디스크립터들은 소정 TV 프로그램을 보는 것, 레스토랑에서 저녁 식사하는 것, 지하철로 통근하는 것 또는 사무실에서 작업하는 것과 같이 사운드 행동들 및/또는 환경들을 포함하는 다양한 알려진 콘텍스트들 (즉, 레퍼런스 콘텍스트) 의 캡쳐된 사운드들로부터 추출된다. 사운드 디스크립터들 및 연관된 레퍼런스 콘텍스트들은 후술되는 것처럼 클라이언트 디바이스의 콘텍스트를 식별하는데 이용하기 위해 사운드 콘텍스트 데이터베이스 (486) 에 제공된다. 식별 유닛 (488) 은 수신기 (492) 를 통해 클라이언트 디바이스들 (412, 422, 및 432) 로부터 사운드 디스크립터들을 수신하고, 사운드 콘텍스트 데이터베이스 (486) 로부터 레퍼런스 사운드 디스크립터들을 취출 (retrieve) 하고, 사운드 디스크립터들을 사운드 콘텍스트 데이터베이스 (486) 로부터의 취출된 레퍼런스 사운드 디스크립터들과 비교함으로써 클라이언트 디바이스들 (412, 422, 및 432) 의 콘텍스트들을 결정하도록 구성된다. 예를 들면, 식별 유닛 (488) 은 클라이언트 디바이스 (412) 로부터의 사운드 디스크립터와 사운드 콘텍스트 데이터베이스 (486) 로부터의 취출된 레퍼런스 사운드 디스크립터들의 모두를 비교하고, 클라이언트 디바이스 (412) 의 사운드 디스크립터에 대하여 최대 유사성을 가지는 레퍼런스 사운드 디스크립터를 식별한다. 이 경우, 클라이언트 디바이스 (412) 는 최대 유사성을 갖는 식별된 레퍼런스 사운드 디스크립터와 연관된 콘텍스트 내에 있는 것으로 결정된다. 예컨대 클라이언트 디바이스 (412) 의 사운드 디스크립터가 사무실 환경의 콘텍스트와 연관된 레퍼런스 사운드 디스크립터와 가장 유사하다면, 클라이언트 디바이스 (412) 의 콘텍스트는 사무실 환경인 것으로 결정된다. 그 후에, 콘텍스트 정보는 송신기 (494) 를 통해 패킷 포맷으로 하나 이상의 클라이언트 디바이스들 (412, 422, 및 432) 로 전송된다.
도 5 는 일 실시예에 따라 유사한 콘텍스트에 있는 클라이언트 디바이스들을 그룹화하는데 이용하기 위한, 클라이언트 디바이스에 의해 수행되는 방법의 플로우차트를 도시한다. 이러한 방법에서, 환경의 사운드가 감지되고, 클라이언트 디바이스에서 사운드 센서를 통해 캡쳐된다 (510). 그 후에, 사운드 디스크립터는 캡쳐된 환경의 사운드로부터 추출된다 (520). 전술된 것과 같이, 사운드 디스크립터는 환경의 사운드로부터 추출된 하나 이상의 사운드 피쳐들 또는 사운드 컴포넌트들의 히스토그램과 같은 사운드 피쳐들로부터 획득된 더 상위 레벨의 정보를 지칭할 수도 있다. 사운드 디스크립터가 추출되고나면, 추출된 사운드 디스크립터는 유사한 클라이언트 리스트 및/또는 콘텍스트 정보를 생성하기 위해 서버 (480) 로 송신된다 (530). 예컨대, 도 1 에 도시된 것과 같이, 클라이언트 디바이스들 (110 및 120) 은 각각 위치들 (130 및 140) 에서 환경의 사운드들을 캡쳐하고, 환경의 사운드들로부터 사운드 디스크립터들을 추출하며, 그 후에 사운드 디스크립터들을 서버 (180) 로 전송한다. 사운드 디스크립터는 사운드 피쳐를 포함할 수도 있다. 사운드 디스크립터들의 사운드 피쳐들에 기초하여, 서버 (480) 는 클라이언트 디바이스들 (110 및 120) 을 동일한 콘텍스트 내에 있는 것으로 그룹화할 수 있는데, 왜냐하면 위치들 (130 및 140) 에서의 환경의 사운드들이 실질적으로 동일한 TV 사운드들을 나타낼 수도 있으며, 실질적으로 동일한 사운드 피쳐들의 추출을 초래하기 때문이다. 그 후에, 유사한 클라이언트 리스트 및/또는 콘텍스트 정보는 서버 (480) 로부터 수신되고 (540), 사용자들을 위해 디스플레이된다 (550). 전술된 방법이 유사한 클라이언트 리스트 및/또는 콘텍스트 정보를 획득하는데 이용하기 위해 클라이언트 디바이스들 (412, 422, 및 432) 중 어느것 또는 전부에 의해 수행될 수도 있음이 이해되어야 한다.
일 실시형태에서, 클라이언트 디바이스는 서버 (480) 로부터 수신된 콘텍스트 정보에 기초하여 다른 클라이언트 디바이스들의 콘텍스트를 인식할 수도 있다. 또한, 클라이언트 디바이스가 유사한 클라이언트 리스트의 부분으로서 다른 클라이언트 디바이스들의 식별을 수신할 경우, 클라이언트 디바이스는 동일한 활동 또는 환경에서 공통의 관심을 공유하는 것으로 다른 클라이언트 디바이스들을 디스플레이할 수도 있다. 클라이언트 디바이스는 그러한 정보를 활용하여, 서비스들 (예컨대, 소셜 네트워킹 서비스들, 광고 등등) 을 유사한 콘텍스트에 있는 다른 클라이언트 디바이스들의 사용자들에게 제공할 수도 있다.
도 6 은 일 실시형태에 따라 유사한 콘텍스트에 있는 클라이언트 디바이스들을 그룹화하고 각각의 클라이언트 디바이스의 콘텍스트를 결정하기 위해, 서버 (480) 에 의해 수행되는 방법의 플로우차트를 도시한다. 서버 (480) 의 수신기 (492) 는 클라이언트 디바이스들 (412, 422, 및 432) 로부터 사운드 디스크립터들을 포함하는 패킷들을 수신하고, 사운드 디스크립터들을 유사성 프로세싱 유닛 (482) 및 식별 유닛 (488) 으로 제공한다 (610). 유사성 프로세싱 유닛 (482) 은 클라이언트 디바이스들 (412, 422, 및 432) 로부터의 사운드 디스크립터들의 각 쌍 사이에 유사성 값들을 결정한다 (620). 일 실시형태에서, 2 개의 클라이언트 디바이스들 (a 및 b) 로부터의 사운드 디스크립터들 간의 유사성 값은 2 개의 사운드 디스크립터들 사이의 유클리드 (Euclidean) 거리를 계산함으로써 결정된다. 이러한 실시형태에서, 더 큰 유클리드 거리 값은 2 개의 클라이언트 디바이스들 (a 및 b) 로부터의 사운드 디스크립터들이 덜 유사하다는 것을 의미하는 반면, 더 작은 유클리드 거리는 2 개의 클라이언트 디바이스들 (a 및 b) 로부터의 사운드 디스크립터들이 더 유사하다는 것을 의미한다. 이러한 유클리드 거리는 예컨대, 이하 등식에 따라 계산될 수도 있다:
Figure pct00001
식중에서, a[i] 은 클라이언트 디바이스 (a) 로부터의 사운드 디스크립터를 나타내는 벡터의 i-번째 디멘션 (dimension) 값을 표시하고, b[i] 는 클라이언트 디바이스 (b) 로부터의 사운드 디스크립터를 나타내는 벡터의 i-번째 디멘션 값을 표시한다.
다른 실시형태에서, 사운드 디스크립터가, 캡쳐된 환경 사운드의 분류들을 나타내는 사운드 클래스 식별자들을 나타낼 경우, 유클리드 거리 계산 방법은 유사성 값을 결정할 수 없을 수도 있다. 이 경우, 2 개의 클라이언트 디바이스들 간의 유사성 값은 클라이언트 디바이스들로부터의 사운드 클래스 ID들이 동일할 때 유사성 값을 "1" 만큼 증분시킴으로써 결정된다. 다른 한편으로는, 클라이언트 디바이스들로부터의 사운드 클래스 ID들이 상이할 때, 유사성 값은 증분되지 않는다. 이러한 프로세스는 2 개의 클라이언트 디바이스들 간의 사운드 클래스 ID들의 모든 쌍들이 비교될 때까지 수행된다.
히스토그램이 사운드 디스크립터로서 이용될 때, 클라이언트 디바이스들로부터의 히스토그램들 간의 유사성 값은 이하 등식들 중 임의의 것에 따라 결정될 수도 있다:
Figure pct00002
식중에서,
Figure pct00003
, N 은 히스토그램 빈들의 전체 수이고, H1 는 제 1 비교 히스토그램이고, H2 는 제 2 의 비교 히스토그램이며, I 는 히스토그램 빈들의 인덱스이다.
Figure pct00004
이러한 등식들에서, 상관 (correlation) 및 교차 (intersection) 거리들은 유사성 값들을 나타내며, 여기서 더 높은 값은 2 개의 히스토그램들이 더 유사하다는 것을 의미한다. 카이 제곱 (Chi-Square) 및 바타차야 (Bhattacharyya) 거리들은 비유사성 값들을 나타내며, 여기서 더 높은 값은 2 개의 히스토그램이 덜 유사하다는 것을 의미한다. 사운드 디스크립터가 히스토그램들의 시퀀스들을 나타낼 때, 클라이언트 디바이스들로부터의 사운드 디스크립터들은 시퀀스들의 각 시간 기간을 매칭함으로써 비교될 수도 있다. 일 실시형태에서, 사운드 디스크립터들은, 경시적으로 변화할 수도 있는 2 개의 시퀀스들 간의 유사성을 결정하기 위해 DTW (동적 시간 워핑) 기술들을 채용함으로서 비교될 수도 있다. 서버 (480) 의 그룹화 유닛 (484) 은 클라이언트 디바이스들을 식별하고 사운드 디스크립터들 간의 유사성 값들에 기초하여 유사한 콘텍스트 그룹으로 그룹화한다 (630). 예를 들어, 클라이언트 디바이스들 (412 및 422) 로부터의 사운드 디스크립터들 간의 유사성 값이 미리결정된 임계치를 초과한다면, 그룹화 유닛 (484) 은 클라이언트 디바이스 (412) 에 대한 유사한 클라이언트 리스트에 클라이언트 디바이스 (422) 를 추가한다. 서버 (480) 의 송신기 (494) 는 유사한 클라이언트 리스트 및/또는 콘텍스트 정보를 패킷 포맷으로 네트워크 (450) 를 통해 클라이언트 디바이스들 (예컨대, 클라이언트 디바이스 (412)) 로 전송한다 (670). 클라이언트 디바이스들을 그룹화하는데 부가하여, 식별 유닛 (488) 은 수신된 사운드 디스크립터들과 연관된 콘텍스트들을 결정한다. 특히, 클라이언트 디바이스들로부터 사운드 디스크립터들의 수신시, 식별 유닛 (488) 은 사운드 콘텍스트 데이터베이스 (486) 로부터 레퍼런스 사운드 디스크립터들을 취출하고, 각각의 클라이언트 디바이스로부터의 사운드 디스크립터와 사운드 콘텍스트 데이터베이스 (486) 로부터의 레퍼런스 사운드 디스크립터들 간의 유사성 값들을 결정한다 (640). 예를 들면, 사운드 콘텍스트 데이터베이스 (486) 가 100 개의 레퍼런스 사운드 디스크립터들을 포함한다면, 유사성 값은 수신된 사운드 디스크립터와 100 개의 유사성 값들 전부에 대한 레퍼런스 사운드 디스크립터들의 각각 사이에서 계산될 것이다.
각각의 수신된 사운드 디스크립터와 레퍼런스 사운드 디스크립터들 사이에 생성된 유사성 값들 중에서, 식별 유닛 (488) 은 최대 유사성 값을 결정하고, 사운드 콘텍스트 데이터베이스 (486) 로부터의 최대 유사성 값과 연관된 레퍼런스 사운드 디스크립터를 식별한다 (650). 그 후에, 식별 유닛 (488) 은 사운드 콘텍스트 데이터베이스 (486) 로부터의 식별된 사운드 디스크립터와 연관된 콘텍스트를 결정한다 (660). 그 후에, 콘텍스트 정보는 송신기 (494) 를 통해 패킷 포맷으로 하나 이상의 클라이언트 디바이스들로 전송된다 (670). 예를 들면, 클라이언트 디바이스들 (412 및 422) 이 동일한 콘텍스트에 있는 (예컨대, 레스토랑에 있는) 것으로 결정된다면, 서버 (480) 는 클라이언트 디바이스들 (412 및 422) 중 어느 하나 또는 양자 모두에 콘텍스트 정보를 송신한다.
일부 실시형태들에서, 캡쳐된 환경 사운드들로부터 추출된 사운드 피쳐들 또는 사운드 컴포넌트들의 히스토그램들은 사운드 디스크립터들로서 이용된다. 일반적으로, 상이한 콘텍스트들에서 획득된 환경의 사운드들은 사운드 피쳐들의 상이한 분포들을 나타낸다. 즉, 특정 콘텍스트로부터 획득된 환경의 사운드로부터 추출된 사운드 피쳐들은 사운드 피쳐들의 특징적 분포를 가질 수도 있다. 히스토그램은 경시적으로 사운드 피쳐들 또는 사운드 컴포넌트들의 주파수 분포 (frequency distribution) 또는 발생 (occurrence) 을 나타낸다.
특정 콘텍스트에서 소정 시간 기간 동안 생성된 사운드 피쳐들 또는 사운드 컴포넌트들의 히스토그램은 콘텍스트의 상대적으로 장기간 특징들을 보여줄 수 있다. 예를 들어, 환경의 사운드 클립들에서, 음악, 교통 소음, 식기류 사운드, 금전 등록기 사운드, 등과 같은 사운드들은 일반적으로 랜덤한 시점에 발생한다. 따라서, 상대적으로 긴 시간 기간 (예컨대, 1 분) 동안 캡쳐된 환경의 사운드는 통상적으로, 더 짧은 시간 기간 (예컨대, 수 초) 동안 캡쳐된 환경의 사운드보다 더 양호한 콘텍스트를 제공한다. 또한, 특정 콘텍스트 또는 환경은 일반적으로, 그 콘텍스트 또는 환경을 식별하는데 이용될 수 있는 환경의 사운드들과 연관된 특정 사운드 피쳐들을 나타낸다. 예컨대, 붐비는 레스토랑에서 획득된 환경의 사운드는 식탁용 식기류 사운드들, 사람의 음성들, 음악 등등에 관한 더 많은 수의 사운드 피쳐들 그러나, 교통 소음들, 바람의 소음 등과 같은 실외 사운드들에 관한 더 적은 수의 사운드 피쳐들을 특징으로 할 수도 있다.
일 실시형태들에서, 사운드 컴포넌트들의 히스토그램은 환경의 사운드들로부터 추출된 사운드 피쳐들의 벡터 양자화에 기초하여 구성될 수도 있다. 벡터 양자화에서, 사운드 컴포넌트 세트가 트레이닝 (training) 사운드 샘플들로부터 생성된다. 벡터 양자화의 결과 (예컨대, 사운드 컴포넌트 세트) 는 또한 클라이언트 디바이스 또는 서버에 미리 저장될 수도 있다. 벡터 양자화 이후, 입력 사운드 피쳐는 클러스터들 중에서 최인접 클러스트로 맵핑되며, 클러스터들 각각은 사운드 컴포넌트를 나타낸다. 히스토그램은 최인접 평균값을 갖는 클러스터를 식별함으로써 클러스터들로 맵핑된 입력 사운드 피쳐들의 수를 카운팅함으로써 생성된다.
도 7 은 각각의 클러스터가 사운드 컴포넌트를 나타내는 16 개 클러스터들 (P1 내지 P16) 로 클러스터화된 트레이닝 (예컨대, 러닝 (learning)) 사운드 피쳐들의 예시적인 2차원 클러스터 분포를 도시한다. 트레이닝 사운드 피쳐들의 클러스터 분포는 트레이닝 세트에서 공지된 환경의 사운드들로부터 사운드 피쳐들 (예컨대, 사운드 피쳐 벡터들) 을 추출함으로써 구성될 수도 있다. 트레이닝 사운드 피쳐가 공지된 환경의 사운드로부터 구성됨에 따라, 가우시안 혼합 모델링 (GMM) 이, 사운드 피쳐의 값들에 따라 수평 및 수직 방향들로 분포되는, 16 개의 클러스터들 (P1 내지 P16) 중에서 최인접 클러스터로 트레이닝 사운드 피쳐를 배치시키는데 이용될 수도 있다. 유사한 사운드 피쳐들은 클러스터 분포에서 서로 가까이 위치되는 경향이 있기 때문에, 사운드 피쳐들의 가우시안 클러스터는 환경의 사운드의 소정 타입을 나타낸다. 예컨대, 사운드 피쳐들의 하나의 클러스터는 통상적으로 음악의 특정 톤에 관한 것일 수도 있고, 다른 클러스터는 음악의 다른 톤에 관한 것일 수도 있으며, 또 다른 클러스터는 도로상에 주행중인 차들에서 나오는 엔진 소음 또는 키보드를 두드리는 사운드에 관한 것일 수도 있다. 트레이닝 세트로부터 추출된 원하는 사운드 피쳐들이 원하는 수의 사운드 컴포넌트들로 클러스터화되고나면, 각각의 사운드 컴포넌트는 P1 내지 P16 과 같은 클러스터 인덱스 (예컨대, 식별자, 라벨) 로 식별되며, 이들 각각은 도 7 에 별표 (*) 로 표시된 바처럼 포함된 사운드 피쳐들의 평균값을 갖는다. 간략함을 위해, 도 7 에서 2-차원 클러스터 분포가 도시된다. 그러나, 임의의 적합한 차원들의 클러스터 분포가 임의의 적합한 수의 클러스터들을 위해 채용될 수도 있다. 당업계에 알려진 다양한 트레이닝 알고리즘들이 클러스터 인덱스들을 결정하는데 채용될 수도 있다.
클러스터 분포가 구성된 후에, 각 클라이언트 디바이스에 저장된다. 사운드가 캡쳐되고 대응 사운드 피쳐들이 클라이언트 디바이스에서 추출되었을 때, 입력 사운드 피쳐에 대해 가장 가까운 평균값을 갖는 클러스터를 결정함으로써 각각의 입력 사운드 피쳐가 클러스터 인덱스로 매핑될 수도 있다. 즉, 입력 사운드 피쳐에 대한 클러스터 인덱스가 식별된다. 사운드들이 캡쳐되고 클러스터 인덱스들이 각 클라이언트 디바이스에 생성됨에 따라, 사운드 컴포넌트들의 히스토그램이 구성 및 업데이트된다.
도 8 은 하나의 실시형태에 따른 복수의 클라이언트 디바이스들에서 생성된 환경의 사운드들의 예시적인 히스토그램들을 예시한 것이다. 각각의 히스토그램은 모든 클러스터들 (P1 내지 P16) 에 대한 발생의 카운트 (예를 들어, 발생의 총 수) 를 나타내고 있다. 히스토그램들의 각 수평축을 따라, 인덱스들 (P1 내지 P16) 은 클러스터들 (P1 내지 P16) 을 각각 나타낸다. 수직축은 각각의 클러스터들 (P1 내지 P16) 내의 사운드 피쳐들의 수를 나타낸다. 사운드 피쳐들의 클러스터 인덱스들이 각 클라이언트 디바이스에서 수신됨에 따라, 히스토그램은 클러스터 인덱스들과 연관된 각 클러스터에 대한 카운트를 증분함으로써 업데이트된다.
도 9a 는 하나의 실시형태에 따른 일 예시적인 클라이언트 디바이스 (900) 의 더욱 상세한 블록도를 예시한 것이다. 도 9a 에 도시된 클라이언트 디바이스 (900) 의 구성은 클라이언트 디바이스들 (110, 120, 210, 220, 310, 320, 412, 422, 및 432) 에서 구현될 수도 있다. 클라이언트 디바이스 (900) 는 사운드 센서 (910), 사운드 프로세서 (920), 송신기 (960), 수신기 (970), 및 디스플레이 유닛 (980) 을 포함한다.
클라이언트 디바이스 (900) 에서의 사운드 센서 (910) 는 하나 이상의 마이크로폰들, 또는 클라이언트 디바이스 (900) 의 환경 사운드의 임의의 양태를 수신하거나, 캡쳐하거나, 측정하거나, 레코딩하거나, 또는 운반하는데 이용되는 임의의 다른 타입의 사운드 센서들을 포함한다. 이러한 사운드 센서 (910) 는 클라이언트 디바이스 (900) 의 소프트웨어 및/또는 하드웨어를 이용하도록 구성될 수도 있다. 또한, 사운드 센서 (910) 는 디바이스 (900) 의 일반적 동작에 있어서 제공된 사운드 센서들, 이를테면, 전화 통화 또는 비디오 레코딩을 위해 이용되는 마이크로폰들을 활용할 수도 있다. 따라서, 본 개시물의 일부 실시형태는 사운드 센서 (910) 의 임의의 변형을 필요로 하는 일 없이 실시될 수도 있다.
사운드 프로세서 (920) 는 사운드 센서 (910) 에 의해 캡쳐된 환경의 사운드들로부터 사운드 디스크립터들 (예를 들어, 히스토그램) 을 생성하도록 구성되고, 피쳐 추출 유닛 (930), 벡터 양자화 유닛 (940), 및 히스토그램 생성 유닛 (950) 을 포함한다.
피쳐 추출 유닛 (930) 은 스피치 및 오디오 코딩, 압축, 인식 및 분석 방법들을 포함한 적합한 신호 프로세싱 방법들을 이용함으로써, 사운드 센서 (910) 로부터 수신된 환경의 사운드로부터 사운드 피쳐들을 추출하도록 구성된다. 예를 들어, 이러한 방법들은, 오디오 핑거프린팅, 스피치 인식 또는 스피치 및 오디오 코딩에 대해 잘 알려진 방법들인, 스펙트럼 분석, MFCC (Mel-frequency cepstral coefficients), LPC (linear predictive coding), 및/또는 LSP (line spectral pair) 기법들을 포함한다. 다음은 환경의 사운드의 MFCC 피쳐들을 추출하는 일 예이다. 환경의 사운드 (예를 들어, 미가공 (raw) 사운드 신호) 를 포함하는 프레임은 윈도우 함수, 예를 들어, 해밍 (hamming) 윈도우로 승산된다. 사운드 신호는 주파수 도메인으로 푸리에 변환된 후에, 스펙트럼의 파워들이 계산된다. 그 후에, 스펙트럼의 파워 (power) 들이, 예를 들어, 삼각 중첩 윈도우들을 이용하여 mel 스케일로 매핑된다. 그 후에, mel 주파수들 각각에서 파워들의 이산 코사인 변환 및/또는 로그를 취함으로써 켑스트럼 계수들이 계산된다. 따라서, 사운드 피쳐가 벡터 포맷 ("사운드 피쳐 벡터" 라고도 지칭될 수도 있다) 으로서 표현될 수도 있다. 클라이언트 디바이스 (900) 의 벡터 양자화 유닛 (940) 은 벡터 양자화를 수행하고, 사운드 컴포넌트들의 미리결정된 클러스터 분포에 기초하여 피쳐 추출 유닛 (930) 으로부터 수신된 각 사운드 피쳐에 대한 클러스터 인덱스를 결정한다. 즉, 피쳐 추출 유닛 (930) 으로부터의 각 사운드 피쳐는, 사운드 피쳐에 대해 가장 가까운 평균 값을 갖는 클러스터의 클러스터 인덱스로 매핑된다. 클러스터 인덱스는 히스토그램 생성 유닛 (950) 에 제공되고, 이 히스토그램 생성 유닛 (950) 은 클러스터 인덱스의 발생을 카운팅함으로써 히스토그램를 생성 및/또는 업데이트한다. 모든 클러스터들에 대한 카운트들을 포함하는 생성된 히스토그램은 네트워크 (450) 를 통해 패킷 포맷으로 서버 (480) 에 송신된다.
표 2 는 히스토그램을 운반하기 위한 특정 길이를 갖는 데이터 필드들을 포함하는 일 예시적인 패킷 포맷을 나타낸 것이다.
필드명 패킷 필드
패킷 타입 4 비트
사용자 ID 64 비트
클러스터 인덱스들의 수 8 비트
타임 스탬프 64 비트
클러스터 인덱스 [1] 의 발생 4 비트
클러스터 인덱스 [2] 의 발생 4 비트
.
.
.
.
.
.
클러스터 인덱스 [N-1] 의 발생 4 비트
클러스터 인덱스 [N] 의 발생 4 비트
상기 표에 나타낸 바와 같이, 패킷은 우측 컬럼에 열거된 패킷 필드들을 포함한다. 좌측 컬럼의 필드명은 패킷에서의 비트들의 의미를 설명하고 패킷에 포함될 필요는 없다. 패킷 포맷에서, 패킷 타입 필드는 길이가 4 비트이고, 패킷이 히스토그램 정보 및 임의의 다른 관련 정보를 포함한다는 것을 나타내는 정보를 포함한다. 사용자 ID 필드는 길이가 64 비트이고, 클라이언트 디바이스 (900) 에 할당된 고유 식별자를 나타낸다. 클러스터 인덱스들의 수 필드는 길이가 8 비트이고, 히스토그램에서의 클러스터 인덱스들의 수 N, 예를 들어, 16 개의 클러스터 인덱스들 (P1 내지 P16) 을 나타낸다. 패킷은, 타임 스탬프를 나타내는 선택적 데이터 필드를 포함할 수도 있다. 타임 스탬프 필드는 길이가 64 비트이고, 히스토그램을 생성하기 위해 환경의 사운드가 캡쳐되는 시간을 나타낸다. 그 시간은 클라이언트 디바이스 (900) 의 클록 회로 (미도시) 에 의해 제공될 수도 있다.
패킷은 클러스터 인덱스의 N 발생 필드를 포함한다. 클러스터 인덱스의 i 번째 발생 필드 (상기 표에서 "클러스터 인덱스 [i] 의 발생" 으로 나타낸다) 에 대해, 클러스터 인덱스 [i] 의 발생 필드는 길이가 4 비트이고, i 번째 클러스터 인덱스에 매핑되는 입력 사운드 피쳐들의 카운트를 포함한다. 수 N 은 환경의 사운드들의 캡쳐 지속기간에 따라 필요시 1 이상으로 설정될 수도 있다. N 이 1 보다 크면, 패킷은 복수의 사운드 컴포넌트들을 갖는 히스토그램을 포함한다.
도 9b 는 또 다른 실시형태에 따른 일 예시적인 클라이언트 디바이스 (900) 의 상세한 블록도를 예시한 것이다. 도 9b 에 도시된 클라이언트 디바이스 (900) 의 구성은 클라이언트 디바이스들 (110, 120, 210, 220, 310, 320, 412, 422, 및 432) 에서 구현될 수도 있다. 클라이언트 디바이스 (900) 는 사운드 센서 (910), 사운드 프로세서 (920), 송신기 (960), 수신기 (970), 디스플레이 유닛 (980), 및 타임 인터럽트 유닛 (990) 을 포함한다. 이 실시형태에서, 소정의 시간 간격들에서 클라이언트 디바이스에 의해 캡쳐된 환경의 사운드들에 기초하여, 하나의 클라이언트 디바이스로부터 획득된 사운드 피쳐들 또는 히스토그램들의 시퀀스가 생성된다. 예를 들어, 환경의 사운드들의 시퀀스는 하루중 매시에 1 분간 캡쳐될 수도 있지만, 이에 한정되지 않는다. 이러한 사운드 피쳐들 또는 히스토그램들의 시퀀스는 충분한 기간에 걸친 클라이언트 디바이스 사용자의 라이프 패턴을 나타낸다.
환경의 사운드들의 시퀀스를 캡쳐하기 위해, 클라이언트 디바이스 (900) 는, 미리결정된 시간 간격들에서 또는 사용자에 의해 요청된 시간 간격들에서 사운드 센서 (910) 를 활성화시켜 시간 기간 동안 환경의 사운드를 캡쳐하도록 하는 타임 인터럽트 유닛 (990) 을 포함할 수도 있다. 예를 들어, 타임 인터럽트 유닛 (990) 은 하루중 매시의 시작에서 사운드 센서 (910) 를 활성화시켜 1 분간 환경의 사운드를 캡쳐하도록 할 수도 있다.
도 9a 및 도 9b 를 참조하면, 송신기 (960) 는 하나 이상의 사운드 디스크립터들을 패킷 포맷으로 서버 (480) 에 송신한다. 클라이언트 디바이스 (900) 의 수신기 (970) 는 유사한 클라이언트 리스트 및/또는 콘텍스트 정보를 서버 (480) 로부터 네트워크 (450) 를 통해 패킷 포맷으로 수신한다. 디스플레이 유닛 (980) 은 사용자에 대한 유사한 클라이언트 리스트 및/또는 콘텍스트 정보를 디스플레이하도록 구성된다. 도 9a 및 도 9b 의 클라이언트 디바이스 (900) 가 예시된 유닛들을 포함하지만, 본 개시물의 범위로부터 벗어나는 일 없이 부가적인 또는 대안적인 구조들을 채용할 수도 있다.
도 10 은 하나의 실시형태에 따른 클라이언트 디바이스들의 콘텍스트들을 결정하기 위해 서버 (480) 에 의해 수행되는 방법의 플로우차트를 예시한 것이다. 서버 (480) 의 수신기 (492) 는 클라이언트 디바이스들 (412, 422, 및 432) 로부터 환경의 사운드들의 히스토그램들을 수신한다 (1010). 식별 유닛 (488) 은, 이 실시형태에서는 레퍼런스 히스토그램인, 레퍼런스 사운드 디스크립터들을 사운드 콘텍스트 데이터베이스 (486) 로부터 취출하고, 각 클라이언트 디바이스로부터 수신된 히스토그램과 사운드 콘텍스트 데이터베이스 (486) 로부터의 각 히스토그램들 사이의 유사성 값들을 결정한다 (1020). 상술된 바와 같이, 사운드 콘텍스트 데이터베이스 (486) 는 벡터 양자화에 의해 다양한 알고 있는 콘텍스트들의 캡쳐된 사운드들로부터 생성된 하나 이상의 레퍼런스 히스토그램들을 포함한다. 각각의 클라이언트 디바이스에 대해, 식별 유닛 (488) 은 최대 유사성 값을 결정하고, 그 최대 유사성 값과 연관된 레퍼런스 히스토그램을 사운드 콘텍스트 데이터베이스 (486) 로부터 식별한다 (1030). 그 후에, 식별 유닛 (488) 은, 각 클라이언트 디바이스에 대해, 사운드 콘텍스트 데이터베이스 (486) 로부터 식별된 히스토그램과 연관된 콘텍스트를 결정한다 (1040). 사운드 콘텍스트 데이터베이스 (486) 내의 각 레퍼런스 히스토그램이 특정 사운드 환경을 나타내기 때문에, 사운드 콘텍스트 데이터베이스 (486) 에서 식별된 히스토그램에 의해 각 클라이언트 디바이스의 콘텍스트가 결정될 수 있다. 콘텍스트 정보가 그 후에 송신기 (494) 를 통해 하나 이상의 클라이언트 디바이스들에게 패킷 포맷으로 전송된다 (1050).
도 11 은 하나의 실시형태에 따른 히스토그램들에 기초하여 클라이언트 디바이스들 (412, 422, 및 432) 을 그룹화하기 위해 서버 (480) 에 의해 수행되는 방법의 플로우차트를 예시한 것이다. 처음에, 서버 (480) 는, 클라이언트 디바이스들 (412, 422, 및 432) 에게, 환경의 사운드들로부터 추출된 사운드 피쳐들에 기초하여 생성된 히스토그램을 포함하는 하나 이상의 사운드 디스크립터들을 포함하는 패킷을 전송하라고 요청할 수도 있다. 수신기 (492) 가 클라이언트 디바이스들로부터 히스토그램들을 패밋 포맷으로 수신하는 경우 (1110), 유사성 프로세싱 유닛 (482) 은 유사성 결정을 위해 클라이언트 디바이스 (예를 들어, 클라이언트 디바이스 (412)) 및 타겟 클라이언트 디바이스 (예를 들어, 클라이언트 디바이스 (422)) 를 선택한다 (1120). 그 후에, 유사성 프로세싱 유닛 (482) 은 클라이언트 디바이스 (412) 와 타겟 클라이언트 디바이스 (422) 로부터의 히스토그램들 사이의 유사성 값을 결정한다 (1130). 클라이언트 디바이스 (412) 와 타겟 클라이언트 디바이스 (422) 로부터의 히스토그램들 사이의 유사성 값이 결정되고 나면, 그룹화 유닛 (484) 은 유사성 값을 미리결정된 임계치와 비교하고 (1140), 클라이언트 디바이스들 (412 및 422) 사이의 유사성 값이 임계치보다 더 크다고 결정되는 경우, 클라이언트 디바이스 (412) 에 대한 유사한 클라이언트 리스트에 타겟 클라이언트 디바이스 (422) 를 추가한다 (1150). 클라이언트 디바이스 (412) 에 대한 유사한 클라이언트 리스트는 타겟 클라이언트 디바이스 (422) 에 할당된 고유 식별자 (ID) 를 포함할 수도 있다.
1140 에서 이 유사성 값이 임계치보다 크지 않다고 결정되는 경우 또는 1160 에서 또 다른 타겟 클라이언트 디바이스가 존재한다고 결정되는 경우, 유사성 프로세싱 유닛 (482) 은 1130 에서의 클라이언트 디바이스에 의한 유사성 결정을 위해 또 다른 타겟 클라이언트 디바이스 (예를 들어, 클라이언트 디바이스 (432)) 를 선택하도록 진행한다 (1170). 유사성을 결정하고, 유사성을 임계치와 비교하며, 유사한 클라이언트 리스트에 타겟 클라이언트 디바이스에 추가하는 1130 내지 1160 에서의 상기 동작들은, 1160 에서 모든 클라이언트 디바이스들에 대해 완전한 유사한 클라이언트 리스트들이 생성될 때까지 반복된다.
그 결과, 특정 클라이언트 디바이스 (예를 들어, 클라이언트 디바이스 (412)) 에 대한 완전한 유사한 클라이언트 리스트는, 클라이언트 디바이스 (412) 와 유사한 콘텍스트의 그룹 내에 있는 클라이언트 디바이스들 (422 및 432) 을 포함할 수도 있다. 유사한 클라이언트 리스트는 표 1 에 나타낸 것과 유사한 데이터 포맷을 갖는다. 완전한 유사한 클라이언트 리스트가 생성된 경우, 서버 (480) 의 송신기 (494) 는 클라이언트 디바이스 (412) 와 연관된 유사한 클라이언트 리스트를 클라이언트 디바이스 (412) 에 패킷 포맷으로 네트워크 (450) 를 통해 전송한다 (1180).
도 12 는 또 다른 실시형태에 따른 히스토그램들로부터 유도된 유사성 매트릭스에 기초하여 클라이언트 디바이스들을 그룹화하기 위해 서버 (480) 에 의해 수행되는 방법의 플로우차트를 예시한 것이다. 처음에, 서버 (480) 는 환경의 사운드들로부터 추출된 사운드 피쳐들에 기초하여 생성된 히스토그램을 포함하는 하나 이상의 사운드 디스크립터들을 포함하는 패킷을 전송하라는 요청을 클라이언트 디바이스들 (412, 422, 및 432) 에게 전송할 수도 있다. 수신기 (492) 가 클라이언트 디바이스들로부터 히스토그램들을 패밋 포맷으로 수신하는 경우 (1210), 유사성 프로세싱 유닛 (482) 은 유사성 결정을 위해 클라이언트 디바이스들 (412 및 422) 의 고유 쌍을 선택한다 (1220). 그 후에, 1230 에서, 유사성 프로세싱 유닛 (482) 은 클라이언트 디바이스들 (412 및 422) 의 선택된 쌍 사이의 유사성 값을 결정한다. 클라이언트 디바이스들 (412 및 422) 사이의 유사성 값이 결정되고 나면, 유사성 프로세싱 유닛 (482) 은 콘텍스트 유사성 매트릭스 (단순히 "메트릭스" 또는 "유사성 매트릭스" 라고 지칭될 수도 있다) 에 유사성 값을 추가한다 (1240).
하나의 실시형태에서, 유사성 프로세싱 유닛 (482) 은 다음과 같이 유사성 매트릭스를 계산한다. 클라이언트 디바이스들 (412, 422, 및 432) 로부터 획득된 히스토그램들과 같은 사운드 디스크립터들의 세트가 주어지면, 유사성 매트릭스는 매트릭스 S 로서 정의되고, 여기서 엘리먼트 Sij 는 i 번째와 j 번째 클라이언트 디바이스들의 사운드 디스크립터들 사이의 유사성의 측정치를 나타낸다. 또한, i 번째와 j 번째 클라이언트 디바이스들에 할당된 고유 식별자들은 연관된 유사성 값과 함께 엘리먼트 Sij 에 추가된다.
유사성 매트릭스에 유사성 값을 추가한 후에, 클라이언트 디바이스들의 임의의 다른 고유 쌍이 존재하는지를 결정한다 (1250). 그렇다면, 이 방법은 클라이언트 디바이스들의 또 다른 고유 쌍을 선택한 (1260) 후에 1230 으로 다시 진행한다. 그러나, 1250 에서 클라이언트 디바이스들의 다른 고유 쌍이 존재하지 않는다고 결정되는 경우, 클라이언트 디바이스들의 모든 고유 쌍들에 대해 유사성 값들이 결정되고 유사성 매트릭스가 완성된다는 것을 의미한다. 이 경우, 그룹화 유닛 (484) 은 유사성 매트릭스로부터 유사한 클라이언트 디바이스들을 클러스터화함으로써 유사한 클라이언트 리스트를 생성한다 (1270). 유사한 클라이언트 리스트는 유사한 콘텍스트에 있는 클라이언트 디바이스들의 그룹화를 나타낸다. 상기 실시형태에서는 유사성 매트릭스가 클라이언트 디바이스들의 모든 고유 쌍들에 대한 유사성 값들을 포함하는 것으로 설명되고 있지만, 일부 실시형태에서는, 유사성 매트릭스는 클라이언트 디바이스들의 모든 고유 쌍들의 일부에 대한 유사성 값들을 포함할 수도 있다. 이 경우, 그룹화 유닛 (484) 은 클라이언트 디바이스들의 모든 고유 쌍들의 서브세트에 대한 유사성 값들에 기초하여 유사한 클라이언트 디바이스들을 클러스터화함으로써 유사한 클라이언트 리스트를 생성한다.
유사한 클라이언트 디바이스들을 클러스터화함에 있어서, 스펙트럼 클러스터화 기법들이 채용될 수도 있다. 스펙트럼 클러스터화 기법들의 하나의 예는 정규화 컷 알고리즘 (Normalized Cuts algorithm) 이다. 이 알고리즘에 의하면, S 의 라플라시안 매트릭스
Figure pct00005
의 제 2 최소 고유값에 대응하는 고유 벡터 ν 에 기초하여 유사성 매트릭스 S 의 엘리먼트들 Sij 가 2 개의 서브세트들 (S1, S2) 로 파티셔닝되고 (예를 들어, 클러스터화되고), 식중에서 I 는 단위 매트릭스이고 D 는 대각 매트릭스
Figure pct00006
이다.
그 후에, 고유벡터 ν 에서 컴포넌트들의 중앙값 m 을 취하는 것, 및 ν 에서의 컴포넌트가 m 보다 큰 S 의 모든 엘리먼트들 S1 에 그리고 나머지 것들을 S2 에 위치시키는 것과 같은 다양한 방법으로 파티셔닝이 행해진다. 이러한 알고리즘은 상술된 것과 같은 방식으로 서브세트들을 반복적으로 추가 파티셔닝하는 것에 의한 계층적 클러스터화를 위해 이용된다. 본 실시형태에서, 클라이언트 디바이스들의 클러스터화를 수행함에 있어서 스펙트럼 클러스터닝 기법들이 채용되지만, K-평균 클러스터화와 같은 임의의 다른 타입의 클러스터화 기법들이 이 목적을 위해 채용될 수도 있다.
유사성 매트릭스에 기초한 유사한 클라이언트 디바이스들의 그룹이 결정되고 나면, 서버 (480) 는 유사한 클라이언트 리스트에 대해 클라이언트 디바이스들 중 임의의 클라이언트 디바이스로부터의 요청이 있는지를 결정한다 (1280). 그렇다면, 서버 (480) 의 송신기 (494) 가 유사한 클라이언트 디바이스들의 리스트를 요청한 클라이언트 디바이스에 네트워크 (450) 를 통해 전송한다 (1290). 클라이언트 디바이스들 중에 서비스들을 제공하거나, 유사한 활동의 관심들을 공유하는 클라이언트 디바이스들의 그룹을 시각화하거나, 또는 유사한 클라이언트 리스트에있는 클라이언트 디바이스들에게 타겟화된 서비스들을 제공하기 위해 이러한 유사한 클라이언트 리스트가 활용될 수 있다.
하나의 실시형태에서, 클라이언트 디바이스들로부터의 히스토그램들에 기초한 유사성 매트릭스가 생성되고 나면, 서버 (480) 는 클라이언트 디바이스들 중에 콘텍스트 유사성들의 시각화를 가상 맵의 형태로 제공할 수도 있다. 이러한 시각화를 생성함에 있어서, 임의의 잘 알려진 기법들, 이를테면, MDS (multi-dimensional scaling) 및 PCA (principal component analysis) 가 이용될 수도 있다. 송신기 (494) 는 유사성 시각화 정보를 클라이언트 디바이스들에게 전송한다. 이러한 유사성 시각화 정보는 클라이언트 디바이스들에서, 예를 들어, 클라이언트 디바이스들의 2차원 가상 맵을 디스플레이하기 위해 이용된다. 이 2차원 가상 맵 상에서, 클라이언트 디바이스들 사이의 거리는 클라이언트 디바이스들 사이의 콘텍스트 유사성의 정도를 나타낸다. 대안적인 실시형태에서, 클라이언트 디바이스는 서버 (480) 로부터 수신된 유사한 클라이언트 디바이스들의 리스트에 기초하여 클라이언트 디바이스들의 콘텍스트 유사성들의 시각화를 수행한다. 클라이언트 디바이스들의 사용자들은 가상 맵을 브라우징하여 공통 관심을 공유하는 상이한 위치에 있는 다른 사용자들을 찾을 수도 있다.
도 13 은 하나의 실시형태에 따른 무선 통신 시스템 내의 일 예시적인 클라이언트 디바이스의 블록도를 예시한 것이다.
클라이언트 디바이스 (1300) 는 셀룰러 폰, 단말기, 핸드셋, 개인 휴대 정보 단말기 (PDA), 무선 모뎀, 코드리스 폰 등일 수도 있다. 무선 통신 시스템은 CDMA (Code Division Multiple Access) 시스템, GSM (Global System for Mobile Communications) 시스템, W-CDMA (Wideband CDMA) 시스템, LTE (Long Term Evolution) 시스템, LTE 어드밴스드 시스템 등일 수도 있다.
클라이언트 디바이스 (1300) 는 수신 경로와 송신 경로를 통해 양방향 통신을 제공하는 것이 가능하다. 수신 경로 상에서, 기지국들에 의해 송신된 신호들은 안테나 (1312) 에 의해 수신되고, 수신기 (RCVR; 1314) 에 제공된다. 수신기 (1314) 는 수신된 신호를 컨디셔닝하고 디지털화하며, 이 컨디셔닝되고 디지털화된 신호를 추가의 프로세싱을 위해 디지털 섹션 (1320) 에 제공한다. 송신 경로 상에서, 송신기 (TMTR) 는 디지털 섹션 (1320) 으로부터 송신될 데이터를 수신하고, 그 데이터를 프로세싱하고 컨디셔닝하며, 변조된 신호를 생성하고, 그 변조된 신호는 안테나 (1312) 를 통해 기지국들에 송신된다. 수신기 (1314) 및 송신기 (1316) 는 CDMA, GSM, W-CDMA, LTE, LTE 어드밴스드 등을 지원하는 트랜시버의 부분이다.
디지털 섹션 (1320) 은 다양한 프로세싱, 인터페이스, 및 메모리 유닛들, 이를테면, 예를 들어, 모뎀 프로세서 (1322), RISC/DSP (reduced instruction set computer/digital signal processor; 1324), 제어기/프로세서 (1326), 내부 메모리 (1328), 범용 오디오 인코더 (1332), 범용 오디오 디코더 (1334), 그래픽스/디스플레이 프로세서 (1336), 및 외부 버스 인터페이스 (EBI; 1338) 를 포함한다. 모뎀 프로세서 (1322) 는 데이터 송신 및 수신을 위한 프로세싱, 예를 들어, 인코딩, 변조, 복조, 및 디코딩을 수행한다. RISC/DSP (1324) 는 무선 디바이스 (1300) 에 대한 일반 및 특수 프로세싱을 수행한다. 제어기/프로세서 (1326) 는 디지털 섹션 (1320) 내의 다양한 프로세싱 및 인터페이스 유닛들의 동작을 제어한다. 내부 메모리 (1328) 는 디지털 섹션 (1320) 내의 다양한 유닛들에 대한 데이터 및/또는 명령들을 저장한다.
범용 오디오 인코더 (1332) 는 오디오 소스 (1342), 마이크로폰 (1343) 등으로부터의 입력 신호들에 대한 인코딩을 수행한다. 범용 오디오 디코더 (1334) 는 코딩된 오디오 데이터에 대한 디코딩을 수행하고, 출력 신호들을 스피커/헤드셋 (1344) 에 제공한다. 범용 오디오 인코더 (1332) 및 범용 오디오 디코더 (1334) 가 오디오 소스, 마이크로폰 (1343) 및 스피커/헤드셋 (1344) 과의 인터페이스에 반드시 필요하지는 않으므로, 모바일 디바이스 (1300) 에서 생략된다는 것에 주목해야 한다. 그래픽스/디스플레이 프로세서 (1336) 는, 디스플레이 유닛 (1346) 에 제시되는 그래픽스, 비디오들, 이미지들, 및 텍스트들에 대한 프로세싱을 수행한다. EBI (1338) 은 디지털 섹션 (1320) 과 메인 메모리 (1348) 사이의 데이터의 전송을 용이하게 한다. 디지털 섹션 (1320) 은 하나 이상의 프로세서들, DSP들, 마이크로프로세서들, RISC들 등으로 구현된다. 디지털 섹션 (1320) 은 또한 하나 이상의 주문형 집적 회로 (ASIC) 들 및/또는 일부 다른 타입의 집적 회로 (IC) 들 상에 제작된다.
일반적으로, 여기에 설명된 임의의 디바이스는 다양한 타입의 디바이스들, 이를테면, 무선 폰, 셀룰러 폰, 랩톱 컴퓨터, 무선 멀티미디어 디바이스, 무선 통신 퍼스널 컴퓨터 (PC) 카드, PDA, 외부 또는 내부 모뎀, 무선 채널을 통해 통신하는 디바이스 등을 나타낸다. 디바이스는 다양한 명칭들, 이를테면, 액세스 단말기 (AT), 액세스 유닛, 가입자 유닛, 이동국, 클라이언트 디바이스, 모바일 유닛, 모바일 폰, 모바일, 원격국, 원격 단말기, 원격 유닛, 사용자 디바이스, 사용자 장비, 핸드헬드 디바이스 등을 가질 수도 있다. 여기에 설명된 임의의 디바이스는 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 조합 뿐만 아니라 명령들 및 데이터를 저장하는 메모리를 가질 수도 있다.
여기에 설명된 콘텍스트 결정 및 그룹화 기법들은 다양한 수단에 의해 구현된다. 예를 들어, 이들 기법들은 하드웨어, 펌웨어, 소프트웨어, 또는 이들의 조합으로 구현된다. 또한, 당업자는 여기의 본 개시물과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 회로들, 및 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이들의 조합으로서 구현될 수도 있음을 인식할 것이다. 하드웨어와 소프트웨어의 이러한 상호교환가능성을 분명히 예시하기 위하여, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 단계들이 일반적으로 그들의 기능성의 관점에서 상술되었다. 그러한 기능성이 하드웨어로서 구현될지 소프트웨어로서 구현될지는 전체 시스템에 부과된 설계 제약조건들 및 특정 애플리케이션에 의존한다. 당업자는 설명된 기능성을 각각의 특정 애플리케이션에 대하여 다양한 방식으로 구현하지만, 그러한 구현의 결정이 본 개시물의 범위를 벗어나게 하는 것으로서 해석되지는 않아야 한다.
하드웨어 구현의 경우, 이 기법들을 수행하는데 이용된 프로세싱 유닛들은, 하나 이상의 ASIC들, DSP들, 디지털 신호 프로세싱 디바이스 (DSPD) 들, 프로그래밍가능 로직 디바이스 (PLD) 들, 필드 프로그래밍가능 게이트 어레이 (FPGA) 들, 프로세서들, 제어기들, 마이크로제어기들, 마이크로프로세서들, 전자 디바이스들, 여기에 설명된 기능들을 수행하도록 설계된 다른 전자 유닛들, 컴퓨터, 또는 이들의 조합 내에서 구현된다.
여기의 본 개시물과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 및 회로들이 범용 프로세서, DSP, ASIC, FPGA 또는 다른 프로그램가능 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트들, 또는 여기에 설명된 기능들을 수행하도록 설계된 이들의 임의의 조합으로 구현되거나 수행된다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 대안적으로는, 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 또한, 프로세서는 컴퓨팅 디바이스들의 조합, 예를 들어, DSP 와 마이크로프로세서, 복수의 마이크로프로세서, DSP 코어와 관련된 하나 이상의 마이크로프로세서의 조합, 또는 임의의 다른 이러한 구성으로서 구현된다.
소프트웨어로 구현되면, 이러한 기능들은 하나 이상의 명령들 또는 코드로서 컴퓨터 판독가능 매체 상에 저장될 수도 있거나 그 컴퓨터 판독가능 매체를 통해 송신될 수도 있다. 컴퓨터 판독가능 매체는 일 장소로부터 또 다른 장소로의 컴퓨터 프로그램의 전송을 용이하게 하는 임의의 매체를 포함하는, 컴퓨터 저장 매체 및 통신 매체 양쪽을 포함한다. 저장 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수도 있다. 한정적이지 않은 예로서, 이러한 컴퓨터 판독가능 매체는 RAM, ROM, EEPROM, CD-ROM 또는 다른 광학 디스크 저장, 자기 디스크 저장 또는 다른 자기 저장 디바이스들, 또는 컴퓨터에 의해 액세스될 수 있는 명령들 또는 데이터 구조들의 형태로 원하는 프로그램 코드를 운반하거나 저장하기 위해 사용될 수 있는 임의의 다른 매체를 포함할 수 있다. 또한, 임의의 접속이 컴퓨터 판독가능 매체로 적절하게 칭해진다. 예를 들어, 소프트웨어가 동축 케이블, 광섬유 케이블, 연선, 디지털 가입자 라인 (DSL), 또는 적외선, 라디오 및 마이크로파와 같은 무선 기술을 이용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 송신되면, 그 동축 케이블, 광섬유 케이블, 트위스트드 페어, DSL, 또는 적외선, 라디오 및 마이크로파와 같은 무선 기술은 매체의 정의에 포함된다. 여기에 사용된 바와 같은, 디스크 (disk) 및 디스크 (disc) 는 컴팩트 디스크 (CD), 레이저 디스크, 광 디스크, DVD (digital versatile disc), 플로피 디스크 및 블루레이 디스크를 포함하고, 여기서, 디스크 (disk) 는 보통 데이터를 자기적으로 재생하는 반면에, 디스크 (disc) 는 데이터를 레이저로 광학적으로 재생한다. 또한, 상기의 조합들이 컴퓨터 판독가능 매체의 범위 내에 포함되어야 한다.
본 개시물의 이전 설명은 당업자가 본 개시물을 제조 또는 사용할 수 있도록 제공된다. 본 개시물에 대한 다양한 변형들은 당업자에게는 용이하게 명백할 것이며, 여기에 정의된 일반적인 원리들은 본 개시물의 사상 또는 범위를 벗어나지 않고도 다른 변화들에 적용된다. 따라서, 본 개시물은 여기에 설명된 예들로 한정하려는 것이 아니라, 여기에 개시된 원리들 및 신규한 특성들에 부합하는 최광의 범위가 부여되야 한다.
예시적인 구현들이 하나 이상의 독립형 컴퓨터 시스템들의 맥락에서 본 개시된 요지의 양태들을 활용하는 것을 나타내지만, 이 요지는 이에 한정되는 것이 아니라, 오히려 임의의 컴퓨팅 환경, 이를테면, 네트워크 또는 분산 컴퓨팅 환경과 관련하여 구현될 수도 있다. 더 더욱, 본 개시된 요지의 양태들은 복수의 프로세싱 칩들 또는 디바이스들 내에서 또는 그 복수의 프로세싱 칩들 또는 디바이스들에 걸쳐 구현될 수도 있고, 이와 유사하게 저장이 복수의 디바이스들에 걸쳐 이루어질 수도 있다. 이러한 디바이스들은 PC들, 네트워크 서버들, 및 핸드헬드 디바이스들을 포함한다.
요지는 구조적 피쳐들 및/또는 방법론적인 행위들에 특정된 언어로 설명되었지만, 첨부된 청구항들에 정의된 요지는 상술된 이러한 특정 피쳐들 또는 행위들에 반드시 한정되지는 않는다는 것을 이해해야 한다. 오히려, 상술된 특정 피쳐들 및 행위들은 청구항들을 구현하기 위한 예시적인 형태들로서 개시된다.

Claims (52)

  1. 복수의 클라이언트 디바이스들을 그룹화하는 방법으로서,
    상기 복수의 클라이언트 디바이스들로부터 사운드 디스크립터들을 수신하는 단계로서, 상기 사운드 디스크립터들은 환경의 사운드로부터 추출되는, 상기 사운드 디스크립터들을 수신하는 단계;
    수신된 상기 사운드 디스크립터들의 유사성을 결정하는 단계; 및
    상기 사운드 디스크립터들의 유사성에 기초하여 적어도 하나의 유사한 콘텍스트 그룹으로 상기 복수의 클라이언트 디바이스들을 그룹화하는 단계를 포함하는, 복수의 클라이언트 디바이스들을 그룹화하는 방법.
  2. 제 1 항에 있어서,
    상기 사운드 디스크립터는 상기 환경의 사운드의 기간 동안 사운드 컴포넌트들의 발생의 수를 포함하는, 복수의 클라이언트 디바이스들을 그룹화하는 방법.
  3. 제 1 항에 있어서,
    상기 사운드 디스크립터는 상기 환경의 사운드의 분류를 나타내거나 또는 상기 환경의 사운드로부터 추출된 사운드 피쳐 (sound feature) 를 나타내는, 복수의 클라이언트 디바이스들을 그룹화하는 방법.
  4. 제 1 항에 있어서,
    상기 방법은 상기 복수의 클라이언트 디바이스들 중 하나에 의해 수행되는, 복수의 클라이언트 디바이스들을 그룹화하는 방법.
  5. 제 1 항에 있어서,
    상기 유사성을 결정하는 단계는 수신된 상기 사운드 디스크립터들을 비교하는 단계를 포함하는, 복수의 클라이언트 디바이스들을 그룹화하는 방법.
  6. 제 5 항에 있어서,
    수신된 상기 사운드 디스크립터들의 시퀀스들은 상기 시퀀스들을 매칭시키는 것에 의해 비교되는, 복수의 클라이언트 디바이스들을 그룹화하는 방법.
  7. 제 6 항에 있어서,
    상기 시퀀스들은 동적 시간 워핑 (dynamic time warping) 에 의해 매칭되는, 복수의 클라이언트 디바이스들을 그룹화하는 방법.
  8. 제 1 항에 있어서,
    상기 유사성은 수신된 상기 사운드 디스크립터들 사이의 유사성 값을 포함하고,
    상기 복수의 클라이언트 디바이스들을 그룹화하는 단계는, 상기 유사성 값이 미리결정된 값을 초과하면 상기 적어도 하나의 유사한 콘텍스트 그룹으로 상기 복수의 클라이언트 디바이스들을 그룹화하는 단계를 포함하는, 복수의 클라이언트 디바이스들을 그룹화하는 방법.
  9. 제 1 항에 있어서,
    상기 유사한 콘텍스트 그룹들 중 하나에 있는 상기 클라이언트 디바이스들 중 하나에 대해 유사한 클라이언트 리스트를 구성하는 단계를 더 포함하고, 상기 유사한 클라이언트 리스트는 상기 유사한 콘텍스트 그룹들 중 하나에 있는 다른 클라이언트 디바이스들의 리스트를 포함하는, 복수의 클라이언트 디바이스들을 그룹화하는 방법.
  10. 제 9 항에 있어서,
    상기 클라이언트 디바이스들 중 적어도 하나로 상기 유사한 클라이언트 리스트를 송신하는 단계를 더 포함하는, 복수의 클라이언트 디바이스들을 그룹화하는 방법.
  11. 제 1 항에 있어서,
    유사성 값들의 매트릭스를 생성하는 단계를 더 포함하고, 상기 매트릭스에서 유사성 값은 수신된 상기 사운드 디스크립터들의 적어도 하나의 쌍을 비교하는 것에 의해 생성되고,
    상기 복수의 클라이언트 디바이스들을 그룹화하는 단계는, 상기 매트릭스에 기초하여 상기 적어도 하나의 유사한 콘텍스트 그룹으로 상기 복수의 클라이언트 디바이스들을 그룹화하는 단계를 포함하는, 복수의 클라이언트 디바이스들을 그룹화하는 방법.
  12. 제 1 항에 있어서,
    사운드 콘텍스트 데이터베이스로부터 적어도 하나의 레퍼런스 사운드 디스크립터를 취출하는 단계로서, 상기 레퍼런스 사운드 디스크립터는 레퍼런스 콘텍스트에서 캡쳐된 사운드로부터 추출되는, 상기 레퍼런스 사운드 디스크립터를 취출하는 단계; 및
    상기 클라이언트 디바이스들 중 적어도 하나로부터 수신된 상기 사운드 디스크립터와 상기 적어도 하나의 레퍼런스 사운드 디스크립터를 비교하는 것에 의해 상기 클라이언트 디바이스들 중 적어도 하나의 콘텍스트를 식별하는 단계를 더 포함하는, 복수의 클라이언트 디바이스들을 그룹화하는 방법.
  13. 제 12 항에 있어서,
    상기 유사한 콘텍스트 그룹에 있는 상기 복수의 클라이언트 디바이스들 사이에 식별된 상기 콘텍스트에 관한 정보를 공유하는 단계를 더 포함하는, 복수의 클라이언트 디바이스들을 그룹화하는 방법.
  14. 제 1 항에 있어서,
    상기 유사한 콘텍스트 그룹에 있는 상기 복수의 클라이언트 디바이스들에 소셜 네트워킹 서비스를 제공하는 단계를 더 포함하는, 복수의 클라이언트 디바이스들을 그룹화하는 방법.
  15. 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버로서,
    상기 복수의 클라이언트 디바이스들로부터 사운드 디스크립터들을 수신하도록 구성된 수신기로서, 상기 사운드 디스크립터들은 환경의 사운드로부터 추출되는, 상기 수신기;
    수신된 상기 사운드 디스크립터들의 유사성을 결정하도록 구성된 유사성 프로세싱 유닛; 및
    상기 사운드 디스크립터들의 유사성에 기초하여 적어도 하나의 유사한 콘텍스트 그룹으로 상기 복수의 클라이언트 디바이스들을 그룹화하도록 구성된 그룹화 유닛을 포함하는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  16. 제 15 항에 있어서,
    상기 사운드 디스크립터는 상기 환경의 사운드의 기간 동안 사운드 컴포넌트들의 발생의 수를 포함하는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  17. 제 15 항에 있어서,
    상기 사운드 디스크립터는 상기 환경의 사운드의 분류를 나타내거나 또는 상기 환경의 사운드로부터 추출된 사운드 피쳐 (sound feature) 를 나타내는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  18. 제 15 항에 있어서,
    상기 서버는 또 다른 클라이언트 디바이스를 포함하는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  19. 제 15 항에 있어서,
    상기 유사성 프로세싱 유닛은 수신된 상기 사운드 디스크립터들을 비교하는 것에 의해 상기 유사성을 결정하도록 구성되는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  20. 제 19 항에 있어서,
    상기 유사성 프로세싱 유닛은, 상기 시퀀스들을 매칭시키는 것에 의해 수신된 상기 사운드 디스크립터들의 시퀀스들을 비교하도록 구성되는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  21. 제 20 항에 있어서,
    상기 시퀀스들은 동적 시간 워핑 (dynamic time warping) 에 의해 매칭되는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  22. 제 15 항에 있어서,
    상기 유사성은 수신된 상기 사운드 디스크립터들 사이의 유사성 값을 포함하고, 상기 그룹화 유닛은, 상기 유사성 값이 미리결정된 값을 초과하면 상기 적어도 하나의 유사한 콘텍스트 그룹으로 상기 복수의 클라이언트 디바이스들을 그룹화하도록 구성되는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  23. 제 15 항에 있어서,
    상기 그룹화 유닛은 또한, 상기 유사한 콘텍스트 그룹들 중 하나에 있는 상기 클라이언트 디바이스들 중 하나에 대해 유사한 클라이언트 리스트를 구성하도록 구성되고,
    상기 유사한 클라이언트 리스트는 상기 유사한 콘텍스트 그룹들 중 하나에 있는 다른 클라이언트 디바이스들의 리스트를 포함하는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  24. 제 23 항에 있어서,
    상기 클라이언트 디바이스들 중 적어도 하나로 상기 유사한 클라이언트 리스트를 송신하도록 구성된 송신기를 더 포함하는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  25. 제 15 항에 있어서,
    상기 그룹화 유닛은 또한 유사성 값들의 매트릭스를 생성하도록 구성되고, 상기 매트릭스에서 유사성 값은 수신된 상기 사운드 디스크립터들의 적어도 하나의 쌍을 비교하는 것에 의해 생성되고, 상기 그룹화 유닛은 상기 매트릭스에 기초하여 상기 적어도 하나의 유사한 콘텍스트 그룹으로 상기 복수의 클라이언트 디바이스들을 그룹화하도록 구성되는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  26. 제 15 항에 있어서,
    레퍼런스 콘텍스트에서 캡쳐된 사운드로부터 추출되는 적어도 하나의 레퍼런스 사운드 디스크립터를 저장하도록 구성된 사운드 콘텍스트 데이터베이스; 및
    상기 클라이언트 디바이스들 중 적어도 하나로부터 수신된 상기 사운드 디스크립터와 상기 적어도 하나의 레퍼런스 사운드 디스크립터를 비교하는 것에 의해 상기 클라이언트 디바이스들 중 적어도 하나의 콘텍스트를 식별하도록 구성된 식별 유닛을 더 포함하는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  27. 제 26 항에 있어서,
    상기 유사한 콘텍스트 그룹에 있는 상기 클라이언트 디바이스들 중 적어도 하나로 식별된 상기 콘텍스트에 관한 정보를 송신하도록 구성된 송신기를 더 포함하는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  28. 제 15 항에 있어서,
    상기 유사한 콘텍스트 그룹에 있는 상기 복수의 클라이언트 디바이스들에 소셜 네트워킹 서비스를 제공하도록 구성된 서비스 제공 유닛을 더 포함하는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  29. 복수의 클라이언트 디바이스들을 그룹화하기 위한 명령들이 저장된 비일시적 컴퓨터 판독가능 저장 매체로서, 상기 명령들은 프로세서로 하여금 하기 동작들:
    상기 복수의 클라이언트 디바이스들로부터 사운드 디스크립터들을 수신하는 동작으로서, 상기 사운드 디스크립터들은 환경의 사운드로부터 추출되는, 상기 사운드 디스크립터들을 수신하는 동작;
    수신된 상기 사운드 디스크립터들의 유사성을 결정하는 동작; 및
    상기 사운드 디스크립터들의 유사성에 기초하여 적어도 하나의 유사한 콘텍스트 그룹으로 상기 복수의 클라이언트 디바이스들을 그룹화하는 동작을 수행하게 하는, 비일시적 컴퓨터 판독가능 저장 매체.
  30. 제 29 항에 있어서,
    상기 사운드 디스크립터들의 각각은 상기 환경의 사운드의 기간 동안 사운드 컴포넌트들의 발생의 수를 포함하는, 비일시적 컴퓨터 판독가능 저장 매체.
  31. 제 29 항에 있어서,
    상기 유사성을 결정하는 동작은 수신된 상기 사운드 디스크립터들을 비교하는 동작을 포함하는, 비일시적 컴퓨터 판독가능 저장 매체.
  32. 제 31 항에 있어서,
    수신된 상기 사운드 디스크립터들의 시퀀스들은 상기 시퀀스들을 매칭시키는 것에 의해 비교되는, 비일시적 컴퓨터 판독가능 저장 매체.
  33. 제 32 항에 있어서,
    상기 시퀀스들은 동적 시간 워핑 (dynamic time warping) 에 의해 매칭되는, 비일시적 컴퓨터 판독가능 저장 매체.
  34. 제 29 항에 있어서,
    상기 유사성은 수신된 상기 사운드 디스크립터들 사이의 유사성 값을 포함하고,
    상기 복수의 클라이언트 디바이스들을 그룹화하는 동작은, 상기 유사성 값이 미리결정된 값을 초과하면 상기 적어도 하나의 유사한 콘텍스트 그룹으로 상기 복수의 클라이언트 디바이스들을 그룹화하는 동작을 포함하는, 비일시적 컴퓨터 판독가능 저장 매체.
  35. 제 29 항에 있어서,
    상기 동작들은 유사성 값들의 매트릭스를 생성하는 동작을 더 포함하고, 상기 매트릭스에서 유사성 값은 수신된 상기 사운드 디스크립터들의 적어도 하나의 쌍을 비교하는 것에 의해 생성되고,
    상기 복수의 클라이언트 디바이스들을 그룹화하는 동작은, 상기 매트릭스에 기초하여 상기 적어도 하나의 유사한 콘텍스트 그룹으로 상기 복수의 클라이언트 디바이스들을 그룹화하는 동작을 포함하는, 비일시적 컴퓨터 판독가능 저장 매체.
  36. 제 29 항에 있어서,
    상기 동작들은,
    사운드 콘텍스트 데이터베이스로부터 적어도 하나의 레퍼런스 사운드 디스크립터를 취출하는 동작으로서, 상기 레퍼런스 사운드 디스크립터는 레퍼런스 콘텍스트에서 캡쳐된 사운드로부터 추출되는, 상기 레퍼런스 사운드 디스크립터를 취출하는 동작; 및
    상기 클라이언트 디바이스들 중 적어도 하나로부터 수신된 상기 사운드 디스크립터와 상기 적어도 하나의 레퍼런스 사운드 디스크립터를 비교하는 것에 의해 상기 클라이언트 디바이스들 중 적어도 하나의 콘텍스트를 식별하는 동작을 더 포함하는, 비일시적 컴퓨터 판독가능 저장 매체.
  37. 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버로서,
    상기 복수의 클라이언트 디바이스들로부터 사운드 디스크립터들을 수신하기 위한 수단으로서, 상기 사운드 디스크립터들은 환경의 사운드로부터 추출되는, 상기 사운드 디스크립터들을 수신하기 위한 수단;
    수신된 상기 사운드 디스크립터들의 유사성을 결정하기 위한 수단; 및
    상기 사운드 디스크립터들의 유사성에 기초하여 적어도 하나의 유사한 콘텍스트 그룹으로 상기 복수의 클라이언트 디바이스들을 그룹화하기 위한 수단을 포함하는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  38. 제 37 항에 있어서,
    상기 사운드 디스크립터는 상기 환경의 사운드의 기간 동안 사운드 컴포넌트들의 발생의 수를 포함하는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  39. 제 37 항에 있어서,
    상기 유사성을 결정하기 위한 수단은 수신된 상기 사운드 디스크립터들을 비교하는 것에 의해 상기 유사성을 결정하도록 구성되는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  40. 제 39 항에 있어서,
    상기 유사성을 결정하기 위한 수단은, 상기 시퀀스들을 매칭시키는 것에 의해 수신된 상기 사운드 디스크립터들의 시퀀스들을 비교하도록 구성되는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  41. 제 40 항에 있어서,
    상기 시퀀스들은 동적 시간 워핑 (dynamic time warping) 에 의해 매칭되는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  42. 제 37 항에 있어서,
    상기 유사성은 수신된 상기 사운드 디스크립터들 사이의 유사성 값을 포함하고,
    상기 그룹화하기 위한 수단은, 상기 유사성 값이 미리결정된 값을 초과하면 상기 적어도 하나의 유사한 콘텍스트 그룹으로 상기 복수의 클라이언트 디바이스들을 그룹화하도록 구성되는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  43. 제 37 항에 있어서,
    상기 그룹화하기 위한 수단은 또한 유사성 값들의 매트릭스를 생성하도록 구성되고, 상기 매트릭스에서 유사성 값은 수신된 상기 사운드 디스크립터들의 적어도 하나의 쌍을 비교하는 것에 의해 생성되고,
    상기 그룹화하기 위한 수단은 상기 매트릭스에 기초하여 상기 적어도 하나의 유사한 콘텍스트 그룹으로 상기 복수의 클라이언트 디바이스들을 그룹화하도록 구성되는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  44. 제 37 항에 있어서,
    레퍼런스 콘텍스트에서 캡쳐된 사운드로부터 추출되는 적어도 하나의 레퍼런스 사운드 디스크립터를 저장하기 위한 수단; 및
    상기 클라이언트 디바이스들 중 적어도 하나로부터 수신된 상기 사운드 디스크립터와 상기 적어도 하나의 레퍼런스 사운드 디스크립터를 비교하는 것에 의해 상기 클라이언트 디바이스들 중 적어도 하나의 콘텍스트를 식별하기 위한 수단을 더 포함하는, 복수의 클라이언트 디바이스들을 그룹화하기 위한 서버.
  45. 클라이언트 디바이스로서,
    환경의 사운드를 캡쳐하도록 구성된 사운드 센서;
    상기 환경의 사운드로부터 사운드 디스크립터를 추출하도록 구성된 사운드 프로세서;
    상기 클라이언트 디바이스로부터의 상기 사운드 디스크립터의 유사성에 기초하여 적어도 하나의 유사한 콘텍스트 그룹으로 복수의 클라이언트 디바이스들을 그룹화하도록 구성된 서버로 상기 사운드 디스크립터를 송신하도록 구성된 송신 유닛; 및
    상기 유사한 콘텍스트 그룹에 있는 상기 복수의 클라이언트 디바이스들을 나타내는 정보를, 상기 서버로부터, 수신하도록 구성된 수신 유닛을 더 포함하는, 클라이언트 디바이스.
  46. 제 45 항에 있어서,
    상기 사운드 디스크립터는 상기 환경의 사운드의 기간 동안 사운드 컴포넌트들의 발생의 수를 포함하는, 클라이언트 디바이스.
  47. 제 45 항에 있어서,
    상기 사운드 디스크립터는 상기 환경의 사운드의 분류를 나타내거나 또는 상기 환경의 사운드로부터 추출된 사운드 피쳐 (sound feature) 를 나타내는, 클라이언트 디바이스.
  48. 제 45 항에 있어서,
    상기 서버는 또한:
    사운드 콘텍스트 데이터베이스로부터 적어도 하나의 레퍼런스 사운드 디스크립터를 취출하며, 상기 레퍼런스 사운드 디스크립터는 레퍼런스 콘텍스트에서 캡쳐된 사운드로부터 추출되고; 및
    상기 클라이언트 디바이스들 중 적어도 하나로부터 수신된 상기 사운드 디스크립터와 상기 적어도 하나의 레퍼런스 사운드 디스크립터를 비교하는 것에 의해 상기 클라이언트 디바이스들 중 적어도 하나의 콘텍스트를 식별하도록 구성되고,
    상기 수신 유닛은 식별된 상기 콘텍스트에 관한 정보를 수신하도록 구성되는, 클라이언트 디바이스.
  49. 클라이언트 디바이스로서,
    환경의 사운드를 캡쳐하기 위한 수단;
    상기 환경의 사운드로부터 사운드 디스크립터를 추출하기 위한 수단;
    상기 클라이언트 디바이스로부터의 상기 사운드 디스크립터의 유사성에 기초하여 적어도 하나의 유사한 콘텍스트 그룹으로 복수의 클라이언트 디바이스들을 그룹화하도록 구성된 서버로 상기 사운드 디스크립터를 송신하기 위한 수단; 및
    상기 유사한 콘텍스트 그룹에 있는 상기 복수의 클라이언트 디바이스들을 나타내는 정보를, 상기 서버로부터, 수신하기 위한 수단을 포함하는, 클라이언트 디바이스.
  50. 제 49 항에 있어서,
    상기 사운드 디스크립터는 상기 환경의 사운드의 기간 동안 사운드 컴포넌트들의 발생의 수를 포함하는, 클라이언트 디바이스.
  51. 제 49 항에 있어서,
    상기 유사한 콘텍스트 그룹에 있는 상기 복수의 클라이언트 디바이스들을 나타내는 정보를, 상기 서버로부터, 수신하기 위한 수단을 더 포함하는, 클라이언트 디바이스.
  52. 제 49 항에 있어서,
    상기 서버는 또한:
    사운드 콘텍스트 데이터베이스로부터 적어도 하나의 레퍼런스 사운드 디스크립터를 취출하며, 상기 레퍼런스 사운드 디스크립터는 레퍼런스 콘텍스트에서 캡쳐된 사운드로부터 추출되고; 및
    상기 클라이언트 디바이스들 중 적어도 하나로부터 수신된 상기 사운드 디스크립터와 상기 적어도 하나의 레퍼런스 사운드 디스크립터를 비교하는 것에 의해 상기 클라이언트 디바이스들 중 적어도 하나의 콘텍스트를 식별하도록 구성되고,
    상기 클라이언트 디바이스는 식별된 상기 콘텍스트에 관한 정보를 수신하기 위한 수단을 더 포함하는, 클라이언트 디바이스.
KR20137020608A 2011-03-04 2012-02-16 콘텍스트 유사성에 기초하여 클라이언트 디바이스들을 그룹화하는 방법 및 장치 KR20130108661A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161449517P 2011-03-04 2011-03-04
US61/449,517 2011-03-04
US13/371,057 US20120224711A1 (en) 2011-03-04 2012-02-10 Method and apparatus for grouping client devices based on context similarity
US13/371,057 2012-02-10
PCT/US2012/025425 WO2012121854A1 (en) 2011-03-04 2012-02-16 Method and apparatus for grouping client devices based on context similarity

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020167008160A Division KR20160041055A (ko) 2011-03-04 2012-02-16 콘텍스트 유사성에 기초하여 클라이언트 디바이스들을 그룹화하는 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20130108661A true KR20130108661A (ko) 2013-10-04

Family

ID=46753310

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020167008160A KR20160041055A (ko) 2011-03-04 2012-02-16 콘텍스트 유사성에 기초하여 클라이언트 디바이스들을 그룹화하는 방법 및 장치
KR20137020608A KR20130108661A (ko) 2011-03-04 2012-02-16 콘텍스트 유사성에 기초하여 클라이언트 디바이스들을 그룹화하는 방법 및 장치

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020167008160A KR20160041055A (ko) 2011-03-04 2012-02-16 콘텍스트 유사성에 기초하여 클라이언트 디바이스들을 그룹화하는 방법 및 장치

Country Status (6)

Country Link
US (1) US20120224711A1 (ko)
EP (1) EP2681895B1 (ko)
JP (2) JP6062379B2 (ko)
KR (2) KR20160041055A (ko)
CN (1) CN103370920A (ko)
WO (1) WO2012121854A1 (ko)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101853819B1 (ko) * 2011-09-14 2018-06-15 삼성전자주식회사 정보 제공 방법 및 장치, 디바이스와 컴퓨터로 읽을 수 있는 기록 매체
US9460390B1 (en) * 2011-12-21 2016-10-04 Emc Corporation Analyzing device similarity
CN103178878B (zh) * 2011-12-21 2015-07-22 国际商业机器公司 一种用于连接无线设备的方法和系统
WO2013138999A1 (en) * 2012-03-20 2013-09-26 Nokia Corporation Method and apparatus for providing group context sensing and inference
US9699485B2 (en) 2012-08-31 2017-07-04 Facebook, Inc. Sharing television and video programming through social networking
US20140081692A1 (en) * 2012-09-14 2014-03-20 OrgSpan, Inc. Methods for Generating a List of Similar Organization Members of an Organization Hierarchy
CN103685185B (zh) * 2012-09-14 2018-04-27 上海果壳电子有限公司 移动设备声纹注册、认证的方法及系统
CN103813441B (zh) * 2012-11-08 2017-04-26 阿里巴巴集团控股有限公司 一种终端定位的方法及装置
US20140282683A1 (en) * 2013-03-14 2014-09-18 Samsung Electronics Co., Ltd. Computing system with device interaction mechanism and method of operation thereof
CN103220151A (zh) * 2013-04-17 2013-07-24 合肥华恒电子科技有限责任公司 一种基于声音识别的用户关联方法
CN103346897B (zh) * 2013-06-26 2016-12-07 腾讯科技(北京)有限公司 一种群组加入方法及相关设备、系统
US9466317B2 (en) * 2013-10-11 2016-10-11 Facebook, Inc. Generating a reference audio fingerprint for an audio signal associated with an event
US9094453B2 (en) 2013-11-06 2015-07-28 Google Technology Holdings LLC Method and apparatus for associating mobile devices using audio signature detection
CN103618713A (zh) * 2013-11-26 2014-03-05 王玉娇 用户关联方法、系统及相关设备
US20160027044A1 (en) * 2013-12-19 2016-01-28 Google Inc. Presenting information cards for events associated with entities
US9583121B2 (en) 2014-05-16 2017-02-28 Alphonso Inc. Apparatus and method for determining co-location of services
US9949078B2 (en) 2014-08-27 2018-04-17 Qualcomm Incorporated Determining a context-dependent virtual distance using measurements of stigmergic interference
US9462456B2 (en) * 2014-11-19 2016-10-04 Qualcomm Incorporated Method and apparatus for creating a time-sensitive grammar
CN106663112A (zh) * 2014-11-26 2017-05-10 谷歌公司 呈现与实体相关联的事件的信息卡
WO2016122511A1 (en) * 2015-01-29 2016-08-04 Hewlett Packard Enterprise Development Lp Application updates
EP3157264B1 (en) 2015-10-17 2019-02-20 Tata Consultancy Services Limited Multi-sensor data summarization
US10210545B2 (en) * 2015-12-30 2019-02-19 TCL Research America Inc. Method and system for grouping devices in a same space for cross-device marketing
DE112018007699T5 (de) * 2018-06-06 2021-02-25 Intel Corporation Verfahren, systeme und vorrichtung zum koordinieren von terminierung und übertragung mit mehreren zugangspunkten
CN109065028B (zh) * 2018-06-11 2022-12-30 平安科技(深圳)有限公司 说话人聚类方法、装置、计算机设备及存储介质
CN109146617A (zh) * 2018-07-27 2019-01-04 重庆小雨点小额贷款有限公司 一种业务审批方法、服务器、客户端及存储介质
CN109255624A (zh) * 2018-07-27 2019-01-22 重庆小雨点小额贷款有限公司 一种业务审批方法、装置、服务器及存储介质
CN109242023B (zh) * 2018-09-12 2021-12-07 江苏科技大学 一种基于dtw和mds的锚链闪光焊质量在线评估方法
CN109239301B (zh) * 2018-09-12 2021-06-01 江苏科技大学 一种锚链闪光焊质量在线评估方法
DE102018128214A1 (de) * 2018-11-12 2020-05-14 Sennheiser Electronic Gmbh & Co. Kg Verfahren und Vorrichtung zur Auswahl eines Audiodatenstroms
US10769203B1 (en) * 2019-10-17 2020-09-08 Samsung Electronics Co., Ltd. System and method for prediction and recommendation using collaborative filtering
DE102020209048A1 (de) * 2020-07-20 2022-01-20 Sivantos Pte. Ltd. Verfahren zur Identifikation eines Störeffekts sowie ein Hörsystem
US20220103549A1 (en) * 2020-09-29 2022-03-31 Schneider Electric USA, Inc. Management of setting change propagation in networked devices

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI116991B (fi) * 1999-01-18 2006-04-28 Nokia Corp Menetelmä puheen tunnistamisessa, puheentunnistuslaite ja puheella ohjattava langaton viestin
JP2001338218A (ja) * 2000-05-29 2001-12-07 Isao:Kk 広告システム、広告方法、および、プログラムを記録したコンピュータ読み取り可能な記録媒体
US6990453B2 (en) * 2000-07-31 2006-01-24 Landmark Digital Services Llc System and methods for recognizing sound and music signals in high noise and distortion
US7054811B2 (en) * 2002-11-06 2006-05-30 Cellmax Systems Ltd. Method and system for verifying and enabling user access based on voice parameters
US7082394B2 (en) * 2002-06-25 2006-07-25 Microsoft Corporation Noise-robust feature extraction using multi-layer principal component analysis
CN1508734A (zh) * 2002-12-13 2004-06-30 华人创意股份有限公司 用以支持中小企业营运发展的信息供应方法以及系统
US20050147256A1 (en) * 2003-12-30 2005-07-07 Peters Geoffrey W. Automated presentation of entertainment content in response to received ambient audio
US20050197724A1 (en) * 2004-03-08 2005-09-08 Raja Neogi System and method to generate audio fingerprints for classification and storage of audio clips
CN101361301A (zh) * 2005-11-29 2009-02-04 谷歌公司 检测广播媒体中的重复内容
JP2009524273A (ja) * 2005-11-29 2009-06-25 グーグル・インコーポレーテッド 放送メディア内の反復コンテンツの検出
US7831531B1 (en) * 2006-06-22 2010-11-09 Google Inc. Approximate hashing functions for finding similar content
US8090358B2 (en) * 2006-08-16 2012-01-03 At&T Intellectual Property I, L.P. Methods and computer-readable media for location-based targeted advertising
US8503651B2 (en) * 2006-12-27 2013-08-06 Nokia Corporation Teleconferencing configuration based on proximity information
US7973857B2 (en) * 2006-12-27 2011-07-05 Nokia Corporation Teleconference group formation using context information
JP2008287641A (ja) * 2007-05-21 2008-11-27 Ntt Docomo Inc コンテンツ配信先選択装置及びコンテンツ配信先選択方法
US20080300702A1 (en) * 2007-05-29 2008-12-04 Universitat Pompeu Fabra Music similarity systems and methods using descriptors
WO2009014438A1 (en) * 2007-07-20 2009-01-29 Nederlandse Organisatie Voor Toegepast-Natuurwetenschappelijk Onderzoek Tno Identification of proximate mobile devices
JP2009043125A (ja) * 2007-08-10 2009-02-26 Kddi Corp ユーザ分類装置、広告配信装置、ユーザ分類方法、広告配信方法およびプログラム
EP2210427B1 (en) * 2007-09-26 2015-05-06 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus, method and computer program for extracting an ambient signal
JP5392808B2 (ja) * 2007-11-27 2014-01-22 日本電気株式会社 コンテクスト対応情報推薦装置、コンテクスト対応情報推薦方法およびコンテクスト対応情報推薦プログラム
US9742849B2 (en) * 2009-01-30 2017-08-22 Hewlett-Packard Development Company, L.P. Methods and systems for establishing collaborative communications between devices using ambient audio
US8254964B2 (en) * 2009-02-23 2012-08-28 Sony Ericsson Mobile Communications Ab Method and arrangement relating to location based services for a communication device
JP5267994B2 (ja) * 2009-05-15 2013-08-21 独立行政法人情報通信研究機構 音データラベル付与装置、音データラベル付与方法、及びプログラム
EP2264988A1 (en) * 2009-06-18 2010-12-22 Deutsche Telekom AG Method of detecting a current user activity and environment context of a user of a mobile phone using an accelerator sensor and a microphone, computer program product, and mobile phone
US8745250B2 (en) * 2009-06-30 2014-06-03 Intel Corporation Multimodal proximity detection
US9183580B2 (en) * 2010-11-04 2015-11-10 Digimarc Corporation Methods and systems for resource management on portable devices
US20110230987A1 (en) * 2010-03-11 2011-09-22 Telefonica, S.A. Real-Time Music to Music-Video Synchronization Method and System
US8606293B2 (en) * 2010-10-05 2013-12-10 Qualcomm Incorporated Mobile device location estimation using environmental information

Also Published As

Publication number Publication date
CN103370920A (zh) 2013-10-23
KR20160041055A (ko) 2016-04-15
WO2012121854A1 (en) 2012-09-13
JP6062379B2 (ja) 2017-01-18
EP2681895B1 (en) 2020-08-19
JP2014515844A (ja) 2014-07-03
US20120224711A1 (en) 2012-09-06
JP2016066366A (ja) 2016-04-28
EP2681895A1 (en) 2014-01-08

Similar Documents

Publication Publication Date Title
EP2681895B1 (en) Method and apparatus for grouping client devices based on context similarity
EP2681896B1 (en) Method and apparatus for identifying mobile devices in similar sound environment
US9443511B2 (en) System and method for recognizing environmental sound
US8606293B2 (en) Mobile device location estimation using environmental information
JP5819435B2 (ja) モバイルデバイスのロケーションを決定するための方法および装置
CN103038765B (zh) 用于适配情境模型的方法和装置
CN104170413B (zh) 基于环境上下文控制移动装置中的应用程序
US20150066925A1 (en) Method and Apparatus for Classifying Data Items Based on Sound Tags
JP2015508205A (ja) 音識別に基づくモバイルデバイスの制御

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application
J201 Request for trial against refusal decision
J301 Trial decision

Free format text: TRIAL NUMBER: 2016101001846; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20160328

Effective date: 20171018