タグ付けされた質問 「voice」

4
いびきと音声を区別する方法は?
背景: 私は(に言及したiPhoneアプリに取り組んでいる中で 、いくつかの 他 の記事)その1が眠っていると判断しながら呼吸/いびき「に耳を傾ける」「スリープラボ」の前の画面として(睡眠時無呼吸の兆候がある場合テスト)。アプリケーションは、主にいびき/息を検出するために「スペクトル差」を使用し、睡眠ラボの録音(実際には非常にノイズが多い)に対してテストすると、非常にうまく機能します(約0.85--0.90相関)。 問題: ほとんどの「ベッドルーム」ノイズ(ファンなど)をいくつかの手法でフィルタリングし、人間の耳では検出できないS / Nレベルで呼吸を確実に検出できることがよくあります。問題は音声ノイズです。バックグラウンドでテレビやラジオを走らせることは珍しくありません(または単に誰かが遠くで話していることもあります)。また、声のリズムは呼吸/いびきとほぼ一致します。実際、私はこのアプリを介して故作者/ストーリーテラーのビル・ホルムの録音を実行しましたが、それは本質的にリズム、レベルの変動性、および他のいくつかの測定のいびきと区別できませんでした。(少なくとも彼が起きている間は、睡眠時無呼吸がなかったようです。) ですから、これは少し長めのショット(そしておそらくフォーラムのルールの延長)ですが、私は音声を区別する方法についていくつかのアイデアを探しています。いびきをなんとかフィルタリングする必要はありません(それはいいと思います)が、音声で過度に汚染された「ノイズが多すぎる」サウンドとして拒否する方法が必要なだけです。 何か案は? 公開されたファイル: dropbox.comにいくつかのファイルを配置しました: Epica_Storm_the_Noisy_Sorrow_minus_10dB_wav.dat Holm_5db_noisy_wav.dat recordedFile20120408010300_first_ten_wav.dat 最初の曲はかなりランダムなロック(おそらく)音楽で、2番目の曲は故ビルホルムのスピーチの録音です。両方(いびきと区別するために「ノイズ」のサンプルとして使用します)は、信号を難読化するためにノイズと混合されています。(これにより、それらを識別する作業は非常に困難になります。)3番目のファイルは、真に最初の3分の1がほとんど呼吸し、真ん中の3分の1が呼吸/いびきの混合で、最後の3分の1はかなり安定したいびきです。(ボーナスで咳が出ます。) 多くのブラウザではwavファイルのダウンロードが非常に難しくなるため、3つのファイルはすべて「.wav」から「_wav.dat」に名前が変更されました。ダウンロード後、名前を「.wav」に戻すだけです。 更新:エントロピーは私にとって「トリックをやっている」と思っていましたが、それは主に使用しているテストケースの特性であり、あまりにもうまく設計されていないアルゴリズムでした。一般的な場合、エントロピーは私にとってほとんど役に立たない。 その後、1秒間に約8回サンプリングされた(メインFFTサイクルから統計情報を取得して)信号全体の振幅(パワー、スペクトルフラックス、その他のいくつかの測定を試しました)のFFT(いくつかの異なるウィンドウ関数を使用)を計算する手法を試しましたこれは1024/8000秒ごとです)。1024サンプルでは、​​これは約2分の時間範囲をカバーします。いびき/呼吸対音声/音楽のリズムが遅いためにこのパターンを見ることができることを望んでいました(また、「変動性」問題に対処するより良い方法かもしれません)あちこちにあるパターンの、私が本当にラッチできるものは何もありません。 (詳細:場合によっては、信号振幅のFFTは、約0.2Hzに強いピークと階段高調波を持つ非常に明確なパターンを生成します。しかし、ほとんどの場合、パターンはそれほど明確ではなく、音声と音楽はあまり明確に生成できません性能指数の相関値を計算する方法はあるかもしれませんが、約4次の多項式にカーブフィッティングする必要があり、電話で1秒に1回実行することは実用的ではないようです) また、スペクトルを分割した5つの個別の「バンド」に対して、同じ平均振幅のFFTを実行しようとしました。バンドは4000-2000、2000-1000、1000-500、および500-0です。最初の4つのバンドのパターンは全体的なパターンとほぼ同じでした(ただし、実際の「目立つ」バンドはなく、より高い周波数帯域ではほとんど無視できるほど小さい信号でしたが)。 バウンティ: 彼がこれまでで最も生産的な提案であったことを考えると、彼は新しいものを何も提供していませんが、ネイサンにバウンティを与えるつもりです。しかし、他の誰かが良いアイデアを思いついたら、他の誰かに喜んで表彰したいと思ういくつかのポイントがあります。

