(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-08
(45)【発行日】2024-11-18
(54)【発明の名称】情報処理装置、管理データの生成方法
(51)【国際特許分類】
G06T 1/00 20060101AFI20241111BHJP
B29C 64/386 20170101ALI20241111BHJP
B33Y 50/00 20150101ALI20241111BHJP
G06Q 50/10 20120101ALI20241111BHJP
【FI】
G06T1/00 200D
B29C64/386
B33Y50/00
G06Q50/10
(21)【出願番号】P 2021186007
(22)【出願日】2021-11-15
(62)【分割の表示】P 2016193046の分割
【原出願日】2016-09-30
【審査請求日】2021-12-07
【審判番号】
【審判請求日】2023-04-20
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110002767
【氏名又は名称】弁理士法人ひのき国際特許事務所
(72)【発明者】
【氏名】平川 悟史
【合議体】
【審判長】畑中 高行
【審判官】木方 庸輔
【審判官】高橋 宣博
(56)【参考文献】
【文献】特表2010-532681(JP,A)
【文献】特開2016-159630(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 1/00
(57)【特許請求の範囲】
【請求項1】
3次元のオブジェクトの造形に利用できるデータと、該データに対応する属性情報とを含む管理データを生成する生成手段を有し、
前記属性情報は、前記オブジェクトの3次元の構造を表すデータを生成する読み取り機能に係る情報として当該読み取り機能を実行した3次元スキャナの識別情報を含み、
前記属性情報は、さらに、1又は複数の前記管理データを管理する外部システムにアクセスするためのアドレス情報、及び、前記オブジェクトの3次元の構造に係る特徴量を含み、
前記生成手段は、前記管理データを生成する場合に、該管理データに含まれる前記造形に利用できるデータと近似するデータの属性情報を、前記アドレス情報を用いて外部システムから取得することを特徴とする情報処理装置。
【請求項2】
前記情報処理装置は、前記3次元スキャナであることを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記属性情報は、前記造形に利用できるデータに基づいて造形を行う3次元プリンタの制御に使用可能なことを特徴とする請求項1又は2に記載の情報処理装置。
【請求項4】
前記属性情報は、さらに、前記造形に利用できるデータの利用状況を管理する外部システムにアクセスするためのアドレス情報を含み、
前記アドレス情報は、前記3次元プリンタにおいて、前記造形に利用できるデータの利用状況に基づく造形の制限を行う際に使用可能なことを特徴とする請求項3に記載の情報処理装置。
【請求項5】
前記属性情報は、さらに、1又は複数の前記管理データを管理する外部システムにアクセスするためのアドレス情報、及び、前記オブジェクトの3次元の構造に係る特徴量を含み、
前記読み取り機能に係る情報は、前記造形に利用できるデータが前記読み取り機能により生成されたデータであるか否かを示す情報を含み、
前記属性情報は、前記3次元プリンタにおいて、前記読み取り機能に係る情報が前記造形に利用できるデータが前記読み取り機能により生成されたデータであることを示す場合に、前記造形に利用できるデータの代わりに造形可能な該造形に利用できるデータと近似するデータを取得する際に使用可能なことを特徴とする請求項3又は4に記載の情報処理装置。
【請求項6】
コンピュータにより実行される、3次元のオブジェクトの造形に利用できるデータを生成するステップと、該データに対応する属性情報を設定して管理データを生成するステップとを含む管理データを生成する方法であって、
前記属性情報は、前記オブジェクトの3次元の構造を表すデータを生成する読み取り機能に係る情報として当該読み取り機能を実行した装置の識別情報を含み、
前記属性情報は、さらに、前記造形に利用できるデータが利用された回数を含むことを特徴とする方法。
【請求項7】
コンピュータにより実行される、3次元のオブジェクトの造形に利用できるデータを生成するステップと、該データに対応する属性情報を設定して管理データを生成するステップとを含む管理データを生成する方法であって、
前記属性情報は、前記オブジェクトの3次元の構造を表すデータを生成する読み取り機能に係る情報として当該読み取り機能を実行した装置の識別情報を含み、
前記属性情報に含まれる前記読み取り機能に係る情報は、さらに、前記造形に利用できるデータが前記読み取り機能により生成されたデータであるか否かを示す情報を含むことを特徴とする方法。
【請求項8】
前記属性情報は、さらに、前記造形に利用できるデータの利用状況を管理する外部システムにアクセスするためのアドレス情報を含むことを特徴とする請求項6~
7のいずれか1項に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、3次元状の造形物の造形に利用できるデータを管理するための技術に関するものである。
【背景技術】
【0002】
近年、3次元状の造形物を造形するための造形装置、いわゆる3Dプリンタが広く用いられるようになってきている。その3Dプリンタで造形する際に用いる3Dモデルデータにおいては、有料ないしは無料でダウンロード可能なWeb上のサービスから入手可能である。また、3次元オブジェクトを読取るための読取装置、いわゆる3Dスキャナを用いて実在するものを読取ることで、3次元の造形物を造形するためのデータ(モデルデータなど)を得ることも可能である。これにより、ユーザは造形したい3Dモデルデータを容易に得ることができ、かつ自由に造形が可能になってきている。
【0003】
上述した環境においては、著作権物や危険物も自由に複製・造形可能である。ここで、特許文献1では、危険物の規制モデルデータベースを持ち、そのデータベース内の3Dモデルデータと造形するための3Dモデルデータを照合し、規制対象のデータと判断した場合には出力規制を行う技術が提案されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
一方で、無条件、または、特定の条件のもと、3次元オブジェクトの複製などが許容されている場合もある。そういった場合であっても、どの程度複製データが流通し、利用されている(回数)のか、どのような経路、どのような精度の複製が利用されているのかといった状況を把握する必要があるが、現状、そのような仕組みがない。また、3Dスキャナの精度が悪い場合などには、細部が表現されていない造形用のデータが流通してしまうため、結果的に精度が悪い造形物の出力が行われてしまう。
【0006】
したがって、本発明は、3次元状の造形物を造形するためのデータについて、データ自体の識別や利用回数や生成経路などの利用状況の識別などが可能となるような管理のための仕組みを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の情報処理装置は、3次元のオブジェクトの造形に利用できるデータと、該データに対応する属性情報とを含む管理データを生成する生成手段を有し、前記属性情報は、前記オブジェクトの3次元の構造を表すデータを生成する読み取り機能に係る情報として当該読み取り機能を実行した3次元スキャナの識別情報を含み、前記属性情報は、さらに、1又は複数の前記管理データを管理する外部システムにアクセスするためのアドレス情報、及び、前記オブジェクトの3次元の構造に係る特徴量を含み、前記生成手段は、前記管理データを生成する場合に、該管理データに含まれる前記造形に利用できるデータと近似するデータの属性情報を、前記アドレス情報を用いて外部システムから取得することを特徴とする。
【発明の効果】
【0008】
本発明によれば、3次元状の造形物を造形するためのデータについて、データ自体の識別や利用回数や生成経路などの利用状況の識別などが可能となるような管理をすることができる。
【図面の簡単な説明】
【0009】
【
図2】各装置の情報処理機能のハードウェアモジュール構成図
【
図3】造形装置のソフトウェア構成と一部ハードウェア構成を例示する図
【
図4】読取装置のソフトウェア構成と一部ハードウェア構成を例示する構成図
【
図5】データベースのソフトウェア構成を例示する図
【
図7】専用アプリケーションで生成した3Dモデルデータの一例を示す図
【
図8】読取装置で生成した3Dモデルデータの一例を示す図
【
図9】属性情報が不定な3Dモデルデータの一例を示す図
【
図10】読取装置におけるデータパッケージの生成処理を示すフローチャート
【
図11】造形装置にてデータパッケージ(属性情報あり)を受信した際の造形処理を示すフローチャート
【
図12】造形装置にてデータパッケージ(属性情報なし)を受信した際の造形処理を示すフローチャート
【
図13】3Dモデルデータを近似データに置き換えて造形するか確認する画面
【発明を実施するための形態】
【0010】
以下、本発明を実施するための形態について図面を用いて説明する。
【実施例1】
【0011】
図1は、本発明の一実施例を示す造形システムの全体構成を例示する図である。
図1に示すように、本実施例の造形システムは、造形装置102、読取装置103、クライアントPC104、データベース105を含むネットワークシステムを構成している。
【0012】
ネットワーク101は、イントラネットあるいはローカルエリアネットワーク(LAN)などのネットワークである。造形装置102は、3次元の造形物を造形する3次元プリンタ(3Dプリンタ)である。読取装置103は、3次元の造形物を読取って3Dモデルデータを生成する3次元スキャナ(3Dスキャナ)である。
【0013】
クライアントPC104にはコンピュータであり、パーソナルコンピュータ、タブレットコンピュータ、スマートフォンなどの種別が存在する。データベース105は、造形装置102で造形するための3次元のモデルデータを格納し、その管理を行う外部システムを構成するコンピュータである。
【0014】
造形装置102、読取装置103、クライアントPC104およびデータベース105は、ネットワーク101を介して相互に情報の送受信が可能である。ネットワーク101は、無線LANなどの無線ネットワークでも構わない。また、情報の送信・受信が可能であれば、ネットワーク101はインターネットなどのパブリックネットワークでも構わない。
【0015】
図2は、造形装置102、読取装置103、クライアントPC104、データベース105の情報処理機能のハードウェアモジュール構成を例示する図である。ここでは、情報処理機能のみを図示しており、実際には造形装置102、読取装置103、クライアントPC104、データベース105には他のハードウェアも備えられている。
【0016】
ユーザインタフェース201は、ディスプレイ、キーボード、マウス、タッチパネル、ボタンなどによる、情報や信号の入出力を行う。これらのハードウェアを備えないコンピュータは、リモートデスクトップやリモートシェルなどにより、他のコンピュータから接続・操作することも可能である。
ネットワークインタフェース202は、LANなどのネットワークに接続して、他のコンピュータやネットワーク機器との通信を行う。
【0017】
CPU203は、ROM204、RAM205、二次記憶装置206から読み込んだプログラムを実行する。ROM204は、組込済みプログラムおよびデータ等を記録する。RAM205は、一時メモリ領域である。二次記憶装置206は、HDDやフラッシュメモリに代表されるような二次記憶装置である。
上記201~206に示した各部は、入出力インタフェース207を介して接続されている。
【0018】
なお、本実施例に記載のソフトウェアに基づく構成は、ROM204に記録されているプログラムをRAM205に読み込み、CPU203が実行することにより実現される。
【0019】
図3は、造形装置102のソフトウェア構成と一部ハードウェア構成を例示する図である。
図3において、311は、造形装置102のハードウェア部である。なお、造形装置102を構成するハードウェアは造形方式によって異なる。例えば、FDM(Fused Deposition Modeling/熱溶解積層方式)の場合、造形装置102は、ハードウェアとして、プリントヘッド、ステージ・プリントヘッドをx,y,z軸方向に駆動するモータ、プリントヘッドのノズルを過熱するヒーター、冷却のためのファンなどを有する。また、造形装置102は、ハードウェアとして、USBメモリなどの外部メモリを使用するための外部メモリインタフェースを有する。
【0020】
312は、造形装置102に組み込まれた組み込みコンピュータである。組み込みコンピュータは、汎用のコンピュータに比べ、必要な機能に特化し、不必要な機能・性能・部品を削って、安価なコストで製造される。造形装置102に要求される機能・性能によっては、組み込みコンピュータ312は、汎用のコンピュータでも構わない。組み込みコンピュータ312は、例えば
図2に示したようなハードウェア構成を有する。
【0021】
313は、組み込みコンピュータ312上で実行される造形装置制御アプリケーション(3Dプリンタ制御アプリケーション)である。造形装置制御アプリケーション313は、ユーザインタフェース(UI)314、データ送受信部315、ハードウェア制御部316、データ保持部317を備える。すなわち、UI314、データ送受信部315、ハードウェア制御部316、データ保持部317は、造形装置102の組み込みコンピュータ312内のCPU203がROM204に格納される造形装置制御アプリケーション313を実行することにより実現される(機能する)。
【0022】
UI314は、文字のみを数行表示するLCDとハードウェア操作ボタンの組み合わせで構成される廉価なものや、タッチパネル付きLCDなどがある。ユーザは、UI314の表示内容によって、造形装置の状態を確認し、UI314を操作することによって、所望の処理を造形装置に命令する。
【0023】
データ送受信部315は、外部のクライアントPC104から、命令やデータの送受信を受け付ける。
ハードウェア制御部316は、UI314、データ送受信部315を介して受信した命令や、造形装置制御アプリケーション313自体が発行した命令に従い、ハードウェア311の各部を動作させ、造形物の出力や出力の前処理・後処理などを実行する。
【0024】
データ保持部317は、組み込みコンピュータ312上の二次記憶装置に様々なデータを保持する。データ保持部317が保持する情報は、その造形装置を一意に示す造形装置ID、3Dモデルデータの造形可否のチェックを行う際にアクセスするデータベース105のアドレス情報などである。
【0025】
図4は、読取装置103のソフトウェア構成と一部ハードウェア構成を例示する図である。
図4において、411は、読取装置103のハードウェア部である。読取装置103はハードウェアとして、映像・画像を撮影する撮影部と、USBメモリなどの外部メモリを使用するための外部メモリインタフェースを有する。
【0026】
412は、読取装置103に組み込まれた組み込みコンピュータである。汎用のコンピュータに比べ、必要な機能に特化し、不必要な機能・性能・部品を削って、安価なコストで製造される。読取装置に要求される機能・性能によっては、組み込みコンピュータ412は汎用のコンピュータでも構わない。組み込みコンピュータ412は、例えば
図2に示したようなハードウェア構成を有する。
【0027】
413は、組み込みコンピュータ412上で実行される読取制御アプリケーションである。読取制御アプリケーション413は、ユーザインタフェース(UI)414、データ送受信部415、ハードウェア制御部416、データ保持部417を備える。すなわち、UI414、データ送受信部415、ハードウェア制御部416、データ保持部417は、読取装置103の組み込みコンピュータ412内のCPU203がROM204に格納される読取制御アプリケーション413を実行することにより実現される(機能する)。
【0028】
データ送受信部415は、外部のクライアントPC104から、命令やデータの送受信を受け付ける。ハードウェア制御部416は、UI414、データ送受信部415を介して受信した命令や、読取装置制御アプリケーション413自体が発行した命令に従い、ハードウェア411を動作させ、造形物の撮影を行う。撮影された撮影データは、読取制御アプリケーションによって3Dモデルデータに変換され、外部メモリインタフェース411を介して接続されるメモリ、もしくは、外部のクライアントPC104の二次記憶装置206に保存される。また、撮影データを3Dモデルデータに変換せずに外部のクライアントPC104に送信し、クライアントPC104上で3Dモデルデータに変換する構成でもよい。
【0029】
データ保持部417は、組み込みコンピュータ412上の二次記憶装置(例えば、読取装置103の二次記憶装置206)に様々なデータを保持する。該保持する情報は、その読取装置103を一意に示す読取装置IDなどである。
【0030】
図5は、データベース105のソフトウェア構成を例示する図である。
図5に示すように、データベース105はソフトウェアとして、データ送受信部501、ユーザ管理部502、モデルデータ管理部503を備える。すなわち、データ送受信部501、ユーザ管理部502、モデルデータ管理部503は、データベース105のCPU203が二次記憶装置205に格納されるプログラムを実行することにより実現される(機能する)。
【0031】
データ送受信部501は、造形装置102や読取装置103、クライアントPC104と各種情報を送受信する。
ユーザ管理部502は、データベース105の利用ユーザの情報を管理する。
【0032】
モデルデータ管理部503は、造形装置102で造形するためのモデルデータと、各モデルデータに付随する属性情報を管理する。また、モデルデータ管理部503は、造形装置102やクライアントPC104から受信した3Dモデルデータの造形許可情報とそれに対する許可情報を管理する。
【0033】
3Dモデルデータ504は、モデルデータ管理部503で管理される3Dモデルデータの実体データであり、モデルデータ管理部503の属性情報やユーザ管理部502でのユーザ情報に関連付けて管理される。例えば、3Dモデルデータ504は、データベース105の二次記憶装置205に記憶される。
【0034】
以下、ユーザ管理部502、モデルデータ管理部503で管理しているデータについて表を用いて説明する。
表1は、ユーザ管理部502で管理しているユーザ情報の一例を示す表である。
【0035】
【0036】
本実施例において、ユーザとは、造形装置102または読取装置103の所有者のことであり、造形装置102を操作して造形を実行、または読取装置103を操作して3Dモデルデータを生成する人物である。
表1において、「ユーザID」は、前記ユーザを一意に特定するための識別子である。「パスワード」は、該ユーザのみが知っている文字列である。
【0037】
「造形装置ID」は、造形装置102を一意に特定するIDである。「読取装置ID」は、読取装置103を一意に特定するIDである。すなわち、表1は、「ユーザID」が示すユーザが所有し、使用可能な造形装置102または読取装置103を示す。造形装置IDや読取装置IDの記述がない場合は、そのユーザがユーザ管理部502に登録していない、もしくは造形装置102や読取装置103を所有していないことを示す。
【0038】
表2は、モデルデータ管理部503で管理する3Dモデルデータの属性情報の一例を示す表である。
【0039】
【0040】
なお、表2に示す3Dモデルデータの属性情報は、それぞれの3Dモデルデータ内に属性情報として保持されていてもよい。また、属性情報には、3Dモデルデータの提供元を示すサービスプロバイダの情報をさらに含めてもよい。
【0041】
表2において、「モデルID」とは、3Dモデルデータを一意に特定するための識別子である。
「DBアドレス」は、「モデルID」が示す3Dモデルデータを管理するデータベース105を示したインターネット上のアドレスである。造形装置102やクライアントPC104はこのDBアドレスのデータベースに対して、3Dモデルデータの造形可否の問い合わせを行う。詳細な実施例は後述する。
【0042】
「読取フラグ」は、「モデルID」が示す3Dモデルデータが読取装置103によって生成されたものであるか(この場合「TRUE」)、否か(この場合「FALSE」)を示す識別子である。
【0043】
「中心位置」、「撮影距離」、「光源位置」、「正面位置」は、対応する3Dモデルデータの3次元の構造に係る特徴量を示すものであり、後述する近似データの確認で利用される。以下、詳細に説明する。
「中心位置」は、「モデルID」が示す3Dモデルデータの中心を示す座標位置である。
「撮影距離」は、造形物を読取装置103で読み取った際の、読取装置103と造形物の間の距離を示す。読取装置103の撮影部から造形物の中心位置との間の距離がこの値となる。
【0044】
「光源位置」は、造形物を読取装置103で読み取った際の読取装置103に対する光源を示す座標位置である。上述の「撮影距離」と「光源位置」の属性情報は、読取装置103によって生成された3Dモデルデータにおいて有効である。
【0045】
「正面位置」は、「モデルID」が示す3Dモデルデータの正面を示す座標値である。
図6は、3Dモデルデータの正面位置を説明する図である。
表2の「正面位置」は、例えば、
図6で示す3Dモデルデータの中心位置601と観測位置602とを結んだ直線と、3Dモデルデータや造形物の面との交点の座標位置(603)のことを示す。
【0046】
表3は、モデルデータ管理部503で管理している各3Dモデルデータとユーザ毎の造形許可情報の一例を示す表である。
【0047】
【0048】
表3において、「モデルID」は、表2で示したものと同様である。
「データ利用可否」は、「モデルID」が示す3Dモデルデータの造形がその3Dモデルデータの所有者から許可されているか否かを示す。「データ利用可否」が「可」の場合は、該3Dモデルデータの造形が可能である。
【0049】
「造形限度数」は、「モデルID」が示す3Dモデルデータの造形が可能な数をユーザ毎に保持した情報である。表3の例では、モデルID「M0001」の3Dモデルデータについては、ユーザID「U0001」のユーザは5回まで、ユーザID「U0002」のユーザは10回までの造形が可能であることを示す。造形が行わる度にこの値は変更され、保持される。なお、「造形限度数」を減らすのではなく、別途利用回数としてカウントした値を別値として保持してもよい。この場合においては、後述する3Dモデルデータの利用可否の確認時に、利用回数が造形限度数を超えていないかどうかを確認することになる。
【0050】
図7は、専用アプリケーションで生成した3Dモデルデータの一例を示す図である。
不図示の専用アプリケーションで生成されたデータパッケージ701は、3Dモデルデータ702と、該3Dモデルデータ702の属性情報703(表2に記載したような情報)とを含む。
【0051】
属性情報703には、モデルID704、DBアドレス705、読取フラグ706、中心位置707、撮影距離708、光源位置709、正面位置710の情報が含まれる。それぞれの情報は、3Dモデルデータ702を専用アプリケーション等で生成する際に決まり、属性情報703として保持される。なお、
図7に示す3Dモデルデータ702は、読取装置103で生成されたデータではないため、読取フラグ706は「FALSE」、撮影距離708と光源位置709は情報なし、として保持される。
【0052】
なお、
図7では、701のように、3Dモデルデータ702と属性情報703とをパッケージングしているが、3Dモデルデータのデータ構造を拡張し、属性情報を3Dモデルデータに内包させることで本発明を実現することも可能である。本実施例では、属性情報を内包する拡張された3Dモデルデータや、
図7に示すようなデータパッケージを総称して、(3Dモデル)管理データと呼ぶ。
【0053】
図8は、読取装置103で生成した3Dモデルデータの一例を示す図である。
読取装置103で生成されたデータパッケージ801は、3Dモデルデータ802と、該3Dモデルデータ802の属性情報803とを含む。なお、3Dモデルデータ802は、例えば、STL(Standard Triangulated Language)形式のデータであり、3次元のオブジェクトに対応する座標情報を含むモデルデータである。
【0054】
属性情報803には、モデルID804、DBアドレス805、読取フラグ806、中心位置807、撮影距離808、光源位置809、正面位置810の情報が含まれる。属性情報803のそれぞれの情報804~810は、3Dモデルデータ802を読取装置103で生成する際に決まり、属性情報803として保持される。また、属性情報803のそれぞれの情報は、表2で説明したものと同様であるため詳細な説明は省略する。
図8に示す3Dモデルデータ802は読取装置103で生成したデータであるため、読取フラグ806は「TRUE」、撮影距離808と光源位置809は読取装置103での撮影時の情報が属性情報803に保持される。
【0055】
なお、属性情報803に、読取装置の読取装置IDを示す識別情報(ベンダ名、モデル情報、シリアル番号など)を追加定義することも可能である。この機器IDの追加は、データの流通経路の追跡にも利用できるうえに、読取装置103の読み取り精度に依存する3Dモデルデータ802の精度を把握するための指標にもなり得る。さらに、属性情報803に、3Dモデルデータ802が利用された回数(造形回数)や造形限度数を追加定義することも可能である。この造形回数は、3Dモデルデータ802に基づく造形が行われるたびに更新されるものとする。
【0056】
また、3Dモデル管理データの属性情報803に、読取フラグ806や機器IDなどの情報を定義しておくことで、当該データがオリジナルのオブジェクトからの2次利用されたデータであるといった利用状況も把握できる。ここで、本発明では、属性情報803に含まれるDBアドレス805の情報を参照することにより、さらに詳細の利用状況が把握できることは言うまでもない。
【0057】
図9は、属性情報が不定な3Dモデルデータの一例を示す図である。
図9に示すデータパッケージ901は、3Dモデルデータ902と、該3Dモデルデータ902の属性情報903とを含む。ただし、属性情報903には何も情報は含まれない。3Dモデルデータ902を3Dモデルデータ作成用の専用アプリケーションや読取装置103を使わずに生成し、意図的に属性情報を付与しない場合に、
図9に示すような形式のデータパッケージとなる。
【0058】
図10は、読取装置103におけるデータパッケージの生成処理を例示するフローチャートである。このフローチャートの処理は、読取装置103の組み込みコンピュータ412内のCPU203がROM204に格納される読取制御アプリケーション413を実行することにより実現される。
【0059】
読取装置103のUI414、もしくはクライアントPC104からデータパッケージの生成処理の実行指示を受け取ると、読取装置103は、本フローチャートの処理を開始する。
まず、S1001において、読取装置103は、撮影部から読取対象の物体の読取を行う。
【0060】
次に、S1002において、読取装置103は、上記S1001de読み取った撮影データから3Dモデルデータを生成する。3Dモデルデータの生成は、読取装置103の組み込みコンピュータ412で行ってもよいし、上記S1001で読み取った撮影データをデータ送受信部415からクライアントPC104に送信し、クライアントPC104で3Dモデルデータを生成してもよい。
【0061】
次に、S1003において、読取装置103は、属性情報の設定を行う。属性情報とは、表2で示したように、モデルID、DBアドレス、読取フラグ、中心位置、撮影距離、光源位置、正面位置を含む情報である。読取装置103によりモデルデータの生成処理を行う場合、属性情報内の読取フラグは「TRUE」となる。また、属性情報内の中心位置、撮影距離、光源位置、正面位置は、撮影部から取得可能な情報、もしくはユーザによって手動で入力される値(読取装置103のUI414、もしくはクライアントPC104から手動で入力)が属性情報として設定される値となる。
【0062】
次に、S1004において、読取装置103は、上記S1002にて生成した3Dモデルデータと上記S1003にて生成した属性情報とを使用し、データパッケージの生成を行う。生成されたデータパッケージは、クライアントPC104に送信される、もしくは外部メモリインタフェースに接続された記録媒体に保存される。ここで生成されるデータパッケージの構成は、例えば
図8で示したようなものとなる。
【0063】
以上説明したフローチャートは、読取装置103における3Dモデルデータと属性情報を合わせたデータパッケージの生成についてのフローチャートである。このフローチャートにおける属性情報の設定は、読取装置103に限らず、クライアントPC104上で動作する読取アプリケーションやスキャンドライバで行ってもよい。
【0064】
図11は、造形装置102にてデータパッケージ(属性情報あり)を受信した際の造形処理を例示するフローチャートであり、例えばクライアントPC104から送信された
図8に示したデータパッケージ801を造形装置102が受信した際の造形処理を示す。このフローチャートの処理は、造形装置102の組み込みコンピュータ312内のCPU203がROM204に格納される造形装置制御アプリケーション313を実行することにより実現される。
【0065】
S1101において、造形装置102は、例えばクライアントPC104から送信されるデータパッケージ801を受信する。なお、造形装置102の外部インタフェースに接続される記録媒体からデータパッケージ801を入力する構成でもよい。また、造形装置102は、該受信したデータパッケージ801の3Dモデルデータ802、および属性情報803を取得する。さらに、造形装置102は、属性情報803の詳細情報として、モデルID804、DBアドレス805、読取フラグ806、中心位置807、撮影距離808、光源位置809、正面位置810を取得する。
【0066】
次に、S1102において、造形装置102は、上記S1101で取得した読取フラグ806を参照し、読取フラグ806が「TRUE」か否かを判定する。そして、読取フラグ806が「TRUE」でない(「FALSE」である)と判定した場合(S1102でNoの場合)、造形装置102は、S1103に処理を進める。
【0067】
S1103において、造形装置102は、上記S1101で取得したDBアドレス805の先に存在するデータベース105に対して、上記S1101で取得した3Dモデルデータ802の利用可否の確認を行う。
【0068】
ここで、利用可否の確認とは、まず造形装置102からデータベース105に対して、上記S1101で取得したモデルID804と造形処理を行うユーザのユーザID、パスワードを送信する。ユーザIDとパスワードは予め造形装置102の記憶領域に保持した値か、造形指示毎に該ユーザがクライアントPC104上で入力し造形指示と共に造形装置102に送信する値を用いるかUI314上で入力する。データベース105では、造形装置102から受信したモデルID804、ユーザIDとパスワードの情報を用いて、3Dモデルデータ802の造形利用の可否を判断する。まず、データベース105のユーザ管理部502が、受信したユーザIDとパスワードを用いて、該ユーザが登録済みユーザであるか、パスワードは正しいものであるかの確認を行う。該ユーザが未登録もしくはパスワードが異なっている場合、データベース105は、造形装置102に対して、3Dモデルデータ802の利用不可の情報を送信する。一方、ユーザが登録済みであり、パスワードが正しい場合、モデルデータ管理部503が3Dモデルデータ802の利用可否を判断し、データベース105が造形装置102に3Dモデルデータ利用可の情報を送信する。例えば、3Dモデルデータの利用可否が表3で示すテーブルで管理されているとする。造形装置102から送信されたモデルID804が「M0001」、ユーザIDが「U0002」であれば3Dモデルデータ802の造形は「可」と判断する。この場合、データベース105は、造形装置102に対して、3Dモデルデータ802の利用可の情報を送信する。
【0069】
次に、S1104において、造形装置102は、上記S1103で確認した3Dモデルデータ802の利用可否情報を参照し、3Dモデルデータ802が利用可か否かを判定する。そして、3Dモデルデータ802が「利用可」でないと判定した場合(S1104でNoの場合)、S1105に処理を進める。
【0070】
S1105において、造形装置102は、造形を中止する。このように、造形装置102は、属性情報803に含まれるDBアドレス805を用いてデータベース105にアクセスすることにより、3Dモデルデータ802の利用状況に基づく造形制限を行うことができる。
【0071】
次に、S1106において、造形装置102は、上記S1101で取得した属性情報のDBアドレス805を造形装置102のデータ保持部317を介して造形装置102の二次記憶装置206に保持する。造形装置102の二次記憶装置206に保持されたDBアドレス805は後述の
図12で示す実施例で使用される。
S1106の処理の後、造形装置102は、本フローチャートの処理を終了する。
【0072】
また、上記S1103において、造形装置102は、上記S1101で取得した3Dモデルデータ802を「利用可」と判定した場合(S1104でYesの場合)、S1107に処理を進める。
S1107において、造形装置102は、上記S1101で取得した3Dモデルデータ802の造形をハードウェア制御部316からハードウェア311に対して指示する。
上記S1107で指示した造形の完了後、S1108において、造形装置102は、上記S1101で取得した属性情報のDBアドレス805を造形装置102のデータ保持部317を介して造形装置102の二次記憶装置206に保持する。
【0073】
次に、S1109において、造形装置102は、造形を行った3Dモデルデータの造形限度数の変更を行う。詳細には、造形装置102は、データベース105に対して、造形完了を通知する情報と造形を行った3DモデルデータのモデルID804、造形処理を行ったユーザのユーザIDを送信する。データベース105では、受信したモデルID804、ユーザIDを用いて造形限度数の変更を行う。例えば、3Dモデルデータの利用可否が表3で示すテーブルで管理されているとする。造形装置102から送信されたモデルIDが「M0001」、ユーザIDが「U0002」であれば、造形限度数を「10」から「9」に変更する。
S1109の処理の後、造形装置102は、本フローチャートの処理を終了する。
【0074】
また、上記S1102において、読取フラグ806が「TRUE」であると判定した場合(S1102でYesの場合)、造形装置102は、S1110に処理を進める。
S1110において、造形装置102は、上記S1101で取得した3Dモデルデータ802の近似データの有無を確認する。近似データの有無のチェックとは、まず造形装置102からデータベース105に対して、前記S1101で取得した3Dモデルデータ802と属性情報803を送信する。データベース105では受信した3Dモデルデータ802と属性情報803を用いて、管理している3Dモデルデータの中に受信したモデルデータと似た3Dモデルデータが存在するかどうかを確認する。
【0075】
以下に、データベース105による上記確認処理の一例を記載する。
まず、データベース105は、3Dモデルデータ504の中から、属性情報の中心位置、正面位置が同一もしくはその座標位置の差の絶対値がある閾値以下である3Dモデルデータを中心位置と正面位置を検索条件として用いて検索する。この検索条件に合致する3Dモデルデータが存在しない場合には、データベース105は「近似データ無し」として確認処理を終了する。
【0076】
一方、上記検索条件に合致する3Dモデルデータが存在した場合には、データベース105は、中心位置と正面位置を合わせた状態で、3Dモデルデータ802と前記検索した3Dモデルデータの任意の座標位置の差の算出を行う。また、その算出の際には撮影距離も考慮し、3Dモデルデータ802のスケールを変更したうえで差の算出を行う。さらに、データベース105は、算出した座標位置の差を合計したものがある閾値以下の3Dモデルデータを近似データであると判断する。もしも近似データが複数見つかった場合には、データベース105は、その中でも一番差の合計が少ない3Dモデルデータを代表の近似データと判断する。
【0077】
一方、上記算出した座標位置の差がある閾値以下の3Dモデルデータが存在しなかった場合には、データベース105は、光源位置を考慮した以下の処理を行う。すなわち、データベース105は、読取の際に影により詳細な読取ができなかったと予測される部分の座標位置の差を「0」とした場合の差の合計も算出し、それがある閾値以下の3Dモデルデータを近似データであると判断する。該光源位置を考慮した処理でも閾値以下の3Dモデルデータが存在しない場合には、データベース105は「近似データ無し」として、その情報を造形装置102に送信する。一方、該光源位置を考慮した処理で近似データであると判断した3Dモデルデータが存在した場合には、データベース105は「近似データ有り」の情報と(代表の)近似データのモデルIDを造形装置102に送信する。これにより、造形装置102は近似データを取得可能となる。
【0078】
なお、上記説明した確認処理は、3Dモデルデータの立体座標位置の比較による近似データの有無を確認する処理の一例である。上記以外にも例えば2次元画像の比較によっての近似データの有無を確認してもよい。2次元画像の比較を行う場合においては、データベース105にある3Dモデルデータそれぞれに関して、予め決められた向きの2次元画像を保持しておく。また上記S1101で取得される3Dモデルデータに関しても、前記同じ向きの2次元画像を取得時に生成する。前記それぞれの2次元画像の比較をそれぞれの向きの2次元画像に対して行い、それら画像の差を算出することで、近似データの有無の確認を行うことが同様に可能である。近似データの有無の確認処理の内容に関しては、上記の処理はあくまで一例であり、3Dモデルデータの近似を確認できる処理方法であれば、どのような方法であってもよい。
【0079】
次に、S1111において、造形装置102は、上記S1110で確認した近似データの有無の情報を参照し、近似データが存在するか否かを判定する。そして、近似データが存在しないと判定した場合(S1111でNoの場合)、造形装置102は、S1105へ処理を進める。S1105以降の処理は前述したとおりである。
【0080】
一方、近似データが存在すると判定した場合(S1111でYesの場合)、造形装置102は、S1112に処理を進める。
【0081】
S1112において、造形装置102は、データベース105に対して、上記S1110で取得した近似データの利用可否の確認を行う。詳細には、造形装置102は、データベース105に対して前記取得した近似データのモデルIDと造形処理を行うユーザのユーザID、パスワードを送信する。ユーザIDとパスワードは予め造形装置102の記憶領域に保持した値か、造形指示毎に該ユーザがクライアントPC104上で入力し造形指示と共に造形装置102に送信する値やUI314上で入力された値を用いる。データベース105では、造形装置102から受信した近似データのモデルID、ユーザIDとパスワードの情報を用いて、近似データの造形利用の可否を判断する。まず、データベース105のユーザ管理部502は、受信したユーザIDとパスワードを用いて、該ユーザが登録済みユーザであるか、パスワードは正しいものであるかの確認を行う。該ユーザが未登録もしくはパスワードが異なっていた場合、データベース105は、造形装置102に近似データの利用不可の情報を送信する。一方、ユーザが登録済みであり、パスワードが正しい場合、モデルデータ管理部503が近似データ802の利用可否を判断し、データベース105が造形装置102に3Dモデルデータ利用可の情報を送信する。例えば、3Dモデルデータの利用可否が前記表3で示すテーブルで管理されているとする。造形装置102から送信された近似データのモデルIDが「M0001」、ユーザIDが「U0002」であれば、データベース105は、近似データの造形は「可」と判断する。この場合、データベース105は、造形装置102に近似データの利用可の情報を送信する。
【0082】
S1113において、造形装置102は、上記S1112で確認した近似データの利用可否情報を参照し、近似データが利用可か否かを判定する。そして、近似データが利用不可と判定した場合(S1113でNoの場合)、造形装置102は、S1105に処理を進める。S1105以降の処理は前述したとおりである。
【0083】
一方、近似データが利用可と判定した場合(S1113でYesの場合)、造形装置102は、S1114に処理を進める。
【0084】
S1114において、造形装置102は、上記S1101で取得した3Dモデルデータ802を近似データに置き換えて造形を行うか否かの確認画面(例えば
図13)を表示し、該確認画面からの指示に応じて、該3Dモデルデータ802を近似データに置き換えて造形を行うか否かを判断する。
【0085】
図13は、3Dモデルデータを近似データに置き換えて造形を行うか否かの確認画面を例示する図である。この確認画面は、3DデータパッケージをクライアントPC104から受信した場合には、クライアントPC104の操作部に、造形装置102の外部インタフェースに接続された記録媒体から入力した場合には、造形装置102のUI314に表示する。なお、前記確認画面がクライアントPC104に表示される場合には、クライアントPC104上でのユーザ選択の結果が造形装置102に対して送信される。
【0086】
そして、上記選択画面に対してユーザが「いいえ」ボタンの指示により、近似データに置き換えを行わないことを選択操作した場合には、造形装置102は、近似データに置き換えを行わないと判断し(S114でYesと判断し)、S115に処理を進める。
【0087】
S1115において、造形装置102は、上記S1101で取得した3Dモデルデータ802の造形をハードウェア制御部316からハードウェア311に対して指示する。
上記S1115で指示した造形の完了後、S1116において、造形装置102は、上記S1101で取得した属性情報のDBアドレス805を造形装置102のデータ保持部317を介して二次記憶装置に保持する。
【0088】
次に、S1117において、造形装置102は、造形を行った3Dモデルデータの造形限度数の変更を行う。実行する処理内容は上記S1109と同様である。
S1117の処理の後、造形装置102は、本フローチャートの処理を終了する。
【0089】
一方、上記S1114において、上記選択画面に対してユーザが「はい」ボタンの押下により、近似データに置き換えを行うことを選択操作した場合には、造形装置102は、近似データに置き換えを行うと判断し(S1114でYesと判断し)、S1118に処理を進める。
【0090】
S1118において、造形装置102は、近似データをデータベース105から取得する。取得する近似データは、前記S1110で取得したデータベース105が(代表の)近似データと判断したモデルIDに対応する3Dモデルデータである。
【0091】
次に、S1119において、造形装置102は、上記S1118で取得した3Dモデルデータの造形をハードウェア制御部316からハードウェア311に対して指示する。
上記S1119で指示した造形の完了後、S1120において、造形装置102は、上記S1101で取得した属性情報のDBアドレス805を造形装置102のデータ保持部317を介して二次記憶装置に保持する。
【0092】
次に、S1121において、造形装置102は、造形を行った3Dモデルデータの造形限度数の変更を行う。すなわち、造形装置102は、データベース105に対して、造形完了を通知する情報と造形を行った近似データのモデルID、造形処理を行ったユーザのユーザIDを送信する。データベース105では、受信したモデルID、ユーザIDを用いて造形限度数の変更を行う。例えば、3Dモデルデータの利用可否が表3で示すテーブルで管理されているとする。造形装置102から送信されたモデルIDが「M0001」、ユーザIDが「U0002」であれば、造形限度数を「10」から「9」に変更する。
S1121の処理の後、造形装置102は、本フローチャートの処理を終了する。
【0093】
以上示した
図11に示す処理を行うことにより、3Dモデルデータの属性情報に応じた造形処理が可能となり、その結果、著作権物や危険物の複製・造形を防ぐとともに、複製が許可されている造形物の複製を元の造形物と同じ精度での造形が可能となる。また、複製が許可されている造形物の複製データがどの程度利用されている(回数)のかの把握が可能となる。
【0094】
図12は、造形装置102におけるデータパッケージ(属性情報なし)を受信した際の造形処理を示すフローチャートであり、例えば、クライアントPC104から送信された前記
図9で示すデータパッケージ901を造形装置102が受信した際の造形処理を示す。このフローチャートの処理は、造形装置102の組み込みコンピュータ312内のCPU203がROM204に格納される造形装置制御アプリケーション313を実行することにより実現される。
【0095】
S1201において、造形装置102は、例えばクライアントPC104から送信されるデータパッケージ901を受信する。なお、造形装置102の外部インタフェースに接続される記録媒体からデータパッケージ901を入力する構成でもよい。データパッケージ901の属性情報903は、
図9に示すように詳細情報が存在せず、詳細情報は取得できない。
【0096】
次に、S1202において、造形装置102は、データ保持部317が保持しているDBアドレスの情報を取得する。これは、
図11で示すフローのS1106、S1108、S1114で保存されるDBアドレスのリストに対応する。
【0097】
次に、S1203において、造形装置102は、上記S1202で取得したDBアドレスの先に存在するデータベース105に対して、上記S1201で取得した3Dモデルデータ902の近似データの有無を確認する。近似データの有無のチェックは、
図11のS1109の処理と同様であり、
図11のS1109と同様の確認を行う。ただし、
図12で示すフローチャートにおいては、受信した3Dモデルデータ902の属性情報903の詳細情報が存在しないため、属性情報なしで近似データの有無チェックの確認が行われる。例えば、
図11のS1109の処理の例でいうと、中心位置と正面位置と撮影距離が分からず、これら情報を用いての位置合わせが不可能である。この場合においては、データベース105は、比較対象の一方の3Dモデルデータのx、y、z平面における角度と位置を一定の間隔で変更しながら、任意の座標位置の差の算出を行う。また、光源位置が分からず、撮影時の影を考慮した近似データの有無チェックは行わない。算出した座標位置の差を合計したものがある閾値以下の3Dモデルデータを近似データであると判断する。もしも近似データが複数見つかった場合は、その中でも一番差の合計が少ない3Dモデルデータを代表の近似データと判断する。また、上記算出した座標位置の差がある閾値以下の3Dモデルデータが存在しなかった場合は、データベース105は「近似データ無し」の情報を造形装置102に送信する。上述のように近似データであると判断した3Dモデルデータが存在する場合、データベース105は「近似データ有り」の情報と近似データのモデルIDを造形装置102に送信する。
【0098】
次に、S1204において、造形装置102は、上記S1203で確認した近似データの有無の情報を参照し、近似データが存在するか否かを判定する。そして、近似データが存在しないと判定した場合(S1204でNoの場合)、造形装置102は、S1205へ処理を進める。
S1205において、造形装置102は、造形処理を中止し、本フローチャートの処理を終了する。
【0099】
一方、近似データが存在すると判定した場合(S1204でYesの場合)、造形装置102は、S1206に処理を進める。
S1206において、造形装置102は、上記S1202で取得したDBアドレスの先に存在するデータベース105に対して、上記S1204で確認した近似データの利用可否の確認を行う。利用可否のチェックとは、まず造形装置102からデータベース105に対して、上記S1204で取得した近似データのモデルIDと造形処理を行うユーザのユーザIDとパスワードを送信する。ユーザIDとパスワードは予め造形装置102の記憶領域に保持された値か、造形指示毎に該ユーザがクライアントPC104上で入力し造形指示と共に造形装置に送信された値やUI314上で入力された値を用いる。データベース105では、受信したモデルIDとユーザIDとパスワードの情報を用いて、3Dモデルデータの造形利用の可否を判断する。まず、データベース105のユーザ管理部502は、受信したユーザIDとパスワードを用いて、該ユーザが登録済みユーザであるか、パスワードは正しいものであるかの確認を行う。該ユーザが未登録もしくはパスワードが異なっていた場合、データベース105は、造形装置102に3Dモデルデータ利用不可の情報を送信する。一方、ユーザが登録済みであり、パスワードが正しい場合、モデルデータ管理部503が3Dモデルデータの利用可否を判断し、データベース105が造形装置102に3Dモデルデータ利用可の情報を送信する。
【0100】
S1207において、造形装置102は、上記S1206で確認した近似データの利用可否情報を参照し、近似データが利用可か否かを判定する。そして、近似データが利用不可と判定した場合(S1207でNoの場合)、造形装置102は、S1205に処理を進める。S1205以降の処理は前述したとおりである。
【0101】
一方、近似データが利用可と判定した場合(S1207でYesの場合)、造形装置102は、S1208に処理を進める。
【0102】
S1208において、造形装置102は、近似データの3Dモデルデータをデータベース105から取得する。造形装置102は、上記S1204で取得したモデルIDから該3Dモデルデータを特定し、その3Dモデルデータの取得を行う。
【0103】
S1209において、造形装置102は、上記S1209で取得した3Dモデルデータの造形をハードウェア制御部316からハードウェア311に対して指示する。
上記S1209で指示した造形の完了後、S1210において、造形装置102は、造形を行った3Dモデルデータの造形限度数の変更を行う。すなわち、造形装置102は、データベース105に対して、造形完了を通知する情報と造形を行った近似データのモデルID、造形処理を行ったユーザのユーザIDを送信する。データベース105では、受信したモデルID、ユーザIDを用いて造形限度数の変更を行う。例えば、3Dモデルデータの利用可否が前記表3で示すテーブルで管理されているとする。造形装置102から送信されたモデルIDが「M0001」、ユーザIDが「U0002」であれば、造形限度数を「10」から「9」に変更する。
S1210の処理の後、造形装置102は、本フローチャートの処理を終了する。
【0104】
以上示した
図12に示す処理を行うことにより、3Dモデルデータの属性情報が無い場合においても、著作権物や危険物の複製・造形を防ぐとともに、複製が許可されている造形物の複製を元の造形物と同じ精度での造形が可能である。また、複製が許可されている造形物の複製データがどの程度利用されている(回数)のかの把握が可能である。
【実施例2】
【0105】
上記実施例1では、読取装置103は、読み取った撮影データから3Dモデルデータを生成して管理データを生成する場合に、
図10のS1003で属性情報を新たに設定していた。
【0106】
しかし、読取装置103からDBアドレスにアクセスして、読み取った撮影データや、ユーザにより設定された値と近似する(オリジナル)データが存在するか問合せる仕組みを追加してもよい。そして、目的のデータが存在した場合、該データに対応する属性情報が有る場合には、その属性情報の少なくとも一部(モデルID、正面位置など)を
図10のS1003の処理で設定するように構成してもよい。
【0107】
なお、上記説明では、中心位置、撮影距離、光源位置、正面位置の情報を、対応する3Dモデルデータの3次元の構造に係る特徴量とする場合について説明したが、該特徴量はこれらの情報に限定されるものではなく、他の情報を上記特徴量として用いてもよい。
【0108】
以上示したように、上記各実施例によれば、3次元状の造形物を造形するためのデータについて、データ自体の識別や利用回数や生成経路などの利用状況の識別などが可能となるような管理をすることができる。この結果、著作権物や危険物の複製・造形を防ぐとともに、複製が許可されている造形物の複製を元の造形物と同じ精度で造形が可能である。また、複製が許可されている造形物の複製データがどの程度利用されている(回数)のかの把握が可能である。
【0109】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されていてもよい。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
【0110】
(その他の実施例)
本発明は、上述の実施例の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施例の有機的な組合せを含む)が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。