本実施形態では、複数のパーツが組み付けられた状態の組付画像におけるパーツの配置位置を示す情報が含まれるカタログ構成表を作成し、このパーツの配置位置を示す情報を参照して、特定のパーツが強調されたハイライト画像上の指定領域を切り出して拡大表示させる。
(第一の実施形態)
以下に図面を参照して本発明の第一の実施形態について説明する。図1は、画像処理装置のハードウェア構成の一例を説明する図である。
本実施形態におけるパーツカタログとは、三次元形状モデル画像を構成する複数のパーツの画像や属性等の情報をパーツ毎に閲覧するために作成されるデータを意味する。
本実施形態の画像処理装置100は、入力装置11、出力装置12、ドライブ装置13、補助記憶装置14、メモリ装置15、演算処理装置16、インターフェイス装置17がバスBを介して接続されている。
入力装置11は、キーボードやマウスなどで構成され、各種信号を入力するために用いられる。出力装置12は、ディスプレイ装置などで構成され、各種ウインドウやデータ等を表示するために用いられる。ドライブ装置13は、記録媒体18に記録されたプログラム等をドライブする。補助記憶装置14は、インストールされた画像処理プログラムを格納すると共に、必要なファイル、データ等を格納する。
メモリ装置15は、画像処理装置100の起動時に補助記憶装置14から画像処理プログラムを読み出して格納する。演算処理装置16は、画像処理装置100の全体の処理を制御する。また演算処理装置16は、メモリ装置15に格納された本発明の画像処理プログラムに従って、後述するような各種処理を実現する。インターフェイス装置17は、モデム、LANカードなどで構成されており、画像処理装置100をネットワークに接続する為に用いられる。
本発明の画像処理プログラムは、画像処理装置100を制御する各種プログラムの少なくとも一部である。画像処理プログラムは例えば記録媒体18の配布やネットワークからのダウンロードなどによって提供される。画像処理プログラムを記録した記録媒体18は、CD−ROM、フレキシブルディスク、光磁気ディスク等の様に情報を光学的、電気的或いは磁気的に記録する記録媒体、ROM(Read Only Memory)、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。
また、画像処理プログラムを記録した記録媒体18がドライブ装置13にセットされると、画像処理プログラムは記録媒体18からドライブ装置13を介して補助記憶装置14にインストールされる。ネットワークからダウンロードされた画像処理プログラムは、インターフェイス装置17を介して補助記憶装置14にインストールされる。
次に、本実施形態の画像処理装置100の概要について説明する。図2は、画像処理装置の概略構成を説明する図である。
本実施形態の画像処理装置100の有する機能は、大きく2つに分けることができる。1つ目の機能は、三次元形状モデル画像を構成する複数のパーツの画像であるパーツ画像やパーツが組み付けられた状態の画像である組付画像等を作成する。そしてこれらのパーツ画像と組付画像とを製品カタログ等に利用されるカタログデータとしてデータベースに蓄積する機能である。2つ目の機能は、データベースに蓄積されたカタログデータから所望のパーツ画像や組付画像等を閲覧するための機能である。画像処理装置100において、カタログデータの作成及び蓄積と、カタログデータの閲覧とは、それぞれが独立した処理として実行される。
本実施形態の画像処理装置100は、形状モデル作成部110、パーツ構成表作成部120、製品データ管理部130、カタログデータ記憶部140、カタログ作成部200、カタロ閲覧部500を有する。
本実施形態の画像処理装置100では、形状モデル作成部110により作成された形状モデルと、パーツ構成表作成部120により作成されたパーツ構成表とが、製品データ管理部130により管理される。製品データ管理部130により管理されている形状モデルとパーツ構成表とは、カタログ作成部200へ供給される。カタログ作成部200は、この形状モデルとパーツ構成表とを用いてカタログデータを作成し、カタログデータ記憶部140へ蓄積する。カタログデータ記憶部140へ蓄積されたカタログデータは、カタログ閲覧部500により閲覧される。
以下に本実施形態の画像処理装置100におけるカタログデータの作成の詳細について説明する。
形状モデル作成部110は、CAD等で作成された三次元形状モデルを作成しデータベースに保持している。三次元形状モデルは、製品を構成する個々のパーツ単位の形状を保持したパーツ形状と、それらパーツ形状が組み付いた状態の情報を持つアセンブリ形状とがある。
パーツ構成表作成部120は、アセンブリ形状を構成する個々のパーツリストを記述したパーツ構成表を作成しデータベースに保持している。パーツ構成表には、パーツを識別するためのパーツID、パーツの名称、パーツ発注時の番号等が保持されている。カタログデータ作成部200は、形状モデルとパーツ構成表とに基づきカタログデータを作成する。
カタログデータとは、パーツ形状の単体を表示したパーツ画像、アセンブリ形状を表示した組付画像、それぞれの画像を参照するための情報やパーツ構成表の内容などを含んだパーツ構成表を含むカタログ構成表である。カタログデータの詳細は後述する。
本実施形態の製品データ管理部130、カタログデータ記憶部140は、例えば補助記憶装置14内に設けられても良い。
また本実施形態の補助記憶装置14には、視線方向テーブルが格納されている。視線方向テーブルは、予め画像処理装置100に設定された値である。視線方向テーブルの詳細は後述する。
カタログ閲覧部500は、カタログデータ記憶部140に記憶されているカタログデータの内容を出力装置12に表示させる。本実施形態のカタログ閲覧部500は、パーツ名称でのカタログデータ記憶部140内の検索の他、組付画像上の領域指定によりパーツを検索することが可能である。
以下に図3を参照して本実施形態のカタログ作成部200の機能構成を説明する。図3は、カタログ作成部の機能
構成を説明する図である。
本実施形態のカタログ作成部200は、パーツ画像作成処理部220、組付画像作成処理部230、配置領域計算処理部240、ハイライト画像作成処理部250を有する。後述する上記各部の処理は、演算処理装置16が補助記憶装置14に格納されたパーツカタログ作成プログラムを読み出してメモリ装置15に展開することで実行される。
本実施形態の製品データ管理部130は、パーツ画像の形状を示すパーツ形状を生成してパーツ画像作成処理部220へ渡す。また製品データ管理部130は、パーツの属性を示すパーツ構成表もパーツ画像作成処理部230へ渡す。
パーツ画像作成処理部220は、入力装置11から後述する視線方向を取得し、製品データ管理部130からパーツ形状を取得する。そしてパーツ画像作成処理部220は、パーツ画像を作成し、カタログデータ記憶部140へ格納する。本実施形態のパーツ画像作成処理部220は、カタログデータ記憶部140へ格納されるパーツ画像が正方形の画像となるように画像を作成する。パーツ画像作成処理部220の画像の作成の詳細は後述する。
またパーツ画像作成処理部220は、作成したパーツ画像のファイル名を含むカタログ構成表を作成し、組付画像作成処理部230へ渡す。
組付画像作成処理部230は、視線方向を取得し、製品データ管理部130からアセンブリ形状を取得する。そして組付画像作成処理部230は、組付画像を作成してカタログデータ記憶部140へ格納する。本実施形態の組付画像作成処理部230は、カタログデータ記憶部140へ格納される組付画像が正方形の画像となるように画像を作成する。組付画像作成処理部230の画像の作成の詳細は後述する。
また組付画像作成処理部230は、組付画像のファイル名をカタログ構成表に追加する。さらに組付画像作成処理部230は、組付領域情報を算出し、配置領域計算処理部240へ渡す。組付領域情報とは、組付画像の表示領域を示す情報である。
配置領域計算処理部240は、視線方向、アセンブリ形状、カタログ構成表、組付領域情報に基づき、組付画像の表示領域における各パーツ画像の配置領域を算出する。本実施形態の配置領域とは、組付画像作成処理部230により作成された組付画像におけるパーツ画像の位置を示す。配置領域計算処理部240は、算出した配置領域をカタログ構成表に追加する。
ハイライト画像作成処理部250は、視線方向と、アセンブリ形状と、カタログ構成表とを取得する。そしてハイライト画像作成処理部250は、アセンブリ形状において特定のパーツが強調されたハイライト画像を作成し、カタログデータ記憶部140へ格納する。またハイライト画像作成処理部250は、作成したハイライト画像のファイルをカタログ構成表へ追加する。
本実施形態の画像処理装置100では、上記構成により、パーツ画像と、パーツが組み付けられた全体画像である組付画像と、アセンブリ形状において特定のパーツが強調されたハイライト画像とをカタログデータとして作成し、カタログデータ記憶部140へ蓄積する。また本実施形態の画像処理装置100は、パーツ画像のファイル名と、組付画像のファイル名とが含まれるカタログ構成表がカタログデータ記憶部140へ格納される。
ここで、図4に示す組付画像のカタログデータを作成する場合の処理について図5を参照して説明する。
図4は、組付画像の一例を示す図である。図4に示す組付画像40は、ナットNとボルトBとを組み付けた画像である。
図5は、カタログ作成部によるカタログデータの作成処理を説明する図である。
製品データ管理部130は、ナットNの3D_CADデータをナットNの形状を示すパーツ形状1として、パーツ画像作成処理部210へ渡す。また製品データ管理部130は、ボルトBの3D_CADデータをボルトBの形状を示すパーツ形状2としてパーツ画像作成処理部220へ渡す。また製品データ管理部130は、パーツ構成表70をパーツ構成表作成部120から取得し、パーツ画像作成処理部220へ渡す。
また製品データ管理部130は、組付画像40の3D_CADデータをアセンブリ形状3として、組付画像作成処理部230、配置領域計算処理部240、ハイライト画像作成処理部250へ渡す。以下に本実施形態のパーツ形状1、2、パーツ構成表70、アセンブリ形状3について説明する。
本実施形態のパーツ形状1、2は、ポリゴンデータと色情報からなるナットN、ボルトBの三次元形状モデルである。
ポリゴンデータは、パーツの表面形状を、三角形ポリゴンの集合で表現したデータである。一つの三角形ポリゴンは、三次元座標系において三角形を定義する3点の座標値と、それらの各点における法線ベクトルの値とをデータとして有する。
色情報は、赤(R)、緑(G)、青(B)の色成分と、透過率(α)によって指定されるデータであり、それぞれが0以上1以下の値で示される。透過率は、0で完全な透明、1で不透明を表す。0と1の間の値は半透明を示し、その値が0に近いほど透明度は高くなる。図6に、パーツ形状の一例を示す。
画像処理装置100により、ポリゴンデータと色情報とにグラフィクス処理を施すことで、パーツ形状を描いたパーツ画像をディスプレイ等の出力装置12に表示させたり、ファイルに出力することができる。
本実施形態のパーツ構成表70は、組付画像40を構成する全てのパーツを特定するパーツIDと、パーツ名と、パーツ番号とが対応付けられた表である。図7にパーツ構成表の一例を示す。本実施形態のパーツ構成表70では、組付画像40を構成する全てのパーツであるナットNとボルトBのパーツIDと、パーツ名と、パーツ番号が含まれる。
本実施形態のアセンブリ形状3は、組付画像40を構成する全てのパーツであるナットNとボルトBのパーツ形状1、2のファイル名と、ナットNとボルトBを三次元空間上のどの位置に配置するかを示す配置行列をデータとして持つ。配置行列は、三次元空間上の座標値を平行移動及び回転移動する4×3のアフィン変換行列のデータである。図8に、アセンブリ形状の一例を示す。
次に、本実施形態のカタログ作成部200の有する各処理部について説明する。始めに、パーツ画像作成処理部220について説明する。パーツ画像作成処理部220は、パーツ形状1、2に基づきナットNの画像であるパーツ画像41と、ボルトBの画像であるパーツ画像42とを作成し、カタログデータ記憶部140へ出力する。以下に図9を参照して本実施形態のパーツ画像作成処理部220の処理について説明する。
図9は、パーツ画像作成処理部の処理を説明するフローチャートである。
本実施形態のパーツ画像作成処理部220は、入力装置11により視線方向を取得する(ステップS901)。視線方向の詳細は後述する。続いてパーツ画像作成処理部220は、製品データ管理部130から組付画像を構成する全てのパーツであるナットNとボルトBのパーツ形状を取得する(ステップS902)。ここではパーツ画像作成処理部220は、パーツ形状1、2を取得する。続いてパーツ画像作成処理部220は、組付画像を構成する全てのパーツ画像のパーツIDが含まれるパーツ構成表を取得する(ステップS903)。ここではパーツ画像作成処理部210は、ナットNとボルトBのパーツIDが含まれるパーツ構成表70を取得する。
続いてパーツ画像作成処理部220は、パーツ構成表70に含まれるパーツID、パーツ名と、パーツ番号が格納されたカタログ構成表を作成する(ステップS904)。
続くステップS905からステップS909までの処理は、パーツ画像の作成処理であり、組付画像を構成する全てのパーツについて実行される。
パーツ画像作成処理部220は、パーツ形状に含まれるポリゴンデータの座標値を視線方向に正射影する(ステップS905)。すなわちパーツ形状に含まれるポリゴンデータを視線方向からから見た場合の二次元画像を作成する。視線方向は、予め複数の方向が視線方向テーブルとして画像処理装置100に設定されている。
以下に図10を参照して視線方向について説明する。本実施形態の視線方向は、視線方向テーブルとして画像処理装置100に設定されている。図10は、視線方向テーブルの一例を示す図である。
図10では、視線方向を示す極座標の例を視線方向テーブルとして示している。視線方向(1)の極座標(α,β)は、後述する図11に示す視線方向(1)の角度(45°)に対応する座標である。本実施形態の画像処理装置100において、視線方向テーブルT10から視線方向(1)〜(3)の何れか一方向が選択されると、選択された視線方向と対応した極座標(α,β)を用いて処理が実行される。
本実施形態では、視線方向テーブルT10において設定された視線方向(1)、(2)、(3)を視線方向IDとしても良い。したがって本実施形態のパーツ画像作成処理部220は、例えば組付画像やハイライト画像を作成する場合には、それぞれの画像に対して上記3つの視線方向からみた場合の3パターンの画像を作成する。尚本実施形態では視線方向は3方向としたが、これに限定されない。視線方向の数は任意であって良い。
本実施形態の画像処理装置100では、視線方向は、三次元空間上の極座標α及びβによって与えられる。図11は、三次元形状モデルの座標系と視線方向とを説明する図である。本実施形態の画像処理装置100において、視線方向テーブルT10から視線方向(1)〜(3)の何れか一方向が選択されると、選択された視線方向と対応した極座標(α,β)を用いて処理が実行される。
本実施形態では、パーツ形状に含まれるポリゴンデータを表す三次元空間上の各点の座標値を、以下に定義する視線方向座標系における座標値へ変換することで、ポリゴンデータを視線方向に正射影する。
視線方向座標系は、i軸,j軸,k軸からなるijk直交座標系である。視線方向座標系は、視線方向として与えられた極座標α及びβ(図11参照)を用いて、元の三次元形状モデルの座標系をz軸周りにα+90°回転させた後x軸まわりにβ回転させ、このときのx軸,y軸,z軸をそれぞれi軸,j軸,k軸に対応させたものである。図12は、視線方向座標系を説明する図である。
視線方向座標系において、k軸は視線方向と重なり、i−j平面は視野平面となる。尚元の三次元形状モデルの座標系とは、xyz直交座標系である。
ポリゴンデータの各座標値(x,y,z)を、視線方向として与えられた座標系α及びβによって、ポリゴンデータの座標系を回転した視線方向の座標系の座標値(i,j,k)に変換する場合、以下の式(1)により変換を行う。
パーツ形状が視線方向座標系に変換されると、この結果により得られる(i,j)座標値が射影平面(i−j平面)における座標値となる。そこでパーツ画像作成処理部220は、(i,j)座標値がi−j平面で占める領域を抽出する(ステップS906)。続いてパーツ画像作成処理部220は、矩形S1を正方形とする処理を行う(ステップS907)。
ここで図14を参照してステップS906とステップS907の詳細について説明する。図14は、ステップS906とステップS907の処理を説明するための図である。
図14では、後述するステップS908においてカタログデータ記憶部140へ出力される二次元のパーツ画像を例として使用した。
図14(A)はナットNに対応するパーツ画像41を示し、図14(B)はボルトBに対応するパーツ画像42を示す。
図14(A)に示すよう、二次元のパーツ画像41が射影平面であるi−j平面上で占める領域は、i軸に平行な2本の線分と、j軸と平行な2本の線分とで囲まれた矩形S1として求められる。矩形S1は、各座標値のi成分の最大値と最小値及びj成分の最大値と最小値を抽出することで得られる。矩形S1では、i成分、j成分の最小値は点P1の座標(imin,jmin)であり、i成分、j成分の最大値は点P2の座標(imax,jmax)となる。
パーツ画像作成処理部220は、矩形S1と中心が一致し、矩形S1を含む最小の正方形の領域S10を求め、パーツ画像41の表示領域とする。本実施形態の領域S10は、一辺が矩形領域S1の長辺と同じ長さであり、且つ中心が矩形S1の中心と一致する領域である。
本実施形態のパーツ画像作成処理部220は、パーツ画像41を解像度480×480pixelの画像としてカタログデータ記憶部140へ出力する(ステップS908)。尚解像度は任意の値であって良い。
パーツ画像作成処理部220は、図14(B)に示すように、パーツ画像42についても同様に、i成分、j成分の最小値を示す点P3と、i成分、j成分の最大値を示す点P4から矩形S2を求め、矩形S2を正方形の領域S20とする。そして領域S20をパーツ画像42の表示領域とし、パーツ画像42を解像度480×480pixelの画像としてカタログデータ記憶部140へ出力する。
そしてパーツ画像作成処理部220は、カタログ構成表80に、カタログデータ記憶部140へ格納したパーツ画像の画像ファイル名を追加し(ステップS909)、組付画像作成処理部230へ渡す。
次に、組付画像作成処理部230について説明する。本実施形態の組付画像作成処理部230は、アセンブリ形状3からナットNとボルトBとが組み付けられた組付画像40を作成し、カタログデータ記憶部140へ出力する。以下に図15を参照して本実施形態の組付画像作成処理部230の処理を説明する。図15は、組付画像作成処理部の処理を説明するフローチャートである。
本実施形態の組付画像作成処理部230は、入力装置11により視線方向を取得する(ステップS1501)。続いて組付画像作成処理部230は、製品データ管理部130からアセンブリ形状を取得する(ステップS1502)。ここでは組付画像作成処理部230は、アセンブリ形状3を取得する。続いて組付画像作成処理部230は、カタログ構成表80を取得する(ステップS1503)。
続いて組付画像作成処理部230は、ステップS1504〜ステップS1506の処理で組付画像を作成する。
組付画像作成処理部230は、製品データ管理部130においてファイル名で示されたパーツ形状1、2からポリゴンデータを取得し、各三角形ポリゴンの座標値と法線ベクトルの値をそれぞれ配置行列で変換する(ステップS1504)。ステップS1504の処理により、組付画像として組み付いた位置のパーツ形状のポリゴンデータが得られる。ここで、変換前の座標値を(x0,y0,z0)、変換後の座標値を(xt,yt,zt)、配置行列をMとすると、変換は以下の式(2)で表される。
但し、a
ij(i∈{1,2,3},j∈{1,2,3})には回転成分となる数値a
4j(j∈{1,2,3})には平行移動成分となる数値が入る。
本実施形態の組付画像作成処理部230は、変換後のパーツ形状1、2(ポリゴンデータと色情報)に対して、ステップS905と同様の処理を施して二次元の組付画像40とし、組付画像40が射影平面上で占める領域を抽出する(ステップS1506)。
ステップS1506〜ステップS1508の処理は、図9のステップS906〜ステップS908と同様の処理であるから説明を省略する。尚ここでカタログデータ記憶部140に格納されるのは、解像度680×680pixelの組付画像40である。尚組付画像40の解像度は、これに限定されるものではなく、任意の値であっても良い。また本実施形態の組付画像作成処理部230は、各視線方向毎の組付画像を作成する。
続いて組付画像作成処理部230は、組付画像の表示領域を示す情報である組付画像表示領域を抽出し、配置領域計算処理部240へ渡す(ステップS1509)。
以下に図16を参照して組付画像40の表示領域について説明する。図16は、組付画像表示領域を説明する図である。
本実施形態の組付画像作成処理部230は、ステップS1506で矩形S3を抽出し、ステップS1507で矩形S3を正方形の領域30とした。本実施形態の組付画像作成処理部230は、領域S30におけるi成分、j成分の最小値を示す点P6の座標値(Aimin,Ajmin)と、i成分、j成分の最大値を示す点P7の座標値(Aimax,Ajmax)と、を組付画像表示領域4として配置領域計算処理部240へ渡す。
続いて組付画像作成処理部230は、カタログ構成表80に、組付画像40の画像ファイル名を追加し、カタログ構成表80を配置領域計算処理部240へ渡す(ステップS1510)。
次に、配置領域計算処理部240について説明する。
本実施形態の配置領域計算処理部240は、組付画像表示領域におけるパーツの配置領域を計算する。以下に図17を参照して配置領域計算処理部240の処理を説明する。図17は、配置領域計算処理部の処理を説明するフローチャートである。
図17のステップS1701からステップS1703までの処理は、図15のステップS1501からステップS1503までの処理と同様であるから説明を省略する。
配置領域計算処理部240は、組付画像作成処理部230から組付画像表示領域4を取得する(ステップS1704)。
続いて配置領域計算処理部240は、アセンブリ形状3に含まれる各パーツ画像のポリゴンデータの座標値を配置行例により変換する(ステップS1705)。ステップS1705の処理は、図15のステップS1504の処理と同様である。
各パーツ画像のポリゴンデータの座標値が変換されると、配置領域計算処理部240は、変換後の各パーツのポリゴンデータに対してステップS1706、ステップS1707を行う。ステップS1706、ステップS1707の処理は、図9のステップS905、906と同様であるから説明を省略する。
続いて配置領域計算処理部240は、組付画像表示領域におけるパーツの配置領域を求める(ステップS1708)。
以下に図16を参照してステップS1708の処理について説明する。図16の例では、組付画像40の組付画像表示領域におけるナットNの配置領域について説明する。
図16において、組付画像表示領域は、組付画像40として出力された領域S30の点P6の座標値(Aimin,Ajmin)と、点P7の座標値(Aimax,Ajmax)である。また組付画像40においてナットNがi−j平面で占める領域は、矩形S40である。矩形S40は、ステップS1707で、i成分、j成分の最小値を示す点P10の座標値と、i成分、j成分の最大値を示す点P20の座標値として求められている。ここでは点P10の座標を(Pimin,Pjmin)とし、点P20の座標を(Pimax,Pjmax)とした。
本実施形態の配置領域計算処理部240は、組付画像表示領域4(領域S30)における矩形S40の位置を示す配置領域を以下の式(3)により求める。尚配置領域は、座標値(Pumin,Pvin)、(Pumax,Pvmax)で表される。
尚本実施形態では、配置領域の座標値(Pu
min,Pv
in)、(Pu
max,Pv
max)を求める際に、各成分の値を組付画像表示領域の一辺の長さで割り算することにより正規化している。本実施形態では、この正規化処理と、ナットNの表示領域を正方形とする処理とが合わさることで、後述する各種処理を実現できる。
配置領域が求められると、配置領域計算処理部240は、カタログ構成表80の該当するパーツID及び視線方向の欄に求めた配置領域を示す座標値を追加する(ステップS1709)。
次に本実施形態のハイライト画像作成処理部250について説明する。本実施形態のハイライト画像作成処理部250は、組付画像の特定のパーツを強調した画像を作成する。図18は、ハイライト画像作成処理部の処理を説明するフローチャートである。
ステップS1801とステップS1803の処理は、図17のステップS1703とステップS1702と同様であるから説明を省略する。
ハイライト画像作成処理部250は、パーツ毎にパーツの色情報を変更し、組付画像において該当するパーツが強調されたハイライト画像を作成する(ステップS1804)。例えば組付画像40の場合、ナットNが強調されたハイライト画像と、ボルトBが強調されたハイライト画像とを作成する。
図19は、ハイライト画像の一例を示す図である。図19に示すハイライト画像40Aは、ナットNを強調した画像である。ハイライト画像作成処理部250は、各視線方向毎の組付画像についてハイライト画像を作成する。
尚ハイライト画像は、強調したパーツ以外の画像を半透明にする等して、外観では見えないパーツであっても組み付け位置がわかるようにすることが好ましい。
続いてハイライト画像作成処理部250は、ハイライト画像をカタログデータ記憶部140へ格納する(ステップS1805)。
続いてハイライト画像作成処理部250は、カタログ構成表80にハイライト画像の画像ファイル名を追加し(ステップS1806)、カタログ構成表80をカタログデータ記憶部140へ格納する(ステップS1807)。
以上でカタログ作成部200の処理が終了する。カタログ作成部200の処理が終了したとき、カタログデータ記憶部140には、各視線方向毎のパーツ画像、各視線方向毎の組付画像、視線方向毎にそれぞれパーツが強調されたハイライト画像、パーツ画像作成処理部220、組付画像作成処理部230、配置領域計算処理部240、ハイライト画像作成処理部250によりデータが追加されたカタログ構成表が格納される。
例えばカタログ作成部200が組付画像40に対して処理を行った場合、カタログデータ記憶部140には、パーツ画像41、42、組付画像40、ハイライト画像40A、ボルトBを強調したハイライト画像がそれぞれ視線方向毎に格納される。また各パーツ画像の画像ファイル名、組付画像40の画像ファイル名、各ハイライト画像の画像ファイル名、配置領域が格納されたカタログ構成表80が格納される。
以下に図20を参照して本実施形態のカタログ構成表80について説明する。図20は、第一の実施形態のカタログ構成表の一例を示す図である。
カタログ構成表80では、組付画像40の視線方向毎の画像ファイル名81、パーツ構成表70に含まれるパーツ画像41、42に関する情報82、パーツ画像41、42の画像ファイル名83が含まれる。尚本実施形態では、視線方向テーブルT10において視線方向毎に視線方向IDが設定されており、カタログ構成表80では視線方向を視線方向IDで示しても良い。
またカタログ構成表80には、ナットNを強調したハイライト画像の視線方向毎の画像ファイル名84、ボルトBを強調したハイライト画像の視線方向毎の画像ファイル名85、組付画像表示領域におけるナットNの視線方向毎の配置領域86、組付画像表示領域におけるボルトBの視線方向毎の配置領域87が含まれる。
本実施形態の画像処理装置100では、この配置領域86、87を含むカタログ構成表80を有することで、一枚のハイライト画像から強調されたパーツを含んだ領域を切り出して拡大表示することができる。したがってズームパラメータ毎にハイライト画像を作成する必要がなく、データ容量を削減できる。
以下に、画像処理装置100におけるカタログデータの閲覧について説明する。本実施形態の画像処理装置100のカタログ閲覧部500は、カタログデータ記憶部140に格納されたカタログデータを閲覧することができる。
本実施形態のカタログ閲覧部500は、カタログデータを閲覧するためのインターフェイスとなる閲覧画面を出力装置12へ表示させる。
以下に図21を参照して本実施形態のカタログ閲覧部500について説明する。図21は、第一の実施形態のカタログ閲覧部の機能構成を説明する図である。
本実施形態のカタログ閲覧部500は、領域検索処理部510、パーツ画像表示処理部520、組付画像表示処理部530を有する。本実施形態のカタログ閲覧部500の有する各処理部は、入力装置11の操作により発生する各種イベントの通知を受けて、操作に応じた処理を実行する。各処理部の処理の詳細は後述する。
次に、図22を参照して入力装置11の操作により発生する各種イベントについて説明する。図22は、閲覧画面の一例を示す第一の図である。図22に示す閲覧画面50は、カタログ閲覧部500により出力装置12に表示される。
閲覧画面50には、組付画像表示領域51、パーツ一覧表示領域52、パーツ画像表示領域53、スクロールバー54、パーツ属性表示領域55、視線方向切替ボタン56、拡大率切替ボタン57、リセットボタン58が表示されている。
組付画像表示領域51は、正方形の表示領域であり、組付画像及びハイライト画像が表示される。組付画像及びハイライト画像は、組付画像表示領域51一杯に表示される。
パーツ一覧表示領域52は、パーツ画像表示領域53の一覧が表示される領域であり、パーツ画像表示処理部520により動的に複数生成されるパーツ画像表示領域53が縦に並んだリストとして表示される。
パーツ画像表示領域53は、個々のパーツ画像が表示される領域であり、パーツ画像表示処理部520により動的に複数作成される。本実施形態のパーツ画像表示領域53は、各領域毎にパーツ画像IDを有し、他のパーツ画像表示領域53と区別することができる。パーツ画像IDは、パーツ画像表示処理部520により与えられる。
スクロールバー54は、パーツ一覧表示領域52をスクロールする。パーツ属性表示領域55は、パーツ画像の属性を表示する。パーツ画像の属性とは、パーツ番号とパーツ名等である。
視線方向切替ボタン56は、視線方向を切り替える。視線方向切替ボタン56が押下されると、視線方向が切り替えられる。拡大率切替ボタン57は、拡大率を切り替える。リセットボタン58は、組付画像表示領域51の表示をカタログ閲覧部500の処理の起動直後の状態にリセットするためのボタンである。
本実施形態において、入力装置11の操作により発生するイベントは、領域指定イベント、パーツ選択イベント、視線方向切替イベント、拡大率切替イベント、リセットイベントを含む。
領域指定イベントは、入力装置11により組付画像表示領域51内で所定領域(以下、ドラッグ領域)が指定された際に発生し、領域検索処理部510に通知される。
パーツ選択イベントは、入力装置11によりパーツ一覧表示領域52からパーツ画像表示領域53が選択された際に、選択されたパーツ画像表示領域53のパーツ画像IDと共にパーツ画像表示処理部520に通知される。
視線方向切替イベントは、入力装置11により視線方向切替ボタン56が操作された際に組付画像表示処理部530へ通知される。拡大率切替イベントは、入力装置11により拡大率切替ボタン57が操作されたときに組付画像表示処理部530へ通知される。リセットイベントは、入力装置11によりリセットボタン58が操作された際に組付画像表示処理部530へ通知される。
次に、各種イベントの通知を受けた際の各処理部の処理について説明する。始めに領域検索処理部510が領域指定イベントを通知された場合の処理について説明する。
図23は、第一の実施形態のカタログ閲覧部において領域指定イベントが発生した場合の処理を説明するフローチャートである。
本実施形態のカタログ閲覧部500は、領域指定イベントを通知されると、組付画像上でドラッグ領域内に位置しているパーツのパーツ画像をパーツ一覧表示領域52へ表示させる。尚組付画像上でドラッグ領域内に位置しているパーツとは、ドラッグ領域内に配置領域が含まれているパーツのことである。
領域検索処理部510は、入力装置11においてドラッグ領域が指定されると、領域指定イベントの通知を受ける(ステップS2301)。尚領域指定イベントには、ドラッグ領域を示す座標値が含まれる。
続いて領域検索処理部510は、組付画像表示処理部530へアクセスし、組付画像表示領域51に表示された画像の強調パーツIDが0か否かを判断する(ステップS2302)。強調パーツIDとは、組付画像表示領域51に表示された画像がハイライト画像か又は組付画像かを示す値である。
本実施形態では、強調パーツIDが0の場合は、組付画像表示領域51に表示された画像に強調されたパーツが存在しない組付画像であることを示す。また本実施形態では、強調パーツIDが1以上である場合には、組付画像表示領域51に表示された画像に強調されたパーツが存在するハイライト画像であることを示す。
ステップS2302において、強調パーツIDが0以上の場合、領域検索処理部510はカタログデータ記憶部140からカタログ構成表を取得する(ステップS2303)。
次に領域検索処理部510は、組付画像表示処理部530から組付画像表示領域51に表示された画像の視線方向IDを取得する(ステップS2304)。続いて組付画像表示処理部530は、カタログ構成表を参照し、視線方向IDにおいて配置領域がドラッグ領域内となるパーツのパーツIDを取得する(ステップS2304)。
本実施形態の領域検索処理部510は、ドラッグ領域のi成分、j成分それぞれの最小値を示す座標値(Rimin,Rjmin)とし、最大値を示す座標値(Rimax,Rjmax)としたとき、(Rimin,Rjmin)のそれぞれの値が、配置領域のi成分、j成分それぞれの最小値を示す座標値(Pimin,Pjmin)のそれぞれの値より小さく、且つ、(Rimax,Rjmax)のそれぞれの値が配置領域のi成分、j成分それぞれの最大値を示す座標値(Pimax,Pjmax)のそれぞれの値より大きい場合に、配置領域はドラッグ領域内にあると判断する。
続いて領域検索処理部510は、取得したパーツIDをリストとしたパーツIDリストを作成し、記憶する(ステップS2306)。次に領域検索処理部510は、パーツ一覧表示領域52の表示の切替を指示するパーツ一覧切替イベントをパーツIDリストと共にパーツ画像作成処理部520へ通知する(ステップS2307)。
次に、パーツ画像表示処理部520の処理について説明する。パーツ画像表示処理部520は、領域検索処理部510からパーツ一覧切替イベントの通知を受けた場合と、入力装置11からパーツ選択イベントの通知を受けた場合と、2種類の処理を行う。
図24は、パーツ画像表示処理部がパーツ一覧切替イベントの通知を受けた場合のフローチャートである。
パーツ画像表示処理部520は、パーツ一覧切替イベントの通知とパーツIDリストとを受けとると、パーツ一覧表示領域52に表示されるパーツ画像の一覧を切り替える。
パーツ画像表示処理部520は、パーツ一覧切替イベントの通知を受けると、カタログデータ記憶部140からカタログ構成表を取得する(ステップS2401)。次にパーツ画像表示処理部520は、パーツIDリストの各パーツIDに対応したパーツ画像をカタログデータ記憶部140から取得する(ステップS2402)。
続いてパーツ画像表示処理部520は、パーツIDリストのパーツ画像の数だけパーツ画像表示領域53を作成する(ステップS2403)。続いてパーツ画像表示処理部5202は、パーツIDリストに格納されたパーツIDに対応したパーツ画像をパーツ画像表示領域53に表示させる(ステップS2404)。
次にパーツ画像表示処理部520は、パーツIDリストに格納された順に、1から始まる整数値をパーツ画像IDとして各パーツ画像表示領域53へ設定する(ステップS2405)。続いてパーツ画像表示処理部520は、パーツIDリストを表示パーツIDリストとして記憶する(ステップS2406)。尚本実施形態の表示パーツIDリストとは、パーツ一覧切替イベントと共に受け取ったパーツIDリストをパーツ画像表示処理部520内に保存したものである。
以下に図22を参照して領域検索処理部510とパーツ画像表示処理部520の処理について具体的に説明する。
図22の閲覧画面50の組付画像表示領域51において、ドラッグ領域60が指定されると、領域検索処理部510は、視線方向IDにおいて配置領域がドラッグ領域内となるパーツのパーツIDをリストしたパーツIDリストを作成する。尚図22のパーツ一覧表示領域52の表示は、パーツ一覧切替イベントの通知を受けてパーツ一覧表示領域52の表示を切り替えた後の状態を示している。パーツ一覧表示領域52には、ドラッグ領域60に含まれるパーツの数である2つのパーツ画像表示領域53A、53Bが作成されており、各パーツ画像表示領域にパーツ画像41、42が表示されている。
図25は、パーツIDリストの一例を示す図である。ドラッグ領域60内に存在するパーツは、ナットNとボルトBである。よって図25に示すパーツIDリスト90には、ナットNのパーツIDとボルトBのパーツIDとが含まれる。
続いてパーツ画像表示処理部520が入力装置100からパーツ選択イベントを通知された場合を説明する。
本実施形態のパーツ画像表示処理部520は、パーツ選択イベントの通知を受けると、パーツ選択イベントと共に通知されたパーツ画像IDに対応するパーツIDをパーツIDリストから取得する。尚パーツ画像IDは、パーツIDがパーツIDリストに格納された順にパーツ画像表示領域53に設定されており、パーツ画像表示処理部520は、パーツ画像IDと対応するパーツIDを取得する。
続いてパーツ画像表示処理部520は、取得したパーツIDと、組付画像切替イベントとを組付画像表示処理部530へ通知する。組付画像表示処理部530は、この通知を受けて、パーツIDに対応したハイライト画像を組付画像表示領域51に表示させる。
次に、組付画像表示処理部530の処理について説明する。組付画像表示処理部530は、視線方向切替イベント、拡大率切替イベント、リセットイベント、組付画像切替イベントの通知を受け、各イベントに対応した処理を行う。
始めに組付画像表示処理部530がリセットイベントの通知を受けた場合について説明する。尚本実施形態の組付画像表示処理部530は、カタログ閲覧部500による処理の起動時にも、リセットイベントの通知を受けた場合と同様の処理を行う。
組付画像表示処理部530は、リセットイベントの通知を受けると、視線方向IDを1、拡大率の値を0.0、強調パーツIDの値を0に設定する。次に組付画像表示処理部530はカタログ構成表を取得する。続いて組付画像表示処理部530は、カタログ構成表において視線方向=1に設定された組付画像を組付画像表示領域51へ表示させる。
次に、図26を参照して組付画像表示処理部530が拡大率切替イベントの通知を受けた場合の処理を説明する。図26は、組付画像表示処理部が拡大率切替の通知を受けた場合の処理を説明するフローチャートである。
本実施形態では、入力装置11により拡大率切替ボタン57が操作されると組付画像表示処理部530に拡大率切替イベントが通知されて、拡大率の切替処理が開始される。本実施形態の組付画像表示処理部530は、ハイライト画像の中で強調されているパーツを中心にハイライト画像を拡大表示する。
組付画像表示処理部530は、拡大率切替イベントを受けるとカタログデータ記憶部140からカタログ構成表を取得する(ステップS2601)。続いて組付画像表示処理部530は、現在の拡大率の値を増加させる(ステップS2602)。本実施形態の拡大率は、0.0から1.0までの範囲の値であり、予め画像処理装置100に複数設定されている。本実施形態では、拡大率が1.0に近づくほど、強調されているパーツ画像が大きく拡大表示される。拡大率の値は、0をより大きく1より小さい値であれば任意の値であって良いが、本実施形態では拡大率切替イベント通知前の拡大率の値に0.25を加えるものとした。
続いて組付画像表示処理部530は、強調パーツIDの値が0か否かを判断する(ステップS2603)。ステップS2603において強調パーツIDの値が0でない場合、組付画像表示領域51に表示された画像はハイライト画像であることがわかる。組付画像表示処理部530は、カタログ構成表において、視線方向IDの値が一致し、強調パーツIDの値とパーツIDの値とが一致するハイライト画像を取得する(ステップS2604)。
続いて組付画像表示処理部530は、取得したハイライト画像から、ステップS2602で増加された拡大率と強調されたパーツの配置領域に従い、ハイライト画像から正方形の画像を切り出す(ステップS2605)。画像の切り出しの詳細は後述する。そして組付画像表示処理部530は、切り出した画像を組付画像表示領域51へ表示させる(ステップS2606)。
ステップS2603において強調パーツIDが0であった場合、組付画像表示領域51に表示されている画像が、ハイライト画像ではなく組付画像だとわかる。組付画像表示処理部530は、カタログ構成表から視線方向IDが同じ値の組付画像を取得し(ステップS2607)、組付画像表示領域51へ表示させる(ステップS2608)。
以下に、ステップS2605における画像の切り出しについて説明する。
本実施形態の組付画像表示処理部530により切り出される画像は、ハイライト画像においてi方向に平行な二つの線分と、j方向に平行な二つの線分によって囲われる正方形の画像である。
組付画像表示処理部530は、拡大率をt、ハイライト画像に含まれるパーツの配置領域のi成分の最小値と最大値、j成分の最小値と最大値を、Pumin,Pumax,Pvmin,Pvmaxとしたとき、まず以下のように正方形の領域を求める。
組付画像表示処理部530は、座標値(Pumin,Pvmin)、(Pumax,Pvmax)で示される配置領域の示す矩形と中心が一致し、且つ配置領域を囲む最小の正方形の領域を求める。すなわち正方形の領域は、中心が配置領域と一致し、且つ一辺の長さが配置領域の長辺と同じ長さになるように決定される。ここで、この正方形の領域のi成分の最小値と最大値、j成分の最小値と最大値を、Pi1min,Pi1max,Pj1min,Pj1maxとした。すなわちこの正方形の領域は、座標値(Pi1min,Pj1min)、(Pi1max,Pj1max)で示される
尚本実施形態の組付画像表示処理部530は、ここで決定された正方形の領域が組付画像表示領域51からはみ出す場合には、正方形が組付画像表示領域51内に収まるように補正する。
この補正において、補正後の正方形の領域のi成分の最小値と最大値、j成分の最小値と最大値を、Pi2min,Pi2max,Pj2min,Pj2maxとした場合、補正後の切出画像領域のそれぞれの座標値は以下の式(4)により求められる。
続いて組付画像表示処理部530は、拡大率にしたがってハイライト画像から切り出す画像の領域(以下、切出画像領域)を決定する。本実施形態では、切出画像領域に表示される画像が組付画像表示領域51に表示される。組付画像表示処理部530は、切出画像領域のi成分の最大値と最小値、j成分の最大値と最小値を、Si
min,Si
max,Sj
max,Sj
minとして、以下の式(5)により切出画像領域の座標値を求める。
組付画像表示処理部530は、このようにして求められた画像を組付画像表示領域51へ表示させる。
図27は、閲覧画面の一例を示す図である。図27では、図22の組付画像表示領域51に表示された画像が、ナットNが強調されたハイライト画像であった場合の拡大表示の例を示している。図27では、ハイライト画像におけるナットNの配置領域と、拡大率とに基づき、決定された切出画像領域の画像が、組付画像表示領域51に表示されていることがわかる。
以上に説明したように、本実施形態では、カタログ作成部200においてカタログデータを作成する際に、正方形の組付画像表示領域に合わせて組付画像及びハイライト画像を正方形の画像とする。
また本実施形態では、正方形の組付画像及びハイライト画像におけるパーツの配置領域を求める際に、組付画像表示領域の一辺の長さで割り算をすることで、組付画像表示領域の一辺の長さを1とした正規化座標系として求める。
本実施形態では、この構成により、ハイライト画像を組付画像表示領域に表示する際に、画像のアスペクト比を考慮せずにパーツの配置領域を包含する正方形の領域を算出することができる。
また本実施形態では、ハイライト画像から所定範囲の領域を切り出して、組付画像表示領域51一杯に表示させることで、所定範囲の領域を拡大表示することができる。したがって本実施形態によれば、従来のように複数の拡大率に対応した複数のハイライト画像を作成する必要がなく、カタログデータ記憶部140に格納するデータ量を削減することができる。
また本実施形態では、パーツ画像を作成する際も、パーツ画像を正方形の画像としているため、閲覧画面においてパーツ画像表示領域53を正方形の領域とすることができる。
(第二の実施形態)
以下に図面を参照して本発明の第二の実施形態について説明する。本発明の第二の実施形態は、カタログ閲覧部にクリック検索処理部を有する点のみ第一の実施形態と相違する。したがって以下の本発明の第二の実施形態の説明では、第一の実施形態との相違点についてのみ説明し、第一の実施形態と同様の機能構成を有するものには第一の実施形態の説明で用いた符号と同様の符号を付与し、その説明を省略する。
図28は、第二の実施形態のカタログ閲覧部の機能構成を説明する図である。本実施形態のカタログ閲覧部500Aは、領域検索処理部510、パーツ画像表示処理部520、組付画像表示処理部530に加え、クリック検索処理部540を有する。
本実施形態のクリック検索処理部540は、入力装置11により組付画像表示領域51に表示された組付画像上にポインタが置かれると、ポインタが示す位置で組み付いたパーツ画像を検索し、パーツIDリストへ登録する。
図29は、クリック検索処理部の処理を説明するフローチャートである。本実施形態のクリック検索処理部540は、組付画像表示処理部530から強調パーツIDを取得し、強調パーツIDか0か否かを判断する(ステップS2901)。ステップS2901において強調パーツIDが0である場合、すなわち組付画像表示領域51に表示された画像が組付画像であった場合、ポインタの示すクリック位置を取得する(ステップS2902)。ここでクリック位置とは、i成分の値とj成分の値で示される座標値である。
続いてクリック検索処理部540は、組付画像表示領域51に表示された組付画像を構成するパーツにおいて、配置領域を取得していないパーツがあるか否かを判断する(ステップS2903)。ステップS2903において、配置領域を取得していないパーツが存在する場合、クリック検索処理部540は、カタログ構成表から該当するパーツのパーツIDに対応した配置領域を取得する(ステップS2904)。
クリック検索処理部540は、配置領域を取得すると、配置領域内にクリック位置が含まれるか否かを判断する(ステップS2905)。ステップS2905において配置領域内にクリック位置が含まれる場合、クリック検索処理部540は、この配置領域と対応したパーツIDをパーツIDリストへ追加し(ステップS2906)、ステップS2903へ戻る。ステップS2905において配置領域内にクリック位置が含まれない場合、クリック検索処理部540はステップS2903へ戻る。
ステップS2903において配置領域を取得していないパーツが存在しない場合、すなわち組付画像を構成する全てのパーツの配置領域を取得した場合、クリック検索処理部540は、パーツ一覧切替イベントをパーツ画像表示処理部520へ通知する(ステップS2907)。またクリック検索処理部540は、ステップS2901において強調パーツIDが0でない場合、処理を終了する。
本実施形態のパーツ画像表示処理部520は、パーツ一覧切替イベントの通知を受けて、パーツIDリストに含まれるパーツ画像をパーツ一覧表示領域52へ表示させる。
図30は、閲覧画面の一例を示す第三の図である。図30では、組付画像表示領域51には、組付画像40Bが表示されており、ポインタ59が示されている。
図30において、配置領域にポインタ59が示すクリック位置が含まれるパーツは、ナットNとボルトBと筐体Cである。したがってクリック検索処理部540は、この3つのパーツのパーツIDをパーツIDリストへ追加する。そしてパーツ一覧切替イベントをパーツ画像表示処理部520へ通知する。
パーツ画像表示処理部520は、パーツ一覧表示領域52へ、3つのパーツ画像を表示すべく、パーツ画像表示領域53A、53B、53Cを作成する。そしてナットNに対応するパーツ画像41、ボルトBに対応するパーツ画像42、筐体Cに対応するパーツ画像43をそれぞれのパーツ画像表示領域へ表示させる。
以上のように本実施形態によれば、ポインタにより示される位置において組み付けられたパーツ画像の一覧を表示させることができる。
(第三の実施形態)
以下に図面を参照して本発明の第三の実施形態について説明する。本発明の第三の実施形態は、カタログ作成部とカタログ閲覧部とでシステムを構成した点が第一の実施形態と相違する。したがって以下の本発明の第三の実施形態では、第一の実施形態との相違点についてのみ説明し、第一の実施形態と同様の機能構成を有するものには第一の実施形態の説明で用いた符号と同様の符号を付与し、その説明を省略する。
図31は、第三の実施形態の画像処理システムを説明する図である。本実施形態の画像処理システム600は、画像処理装置100Aと情報処理装置700とがネットワーク800を介して接続されている。
本実施形態の画像処理装置100Aは、形状モデル作成部110、パーツ構成表作成部120、製品データ管理部130、カタログ作成部200を有する。また本実施形態の情報処理装置700は、演算処理装置と記憶装置とを有する一般的なコンピュータであり、カタログ閲覧部500を有する。
本実施形態の画像処理装置100Aは、情報処理装置700からパーツカタログの閲覧要求を受けると、カタログデータ記憶部140から該当するカタログデータを情報処理装置700へ提供する。
情報処理装置700では、例えば入力装置等により、組付画像の閲覧要求がなされた場合、カタログ閲覧部500により画像処理装置100Aへその要求を送信する。情報処理装置700において、カタログ閲覧部500は、画像処理装置100Aから提供されるカタログデータを表示装置等に閲覧可能に表示させる。
また情報処理装置700において、表示装置に表示された組付画像中の特定の領域が指定された場合、カタログ閲覧部500は指定された領域内に存在するパーツをカタログデータ記憶部140から検索し、表示させる。
尚本実施形態の画像処理システム600では、カタログデータ記憶部140は画像処理装置100A側が有する構成としたが、これに限定されない。例えばカタログデータ記憶部140は、情報処理装置700側に設けられていても良い。この場合画像処理装置100Aは、情報処理装置700からカタログデータの作成指示をうけてカタログデータを作成し、情報処理装置700へ提供する。情報処理装置700は、提供されたカタログデータをカタログデータ記憶部140に格納しても良い。
さらにカタログデータ記憶部140は、例えば画像処理装置100A及び情報処理装置700とは別の外部装置が有していても良い。この場合画像処理装置100Aは、カタログデータを作成して外部装置に設けられたカタログデータ記憶部140へ格納する。情報処理装置700は、閲覧指示を受けて外部装置へアクセスし、カタログデータを取得する。またカタログデータ記憶部140は、例えば可搬型のコンピュータに読み取り可能な記憶媒体に設けられていても良い。
以上に説明した本実施形態の画像処理システム600では、第一及び第二の実施形態と同様の効果を奏することができる。
以上、各実施形態に基づき本発明の説明を行ってきたが、上記実施形態に示した要件に本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することができ、その応用形態に応じて適切に定めることができる。