(57)【要約】      （修正有）【課題】コンピュータによって実行される、建造物を表現する３Ｄモデルを生成する方法及び２Ｄフロアプランを処理するための改善されたソリューションを提供する。【解決手段】本方法は、建造物のレイアウトを表現する２Ｄフロアプランを提供するオフラインステージＳ１と、２Ｄフロアプランのセマンティックセグメンテーションを決定するオンラインステージＳ２と、セマンティックセグメンテーションに基づく３Ｄモデルを決定するアプリケーションＳ３と、を含む。【選択図】図１
2019121386.tif 000002
【特許請求の範囲】
【請求項１】
建造物のレイアウトを表現する２Ｄフロアプランを供給することと、
前記２Ｄフロアプランのセマンティックセグメンテーションを決定することと、
前記セマンティックセグメンテーションに基づいて３Ｄモデルを決定することと
を含む、
コンピュータによって実行される、前記建造物を表現する前記３Ｄモデルを生成する方法。
【請求項２】
前記方法は、前記セマンティックセグメンテーションを前記建造物のレイアウトを表現する２Ｄモデルに変換することをさらに含み、
前記３Ｄモデルの決定は前記２Ｄモデルから行われる、
請求項１に記載の方法。
【請求項３】
前記セマンティックセグメンテーションを前記２Ｄモデルへ変換することは、
建築のオブジェクトクラスの所定の集合の各々のクラスごとに、前記セマンティックセグメンテーションに基づいてマスクを決定することと、
前記決定されたマスクに基づいて前記２Ｄモデルを生成することと
を含む、
請求項２に記載の方法。
【請求項４】
前記各々のクラスごとに前記マスクを決定することは、
前記各々のクラスに対応する前記セマンティックセグメンテーションのピクセルのすべてでの初期化と、
スケルトン化と、
線分の数を減らすための線分の併合と
を含む
請求項３に記載の方法。
【請求項５】
前記線分の併合において、所定の共線性閾値を上回る線分と所定の距離閾値を下回る線分とのペアが併合される
請求項４に記載の方法。
【請求項６】
建築オブジェクトクラスの前記所定の集合は壁クラスを含み、
前記２Ｄモデルを生成することは、前記壁クラスに関する前記マスクの中の線分の連結を含む
請求項３〜５のいずれか一項に記載の方法。
【請求項７】
建築のオブジェクトクラスの前記所定の集合は、窓クラス、および／またはドアクラスをさらに含み、
前記２Ｄモデルを生成することは、前記窓クラスに関する前記マスクの線分、および／または前記ドアクラスに関する前記マスクの線分のそれぞれを、前記壁クラスに関する前記マスクの各々の線分上へ投影することをさらに含む
請求項６に記載の方法。
【請求項８】
それぞれの投影線分は、所定の共線性閾値を上回る前記投影線分との共線性を与えるものの中で前記壁クラスに関する前記マスクに最も近い線分に投影される
請求項７に記載の方法。
【請求項９】
前記２Ｄフロアプランの前記セマンティックセグメンテーションを決定することは、０．８５より高い平均正解率、および／または０．７５より高い平均ＩｏＵを与える関数を前記２Ｄフロアプランに適用することを含む
請求項１〜８のいずれか１項に記載の方法。
【請求項１０】
前記２Ｄフロアプランの前記セマンティックセグメンテーションを決定することは、機械学習済みの関数を前記２Ｄフロアプランに適用することで行われる
請求項１〜９のいずれか１項に記載の方法。
【請求項１１】
前記関数は、０．８５より高い平均正解率、および／または０．７５より高い平均ＩｏＵを与える
請求項１０に記載の方法。
【請求項１２】
前記関数は畳み込みエンコーダ・デコーダ・ニュートラルネットワークアーキテクチャを与え、
これに加えてもしくはこれに替えて、前記機械学習はクロスエントロピー損失関数に基づく確率的勾配降下法を含む
請求項１０または１１に記載の方法。
【請求項１３】
請求項１〜１２のいずれか１項に記載の方法を実行するための命令を含む、コンピュータプログラム。
【請求項１４】
請求項１３に記載のコンピュータプログラムが記録されたメモリを含む、デバイス。
【請求項１５】
前記メモリに接続されたプロセッサおよびグラフィカルユーザインタフェースをさらに含む、請求項１４に記載のデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータプログラムおよびシステムの分野に関し、より具体的には、建造物のレイアウトを表現する２次元（２Ｄ）のフロアプランを処理するための、方法、システム、およびプログラムに関する。
【背景技術】
【０００２】
多くのシステムおよびプログラムが、オブジェクトの、設計、エンジニアリング、および製造のためにマーケットに提供される。ＣＡＤは、コンピュータ援用設計（Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｄｅｓｉｇｎ）の頭文字であり、例えば、オブジェクトを設計するためのソフトウェアソリューションに関する。ＣＡＥは、コンピュータ援用エンジニアリング（Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｅｎｇｉｎｅｅｒｉｎｇ）の頭文字であり、例えば、将来の製品の物理的な振る舞いをシミュレーションするためのソフトウェアソリューションに関する。ＣＡＭは、コンピュータ援用製造（Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｍａｎｕｆａｃｔｕｒｉｎｇ）の頭文字であり、例えば、製造プロセスおよびオペレーションを規定するためのソフトウェアソリューションに関する。そのようなコンピュータ援用設計システムにおいて、グラフィカルユーザインタフェースは、技術の効率に関する重要な役割を果たす。これらの技術は、製品ライフサイクル管理（ＰＬＭ）システム内に埋め込まれていてもよい。ＰＬＭは、拡張エンタープライズの概念全体にわたって、会社が、製品データを共有し、共通の工程を適用し、構想からそれらの寿命の終わりまで製品の開発のための企業知識を活用することを支援する経営戦略を指す。ダッソー・システムズ（Ｄａｓｓａｕｌｔ  Ｓｙｓｔｅｍｅｓ）（ＣＡＴＩＡ、ＥＮＯＶＩＡおよびＤＥＬＭＩＡの商標のもと）によって提供されるＰＬＭソリューションは、エンジニアリングハブ（製品エンジニアリング知識を組織する）、製造ハブ（製造エンジニアリング知識を管理する）、および、企業ハブ（エンジニアリングハブおよび製造ハブの両方への企業統合および接続を可能にする）を提供する。それらすべてで、システムは、ダイナミックな、知識に基づいた製品創造と、最適化された製品定義、製造準備、生産およびサービスを推進する意志決定支援とを可能にする、リソース、プロセス、製品をリンクするオープンオブジェクトモデルをもたらす。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
このような状況等において、２Ｄフロアプランのコンピュータ化された処理を提供することが有用となる可能性がある。
【０００４】
研究者およびＣＡＤ開発者は、特に、３次元（３Ｄ）の建造物モデルへの２Ｄの建築のフロアプラン画像の転換を、自動化および加速しようとしてきた。いくつかの最新のアプローチを、以下に列挙する論文［１］および［２］（およびそれらの中で引用された参考文献）の中に見出すことができる。
【０００５】
２Ｄフロアプランを３Ｄモデルに変換するための１つのステージは、フロアプランの記号（これは、あるプランと別のプランとで非常に異なりうる）を認識することかもしれない。これについて、ほとんどのアプローチは、画像処理およびパターン認識技術に依存しており、従って普遍性に欠ける。パターン認識装置は、典型的には、予め定められた記号の、限定された集合に制約される。以下に列挙する論文［３］は、そのようなアプローチの一例である。
【０００６】
例えば以下に列挙する論文［５］および［６］の中で示唆されているように、提案された道筋は、通常、最初に２Ｄプランを前処理することからなる。これについて、画像処理方法および文書処理方法の両方は、テキストコンテンツから図形を分離するために使用される。次に、画像は、誤差の原因となりうる、混乱を生じさせる要素（例えば、階段、家具付きの要素）の削除によって、さらにクリーンにされる。この処理の最後において、残っている線の中から壁を表現するものを選択することを目的とする。これについては、基準の壁厚に近い値を選ばなければならない。しかしながら、建設領域および設計者によって、異なる厚さが存在する。次に、屋外の壁および開口部が認識される。パターン認識方法は通常、開口部のタイプを決定するために使用される。例えば、論文［３］によって示唆されたアプローチでは、「弧（ａｒｃ）」のモチーフが、それぞれの開口部のまわりでサーチされ、モチーフが見つかった場合には、次にそれはドアタイプに設定され、そうでない場合には窓タイプに設定される。最後に、屋内の壁および開口部が認識される。パターン認識技術に加えて、いくつかの研究は、学習アプローチを、特に壁の検出（例えば、論文［６］に示唆されているような、壁のパッチに基づくオブジェクトセグメンテーション）に使用してきた。そのような道筋では、効果がないシステムをもたらすことになる誤差および矛盾が、あるステップから別のステップに当然に蓄積されることは明らかだと思われる。このため、いくつかの研究は、最初に例えばオリジナルのファイル中のいくつかの問題を解決すること（以下に列挙する論文［４］の中で示唆されているように）によって、または、いくつかのステップの後に例えばユーザに修正に対するいくつかの選択肢を提案すること（論文［５］の中で示唆されているように）によって、認識処理にユーザを巻き込むことを試みてきた。しかしながら、論文［５］における統計が、テストされたプランの大多数に対して約１５のユーザの介在が必要とされ、いくつかのプランに対して４０を超える介在が必要とされたことを示している、ということに言及することには意味がある。ユーザの介在によって、高コストおよび非常に長い処理（非リアルタイム性）がもたらされる。
【０００７】
この状況において、２Ｄフロアプランを処理する改善されたソリューションが、依然として必要とされている。
［先に引用された学術的な論文のリスト］
【非特許文献１】［１］  Ｘｕｅｔａｏ  Ｙ．  ｅｔ  ａｌ．，  Ｇｅｎｅｒａｔｉｎｇ  ３Ｄ  Ｂｕｉｌｄｉｎｇ  Ｍｏｄｅｌｓ  ｆｒｏｍ  Ａｒｃｈｉｔｅｃｔｕｒａｌ  Ｄｒａｗｉｎｇｓ：  Ａ  Ｓｕｒｖｅｙ  ＩＥＥＥ  Ｃｏｍｐｕｔｅｒ  Ｇｒａｐｈｉｃｓ  ａｎｄ  Ａｐｐｌｉｃａｔｉｏｎｓ，  ２００９
【非特許文献２】［２］Ｇｉｍｅｎｅｚ，  Ｌ．  ｅｔ  ａｌ．，  Ｒｅｖｉｅｗ：  ｒｅｃｏｎｓｔｒｕｃｔｉｏｎ  ｏｆ  ３ｄ  ｂｕｉｌｄｉｎｇ  ｉｎｆｏｒｍａｔｉｏｎ  ｍｏｄｅｌｓ  ｆｒｏｍ  ２ｄ  ｓｃａｎｎｅｄ  ｐｌａｎｓ．  Ｊｏｕｒｎａｌ  ｏｆ  Ｂｕｉｌｄｉｎｇ  Ｅｎｇｉｎｅｅｒｉｎｇ，  ｐｐ．  ２４−３５，  ２０１５
【非特許文献３】［３］Ｇｉｍｅｎｅｚ  Ｌ．  ｅｔ  ａｌ．  Ｒｅｃｏｎｓｔｒｕｃｔｉｏｎ  ｏｆ  ３Ｄ  ｂｕｉｌｄｉｎｇ  ｍｏｄｅｌｓ  ｆｒｏｍ  ２Ｄ  ｓｃａｎｎｅｄ  ｐｌａｎｓ−ｏｐｅｎｉｎｇ  ｔｈｅ  ｐａｔｈ  ｆｏｒ  ｅｎｈａｎｃｅｄ  ｄｅｃｉｓｉｏｎ  ｓｕｐｐｏｒｔ  ｉｎ  ｒｅｎｏｖａｔｉｏｎ  ｄｅｓｉｇｎ  ＥＣＰＰＭ  ２０１４
【非特許文献４】［４］Ｄｏｍｉｎｇｕｅｚ  Ｂ．  ｅｔ  ａｌ．  Ｓｅｍｉａｕｔｏｍａｔｉｃ  ｄｅｔｅｃｔｉｏｎ  ｏｆ  ｆｌｏｏｒ  ｔｏｐｏｌｏｇｙ  ｆｒｏｍ  ＣＡＤ  ａｒｃｈｉｔｅｃｔｕｒａｌ  ｄｒａｗｉｎｇｓ  Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｄｅｓｉｇｎ，  ２０１２
【非特許文献５】［５］Ｇｉｍｅｎｅｚ  Ｌ．  ｅｔ  ａｌ．  Ａ  ｎｏｖｅｌ  ａｐｐｒｏａｃｈ  ｔｏ  ２Ｄ  ｄｒａｗｉｎｇｓ−ｂａｓｅｄ  ｒｅｃｏｎｓｔｒｕｃｔｉｏｎ  ｏｆ  ３Ｄ  ｂｕｉｌｄｉｎｇ  ｄｉｇｉｔａｌ  ｍｏｄｅｌｓ，  Ｂｕｉｌｄｉｎｇ  ｉｎｆｏｒｍａｔｉｏｎ  ｍｏｄｅｌｉｎｇ  （ＢＩＭ）  ｉｎ  ｄｅｓｉｇｎ  ｃｏｎｓｔｒｕｃｔｉｏｎ  ａｎｄ  ｏｐｅｒａｔｉｏｎｓ，  ｖｏｌ  １４９，  ２０１５
【非特許文献６】［６］Ｈｅｒａｓ，  Ｌ．−Ｐ．  ｄｅ  ｌａｓ  ｅｔ  ａｌ．  Ｗａｌｌ  Ｐａｔｃｈ−Ｂａｓｅｄ  Ｓｅｇｍｅｎｔａｔｉｏｎ  ｉｎ  Ａｒｃｈｉｔｅｃｔｕｒａｌ  Ｆｌｏｏｒｐｌａｎｓ，  ＩＣＤＡＲ−２０１１
【課題を解決するための手段】
【０００８】
従って、建造物を表現する３Ｄモデルを生成するためのコンピュータ実行方法が提供される。本方法は、前記建造物のレイアウトを表現する２Ｄフロアプランを供給することを含む。本方法はさらに、前記２Ｄフロアプランのセマンティックセグメンテーション（ｓｅｍａｎｔｉｃ  ｓｅｇｍｅｎｔａｔｉｏｎ）を決定することを含む。本方法はさらに、前記セマンティックセグメンテーションに基づいて前記３Ｄモデルを決定することを含む。
【０００９】
本方法は、以下の１つ以上を含んでもよい。
【００１０】
本方法は、前記セマンティックセグメンテーションを建造物のレイアウトを表現する２Ｄモデルに変換することを含み、前記３Ｄモデルの決定は前記２Ｄモデルから行われる。
【００１１】
前記セマンティックセグメンテーションを前記２Ｄモデルに変換することは、建築のオブジェクトクラスの所定の集合のクラスごとに、前記セマンティックセグメンテーションに基づいてマスクを決定すること、および、前記決定されたマスクに基づいて前記２Ｄモデルを生成すること、を含む。
【００１２】
各々のクラスごとにマスクを決定することは、前記各々のクラスに対応するセマンティックセグメンテーションのピクセルのすべてでの初期化、スケルトン化、および、線分の数を減らすための線分の併合、を含む。
【００１３】
線分の併合において、所定の共線性閾値を上回る線分と所定の距離閾値を下回る線分とのペアが併合される。
【００１４】
建築のオブジェクトクラスの前記所定の集合は壁クラスを含み、２Ｄモデルを生成することは、前記壁クラスに関する前記マスク中の線分の連結を含む。
−建築のオブジェクトクラスの前記所定の集合は、窓クラス、および/またはドアクラスをさらに含み、前記２Ｄモデルを生成することは前記窓クラスに関する前記マスクの線分、および/または前記ドアクラスに関する前記マスクの線分のそれぞれを、前記壁マスクの各々の線分上へ投影することをさらに含む。
−それぞれの投影線分は、所定の共線性閾値を上回る前記投影線分との共線性を与えるものの中で前記壁マスクに最も近い線分に投影される。
−前記２Ｄフロアプランのセマンティックセグメンテーションを決定することは、０．８５より高い平均正解率、および／または、０．７５より高い平均ＩｏＵ（ｉｎｔｅｒｓｅｃｔｉｏｎ−ｏｖｅｒ−ｕｎｉｏｎ）を与える関数を前記２Ｄフロアプランに適用することを含む。
−前記２Ｄフロアプランのセマンティックセグメンテーションを決定することは、機械学習済みの関数を前記２Ｄフロアプランに適用することによって行われる。
−前記２Ｄフロアプランのセマンティックセグメンテーションを決定することは、機械学習済みの関数を前記２Ｄフロアプランに適用することによって行われる。
−前記関数は、０．８５より高い平均正解率、および／または０．７５より高い平均ＩｏＵを与える。および/または、
−前記関数は、畳み込みエンコーダ・デコーダ・ニューラルネットワークアーキテクチャ（ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｅｎｃｏｄｅｒ−ｄｅｃｏｄｅｒ  ａｒｃｈｉｔｅｃｔｕｒｅ）を与え、かつ/または学習することは、任意にクロスエントロピー損失関数（ｃｒｏｓｓ−ｅｎｔｒｏｐｙ  ｌｏｓｓ  ｆｕｎｃｔｉｏｎ）に基づく確率的勾配降下法（ｓｔｏｃｈａｓｔｉｃ  ｇｒａｄｉｅｎｔ  ｄｅｓｃｅｎｔ）を含む。
【００１５】
本方法を行うための命令を含むコンピュータプログラムがさらに提供される。
前記コンピュータプログラムが記録されている、コンピュータ読み取り可能な記憶媒体がさらに提供される。
【００１６】
メモリおよびグラフィカルユーザインタフェースに接続されたプロセッサを含むシステムであって、前記メモリには前記コンピュータプログラムが記録されているシステムがさらに提供される。
【図面の簡単な説明】
【００１７】
【図１】本発明に係る方法を集約する処理を示す。
【図２】本発明に係るシステムの一例を示す。
【図３】本発明に係る処理を図示する。
【図４】本発明に係る処理を図示する。
【図５】本発明に係る処理を図示する。
【図６】本発明に係る処理を図示する。
【図７】本発明に係る処理を図示する。
【図８】本発明に係る処理を図示する。
【図９】本発明に係る処理を図示する。
【図１０】本発明に係る処理を図示する。
【図１１】本発明に係る処理を図示する。
【図１２】本発明に係る処理を図示する。
【図１３】本発明に係る処理を図示する。
【図１４】本発明に係る処理を図示する。
【図１５】本発明に係る処理を図示する。
【図１６】本発明に係る処理を図示する。
【図１７】本発明に係る処理を図示する。
【図１８】本発明に係る処理を図示する。
【図１９】本発明に係る処理を図示する。
【発明を実施するための形態】
【００１８】
非限定的な例を用いて、添付の図面を参照して、本発明の実施形態について記載することとする。
図１は、建築の３Ｄ再構成の処理を示す。本処理は、特に、３Ｄモデル（建造物を表現する３Ｄモデル）を構成するためのものである。本処理は、入力２Ｄフロアプラン（建造物のレイアウトを表現する入力２Ｄフロアプラン）に基づく。
【００１９】
本処理は、入力２Ｄフロアプランのセマンティックセグメンテーションを決定するために、機械学習を含む。
【００２０】
特に、本処理は、任意の与えられた２Ｄフロアプラン（それぞれの前記与えられた２Ｄフロアプランは各々の建造物のレイアウトを表現する）のセマンティックセグメンテーションを決定する（例えば、計算する、および／または、出力する）ように構成された関数を決定する（この場合、すなわち学習（トレーニング）する）ためのオフラインステージＳ１を含む。オフラインステージＳ１は、データセットの供給Ｓ１０を含む。データセットは２Ｄフロアプランを含む。それぞれの２Ｄフロアプランは、各々のセマンティックセグメンテーションに関連づけられる（データセットにおいて、すなわちリンク（接続）される、換言すると関係する）。オフラインステージＳ１は、データセットに基づいて関数を学習する（すなわちトレーニングする）処理Ｓ２０をさらに含む。
【００２１】
本処理は、オフラインステージＳ１の後に、オンライン（すなわちインライン）のステージＳ２を含む。オンラインステージＳ２は、入力２Ｄフロアプランへの供給を含む。オンラインステージＳ２はさらに、入力２Ｄフロアプランに関数（オフラインステージＳ１内で機械学習されたもの）を適用することを含み、それによって、入力２Ｄフロアプランの前記セマンティックセグメンテーションを決定する。
【００２２】
オフラインステージＳ１およびオンラインステージＳ２は、異なる回数、異なる場所で、異なるシステムで、および／または、異なる人または団体によって、開始されてもよいし、および／または、実行されてもよい。例えば、オフラインステージＳ１は、ソフトウェアエディタによって、および／または、生産ラインにおいて、または、サービスプロバイダによって、および／または、完全にサーバにおいて、実行されてもよい。オンラインステージＳ２は、ユーザによって、および／または、少なくとも部分的にはクライアントコンピュータにおいて、実行されてもよい。
【００２３】
そのような機械学習を、２Ｄフロアプランセマンティックセグメンテーションを行うために使用することによって、比較的正確で強固な結果に達することが可能となる（特に、いかなる標準も欠けているため、２Ｄフロアプランに使用される表現の多様性の観点において）。さらに、フロアプランセマンティックセグメンテーションを行うために機械学習を使用することは、比較的効率的におよび／または比較的速く、そのような結果に達することを可能にする（例えば本質的にリアルタイムにおいて、および／または、ユーザの介在がわずかだけかまたは実質的になしで、例えば、ひとたび開始されると、決定処理Ｓ４０は完全に自動的に行われる）。
【００２４】
処理Ｓ２０における関数および学習はどのようなものであってもよい。一例において、学習処理Ｓ２０は、特に、深層学習（ｄｅｅｐ−ｌｅａｒｎｉｎｇ）によって実行されてもよい。後述する。一例において、深層学習は、関数が畳み込みニューラルネットワーク（ＣＮＮ）アーキテクチャ（より詳細には、畳み込みエンコーダ・デコーダ・ニューラルネットワークアーキテクチャ）を与える種類のものであってもよい。学習処理Ｓ２０のそのような例は、特に効率的である。他の一例において、関数は、「ランダムフォレスト（ｒａｎｄｏｍ  ｆｏｒｅｓｔ）」、マルコフ確率場（Ｍａｒｋｏｖ  ｒａｎｄｏｍ  ｆｉｅｌｄ）、ＳＶＭ  （Ｓｕｐｐｏｒｔ  Ｖｅｃｔｏｒ  Ｍａｃｈｉｎｅ）のような他の機械学習技術によって学習されてもよい。そのようなアルゴリズムは、ＳＩＦＴまたはＨｏＧのような未学習の特徴を入力としてもよい。
【００２５】
建築の３Ｄ再構成の代替処理は、さらに、処理Ｓ４０において、入力２Ｄフロアプランのセマンティックセグメンテーションを他の方法で決定してもよい。そのような代替処理は、機械学習済み関数が処理Ｓ４０において必要とされないのでオフラインステージＳ１が任意に切り捨てられてもよいという点を除いて、他の態様に対する図１の処理と同一であってもよい。
【００２６】
一般に、セマンティックセグメンテーションは任意のアプリケーションで使用されてもよい。例えば、セマンティックセグメンテーションは、オブジェクト検出および／またはアノテーション（ａｎｎｏｔａｔｉｏｎ）に使用されてもよい。
【００２７】
図１の処理の場合には、セマンティックセグメンテーションは、入力２Ｄフロアプランに対応する建造物を表現する３Ｄモデルの生成のためのアプリケーションＳ３において使用される。もちろん、セマンティックセグメンテーションは、そのような３Ｄモデルの決定のために基づいてもよい。３Ｄモデルは、後に、任意の方法で（例えば建造物の仮想インテリアデザインを生成するために）使用されてもよい。
【００２８】
アプリケーションＳ３は、オンラインステージＳ２に対して、異なる時に、異なる場所で、異なるシステムで、および／または異なる人または団体によって、実行されてもよい。あるいは、アプリケーションＳ３は、オンラインステージＳ２にシームレスに続いてもよいし、および／またはオンラインステージＳ２の後に自動的に開始されてもよい。一例において、ユーザは処理Ｓ３０において入力２Ｄフロアプランを供給するだけであり、３Ｄモデルを出力するステップのすべてをシステムが自動的に実行する。他の例において、結果を検証するためにユーザが介在してもよい。例えば、決定処理Ｓ４０の後に、セマンティックセグメンテーションを検証するためおよび／または修正するために、介在してもよい。
【００２９】
図１の。一例において、アプリケーションＳ３は、特別には、セマンティックセグメンテーションを、建造物のレイアウトを表現する２Ｄモデルに変換する処理Ｓ５０〜Ｓ６０を含む。次に、２Ｄモデルから３Ｄモデルを決定する処理Ｓ７０が行われる。そのような処理は、入力２Ｄフロアプランから３Ｄモデルを生成するための効率的な道筋を形成する。入力２Ｄフロアプランは、確かに、建造物に関する組織化されていない２Ｄ情報を供給する。本処理は、Ｓ２内でセマンティックセグメンテーションを決定することによって、最初にそのような情報を組織化することを提案する。次に、２Ｄセマンティックセグメンテーションを３Ｄ形状に直接変換するのではなく、本処理は、セマンティックセグメンテーションから２Ｄモデルを構成することを提案する。そのような中間のデータ構造は、結局、より容易に３Ｄモデルを構成することを可能にする。
【００３０】
「建造物（ｂｕｉｌｄｉｎｇ）」という語句は、あらゆる建築物を意味する。本処理によって考察される「建造物」は、フラット、アパート、高層建造物、マンション、家、別荘、モニュメント、または、壁、窓および／または部屋を含む他の構築物であってもよい。
【００３１】
建造物に対する「レイアウト（ｌａｙｏｕｔ）」という語句は、建造物を構成する建築オブジェクトのインスタンスの２Ｄ配置を意味する。レイアウトは、単一のフロアの、またはいくつかのフロアの、またはその１つ以上の部分の、２Ｄ配置を描写してもよい。以下の考察は、単一のフロアに関するレイアウトに適用されるが、複数のフロアの場合への適用は容易である。
【００３２】
「建築オブジェクト（ａｒｃｈｉｔｅｃｔｕｒａｌ  ｏｂｊｅｃｔ）」は、任意の建造物の形成に含まれる任意のオブジェクトである。本処理によって考察される建築オブジェクトクラスは、建築オブジェクトクラスの所定の集合（すなわち、予めシステムに記憶され、それに対してＳ５０において実行されるループが限定されている）であってもよい。建築オブジェクトクラスの所定の集合は、壁クラス、窓クラスおよび／またはドアクラスの任意の１つまたは任意の組み合わせ（例えばすべて）を含んでもよいし、それらからなるものであってもよい。建築オブジェクトは、屋根または基礎のような他のクラスに属してもよいが、これらのクラスはレイアウトに表現されなくてもよい。
【００３３】
「２Ｄフロアプラン（２Ｄ  ｆｌｏｏｒ  ｐｌａｎ）」という語句は、知られているように、建造物のレイアウトの図面を表現する画像を意味する。図面は、線（恐らく様々な太さ）および記号を含む。２Ｄフロアプランはスケッチされてもよく、例えば、物質的なサポート（紙など）に手作業でスケッチして次にスキャンまたは撮影されてもよいし、または、例えば、デジタル的に（スケッチングソフトウェアとのユーザ相互作用を介して、タッチペンおよび／またはタッチスクリーンを例えば使用して）スケッチしてもよいし、または、プログラムによって自動的に生成されてもよい。２Ｄフロアプランを描画するための異なるルールが存在するかもしれないが、標準はない。Ｓ１０で供給されるデータセットは特に、少なくとも２つがルールについての異なる集合の各々の１つを使用して描画される２Ｄフロアプラン、および／または、例えば手作業でおよび／またはデジタル的にスケッチされる２Ｄフロアプラン、を含んでもよい。Ｓ３０において供給される入力２Ｄフロアプランは、システムのユーザによってまたは事前に別人によって、スケッチされてもよい。
【００３４】
「セマンティックセグメンテーション」という語句は、画像に対して、知られているように、画像の任意の区分（ｐａｒｔｉｔｉｏｎ）またはセグメンテーションを意味し、区分の画像部分またはセグメントのそれぞれは、画像部分によって表現されたオブジェクトのクラスに割り当てられるか、または関連づけられる。２Ｄフロアプランに対して、「セマンティックセグメンテーション」は同様に、２Ｄフロアプランの部分が建築オブジェクトクラスの上記所定の集合の各々の１つに割り当てられてもよいような区分である。一例において、２Ｄフロアプランの部分はそれぞれ、建築オブジェクトクラスの上記所定の集合の各々の１つに割り当てられてもよいし、オブジェクトの他のタイプ、および／または背景（従って本処理の残りの部分によって切り捨てられる）に共通のクラス表現に割り当てられてもよい。
【００３５】
本処理によって決定されたセマンティックセグメンテーションは、任意の方法でそのような割り当てを実行してもよい。一例において、割り当ては、建築オブジェクトクラスの所定の集合の各々の１つにそれぞれが対応するラベルを供給し、２Ｄフロアプランの部分をそれぞれ、各々のラベルに関連づけることによって実行されてもよい。一例において、セマンティックセグメンテーションは、ピクセルワイズ（ピクセル単位の）・セマンティックセグメンテーションであってもよい。そのような場合、決定処理Ｓ４０は、２Ｄフロアプランのピクセルをそれぞれ、各々の所定のラベルに割り当てることからなるものであってもよい。
【００３６】
本処理は、セマンティックセグメンテーションを、建造物のレイアウトを表現する２Ｄモデルに変換する処理Ｓ５０〜Ｓ６０を含む。
【００３７】
２Ｄ（各々３Ｄ）モデルは、それぞれが建築オブジェクトの各々のインスタンスを表現する２Ｄ（各々３Ｄ）モデル化オブジェクトの２Ｄ（各々３Ｄ）配置を表現するデータ構造である。データ構造は、それぞれが各々のデータフィールドを含むいくらかのデータを含んでもよく、１つ以上のデータフィールドは各々の２Ｄ（各々３Ｄ）モデル化オブジェクトを表現し、１つ以上のデータフィールドは２Ｄ（各々３Ｄ）ポジショニング（例えば共通の２Ｄ（各々３Ｄ）基準座標系に関する）を表現する。そのようなデータ構造は、表現された建築オブジェクトインスタンス間の正確な相対的ポジショニングの記述を可能にする。２Ｄモデルは、セマンティックセグメンテーションよりも高いレベルでの２Ｄ配置の記述を提供する。
【００３８】
２Ｄ（各々３Ｄ）モデル化オブジェクトは、２Ｄ（各々３Ｄ）操作（例えば剛的動作、スケーリング、および／または、任意の他の幾何学的変換、および／または、ＣＡＤ操作）のような（例えば線形時間）パラメトリック変換を可能にする位相情報、および／または、２Ｄ（各々３Ｄ）幾何学的データを含むデータ構造である。
【００３９】
２Ｄモデルは、２Ｄの幾何学的形状またはプリミティブ（例えば、様々な太さの線分および／または弧を含む）の所定の集合に制約されてもよい。そのような２Ｄプリミティブはそれぞれ、所定のパラメータの各々の数によって、完全に特徴づけられ且つ表現されてもよい。そのような数は低くてもよい（例えば、２０または１０を下回る）。例えば、太さを備える直線は、５つのパラメータ（例えば、末端の座標および太さ）によって表現されてもよい。
【００４０】
２Ｄモデルは、例えば、２Ｄベクトル画像であってもよい。
【００４１】
３Ｄモデルは例えば、境界表現（Ｂ−Ｒｅｐ）のようなＣＡＤモデルであってもよく、それは、カノニカル（ｃａｎｏｎｉｃａｌ）な表面（例えば平面）、および／または、パラメトリック曲面（例えば連続的、例えばＮＵＲＢＳまたはＢスプライン）、カノニカルな曲線（例えば線）、および／または、パラメトリック曲線（例えば連続的）、および／または、３Ｄポイント、のような幾何学的オブジェクト、ならびに、これらの幾何学的オブジェクトに関する位相データ（例えば境界関係を規定する）を含む。３Ｄモデルは、任意の規格におけるＣＡＤファイル（ＳＴＥＰファイルまたは他のＣＡＤファイル形式など）として出力されてもよい。
【００４２】
建造物のレイアウトを表現する２Ｄモデルへセマンティックセグメンテーションを変換する処理Ｓ５０〜Ｓ６０は、比較的容易に実行可能かもしれない。そのような変換は、もちろん、セマンティックセグメンテーションの画像サイズ（すなわち入力２Ｄフロアプランのサイズ）のオーダーの計算量で実行されてもよい（例えばセマンティックセグメンテーションにおいて１回以上ループすることを含む）。
【００４３】
特別には、変換する処理Ｓ５０〜Ｓ６０は、それぞれが各々の建築オブジェクトクラスそれぞれに関連づけられたセマンティックセグメンテーションの接合部を、それぞれ、各々の建築オブジェクトクラスのインスタンスを表現する各々の２Ｄモデル化オブジェクトに変換すること、および次に、建築の一貫性を確保する所定のルールに従って２Ｄモデル化オブジェクトを再配置すること、を含んでもよい。ピクセルワイズ・セマンティックセグメンテーションの場合には、変換処理は、建築オブジェクトクラスの各々のインスタンスを表現する最大の接続部にピクセルをグループ化すること、および次に、それらを正則化するために接続部を再加工すること、を含んでもよい。
【００４４】
図１の処理はさらに、変換する処理Ｓ５０〜Ｓ６０を、クラスごとの基準で（すなわち前記クラスにおいてループして）建築オブジェクトに行うことを提案する。これは、より容易な処理、および、より正確な結果の達成を可能にする。特別には、それぞれの建築オブジェクトクラスに対して、本処理は、セマンティックセグメンテーションに基づいて、マスクを決定する処理Ｓ５０を含む。次に、２Ｄモデルが、Ｓ６０において決定されたマスクに基づいてＳ６０において生成される。それぞれのマスクは、セマンティックセグメンテーション（Ｓ４０において決定され、アプリケーションＳ３に入力される）と同じサイズの画像であり、それぞれのマスクは、各々のクラスに関連づけられたセマンティックセグメンテーションの要素（例えばピクセル）を表現する。生成する処理Ｓ６０は、上記のグループ化、変換（任意）、および再配置を含んでもよい。グループ化および変換は、マスクごとの基準で実行されてもよい（例えばマスク中の情報以外の情報を全く使用せずに）。これは、本処理を単純化する。再配置も、マスクごとの基準で行われてよいが、少なくとも１つのマスクに対して、１つ以上の他のマスク中の情報を使用する。
【００４５】
建造物を表現する３Ｄモデルを２Ｄモデルから決定する処理Ｓ７０も、比較的容易に実行可能かもしれない。もちろん、２Ｄモデル中のそれぞれの建築オブジェクトインスタンスは、３Ｄモデル中の各々の建築オブジェクトインスタンスを直接生み出してもよい。決定処理は、任意の既知のアルゴリズムを使用して実行されてもよい。決定処理Ｓ７０は特に、２Ｄモデルの２Ｄモデル化オブジェクトのそれぞれに、各々の３Ｄポジショニングデータおよび／または高さデータを加えることを含んでもよい。一例において、これらのデータは、任意の方法で事前に決定されてもよしい、または、ユーザとの対話（ｕｓｅｒ−ｉｎｔｅｒａｃｔｉｏｎ）によって特定されてもよい。決定処理Ｓ７０は、さらに、互換性／整合性の、チェックおよび／または管理を含んでもよい。
【００４６】
本処理はコンピュータにて実行される。これは、少なくとも１つのコンピュータまたは任意の同様のシステムによって、本処理のステップ（あるいは実質的にすべてのステップ）が実行されることを意味する。従って、本処理のステップは、コンピュータによって、おそらく完全に自動的にあるいは半自動的に、実行される。一例において、本処理のステップのうちの少なくともいくつかのトリガーは、ユーザとコンピュータとの対話によって実行されてもよい。ユーザとコンピュータとの対話の要求されるレベルは、予測された自動性のレベルによって決まるものであってもよく、ユーザの希望を実行する必要性とバランスをとってもよい。一例において、このレベルは、ユーザで規定されてもよいし、および／または、予め規定されてもよい。
【００４７】
コンピュータによる処理の実行の典型例は、この目的に適したシステムで処理を行うことである。システムは、メモリおよびグラフィカルユーザインタフェース（ＧＵＩ）につながれたプロセッサを含んでもよく、メモリには、本処理を行うための命令を含むコンピュータプログラムが記録されていてもよい。メモリはまた、データベースを記憶してもよい。メモリは、そのような記憶に適した任意のハードウェアであり、いくつかの物理的に異なる部品（例えばプログラム用のもの、および恐らくデータベース用のもの）を恐らく含む。
【００４８】
システムはＣＡＤシステムであってもよく、および／または、建造物の３ＤモデルはＣＡＤシステムにロードされてもよい。ＣＡＤシステムは、ＣＡＴＩＡのような、モデル化オブジェクトの図的表現に基づいてモデル化オブジェクトを少なくとも設計するために適した任意のシステムをさらに意味する。この場合、モデル化オブジェクトを規定するデータは、モデル化オブジェクトの表現を可能にするデータを含む。ＣＡＤシステムは、例えば、エッジまたは線を使用して、ある種の場合には面または表面と共に、ＣＡＤモデル化オブジェクトの表現を提供してもよい。線、エッジ、または表面は、様々な方法（例えば非一様有理Ｂスプライン（ＮＵＲＢＳ））で表現されてもよい。特別には、ＣＡＤファイルは、形状がそれから生成されてもよい仕様を含んでおり、それは次に、表現が生成されることを可能にする。モデル化オブジェクトの仕様は、単一のＣＡＤファイルか多数のそれに格納されてもよい。ＣＡＤシステムにおいてモデル化オブジェクトを表現するファイルの典型的なサイズは、１つの部品当たり１メガバイトの範囲にある。また、モデル化オブジェクトは、典型的には何千もの部品の組立体であってもよい。
【００４９】
図２は、システムの一例を示し、当該システムは、クライアントコンピュータシステム（例えばユーザのワークステーション）である。
【００５０】
本例のクライアントコンピュータは、内部通信バス（ＢＵＳ）１０００に接続された中央処理装置（ＣＰＵ）１０１０、同じくＢＵＳに接続されたランダムアクセスメモリ（ＲＡＭ）１０７０を含む。クライアントコンピュータは、ＢＵＳに接続されたビデオランダムアクセスメモリ１１００に関係するグラフィック処理装置（ＧＰＵ）１１１０をさらに備える。ビデオＲＡＭ１１００は、この技術において、フレームバッファとしても知られている。大容量記憶装置コントローラ１０２０は、ハードドライブ１０３０のような大容量メモリ装置へのアクセスを管理する。コンピュータプログラムの命令およびデータを明確に包含するのに適した大容量メモリ装置は、すべての形式の不揮発性メモリ（ＥＰＲＯＭ、ＥＥＰＲＯＭ、およびフラッシュメモリ装置のような半導体メモリ装置を例えば含む）、内部ハードディスクおよびリムーバブルディスクのような磁気ディスク、光磁気ディスク、および、ＣＤ−ＲＯＭディスク１０４０を含む。前記のいずれかは、特別に設計されたＡＳＩＣｓ（特定用途向け集積回路）によって補足されるか、それに組み込まれてもよい。ネットワークアダプタ１０５０は、ネットワーク１０６０へのアクセスを管理する。また、クライアントコンピュータは、カーソル制御装置、キーボードなどのような触覚デバイス１０９０を含んでもよい。ディスプレイ１０８０上の任意の所望の位置にユーザが選択的にカーソルを置くことを可能にするために、クライアントコンピュータにおいてカーソル制御装置が使用される。さらに、カーソル制御装置は、ユーザが、様々なコマンドを選択し、制御信号を入力することを可能にする。カーソル制御装置は、システムに制御信号を入力するための複数の信号生成装置を含む。典型的には、カーソル制御装置は、マウスであってもよく、マウスのボタンは信号を生成するために使用される。あるいはまたはさらに、クライアントコンピュータシステムは、感知可能なパッドおよび／または感知可能なスクリーンを含んでもよい。
【００５１】
コンピュータプログラムは、コンピュータによって実行可能な命令を含んでもよく、命令は、上記のシステムに本処理を行わせるための手段を含む。プログラムは、任意のデータ記憶媒体（システムのメモリを含む）に記録可能であってもよい。プログラムは、例えば、デジタル電子回路において、または、コンピュータハードウェア、ファームウェア、ソフトウェアにおいて、もしくはそれらの組み合わせにおいて、実行されてもよい。プログラムは、装置として、例えばプログラム可能なプロセッサによる実行のための機械可読の記憶装置に明確に組み込まれた製品として、実行されてもよい。処理ステップは、入力データを処理し出力を生成することによってその処理の機能を行う命令のプログラムを実行するプログラム可能なプロセッサによって実行されてもよい。このように、プロセッサは、プログラム可能であってもよく、且つ、データ記憶システム、少なくとも１つの入力装置、および少なくとも１つの出力装置、からデータおよび命令を受け取るように、およびそれへデータおよび命令を送るように、つながれていてもよい。望むのであれば、アプリケーションプログラムは、ハイレベルの手続き型またはオブジェクト指向のプログラミング言語で、または、アセンブリ言語もしくは機械語で実行されてもよい。いずれの場合も、言語は、コンパイラ型言語またはインタープリタ型言語であってもよい。プログラムは、完全なインストールプログラムまたはアップデートプログラムであってもよい。システムへのプログラムの適用は、いずれの場合も、本処理を行うための命令をもたらす。
【００５２】
ここで、本処理の例について述べる。
【００５３】
本例の処理は、フロアプラン生成に関する。特別には、それはセマンティックセグメンテーションを介したフロアプラン分析に関係する。画像の形式でフロアプランが与えられたときに、すべての記号が同時に認識され、ピクセルワイズレベルに置かれてもよい。本例の処理は、３Ｄ建造物生成および設計作成のような多くのアプリケーションにおいて有用かもしれない。本例の処理は、新しいフロアプラン生成フレームワークを形成する。本例の処理の特徴は、以下のものを含んでもよい。
【００５４】
・いくつかのステップを含むアプローチに存在する誤差累積効果を回避することを可能にするエンド・トゥー・エンドアプローチ（ｅｎｄ−ｔｏ−ｅｎｄ  ａｐｐｒｏａｃｈ）。
【００５５】
・記号タイプからの独立性。他の記号タイプは容易に統合できる。特別な制約は必要とされない。
【００５６】
・深層畳み込みニューラルネットワークに基づく最初のアプローチ。
【００５７】
本例の処理は３Ｄ建造物モデルを生成する分野に属し、それにおいて、２Ｄフロアプラン画像が与えられたときに、本例の処理は、利用可能な３Ｄモデル（「３Ｄフロアプラン」とも称される）を得るために、壁（外部／内部）、開口部（ドア／窓）、および、空間のような、構造の建造物要素を再構成してもよい。
【００５８】
２Ｄフロアプラン画像入力からの３Ｄ建造物モデルの生成は、以下のものに基づいてもよい。
【００５９】
１．２Ｄフロアプランのそれぞれの構造要素をセマンティック的に（ｓｅｍａｎｔｉｃａｌｌｙ）認識すること。これは、入力中の２Ｄフロアプランのピクセルのそれぞれへセマンティック情報（セマンティックの例は、壁、ドア、および／または、窓を含む）を割り当てるセマンティックセグメンテーションによって実行されてもよい。
【００６０】
２．先のステップによって供給された結果に基づいて３Ｄフロアプランを生成すること。
【００６１】
利用可能なデータ入力のいくつかの特徴は、与えられた２Ｄフロアプラン画像の３Ｄ建造物モデルを生成するアプローチを、非常に難しいものにする。そのため、現在のシステムのほとんどは、普遍性に欠けるという共通の欠点を共有する。
【００６２】
２Ｄフロアプランは、多くの場合スキャンされてもよいし、手描きまたはコンピュータ生成されてもよい。フロアプランはさらに、様々なレベルの詳細を有してもよい。フロアプランについての最も広く流通している形式は、詳細な建設情報に欠ける。それにもかかわらず、フロアプランは、建造物の完全なレイアウトをなんとかカバーし、それは、ほとんどのアプリケーションに対してモデルを構築するのに充分かもしれない。これらのさほど詳細ではないフロアプランが手描きされるかコンピュータ生成されるかにかかわらず、それらは、異なる図形記号を使用するかもしれず、それは大きな欠点となる。もちろん、標準は存在しない。
【００６３】
図３および図４はそれぞれ、ドアおよび壁に対する共通のスタイルの例を示す。特定の標準に制約される代わりに、図面の目的（および設計者の美的な動機づけ）が、どの構成要素が示されてもよいか、および、それらがどのように見えてもよいか、を決定するかもしれない。これは、フロアプラン画像を分析し解釈する処理において大きな難題をもたらす（特に自動システムに対して）。図３〜図４は特に、フロアプランに対して、ドア記号（図３）および壁（図４）を描画するための異なる方法を示す。記号は、手描きまたはコンピュータにより生成することが可能である。異なる図形記号は、２Ｄスキャンされたフロアプランを３Ｄモデルに自動的に変換する処理に対して難題となる。
【００６４】
さらに、フロアプランは、構造要素だけではなく、テキストコンテンツ、寸法、スケール、引き出し線（すなわち、測定値またはテキストに導かれる線）を含んでもよい。図５は特に、一般的なスキャンされたフロアプランの例を示す。構造的なもの以外の異なる（図形またはテキストの）要素が表現されてもよい。
【００６５】
本例の処理の１つの目的は、２Ｄフロアプラン画像が与えられたときに３Ｄ建造物モデル生成に対する総括的なソリューションを提供する処理、すなわち、プランの構造的な２Ｄ要素のセマンティックおよび位相を同時に認識するソリューションを提供する処理であってもよい。それは、セマンティックセグメンテーション法（すなわち深層ニューラルネットワーク（Ｄｅｅｐ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）を使用する方法）の効率を向上させるフレームワークからなるものであってもよい。
【００６６】
ここで、本例の処理に含まれる異なる概念について述べる。
【００６７】
「セマンティックセグメンテーション」は、画像におけるそれぞれのピクセルの役割をセマンティック的に理解する処理（すなわち、セマンティック的に意味のある部分へ画像を分割する処理、および、それぞれの部分を所定のカテゴリのうちの１つに分類する処理）を試みる。それは、ピクセルワイズ分類と見なすことができ、その分類は、そのカテゴリメンバシップが知られている観察結果（またはインスタンス）を含むデータのトレーニング集合に基づいて、新しい観察結果がカテゴリのどの集合に属するかを特定する問題である。一例としては、与えられた画像中の背景から人を分ける処理、または人の身体をその異なる部分に分割する処理である。
【００６８】
「深層ニューラルネットワーク」（ＤＮＮ）は、ニューラルネットワークにおける学習のための技術の強力な集合であり（「Ｒｕｍｅｌｈａｒｔ  ｅｔ  ａｌ．  Ｌｅａｒｎｉｎｇ  ｉｎｔｅｒｎａｌ  ｒｅｐｒｅｓｅｎｔａｔｉｏｎｓ  ｂｙ  ｅｒｒｏｒ  ｂａｃｋｐｒｏｐａｇａｔｉｏｎ，  １９８６」の中で述べられている）、それは、コンピュータが観測データから学習することを可能にする、生体模倣型のプログラミングパラダイムである。ＤＮＮは、他の画像分類法（ＳＶＭ、ブースティング（Ｂｏｏｓｔｉｎｇ）、ランダムフォレストなど）において使用される、手作業で設計された低レベルの特徴（Ｚｅｒｎｉｋｅ  ｍｏｍｅｎｔｓの中で述べられている、ＨＯＧ、Ｂａｇ−ｏｆ−Ｗｏｒｄｓ、ＳＩＦＴなど）とは異なり、リッチな中間レベルの２Ｄ画像表現を学習する能力を与える。より具体的には、ＤＮＮは、生データに基づくエンド・トゥー・エンド学習に焦点をあてている。換言すれば、それらは、生の特徴から始まってラベルに終わるエンド・トゥー・エンド最適化を実行することによって、特徴エンジニアリングから、可能な最大の程度離れる。図６は、深層ニューラルネットワークを図示する。
【００６９】
「畳み込みニューラルネットワーク」（「ＬｅＣｕｎ  ｅｔ  ａｌ．  Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｔｗｏｒｋｓ  ｆｏｒ  Ｉｍａｇｅｓ，  Ｓｐｅｅｃｈ，  ａｎｄ  Ｔｉｍｅ−Ｓｅｒｉｅｓ」で述べられている）は、少なくとも１層が畳み込みフィルタを含む深層ニューラルネットワークの特別な場合である。それらのフィルタは、入力のどこにでも適用され、出力として特徴マップを与える。この特徴マップは、入力におけるいくつかの特定のパターンがフィルタによって認識される活性化のエリアを示す。いくつかの畳み込み層を積層する場合、深層学習の利点は、ディスクリプタ（ｄｅｓｃｒｉｐｔｏｒ）によって得られる基本的特徴よりもより洗練された、非常に複雑であるが強力な特徴を抽出する方法を提供することである。全層畳み込みニューラルネットワークは、学習済みのすべての層が畳み込みである、畳み込みニューラルネットワークである。全層畳み込みネットワークに基づくＤＮＮは、任意のサイズの入力をとる能力、および、アップサンプリング層（ｕｐｓａｍｐｌｉｎｇ  ｌａｙｅｒ）を使用して相応にサイズ化された出力を生成する能力、を与える。図７は、畳み込みフィルタの一例を示す。
【００７０】
「アップサンプリング」は、画像（あるいは特徴マップ）を、より高い解像度にアップサンプリングする任意のテクニックを指す。最も簡単な方法は、再サンプリングおよび補間を使用することである。これは、入力画像をとり、それを所望のサイズにスケーリングしなおし、次に、バイリニア補間のような補間方法を使用してそれぞれのポイントにおいてピクセル値を計算する。
【００７１】
「アンプーリング（ｕｎｐｏｏｌｉｎｇ）」は、畳み込みニューラルネットワークの環境において、アップサンプリングに一般的に使用される。図８は、アンプーリングに基づくアップサンプリングの一例を示し、ここで、最大プーリングのインデックス（ｍａｘ−ｐｏｏｌｉｎｇ  ｉｎｄｅｘ）は、入力特徴マップをアップサンプリングするために使用される。
【００７２】
「エンコーダ・デコーダ・ネットワーク」は、特定のタイプのＤＮＮを意味する。いくつかのＤＮＮは、エンコーダ・デコーダ・ネットワークと見なすことができ、その場合、エンコーダは、異なる（通常はより低次元の、圧縮された）特徴表現へ入力データをマッピングし、デコーダは、入力データ空間へ特徴表現をマッピングし戻す。全層畳み込みネットワークは、全層畳み込みエンコーダ、およびそれに続く、アップサンプリング層およびピクセルワイズ分類器（ｐｉｘｅｌ−ｗｉｓｅ  ｃｌａｓｓｉｆｉｅｒ）を含むデコーダと見なすことができる。図９は、セマンティックセグメンテーション用の畳み込みエンコーダ・デコーダ・ネットワークの一例を示す。
【００７３】
ここで、図１１を参照して、本例の処理へのこれらの概念の統合について述べる。
【００７４】
本例の処理は、２つのステージに分解されてもよい。「オフライン」ステージと示される第１のステージは、深層ニューラルネットワークに極度に依存してもよく、セグメンテーションモデルが学習（これは一度だけ実行されてもよい）されるステージに対応してもよい。オフラインという語句は、このステージが本方法のユーザにとって自明であり、大規模な計算の要求があっても、計算を行う時間を得ることができるという事実を示す。
【００７５】
セグメンテーションモデルを学習するために、本例の処理は、以下の入力を使用してもよい。
【００７６】
１．２Ｄフロアプラン画像とそれらの対応するピクセルワイズラベル画像とのペアのトレーニングデータセット。テスト実行において、４つのカテゴリラベル、すなわち「壁」、「ドア」、「窓」および「背景」が考慮され、それぞれのトレーニング画像の各ピクセルが、これらのラベルのうちの１つに関連づけらる。図１０は、壁１０２、窓１０４、ドア１０６、および背景１０８を備える、画像のそのようなトレーニングペアを示す。
【００７７】
２．（トレーニングされていない）エンコーダ・デコーダ・ネットワーク。テストされた実行において、２つの異なる最新のネットワークが考慮されたもの。
（ｉ）  ＡｌｅｘＮｅｔベースの全層畳み込みネットワーク（Ｊ．  Ｌｏｎｇ  ｅｔ  ａｌ．  Ｆｕｌｌｙ  Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｔｗｏｒｋｓ  ｆｏｒ  Ｓｅｍａｎｔｉｃ  Ｓｅｇｍｅｎｔａｔｉｏｎ  ２０１５）。これは、８つの畳み込み層（プーリング層を備える）を含む全層畳み込みエンコーダと、それに続く、アップサンプリング層およびピクセルワイズ分類器（ソフトマックス分類器）を含むデコーダとからなる。
（ii）  ＳｅｇＮｅｔネットワーク（Ｖ．  Ｂａｄｒｉｎａｒａｙａｎａｎ  ｅｔ  ａｌ．  ＳｅｇＮｅｔ：  Ａ  Ｄｅｅｐ  Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｅｎｃｏｄｅｒ−Ｄｅｃｏｄｅｒ  Ａｒｃｈｉｔｅｃｔｕｒｅ  ｆｏｒ  Ｉｍａｇｅ  Ｓｅｇｍｅｎｔａｔｉｏｎ  ２０１６）。これは、１３の畳み込み層を含む全層畳み込みエンコーダ（プーリング層を備える）と、同様に１３の畳み込み層を含む全層畳み込みデコーダ（図８を参照して記述されたようなアップサンプリング層を備える）とからなる。このネットワークのアーキテクチャは、図９の例と、位相的に同等である。
【００７８】
ＳｅｇＮｅｔネットワークは、ＡｌｅｘＮｅｔベースの全層畳み込みネットワークよりも、うまく機能する。
【００７９】
「オンライン」ステージとして示される第２のステージは、見えていない２Ｄフロアプラン画像をセグメンテーションして対応する３Ｄ建造物を生成する処理の間にリアルタイムに実行される処理ステップのすべてを含む。
【００８０】
なお、３Ｄモデルを生成する前に結果を検証するために、セマンティックセグメンテーション処理の最後に、ユーザの介在を加えてもよい。
【００８１】
図１１は、オフラインおよびオンラインステージの技術的なワークフローを図示する。
【００８２】
次に、本例の処理は、先のセマンティックセグメンテーションアルゴリズムによって与えられたセマンティックセグメンテーションの結果を向上させるために、いくつかの方法を適用してもよい。これは、先に述べた論文［１］（アルゴリズムは、２Ｄフロアプランに対して強い幾何学的な制約を考慮に入れる）の中で与えられたソリューションとは対照的である。例えば、この先行技術において、ドアや壁部の幅は局所的に常に同じである。偽陽性を除去するため、ノイズ除去技術が適用されてもよい。
【００８３】
最後に、供給されたセマンティックマスクは、３Ｄ再構成ＡＰＩによって要求される位相情報を抽出するために使用されてもよい。実際には、得られる３Ｄフロアプランの利用をさらに促進するために、例えば“Ｂｕｉｌｄｉｎｇ  Ｓｍａｒｔ  ＩＦＣ  ｆｏｒｍａｔ”（先に述べた論文［３］において使用された）のような、適用可能な標準にあわせることは有用かもしれない。
【００８４】
ここで、本例の処理の特殊性について、以下の学術論文を参照して、より詳細に述べる。
【００８５】
［Ａ］“ＩｍａｇｅＮｅｔ  Ｃｌａｓｓｉｆｉｃａｔｉｏｎ  ｗｉｔｈ  Ｄｅｅｐ  Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋｓ”，  Ａｌｅｘ  Ｋｒｉｚｈｅｖｓｋｙ  ＆  Ａｌ
［Ｂ］“Ｖｅｒｙ  Ｄｅｅｐ  Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｔｗｏｒｋｓ  Ｆｏｒ  Ｌａｒｇｅ−Ｓｃａｌｅ  Ｉｍａｇｅ  Ｒｅｃｏｇｎｉｔｉｏｎ”，  Ｋａｒｅｎ  Ｓｉｍｏｎｙａｎ  ＆  Ａｎｄｒｅｗ  Ｚｉｓｓｅｒｍａｎ
［Ｃ］“Ｄｅｅｐ  Ｒｅｓｉｄｕａｌ  Ｌｅａｒｎｉｎｇ  ｆｏｒ  Ｉｍａｇｅ  Ｒｅｃｏｇｎｉｔｉｏｎ”，  Ｋａｉｍｉｎｇ  Ｈｅ  ＆  Ａｌ
［Ｄ］“Ｆｕｌｌｙ  ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｎｅｔｗｏｒｋｓ  ｆｏｒ  ｓｅｍａｎｔｉｃ  ｓｅｇｍｅｎｔａｔｉｏｎ，”  Ｊ．  Ｌｏｎｇ，  Ｅ．  Ｓｈｅｌｈａｍｅｒ，  ａｎｄ  Ｔ．  Ｄａｒｒｅｌｌ，  ｉｎ  ＣＶＰＲ  ２０１５
［Ｅ］  “ＳｅｇＮｅｔ：  Ａ  Ｄｅｅｐ  Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｅｎｃｏｄｅｒ−Ｄｅｃｏｄｅｒ  Ａｒｃｈｉｔｅｃｔｕｒｅ  ｆｏｒ  Ｉｍａｇｅ  Ｓｅｇｍｅｎｔａｔｉｏｎ”，  Ｖｉｊａｙ  Ｂａｄｒｉｎａｒａｙａｎａｎ，  Ａｌｅｘ  Ｋｅｎｄａｌｌ，  Ｒｏｂｅｒｔｏ  Ｃｉｐｏｌｌａ，  ２０１５
［Ｆ］“Ｐｙｒａｍｉｄ  Ｓｃｅｎｅ  Ｐａｒｓｉｎｇ  Ｎｅｔｗｏｒｋ”，  Ｈｅｎｇｓｈｕａｎｇ  Ｚｈａｏ，  Ｊｉａｎｐｉｎｇ  Ｓｈｉ，  Ｘｉａｏｊｕａｎ  Ｑｉ，  Ｘｉａｏｇａｎｇ  Ｗａｎｇ，  Ｊｉａｙａ  Ｊｉａ，  ＣＶＰＲ  ２０１７
［Ｇ］  “ＲｅｆｉｎｅＮｅｔ：  Ｍｕｌｔｉ−Ｐａｔｈ  Ｒｅｆｉｎｅｍｅｎｔ  Ｎｅｔｗｏｒｋｓ  ｆｏｒ  Ｈｉｇｈ−Ｒｅｓｏｌｕｔｉｏｎ  Ｓｅｍａｎｔｉｃ  Ｓｅｇｍｅｎｔａｔｉｏｎ”，  Ｇｕｏｓｈｅｎｇ  Ｌｉｎ，  Ａｎｔｏｎ  Ｍｉｌａｎ，  Ｃｈｕｎｈｕａ  Ｓｈｅｎ，  Ｉａｎ  Ｒｅｉｄ，  ２０１６
［Ｈ］“Ｆｕｌｌｙ  Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｔｗｏｒｋｓ  ｆｏｒ  Ｓｅｍａｎｔｉｃ  Ｓｅｇｍｅｎｔａｔｉｏｎ”，  Ｊｏｎａｔｈａｎ  Ｌｏｎｇ，  Ｅｖａｎ  Ｓｈｅｌｈａｍｅｒ，  Ｔｒｅｖｏｒ  Ｄａｒｒｅｌｌ，  ＣＶＰＲ  ２０１５
［Ｉ］“ＣＶＣ−ＦＰ  ａｎｄ  ＳＧＴ：  ａ  ｎｅｗ  ｄａｔａｂａｓｅ  ｆｏｒ  ｓｔｒｕｃｔｕｒａｌ  ｆｌｏｏｒ  ｐｌａｎ  ａｎａｌｙｓｉｓ  ａｎｄ  ｉｔｓ  ｇｒｏｕｎｄｔｒｕｔｈｉｎｇ  ｔｏｏｌ”，  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｊｏｕｒｎａｌ  ｏｎ  Ｄｏｃｕｍｅｎｔ  Ａｎａｌｙｓｉｓ  ａｎｄ  Ｒｅｃｏｇｎｉｔｉｏｎ  （ＩＪＤＡＲ），  Ｌｌｕｉｓ−Ｐｅｒｅ  ｄｅ  ｌａｓ  Ｈｅｒａｓ，  Ｏｒｉｏｌ  Ｒａｍｏｓ  Ｔｅｒｒａｄｅｓ，  Ｓｅｒｇｉ  Ｒｏｂｌｅｓ，  Ｇｅｍｍａ  Ｓａｎｃｈｅｚ
ここで、学習Ｓ２０の実行の例について述べる。
【００８６】
このステップは主に、２Ｄフロアプラン画像を入力として入力画像のピクセルワイズ分類であるセマンティックセグメンテーションマスクを返す関数を学習することであってもよい。クラスは、予め定められてもよい。このセマンティックセグメンテーションマスクは、入力画像と同じ大きさ（ｄｉｍｅｎｓｉｏｎｓ）を備える画像であり、そのピクセルは、予め定められたクラスに対応するいくつかの値（例えば色）をとることができる。テストされた実行において、以下のクラス、すなわち、「壁」、「ドア」、「窓」および「背景」、が選ばれた。最後のクラスは、他のクラスのうちの１つに属さないすべてのピクセルについて記述した。
【００８７】
［学習関数の特徴づけ］
学習関数は、畳み込みニューラルネットワークとして実行されてもよい。関数は特に、畳み込みエンコーダ・デコーダ・ニューラルネットワークアーキテクチャを与えてもよい。換言すれば、ニューラルネットワークは、自然画像上でセマンティックセグメンテーションを行うために使用されるニューラルネットワークの一種であるエンコーダ・デコーダであってもよい。この種のニューラルネットワークは、自然画像中の連続性を比較的よく活用でき、従ってそのような情況において好結果をもたらすが、２Ｄフロアプランのようなスパース（ｓｐａｒｓｅ）な情報を含む画像では、演繹的には効率的ではない。しかしながら、テストは行われ、この種のニューラルネットワークが、本処理の２Ｄフロアプランの状況においてもうまく働くことを示した。
【００８８】
ニューラルネットワークを学習する処理は、以下の３つの主な要素を含んでもよい。
１．ニューラルアーキテクチャ：層の数、１層当たりのニューロンの数、ニューロンの種類。
２．最適化アルゴリズム：これは、アノテーションされた（ａｎｎｏｔａｔｅｄ）データセットおよび損失関数値に従ってニューラルネットワークのパラメータ／重みを更新するために使用される。
３．アノテーションされたデータセット。
【００８９】
ニューラルネットワークのニューラルアーキテクチャは、以下に述べる畳み込みエンコーダ・デコーダ・アーキテクチャであってもよい。
【００９０】
１．畳み込みエンコーダ：エンコーダネットワークは、フロアプラン画像を入力とする。それは、プーリング層がはさまれてもよい一連の畳み込み層を含む。通常、畳み込みエンコーダは、ＡｌｅｘＮｅｔ［Ａ］、ＶＧＧ１６［Ｂ］、ＲｅｓＮｅｔ［Ｃ］、または他のＣＮＮアーキテクチャのような、周知の畳み込みのアーキテクチャに対応してもよい。
【００９１】
２．畳み込みデコーダ：デコーダネットワークは、エンコーダネットワークの出力を入力とする。それは、その間にアップサンプリング層が挟まれる一連の畳み込み層を含んでもよい。最後の畳み込み層の出力は、入力フロアプラン画像と同じ大きさ（ｄｉｍｅｎｓｉｏｎｓ）を有してもよい。デコーダは、プーリング層をアップサンプリング層に置き換えることによる、エンコーダネットワークと対称なものであってもよい。しかしながら、デコーダネットワークは、あるいは、異なるアーキテクチャを有してもよい。遵守されてもよいただ１つの制約は、出力が、入力２Ｄフロアプラン画像のものと同じ大きさを有してもよい、ということである。
【００９２】
うまく動作するテストにおいて、［Ｅ］で規定されたＳｅｇＮｅｔアーキテクチャが使用された。［Ｈ］で規定されたＦＣＮ、［Ｆ］で規定されたＰＳＰＮｅｔ、または［Ｇ］で規定されたＲｅｆｉｎｅＮｅｔのような、他のニューラルアーキテクチャが使用されてもよい。
【００９３】
学習は、確率的勾配降下法を含んでもよい。任意に、確率的勾配降下法は、クロスエントロピー損失関数に基づいてもよい。換言すれば、最適化アルゴリズムは、確率的勾配降下法であってもよい。損失関数は、学習プロセス中に、ネットワークによって返されたセマンティックセグメンテーションマスクと、トレーニングデータセット中の２Ｄフロアプランに関係するグランドトゥルース（ｇｒｏｕｎｄ  ｔｒｕｔｈ）セマンティックセグメンテーションマスクとの間の誤差を計算してもよい。［Ｄ］で規定されたクロスエントロピー損失関数が、特にテストされた。
【００９４】
［データセットの特徴づけ］
トレーニングデータセットは、２Ｄフロアプラン画像の集合であってもよく、その画像のそれぞれは、ピクセルワイズのラベル付き画像（グランドトゥルース・セマンティックセグメンテーションマスクとも呼ばれる）に関係する。
【００９５】
学習関数の正確な結果を確保するトレーニングデータセットの特徴は、以下の通りであってもよい。
【００９６】
・充分なデータ：データセットは、５００、７５０または１０００を越える、異なる２Ｄフロアプラン画像を含んでもよい。
【００９７】
・関連データ：データセット中のフロアプランの多様性は、学習済み関数が処理することになるフロアプランに対応してもよい。特に、トレーニングデータセット内の記号（壁、窓、ドア）の多様性は、学習済み関数が処理することになるフロアプラン画像によって含まれるいくつかのものをカバーしてもよい。
【００９８】
データセットは、全体のデータセットの区分を形成する、３つのサブデータセットへ分割されてもよい。第１のサブデータセットは「トレーニングデータセット」と呼ばれ、関数を学習するために使用されるデータを含む。第２のサブデータセットは「バリデーションデータセット（ｖａｌｉｄａｔｉｏｎ  ｄａｔａｓｅｔ）」と呼ばれ、学習中に関数がその一時的正解率を計算することによってまだ改善しているかについてチェックするために使用されるデータを含む。第３のサブデータセットは「テストデータセット」と呼ばれ、ひとたび学習が行われると使用されるデータを含む。テストデータセットは、最終のセマンティックセグメンテーション正解率を評価するために使用されてもよい。トレーニングデータセットは、データセット全体の少なくとも８０％を含んでもよい。バリデーションデータセットおよびテストデータセットは、残りのデータの等分割であってもよい。
【００９９】
Ｓ１０において供給されるそのようなデータセットを構築する効率的な方法は、それぞれが各々の３Ｄモデルに関連づけられた２Ｄフロアプランの既存のデータベースを再使用することであってもよい。そのようなデータベースが利用可能な場合、データセットは、それぞれの２Ｄフロアプランに対して、各々の３Ｄモデルから各々のセマンティックセグメンテーションを決定することによって（３Ｄモデルがそれぞれのオブジェクトのクラスを供給するので）、容易に構成できる。
【０１００】
［セマンティックセグメンテーション正解率］
アノテーションされたデータセットにおけるセマンティックセグメンテーション正解率を評価するために、評価尺度が規定されてもよい。セマンティックセグメンテーションのタスクに対して、２つの評価尺度が使用されてもよい。
【０１０１】
１．平均正解率：これは、よく分類されたピクセルの平均百分率に相当する。
【０１０２】
２．平均ＩｏＵ（すなわち、Ｉｎｔｅｒｓｅｃｔｉｏｎ  ｏｖｅｒ  Ｕｎｉｏｎ）：これは、推定されたセグメンテーションとグランドトゥルースとの積集合（ｉｎｔｅｒｓｅｃｔｉｏｎ）をそれら両方の和集合（ｕｎｉｏｎ）によって除したものに相当する。
【０１０３】
テストは、８８０のフロアプラン画像を含むデータセットで行われた。このデータセットは、ミラーおよび回転（９０°、１８０°および２７０°）のような変換によって拡張されたオープンソースデータベース（［Ｉ］で与えられる）から生じる２Ｄフロアプラン画像に基づいて構築された。そのようなテストによって、０．８８の平均正解率および０．７８の平均ＩｏＵが得られた。一般的に、関数が０．８５より高い平均正解率、および／または、０．７５より高い平均ＩｏＵを与える場合、セマンティックセグメンテーションは特に正確かもしれない。次のステップが、学習済み関数の出力を入力とするため、セマンティックセグメンテーション正解率が適切かもしれない。経験的に、平均正解率が０．８５を上回り平均ＩｏＵが０．７５を上回ることを見出すことができ、そうでなければ、再構成された３Ｄフロアプランが誤りを含んでいるかもしれない。確かに、セマンティックセグメンテーションマスクは疎（スパース）である。
【０１０４】
下記は、アプリケーションＳ３の例を述べ、特に、プリミティブ抽出の実行の詳細を提供する。
【０１０５】
以下に述べる。一例において、Ｓ５０において各々のクラスのそれぞれに対してマスクを決定する処理は、各々のクラスに対応するセマンティックセグメンテーションのすべてのピクセルでの（マスクの）初期化、マスクのスケルトン化、および、線分の数を減らすためにマスク中の線分（ｌｉｎｅ  ｓｅｇｍｅｎｔ）（または単に「線分（ｓｅｇｍｅｎｔ）」）を併合する処理、を含むサブ処理を含む。次に、本処理の残りの部分が、サブ処理によって出力された結果に基づいて実行されてもよい。実行の例では、線分の併合において、第１の所定の共線性閾値を上回る線分と所定の距離閾値を下回る線分とのペアが、以下で述べるように、併合されてもよい。そのようなサブ処理は、組織化されていないデータを、より統合的なフォーマットに縮小することを可能にする。
【０１０６】
他の例において、本方法は、壁クラスに関するマスク中の線分の連結、および／または、窓クラスに関するマスクの線分、および／または、ドアクラスに関するマスクの線分の、それぞれ壁マスクの各々の線分上への投影、を含んでもよい。実行の一例において、それぞれの投影される線分は、第２の所定の共線性閾値（第１の所定の共線性閾値と等しくてもよい）を越える、投影される線分との共線性を与えるものの中で壁マスクに最も近い線分に投影される。これは、スケルトン化がデータの損失に結びつくかもしれないとしても、結果のリアリズム（すなわち、建築の視点から見て受け入れ可能な意味）を維持することを可能にする。特に、スケルトン化によって誤差（例えば、窓またはドアとその支持壁との間のギャップ）が持ち込まれたとしても、そのような誤差は、本例によって修正される。
【０１０７】
一例において、第１および／または第２の所定の共線性閾値は、２つの線分間の（無配向の）角度の閾値として規定されてもよい。この閾値は、トレーニングデータセット中の２つの隣接する壁によって形成されるすべての角度の分布の関数として規定されてもよい。共線性閾値は、この分布によって規定されてもよい。例えば、２つの隣接する壁によって形成される角度の５％未満のような角度の値は、この値よりも低い。前記値が高い（例えば４５°より高い）場合、それを３０°に低下できる。実際上、３０°のオーダーの値は、好結果をもたらす。
【０１０８】
一例において、所定の距離閾値は、窓またはドアのような他のオブジェクトインスタンスの関数として規定されてもよい。それは、偽陽性が実質的に生じないように、ドアまたは窓の平均の幅の３０％未満に定められてもよい。この閾値未満である、２つの実質的に同一直線上の壁の間のほとんどの間隔は、線抽出アルゴリズムに起因する誤差であるかもしれない。従って、２つの壁は、広げられ併合されてもよい。
【０１０９】
アプリケーションＳ３は、畳み込みエンコーダ・デコーダ・ニューラルネットワークによって返されたセマンティックセグメンテーションマスクを入力としてもよく、３Ｄフロアプラン再構成ＡＰＩによって必要とされるプリミティブの集合を返してもよい。
【０１１０】
２Ｄフロアプランのセマンティックセグメンテーションマスクは線画画像であってもよい。それぞれの線は、様々な太さを有することができる。前景ピクセルは、本処理が特定しようとするオブジェクトクラスに対応する異なる値（例えば色）を有することができる。
【０１１１】
セマンティックセグメンテーションマスクは、幾何学的なプリミティブがそれから容易に構築されてもよいリファインされたマスク（ｒｅｆｉｎｅｄ  ｍａｓｋ）を得るために、以下の例のステップによって処理されてもよい。
【０１１２】
１．「クラス固有マスク」（ｃｌａｓｓ−ｓｐｅｃｉｆｉｃ  ｍａｓｋ）：最初に、マスクは、固有オブジェクトクラスに関係するピクセルをそれぞれが含むいくつかのマスクへ分割される。一例において、本処理は、壁用の１つのマスク、窓用の１つのマスク、およびドア用の１つのマスクを得てもよい。
【０１１３】
２．「マスクスケルトン化」：次に、スケルトン化処理が、それぞれのクラス固有のマスクに適用される。この処理は、すべての線を細くすることを目指す。２つの古典的アプローチ、すなわちモフォロジカルアプローチおよび距離変換アプローチが、線画のスケルトンを行うために使用されてもよい。テストされた実行は、例えば「“Ｍｏｒｐｈｏｌｏｇｉｃａｌ  Ｓｋｅｌｅｔｏｎ  Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ  ａｎｄ  Ｃｏｄｉｎｇ  ｏｆ  Ｂｉｎａｒｙ  Ｉｍａｇｅｓ”，  ＩＥＥＥ  （Ｏｃｔｏｂｅｒ  １９８６），  Ｐｅｔｒｏｓ  Ａ．  Ｍａｒａｇｏｓ，  Ｒｏｎａｌｄ  Ｗ．  Ｓｃｈａｆｅｒ．」という論文に記載されたような、モフォロジカルスケルトンアプローチを使用した。
【０１１４】
３．「線併合」：それぞれのクラス固有のスケルトン化マスクは、できるだけ少数の線分によるスケルトン化マスクを得るために併合され得る、多数の小さな線分からなる。開発されたアルゴリズムは以下の通りである。
【０１１５】
ａ．線分のすべてのペアに対して、それらが実質的に同一直線上にあり且つ２つの線分間の距離が所定のクラス固有の閾値未満である場合には、２つの線分は、２つの線分の併合に対応する単一の線分に置き換えられる。
【０１１６】
ｂ．線分のペアが先のステップａにおいて併合されている間は、ステップａに戻る。そうでない場合、線分の最終の集合を返す。
【０１１７】
４．「線結合」：このステップは、壁固有マスクにのみ適用される。ステップ３によって返された、処理されたマスクは、ストレート壁に対応する線分の集合を含む。このステップは主に、２つのストレート壁間に連結があるかどうかを検知する処理、および、対応する線分をそれらの末端の結合によって修正する処理である。開発されたアルゴリズムは以下の通りである。
【０１１８】
ａ．線分のすべてのペアに対して、それらが同一直線上になく且つ２つの線分間の距離が所定の閾値未満である場合には、２つの線分は、それらの終点の１つが、２つの線分を含む２つの線の交差に対応する点とオーバーラップするように、修正される。
【０１１９】
ｂ．線分のペアが先のａ．ステップにおいて修正されている間は、ａ．ステップに戻る。そうでなければ、線分の最終の集合を返す。
【０１２０】
５．「クラス固有マスクの併合およびリファインメント」（ｒｅｆｉｎｅｍｅｎｔ）：この最終ステップは主に、窓およびドアの局所化をリファインする処理である。ステップ３によって返された、対応する窓固有のおよびドア固有のマスクにおいて、それぞれの線は、窓（各々ドア）に対応する。最初に、すべてのクラス固有マスクが付加される。窓およびドアに対応する線分は壁の線分と正しく同一直線上にないかもしれないため、本処理は、それぞれの窓およびドアの線分を、同じ方向を有する最も近い壁の線へのそれらの投影によって置き換えてもよい。
【０１２１】
次のステップは主に、壁プリミティブ、ドアプリミティブおよび窓プリミティブのような３Ｄ再構成ＡＰＩによって必要とされる３Ｄプリミティブを構成する処理であってもよい。例えば、壁プリミティブは、以下の属性、すなわち２つの終点の座標、太さ、高さ、隣接する壁のリファレンス、によって規定されてもよい。リファインされたマスクのおかげで、壁、窓およびドアプリミティブは、容易に構築されるかもしれない。確かに、終点の座標、隣接する壁のリファレンス、窓（各々ドア）が属する壁のリファレンスといった情報は、リファインされたマスクから容易に抽出できる。壁／窓／ドアの高さまたは幅といった他の情報は、予め規定されてもよいし、ユーザによって供給されてもよい。
【０１２２】
図１２〜図１９は、テストされた学習Ｓ１によって学習済み関数に基づくＳ２〜Ｓ３の一例を図示する。
【０１２３】
図１２は、Ｓ３０において供給された入力２Ｄフロアプランを示す。
【０１２４】
図１３は、壁１２２、窓１２４およびドア１２６を備える、Ｓ４０において決定された、２Ｄフロアプランのセマンティックセグメンテーションを示す。
【０１２５】
図１４〜図１６は、Ｓ５０および壁クラスに関するマスクの処理を図示する。図１４は、壁クラスに関するマスクの画像を示す。図１５は、「線分」タイプの幾何学的プリミティブの抽出を示す。図１６は、壁の併合および連結ステップの出力を示す。減少した数の壁が得られることが分かる。
【０１２６】
図１７は、３つのマスクの併合を示す。
【０１２７】
図１８は、リファインメントを示し、それは、Ｓ６０において２Ｄモデルを生成することを可能にする。
【０１２８】
図１９は、２Ｄモデルのそれぞれの幾何学的プリミティブに単純に高さを加えることによる、Ｓ７０における３Ｄモデルの決定を示す。図１２の入力２Ｄフロアプランに対応する３Ｄモデルを得ることができることが分かる。
【図１】
2019121386.tif 000003
【図２】
2019121386.tif 000004
【図３】
2019121386.tif 000005
【図４】
2019121386.tif 000006
【図５】
2019121386.tif 000007
【図６】
2019121386.tif 000008
【図７】
2019121386.tif 000009
【図８】
2019121386.tif 000010
【図９】
2019121386.tif 000011
【図１０】
2019121386.tif 000012
【図１１】
2019121386.tif 000013
【図１２】
2019121386.tif 000014
【図１３】
2019121386.tif 000015
【図１４】
2019121386.tif 000016
【図１５】
2019121386.tif 000017
【図１６】
2019121386.tif 000018
【図１７】
2019121386.tif 000019
【図１８】
2019121386.tif 000020
【図１９】
2019121386.tif 000021
【外国語明細書】
2019121386.tif 000022
2019121386.tif 000023
2019121386.tif 000024
2019121386.tif 000025
2019121386.tif 000026
2019121386.tif 000027
2019121386.tif 000028
2019121386.tif 000029
2019121386.tif 000030
2019121386.tif 000031
2019121386.tif 000032
2019121386.tif 000033
2019121386.tif 000034
2019121386.tif 000035
2019121386.tif 000036
2019121386.tif 000037
2019121386.tif 000038
2019121386.tif 000039
2019121386.tif 000040
2019121386.tif 000041
2019121386.tif 000042
2019121386.tif 000043
2019121386.tif 000044
2019121386.tif 000045
2019121386.tif 000046
2019121386.tif 000047
2019121386.tif 000048
2019121386.tif 000049
2019121386.tif 000050
2019121386.tif 000051
【図１】
2019121386.tif 000052
【図２】
2019121386.tif 000053
【図３】
2019121386.tif 000054
【図４】
2019121386.tif 000055
【図５】
2019121386.tif 000056
【図６】
2019121386.tif 000057
【図７】
2019121386.tif 000058
【図８】
2019121386.tif 000059
【図９】
2019121386.tif 000060
【図１０】
2019121386.tif 000061
【図１１】
2019121386.tif 000062
【図１２】
2019121386.tif 000063
【図１３】
2019121386.tif 000064
【図１４】
2019121386.tif 000065
【図１５】
2019121386.tif 000066
【図１６】
2019121386.tif 000067
【図１７】
2019121386.tif 000068
【図１８】
2019121386.tif 000069
【図１９】
2019121386.tif 000070