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

内挿は、既知のデータポイントの離散セットの範囲内で新しいデータポイントを作成する方法です。

6
サンプルから波形のPDFを計算する
しばらく前に、デジタル波形を描画するさまざまな方法を試していましたが、私が試みたのは、振幅エンベロープの標準シルエットではなく、オシロスコープのように表示することでした。これは、正弦波と方形波がスコープ上でどのように見えるかです。 これを行う単純な方法は次のとおりです。 出力画像のオーディオファイルを水平ピクセルごとに1つのチャンクに分割します 各チャンクのサンプル振幅のヒストグラムを計算します ピクセルの列として輝度でヒストグラムをプロットします 次のようなものが生成されます。 これは、チャンクごとに多くのサンプルがあり、信号の周波数がサンプリング周波数と無関係である場合は正常に機能しますが、そうでない場合は機能しません。たとえば、信号周波数がサンプリング周波数の正確な約数である場合、サンプルは各サイクルで正確に同じ振幅で常に発生し、実際の再構成信号がこれらのポイント間に存在しても、ヒストグラムはほんの数ポイントになります。このサインパルスは上記の左と同じくらい滑らかでなければなりませんが、正確に1 kHzであり、サンプルは常に同じポイントの周辺で発生するため、そうではありません。 ポイント数を増やすためにアップサンプリングを試みましたが、問題は解決せず、場合によっては問題を解決するのに役立ちます。 だから、私が本当に欲しいのは、デジタルサンプルから連続的に再構築された信号の真のPDF(確率vs振幅)(振幅vs時間)を計算する方法です。これに使用するアルゴリズムがわかりません。一般に、関数のPDFはその逆関数の導関数です。 sin(x)のPDF:ddバツアークシンx = 11 - x2√ddxarcsin⁡x=11−x2\frac{d}{dx} \arcsin x = \frac{1}{\sqrt{1-x^2}} しかし、逆関数が多値関数である波に対してこれを計算する方法や、それを高速に行う方法はわかりません。それをブランチに分割し、それぞれの逆数を計算し、導関数を取り、それらをすべて合計しますか?しかし、それはかなり複雑で、おそらくもっと簡単な方法があります。 この「補間データのPDF」は、GPSトラックのカーネル密度推定を行う試みにも適用できます。リング状にすべきでしたが、サンプルだけを見て、サンプル間の補間点を考慮していなかったため、KDEはリングというよりもハンプのように見えました。サンプルがわかっているだけであれば、これが最善です。しかし、サンプルは私たちが知っているすべてではありません。また、サンプル間にパスがあることもわかっています。GPSの場合、帯域制限されたオーディオのように完璧なナイキスト再構成はありませんが、補間関数に推測を加えることで基本的な考え方が適用されます。

3
高次フィルターのカスケードバイカッドセクションはどのように機能しますか?
私は8次のIIRフィルターを実装しようとしていますが、これまで読んだすべてのアプリケーションノートと教科書には、2次のセクションとして2を超える次数のフィルターを実装するのが最善であると書かれています。tf2sosMATLABで2次セクションの係数を取得するために使用しましたが、予想どおり、4 2次セクションの6x4係数が得られました。SOSとして実装する前は、8次フィルターには7つの以前のサンプル値を保存する必要がありました(および出力値も)。ここで、2次セクションとして実装するとき、フローが入力から出力までどのように機能するか、2つの前のサンプル値のみを保存する必要がありますか?または、最初のフィルターの出力はx_in2番目のフィルターのように送られますか?
20 filters  filter-design  infinite-impulse-response  biquad  audio  image-processing  distance-metrics  algorithms  interpolation  audio  hardware  performance  sampling  computer-vision  dsp-core  music  frequency-spectrum  matlab  power-spectral-density  filter-design  ica  source-separation  fourier-transform  fourier-transform  sampling  bandpass  audio  algorithms  edge-detection  filters  computer-vision  stereo-vision  filters  finite-impulse-response  infinite-impulse-response  image-processing  blur  impulse-response  state-space  linear-systems  dft  floating-point  software-implementation  oscillator  matched-filter  digital-communications  digital-communications  deconvolution  continuous-signals  discrete-signals  transfer-function  image-processing  computer-vision  3d 

2
周波数領域ゼロパディング-X [N / 2]の特別な処理
周波数領域でゼロパディングすることにより、偶数個のサンプル(たとえばN = 8)で周期信号を補間したいとします。 DFTにしましょうそれでは、X=[A,B,C,D,E,F,G,H] 16個のサンプルにパッドしてみましょうY。私が見たすべての教科書の例とオンラインのチュートリアルでは、与えるときにゼロを挿入します。 (次に、補間された信号です。)[Y4...Y11] Y=[2A,2B,2C,2D,0,0,0,0,0,0,0,0,2E,2F,2G,2H]y = idft(Y) 代わりに使用しないのはなぜ Y=[2A,2B,2C,2D,E,0,0,0,0,0,0,0,E,2F,2G,2H]ですか? 私が知る限り(私の数学の知識は限られています): 総電力を最小化します xが実数値である場合、そうであることが保証されますy yまだ交差するx全てのサンプル点では、必要に応じて(私は、これはすべてのために本当だと思うpところY=[2A,2B,2C,2D,pE,0,0,0,0,0,0,0,(2-p)E,2F,2G,2H]) では、なぜこのように行われないのでしょうか? 編集:x必ずしも実数値または帯域制限ではありません。

2
Parks-McClellanアルゴリズムを使用してナイキスト補間フィルターを設計するにはどうすればよいですか?
Parks-McClellanアルゴリズムを使用して、特定の周波数領域の制約に従う補間フィルターを簡単に設計できます。ただし、時間領域の制約を強制する方法はすぐにはわかりません。特に、ナイキストフィルターの生成に興味があります。したがって、係数でオーバーサンプリングしNている場合、フィルタにゼロkN以外の整数のゼロ交差が必要ですk(これにより、補間器への入力サンプルが出力シーケンスに表示されるようになります)。 Harris 1がハーフバンドフィルターを設計する手法、つまりの特別なケースについて話しているのを見ましたN=2。これに対する一般的な解決策はありますか?(ウィンドウメソッドを使用してフィルターを簡単に設計できることは知っていますが、同じコントロールは得られません。) [1] 通信システムのマルチレート信号処理、 pp。208-209

2
フィルタリングと多項式回帰平滑化の違いは?
古典的なローパスフィルタリング(IIRまたはFIRを使用)と、局所化されたN次多項式回帰および/または補間(アップサンプリングの場合)による「平滑化」、特にNが1より大きい場合の違いただし、回帰近似で使用されるローカルのポイント数よりも少ない。

2
ゼロパディングの奇数長FFTの場合の実数値のリンギング
だから私は、信号と逆変換の周波数応答をゼロで埋める周波数領域補間器を書き込もうとしています。対処しなければならない2つのケースがあります。 偶数長の応答ビンを分割する必要があるのは、あいまいだからです。そこで、スペクトルの負の部分をコピーし、その間にゼロを追加します。Fs/2Fs/2F_s/2n*(interp-1)-1 奇数長の応答ビンがないため、正/負の周波数を分割し、それらの間にゼロを挿入するだけです。Fs/2Fs/2F_s/2n*(interp-1) ゼロパディングを行うコードはこちらにあります // Copy negative frequency components to end of buffer and zero out middle // inp - input buffer of complex floats // n - transform size // interp - interpolation amount void zero_pad_freq(cfloat_t *inp, size_t n, size_t interp) { if ((n % 2) == 0) { …
13 fft  interpolation  c 

2
DFTを使用したサブピクセル画像シフトは実際にどのように機能しますか?
サブピクセルシフト画像の生成を伴うアプリケーションのいくつかの画像補間方法の品質を評価しようとしています。これらすべての補間バリアントを使用してサブピクセルシフトの結果を完全にシフトした画像と比較できると思いましたが、おそらくそれを取得することはできません(補間の必要性はどうなりますか?)。 私は、周波数領域でDFT +シフトを使用することを考えていましたが、画像を明示的に補間する(バイリニア、バイキュービックなどを使用する)場合と比較して、実際にどのように機能するのかわかりません。完全にシフトした画像を生成することはできないと確信していますが、指を置くことはできません。DFTを使用したサブピクセルシフトは、補間の適用と同等ですか?この方法を使用して取得した画像のピクセル値のバイアスはどのくらいですか?ありがとう! 編集: 問題を考えた後、FFTは高調波(正弦関数)の観点から元の関数の近似(さらにはDFT)であるため、何らかの三角補間に相当すると考えました。離散データの「フーリエ級数補間」式は三角補間でしたが、接続されているかどうかはわかりません。

1
異なる位置で測定された信号のピークを自動的に分類するにはどうすればよいですか?
空間のさまざまな位置で、時間の経過とともに音を測定するマイクを持っています。録音されるすべての音は、空間内の同じ位置から発生しますが、ソースポイントから各マイクへの経路が異なるためです。信号は(時間)シフトし、歪む。先験的な知識を使用して、時間シフトを可能な限り補正しましたが、データにはまだ時間シフトが存在しています。測定位置が近いほど、信号は類似しています。 自動的にピークを分類することに興味があります。これは、以下のプロットの2つのマイク信号を「見て」、位置と波形から2つの主要な音があることを「認識」して、それらの時間位置を報告するアルゴリズムを探していることを意味します。 sound 1: sample 17 upper plot, sample 19 lower plot, sound 2: sample 40 upper plot, sample 38 lower plot これを行うために、各ピークの周りでチェビシェフ展開を行い、チェビシェフ係数のベクトルをクラスターアルゴリズムへの入力として使用することを計画していました(k-means?)。 ここに例として、2つのピーク(青い円)の周りの9つのサンプル(赤い)の5項チェビシェフシリーズで近似された2つの近くの位置(青い)で測定された時間信号の一部を示します。 近似はかなり良いです:-)。 しかしながら; 上のプロットのチェビシェフ係数は次のとおりです。 Clu = -1.1834 85.4318 -39.1155 -33.6420 31.0028 Cru =-43.0547 -22.7024 -143.3113 11.1709 0.5416 また、下のプロットのチェビシェフ係数は次のとおりです。 Cll = 13.0926 16.6208 -75.6980 -28.9003 0.0337 Crl =-12.7664 …

1
これらの曲線に最も厳密にフィットさせるには、どの補間方法を使用できますか?
私は、およびのように特定の領域が手でマークされている脳のMRI画像を使用しています。 私は、このような曲線を記述できる補間関数を考え出そうとしています。そのため、機械学習技術を使用して、やのようなマークされていない画像にそのようなマークを自動的に生成できます。 3次スプライン補間を使用して曲線を近似することを検討しましたが、私の知る限り、曲線を複数の部分に分割して補間する必要があります。 私は正しい軌道に乗っていますか、これを行う他の(より良い?)方法はありますか?


1
3次スプライン補間は、補間多項式よりも優れているのはいつですか?
次のプロットは、教科書の例のわずかなバリエーションです。著者はこの例を使用して、等間隔に配置されたサンプルに対する補間多項式が、補間間隔の両端付近に大きな振動を持っていることを示しました。もちろん、3次スプライン補間は、区間全体にわたって適切な近似を提供します。長年にわたり、ここに示されている理由により、等間隔のサンプルに対する高次多項式補間は避けるべきだと考えていました。 ただし、私は最近、高次の補間多項式が3次スプライン補間より少ない近似誤差を与える帯域制限信号の多くの例を見つけました。通常、サンプルレートが十分に高い場合、補間多項式は補間間隔全体でより正確になります。これは、サンプルが信号のナイキスト周波数より少なくとも3倍大きいサンプルレートで等間隔に配置されている場合に当てはまるようです。さらに、(サンプルレート)/(ナイキスト周波数)が増加すると、3次スプライン補間よりも有利になります。 例として、ナイキスト周波数が2 Hz、サンプルレートが6.5 Hzの正弦波の3次スプライン補間と補間多項式を比較します。サンプルポイント間では、補間多項式は実際の信号とまったく同じに見えます。 以下では、2つの近似の誤差を比較します。最初の例と同様に、多項式補間はサンプル間隔の最初と最後の近くで最悪になります。ただし、補間多項式は、サンプル間隔全体にわたって3次スプラインよりも誤差が少なくなります。また、内挿多項式は、短い間隔で外挿するときにエラーが少なくなります。私はよく知られた事実を発見しましたか?もしそうなら、それについてどこで読むことができますか?

3
ゼロ、ファースト、セカンド…n次ホールド
方形関数は次のように定義されます: rect(t)=⎧⎩⎨⎪⎪⎪⎪0121if |t|&gt;12if |t|=12if |t|&lt;12.rect(t)={0if |t|&gt;1212if |t|=121if |t|&lt;12.\mathrm{rect}(t) = \begin{cases} 0 & \mbox{if } |t| > \frac{1}{2} \\ \frac{1}{2} & \mbox{if } |t| = \frac{1}{2} \\ 1 & \mbox{if } |t| < \frac{1}{2}. \\ \end{cases} 三角関数は次のように定義されます: tri(t)={1−|t|,0,|t|&lt;1otherwisetri⁡(t)={1−|t|,|t|&lt;10,otherwise\operatorname{tri}(t) = \begin{cases} 1 - |t|, & |t| < 1 \\ 0, & \mbox{otherwise} …

1
Savitzky Golayフィルターを使用して、離散的にサンプリングされた1D信号の(サンプル間の)極大値を見つけるにはどうすればよいですか?
私は地震信号y(i)を持っています: ここで私は1つの最大値を見つけました:i = 152.54、y = 222.29手動で、それを赤でプロットしました。 すべての最大値を自動的に検索したい。 Savitzky Golay Filter(SGF)を使用して、信号とその導関数の両方の平滑化された推定値を見つけることができ、SGFの利点の1つは、他のフィルターよりも優れた最小値と最大値を維持できることです。これは私の使用に最適に聞こえます。 SGF係数を生成するMatlabスクリプトを見つけました。 これを使用して、導関数の4次のSGF係数を見つけました。小さなMatlabスクリプトをコーディングしました 微分係数の4次SGF係数で信号をたたみ込むことにより、信号の微分係数を求めます 導関数が符号を変更するサンプルのペア(i、i + 1)を見つける iとi + 1の間の線形補間によって導関数のゼロクロッシングを見つけます 脚本: function [maxX,maxY] = findLocalMax(y) % Kernel for 4th order Savitzky-Golay filter for finding derivative: d4 = [0.0724 -0.1195 -0.1625 -0.1061 0 0.1061 0.1625 0.1195 -0.0724]; dy = conv(y,d4,'same'); % derivative …

3
帯域制限された信号のサンプリング中に、サンプリングインスタンス間で「失われる」信号値
ナイキストシャノンサンプリング定理によれば、帯域幅をもつ任意の連続時間信号 BBB ナイキスト周波数よりも小さい fN=fs/2fN=fs/2f_N=f_s/2 (と fsfsf_s サンプリング周波数)、これはサンプリング周波数でサンプリングされます fsfsf_ssinc補間(つまり、Whittaker–Shannon補間公式)によって完全に再構築できます。 一定のサンプリング時間で、大きさが制限された連続時間信号である未知のサンプルをサンプリングすると仮定します。 T=1/fsT=1/fsT=1/f_s サンプルインスタンスで kTkTkT、(k∈Zk∈Zk\in\mathbb{Z})、サンプリングジッタまたは量子化なし。次の制約を追加しますB=αfNB=αfNB=\alpha f_N、 0≤α≤10≤α≤10\leq\alpha\leq 1。 私が理解したいのは以下です: サンプルの瞬間kkk、それぞれについて決定したい αα\alphaサンプル間の任意の連続時間信号の最悪の場合の部分的な「オーバーシュート」k−1k−1k-1 そして kkk、私が持っていたかもしれないこと。つまり、連続時間信号が、サンプルの瞬間の最高(絶対)サンプリング値よりどれだけ高かったかkkk そして k−1k−1k-1。サンプリングによって「失われた」連続信号または再構築(sinc補間は完璧なので!!)。 例: 設定α=1α=1\alpha=1 離散時間信号[1,0,1,0,1,1,0,1,0,1]と仮定します(中央付近のdouble 1に注意してください。この信号は α=1α=1\alpha=1?)。サンプル(黒のインパルス)からのsincの再構成(青い線)は次のようになります(各サンプルに属するsincを灰色でプロットしました): サンプル間の「オーバーシュート」k=0k=0k=0 そして k=1k=1k=1、 ≈0.7≈0.7\approx 0.7 または 70%70%70\%。したがって、元の帯域制限された連続時間、または「完全に帯域制限された再構築された」信号で、値1.7のピークを逃しました。私が3つ以上の連続した1を置いた場合、オーバーシュートは少なくなります(ギブス現象は結局はるかに小さくなります)。したがって、このような2つの連続したサンプルは「最悪のケース」です。 信号を両方向に拡張すると、オーバーシュートが大きくなります。 これは、≈1.1≈1.1\approx 1.1 ほぼ2.1の値に。 シーケンスの長さ 2m2m2m、この「オーバーシュート」 o(m)o(m)o(m) 無期限に成長し、 o(m)∝ln(m)o(m)∝ln⁡(m)o(m)\propto\ln{(m)}に行く ∞∞\infty いつ m→∞m→∞m\to\infty。これは、sincの各サンプルが建設的な「干渉」を生み出し、1/πn1/πn1/\pi n (単位sincのすべてのエンベロープの貢献) n→∞n→∞n\to\infty 収束しません。 …

1
ノイズのある勾配から関数を数値で計算するにはどうすればよいですか?
モデルます。 s (x 、y)= x2+ y2、0 ≤ X ≤ 1 、0 ≤ Y≤ 1 s(バツ、y)=バツ2+y2、0≤バツ≤1、0≤y≤1\ s(x,y)=x^2+y^2, 0 \leq x \leq 1, 0 \leq y \leq 1 モデルを直接観察する代わりに、モデルの派生物といくつかのノイズ(e)を観察しています。 p (x 、y)= sバツ+ e 、q(x 、y)= sy+ e p(バツ、y)=sバツ+e、q(バツ、y)=sy+e\ p(x,y)=s_x+e, q(x,y)=s_y+e p(x、yおよびq(x、y)の測定値からs(x)を推定したいのですが、s(0,0)= 0だと知っています。 勾配定理によれば、 s (x 、y)= ∫(x 、y)(0 、0 )[ sバツ、sy] …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.