Main Content

smooth3

3 次元データの平滑化

    説明

    W = smooth3(V) は容積測定データ V を平滑化し、平滑化されたデータを W で返します。WV と同じ次元の double 配列です。

    W = smooth3(V,method) は指定された平滑化法を使用して、畳み込みカーネルを定義してデータを平滑化します。

    W = smooth3(V,method,size) は、平滑化法の 3 次元ウィンドウ サイズを指定します。

    W = smooth3(V,method,size,sd) は、"gaussian" 平滑化法の標準偏差を指定します。

    すべて折りたたむ

    mri データ セットを読み込み、変数 D に格納された 4 次元配列を 3 次元に圧縮します。その後、データを平滑化します。

    load mri
    D = squeeze(D);
    W = smooth3(D);

    生データおよび平滑化されたデータを等値面として表示します。

    figure
    tiledlayout(1,2)
    nexttile
    p1 = patch(isosurface(D,5),"FaceColor","cyan", ...
        "EdgeColor","none");
    view(3)
    daspect([1,1,0.4])
    camlight
    isonormals(D,p1)
    title("Raw Data")
    
    nexttile
    p2 = patch(isosurface(W,5),"FaceColor","cyan", ...
        "EdgeColor","none");
    view(3)
    daspect([1,1,0.4])
    camlight
    isonormals(W,p2)
    title("Smoothed Data")

    Figure contains 2 axes objects. Axes object 1 with title Raw Data contains an object of type patch. Axes object 2 with title Smoothed Data contains an object of type patch.

    ランダム データの 10×10×10 の配列を作成します。3 次元ウィンドウ サイズを 5 とし、"gaussian" 法を使用してデータを平滑化します。

    data = rand(10,10,10);
    data = smooth3(data,"gaussian",5);

    エンド キャップのある等値面としてデータを表示します。

    patch(isocaps(data,0.5), ...
       "FaceColor","interp","EdgeColor","none")
    p1 = patch(isosurface(data,0.5), ...
       "FaceColor","blue","EdgeColor","none");
    isonormals(data,p1)
    view(3) 
    axis vis3d tight
    camlight left
    lighting gouraud

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

    入力引数

    すべて折りたたむ

    容積測定データ。3 次元配列として指定します。

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

    平滑化法。以下のフィルターのいずれかとして指定します。

    • "box"V の各ウィンドウの加重移動平均

    • "gaussian"V の各ウィンドウのガウス加重移動平均

    平滑加法により、畳み込みカーネルが決定されます。

    選択した平滑化法のウィンドウ サイズ。正の奇数の整数の 3 要素ベクトルまたは正の奇数の整数スカラーとして指定します。size がスカラーの場合、size[size size size] と解釈されます。

    ウィンドウ サイズにより、データに適用される平滑化の程度が決定されます。ウィンドウ サイズが大きくなるほど、平均化処理に使用されるデータ点が増加するため、平滑化の程度が増大します。

    "gaussian" 平滑化法を使用する場合は、標準偏差とウィンドウ サイズにより、データに適用される平滑化の程度が決定されます。

    "gaussian" 平滑化法の標準偏差。数値として指定します。標準偏差値が大きくなるほど、フィルター ウィンドウ内で適用される平均化が増大します。

    平滑化法が "box" に設定されている場合は、sd は効力をもちません。

    データ型: single | double

    拡張機能

    バージョン履歴

    R2006a より前に導入