fullseye

robust_gaussian_profile — ROUGHNESS prepare op

使い方

ロバスト・ガウシアン回帰フィルタ(断面): 外れ値・傷に引きずられない平均線と粗さ。

ガウス重みの局所回帰(次数 order)に Tukey の biweight を掛けて反復する。普通の ガウスフィルタは深い溝や突起にそのまま引きずられ、平均線が傷の側へ凹む。この op は 傷の部分の重みを下げる(|r| ≥ c·median|r| で 0)ので、平均線は傷を無視する。

戻り値は (roughness, mean_line, info)。roughness = z - mean_line。端は 削らず 全長を返す(窓に入るデータだけで回帰するので、ガウス平均と違って端でも偏らない。 端の信頼度が気になるなら両端 λc/2 を捨てる)。info は反復回数・収束・重みの要約。

引数 z 断面 z[i](1 次元、有限値のみ)。 dx 標本間隔。 lambda_c カットオフ波長(透過率 50 %)。2*dx 以上、評価長さ以下。 c biweight の定数(既定 4.4)。しきい値は c × median|残差|。 order 0 = 重み付き平均、1 = 局所直線(既定)。内部の核はどちらも同じで、 カットオフでの透過率は 0.5(閉形式 exp(-π (α λc f)²)、f = 1/λc)。 robust False なら重み 1 のまま(普通の線形ガウス回帰。比較・基準用)。 truncate 窓の半径 truncate·λc(0.5 以上)。既定 1.0。0.75(GAUSS_TRUNCATE)に すると、既存の surface_filter と内部で一致する(0.5 は規格の文面の打ち切り)。 max_iter 反復の上限(None = 200)。収束しなければ 拒否する。 tol 収束判定: 平均線の変化の最大が tol × median|残差| 以下。

fail-closed

出典(式は論文のものを再実装。規格の本文は写していない): ISO 16610-21 / -31 の ガウス回帰の考え方、Seewig, “Gaussian Regression Filters”(Computational Surface and Roundness Metrology, Springer 2009)、沼田・藤原・舟橋・輿水、 精密工学会誌 76 (2010)(高速 M 推定)。

詳しい使い方ガイド

参考(サンプルデータ・文献)

実行できる例(この op を実際に呼ぶ検証済みサンプル)

型が繋がる次の op(signal を入力に取れる)

robust_spline_profile · profile_params

同カテゴリ(prepare)

surface_form_remove · surface_filter · robust_spline_profile · robust_gaussian_surface


Provenance: roughness.py — ROUGHNESS operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.