SlideShare a Scribd company logo
1 of 9
pyssp
python speech signal processing
library for education
pythonによる教育向け音声信号処理ライブラリ




                          There	
  must	
  be	
  a	
  fairy	
  inside!	
  
                          フェアリーデバイセズ株式会社
                               Shunsuke Aihara
Self Introduction

•  Shunsuke Aihara
  –  フェアリーデバイセズ株式会社CTO
     •  音声/音楽情報処理, 画像処理, データ分析の研究開発, 技術移転
     •  電子デバイスやハードウェアの開発/試作
About pyssp (1)

•  音声・音楽情報処理用のライブラリ
   –  音声復元(ノイズ除去),音声区間推定
   –  音声品質評価
   –  scikits.learnと組み合わせての分類処理
   –  ピッチ/和声分析
   –  音声分析合成(ヴォイスチェンジャー・話者変換)
•  Repository
    –  https://bitbucket.org/aihara/pyssp/
•  pypi
    –  http://pypi.python.org/pypi/pyssp
•  System Requirements
    –  Numpy, Scipy, scikits.learn
Concept of pyssp

•  アルゴリズム理解の為の簡潔さ
 –  自分が勉強するときに欲しかったようなリファレン
    ス実装を目指す
   •  scipyを用いた論文の式通りの簡潔な実装
 –  Matlabじゃない!


•  ライブラリとしての使い勝手の良さ
 –  ちょっとしたアプリケーションに組み込めるような
    インターフェイス
 –  サンプルとしてのコマンドラインツール
Motivation for the development

1.  手軽に音声信号処理が出来るような環境づくり
 –  自然言語処理や画像処理は盛り上がってるのに音声
    信号処理の情報は少ない
 –  周波数領域の信号処理はプログラムで簡単に書ける
    ことが多いよ!!


2.  自分のアルゴリズムの評価用実装として利用
 –  業務ではC++で音声処理を実装しているがテストやバ
    グ取りが大変
 –  プロトタイピングとしての側面
Demonstration

•  https://bitbucket.org/aihara/pyssp/src/
   33cd686af3bf/pyssp/tools/ にサンプルプログラ
   ム

•  音声復元(ノイズ除去)

•  カラオケトラックを用いた歌声抽出
Speech Enhancement (Noise reduction)

    •  ノイズが乗ったwaveファイルからノイズを消す

            python noise_reduction.py –m 3 –w 512 noisy.wav > clear.wav 	

                                               複数のアルゴリズムを実装	


                                                      サンプル音声	

                                                                高速走行ノイズが
                                                                乗った音声	
 雑音信号の
雑⾳音区間推定       発話区間の
             発話区間: (ω)
                   X
