TWI778371B - 用於動態音符匹配的電子裝置及其操作方法 - Google Patents

用於動態音符匹配的電子裝置及其操作方法 Download PDF

Info

Publication number
TWI778371B
TWI778371B TW109119332A TW109119332A TWI778371B TW I778371 B TWI778371 B TW I778371B TW 109119332 A TW109119332 A TW 109119332A TW 109119332 A TW109119332 A TW 109119332A TW I778371 B TWI778371 B TW I778371B
Authority
TW
Taiwan
Prior art keywords
interval
sequence
cost
mentioned
vector
Prior art date
Application number
TW109119332A
Other languages
English (en)
Other versions
TW202046141A (zh
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 TW202046141A publication Critical patent/TW202046141A/zh
Application granted granted Critical
Publication of TWI778371B publication Critical patent/TWI778371B/zh

Links

Images

Classifications

    • 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/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
    • 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/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
    • 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
    • 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

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)
  • Acoustics & Sound (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (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)

Abstract

根據多個實施例的用於動態音符匹配的電子裝置及其操作方法構成為:將從被輸入的信號中提取的第一序列基於每個值連續排列的至少一個第一區間來縮減以獲取第一區間序列;從預儲存的第二序列中獲取基於每個值連續排列的至少一個第二區間來縮減的第二區間序列;以及通過上述動態音符匹配來計算第一區間序列和第二區間序列的相似度。

Description

用於動態音符匹配的電子裝置及其操作方法
多個實施例涉及用於動態音符匹配 (dynamic note matching,DNM) 的電子裝置及其操作方法。
近年來在通訊環境提供哼唱檢索 (query by humming,QbH) 服務。為了提供這樣的服務,伺服器儲存大量的與音訊檔相關的資訊。用戶端將具有需要搜索的旋律的音訊信號傳送給伺服器,伺服器將與音訊信號最相似的音訊檔關聯的資訊回饋給用戶端。由此,伺服器需要分別將音訊信號與大量音訊檔進行比較。因此,伺服器需要很高的計算量。這可能會導致降低伺服器的計算速度的問題。
多個實施例可以提供一種電子裝置及其操作方法,其可以減少提供服務所需的計算量。
多個實施例可以提供一種電子裝置及其操作方法,其可以減少將音訊信號與大量音訊檔進行比較所需的計算量。
根據多個實施例的電子裝置的操作方法用於動態音符匹配 (DNM) ,其包括:將從被輸入的信號中提取的第一序列基於每個值連續排列的至少一個第一區間來縮減以獲取第一區間序列的操作;從預儲存的第二序列中獲取基於每個值連續排列的至少一個第二區間來縮減的第二區間序列的操作;以及通過上述動態音符匹配 (DNM) 來計算上述第一區間序列和上述第二區間序列的相似度的操作。
根據多個實施例的電子裝置用於動態音符匹配 (DNM) ,其包括:處理器,構成為從被輸入的信號提取第一序列,及記憶體,其與上述處理器連接,並且儲存至少一個第二序列。
根據多個實施例,上述處理器構成為:將上述第一序列基於每個值連續排列的第一區間來縮減以獲取第一區間序列;從上述第二序列獲取基於 每個值連續排列的至少一個第二區間來縮減的第二區間序列;以及通過上述動態音符匹配 (DNM) 來計算上述第一區間序列和上述第二區間序列的相似度。
根據多個實施例的非暫時性 (non-transitory) 電腦可讀儲存介質 (computer-readable storage medium) 用於動態音符匹配 (DNM) ,並且可以儲存一個或多個程式來運行:將從被輸入的信號中提取的第一序列基於每個值連續排列的至少一個第一區間來縮減以獲取第一區間序列的操作;從預儲存的第二序列中獲取基於每個值連續排列的至少一個第二區間來縮減的第二區間序列的操作;以及通過上述動態音符匹配 (DNM) 來計算上述第一區間序列和上述第二區間序列的相似度的操作。
根據多個實施例,電子裝置可以通過分別縮減和比較輸入信號和預儲存的資料,從而減少電子裝置所需的計算量。此時,電子裝置基於從被輸入的信號縮減的第一區間序列和從預儲存的資料中縮減的第二區間序列生成成本矩陣,並且可以通過動態音符匹配 (DNM) 在成本矩陣中檢測翹曲路徑。通過此,電子裝置從輸入的信號和預儲存的資料中獲取縮減的資訊,從而可以使用動態程式設計。因此,即使電子裝置減少了計算量,也可以獲取期望的結果。這可以提高電子裝置的操作效率並提高通過電子裝置提供的服務品質。
以下,參考附圖說明本文的多個實施例。
圖 1 是示出根據多個實施例的系統 100 及其信號流動的附圖。
參考圖 1,根據多個實施例的系統 100 可以包括多個電子裝置 110、130。 電子裝置 110、130 可以通過電腦網路 (未圖示) 彼此通訊。電子裝置110、130 可以包括至少一個用戶端 (client) 110 和至少一個伺服器 (server) 130。例如,用戶端 110 可以包括可擕式通訊設備、電腦設備、可擕式多媒體設備、可擕式醫療設備、照相機、可穿戴設備或家用設備中的至少一個,但是不限於此。伺服器 130 可以向用戶端 110 提供多個服務。由此,伺服器 130 可以具備用於提供服務的資料庫 (database,DB) 。根據多個實施例,伺服器 130 可以向用戶端 110 提供哼唱檢索 (query by humming ,QbH) 服務。由此,伺服器 130 可以儲存多個音訊檔或關於音訊檔的元資料(metadata)中的至少一個。
根據多個實施例,在 141 操作中,用戶端 110 可以檢測到音訊信號。用戶端 110 可以基於用戶的請求在特定時間間隔內收集音訊信號。音訊信號可以與使用者想要搜索的旋律有關。例如,音訊信號可以包括使用者語音或在外部環境中播放的音樂中的至少一個。之後,在 143 操作中,用戶端 110 將音訊信號傳送到伺服器 130。
在 143 操作中,當從用戶端 110 接收到音訊信號時,伺服器 130 可以在 145 操作中從音訊信號中提取第一序列 q。第一序列 q 可以由數位向量組成。由此,伺服器 130 可以從音訊信號中提取數位向量,並且從數位向量中獲取第一序列 q。此時,第一序列 q 具有特定長度 a,並且每個值 (value) 即數位向量可以具有連續排列的結構。
在 147 操作中,伺服器 130 可以計算第一序列 q 和預儲存的第二序列 s 中的每個的相似度。此時,伺服器 130 可以儲存音訊檔或關於音訊檔的元資料中的至少一個,以及音訊檔的第二序列 s。在此,每個第二序列 s 可以從一個音訊檔的至少一部分區域中提取,並且可以由數位向量組成。由此,伺服器 130 從一個音訊檔的至少一部分區域中提取數位向量,並從數位向量中獲取第二序列 s 中的一個。此時,每個第二序列 s 具有特定長度 b,每個值 (value) 即數位向量可以具有連續排列的結構。並且,伺服器 130 可以通過動態音符匹配 (dynamic note matching,DNM) 計算第一序列 q 和第二序列 s 中的每個的相似度。伺服器 130 可以縮減第一序列 q 和第二序列 s,並且基於此來計算相似度。
在 149 操作中,伺服器 130 可以生成包括第二序列 s 中的至少一個的回饋資訊。伺服器 130 可以基於相似度選擇第二序列 s 中的至少一個。根據一個實施例,伺服器 130 可以檢測相似度中的最大值,並選擇與其對應的第二序列 s。根據其他實施例,伺服器 130 可以檢測超過預定閾值的相似度中的至少一個,並選擇與其對應的第二序列 s。並且,伺服器 130 可以生成回饋資訊以包括與第二序列中的至少一個關聯的音訊檔的元資料。之後,在 151 操作中,伺服器 130 可以將回饋資訊傳送到用戶端 110。
在 151 操作中,當從伺服器 130 接收到回饋資訊時,用戶端 110 可以在 153 操作中處理回饋資訊。根據一個實施例,用戶端 110 可以輸出回饋資訊。根據其他實施例,用戶端 110 可以將回饋資訊傳送到其他電子裝置 (未圖示) 。
圖 2 是示出根據多個實施例的電子裝置 110、130 的附圖。
參考圖 2,根據多個實施例的系統 100 包括多個電子裝置 110、130。 電子裝置 110、130 可以通過電腦網路 200 彼此通訊。例如,電腦網路200 可以包括遠距離無線通訊電腦網路或近距離無線通訊電腦網路中的至少一個。電子裝置 110、130 可以包括至少一個用戶端 110 和至少一個伺服器 130。
根據多個實施例,用戶端 110 可以包括輸入模組 211、輸出模組 213、介面 215、通訊模組 217、記憶體 219 或處理器 221 中的至少一個。在一些實施例中,可以省略用戶端 110 的構成要素中的至少一個,或者可以將一個或多個其他構成要素添加到用戶端 110 中。
輸入模組 211 可以輸入來自用戶端 110 外部的信號或用於用戶端 110的至少一個構成要素的命令。此時,信號可以包括音訊信號或視訊訊號中的至少一個。例如,輸入模組 211 可以包括麥克風 (microphone) 、照相機模組、滑鼠 (mouse) 、鍵盤 (keyboard) 或各種感測器 (sensor) 中的至少一個。
輸出模組 213 向用戶端 110 的外部提供資訊。輸出模組 213 可以包括提供視覺資訊的顯示模組或提供聽覺資訊的音訊模組中的至少一個。例如, 顯示模組可以包括顯示器、全息設備或投影機中的至少一個。在一些實施例中,顯示模組可以與用於感知觸摸的至少一個感測器組合。
介面 215 可以將用戶端 110 與其他電子裝置 (未圖示) 直接或無線連接。作為一例,介面 215 可以包括與其他電子裝置進行物理連接的連接器。 作為一例,介面 215 可以包括 HDMI (high definition multimedia interface) 、USB (universal serial bus) 介面、SD (secure digital) 卡介面或音訊介面中的至少一個。
通訊模組 217 可以執行與用戶端 110 中的外部設備的通訊。通訊模組217 可以在用戶端 110 和外部設備之間建立通訊通道,並且可以通過通訊通道執行與外部設備的通訊。通訊模組 217 可以包括有線通訊模組或無線通訊模組中的至少一個。例如,無線通訊模組可以通過電腦網路 200 執行與外部設備的通訊。
記憶體 219 可以儲存由用戶端 110 的至少一個構成要素使用的多個資料。例如,記憶體 219 可以包括易失性記憶體或非易失性記憶體中的至少一個。資料可以包括程式或相關的輸入資料或輸出資料。
處理器 221 可以執行記憶體 219 的程式以控制用戶端 110 的至少一個構成要素,並且執行資料處理或計算。處理器 221 可以通過輸入模組 211 或介面 215 檢測音訊信號。處理器 221 可以基於通過輸入模組 211 輸入的用戶請求在特定時間間隔內收集音訊信號。音訊信號可以與使用者想要搜索的旋律有關。例如,音訊信號可以包括使用者語音或在外部環境中播放的音樂中的至少一個。處理器 221 可以通過通訊模組 217 將音訊信號傳送到伺服器 130。處理器 221 可以通過通訊模組 217 從伺服器 130 接收與音訊信號對應的回饋資訊,並處理回饋資訊。根據一個實施例,處理器 221 可以通過輸出模組 213 輸出回饋資訊。根據其他實施例,處理器 213 可以通過介面 215 將回饋資訊傳送到其他電子裝置 (未圖示) 。
根據多個實施例,伺服器 130 可以包括通訊模組 237、記憶體 239 或處理器 241 中的至少一個。在一些實施例中,可以省略伺服器 130 的構成要素中的至少一個,或者可以將一個或多個其他構成要素添加到伺服器130 中。
通訊模組 237 可以執行與伺服器 130 中的外部設備的通訊。通訊模組237 可以在伺服器 130 和外部設備之間建立通訊通道,並且可以通過通訊通道執行與外部設備的通訊。通訊模組 237 可以包括有線通訊模組或無線通訊模組中的至少一個。例如,無線通訊模組可以通過電腦網路 200 執行與外部設備的通訊。
記憶體 239 可以儲存由伺服器 130 的至少一個構成要素使用的多個資料。例如,記憶體 239 可以包括易失性記憶體或非易失性記憶體中的至少一個。資料可以包括程式或相關的輸入資料或輸出資料。記憶體 239 可以具備用於向用戶端 110 提供服務的資料庫。資料庫可以儲存多個音訊檔或關於音訊檔的元資料中的至少一個。
處理器 241 可以執行記憶體 239 的程式以控制伺服器 130 的至少一個構成要素,並且執行資料處理或計算。處理器 241 可以通過通訊模組 237 從用戶端 110 接收音訊信號。處理器 241 可以計算音訊信號和儲存在記憶體 239 中的音訊檔中的每個的相似度。此時,處理器 241 可以通過動態音符匹配 (DNM) 計算音訊信號和音訊檔中的每個的相似度。處理器241 可以通過通訊模組 237,並基於相似度,將音訊檔中的至少一個元資料回饋到用戶端 110。此時,處理器 241 可以生成包括元資料的回饋資訊,並將回饋資訊傳送到用戶端 110。
根據多個實施例,處理器 241 可以從音訊信號中提取第一序列 q,並縮減第一序列 q 以獲取第一區間序列。第一序列 q 可以由數位向量組成。由此,伺服器 241 可以從音訊信號中提取數位向量,並且從數位向量中獲取第一序列 q。此時,第一序列 q 具有特定長度 a,並且每個值 (value) 即數字向量可以由連續排列的至少一個第一區間組成。由此,處理器 241基於第一區間將第一序列 q 縮減成第一區間序列。此時,第一區間序列可以指第一區間的值 (A_value) 即關於數字向量和長度 (A_duration) 的序列。
根據多個實施例,處理器 241 可以從音訊檔的第二序列 s 中獲取縮減的第二區間序列。此時,第二序列 s 或第二區間序列中的至少一個儲存在記憶體 239 中。在此,每個第二序列 s 可以從一個音訊檔的至少一部分區域中提取,並且可以由數位向量組成。此時,每個第二序列 s 具有特定長度 b,並且每個值 (value) 即數字向量可以由連續排列的至少一個第二區間組成。每個第二區間序列可以基於來自第二序列 s 中的一個第二區間來縮減。此時,每個第二區間序列可以指第二區間的值 (B_value) 即關於數字向量和長度 (B_duration) 的序列。
根據多個實施例,處理器 241 可以通過動態音符匹配 (DNM) 計算第一區間序列和每個第二區間序列的相似度。處理器 241 可以基於第一區間 序列和每個第二區間序列生成成本矩陣 (costmatrix) 。此時,處理器 241可以通過對應第一區間生成成本矩陣的至少一個列 (row) ,並且可以通過對應第二區間生成成本矩陣的至少一個行 (column) 。處理器 241 在成本矩陣中檢測翹曲路徑 (warping path) ,並且可以利用翹曲路徑來計算第一區間序列和每個第二區間序列的相似度。
圖 3 是示出根據多個實施例的電子裝置 110 即用戶端 110 的操作方法的附圖。
參考圖 3,在 311 操作中,用戶端 110 可以檢測音訊信號。處理器 221 基於通過輸入模組 211 輸入的用戶的請求在特定時間間隔內收集音訊信號。音訊信號可以與使用者想要搜索的旋律有關。例如,音訊信號可以包括使用者語音或在外部環境中播放的音樂中的至少一個。之後,在 313 操作中,用戶端 110 將音訊信號傳送到伺服器 130。處理器 221 可以通過通訊模組 217 將音訊信號傳送到伺服器 130。
在 315 操作中,用戶端 110 可以從伺服器 130 接收到回饋資訊。處理器 221 可以通過通訊模組 217 從伺服器 130 接收與音訊信號對應的回饋資訊。回饋資訊可以包括對應於音訊信號而檢測到的至少一個音訊檔的元資料。對應於此,在 317 操作中,用戶端 110 可以處理回饋資訊。根據一個實施例,處理器 221 可以通過輸出模組 213 輸出回饋資訊。根據其他實施例,處理器 213 可以通過介面 215 將回饋資訊傳送到其他電子裝置 (未圖示) 。
圖 4 是示出根據多個實施例的電子裝置 130 即伺服器 130 的操作方法的附圖。
參考圖 4,在 411 操作中,伺服器 130 可以從外部設備即用戶端 110 接收到音訊信號。處理器 241 可以通過通訊模組 237 從用戶端 110 接收音訊信號。音訊信號可以與使用者想要搜索的旋律有關。例如,音訊信號可以包括使用者語音或在外部環境中播放的音樂中的至少一個。
在 143 操作中,伺服器 130 可以從音訊信號中提取第一序列 q。第一序列 q 可以由數位向量組成。由此,伺服器 130 可以從音訊信號中提取數位向量,並且從數位向量中獲取第一序列 q。此時,第一序列 q 具有特定長度 a,並且每個值 (value) 即數字向量可以由連續排列的至少一個第一區間組成。例如,第一序列 q 可以具有如下 [數學式 1] 所述的結構,並且在這種情況下,第一序列 q 的長度 (q_length)  (n) 可以是 8。 [數學式 1] q = [3,3,3,3,3,4,4,4]
在 415 操作中,伺服器 130 可以計算第一序列 q 和預儲存的第二序列 s 的相似度。此時,第二序列 s 或第二區間序列中的至少一個儲存在記憶體 239 中。在此,每個第二序列 s 可以從一個音訊檔的至少一部分區域中提取,並且可以由數位向量組成。此時,每個第二序列 s 具有特定長度 b,並且每個值即數字向量可以由連續排列的至少一個第二區間組成。例如,第二序列 s 中的一個可以具有如下 [數學式 2] 所述的結構,並且在這種情況下,第二序列 s 中的一個的長度 (s_length)  (m) 可以是 10。處理器 241 可以通過動態音符匹配 (DNM) 計算第一序列 q 和第二序列 s 的相似度。 [數學式 2] s = [1,1,1,1,1,1,3,3,3,3]
圖 5 是示出圖 4 的計算相似度的操作的附圖。圖 6、圖 7、圖 8、圖 9、 圖 10、圖 11、圖 12 及圖 13 是用於說明圖 4 的計算相似度的操作的附圖。
參考圖 5,在 511 操作中,伺服器 130 可以獲取第一序列 q 的第一區間序列 A。處理器 241 可以基於第一序列 q 的第一區間將第一序列 q 縮減成第一區間序列 A。此時,第一區間序列 A 可以指第一區間的值 (A_value) 即數位向量和長度 (A_duration) ,例如關於 (A_value,A_duration) 的序列。例如,第一區間序列 A 從如上 [數學式 1] 所述的結構的第一序列 q 進行縮減,具有如下  [數學式 3] 所述的結構,並且在這種情況下,第一區間序列 A 的長度 (A_length) 可以是 2。 [數學式 3] A = [ (3,5) , (4,3) ]
在 513 操作中,伺服器 130 可以獲取第二序列 s 的第二區間序列 B。 第二區間序列 B 可以基於第二序列 s 中的一個第二區間進行縮減。此時,第二區間序列 B 可以指第二區間的值 ( B_value ) 即數位向量和長度 (B_duration) ,例如關於 (B_value,B_duration) 的序列。根據一個實施例,與第二序列 s 中的一個對應的第二區間序列 B 可以儲存在記憶體 239 中。根據其他實施例,處理器 241 可以縮減第二序列 s 中的一個以獲取第二區間序列 B。例如,第二區間序列 B 從如上 [數學式 2] 所述的結構的第二序列 s 進行縮減,具有如下 [數學式 4] 所述的結構,並且在這種情況下,第二區間序列 B 的長度 (B_length) 可以是 2。 [數學式 4] B = [ (1,6) , (3,4) ]
在 515 操作中,伺服器 130 可以基於第一區間序列 A 和第二區間序列B 來生成成本矩陣 (costmatrix) 。處理器 241 如圖 6 所示可以生成用於動態音符匹配 (DNM) 的成本矩陣 600。處理器 241 可以通過對應第一區間序列 A 的第一區間生成成本矩陣 600 的至少一個列 (row) ,並且可以通過對應第二區間序列 B 的第二區間生成成本矩陣 600 的至少一個行 (column) 。此時,成本矩陣 600 可以包括至少一個向量區域 610。每個向量區域 610可以通過第一區間中的一個和第二區間中的一個生成。在此,每個向量區域 610 作為二維向量區域可以由第一區間中的一個的值 (A_value) 和長度 (A_duration) 及第二區間中的一個的值 (B_value) 和長度 (B_duration) 確定。根據多個實施例,對於用於動態音符匹配 (DNM) 的成本矩陣 600 可以存在預定義的翹曲規則 (warping rule) 。
根據第一翹曲規則,在成本矩陣 600 中,翹曲路徑可以沿著從下側及左側延伸到上側或右側中的至少一個的方向行進。例如,當成本矩陣 600 包括根據多個列和多個行的多個向量區域 610 時,翹曲路徑可以向從向量區域 610 中的一個向上側延伸的垂直方向、向右側延伸的水準方向或向上側和右側之間延伸的對角線方向中的一個行進。
根據第二翹曲規則,在每個向量區域 610 中,翹曲路徑可以沿著向上側和右側之間延伸的對角線方向行進。實際上,如圖 7 及圖 8 所示,每個向量區域 610 根據一個第一區間的值 (A_value) 和長度 (A_duration) 及一個第二區間的值 (B_value) 和長度 (B_duration) 表示元素的排列,並且可以對每個向量區域 610 內每個元素賦予成本 (cost) 。在每個向量區域610 的元素中,可以確定翹曲路徑 710、810 的出發位置 711、811 和到達位置 713、813。此時,根據翹曲路徑 710、810 的出發位置 711、811,可以不同地確定翹曲路徑 710、810 的到達位置 713、813。翹曲路徑 710、810可以以接觸向量區域 610 的上側邊或右側邊中的至少一個的方式行進。作為一例,如圖 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]) 。
在 517 操作中,伺服器 130 可以計算關於成本矩陣 600 的每個向量區域 610 的成本 (cost) 。處理器 241 可以利用如下 [數學式 5] 所述的第一區間的值 (A_value) 和長度 (A_duration) 及第二區間的值 (B_value) 和長度(B_duration) 來計算關於每個向量區域 610 的成本。根據上述的第二翹曲規則,[數學式 5] 可以翹曲為下述的 [數學式 6]。 [數學式 5] cost[n,m] = |A_value[n] - B_value[m]| • min (A_duration[n],B_duration[m]) [數學式 6] cost[n,m] = |A_value[n] - B_value[m]| • min (有效距離) ,有效距離≠0
處理器 241 可以計算關於成本矩陣 600 的最下側列和最左側行的向量區域 610 的成本。例如,對於如圖 10 所示的成本矩陣 600,處理器 241 可以計算關於成本矩陣 600 的最下側列和最左側行的向量區域 610、1011、1013、1015 的成本。在此,處理器 241 可以基於上述的第二翹曲規則計算關於每個向量區域 610、1011、1013、1015 的成本。具體而言,處理器 241 可以計算當翹曲路徑到達向量區域 610、1011、1013、1015 的上側邊時的成本和翹曲路徑到達向量區域 610、1011、1013、1015 的右側邊時的成本。
然後,成本矩陣 600 由多個列和多個行組成時,處理器 241 可以計算要從多個向量區域 610 計算成本的目標 (target) 向量區域 610、1017 的成 本。此時,處理器 241 基於上述的第一翹曲規則,並且利用已經從向量區域 610 計算出成本的基準向量區域 1011、1013、1015,可以計算目標向量區域 1017 的成本。例如,處理器 241 如圖 11、圖 12 及圖 13 所示可以從基準向量區域 1011、1013、1015 中的每個計算目標向量區域 1017 的候選成本。處理器 241 可以選擇候選成本中的最小值作為目標向量區域 1017 的成本。
由此,處理器 241 可以選擇目標向量區域 1017 的下側列和左側行的基準向量區域 1011、1013、1015。在此,基準向量區域 1011、1013、1015可以包括第一基準向量區域 1011、第二基準向量區域 1013 及第三基準向量區域 1015。第一基準向量區域 1011 是設置在目標向量區域 1017 的下側及左側即對角線方向的向量區域 610,第二基準向量區域 1013 是設置在目標向量區域 1017 的下側的向量區域 610,第三基準向量區域 1015 是設置在目標向量區域 1017 的左側的向量區域 610。
處理器 241 如圖 11 所示可以從第一基準向量區域 1011 計算目標向量區域 1017 的候選成本。在此,處理器 241 如下 [數學式 7] 所述可以計算當第一基準向量區域 1011 中翹曲路徑到達上側邊時的候選成本。並且,處理器 241 如下 [數學式 8] 所述可以計算當第一基準向量區域 1011 中翹曲路徑到達右側邊時的候選成本。 [數學式 7] cost_candidate[0] = costArr[n-1,m-1] + dist[n,m] • min(A_duration[n],B_duration[m]) + dist[n-1, m-1] • B_durmat[n-1,m-1], dist[n,m] = |A_value[n] - B_value[m]|, dist[n-1,m-1] = |A_value[n-1] - B_value[m-1]| [數學式 8] cost_candidate[0] = costArr[n-1,m-1] + dist[n,m] • min(A_duration[n],B_duration[m]) + dist[n-1,m-1] • A_durmat[n-1,m-1]
處理器 241 如圖 12 所示可以從第二基準向量區域 1013 中計算目標向量區域 1017 的候選成本。在此,處理器 241 如下 [數學式 9] 所述可以計算當第二基準向量區域 1013 中翹曲路徑到達上側邊時的候選成本。並且,處理器 241 如下 [數學式 10] 所述可以計算當第二基準向量區域 1013 中翹曲路徑到達右側邊時的候選成本。 [數學式 9] cost_candidate[1] = costArr[n-1,m] + dist[n,m] • min (A_duration[n],B_durmat[n-1,m]) [數學式 10] cost_candidate[1] = costArr[n-1,m] + dist[n,m] • A_duration[n] + dist[n-1,m] • A_durmat[n-1,m] dist[n-1,m] = |A_value[n-1] - B_value[m]|
處理器 241 如圖 13 所示可以從第三基準向量區域 1015 計算目標向量區域 1017 的候選成本。在此,處理器 241 如下 [數學式 11] 所述可以計算當第三基準向量區域 1015 中翹曲路徑到達上側邊時的候選成本。並且,處理器 241 如下 [數學式 12] 所述可以計算當第三基準向量區域 1017 中翹曲路徑到達右側邊時的候選成本。 [數學式 11] 10 cost_candidate[2] = costArr[n,m-1] + dist[n,m] • B_duration[m] + dist[n,m-1] • B_durmat[n,m-1], dist[n,m-1] = |A_value[n] - B_value[m-1]| [數學式 12] cost_candidate[2] = costArr[n,m-1] + dist[n,m] • min (A_durmat[n,m-1],B_duration[m])
在 519 操作中,伺服器 130 可以在成本矩陣 600 中檢測翹曲路徑。處理器 241 考慮到成本矩陣 600 的所有向量 610 的成本,可以在成本矩陣 600中檢測最優的翹曲路徑。
在 521 操作中,伺服器 130 可以基於翹曲路徑來計算第一區間序列 A 和第二區間序列 B 的相似度。處理器 241 可以分析成本矩陣 600 的翹曲路 徑來計算第一區間序列 A 和第二區間序列 B 的相似度。之後,伺服器 130 可以返回圖 4。
再次參考圖 4,在 417 操作中,伺服器 130 可以生成包括第二序列 s 中的至少一個的回饋資訊。處理器 241 可以基於第一序列 q 和第二序列 s 的相似度來選擇第二序列 s 中的至少一個。根據一個實施例,處理器 241 可以檢測相似度中的最大值,並選擇與其對應的第二序列 s。根據其他實施例,處理器 241 可以檢測超過預定閾值的相似度中的至少一個,並選擇其對應的第二序列 s。並且,處理器 241 可以生成回饋資訊以包括與第二序列中的至少一個關聯的音訊檔的元資料。
在 419 操作中,伺服器 130 可以將回饋資訊傳送到外部設備即用戶端110。處理器 241 可以通過通訊模組 237 將回饋資訊傳送到用戶端 110。
圖 14 是示出根據一些實施例的電子裝置 110、130 的操作方法的附圖。
參考圖 14,根據一些實施例的電子裝置 110、130 可以在 1411 操作中檢測音訊信號。處理器 221、241 可以基於用戶的請求在特定時間間隔內收 集音訊信號。音訊信號可以與使用者想要搜索的旋律有關。例如,音訊信號可以包括使用者語音或在外部環境中播放的音樂中的至少一個。之後,在1413 操作中,電子裝置 110、130 可以從音訊信號中提取第一序列 q。處理器 221、241 可以從音訊信號中提取第一序列 q。通過此,在 1415 操作中,電子裝置 110、130 可以計算第一序列 q 和預儲存的第二序列 s 中的每個的相似度。處理器 221、241 可以通過動態音符匹配 (DNM) 來計算第一序列 q 和第二序列 s 的相似度。此時,電子裝置 110、130 的記憶體 219、239 可以儲存音訊檔或關於音訊檔的元資料中的至少一個,以及音訊檔的第二序列 s。
在 1417 操作中,電子裝置 110、130 可以生成包括第二序列 s 中的至少一個的回饋資訊。處理器 221、231 可以生成回饋資訊。之後,在 1419 操作中,電子裝置 110、130 可以處理回饋資訊。根據一個實施例,處理器221、231 可以輸出回饋資訊。根據其他實施例,處理器 221、231 可以將回饋資訊傳送到其他電子裝置 (未圖示) 。
根據多個實施例,電子裝置 110、130 可以通過分別縮減和比較輸入信號和預儲存的資料,從而減少電子裝置 110、130 所需的計算量。此時,電 子裝置 110、130 基於從被輸入的信號縮減的第一區間序列 A 和從預儲存的資料中縮減的第二區間序列 B 生成成本矩陣 610,並且可以通過動態音符匹配 (DNM) 在成本矩陣 610 中檢測翹曲路徑。通過此,電子裝置 110、130 從輸入的信號和預儲存的資料中獲取縮減的資訊,從而可以使用動態程式設計。因此,即使電子裝置 110、130 減少了計算量,也可以獲取期望的結果。這可以提高電子裝置 110、130 的操作效率並提高通過電子裝置提供的服務品質。
根據多個實施例的電子裝置 110、130 的操作方法用於動態音符匹配 (DNM) ,其包括:基於每個值連續排列的至少一個第一區間來縮減從輸入信號中提取的第一序列 q 以獲取第一區間序列 A 的操作;從預儲存的第二序列 s 中獲取基於每個值連續排列的至少一個第二區間來縮減的第二區間序列 B 的操作;以及計算上述第一區間序列 A 和上述第二區間序列 B的相似度的操作。
根據多個實施例,上述第一區間序列 A 可以表示對上述第一區間的值和長度的序列,上述第二區間序列 B 可以表示對上述第二區間的值和長度 的序列。
根據多個實施例,計算上述相似度的操作可以包括:基於上述第一區間序列 A 和上述第二區間序列 B 生成包括至少一個向量區域 610 的成本矩 陣 610 的操作;計算關於上述向量區域 610 成本的操作;基於上述成本來在上述成本矩陣 610 中檢測翹曲路徑的操作;以及利用上述翹曲路徑來計算上述相似度的操作。
根據多個實施例,生成上述成本矩陣 610 的操作可以包括:與上述第一區間對應地生成上述成本矩陣 610 的至少一個列的操作;以及與上述第 二區間對應地生成上述成本矩陣 610 的至少一個行的操作。
根據多個實施例,每個上述向量區域 610 可以通過上述第一區間中的一個和上述第二區間中的一個來生成。
根據多個實施例,上述成本計算操作可以包括:利用上述第一區間的值和長度及上述第二區間的值和長度來計算關於上述成本矩陣 610 的最下 側列和最左側行的向量區域 610 的成本的操作;當上述成本矩陣 610 由多個列和多個行組成時,選擇目標向量區域 1017 的下側列和左側行的基準向量區域 1011、1013、1015 的操作;以及基於上述基準向量區域 1011、1013、1015 的成本來計算上述目標向量區域 1017 的成本的操作。
根據多個實施例,計算上述目標向量區域 1017 的成本的操作可以包括:從每個上述基準向量區域 1011、1013、1015 中計算上述目標向量區域1017 的候選成本的操作;以及選擇上述候選成本中的最小值來作為上述目標向量區域 1017 的成本的操作。
根據多個實施例,上述候選成本計算操作可以包括:從上述基準向量區域 1011、1013、1015 中的一個的上側邊的成本計算上述候選成本中的一 個的操作;以及從上述基準向量區域 1011、1013、1015 中的一個的右側邊 的成本計算上述候選成本中的另一個的操作。
根據多個實施例,獲取上述第一區間序列 A 的操作可以包括:從外部設備接收音訊信號的操作;從上述音訊信號提取上述第一序列 q 的操作;以及縮減上述第一序列 q 以獲取上述第一區間序列 A 的操作。
根據多個實施例,獲取上述第二區間序列 B 的操作及計算上述相似度的操作可以在預儲存的多個第二序列 s 上逐個執行。
根據多個實施例,上述方法還包括:基於上述相似度來選擇上述第二序列 s 中的至少一個的操作;以及將與上述選擇的第二序列 s 關聯的元資料回饋到上述外部設備的操作。
根據多個實施例的電子裝置 110、130 用於動態音符匹配 (DNM) ,其包括:處理器 221、241,構成為從被輸入的信號提取第一序列 q,及記憶體 239,其與上述處理器 221、241 連接,並且儲存至少一個第二序列。
根據多個實施例,上述處理器 221、241 構成為:將上述第一序列基於每個值連續排列的第一區間來縮減 q 以獲取第一區間序列 A;從上述第二序列 s 中獲取基於每個值連續排列的至少一個第二區間來縮減的第二區間序列 B;以及計算上述第一區間序列 A 和上述第二區間序列 B 的相似度。
根據多個實施例,上述第一區間序列 A 可以表示上述第一區間的值和長度的序列,上述第二區間序列 B 可以表示上述第二區間的值和長度的序 列。
根據多個實施例,上述處理器 221、241 構成為:基於上述第一區間序列 A 和上述第二區間序列 B 生成包括至少一個向量區域 610 的成本矩陣610;計算關於上述向量區域 610 的成本;基於上述成本來在上述成本矩陣610 中檢測翹曲路徑;以及利用上述翹曲路徑計算上述相似度。
根據多個實施例,上述處理器 221、241 構成為:與上述第一區間對應地生成上述成本矩陣 610 的至少一個列;與上述第二區間對應地生成上述成本矩陣 610 的至少一個行;以及因此,上述向量區域 610 分別由上述第一區間中的一個和上述第二區間中的一個來生成。
根據多個實施例,上述處理器 221、241 構成為:利用上述第一區間的值和長度及上述第二區間的值和長度來計算關於上述成本矩陣 610 的最下側列和最左側行的向量區域 610 的成本;當上述成本矩陣 610 由多個列和多個行組成時,選擇目標向量區域 1017 的下側列和左側行的基準向量區域 1011、1013、1015;以及基於上述基準向量區域 1011、1013、1015 的成本計算上述目標向量區域 1017 的成本。
根據多個實施例,上述處理器 221、241 構成為:從每個上述基準向量區域 1011、1013、1015 中計算上述目標向量區域 1017 的候選成本;以及選擇上述候選成本中的最小值來作為上述目標向量區域 1017 的成本。
根據多個實施例,上述處理器 221、241 構成為:從上述基準向量區域 1011、1013、1015 中的一個的上側邊的成本計算上述候選成本中的一個; 以及從上述基準向量區域 1011、1013、1015 中的一個的右側邊的成本計算上述候選成本中的另一個。
根據多個實施例,上述處理器 221、241 構成為:從外部設備,例如用戶端 110 接收音訊信號;從上述音訊信號提取上述第一序列 q;以及縮減上述第一序列 q 以獲取上述第一區間序列 A。
根據多個實施例,上述處理器 221、241 構成為:計算分別與預儲存的多個第二序列 s 對應的多個相似度;基於上述相似度來選擇上述第二序列 s 中的至少一個;以及將與上述選擇的第二序列 s 關聯的元資料回饋到上述外部設備。
本文的多個實施例可以體現為包括儲存在通過機器 (machine)  (例如: 電子裝置 110、130) 可讀的儲存介質 (storage medium)  (例如:記憶體 219、239) 中的一個或多個命令語言的軟體。例如,機器的處理器 (例如:處理器 221、241) 可以調用並執行從儲存介質儲存的一個或多個命令語言中的至少一個命令。這使機器能夠運行以根據至少一個被調用的命令語言來執行至少一個功能。一個或多個命令語言可以包括通過編譯器生成的代碼或通過解譯器可以執行的代碼。機器可讀的儲存介質可以以非暫時性 (non-transitory) 儲存介質的形式提供。在此,「非暫時性」只是表示儲存介質是有形 (tangible) 設備,不包括信號 (signal)  (例如:電磁波) ,並且該術語不區分將資料半永久地儲存在儲存介質中的情況和將其臨時儲存的情況。
根據多個實施例的非暫時性 (non-transitory) 電腦可讀 儲存介質 (computer-readable storage medium) 可以儲存一個或多個程式來運行:基於每個值連續排列的至少一個第一區間來縮減從輸入信號中提取的第一序列 q 以獲取第一區間序列 A 的操作;從預儲存的第二序列 s 中獲取基於每個值連續排列的至少一個第二區間來縮減的第二區間序 列 B 的操作;以及計算上述第一區間序列 A 和上述第二區間序列 B 的相似度的操作。
應當理解,本文的多個實施例及其中使用的術語並不是將在本文中記載的技術限制為特定的實施形式,而是包括相應實施例的多個翹曲、等同 物、及/或替代物。有關附圖的說明,對於相似的構成要素可以使用相似的參考符號。除非上下文另外明確指出,否則單數表達可以包括複數表達。在本文中,「A 或 B」、「A 及/或 B 中的至少一個」、「  A、B 或 C」或「A、 B 及/或 C 中的至少一個」等表達可以包括一起列出的所有可能的組合。「第一」、「第二」、「第一個」或「第二個」等表達可以不考慮順序或重要程度來修飾相應構成要素,,並且只是用於區分一個構成要素和其他構成要素,不是限定相應構成要素。當提到一些 (例如:第一) 構成要素與其他 (例如:第二) 構成要素「 (功能上或通訊上) 連接」或「接通」時,上述一些構成要素與上述其他構成要素可以直接連接或通過其他構成要素 (例如:第三構成要素) 連接。
在本文中使用的術語「模組」包括由硬體、軟體或固件組成的單元, 並且可以與例如邏輯、邏輯塊、元件或電路等術語互換使用。模組可以是整體構成的元件或執行一個或多個功能的最小單位或其一部分。例如,模組可以由 ASIC (application-specific integrated circuit) 構成。
根據多個實施例,記述的構成要素的每個構成要素 (例如:模組或程式) 可以包括單數或多數的個體。根據多個實施例,可以省略上述相應構成要素中的一個或多個構成要素或操作,或者可以添加一個或多個其他構成要素或操作。可以將替代或添加的多數構成要素 (例如:模組或程式) 合併成一個構成要素。這種情況下,合併的構成要素可以執行與合併之前多數構成要素中的相應構成要素所執行的相同或相似的多數構成要素中的每個構成要素的一個或多個功能。根據多個實施例,通過模組、程式或其他構成要素執行的操作可以順序地、並行地、重複地或啟發式地執行,或者一個或多個操作可以以其他循序執行、省略或添加一個或多個其他操作。
100:系統 110:電子裝置(用戶端) 130:電子裝置(伺服器) 141、143、145、147、149、151、153:操作 200:電腦網路 211:輸入模組 213:輸出模組 215:介面 217:通訊模組 219:記憶體 221:處理器 237:通訊模組 239:記憶體 241:處理器 311、313、315、317:操作 411、413、415、417、419:操作 511、513、515、517、519、521:操作 600:成本矩陣 610:向量區域 710、810:翹曲路徑 711、811:出發位置 713、813:到達位置 1011、1013、1015、1017:向量區域 1411、1413、1415、1417、1419:操作
圖 1 是示出根據多個實施例的系統及其信號流動的附圖。 圖 2 是示出根據多個實施例的電子裝置的附圖。 圖 3 是示出根據多個實施例的電子裝置的操作方法的附圖。 圖 4 是示出根據多個實施例的電子裝置的操作方法的附圖。 圖 5 是示出圖 4 的計算相似度的操作的附圖。 圖 6、圖 7、圖 8、圖 9、圖 10、圖 11、圖 12 及圖 13 是用於說明圖 4的計算相似度的操作的附圖。 圖 14 是示出根據一些實施例的電子裝置的操作方法的附圖。
511、513、515、517、519、521:操作