4
誰かの声を模倣/コピー/偽造する方法は?
サンプル誰かの声に、既存のアプリケーションはありますし、任意の他の音声を調節したり、元の1に似ているために、テキストを合成するためにそれを使うのか? たとえば、このAT&Tの音声合成デモでは、サンプリングされた人間の声に基づいていると思われるプリセットから音声と言語を選択できます。 このプロセスをどのように呼びますか?音声変調ですか?音声合成?
19 modulation  voice 

4
ボコーダーのプログラミング
"Songify"のような自分のボコーダーシンセサイザーをプログラムしたいのですが、ボコーダーアルゴリズムの単純なアルゴリズムが見つかりません。多分あなたはボコーダーがどのように機能するかについての情報を探す場所を説明したり教えたりすることができます。

3
ノイズの多い音声信号からメッセージをフィルタリングする
非常にノイズの多いオーディオファイル(.wav)に隠されたメッセージを解読しようとしています(低ドローンが追加されたホワイトノイズだと思います)。メッセージは6桁の数字です。騒音についてこれ以上詳しく知りません。 私はローパスフィルターを使用して、高周波数のほとんどを排除すると数字が聞こえるようになることを期待しましたが、低ドローンを十分に取り除くことができず、声を十分に聞くことができません。私の試みは次のとおりでした(採用された機能freq_space_low_pass_filterは最後に含まれています): [data, SampleRate, NbitsPerSample]=wavread('noisy_msg6.wav'); y=data(:,1); % we will work only with one channel in this demo N=length(y); %number of sample points t=( (1:N)*1/SampleRate ).'; % time spacing is 1/SampleRate and we want column vector Y=fft(y); spectrum_freq=fourier_frequencies(SampleRate, N); Freq3db=100; [spectrum_filtered,g_vs_freq]=freq_space_low_pass_filter(Y, SampleRate, Freq3db); y_filtered=ifft(spectrum_filtered); y_filtered=real(y_filtered); wavwrite(y_filtered/(0.1+max(y_filtered)), SampleRate, NbitsPerSample, 'noisy_msg6_filtered.wav'); %%%%%%%%down sampling%%%%%%%% …

1
線形予測コーディング(LPC)の背後にある理論
LPCの背後にある理論は何ですか? LPCの特定の実装が、他の圧縮音声符号化方式よりも伝送または符号化エラーの量子化に対してより耐性があると言われているのはなぜですか? LPCメソッドは、カルマンフィルターメソッドの使用と同様に、平滑化または短期の "予測"にも使用できますか? LPCの使用はどのような条件または制約の下で有効ですか?

3
Siriは「Hey Siri」と言って私をどのように認識しますか?
私は私のiPhoneは、継続的に言って、私のためにリスニングできる方法を理解しようとしていますHey Siri、Alexa、Hey CortanaまたはOkay Googleすぐに私のバッテリーを下に排出せず。 2種類のアルゴリズムを想像しました。10 ms幅のスライスなどの時間のスライスを200 msごとに記録し、特定の周波数で同期検出を実行するもの。ただし、これらのパラメータは私の声の特性に強く依存します。さらに、それは絶えずHey Siriどこかの真ん中で一致することを試み続けるためにそれでも多くのCPUパワーを消費します。 どのような効率的な低電力アルゴリズム/実装(ハードウェアまたはソフトウェア)がこのようなタスクを実行できますか? これはどういうわけか私が思うこの特許に関連しています:https : //www.google.com/patents/US20160253997 隠れたマルコフモデルについての記事をいくつか読んだが、それが非常に低消費電力のアプローチであるとは思えない。

