(57)【要約】【課題】立体物の質感は、色、形状、及び光沢によって変化する。これらを表すデータを一度に制御する情報フォーマットおよびその処理の仕組みが無い。【解決手段】情報処理装置は、立体物を表す複数の成分のデータを取得する。取得した複数の成分のデータのうち、少なくとも１つの成分の任意の単位空間におけるデータ量が、他の成分の前記単位空間におけるデータ量よりも小さくなるように、少なくとも１つの成分のデータを変換する。そして、変換した成分のデータを含む立体物データを出力する。【選択図】図４
2016035623.tif 000002
【特許請求の範囲】
【請求項１】
立体物を表す複数の成分のデータを取得する取得手段と、
前記取得した複数の成分のデータのうち、少なくとも１つの成分の任意の単位空間におけるデータ量が、他の成分の前記単位空間におけるデータ量よりも小さくなるように、少なくとも１つの成分のデータを変換する変換手段と、
前記変換した成分のデータを含む立体物データを出力する出力手段と
を有することを特徴とする情報処理装置。
【請求項２】
前記取得手段は、前記複数の成分のデータとして、立体物の色データ、形状データ、及び光散乱データを取得することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記変換手段は、前記立体物を再現する立体物形成装置における前記成分の分解能で再現可能なデータ量に前記成分のデータを変換することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記変換手段は、前記成分に対する人が知覚可能なデータ量に前記成分のデータを変換することを特徴とする請求項１または２に記載の情報処理装置。
【請求項５】
前記変換手段は、前記立体物の素材に応じたデータ量に前記成分のデータを変換することを特徴とする請求項１または２に記載の情報処理装置。
【請求項６】
前記取得手段は、前記立体物の色データと、光散乱データと、前記立体物の形状を示すポリゴンデータで構成されるＳＴＬフォーマットの形状データとを前記複数の成分のデータとして取得し、
前記変換手段は、複数のポリゴンに対応する色データと光散乱データとを、前記ＳＴＬフォーマットの未使用領域に付加することを特徴とする請求項１から５のいずれか一項に記載の情報処理装置。
【請求項７】
前記変換手段は、１つのポリゴンに対して、複数の色データと複数の光散乱データとを付加することを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記変換手段は、前記未使用領域に、前記色データまたは前記光散乱データが含まれるか否かを示すフラグを付加し、
複数のポリゴンに対応する複数の未使用領域にまたがって、前記色データまたは前記光散乱データのデータを付加することを特徴とする請求項６に記載の情報処理装置。
【請求項９】
前記変換手段は、前記未使用領域に、前記色データ及び前記光散乱データの参照先を示すデータを付加することを特徴とする請求項６に記載の情報処理装置。
【請求項１０】
前記変換手段は、前記立体物を形成する立体物形成装置の種類に応じて、データ量を小さくする成分を変更することを特徴とする請求項１から５のいずれか一項に記載の情報処理装置。
【請求項１１】
前記変換手段は、前記立体物形成装置がＵＶ硬化型の立体物形成装置である場合、色データのデータ量が高くなるように変換することを特徴とする請求項１０に記載の情報処理装置。
【請求項１２】
前記変換手段は、前記立体物形成装置が３次元プリンタである場合、形状データのデータ量が高くなるように変換することを特徴とする請求項１０に記載の情報処理装置。
【請求項１３】
三角形の法線ベクトルを示す第１の記憶領域と、三角形の各頂点の座標を示す第２の記憶領域と、前記第１の記憶領域及び前記第２の記憶領域より記憶容量が小さい第３の記憶領域とから構成されるデータが連続するデータ構造であって、
連続する複数の三角形に対応する複数の第３の記憶領域は全体で、前記連続する複数の三角形に対応する色データ及び光散乱データを示すデータを記憶することを特徴とするデータ構造。
【請求項１４】
連続する複数の三角形に対応する複数の第３の記憶領域のうち、一部の三角形に対応する第３の記憶領域は、第３の記憶領域で記憶されているデータが色データであるか光散乱データであるかを示すデータを含むことを特徴とする請求項１３に記載のデータ構造。
【請求項１５】
立体物を表す複数の成分のデータを取得する取得ステップと、
前記取得した複数の成分のデータのうち、少なくとも１つの成分の任意の単位空間におけるデータ量が、他の成分の前記単位空間におけるデータ量よりも小さくなるように、少なくとも１つの成分のデータを変換する変換ステップと、
前記変換した成分のデータを含む立体物データを出力する出力ステップと
を有することを特徴とする情報処理方法。
【請求項１６】
コンピュータを、請求項１から１２のいずれか一項に記載の情報処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、立体物に関するデータを扱う情報処理に関する。
【背景技術】
【０００２】
プリンタでの画像の記録においては、レッド（Ｒ），グリーン（Ｇ），ブルー（Ｂ）やシアン（Ｃ），マゼンタ（Ｍ），イエロー（Ｙ），ブラック（Ｋ）などの入力信号値を、プリンタに搭載している各色材の記録媒体への塗布量に係る色材信号値に変換する。そして、該色材信号値に応じた色材により記録媒体上に画像を形成する事が知られている。
【０００３】
この場合の入力信号値とは、デジタルカメラなどを用いて取得された自然界のある一瞬を示す平面状のＲＧＢデータや、デザイナがディスプレイ上でデザインを施した例えばＰＯＰ用などに用いられるＣＭＹＫデータなどである。
【０００４】
最近では、特許文献１に記載されているように、紫外線で硬化するＵＶ硬化インクを厚塗りして、平面の記録媒体からおよそ１〜2ｍｍ弱程度の盛り上がりをつけることで、手で触ってもはっきりとわかる程度の表面凹凸を表現する事が可能になってきた。
【０００５】
さらには、例えばＳＴＬのような、三角形の集合体で表記される３次元形状の情報を入力し、プリンタで再現する３次元形状プリンタも広く知られるようになってきた。ＳＴＬとは、Standard Triangulated Language、またはStereolithographyの略である。この３次元形状プリンタは、入力した３次元形状を積層方向に対しスライスしたデータを、光造形法、溶融物体積法、粉末焼結法、インクジェット法、インクジェットバインダ法など様々知られる方法で積層しながら立体物を作成する。
【０００６】
この様な、物体の３次元形状を計測する方法として、光切断法、焦点移動法やステレオマッチング法等様々な方法が知られており、該方法を用いたデバイスなども存在する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００９−２０８３４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
立体物の質感は、色、形状、及び光沢によって変化する。これらを表すデータを一度に制御する情報フォーマットおよびその処理の仕組みが無い。
【０００９】
例えば、色を表す一般的な画像フォーマットは、ＲＧＢやＣＭＹＫにより記述されたものであり、厚塗りに関する形状の制御は該画像フォーマットには記録されていない。また、光沢性の制御についても一般的な画像フォーマットには記録されていない。
【００１０】
立体物の質感を示すデータを保存したり流通させる際に、色、形状、及び光沢を一度に制御する情報フォーマットが求められている。
【課題を解決するための手段】
【００１１】
本発明にかかる情報処理装置は、立体物を表す複数の成分のデータを取得する取得手段と、前記取得した複数の成分のデータのうち、少なくとも１つの成分の任意の単位空間におけるデータ量が、他の成分の前記単位空間におけるデータ量よりも小さくなるように、少なくとも１つの成分のデータを変換する変換手段と、前記変換した成分のデータを含む立体物データを出力する出力手段とを有することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、３次元形状を持つ立体の質感をＵＶ硬化型プリンタや３次元形状プリンタなどの出力装置で再現する場合に用いられる統一的な情報フォーマットを提供できる。
【図面の簡単な説明】
【００１３】
【図１】実施例１における立体形状取得の装置構成の一例を示す図である。
【図２】実施例１における複数光源を用いた立体センシングの一例を示す図である。
【図３】実施例１における立体物データ処理装置構成の一例を示す図である。
【図４】実施例１の立体物データ取得部構成の一例を示す図である。
【図５】実施例１の立体物データ取得のフローを示す図である。
【図６】実施例１のオブジェクト形状測定方法の一例を示す図である。
【図７】実施例１の情報密度判定チャートの一例を示す図である。
【図８】実施例１の立体物出力データ生成部構成の一例を示す図である。
【図９】実施例１の立体物出力データ生成フローを示す図である。
【図１０】ＳＴＬバイナリフォーマットを説明する図である。
【図１１】実施例２の立体物データ取得のフローを示す図である。
【図１２】実施例２の立体物形状データの一例を示す図である。
【図１３】実施例２の立体物データ構成の一例を示す図である。
【図１４】実施例２の立体物データ構成の変形例を示す図である。
【図１５】実施例２及び３の立体物出力断面データの一例を示す図である。
【図１６】実施例３の立体物データの一例を示す図である。
【図１７】実施例３の立体物データ取得のフローを示す図である。
【図１８】実施例３の立体物データ分割のフローを示す図である。
【図１９】実施例３の立体物データ構成の一例を示す図である。
【図２０】実施例３の立体物データ構成の変形例を示す図である。
【図２１】実施例４の立体物データ取得部構成の一例を示す図である。
【図２２】実施例４の立体物データ種設定のフローを示す図である。
【図２３】実施例４のオブジェクト形状判定方法の一例を示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施形態について図面を参照しながら説明する。また、同一な構成については、同じ符号を付して説明する。なお、以下の実施の形態は特許請求の範囲に関わる本発明を限定するものではなく、また、本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【実施例１】
【００１５】
実施例１においては、先ず立体物の成分に関する情報を取得し、保持する。立体物の成分に関する情報とは、例えば立体物の形状・色・物体表面の光沢などの情報である。これらを総称して立体物データと呼ぶことにする。そののち、取得した立体物データを統一的に処理し、ＵＶ硬化型プリンタで立体物を再現する。
【００１６】
＜立体形状データ取得方法＞
立体物の形状データの取得方法としては、先述のように光切断法、焦点移動法やステレオマッチング法等様々な方法が知られている。
【００１７】
図１は、光切断法に関する装置構成を示す。図１に示すように、３次元形状を持つ物体に対し、光源からのスリット光を当てる。物体上の光の位置は光源とセンサ（カメラ）との位置が既知であれば三角測量により求まるため、スリット光を図１の矢印Ｘの方向に物体全体に渡り操作した場合のスリット光を取得することで３次元形状が測定できる。
【００１８】
＜立体色データ取得方法＞
次に、立体物の色データの取得方法を説明する。一般的に、反射物体の色を計測する方法として、分光光度計または分光放射輝度計などが用いられる。例えば、反射物体の面と垂直な角度を０度とした場合に、４５度の角度から入射させ、０度の角度から受光する光の分光反射率を計測することで色を計測する。
【００１９】
しかし、３次元形状をもつ立体物においては、一般的に平らな試料を対象とした測定器での測定は難しい。３次元形状をもつ立体物の色の測定方法としては、様々な方法が検討されている。その１つの方法として、図２で示す例のように、複数の光源とセンサとを用いる方法がある。ここで使用されるセンサとは、望ましくは２次元空間情報とスペクトル情報とを同時に取得できるハイパースペクトルカメラを用いてセンシングを行う。しかし、本構成はこれに限らず、sRGB色空間にキャリブレーションされたデジタルカメラ等を代用して立体物の色を取得することが可能である。
【００２０】
図２の構成において、センサと試料との幾何条件は固定である。図２に示すように、光源は試料の周囲に複数設置されており、各光源と試料との幾何条件も既知である。さらに、前述の立体形状データ取得方法により試料の立体形状が既知である場合、上記センサの各画素に対応する立体物の箇所の法線方向が計算できる。つまり、センサの各画素に対応する立体物の箇所に対して正反射方向にある光源の特定が可能である。すなわち、図２のような構成において、センサの各画素に対応する立体物の箇所における色とは、全ての光源のうち、正反射方向にある光源のみをＯＦＦにした設定におけるセンサ取得値である。
【００２１】
また別の方法として、全ての光源に一意の方向で偏光フィルタを取り付け、センサ側に光源とは直交する方向の偏光フィルタを取り付けることで正反射光を除く光をセンサで受光する構成としても良い。
【００２２】
＜立体光散乱データ取得方法＞
次に、立体物の光沢を示す情報である立体物の光散乱データの取得方法を説明する。一般的に、反射物体の反射特性である表面の光散乱の測定においては、試料面に対して光源とセンサとを正反射方向に設置して実施される。
【００２３】
ここで、前述の立体色データ取得方法における説明のように、図２に示す例の構成においては、試料とセンサとが固定されており、センサの各画素に対応する試料の法線方向が既知である。そのため、センサの各画素に対応する立体物の箇所に対して正反射方向にある光源の特定が可能である。図２のような構成において、センサの各画素に対応する立体物の箇所における光散乱データとは、全ての光源のうち、正反射方向にある光源のみをＯＮにした設定におけるセンサ取得値である。
【００２４】
＜立体物データ処理装置構成と処理工程＞
(立体物データ処理装置構成)
図３は、本実施形態における情報処理装置である立体物データ処理装置３００の構成図である。立体物データ処理装置３００は、立体物データを取得する立体物データ取得部３０１と、立体物データを記憶する立体物データ記憶部３０２と、立体物を出力装置で出力するための立体物出力データ生成部３０３とを有する。
【００２５】
(立体物データ取得部の構成)
図４は、立体物データ処理装置３００のうち、立体物データ取得部３０１の構成を詳細に示す図である。立体物データ取得部３０１は、立体色データ取得部４０１、立体形状データ取得部４０２、立体光散乱データ取得部４０３、情報密度設定部４０４を有する。また、色データ生成部４０５、形状データ生成部４０６、光散乱データ生成部４０７、立体物データ出力部４０８を有する。
【００２６】
立体色データ取得部４０１は、対象となる立体物の色データを取得する。立体形状データ取得部４０２は、対象となる立体物の形状データを取得する。立体光散乱データ取得部４０３は、対象となる立体物の光散乱データを取得する。これらの情報の取得方法は、前述の通りである。
【００２７】
情報密度設定部４０４は、取得された立体物の色と形状と光散乱との各々に応じた情報密度を設定する。情報密度とは、情報のデータ量を示し、例えば色、形状、光散乱を示す情報の解像度およびビット深度あるいはいずれか一方のことである。色データ生成部４０５は、立体色データ取得部４０１で取得した色データを、情報密度設定部４０４で設定された情報密度に応じて変換する。形状データ生成部４０６は、立体形状データ取得部４０２で取得した形状データを、情報密度設定部４０４で設定された情報密度に応じて変換する。光散乱データ生成部４０７は、立体光散乱データ取得部４０３で取得した光散乱データを、情報密度設定部４０４で設定された情報密度に応じて変換する。立体物の質感を表す情報として、色や形状や光散乱を示すデータの量は膨大になる可能性がある。そこで、単純にこれらの情報を統合したデータを用いることは、記憶容量や伝送容量などの観点から好ましくない。一方で、使用するプリンタの再現能力や再現物を観察する人間の感度は色、形状、光沢により異なる。そこで、情報密度設定部４０４で設定された情報密度に応じて各情報を変換する。詳細については後述する。
【００２８】
立体物データ出力部４０８は、生成された色データと形状データと光散乱データとを関連付けるまたは連結して立体物データ記憶部３０２に出力する。
【００２９】
(立体物データ取得部の動作)
図５に示すのは、図５に示す立体物データ取得部３０１の動作を示すフローチャートである。図５に示すフローチャートは、立体物データ処理装置３００の不図示のＲＯＭやＲＡＭなどに格納されたプログラムをＣＰＵが実行することで立体物データ取得部３０１として機能することで実現される。以下、本明細書におけるフローチャートについて同様に、不図示のＲＯＭやＲＡＭなどに格納されたプログラムをＣＰＵが実行することで実現される。以下、図５に従って説明する。
【００３０】
先ず、ステップＳ５０１において立体色データ取得部４０１は、立体物の表面の色データを前述の立体色データ取得方法に従い取得する。取得された情報は例えばキャリブレーションされたデジタルカメラをセンサとした場合のｓＲＧＢのデータである。本実施例における説明においては、色データをｓＲＧＢとして説明するが、これに限らない。前述のように、ハイパースペクトルカメラを用いた分光反射率の情報を各画素について持つようにしても良い。その場合、データを出力した際に観察する光源の分光放射輝度に応じて色変換を行える等の効果が得られる。さらには、データ出力時のデバイスの持つ色材の分光反射率に応じてカラーマッチングが出来る等の効果が得られることは周知である。なお、ここでいうｓＲＧＢのデータとは、一般的に知られるＲＧＢの画像フォーマットであり、各色１６ビットの深度を持つグレースケールデータを併せ持つフォーマットである。
【００３１】
次に、ステップＳ５０２において立体形状データ取得部４０２は、立体物の表面の凹凸である形状データを前述の立体形状データ取得方法に従い取得する。図６に示すのは、取得されたデータを水平な基準面上に設置した場合の断面である。図６に示すように、取得した立体物が例えばレリーフや油彩画のように立体形状に平らな部分（油彩画であればキャンバス）を有する場合、凹凸は、平らな部分（オブジェクトベース面）からの差分であるオブジェクト凹凸を形状データとして取得する。取得された凹凸データは、例えば高さを表す８ビットのグレースケールデータに変換される。例えば、オブジェクトベース面を０、オブジェクト凹凸の最大振幅を２５５としたグレースケールデータに変換される。
【００３２】
ステップＳ５０３において立体光散乱データ取得部４０３は、立体物の表面の光沢を表す光散乱データを前述の立体光散乱データ取得方法に従い取得する。取得された光散乱データとは、例えば光源を変化させた複数のセンサ出力値のうち、正反射に相当する画素値のみを集合させた画像データである。ここで用いるセンサをデジタルカメラであると想定した場合、この集合させた画像データはｓＲＧＢの画像データであるため、既知の変換式により８ビットから１６ビットの輝度画像（グレースケールデータ）に変換する。また、光散乱データはデジタルカメラのセンサ出力値（一般的に知られるＲＡＷデータ）であることが望ましく、その場合、センサ出力値からｓＲＧＢ等への輝度変換がおこなわれる前のデータを光散乱データとして取得可能である。
【００３３】
次に、ステップＳ５０４において情報密度設定部４０４は、立体物の色データと形状データと光散乱データとの各々についての情報密度を設定する。ここで行われる情報密度としては、例えば色データを任意の単位空間における最大の解像度とビット深度の組み合わせとする。形状データをその単位空間における中間の解像度とビット深度の組み合わせとする。光散乱データをその単位空間における最小の解像度とビット深度の組み合わせとする。例えば、次のような組み合わせである。色データは６００ｐｐｉ程度から１２００ｐｐｉ程度の解像度であり、各ＲＧＢデータにつき８ビットから１６ビットのビット深度である。形状データは３００ｐｐｉ程度から６００ｐｐｉ程度の解像度であり、グレースケールのデータとして８ビットのビット深度である。光散乱データは１００ｐｐｉ程度から３００ｐｐｉ程度の解像度であり、グレースケールのデータとして８ビットから１６ビットのビット深度である。このようにすることで、色データ、形状データ、光散乱データを各成分に応じた解像度で持てばよく、データを最大解像度に合わせる場合に比し、データ量の削減が可能である。
【００３４】
このように、立体物の質感を示すデータのうち、プリンタの再現能力や再現物を観察する人間の感度に応じてデータ量を削減することで、データ量を削減しつつその削減したデータ量のデータに基づいて同等の質感を有する立体物を再現することができる。本実施例においては情報密度としては、色データ、形状データ、光散乱データの順で解像度やビット深度が小さくなるようにデータを変換してデータ量を削減したが、必ずしもこの順で解像度やビット深度が小さくなる必要はない。後述するように設定される情報密度に応じて色、形状データ、光散乱データの少なくともいずれかのデータ量の削減が行なわれるようにデータ変換がなされればよい。
【００３５】
また、ここで行われる情報密度の設定については、前述のように出力対象とするデバイスの再現性能や、人の視覚特性（分解能）を考慮して設定することができる。分解能の考慮は、例えば、以下のような簡易なテストにより実現可能である。
【００３６】
図７に示すのは、一般的に用いられる矩形波のチャートである。図７に示すように、矩形波は２値のデータで示され、その間隔のバリエーションが設けてある。例えば立体物形成装置として特定のＵＶ硬化型プリンタがある場合、該プリンタの最大解像度に対し、１ドット１スペースの最小間隔が図７の最小パターンである。同様に２ドット２スペース、３ドット３スペースの様にパターンの解像度が変えてある。このようなパターンを使って、形状および光散乱の出力分解性能を知ることが出来る。
【００３７】
例えば形状については、ＵＶ硬化型プリンタの重ね印字の機能を用いる。周知のように、ＵＶ硬化型プリンタはインクを記録媒体に吐出させたのちにＵＶ光により硬化させるため、硬化後に再度インクを吐出し硬化させる動作を繰り返すことで、他の水性インクを用いるプリンタに比し、１から２ｍｍ程度の厚さの印刷が可能である。本機能により、例えば図７に示すチャートの黒い部分にのみ重ね印字を施したのち、目視または前述の立体形状データ取得方法などの方法により計測する。プリンタの分解能が不足しているような場合には、チャートの黒い部分と白い部分の高さに差が無いなどの現象が確認できる。さらには、形状については触って確認することも可能である。例えば、図７において１ドット間隔のチャートではプリンタの分解能が不足しており、２ドット間隔のチャートでは分解能が満たされているような場合、２ドット間隔に対応する情報密度を用いる。つまり、１ドット間隔の情報密度ではプリンタでは再現できないので、そのようなデータは冗長であるので低解像度化しても質感の再現性に支障がないからである。また、目視による場合も同様で、人の目で違いを見分けることができないような高解像度はデータとして冗長であるので低解像度化しても質感の視認性に支障がないからである。つまり、人の視覚特性で知覚可能な情報密度を用いれば十分だからである。また、望ましくは、図７のようなチャートを高さ（重ね印字回数）の違いに応じて複数出力することで、より精度の高い再現性の測定が可能である。
【００３８】
光散乱（光沢）については、例えば、特許文献１に記されるように、ＵＶ硬化型プリンタのクリアインクおよびＵＶ光での効果タイミングを調整することにより印刷表面の光沢性能を変えられる特性を用いる。このような方法で図７のようなチャートを用い、黒い部分を高光沢、白い部分を低光沢に調整後に出力し、目視または前述の立体光散乱データ取得方法などの方法により計測する。プリンタの分解能が不足しているような場合には、チャートの黒い部分と白い部分の光沢に差が無いなどの現象が確認できる。また、望ましくは、図７のようなチャートを光沢の違いに応じて複数出力することで、より精度の高い再現性の測定が可能である。
【００３９】
このようにすることで、出力対象とするデバイスの再現性能に応じた情報密度の設定が可能である。また、あるいは光、形状、光散乱についての視覚分解能に応じて情報密度を設定することができる。視覚分解能については様々な検討がなされているが、簡易的には例えば上記の測定対象とした図８のようなチャートを目視評価することで判定しても良い。情報密度の設定を行なうことで、いわば質感の再現性に影響を与えない冗長なデータを削減できる度合いを設定することができる。出力対象とするデバイスに応じた情報密度を示すデータは、出力対象とするデバイスから立体物データ処理装置に送られていてもよいし、ステップＳ５０４の時点で出力対象とするデバイスから立体物データ処理装置が取得してもよい。
【００４０】
ステップＳ５０５において色データ生成部４０５は、ステップＳ５０４で設定された色データの情報密度に応じてステップＳ５０１で得られた色データを変換する。例えば、色データの解像度またはビット深度の少なくとも一方を変換して、色データを生成する。ここでいう変換とは、ＲＧＢのデータを立体物の実空間上のサイズに比し、１インチ長の画素数が例えば１２００画素になるように拡大または縮小を行う。ここで行われる画像の解像度変換とは、バイキュービック法、バイリニア法、ニアレストネイバー法など周知の方法により実現されるが、色変化の連続性等を考慮し、バイキュービック法などで実装される。また、ビット深度については例えば１６ビットとし、ステップＳ５０１で得られたデータをそのまま使用する。また、入力データとステップＳ５０４で設定された情報密度の色データのビット深度が異なる場合には周知のビット圧縮または伸張処理を用いればよい。
【００４１】
次に、ステップＳ５０６において形状データ生成部４０６は、ステップＳ５０４で設定された形状データの情報密度に応じてステップＳ５０２で得られた形状データを変換する。例えば、形状データの解像度およびビット深度の少なくとも一方を変換して、形状データを生成する。ここでいう変換とは、グレースケールのデータを立体物の実空間上のサイズに比し、１インチ長の画素数が例えば６００画素になるように拡大または縮小を行う。ここで行われる画像の解像度変換とは、バイキュービック法、バイリニア法、ニアレストネイバー法など周知の方法により実現されるが、形状におけるエッジの保存等を考慮し、ニアレストネイバー法などで実装される。また、ビット深度については例えば８ビットとし、ステップＳ５０２で得られたデータをそのまま使用する。また、入力データとステップＳ５０４で設定された情報密度の形状データのビット深度が異なる場合には周知のビット圧縮または伸張処理を用いればよい。
【００４２】
ステップＳ５０７において光散乱データ生成部４０７は、ステップＳ５０４で設定された光散乱データの情報密度に応じてステップＳ５０３で得られた光散乱データを変換する。例えば、光散乱データの解像度およびビット深度の少なくとも一方を変換して、光散乱データを生成する。ここでいう変換とは、グレースケールのデータを立体物の実空間上のサイズに比し、１インチ長の画素数が例えば３００画素になるように拡大または縮小を行う。ここで行われる画像の解像度変換とは、バイキュービック法、バイリニア法、ニアレストネイバー法など周知の方法により実現されるが、光沢差の保存等を考慮し、ニアレストネイバー法などで実装される。また、ビット深度については例えば１６ビットとし、ステップＳ５０３で得られたデータをそのまま使用する。また、入力データとステップＳ５０４で設定された情報密度の形状データのビット深度が異なる場合には周知のビット圧縮または伸張処理を用いればよい。
【００４３】
ステップＳ５０８において立体物データ出力部４０８は、ステップＳ５０５からステップＳ５０７で生成された色データ、形状データおよび光散乱データを関連付けて立体物データ記憶部３０２に対して出力する。また、上記３つの情報は結合されていても良い。ステップＳ５０６を終えると、立体物データ取得部３０１の動作を終える。なお、立体物データ記憶部３０２に記憶された立体物データは、記憶媒体やネットワークを介して他の装置などに送られても良い。
【００４４】
また、出力対象であるＵＶ硬化型プリンタが既知である場合には、あらかじめ色、形状、光散乱の情報密度が既知であるため、各取得部におけるデータの取得をプリンタに応じた情報密度で行うような構成にしてもよい。
【００４５】
(立体物出力データ生成部の構成)
図８は、立体物データ処理装置３００のうち、立体物出力データ生成部３０３の構成を詳細に示す図である。立体物出力データ生成部３０３は、データ振り分け部８０１、形状データ変換部８０２、色データ変換部８０３、光散乱データ変換部８０４、出力データ出力部８０５を有する。
【００４６】
データ振り分け部８０１は、立体物データ記憶部３０２より取得した立体物データを、色データと形状データと光散乱データとに振り分ける。形状データ変換部８０２は、振り分けられたグレースケール形式の形状データをＵＶ硬化型プリンタのインク重ね回数を示すプリンタ制御信号に変換する。色データ変換部８０３は、振り分けられたＲＧＢ形式の色データをＵＶ硬化型プリンタで再現できる色体積に応じたカラーマッチングをしてインク色を示すプリンタ制御信号への変換を行う。光散乱データ変換部８０４は、振り分けられたグレースケール形式の光散乱データからＵＶ硬化型プリンタの透明インクの吐出制御と硬化タイミングを制御するプリンタ制御信号への変換を行う。出力データ出力部８０５は、各ＵＶ硬化型プリンタ制御信号をＵＶ硬化型プリンタ８５０に出力する。
【００４７】
前述したように、立体物データ記憶部３０２に記憶されている立体物データは、色データ、形状データ、光散乱データの少なくとも１つが変換されている情報である。同一のプリンタに出力する場合にはプリンタの受け付ける解像度は１つであるので、各データの解像度を例えば一番高い解像度のデータの解像度に併せるように変換する。
【００４８】
(立体物出力データ生成部の動作)
図９に示すのは、図８に示す立体物出力データ生成部３０３の動作を示すフローチャートである。以下、同図に従って説明する。
【００４９】
先ず、ステップＳ９０１においてデータ振り分け部８０１は、立体物データ記憶部３０２から関連付けて保存された立体物データを取得する。
【００５０】
次に、ステップＳ９０２においてデータ振り分け部８０１は、ステップＳ９０１において取得された立体物データから色データ、形状データおよび光散乱データを各々異なるプリンタ用のデータ信号に変換するために分離する。
【００５１】
ステップＳ９０３において形状データ変換部８０２は、ステップＳ９０２において分離された立体物データのうち形状データを抽出しプリンタの解像度に合わせた解像度変換をした後に、プリンタの制御信号としての重ね回数に変換する。ここで行われる解像度変換とは、例えば６００ｐｐｉのデータをプリンタの例えば７２０ｐｐｉや１２００ｐｐｉ等の解像度に変換する。なお、解像度変換の方法としてはバイキュービック法、バイリニア法、ニアレストネイバー法など周知の方法により実現されるが、形状におけるエッジの保存等を考慮し、ニアレストネイバー法などで実装される。また、ここで行われる重ね回数への変換とは、出力されるＵＶ硬化型プリンタが既知である場合、該プリンタの性能に依存し、特に記録媒体とヘッド間距離に依存する。そのため、プリンタにおける重ね回数の制約がある場合には、８ビットのグレースケールである形状データをプリンタの重ね回数の制約範囲内で線形に量子化すればよい。その場合、例えば重ね回数制限が１００であった場合、０から２５５の値を持つ形状データのデータは０−１００に線形圧縮される。また、プリンタの重ね回数に制限が無い場合には２５５回以上の重ね回数も実装可能であるが、記録媒体とヘッド間距離が広すぎる場合、ヘッド表面でインク同士が混ざりあって画像が汚れる等の弊害もあるため、最大２５５回程度の重ね回数とする事が望ましい。また、例えば解像度を６００ｐｐｉから１２００ｐｐｉに２倍の解像度にニアレストネイバー等で伸張した場合、面積階調による高さの微調整も可能である。その場合、例えば重ね塗り１回における高さを４段階に調整可能であるため、重ね塗り回数制限が１００回であったとしても４００階調の高さ表現が可能となる。このように、解像度伸張が２倍以上であった場合には表現階調数は重ね塗り回数より多くすることが可能である。
【００５２】
また、本ステップにおける重ね塗りに使用するインク種に特に制限はないが、望ましくは、最表面の数回は白インクで行い、より下層には透明インクを使用する。透明インクで形状の多くを形成し、最表面を白で覆うことで、色再現と、低コストとを実現できるなどの効果がある。ただし、この場合白の重ね回数は全面均一であるため、下層の透明インクの重ね回数によらず一律に透明インクの上層に載せるようにしても良い。この場合、例えば下層の透明インクが白の重ね回数よりも少なかった場合に記録媒体面が十分に白インクで覆われないなどの問題が発生しない。
【００５３】
次に、ステップＳ９０４において出力データ出力部８０５は、上記全体の重ね回数および各重ね回数に応じたインク種を示すプリンタ制御信号をＵＶ硬化型プリンタ８５０に出力する。例えば、各画素に対応する透明インクの重ね回数に白インクを３層足した合計の重ね数と該重ね数に対応する透明か白かのインク種である。
【００５４】
ステップＳ９０５において色データ変換部８０３は、ステップＳ９０２において分離された立体物データのうち色データを抽出し、プリンタの制御信号としてのインク吐出信号に変換する。ＲＧＢ形式のデータからプリンタのインク吐出信号に変換する方法としては、カラーマッチング、ＲＧＢからプリンタのインク値（例えばＣＭＹＫ）への色分解、多値のインク値からプリンタで再現可能な１ドットあたりの階調数への量子化がある。これらは、いずれも周知の技術で実現可能である。例えばカラーマッチングや色分解については、ＩＣＣプロファイルに代表されるＬＵＴ（ルックアップテーブル）などを用いた周知の技術によってｓＲＧＢの色をプリンタで再現可能な色域にマッピングし、インク値に変換する方法がある。また、プリンタの再現可能な階調数への量子化方法としては、ディザマトリクス法、誤差拡散法などの様々な技術が適用可能である。
【００５５】
ステップＳ９０６において出力データ出力部８０５は、ステップＳ９０５においてインク吐出信号に変換された色データをＵＶ硬化型プリンタ８５０に出力する。
【００５６】
次に、ステップＳ９０７において光散乱データ変換部８０４は、ステップＳ９０２において分離された立体物データのうち光散乱データを抽出する。そして、プリンタの解像度に合わせた解像度変換をした後に、プリンタの制御信号としての透明インクとＵＶ硬化タイミングの信号に変換する。ここで行われる解像度変換とは、例えば６００ｐｐｉのデータをプリンタの例えば７２０ｐｐｉや１２００ｐｐｉ等の解像度に変換する。なお、解像度変換の方法としてはバイキュービック法、バイリニア法、ニアレストネイバー法など周知の方法により実現されるが、光沢差保存等を考慮し、ニアレストネイバー法などで実装される。また、光散乱の強度調整は、前述の通り例えば特許文献１に記されるような方法で実現可能であり、８ビットのグレースケールである光散乱データをプリンタのＵＶ硬化タイミング制御信号および硬化タイミング制御に有効な透明インクの吐出量に変換する。
【００５７】
ステップＳ９０８において出力データ出力部８０５は、ステップＳ９０７において変換されたＵＶ硬化タイミング制御信号および硬化タイミング制御に有効な透明インクの吐出量をＵＶ硬化型プリンタ８５０に出力する。ステップＳ９０８を終えると一連の動作を終了する。
【００５８】
以上、述べたように本実施例における立体物データ処理装置３００は、立体物データの成分としての色・形状・光散乱を取得後に、設定された情報密度に応じてデータを変換してそれらのデータを関連付けて保存する。特にプリンタの分解能やユーザの感度に応じて不必要なデータを削減することで、効率的なデータの保存が可能である。また、色・形状・光散乱のデータを各ＵＶ硬化型プリンタ用のデータとして形状の層、色の層、光散乱の層の順に生成し、該順に従ってプリンタに送信することで、ＵＶ硬化型プリンタを用いた質感の再現を実現する。
【実施例２】
【００５９】
実施例１においては、立体物データを取得後に保持し、取得した立体物データを統一的に処理してＵＶ硬化型プリンタで再現する例を示した。ここで、再現するプリンタはＵＶ硬化型プリンタに限られない。つまり、再現するプリンタは、３次元プリンタであってもよく、立体物データを３次元プリンタ用のデータとして保持し、取得した立体物データを統一的に処理して再現することが可能である。本実施例では、立体物データを３次元プリンタ用のデータとして保持する例を説明する。なお、この場合であっても立体形状データ取得方法、立体色データ取得方法、立体光散乱データ取得方法については共通で使用できる。
【００６０】
まず、３次元プリンタで用いられるデータフォーマットについて説明する。多くの３次元形状プリンタでは、入力フォーマットであるＳＴＬフォーマットのうちバイナリ形式で表される周知のフォーマットをサポートしている。図１０に示すように、バイナリ形式のＳＴＬフォーマットは、80バイトの任意の文字列から始まり、４バイトの整数で三角形の個数が記述される。その後、各三角形の情報が法線ベクトル、頂点１の座標、頂点２の座標、頂点３の座標の順で各記憶領域に記述され、各三角形の最後には２バイトの未使用領域が含まれる。この２バイトの未使用領域は通常の３次元形状プリンタの場合には無視されるが、特にインクジェット方式の３次元形状プリンタなどのカラーのシステムでは、この２バイトを用いて色データを埋め込むなどの工夫がなされている。しかしながら、２バイトのデータ量では、フルカラーと呼ばれるＲＧＢ各８ビットの２４ビット画像を保存することは不可能であるため写真と同等の画質を再現することは不可能である。さらには光沢の情報も付加できないため、３次元物体の再現はできない。本実施例では、このようなＳＴＬフォーマットを用いて、色、形状、光沢の情報を表す例を説明する。
【００６１】
本実施例ではまた、図３に示した立体物データ処理装置、図４に示した立体物データ取得部の装置構成は実施例１と同一のものを使用可能である。以下、実施例１と異なる立体物データ取得部の動作について説明する。
【００６２】
本実施例における立体物データとは、前述の図１０に示すＳＴＬフォーマットに準拠するものとし、各三角形に付随する未使用のデータ部を用いて色や光沢などの質感成分の保存と再現を可能にする。なお、一般的な３次元プリンタでは未使用のデータ領域は無視されるため、本実施例の３次元形状プリンタと一般的な３次元プリンタとで共通で利用することが可能な立体物データのフォーマットとなる。
【００６３】
（立体物データ取得部）
図１１は、本実施例において立体物データ取得部３０１の動作を示すフローチャートである。以下、同図に従って説明する。
【００６４】
先ず、ステップＳ１１０１において立体形状データ取得部４０２は、立体物の形状を取得してＳＴＬフォーマットの立体形状データを作成する。ここで行われる立体物からＳＴＬフォーマットの生成については、すでに多数の製品が存在し、先述の光切断法、焦点移動法やステレオマッチング法等様々な手法を用いた測定値からＳＴＬデータを生成することが可能である。図１２は球状の物体をＳＴＬフォーマットで表したデータを可視化した様子である。図１２に示すように、球状の立体は細かな三角形（ポリゴンデータ）の集合体で表現され、例えば図１０に示すＳＴＬフォーマットの三角形１が図１２のＴｒｉ．１、図１０に示すＳＴＬフォーマットの三角形２が図１２のＴｒｉ．２に対応する。
【００６５】
次に、ステップＳ１１０２において立体色データ取得部４０１は、前述の立体色データ取得方法を用いてＳＴＬデータの各三角形に対応する色データを取得する。なお、ここでいう色データとは例えばＲＧＢフォーマットのデータであり、各８ビットのグレースケールデータが取得されるものとする。つまり、色データは各８ビットのＲＧＢデータであり、その総データ量は２４ビット（３バイト）存在する。この場合、図１０に示すＳＴＬフォーマットの三角形の未使用データの２バイトでは保存するデータ量が不足する。
【００６６】
ステップＳ１１０３において色データ生成部４０５は、任意の閾値（第１の閾値）を用いて色データを単位空間としてグループ化する。ここでいう第１の閾値は、色データにおける色差に対応する値である。例えば、ｓＲＧＢのデータをＣＩＥ  Ｌ＊ａ＊ｂ＊のデータに変換した際の図１２におけるＴｒｉ．１とＴｒｉ．２とのΔＥで表わされる色差が第１の閾値内であるかどうかを判定する。色差が第１の閾値内である場合、Ｔｒｉ．１とＴｒｉ．２との色データをグループ化する。例えば、図１２で表示した立体がある単一の素材でできたボールのようなものであった場合、Ｔｒｉ．１とＴｒｉ．２の色差は測定誤差、すなわち第１の閾値内の範囲になる。そのため、Ｔｒｉ．１とＴｒｉ．２は同じ色（ＲＧＢ）であると判定する。このとき、Ｔｒｉ．１とＴｒｉ．２とを表す色は同じ色として扱う。例えばＴｒｉ．１とＴｒｉ．２との色は、Ｔｒｉ．１の色もしくはＴｒｉ．２の色、または両者の平均の色として一つの値になる。ＳＴＬのフォーマットにおいては、隣り合った三角形が順に記載されているため、この様に三角形を順に比較していくことで、形状データの情報密度に対し、色データの情報密度を下げる事が可能である。つまり、複数の三角形をグループ化して一つの三角形として扱うことで色データの解像度は形状データの解像度よりも下がることになる。従って、形状データのビット数よりも少ないビット数、すなわち未使用のデータ領域に対応するビット数で色データを表現することができる。詳細については後述する。
【００６７】
ステップＳ１１０４において立体光散乱データ取得部４０３は、前述の立体光散乱データ取得方法を用いてＳＴＬデータの各三角形に対応する光散乱データを取得する。なお、ここでいう光散乱データとは例えばグレースケールフォーマットのデータである。
【００６８】
ステップＳ１１０５において光散乱データ生成部４０７は、任意の閾値（第２の閾値）を用いて光散乱データを単位空間としてグループ化する。ここでいう第２の閾値は、光散乱データにおける光沢差に対応する値である。光沢差とは、立体光散乱データ取得方法から得られるグレースケールデータの値に対応するものであるが、この値は言い換えればセンサから得られた各三角形の正反射光の輝度値である。この輝度値の差を図１２におけるＴｒｉ．１とＴｒｉ．２の間で比較する。ここで、図１２で表示した立体がある単一素材でできたボールのようなものであった場合、Ｔｒｉ．１とＴｒｉ．２の光沢差は測定誤差、すなわち第２の閾値内の範囲になる。そのため、Ｔｒｉ．１とＴｒｉ．２は同じ光沢成分であると判定する。このとき、Ｔｒｉ．１とＴｒｉ．２とを表す光沢（輝度値）は値として扱う。例えばＴｒｉ．１とＴｒｉ．２との色は、Ｔｒｉ．１の輝度値もしくはＴｒｉ．２の輝度値、または両者の平均の輝度値として一つの値になる。このように、色データと同様に形状データの情報密度に対し、光散乱データの情報密度を下げる事が可能である。なお、立体物の素材等により光沢データに必要な情報密度が異なる。
【００６９】
ステップＳ１１０６において立体物データ出力部４０８は、形状データの情報密度に対し、各グルーピングにより情報密度が下げられた色データと光散乱データとをＳＴＬのフォーマットに付加する。ここで生成される立体物データの一例を図１３に示す。図１３のＳＴＬフォーマットは、図１０に示すＳＴＬフォーマットと同じであるが、説明のため、ヘッダ、各三角形の法線ベクトル、頂点のデータについては小分類以下を省略し、各三角形の未使用データを分類して記している。
【００７０】
図１３に示す通り、未使用のデータ１６ビットを、色データグループフラグ１ビットと光散乱データグループフラグ１ビットとデータ領域１４ビットとに分割している。なお、グループフラグとは、グループを構成する先頭の要素であるか否かを示す情報のことである。例えばステップＳ１１０３において色データをグループ化した際に、１番目の三角形から４番目の三角形までがグループ化された場合、１番目の三角形のグループフラグは‘ＴＲＵＥ’であり、２番目から４番目までの三角形のフラグは‘ＦＡＬＳＥ’である。光散乱データについても同様にグループ化情報が反映される。そののち、グループフラグが‘ＴＲＵＥ’の三角形を先頭に、データ領域に２４ビットの色データや８ビットの光散乱データが書き込まれる。なお、色データについては三角形１つあたりのデータ領域１４ビットでは不足するため、１番目の三角形のデータ領域１４ビットと２番目の三角形のデータ領域１０ビットとを用いて２４ビットのデータが格納される。なお、色データと光散乱データが同時に‘ＴＲＵＥ’であった場合には、例えば色データから先に格納されるようにするなど予めルールを設けておけばよい。この様にすることで、例えば１番目の三角形から４番目の三角形が色データ、光散乱データ共にグループ化された場合、データ領域の合計は５６ビットであり、格納する色データと光散乱データ３２ビットを格納するに十分なデータ領域が存在する。この様にすることで、既存のＳＴＬフォーマットに色データと光散乱データとを付加することで、質感成分を含む立体物データを生成することができる。生成されたデータは、立体物データ記憶部に出力される。なお、光散乱データは１６ビットでもよく、その場合であっても４０ビットであるため、５６ビットのデータ領域に十分に収まる。
【００７１】
なお、形状データに比し色データと光散乱データの情報密度が十分に低くなく、ＳＴＬフォーマットの未使用データに納められない時には、ステップＳ１１０３またはステップＳ１１０５で用いるグループ化のための閾値を調整すればよい。
【００７２】
また、データの格納フォーマットは図１３に示すデータ形式に限られない。他の形式で保存されてもよい。図１４は、他のデータ形式で保存される例を示す。同図に示すように、各三角形データの下部に、色データと光散乱データが付いている。この様に、色データや光散乱データを別で持っておき、順に記載してあれば、各三角形の未使用のデータにインデックスを記載して下部の色データや光散乱データを参照できるようにすればよい。例えば色データの何番目に記載した、光散乱データの何番目に記載したといった参照先アドレスをインデックスとして記載するだけで良いことになる。また、すでに記載されている色データは流用することが可能である。
【００７３】
(立体物出力データ生成部の構成)
立体物出力データ生成部の構成についても、実施例１で説明した図８に示す構成で実現可能である。ただし、３次元形状を造形するプリンタは特に図示しない３次元プリンタを用いる。
【００７４】
また、３次元プリンタにおいては前述のように、光造形法、溶融物体積法、粉末焼結法、インクジェット法、インクジェットバインダ法など様々知られる方法で立体物を断面データとして積層しながら作成される。その場合の断面データについて図１５を用いて説明する。図１５に示すのは、例えば図１２に示す球状の立体データの断面である。同図に示すように、断面のデータは中央に形状の断面データ、その外側に色データの断面データ、最外部に光散乱の断面データにより構成される。この様に、実施例１で述べた場合と同様に、入力された立体物データを形状・色・光散乱の制御機能を持つ層にして出力する。３次元形状プリンタへのデータ出力は、該断面に従い例えばインクジェットノズルからバインダを吐出して形状の断面を形成するデータや、カラーインクを混在させることで色データ断面を形成するデータを出力する。さらには、最外部に透明なインクを用いて光散乱断面を形成した後にＵＶ光により硬化タイミングの制御信号を出力する構成にすればよい。
【００７５】
また、立体物出力データのデバイスは３次元プリンタ単体でなくてもよい。例えば、３次元プリンタで形状のみを作成しておき、後にＵＶ硬化型プリンタで色データおよび光散乱データを出力するような構成でも良い。ＵＶ硬化型プリンタを用いた際の色データおよび光散乱データの生成については前記の通りであるのでここでは詳述しない。
【００７６】
以上、述べたように本実施例における立体物データ処理装置３００は、立体物データの成分を取得後に、一般的な機器でも使用可能なＳＴＬフォーマットの範疇で色・形状・光散乱のデータを統一的に扱うことが可能である。
【実施例３】
【００７７】
実施例２においては、従来のＳＴＬフォーマットに従って、立体物データを３次元プリンタ用のデータとして保持し、取得した立体物データを統一的に処理して再現する方法について説明した。このように立体物データをＳＴＬフォーマットにおける三角形で表現した場合、その三角形より情報密度の高い色データや光沢データは保持再現できない。例えば、図１６に示す立体物のように、凹凸形状を持たない平らな物体であった場合の形状データは情報密度を低くしても形状を保持することが可能であるが、該平面に例えば平らな木目のプリントが貼り付けられている場合に、該木目情報の保持は不可能である。本実施例はＳＴＬフォーマットには縛られない、３次元形状を持つ立体物の色・形状・光散乱のデータを保持し、再現する例について説明する。なお、この場合であっても立体形状データ取得方法、立体色データ取得方法、立体光散乱データ取得方法については共通で使用できる。
【００７８】
また、図３に示した立体物データ処理装置、図４に示した立体物データ取得部の装置構成も同一で使用可能である。以下、実施例１と異なる立体物データ取得部の動作について説明する。なお、３次元形状のデータ出力に関しても実施例２と共通であるため、本実施例では説明を省略する。
【００７９】
（立体物データ取得部）
図１７に示すのは、図５に示す立体物データ取得部３０１の動作を示すフローチャートである。以下、同図に従って説明する。
【００８０】
ステップＳ１７０１において立体形状データ取得部４０２は、前述のステップＳ１１０１と同様に、立体物の形状を取得してＳＴＬフォーマットの立体形状データを作成し、例えば図１０に示すような立体物データを得る。
【００８１】
次にステップＳ１７０２において立体物データ取得部３０１は、取得されたＳＴＬフォーマットのうち、１つの三角形を選択する。
【００８２】
次に、ステップＳ１７０３において立体色データ取得部４０１は、前述の立体色データ取得方法を用いて得られた色データのうち、ステップＳ１７０２において選択された三角形に相当する色データを取得する。
【００８３】
ステップＳ１７０４において色データ生成部４０５は、ステップＳ１７０３において取得された色データの分布を求め、該分布に応じて三角形を分割する。なお、ここで行われる三角形の分割とは例えば図１８に示すようなフローに従って行う。以下、図１８を用いて三角形の分割について説明する。
【００８４】
ステップＳ１８０１において色データ生成部４０５は、三角形内の色の平均値を算出する。色データにおける平均値とは、ＲＧＢの平均値でもよいし、ＲＧＢの値をｓＲＧＢとして算出したＣＩＥ  Ｌ＊ａ＊ｂ＊などの平均値でも良い。以下、ＣＩＥ  Ｌ＊ａ＊ｂ＊の平均値であるとして説明を続ける。
【００８５】
次に、ステップＳ１８０２において色データ生成部４０５は、三角形の色データの平均値に対し、任意の閾値よりも差が大きい点を抽出する。ここで抽出された差の大きい点の数に応じて三角形が分割される。また、ここでいう差とは、色差ΔＥのことであり、閾値とは例えば３から１０程度の値で与えられる。
【００８６】
ステップＳ１８０３において色データ生成部４０５は、ステップＳ１８０２において抽出された差の大きい点を元に、三角形を分割する。ここでの三角形の分割とは、例えば任意の三角形の頂点から対辺に対し、差の大きい点を１つ含むような頂点角の分割線を引くことで達成される。または、平面内の点を参照して三角形を分割する方法としては、ボロノイ分割やドロネー三角形分割など周知の方法を用いてもよい。以下、分割された三角形のことをサブ三角形と称する。ステップＳ１８０３を終えると、ステップＳ１７０４を終える。
【００８７】
ステップ１７０５において立体光散乱データ取得部４０３は、前述の立体光散乱データ取得方法を用いて得られた光散乱データのうち、ステップＳ１７０２において選択された三角形に相当する光散乱データを取得する。
【００８８】
ステップＳ１７０６において光散乱データ生成部４０７は、ステップＳ１７０５において取得された光散乱データの分布を求め、該分布に応じて三角形を分割する。なお、ここで行われる三角形の分割とは色データと同様に例えば図１８に示すようなフローに従って行う。以下、図１８を用いて三角形の分割について説明する。
【００８９】
ステップＳ１８０１において光散乱データ生成部４０７は、三角形内の色の平均値を算出する。光散乱データにおける平均値とは、グレースケール化された画素値の平均でもよいし、グレースケールの画素値に変換される前のセンサで取得した輝度値などの平均値でも良い。以下、グレースケールの画素値の平均であるとして説明を続ける。
【００９０】
次に、ステップＳ１８０２において光散乱データ生成部４０７は、ステップＳ１８０１で算出した三角形の光散乱データの平均値に対し、任意の閾値よりも差が大きい点を抽出する。ここで抽出された差の大きい点の数に応じて三角形が分割される。また、閾値とは例えば５から１５程度の値で与えられる。
【００９１】
ステップＳ１８０３において光散乱データ生成部４０７は、ステップＳ１８０２において抽出された差の大きい点を元に、三角形をサブ三角形に分割する。ここでの三角形の分割とは、例えば任意の三角形の頂点から対辺に対し、差の大きい点を１つ含むような頂点角の分割線を引くことで達成される。または、平面内の点を参照して三角形を分割する方法としては、ボロノイ分割やドロネー三角形分割など周知の方法を用いてもよい。ステップＳ１８０３を終えると、ステップＳ１７０６を終える。
【００９２】
ステップＳ１７０７において立体物データ出力部４０８は、ステップＳ１７０２において選択された三角形に相当する形状データに対し、色データと光散乱データを付加する。
【００９３】
ステップ１７０８において立体物データ取得部３０１は、ステップＳ１７０１において取得された三角形の集合データのうち全ての三角形に対してステップＳ１７０３からステップＳ１７０７までの処理がなされたかを判定する。全ての三角形に対する処理がなされていない場合には処理をステップＳ１７０２に戻す。全ての三角形に対する処理が終わっていると判定された場合には、ステップＳ１７０９に進み、立体物データ出力部４０８が立体物データを出力して処理を終了する。
【００９４】
なお、図１７に示す全てのステップが終了した際に出力されるデータの一例を図１９に示す。図１９は、ＳＴＬとは異なる独自のフォーマットであるが、説明のため、ＳＴＬと共通なヘッダ、各三角形の法線ベクトル、頂点のデータについては小分類以下を省略し、各三角形の色データと光散乱データを分類して記している。図１９に示す通り、色データは形状データの１つの三角形を色データに基づいて分割した分割数を示すデータ２バイトと分割数分の色データ２４ビットと分割されたサブ三角形の頂点データ３６バイトとの繰り返しにより構成される。また、続く光散乱データは、形状データの１つの三角形を光散乱データに基づいて分割した分割数を示すデータ２バイトと分割数分の光散乱データ８ビットと分割されたサブ三角形の頂点データ３６バイトとの繰り返しにより構成される。これを１つの三角形の情報として必要な三角形数分繰り返す。このように、本実施例においては形状データ（分割前の三角形の形状データ）よりも、色データや光散乱データの方が情報密度が高いことがある。なお、色データと光散乱データとに応じてあるＳＴＬの三角形から分割されるサブ三角形は、数や形状などが異なり得る。
【００９５】
また、ここで出力されるデータとは図１９に示す例に限らない。例えば図２０に示す例のように、ＳＴＬの各三角形の形状データにカラーデータパレットのインデックスを示すデータと光散乱データパレットのインデックスを示すデータとを記録する。また、全ての三角形データの後に、カラーデータのインデックスと情報格納場所のテーブルと光散乱データのインデックスと情報格納場所のテーブル情報とを付加してある。さらには、２次元（ＷxＨ pixel）の広がりを持つＲＧＢの画像データであるカラーデータの情報（ＷおよびＨは正の整数）の情報が付加される。また、２次元（ＷxＨ pixel）の広がりを持つグレースケールの画像データである（ＷおよびＨは正の整数）光散乱データの情報が付加される。この様にすることで、１つのポリゴン単位で表わされる形状のデータに対し、より解像度の高い色と光散乱の情報を記録することが可能になる。さらには、各三角形のデータに付与されるカラーデータパレットのインデックスおよび光散乱データパレットのインデックスは共に１バイトである。すなわち、合わせて２バイトのデータは従来のＳＴＬデータの未使用データの範囲で格納が可能になるため、ＳＴＬフォーマットとの親和性が向上するなどの効果がある。
【００９６】
以上、述べたように本実施例の立体物データ処理装置３００は、立体物データの成分としての色・形状・光散乱を取得後に、形状データより情報密度の高い色データに加え光散乱データまでを保持することができる。さらには、立体物出力データ生成部３０３を介し、実物に非常に近い質感を持つ立体物の再現が可能となる。
【実施例４】
【００９７】
これまで実施例１から実施例３における立体物データ取得部３０１においては、ＵＶ硬化型プリンタと３次元プリンタで出力するデータを個別に扱っていた。本実施例では、立体形状データ取得方法により取得した立体物データから、出力先のプリンタの種類に応じたデータを自動で作成する例を説明する。すなわち、ＵＶ硬化型プリンタで出力するデータか３次元プリンタで出力するデータかを自動で判定する例を説明する。
【００９８】
（立体物データ取得部）
図２１は、本実施例における立体物データ取得部３０１の構成を示す図である。なお、図２１に示す構成のうち図４と共通の動作をする処理部については同一の記号で記載してある。図２１に示す通り、データ種設定部２１０１が新たに加わっている。
【００９９】
図２２に示すのは、データ種設定部２１０１の動作を示すフローチャートである。以下、同図に従って説明する。
【０１００】
先ず、ステップＳ２２０１においてデータ種設定部２１０１は、前述の光切断法、焦点移動法やステレオマッチング法等を用いて対象となる立体物の形状を測定する。
【０１０１】
次に、ステップＳ２２０２においてデータ種設定部２１０１は、対象となる立体物の形状がベースとなるようなオブジェクトベース面を持つか否かを判定する。ここで、立体物のオブジェクトベース面について図２３を用いて説明する。図２３に示す例は、説明のため立体物を平らな基準平面の上に載せた場合の例を示す。図２３（ａ）に示すのは、例えば油彩画のベースとなるキャンバス等の上に油絵具で凹凸を付けたような試料であり、他にも皮革や木材などがある。このような試料は、オブジェクトに基準平面と平行な平らな部分（オブジェクトベース面）がある立体物である。このような場合には、ステップＳ２２０２により、オブジェクトベース面を持つと判定され、ステップＳ２２０３に進む。一方、図２３（ｂ）に示すのはオブジェクトに平らな部分（オブジェクト平面）が無い(基準平面＝オブジェクトベース面)場合である。このような場合には、ステップＳ２２０２により、オブジェクトベース面を持たないと判定され、ステップＳ２２０４に進む。
【０１０２】
ステップＳ２２０３においてデータ種設定部２１０１は、オブジェクトベース面の上のオブジェクト凹凸の振幅が閾値以上であるか否かの判定を行う。ここでいう閾値とは、例えば凹凸を前述のＵＶ硬化型プリンタで再現する場合、出力装置の性能にも依存するが、例えば２ｍｍ程度の振幅である。閾値以上であると判定された場合にはステップＳ２２０４に進み、閾値以下であると判定された場合にはステップＳ２２０５に進む。
【０１０３】
ステップＳ２２０４に処理が進んでいるということは、ステップＳ２２０２においてオブジェクトベース面を持たないと判定された立体物または、ステップＳ２２０３においてオブジェクト凹凸が閾値以上であると判定された立体物である場合である。この場合、ＵＶ硬化型プリンタでの再現が難しいと判定されるため、３Ｄプリンタ用のデータ種であると設定される。以降の処理は、例えば実施例２などにおいて説明したように、３Ｄプリンタ用のデータに親和するような立体物データが生成される。
【０１０４】
ステップＳ２２０５においてデータ種設定部２１０１は、ステップＳ２２０３においてオブジェクト凹凸が閾値以下であると判定された立体物である。この場合、ＵＶ硬化型プリンタでの再現可能であると判定されるため、ＵＶ硬化型プリンタ用のデータ種であると設定される。以降の処理では、例えば実施例１で説明したようにＵＶ硬化型プリンタ用のデータを立体物データとして生成する。ステップＳ２２０４またはステップＳ２２０５を終えると一連の動作を終了する。
【０１０５】
以上、述べたように本実施の形態における立体物データ処理装置３００は、立体物データを生成する際に出力プリンタに応じて設定を変更することができる。
【０１０６】
＜変形例＞
これまで実施例２から実施例４における３次元プリンタ用の立体物データは、図１３、図１４や図１９、図２０のデータ構造に示すように、１つのファイルに色、形状、光散乱の情報を格納していたが、これに限られない。変形例として、色、形状、光散乱は各々別のファイルに格納されている形態であっても良い。すなわち、図１３におけるデータ領域には色データおよび光散乱データを格納したデータファイルへのアドレスが入力されていても良い。その場合であっても、色データグループフラグや光散乱データグループフラグを併用することにより、少ないデータ量で実物に非常に近い質感を持つ立体物の情報を保持できる。
【０１０７】
また、図１３におけるデータ領域に入力するデータを例えば各三角形データに対応する２次元のＲＧＢの色データや２次元のグレースケールの光散乱データへのアドレスが入力されてもよい。その場合、従来のＳＴＬフォーマットを使用しながら、例えば図１６に示すように単純な形状であっても複雑な表面の色データや光散乱データを保持することが可能である。
【０１０８】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【０１０９】
また、本実施形態の機能を実現するためのプログラムコードを、１つのコンピュータ（ＣＰＵ、ＭＰＵ）で実行する場合であってもよいし、複数のコンピュータが協働することによって実行する場合であってもよい。さらに、プログラムコードをコンピュータが実行する場合であってもよいし、プログラムコードの機能を実現するための回路等のハードウェアを設けてもよい。またはプログラムコードの一部をハードウェアで実現し、残りの部分をコンピュータが実行する場合であってもよい。
【図１】
2016035623.tif 000003
【図２】
2016035623.tif 000004
【図３】
2016035623.tif 000005
【図４】
2016035623.tif 000006
【図５】
2016035623.tif 000007
【図６】
2016035623.tif 000008
【図７】
2016035623.tif 000009
【図８】
2016035623.tif 000010
【図９】
2016035623.tif 000011
【図１０】
2016035623.tif 000012
【図１１】
2016035623.tif 000013
【図１２】
2016035623.tif 000014
【図１３】
2016035623.tif 000015
【図１４】
2016035623.tif 000016
【図１５】
2016035623.tif 000017
【図１６】
2016035623.tif 000018
【図１７】
2016035623.tif 000019
【図１８】
2016035623.tif 000020
【図１９】
2016035623.tif 000021
【図２０】
2016035623.tif 000022
【図２１】
2016035623.tif 000023
【図２２】
2016035623.tif 000024
【図２３】
2016035623.tif 000025