Claims (20)

  1. 一種電子裝置的操作方法,其中包括:利用一處理器,基於至少一第一序列的第一區間其中包含連續排列具有相同數值的數位向量,縮減從被輸入的信號中提取包含排列有上述數位向量的第一序列,以擷取第一區間序列,其中,第一區間序列是由(1)在第一區間連續排列具有相同值的一數位向量,以及(2)第一區間的一長度所構成;利用該處理器,基於至少一第二序列的第二區間其中包含連續排列具有相同數值的數位向量,縮減預儲存於一記憶體包含排列有上述數位向量的第二序列,以擷取第二區間序列,其中,第二區間序列是由(1)在第二區間連續排列具有相同值的一數位向量,以及(2)第二區間的一長度所構成;以及計算上述第一區間序列和上述第二區間序列的相似度的操作。
  2. 根據請求項1所述的電子裝置的操作方法,其中,上述第一區間序列的結構為於該第一區間中連續排列且具有相同值的數位向量對及該第一區間被設置的長度;以及其中,上述第二區間序列的結構為於該第二區間中連續排列且具有相同值的數位向量對及該第二區間被設置的長度。
  3. 根據請求項1所述的電子裝置的操作方法,其中,利用該處理器計算上述相似度的操作包括:基於上述第一區間序列和上述第二區間序列,生成包括至少一個向量區域的成本矩陣的操作;計算對上述向量區域的成本的操作;基於上述成本來在上述成本矩陣檢測翹曲路徑的操作;以及利用上述翹曲路徑來計算上述相似度的操作。
  4. 根據請求項3所述的電子裝置的操作方法,其中,利用該處理器生成上述成本矩陣的操作包括:與上述第一區間對應地生成上述成本矩陣的至少一個列的操作;以及與上述第二區間對應地生成上述成本矩陣的至少一個行的操作,每個上述向量區域通過上述第一區間中的一個和上述第二區間中的一個來生成。
  5. 根據請求項4所述的電子裝置的操作方法,其中,上述成本利用該處理器計算操作包括:利用上述第一區間的該值和該長度及上述第二區間的該值和該長度,計算對上述成本矩陣的最下側列和最左側行的向量區域的成本的操作;當上述成本矩陣由多個列和多個行組成時,選擇目標向量區域的下側列和左側行的基準向量區域的操作;以及基於上述基準向量區域的成本,計算上述目標向量區域的成本的操作。
  6. 根據請求項5所述的電子裝置的操作方法,其中,利用該處理器計算上述目標向量區域的成本的操作包括:從每個上述基準向量區域計算上述目標向量區域的候選成本的操作;以及選擇上述候選成本中的最小值來作為上述目標向量區域的成本的操作。
  7. 根據請求項6所述的電子裝置的操作方法,其中,利用該處理器計算上述候選成本的操作包括:從上述基準向量區域中的一個的上側邊的成本計算上述候選成本中的一個的操作;以及從上述基準向量區域中的一個的右側邊的成本計算上述候選成本中的另一個的操作。
  8. 根據請求項1所述的電子裝置的操作方法,其中,利用該處理器獲取上述第一區間序列的操作包括: 從外部設備接收音訊信號的操作;從上述音訊信號提取上述第一序列的操作;以及縮減上述第一序列來獲取上述第一區間序列的操作。
  9. 根據請求項8所述的電子裝置的操作方法,其中,在獲取上述第二區間序列的操作及計算上述相似度的操作中,對預儲存的多個第二序列逐個執行。
  10. 根據請求項9所述的電子裝置的操作方法,其中,還包括:基於上述相似度來選擇上述第二序列中的至少一個的操作;以及將與上述選擇的第二序列關聯的元資料回饋到上述外部設備的操作。
  11. 一種電子裝置,其中,包括:處理器,構成為從被輸入的信號提取第一序列,及記憶體,與上述處理器連接,儲存至少一個第二序列,上述處理器構成以執行:將上述第一序列基於至少該第一序列的第一區間其中包含連續排列具有相同數值的數位向量,縮減包含排列有上述數位向量的第一序列,以獲取一第一區間序列,其中,第一區間序列是由(1)在第一區間連續排列具有相同值的一數位向量,以及(2)第一區間的一長度所構成;從上述第二序列獲取基於至少該第二序列的第二區間其中包含連續排列具有相同數值的數位向量,縮減包含排列有上述數位向量的第二序列,以獲取一第二區間序列,其中,第二區間序列是由(1)在第二區間連續排列具有相同值的一數位向量,以及(2)第二區間的一長度所構成;以及計算上述第一區間序列和上述第二區間序列的相似度。
  12. 根據請求項11的電子裝置,其中,上述第一區間序列的結構為於該第一區間中連續排列且具有相同值的數位向量對及該第一區間被設置的長 度;以及,其中,上述第二區間序列的結構為於該第二區間中連續排列且具有相同值的數位向量對及該第二區間被設置的長度。
  13. 根據請求項11的電子裝置,其中,上述處理器更進一步構成以執行:基於上述第一區間序列和上述第二區間序列,生成包括至少一個向量區域的成本矩陣;計算對上述向量區域的成本;基於上述成本來在上述成本矩陣檢測翹曲路徑;以及利用上述翹曲路徑計算上述相似度。
  14. 根據請求項13的電子裝置,其中,上述處理器更進一步構成以執行:與上述第一區間對應地生成上述成本矩陣的至少一個列;與上述第二區間對應地生成上述成本矩陣的至少一個行;以及上述向量區域分別由上述第一區間中的一個和上述第二區間中的一個來生成。
  15. 根據請求項14的電子裝置,其中,上述處理器更進一步構成以執行:利用上述第一區間的該值和該長度及上述第二區間的該值和該長度來計算對上述成本矩陣的最下側列和最左側行的向量區域的成本;當上述成本矩陣由多個列和多個行組成時,選擇目標向量區域的下側列和左側行的基準向量區域;以及基於上述基準向量區域的成本來計算上述目標向量區域的成本。
  16. 根據請求項15的電子裝置,其中,上述處理器更進一步構成以執行: 從每個上述基準向量區域計算上述目標向量區域的候選成本;以及選擇上述候選成本中的最小值來作為上述目標向量區域的成本。
  17. 根據請求項16的電子裝置,其中,上述處理器更進一步構成以執行:從上述基準向量區域中的一個的上側邊的成本計算上述候選成本中的一個;以及從上述基準向量區域中的一個的右側邊的成本計算上述候選成本中的另一個。
  18. 根據請求項11的電子裝置,其中,上述處理器更進一步構成以執行:從外部設備接收音訊信號;從上述音訊信號提取上述第一序列;以及縮減上述第一序列來獲取上述第一區間序列。
  19. 根據請求項18的電子裝置,其中,上述處理器更進一步構成以執行:計算分別與預儲存的多個第二序列對應的多個相似度;基於上述相似度來選擇上述第二序列中的至少一個;以及將與上述選擇的第二序列關聯的元資料回饋到上述外部設備。
  20. 一種非暫時性電腦可讀儲存介質,其中,儲存一個或多個程式來運行:將從被輸入的信號中擷取的第一序列,基於至少一第一序列的第一區間其中包含連續排列具有相同數值的數位向量,縮減從被輸入的信號中提取包含排列有上述數位向量的第一序列,以獲取第一區間序列的操作,其中,第一區間序 列是由(1)在第一區間連續排列具有相同值的一數位向量,以及(2)第一區間的一長度所構成;從預儲存於一記憶體的第二序列中獲取基於至少一第二序列的第二區間其中包含連續排列具有相同數值的數位向量,縮減包含排列有上述數位向量的第二序列,以獲取第二區間序列的操作,其中,第二區間序列是由(1)在第二區間連續排列具有相同值的一數位向量,以及(2)第二區間的一長度所構成;以及計算上述第一區間序列和上述第二區間序列的相似度的操作。
