MUSIC法による音源定位

本記事ではMUSIC(MUltiple SIgnal Classification)法をPythonで実装しました。MUSIC法はSchmidtにより1986年に提案されており、音源の位置を推定する技術(音源定位)では最も代表的な手法ではないかと思います。今回は、シミュレーション環境で録音した音を…

音声・音響処理で使う主成分分析

本記事では、音声・音響処理で使われている主成分分析 (PCA: Principal Component Analysis) を紹介します。自分が知る限り、主成分分析はアレイ信号処理によく使われています。音声・音響処理する人向けに記述しましたので、データ分析する人向けではないこ…

信号処理でヘリウムボイスに音声変換

ヘリウムガスを吸い込んだときの特徴的な声はヘリウムボイスと呼ばれています。本記事では、信号処理でヘリウムボイスを擬似的に実現してみました。前回の記事で紹介したケプストラム分析を用いてスペクトル包絡の加工をしています。

ケプストラム分析によるスペクトル包絡推定

ケプストラム分析を用いてスペクトル包絡推定を行いました。ケプストラム分析は1964年に Noll らにより提案された方法です。ちなみにケプストラム(cepstrum)という名称は、spectrumのアナグラム(specだけを逆から書くとcepstrum)となっています。

頭部伝達関数を使って8D立体音響を実装

頭部伝達関数(HRTF: Head-Related Transfer Function)を使って8D立体音響をPythonで実装してみました。8D立体音響というのは正直言って私も厳密な定義はわかりませんが、ここで言っているのはYoutubeによくある頭の周りをクルクルまわる音源のことです。…

ビームフォーミングで特定方向の音源を強調

ビームフォーミングで特定方向の音源を強調しました。今回は、一番基本的なビームフォーマである 遅延和ビームフォーマ(DSBF:Delay and Sum Beam Former)を Python で実装して、室内音響シミュレーションで作った音に作用させました。

ソースフィルタモデルで母音を音声合成

ソースフィルタモデルによる古典的な方法で母音 ”ieaou” を音声合成しました。今回の記事は「サウンドエフェクトのプログラミング」という本を参考にしています。

双一次変換によるIIRフィルタ設計

カットオフ周波数を決めれば、単純な計算だけでIIRフィルタの係数を求める方法はないかと思っていたら、双一次変換と呼ばれる方法があったので紹介します。

RX651用のマウス基板の設計とRX631との違い

いままでRX631をのせたマウス基板を用いて、デバイスの動作確認をおこなっていましたが、AD変換が上手くいかなかったので、マウス基板をまた作りなおしました。RX631-48ピンが手に入りづらくなっていたことに加えて、RAMが多い高性能のマイコンを使いたいと…

Pythonで正弦波モデルを実装

Pythonを使って正弦波モデルを実装しました。ソースコードがネット上にあまりないため、頑張って自力で書きました。 今回は、M&Qアルゴリズムとよばれる方法で実装を行っています。

RXマイコンのソフト開発(8)磁気式エンコーダーAS5047

RXマイコン(RX631)のソフト開発の8回目です。今回は、磁気式エンコーダーのAS5047を動作させたいと思います。AS5047によって、タイヤの回転角度を求めます。

RXマイコンのソフト開発(7)モータドライバーDRV8836の動作

RXマイコン(RX631)のソフト開発の7回目です。今回は、モータドライバーのDRV8836を動作させたいと思います。制御はしないです。ただ動かすだけです。ギアが噛み合うかも確かめたいと思います。

RXマイコンのソフト開発(6)RSPIでMPU6000から角速度取得

RXマイコン(RX631)のソフト開発の6回目です。今回は、RSPIを使ってジャイロ(MPU6000)から角速度を取得して、計算した角度をTeraTermで確認したいと思います。情報が少なかったので、実装するのに苦労しました。ユーザーズマニュアルや本、他の人のブロ…

RXマイコンのソフト開発(5)ADCでバッテリーの電圧測定

RXマイコンのソフト開発の5回目です。今回は、ADCでバッテリーの電圧を測定して、TeraTermで値を確認したいと思います。作成したバッテリーチェックの回路図は図1です。SEN_BAT のポートは PE1/AN009 です。Lipoバッテリーの電圧を抵抗によって半分に分圧…

RXマイコンのソフト開発(4)UART送信でHelloWorld

RXマイコンのソフト開発の4回目です。今回は、UARTでHello Worldを出力したいと思います。今回の記事に関しては、ほとんどマウス本を参考にしています。

