(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-26
(45)【発行日】2024-09-03
(54)【発明の名称】情報処理装置及び情報処理プログラム
(51)【国際特許分類】
G06T 3/147 20240101AFI20240827BHJP
【FI】
G06T3/147
(21)【出願番号】P 2020177539
(22)【出願日】2020-10-22
【審査請求日】2023-09-19
(73)【特許権者】
【識別番号】000005496
【氏名又は名称】富士フイルムビジネスイノベーション株式会社
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】針貝 潤吾
(72)【発明者】
【氏名】桑田 良隆
(72)【発明者】
【氏名】佐々木 裕丈
(72)【発明者】
【氏名】石原 拓真
【審査官】山田 辰美
(56)【参考文献】
【文献】特開平07-168872(JP,A)
【文献】特開2017-175523(JP,A)
【文献】特開2002-352259(JP,A)
【文献】米国特許第06912293(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 3/147
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
プロセッサを備え、
前記プロセッサは、
消失点を有する原画像の一部に設定された置換領域から、見本画像を幾何変換した幾何変換画像を生成する際の幾何変換領域を
、前記消失点と見なせる基準点を用いて設定し、
前記見本画像を前記幾何変換領域に幾何変換した幾何変換画像を生成し、
前記幾何変換画像を用いて前記置換領域を置換する
情報処理装置。
【請求項2】
前記プロセッサは、
前記置換領域の形状から、前記置換領域の形状を含む前記幾何変換領域を特定するための複数の特定点を設定することにより前記幾何変換領域を設定する
請求項1記載の情報処理装置。
【請求項3】
前記プロセッサは、
前記置換領域と前記置換領域以外の他の領域とが二値で表され、前記原画像のサイズと同じサイズのマスク画像を取得し、
前記マスク画像の基準点と前記置換領域との位置関係から前記複数の特定点を設定する
請求項2記載の情報処理装置。
【請求項4】
前記プロセッサは、
前記複数の特定点で表される前記幾何変換領域の一部が、前記マスク画像からはみ出る場合、はみ出た分に対応して前記見本画像を拡張した拡張見本画像を前記幾何変換領域に幾何変換する
請求項3記載の情報処理装置。
【請求項5】
前記拡張見本画像は、前記見本画像の周縁部の画像を反転した画像を追加見本画像として前記周縁部に追加することにより生成する
請求項4記載の情報処理装置。
【請求項6】
前記プロセッサは、
前記マスク画像の中心点を前記基準点として、前記基準点と前記置換領域との位置関係から前記複数の特定点を設定する
請求項3~5の何れか1項に記載の情報処理装置。
【請求項7】
前記プロセッサは、
前記基準点と、前記複数の特定点のうち二つの特定点と、を各々結ぶ二つの直線により定まる画角が最大となるように、前記基準点の位置を調整する
請求項3~5の何れか1項に記載の情報処理装置。
【請求項8】
前記プロセッサは、
前記置換領域と前記幾何変換領域との一致の度合いを用いて前記基準点の位置を調整する
請求項7記載の情報処理装置。
【請求項9】
前記プロセッサは、
前記幾何変換領域のサイズに応じて前記見本画像のサイズを調整する
請求項1~8の何れか1項に記載の情報処理装置。
【請求項10】
前記プロセッサは、
前記原画像の選択を受け付け、
前記見本画像の選択を受け付け、
前記幾何変換画像を用いて前記置換領域が置換された画像を表示させる
請求項1~9の何れか1項に記載の情報処理装置。
【請求項11】
コンピュータに、
消失点を有する原画像の一部に設定された置換領域から、見本画像を幾何変換した幾何変換画像を生成する際の幾何変換領域を
、前記消失点と見なせる基準点を用いて設定し、
前記見本画像を前記幾何変換領域に幾何変換した幾何変換画像を生成し、
前記幾何変換画像を用いて前記置換領域を置換する
処理を実行させる情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置及び情報処理プログラムに関する。
【背景技術】
【0002】
特許文献1には、原画像を入力する手段と、テクスチャ画像を入力する手段と、原画像にテクスチャ画像を貼り込む貼込領域を指定する手段と、原画像の貼込領域に対応するテクスチャ画像の使用領域を指定する手段と、原画像の貼込領域にテクスチャ画像の使用領域を合成する画像合成手段とを備えた画像合成装置において、画像合成手段が、原画像の貼込領域に、少なくとも1つの窓領域を有するマスクを設定する機能と、テクスチャ画像の使用領域に対して擬似的な透視変換を施す機能と、を備えていることを特徴とする画像合成装置が開示されている。
【0003】
特許文献2には、処理対象となる元画像を表す処理対象データと、該元画像で表される物品を構成し得る素材の画像データである素材データと、前記元画像において変更可能な素材の画像が占める領域であるはめ込み領域を表すはめ込み用マスクデータとを記憶した記憶手段と、前記素材データを前記はめ込み領域の形状に合わせて変形して変形素材データを生成する変形手段と、前記はめ込み領域内の前記処理対象データを、前記変形素材データに基づいて更新するはめ込み手段と、該はめ込み手段により更新された前記処理対象データで表される画像を表示する表示手段とを具備することを特徴とする画像シミュレーション装置が開示されている。
【0004】
特許文献3には、原画像から指定領域を検出する領域検出部と、前記指定領域の形状に合わせて見本となる画像である見本画像の形状を変形させるとともに、当該指定領域に合わせた奥行きを表現するように当該見本画像のテクスチャを変形させる画像処理部と、変形した前記見本画像を前記原画像の前記指定領域に対し合成する画像合成部と、を備える画像処理装置が開示されている。
【先行技術文献】
【特許文献】
【0005】
【文献】特開平6-274650号公報
【文献】特開平8-287225号公報
【文献】特開2018-81430号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
部屋等を撮影した原画像の一部である壁面等を、別の模様の壁面等の見本画像を用いて置換したい場合がある。この場合、置換後の画像に違和感が生じないように、見本画像を置換領域に応じて幾何変換する場合があるが、見本画像を幾何変換する幾何変換領域は、ユーザが設定する必要があった。
【0007】
本発明は、ユーザが幾何変換領域を設定することなく、原画像の一部を、幾何変換画像を用いて置換することができる情報処理装置及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
第1態様に係る情報処理装置は、プロセッサを備え、前記プロセッサは、原画像の一部に設定された置換領域から、見本画像を幾何変換した幾何変換画像を生成する際の幾何変換領域を設定し、前記見本画像を前記幾何変換領域に幾何変換した幾何変換画像を生成し、前記幾何変換画像を用いて前記置換領域を置換する。
【0009】
第2態様に係る情報処理装置は、第1態様に係る情報処理装置において、前記プロセッサは、前記置換領域の形状から、前記置換領域の形状を含む前記幾何変換領域を特定するための複数の特定点を設定することにより前記幾何変換領域を設定する。
【0010】
第3態様に係る情報処理装置は、第2態様に係る情報処理装置において、前記プロセッサは、前記置換領域と前記置換領域以外の他の領域とが二値で表され、前記原画像のサイズと同じサイズのマスク画像を取得し、前記マスク画像の基準点と前記置換領域との位置関係から前記複数の特定点を設定する。
【0011】
第4態様に係る情報処理装置は、第3態様に係る情報処理装置において、前記プロセッサは、前記複数の特定点で表される前記幾何変換領域の一部が、前記マスク画像からはみ出る場合、はみ出た分に対応して前記見本画像を拡張した拡張見本画像を前記幾何変換領域に幾何変換する。
【0012】
第5態様に係る情報処理装置は、第4態様に係る情報処理装置において、前記拡張見本画像は、前記見本画像の周縁部の画像を反転した画像を追加見本画像として前記周縁部に追加することにより生成する。
【0013】
第6態様に係る情報処理装置は、第3~第5態様の何れかの態様に係る情報処理装置において、前記プロセッサは、前記マスク画像の中心点を前記基準点として、前記基準点と前記置換領域との位置関係から前記複数の特定点を設定する。
【0014】
第7態様に係る情報処理装置は、第3~第5態様の何れかの態様に係る情報処理装置において、前記プロセッサは、前記基準点と、前記複数の特定点のうち二つの特定点と、を各々結ぶ二つの直線により定まる画角が最大となるように、前記基準点の位置を調整する。
【0015】
第8態様に係る情報処理装置は、第7態様に係る情報処理装置において、前記プロセッサは、前記置換領域と前記幾何変換領域との一致の度合いを用いて前記基準点の位置を調整する。
【0016】
第9態様に係る情報処理装置は、第1~第8態様の何れかの態様に係る情報処理装置において、前記プロセッサは、前記幾何変換領域のサイズに応じて前記見本画像のサイズを調整する。
【0017】
第10態様に係る情報処理装置は、第1~第9態様の何れかの態様に係る情報処理装置において、前記プロセッサは、前記原画像の選択を受け付け、前記見本画像の選択を受け付け、前記幾何変換画像を用いて前記置換領域が置換された画像を表示させる。
【0018】
第11態様に係る情報処理プログラムは、コンピュータに、原画像の一部に設定された置換領域から、見本画像を幾何変換した幾何変換画像を生成する際の幾何変換領域を設定し、前記見本画像を前記幾何変換領域に幾何変換した幾何変換画像を生成し、前記幾何変換画像を用いて前記置換領域を置換する処理を実行させる。
【発明の効果】
【0019】
第1、第11態様によれば、ユーザが幾何変換領域を設定することなく、原画像の一部を、幾何変換画像を用いて置換することができる。
【0020】
第2態様によれば、置換領域の形状に関係なく幾何変換領域を設定する場合と比較して、置換領域の形状に合った幾何変換領域を設定することができる。
【0021】
第3態様によれば、マスク画像の基準点と置換領域との位置関係に関係なく幾何変換領域を設定する場合と比較して、置換領域の形状に合った幾何変換領域を設定することができる。
【0022】
第4態様によれば、幾何変換領域の一部が、マスク画像からはみ出る場合に見本画像を拡張しない場合と比較して、置換後の画像がより自然となる。
【0023】
第5態様によれば、見本画像と追加見本画像との境界部分の模様が不自然となるのが抑制される。
【0024】
第6態様によれば、複雑な処理をすることなく簡易に複数の特定点を設定することができる。
【0025】
第7態様によれば、基準点の位置を固定にした場合と比較して、射影変換領域の形状を置換領域の形状に近づけることができる。
【0026】
第8態様によれば、基準点と、複数の特定点のうち二つの特定点と、を各々結ぶ二つの直線により定まる画角に関係なく基準点の位置を調整する場合と比較して、射影変換領域の形状を置換領域の形状に近づけることができる。
【0027】
第9態様によれば、幾何変換領域のサイズに関係なく見本画像のサイズを固定にした場合と比較して、置換後の画像がより自然となる。
【0028】
第10態様によれば、原画像及び見本画像の選択を受け付けない場合と比較して、様々な原画像及び見本画像について、原画像の一部を見本画像で射影変換した画像を得ることができる。
【図面の簡単な説明】
【0029】
【
図1】第1実施形態に係る情報処理装置の構成図である。
【
図2】第1実施形態に係る情報処理のフローチャートである。
【
図7】射影変換領域の設定について説明するための図である。
【
図8】射影変換領域の設定について説明するための図である。
【
図9】見本画像を射影変換領域に変換する場合について説明するための図である。
【
図11】射影変換後の合成画像の一例を示す図である。
【
図12】第2実施形態に係る情報処理のフローチャートである。
【
図13】見本画像の拡張について説明するための図である。
【
図14】見本画像の拡張について説明するための図である。
【
図15】第3実施形態に係る情報処理のフローチャートである。
【
図16】消失点の移動について説明するための図である。
【
図17】消失点の移動について説明するための図である。
【
図18】第4実施形態に係る情報処理のフローチャートである。
【
図19】見本画像の補正について説明するための図である。
【
図20】見本画像の補正について説明するための図である。
【発明を実施するための形態】
【0030】
以下、図面を参照して、本発明を実施するための形態例を詳細に説明する。
【0031】
(第1実施形態)
【0032】
図1は、本実施形態に係る情報処理装置30の構成図である。情報処理装置30は、一般的なコンピュータを含む装置である。なお、本実施形態では、情報処理装置30が、一例として不動産物件等の室内を撮影した室内画像のうち、室内の壁紙及び床材等の一部のインテリアの画像を別のインテリアの見本画像に置換した合成画像を生成して表示するインテリアシミュレーション装置の場合について説明する。また、情報処理装置30の処理対象の画像としては、不動産物件の室内画像に限られるものではなく、壁、窓等が存在する室内の画像を適用可能である。従って、不動産物件以外の室内画像、例えば自分の部屋の室内画像でもよい。さらに、室内画像に限らず、風景の中に存在する家及びビル等の建物の画像等でもよい。
【0033】
図1に示すように、情報処理装置30は、コントローラ31を備える。コントローラ31は、CPU(Central Processing Unit)31A、ROM(Read Only Memory)31B、RAM(Random Access Memory)31C、及び入出力インターフェース(I/O)31Dを備える。そして、CPU31A、ROM31B、RAM31C、及びI/O31Dがシステムバス31Eを介して各々接続されている。システムバス31Eは、コントロールバス、アドレスバス、及びデータバスを含む。なお、CPU31Aは、プロセッサの一例である。
【0034】
また、I/O31Dには、操作部32、表示部33、通信部34、及び記憶部35が接続されている。
【0035】
操作部32は、例えばマウス及びキーボードを含んで構成される。
【0036】
表示部33は、例えば液晶ディスプレイ等で構成される。
【0037】
通信部34は、外部装置とデータ通信を行うためのインターフェースである。
【0038】
記憶部35は、ハードディスク等の不揮発性の外部記憶装置で構成され、後述する情報処理プログラム35A、室内画像データベース35B、及び見本画像データベース35C等を記憶する。CPU31Aは、記憶部35に記憶された情報処理プログラム35AをRAM31Cに読み込んで実行する。
【0039】
次に、
図2を参照して、本実施の形態に係る情報処理装置30の作用を説明する。CPU31Aにより情報処理プログラム35Aを実行させることで、
図2に示す情報処理が実行される。なお、
図2に示す情報処理は、例えば、ユーザの操作により情報処理プログラム35Aの実行が指示された場合に実行される。
【0040】
ステップS100では、CPU31Aが、閲覧対象である室内画像の選択等をユーザが行うためのメニュー画面(図示省略)を表示部33に表示させる。ここで、ユーザは、操作部32を操作して、自身が閲覧したい室内画像を選択する。
【0041】
ステップS102では、CPU31Aが、室内画像の選択を受け付ける。そして、室内画像の選択を受け付けた場合はステップS104へ移行する。一方、室内画像の選択を受け付けていない場合は、室内画像の選択を受け付けるまで待機する。
【0042】
ステップS104では、選択された室内画像の原画像を記憶部35の室内画像データベース35Bから読み出すことにより取得し、表示部33に表示させる。記憶部35には、室内画像データベース35Bとして、様々な室内画像の原画像の画像データが予め記憶されている。
【0043】
図3には、室内画像の原画像の一例を示した。
図3に示すように、室内画像の原画像40は、部屋の内部を撮影した画像である。ここで、ユーザは、原画像40のうち、壁紙及び床材等の一部のインテリアの画像を別のインテリアの見本画像に置換したい領域を、操作部32を操作して指定する。本実施形態では、一例として右側の窓42を除いた壁44をユーザが指定した場合について説明する。なお、壁44を指定する際には、操作部32のマウスを用いてドラッグ操作することにより、例えば壁44を包含する範囲を指定領域として指定する。
【0044】
ステップS106では、CPU31Aが、指定領域の指定を受け付ける。そして、指定領域が指定された場合はステップS108へ移行する。一方、指定領域が指定されていない場合は、指定領域が指定されるまで待機する。
【0045】
ステップS108では、CPU31Aが、指定領域に基づいて置換領域を設定する。具体的には、公知の画像処理方法を用いて、指定領域から壁44の領域を切り出すことにより置換領域を設定する。これにより、原画像40の一部である壁44の領域が置換領域として設定される。以下では、壁44を置換領域44と称する場合がある。なお、公知の画像処理方法としては、例えば特開2017-126304号公報に開示された方法が用いられるが、これに限られるものではない。
【0046】
ステップS110では、CPU31Aが、ステップS108で設定された置換領域に基づいてマスク画像を生成する。ここで、マスク画像とは、原画像のうち、置換領域と置換領域以外の他の領域とが二値で表され、原画像40のサイズと同じサイズの二値画像である。
図4にはマスク画像の一例を示した。
図4に示すように、マスク画像50は、置換領域44の各画素の画素値が「1」、置換領域44以外の他の領域46の各画素の画素値が「0」で表された二値画像である。
【0047】
ここで、本実施形態では、
図5に示すように、原画像40が、消失点Sを有する画像である場合について説明する。ここで、消失点とは、遠近法において、実際は平行である複数の線を非平行で描く場合に、これら複数の線が交わる点である。このように消失点を有する原画像40の場合、例えば壁44と天井46との境界線K1と、壁44と窓42との境界線K2とは、実際は平行であるが、原画像40では非平行となる。このため、置換領域44を
図6に示すような横方向に木目がある見本画像60にそのまま置換してしまうと、遠近感が表現されない画像となってしまう。このため、本実施形態では、射影変換領域を設定し、見本画像を射影変換領域に射影変換した射影変換領域画像を生成し、射影変換画像を用いて置換領域44を置換する。なお、射影変換は幾何変換の一例であり、射影変換領域は幾何変換領域の一例であり、射影変換画像は幾何変換画像の一例である。
【0048】
そこで、ステップS112では、CPU31Aが、置換領域44から、射影変換領域を設定する。ここで、射影変換領域とは、見本画像を射影変換した射影変換画像を生成する際の領域である。
【0049】
具体的には、置換領域44の形状から、置換領域44の形状を含む射影変換領域を特定するための複数の特定点を設定することにより射影変換領域を設定する。複数の特定点は、例えばマスク画像50の基準点と置換領域44との位置関係から複数の特定点を設定する。マスク画像50の基準点は、原画像40の消失点と見なせる点である。原画像40の消失点を想定した点を基準点とするのは、原画像40の消失点と見なせる基準点を用いて射影変換領域を設定することにより、違和感が抑制された射影変換画像が得られるためである。
【0050】
本実施形態では、
図7に示すように、一例としてマスク画像50の中心点を基準点Fとした場合について説明するが、基準点Fの位置は中心点に限られるものではない。
【0051】
以下、説明を簡単にするために、単純な形状の置換領域を例に説明する。
図8には、基準点Fからマスク画像50の外縁に向けて延びると共に、置換領域44の外側から接触する直線L1、L2、すなわち置換領域44に外接する直線L1、L2を特定する。そして、直線L1、L2とマスク画像50の一辺H1(
図8の例では右辺)との交点を特定点T1、T2とする。次に、置換領域44の外縁上の点であって、特定点T1、T2と直線で結ぶことにより得られる閉領域が置換領域44を包含することとなる点を特定点とする。
図7の例では、置換領域44は台形を90度回転させた形状であり、当該台形の上辺の両端が特定点T3、T4となる。
【0052】
図8の例では、特定点T1~T4を直線で結ぶことにより囲まれた台形形状の領域が射影変換領域70となる。なお、
図8の例では、置換領域44と射影変換領域70とは一致する。
【0053】
図7に示す例においても、特定点T1~T4を直線で結ぶことにより囲まれた台形形状の領域が射影変換領域70となる。なお、
図7の例では、置換領域44を包含するように射影変換領域70が設定される。
【0054】
ステップS114では、CPU31Aが、見本画像の選択を受け付ける。ユーザは、メニュー画面を参照し、操作部32を操作して、ステップS106で指定した指定領域に置換させたい見本画像をメニュー画面から選択する。記憶部35には、見本画像データベース35Cとして、様々な壁紙及び床材等の見本画像の画像データが予め記憶されている。見本画像のサイズは、本実施形態では一例として原画像40及びマスク画像50と同じサイズである。
【0055】
そして、見本画像の選択を受け付けた場合はステップS116へ移行する。一方、見本画像の選択を受け付けていない場合は、見本画像の選択を受け付けるまで待機する。
【0056】
ステップS116では、CPU31Aが、選択された見本画像を記憶部35の見本画像データベース35Cから読み出すことにより取得する。そして、
図9に示すように、取得した見本画像60を射影変換領域70に射影変換する。これにより、
図10に示すような射影変換画像80が生成される。
【0057】
ステップS118では、CPU31Aが、射影変換画像80を用いて置換領域44を置換した合成画像を生成し、表示部33に表示させる。具体的には、マスク画像50と射影変換画像80との対応する画素同士の論理積を各々算出して置換画像を生成する。そして、生成した置換画像で原画像40の置換領域44を置換する。これにより、
図11に示すように、右側の壁が見本画像60を射影変換した射影変換画像80により置換された合成画像40Aが得られる。また、射影変換により得られた射影変換画像80を用いて置換しているので、違和感が抑制された合成画像40Aが得られる。
【0058】
ユーザは、表示部33に表示された合成画像40Aを参照し、見本画像を変更したい場合は、操作部32を操作して見本画像の変更を指示してもよい。
【0059】
そこで、ステップS120では、CPU31Aが、見本画像の変更が指示されたか否かを判定する。そして、見本画像の変更が指示された場合はステップS114へ移行する。一方、見本画像の変更が指示されていない場合はステップS122へ移行する。
【0060】
また、ユーザは、置換領域を変更したい場合は、操作部32を操作して置換領域の変更を指示してもよい。
【0061】
そこで、ステップS122では、CPU31Aが、置換領域の変更が指示されたか否かを判定する。そして、置換領域の変更が指示された場合はステップS106へ移行する。一方、置換領域の変更が指示されていない場合はステップS124へ移行する。
【0062】
また、ユーザは、閲覧する室内画像を変更したい場合は、操作部32を操作して室内画像の変更を指示してもよい。
【0063】
そこで、ステップS124では、CPU31Aが、室内画像の変更が指示されたか否かを判定する。そして、室内画像の変更が指示された場合はステップS102へ移行する。一方、室内画像の変更が指示されていない場合はステップS126へ移行する。
【0064】
ステップS126では、CPU31Aが、処理の終了が指示されたか否かを判定し、終了が指示されていない場合はステップS120へ移行し、終了が指示された場合は本ルーチンを終了する。
【0065】
(第2実施形態)
【0066】
次に、第2実施形態について説明する。なお、第1実施形態と同一部分については同一符号を付し、詳細な説明は省略する。情報処理装置30の構成は、第1実施形態と同一であるので説明は省略する。
【0067】
図12には、第2実施形態に係る情報処理のフローチャートを示した。
図12に示す情報処理は、
図2に示す情報処理と比較して、ステップS115A、S115Bの処理が追加されている点が異なる。その他の処理は
図2の情報処理と同一であるため説明は省略する。
【0068】
第1実施形態で説明した
図8の例では、特定点T1、T2がマスク画像50の右辺上に存在するが、置換領域44の形状によっては、
図13に示すように、特定点T1、T2の位置がマスク画像50の一辺H1を延長した線上となる場合がある。
【0069】
この場合、特定点T1~T4で表される射影変換領域70の一部が、マスク画像50からはみ出るため、見本画像60を拡張した拡張見本画像を生成する。
【0070】
そこで、ステップS115Aでは、見本画像60を拡張した拡張見本画像を生成する必要があるか否かを判定する。すなわち、射影変換領域70の一部がマスク画像50からはみ出るか否かを判定する。そして、射影変換領域70の一部がマスク画像50からはみ出ると判定された場合にはステップS115Bへ移行する。一方、射影変換領域70がマスク画像50からはみ出ていないと判定された場合は、ステップS116へ移行する。
【0071】
ステップS115Bでは、射影変換領域70の一部がマスク画像50からはみ出た分に対応して見本画像60を拡張した拡張見本画像を生成する。
【0072】
具体的には、
図14に示すように、特定点T1がY方向にはみ出た分の幅W1の幅を有する矩形状の追加見本画像60Aを見本画像60の上辺側に追加する。また、特定点T2がY方向にはみ出た分の幅W2の幅を有する矩形状の追加見本画像60Bを見本画像60の下辺側に追加する。また、拡張見本画像が見本画像60の縦横比と同じ縦横比となるように、Y方向に拡張すべき幅W3を算出し、算出した幅W3の幅を有する矩形状の追加見本画像60Cを見本画像60の左辺側に追加する。これにより、射影変換領域70の一部がマスク画像50からはみ出た分に対応して見本画像60を拡張した拡張見本画像62が生成される。そして、生成された拡張見本画像62を射影変換領域70に射影変換する。
【0073】
なお、拡張見本画像62は、見本画像60の周縁部の画像を反転した画像を追加見本画像として周縁部に追加することにより生成することが好ましい。例えば、追加見本画像60Aは、見本画像60の上辺に沿った画像を反転した画像とする。同様に、追加見本画像60Bは、見本画像60の下辺に沿った画像を反転した画像とし、追加見本画像60Cは、見本画像60の左辺に沿った画像を反転した画像とする。これにより、見本画像60と追加見本画像60A~60Cとの境界部分の模様が不自然となるのが抑制される。
【0074】
(第3実施形態)
【0075】
次に、第3実施形態について説明する。なお、上記実施形態と同一部分については同一符号を付し、詳細な説明は省略する。情報処理装置30の構成は、第1実施形態と同一であるので説明は省略する。
【0076】
第3実施形態では、基準点Fが原画像40の消失点に近づくように基準点Fの位置を調整する場合について説明する。
【0077】
図15には、第3実施形態に係る情報処理のフローチャートを示した。
図15に示す情報処理は、
図12に示す情報処理と比較して、ステップS113の処理が追加されている点が異なる。その他の処理は
図12の情報処理と同一であるため説明は省略する。
【0078】
ステップS113では、CPU31Aが、基準点Fが原画像40の消失点に近づくように基準点Fの位置を調整することにより射影変換領域を調整する。
【0079】
具体的には、基準点Fと、複数の特定点のうち二つの特定点と、を各々結ぶ二つの直線により定まる画角が最大となるように、基準点Fの位置を調整する。
【0080】
例えばステップS112の処理が実行されることにより設定された射影変換領域が、
図16に示すような射影変換領域70であった場合について説明する。この場合、
図17に示すように、基準点FをY方向に移動させて特定点T1~T4を新たに特定し、直線L1、L2を更新する。そして、新たな基準点Fと直線L1、L2により定まる画角θが最大画角となる位置を探索し、調整後の基準点F1とする。
【0081】
図16に示す射影変換領域70と
図17に示す射影変換領域70Aとの形状を比較すると、
図17に示す射影変換領域70Aの方が、置換領域44に近い形状となっている。すなわち、基準点Fよりも基準点F1の方が消失点に近づいていることとなる。このように、基準点Fと直線L1、L2により定まる画角θが最大画角となるように基準点Fの位置を調整することにより、射影変換領域70の形状が置換領域44の形状に近くなる。
【0082】
また、基準点Fの位置を調整する際に、置換領域44と射影変換領域70との一致の度合いを用いて基準点Fの位置を調整するようにしてもよい。具体的には、基準点Fの位置をY方向に移動させて特定点T1~T4を新たに特定し、直線L1、L2を更新することにより射影変換領域70を更新する。そして、置換領域44と新たな射影変換領域70との一致の度合いを算出する。一致の度合いとしては、例えば置換領域44及び射影変換領域70の形状の類似度を用いても良いし、置換領域44及び射影変換領域70の面積の一致率を用いてもよい。
【0083】
そして、算出した一致の度合いが予め定めた条件を満たすまで基準点FをY方向に移動させて同様の処理を繰り返す。なお、予め定めた条件は、算出した一致の度合いが予め定めた閾値以上となることとしてもよいし、基準点Fを移動した回数が予め定めた回数以上となることとしてもよい。このように、置換領域44と射影変換領域70との一致の度合いを用いて基準点Fの位置を調整することにより、基準点Fが消失点に近づく。
【0084】
なお、基準点Fの移動に二分探索の手法を用いてもよい。例えば、特定点T1、T2を結ぶ直線と、基準点Fを通り特定点T1、T2を結ぶ直線に垂直に交わる垂線と、の交点を求める。そして、求めた交点から特定点T1までの距離を二分するY方向の位置を新たな基準点Fとする。求めた交点から特定点T1まで基準点FをY方向に移動させても基準点Fが定まらなかった場合は、求めた交点から特定点T2まで基準点FをY方向に移動させて同様の処理を行う。
【0085】
また、基準点FをY方向だけでなくX方向にも移動させて画角θが最大画角となる位置を探索し、調整後の基準点F1としてもよい。これにより、基準点Fが消失点に更に近づく。
【0086】
また、XY平面における原画像40だけでなく、YZ平面における原画像及びZX平面における原画像が取得可能な場合は、XY平面における原画像40については基準点FをX方向に移動させ、YZ平面における原画像についてはZ方向に基準点Fを移動させ、ZX平面における原画像についてはX方向に基準点Fを移動させることにより、基準点Fの位置を三次元で調整するようにしてもよい。これにより、基準点Fが消失点に更に近づく。
【0087】
(第4実施形態)
【0088】
次に、第4実施形態について説明する。なお、上記実施形態と同一部分については同一符号を付し、詳細な説明は省略する。情報処理装置30の構成は、第1実施形態と同一であるので説明は省略する。
【0089】
図18には、第4実施形態に係る情報処理のフローチャートを示した。
図18に示す情報処理は、
図2に示す情報処理と比較して、ステップS115の処理が追加されている点が異なる。その他の処理は
図2の情報処理と同一であるため説明は省略する。
【0090】
ステップS115では、CPU31Aが、射影変換領域70のサイズに応じて見本画像60のサイズを調整する。例えば
図19に示すように、射影変換領域70が比較的縦長の形状の場合には、見本画像60を縦長に補正した見本画像60Tを用いて射影変換領域70に射影変換する。これにより、置換領域44を置換した後の合成画像がより自然となる。
【0091】
具体的には、
図20に示すように、基準点Fと直線L1、L2とにより定まる画角θと、基準点Fから射影変換領域70までのX方向の距離Dと、に基づいて見本画像60を補正する際のX方向及びY方向の補正係数を決定し、決定した補正係数に基づいて見本画像60を補正した見本画像60Tを生成する。
【0092】
例えば、画角θが直角(90度)の場合のX方向及びY方向の補正係数を「1.0」とし、画角θが大きくなるほどY方向の補正係数を大きくし、画角θが小さくなるほどY方向の補正係数を小さくする。
【0093】
また、基準点Fから射影変換領域70までの距離Dが長くなるほどX方向の補正係数を小さくし、距離Dが短くなるほどX方向の補正係数を大きくする。
【0094】
そして、見本画像60のX方向の長さがX方向の補正係数に対応した長さとなり、見本画像60のY方向の長さがY方向の補正係数に対応した長さとなるように、見本画像60を補正した見本画像60Tを生成する。これにより、射影変換領域70のサイズに応じた見本画像60Tが得られる。
【0095】
そして、ステップS116では、サイズが補正された見本画像60Tを射影変換領域70に射影変換する。これにより、置換領域44を置換した後の合成画像がより自然となる。
【0096】
以上、各実施形態を用いて本発明について説明したが、本発明は各実施形態に記載の範囲には限定されない。本発明の要旨を逸脱しない範囲で各実施形態に多様な変更または改良を加えることができ、当該変更または改良を加えた形態も本発明の技術的範囲に含まれる。
【0097】
例えば、本実施形態では幾何変換として射影変換を用いた場合について説明したが、射影変換ではなくアフィン変換等の他の変換方法を用いても良い。
【0098】
本実施形態では、情報処理プログラム35Aが記憶部35にインストールされている形態を説明したが、これに限定されるものではない。本実施形態に係る情報処理プログラム35Aを、コンピュータ読取可能な記憶媒体に記録した形態で提供してもよい。例えば、本実施形態に係る情報処理プログラム35Aを、CD(Compact Disc)-ROM及びDVD(Digital Versatile Disc)-ROM等の光ディスクに記録した形態、若しくはUSB(Universal Serial Bus)メモリ及びメモリカード等の半導体メモリに記録した形態で提供してもよい。また、本実施形態に係る情報処理プログラム35Aを、通信部34に接続された通信回線を介して外部装置から取得するようにしてもよい。
【0099】
上記実施形態において、プロセッサとは広義的なプロセッサを指し、汎用的なプロセッサ(例えばCPU:Central Processing Unit、等)や、専用のプロセッサ(例えばGPU:Graphics Processing Unit、ASIC:Application Specific Integrated Circuit、FPGA:Field Programmable Gate Array、プログラマブル論理デバイス、等)を含むものである。
【0100】
また上記実施形態におけるプロセッサの動作は、1つのプロセッサによって成すのみでなく、物理的に離れた位置に存在する複数のプロセッサが協働して成すものであってもよい。また、プロセッサの各動作の順序は上記各実施形態において記載した順序のみに限定されるものではなく、適宜変更してもよい。
【符号の説明】
【0101】
30 情報処理装置
35 記憶部
35A 情報処理プログラム
35B 室内画像データベース
35C 見本画像データベース
40 原画像
44 置換領域
50 マスク画像
60、60T 見本画像
60A、60B、60C 追加見本画像
62 拡張見本画像
70、70A 射影変換領域
80 射影変換画像