TW109119332A 2019-06-11 2020-06-09 用於動態音符匹配的電子裝置及其操作方法 TWI778371B (zh)

Applications Claiming Priority (2)

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

Publications (2)

Publication Number Publication Date
TW202046141A TW202046141A (zh) 2020-12-16
TWI778371B true TWI778371B (zh) 2022-09-21

Family

ID=73656060

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109119332A TWI778371B (zh) 2019-06-11 2020-06-09 用於動態音符匹配的電子裝置及其操作方法

Country Status (5)

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

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
CN103988256A (zh) * 2011-12-05 2014-08-13 索尼公司 声音处理装置、声音处理方法、程序、记录介质、服务器装置、声音再现装置以及声音处理系统
TW201624320A (zh) * 2014-12-30 2016-07-01 富智康(香港)有限公司 影像片段搜尋方法及系統
CN109409496A (zh) * 2018-11-14 2019-03-01 重庆邮电大学 一种基于蚁群算法改进的ldtw序列相似度量方法

Family Cites Families (18)

* 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 類似区間検出装置
WO2013080449A1 (ja) * 2011-12-02 2013-06-06 パナソニック株式会社 音声処理装置、方法、プログラムおよび集積回路
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 日本電信電話株式会社 共通信号含有区間有無判定装置、方法、及びプログラム
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 腾讯科技(深圳)有限公司 音频识别方法、装置及存储介质
US10777188B2 (en) * 2018-11-14 2020-09-15 Sri International Time-frequency convolutional neural network with bottleneck architecture for query-by-example processing

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103988256A (zh) * 2011-12-05 2014-08-13 索尼公司 声音处理装置、声音处理方法、程序、记录介质、服务器装置、声音再现装置以及声音处理系统
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
TW201624320A (zh) * 2014-12-30 2016-07-01 富智康(香港)有限公司 影像片段搜尋方法及系統
CN109409496A (zh) * 2018-11-14 2019-03-01 重庆邮电大学 一种基于蚁群算法改进的ldtw序列相似度量方法

