JP6977104B2 - 動的ノートマッチングのための電子装置およびその動作方法 - Google Patents

動的ノートマッチングのための電子装置およびその動作方法 Download PDF

Info

Publication number
JP6977104B2
JP6977104B2 JP2020084952A JP2020084952A JP6977104B2 JP 6977104 B2 JP6977104 B2 JP 6977104B2 JP 2020084952 A JP2020084952 A JP 2020084952A JP 2020084952 A JP2020084952 A JP 2020084952A JP 6977104 B2 JP6977104 B2 JP 6977104B2
Authority
JP
Japan
Prior art keywords
sequence
section
cost
vector
interval
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2020084952A
Other languages
English (en)
Other versions
JP2020201478A (ja
Inventor
仁龍 丘
宰均 朴
ジス チョン
ジョンウン パク
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Naver Corp
Original Assignee
Naver Corp
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 Naver Corp filed Critical Naver Corp
Publication of JP2020201478A publication Critical patent/JP2020201478A/ja
Application granted granted Critical
Publication of JP6977104B2 publication Critical patent/JP6977104B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/63Querying
    • G06F16/632Query formulation
    • G06F16/634Query by example, e.g. query by humming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/68Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/683Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • G10L25/54Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination for retrieval
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/63Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/68Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/285Memory allocation or algorithm optimisation to reduce hardware requirements

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Acoustics & Sound (AREA)
  • Library & Information Science (AREA)
  • Signal Processing (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Algebra (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Electrotherapy Devices (AREA)
  • Nitrogen Condensed Heterocyclic Rings (AREA)
  • Heterocyclic Carbon Compounds Containing A Hetero Ring Having Oxygen Or Sulfur (AREA)

Description

本発明の多様な実施形態は、動的ノートマッチング(dynamic note matching:DNM)のための電子装置およびその動作方法に関する。
最近の通信環境においてQbH(query by humming)サービスが提供されている。このようなサービスの提供のために、サーバでは大量のオーディオファイルに関する情報を保存している。クライアントが検索したいメロディーを持つオーディオ信号をサーバに送信すると、サーバは、このオーディオ信号に最も類似するオーディオファイルの情報をクライアントにフィードバックする。このために、サーバでは、オーディオ信号と大量のオーディオファイルとの比較作業が行われる。これにより、サーバには高い演算量が求められ、これはサーバの演算速度を低下させるという問題にも繋がる。
本発明の多様な実施形態は、サービス提供のために求められる演算量を減少させることができる電子装置およびその動作方法を提供することを目的とする。
本発明の多様な実施形態は、オーディオ信号と大量のオーディオファイルとの比較に求められる演算量を減少させることができる電子装置およびその動作方法を提供することを目的とする。
本発明の多様な実施形態に係る電子装置の動作方法は、動的ノートマッチング(DNM)のためのものであって、入力される信号から抽出される第1シーケンスを、それぞれの値が連続して配列される少なくとも1つの第1区間に基づいて縮約して、第1区間シーケンスを取得する動作、予め記憶された第2シーケンスから、それぞれの値が連続して配列される少なくとも1つの第2区間に基づいて縮約された第2区間シーケンスを取得する動作、および前記動的ノートマッチング(DNM)により、前記第1区間シーケンスと前記第2区間シーケンスの類似度を計算する動作を含んでよい。
本発明の多様な実施形態に係る電子装置は、動的ノートマッチング(DNM)のためのものであって、入力される信号から第1シーケンスを抽出するように構成されるプロセッサ、および前記プロセッサに接続され、少なくとも1つの第2シーケンスを記憶している、メモリを含んでよい。
本発明の多様な実施形態によると、前記プロセッサは、前記第1シーケンスを、それぞれの値が連続して配列される第1区間に基づいて縮約して、第1区間シーケンスを取得し、前記第2シーケンスから、それぞれの値が連続して配列される少なくとも1つの第2区間に基づいて縮約された第2区間シーケンスを取得し、前記動的ノートマッチング(DNM)により、前記第1区間シーケンスと前記第2区間シーケンスの類似度を計算するように構成されてよい。
本発明の多様な実施形態に係る非一時的なコンピュータ読み取り可能な記憶媒体は、動的ノートマッチング(DNM)のためのものであって、入力される信号から抽出される第1シーケンスを、それぞれの値が連続して配列される少なくとも1つの第1区間に基づいて縮約して、第1区間シーケンスを取得する動作、予め記憶された第2シーケンスから、それぞれの値が連続して配列される少なくとも1つの第2区間に基づいて縮約された第2区間シーケンスを取得する動作、および前記動的ノートマッチング(DNM)により、前記第1区間シーケンスと前記第2区間シーケンスの類似度を計算する動作を実行するための1つ以上のプログラムを記憶してよい。
本発明の多様な実施形態によると、電子装置は、入力される信号と予め記憶されたデータとをそれぞれ縮約して比較することにより、電子装置に求められる演算量を減少させることができる。このとき、電子装置は、入力される信号から縮約された第1区間シーケンスと予め記憶されたデータから縮約された第2区間シーケンスとに基づいてコストマトリックスを生成し、動的ノートマッチング(DNM)により、コストマトリックスでワーピング経路を検出することができる。これにより、電子装置は、入力される信号と予め記憶されたデータから縮約された情報とに基づいて動的プログラミングを使用することができる。これにより、電子装置は、少ない演算量で希望とする結果を取得することが可能となる。これは、電子装置の動作の効率性を向上させ、電子装置が提供するサービスの品質を向上させることに繋がる。
本発明の多様な実施形態における、システムおよびこの信号の流れを示した図である。 本発明の多様な実施形態における、電子装置を示した図である。 本発明の多様な実施形態における、電子装置の動作方法を示した図である。 本発明の多様な実施形態における、電子装置の動作方法を示した図である。 図4の類似度計算動作を示した図である。 図4の類似度計算動作を説明するための図である。 図4の類似度計算動作を説明するための図である。 図4の類似度計算動作を説明するための図である。 図4の類似度計算動作を説明するための図である。 図4の類似度計算動作を説明するための図である。 図4の類似度計算動作を説明するための図である。 図4の類似度計算動作を説明するための図である。 図4の類似度計算動作を説明するための図である。 一実施形態における、電子装置の動作方法を示した図である。
以下、本発明の多様な実施形態について、添付の図面を参照しながら詳細に説明する。
図1は、本発明の多様な実施形態に係るシステム100およびこの信号の流れを示した図である。
図1を参照すると、本発明の多様な実施形態に係るシステム100は、多様な電子装置110、130を含んでよい。電子装置110、130は、ネットワーク(図示せず)を介して互いに通信してよい。電子装置110、130は、少なくとも1つのクライアント(client)110と、少なくとも1つのサーバ(server)130とを含んでよい。例えば、クライアント110は、携帯用通信装置、コンピュータ装置、携帯用マルチメディア装置、携帯用医療機器、カメラ、ウェアラブル装置、または家電装置のうちの少なくともいずれか1つを含んでよいが、これに限定されることはない。サーバ130は、クライアント110に多様なサービスを提供してよい。このために、サーバ130は、サービスの提供に利用されるデータベース(data base:DB)を備えてよい。本発明の多様な実施形態によると、サーバ130は、クライアント110にQbH(query by humming)サービスを提供してよい。このために、サーバ130は、複数のオーディオファイルまたはオーディオファイルのメタ情報のうちの少なくともいずれか1つを記憶していてよい。
本発明の多様な実施形態によると、クライアント110は、動作141で、オーディオ信号を検出してよい。クライアント110は、ユーザの要求に基づき、特定の時間間隔内にオーディオ信号を収集してよい。オーディオ信号は、ユーザが検索したいメロディーと関連するものであってよい。例えば、オーディオ信号は、ユーザの音声または外部環境で再生されている音楽のうちの少なくともいずれか1つを含んでよい。この後、クライアント110は、動作143で、サーバ130にオーディオ信号を送信してよい。
動作143で、クライアント110からオーディオ信号が受信されると、サーバ130は、動作145で、オーディオ信号から第1シーケンスqを抽出してよい。第1シーケンスqは、数字ベクトルで構成されてよい。このために、サーバ130は、オーディオ信号から数字ベクトルを抽出し、数字ベクトルから第1シーケンスqを取得してよい。このとき、第1シーケンスqは、特定の長さaを有し、それぞれの値(value)、すなわち、数字ベクトルが連続して配列される構造を有してよい。
サーバ130は、動作147で、第1シーケンスqおよび予め記憶された第2シーケンスsのそれぞれの類似度を計算してよい。このとき、サーバ130は、オーディオファイルまたはオーディオファイルのメタ情報のうちの少なくともいずれか1つとともに、オーディオファイルの第2シーケンスsを記憶していてよい。ここで、それぞれの第2シーケンスsは、オーディオファイルのうちのいずれか1つの少なくとも一部領域から抽出されてよく、数字ベクトルで構成されてよい。このために、サーバ130は、オーディオファイルのうちのいずれか1つの少なくとも一部領域から数字ベクトルを抽出し、数字ベクトルから第2シーケンスsのうちのいずれか1つを取得してよい。このとき、それぞれの第2シーケンスsは、特定の長さbを有し、それぞれの値(value)、すなわち、数字ベクトルが連続して配列される構造を有してよい。また、サーバ130は、動的ノートマッチング(dynamic note matching:DNM)により、第1シーケンスqおよび第2シーケンスsのそれぞれの類似度を計算してよい。サーバ130は、第1シーケンスqと第2シーケンスsとを縮約し、これに基づいて類似度を計算してよい。
サーバ130は、動作149で、第2シーケンスsのうちの少なくともいずれか1つを含むフィードバック情報を生成してよい。サーバ130は、類似度に基づき、第2シーケンスsのうちの少なくともいずれか1つを選択してよい。一実施形態によると、サーバ130は、類似度のうちから最大値を検出し、これに対応する第2シーケンスsを選択してよい。他の実施形態によると、サーバ130は、類似度のうちから予め定められた閾値を超過する少なくともいずれか1つを検出し、これに対応する第2シーケンスsを選択してよい。また、サーバ130は、第2シーケンスsのうちの少なくともいずれか1つと関連するオーディオファイルのメタ情報を含むようにフィードバック情報を生成してよい。この後、サーバ130は、動作151で、クライアント110にフィードバック情報を送信してよい。
動作151で、サーバ130からフィードバック情報が受信されると、クライアント110は、動作153で、フィードバック情報を処理してよい。一実施形態によると、クライアント110は、フィードバック情報を出力してよい。他の実施形態によると、クライアント110は、フィードバック情報を他の電子装置(図示せず)に送信してよい。
図2は、本発明の多様な実施形態における、電子装置110、130を示した図である。
図2を参照すると、本発明の多様な実施形態に係るシステム100は、多様な電子装置110、130を含んでよい。電子装置110、130は、ネットワーク200を介して互いに通信してよい。例えば、ネットワーク200は、遠距離無線通信ネットワークまたは近距離無線通信ネットワークのうちの少なくともいずれか1つを含んでよい。電子装置110、130は、少なくとも1つのクライアント110と、少なくとも1つのサーバ130を含んでよい。
本発明の多様な実施形態によると、クライアント110は、入力モジュール211、出力モジュール213、インタフェース215、通信モジュール217、メモリ219、またはプロセッサ221のうちの少なくともいずれか1つを含んでよい。一実施形態によると、クライアント110の構成要素のうちの少なくともいずれか1つが省略されてもよく、クライアント110に1つ以上の他の構成要素が追加されてもよい。
入力モジュール211は、クライアント110の外部から信号またはクライアント110の少なくとも1つの構成要素のための命令を入力してよい。このとき、信号は、オーディオ信号または映像信号のうちの少なくともいずれか1つを含んでよい。例えば、入力モジュール211は、マイクロフォン(microphone)、カメラモジュール、マウス(mouse)、キーボード(keyboard)、または各種センサ(sensor)のうちの少なくともいずれか1つを含んでよい。
出力モジュール213は、クライアント110の外部に情報を提供してよい。出力モジュール213は、視覚的に情報を提供する表示モジュールまたは聴覚的に情報を提供するオーディオモジュールのうちの少なくともいずれか1つを含んでよい。例えば、表示モジュールは、ディスプレイ、ホログラム装置、またはプロジェクタのうちの少なくともいずれか1つを含んでよい。一実施形態によると、表示モジュールは、タッチを感知するように設定された少なくとも1つのセンサと結合してよい。
インタフェース215は、クライアント110と他の電子装置(図示せず)とを直接に連結するか、無線で連結してよい。一例として、インタフェース215は、他の電子装置と物理的に連結することのできるコネクタを含んでよい。例えば、インタフェース215は、HDMI(high definition multimedia interface)、USB(universal serial bus)インタフェース、SD(secure digital)カードインタフェース、またはオーディオインタフェースのうちの少なくともいずれか1つを含んでよい。
通信モジュール217は、クライアント110で外部装置との通信を実行してよい。通信モジュール217は、クライアント110と外部装置との間に通信チャンネルを構築し、通信チャンネルを介して外部装置との通信を実行してよい。通信モジュール217は、有線通信モジュールまたは無線通信モジュールのうちの少なくともいずれか1つを含んでよい。例えば、無線通信モジュールは、ネットワーク200を介して外部装置との通信を実行してよい。
メモリ219は、クライアント110の少なくとも1つの構成要素が使用する多様なデータを記憶してよい。例えば、メモリ219は、揮発性メモリまたは不揮発性メモリのうちの少なくともいずれか1つを含んでよい。データは、プログラム、またはこれと関連する入力データまたは出力データを含んでよい。
プロセッサ221は、メモリ219のプログラムを実行してクライアント110の少なくとも1つの構成要素を制御してよく、データ処理または演算を実行してよい。プロセッサ221は、入力モジュール211またはインタフェース215によってオーディオ信号を検出してよい。プロセッサ221は、入力モジュール211に入力されるユーザの要求に基づき、特定の時間間隔内にオーディオ信号を収集してよい。オーディオ信号は、ユーザが検索したいメロディーと関連するものであってよい。例えば、オーディオ信号は、ユーザの音声または外部環境で再生されている音楽のうちの少なくともいずれか1つを含んでよい。プロセッサ221は、通信モジュール217からサーバ130にオーディオ信号を送信してよい。プロセッサ221は、通信モジュール217により、サーバ130からオーディオ信号に対応するフィードバック情報を受信し、フィードバック情報を処理してよい。一実施形態によると、プロセッサ221は、出力モジュール213によってフィードバック情報を出力してよい。他の実施形態によると、プロセッサ213は、インタフェース215によってフィードバック情報を他の電子装置(図示せず)に送信してよい。
本発明の多様な実施形態によると、サーバ130は、通信モジュール237、メモリ239、またはプロセッサ241のうちの少なくともいずれか1つを含んでよい。一実施形態によると、サーバ130の構成要素のうちの少なくともいずれか1つが省略されてもよいし、サーバ130に1つ以上の他の構成要素が追加されてもよい。
通信モジュール237は、サーバ130で外部装置との通信を実行してよい。通信モジュール237は、サーバ130と外部装置との間に通信チャンネルを構築し、通信チャンネルを介して外部装置との通信を実行してよい。通信モジュール237は、有線通信モジュールまたは無線通信モジュールのうちの少なくともいずれか1つを含んでよい。例えば、無線通信モジュールは、ネットワーク200を介して外部装置との通信を実行してよい。
メモリ239は、サーバ130の少なくとも1つの構成要素が使用する多様なデータを記憶してよい。例えば、メモリ239は、揮発性メモリまたは不揮発性メモリのうちの少なくともいずれか1つを含んでよい。データは、プログラム、またはこれと関連する入力データまたは出力データを含んでよい。メモリ239は、クライアント110へのサービス提供のために利用されるデータベースを備えてよい。データベースは、複数のオーディオファイルまたはオーディオファイルのメタ情報のうちの少なくともいずれか1つを記憶していてよい。
プロセッサ241は、メモリ239のプログラムを実行してサーバ130の少なくとも1つの構成要素を制御してよく、データ処理または演算を実行してよい。プロセッサ241は、通信モジュール237により、クライアント110からオーディオ信号を受信してよい。プロセッサ241は、オーディオ信号およびメモリ239に記憶されたオーディオファイルのそれぞれの類似度を計算してよい。このとき、プロセッサ241は、動的ノートマッチング(DNM)により、オーディオ信号およびオーディオファイルのそれぞれの類似度を計算してよい。プロセッサ241は、通信モジュール237により、類似度に基づき、オーディオファイルのうちの少なくともいずれか1つのメタ情報をクライアント110にフィードバックしてよい。このとき、プロセッサ241は、メタ情報を含むフィードバック情報を生成し、フィードバック情報をクライアント110に送信してよい。
本発明の多様な実施形態によると、プロセッサ241は、オーディオ信号から第1シーケンスqを抽出し、第1シーケンスqを縮約して第1区間シーケンスを取得してよい。第1シーケンスqは、数字ベクトルで構成されてよい。このために、サーバ241は、オーディオ信号から数字ベクトルを抽出し、数字ベクトルから第1シーケンスqを取得してよい。このとき、第1シーケンスqは、特定の長さaを有し、それぞれの値(value)、すなわち、数字ベクトルが連続して配列される少なくとも1つの第1区間で構成されてよい。これにより、プロセッサ241は、第1区間に基づき、第1シーケンスqを第1区間シーケンスに縮約してよい。このとき、第1区間シーケンスは、第1区間の値(A_value)、すなわち、数字ベクトルと長さ(A_duration)に対するシーケンスを示してよい。
本発明の多様な実施形態によると、プロセッサ241は、オーディオファイルの第2シーケンスsから縮約された第2区間シーケンスを取得してよい。このとき、第2シーケンスsまたは第2区間シーケンスのうちの少なくともいずれか1つがメモリ239に記憶されていてよい。ここで、それぞれの第2シーケンスsは、オーディオファイルのうちのいずれか1つの少なくとも一部領域から抽出されてよく、数字ベクトルで構成されてよい。このとき、それぞれの第2シーケンスsは、特定の長さbを有し、それぞれの値(value)、すなわち、数字ベクトルが連続して配列される少なくとも1つの第2区間で構成されてよい。それぞれの第2区間シーケンスは、第2シーケンスsのうちのいずれか1つから、第2区間に基づいて縮約されてよい。このとき、それぞれの第2区間シーケンスは、第2区間の値(B_value)、すなわち、数字ベクトルと長さ(B_duration)に対するシーケンスを示してよい。
本発明の多様な実施形態によると、プロセッサ241は、動的ノートマッチング(DNM)により、第1区間シーケンスとそれぞれの第2区間シーケンスの類似度を計算してよい。プロセッサ241は、第1区間シーケンスとそれぞれの第2区間シーケンスとに基づき、コストマトリックス(cost matrix)を生成してよい。このとき、プロセッサ241は、第1区間を対応させてコストマトリックスの少なくとも1つの(row)を生成し、第2区間を対応させてコストマトリックスの少なくとも1つの(column)を生成してよい。プロセッサ241は、コストマトリックスでワーピング経路(warping path)を検出し、ワーピング経路を利用して第1区間シーケンスとそれぞれの第2区間シーケンスの類似度を計算してよい。
図3は、本発明の多様な実施形態における、電子装置110、すなわち、クライアント110の動作方法を示した図である。
図3を参照すると、クライアント110は、動作311で、オーディオ信号を検出してよい。プロセッサ221は、入力モジュール211に入力されるユーザの要求に基づき、特定の時間間隔内にオーディオ信号を収集してよい。オーディオ信号は、ユーザが検索したいメロディーと関連するものであってよい。例えば、オーディオ信号は、ユーザの音声または外部環境で再生されている音楽のうちの少なくともいずれか1つを含んでよい。この後、クライアント110は、動作313で、サーバ130にオーディオ信号を送信してよい。プロセッサ221は、通信モジュール217により、サーバ130にオーディオ信号を送信してよい。
クライアント110は、動作315で、サーバ130からフィードバック情報を受信してよい。プロセッサ221は、通信モジュール217により、サーバ130からオーディオ信号に対応するフィードバック情報を受信してよい。フィードバック情報は、オーディオ信号に対応して検出された少なくともいずれか1つのオーディオファイルのメタ情報を含んでよい。これに対応し、クライアント110は、動作317で、フィードバック情報を処理してよい。一実施形態によると、プロセッサ221は、出力モジュール213からフィードバック情報を出力してよい。他の実施形態によると、プロセッサ213は、フィードバック情報をインタフェース215から他の電子装置(図示せず)に送信してよい。
図4は、本発明の多様な実施形態における、電子装置130、すなわち、サーバ130の動作方法を示した図である。
図4を参照すると、サーバ130は、動作411で、外部装置、すなわち、クライアント110からオーディオ信号を受信してよい。プロセッサ241は、通信モジュール237により、クライアント110からオーディオ信号を受信してよい。オーディオ信号は、ユーザが検索したいメロディーと関連するものであってよい。例えば、オーディオ信号は、ユーザの音声または外部環境で再生されている音楽のうちの少なくともいずれか1つを含んでよい。
サーバ130は、動作413で、オーディオ信号から第1シーケンスqを抽出してよい。第1シーケンスqは、数字ベクトルで構成されてよい。このために、サーバ241は、オーディオ信号から数字ベクトルを抽出し、数字ベクトルから第1シーケンスqを取得してよい。このとき、第1シーケンスqは、特定の長さaを有し、それぞれの値(value)、すなわち、数字ベクトルが連続して配列される少なくとも1つの第1区間で構成されてよい。例えば、第1シーケンスqが、以下の数式(1)のような構造を有する場合、第1シーケンスqの長さn(q_length)は8となってよい。
Figure 0006977104
サーバ130は、動作415で、第1シーケンスqと予め記憶された第2シーケンスsの類似度を計算してよい。このとき、第2シーケンスsまたは第2区間シーケンスのうちの少なくともいずれか1つがメモリ239に記憶されていてよい。ここで、それぞれの第2シーケンスsは、オーディオファイルのうちのいずれか1つの少なくとも一部領域から抽出されてよく、数字ベクトルで構成されてよい。このとき、それぞれの第2シーケンスsは、特定の長さbを有し、それぞれの値、すなわち、数字ベクトルが連続して配列される少なくとも1つの第2区間で構成されてよい。例えば、第2シーケンスsのうちのいずれか1つが、以下の数式(2)のような構造を有する場合、第2シーケンスsのうちのいずれか1つの長さm(s_length)は10となってよい。プロセッサ241は、動的ノートマッチング(DNM)により、第1シーケンスqと第2シーケンスsの類似度を計算してよい。
Figure 0006977104
図5は、図4の類似度計算動作を示した図である。図6〜13は、図4の類似度計算動作を説明するための図である。
図5を参照すると、サーバ130は、動作511で、第1シーケンスqの第1区間シーケンスAを取得してよい。プロセッサ241は、第1シーケンスqの第1区間に基づき、第1シーケンスqを第1区間シーケンスAに縮約してよい。このとき、第1区間シーケンスAは、第1区間の値(A_value)、すなわち、数字ベクトルと長さ(A_duration)、例えば(A_value、A_duration)に対するシーケンスを示してよい。例えば、第1区間シーケンスAが、上記の数式(1)のような構造の第1シーケンスqから縮約され、以下の数式(3)のような構造を有する場合、第1区間シーケンスAの長さ(A_length)は2となってよい。
Figure 0006977104
サーバ130は、動作513で、第2シーケンスsの第2区間シーケンスBを取得してよい。第2区間シーケンスBは、第2シーケンスsのうちのいずれか1つから、第2区間に基づいて縮約されてよい。ことき、第2区間シーケンスBは、第2区間の値(B_value)、すなわち、数字ベクトルと長さ(B_duration)、例えば(B_value、B_duration)に対するシーケンスを示してよい。一実施形態によると、第2シーケンスsのうちのいずれか1つに対応し、第2区間シーケンスBがメモリ239に記憶されていてよい。他の実施形態によると、プロセッサ241が、第2シーケンスsのうちのいずれか1つを縮約して第2区間シーケンスBを取得してよい。例えば、第2区間シーケンスBが、上記の数式(2)のような構造の第2シーケンスsから縮約され、以下の数式(4)のような構造を有する場合、第2区間シーケンスBの長さ(B_length)は2となってよい。
Figure 0006977104
サーバ130は、動作515で、第1区間シーケンスAと第2区間シーケンスBとに基づき、コストマトリックス(cost matrix)を生成してよい。プロセッサ241は、図6に示すように、動的ノートマッチング(DNM)のためのコストマトリックス600を生成してよい。プロセッサ241は、第1区間シーケンスAの第1区間を対応させてコストマトリックス600の少なくとも1つの(row)を生成し、第2区間シーケンスBの第2区間を対応させてコストマトリックス600の少なくとも1つの(column)を生成してよい。このとき、コストマトリックス600は、少なくとも1つのベクトル領域610を含んでよい。それぞれのベクトル領域610は、第1区間のうちのいずれか1つと第2区間のうちのいずれか1つによって生成されてよい。ここで、それぞれのベクトル領域610は、2次元ベクトル領域であって、第1区間のうちのいずれか1つの値(A_value)および長さ(A_duration)ならびに第2区間のうちのいずれか1つの値(B_value)および長さ(B_duration)によって決定されてよい。本発明の多様な実施形態によると、動的ノートマッチング(DNM)のためのコストマトリックス600に対しては、予め定義されたワーピングルール(warping rule)が存在してよい。
1つ目のワーピングルールは、コストマトリックス600のワーピング経路が、下側および左側から上側または右側のうちの少なくともいずれか1つの方向に沿って延長することであってよい。例えば、コストマトリックス600が複数のと複数のによる複数のベクトル領域610を含む場合、ワーピング経路は、ベクトル領域610のうちのいずれか1つから上側に延長する垂直方向、右側に延長する水平方向、または上側と右側の間に延長する対角線方向のうちのいずれか1つに沿って延長してよい。
2つ目のワーピングルールは、それぞれのベクトル領域610のワーピング経路が、上側と右側の間の対角線方向に延長することであってよい。実質的に、図7および図8に示すように、それぞれのベクトル領域610は、1つの第1区間の値(A_value)および長さ(A_duration)ならびに1つの第2区間の値(B_value)および長さ(B_duration)による元素の配列を示し、それぞれのベクトル領域610内のそれぞれの元素にコスト(cost)が付与されてよい。それぞれのベクトル領域610の元素において、ワーピング経路710、810の出発位置711、811と到着位置713、813が決定されてよい。このとき、ワーピング経路710、810の出発位置711、811により、ワーピング経路710、810の到着位置713、813が異なるように決定されてよい。ワーピング経路710、810は、ベクトル領域610の上の辺または右の辺のうちの少なくともいずれか1つに接触するように延長してよい。一例として、図7に示すように、ワーピング経路710の到着位置713は、ベクトル領域610の上の辺に接触してよい。このような場合、図9(a)に示すように、ベクトル領域610の到着位置713に対し、上の辺からの有効距離(A_durmat[n、m])は0であり、右の辺からの有効距離(B_durmat[n、m])が存在してよい。他の例として、図8に示すように、ワーピング経路810の到着位置813は、ベクトル領域610の右の辺に接触してよい。このような場合、図9(b)に示すように、ベクトル領域610の到着位置813に対し、右の辺からの有効距離(B_durmat[n、m])は0であり、上の辺からの有効距離(A_durmat[n、m])が存在してよい。
サーバ130は、動作517で、コストマトリックス600のそれぞれのベクトル領域610に対するコストを計算してよい。プロセッサ241は、以下の数式(5)のように、第1区間の値(A_value)および長さ(A_duration)ならびに第2区間の値(B_value)および長さ(B_duration)を利用してそれぞれのベクトル領域610に対するコストを計算してよい。上述した2番目のワーピングルールによると、数式(5)は、以下の数式(6)のような変形も可能である。
Figure 0006977104
プロセッサ241は、コストマトリックス600の一番下のと一番左ののベクトル領域610に対するコストを計算してよい。例えば、図10に示すようなコストマトリックス600に対し、プロセッサ241は、コストマトリックス600の一番下のと一番左ののベクトル領域610(1011、1013、1015)に対するコストを計算してよい。ここで、プロセッサ241は、上述した2番目のワーピングルールに基づき、それぞれのベクトル領域610(1011、1013、1015)に対するコストを計算してよい。具体的に、プロセッサ241は、ワーピング経路がベクトル領域610(1011、1013、1015)の上の辺に到達する場合のコストと、ワーピング経路がベクトル領域610(1011、1013、1015)の右の辺に到達する場合のコストを計算してよい。
この後、コストマトリックス600が複数のと複数のからなる場合、プロセッサ241は、複数のベクトル領域610からターゲット(target)となるベクトル領域610(1017)のコストを計算してよい。このとき、プロセッサ241は、上述した1番目のワーピングルールに基づき、ベクトル領域610から既にコストが計算された基準ベクトル領域1011、1013、1015を利用してターゲットベクトル領域1017のコストを計算してよい。例えば、プロセッサ241は、図11〜13に示すように、基準ベクトル領域1011、1013、1015それぞれからターゲットベクトル領域1017の候補コストを計算してよい。プロセッサ241は、候補コストのうちの最小値をターゲットベクトル領域1017のコストとして選択してよい。
このために、プロセッサ241は、ターゲットベクトル領域1017の下のと左のの基準ベクトル領域1011、1013、1015を選択してよい。ここで、基準ベクトル領域1011、1013、1015は、第1基準ベクトル領域1011、第2基準ベクトル領域1013、および第3基準ベクトル領域1015を含んでよい。第1基準ベクトル領域1011は、ターゲットベクトル領域1017の左下、言い換えれば、対角線方向に配置されるベクトル領域610であり、第2基準ベクトル領域1013は、ターゲットベクトル領域1017の下に配置されるベクトル領域610であり、第3基準ベクトル領域1015は、ターゲットベクトル領域1017の左に配置されるベクトル領域610であってよい。
プロセッサ241は、図11に示すように、第1基準ベクトル領域1011からターゲットベクトル領域1017の候補コストを計算してよい。ここで、プロセッサ241は、以下の数式(7)のように、第1基準ベクトル領域1011のワーピング経路が上の辺に到達する場合の候補コストを計算してよい。また、プロセッサ241は、以下の数式(8)のように、第1基準ベクトル領域1011のワーピング経路が右の辺に到達する場合の候補コストを計算してよい。
Figure 0006977104
プロセッサ241は、図12に示すように、第2基準ベクトル領域1013からターゲットベクトル領域1017の候補コストを計算してよい。ここで、プロセッサ241は、以下の数式(9)のように、第2基準ベクトル領域1013のワーピング経路が上の辺に到達する場合の候補コストを計算してよい。また、プロセッサ241は、以下の数式(10)のように、第2基準ベクトル領域1013のワーピング経路が右の辺に到達する場合の候補コストを計算してよい。
Figure 0006977104
プロセッサ241は、図13に示すように、第3基準ベクトル領域1015からターゲットベクトル領域1017の候補コストを計算してよい。ここで、プロセッサ241は、以下の数式(11)のように、第3基準ベクトル領域1015のワーピング経路が上の辺に到達する場合の候補コストを計算してよい。また、プロセッサ241は、以下の数式(12)のように、第3基準ベクトル領域1017のワーピング経路が右の辺に到達する場合の候補コストを計算してよい。
Figure 0006977104
サーバ130は、動作519で、コストマトリックス600でワーピング経路を検出してよい。プロセッサ241は、コストマトリックス600のすべてのベクトル610のコストを考慮した上で、コストマトリックス600から最適なワーピング経路を検出してよい。
サーバ130は、動作521で、ワーピング経路に基づき、第1区間シーケンスAと第2区間シーケンスBの類似度を計算してよい。プロセッサ241は、コストマトリックス600のワーピング経路を分析し、第1区間シーケンスAと第2区間シーケンスBの類似度を計算してよい。この後、サーバ130は、図4にリターンしてよい。
再び図4を参照すると、サーバ130は、動作417で、第2シーケンスsのうちの少なくともいずれか1つを含むフィードバック情報を生成してよい。プロセッサ241は、第1シーケンスqと第2シーケンスsの類似度に基づき、第2シーケンスsのうちから少なくともいずれか1つを選択してよい。一実施形態によると、プロセッサ241は、類似度のうちから最大値を検出し、これに対応する第2シーケンスsを選択してよい。他の実施形態によると、プロセッサ241は、類似度のうちから予め定められた閾値を超過する少なくともいずれか1つを検出し、これに対応する第2シーケンスsを選択してよい。また、プロセッサ241は、第2シーケンスsのうちの少なくともいずれか1つと関連するオーディオファイルのメタ情報を含むようにフィードバック情報を生成してよい。
サーバ130は、動作419で、外部装置、すなわち、クライアント110にフィードバック情報を送信してよい。プロセッサ241は、通信モジュール237により、クライアント110にフィードバック情報を送信してよい。
図14は、一実施形態における、電子装置110、130の動作方法を示した図である。
図14を参照すると、一実施形態に係る電子装置110、130は、動作1411で、オーディオ信号を検出してよい。プロセッサ221、241は、ユーザの要求に基づき、特定の時間間隔内にオーディオ信号を収集してよい。オーディオ信号は、ユーザが検索したいメロディーと関連するものであってよい。例えば、オーディオ信号は、ユーザの音声または外部環境で再生されている音楽のうちの少なくともいずれか1つを含んでよい。この後、電子装置110、130は、動作1413で、オーディオ信号から第1シーケンスqを抽出してよい。プロセッサ221、241が、オーディオ信号から第1シーケンスqを抽出してよい。これにより、電子装置110、130は、動作1415で、第1シーケンスqと予め記憶された第2シーケンスsそれぞれの類似度を計算してよい。プロセッサ221、241は、動的ノートマッチング(DNM)により、第1シーケンスqと第2シーケンスsの類似度を計算してよい。このとき、電子装置110、130のメモリ219、239は、オーディオファイルまたはオーディオファイルのメタ情報のうちの少なくともいずれか1つとともに、オーディオファイルの第2シーケンスsを記憶していてよい。
電子装置110、130は、動作1417で、第2シーケンスsのうちの少なくともいずれか1つを含むフィードバック情報を生成してよい。プロセッサ221、231が、フィードバック情報を生成してよい。この後、電子装置110、130は、動作1419で、フィードバック情報を処理してよい。一実施形態によると、プロセッサ221、231が、フィードバック情報を出力してよい。他の実施形態によると、プロセッサ221、231が、フィードバック情報を他の電子装置(図示せず)に送信してよい。
本発明の多様な実施形態によると、電子装置110、130は、入力される信号と予め記憶されたデータとをそれぞれ縮約して比較することにより、電子装置110、130に求められる演算量を減少させることができる。このとき、電子装置110、130は、入力される信号から縮約された第1区間シーケンスAと予め記憶されたデータから縮約された第2区間シーケンスBとに基づいてコストマトリックス610を生成し、動的ノートマッチング(DNM)により、コストマトリックス610でワーピング経路を検出することができる。これにより、電子装置110、130は、入力される信号と予め記憶されたデータから縮約された情報とに基づいて動的プログラミングを使用することができる。これにより、電子装置110、130は、少ない演算量でも希望とする結果を取得することが可能となる。これは、電子装置110、130の動作の効率性を向上させ、電子装置が提供するサービスの品質を向上させることに繋がる。
本発明の多様な実施形態に係る電子装置110、130の動作方法は、動的ノートマッチング(DNM)のためのものであって、入力される信号から抽出される第1シーケンスqを、それぞれの値が連続して配列される少なくとも1つの第1区間に基づいて縮約して、第1区間シーケンスAを取得する動作、予め記憶された第2シーケンスsから、それぞれの値が連続して配列される少なくとも1つの第2区間に基づいて縮約された第2区間シーケンスBを取得する動作、および前記第1区間シーケンスAと前記第2区間シーケンスBの類似度を計算する動作を含んでよい。
本発明の多様な実施形態によると、前記第1区間シーケンスAは、前記第1区間の値および長さに対するシーケンスを示し、前記第2区間シーケンスBは、前記第2区間の値および長さに対するシーケンスを示してよい。
本発明の多様な実施形態によると、前記類似度計算動作は、前記第1区間シーケンスAと前記第2区間シーケンスBとに基づき、少なくとも1つのベクトル領域610を含むコストマトリックス610を生成する動作、前記ベクトル領域610に対するコストを計算する動作、前記コストに基づき、前記コストマトリックス610でワーピング経路を検出する動作、および前記ワーピング経路を利用して前記類似度を計算する動作を含んでよい。
本発明の多様な実施形態によると、前記コストマトリックス610生成動作は、前記第1区間を対応させて前記コストマトリックス610の少なくとも1つのを生成する動作、および前記第2区間を対応させて前記コストマトリックス610の少なくとも1つのを生成する動作を含んでよい。
本発明の多様な実施形態によると、前記ベクトル領域610のそれぞれは、前記第1区間のうちのいずれか1つと前記第2区間のうちのいずれか1つとによって生成されてよい。
本発明の多様な実施形態によると、前記コスト計算動作は、前記第1区間の値および長さならびに前記第2区間の値および長さを利用し、前記コストマトリックス610の一番下のと一番左ののベクトル領域610に対するコストを計算する動作、前記コストマトリックス610が複数のと複数のからなる場合、ターゲットベクトル領域1017の下のと左のの基準ベクトル領域1011、1013、1015を選択する動作、および前記基準ベクトル領域1011、1013、1015のコストに基づき、前記ターゲットベクトル領域1017のコストを計算する動作を含んでよい。
本発明の多様な実施形態によると、前記ターゲットベクトル領域1017のコスト計算動作は、前記基準ベクトル領域1011、1013、1015のそれぞれから、前記ターゲットベクトル領域1017の候補コストを計算する動作、および前記候補コストのうちの最小値を前記ターゲットベクトル領域1017のコストとして選択する動作を含んでよい。
本発明の多様な実施形態によると、前記候補コスト計算動作は、前記基準ベクトル領域1011、1013、1015のうちのいずれか1つの上の辺のコストから、前記候補コストのうちのいずれか1つを計算する動作、および前記基準ベクトル領域1011、1013、1015のうちのいずれか1つの右の辺のコストから、前記候補コストのうちの他の1つを計算する動作を含んでよい。
本発明の多様な実施形態によると、前記第1区間シーケンスA取得動作は、外部装置からオーディオ信号を受信する動作、前記オーディオ信号から前記第1シーケンスqを抽出する動作、および前記第1シーケンスqを縮約して前記第1区間シーケンスAを取得する動作を含んでよい。
本発明の多様な実施形態によると、前記第2区間シーケンスB取得動作および前記類似度計算動作は、予め記憶された複数の第2シーケンスsに対して個別に実行されてよい。
本発明の多様な実施形態によると、前記方法は、前記類似度に基づき、前記第2シーケンスsのうちから少なくともいずれか1つを選択する動作、および前記外部装置に前記選択された第2シーケンスsと関連するメタ情報をフィードバックする動作をさらに含んでよい。
本発明の多様な実施形態に係る電子装置110、130は、動的ノートマッチング(DNM)のためのものであって、入力される信号から第1シーケンスqを抽出するように構成されるプロセッサ221、241、および前記プロセッサ221、241に連結され、少なくとも1つの第2シーケンスを記憶しているメモリ239を含んでよい。
本発明の多様な実施形態によると、前記プロセッサ221、241は、前記第1シーケンスqを、それぞれの値が連続して配列される第1区間に基づいて縮約して、第1区間シーケンスAを取得し、前記第2シーケンスsから、それぞれの値が連続して配列される少なくとも1つの第2区間に基づいて縮約された第2区間シーケンスBを取得し、前記第1区間シーケンスAと前記第2区間シーケンスBの類似度を計算するように構成されてよい。
本発明の多様な実施形態によると、前記第1区間シーケンスAは、前記第1区間の値および長さのシーケンスを示し、前記第2区間シーケンスBは、前記第2区間の値および長さのシーケンスを示してよい。
本発明の多様な実施形態によると、前記プロセッサ221、241は、前記第1区間シーケンスAと前記第2区間シーケンスBとに基づき、少なくとも1つのベクトル領域610を含むコストマトリックス610を生成し、前記ベクトル領域610に対するコストを計算し、前記コストに基づき、前記コストマトリックス610でワーピング経路を検出し、前記ワーピング経路を利用して前記類似度を計算するように構成されてよい。
本発明の多様な実施形態によると、前記プロセッサ221、241は、前記第1区間を対応させて前記コストマトリックス610の少なくとも1つのを生成し、前記第2区間を対応させて前記コストマトリックス610の少なくとも1つのを生成し、これにより、前記ベクトル領域610それぞれが、前記第1区間のうちのいずれか1つと前記第2区間のうちのいずれか1つとによって生成されるように構成されてよい。
本発明の多様な実施形態によると、前記プロセッサ221、241は、前記第1区間の値および長さならびに前記第2区間の値および長さを利用し、前記コストマトリックス610の一番下のと一番左ののベクトル領域610に対するコストを計算し、前記コストマトリックス610が複数のおよび複数のからなる場合、ターゲットベクトル領域1017の下のおよび左のの基準ベクトル領域1011、1013、1015を選択し、前記基準ベクトル領域1011、1013、1015のコストに基づき、前記ターゲットベクトル領域1017のコストを計算するように構成されてよい。
本発明の多様な実施形態によると、前記プロセッサ221、241は、前記基準ベクトル領域1011、1013、1015のそれぞれから、前記ターゲットベクトル領域1017の候補コストを計算し、前記候補コストのうちの最小値を前記ターゲットベクトル領域1017のコストとして選択するように構成されてよい。
本発明の多様な実施形態によると、前記プロセッサ221、241は、前記基準ベクトル領域1011、1013、1015のうちのいずれか1つの上の辺のコストから、前記候補コストのうちのいずれか1つを計算し、前記基準ベクトル領域1011、1013、1015のうちのいずれか1つの右の辺のコストから、前記候補コストのうちの他の1つを計算するように構成されてよい。
本発明の多様な実施形態によると、前記プロセッサ221、241は、外部装置、例えば、クライアント110からオーディオ信号を受信し、前記オーディオ信号から前記第1シーケンスqを抽出し、前記第1シーケンスqを縮約して前記第1区間シーケンスAを取得するように構成されてよい。
本発明の多様な実施形態によると、前記プロセッサ221、241は、予め記憶された複数の第2シーケンスsにそれぞれ対応する複数の類似度を計算し、前記類似度に基づき、前記第2シーケンスsのうちから少なくともいずれか1つを選択し、前記外部装置に前記選択された第2シーケンスsと関連するメタ情報をフィードバックするように構成されてよい。
本明細書の多様な実施形態は、機器(machine)(例:電子装置110、130)で読み取り可能な記憶媒体(storage medium)(例:メモリ219、239)に記憶された1つ以上の命令語を含むソフトウェアとして実現されてよい。例えば、機器のプロセッサ(例:プロセッサ221、241)は、記憶媒体から記憶された1つ以上の命令語のうちの少なくとも1つの命令を呼び出し、これを実行させてよい。これは、機器が呼び出された少なくとも1つの命令語によって少なくとも1つの機能を実行するように制御されることを可能にする。1つ以上の命令語は、コンパイラによって生成されたコードまたはインタプリタによって実行されることのできるコードを含んでよい。機器で読み取り可能な記憶媒体は、非一時的(non−transitory)な記憶媒体の形態で提供されてよい。ここで、「非一時的」とは、記憶媒体が実在(tangible)する装置であって、信号(signal)(例:電磁波)を含まないということを意味するだけのものであり、この用語は、データが記憶媒体に半永久的に記憶される場合と一次的に記憶される場合とを区分しない。
本発明の多様な実施形態に係る非一時的なコンピュータ読み取り可能な記憶媒体は、入力される信号から抽出される第1シーケンスqを、それぞれの値が連続して配列される少なくとも1つの第1区間に基づいて縮約して、第1区間シーケンスAを取得する動作、予め記憶された第2シーケンスsから、それぞれの値が連続して配列される少なくとも1つの第2区間に基づいて縮約された第2区間シーケンスBを取得する動作、および前記第1区間シーケンスAと前記第2区間シーケンスBの類似度を計算する動作を実行するための1つ以上のプログラムを記憶してよい。
本明細書の多様な実施形態およびこれに使用された用語は、本明細書に記載された技術を特定の実施形態に対して限定しようとするものではなく、該当の実施例の多様な変更、均等物、および/または代替物を含むものと理解されなければならない。図面の説明に関し、類似の構成要素には類似の参照符号が付与されてよい。単数の表現は、文脈上で明らかに異なるように記載されていない限り、複数の表現を含んでよい。本明細書において、「AまたはB」、「Aおよび/またはBのうちの少なくとも1つ」「A、B、またはC」、または「A、B、および/またはCのうちの少なくとも1つ」などの表現は、羅列されている項目のすべての可能な組み合わせを含んでよい。「第1」、「第2」または「1番目」、「2番目」などの表現は、該当の構成要素を順序または重要度とは関係なく修飾してよく、ある構成要素を他の構成要素と区分するために使用されるだけであって、該当の構成要素を限定するものではない。ある(例:第1)構成要素が他の(例:第2)構成要素に「(機能的にまたは通信的に)連結されて」いたり「接続されて」いると言及されるときには、前記ある構成要素が前記他の構成要素に直接的に連結されてもよいし、他の構成要素(例:第3構成要素)を介して連結されてもよい。
本明細書で使用される用語「モジュール」は、ハードウェア、ソフトウェア、またはファームウェアで構成されたユニットを含み、例えば、ロジック、論理ブロック、部品、または回路などの用語と互換的に使用されてよい。モジュールは、一体で構成された部品、または1つまたはそれ以上の機能を実行する最小単位またはその一部であってよい。例えば、モジュールは、ASIC(application−specific integrated circuit)で構成されてよい。
本発明の多様な実施形態によると、記載した構成要素のそれぞれの構成要素(例:モジュールまたはプログラム)は、単数または複数の個体を含んでよい。本発明の多様な実施形態によると、上述した該当の構成要素のうちの1つ以上の構成要素または動作が省略されてもよいし、1つ以上の他の構成要素または動作が追加されてもよい。代替的あるいは追加的に、複数の構成要素(例:モジュールまたはプログラム)は、1つの構成要素に統合されてよい。このような場合、統合された構成要素は、複数の構成要素それぞれの構成要素の1つ以上の機能を、統合以前の複数の構成要素のうちの該当の構成要素によって実行されるものと同一または類似に実行してよい。本発明の多様な実施形態によると、モジュール、プログラム、または他の構成要素によって実行される動作は、順次的、並列的、反復的、または体験的に実行されてもよく、動作のうちの1つ以上が他の順序で実行されたり、省略されたり、または1つ以上の他の動作が追加されたりしてもよい。

Claims (20)

  1. 電子装置の動作方法であって、
    入力されるオーディオ信号から抽出され、数字ベクトルが配列される構造を持つ第1シーケンスを、同じ数字ベクトルが連続して配列される少なくとも1つの第1区間に基づいて縮約することによって、第1区間シーケンスを取得する動作であって、第1区間シーケンスは、前記第1区間の連続して配列される数字ベクトル及び前記第1区間の長さで構成される、第1区間シーケンスを取得する動作
    数字ベクトルが配列される構造を持つ予め記憶された第2シーケンス同じ数字ベクトルが連続して配列される少なくとも1つの第2区間に基づいて縮約することによって、第2区間シーケンスを取得する動作であって、第2区間シーケンスは、前記第2区間の連続して配列される数字ベクトル及び前記第2区間の長さで構成される、第2区間シーケンス取得する動作、および
    前記第1区間シーケンスと前記第2区間シーケンスの類似度を計算する動作を含む、
    方法。
  2. 前記第1区間シーケンスは、前記第1区間の連続して配列される数字ベクトルと前記第1区間の長さとの対が配列される構造を持ち
    前記第2区間シーケンスは、前記第2区間の連続して配列される数字ベクトルと前記第2区間の長さとの対が配列される構造を持つ
    請求項1に記載の方法。
  3. 前記類似度を計算する動作は、
    前記第1区間シーケンスと前記第2区間シーケンスとに基づき、少なくとも1つのベクトル領域を含むコストマトリックスを生成する動作、
    前記ベクトル領域に対するコストを計算する動作、
    前記コストに基づき、前記コストマトリックスでワーピング経路を検出する動作、および
    前記ワーピング経路を利用して前記類似度を計算する動作を含む、
    請求項1に記載の方法。
  4. 前記コストマトリックスを生成する動作は、
    前記第1区間を対応させて前記コストマトリックスの少なくとも1つのを生成する動作、および
    前記第2区間を対応させて前記コストマトリックスの少なくとも1つのを生成する動作を含み、
    前記ベクトル領域のそれぞれは、前記第1区間のうちのいずれか1つと前記第2区間のうちのいずれか1つとによって生成される、
    請求項3に記載の方法。
  5. 前記コストを計算する動作は、
    前記第1区間の値および前記第1区間の長さならびに前記第2区間の値および前記第2区間の長さを利用し、前記コストマトリックスの一番下のおよび一番左ののベクトル領域に対するコストを計算する動作、
    前記コストマトリックスが複数のおよび複数のからなる場合、ターゲットベクトル領域の下のおよび左のの基準ベクトル領域を選択する動作、および
    前記基準ベクトル領域のコストに基づき、前記ターゲットベクトル領域のコストを計算する動作を含む、
    請求項4に記載の方法。
  6. 前記ターゲットベクトル領域のコストを計算する動作は、
    前記基準ベクトル領域のそれぞれから、前記ターゲットベクトル領域の候補コストを計算する動作、および
    前記候補コストのうちの最小値を前記ターゲットベクトル領域のコストとして選択する動作を含む、
    請求項5に記載の方法。
  7. 前記候補コストを計算する動作は、
    前記基準ベクトル領域のうちのいずれか1つの上の辺のコストから、前記候補コストのうちのいずれか1つを計算する動作、および
    前記基準ベクトル領域のうちのいずれか1つの右の辺のコストから、前記候補コストのうちの他の1つを計算する動作を含む、
    請求項6に記載の方法。
  8. 前記第1区間シーケンスを取得する動作は、
    外部装置からオーディオ信号を受信する動作、
    前記オーディオ信号から前記第1シーケンスを抽出する動作、および
    前記第1シーケンスを縮約して前記第1区間シーケンスを取得する動作を含む、
    請求項1に記載の方法。
  9. 前記第2区間シーケンスを取得する動作および前記類似度を計算する動作は、
    予め記憶された複数の第2シーケンスに対して個別に実行される、
    請求項8に記載の方法。
  10. 前記類似度に基づき、前記第2シーケンスのうちの少なくともいずれか1つを選択する動作、および
    前記外部装置に前記選択された第2シーケンスと関連するメタ情報をフィードバックする動作をさらに含む、
    請求項9に記載の方法。
  11. 電子装置であって、
    入力されるオーディオ信号から第1シーケンスを抽出するように構成されるプロセッサ、および
    前記プロセッサに連結され、少なくとも1つの第2シーケンスを記憶している、メモリを含み、
    前記プロセッサは、
    数字ベクトルが配列される構造を持つ前記第1シーケンスを、同じ数字ベクトルが連続して配列される第1区間に基づいて縮約することによって、第1区間シーケンスを取得するように構成され、前記第1区間シーケンスは、前記第1区間の連続して配列される数字ベクトル及び前記第1区間の長さで構成され
    数字ベクトルが配列される構造を持つ前記第2シーケンス同じ数字ベクトルが連続して配列される少なくとも1つの第2区間に基づいて縮約することによって、第2区間シーケンスを取得するように構成され、前記第2区間シーケンスは、前記第2区間の連続して配列される数字ベクトル及び前記第2区間の長さで構成され
    前記第1区間シーケンスと前記第2区間シーケンスの類似度を計算するように構成される、
    電子装置。
  12. 前記第1区間シーケンスは、前記第1区間の連続して配列される数字ベクトルと前記第1区間の長さとの対が配列される構造を持ち
    前記第2区間シーケンスは、前記第2区間の連続して配列される数字ベクトルと前記第2区間の長さとの対が配列される構造を持つ
    請求項11に記載の電子装置。
  13. 前記プロセッサは、
    前記第1区間シーケンスと前記第2区間シーケンスとに基づき、少なくとも1つのベクトル領域を含むコストマトリックスを生成し、
    前記ベクトル領域に対するコストを計算し、
    前記コストに基づき、前記コストマトリックスでワーピング経路を検出し、
    前記ワーピング経路を利用して前記類似度を計算するように構成される、
    請求項11に記載の電子装置。
  14. 前記プロセッサは、
    前記第1区間を対応させて前記コストマトリックスの少なくとも1つのを生成し、
    前記第2区間を対応させて前記コストマトリックスの少なくとも1つのを生成し、
    これにより、前記ベクトル領域のそれぞれが、前記第1区間のうちのいずれか1つと前記第2区間のうちのいずれか1つとによって生成されるように構成される、
    請求項13に記載の電子装置。
  15. 前記プロセッサは、
    前記第1区間の値および前記第1区間の長さならびに前記第2区間の値および前記第2区間の長さを利用し、前記コストマトリックスの一番下のおよび一番左ののベクトル領域に対するコストを計算し、
    前記コストマトリックスが複数のおよび複数のからなる場合、ターゲットベクトル領域の下のおよび左のの基準ベクトル領域を選択し、
    前記基準ベクトル領域のコストに基づき、前記ターゲットベクトル領域のコストを計算するように構成される、
    請求項14に記載の電子装置。
  16. 前記プロセッサは、
    前記基準ベクトル領域のそれぞれから、前記ターゲットベクトル領域の候補コストを計算し、
    前記候補コストのうちの最小値を前記ターゲットベクトル領域のコストとして選択するように構成される、
    請求項15に記載の電子装置。
  17. 前記プロセッサは、
    前記基準ベクトル領域のうちのいずれか1つの上の辺のコストから、前記候補コストのうちのいずれか1つを計算し、
    前記基準ベクトル領域のうちのいずれか1つの右の辺のコストから、前記候補コストのうちの他の1つを計算するように構成される、
    請求項16に記載の電子装置。
  18. 前記プロセッサは、
    外部装置からオーディオ信号を受信し、
    前記オーディオ信号から前記第1シーケンスを抽出し、
    前記第1シーケンスを縮約して前記第1区間シーケンスを取得するように構成される、
    請求項11に記載の電子装置。
  19. 前記プロセッサは、
    予め記憶された複数の第2シーケンスにそれぞれ対応する複数の類似度を計算し、
    前記類似度に基づき、前記第2シーケンスのうちから少なくともいずれか1つを選択し、
    前記外部装置に前記選択された第2シーケンスと関連するメタ情報をフィードバックするように構成される、
    請求項18に記載の電子装置。
  20. 非一時的なコンピュータ読み取り可能な記憶媒体であって、
    入力されるオーディオ信号から抽出され、数字ベクトルが配列される構造を持つ第1シーケンスを、同じ数字ベクトルが連続して配列される少なくとも1つの第1区間に基づいて縮約することによって、第1区間シーケンスを取得する動作であって、第1区間シーケンスは、前記第1区間の連続して配列される数字ベクトル及び前記第1区間の長さで構成される、第1区間シーケンスを取得する動作
    数字ベクトルが配列される構造を持つ予め記憶された第2シーケンス同じ数字ベクトルが連続して配列される少なくとも1つの第2区間に基づいて縮約することによって、第2区間シーケンスを取得する動作であって、第2区間シーケンスは、前記第2区間の連続して配列される数字ベクトル及び前記第2区間の長さで構成される、第2区間シーケンス取得する動作、および
    前記第1区間シーケンスと前記第2区間シーケンスの類似度を計算する動作
    を実行するための1つ以上のプログラムを記憶するように構成される、
    非一時的コンピュータ読み取り可能な記憶媒体。
JP2020084952A 2019-06-11 2020-05-14 動的ノートマッチングのための電子装置およびその動作方法 Active JP6977104B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190068842A KR102240455B1 (ko) 2019-06-11 2019-06-11 동적 노트 매칭을 위한 전자 장치 및 그의 동작 방법
KR10-2019-0068842 2019-06-11

Publications (2)

Publication Number Publication Date
JP2020201478A JP2020201478A (ja) 2020-12-17
JP6977104B2 true JP6977104B2 (ja) 2021-12-08

Family

ID=73656060

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020084952A Active JP6977104B2 (ja) 2019-06-11 2020-05-14 動的ノートマッチングのための電子装置およびその動作方法

Country Status (5)

Country Link
US (1) US11556585B2 (ja)
JP (1) JP6977104B2 (ja)
KR (1) KR102240455B1 (ja)
CN (1) CN112071333A (ja)
TW (1) TWI778371B (ja)

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6421499A (en) * 1987-07-17 1989-01-24 Mitsubishi Electric Corp Pattern analogy calculator
CA2081140C (en) * 1992-01-14 1999-01-19 Charles Thomas Rutherfoord Digital video compression method and apparatus
US5386492A (en) * 1992-06-29 1995-01-31 Kurzweil Applied Intelligence, Inc. Speech recognition system utilizing vocabulary model preselection
JPH09138691A (ja) * 1995-11-15 1997-05-27 Brother Ind Ltd 楽曲検索装置
JP3730144B2 (ja) * 2001-08-03 2005-12-21 日本電信電話株式会社 類似音楽検索装置ならびにその方法、および類似音楽検索プログラムならびにその記録媒体
JP3730179B2 (ja) * 2002-02-13 2005-12-21 日本電信電話株式会社 信号検索装置、信号検索方法、信号検索プログラム及び信号検索プログラムを記録した記録媒体
CN100552664C (zh) * 2006-10-20 2009-10-21 东芝泰格有限公司 模式匹配装置以及方法
WO2009001202A1 (en) * 2007-06-28 2008-12-31 Universitat Pompeu Fabra Music similarity systems and methods using descriptors
JP2010224481A (ja) * 2009-03-25 2010-10-07 Toshiba Corp 類似区間検出装置
CN103380457B (zh) * 2011-12-02 2016-05-18 松下电器(美国)知识产权公司 声音处理装置、方法及集成电路
JP2013117688A (ja) * 2011-12-05 2013-06-13 Sony Corp 音響処理装置、音響処理方法、プログラム、記録媒体、サーバ装置、音響再生装置および音響処理システム
US20130226957A1 (en) * 2012-02-27 2013-08-29 The Trustees Of Columbia University In The City Of New York Methods, Systems, and Media for Identifying Similar Songs Using Two-Dimensional Fourier Transform Magnitudes
JP5998603B2 (ja) * 2012-04-18 2016-09-28 ソニー株式会社 音検出装置、音検出方法、音特徴量検出装置、音特徴量検出方法、音区間検出装置、音区間検出方法およびプログラム
US9154470B2 (en) 2012-05-25 2015-10-06 Canon U.S.A., Inc. System and method for processing transactions
EP2747078A1 (en) * 2012-12-18 2014-06-25 Telefónica, S.A. Method and system for improved pattern matching
JP2014142566A (ja) * 2013-01-25 2014-08-07 Alpine Electronics Inc 音声認識システムおよび音声認識方法
JP5851455B2 (ja) * 2013-08-06 2016-02-03 日本電信電話株式会社 共通信号含有区間有無判定装置、方法、及びプログラム
TW201624320A (zh) * 2014-12-30 2016-07-01 富智康(香港)有限公司 影像片段搜尋方法及系統
US20170103672A1 (en) * 2015-10-09 2017-04-13 The Regents Of The University Of California System and method for gesture capture and real-time cloud based avatar training
CN107978323B (zh) * 2017-12-01 2022-09-27 腾讯科技(深圳)有限公司 音频识别方法、装置及存储介质
CN109409496A (zh) * 2018-11-14 2019-03-01 重庆邮电大学 一种基于蚁群算法改进的ldtw序列相似度量方法
US10777188B2 (en) * 2018-11-14 2020-09-15 Sri International Time-frequency convolutional neural network with bottleneck architecture for query-by-example processing

Also Published As

Publication number Publication date
KR102240455B1 (ko) 2021-04-14
TWI778371B (zh) 2022-09-21
US20200394214A1 (en) 2020-12-17
TW202046141A (zh) 2020-12-16
KR20200141824A (ko) 2020-12-21
JP2020201478A (ja) 2020-12-17
CN112071333A (zh) 2020-12-11
US11556585B2 (en) 2023-01-17

Similar Documents

Publication Publication Date Title
US10478269B2 (en) Method for automatically moving object in simulation system and simulation system using the same
JP6013642B2 (ja) 体験コンテンツデータセットに関するキャンペーン最適化
JP6350251B2 (ja) 経路情報処理装置、方法、及びプログラム
US20200202139A1 (en) Crowd state recognition device, learning method, and learning program
JPWO2016052382A1 (ja) 情報処理装置、棚札管理システム、制御方法、及びプログラム
JPWO2016084336A1 (ja) 追学習装置、追学習方法、および、追学習プログラム
CN111695519B (zh) 关键点定位方法、装置、设备以及存储介质
JP2018206376A5 (ja) 情報検索システム
JP6977104B2 (ja) 動的ノートマッチングのための電子装置およびその動作方法
JP6691871B2 (ja) 融合遺伝子解析装置、融合遺伝子解析方法、及びプログラム
WO2018078735A1 (ja) 情報処理装置、情報処理方法および情報処理プログラム
CN112990625A (zh) 标注任务的分配方法、装置及服务器
JP2007058603A (ja) パターン認識方法及び装置及びプログラム
JPWO2018062465A1 (ja) プログラム開発支援装置、プログラム開発支援方法、および、プログラム開発支援プログラム
KR102183280B1 (ko) 멀티모달 데이터를 이용한 주의집중의 순환 신경망 기반 전자 장치 및 그의 동작 방법
CN108875901A (zh) 神经网络训练方法以及通用物体检测方法、装置和系统
JP6854248B2 (ja) 境界探索テスト支援装置および境界探索テスト支援方法
CN111666965A (zh) 改进图像识别的多级别深度特征和多匹配器融合
KR20200117176A (ko) 확률적 기법 기반의 저업로드 비용의 최적의 비공개적 회수 달성을 위한 전자 장치와 통신 시스템 및 그의 동작 방법
JP7109414B2 (ja) 識別装置、識別方法及び識別プログラム
JP6642132B2 (ja) 画像処理システム、画像処理方法および画像処理プログラム
KR20170085396A (ko) 스캔도서 식별을 위한 특징벡터 클러스터링 및 데이터베이스 생성 방법
JP5188290B2 (ja) アノテーション装置、アノテーション方法およびプログラム
KR20190143666A (ko) 이미지를 위치 데이터로 변환하여 제공하는 방법과 시스템 및 비-일시적인 컴퓨터 판독 가능한 기록 매체
CN113330404A (zh) 选取子轨迹的方法、电子设备、计算机可读存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200514

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210325

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210406

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210706

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211012

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211110

R150 Certificate of patent or registration of utility model

Ref document number: 6977104

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150