(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-22
(45)【発行日】2023-12-01
(54)【発明の名称】画像処理方法、装置、コンピュータプログラム、および電子デバイス
(51)【国際特許分類】
G06T 5/00 20060101AFI20231124BHJP
【FI】
G06T5/00 700
(21)【出願番号】P 2022554220
(86)(22)【出願日】2021-05-12
(86)【国際出願番号】 CN2021093232
(87)【国際公開番号】W WO2021249091
(87)【国際公開日】2021-12-16
【審査請求日】2022-10-14
(31)【優先権主張番号】202010524473.7
(32)【優先日】2020-06-10
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】514187420
【氏名又は名称】テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】リー,チー
(72)【発明者】
【氏名】ホアン,チャン
【審査官】▲徳▼田 賢二
(56)【参考文献】
【文献】特開平11-345319(JP,A)
【文献】特表2014-502741(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 5/00
(57)【特許請求の範囲】
【請求項1】
電子デバイスが実行する画像処理方法であって、
拡散反射マップを取得し、前記拡散反射マップにおいてシャドウ領域に位置するシャドウテクセルを取得するステップと、
前記シャドウテクセルの空間座標情報に基づいて平均色ルックアップテーブルにおいて検索を行い、検索結果に基づいて前記シャドウテクセルに対応する平均輝度差を決定するステップと、
前記平均輝度差と、前記シャドウテクセルに対応する色情報とに基づいて、復元色情報を決定し、前記復元色情報に基づいて前記シャドウテクセルの色情報を復元するステップと、を含むことを特徴とする、
画像処理方法。
【請求項2】
前記拡散反射マップを取得する際に、当該方法は、さらに、
前記拡散反射マップに対応する位置マップ、法線マップおよびシャドウマップを取得するステップ、を含む、ことを特徴とする、
請求項1に記載の方法。
【請求項3】
拡散反射マップにおいてシャドウ領域に位置するシャドウテクセルを取得する前記ステップは、
前記シャドウマップにおける、対応するシャドウ領域のテクセルの第1のUV座標を取得するステップと、
前記第1のUV座標を前記拡散反射マップにおけるテクセルのUV座標とマッチングすることで、前記拡散反射マップにおける、前記第1のUV座標にマッチングするテクセルを前記シャドウテクセルとして取得するステップと、を含む、ことを特徴とする、
請求項2に記載の画像処理方法。
【請求項4】
前記平均色ルックアップテーブルには、明るい面平均色ルックアップテーブルおよび暗い面平均色ルックアップテーブルが含まれ、前記拡散反射マップにおいてシャドウ領域に位置するシャドウテクセルを取得する前に、当該方法は、さらに、
前記拡散反射マップにおける各テクセルをトラバースし、前記シャドウマップにおける、各前記テクセルに対応するシャドウ情報に基づいて、各前記テクセルの色情報を明るい面ルックアップテーブルおよび暗い面ルックアップテーブルに累加することで、明るい面色ルックアップテーブルおよび暗い面色ルックアップテーブルを作成するステップと、
前記明るい面色ルックアップテーブルにおける画素の透明値に基づいて、前記明るい面色ルックアップテーブルにおける色情報を変換することで、前記明るい面平均色ルックアップテーブルを取得し、前記暗い面色ルックアップテーブルにおける画素の透明値に基づいて、前記暗い面色ルックアップテーブルにおける色情報を変換することで、前記暗い面平均色ルックアップテーブルを取得するステップと、を含む、ことを特徴とする、
請求項2に記載の画像処理方法。
【請求項5】
前記明るい面ルックアップテーブルおよび前記暗い面ルックアップテーブルは、いずれも、5次元ルックアップテーブルであり、前記5次元ルックアップテーブルには、前記拡散反射マップにおけるテクセルの空間直交座標系での3つの座標次元と、テクセルに対応する法線の経度および緯度とが含まれる、ことを特徴とする、請求項4に記載の画像処理方法。
【請求項6】
前記明るい面色ルックアップテーブルにおける画素の透明値に基づいて、前記明るい面色ルックアップテーブルにおける色情報を変換することで、前記明るい面平均色ルックアップテーブルを取得し、前記暗い面色ルックアップテーブルにおける画素の透明値に基づいて、前記暗い面色ルックアップテーブルにおける色情報を変換することで、前記暗い面平均色ルックアップテーブルを取得する前記ステップは、
前記明るい面色ルックアップテーブルにおける全ての画素の透明値の第1の合計値を取得するとともに、前記暗い面色ルックアップテーブルにおける全ての画素の透明値の第2の合計値を取得するステップと、
前記明るい面色ルックアップテーブルにおける各画素の色情報を前記第1の合計値で除算することで、前記明るい面平均色ルックアップテーブルを取得するステップと、
前記暗い面色ルックアップテーブルにおける各画素の色情報を前記第2の合計値で除算することで、前記暗い面平均色ルックアップテーブルを取得するステップと、を含む、ことを特徴とする、
請求項4に記載の画像処理方法。
【請求項7】
前記シャドウマップにおける、各前記テクセルに対応するシャドウ情報に基づいて、各前記テクセルの色情報を明るい面ルックアップテーブルおよび暗い面ルックアップテーブルに累加することで、明るい面色ルックアップテーブルおよび暗い面色ルックアップテーブルを作成する前記ステップは、
各前記テクセルの色情報における透明値に基づいてターゲットテクセルを決定し、前記ターゲットテクセルの第2のUV座標を取得するステップと、
前記第2のUV座標に基づいて、前記シャドウマップにおいて、前記ターゲットテクセルに対応するターゲットシャドウ情報を決定し、前記ターゲットシャドウ情報に基づいて、前記明るい面ルックアップテーブルおよび前記暗い面ルックアップテーブルから、ターゲットルックアップテーブルを決定するステップと、
前記第2のUV座標に基づいて、前記位置マップおよび前記法線マップのそれぞれにおいて、ターゲット位置情報およびターゲット法線情報を決定するステップと、
前記ターゲット位置情報および前記ターゲット法線情報に基づいて、前記ターゲットルックアップテーブルにおいてターゲット画素を決定し、前記ターゲットテクセルの色情報を前記ターゲット画素に累加することで、前記明るい面色ルックアップテーブルおよび前記暗い面色ルックアップテーブルを作成するステップと、を含む、ことを特徴とする、
請求項4に記載の画像処理方法。
【請求項8】
前記ターゲット位置情報は、前記ターゲットテクセルの空間直交座標系での位置座標であり、前記ターゲット法線情報は、前記ターゲットテクセルに対応する法線の経度および緯度であり、前記ターゲットシャドウ情報は、前記ターゲットテクセルが前記シャドウテクセルであるかどうかを表すために使用されるものである、ことを特徴とする、請求項7に記載の画像処理方法。
【請求項9】
前記第2のUV座標に基づいて、前記シャドウマップにおいて、前記ターゲットテクセルに対応するターゲットシャドウ情報を決定し、前記ターゲットシャドウ情報に基づいて、前記明るい面ルックアップテーブルおよび前記暗い面ルックアップテーブルから、ターゲットルックアップテーブルを決定する前記ステップは、
前記第2のUV座標に基づいて前記シャドウマップにおいて検索を行うことで、前記ターゲットシャドウ情報を取得し、前記ターゲットシャドウ情報のタイプを判断するステップと、
前記ターゲットテクセルがシャドウテクセルであることを前記ターゲットシャドウ情報が表す場合、前記暗い面ルックアップテーブルを前記ターゲットルックアップテーブルとするステップと、
前記ターゲットテクセルが非シャドウテクセルであることを前記ターゲットシャドウ情報が表す場合、前記明るい面ルックアップテーブルを前記ターゲットルックアップテーブルとするステップと、を含む、ことを特徴とする、
請求項8に記載の画像処理方法。
【請求項10】
前記明るい面色ルックアップテーブルおよび前記暗い面色ルックアップテーブルを取得した後、当該方法は、さらに、
前記明るい面色ルックアップテーブルおよび前記暗い面色ルックアップテーブルのそれぞれに対して、マルチレベルのダウンサンプリングを行うことで、明るい面平均色マップセットおよび暗い面平均色マップセットを取得するステップであって、前記明るい面平均色マップセットには、サイズの異なる複数の明るい面平均色マップが含まれ、前記暗い面平均色マップセットには、サイズの異なる複数の暗い面平均色マップが含まれるステップ、を含む、ことを特徴とする、
請求項4に記載の画像処理方法。
【請求項11】
前記シャドウテクセルの空間座標情報に基づいて平均色ルックアップテーブルにおいて検索を行い、検索結果に基づいて前記シャドウテクセルに対応する平均輝度差を決定する前記ステップは、
前記シャドウテクセルの空間座標情報に基づいて、前記暗い面平均色ルックアップテーブルにおいて、前記空間座標情報に対応しており、かつ値がゼロではない暗い面平均色情報を決定するステップと、
前記空間座標情報に基づいて、前記明るい面平均色マップセットにおいて、低レベル明るい面平均色マップから高レベル明るい面平均色マップへレベルごとに検索することで、前記空間座標情報に対応しており、かつ値がゼロではない明るい面平均色情報を取得するステップと、
前記明るい面平均色情報および前記暗い面平均色情報に基づいて、前記平均輝度差を決定するステップと、を含む、ことを特徴とする、
請求項10に記載の画像処理方法。
【請求項12】
当該方法は、さらに、
前記暗い面平均色情報を決定する際に、前記暗い面平均色ルックアップテーブルに対して多次元線形補間処理を行うステップ、を含む、ことを特徴とする、
請求項11に記載の画像処理方法。
【請求項13】
前記明るい面平均色情報および前記暗い面平均色情報に基づいて、前記平均輝度差を決定する前記ステップは、
前記明るい面平均色情報における明るい面RGBベクトルおよび前記暗い面平均色情報における暗い面RGBベクトルを取得するステップと、
前記明るい面RGBベクトルを前記暗い面RGBベクトルで除算することで、前記平均輝度差を取得するステップと、を含む、ことを特徴とする、
請求項11に記載の画像処理方法。
【請求項14】
前記平均輝度差と、前記シャドウテクセルに対応する色情報とに基づいて、復元色情報を決定する前記ステップは、
前記平均輝度差と、前記シャドウテクセルに対応する色情報におけるRGBベクトルとを乘算することで、前記復元色情報を取得するステップ、を含む、ことを特徴とする、
請求項1または13に記載の画像処理方法。
【請求項15】
前記拡散反射マップにおいてシャドウ領域に位置するシャドウテクセルを取得する前記ステップの前に、当該方法は、さらに、
前記シャドウマップにおけるエッジテクセルを抽出し、前記エッジテクセルに基づいて、前記拡散反射マップにおいて中心テクセルを決定するステップと、
前記中心テクセルおよび予め設定された範囲に基づいて、ターゲットマップ領域を決定し、前記シャドウマップに基づいて、前記ターゲットマップ領域における明るい部分領域および暗い部分領域を決定するステップと、
前記明るい部分領域に対応する明るい部分平均色および前記暗い部分領域に対応する暗い部分平均色をそれぞれ算出し、前記明るい部分平均色および前記暗い部分平均色に基づいて平均輝度差を決定し、前記平均輝度差を前記平均色ルックアップテーブルに累加するステップと、を含む、ことを特徴とする、
請求項2に記載の画像処理方法。
【請求項16】
前記シャドウマップにおけるエッジテクセルを抽出し、前記エッジテクセルに基づいて、前記拡散反射マップにおいて中心テクセルを決定する前記ステップは、
水平方向テンプレートおよび垂直方向テンプレートによって、前記シャドウマップに対して近傍畳み込みを行うことで、前記エッジテクセルを取得するステップと、
前記エッジテクセルの第3のUV座標を取得し、前記第3のUV座標に基づいて、前記拡散反射マップにおいて検索を行うことで、前記中心テクセルを取得するステップと、を含む、ことを特徴とする、
請求項15に記載の画像処理方法。
【請求項17】
前記シャドウマップに基づいて、前記ターゲットマップ領域における明るい部分領域および暗い部分領域を決定する前記ステップは、
前記ターゲットマップ領域における各テクセルの第4のUV座標を取得し、前記第4のUV座標および前記シャドウマップに基づいて、前記ターゲットマップ領域における各テクセルに対応するシャドウ情報を決定するステップと、
シャドウ情報が非シャドウテクセルであってかつ空間座標情報が隣接しているテクセルによって作成された領域を、前記明るい部分領域とし、シャドウ情報がシャドウテクセルであってかつ空間座標情報が隣接しているテクセルによって作成された領域を、前記暗い部分領域とするステップと、を含む、ことを特徴とする、
請求項15に記載の画像処理方法。
【請求項18】
前記明るい部分領域に対応する明るい部分平均色および前記暗い部分領域に対応する暗い部分平均色をそれぞれ算出する前記ステップは、
前記明るい部分領域における全てのテクセルの色情報を加算することで明るい部分色情報を取得するとともに、前記明るい部分領域における全てのテクセルの色情報における透明値を加算することで第3の合計値を取得するステップと、
前記暗い部分領域における全てのテクセルの色情報を加算することで暗い部分色情報を取得するとともに、前記暗い部分領域における全てのテクセルの色情報における透明値を加算することで第4の合計値を取得するステップと、
前記明るい部分色情報を前記第3の合計値で除算することで前記明るい部分平均色を取得し、前記暗い部分色情報を前記第4の合計値で除算することで前記暗い部分平均色を取得するステップと、を含む、ことを特徴とする、
請求項15に記載の画像処理方法。
【請求項19】
前記明るい部分平均色および前記暗い部分平均色に基づいて平均輝度差を決定する前記ステップは、
前記明るい部分平均色における明るい部分RGBベクトルと、前記暗い部分平均色における暗い部分RGBベクトルとを取得するステップと、
前記明るい部分RGBベクトルを前記暗い部分RGBベクトルで除算することで、前記平均輝度差を取得するステップと、を含む、ことを特徴とする、
請求項15に記載の画像処理方法。
【請求項20】
前記平均色ルックアップテーブルは、4次元ルックアップテーブルであり、前記中心テクセルの空間位置座標の3つの次元と、暗い部分平均色の色均値とを含む、
ことを特徴とする請求項19に記載の画像処理方法。
【請求項21】
前記シャドウテクセルの空間座標情報に基づいて平均色ルックアップテーブルにおいて検索を行い、検索結果に基づいて前記シャドウテクセルに対応する平均輝度差を決定する前記ステップは、
前記位置マップに基づいて前記シャドウテクセルの空間位置座標を決定するとともに、前記シャドウテクセルに対応する暗い部分平均色の色均値を取得するステップと、
前記シャドウテクセルの空間位置座標と、暗い部分平均色の色均値とに基づいて、前記平均色ルックアップテーブルにおいて、対応する平均輝度差を検索するステップと、を含む、ことを特徴とする、
請求項20に記載の画像処理方法。
【請求項22】
前記シャドウテクセルの空間位置座標と、暗い部分平均色の色均値とに基づいて、前記平均色ルックアップテーブルにおいて、対応する平均輝度差を検索する前記ステップは、
前記シャドウテクセルの空間位置座標と、暗い部分平均色の色均値とに基づいて、前記平均色ルックアップテーブルにおいて、対応する平均輝度差が存在しているかどうかを検索するステップと、
存在しない場合、前記シャドウテクセルの空間位置座標と、暗い部分平均色の色均値とに基づいて、前記平均色ルックアップテーブルに対応する平均色マップセットにおいて、対応する平均輝度差を検索するステップであって、前記平均色マップセットには、前記平均色ルックアップテーブルに対してマルチレベルのダウンサンプリングを行うことで作成された複数のマップが含まれるステップと、を含む、ことを特徴とする、
請求項21に記載の画像処理方法。
【請求項23】
当該方法は、さらに、
前記平均輝度差を検索するとき、前記平均色ルックアップテーブルに対して多次元線形補間処理を行うステップ、を含む、ことを特徴とする、
請求項22に記載の画像処理方法。
【請求項24】
前記平均輝度差と、前記シャドウテクセルに対応する色情報とに基づいて、復元色情報を決定する前記ステップは、
前記平均輝度差と、前記シャドウテクセルに対応する色情報におけるRGBベクトルとを乘算することで、前記復元色情報を取得するステップ、を含む、ことを特徴とする、
請求項21または22に記載の画像処理方法。
【請求項25】
当該方法は、さらに、
前記拡散反射マップにおけるシャドウテクセルと非シャドウテクセルとの間の境界に対してぼかし処理を行うステップ、を含む、ことを特徴とする、
請求項1に記載の画像処理方法。
【請求項26】
当該方法は、さらに、
前記拡散反射マップにおける各テクセルの法線情報に基づいて、第1の平均色ルックアップテーブルを構築するステップと、
前記第1の平均色ルックアップテーブルに基づいて、前記拡散反射マップに対応する全体平均明るい領域色情報を決定し、前記第1の平均色ルックアップテーブルに基づいて、中間結果マップを取得するステップと、
前記中間結果マップおよびアンビエントオクルージョンマップに基づいて、第2の平均色ルックアップテーブルを構築するステップと、
前記中間結果マップにおける各テクセルをトラバースし、前記第2の平均色ルックアップテーブルにおける各テクセルの色情報に基づいて復元色情報を決定し、復元色情報に基づいて各テクセルの色を復元するステップと、を含む、ことを特徴とする、
請求項1に記載の画像処理方法。
【請求項27】
画像処理装置であって、
拡散反射マップを取得し、前記拡散反射マップにおいてシャドウ領域に位置するシャドウテクセルを取得する取得モジュールと、
前記シャドウテクセルの空間座標情報に基づいて平均色ルックアップテーブルにおいて検索を行い、検索結果に基づいて前記シャドウテクセルに対応する平均輝度差を決定する算出モジュールと、
前記平均輝度差と、前記シャドウテクセルに対応する色情報とに基づいて、復元色情報を決定し、前記復元色情報に基づいて前記シャドウテクセルの色情報を復元する復元モジュールと、を含むことを特徴とする、
装置。
【請求項28】
電子デバイスであって、
1つまたは複数のプロセッサと、
前記1つまたは複数のプロセッサによって実行されるとき、請求項1~26のいずれか1項に記載の画像処理方法を、前記1つまたは複数のプロセッサに実行させる1つまたは複数のプログラムを記憶する記憶装置と、を含むことを特徴とする、
電子デバイス。
【請求項29】
命令が含まれているコンピュータプログラムであって、
前記命令が電子デバイス上で実行されるとき、請求項1~26のいずれか1項に記載の画像処理方法を電子デバイスに実行させる、
ことを特徴とする、
コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
本願は、2020年6月10日に中国特許局に出願された、出願番号が202010524473.7であり、発明名称が「画像処理方法、装置、コンピュータ記憶媒体、および電子デバイス」である、中国特許出願の優先権を主張しており、そのすべての内容が、参照により本願に組み込まれる。
【0002】
(技術分野)
本願は、画像処理の技術分野に関し、具体的には、画像におけるシャドウを除去するための技術に関する。
【背景技術】
【0003】
美術デザインでは、通常、写真測量法に基づく3次元モデルモデリング技術を採用してモデリングを行うが、写真測量法に基づく3次元モデルモデリング技術では、複数枚の写真を使用して3次元モデリングを行い、複数枚の写真の画素色情報を使用して物品の拡散反射色情報を復元する必要があるため、生成されたモデルのカラーマップには、元の写真におけるシャドウが必ず付けられている。
【0004】
生成されたモデルを任意のライティング条件のシーンで使用するために、元の色情報をできるだけ多く保持している前提で、拡散反射マップにおけるシャドウを除去する必要がある。拡散反射マップにおけるシャドウには、直射光の作用によるシャドウと、アンビエント光の作用によるシャドウと、が含まれ、現在、一般的には、Agisoft Texture Delightingなどのツールを使用して直射光の作用によるシャドウを除去し、Unity De-Lightingtoolなどのツールを使用して非直射光の作用によるシャドウを除去し、しかしながら、ライティングによるシャドウを除去するこれらのスキームでは、マップディテール(map detail)の消失、色相(Hue)の変化、カラーブリーディング(color bleeding)やカラーパッチ(Color patch)の発生などの問題が一般的に存在してしまい、その結果、シャドウが除去された後の拡散反射マップによって生成されたモデルは、その効果がリアルではなく、任意のライティング条件のシーンではいずれも適用され得るわけではない。
【発明の概要】
【0005】
本願の実施例は、画像処理方法、画像処理装置、コンピュータ読み取り可能な記憶媒体および電子デバイスを提供し、拡散反射マップにおけるシャドウの除去効率および除去品質を少なくともある程度で向上させることができ、さらに、シャドウが除去された拡散反射マップによって生成されたモデルの画像品質を向上させることができる。
【0006】
本願の実施例の一態様によれば、電子デバイスが実行する画像処理方法が提供され、拡散反射マップを取得し、拡散反射マップにおいてシャドウ領域に位置するシャドウテクセルを取得するステップと、シャドウテクセルの空間座標情報に基づいて平均色ルックアップテーブルにおいて検索を行い、検索結果に基づいてシャドウテクセルに対応する平均輝度差を決定するステップと、平均輝度差と、シャドウテクセルに対応する色情報とに基づいて、復元色情報を決定し、復元色情報に基づいてシャドウテクセルの色情報を復元するステップと、を含む。
【0007】
本願の実施例の一態様によれば、画像処理装置が提供され、拡散反射マップを取得し、拡散反射マップにおいてシャドウ領域に位置するシャドウテクセルを取得する取得モジュールと、シャドウテクセルの空間座標情報に基づいて平均色ルックアップテーブルにおいて検索を行い、検索結果に基づいてシャドウテクセルに対応する平均輝度差を決定する算出モジュールと、平均輝度差と、シャドウテクセルに対応する色情報とに基づいて、復元色情報を決定し、復元色情報に基づいてシャドウテクセルの色情報を復元する復元モジュールと、を含む。
【0008】
本願の実施例の一態様によれば、コンピュータプログラムが記憶されているコンピュータ読み取り可能な記憶媒体が提供され、コンピュータプログラムがプロセッサによって実行されるとき、上記の実施例に記載の画像処理方法が実現される。
【0009】
本願の実施例の一態様によれば、電子デバイスが提供され、1つまたは複数のプロセッサと、1つまたは複数のプロセッサによって実行されるとき、上記の実施例に記載の画像処理方法を、1つまたは複数のプロセッサに実行させる1つまたは複数のプログラムを記憶する記憶装置と、を含む。
【0010】
本願の実施例の一態様によれば、命令が含まれているコンピュータプログラム製品が提供され、前記命令がコンピュータ上で実行されるとき、上記の実施例に記載の画像処理方法をコンピュータに実行させる。
【0011】
本願のいくつかの実施例によって提供される技術案において、まず、拡散反射マップを取得し、拡散反射マップにおいてシャドウ領域に位置するシャドウテクセルを取得し、次に、シャドウテクセルの空間座標情報に基づいて平均色ルックアップテーブルにおいて検索を行い、検索結果に基づいてシャドウテクセルに対応する平均輝度差を決定し、最後、平均輝度差と、シャドウテクセルに対応する色情報とに基づいて、復元色情報を決定し、復元色情報に基づいてシャドウテクセルの色情報を復元する。本願の技術案は、一方で、色復元の効率および品質を向上させ、他の一方で、マップにおける非シャドウ領域のテクセルの色に影響を及ぼさず、これにより、マップディテールの消失、色相の変化、カラーブリーディングやカラーパッチの発生などの問題が回避され、マップに基づいて生成されたモデルが任意のライティング条件のシーンでは適用できることが確保され、さらに、画面効果およびユーザ体験を向上させる。
【図面の簡単な説明】
【0012】
【
図1】本開示の実施例の技術的解決手段を適用できる例示的なシステムアーキテクチャを示す模式図である。
【
図2A】関連技術における、モデルテクスチャを処理するためのインターフェースを模式的に示す図である。
【
図2B】関連技術における、モデルテクスチャを処理するためのインターフェースを模式的に示す図である。
【
図3】本開示の一実施例による、画像処理方法のフローチャートを模式的に示す図である。
【
図4】本開示の一実施例による、シャドウテクセルを決定するプロセスの模式図を模式的に示す図である。
【
図5】本開示の一実施例による、明るい面平均色ルックアップテーブルおよび暗い面平均色ルックアップテーブルを取得するプロセスの模式図を模式的に示す図である。
【
図6】本開示の一実施例による、明るい面色ルックアップテーブルおよび暗い面色ルックアップテーブルを取得するプロセスの模式図を模式的に示す図である。
【
図7】本開示の一実施例による、明るい面平均色ルックアップテーブルおよび暗い面平均色ルックアップテーブルを構築するプロセスの模式図を模式的に示す図である。
【
図8】本開示の一実施例による、平均色ルックアップテーブルを作成するプロセスの模式図を模式的に示す図である。
【
図9】本開示の一実施例による、明るい部平均色および暗い部平均色を算出するプロセスの模式図を模式的に示す図である。
【
図10】本開示の一実施例による、非直射光の照射によるシャドウを除去するプロセスの模式図を模式的に示す図である。
【
図11】本開示の一実施例による、本開示の画像処理方法に基づいてモデルにおけるシャドウを除去するためのインターフェースを模式的に示す図である。
【
図12A】本開示の一実施例による、モデルにおける非直射光のシャドウの除去前および除去後のインターフェースを模式的に示す図である。
【
図12B】本開示の一実施例による、モデルにおける非直射光のシャドウの除去前および除去後のインターフェースを模式的に示す図である。
【
図12C】本開示の一実施例による、モデルにおける非直射光のシャドウの除去前および除去後のインターフェースを模式的に示す図である。
【
図13】本開示の一実施例による、画像処理装置のブロック図を模式的に示す図である。
【
図14】本開示の一実施例による、画像処理装置のブロック図を模式的に示す図である。
【
図15】本開示の実施例に係る電子デバイスを実現するのに好適なコンピュータシステムの構成を示す模式図である。
【発明を実施するための形態】
【0013】
図1は、本願の実施例の技術的解決手段を適用できる例示的なシステムアーキテクチャの模式図を示す。
【0014】
図1に示すように、システムアーキテクチャ100には、端末デバイス101と、ネットワーク102と、サーバ103とが含まれ、これらのうち、端末デバイス101は、表示スクリーンおよび撮影ユニットを有する任意の電子デバイス、例えば、タブレットコンピュータ、ノード型コンピュータ、デスクトップコンピュータ、スマートフォン、カメラ、ビデオカメラなどの電子デバイスであり得て、ネットワーク102は、端末デバイス101とサーバ103との間で通信リンクを提供するための媒体であり、ネットワーク102には、様々な接続タイプ、例えば、有線通信リンク、無線通信リンクなどが含まれ得て、サーバ103は、独立したサーバであってもよく、複数のサーバによって構成されるサーバクラスタであってもよい。
【0015】
理解すべきものとして、
図1における端末デバイス101、ネットワーク102、サーバ103の数は、模式的なものに過ぎない。実際のニーズに応じて、当該システムアーキテクチャには、任意の数の端末デバイス101、ネットワーク102、サーバ103を有することができる。
【0016】
本願の一実施例では、ユーザは、端末デバイス101の撮影ユニットによって、実空間の物体を複数の角度で撮影し、その後、撮影により得られた複数枚の写真を、モデルレンダリングエンジンが搭載されているデバイス(例えば、サーバ103)に伝送して3次元モデリングを行う。3次元モデリングを行う過程において、複数枚の写真の画素色情報によって、物品の拡散反射色情報を復元し、直射光および/または非直射光による作用のため、通常、写真にシャドウが存在し、でも、モデリングを行う際には、実際のニーズに応じて、ライティングのタイプや角度を調整する場合があり、写真における色情報を直接に使用すると、最終的に生成されたモデルにおいて、シャドウが存在すべきではない位置にシャドウが存在してしまい、結果として、モデルは、歪みが生じ、任意のライティング条件のシーンではいずれも使用され得るわけでない。
【0017】
本願の実施例では、ユーザが端末デバイス101を介して写真を撮影した後、端末デバイス101は、レンダリングエンジンを介してモデルに対応する剛体モデルを処理し、テクスチャマップを転写した後、テクスチャマップをエクスポートし、当該テクスチャマップには、拡散反射マップ、位置マップ、法線マップ、シャドウマップ、およびアンビエントオクルージョン(Ambient Occlusion)マップが含まれ、テクスチャマップを取得した後、ネットワーク102を介してテクスチャマップをサーバ103に送信することによって、拡散反射マップにおけるシャドウテクセルの色をサーバ103に復元させることができる。サーバ103は、テクスチャマップを接收した後、拡散反射マップにおけるシャドウテクセルに対応する色情報および平均輝度差に基づいて復元色情報を決定し、拡散反射マップにおけるシャドウテクセルの色情報を復元色情報に更新することにより、画像におけるシャドウを除去することができる。さらに、端末デバイス101は、ネットワーク102を介して写真をサーバ103に送信し、サーバ103に搭載されているレンダリングエンジンを介して、これらの写真に基づいて3次元モデリングを行い、モデリング過程において作成されたテクスチャマップを取得することもできる。
【0018】
本願の一実施例では、シャドウテクセルに対応する平均輝度差を異なる方法によって取得し、平均輝度差と、シャドウテクセルの色情報とに基づいて、シャドウテクセルを復元することができる。
【0019】
1つの方法として、拡散反射マップにおける各テクセルの明るい面色情報および暗い面色情報を収集し、明るい面色情報および暗い面色情報に基づいて、明るい面色ルックアップテーブルおよび暗い面色ルックアップテーブルをそれぞれ作成し、さらに、明るい面色ルックアップテーブルおよび暗い面色ルックアップテーブルにおける各画素の透明値に基づいて、明るい面色ルックアップテーブルにおける明るい面色情報を明るい面平均色に変換し、暗い面色ルックアップテーブルにおける暗い面色情報を暗い面平均色に変換し、明るい面平均色ルックアップテーブルおよび暗い面平均色ルックアップテーブルを作成することができ、また、明るい面色ルックアップテーブルおよび暗い面色ルックアップテーブルのそれぞれに対して、マルチレベルのダウンサンプリングを行うことで、明るい面平均色マップセットおよび暗い面平均色マップセットを取得することができる。その後、拡散反射マップにおける各シャドウテクセルの空間座標情報に基づいて、明るい面平均色ルックアップテーブルおよび暗い面平均色ルックアップテーブルにおいて、当該空間座標情報に対応しており、かつゼロではない明るい面平均色情報および暗い面平均色情報をそれぞれ検索し、さらに、明るい面平均色情報および暗い面平均色情報に基づいて、平均輝度差を決定することができ、対応する平均色情報が検出されていない場合、空間座標情報に基づいて、明るい面平均色マップセットおよび/または暗い面平均色マップセットにおいて検索することができ、各シャドウテクセルについては、それに対応する少なくとも1つの明るい面平均色情報および暗い面平均色情報が必然的に存在している。最後に、明るい面平均色情報、暗い面平均色情報およびシャドウテクセルの色情報に基づいて、復元色情報を決定し、当該復元色情報に基づいてシャドウテクセルの色を復元することができる。
【0020】
平均輝度差を取得する別の方法として、エッジ抽出アルゴリズムによってシャドウマップにおけるエッジを抽出し、エッジ点を中心点として拡散反射マップにおいて明るい部分領域および暗い部分領域を決定し、その後、明るい部分領域の明るい部分平均色および暗い部分領域の暗い部分平均色を収集して、明るい部分平均色および暗い部分平均色に基づいて平均輝度差を決定し、当該平均輝度差が4次元ルックアップテーブルに記憶されて平均色ルックアップテーブルが作成され得ており、さらに、平均色ルックアップテーブルに対してダウンサンプリングを複数回行って、平均色マップセットを取得することができ、最後に、拡散反射マップにおけるシャドウテクセルの空間位置座標および暗い部分輝度情報に基づいて、平均色ルックアップテーブルまたは平均色マップセットにおいて、シャドウテクセルに対応する平均輝度差を検索して、平均輝度差と、シャドウテクセルの色情報とに基づいて、復元色情報を決定し、さらに、当該復元色情報に基づいて、シャドウテクセルの色を復元することができる。
【0021】
本願の実施例の技術的解決手段は、一方で、色復元の効率および品質を向上させ、他の一方で、マップにおける非シャドウ領域のテクセルの色に影響を及ぼさず、これにより、マップディテールの消失、色相の変化、カラーブリーディングやカラーパッチの発生などの問題が回避され、マップに基づいて生成されたモデルが任意のライティング条件のシーンでは適用できることが確保され、さらに、画面効果およびユーザ体験を向上させる。
【0022】
説明する必要があるものとして、本願の実施例によって提供される画像処理方法は、サーバによって実行されてもよく、相応的に、画像処理装置は、サーバに配置され得る。ただし、本願の別の実施例では、本願の実施例によって提供される画像処理方法は、端末デバイスによって実行されてもよい。
【0023】
本分野の関連技術では、直射光ライティングを除去するために、通常、Agisoft Texture Delightingというツールを使用して処理を行うが、通常、マップディテールの消失、色相の変化、カラーブリーディングやカラーパッチの発生などの問題が存在している。
図2A~
図2Bは、モデルテクスチャを処理して得られたモデルテクスチャの模式図を示し、
図2Aは、直射光ライティングが除去されていないオリジナルモデルテクスチャを示し、物体のバックライト面にシャドウが存在していることが分かり(図における楕円形マークで示されるように)、
図2Bは、Agisoft Texture Delightingというツールを使用して直射光ライティングが除去されたモデルテクスチャを示し、このツールで処理することにより、シャドウの度合いを低減できるものの、残留するシャドウが存在しており(図における楕円形マークで示されるように)、シャドウ部分のテクスチャには、ひとつずつ複数のカラーパッチが存在し、また、コニカルカラムの色相やカラーがオリジナル写真の色相やカラーよりも変わっている。
【0024】
関連技術に存在している問題に鑑みて、本願の実施例は、画像処理方法を提供し、当該画像処理方法は、拡散反射マップにおけるシャドウを除去することができ、また、シャドウが除去された拡散反射マップに基づいて生成されたモデルが任意のライティング条件のシーンでは使用できることを確保する。
【0025】
図3は、本開示の一実施例による画像処理方法のフローチャートを模式的に示し、当該方法は、サーバによって実行されてもよく、当該サーバは、
図1に示すサーバ103である。
図3に示されるものを参照すると、当該画像処理方法は、少なくとも、ステップS310~ステップS330を含み、詳細は、以下の通りである。
【0026】
ステップS310では、拡散反射マップを取得し、前記拡散反射マップにおいてシャドウ領域に位置するシャドウテクセルを取得する。
【0027】
本願の一実施例では、同一シーンについての異なる角度からの複数枚の写真を取得した後、写真測量法に基づく3次元モデルモデリング技術を採用して、複数枚の写真に基づいて3次元モデリングを行うことができる。モデリングの過程では、まず、写真に基づいて、頂点色を持つ対応する3次元モデル情報を取得することができ、当該頂点色を持つ3次元モデル情報は、色情報を含むポイントクラウド情報であり、色情報を含むポイントクラウド情報を取得した後、グラフィックソフトウェアを使用してテクスチャマップマッピングを行うことでテクスチャマップを生成することができ、具体的には、任意のプログラマブルパイプラインの3次元グラフィックインターフェースを呼び出して、標準的なラスタライズ化でモデルをレンダリングターゲット上にレンダリングして、頂点着色器を介してモデルの頂点座標をテクスチャマップマッピングのUV座標に設定することで、テクスチャマップの転写を実現することができ、ここで、UV座標は、UVテクスチャマップ座標の略称であり、全ての画像は、2次元の1つの平面であり、水平方向がUであり、垂直方向がVであり、この平面の2次元のUV座標系によって画像上のいずれかの画素を位置決めることができる。
【0028】
テクスチャマップは、モデルの表面拡散反射、法線、物品の空間位置などの情報を表すためのマップであり、各マップは、モデルのUV座標の形式でマッピングして記憶され、本願の実施例では、テクスチャマップは、拡散反射マップ、位置マップ、法線マップ、シャドウマップを含み、さらに、アンビエントオクルージョンマップおよびベント法線マップを含んでもよい。マップが転写される場合、拡散反射マップ、位置マップおよび法線マップを例にすると、頂点着色器において色情報、物品の空間位置、法線情報を算出した後、GPUによってラスタライズ化を行う際に線性補間が実行され、対応する拡散反射マップ、位置マップ、法線マップのレンダリングターゲット上にレンダリングされ、グラフィックソフトウェアによって、拡散反射マップ、位置マップおよび法線マップが使用待ちのためにエクスポートされる。
【0029】
さらに、直射光の場合、グラフィックソフトウェアにおいて直射光の方向を指定し、光源を視点として、直交投影によってモデルをレンダリングして深度情報ビットマップを得ることができ、ここで、グラフィックソフトウェアにおいて直射光の方向を指定することは、2つの方式によって実現され得て、1つの方式では、モデルにおいて原点および投影点を指定し、グラフィックソフトウェアは、原点および投影点の情報に基づいて、直射光の方向を算出することができ、別の方式では、撮影時の経緯度および時間を機器によって測量し、グラフィックソフトウェアは、経緯度および時間に基づいて、直射光方向を算出することができる。
【0030】
深度情報ビットマップを取得した後、画素着色器において、画素が所在する物品の空間座標を取得し、空間座標に対して線性変換処理を行うことで、変換により深度情報ビットマップに対応する座標を得て、深度情報ビットマップにおける情報を取得し、予め設定された深度値と比較して、シャドウマップを得ることができ、当該シャドウマップは、モデルの表面が特定の光源により直接に照射され得るかどうかを表すためのものであり、シャドウマップにおいて、テクセルがシャドウテクセルであるか、非シャドウテクセルであるかを異なる数値で表すことができ、例えばシャドウマップは、0と1からなるマップであってもよく、ここで、0は、非シャドウテクセルを表し、1は、シャドウテクセルを表す。拡散反射マップ、位置マップ、法線マップと類似に、シャドウマップもUV座標で転写されて記憶される。
【0031】
本願の一実施例では、写真測量法に基づく3次元モデルモデリング技術を採用して3次元モデリングを行う際に、太陽や照明灯などの、固定の光出射方向を有する光源による直射光であろうと、非固定光源から放射された非直射光であろうと、撮影された写真にはシャドウが存在し、このうち、直射光によるシャドウは、より一般的である。モデルが任意のライティング条件のシーンでは使用できるようにするために、様々な光によるシャドウを除去する必要がある。本願の実施例では、拡散反射マップにおいてシャドウ領域に位置するシャドウテクセルの色を復元することにより、シャドウの除去が実現される。次に、直射光のライティングによるシャドウテクセルの色をどのように復元するかについて、詳細に説明する。
【0032】
本願の一実施例では、拡散反射マップを取得すると同時に、拡散反射マップに対応する位置マップ、法線マップおよびシャドウマップを取得することができ、まず、拡散反射マップにおいてシャドウ領域に位置するシャドウテクセルを決定する必要があり、そして、ターゲティング的に色復元を行い、画像におけるシャドウを除去することができる。
【0033】
図4は、シャドウテクセルを決定するプロセスの模式図を示し、
図4に示すように、ステップS401では、シャドウマップにおける、対応するシャドウ領域のテクセルの第1のUV座標を取得し、ステップS402では、第1のUV座標を拡散反射マップにおけるテクセルのUV座標とマッチングすることで、拡散反射マップにおける、第1のUV座標に対応するテクセルをシャドウテクセルとして取得する。
【0034】
ここで、ステップS401では、上記実施例においてシャドウ値を0/1で表すシャドウマップを例にすると、ここで、シャドウ値が1であるテクセルは、シャドウ領域に位置するテクセルであり、シャドウマップから取得されたこれらのテクセルのUV座標は、第1のUV座標である。拡散反射マップおよびシャドウマップは、UV座標によってマッピングされて記憶されるため、拡散反射マップおよびシャドウマップにおいて、同一UV座標に対応するテクセルは、モデルにおける同一面に対応し、さらに、第1のUV座標が取得された後、当該第1のUV座標に基づいて、拡散反射マップにおける、第1のUV座標に対応するテクセルを検索することができ、このテクセルは、拡散反射マップにおいてシャドウ領域に位置するシャドウテクセルである。
【0035】
ステップS320では、前記シャドウテクセルの空間座標情報に基づいて平均色ルックアップテーブルにおいて検索を行い、検索結果に基づいて、前記シャドウテクセルに対応する平均輝度差を決定する。
【0036】
本願の一実施例では、拡散反射マップにおけるシャドウテクセルを決定した後、各シャドウテクセルの空間座標情報を取得し、シャドウテクセルの空間座標情報に基づいて、平均色ルックアップテーブルにおいて、対応する平均色情報を検索して、検索結果に基づいてシャドウテクセルに対応する平均輝度差を決定し、さらに、平均輝度差に基づいてシャドウテクセルの色を復元することができる。
【0037】
本願の一実施例では、2つの異なる方法によって、直射光ライティングによるシャドウを除去することができ、各除去方法について、関連する平均色ルックアップテーブルの具体的な内容も異なっている。
【0038】
直射光ライティングによるシャドウを除去する第1の方法については、その中に関連する平均色ルックアップテーブルには、明るい面平均色ルックアップテーブルおよび暗い面平均色ルックアップテーブルが含まれ、次に、明るい面平均色ルックアップテーブルおよび暗い面平均色ルックアップテーブルをどのように取得するかについて、詳細に説明する。
【0039】
本願の一実施例では、ステップS310の前に、明るい面ルックアップテーブルおよび暗い面ルックアップテーブルという2つのルックアップテーブルを設定することができ、これらのうち、明るい面ルックアップテーブルは、拡散反射マップにおける非シャドウテクセルの空間座標情報および色情報を記憶するために使用されるものであり、暗い面ルックアップテーブルは、拡散反射マップにおけるシャドウテクセルの空間座標情報および色情報を記憶するために使用されるものであり、説明すべきものとして、ルックアップテーブル(Look up table、略称LUT)は、アドレス情報を使用して検索が可能なデータ構造であり、1つのアドレスを入力してテーブル検索を行うことにより、アドレスに対応する内容が見つけられる。
【0040】
図5は、明るい面平均色ルックアップテーブルおよび暗い面平均色ルックアップテーブルを取得するプロセスの模式図を示し、
図5に示すように、当該プロセスは、少なくともステップS501~S502を含み、具体的には、
【0041】
ステップS501では、拡散反射マップにおける各テクセルをトラバースし、シャドウマップにおける、各テクセルに対応するシャドウ情報に基づいて、各テクセルの色情報を明るい面ルックアップテーブルおよび暗い面ルックアップテーブルに累加することで、明るい面色ルックアップテーブルおよび暗い面色ルックアップテーブルを作成する。
【0042】
本願の一実施例では、拡散反射マップにおける全てのテクセルの色情報を、明るい面ルックアップテーブルおよび暗い面ルックアップテーブルにそれぞれ記憶するために、拡散反射マップにおける各テクセルをトラバースして、その色情報を、対応するルックアップテーブルにおける、当該テクセルの空間座標情報に対応する画素ビットに累加することができる。本願の実施例では、明るい面ルックアップテーブルおよび暗い面ルックアップテーブルは、いずれも、5次元ルックアップテーブルであり、ここで、5つの次元には、拡散反射マップにおけるテクセルが空間直交座標系で対応する3つの座標次元が含まれ、即ち、X軸座標、Y軸座標およびZ軸座標が含まれ、また、各テクセルに対応する法線の経度および緯度も含まれ、ここで、テクセルの空間直交座標系での位置情報および法線情報は、頂点着色器においてモデルの各三角形面の頂点座標に基づいて計算して決定され、また、マップが転写される際に、位置マップおよび法線マップに転写され得る。
【0043】
本願の一実施例では、拡散反射マップにおける各テクセルの色情報を明るい面ルックアップテーブルまたは暗い面ルックアップテーブルに累加する際に、まず、各テクセルのUV座標に基づいて、その空間座標情報を取得し、当該空間座標情報は、ルックアップテーブルの次元と同様であり、位置座標(X,Y,Z)および法線座標(経度、緯度)を含み、また、各テクセルのUV座標に基づいて、各テクセルのシャドウ情報を取得し、その後、テクセルのシャドウ情報に基づいて、当該テクセル色情報を格納するルックアップテーブルが明るい面ルックアップテーブルであるか、暗い面ルックアップテーブルであるかを決定して、テクセルの空間座標情報に基づいて、決定されたルックアップテーブルにおいて色情報が記憶される画素位置を決定し、最後に、テクセルの色情報を、対応する画素位置に累加すればよい。
【0044】
ルックアップテーブルに格納されている色情報がR、G、B、Aの4つのチャネルを含む色ベクトルであるため、αチャネルの透明値が0である場合、当該テクセルがモデルにマッピングされていないことを示し、αチャネルの透明値が1である場合、当該テクセルがモデルにマッピングされていることを示し、また、収集されたモデルが不透明な物品であるしかないことを考慮して、収集されたテクセルのαチャネルの値は、1であるべきであり、つまり、テクセルの色情報をルックアップテーブルに累加する際に、透明値が1であるテクセルの色情報を累加すればよく、このようにして、計算量を節約し、データ処理効率を向上させることができる。
【0045】
図6は、明るい面色ルックアップテーブルおよび暗い面色ルックアップテーブルを取得するプロセスの模式図を示し、
図6に示すように、ステップS601では、各テクセルの色情報における透明値に基づいてターゲットテクセルを決定し、ターゲットテクセルの第2のUV座標を取得し、ステップS602では、第2のUV座標に基づいて、シャドウマップにおいて、ターゲットテクセルに対応するターゲットシャドウ情報を決定して、ターゲットシャドウ情報に基づいて、明るい面ルックアップテーブルおよび暗い面ルックアップテーブルから、ターゲットルックアップテーブルを決定し、ステップS603では、第2のUV座標に基づいて、位置マップおよび法線マップのそれぞれにおいて、ターゲット位置情報およびターゲット法線情報を決定し、ステップS604では、ターゲット位置情報およびターゲット法線情報に基づいて、ターゲットルックアップテーブルにおいてターゲット画素を決定し、ターゲットテクセルの色情報をターゲット画素に累加する。
【0046】
ステップS601では、当該ターゲットテクセルは、色情報における、透明値が1であるテクセルであり、ステップS602では、第2のUV座標に基づいて、シャドウマップにおいて、ターゲットテクセルのターゲットシャドウ情報を検索して取得することができ、ターゲットシャドウ情報のタイプを決定した後、ターゲットシャドウ情報に基づいて、当該テクセルの色情報を記憶するために使用されるターゲットルックアップテーブルを決定することができ、すなわち、ターゲットシャドウ情報が、ターゲットテクセルがシャドウテクセルであるということである場合、暗い面ルックアップテーブルをターゲットルックアップテーブルとし、ターゲットシャドウ情報が、ターゲットテクセルが非シャドウテクセルであるということである場合、明るい面ルックアップテーブルをターゲットルックアップテーブルとし、ステップS603では、上記の実施例と類似に、ターゲットテクセルの第2のUV座標に基づいて、位置マップおよび法線マップにおいて、それに対応するターゲット位置情報およびターゲット法線情報を決定することができ、当該ターゲット位置情報は、ターゲットテクセルの空間直交座標系での位置座標であり、ターゲット法線情報は、ターゲットテクセルに対応する法線の経緯度であり、ステップS604では、ターゲット位置情報およびターゲット法線情報に基づいて、明るい面ルックアップテーブルまたは暗い面ルックアップテーブルにおいて、それに対応する画素を決定することができ、さらに、ターゲットテクセルの色情報を当該画素に累加することができる。色情報を累加する場合にも、色情報は、依然として、(R,G,B,A)ベクトルの形式で累加される。説明すべきものとして、明るい面ルックアップテーブルおよび暗い面ルックアップテーブルでは、初期には、各画素の色値は、いずれもゼロである。
【0047】
ステップS502では、明るい面色ルックアップテーブルにおける画素の透明値に基づいて、明るい面色ルックアップテーブルにおける色情報を変換することで、明るい面平均色ルックアップテーブルを取得し、暗い面色ルックアップテーブルにおける画素の透明値に基づいて、暗い面色ルックアップテーブルにおける色情報を変換することで、暗い面平均色ルックアップテーブルを取得する。
【0048】
本願の一実施例では、拡散反射マップにおける各テクセルの色情報を明るい面ルックアップテーブルおよび暗い面ルックアップテーブルに累加することで、明るい面色ルックアップテーブルおよび暗い面色ルックアップテーブルを作成した後、それぞれ明るい面色ルックアップテーブルにおける色情報の透明値および暗い面色ルックアップテーブルにおける色情報の透明値に基づいて、対応するルックアップテーブルの色情報を変換し、明るい面平均色ルックアップテーブルおよび暗い面平均色ルックアップテーブルを作成することができる。
【0049】
図7は、明るい面平均色ルックアップテーブルおよび暗い面平均色ルックアップテーブルを構築するプロセスの模式図を示し、
図7に示すように、ステップS701では、明るい面色ルックアップテーブルにおける全ての画素の透明値の第1の合計値を取得するとともに、暗い面色ルックアップテーブルにおける全ての画素の透明値の第2の合計値を取得し、ステップS702では、明るい面色ルックアップテーブルにおける各画素の色情報を第1の合計値で除算することで、明るい面平均色ルックアップテーブルを取得し、ステップS703では、暗い面色ルックアップテーブルにおける各画素の色情報を第2の合計値で除算することで、暗い面平均色ルックアップテーブルを取得する。
【0050】
本願の一実施例では、シャドウテクセルに対応する明るい面平均色および暗い面平均色を取得して平均輝度差を算出する必要があり、でも、同一テクセルについては、対応する明るい面平均色および暗い面平均色を同時に明るい面平均色ルックアップテーブルおよび暗い面平均色ルックアップテーブルの両方において見つけることができるとは限らないため、明るい面色ルックアップテーブルおよび暗い面色ルックアップテーブルを取得した後、明るい面色ルックアップテーブルおよび暗い面色ルックアップテーブルに対して、マルチレベルのダウンサンプリングをそれぞれ行うことにより、明るい面平均色マップセットおよび暗い面平均色マップセットを取得することができ、ここで、明るい面平均色マップセットには、サイズの異なる複数の明るい面平均色マップが含まれ、暗い面平均色マップセットには、サイズの異なる複数の暗い面平均色マップが含まれる。
【0051】
一例として、テクセルAは、シャドウテクセルであり、テクセルBは、非シャドウテクセルであり、この場合、テクセルAの色情報は、暗い面色ルックアップテーブルに記憶され、テクセルBの色情報は、明るい面色ルックアップテーブルに記憶され、つまり、明るい面色ルックアップテーブルにおける、テクセルAの空間座標情報に対応する画素には色情報が存在せず、暗い面色ルックアップテーブルにおける、テクセルBの空間座標情報に対応する画素には色情報が存在しなければ、ただし、テクセルAに対応する明るい面平均色またはテクセルBに対応する暗い面平均色を取得するために、明るい面色ルックアップテーブルおよび暗い面色ルックアップテーブルに対して、ダウンサンプリング行う必要があり、ダウンサンプリングを行う際に、より大きな領域の色情報が処理され、また、ダウンサンプリングは、実質的には、色情報に対して平均化処理を行うプロセスであり、このため、明るい面色ルックアップテーブルに対してダウンサンプリングを行うことにより、シャドウテクセルAに隣接する非シャドウテクセルの色情報が統計され、さらに、シャドウテクセルAの空間座標情報に対応する明るい面平均色が得られ、また、暗い面色ルックアップテーブルに対してダウンサンプリングを行うことにより、非シャドウテクセルBに隣接するシャドウテクセルの色情報が統計され、さらに、非シャドウテクセルBの空間座標情報に対応する暗い面平均色が得られる。
【0052】
本願の一実施例では、ダウンサンプリングのプロセスは、畳み込みプロセスとして理解してもよく、本願の実施例では、最小平均色マップが取得されるまで、辺長が2つの画素である5次元畳み込みカーネルを使用して第N-1番目レベルの平均色マップに対して畳み込み処理を行うことで、第Nレベルの平均色マップを取得することができ、ここで、Nは、正の整数であり、また、N=1の場合、第0レベルの平均色マップは、明るい面色ルックアップテーブルまたは暗い面色ルックアップテーブルである。本願の実施例では、明るい面色ルックアップテーブルまたは暗い面色ルックアップテーブルに対してマルチレベルのダウンサンプリングを行う際に、畳み込みカーネルのカバー範囲内の各画素の色情報を直接に加算して、新しい色情報とすることができる。
【0053】
本願の一実施例では、明るい面平均色ルックアップテーブル、暗い面平均色ルックアップテーブル、明るい面平均色マップ、および暗い面平均色マップを取得した後、テクセルの空間座標情報に基づいて、テクセルに対応する明るい面平均色および暗い面平均色を取得することができる。本願の目的は、拡散反射マップにおけるシャドウを除去することであるため、拡散反射マップにおけるシャドウテクセルに対して色復元を行うだけで済む。
【0054】
シャドウテクセルに対応する明るい面平均色および暗い面平均色を検索する際に、まず、シャドウテクセルの空間座標情報を取得し、その後、シャドウテクセルの空間座標情報に基づいて、暗い面平均色ルックアップテーブルにおいて、シャドウテクセルの空間座標情報に対応しており、かつ値がゼロではない暗い面平均色情報を検索し、また、シャドウテクセルの空間座標情報に基づいて、明るい面平均色マップセットにおいて、低レベル明るい面平均色マップから高レベル明るい面平均色マップへレベルごとに検索することで、当該空間座標情報に対応しており、かつ、値がゼロではない明るい面平均色情報を取得し、さらに、明るい面平均色情報および暗い面平均色情報に基づいて、平均輝度差を決定することができる。
【0055】
本願の一実施例では、シャドウテクセルの空間座標情報に基づいて、暗い面平均色ルックアップテーブルにおいて、それに対応する暗い面平均色情報を決定する際に、暗い面平均色情報に対して多次元線形補間処理を行うことで、画像の色勾配を低減させ、色をよりスムーズにすることができる。暗い面平均色ルックアップテーブルに対して多次元線形補間処理を行う際に、具体的には、暗い面平均色ルックアップテーブルにおける、シャドウテクセルの空間座標情報に対応する画素を元のサンプリングポイントとして、各次元でサンプリングを行うことにより、元のサンプリングポイントを含む複数のサンプリングポイントを取得し、例えば、暗い面平均色ルックアップテーブルが5次元ルックアップテーブルである場合、32(25)個のサンプリングポイントを取得することができ、その後、複数のサンプリングポイントに基づいて、5つの次元で補間を順次に行い、補間点の平均色ずれ量を算出して、平均色ずれ量に対応する超立方体の体積を重みとし、ここで、超立方体の総体積を1とし、最後に、超立方体の体積に基づいて、平均色ずれ量に対して重み付け加算を行い、そうすると、多次元線形補間処理によって得られた暗い面平均色情報を取得することができる。
【0056】
本願の一実施例では、明るい面平均色情報および暗い面平均色情報に基づいて、平均輝度差を決定した後、明るい面平均色情報および暗い面平均色情報が(R,G,B,A)4つのチャネルの色値を含む色情報であり、でも、色復元を行う際には、R、G、Bの3つのチャネルの色値のみに対して復元を行うだけで済むため、まず、明るい面平均色情報から明るい面RGBベクトルを取得するとともに、暗い面平均色情報から暗い面RGBベクトルを取得し、その後、明るい面RGBベクトルを暗い面RGBベクトルで除算すると、平均輝度差を得ることができる。
【0057】
直射光ライティングによるシャドウを除去する第2の方法については、その中に関連する平均色ルックアップテーブルは、平均輝度差に基づいて作成されたルックアップテーブルであり、次に、平均色ルックアップテーブルをどのように取得するかについて、詳細に説明する。
【0058】
本願の一実施例では、ステップS310の前に、シャドウマップおよび拡散反射マップに対して処理を行うことで平均色ルックアップテーブルを取得することができる。
図8は、平均色ルックアップテーブルを作成するプロセスの模式図を示し、
図8に示すように、当該プロセスは、少なくとも、ステップS801~S803を含み、具体的には、
【0059】
ステップS801では、シャドウマップにおけるエッジテクセルを抽出し、エッジテクセルに基づいて、拡散反射マップにおいて中心テクセルを決定する。
【0060】
本願の一実施例では、エッジ抽出アルゴリズムに基づいて、シャドウマップに対してエッジ抽出を行うことができ、具体的には、シャドウマップのエッジを抽出する際に、水平方向テンプレートおよび垂直方向テンプレートによって、シャドウマップに対して近傍畳み込みを行うことで、エッジテクセルを取得することができる。ここで、水平方向テンプレートは、シャドウマップにおけるテクセルに基づいて水平エッジを検出するために使用されるものであり、垂直方向テンプレートは、シャドウマップにおけるテクセルに基づいて垂直エッジを検出するために使用されるものであり、同一テクセルに対応する水平エッジ検出結果および垂直エッジ検出結果を取得した後、この両者のうちの最大値を取るか、またはこの両者を加算することによって検出値を取得し、最後に、この検出値を、予め設定された閾値と比較して、検出値が予め設定された閾値以上である場合、テクセルがエッジテクセルであることを示す。
【0061】
本願の一実施例では、シャドウマップにおけるエッジテクセルを取得した後、エッジテクセルのUV座標を第3のUV座標として取得することができ、拡散反射マップおよびシャドウマップは、いずれも、UV座標によってマッピングされて記憶されるため、第3のUV座標に基づいて、拡散反射マップにおいて、第3のUV座標に対応するテクセルを決定して、後続の平均色の収集を行うために、このテクセルを中心テクセルとすることができる。
【0062】
ステップS802では、前記中心テクセルおよび予め設定された範囲に基づいて、ターゲットマップ領域を決定し、シャドウマップに基づいて、ターゲットマップ領域における明るい部分領域および暗い部分領域を決定する。
【0063】
本願の一実施例では、中心テクセルを決定した後、拡散反射マップにおいて、中心テクセルを中心とした予め設定された範囲内の領域をターゲットマップ領域として決定することができる。この予め設定された範囲は、実際のニーズに応じて設定されてもよく、例えば64×64、80×80などに設定されてもよいし、本願の実施例では、これについて特に限定しない。
【0064】
さらに、シャドウマップにおけるシャドウテクセルおよび非シャドウテクセルの位置情報に基づいて、ターゲットマップ領域おいて、明るい部分領域および暗い部分領域を決定することができ、具体的には、まず、ターゲットマップ領域における各テクセルの第4のUV座標を取得し、その後、各テクセルの第4のUV座標と、シャドウマップとに基づいて、ターゲットマップ領域における各テクセルのシャドウ情報を決定することができ、当該第4のUV座標に対応するテクセルのシャドウ情報が、テクセルが非シャドウテクセルであるということである場合、ターゲットマップ領域において、当該第4のUV座標に対応するテクセルは、明るい部分領域内のテクセルであり、当該第4のUV座標に対応するテクセルのシャドウ情報が、テクセルがシャドウテクセルであるということである場合、ターゲットマップ領域において、当該第4のUV座標に対応するテクセルは、暗い部分領域内のテクセルであり、つまり、シャドウ情報が非シャドウテクセルであってかつ空間座標情報が隣接しているテクセルによって作成された領域を、明るい部分領域とし、シャドウ情報がシャドウテクセルであってかつ空間座標情報が隣接しているテクセルによって作成された領域を、暗い部分領域とする。
【0065】
本願の一実施例では、ターゲットマップ領域における明るい部分領域および暗い部分領域を決定する際に、マップにおけるテクセルのマッピングは必ずしも連続しているとは限らず、マップにおいて接近しているが、マッピングされた表面が非常に離れた場合があるため、本願の実施例では、ターゲットマップ領域における各テクセルの位置情報および法線情報に基づいて、位置マッピングおよび法線が連続しているかどうかを判断し、非連続なテクセルに対してフィルタリングを行うこともできる。このようにして、明るい部分領域および暗い部分領域におけるテクセルの連続性を向上させ、計算の正確性を向上させることができる。
【0066】
ステップS803では、明るい部分領域に対応する明るい部分平均色および暗い部分領域に対応する暗い部分平均色をそれぞれ算出し、明るい部分平均色および暗い部分平均色に基づいて平均輝度差を決定し、平均輝度差を平均色ルックアップテーブルに累加する。
【0067】
本願の一実施例では、ターゲットマップ領域における明るい部分領域および暗い部分領域を取得した後、明るい部分領域における各テクセルの色情報に基づいて明るい部分平均色を決定するとともに、暗い部分領域における各テクセルの色情報に基づいて暗い部分平均色を決定することができ、
図9は、明るい部分平均色および暗い部分平均色を計算するプロセスの模式図を示し、
図9に示すように、ステップS901では、明るい部分領域における全てのテクセルの色情報を加算することで明るい部分色情報を取得するとともに、明るい部分領域における全てのテクセルの色情報における透明値を加算することで第3の合計値を取得し、ステップS902では、暗い部分領域における全てのテクセルの色情報を加算することで暗い部分色情報を取得するとともに、暗い部分領域における全てのテクセルの色情報における透明値を加算することで第4の合計値を取得し、ステップS903では、明るい部分色情報を第3の合計値で除算することで明るい部分平均色を取得し、暗い部分色情報を第4の合計値で除算することで暗い部分平均色を取得する。
【0068】
本願の一実施例では、明るい部分平均色および暗い部分平均色を取得した後、明るい部分平均色における明るい部分RGBベクトルと、暗い部分平均色における暗い部分RGBベクトルとを取得し、その後、明るい部分RGBベクトルを暗い部分RGBベクトルで除算することで、平均輝度差を取得することができる。平均輝度差を取得した後、各中心テクセルに対応する平均輝度差を、平均色ルックアップテーブルに累加することができ、ここで、平均色ルックアップテーブルは、4次元ルックアップテーブルであり、そのうちの4つの次元は、それぞれ、拡散反射マップにおいて、各中心テクセルに対応する物品の空間位置座標(X,Y,Z)および各中心テクセルに対応する暗い部分平均色の色均値であり、一方、中心テクセルに対応する平均輝度差を平均色ルックアップテーブルに累加する際に、中心テクセルに対応する物品の空間位置座標、および中心テクセルに対応する暗い部分平均色の色均値に基づいて、平均色ルックアップテーブルにおいて、対応する画素を決定し、その後、当該中心テクセルに対応する平均輝度差を当該画素に累加すればよい。ここで、暗い部分平均色の色均値は、暗い部分平均色における、R、G、Bの3つのチャネルの色値の平均値である。
【0069】
本願の一実施例では、この平均色ルックアップテーブルは、後で復元色情報を計算するためにデータサポートを提供することができるが、平均色ルックアップテーブルでは、各シャドウテクセルに対して、対応する平均輝度差がいずれも存在するわけではなく、このため、平均色ルックアップテーブルに対して、マルチレベルのダウンサンプリングを行うことで、それに対応する平均色マップセットを取得することができ、当該平均色マップセットには、サイズの異なる複数の平均色マップが含まれる。ここで、平均色ルックアップテーブルに対してダウンサンプリングを行う方法は、上記の実施例で明るい面色ルックアップテーブルおよび暗い面色ルックアップテーブルに対してダウンサンプリングを行う方法と同じであり、ここでは詳しく説明しない。
【0070】
本願の一実施例では、拡散反射マップにおけるシャドウテクセルの色情報を復元するために、拡散反射マップにおける全てのシャドウテクセルを決定した後、位置マップに基づいて各シャドウテクセルの空間位置座標を取得するとともに、各シャドウテクセルに対応する暗い部分平均色の色均値を取得し、その後、空間位置座標と暗い部分平均色の色均値とに基づいて、平均色ルックアップテーブルにおいて、シャドウテクセルに対応する平均輝度差を検索することができる。平均色ルックアップテーブルには、シャドウテクセルに対応する平均輝度差が存在していない場合、このシャドウテクセルに対応する平均輝度差が検出されるまで、空間位置座標および暗い部分平均色の色均値に基づいて、平均色マップセットにおいて、低レベルの平均色マップから高レベルの平均色マップへ検索し、ここで、低レベルの平均色マップのサイズは、高レベルの平均色マップよりも大きくて、最高レベルの平均色マップは、1×1×1×1のマトリックスであってもよい。
【0071】
本願の一実施例では、シャドウテクセルの空間位置座標および暗い部分平均色の色均値に基づいて平均色ルックアップテーブルにおいて検索を行う際に、平均色ルックアップテーブルに対して多次元線形補間を行うことで、色の平滑性を向上させ、画像の色勾配を低減させることができる。上記の実施例で暗い面平均色ルックアップテーブルに対して多次元線形補間処理を行う方法と類似に、平均色ルックアップテーブルに対して多次元線形補間処理を行う際に、具体的には、平均色ルックアップテーブルにおける、シャドウテクセルの空間位置座標および暗い部分平均色の色均値に対応する画素を元のサンプリングポイントとし、各次元にサンプリングを行うことで、元のサンプリングポイントを含む複数のサンプリングポイントを取得することができ、例えば、平均色ルックアップテーブルが4次元ルックアップテーブルである場合、16(24)個のサンプリングポイントを取得することができ、その後、複数のサンプリングポイントに基づいて、4つの次元で補間を順次に行い、補間点の平均輝度差ずれ量を算出して、平均輝度差ずれ量に対応する超立方体の体積を重みとし、ここで、超立方体の総体積を1とし、最後に、超立方体の体積に基づいて、平均輝度差ずれ量に対して重み付け加算を行い、そうすると、多次元線形補間処理によって得られた平均輝度差情報を取得することができる。
【0072】
ステップS330では、前記平均輝度差と、前記シャドウテクセルに対応する色情報とに基づいて復元色情報を決定し、前記復元色情報に基づいて前記シャドウテクセルの色情報を復元する。
【0073】
本願の一実施例では、直射光ライティングを除去する第1の方法であっても、直射光ライティングを除去する第2の方法であっても、シャドウテクセルに対応する平均輝度差を取得した後、いずれも、平均輝度差およびシャドウテクセルの色情報に基づいて色を復元することができる。具体的には、平均輝度差と、シャドウテクセルの色情報におけるRGBベクトルとを乘算することで、復元色情報を取得し、当該復元色情報に基づいて、シャドウテクセルに対する色復元を実現することができる。
【0074】
本願の一実施例では、上記の実施例の方法に基づいて、シャドウテクセルの色を復元した後、拡散反射マップにおけるシャドウテクセルと非シャドウテクセルとの間の境界、即ち明暗境界に対して、ぼかし処理を行うことで、継ぎ目での色むらの問題を解消することもできる。例示的な説明として、本願の実施例では、ガウスフィルタリング、メディアンフィルタリング、バイラテラルフィルタリング、平均化フィルタリングなどの方法によって、ぼかし処理を行ってもよい。
【0075】
本願の実施例における画像処理方法は、シャドウテクセルに対応する明るい面平均色情報および暗い面平均色情報に基づいて平均輝度差を決定し、平均輝度差に基づいてシャドウテクセルの色情報を復元し、あるいは、拡散反射マップにおいてシャドウマップにおけるエッジテクセルに対応する中心テクセルが対応する明るい部分平均色および暗い部分平均色に基づいて平均輝度差を算出し、平均輝度差に基づいてシャドウテクセルの色情報を復元することによって、直射光ライティングによるシャドウが効果的に除去され、また、画像内の他の箇所でマップディテールの消失、色相の変化、カラーブリーディングやカラーパッチの発生などの問題が生じることが回避され、モデルの視覚的効果がより良好になり、また、当該モデルが任意のライティング条件のシーンでは使用され得て、例えば、ゲーム、3次元インタラクティブな体験などの、リアルタイムレンダリングアプリケーションで広く使用され得る。
【0076】
また、現実的なシーンからモデル素材を収集、作製しやすくになり、これによって、ユーザ体験は、よりリアルで、より良好になる。
図11は、本開示の画像処理方法に基づいてモデルにおけるシャドウを除去するためのインターフェースの模式図を示し、
図11に示すように、
図2A~
図2Bと比較して、本願の画像処理方法によれば、シャドウを除去する効果がより良くになり、画像品質がより高くになる。
【0077】
本願の一実施例では、直射光ライティングによるシャドウを除去する第1の方法では、拡散反射マップにおける各テクセルに対して平均色の収集を行い、さらに、シャドウテクセルに対応する明るい面平均色情報および暗い面平均色情報に基づいて復元色情報を決定して、復元色情報に基づいてシャドウテクセルの色を復元する必要があり、そのため、シャドウを除去する第1の方法は、色が比較的少ない拡散反射マップにおけるシャドウへの除去効果がより良く、直射光ライティングによるシャドウを除去する第2の方法では、拡散反射マップにおける中心テクセルが対応する明るい部分領域および暗い部分領域平均色に対して収集を行い、さらに、明るい部分領域の平均色および暗い部分領域の平均色に基づいて復元色情報を決定して、復元色情報に基づいてシャドウテクセルの色を復元し、そのため、シャドウを除去する第2の方法は、色が比較的多い拡散反射マップにおけるシャドウへの除去効果がより良い。
【0078】
本願の一実施例では、直射光ライティングは、シャドウを引き起こすことができ、非直射光ライティングもシャドウを引き起こすこともでき、次に、非直射光ライティングによるシャドウをどのように除去するかについては、詳細に説明する。
【0079】
本願の一実施例では、レンダリングエンジンによって複数枚の写真に基づいてモデリングを行う際に、レンダリングエンジンを介してモデルに対応する複数のマップをエクスポートすることができ、写真における光源がアンビエントライトである場合、レンダリングエンジンを介してモデルに対応する拡散反射マップ、法線マップ、位置マップをエクスポートすることができることに加えて、また、アンビエントオクルージョンマップ(AO mapping)およびベント法線マップ(Bent normal mapping)をもエクスポートすることができる。表面法線ベクトルは、ジオメトリモデルに必要なパラメータであり、また、ベント法線は、元の法線を修正して得られた新しいベクトルであり、それが、現在の画素の、他の物体(またはジオメトリボクセル)により遮蔽されていない平均方向、すなわち、光線が入る主な方向に指向する。ベント法線は、一般的には、以下の2つの用途があり得て、即ち、元の法線を変更し、および、光線の主な通過方向を記録して、このようにして、環境マップのサンプリングを行う際に、より最適化された方向から、サンプリングされた光線を計算可能とする用途と、元の法線の代わりに通常のレンダリングを行い、このようにして、法線だけがある場合、ある程度でアンビエントオクルージョンと類似したソフトシャドウ効果を取得可能とする用途と、があり得る。
【0080】
本願の一実施例では、
図10は、非直射光ライティングによるシャドウを除去するプロセスの模式図を示し、
図10に示すように、このプロセスは、少なくとも、ステップS1010~S1040を含み、具体的には、
【0081】
ステップS1010では、拡散反射マップにおける各テクセルの法線情報に基づいて、第1の平均色ルックアップテーブルを構築する。
【0082】
本願の一実施例では、法線の経緯度を座標としてルックアップテーブルを構築し、その後、将拡散反射マップにおける各テクセルの色情報を、ルックアップテーブルにおける、各テクセルに対応する画素に累加することで、第1の色ルックアップテーブルを作成することができる。具体的には、まず、拡散反射マップの各テクセルの第5のUV座標を取得することができ、拡散反射マップおよび法線マップが、いずれも、UV座標によってマッピングされて記憶されるため、この第5のUV座標に基づいて、法線マップにおいて、それに対応する法線情報を決定することができ、次に、取得した法線情報における経度および緯度に基づいて、第1の色ルックアップテーブルにおいてターゲット画素を決定することができ、その後、第5のUV座標を有するテクセルの色情報における透明値が1であるかどうかを判断し、透明値が1である場合、当該テクセルの色情報をターゲット画素に累加し、透明値が1ではない場合、当該テクセルの色情報を処理せず、最後に、テクセル色情報を含む第1の色ルックアップテーブルにおける各画素の透明値を収集し、各画素の透明値を加算することで第5の合計値を取得し、第1の色ルックアップテーブルにおける各画素の色情報を第5の合計値で除算することで、第1の平均色ルックアップテーブルを取得することができる。
【0083】
ステップS1020では、第1の平均色ルックアップテーブルに基づいて、前記拡散反射マップに対応する全体平均明るい領域色情報を決定し、第1の平均色ルックアップテーブルに基づいて、中間結果マップを取得する。
【0084】
本願の一実施例では、第1の平均色ルックアップテーブルを取得した後、第1の平均色ルックアップテーブルにおける各画素をトラバースし、0.7輝度に対する各画素の接近度を算出し、次に、0.7輝度に対する各画素の接近度を重みとして、第1の平均色ルックアップテーブルにおける画素を処理することで、拡散反射マップに対応する全体平均明るい領域色情報を取得することができる。0.7輝度に対する各画素の接近度を算出する際に、式(1)に従って算出することができ、具体的には、以下の通りである。
【数1】
ここで、ωは、重みであり、Absは、絶対値を取ることであり、Lumin(RGB)は、第1の平均色ルックアップテーブルにおける各画素のRGBベクトルの輝度値である。
【0085】
本願の一実施例では、RGBベクトルの輝度値は、RGB色空間をYIQ色空間に変換することにより得られ得て、このうちのYは、色の明るさ、即ち輝度である。RGBベクトルの輝度値を計算する際に、所定の変換割合に基づいて、RGBの3つのチャネルの色値を変換することができ、具体的には、Y=0.299R+0.587G+0.114Bである。
【0086】
本願の一実施例では、第1の平均色ルックアップテーブルにおける各画素に対応する重みを取得した後、各画素の色情報と、この色情報に対応する重みとを乘算することで、重み付け色情報を取得し、次に、全ての画素に対応する重み付け色情報を加算して平均値を求めることで、全体平均明るい領域色情報を取得することができる。全体平均明るい領域色情報は、式(2)に従って算出され得て、具体的には、以下の通りである。
【数2】
ここで、Qは、全体平均明るい領域色情報であり、iは、第1の平均色ルックアップテーブルにおいて色情報が存在しているいずれかの画素であり、mは、第1の平均色ルックアップテーブルにおいて色情報が存在している画素の数であり、ωは、各画素に対応する重みである。
【0087】
本願の一実施例では、各画素に対応する重みは、0.7輝度に対する各画素の接近度であり、重み値によって、所望の輝度の色値の重みをより高くすることができ、これにより、全体として所望の平均輝度に接近する目的が達成され、さらに、非直射光ライティングによるシャドウを回復することが実現される。
【0088】
本願の一実施例では、拡散反射マップにおける各テクセルをトラバースし、各テクセルの法線情報および第1の平均色ルックアップテーブルに基づいて、中間結果マップを決定することができ、当該中間結果マップは、拡散反射マップにおける各テクセルに対応する、処理された平均色情報によって構成される。第1の平均色ルックアップテーブルには、透明値が1であるテクセルの平均色情報のみが格納され、透明値が1ではない他のテクセルについて、対応する平均色情報が第1の平均色ルックアップテーブルにおいて存在していないため、第1の平均色ルックアップテーブルに対して複数回のダウンサンプリングを行うことで、第1の平均色マップセットを取得する必要があり、この第1の平均色マップセットには、サイズの異なる複数の第1の平均色マップが含まれ、ダウンサンプリングによって、対応する拡散反射マップにおける各テクセルが、いずれも、それに対応する第1の平均色を有する、ということが確保される。
【0089】
中間結果マップを決定する際に、まず、拡散反射マップにおける各テクセルの第6のUV座標を取得し、その後、第6のUV座標に基づいて、法線マップにおいて、それに対応する法線情報を検索し、次に、当該法線情報に基づいて、第1の平均色ルックアップテーブルにおいて、対応する平均色情報を取得し、第1の平均色ルックアップテーブルにおいて、法線情報に対応する平均色情報を取得できない場合、当該法線情報に対応する平均色情報が取得されるまで、当該法線情報に基づいて、第1の平均色マップセットにおいて、低レベルの第1の平均色マップから高レベルの第1の平均色マップへ検索し、最後に、取得された、各テクセルに対応する平均色情報に基づいて処理を行い、処理された平均色情報を得ることができる。各テクセルに対応する平均色情報を処理する際に、まず、テクセルに対応する平均色情報における第1のRGBベクトルと、拡散反射マップにおいてテクセルに対応する色情報における第2のRGBベクトルとを取得し、その後、式(3)に従って、処理後の平均色情報を算出し、さらに、処理後の平均色情報に基づいて、中間結果マップを作成することができる。式(3)は、具体的には、以下の通りである。
【数3】
ここで、Pは、処理後の色情報であり、V
1は、第1のRGBベクトルであり、V
2は、第2のRGBベクトルである。
【0090】
ステップS1030では、中間結果マップおよびアンビエントオクルージョンマップに基づいて、第2の平均色ルックアップテーブルを構築する。
【0091】
本願の一実施例では、アンビエントオクルージョン情報およびベント法線情報を座標としてルックアップテーブルを作成し、中間結果マップにおける各テクセルの色情報に対して重み付け処理が実行された後のものを当該ルックアップテーブルに累加して、第2の平均色ルックアップテーブルを作成することができる。ここで、アンビエントオクルージョン情報およびベント法線情報は、いずれも、1つのチャネル値の浮動小数点数であり、つまり、第2の平均色ルックアップテーブルも、2次元ルックアップテーブルであり、さらに、第1の平均色ルックアップテーブルおよび第2の平均色ルックアップテーブルは、同じサイズを有してもよく、例えば、両方ともに64×32などに設定されてもよく、もちろん、異なるサイズに設定されてもよいし、本願の実施例では、これについて特に限定しない。
【0092】
本願の一実施例では、第2の平均色ルックアップテーブルを作成する際に、中間結果マップにおける各テクセルをトラバースし、各テクセルのUV座標に基づいて、中間結果マップにおける、それに対応するアンビエントオクルージョン値を取得し、その後、当該アンビエントオクルージョン値を重みとして、相応のテクセルに対応する中間結果に対して重み付け処理を行う。中間結果マップにおける各テクセルに対応する、重み付け処理後の中間結果を取得した後、各テクセルに対応する、重み付け処理後の中間結果における透明値を取得することができ、その後、全てのテクセルに対応する透明値を加算して第6の合計値を得、次に、各テクセルに対応する、重み付け処理後の中間結果を第6の合計値で除算することで、各テクセルに対応する平均色情報を取得し、最後に、各テクセルに対応する平均色情報を、ルックアップテーブルにおける対応する画素に累加することで第2の平均色ルックアップテーブルを取得することができる。
【0093】
本願の一実施例では、第2の平均色ルックアップテーブルに対して、複数回のダウンサンプリングを行うことで、第2の平均色マップセットを取得することができ、当該第2の平均色マップセットには、サイズの異なる複数の第2の平均色マップが含まれ、ここで、第2の平均色ルックアップテーブルに対してダウンサンプリングを行う方法は、明るい面色ルックアップテーブルまたは暗い面色ルックアップテーブルに対してダウンサンプリングを行う方法と同じであり、ここでは詳しく説明しない。
【0094】
ステップS1040では、中間結果マップにおける各テクセルをトラバースし、第2の平均色ルックアップテーブルにおける各テクセルの色情報に基づいて復元色情報を決定し、復元色情報に基づいて各テクセルの色を復元する。
【0095】
本願の一実施例では、中間結果マップにおけるテクセルをトラバースし、中間結果マップにおける各中間結果テクセルのUV座標を取得し、当該UV座標に基づいて、アンビエントオクルージョンマップおよびベント法線マップにおいて検索を行うことで、各中間結果テクセルに対応するアンビエントオクルージョン情報およびベント法線情報を取得する。次に、各中間結果テクセルのアンビエントオクルージョン情報およびベント法線情報に基づいて、第2の平均色ルックアップテーブルにおいて検索を行うことで、対応する第2の平均色情報を取得し、対応する第2の平均色情報が第2の平均色ルックアップテーブルにおいて存在しない場合、中間結果テクセルに対応する第2の平均色情報が取得されるまで、中間結果テクセルのアンビエントオクルージョン情報およびベント法線情報に基づいて、第2の平均色マップセットにおいて、低レベルの第2の平均色マップから高レベルの第2の平均色マップへ検索を行うことができる。
【0096】
本願の一実施例では、中間結果テクセルに対応する第2の平均色情報を取得した後、第2の平均色情報、中間結果テクセルの色情報および全体平均明るい領域色情報に基づいて復元色情報を決定することができる。復元色情報を決定する際に、まず、中間結果テクセルの色情報におけるRGBベクトルを取得し、その後、式(4)に従って復元色情報を算出し、式(4)は、具体的には、以下の通りである。
【数4】
ここで、Cは、復元色情報であり、Lは、第2の平均色情報であり、V
3は、中間結果テクセルの色情報におけるRGBベクトルであり、Qは、全体平均明るい領域色情報である。
【0097】
本願の一実施例では、中間結果マップが、拡散反射マップにおけるテクセルを処理することによって得られたものであるため、この場合、中間結果テクセルは、拡散反射マップにおけるテクセルに対応し、したがって、中間結果テクセルに対応する復元色情報を取得した後、拡散反射マップにおける各テクセルの色情報を、各テクセルに対応する復元色情報で置き換えることができ、さらに、拡散反射マップにおける、非直射光ライティングによるシャドウを除去することができる。
【0098】
図12A~
図12Cは、モデルにおける非直射光のシャドウの除去前および除去後のインターフェースの模式図を示し、
図12Aに示すように、画像は、シャドウが除去されていないオリジナルモデルテクスチャであり、
図12Bに示すように、画像は、シャドウがUnity De-Lighting toolというツールによって除去されたモデルテクスチャであり、その中の石上の青苔の色に歪みが存在しており、一方、モデルにおけるシャドウが本願の実施例における画像処理方法によって除去された後、
図12Cに示すように、青苔の色に歪みがなく、画像の品質が高くなる。
【0099】
説明すべきものとして、直射光と非直射光が同時に存在している場合、直射光の作用が強く、非直射光の作用が弱いため、直射光ライティングによるシャドウを除去する方法のみによって画像処理を実行すればよい。
【0100】
本願の実施例における画像処理方法は、一方で、拡散反射マップにおける直射光ライティングによるシャドウを2種類の方法によって除去し、もう一方で、拡散反射マップにおける非直射光ライティングによるシャドウを1種の方法によって除去し、これにより、従来技術において既知のツールを使用してシャドウを除去する際に存在している、マップディテールの消失、色相の変化、カラーブリーディングやカラーパッチの発生などの問題が効果的に回避され、拡散反射マップの品質を向上させ、さらに、拡散反射マップが覆われたモデルは、シャドウの存在により画像の品質が悪くなり、ユーザ体験が低下するなどの問題を引き起こすことなく、任意のライティング条件のシーンでは使用できる。
【0101】
以下、本願の上記実施例における画像処理方法を実行するために使用され得る本願の装置実施例を説明する。本願の装置実施例において開示されていない詳細については、本願の上記の画像処理方法の実施例を参照することができる。
【0102】
図13は、本願の一実施例による画像処理装置のブロック図を模式的に示す。この装置は、本願の実施例によって提供される方法における相応のステップを実行するために使用され得る。
【0103】
図13に示すようなものを参照すると、本願の一実施例による画像処理装置1300は、取得モジュール1301と、算出モジュール1302と、復元モジュール1303とを含む。
【0104】
ここで、取得モジュール1301は、拡散反射マップを取得し、前記拡散反射マップにおいてシャドウ領域に位置するシャドウテクセルを取得するために使用され、算出モジュール1302は、前記シャドウテクセルの空間座標情報に基づいて平均色ルックアップテーブルにおいて検索を行い、検索結果に基づいて前記シャドウテクセルに対応する平均輝度差を決定するために使用され、復元モジュール1303は、前記平均輝度差と、前記シャドウテクセルに対応する色情報とに基づいて、復元色情報を決定し、前記復元色情報に基づいて前記シャドウテクセルの色情報を復元するために使用される。
【0105】
本願の一実施例では、前記取得モジュール1301は、さらに、前記拡散反射マップに対応する位置マップ、法線マップおよびシャドウマップを取得するために使用される。
【0106】
本願の一実施例では、前記取得モジュール1301は、具体的には、前記シャドウマップにおける、対応するシャドウ領域のテクセルの第1のUV座標を取得するステップと、前記第1のUV座標を前記拡散反射マップにおけるテクセルのUV座標とマッチングすることで、前記拡散反射マップにおける、前記第1のUV座標にマッチングするテクセルを前記シャドウテクセルとして取得するステップと、を実行するために使用される。
【0107】
本願の一実施例では、前記平均色ルックアップテーブルには、明るい面平均色ルックアップテーブルおよび暗い面平均色ルックアップテーブルが含まれ、前記画像処理装置1300は、さらに、前記拡散反射マップにおいてシャドウ領域に位置するシャドウテクセルを取得する前に、前記拡散反射マップにおける各テクセルをトラバースし、前記シャドウマップにおける、各前記テクセルに対応するシャドウ情報に基づいて、各前記テクセルの色情報を明るい面ルックアップテーブルおよび暗い面ルックアップテーブルに累加することで、明るい面色ルックアップテーブルおよび暗い面色ルックアップテーブルを作成するために使用される色ルックアップテーブル作成モジュールと、前記明るい面色ルックアップテーブルにおける画素の透明値に基づいて、前記明るい面色ルックアップテーブルにおける色情報を変換することで、前記明るい面平均色ルックアップテーブルを取得し、前記暗い面色ルックアップテーブルにおける画素の透明値に基づいて、前記暗い面色ルックアップテーブルにおける色情報を変換することで、前記暗い面平均色ルックアップテーブルを取得するために使用される平均色ルックアップテーブル作成モジュールと、を含む。
【0108】
本願の一実施例では、前記明るい面ルックアップテーブルおよび暗い面ルックアップテーブルは、いずれも、5次元ルックアップテーブルであり、前記5次元ルックアップテーブルは、前記拡散反射マップにおけるテクセルの空間直交座標系での3つの座標次元と、テクセルに対応する法線の経度および緯度とが含まれる。
【0109】
本願の一実施例では、前記平均色ルックアップテーブル作成モジュールは、具体的に、前記明るい面色ルックアップテーブルにおける全ての画素の透明値の第1の合計値を取得するとともに、前記暗い面色ルックアップテーブルにおける全ての画素の透明値の第2の合計値を取得するステップと、前記明るい面色ルックアップテーブルにおける各画素の色情報を前記第1の合計値で除算することで、前記明るい面平均色ルックアップテーブルを取得するステップと、前記暗い面色ルックアップテーブルにおける各画素の色情報を前記第2の合計値で除算することで、前記暗い面平均色ルックアップテーブルを取得するステップと、を実行するために使用される。
【0110】
本願の一実施例では、前記色ルックアップテーブル作成モジュールは、各前記テクセルの色情報における透明値に基づいてターゲットテクセルを決定し、前記ターゲットテクセルの第2のUV座標を取得する第1の座標取得ユニットと、前記第2のUV座標に基づいて、前記シャドウマップにおいて、前記ターゲットテクセルに対応するターゲットシャドウ情報を決定し、前記ターゲットシャドウ情報に基づいて、前記明るい面ルックアップテーブルおよび前記暗い面ルックアップテーブルのうちターゲットルックアップテーブルを決定するシャドウ情報検索ユニットと、前記第2のUV座標に基づいて、前記位置マップおよび前記法線マップのそれぞれにおいて、ターゲット位置情報およびターゲット法線情報を決定する位置情報検索ユニットと、前記ターゲット位置情報および前記ターゲット法線情報に基づいて、前記ターゲットルックアップテーブルにおいてターゲット画素を決定し、前記ターゲットテクセルの色情報を前記ターゲット画素に累加することで、前記明るい面色ルックアップテーブルおよび前記暗い面色ルックアップテーブルを作成する色累加ユニットと、を含む。
【0111】
本願の一実施例では、前記第1の座標取得ユニットは、具体的に、色情報における、透明値が1であるテクセルを前記ターゲットテクセルとするために使用される。
【0112】
本願の一実施例では、前記ターゲット位置情報は、前記ターゲットテクセルの空間直交座標系での位置座標であり、前記ターゲット法線情報は、前記ターゲットテクセルに対応する法線の経度および緯度であり、前記ターゲットシャドウ情報は、前記ターゲットテクセルが前記シャドウテクセルであるかどうかを表すために使用されるものである。
【0113】
本願の一実施例では、前記シャドウ情報検索ユニットは、前記第2のUV座標に基づいて前記シャドウマップにおいて検索を行うことで、前記ターゲットシャドウ情報を取得し、前記ターゲットシャドウ情報のタイプを判断するステップと、前記ターゲットテクセルがシャドウテクセルであることを前記ターゲットシャドウ情報が表す場合、前記暗い面ルックアップテーブルを前記ターゲットルックアップテーブルとするステップと、前記ターゲットテクセルが非シャドウテクセルであることを前記ターゲットシャドウ情報が表す場合、前記明るい面ルックアップテーブルを前記ターゲットルックアップテーブルとするステップと、を実行するように構成される。
【0114】
本願の一実施例では、前記画像処理装置1300は、さらに、前記明るい面色ルックアップテーブルおよび前記暗い面色ルックアップテーブルのそれぞれに対して、マルチレベルのダウンサンプリングを行うことで、明るい面平均色マップセットおよび暗い面平均色マップセットを取得するマップセット生成モジュールであって、サイズの異なる複数の明るい面平均色マップが含まれ、前記暗い面平均色マップセットには、サイズの異なる複数の暗い面平均色マップが含まれるマップセット生成モジュール、を含む。
【0115】
本願の一実施例では、前記算出モジュール1302は、前記シャドウテクセルの空間座標情報に基づいて、前記暗い面平均色ルックアップテーブルにおいて、前記空間座標情報に対応しており、かつ値がゼロではない暗い面平均色情報を決定する暗い面平均色取得ユニットと、前記空間座標情報に基づいて、前記明るい面平均色マップセットにおいて、低レベル明るい面平均色マップから高レベル明るい面平均色マップへレベルごとに検索することで、前記空間座標情報に対応しており、かつ値がゼロではない明るい面平均色情報を取得する明るい面平均色取得ユニットと、前記明るい面平均色情報および前記暗い面平均色情報に基づいて、前記平均輝度差を決定する平均輝度差算出ユニットと、を含む。
【0116】
本願の一実施例では、前記算出モジュール1302は、前記暗い面平均色情報を決定する際に、前記暗い面平均色ルックアップテーブルに対して多次元線形補間処理を行うために使用される。
【0117】
本願の一実施例では、前記平均輝度差算出ユニットは、具体的には、前記明るい面平均色情報における明るい面RGBベクトルおよび前記暗い面平均色情報における暗い面RGBベクトルを取得するステップと、前記明るい面RGBベクトルを前記暗い面RGBベクトルで除算することで、前記平均輝度差を取得するステップと、を実行するために使用される。
【0118】
本願の一実施例では、前記復元モジュール1303は、具体的には、前記平均輝度差と、前記シャドウテクセルに対応する色情報におけるRGBベクトルとを乘算することで、前記復元色情報を取得するステップ、を実行するために使用される。
【0119】
本願の一実施例では、前記画像処理装置1300は、さらに、前記シャドウマップにおけるエッジテクセルを抽出し、前記エッジテクセルに基づいて、前記拡散反射マップにおいて中心テクセルを決定する中心テクセル決定モジュールと、前記中心テクセルおよび予め設定された範囲に基づいて、ターゲットマップ領域を決定し、前記シャドウマップに基づいて、前記ターゲットマップ領域における明るい部分領域および暗い部分領域を決定する明暗領域決定モジュールと、前記明るい部分領域に対応する明るい部分平均色および前記暗い部分領域に対応する暗い部分平均色をそれぞれ算出し、前記明るい部分平均色および前記暗い部分平均色に基づいて平均輝度差を決定し、前記平均輝度差を前記平均色ルックアップテーブルに累加する平均輝度差算出モジュールと、を含む。
【0120】
本願の一実施例では、前記中心テクセル決定モジュールは、具体的には、水平方向テンプレートおよび垂直方向テンプレートによって前記シャドウマップに対して近傍畳み込みを行うことで、前記エッジテクセルを取得するステップと、前記エッジテクセルの第3のUV座標を取得し、前記第3のUV座標に基づいて、前記拡散反射マップにおいて検索を行うことで、前記中心テクセルを取得するステップと、を実行するために使用される。
【0121】
本願の一実施例では、前記明暗領域決定モジュールは、具体的には、前記ターゲットマップ領域における各テクセルの第4のUV座標を取得し、前記第4のUV座標および前記シャドウマップに基づいて、前記ターゲットマップ領域における各テクセルに対応するシャドウ情報を決定するステップと、シャドウ情報が非シャドウテクセルであってかつ空間座標情報が隣接しているテクセルによって作成された領域を、前記明るい部分領域とし、シャドウ情報がシャドウテクセルであってかつ空間座標情報が隣接しているテクセルによって作成された領域を、前記暗い部分領域とするステップと、を実行するために使用される。
【0122】
本願の一実施例では、前記平均輝度差算出モジュールは、具体的には、前記明るい部分領域における全てのテクセルの色情報を加算することで明るい部分色情報を取得するとともに、前記明るい部分領域における全てのテクセルの色情報における透明値を加算することで第3の合計値を取得するステップと、前記暗い部分領域における全てのテクセルの色情報を加算することで暗い部分色情報を取得するとともに、前記暗い部分領域における全てのテクセルの色情報における透明値を加算することで第4の合計値を取得するステップと、前記明るい部分色情報を前記第3の合計値で除算することで前記明るい部分平均色を取得し、前記暗い部分色情報を前記第4の合計値で除算することで前記暗い部分平均色を取得するステップと、を実行するために使用される。
【0123】
本願の一実施例では、前記平均輝度差算出モジュールは、具体的には、前記明るい部分平均色における明るい部分RGBベクトルと、前記暗い部分平均色における暗い部分RGBベクトルとを取得するステップと、前記明るい部分RGBベクトルを前記暗い部分RGBベクトルで除算することで、前記平均輝度差を取得するステップと、を実行するために使用される。
【0124】
本願の一実施例では、前記平均色ルックアップテーブルは、4次元ルックアップテーブルであり、前記中心テクセルの空間位置座標の3つの次元と、暗い部分平均色の色均値とを含む。
【0125】
本願の一実施例では、前記算出モジュール1302は、前記位置マップに基づいて前記シャドウテクセルの空間位置座標を決定するとともに、前記シャドウテクセルに対応する暗い部分平均色の色均値を取得する情報取得ユニットと、前記シャドウテクセルの空間位置座標と、暗い部分平均色の色均値とに基づいて、前記平均色ルックアップテーブルにおいて、対応する平均輝度差を検索する情報検索ユニットと、を含む。
【0126】
本願の一実施例では、前記情報検索ユニットは、具体的には、前記シャドウテクセルの空間位置座標と、暗い部分平均色の色均値とに基づいて、前記平均色ルックアップテーブルにおいて、対応する平均輝度差が存在しているかどうかを検索するステップと、存在しない場合、前記シャドウテクセルの空間位置座標と、暗い部分平均色の色均値とに基づいて、前記平均色ルックアップテーブルに対応する平均色マップセットにおいて、対応する平均輝度差を検索するステップであって、前記平均色マップセットには、前記平均色ルックアップテーブルに対してマルチレベルのダウンサンプリングを行うことで作成された複数のマップが含まれるステップと、を実行するために使用される。
【0127】
本願の一実施例では、前記情報検索ユニットは、さらに、前記平均輝度差を検索する場合、前記平均色ルックアップテーブルに対して多次元線形補間処理を行うステップ、を実行するために使用される。
【0128】
本願の一実施例では、前記復元モジュール1303は、前記平均輝度差と、前記シャドウテクセルに対応する色情報におけるRGBベクトルとを乘算することで、前記復元色情報を取得するように構成される。
【0129】
本願の一実施例では、前記画像処理装置1300は、さらに、前記拡散反射マップにおけるシャドウテクセルと非シャドウテクセルとの間の境界に対してぼかし処理を行う境界ぼかしモジュール、を含む。
【0130】
図14は、本願の一実施例による画像処理装置のブロック図を模式的に示す。当該装置は、本願の実施例によって提供される方法における相応のステップを実行するために使用され得る。
【0131】
図14に示すものを参照すると、本願の一実施例による画像処理装置1400は、第1のルックアップテーブル構築モジュール1401と、中間結果マップ取得モジュール1402と、第2のルックアップテーブル構築モジュール1403と、色復元モジュール1404とを含む。
【0132】
ここで、第1のルックアップテーブル構築モジュール1401は、拡散反射マップにおける各テクセルの法線情報に基づいて、第1の平均色ルックアップテーブルを構築するために使用され、中間結果マップ取得モジュール1402は、第1の平均色ルックアップテーブルに基づいて、前記拡散反射マップに対応する全体平均明るい領域色情報を決定し、第1の平均色ルックアップテーブルに基づいて、中間結果マップを取得するために使用され、第2のルックアップテーブル構築モジュール1403は、中間結果マップおよびアンビエントオクルージョンマップに基づいて、第2の平均色ルックアップテーブルを構築するために使用され、色復元モジュール1404は、中間結果マップにおける各テクセルをトラバースし、第2の平均色ルックアップテーブルにおける各テクセルの色情報に基づいて復元色情報を決定し、復元色情報に基づいて各テクセルの色を復元するために使用される。
【0133】
図15は、本願の実施例に係る電子デバイスを実現するのに好適なコンピュータシステムの構成図を示す。
【0134】
説明すべきものとして、
図15に示す電子デバイスのコンピュータシステム1500は、一例にすぎず、本願の実施例の機能および使用範囲に何ら制限を与えるものではない。
【0135】
図15に示すように、コンピュータシステム1500は、中央処理ユニット(CPU:Central Processing Unit)1501を含み、それは、読み取り専用メモリ1502(ROM:Read-Only Memory)に記憶されているプログラム、または記憶部1508からランダムアクセスメモリ(RAM:Random Access Memory)1503にロードされたプログラムに従って、種々の適切な動作および処理を実行して、上記の実施例で説明した画像表示方法を実現することができる。RAM 1503には、システム動作に必要な各種のプログラムやデータも記憶されている。CPU 1501、ROM 1502およびRAM 1503は、バス1504を介して互いに接続されている。入出力インターフェース(I/O :Input /Output)1505もバス1504に接続されている。
【0136】
以下のコンポーネント、即ち、キーボード、マウスなどを含む入力部1506、陰極線管(CRT:Cathode Ray Tube)、液晶ディスプレイ(LCD:Liquid Crystal Display)、スピーカなどを含む出力部1507、ハードディスクなどを含む記憶部1508、および、LAN(Local Area Network、ローカルエリアネットワーク)カード、モデムなどのネットワークインタフェースカードを含む通信部1509は、I/Oインターフェース1505に接続されている。通信部1509は、インターネットなどのネットワークを介して通信処理を行う。ドライバ1510も、必要に応じてI/Oインターフェース1505に接続されている。磁気ディスク、光ディスク、光磁気ディスク、半導体メモリなどの取り外し可能なメディア1511は、必要に応じてドライブ1510にインストールされ、それにより、そこから読み出されたコンピュータプログラムは、必要に応じて記憶部1508にインストールされる。
【0137】
特に、本願の実施例によれば、以下にフローチャートを参照して説明するプロセスは、コンピュータソフトウェアプログラムとして実現され得る。例えば、本願の実施例は、コンピュータ読み取り可能な媒体にキャリーされているコンピュータプログラムを含むコンピュータプログラム製品を含み、当該コンピュータプログラムには、フローチャートに示す方法を実行するためのプログラムコードが含まれる。このような実施例では、当該コンピュータプログラムは、通信部1509を介してネットワークからダウンロードおよびインストールされ、および/または、取り外し可能なメディア1511からインストールされてもよい。当該コンピュータプログラムが中央処理ユニット(CPU)1501によって実行されるとき、本願のシステムに限定された各種機能が実行される。
【0138】
説明すべきものとして、本願の実施例に示すコンピュータ読み取り可能な媒体は、コンピュータ読み取り可能な信号媒体、またはコンピュータ読み取り可能な記憶媒体、あるいは上記の両者の任意の組み合わせであってもよい。コンピュータ読み取り可能な記憶媒体は、例えば、電気、磁気、光、電磁、赤外線、あるいは半導体のシステム、装置またはデバイス、あるいは任意の以上の組み合わせであってもよいが、これらに限定されない。コンピュータ読み取り可能な記憶媒体のより具体的な例としては、1つ以上のワイヤーを有する電気的接続、携帯型コンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROM:Erasable Programmable Read Only Memory)、フラッシュメモリ、光ファイバ、携帯型コンパクトディスク読取り専用メモリ(CD-ROM:Compact Disc Read-Only Memory)、光記憶デバイス、磁気記憶デバイス、または上記の任意の好適な組み合わせを含むが、これらに限定されない。本願において、コンピュータ読み取り可能な記憶媒体は、プログラムが含まれているまたは記憶されている任意の有形媒体であってもよく、当該プログラムは、命令実行システム、装置またはデバイスによって使用され得て、またはそれらと組み合わせて使用され得る。一方、本願において、コンピュータ読み取り可能な信号媒体は、ベースバンドにおいて、またはキャリアの一部として伝播されるデータ信号を含み得ており、データ信号には、コンピュータ読み取り可能なプログラムコードがキャリーされている。このように伝播されるデータ信号については、電磁信号、光信号、または上記の任意の適切な組み合わせが含まれるが、これらに限定されない様々な形態が採用され得る。コンピュータ読み取り可能な信号媒体は、コンピュータ読み取り可能な記憶媒体以外の任意のコンピュータ読み取り可能な媒体であってもよく、当該コンピュータ読み取り可能な媒体は、命令実行システム、装置、またはデバイスによって使用される、またはそれらと組み合わせて使用されるプログラムを送信、伝播または伝送することができる。コンピュータ読み取り可能な媒体に含まれるプログラムコードは、無線、有線など、または上記の任意の適切な組み合わせを含むが、これらに限定されない任意の適切な媒体で伝送され得る。
【0139】
別の態様として、本願は、コンピュータ読み取り可能な媒体を提供し、当該コンピュータ読み取り可能な媒体は、上記の実施例で説明した画像処理装置に含まれるものであってもよく、電子デバイスに組み込まれずに単独で存在するものであってもよい。上記のコンピュータ読み取り可能な媒体は、1つまたは複数のプログラムがキャリーされており、上記の1つまたは複数のプログラムが1つの当該電子デバイスによって実行されるとき、当該電子デバイスに上記の実施例に記載の方法を実現させる。