Also Published As

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

Similar Documents

Publication Publication Date Title
US9633042B2 (en) Object recognition trait analysis systems and methods
JP6350251B2 (ja) 経路情報処理装置、方法、及びプログラム
JP6429134B2 (ja) 勾配ヒストグラムに基づいて画像記述子を変換する方法および関連する画像処理装置
JP2015111339A (ja) 画像検索システム、画像検索装置、検索サーバ装置、画像検索方法、及び画像検索プログラム
JP2017004252A (ja) 画像情報処理システム
KR102468309B1 (ko) 영상 기반 건물 검색 방법 및 장치
JP6627365B2 (ja) 情報処理方法、情報処理装置、及びプログラム
US9418284B1 (en) Method, system and computer program for locating mobile devices based on imaging
TWI778371B (zh) 用於動態音符匹配的電子裝置及其操作方法
WO2019230593A1 (ja) 画像処理方法および画像処理装置
JP6822484B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP2007058603A (ja) パターン認識方法及び装置及びプログラム
KR102184275B1 (ko) 확률적 기법 기반의 저업로드 비용의 최적의 비공개적 회수 달성을 위한 전자 장치와 통신 시스템 및 그의 동작 방법
EP3514730A1 (en) Boundary search test support device and boundary search test support method
EP2890041A1 (en) Space division method, space division device, and space division program
TWI780563B (zh) 圖像定位模型獲取方法、終端和電腦可讀儲存介質
CN111597379B (zh) 音频搜索方法、装置、计算机设备和计算机可读存储介质
KR20170085396A (ko) 스캔도서 식별을 위한 특징벡터 클러스터링 및 데이터베이스 생성 방법
US9390347B2 (en) Recognition device, method, and computer program product
KR101915402B1 (ko) 점진적 그래프 최적화를 통한 특징점 매칭 방법
JP2010020421A (ja) 文字認識装置、文字認識方法、コンピュータプログラム、記憶媒体
JP2011034254A (ja) 類似検索装置、類似検索システム及び類似検索方法
JP6586852B2 (ja) 画像処理装置
KR102380540B1 (ko) 음원을 검출하기 위한 전자 장치 및 그의 동작 방법
KR20190143666A (ko) 이미지를 위치 데이터로 변환하여 제공하는 방법과 시스템 및 비-일시적인 컴퓨터 판독 가능한 기록 매체

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent