主要内容

このペ,ジの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

xspectrogram

短時間フ,リエ変換を使用したクロススペクトログラム

説明

年代= xspectrogram (xyは,xyで指定された信号のクロススペクトログラムを返します。入力信号は同数の要素をもつベクトルでなければなりません。年代の各列は,xyに共通の短時間の,時間が局所化された周波数成分の推定を含みます。

年代= xspectrogram (xy窗口は,窗口を使用してxyをセグメントに分割し,ウィンドウ処理を実行します。

年代= xspectrogram (xy窗口noverlapは,隣り合ったセグメント間でnoverlap個のサンプルのオ,バ,ラップを使用します。

年代= xspectrogram (xy窗口noverlapnfftは,nfftサンプリング点を使用して離散フ,リエ変換を計算します。

年代wt] = xspectrogram(___は,正規化周波数wのベクトルとクロススペクトログラムを計算した時点tのベクトルを返します。この構文には,前の構文の入力引数を任意に組み合わせて含めることができます。

年代ft] = xspectrogram(___fsは周波数fのベクトルを返します。これはサンプルレ,トfsで表されます。fsxspectrogramに対する6番目の入力でなければなりません。サンプルレ,トを入力した場合でも、前のオプション引数の既定値を使用するには、これらの引数を空[]として指定します。

年代wt] = xspectrogram(xy窗口noverlapwは,wで指定した正規化周波数におけるクロススペクトログラムを返します。

年代ft] = xspectrogram(xy窗口noverlapffsは,fで指定した周波数におけるクロススペクトログラムを返します。

___c] = xspectrogram(___は,入力信号の時変複素クロススペクトルの推定を含む行列cも返します。クロススペクトログラム年代cの振幅です。

___] = xspectrogram(___freqrangeは,freqrangeで指定される周波数範囲にわたるクロススペクトログラムを返します。freqrangeの有効なオプションは,“单向的”双侧的および“中心”です。

___] = xspectrogram(___名称,值は,名前と値の組の引数を使用して追加オプションを指定します。オプションには,最小しきい値と出力時間次元が含まれます。

___] = xspectrogram(___spectrumtypeは,spectrumtypepsd的に指定した場合は,短時間のクロスパワ,スペクトル密度推定を返し,spectrumtype“权力”に指定した場合は,短時間のクロスパワ,スペクトル推定を返します。

出力引数なしでxspectrogram (___を使用すると、現在の图ウィンドウにクロススペクトログラムがプロットされます。

xspectrogram (___freqlocでは,周波数をプロットする軸を指定します。freqloc“xaxis”または“桠溪”のいずれかに指定します。

すべて折りたたむ

1 MHzで10 ms間サンプリングした2の線形チャプを生成します。

  • 最初のチャ,プの初期周波数は150 kHzで,測定の最後には350 kHzに増加します。

  • 2番目のチャープの初期周波数は200千赫で測定の最後には300 kHzに増加します。

S/N比が40 dBとなるホワaaplトガウスノaaplズを付加します。

nSamp = 10000;Fs = 1000e3;信噪比= 40;t = (0:nSamp-1)'/Fs;X1 = chirp(t,150e3,t(end),350e3);x1 = x1+randn(size(x1))*std(x1)/db2mag(SNR);X2 = chirp(t,200e3,t(end),300e3);x2 = x2+randn(size(x2))*std(x2)/db2mag(SNR);

2 .。信号を200サンプルのセグメントに分割し,各セグメントにハミングウィンドウを適用します。隣接するセグメント間の80サンプルのオーバーラップ,および1024サンプルのDFT長を指定します。

xspectrogram (x1, x2,汉明(200),80年,1024年,Fs,“桠溪”

图中包含一个轴。坐标轴包含一个image类型的对象。

2番目のチャープを変更し,測定中に周波数が50千赫から350 kHzに増加するようにします。形状係数 β 5 で500サンプルのカザウィンドウを使用して,セグメントにウィンドウを適用します。450サンプルのオ,バ,ラップおよび256のDFT長を指定します。クロススペクトログラムを計算してプロットします。

X2 = chirp(t,50e3,t(end),350e3);x2 = x2+randn(size(x2))*std(x2)/db2mag(SNR);xspectrogram (x1, x2,凯瑟(500 5),450256年,Fs,“桠溪”

图中包含一个轴。坐标轴包含一个image类型的对象。

両方の場合にいて,関数は2。

44100 Hzでサンプリングされた2の音声信号を含むファルを読み込みます。

  • 最初の信号は“变换函数”という女性の声の録音です。

  • 2番目の信号は“改革正义”という同じ女性の声の録音です。

2の信号をプロットします。2番目の信号を垂直方向にオフセットして、両方が表示されるようにします。

负载(“voice.mat”要收听,输入soundsc(transform,fs),pause(2),soundsc(reform,fs)T = (0:length(reform)-1)/fs;情节(t,变换,t,改革+ 0.3)传说(”“变换函数”“改革司法”的

图中包含一个轴。坐标轴包含2个line类型的对象。这些物件代表了“改造功能”、“改造正义”。

2の信号のクロススペクトログラムを計算します。信号を1000サンプルのセグメントに分割し,ハミングウィンドウを適用します。隣接するセグメント間に800個のサンプルのオ,バ,ラップを指定します。4 kHzまでの周波数のみを含めます。

Nwin = 1000;NVLP = 800;Fint = 0:4000;[s,f,t] = xspectrogram(transform,reform,hamming(nwin),nvlp,fint,fs);网格(t,f,20*log10(s))视图(2)轴

图中包含一个轴。坐标轴包含一个surface类型的对象。

クロススペクトログラムは,信号がより多くの周波数成分を共通しても時間間隔を強調表示します。“form”という音節が特に顕著になります。

それぞれ1 kHzで2秒間サンプリングされた2の2次チャプを生成します。両方のチャ,プの初期周波数は100hzで,測定の半ばには200hzに増加します。2番目のチャ,プの最初のチャ,プに対する位相差は23°です。

Fs = 1e3;T = 0:1/fs:2;Y1 = chirp(t,100, 1200,“二次”, 0);Y2 = chirp(t,100, 1200,“二次”、23);

チャ,プの複素クロススペクトログラムを計算し,その間の位相シフトを抽出します。信号を128サンプルのセグメントに分割します。隣接するセグメント間に120個のサンプルのオバラップを指定します。形状係数がβ= 18のカイザーウィンドウを使用して各セグメントをウィンドウ処理し,128サンプルのDFT長を指定します。xspectrogramのプロット機能を使用して,クロススペクトログラムを表示します。

[~ f, xt, c] = xspectrogram (y1, y2,皇帝(128年,18),120128年,fs);xspectrogram (y1、y2、皇帝(128年,18),120128年,fs,“桠溪”

图中包含一个轴。坐标轴包含一个image类型的对象。

クロススペクトログラムの最大エネルギの時間—周波数リッジを抽出して表示します。

[tfr,~,lridge] = tfridge(c,f);持有情节(xt,总和生育率,“k”“线宽”, 2)

图中包含一个轴。坐标轴包含image、line类型的2个对象。

位相シフトは,リッジに沿った時変クロススペクトルの虚数部と実数部の比です。位相シフトを計算して,度単位で表します。平均値を表示します。

PSHFT =角(c(lridge))*180/pi;意思是(pshft)
Ans = -23.0000

3 kHzでそれぞれ1秒間サンプリングされた2の信号を生成します。最初の信号は2次チャープで,測定中に周波数が300 Hzから1300 Hzに増加します。チャプはホワトガウスノズに組み込まれます。2番目の信号もホワイト ノイズに組み込まれますが、これは正弦関数的に変化する周波数成分をもつチャープです。

Fs = 3000;T = 0:1/fs:1-1/fs;X1 = chirp(t,300,t(end),1300,“二次”) + randn(大小(t)) / 100;x2 = exp (2 j *π* 100 * cos(2 *π* 2 * t)) + randn(大小(t)) / 100;

2 .の信号のクロススペクトログラムを計算し,プロットします。隣接するセグメント間で255サンプルがオーバーラップする256サンプルのセグメントに信号を分割します。形状係数がβ= 30のカ。既定のDFTの点の数を使用します。クロススペクトログラムの中央を周波数ゼロに揃えます。

Nwin = 256;xspectrogram (x1, x2, kaiser (nwin 30), nwin-1, [], fs,“中心”“桠溪”

图中包含一个轴。坐标轴包含一个image类型的对象。

パワ,スペクトル密度の代わりにパワ,スペクトルを計算します。-40 dBより小さい値をゼロに設定します。プロットの中央をナ@ @キスト周波数に揃えます。

xspectrogram (x1, x2, kaiser (nwin 30), nwin-1, [], fs,...“权力”“MinThreshold”, -40,“桠溪”)标题(二次啁啾与复啁啾的交叉谱图

图中包含一个轴。以二次啁啾和复啁啾交叉谱图为标题的轴包含一个图像类型的对象。

しきい値処理により,共通周波数の領域がさらに強調表示されます。

2 .。

各シケンスを4096サンプルの長さに指定します。

N = 4096;

最初のシーケンスを作成するために,ホワイトガウスノイズに組み込まれる凸二次チャープを生成し,バンドパスフィルターを適用します。

  • チャプの初期正規化周波数は0.1πで,測定の最後には0.8πに増加します。

  • 16次フィルターは0.2π~ 0.4πラジアン/サンプルの正規化周波数を通過させ,60 dBの阻止帯域の減衰量をもちます。

rx = chirp(0:N-1,0.1/2,N,0.8/2,“二次”[],“凸”) + randn (N - 1) / 100;Dx = designfilt(“bandpassiir”“FilterOrder”, 16岁,...“StopbandFrequency1”, 0.2,“StopbandFrequency2”, 0.4,...“StopbandAttenuation”、60);X = filter(dx,rx);

2番目のシーケンスを作成するために,ホワイトガウスノイズに組み込まれる線形チャープを生成し,バンドストップフィルターを適用します。

  • チャプの初期正規化周波数は0.9πで,測定の最後には0.1πに減少します。

  • 16次フィルターは0.6π~ 0.8πラジアン/サンプルの正規化周波数を阻止し,1 dBの通過帯域リップルをもちます。

ry = chirp(0:N-1,0.9/ 2,n,0.1/2)'+randn(N,1)/100;Dy = designfilt(“bandstopiir”“FilterOrder”, 16岁,...“PassbandFrequency1”, 0.6,“PassbandFrequency2”, 0.8,...“PassbandRipple”1);Y = filter(dy,ry);

2 .のシ,ケンスをプロットします。2番目のシーケンスを垂直方向にオフセットして、両方が表示されるようにします。

情节([x y + 2])

图中包含一个轴。坐标轴包含2个line类型的对象。

xyのクロススペクトログラムを計算し,プロットします。512サンプルのハミングウィンドウを使用します。隣り合ったセグメント間のオ,バ,ラップを500サンプル,dft点を2048に指定します。

xspectrogram (x, y,汉明(512),500年,2048年,“桠溪”

图中包含一个轴。坐标轴包含一个image类型的对象。

-50 dBより小さいクロススペクトログラム値をゼロに設定します。

xspectrogram (x, y,汉明(512),500年,2048年,“MinThreshold”, -50,“桠溪”

图中包含一个轴。坐标轴包含一个image类型的对象。

スペクトログラムに,フィルタ,によって強調または抑制された周波数領域が示されます。

入力引数

すべて折りたたむ

入力信号。ベクトルで指定します。

例:因为(π/ 4 * (0:159))+ randn (1160)は,ホワaaplトガウスノaaplズに含まれる正弦波を指定します。

デ,タ型:|
複素数のサポ,ト:あり

ウィンドウ。整数、あるいは行ベクトルまたは列ベクトルとして指定します。窗口は信号をセグメントに分割するために使用します。

  • 窗口が整数の場合,xspectrogramxyを長さ窗口のセグメントに分割し,各セグメントにその長さのハミングウィンドウを適用します。

  • 窗口がベクトルの場合,xspectrogramxyをベクトルと同じ長さのセグメントに分割し,窗口を使用して各セグメントにウィンドウを適用します。

入力信号をnoverlap個のオーバーラップサンプルをもつ整数個のセグメントに厳密に分割できない場合,それに応じた長さで打ち切られます。

窗口を空として指定した場合,xspectrogramはハミングウィンドウを使用して,xynoverlap個のオバラップサンプルをも8個のセグメントに分割します。

利用可能なウィンドウのリストにいては,ウィンドウを参照してください。

例:损害(N + 1)(1-cos(2 *π* (0:N) / N)) / 2は,いずれも長さN+ 1のハンウィンドウを指定します。

デ,タ型:|

オ,バ,ラップするサンプル数。正の整数で指定します。

  • 窗口がスカラ,の場合,noverlap窗口より小さくなければなりません。

  • 窗口がベクトルの場合,noverlap窗口の長さより小さくなければなりません。

noverlapを空として指定した場合,xspectrogramはセグメント間で50%のオバラップが発生する数を使用します。セグメントの長さを指定していない場合,関数によりnoverlapが⌊n /4.5⌋に設定されます。ここで,nは入力信号の長さです。

デ,タ型:|

DFT点の数。正の整数スカラーとして指定します。nfftを空として指定した場合,xspectrogramによりDFT長が马克斯(256 2pに設定されます。ここでP =⌈log2Nwで,

  • 窗口がスカラ,の場合は,nw窗口です。

  • 窗口がベクトルの場合は,nw长度(窗口です。

デ,タ型:|

正規化周波数。ベクトルとして指定します。wは少なくとも2の要素をもたなければなりません。正規化周波数の単位はラジアン/サンプルです。

例:π。/ [2 - 4]

デ,タ型:|

周波数。ベクトルで指定します。fは少なくとも2の要素をもたなければなりません。fの単位はサンプルレ,トfsにより指定されます。

デ,タ型:|

サンプルレ,ト。正のスカラで指定します。サンプルレ,トは単位時間あたりのサンプル数です。時間の単位が秒の場合,サンプルレ,トの単位はHzです。

デ,タ型:|

クロススペクトル推定の周波数範囲。“单向的”双侧的または“中心”として指定します。実数値信号の場合,既定の設定は“单向的”です。複素数値信号の場合,既定の設定は双侧的で,“单向的”を指定するとエラ,になります。

  • “单向的”-実数の入力信号の片側クロススペクトログラムを返します。nfftが偶数の場合,年代nfft/2 + 1行をも,計算区間は[0,π]ラジアン/サンプルです。nfftが奇数の場合,年代は(nfft+ 1)/2行をも,計算区間は[0,π)ラジアン/サンプルです。fsを指定すると,それぞれの場合の計算区間は[0,fs/2]サ▪▪クル/単位時間,[0,fs/2)サ▪▪クル/単位時間となります。

  • 双侧的-実信号または複素信号の両側クロススペクトログラムを返します。年代nfft行をも,計算区間は[0, 2π)ラジアン/サンプルです。fsを指定した場合,計算区間は[0,fs)サ▪▪クル/単位時間となります。

  • “中心”-中央に揃えた、実信号または複素信号の両側クロススペクトログラムを返します。年代nfft行をもます。nfftが偶数の場合,年代の計算区間は(π-π)ラジアン/サンプルです。nfftが奇数の場合,年代の計算区間は(π-π)ラジアン/サンプルです。fsを指定すると,それぞれの場合の計算区間は(-fs/ 2,fs/2]サ▪▪クル/単位時間,(-fs/ 2,fs/2)サ▪▪クル/単位時間となります。

クロスパワ,スペクトルのスケ,リング。psd的または“权力”として指定します。

  • spectrumtypeを省略するか,psd的を指定すると,クロスパワ,スペクトル密度が返されます。

  • “权力”を指定すると,クロスパワ,スペクトル密度の各推定を分解能帯域幅でスケ,リングします。これはウィンドウの等価ノ@ @ズ帯域幅とセグメント持続時間に依存します。結果は,各周波数のパワ,の推定です。

周波数の表示軸。“xaxis”または“桠溪”で指定します。

  • “xaxis”-周波数がx軸に,時間がy軸に表示されます。

  • “桠溪”-周波数がy軸に,時間がx軸に表示されます。

この引数は出力引数でxspectrogramを呼び出している場合に無視されます。

名前と値のペアの引数

オプションの引数名称,值のコンマ区切りペアを指定します。的名字は引数名で,价值は対応する値です。的名字は引用符で囲まなければなりません。Name1, Value1,…,的家のように,複数の名前と値のペアの引数を,任意の順番で指定できます。

例:“OutputTimeDimension”xspectrogram (x, 100年,“downrows”)xyを長さ100のセグメントに分割し,各セグメントにその長さのハミングウィンドウを適用します。スペクトログラムの出力には,行方向に沿った時間次元があります。

しきい値。MinThresholdで構成されるコンマ区切りのペアと,デシベル単位で表される実数スカラ,として指定します。xspectrogramは,10 log10年代)≤となる年代の要素をゼロに設定します。

出力時間次元。OutputTimeDimensionと,acrosscolumnsまたはdownrowsから構成されるコンマ区切りのペアとして指定します。行に沿った年代ps足球俱乐部,およびtcの時間次元と,列に沿った周波数次元が必要な場合は,この値をdownrowsに設定します。列に沿った年代ps足球俱乐部,およびtcの時間次元と,行に沿った周波数次元が必要な場合は,この値をacrosscolumnsに設定します。関数が出力引数なしで呼び出された場合、この入力は無視されます。

出力引数

すべて折りたたむ

クロススペクトログラム。行列として返されます。時間は年代の列方向に,周波数は行方向に下がって0から増加します。

  • 入力信号xyが長さnの場合,年代はk列をもます。ここで、以下のようになります。

    • 窗口がスカラ,の場合は,k =⌊(N - .noverlap) / (窗口- - - - - -noverlap)⌋。

    • 窗口がベクトルの場合は,k =⌊(N -noverlap) / (长度(窗口- - - - - -noverlap)⌋。

  • 入力信号が実数でnfftが偶数の場合は,年代は(nfft/2 + 1)行になります。

  • 入力信号が実数でnfftが奇数の場合は,年代は(nfft+ 1)/2行になります。

  • 入力信号が複素数の場合は,年代nfft行になります。

デ,タ型:|

正規化周波数。ベクトルとして返されます。wの長さは年代の行数と等しくなります。

デ,タ型:|

時点。ベクトルとして返されます。tの時間値は,窗口を使用して指定された各セグメントの中間点に対応します。

デ,タ型:|

巡回周波数。ベクトルとして返されます。fの長さは年代の行数と等しくなります。

デ,タ型:|

時変複素クロススペクトル。行列として返されます。クロススペクトログラム年代cの振幅です。

デ,タ型:|

参照

Mitra, Sanjit K.数字信号处理:基于计算机的方法,第二版,纽约:McGraw-Hill, 2001。

奥本海姆、艾伦五世、罗纳德·w·谢弗和约翰·r·巴克。离散时间信号处理。第2版。上马鞍河,新泽西州:普伦蒂斯霍尔,1999。

拡張機能

R2017aで導入