(57)【特許請求の範囲】
【請求項１】
離散的かつ不等間隔に分布した各測定点の座標情報と前記各測定点での測定値とを組にした測定データ群に対して、不等間隔データのまま前記各測定点の座標空間上で前記測定値にフィルタ処理を行うデータ処理装置であって、
フィルタ処理の対象となる任意の位置の測定点の座標情報と前記測定データ群の各測定点の座標情報に基づいて、前記任意の位置の測定点と前記測定データ群の各測定点との間の各距離を求める距離算出部と、
前記測定データ群の各測定点に対応するフィルタ係数を前記距離算出部で算出した各距離を変数としてフィルタ決定関数に代入して求める係数算出部と、を有し、前記各距離に基づいて前記測定データ群の各測定点に対応した各フィルタ係数を算出するフィルタ係数決定手段と、
前記フィルタ係数決定手段にて算出したフィルタ係数の合計値を求める係数合計部と、
前記測定データ群の測定値と該測定値の測定点の各距離を反映した前記フィルタ係数とを乗算することにより乗算値を求め、該乗算値を前記測定データ群の各測定値に渡って合計する乗算値合計部と、
該乗算値合計部で算出した合計値を前記係数合計部で算出したフィルタ係数の合計値で除算して、前記任意の位置の測定点の測定値に対するフィルタ処理された値を求める除算部と、を有し、前記測定データ群の各測定値と前記フィルタ係数決定手段にて算出した各フィルタ係数とに基づいて、前記任意の位置の測定点の測定値に対するフィルタ処理された値を得る処理手段と、を備えることを特徴とするデータ処理装置。
【請求項２】
請求項１に記載のデータ処理装置において、
前記フィルタ係数決定手段は測定点間の距離が所定値以上の場合フィルタ係数を０とすることを特徴とするデータ処理装置。
【請求項３】
離散的かつ不等間隔に分布した各測定点の座標情報と該各測定点での測定値とを組にした測定データ群に対して、不等間隔データのまま前記各測定点の座標空間上で前記測定値にフィルタ処理を行うデータ処理方法であって、
前記各測定点の座標情報と前記各測定点での測定値とを組にした前記測定データ群を取得するデータ取得工程と、
フィルタ処理の対象となる任意の位置の測定点の測定値に対し、該測定点と前記測定データ群の各測定点との間の各距離を前記座標情報から求め、該各距離を変数としてフィルタ決定関数に代入して前記測定データ群の各測定点に対応した各フィルタ係数を算出するフィルタ係数決定工程と、
前記フィルタ係数決定工程にて算出したフィルタ係数の合計値を求め、
前記測定データ群の測定値と該測定値の測定点の各距離を反映した前記フィルタ係数とを乗算することにより乗算値を求め、該乗算値を前記測定データ群の各測定値に渡って合計値とし、
該合計値を前記フィルタ係数の合計値で除算して、前記任意の位置の測定点の測定値に対するフィルタ処理された値を求める処理工程と、を備えることを特徴とするデータ処理方法。
【請求項４】
請求項３記載のデータ処理方法をコンピュータに実行させることを特徴とするデータ処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ処理装置、特に不等間隔データに対するフィルタ処理機構の改良に関する。
【背景技術】
【０００２】
三次元測定機等の表面性状測定機は、被測定物表面の変位情報を検知する測定子を被測定物に対して相対的に移動させ、測定子の位置情報を基に被測定物の表面形状等を計測するものである。例えば真円度測定では被測定物を回転、もしくは測定子を被測定物の周りに回転させ、半径方向の測定子の位置情報を一定のサンプリング時間間隔で取得する。こうして離散的に分布した測定点の座標（被測定物の中心を軸とした角度座標）と各測定点での測定値（半径方向の変位値）とを組とした測定データ群を得ることとなる。このような測定データ群に対し、ノイズ等の外乱成分を取り除く等の目的で各種フィルタ処理が施されることがある（例えば、特許文献１、２参照）。
【特許文献１】特開２０００−１６１９８３号公報
【特許文献２】特開２００４−３３３２９３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上記の空間デジタルフィルタ処理を行う場合、処理対象の測定データ群の測定点が座標空間で等間隔に分布する必要がある。例えば上記の真円度測定の例では、隣接する測定点の間隔、つまり隣接する測定点の角度座標の差が、どの隣接する測定点に対しても一定である必要がある。しかしながら、測定データ群を一定のサンプリング時間間隔で取得したとしても、必ずしも等間隔な測定点を有するデータとなるわけではない。例えば上記の真円度測定の場合、被測定物や測定子の回転運動の速度が変動することで隣接する測定点間の間隔（角度）が変動を受けたり、被測定物の一部が切り欠きや溝などのため一部の領域が欠損し、その領域の部分の測定データがない（測定点が存在しない）等といったことが生じる。
従来このような不等間隔データに対しフィルタ処理を行う際には、直線補間やスプライン補間等の補間法によってあらかじめ測定データ群の測定点を人工的に等間隔化し、それに対しフィルタ処理を行うという方法をとっていた。しかしながら、この補間処理によって測定データ群に意図しない情報が付加されてしまい、処理後のデータに対する信頼性の点で大きな問題があった。
本発明は上記課題に鑑みなされたものであり、その目的は測定点の間隔が一定間隔でない不等間隔の測定データに対し、フィルタ処理を行うことが可能なデータ処理装置を提供することにある。
【課題を解決するための手段】
【０００４】
上記目的を達成するため、本発明のデータ処理装置は、離散的かつ不等間隔に分布した測定点の座標情報と前記各測定点での測定値とを組にした測定データ群に対して、不等間隔データのまま測定点の座標空間上で前記測定値にフィルタ処理を行うデータ処理装置であって、フィルタ処理の対象となる任意の位置の測定点の測定値に対し、該任意の位置の測定点と前記測定データ群の各測定点との間の各距離を前記座標情報から求め、該各距離に基いて前記測定データ群の各測定点に対応した各フィルタ係数を前記距離算出部で算出した各距離を変数としてフィルタ決定関数に代入して求めるフィルタ係数決定手段と、前記フィルタ係数決定工程にて算出したフィルタ係数の合計値を求め、前記測定データ群の測定値と該測定値の測定点の各距離を反映した前記フィルタ係数とを乗算することにより乗算値を求め、該乗算値を前記測定データ群の各測定値に渡って合計値とし、該合計値を前記係数合計部で算出したフィルタ係数の合計値で除算して、前記任意の位置の測定点の測定値に対するフィルタ処理された値を求める処理手段と、を備えることを特徴とする。
【０００５】
上記のデータ処理装置において、前記フィルタ係数決定手段は、前記任意の位置の測定点の座標情報と前記測定データ群の各測定点の座標情報に基いて、前記任意の位置の測定点と前記測定データ群の各測定点との間の各距離を求める距離算出部と、前記測定データ群の各測定点に対応するフィルタ係数を前記距離算出部で算出した各距離を変数としてフィルタ決定関数に代入して求める係数算出部と、を備えることが好適である。
【０００６】
上記のデータ処理装置において、前記処理手段は、前記フィルタ係数決定手段にて算出したフィルタ係数の合計値を求める係数合計部と、前記測定データ群の測定値と該測定値の測定点の各距離を反映した前記フィルタ係数とを乗算し、該乗算したものを前記測定データ群の各測定値に渡って合計する乗算値合計部と、該乗算値合計部で算出した合計値を前記係数合計部で算出したフィルタ係数の合計値で除算して前記任意の位置の測定点の測定値に対するフィルタ処理された値を求める除算部と、を備えることが好適である。
上記のデータ処理装置において、前記フィルタ係数決定手段は測定点間の距離が所定値以上の場合フィルタ係数を０とすることが好適である。
【０００７】
また、本発明のデータ処理方法は、離散的かつ不等間隔に分布した測定点の座標情報と前記各測定点での測定値とを組にした測定データ群に対して、不等間隔データのまま測定点の座標空間上で前記測定値にフィルタ処理を行うデータ処理方法であって、フィルタ処理の対象となる任意の位置の測定点の測定値に対し、該任意の位置の測定点と前記測定データ群の各測定点との間の各距離を前記座標情報から求め、該各距離を変数としてフィルタ決定関数に代入して前記測定データ群の各測定点に対応した各フィルタ係数を算出するフィルタ係数決定工程と、前記フィルタ係数決定工程にて算出したフィルタ係数の合計値を求め、前記測定データ群の測定値と該測定値の測定点の各距離を反映した前記フィルタ係数とを乗算することにより乗算値を求め、該乗算値を前記測定データ群の各測定値に渡って合計値とし、該合計値を前記係数合計部で算出したフィルタ係数の合計値で除算して、前記任意の位置の測定点の測定値に対するフィルタ処理された値を求める処理工程と、を備えることを特徴とする。
【０００８】
また、本発明のデータ処理プログラムは、離散的かつ不等間隔に分布した測定点の座標情報と前記各測定点での測定値とを組にした測定データ群に対して、不等間隔データのまま測定点の座標空間上で前記測定値にフィルタ処理を行うデータ処理装置をコンピュータで構成し、フィルタ処理の対象となる任意の位置の測定点の測定値に対し、該測定点と前記測定データ群の各測定点との間の各距離を前記座標情報から求め、該各距離を変数としてフィルタ決定関数に代入して前記測定データ群の各測定点に対応した各フィルタ係数を算出するフィルタ係数決定工程と、前記フィルタ係数決定工程にて算出したフィルタ係数の合計値を求め、前記測定データ群の測定値と該測定値の測定点の各距離を反映した前記フィルタ係数とを乗算することにより乗算値を求め、該乗算値を前記測定データ群の各測定値に渡って合計値とし、該合計値を前記係数合計部で算出したフィルタ係数の合計値で除算して、前記任意の位置の測定点の測定値に対するフィルタ処理された値を求める処理工程と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【０００９】
本発明のデータ処理装置及び方法によれば、フィルタ処理の対象となる一の測定値に対し、その測定点と前記測定データ群の各測定点との間の位置関係を求め、該位置関係に基いてフィルタ係数を決定するように構成したため、測定点の間隔が不等間隔である測定データ群に対して測定点の位置情報を維持したまま、つまり不等間隔データのまま、フィルタ処理を行うことが可能となった。
【発明を実施するための最良の形態】
【００１０】
本発明のデータ処理装置は、離散的かつ不等間隔に分布した測定点の座標情報と前記各測定点上での測定値とを組にした測定データ群に対して、測定点の座標空間上で前記測定値にフィルタ処理を行うためのものであり、以下に図面を参照してその好適な実施形態を説明する。
図１は本発明の実施形態にかかるデータ処理装置の概略構成図である。データ処理装置１０はコンピュータ等で構成されており、測定系１２から送られる測定データ群の処理をプログラムとして実行する。本実施形態では測定系１２として三次元測定機を用いた場合を想定して説明を行うが、本発明のデータ処理装置１０は三次元測定機からの測定データに限らず、他の表面性状測定装置もしくは他の測定装置によって測定した不等間隔な測定データ群に対しても、好適にフィルタ処理を施すことができる。
【００１１】
測定系１２は、被測定物の表面を走査する測定子１４と、測定子１４を三次元的に移動させる移動手段１６と、測定子１４の位置情報を検知する検知手段１８と、を備える。移動手段１６により測定子１４を所定の速度で被測定物の表面上を移動させ、所定のサンプリング時間間隔で測定子１４の位置情報を検知手段１８により取得する。この結果、離散的に分布した測定点の座標情報と各測定点での測定値とを組にした測定データ群が得られる。例えば、測定子１４をＸ方向に走査し（Ｙ方向の位置は固定）、被測定物のＸＹ平面断面形状を測定する場合では、各サンプリング点における測定子１４のＸ座標の値を測定点の座標情報、Ｚ座標の値を各測定点での測定値として扱う。同様に倣い測定による真円度測定の場合（つまり測定子１４を被測定物の周上を走査して、所定のサンプリング時間間隔で測定子の位置情報を検出する場合）は、各サンプリング点における測定子１４の角度位置（被測定物の最小二乗円、もしくはその他の方式によって定められる円の中心を軸とした角度）を座標情報、半径方向の位置情報を測定値として扱う。また、表面粗さを測定する場合のように測定子を二次元方向（ＸＹ方向）に走査した場合は、各サンプリング点での測定子のＸＹ座標が測定点の座標情報、各サンプリング点での測定子のＺ方向の位置を測定値として扱えばよい。
【００１２】
図２は測定点の座標空間が一次元の場合の測定点の位置関係を示す模式図である。上記の例でいうと、測定子１４をＸ方向に走査して被測定物のＸＹ平面断面形状を測定する場合や真円度測定の場合に相当する。なお、座標空間とは測定点の位置を指定するための座標値パラメータの張る空間のことであり、また、座標空間の次元とは独立な座標値パラメータの個数のことをいう。被測定物に欠落部分がなく、また測定子の移動速度やサンプリング時間間隔が一定となるよう理想的に制御されていると仮定すると、図２（ａ）に示したように測定データ群に含まれる各測定点（図ではその座標の値をＰ（１）〜Ｐ（ｎ）で示した）は等間隔に並ぶ。つまり、座標Ｐ（２）とＰ（１）の差ΔＸ１、Ｐ（３）とＰ（２）の差ΔＸ２、・・・、Ｐ（ｍ）とＰ（ｍ＋１）の差ΔＸｍは、それぞれ等しくなる（ΔＸ１＝ΔＸ２＝・・・＝ΔＸｍ＝・・・＝一定）。
【００１３】
しかしながら実際の測定では、測定子の移動速度の変動や被測定物の欠落部分の存在等の理由のため、得られる測定データ群の測定点は上記のように等間隔には分布しない。つまり、図２（ｂ）に示したように、座標Ｐ（２）とＰ（１）の差ΔＸ１、Ｐ（３）とＰ（２）の差ΔＸ２、・・・、Ｐ（ｍ）とＰ（ｍ＋１）の差ΔＸｍ等は全てが互いに等しいわけではなく（つまり、少なくとも一つ、異なるものが存在する）、測定点は不等間隔に分布することになる。
同様に図３に測定点の座標空間が二次元の場合の測定点の位置関係を示す模式図を示す。これは測定子をＸＹ方向（水平方向）に走査して、Ｚ方向（高さ方向）の位置情報を取得し、被測定物の表面形状を測定する場合に相当する。理想的な状態を仮定すると、図３（ａ）に示すように、測定点は格子点上に整列し、隣接する測定点間の間隔はそれぞれ等しくなるはずである。しかしながら、実際の測定では図３（ｂ）に示すように、測定点は格子点上に整列するとは限らず、隣接する測定点間の間隔はそれぞれ異なるものとなってしまう。
【００１４】
このように、一般に得られる測定データ群は測定点が不等間隔に分布したものである。このような測定データ群に対してもノイズ除去等の目的で空間フィルタ処理を施したい場合があるが、従来のフィルタ処理は測定データ群の測定点が等間隔で並んでいることを前提としていた。
【００１５】
本実施形態のデータ処理装置は従来の空間フィルタとは異なり、上記のような不等間隔データに対するフィルタ処理を可能にするものである。そのため、図１のデータ処理装置１０は、不等間隔に分布した各測定点に対応する各フィルタ係数を決定するフィルタ係数決定手段２０と、測定データ群の各測定値と上記の各フィルタ係数とに基いてフィルタ処理を行う処理手段２２と、を備えている。ここでデータ処理装置１０がコンピュータにより構成され、フィルタ係数決定手段２０および処理手段２２として機能するプログラムを組み込んでいることが好適である。測定系１２からの測定データ群は各測定値とその測定点の座標情報とを関連付けてデータ処理装置１０の記憶手段２４の測定データ記憶部３６に記憶されている。そして、測定データ群のうち少なくともフィルタ処理を行いたい測定値に対して、下記のように座標空間上でフィルタ処理を行う。フィルタ処理後の値は、測定点の座標情報と関連付けて記憶手段２４の処理データ記憶部３８に記憶される。
【００１６】
フィルタ係数決定手段２０は、フィルタ処理の対象となる一の測定値に対し、その測定点と測定データ群の各測定点との間の位置関係を測定データ記憶部３６に記憶された座標情報から求め、この位置関係に基いて測定データ群の各測定点に対応したフィルタ係数を算出する（図４参照）。まず、フィルタ係数決定手段２０の距離算出部２６は測定データ記憶部３６に記憶された各測定点の座標情報を読み出し、フィルタ処理の対象となる一の測定値の測定点（図４（ａ）でＰ（ｉ）で示される点）と測定データ群の各測定点（図４（ａ）のＰ（４）、Ｐ（ｉ−１），Ｐ（ｉ），Ｐ（ｉ＋１），Ｐ（ｉ＋２）等）との間の座標空間上での各距離（図４（ａ）のＸ４,ｉ，Ｘｉ−１,ｉ，Ｘｉ，ｉ（＝０），Ｘｉ＋１,ｉ，Ｘｉ＋２,ｉ等）を求める。なお、上記の「測定データ群の各測定点」にはフィルタ対象となる一の測定値の測定点のことも含まれる。次に係数算出部２８では、測定データ群の各測定点に対応する各フィルタ係数（図４（ａ）のＫ４,ｉ，Ｋｉ−１,ｉ，Ｋｉ，ｉ，Ｋｉ＋１,ｉ，Ｋｉ＋２,ｉ等）を距離算出部２６にて算出した各距離に基いて算出する。こうして得られた各フィルタ係数は、対応する測定点に関連付けて記憶手段２４の係数記憶部４０に記憶される。ここでは、フィルタ係数を決定するために測定点間の距離のみを考慮した場合を示したが、所望のフィルタ特性を得るために測定点間の方向なども考慮に入れて決定するようにしてもよい（図４（ｂ）参照）。さらに、フィルタ対象となる測定値の測定点から測った距離が一定値以上の場合フィルタ係数を０とすることも好適である。これにより、計算時間を短縮することができる。
【００１７】
処理手段２２は上記のようにして決定した各フィルタ係数と測定データ群の各測定値とに基いて、前記一の測定値に対するフィルタ処理された値を得る。つまり、処理手段２２の係数合計部３０では係数記憶部４０に記憶された測定データ群の各測定点に対応したフィルタ係数を読み出し、その合計を求めて記憶手段２４の係数合計値記憶部４２に記憶する。乗算値合計部３２では各フィルタ係数を係数記憶部４０から読み出し、また各フィルタ係数に対応する測定点での測定値を測定データ記憶部３６から読み出す。そして、読み出したフィルタ係数と測定値とを乗算して、該乗算したものを測定データ群の各測定点に渡って合計する。この乗算合計値は記憶手段２４の乗算合計値記憶部４４に記憶される。そして、除算部３４では係数合計値記憶部４２、乗算合計値記憶部４４から係数合計値および乗算合計値を読み出し、乗算合計値を係数合計値で除算することで、前記一の測定値に対するフィルタ処理された値を求める。得られたフィルタ処理後の値は測定点の座標情報と関連付けて記憶手段２４の処理データ記憶部３８に記憶される。以上の処理をフィルタ処理の対象とする全ての測定値に対して行う。なお、各フィルタ係数を先に係数合計値で除算しておいてから、その値を各測定値に乗算して和をとることでフィルタ処理後の値を求めてもよい。
また、データ処理装置１０は、ディスプレイ等で構成される表示手段４６と、マウス、キーボード等の入力手段４８とを備えており、フィルタ処理前、処理後の測定データ群の表示や、フィルタ条件の設定などを行うことができる。
【００１８】
図５はデータ処理工程の流れを示した図である。ここで、測定データ群の測定値の個数はＮ個あるとし、測定点の位置座標をＰ（ｍ）、その測定点での測定値をＤ（ｍ）（ただし、ｍ=１〜Ｎ）とする。
フィルタ係数決定工程ではフィルタ処理対象となる一の測定値に対し、測定データ群の測定点の座標情報を基にフィルタ係数を算出する。例えば、１個目の測定値Ｄ（１）をフィルタ処理の対象とした場合、その測定点Ｐ（１）と測定データ群の各測定点Ｐ（ｍ）（ｍ＝１〜Ｎ）との位置関係（距離等）を求める。そして、算出した位置関係に基いて各フィルタ係数Ｋ１ｍを算出する。各フィルタ係数Ｋ１ｍはフィルタ対象となる測定値の測定点Ｐ（１）と各測定点Ｐ（ｍ）とを変数とする関数Ｋ[Ｐ（ｍ）,Ｐ（１）］によって決められることになる。つまり、各フィルタ係数Ｋ１ｍは測定点Ｐ（１）から測った測定点Ｐ（ｍ）までの距離および／または方向の関数として求まる。フィルタ処理の特性は関数Ｋ[Ｐ（ｍ）,Ｐ（１）］の関数形によって決まるため、データ処理の目的に応じて関数形を選択できるように構成しておくことが好適である。位置関係からのフィルタ係数の算出は上記の関数を計算するようにプログラムしておくか、もしくは位置関係とフィルタ係数とを対応させたテーブルとして記憶手段に記憶しておけばよい。
【００１９】
次に処理工程では、上記で算出した各フィルタ係数Ｋ１ｍと測定データ群の各測定値Ｄ（ｍ）（ｍ＝１〜Ｎ）とを基に、フィルタ対象となる測定値Ｄ（１）に対してフィルタ処理を行う。そのため、まず、算出した各測定値の測定点の位置Ｐ（ｍ）に対応するフィルタ係数Ｋ１ｍ＝Ｋ［Ｐ（ｍ）,Ｐ（１）］を各測定点に渡って（つまり、ｍを１からＮまで）合計した和ＳＫ１を求める。つまり、和ＳＫ１は次の式で表される。
【数１】
0004705815.tif 000002
また、各測定値Ｄ（ｍ）に対応したフィルタ係数Ｋ１ｍを乗算し、これを各測定点に渡って合計した和Ｓ１を求める。つまり、和Ｓ１は次の式で表される。
【数２】
0004705815.tif 000003
このようにして求めた和Ｓ１を和ＳＫ１で除算することで、フィルタ処理後の測定値Ｄ（１）’が次のように求められる。
【数３】
0004705815.tif 000004
【００２０】
そして、その他の測定値Ｄ（２）,Ｄ（３）,・・・,Ｄ（Ｎ）に対しても同様な処理を行うことで測定データ群に含まれる全ての（もしくはフィルタ処理を行いたい一部の）測定値に対してフィルタ処理が完了する。このようにして得られたフィルタ処理結果は表示手段などに出力される。また、各測定点に対応したフィルタ係数を求めるときに、必ずしも全ての測定値に対して求める必要はなく、例えばフィルタ対象とする測定値の測定位置から所定距離以内の測定点でのみフィルタ係数を求める（つまり、所定距離以上の測定点でのフィルタ係数を０とする）こととしてもよい。
【００２１】
次に上記実施形態にかかる装置を用いてシミュレーションを行った例を幾つか示す。ここでは真円度測定を行った場合、つまり複数の角度位置での被測定物の半径を測定した測定データ群に対してフィルタ処理を行う場合を想定している。測定点となる角度位置は、被測定物に対する測定子の相対速度の変動等により不等間隔となる。そこで不等間隔の測定データ（データ数：２００個）を得るために、測定点の位置座標Ｐ（ｎ）（ｎ＝１〜２００）を、−π〜πまでの全周にわたってランダムに一様分布するという条件で生成した乱数によって与えた。また、各測定点での測定値Ｄ（ｎ）（ｎ＝１〜２００）を、分散が１で正規分布をするような条件で生成した乱数によって与えた。図６に、上記の条件で生成した不等間隔データのグラフを示す。図６（ａ）は直交座標表示のグラフ（横軸が測定点の座標（角度位置）、縦軸が測定値（半径方向の変位）を示している）を示し、図６（ｂ）は極座標表示のグラフを示してる。ただし、図６（ｂ）では極座標表示するために測定値Ｄに半径１０のオフセットを加えている。
【００２２】
＜実施例１＞
フィルタ係数を決定する関数（以下、フィルタ係数決定関数と呼ぶ）として、測定点間の距離Ｘを変数とした、次の式で表されるガウス関数を用いた。
【数４】
0004705815.tif 000005
ここで定数filter_Kは、
【数５】
0004705815.tif 000006
とした。図７に数４のガウス関数のグラフを示す（ただし、グラフの最大値が１となるように縦軸のスケールを調整した）。上記数４で示したガウス関数をフィルタ係数決定関数として使用しているため、本実施例のフィルタ処理はガウシアンフィルタの特性を持つ。
【００２３】
フィルタ係数Ｋｎｍは上記数４のＫ（Ｘ）を用いて、Ｋｎｍ＝Ｋ（｜｜Ｐ（ｍ）−Ｐ（ｎ）｜｜）と表される。ただし、｜｜Ｐ（ｍ）−Ｐ（ｎ）｜｜はＰ（ｍ）とＰ（ｎ）間の距離、つまり、ｍｉｎ｛｜Ｐ（ｍ）−Ｐ（ｎ）｜，２π−｜Ｐ（ｍ）−Ｐ（ｎ）｜｝のことを表している。ここで、｜・｜は絶対値、ｍｉｎ｛・｝は｜Ｐ（ｍ）−Ｐ（ｎ）｜と（２π−｜Ｐ（ｍ）−Ｐ（ｎ）｜）のうちの小さい値のことを表している。すると、測定位置Ｐ（ｎ）におけるフィルタ後の値Ｄ（ｎ）’は、次の式で表される。
【数６】
0004705815.tif 000007
ここで、ＳＫｎは
【数７】
0004705815.tif 000008
である。
【００２４】
上記のフィルタ処理をｎ＝１から２００までの全ての測定点で行った。その結果を図８、図９に示す。図８は直交座標表示（横軸が測定点の座標（角度位置）、縦軸が測定値（半径方向の変位））で表したグラフ、図９は極座標表示で表したグラフである。なお、図９では極座標表示するために半径１０のオフセットを加えて表示してある。また、図８（ａ）、図９（ａ）がフィルタ処理前のデータであり、図８（ｂ）、図９（ｂ）がフィルタ処理後のデータである。
【００２５】
＜実施例２＞
次にフィルタ係数決定関数として次式で表される指数型関数を用いたフィルタ処理を行った。
【数８】
0004705815.tif 000009
ここで、ＡＢＳ（Ｘ）はＸの絶対値を求める関数、また定数filter_Kは
【数９】
0004705815.tif 000010
とした。図１０に数８の指数型関数のグラフを示す（ただし、グラフの最大値が１となるように縦軸のスケールを調整した）。実施例２では上記の指数型関数をフィルタ係数決定関数として使用しているので、時定数＝filter_Kのローパスフィルターの特性を持つこととなる。
【００２６】
数８のＫ（Ｘ）を用いて、実施例１と同様にフィルタ係数Ｋｎｍ＝Ｋ（｜｜Ｐ（ｍ）−Ｐ（ｎ）｜｜）を求め、このフィルタ係数Ｋｎｍを用いて実施例１と同様にｎ＝１から２００までの全ての測定値に対してフィルタ処理を行った。その結果を図１１、図１２に示す。図１１は直交座標表示（横軸が測定点の座標（角度位置）、縦軸が測定値（半径方向の変位））で表したグラフ、図１２は極座標表示で表したグラフである。なお、図１２では極座標表示するために半径１０のオフセットを加えて表示してある。また、図１１（ａ）、図１２（ａ）がフィルタ処理前のデータであり、図１１（ｂ）、図１２（ｂ）がフィルタ後のデータである。
【００２７】
＜実施例３＞
フィルタ係数決定関数として次式で表される矩形関数を用いてフィルタ処理を行った。
【数１０】
0004705815.tif 000011
ここで、ＡＢＳ（Ｘ）はＸの絶対値を求める関数、また定数filter_Kは
【数１１】
0004705815.tif 000012
とした。図１３に数１０の矩形関数のグラフを示す（ただし、縦軸のスケールをグラフの最大値が１となるよう調整した）。実施例３では上記の矩形関数をフィルタ係数決定関数として使用しているので、区間＝２・filter_Kの移動平均フィルタの特性を持つことになる。
【００２８】
数１０のＫ（Ｘ）を用いて、実施例１と同様に、フィルタ係数Ｋｎｍ＝Ｋ（｜｜Ｐ（ｍ）−Ｐ（ｎ）｜｜）を求め、このフィルタ係数Ｋｎｍを用いてｎ＝１から２００までの全ての測定値に対してフィルタ処理を行った。その結果を図１４、図１５に示す。図１４は直交座標表示（横軸が測定点の座標（角度位置）、縦軸が測定値（半径方向の変位））で表したグラフ、図１５は極座標表示で表したグラフである。なお、図１５では極座標表示するために半径１０のオフセットを加えて表示してある。図１４（ａ）、図１５（ａ）がフィルタ処理前のデータであり、図１４（ｂ）、図１５（ｂ）がフィルタ後のデータである。
以上のように、本実施形態のデータ処理装置および方法によれば、不等間隔の測定データ、例えば三次元測定機の倣い測定、真円度測定、形状測定等において測定されたデータに対し、測定点の位置情報を保持したままフィルタ処理を実現することができる。本方法は従来のように補間法によって測定データに人工的なデータを付加していないため、従来よりもより信頼性の高い結果が得られると期待される。
【図面の簡単な説明】
【００２９】
【図１】本発明にかかる実施形態のデータ処理装置の概略構成図
【図２】測定点の座標空間が一次元の場合の等間隔データ（図２（ａ））、不等間隔データ（図２（ｂ））の例を示した説明図
【図３】測定点の座標空間が二次元の場合の等間隔データ（図３（ａ））、不等間隔データ（図３（ｂ））の例を示した説明図
【図４】フィルタ係数の算出についての説明図
【図５】データ処理工程の説明図
【図６】本発明にかかる実施例で用いた不等間隔データを示すグラフ
【図７】実施例１で使用するフィルタ係数を決定する関数（ガウス関数）を示すグラフ
【図８】実施例１で行ったフィルタ処理の結果を直交座標で示したグラフ（図８（ａ）がフィルタ処理前、図８（ｂ）がフィルタ処理後）
【図９】実施例１で行ったフィルタ処理の結果を極座標で示したグラフ（図９（ａ）がフィルタ処理前、図９（ｂ）がフィルタ処理後）
【図１０】実施例２で使用するフィルタ係数を決定する関数（指数型関数）を示すグラフ
【図１１】実施例２で行ったフィルタ処理の結果を直交座標で示したグラフ（図１１（ａ）がフィルタ処理前、図１１（ｂ）がフィルタ処理後）
【図１２】実施例２で行ったフィルタ処理の結果を極座標で示したグラフ（図１２（ａ）がフィルタ処理前、図１２（ｂ）がフィルタ処理後）
【図１３】実施例３で使用するフィルタ係数を決定する関数（矩形型関数）を示すグラフ
【図１４】実施例３で行ったフィルタ処理の結果を直交座標で示したグラフ（図１４（ａ）がフィルタ処理前、図１４（ｂ）がフィルタ処理後）
【図１５】実施例３で行ったフィルタ処理の結果を極座標で示したグラフ（図１５（ａ）がフィルタ処理前、図１５（ｂ）がフィルタ処理後）
【符号の説明】
【００３０】
１０        フィルタ処理装置
１２        測定系
２０        フィルタ係数決定手段
２２        処理手段
【図１】
0004705815.tif 000013
【図２】
0004705815.tif 000014
【図３】
0004705815.tif 000015
【図４】
0004705815.tif 000016
【図５】
0004705815.tif 000017
【図６】
0004705815.tif 000018
【図７】
0004705815.tif 000019
【図８】
0004705815.tif 000020
【図９】
0004705815.tif 000021
【図１０】
0004705815.tif 000022
【図１１】
0004705815.tif 000023
【図１２】
0004705815.tif 000024
【図１３】
0004705815.tif 000025
【図１４】
0004705815.tif 000026
【図１５】
0004705815.tif 000027