画像処理装置
【課題】球面や自由曲面、凹凸のあるような様々な3次元形状の立体物の表面に、隙間無く、かつ、画像の欠落部分が無く、また曲面形状による画像の歪みが少なく画像が見やすくなるように、印刷物を貼付けできるようにする。
【解決手段】印刷する画像データや被印刷物の被印刷面の3次元モデルを作成、選択し、これに応じて複数の多角形の組み合わせによる仮想の多面体立体モデルを生成し、立体表面に貼付けした場合の画像の歪みを補正するための処理を行い、歪み補正された3次元曲面表面上の画像データを、仮想の多面体立体の表面に貼付け、これを複数の多角形領域に分割、分解して、2次元平面に展開された表面形状の2次元展開図を生成し、これに基づき2次元展開図形式の印刷用画像データを生成し、これを紙やフィルムなどの印刷媒体に印刷するようにする。
【解決手段】印刷する画像データや被印刷物の被印刷面の3次元モデルを作成、選択し、これに応じて複数の多角形の組み合わせによる仮想の多面体立体モデルを生成し、立体表面に貼付けした場合の画像の歪みを補正するための処理を行い、歪み補正された3次元曲面表面上の画像データを、仮想の多面体立体の表面に貼付け、これを複数の多角形領域に分割、分解して、2次元平面に展開された表面形状の2次元展開図を生成し、これに基づき2次元展開図形式の印刷用画像データを生成し、これを紙やフィルムなどの印刷媒体に印刷するようにする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、たとえばデジタルカメラで撮影された写真画像などを、球面や自由曲面、凹凸のあるような様々な3次元形状による立体物の表面などに、隙間無く、かつ、画像の欠落部分が無く、また曲面形状による画像の歪みが少なく画像が見やすくなるように、印刷物を貼付けることができるようにする画像処理装置に関する。
【背景技術】
【0002】
最近は、個人向けPCの発展や、家庭用のカラープリンタやデジタルカメラなどの普及により、一般家庭でも、各種文書やカラー写真画像などを手軽に印刷できるようになってきている。
【0003】
さらに、印刷紙の代りに、専用転写シートに印刷した文字や絵柄、画像を、Tシャツなどなだらかな表面にアイロンで加熱転写したり、あるいは、接着シール付印刷紙に印刷した絵柄や画像を、円筒形のコップや缶など単純でなだらかな曲面に沿って貼付したりすることもできるようになっている。
【0004】
しかし、球体や自由な曲面、複雑な形状、凹凸の大きい物などの表面には、家庭用プリンタで、文字や絵柄、画像などを簡易に印刷したりすることは難しいという問題があった。
【0005】
一方、産業用途では、プラスチック技術が登場した頃、成型品の平面やなだらかな曲面には印刷できても、プラスチック成型の特長である自由で複雑な曲面には、多彩な色や細かな模様の印刷は難しかった。
【0006】
そこで、図柄などを薄膜フィルムにグラビア印刷などで印刷し、水槽に浮かべ、水溶性インクを再ウェット化し、液中で被印刷体面に転写し、フィルムを除去・洗浄し、乾燥させるという、液面を用いるフィルム転写式の曲面印刷法が提案され、以来、プラスチック成型品の曲面や凹凸面にも多彩な色彩や模様、図柄などが印刷できるようになり、自動車の内装品をはじめ、様々な分野で利用されている。
【0007】
その後、熱硬化性インクなどによってオフセット印刷やインクジェット印刷された文字や絵柄を、被印刷体面と反対形状の軟質パッドや弾性体に写し取り、それを被印刷体の曲面上に転写し、加熱して固めるという、乾式のパッド転写式曲面印刷法も提案され、液体槽や洗浄工程無しでも、携帯電話の筐体面など自由な曲面に、細かな模様や絵柄が印刷されている。
【0008】
しかし、上述した従来方法では、産業用途や印刷業者による量産品の曲面印刷などには適しても、前者では、液体槽など大掛かりな設備や専用の印刷機、あるいは、後者でも特殊なインクと被印刷面と反対形状の弾性体などを用いる制約があり、一般の家庭や個人では利用しにくいものであった。
【0009】
ところで、近年、デジタルカメラで撮影された写真画像などを、曲面に印刷したり、シールで貼り付けたりすることが行われるようになってきている(例えば、特許文献1参照)。しかし、このような場合において、曲面の形状によって、画像や絵柄が、膨らんだり凹んだり、歪んでしまったりし、特に人物の顔画像などでは、元の画像と違って見えてしまう難点もある。
【0010】
従来から、このような画像の歪みに関して、たとえば化粧品容器などのなだらかな曲面に、商品名の文字などを印刷する際に、予め格子模様を容器につけて撮影し、撮影画像のエンベロープ(輪郭線)を抽出し、それを反転した歪み補正用エンベロープにより原稿を変形してから印刷することで、原稿の歪みを防止する方法が提案されている(例えば、特許文献2参照)。
【0011】
【特許文献1】特開平09−193528号公報
【特許文献2】特開平09−48170号公報
【発明の開示】
【発明が解決しようとする課題】
【0012】
しかし、上述したエンベロープ(輪郭)の反転処理では、単純な曲面で、かつ、文字等の外形や輪郭の歪みの補正に限られ、自由曲面上での写真画像等の歪みはきれいに補正できなかった。
【0013】
さらに、地球儀などの球面では、地図をできるだけ隙間なく、また、地形の歪みが少なく貼り付けるために、「舟形・多円錐投影法」という地図投影法で作図し、経度30度ずつに分割した12片の舟形地図葉を印刷し、それを切り抜いて貼り付けることにより、略球状の地球儀が製作されている。
【0014】
また、サッカーボールでは、5角形と6角形に裁断された皮革片を、正5角形×12個、正6角形×20個を組み合わせて張り合わせ、球に類似する多面体(「切頂(または切頭)二十面体」という半正多面体)などを形成して、球状のボールが製作されている。
【0015】
そして、このように、2次元平面に印刷した図形を切り抜き、3次元曲面に隙間無く貼り付けたり、各種の多面体で球体を模擬したりする方法は、一般ユーザーでも丁寧に作図工作すれば利用可能であるが、面倒で時間もかかるという問題がある。
【0016】
また、任意の自由曲面や複雑な形状に適用したり、写真画像を地球儀のように形の歪みなく貼り付けたりするのは、難しいという問題もあった。
【0017】
本発明はこのような事情に鑑みてなされたものであり、デジタルカメラ等の撮像手段で撮影された写真画像などの被写体を、被印刷物である球面や自由曲面、凹凸のあるような様々な立体物による被印刷物の表面などに、隙間無く、かつ、画像の欠落部分が無く、また曲面形状による画像の歪みが少なく画像が見やすくなるように、貼り付けることができる印刷物を得る画像処理装置を得ることを目的とする。
【課題を解決するための手段】
【0018】
このような目的に応えるために本発明(請求項1記載の発明)に係る画像処理装置は、球面、曲面、または凹凸をもつ被印刷物の被印刷面に、隙間無く、かつ、画像の欠落部分が無く、また曲面形状による画像の歪みが少なく画像が見やすくなるように、貼り付けることができる印刷物を得る画像処理装置であって、写真画像などの画像データを入力して、または被印刷面の立体表面形状の3次元モデルを作成または選択する手段と、立体表面形状の3次元モデルに応じて、被印刷面の立体表面(またはその一部)を隙間無く埋めるように近似して、複数の多角形(3角形〜6角形などのポリゴン)の組み合わせによる仮想の多面体立体モデルを生成する手段と、立体表面に印刷や貼付けした場合の画像の歪みを補正するために、入力された画像データを、画像処理により、所定の視点位置から仮想の多面体立体モデルの表面に所定の投影変換する処理を行い、それを所定の視点から観察(透視変換)した場合に画像の歪みが少なくなるように、3次元曲面(実際には多面体立体)表面上の画像データに変換する手段と、歪み補正された3次元曲面表面上の画像データを、仮想の多面体立体の表面に貼付け、貼付けた画像を、(多面体立体の表面を構成する)複数の多角形領域に分割する手段と、仮想の多面体立体の表面を構成する各面(多角形)の連結の一部を分解して、2次元平面に展開された表面形状の2次元展開図を生成する手段と、分割された各多角形領域の画像を、2次元展開図中の対応する各多角形の位置と向きにしたがって、それぞれ配置した2次元展開図形式の印刷用画像データを生成する手段と、上記展開図形式の印刷用画像データを、紙やフィルムなどの印刷媒体に印刷するカラープリンタなどの印刷手段とを備えていることを特徴とする。
【0019】
そして、このような構成による画像処理装置によって得られた2次元展開図の外形線を切り抜いて、被印刷物の立体表面(またはその一部)に隙間無く貼り付けると、自由曲面の物体の表面にも、隙間無く、かつ、画像の欠落部分も無く、また曲面形状による画像の歪みが少なく、印刷物を貼付けることができるものである。
【0020】
本発明(請求項2記載の発明)に係る画像処理装置は、請求項1において、前記3次元モデル作成、選択手段は、被印刷物が一般的な立体物である場合には、予め準備したデータベースから3次元形状モデルデータを選択することを特徴とする。
【0021】
本発明(請求項3記載の発明)に係る画像処理装置は、請求項1において、前記3次元モデル作成、選択手段は、被印刷物の立体形状が自由曲面や複雑な立体形状などである場合には、被印刷物を異なる視点から見る複数枚の画像データを準備し、これらの画像データに基づいて立体形状表面の3次元モデルを作成することを特徴とする。
【0022】
換言すれば、上述した画像処理装置において、被印刷面の3次元立体形状表面モデルの生成には、自由曲面や複雑形状の場合には、デジタルカメラ等のカメラ撮像手段により、被印刷面の3次元立体形状を複数の視点位置から撮影し、視点の異なる複数の画像から、「視体積交差法」や、または、「Lucas-Kanade法(勾配法)」と「Tomasi and Kanadeの因子分解法」などにより、3次元立体形状表面モデルを自動的に生成することができるものである。
勿論、立方体や球、円柱、円錐、正多面体など、一般的な立体形状の場合には、これらの一覧表メニューなどから選択し、その寸法のみ入力するようにしてもよい。
【0023】
また、被印刷面の立体表面形状に応じて歪みを補正する画像変換は、自由曲面や複雑形状の場合には、「双対モデリング」などの手法を用いると、変換式を求めることができる。
【0024】
さらに、一つの視点位置から見て、画像全体の歪みが無いような画像に変換することもできるが、被印刷物を様々な視点から見ても、各正面周辺の画像の歪みが少なくなるように、表面を構成する面(多角形)毎に、各面(多角形)の正面(法線方向)に設定した視点位置から見たときに歪みが少なくなるように補正することもできる。
一般的な立体形状の場合には、選択された立体形状の種類に応じて、予め設定された変換式により歪み補正のための変換処理を行なう。
【0025】
なお、上述した説明では、紙や樹脂フィルムに印刷された2次元展開画像の外形線を切り抜いて、被印刷面の立体表面(全体または一部)に隙間無く貼り付けるとしたが、予め裏面に接着シールを付したシール紙に印刷したり、また、柔軟性や可撓性、伸長性のある薄い樹脂フィルムなどに印刷したりするのが望ましい。
さらに、被印刷面の立体表面に近似する多面体立体モデルを生成する際、近似の程度や粗さ、分割の細かさ、分割する多角形領域の数などを選択できるようにすると、後に、切り抜きや貼り付けなどのしやすさ、仕上りの粗さや精度などを調整することができる。
【0026】
また、被印刷面の立体表面に貼り付ける代りに、上記の2次元展開画像に糊代(のりしろ)部分を追加して印刷して、印刷された紙や素材自体を切り抜いて張り合わせて、所望の立体形状のペーパークラフト模型などを組み立てられるようにしてもよい。
【0027】
さらに、被印刷面の立体表面に貼り付ける際、印刷媒体が硬くて、可撓性や伸縮性が小さい素材の場合、複雑な曲面や小さな領域に貼り付けるのが難しくなる。できれば、柔らかく、撓みやすく、伸縮性のある樹脂やシート材などが望ましいが、伸びると多角形の端部やその部分の画像が伸びて歪んでしまう。このような場合においては、展開図の多角形の端部などでは、素材の種類や伸張度に応じて、予めその多角形の端部の形状、および、そこに対応する画像を短く縮寸して調整や補正できるようにすると、貼付け時に伸長された時にちょうどぴったり貼り付けることができるので、綺麗に仕上げることができる。
【発明の効果】
【0028】
以上説明したように本発明に係る画像処理装置によれば、被印刷物としての3次元形状体の球面や曲面等のような各種の形状や物体の被印刷面に合わせて型紙形状を選択し画像の配置の変換を行って印刷プリントを出力するように構成されているから、簡単な構成であるにもかかわらず、以下に列挙する種々優れた効果を奏する。
【0029】
1)被印刷物の球面や自由な曲面、その他所定の3次元形状の表面に隙間なく、かつ、画像の欠落部分がなく、画像が連続するように貼り付けでき、また人物画像などの写真画像でも、歪みの少ない画像で観察できるので、コップや食器など平坦面や円筒状の曲面だけでなく、様々な曲面や複雑な立体形状の物体にも、デジタルカメラ撮影画像などをきれいに印刷して貼り付けることができる。
【0030】
2)様々な曲面や形状の製品や梱包などにも、一般のプリンタを用いて図柄や写真画像などを紙やシートに印刷して、きれいに貼り付けることができる。
【0031】
3)物体に貼り付ける代りに、糊代(のりしろ)付きの展開図として印刷し、印刷された紙やシートから、きれいな写真画像入りの各種の立体形状のペーパークラフトなどを簡単に組み立てることができ、写真画像の利用法や楽しみ方を広げることができる。
【発明を実施するための最良の形態】
【0032】
図1および図2は本発明に係る画像処理装置の一実施形態を示す。
ここで、本発明を特徴づける画像処理装置は、図1に示すように、デジタルカメラ等のカメラ撮像手段1で撮影した被写体の写真画像などを、球面、曲面、凹凸のあるような自由形状をもつ3次元立体物等の被印刷物の表面などの被印刷面に、隙間無く、かつ、画像の欠落部分が無く、また曲面形状による画像の歪みが少なく画像が見やすくなるように、貼り付けできる印刷物を印刷処理するように構成されている。
【0033】
また、この実施形態では、特殊な印刷設備やプリンタを用いずに、一般のペーパー用家庭用プリンタなどの印刷手段3で印刷して、画像などが印刷された曲面形状の物体を、手軽に作成できるようにしている。
【0034】
このような画像処理装置の概略構成を、図1を用いて簡単に説明すると、図中符号1はデジタルカメラ等のカメラ撮像手段であり、このカメラ撮像手段1では被写体、曲面や自由形状の被印刷物を撮影することにより、それぞれの画像データを画像処理手段2に入力するように構成している。なお、このカメラ撮像手段1は、従来から周知の構造をもち、撮影した画像データを記録する画像データ・メモリ等を備えている。
【0035】
符号2で示す画像処理手段は、上述したカメラ撮像手段1で撮影された被写体、被印刷物などの画像データが入力されることにより、または被印刷面の立体表面形状の3次元モデルを作成または選択する手段と、立体表面形状の3次元モデルに応じて、被印刷面の立体表面(またはその一部)を隙間無く埋めるように近似して、複数の多角形(3角形〜6角形などのポリゴン)の組み合わせによる仮想の多面体立体モデルを生成する手段と、立体表面に印刷や貼付けした場合の画像の歪みを補正するために、入力された画像データを、画像処理により、所定の視点位置から仮想の多面体立体モデルの表面に所定の投影変換する処理を行い、それを所定の視点から観察(透視変換)した場合に画像の歪みが少なくなるように、3次元曲面(実際には多面体立体)表面上の画像データに変換する手段と、歪み補正された3次元曲面表面上の画像データを、仮想の多面体立体の表面に貼付け、貼付けた画像を、(多面体立体の表面を構成する)複数の多角形領域に分割する手段と、仮想の多面体立体の表面を構成する各面(多角形)の連結の一部を分解して、2次元平面に展開された表面形状の2次元展開図を生成する手段と、分割された各多角形領域の画像を、2次元展開図中の対応する各多角形の位置と向きにしたがって、それぞれ配置した2次元展開図形式の印刷用画像データを生成する手段等を備えている。
【0036】
ここで、上述した画像処理手段2は、図1に示されるように、CPUや、3次元モデル生成プログラム、2次元−3次元生成プログラム、描画プログラムなどを有するプログラム・メモリを備え、また各種のデータ・メモリや入出力インターフェースなどを備えてなる構成とされている。
【0037】
符号3は、上記展開図形式の印刷用画像データを紙やフィルムなどの印刷媒体に印刷するカラープリンタなどの出力装置であり、前記画像処理手段2で得られた歪み補正した画像の2次元展開図を印刷出力するようになっている。この印刷された展開図は、これをその外形線をしたがって切り抜いて、被印刷物の立体表面(またはその一部)に隙間無く貼り付けできるようになっている。
【0038】
上述したような本発明に係る画像処理装置は、図2に示すような曲面印刷用画像データの生成処理等の画像処理を行うことにより、被写体の撮影写真を、図1に示すように曲面や自由形状の被印刷物の表面に歪みなく貼り付けることができるものである。
【0039】
このような処理を、図2等を参照して以下に説明する。
1)(画像データの入力):
まず、デジタルカメラにより撮影された写真画像など、被印刷物に印刷したい画像データを入力する(S1−3等参照)。なお、PCなどに蓄積記録された画像データや書類データなどを用いても良い。
【0040】
2)(被印刷物立体の撮影、または、立体の種類の選択):
次に、被印刷物の曲面形状や立体形状の3次元モデルを作成するために、被印刷物の立体形状を、デジタルカメラなどで、複数の視点から複数枚撮影する(S7等参照)。
ここで、被印刷物の立体形状が、立方体や球、円柱、円錐、各種の正多面体、半正多面体など、所定の一般的な立体である場合には、一覧表メニューなどから、その立体形状の種類を選択する(S4−6等参照)。
【0041】
3)(立体形状の3次元モデルを生成):
異なる視点から撮影された被印刷物の複数枚の画像データを入力して、複数枚の画像データに基づいて、「視体積交差法」、または、「Lucas-Kanade法」と「因子分解法」などにより、被印刷物立体の3次元形状モデルデータを自動的に生成する(S8等参照)。
ここで、一般的な立体形状である場合には、選択された立体形状の種類に応じて、予め記録された形状モデルデータの中から、被印刷物立体表面の3次元形状モデルデータを自動的に生成する。
【0042】
4)(被印刷物の多面体立体の表面形状モデルの生成):
前記立体表面形状の3次元モデルに応じて、立体表面またはその一部を隙間無く埋めるように近似された複数の多角形の組み合わせによる仮想の多面体立体モデルを生成する(S9−10等参照)。
このとき、近似の精度や粗密の程度、分割の細かさ、分割する多角形領域の数などを選択できるようにすると、後で切り抜きや貼り付けする作業のしやすさ、仕上りの粗さや精度などを調整することができる。
【0043】
5)(画像の曲面歪みの補正):
生成された被印刷物の表面形状を模擬する仮想の多面体立体モデルに応じて、入力画像を画像の歪みを補正した画像データに変換する(S11−17,S18−25等参照)。印刷面の立体表面形状に応じて歪みを補正する画像変換は、自由曲面や複雑形状の場合には、「双対モデリング」などの手法を用いて変換することができる。
例えば、(立体表面に印刷や貼付けした場合の)画像の歪みを補正するために、入力された画像データを、画像処理により、所定の視点位置から仮想の多面体立体モデルの表面に所定の投影(投影変換)を行い、これを所定の視点から観察(透視変換)した場合の画像の歪みが少なくなるように、「双対モデリング」などの手法を用いて、補正変換する。
【0044】
変換後の仮想の多面体立体モデルの表面上に投影されている画像の像を、原稿画像の多面体立体の表面形状の3次元画像データとする。
次に、歪み補正された多面体立体表面形状の3次元画像データを、仮想の多面体立体の表面に貼付け、貼付けた画像を、(多面体立体の各面を構成する)複数の多角形領域に分割する。
【0045】
6)(印刷画像の2次元展開図の生成):
仮想の多面体立体の表面を構成する各面(多角形)の連結の一部を分解して、平面に展開された表面形状の2次元展開図を生成する(S31−33等参照)。そして、仮想の多面体立体表面に貼り付けられた画像も同じく、対応するそれぞれの多角形領域毎に分割する。すなわち、分割された各多角形領域の画像を、2次元展開図中の対応する各多角形の位置と向きにしたがって、それぞれ配置された2次元展開図形式の印刷用画像データを生成する(S34−35等参照)。
【0046】
また、一つの視点位置から見て、画像全体の無いような画像に変換することもできるが、被印刷物を様々な視点から見ても、各正面部分の画像の歪みが少なくなるように、前記表面を分割したそれぞれの多角形毎に、その正面の視点方向から見たときに画像の歪みが少なくなるように補正することもできる。
一般的な立体形状の場合には、それらの選択に応じて、予め設定された変換式により歪み補正のための画像変換処理を行なってもよい。
【0047】
7)(画像の2次元展開図の印刷):
2次元展開図形式の画像データを、入力された被印刷体の大きさ寸法に応じて、縮小または拡大処理し、カラープリンタなどに出力して、紙やフィルムなど印刷媒体に印刷する(S36−37、S39−40等参照)。
また、あらかじめ裏面に接着シールを付したシール紙に印刷したり、また、柔軟性や可撓性、伸長性のある薄い樹脂フィルムなどに印刷したりするのが望ましい。
展開図の多角形の端部などでは、素材の種類や伸張度に応じて、予めその多角形の端部の形状、および、そこに対応する画像を短く縮寸して調整や補正できるようにすると、貼付け時に伸長された時にちょうどぴったり貼り付けることができるので、綺麗に仕上げることができる。
【0048】
8)(ペーパークラフト展開図の印刷):
また、被印刷物に貼り付ける代りに、上記の2次元展開画像に糊代(のりしろ)部分や外形線、山折り線・谷折り線などを付加して印刷して、印刷された紙や素材を外形線に沿って切り抜き、折り線に沿って折り曲げ、糊代で張り合わせて、所望の立体形状のペーパークラフト模型などを組み立てられる(S38,S41等参照)ようにしてもよい。
【0049】
また、以下に、被印刷面の3次元形状モデルの作成方法について、説明する。
すなわち、被印刷物の立体形状が、立方体や球、円柱、円錐、各種の正多面体や半正多面体など、所定の立体形状の場合には、一覧表メニューなどから、その立体形状の種類を選択して、そして選択された立体形状の種類に応じて、予め記録された形状モデルの中から、該当する立体形状表面の3次元モデルデータを読み出す。
ここで、印刷物の立体形状が自由曲面や複雑な立体形状などの場合には、デジタルカメラなどで、被印刷物を、それぞれ異なる視点から複数枚撮影する。
【0050】
そして、撮影された被印刷物の立体形状の視点の異なる複数枚の画像データを入力して、複数枚の画像データに基づいて、「視体積交差法」、または、「Lucas-Kanade法」と「因子分解法」などにより、立体形状表面の3次元モデルを自動的に生成することができる。
【0051】
図3に、被印刷物の曲面形状や立体形状モデルの作成処理のフローを、図4に、視点の異なる複数枚の画像による3次元形状データの復元の生成例を示す。
具体的には、まず、被印刷物の立体形状が撮影された複数枚の画像データ、望ましくは、視点や向き角度などが異なる複数枚の画像データを入力して、大きさや上下の向き、回転などを正規化した後、「Lucas-Kanade法(勾配法)」や、「Kanade-Lucas-Tomasiトラッカー」などにより、特徴点の移動や相違を追跡し、対応点を探索する(S51,52等参照)。
【0052】
次に、各点の移動、距離の深さ、カメラ位置、エッジモーションなどを解析して、カメラの位置や動き情報を求めて、任意の多視点画像とカメラ情報から、3次元形状データを求める(S53−56等参照)。あるいは、参照マーカー等を一緒に写した画像を用いるなど、人工的特徴を付加することによって、カメラ運動情報を求めやすくできる。
【0053】
または、「射影グリッド空間における視体積交差法」などを用いて、3次元ボクセル(立体画素)空間を多数の立体格子に分割し、異なる視点の各画像におけるシルエット画像を3次元ボクセル空間に逆投影して(すなわち、各ボクセルが各画像に投影される場合にそのシルエットに含まれるか否かを判断して)、顔および頭部の3次元データを生成する(S61−66、S57等参照)。
【0054】
または、複数画像における対応点から、「因子分解法」などにより、(計測行列)=(移動行列)×(形状行列)における(移動行列)と(形状行列)とを同時に求め、(形状行列)から、被印刷物の立体表面形状の3次元モデルを生成する等(S58−60,S57等参照)、他の方法を用いても良い。
【0055】
特に、複数枚の撮影画像から3次元形状データを生成する方法について、以下に詳しく説明する。
[画素座標、カメラ座標、画像座標]:
カメラを基準とした3次元空間座標である「カメラ(Camera)座標」と、2次元画像を表現する「画像(Image)座標」とを、カメラ座標系(X,Y,Z)の原点(0,0,0)を光軸上のカメラ中心とし、撮像画像面に平行なX軸、Y軸と光軸方向のZ軸との正規直交座標系として設定すると、カメラ座標が(X,Y,Z)Tである3次元空間の点と、その透視射影として得られる2次元画像の画像座標(x、y)Tには、次式が成り立つ。
【0056】
x=l×X/Z、y=l×Y/Z(ただし、l:カメラの焦点距離)・・・・(1)
ここで、透視射影による3次元空間の像を記述する「画像(Image)座標」と、モニター表示画面などの「画素(Pixel)座標」の間には、個々のカメラに固有の1対1の写像関係がある。
【0057】
複数の画像における点対応からカメラ運動と相対的位置関係(3次元形状)とを復元する場合には、点対応は、まず「画像(Image)座標」で与えられるので、全てのカメラに対して統一的に扱うためには、この「画素(Pixel)座標」と「画像(Image)座標」間の1対1の写像関係を求めること(カメラキャリブレーション)ができれば、「画素(Pixel)座標」と「画像(Image)座標」とを自由に変換できることになる。
【0058】
カメラモデルを表現する透視射影において、複数の画像における点対応からカメラ運動と3次元形状とを求める問題は、非線形写像の逆問題となるので、非線形最適化問題に帰着し、非線形最適化問題はノイズに敏感で、初期値依存性が高く、数値計算が不安定であるなど、問題があるため、安定して3次元形状を復元することは難しい。
そこで、
1)(文献1にあるように)、カメラの位置や姿勢、視点方向などに関する外部情報、すなわち、カメラ運動情報を入力するか、参照マーカーを一緒に写した画像を用いるなど、人工的特徴を付加することによって、カメラ運動情報を求めやすくできる。
【0059】
2)または、(文献2にあるように)、複数の多視点カメラ(または多視点画像)の中から、なるべく直交する関係の2台のカメラ(または画像)を基底カメラとして選択して、基底カメラによる射影グリッド空間を用いて、複数のカメラ間または視点間の相互関係情報を付加するか、または制限して、例えば、カメラ間のエピポーラ幾何関係を表す基底行列F(Fundamental)行列等を用いて、射影グリッド空間上の点(ボクセル)を各カメラ画像へ逆投影し、各カメラ画像のシルエット画像において、各点(ボクセル)が対象物の内部に存在するか外部かを判定して、3次元形状データを復元することができる。
【0060】
3)または、(文献3にあるように)、Tomasi and Kanadeによる「因子分解法」などにより、理想的カメラモデルである透視射影をアフィン射影で近似して、正射影モデル等のアフィン近似射影に基づいた複数の2次元画像からカメラ運動情報と3次元形状情報とを同時に復元する手法などを用いることができる。
【0061】
2次元画像がアフィン近似射影で得られると仮定すると、複数のアフィン近似射影画像における点対応からのカメラ運動と3次元形状の復元問題は、線形写像の逆問題となるので、復元の精度は劣るが、非線形写像の場合に比べて、数値計算を安定して解くことができるようになる。
【0062】
(文献1):藤村恒太ほか、「デジタルカメラ画像から簡単に3次元データを生成するソフトウェア技術」、三洋電機技報(SANYO TECHNICAL REVIEW)、VOL.35、No. 1、JUNE 2003.
(文献2):特開2004-220312(独立行政法人科学技術振興機構)
(文献3):金出武雄ほか、「因子分解法による物体形状とカメラ運動の復元」、電子通信学会論文誌、J76−D−II、No.8(19930825)、pp.1497−1505、1993年。
【0063】
[複数の画像間における点の対応付け]:
まず、複数の画像間における点特徴(輝度や色、輪郭形状、テクスチャーなど)の対応付けを行なう。
3次元空間では遠く離れた点も、2次元画像では近くに投影されることがある。2次元画像におけるわずかな誤差が3次元空間での認識や理解に重大な影響を及ぼすので、複数の画像間における点の対応を精度良く行なう必要がある。
【0064】
複数の画像間における特徴点の対応付けには、「Lucas-Kanade法(勾配法)」(1981年)や、「Kanade-Lucas-Tomasiトラッカー」(Shi and Tomasi、1994年)などの手法を用いることができる。時間的に離れた画像を事前知識無しに対応付けるのは難しいが、複数の点で対応が既知であれば、同一の3次元空間を撮影した多視点の複数画像間の幾何的な関係(エピポーラ幾何学)を用いて、他の対応点の存在可能な領域を絞りこむことができる。
【0065】
例えば、複数のフレーム画像間における対応や追跡には、一般に、見え方(局所画像)、または、エッジ(輪郭)、色ヒストグラムなどの画像特徴の類似(相関)や相違に基づいて、隣接する他フレーム画像との間で、最も類似する領域を探索し、探索された点へ対象物が移動したと判定する方法(ブロックマッチング)が良く用いられる。
【0066】
つまり、座標x=(x,y)における画素値I(x)毎に、移動量(変位)d=(dx,dy)を逐次変えながら、次式であらわされるような
差分二乗和(二乗誤差)ε(d)=Σ{It(x+d)−It-1(x)}2・・・・(2)
もしくは、差分絶対値和ε(d)=Σ|It(x−d)−It-1(x)|
もしくは、相互相関
γ(d)=Σ{It(x−d)−I ̄t}{It-1(x)−I ̄t-1}/|It(x−d)−I ̄t||It-1(x)−I ̄t-1|
などを計算し、その中から、
相違度最小d=min{ε(d)}、
または、類似度(相関)最大d=max{γ(d)}・・・・(3)
となる変位dを求めれば良い。
【0067】
しかし、これを全探索すると、計算量が多くなったり、変位量が離散的で連続しなかったりするなどの難点がある。局所画像を回転や拡大縮小してマッチングする場合には、さらに膨大な計算が必要になる。
このとき、「Lucas-Kanade法(勾配法)」では、暫定解の周りの勾配(傾き)にもとづいて、山登り(または山降り)することにより、極大値(または極小値)を効率よく求めることができる。
【0068】
すなわち、差分二乗和(二乗誤差、SSD)の勾配を、
ε=Σ{I(x+δx,y+δy,t+δt)−I(x,y,t)}2・・・・(4)
とすると、この第1項のテーラー展開は、
I(x+δx,y+δy,t+δt)
=I(x,y,t)+δx{∂I(x,y,t)/δx}+δy{∂I(x,y,t)/δy}+δt{∂I(x,y,t)/δt}+・・・
このとき、2次以降の項を、変位が微小であるとして無視できる(x周辺で線形近似できる)とすると、
δx=dx、δy=dy、δt=1として、
ε=Σ{dxIx(x,y,t)+dyIy(x,y,t)+It(x,y,t)}2
・・・・(5)
ただし、上式で、Ix(x,y,t)=∂I(x,y,t)/δx、Iy(x,y,t)=∂I(x,y,t)/δy、It(x,y,t)=∂I(x,y,t)/δtとする。
【0069】
相違度最小の変位d=minεは、∂ε/∂dx=0、∂ε/∂dy=0となるdを求めれば良いので、
【数1】
となる。
【0070】
ここで、
【数2】
とおくと、ATAd−ATb=0から、ATAd=ATbとなり、
【数3】
となるので、ATAが正則なとき、dは解を持ち、
d=minε=(ATA)-1 ATb・・・・(9)
となり、全探索しなくても、相違度最小となる変位量を求めることができる。特徴点検出と上記のような追跡法とを統合した手法は、「Kanade-Lucas-Tomasi(KLT)トラッカー」と呼ばれている。
ただし、上記の式で、ATは行列Aの転置行列、(ATA)-1は(ATA)の逆行列を表わす。
【0071】
次に、対象物の3次元形状データを生成する。
[3次元形状データの生成(1)--カメラ位置情報や参照マーカーを用いる方法]:
例えば、全周囲360度からの多視点角度から、または、周囲に配した複数台のカメラから撮影した画像データを入力して、対象物の3次元形状データを作成する場合には、予めカメラを所定の位置や角度に配して撮影し、カメラ位置情報が既知のカメラで撮影された複数枚の多視点画像を用いるか、あるいは、例えば回転台に印刷された参照マーカーと、回転台に載せた対象物体とを一緒に撮影した複数枚の画像から、撮影時のカメラ位置を自動的に計算する。
【0072】
また、得られたカメラ位置情報と物体画像とから、形状とテクスチャーの3次元情報を自動計算し、デジタルカメラで撮影した画像から、3次元データを生成する。対象物を撮影した異なる視点の10〜20枚程度の撮影画像データを入力して、カメラ位置の計算、形状情報の生成などの一連の処理を実行して、3次元形状データを作成することができる。
【0073】
すなわち、カメラ位置の計算では、例えば、座標系におけるカメラの3次元位置パラメータ(回転成分α,β,γと平行移動成分(x,y,z)を、Hough変換(注1)などに基づいて計算する。つまり、撮影された画像から、参照マーカーを抽出し、抽出された参照マーカーの任意の3点と、あらかじめ登録されている参照マーカー中の任意の3点の位置関係を組み合わせて決定される連立方程式を解くことにより、位置パラメータを計算する。
【0074】
(注1)Hough変換(ハフ変換、ヒュー変換):エッジ画像から直線を求める問題等において多く用いられる方法で、エッジ画像中の各々の点(x,y)について、それがある直線上にある点と仮定した場合に可能性のある全ての直線を、極座標ρ=x cosθ+y sinθによるパラメータ空間(ρ,θ)へ曲線として投票し、最終的にパラメータ空間においてピークとなる(ρ,θ)が、求める直線のパラメータとして得られる。
【0075】
形状情報の生成では、単色の背景紙などを使用して対象を撮影し、指定した背景の色情報を用いて物体と背景を分離し、対象物のシルエット(輪郭)の抽出を行なう。
【0076】
次に、カメラの位置情報と対象物の2次元輪郭情報に基づいて、3次元ボクセル空間へのボーティング(投票)処理により、3次元形状を再構成し、得られたボクセルデータから、ポリゴン(多角形)データ等へ変換し、三角ポリゴン表現形式やSSF形式、もしくは、VRMLやXVL、IGES、STL、PLYなどの各種3次元形状データとして出力する。
【0077】
このような対象物を載せる回転台や参照マーカー等は用いにくい場合には、カメラに内蔵して設けたGPS測位装置や電子コンパス、3軸加速度センサ、傾斜計センサ等により計測された位置や角度、姿勢情報や、別のマーキング方法や人工的特徴を用いて、カメラの位置情報を求めてもよい。
または、被印刷物形状がなだらかな曲面なら、2台のカメラを所定寸法(基線長d)だけ離して配したステレオカメラで撮影した画像データから、もしくは、1台のカメラでも、所定寸法(d)だけ視点を変えて撮影した2枚の画像データから、三角測量方式で3次元形状データを求めてもよい。
【0078】
すなわち、基線をx軸、カメラの光軸方向をz軸とすると、点Pの座標(x、y、z)の観測値として、各カメラ1、2における基線と点Pの方向との角度α1、α2が得られたとき、点PのX−Y面に対する傾斜角(仰角)をθ、既知の基線長をdとすると、点Pの座標(x、y、z)は、次式より求められる。
【0079】
x=d(tanα1−tanα2)/2(tanα1+tanα2)、
y=d・tanα1・tanα2・sinθ)/(tanα1+tanα2)、
z=d・tanα1・tanα2・sinθ)/(tanα1+tanα2)、
・・・・(10)
【0080】
[3次元形状データの生成(2)--視体積交差法]:
あるいは、複数の多視点からの画像に対して、「視体積交差法」を用いても、3次元形状モデルの生成を行なうことができる。
【0081】
図5に、視体積交差法による3次元形状復元の概念図を示す。
視体積とは、視点を頂点とし、対象物のシルエットを断面とする錐体のことで、「視体積交差法」は、全ての視点における対象物の視体積の共通部分を求めることにより、対象物の形状を復元する手法である。
【0082】
視体積交差法では、実空間内に設置した複数台(または複数の位置)のカメラで撮影した画像から、物体のシルエットを抽出し、空間に逆投影し、シルエットの交わりを計算することによって、対象物の3次元形状モデルを求めることができる。
【0083】
複数の多視点画像から3次元モデルを生成する手順は、次の通りである。
1)形状を構成する3次元空間(ボクセル空間)を立方体格子に分割する。
2)各画像のシルエット(輪郭)画像を入力し、各ボクセルに対して、正射影による逆投影を行い、各ボクセル上に当該画像のシルエットが存在するか、しないかを判定する。
3)最終的に存在するボクセル集合を、3次元形状とみなす。
4)3次元形状の内部にあるボクセルを削除する。
【0084】
[3次元形状データの生成(3)--因子分解法]:
上記のような参照マーカーやカメラ位置のキャリブレーション処理を用いずに、複数の多視点カメラ画像や連続動画像だけから3次元形状データを生成する方法として、因子分解法がある。
一般に、カメラ位置や視点方向の制限も設けずに、対象物周囲の任意の複数枚の2次元画像から、対象物の3次元形状を求めるには、膨大な計算処理が必要で、解も不安定になる。
【0085】
「因子分解法(Factorization)」(Tomasi and Kanade(金出武雄)、1992年)では、実際のカメラモデルである透視射影をアフィン射影で近似することにより、問題を簡略化し、数値計算を高速かつ解を安定化させることができる。また、複数のアフィン近似射影画像から、カメラ運動と対象物体の立体形状とを同時に復元できる方法として知られている。
【0086】
すでに、上記の[複数の画像間における点の対応付け]のステップにより、複数の画像における点特徴の対応付けが求められ、画像座標として与えられているとする。
アフィン近似射影においては、カメラ撮影による写像は、3次元空間の対象物から、2次元画像へのカメラの位置と方向によって決まるアフィン射影となる。
【0087】
画像がM枚、特徴点がN個与えられるとき、N個の3次元座標のM個のアフィン射影によるMN個の画像座標が得られるとすると、因子分解法では、このMN個の条件を行列の形に並べて、複数の2次元画像からの3次元形状復元問題を単純な形で表現することができる。すなわち、
(計測行列)=(運動行列)×(形状行列)・・・・(11)
ここで、計測行列はMN個の画像座標を並べた(2M×N)行列、運動行列はM個のアフィン射影の表現行列を並べた(2M×3)行列、形状行列はN個の特徴点の3次元座標を並べた(3×N)行列である。
つまり、複数の2次元画像からの3次元形状を復元するには、計測行列を因子分解できればよい。
【0088】
このように、透視射影によって得られた計測行列の成分からアフィン近似射影により投影されたとき得られる計測行列を推定できれば、後は、因子分解法のアルゴリズムにしたがって、計測行列を運動行列と形状行列の積に分解するだけで、カメラの運動情報と物体の3次元形状とを復元することができる。
ただし、画像座標が正規直交基底による表現であるため、正しい復元解を得るには、画像座標の基底が正規直交基底となるように分解する必要がある。
【0089】
[アフィンカメラ・モデル]:
対象の3次元物体のN個の特徴点{Pα}を、M枚の画像に渡って追跡撮像し、第κ(カッパ)画像におけるα(アルファ)番目の特徴点Pαの画像座標を(xκα,yκα)(κ=1,・・・,M、α=1,・・・,N)とする。
そして、その運動履歴を次の2M次元ベクトル(軌跡ベクトル)で表す。
Pα=(x1α y1α x2α y2α・・・・xMα yMα)・・・・(12)
【0090】
これによって各特徴点の軌跡を2M次元空間の1点と同一視できる。便宜上、画像番号κを「時刻κ」と呼ぶ。
カメラの光軸をZ軸とするカメラXYZ座標系をとり、これに相対的にシーン(被写体)が運動すると解釈する。または、静止したシーン(被写体)に対してカメラが相対的に運動すると考えても同等である。
【0091】
シーン中に3次元座標系を任意に固定し、特徴点Pαのそのシーン座標系に関する3次元座標を(aα,bα,cα)とする。時刻κでのシーン座標系の原点と各座標軸の基底ベクトルをカメラ座標系で表したものをそれぞれ、tκ、{iκ,jκ,kκ}とすると、特徴点Pαの時刻κにおける3次元位置rκαは、カメラ座標系では次式となる。
rκα=tκ+aαiκ+bαjκ+cαkκ・・・・(13)
【0092】
平行投影または弱透視投影や疑似透視投影を抽象化(モデル化)したアフィンカメラは、3次元の点が次のように画像上に投影されると仮定する。
(xκα,yκα)T=Pκαrκα+qκ・・・・(14)
ここにPκα,qκはそれぞれ時刻κでのカメラの位置や内部パラメータによって定まる(2×3)行列および2次元ベクトルである。式(13)を代入すると、式(14)は次のように書ける。
(xκα,yκα)T=m’0κ+aαm’1κ+bαm’2κ+cαm’3κ
・・・・(15)
【0093】
m’0κ、m’1κ、m’2κ、m’3κは時刻κでのカメラの位置や内部パラメータで決まる2次元ベクトルである。これを時刻κ=1,・・・,Mにわたって縦に並べると、前述式(12)の軌跡ベクトルPαは次のように書ける。
Pα=m0+aαm1+bαm2+cαm3・・・・(16)
ここで、mi(i=0,・・・,3)は、m’iκを時刻κ=1,・・・,Mに渡って縦に並べた2M次元ベクトルである。
上式は、すべての軌跡ベクトルPαが2M次元空間中でm0を通り、{m1,m2,m3}の張る「3次元アフィン空間」に含まれることを表している。これを「アフィン空間拘束条件」と呼ぶ。
【0094】
[3次元形状モデルの復元処理の流れ]:
因子分解法により、観測データ{Pα}から3次元復元する計算は、次の4ステップから成る。
(1)軌跡ベクトル{Pα}に、3次元アフィン空間を最小二乗法などにより当てはめる。
(2)当てはめた3次元アフィン空間から、ベクトルm0,m1,m2,m3を計算する。カメラモデルに依存する計量条件を用いる。
【0095】
(3)得られたm0,m1,m2,m3から各時刻κのシーン座標系の位置tκと向き(iκ,jκ,kκ)を計算する。これは、各時刻κにおけるカメラの位置と向きに相当する。
ここで、(iκ,jκ,kκ)が正規直交系であることから、これらを並べた行列R={iκ,jκ,kκ}が回転行列であるという非拘束条件を用いる。このような回転の最適当てはめ問題は、いわゆる特異解分解により解決できる。
(4)各特徴点の3次元座標(aα,bα,cα)を計算し、式(13)より、立体形状の3次元位置rκαを計算する。ここでは、
J=Σα||Pα−m0−aαm1−bαm2−cαm3||2・・・・(17)
を最小にすればよい。これは、(aα,bα,cα)の2次式であるから、線型方程式を解いて解が求まる。
【0096】
このようにして、複数枚の撮影画像の計測行列データ(2M次元の軌跡ベクトル{Pα}(α=1〜N))から、カメラの運動情報を含む運動行列データ(特徴点の重心の並進ベクトル{tκ}と回転行列{Rκ}(κ=1〜M))と、物体の3次元形状情報を含む形状行列データ(各特徴点の3次元位置{rα}(α=1〜N))とを、同時に復元することができる。
【0097】
因子分解法による3次元復元の実際の計算アルゴリズムについては、(文献4)、(文献5)などに、詳しい解説があるので、ここでは詳しい説明を略する。
【0098】
(文献4):藤木 淳(産総研)、「点対応を用いた複数の2次元画像からの3次元形状復元 −因子分解法の数理−」、統計数理、第49巻第1号、pp77〜107、2001年。
(文献5):金谷 健一、菅谷 保之(岡山大学工学部)、「因子分解法の完全レシピ」、電子情報通信学会技術報告、PRMU2003-118、NC2003-49、2003年10月。
【0099】
[曲面印刷における画像歪みの補正方法]:
[3次元データの座標変換]:
一般に、3次元空間における回転操作や縮小、拡大、平行移動、透視変換などの座標変換処理を、繰り返し処理するには、マトリクス(行列)演算で行なうのが適している。
3次元データに変換行列{T}により座標変換した後の座標(x’,y’,z’)は、射影問題を解くときに都合が良いように、空間を表す三要素のベクトルに一要素を加えた同次座標形式を用いると、次式で表わすことができる。
同次座標では、[X Y Z H]=[x y z 1]・T
通常座標では、[x’ y’ z’ 1]=[X/H Y/H Z/H 1]
・・・・(18)
このとき、変換行列{T}の一般形は、次式で表される。
【0100】
【数4】
【0101】
変換行列{T}の小行列である左上(3×3)正方マトリクス(要素:a〜j)は、スケーリング(拡大、縮小)、回転、および、線断などの変換を、(1×3)の行マトリクス(要素:l,m,n)は平行移動を、(3×1)の列マトリクス(要素:p,q,r)は透視変換を、(1×1)の要素(s)は全体スケーリング(拡大、縮小)変換を行なう。
【0102】
[投影、透視変換]:
3次元形状を平面に投影する場合には、
1)例えば、平行投影(直交投影、正射影、parallel projection)の場合には、空間内にあるベクトルを考え、それに平行に物体上の一点を画像平面上の一点へ投影する。(x−y平面に平行な)z=nの面を投影面とすると、変換行列は次式となる。
【0103】
【数5】
【0104】
2)一方、透視変換(遠近投影、perspective projection)の場合には、投影面がx−y平面で、投影中心(視点)がz軸上(原点から距離R)にある場合、対象物の点P(x,y,z)が投影面に投影されたときの点をP’(x’,y’,z’)とすると、略ピンホールカメラと同様に、
x’=x{R/(R−z)}、y’=y{R/(R−z)}・・・・(21)
【0105】
これを同次座標で表わすと、次式となる。
【数6】
【0106】
上式から、H=1−(z/R)=(R−z)/Rが得られるから、各要素をHで割って正規化すると、透視変換後の同次座標は、次式となり、近いものの方が大きく投影されて遠近感が得られる透視図が作図できる。
【0107】
【数7】
【0108】
[曲面への投影]:
さらに、平面の代りに曲面に投影する場合には、同4次元座標表現を用いた各種の行列演算により行われ、ポリゴンモデル上の頂点を[x y z 1]、変換後の頂点を[x’ y’ z’ 1]とすると、一般に次式のように表わすことができる。
[x’ y’ z’ 1]=[x y z 1]・W・V・P・・・・(24)
ただし、{W}はワールド変換行列、{V}はビュー変換行列、{P}は射影変換行列。ワールド変換行列は、オブジェクト座標系からワールド座標系への変換行列であり、ビュー変換行列は、ワールド座標系からカメラ座標系への変換(透視変換)行列であり、射影変換行列は、カメラ座標系から射影空間への変換(投影変換)行列である。
【0109】
[曲面投影歪みの補正]:
次に、曲面に印刷したり、印刷物を被印刷物の曲面に貼り付けたりする場合の、印刷画像の「曲面歪み」の補正方法について説明する。
例えば、図6に、所定形状の場合の変換処理を示すように、被印刷物が球面や所定の既知の曲面形状である場合には、それに対応した変換式により補正変換や逆変換を行なうことができる。
【0110】
この図のような球面に平面画像を貼り付けると、凸面上に画像の中央が膨らんで見えるので、人物の顔などの場合には太った丸顔になってしまうなど、歪みが目立ってしまう。
このとき、元の画像上の点(x、y)は、次の点(x’、y’)の座標位置に変換される。
x'=r sin(xπ/2r)、
y'=r sin(yπ/2r)、(ここで、rは球面の半径)・・・・(25)
このような変換式が分かっている形状の場合には、元の画像に、予め次のような逆変換を施してから球面に貼り付ければ、球面に貼り付けたときに、ちょうど元の画像と同様に見えるので、画像の曲面歪みが補正されることになる。
【0111】
x=(2r/π)sin-1(x'/r)、
y=(2r/π)sin-1(y'/r)、(ここで、rは球面の半径)・・・・(26)
【0112】
図7(a)〜(d)に、2次元画像の曲面貼り付けによる歪みや、CGレンダリング処理における「平行投影マッピング」の例を示す。
例えば、プロジェクタなどで映像を曲面スクリーンなどに投影する際にも、視点やスクリーンとの相対位置、角度、スクリーンの表面形状等によって、投影された画像と観察者の眼(網膜)に写る画像とが異なってしまう「投影歪み」が生じる。
【0113】
また、バーチャルリアリティなど仮想環境で、CGレンダリング(描画)された画像を提示する場合、観察者の位置から見えるべき仮想空間をレンダリングして映像を生成し、観察者の網膜に提示する場合には、そのまま投射したのでは正しい網膜像が観察されないので、あらかじめ画像を変形することにより歪みを補正したい場合がある。また、観察者が移動する場合も、画像の変形を動的に変化させる必要がある。
【0114】
スクリーンが平面であれば、画像の線形的な変形や視体積の設定により補正は比較的容易だが、自由曲面形状を持つスクリーンの歪み補正は、一般に複雑で難しい。
このような場合に、「双対レンダリング(Duality Rendering)」という手法が提案されている(文献6)。
【0115】
(文献6):Ramesh Raskar、ほか、“The Office of the Future: A Unified Approach to Image-Based Modeling and Spatially Immersive Displays”, Proceedings of SIGGRAPH '98, pp.179-188, ACM-SIGGRAPH, 1998.
(文献7):近藤大祐、木島竜吾(岐阜大学)、「双対レンダリングを用いた自由曲面ディスプレー」、日本バーチャルリアリティ学会第7回大会論文集、2002年9月。
【0116】
[双対レンダリング手法]:
(文献7)の解説に沿って、「双対レンダリング」による投影歪みの補正の仕組みについて、説明する。
図8に、例えば、曲面スクリーンなどに投影する際の、視点とプロジェクタの関係を示す。
【0117】
図中のqは、プロジェクタで投射する画像上の点を表す2次元座標とし、rを観察者の網膜上に写る像点の2次元座標、sをスクリーン上の点とすると、qは、投影変換Pによってsに変換され、さらにsは、透視変換Vによってrに変換される。
s=P(q)、r=V(s)・・・・(27)
よって、
r=V(P(q))・・・・(28)
上式は、投射された映像qが、PとVの変換によって歪められた結果rが網膜像として観察されることを示す。
【0118】
歪みを補正するためには、逆に提示したい画像rから投射すべき画像qを求めればよい。
つまり、qは、VとPの逆変換V-1とP-1を用いて、次式で表わせる。
q=P-1(V-1(r))・・・・(29)
しかし、スクリーンが自由曲面の場合には、V、Pは非線形な変換になるので、逆変換を直接解くのは一般に困難である。このため、「双対レンダリング」という手法が提案され、これによって上記の逆変換を行なうことができる。
【0119】
図9に、「双対レンダリング」の手法における画像の生成から提示までの流れを示す。
図中で、(a)は、観察者に提示する仮想空間である。
観察者の視点位置を計測し、その位置に仮想カメラVC1を設定してレンダリング(描画)することで、観察者から見えるべき目的画像IMG1が得られる。
【0120】
ここで、実世界{図9中の(c)}に注目すると、観察者が網膜像として見ているのはスクリーン上に一度投影された画像で、IMG1そのものではない。
網膜像がIMG1と同一になるためには、投影歪みを補正した画像を求め、プロジェクタへ入力する必要がある。図9中(b)の仮想空間2は、歪み補正処理を行なうために想定した空間である。
【0121】
この空間にはモデリングされたスクリーンVSがあり、実空間の観察者の視点位置に仮想プロジェクタVP1を配置し、また実世界のプロジェクタの位置には仮想カメラVC2を配置する。
先に生成された画像IMG1をVP1から仮想スクリーンに投射し、仮想カメラVC2を視点としてレンダリングする。最終的に生成される画像IMG2は、IMG1を変形して歪み補正を施した画像となっている。
【0122】
上記の方法により歪み補正を行なえる理由は、投影変換Pの逆変換P-1はプロジェクタを視点とした透視変換に言い換えることができ、反対に透視変換Vの逆変換V-1は視点から投射する投影変換と言い換えることができるからである。
【0123】
図9の(b)の仮想空間2は、視点(カメラ)とプロジェクタの機能を逆転することでV-1、P-1にあたる変換を画像に施していることに相当する。そして、施された変換は図中(c)の実空間で投影歪みP、Vと相殺されて、最終的には歪みのない、元の画像が網膜像として観察される。
【0124】
プロジェクタの場合には、原稿画像の代りに、この補正された画像を用いて投射すれば、スクリーン上の画像が曲面補正されて、観察者からは、元の原稿画像のような曲面歪みが補正された画像を観察できる。
【0125】
曲面への画像の印刷や貼付け時における画像の歪みも、上記の「双対レンダリング」と同様の手法を用いて、補正変換することができる。
【0126】
ただし、上記の曲面への2次元画像の投影において、仮想カメラや網膜像への透視変換Vについては、プロジェクタの場合も、印刷貼り付けの場合も同様の変換でよい。しかし、プロジェクタからの投射による投影変換Pでは、1点から光線が放射線状に投射されるが、印刷物を立体物の曲面に沿って貼り付ける場合の投影変換P’では、立体物の表面を包むように投影されるという違いがある。
【0127】
しかし、印刷貼付けの場合にも、入力された画像データを、所定の視点位置から仮想の多面体立体モデルの表面に、前述の「透視投影」または(視点を無限遠においた)「平行投影」などで、(プロジェクタ同様に)投影変換を行い、これを所定の視点から観察(透視変換)した場合の画像の歪みが少なくなるように、前述の「双対モデリング」により、投影する画像を補正変換し、補正された原稿画像を多面体立体モデルの表面に投影した画像を求めると、これは、歪みが補正されて曲面に印刷された画像に相当し、多面体立体の表面に沿った形の3次元の画像データとなる。
【0128】
この3次元画像データを、仮想の多面体立体の表面に貼付け、貼付けた画像を、(多面体立体の各面を構成する)複数の多角形領域に分割する。
仮想の多面体立体を複数の面(多角形)毎に分割し、かつ、展開できる範囲で連結して、平面上に展開して、2次元展開図を作成する。また、同じく、仮想の多面体の曲面に貼り付けられた画像データも、2次元展開図上の対応する多角形の領域に、位置および向きにしたがって、再配置すれば、2次元展開図形式の画像データが得られる。
これを、外形線に沿って切り抜き、被印刷物の曲面や凹凸面に貼り付ければ、画像の歪みが補正され、かつ、曲面に沿って、隙間なく貼り付けることができる。
【0129】
なお、上記で、曲面状に貼り付けた画像の歪みは、視点位置によって異なって見える。このため、被印刷物の用途やその大きさに応じて、観察されるときに最も正面となり、最適な観察距離となる視点位置(視点方向と距離)を一つ選択して、その視点から見て、画像全体に歪みが無いような画像に変換することができる。また、同じ方向でも視点を無限遠として、前述の平行投影を行っても良い。
【0130】
または、被印刷物立体を様々な視点から見ても、各正面部分の画像の歪みがなるべく少なくなるようにすることもできる。前記の多面体立体表面を分割した多角形の領域の画像毎に、その多角形の正面の視点方向(各多角形の面に垂直な法線方向)から見たときに、各領域の画像の歪みがそれぞれ少なくなるように補正し、それをつなぎ合わせると、様々な視点から観察したときに、それぞれの正面領域の画像は歪みが少なくなるようにできる。
【0131】
[ラップ・マッピングと平行投影マッピング]:
例えば、CG(コンピュータ・グラフィックス)分野におけるレンダリング(描画)処理では、立体物表面への2次元画像などの貼り付けは、テクスチャー・マッピング(貼り付け、texture mapping)処理として、各種の技法が知られている。
【0132】
このうち、図7に示すように、円柱状の立体に、包むように2次元画像を貼り付けたCGレンダリング画像を生成するには、「円柱極座標マッピング」や「ラップ・マッピング(wrap mapping)」などのマッピング技法が知られている。また、2次元画像を平行に光線をあてたように平行投影する「平行投影マッピング」や、立体物を金属など鏡面(ミラー)と考えて、その鏡面に映して見える鏡像を計算して貼り付ける「リフレクション・マッピング(reflection mapping)」なども知られている。
【0133】
例えば、「平行投影マッピング」は、上記の歪みを補正変換した画像とは同じではないが、曲面形状がなだらかな場合には、曲面の形状に関わらず画像が平行に投影されるので、比較的歪みの少ない曲面画像が得られる。近似的にこのようなCGレンダリングにおけるマッピング技法などを用いて、被印刷物立体を模擬した仮想の多面体立体に、平行投影マッピングで描画貼り付け処理した3次元立体画像データを、曲面歪み補正画像の代替として用いるようにしても良い。
【0134】
[立体物の画像を、同じ形状の立体物に貼り付ける場合]:
また、人物の頭部のような立体形状の被印刷物の表面に、人物の頭や顔の画像などを印刷して貼り付けるなど、印刷画像の被写体と被印刷物が略同じ形状の場合には、前述の[3次元形状データの生成]と同様の方法により、被写体を異なる視点から撮影し、複数枚の画像から被写体の3次元形状データを作成して、被写体の頭や顔の3次元形状モデルと、その各部の部分画像やテクスチャーに基づいて、被印刷物の表面形状と近似させるように模擬した多面体立体の各多角形領域に、対応する部分画像やテクスチャーを貼り合わせると、正面部分だけでなく、様々な視点から見ても、顔の各部の歪みが少なくなる立体画像が生成できる。
[多面体の2次元展開図の作成方法]:
上述のように被印刷物の多面体立体モデルが生成され、また、印刷画像の歪み変換処理がされたら、次には、これらに基づいて、多面体立体の2次元展開図を生成する。
平面に展開できる曲面は「可展面」と呼ばれるものに限られ、それ以外の曲面を展開するには、可展面の集合で近似する必要がある。一つの多面体立体の展開図は何通りも様々なパターンが考えられるが、パターンによって組み立て作業の難易度や作業効率などが異なる。
【0135】
生成された被印刷物立体の表面の3次元形状モデルのデータから、2次元展開図を作成するには、例えば、つながる面(多角形)を順次接続して展開していく方法や、最初はバラバラにした面を順次パーツ(展開図のグループ)にまとめていく方法などにより作成することができるが、もちろん、他の手順を用いても良い。
【0136】
多面体の展開図生成手法については、下記(文献8)などの研究がある。
(文献8):三谷純、鈴木宏正、「集約法による多面体の展開図生成手法」、「図学研究」第39巻4号(通巻110号)、平成17年12月。
【0137】
1)順次接続していく方法(逐次法)では、最初に多面体を構成する面(多角形)の1つを展開平面上に配置し、その後、展開平面上の面に3次元上で接続する面を1つずつ配置していく。新しく配置する面が、既に展開済みの面と重なってしまう場合(干渉)には、干渉が起こらないような別の面を選択して展開を続ける。全ての面が展開平面上に配置された時点で展開が終了する。展開が終了する前に干渉を起こさずに配置できる面が存在しなくなった場合には、まだ展開していない面を1つ選択し、別のパーツ(展開図の集合)として上と同様の展開処理を行なう。
【0138】
2)あるいは、順次まとめていく方法(集約法)では、まず多面体の全ての面(多角形)をバラバラに展開平面に配置する。つまり、最初は、(パーツ数)=(面数)の展開図を作成する。その後、3次元空間で接続している2つの面を展開する2次元平面上で順次接続して、徐々にパーツを大きくまとめていく。接続の際には、パーツの一方を固定し、他方を回転と平行移動によって展開平面上での位置を変更することで1つのパーツに統合する。
【0139】
なお、いずれの方法でも、被印刷体の立体形状が、左右対称な形状である場合には、展開図も左右対称であれば、左右とも同じ組み立て方をできるなど組み立て方が容易になる。そこで、左右対称な位置にある稜線の組を探索し、互いに対象関係の稜線を記憶しておき、ある稜線を介して異なるパーツの結合を行った時に、その稜線に対して左右対称な対となる稜線が存在する場合は、その対となる稜線においても、同様のパーツの結合処理を同時に行なうようにすれば、左右対称に近い展開図が作成できる。
【0140】
図10に、曲面歪みを補正した画像の2次元展開図の生成例を示す。
なお、展開図の組み立ての効率(組み立て易さ)などを、展開図の直線をカットするのに要する時間や、折れ線を折り曲げるのに要する時間、張り合わせるのに要する時間、または、それらの組み合わせから組み立てコストを推算して、コストが小さくなるように、つなげる面や稜線の選択を行なうこともできる。
【0141】
[オイラーの多面体定理]:
また、立体図形を各種の多面体でモデル化するとき、そのモデルがF個の面(surFace)、V個の頂点(Vertex)、E個の辺(Edge)を持っていれば、よく知られているように、「オイラーの多面体定理」により、
(多面体立体)F+V=E+2
が成り立つ。(ただし、多角形図形としての面に穴の領域がない条件)
(例)立方体(6面体)ではF=6、V=8、E=12なので、F+V=6+8=14=E+2、
(例)正20面体ではF=20、V=12、E=30なので、F+V=20+12=32=E+2
【0142】
また、多面体の一つの面(多角形)を切り取って、そこを広げて、互いのトポロジー的な接続条件を満たしながら全体を平面に広げた形を考えると、一つの外枠に囲まれ、多角形が接続した図形(展開図)が得られる。
このような平面図形では、まず面(F)が一つ減って、F+V=E+1となる。以降、連結されている辺を1つ分断する毎に、辺(E)が1つ増えるが、頂点(V)も一つ増えるので両辺は変わらない。最後まで展開されたときに、最初に切り離した面(多角形)もつなげると、面(F)が1つ増えるが、面がn角形のとき、頂点(V)が(n−2)増え、辺(E)が(n−1)増えるので、多面体立体の2次元展開図では、オイラーの定理が次式となる。
(多面体立体の展開図)F+V=E+1
【0143】
また、立方体や球、円柱、円錐、正多面体、(サッカーボールのような)切頭12面体などの半正多面体など、比較的一般的な立体形状や規則的な多面体については、各種多面体の幾何学的な定数や、表面形状の3次元モデルデータ、表面形状の2次元展開図データをあらかじめ作成して、メモリに記憶しておき、それらをメモリから読み出して利用すればよい。
図11に、球や正多面体など、所定の立体形状の2次元展開図の例を示す。
【0144】
以上のように、被印刷物が所定の球や曲面、多面体立体でも、あるいは、自由曲面や凹凸のある立体形状でも、被印刷物の表面に、写真画像などの2次元原稿画像を歪み無く、また、隙間無く、きれいに貼り付けることができる。
【0145】
以上の構成による画像処理装置によれば、以下に列挙する優れた効果を奏する。
すなわち、
1)球面や自由な曲面、その他所定の3次元形状の表面に隙間なく、かつ、画像の欠落部分がなく、画像が連続するように、貼り付けられるので、また人物画像などの写真画像でも、歪みの少ない画像で観察できるので、コップや食器など平坦面や円筒状の曲面だけでなく、様々な曲面や複雑な立体形状の物体にも、デジタルカメラ撮影画像などをきれいに印刷して貼り付けることができる。
【0146】
2)また、様々な曲面や形状の製品や梱包などにも、一般のプリンタを用いて図柄や写真画像などを紙やシートに印刷して、きれいに貼付することができる。
【0147】
3)また、物体に貼り付ける代りに、糊代(のりしろ)付きの展開図として印刷し、印刷された紙やシートから、きれいな写真画像入りの各種の立体形状のペーパークラフトなどを簡単に組み立てることができ、写真画像の利用法や楽しみ方を広げることができる。
【0148】
なお、本発明は上述した実施の形態で説明した構造には限定されず、画像処理装置を構成する各部の形状、構造等を適宜変形、変更し得ることはいうまでもない。
【0149】
また、上述した実施形態では、地球儀などのような球体の球面に貼り付けることができる印刷物を得る場合を例として説明したが、本発明はこれに限らず、たとえば異型形状のコップや食器、その他商品などへの写真画像のプリントやプリント入り製品や梱包の印刷などにも利用して効果を発揮し得るものである。
【0150】
また、本発明装置は、画像データを印刷用に画像処理する画像処理装置や画像処理プログラム、あるいは、それにより生成されて印刷や印刷物を貼付加工された製品や、梱包箱などの印刷体、あるいは、このような画像処理機能やプログラムを組み込んだデジタルカメラやプリンタなどに適用可能であることは言うまでもない。
【図面の簡単な説明】
【0151】
【図1】本発明に係る画像処理装置の一実施形態を示す概略構成図である。
【図2】本発明に係る画像処理装置における処理を説明するためのフローチャートである。
【図3】多視点画像から被写体の3次元形状データの生成処理を説明するためのフローチャートである。
【図4】視点の異なる複数枚の画像による3次元形状データの復元を説明するための図である。
【図5】視体積交差法による3次元形状復元を説明するための図である。
【図6】所定形状の場合の変換処理を例示する図である。
【図7】2次元画像の曲面貼り付け、CGの平行投影マッピングを説明するための図である。
【図8】視点とプロジェクタ、スクリーンの位置関係を示す図である。
【図9】双代レンダリングの手法を説明するための図である。
【図10】曲面歪みを補正した画像の2次元展開図の生成例を示す図である。
【図11】立体形状の2次元展開図を例示する図である。
【符号の説明】
【0152】
1…カメラ撮像手段、2…画像処理手段、3…印刷手段。
【技術分野】
【0001】
本発明は、たとえばデジタルカメラで撮影された写真画像などを、球面や自由曲面、凹凸のあるような様々な3次元形状による立体物の表面などに、隙間無く、かつ、画像の欠落部分が無く、また曲面形状による画像の歪みが少なく画像が見やすくなるように、印刷物を貼付けることができるようにする画像処理装置に関する。
【背景技術】
【0002】
最近は、個人向けPCの発展や、家庭用のカラープリンタやデジタルカメラなどの普及により、一般家庭でも、各種文書やカラー写真画像などを手軽に印刷できるようになってきている。
【0003】
さらに、印刷紙の代りに、専用転写シートに印刷した文字や絵柄、画像を、Tシャツなどなだらかな表面にアイロンで加熱転写したり、あるいは、接着シール付印刷紙に印刷した絵柄や画像を、円筒形のコップや缶など単純でなだらかな曲面に沿って貼付したりすることもできるようになっている。
【0004】
しかし、球体や自由な曲面、複雑な形状、凹凸の大きい物などの表面には、家庭用プリンタで、文字や絵柄、画像などを簡易に印刷したりすることは難しいという問題があった。
【0005】
一方、産業用途では、プラスチック技術が登場した頃、成型品の平面やなだらかな曲面には印刷できても、プラスチック成型の特長である自由で複雑な曲面には、多彩な色や細かな模様の印刷は難しかった。
【0006】
そこで、図柄などを薄膜フィルムにグラビア印刷などで印刷し、水槽に浮かべ、水溶性インクを再ウェット化し、液中で被印刷体面に転写し、フィルムを除去・洗浄し、乾燥させるという、液面を用いるフィルム転写式の曲面印刷法が提案され、以来、プラスチック成型品の曲面や凹凸面にも多彩な色彩や模様、図柄などが印刷できるようになり、自動車の内装品をはじめ、様々な分野で利用されている。
【0007】
その後、熱硬化性インクなどによってオフセット印刷やインクジェット印刷された文字や絵柄を、被印刷体面と反対形状の軟質パッドや弾性体に写し取り、それを被印刷体の曲面上に転写し、加熱して固めるという、乾式のパッド転写式曲面印刷法も提案され、液体槽や洗浄工程無しでも、携帯電話の筐体面など自由な曲面に、細かな模様や絵柄が印刷されている。
【0008】
しかし、上述した従来方法では、産業用途や印刷業者による量産品の曲面印刷などには適しても、前者では、液体槽など大掛かりな設備や専用の印刷機、あるいは、後者でも特殊なインクと被印刷面と反対形状の弾性体などを用いる制約があり、一般の家庭や個人では利用しにくいものであった。
【0009】
ところで、近年、デジタルカメラで撮影された写真画像などを、曲面に印刷したり、シールで貼り付けたりすることが行われるようになってきている(例えば、特許文献1参照)。しかし、このような場合において、曲面の形状によって、画像や絵柄が、膨らんだり凹んだり、歪んでしまったりし、特に人物の顔画像などでは、元の画像と違って見えてしまう難点もある。
【0010】
従来から、このような画像の歪みに関して、たとえば化粧品容器などのなだらかな曲面に、商品名の文字などを印刷する際に、予め格子模様を容器につけて撮影し、撮影画像のエンベロープ(輪郭線)を抽出し、それを反転した歪み補正用エンベロープにより原稿を変形してから印刷することで、原稿の歪みを防止する方法が提案されている(例えば、特許文献2参照)。
【0011】
【特許文献1】特開平09−193528号公報
【特許文献2】特開平09−48170号公報
【発明の開示】
【発明が解決しようとする課題】
【0012】
しかし、上述したエンベロープ(輪郭)の反転処理では、単純な曲面で、かつ、文字等の外形や輪郭の歪みの補正に限られ、自由曲面上での写真画像等の歪みはきれいに補正できなかった。
【0013】
さらに、地球儀などの球面では、地図をできるだけ隙間なく、また、地形の歪みが少なく貼り付けるために、「舟形・多円錐投影法」という地図投影法で作図し、経度30度ずつに分割した12片の舟形地図葉を印刷し、それを切り抜いて貼り付けることにより、略球状の地球儀が製作されている。
【0014】
また、サッカーボールでは、5角形と6角形に裁断された皮革片を、正5角形×12個、正6角形×20個を組み合わせて張り合わせ、球に類似する多面体(「切頂(または切頭)二十面体」という半正多面体)などを形成して、球状のボールが製作されている。
【0015】
そして、このように、2次元平面に印刷した図形を切り抜き、3次元曲面に隙間無く貼り付けたり、各種の多面体で球体を模擬したりする方法は、一般ユーザーでも丁寧に作図工作すれば利用可能であるが、面倒で時間もかかるという問題がある。
【0016】
また、任意の自由曲面や複雑な形状に適用したり、写真画像を地球儀のように形の歪みなく貼り付けたりするのは、難しいという問題もあった。
【0017】
本発明はこのような事情に鑑みてなされたものであり、デジタルカメラ等の撮像手段で撮影された写真画像などの被写体を、被印刷物である球面や自由曲面、凹凸のあるような様々な立体物による被印刷物の表面などに、隙間無く、かつ、画像の欠落部分が無く、また曲面形状による画像の歪みが少なく画像が見やすくなるように、貼り付けることができる印刷物を得る画像処理装置を得ることを目的とする。
【課題を解決するための手段】
【0018】
このような目的に応えるために本発明(請求項1記載の発明)に係る画像処理装置は、球面、曲面、または凹凸をもつ被印刷物の被印刷面に、隙間無く、かつ、画像の欠落部分が無く、また曲面形状による画像の歪みが少なく画像が見やすくなるように、貼り付けることができる印刷物を得る画像処理装置であって、写真画像などの画像データを入力して、または被印刷面の立体表面形状の3次元モデルを作成または選択する手段と、立体表面形状の3次元モデルに応じて、被印刷面の立体表面(またはその一部)を隙間無く埋めるように近似して、複数の多角形(3角形〜6角形などのポリゴン)の組み合わせによる仮想の多面体立体モデルを生成する手段と、立体表面に印刷や貼付けした場合の画像の歪みを補正するために、入力された画像データを、画像処理により、所定の視点位置から仮想の多面体立体モデルの表面に所定の投影変換する処理を行い、それを所定の視点から観察(透視変換)した場合に画像の歪みが少なくなるように、3次元曲面(実際には多面体立体)表面上の画像データに変換する手段と、歪み補正された3次元曲面表面上の画像データを、仮想の多面体立体の表面に貼付け、貼付けた画像を、(多面体立体の表面を構成する)複数の多角形領域に分割する手段と、仮想の多面体立体の表面を構成する各面(多角形)の連結の一部を分解して、2次元平面に展開された表面形状の2次元展開図を生成する手段と、分割された各多角形領域の画像を、2次元展開図中の対応する各多角形の位置と向きにしたがって、それぞれ配置した2次元展開図形式の印刷用画像データを生成する手段と、上記展開図形式の印刷用画像データを、紙やフィルムなどの印刷媒体に印刷するカラープリンタなどの印刷手段とを備えていることを特徴とする。
【0019】
そして、このような構成による画像処理装置によって得られた2次元展開図の外形線を切り抜いて、被印刷物の立体表面(またはその一部)に隙間無く貼り付けると、自由曲面の物体の表面にも、隙間無く、かつ、画像の欠落部分も無く、また曲面形状による画像の歪みが少なく、印刷物を貼付けることができるものである。
【0020】
本発明(請求項2記載の発明)に係る画像処理装置は、請求項1において、前記3次元モデル作成、選択手段は、被印刷物が一般的な立体物である場合には、予め準備したデータベースから3次元形状モデルデータを選択することを特徴とする。
【0021】
本発明(請求項3記載の発明)に係る画像処理装置は、請求項1において、前記3次元モデル作成、選択手段は、被印刷物の立体形状が自由曲面や複雑な立体形状などである場合には、被印刷物を異なる視点から見る複数枚の画像データを準備し、これらの画像データに基づいて立体形状表面の3次元モデルを作成することを特徴とする。
【0022】
換言すれば、上述した画像処理装置において、被印刷面の3次元立体形状表面モデルの生成には、自由曲面や複雑形状の場合には、デジタルカメラ等のカメラ撮像手段により、被印刷面の3次元立体形状を複数の視点位置から撮影し、視点の異なる複数の画像から、「視体積交差法」や、または、「Lucas-Kanade法(勾配法)」と「Tomasi and Kanadeの因子分解法」などにより、3次元立体形状表面モデルを自動的に生成することができるものである。
勿論、立方体や球、円柱、円錐、正多面体など、一般的な立体形状の場合には、これらの一覧表メニューなどから選択し、その寸法のみ入力するようにしてもよい。
【0023】
また、被印刷面の立体表面形状に応じて歪みを補正する画像変換は、自由曲面や複雑形状の場合には、「双対モデリング」などの手法を用いると、変換式を求めることができる。
【0024】
さらに、一つの視点位置から見て、画像全体の歪みが無いような画像に変換することもできるが、被印刷物を様々な視点から見ても、各正面周辺の画像の歪みが少なくなるように、表面を構成する面(多角形)毎に、各面(多角形)の正面(法線方向)に設定した視点位置から見たときに歪みが少なくなるように補正することもできる。
一般的な立体形状の場合には、選択された立体形状の種類に応じて、予め設定された変換式により歪み補正のための変換処理を行なう。
【0025】
なお、上述した説明では、紙や樹脂フィルムに印刷された2次元展開画像の外形線を切り抜いて、被印刷面の立体表面(全体または一部)に隙間無く貼り付けるとしたが、予め裏面に接着シールを付したシール紙に印刷したり、また、柔軟性や可撓性、伸長性のある薄い樹脂フィルムなどに印刷したりするのが望ましい。
さらに、被印刷面の立体表面に近似する多面体立体モデルを生成する際、近似の程度や粗さ、分割の細かさ、分割する多角形領域の数などを選択できるようにすると、後に、切り抜きや貼り付けなどのしやすさ、仕上りの粗さや精度などを調整することができる。
【0026】
また、被印刷面の立体表面に貼り付ける代りに、上記の2次元展開画像に糊代(のりしろ)部分を追加して印刷して、印刷された紙や素材自体を切り抜いて張り合わせて、所望の立体形状のペーパークラフト模型などを組み立てられるようにしてもよい。
【0027】
さらに、被印刷面の立体表面に貼り付ける際、印刷媒体が硬くて、可撓性や伸縮性が小さい素材の場合、複雑な曲面や小さな領域に貼り付けるのが難しくなる。できれば、柔らかく、撓みやすく、伸縮性のある樹脂やシート材などが望ましいが、伸びると多角形の端部やその部分の画像が伸びて歪んでしまう。このような場合においては、展開図の多角形の端部などでは、素材の種類や伸張度に応じて、予めその多角形の端部の形状、および、そこに対応する画像を短く縮寸して調整や補正できるようにすると、貼付け時に伸長された時にちょうどぴったり貼り付けることができるので、綺麗に仕上げることができる。
【発明の効果】
【0028】
以上説明したように本発明に係る画像処理装置によれば、被印刷物としての3次元形状体の球面や曲面等のような各種の形状や物体の被印刷面に合わせて型紙形状を選択し画像の配置の変換を行って印刷プリントを出力するように構成されているから、簡単な構成であるにもかかわらず、以下に列挙する種々優れた効果を奏する。
【0029】
1)被印刷物の球面や自由な曲面、その他所定の3次元形状の表面に隙間なく、かつ、画像の欠落部分がなく、画像が連続するように貼り付けでき、また人物画像などの写真画像でも、歪みの少ない画像で観察できるので、コップや食器など平坦面や円筒状の曲面だけでなく、様々な曲面や複雑な立体形状の物体にも、デジタルカメラ撮影画像などをきれいに印刷して貼り付けることができる。
【0030】
2)様々な曲面や形状の製品や梱包などにも、一般のプリンタを用いて図柄や写真画像などを紙やシートに印刷して、きれいに貼り付けることができる。
【0031】
3)物体に貼り付ける代りに、糊代(のりしろ)付きの展開図として印刷し、印刷された紙やシートから、きれいな写真画像入りの各種の立体形状のペーパークラフトなどを簡単に組み立てることができ、写真画像の利用法や楽しみ方を広げることができる。
【発明を実施するための最良の形態】
【0032】
図1および図2は本発明に係る画像処理装置の一実施形態を示す。
ここで、本発明を特徴づける画像処理装置は、図1に示すように、デジタルカメラ等のカメラ撮像手段1で撮影した被写体の写真画像などを、球面、曲面、凹凸のあるような自由形状をもつ3次元立体物等の被印刷物の表面などの被印刷面に、隙間無く、かつ、画像の欠落部分が無く、また曲面形状による画像の歪みが少なく画像が見やすくなるように、貼り付けできる印刷物を印刷処理するように構成されている。
【0033】
また、この実施形態では、特殊な印刷設備やプリンタを用いずに、一般のペーパー用家庭用プリンタなどの印刷手段3で印刷して、画像などが印刷された曲面形状の物体を、手軽に作成できるようにしている。
【0034】
このような画像処理装置の概略構成を、図1を用いて簡単に説明すると、図中符号1はデジタルカメラ等のカメラ撮像手段であり、このカメラ撮像手段1では被写体、曲面や自由形状の被印刷物を撮影することにより、それぞれの画像データを画像処理手段2に入力するように構成している。なお、このカメラ撮像手段1は、従来から周知の構造をもち、撮影した画像データを記録する画像データ・メモリ等を備えている。
【0035】
符号2で示す画像処理手段は、上述したカメラ撮像手段1で撮影された被写体、被印刷物などの画像データが入力されることにより、または被印刷面の立体表面形状の3次元モデルを作成または選択する手段と、立体表面形状の3次元モデルに応じて、被印刷面の立体表面(またはその一部)を隙間無く埋めるように近似して、複数の多角形(3角形〜6角形などのポリゴン)の組み合わせによる仮想の多面体立体モデルを生成する手段と、立体表面に印刷や貼付けした場合の画像の歪みを補正するために、入力された画像データを、画像処理により、所定の視点位置から仮想の多面体立体モデルの表面に所定の投影変換する処理を行い、それを所定の視点から観察(透視変換)した場合に画像の歪みが少なくなるように、3次元曲面(実際には多面体立体)表面上の画像データに変換する手段と、歪み補正された3次元曲面表面上の画像データを、仮想の多面体立体の表面に貼付け、貼付けた画像を、(多面体立体の表面を構成する)複数の多角形領域に分割する手段と、仮想の多面体立体の表面を構成する各面(多角形)の連結の一部を分解して、2次元平面に展開された表面形状の2次元展開図を生成する手段と、分割された各多角形領域の画像を、2次元展開図中の対応する各多角形の位置と向きにしたがって、それぞれ配置した2次元展開図形式の印刷用画像データを生成する手段等を備えている。
【0036】
ここで、上述した画像処理手段2は、図1に示されるように、CPUや、3次元モデル生成プログラム、2次元−3次元生成プログラム、描画プログラムなどを有するプログラム・メモリを備え、また各種のデータ・メモリや入出力インターフェースなどを備えてなる構成とされている。
【0037】
符号3は、上記展開図形式の印刷用画像データを紙やフィルムなどの印刷媒体に印刷するカラープリンタなどの出力装置であり、前記画像処理手段2で得られた歪み補正した画像の2次元展開図を印刷出力するようになっている。この印刷された展開図は、これをその外形線をしたがって切り抜いて、被印刷物の立体表面(またはその一部)に隙間無く貼り付けできるようになっている。
【0038】
上述したような本発明に係る画像処理装置は、図2に示すような曲面印刷用画像データの生成処理等の画像処理を行うことにより、被写体の撮影写真を、図1に示すように曲面や自由形状の被印刷物の表面に歪みなく貼り付けることができるものである。
【0039】
このような処理を、図2等を参照して以下に説明する。
1)(画像データの入力):
まず、デジタルカメラにより撮影された写真画像など、被印刷物に印刷したい画像データを入力する(S1−3等参照)。なお、PCなどに蓄積記録された画像データや書類データなどを用いても良い。
【0040】
2)(被印刷物立体の撮影、または、立体の種類の選択):
次に、被印刷物の曲面形状や立体形状の3次元モデルを作成するために、被印刷物の立体形状を、デジタルカメラなどで、複数の視点から複数枚撮影する(S7等参照)。
ここで、被印刷物の立体形状が、立方体や球、円柱、円錐、各種の正多面体、半正多面体など、所定の一般的な立体である場合には、一覧表メニューなどから、その立体形状の種類を選択する(S4−6等参照)。
【0041】
3)(立体形状の3次元モデルを生成):
異なる視点から撮影された被印刷物の複数枚の画像データを入力して、複数枚の画像データに基づいて、「視体積交差法」、または、「Lucas-Kanade法」と「因子分解法」などにより、被印刷物立体の3次元形状モデルデータを自動的に生成する(S8等参照)。
ここで、一般的な立体形状である場合には、選択された立体形状の種類に応じて、予め記録された形状モデルデータの中から、被印刷物立体表面の3次元形状モデルデータを自動的に生成する。
【0042】
4)(被印刷物の多面体立体の表面形状モデルの生成):
前記立体表面形状の3次元モデルに応じて、立体表面またはその一部を隙間無く埋めるように近似された複数の多角形の組み合わせによる仮想の多面体立体モデルを生成する(S9−10等参照)。
このとき、近似の精度や粗密の程度、分割の細かさ、分割する多角形領域の数などを選択できるようにすると、後で切り抜きや貼り付けする作業のしやすさ、仕上りの粗さや精度などを調整することができる。
【0043】
5)(画像の曲面歪みの補正):
生成された被印刷物の表面形状を模擬する仮想の多面体立体モデルに応じて、入力画像を画像の歪みを補正した画像データに変換する(S11−17,S18−25等参照)。印刷面の立体表面形状に応じて歪みを補正する画像変換は、自由曲面や複雑形状の場合には、「双対モデリング」などの手法を用いて変換することができる。
例えば、(立体表面に印刷や貼付けした場合の)画像の歪みを補正するために、入力された画像データを、画像処理により、所定の視点位置から仮想の多面体立体モデルの表面に所定の投影(投影変換)を行い、これを所定の視点から観察(透視変換)した場合の画像の歪みが少なくなるように、「双対モデリング」などの手法を用いて、補正変換する。
【0044】
変換後の仮想の多面体立体モデルの表面上に投影されている画像の像を、原稿画像の多面体立体の表面形状の3次元画像データとする。
次に、歪み補正された多面体立体表面形状の3次元画像データを、仮想の多面体立体の表面に貼付け、貼付けた画像を、(多面体立体の各面を構成する)複数の多角形領域に分割する。
【0045】
6)(印刷画像の2次元展開図の生成):
仮想の多面体立体の表面を構成する各面(多角形)の連結の一部を分解して、平面に展開された表面形状の2次元展開図を生成する(S31−33等参照)。そして、仮想の多面体立体表面に貼り付けられた画像も同じく、対応するそれぞれの多角形領域毎に分割する。すなわち、分割された各多角形領域の画像を、2次元展開図中の対応する各多角形の位置と向きにしたがって、それぞれ配置された2次元展開図形式の印刷用画像データを生成する(S34−35等参照)。
【0046】
また、一つの視点位置から見て、画像全体の無いような画像に変換することもできるが、被印刷物を様々な視点から見ても、各正面部分の画像の歪みが少なくなるように、前記表面を分割したそれぞれの多角形毎に、その正面の視点方向から見たときに画像の歪みが少なくなるように補正することもできる。
一般的な立体形状の場合には、それらの選択に応じて、予め設定された変換式により歪み補正のための画像変換処理を行なってもよい。
【0047】
7)(画像の2次元展開図の印刷):
2次元展開図形式の画像データを、入力された被印刷体の大きさ寸法に応じて、縮小または拡大処理し、カラープリンタなどに出力して、紙やフィルムなど印刷媒体に印刷する(S36−37、S39−40等参照)。
また、あらかじめ裏面に接着シールを付したシール紙に印刷したり、また、柔軟性や可撓性、伸長性のある薄い樹脂フィルムなどに印刷したりするのが望ましい。
展開図の多角形の端部などでは、素材の種類や伸張度に応じて、予めその多角形の端部の形状、および、そこに対応する画像を短く縮寸して調整や補正できるようにすると、貼付け時に伸長された時にちょうどぴったり貼り付けることができるので、綺麗に仕上げることができる。
【0048】
8)(ペーパークラフト展開図の印刷):
また、被印刷物に貼り付ける代りに、上記の2次元展開画像に糊代(のりしろ)部分や外形線、山折り線・谷折り線などを付加して印刷して、印刷された紙や素材を外形線に沿って切り抜き、折り線に沿って折り曲げ、糊代で張り合わせて、所望の立体形状のペーパークラフト模型などを組み立てられる(S38,S41等参照)ようにしてもよい。
【0049】
また、以下に、被印刷面の3次元形状モデルの作成方法について、説明する。
すなわち、被印刷物の立体形状が、立方体や球、円柱、円錐、各種の正多面体や半正多面体など、所定の立体形状の場合には、一覧表メニューなどから、その立体形状の種類を選択して、そして選択された立体形状の種類に応じて、予め記録された形状モデルの中から、該当する立体形状表面の3次元モデルデータを読み出す。
ここで、印刷物の立体形状が自由曲面や複雑な立体形状などの場合には、デジタルカメラなどで、被印刷物を、それぞれ異なる視点から複数枚撮影する。
【0050】
そして、撮影された被印刷物の立体形状の視点の異なる複数枚の画像データを入力して、複数枚の画像データに基づいて、「視体積交差法」、または、「Lucas-Kanade法」と「因子分解法」などにより、立体形状表面の3次元モデルを自動的に生成することができる。
【0051】
図3に、被印刷物の曲面形状や立体形状モデルの作成処理のフローを、図4に、視点の異なる複数枚の画像による3次元形状データの復元の生成例を示す。
具体的には、まず、被印刷物の立体形状が撮影された複数枚の画像データ、望ましくは、視点や向き角度などが異なる複数枚の画像データを入力して、大きさや上下の向き、回転などを正規化した後、「Lucas-Kanade法(勾配法)」や、「Kanade-Lucas-Tomasiトラッカー」などにより、特徴点の移動や相違を追跡し、対応点を探索する(S51,52等参照)。
【0052】
次に、各点の移動、距離の深さ、カメラ位置、エッジモーションなどを解析して、カメラの位置や動き情報を求めて、任意の多視点画像とカメラ情報から、3次元形状データを求める(S53−56等参照)。あるいは、参照マーカー等を一緒に写した画像を用いるなど、人工的特徴を付加することによって、カメラ運動情報を求めやすくできる。
【0053】
または、「射影グリッド空間における視体積交差法」などを用いて、3次元ボクセル(立体画素)空間を多数の立体格子に分割し、異なる視点の各画像におけるシルエット画像を3次元ボクセル空間に逆投影して(すなわち、各ボクセルが各画像に投影される場合にそのシルエットに含まれるか否かを判断して)、顔および頭部の3次元データを生成する(S61−66、S57等参照)。
【0054】
または、複数画像における対応点から、「因子分解法」などにより、(計測行列)=(移動行列)×(形状行列)における(移動行列)と(形状行列)とを同時に求め、(形状行列)から、被印刷物の立体表面形状の3次元モデルを生成する等(S58−60,S57等参照)、他の方法を用いても良い。
【0055】
特に、複数枚の撮影画像から3次元形状データを生成する方法について、以下に詳しく説明する。
[画素座標、カメラ座標、画像座標]:
カメラを基準とした3次元空間座標である「カメラ(Camera)座標」と、2次元画像を表現する「画像(Image)座標」とを、カメラ座標系(X,Y,Z)の原点(0,0,0)を光軸上のカメラ中心とし、撮像画像面に平行なX軸、Y軸と光軸方向のZ軸との正規直交座標系として設定すると、カメラ座標が(X,Y,Z)Tである3次元空間の点と、その透視射影として得られる2次元画像の画像座標(x、y)Tには、次式が成り立つ。
【0056】
x=l×X/Z、y=l×Y/Z(ただし、l:カメラの焦点距離)・・・・(1)
ここで、透視射影による3次元空間の像を記述する「画像(Image)座標」と、モニター表示画面などの「画素(Pixel)座標」の間には、個々のカメラに固有の1対1の写像関係がある。
【0057】
複数の画像における点対応からカメラ運動と相対的位置関係(3次元形状)とを復元する場合には、点対応は、まず「画像(Image)座標」で与えられるので、全てのカメラに対して統一的に扱うためには、この「画素(Pixel)座標」と「画像(Image)座標」間の1対1の写像関係を求めること(カメラキャリブレーション)ができれば、「画素(Pixel)座標」と「画像(Image)座標」とを自由に変換できることになる。
【0058】
カメラモデルを表現する透視射影において、複数の画像における点対応からカメラ運動と3次元形状とを求める問題は、非線形写像の逆問題となるので、非線形最適化問題に帰着し、非線形最適化問題はノイズに敏感で、初期値依存性が高く、数値計算が不安定であるなど、問題があるため、安定して3次元形状を復元することは難しい。
そこで、
1)(文献1にあるように)、カメラの位置や姿勢、視点方向などに関する外部情報、すなわち、カメラ運動情報を入力するか、参照マーカーを一緒に写した画像を用いるなど、人工的特徴を付加することによって、カメラ運動情報を求めやすくできる。
【0059】
2)または、(文献2にあるように)、複数の多視点カメラ(または多視点画像)の中から、なるべく直交する関係の2台のカメラ(または画像)を基底カメラとして選択して、基底カメラによる射影グリッド空間を用いて、複数のカメラ間または視点間の相互関係情報を付加するか、または制限して、例えば、カメラ間のエピポーラ幾何関係を表す基底行列F(Fundamental)行列等を用いて、射影グリッド空間上の点(ボクセル)を各カメラ画像へ逆投影し、各カメラ画像のシルエット画像において、各点(ボクセル)が対象物の内部に存在するか外部かを判定して、3次元形状データを復元することができる。
【0060】
3)または、(文献3にあるように)、Tomasi and Kanadeによる「因子分解法」などにより、理想的カメラモデルである透視射影をアフィン射影で近似して、正射影モデル等のアフィン近似射影に基づいた複数の2次元画像からカメラ運動情報と3次元形状情報とを同時に復元する手法などを用いることができる。
【0061】
2次元画像がアフィン近似射影で得られると仮定すると、複数のアフィン近似射影画像における点対応からのカメラ運動と3次元形状の復元問題は、線形写像の逆問題となるので、復元の精度は劣るが、非線形写像の場合に比べて、数値計算を安定して解くことができるようになる。
【0062】
(文献1):藤村恒太ほか、「デジタルカメラ画像から簡単に3次元データを生成するソフトウェア技術」、三洋電機技報(SANYO TECHNICAL REVIEW)、VOL.35、No. 1、JUNE 2003.
(文献2):特開2004-220312(独立行政法人科学技術振興機構)
(文献3):金出武雄ほか、「因子分解法による物体形状とカメラ運動の復元」、電子通信学会論文誌、J76−D−II、No.8(19930825)、pp.1497−1505、1993年。
【0063】
[複数の画像間における点の対応付け]:
まず、複数の画像間における点特徴(輝度や色、輪郭形状、テクスチャーなど)の対応付けを行なう。
3次元空間では遠く離れた点も、2次元画像では近くに投影されることがある。2次元画像におけるわずかな誤差が3次元空間での認識や理解に重大な影響を及ぼすので、複数の画像間における点の対応を精度良く行なう必要がある。
【0064】
複数の画像間における特徴点の対応付けには、「Lucas-Kanade法(勾配法)」(1981年)や、「Kanade-Lucas-Tomasiトラッカー」(Shi and Tomasi、1994年)などの手法を用いることができる。時間的に離れた画像を事前知識無しに対応付けるのは難しいが、複数の点で対応が既知であれば、同一の3次元空間を撮影した多視点の複数画像間の幾何的な関係(エピポーラ幾何学)を用いて、他の対応点の存在可能な領域を絞りこむことができる。
【0065】
例えば、複数のフレーム画像間における対応や追跡には、一般に、見え方(局所画像)、または、エッジ(輪郭)、色ヒストグラムなどの画像特徴の類似(相関)や相違に基づいて、隣接する他フレーム画像との間で、最も類似する領域を探索し、探索された点へ対象物が移動したと判定する方法(ブロックマッチング)が良く用いられる。
【0066】
つまり、座標x=(x,y)における画素値I(x)毎に、移動量(変位)d=(dx,dy)を逐次変えながら、次式であらわされるような
差分二乗和(二乗誤差)ε(d)=Σ{It(x+d)−It-1(x)}2・・・・(2)
もしくは、差分絶対値和ε(d)=Σ|It(x−d)−It-1(x)|
もしくは、相互相関
γ(d)=Σ{It(x−d)−I ̄t}{It-1(x)−I ̄t-1}/|It(x−d)−I ̄t||It-1(x)−I ̄t-1|
などを計算し、その中から、
相違度最小d=min{ε(d)}、
または、類似度(相関)最大d=max{γ(d)}・・・・(3)
となる変位dを求めれば良い。
【0067】
しかし、これを全探索すると、計算量が多くなったり、変位量が離散的で連続しなかったりするなどの難点がある。局所画像を回転や拡大縮小してマッチングする場合には、さらに膨大な計算が必要になる。
このとき、「Lucas-Kanade法(勾配法)」では、暫定解の周りの勾配(傾き)にもとづいて、山登り(または山降り)することにより、極大値(または極小値)を効率よく求めることができる。
【0068】
すなわち、差分二乗和(二乗誤差、SSD)の勾配を、
ε=Σ{I(x+δx,y+δy,t+δt)−I(x,y,t)}2・・・・(4)
とすると、この第1項のテーラー展開は、
I(x+δx,y+δy,t+δt)
=I(x,y,t)+δx{∂I(x,y,t)/δx}+δy{∂I(x,y,t)/δy}+δt{∂I(x,y,t)/δt}+・・・
このとき、2次以降の項を、変位が微小であるとして無視できる(x周辺で線形近似できる)とすると、
δx=dx、δy=dy、δt=1として、
ε=Σ{dxIx(x,y,t)+dyIy(x,y,t)+It(x,y,t)}2
・・・・(5)
ただし、上式で、Ix(x,y,t)=∂I(x,y,t)/δx、Iy(x,y,t)=∂I(x,y,t)/δy、It(x,y,t)=∂I(x,y,t)/δtとする。
【0069】
相違度最小の変位d=minεは、∂ε/∂dx=0、∂ε/∂dy=0となるdを求めれば良いので、
【数1】
となる。
【0070】
ここで、
【数2】
とおくと、ATAd−ATb=0から、ATAd=ATbとなり、
【数3】
となるので、ATAが正則なとき、dは解を持ち、
d=minε=(ATA)-1 ATb・・・・(9)
となり、全探索しなくても、相違度最小となる変位量を求めることができる。特徴点検出と上記のような追跡法とを統合した手法は、「Kanade-Lucas-Tomasi(KLT)トラッカー」と呼ばれている。
ただし、上記の式で、ATは行列Aの転置行列、(ATA)-1は(ATA)の逆行列を表わす。
【0071】
次に、対象物の3次元形状データを生成する。
[3次元形状データの生成(1)--カメラ位置情報や参照マーカーを用いる方法]:
例えば、全周囲360度からの多視点角度から、または、周囲に配した複数台のカメラから撮影した画像データを入力して、対象物の3次元形状データを作成する場合には、予めカメラを所定の位置や角度に配して撮影し、カメラ位置情報が既知のカメラで撮影された複数枚の多視点画像を用いるか、あるいは、例えば回転台に印刷された参照マーカーと、回転台に載せた対象物体とを一緒に撮影した複数枚の画像から、撮影時のカメラ位置を自動的に計算する。
【0072】
また、得られたカメラ位置情報と物体画像とから、形状とテクスチャーの3次元情報を自動計算し、デジタルカメラで撮影した画像から、3次元データを生成する。対象物を撮影した異なる視点の10〜20枚程度の撮影画像データを入力して、カメラ位置の計算、形状情報の生成などの一連の処理を実行して、3次元形状データを作成することができる。
【0073】
すなわち、カメラ位置の計算では、例えば、座標系におけるカメラの3次元位置パラメータ(回転成分α,β,γと平行移動成分(x,y,z)を、Hough変換(注1)などに基づいて計算する。つまり、撮影された画像から、参照マーカーを抽出し、抽出された参照マーカーの任意の3点と、あらかじめ登録されている参照マーカー中の任意の3点の位置関係を組み合わせて決定される連立方程式を解くことにより、位置パラメータを計算する。
【0074】
(注1)Hough変換(ハフ変換、ヒュー変換):エッジ画像から直線を求める問題等において多く用いられる方法で、エッジ画像中の各々の点(x,y)について、それがある直線上にある点と仮定した場合に可能性のある全ての直線を、極座標ρ=x cosθ+y sinθによるパラメータ空間(ρ,θ)へ曲線として投票し、最終的にパラメータ空間においてピークとなる(ρ,θ)が、求める直線のパラメータとして得られる。
【0075】
形状情報の生成では、単色の背景紙などを使用して対象を撮影し、指定した背景の色情報を用いて物体と背景を分離し、対象物のシルエット(輪郭)の抽出を行なう。
【0076】
次に、カメラの位置情報と対象物の2次元輪郭情報に基づいて、3次元ボクセル空間へのボーティング(投票)処理により、3次元形状を再構成し、得られたボクセルデータから、ポリゴン(多角形)データ等へ変換し、三角ポリゴン表現形式やSSF形式、もしくは、VRMLやXVL、IGES、STL、PLYなどの各種3次元形状データとして出力する。
【0077】
このような対象物を載せる回転台や参照マーカー等は用いにくい場合には、カメラに内蔵して設けたGPS測位装置や電子コンパス、3軸加速度センサ、傾斜計センサ等により計測された位置や角度、姿勢情報や、別のマーキング方法や人工的特徴を用いて、カメラの位置情報を求めてもよい。
または、被印刷物形状がなだらかな曲面なら、2台のカメラを所定寸法(基線長d)だけ離して配したステレオカメラで撮影した画像データから、もしくは、1台のカメラでも、所定寸法(d)だけ視点を変えて撮影した2枚の画像データから、三角測量方式で3次元形状データを求めてもよい。
【0078】
すなわち、基線をx軸、カメラの光軸方向をz軸とすると、点Pの座標(x、y、z)の観測値として、各カメラ1、2における基線と点Pの方向との角度α1、α2が得られたとき、点PのX−Y面に対する傾斜角(仰角)をθ、既知の基線長をdとすると、点Pの座標(x、y、z)は、次式より求められる。
【0079】
x=d(tanα1−tanα2)/2(tanα1+tanα2)、
y=d・tanα1・tanα2・sinθ)/(tanα1+tanα2)、
z=d・tanα1・tanα2・sinθ)/(tanα1+tanα2)、
・・・・(10)
【0080】
[3次元形状データの生成(2)--視体積交差法]:
あるいは、複数の多視点からの画像に対して、「視体積交差法」を用いても、3次元形状モデルの生成を行なうことができる。
【0081】
図5に、視体積交差法による3次元形状復元の概念図を示す。
視体積とは、視点を頂点とし、対象物のシルエットを断面とする錐体のことで、「視体積交差法」は、全ての視点における対象物の視体積の共通部分を求めることにより、対象物の形状を復元する手法である。
【0082】
視体積交差法では、実空間内に設置した複数台(または複数の位置)のカメラで撮影した画像から、物体のシルエットを抽出し、空間に逆投影し、シルエットの交わりを計算することによって、対象物の3次元形状モデルを求めることができる。
【0083】
複数の多視点画像から3次元モデルを生成する手順は、次の通りである。
1)形状を構成する3次元空間(ボクセル空間)を立方体格子に分割する。
2)各画像のシルエット(輪郭)画像を入力し、各ボクセルに対して、正射影による逆投影を行い、各ボクセル上に当該画像のシルエットが存在するか、しないかを判定する。
3)最終的に存在するボクセル集合を、3次元形状とみなす。
4)3次元形状の内部にあるボクセルを削除する。
【0084】
[3次元形状データの生成(3)--因子分解法]:
上記のような参照マーカーやカメラ位置のキャリブレーション処理を用いずに、複数の多視点カメラ画像や連続動画像だけから3次元形状データを生成する方法として、因子分解法がある。
一般に、カメラ位置や視点方向の制限も設けずに、対象物周囲の任意の複数枚の2次元画像から、対象物の3次元形状を求めるには、膨大な計算処理が必要で、解も不安定になる。
【0085】
「因子分解法(Factorization)」(Tomasi and Kanade(金出武雄)、1992年)では、実際のカメラモデルである透視射影をアフィン射影で近似することにより、問題を簡略化し、数値計算を高速かつ解を安定化させることができる。また、複数のアフィン近似射影画像から、カメラ運動と対象物体の立体形状とを同時に復元できる方法として知られている。
【0086】
すでに、上記の[複数の画像間における点の対応付け]のステップにより、複数の画像における点特徴の対応付けが求められ、画像座標として与えられているとする。
アフィン近似射影においては、カメラ撮影による写像は、3次元空間の対象物から、2次元画像へのカメラの位置と方向によって決まるアフィン射影となる。
【0087】
画像がM枚、特徴点がN個与えられるとき、N個の3次元座標のM個のアフィン射影によるMN個の画像座標が得られるとすると、因子分解法では、このMN個の条件を行列の形に並べて、複数の2次元画像からの3次元形状復元問題を単純な形で表現することができる。すなわち、
(計測行列)=(運動行列)×(形状行列)・・・・(11)
ここで、計測行列はMN個の画像座標を並べた(2M×N)行列、運動行列はM個のアフィン射影の表現行列を並べた(2M×3)行列、形状行列はN個の特徴点の3次元座標を並べた(3×N)行列である。
つまり、複数の2次元画像からの3次元形状を復元するには、計測行列を因子分解できればよい。
【0088】
このように、透視射影によって得られた計測行列の成分からアフィン近似射影により投影されたとき得られる計測行列を推定できれば、後は、因子分解法のアルゴリズムにしたがって、計測行列を運動行列と形状行列の積に分解するだけで、カメラの運動情報と物体の3次元形状とを復元することができる。
ただし、画像座標が正規直交基底による表現であるため、正しい復元解を得るには、画像座標の基底が正規直交基底となるように分解する必要がある。
【0089】
[アフィンカメラ・モデル]:
対象の3次元物体のN個の特徴点{Pα}を、M枚の画像に渡って追跡撮像し、第κ(カッパ)画像におけるα(アルファ)番目の特徴点Pαの画像座標を(xκα,yκα)(κ=1,・・・,M、α=1,・・・,N)とする。
そして、その運動履歴を次の2M次元ベクトル(軌跡ベクトル)で表す。
Pα=(x1α y1α x2α y2α・・・・xMα yMα)・・・・(12)
【0090】
これによって各特徴点の軌跡を2M次元空間の1点と同一視できる。便宜上、画像番号κを「時刻κ」と呼ぶ。
カメラの光軸をZ軸とするカメラXYZ座標系をとり、これに相対的にシーン(被写体)が運動すると解釈する。または、静止したシーン(被写体)に対してカメラが相対的に運動すると考えても同等である。
【0091】
シーン中に3次元座標系を任意に固定し、特徴点Pαのそのシーン座標系に関する3次元座標を(aα,bα,cα)とする。時刻κでのシーン座標系の原点と各座標軸の基底ベクトルをカメラ座標系で表したものをそれぞれ、tκ、{iκ,jκ,kκ}とすると、特徴点Pαの時刻κにおける3次元位置rκαは、カメラ座標系では次式となる。
rκα=tκ+aαiκ+bαjκ+cαkκ・・・・(13)
【0092】
平行投影または弱透視投影や疑似透視投影を抽象化(モデル化)したアフィンカメラは、3次元の点が次のように画像上に投影されると仮定する。
(xκα,yκα)T=Pκαrκα+qκ・・・・(14)
ここにPκα,qκはそれぞれ時刻κでのカメラの位置や内部パラメータによって定まる(2×3)行列および2次元ベクトルである。式(13)を代入すると、式(14)は次のように書ける。
(xκα,yκα)T=m’0κ+aαm’1κ+bαm’2κ+cαm’3κ
・・・・(15)
【0093】
m’0κ、m’1κ、m’2κ、m’3κは時刻κでのカメラの位置や内部パラメータで決まる2次元ベクトルである。これを時刻κ=1,・・・,Mにわたって縦に並べると、前述式(12)の軌跡ベクトルPαは次のように書ける。
Pα=m0+aαm1+bαm2+cαm3・・・・(16)
ここで、mi(i=0,・・・,3)は、m’iκを時刻κ=1,・・・,Mに渡って縦に並べた2M次元ベクトルである。
上式は、すべての軌跡ベクトルPαが2M次元空間中でm0を通り、{m1,m2,m3}の張る「3次元アフィン空間」に含まれることを表している。これを「アフィン空間拘束条件」と呼ぶ。
【0094】
[3次元形状モデルの復元処理の流れ]:
因子分解法により、観測データ{Pα}から3次元復元する計算は、次の4ステップから成る。
(1)軌跡ベクトル{Pα}に、3次元アフィン空間を最小二乗法などにより当てはめる。
(2)当てはめた3次元アフィン空間から、ベクトルm0,m1,m2,m3を計算する。カメラモデルに依存する計量条件を用いる。
【0095】
(3)得られたm0,m1,m2,m3から各時刻κのシーン座標系の位置tκと向き(iκ,jκ,kκ)を計算する。これは、各時刻κにおけるカメラの位置と向きに相当する。
ここで、(iκ,jκ,kκ)が正規直交系であることから、これらを並べた行列R={iκ,jκ,kκ}が回転行列であるという非拘束条件を用いる。このような回転の最適当てはめ問題は、いわゆる特異解分解により解決できる。
(4)各特徴点の3次元座標(aα,bα,cα)を計算し、式(13)より、立体形状の3次元位置rκαを計算する。ここでは、
J=Σα||Pα−m0−aαm1−bαm2−cαm3||2・・・・(17)
を最小にすればよい。これは、(aα,bα,cα)の2次式であるから、線型方程式を解いて解が求まる。
【0096】
このようにして、複数枚の撮影画像の計測行列データ(2M次元の軌跡ベクトル{Pα}(α=1〜N))から、カメラの運動情報を含む運動行列データ(特徴点の重心の並進ベクトル{tκ}と回転行列{Rκ}(κ=1〜M))と、物体の3次元形状情報を含む形状行列データ(各特徴点の3次元位置{rα}(α=1〜N))とを、同時に復元することができる。
【0097】
因子分解法による3次元復元の実際の計算アルゴリズムについては、(文献4)、(文献5)などに、詳しい解説があるので、ここでは詳しい説明を略する。
【0098】
(文献4):藤木 淳(産総研)、「点対応を用いた複数の2次元画像からの3次元形状復元 −因子分解法の数理−」、統計数理、第49巻第1号、pp77〜107、2001年。
(文献5):金谷 健一、菅谷 保之(岡山大学工学部)、「因子分解法の完全レシピ」、電子情報通信学会技術報告、PRMU2003-118、NC2003-49、2003年10月。
【0099】
[曲面印刷における画像歪みの補正方法]:
[3次元データの座標変換]:
一般に、3次元空間における回転操作や縮小、拡大、平行移動、透視変換などの座標変換処理を、繰り返し処理するには、マトリクス(行列)演算で行なうのが適している。
3次元データに変換行列{T}により座標変換した後の座標(x’,y’,z’)は、射影問題を解くときに都合が良いように、空間を表す三要素のベクトルに一要素を加えた同次座標形式を用いると、次式で表わすことができる。
同次座標では、[X Y Z H]=[x y z 1]・T
通常座標では、[x’ y’ z’ 1]=[X/H Y/H Z/H 1]
・・・・(18)
このとき、変換行列{T}の一般形は、次式で表される。
【0100】
【数4】
【0101】
変換行列{T}の小行列である左上(3×3)正方マトリクス(要素:a〜j)は、スケーリング(拡大、縮小)、回転、および、線断などの変換を、(1×3)の行マトリクス(要素:l,m,n)は平行移動を、(3×1)の列マトリクス(要素:p,q,r)は透視変換を、(1×1)の要素(s)は全体スケーリング(拡大、縮小)変換を行なう。
【0102】
[投影、透視変換]:
3次元形状を平面に投影する場合には、
1)例えば、平行投影(直交投影、正射影、parallel projection)の場合には、空間内にあるベクトルを考え、それに平行に物体上の一点を画像平面上の一点へ投影する。(x−y平面に平行な)z=nの面を投影面とすると、変換行列は次式となる。
【0103】
【数5】
【0104】
2)一方、透視変換(遠近投影、perspective projection)の場合には、投影面がx−y平面で、投影中心(視点)がz軸上(原点から距離R)にある場合、対象物の点P(x,y,z)が投影面に投影されたときの点をP’(x’,y’,z’)とすると、略ピンホールカメラと同様に、
x’=x{R/(R−z)}、y’=y{R/(R−z)}・・・・(21)
【0105】
これを同次座標で表わすと、次式となる。
【数6】
【0106】
上式から、H=1−(z/R)=(R−z)/Rが得られるから、各要素をHで割って正規化すると、透視変換後の同次座標は、次式となり、近いものの方が大きく投影されて遠近感が得られる透視図が作図できる。
【0107】
【数7】
【0108】
[曲面への投影]:
さらに、平面の代りに曲面に投影する場合には、同4次元座標表現を用いた各種の行列演算により行われ、ポリゴンモデル上の頂点を[x y z 1]、変換後の頂点を[x’ y’ z’ 1]とすると、一般に次式のように表わすことができる。
[x’ y’ z’ 1]=[x y z 1]・W・V・P・・・・(24)
ただし、{W}はワールド変換行列、{V}はビュー変換行列、{P}は射影変換行列。ワールド変換行列は、オブジェクト座標系からワールド座標系への変換行列であり、ビュー変換行列は、ワールド座標系からカメラ座標系への変換(透視変換)行列であり、射影変換行列は、カメラ座標系から射影空間への変換(投影変換)行列である。
【0109】
[曲面投影歪みの補正]:
次に、曲面に印刷したり、印刷物を被印刷物の曲面に貼り付けたりする場合の、印刷画像の「曲面歪み」の補正方法について説明する。
例えば、図6に、所定形状の場合の変換処理を示すように、被印刷物が球面や所定の既知の曲面形状である場合には、それに対応した変換式により補正変換や逆変換を行なうことができる。
【0110】
この図のような球面に平面画像を貼り付けると、凸面上に画像の中央が膨らんで見えるので、人物の顔などの場合には太った丸顔になってしまうなど、歪みが目立ってしまう。
このとき、元の画像上の点(x、y)は、次の点(x’、y’)の座標位置に変換される。
x'=r sin(xπ/2r)、
y'=r sin(yπ/2r)、(ここで、rは球面の半径)・・・・(25)
このような変換式が分かっている形状の場合には、元の画像に、予め次のような逆変換を施してから球面に貼り付ければ、球面に貼り付けたときに、ちょうど元の画像と同様に見えるので、画像の曲面歪みが補正されることになる。
【0111】
x=(2r/π)sin-1(x'/r)、
y=(2r/π)sin-1(y'/r)、(ここで、rは球面の半径)・・・・(26)
【0112】
図7(a)〜(d)に、2次元画像の曲面貼り付けによる歪みや、CGレンダリング処理における「平行投影マッピング」の例を示す。
例えば、プロジェクタなどで映像を曲面スクリーンなどに投影する際にも、視点やスクリーンとの相対位置、角度、スクリーンの表面形状等によって、投影された画像と観察者の眼(網膜)に写る画像とが異なってしまう「投影歪み」が生じる。
【0113】
また、バーチャルリアリティなど仮想環境で、CGレンダリング(描画)された画像を提示する場合、観察者の位置から見えるべき仮想空間をレンダリングして映像を生成し、観察者の網膜に提示する場合には、そのまま投射したのでは正しい網膜像が観察されないので、あらかじめ画像を変形することにより歪みを補正したい場合がある。また、観察者が移動する場合も、画像の変形を動的に変化させる必要がある。
【0114】
スクリーンが平面であれば、画像の線形的な変形や視体積の設定により補正は比較的容易だが、自由曲面形状を持つスクリーンの歪み補正は、一般に複雑で難しい。
このような場合に、「双対レンダリング(Duality Rendering)」という手法が提案されている(文献6)。
【0115】
(文献6):Ramesh Raskar、ほか、“The Office of the Future: A Unified Approach to Image-Based Modeling and Spatially Immersive Displays”, Proceedings of SIGGRAPH '98, pp.179-188, ACM-SIGGRAPH, 1998.
(文献7):近藤大祐、木島竜吾(岐阜大学)、「双対レンダリングを用いた自由曲面ディスプレー」、日本バーチャルリアリティ学会第7回大会論文集、2002年9月。
【0116】
[双対レンダリング手法]:
(文献7)の解説に沿って、「双対レンダリング」による投影歪みの補正の仕組みについて、説明する。
図8に、例えば、曲面スクリーンなどに投影する際の、視点とプロジェクタの関係を示す。
【0117】
図中のqは、プロジェクタで投射する画像上の点を表す2次元座標とし、rを観察者の網膜上に写る像点の2次元座標、sをスクリーン上の点とすると、qは、投影変換Pによってsに変換され、さらにsは、透視変換Vによってrに変換される。
s=P(q)、r=V(s)・・・・(27)
よって、
r=V(P(q))・・・・(28)
上式は、投射された映像qが、PとVの変換によって歪められた結果rが網膜像として観察されることを示す。
【0118】
歪みを補正するためには、逆に提示したい画像rから投射すべき画像qを求めればよい。
つまり、qは、VとPの逆変換V-1とP-1を用いて、次式で表わせる。
q=P-1(V-1(r))・・・・(29)
しかし、スクリーンが自由曲面の場合には、V、Pは非線形な変換になるので、逆変換を直接解くのは一般に困難である。このため、「双対レンダリング」という手法が提案され、これによって上記の逆変換を行なうことができる。
【0119】
図9に、「双対レンダリング」の手法における画像の生成から提示までの流れを示す。
図中で、(a)は、観察者に提示する仮想空間である。
観察者の視点位置を計測し、その位置に仮想カメラVC1を設定してレンダリング(描画)することで、観察者から見えるべき目的画像IMG1が得られる。
【0120】
ここで、実世界{図9中の(c)}に注目すると、観察者が網膜像として見ているのはスクリーン上に一度投影された画像で、IMG1そのものではない。
網膜像がIMG1と同一になるためには、投影歪みを補正した画像を求め、プロジェクタへ入力する必要がある。図9中(b)の仮想空間2は、歪み補正処理を行なうために想定した空間である。
【0121】
この空間にはモデリングされたスクリーンVSがあり、実空間の観察者の視点位置に仮想プロジェクタVP1を配置し、また実世界のプロジェクタの位置には仮想カメラVC2を配置する。
先に生成された画像IMG1をVP1から仮想スクリーンに投射し、仮想カメラVC2を視点としてレンダリングする。最終的に生成される画像IMG2は、IMG1を変形して歪み補正を施した画像となっている。
【0122】
上記の方法により歪み補正を行なえる理由は、投影変換Pの逆変換P-1はプロジェクタを視点とした透視変換に言い換えることができ、反対に透視変換Vの逆変換V-1は視点から投射する投影変換と言い換えることができるからである。
【0123】
図9の(b)の仮想空間2は、視点(カメラ)とプロジェクタの機能を逆転することでV-1、P-1にあたる変換を画像に施していることに相当する。そして、施された変換は図中(c)の実空間で投影歪みP、Vと相殺されて、最終的には歪みのない、元の画像が網膜像として観察される。
【0124】
プロジェクタの場合には、原稿画像の代りに、この補正された画像を用いて投射すれば、スクリーン上の画像が曲面補正されて、観察者からは、元の原稿画像のような曲面歪みが補正された画像を観察できる。
【0125】
曲面への画像の印刷や貼付け時における画像の歪みも、上記の「双対レンダリング」と同様の手法を用いて、補正変換することができる。
【0126】
ただし、上記の曲面への2次元画像の投影において、仮想カメラや網膜像への透視変換Vについては、プロジェクタの場合も、印刷貼り付けの場合も同様の変換でよい。しかし、プロジェクタからの投射による投影変換Pでは、1点から光線が放射線状に投射されるが、印刷物を立体物の曲面に沿って貼り付ける場合の投影変換P’では、立体物の表面を包むように投影されるという違いがある。
【0127】
しかし、印刷貼付けの場合にも、入力された画像データを、所定の視点位置から仮想の多面体立体モデルの表面に、前述の「透視投影」または(視点を無限遠においた)「平行投影」などで、(プロジェクタ同様に)投影変換を行い、これを所定の視点から観察(透視変換)した場合の画像の歪みが少なくなるように、前述の「双対モデリング」により、投影する画像を補正変換し、補正された原稿画像を多面体立体モデルの表面に投影した画像を求めると、これは、歪みが補正されて曲面に印刷された画像に相当し、多面体立体の表面に沿った形の3次元の画像データとなる。
【0128】
この3次元画像データを、仮想の多面体立体の表面に貼付け、貼付けた画像を、(多面体立体の各面を構成する)複数の多角形領域に分割する。
仮想の多面体立体を複数の面(多角形)毎に分割し、かつ、展開できる範囲で連結して、平面上に展開して、2次元展開図を作成する。また、同じく、仮想の多面体の曲面に貼り付けられた画像データも、2次元展開図上の対応する多角形の領域に、位置および向きにしたがって、再配置すれば、2次元展開図形式の画像データが得られる。
これを、外形線に沿って切り抜き、被印刷物の曲面や凹凸面に貼り付ければ、画像の歪みが補正され、かつ、曲面に沿って、隙間なく貼り付けることができる。
【0129】
なお、上記で、曲面状に貼り付けた画像の歪みは、視点位置によって異なって見える。このため、被印刷物の用途やその大きさに応じて、観察されるときに最も正面となり、最適な観察距離となる視点位置(視点方向と距離)を一つ選択して、その視点から見て、画像全体に歪みが無いような画像に変換することができる。また、同じ方向でも視点を無限遠として、前述の平行投影を行っても良い。
【0130】
または、被印刷物立体を様々な視点から見ても、各正面部分の画像の歪みがなるべく少なくなるようにすることもできる。前記の多面体立体表面を分割した多角形の領域の画像毎に、その多角形の正面の視点方向(各多角形の面に垂直な法線方向)から見たときに、各領域の画像の歪みがそれぞれ少なくなるように補正し、それをつなぎ合わせると、様々な視点から観察したときに、それぞれの正面領域の画像は歪みが少なくなるようにできる。
【0131】
[ラップ・マッピングと平行投影マッピング]:
例えば、CG(コンピュータ・グラフィックス)分野におけるレンダリング(描画)処理では、立体物表面への2次元画像などの貼り付けは、テクスチャー・マッピング(貼り付け、texture mapping)処理として、各種の技法が知られている。
【0132】
このうち、図7に示すように、円柱状の立体に、包むように2次元画像を貼り付けたCGレンダリング画像を生成するには、「円柱極座標マッピング」や「ラップ・マッピング(wrap mapping)」などのマッピング技法が知られている。また、2次元画像を平行に光線をあてたように平行投影する「平行投影マッピング」や、立体物を金属など鏡面(ミラー)と考えて、その鏡面に映して見える鏡像を計算して貼り付ける「リフレクション・マッピング(reflection mapping)」なども知られている。
【0133】
例えば、「平行投影マッピング」は、上記の歪みを補正変換した画像とは同じではないが、曲面形状がなだらかな場合には、曲面の形状に関わらず画像が平行に投影されるので、比較的歪みの少ない曲面画像が得られる。近似的にこのようなCGレンダリングにおけるマッピング技法などを用いて、被印刷物立体を模擬した仮想の多面体立体に、平行投影マッピングで描画貼り付け処理した3次元立体画像データを、曲面歪み補正画像の代替として用いるようにしても良い。
【0134】
[立体物の画像を、同じ形状の立体物に貼り付ける場合]:
また、人物の頭部のような立体形状の被印刷物の表面に、人物の頭や顔の画像などを印刷して貼り付けるなど、印刷画像の被写体と被印刷物が略同じ形状の場合には、前述の[3次元形状データの生成]と同様の方法により、被写体を異なる視点から撮影し、複数枚の画像から被写体の3次元形状データを作成して、被写体の頭や顔の3次元形状モデルと、その各部の部分画像やテクスチャーに基づいて、被印刷物の表面形状と近似させるように模擬した多面体立体の各多角形領域に、対応する部分画像やテクスチャーを貼り合わせると、正面部分だけでなく、様々な視点から見ても、顔の各部の歪みが少なくなる立体画像が生成できる。
[多面体の2次元展開図の作成方法]:
上述のように被印刷物の多面体立体モデルが生成され、また、印刷画像の歪み変換処理がされたら、次には、これらに基づいて、多面体立体の2次元展開図を生成する。
平面に展開できる曲面は「可展面」と呼ばれるものに限られ、それ以外の曲面を展開するには、可展面の集合で近似する必要がある。一つの多面体立体の展開図は何通りも様々なパターンが考えられるが、パターンによって組み立て作業の難易度や作業効率などが異なる。
【0135】
生成された被印刷物立体の表面の3次元形状モデルのデータから、2次元展開図を作成するには、例えば、つながる面(多角形)を順次接続して展開していく方法や、最初はバラバラにした面を順次パーツ(展開図のグループ)にまとめていく方法などにより作成することができるが、もちろん、他の手順を用いても良い。
【0136】
多面体の展開図生成手法については、下記(文献8)などの研究がある。
(文献8):三谷純、鈴木宏正、「集約法による多面体の展開図生成手法」、「図学研究」第39巻4号(通巻110号)、平成17年12月。
【0137】
1)順次接続していく方法(逐次法)では、最初に多面体を構成する面(多角形)の1つを展開平面上に配置し、その後、展開平面上の面に3次元上で接続する面を1つずつ配置していく。新しく配置する面が、既に展開済みの面と重なってしまう場合(干渉)には、干渉が起こらないような別の面を選択して展開を続ける。全ての面が展開平面上に配置された時点で展開が終了する。展開が終了する前に干渉を起こさずに配置できる面が存在しなくなった場合には、まだ展開していない面を1つ選択し、別のパーツ(展開図の集合)として上と同様の展開処理を行なう。
【0138】
2)あるいは、順次まとめていく方法(集約法)では、まず多面体の全ての面(多角形)をバラバラに展開平面に配置する。つまり、最初は、(パーツ数)=(面数)の展開図を作成する。その後、3次元空間で接続している2つの面を展開する2次元平面上で順次接続して、徐々にパーツを大きくまとめていく。接続の際には、パーツの一方を固定し、他方を回転と平行移動によって展開平面上での位置を変更することで1つのパーツに統合する。
【0139】
なお、いずれの方法でも、被印刷体の立体形状が、左右対称な形状である場合には、展開図も左右対称であれば、左右とも同じ組み立て方をできるなど組み立て方が容易になる。そこで、左右対称な位置にある稜線の組を探索し、互いに対象関係の稜線を記憶しておき、ある稜線を介して異なるパーツの結合を行った時に、その稜線に対して左右対称な対となる稜線が存在する場合は、その対となる稜線においても、同様のパーツの結合処理を同時に行なうようにすれば、左右対称に近い展開図が作成できる。
【0140】
図10に、曲面歪みを補正した画像の2次元展開図の生成例を示す。
なお、展開図の組み立ての効率(組み立て易さ)などを、展開図の直線をカットするのに要する時間や、折れ線を折り曲げるのに要する時間、張り合わせるのに要する時間、または、それらの組み合わせから組み立てコストを推算して、コストが小さくなるように、つなげる面や稜線の選択を行なうこともできる。
【0141】
[オイラーの多面体定理]:
また、立体図形を各種の多面体でモデル化するとき、そのモデルがF個の面(surFace)、V個の頂点(Vertex)、E個の辺(Edge)を持っていれば、よく知られているように、「オイラーの多面体定理」により、
(多面体立体)F+V=E+2
が成り立つ。(ただし、多角形図形としての面に穴の領域がない条件)
(例)立方体(6面体)ではF=6、V=8、E=12なので、F+V=6+8=14=E+2、
(例)正20面体ではF=20、V=12、E=30なので、F+V=20+12=32=E+2
【0142】
また、多面体の一つの面(多角形)を切り取って、そこを広げて、互いのトポロジー的な接続条件を満たしながら全体を平面に広げた形を考えると、一つの外枠に囲まれ、多角形が接続した図形(展開図)が得られる。
このような平面図形では、まず面(F)が一つ減って、F+V=E+1となる。以降、連結されている辺を1つ分断する毎に、辺(E)が1つ増えるが、頂点(V)も一つ増えるので両辺は変わらない。最後まで展開されたときに、最初に切り離した面(多角形)もつなげると、面(F)が1つ増えるが、面がn角形のとき、頂点(V)が(n−2)増え、辺(E)が(n−1)増えるので、多面体立体の2次元展開図では、オイラーの定理が次式となる。
(多面体立体の展開図)F+V=E+1
【0143】
また、立方体や球、円柱、円錐、正多面体、(サッカーボールのような)切頭12面体などの半正多面体など、比較的一般的な立体形状や規則的な多面体については、各種多面体の幾何学的な定数や、表面形状の3次元モデルデータ、表面形状の2次元展開図データをあらかじめ作成して、メモリに記憶しておき、それらをメモリから読み出して利用すればよい。
図11に、球や正多面体など、所定の立体形状の2次元展開図の例を示す。
【0144】
以上のように、被印刷物が所定の球や曲面、多面体立体でも、あるいは、自由曲面や凹凸のある立体形状でも、被印刷物の表面に、写真画像などの2次元原稿画像を歪み無く、また、隙間無く、きれいに貼り付けることができる。
【0145】
以上の構成による画像処理装置によれば、以下に列挙する優れた効果を奏する。
すなわち、
1)球面や自由な曲面、その他所定の3次元形状の表面に隙間なく、かつ、画像の欠落部分がなく、画像が連続するように、貼り付けられるので、また人物画像などの写真画像でも、歪みの少ない画像で観察できるので、コップや食器など平坦面や円筒状の曲面だけでなく、様々な曲面や複雑な立体形状の物体にも、デジタルカメラ撮影画像などをきれいに印刷して貼り付けることができる。
【0146】
2)また、様々な曲面や形状の製品や梱包などにも、一般のプリンタを用いて図柄や写真画像などを紙やシートに印刷して、きれいに貼付することができる。
【0147】
3)また、物体に貼り付ける代りに、糊代(のりしろ)付きの展開図として印刷し、印刷された紙やシートから、きれいな写真画像入りの各種の立体形状のペーパークラフトなどを簡単に組み立てることができ、写真画像の利用法や楽しみ方を広げることができる。
【0148】
なお、本発明は上述した実施の形態で説明した構造には限定されず、画像処理装置を構成する各部の形状、構造等を適宜変形、変更し得ることはいうまでもない。
【0149】
また、上述した実施形態では、地球儀などのような球体の球面に貼り付けることができる印刷物を得る場合を例として説明したが、本発明はこれに限らず、たとえば異型形状のコップや食器、その他商品などへの写真画像のプリントやプリント入り製品や梱包の印刷などにも利用して効果を発揮し得るものである。
【0150】
また、本発明装置は、画像データを印刷用に画像処理する画像処理装置や画像処理プログラム、あるいは、それにより生成されて印刷や印刷物を貼付加工された製品や、梱包箱などの印刷体、あるいは、このような画像処理機能やプログラムを組み込んだデジタルカメラやプリンタなどに適用可能であることは言うまでもない。
【図面の簡単な説明】
【0151】
【図1】本発明に係る画像処理装置の一実施形態を示す概略構成図である。
【図2】本発明に係る画像処理装置における処理を説明するためのフローチャートである。
【図3】多視点画像から被写体の3次元形状データの生成処理を説明するためのフローチャートである。
【図4】視点の異なる複数枚の画像による3次元形状データの復元を説明するための図である。
【図5】視体積交差法による3次元形状復元を説明するための図である。
【図6】所定形状の場合の変換処理を例示する図である。
【図7】2次元画像の曲面貼り付け、CGの平行投影マッピングを説明するための図である。
【図8】視点とプロジェクタ、スクリーンの位置関係を示す図である。
【図9】双代レンダリングの手法を説明するための図である。
【図10】曲面歪みを補正した画像の2次元展開図の生成例を示す図である。
【図11】立体形状の2次元展開図を例示する図である。
【符号の説明】
【0152】
1…カメラ撮像手段、2…画像処理手段、3…印刷手段。
【特許請求の範囲】
【請求項1】
球面、曲面、または凹凸をもつ被印刷物の被印刷面に、隙間無く、かつ、画像の欠落部分が無く、また曲面形状による画像の歪みが少なく画像が見やすくなるように、貼り付けることができる印刷物を得る画像処理装置であって、
写真画像などの画像データを入力して、または被印刷面の立体表面形状の3次元モデルを作成または選択する手段と、
立体表面形状の3次元モデルに応じて、被印刷面の立体表面またはその一部を隙間無く埋めるように近似して、複数の多角形の組み合わせによる仮想の多面体立体モデルを生成する手段と、
立体表面に印刷や貼付けした場合の画像の歪みを補正するために、入力された画像データを、画像処理により、所定の視点位置から仮想の多面体立体モデルの表面に所定の投影変換する処理を行い、それを所定の視点から観察した場合に画像の歪みが少なくなるように、3次元曲面の表面上の画像データに変換する手段と、
歪み補正された3次元曲面表面上の画像データを、仮想の多面体立体の表面に貼付け、貼付けた画像を、複数の多角形領域に分割する手段と、
仮想の多面体立体の表面を構成する各面の連結の一部を分解して、2次元平面に展開された表面形状の2次元展開図を生成する手段と、
分割された各多角形領域の画像を、2次元展開図中の対応する各多角形の位置と向きにしたがって、それぞれ配置した2次元展開図形式の印刷用画像データを生成する手段と、
上記展開図形式の印刷用画像データを、紙やフィルムなどの印刷媒体に印刷するカラープリンタなどの出力装置とを備えていることを特徴とする画像処理装置。
【請求項2】
請求項1記載の画像処理装置において、
前記3次元モデル作成、選択手段は、被印刷物が一般的な立体物である場合には、予め準備したデータベースから3次元形状モデルデータを選択することを特徴とする画像処理装置。
【請求項3】
請求項1記載の画像処理装置において、
前記3次元モデル作成、選択手段は、被印刷物の立体形状が自由曲面や複雑な立体形状などである場合には、被印刷物を異なる視点から見る複数枚の画像データを準備し、これらの画像データに基づいて立体形状表面の3次元モデルを作成することを特徴とする画像処理装置。
【請求項1】
球面、曲面、または凹凸をもつ被印刷物の被印刷面に、隙間無く、かつ、画像の欠落部分が無く、また曲面形状による画像の歪みが少なく画像が見やすくなるように、貼り付けることができる印刷物を得る画像処理装置であって、
写真画像などの画像データを入力して、または被印刷面の立体表面形状の3次元モデルを作成または選択する手段と、
立体表面形状の3次元モデルに応じて、被印刷面の立体表面またはその一部を隙間無く埋めるように近似して、複数の多角形の組み合わせによる仮想の多面体立体モデルを生成する手段と、
立体表面に印刷や貼付けした場合の画像の歪みを補正するために、入力された画像データを、画像処理により、所定の視点位置から仮想の多面体立体モデルの表面に所定の投影変換する処理を行い、それを所定の視点から観察した場合に画像の歪みが少なくなるように、3次元曲面の表面上の画像データに変換する手段と、
歪み補正された3次元曲面表面上の画像データを、仮想の多面体立体の表面に貼付け、貼付けた画像を、複数の多角形領域に分割する手段と、
仮想の多面体立体の表面を構成する各面の連結の一部を分解して、2次元平面に展開された表面形状の2次元展開図を生成する手段と、
分割された各多角形領域の画像を、2次元展開図中の対応する各多角形の位置と向きにしたがって、それぞれ配置した2次元展開図形式の印刷用画像データを生成する手段と、
上記展開図形式の印刷用画像データを、紙やフィルムなどの印刷媒体に印刷するカラープリンタなどの出力装置とを備えていることを特徴とする画像処理装置。
【請求項2】
請求項1記載の画像処理装置において、
前記3次元モデル作成、選択手段は、被印刷物が一般的な立体物である場合には、予め準備したデータベースから3次元形状モデルデータを選択することを特徴とする画像処理装置。
【請求項3】
請求項1記載の画像処理装置において、
前記3次元モデル作成、選択手段は、被印刷物の立体形状が自由曲面や複雑な立体形状などである場合には、被印刷物を異なる視点から見る複数枚の画像データを準備し、これらの画像データに基づいて立体形状表面の3次元モデルを作成することを特徴とする画像処理装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2010−123007(P2010−123007A)
【公開日】平成22年6月3日(2010.6.3)
【国際特許分類】
【出願番号】特願2008−297448(P2008−297448)
【出願日】平成20年11月21日(2008.11.21)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】
【公開日】平成22年6月3日(2010.6.3)
【国際特許分類】
【出願日】平成20年11月21日(2008.11.21)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】
[ Back to top ]