---
# System prepended metadata

title: 鳥類聲紋辨識

---

# 鳥類聲紋辨識
- [Introduction](#introduction) 
- [Problem description](#pd)
- [Reference](#RF)
- [The proposed Method](#pm)
- Experimental Results
- Observations & Conclusion
- Reflection & Future work
- [Python](#lib)

### <span id="data">==Data==</span>
* [xeno-canto](https://xeno-canto.org/)
* [eBird](https://ebird.org/taiwan/home)
* [Avibase](https://avibase.bsc-eoc.org/avibase.jsp?lang=EN)

### <span id="introduction">==Introduction==</span>
本研究提出了一種基於經驗組態及希伯爾特黃轉換提取特徵並導入注意力機制的鳥類聲紋特徵提取方法，並使用，Xeno-canto 資料庫中的鳥類聲音資料作為模型訓練數據。首先，將 Xeno-canto 資料庫中的鳥類聲音波形轉換成頻譜圖(短時傅立葉及Butterworthz)，及希伯爾特-黃轉換之經驗組態方法之資料特徵識別，利用BERT進行特徵提取。接下來，引入注意力機制，選擇重要的特徵信息進行組合，得到更加鮮明的特徵表示。最後，將提取出的特徵向量用Transformer模型進行聲紋特徵分類，實驗結果顯示-----------(待確認)。
### <span id="pd">==Problem description==</span>
:::info
* 主要問題:
    * 目前現有鳥內聲紋辨識方式以頻譜方式為主要特徵辨識，在資料前處理時較多先以傅立葉轉換為頻譜，再依所求進行濾波器選擇進行訊號的輸入變換及加工，在資料分布不均特徵的情況下，部分訊息會有遺漏之情況。
      
* 解決方法:
    * 本次實驗採用相對直覺式波段切分重組，依據原始資料之經驗組態模型(EMD)+希伯爾特-黃(HHT)，將原訊號藉由內部模態函數分解成多組IMF分量(IMFs)，再藉由希爾伯特轉換而得到希博爾特頻譜。
    * 重要特徵解析完畢後以BERT進行特徵提取，並依序使用Transformer進行資料分類訓練，並針對運算效能、分類準確度作為模型評分依據。
:::
### <span id="RF">==Reference==</span>
:::success
參考資料:[`鳥聲辨識與聲源定位APP`](https://ndltd.ncl.edu.tw/cgi-bin/gs32/gsweb.cgi/login?o=dnclcdr&s=id=%22111NTUS5396018%22.&searchmode=basic)


- 視覺化
    * 小提琴圖(https://medium.com/python-%E8%B3%87%E6%96%99%E8%A6%96%E8%A6%BA%E5%8C%96/python-%E5%95%86%E6%A5%AD%E6%95%B8%E6%93%9A%E5%88%86%E6%9E%90%E4%B9%8B%E5%8F%AF%E8%A6%96%E5%8C%96%E7%B9%AA%E5%9C%96-%E7%AC%AC11%E8%AC%9B-%E5%B0%8F%E6%8F%90%E7%90%B4%E5%9C%96-seaborn-violin-e2e3c686e759)

- 特徵擷取
    * LPC  
        * [Feature Extraction Methods LPC, PLP and MFCC In Speech Recognition](https://reurl.cc/5MNmG6)
    * STFT
        * [Signal reconstruction from short-time Fourier transform magnitude](https://reurl.cc/6NR8jy)
    * MFCCs
        * [Speech Recognition using MFCC](https://reurl.cc/OVoOQ7)
- 特徵模型建置
    * SiameseNetwor  
    * Attention
        * The birds need attention too: Analysing usage of Self Attention in identifying bird calls in soundscapes(https://github.com/ck090/BirdCLEF-22)
:::






### <span id="pr">==Paper Review==</span>
 
:::info
特徵擷取(信號處理): 

* 線性預測編碼（Linear Predictive Coding，LPC）
* 短時聲學特徵: 
    - 短時傅里葉變換（Short-Time Fourier Transform, STFT）
    - 梅爾頻率倒譜係數（Mel-Frequency Cepstral Coefficients, MFCCs） 

特徵處理(相關方式): 

* 相似度分數計算:孿生網路(SiameseNetwor) 
* 準確度提升:注意力機制(Attention-based) 

模型訓練(聲源辨識算法)： 

* 隱馬可夫模型（Hidden Markov Model，HMM） 
* 深度學習模型： 
    - 卷積神經網絡（Convolutional Neural Network，CNN） 
    - 循環神經網絡（Recurrent Neural Network，RNN)
* GMM-UBM模型 
* 動態時間視窗匹配（Dynamic Time Warping，DTW） 

效能驗證
* 時間複雜度
:::

:::success
# 文獻參考
### 聲紋辨識
1. https://paperswithcode.com/paper/few-shot-long-tailed-bird-audio-recognition
2. https://paperswithcode.com/paper/masked-autoencoders-that-listen
3. https://cs.paperswithcode.com/paper/audiotagging-done-right-2nd-comparison-of
4. https://cs.paperswithcode.com/paper/the-birds-need-attention-too-analysing-usage
5. https://cs.paperswithcode.com/paper/masked-spectrogram-prediction-for-self
6. https://jonashoechst.de/assets/papers/hoechst2022birdedge.pdf
7. https://www.sciencedirect.com/science/article/pii/S1574954123002790?via%3Dihub


### 推薦系統
1. https://www.sciencedirect.com/science/article/pii/S1574954123002686
2. https://www.sciencedirect.com/science/article/pii/S0924271620303269/pdf



:::



4.數據評分指標 

5.條件限制 

### <span id="lib">==Python套件==</span>
```python!
import librosa 
# 可用來做音檔讀取、計算音頻特徵、音頻濾波、可視化頻譜圖及波形圖

import essentia.standard as es
# 可用來做音檔讀取
# 音訊特徵:短時能量（Short-Time Energy）、頻譜包絡（Spectral Envelope）、頻譜通過性（Spectral Flatness）、梅爾頻率倒譜系數（MFCC）、
# 聲音分析:頻譜分析（Spectral Analysis）、聲音分類（Audio Classification）、聲音識別（Audio Recognition）
# 音訊處理:動態壓縮（Dynamic Range Compression）、噪聲消除（Noise Reduction、音量增強（Volume Boost)

import NumPy
import SciPy
import Matplotlib
```
https://github.com/josafatburmeister/BirdSongIdentification
https://github.com/dandavison/elaenia
https://github.com/qiuqiangkong/audioset_tagging_cnn
https://www.tensorflow.org/tutorials/audio/transfer_learning_audio
https://developer.nvidia.com/blog/nvidia-jetson-project-of-the-month-recognizing-birds-by-sound/

# 論文
Automatic Segmentation and Classification of Heart Sounds Using Modified Empirical Wavelet Transform and Power Features