(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-01-17
(45)【発行日】2022-01-26
(54)【発明の名称】画像補正装置及び画像補正方法
(51)【国際特許分類】
G06T 7/00 20170101AFI20220119BHJP
G06T 5/50 20060101ALI20220119BHJP
【FI】
G06T7/00 350C
G06T5/50
(21)【出願番号】P 2018130026
(22)【出願日】2018-07-09
【審査請求日】2020-06-26
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100166006
【氏名又は名称】泉 通博
(74)【代理人】
【識別番号】100124084
【氏名又は名称】黒岩 久人
(74)【代理人】
【識別番号】100153280
【氏名又は名称】寺川 賢祐
(72)【発明者】
【氏名】石川 彰夫
(72)【発明者】
【氏名】服部 元
【審査官】佐藤 実
(56)【参考文献】
【文献】特開2009-049759(JP,A)
【文献】特開2005-056387(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
G06T 5/50
(57)【特許請求の範囲】
【請求項1】
第1撮像画像と、前記第1撮像画像とは異なる撮像画像である第2撮像画像と、を取得する画像取得部と、
前記第1撮像画像及び前記第2撮像画像のそれぞれに、入力された画像に基づいて当該画像に含まれる被写体の種別を出力可能な機械学習モデルに含まれる
処理層であって、それぞれ当該画像に含まれる一以上の画素を示す複数のユニットをそれぞれ含む複数の処理層を伝搬させる伝搬制御部と、
前記複数の処理層から選択した後段処理層、及び前記後段処理層の直前の処理層である前段処理層の両方の処理層において共通に活性化している
前記ユニットを示す画像出力であって前記第1撮像画像に基づいて前記後段処理層及び前記前段処理層から出力された
前記画像出力である一以上の第1撮像画像出力と前記第2撮像画像に基づいて前記後段処理層及び前記前段処理層から出力された
前記画像出力である一以上の第2撮像画像出力とを抽出する抽出部と、
前記一以上の第1撮像画像出力
と、前記一以上の第2撮像画像出力とに基づいて
、前記第1撮像画像に含まれる特徴点である一以上の第1撮像画像特徴点
と、前記第2撮像画像に含まれる特徴点であって前記第1撮像画像特徴点と対応関係にある前記特徴点である一以上の第2撮像画像特徴点
とを検出する特徴点検出部と、
前記一以上の第1撮像画像特徴点に対応する画素の第1画素値と、前記一以上の第1撮像画像特徴点それぞれに対応する前記一以上の第2撮像画像特徴点に対応する画素の第2画素値とが同じになるように前記第2画素値を補正し、補正した前記第2画素値に基づいて、前記第2撮像画像における、補正した画素以外の画素である中間画素の画素値を補正する補正部と、
を有する画像補正装置。
【請求項2】
前記補正部は、前記一以上の第1撮像画像特徴点に対応する画素以外の画素の画素値と、前記一以上の第1撮像画像特徴点それぞれに対応する前記一以上の第2撮像画像特徴点に対応する画素以外の画素の画素値との差が補正前よりも小さくなるように前記中間画素の画素値を補正する、
請求項1記載の画像補正装置。
【請求項3】
前記補正部は、前記第1撮像画像に含まれる各画素の画素値それぞれの分布傾向と前記第2撮像画像に含まれる各画素の画素値それぞれの分布傾向との関係にさらに基づいて、前記中間画素の画素値を補正する、
請求項1又は2に記載の画像補正装置。
【請求項4】
前記補正部は、前記第1撮像画像と前記第2撮像画像との類似度が補正前よりも大きくなるように前記中間画素の画素値を補正する、
請求項1から3のいずれか一項に記載の画像補正装置。
【請求項5】
前記補正部は、前記第1画素値と前記第2画素値とが同じになるように前記第1画素値をさらに補正し、補正した前記第1画素値と前記第2画素値とに基づいて、前記第1撮像画像における、補正した画素以外の画素である中間画素の画素値をさらに補正する、
請求項1から4のいずれか一項に記載の画像補正装置。
【請求項6】
前記抽出部は、
前記第1撮像画像が前記複数の処理層の一部である前段処理層及び後段処理層の順に伝搬したことにより前記後段処理層から出力された
前記画像出力である複数の後段第1撮像画像出力、及び前記第2撮像画像が前段処理層及び後段処理層の順に伝搬したことにより前記後段処理層から出力された
前記画像出力である複数の後段第2撮像画像出力から、共通に活性化している一以上の後段第1撮像画像出力及び一以上の後段第2撮像画像出力を抽出する後段抽出部と、
前記一以上の後段第1撮像画像出力及び前記一以上の後段第2撮像画像出力を活性化させる要因となった前記前段処理層から出力された
前記画像出力である複数の前段第1撮像画像出力、及び前記前段処理層から出力された
前記画像出力である複数の前段第2撮像画像出力のうち、共通に活性化している一以上の前段第1撮像画像出力及び一以上の前段第2撮像画像出力を抽出する前段抽出部と、
を有する、
請求項1から5のいずれか一項に記載の画像補正装置。
【請求項7】
前記前段抽出部は、前記複数の前段第1撮像画像出力及び前記複数の前段第2撮像画像出力のうち、活性化している大きさに基づいて、前記一以上の前段第1撮像画像出力及び前記一以上の前段第2撮像画像出力を抽出する、
請求項6に記載の画像補正装置。
【請求項8】
前記機械学習モデルは、畳み込みニューラルネットワークを含み、
前記後段処理層は、出力層、全結合層、正規化層、プーリング層、及び畳み込み層のうちのいずれかの層である、
請求項6又は7に記載の画像補正装置。
【請求項9】
前記前段処理層は、全結合層、正規化層、プーリング層、畳み込み層及び入力層のうちのいずれかの層である、
請求項8に記載の画像補正装置。
【請求項10】
前記抽出部は、前記複数の処理層のうち、最後尾の処理層である最後尾層を後段処理層として選択した場合において、前記最後尾層において共通に活性化している前記一以上の第1撮像画像出力及び前記一以上の第2撮像画像出力がない場合、前記最後尾層より前の処理層において共通に活性化している前記一以上の第1撮像画像出力及び前記一以上の第2撮像画像出力を抽出する、
請求項1から9のいずれか一項に記載の画像補正装置。
【請求項11】
前記特徴点検出部が検出した前記一以上の第1撮像画像特徴点及び前記一以上の第2撮像画像特徴点から、相互の対応関係に基づいて一部の第1撮像画像特徴点及び一部の第2撮像画像特徴点を選択する選択部をさらに有し、
前記補正部は、前記一部の第1撮像画像特徴点に対応する画素の第1画素値と、前記一以上の第1撮像画像特徴点それぞれに対応する前記一部の第2撮像画像特徴点に対応する画素の第2画素値とが同じになるように前記第2画素値を補正する、
請求項1から10のいずれか一項に記載の画像補正装置。
【請求項12】
前記複数の処理層のうち、前記後段処理層として用いる処理層を選択する指示を受け付ける指示受付部をさらに有し、
前記抽出部は、前記指示受付部が受け付けた前記指示が示す前記処理層を、前記後段処理層として使用する、
請求項1から11のいずれか一項に記載の画像補正装置。
【請求項13】
前記抽出部は、前記複数の処理層のうち一つの層を前記後段処理層として選択して前記一以上の第1撮像画像出力及び前記一以上の第2撮像画像出力を抽出した後に、前記前段処理層として選択した処理層を前記後段処理層として選択して、別の前記一以上の第1撮像画像出力及び前記一以上の第2撮像画像出力を抽出する、
請求項1から12のいずれか一項に記載の画像補正装置。
【請求項14】
第1撮像画像と、前記第1撮像画像とは異なる撮像画像である第2撮像画像と、を取得するステップと、
前記第1撮像画像及び前記第2撮像画像のそれぞれに、入力された画像に基づいて当該画像に含まれる被写体の種別を出力可能な機械学習モデルに含まれる
処理層であって、それぞれ当該画像に含まれる一以上の画素を示す複数のユニットをそれぞれ含む複数の処理層を伝搬させるステップと、
前記複数の処理層から選択した後段処理層、及び前記後段処理層の直前の処理層である前段処理層の両方の処理層において共通に活性化している
前記ユニットを示す画像出力であって前記第1撮像画像に基づいて前記後段処理層及び前記前段処理層から出力された
前記画像出力である一以上の第1撮像画像出力と前記第2撮像画像に基づいて前記後段処理層及び前記前段処理層から出力された
前記画像出力である一以上の第2撮像画像出力とを抽出するステップと、
前記一以上の第1撮像画像出力
と、前記一以上の第2撮像画像出力とに基づいて
、前記第1撮像画像に含まれる特徴点である一以上の第1撮像画像特徴点
と、前記第2撮像画像に含まれる特徴点であって前記第1撮像画像特徴点と対応関係にある前記特徴点である一以上の第2撮像画像特徴点
とを検出するステップと、
前記一以上の第1撮像画像特徴点に対応する画素の第1画素値と、前記一以上の第1撮像画像特徴点それぞれに対応する前記一以上の第2撮像画像特徴点に対応する画素の第2画素値とが同じになるように前記第2画素値を補正するステップと、
前記補正するステップにおいて補正した前記第2画素値に基づいて、前記第2撮像画像における、補正した画素以外の画素である中間画素の画素値を補正するステップと、
を有する画像補正方法。
【請求項15】
前記抽出するステップは、
前記第1撮像画像が前記複数の処理層の一部である前段処理層及び後段処理層の順に伝搬したことにより前記後段処理層から出力された
前記画像出力である複数の後段第1撮像画像出力、及び前記第2撮像画像が前段処理層及び後段処理層の順に伝搬したことにより前記後段処理層から出力された
前記画像出力である複数の後段第2撮像画像出力から、共通に活性化している一以上の後段第1撮像画像出力及び一以上の後段第2撮像画像出力を抽出する前段抽出ステップと、
前記一以上の後段第1撮像画像出力及び前記一以上の後段第2撮像画像出力を活性化させる要因となった前記前段処理層から出力された
前記画像出力である複数の前段第1撮像画像出力、及び前記前段処理層から出力された
前記画像出力である複数の前段第2撮像画像出力のうち、共通に活性化している一以上の前段第1撮像画像出力及び一以上の前段第2撮像画像出力を抽出する後段抽出ステップと、
を有する、請求項14に記載の画像補正方法。
【請求項16】
前記前段抽出ステップを実行した後に、前記一以上の前段第1撮像画像出力及び前記一以上の前段第2撮像画像出力を、前記複数の後段第1撮像画像出力及び前記複数の後段第2撮像画像出力として、前記後段抽出ステップを実行する、
請求項15に記載の画像補正方法。
【請求項17】
前記複数の処理層のそれぞれに対して、前記後段抽出ステップ及び前記前段抽出ステップを実行する、
請求項15又は16に記載の画像補正方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像の画素値を補正する画像補正装置及び画像補正方法に関する。
【背景技術】
【0002】
従来、同一の被写体を含み、色彩又は輝度がそれぞれ異なる複数の画像に対して、色彩及び輝度が同じになるように補正する装置が知られている。特許文献1には、参照画像及び対象画像の対応する画素を探索し、参照画像の画素に基づいて、参照画像の画素に対応する対象画像に含まれる画素の画素値を補正する技術が記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1のような技術を用いることにより、参照画像及び対象画像それぞれの色彩及び輝度が同じになるように画素値を補正することができる。しかしながら、複数の画像間において異なる被写体を同一の被写体であるとして、対応しない画素を誤って抽出してしまう可能性がある。この場合、複数の画像それぞれの色彩及び輝度が同等レベルになるように画素値を補正することができないという問題があった。
【0005】
そこで、本発明はこれらの点に鑑みてなされたものであり、複数の画像それぞれの色彩及び輝度が同等レベルになるように画素値を補正する精度を向上させることができる画像補正装置及び画像補正方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の第1の態様に係る画像補正装置は、第1撮像画像と、前記第1撮像画像とは異なる撮像画像である第2撮像画像と、を取得する画像取得部と、前記第1撮像画像及び前記第2撮像画像のそれぞれに、入力された画像に基づいて当該画像に含まれる被写体の種別を出力可能な機械学習モデルに含まれる複数の処理層を伝搬させる伝搬制御部と、前記複数の処理層から選択した後段処理層、及び前記後段処理層の直前の処理層である前段処理層の両方の処理層において共通に活性化している、前記第1撮像画像に基づいて前記後段処理層及び前記前段処理層から出力された一以上の第1撮像画像出力と前記第2撮像画像に基づいて前記後段処理層及び前記前段処理層から出力された一以上の第2撮像画像出力とを抽出する抽出部と、前記一以上の第1撮像画像出力に基づいて一以上の第1撮像画像特徴点を検出し、かつ前記一以上の第2撮像画像出力に基づいて一以上の第2撮像画像特徴点を検出する特徴点検出部と、前記一以上の第1撮像画像特徴点に対応する画素の第1画素値と、前記一以上の第1撮像画像特徴点それぞれに対応する前記一以上の第2撮像画像特徴点に対応する画素の第2画素値とが同じになるように前記第2画素値を補正し、補正した前記第2画素値に基づいて、前記第2撮像画像における、補正した画素以外の画素である中間画素の画素値を補正する補正部と、を有する。
【0007】
前記補正部は、前記一以上の第1撮像画像特徴点に対応する画素以外の画素の画素値と、前記一以上の第1撮像画像特徴点それぞれに対応する前記一以上の第2撮像画像特徴点に対応する画素以外の画素の画素値との差が補正前よりも小さくなるように前記中間画素の画素値を補正してもよい。
【0008】
前記補正部は、前記第1撮像画像に含まれる各画素の画素値それぞれの分布傾向と前記第2撮像画像に含まれる各画素の画素値それぞれの分布傾向との関係にさらに基づいて、前記中間画素の画素値を補正してもよい。
【0009】
前記補正部は、前記第1撮像画像と前記第2撮像画像との類似度が補正前よりも大きくなるように前記中間画素の画素値を補正してもよい。
【0010】
前記補正部は、前記第1画素値と前記第2画素値とが同じになるように前記第1画素値をさらに補正し、補正した前記第1画素値と前記第2画素値とに基づいて、前記第1撮像画像における、補正した画素以外の画素である中間画素の画素値をさらに補正してもよい。
【0011】
前記抽出部は、前記第1撮像画像が前記複数の処理層の一部である前段処理層及び後段処理層の順に伝搬したことにより前記後段処理層から出力された複数の後段第1撮像画像出力、及び前記第2撮像画像が前段処理層及び後段処理層の順に伝搬したことにより前記後段処理層から出力された複数の後段第2撮像画像出力から、共通に活性化している一以上の後段第1撮像画像出力及び一以上の後段第2撮像画像出力を抽出する後段抽出部と、前記一以上の後段第1撮像画像出力及び前記一以上の後段第2撮像画像出力を活性化させる要因となった前記前段処理層から出力された複数の前段第1撮像画像出力、及び前記前段処理層から出力された複数の前段第2撮像画像出力のうち、共通に活性化している一以上の前段第1撮像画像出力及び一以上の前段第2撮像画像出力を抽出する前段抽出部と、を有してもよい。
【0012】
前記前段抽出部は、前記複数の前段第1撮像画像出力及び前記複数の前段第2撮像画像出力のうち、活性化している大きさに基づいて、前記一以上の前段第1撮像画像出力及び前記一以上の前段第2撮像画像出力を抽出してもよい。
【0013】
前記機械学習モデルは、畳み込みニューラルネットワークを含み、前記後段処理層は、出力層、全結合層、正規化層、プーリング層、及び畳み込み層のうちのいずれかの層であってもよい。
前記前段処理層は、全結合層、正規化層、プーリング層、畳み込み層及び入力層のうちのいずれかの層であってもよい。
【0014】
前記抽出部は、前記複数の処理層のうち、最後尾の処理層である最後尾層を後段処理層として選択した場合において、前記最後尾層において共通に活性化している前記一以上の第1撮像画像出力及び前記一以上の第2撮像画像出力がない場合、前記最後尾層より前の処理層において共通に活性化している前記一以上の第1撮像画像出力及び前記一以上の第2撮像画像出力を抽出してもよい。
【0015】
前記画像補正装置は、前記特徴点検出部が検出した前記一以上の第1撮像画像特徴点及び前記一以上の第2撮像画像特徴点から、相互の対応関係に基づいて一部の第1撮像画像特徴点及び一部の第2撮像画像特徴点を選択する選択部をさらに有し、前記補正部は、前記一部の第1撮像画像特徴点に対応する画素の第1画素値と、前記一以上の第1撮像画像特徴点それぞれに対応する前記一部の第2撮像画像特徴点に対応する画素の第2画素値とが同じになるように前記第2画素値を補正してもよい。
【0016】
前記画像補正装置は、前記複数の処理層のうち、前記後段処理層として用いる処理層を選択する指示を受け付ける指示受付部をさらに有し、前記抽出部は、前記指示受付部が受け付けた前記指示が示す前記処理層を、前記後段処理層として使用してもよい。
【0017】
前記抽出部は、前記複数の処理層のうち一つの層を前記後段処理層として選択して前記一以上の第1撮像画像出力及び前記一以上の第2撮像画像出力を抽出した後に、前記前段処理層として選択した処理層を前記後段処理層として選択して、別の前記一以上の第1撮像画像出力及び前記一以上の第2撮像画像出力を抽出してもよい。
【0018】
本発明の第2の態様にかかる画像補正方法は、第1撮像画像と、前記第1撮像画像とは異なる撮像画像である第2撮像画像と、を取得するステップと、前記第1撮像画像及び前記第2撮像画像のそれぞれに、入力された画像に基づいて当該画像に含まれる被写体の種別を出力可能な機械学習モデルに含まれる複数の処理層を伝搬させるステップと、前記複数の処理層から選択した後段処理層、及び前記後段処理層の直前の処理層である前段処理層の両方の処理層において共通に活性化している、前記第1撮像画像に基づいて前記後段処理層及び前記前段処理層から出力された一以上の第1撮像画像出力と前記第2撮像画像に基づいて前記後段処理層及び前記前段処理層から出力された一以上の第2撮像画像出力とを抽出するステップと、前記一以上の第1撮像画像出力に基づいて一以上の第1撮像画像特徴点を検出し、かつ前記一以上の第2撮像画像出力に基づいて一以上の第2撮像画像特徴点を検出するステップと、前記一以上の第1撮像画像特徴点に対応する画素の第1画素値と、前記一以上の第1撮像画像特徴点それぞれに対応する前記一以上の第2撮像画像特徴点に対応する画素の第2画素値とが同じになるように前記第2画素値を補正するステップと、前記補正するステップにおいて補正した前記第2画素値に基づいて、前記第2撮像画像における、補正した画素以外の画素である中間画素の画素値を補正するステップと、を有する。
【0019】
前記抽出するステップは、前記第1撮像画像が前記複数の処理層の一部である前段処理層及び後段処理層の順に伝搬したことにより前記後段処理層から出力された複数の後段第1撮像画像出力、及び前記第2撮像画像が前段処理層及び後段処理層の順に伝搬したことにより前記後段処理層から出力された複数の後段第2撮像画像出力から、共通に活性化している一以上の後段第1撮像画像出力及び一以上の後段第2撮像画像出力を抽出する前段抽出ステップと、前記一以上の後段第1撮像画像出力及び前記一以上の後段第2撮像画像出力を活性化させる要因となった前記前段処理層から出力された複数の前段第1撮像画像出力、及び前記前段処理層から出力された複数の前段第2撮像画像出力のうち、共通に活性化している一以上の前段第1撮像画像出力及び一以上の前段第2撮像画像出力を抽出する後段抽出ステップと、を有してもよい。
【0020】
前記前段抽出ステップを実行した後に、前記一以上の前段第1撮像画像出力及び前記一以上の前段第2撮像画像出力を、前記複数の後段第1撮像画像出力及び前記複数の後段第2撮像画像出力として、前記後段抽出ステップを実行してもよい。
前記複数の処理層のそれぞれに対して、前記後段抽出ステップ及び前記前段抽出ステップを実行してもよい。
【発明の効果】
【0021】
本発明によれば、複数の画像それぞれの色彩及び輝度が同等レベルになるように画素値を補正する精度を向上させることができるという効果を奏する。
【図面の簡単な説明】
【0022】
【
図1】画像補正処理の概要を説明するための図である。
【
図2】機械学習モデルの構成の一例を示す図である。
【
図4】補正部が行う補正処理を説明するための図である。
【
図5】抽出部が行う抽出処理について説明するための図である。
【
図6】抽出部が行う抽出処理について説明するための図である。
【
図7】抽出部が行う抽出処理について説明するための図である。
【
図8】抽出部が行う抽出処理について説明するための図である。
【
図9】抽出部が行う抽出処理について説明するための図である。
【
図10】抽出部が行う抽出処理について説明するための図である。
【
図11】画像補正装置が行う処理の流れを示すフローチャートである。
【
図12】抽出部が行う処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0023】
[画像補正装置1の概要]
図1は、画像補正処理の概要を説明するための図である。画像補正装置1は、例えばPC(Personal Computer)である。画像補正装置1は、機械学習モデルMを用いて、複数の画像それぞれの色彩及び輝度が同じになるように補正処理を行う装置である。
【0024】
画像は、静止画像又は動画像である。画像補正装置1は、画像が動画像である場合、動画像に含まれるフレームごとに補正処理を行う。複数の画像は、撮像パラメータがそれぞれ異なる撮像装置によって撮像された画像である。撮像パラメータは、例えば、撮像画像を撮像した撮像装置の焦点距離、画像の主点、縦横比、傾き、レンズ歪み、撮像した位置情報、及び撮像装置の向きの情報等である。複数の画像は、撮像パラメータが同じである撮像装置によって撮像された画像であり、それぞれ異なる環境下(例えば、第1撮像画像は日中に撮像された画像であり、第2撮像画像は夜間に撮像された画像である等)において撮像された画像であってもよい。
【0025】
画像補正装置1は、第1撮像装置が生成した第1撮像画像Aを取得する(
図1の(1))。
図1に示す第1撮像画像Aには、塔T1が写っている。続いて、画像補正装置1は、第1撮像画像Aとは異なる撮像画像である第2撮像画像Bを取得する(
図1の(2))。画像補正装置1は、例えば、第1撮像装置とは異なる撮像装置である第2撮像装置が生成した第2撮像画像Bを取得する。
図1に示す第2撮像画像Bには、第1撮像画像Aに写っている被写体である塔T1が写っている。
【0026】
画像補正装置1は、取得した第1撮像画像A及び第2撮像画像Bそれぞれを機械学習モデルMに入力し、当該機械学習モデルMに含まれる複数の処理層を伝搬させる(
図1の(3))。機械学習モデルMは、入力された画像に基づいて当該画像に含まれる被写体の種別を出力するように学習されたモデルである。
【0027】
図2は、機械学習モデルMの構成の一例を示す図である。機械学習モデルMは、畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)を含む。この場合において、機械学習モデルMは、入力層M1、第1の畳み込み層M2、第2の畳み込み層M3、第1のプーリング層M4、正規化層M5、第3の畳み込み層M6、第2のプーリング層M7、第1の全結合層M8、第2の全結合層M9、及び出力層M10を有する。本明細書においては、隣接する2つの処理層のうち、第1撮像画像A及び第2撮像画像Bが伝搬する際の上流側の処理層を前段処理層と称し、下流側の処理層を後段処理層と称する。
【0028】
後段処理層となり得る処理層は、第1の畳み込み層M2、第2の畳み込み層M3、第1のプーリング層M4、正規化層M5、第3の畳み込み層M6、第2のプーリング層M7、第1の全結合層M8、第2の全結合層M9、及び出力層M10のうちのいずれかの層である。また、前段処理層となり得る処理層は、入力層M1、第1の畳み込み層M2、第2の畳み込み層M3、第1のプーリング層M4、正規化層M5、第3の畳み込み層M6、第2のプーリング層M7、第1の全結合層M8、及び第2の全結合層M9のうちのいずれかの層である。画像補正装置1は、取得した画像を機械学習モデルMに入力し、入力層M1から出力層M10までの各処理層を順伝搬させる、すなわち、推論させることにより、画像に写っている被写体の種別を出力させる。
【0029】
図1に戻り、画像補正装置1は、機械学習モデルMが被写体の種別を出力するに至った各処理層における計算結果、すなわち、深層学習による抽象度の高い特徴量を用いて、第1撮像画像A及び第2撮像画像Bに共通する特徴点を検出する(
図1の(4))。ここで、画像補正装置1は、共通する特徴点の検出を、伝搬させた順序とは逆の順序で行う。このようにすることで、画像補正装置1は、抽象度が高い特徴量に基づく特徴点を検出することができる。
【0030】
画像補正装置1は、共通する特徴点を検出することにより、第1撮像画像Aに写っている塔T1と、第2撮像画像Bに写っている塔T1とにそれぞれ対応関係があることを検出する。対応関係は、第1撮像画像Aの特徴点が示す第1撮像画像Aに含まれる画素と、第2撮像画像Bの特徴点が示す第2撮像画像Bに含まれる画素とが一致又は近似した関係である。
【0031】
そして、画像補正装置1は、検出した対応関係にある第1撮像画像A及び第2撮像画像Bそれぞれの特徴点に基づいて、第1撮像画像A及び第2撮像画像Bそれぞれに写っている塔T1の色彩及び輝度が同じになるように、第2撮像画像Bに含まれる画素の画素値を補正する(
図1の(5))。
【0032】
このようにすることで、画像補正装置1は、複数の画像それぞれの色彩及び輝度が同じになるように画素値を補正する精度を向上させることができる。画像補正装置1は、例えば、撮像装置の個体差による光源位置又は明暗の差等の影響を受けることなく、複数の画像の色彩及び輝度が同じになるように画素値を補正することができる。また、画像補正装置1は、例えば、夜間に撮像された暗い第2撮像画像Bに写っている塔T1を、日中に撮像された明るい第1撮像画像Aに基づいて明るくなるように補正することができる。なお、本明細書における「色彩及び輝度が同じ」とは、色彩及び輝度が完全に同一である場合に限定されず、平均的な画像視認者が同等レベルの色彩及び輝度であると認識する限りにおいて、第1撮像画像Aに含まれる画素の色彩及び輝度と第2撮像画像Bに含まれる画素の色彩及び輝度との間に微差があってもよい。
以下、画像補正装置1の詳細について説明する。
【0033】
[画像補正装置1の構成]
図3は、画像補正装置1の構成を示す図である。画像補正装置1は、操作部11、記憶部12、及び制御部13を有する。
操作部11は、ユーザの操作を受け付ける入力デバイスである。
記憶部12は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)及びハードディスク等の記憶媒体である。記憶部12は、制御部13が実行する各種のプログラムを記憶する。
【0034】
制御部13は、例えばCPU(Central Processing Unit)である。制御部13は、記憶部12に記憶されているプログラムを実行することにより、画像補正装置1に係る機能を制御する。制御部13は、プログラムを実行することにより、画像取得部131、伝搬制御部132、抽出部133、指示受付部136、特徴点検出部137、選択部138、及び補正部139として機能する。
【0035】
画像取得部131は、第1撮像画像と第2撮像画像とを取得する。画像取得部131は、例えば、記憶部12に記憶されている第1撮像画像と第2撮像画像とを取得する。画像取得部131は、取得した第1撮像画像と第2撮像画像とを、伝搬制御部132に入力する。
【0036】
伝搬制御部132は、第1撮像画像及び第2撮像画像のそれぞれに、機械学習モデルMに含まれる複数の処理層を伝搬させる。
図2に示す例において、伝搬制御部132は、第1撮像画像及び第2撮像画像のそれぞれに、機械学習モデルMに含まれる入力層M1から出力層M10までの各処理層を、順に伝搬させる。
【0037】
抽出部133は、複数の処理層から選択した後段処理層、及び後段処理層の直前の処理層である前段処理層の両方の処理層において共通に活性化している、第1撮像画像に基づいて後段処理層及び前段処理層から出力された一以上の第1撮像画像出力と第2撮像画像に基づいて後段処理層及び前段処理層から出力された一以上の第2撮像画像出力とを抽出する。抽出部133が行う抽出処理の詳細については後述するが、抽出部133は、後段処理層で共通に活性化している第1撮像画像出力の一部である後段第1撮像画像出力及び第2撮像画像出力の一部である後段第2撮像画像出力を抽出する後段抽出部134と、前段処理層で共通に活性化している第1撮像画像出力の一部である前段第1撮像画像出力及び第2撮像画像出力の一部である前段第2撮像画像出力を抽出する前段抽出部135とを有する。
【0038】
抽出部133が抽出する第1撮像画像出力及び第2撮像画像出力は、処理層に含まれる複数のユニットのうち、活性化しているユニットを示す情報である。ユニットは、画像に含まれる一以上の画素である。活性化の定義は、例えば、ユニットの出力値又はユニットの出力値と当該ユニットの結合の重みとの積が、所定の閾値を超えた場合でもよいし、出力の大きい順に所定の個数又は所定の割合に含まれた場合であってもよい。また、全結合層以外の処理層においては、例えば、チャンネルごとに出力の大きい順に所定の個数又は所定の割合に含まれた場合であってもよい。チャンネルは、フィルタ毎に畳み込み演算した出力である。
【0039】
抽出部133は、複数の処理層のうち、最後尾の処理層である最後尾層を後段処理層として選択することが好ましい。しかし、最後尾層において共通に活性化している第1撮像画像出力及び第2撮像画像出力がない場合がある。そこで、抽出部133は、複数の処理層のうち、最後尾層を後段処理層として選択した場合において、最後尾層において共通に活性化している一以上の第1撮像画像出力及び一以上の第2撮像画像出力がない場合、最後尾層より前の処理層において共通に活性化している一以上の第1撮像画像出力及び一以上の第2撮像画像出力を抽出してもよい。
【0040】
例えば、抽出部133が、最後尾層である出力層M10を後段処理層として選択した場合において、出力層M10において共通に活性化している一以上の第1撮像画像出力及び一以上の第2撮像画像出力がないとする。この場合において、抽出部133は、出力層M10より前の各処理層に対して、共通に活性化している一以上の第1撮像画像出力及び一以上の第2撮像画像出力を繰り返し探索する。
【0041】
抽出部133は、例えば、出力層M10の直前の処理層である第2の全結合層M9において共通に活性化している一以上の第1撮像画像出力及び一以上の第2撮像画像出力があった場合、第2の全結合層M9を後段処理層として選択する。そして、抽出部133は、後段処理層として選択した第2の全結合層M9において共通に活性化している一以上の第1撮像画像出力及び一以上の第2撮像画像出力を抽出する。このようにすることで、抽出部133は、第1撮像画像と第2撮像画像とで一致する領域が少ない場合であっても、それぞれに写る被写体を対応付けることができる。
【0042】
抽出部133は、ユーザによって指定された処理層を後段処理層として選択してもよい。具体的には、まず、指示受付部136は、操作部11を介して、複数の処理層のうち、後段処理層として用いる処理層を選択する指示を受け付ける。そして、抽出部133は、指示受付部136が受け付けた指示が示す処理層を、後段処理層として使用する。抽出部133は、
図2に示す例において、ユーザが第2の全結合層M9を選択した場合に、指示受付部136が受け付けた指示が示す第2の全結合層M9を、後段処理層として使用する。抽出部133は、抽出した第1撮像画像出力と第2撮像画像出力とを特徴点検出部137に入力する。
【0043】
特徴点検出部137は、一以上の第1撮像画像出力に基づいて一以上の第1撮像画像特徴点を検出し、かつ一以上の第2撮像画像出力に基づいて一以上の第2撮像画像特徴点を検出する。具体的には、特徴点検出部137は、まず、一以上の第1撮像画像出力及び一以上の第2撮像画像出力に基づいて、対応する特徴点を探索する。そして、特徴点検出部137は、対応関係にある一以上の第1撮像画像出力に基づく一以上の第1撮像画像特徴点と、一以上の第2撮像画像出力に基づく一以上の第2撮像画像特徴点とを検出する。特徴点検出部137は、検出した第1撮像画像特徴点及び第2撮像画像特徴点を選択部138に入力する。
【0044】
選択部138は、特徴点検出部137が検出した一以上の第1撮像画像特徴点及び一以上の第2撮像画像特徴点から、相互の対応関係に基づいて一部の第1撮像画像特徴点及び一部の第2撮像画像特徴点を選択する。具体的には、選択部138は、誤検出した対応関係を除去し、除去した後の対応関係に基づく一以上の第1撮像画像特徴点及び一以上の第2撮像画像特徴点を選択する。選択部138は、例えば、RANSAC(Random Sampling Consensus)法又は最小2乗メディアン(LMedS:Least Median of Square)法に基づいて絞り込みを行うことにより対応関係を除去する。
【0045】
対応関係の誤検出は、第1撮像画像特徴点及び第2撮像画像特徴点の対応関係に矛盾が生じている状態である。対応関係の誤検出は、例えば、特徴点検出部137が探索した、対応関係にある一以上の第1撮像画像特徴点及び一以上の第2撮像画像特徴点のうち、撮像パラメータから明らかに誤りであることが判断できる対応関係を除去する。
【0046】
選択部138は、例えば、第1撮像画像及び第2撮像画像をそれぞれ撮像した2つの撮像装置の画角及び向き等に基づいて、第1撮像画像及び第2撮像画像の画素の位置が数十画素程度のずれしか生じないと推定したとする。この場合において、選択部138は、特徴点検出部137が検出した一以上の第1撮像画像特徴点及び一以上の第2撮像画像特徴点のうち、数十画素程度のずれを超えている一以上の第1撮像画像特徴点(例えば、第1撮像画像の左下側の画素に対応する第1撮像画像特徴点)及び一以上の第2撮像画像特徴点(例えば、第2撮像画像の右上側の画素に対応する第2撮像画像特徴点)の対応関係を除去する。
【0047】
選択部138は、動画像のnフレーム目が第1撮像画像であり、n+1フレーム目が第2撮像画像であって、第1撮像画像及び第2撮像画像それぞれに写っている被写体の移動量にほとんど変動が無い場合において、対応関係にある第1撮像画像特徴点の画素の位置から第2撮像画像特徴点の画素の位置までの移動量が所定の閾値を超える場合に、対応関係を除去してもよい。選択部138は、例えば、第1撮像画像及び第2撮像画像それぞれに写っている被写体の移動量に変動が無い場合において、ある第1撮像画像特徴点の画素の位置が第1撮像画像の中央であり、当該第1撮像画像特徴点と対応関係にある第2撮像画像の画素の位置が第2撮像画像の左端である場合に、誤検出と判断して当該対応関係を除去する。
【0048】
また、選択部138は、第1撮像画像及び第2撮像画像がそれぞれ異なる撮像装置によって撮像された画像である場合において、撮像装置の撮像パラメータに基づいて算出することができる多焦点テンソルが有する多重線形拘束を用いて対応関係を除去してもよい。選択部138は、例えば、後述する補正部139が2つの撮像画像に基づいて第2撮像画像の画素値を補正する場合に、2つの撮像画像に対して、2重線形拘束を満たさない対応関係を除去する。また、選択部138は、例えば、補正部139が3つの撮像画像に基づいて第2撮像画像の画素値を補正する場合に、3つの撮像画像に対して、3重線形拘束を満たさない対応関係を除去する。また、選択部138は、例えば、補正部139が4つの撮像画像に基づいて第2撮像画像の画素値を補正する場合に、4つの撮像画像に対して、4重線形拘束を満たさない対応関係を除去する。
【0049】
また、選択部138は、多焦点テンソルに基づいて、抽出部133が行う抽出処理で抽出された撮像画像出力の絞り込みを行ってもよい。具体的には、選択部138は、まず、抽出部133によって抽出された撮像画像出力に基づいて、当該撮像画像出力が抽出された処理層から逆畳み込みを行い、当該撮像画像出力に対応する撮像画像の領域を特定する。そして、選択部138は、特定した領域が多重線形拘束を満たさない場合、当該領域に対応する撮像画像出力を、抽出部133によって抽出された撮像画像出力から除去する。
【0050】
選択部138は、例えば、一の第1撮像画像出力に対応する第1撮像画像の領域である第1撮像画像領域を、当該一の第1撮像画像出力が抽出された処理層において逆畳み込みを行うことにより特定する。同様に、選択部138は、一の第2撮像画像出力に対応する第2撮像画像の領域である第2撮像画像領域を、当該一の第2撮像画像出力が抽出された処理層において逆畳み込みを行うことにより特定する。
【0051】
選択部138は、2重線形拘束(例えば、エピポーラ拘束)を用いて、第2撮像画像上に変換した第1撮像画像領域に、第2撮像画像領域と共通する部分があるか否かを判定する。同様に、選択部138は、2重線形拘束を用いて第1撮像画像上に変換した第2撮像画像領域に、第1撮像画像領域と共通する部分があるか否かを判定する。
【0052】
選択部138は、いずれかの判定において共通する部分がないと判定した場合、抽出すべき出力ではないと判断し、当該一の第1撮像画像出力及び当該一の第2撮像画像出力の対応関係を除去する。この場合、抽出部133は、選択部138が除去した対応関係にある当該一の第1撮像画像出力及び当該一の第2撮像画像出力に基づく抽出処理を中止する。一方、選択部138は、2つの判定において共通する部分があると判定した場合、当該一の第1撮像画像出力及び当該一の第2撮像画像出力の対応関係を維持し、次に抽出部133が抽出した第1撮像画像出力及び第2撮像画像出力の絞り込みを行う。
【0053】
補正部139は、特徴点検出部137が検出した一以上の第1撮像画像特徴点及び一以上の第2撮像画像特徴点に基づいて、第2撮像画像に含まれる画素の画素値を補正する。具体的には、補正部139は、一以上の第1撮像画像特徴点に対応する画素の第1画素値と、一以上の第1撮像画像特徴点それぞれに対応する一以上の第2撮像画像特徴点に対応する画素の第2画素値とが同じになるように第2画素値を補正する。補正部139は、選択部138が選択した一部の第1撮像画像特徴点に対応する画素の第1画素値と、一以上の第1撮像画像特徴点それぞれに対応する一部の第2撮像画像特徴点に対応する画素の第2画素値とが同じになるように第2画素値を補正してもよい。
【0054】
補正部139は、第2画素値を補正した後に、補正した第2画素値に基づいて、第2撮像画像における、補正した画素以外の画素である中間画素の画素値を補正する。具体的には、補正部139は、第1撮像画像と第2撮像画像との類似度が補正前よりも大きくなるように中間画素の画素値を補正する。より具体的には、補正部139は、一以上の第1撮像画像特徴点に対応する画素以外の画素の画素値と、一以上の第1撮像画像特徴点それぞれに対応する一以上の第2撮像画像特徴点に対応する画素以外の画素の画素値との差が補正前よりも小さくなるように中間画素の画素値を補正する。
【0055】
図4は、補正部139が行う補正処理を説明するための図である。
図4(a)は、
図1に示す第2撮像画像Bと同じ画像である。
図4(b)は、
図4(a)に示す塔T2に含まれる領域T21を拡大した画像である。
図4(b)に示す破線の領域は、特徴点検出部137が検出した一以上の第1撮像画像特徴点と対応関係にある一以上の第2撮像画像特徴点に対応する画素を示す領域である。
【0056】
図4(b)に示す例において、補正部139は、一以上の第1撮像画像特徴点に対応する画素の第1画素値と、一以上の第1撮像画像特徴点それぞれに対応する一以上の第2撮像画像特徴点に対応する画素の第2画素値とが同じになるように、領域T22、T23それぞれに含まれる画素の第2画素値を補正する。また、補正部139は、補正した領域T22、T23それぞれの第2画素値に基づいて、第2撮像画像における中間画素として、領域T22、T23の間に含まれる画素の画素値を補正する。
【0057】
補正部139は、例えば、
図4(b)に示す補正した領域T22、T23それぞれに含まれる画素の第2画素値が同じである場合に、領域T22、T23の間に含まれる画素の画素値を、補正した領域T22、T23それぞれに含まれる画素の第2画素値と同じになるように補正する。また、補正部139は、補正した領域T22、T23それぞれに含まれる画素の第2画素値のうち、領域T23に含まれる画素の第2画素値の方が大きい(明るい)場合に、領域T22、T23の間に含まれる画素の画素値を、領域T22側から領域T23側に段階的に大きく(明るく)なるように中間画素の画素値を補正する。このようにすることで、補正部139は、中間画素においても第1撮像画像及び第2撮像画像それぞれの色彩及び輝度が同じになるように補正することができる。
【0058】
補正部139は、不図示のルックアップテーブルを用いて第2撮像画像における中間画素の画素値を補正してもよい。ルックアップテーブルにおいては、例えば、対応関係にある一以上の第1撮像画像特徴点の位置と一以上の第2撮像画像特徴点の位置との関係と、当該一以上の第1撮像画像特徴点に対応する画素の第1画素値と、当該一以上の第2撮像画像特徴点に対応する画素の第2画素値と、第1撮像画像における中間画素の画素値と、第2撮像画像における中間画素の画素値に対する補正値とが関連付けられている。ルックアップテーブルを生成する方法は、公知の技術を用いることができる。補正部139は、例えば、動的計画法を用いてルックアップテーブルを生成する。
【0059】
図4に示す例において、補正部139は、ルックアップテーブルを参照し、領域T22、T23それぞれの位置の関係と、領域T22、T23それぞれに対応する第2撮像画像特徴点と対応関係にある第1撮像画像特徴点に対応する画素の第1画素値と、領域T22、T23それぞれに対応する第2撮像画像特徴点に対応する画素の第2画素値と、第1撮像画像における中間画素の画素値とに関連付けられている補正値に基づいて、第2撮像画像における中間画素の画素値を補正してもよい。このように補正部139は、第2撮像画像における中間画素の画素値に対する補正処理においてルックアップテーブルを用いることにより、補正処理に伴う負荷を軽減させることができる。
【0060】
補正部139は、第1撮像画像に含まれる各画素の画素値それぞれの分布傾向と第2撮像画像に含まれる各画素の画素値それぞれの分布傾向との関係にさらに基づいて、中間画素の画素値を補正してもよい。「画素値の分布傾向」は、例えば、撮像画像における輝度分布、明るさ分布、又は色分布等の傾向である。補正部139は、例えば、第1撮像画像に含まれる各画素の画素値それぞれの輝度分布傾向と、第2撮像画像に含まれる各画素の画素値それぞれの輝度分布傾向とが同じになるように、第2撮像画像における中間画素の画素値を補正してもよい。このようにすることで、補正部139は、中間画素に対する補正の精度を向上させることができる。
【0061】
補正部139は、第1画素値と第2画素値とが同じになるように第1画素値をさらに補正し、補正した第1画素値と第2画素値とに基づいて、第1撮像画像における、補正した画素以外の画素である中間画素の画素値をさらに補正してもよい。具体的には、補正部139は、第1画素値と第2画素値とが同じになるように、第1画素値と第2画素値とを補正する。また、補正部139は、補正した第1画素値と第2画素値とに基づいて、第1撮像画像における中間画素の画素値と第2撮像画像における中間画素の画素値とが同じになるように、第1撮像画像における中間画素の画素値と第2撮像画像における中間画素の画素値とを補正する。
【0062】
補正部139は、例えば、第1撮像画像が日中に撮像された明るい画像であり、第2撮像画像が夜間に撮像された暗い画像である場合に、輝度値が第1撮像画像と第2撮像画像との中間値となるように補正することによって、明暗のバランスがとれた撮像画像に補正することができる。また、補正部139は、例えば、日中に撮像された第1撮像画像に日向の部分と日陰の部分がある場合であっても、第2撮像画像における第2画素値及び第2撮像画像における中間画素値と同じになるように補正することによって、第1撮像画像における日向の部分と日陰の部分との差を低減することができる。
【0063】
[抽出処理]
続いて、抽出部133が行う抽出処理について説明する。上述のとおり、抽出部133は、後段抽出部134及び前段抽出部135を有する。後段抽出部134は、第1撮像画像が複数の処理層の一部である前段処理層及び後段処理層の順に伝搬したことにより後段処理層から出力された複数の後段第1撮像画像出力、及び第2撮像画像が前段処理層及び後段処理層の順に伝搬したことにより後段処理層から出力された複数の後段第2撮像画像出力から、共通に活性化している一以上の後段第1撮像画像出力及び一以上の後段第2撮像画像出力を抽出する。
【0064】
前段抽出部135は、一以上の後段第1撮像画像出力及び一以上の後段第2撮像画像出力を活性化させる要因となった前段処理層から出力された複数の前段第1撮像画像出力、及び前段処理層から出力された複数の前段第2撮像画像出力のうち、共通に活性化している一以上の前段第1撮像画像出力及び一以上の前段第2撮像画像出力を抽出する。
【0065】
図5から
図10は、抽出部133が行う抽出処理について説明するための図である。
図5から
図10は、前段処理層から後段処理層に伝搬させた状態を示している。
図5から
図10において、実線で示すユニットを結合する結合線は、結合するユニットから出力があったことを示し、破線で示す結合線は、結合するユニットから出力が無かったことを示す。また、結合線を示す線の太さは、結合するユニットからの出力の大きさを示す。
【0066】
図5の場合において、後段処理層は、最後尾層(例えば、出力層又は全結合層等)又は抽出部133が選択した最後尾層より前の処理層(全結合層又はプーリング層等)であり、前段処理層は、後段処理層の直前の処理層(例えば、全結合層又はプーリング層等)である。
図5においては、後段処理層が出力層M20であり、前段処理層が全結合層M19であるとして説明する。
【0067】
図5(a)は、抽出前の状態であり、
図5(b)は抽出後の状態である。第1撮像画像において、出力層M20は、ユニットU5、U8が活性化しており、全結合層M19は、ユニットU2、U5、U6、U7、U8が活性化している。第2撮像画像において、出力層M20は、ユニットU3、U5が活性化しており、全結合層M19は、ユニットU2、U4、U5、U8が活性化している。
【0068】
この場合において、後段抽出部134は、後段処理層である出力層M20から出力された後段第1撮像画像出力であるユニットU5、U8、及び出力層M20から出力された後段第2撮像画像出力であるユニットU3、U5を比較する。そして、後段抽出部134は、共通に活性化している後段第1撮像画像出力のユニットU5及び後段第2撮像画像出力のユニットU5を抽出する。
【0069】
続いて、前段抽出部135は、後段第1撮像画像出力のユニットU5を活性化させる要因となった前段処理層である全結合層M19から出力された前段第1撮像画像出力であるユニットU2、U5、U6、及び後段第2撮像画像出力のユニットU5を活性化させる要因となった全結合層M19から出力された前段第2撮像画像出力であるユニットU2、U5、U8を比較する。そして、前段抽出部135は、共通に活性化している前段第1撮像画像出力のユニットU2、U5、及び前段第2撮像画像出力のユニットU2、U5を抽出する。
【0070】
抽出部133は、出力層M20から全結合層M19までの出力を抽出すると、次の処理層に対する出力を抽出する。具体的には、抽出部133は、処理層ごとに、共通に活性化している第1撮像画像出力及び第2撮像画像出力を抽出する処理を、伝搬制御部132が伝搬させた順序とは逆の順序で繰り返し行う。より具体的には、抽出部133は、複数の処理層のうち一つの層を後段処理層として選択して一以上の第1撮像画像出力及び一以上の第2撮像画像出力を抽出した後に、前段処理層として選択した処理層を後段処理層として選択して、別の一以上の第1撮像画像出力及び一以上の第2撮像画像出力を抽出する。このようにすることで、抽出部133は、第1撮像画像及び第2撮像画像に対する比較の精度を高めることができる。
【0071】
図6は、第1撮像画像に基づいて、前段処理層から後段処理層に伝搬させた状態を示している。
図7は、第2撮像画像に基づいて、前段処理層から後段処理層に伝搬させた状態を示している。
図6及び
図7の場合において、後段処理層は、全結合層M18であり、前段処理層は、全結合層以外の処理層(例えば、プーリング層又は畳み込み層等)である。
図6及び
図7においては、前段処理層がプーリング層M17であるとして説明する。また、
図6及び
図7において、前段処理層は、3つのチャンネルを有する。上段の第1チャンネルは、ユニットU11、U12、U13、U14、及びU15を含む。中段の第2チャンネルは、ユニットU21、U22、U23、U24、及びU25を含む。下段の第3チャンネルは、ユニットU31、U32、U33、U34、及びU35を含む。
【0072】
第1撮像画像において、プーリング層M17は、第1チャンネルに含まれるユニットU13及び第2チャンネルに含まれるユニットU21、U24が活性化している。第2撮像画像において、全結合層M18は、第2チャンネルに含まれるユニットU22、U24、U25及び第3チャンネルに含まれるユニットU32、U33が活性化している。
【0073】
前段抽出部135は、後段第1撮像画像出力のユニットU5を活性化させる要因となった前段処理層であるプーリング層M17から出力された前段第1撮像画像出力、及び後段第2撮像画像出力のユニットU5を活性化させる要因となったプーリング層M17から出力された前段第2撮像画像出力を比較する。前段抽出部135は、活性化しているユニットの有無を調べ、活性化している前段第1撮像画像出力の第1チャンネルに含まれるユニットU13及び第2チャンネルに含まれるU21、U24と、前段第2撮像画像出力の第2チャンネルに含まれるユニットU22、U24、U25及び第3チャンネルに含まれるU32、U33とに着目する。
【0074】
そして、前段抽出部135は、前段第1撮像画像出力と前段第2撮像画像出力との両方において活性化しているユニットが存在しているチャンネルが第2チャンネルであることから、前段第1撮像画像出力の第2チャンネルに含まれるユニットU21、U24及び前段第2撮像画像出力の第2チャンネルに含まれるユニットU22、U24、U25を抽出する。
【0075】
図8の場合において、後段処理層は、プーリング層M16であり、前段処理層は、プーリング層以外の処理層(例えば、畳み込み層又は正規化層等)である。
図8においては、前段処理層が畳み込み層M15であるとして説明する。また、
図8において、前段処理層は、チャンネルが1つであるとして説明する。第1撮像画像において、プーリング層M16は、ユニットU5が活性化しており、畳み込み層M15は、ユニットU3、U5が活性化している。第2撮像画像において、プーリング層M16は、ユニットU3が活性化しており、畳み込み層M15は、ユニットU3、U4が活性化している。
【0076】
ここで、抽出部133は、画像の圧縮を行うプーリング層においては、直前の処理層からプーリング層に結合している複数のユニットのうち、チャンネルごとに活性化している程度に基づいて出力を抽出する。具体的には、前段抽出部135は、複数の前段第1撮像画像出力及び複数の前段第2撮像画像出力のうち、活性化している大きさに基づいて、一以上の前段第1撮像画像出力及び一以上の前段第2撮像画像出力を抽出する。前段抽出部135は、例えば、複数の前段第1撮像画像出力及び複数の前段第2撮像画像出力のうち、チャンネルごとに最も大きく活性化している一以上の前段第1撮像画像出力及び一以上の前段第2撮像画像出力を抽出する。
【0077】
この場合において、後段抽出部134は、直前の抽出処理において前段処理層として選択したプーリング層M16を選択して、プーリング層M16から出力された後段第1撮像画像出力のユニットU5、及びプーリング層M16から出力された後段第2撮像画像出力のユニットU3を抽出する。そして、前段抽出部135は、後段第1撮像画像出力のユニットU3、U5及び後段第2撮像画像出力のユニットU3、U4のうち、チャンネルごとに最も大きく活性化している前段第1撮像画像出力のユニットU5、及び前段第2撮像画像出力のユニットU4を抽出する。このようにすることで、前段抽出部135は、画像の中で特徴となる領域を特定することができる。
【0078】
図9の場合において、後段処理層は、畳み込み層M14であり、前段処理層は、畳み込み層を含む他の処理層(例えば、正規化層又はプーリング層等)である。
図9においては、前段処理層が正規化層M13であるとして説明する。また、
図9において、前段処理層は、チャンネルが1つであるとして説明する。第1撮像画像において、畳み込み層M14は、ユニットU5が活性化しており、正規化層M13は、ユニットU3、U5、U6が活性化している。第2撮像画像において、畳み込み層M14は、ユニットU3が活性化しており、正規化層M13は、ユニットU3、U4、U5が活性化している。
【0079】
この場合において、後段抽出部134は、直前の抽出処理において前段処理層として選択した畳み込み層M14を選択して、畳み込み層M14から出力された後段第1撮像画像出力のユニットU5、及び畳み込み層M14から出力された後段第2撮像画像出力のユニットU3を抽出する。
【0080】
続いて、前段抽出部135は、後段第1撮像画像出力のユニットU5を活性化させる要因となった前段処理層である正規化層M13から出力された前段第1撮像画像出力、及び後段第2撮像画像出力のユニットU3を活性化させる要因となった前段処理層である正規化層M13から出力された前段第2撮像画像出力を比較する。ここで、前段抽出部135は、後段処理層が畳み込み層である場合、後段抽出部134が後段処理層から抽出したユニットに結合する前段処理層の複数のユニットのうち、前段出力のユニットU5、U6、及び前段第2撮像画像出力のユニットU3、U出力と前段第2撮像画像出力とにおいて画素値が相対的に同じであり、かつチャンネルが共通するユニットを抽出する。この場合、前段抽出部135は、前段第1撮像画像出力と前段第2撮像画像出力とにおいて画素値が相対的に同じであり、かつチャンネルが共通するユニットとして、前段第1撮像画像出力のユニットU5、U6、及び前段第2撮像画像出力のユニットU3、U4を抽出する。
【0081】
図10の場合において、後段処理層は、正規化層M12であり、前段処理層は、正規化層以外の処理層(例えば、畳み込み層又はプーリング層等)である。
図10においては、前段処理層がプーリング層M11であるとして説明する。また、
図10において、前段処理層は、チャンネルが1つであるとして説明する。第1撮像画像において、正規化層M12は、ユニットU5が活性化している。第2撮像画像において、正規化層M12は、ユニットU3が活性化している。
【0082】
ここで、抽出部133は、画像に対して前処理を行う正規化層においては、後段処理層において活性化しているユニットに結合している前段処理層に含まれる複数のユニットのうち、中心のユニットを抽出する。この場合において、後段抽出部134は、後段処理層として選択した正規化層M12から出力された後段第1撮像画像出力のユニットU5、及び正規化層M12から出力された後段第2撮像画像出力のユニットU3を抽出する。
【0083】
そして、前段抽出部135は、正規化層M12から出力された後段第1撮像画像出力のユニットU5に結合しているプーリング層M11のユニットのうち、中心のユニットU5を抽出する。同様に、前段抽出部135は、正規化層M12から出力された後段第2撮像画像出力のユニットU3に結合しているプーリング層M11のユニットのうち、中心のユニットU3を抽出する。
【0084】
抽出部133は、上述の抽出処理を入力層まで繰り返し行うことが好ましい。しかし、抽出部133は、抽出処理を最初の処理層まで行わずに、途中の処理層(例えば、プーリング層又は正規化層等)で終了してもよい。このように、抽出部133は、伝搬制御部132が伝搬させた順序とは逆の順序で抽出処理を行うことにより、抽象度が高い出力を抽出することができる。
【0085】
[画像補正装置1の処理]
続いて、画像補正装置1が行う処理の流れを説明する。
図11は、画像補正装置1が行う処理の流れを示すフローチャートである。本フローチャートは、記憶部12に記憶されている第1撮像画像と第2撮像画像とを取得したことを契機として開始する(S1)。
【0086】
画像取得部131は、取得した第1撮像画像と第2撮像画像とを、伝搬制御部132に入力する。伝搬制御部132は、画像取得部131から入力された第1撮像画像及び第2撮像画像のそれぞれに、機械学習モデルMに含まれる入力層M1から出力層M10までの複数の処理層を、入力層M1から順に伝搬させる(S2)。
【0087】
抽出部133は、後段処理層及び前段処理層の両方の処理層において共通に活性化している一以上の第1撮像画像出力及び一以上の第2撮像画像出力を抽出する処理を行う(S3)。
図12は、抽出部133が行う処理の流れを示すフローチャートである。抽出部133は、指示受付部136が、操作部11を介して、複数の処理層のうち、後段処理層として用いる処理層を選択する指示を受け付けたか否かを判定する(S31)。
【0088】
抽出部133は、指示受付部136が指示を受け付けたと判定した場合、指示受付部136が受け付けた指示が示す処理層を、後段処理層として使用する(S32)。抽出部133は、例えば、指示受付部136が第1の全結合層M8を示す指示を受け付けたと判定した場合、指示受付部136が受け付けた指示が示す第1の全結合層M8を、後段処理層として選択する。一方、抽出部133は、指示受付部136が指示を受け付けていないと判定した場合、最後尾層(例えば、出力層M10)で共通に活性化している一以上の第1撮像画像出力及び一以上の第2撮像画像出力があるか否かを判定する(S33)。
【0089】
抽出部133は、出力層M10で共通に活性化している一以上の第1撮像画像出力及び一以上の第2撮像画像出力があると判定した場合、最後尾層である出力層M10を、後段処理層として使用する(S34)。一方、抽出部133は、出力層M10で共通に活性化している一以上の第1撮像画像出力及び一以上の第2撮像画像出力がないと判定した場合、出力層M10より前の各処理層に対して、共通に活性化している一以上の第1撮像画像出力及び一以上の第2撮像画像出力を繰り返し探索する。そして、抽出部133は、共通に活性化している一以上の第1撮像画像出力及び一以上の第2撮像画像出力がある処理層(例えば、第2の全結合層M9)を、後段処理層として使用する(S35)。抽出部133は、選択した後段処理層、及び前段処理層の両方の処理層において共通に活性化している、第1撮像画像に基づいて後段処理層及び前段処理層から出力された一以上の第1撮像画像出力と第2撮像画像に基づいて後段処理層及び前段処理層から出力された一以上の第2撮像画像出力とを抽出する。
【0090】
具体的には、まず、後段抽出部134は、選択した後段処理層から出力された複数の後段第1撮像画像出力、及び選択した後段処理層から出力された複数の後段第2撮像画像出力から、共通に活性化している一以上の後段第1撮像画像出力及び一以上の後段第2撮像画像出力を抽出する(S36)。そして、前段抽出部135は、後段抽出部134が抽出した一以上の後段第1撮像画像出力及び一以上の後段第2撮像画像出力を活性化させる要因となった前段処理層から出力された複数の前段第1撮像画像出力、及び前段処理層から出力された複数の前段第2撮像画像出力のうち、共通に活性化している一以上の前段第1撮像画像出力及び一以上の前段第2撮像画像出力を抽出する(S37)。
【0091】
続いて、抽出部133は、前段処理層より前に別の処理層があるか否かを判定する(S38)。抽出部133は、前段処理層(例えば、第2のプーリング層M7)より前に別の処理層(例えば、第3の畳み込み層M6)があると判定した場合、第2のプーリング層M7を後段処理層として使用し(S39)、処理をS36に戻す。一方、抽出部133は、前段処理層(例えば、入力層M1)より前に別の処理層がないと判定した場合、抽出した一以上の第1撮像画像出力及び一以上の第2撮像画像出力を特徴点検出部137に入力し、抽出処理を終了する。
【0092】
図11に戻り、特徴点検出部137は、一以上の第1撮像画像出力及び一以上の第2撮像画像出力に基づいて、対応する特徴点を探索し、対応関係にある一以上の第1撮像画像出力に基づく一以上の第1撮像画像特徴点と、一以上の第2撮像画像出力に基づく一以上の第2撮像画像特徴点とを検出する(S4)。続いて、選択部138は、特徴点検出部137が検出した第1撮像画像特徴点及び第2撮像画像特徴点に不適切な特徴点があるか否かを判定する(S5)。選択部138は、例えば、RANSAC法に基づいて絞り込みを行う。
【0093】
選択部138は、第1撮像画像特徴点及び第2撮像画像特徴点に不適切な特徴点があると判定した場合、不適切な特徴点、すなわち、誤検出した対応関係にある第1撮像画像特徴点及び第2撮像画像特徴点を除去し(S6)、除去した後の対応関係に基づく一部の第1撮像画像特徴点及び一部の第2撮像画像特徴点を選択する。
【0094】
補正部139は、選択部138が、第1撮像画像特徴点及び第2撮像画像特徴点に不適切な特徴点がないと判定した場合、又は誤検出した対応関係を除去した後に、一以上の第1撮像画像特徴点に対応する画素の第1画素値と、一以上の第1撮像画像特徴点それぞれに対応する一以上の第2撮像画像特徴点に対応する画素の第2画素値とが同じになるように第2画素値を補正する(S7)。そして、補正部139は、補正した第2画素値に基づいて、第2撮像画像における、補正した画素以外の画素である中間画素の画素値を補正する(S8)。
【0095】
[実施形態における効果]
以上説明したとおり、画像補正装置1は、取得した第1撮像画像及び第2撮像画像のそれぞれに、機械学習モデルMに含まれる複数の処理層を伝搬させる。画像補正装置1は、伝搬させた順とは逆の順序で後段処理層及び前段処理層の両方の処理層において共通に活性化している一以上の第1撮像画像出力及び一以上の第2撮像画像出力を、処理層ごとに抽出し、対応関係にある一以上の第1撮像画像特徴点及び一以上の第2撮像画像特徴点をそれぞれ検出する。そして、画像補正装置1は、検出した一以上の第1撮像画像特徴点及び一以上の第2撮像画像特徴点に基づいて、第2撮像画像に含まれる画素の画素値を補正する。
【0096】
このように、画像補正装置1は、畳み込みニューラルネットワークを含む機械学習モデルMを使用し、深層学習による抽象度が高い特徴量を求めることにより、第1撮像画像と第2撮像画像とが同じになるように第2撮像画像に含まれる画素の画素値を補正することができる。その結果、画像補正装置1は、複数の画像それぞれの色彩及び輝度が同等レベルになるように画素値を補正する精度を向上させることができる。
【0097】
画像補正装置1は、例えば、同じ被写体をそれぞれ異なる環境下で撮影した複数の画像(日中及び夜間等)を用いて、補正を示す情報(ルックアップテーブル)を自動車の自動運転技術に提供することにより、天候又は環境の変化に対して頑健な状況判断が可能となる。また、画像補正装置1は、例えば、全周囲画像に用いる、複数のカメラで撮影した複数の画像それぞれの画素の画素値が同じになるように補正することにより、スティッチングの境界が分からない自然な全周囲画像に合成することができる。また、画像補正装置1は、例えば、自由視点映像に用いる、複数のカメラで撮影した複数の映像それぞれの画素の画素値が同じになるように補正することにより、合成した自由始点映像の色ムラ及び輝度ムラ等を低減させることができる。
【0098】
また、画像補正装置1は、例えば、白飛び及び黒つぶれの少ない高階調画像(ハイダイナミックレンジイメージ)を生成するHDR(High Dynamic Range)合成に用いる、露光を変えつつ撮像された複数の画像それぞれの画素の画素値が同じになるように補正することにより、高精度なHDR合成を自動的に行うことができる。また、画像補正装置1は、例えば、記者会見等において多くのカメラフラッシュが写った映像に含まれる複数のフレームそれぞれの画素の画素値が同じになるように輝度補正することにより、カメラフラッシュの影響を除去した映像を合成することができる。
【0099】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されず、その要旨の範囲内で種々の変形及び変更が可能である。例えば、装置の分散・統合の具体的な実施の形態は、以上の実施の形態に限られず、その全部又は一部について、任意の単位で機能的又は物理的に分散・統合して構成することができる。また、複数の実施の形態の任意の組み合わせによって生じる新たな実施の形態も、本発明の実施の形態に含まれる。組み合わせによって生じる新たな実施の形態の効果は、もとの実施の形態の効果を合わせ持つ。
【符号の説明】
【0100】
1 画像補正装置
11 操作部
12 記憶部
13 制御部
131 画像取得部
132 伝搬制御部
133 抽出部
134 後段抽出部
135 前段抽出部
136 指示受付部
137 特徴点検出部
138 選択部
139 補正部