(57)【要約】【課題】画像を効率よく正確にセグメント化するための新規な装置と方法を提供する。【解決手段】改良されたコンピュータビジョン画像処理及び画像セグメンテーション及び認識のためのシステムと方法を提供する。当該システムと方法は、改良された画像セグメンテーション及び認識につき、コスト関数によるアプローチを採用する。具体的には、グローバルコスト関数が定義され、該グローバルコスト関数が最小化される。このグローバルコスト関数は、対象入力画像に対する２種類の処理技術により決定される２つのデータパイプライン処理が考慮される。制約は、モデル全体にわたって利用され、データパイプライン間でのデータの一貫性を保証するために利用される。該システムと方法は、間取図画像等の文字・数字データを含む低画質画像を処理するために有用である。【選択図】図３
2019082979.tif 000002
【特許請求の範囲】
【請求項１】
互いに通信状態にあるプロセッサ、メモリ、及びディスプレイを含む、特別にプログラムされた装置を使用し、間取図を決定する方法であって、
第１の間取図画像を前記装置が取得し、
前記間取図画像のセマンティックセグメンテーションデータを取得し、
前記間取図画像の光学文字認識（ＯＣＲ）データを取得し、
前記装置を使用し、部屋のサイズに関し、前記ＯＣＲデータの結果を前記セマンティックセグメンテーションデータと比較し、
比較結果に基づいて、第２の間取図画像を出力する、
方法。
【請求項２】
前記セマンティックセグメンテーションデータは、前記間取図画像を解析するための畳み込みニューラルネットワークを使用することにより取得される、
請求項１に記載の方法。
【請求項３】
前記ＯＣＲデータは、部屋のサイズに関連している数値である、
請求項１に記載の方法。
【請求項４】
前記ＯＣＲデータの出力は、確率的セグメンテーションデータに従って、各部屋に関連付けられる、
請求項１に記載の方法。
【請求項５】
前記関連付けられたＯＣＲデータを有する各部屋は、前記第１の間取図画像における他の部屋の推測に使用される、
請求項４に記載の方法。
【請求項６】
前記セマンティックセグメンテーションデータは、複数のセグメンテーション仮説を含む、
請求項５に記載の方法。
【請求項７】
コスト関数は、各セグメンテーション仮説のコストを決定するために使用される、
請求項６に記載の方法。
【請求項８】
前記コスト関数は、各セグメンテーション仮説の相対的コストを計算し、最小コストを有する前記セグメンテーション仮説を出力する、
請求項７に記載の方法。
【請求項９】
前記ＯＣＲデータは、部屋のサイズに関連づけられたユニットである、
請求項１に記載の方法。
【請求項１０】
前記コスト関数は、
【数７】
2019082979.tif 000009
であり、
セグメンテーションＳにおける各部屋は、ｒｏｏｍｒ（ｒ＝１…Ｒ）であり、仮説のリストは、１つのＯＣＲ結果からの推定サイズであるｓｉｚｅｒ，１，…，ｓｉｚｅｒ，Ｍ，であり、項（｜ｍａｘｉ,ｊ｜＊｜ｓｉｚｅｒ，ｉ−ｓｉｚｅｒ，ｊ｜）は部屋サイズの規格化に使用され、項（｜ｍａｘｉ,ｊ｜＊｜ｓｉｚｅｒ，ｉ−ｓｉｚｅｒ，ｊ｜）は部屋サイズにおける絶対値の相違の決定に使用される、
請求項８に記載の方法。
【請求項１１】
互いに通信状態にあるプロセッサ、メモリ、及びディスプレイを含む、間取図決定装置であって、
第１の間取図画像を取得し、
前記第１の間取図画像のセマンティックセグメンテーションデータを取得し、
前記第１の間取図画像の光学文字認識（ＯＣＲ）データを取得し、
部屋のアクセシビリティに関し、前記ＯＣＲデータの結果と前記セマンティックセグメンテーションデータとを比較し、
比較結果に基づいて、第２の間取図画像を出力する、
ようにプログラムされた間取図決定装置。
【請求項１２】
前記第１の間取図画像の画素のスケールを計算するように構成された、
請求項１１に記載の間取図決定装置。
【請求項１３】
前記第１の間取図画像における２つの部屋の間の通路の幅を計算するように構成された、
請求項１２に記載の間取図決定装置。
【請求項１４】
全ての部屋の組み合わせの中で最小の幅を、２つの部屋の間の通路の幅として決定するように構成された、
請求項１３に記載の間取図決定装置。
【請求項１５】
前記ＯＣＲデータは、部屋のサイズである、  請求項１１に記載の間取図決定装置。
【請求項１６】
画素のスケールは、前記部屋のサイズを前記部屋における画素数で割ることによって計算される、
請求項１５に記載の間取図決定装置。
【請求項１７】
前記画素のスケールは、前記最小の幅を計算するために使用される、
請求項１５に記載の間取図決定装置。
【請求項１８】
前記第２の間取図画像は、コスト関数の最小コストに基づいて出力される、
請求項１７に記載の間取図決定装置。
【請求項１９】
互いに通信状態にあるプロセッサ、メモリ、及びディスプレイを含む、特別にプログラムされた装置を使用し、間取図を決定する方法であって、
第１の間取図画像を前記装置に取得させ、
前記第１の間取図画像のセマンティックセグメンテーションデータを取得し、
前記第１の間取図画像の光学文字認識（ＯＣＲ）データを取得し、
前記装置を使用し、部屋アクセシビリティに関し、前記ＯＣＲデータと前記セマンティックセグメンテーションデータとを比較し、
前記装置を使用し、部屋サイズに関し、前記ＯＣＲデータと前記セマンティックセグメンテーションデータと比較し、
比較結果に基づいて、第２の間取図画像を出力する、
方法。
【請求項２０】
前記第２の間取図画像は、部屋サイズコストと部屋アクセシビリティコストが合成された最小のコストに基づいて、出力される、
請求項１９に記載の方法。
【発明の詳細な説明】
【背景技術】
【０００１】
画像認識とコンピュータビジョンは、大学が人工知能の開発を開始した１９６０年代には既に存在していた。従前、画像認識を行おうとする際には、視点の変化、スケーリング、方向、変形、オクルージョン、照明条件、背景のノイズ、クラス内変動、オブジェクトの検出などといった課題があった。これらの画像認識についての課題に鑑み過去５０年に渡って改良と発達がなされてきたが、現在の方法でも、画像に含まれるオブジェクトを効率的かつ正確に特定するには、依然困難が存在する。
【０００２】
図１は、コンピュータビジョンによる認識が非常に困難な画像の例である。図１は、典型的な間取図画像２を示す。図からわかるように、様々な大きさの部屋空間が種々示されている。回転式ドアとスライド式クローゼットドアの両方が描かれており、器具や備品を表す典型的な記号が示されている。実際にありうることであるが、本例においても面積の大きさが様々な測定単位で示される。エリア１０は、従来の日本式測定単位である「ｊ」又は「畳」で記述される一方、区域１２は「ｍ２」若しくは「平方メートル」の測定単位で記述される。
【０００３】
間取図画像２は、内外壁８とドア６を示している。更に、間取図画像２は、寝室１０、バルコニー１２、及びリビングルーム１４をも示している。画像認識及びコンピュータビジョン処理が、多量のコンピュータ処理資源を必要とすることは理解される。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述したコンピュータビジョンの問題に鑑み、発明者は、効率的かつ正確に、画像をセグメント化するための新規な装置と方法を作り上げた。発明者は、入力画像を受け取り、より効率的かつ正確に画像へのセマンティックセグメンテーションを行える、改良された畳み込みニューラルネットワークのシステム（以下、「ＣＮＮシステム」又は「ＣＮＮ」）及び方法を本明細書において開示する。開示されるＣＮＮシステムを適用可能な応用例の１つに、効率的かつ正確に、間取図画像をセグメント化することがある。
【０００５】
コンピュータビジョンの分野においては、一般的に、画像セグメンテーションは、処理を向上させるために、入力画像の画素が特定及び分類される分割プロセスである。典型的には、画像セグメンテーションプロセスは、同じラベルを有する画素が特定の共通する性質を有するように全ての画像画素に割り当てられる「ラベル」というセマンティックな分類をもたらす。
【０００６】
コンピュータビジョンの分野では、間取図画像のセグメンテーションと間取図画像の認識（例えば、部屋の特徴の検出）は、活発な分野である。間取図画像は、建造物のレイアウトについて一般的な空間的理解を提供するために、不動産やその他の分野においてよく使用される。典型的には、間取図画像は、不動産の広告に使用されることがあり、画質が低いことがある。しかしながら、これらの間取図画像から自動的にデータを処理して抽出する能力は、種々の目的のために要求される。
【０００７】
今日に至るまで、間取図画像の特徴を特定／分析に係る分野では、間取図画像の高解像度スキャンをする処理ことが重要とされてきた。一般的に、これらの種類プの画像の分析ための従来の試みは、画像の明度に閾値処理をすることによる２値化に依存してきた。画像の２値化とは、間取図画像の壁その他の特徴を、１又は０で特定することを試みる技術である。通常、１は、壁などの物質的な特徴を表し、「０」は、部屋の内部などのオープンスペースを表す。
【０００８】
この画像２値化によるアプローチは、標準的な間取の特徴及びデザインを有する間取図の超高解像度画像に対しては、ある程度の成功を収めていた。しかし、間取図特徴の表記法と間取図画像の画質の大きなバラつきのゆえに、全体として満足のいく結果は得られていなかった。間取図特徴の表記法の上記バラつきに加え、多くの場合、画像が古くて低解像度なために、画像２値化の従来の方法は、間取図画像の特徴の正確な分類に失敗してきた。
【０００９】
更に、間取図画像データの２次元・３次元間の双方向の変換が試みられてきた。こういった画像変換のための技術には、画像２値化技術、構造とテキストの分離技術、及びシンボルの認識／ベクトル化技術が採用されている。しかし、上記画像２値化技術における困難により、これらの変換技術は、間取図に対して正確な特徴検出の結果をもたらすことに失敗してきた。このため、結果としての３Ｄビジュアリゼーションは満足のいくものではなかった。
【００１０】
このため、低解像度間取図画像の正確な解析の提供が可能な間取図画像認識／間取図特徴検出の技術の提供が望まれることが分かる。更に、間取図特徴を正確に特定する、間取図画像認識／間取図特徴検出の技術の提供が望ましい。ここで開示される技術で、間取図画像認識／間取図特徴検出、より具体的に言えば間取図画像セグメンテーションが、低解像度入力画像を用いたときでさえも、より正確にセグメント化された間取図画像をユーザに取得させるようにするデバイスと方法を改良させた。スタンダードな間取図画像と、間取図画像の確率的表現及び光学文字認識データの組み合わせと、を用いることによって、非常に正確な間取図セグメンテーションを効率的に作成することができる。
【００１１】
開示の実施形態によって、低解像度画像の画像解析を用いる間取図画像認識／間取図特徴検出を提供するデバイスと方法が開示される。
【００１２】
更に、開示の実施形態によって、間取図画像認識及び間取図特徴を正確に特定する間取図特徴検出を提供するデバイスと方法が開示される。
【００１３】
更に、開示の実施形態によって、間取図画像認識を提供するデバイスと方法が改良され、より正確にセグメント化された間取図画像をユーザに取得させるデバイスと方法が開示される。
【００１４】
更に、開示の実施形態によって、スタンダードな間取図画像と間取図画像の確率的表現を使用するためのデバイスと方法が開示される。このデバイスと方法を使用して、非常に正確な画像セグメンテーションを行うことができる。
【００１５】
更に、開示の実施形態によって、他のいかなる情報も用いずに、間取図画像の確率的セグメンテーションを可能にするデバイスと方法が開示される。このデバイスと方法は、間取図レイアウトを決定するために使用することができる。
【００１６】
画像の確率的セグメンテーションの全てが、正確な画素ラベリング又は適切な間取図の特徴のラベリングを可能にするわけではないため、実施形態においては、発明者は、追加の画像処理と計算を適用することにより、確率的セグメンテーションを改良するデバイスと方法を創作した。
【００１７】
開示の実施形態によって、１又は複数の制約を用いることにより、追加の画像情報とともに、間取図の確率的セグメンテーションを繰り返すデバイスと方法が開示される。これらの結果は、互いに比較され、最も尤もらしい間取図レイアウトが決定される。
【００１８】
例えば、開示の実施形態において、制約として、部屋サイズの比率チェックがある。部屋サイズの比率機能では、２つの部屋の部屋サイズの比率が繰り返し比較される。これら２つの部屋は、既知の部屋サイズ比率といった追加情報を伴う確率的セグメンテーション情報を用いることにより決定される。この部屋サイズ比率は、スキャンされた間取図画像に対して光学文字認識をすることにより決定される。
【００１９】
開示の他の実施形態においては、制約として、部屋アクセシビリティチェックがある。部屋アクセシビリティ機能では、部屋アクセシビリティ関数が、２つの部屋の間の経路の幅の最小値を繰り返しチェックする。即ち、当該制約は、全ての部屋がアクセス可能であることを要求するものである。２つの部屋の間の最小幅の経路により、ある部屋がアクセス可能でない場合には、確率的セグメンテーションが行われた間取図の情報を用いることに誤りが発生しがちである。これらのコンセプトの詳細は後述する。
【図面の簡単な説明】
【００２０】
以下の図は、本明細書で開示の発明の様々な構成要素の例を示すものであり、例示を目的とする。
【００２１】
【図１】間取図画像の例である。
【図２Ａ】単一の部屋のエリアが示された間取図画像である。
【図２Ｂ】各部屋のエリアが示された間取図画像である。
【図２Ｃ】２つの選択された画素とこれらに関連するラベルの確率とを有する間取図画像である。
【図２Ｄ】各部屋の画素のカウントが示された間取図画像である。
【図２Ｅ】ＯＣＲ動作の確率的結果が示された間取図画像である。
【図３】部屋サイズの制約処理を示す第１の実施形態のフローチャートである。
【図４】部屋サイズの制約処理を示す第２の実施形態のフローチャートである。
【図５Ａ】第２の実施形態の簡略な間取図画像である。
【図５Ｂ】第２の実施形態の簡略な間取図画像である。
【図５Ｃ】第２の実施形態の簡略な間取図画像である。
【図６】第３の実施形態に係る処理のフローチャートである。
【図７Ａ】ある部屋へのアクセシビリティを欠いている場合の間取図画像である。
【図７Ｂ】ある部屋へのアクセシビリティが小さすぎる場合の間取図画像である。
【図７Ｃ】全ての部屋へアクセシビリティが適切な場合の間取図画像である。
【図８】画素推定に基づいて部屋サイズを計算する処理のフローチャートである。
【図９】ハードセグメンテーション仮説について部屋比率コストを決定する処理のフローチャートである。
【図１０】ハードセグメンテーション仮説についてアクセシビリティコストを決定する処理のフローチャートである。
【図１１】ハードセグメンテーション仮説について複数の制約に対するグローバルコストを決定する処理のフローチャートである。
【図１２】ＣＮＮセグメンテーションシステムの最適化プロセスである。
【図１３】最適化プロセスのグラフである。
【図１４】セグメント化された間取図画像の３次元表現である。
【図１５】セグメント化された間取図画像に基づく３次元間取図画像である。
【図１６】ＣＮＮシステムを走らせるために使用され得るハードウェアを示したものである。
【発明を実施するための形態】
【００２２】
［方法論の概要］
先述したように、高解像度間取図画像を必要とせずに、間取図特徴を正確に特定し、間取図の大きさのデータを正確に抽出することは、間取図画像データを確実に処理するために大いに望まれることである。本明細書に記載の技術では、種々の間取図画像データから間取図の部屋の特徴及び大きさを確実に抽出するために、２つの異なる処理技術が使用される。
【００２３】
間取図画像データから特徴及び大きさの情報を確実に抽出する技術は、種々の用途がある。例えば、間取図画像が解析されて、大きさのデータが当該画像のメタデータとして追加されてもよい。これにより、処理された間取図画像は、所望の部屋のサイズ又は範囲により、検索又は分類可能となる。他にも、アパート又は住宅の潜在的な購買者（又は賃借者）は、家具が部屋又は廊下に収まるか否かを知りたいと思うこともある。このような疑問については、本明細書の開示に係る間取図画像処理が答えとなりうる。
【００２４】
本来的には、間取図画像からの情報の抽出は、間取図画像についての仮説に基づく推定である。例えば、画像セグメンテーションは、同一のラベルを有する画素が特定の性質を共有するように、画像画素に対してラベルを付与するプロセスである。間取図画像のセグメンテーションの目的の１つは、画素データを「領域」又は「エリア」にラベリングすることである。このラベリングは、間取図画像の間で異なる意味論に基づいている。例えば、ある画像において慣習的に「ベッドルーム」と呼ばれるエリアは、他の画像では「寝室」、「書斎」、又は「ロフト」と呼ばれることもある。他にも、間取図画像は、特に部屋の用途を示さないこともある。このため、本明細書で記載する技術では、例えば、「部屋」、「ドア」、「壁」、及び「屋外」と呼ばれるラベルのセットが用いられる。これらの意味的な画素のラベルは、ラベルの一例として、間取図画像のセグメンテーション処理に使用される。勿論、他のラベルも使用可能である。
【００２５】
本実施形態に係る発明の技術では、他の用途に比べて画像認識技術において大きな可能性を有する畳み込みニューラルネットワークシステム（以下、「ＣＮＮ」又は「ＣＮＮシステム」）の態様を採用する。畳み込みニューラルネットワークは、間取図画像の確率的セグメンテーションを得るために使用可能である。ＣＮＮシステムがどのように実現されるかについては、本出願と同時に出願され、参照することにより組み込まれる米国出願（出願番号は未決定、代理人整理番号はＲＴ−０００１）を参照されたい。
【００２６】
例えば、訓練されたＣＮＮシステムは、間取図画像の確率的セグメンテーションを出力可能である。間取図画像の確率的セグメンテーションは、出力画像の各画素が特定のラベル（即ち、意味的な特定）に係る確率である。例えば、間取図画像について記載する場合には、先述した画素ラベルは、部屋、壁、ドア、窓、外などとすることができる。各画素のラベルは、当該画素に関連する確率を有する。別の言い方をすれば、特定の画素が特定のラベルに対応する確率は、確率的セグメンテーションとして知られている。この確率は、０％と１００％の間の値となる。このモデルによると、特定の画素の全てのラベルの確率を足し合わせると、１００％となる。
【００２７】
しかしながら、全ての確率的セグメンテーションが、所定の画素について正確なラベルを付与するわけではなく、特定の間取図の特徴が正確に反映されるわけでもない。例えば、確率的な間取図画像の特定の画素又は領域は、壁である確率が４１％であり、ドアである確率が４０％と示されることがある。このため、確率的セグメンテーションを用いて最終的な間取図の予測をすることができれば、ドアの画素ラベルではなく、壁の画素ラベルを選択することの利点は特に無い。このため、確率的セグメンテーションデータだけを用いても、結果が正確ではないことがある。
【００２８】
本発明の発明者は、更なる画像処理及び計算によって、セグメンテーション結果を改良する方法を開発した。特に、確率的セグメンテーションデータは、対象画像からの生画像データ（例：ＪＰＥＧ，ＴＩＦＦ，ＧＩＦ，ＢＭＰ，ＰＮＧ）によって補足される。後述するように、画像自体から収集可能な追加情報を使用することによって、より正確な間取図予測が実現される。
【００２９】
この生画像データは、別途、光学文字認識（ＯＣＲ）を用いて解析可能である。この追加のＯＣＲ情報は、制限又は確率的セグメンテーションデータ結果のテストとして使用可能である。
【００３０】
本明細書のシステムは、間取図画像のセグメンテーション及び認識を改良するために、コスト関数のアプローチを利用する。具体的には、グローバルコスト関数が定義され、その後に、グローバルコスト関数が最小化される。グローバルコスト関数は、（ａ）セマンティックラベリング（部屋、ドア、壁など）に基づいて、推定された領域について画像の確率的セグメンテーションを行うこと、（ｂ）画素サイズに部分的に基づいて、部屋サイズの推定を行うこと、といったデータの２つのパイプライン処理が考慮される。即ち、である。例えば、確率的セグメンテーションは、ＣＮＮシステムから導き出され、セグメンテーションコスト（セグメンテーションが適切であった蓋然性）が決定される。部屋サイズの推定は、画像における自身のサイズがラベリングされた少なくとも１つのエリアを含む画像である間取図画像に対する処理である光学文字認識（以降「ＯＣＲ」又は「ＯＣＲ処理」）処理から導き出される。画像の画素サイズは知られているので、部屋サイズが判定されたＯＣＲは、他の部屋のサイズについても影響を与える。例えば、コストは、補足的に、ＯＣＲ出力の正確性についての信頼度に由来する不確実さの要因として判定されてもよい。
【００３１】
コスト関数によるアプローチにより、確率的セグメンテーションコストと部屋サイズ推定コストとが一緒に推定される。コスト推定の結果は、両方の推定結果に対するグローバルな制約が含まれているので、つじつまが合う。ここでは２つの制約について述べるが、より多くの又は少ない制約が使用されてもよい。
【００３２】
第１の制約（Ｃ１）は、（ｂ）（ＯＣＲデータから決定される画素サイズに部分的に基づく部屋サイズの決定）から取得される部屋サイズは、（ａ）（画像の確率的セグメンテーション）によって決定される各部屋サイズとつじつまが合わなければならないということである。計算された部屋サイズに矛盾が無ければ、処理の正確さについての信頼度が増す。しかしながら、部屋サイズが一致していなかった場合は、画像セグメンテーションプロセスにおいてエラーが発生したと考えられる。このように、部屋サイズに関する制約は、画像処理のエラーのチェックポイントとして役割を果たす。部屋サイズの制約に係る第１の実施形態は、相対的な部屋比率の比較と、コスト関数の適用と、によって実現される。部屋サイズの制約に係る第２の実施形態は、処理結果を直接比較することによって実現される。これらの部屋サイズの制約に係る実施形態の詳細は後述する。
【００３３】
第２の制約（Ｃ２）は、各部屋がアクセス可能でなければならないということである。アクセシビリティとは、例えば、ドア、引き戸、又はオープンスペース（玄関）を有し、所定の最低限の幅を有する経路が存在することである。この制約を強めることにより、隣接する２つの部屋の間の経路が最低限のアクセシビリティを欠くと判定される場合は、セグメンテーション仮説にエラーが存在すると判定される。例えば、ドアが誤って壁とラベリングされている。この場合、画像には、エラーを正すための再処理が施される。このようにして、部屋のアクセシビリティに関する制約の強化は、画像処理のエラーのチェックポイントとしての役割も果たす。
【００３４】
理解されるように、データの２つのパイプライン処理の使用（ＣＮＮシステムによる画像処理によって入手されるセグメンテーションデータ、及び、ＯＣＲシステムによる画像処理によって入手されるＯＣＲデータ）は、対象画像に関するデータ点群を提供する。更に、本明細書で開示されているように、１又は複数の制約の使用は、処理エラーのチェックポイントを提供する。これらの制約は、データの信頼性を高める。このように、画像のセグメンテーション及び認識の信頼性は、大きく向上する。
【００３５】
［グローバルコスト関数の定式化］
一般的に、エンジニアリング、ニューラルネットワーク、及び機械学習の分野においては、コスト関数は、ニューラルネットワークの出力の判定基準である限り、重要な概念である。ＣＮＮシステムの分野においては、コスト関数は、出力を正すためにネットワークが行う入力画像のマッピングの精度を表す数を返す。ＣＮＮシステムにより実行されるような学習アルゴリズムは、可能な限りコストを低くする答えを見つけるために、複数の回答を探索する。
【００３６】
本実施形態では、改善された画像セグメンテーション及び認識のためのグローバルコスト関数を下記の通りとする。
【数１】
2019082979.tif 000003
Ｃｇｌｏｂａｌはグローバルコストである。ＨＳｎはハードセグメンテーション仮説である。ＰＳは確率的セグメンテーションである。ＯＣＲは光学文字認識の結果である。λ１は第１のスケーリング因子である。λ２は第２のスケーリング因子である。λ３は第３のスケーリング因子である。なお、スケーリング因子が必要でない場合、λの値は単純に１とすればよい。ここでは、各コスト関数因子については大まかに記載し、詳細については後述する。
【００３７】
Ｃ（ＨＳｎ,ＰＳ）は、入力である所定のＰＳ（確率的セグメンテーション）からＨＳｎ（ハードセグメンテーション）出力の蓋然性又は正確度を評価するコスト関数である。大まかには、間取図画像は、完全に訓練された畳み込みニューラルネットワークシステムに入力され、確率的セグメンテーションの結果が計算される。このプロセスにおいて、入力画像の各画素は、ラベルのセットの全てにわたって確率分布が割り当てられる。この出力は、確率的セグメンテーションと呼ばれる。そして、確率的セグメンテーションに基づくハードセグメンテーションが決定される。このプロセスでは、各画素には、確率的セグメンテーションにより決定された、最も確率の高いラベルが割り当てられる。ハードセグメンテーションとは、画素セグメンテーションの一形態である。ハードセグメンテーションは、最も確率の高い画素ラベルに限られず、あらゆる確率の画素ラベルであってよい。ハードセグメンテーションのデータは、システム制約関数に対して評価される。
【００３８】
Ｃ１（ＨＳｎ,ＯＣＲ）は、制約Ｃ１（例：部屋サイズの一貫性）に合致しない特定のＨＳｎ（ハードセグメンテーション）出力に対し、ペナルティを課すためのコスト関数である。後述するように、部屋サイズの一貫性に係る制約は、部屋サイズに基づくハードセグメンテーション仮説のエラーのチェックを行う。ここでコスト関数は、ＨＳｎデータとＯＣＲデータを比較した場合に、各部屋のサイズ仮説が一貫していれば、Ｃ１コストは非常に低くなり、部屋サイズが一致すれば、ゼロになるように設計されている。サイズの違い又は相対的なエラーは、Ｃ１コストを増加させる。
【００３９】
最後に、Ｃ２（ＨＳｎ,ＯＣＲ）は、制約Ｃ２（例：部屋へのアクセシビリティ）に合致しない特定のＨＳｎ（ハードセグメンテーション）出力に対し、ペナルティを課すためのコスト関数である。後述するように、この制約は、部屋へのアクセシビリティに基づくハードセグメンテーション仮説のエラーのチェックを行う。ハードセグメンテーション仮説の判定対象となる各部屋は、ドア、引き戸、又はオープンスペースを経由してアクセス可能でなければならない。本願では、「アクセス」及び「アクセシビリティ」とは、所定の最低限の幅よりも大きな幅を有する経路が存在することを意味する。少なくともＷｍｉｎの幅を有する経路によって全ての部屋に到達できる場合、Ｃ２コスト関数はゼロ（低コスト）となる。そうではない場合、Ｃ２コスト関数は正の値を返す。
【００４０】
本明細書で使用するグローバルコスト関数を含む各コスト関数を含み、かつ、各コスト関数に影響を与える各因子について検討する。各コスト関数のコンポーネントが互いに関連していており、推定結果の一貫性が提供されるように制約された２つのパイプライン処理からのデータが利用されるので、各構成要素について十分に説明してから、グローバルコスト関数について説明する。
【００４１】
［部屋サイズの制約に係る第１の実施形態］
先述したように、部屋サイズの無矛盾性に係る制約は、他から独立して決定又は推定された部屋サイズに基づくハードセグメンテーション仮説に対するエラーチェックとして機能する。入力画像からの第２のデータソースを利用し（即ち、部屋サイズの文字表現を抽出するために光学文字認識（ＯＣＲ）を利用することによって）、当該文字表現の位置を知ることによって、このデータと、セグメンテーション出力によって決定された部屋サイズと、を比較することができる。他から独立して決定される部屋サイズの間の関連性が高いほど、画像セグメンテーション及び認識が正確に行われた確率は高くなる。
【００４２】
図３は、部屋比率コストを決定するための第１の実施形態を示す。部屋比率コストとは、直感的には、「既知の」結果を用いた２つの部屋の予想面積比率と比較した場合の２つの部屋の面積比率に関する特定のセグメンテーション仮説のコストである。既知の結果とは、ＯＣＲ結果を利用して得られる２つの部屋の面積比率である。本願では、特定のセグメンテーション仮説は、ハードセグメンテーション仮説又はＨＳｎと同じ意味である。
【００４３】
図３のステップ３０１においては、セグメント化される間取図の入力画像が得られる。間取図の入力画像は、セグメント化されておらず、ＪＰＥＧ，ＴＩＦＦ，ＧＩＦ，ＢＭＰ，ＰＮＧなどのファイル形式であってよい。ファイル形式は、特定のタイプに限定されない。本実施形態のシステムによって処理される間取図の入力図画像の例は、図２Ａの間取図画像２０に示されている。
【００４４】
例えば、図２Ａは、リビングルーム２２、キッチン２４、窓２５、クローゼット２６、クローゼットドア２７、キッチンカウンター２８、トイレ３２、及び浴室ドア３５を含む間取図画像２０を示す。間取図画像は、キッチン２４の部屋サイズを記述するテキスト３６をも含む。例えば、間取図画像２０は、キッチンのサイズが５平方メートルであることを示している。間取図では、部屋のタイプ及び部屋のサイズが常に表示されているわけではない。例えば、間取図画像２０では、リビングルーム２２とトイレ３２のサイズは示されていない。
【００４５】
ステップ３０２において、ＯＣＲ処理が間取図の入力画像に施される。ＯＣＲ処理は、間取図の入力画像に含まれるテキスト情報を特定するために使用される。ＯＣＲ処理は、正確な情報を提供し、かつ、入力画像から英数字データを抽出する既知の技術である。このため、ＯＣＲ処理に係る情報は、間取図のレイアウトについてセマンティックな判断をする際に、ある程度は信頼できる。ＯＣＲ処理技術は、例えばＴＥＳＳＥＲＡＣＴ、ＧＯＯＧＬＥ、ＭＩＣＲＯＳＯＦＴ、ＡＤＯＢＥ等の任意のものを使用可能であり、本実施形態のシステムは、特定のＯＣＲ処理技術に限定されない。しかしながら、本実施形態のシステムでは、利用するＯＣＲ処理が正確であり、画像上の英数字のテキストデータを全て認識するものとする。この点は、画像上のいかなる数字、文字、シンボルなどを認識することについてもあてはまる。更に、利用するＯＣＲ処理技術は、当該技術分野において従来からそうであるように、最も確からしい文字認識結果又は確率的文字認識結果を出力するものとする。
【００４６】
例えば、図２Ａの間取図画像２０に示すように、キッチン２４は、５ｍ２のエリアを有する。この５平方メートルのエリアデータは、ＯＣＲ処理によって検出され、出力されてメモリに記憶される。しかしながら、ＯＣＲ処理は、常に完全に正確なわけでなく、典型例を挙げると、最も可能性の高い記号（例えば、入力画像にマッチする文字、数字、シンボルなど）だけが処理システムによって出力される。このような信頼度に係るエラーに対処するために、利用するＯＣＲ処理システムは、確率的データを出力してもよい。即ち、ＯＣＲ処理出力は、処理システムが処理対象画像から英数字コンテンツをどれだけ正確に抽出したかを示す信頼度を出力してもよい。図２Ｅは、このタイプのＯＣＲ処理の出力結果の例を示す。キッチンのサイズについての参照符号３７は、キッチンのサイズである５平方メートルを示しているが、ＯＣＲ処理の結果は、可能性のある５つの記号の組が示されている。各記号は、正確性を示す特定の確率を有する。例えば、意味論的ラベルの参照符号３８が示すように、数字５は、ＯＣＲ処理結果による５つのラベル又は結果を有する。例えば、キッチンの３７番は、８０％の確率で数字５であり、１０％の確率で大文字のＳであり、５％の確率で大文字のＲであり、３％の確率でポンドを表す記号（£）であり、２％の確率で数字８である。通常、最も高い確率を持つＯＣＲ処理結果が、正しい出力結果として選ばれる。更に、詳細は後述するが、確率的なＯＣＲデータは、部屋サイズ制約のコストの計算と関連付けてなされるＯＣＲ処理コストを計算するために用いられるようにしてもよい。
【００４７】
なお、入力画像又は対象画像に含まれる部屋サイズの英数字標記を検出することに加えて、ＯＣＲ処理は、間取図画像に示される部屋サイズの表示箇所（ｘ−ｙ画素座標）をも出力可能である。この表示箇所データは、少なくとも、詳細を後述する画素サイズを部屋サイズにスケーリングするシステムによって使用される。本実施形態では、一般的な間取図画像のように、部屋サイズの表記は、部屋の中央に記載されるものとする。中央に記載されていない部屋サイズは、処理システムのエラーを引き起こすことがある。この種のエラーは、ＯＣＲコスト推定の計算に含めることもできる。他にも、ＯＣＲの部屋サイズ情報の記載が、壁又は廊下に近すぎるために信頼性が低いと判定される場合、部屋サイズの一貫性に係る制約のコストを計算する処理は停止してもよい。
【００４８】
ひとたび対象画像に対してＯＣＲ処理が実行されると、ステップ３０３に示すように、少なくとも２つの部屋サイズが検出されたか否かについての判定が実行される。部屋サイズは、例えば平方フィート、平方メートル、畳（日本で使用される）などといった種々の単位で表現可能であり典型的には、サイズを示す数字（例えば、アラビア数字）を有する。ＯＣＲ処理が数字を検出した場合には、当該数字は間取図における部屋サイズを意味するので、次のステップ３０４の処理に移行する。しかしながら、画像において数字が認識されなかった場合、画像内に部屋サイズの記載がなかった、又は、画像の質が悪いためＯＣＲ処理が部屋サイズの記号を十分抽出できなかったものとして、部屋サイズ制約処理は終了する。
【００４９】
ステップ３０４では、間取図の他の部屋に部屋サイズがもとの間取図画像にない場合に、当該部屋サイズが計算される。未知の部屋サイズは、既知の部屋サイズから推定される。好ましくは、ステップ３０３及びＯＣＲ処理の間において、少なくとも２つの部屋サイズが対象間取図画像から発見される。ＯＣＲで検出された２つの部屋サイズは、部屋サイズ推定の信頼度を向上させる。なお、これらの計算では、入力画像において同一の計測単位が使用され、ＯＣＲスキャニングによって検出されるものとする。当然ながら、異なる単位が提供されて検出された場合、例えばある部屋では「畳」が使用されて、他の部屋では「平方メートル」が使用された場合などにおいては、適切な変換ステップが実行される。部屋サイズデータから一般的な単位への変換は、部屋比率の計算、部屋サイズデータの推定、又は画素サイズを部屋サイズデータにスケーリングする処理の前に実行される。
【００５０】
上記の例を図２Ｂに示す。５平方メートルを示す３６番のキッチンに基づいて、他の部屋のサイズを決定するための推定が行われる。例えば、リビングルーム２２は７．５平方メートルのサイズであり、クローゼット２６は２平方メートルのサイズであり、トイレ３２は１．５平方メートルのサイズであり、シャワールーム３０は２．２平方メートルのサイズである。部屋サイズの推定は、多くの方法により実行可能であるが、計算コストがとりわけ低い部屋サイズ推定方法は、下記に説明するように、図８に示されている。
【００５１】
少なくとも２又はそれ以上の間取図画像の部屋サイズが取得されると、２つの部屋エリアが選択され、ステップ３０５において、選択された２つの部屋エリアの部屋比率が取得される。先述したように、ＯＣＲは、部屋を認識できず、単に部屋サイズと数字の位置座標（例えば、間取図画像における数字の位置）を認識できるだけである。システムは、対象入力画像に対するＣＮＮシステムの処理から得られるハードセグメンテーション仮説を使用し、画像における部屋サイズの位置に基づいて、所定のハードセグメントの正確な部屋に部屋サイズを関連づける。即ち、ハードセグメンテーション仮説によれば、特定の部屋の部屋サイズが判定される。このため、ＯＣＲ処理は、部屋であるか否かですら認識することはできないが、ＯＣＲの結果をハードセグメンテーション仮説に組み合わせれば、ＯＣＲ処理結果から部屋のリストと部屋の大きさを推定することができ、部屋サイズについての制約を利用できる。
【００５２】
ステップ３０５の部屋比率は、第１の部屋面積を第２の部屋面積で割ることにより生成される。例えば、図２Ｂに図示するように、キッチン２４は、５平方メートルの表示エリアを有し、リビングルーム２２は、７．５平方メートルの表示エリアを有する。５を７．５で割ることにより、キッチンのリビングルームに対する部屋比率として０．６６７を得る。これは部屋エリアが特定された全ての部屋の組に対して実行される。計算される部屋比率が多くなるほど、部屋比率コストをより正確に判定できるようになる。このため、可能であれば、間取図における複数の組み合わせについて、部屋比率を計算することが好ましい。
【００５３】
セグメント化されていない画像の部屋比率が取得されると、この情報は、後で使用するためにひとまず保管され（ストレージに格納され）、ステップ３０６において、確率的セグメンテーション（ＰＳ）情報がＣＮＮシステムから取得される。確率的セグメンテーションは、画像における特定の画素が所定のセマンティックラベルと適切に関連する確率又は蓋然性の集まりである。
【００５４】
図２Ｃは、例えば、畳み込みニューラルネットワーク（ＣＣＮ）により出力された確率的セグメンテーション出力を示す。図２Ｃは、非常に簡略化しており、２つの画素４２及び４４だけを示している。確率的画像は、何千又は何百万の画素を含むことがあり、各画素は、自身が特定のラベルである確率を有する。ＣＮＮによる確率的セグメンテーションは、間取図画像１の確率的セグメンテーションを取得するための方法の１つに過ぎず、本実施形態に係る発明は、当該方法には限定されない。図２Ｃを例に挙げると、画素４２及び４４は、確率的セグメンテーション情報を含む間取図画像４０における２つの画素である。この例においては、画素４２及び４４は、ドア、壁、部屋、窓、及び屋外といった５つの異なるラベルの何れかとなる。実際には、より多数のラベルが存在してもよいが、説明の簡略化のために、画素ラベルの数を５とする。
【００５５】
図２Ｃに示される確率的セグメンテーションによると、画素４４は、９９％の確率で部屋であり、０％の確率でドアであり、０％の確率で壁であり、０％の確率で窓であり、１％の確率で（間取図の）屋外である。一方、画素４２の確率的セグメンテーション結果は、より不確定である。図２Ｃに示す確率的セグメンテーションによると、画素４２は２０％の確率で部屋であり、４０％の確率で壁であり、３０％の確率でドアであり、５％の確率で窓であり、５％の確率で屋外である。確率的セグメンテーションデータは、画像内の全ての画素の確率を含むが、説明の簡略化のために、２つの画素のみを示している。
【００５６】
ステップ３０６において取得された確率的セグメンテーションを使用し、ステップ３０７においてハードセグメンテーション仮説が実行される。このハードセグメンテーション仮説をＨＳｎと記載する。ＨＳは、ハードセグメンテーションを表し、ｎは、特定のハードセグメンテーション仮説又は繰り返しを表す。確率的セグメンテーションデータにより、多数のハードセグメンテーション仮説が生成される。例えば、第１のハードセグメンテーション仮説は、確率的セグメンテーションのラベルの確率が最大となるものを選択することによって取得される。例えば、図２Ｃは、２つの画素４２及び４４を示す。確率が最大のラベルを使用すると、画素４２の第１のハードセグメンテーション仮説は壁であり、画素４４の第１のハードセグメンテーション仮説は部屋となる。全てのハードセグメンテーション仮説について、各画素は仮説的なラベルを有する。先述したように、間取図画像は、何千又は何百万の画素を有していてもよい。
【００５７】
ステップ３０７において、ハードセグメンテーション仮説が決定されると、ステップ３０８において、少なくとも２つの部屋について、部屋ごとの画素数が判定される。この点は、単に、ハードセグメンテーション仮説ＨＳｎの各部屋における画素数を数えることによって実行される。これらの画素は、「壁」にラベリングされる。図２Ｄの例では、各部屋エリアが画素カウント数に関連付けられている（ただし、縮尺は描かれていない）。各部屋の画素数は、部屋サイズの絶対的な情報を与えるものでないが、相対的な部屋サイズ、即ち部屋サイズの比率についての情報を与えることができる。この点は、間取図画像が画像全体にわたって同一の縮尺を有するためである。
【００５８】
ステップ３０９においては、ステップ３０５において選択された部屋（例えばキッチン２４とリビングルーム２２）と同じ２部屋が選択される。ステップ３０８においては、セグメント化された画像の第１及び第２の部屋の画素のカウントが取得され、ステップ３０５と同様に、各画素のカウントが割り算の対象となる。図２Ｄを例に挙げると、キッチン２４は５４０５画素を有し、一方でリビングルーム２２は７５４０画素を有する。５４０５を７５４０で割ることで、リビングルームに対するキッチンの部屋比率０．７１７が取得される。
【００５９】
次いで、ステップ３１０においては、特定のハードセグメンテーション仮説ＨＳｎの部屋比率の相対コストが実行される。ステップ３１０において部屋比率を決定するために、コスト関数を使用可能である。コスト関数は、予測値が実測値（又は推定された実測値）からどの程度外れているか測定するために使用可能である。
【００６０】
例えば、部屋比率コストは、直感的には、下記のように捉えることができる。ＯＣＲデータを用いた部屋比率が正確だとすると、ＯＣＲ部屋比率に最も近い部屋比率を有するハードセグメンテーション仮説が望まれる。先述した例においては、ＯＣＲ部屋比率は０．６６７であり、特定のＨＳｎの部屋比率は０．７１７である。部屋比率が近いと、ハードセグメンテーション仮説が正しい傾向にあり、部屋比率が遠いと、ハードセグメンテーション仮説が正しくない傾向にある。例えば、ＨＳｎの部屋比率が５．３だとすると、ＯＣＲ部屋比率の０．６６７と大きく異なっているので、ハードセグメンテーション仮説ＨＳｎが正しくないことを示す。確率的セグメンテーションコスト及びＯＣＲ逸脱コストの計算を含むコスト計算の詳細な説明については、図９におけるコスト関数の記載を参照されたい。
【００６１】
他の実施形態として、ステップ３１０におけるコストについて、部屋比率コストの計算の他に種々の他の潜在的コストが分析されてもよい。例えば、確率的セグメンテーションコスト、部屋比率コスト、及びＯＣＲ処理逸脱コストが計算されてもよい。もし所望するのであれば、他の潜在的コストは、（下記に説明する）グローバルコストの計算に使用可能である。
【００６２】
ステップ３１０において、特定のＨＳｎについてのコストが決定されると、ステップ３１１において、多数のハードセグメンテーションが最小コストを生んだか否かが判定される。例えば、ハードセグメンテーション仮説の最小コストが発見されたことを確定させるために、コスト関数の最適化が実行される。即ち、コスト関数の最小コストが発見されるまで、ＨＳｎが繰り返えされてよい。ステップ３１１において最小コストが発見されなかった場合、ステップ３１３においてＨＳｎが繰り返され、ステップ３０７からプロセスが繰り返されて、別のハードセグメンテーション仮説が検証される。ステップ３１３において仮説を繰り返すことができる。また、画素連続性を保持する繰り返しが探索されてもよいが、これは、既に確率的セグメンテーションに組み込まれている。このプロセスは、最小ＨＳｎコストが発見されるまで繰り返される。最小コストを発見する例は、図１２に示されており、詳細は後述する。
【００６３】
最小コストが発見されると、最小コストを有するＨＳｎが、少なくとも部屋比率に係る制約を考慮したうえで、間取図のセグメンテーションの最適解であると判定される。下記に説明するように、他の制約もこのプロセスで使用可能である。ステップ３１２において、コストが出力される。最小コストを有するＨＳｎ及びＨＳｎコスト関数は、改良されたセグメンテーション及び認識のデバイスにおける最終的な出力としてもよいし、部屋のセグメンテーションを更に改良するために、下記に説明するアクセシビリティに係る制約などの異なる制約とともに使用されてもよい。
【００６４】
更に、部屋の制約は、２つの部屋についてのみ決定されてもよいし、全体的なハードセグメンテーションコストを突き止めるために、間取図内の全ての部屋の組み合わせについて決定されてもよい。
【００６５】
上記のように、部屋サイズの制約に係る処理の結果、最小のハードセグメンテーション出力に係るＨＳｎ関数により決定される各部屋のサイズ仮説のリストが作成される。ＯＣＲ結果から決定及び／又は推定された各画像エリアについて、部屋サイズの仮説のリストも取得される。サイズの比率を比較することによって、エリアの単位は無関係になる。（ＣＮＮ処理を経て決定される）画素サイズの比率は、単なる数字となり、（ＯＣＲ処理を経て決定される）単位の２乗の比率も同様に単なる数字となる。これらの数字は、所定の間取図の同一の２つのエリアを表すとすると比較可能になる。このため、ＯＣＲ処理により得られたデータにより、各部屋について部屋サイズセグメンテーション仮説を比較するために必要なデータが得られたことになる。部屋サイズの制約のためのコスト関数Ｃ１が決定される。この点の詳細は、図９を参照して後述する。
【００６６】
［部屋サイズの制約に係る第２の実施形態］
部屋サイズの制約に係る第２の実施形態を図４に示す。この実施形態は、同時にハードセグメンテーション仮説のセットを処理することができる。このため、部屋サイズの制約に係る第１の実施形態よりも、処理結果が早く決定される。
【００６７】
ステップ３５１に示すように、ＯＣＲ結果とともに、ハードセグメンテーション仮説のセットが入力される。上記の実施形態と同様に、ＯＣＲ結果は、通常、単位（メートル、畳、フィートなど）を伴うアラビア数字である。更に、上記の実施形態と同様に、ハードセグメンテーション仮説の最初のセットがＣＮＮシステムから取得される。
【００６８】
ＯＣＲ結果及びハードセグメンテーション仮説が取得されると、ステップ３５４において、少なくとも２つのＯＣＲ数字が取得されるか否かが判定される。２つのＯＣＲ数字を取得する必要があるのは、たった１つのＯＣＲ数字しか取得できず、その数字しか他の部屋のサイズの推定に使用できないときは、ＯＣＲ数字／部屋の最初の誤差が他の部屋に伝播するためである。ＯＣＲ結果及び特定のハードセグメンテーション仮説を利用して部屋の比率についての比較が実行された場合、その結果はささいなものにしかならない。なぜなら、特定のハードセグメンテーション仮説に対しては、部屋サイズを抽出するために一つのデータ点のみが使用されているため、ＯＣＲに係る部屋のサイズは、必然的に特定のハードセグメンテーション仮説に対し矛盾が生じないからである。このため、本実施形態においては、制約を適切に行うためには、少なくとも２つのＯＣＲ数字／部屋サイズが望まれる。この点は、ステップ３５８及び３６０の記載によっても明らかになるであろう。
【００６９】
ステップ３５２においては、少なくとも２つのＯＣＲ数字が利用可能であるか否かが判定される。少なくとも２つのＯＣＲ数字が利用可能でない場合、プロセスは終了し、ステップ３６１において０が戻される。少なくとも２つのＯＣＲ数字が利用可能である場合、プロセスはステップ３５４へと進む。ステップ３５４においては、ハードセグメンテーション仮説のセットが、ＯＣＲ結果と比較されるべき部屋のそれぞれに対して使用される。例えば、第１のハードセグメンテーション仮説はリビングルーム２２を７５４０画素と推定するかもしれない。一方で、第２のハードセグメンテーション仮説は、リビングルーム２２を９０００画素と推定するかもしれない。このような推定を、ハードセグメンテーション仮説における各部屋について実行することができる。
【００７０】
次にステップ３５６において、ＯＣＲ結果は、所定のハードセグメンテーション仮説と関連付けられる。先述したように、所定の部屋にＯＣＲ結果を関連付けることは、特定のハードセグメンテーション仮説と、抽出された英数字データのＸ−Ｙ画素位置を出力するＯＣＲの能力と、に基づくものである。例えば、図２Ａに示すように、キッチン２４のＯＣＲ結果は、ハードセグメンテーション仮説の対応する位置及び部屋に配置される。このため、ＯＣＲ結果によると、キッチン２４には、特定のハードセグメンテーション仮設として、５ｍ２のサイズが割り当てられる。このようなことが、ＯＣＲ結果に基づいて、全ての部屋に対して実行される。
【００７１】
ステップ３５８においては、ＯＣＲ結果を有する各部屋について、他の部屋のサイズを推定可能である。このため、キッチン２４のＯＣＲ結果が５ｍ２であれば、画素当たりのサイズは、特定のハードセグメンテーション仮説により推定される。ＯＣＲデータとセグメンテーション仮説に基づいて部屋サイズを推定することについては、図８を参照されたい。即ち、画素当たりの面積を特定するためには、画素数をカウントし、当該画素数を部屋の面積で割ればよい。このプロセスでは、間取図画像に描かれた部屋の実際のサイズが、画素ベースの間取図の画像サイズにスケーリングされる。
【００７２】
そして、所定のハードセグメンテーション仮説及び所定のＯＣＲ結果について、他の部屋の画素数をカウントすることができ、他の部屋のそれぞれに対し面積又は部屋サイズが付与される。次に、このプロセスは、他のＯＣＲ結果を有する部屋に繰り返すことができる。これは、ＯＣＲ結果を有する全ての部屋についてなされる。この情報に基づいて、最も確からしいハードセグメンテーション仮説と実際のハードセグメンテーション結果との差異について、コストが計算される。
【００７３】
次に、ステップ３６０において、ハードセグメンテーション仮説ごとに、コスト関数を使用してコストが計算される。複数のハードセグメンテーション仮説のコストは、一回の繰り返しで計算可能である。即ち、ハードセグメンテーション仮説のセットにおける各ハードセグメンテーション仮説のコストを計算可能である。このコストは、期待値からの逸脱として考えることができる。コスト関数の例については、後述の記載を参照されたい。
【００７４】
図５Ａの例に示すように、間取図５００には、２つの部屋５０５及び５５０が示されている。部屋５０５には、部屋サイズ５１０により特定される５ｍ２のＯＣＲ結果が示されており、一方で部屋５５０には、部屋サイズ５６０により特定される１０ｍ２のＯＣＲ結果が示されている。壁５３０は、部屋を仕切るものとして描かれているが、ＯＣＲでは、壁５３０が何であるかを知ることはできず、単に５ｍ２及び１０ｍ２の結果だけを知ることができる。
【００７５】
図５Ｂは、第１のハードセグメンテーション仮説を示す。壁５３０は、ハードセグメンテーション仮説であることを示すために、点線で描かれている。部屋５５０からのＯＣＲ結果だけを使用し、特定のハードセグメンテーション仮説の１画素のサイズを決定可能である。この例では、部屋５５０の画素数は、９１６である。このため、各画素のサイズは、０．０１１ｍ２である。この画素サイズを使用し、部屋５０５の部屋サイズを決定可能である。特定のハードセグメンテーション仮説に基づいて、部屋５０５内に、８２４画素があることを知ることができる。８２４画素を０．０１１ｍ２／画素に乗算し面積として９ｍ２が算出される。このため、部屋５０５の面積は、第１のセグメンテーション仮説によると９ｍ２である。
【００７６】
次に、図５Ｃに示すように、この手順が同一のＯＣＲ値（ただし、異なるハードセグメンテーション仮説）である第２のハードセグメンテーション仮説を使用して繰り返される。まず、部屋５５０の１画素あたりのサイズが、上記手順と同様の手順を使用して決定される。部屋５５０のＯＣＲ値は、１０ｍ２であり、部屋５５０内には、１２００画素存在する。従って、１画素のサイズは０．００８３ｍ２である。この画素サイズを使用して、部屋５０５の部屋サイズを決定可能である。特定のハードセグメンテーション仮説に基づいて、部屋５０５内に、５４０画素存在することを知ることができる。５４０画素を０．００８３３ｍ２／画素に乗算し、面積として４．５ｍ２が算出される。このため、部屋５０５の面積は、第２のセグメンテーション仮説によると４．５ｍ２である。
【００７７】
両方の部屋のＯＣＲ結果を使用し、第１及び第２のハードセグメンテーション仮説の結果を比較することができる。例えば、第１のハードセグメンテーション仮説においては、両方の部屋のサイズは、各部屋の画素数に基づくと類似し、部屋５０５は９ｍ２であると決定され、部屋５５０は１０ｍ２であると推定される。部屋５０５のサイズの結果は、部屋５０５のＯＣＲ結果である５ｍ２と比較することができる。このため、第１のハードセグメンテーション仮説は、ＯＣＲ結果とそれほど一致しない。
【００７８】
第２のハードセグメンテーション仮説によると、部屋５０５は４．５ｍ２であると計算され、部屋５５０は１０ｍ２であると推定される。この結果は、部屋５０５のサイズを５ｍ２とし、部屋５５０のサイズを１０ｍ２とするＯＣＲ結果と良く一致する。このため、コスト関数が異なるセグメンテーション仮説のコストの決定に使用される時は、第１のハードセグメンテーション仮説は、第２のハードセグメンテーション仮説よりも高いコストを有する。
【００７９】
［アクセシビリティの制約：第３の実施形態］
間取図のレイアウトを決定するにあたり、間取図を解析するまでもなく、いくつかの基本情報については既知である。例えば、全ての部屋は、出入口、廊下、階段といった入口を有する必要がある。間取図画像のセグメンテーション処理の後に、部屋とラベリングされたエリアが出入りのための通路を有していないとすれば、間取図のセグメンテーションの決定に際して間違いがあったとみなしても構わないであろう。
【００８０】
例えば、ドアを壁とラベリングする、廊下を窓とラベリングする、などといった誤りは、入口のない部屋になってしまう。この情報は、間取図画像の結果をチェックすることにより、間取図画像の適切なセマンティックラベリングを決定するための手助けとして使用可能である。本実施形態では、部屋のアクセシビリティに関する要求を、画像セグメンテーションの信頼度を向上させるための第２の制約として利用される。
【００８１】
図２Ａに示すように、例えば、間取図画像２０は、リビングルーム２２、キッチン２４、窓２５、クローゼット２６、キッチンカウンター２８、トイレ３２、及びシャワールーム３０などを含む。この間取図は、キッチン２４の部屋サイズが記述されたテキスト３６も含む。例えば、間取図画像２０は、キッチンのサイズが５平方メートルと示している。間取図画像においては、部屋のタイプと部屋のサイズが常に与えられるとは限らない。例えば、間取図画像２０においては、リビングルーム２２及びトイレ３２のサイズは示されていない。
【００８２】
図６は、アクセシビリティに係る制約の実施形態を実現するためのプロセスを示す。本実施形態では、適切な画像セグメンテーションを決定する手助けをするために、アクセシビリティに係る制約が使用される。即ち、部屋には出入り口が必要であるとの仮定と、出入り口のサイズは少なくとも最低限のサイズであるとの仮定と、に基づいて、ＣＮＮシステムは、より確からしいセグメンテーション結果（間取図画像の場合にはより確からしい間取図）を、決定することができる。
【００８３】
ステップ４０１０においては、画像のハードセグメンテーション仮説及びＯＣＲ処理結果のセットがシステムに入力される。対象入力画像のハードセグメンテーション仮説及びＯＣＲ結果については先述した通りである。アクセシビリティに係る制約を使用する実施形態は、先に生成されたデータを使用する。
【００８４】
ステップ４０２０においては、少なくとも１つのＯＣＲ結果が利用可能かの判定が実行される。部屋の出入り口のサイズを特定できるように、少なくとも１つのＯＣＲ結果が存在することが望ましい。ＯＣＲ結果が利用可能ではない場合、簡略化された部屋アクセシビリティがチェックされる。
【００８５】
簡略化された部屋アクセシビリティのチェックは、ステップ４０７０に示される。ステップ４０７０においては、出入り口の大きさを問わず、各部屋に出入り口があるか否かの判定が実行される。例えば、この簡略化されたチェックは、「部屋」とラベリングされた画素の判定と、部屋の縁の画素をチェックして画素のグループが「ドア」とラベリングされているか否かの確認と、を含んでよい。他にも、２つの画素エリアが「部屋」とラベリングされ、これらが「壁」によって分けられていると判定されれば、ラベリングされた壁に出入り口（通路、廊下）があるか否かを判定するように、チェックが実行されてもよい。他の代替的な簡略化されたチェックのアルゴリズムも可能である。出入り口が発見されると、ステップ４０７５において当該特定のセグメンテーションのコストが低い（例えば、０）と判定され、出入り口を持たない部屋があると、ステップ４０８０において当該特定のセグメンテーションのコストが高い（例えば、１）と判定される。
【００８６】
ＯＣＲ結果が利用な場合、ステップ４０３０において、ハードセグメンテーション仮説における部屋が設定され、ステップ４０４０において、各部屋の縮尺が、先に取得されたＯＣＲの処理結果に基づいて計算される。別の言い方をすれば、先述したように、１画素のサイズは、所定の部屋のＯＣＲ結果を使用し、部屋内の画素数をカウントすることにより決定される。画素の縮尺をどのように決定するかについては、図８も参照されたい。ハードセグメンテーション仮説における全ての部屋サイズは、このデータに基づいて、部屋内の画素数を単純にカウントし、上記のように決定された１画素の面積と掛けあわせることによって決定される。
【００８７】
次に、ステップ４０５０において、ハードセグメンテーション仮説における部屋の各ペア（「屋外」とラベリングされた画素も、ここでは「部屋」として扱われる）について、全ての部屋の組み合わせの間で最低限の幅を有する経路を決定するように、計算が実行される。部屋を選択する順番は任意であってよく、最初にどの部屋が選択されてもよい。しかしながら、ひとたび部屋が選択されてアクセシビリティの解析がなされると、当該部屋はアクセシビリティに係る制約を目的として、再び解析されないようにしてよい。別の言い方をすれば、図２Ａの間取図画像２０を例に挙げると、シャワールーム３０とリビングルーム２２の間の最小幅を有する経路が計算される。図２Ａに示すように、最小幅を有する経路を制限するエリアは、シャワールームドア３３及び引き戸２９である。従って、これらの２つの値のうち小さい方が、ステップ４０５０における計算対象である最小の経路幅となる。このプロセスは、部屋の組み合わせ全てについて繰り返され、全ての部屋の組み合わせの中の最小の経路幅が選択される。
【００８８】
上記説明したように、各部屋は、アクセス可能であるために、少なくとも１つの出入り口を有する必要がある。全ての部屋ｎの出入り口のサイズが決定される。複数の出入り口を有する部屋もある。部屋ｎが一切出入り口を有さないと決定された場合、この情報も決定される。この状況では、セグメンテーションのラベリングでエラーが発生したと考えられる。
【００８９】
下記に説明するように、最終ステップ４０６０は、アクセシビリティの制約に関するコスト関数を計算するためのものである。
【００９０】
例えば、図７Ａは、間取図６０において部屋２２がチェックされた際に、出入り口が無いと判定された部屋を示している。即ち、６６ａが示すように、最小の出入り口が存在せず、出入り口が実際のところ存在していない。この場合、セグメンテーションプロセスは、部屋が最低限のアクセシビリティを有しておらず、出入り口のない部屋であるとの結果を返すので、コストＣ２は、セグメンテーションエラーが起きた可能性が高いことを示す１（高いコスト）に設定される。図７Ｂの要素６６ｂに示すように、経路幅が小さいと判定された場合、即ち既定の最小経路幅よりも経路幅が小さいと判定された場合、関数は、中程度のコスト（例えば、０．５など）を返す。最後に、図７Ｃに示すように２つの部屋の間の経路の幅が十分大きく、最小限のアクセシビリティの制約に関する幅よりも大きいと判定された場合には、コスト関数Ｃ２は、ハードセグメンテーション処理が妥当であった可能性が高いことを示す０．０の値を返す。従って、アクセシビリティの制約に従って処理された場合に、最も低いコストを有するハードセグメンテーション仮説が、最も確からしいセグメンテーション仮説として選択される。
【００９１】
［画素サイズの推定］
図８は、画素の推定に基づく部屋サイズの計算のプロセスを示すフローチャートである。このプロセスは、部屋サイズ比率の制約の計算と、部屋アクセシビリティの制約の計算と、の両方に有用である。図８の最初のステップ８０１に示すように、少なくとも１つの部屋サイズが示されたＯＣＲ画像が取得される。ステップ８０２においては、サイズが示された部屋の画素数がカウントされる。ステップ８０３と８０４において、部屋サイズ（面積）が画素数によって割られ、面積／画素が取得される。次に、ステップ８０５において、各部屋の画素数をカウントし、ステップ８０４において計算された面積／画素を掛け合わせることによって、間取図画像における他の部屋のサイズが決定される。
【００９２】
［部屋比率セグメンテーションのコスト関数］
コスト関数は、予測値が実測値からずれている度合を定量化するために使用される。例えば、コスト関数は、理想的な部屋比率からのずれ具合を評価するために使用される。更に、コスト関数は、ハードセグメンテーション仮説ＨＳｎを用いて確率的セグメンテーションからのずれを評価するために使用される。コスト関数は、仮説を理想的なＯＣＲ結果と比較しときのずれを評価するためにも使用される。
【００９３】
図９は、上記の実施形態で説明した部屋比率のずれのコストを計算する方法の一例を示すフローチャートである。図９のステップ９０１に示すように、第１のコストは、所定のＨＳｎに対して確率的セグメンテーションからのずれを判定することである。直感的にいうと、該当する確率が１００％未満のラベルを使用するときのコストである。使用されるラベルが該当しない確率が高くなるほど、コストは高くなる。
【００９４】
例えば、図２Ｃの画素４４の最小のコストは、壁のラベルを使用することであって、その次に低いコストは、ドアのラベルを使用することである。その次に低いコストは、部屋のラベルを使用することであって、１番目と２番目に高いコストは、窓又は屋外のラベルを使用することである。勿論、先述したように、本例は、説明の簡単化のために、ラベルが５つしかないが、ラベルを多くてもよい。
【００９５】
図２Ｃに示す画素４２の確率値によると、当該画素のラベルとして最も確率が高いのは壁であり、確率は４０％である。このため、ハードセグメンテーション仮説が画素４２を壁と判定する場合、ラベルとしては最も確率が高いので、これに関連するコストは、他のいかなるコストよりも低い。ハードセグメンテーション仮説が画素４２を３０％の確率でドアと判定するのであれば、このラベルには低いコストが関連付けられるが、壁のラベルのコストより高くなる。ハードセグメンテーション仮説が画素４２を部屋と判定するのであれば、このコストは、壁又はドアのコストよりも高く、中程度の値を有する。ハードセグメンテーション仮説が画素４２を５％の確率で窓又は屋外と判定するのであれば、コストは、そこまで高くはならない。ここではラベルは５つのみしか示していないが、勿論ラベルの数は多くてもよい。画素に特定のラベルが付けられる確率が減少すると、関連するコストは増加する。
【００９６】
数式として記載すると、特定のハードセグメンテーションＨＳｎは、下記のようになる。
【数２】
2019082979.tif 000004
【００９７】
ここで、ｉは、画像ＨＳにおける全ての画素位置に係るインデックスであり（ｉ＝１，…，幅＊高さ）、ｊは、ラベルのインデックス（例えば、ｊ∈｛壁、部屋、…その他｝）であり、ｐｊ（ｉ）は、画素ｉにおけるラベルｊの確率である。
【００９８】
確率的セグメンテーションに係るコストが計算されると、ステップ９０２において、コストが重み付けされる。重み付けは、単純なスカラー量としてもよいし、ニューラルネットワークで学習されてもよい。例えば、確率的コストの重要度が部屋比率よりも低い場合、部屋比率コストをスケールアップしてもよいし、確率的コストをスケールダウンしてもよい。
【００９９】
次に、ステップ９０３において、部屋比率のずれのコストが決定される。簡単に説明したように、ＨＳｎ部屋比率及びＯＣＲ部屋比率を計算し、その違いが大きければ大きいほど、コストは大きくなる。この比率を計算するには、下記の数式を使用してもよい。
【数３】
2019082979.tif 000005
【０１００】
上記数式においては、各部屋を、ｒ＝１．…Ｒに対する部屋ｒ（ハードセグメンテーションＨＳより）とし、仮説のリストを、（Ｍ個のＯＣＲ結果がある場合にｓｉｚｅｒ，１，．．．，ｓｉｚｅｒ，Ｍ（そのそれぞれ１つのＯＣＲ結果からのサイズ推定である）とする。ｍａｘｋ（ｓｉｚｅｒ，ｊ）という項は、部屋サイズを正規化するのに使用され、｜ｍａｘｉ（ｊ）｜＊｜ｓｉｚｅｒ，ｉ−ｓｉｚｅｒ，ｊ｜）という項は、部屋サイズについて絶対値での差を決定するのに使われる。
【０１０１】
部屋比率コストが決定されると、ステップ９０２と同様に、結果は、ステップ９０４において重み係数を使用してスケーリングされる。
【０１０２】
その他のコストは、ハードセグメンテーションＨＳｎの正確性の決定に役立てるために計算され、ステップ９０５に示すように、ＯＣＲ結果が使用される。ここでは、ＯＣＲが１００％正確であるものとしているが、これは、現実世界における状況が反映されていない。このため、図３では明示してはいないが、ＯＣＲの値も、コスト関数の最小値を発見するために、含まれていてもよいし繰り返されてもよい。実際には、ＯＣＲ結果は、画像に含まれうる文字／数字／シンボル／等が何であるか、どのような確率値を有するかを示す。図２Ｅを例に挙げると、ＯＣＲ結果の例は、数字５である確率が８０％であり、文字Ｓである確率が１０％であり、文字Ｒである確率が５％であり、ポンド記号（£）である確率が３％であり、数字８である確率が２％である。
【０１０３】
先述したようｎ、特定のＯＣＲ値が、正しいＯＣＲ値の推定値から遠ざかれば遠ざかるほど、関連するコストは高くなる。このコストは、ステップ９０６で決定される。ＯＣＲ値のずれのコストは、先述したものと似たコスト関数を使用して計算可能である。ステップ９０６においては、先述した重み付けに類似した方法により、ＯＣＲコストに重みが付けられる。ステップ９０７においては、確率的セグメンテーション、部屋比率、及びＯＣＲの合計のコストを足し合わせることによって、グローバル部屋比率コストが取得される。
【０１０４】
［アクセシビリティセグメンテーションのコスト関数］
図１０は、アクセシビリティに関するハードセグメンテーション仮説のコストを決定するためのアクセシビリティコスト関数の一例を示す。ステップ１００１及び１００２に関しては、プロセスが同様であるため、先述したステップ９０１及び９０２を参照されたい。ステップ１００３においては、アクセシビリティコストが所定のＨＳｎについて決定される。図４を参照して説明したように、解析された各々の部屋へのアクセシビリティは、あるコストを有する。例えば、図６Ｃに示すように、解析された部屋である部屋ｎが最小サイズの出入り口を有する場合、アクセシビリティコストは低くなる。図６Ｂに示すように、解析された部屋が出入り口を有していても、最小サイズよりも小さければ、中程度のコストとなる。図６Ａに示すように、解析された部屋がいかなる出入り口も有していないとすれば、関連するコストは高くなる。所定の部屋に対してのアクセシビリティの決定のためのコスト関数は、以下のように記されてもよい。
【数４】
2019082979.tif 000006
【０１０５】
上記数式は、部屋ｉと他の部屋ｊ（ｊ＝１，部屋の番号）の間に、有効な経路ｐｉ，ｊがある場合の数式であり、ｆは、経路が狭すぎる場合にペナルティを科すための関数（例：ｆ（ｗ，ｗｍｉｎ）＝ｍａｘ（ｗｍｉｎ−ｗ）ｑ）である。指数ｑは、関数を非線形にすることができる。本実施形態では、線形又は非線形のコスト曲線を使用可能である。正のｑ値は、指数コスト曲線をもたらす。このため、出入り口の幅が最小幅より少しだけ小さければ、コストは小さくなるが、出入り口の幅が最小幅よりもずっと小さければ、コストは線形コスト曲線よりも指数関数的に大きいものとなる。別の言い方をすれば、ｑは、コスト関数のペナルティ項を線形コストから指数コストへと調整する。このコストは、ステップ１００４に示すようにスケーリングすることもできる。
【０１０６】
次に、ステップ１００５においてＯＣＲコストが決定され、ステップ１００６においてＯＣＲコストがスケーリングされる。ステップ１００５及び１００６については、同様の手続となるステップ９０５及び９０６をそれぞれ参照されたい。
【０１０７】
ハードセグメンテーションの総コスト（全ての解析された部屋）は下記のように表される。
【数５】
2019082979.tif 000007
【０１０８】
ステップ１００７に示すように、総コストは、重み付けされた確率的セグメンテーションコスト、重み付けされた部屋アクセシビリティコスト、及び重み付けされたＯＣＲのずれのコストの総和である。
【０１０９】
勿論、本実施形態に係る発明は、上記の特定のコスト関数には限定されず、いかなる数の既知のコスト関数を使用してもよい。
【０１１０】
［グローバルコスト関数］
図１１は、先述した２つの制約（部屋サイズの制約とアクセシビリティの制約）を使用してグローバルコストを計算する一例を示す。単一の制約を使用することが可能である一方で、ハードセグメンテーション仮説は、最小のコストを発見するように最適化することができる。最終的なハードセグメンテーション結果は、複数の制約を使用して改善することもできる。例えば、図１１に示すように、確率的セグメンテーションコスト関数データはステップ１１００で得られる。次に、部屋比率コスト関数データとアクセシビリティコスト関数データは、それぞれステップ１１０１及び１１０４で取得される。このデータは、先述した第１、第２、及び第３の実施形態におけるプロセスを実行することで取得される。図３の例では、ステップ３１１は、全てのハードセグメンテーション仮説ＨＳｎの中から、最小の部屋サイズコストの決定を模索する。
【０１１１】
部屋比率コスト関数データ及びアクセシビリティコスト関数データは、それぞれステップ１１０３及び１１０５でスケーリングされる。データをスケーリングする方法については、図９の記載を参照されたい。
【０１１２】
確率的セグメンテーションコスト、部屋サイズコスト、及びアクセシビリティコストのコスト関数データが取得され、必要に応じてスケーリングされると、ステップ１１０６に示すように、各コストを合算することにより、グローバルコスト関数が取得される。このグローバルコスト関数は、下記のように定義される。
【数６】
2019082979.tif 000008
【０１１３】
Ｃｇｌｏｂａｌはグローバルコストであり、ＨＳｎはハードセグメンテーション仮説であり、ＰＳは確率的セグメンテーションであり、ＯＣＲは光学文字認識の結果であり、λ１は第１のスケーリング因子であり、λ２は第２のスケーリング因子であり、λ３は第３のスケーリング因子である。スケーリング因子が不要であれば、λの値は単に１とすればよい。Ｃ（ＨＳｎ，ＰＳ）は、ＰＳを入力とした場合のＨＳｎの確度を評価するコスト関数である。Ｃ１（ＨＳｎ，ＯＣＲ）は、制約Ｃ１（即ち部屋サイズの一貫性）に反した場合にペナルティを課すコスト関数である。Ｃ２（ＨＳｎ，ＯＣＲ）は、制約Ｃ２（即ち部屋のアクセシビリティ）に反した場合にペナルティを課すコスト関数である。
【０１１４】
最終的には、下記及びステップ１１０７に示すように、最小グローバルコストを決定するために、最小のハードセグメンテーション値を求めるようにグローバルコスト関数が最適化される。例えば、最適化は、多数のハードセグメンテーション値について繰り返し、どのハードセグメンテーション値が最小コストを有するかを決定することによって実行される。この最小グローバルコストは、間取図画像の正確なセマンティック表現である可能性が最も高いセグメンテーション値を表す。
【０１１５】
［最適化］
図３のステップ３１３に記載したように、画素を個別にサンプリングして繰り返し処理を実行することができる。画素の連続性を保つ繰り返しを探索することもできるが、それは既に確率的セグメンテーションに組み込まれている。このプロセスは、最小のＨＳｎが見つかるまで繰り返すことが可能である。しかし、あらゆる可能なハードセグメンテーションを、画素ごとに繰り返すと、計算コストが非常に高くなる。本明細書で開示の実施形態においては、最適化プロセスにおけるハードセグメンテーションの無作為な反復サンプリングが使用される。
【０１１６】
本願の実施形態は、画像のセマンティックなセグメンテーションを行う従来型のＣＮＮシステムと比べて、計算コストの大幅な削減に成功している。例えば、ＣＮＮシステムの有効性は、平均精度、インターセクションオーバーユニオン、及びジャカード係数を含む複数の方法で測定可能である。上記の実施形態に依らずに、比較可能なセグメンテーション結果を得るには、ＣＮＮシステムの更なる実行時間が必要となるであろう。更なる実行時間は、当然のことながら、ＣＮＮシステムの訓練や訓練完了後のＣＮＮシステムによるセグメント化の対象となる画像の他に、ＣＮＮシステムの正確な構造に依存する。しかしながら、発明者は、上記実施形態に類似する結果を取得するために、ＣＮＮシステムの実行時間を更に５％から２０％増やす必要があることを予測している。
【０１１７】
本実施形態において、０．１２秒で画像をセグメント化できるとすれば、同実施形態に依存しないＣＮＮシステムは、同セグメント化に０．１２６秒から０．１４４秒かかると考えられる。計算コストも、同様に５％から２０％増大すると考えられる。計算コストとは、以下に列挙するものの何れか又は全てを意味する。例えば、ＣＰＵ又はＧＰＵによる更なる算術ステップ、更なるメモリの使用、更なるキャッシュの使用、更なる電力の使用、更なる時間の使用などである。
【０１１８】
図１３は、ハードセグメンテーション（ＨＳｎ）コスト値に関するコスト関数の最適化の一例を示す。ｙ軸は、低値から中値又は高値にわたる相対的なコストを示す。ｘ軸は、ハードセグメンテーションの繰り返し回数を示す。最適化の際、繰り返しによりコストが更に小さくなる場合に限り、コスト仮説を最小化するために、コストが再計算される。図１３は、図１２に記載の最適化アルゴリズムと併せて参照することで、更に理解が深まるであろう。
【０１１９】
図１２は、最適化アルゴリズムを示す。図１２は、最小コストを有するハードセグメンテーションを決定するために、ＣＮＮシステムに対する様々な制約を最適化するためのフローチャートの一例である。先述したように、これは画像画素のラベリングであって、エラーが最も少ないと思われるものである。処理画像が数十万から数百万の画素を含む場合、最小コストのセグメンテーションを決定するために、ありとあらゆる画素ラベリングを考慮に入れてハードセグメンテーションを計算すると、計算コストが非常に高くなってしまう。このため、疑似的なルーチンを開発した。
【０１２０】
例えば、ステップ５０１０において、ＣＮＮシステムに画像が入力される。ステップ５０２０において、入力画像に対し、確率的セグメンテーションが計算され、ステップ５０３０において、光学文字認識が実行される。これらのステップを実現する例については、先述した記載を参照されたい。次いで、ステップ５０４０において、最初のハードセグメンテーション仮説が生成される。
【０１２１】
この最初のハードセグメンテーション仮説は、図１３の０番目の繰り返しで示される単一の仮説であってもよいし、複数のハードセグメンテーション仮説よりなるセットであってもよい（簡略化のため不図示）。
【０１２２】
次いで、ステップ５０５０において、ハードセグメンテーションは繰り返され、複数のハードセグメンテーション仮説が生成される。ハードセグメンテーション仮説の数は、例えば、百、千、一万、又はそれより多くすることができる。図１３に示すように、簡略化のために、６つのハードセグメンテーション仮説だけを描いているが、通常は更に多数のハードセグメンテーション仮説が生成される。図１３においては、不図示のハードセグメンテーション仮説は、最も高いコストを有する仮説の更に上にあるため、説明の簡略化のために関連を持たないものとする。ハードセグメンテーション仮説は、その前のハードセグメンテーション仮説（利用可能であれば）と同様に、先述した確率的セグメンテーションと制約を使用して生成することができる。
【０１２３】
次いで、ステップ５０７０において、各ハードセグメンテーション仮説のコストが決定される。先述したように、数百以上のハードセグメンテーション仮説が存在することがあるので、これらのコストの全てが決定される。コストの決定に際しては、先述した方法を使用可能である。
【０１２４】
ステップ５０８０においては、コストが最も小さいＭ個の仮説が選択される。図１３における例では、Ｍの値は６である。このため、６つの最も小さいコストを持つハードセグメンテーション仮説が繰り返し回数１に示されている。このハードセグメンテーション仮説のグループは、関連するｍｉｎｃｏｓｔ（ｔ）を有する（ｔは繰り返し番号である）。ｍｉｎｃｏｓｔ（ｔ）は、時間ステップｔにおいて、全てのハードセグメンテーション仮説の中での最小のコスト値である。
【０１２５】
ステップ５０９０においては、ｍｉｎｃｏｓｔ（ｔ）は、ｍｉｎｃｏｓｔ（ｔ−１）と比較される。即ち、システムは、繰り返し番号に従ってコストが増加しているか減少しているかを判定する。コストが減少を続けているならば、ｍｉｎｃｏｓｔ（ｔ）は、ｍｉｎｃｏｓｔ（ｔ−１）はより小さくなり、システムは別の繰り返しを実行する。ｍｉｎｃｏｓｔ（ｔ）がｍｉｎｃｏｓｔ（ｔ−１）以上であれば、コスト関数の極小値又はそれに近い値が発見されたことになる。
【０１２６】
ｍｉｎｃｏｓｔ（ｔ）がｍｉｎｃｏｓｔ（ｔ−１）よりも小さい場合には、先述したように、システムは別の繰り返しを実行し、ステップ５０５０へと戻る。次の繰り返しにおいては、その前のイテレーションにおいて最小のコストを持っていた２つのハードセグメンテーション仮説が繰り返される。繰り返される仮説の数は、２より大きいことも小さいこともあるが、説明の簡略化のためには、２のような小さい数が適切である。
【０１２７】
ハードセグメンテーション仮説の繰り返しとは、１以上の画素に対する画素ラベルの変更及びコストの再計算を意味する。例えば、決定された部屋の境界近傍では、壁の画素ラベルは、部屋の画素ラベルに変更される可能性があり、ドアの画素ラベルは、壁の画素ラベルに変更されるかもしれない。実際には、多数の画素ラベルが各繰り返しにおいて変更される。コストは、先述した方法のうちの何れかによって計算可能である。先述したケースと同様、ステップ５０６０において、何百、何千、何万ものハードセグメンテーション仮説が生成され、ステップ５０７０において、これらのコストが計算される。ステップ５０８０においては、最も小さいコストを有するＭ個の仮説が選択され、ｍｉｎｃｏｓｔが決定される。ステップ５０９０において、ｍｉｎｃｏｓｔは以前のｍｉｎｃｏｓｔと比較され、コストが以前のｍｉｎｃｏｓｔに対して増加しているか減少しているかが判定される。
【０１２８】
先述したように、コストが減少していれば、同様にして更なる繰り返しが行われる。ハードセグメンテーション仮説１２２のように、コストが上昇していれば、ステップ５１００において、最小コストを有するハードセグメンテーション仮説１２０が出力される。
【０１２９】
他の実施形態においては、最小コストを決定する際の最終ステップにおいて、多数のハードセグメンテーション仮説が繰り返されるという特殊な最適化がなされることがある。このような例が、図１３のイテレーション４、５、及び６に示される。この実施形態では、Ｍ個のハードセグメンテーション仮説の一部に対してのみ繰り返す代わりに、最小コストを有する仮説を決定するために、Ｍ個のハードセグメンテーション仮説のそれぞれを繰り返してもよい。Ｍ個の仮説のそれぞれを繰り返す方法は、通常、計算コストを減少させるために、以前の実施形態の数回のイテレーションの後に行われる。
【０１３０】
［画像のセグメンテーション及び認識の応用］
本明細書の詳細な記述から分かることであるが、コンピュータビジョン画像処理は、画像特徴をセグメント化して抽出するために、膨大な量の計算処理を必要とするのが技術的な課題となっている。計算技術として効率的かつ精確なセグメンテーション及び画像特徴認識のプロセスとすることによって、本明細書に記載の実施形態は、技術的な解決策を提供する。このような利点は、画像のセグメンテーション及び特徴の認識の精度及び計算速度を向上させるものであり、制限なく応用することができる。この技術の多様な応用は、間取図画像の処理から把握できる。
【０１３１】
図１４は、第１の応用実施形態を示す。この実施形態においては、２次元間取図画像が処理システムに入力される。例えば、賃貸又は購入等の可能なアパートを広告する不動産関連の雑誌に間取図画像が掲載され、潜在的な買い手や借り手が当該間取図画像の３次元的な表示を望むかもしれない。本発明の応用実施形態においては、ユーザは、携帯電話のカメラや他のカメラによって関心のある間取図の写真を撮影するかもしれない。又は、ユーザが間取図画像をスキャンしたりウェブブラウザで画像を見たりすることがあるかもしれない。間取図の生画像データが取得されると、それは本明細書で開示の処理システムにアップロードされたり転送されたりする。本明細書で開示された、改良された画像のセグメンテーション及び認識技術に対するコスト関数によるアプローチ及び訓練されたＣＮＮを使用することで、生画像データは最小コスト（即ち、最高の精度）を有するハードセグメンテーションへと素早く解析され得る。
【０１３２】
壁画素が特定されると、壁画素の３次元レイヤがハードセグメンテーション画像データに追加／構築され、それにより間取図画像空間の３次元表示の実行及び当該画像のユーザへの返送が可能になる。３次元表示が構築されると、視覚的に歩き回ることを可能にする標準的な流し撮り及びスクロールなどが可能になる。
【０１３３】
一実施形態においては、バックエンドサーバが処理を実行し、入力画像及び出力画像をユーザのコンピュータや携帯電話に比較的に短時間に届けることが可能になる。他の実施形態においては、処理は、ユーザのコンピュータ、携帯電話、又は他のモバイル通信機器において実行することができる。
【０１３４】
図１５は、第２の応用実施形態を示す。この実施形態は、図１４に関連する記載に基づいている。ここで、ユーザはシステムの写真を撮ったり、システムに他の入力（例えば、ユーザが３次元空間内で見たい家具又は家具の寸法）を提供したりすることもできる。例えば、ユーザは、自分の長椅子が戸口及び／又は廊下を通り抜けることができるかを判定したり、決定された間取プランの部屋に対する長椅子の相対的なサイズ知りたいと考えたりすることもある。ユーザは、提供された家具の画像集の中から、自身の所望する家具に近い大きさの家具の画像を選んでもよい。又は、間取図画像と同様にユーザの家具の画像を処理し、画像画素から家具サイズを推定する画像処理ルーチンが含まれていてもよい。例えば、このデータは、ユーザによって設けられた画像処理アカウントと関連付けられて記憶されてもよい。興味のある対象間取図画像の３次元レンダリングが生成されると、ユーザは、本物の家具画像を追加して、３次元の処理画像空間内において家具の配置を色々試してよい。
【０１３５】
本明細書で開示の技術を利用する上記の実際的な応用例は、説明を目的とするものであり、網羅的な性質を有さない。当業者であれば、他の応用例にも想到するであろう。
【０１３６】
［ハードウェア］
図１５は、本発明の改良されたセグメンテーションデバイスを動かすことのできるデバイスの例である。改良されたセグメンテーションデバイスはコンピュータ、モバイルデバイス、若しくは他のいかなる処理プラットフォーム上にも実装できる。当該改良されたセグメンテーションデバイスはウェブブラウザ、携帯電話アプリ、大規模ネットワーク、等において動作することができる。
【０１３７】
図１５は、本明細書で開示の画像を解析するために採用された当該改良されたセグメンテーションデバイスの様々なコンピュータ機器を実装するのに使用可能な、計算デバイス１５１０の例示構成要素の図である。
【０１３８】
さまざまな計算デバイスが、クライアントとして、或いは単一若しくは複数のサーバとして、本明細書で開示のシステムと方法の実装に使用されてもよい。計算デバイスとの語は、デジタルコンピュータの様々な形態、例えばノート型パソコン、デスクトップパソコン、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、その他の適切なコンピュータを表現するのに使用される。その他の計算デバイスとしては、様々な形態の携帯デバイス、例えば携帯情報端末、携帯電話、スマートフォン、及び他の類似の計算デバイスが含まれる。上記のコンポーネントについては、それらの接続や互いの関係、及びそれらの機能は単なる例示であり、本明細書や特許請求の範囲で記載され、及び／又は権利主張される本発明の実施形態を限定するものではない。
【０１３９】
計算デバイス１５１０の各構成物品は様々なバスを使用して相互接続されるが、共通基板への搭載又は他の適切な方法によりなされてよい。プロセッサは、計算デバイス内部における実行の処理についての指示（ディスプレイ上に画像情報を表示するためにメモリ又は記憶装置に記憶される指示を含む指示を含む）を行ってもよい。計算デバイス１５１０上の改良されたセグメンテーションデバイスの出力は、ディスプレイ上に表示されたり、他の計算デバイスに送信されたり、３次元レンダリングに使用されたり、他の装置で使用されたりしてよい。他の実施形態においては、複数のメモリや複数のタイプのメモリとともに、複数のプロセッサ及び／又は複数のバスが適宜使用されてよい。また、複数の計算デバイスが相互に接続され、各デバイスが、必要な処理の一部を提供する（例えばサーババンク、ブレードサーバのグループ、マルチプロセッサシステムなどとして）こととしても良い。
【０１４０】
プロセッサは、複数の個別のアナログ／デジタルプロセッサを含むチップのチップセットとして実装されてよい。加えて、プロセッサは数種類のアーキテクチャのうちのいずれを用いて実装されてもよい。例えば、プロセッサは、ｘ８６プロセッサ、ＲＩＳＣ（Reduced Instruction Set Computer：縮小指示セットコンピュータ）プロセッサとしてよい。プロセッサは当該デバイスの他の構成要素、例えばユーザインターフェースの制御部、当該デバイスで実行されるアプリ、及び無線通信と協調して動いてもよい。複数のプロセッサや、マルチコアプロセッサを使用してもよい。
【０１４１】
プロセッサは操作インターフェースと、ディスプレイと結びついた表示インターフェースとを通じ、ユーザと通信しても良い。ディスプレイは、例えばＬＥＤディスプレイ若しくは他の適切なディスプレイ技術に係るものとすることができる。表示インターフェースは画像情報やその他の情報をユーザに表示するディスプレイを稼働するために適した回路を含んでもよい。操作インターフェースはユーザからの指示を受信し、それらをプロセッサに送るために変換してもよい。加えて、他のデバイスとの近距離無線通信を可能にするために、プロセッサと通信状態にある外部インターフェースを設けてもよい。外部インターフェースは、例えば無線及び／又は有線の通信を提供してもよい。また、複数のインターフェースが用いられてもよい。
【０１４２】
大規模な並列処理能力を備えたコンピュータシステム、例えばＧＰＵ（Graphics Processing Unit）などは単一のプロセッサよりずっと早く動作する傾向がある。ＧＰＵは以下でより詳細に論ずる。
【０１４３】
特に、画像処理アプリにおいては、ＣＰＵよりも強力な計算機能を持つＧＰＵが使用されてもよい。実施に際しては、数十、数百、数千のＧＰＵのセットが、大規模な情報をより素早く計算するために使用されてよい。ＧＰＵは通常、プロセッサと共有メモリを含む。それぞれのプロセッサは共有メモリから効率的にデータを取得し、共通プログラムを実行することで算術処理を行う。使用可能なＧＰＵの例は、ＧｅＦｏｒｃｅ  １０８０  ＧＰＵである。
【０１４４】
複数の計算ユニット１５１０Ａ，１５１０Ｂ，１５１０Ｃ，及び１５１０Ｄが図示されている。改良されたセグメンテーションデバイスはこの構成に限定される訳ではなく、単一のコンピュータや多数のコンピュータであってもよい。同様に、改良されたセグメンテーションデバイスは、複数の並列ＣＰＵ若しくは複数の並列ＧＰＵ、若しくはこれらの組み合わせを含んでもよい。改良されたセグメンテーションデバイス１５００はＣＰＵ１５２０、メモリ１５５０、通信ユニット１５３０、並列計算デバイス１５６０、およびバス１５４０を含む。改良されたセグメンテーションデバイス１５００は、画像の形式若しくは恐らくは各画素のセマンティックな決定の形式を取ることが可能なセグメンテーション結果を出力するディスプレイ（不図示）を有してもよい。
【０１４５】
改良されたセグメンテーションデバイス１５５０への入力は、パソコン、サーバ、又は他の計算デバイス１５９０によってなされてよい。
【０１４６】
ＣＰＵ１５２０はメモリ１５５０に記憶されたプログラムに従って動作する。ＣＰＵ１５２０は通信ユニット１５３０及び並列計算デバイス１５６０を制御する。プログラムは、例えばインターネット等のネットワーク１５８０を通じて供給されてもよいし、ＤＶＤ−ＲＯＭ又はＵＳＢメモリ等のコンピュータ読み取り可能な情報記憶媒体に記憶される形で供給されてもよい。
【０１４７】
メモリ１５５０は、例えば、ＲＡＭ又はＲＯＭ、及びハードディスクドライブ等のメモリ機器を含む。メモリ１５５０はプログラムを記憶する。また、メモリは各ユニットから入力された情報又は計算結果も記憶する。
【０１４８】
通信ユニット１５３０は、ウェブサーバ又は他のコンピュータと言った他のデバイスと通信するように構成されたネットワークカードであってもよい。通信ユニット１５３０はＣＰＵ１５２０の制御に基づき、他のデバイスから受信した情報をＣＰＵ１５２０又はメモリ１５５０に入力し、当該情報を他の機器へと送信する。
【０１４９】
バス１５４０は、ＣＰＵ１５２０，メモリ１５５０、通信ユニット１５３０、及び並列計算デバイス１５６０との間でデータを送受信するよう構成されている。例えば、ＣＰＵ１５２０又はメモリ１５５０は、バス１５４０内の拡張バスを通じて並列計算デバイス１５６０へと接続されている。
【０１５０】
並列計算デバイス１５６０は、並列計算によって、同種の計算を大量に行うことを得意とするハードウェアである。並列計算デバイス１５６０は、例えばＧＰＵである。並列計算デバイス１５６０は、並列プロセッサユニット及びデバイス備え付け（in-device）メモリを含む。各並列実行ユニットは、例えば複数のプロセッサ、指示ユニット、及び高速メモリを含む。
【０１５１】
各並列プロセッサは、浮動小数点演算とデータの読み書きをデバイス備え付けメモリ及び高速メモリとともに行う。指示ユニットは、指示ユニットを含む並列実行ユニットに含まれる並列プロセッサに、デバイス備え付けメモリ等に記憶されたプログラムに基づく処理を行わせる。並列実行ユニットの１つに含まれる並列プロセッサは、そのような並列実行ユニットに含まれる指示ユニットからの指示に従って、同一の指示を処理する。この方法によると、複数の並列プロセッサを１つの指示ユニットによって制御することができ、そのことによって指示ユニットの回路サイズの増大を抑えることができる。このように、ＣＰＵ１５２０の場合に比して、並列計算デバイス１５６０に含まれる並列プロセッサの数を増やすことができる。
【０１５２】
デバイス備え付けメモリはＤＲＡＭによって構成されてよい。デバイス備え付けメモリは、バス１５４０を通じてＣＰＵ１５２０及びメモリ１５５０に接続される。並列計算デバイス１５６０も、ＤＭＡ転送によって、デバイス備え付けメモリとメモリ１５５０との間でデータの転送をするための回路を含む。高速メモリは、例えば、デバイス備え付けメモリよりも高速なアクセスが可能なＳＲＡＭより構成される。デバイス備え付けメモリ及び高速メモリのそれぞれは、ＧＰＵ１５６０の並列プロセッサからアクセス可能な共有メモリである。
【０１５３】
ブロック図やフローチャートは、処理の中の特定の論理関数やステップを実行するための１以上の実行可能な指示を含む、コードのモジュール、セグメント、又は部分を表す処理のステップやブロックを描いている。特定の例は特定の処理ステップや手続を表しているが、これらに代わる多くの実装も可能である。ある処理ステップは、例えば機能、目的、規格への適合、レガシー構造、ユーザインターフェースの設計等に対する考慮に基づき、本明細書での具体的記載とは異なる順序で実行されてよい。
【０１５４】
本発明の実施形態を多く記述した。本発明の範囲や要旨から逸脱せずに、様々な修正を加えてよいことが理解されるべきである。例えば、上で記載したフローは、ステップの順序変更、追加、又は削除により、様々な形態で使用されてよい。また、遠隔端末や携帯デバイスの使用を認める複数の実施形態を記載したが、これとは異なる多数の応用が予想されることが認識されるべきである。従って、他の実施形態も特許請求の範囲に包含される。
【図１】
2019082979.tif 000010
【図２Ａ】
2019082979.tif 000011
【図２Ｂ】
2019082979.tif 000012
【図２Ｃ】
2019082979.tif 000013
【図２Ｄ】
2019082979.tif 000014
【図２Ｅ】
2019082979.tif 000015
【図３】
2019082979.tif 000016
【図４】
2019082979.tif 000017
【図５Ａ】
2019082979.tif 000018
【図５Ｂ】
2019082979.tif 000019
【図５Ｃ】
2019082979.tif 000020
【図６】
2019082979.tif 000021
【図７Ａ】
2019082979.tif 000022
【図７Ｂ】
2019082979.tif 000023
【図７Ｃ】
2019082979.tif 000024
【図８】
2019082979.tif 000025
【図９】
2019082979.tif 000026
【図１０】
2019082979.tif 000027
【図１１】
2019082979.tif 000028
【図１２】
2019082979.tif 000029
【図１３】
2019082979.tif 000030
【図１４】
2019082979.tif 000031
【図１５】
2019082979.tif 000032
【図１６】
2019082979.tif 000033
【外国語明細書】
2019082979000001.pdf