Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

dsp.ZeroCrossingDetector

ゼロクロッシングの検出

説明

dsp.ZeroCrossingDetector System object™ は、信号がゼロを横切るまたは符号を変更する回数をカウントします。特定のチャネルの信号がゼロを横切るかどうかを検出するために、オブジェクトは次の条件を探します。ここで、xi-l は現在の信号値であり、xi-1 は前の信号値です。

  • xi < 0 および xi-1 > 0

  • xi > 0 および xi-1 < 0

  • ある正の整数値 L の場合は、xi < 0、xi-l = 0、および xi-L-1 > 0 です。ここで、0lL です。

  • ある正の整数値 L の場合、xi > 0、xi-l = 0、および xi-L-1 < 0 です。ここで、0lL です。

最初の入力値の場合、xi-1 と xi-2 はゼロです。

信号がゼロを横切るまたは符号を変更する回数をカウントするには、次のようにします。

  1. dsp.ZeroCrossingDetector オブジェクトを作成します。

  2. 関数と同様に、引数を指定してオブジェクトを呼び出します。

System object の機能の詳細については、System object とはを参照してください。

作成

説明

zcd = dsp.ZeroCrossingDetector は、信号がゼロを横切る回数を計算するゼロクロッシング検出オブジェクトを返します。

使用法

説明

zcdOut = zcd(input) は入力のゼロクロッシングの回数を計算します。入力の各列は独立したチャネルとして扱われます。

入力引数

すべて展開する

ゼロクロッシングがオブジェクトによってカウントされるデータ入力。ベクトルまたは行列として指定します。

例: rand(20,1)-0.3

例: rand(20,2)-0.3

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fi

出力引数

すべて展開する

データ入力におけるゼロクロッシングの回数。次のいずれかとして返されます。

  • スカラー –– データ入力が列ベクトルである場合、スカラー出力はデータ入力内のゼロクロッシングの数です。

  • 行ベクトル –– データ入力が行列の場合、行のベクトル出力内の各要素は、データ入力の対応する列のゼロクロッシングの数です。

例: 10

例: [9,6]

データ型: uint32

オブジェクト関数

オブジェクト関数を使用するには、System object を最初の入力引数として指定します。たとえば、obj という名前の System object のシステム リソースを解放するには、次の構文を使用します。

release(obj)

すべて展開する

stepSystem object のアルゴリズムの実行
releaseリソースを解放し、System object のプロパティ値と入力特性の変更を可能にします。
resetSystem object の内部状態のリセット

すべて折りたたむ

心電図データでのゼロクロッシング回数を検出します。

EcgData = ecg(500)';
zcd = dsp.ZeroCrossingDetector;
numZeroCross = zcd(EcgData)
numZeroCross = uint32
    4
plot(1:500,EcgData,'b',[0 500],[0 0],'r','linewidth',2)

Figure contains an axes object. The axes object contains 2 objects of type line.

拡張機能

バージョン履歴

R2012a で導入

参考

オブジェクト