平均:Nˆ (ω )
 平均スペクトル|N(ω)|	
 ↓
              短時間窓内のスペクトル|X(ω)|	
           推定雑⾳音を差し引く
             ˆ            ˆ
 真の信号	
 |S(ω)|ω) = X(ω) − N(ω)
             S( = |X(w)|-α|N(ω)|	
                              ノイズ除去後の音声	
  雑⾳音の推定
 スペクト ル平均|S(ω)| = |X(w)|*gain(|N(ω)|)	
                    復復元された⾳音声信号
                        単純に引いたり掛けたり
Singing voice extraction
           using accompaniment signal
 •  音楽トラックとカラオケトラックから歌声だけ
    を取り出す
     python kss.pysong.wav karaoke.wav |python vad.py - > voice.wav 	


音楽トラック	
                      1.  歌い出しの位置を揃えて(アライメント
                              2.  20msごとにカラオケトラックの情報を単純に引く
                              3.  間奏部分を推定して音量を0にする
           -	
カラオケトラック	
                         サンプル音声	
                                  音楽トラック	
 カラオケトラック	
              歌声	
           =	
                                              -	
            =	
歌声のみの信号
Feature works

•  ドキュメントの作成
•  音声分析合成の実装を追加
•  python-pocketsphinxと組み合わせての音声認識
   サーバの作り方の解説
 –  個人利用向けの日本語音響モデルの公開

More Related Content

What's hot

モーメントマッチングに基づくDNN 合成歌声のランダム変調ポストフィルタとニューラルダブルトラッキングへの応用
モーメントマッチングに基づくDNN 合成歌声のランダム変調ポストフィルタとニューラルダブルトラッキングへの応用モーメントマッチングに基づくDNN 合成歌声のランダム変調ポストフィルタとニューラルダブルトラッキングへの応用
モーメントマッチングに基づくDNN 合成歌声のランダム変調ポストフィルタとニューラルダブルトラッキングへの応用Shinnosuke Takamichi
 
立体音響とインタラクション
立体音響とインタラクション立体音響とインタラクション
立体音響とインタラクションRyohei Suzuki
 
音声認識の基礎
音声認識の基礎音声認識の基礎
音声認識の基礎Akinori Ito
 
雑音環境下音声を用いた音声合成のための雑音生成モデルの敵対的学習
雑音環境下音声を用いた音声合成のための雑音生成モデルの敵対的学習雑音環境下音声を用いた音声合成のための雑音生成モデルの敵対的学習
雑音環境下音声を用いた音声合成のための雑音生成モデルの敵対的学習Shinnosuke Takamichi
 
Nakai22sp03 presentation
Nakai22sp03 presentationNakai22sp03 presentation
Nakai22sp03 presentationYuki Saito
 
シナリオを情報源とする映画の要約
シナリオを情報源とする映画の要約シナリオを情報源とする映画の要約
シナリオを情報源とする映画の要約utsuro_lab
 
[招待講演] スピーカアレイを用いた空間フーリエ変換に基づく局所再生
[招待講演] スピーカアレイを用いた空間フーリエ変換に基づく局所再生[招待講演] スピーカアレイを用いた空間フーリエ変換に基づく局所再生
[招待講演] スピーカアレイを用いた空間フーリエ変換に基づく局所再生Takuma_OKAMOTO
 
円形アレイを用いた水平面3次元音場の収録と再現
円形アレイを用いた水平面3次元音場の収録と再現円形アレイを用いた水平面3次元音場の収録と再現
円形アレイを用いた水平面3次元音場の収録と再現Takuma_OKAMOTO
 
Saito19asjAutumn_DeNA
Saito19asjAutumn_DeNASaito19asjAutumn_DeNA
Saito19asjAutumn_DeNAYuki Saito
 
Ppt tsujijun g
Ppt tsujijun gPpt tsujijun g
Ppt tsujijun gharmonylab
 
音楽の情報処理
音楽の情報処理音楽の情報処理
音楽の情報処理Akinori Ito
 
Moment matching networkを用いた音声パラメータのランダム生成の検討
Moment matching networkを用いた音声パラメータのランダム生成の検討Moment matching networkを用いた音声パラメータのランダム生成の検討
Moment matching networkを用いた音声パラメータのランダム生成の検討Shinnosuke Takamichi
 
バッテリー強奪! PythonをCommon Lispから使う
バッテリー強奪! PythonをCommon Lispから使うバッテリー強奪! PythonをCommon Lispから使う
バッテリー強奪! PythonをCommon Lispから使うt-sin
 
社内勉強会にて 音声ファイルフォーマットについて
社内勉強会にて 音声ファイルフォーマットについて社内勉強会にて 音声ファイルフォーマットについて
社内勉強会にて 音声ファイルフォーマットについてNatsuki Yamanaka
 
2章推薦を行う(後編)
2章推薦を行う(後編)2章推薦を行う(後編)
2章推薦を行う(後編)Tanaka Hidenori
 
2章推薦を行う(後編)
2章推薦を行う(後編)2章推薦を行う(後編)
2章推薦を行う(後編)Tanaka Hidenori
 
ユーザ歌唱のための generative moment matching network に基づく neural double-tracking
ユーザ歌唱のための generative moment matching network に基づく neural double-trackingユーザ歌唱のための generative moment matching network に基づく neural double-tracking
ユーザ歌唱のための generative moment matching network に基づく neural double-trackingShinnosuke Takamichi
 

What's hot (20)

MP3と音声圧縮(simple)
MP3と音声圧縮(simple)MP3と音声圧縮(simple)
MP3と音声圧縮(simple)
 
モーメントマッチングに基づくDNN 合成歌声のランダム変調ポストフィルタとニューラルダブルトラッキングへの応用
モーメントマッチングに基づくDNN 合成歌声のランダム変調ポストフィルタとニューラルダブルトラッキングへの応用モーメントマッチングに基づくDNN 合成歌声のランダム変調ポストフィルタとニューラルダブルトラッキングへの応用
モーメントマッチングに基づくDNN 合成歌声のランダム変調ポストフィルタとニューラルダブルトラッキングへの応用
 
立体音響とインタラクション
立体音響とインタラクション立体音響とインタラクション
立体音響とインタラクション
 
音声認識の基礎
音声認識の基礎音声認識の基礎
音声認識の基礎
 
雑音環境下音声を用いた音声合成のための雑音生成モデルの敵対的学習
雑音環境下音声を用いた音声合成のための雑音生成モデルの敵対的学習雑音環境下音声を用いた音声合成のための雑音生成モデルの敵対的学習
雑音環境下音声を用いた音声合成のための雑音生成モデルの敵対的学習
 
Nakai22sp03 presentation
Nakai22sp03 presentationNakai22sp03 presentation
Nakai22sp03 presentation
 
シナリオを情報源とする映画の要約
シナリオを情報源とする映画の要約シナリオを情報源とする映画の要約
シナリオを情報源とする映画の要約
 
[招待講演] スピーカアレイを用いた空間フーリエ変換に基づく局所再生
[招待講演] スピーカアレイを用いた空間フーリエ変換に基づく局所再生[招待講演] スピーカアレイを用いた空間フーリエ変換に基づく局所再生
[招待講演] スピーカアレイを用いた空間フーリエ変換に基づく局所再生
 
Ssaw08 0520
Ssaw08 0520Ssaw08 0520
Ssaw08 0520
 
円形アレイを用いた水平面3次元音場の収録と再現
円形アレイを用いた水平面3次元音場の収録と再現円形アレイを用いた水平面3次元音場の収録と再現
円形アレイを用いた水平面3次元音場の収録と再現
 
Saito19asjAutumn_DeNA
Saito19asjAutumn_DeNASaito19asjAutumn_DeNA
Saito19asjAutumn_DeNA
 
Ppt tsujijun g
Ppt tsujijun gPpt tsujijun g
Ppt tsujijun g
 
音楽の情報処理
音楽の情報処理音楽の情報処理
音楽の情報処理
 
Moment matching networkを用いた音声パラメータのランダム生成の検討
Moment matching networkを用いた音声パラメータのランダム生成の検討Moment matching networkを用いた音声パラメータのランダム生成の検討
Moment matching networkを用いた音声パラメータのランダム生成の検討
 
バッテリー強奪! PythonをCommon Lispから使う
バッテリー強奪! PythonをCommon Lispから使うバッテリー強奪! PythonをCommon Lispから使う
バッテリー強奪! PythonをCommon Lispから使う
 
社内勉強会にて 音声ファイルフォーマットについて
社内勉強会にて 音声ファイルフォーマットについて社内勉強会にて 音声ファイルフォーマットについて
社内勉強会にて 音声ファイルフォーマットについて
 
Ssaw08 0513
Ssaw08 0513Ssaw08 0513
Ssaw08 0513
 
2章推薦を行う(後編)
2章推薦を行う(後編)2章推薦を行う(後編)
2章推薦を行う(後編)
 
2章推薦を行う(後編)
2章推薦を行う(後編)2章推薦を行う(後編)
2章推薦を行う(後編)
 
ユーザ歌唱のための generative moment matching network に基づく neural double-tracking
ユーザ歌唱のための generative moment matching network に基づく neural double-trackingユーザ歌唱のための generative moment matching network に基づく neural double-tracking
ユーザ歌唱のための generative moment matching network に基づく neural double-tracking
 

Viewers also liked

Gunosy.go#2 package/compress
Gunosy.go#2 package/compressGunosy.go#2 package/compress
Gunosy.go#2 package/compressShunsuke Aihara
 
フーリエ変換を用いたテクスチャ解像度推定とその応用
フーリエ変換を用いたテクスチャ解像度推定とその応用フーリエ変換を用いたテクスチャ解像度推定とその応用
フーリエ変換を用いたテクスチャ解像度推定とその応用Hajime Uchimura
 
音声の認識と合成
音声の認識と合成音声の認識と合成
音声の認識と合成Akinori Ito
 
Variational AutoEncoder
Variational AutoEncoderVariational AutoEncoder
Variational AutoEncoderKazuki Nitta
 
ソフトシンセを作りながら学ぶPythonプログラミング
ソフトシンセを作りながら学ぶPythonプログラミングソフトシンセを作りながら学ぶPythonプログラミング
ソフトシンセを作りながら学ぶPythonプログラミングRansui Iso
 
プログラミング言語 Julia の紹介
プログラミング言語 Julia の紹介プログラミング言語 Julia の紹介
プログラミング言語 Julia の紹介Kentaro Iizuka
 
時系列分析による異常検知入門
時系列分析による異常検知入門時系列分析による異常検知入門
時系列分析による異常検知入門Yohei Sato
 

Viewers also liked (9)

Hl20160929
Hl20160929Hl20160929
Hl20160929
 
Gunosy.go#2 package/compress
Gunosy.go#2 package/compressGunosy.go#2 package/compress
Gunosy.go#2 package/compress
 
フーリエ変換を用いたテクスチャ解像度推定とその応用
フーリエ変換を用いたテクスチャ解像度推定とその応用フーリエ変換を用いたテクスチャ解像度推定とその応用
フーリエ変換を用いたテクスチャ解像度推定とその応用
 
音声の認識と合成
音声の認識と合成音声の認識と合成
音声の認識と合成
 
Variational AutoEncoder
Variational AutoEncoderVariational AutoEncoder
Variational AutoEncoder
 
ソフトシンセを作りながら学ぶPythonプログラミング
ソフトシンセを作りながら学ぶPythonプログラミングソフトシンセを作りながら学ぶPythonプログラミング
ソフトシンセを作りながら学ぶPythonプログラミング
 
プログラミング言語 Julia の紹介
プログラミング言語 Julia の紹介プログラミング言語 Julia の紹介
プログラミング言語 Julia の紹介
 
時系列分析による異常検知入門
時系列分析による異常検知入門時系列分析による異常検知入門
時系列分析による異常検知入門
 
一般向けのDeep Learning
一般向けのDeep Learning一般向けのDeep Learning
一般向けのDeep Learning
 

Recently uploaded

「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-LoopへTetsuya Nihonmatsu
 
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~arts yokohama
 
2024 01 Virtual_Counselor
2024 01 Virtual_Counselor 2024 01 Virtual_Counselor
2024 01 Virtual_Counselor arts yokohama
 
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見Shumpei Kishi
 
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦Sadao Tokuyama
 
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfTaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfMatsushita Laboratory
 
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)ssuser539845
 
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdfAyachika Kitazaki
 
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法ssuser370dd7
 

Recently uploaded (12)

2024 03 CTEA
2024 03 CTEA2024 03 CTEA
2024 03 CTEA
 
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
 
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
 
2024 01 Virtual_Counselor
2024 01 Virtual_Counselor 2024 01 Virtual_Counselor
2024 01 Virtual_Counselor
 
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
 
What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?
 
2024 04 minnanoito
2024 04 minnanoito2024 04 minnanoito
2024 04 minnanoito
 
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
 
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfTaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
 
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
 
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf
 
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
 

pyssp

  • 1. pyssp python speech signal processing library for education pythonによる教育向け音声信号処理ライブラリ There  must  be  a  fairy  inside!   フェアリーデバイセズ株式会社 Shunsuke Aihara
  • 2. Self Introduction •  Shunsuke Aihara –  フェアリーデバイセズ株式会社CTO •  音声/音楽情報処理, 画像処理, データ分析の研究開発, 技術移転 •  電子デバイスやハードウェアの開発/試作
  • 3. About pyssp (1) •  音声・音楽情報処理用のライブラリ –  音声復元(ノイズ除去),音声区間推定 –  音声品質評価 –  scikits.learnと組み合わせての分類処理 –  ピッチ/和声分析 –  音声分析合成(ヴォイスチェンジャー・話者変換) •  Repository –  https://bitbucket.org/aihara/pyssp/ •  pypi –  http://pypi.python.org/pypi/pyssp •  System Requirements –  Numpy, Scipy, scikits.learn
  • 4. Concept of pyssp •  アルゴリズム理解の為の簡潔さ –  自分が勉強するときに欲しかったようなリファレン ス実装を目指す •  scipyを用いた論文の式通りの簡潔な実装 –  Matlabじゃない! •  ライブラリとしての使い勝手の良さ –  ちょっとしたアプリケーションに組み込めるような インターフェイス –  サンプルとしてのコマンドラインツール
  • 5. Motivation for the development 1.  手軽に音声信号処理が出来るような環境づくり –  自然言語処理や画像処理は盛り上がってるのに音声 信号処理の情報は少ない –  周波数領域の信号処理はプログラムで簡単に書ける ことが多いよ!! 2.  自分のアルゴリズムの評価用実装として利用 –  業務ではC++で音声処理を実装しているがテストやバ グ取りが大変 –  プロトタイピングとしての側面
  • 6. Demonstration •  https://bitbucket.org/aihara/pyssp/src/ 33cd686af3bf/pyssp/tools/ にサンプルプログラ ム •  音声復元(ノイズ除去) •  カラオケトラックを用いた歌声抽出
  • 7. Speech Enhancement (Noise reduction) •  ノイズが乗ったwaveファイルからノイズを消す python noise_reduction.py –m 3 –w 512 noisy.wav > clear.wav 複数のアルゴリズムを実装 サンプル音声 高速走行ノイズが 乗った音声 雑音信号の 雑⾳音区間推定 発話区間の 発話区間: (ω) X 平均:Nˆ (ω ) 平均スペクトル|N(ω)| ↓ 短時間窓内のスペクトル|X(ω)| 推定雑⾳音を差し引く ˆ ˆ 真の信号 |S(ω)|ω) = X(ω) − N(ω) S( = |X(w)|-α|N(ω)| ノイズ除去後の音声 雑⾳音の推定 スペクト ル平均|S(ω)| = |X(w)|*gain(|N(ω)|) 復復元された⾳音声信号 単純に引いたり掛けたり
  • 8. Singing voice extraction using accompaniment signal •  音楽トラックとカラオケトラックから歌声だけ を取り出す python kss.pysong.wav karaoke.wav |python vad.py - > voice.wav 音楽トラック 1.  歌い出しの位置を揃えて(アライメント 2.  20msごとにカラオケトラックの情報を単純に引く 3.  間奏部分を推定して音量を0にする - カラオケトラック サンプル音声 音楽トラック カラオケトラック 歌声 = - = 歌声のみの信号
  • 9. Feature works •  ドキュメントの作成 •  音声分析合成の実装を追加 •  python-pocketsphinxと組み合わせての音声認識 サーバの作り方の解説 –  個人利用向けの日本語音響モデルの公開