2
他の100の声から人の声をフィルタリングする方法はありますか?
つまり、人間の声は単一の正弦波ではなく、周波数の異なる無制限の正弦波の集まりではないことを知りました。 ウィキペディアによると、 声は、人間が声のひだを使って話したり、歌ったり、笑ったり、泣いたり、叫んだりして作った音で構成されています。その周波数の範囲は、約60〜7000 Hzです。 したがって、人間の声が複合信号である場合、60Hzから7KHzまでのさまざまな周波数範囲が含まれます。 同じ歌を一緒に歌っている人々のグループがいる場合、各人が独自の声の周波数の範囲を持っていると仮定します。 例えば、 人Aが次の周波数を持っている場合:100Hz、250HZ 6KHz、10Hz、87Hz、52Hz、2KHz ....... また、人物Bには、217Hz1、11Hz、12Hz、2323Hz、839Hz、4KHz、100Hz、10Hz ...があります。 上記の例のように、人Aと人Bの両方で類似している非常に多くの周波数が必要です。周波数100Hzと10Hzは2人の人の間で共通です。 私はテレビ番組名「フリンジ」を見ていました。そこでは、他の人の声もそこに存在している間に、オーディオファイルから特定の男の声を除外しました。 それで、すべての人に共通する周波数が非常に多い場合、人の周波数の振幅で何かをしなければならない場合、彼らは正確にどのようにして数百人の声から誰かの声をフィルタリングしますか?

1
音声と音楽の変化を検出する
音声部分と音楽部分の両方を含むオーディオファイルがたくさんあります(ラジオなど)。たとえば、特定のファイルは次のセクションで構成される場合があります。 music --- speech --- music --- speech --- music --- speech --- music 私の目標は、ファイルが音楽と音声の間でいつ変更されるかを検出し、音声部分だけを残して音楽部分を切り取ることです。ただし、音声と音楽を区別するためにどのような方法を使用するかはわかりません。テンポを検出することを検討していましたが、一部の音楽が非常に遅いか、テンポが変化しています。 (私たちがそれをしている間、私が自分で書く必要がないように、音声と音楽を区別できる既存のソフトウェアライブラリはありますか?)


1
音声圧縮-LPCでは、線形予測フィルターは一般的なレベルでどのように機能しますか?
こんにちは、私はマルチメディアシステムコースを受講しており、火曜日の試験の準備をしています。一般的なレベルでLPC圧縮について理解しようとしていますが、線形予測フィルター部分で何が起こっているのか問題があります。これはこれまでのところ私の理解です: LPCは、アナログ信号をデジタル化し、セグメントに分割することによって機能します。各セグメントについて、信号の主要な特徴を決定し、これらを可能な限り正確にエンコードしようとします。主な機能は、信号のピッチ(つまり、基本的なフォルマント周波数)、信号のラウドネス、および音声が有声か無声かです。声道励起パラメータと呼ばれるパラメータも決定され、声道モデルで使用されて、音を生成した声道の状態をより適切にモデル化します。このデータはネットワークを介して渡され、受信側でデコードされます。信号のピッチは有声または無声シンセサイザーへの入力として使用され、ラウドネスデータはこの結果の信号の振幅をブーストするために使用されます。 私のノートでは、声道モデルは線形予測フィルターを使用し、n番目のサンプルは、前のpサンプルとシンセサイザーからのエラー項の線形結合であると述べています。 これは、エンコーダーとデコーダーの両方で最後のpサンプルの移動平均を維持することを意味しますか?エンコーダでこの平均信号と実際の信号の差に対応するデータのみを送信するようにするには、 なぜこれらの以前のサンプルの線形結合なのですか?私の理解では、音のラウドネス、周波数、有声/無声の性質を抽出し、実際の信号と予測信号との差ができるだけ小さくなるようにそれらを選択することにより、これらの声道励起パラメータを生成します。確かに、これらの前のサンプルの平均が次のサンプルのより良い指標になるでしょうか? あなたがそれらを指摘することができれば私の理解に穴があればそれは素晴らしいでしょう!前もって感謝します!
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.