(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023057017
(43)【公開日】2023-04-20
(54)【発明の名称】3次元仮想モデルを提供するためのホールフィリング方法及びそのためのコンピューティング装置
(51)【国際特許分類】
G06T 7/00 20170101AFI20230413BHJP
G06N 3/08 20230101ALI20230413BHJP
【FI】
G06T7/00 350C
G06N3/08
【審査請求】有
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2022117057
(22)【出願日】2022-07-22
(31)【優先権主張番号】10-2021-0134224
(32)【優先日】2021-10-08
(33)【優先権主張国・地域又は機関】KR
(71)【出願人】
【識別番号】519263110
【氏名又は名称】3アイ インコーポレイテッド
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】キム ケン
(72)【発明者】
【氏名】チョン チ ウク
(72)【発明者】
【氏名】フダエベルガノフ、ファルハド ロスタム アグリ
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA02
5L096AA06
5L096CA05
5L096FA66
5L096FA69
5L096GA30
5L096HA11
5L096KA04
(57)【要約】
【課題】室内空間に対する3次元仮想モデルを提供するためのホールフィリング技術を提供する。
【解決手段】本出願の一技術的側面にともなう3次元仮想モデルを提供するためのホールフィリング方法は、コンピューティング装置で実行可能な方法であって、オリジナル学習イメージとそれに対するホール生成学習イメージ(前記ホール生成学習イメージは、前記オリジナル学習イメージに基づいて少なくとも1つのホールが生成されたイメージである)を取得する動作と、ニューラルネットワークを用いて前記ホール生成学習イメージに対してホールフィリングを実行しホールフィリング学習イメージを生成する動作と、それぞれの前記ホールフィリング学習イメージと前記オリジナル学習イメージ対して球形変換を行う動作と、球形変換されたホールフィリング学習イメージと球形変換されたオリジナル学習イメージとの間の差に基づいて、前記ニューラルネットワークをトレーニングする動作を含む。
【選択図】
図3
【特許請求の範囲】
【請求項1】
コンピューティング装置で実行可能な方法であって、
オリジナル学習イメージとそれに対するホール生成学習イメージ(前記ホール生成学習イメージは、前記オリジナル学習イメージに基づいて少なくとも1つのホールが生成されたイメージである)を取得する動作と、
ニューラルネットワークを用いて前記ホール生成学習イメージに対してホールフィリングを実行しホールフィリング学習イメージを生成する動作と、
前記ホールフィリング学習イメージと前記オリジナル学習イメージそれぞれに対して球形変換を行う動作と、
球形変換されたホールフィリング学習イメージと球形変換されたオリジナル学習イメージとの間の差に基づいて、前記ニューラルネットワークをトレーニングする動作と、
を含む、3次元仮想モデルを提供するためのホールフィリング方法。
【請求項2】
前記ホールフィリング方法は、
質疑イメージが入力される動作と、
トレーニングされた前記ニューラルネットワークに前記質疑イメージを入力し、前記ニューラルネットワークから出力されたホールフィリングイメージを前記質疑イメージに対する応答イメージとして出力する動作と、
をさらに含む、請求項1に記載の3次元仮想モデルを提供するためのホールフィリング方法。
【請求項3】
前記ホール生成学習イメージを取得する動作は、
前記オリジナル学習イメージを取得する動作と、
前記オリジナル学習イメージの上部領域又は下部領域に任意のホールを生成して前記ホール生成学習イメージを生成する動作と、
を含む、請求項1に記載の3次元仮想モデルを提供するためのホールフィリング方法。
【請求項4】
前記ホール生成学習イメージを取得する動作は、
前記オリジナル学習イメージを取得する動作と、
前記オリジナル学習イメージのランダムな位置に予め設定された大きさ以下のホールを生成して前記ホール生成学習イメージを生成する動作と、
を含む、請求項1に記載の3次元仮想モデルを提供するためのホールフィリング方法。
【請求項5】
前記ニューラルネットワークをトレーニングする動作は、
球形変換されたホールフィリング学習イメージと球形変換されたオリジナル学習イメージとの間のロスを決定する動作と、
決定されたロスに対応して、前記ニューラルネットワークの媒介変数を変更して前記ニューラルネットワークをトレーニングする動作と、
を含む、請求項1に記載の3次元仮想モデルを提供するためのホールフィリング方法。
【請求項6】
前記オリジナル学習イメージは、色イメージ又は深度マップイメージのいずれか1つである、請求項1に記載の3次元仮想モデルを提供するためのホールフィリング方法。
【請求項7】
前記オリジナル学習イメージは正距円筒図法で投影されたパノラマイメージである、請求項1に記載の3次元仮想モデルを提供するためのホールフィリング方法。
【請求項8】
コンピューティング装置であって、
1つ以上の命令を格納するメモリと、
前記メモリに格納された前記1つ以上の命令を実行するプロセッサと、
を含み、
前記プロセッサは、前記1つ以上の命令を実行することによって、
オリジナル学習イメージとそれに対するホール生成学習イメージ(前記ホール生成学習イメージは、前記オリジナル学習イメージに基づいて少なくとも1つのホールが生成されたイメージである)を取得し、
ニューラルネットワークを用いて前記ホール生成学習イメージに対してホールフィリングを実行しホールフィリング学習イメージを生成し、
前記ホールフィリング学習イメージと前記オリジナル学習イメージそれぞれに対して球形変換を実行し、
球形変換されたホールフィリング学習イメージと球形変換されたオリジナル学習イメージとの間の差に基づいて、前記ニューラルネットワークをトレーニングする、コンピューティング装置。
【請求項9】
前記プロセッサは、前記1つ以上の命令を実行することによって、
トレーニングされた前記ニューラルネットワークに質疑イメージを入力し、前記ニューラルネットワークから出力されたホールフィリングイメージを前記質疑イメージに対する応答イメージとして出力する、請求項8に記載のコンピューティング装置。
【請求項10】
前記プロセッサは、前記1つ以上の命令を実行することによって、前記オリジナル学習イメージの上部領域又は下部領域に任意のホールを生成して前記ホール生成学習イメージを生成する、請求項8に記載のコンピューティング装置。
【請求項11】
前記プロセッサは、前記1つ以上の命令を実行することによって、前記オリジナル学習イメージのランダムな位置に予め設定された大きさ以下のホールを生成して前記ホール生成学習イメージを生成する動作を含む、請求項8に記載のコンピューティング装置。
【請求項12】
前記プロセッサは、前記1つ以上の命令を実行することによって、
球形変換されたホールフィリング学習イメージと球形変換されたオリジナル学習イメージとの間のロスを決定し、
決定されたロスに対応して、前記ニューラルネットワークの媒介変数を変更して前記ニューラルネットワークをトレーニングする、請求項8に記載のコンピューティング装置。
【請求項13】
前記プロセッサは、前記1つ以上の命令を実行することによって、
球形変換されたホールフィリング学習イメージと球形変換されたオリジナル学習イメージとの間のロスを決定し、
決定されたロスに対応して、前記ニューラルネットワークの媒介変数を変更して前記ニューラルネットワークをトレーニングする、請求項8に記載のコンピューティング装置。
【請求項14】
前記プロセッサは、
色イメージを対象に第1ニューラルネットワークを学習し、前記第1ニューラルネットワークを用いてホールフィリング色イメージを生成する第1モジュールと、
深度マップイメージを対象に第2ニューラルネットワークを学習し、前記第2ニューラルネットワークを用いてホールフィリング深度マップイメージを生成する第2モジュールと、
を含む、請求項8に記載のコンピューティング装置。
【請求項15】
コンピュータで読み出し可能な命令を格納している格納媒体であって、
前記命令は、コンピューティング装置によって実行されるとき、前記コンピューティング装置は、
オリジナル学習イメージとそれに対するホール生成学習イメージ(前記ホール生成学習イメージは、前記オリジナル学習イメージに基づいて少なくとも1つのホールが生成されたイメージである)を取得する動作と、
ニューラルネットワークを用いて前記ホール生成学習イメージに対してホールフィリングを実行しホールフィリング学習イメージを生成する動作と、
前記ホールフィリング学習イメージと前記オリジナル学習イメージそれぞれに対して球形変換を行う動作と、
球形変換されたホールフィリング学習イメージと球形変換されたオリジナル学習イメージとの間の差に基づいて、前記ニューラルネットワークをトレーニングする動作と、
を実行する、格納媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、室内空間に対する3次元仮想モデルを提供するためのホールフィリング技術に関する。
【背景技術】
【0002】
近来になってリアルな空間に対応するオンライン上の仮想空間が提供されることで、ユーザが直接にリアルな空間に訪問しなくてもリアルな空間にいるような体験が可能な仮想空間の実現技術が開発されている。
【0003】
このような現実空間基盤の仮想技術は、デジタルツイン又はメタバス(metaverse)を実現するための技術として、様々な開発が行われている。
【0004】
このような仮想空間を実現するためには、実現しようとするリアルな空間を対象に撮影された平面イメージを取得し、これに基づいて立体的な仮想イメージ、即ち、3次元モデルを生成して仮想空間を提供する過程が必要である。
【0005】
このような3次元モデルは、室内空間の内部で撮影されたデータに基づいて生成される。このような場合、3次元モデルを構成するために室内空間の各地点で360度全方向にデータを確保しなければならないため、全方向イメージを取得するために多角カメラ装置などの特殊な装備を利用しなければならないという限界がある。
【0006】
また、行人などの意図のない被写体によるノイズ空間が発生し、このようなノイズ空間を除去する場合、3次元モデルにデータが空いているホールが発生するという問題がある。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】米国登録特許公報第10、290、085号
【発明の概要】
【発明が解決しようとする課題】
【0008】
本出願の一技術的な側面は、前記従来技術の問題点を解決するためのもので、本出願に開示されている一実施形態によると、3次元仮想モデルを構成するために使用されるパノラマイメージ自体に対してホールフィリングを行うことを目的とする。
【0009】
本出願に開示される一実施形態によると、球形変換された状態を反映してトレーニングすることで、パノラマイメージに対するホールフィリングが3次元仮想モデルにおいて使用されるとき、さらに正確に満たされるようにすることを目的とする。
【0010】
本出願に開示される一実施形態によると、実存する室内空間に対する3次元仮想モデルを構成することにおいて、人などの不要なオブジェクトを削除した場合でも、それによって発生したホールを効率かつ正確に充填することを目的とする。
【0011】
本出願の課題は以上で言及した課題に制限されず、言及されない他の課題は、下記の記載によって当業者に明確に理解できるものである。
【課題を解決するための手段】
【0012】
本出願の一技術的な側面は、3次元仮想モデルを提供するためのホールフィリング方法を提案する。前記3次元仮想モデルを提供するためのホールフィリング方法は、コンピューティング装置で実行可能な方法であって、オリジナル学習イメージとそれに対するホール生成学習イメージ(前記ホール生成学習イメージは、前記オリジナル学習イメージに基づいて少なくとも1つのホールが生成されたイメージである)を取得する動作と、ニューラルネットワークを用いて前記ホール生成学習イメージに対してホールフィリングを実行しホールフィリング学習イメージを生成する動作と、前記ホールフィリング学習イメージと前記オリジナル学習イメージそれぞれに対して球形変換を行う動作と、球形変換されたホールフィリング学習イメージと球形変換されたオリジナル学習イメージとの間の差に基づいて、前記ニューラルネットワークをトレーニングする動作とを含むことができる。
【0013】
本出願の他の一技術的な側面は、コンピューティング装置を提案する。前記コンピューティング装置は、1つ以上の命令を格納するメモリと、前記メモリに格納された前記1つ以上の命令を実行するプロセッサとを含み、前記プロセッサは、前記1つ以上の命令を実行することによって、オリジナル学習イメージとそれに対するホール生成学習イメージ(前記ホール生成学習イメージは、前記オリジナル学習イメージに基づいて少なくとも1つのホールが生成されたイメージである)を取得し、ニューラルネットワークを用いて前記ホール生成学習イメージに対してホールフィリングを実行しホールフィリング学習イメージを生成し、前記ホールフィリング学習イメージと前記オリジナル学習イメージそれぞれに対して球形変換を実行し、球形変換されたホールフィリング学習イメージと球形変換されたオリジナル学習イメージとの間の差に基づいて、前記ニューラルネットワークをトレーニングすることができる。
【0014】
本出願の他の一技術的な側面は、格納媒体を提案する。前記格納媒体は、コンピュータで読み出し可能な命令を格納している格納媒体である。前記命令は、コンピューティング装置によって実行されるとき、前記コンピューティング装置は、オリジナル学習イメージとそれに対するホール生成学習イメージ(前記ホール生成学習イメージは、前記オリジナル学習イメージに基づいて少なくとも1つのホールが生成されたイメージである)を取得する動作と、ニューラルネットワークを用いて前記ホール生成学習イメージに対してホールフィリングを実行しホールフィリング学習イメージを生成する動作と、前記ホールフィリング学習イメージと前記オリジナル学習イメージそれぞれに対して球形変換を行う動作と、球形変換されたホールフィリング学習イメージと球形変換されたオリジナル学習イメージとの間の差に基づいて、前記ニューラルネットワークをトレーニングする動作とを実行することができる。
【0015】
前記課題の解決手段は、本出願の特徴をて列挙するものではない。本出願の課題解決のための様々な手段は、以下の詳細な説明の具体的な実施形態を参照し、さらに詳細に理解されるのであろう。
【発明の効果】
【0016】
本出願によると、次のような効果が1つあるいはそれ以上ある。
【0017】
本出願に開示される一実施形態によると、3次元仮想モデルを構成するために使用されるパノラマイメージ自体に対してホールフィリングを提供できる効果がある。
【0018】
本出願に開示される一実施形態によると、球形変換された状態を反映してトレーニングすることで、パノラマイメージに対するホールフィリングが3次元仮想モデルにおいて使用されるとき、さらに正確に満たされる効果がある。
【0019】
本出願に開示される一実施形態によると、実存する室内空間に対する3次元仮想モデルを構成することにおいて、人など不要なオブジェクトを削除した場合でも、それによって発生したホールを効率かつ正確に満たし得る効果がある。
【0020】
本出願に開示される一実施形態によると、ニューラルネットワークの学習のために使用されるロス(Loss)を算出することにおいて、複数の関数を組み合せて使用することで、ロス範囲を最小限に減少させ得る効果がある。
【0021】
本出願の効果は、以上で言及した効果に制限されず、言及されない更なる効果は、請求範囲の記載から当業者にとって明確に理解できるものである。
【図面の簡単な説明】
【0022】
【
図1】本出願に開示される一実施形態に係る3次元仮想モデルを提供するためのホールフィリング方法を提供するシステムを説明するための1つの例示図である。
【
図2】本出願に開示される一実施形態に係る3次元仮想モデル構築のための室内空間に対するイメージ取得技術の一例を示す図である。
【
図3】本出願に開示される一実施形態に係るホールフィリングを行うソフトウェアモジュールのアーキテクチャーを示す図である。
【
図4】本出願に開示される一実施形態に係る3次元仮想モデルを提供するためのホールフィリング過程を説明するフローチャートである。
【
図5】本出願に開示される一実施形態に係るホール生成学習イメージの生成過程を説明するフローチャートである。
【
図6】本出願に開示される異なる一実施形態に係るホール生成学習イメージの生成過程を説明するフローチャートである。
【
図7】本出願に開示される一実施形態に係るホール生成学習イメージ生成の例示を示す図である。
【
図8】本出願に開示される一実施形態に係るホール生成学習イメージ生成の例示を示す図である。
【
図9】本出願に開示される一実施形態に係るホール生成学習イメージ生成の例示を示す図である。
【
図10】本出願に開示される一実施形態に係るニューラルネットワークのトレーニングを行うソフトウェアモジュールのアーキテクチャーを示す図である。
【
図11】本出願に開示される一実施形態に係るホールフィリングのためのニューラルネットワークのトレーニング過程を説明するフローチャートである。
【
図12】本出願に開示される一実施形態に係るニューラルネットワークのトレーニングのためのロス算出過程を説明するフローチャートである。
【
図13】本出願に開示される異なる一実施形態に係るホールフィリングを行うソフトウェアモジュールのアーキテクチャーを示す図である。
【
図14A】本出願に開示される一実施形態に係るホールフィリング前の深度マップイメージとホールフィリング以後の深度マップイメージとを比較して例示する図である。
【
図14B】本出願に開示される一実施形態に係るホールフィリング前の深度マップイメージとホールフィリング以後の深度マップイメージとを比較して例示する図である。
【
図15】本出願に開示される一実施形態に係るコンピューティング装置を説明するブロック構成図である。
【発明を実施するための形態】
【0023】
以下、添付する図面を参照しながら本出願の好ましい実施形態を説明する。
【0024】
しかし、これは特定の実施形態に対して範囲を限定しようとするものではなく、本開示の実施形態の様々な変更(modifications)、均等物(equivalents)、及び/又は代替物(alternatives)を含むものとして理解されなければならない
【0025】
本開示の説明において、関連する公知機能あるいは構成に対する具体的な説明が本開示の要旨を不要に曖昧にすると判断される場合、それに対する詳細な説明は省略する。
【0026】
本開示で用いた用語は、単に特定の実施形態を説明するために使用されたものであり、権利範囲を限定しようとする意図はない。単数の表現は、文脈上、明白に異なるように意味しない限り、複数の表現を含む。
【0027】
本開示において、「有する」、「有することができる」、「含む」、又は「含むことができる」などの表現は、該当特徴(例えば、数値、機能、動作、又は、部品などの構成要素)の存在を示し、追加的な特徴の存在を排除しない。
【0028】
図面の説明に関連して、類似又は関連する構成要素に対しては、同様の参照符号が使用され得る。アイテムに対応する名詞の単数型は関連する文脈上、明白に異なるように指示しない限り、前記アイテム1つ又は複数を含む。本出願において、「A又はB」、「A及びBのうち少なくとも1つ」、「A又はBのうち少なくとも1つ」、「A、B又はC」、「A、B及びCのうち少なくとも1つ」、及び「A、B、又は、Cのうち少なくとも1つ」のような文句のそれぞれは、その文句のうち該当する文句に共に羅列された項目のいずれか1つ、又は、それらの全ての可能な組み合せを含む。
【0029】
「第1」、「第2」、又は「最初」又は「2番目」のような用語は、単に当該構成要素を他の当該構成要素と区分するために使用され、当該構成要素を他の側面(例えば、重要性又は順序)に限定することはない。
【0030】
いずれかの(例えば、第1)構成要素が他の(例えば、第2)構成要素に、「機能的に」又は「通信的に」という用語と共に、又は、このような用語なしに、「カップルされた」、「コネクテッドされた」又は「接続された」と言及された場合、それは、前記いずれかの構成要素が前記他の構成要素に直接的、又は、第3構成要素を介して接続され得ることを意味する。
【0031】
本開示で使用されている表現「~するように構成された(又は、設定された)(configured to)」は、状況に応じて、例えば、「~に適切な(suitable for)」、「~する能力を有する(having the capacity to)」、「~するように設計された(designed to)」、「~するように変更された(adapted to)」、「~するように作られた(made to)」、又は「~をすることができる(capable of)」に変えて使用されることができる。用語「~するように構成された(又は、設定された)」は、ハードウェア的に「特別に設計された(specifically designed to)」ものを必ず意味するものではない。
【0032】
代わりに、ある状況では、「~するように構成された装置」という表現は、その装置が他の装置又は部品と共に「~できる」ことを意味する。例えば、文句”A、B、及びCを行うように構成された(又は設定された)プロセッサ”は、該当動作を行うための専用プロセッサ(例えば、エンベデッドプロセッサ)、又は、メモリ装置に格納された1つ以上のソフトウェアプログラムを実行することで、該当動作を行う汎用プロセッサ(generic-purpose processor)(例えば、CPU又はapplication processor)を意味する。
【0033】
実施形態において「モジュール」あるいは「部」は、少なくとも1つの機能や動作を実行し、ハードウェア又はソフトウェアで具現されたりハードウェアとソフトウェアの組み合わせで実現されることができる。また、複数の「モジュール」あるいは複数の「部」は、特定のハードウェアで実現される必要のある「モジュール」あるいは「部」を除いては、少なくとも1つのモジュールに一体化して少なくとも1つのプロセッサで実現できる。
【0034】
本出願の様々な実施形態は機器(machine)(例えば、ユーザ端末100やコンピューティング装置300)によって読込み可能な格納媒体に格納された1つ以上の命令語を含むソフトウェア(例えば、プログラム)として実現できる。例えば、プロセッサ301は、格納媒体から格納された1つ以上の命令語のうち少なくとも1つの命令を呼び出し、それを実行することができる。これは、装置が前記呼び出された少なくとも1つの命令語に応じて、少なくとも1つの機能を行うように運営されることを可能にする。前記1つ以上の命令語は、コンパイラによって生成されたコード又はインタープリタによって実行され得るコードを含む。機器で読込み可能な格納媒体は、非一時的に格納媒体の形態に提供されることができる。ここで、「非一時的」とは、格納媒体が実在(tangible)する装置であり、信号(例えば、電磁波)を含まないことを意味するだけであって、この用語は、データが格納媒体に半永久的に格納される場合と臨時的に格納される場合とを区分しない。
【0035】
本出願の実施形態を説明するために様々なフローチャートが開示されているが、これは各ステップ又は動作の説明の便宜のためのもため、必ずフローチャートの順序に応じて各ステップが実行されることはない。即ち、フローチャートにおける各ステップは、互いに同時に実行されたり、フローチャートによる順に実行されたり、又は、フローチャートにおける順と反対の順に実行されてもよい。
【0036】
図1は、本出願に開示される一実施形態に係る3次元仮想モデルを提供するためのホールフィリング方法を提供するシステムを説明するための1つの例示図である。
【0037】
3次元仮想モデルを提供するためのホールフィリング方法を提供するシステムは、ユーザ端末100、イメージ取得装置200、及びコンピューティング装置300を含む。
【0038】
ユーザ端末100は、ユーザがコンピューティング装置300にアクセスするために使用可能な電子機器として、例えば、携帯電話、スマートフォン(smart phone)、ノート型パソコン(laptop computer)、デジタル放送用端末、PDA(personal digital assistants)、PMP(portable multimedia player)、ナビゲーション、パーソナルコンピュータ(PC)、タブレットPC(tablet PC)、ウルトラブック(ultrabook)、ウェアラブルデバイス(wearable device、例えば、ウォッチ型端末(smartwatch)、グラス型端末(smart glass)、HMD(head mounted display))などを包括する。しかし、その他にも、ユーザ端末100は、VR(Virtual Reality)、AR(Augmented Reality)に使用される電子機器を含む。
【0039】
イメージ取得装置200は、球形仮想イメージを生成するために使用される、色イメージ及び深度マップイメージを生成する装置である。
【0040】
図示された例において、イメージ取得装置200は、距離測定装置211及び撮像装置212に区分して図示されているが、これは例示的なものであり、1つのイメージ取得装置200を用いて距離測定及び撮像を行ってもよい。
【0041】
撮像装置212は、撮影機能を有する携帯用電子機器として、被写領域(撮像領域)に対して色で表現される色イメージを生成する。
【0042】
即ち、本出願明細書において、色イメージは、色で表現されるイメージを全て包括するものであり、特定の表現方式に制限されない。従って、色イメージは、RGB(Red Green Blue)に表現されるRFGイメージだけでなく、CMYK(Cyan Magenta Yellow Key)に表現されるCMYKイメージなどの様々な標準に適用可能である。
撮像装置212は、例えば、携帯電話、スマートフォン(smart phone)、ノート型パソコン(laptop computer)、PDA(personal digital assistants)、タブレットPC(tablet PC)、ウルトラブック(ultrabook)、ウェアラブル撮影デバイス(wearable device、例えば、グラス型端末(smart glass))などであってもよい。
【0043】
距離測定装置211は、被写領域に対して深度情報を生成して深度マップイメージを生成できる装置である。
【0044】
本出願明細書において、深度マップイメージは、被写空間に対して深度情報を含むイメージである。例えば、深度マップイメージにおける各ピクセルは、撮像地点で撮影された被写空間の各地点(各ピクセルに対応する地点)までの距離情報である。
【0045】
距離測定装置211は、距離測定のための所定のセンサ、例えば、LiDARセンサ、赤外線センサ、超音波センサなどを含む。又は、距離測定撮像装置212は、センサに代替して距離情報を測定できるステレオカメラ(stereo camera)、ステレオスコピックカメラ(stereoscopic camera)、3D深度カメラ(3D、depth camera)などを含んでもよい。
【0046】
撮像装置212は色イメージを生成し、距離測定装置210は深度マップ(Depth map)を生成する。撮像装置212によって生成された色イメージ及び距離測定装置210によって生成された深度マップイメージは、同じ被写領域に対して同じ条件(例えば、解像度など)を対象に生成され、互いに1:1にマッチングされる。
【0047】
距離測定装置211及び撮像装置212は、実存する室内空間に対して360度パノラマイメージ、即ち、それぞれ深度マップパノラマイメージと色パノラマイメージを生成し、これをコンピューティング装置300に提供することができる。
【0048】
距離測定装置211と撮像装置212は、室内の様々な地点でそれぞれ360度をカバーする深度マップイメージ及び色イメージを生成し、コンピューティング装置300に提供することができる。これは、室内空間に対応する仮想空間を提供するために、室内の様々な地点でそれぞれ360度イメージセット(イメージセットは、互いに1:1対応する深度マップイメージ及び色イメージを含む)を取得するためのものある。
【0049】
距離測定装置211は、このような360度の撮影が実行された室内の様々な地点それぞれに対する距離情報を生成することができる。このような距離情報は、相対的な距離情報であってもよい。例えば、距離測定装置211は、室内空間に対する平面図を備えてユーザの入力により平面図内で最初の開始室内地点が入力され得る。その後、距離測定装置211は、映像分析及び/又は移動検出センサ(例えば、3軸加速度センサ及び/又はジャイロセンサなど)に基づいて相対的な距離移動情報を生成することができる。例えば、開始室内地点からの相対的な距離移動情報に基づいて第2室内地点に関する情報を生成し、第2室内地点からの相対的な距離移動情報に基づいて第3室内地点に関する情報を生成することができる。このような距離情報の生成は、撮像装置212によって実行されてもよい。
【0050】
一実施形態において、距離測定装置211及び撮像装置212は、1つのイメージ取得装置として実現可能である。例えば、イメージ取得装置200は、イメージ取得のためのカメラと距離測定のためのライダ(LiDAR)センサを含むスマートフォンであってもよい。
図2は、このような距離測定装置211及び撮像装置212が1つの統合装置210として具現された場合を示す。統合装置210は、撮像をためのカメラモジュール及び距離測定のための距離測定モジュール(例えば、LiDARモジュール)を含む装置であり、例えば、LiDARセンサとカメラを含むスマートフォンであってもよい。
【0051】
統合装置210は、電動回転クレイドル220に固定されて360度回転して、パノラマイメージ(即ち、色イメージ及び深度マップイメージ)を生成することができる。実施形態により、統合装置210は、電動回転クレイドル220の据え置きによる地表上の高さ情報を電動回転クレイドル220から取得又はユーザから入力されて格納でき、このような高さ情報をパノラマイメージと共にコンピューティング装置300に提供することができる。このような地表上の高さ情報は撮像の高さとなり、これは、コンピューティング装置300で3次元モデルを生成するために使用され得る。
【0052】
深度マップイメージ及び色イメージは360度パノラマイメージであってもよく、説明の便宜のために、深度マップイメージ及び色イメージのように称する。このような深度マップイメージ及び色イメージは、360度イメージを提供するために適した形態のパノラマイメージ、例えば、正距円筒図法(Equirectangular projection)で投影されたパノラマイメージであってもよい。
【0053】
コンピューティング装置300は、室内の様々な地点でそれぞれ生成された色イメージと深度マップイメージを用いて、室内空間に対応する3次元仮想空間である3次元仮想モデルを生成することができる。
【0054】
コンピューティング装置300は、ニューラルネットワークをベースに色イメージ及び深度マップイメージに存在するホールを充填するホールフィリング動作を行う。コンピューティング装置300は、3次元仮想モデルを生成する以前の状態であるイメージ、即ち、色イメージ及び深度マップイメージを対象にホールフィリングを行うことができる。即ち、3次元モデルを構成する前に、イメージ状態に対してホールフィリングを行うことで、ホールフィリングに要求されるリソースを減らし、迅速で効率よくホールフィリングを行うことができる。
【0055】
コンピューティング装置300は、このようなホールフィリング動作の実行において、球形変換に基づいてホールフィリングを行うことができる。例えば、色イメージ及び/又は深度マップイメージは、球形変換に基づいて3次元仮想モデルを構築するために使用されるため、パノラマイメージでない3次元仮想モデルへの具現状態を考慮してホールフィリングを行う。それにより、ホールフィリングの正確度を高めることができる。
【0056】
このようなコンピューティング装置300については、
図3~
図15を参照して以下でより詳細に説明する。
【0057】
図3に図示するようなホールフィリング過程の各ステップについて説明する前に、本開示を説明する際に用いられる主な用語について説明する。本開示に係る「電子装置」は、ニューラルネットワークモデルに関するサービスを提供するためのサーバだけでなく、スマートフォン、タブレットPCなどのようなユーザ端末に実現されてもよい。即ち、本開示によりニューラルネットワークをベースにホールフィリングを実行可能に構成された電子装置であれば、その種類に問わず、本開示の電子装置に該当する。
【0058】
ニューラルネットワーク(neural network)は、神経網モデル又はニューラルネットワークモデルを意味し、ディープラーニング(deep learning)に基づいて学習され得る。具体的に、神経網モデルは、深層神経網(Deep Neural Network、DNN)、畳み込みニューラルネットワーク(Convolution Neural Network、CNN)、回帰型ニューラルネットワーク(Recurrent Neural Network、RNN)、及び敵対的生成ネットワーク(Generative Adversarial Networks、GAN)のうち少なくとも1つの人工神経網を含む。但し、本開示に係る神経網モデルが上述した例に限定されることはない。
【0059】
また、色イメージ又は深度マップイメージは、パノラマイメージであってもよい。即ち、色イメージ及び/又は深度マップイメージは、3次元変換又は球形変換に使用されるための形態を有する2次元のパノラマイメージ、例えば、球形変換のための正距円筒図法で投影されたイメージであってもよい。
【0060】
以下では、
図3~
図12を参照すると、本出願に開示される様々な一実施形態に係るホールフィリング技術について説明する。以下では、学習対象となるオリジナルイメージを「オリジナル学習イメージ」、オリジナルイメージに対してホールを生成したイメージを「ホール生成学習イメージ」、ホール生成学習イメージに対しニューラルネットワークによってホールが充填されたイメージを「ホールフィリング学習イメージ」のように称する。また、オリジナル学習イメージ、ホール生成学習イメージ、及びホールフィリング学習イメージには、色イメージだけでなく、深度マップイメージが適用され得る。即ち、以下で説明するニューラルネットワークを用いた学習過程は、色イメージ及び深度マップイメージに対して全て適用可能である。
【0061】
図3は、本出願に開示される一実施形態に係るホールフィリングを行うソフトウェアモジュールのアーキテクチャーを示す図である。
【0062】
図3を参照すると、本開示の一実施形態に係るソフトウェアモジュールは、ニューラルネットワークモデル320及びトレーニングモジュール330を含む。実施形態により、ソフトウェアモジュールは、学習データ生成モジュール310をさらに含む。
【0063】
ニューラルネットワークモデル320は、上述したように、人工神経網を含むニューラルネットワークモデルである。
【0064】
一例として、ニューラルネットワークモデル320は、学習過程及び推論過程を行うことにおいて、活性化関数を使用してもよい。具体的に、活性化関数は、以前レイヤから伝達された入力値を次のレイヤに伝達するのであるか、そして伝達すれば、いかなる出力値に変換して伝達するかを決定する役割を果たし、活性化関数のグラジエントは、ニューラルネットワークモデル320に含まれているそれぞれのレイヤの加重値(パラメータ)をアップデートするために用いられることができる。
【0065】
トレーニングモジュール330は、ニューラルネットワークモデル320の学習性能に関する評価情報を取得するモジュールである。
【0066】
例えば、トレーニングモジュール330は、ニューラルネットワークモデル320の学習がどれほどのエポック(epoch)だけ進行されたか、即ち、学習データ全体を何回学習したかに関する情報を取得できる。また、トレーニングモジュール330は、学習過程が進行される間の損失(loss)に関する情報を取得することができる。
【0067】
学習データ生成モジュール310は、ホールフィリング学習を行うための学習データを生成するモジュールである。学習データ生成モジュール310は、オリジナル学習イメージが入力され、オリジナル学習イメージに任意のホールを生成することができる。
【0068】
図3では、トレーニング過程を例示しており、学習データ生成モジュール310は、オリジナル学習イメージが入力され、それに任意のホールを生成してホール生成学習イメージを生成することができる。学習データ生成モジュール310は、生成したホール生成学習イメージをニューラルネットワークモデル320に提供できる。ニューラルネットワークモデル320は、入力されたホール生成学習イメージに対して、学習された内容をベースにホールフィリング処理を行ってホールフィリング学習イメージを生成することができる。トレーニングモジュール330は、ニューラルネットワークモデル320で生成したホールフィリング学習イメージとオリジナル学習イメージとを比較し、2つのイメージ間の差によりニューラルネットワークモデル320の加重値を変更させることで、ニューラルネットワークモデル320を学習させ得る。
【0069】
このような例において、最初の動作でニューラルネットワークモデル320は、学習された内容がないため、ニューラルネットワークの各ノードでランダムな値をベースにホールフィリング学習イメージイメージを生成することができる。ニューラルネットワークモデル320は、ホールフィリング学習イメージとオリジナル学習イメージとの間の差によるフィードバックトレーニングを繰り返し行って、ホールフィリング処理の正確度を向上させることができる。
【0070】
一方、色イメージに対するニューラルネットワークモデル320と深度マップイメージに対するニューラルネットワークモデル320は、それぞれ個別的に実現されてもよい。これは、入力されるイメージの種類に応じてホールフィリングを行わなければならない値が互いに異なるため、入力されるイメージの種類ごとにニューラルネットワークモデル320を具備及びトレーニングすることができる。
【0071】
図4は、本出願に開示される一実施形態に係る3次元仮想モデルを提供するためのホールフィリング過程を説明するフローチャートとして、
図4をさらに参照して説明する。
【0072】
本開示の一実施形態に係るソフトウェアモジュールは、オリジナル学習イメージとそれに対するホール生成学習イメージを取得する(S401)。ここで、ホール生成学習イメージは、前記オリジナル学習イメージに基づいて少なくとも1つのホールが生成されたイメージであってもよく、例えば、学習データ生成モジュール310によって生成されたイメージであってもよい。
【0073】
ニューラルネットワークモデル320は、入力されたホール生成学習イメージに対して、ニューラルネットワークを用いてホールフィリングを実行し、ホールフィリング学習イメージを生成する(S402)。
【0074】
トレーニングモジュール330は、ニューラルネットワークモデル320で生成したホールフィリング学習イメージとオリジナル学習イメージとを比較し、2つのイメージ間の差によりニューラルネットワークモデル320の加重値を変更させることで、ニューラルネットワークモデル320を学習させ得る。
【0075】
トレーニングモジュール330は、球形変換に基づいてロスを算定し、ニューラルネットワークモデル320の加重値を変更することができる。即ち、トレーニングモジュール330は、ホールフィリング学習イメージ及びオリジナル学習イメージそれぞれを球形変換し(S403)、球形変換されたホールフィリング学習イメージと球形変換されたオリジナル学習イメージとの間の差に基づいて、ニューラルネットワークモデル320をトレーニングする(S404)。これは、ホールフィリングされたイメージは、色イメージ又は深度マップイメージとして球形変換されて3次元モデルを生成するために使用されるため、球形変換前の状態であるイメージ状態で互いに比較することは誤差が発生するためである。即ち、3次元モデルとして具現された後における学習正確度を高めるために、トレーニングモジュール330自体でホールフィリング学習イメージ及びオリジナル学習イメージをそれぞれ球形変換した後、2つ間のロスを算出してトレーニングすることで、3次元モデルにおけるホールフィリング正確度を保障することができる。
【0076】
上述したように、ホール生成学習イメージは、学習データ生成モジュール310によって生成されることができる。学習データ生成モジュール310に対する様々な実施形態について、
図5~
図9を参照して説明する。
【0077】
図5は、本出願に開示される一実施形態に係るホール生成学習イメージの生成過程を説明するフローチャートである。
【0078】
図5を参照すると、オリジナル学習イメージが入力されれば(S501)、学習データ生成モジュール310は、上部領域又は下部領域に任意のホールを生成してホール生成学習イメージを生成する(S502)。
【0079】
例えば、学習データ生成モジュール310は、任意のホール領域に対して色値又は距離値を削除又は予め設定された数値(例えば、ホールとして識別される値に該当する数値)に設定することによってホールを生成することができる。
【0080】
図7は、オリジナル学習イメージの一例を示し、
図8は、学習データ生成モジュール310により上部領域810及び下部領域820にホール801,802が生成されたホール生成学習イメージの一例を示す。
【0081】
上部領域810及び下部領域820は、イメージ全体で予め設定された比率で決定される領域である。このような上部領域及び下部領域に対する比率は、スマートフォンで取得される360度イメージにおける非表示領域に対応して決定され得る。即ち、スマートフォンで取得される360度イメージは、正距円筒図法で投影されたパノラマイメージに対比するとき、上部及び下部に未表示領域が存在する。これは、正距円筒図法で投影されたパノラマイメージの場合、十分な広角を有する広角カメラに基づいて撮影される一方、スマートフォンで取得される360度イメージ(正距円筒図法で投影される)においてそうではないためである。
図8の例として、スマートフォンで取得される360度イメージは識別番号830に対応する。従って、学習データ生成モジュール310を介して上部領域810及び下部領域820にホールを生成し、これに基づいてニューラルネットワークモデル320を学習させることで、ニューラルネットワークモデル320がスマートフォンで取得される360度イメージが入力されても、これに基づいてホールフィリングを行って完全な正距円筒図法で投影されたパノラマイメージを出力することができる。
【0082】
図6は、本出願に開示される異なる一実施形態に係るホール生成学習イメージの生成過程を説明するフローチャートである。
【0083】
図6を参照すると、オリジナル学習イメージが入力されれば(S601)、学習データ生成モジュール310は、オリジナル学習イメージのランダムな位置に予め設定された大きさ以下のホールを生成してホール生成学習イメージを生成する(S602)。
【0084】
ここで、学習データ生成モジュール310は、予め設定された大きさ以下のホールとして、人形状のホールを生成してもよい。
【0085】
図7は、オリジナル学習イメージの一例を示し、
図9は、学習データ生成モジュール310によって人の形状のホール901が生成されたホール生成学習イメージの一例を示す。即ち、学習データ生成モジュール310は、人オブジェクトに対する学習データをベースにオリジナル学習イメージにおける人オブジェクトを識別し、識別された人オブジェクトをホールとして変更することができる。このような実施形態は、室内空間に対する仮想空間の生成において、偶然に撮られた人の形状などは、仮想空間を生成する場合にノイズに過ぎないため、人の形状に対応するホールを生成し学習させることで、ニューラルネットワークモデル320が人形のホールに対するホールフィリングの正確度を高めるよう学習させることができる。
【0086】
図10は、本出願に開示される一実施形態に係るニューラルネットワークのトレーニングを行うソフトウェアモジュールのアーキテクチャーを示す図であり、
図11は、本出願に開示される一実施形態に係るホールフィリングのためのニューラルネットワークのトレーニング過程を説明するフローチャートであって、以下、
図10及び
図11を参照すると、トレーニングモジュール330の一実施形態についてさらに詳細に説明する。
【0087】
図10を参照すると、トレーニングモジュール330は、球形変換モジュール331、ロス算出モジュール332、及び最適化モジュール333を含む。
【0088】
球形変換モジュール331は、ホールフィリング学習イメージ及びホール生成学習イメージを球形変換する。例えば、ホールフィリング学習イメージ及びホール生成学習イメージは、正距円筒図法で投影されたパノラマイメージであってもよく、球形変換モジュール331は、これらを球形に変換することができる。
【0089】
図10において、球形変換モジュール331によって球形変換されたオリジナル学習イメージを「オリジナル学習イメージ*」に、球形変換されたホールフィリング学習イメージを「ホールフィリング学習イメージ*」に表示している。
【0090】
一例として、球形変換モジュール331は、下の数式(1)を用いて球形変換を行う。球形変換は、下記の数式(1)の他にも様々な数式又はアルゴリズムに変換可能である。
【数1】
(1)
【0091】
ロス算出モジュール332は、球形変換されたホールフィリング学習イメージ(ホールフィリング学習イメージ*)と球形変換されたオリジナル学習イメージ(オリジナル学習イメージ*)との間のロスを算出する(S1101)。
【0092】
即ち、ロス算出モジュール332は、球形変換されたホールフィリング学習イメージと球形変換されたオリジナル学習イメージとの間の差をロス値に数値化することができる。一例として、ロス算出モジュール332によって決定されたロス値は、0~1間の範囲に決定され得る。
【0093】
最適化モジュール333は、ロス算出モジュール332から算出されたロスが提供され、該当ロスに対応してニューラルネットワークの媒介変数を変更して最適化を行う(S1102)。
【0094】
一例として、最適化モジュール333は、ニューラルネットワークの加重値媒介変数Wを調整して最適化を行うことができる。異なる例として、最適化モジュール333は、ニューラルネットワークの加重値媒介変数W及び偏向bのうち少なくとも1つを調整して最適化を行ってもよい。
【0095】
様々な方式の最適化方法が最適化モジュール333に適用可能である。例えば、最適化モジュール333は、バッチ勾配降下法(Batch Gradient Descent)、確率的勾配降下法(Stochastic Gradient Descent)、ミニバッチ勾配降下法(Mini-Batch Gradient Descent)、運動量(Momentum)、アダグラッド(Adagrad)、RMSpropなどを用いて最適化を行う。
【0096】
図12は、本出願に開示される一実施形態に係るニューラルネットワークのトレーニングのためのロス算出過程を説明するフローチャートである。
【0097】
図12に示された一実施形態では、ロス算出モジュール332は、複数のロス算出方法を適用して、その結果値から代表値を算出してロスを決定することができる。
【0098】
図12を参照すると、ロス算出モジュール332は、第1ロス方式で球形変換された推定深度マップと球形変換された学習深度マップとの間の第1ロス関数結果を算出する(S1201)。
【0099】
以下の数式(2)は、第1ロス算出式の一例を説明する数式である。
【数2】
(2)
ここで、Tはサンプル数、yは学習深度マップ、y
*は推定深度マップを意味する。
【0100】
ロス算出モジュール332は、第2ロス算出方式で球形変換された推定深度マップと球形変換された学習深度マップとの間の第2ロス関数結果を算出する(S1202)。
【0101】
以下の数式(3)は、第2ロス算出式の一例を説明する数式である。
【数3】
(3)
ここで、Tはサンプル数、dはログ空間における学習深度マップと推定深度マップとの間の差である。
【0102】
ロス算出モジュール332は、第3ロス算出方式で球形変換された推定深度マップと球形変換された学習深度マップとの間の第3ロス関数結果を算出する(S1203)。
【0103】
以下の数式(4)は、第3ロス算出式の一例を説明する数式である。
【数4】
(4)
ここで、y
trueは学習深度マップを、y
predictedは推定深度マップを意味する。
【0104】
ロス算出モジュール332は、第1ロス関数結果ないし第3ロス関数結果に対する代表値を算出し、ロスとして決定する(S1204)。ここで、代表値として、平均、中央値、最頻値などが適用可能である。
【0105】
図13は、本出願に開示される異なる一実施形態に係るホールフィリングを行うソフトウェアモジュールのアーキテクチャーを示す図である。
【0106】
図3~
図12において、1つのニューラルネットワークモデルを仮定して説明したが、
図13に示した一実施形態のように、色イメージと深度マップイメージそれぞれについて個別にニューラルネットワークモデル1320、1350と、それに関して動作する学習データ生成モジュール1310、1340、及びトレーニングモジュール1330、1360をそれぞれ含む。
即ち、第1ニューラルネットワークモデル1320は、質疑イメージとして色イメージが入力され、それに対するホールフィリングを行ってホールフィリング色イメージを応答イメージとして出力することができる。第1学習データ生成モジュール1310は、オリジナル色イメージが入力され、オリジナル色イメージに対する学習データを生成して第1ニューラルネットワークモデル1320に提供することができる。第1トレーニングモジュール1330は、第1ニューラルネットワークモデル1320から出力されたホールフィリング色イメージとオリジナル色イメージとを比較し、第1ニューラルネットワークモデル1320を学習させ得る。
【0107】
第2ニューラルネットワークモデル1350、第2学習データ生成モジュール1340、及び第6トレーニングモジュール1360は、深度マップイメージを対象に上述した動作を行う。
【0108】
図14は、本出願に開示される一実施形態に係るホールフィリング前の深度マップイメージとホールフィリング以後の深度マップイメージとを比較して例示する図面であって、
図14Aは、ホールフィリング前の入力深度マップイメージの一例である。
図14Aは、スマートフォンで撮影されたイメージであり、上部領域及び下部領域が広範囲なホールとして表示されている。
図14Bは、第2ニューラルネットワークモデル1350によって出力されたホールフィリング深度マップイメージの例を示し、上部領域及び下部領域のホールが充填されていることを示す。
【0109】
図15は、本出願に開示される一実施形態に係るコンピューティング装置を説明するブロック構成図である。
【0110】
図15に示すように、本開示の一実施形態に係る電子装置300は、通信部301、メモリ302及びプロセッサ303を含む。しかし、このような構成は例示的なものであり、本開示を実施することにおいて、このような構成に加えて新しい構成が追加されたり一部の構成が省略されることは勿論である。
【0111】
通信部301は回路を含み、外部装置(サーバを含む)との通信を行う。具体的に、プロセッサ303は、通信部301を介して接続された外部装置から各種データ又は情報を受信し、外部装置に各種データ又は情報を送信してもよい。
【0112】
通信部301は、WiFiモジュール、Bluetooth(登録商標)モジュール、無線通信モジュール、及びNFCモジュールのうち少なくとも1つを含んでもよく、IEEE、Zigbee(登録商標)、3G(3rd Generation)、3GPP(登録商標)(3rd Generation Partnership Project)、LTE(Long Term Evolution)、5G(5th Generation)などのような様々な通信規格に応じて通信を行うことができる。
【0113】
メモリ302には、電子装置300に関する少なくとも1つの命令が格納され得る。メモリ302には、電子装置300を駆動させるためのO/S(Operating System)が格納されている。また、メモリ302には、本開示の様々な実施形態に応じて、電子装置100が動作するための各種のソフトウェアプログラムやアプリケーションが格納されてもよい。そして、メモリ302は、フラッシュメモリ(Flash Memory)などのような半導体メモリやハードディスクなどのような磁気格納媒体などを含む。
【0114】
具体的に、メモリ302には、本開示の様々な実施形態により電子装置100が動作するための各種のソフトウェアモジュールが格納され、プロセッサ303は、メモリ302に格納された各種のソフトウェアモジュールを実行して電子装置100の動作を制御することができる。即ち、メモリ302は、プロセッサ303によってアクセスされ、プロセッサ303によるデータの読み取り/記録/修正/削除/更新などが実行されることができる。
【0115】
本開示に係る様々な実施形態において、メモリ302には、本開示に係るニューラルネットワークモデルが格納され、学習データ生成モジュール及びトレーニングモジュールのようなソフトウェアモジュールが格納され絵得る。
【0116】
その他にも、本開示の目的を達成するための範囲内で必要な様々な情報がメモリ302に格納され、メモリ302に格納された情報は、外部装置から受信されたりユーザによって入力されることにより更新されてもよい。
【0117】
プロセッサ303は、電子装置300の全般的な動作を制御する。具体的に、プロセッサ303は、上述したような通信部301及びメモリ302を含む電子装置300の構成に接続され、上述したようなメモリ302に格納された少なくとも1つの命令を実行して電子装置100の動作を全般的に制御することができる。
【0118】
プロセッサ303は、様々な方法で具現される。例えば、プロセッサ303は、特定用途向け集積回路(ApplicationSpecificIntegratedCircuit、ASIC)、組込みプロセッサ、マイクロプロセッサ、ハードウェアコントロールロジック、ハードウェア有限状態機械(hardwareFiniteStateMachine、FSM)、デジタル信号プロセッサ(DigitalSignalProcessor、DSP)のうち少なくとも一つとして具現され得る。一方、本開示において、プロセッサ303という用語は、CPU(CentralProcessingUnit)、GPU(GraphicProcessingUnit)、及びMPU(MainProcessingUnit)などを含む意味として使用される。
【0119】
プロセッサ303の制御に基づいた本開示に係る様々な実施形態に対しては、
図1~
図14を参照して上述したため、重複な説明は省略する。
【0120】
一方、上述した実施形態に係る電子装置300で実行される制御方法は、プログラムで具現されて電子装置300に提供されることができる。特に、電子装置300の制御方法を含むプログラムは、非一時的な読み出し可能媒体(non-transitory computer readable medium)に格納されて提供されてもよい。
【0121】
以上で電子装置100の制御方法、そして電子装置100の制御方法を実行するプログラムを含むコンピュータ読み出し可能な記録媒体に対して簡略に説明したが、これは重複する説明を省略するためのものに過ぎず、電子装置100に対する様々な実施形態は、電子装置100の制御方法、そして電子装置100の制御方法を実行するプログラムを含むコンピュータで読み出し可能な記録媒体についても適用され得ることは勿論である。
【0122】
本開示に係るニューラルネットワークに関する機能は、プロセッサ303及びメモリ302を介して動作する。プロセッサ130は、1つ又は複数のプロセッサ303から構成されることができる。ここで、1つ又は複数のプロセッサ303は、CPU、AP、DSP(Digital Signal Processor)などのような汎用プロセッサ、GPU、VPU(Vision Processing Unit)のようなグラフィック専用プロセッサ、又は、NPUのような人工知能専用プロセッサであってもよい。1つ又は複数のプロセッサ303は、メモリ120に格納された予め定義された動作規則又はニューラルネットワークモデルにより、入力データを処理するよう制御する。又は、1つ又は複数のプロセッサ303が人工知能専用プロセッサである場合、人工知能専用プロセッサは、特定のニューラルネットワークモデルの処理に特化したハードウェア構造に設計されることができる。
【0123】
予め定義された動作規則又はニューラルネットワークモデルは、学習を介して作られたことを特徴とする。ここで、学習を介して作られることは、基本ニューラルネットワークモデルが学習アルゴリズムによって複数の学習データを用いて学習されるもので、所望する特性(又は、目的)を行うように設定された予め定義された動作規則、又は、ニューラルネットワークモデルが作られることを意味する。このような学習は、本開示に係る人工知能が実行される機器そのものから行われてもよく、別途のサーバ及び/又はシステムを介して行われてもよい。学習アルゴリズムの例として、指導型学習(supervised learning)、教師なし学習(unsupervised learning)、半教師あり学習(semi-supervised learning)、又は強化学習(reinforcement learning)があるが、前述した例に限定されることはない。
【0124】
ニューラルネットワークモデルは、複数の神経網レイヤから構成され得る。複数の神経網レイヤそれぞれは、複数の加重値を有しており、以前レイヤの演算結果と複数の加重値との間の演算を介してニューラルネットワーク演算を行うことができる。複数の神経網レイヤが有する複数の加重値は、ニューラルネットワークモデルの学習結果によって最適化され得る。例えば、学習過程の間にニューラルネットワークモデルから取得したロス値又はコスト値が減少又は最小化されるように複数の加重値が更新されてもよい。ニューラルネットワークは、深層神経網(DNN:Deep Neural Network)を含んでもよく、例えば、CNN(Convolutional Neural Network)、DNN(Deep Neural Network)、RNN(Recurrent Neural Network)、RBM(Restricted Boltzmann Machine)、DBN(Deep Belief Network)、BRDNN(Bidirectional Recurrent Deep Neural Network)又は深層Q-ネットワーク(Deep Q-Networks)などがあるが、前述した例に限定されない。
【0125】
一方、機器で読込むことのできる格納媒体は、非一時的な格納媒体の形態に提供されてもよい。ここで、「非一時的な格納媒体」は、実在(tangible)の装置であり、信号(例えば、電磁波)を含まないことを意味するだけで、この用語は、データが格納媒体に半永久的に格納される場合と臨時的に格納される場合とを区分しない。例えば、「非一時的な格納媒体」は、データが臨時的に格納されるバッファを含むことができる。
【0126】
以上で説明した本出願は、前述した実施形態及び添付された図面によって限定されるものではなく、後述する特許請求の範囲により限定され、本出願の構成は、本出願の技術的な思想を逸脱しない範囲内でその構成を多様に変更及び改造できることを本出願が属する技術分野で通常の知識を有する者は容易に分かることができる。
【符号の説明】
【0127】
100:ユーザ端末
200:電子機器
300:コンピューティング装置
301:プロセッサ
302:メモリ
303:通信部