(57)【特許請求の範囲】
【請求項１】
撮影された部屋のパノラマ画像の入力を受け付ける入力部と、
入力された前記パノラマ画像から直線を抽出する直線抽出部と、
抽出された前記直線のうち、互いに平行となるよう想定される直線が、前記パノラマ画像内で平行となるよう傾きを補正する補正処理部と、
前記パノラマ画像において予め設定された基準部位に該当する直線を基準線として検出する基準線検出部と、
前記パノラマ画像内における基準線長さを取得し、前記基準線長さと他の部位の直線の長さとの比率を算出し、当該比率に基づいて予め付与された前記基準線の実際長さを示す基準線実測値から各直線の長さを算出する算出部と、
家具の家具モデリングデータ、テクスチャデータ及び縦、横、高さの寸法データを含む家具情報記憶部と、
前記パノラマ画像から、画像中に表示される各部位を部屋の構成要素として分類して認識するとともに、部屋の形を示す3DデータであるＶＲ立体画像へと変換するVR立体画像情報処理部と、
前記ＶＲ立体画像を記憶するVR立体画像情報記憶部と、
前記家具の寸法データと、前記基準線実測値との比率に基づいて家具の家具モデリングデータの大きさを自動で調整して、前記ＶＲ立体画像内に配置可能とする家具配置処理部と、
前記ＶＲ立体画像を描画する描画部と、
を備え、
前記描画部は配置された前記家具の家具モデリングデータを前記ＶＲ立体画像内に描画する
ことを特徴とする情報処理装置。
【請求項２】
前記VR立体画像情報処理部は、前記パノラマ画像中の構成要素をピクセル単位で推定する深層学習と、前記パノラマ画像中の部屋の壁や床のコーナーを推定する深層学習とを併用して、前記構成要素の認識を行う
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記パノラマ画像は、メタデータとして撮影時の傾きを示す傾きメタ情報を含んでおり、
前記補正処理部は、抽出された前記直線のうち、前記パノラマ画像中における傾きが、前記傾きメタ情報と比較して所定の値より大きい直線は平行に傾き補正する処理から除外する
ことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記基準線長さを、利用者が入力して設定可能である
ことを特徴とする請求項１〜３のいずれか一項に記載の情報処理装置。
【請求項５】
前記家具配置処理部は、選択された前記家具の家具モデリングデータを配置する際に、いずれの前記構成要素に対する配置の優先度を算出し、前記家具モデリングデータを、高い前記優先度数値が付与された前記ＶＲ立体画像内の構成要素に対して自動的に配置する
ことを特徴とする請求項１〜４のいずれか一項に記載の情報処理装置。
【請求項６】
前記家具情報記憶部において、所定の家具においては、対となる家具の識別情報が、セット家具として設定されており、
前記家具配置処理部は、前記セット家具が設定された家具の前記家具モデリングデータを予め設定された所定の位置関係に従って  前記ＶＲ立体画像内に配置する
ことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記家具配置処理部は、前記ＶＲ立体画像における壁と、前記家具モデリングデータとの接触判定を行い、接触が起こらない位置において前記家具モデリングデータを配置可能とする
ことを特徴とする請求項５、及び６のいずれか一項に記載の情報処理装置。
【請求項８】
前記描画部は、前記ＶＲ立体画像、及び前記家具モデリングデータを部屋における上方から俯瞰した視点で描画が可能であり、
前記家具配置処理部は、上方から俯瞰した視点で前記家具モデリングデータの移動の操作がされた場合に、前記家具モデリングデータの配置位置を変更可能である
ことを特徴とする請求項１〜７のいずれか一項に記載の情報処理装置。
【請求項９】
コンピュータを、
撮影された部屋のパノラマ画像の入力を受け付ける入力部と、
入力された前記パノラマ画像から直線を抽出する直線抽出部と、
抽出された前記直線のうち、互いに平行となるよう想定される直線が、前記パノラマ画像内で平行となるよう傾きを補正する補正処理部と、
前記パノラマ画像において予め設定された基準部位に該当する直線を基準線として検出する基準線検出部と、
前記パノラマ画像内における基準線長さを取得し、前記基準線長さと他の部位の直線の長さとの比率を算出し、当該比率に基づいて予め付与された前記基準線の実際長さを示す基準線実測値から各直線の長さを算出する算出部と、
家具の家具モデリングデータ、テクスチャデータ及び縦、横、高さの寸法データを含む家具情報記憶部と、
前記パノラマ画像から、画像中に表示される各部位を部屋の構成要素として分類して認識するとともに、部屋の形を示す3DデータであるＶＲ立体画像へと変換するR立体画像情報処理部と、
前記ＶＲ立体画像を記憶するVR立体画像情報記憶部と、
前記家具の寸法データと、前記基準線実測値との比率に基づいて家具の家具モデリングデータの大きさを自動で調整して、前記ＶＲ立体画像内に配置可能とする家具配置処理部と、
前記ＶＲ立体画像を描画する描画部と、
として機能させ、
前記描画部は配置された前記家具の家具モデリングデータを前記ＶＲ立体画像内に描画する
コンピュータプログラム。

