(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023147643
(43)【公開日】2023-10-13
(54)【発明の名称】画像処理装置、情報処理装置、画像処理方法及びコンピュータプログラム
(51)【国際特許分類】
G06T 1/00 20060101AFI20231005BHJP
G06T 7/70 20170101ALI20231005BHJP
G06V 10/24 20220101ALI20231005BHJP
【FI】
G06T1/00 200D
G06T7/70 Z
G06V10/24
【審査請求】未請求
【請求項の数】24
【出願形態】OL
(21)【出願番号】P 2022055275
(22)【出願日】2022-03-30
(71)【出願人】
【識別番号】509070463
【氏名又は名称】株式会社コロプラ
(74)【代理人】
【識別番号】100118902
【弁理士】
【氏名又は名称】山本 修
(74)【代理人】
【識別番号】100106208
【弁理士】
【氏名又は名称】宮前 徹
(74)【代理人】
【識別番号】100196508
【弁理士】
【氏名又は名称】松尾 淳一
(74)【代理人】
【識別番号】100173565
【弁理士】
【氏名又は名称】末松 亮太
(74)【代理人】
【識別番号】100201743
【弁理士】
【氏名又は名称】井上 和真
(72)【発明者】
【氏名】金子 基
(72)【発明者】
【氏名】ジン シュハン
【テーマコード(参考)】
5B050
5L096
【Fターム(参考)】
5B050AA03
5B050BA06
5B050BA07
5B050BA10
5B050BA13
5B050CA01
5B050DA04
5B050EA05
5B050EA07
5B050EA18
5B050EA19
5B050FA02
5B050FA05
5B050GA08
5L096AA06
5L096CA04
5L096DA01
5L096FA09
5L096FA66
5L096FA67
5L096FA69
5L096MA03
(57)【要約】
【課題】レプリカなどの被写体の撮像画像と実物の撮像画像との間のズレを制作者に正確に認識させることを可能とする画像処理装置を提供する。
【解決手段】画像処理装置は、1つ以上の第1のマーカが付された被写体の撮像画像を撮像部から連続的に取得する第1の画像取得部と、1つ以上の第2のマーカが付された参照物体画像を画像記憶部から取得する第2の画像取得部と、前記1つ以上の第1のマーカ及び前記1つ以上の第2のマーカをそれぞれ検出し、当該検出された第1及び第2のマーカを用いて撮像画像に現れる被写体を参照物体画像に現れる参照物体と比較して比較結果を生成する画像処理部とを備える。画像処理部は、前記比較結果が所定の一致条件を満たすときの当該撮像画像を自動撮像画像として保存する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
1つ以上の第1のマーカが付された参照物体画像を記憶している画像記憶部から前記参照物体画像を取得するように構成された第1の画像取得部と、
1つ以上の第2のマーカが付された被写体の撮像画像を撮像部から連続的に取得するように構成された第2の画像取得部と、
前記参照物体画像及び前記撮像画像を解析することにより前記1つ以上の第1のマーカ及び前記1つ以上の第2のマーカをそれぞれ検出し、前記参照物体画像及び前記撮像画像を基に、当該検出された第1及び第2のマーカを用いて前記撮像画像に現れる被写体を前記参照物体画像に現れる参照物体と比較して比較結果を生成するように構成された画像処理部と
を備え、
前記画像処理部は、前記比較結果が所定の一致条件を満たすときの当該撮像画像を自動撮像画像として保存することを特徴とする画像処理装置。
【請求項2】
請求項1に記載の画像処理装置であって、前記画像処理部は、前記自動撮像画像と前記参照物体の形状の特徴を表す特徴画像とを重ね合わせて合成画像を生成するように構成されている、画像処理装置。
【請求項3】
請求項1または2に記載の画像処理装置であって、
前記画像処理部は、
当該検出された第1のマーカの位置情報を用いて前記参照物体の姿勢情報及び前記参照物体までの距離を推定し、
当該検出された第2のマーカの位置情報を用いて前記被写体の姿勢情報及び前記被写体までの距離を推定し、
前記被写体の姿勢情報及び前記被写体までの距離の組と、前記参照物体の姿勢情報及び前記参照物体までの距離の組との差分を前記比較結果として生成する
ように構成されており、
前記所定の一致条件は、前記差分が所定の数値範囲内にあるとの条件を含む、画像処理装置。
【請求項4】
請求項3に記載の画像処理装置であって、前記画像処理部は、あらかじめ用意された3次元モデルをさらに用いて前記参照物体の姿勢情報及び前記参照物体までの距離を推定し、あらかじめ用意された3次元モデルをさらに用いて前記被写体の姿勢情報及び前記被写体までの距離を推定するように構成されている、画像処理装置。
【請求項5】
請求項1または2に記載の画像処理装置であって、前記画像処理部は、前記所定の一致条件を満たすように誘導するガイドを生成して前記ガイドをディスプレイに表示するように構成されている、画像処理装置。
【請求項6】
請求項5に記載の画像処理装置であって、
前記画像処理部は、
当該検出された第1のマーカの位置情報を用いて前記参照物体の姿勢情報及び前記参照物体までの距離を推定し、
当該検出された第2のマーカの位置情報を用いて前記被写体の姿勢情報及び前記被写体までの距離とを推定し、
前記参照物体の姿勢情報及び前記参照物体までの距離の組を幾何学的に表す第1のガイド線と、前記被写体の姿勢情報及び前記被写体までの距離の組を幾何学的に表す第1のガイド線との組を前記ガイドとして生成する
ように構成されている、画像処理装置。
【請求項7】
請求項1から6のうちのいずれか1項に記載の画像処理装置であって、
当該連続的に取得された撮像画像は、現在の撮像画像と前記現在の撮像画像よりも前に取得された以前の撮像画像とを含み、
前記画像処理部は、前記現在の撮像画像から前記第2のマーカが検出されないとき、前記以前の撮像画像から検出された当該第2のマーカの位置情報を用いて、前記現在の撮像画像から検出されるべき当該第2のマーカの位置情報を補間するように構成されている、画像処理装置。
【請求項8】
請求項1から6のうちのいずれか1項に記載の画像処理装置であって、
当該連続的に取得された撮像画像は、現在の撮像画像と前記現在の撮像画像よりも前に取得された以前の撮像画像とを含み、
前記画像処理部は、前記現在の撮像画像から検出された当該第2のマーカの現在の画像座標を、前記以前の撮像画像から検出された当該第2のマーカの以前の画像座標と比較して、前記現在の画像座標と前記以前の画像座標との間の対応付けに成功したときは、前記以前の画像座標に割り当てられているピンマーカ識別子を前記現在の画像座標に割り当てるように構成されている、画像処理装置。
【請求項9】
請求項8に記載の画像処理装置であって、前記画像処理部は、前記現在の画像座標と前記以前の画像座標との間の対応付けに失敗したときは、前記現在の画像座標を使用せず、前記以前の画像座標と前記以前の画像座標に割り当てられているピンマーカ識別子との組を用いて、前記現在の撮像画像から検出されるべき当該第2のマーカの位置情報を補間するように構成されている、画像処理装置。
【請求項10】
請求項2に記載の画像処理装置であって、前記画像処理部は、当該検出された第2のマーカを前記撮像画像から削除して得られる画像と前記特徴画像とを重ね合わせて合成画像を生成するように構成されている、画像処理装置。
【請求項11】
請求項10に記載の画像処理装置であって、
前記第2のマーカは、あらかじめ選択された特定の色を有し、
前記画像処理部は、前記撮像画像から前記特定の色を成分とする色空間画像を抽出し、前記色空間画像を用いて、当該検出された第2のマーカを前記撮像画像から削除するように構成されている、画像処理装置。
【請求項12】
請求項1から11のうちのいずれか1項に記載の画像処理装置と、前記撮像部と、前記画像記憶部とを備えることを特徴とする情報処理装置。
【請求項13】
単数または複数のプロセッサにより実施されるべき画像処理方法であって、
1つ以上の第1のマーカが付された参照物体画像を記憶している画像記憶部から前記参照物体画像を取得するステップと、
1つ以上の第2のマーカが付された被写体の撮像画像を撮像部から連続的に取得するステップと、
前記参照物体画像及び前記撮像画像を解析することにより前記1つ以上の第1のマーカ及び前記1つ以上の第2のマーカをそれぞれ検出するステップと、
前記参照物体画像及び前記撮像画像を基に、当該検出された第1及び第2のマーカを用いて前記撮像画像に現れる被写体を前記参照物体画像に現れる参照物体と比較して比較結果を生成するステップと、
前記比較結果が所定の一致条件を満たすときの当該撮像画像を自動撮像画像として保存するステップと
を備えることを特徴とする画像処理方法。
【請求項14】
請求項13に記載の画像処理方法であって、前記自動撮像画像と前記参照物体の形状の特徴を表す特徴画像とを重ね合わせて合成画像を生成するステップをさらに備える画像処理方法。
【請求項15】
請求項13または14に記載の画像処理方法であって、
当該検出された第1のマーカの位置情報を用いて前記参照物体の姿勢情報及び前記参照物体までの距離を推定するステップと、
当該検出された第2のマーカの位置情報を用いて前記被写体の姿勢情報及び前記被写体までの距離を推定するステップと
をさらに備え、
前記比較結果は、前記被写体の姿勢情報及び前記被写体までの距離の組と、前記参照物体の姿勢情報及び前記参照物体までの距離の組との差分として生成され、
前記所定の一致条件は、前記差分が所定の数値範囲内にあるとの条件を含む、画像処理方法。
【請求項16】
請求項15に記載の画像処理方法であって、
前記参照物体の姿勢情報と前記参照物体までの距離とは、あらかじめ用意された3次元モデルをさらに用いて推定され、
前記被写体の姿勢情報と前記被写体までの距離とは、あらかじめ用意された3次元モデルをさらに用いて推定される、画像処理方法。
【請求項17】
請求項13または14に記載の画像処理方法であって、前記所定の一致条件を満たすように誘導するガイドを生成して前記ガイドをディスプレイに表示するステップをさらに備える画像処理方法。
【請求項18】
請求項17に記載の画像処理方法であって、
当該検出された第1のマーカの位置情報を用いて前記参照物体の姿勢情報及び前記参照物体までの距離を推定するステップと、
当該検出された第2のマーカの位置情報を用いて前記被写体の姿勢情報及び前記被写体までの距離を推定するステップと
をさらに備え、
前記ガイドは、前記参照物体の姿勢情報及び前記参照物体までの距離の組を幾何学的に表す第1のガイド線と、前記被写体の姿勢情報及び前記被写体までの距離の組を幾何学的に表す第2のガイド線とを含む、画像処理方法。
【請求項19】
請求項13から18のうちのいずれか1項に記載の画像処理方法であって、
当該連続的に取得された撮像画像のうちの現在の撮像画像から前記第2のマーカが検出されないとき、当該連続的に取得された撮像画像のうち前記現在の撮像画像よりも前に取得された以前の撮像画像から検出された当該第2のマーカの位置情報を用いて、前記現在の撮像画像から検出されるべき当該第2のマーカの位置情報を補間するステップをさらに備える画像処理方法。
【請求項20】
請求項13から18のうちのいずれか1項に記載の画像処理方法であって、当該連続的に取得された撮像画像のうちの現在の撮像画像から検出された当該第2のマーカの現在の画像座標を、当該連続的に取得された撮像画像のうち前記現在の撮像画像よりも前に取得された以前の撮像画像から検出された当該第2のマーカの以前の画像座標と比較して、前記現在の画像座標と前記以前の画像座標との間の対応付けに成功したときは、前記以前の画像座標に割り当てられているピンマーカ識別子を前記現在の画像座標に割り当てるステップをさらに備える画像処理方法。
【請求項21】
請求項20に記載の画像処理方法であって、前記現在の画像座標と前記以前の画像座標との間の対応付けに失敗したときは、前記現在の画像座標を破棄し、前記以前の画像座標と前記以前の画像座標に割り当てられているピンマーカ識別子との組を用いて、前記現在の撮像画像から検出されるべき当該第2のマーカの位置情報を補間するステップをさらに備える画像処理方法。
【請求項22】
請求項14に記載の画像処理方法であって、前記合成画像は、当該検出された第2のマーカを前記撮像画像から削除して得られる画像と前記特徴画像とを重ね合わせて生成される、画像処理方法。
【請求項23】
請求項22に記載の画像処理方法であって、
前記第2のマーカは、あらかじめ選択された特定の色を有し、
当該画像処理方法は、
前記撮像画像から前記特定の色を成分とする色空間画像を抽出するステップと、
前記色空間画像を用いて、当該検出された第2のマーカを前記撮像画像から削除するステップと
をさらに備える画像処理方法。
【請求項24】
不揮発性メモリから読み出されて実行されるべきコンピュータプログラムであって、請求項13から請求項23のうちのいずれか1項に記載の画像処理方法を単数または複数のプロセッサに実施させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、実物を模したレプリカなどの被写体の撮像画像を、あらかじめ用意された参照物体画像と比較してその比較結果を生成するための画像処理技術に関する。
【背景技術】
【0002】
動植物や美術品などの実物(実世界の物体)を模したレプリカ(たとえば、ドールや彫刻品)を制作する過程で、レプリカの制作者が、レプリカの完成度合いを確認するためにカメラを用いる手法が知られている。具体的には、その手法は、制作者が、実物の撮像画像をあらかじめ用意しておき、カメラを用いて被写体であるレプリカの撮像画像を取得し、そのレプリカの撮像画像と実物の撮像画像とを比較してレプリカの完成度合いを確認するというものである。制作者は、レプリカの撮像画像と実物の撮像画像との間のズレを認識し、そのズレを小さくするようにレプリカを修正することによりレプリカの完成度を高めることができる。
【0003】
近年のコンピュータ技術とソフトウェア技術の発達に伴い、制作者は、PC(パーソナル・コンピュータ)やタブレット型コンピュータなどのディジタル機器を操作して、当該ディジタル機器にレプリカの撮像画像と実物の撮像画像とを並べて表示させたり、重畳させて表示させたりすることが容易にできるので、制作者は、両者間のズレを簡便に認識することが可能である。
【0004】
なお、実物の画像データを基に3Dプリンタなどの加工装置を用いてレプリカを造形する技術は既に知られている(たとえば、特許文献1:特開平08-016786号公報)。しかしながら、この技術では、制作者がレプリカの撮像画像と実物の撮像画像との間のズレを認識し、そのズレを小さくするように制作者自らがレプリカを修正するプロセスが存在しない。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
前述のとおり、制作者は、レプリカの撮像画像と実物の撮像画像との間のズレを認識し、当該認識されたズレを小さくするようにレプリカを修正することができる。しかしながら、制作者は、そのズレを必ずしも正確に認識できているとは限らないので、かかる場合、レプリカの完成度を高めることが難しいという課題がある。
【0007】
上記に鑑みて本開示の目的は、レプリカなどの被写体の撮像画像と実物の撮像画像との間のズレを制作者に正確に認識させることを可能とする画像処理装置、情報処理装置、画像処理方法及びコンピュータプログラムを提供する点にある。
【課題を解決するための手段】
【0008】
本開示の第1の態様による画像処理装置は、1つ以上の第1のマーカが付された参照物体画像を記憶している画像記憶部から前記参照物体画像を取得するように構成された第1の画像取得部と、1つ以上の第2のマーカが付された被写体の撮像画像を撮像部から連続的に取得するように構成された第2の画像取得部と、前記参照物体画像及び前記撮像画像を解析することにより前記1つ以上の第1のマーカ及び前記1つ以上の第2のマーカをそれぞれ検出し、前記参照物体画像及び前記撮像画像を基に、当該検出された第1及び第2のマーカを用いて前記撮像画像に現れる被写体を前記参照物体画像に現れる参照物体と比較して比較結果を生成するように構成された画像処理部とを備え、前記画像処理部は、前記比較結果が所定の一致条件を満たすときの当該撮像画像を自動撮像画像として保存することを特徴とする。
【0009】
本開示の第2の態様による情報処理装置は、上記第1の態様による画像処理装置と、前記撮像部と、前記画像記憶部とを備えることを特徴とする。
【0010】
本開示の第3の態様による画像処理方法は、単数または複数のプロセッサにより実施されるべき画像処理方法であって、1つ以上の第1のマーカが付された参照物体画像を記憶している画像記憶部から前記参照物体画像を取得するステップと、1つ以上の第2のマーカが付された被写体の撮像画像を撮像部から連続的に取得するステップと、前記参照物体画像及び前記撮像画像を解析することにより前記1つ以上の第1のマーカ及び前記1つ以上の第2のマーカをそれぞれ検出するステップと、前記参照物体画像及び前記撮像画像を基に、当該検出された第1及び第2のマーカを用いて前記撮像画像に現れる被写体を前記参照物体画像に現れる参照物体と比較して比較結果を生成するステップと、前記比較結果が所定の一致条件を満たすときの当該撮像画像を自動撮像画像として保存するステップとを備えることを特徴とする。
【0011】
本開示の第4の態様によるコンピュータプログラムは、不揮発性メモリから読み出されて実行されるべきコンピュータプログラムであって、上記第3の態様による画像処理方法を単数または複数のプロセッサに実施させるように構成されていることを特徴とする。
【発明の効果】
【0012】
本開示の第1~第4の態様によれば、参照物体画像及び被写体の撮像画像からそれぞれを検出された第1のマーカ及び第2のマーカを用いて、撮像画像に現れる被写体と参照物体画像に現れる参照物体との間の比較結果が生成され、当該比較結果が所定の一致条件を満たすときの当該撮像画像が自動撮像画像として保存される。これにより、被写体と参照物体との間のズレをユーザが認識するのに適した自動撮像画像を生成することが可能となる。実物を模したレプリカを制作する際、当該レプリカを被写体とし、当該実物を参照物体として選択すれば、ユーザは、自動撮像画像に基づいてレプリカと実物との間のズレを正確に認識することができるので、当該認識されたズレを小さくするようにレプリカを修正することにより当該レプリカの完成度を高めることができる。
【図面の簡単な説明】
【0013】
【
図1】本開示の一実施形態の情報処理装置の構成を概略的に示すブロック図である。
【
図2】画像処理装置を実現するハードウェア構成例を概略的に示すブロック図である。
【
図3】
図3A~
図3Cは、参照物体を表すディジタル画像の例を概略的に示す図である。
【
図4】レプリカの造形作業の一例を説明するための図である。
【
図5】ピンマーカが付されたレプリカの状態を示す図である。
【
図6】画像処理装置による画像処理の手順の一例を概略的に示すフローチャートである。
【
図7】画像処理装置による画像処理の手順の一例を概略的に示すフローチャートである。
【
図8】
図8Aは、参照物体画像を例示する図であり、
図8Bは、第1のガイド線を例示する図であり、
図8Cは、第1のガイド線と3次元モデル空間との関係を概略的に示す図である。
【
図9】
図9Aは、被写体の撮像画像を例示する図であり、
図9Bは、第2のガイド線を例示する図であり、
図9Cは、第2のガイド線と3次元モデル空間との関係を概略的に示す図である。
【
図10】被写体であるレプリカと第1及び第2のガイド線とを表示するディスプレイ画面を例示する図である。
【
図11】被写体であるレプリカと第1及び第2のガイド線とを表示する別のディスプレイ画面を例示する図である。
【
図12】
図12Aは、参照物体画像から検出されたスケーリングポイントを例示する図であり、
図12Bは、レプリカの撮像画像から検出されたスケーリングポイントを例示する図である。
【
図13】
図13Aは、参照物体画像から算出された中心点を例示する図であり、
図13Bは、レプリカの撮像画像から算出された中心点を例示する図である。
【
図16】
図16Aは、レプリカの撮像画像を示す図であり、
図16Bは、被写体に関する姿勢情報及び距離の推定精度が低くなる状況でのレプリカの撮像画像を示す図である。
【
図17】他の実施形態に係る画像処理の手順の一例を概略的に示すフローチャートである。
【
図18】他の実施形態に係る画像処理の手順の一例を概略的に示すフローチャートである。
【
図21】
図21A及び
図21Bは、参照用位置情報と、現在検出されたピンマーカの位置情報との対応関係を例示する図である。
【
図22】
図22A及び
図22Bは、更新前の参照用位置情報と、現在検出されたピンマーカの位置情報との対応関係を例示する図である。
【
図23】さらに他の実施形態に係る画像処理の手順の一例を概略的に示すフローチャートである。
【発明を実施するための形態】
【0014】
以下、図面を参照しつつ、本開示に係る種々の実施形態について詳細に説明する。なお、図面全体において同一符号を付された構成要素は、同一構成及び同一機能を有するものとする。
【0015】
図1は、本開示の一実施形態の情報処理装置1の構成を概略的に示すブロック図である。
図1に示される情報処理装置1は、CCD(Charge Coupled Device)センサやCMOS(Complementary Metal Oxide Semiconductor)センサなどの撮像センサを有する撮像部10と、撮像部10で得られた撮像画像を一時的に格納する画像バッファ11と、撮像部10から画像バッファ11を介して撮像画像を取得して当該撮像画像に画像処理を施すように構成された画像処理装置20と、画像処理装置20に利用される各種データが記憶されているストレージ30と、画像処理装置20から出力される画像データを表示するディスプレイ40と、通信部41と、操作入力部42とを備えて構成されている。操作入力部42は、キー入力デバイスやタッチパネル型入力デバイスを有している。ユーザは、操作入力部42を操作することで画像処理装置20の動作を指示するための情報を入力することができる。
【0016】
なお、本実施形態では、撮像部10及びディスプレイ40はそれぞれ情報処理装置1の構成要素であるが、これに限定されるものではない。撮像部10及びディスプレイ40の一方または双方が情報処理装置1の外部に配置されるように情報処理装置1の構成を変更してもよい。
【0017】
通信部41は、Bluetooth(登録商標)、無線LAN(Local Area Network)もしくは有線LANなどの通信ネットワークを介した通信、赤外線通信、または、ケーブルを介した有線通信により外部通信機器(図示せず)との間でデータの送受信を行うことができる機能を有している。ディスプレイ40としては、たとえば、液晶ディスプレイ(LCD)または有機ELディスプレイが使用可能であるが、これに限定されるものではない。
【0018】
画像処理装置20は、単数または複数のプロセッサを含むデータ処理装置で実現可能である。具体的には、画像処理装置20の全部または一部は、不揮発性メモリ(コンピュータ読み取り可能な記録媒体)から読み出されたソフトウェアやファームウェアのプログラムコード(命令群)を実行する、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などの演算ユニットを含む単数または複数のプロセッサで実現されればよい。
【0019】
図2は、画像処理装置20の全部または一部を実現するハードウェア構成例であるデータ処理装置90の構成を概略的に示すブロック図である。データ処理装置90は、プロセッサ91,ランダムアクセスメモリ(RAM:Random Access Memory)92,不揮発性メモリ93,インタフェース回路94及び信号路95を含んで構成されている。信号路95は、プロセッサ91,RAM92,不揮発性メモリ93及びインタフェース回路94を相互に接続するためのバスである。RAM92は、プロセッサ91がディジタル信号処理を実行する際に使用されるデータ記憶領域である。プロセッサ91がCPUやGPUなどの演算装置を内蔵する場合には、不揮発性メモリ93は、プロセッサ91により実行されるソフトウェアやファームウェアのプログラムコードが記録されたデータ記録領域を有する。
【0020】
上記情報処理装置1は、パーソナル・コンピュータ(personal computer,PC)、タブレット型コンピュータ、ウェアラブル型コンピュータまたはスマートフォンとして構成可能である。
【0021】
本実施形態の情報処理装置1のユーザとしては、動植物や美術品などの参照物体(ターゲット)を模したレプリカを制作する者が想定されている。レプリカの例としては、人形(ドールともいう。)、手芸作品(たとえば、羊毛フェルトなどのシート状の繊維品)、フィギュア(たとえば、映画や書籍に現れる登場人間、キャラクタ、動物、怪獣、車両または飛行機の立体的な模型)、並びに、彫刻品が挙げられる。ユーザは、参照物体を表すディジタル画像を複数種あらかじめ用意しておき、情報処理装置1を操作して、通信部41を介してこれらディジタル画像(以下「参照物体画像」ともいう。)をストレージ30の第1画像記憶部31に記憶させることができる。参照物体画像は、あらかじめストレージ30に格納されていてもよい。
図3A~
図3Cは、そのような参照物体画像の例を概略的に示す図である。
図3Aは、猫の参照物体Tgtの原画像51を示し、
図3Bは、原画像51に現れる参照物体Tgtに対して、黒丸で示される12個の参照マーカ(第1のマーカ)M1~M12を電子的に付すことで生成された参照物体画像52を示し、
図3Cは、参照物体Tgtの形状の特徴を表す特徴画像53を示している。
図3Cの例では、特徴画像53は、原画像51から抽出された参照物体Tgtの輪郭線を表す輪郭線画像であるが、これに限定されるものではない。
【0022】
ユーザは、原画像51または参照物体画像52に現れる参照物体Tgtに合わせてレプリカを造形することができる。
図4は、レプリカRpの造形作業の一例を説明するための図である。
図4に示されるように、ユーザは、自らの手Hdを用いて、型に羊毛などの材料を植毛することでレプリカRpを制作することができる。ユーザは、レプリカRpの完成度合いを確認するために、先ず、レプリカRpの表面に、
図3Cの複数の参照マーカM1~M12にそれぞれ対応する複数のピンマーカ(第2のマーカ)を付加する。
図5は、表面に12個のピンマーカP1~P12が付されたレプリカRpの状態を示す図である。
【0023】
次いで、ユーザは、情報処理装置1を操作して、ピンマーカP1~P12が付されたレプリカRpを被写体として情報処理装置1に連続的に撮像させる。このとき、ユーザは、撮像部10に対するレプリカRpの相対的な姿勢や相対的な位置を適当に変化させる。画像処理装置20は、連続的に得られる撮像画像(フレーム画像)のうち、参照物体画像52に現れる参照物体TgtとレプリカRpとの間のズレをユーザに正確に認識させることができる撮像画像(すなわち自動撮像画像)を自動的に選択してそのデータをストレージ30に保存することができる。従来技術のカメラを用いるだけでは、制作者は、参照物体画像52に現れる参照物体TgtとレプリカRpとの間のズレを正確に認識することができるような姿勢及び相対距離にあるレプリカRpを適切なタイミングで撮像することが難しい。これに対し、本実施形態の画像処理装置20の機能を用いれば、ユーザは、撮像部10に対するレプリカRpの相対的な姿勢や相対的な位置を適当に変化させるだけで、撮像部10に対して適切な姿勢及び相対距離にあるレプリカRpの撮像画像(すなわち自動撮像画像)を容易に得ることができる。
【0024】
なお、
図3Bの例では、参照物体画像52に現れる参照物体Tgtに対して12個の参照マーカM1~M12が付されており、
図5の例では、レプリカRpに対して12個のピンマーカP1~P12が付されているが、これに限定されるものではない。たとえば、参照物体画像に現れる参照物体Tgtに対して空間的なパターンをもつ単一の参照マーカを付し、レプリカRpに対して空間的なパターンをもつ単一のピンマーカを付する形態もあり得る。
【0025】
また、本実施形態では、第1のマーカとしての参照マーカは、原画像のデータに対して電子的に付されているが、これに限定されるものではない。たとえば、物理的に実在するマーカ(たとえば、特定の色及び材質を有するピン)を参照マーカとして参照物体に物理的に付着したうえで当該参照物体を撮像することで参照物体画像が取得されてもよい。また上記のとおり、ユーザは、レプリカRpの造形作業の過程でレプリカRpの表面にピンマーカを付すことができる。第2のマーカとしてのピンマーカは、物理的に実在するレプリカRpの表面に物理的に付されることが好ましいが、これに限定されるものではない。たとえば、一連の撮像画像(フレーム画像)に現れるレプリカRpの特徴を画像解析で検出することにより、レプリカRpの動きに合わせて各撮像画像内の適当な位置に仮想的なマーカを電子的に付してもよい。
【0026】
以下、情報処理装置1における画像処理装置20の構成及び動作について詳細に説明する。
図1を参照すると、画像処理装置20は、参照物体画像取得部(第1の画像取得部)21、撮像画像取得部(第2の画像取得部)22及び画像処理部23を備えている。
図6及び
図7は、画像処理装置20による画像処理の手順の一例を概略的に示すフローチャートである。
図6及び
図7は、結合子C1,C2,C3を介して相互に結合されている。
【0027】
撮像部10は、ユーザによる操作入力に応じて、レプリカRpを被写体として連続的に撮像することを開始し、一連の撮像画像(フレーム画像)を画像バッファ11に出力する。このとき、参照物体画像取得部21は、1つ以上の参照マーカ(第1のマーカ)が付された参照物体(ターゲット)画像を記憶している第1画像記憶部31から、当該参照物体画像を取得する(
図6のステップS10)。画像処理部23は、取得された参照物体画像に付された1つ以上の参照マーカの検出を試みる(ステップS11)。
図8Aは、参照物体画像52を例示する図である。
図8Aに示されるように、参照物体画像52に現れる参照物体Tgtに対して12個の参照マーカM1~M12が付されている。
【0028】
参照マーカの色としては、背景である参照物体の色とは異なる特定の色をあらかじめ選択しておくことが好ましい。この場合、画像処理部23は、画像フィルタを用いて、参照物体画像からその特定の色を成分とする色空間画像を抽出し、抽出された色空間画像を用いて参照マーカを高い精度で検出することができる。
【0029】
ステップS11の後、参照物体画像から参照マーカが検出されないときは(ステップS12のNO)、画像処理は終了する。
【0030】
一方、参照物体画像から参照マーカが検出されたときは(ステップS12のYES)、画像処理部23は、検出された参照マーカの位置情報(2次元の画像座標を含む。)と、ストレージ30の3Dモデル記憶部33内にあらかじめ用意された3次元モデルとを用いて、参照物体画像に現れる参照物体の姿勢情報(たとえば、3次元モデル空間における参照物体の向きベクトル)p1と参照物体までの距離(たとえば、3次元モデル空間における距離)d1とを推定する(ステップS13)。ここで、3次元モデルは、複数の基準マーカの位置情報を有しており、画像処理部23は、検出された参照マーカの位置情報と3次元モデルの基準マーカの位置情報とを用いて姿勢情報p1及び距離d1を推定することができる。姿勢情報p1及び距離d1を推定する方法としては、公知の姿勢推定アルゴリズム(pose estimation algorithm)が使用されればよく、特に限定されるものではない。たとえば、下記の非特許文献1に開示されている姿勢推定アルゴリズムを利用することができる。
非特許文献1:Eric Marchand, Hideaki Uchiyama, and Fabien Spindler. Pose Estimation for Augmented Reality: A Hands-On Survey. IEEE Transactions on Visualization and Computer Graphics, 22(12): 2633 - 2651, December 2016.
【0031】
3次元モデルを生成する方法としては、たとえば、フォトグラメトリ(Photogrammetry)、または3D(3次元)スキャン法が使用されればよい。フォトグラメトリは、実際のオブジェクトを様々な方向から撮像することで得られた多数のディジタル画像をコンピュータで解析して点群(ポイントクラウド)データを生成し、当該点群データからテキスチャ付きメッシュと呼ばれる3次元モデルを生成する技術である。3Dスキャン法は、3Dレーザスキャナを用いて実際のオブジェクトをレーザビームでスキャンすることで3次元座標及び色情報を表す点群(ポイントクラウド)データを収集し、当該点群データから3次元モデルを生成する技術である。テンプレートモデルにデフォーメンション(deformation)を施して3次元モデルが生成されてもよい。たとえば、猫や犬などの動物の3次元モデルを用意しようとする場合には、姿勢情報及び距離の推定精度を高めるために、動物の種(species)ごとに3次元モデルを用意することが望ましい。
【0032】
ステップS13の後、画像処理部23は、参照物体について推定された姿勢情報p
1及び距離d
1の組を幾何学的に表す第1のガイド線を生成し、生成された第1のガイド線をディスプレイ40に表示する(ステップS14)。
図8Bは、第1のガイド線G1を例示する図である。
図8Cに示されるように第1のガイド線G1は、3次元モデル空間(XYZ空間)の3次元座標に対応付けされている。たとえば、第1のガイド線は、被写体であるレプリカRpの撮像画像と重畳された状態でディスプレイ40に表示されればよい。
【0033】
次に、画像処理部23は、画像バッファ11から被写体の撮像画像(フレーム画像)を取得し、取得された撮像画像をディスプレイ40に表示する(ステップS15)。次いで、画像処理部23は、その撮像画像から、被写体に付された1つ以上のピンマーカ(第2のマーカ)の検出を試みる(ステップS16)。
図9Aは、撮像画像61を例示する図である。
図9Aに示されるように、撮像画像61に現れるレプリカRpに対して12個のピンマーカP1~P12が付されている。
【0034】
ピンマーカの色としては、背景である被写体の色とは異なる特定の色をあらかじめ選択しておくことが好ましい。この場合、画像処理部23は、画像フィルタを用いて、撮像画像からその特定の色を成分とする色空間画像を抽出し、抽出された色空間画像を用いてピンマーカを高い精度で検出することができる。
【0035】
ステップS16の後、撮像画像からピンマーカが検出されないときは(ステップS17のNO)、
図6のステップS15に処理が戻る。
【0036】
一方、撮像画像から所定数以上の数のピンマーカが検出されたときは(ステップS17のYES)、画像処理部23は、検出されたピンマーカの位置情報(2次元の画像座標を含む。)と、ストレージ30の3Dモデル記憶部33内にあらかじめ用意された3次元モデルとを用いて、撮像画像に現れる被写体であるレプリカRpの姿勢情報(たとえば、3次元モデル空間における参照物体の向きベクトル)p2と被写体までの距離(たとえば、3次元モデル空間における距離)d2とを推定する(ステップS41)。ここで、3次元モデルは、複数の基準マーカの位置情報を有しており、画像処理部23は、検出されたピンマーカの位置情報と3次元モデルの基準マーカの位置情報とを用いて姿勢情報p2及び距離d2を推定することができる。姿勢情報p2及び距離d2を推定する方法としては、上記した公知の姿勢推定アルゴリズム(pose estimation algorithm)が使用されればよく、特に限定されるものではない。
【0037】
そして、画像処理部23は、被写体について推定された姿勢情報p
2及び距離d
2の組を幾何学的に表す第2のガイド線を生成し、生成された第2のガイド線をディスプレイ40に表示する(ステップS42)。
図9Bは、第2のガイド線G2を例示する図である。
図9Cに示されるように第2のガイド線G2は、3次元モデル空間(XYZ空間)の3次元座標に対応付けされている。たとえば、第2のガイド線は、被写体であるレプリカRpの撮像画像及び第1のガイド線の双方と重畳された状態でディスプレイ40に表示されればよい。
【0038】
図10は、被写体であるレプリカRpと、第1のガイド線G1及び第2のガイド線G2の組とを重畳表示するディスプレイ画面D1を例示する図である。ユーザは、ディスプレイ画面D1を視つつ、第2のガイド線G2の十字パターンを第1のガイド線G1の十字パターンと一致させるように、撮像部10に対するレプリカRpの相対的な姿勢及び相対的な位置を変化させることができる。撮像部10から離れる方向へレプリカRpが移動すると、第1のガイド線G1の十字パターンに対して第2のガイド線G2の十字パターンは相対的に小さくなる。撮像部10に対してレプリカRpが回転すると、その回転に合わせて第2のガイド線G2の十字パターンも回転する。ユーザは、第2のガイド線G2の十字パターンが第1のガイド線G1の十字パターンと一致するようにレプリカRpの相対的な姿勢及び相対的な距離を調整すれば、レプリカRpについて推定された姿勢情報p
2及び距離d
2の組は、参照物体Tgtについて推定された姿勢情報p
1及び距離d
1の組とほぼ等しくなる。
【0039】
第1及び第2のガイド線は、
図10に示した第1及び第2のガイド線G1,G2に限定されるものではない。
図11は、被写体であるレプリカRpと、第1のガイド線Ga1及び第2のガイド線Ga2の組とを重畳表示する別のディスプレイ画面D2を例示する図である。
図11に示される第1及び第2のガイド線Ga1,Ga2は、グリッド線(格子線)で構成されている。ユーザは、ディスプレイ画面D2を視つつ、第2のガイド線Ga2の格子パターンを第1のガイド線Ga1の格子パターンと一致させるように、撮像部10に対するレプリカRpの相対的な姿勢及び相対的な位置を変化させることができる。撮像部10から離れる方向へレプリカRpが移動すると、第1のガイド線Ga1の格子パターンに対して第2のガイド線Ga2の格子パターンは相対的に小さくなる。撮像部10に対してレプリカRpが回転すると、その回転に合わせて第2のガイド線Ga2の格子パターンも回転する。ユーザは、第2のガイド線G2の格子パターンが第1のガイド線G1の格子パターンと一致するようにレプリカRpの相対的な姿勢及び相対的な距離を調整すれば、レプリカRpについて推定された姿勢情報p
2及び距離d
2の組は、参照物体Tgtについて推定された姿勢情報p
1及び距離d
1の組とほぼ等しくなる。
【0040】
ステップS42の後は、画像処理部23は、被写体について推定された姿勢情報p2及び距離d2の組と、参照物体について推定された姿勢情報p1及び距離d1の組との差分Δを比較結果として生成する(ステップS43)。姿勢情報p1,p2は、それぞれ、参照物体及び被写体の向きを表す3次元の単位ベクトルで表現できる。この場合、差分Δは、単位ベクトルp1,p2の内積p1・p2と、距離差の絶対値Δd(=|d1-d2|)との組として算出可能である。
【0041】
次いで、画像処理部23は、差分Δが所定の一致条件を満たすかどうかを判定する(ステップS44)。たとえば、内積p1・p2の値が1近辺の所定の数値範囲内にあり、かつ、絶対値Δdが0近辺の所定の数値範囲内にあれば、差分Δが所定の一致条件を満たすと判定することができる。
【0042】
差分Δが所定の一致条件を満たさないときは(ステップS44のNO)、画像処理部23は、処理をステップS15に戻す。一方、差分Δが所定の一致条件を満たしたときは(ステップS44のYES)、画像処理部23は、当該撮像画像を自動撮像画像としてストレージ30内の第2画像記憶部32に保存する(ステップS45)。
【0043】
その後、画像処理部23は、参照物体画像に現れる参照物体に対する、自動撮像画像に現れる被写体の相対的な位置ズレを補正して補正撮像画像を生成する(ステップS46)。具体的には、画像処理部23は、参照マーカの位置情報(2次元の画像座標)とピンマーカの位置情報(2次元の画像座標)との差分の大きさが全体として最小となるように補正撮像画像を生成することができる。
【0044】
ステップS46では、たとえば、画像処理部23は、スケーリング処理と中心点移動処理とを実行することで補正撮像画像を生成すればよい。スケーリング処理では、画像処理部23は、参照物体画像に付された複数の参照マーカの位置情報から、2次元画像座標の最大値の組(xy直交座標系の場合は、x軸方向の最大値及びy軸方向の最大値の組)と、2次元画像座標の最小値の組(xy直交座標系の場合は、x軸方向の最小値及びy軸方向の最小値の組)とをそれぞれスケーリングポイントPA1,PA2として検出する。また画像処理部23は、レプリカRpの撮像画像に現れる複数のピンマーカの位置情報から、2次元画像座標の最大値の組(xy直交座標系の場合は、x軸方向の最大値及びy軸方向の最大値の組)と、2次元画像座標の最小値の組(xy直交座標系の場合は、x軸方向の最小値及びy軸方向の最小値の組)とをそれぞれスケーリングポイントPB1,PB2として検出する。
図12Aは、参照物体画像52から検出されたスケーリングポイントPA1,PA2を例示する図であり、
図12Bは、レプリカRpの撮像画像61から検出されたスケーリングポイントPB1,PB2を例示する図である。画像処理部23は、スケーリングポイントPA1,PA2間の長さ(対角線長)LAに対するスケーリングポイントPB1,PB2間の長さ(対角線長)LBの比率(=LB/LA)をスケール率として、自動撮像画像のサイズを拡大または縮小することができる。なお、スケーリングポイントPA1,PA2は、画像処理の実行前に、あらかじめ検出されていてもよい。
【0045】
一方、中心点移動処理では、画像処理部23は、参照物体画像に付された複数の参照マーカの位置情報から、2次元画像座標の平均値の組(xy直交座標系の場合は、x軸方向の平均値及びy軸方向の平均値の組)を中心点CP1として算出する。また画像処理部23は、レプリカRpの撮像画像に現れる複数の参照マーカの位置情報から、2次元画像座標の平均値の組(xy直交座標系の場合は、x軸方向の平均値及びy軸方向の平均値の組)を中心点CP2として算出する。
図13Aは、参照物体画像52から算出された中心点CP1を例示する図であり、
図13Bは、レプリカRpの撮像画像61から算出された中心点CP2を例示する図である。画像処理部23は、中心点CP1に対する中心点CP2の相対的な位置ズレを無くすように、自動撮像画像全体の座標をシフト量Δ(=CP1-CP2)だけシフトさせて補正撮像画像を生成することができる。なお、中心点CP1は、画像処理の実行前に、あらかじめ算出されていてもよい。
【0046】
ステップS46の後、画像処理部23は、補正撮像画像と、参照物体の形状の特徴を表す特徴画像とを重ね合わせて合成画像を生成し(ステップS47)、生成された合成画像を第2画像記憶部32に保存する(ステップS48)。
図14は、ステップS47で生成される合成画像C1を例示する図である。合成画像C1では、特徴画像53は、参照物体Tgtの輪郭線を表す輪郭線画像である。あるいは、画像処理部23は、補正撮像画像からピンマーカを削除して得られる画像と特徴画像とを重ね合わせて合成画像を生成してもよい。
図15は、そのような合成画像C2を例示する図である。具体的には、ピンマーカがあらかじめ選択された特定の色を有している場合に、画像処理部23は、画像フィルタを用いて、補正撮像画像からその特定の色を成分とする色空間画像を抽出し、抽出された色空間画像を用いてピンマーカを高い精度で検出し削除することができる。
【0047】
その後、画像処理部23は、処理を続行するときは(ステップS49のYES)、
図6のステップS15に処理を移行させ、処理を続行しないときは(ステップS49のNO)、画像処理を終了する。
【0048】
以上に説明したとおり、画像処理装置20は、参照物体画像及び被写体の撮像画像からそれぞれを検出された第1のマーカ及び第2のマーカを用いて、撮像画像に現れる被写体と参照物体画像に現れる参照物体との間の比較結果を生成し、当該比較結果が所定の一致条件を満たすときの当該撮像画像を自動撮像画像として保存することができる。これにより、被写体と参照物体との間のズレをユーザが認識するのに適した自動撮像画像を生成し保存することが可能となる。実物を模したレプリカRpを制作する際、当該レプリカRpを被写体とし、当該実物を参照物体として選択すれば、ユーザは、自動撮像画像に基づいてレプリカと実物との間のズレを正確に認識することができるので、当該認識されたズレを小さくするようにレプリカRpを修正することによりレプリカRpの完成度を高めることができる。
【0049】
また画像処理装置20は、
図10または
図11に例示されるような、所定の一致条件を満たすように誘導するための第1及び第2のガイド線からなるガイドを生成し、このガイドをディスプレイ40に表示することができるので、ユーザは、容易に自動撮像画像を得ることができる。
【0050】
また画像処理装置20は、
図14または
図15に例示されるような、自動撮像画像と参照物体の形状の特徴を表す特徴画像(たとえば、輪郭線画像)とを重ね合わせて合成画像を生成することができるので、ユーザは、合成画像に基づいてレプリカと実物との間のズレをより正確に認識することができる。したがって、ユーザは、レプリカRpの完成度をさらに高めることができる。
【0051】
次に、他の実施形態に係る画像処理について以下に説明する。
【0052】
撮像部10に対するレプリカRpの相対的な姿勢や相対的な位置によっては、或るピンマーカを別のピンマーカであると誤って検出する状況が生ずることがある。この場合、レプリカRpについての姿勢情報p
2及び距離d
2の推定精度が低くなる。
図16A及び
図16Bは、そのような状況を説明するための図である。
図16Aは、ピンマーカP1~P12のすべてを検出可能とする位置及び姿勢を有するレプリカRpの撮像画像61Pを示し、
図16Bは、ピンマーカP1~P12のすべてを検出することが難しい位置及び姿勢を有するレプリカRpの撮像画像61Cを示す図である。
図16Bに示されるように、レプリカRpに付されたピンマーカP1~P12のうち、左側のエリアA1内のピンマーカP8の大部分がレプリカRpに隠れてしまい、ピンマーカP8が誤って検出されるおそれがある。
図17及び
図18は、このような状況に対処するための処理手順を示すフローチャートである。
図17,
図18及び
図7は、結合子C1,C2,C3,C4を介して相互に結合されている。
図7の処理内容は、上述したとおりである。
図17のフローチャートは、
図17のステップS18,S19,S20,S21を除いて、
図6のフローチャートと同じである。
【0053】
図17を参照すると、現在の撮像画像から所定数以上の数のピンマーカが検出されたとき(ステップS17のYES)、画像処理部23は、後の処理で利用される参照用位置情報が存在するかどうかを判定する(ステップS18)。参照用位置情報が存在しないと判定されたとは(ステップS18のNO)、参照用位置情報を生成するためのステップS19~S21が実行され、参照用位置情報が既に存在すると判定されたときは(ステップS18のYES)、
図18に示されるステップS23~S30が実行される。
【0054】
ステップS19では、画像処理部23は、ステップS16で現在検出されたピンマーカの画像座標が参照用位置情報の画像座標として適当であるかどうかを判定する。具体的には、画像処理部23は、各ピンマーカの画像座標が所定の数値範囲内にあれば、現在検出されたピンマーカの画像座標が参照用位置情報の画像座標として適当であると判定することができる(ステップS19のYES)。各ピンマーカの画像座標が所定の数値範囲内になければ、画像処理部23は、現在検出されたピンマーカの画像座標が参照用位置情報の画像座標として適当ではないと判定し(ステップS19のNO)、ステップS15に処理を戻す。
図19A及び
図19Bは、それぞれ、現在検出されたピンマーカの画像座標の配列を例示する図である。
図19Aには、K個のピンマーカの画像座標C[0],C[1],・・・,C[K-2],C[K-1]の配列が示されており、
図19Bには、(K-2)個のピンマーカの画像座標C[0],C[1],・・・,C[K-2],C[K-1]の配列が示されている。ここで、Kは、検出されるべきピンマーカの最大個数を示す正整数である。
【0055】
ステップS19でYESの場合、画像処理部23は、現在検出されたピンマーカの画像座標にそれぞれインデックスを割り当る(ステップS20)。インデックスは、ピンマーカ識別子であり、ピンマーカを一意に識別するための整数などの符号であればよい。次いで、画像処理部23は、現在検出されたピンマーカの現在の画像座標と対応するインデックスとの組を参照用位置情報として一時記憶メモリに保存する(ステップS21)。
図20は、参照用位置情報Mk_refの構成を表す図である。
図20に示される参照用位置情報Mk_refは、ピンマーカの画像座標R[0],R[1],・・・,R[K-2],R[K-1]とこれらにそれぞれ割り当てられたインデックス0,1,・・・,K-2,K-1とを含む。
【0056】
一方、参照用位置情報が既に存在すると判定されたときは(ステップS18のYES)、画像処理部23は、
図18に示されるステップS23~S30を実行する。ステップS23では、現在検出されたピンマーカの現在の画像座標C[n]の番号nが初期化される(ステップS23)。次いで、画像処理部23は、現在の画像座標C[n]を参照用位置情報の以前の画像座標R[0]~R[K-1]と比較して、以前の画像座標R[0]~R[K-1]の中から当該現在の画像座標C[n]と対応する画像座標R[k](kは0~K-1の範囲内の整数)を見つけ出すことを試みる(ステップS24)。具体的には、たとえば、画像処理部23は、現在の画像座標C[n]と以前の画像座標R[0]~R[K-1]との間の距離ベクトルΔC[0](=C[n]-R[0]),ΔC[1](=C[n]-R[1]),・・・,ΔC[K-1](=C[n]-R[K-1])を算出し、さらに距離ベクトルΔC[0],ΔC[1],・・・,ΔC[K-1]それぞれのノルムΓ[0](=|ΔC[0]|),Γ[1](=|ΔC[1]|),・・・,Γ[K-1](=|ΔC[K-1]|)の中から最も小さいノルムΓ[k]に対応する画像座標R[k]を見つけ出すことができる。
【0057】
対応する画像座標R[k]が見つからなかったときは(ステップS25のNO)、ステップS27に処理が移行する。対応する画像座標R[k]が見つかったときは(ステップS25のYES)、画像処理部23は、現在の画像座標C[n]に、参照用位置情報の当該対応する画像座標R[k]のインデックス(ピンマーカ識別子)kを割り当てる(ステップS26)。これにより、以前の撮像画像と現在の撮像画像との間でピンマーカのトラッキングが可能となる。その後、ステップS27に処理が移行する。
【0058】
ステップS27では、番号nが、現在検出されたピンマーカの個数Nから1を減算した最大数(=N-1)に到達したかどうかが判定される。番号nが最大数に到達しないときは(ステップS27のNO)、画像処理部23は、番号nをインクリメントして(ステップS28)、ステップS24に処理を戻す。
【0059】
番号nが最大数に到達したときは(ステップS27のYES)、画像処理部23は、現在検出されたピンマーカの現在の画像座標C[0]~C[N-1]が参照用位置情報の画像座標として適当かどうかを確かめるために、現在の画像座標C[0]~C[N-1]と参照用位置情報の以前の画像座標R[0]~R[K-1]とが互いに一対一で対応付けされたかどうかを判定する(ステップS29)。たとえば、現在の画像座標C[0]~C[N-1]の個数Nが、検出されるべきピンマーカの最大個数Kと一致しないときは、当該一対一での互いの対応付けはされていないとの判定が行われる(ステップS29のNO)。個数Nが最大個数Kと一致していたとしても、現在の画像座標C[0]~C[K-1]のすべてにインデックスを割り当てることに失敗したときは、当該一対一での互いの対応付けはされていないとの判定が行われる(ステップS29のNO)。
【0060】
図21A及び
図21Bは、参照用位置情報Mk_refと、現在検出されたピンマーカの位置情報Mk_curとの対応関係を例示する図である。
図21A及び
図21Bに示されるように、位置情報Mk_curにおける現在の画像座標C[0],C[2],C[1],・・・,C[K-2],C[K-1]は、参照用位置情報Mk_refにおける以前の画像座標R[0],R[1],R[2],・・・,R[K-2],R[K-1]とそれぞれ一対一で対応付けされている。しかしながら、現在の画像座標C[3]は、以前の画像座標R[0]~R[K-1]のいずれとも対応付けされておらず、以前の画像座標R[3]と対応する現在の画像座標をもつピンマーカは検出されていない。
【0061】
一対一での互いの対応付けはされていないとの判定(ステップS29のNO)に応じて、画像処理部23は、
図7のステップS41に処理を移行させる。ステップS41では、画像処理部23は、ピンマーカの位置情報(現在の画像座標とこれらに割り当てられたインデックスとの組)と、ストレージ30の3Dモデル記憶部33内にあらかじめ用意された3次元モデルとを用いて、撮像画像に現れる被写体であるレプリカRpの姿勢情報p
2と被写体までの距離d
2とを推定する。インデックス未割り当ての現在の画像座標は、ステップS41の推定に利用されないので、姿勢情報p
2と距離d
2を正確に推定することが可能となる。
【0062】
一方、一対一での対応付けがされているとの判定を行ったときは(ステップS29のYES)、画像処理部23は、現在検出されたピンマーカの位置情報で、すなわち、現在の画像座標C[0]~C[K-1]とこれらにそれぞれ割り当てられたインデックス0,1,・・・,K-2,K-1との組み合わせで参照用位置情報を更新する(ステップS30)。
図22A及び
図22Bは、更新前の参照用位置情報Mk_refと、現在検出されたピンマーカの位置情報Mk_curとの対応関係を例示する図である。
図22A及び
図22Bに示されるように、位置情報Mk_curにおける現在の画像座標C[0],C[2],C[3],C[4],・・・,C[K-2],C[K-1]は、更新前の参照用位置情報Mk_refにおける以前の画像座標R[0],R[1],R[2],R[4],・・・,R[K-2],R[K-1]とそれぞれ一対一で対応付けされている。ステップS30の後は、画像処理部23は、
図7のステップS41に処理を移行させる。
【0063】
以上に説明したとおり、画像処理部23は、現在の撮像画像から検出されたピンマーカの現在の画像座標を、参照用位置情報の画像座標(すなわち、以前の撮像画像から検出されたピンマーカの以前の画像座標)と比較し(ステップS24~S25)、現在の画像座標と以前の画像座標との間の対応付けに成功したときは(ステップS25のYES)、以前の画像座標に割り当てられているインデックスすなわちピンマーカ識別子を現在の画像座標に割り当てる(ステップS26)ことができるので、以前の撮像画像と現在の撮像画像との間のピンマーカのトラッキングを行うことが可能となる。インデックス未割り当ての現在の画像座標は、姿勢情報p2及び距離d2の推定に使用されず、信頼性の高い現在の画像座標を用いた推定処理がなされるので、姿勢情報p2及び距離d2の推定精度を高めることができる。
【0064】
次に、さらに他の実施形態に係る画像処理について以下に説明する。
【0065】
撮像部10に対するレプリカRpの相対的な姿勢や相対的な位置によっては、十分な数のピンマーカの検出に失敗する状況が生ずることがある。この場合、レプリカRpについての姿勢情報p
2及び距離d
2の推定精度が低くなる。
図23は、そのような状況に対処するための処理手順を示すフローチャートである。
図23のフローチャートは、ステップS31,S32が追加された点を除いて、
図18のフローチャートと同じである。
【0066】
図23を参照すると、ステップS29で、現在の画像座標C[0]~C[N-1]と参照用位置情報の以前の画像座標R[0]~R[K-1]とを互いに一対一で対応付けすることに成功したとの判定がなされたときは(ステップS29のYES)、画像処理部23は、現在検出されたピンマーカの位置情報で参照用位置情報を更新する(ステップS30)。その後、画像処理部23は、
図7のステップS41に処理を移行させる。
【0067】
一方、現在の画像座標C[0]~C[N-1]と参照用位置情報の以前の画像座標R[0]~R[K-1]とを互いに一対一で対応付けすることに失敗したとの判定がなされたときは(ステップS29のNO)、画像処理部23は、補間を適用するかどうかを判定する(ステップS31)。このとき、たとえば、あらかじめユーザが補間を適用することを設定していた場合、あるいは、現在の画像座標C[0]~C[N-1]と以前の画像座標R[0]~R[K-1]との間の距離関係が所定の設定条件を満たす場合に、補間を適用する旨が判定されればよい(ステップS31)。補間を適用しない場合は(ステップS31のNO)、画像処理部23は、
図7のステップS41に処理を移行させる。
【0068】
補間を適用する場合は(ステップS31のYES)、画像処理部23は、参照用位置情報を用いて、ステップS16で検出されなかったピンマーカ(未検出ピンマーカ)の位置情報、及び、ステップS26でインデックスが割り当てられなかったピンマーカの位置情報を補間する(ステップS32)。
図24A,
図24B及び
図24Cは、ピンマーカの位置情報の補間を説明するための図である。
図24A及び
図24Bに示されるように、現在検出されたピンマーカの位置情報Mk_curにおける現在の画像座標C[0],C[2],C[1],・・・,C[K-2],C[K-1]は、参照用位置情報Mk_refにおける以前の画像座標R[0],R[1],R[2],・・・,R[K-2],R[K-1]とそれぞれ一対一で対応付けされている。しかしながら、現在の画像座標C[3]は、以前の画像座標R[0]~R[K-1]のいずれとも対応付けされておらず、以前の画像座標R[3]と対応する現在の画像座標をもつピンマーカは検出されていない。このような場合、
図24Cに示されるように、画像処理部23は、参照用位置情報Mk_refの画像座標R[3],R[4]を用いて、インデックス「3」,「4」について不足している現在の画像座標を補間することができる。
【0069】
以上に説明したとおり、画像処理部23は、現在の撮像画像からピンマーカが検出されないとき、参照用位置情報(すなわち、以前の撮像画像から検出されたピンマーカの位置情報)を用いて、現在の撮像画像から検出されるべきピンマーカの位置情報を補間することができる(ステップS32)。また、画像処理部23は、現在検出されたピンマーカの現在の画像座標と参照用位置情報の以前の画像座標との間の対応付け(インデックスの割り当て)に失敗したときは(ステップS25のNO)、当該現在の画像座標を使用せず、以前の画像座標と当該以前の画像座標に割り当てられているインデックス(ピンマーカ識別子)との組を用いて、現在の撮像画像から検出されるべきピンマーカの位置情報を補間することができる(ステップS32)。したがって、十分な数のピンマーカの検出に失敗する状況が生じたときでも、ピンマーカの位置情報を補間することが可能である。よって、姿勢情報p2及び距離d2の推定精度を高めることができる。
【0070】
以上、図面を参照して本開示に係る種々の実施形態について述べたが、これら実施形態は例示であり、これら実施形態以外の様々な形態を採用することもできる。本開示の範囲内において、上記実施形態の自由な組み合わせ、各実施形態の任意の構成要素の変形、または各実施形態の任意の構成要素の省略が可能である。
【0071】
また、本発明の趣旨及び範囲から逸脱することなく、上記実施形態の変更、追加及び改良を適宜行うことができることが理解されるべきである。本発明の範囲は、特許請求の範囲の記載に基づいて解釈されるべきであり、さらにその均等物を含むものと理解されるべきである。
【0072】
本開示に係る発明の内容を列記すると以下のとおりである。
【0073】
[項目1]
1つ以上の第1のマーカが付された参照物体画像を記憶している画像記憶部から前記参照物体画像(52)を取得するように構成された第1の画像取得部(21)と、
1つ以上の第2のマーカが付された被写体の撮像画像(61)を撮像部(10)から取得するように構成された第2の画像取得部(22)と、
前記参照物体画像及び前記撮像画像を解析することにより前記1つ以上の第1のマーカ及び前記1つ以上の第2のマーカをそれぞれ検出し、前記参照物体画像及び前記撮像画像を基に、当該検出された第1及び第2のマーカを用いて前記撮像画像に現れる被写体を前記参照物体画像に現れる参照物体と比較して比較結果を生成するように構成された画像処理部(23)とを備え、
前記画像処理部は、前記比較結果が所定の一致条件を満たすときの当該撮像画像を自動撮像画像として保存することを特徴とする画像処理装置(20)。
【0074】
[項目2]
項目1に記載の画像処理装置であって、前記画像処理部は、前記自動撮像画像と前記参照物体の形状の特徴を表す特徴画像とを重ね合わせて合成画像を生成するように構成されている、画像処理装置。
【0075】
[項目3]
項目1または2に記載の画像処理装置であって、
前記画像処理部は、
当該検出された第1のマーカの位置情報を用いて前記参照物体の姿勢情報及び前記参照物体までの距離を推定し、
当該検出された第2のマーカの位置情報を用いて前記被写体の姿勢情報及び前記被写体までの距離を推定し、
前記被写体の姿勢情報及び前記被写体までの距離の組と、前記参照物体の姿勢情報及び前記参照物体までの距離の組との差分を前記比較結果として生成する
ように構成されており、
前記所定の一致条件は、前記差分が所定の数値範囲内にあるとの条件を含む、画像処理装置。
【0076】
[項目4]
項目3に記載の画像処理装置であって、前記画像処理部は、あらかじめ用意された3次元モデルをさらに用いて前記参照物体の姿勢情報及び前記参照物体までの距離を推定し、あらかじめ用意された3次元モデルをさらに用いて前記被写体の姿勢情報及び前記被写体までの距離を推定するように構成されている、画像処理装置。
【0077】
[項目5]
項目1または2に記載の画像処理装置であって、前記画像処理部は、前記所定の一致条件を満たすように誘導するガイドを生成して前記ガイドをディスプレイに表示するように構成されている、画像処理装置。
【0078】
[項目6]
項目5に記載の画像処理装置であって、
前記画像処理部は、
当該検出された第1のマーカの位置情報を用いて前記参照物体の姿勢情報及び前記参照物体までの距離を推定し、
当該検出された第2のマーカの位置情報を用いて前記被写体の姿勢情報及び前記被写体までの距離とを推定し、
前記参照物体の姿勢情報及び前記参照物体までの距離の組を幾何学的に表す第1のガイド線と、前記被写体の姿勢情報及び前記被写体までの距離の組を幾何学的に表す第1のガイド線との組を前記ガイドとして生成する
ように構成されている、画像処理装置。
【0079】
[項目7]
項目1から6のうちのいずれか1つの項目に記載の画像処理装置であって、
当該連続的に取得された撮像画像は、現在の撮像画像と前記現在の撮像画像よりも前に取得された以前の撮像画像とを含み、
前記画像処理部は、前記現在の撮像画像から前記第2のマーカが検出されないとき、前記以前の撮像画像から検出された当該第2のマーカの位置情報に基づいて、前記現在の撮像画像から検出されるべき当該第2のマーカの位置情報を補間するように構成されている、画像処理装置。
【0080】
[項目8]
項目1から6のうちのいずれか1項目に記載の画像処理装置であって、
当該連続的に取得された撮像画像は、現在の撮像画像と前記現在の撮像画像よりも前に取得された以前の撮像画像とを含み、
前記画像処理部は、前記現在の撮像画像から検出された当該第2のマーカの現在の画像座標を、前記以前の撮像画像から検出された当該第2のマーカの以前の画像座標と比較して、前記現在の画像座標と前記以前の画像座標との間の対応付けに成功したときは、前記以前の画像座標に割り当てられているピンマーカ識別子を前記現在の画像座標に割り当てるように構成されている、画像処理装置。
【0081】
[項目9]
項目8に記載の画像処理装置であって、前記画像処理部は、前記現在の画像座標と前記以前の画像座標との間の対応付けに失敗したときは、前記現在の画像座標を使用せず、前記以前の画像座標と前記以前の画像座標に割り当てられているピンマーカ識別子との組を用いて、前記現在の撮像画像から検出されるべき当該第2のマーカの位置情報を補間するように構成されている、画像処理装置。
【0082】
[項目10]
項目2に記載の画像処理装置であって、前記画像処理部は、当該検出された第2のマーカを前記撮像画像から削除して得られる画像と前記特徴画像とを重ね合わせて合成画像を生成するように構成されている、画像処理装置。
【0083】
[項目11]
項目10に記載の画像処理装置であって、
前記第2のマーカは、あらかじめ選択された特定の色を有し、
前記画像処理部は、前記撮像画像から前記特定の色を成分とする色空間画像を抽出し、前記色空間画像を用いて、当該検出された第2のマーカを前記撮像画像から削除するように構成されている、画像処理装置。
【0084】
[項目12]
項目1から11のうちのいずれか1つの項目に記載の画像処理装置と、前記撮像部と、前記画像記憶部とを備えることを特徴とする情報処理装置。
【0085】
[項目13]
単数または複数のプロセッサにより実施されるべき画像処理方法であって、
1つ以上の第1のマーカが付された参照物体画像を記憶している画像記憶部から前記参照物体画像を取得するステップと、
1つ以上の第2のマーカが付された被写体の撮像画像を撮像部から連続的に取得するステップと、
前記参照物体画像及び前記撮像画像を解析することにより前記1つ以上の第1のマーカ及び前記1つ以上の第2のマーカをそれぞれ検出するステップと、
前記参照物体画像及び前記撮像画像を基に、当該検出された第1及び第2のマーカを用いて前記撮像画像に現れる被写体を前記参照物体画像に現れる参照物体と比較して比較結果を生成するステップと、
前記比較結果が所定の一致条件を満たすときの当該撮像画像を自動撮像画像として保存するステップと
を備えることを特徴とする画像処理方法。
【0086】
[項目14]
項目13に記載の画像処理方法であって、前記自動撮像画像と前記参照物体の形状の特徴を表す特徴画像とを重ね合わせて合成画像を生成するステップをさらに備える画像処理方法。
【0087】
[項目15]
項目13または14に記載の画像処理方法であって、
当該検出された第1のマーカの位置情報を用いて前記参照物体の姿勢情報及び前記参照物体までの距離を推定するステップと、
当該検出された第2のマーカの位置情報を用いて前記被写体の姿勢情報及び前記被写体までの距離を推定するステップと
をさらに備え、
前記比較結果は、前記被写体の姿勢情報及び前記被写体までの距離の組と、前記参照物体の姿勢情報及び前記参照物体までの距離の組との差分として生成され、
前記所定の一致条件は、前記差分が所定の数値範囲内にあるとの条件を含む、画像処理方法。
【0088】
[項目16]
項目15に記載の画像処理方法であって、
前記参照物体の姿勢情報と前記参照物体までの距離とは、あらかじめ用意された3次元モデルをさらに用いて推定され、
前記被写体の姿勢情報と前記被写体までの距離とは、あらかじめ用意された3次元モデルをさらに用いて推定される、画像処理方法。
【0089】
[項目17]
項目13または14に記載の画像処理方法であって、前記所定の一致条件を満たすように誘導するガイドを生成して前記ガイドをディスプレイに表示するステップをさらに備える画像処理方法。
【0090】
[項目18]
項目17に記載の画像処理方法であって、
当該検出された第1のマーカの位置情報を用いて前記参照物体の姿勢情報及び前記参照物体までの距離を推定するステップと、
当該検出された第2のマーカの位置情報を用いて前記被写体の姿勢情報及び前記被写体までの距離を推定するステップと
をさらに備え、
前記ガイドは、前記参照物体の姿勢情報及び前記参照物体までの距離の組を幾何学的に表す第1のガイド線と、前記被写体の姿勢情報及び前記被写体までの距離の組を幾何学的に表す第2のガイド線とを含む、画像処理方法。
【0091】
[項目19]
項目13から18のうちのいずれか1つの項目に記載の画像処理方法であって、当該連続的に取得された撮像画像のうちの現在の撮像画像から前記第2のマーカが検出されないとき、当該連続的に取得された撮像画像のうち前記現在の撮像画像よりも前に取得された以前の撮像画像から検出された当該第2のマーカの位置情報を用いて、前記現在の撮像画像から検出されるべき当該第2のマーカの位置情報を補間するステップをさらに備える画像処理方法。
【0092】
[項目20]
項目13から18のうちのいずれか1項目に記載の画像処理方法であって、当該連続的に取得された撮像画像のうちの現在の撮像画像から検出された当該第2のマーカの現在の画像座標を、当該連続的に取得された撮像画像のうち前記現在の撮像画像よりも前に取得された以前の撮像画像から検出された当該第2のマーカの以前の画像座標と比較して、前記現在の画像座標と前記以前の画像座標との間の対応付けに成功したときは、前記以前の画像座標に割り当てられているピンマーカ識別子を前記現在の画像座標に割り当てるステップをさらに備える画像処理方法。
【0093】
[項目21]
項目20に記載の画像処理方法であって、前記現在の画像座標と前記以前の画像座標との間の対応付けに失敗したときは、前記現在の画像座標を破棄し、前記以前の画像座標と前記以前の画像座標に割り当てられているピンマーカ識別子との組を用いて、前記現在の撮像画像から検出されるべき当該第2のマーカの位置情報を補間するステップをさらに備える、画像処理方法。
【0094】
[項目22]
項目14に記載の画像処理方法であって、前記合成画像は、当該検出された第2のマーカを前記撮像画像から削除して得られる画像と前記特徴画像とを重ね合わせて生成される、画像処理方法。
【0095】
[項目23]
項目22に記載の画像処理方法であって、
前記第2のマーカは、あらかじめ選択された特定の色を有し、
当該画像処理方法は、
前記撮像画像から前記特定の色を成分とする色空間画像を抽出するステップと、
前記色空間画像を用いて、当該検出された第2のマーカを前記撮像画像から削除するステップと
をさらに備える画像処理方法。
【0096】
[項目24]
不揮発性メモリから読み出されて実行されるべきコンピュータプログラムであって、項目13から23のうちのいずれか1つの項目に記載の画像処理方法を単数または複数のプロセッサに実施させることを特徴とするコンピュータプログラム。
【符号の説明】
【0097】
1:情報処理装置、10:撮像部、11:画像バッファ、20:画像処理装置、21:参照物体画像取得部、22:撮像画像取得部、23:画像処理部、30:ストレージ、31:第1画像記憶部、32:第2画像記憶部、33:3Dモデル記憶部、40:ディスプレイ、41:通信部、42:操作入力部、51:原画像、52:参照物体画像、53:特徴画像、90:データ処理装置、91:プロセッサ、92:ランダムアクセスメモリ(RAM)、93:不揮発性メモリ、94:インタフェース回路、95:信号路。