(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-05
(45)【発行日】2024-09-13
(54)【発明の名称】画像処理システム、画像処理方法、学習システム及びプログラム
(51)【国際特許分類】
G06T 7/00 20170101AFI20240906BHJP
G06T 7/90 20170101ALI20240906BHJP
G06V 10/82 20220101ALI20240906BHJP
G06V 10/56 20220101ALI20240906BHJP
【FI】
G06T7/00 350C
G06T7/90 A
G06V10/82
G06V10/56
(21)【出願番号】P 2023135922
(22)【出願日】2023-08-23
【審査請求日】2023-08-23
(32)【優先日】2022-12-21
(33)【優先権主張国・地域又は機関】US
【新規性喪失の例外の表示】特許法第30条第2項適用 令和5年6月13日 ウェブサイトのアドレスhttps://github.com/rakutentech/PCT-Net-Image-Harmonizationにて発表
【新規性喪失の例外の表示】特許法第30条第2項適用 令和5年6月13日 ウェブサイトのアドレスhttps://openaccess.thecvf.com/content/CVPR2023/papers/Guerreiro_PCT-Net_Full_Resolution_Image_Harmonization_Using_Pixel-Wise_Color_Transformations_CVPR_2023_paper.pdfにて発表
【新規性喪失の例外の表示】特許法第30条第2項適用 令和5年6月13日 ウェブサイトのアドレスhttps://openaccess.thecvf.com/content/CVPR2023/supplemental/Guerreiro_PCT-Net_Full_Resolution_CVPR_2023_supplemental.pdfにて発表
【新規性喪失の例外の表示】特許法第30条第2項適用 令和5年6月21日 学会「The IEEE/CVF Conference on Computer Vision and Pattern Recognition 2023(CVPR2023) Vancouver Convention Center(カナダ バンクーバー)」(https://cvpr2023.thecvf.com/virtual/2023/poster/21142)にて発表
【新規性喪失の例外の表示】特許法第30条第2項適用 令和5年7月3日 中部大学工学部情報工学科の講義「画像情報処理」(https://drive.google.com/file/d/1pJuOktuF-OkqaIftLRttv6q2eQ7brciU/view 学校法人中部大学(愛知県県春日井市松本町1200番))にて発表
(73)【特許権者】
【識別番号】399037405
【氏名又は名称】楽天グループ株式会社
(74)【代理人】
【識別番号】110000154
【氏名又は名称】弁理士法人はるか国際特許事務所
(72)【発明者】
【氏名】ジュリアン ジョージ アンドレード ゲレイロ
(72)【発明者】
【氏名】中澤 満
(72)【発明者】
【氏名】シュテンガー ビヨン
【審査官】伊知地 和之
(56)【参考文献】
【文献】中国特許出願公開第114173021(CN,A)
【文献】米国特許出願公開第2022/0292654(US,A1)
【文献】Ben Xue et al.,DCCF: Deep Comprehensible Color Filter Learning Framework for High-Resolution Image Harmonization,arXiv.org[online],arXiv(Cornell University Library),2022年07月11日,[検索日 2024.5.21], インターネット:<URL:https://arxiv.org/pdf/2109.06671>
【文献】Cong Wenyan et al.,“High-Resolution Image Harmonization via Collaborative Dual Transformations”,2022 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)[online],IEEE,2022年,p.18449-18458,[検索日 2024.5.21], インターネット:<URL:https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=9880229>,DOI: 10.1109/CVPR52688.2022.01792
(58)【調査した分野】(Int.Cl.,DB名)
G06T 1/00 - 1/40
G06T 3/00 - 5/94
G06T 7/00 - 7/90
G06V 10/00 - 20/90
G06V 30/418
G06V 40/16
G06V 40/20
CSDB(日本国特許庁)
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
第1解像度を有する第1画像を取得する第1画像取得手段と、
前記第1解像度を有し、前記第1画像における色調整の対象となる一以上の対象画素を指定する第1マスク画像を取得する第1マスク画像取得手段と、
前記第1画像に基づいて、前記第1解像度より低い第2解像度を有する第2画像を取得する第2画像取得手段と、
前記第1マスク画像に基づいて、前記第2解像度を有する第2マスク画像を取得する第2マスク画像取得手段と、
前記第2画像及び前記第2マスク画像をパラメータマップ推定モデルに入力することにより、前記第2解像度を有する第2パラメータマップを取得する第2パラメータマップ取得手段と、
前記第1画像の画素のうち少なくとも前記一以上の対象画素である一以上の調整画素それぞれの色を示す画素値ベクトルと、変換行列と、の積の項を含む式で定義される変換関数の出力である色調整画素値ベクトルを算出し、該色調整画素値ベクトルが示す色を有する色調整画素を含む色調整画像を取得する色調整画像取得手段であって、
前記変換行列は、高解像度化された前記第2パラメータマップであって前記第1解像度を有する第1パラメータマップにおける、該調整画素に設定された複数の変換パラメータを要素とする、色調整画像取得手段と、
を有し、
前記パラメータマップ推定モデルは、
いずれも前記第1解像度を有する、第1学習画像と、前記第1学習画像における色調整の対象となる一以上の学習対象画素を指定する第1学習マスク画像と、第1正解色調整画像と、を含む訓練データを用いて、前記第1正解色調整画像に対する第1学習色調整画像の誤差が小さくなるように学習され、
前記第1学習色調整画像は、
前記第1学習画像の画素のうち少なくとも前記一以上の学習対象画素である学習調整画素それぞれの色を示す学習画素値ベクトルと、学習変換行列と、の積の項を含むとともに前記変換関数と同じ形式の式で定義される学習変換関数の出力である、学習色調整画素値ベクトルが示す色を有する学習色調整画素を含み、
前記学習変換行列は、前記第1解像度を有する第1学習パラメータマップにおける、該学習調整画素に設定された複数の学習変換パラメータを要素とし、
前記第1学習パラメータマップは、
低解像度化された前記第1学習画像であって前記第2解像度を有する第2学習画像と、低解像度化された前記第1学習マスク画像であって前記第2解像度を有する第2学習マスク画像と、を前記パラメータマップ推定モデルに入力した際の出力である第2学習パラメータマップが高解像度化されたものである、
画像処理システム。
【請求項2】
前記第1画像取得手段は、前景画像と背景画像とが合成された画像を前記第1画像として取得し、
前記第1マスク画像取得手段は、前記合成画像における前記前景画像に由来する一以上の画素を前記一以上の対象画素として指定する画像を、前記第1マスク画像として取得する、
請求項1に記載の画像処理システム。
【請求項3】
前記第2パラメータマップに基づいて、前記第1パラメータマップを取得する第1パラメータマップ取得手段を更に有する、
請求項1又は2に記載の画像処理システム。
【請求項4】
前記変換行列は対称行列であり、
前記変換関数は、前記画素値ベクトルと、前記変換行列と、の積を含むアフィン変換である、
請求項1又は2に記載の画像処理システム。
【請求項5】
前記画素値ベクトルは、該画素値ベクトルに係る画素値の3成分のうち、少なくともいずれか2成分同士の積を要素として含む、
請求項1又は2に記載の画像処理システム。
【請求項6】
前記画素値ベクトルは、該画素値ベクトルに係る画素値の少なくとも1成分の自乗を要素として含む、
請求項1又は2に記載の画像処理システム。
【請求項7】
前記パラメータマップ推定モデルは、トランスフォーマーモデルを含む、
請求項1又は2に記載の画像処理システム。
【請求項8】
前記誤差は、前記第1学習マスク画像に基づいて正規化されたものである、
請求項1又は2に記載の画像処理システム。
【請求項9】
前記パラメータマップ推定モデルは更に、前記第1学習色調整画像と、前記第1正解色調整画像と、の類似度が大きくなるとともに、前記第1学習色調整画像と、前記第1正解色調整画像とは異なる第1不正解色調整画像と、の類似度が小さくなるように学習された機械学習モデルである、
請求項8に記載の画像処理システム。
【請求項10】
前記第1不正解色調整画像は、前記第1正解色調整画像における前記学習対象画素の画素値を変換することにより得られた画像である、
請求項9に記載の画像処理システム。
【請求項11】
前記パラメータマップ推定モデルは更に、前記第2学習パラメータマップにおいて、ある画素に設定された少なくとも一の第2学習変換パラメータと、該画素に隣り合う画素に設定された少なくとも一の第2学習変換パラメータと、の類似度が大きくなるように学習された機械学習モデルである、
請求項9に記載の画像処理システム。
【請求項12】
いずれも第1解像度を有する、第1学習画像と、前記第1学習画像における色調整の対象となる一以上の学習対象画素を指定する第1学習マスク画像と、第1正解色調整画像と、を含む訓練データを取得する訓練データ取得手段と、
前記第1学習画像に基づいて、前記第1解像度より低い第2解像度を有する第2学習画像を取得する第2学習画像取得手段と、
前記第1学習マスク画像に基づいて、前記第2解像度を有する第2学習マスク画像を取得する第2学習マスク画像取得手段と、
前記第2学習画像及び前記第2学習マスク画像をパラメータマップ推定モデルに入力することにより、前記第2解像度を有する第2学習パラメータマップを取得する第2学習パラメータマップ取得手段と、
前記第1学習画像の画素のうち少なくとも前記一以上の学習対象画素である学習調整画素それぞれの色を示す学習画素値ベクトルと、学習変換行列と、の積の項を含むととも
に変換関数と同じ形式の式で定義される学習変換関数の出力である学習色調整画素値ベクトルを算出し、該学習色調整画素値ベクトルが示す色を有する学習色調整画素を含む学習色調整画像を取得する学習色調整画像取得手段であって、
前記学習変換行列は、高解像度化された前記第2学習パラメータマップであって前記第1解像度を有する第1学習パラメータマップにおける、該学習調整画素に設定された複数の学習変換パラメータを要素とする、学習色調整画像取得手段と、
前記学習色調整画像と、前記正解色調整画像と、に基づいて前記パラメータマップ推定モデルの学習を行う学習手段と、
を有する、学習システム。
【請求項13】
第1解像度を有する第1画像を取得する第1画像取得ステップと、
前記第1解像度を有し、前記第1画像における色調整の対象となる一以上の対象画素を指定する第1マスク画像を取得する第1マスク画像取得ステップと、
前記第1画像に基づいて、前記第1解像度より低い第2解像度を有する第2画像を取得する第2画像取得ステップと、
前記第1マスク画像に基づいて、前記第2解像度を有する第2マスク画像を取得する第2マスク画像取得ステップと、
前記第2画像及び前記第2マスク画像をパラメータマップ推定モデルに入力することにより、前記第2解像度を有する第2パラメータマップを取得する2パラメータマップ取得ステップと、
前記第1画像の画素のうち少なくとも前記一以上の対象画素である一以上の調整画素それぞれの色を示す画素値ベクトルと、変換行列と、の積の項を含む式で定義される変換関数の出力である色調整画素値ベクトルを算出し、該色調整画素値ベクトルが示す色を有する色調整画素を含む色調整画像を取得する色調整画像取得ステップであって、
前記変換行列は、高解像度化された前記第2パラメータマップであって前記第1解像度を有する第1パラメータマップにおける、該調整画素に設定された複数の変換パラメータを要素とする、色調整画像取得ステップと、
を有し、
前記パラメータマップ推定モデルは、
いずれも前記第1解像度を有する、第1学習画像と、前記第1学習画像における色調整の対象となる一以上の学習対象画素を指定する第1学習マスク画像と、第1正解色調整画像と、を含む訓練データを用いて、前記第1正解色調整画像に対する第1学習色調整画像の誤差が小さくなるように学習され、
前記第1学習色調整画像は、
前記第1学習画像の画素のうち少なくとも前記一以上の学習対象画素である学習調整画素それぞれの色を示す学習画素値ベクトルと、学習変換行列と、の積の項を含むとともに前記変換関数と同じ形式の式で定義される学習変換関数の出力である、学習色調整画素値ベクトルが示す色を有する学習色調整画素を含み、
前記学習変換行列は、前記第1解像度を有する第1学習パラメータマップにおける、該学習調整画素に設定された複数の学習変換パラメータを要素とし、
前記第1学習パラメータマップは、
低解像度化された前記第1学習画像であって前記第2解像度を有する第2学習画像と、低解像度化された前記第1学習マスク画像であって前記第2解像度を有する第2学習マスク画像と、を前記パラメータマップ推定モデルに入力した際の出力である第2学習パラメータマップが高解像度化されたものである、
画像処理方法。
【請求項14】
第1解像度を有する第1画像を取得する第1画像取得手段、
前記第1解像度を有し、前記第1画像における色調整の対象となる一以上の対象画素を指定する第1マスク画像を取得する第1マスク画像取得手段、
前記第1画像に基づいて、前記第1解像度より低い第2解像度を有する第2画像を取得する第2画像取得手段、
前記第1マスク画像に基づいて、前記第2解像度を有する第2マスク画像を取得する第2マスク画像取得手段、
前記第2画像及び前記第2マスク画像をパラメータマップ推定モデルに入力することにより、前記第2解像度を有する第2パラメータマップを取得する第2パラメータマップ取得手段、
前記第1画像の画素のうち少なくとも前記一以上の対象画素である一以上の調整画素それぞれの色を示す画素値ベクトルと、変換行列と、の積の項を含む式で定義される変換関数の出力である色調整画素値ベクトルを算出し、該色調整画素値ベクトルが示す色を有する色調整画素を含む色調整画像を取得する色調整画像取得手段であって、
前記変換行列は、高解像度化された前記第2パラメータマップであって前記第1解像度を有する第1パラメータマップにおける、該調整画素に設定された複数の変換パラメータを要素とする、色調整画像取得手段、
としてコンピュータを機能させるためのプログラムであって、
前記パラメータマップ推定モデルは、
いずれも前記第1解像度を有する、第1学習画像と、前記第1学習画像における色調整の対象となる一以上の学習対象画素を指定する第1学習マスク画像と、第1正解色調整画像と、を含む訓練データを用いて、前記第1正解色調整画像に対する第1学習色調整画像の誤差が小さくなるように学習され、
前記第1学習色調整画像は、
前記第1学習画像の画素のうち少なくとも前記一以上の学習対象画素である学習調整画素それぞれの色を示す学習画素値ベクトルと、学習変換行列と、の積の項を含むとともに前記変換関数と同じ形式の式で定義される学習変換関数の出力である、学習色調整画素値ベクトルが示す色を有する学習色調整画素を含み、
前記学習変換行列は、前記第1解像度を有する第1学習パラメータマップにおける、該学習調整画素に設定された複数の学習変換パラメータを要素とし、
前記第1学習パラメータマップは、
低解像度化された前記第1学習画像であって前記第2解像度を有する第2学習画像と、低解像度化された前記第1学習マスク画像であって前記第2解像度を有する第2学習マスク画像と、を前記パラメータマップ推定モデルに入力した際の出力である第2学習パラメータマップが高解像度化されたものである、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理システム、画像処理方法、学習システム及びプログラムに関する。
【背景技術】
【0002】
異なる2つの画像(前景画像及び背景画像)を合成した際に生じる視覚的な違和感を低減する技術として、画像調和(Image Harmonization)が知られている。前景画像の一部を背景画像に合成すると、それぞれの画像を撮影した環境の違い等に起因して視覚的な違和感が生じる。画像調和は、合成画像における前景画像に由来する領域の色を適切に調整することにより、上記違和感を低減する技術である。
【0003】
従来、例えば非特許文献1に開示されるように、畳み込みニューラルネットワーク(Convolutional Neural Network:CNN)等の機械学習モデルを用いた画像調和に係る技術が提案されている。上記従来技術では、機械学習モデルは、合成画像に基づいて、該合成画像における前景画像に由来する領域の色と背景画像に由来する領域の色とが調和した調和画像を推定する。
【先行技術文献】
【非特許文献】
【0004】
【文献】Konstantin Sofiiuk, Polina Popenova, and Anton Konushin. Foreground-aware semantic representations for image harmonization. In Proceedings of the IEEE/CVF Winter Conference on Applications of Computer Vision (WACV), pages 1620-1629, January 2021.
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記従来技術を高解像度の画像に適用することは難しい。上記従来技術では、機械学習モデルは、目的とする調和画像を直接推定する。このような機械学習モデルによる推定にかかる計算コストは、該機械学習モデルに入力される画像の解像度が高くなるほど高くなる。そのため、上記従来技術の応用は、実際上、低解像度(例えば256×256ピクセル)の画像に限定されていた。
【0006】
なお、上記課題は、機械学習モデルを用いた画像調和、つまり合成画像における前景画像に由来する領域の色のみを調整する技術についてのみならず、機械学習モデルを用いた画像の色調整に係る技術一般に当てはまる。
【0007】
本発明は上記課題に鑑みてなされたものであって、その目的は、機械学習モデルを用いた高解像度の画像の色調整を、低い計算コストで行うことを可能とする画像処理システム、画像処理方法、学習システム及びプログラムを提供することにある。
【課題を解決するための手段】
【0008】
本発明に係る画像処理システムは、第1解像度を有する第1画像を取得する第1画像取得手段と、前記第1解像度を有し、前記第1画像における色調整の対象となる一以上の対象画素を指定する第1マスク画像を取得する第1マスク画像取得手段と、前記第1画像に基づいて、前記第1解像度より低い第2解像度を有する第2画像を取得する第2画像取得手段と、前記第1マスク画像に基づいて、前記第2解像度を有する第2マスク画像を取得する第2マスク画像取得手段と、前記第2画像及び前記第2マスク画像をパラメータマップ推定モデルに入力することにより、前記第2解像度を有する第2パラメータマップを取得する第2パラメータマップ取得手段と、前記第1画像の画素のうち少なくとも前記一以上の対象画素である一以上の調整画素それぞれの色を示す画素値ベクトルと、変換行列と、の積の項を含む式で定義される変換関数の出力である色調整画素値ベクトルを算出し、該色調整画素値ベクトルが示す色を有する色調整画素を含む色調整画像を取得する色調整画像取得手段であって、前記変換行列は、高解像度化された前記第2パラメータマップであって前記第1解像度を有する第1パラメータマップにおける、該調整画素に設定された複数の変換パラメータを要素とする、色調整画像取得手段と、を有し、前記パラメータマップ推定モデルは、いずれも前記第1解像度を有する、第1学習画像と、前記第1学習画像における色調整の対象となる一以上の学習対象画素を指定する第1学習マスク画像と、第1正解色調整画像と、を含む訓練データを用いて、前記第1正解色調整画像に対する第1学習色調整画像の誤差が小さくなるように学習され、前記第1学習色調整画像は、前記第1学習画像の画素のうち少なくとも前記一以上の学習対象画素である学習調整画素それぞれの色を示す学習画素値ベクトルと、学習変換行列と、の積の項を含むとともに前記変換関数と同じ形式の式で定義される学習変換関数の出力である、学習色調整画素値ベクトルが示す色を有する学習色調整画素を含み、前記学習変換行列は、前記第1解像度を有する第1学習パラメータマップにおける、該学習調整画素に設定された複数の学習変換パラメータを要素とし、前記第1学習パラメータマップは、低解像度化された前記第1学習画像であって前記第2解像度を有する第2学習画像と、低解像度化された前記第1学習マスク画像であって前記第2解像度を有する第2学習マスク画像と、を前記パラメータマップ推定モデルに入力した際の出力である第2学習パラメータマップが高解像度化されたものである。
【図面の簡単な説明】
【0009】
【
図1】本発明の実施形態に係る画像処理システムのハードウェア構成の一例を示す図である。
【
図3A】画像処理システムで実現される機能の一例を示す機能ブロック図である。
【
図3B】画像処理システムで実現される機能の一例を示す機能ブロック図である。
【
図4】パラメータマップ推定モデルの一例を示す図である。
【
図5A】画像処理システムで実行される処理の一例を示すフロー図である。
【
図5B】画像処理システムで実行される処理の一例を示すフロー図である。
【
図6】変換行列が非対称行列である場合と対称行列である場合とを比較した結果を示す図である。
【
図7】パラメータマップ推定モデルの変形例を示す図である。
【発明を実施するための形態】
【0010】
以下、本発明の一実施形態について、図面を参照しながら説明する。
【0011】
[1.画像処理システムのハードウェア構成]
図1は、本発明の実施形態に係る画像処理システム1のハードウェア構成の一例を示す図である。本実施形態に係る画像処理システム1は、パーソナルコンピュータ等のコンピュータである。
図1に示すように画像処理システム1は、例えば、制御部10、記憶部12、通信部14、操作部16及び出力部18を含んでいる。
【0012】
制御部10は、例えば、画像処理システム1にインストールされるプログラムに従って動作するマイクロプロセッサ等のプログラム制御デバイスである。制御部10は、少なくとも1つのプロセッサを含む。
【0013】
記憶部12は、例えばROMやRAM等の記憶素子や、ハードディスクドライブ(HDD)、フラッシュメモリを含むソリッドステートドライブ(SSD)などである。記憶部12には、制御部10によって実行されるプログラム等が記憶される。
【0014】
通信部14は、例えばネットワークインタフェースカードのような、有線通信又は無線通信用の通信インタフェースであり、インターネット等のコンピュータネットワークを介して、他のコンピュータや端末との間でデータを授受する。
【0015】
操作部16は、入力デバイスであり、例えば、タッチパネルやマウス等のポインティングデバイスやキーボード等を含む。操作部16は、操作内容を制御部10に伝達する。出力部18は、例えば、液晶出力部又は有機EL出力部等のディスプレイや、スピーカ等の音声出力デバイスといった出力デバイスである。
【0016】
なお、記憶部12に記憶されるプログラム及びデータは、ネットワークを介して他のコンピュータから供給されてもよい。また、画像処理システム1のハードウェア構成は、上記の例に限られず、種々のハードウェアを適用可能である。例えば、画像処理システム1に、コンピュータ読み取り可能な情報記憶媒体を読み取る読取部(例えば、光ディスクドライブやメモリカードスロット)や外部機器とデータの入出力をするための入出力部(例えば、USBポート)が含まれていてもよい。例えば、情報記憶媒体に記憶されたプログラムやデータが読取部や入出力部を介して画像処理システム1に供給されるようにしてもよい。また、画像処理システム1は、複数のコンピュータにより構成されてもよい。
【0017】
[2.画像処理システムの概要]
以下では、
図2A及び
図2Bを用いて、画像処理システム1の概要を説明する。
図2A及び
図2Bは、画像処理システム1の概要を示す図である。本実施形態では、画像処理システム1が合成画像200の画像調和に用いられる場合を例に挙げて説明する。
図2A及び
図2Bでは一例として、犬を被写体とする前景画像と、公園の地面を被写体とする背景画像と、が合成された画像を合成画像200として示す。なお、本明細書では、画像調和とは、合成画像における前景画像に由来する領域(
図2A及び
図2Bの場合、合成画像200において犬の姿が表示されている領域)の色を調整することを指すものとする。
【0018】
画像処理システム1で行われる主な処理は次の通りである:(1)合成画像及びマスク画像の取得;(2)低解像度合成画像及び低解像度マスク画像の取得;(3)低解像度パラメータマップの取得;(4)元解像度パラメータマップの取得;(5)調和画像の取得。以下、各処理の概要を説明する。
【0019】
[2-1.合成画像及びマスク画像の取得]
まず画像処理システム1は、合成画像200及びマスク画像202を取得する(
図2A)。合成画像200は、所定の解像度(以下、「第1解像度」という。)を有する。ここで解像度とは、画像の画素数のことである。合成画像200は、幅W×高さH×チャンネル数3の3次元配列である。ここで幅W及び高さHは、それぞれ合成画像200の幅方向の画素数及び高さ方向の画素数である。合成画像200の各チャンネルはRGBそれぞれに対応する。
【0020】
マスク画像202は、合成画像200における色調整の対象となる複数の対象画素を指定する画像である。本実施形態では、対象画素は、合成画像200における前景画像に由来する領域の画素である。マスク画像202は、具体的には、対象画素の画素値が1であり、対象画素以外の画素の画素値が0である二値画像である。マスク画像202も第1解像度を有する。第1解像度を有するマスク画像202は、幅W×高さH×チャンネル数1の3次元配列である。
【0021】
[2-2.低解像度合成画像及び低解像度マスク画像の取得]
画像処理システム1は、合成画像200に基づいて、低解像度合成画像200dを取得する(
図2A)。低解像度合成画像200dは、第1解像度より低い解像度(以下、「第2解像度」という。)を有する。画像処理システム1は、合成画像200を低解像度化(ダウンサンプリング)することにより、低解像度合成画像200dを取得する(
図2A)。低解像度合成画像200dは、幅W
d×高さH
d×チャンネル数3の3次元配列である。ここで、ここで幅W
d及び高さH
dは、それぞれ低解像度合成画像200dの幅方向の画素数及び高さ方向の画素数であり、W>W
d,H>H
dである。低解像度合成画像200dの各チャンネルはRGBそれぞれに対応する。
【0022】
また、画像処理システム1は、マスク画像202に基づいて、低解像度マスク画像202dを取得する。低解像度マスク画像202dも第2解像度を有する。低解像度マスク画像202dは、幅Wd×高さHd×チャンネル数1の3次元配列である。
【0023】
[2-3.低解像度パラメータマップの取得]
画像処理システム1は、低解像度合成画像200d及び低解像度マスク画像202dをパラメータマップ推定モデルMに入力することにより、低解像度パラメータマップ204dを取得する(
図2A)。
【0024】
低解像度パラメータマップ204dの各画素には12個の低解像度変換パラメータが設定されている。低解像度パラメータマップ204dは、幅Wd×高さHd×チャンネル数12の3次元配列である。元解像度パラメータマップ204の各チャンネルは、12個の低解像度変換パラメータのそれぞれに対応する。
【0025】
パラメータマップ推定モデルMは、低解像度合成画像200d及び低解像度マスク画像202dが入力され、低解像度パラメータマップ204dを出力するように学習された学習済みの機械学習モデルである。なお、本実施形態では、低解像度合成画像200dと低解像度マスク画像202dとを結合(Concatenate)したものがパラメータマップ推定モデルMに入力される場合を例示するが(
図2A)、これらは別々にパラメータマップ推定モデルMに入力されるようにしてもよい。
【0026】
[2-4.元解像度パラメータマップの取得]
画像処理システム1は、低解像度パラメータマップ204dに基づいて、元解像度パラメータマップ204を取得する(
図2A)。元解像度パラメータマップ204は、第1解像度、すなわち合成画像200及びマスク画像202と同じ解像度を有する。画像処理システム1は、低解像度パラメータマップ204dを高解像度化(アップサンプリング)することにより、元解像度パラメータマップ204を取得する。
【0027】
元解像度パラメータマップ204の各画素には12個の変換パラメータが設定されている。元解像度パラメータマップ204の各画素に設定された12個の変換パラメータは、後述するように、合成画像200における該画素の画素値を変換するために用いられる。元解像度パラメータマップ204は幅W×高さH×チャンネル数12の3次元配列である。元解像度パラメータマップ204の各チャンネルは、12個の変換パラメータのそれぞれに対応する。
【0028】
[2-5.調和画像の取得]
画像処理システム1は、合成画像200の複数の対象画素それぞれの色を示す画素値ベクトルと、変換行列と、の積の項を含む式で定義される変換関数の出力である調和画素値ベクトルを算出し、該調和画素値ベクトルが示す色を有する調和画素を含む調和画像206を取得する(
図2B)。ここで、変換行列は、元解像度パラメータマップ204における、該対象画素に設定された12個の変換パラメータを要素とする。変換関数の詳細については後述する(数1についての説明参照)。
【0029】
[小括]
以上説明したように、本実施形態に係る画像処理システム1によれば、(1)合成画像200及びマスク画像202を取得し、(2)低解像度合成画像200d及び低解像度マスク画像202dを取得し、(3)低解像度合成画像200d及び低解像度マスク画像202dをパラメータマップ推定モデルMに入力することにより低解像度パラメータマップ204dを取得し、(4)低解像度パラメータマップ204dに基づいて元解像度パラメータマップ204を取得し、(5)画素値ベクトルと、変換行列と、の積の項を含む式で定義される変換関数の出力である調和画素値ベクトルを算出し、該調和画素値ベクトルが示す色を有する調和画素を含む調和画像206を取得する(
図2A及び
図2B)。
【0030】
従来の機械学習モデルを用いた画像調和では、合成画像及びマスク画像が入力され、目的とする調和画像を出力する機械学習モデルが用いられていた。このような機械学習モデルによる推定にかかる計算コストは、該機械学習モデルに入力される画像の解像度が高くなるほど高くなる。そのため、上記従来の機械学習モデルを用いた画像調和の応用は、実際上、低解像度(例えば256×256ピクセル)の画像に限定されていた。
【0031】
これに対し、本実施形態に係る画像処理システム1によれば、上記のような構成を採用したことにより、従来の画像調和に用いられていた、合成画像及びマスク画像が入力され、目的とする調和画像を出力する機械学習モデルの使用を回避することができる。その結果、画像調和にかかる計算コストを削減できるので、高解像度の合成画像の画像調和を低い計算コストで行うことができる。以降、この画像処理システム1の詳細について説明する。
【0032】
[3.画像処理システムで実現される機能]
図3A及び
図3Bは、画像処理システム1で実現される機能の一例を示す機能ブロック図である。
図3Aの機能ブロック図は画像処理システム1で実現される機能のうち、パラメータマップ推定モデルMの学習を実行する学習システムとしての機能(学習に係る機能)を示す。また、
図3Bの機能ブロック図は画像処理システム1で実現される機能のうち、調和画像206を取得する画像調和システムとしての機能(画像調和に係る機能)を示す。以下では、
図3A及び
図3Bをそれぞれ用いて、画像処理システム1で実現される機能を、学習システムとしての機能と画像調和システムとしての機能とに分けて説明する。
【0033】
[3-1.学習システムとしての機能]
図3Aに示すように、画像処理システム1では、訓練データ記憶部300、訓練データ取得部302、学習低解像度合成画像取得部304、学習低解像度マスク画像取得部306、モデル記憶部308、学習低解像度パラメータマップ取得部310、学習元解像度パラメータマップ取得部312、学習調和画像取得部314及び学習部316が実現される。訓練データ記憶部300及びモデル記憶部308は、記憶部12を主として実現される。訓練データ取得部302、学習低解像度合成画像取得部304、学習低解像度マスク画像取得部306、学習低解像度パラメータマップ取得部310、学習元解像度パラメータマップ取得部312、学習調和画像取得部314及び学習部316は、制御部10を主として実現される。
【0034】
以下では説明の便宜のため、
図2A及び
図2Bを参照することがある。以下の説明において、学習合成画像、学習マスク画像、学習低解像度合成画像、学習低解像度マスク画像、学習低解像パラメータマップ、学習元解像度パラメータマップ及び学習調和画像は、
図2A及び
図2Bにおける合成画像200、マスク画像202、低解像度合成画像200d、低解像度マスク画像202d、低解像度パラメータマップ204d、元解像度パラメータマップ204及び調和画像206にそれぞれ対応する。
【0035】
なお、学習合成画像、学習マスク画像、学習低解像度合成画像、学習低解像度マスク画像、学習低解像パラメータマップ、学習元解像度パラメータマップ及び学習調和画像は、合成画像200、マスク画像202、低解像度合成画像200d、低解像度マスク画像202d、低解像度パラメータマップ204d、元解像度パラメータマップ204及び調和画像206とはそれぞれ異なることに留意されたい。
【0036】
[訓練データ記憶部]
訓練データ記憶部300は、複数の訓練データを記憶する。各訓練データは、学習合成画像(第1学習画像)と、学習合成画像における色調整の対象となる一以上の学習対象画素を指定する学習マスク画像(第1学習マスク画像)と、正解調和画像(第1正解色調整画像)と、を含む。学習合成画像、学習マスク画像及び正解調和画像は、いずれも第1解像度を有する。本実施形態では一例として、第1解像度が1920×1080ピクセルである場合を説明するが、第1解像度は任意の解像度であってよい。なお、本実施形態では、訓練データは、後述する不正解調和画像を更に含む。
【0037】
学習合成画像は、学習前景画像と学習背景画像とが合成された画像である。学習マスク画像は、学習合成画像における学習前景画像に由来する一以上の画素を一以上の対象画素として指定する。正解調和画像は、学習合成画像と学習マスク画像との組に対して付与される正解データ(Ground Truth)である。正解調和画像は、例えば、対応する学習合成画像における学習前景画像に由来する一以上の画素の色を人為的に調整することによって得られる。
【0038】
[訓練データ取得部]
訓練データ取得部302は、訓練データを取得する。本実施形態では、訓練データ取得部302が、訓練データ記憶部300に記憶された訓練データを取得するが、訓練データは他の装置又は情報記憶媒体に記録されていてもよく、訓練データ取得部302は、該装置又は情報記憶媒体から訓練データを取得してもよい。
【0039】
[学習低解像度合成画像取得部]
学習低解像度合成画像取得部304(第2学習画像取得手段)は、学習合成画像に基づいて、第2解像度を有する学習低解像度合成画像(第2学習画像)を取得する(
図2A参照)。具体的には、学習低解像度合成画像取得部304は、学習合成画像を低解像度化(ダウンサンプリング)することにより、学習低解像度合成画像を取得する。低解像度化に伴う補間の方法としては、双一次(Bilinear)補間、双三次(Bicubic)補間やLanczos補間等の公知の手法を用いてよい。本実施形態では一例として、第2解像度が256×256ピクセルである場合を説明するが、第2解像度は、第1解像度より低解像度である限りにおいて任意の解像度であってよい。
【0040】
[学習低解像度マスク画像取得部]
学習低解像度マスク画像取得部306(第2学習マスク画像取得手段)は、学習マスク画像に基づいて、第2解像度を有する低解像度学習マスク画像(第2学習マスク画像)を取得する(
図2A参照)。具体的には、学習低解像度マスク画像取得部306は、学習マスク画像を低解像度化(ダウンサンプリング)することにより、低解像度学習マスク画像を取得する。低解像度化に伴う補間の方法としては、学習低解像度合成画像取得部304の場合と同様、任意の公知の手法を用いてよい。
【0041】
[モデル記憶部]
モデル記憶部308は、パラメータマップ推定モデルMを記憶する。具体的には、モデル記憶部308は、パラメータマップ推定モデルMの構造及びパラメータを記憶する。
【0042】
[パラメータマップ推定モデル]
パラメータマップ推定モデルMは、学習低解像度合成画像及び学習低解像度マスク画像が入力され、学習低解像度パラメータマップを出力する機械学習モデルである(
図2A参照)。なお、画像調和段階においては、パラメータマップ推定モデルMは、低解像度合成画像200d及び低解像度マスク画像202dが入力され、低解像度パラメータマップ204dを出力する。
【0043】
図4は、パラメータマップ推定モデルMの一例を示す図である。本実施形態では一例として、パラメータマップ推定モデルMとして、畳み込みニューラルネットワーク(Convolutional Neural Network:CNN)を用いる場合を説明する。なお、パラメータマップ推定モデルMの構造は、
図4に示す例に限定されず、適宜変更可能である。
【0044】
パラメータマップ推定モデルMは、エンコーダ部400と、デコーダ部402と、次元調節部404と、を含む(
図4参照)。エンコーダ部400は、学習低解像度合成画像及び学習低解像度マスク画像が入力され、学習特徴マップを出力する。デコーダ部402は、エンコーダ部400から出力された学習特徴マップが入力され、調整前低解像度パラメータマップを出力する。
【0045】
学習調整前低解像度パラメータマップは、第2解像度を有し、各画素にはC個(C≠12)の低解像度変換パラメータが設定されている。すなわち、学習調整前低解像度パラメータマップは、幅Wd×高さHd×チャンネル数Cの3次元配列である。
【0046】
次元調節部404は、学習調整前低解像度パラメータマップが入力され、学習低解像度パラメータマップを出力する。次元調節部404は、例えばカーネルサイズが1×1の畳み込み層である。
【0047】
[学習低解像度パラメータマップ取得部]
学習低解像度パラメータマップ取得部310(第2学習パラメータマップ取得手段)は、学習低解像度合成画像及び学習低解像度マスク画像をパラメータマップ推定モデルMに入力することにより、第2解像度を有する学習低解像度パラメータマップ(第2学習パラメータマップ)を取得する(
図2A参照)。本実施形態では、学習低解像度パラメータマップ取得部310は、モデル記憶部308に記憶されたパラメータマップ推定モデルMを用いるが、パラメータマップ推定モデルMは他の装置又は情報記憶媒体に記録されていてもよく、学習低解像度パラメータマップ取得部310は、該装置又は情報記憶媒体からパラメータマップ推定モデルMを取得してもよい。
【0048】
本実施形態では、学習低解像度パラメータマップ取得部310は、学習低解像度合成画像と学習低解像度マスク画像とを結合(Concatenate)したものをパラメータマップ推定モデルMに入力することにより、学習低解像度パラメータマップを取得する(
図2A)。なお、学習低解像度パラメータマップ取得部310は、学習低解像度合成画像と学習低解像度マスク画像とを別々にパラメータマップ推定モデルMに入力してもよい。
【0049】
学習低解像度パラメータマップの各画素には12個の学習低解像度変換パラメータが設定されている。学習低解像度パラメータマップは、幅Wd×高さHd×チャンネル数12の3次元配列である。学習低解像度パラメータマップの各チャンネルは、12個の学習低解像度変換パラメータのそれぞれに対応する。
【0050】
[学習元解像度パラメータマップ取得部]
学習元解像度パラメータマップ取得部312は、学習低解像度パラメータマップに基づいて、学習元解像度パラメータマップ(第1学習パラメータマップ)を取得する(
図2A参照)。具体的には、学習元解像度パラメータマップ取得部312は、学習低解像度パラメータマップを高解像度化(アップサンプリング)することにより、学習元解像度パラメータマップを取得する。高解像度化に伴う補間の方法としては、双一次(Bilinear)補間、双三次(Bicubic)補間やLanczos補間等の公知の手法を用いてよい。
【0051】
学習元解像度パラメータマップの各画素には12個の学習変換パラメータが設定されている。すなわち、学習元解像度パラメータマップは幅W×高さH×チャンネル数12の3次元配列である。学習元解像度パラメータマップの各チャンネルは、12個の学習変換パラメータのそれぞれに対応する。学習元解像度パラメータマップの各画素に設定された12個の学習変換パラメータは、後述するように、学習調和画像取得部314において、学習合成画像における該画素の画素値を変換するために用いられる。
【0052】
[学習調和画像取得部]
学習調和画像取得部314(学習色調整画像取得手段)は、学習変換関数の出力である学習調和画素値ベクトル(学習色調整画素値ベクトル)を算出し、該学習調和画素値ベクトルが示す色を有する学習調和画素(学習色調整画素)を含む学習調和画像(学習色調整画像)を取得する(
図2B参照)。
【0053】
学習変換関数は、学習画素値ベクトルと、学習変換行列と、の積の項を含む式で定義される。学習画素値ベクトルは、学習合成画像の複数の学習対象画素それぞれの色を示す。本実施形態では、学習画素値ベクトルは、該学習対象画素のRGB値のそれぞれを要素とする3次元のベクトルである。学習変換行列は、学習元解像度パラメータマップにおける、該学習対象画素に設定された複数の(本実施形態では12個の)学習変換パラメータを要素とする。
【0054】
本実施形態では、学習変換関数は、学習画素値ベクトルと、学習変換行列と、の積を含むアフィン変換である。具体的には、下記数1に示すように、学習変換関数を定義する式は、学習画素値ベクトルpと、学習元解像度パラメータマップにおける該学習画素値ベクトルpに係る画素に設定された一部の学習変換パラメータを要素とする学習変換行列Wθと、の積の項と、学習元解像度パラメータマップにおける該学習画素値ベクトルpに係る画素に設定された他の一部の学習変換パラメータを要素とする学習変換ベクトルbθの項と、の和で表される。より具体的には、学習変換行列Wθは9個の学習変換パラメータを要素とし、学習変換ベクトルbθは3個の学習変換パラメータを要素とする。なお、本実施形態では、学習変換行列は対称行列である。学習調和画像取得部314は、学習変換関数により、同一の色空間内において学習画素値ベクトルを学習調和画素値ベクトルへと写像しているということもできる。
【0055】
【0056】
上記数1において、I^i、jは学習調和画像におけるi行j列目の学習調和画素の色を示す学習調和画素値ベクトル、θnは学習元解像度パラメータマップにおけるi行j列目の画素に設定された学習変換パラメータ(n=1,2,・・・12)、pR,pG,pBはそれぞれ学習合成画像におけるi行j列目の学習対象画素のRGBそれぞれの値である。
【0057】
[学習部]
学習部316は、学習調和画像と、正解調和画像と、に基づいてパラメータマップ推定モデルMの学習を行う。具体的には、学習部316は、正解調和画像に対する学習調和画像の誤差が小さくなるようにパラメータマップ推定モデルMの学習を行う。
【0058】
本実施形態では、下記数2に示すように、正解調和画像に対する学習調和画像の誤差である損失関数Lは、学習マスク画像に基づいて正規化されている。
【0059】
【0060】
上記数2において、I^i、jは学習調和画像におけるi行j列目の画素の画素値、Ii、jは正解調和画像におけるi行j列目の画素の画素値、Aminは所定の閾値、Mi,jは学習マスク画像におけるi行j列目の画素の画素値である。数2の分母は、Amin及びΣi,jMi,jのうち最も大きい値を示す。
【0061】
学習部316は更に、学習調和画像と、正解調和画像と、の類似度が大きくなるとともに、学習調和画像と、正解調和画像とは異なる不正解調和画像(第1不正解色調整画像)と、の類似度が小さくなるようにパラメータマップ推定モデルMの学習を行う。不正解調和画像は、正解調和画像における学習対象画素の画素値を変換することにより得られた画像である。
【0062】
また、学習部316は、学習調和画像における学習前景画像に由来する領域と学習背景画像に由来する領域との一致度と、正解調和画像における前記一致度と、の差が小さくなるとともに、学習調和画像における前記一致度と、不正解調和画像における前記一致度と、の差が大きくなるようにパラメータマップ推定モデルMの学習を行う。
【0063】
具体的には、学習部316は、下記数3に示す対照損失関数LCRが小さくなるようにパラメータマップ推定モデルMの学習を行う。
【0064】
【0065】
上記数3において、D(・)はL1ノルムを示す。f,f+,f-はそれぞれ、学習調和画像、正解調和画像、不正解調和画像それぞれにおける学習前景画像に由来する領域の特徴ベクトルである。f,f+,f-はそれぞれ、学習済みの特徴抽出器を用いて、学習調和画像、正解調和画像及び不正解調和画像のそれぞれに基づいて取得されてよい。c,c+,c-はそれぞれ、学習調和画像、正解調和画像、不正解調和画像それぞれにおける学習前景画像に由来する領域と学習背景画像に由来する領域との一致度である。一致度c,c+,c-はそれぞれ、下記数4の式で算出される。
【0066】
【0067】
上記数4において、gram(・)はグラム行列を示す。b+は正解調和画像における学習背景画像に由来する領域の特徴ベクトルである。b+は、学習済みの特徴抽出器を用いて、正解調和画像に基づいて取得されてよい。
【0068】
学習部316は更に、学習低解像度パラメータマップにおいて、ある画素に設定された少なくとも一の学習低解像度パラメータと、該画素に隣り合う画素に設定された少なくとも一の学習低解像度パラメータと、の類似度が大きくなるようにパラメータマップ推定モデルMの学習を行う。
【0069】
具体的には、学習部316は、下記数5に示すスムーシング損失関数Lsmoothが小さくなるようにパラメータマップ推定モデルMの学習を行う。
【0070】
【0071】
上記数5において、||∇Θk||2は、学習低解像度パラメータマップにおけるk番目の画素に設定された学習低解像度パラメータの勾配の大きさを示す。
【0072】
[3-2.画像調和システムとしての機能]
図3Bに示すように、画像処理システム1では更に、画像データ記憶部318、合成画像取得部320、マスク画像取得部322、低解像度合成画像取得部324、低解像度マスク画像取得部326、モデル記憶部308、低解像度パラメータマップ取得部328、元解像度パラメータマップ取得部330及び調和画像取得部332が実現される。画像データ記憶部318及びモデル記憶部308は、記憶部12を主として実現される。合成画像取得部320、マスク画像取得部322、低解像度合成画像取得部324、低解像度マスク画像取得部326、低解像度パラメータマップ取得部328、元解像度パラメータマップ取得部330及び調和画像取得部332は、制御部10を主として実現される。
【0073】
[画像データ記憶部]
画像データ記憶部318は、合成画像200及びマスク画像202を記憶する。合成画像200及びマスク画像202の詳細については[2-1.合成画像及びマスク画像の取得]において述べた通りであるので、説明を省略する。
【0074】
[合成画像取得部]
合成画像取得部320(第1画像取得手段)は、合成画像200(第1画像)を取得する(
図2A)。本実施形態では、合成画像取得部320は、画像データ記憶部318に記憶された合成画像200を取得するが、合成画像200は他の装置又は情報記憶媒体に記録されていてもよく、合成画像取得部320は、該装置又は情報記憶媒体から合成画像200を取得してもよい。
【0075】
[マスク画像取得部]
マスク画像取得部322(第1マスク画像取得手段)は、マスク画像202を(第1マスク画像)取得する(
図2A)。本実施形態では、マスク画像取得部322は、画像データ記憶部318に記憶された合成画像200を取得するが、マスク画像202は他の装置又は情報記憶媒体に記録されていてもよく、マスク画像取得部322は、該装置又は情報記憶媒体からマスク画像202を取得してもよい。
【0076】
[低解像度合成画像取得部]
低解像度合成画像取得部324(第2画像取得手段)は、合成画像200に基づいて、第2解像度を有する低解像度合成画像200d(第2画像)を取得する(
図2A)。具体的には、低解像度合成画像取得部324は、合成画像200を低解像度化(ダウンサンプリング)することにより、低解像度合成画像200dを取得する。低解像度化に伴う補間の方法については学習低解像度合成画像の場合と同様のため、説明を省略する。
【0077】
[低解像度マスク画像取得部]
低解像度マスク画像取得部326(第2マスク画像取得手段)は、マスク画像202に基づいて、第2解像度を有する低解像度マスク画像202d(第2マスク画像)を取得する(
図2A)。具体的には、低解像度マスク画像取得部326は、マスク画像202を低解像度化(ダウンサンプリング)することにより、低解像度マスク画像202dを取得する。低解像度化に伴う補間の方法については学習低解像度マスク画像の場合と同様のため、説明を省略する。
【0078】
[低解像度パラメータマップ取得部]
低解像度パラメータマップ取得部328(第2パラメータマップ取得手段)は、合成画像200及びマスク画像202をパラメータマップ推定モデルMに入力することにより、第2解像度を有する低解像度パラメータマップ204d(第2パラメータマップ)を取得する(
図2A参照)。ここで低解像度パラメータマップ取得部328が用いるパラメータマップ推定モデルMのパラメータは、学習部316の学習により調整済みである。低解像度パラメータマップ204dの詳細については、[2-3.低解像度パラメータマップの取得]において述べた通りであるので、説明を省略する。
【0079】
[元解像度パラメータマップ取得部]
元解像度パラメータマップ取得部330(第1パラメータマップ取得手段)は、低解像度パラメータマップ204dに基づいて、元解像度パラメータマップ204(第1パラメータマップ)を取得する(
図2A参照)。具体的には、元解像度パラメータマップ取得部330は、低解像度パラメータマップ204dを高解像度化(アップサンプリング)することにより、元解像度パラメータマップ204を取得する。低解像度化に伴う補間の方法については学習元解像度パラメータマップの場合と同様のため、説明を省略する。
【0080】
[調和画像取得部]
調和画像取得部332(色調整画像取得手段)は、変換関数の出力である調和画素値ベクトル(色調整画素値ベクトル)を算出し、該調和画素値ベクトルが示す色を有する調和画素(色調整画素)を含む調和画像206(色調整画像)を取得する(
図2B参照)。
【0081】
変換関数は、画素値ベクトルと、変換行列と、の積の項を含む式で定義される。画素値ベクトルは、合成画像200の複数の対象画素それぞれの色を示す。本実施形態では、画素値ベクトルは、該対象画素のRGB値のそれぞれを要素とする3次元のベクトルである。変換行列は、元解像度パラメータマップ204おいて該画素に設定された複数の変換パラメータを要素とする。
【0082】
変換関数は、画素値ベクトルと、変換行列と、の積を含むアフィン変換である。具体的には、変換関数を定義する式は、画素値ベクトルと、元解像度パラメータマップ204における該画素値ベクトルに係る画素に設定された一部の変換パラメータを要素とする変換行列と、の積の項と、元解像度パラメータマップ204における該画素値ベクトルに係る画素に設定された他の一部の変換パラメータを要素とする変換ベクトルの項と、の和で表される。具体的な式については、学習変換関数の場合と同様であるので、説明を省略する(数1参照)。すなわち、変換関数を定義する式は、学習変換関数を定義する式と同じ形式であり、パラメータのみが異なる。調和画像取得部332は、変換関数により、同一の色空間内において画素値ベクトルを調和画素値ベクトルへと写像しているということもできる。
【0083】
[4.画像処理システムで実行される処理]
図5A及び
図5Bは、画像処理システム1で実行される処理の一例を示すフロー図である。
図5Aのフロー図は画像処理システム1で実行される処理のうち、学習に係る処理を示す。また、
図5Bのフロー図は画像処理システム1で実現される機能のうち、画像調和に係る処理を示す。
図5A及び
図5Bに示す処理は、制御部10が、記憶部12に記憶されたプログラムに従って動作することによって実行される。
【0084】
[4-1.学習に係る処理]
図5Aに示すように、制御部10は、学習合成画像と学習マスク画像と正解調和画像とを含む訓練データを取得する(S500a)。制御部10は、学習合成画像に基づいて学習低解像度合成画像を取得するとともに(S502a)、学習マスク画像に基づいて学習低解像度マスク画像を取得する(S504a)。
【0085】
制御部10は、学習低解像度合成画像及び学習低解像度マスク画像をパラメータマップ推定モデルMに入力することにより、学習低解像度パラメータマップを取得する(S506a)。次いで制御部10は、学習低解像度パラメータマップに基づいて、学習元解像度パラメータマップを取得する(S508a)。
【0086】
制御部10は、学習変換関数の出力である学習調和画素値ベクトルを算出し、該学習調和画素値ベクトルが示す色を有する学習調和画素を含む学習調和画像を取得する(S510a)。
【0087】
制御部10は、学習調和画像と、正解調和画像と、に基づいてパラメータマップ推定モデルMの学習を行う(S512a)。具体的には、制御部10は、前述の損失関数L、対照損失関数LCR及びスムーシング損失関数Lsmoothの値がそれぞれ小さくなるようにパラメータマップ推定モデルMの学習を行う。制御部10は、学習途中で上記各損失関数の値が十分小さくなった場合には、その時点で学習を終了する。制御部10は、当該値が十分小さくならなくても、所定回数の学習を繰り返した場合には、学習を終了してもよい。学習の方法としては、公知の手法が利用可能であり、例えば、誤差逆伝播、AdamやRMSProp等が利用されてよい。
【0088】
制御部10は、学習を終了しないと判断した場合(S514a;N)、S500~S512の処理を繰り返す。制御部10は、学習を終了すると判断した場合(S514a;Y)、本処理を終了する。
【0089】
[4-2.画像調和に係る処理]
図5Bに示すように、制御部10は、合成画像200を取得するとともに(S500b)、マスク画像202を取得する(S502b)。制御部10は、合成画像200に基づいて低解像度合成画像200dを取得するとともに(S504b)、学習マスク画像に基づいて低解像度マスク画像202dを取得する(S506b)。
【0090】
制御部10は、低解像度合成画像200d及び低解像度マスク画像202dをパラメータマップ推定モデルMに入力することにより、低解像度パラメータマップ204dを取得する(S508b)。制御部10は、低解像度パラメータマップ204dに基づいて、元解像度パラメータマップ204を取得する(S510b)。制御部10は、変換関数の出力である調和画素値ベクトルを算出し、該調和画素値ベクトルが示す色を有する調和画素を含む調和画像206を取得し(S512b)、本処理を終了する。
【0091】
[5.まとめ]
以上に説明した本実施形態に係る画像処理システム1によれば、従来の画像調和に用いられていた、合成画像及びマスク画像が入力され、目的とする調和画像を出力する機械学習モデルの使用を回避することができる。その結果、画像調和にかかる計算コストを削減できるので、高解像度の合成画像の画像調和を低い計算コストで行うことができる。
【0092】
また、本実施形態に係る画像処理システム1では、合成画像200の複数の対象画素それぞれの色を示す画素値ベクトルと、元解像度パラメータマップ204おける該対象画素に設定された複数の変換パラメータを要素とする変換行列と、の積の項を含む式で定義される変換関数の出力である調和画素値ベクトルを算出し、該調和画素値ベクトルが示す色を有する調和画素を含む調和画像206を取得するようにした。すなわち、画像処理システム1では、一種類のパラメータセットに基づいて、合成画像200の該対象画素の画素値を、調和画像206における該対象画素に対応する画素(調和画素)の画素値へと直接変換するので、学習及び画像調和の過程が簡素化され、その結果、高い効率で学習及び画像調和を行うことができる。
【0093】
また、本実施形態に係る画像処理システム1では、変換関数は、画素値ベクトルと、変換行列と、の積を含むアフィン変換であり、該変換行列は対称行列である。このように、変換関数を、対称行列である変換行列を含むアフィン変換とすることで、
図6に示すように、より学習及び画像調和の精度が向上する。
【0094】
また、本実施形態に係る画像処理システム1では、正解調和画像に対する学習調和画像の誤差は、学習マスク画像に基づいて正規化されている(数2参照)。これにより、誤差の値が、前景画像に由来する領域(対象画素が占める領域)の大きさに依存しなくなるので、安定した学習が可能となる。
【0095】
また、本実施形態に係る画像処理システム1では、学習調和画像と、正解調和画像と、の類似度が大きくなるとともに、学習調和画像と、正解調和画像とは異なる不正解調和画像と、の類似度が小さくなるようにパラメータマップ推定モデルMの学習を行うので、より学習の精度が向上する。
【0096】
また、本実施形態に係る画像処理システム1では、学習低解像度パラメータマップにおいて、ある画素に設定された少なくとも一の学習低解像度パラメータと、該画素に隣り合う画素に設定された少なくとも一の学習低解像度パラメータと、の類似度が大きくなるようにパラメータマップ推定モデルMの学習を行うので、更に学習の精度が向上する。
【0097】
[6.変形例]
なお、本発明は上述の実施形態に限定されるものではない。また、上記の具体的な文字列や数値及び図面中の具体的な文字列や数値は例示であり、これらの文字列や数値には限定されない。
【0098】
[6-1.変形例1]
本実施形態では、学習画素値ベクトルが、該学習画素値ベクトルに係る学習対象画素のRGB値のそれぞれを要素とする3次元のベクトルである場合を説明したが、学習画素値ベクトルは、該学習画素値ベクトルに係る対象画素のRGB値に基づく4次元以上のベクトルであってもよい。例えば、学習画素値ベクトルは、該学習画素値ベクトルに係る画素値の3成分のうち、少なくともいずれか2成分同士の積を要素として含んでもよい。また、学習画素値ベクトルは、該学習画素値ベクトルに係る画素値の少なくとも1成分の自乗を要素として含んでもよい。下記数6に、変形例1に係る学習画素値ベクトルpを示す。
【0099】
【0100】
本変形例に係る学習変換関数を定義する式は、下記数7に示すように、上記学習画素値ベクトルと、学習変換行列と、の積で表される。本変形例に係る学習変換関数は線形変換である。数7に示すように、本変形例に係る学習変換行列Wθは27個の学習変換パラメータを要素とする。よって、本変形例では、学習低解像度パラメータマップの各画素には27個の低解像度変換パラメータが、学習元解像度パラメータマップの各画素には27個の変換パラメータがそれぞれ設定されている。なお、本変形例における合成画像200に係る画素値ベクトル、変換関数、低解像度パラメータマップ204d及び元解像度パラメータマップ204の詳細は、上記の学習画素値ベクトル、学習変換関数、学習低解像度パラメータマップ及び学習元解像度パラメータマップと同様である。本変形例によれば、変換パラメータの数が増えるので、より高い精度での学習及び画像調和が可能となる。
【0101】
【0102】
[6-2.変形例2]
本実施形態では、パラメータマップ推定モデルMとして、CNNを用いる場合を説明したが、パラメータマップ推定モデルMは、CNN以外の機械学習モデルであってもよい。例えば、パラメータマップ推定モデルMは、トランスフォーマーモデルであってもよい。トランスフォーマーモデルは、いわゆるVision Transformerと呼ばれる、画像処理専用のトランスフォーマーモデルであってよい。
【0103】
具体的には、
図7に示すように、本変形例に係るパラメータマップ推定モデルMは、パッチ埋め込み部700、トランスフォーマーエンコーダ部702、転置畳み込み部704、活性化部706及び次元調節部708を含む。パッチ埋め込み部700、トランスフォーマーエンコーダ部702、転置畳み込み部704及び活性化部706の具体的な構成としては、例えば参考文献1(Alexey Dosovitskiy, et al. An image is worth 16x16 words: Transformers for image recognition at scale. arXiv preprint arXiv:2010.11929, 2020)に記載されたものが利用可能である。次元調節部708の詳細は、次元調節部404と同様であるため説明を省略する。
【0104】
[6-3.その他の変形例]
本実施形態では、画像処理システム1がパラメータマップ推定モデルMの学習を行う場合を説明したが、パラメータマップ推定モデルMの学習は他のシステムで行われてもよい。
【0105】
また、本実施形態では、画像処理システム1の元解像度パラメータマップ取得部330が、低解像度パラメータマップ204dに基づいて、元解像度パラメータマップ204を取得する場合を説明したが、画像処理システム1は必ずしも元解像度パラメータマップ取得部330を備えなくてもよい。すなわち、変換関数に補間に係る演算が含まれている場合には、低解像度パラメータマップ204dの各画素に設定された低解像度パラメータが、変換関数におけるパラメータとして用いられてよい。この場合、調和画像取得部332の処理において、元解像度パラメータマップ204が取得されているということができる。これは、学習元解像度パラメータマップ取得部312についても同様である。
【0106】
また、本実施形態では、合成画像200の画素のうち、対象画素の画素値のみが調和画像取得部332の処理に供されていたが、合成画像200の画素のうち、対象画素以外の画素の画素値も調和画像取得部332の処理に供されてもよい。例えば、合成画像200における、前景画像に由来する領域の周囲の画素の画素値も、調和画像取得部332の処理に供されてよい。これにより、色変換後において、前景画像に由来する領域の色と、該領域の周囲の色と、の親和性がより向上する場合がある。
【0107】
要は、調和画像取得部332は、合成画像200の画素のうち少なくとも一以上の対象画素である一以上の調整画素それぞれの色を示す画素値ベクトルと、変換行列と、の積の項を含む式で定義される変換関数の出力である調和画素値ベクトルを算出し、該調和画素値ベクトルが示す色を有する調和画素を含む調和画像206を取得するものであればよい。これは、学習調和画像取得部314についても同様である。
【0108】
また、本実施形態では、対象画素が複数である場合を説明したが、対象画素は一以上であればよい。
【0109】
また、本実施形態では、マスク画像202が二値画像である場合を説明したが、この例に限られない。例えば、合成画像200が、複数の前景画像と一の背景画像とを合成した画像である場合、各前景画像に由来する領域ごとに異なる値が設定されてよい。要は、マスク画像202は、合成画像200における色調整の対象となる一以上の対象画素を指定するものであればよい。これは学習マスク画像についても同様である。
【0110】
また、本実施形態では、画像処理システム1が画像調和に用いられる場合を説明したが、本発明は、機械学習モデルを用いた画像の色調整に係る技術一般に応用可能である。
【0111】
[7.付記]
(1)
第1解像度を有する第1画像を取得する第1画像取得手段と、
前記第1解像度を有し、前記第1画像における色調整の対象となる一以上の対象画素を指定する第1マスク画像を取得する第1マスク画像取得手段と、
前記第1画像に基づいて、前記第1解像度より低い第2解像度を有する第2画像を取得する第2画像取得手段と、
前記第1マスク画像に基づいて、前記第2解像度を有する第2マスク画像を取得する第2マスク画像取得手段と、
前記第2画像及び前記第2マスク画像をパラメータマップ推定モデルに入力することにより、前記第2解像度を有する第2パラメータマップを取得する第2パラメータマップ取得手段と、
前記第1画像の画素のうち少なくとも前記一以上の対象画素である一以上の調整画素それぞれの色を示す画素値ベクトルと、変換行列と、の積の項を含む式で定義される変換関数の出力である色調整画素値ベクトルを算出し、該色調整画素値ベクトルが示す色を有する色調整画素を含む色調整画像を取得する色調整画像取得手段であって、
前記変換行列は、高解像度化された前記第2パラメータマップであって前記第1解像度を有する第1パラメータマップにおける、該調整画素に設定された複数の変換パラメータを要素とする、色調整画像取得手段と、
を有し、
前記パラメータマップ推定モデルは、
いずれも前記第1解像度を有する、第1学習画像と、前記第1学習画像における色調整の対象となる一以上の学習対象画素を指定する第1学習マスク画像と、第1正解色調整画像と、を含む訓練データを用いて、前記第1正解色調整画像に対する第1学習色調整画像の誤差が小さくなるように学習され、
前記第1学習色調整画像は、
前記第1学習画像の画素のうち少なくとも前記一以上の学習対象画素である学習調整画素それぞれの色を示す学習画素値ベクトルと、学習変換行列と、の積の項を含むとともに前記変換関数と同じ形式の式で定義される学習変換関数の出力である、学習色調整画素値ベクトルが示す色を有する学習色調整画素を含み、
前記学習変換行列は、前記第1解像度を有する第1学習パラメータマップにおける、該学習調整画素に設定された複数の学習変換パラメータを要素とし、
前記第1学習パラメータマップは、
低解像度化された前記第1学習画像であって前記第2解像度を有する第2学習画像と、低解像度化された前記第1学習マスク画像であって前記第2解像度を有する第2学習マスク画像と、を前記パラメータマップ推定モデルに入力した際の出力である第2学習パラメータマップが高解像度化されたものである、
画像処理システム。
(2)
前記第1画像取得手段は、前景画像と背景画像とが合成された画像を前記第1画像として取得し、
前記第1マスク画像取得手段は、前記合成画像における前記前景画像に由来する一以上の画素を前記一以上の対象画素として指定する画像を、前記第1マスク画像として取得する、
(1)に記載の画像処理システム。
(3)
前記第2パラメータマップに基づいて、前記第1パラメータマップを取得する第1パラメータマップ取得手段を更に有する、
(1)又は(2)に記載の画像処理システム。
(4)
前記変換行列は対称行列であり、
前記変換関数は、前記画素値ベクトルと、前記変換行列と、の積を含むアフィン変換である、
(1)から(3)のいずれかに記載の画像処理システム
(5)
前記画素値ベクトルは、該画素値ベクトルに係る画素値の3成分のうち、少なくともいずれか2成分同士の積を要素として含む、
(1)から(4)のいずれかに記載の画像処理システム。
(6)
前記画素値ベクトルは、該画素値ベクトルに係る画素値の少なくとも1成分の自乗を要素として含む、
(1)から(5)のいずれかに記載の画像処理システム。
(7)
前記パラメータマップ推定モデルは、トランスフォーマーモデルを含む、
(1)から(6)のいずれかに記載の画像処理システム。
(8)
前記誤差は、前記第1学習マスク画像に基づいて正規化されたものである、
(1)から(7)のいずれかに記載の画像処理システム。
(9)
前記パラメータマップ推定モデルは更に、前記第1学習色調整画像と、前記第1正解色調整画像と、の類似度が大きくなるとともに、前記第1学習色調整画像と、前記第1正解色調整画像とは異なる第1不正解色調整画像と、の類似度が小さくなるように学習された機械学習モデルである、
(8)に記載の画像処理システム。
(10)
前記第1不正解色調整画像は、前記第1正解色調整画像における前記学習対象画素の画素値を変換することにより得られた画像である、
(9)に記載の画像処理システム。
(11)
前記パラメータマップ推定モデルは更に、前記第2学習パラメータマップにおいて、ある画素に設定された少なくとも一の第2学習変換パラメータと、該画素に隣り合う画素に設定された少なくとも一の第2学習変換パラメータと、の類似度が大きくなるように学習された機械学習モデルである、
(9)に記載の画像処理システム。
【符号の説明】
【0112】
1 画像処理システム、10 制御部、12 記憶部、14 通信部、16 操作部、18 出力部、200 合成画像、200d低解像度合成画像、202 マスク画像、202d低解像度マスク画像、204 元解像度パラメータマップ、204d低解像度パラメータマップ、206 調和画像、300 訓練データ記憶部、302 訓練データ取得部、304 学習低解像度合成画像取得部、306 学習低解像度マスク画像取得部、308 モデル記憶部、310 学習低解像度パラメータマップ取得部、312 学習元解像度パラメータマップ取得部、314 学習調和画像取得部、316 学習部、318 画像データ記憶部、320 合成画像取得部、322 マスク画像取得部、324 低解像度合成画像取得部、326 低解像度マスク画像取得部、328 低解像度パラメータマップ取得部、330 元解像度パラメータマップ取得部、332 調和画像取得部、M パラメータマップ推定モデル、400 エンコーダ部、402 デコーダ部、404 次元調節部、700 パッチ埋め込み部、702 トランスフォーマーエンコーダ部、704 転置畳み込み部、706 活性化部、708 次元調節部。