FFTの応用であるSTFTを使ったスペクトログラムは周波数波形の時間変化がわかるため、音声解析でよく使われます。これまでWATLABブログではwavファイルや生成した波形からスペクトログラムをつくっていましたが、この記事ではリアルタイムにスペクトログラムを計算する方法を紹介します。
続きを読むM3 Macでvenv/VSCodeによるPython環境を構築するときの備忘録
2024年3月に新発売したM3チップ搭載のMacbookを最近購入したので、早速Pythonプログラミング環境を構築します。今回は主に自分用に最もポピュラーな仮想環境構築手法であるvenvとVSCodeによるPython環境構築の備忘録を残します。
続きを読む「いきなりプログラミングPython」出版!著者による書籍制作のまとめ
WATLABブログからついに「いきなりプログラミングPython」という書籍が出版されました!この記事では著者watによる書籍制作のきっかけ、流れ、感想をつらつらとまとめておきます。貴重な「自分の本を出す」という体験を文章で伝えます。
続きを読むPyAudio/threading/Matplotlibでリアルタイム音声処理
Pythonを使えば、リアルタイムの音声録音と解析も簡単に行えます。まずPyAudioで音声を録音し、次にScipyでFFT(高速フーリエ変換)を使って解析を行います。しかし、これをスムーズに行うには並列処理が欠かせません。ここでは、Pythonのthreadingモジュールを駆使して、リアルタイムで音声を録音しながらFFT結果を表示する方法を紹介します。
続きを読むPandocとPythonで画像付きWord文書をMarkdownに変換する
MS-Wordは多くの企業で使われている文書ファイル作成ソフトですが、様々なプラットフォーム間で文書のやり取りをする場合に不便です。対してMarkdownはフリーでわかりやすく、多くのエンジニアに愛されています。ここではPandocとPythonを使って.docxをMarkdownに変換する方法を紹介します。
続きを読むマイクに話しかけて自動翻訳するPythonプログラム
Pythonを使えば、普段の会話を精度良く翻訳するアプリも簡単につくることができます。まずspeech_recognitionによる音声認識技術を使い、音声をテキストに変換、そして次にdeep_transtatorを使ってテキストを任意の言語に翻訳します。ここではこれらを駆使したPythonプログラムの例を紹介します。
続きを読むPython/librosaのピッチシフトで音楽のキーを変更する方法
音声のピッチ(音程)を変える方法の1つにピッチシフトという方法があります。Pythonのlibrosaというライブラリを使えば数行のコードでピッチシフトを行うことが可能です。ここではサンプルの音楽ファイルを使ってlibrosaのピッチシフトを使う方法を紹介します。
続きを読むPython/SciPyで積分(1重/2重)した結果を可視化する方法
Pythonのscipy.integrate.quadやscipy.integrate.dblquadを使えば簡単に数値積分ができますが、当然結果はシンプルに積分値が返ってくるだけです。ここでは他者へ説明する目的で基本的な1重積分をはじめ、2重積分までのmatplotlibによる可視化方法を紹介します。
続きを読むPythonでルジャンドル多項式を使ってガウス積分をする方法
数値解析の分野ではガウス積分という求積手法がよく用いられます。ガウス積分はルジャンドル多項式を使って積分点と重みを算出しますが、初学者はまずこれらの概念を理解するのが難しいです。この記事では簡単な関数を題材にガウス積分を計算する方法をPythonコードと共に紹介します。
続きを読むPythonで基礎から学ぶ1次元梁モデルの有限要素法
有限要素法は一般的に商用ソフトやオープンソースのライブラリを活用して「使う」ことが多いものですが、理解するためには自分でプログラミングするのが一番です。ここでは手計算でもできるレベルの問題をPythonによる有限要素法コードで解くことで、計算の流れを把握することを目指します。
続きを読む