【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、プログラムに関する。一例として、不動産物件の「部屋写真」および「間取り図」に関連する情報を処理することを可能とする情報処理装置、プログラムに関する。
【背景技術】
【０００２】
不動産の物件案内には、通常、当該不動産の平面図としての間取り図が掲載されており、加えて、特定の部屋や設備に関してはそれらを撮影した写真が掲載されることがある。従来は、不動産物件の部屋写真（たとえば、廊下、居間、洋室、キッチン、トイレ、玄関、ベランダなどの写真）を撮影した場合、その写真に表示された部位の寸法や、間取り図との対応関係（たとえば、どの場所から撮影したものであるのか、どの方向に向かって撮影したものであるのか等）については、不動産業者等において手動で入力を行っていた。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Ｎａｍ  Ｖｏ  ｅｔ  ａｌ．  ＣＶＰＲ２０１９，  Ｃｏｍｐｏｓｉｎｇ  Ｔｅｘｔ  ａｎｄ  Ｉｍａｇｅ  ｆｏｒ  Ｉｍａｇｅ  Ｒｅｔｒｉｅｖａｌ  −  Ａｎ  Ｅｍｐｉｒｉｃａｌ  Ｏｄｙｓｓｅｙ  （ａｒＸｉｖ：１８１２．０７１１９）
【非特許文献２】Ｓｈｕａｉ  Ｌｉａｏ  ｅｔ  ａｌ．  ＣＶＰＲ  ２０１９，  Ｓｐｈｅｒｉｃａｌ  Ｒｅｇｒｅｓｓｉｏｎ：  Ｌｅａｒｎｉｎｇ  Ｖｉｅｗｐｏｉｎｔｓ，  Ｓｕｒｆａｃｅ  Ｎｏｒｍａｌｓ  ａｎｄ  ３Ｄ  Ｒｏｔａｔｉｏｎｓ  ｏｎ  ｎ−Ｓｐｈｅｒｅｓ  （ａｒＸｉｖ：１９０４．０５４０４）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記のとおり、物件の部屋写真については、従来から、物件案内等において掲載され、当該写真がどの場所ないし部屋の写真なのかを説明する物件説明が記載されてきた。現在、部屋の内覧の方式としては、ＶＲ（仮想現実）技術を用いて、遠隔にいても実際に部屋に訪問しているかのようにみることができるものも提供されている。この際、よりリアリティをもって部屋を内覧するためには、ＶＲで閲覧している360度画像内に、様々な家具を配置してみて、どのように家具を配置できるかを試すことができるようにするのが望ましい。
【０００５】
しかしながら、家具の３Ｄ画像を平面写真から生成した部屋のＶＲ画像内に配置するためには、部屋の各部位の寸法が正確にわかり、かつ部屋の３D空間としての形を正確に把握する必要があり、これを各不動産の担当者が部位を実測して、実測値を入力するのではその作業負担が大きく、こうしたサービスが浸透しない一因ともなっていた。このような課題を発見した本件発明者らは、これらの課題を解決することのできる、より利便性の高い、不動産物件の部屋のＶＲ閲覧に係る情報処理装置、コンピュータを当該情報処理装置として動作させる情報処理プログラムが求められることを認識し、本件発明に至ったものである。なお、その際、非特許文献１ないし２のような画像の認識に係る先行技術文献に接したものの、これらの文献に記載の技術では、本課題を解決することはできなかった。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明の実施形態は、撮影された部屋のパノラマ画像の入力を受け付ける入力部と、入力された前記パノラマ画像から直線を抽出する直線抽出部と、抽出された前記直線のうち、互いに平行となるよう想定される直線が、前記パノラマ画像内で平行となるよう傾きを補正する補正処理部と、前記パノラマ画像において予め設定された基準部位に該当する直線を基準線として検出する基準線検出部と、前記パノラマ画像内における基準線長さを取得し、前記基準線長さと他の部位の直線の長さとの比率を算出し、当該比率に基づいて予め付与された前記基準線の実際長さを示す基準線実測値から各直線の長さを算出する算出部と、家具の家具モデリングデータ、テクスチャデータ及び縦、横、高さの寸法データを含む家具情報記憶部と、前記パノラマ画像から、画像中に表示される各部位を部屋の構成要素として分類して認識するとともに、部屋の形を示す3DデータであるＶＲ立体画像へと変換するVR立体画像情報処理部と、前記ＶＲ立体画像を記憶するVR立体画像情報記憶部と、前記家具の寸法データと、前記基準線実測値との比率に基づいて家具の家具モデリングデータの大きさを自動で調整して、前記ＶＲ立体画像内に配置可能とする家具配置処理部と、前記ＶＲ立体画像を描画する描画部と、を備え、前記描画部は配置された前記家具の家具モデリングデータを前記ＶＲ立体画像内に描画することを特徴とする。
【０００７】
また、前記VR立体画像情報処理部は、前記パノラマ画像中の構成要素をピクセル単位で推定する深層学習と、前記パノラマ画像中の部屋の壁や床のコーナーを推定する深層学習とを併用して、前記構成要素の認識を行うようにするとさらに好適である。
【０００８】
前記パノラマ画像は、メタデータとして撮影時の傾きを示す傾きメタ情報を含んでおり、前記補正処理部は、抽出された前記直線のうち、前記パノラマ画像中における傾きが、前記傾きメタ情報と比較して所定の値より大きい直線は平行に傾き補正する処理から除外するようにしてもよい。
【０００９】
前記基準線長さを、利用者が入力して設定可能であるようにしてもよい。
【００１０】
前記家具配置処理部は、選択された前記家具の家具モデリングデータを配置する際に、いずれの前記構成要素に対する配置の優先度を算出し、前記家具モデリングデータを、高い前記優先度数値が付与された前記ＶＲ立体画像内の構成要素に対して自動的に配置するようにしてもよい。
【００１１】
前記家具記憶部において、所定の家具においては、対となる家具の識別情報が、セット家具として設定されており、前記家具配置処理部は、前記セット家具が設定された家具の前記家具モデリングデータを予め設定された所定の位置関係に従って  前記ＶＲ画像データ内に配置するようにしてもよい。
【００１２】
前記家具配置処理部は、前記ＶＲ立体画像における壁と、前記家具ＶＲ画像との接触判定を行い、接触が起こらない位置において前記家具ＶＲ画像を配置可能とするようにしてもよい。
【００１３】
前記描画部は、前記ＶＲ立体画像、及び前記家具モデリングデータを部屋における上方から俯瞰した視点で描画が可能であり、前記家具配置処理部は、上方から俯瞰した視点で前記家具モデリングデータの移動の操作がされた場合に、前記家具モデリングデータの配置位置を変更可能であるようにしてもよい。
【００１４】
また、本実施形態として、コンピュータを、撮影された部屋のパノラマ画像の入力を受け付ける入力部と、入力された前記パノラマ画像から直線を抽出する直線抽出部と、抽出された前記直線のうち、互いに平行となるよう想定される直線が、前記パノラマ画像内で平行となるよう傾きを補正する補正処理部と、前記パノラマ画像において予め設定された基準部位に該当する直線を基準線として検出する基準線検出部と、前記パノラマ画像内における基準線長さを取得し、前記基準線長さと他の部位の直線の長さとの比率を算出し、当該比率に基づいて予め付与された前記基準線の実際長さを示す基準線実測値から各直線の長さを算出する算出部と、家具の家具モデリングデータ、テクスチャデータ及び縦、横、高さの寸法データを含む家具情報記憶部と、前記パノラマ画像から、画像中に表示される各部位を部屋の構成要素として分類して認識するとともに、部屋の形を示す3DデータであるＶＲ立体画像へと変換するR立体画像情報処理部と、前記ＶＲ立体画像を記憶するVR立体画像情報記憶部と、前記家具の寸法データと、前記基準線実測値との比率に基づいて家具の家具モデリングデータの大きさを自動で調整して、前記ＶＲ立体画像内に配置可能とする家具配置処理部と、前記ＶＲ立体画像を描画する描画部と、として機能させ、前記描画部は配置された前記家具の家具モデリングデータを前記ＶＲ立体画像内に描画するようにしてもよい。
【発明の効果】
【００１５】
本発明の一態様によれば、部屋のパノラマ画像において、部屋の構成要素の寸法を自動的に算出することができ、家具のモデリングデータを適切に配置することができるようになる。
【図面の簡単な説明】
【００１６】
【図１】図１は、情報処理装置３（サーバ）の構成の一例を示す図である。
【図２】図２は、情報処理装置３、インターネット４、ユーザ端末装置５とを含む情報処理システム１の構成の一例を示す図である。
【図３】図３は、ユーザ端末装置の構成の一例を示す図である。
【図４】図４は、第1の実施形態の情報処理装置の機能構成を示すブロック図である。
【図５】図５は、第１の実施形態におけるパノラマ画像から直線を抽出した状態を示す図である。
【図６】図６は、第１の実施形態における立体画像生成処理にかかる処理の流れを示すフロー図である。
【図７】図７は、部屋の立体画像における傾きの補正の態様を示す図である。
【図８】図８は、部屋の構成要素の直線の長さを算出した態様を示す図である。
【図９】図９は、部屋の構成要素の直線の長さを再計算で算出した態様を示す図である。
【図１０】図１０は、VR立体画像生成処理の流れを示すフロー図である。
【図１１】図１１は、家具の配置処理の流れを示すフロー図である。
【図１２】図１２は、家具の自動配置処理の流れを示すフロー図である。
【図１３】図１３は、家具の自動配置の配置条件を設定する画面を示す図である。
【図１４】図１４は、VR立体画像内に家具のモデリングデータを配置した状態を示す図である。
【図１５】図１５は、VR立体画像を上方から見た状態で家具を配置する画面を示す図である。
【発明を実施するための形態】
【００１７】
本発明の一実施形態を説明するフローチャートは、プロセスステップを意味しており、当該特定の例のみに限定されることなく、代替の実施態様を許容するものである。また、本明細書の明示の記載に反しない限りにおいて、プロセスステップは本明細書における特定の説明と異なる順序で実行することを許容するものである。このように、本発明の趣旨及び範囲から逸脱することなく本実施形態に対しては種々の変更を行うことができる。以下、本明細書においては、所定の部屋の「間取り図（画像）」と当該部屋の「部屋写真」を例にとって情報処理装置ないしは情報処理装置における情報処理内容を説明する。
【００１８】
［物体の認識］
近時、物体の認識について、畳み込みニューラルネットワーク（ＣＮＮ：Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）は、画像のクラス分類（画像認識）だけでなく、物体の位置や大きさの検出（物体検出）や形状の抽出（領域抽出）にも用いられ、例えば、物体検出には、リージョンＣＮＮであるＲ−ＣＮＮ（さらに、Ｆａｓｔｅｒ  Ｒ−ＣＮＮ）、Ｙｏｌｏなどが、領域抽出にはＳｅｇＮｅｔや画像のセグメンテーションを推定するＵ−Ｎｅｔ（Ｕ字型の畳み込みネットワーク）などのニューラルネットワークが用いられるようになってきている。
【００１９】
たとえば、Ｒ−ＣＮＮでは、ある矩形が物体なのか背景なのかを学習し、検出した場所に具体的に何が写っているのかを学習する。また、Ｕ−Ｎｅｔ（Ｕ字型の畳み込みネットワーク）では物体の「局所的特徴」と「全体的位置情報」の両方を統合して学習する。本発明ではこれらの既存技術、非特許文献１および２に記載の技術を用いる際、これらの既存技術に対する詳細な説明自体は省略し、それらの技術内容を参照により本明細書に組み込むものとする。
【００２０】
［ハードウェア］
本発明の実施形態に係るハードウェアの基本的な構成を説明する。まず、情報処理装置３は、サーバを念頭に置いているが、たとえば、スマートフォンやタブレット端末などのモバイル端末、ノートブックコンピュータ、デスクトップコンピュータなどの電子機器であってもよい。情報処理装置３は、物理的な演算装置（ＣＰＵおよび／またはＧＰＵ、図示せず）、一時的な作業内容を記憶しておく作業メモリ（ＲＡＭ、図示せず）等、情報処理装置として必須の物理的構成を備えている。
【００２１】
図１に示すように、情報処理装置３は、通信部３１を有する。通信部３１は、インターネット等のネットワークを介して外部と通信可能に接続されている。なお、ネットワークは、有線回線、無線回線を問わない接続方法によるインターネットや、イーサネット（登録商標）等を利用したローカルエリアネットワーク等の公知のネットワーク接続方法を用いることができる。
【００２２】
情報処理装置３は、画像データの処理等を行う制御部３２を更に有する。本明細書において「制御部」として説明するものは、ＣＰＵおよび／またはＧＰＵによって対応するプログラムが読みだされ、ＣＰＵおよび／またはＧＰＵによって実行される機能を意味する。制御部３２は、情報処理装置３内のプロセッサが所定のプログラムを実行することにより実現されてもよいし、ハードウェアで実装されてもよい。
【００２３】
情報処理装置は、記憶部３３を更に有する。記憶部３３には、制御部３２が取り扱う各種データが記憶される。記憶部３３は、たとえば内蔵ハードディスクドライブ、内臓ソリッドステートドライブ、外部データストレージ（たとえば外付けハードディスクドライブ、サーバ用テープドライブ等）などのデータストレージであり、場合によってはクラウドストレージなどのデータストレージであってもよい。その意味で、本発明は、制御部３２と記憶部３３とは別の情報処理装置を用いるという態様を許容する。
【００２４】
なお、情報処理装置３はさらに入力部、表示部を備えていてもよい（図示せず）が、これらは必須の構成ではない。たとえば、入力部は情報を入力するためのインターフェースであり、モバイル端末におけるタッチパネルやマイクロフォン、ノートブックコンピュータないしデスクトップコンピュータなどにおけるタッチパッド、キーボードまたはマウスなどである。表示部は情報処理装置３の使用者に対して各種情報を表示するインターフェースであり、たとえば液晶ディスプレイ、ヘッドマウントディスプレイ等の映像表示手段である。
【００２５】
［端末装置５］
本情報処理システムは、ユーザ端末装置５をさらに含んでも良い（図２）。ユーザ端末装置５（端末５ａおよび端末５ｂ）は、ユーザが入出力するためのクライアント端末を意味する。たとえば、スマートフォンやタブレット端末などのモバイル端末、ノートブックコンピュータ、デスクトップコンピュータ、ワークステーションなどの電子機器であってもよい。これらのユーザ端末装置５と情報処理装置３とは、ネットワーク４を介して接続される。なお、変形例２においては、端末装置５はカメラを搭載したロボットやカメラを搭載した自動運転車であるが、これも、情報処理装置３にネットワーク４を通じてアクセスすることができるクライアント端末の一例であることに変わりはない。
【００２６】
図３は、ユーザ端末装置５の構成の一例を示す図である。図３に示すように、端末装置５は、（端末）通信部５１と、（端末）制御部５２と、（端末）記憶部５３と、（端末）入力部５４と、（端末）表示部５５とを有し、各部は、バスを介して互いに通信可能に接続されている。以下、ユーザ端末装置５の各部については、情報処理装置３における各部と区別するために、端末通信部５１などと、頭に「端末」を付して説明する。
【００２７】
端末通信部５１は、ユーザ端末装置５とネットワーク４との間の通信インターフェースである。端末通信部５１は、ネットワーク４を介して端末装置５と情報処理装置３との間で情報を送受信することができる。
【００２８】
端末制御部５２は、端末装置５の各種処理を行う制御手段である。端末制御部５２は、端末装置５内のプロセッサが所定のプログラムを実行することにより実現されてもよいし、ハードウェアで実装されてもよい。
【００２９】
端末記憶部５３は、たとえば内蔵メモリや外部メモリ（ＳＤメモリカード等）などのデータストレージである。端末記憶部５３には、端末制御部５２が取り扱う各種データが記憶される。
【００３０】
端末入力部５４は、ユーザが端末装置５に情報を入力するためのインターフェースであり、たとえばモバイル端末におけるカメラ（ＣＣＤカメラやＣＭＯＳカメラ）、タッチパネルやマイクロフォン、ノートブックコンピュータにおけるタッチパッド、キーボードまたはマウスなどである。
【００３１】
端末表示部５５は、端末装置５からユーザに対して各種情報を表示するインターフェースであり、たとえば液晶ディスプレイ等の映像表示手段である。具体的には、たとえば、端末表示部５５は、ユーザからの操作を受け付けるためのＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を表示してもよい。なお、端末装置５がロボットないし自動運転車である変形例２においては、端末表示部５５は不要である。
【００３２】
［間取り図］
間取り図画像（以下、単に「間取り図」とも称する。）は、建物における部屋（複数の場合もあり得る。）の配置の図（たとえば、平面図）であり、通常は、一律の縮尺で描かれている。不動産小売業者、建築家、不動産仲介業者、不動産情報業者等によって用いられる様々なタイプ又はスタイルの間取り図がある。通常は部屋の平面的な形状のみならず、部屋内の一定の物体（たとえば、扉、扉の開閉方向、キッチン、トイレ、バスタブ、床暖房の位置など）の位置と種類が、一定のルールで記載されている。間取り図画像は、ＪＰＥＧ、ＴＩＦＦ、ＧＩＦ、ＢＭＰ、ＰＮＧ等を含む任意の画像フォーマットのものとすることができる。
【００３３】
［部屋写真］
本発明において「部屋写真」は、部屋内部ないしは建物内部の空間を撮影したカラー、グレースケールまたはモノクロ等の写真を意味するものとする。部屋写真は、ＪＰＥＧ、ＴＩＦＦ、ＧＩＦ、ＢＭＰ、ＰＮＧ等を含む任意の画像フォーマットのものとすることができる。
【００３４】
本発明の一実施形態において部屋写真はパノラマ画像であることを想定しており、本発明において「パノラマ画像」とは、不動産物件内の内部ロケーションにある１以上の物体をキャプチャーすることが可能な広視野を有する任意の画像を意味するものとする。
【００３５】
本実施形態では、部屋内部ないしは建物内部の空間を撮影した画像（部屋写真１０）は、画角３６０度のパノラマ画像であることを想定しており、かかる画角が本発明に最も好適である。もっとも、パノラマ画像は、水平方向に３６０度未満の視野を有することもできる。また、理論上は、本発明の部屋画像１０として、たとえば２７０度、１８０度又はそれ未満のようにより狭い視野の画像を用いることもできる。本明細書において以下、パノラマ画像及び部屋写真という用語は区別なく用いられ得る。すなわち、部屋、又は建物内の空間を撮影した画角３６０度の画像を、単に「部屋写真」とも称するものとする。
【００３６】
［学習済みモデル］
本発明においては、事前に推定を行う画像等に関する学習（重みの自動調整）をさせたデータ（「学習済みモデル」）を記憶部３３に記憶することになる。たとえば、本発明の一実施形態では、事前に、パノラマ画像を入力とした部屋の種類を推定するタスクを畳み込みニューラルネットワークにより学習させ、その結果得られる学習済みモデルを記憶部３３に記憶しておく。学習は、情報処理装置３の制御部３２において行われてもよいが、他の情報処理装置において行われ、情報処理装置３の記憶部３３に記憶されてもよい。
【００３７】
一例において学習セットは、部屋写真（間取り図１枚に対して部屋写真は複数枚であってもよい）と当該部屋の情報（部屋の種類）のセットであり、その学習方法ないし畳み込みニューラルネットワークの構成については、本明細書の他の記載により制限される他には特に制限はなく、非特許文献１に記載の手法などを含む、標準的な深層学習（たとえば、標準的な距離学習）を用いることができる。ここで、本発明において距離学習とは、対応すると判明しているアイテム同士を近くに、対応しないと分かっているアイテム同士を遠くにマッピングするようなニューラルネットの学習方法一般を意味する。たとえば、対応するペアの特徴量のベクトルが小さくなるように重みパラメータの自動調整（学習）を行い、対応しないペアの特徴量のベクトルの距離は大きくなるように重みパラメータの自動調整を行ってもよい。一例として、コントラスティブ  ロス（Ｃｏｎｔｒａｓｔｉｖｅ  Ｌｏｓｓ）を用いることができる。コントラスティブ  ロスは距離学習の一つであり、ペアとなるデータ（たとえば、２つの画像データ）に基づいて、損失関数の出力値（Ｌ）を最小化し、ニューラルネットワークの学習（重みの自動調整）を行う。そのほか、トリプレット  ロス（Ｔｒｉｐｌｅｔ  Ｌｏｓｓ）を用いることもできる。トリプレット  ロスは距離学習の一つであり、３データに基づいて重みの自動調整を行う手法である。具体的に言えば、まず、３データ中で中心となるもの（「中心データ」）が決められる。次いで、残る２データに対し、中心データと相対的に似ているものと似ていないものがそれぞれ指定される。ニューラルネットは中心データと残る２データの距離を計算し、実際に似ているもの同士の距離を似ていないもの同士の距離よりも大きくするように更新する。
【００３８】
学習された内容は、学習済みモデルとして記憶部３３に記憶されるが、このことは、記憶部が、第１のＮ個の物の情報（たとえば、部屋内容、部屋情報、部屋内の物体の情報、間取りの内容に関する情報）と第１のＮ個の物それぞれを撮影した１以上の写真との対応関係（すなわち、学習セット）に基づいた学習済モデルＧを記憶している、と表現することもできる。
【００３９】
［実施形態１の情報処理］
以下では、実施形態１における情報処理の詳細を説明する。図４は本実施形態における情報処理装置３の機能構成を示す図であり、これらの機能は通信部３１、制御部３２、及び記憶部３３の組みあわせによって実現されている。情報処理装置３には、入力部３４、直線抽出部３５、補正処理部３６、基準線検出部３７、算出部３８、VR立体画像情報処理部３９、家具情報記憶部４０、描画部４１、及び家具配置処理部４２、VR立体画像情報記憶部４３を備えている。入力部３４は、撮影された部屋の平面写真の入力を受け付ける。部屋の写真は例えばスマートフォンやデジタルカメラなどによって撮影され、データ転送やクラウドを通じたアップロードすることによって情報処理装置３にパノラマ画像が入力される。直線抽出部３５は、入力されたパノラマ画像に含まれる壁や床、ドアといった各部位から直線部分を抽出する。図５は、パノラマ画像から直線を抽出した際の態様を示したものであり、こうした直線の抽出においてはハフ変換と呼ばれるアルゴリズムを用いて行われるが、この方法については既知の技術であることから、その詳細は省略する。また、直線抽出のアルゴリズムは、一般的なハフ変換以外でも、確率的ハフ変換や、ＬｉｎｅＳｅｇｍｅｎｔＤｅｔｅｃｔｏｒ、ＦａｓｔＬｉｎｅＤｅｔｅｃｔｏｒといったアルゴリズムを利用してもよい。
【００４０】
続いて、補正処理部３６は、抽出した直線の傾きを補正する処理を行う。部屋の壁や床を構成する直線は本来、互いに平行になるように想定されているが、撮影の角度によってはこれが平行にならずに歪んでしまうことがあるため、傾きを補正する必要がある。傾きの補正にあたっては、抽出した直線群の消失点を検出することによって行う。消失点とは、３Ｄ空間において平行な直線群を2次元に投影した際に、それらが交わる点を意味する。
【００４１】
消失点の検出にあたっては、ＲＡＮＳＡＣとよばれるロバスト推定のアルゴリズムが用いられる。このようにして検出された消失点は写真の構図によって通常１〜３個あり、このうちの1点のみを用いて1点透視図に近いものを作る方式もあれば、複数の消失点を用いて行う方式もある。そして、これらの消失点の座標を用いてホモグラフィ変換を行って傾きの補正を行う。
【００４２】
また、傾きの補正にあたっては、すべての直線の補正を行うのではなく、一部の直線については補正処理の対象からは除外する。例えば、パノラマ画像には、その写真の撮影時においてどれくらい傾いて撮影されたかを示すメタ情報が含まれており、この傾き情報と比較して所定の値より大きく傾いている直線については、補正から除外するようにする。これは、撮影時の小さな誤差などの場合であれば、それほど傾きが大きくならないため、傾きを補正することで垂直にすることできるが、例えば尖った天井がある場合の天井の線などがある場合もあり、こうした直線は傾いていてもそれが正常であることから、傾き処理の対象からは除外する。
【００４３】
基準線検出部３７は、抽出した直線群から基準線となる部位を検出する。基準線とは、部屋の規格などによって特に測定をしなくても、その長さが予め決まっている部位であり、例えばドアの横幅や縦幅、エアコンの横幅のサイズなどである。こうした基準線の検出は画像認識などをＡＩで行うことで可能である。算出部３８は、パノラマ画像中の基準線長さと部屋の写真中の他の部位の直線の長さとの比率を算出し、この比率に基づいて基準線の実際の長さである基準線実測値から各直線の長さを算出する。例えば、写真中の基準線の長さが3.5ｃｍ、ある直線の長さが７ｃｍの場合、基準線と当該直線の比率は１：２となる。そして、基準線実測値が6０ｃｍの場合は、実際のこの直線の部位の長さは１２０ｃｍとなる。
【００４４】
VR立体画像情報処理部３９は、補正されたパノラマ画像から３Dデータとして認識可能なVR立体画像を生成する。VR立体画像の生成にあたっては、二つの深層学習（ディープラーニング）を併用することでより好適な効果が得られる。まず、VR立体画像情報処理部３９は、パノラマ画像において各ピクセルごとに、部屋を構成する壁や床、ドアといったいずれの構成要素に該当するかを深層学習を用いて分類する。この深層学習のアルゴリズムの具体例としては、オブジェクト認識のために一般的に活用されているSimentic Segmentationなどを用いることができる。また、併用するもう一つの深層学習としては、壁や床のコーナー、すなわち角部を認識することで部屋の全体構造を把握しやすくなることから、これらのコーナーを認識するために、Duel-netと呼ばれる深層学習のアルゴリズムを活用する。これら二つの深層学習のアルゴリズムを併用することで、パノラマ画像から立体VR画像をより正確に自動生成することができるようになる。
【００４５】
家具情報記憶部４０は、ＶＲ立体画像内に配置される家具のデータが保存されている。家具データは、家具の縦、横、高さそれぞれの実際の寸法データのほか、ＣＡＤでデータ化された家具の家具モデリングデータ、及び家具のテクスチャデータが含まれている。家具のモデリングデータは、CAD等で設計された家具の立体構造を示すデータであり、テクスチャデータはモデリングデータの表面に付与され、家具のデザインや模様、装飾などを示すデータである。
【００４６】
描画部４１は、生成したＶＲ立体画像や家具モデリングデータ、テクスチャデータをユーザが視聴する端末の表示部５５に描画する処理を行う。描画部４１は、本実施形態においては、端末５ａ、５ｂからのリクエストに応じて描画の処理を行い、端末側でＶＲの操作が行われるとその操作に対して再描画を行う。家具配置処理部４２は、ＶＲ立体画像内に家具の立体家具画像を配置する処理を行う。家具配置処理部４２は、自由に家具の位置や角度を変更して、家具を配置することができる。家具をＶＲ立体画像内に配置する際には、所定の条件を満たす必要がある。例えば、家具は壁を越えては配置ができないため、家具配置処理部４２は、家具モデリングデータを移動したり、角度を変更したりする際には、壁と接触していないかを判別する。  VR画像情報記憶部４３は、VR立体画像情報処理部３９が生成したVR立体画像を記憶する。
【００４７】
図６は、ＶＲの立体画像を生成する処理の流れを示す図である。図６に示されるように、まず入力部３４は撮影された部屋のパノラマ画像の入力を受け付ける（ステップS１０１）。パノラマ画像は、撮影時にそのまま入力されても、予め撮影された画像をアップロードすることで入力されるようにしてもよい。次いで、直線抽出部３５は、入力されたパノラマ画像を読み込み、パノラマ画像から直線を抽出する（ステップS102）。図５は、パノラマ画像から直線を抽出した状態を示す図であり、窓や床、柱、天井などの各部位の直線が抽出されている。
【００４８】
次いで、補正処理部３６は、抽出した直線の傾きを補正する（ステップS１０３）。傾きの補正方法は直線によって異なるが、例えば床の模様や、柱などは互いに平行になることから平行になるように傾きを補正する。また、画像中において上下方向に長く伸びる直線は壁や柱である可能性が高いため、これらは画像中で垂直に伸びるように傾きを調整する。図７は、傾きの補正の態様を示す一例を示した図であり、補正前の図７（ａ）における直線１０ａが補正後の図７（ｂ）の直線１０ｂのように傾きが補正される。
【００４９】
次いで基準線検出部３７は、抽出した直線の中から基準線となる直線を検出する（ステップＳ１０４）。算出部３８は、まず基準線長さを設定する（ステップＳ１０５）。図８はその具体例を示す直線の長さの算出例であり、この図では12.4ｍと表示されているベランダの扉の横幅が基準線実測値となる。基準線長さは、予めその部位ごとに長さが設定されており、どの部位が基準線として選択されたかによって、その部位に該当する基準線実測値を取得し、この長さに基づいて図中の他の部位の直線の長さが算出される
（ステップＳ１０６）。
【００５０】
次いで、基準線長さの変更があったか否かの判定がされる（ステップＳ１０７）。基準線長さの変更があった場合、すなわち基準線の数値を利用者が入力した場合は、算出部３８は入力された基準線実測値の値に基づいて各直線の長さを再計算する（ステップＳ１０８）。図９はこの再計算後の長さを示したものであり、元々1.24ｍだった基準線となる直線を1.32ｍに入力しなおしたため、この基準線に合わせて再計算が行われている。このように基準線の数値を利用者が入力できるようにすることで、利用者が知っている部位の数値を入力することで、他の直線の部位の長さを算出することができるようになる。なお、この際には、基準線の長さだけでなく、基準線自体を自分が長さをしっている部位へと変更して、そこを基準線として直線の長さを算出するようにすることもできる。
【００５１】
そして、最後にＶＲ画像情報処理部３９は、ＶＲ立体画像生成処理を行って処理を終了する（ステップＳ１０９）。ＶＲ立体画像情報生成処理の詳細は図１０に基づいて説明する。図１０に示されるように、まずＶＲ画像情報処理部３９は、パノラマ画像においてピクセル単位で部屋のいずれの構成要素に該当するかを、深層学習を用いて分類する（ステップＳ１０９ａ）。次いで、ＶＲ画像情報処理部３９は、床や壁のコーナーにおける直線を対象として深層学習を行い、コーナーの部位に該当する直線を分類する（ステップＳ１０９ｂ）。これらの二つの深層学習へ併用して部屋の構成要素を分類したのちに、ＶＲ画像情報処理部３９は、部屋の３ＤデータであるＶＲ立体画像を生成し（ステップＳ１０９ｃ）、ＶＲ立体画像をVR立体画像情報記憶部４３に記憶して処理を終了する（ステップＳ１０９ｄ）。
【００５２】
以上のようにして部屋のＶＲ立体画像が生成されると、３Ｄデータとしてモデリングされた状態となるため、画像内に家具の３Ｄデータが設置可能となる。次いで、家具の設置に関する処理の流れを図１１を用いて説明する。図１１に示されるように、まず家具配置処理部４２は、家具の選択の入力があるまで待機し（ステップＳ２０１）、家具が選択されると（ステップＳ２０１：Ｙｅｓ）、その場合に家具の自動配置の設定がされたか否かを判定する（ステップＳ２０２）。自動配置の設定がされている場合（ステップＳ２０２：Ｙｅｓ）、自動配置処理へと移行する。
【００５３】
自動配置の設定がされていない場合（ステップＳ２０２：Ｎｏ）、家具配置処理部４２はまずＶＲ立体画像の中に選択された家具のモデリングデータ、及びテクスチャデータを表示させるよう描画部４１に指示する（ステップＳ２０３）。そして、家具配置処理部４２はユーザからの家具の移動や方向の変更の操作があったかを判定する（ステップＳ２０４）。家具の操作があった場合（ステップＳ２０４：Ｙｅｓ）、操作のあとに壁と家具のモデリングデータが接触しないかを判定し（ステップＳ２０５）、接触しない場合に、操作後の位置や方向に家具を再配置する処理が行われる（ステップＳ２０６）。
【００５４】
次に、家具の自動配置処理について図１２を用いて説明する。まず自動配置が設定されると、図１３で示されるように配置条件が選択されている。配置条件とは、家具のテイストを決めるものであり、「インダストリアル」「モダン」「和」のように家具に対してそのテイストを決める属性が付与されている。家具配置処理部４２は、図１３のＵＩで選択された配置条件に一致する家具のモデリングデータ、及びテクスチャデータを取得する（ステップＳ３０１）。次いで、家具配置処理部４２は、部屋のどの構成要素に対して家具を配置するかを決定する（ステップＳ３０２）。この構成要素とは、多くの場合は部屋における壁の部分であり、家具は通常壁に沿って設置することが多いためである。構成要素が決定されると、その構成要素に対してどの家具を配置するかの判断が行われる。この際、その家具がセット家具として設定されている組みあわせが登録されているかを家具配置処理部４２は判定する（ステップＳ３０３）。セット家具がある場合は（ステップＳ３０３：Ｙｅｓ）、セット対象の家具の配置関係をセットする。セット家具とは、例えば、ソファの前にはローテーブルが設置されたり、テレビボードはソファと正面になるというように、設置の方法が予め決まっているものを意味する。これらのセット家具の組みあわせは、家具情報記憶部４０に予め記憶されている。セット家具の場合は、その家具の組みあわせによって予め配置位置は設定されていることから、該当の家具の配置位置を取得して設定する（ステップＳ３０４）。そして、家具配置処理部４２は、その構成要素に対して最も優先度が高い家具を選択して、ＶＲ立体画像内に配置する（ステップＳ３０５）。この優先度の決め方としては、例えば構成要素が壁の場合、縦、横、高さの寸法のサイズが大きい家具が優先されて配置されるよう優先度が高く算出される。また、構成要素がドアの場合、ドアの前には通常家具が配置されないため、いずれの家具も選択されないようになっている。このように、構成要素ごとに最適な家具を様々な配置ルールを参照して、自動的に決定する。図１４はこのようにして配置された家具データの一例を示す図である。ここでは、ソファとテレビボードがセット家具として認識されるとともに、テレビボードとテレビがセット家具として認識され、それぞれが自動的に所定の位置関係になるように配置されている。
【００５５】
以上に示した本実施形態の情報処理装置３においては、パノラマ画像が読み込まれて３ＤのＶＲ立体画像に変換され、その際に部屋の構成要素の各寸法も自動的に算出される。そのため、家具のモデリングデータを配置する際にも、家具と部屋の実際の縮尺と同様の条件で家具を配置することができるようになるため、ＶＲ上で家具を配置した状態をより正確にシミュレーションすることができ、家具の配置をより好適にできるようになる。
【００５６】
［変形例１］
なお、本発明は上記実施の形態に限られたものではなく、要旨を逸脱しない範囲で適宜変更することが可能である。例えば、図１５に示されるように、家具の配置の際に、部屋を上方からみた状態に視点を変更し、この状態で家具の移動や配置を行うことができるようにしてもよい。この場合、家具が壁に接触しているかなども確認がしやすいため、部屋の家具移動が容易に行うことができるようになる。
【産業上の利用可能性】
【００５７】
上記のとおり、本発明は、部屋のパノラマ写真における寸法の推定や、部屋の３D立体画像の自動生成に有用である。
【符号の説明】
【００５８】
情報処理システム      １
情報処理装置          ３
通信部              ３１
制御部              ３２
記憶部              ３３
ネットワーク          ４
ユーザ端末装置        ５
通信部              ５１
制御部              ５２
記憶部              ５３
入力部              ５４
表示部              ５５
【要約】
【課題】パノラマ画像から部屋の各部位の寸法を算出し、かつ部屋の３D空間としての形を正確に把握する。
【解決手段】パノラマ画像内における基準線長さを取得し、基準線長さと他の部位の直線の長さとの比率を算出し、当該比率に基づいて予め付与された基準線の実際長さを示す基準線実測値から各直線の長さを算出する算出部３８と、パノラマ画像から、画像中に表示される各部位を部屋の構成要素として分類して認識するとともに、部屋の形を示す3DデータであるＶＲ立体画像へと変換するVR立体画像情報処理部３９を備える。
【選択図】図４【図１】
0006872660.tif 000002
【図２】
0006872660.tif 000003
【図３】
0006872660.tif 000004
【図４】
0006872660.tif 000005
【図５】
0006872660.tif 000006
【図６】
0006872660.tif 000007
【図７】
0006872660.tif 000008
【図８】
0006872660.tif 000009
【図９】
0006872660.tif 000010
【図１０】
0006872660.tif 000011
【図１１】
0006872660.tif 000012
【図１２】
0006872660.tif 000013
【図１３】
0006872660.tif 000014
【図１４】
0006872660.tif 000015
【図１５】
0006872660.tif 000016