(57)【要約】【課題】異体型の人体の３次元形状データであっても、比較的簡易な手法で生成できるようにする。【解決手段】ある態様の３次元形状データ生成装置では、対象人体について予め採寸された断面の大きさと、基準人体の断面形状データから得られる断面の大きさとの比率が求められる（Ｓ１〜Ｓ４）。そして、基準人体データを構成する断面形状データにその比率をかけることにより対象人体の各断面形状が算出され（Ｓ５）、さらに各断面形状が対応する脊柱位置に配置されることにより、対象人体の３次元形状データが得られる（Ｓ６〜Ｓ９）。【選択図】図１７
2008032489.tif 000002
【特許請求の範囲】
【請求項１】
対象人体の３次元形状データを生成する３次元形状データ生成装置において、
基準人体における所定の特徴点を含む複数箇所の断面形状データを、その基準人体の脊柱位置に対応づけて記憶する基準データ記憶部と、
前記対象人体における各特徴点の位置情報と、その各特徴点を含む断面位置の幅および厚みを含む採寸データとをそれぞれ記憶する測定データ記憶部と、
各特徴点の位置情報に基づき、前記対象人体の脊柱位置を算出する脊柱位置算出部と、
各採寸データにかかる幅方向の大きさおよび厚み方向の大きさと、その採寸データの断面位置に対応する前記基準人体の断面形状データから得られる幅方向の大きさおよび厚み方向の大きさとの比率を、それぞれ算出する比率算出部と、
前記基準人体の断面形状データと前記比率算出部が算出した比率とに基づいて、前記対象人体における各断面形状を算出する断面形状算出部と、
前記断面形状算出部が算出した各断面形状を、前記脊柱位置算出部が算出した対応する脊柱位置にそれぞれ配置するとともに、隣接する各断面形状をつなぐことにより３次元形状データを生成する形状データ生成部と、
を備えたことを特徴とする人体の３次元形状データ生成装置。
【請求項２】
前記基準データ記憶部は、前記基準人体としての予め選択された標準体型の人体の断面形状データを、繰り返し使用される汎用データとして記憶し、
前記測定データ記憶部は、前記対象人体ごとに前記特徴点の位置情報および前記採寸データを記憶すること、
を特徴とする請求項１に記載の人体の３次元形状データ生成装置。
【請求項３】
前記断面形状算出部は、
前記基準人体および前記対象人体のそれぞれの断面形状データについて、各背部中央から予め設定した距離の位置に前記脊柱位置を設定し、
前記厚み方向については、実質的に前記脊柱位置よりも前方の部分の位置を比率計算により算出すること、
を特徴とする請求項１に記載の人体の３次元形状データ生成装置。
【請求項４】
前記脊柱位置算出部は、前記特徴点の位置情報からその特徴点を含む断面形状における脊柱の通過位置を算出し、各断面形状における脊柱の通過位置をとおる近似曲線を求めることによって脊柱形状を算出し、
前記形状データ生成部は、前記脊柱位置算出部が算出した脊柱形状における対応する脊柱位置に前記各断面形状を配置すること、
を特徴とする請求項１に記載の人体の３次元形状データ生成装置。
【請求項５】
前記基準データ記憶部は、前記断面形状データを、脊柱形状に実質的に直交する局所座標面上における前記脊柱位置を中心とする座標データ群として記憶し、
前記断面形状算出部は、局所座標系における前記基準人体の断面形状データの各座標データに前記比率をかけた座標値の集合を、前記対象人体の各断面形状として算出すること、
を特徴とする請求項４に記載の人体の３次元形状データ生成装置。
【請求項６】
前記断面形状算出部は、前記脊柱形状に沿って隣接する断面形状間の断面形状を補間演算し、
前記形状データ生成部は、前記隣接する断面形状間に前記補間演算された断面形状を配置し、その補間された断面形状を含めて各断面形状をつなぐことにより、前記３次元形状データを生成すること、
を特徴とする請求項４に記載の人体の３次元形状データ生成装置。
【請求項７】
前記測定データ記憶部は、さらに前記対象人体の各特徴点を含む断面位置の周囲長を記憶し、
前記断面形状算出部は、前記比率に基づいて算出した断面形状から得られる周囲長と、前記測定データ記憶部に記憶された対応する断面位置の周囲長との差が所定値以上である場合には、両周囲長の差が前記所定値未満となるように前記比率に基づいて算出した断面形状を補正すること、
を特徴とする請求項１に記載の人体の３次元形状データ生成装置。
【請求項８】
前記形状データ生成部により生成された３次元形状データから得られた基準多面体を記憶する基準多面体記憶部と、
前記基準多面体の表面近傍に判別点を生成する判別点生成部と、
前記判別点を中心とする所定の半径の近傍球体内に近傍点を乱数により発生させ、前記近傍球体内の前記近傍点が前記基準多面体の内部に含まれる割合を示す占有率を算出する占有率算出部と、
前記占有率が所定の判定閾値以上である場合に、前記判別点は前記対象人体の３次元形状に含まれると判定し、前記占有率が前記判定閾値より小さい場合に、前記判別点は前記対象人体の３次元形状に含まれないと判定する有効判別点判定部と、
前記判定により前記対象人体の３次元形状に含まれると判定された前記判別点を頂点とするポリゴンにより、前記対象人体の３次元形状を表した３次元形状データを生成する平滑データ生成部と、
をさらに含むことを特徴とする請求項１に記載の人体の３次元形状データ生成装置。
【請求項９】
対象人体の３次元形状データを生成する３次元形状データ生成方法において、
基準人体における所定の特徴点を含む複数の断面形状データを、その基準人体の脊柱位置に対応づけて取得する基準データ取得ステップと、
前記対象人体における各特徴点の位置情報と、その各特徴点を含む断面位置の幅および厚みを含む採寸データとをそれぞれ取得する測定データ取得ステップと、
各特徴点の位置情報に基づき、前記対象人体の脊柱位置を算出する脊柱位置算出ステップと、
各採寸データにかかる幅方向の大きさおよび厚み方向の大きさと、その採寸データの断面位置に対応する前記基準人体の断面形状データから得られる幅方向の大きさおよび厚み方向の大きさとの比率を、それぞれ算出する比率算出ステップと、
前記基準人体の断面形状データと前記比率算出ステップにて算出された比率とに基づいて、前記対象人体における各断面形状を算出する断面形状算出ステップと、
前記断面形状算出ステップにて算出された各断面形状を、前記脊柱位置算出ステップにて算出された対応する脊柱位置にそれぞれ配置するとともに、隣接する各断面形状をつなぐことにより３次元形状データを生成する形状データ生成ステップと、
を備えたことを特徴とする人体の３次元形状データ生成方法。
【請求項１０】
対象人体の３次元形状データを生成する処理をコンピュータに実行させるためのプログラムであって、
基準人体における所定の特徴点を含む複数の断面形状データを、その基準人体の脊柱位置に対応づけて取得する基準データ取得ステップと、
前記対象人体における各特徴点の位置情報と、その各特徴点を含む断面位置の幅および厚みを含む採寸データとをそれぞれ取得する測定データ取得ステップと、
各特徴点の位置情報に基づき、前記対象人体の脊柱位置を算出する脊柱位置算出ステップと、
各採寸データにかかる幅方向の大きさおよび厚み方向の大きさと、その採寸データの断面位置に対応する前記基準人体の断面形状データから得られる幅方向の大きさおよび厚み方向の大きさとの比率を、それぞれ算出する比率算出ステップと、
前記基準人体の断面形状データと前記比率算出ステップにて算出された比率とに基づいて、前記対象人体における各断面形状を算出する断面形状算出ステップと、
前記断面形状算出ステップにて算出された各断面形状を、前記脊柱位置算出ステップにて算出された対応する脊柱位置にそれぞれ配置するとともに、隣接する各断面形状をつなぐことにより３次元形状データを生成する形状データ生成ステップと、
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、人体の３次元形状を表す３次元形状データを生成するための３次元形状データ生成方法および３次元形状生成装置に関する。
【背景技術】
【０００２】
従来より、服飾デザインの分野では、物理的な人台に布を直接着せ付けて型紙を作成していく立体裁断という方法が知られている。この立体裁断法により、比較的自由度の高い衣服設計が可能となっている。一方、立体裁断法では各人の体型に応じて多種類の人台を用意する必要があり、また実際に布地を用意する必要があることから、作業上の制約が多いという問題がある。
【０００３】
これに対し、最近ではアパレルＣＡＤシステムが普及してきており、上述のような制約が徐々に解消されつつある。すなわち、身体の所定の採寸箇所を計測して得られたサイズデータからの体型データや人台の作成、既知の型紙の体型データや人台への着せ付け、型紙のサイズ変更や生地柄の貼り付けなどがコンピュータ上で可能になっている。
【０００４】
たとえば、衣服を求める顧客が自分の体型に合った衣服のデザイン画を描き、これを基にその衣服の型紙パターンをＣＡＤ／ＣＡＭ技術を応用して敏速・簡易に作成できる衣服の型紙パターンの自動作成システム等が提案されている（たとえば特許文献１参照）。
【特許文献１】特開２００１−２４９９５７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、一般に、衣服の作成のためのシステムには様々な体型の人に適合できることが望まれる。この観点から言えば、現状のアパレルＣＡＤシステムは、標準体型からの軽微なずれ、たとえば肩や背中の形状のずれなどには対応できる。しかし、介護の現場などで必要とするような様々な体型、たとえば背中や腰が曲がっているなどの標準体型と異なる特殊な体型（以下「異体型」という）の人に対して適用できるまでには至っていない。
【０００６】
このため、現在では特に高齢者や障害者向けの衣料の制作において、異体型の人に対する特殊な人台を用意して立体裁断するという手法がとられたりしている。しかしながら、標準的な異体型というものが存在しないため、この手法による衣服の製作は汎用性に乏しいという問題がある。また、たとえば異体型の人の体型データを得るためにその体型を様々な角度から撮影したり細かく計測したりすることも考えられるが、コストが嵩み、またプライバシーの問題が発生する可能性もある。
【０００７】
本発明はこうした課題に鑑みてなされたものであり、異体型の人体の３次元形状データであっても比較的簡易な手法で生成できる３次元形状データ生成装置および３次元形状データ生成方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明のある態様の３次元形状データ生成装置は、対象人体の３次元形状データを生成する３次元形状データ生成装置において、基準人体における所定の特徴点を含む複数箇所の断面形状データを、その基準人体の脊柱位置に対応づけて記憶する基準データ記憶部と、対象人体における各特徴点の位置情報と、その各特徴点を含む断面位置の幅および厚みを含む採寸データとをそれぞれ記憶する測定データ記憶部と、各特徴点の位置情報に基づき、対象人体の脊柱位置を算出する脊柱位置算出部と、各採寸データにかかる幅方向の大きさおよび厚み方向の大きさと、その採寸データの断面位置に対応する基準人体の断面形状データから得られる幅方向の大きさおよび厚み方向の大きさとの比率を、それぞれ算出する比率算出部と、基準人体の断面形状データと比率算出部が算出した比率とに基づいて、対象人体における各断面形状を算出する断面形状算出部と、断面形状算出部が算出した各断面形状を、脊柱位置算出部が算出した対応する脊柱位置にそれぞれ配置するとともに、隣接する各断面形状をつなぐことにより３次元形状データを生成する形状データ生成部と、を備える。
【０００９】
ここで、「対象人体」とは、当該３次元形状データを生成する対象者の人体を意味する。一方、「基準人体」とは、対象人体の３次元形状データを生成する際に用いられる基準となる人体を意味し、いわゆる標準体型の人体が該当し得る。基準人体の３次元形状データは、個々の対象人体の３次元形状データの生成に共通に用いられる。この形態では、「対象人体」として、たとえば背中や腰が曲がっているなどの標準体型と異なる特殊な体型（異体型）の人体を対象としており、予め取得した基準人体の３次元形状データを変形することにより対象人体の３次元形状データを生成する。
【００１０】
また、「所定の特徴点」とは、人体の骨格の形状を特定するための計測対象となる人体の表面位置を意味する。後述のように、この特徴点には人体の断面における脊柱の通過位置を特定できるものが含まれ得る。したがって、この特徴点の位置が特定できれば脊柱の通過位置を算出でき、その脊柱の通過位置を人体の各断面で接続すれば、脊柱の大まかな形状を推定することも可能になる。言い換えれば、特徴点とこれを含む断面が特定できれば、その断面と脊柱位置とを対応させ得る。基準データ記憶部には、このように推定される脊柱形状の脊柱位置に対応づけて断面形状データが記憶されている。
【００１１】
さらに、対象人体における各特徴点の位置情報および採寸データが測定データ記憶部に記憶されているが、個々の対象人体に関するデータは、基準人体に関して記憶されているデータよりも少ない。すなわち、上述のように対象者が異体型の人体を有する場合には、標準体型の人に対してコンプレックスを持っていることもあり得るため、その体型を詳細に計測すると不快感を与えたりプライバシーの問題が発生する可能性がある。そこで、対象人体については、決められた特徴点の位置と所定の採寸データとを含む限られた情報が取得される。これら特徴点の位置や採寸データは、所定の計測機器やメジャーなどを用いてごく自然に計測され得る。
【００１２】
この態様によれば、対象人体について予め採寸された幅方向の大きさおよび厚み方向の大きさと、これに対応する基準人体の断面形状データから得られる幅方向の大きさおよび厚み方向の大きさとの比率が求められる。そして、基準人体の断面形状データとその比率を用いることにより対象人体の各断面形状が算出される。さらに、各断面形状を対応する脊柱位置に配置してそれぞれ接続することにより、対象人体の３次元形状データが得られる。
【００１３】
すなわち、基準人体と対象人体との比率を用いて基準データを拡大又は縮小することにより、対象人体の３次元形状データが得られる。このため、対象者の人体を詳細に計測することなく、比較的簡易に３次元形状データを生成することができる。また、採寸データなど対象者の人体の情報については少なく抑えることができるため、対象者への負担を軽くすることができ、またプライバシーの問題が発生するのを防止することができる。
【００１４】
このような３次元形状データ生成装置は、形状データ生成部により生成された３次元形状データから得られた基準多面体を記憶する基準多面体記憶部と、基準多面体の表面近傍に判別点を生成する判別点生成部と、判別点を中心とする所定の半径の近傍球体内に近傍点を乱数により発生させ、近傍球体内の近傍点が基準多面体の内部に含まれる割合を示す占有率を算出する占有率算出部と、占有率が所定の判定閾値以上である場合に、判別点は対象人体の３次元形状に含まれると判定し、占有率が判定閾値より小さい場合に、判別点は対象人体の３次元形状に含まれないと判定する有効判別点判定部と、判定により対象人体の３次元形状に含まれると判定された判別点を頂点とするポリゴンにより、対象人体の３次元形状を表した３次元形状データを生成する平滑データ生成部と、をさらに含んでもよい。
【００１５】
この態様によれば、対象人体の３次元形状データが平滑化されるため、より実際の人体の形状に近づけることができる。なお、このように平滑化した３次元形状データ、又はその平滑化の程度を大きくして得られた３次元形状データを、衣服の製作に用いる人台の３次元形状データとすることも可能である。
【００１６】
本発明の別の態様は、３次元形状データ生成方法である。この方法は、対象人体の３次元形状データを生成する３次元形状データ生成方法において、基準人体における所定の特徴点を含む複数の断面形状データを、その基準人体の脊柱位置に対応づけて取得する基準データ取得ステップと、対象人体における各特徴点の位置情報と、その各特徴点を含む断面位置の幅および厚みを含む採寸データとをそれぞれ取得する測定データ取得ステップと、各特徴点の位置情報に基づき、対象人体の脊柱位置を算出する脊柱位置算出ステップと、各採寸データにかかる幅方向の大きさおよび厚み方向の大きさと、その採寸データの断面位置に対応する基準人体の断面形状データから得られる幅方向の大きさおよび厚み方向の大きさとの比率を、それぞれ算出する比率算出ステップと、基準人体の断面形状データと比率算出ステップにて算出された比率とに基づいて、対象人体における各断面形状を算出する断面形状算出ステップと、断面形状算出ステップにて算出された各断面形状を、脊柱位置算出ステップにて算出された対応する脊柱位置にそれぞれ配置するとともに、隣接する各断面形状をつなぐことにより３次元形状データを生成する形状データ生成ステップと、を備える。
【００１７】
ここで、「対象人体」、「基準人体」および「所定の特徴点」などの用語の意義等については、上述のとおりである。
【００１８】
この態様においても、基準人体と対象人体との比率を用いて基準データを拡大又は縮小することにより、対象人体の３次元形状データを比較的簡易に生成することができる。また、対象者への負担を軽くすることができるとともに、プライバシーの問題が発生するのを防止することもできる。
【００１９】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００２０】
本発明によれば、異体型の人体の３次元形状データであっても比較的簡易な手法で生成できる。
【発明を実施するための最良の形態】
【００２１】
以下、図面を参照しつつ本発明を実施するための最良の形態について詳細に説明する。
【００２２】
まず、本実施の形態に係る人体の３次元形状データの生成手順について説明する。  
本実施の形態の３次元形状データの生成方法は、主として背中や腰が曲がっているなどの標準体型と異なる特殊な体型（異体型）を有する人を対象者として適用される。この対象者の３次元形状データ（以下「対象人体データ」という）は、標準体型に近い人体の３次元形状データ（以下「基準人体データ」という）を予め作成しておき、その基準人体データを変形することにより得られる。このため、以下においては、基準人体データの作成および対象人体データの作成の各段階を順次説明する。
【００２３】
［基準人体データの作成］  
基準人体データの作成は、以下のようにして行われる。なお、この基準人体データは、対象人体データの作成毎に作成されるものではなく、異体型の対象者が変わっても繰り返し使用され得る汎用的なデータとして位置づけられる。
【００２４】
まず、標準体型の人体の３次元計測データを取得する。  
ここでは、予め選ばれた標準体型の近い被計測者の体型を、光測定またはレーザー測定による体型測定器等を利用して計測する。たとえば、光学式三角測量法により人体の表面の位置座標を高さ方向に５ｍｍ間隔で測定する装置が市販されているので、これを用いることができる。この装置には、被計測者を囲むように複数のセンサヘッドが配置されている。各センサヘッドには、光源であるレーザダイオードと受光センサとしてのＣＣＤ（Charge Coupled Devices）とが組み込まれている。被計測者は、その体型が正しく測定されるように、たとえば極薄手の衣服を着用して測定に備える。
【００２５】
レーザダイオードによる光は、被計測者の身体表面で拡散反射され、センサヘッド内のそれぞれのＣＣＤに入力され、位置に対応した信号として取り出される。これらのセンサヘッドが被計測者の上方から下方に等間隔で移動し、各位置で輪切り状に人体表面の点の位置を測定する。１つの輪切り状のリング内では周方向に等角度で測定点が設定され、測定された人体表面の位置座標が順次記録される。これにより、標準体型の人体の３次元計測データが得られる。
【００２６】
次に、骨格の主要な特徴点であるマーキングポイントの位置座標を計測する。  
図１は、マーキングポイントの例を表す説明図である。同図（ａ）は人体の正面図を表し、同図（ｂ）は人体の背面図を表している。図２は、マーキングポイントの位置の測定方法等を表す説明図である。
【００２７】
主要なマーキングポイントについては、たとえば次の参考文献を参照することができる。  
参考文献１：「文化ファッション大系  服飾造形講座(1)  服飾造形の基礎  文化服装学院編」、文化服装学院教科書出版部
また、骨格系のモデルについては、たとえば次の参考文献を参照することができる。  
参考文献２：「福祉事務管理シリーズ／５  医学一般・精神保健」、株式会社建帛社
本実施の形態では、脊柱の位置を推定するという目的から、図１に示すように、バックネックポイントＡ、サイドネックポイントＢ、ショルダーポイントＣ、前腋点Ｄ、肩甲骨の最下部Ｅ、肋骨の最下部Ｆ、肋骨の最下部と同一高さにある背中の中心のくぼみの位置（以下「背中くぼみ位置」という）Ｇ、骨盤の横幅方向に突起する部分の位置（以下「骨盤端部位置」という）Ｈの座標を、マーキングポイントとして測定する。これらの計測点は、骨格の形状を示す特徴点であると同時に触手により比較的容易に位置が確定できるポイントとして選定されている。
【００２８】
これらのマーキングポイントの位置は、たとえば市販のマルチン計測器などを用いて測定することができる。具体的には、図２に示す人体のかかとの後方に計測器を設置して測定する。このとき、かかとの後方で計測器の支柱が床面に交差する点を空間座標系（「大域座標系」ともいう）の原点と考える。この原点を中心に横幅方向にｘ軸、高さ方向にｙ軸、奥行き方向にｚ軸を設定する。この大域座標系は測定の間中、常に固定して変更はしない。このとき、バックネックポイントＡから肋骨の下部の高さまではおよそ胸椎に相当する。また、肋骨の下部から骨盤にかけては腰椎に相当する。なお、このマルチン式計測器による具体的な計測方法については人体計測を行う分野において周知であるため、その詳細については説明を省略する。
【００２９】
次に、簡易骨格モデルを形成する。  
この簡易骨格モデルは、脊柱と鎖骨からなるモデルである。脊柱は猫背など背中の形状を特徴づけ、鎖骨はなで肩など肩の形状を特徴づける。ここでは、上述した体表面上のマーキングポイントの位置座標から脊柱の形状と鎖骨の形状を推定して決定する。
【００３０】
図３は、マーキングポイントが存在する人体の断面と脊柱位置との関係を表す説明図である。なお、図中の点線は脊柱の断面を表している。
【００３１】
すなわち、マーキングポイントが存在する人体の断面は、同図に示されるようになっている。この人体の断面形状については、たとえば上記参考文献１を参照することができる。同図に示すように、たとえばバックネックポイントＡに隣接して脊柱が存在する。また、肩甲骨の最下部Ｅに隣接して脊柱が存在する。なお、これらバックネックポイントＡ、肩甲骨の最下部Ｅのそれぞれから脊柱までの距離は経験的に求めることができる。また、２つの肋骨の最下部Ｆと背中くぼみ位置Ｇは三角形をなし、そのほぼ重心位置に脊柱が存在する。さらに、２つの骨盤端部位置Ｈをつなぐ線分の中央に脊柱が存在する。このようにして人体の断面における脊柱位置が分かることにより、人体における脊柱の通過点が複数分かる。
【００３２】
図４は、脊柱と鎖骨の決め方を表す説明図である。同図（ａ）は人体の正面図に基づく説明図であり、同図（ｂ）は人体の側面図に基づく説明図である。  
上述のようにして脊柱の通過点が複数分かると、同図に示されるように、これらの通過点を通る曲線をベジェ曲線などの数学的方法により決定して脊柱１０１の全体形状とする。また、鎖骨１０２については、脊柱１０１とショルダーポイントＣとを結ぶ水平な線分で擬似する。
【００３３】
次に、上述した人体の３次元計測データと簡易骨格モデルとを用いて標準体型の３次元形状データ、つまり基準人体データを生成する。  
図５〜図８は、３次元形状データの生成方法を表す説明図である。図５（ａ）は人体の正面図に基づく説明図であり、同図（ｂ）はその一点鎖線で囲まれた部分近傍の部分拡大図を表している。図６は、人体の側面図に基づく説明図である。図７は、鎖骨近傍の断面図に基づく説明図である。図８は、人体の鎖骨近傍およびその断面形状データを表す説明図である。
【００３４】
図５（ａ）に示すように、脊柱に対してバックネックポイントＡより上の部分および前腋点Ｄより下の部分については、脊柱にほぼ垂直な断面つまりｙ軸に垂直な断面を考える。通常、この断面の形状は、上記３次元測定器で得られる水平面のデータ（以下、「水平面データ」ともいう）から得られる。そして、各マーキングポイントを含む隣接する２つの断面間の脊柱を数個に均等分割する。図示の例では、前腋点Ｄと骨盤端部位置Ｈとの間に均等分割された脊柱位置Ｋ１、Ｋ２、Ｋ３が示されている。これは、脊柱を個々の骨の要素に分けた第１、第２腰椎のようなものに相当する。
【００３５】
続いて、これらの均等分割された脊柱位置の近傍に位置する３次元測定器の水平面データを見つける。図５（ｂ）の例では、脊柱位置Ｋ３の周辺に上述した５ｍｍ間隔の計測位置が対応づけて示されている。ここでは、脊柱位置Ｋ３に隣接する計測位置Ｌ１、Ｌ２が抽出できるが、計測位置Ｌ１のほうが計測位置Ｌ２よりも脊柱位置Ｋ３により近接しているため、計測位置Ｌ１の水平面データが採用される。なお、このように脊柱位置Ｋ３の断面形状データをこれに最も近接した計測位置Ｌ１の水平面データとするのではなく、たとえば計測位置Ｌ１の水平面データと計測位置Ｌ２の水平面データとを、脊柱位置Ｋ３からの距離の比率に基づき補間演算して脊柱位置Ｋ３の断面形状データとしてもよい。
【００３６】
このようにして得られた水平面データの集合が、図６に示すように輪切り状のデータの集合となり、標準体型のバックネックポイントＡより上の部分と前腋点Ｄより下の部分の３次元形状を形成することになる。
【００３７】
一方、脊柱１０１に対して、バックネックポイントＡと前腋点Ｄとの間の部分については、図７に示されるように、鎖骨１０２にほぼ垂直な断面つまりｘ軸に垂直な断面を考える。なお、鎖骨１０２の方向に対してこのように垂直断面を考えるのは、肩部の形状および動きに個人差があることを考慮したものである。通常、この部分は三次元測定器では水平面のデータが得られている。これらの水平面のデータをもとに、垂直面のデータを合成する必要がある。同図は肩の部分を表している。図中、曲線は水平面データを表している。曲線中の白丸は、三次元測定器による実際の測定点を示す。また、脊柱１０１からショルダーポイントＣに伸びる線分が鎖骨１０２に相当する。この線分中の点Ｂ１は、鎖骨１０２のサイドネックポイントＢと同一のｘｚ座標値を持つ点である。ここでは、脊柱１０１からショルダーポイントＣまでのｘ座標値を等分割する。等分割された直線と肩の曲線との交点Ｍi、Ｍi+1・・・は、肩の部分を鎖骨１０２と垂直な断面で表現したときの点群となる。この交点Ｍiの座標値は、同図に示すように隣接する実際の測定点ＸiとＸi+1の座標値の補間により、求めることができる。具体的には、測定点ＸiとＸi+1との間におけるＭiのｘ方向の内分比率を求め、その内分比率をｚ方向に適用すれば、交点Ｍiのｚ座標を算出することができる。この交点Ｍi、Ｍi+1・・・の集合がショルダーポイントＣを含む断面形状データを構成する。なお、図中の破線は、ショルダーポイントＣよりやや上方の断面を示している。
【００３８】
そして、このようにしてバックネックポイントＡと前腋点Ｄとの間の複数の水平断面について交点Ｍi、Ｍi+1・・・からなる断面形状データを得た後、その各座標点を図中点線にて示す鎖骨１０２にほぼ垂直な断面つまりｘ軸に垂直な断面に沿って接続していく。すると、図８に点線にて示すように、鎖骨１０２に沿った複数の垂直面データが得られる。  
以上のようにして、基準人体データが得られる。
【００３９】
［対象人体データの作成］  
対象人体データの作成は、上述のようにして得られた基準人体データを用いることにより、以下のようにして行われる。この対象人体データは、その対象者が変わる毎に作成される。図９は、対象者の人体（以下、「対象人体」ともいう）に設定した座標系を表す説明図である。
【００４０】
まず、基準人体データの作成の場合と同様に大域座標系を設定し、対象者の骨格の主要なマーキングポイントの位置座標を計測する。マーキングポイントとしては、基準人体データの作成で設定した箇所と同一のマーキングポイントを採用する。これらのマーキングポイントの位置座標は、上述したマルチン計測器等により計測することができる。
【００４１】
具体的には、バックネックポイントＡより上の首の部分、および前腋点Ｄより下の胴体の部分については、マーキングポイントを含む体の断面を想定して、人体の横幅、厚み（奥行き）および周囲長の採寸を行う。これらの採寸は、メジャーなどを用いて行うことができる。
【００４２】
続いて、各断面ごとに脊柱の中心（脊髄）の位置を確定する。これは、図３に示した基準人体データの作成に用いた方法に基づく。
【００４３】
図１０は、対象人体の断面形状の算出方法を表す説明図である。同図（ａ）は、基準人体データのある位置の断面形状を表し、同図（ｂ）は、対象人体の対応する位置の仮想的な断面形状を表している。
【００４４】
ここでは、図１０に示すように、断面形状における脊柱位置Ｏを原点とし、横幅方向をＸ軸、奥行き方向をＺ軸とする局所的な座標面を考える。なお、このように人体の各断面において幅方向にＸ軸、脊柱の方向にＹ軸、脊柱と垂直な厚み方向にＺ軸をとった座標系を「局所座標系」という。上述した基準人体データについては、その水平面がほぼこの局所座標系の座標面に一致するため、三次元測定器による測定点との対応関係により、断面形状データを構成する各座標値が得られることになる。したがって、同図（ａ）の断面形状データは実線で示されているが、実際には座標点の集合となっている。
【００４５】
この局所座標系において、人体の断面のＸ軸との交点の値は横幅を規定する。ここでは、ある断面における対象者の横幅とこれに対応する基準人体データの横幅との比率を求める。具体的には図示のように、脊柱の中心位置Ｏに対して幅方向右側の寸法について、基準人体データの寸法をＸs1、対象者の寸法をＸt1とする。また、脊柱の中心位置Ｏに対して幅方向左側の寸法について、基準人体データの寸法をＸs2、対象者の寸法をＸt2とする。このとき、幅方向の大きさの比率は、ｒx1＝Ｘt1／Ｘs1、ｒx2＝Ｘt2／Ｘs2となる。ただし、ここでは便宜上Ｘt1＝Ｘt2と仮定する。これらＸt1、Ｘt2は、採寸により得られた対象人体の幅方向の寸法Ｘt0により算出できる。
【００４６】
同様に、各断面における対象者の厚みとこれに対応する基準人体データの厚みとの比率についても求める。図示のように、脊柱の中心位置Ｏに対して奥行き方向前側の寸法について、基準人体データの寸法をＺs1、対象者の寸法をＺt1とする。脊柱の中心位置Ｏに対して奥行き方向後側の寸法について、基準人体データの寸法をＺs2、対象者の寸法をＺt2とする。このとき、厚み方向の大きさの比率は、ｒz1＝Ｚt1／Ｚs1、ｒz2＝Ｚt2／Ｚs2となる。ただし、経験上、人体の背部中央から脊柱位置までの距離は個人差が小さいため、Ｚt2≒Ｚs2であると考えることもでき、また、その大きさつまり背部中央から脊柱位置までの距離も経験的に設定することが可能である。つまり、同図（ｂ）に示すように、採寸により得られた対象人体の厚み方向の寸法をＺt0とすると、厚み方向前側の寸法は、Ｚt1＝Ｚt0−Ｚs2として算出することができる。
【００４７】
そして、上述した基準人体データの断面形状を上記比率により拡大又は縮小することにより、対象人体データの断面形状を得ることができる。つまり、基準人体データの断面形状データを構成する各座標値に上記比率をかけて得られる座標値が対象人体データの断面形状データを構成する各座標値となる。このような比率計算を各断面について行うことにより、対象人体データの断面形状を確定することができる。
【００４８】
一方、バックネックポイントＡから前腋点Ｄまでの肩の部分については、鎖骨にほぼ垂直に、すなわち人体の奥行き方向に断面を想定してその断面形状を演算する。図１１〜図１３は、対象人体の断面形状の算出方法を表す説明図である。
【００４９】
ここでは、基準人体データに関して図７および図８に基づいて説明したのと同様に、対象人体の鎖骨１０２に沿って脊柱位置ＯからショルダーポイントＣまでを等分割した垂直断面を想定する。そして、鎖骨１０２に沿った方向の各位置において前腋点Ｄの高さでの人体の厚みｔと前腋点Ｄから肩表面までの高さｈを測定する。また、垂直断面と鎖骨１０２との交点の座標、つまり鎖骨位置を算出しておく。この鎖骨位置は、脊柱位置ＯとショルダーポイントＣとを結ぶ直線の方程式と、垂直断面の方程式（ｘ座標）とを連立させることにより算出できる。
【００５０】
続いて、図１２に示すように、各垂直断面の厚みｔ及び高さｈについて基準人体データのそれとの比率を求める。この比率は、垂直断面と鎖骨１０２との交点を原点としたｙｚ平面にて計算する。そして、上述した基準人体データの垂直断面形状を上記比率により拡大又は縮小することにより、対象人体データの垂直断面形状を得ることができる。つまり、基準人体データの断面形状データを構成する各座標値に上記比率をかけて得られる座標値が対象人体データの断面形状データを構成する各座標値となる。このような比率計算を各断面について行うことにより、対象人体データの垂直断面形状を確定することができる。そして、図１３に示すように、このように算出された垂直断面形状を水平面に展開することにより、バックネックポイントＡから前腋点Ｄまでの肩の部分についての水平面データが得られる。すなわち、この水平面データは、その垂直断面と水平面との交点の座標を計算（補間演算等）することにより得られる。
【００５１】
以上のようにして得られた断面形状データを脊柱に沿って配置することにより、対象人体の大まかな３次元形状データが得られる。
【００５２】
図１４は、算出された対象人体の断面形状データを脊柱に沿って配置した状態を表す説明図である。さらに、図１５は、算出された対象人体の断面形状データの平滑化処理前後の状態を表す説明図である。
【００５３】
上述のようにして確定された隣接する断面間において均等分割される断面形状については、その隣接する各断面形状の幅方向又は厚み方向の比率を算出し、その比率が脊柱の高さ方向に比例的に変化するように補間する。なお、補間の方法としては、単純な曲線近似や連続する比率をベジェ曲線などで結んで当該箇所の比率とすることもできる。そして、基準人体データについて得た水平面データに係る断面形状を補間した比率により拡大・縮小することにより、隣接する断面間の断面形状とする。
【００５４】
一方、マーキングポイントに対応する局所座標面の中心は脊髄の位置を表しているため、これらの中心点を結ぶ曲線をベジェ近似などにより求め、これを脊柱の推定形状とする。この脊柱形状の隣接する断面間は、基準人体データについてしたのと同様に数個に均等分割される。
【００５５】
そして、基準人体データと対象者のデータとを脊柱の位置で対応付け、上述のように基準人体データの拡大又は縮小および補間により得た推定断面形状を対応する脊柱位置にマッピングする。こうして、図１４に示すように、対象者の推定体型形状が確定する。
【００５６】
なお、このようにして得られた対象者の推定断面形状に大幅な誤差がある場合には手直しをする必要がある。そこで、上述したマーキングポイントについて採寸した周囲長を、対応する部分の推定断面形状から算出される周囲長と比較する。そして、両者の誤差が所定値より大きい場合には、上述のように算出された対象者の推定断面形状にさらに所定の比率をかけるなどして拡大縮小を行って手直しをする。
【００５７】
また、体型の局所的な部分、たとえばバストなどの大小に伴い上記推定体型形状が実際とは歪む場合には、別途手作業等により訂正を行う。
【００５８】
そして、このようにして得られた対象者の推定断面形状の隣接する断面の対応箇所をｙ方向につないでいくことでポリゴンが生成され、対象人体データをポリゴンモデルで得ることができる。ただし、このようにして得られた対象人体データは、多面体形状として得られるために角張った形状であり、その断面形状は図１５（ａ）に示すように滑らかではない。このため、上述のようにして得られた多面体形状に後述する平滑化処理を施して、同図（ｂ）に示すように滑らかな形状にする。これにより、対象人体データを実際の対象人体の形状により近づけることができる。
【００５９】
次に、本実施の形態に係る３次元形状データ生成装置の構成について説明する。  
図１６は、本実施の形態の３次元形状データ生成装置の構成図である。同図は機能に着目したブロック図を描いており、これらの機能ブロックはハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現することができる。
【００６０】
３次元形状データ生成装置１００は、基準データ記憶部１、測定データ記憶部２、脊柱位置算出部３、比率算出部４、断面形状算出部５、形状データ生成部６、平滑化処理部７および３次元形状データ記憶部８を含む。
【００６１】
基準データ記憶部１は、上述のようにして作成した基準人体データを記憶する。すなわち、基準データ記憶部１は、上述した標準体型に近い被計測者の人体（基準人体）における複数箇所の断面形状データを、その基準人体の脊柱位置や鎖骨位置に対応づけて記憶する。より具体的には、基準データ記憶部１は、各断面形状データを、脊柱形状に実質的に直交する局所座標面上の脊柱位置を中心とする座標データ群として記憶する。また、基準データ記憶部１は、各垂直断面形状データを、鎖骨形状に実質的に直交する局所座標面上の鎖骨位置を中心とする座標データ群として記憶する。この基準人体データは、対象人体の３次元形状データを作成するための汎用データとして繰り返し使用される。
【００６２】
測定データ記憶部２は、上述のようにして計測された対象人体における各マーキングポイントの位置座標、その各マーキングポイントを含む断面位置の幅、厚み、周囲長、肩部の高さを含む採寸データ等を記憶する。測定データ記憶部２は、対象人体ごとにこれらのデータを記憶する。
【００６３】
脊柱位置算出部３は、測定データ記憶部２から対象人体における各マーキングポイントの位置情報を取得し、対象人体の脊柱位置を算出する。この脊柱位置は、基準人体に関して図３に基づき説明したものと同様の方法により算出される。また、脊柱位置算出部３は、各断面形状における脊柱の通過位置をとおる近似曲線を求めることによって脊柱形状を算出する。
【００６４】
比率算出部４は、基準データ記憶部１から基準人体の断面形状データを取得するとともに、測定データ記憶部２から対象人体の採寸データを取得する。そして、比率算出部４は、対象人体の各採寸データにかかる断面形状の大きさと、各採寸データの断面位置に対応する基準人体データの断面形状の大きさとの比率をそれぞれ算出する。すなわち、バックネックポイントＡより上の部分と前腋点Ｄより下の部分については、対象人体の各採寸データにかかる幅方向の大きさおよび厚み方向の大きさと、各採寸データの断面位置に対応する基準人体の断面形状データから得られる幅方向の大きさおよび厚み方向の大きさとの比率がそれぞれ算出される。バックネックポイントＡから前腋点Ｄまでの肩の部分については、各採寸データにかかる前腋点Ｄの高さでの人体の厚みおよび前腋点Ｄから肩表面までの高さと、各採寸データの断面位置に対応する基準人体の断面形状データから得られる前腋点Ｄの高さでの人体の厚みおよび前腋点Ｄから肩表面までの高さとの比率がそれぞれ算出される。
【００６５】
断面形状算出部５は、基準データ記憶部１から基準人体の断面形状データを取得し、その断面形状データに比率算出部４が算出した比率をかけることにより、対象人体における対応する各断面形状、つまり断面形状データを構成する各座標値を算出する。より具体的には、図１０および図１２に関して説明したように、断面形状算出部５は、局所座標系のおける基準人体の断面形状データの各座標データに上記比率をかけた座標値の集合を、対象人体の各断面形状として算出する。なお、図１２の垂直断面形状については、上述のように水平面データとして再計算される。
【００６６】
断面形状算出部５は、さらにその脊柱形状に沿って隣接する各断面形状間の断面形状を補間演算し、３次元形状を表すのに必要数の断面形状データを追加的に算出する。なお、断面形状算出部５は、上記比率に基づいて算出した断面形状から得られる周囲長と、測定データ記憶部２に記憶された対応する断面位置の周囲長との差が所定値以上である場合には、両周囲長の差が所定値未満となるように上記比率に基づいて算出した断面形状を補正するようにしてもよい。この補正は、予め設定した補正用の比率をさらにかけるなどして行ってもよいし、あるいは、後述する平滑化処理を応用して、断面形状を膨らませたりへこませたりしてもよい。
【００６７】
形状データ生成部６は、断面形状算出部５が算出した各断面形状を、脊柱位置算出部３が算出した対応する脊柱位置にそれぞれ配置するとともに、補間された断面形状を含めて隣接する各断面形状をつなぐことにより３次元形状データを生成する。なお、各断面形状の接続は、たとえば三角形パッチ法など種々の手法を用いることができる。具体的には、各断面を構成する座標点を結ぶ線分が最短となるように接続し、さらに隣接する線分の各端点により構成される四辺形について対角線が最短となるように接続することにより、三角形のポリゴンを構成する。これにより、多面体からなる３次元形状データが生成される。
【００６８】
しかし、このようにして得られた３次元形状データは、対象人体の３次元形状を近似したものであるが、多面体であるために角張った形状であり、滑らかさがない。そこで、後述するように、平滑化処理部７が、この多面体を基準多面体としてその表面形状に平滑化処理を施す。形状データ生成部６にて生成された基準多面体の形状データは、平滑化処理部７を構成する基準多面体記憶部４０に記憶される。
【００６９】
判別点生成部１２は、基準多面体記憶部４０に記憶された基準多面体の形状データから、基準多面体の表面を与える関数ｆ（ｘ、ｙ、ｚ）＝０を得る。この関数は、たとえば基準多面体を構成するポリゴンの各頂点の座標を代入することにより得られる。判別点生成部１２は、この基準多面体の表面の近傍に判別点をランダムに生成する。
【００７０】
判別点生成部１２は、基準多面体の表面を与える関数ｆ（ｘ、ｙ、ｚ）を用いて、ｆ（ｘ、ｙ、ｚ）＝０の近傍、すなわちｆ（ｘ、ｙ、ｚ）＝±εを満たす点（ｘ、ｙ、ｚ）を数値解析の手法を用いて、ランダムに生成することで、多面体の表面近傍に判別点を生成する。ここで、εは十分に小さな値である。
【００７１】
関数で定義されている曲面の表面上の点を検出するアルゴリズムについては、次の参考文献にさまざまな手法が紹介されており、本実施の形態において利用することができる。上述のように、曲面ｆ（ｘ、ｙ、ｚ）＝０に対して、ｆ（ｘ、ｙ、ｚ）＝±εを新たな曲面と考えれば、曲面の表面上の点を検出するアルゴリズムを用いて、表面近傍の点を生成することができる。
【００７２】
参考文献：Jules Bloomenthal, "Polygonization of Implicit Surfaces", XEROX PARC, CSL-87-2, May 1987.
占有率算出部１４は、判別点生成部１２により生成された判別点を中心とする所定の半径の近傍球体を設定し、その近傍球体内部の点（以下、「近傍点」という）を生成する。
【００７３】
占有率算出部１４は、近傍球体内部を極座標（ｒ、θ、ρ）で表現し、乱数を用いてｒ、θ、ρを生成することで、近傍球体内部に近傍点をランダムに生成する。後述のように、ｙ軸方向に垂直な平面すなわちｘｚ平面で基準多面体を切断し、その切断平面内で判別点を設ける場合は、判別点を中心とする近傍円を設定し、その近傍円内の点を極座標（ｒ、ρ）で表現し、乱数を用いてｒ、ρを生成することで、近傍円内部に近傍点をランダムに生成する。
【００７４】
ここで、近傍球体の半径は、基準多面体の表面の曲率に応じて調整される。表面曲率算出部１６は、基準多面体の表面の曲率を算出し、球体半径調整部１８に与える。球体半径調整部１８は、曲率が大きいほど近傍球体の半径が小さくなるように調整する。占有率算出部１４は、球体半径調整部１８により調整された半径で近傍球体を設定する。
【００７５】
多面体の頂点において曲率を定義するために、多面体の頂点Ｖにおけるガウス曲率を次の近似値Ｋにより近似する（参考文献：早野、松岡、植田、「特徴抽出と稜線操作によるポリゴンメッシュの簡単化」、Ricoh Technical Report No.24, November 1988）。近似ガウス曲率Ｋの絶対値が大きい頂点Ｖの形状は尖っている（あるいは凹んでいる）。
【００７６】
Ｋ＝ａ／Ｓ
ａ＝２π−（Ｖに集まる面の隅の角度の総和）
Ｓ＝（Ｖに集まる面の面積の総和）／３
次に、占有率算出部１４は、近傍球体が基準多面体に含まれる割合、すなわち基準多面体内部と近傍球体の論理積部分が近傍球体全体に対して占める割合（以下、「占有率」という）を求める。
【００７７】
占有率算出部１４は、近傍球体内部でランダムに発生させた近傍点が基準多面体内部にあるかどうかを判定し、基準多面体内部にある近傍点の数ｉを求め、発生した近傍点の総数Ｎで割った値ｐ＝ｉ／Ｎを求めることで、占有率を近似的に求める。占有率算出部１４は、近似された占有率ｐを有効判別点判定部２０に与える。
【００７８】
有効判別点判定部２０は、占有率ｐが所定の判定閾値ｔ以上である判別点は、対象人体の表面上または内部にあると判定し、占有率ｐが所定の判定閾値ｔより小さい判別点は、対象人体の外部にあると判定する。判別点が対象人体の表面上または内部にある場合、その判別点は「有効である」といい、判別点が対象人体の外部にある場合、その判別点は「無効である」という。
【００７９】
基準多面体の表面近傍に判別点を発生させ、判別点が対象人体の内部にあるかどうか（すなわち有効であるかどうか）を判定することで、基準多面体が対象人体に近づくように変形することができる。対象人体の外部にあると判定された部分（すなわち無効な判別点が占める部分）については基準多面体の表面から切り取り、対象人体の内部にあると判定された部分（すなわち有効な判別点が占める部分）については基準多面体の表面をふくらませる。基準多面体の頂点近傍でこの操作を行うと、基準多面体の角を丸めて平滑化することができる。これにより、基準多面体の表面形状を滑らかにして対象人体に近づけることができる。
【００８０】
ここで、判定閾値ｔは通常は０．５であるが、基準多面体が平滑化によって必要以上にへこんだときは、判定閾値ｔを小さくし、基準多面体が平滑化によって必要以上にふくらみすぎたときは、判定閾値ｔを大きくする。このために、形状データ生成部６は、基準多面体の内部に含まれる「内包多面体」と、基準多面体を包含する「外包多面体」とをあらかじめ生成しておき、内包／外包多面体記憶部４２に記憶する。
【００８１】
内外判定部２４は、有効判別点判定部２０によって対象人体の内部にあると判定された判別点（「暫定有効判別点」という）について、暫定有効判別点が内包多面体の内部もしくは外包多面体の外部にあるかどうかを判定する。内外判定部２４は、暫定有効判別点が内包多面体の内部もしくは外包多面体の外部にある場合は、判定閾値調整部２６にその旨を通知する。
【００８２】
判定閾値調整部２６は、暫定有効判別点が内包多面体の内部にある場合は、判定閾値ｔを小さくし、暫定有効判別点が外包多面体の外部にある場合は、判定閾値ｔを大きくする。判定閾値調整部２６は、調整後の判定閾値ｔを有効判別点判定部２０に与える。
【００８３】
有効判別点判定部２０は、判定閾値調整部２６により調整された判定閾値ｔのもとで判別点の有効／無効の判定をやり直す。判定閾値調整部２６により調整された判定閾値ｔのもとで有効と判定された判別点が最終的に有効な判別点となる。以下、この最終的に有効と判定される判別点を単に「有効判別点」という。有効判別点判定部２０は、有効判別点を有効判別点記憶部４４に記憶する。
【００８４】
このようにして内包／外包多面体を設けて有効判別点を求めることで、外包多面体と内包多面体で挟まれる空間領域内で基準多面体の表面形状を有効判別点を基準にふくらませたり、へこませたりして変形させ、対象人体に近づけることができる。
【００８５】
ここで、基準多面体の表面近傍に１つの有効判別点があるとき、それよりも内側の有効判別点は、基準多面体を変形させる目的では不要であるから、有効判別点判定部２０は、最も外側の有効判別点のみを求めて有効判別点記憶部４４に記憶する。このために、判別点生成部１２は、基準多面体の表面に対して、外側から徐々に内側に近づくように判別点を生成して、判別点列を生成する。そして、有効判別点判定部２０が判別点列内の各判別点の有効／無効を判定し、無効判別点と有効判別点の境界を判定し、最も外側の有効判別点を求める。あるいは、別の方法として、バイナリサーチ（二分探索）の手法を用いて、基準多面体の表面近傍で最も外側にある有効判別点を探索してもよい。
【００８６】
表面形状変形部２２は、有効判別点をもとに基準多面体の表面形状を変形させ、変形後の基準多面体の形状データを基準多面体記憶部４０に記憶する。表面形状変形部２２は、基準多面体の頂点や面上の点などの特徴点を抽出し、特徴点を有効判別点の位置まで移動させることで、基準多面体の表面形状を変形させる。
【００８７】
表面形状変形部２２による変形後の基準多面体はディスプレイに表示され、ユーザは変形後の３次元形状を確認することができる。ユーザは必要であれば、変形後の基準多面体の表面形状の近傍に判別点を設定して、占有率を求め、有効判別点により表面形状を変形させて、対象人体に近づけることができる。このために、判別点生成部１２、占有率算出部１４、表面曲率算出部１６、球体半径調整部１８、有効判別点判定部２０、内外判定部２４、判定閾値調整部２６、表面形状変形部２２の各構成は、変形後の基準多面体を対象として上述の処理を施す。ここで、変形後の基準多面体は、平滑化処理により角の丸みが取れるなどによって、もはや厳密には多面体ではないが、便宜上、多面体と呼ぶことにする。これにより、基準多面体からスタートして、ユーザは変形結果を逐一確認しながら、段階的に平滑化処理を進めることができる。
【００８８】
平滑データ生成部２８は、有効判別点記憶部４４から有効判別点の集合を取得し、隣接する有効判別点を接続していくことにより有効判別点を頂点とするポリゴンを生成し、ポリゴンモデルを生成する。このポリゴンモデルは、対象人体の表面を滑らかに近似した３次元モデルとなっている。平滑データ生成部２８は、生成したポリゴンモデルの情報を３次元形状データ記憶部８に記憶する。
【００８９】
図１７は、本実施の形態の３次元形状データ生成装置による３次元形状データの生成手順の大まかな流れを示すフローチャートである。
【００９０】
３次元形状データ生成装置１００においては、まず、基準データ記憶部１から基準人体データ等が読み出されるとともに（Ｓ１）、測定データ記憶部２から各マーキングポイントの位置座標、その各マーキングポイントを含む断面位置の幅、厚み、周囲長および肩部の高さを含む採寸データ等が読み出される（Ｓ２）。
【００９１】
そして、まずバックネックポイントＡより上の部分と前腋点Ｄより下の部分について、脊柱位置に沿った対象人体の断面形状が演算される（Ｓ３）。
【００９２】
ここでは、脊柱位置算出部３が、各マーキングポイントの位置情報に基づいて対象人体の脊柱位置を算出する。脊柱位置算出部３は、また、各断面形状における脊柱の通過位置をとおる近似曲線を求めることによって脊柱形状を算出する。続いて、比率算出部４が、対象人体の各採寸データにかかる幅方向の大きさおよび厚み方向の大きさと、各採寸データの断面位置に対応する基準人体の断面形状データから得られる幅方向の大きさおよび厚み方向の大きさとの比率をそれぞれ算出する。続いて、断面形状算出部５が、基準人体の断面形状データに上記比率をかけることにより、対象人体における対応する各断面形状を算出する。
【００９３】
続いて、バックネックポイントＡから前腋点Ｄまでの肩の部分について、鎖骨位置に沿った対象人体の断面形状が演算される（Ｓ４）。
【００９４】
ここでは、比率算出部４が、対象人体の前腋点Ｄの高さでの人体の厚みおよび前腋点Ｄから肩表面までの高さと、各採寸データの断面位置に対応する基準人体の断面形状データから得られる前腋点Ｄの高さでの人体の厚みおよび前腋点Ｄから肩表面までの高さとの比率をそれぞれ算出する。続いて、断面形状算出部５が、基準人体の断面形状データに上記比率をかけることにより、対象人体における対応する各垂直断面形状を算出する。断面形状算出部５は、この垂直断面形状を水平面データとして再計算する（Ｓ５）。
【００９５】
そして、形状データ生成部６は、このとき算出された各断面形状を、脊柱位置にそれぞれ配置する（Ｓ６）。断面形状算出部５は、さらに脊柱形状に沿って隣接する各断面形状間の断面形状を補間する（Ｓ７）。
【００９６】
そして、形状データ生成部が、補間された断面形状を含めて隣接する各断面形状を接続することにより基準多面体からなる３次元形状データを生成する（Ｓ８）。
【００９７】
続いて、平滑化処理部７が、基準多面体の表面形状を平滑化する（Ｓ９）。この平滑化処理には、基準多面体の角を丸くする他、基準多面体の各面をふくらませたり、へこませることも含まれる。この平滑化処理により基準多面体が対象人体により一層近づく。
【００９８】
図１８は、図１７で示した平滑化処理Ｓ９の詳細な手順を示すフローチャートである。
【００９９】
判別点生成部１２は、基準多面体の表面近傍に判別点ｋを生成する（Ｓ１０）。占有率算出部１４は、基準多面体の内部にあると判定される近傍点の数を計数するための変数ｉと、発生した近傍点の総数をカウントするための変数Ｎを０に初期化する（Ｓ１２）。
【０１００】
占有率算出部１４は、判別点ｋを中心とする半径ｒの近傍球体内部に近傍点をランダムに発生させる（Ｓ１４）。占有率算出部１４は、発生した近傍点が基準多面体の内部にあるかどうかを判定し（Ｓ１６）、近傍点が基準多面体の内部にある場合（Ｓ１６のＹ）、カウンタｉを１だけインクリメントし（Ｓ１８）、近傍点が基準多面体の内部にない場合は（Ｓ１６のＮ）、カウンタｉをインクリメントしない。
【０１０１】
占有率算出部１４は、近傍点の総数Ｎを１だけインクリメントし（Ｓ２０）、占有率ｐをｉ／Ｎによって求める（Ｓ２２）。占有率算出部１４は、求めた占有率ｐの値が収束しているかどうかを判定する（Ｓ２４）。このために、占有率算出部１４は、近傍球体内部で近傍点をランダムに発生させながら求めた占有率ｐの値の履歴を保存しておき、占有率ｐの時間変化にもとづいて占有率ｐが収束しているかどうかを判定する。占有率の変動幅が所定の水準よりも小さくなった場合に占有率ｐは収束したと判定する。
【０１０２】
占有率ｐがまだ収束していないと判定された場合（Ｓ２４のＮ）、ステップＳ１４に戻り、近傍球体内部でさらに近傍点を発生させ、占有率ｐを更新する（Ｓ１４〜Ｓ２２）。
【０１０３】
占有率ｐが収束したと判定された場合（Ｓ２４のＹ）、有効判別点判定部２０は、占有率ｐが判定閾値ｔ以上であるかどうかを調べる（Ｓ２６）。
【０１０４】
有効判別点判定部２０は、占有率ｐが判定閾値ｔ以上である場合（Ｓ２６のＹ）、判別点ｋは対象人体に含まれると判定し（Ｓ２８）、その判別点ｋを有効判別点として有効判別点記憶部４４に記憶する。
【０１０５】
有効判別点判定部２０は、占有率ｐが判定閾値ｔより小さい場合（Ｓ２６のＮ）、判別点ｋは対象人体に含まれないと判定し（Ｓ３０）、その判別点ｋは有効判別点記憶部４４に記憶しない。
【０１０６】
ユーザにより平滑化処理の終了が指示された場合（Ｓ３２のＹ）、この手順は終了する。平滑化処理がまだ完了していない場合（Ｓ３２のＮ）、ステップＳ１０に戻り、基準多面体表面もしくは既に平滑化された多面体表面の近傍に新たに判別点を設定して、同じ処理を繰り返す。
【０１０７】
図１９は、基準多面体の表面近傍に設けられる判別点と近傍球体を説明する図である。
【０１０８】
基準多面体の表面２００（下側が基準多面体の内部で、上側が基準多面体の外部である）よりも外側に判別点２２０ａが設けられたとする。判定閾値ｔは０．５であるとする。この判別点２２０ａを中心とする半径ｒの近傍球体２１０ａを考えると、基準多面体の内側に含まれる近傍球体２１０ａ（斜線で示した部分２３０ａ）の体積は全体積の半分より小さい。よって、占有率ｐは０．５より小さくなり、判定閾値ｔより小さいから、判別点２２０ａは対象人体に含まれない、すなわち判別点２２０ａは無効であると判定される。以下、無効と判定された判別点は白丸で図示する。
【０１０９】
基準多面体の表面２００上に判別点２２０ｂが設けられた場合、この判別点２２０ｂを中心とする近傍球体２１０ｂのちょうど半分（斜線で示した部分２３０ｂ）が基準多面体の内側に含まれる。よって、占有率ｐは０．５となり、判定閾値ｔに等しいから、判別点２２０ｂは対象人体に含まれる、すなわち判別点２２０ｂは有効であると判定される。以下、有効と判定された判別点は黒丸で図示する。
【０１１０】
基準多面体の表面２００よりも内側に判別点２２０ｃが設けられた場合、この判別点２２０ｃを中心とする近傍球体２１０ｃの半分以上（斜線で示した部分２３０ｃ）が基準多面体内部に含まれる。よって占有率ｐは０．５より大きくなり、判定閾値ｔより大きいから、判別点２２０ｃは対象人体に含まれる、すなわち判別点２２０ｂは有効であると判定される。
【０１１１】
図１９の例では、基準多面体の平らな面の近傍に判別点を発生させたので、判定閾値ｔが０．５であれば、表面形状はふくらむこともへこむこともない。しかし、基準多面体の平面でない部分、たとえば、角やへこみの近傍に判別点を発生させると、表面形状がふくらんだり、へこんだりする。
【０１１２】
図２０（ａ）〜（ｃ）は、基準多面体の角の近傍に設けられる判別点と近傍球体を説明する図である。この例では、基準多面体の角（頂点）の近傍に判別点を発生させる。この例でも判定閾値ｔは０．５であるとする。
【０１１３】
図２０（ａ）では、基準多面体の角の近傍で、基準多面体の表面２００よりも外側に判別点２２０ａが設けられている。この判別点２２０ａを中心とする近傍球体２１０ａを考えると、基準多面体内部に含まれる近傍球体２１０ａ（斜線で示した部分２３０ａ）の体積は全体積の半分より小さい。よって占有率ｐは０．５より小さいため、判別点２２０ａは対象人体の外部にある、すなわち無効であると判定される。
【０１１４】
図２０（ｂ）では、基準多面体の角の近傍で、基準多面体の表面２００よりも内側に判別点２２０ｂが設けられている。この判別点２２０ｂを中心とする近傍球体２１０ｂを考えると、基準多面体内部に含まれる近傍球体２１０ｂ（斜線で示した部分２３０ｂ）の体積はまだ全体積の半分より小さい。よって占有率ｐは０．５より小さく、判別点２２０ｂは対象人体の外部にある、すなわち無効であると判定される。
【０１１５】
図２０（ｃ）では、基準多面体の表面２００に対して図２０（ｂ）と比べてさらに内側に判別点２２０ｃが設けられている。この場合、判別点２２０ｃを中心とする近傍球体２１０ｃの半分以上（斜線で示した部分２３０ｃ）が基準多面体内部に含まれる。よって占有率ｐは０．５より大きく、判別点２２０ｂは対象人体の内部にある、すなわち有効であると判定される。
【０１１６】
図２０（ａ）〜（ｃ）の例では、対象人体の内部に含まれると判定される有効判別点が基準多面体の内側に存在するため、基準多面体の角は有効判別点の位置まで凹み、角が丸く削り取られることになる。
【０１１７】
図２１は、基準多面体の角における有効判別点を説明する図である。ここでも判定閾値ｔは０．５であるとする。基準多面体の角付近では、有効判別点は角の内側に存在する。基準多面体の平らな面では有効判別点はその面上に存在する。したがって、基準多面体の平らな面は削られることがないが、角付近では、同図の点線に示すように有効判別点が設けられ、角が丸くなる。
【０１１８】
図２２（ａ）、（ｂ）は、基準多面体の角付近において近傍球体の半径を変えた場合の有効判別点の位置の変化を説明する図である。図２２（ａ）は、近傍球体の半径を小さくした場合であり、有効判別点の位置が角に近づく。図２２（ｂ）は、近傍球体の半径を大きくした場合であり、有効判別点の位置が角から遠ざかる。このように、近傍球体の半径を変えることで角の削り取りを変えることができる。
【０１１９】
図２３（ａ）、（ｂ）は、基準多面体の角付近において占有率の判定閾値を変えた場合の有効判別点の位置の変化を説明する図である。図２３（ａ）は、占有率ｐの判定閾値ｔを０．５より小さくした場合であり、基準多面体内部に含まれる近傍球体の体積は半分より小さくてよいため、有効判別点は、点線で示すように、基準多面体の表面２００から外側に離れた位置に移動する。
【０１２０】
図２３（ｂ）は、占有率ｐの判定閾値ｔを０．５より大きくした場合であり、基準多面体内部に含まれる近傍球体の体積は半分より大きくなる必要があるため、有効判別点は、点線で示すように、基準多面体の表面２００よりも内側に入った位置に移動する。
【０１２１】
なお、判定閾値ｔを途中で変化させると段差が生まれるため、原則として判定閾値ｔは一定にする。閾値を変える場合は、閾値移行領域を設け、判定閾値ｔを閾値移行領域において連続的に変化させることが好ましい。
【０１２２】
図２４は、基準多面体の表面２００の形状の複雑度に応じて、近傍球体の半径を変える様子を説明する図である。鋭く尖った角など複雑で細かな表面形状に対しては、符号２１０ａ、２１０ｂに示すように、近傍球体の半径を小さく設定する。尖った角に対して大きな半径の近傍球体を設定すると、角を削ることができないからである。複雑で細かく造形された表面形状に対しては、その形状の細かさに合わせて近傍球体の半径を十分に小さくする必要がある。近傍球体の半径が小さい場合、角の削られ方が少なくなり、元の多面体形状を良く保存することができるからである。
【０１２３】
一方、あまり細かく造形されていない表面形状に対しては、符号２１０ｃに示すように、近傍球体の半径を大きく設定する。大まかな形状に対しては、それに合わせて近傍球体の半径を大きくすることで、表面を大きく削ることができる。
【０１２４】
もとの形状をなるべく保存するという立場から、近傍球体の半径は小さめでスタートし、角の丸み具合を見ながら半径を徐々に大きくしながら、基準多面体に対して繰り返し平滑化処理を施すことが好ましい。ここで、角の丸み具合は曲率で評価することができる。
【０１２５】
以上、本実施の形態の３次元形状データ生成装置１００によれば、対象人体について予め採寸された断面の大きさと、基準人体の断面形状データから得られる断面の大きさとの比率が求められる。そして、基準人体データを構成する断面形状データにその比率をかけることにより対象人体の各断面形状が算出され、さらに各断面形状が対応する脊柱位置に配置されることにより、対象人体の３次元形状データが得られる。このため、対象者の人体を詳細に計測することなく、比較的簡易に３次元形状データを生成することができる。また、採寸データなど対象者の人体の情報については少なく抑えることができるため、対象者への負担を軽くすることができ、またプライバシーの問題が発生するのを防止することができる。
【０１２６】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【０１２７】
たとえば、上記実施の形態では、対象人体について算出された各断面形状を接続して基準多面体を形成し、この基準多面体の表面に対して平滑化処理を行った。変形例においては、各断面形状に対して平滑化処理を行い、平滑化された断面形状を接続することにより、対象人体の３次元形状データを生成するようにしてもよい。
【０１２８】
たとえば、図１７のＳ３〜Ｓ７にて算出された対象人体の断面形状データを対応する局所座標系に展開し、その断面形状を構成する各座標点を接続して基準多角形を生成する。この基準多角形は、脊柱に沿ったＹ方向に垂直なＸＺ平面に表され、その内部が対象人体の内部を表すことになる。そして、この基準多角形を形成する各辺又は頂点の近傍に判別点を発生させ、上述のような平滑化処理を実行する。
【０１２９】
この場合、判別点を中心とする所定の半径の近傍円内に近傍点を乱数により発生させ、その近傍円内の近傍点が基準多角形の内部に含まれる割合を示す占有率が算出される。占有率が所定の判定閾値以上である場合に、判別点は対象人体の断面形状に含まれると判定され、占有率が判定閾値より小さい場合に、判別点は対象人体の断面形状に含まれないと判定される。この判定により対象人体の断面形状に含まれると判定された判別点を頂点とする形状により、平滑化された断面形状データが得られる。そして、この平滑化処理後の隣接する断面形状データの判別点を接続することにより、対象人体の３次元形状データを生成することができる。
【０１３０】
また、上記実施例では、基準人体および対象人体ともに直立時を例に３次元形状データの生成方法を説明したが、たとえば直立姿勢から椅子に座る、前屈みになる、腕を上げるなど、日常の様々な姿勢における人体の３次元形状を考慮することも有用である。これにより、たとえば服飾デザインにおけるゆとりの設計に役立てることができる。
【０１３１】
すなわち、姿勢の変化によって体型も変化するが、その体型の変化の程度は人体の部位によって異なる。たとえば、背中や胸部などは脂肪組織が薄く、また肋骨等に保護されていることもあり骨格の形状を比較的良く反映する。一方、腹部や大腿部などは脂肪組織が厚いため、骨格の形状を必ずしも反映せず、脂肪組織に加わる圧力に応じて変形する。たとえば、直立時と前屈み時では同一人体でも腹部の断面形状が変形する。このため、直立時に演算された断面形状を、前屈み時の脊柱に対して同じ角度で配置していくと、断面の形状が実際のものと大きくずれる可能性がある。
【０１３２】
図２５は、演算された断面形状を、直立時と前屈み時とで脊柱に対して同角度で配置した場合の問題点を表す説明図である。図２５（ａ）は直立時における脊柱と断面との関係を表し、図２５（ｂ）は前屈み時における脊柱と断面との関係を表している。同図においては、脊柱位置が＃１〜＃２４で表されており、＃１９〜＃２４が腹部の位置に相当する。
【０１３３】
図示のように、前屈み時において直立時と同角度で断面形状を配置すると、場合によっては脊柱位置＃１９と脊柱位置＃２０のように隣接する断面が前方で交差するなど、実際にはない現象が生じるおそれがある。
【０１３４】
そこで、直立時における脊柱位置と断面の角度、その角度が姿勢の変化時に保持されるか否かを表す情報をデータベースに格納しておき、姿勢の変化時には、その角度を徐々に変化させるなどの方法をとってもよい。
【０１３５】
図２６は、直立時における脊柱位置と断面の角度との関係を表す説明図である。同図の情報がデータベースに格納される。図２７は、前屈み時における断面形状の配置の修正例を表す説明図である。図２７（ａ）は、前屈み時における脊柱と断面との関係を表し、図２７（ｂ）は、そのＡ部拡大図を表している。
【０１３６】
図２６に示すように、データベースには、対象人体の各断面、メモリにおける断面形状データの保管場所、脊柱の位置、直立時における脊柱と断面との角度、および人体の傾斜時に角度が保存されるか否か等の情報が対応づけられて格納されている。同図の例では、断面＃２０〜＃２３については、前屈み時等にその断面形状が保存されないことが示されている。
【０１３７】
図２７に示すように、対象人体の前屈み時の３次元形状データを生成する際には、各断面形状を脊柱に対して図２６に示される直立時の角度で配置するのではなく、その変形部位を徐々に変化させる。すなわち、腹部の位置に対応する断面＃１９〜＃２４について、その間の断面＃２０〜＃２３の角度を、＃１９の角度（図示の例では８３°）から＃２４の角度（図示の例では９２°）に徐々に変化させる。つまり、断面形状が保存される断面の間の角度をとるように配置する。このとき、図２６において角度が保存される部分については、断面形状を脊柱に対して直立時と同様の角度で配置する。図示の例では、断面が腰椎の付近で脊柱にほぼ垂直になるようにしている。
【図面の簡単な説明】
【０１３８】
【図１】マーキングポイントの例を表す説明図である。
【図２】マーキングポイントの位置の測定方法等を表す説明図である。
【図３】マーキングポイントが存在する人体の断面と脊柱位置との関係を表す説明図である。
【図４】脊柱と鎖骨の決め方を表す説明図である。
【図５】３次元形状データの生成方法を表す説明図である。
【図６】３次元形状データの生成方法を表す説明図である。
【図７】３次元形状データの生成方法を表す説明図である。
【図８】３次元形状データの生成方法を表す説明図である。
【図９】対象者の人体に設定した座標系を表す説明図である。
【図１０】対象人体の断面形状の算出方法を表す説明図である。
【図１１】対象人体の断面形状の算出方法を表す説明図である。
【図１２】対象人体の断面形状の算出方法を表す説明図である。
【図１３】対象人体の断面形状の算出方法を表す説明図である。
【図１４】算出された対象人体の断面形状データを脊柱に沿って配置した状態を表す説明図である。
【図１５】算出された対象人体の断面形状データの平滑化処理前後の状態を表す説明図である。
【図１６】本実施の形態の３次元形状データ生成装置の構成図である。
【図１７】本実施の形態の３次元形状データ生成装置による３次元形状データの生成手順の大まかな流れを示すフローチャートである。
【図１８】図１７で示した平滑化処理の詳細な手順を示すフローチャートである。
【図１９】基準多面体の表面近傍に設けられる判別点と近傍球体を説明する図である。
【図２０】基準多面体の角の近傍に設けられる判別点と近傍球体を説明する図である。
【図２１】基準多面体の角における有効判別点を説明する図である。
【図２２】基準多面体の角付近において近傍球体の半径を変えた場合の有効判別点の位置の変化を説明する図である。
【図２３】基準多面体の角付近において占有率の判定閾値を変えた場合の有効判別点の位置の変化を説明する図である。
【図２４】基準多面体の表面の形状の複雑度に応じて、近傍球体の半径を変える様子を説明する図である。
【図２５】演算された断面形状を、直立時と前屈み時とで脊柱に対して同角度で配置した場合の問題点を表す説明図である。
【図２６】直立時における脊柱位置と断面の角度との関係を表す説明図である。
【図２７】前屈み時における断面形状の配置の修正例を表す説明図である。
【符号の説明】
【０１３９】
１  基準データ記憶部、  ２  測定データ記憶部、  ３  脊柱位置算出部、  ４  比率算出部、  ５  断面形状算出部、  ６  形状データ生成部、  ７  平滑化処理部、  ８  ３次元形状データ記憶部、  １２  判別点生成部、  １４  占有率算出部、  １６  表面曲率算出部、  １８  球体半径調整部、  ２０  有効判別点判定部、  ２２  表面形状変形部、  ２４  内外判定部、  ２６  判定閾値調整部、  ２８  平滑データ生成部、  ４０  基準多面体記憶部、  ４２  内包／外包多面体記憶部、  ４４  有効判別点記憶部、  １００  ３次元形状データ生成装置、  １０１  脊柱、  １０２  鎖骨。
【図１】
2008032489.tif 000003
【図２】
2008032489.tif 000004
【図３】
2008032489.tif 000005
【図４】
2008032489.tif 000006
【図５】
2008032489.tif 000007
【図６】
2008032489.tif 000008
【図７】
2008032489.tif 000009
【図８】
2008032489.tif 000010
【図９】
2008032489.tif 000011
【図１０】
2008032489.tif 000012
【図１１】
2008032489.tif 000013
【図１２】
2008032489.tif 000014
【図１３】
2008032489.tif 000015
【図１４】
2008032489.tif 000016
【図１５】
2008032489.tif 000017
【図１６】
2008032489.tif 000018
【図１７】
2008032489.tif 000019
【図１８】
2008032489.tif 000020
【図１９】
2008032489.tif 000021
【図２０】
2008032489.tif 000022
【図２１】
2008032489.tif 000023
【図２２】
2008032489.tif 000024
【図２３】
2008032489.tif 000025
【図２４】
2008032489.tif 000026
【図２５】
2008032489.tif 000027
【図２６】
2008032489.tif 000028
【図２７】
2008032489.tif 000029