RXマイコンのソフト開発(3)スピーカーから音を出す

RXマイコンのソフト開発の3回目です。今回は、スピーカーから音を出したいと思います。MTUという機能を用いて、端子から矩形波を出力することで音を出します。この機能によって、いちいちプログラムで端子をLOW、HIGHに設定せずとも、自動で矩形波が出力さ…

RXマイコンのソフト開発(2)スイッチのチャタリング対策

RXマイコンのソフト開発の2回目です。今回は、プッシュスイッチの入力を受けて、フルカラーLEDの点灯色を変更したいと思います。回路ではチャタリング除去をしていないため、ソフト側でチャタリング対策をしたいと思います。前回と同様にRX631のユーザーズ…

ZYBOでシンセサイザー作成(5)音を出力する

ZYBOでシンセサイザー作成の5回目です。前回と前々回でパラシリ変換器(sin_gen)と正弦波生成 IP(para2serial) が作成できました。今回は、これらを組み合わせて、ZYBOから音を出力したいと思います。

RXマイコンにプログラムを書き込む方法

RXマイコンにプログラムを書き込む方法を紹介したいと思います。本記事では、ターゲットデバイスにRX631を用いますが、他のRXマイコンでも同様の方法で書き込みができます。統合開発環境にはe2studioを用います。

RXマイコンのソフト開発(1)クロック設定とLチカ

今回からマイクロマウスのソフト開発を行いたいと思います。まずはクロック設定とLチカからはじめたいと思います。主にこの記事は以下のマウス本を参考にしています。また、RX631のユーザーズマニュアル ハードウェア編もかなり参考にしているので、参照する…

ZYBOでシンセサイザー作成(4)パラシリ変換 IP の作成

今回は、前回の記事で作成した正弦波生成 IP(sin_gen)の出力をパラシリ変換して、オーディオコーデック(SSM2603)が受け取れるデータ形式にします。

マイクロマウスのRX631(48ピン)に書き込めない

前回の記事から10日後に基板が届きました。早速、全ての電子部品をはんだ付けして、プログラムを書き込もうとしたのですが、接続すらできませんでした。 DCマウスを途中まで作ったときにRX631(64ピン)にプログラムを書き込んだ経験があったので、できて当…

ZYBOでシンセサイザー作成(3)波形テーブル(BRAM)による正弦波の合成

今回は、波形テーブル(BRAM)を使って正弦波を合成するIP (Intellectual Property) を製作します。前回まではハードウェア記述言語(HDL)を用いずにFPGAを使っていましたが、今回からHDLのSystemVerilog を用いていきたいと思います。

ZYBOでシンセサイザー作成(2)オーディオコーデックの使用

今回から徐々にシンセサイザーの作成を始めます。今回は、IICでオーディオコーデック(SSM2603)のレジスタ設定をして、コーデックで音を折り返します。

ZYBOでシンセサイザー作成(1)LチカとHelloWorld

ZYBOを使ってシンセサイザーを作成したいと思います。久しぶりにVivadoを使うので、まずはLチカとHello Worldからやってみます。

Pythonで打楽器音を合成してみた

こないだは撥弦音の合成をしたので、次は打楽器音の合成をしました。前回と同様にKarplus-Strong方式で合成しました。

マイクロマウス(旧ハーフサイズ)始めました

突然ですが、マイクロマウス(旧:ハーフサイズ)を始めました。学部生のころ、マイクロマウスを製作するサークルに入っていたのですが、全くわからなくて挫折してしまいました。ただ、大学院を卒業した今の自分ならできると思い、マイクロマウスをやってみ…

Cambridge Music Technologyでマルチトラックの音源を提供しているというハナシ

はじめに 機械学習などをやっていると困るのはデータを集めることだと思います。私も音源分離の機械学習をやったことがあるのですが、データを集めるのに苦労しました。音楽データの音源分離をする場合は、データセットはMUSDB18が一番有名ではないかと思い…

Pythonで撥弦音を合成してみた

音の合成というものをいままでしたことがなかったので、信号モデルのKarplus-Strong方式で撥弦音を合成してみました。

Dockerの始め方(Python環境の共有)

Dockerを使えば、Python環境の共有が簡単にできるということで、Dockerを導入したのですが、Dockerを使う最初の一歩がわからず、環境を共有してもらうのに2、3日かかってしまいました。それなので、Dockerを使って環境を共有するまでのやり方をまとめまし…

お問い合わせフォーム プライバシーポリシー

© 2021 Setoti All rights reserved.