TWI483131B - 編碼格式偵測方法、裝置及電腦程式產品 - Google Patents
編碼格式偵測方法、裝置及電腦程式產品 Download PDFInfo
- Publication number
- TWI483131B TWI483131B TW102115467A TW102115467A TWI483131B TW I483131 B TWI483131 B TW I483131B TW 102115467 A TW102115467 A TW 102115467A TW 102115467 A TW102115467 A TW 102115467A TW I483131 B TWI483131 B TW I483131B
- Authority
- TW
- Taiwan
- Prior art keywords
- encoding format
- detecting
- search
- confidence score
- detection
- Prior art date
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本發明是有關於一種編碼格式偵測方法、裝置及電腦程式產品,且特別是有關於一種識別標籤的編碼格式偵測方法、裝置及電腦程式產品。
在現今資訊傳播的過程中,由於不同國家的不同語言導致需要在不同的字元編碼之間轉碼,以進行一致化的處理。以網頁伺服器而言,為了處理來自世界各處的資訊及其來源編碼,例如網際協議位址位址(Internet Protocol Address,IP Address)或是瀏覽器的預設語言等背景資訊可做為網頁伺服器轉碼成內部統一處理的編碼依據。
然而,在其它不同的應用上,並沒有足夠的背景資訊來判斷來源編碼,而造成後續處理上的困擾。舉例而言,MP3(MPEG Layer 3)是目前最為普遍的數位音樂格式,MP3檔案的識別標籤稱為MP3檔案識別標籤(Identify MP3,ID3),其用以記載例如是曲名、演唱、專輯名稱、年代等音樂相關資訊。但由於不同國家的不同語言導致這些音樂相關資訊是以各式各樣的格式進行編碼。以現今存在的數位播放器而言,由於這些音樂相
關資訊相當簡短使得背景資料不足,以現有的經驗法則(啟發式演算法)來偵測編碼格式的結果往往不盡理想而產生亂碼,帶來負面的使用經驗。
有鑑於此,本發明提供一種編碼格式偵測方法、裝置及電腦程式產品,其可更精確地偵測檔案的識別標籤的編碼格式。
本發明提供一種編碼格式偵測方法,用以偵測檔案的識別標籤的編碼格式。此方法先擷取識別標籤內的資訊,並聚集為一個字串。接著使用多種編碼格式偵測此字串所使用的編碼格式,以獲得多個偵測結果及各個偵測結果的信心分數。然後,判斷各信心分數是否大於門檻值,而當所有偵測結果的信心分數均不大於門檻值時,將各個偵測結果轉碼為通用編碼格式,並且利用搜尋引擎搜尋轉碼後的各個偵測結果,將搜尋筆數最多的偵測結果對應的編碼格式設定為識別標籤的編碼格式。
本發明提供一種編碼格式偵測裝置,用以偵測檔案的識別標籤的編碼格式。此裝置包括標籤擷取模組、編碼偵測模組、信心分數判斷模組、通用編碼轉換模組以及決策模組。標籤擷取模組會擷取識別標籤內的資訊,並聚集為一個字串。編碼偵測模組利用多種編碼格式偵測字串所使用的編碼格式,以獲得多個偵測結果及各個偵測結果的信心分數。信心分數判斷模組會判斷各個偵測結果的信心分數是否大於門檻值。當所有偵測結果的信心分數均不大於門檻值時,通用編碼轉換模組將各個偵測結果轉碼為通用編碼格式。決策模組會利用搜尋引擎搜尋轉碼後的各個偵測結果,將搜尋筆數最多的偵測結果對應的編碼格式設定為識別標籤的編碼格式。
本發明提供一種內儲用於偵測編碼格式的電腦程式產品,當電腦載入該電腦程式並執行後,可完成上述的偵測編碼格式方法。
基於上述,本發明藉由啟發式偵測器來偵測檔案的識別標籤內的資訊所使用的編碼格式,獲得多個偵測結果及各所述偵測結果的信心分數。當所有偵測結果的信心分數均不大於門檻值時,將各個偵測結果轉碼為通用編碼格式,並且利用搜尋引擎搜尋轉碼後的各個偵測結果,將搜尋筆數最多的偵測結果對應的編碼格式設定為識別標籤的編碼格式。藉此,本發明可在背景資料不足的情況下,利用搜尋引擎的能力結合啟發式演算器來偵測編碼格式,提供更精確的估測結果。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
100‧‧‧編碼格式偵測裝置
110‧‧‧標籤擷取模組
120‧‧‧編碼偵測模組
130‧‧‧信心分數判斷模組
140‧‧‧通用編碼轉換模組
150‧‧‧決策模組
S201~S211‧‧‧編碼格式偵測方法流程
圖1繪示依據本發明一實施例的一種編碼格式偵測裝置的功能方塊示意圖。
圖2繪示依據本發明一實施例的一種編碼格式偵測方法流程圖。
圖1繪示依據本發明一實施例的一種編碼格式偵測裝置的功能方塊示意圖,圖2繪示依據本發明一實施例的一種編碼格式偵測方法流程圖。請先參照圖1,編碼格式偵測裝置100包括標籤擷取模組110、編碼偵測模組120、信心分數判斷模組130、通用編碼轉換模組140以及決策模組150。
這些模組例如是以邏輯電路元件組成的硬體裝置,而可執行編碼格式的偵測功能。這些模組也可以是儲存在電腦主機的硬碟或記憶體中的軟體程式或軔體程式,其可載入電腦主機的處理器,而執行編碼格式的偵測功能,在此不設限。
上述各構件的詳細功能將配合圖2中的編碼格式偵測方法流程圖一併揭露。在本實施例中,此編碼格式偵測裝置100是用以偵測檔案的識別標籤的編碼格式。請同時參照圖1與圖2,以下即以圖1中編碼格式偵測裝置100的各項元件搭配圖2說明本實施例的編碼格式偵測方法的詳細步驟。
本實施例是以偵測MP3(MPEG Layer 3)格式的音訊檔案的識別標籤的編碼格式來進行說明,然而此並不用以限定本發明。MP3檔案的識別標籤稱為MP3檔案識別標籤(Identify MP3,ID3),其用以記載例如是曲名、演唱、專輯名稱、年代等歌曲相關資訊。一般而言,ID3根據資訊所儲存的位置分為兩種版本,即v1版以及v2版。v1版的ID3(ID3v1)位於MP3檔案的末尾128位元組(bytes),其中前三個字元分別為「T」、「A」以及「G」,其它字元則為曲名、演唱、專輯名稱、年代等歌曲相關資訊。ID3v1更可包括具有277位元組的延伸標籤(extended tag),此標籤一般位於128位元組的ID3之前方,除了可記載曲名、演唱或專輯名稱外,更可記載歌曲節拍、歌曲開始時間、歌曲停止時間等較為細節的資訊。v2版的ID3(ID3v2)一般位於MP3檔案的開頭,其用以儲存歌詞或專輯圖片等大容量的資訊。
首先,標籤擷取模組110擷取檔案的識別標籤內的資訊,並且將
這些資訊聚集為一個字串(步驟S201)。在本實施例中,標籤擷取模組110可以是擷取ID3v1標籤的曲名、演唱、專輯名稱、年代等歌曲相關資訊的字元,並將這些字元聚集成一個字串。然而,在其它實施例中亦可選擇性的設定所要擷取的資訊。
接著,編碼偵測模組120利用多種編碼格式,並可藉由啟發式偵測器(未繪示)偵測上述字串所使用的編碼格式,以獲得多個偵測結果及各個偵測結果的信心分數(步驟S203)。這些編碼格式為多個國家或多種語言文字所採用的字元編碼格式。啟發式偵測器是利用啟發式演算法去估測代表此字串的一系列位元組的字元編碼,其中啟發式演算法通常依據位元組樣式的統計分析,也就是完全地仰賴統計資料,以評估出此字串的編碼格式的信心分數。
信心分數判斷模組130根據上述各個編碼格式的偵測結果,判斷其信心分數是否大於一個門檻值(步驟S205)。當上述偵測結果中的一個或多個信心分數大於此門檻值,則進入步驟S207,由決策模組150將這些信心分數最高的偵測結果對應的編碼格式設定為識別標籤的編碼格式,並且完成編碼格式的偵測。後續可藉由文字轉碼器根據偵測結果對應的編碼格式去轉換識別標籤的編碼格式。
然而,在被偵測的資料不足(例如,字串不長)的情況下,往往會造成多種可能的編碼的信心分數過低。因此,當步驟S205中所有偵測結果的信心分數均不大於門檻值時,通用編碼轉換模組140則會將各個偵測結果轉碼為通用編碼格式(步驟S209)。然而,本發明並不限於此,信心分數判斷模組130亦可先將上述偵測結果的信心分數依大到小進行排序,並
僅選擇排名前5或前10的信心分數對應的編碼格式進行轉碼,藉以節省轉碼所耗費的運算資源。
在此所謂的通用編碼格式例如是統一碼轉換格式(Unicode Transformation Format,UTF)。統一碼是統一碼聯盟(The Unicode Consortium)為了解決國際間編碼格式問題而提出的方案,其不需要特殊轉換即可識別各國的編碼和字集,常見的格式為UTF-8(8-bit Unicode Transformation Format)以及UTF-16(16-bit Unicode Transformation Format),其中UTF-8已逐漸成為電子郵件、網頁以及其它儲存或傳送文字的應用中所優先採用的編碼。因此,本實施例亦將以UTF-8來進行說明。
當各個偵測結果轉碼為UTF-8之後,決策模組150利用搜尋引擎(未繪示)搜尋轉碼後的各個偵測結果,最後則將搜尋筆數最多的偵測結果所對應的編碼格式設定為識別標籤的編碼格式(步驟S211),從而完成編碼格式的偵測。詳細來說,決策模組150是將通用編碼轉換模組140轉碼後的偵測結果作為搜尋關鍵字,輸入Google、Yahoo等搜尋引擎,從而利用搜尋引擎進行搜尋。由於錯誤的偵測結果會導致轉碼的結果是無意義的字元組合,搜尋筆數必然極低;相對地,正確的偵測結果經轉碼後的結果是有意義的字元組合。因此,可認定搜尋筆數最多的偵測結果為最有可能的編碼格式。
本發明另提供一種電腦程式產品,其係用以執行上述編碼格式偵測方法的各個步驟,此電腦程式產品基本上是由多個程式碼片段所組成的,(例如擷取資訊片段、偵測編碼格式片段、判斷信心分數片段、轉碼片段、搜尋片段以及決策片段),並且這些程式碼片段在載入編碼格式偵測裝
置中並執行之後,即可完成上述編碼格式偵測方法的步驟。以下將列舉一實施例進行說明。
當檔案的識別標籤內的資訊被擷取並聚集為一個字串後,使用啟發式偵測器來猜測上述字串所使用的編碼格式:Detect_Results=Heuristic_Detector(Input_Data)其中Input_Data為上述聚集後的字串,Heuristic_Detector即針對字串Input_Data執行啟發式偵測,而獲得多個偵測結果,並儲存於陣列Detect_Results。
接著可根據上述各個編碼格式的偵測結果,判斷其信心分數是否大於一個門檻值。舉例而言,當此門檻值為50,並且Detect_Result[0].confidance=90(也就是說,陣列Detect_Result中第一個元素所對應的編碼格式的信心分數為90時),由於此信心分數大於上述門檻值,因此可以將此編碼格式設定為識別標籤的編碼格式。
當所有偵測結果的信心分數均不大於門檻值時,例如:Detect_Result[0].confidance=10 Detect_Result[1].confidance=10 Detect_Result[2].confidance=10 Detect_Result[3].confidance=10…Detect_Result[n].confidance=5將上述偵測結果的信心分數依大到小進行排序,並僅選擇排名前X的信心
分數對應的編碼格式轉碼為UTF-8:Transcoded_Result[0]=Transcode(Input_Data,Detect_Result[0]) Transcoded_Result[1]=Transcode(Input_Data,Detect_Result[1]) Transcoded_Result[2]=Transcode(Input_Data,Detect_Result[2]) Transcoded_Result[X]=Transcode(Input_Data,Detect_Result[X])其中,函數Transcode是用以針對上述字串以及排名前X的偵測結果進行轉碼,而獲得多種轉碼後的偵測結果,並儲存於陣列Transcoded_Result。
接著,利用搜尋引擎搜尋轉碼後的各個偵測結果,得到多個搜尋筆數:Count[0]=Search_Engine_Result_Count(Transcoded_Result[0]) Count[1]=Search_Engine_Result_Count(Transcoded_Result[1]) Count[2]=Search_Engine_Result_Count(Transcoded_Result[2]) Count[X]=Search_Engine_Result_Count(Transcoded_Result[X])其中Search_Engine_Result_Count依據轉碼後的偵測結果而得到搜尋筆數,並儲存於Count陣列。最後,可於Count陣列中找出數值最高的偵測結果所對應的編碼格式,並且將此編碼格式設定為識別標籤的編碼格式。
綜上所述,本發明藉由啟發式偵測器偵測檔案的識別標籤內的資訊所使用的編碼格式,將各個偵測結果轉碼為通用編碼格式,再利用搜尋引擎搜尋轉碼後的偵測結果,並將搜尋筆數最多的偵測結果對應的編碼格式設定為識別標籤的編碼格式。當欲偵測的相關資訊相當簡短使得背景資料不足的情況下,本發明可利用搜尋引擎的能力結合啟發式演算器來偵測編碼格式,以節省運算資源的前提,提供更精確的估測結果與減低後續處
理資料上的困擾,以提高使用者經驗。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
S201~S211‧‧‧編碼格式偵測方法流程
Claims (15)
- 一種編碼格式偵測方法,用以偵測一檔案的一識別標籤的一編碼格式,該方法包括下列步驟:擷取該識別標籤內的資訊,並聚集為一字串;使用多種編碼格式偵測該字串所使用的該編碼格式,以獲得多個偵測結果及各所述偵測結果的一信心分數;判斷各所述偵測結果的該信心分數是否大於一門檻值;當所有偵測結果的該信心分數均不大於該門檻值時,轉碼各所述偵測結果為一通用編碼格式;以及利用一搜尋引擎搜尋轉碼後的各所述偵測結果,設定一搜尋筆數最多的該偵測結果對應的該編碼格式為該識別標籤的該編碼格式。
- 如申請專利範圍第1項所述的編碼格式偵測方法,其中判斷各所述偵測結果的該信心分數是否大於該門檻值的步驟更包括:當所述偵測結果中的一或多個的該信心分數大於該門檻值時,設定該信心分數最高的該偵測結果對應的該編碼格式為該識別標籤的該編碼格式。
- 如申請專利範圍第1項所述的編碼格式偵測方法,其中該識別標籤為MP3檔案識別標籤(Identify MP3,ID3)。
- 如申請專利範圍第1項所述的編碼格式偵測方法,其中轉碼各所述偵測結果為該通用編碼格式,並利用該搜尋引擎搜尋轉碼後的各所述偵測結果的步驟包括:依據該信心分數排序所述偵測結果;以及 選擇排序在前的多個所述偵測結果進行轉碼,並利用該搜尋引擎搜尋轉碼後的各所述偵測結果。
- 如申請專利範圍第1項所述的編碼格式偵測方法,其中使用所述編碼格式偵測該字串所使用的該編碼格式的步驟包括:利用一啟發式偵測器(heuristic detector)偵測該字串所使用的該編碼格式。
- 如申請專利範圍第1項所述的編碼格式偵測方法,其中該通用編碼格式為統一碼轉換格式(Unicode Transformation Format,UTF)。
- 如申請專利範圍第1項所述的編碼格式偵測方法,其中利用該搜尋引擎搜尋轉碼後的各所述偵測結果的步驟包括:以轉碼後的各所述偵測結果做為一搜尋關鍵字,利用搜尋引擎進行搜尋。
- 一種編碼格式偵測裝置,用以偵測一檔案的一識別標籤的一編碼格式,該編碼格式偵測裝置包括:一標籤擷取模組,擷取該識別標籤內的資訊,並聚集為一字串;一編碼偵測模組,使用多種編碼格式用以偵測該字串所使用的該編碼格式,以獲得多個偵測結果及各所述偵測結果的一信心分數;一信心分數判斷模組,判斷各所述偵測結果的該信心分數是否大於一門檻值;一通用編碼轉換模組,當所有偵測結果的該信心分數均不大於該門檻值時,轉碼各所述偵測結果為一通用編碼格式;以及一決策模組,利用一搜尋引擎搜尋轉碼後的各所述偵測結果,設定一 搜尋筆數最多的該偵測結果對應的該編碼格式為該識別標籤的該編碼格式。
- 如申請專利範圍第8項所述的編碼格式偵測裝置,其中當所述偵測結果中的一或多個的該信心分數大於該門檻值時,該決策模組設定該信心分數最高的該偵測結果對應的該編碼格式為該識別標籤的該編碼格式。
- 如申請專利範圍第8項所述的編碼格式偵測裝置,其中該識別標籤為MP3檔案識別標籤(Identify MP3,ID3)。
- 如申請專利範圍第8項所述的編碼格式偵測裝置,其中:該通用編碼轉換模組依據該信心分數排序所述偵測結果;以及該決策模組選擇排序在前的多個所述偵測結果進行轉碼,並利用該搜尋引擎搜尋轉碼後的各所述偵測結果。
- 如申請專利範圍第8項所述的編碼格式偵測裝置,更包括:一啟發式偵測器(heuristic detector),用以偵測該字串所使用的該編碼格式。
- 如申請專利範圍第8項所述的編碼格式偵測裝置,其中該通用編碼格式為統一碼轉換格式。
- 如申請專利範圍第8項所述的編碼格式偵測裝置,其中該決策模組以轉碼後的各所述偵測結果做為一搜尋關鍵字,利用搜尋引擎進行搜尋。
- 一種電腦程式產品,當電腦載入該電腦程式並執行後,可完成申請專利範圍第1到7項所述的編碼格式偵測方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW102115467A TWI483131B (zh) | 2013-04-30 | 2013-04-30 | 編碼格式偵測方法、裝置及電腦程式產品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW102115467A TWI483131B (zh) | 2013-04-30 | 2013-04-30 | 編碼格式偵測方法、裝置及電腦程式產品 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201441848A TW201441848A (zh) | 2014-11-01 |
TWI483131B true TWI483131B (zh) | 2015-05-01 |
Family
ID=52422923
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW102115467A TWI483131B (zh) | 2013-04-30 | 2013-04-30 | 編碼格式偵測方法、裝置及電腦程式產品 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI483131B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW455792B (en) * | 1998-04-23 | 2001-09-21 | Wu Pei Ji | Method of using tags and source file formats in handling strings of various character sets |
TW200603554A (en) * | 2004-07-09 | 2006-01-16 | Tsu-Chang Lee | Method and apparatus for adaptive multiple-dimensional signal sequences encoding/decoding |
US20090083315A1 (en) * | 2007-09-20 | 2009-03-26 | Canon Kabushiki Kaisha | Information processing apparatus and encoding method |
US20120254181A1 (en) * | 2011-03-31 | 2012-10-04 | Clearswift Limited | Text, character encoding and language recognition |
-
2013
- 2013-04-30 TW TW102115467A patent/TWI483131B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW455792B (en) * | 1998-04-23 | 2001-09-21 | Wu Pei Ji | Method of using tags and source file formats in handling strings of various character sets |
TW200603554A (en) * | 2004-07-09 | 2006-01-16 | Tsu-Chang Lee | Method and apparatus for adaptive multiple-dimensional signal sequences encoding/decoding |
US20090083315A1 (en) * | 2007-09-20 | 2009-03-26 | Canon Kabushiki Kaisha | Information processing apparatus and encoding method |
US20120254181A1 (en) * | 2011-03-31 | 2012-10-04 | Clearswift Limited | Text, character encoding and language recognition |
Also Published As
Publication number | Publication date |
---|---|
TW201441848A (zh) | 2014-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11216504B2 (en) | Document recommendation method and device based on semantic tag | |
US10657325B2 (en) | Method for parsing query based on artificial intelligence and computer device | |
WO2016180268A1 (zh) | 一种文本聚合方法及装置 | |
TWI729472B (zh) | 特徵詞的確定方法、裝置和伺服器 | |
US8812300B2 (en) | Identifying related names | |
US8868569B2 (en) | Methods for detecting and removing duplicates in video search results | |
WO2022121171A1 (zh) | 相似文本匹配方法、装置、电子设备及计算机存储介质 | |
US20090089278A1 (en) | Techniques for keyword extraction from urls using statistical analysis | |
US8316041B1 (en) | Generation and processing of numerical identifiers | |
US20060294049A1 (en) | Back-off mechanism for search | |
WO2021169186A1 (zh) | 文本查重方法、电子设备及计算机可读存储介质 | |
CN110413787B (zh) | 文本聚类方法、装置、终端和存储介质 | |
CN109241319B (zh) | 一种图片检索方法、装置、服务器和存储介质 | |
CN109448793B (zh) | 基因序列的权利范围标注、检索及信息标注方法、系统 | |
US7548845B2 (en) | Apparatus, method, and program product for translation and method of providing translation support service | |
CN104156373B (zh) | 编码格式检测方法及装置 | |
CN109033385A (zh) | 图片检索方法、装置、服务器及存储介质 | |
US8725766B2 (en) | Searching text and other types of content by using a frequency domain | |
CN107861948B (zh) | 一种标签提取方法、装置、设备和介质 | |
WO2021109850A1 (zh) | 一种pdf文件去重存储方法及系统 | |
JP6991255B2 (ja) | メディア検索方法及び装置 | |
TWI483131B (zh) | 編碼格式偵測方法、裝置及電腦程式產品 | |
US7849037B2 (en) | Method for using the fundamental homotopy group in assessing the similarity of sets of data | |
JP5963310B2 (ja) | 情報処理装置、情報処理方法、及び、情報処理プログラム | |
US9990339B1 (en) | Systems and methods for detecting character encodings of text streams |