(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-12-18
(54)【発明の名称】画像処理方法及び装置、電子機器、記憶媒体ならびにコンピュータプログラム
(51)【国際特許分類】
G06T 7/50 20170101AFI20231211BHJP
【FI】
G06T7/50
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023533782
(86)(22)【出願日】2022-08-10
(85)【翻訳文提出日】2023-06-01
(86)【国際出願番号】 CN2022111569
(87)【国際公開番号】W WO2023035841
(87)【国際公開日】2023-03-16
(31)【優先権主張番号】202111056671.6
(32)【優先日】2021-09-09
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】512015127
【氏名又は名称】バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッド
(74)【代理人】
【識別番号】100106518
【氏名又は名称】松谷 道子
(74)【代理人】
【識別番号】100189555
【氏名又は名称】徳山 英浩
(72)【発明者】
【氏名】李 朋輝
(72)【発明者】
【氏名】徐 静涛
(72)【発明者】
【氏名】范 学峰
(72)【発明者】
【氏名】崔 家華
(72)【発明者】
【氏名】張 柳清
(72)【発明者】
【氏名】仲 亮亮
(72)【発明者】
【氏名】李 国洪
(72)【発明者】
【氏名】高 菲
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA09
5L096EA11
5L096EA22
5L096FA19
5L096FA66
5L096FA69
5L096HA02
(57)【要約】
本開示の実施例によれば、画像処理のための方法、装置、機器、記憶媒体及びプログラム製品を提供する。画像処理のための方法は、二次元画像に対する、少なくとも二次元画像の深度情報を含む入力情報を取得することと、二次元画像及び入力情報を利用して、二次元画像の各画素に対応する三次元点群を取得することと、目標二次元画素に対応する三次元点群中の点、及び目標二次元画素に隣接する一組の画素の対応する三次元点群における隣接点集合に基づいて、二次元画像に対する三次元画像を生成することと、を含む。このように、二次元写真により三次元モデルの構築を実現することができ、良好な普遍性及び汎用性を有し、これによりユーザの没入型及び対話型体験を大幅に向上させることができる。
【特許請求の範囲】
【請求項1】
二次元画像に対する、少なくとも前記二次元画像の深度情報を含む入力情報を取得することと、
前記二次元画像及び前記入力情報を用いて、前記二次元画像の各画素に対応する三次元点群を取得することと、
目標二次元画素に対応する前記三次元点群中の点、及び目標二次元画素に隣接する一組の画素の対応する前記三次元点群における隣接点集合に基づいて、前記二次元画像に対する三次元画像を生成することと、を含む
画像処理方法。
【請求項2】
前記二次元画像に対する三次元画像を生成することは、
前記目標二次元画素に対応する前記三次元点群中の点、及び前記隣接点集合における少なくとも二つの点に基づいて、前記目標画素と前記一組の画素に対する平面グリッドを取得することと、
取得された平面グリッドに基づいて、前記二次元画像に対する前記三次元画像を生成することと、を含む
請求項1に記載の画像処理方法。
【請求項3】
前記隣接点集合における前記少なくとも二つの点に対応する画素が隣接する
請求項2に記載の画像処理方法。
【請求項4】
前記入力情報は、
前記二次元画像の前景マスクと、
前記二次元画像の背景マスクと、
前記二次元画像の修正された画像情報と、の少なくとも一つをさらに含む
請求項1-3のいずれか一項に記載の画像処理方法。
【請求項5】
前記二次元画像の各画素に対応する三次元点群を取得することは、
前記二次元画像及び前記入力情報に対して正規化処理を行うことにより、前記三次元点群を取得することを含む
請求項1-3のいずれか一項に記載の画像処理方法。
【請求項6】
前記二次元画像の各画素に対応する三次元点群を取得することは、
前記二次元画像の画素が位置する平面座標系を三次元座標系に変換することと、
前記二次元画像の画素に基づいて、前記三次元座標系における前記三次元点群を生成することと、を含む
請求項1-3のいずれか一項に記載の画像処理方法。
【請求項7】
前記平面座標系は、画素座標系又は画像座標系のうちの少なくとも一種を含み、かつ前記三次元座標系はカメラ座標系又はワールド座標系のうちの少なくとも一種を含む
請求項6に記載の画像処理方法。
【請求項8】
前記平面グリッドは三角グリッドを含む
請求項2又は3に記載の画像処理方法。
【請求項9】
前記二次元画像は、テクスチャ情報又は色情報のうちの少なくとも一つの情報を含み、前記二次元画像に対する三次元画像を生成することは、
前記二次元画像の画素と前記三次元点群における点の対応関係に基づいて、前記テクスチャ情報又は前記色情報のうちの少なくとも一種の情報を前記平面グリッドに描画することと、
描画された前記平面グリッドを利用して、前記二次元画像に対する三次元画像を表示することと、をさらに含む
請求項1-3又は7のいずれか一項に記載の画像処理方法。
【請求項10】
請求項1-9のいずれか一項に記載の画像処理方法に基づいて、ビデオストリーム中の各フレームの二次元画像に対して対応する三次元画像を生成することと、
生成された三次元画像を利用して、三次元ビデオストリームを生成することと、を含む
ビデオ処理方法。
【請求項11】
二次元画像に対する、少なくとも前記二次元画像の深度情報を含む入力情報を取得するように構成される入力情報取得モジュールと、
前記二次元画像及び前記入力情報を用いて、前記二次元画像の各画素に対応する三次元点群を取得するように構成される三次元点群取得モジュールと、
目標二次元画素に対応する前記三次元点群中の点、及び目標二次元画素に隣接する一組の画素の対応する前記三次元点群における隣接点集合に基づいて、前記二次元画像に対する三次元画像を生成するように構成される三次元画像生成モジュールと、を含む
画像処理装置。
【請求項12】
前記三次元画像生成モジュールは、
前記目標二次元画素に対応する前記三次元点群中の点、及び前記隣接点集合における少なくとも二つの点に基づいて、前記目標画素と前記一組の画素に対する平面グリッドを取得するように構成される平面グリッド取得モジュールと、
取得された平面グリッドに基づいて、前記二次元画像に対する前記三次元画像を生成するように構成される三次元画像生成サブモジュールと、を含む
請求項11に記載の画像処理装置。
【請求項13】
前記隣接点集合における前記少なくとも二つの点に対応する画素が隣接する
請求項12に記載の画像処理装置。
【請求項14】
前記入力情報は、
前記二次元画像の前景マスクと、
前記二次元画像の背景マスクと、
前記二次元画像の修正された画像情報と、の少なくとも一つをさらに含む
請求項11-13のいずれか一項に記載の画像処理装置。
【請求項15】
前記三次元点群取得モジュールは、
前記二次元画像及び前記入力情報に対して正規化処理を行うことにより、前記三次元点群を取得するように構成される正規化処理モジュールを含む
請求項11-13のいずれか一項に記載の画像処理装置。
【請求項16】
前記三次元点群取得モジュールは、
前記二次元画像の画素が位置する平面座標系を三次元座標系に変換するように構成される三次元座標系変換モジュールと、
前記二次元画像の画素に基づいて、前記三次元座標系における前記三次元点群を生成するように構成される三次元点群生成モジュールと、を含む
請求項11-13のいずれか一項に記載の画像処理装置。
【請求項17】
前記平面座標系は画素座標系又は画像座標系のうちの少なくとも一種を含み、かつ前記三次元座標系はカメラ座標系又はワールド座標系のうちの少なくとも一種を含む
請求項16に記載の画像処理装置。
【請求項18】
前記平面グリッドは三角グリッドを含む
請求項12又は13に記載の画像処理装置。
【請求項19】
前記二次元画像はテクスチャ情報又は色情報のうちの少なくとも一つの情報を含み、前記三次元画像生成モジュールは、
前記二次元画像の画素と前記三次元点群における点の対応関係に基づいて、前記テクスチャ情報又は前記色情報のうちの少なくとも一種の情報を前記平面グリッドに描画するように構成される平面グリッド描画モジュールと、
描画された前記平面グリッドを利用して、前記二次元画像に対する三次元画像を表示するように構成される三次元画像表示モジュールと、をさらに含む
請求項11-13又は17のいずれか一項に記載の装置。
【請求項20】
請求項1-10のいずれか一項に記載の画像処理方法に基づいて、ビデオストリーム中の各フレームの二次元画像に対して対応する三次元画像を生成するように構成される第2の三次元画像生成モジュールと、
生成された三次元画像を利用して、三次元ビデオストリームを生成するように構成される三次元ビデオストリーム生成モジュールと、を含む
ビデオ処理装置。
【請求項21】
一つ又は複数のプロセッサと、
一つ又は複数のプログラムを記憶する記憶装置と、を含み、
前記一つ又は複数のプログラムが前記一つ又は複数のプロセッサにより実行されることにより、前記一つ又は複数のプロセッサが請求項1-10のいずれか一項に記載の画像処理方法を実現する
電子機器。
【請求項22】
コンピュータプログラムが記憶され、前記プログラムがプロセッサにより実行される時に請求項1-10のいずれか一項に記載の画像処理方法を実現する
コンピュータ可読な記憶媒体。
【請求項23】
プロセッサにより実行される時、請求項1-10のいずれか一項に記載の画像処理方法を実行するコンピュータプログラムを含む
コンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願のクロス援用)
本願は、出願番号が202111056671.6であり、名称が「画像処理ための方法、装置、機器、記憶媒体及びプログラム製品」であり、出願日が2021年9月9日である中国発明特許出願の優先権を主張し、この援用により該出願全体を本明細書に組み込む。
【0002】
本開示の実施例は主にコンピュータの分野に関し、より具体的には、画像処理方法及び装置、機器、記憶媒体ならびにプログラム製品に関する。
【背景技術】
【0003】
画像の二次元表示は、現在最も主要な画像表示形式である。二次元画像とは、一般に平面画像である。二次元画像は左、右、上、下の四つの方向のみがあり、前後が存在しない。したがって、二次元画像は面積のみがあり、体積がない。一般的に、二次元画像は、RGB画像又はグレースケール画像であってもよい。ユーザがより良好な没入式又は対話型体験を必要とする場合、二次元画像を三次元画像に変換する方法が必要である。
【発明の概要】
【0004】
本開示の実施例によれば、画像処理の解決手段を提供する。
【0005】
本開示の第一態様において、画像処理方法を提供し、二次元画像に対する、少なくとも二次元画像の深度情報を含む入力情報を取得することと、二次元画像及び入力情報を用いて、二次元画像の各画素に対応する三次元点群を取得することと、目標二次元画素に対応する三次元点群中の点、及び目標二次元画素に隣接する一組の画素の対応する三次元点群における隣接点集合に基づいて、二次元画像に対する三次元画像を生成することと、を含む。
【0006】
本開示の第二態様において、ビデオ処理方法を提供し、本開示の第一態様の方法に基づいて、ビデオストリーム中の各フレームの二次元画像に対して対応する三次元画像を生成することと、生成された三次元画像を利用して、三次元ビデオストリームを生成することと、を含む。
【0007】
本開示の第三態様において、画像処理の装置を提供し、二次元画像に対する、少なくとも二次元画像の深度情報を含む入力情報を取得するように構成される入力情報取得モジュールと、二次元画像及び入力情報を用いて、二次元画像の各画素に対応する三次元点群を取得するように構成される三次元点群取得モジュールと、目標二次元画素に対応する三次元点群中の点、及び目標二次元画素に隣接する一組の画素の対応する三次元点群における隣接点集合に基づいて、二次元画像に対する三次元画像を生成するように構成される三次元画像生成モジュールと、を含む。
【0008】
本開示の第四態様において、ビデオ処理装置を提供し、本開示の第二態様の方法に基づいて、ビデオストリーム中の各フレームの二次元画像に対して対応する三次元画像を生成するように構成される第2の三次元画像生成モジュールと、生成された三次元画像を利用して、三次元ビデオストリームを生成するように構成される三次元ビデオストリーム生成モジュールと、を含む。
【0009】
本開示の第五態様において、電子機器を提供し、一つ又は複数のプロセッサと、一つ又は複数のプログラムを記憶する記憶装置と、を含み、一つ又は複数のプログラムが一つ又は複数のプロセッサにより実行されることにより、一つ又は複数のプロセッサが本開示の第一態様又は第二態様に係る方法を実現する。
【0010】
本開示の第六態様において、コンピュータ可読な記憶媒体を提供し、コンピュータプログラムが記憶され、プログラムがプロセッサにより実行される時に本開示の第一態様又は第二態様に係る方法を実現する。
【0011】
本開示の第七態様において、コンピュータプログラム製品を提供し、プロセッサにより実行される時、本開示の第一態様又は第二態様に係る方法を実行するコンピュータプログラムを含む。
【0012】
理解すべきことは、発明の内容部分に記述された内容は本開示の実施例のキー又は重要な特徴を限定するものではなく、本開示の範囲を限定するものではない。本開示の他の特徴は、以下の説明により容易に理解されるであろう。
【図面の簡単な説明】
【0013】
図面を参照しながら以下の詳細な説明を参照し、本開示の各実施例の上記及び他の特徴、利点及び方面はより明らかになる。図面において、同一又は類似の図面は同一又は類似の要素を示す。
【0014】
【
図1】
図1は、本開示の複数の実施例がその中に実現できる例示環境の概略図を示す。
【
図2】
図2は、本開示の実施例に係る三次元画像を生成する過程のフローチャートを示す。
【
図3】
図3は、本開示のいくつかの実施例に係る三次元画像を生成する過程において点群に基づいて三次元画像を生成する過程の概略図を示す。
【
図4】
図4は、本開示のいくつかの実施例に係る三次元ビデオストリームを生成する過程のフローチャートを示す。
【
図5】
図5は、本開示のいくつかの実施例に係る三次元画像を生成する装置の概略図を示す。
【
図6】
図6は、本開示の実施例に係る三次元ビデオストリームを生成する装置の概略ブロック図を示す。
【
図7】
図7は、本開示を実施可能な複数の実施例の計算機器のブロック図を示す。
【発明を実施するための形態】
【0015】
以下、本発明の実施例について、図面を参照してより詳細に説明する。図面において本開示のいくつかの実施例を示すが、理解すべきこととして、本開示は様々な形式で実現することができ、かつ説明される実施例に限定されるべきではなく、逆にこれらの実施例を提供することは本開示をより徹底的かつ完全に理解するためである。理解すべきこととして、本開示の図面及び実施例は例示的な作用のみに用いられ、本開示の保護範囲を限定するものではない。
【0016】
本開示の実施例の説明において、用語「含む」及びその類似用語は、開放的に含み、即ち「含むがこれらに限定されない」と理解すべきである。用語「基づく」は、「少なくとも部分的に基づいて」であると理解すべきである。用語「一つの実施例」又は「該実施例」は、「少なくとも一つの実施例」と理解すべきである。用語「第一」、「第二」などは異なる又は同じ対象を指すことができる。以下にさらに他の明確な及び暗黙的な定義を含む可能性がある。
【0017】
また、本明細書において、理解すべきこととして、用語「3D」は、「三次元」に相当することができ、用語「2D」は「二次元」に相当することができ、かつ「三次元画像」は「三次元画像モデル」に相当することができる。
【0018】
前述したように、二次元画像を三次元画像に変換する方法を必要とし、より良好な没入型又は対話型体験を満たす。従来、主に二種類の解決案がある。一態様において、三次元ソフトウェアに基づいて設計することができ、ユーザは例えばBlenderなどの三次元モデルを直接利用して二次元画像を三次元画像に生成することができる。しかしながら、このような方式は既に存在する三次元モデルに依存する必要があり、かつその応用シーンは既知の三次元情報のシーンにしか存在していないので、この解決案の応用範囲は限られている。
【0019】
別の従来の解決案において、一般的に、三角測量原理のハードウェア走査方式に基づいて二次元画像を三次元画像に変換する。しかしながら、このような解決手段は、対応するハードウェアに依存する(構造光、tof等に基づく)必要がある。特定のサイズの測定すべき物体に対して、複数回走査する必要があり、三次元モデル再構成を実現することができる。また、特定の走査ハードウェアに対して、再構成すべき物体のサイズが大きいほど、走査回数が多いほど、対応する計算量も大きくなる;また、該解決案はハードウェアに基づいて実現されるため、三次元モデル再構成された物体に対して現場走査を行う必要があるため、該技術案は使用上に大きな限界性を有する。
【0020】
上記問題と他の潜在的な問題を少なくとも部分的に解決するために、本明細書は二次元画像に基づいて三次元画像を生成する解決手段を提供する。該解決手段において、二次元写真を利用して三次元モデルの構築を実現することができ、良好な普遍性及び汎用性を有し、追加のハードウェアに依存せず、現場の走査を必要としない。かつ、三次元点群における点と二次元画像の画素との一対一の対応関係を利用して、三次元画像の色情報及びテクスチャ情報を三次元画像モデルに描画することができる。このようにして、該解決手段を利用して生成された三次元画像の色情報及びテクスチャ情報が失われず、それにより高品質の3Dモデルを生成し、さらにユーザの没入型及び対話型体験を大幅に向上させる。
【0021】
以下、本発明の実施例について、図面を参照して具体的に説明する。
【0022】
図1は、本開示の複数の実施例が実現可能な例示環境100の概略図を示す。該例示環境100において、二次元画像110を計算機器120に入力することができ、計算機器120に対応計算(例えば以下に説明する深度計算及び画像修復など)を行い、三次元画像130を生成する。
【0023】
いくつかの実施例において、二次元画像110は、前述のような平面画像であってもよい。説明すべきものとして、該二次元画像110は前景と背景を有する画像であってもよく、前景を有しないか、又は明らかな前景を有しない画像であってもよい。
【0024】
説明すべきことは、二次元画像における前景と背景は、画像技術分野の一般的な概念である。一般的に、画像の前景は視聴者に最も近い視覚平面であり、画像における背景は視聴者から遠い合成における平面である。例えば、人物の一枚の二次元画像において、人物は一般的に画像の前景であり、画像における他の部分は常に背景と呼ばれる。いくつかの画像に対して、例えば青空白雲画像であれば、それは前景又は明らかな前景がなく、これも二次元画像の一種である。
【0025】
本開示の異なる実施例において、異なる種類の二次元画像110に対して計算機器120により異なる処理を行うことができる。このことは、後に詳述する。
【0026】
相応的には、三次元画像130(「三次元画像モデル」とも呼ばれる)は一般的に高さ、幅及び奥行きを有する立体画像を指す。本開示の実施例において、三次元画像130は二次元画像110に基づいて取得されたユーザの没入型及び対話型体験をより向上させることができる画像であってもよい。
【0027】
いくつかの実施例において、計算機器120は、デスクトップコンピュータ、タブレットコンピュータ、パーソナルデジタルアシスタント(PDA)、サーバ、ホストなど、又は有線データ通信又は無線データ通信を行うことができる任意の他のプロセッサイネーブルデバイスを含むことができ、本開示はこれを限定しない。
【0028】
本開示の実施例が提供する二次元画像に対する三次元画像を生成する解決手段をより明確に理解するために、
図2を参照して本開示の実施例をさらに説明する。
図2は、本開示の実施例に係る三次元画像を生成する過程200のフローチャートを示す。なお、過程200は、
図1の計算機器120によって実現されてもよい。説明を容易にするために、
図1を参照して過程200を説明する。
【0029】
ブロック210において、二次元画像110に対する入力情報を取得し、入力情報は少なくとも二次元画像110の深度情報を含む。深度情報は二次元画像110の深度画像を含むことができ、深度画像は二次元画像110を深度モデルに入力することにより取得することができる。理解すべきこととして、深度画像の解像度が二次元画像110の解像度と一致している。
【0030】
いくつかの実施例において、深度モデルは、計算機器120に配置されてもよく、計算機器120と異なる他の計算機器に配置されてもよく、必要な深度情報をブロック220の入力として取得できればよく、本開示はこれを制限しない。
【0031】
いくつかの実施例において、入力情報はさらに二次元画像110の前景マスク、背景マスク(前景マスク及び背景マスクを「前景背景マスク」と総称することができる)及び修正された画像情報などを含むことができる。
【0032】
このような実施例において、二次元画像110は一般的に明らかな前景と背景を有する。分割モデルにより前景マスク及び背景マスクを取得し、かつ画像修正(inpainting)モデルにより修正された画像(すなわち修正画像情報)を取得することができる。このように、入力情報は、深度画像、修復された画像、前景マスク及び背景マスクを含むことができる。
【0033】
説明すべきこととして、分割モデル及び画像修復モデルは、計算機器120に配置されてもよく、計算機器120と異なる他の計算機器に配置されてもよく、必要な深度情報をブロック220の入力として取得できればよく、本開示はこれを制限しない。
【0034】
ブロック220において、二次元画像110と入力情報を利用して、二次元画像110の各画素に対応する三次元点群を取得する。分かるように、ブロック220において、二次元画像110は入力情報と見なされてもよい。
【0035】
いくつかの実施例において、二次元画像110と入力情報に対して正規化処理を行うことにより、三次元点群を取得することができる。正規化は、計算を簡略化する方式であり、数を(0、1)の間の小数に変更し、又は次元を有する表現式を、変換により、無次元の表現式に変換し、純粋な量になる。このように、データ処理を容易にし、計算量を減少させることができる。
【0036】
いくつかの実施例において、二次元画像110の画素が位置する平面座標系を三次元座標系に変換し、かつ二次元画像110の画素に基づいて、三次元座標系における三次元点群を生成することができる。平面座標系は、画素座標系又は画像座標系のうちの少なくとも一種を含むことができ、かつ三次元座標系はカメラ座標系又はワールド座標系のうちの少なくとも一種を含む。このようにして、二次元画像110から三次元画像への遷移を迅速に実現することができる。
【0037】
以上の前景又は明らかな前景がない二次元画像110の実施例において、直接に深度画像に基づいて三次元変換(例えば数学的射影変換)を行って正規化処理後の三次元点群を生成することができる。説明すべきものとして、上記三次元変換の方式は例示的なものだけであり、二次元から三次元への変換を実現することができる任意の方式はいずれも可能であり、本開示はこれを制限しない。
【0038】
前景と背景を有する二次元画像110における実施例において、前記のように、入力情報はさらに修正された画像、前景マスク及び背景マスクを含むことができる。以下では、平面座標系を画素座標系とし、三次元座標系をカメラ座標系とすることを例とし、以下の式(1)-(6)の数学的射影変換の方式により二次元画像110の各画素に対応する三次元点群を取得する過程を詳細に説明する。
【0039】
【0040】
【0041】
【0042】
ここで、Zcは深度画像における画素の高さ情報であり、uおよびvはそれぞれ二次元画素座標系における座標位置であり、u0、v0は、画像中心であり、fは、仮想カメラの焦点距離であり、単位がmmであり、dx、dyは、画素サイズである。
【0043】
該実施例において、式(1)及び式(2)の数学的変換により、式(3)及び式(4)に示されるx軸及びy軸での正規化焦点距離fxおよびfyを取得することができる。正規化焦点距離fx及びfyを取得した後に、小孔結像原理に基づいて、式(5)及び式(6)により小孔結像に基づくカメラ座標系における画素のX軸及びY軸の座標Xc及びYcを取得することができる。
【0044】
なお、式(1)及び式(2)の数学的変換方式は例示的なものだけであり、当業者は、実際の需要に応じて調整することができる。かつ座標Xc及びYcの決定方式も模式的であり、当業者は実際の必要に応じて式(3)及び式(4)を調整して他の方式で正規化焦点距離を決定することができ、本開示はこれを制限しない。
【0045】
さらに説明する必要があることとして、上記式(5)及び式(6)は、u0、v0を画像中心としてX軸及びY軸の座標Xc及びYcを取得することである。当業者は、他の任意の画素点の位置を用いて関連画素の座標を計算することができ、本開示はこれを制限しない。
【0046】
さらに、仮想カメラの水平及び垂直画角をφh及びφvとすることができれば、以下を取得することができる:
【0047】
【0048】
式(7)及び式(8)を結合して、画像画素座標系を小孔撮像に基づくカメラ座標系に変換することができ、即ち特定のレンダリング視野角を設定すれば、二次元画素座標系における画素から、三次元カメラ座標系における点群を生成することができる。深度マップ範囲が0~216-1であるため、普遍性を保証するために、深度マップ範囲を0~1にマッピングする。このようにすれば、上記簡便なステップにより二次元画像110に基づいて三次元画像を取得することができる。ハードウェア走査に基づいて取得された点群の方式に比べて、ハードウェアに不可避的に偏差が存在するため、点群に紛失(NAN値)が存在しやすく、深度学習に基づいて取得された点群に点群欠落問題が存在せず、したがってより高品質の三次元画像モデルを表示することができる。
【0049】
説明すべきこととして、上記二次元画像110を三次元画像に変換する方式は例示的なものだけであり、当業者は、任意の適切な方式で上記変換を実現することができ、又は上記言及されたパラメータを対応的に調整して上記変換を実現することができ、本開示はこれを制限しない。
【0050】
ブロック230において、目標二次元画素に対応する三次元点群中の点、及び目標二次元画素に隣接する一組の画素の対応する三次元点群における隣接点集合に基づいて、二次元画像110に対する三次元画像を生成する。
【0051】
該実施例において、目標二次元画素は、二次元画像110における任意の画素であってもよく、例えば
図3に示すような画素Xであってもよい。一組の画素は、目標二次元画素に隣接する画素の集合であり、例えば
図3に示すような画素A-Hの集合であってもよい。二次元画素と三次元点群中の点は一対一に対応する関係があるため、理解されるように、目標二次元画素と隣接する一組の画素に対応する三次元点群中の点は空間上に一定の位置関係を有する。目標二次元画素に対応する三次元点群中の点及び隣接する一組の画素に対応する三次元点群中の隣接点集合に基づいて、二次元画像110に対する三次元画像を生成する。
【0052】
以下、
図3を参照しながら、ブロック230がさらに実現する例示的なステップを説明する。
図3は、本開示のいくつかの実施例に係る点群に基づいて三次元画像を生成する過程300の概略図を示す。
図3において、上記のように、目標二次元画素はXであってもよく、目標二次元画素に隣接する一組の画素は画素A-Hの集合であってもよい。それに対応して、隣接点集合は、該一組の画素A-Hが三次元点群で対応する点の集合であってもよい。
【0053】
いくつかの実施例において、目標二次元画素Xに対応する三次元点群中の点、及び隣接点集合における少なくとも二つの点に基づいて、前記目標画素と前記一組の画素に対する平面301を取得し、かつ取得された平面グリッド301に基づいて、前記二次元画像110に対する前記三次元画像を生成することができる。
【0054】
該実施例において、平面グリッド301を生成する過程は、コード化及びシート化過程を含むことができる。すなわち、画素と点群との対応関係に基づいて、三次元座標系における点群を符号化してシート化し、それにより二次元画像に対する三次元画像モデルを生成することができる。このように、平面グリッド301の方式で三次元画像モデリングを実現することができ、即ち一枚の二次元画像で三次元モデリングを完了することができ、追加ハードウェアに依存する必要がなく、現場走査を行う必要がなく、高い実用価値を備える。
【0055】
該実施例において、
図3を参照し、一般に平面を決定するために、三つの点のみを必要とし、したがって目標二次元画素Xに対応する三次元点群中の点、及び一組の画素に対応する三次元点群のうちの任意の二つの点に基づいてシート化(すなわち平面化)を実現することができる。この場合、シートは、三角シートであってもよい。それに対応して、平面グリッド301は少なくとも一つの三角グリッドを含むことができる。
【0056】
一つの実施例において、より具体的には、
図3を参照すると、三角シートを実現する過程において、選択された隣接点集合のうちの二つの点に対応する二次元画像110中の画素は隣接する。例えば、目標二次元画素Xを決定した後に、隣接する一組の画素における画素Aと画素Bに対応する3D点群内の点を選択し、かつ画素と点群との対応関係に基づいて、画素A、画素X及び画素Bを3D点群でシート化し、三角シート310を取得する。
【0057】
同様に、画素X、画素B及び画素Cを三角シート化して三角シート320を得て、画素X、画素E及び画素Cを三角シート化して三角シート330を得て、画素X、画素E及び画素Hを三角シート化して三角シート340を得て、画素X、画素G及び画素Hを三角シート化して三角シート350を得て、このように類推して、完全な8つの三角シートで構成された平面グリッド301を得る。さらに、上記方法を二次元画像110の各画素に拡大して、三次元画像モデルを得ることができる。このように、無損失の三次元画像を得ることができ、それによりユーザの対話体験及び没入体験を大幅に向上させる。
【0058】
説明すべきこととして、上記三角シート化の過程は、例示的なものだけであり、当業者はさらに他の任意の適切な方式で三次元画像モデリングを実現し、本開示はこれを制限しない。例えば、精度要求が相対的に低い場合に、さらに三角シートを採用する必要がなく、上記モデリングを行うことができる。すなわち、一組の画素を選択する時に、隣接する画素を取る必要がなく、このように形成された平面グリッド301は相対的に少ないシートで構成することができる。このように、部分精度を犠牲にするが、計算量を大幅に低減し、いくつかの低精度要求の三次元画像モデルに適用することができる。
【0059】
いくつかの実施例において、
図3を参照し、二次元画像110は一般的にテクスチャ情報又は色情報のうちの少なくとも一種の情報を含む。このような実施例において、二次元画像110の画素と三次元点群中点との対応関係に基づいて、テクスチャ情報又は前記色情報のうちの少なくとも一種の情報を平面グリッド301に描画し、かつ描画された平面グリッド301を利用して、二次元画像110に対する三次元画像を表示することができる。テクスチャ情報は画像における同質現象を反映する視覚的特徴であり、テクスチャ情報は、物体表面の緩やかな変化又は周期的変化を有する表面構造組織の配列属性を体現する。階調、色などの画像特徴と異なり、テクスチャは、画素及びその周囲空間近傍の階調分布により表現される。色情報は画像の階調、色などの画像特徴に対応する。
【0060】
該実施例において、二次元画像110に基づく深度画像自体と二次元画像110とは厳密な一対一の対応関係が存在し、すなわち三次元点群とテクスチャ情報及び色情報との間に一対一の対応関係が存在することを意味する。したがって、三次元画像モデルを取得してテクスチャ情報又は色情報のうちの少なくとも一種の情報をレンダリングすることができ、それにより完全な三次元画像モデルを取得する。実際に、該ステップは、テクスチャ情報及び色情報のうちの少なくとも一種の情報を平面グリッド301の対応するシートに貼り付ける過程、即ち三次元画像モデルに対して着色及びレンダリングを行う過程であると理解することができる。
【0061】
ハードウェア走査に基づいて点群を取得する解決手段において、ハードウェアは不可避的に偏差が存在するため、点群とテクスチャ情報及び色情報は、一対多の対応関係が存在し、テクスチャ情報と点群情報は完全に一対一に対応する可能性がなく、最終的にテクスチャ品質の低下を引き起こす。該実施例において、このような空間の強い相関関係により、テクスチャ情報及び色情報が失われることがなく、それにより高品質の、二次元画像110の立体化情報を完全に体現できる三次元画像モデルを得る。
【0062】
図4は、本開示のいくつかの実施例に係る三次元ビデオストリームを生成する過程400のフローチャートを示す。過程400は、
図1に示す計算機器120において実現されてもよく、他の任意の適切な計算機器で実現されてもよい。説明を容易にするために、
図1を参照して過程400を説明する。
【0063】
ブロック410では、ビデオストリーム中の各フレームの二次元画像110に対して対応する三次元画像を生成する。いくつかの実施例において、二次元画像110を三次元画像に生成する過程は、
図2に示す方法に基づいて実現するか又は他の任意の適切な方法に基づいて実現することができる。理解すべきこととして、ビデオストリームの一部のフレームに三次元画像を生成する必要がある場合、一部の特定のフレームを選択して三次元画像モデリングを行うこともでき、本開示はこれを制限しない。
【0064】
ブロック420において、生成された三次元画像を利用して、三次元ビデオストリームを生成する。このように、三次元画像を生成した上で三次元ビデオストリームを得て、さらにユーザの没入体験及びインタラクティブ体験を向上させることができる。
【0065】
図5は、本開示のいくつかの実施例に係る三次元画像を生成する装置500の模式図を示す。装置500は、入力情報取得モジュール510と、三次元点群取得モジュール520と、三次元画像生成モジュール530とを備える。
【0066】
入力情報取得モジュール510は、二次元画像110に対する入力情報を取得するように構成され、前記入力情報は少なくとも二次元画像110の深度情報を含む。前記のように、入力情報はさらに二次元画像の前景マスク、二次元画像の背景マスク、及び二次元画像の修正された画像情報の少なくとも一つを含むことができる。
【0067】
三次元点群取得モジュール520は、二次元画像110及び入力情報を利用して、二次元画像110の各画素に対応する三次元点群を取得するように構成される。
【0068】
いくつかの実施例において、三次元点群取得モジュール520は、正規化処理モジュールを含み、正規化処理モジュールは、二次元画像と入力情報に対して正規化処理を行うことにより、三次元点群を得るように構成される。
【0069】
いくつかの実施例において、三次元点群取得モジュール520は、さらに、三次元座標系変換モジュール及び三次元点群生成モジュールを含み、三次元座標系変換モジュールは、二次元画像110の画素が位置する平面座標系を三次元座標系に変換するように配置され、かつ三次元点群生成モジュールは、二次元画像110の画素に基づいて、三次元座標系における三次元点群を生成するように構成される。
【0070】
いくつかの実施例において、平面座標系は画素座標系又は画像座標系のうちの少なくとも一種を含むことができ、かつ三次元座標系はカメラ座標系又はワールド座標系のうちの少なくとも一種を含むことができる。
【0071】
三次元画像生成モジュール530は、目標二次元画素に対応する三次元点群中の点、及び目標二次元画素に隣接する一組の画素の対応する三次元点群における隣接点集合に基づいて、二次元画像110に対する三次元画像を生成するように構成される。
【0072】
いくつかの実施例において、三次元画像生成モジュール530はさらに平面グリッド取得モジュール及び三次元画像生成サブモジュールを含み、平面グリッド取得モジュールは、目標二次元画素に対応する三次元点群中の点、及び隣接点集合における少なくとも二つの点に基づいて、目標画素と一組の画素に対する平面グリッドを取得するように構成され、かつ三次元画像生成サブモジュールは、取得された平面グリッドに基づいて、二次元画像110に対する三次元画像を生成するように構成される。
【0073】
いくつかの実施例において、隣接点集合における少なくとも二つの点に対応する画素は、隣接することができる。
【0074】
いくつかの実施例において、三次元画像生成モジュール530はさらに平面グリッド描画モジュール及び三次元画像表示モジュールを含み、平面グリッド描画モジュールは、二次元画像110の画素と三次元点群における点の対応関係に基づいて、テクスチャ情報又は色情報のうちの少なくとも一種の情報を平面グリッドに描画し、かつ三次元画像表示モジュールは描画された平面グリッドを利用して、二次元画像110に対する三次元画像を表示するように構成される。
【0075】
図6は、本開示の実施例に係る三次元ビデオストリームを生成する装置600の概略ブロック図である。装置600は、第2の三次元画像生成モジュール610と、三次元ビデオストリーム生成モジュール620とを備える。装置600は、
図1に示される計算機器120において実現されてもよく、他の任意の適切な機器において実現されてもよい。説明を容易にするために、
図1を参照して過程600を説明する。
【0076】
第2の三次元画像生成モジュール610は、ビデオストリーム内の各フレームの二次元画像110に対して、対応する三次元画像を生成するように構成される。三次元画像を生成するステップは、前述したような装置500によって実現されてもよい。
【0077】
三次元ビデオストリーム生成モジュール620は、生成された三次元画像を利用して、三次元ビデオストリームを生成するように構成される。このように、三次元画像を生成した上で三次元ビデオストリームを得て、さらにユーザの没入体験及びインタラクティブ体験を向上させることができる。
【0078】
図7は、本開示の複数の実施例を実施可能な計算機器700のブロック図を示している。機器700は、
図1の計算機器120を実現するために用いることができる。図に示すように、機器700は、中央処理ユニット(CPU)701を含み、それはリードオンリーメモリ(ROM)702に記憶されたコンピュータプログラム命令又は記憶ユニット708からランダムアクセスメモリ(RAM)703にロードされたコンピュータプログラム命令に基づいて、様々な適切な動作及び処理を実行することができる。RAM703には、さらに機器700の操作に必要な様々なプログラム及びデータを記憶することができる。CPU701、ROM702、およびRAM703は、バス704により相互に接続されている。バス704には、さらに、入出力(I/O)インタフェース705も接続されている。
【0079】
機器700における複数の部品は、I/Oインタフェース705に接続され、例えばキーボード、マウス等の入力ユニット706と、例えば様々なタイプのディスプレイ、スピーカ等の出力ユニット707と、例えば磁気ディスク、光ディスク等の記憶ユニット708と、例えばネットワークカード、モデム、無線通信トランシーバ等の通信ユニット709と、を含む。通信ユニット709は、機器700がインターネット等のコンピュータネットワーク/各種の電気通信網を介して他の装置と情報/データをやり取りすることを可能にする。
【0080】
処理ユニット701は、例えば過程200及び過程400のうちの一つ又は複数という上記各方法及び処理を実行する。例えば、いくつかの実施例において、過程200及び過程400のうちの一つ又は複数はコンピュータソフトウェアプログラムとして実現され、それは、例えば記憶ユニット708という機械可読媒体に一時的に含まれる。いくつかの実施例において、コンピュータプログラムの一部又は全部はROM702及び/又は通信ユニット709を介して機器700にロード及び/又はインストールされる。コンピュータプログラムがRAM703にロードされかつCPU701により実行される場合、上記過程200及び過程400のうちの一つ又は複数のステップを実行することができる。代替的に、他の実施例において、CPU701は他の任意の適切な方式(例えば、ファームウェアを介して)により過程200及び過程400のうちの一つ又は複数を実行するように構成されてもよい。
【0081】
本明細書で説明した機能は、少なくとも一部が一つまたは複数のハードウェアロジックによって実行されてもよい。例えば、非限定的に、使用可能な例示的なタイプのハードウェアロジック部品は、フィールドプログラマブルゲートアレイ(FPGA)、専用集積回路(ASIC)、専用標準製品(ASSP)、チップ上システムのシステム(SOC)、ロードプログラマブルロジックデバイス(CPLD)等を含む。
【0082】
本開示の方法を実施するためのプログラムコードは、一つ又は複数のプログラム言語の任意の組み合わせで作成することができる。これらのプログラムコードは、汎用コンピュータ、専用コンピュータ又は他のプログラム可能なデータ処理装置のプロセッサ又はコントローラに提供することができ、それによりプログラムコードはプロセッサ又はコントローラにより実行される時にフローチャート及び/又はブロック図に規定された機能/操作が実施される。プログラムコードは機器に完全に実行され、部分的に機器で実行されてもよく、独立したソフトウェアパッケージ部分として機器で実行されかつ遠隔機器で部分的に実行されるか又は完全に遠隔機器又はサーバで実行される。
【0083】
本開示のコンテキストにおいて、機械可読媒体は有形の媒体であってもよく、それは命令実行システム、装置又は装置の使用又は命令実行システム、装置又は装置と組み合わせて使用されるプログラムを含むか又は記憶することができる。機械可読媒体は機械可読信号媒体又は機械可読記憶媒体であってもよい。機械可読媒体は電子の、磁気的、光学的、電磁的、赤外線の、又は半導体システム、装置又は装置、又は上記内容の任意の適切な組み合わせを含むがそれらに限定されない。機械可読記憶媒体のより具体的な例は一つ以上の線に基づく電気的接続、携帯式コンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、消去可能なプログラマブルリードオンリーメモリ(EPROM又はフラッシュメモリ)、光ファイバ、便利式コンパクトフラッシュ(登録商標)メモリ(CD-ROM)、光記憶装置、磁気記憶装置、又は上記コンテンツの任意の適切な組み合わせを含む。
【0084】
また、特定の順序で各操作を描画したが、これは以下のように理解すべきである:このような操作は示された特定の順序又は順序で実行されることが要求され、又は全ての図示の操作が実行されるように要求されて所望の結果を取得することが要求される。一定の環境で、マルチタスク及び並列処理が有利である可能性がある。同様に、上記においていくつかの具体的な実現詳細を含むが、これらは本開示の範囲を限定するものと解釈されるべきではない。個別の実施例のコンテキストに記述されたいくつかの特徴はさらに組み合わせて単一の実現に実現されてもよい。逆に、単一で実現されるコンテキストに記述された様々な特徴は単独で又は任意の適切なサブセットの方式で複数の実現に実現されてもよい。
【0085】
構造的特徴及び/又は方法の論理動作に特化した言語を用いて本主題を説明したが、添付の特許請求の範囲に限定された主題は必ずしも上記特定の特徴又は動作に限定されるものではないと理解すべきである。逆に、上記特定の特徴及び動作は特許請求の範囲の例示的な形態を実現するだけである。
【手続補正書】
【提出日】2023-06-01
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願のクロス援用)
本願は、出願番号が202111056671.6であり、名称が「画像処理ための方
法、装置、機器、記憶媒体及びプログラム製品」であり、出願日が2021年9月9日である中国発明特許出願の優先権を主張し、この援用により該出願全体を本明細書に組み込む。
【0002】
本開示の実施例は主にコンピュータの分野に関し、より具体的には、画像処理方法及び装置、電子機器、記憶媒体ならびにコンピュータプログラムに関する。
【背景技術】
【0003】
画像の二次元表示は、現在最も主要な画像表示形式である。二次元画像とは、一般に平面画像である。二次元画像は左、右、上、下の四つの方向のみがあり、前後が存在しない。したがって、二次元画像は面積のみがあり、体積がない。一般的に、二次元画像は、RGB画像又はグレースケール画像であってもよい。ユーザがより良好な没入式又は対話型体験を必要とする場合、二次元画像を三次元画像に変換する方法が必要である。
【発明の概要】
【0004】
本開示の実施例によれば、画像処理の解決手段を提供する。
【0005】
本開示の第一態様において、画像処理方法を提供し、二次元画像に対する、少なくとも二次元画像の深度情報を含む入力情報を取得することと、二次元画像及び入力情報を用いて、二次元画像の各画素に対応する三次元点群を取得することと、目標二次元画素に対応する三次元点群中の点、及び目標二次元画素に隣接する一組の画素の対応する三次元点群における隣接点集合に基づいて、二次元画像に対する三次元画像を生成することと、を含む。
【0006】
本開示の第二態様において、ビデオ処理方法を提供し、本開示の第一態様の方法に基づいて、ビデオストリーム中の各フレームの二次元画像に対して対応する三次元画像を生成することと、生成された三次元画像を利用して、三次元ビデオストリームを生成することと、を含む。
【0007】
本開示の第三態様において、画像処理の装置を提供し、二次元画像に対する、少なくとも二次元画像の深度情報を含む入力情報を取得するように構成される入力情報取得モジュールと、二次元画像及び入力情報を用いて、二次元画像の各画素に対応する三次元点群を取得するように構成される三次元点群取得モジュールと、目標二次元画素に対応する三次元点群中の点、及び目標二次元画素に隣接する一組の画素の対応する三次元点群における隣接点集合に基づいて、二次元画像に対する三次元画像を生成するように構成される三次元画像生成モジュールと、を含む。
【0008】
本開示の第四態様において、ビデオ処理装置を提供し、本開示の第二態様の方法に基づいて、ビデオストリーム中の各フレームの二次元画像に対して対応する三次元画像を生成するように構成される第2の三次元画像生成モジュールと、生成された三次元画像を利用して、三次元ビデオストリームを生成するように構成される三次元ビデオストリーム生成モジュールと、を含む。
【0009】
本開示の第五態様において、電子機器を提供し、一つ又は複数のプロセッサと、一つ又は複数のプログラムを記憶する記憶装置と、を含み、一つ又は複数のプログラムが一つ又は複数のプロセッサにより実行されることにより、一つ又は複数のプロセッサが本開示の第一態様又は第二態様に係る方法を実現する。
【0010】
本開示の第六態様において、コンピュータ可読な記憶媒体を提供し、コンピュータプログラムが記憶され、プログラムがプロセッサにより実行される時に本開示の第一態様又は第二態様に係る方法を実現する。
【0011】
本開示の第七態様において、コンピュータプログラムを提供し、プロセッサにより実行される時、本開示の第一態様又は第二態様に係る方法を実行する。
【0012】
理解すべきことは、発明の内容部分に記述された内容は本開示の実施例のキー又は重要な特徴を限定するものではなく、本開示の範囲を限定するものではない。本開示の他の特徴は、以下の説明により容易に理解されるであろう。
【図面の簡単な説明】
【0013】
図面を参照しながら以下の詳細な説明を参照し、本開示の各実施例の上記及び他の特徴、利点及び方面はより明らかになる。図面において、同一又は類似の図面は同一又は類似の要素を示す。
【0014】
【
図1】
図1は、本開示の複数の実施例がその中に実現できる例示環境の概略図を示す。
【
図2】
図2は、本開示の実施例に係る三次元画像を生成する過程のフローチャートを示す。
【
図3】
図3は、本開示のいくつかの実施例に係る三次元画像を生成する過程において点群に基づいて三次元画像を生成する過程の概略図を示す。
【
図4】
図4は、本開示のいくつかの実施例に係る三次元ビデオストリームを生成する過程のフローチャートを示す。
【
図5】
図5は、本開示のいくつかの実施例に係る三次元画像を生成する装置の概略図を示す。
【
図6】
図6は、本開示の実施例に係る三次元ビデオストリームを生成する装置の概略ブロック図を示す。
【
図7】
図7は、本開示を実施可能な複数の実施例の計算機器のブロック図を示す。
【発明を実施するための形態】
【0015】
以下、本発明の実施例について、図面を参照してより詳細に説明する。図面において本開示のいくつかの実施例を示すが、理解すべきこととして、本開示は様々な形式で実現することができ、かつ説明される実施例に限定されるべきではなく、逆にこれらの実施例を提供することは本開示をより徹底的かつ完全に理解するためである。理解すべきこととして、本開示の図面及び実施例は例示的な作用のみに用いられ、本開示の保護範囲を限定するものではない。
【0016】
本開示の実施例の説明において、用語「含む」及びその類似用語は、開放的に含み、即ち「含むがこれらに限定されない」と理解すべきである。用語「基づく」は、「少なくとも部分的に基づいて」であると理解すべきである。用語「一つの実施例」又は「該実施例」は、「少なくとも一つの実施例」と理解すべきである。用語「第一」、「第二」などは異なる又は同じ対象を指すことができる。以下にさらに他の明確な及び暗黙的な定義を含む可能性がある。
【0017】
また、本明細書において、理解すべきこととして、用語「3D」は、「三次元」に相当することができ、用語「2D」は「二次元」に相当することができ、かつ「三次元画像」は「三次元画像モデル」に相当することができる。
【0018】
前述したように、二次元画像を三次元画像に変換する方法を必要とし、より良好な没入型又は対話型体験を満たす。従来、主に二種類の解決案がある。一態様において、三次元ソフトウェアに基づいて設計することができ、ユーザは例えばBlenderなどの三次元モデルを直接利用して二次元画像を三次元画像に生成することができる。しかしながら、このような方式は既に存在する三次元モデルに依存する必要があり、かつその応用シーンは既知の三次元情報のシーンにしか存在していないので、この解決案の応用範囲は限られている。
【0019】
別の従来の解決案において、一般的に、三角測量原理のハードウェア走査方式に基づいて二次元画像を三次元画像に変換する。しかしながら、このような解決手段は、対応するハードウェアに依存する(構造光、tof等に基づく)必要がある。特定のサイズの測定すべき物体に対して、複数回走査する必要があり、三次元モデル再構成を実現することができる。また、特定の走査ハードウェアに対して、再構成すべき物体のサイズが大きいほど、走査回数が多いほど、対応する計算量も大きくなる;また、該解決案はハードウェアに基づいて実現されるため、三次元モデル再構成された物体に対して現場走査を行う必要があるため、該技術案は使用上に大きな限界性を有する。
【0020】
上記問題と他の潜在的な問題を少なくとも部分的に解決するために、本明細書は二次元画像に基づいて三次元画像を生成する解決手段を提供する。該解決手段において、二次元写真を利用して三次元モデルの構築を実現することができ、良好な普遍性及び汎用性を有し、追加のハードウェアに依存せず、現場の走査を必要としない。かつ、三次元点群における点と二次元画像の画素との一対一の対応関係を利用して、三次元画像の色情報及びテクスチャ情報を三次元画像モデルに描画することができる。このようにして、該解決手段を利用して生成された三次元画像の色情報及びテクスチャ情報が失われず、それにより高品質の3Dモデルを生成し、さらにユーザの没入型及び対話型体験を大幅に向上させる。
【0021】
以下、本発明の実施例について、図面を参照して具体的に説明する。
【0022】
図1は、本開示の複数の実施例が実現可能な例示環境100の概略図を示す。該例示環境100において、二次元画像110を計算機器120に入力することができ、計算機器120に対応計算(例えば以下に説明する深度計算及び画像修復など)を行い、三次元画像130を生成する。
【0023】
いくつかの実施例において、二次元画像110は、前述のような平面画像であってもよい。説明すべきものとして、該二次元画像110は前景と背景を有する画像であってもよく、前景を有しないか、又は明らかな前景を有しない画像であってもよい。
【0024】
説明すべきことは、二次元画像における前景と背景は、画像技術分野の一般的な概念である。一般的に、画像の前景は視聴者に最も近い視覚平面であり、画像における背景は視聴者から遠い合成における平面である。例えば、人物の一枚の二次元画像において、人物は一般的に画像の前景であり、画像における他の部分は常に背景と呼ばれる。いくつかの画像に対して、例えば青空白雲画像であれば、それは前景又は明らかな前景がなく、これも二次元画像の一種である。
【0025】
本開示の異なる実施例において、異なる種類の二次元画像110に対して計算機器120により異なる処理を行うことができる。このことは、後に詳述する。
【0026】
相応的には、三次元画像130(「三次元画像モデル」とも呼ばれる)は一般的に高さ、幅及び奥行きを有する立体画像を指す。本開示の実施例において、三次元画像130は二次元画像110に基づいて取得されたユーザの没入型及び対話型体験をより向上させることができる画像であってもよい。
【0027】
いくつかの実施例において、計算機器120は、デスクトップコンピュータ、タブレットコンピュータ、パーソナルデジタルアシスタント(PDA)、サーバ、ホストなど、又は有線データ通信又は無線データ通信を行うことができる任意の他のプロセッサイネーブルデバイスを含むことができ、本開示はこれを限定しない。
【0028】
本開示の実施例が提供する二次元画像に対する三次元画像を生成する解決手段をより明確に理解するために、
図2を参照して本開示の実施例をさらに説明する。
図2は、本開示の実施例に係る三次元画像を生成する過程200のフローチャートを示す。なお、過程200は、
図1の計算機器120によって実現されてもよい。説明を容易にするために、
図1を参照して過程200を説明する。
【0029】
ブロック210において、二次元画像110に対する入力情報を取得し、入力情報は少なくとも二次元画像110の深度情報を含む。深度情報は二次元画像110の深度画像を含むことができ、深度画像は二次元画像110を深度モデルに入力することにより取得することができる。理解すべきこととして、深度画像の解像度が二次元画像110の解像度と一致している。
【0030】
いくつかの実施例において、深度モデルは、計算機器120に配置されてもよく、計算機器120と異なる他の計算機器に配置されてもよく、必要な深度情報をブロック220の入力として取得できればよく、本開示はこれを制限しない。
【0031】
いくつかの実施例において、入力情報はさらに二次元画像110の前景マスク、背景マスク(前景マスク及び背景マスクを「前景背景マスク」と総称することができる)及び修正された画像情報などを含むことができる。
【0032】
このような実施例において、二次元画像110は一般的に明らかな前景と背景を有する。分割モデルにより前景マスク及び背景マスクを取得し、かつ画像修正(inpainting)モデルにより修正された画像(すなわち修正画像情報)を取得することができる。このように、入力情報は、深度画像、修復された画像、前景マスク及び背景マスクを含むことができる。
【0033】
説明すべきこととして、分割モデル及び画像修復モデルは、計算機器120に配置されてもよく、計算機器120と異なる他の計算機器に配置されてもよく、必要な深度情報をブロック220の入力として取得できればよく、本開示はこれを制限しない。
【0034】
ブロック220において、二次元画像110と入力情報を利用して、二次元画像110の各画素に対応する三次元点群を取得する。分かるように、ブロック220において、二次元画像110は入力情報と見なされてもよい。
【0035】
いくつかの実施例において、二次元画像110と入力情報に対して正規化処理を行うことにより、三次元点群を取得することができる。正規化は、計算を簡略化する方式であり、数を(0、1)の間の小数に変更し、又は次元を有する表現式を、変換により、無次元の表現式に変換し、純粋な量になる。このように、データ処理を容易にし、計算量を減少させることができる。
【0036】
いくつかの実施例において、二次元画像110の画素が位置する平面座標系を三次元座標系に変換し、かつ二次元画像110の画素に基づいて、三次元座標系における三次元点群を生成することができる。平面座標系は、画素座標系又は画像座標系のうちの少なくとも一種を含むことができ、かつ三次元座標系はカメラ座標系又はワールド座標系のうちの少なくとも一種を含む。このようにして、二次元画像110から三次元画像への遷移を迅速に実現することができる。
【0037】
以上の前景又は明らかな前景がない二次元画像110の実施例において、直接に深度画像に基づいて三次元変換(例えば数学的射影変換)を行って正規化処理後の三次元点群を生成することができる。説明すべきものとして、上記三次元変換の方式は例示的なものだけであり、二次元から三次元への変換を実現することができる任意の方式はいずれも可能であり、本開示はこれを制限しない。
【0038】
前景と背景を有する二次元画像110における実施例において、前記のように、入力情報はさらに修正された画像、前景マスク及び背景マスクを含むことができる。以下では、平面座標系を画素座標系とし、三次元座標系をカメラ座標系とすることを例とし、以下の式(1)-(6)の数学的射影変換の方式により二次元画像110の各画素に対応する三次元点群を取得する過程を詳細に説明する。
【0039】
【0040】
【0041】
【0042】
ここで、Zcは深度画像における画素の高さ情報であり、uおよびvはそれぞれ二次元画素座標系における座標位置であり、u0、v0は、画像中心であり、fは、仮想カメラの焦点距離であり、単位がmmであり、dx、dyは、画素サイズである。
【0043】
該実施例において、式(1)及び式(2)の数学的変換により、式(3)及び式(4)に示されるx軸及びy軸での正規化焦点距離fxおよびfyを取得することができる。正規化焦点距離fx及びfyを取得した後に、小孔結像原理に基づいて、式(5)及び式(6)により小孔結像に基づくカメラ座標系における画素のX軸及びY軸の座標Xc及びYcを取得することができる。
【0044】
なお、式(1)及び式(2)の数学的変換方式は例示的なものだけであり、当業者は、実際の需要に応じて調整することができる。かつ座標Xc及びYcの決定方式も模式的であり、当業者は実際の必要に応じて式(3)及び式(4)を調整して他の方式で正規化焦点距離を決定することができ、本開示はこれを制限しない。
【0045】
さらに説明する必要があることとして、上記式(5)及び式(6)は、u0、v0を画像中心としてX軸及びY軸の座標Xc及びYcを取得することである。当業者は、他の任意の画素点の位置を用いて関連画素の座標を計算することができ、本開示はこれを制限しない。
【0046】
さらに、仮想カメラの水平及び垂直画角をφh及びφvとすることができれば、以下を取得することができる:
【0047】
【0048】
式(7)及び式(8)を結合して、画像画素座標系を小孔撮像に基づくカメラ座標系に変換することができ、即ち特定のレンダリング視野角を設定すれば、二次元画素座標系における画素から、三次元カメラ座標系における点群を生成することができる。深度マップ範囲が0~216-1であるため、普遍性を保証するために、深度マップ範囲を0~1にマッピングする。このようにすれば、上記簡便なステップにより二次元画像110に基づいて三次元画像を取得することができる。ハードウェア走査に基づいて取得された点群の方式に比べて、ハードウェアに不可避的に偏差が存在するため、点群に紛失(NAN値)が存在しやすく、深度学習に基づいて取得された点群に点群欠落問題が存在せず、したがってより高品質の三次元画像モデルを表示することができる。
【0049】
説明すべきこととして、上記二次元画像110を三次元画像に変換する方式は例示的なものだけであり、当業者は、任意の適切な方式で上記変換を実現することができ、又は上記言及されたパラメータを対応的に調整して上記変換を実現することができ、本開示はこれを制限しない。
【0050】
ブロック230において、目標二次元画素に対応する三次元点群中の点、及び目標二次元画素に隣接する一組の画素の対応する三次元点群における隣接点集合に基づいて、二次元画像110に対する三次元画像を生成する。
【0051】
該実施例において、目標二次元画素は、二次元画像110における任意の画素であってもよく、例えば
図3に示すような画素Xであってもよい。一組の画素は、目標二次元画素に隣接する画素の集合であり、例えば
図3に示すような画素A-Hの集合であってもよい。二次元画素と三次元点群中の点は一対一に対応する関係があるため、理解されるように、目標二次元画素と隣接する一組の画素に対応する三次元点群中の点は空間上に一定の位置関係を有する。目標二次元画素に対応する三次元点群中の点及び隣接する一組の画素に対応する三次元点群中の隣接点集合に基づいて、二次元画像110に対する三次元画像を生成する。
【0052】
以下、
図3を参照しながら、ブロック230がさらに実現する例示的なステップを説明する。
図3は、本開示のいくつかの実施例に係る点群に基づいて三次元画像を生成する過程300の概略図を示す。
図3において、上記のように、目標二次元画素はXであってもよく、目標二次元画素に隣接する一組の画素は画素A-Hの集合であってもよい。それに対応して、隣接点集合は、該一組の画素A-Hが三次元点群で対応する点の集合であってもよい。
【0053】
いくつかの実施例において、目標二次元画素Xに対応する三次元点群中の点、及び隣接点集合における少なくとも二つの点に基づいて、前記目標画素と前記一組の画素に対する平面301を取得し、かつ取得された平面グリッド301に基づいて、前記二次元画像110に対する前記三次元画像を生成することができる。
【0054】
該実施例において、平面グリッド301を生成する過程は、コード化及びシート化過程を含むことができる。すなわち、画素と点群との対応関係に基づいて、三次元座標系における点群を符号化してシート化し、それにより二次元画像に対する三次元画像モデルを生成することができる。このように、平面グリッド301の方式で三次元画像モデリングを実現することができ、即ち一枚の二次元画像で三次元モデリングを完了することができ、追加ハードウェアに依存する必要がなく、現場走査を行う必要がなく、高い実用価値を備える。
【0055】
該実施例において、
図3を参照し、一般に平面を決定するために、三つの点のみを必要とし、したがって目標二次元画素Xに対応する三次元点群中の点、及び一組の画素に対応する三次元点群のうちの任意の二つの点に基づいてシート化(すなわち平面化)を実現することができる。この場合、シートは、三角シートであってもよい。それに対応して、平面グリッド301は少なくとも一つの三角グリッドを含むことができる。
【0056】
一つの実施例において、より具体的には、
図3を参照すると、三角シートを実現する過程において、選択された隣接点集合のうちの二つの点に対応する二次元画像110中の画素は隣接する。例えば、目標二次元画素Xを決定した後に、隣接する一組の画素における画素Aと画素Bに対応する3D点群内の点を選択し、かつ画素と点群との対応関係に基づいて、画素A、画素X及び画素Bを3D点群でシート化し、三角シート310を取得する。
【0057】
同様に、画素X、画素B及び画素Cを三角シート化して三角シート320を得て、画素X、画素E及び画素Cを三角シート化して三角シート330を得て、画素X、画素E及び画素Hを三角シート化して三角シート340を得て、画素X、画素G及び画素Hを三角シート化して三角シート350を得て、このように類推して、完全な8つの三角シートで構成された平面グリッド301を得る。さらに、上記方法を二次元画像110の各画素に拡大して、三次元画像モデルを得ることができる。このように、無損失の三次元画像を得ることができ、それによりユーザの対話体験及び没入体験を大幅に向上させる。
【0058】
説明すべきこととして、上記三角シート化の過程は、例示的なものだけであり、当業者はさらに他の任意の適切な方式で三次元画像モデリングを実現し、本開示はこれを制限しない。例えば、精度要求が相対的に低い場合に、さらに三角シートを採用する必要がなく、上記モデリングを行うことができる。すなわち、一組の画素を選択する時に、隣接する画素を取る必要がなく、このように形成された平面グリッド301は相対的に少ないシートで構成することができる。このように、部分精度を犠牲にするが、計算量を大幅に低減し、いくつかの低精度要求の三次元画像モデルに適用することができる。
【0059】
いくつかの実施例において、
図3を参照し、二次元画像110は一般的にテクスチャ情報又は色情報のうちの少なくとも一種の情報を含む。このような実施例において、二次元画像110の画素と三次元点群中点との対応関係に基づいて、テクスチャ情報又は前記色情報のうちの少なくとも一種の情報を平面グリッド301に描画し、かつ描画された平面グリッド301を利用して、二次元画像110に対する三次元画像を表示することができる。テクスチャ情報は画像における同質現象を反映する視覚的特徴であり、テクスチャ情報は、物体表面の緩やかな変化又は周期的変化を有する表面構造組織の配列属性を体現する。階調、色などの画像特徴と異なり、テクスチャは、画素及びその周囲空間近傍の階調分布により表現される。色情報は画像の階調、色などの画像特徴に対応する。
【0060】
該実施例において、二次元画像110に基づく深度画像自体と二次元画像110とは厳密な一対一の対応関係が存在し、すなわち三次元点群とテクスチャ情報及び色情報との間に一対一の対応関係が存在することを意味する。したがって、三次元画像モデルを取得してテクスチャ情報又は色情報のうちの少なくとも一種の情報をレンダリングすることができ、それにより完全な三次元画像モデルを取得する。実際に、該ステップは、テクスチャ情報及び色情報のうちの少なくとも一種の情報を平面グリッド301の対応するシートに貼り付ける過程、即ち三次元画像モデルに対して着色及びレンダリングを行う過程であると理解することができる。
【0061】
ハードウェア走査に基づいて点群を取得する解決手段において、ハードウェアは不可避的に偏差が存在するため、点群とテクスチャ情報及び色情報は、一対多の対応関係が存在し、テクスチャ情報と点群情報は完全に一対一に対応する可能性がなく、最終的にテクスチャ品質の低下を引き起こす。該実施例において、このような空間の強い相関関係により、テクスチャ情報及び色情報が失われることがなく、それにより高品質の、二次元画像110の立体化情報を完全に体現できる三次元画像モデルを得る。
【0062】
図4は、本開示のいくつかの実施例に係る三次元ビデオストリームを生成する過程400のフローチャートを示す。過程400は、
図1に示す計算機器120において実現されてもよく、他の任意の適切な計算機器で実現されてもよい。説明を容易にするために、
図1を参照して過程400を説明する。
【0063】
ブロック410では、ビデオストリーム中の各フレームの二次元画像110に対して対応する三次元画像を生成する。いくつかの実施例において、二次元画像110を三次元画像に生成する過程は、
図2に示す方法に基づいて実現するか又は他の任意の適切な方法に基づいて実現することができる。理解すべきこととして、ビデオストリームの一部のフレームに三次元画像を生成する必要がある場合、一部の特定のフレームを選択して三次元画像モデリングを行うこともでき、本開示はこれを制限しない。
【0064】
ブロック420において、生成された三次元画像を利用して、三次元ビデオストリームを生成する。このように、三次元画像を生成した上で三次元ビデオストリームを得て、さらにユーザの没入体験及びインタラクティブ体験を向上させることができる。
【0065】
図5は、本開示のいくつかの実施例に係る三次元画像を生成する装置500の模式図を示す。装置500は、入力情報取得モジュール510と、三次元点群取得モジュール520と、三次元画像生成モジュール530とを備える。
【0066】
入力情報取得モジュール510は、二次元画像110に対する入力情報を取得するように構成され、前記入力情報は少なくとも二次元画像110の深度情報を含む。前記のように、入力情報はさらに二次元画像の前景マスク、二次元画像の背景マスク、及び二次元画像の修正された画像情報の少なくとも一つを含むことができる。
【0067】
三次元点群取得モジュール520は、二次元画像110及び入力情報を利用して、二次元画像110の各画素に対応する三次元点群を取得するように構成される。
【0068】
いくつかの実施例において、三次元点群取得モジュール520は、正規化処理モジュールを含み、正規化処理モジュールは、二次元画像と入力情報に対して正規化処理を行うことにより、三次元点群を得るように構成される。
【0069】
いくつかの実施例において、三次元点群取得モジュール520は、さらに、三次元座標系変換モジュール及び三次元点群生成モジュールを含み、三次元座標系変換モジュールは、二次元画像110の画素が位置する平面座標系を三次元座標系に変換するように配置され、かつ三次元点群生成モジュールは、二次元画像110の画素に基づいて、三次元座標系における三次元点群を生成するように構成される。
【0070】
いくつかの実施例において、平面座標系は画素座標系又は画像座標系のうちの少なくとも一種を含むことができ、かつ三次元座標系はカメラ座標系又はワールド座標系のうちの少なくとも一種を含むことができる。
【0071】
三次元画像生成モジュール530は、目標二次元画素に対応する三次元点群中の点、及び目標二次元画素に隣接する一組の画素の対応する三次元点群における隣接点集合に基づいて、二次元画像110に対する三次元画像を生成するように構成される。
【0072】
いくつかの実施例において、三次元画像生成モジュール530はさらに平面グリッド取得モジュール及び三次元画像生成サブモジュールを含み、平面グリッド取得モジュールは、目標二次元画素に対応する三次元点群中の点、及び隣接点集合における少なくとも二つの点に基づいて、目標画素と一組の画素に対する平面グリッドを取得するように構成され、かつ三次元画像生成サブモジュールは、取得された平面グリッドに基づいて、二次元画像110に対する三次元画像を生成するように構成される。
【0073】
いくつかの実施例において、隣接点集合における少なくとも二つの点に対応する画素は、隣接することができる。
【0074】
いくつかの実施例において、三次元画像生成モジュール530はさらに平面グリッド描画モジュール及び三次元画像表示モジュールを含み、平面グリッド描画モジュールは、二次元画像110の画素と三次元点群における点の対応関係に基づいて、テクスチャ情報又は色情報のうちの少なくとも一種の情報を平面グリッドに描画し、かつ三次元画像表示モジュールは描画された平面グリッドを利用して、二次元画像110に対する三次元画像を表示するように構成される。
【0075】
図6は、本開示の実施例に係る三次元ビデオストリームを生成する装置600の概略ブロック図である。装置600は、第2の三次元画像生成モジュール610と、三次元ビデオストリーム生成モジュール620とを備える。装置600は、
図1に示される計算機器120において実現されてもよく、他の任意の適切な機器において実現されてもよい。説明を容易にするために、
図1を参照して過程600を説明する。
【0076】
第2の三次元画像生成モジュール610は、ビデオストリーム内の各フレームの二次元画像110に対して、対応する三次元画像を生成するように構成される。三次元画像を生成するステップは、前述したような装置500によって実現されてもよい。
【0077】
三次元ビデオストリーム生成モジュール620は、生成された三次元画像を利用して、三次元ビデオストリームを生成するように構成される。このように、三次元画像を生成した上で三次元ビデオストリームを得て、さらにユーザの没入体験及びインタラクティブ体験を向上させることができる。
【0078】
図7は、本開示の複数の実施例を実施可能な計算機器700のブロック図を示している。
計算機器700は、
図1の計算機器120を実現するために用いることができる。図に示すように、
計算機器700は、中央処理ユニット(CPU)701を含み、それはリードオンリーメモリ(ROM)702に記憶されたコンピュータプログラム命令又は記憶ユニット708からランダムアクセスメモリ(RAM)703にロードされたコンピュータプログラム命令に基づいて、様々な適切な動作及び処理を実行することができる。RAM703には、さらに
計算機器700の操作に必要な様々なプログラム及びデータを記憶することができる。CPU701、ROM702、およびRAM703は、バス704により相互に接続されている。バス704には、さらに、入出力(I/O)インタフェース705も接続されている。
【0079】
計算機器700における複数の部品は、I/Oインタフェース705に接続され、例えばキーボード、マウス等の入力ユニット706と、例えば様々なタイプのディスプレイ、スピーカ等の出力ユニット707と、例えば磁気ディスク、光ディスク等の記憶ユニット708と、例えばネットワークカード、モデム、無線通信トランシーバ等の通信ユニット709と、を含む。通信ユニット709は、計算機器700がインターネット等のコンピュータネットワーク/各種の電気通信網を介して他の装置と情報/データをやり取りすることを可能にする。
【0080】
処理ユニット701は、例えば過程200及び過程400のうちの一つ又は複数という上記各方法及び処理を実行する。例えば、いくつかの実施例において、過程200及び過程400のうちの一つ又は複数はコンピュータソフトウェアプログラムとして実現され、それは、例えば記憶ユニット708という機械可読媒体に一時的に含まれる。いくつかの実施例において、コンピュータプログラムの一部又は全部はROM702及び/又は通信ユニット709を介して計算機器700にロード及び/又はインストールされる。コンピュータプログラムがRAM703にロードされかつCPU701により実行される場合、上記過程200及び過程400のうちの一つ又は複数のステップを実行することができる。代替的に、他の実施例において、CPU701は他の任意の適切な方式(例えば、ファームウェアを介して)により過程200及び過程400のうちの一つ又は複数を実行するように構成されてもよい。
【0081】
本明細書で説明した機能は、少なくとも一部が一つまたは複数のハードウェアロジックによって実行されてもよい。例えば、非限定的に、使用可能な例示的なタイプのハードウェアロジック部品は、フィールドプログラマブルゲートアレイ(FPGA)、専用集積回路(ASIC)、専用標準製品(ASSP)、チップ上システムのシステム(SOC)、ロードプログラマブルロジックデバイス(CPLD)等を含む。
【0082】
本開示の方法を実施するためのプログラムコードは、一つ又は複数のプログラム言語の任意の組み合わせで作成することができる。これらのプログラムコードは、汎用コンピュータ、専用コンピュータ又は他のプログラム可能なデータ処理装置のプロセッサ又はコントローラに提供することができ、それによりプログラムコードはプロセッサ又はコントローラにより実行される時にフローチャート及び/又はブロック図に規定された機能/操作が実施される。プログラムコードは機器に完全に実行され、部分的に機器で実行されてもよく、独立したソフトウェアパッケージ部分として機器で実行されかつ遠隔機器で部分的に実行されるか又は完全に遠隔機器又はサーバで実行される。
【0083】
本開示のコンテキストにおいて、機械可読媒体は有形の媒体であってもよく、それは命令実行システム、装置又は装置の使用又は命令実行システム、装置又は装置と組み合わせて使用されるプログラムを含むか又は記憶することができる。機械可読媒体は機械可読信号媒体又は機械可読記憶媒体であってもよい。機械可読媒体は電子の、磁気的、光学的、電磁的、赤外線の、又は半導体システム、装置又は装置、又は上記内容の任意の適切な組み合わせを含むがそれらに限定されない。機械可読記憶媒体のより具体的な例は一つ以上の線に基づく電気的接続、携帯式コンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、消去可能なプログラマブルリードオンリーメモリ(EPROM又はフラッシュメモリ)、光ファイバ、便利式コンパクトフラッシュ(登録商標)メモリ(CD-ROM)、光記憶装置、磁気記憶装置、又は上記コンテンツの任意の適切な組み合わせを含む。
【0084】
また、特定の順序で各操作を描画したが、これは以下のように理解すべきである:このような操作は示された特定の順序又は順序で実行されることが要求され、又は全ての図示の操作が実行されるように要求されて所望の結果を取得することが要求される。一定の環境で、マルチタスク及び並列処理が有利である可能性がある。同様に、上記においていくつかの具体的な実現詳細を含むが、これらは本開示の範囲を限定するものと解釈されるべきではない。個別の実施例のコンテキストに記述されたいくつかの特徴はさらに組み合わせて単一の実現に実現されてもよい。逆に、単一で実現されるコンテキストに記述された様々な特徴は単独で又は任意の適切なサブセットの方式で複数の実現に実現されてもよい。
【0085】
構造的特徴及び/又は方法の論理動作に特化した言語を用いて本主題を説明したが、添付の特許請求の範囲に限定された主題は必ずしも上記特定の特徴又は動作に限定されるものではないと理解すべきである。逆に、上記特定の特徴及び動作は特許請求の範囲の例示的な形態を実現するだけである。
【手続補正2】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項23】
プロセッサにより実行される時、請求項1-
9のいずれか一項に記載の画像処理方法を実行するコンピュータプログラ
ム。
【国際調査報告】