IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ JIG-SAW株式会社の特許一覧

特開2024-36374情報処理装置、情報処理方法、およびプログラム
<>
  • 特開-情報処理装置、情報処理方法、およびプログラム 図1
  • 特開-情報処理装置、情報処理方法、およびプログラム 図2
  • 特開-情報処理装置、情報処理方法、およびプログラム 図3
  • 特開-情報処理装置、情報処理方法、およびプログラム 図4
  • 特開-情報処理装置、情報処理方法、およびプログラム 図5
  • 特開-情報処理装置、情報処理方法、およびプログラム 図6
  • 特開-情報処理装置、情報処理方法、およびプログラム 図7
  • 特開-情報処理装置、情報処理方法、およびプログラム 図8
  • 特開-情報処理装置、情報処理方法、およびプログラム 図9
  • 特開-情報処理装置、情報処理方法、およびプログラム 図10
  • 特開-情報処理装置、情報処理方法、およびプログラム 図11
  • 特開-情報処理装置、情報処理方法、およびプログラム 図12
  • 特開-情報処理装置、情報処理方法、およびプログラム 図13
  • 特開-情報処理装置、情報処理方法、およびプログラム 図14
  • 特開-情報処理装置、情報処理方法、およびプログラム 図15
  • 特開-情報処理装置、情報処理方法、およびプログラム 図16
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024036374
(43)【公開日】2024-03-15
(54)【発明の名称】情報処理装置、情報処理方法、およびプログラム
(51)【国際特許分類】
   H04N 23/60 20230101AFI20240308BHJP
   H04N 23/67 20230101ALI20240308BHJP
   G06T 5/90 20240101ALI20240308BHJP
   G06T 5/40 20060101ALI20240308BHJP
【FI】
H04N23/60 500
H04N23/67
G06T5/90
G06T5/40
【審査請求】有
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2024005233
(22)【出願日】2024-01-17
(62)【分割の表示】P 2022072261の分割
【原出願日】2022-04-26
(71)【出願人】
【識別番号】514098034
【氏名又は名称】JIG-SAW株式会社
(74)【代理人】
【識別番号】100141139
【弁理士】
【氏名又は名称】及川 周
(74)【代理人】
【識別番号】100145481
【弁理士】
【氏名又は名称】平野 昌邦
(74)【代理人】
【識別番号】100181722
【弁理士】
【氏名又は名称】春田 洋孝
(72)【発明者】
【氏名】石川 敏郎
(57)【要約】
【課題】映像信号のダイナミックレンジを補正することのできる情報処理装置を提供する。
【解決手段】情報処理装置は、複数の画素により示される全体を1つの画像とし、前記画像における輝度のヒストグラムである第1ヒストグラムを特定する第1処理部と、前記第1ヒストグラムにおける調整量を設定する第2処理部と、前記調整量に基づいて、前記第1ヒストグラムのピーク付近の一部を前記第1ヒストグラムから減じ、前記第1ヒストグラムのピークが少なくとも相対的に低い領域に、前記一部に対応するヒストグラムを移動させることにより、第2ヒストグラムを生成する第3処理部と、を備える。
【選択図】図2
【特許請求の範囲】
【請求項1】
複数の画素により示される全体を1つの画像とし、前記画像における輝度のヒストグラムである第1ヒストグラムを特定する第1処理部と、
前記第1ヒストグラムにおける調整量を設定する第2処理部と、
前記調整量に基づいて、前記第1ヒストグラムのピーク付近の一部を前記第1ヒストグラムから減じ、前記第1ヒストグラムのピークが少なくとも相対的に低い領域に、前記一部に対応するヒストグラムを移動させることにより、第2ヒストグラムを生成する第3処理部と、
を備える情報処理装置。
【請求項2】
輝度を示す第1信号、第1の色に係る第2信号、および第2の色に係る第3信号、または、前記第1信号、前記第2信号、前記第3信号、および第3の色に係る第4信号について信号処理する情報処理装置であって、
前記第2ヒストグラムに基づいて、前記第1信号が示す輝度を変更した第5信号を生成する第4処理部と、
前記第1信号、前記第2信号、および前記第3信号について信号処理する場合、前記第4処理部による前記輝度の変更に応じて、前記第2信号から前記第1信号を減算した値を含む第1色差信号を、前記第2信号から前記第5信号を減算した値を含む第1色差信号に変更し、かつ前記第3信号から前記第1信号を減算した値を含む第2色差信号を、前記第3信号から前記第5信号を減算した値を含む第2色差信号に変更し、前記第1信号、前記第2信号、前記第3信号、および前記第4信号について信号処理する場合、前記第2信号、前記第3信号、および前記第4信号に基づいて、第1色差信号および第2色差信号を生成し、前記第4処理部による前記輝度の変更に基づいて、生成した前記第1色差信号および生成した前記第2色差信号を変更する第5処理部と、
を備える請求項1に記載の情報処理装置。
【請求項3】
前記第1信号、前記第2信号、および前記第3信号について信号処理する場合、
前記第5処理部は、
前記第4処理部が前記第1信号の輝度を所定数倍に変更することにより前記第5信号を生成した場合に、前記第2信号を前記所定数倍した信号から前記第5信号を減算した第9信号に基づいて前記第1色差信号を変更し、かつ、前記第3信号を前記所定数倍した信号から前記第5信号を減算した第10信号に基づいて前記第2色差信号を変更し、
前記第1信号、前記第2信号、前記第3信号、および前記第4信号について信号処理する場合、
前記第5処理部は、
前記第4処理部が前記第1信号の輝度を所定数倍に変更することにより前記第5信号を生成した場合に、前記第2信号、前記第3信号、および前記第4信号に基づいて生成した第1色差信号および生成した第2色差信号のそれぞれを、前記所定数倍することにより第11信号および第12信号を生成する、
請求項2に記載の情報処理装置。
【請求項4】
前記第4処理部は、
前記第1信号の輝度が低くなるにつれて前記第5信号の輝度を高くし、前記第1信号の輝度が高くなるにつれて前記第5信号の輝度を低くする、
請求項2または請求項3に記載の情報処理装置。
【請求項5】
前記第4処理部は、
前記第1信号の輝度が低くなるにつれて前記第5信号の輝度を高くし、前記第1信号の輝度が高くなるにつれて前記第5信号の輝度を低くする処理の演算を倍精度で実行する、
請求項4に記載の情報処理装置。
【請求項6】
Retinex理論を用いて画像を変更するRetinex手法を用いることにより、前記第1信号の輝度が低くなるにつれて前記第5信号の輝度を高くし、前記第1信号の輝度が高くなるにつれて前記第5信号の輝度を低くする、
請求項4に記載の情報処理装置。
【請求項7】
前記第3処理部が生成した第2ヒストグラムに基づいて輝度が補正された画像を用いてコントラストAutofocusの処理を行う第6処理部、
を備える、
請求項1に記載の情報処理装置。
【請求項8】
前記第3処理部が生成した第2ヒストグラムに基づいて輝度が補正された画像に基づいて、HDRの処理を行う第7処理部、
を備える、
請求項1に記載の情報処理装置。
【請求項9】
複数の画素により示される全体を1つの画像とし、前記画像における輝度のヒストグラムである第1ヒストグラムを特定することと、
前記第1ヒストグラムにおける調整量を設定することと、
前記調整量に基づいて、前記第1ヒストグラムのピーク付近の一部を前記第1ヒストグラムから減じ、前記第1ヒストグラムのピークが少なくとも相対的に低い領域に、前記一部に対応するヒストグラムを移動させることにより、第2ヒストグラムを生成することと、
を含む情報処理方法。
【請求項10】
コンピュータに、
複数の画素により示される全体を1つの画像とし、前記画像における輝度のヒストグラムである第1ヒストグラムを特定することと、
前記第1ヒストグラムにおける調整量を設定することと、
前記調整量に基づいて、前記第1ヒストグラムのピーク付近の一部を前記第1ヒストグラムから減じ、前記第1ヒストグラムのピークが少なくとも相対的に低い領域に、前記一部に対応するヒストグラムを移動させることにより、第2ヒストグラムを生成することと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置、情報処理方法、およびプログラムに関する。
【背景技術】
【0002】
インターネットの普及などにより、動画撮影が盛んに行われている。特許文献1、2には、関連する技術として、映像処理に関する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2001-069525号公報
【特許文献2】特開2008-048188号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、例えば、図16に示す情報処理システム1aのように、ISP(Image Signal Processor)によりbit深度が例えば20~24bitの処理を行った場合であっても、ディスプレイのbit深度がその処理のbit深度よりも低い(例えば、8~10bit)場合、映像処理もディスプレイのbit深度に合わせたbit深度で実行される。そのため、ディスプレイに表示される映像は、黒つぶれや白飛びを含み、視認性が劣化する可能性がある。
そのため、映像信号のダイナミックレンジを補正することのできる技術が求められている。
【0005】
本開示の各態様は、上記の課題を解決することのできる情報処理装置、情報処理方法、およびプログラムを提供することを目的としている。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本開示の一態様によれば、情報処理装置は、複数の画素により示される全体を1つの画像とし、前記画像における輝度のヒストグラムである第1ヒストグラムを特定する第1処理部と、前記第1ヒストグラムにおける調整量を設定する第2処理部と、前記調整量に基づいて、前記第1ヒストグラムのピーク付近の一部を前記第1ヒストグラムから減じ、前記第1ヒストグラムの値が少なくとも相対的に低い領域に、前記一部に対応するヒストグラムを移動させることにより、第2ヒストグラムを生成する第3処理部と、を備える。
【0007】
上記目的を達成するために、本開示の別の態様によれば、情報処理方法は、複数の画素により示される全体を1つの画像とし、前記画像における輝度のヒストグラムである第1ヒストグラムを特定することと、前記第1ヒストグラムにおける調整量を設定することと、前記調整量に基づいて、前記第1ヒストグラムのピーク付近の一部を前記第1ヒストグラムから減じ、前記第1ヒストグラムの値が少なくとも相対的に低い領域に、前記一部に対応するヒストグラムを移動させることにより、第2ヒストグラムを生成することと、を含む。
【0008】
上記目的を達成するために、本開示の別の態様によれば、プログラムは、コンピュータに、複数の画素により示される全体を1つの画像とし、前記画像における輝度のヒストグラムである第1ヒストグラムを特定することと、前記第1ヒストグラムにおける調整量を設定することと、前記調整量に基づいて、前記第1ヒストグラムのピーク付近の一部を前記第1ヒストグラムから減じ、前記第1ヒストグラムの値が少なくとも相対的に低い領域に、前記一部に対応するヒストグラムを移動させることにより、第2ヒストグラムを生成することと、を実行させる。
【発明の効果】
【0009】
本開示の各態様によれば、映像信号のダイナミックレンジを補正することができる。
【図面の簡単な説明】
【0010】
図1】本開示の一実施形態による情報処理システムの構成の一例を示す図である。
図2】本開示の一実施形態による情報処理装置の構成の一例を示す図である。
図3】本開示の一実施形態による第3処理部の処理の一例を説明するための図である。
図4】教師データの一例を示す図である。
図5図4とは異なる教師データの一例を示す図である。
図6】本開示の一実施形態による情報処理装置が行う全体の処理の処理フローの一例を示す図である。
図7】本開示の一実施形態による情報処理装置が行うステップS2の処理の処理フローの一例を示す図である。
図8】本開示の一実施形態による情報処理装置が行うステップS4の処理の処理フローの一例を示す図である。
図9】本開示の一実施形態による情報処理装置が行うステップS6の処理の処理フローの一例を示す図である。
図10】本開示の別の実施形態による情報処理装置の構成の一例を示す図である。
図11】本開示の別の実施形態による情報処理装置の構成の一例を示す図である。
図12】本開示の別の実施形態による第7処理部が行うHDRの処理の効果を説明するための第1の図である。
図13】本開示の別の実施形態による第7処理部が行うHDRの処理の効果を説明するための第2の図である。
図14】少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
図15】本開示の一実施形態による情報処理装置の実装の一例を示す図である。
図16】比較対象の情報処理システムの構成の一例を示す図である。
【発明を実施するための形態】
【0011】
以下、図面を参照しながら実施形態について詳しく説明する。
<実施形態>
(情報処理システムの構成)
図1は、本開示の一実施形態による情報処理システム1の構成の一例を示す図である。情報処理システム1は、図1に示すように、センサー10、ISP(Image Signal Processor)20、記憶装置30、映像処理装置40、情報処理装置50、AI(Artificial Intelligence)/CV(ComputerVision)60、およびディスプレイ70を備える。
【0012】
センサー10は、光信号を電気信号に変換することにより映像を取得する。センサー10の例としては、CMOS(Complementary Metal Oxide Semiconductor)センサー、CCD(Charge Coupled Device)センサーなどのイメージセンサーが挙げられる。
【0013】
ISP20は、センサー10によって変換された後の電気信号について、信号処理を行う。信号処理の例としては、黒レベル調整の処理、HDR(High Dynamic Range)の処理、利得/露光調整の処理、欠陥補正の処理、シェーディング補正の処理、ガンマ補正の処理、シャープネスの処理などが挙げられる。
【0014】
黒レベル調整の処理について説明する。センサー10が例えば1画素当たり12bitのデータで表すことのできるセンサーである場合、各画素の画素値は、4096段階の量子化レベル(0~4095)により表される。この量子化レベルは輝度を表し、黒レベルが輝度の基準となる。ISP20は、環境が変化した場合であっても黒レベルが同一になるように、輝度の基準を調整することにより、黒レベル調整の処理を実現する。
【0015】
HDRの処理について説明する。HDRの処理は、ダイナミックレンジを広げる処理である。ダイナミックレンジとは、画像において黒と白の輝度差の許容範囲を示す指標である。ISP20は、2つ以上の異なる露光時間で撮影した画像を合成することにより、1つの露光時間で実現可能なダイナミックレンジよりも広いダイナミックレンジを実現する。
【0016】
利得/露光調整の処理について説明する。利得/露光調整の処理は、センサー10が取り入れる光を調整する処理である。例えば、ISP20は、センサー10の露光時間を調整することにより、センサー10が取り入れる光を調整する。また、例えば、ISP20は、センサー10が取り入れる光が少ない場合、利得を上げ、センサー10に貯まっている電荷を増幅させることにより、多くの電荷が貯まっているように調整する。これにより露光時間が短い場合であっても光を取り入れた場合と同様の効果が得られる。
【0017】
欠陥補正の処理について説明する。欠陥補正の処理は、画素における欠陥を補正する処理である。センサー10の中には、画素に欠陥を持っており、画面を真っ暗にしても赤、青、または緑に発光する画素を含むものがある。そのような場合、例えば、その画素の欠陥がある座標をメモリに記憶しておき、ISP20は、その座標を周囲の画素を用いて補完することにより補正する。また、例えば、ISP20は、リアルタイムに撮影した画像において欠陥のある座標を識別し、識別した座標について周囲の画素を用いて補完することにより欠陥補正を実行する。
【0018】
シェーディング補正の処理について説明する。シェーディングとは、画面の中心における光量と、画面の周辺における光量との比のことである。シェーディング補正の処理は、その比を小さくする処理である。例えば、画面の中心の光量が多く、画面の周辺に行くにつれて光量が少ない場合、ISP20は、画面の周辺に行くにつれて、画面の中心の利得よりも徐々に利得が高くなるように調整することによりシェーディング補正を実行する。
【0019】
ガンマ補正の処理について説明する。ガンマ補正の処理は、入出力の輝度を変更し、画像としてはコントラストが変化したように見せる処理である。例えば、ISP20は、ガンマ値によって曲線が決定されるガンマカーブに基づいて、入力の輝度に対する出力の輝度を変化させることによりガンマ補正を実行する。
【0020】
シャープネスの処理について説明する。シャープネルの処理は、輪郭を強調する処理である。ISP20は、撮影した画像において輪郭を特定し、その輪郭を強調する処理を行う。
【0021】
記憶装置30は、画像データや動画データを記憶する。画像データの例としては、JPEG(Joint Photographic Experts Group)ファイルなどが挙げられる。また、動画データの例としては、MPEG-4規格の一部として策定されたMP4ファイルなどが挙げられる。
【0022】
映像処理装置40は、ISP20が出力する映像データ、記憶装置30が記憶する画像データや動画のデータについて、ISP20におけるbit深度(例えば、20~24bit)よりも低いbit深度(例えば、8~10ビット)で処理を行う。映像処理装置40は、処理後のデータをRGB信号として、情報処理装置50に出力する。
【0023】
情報処理装置50は、RGB信号について信号処理を行う。情報処理装置50が行う信号処理の詳細については、後述する。情報処理装置50は、信号処理後のデータをAI/CV60に出力する。情報処理装置50は、例えば、パーソナルコンピュータなどのコンピュータによって実現される。
【0024】
AI/CV60は、AI技術を用いて画像から有益な情報を抽出する所定の処理を実行する。有益な情報の例としては、認識された顔の情報、認識された物体の情報、認識された動線の情報などが挙げられる。所定の処理の例としては、顔を認識する処理、物体を認識する処理、動線を認識する処理などが挙げられる。なお、AI/CV60は、AI技術を用いないアプリケーションについての処理を行うものであってもよい。AI/CV60は、情報処理装置50から受けたデータをディスプレイ70に出力する。
【0025】
ディスプレイ70は、AI/CV60が出力したデータ(すなわち、情報処理装置50による信号処理後のデータ)を表示する。
【0026】
(情報処理装置の構成)
ここで、情報処理装置50について説明する。図2は、本開示の一実施形態による情報処理装置50の構成の一例を示す図である。情報処理装置50は、図2に示すように、第1処理部501、第2処理部502、第3処理部503、第4処理部504、および第5処理部505を備える。以下、Y信号(第1信号の一例)は、輝度Yを示す信号であるものとする。また、R信号(第2信号の一例)は、赤(第1の色の一例)に係る信号であるものとする。また、B信号(第3信号の一例)は、青(第2の色の一例)に係る信号であるものとする。また、G信号(第4信号の一例)は、緑(第3の色の一例)に係る信号であるものとする。情報処理装置50は、Y信号、R信号、およびB信号、または、Y信号、R信号、B信号、およびG信号について信号処理する。情報処理装置50は、ディスプレイ70に入力する映像信号のダイナミックレンジを補正することのできる装置である。
【0027】
第1処理部501は、RGB信号をY信号、色差信号Xr、および色差信号Xbに変換する。第1処理部501は、複数の画素により示される画像をM×Nに分割し(例えば、画像を1×1に分割して全体を1つの画像とし)、その分割後の各画像における輝度(すなわち、Y信号)のヒストグラムである第1ヒストグラムYを特定する。
【0028】
第2処理部502は、第1処理部501が特定する第1ヒストグラムYにおけるClip値(調整量の一例)を設定する。Clip値とは、第1ヒストグラムYのピーク付近の一部yを第1ヒストグラムYから1度で減じる量を規定する量のことである。このClip値は、予め決定された値であってもよい。また、このClip値は、処理が行われる度に、ユーザが決定するものであってもよい。
【0029】
第3処理部503は、Clip値に基づいて、第1ヒストグラムYのピーク付近の一部yを第1ヒストグラムYから減じる。そして、第3処理部503は、第1ヒストグラムYの値が少なくとも相対的に低い領域に、減じた第1ヒストグラムYの一部yに対応するヒストグラムy1を移動させる。なお、第1ヒストグラムYの値が少なくとも相対的に低い領域は、第1ヒストグラムYのピーク付近の一部yを減じた領域を含み得る。第3処理部503が行うヒストグラムy1を移動させるこの処理の例としては、適応的ヒストグラム均等化法(Contrast Limited Adaptive Histogram Equalizer;CLAHE)などが挙げられる。この処理を必要な回数だけ繰り返すことにより、第3処理部503は、輝度のヒストグラムである第2ヒストグラムY1を生成したことになる。
【0030】
図3は、本開示の一実施形態による第3処理部503の処理によるヒストグラムの変化の一例を示す図である。図3における(a)の部分は、第1処理部501が特定した第1ヒストグラムYを示している。また、図3における(b)の部分は、第3処理部503が、第1ヒストグラムYの値が少なくとも相対的に低い領域に、第1ヒストグラムYのピーク付近の一部yに対応するヒストグラムy1を移動させた後の輝度のヒストグラムである第2ヒストグラムY1を示している。なお、第1ヒストグラムYの値が相対的に低い領域には、第1ヒストグラムYが存在しない領域が含まれる。図3における(b)の部分からわかるように、第3処理部503により、第1ヒストグラムYのピーク付近の値は低減され、第1ヒストグラムYの値が少なくとも相対的に低い領域の値が増大される。つまり、第3処理部503による平坦化の処理では、Clip値および処理の繰り返し回数(すなわち、上述の「必要な回数」)により平坦化の度合いを調整することができる。平坦化の度合いを調整できない一般的なヒストグラムの平坦化手法を用いた場合には過度の平坦化が行われる可能性があり、画像全体が白くなり過ぎる可能性がある。しかしながら、第3処理部503では、そのような過度の平坦化を抑制することができ、画像全体が白くなり過ぎることを防ぐことができる。
【0031】
なお、処理の繰り返し回数は、処理が1回行われる度に、ユーザが画像を確認して所望の画像になったと判定したところで処理を停止することにより決定されるものであってもよい。また、処理の繰り返し回数は、予め決定されるものであってもよい。
【0032】
また、処理の繰り返し回数は、Clip値とともに、AI技術を用いて決定されるものであってもよい。例えば、第3処理部503は、機械学習の1つである教師データを用いてパラメータを決定した学習済みモデル(例えば、畳み込みニューラルネットワーク)を用いることにより、処理の繰り返し回数およびClip値を予測する。ここで、第3処理部503がそれぞれの予測に用いる学習済みモデルについて説明する。
【0033】
(学習済みモデル)
学習済みモデルについて説明する。第3処理部503は、ヒストグラムの平坦化前の画像データと、ヒストグラムの平坦化後の画像データとに基づいて、処理の繰り返し回数およびClip値を予測するものである。ここでは、第3処理部503が、ヒストグラムの平坦化前の画像データと、ヒストグラムの平坦化後の画像データとに基づいて、処理の繰り返し回数およびClip値を予測する場合の学習済みモデルについて説明する。
【0034】
この場合、平坦化前の画像データが入力の1つとなる。また、その画像データに対して実際に設定したClip値、その画像データに対して実際に行った処理の繰り返し回数、および、その画像データに対して実際に処理を行って得られたヒストグラムの平坦化後の画像データが出力データの1つとなる。そして、入力データとその入力データに対応する出力データとの組み合わせが教師データの1つとなる。例えば、第3処理部503により処理の繰り返し回数およびClip値を予測する前に、他の装置が処理の繰り返し回数およびClip値の予測に使用した入力データについて、出力データ(すなわち、平坦化前の画像データに対して実際に設定したClip値、その画像データに対して実際に行った処理の繰り返し回数、および、その画像データに対して実際に処理を行って得られたヒストグラムの平坦化後の画像データ)を特定する。または、例えば、実験やシミュレーションなどを行うことにより、入力データについて、出力データを特定する。このように、入力データと出力データとを組み合わせた複数のデータから成る教師データを用意することができる。なお、教師データとは、パラメータの値が決定されていない学習モデルにおいて、パラメータの値を決定するために使用されるデータである。
【0035】
図4は、教師データの一例を示す図である。平坦化前の画像データである入力データと、その入力データに対する出力データ(すなわち、平坦化前の画像データに対して実際に設定したClip値、その画像データに対して実際に行った処理の繰り返し回数、および、その画像データに対して実際に処理を行って得られたヒストグラムの平坦化後の画像データ)とが1組のデータとなる。図4に示す例では、教師データは、10000組のデータを含む。
【0036】
例えば、図4に示す10000組のデータから成る教師データを用いて学習モデルにおけるパラメータを決定する場合を考える。この場合、教師データは、例えば、訓練データと、評価データと、テストデータとに分けられる。訓練データと、評価データと、テストデータとの割合の例としては、70%、15%、15%や95%、2.5%、2.5%などが挙げられる。例えば、データ#1~#10000の教師データが、訓練データとしてデータ#1~#7000、評価データとしてデータ#7001~#8500、テストデータ15%としてデータ#8501~#10000に分けられたとする。この場合、訓練データであるデータ#1を学習モデルである畳み込みニューラルネットワークに入力する。畳み込みニューラルネットワークは、平坦化前の画像データに対して実際に設定したClip値、その画像データに対して実際に行った処理の繰り返し回数、および、その画像データに対して実際に処理を行って得られたヒストグラムの平坦化後の画像データを出力する。訓練データの入力データが畳み込みニューラルネットワークに入力され、平坦化前の画像データに対して実際に設定したClip値、その画像データに対して実際に行った処理の繰り返し回数、および、その画像データに対して実際に処理を行って得られたヒストグラムの平坦化後の画像データが畳み込みニューラルネットワークから出力される度に(この場合、データ#1~#7000のそれぞれのデータが畳み込みニューラルネットワークに入力される度に)、その出力に応じて例えばバックプロパゲーションを行うことにより、ノード間のデータの結合の重み付けを示すパラメータを変更する(すなわち、畳み込みニューラルネットワークのモデルを変更する)。このように、訓練データをニューラルネットワークに入力してパラメータを調整する。
【0037】
次に、訓練データによってパラメータが変更された畳み込みニューラルネットワークに、評価データの入力データ(データ#7001~#8500)を順に入力する。畳み込みニューラルネットワークは、入力された評価データに応じて、平坦化前の画像データに対して実際に設定したClip値、その画像データに対して実際に行った処理の繰り返し回数、および、その画像データに対して実際に処理を行って得られたヒストグラムの平坦化後の画像データを出力する。ここで、畳み込みニューラルネットワークが出力するデータが、図4において入力データに関連付けられている出力データと異なる場合、畳み込みニューラルネットワークの出力が図4において入力データに関連付けられている出力データとなるようにパラメータを変更する。このように、パラメータが決定された畳み込みニューラルネットワーク(すなわち、学習モデル)が、学習済みモデルである。
【0038】
次に、最終確認として、学習済みモデルの畳み込みニューラルネットワークに、テストデータ(データ#8501~#10000)の入力データを順に入力する。学習済みモデルの畳み込みニューラルネットワークは、入力されたテストデータに応じて、平坦化前の画像データに対して実際に設定したClip値、その画像データに対して実際に行った処理の繰り返し回数、および、その画像データに対して実際に処理を行って得られたヒストグラムの平坦化後の画像データを出力する。すべてのテストデータに対して、学習済みモデルの畳み込みニューラルネットワークが出力する出力データが、図4において入力データに関連付けられている出力データと一致する場合、学習済みモデルの畳み込みニューラルネットワークが所望のモデルである。また、テストデータのうちの1つでも、学習済みモデルの畳み込みニューラルネットワークが出力する出力データが、図4において入力データに関連付けられている出力データと一致しない場合、新たな教師データを用いて学習モデルのパラメータを決定する。上述の学習モデルのパラメータの決定は、所望のパラメータを有する学習済みモデルが得られるまで繰り返される。所望のパラメータを有する学習済みモデルが得られた場合、その学習済みモデルが第3処理部503に記録される。
【0039】
なお、上述の第3処理部503が処理の繰り返し回数およびClip値を予測する学習済みモデルでは、平坦化前の画像データが入力データであり、その平坦化前の画像データに対して実際に設定したClip値、その画像データに対して実際に行った処理の繰り返し回数、および、その画像データに対して実際に処理を行って得られたヒストグラムの平坦化後の画像データが出力データであるものとして説明した。しかしながら、第3処理部503が処理の繰り返し回数およびClip値を予測する学習済みモデルでは、平坦化前の画像データに加えてまたは代わって第1ヒストグラムYを入力データとし、その平坦化前の画像データに対して実際に処理を行って得られたヒストグラムの平坦化後の画像データに加えてまたは代わって第2ヒストグラムY1を出力データとし、さらに、その平坦化前の画像データに対して実際に設定したClip値、および、その平坦化前の画像データに対して実際に行った処理の繰り返し回数を出力データとするものであってもよい。そして、これらの入力データと出力データとを1組のデータとし、例えば、10000組のデータを用意する。図5は、図4とは異なる教師データの一例を示す図である。この10000組のデータを用いて、学習モデルのパラメータを決定して学習済みモデルとして第3処理部503に記録する。そして、第3処理部503は、この学習済みモデルを用いて、処理の繰り返し回数およびClip値を予測するものであってもよい。
【0040】
第4処理部504は、第2ヒストグラムY1に基づいて、Y信号が示す輝度を変更したY1信号(第5信号の一例)を生成する。具体的には、第4処理部504は、各画素に対応する第2ヒストグラムY1の輝度を、Y1信号として生成する。なお、第4処理部504は、Y信号の輝度が低くなるにつれてY1信号の輝度を高くし、Y信号の輝度が高くなるにつれてY1信号の輝度を低くするものであってもよい。
【0041】
第5処理部505は、情報処理装置50がY信号、R信号、およびB信号について信号処理する場合、第4処理部504による輝度Yから輝度Y1への変更に応じて、R信号からY信号を減算した値を含む第1色差信号Xrを、R信号からY1信号を減算した値を含む第1色差信号Xr1に変更する。また、第5処理部505は、情報処理装置50がY信号、R信号、およびB信号について信号処理する場合、第4処理部504による輝度Yから輝度Y1への変更に応じて、B信号からY信号を減算した第2色差信号Xbを、B信号からY1信号を減算した値を含む第2色差信号Xb1に変更する。
【0042】
具体的には、情報処理装置50がY信号、R信号、およびB信号について信号処理する場合、第5処理部505は、各画素について、R信号からY信号を減算した値を含む第1色差信号Xrを、R信号からY1信号を減算した値を含む第1色差信号Xr1に変更する。また、具体的には、情報処理装置50がY信号、R信号、およびB信号について信号処理する場合、第5処理部505は、各画素について、B信号からY信号を減算した値を含む第2色差信号Xbを、B信号からY1信号を減算した値を含む第2色差信号Xb1に変更する。なお、情報処理装置50が扱う映像信号が、SD(Standard Definition)映像である場合、第1色差信号Xrは色差信号Crであり、第2色差信号Xbは色差信号Cbである。また、情報処理装置50が扱う映像信号がHD(High Definition)映像である場合、第1色差信号Xrは色差信号Prであり、第2色差信号Xbは色差信号Pbである。
【0043】
より具体的には、情報処理装置50がSD映像であるY信号、R信号、およびB信号について信号処理する場合、第5処理部505は、第4処理部504がY信号の輝度を所定数倍に変更することによりY1信号を生成した場合に、R信号を所定数倍した信号からY1信号を減算した信号(第9信号の一例)に基づいて第1色差信号Xrを変更する。また、第5処理部505は、B信号を所定数倍した信号からY1信号を減算した信号(第10信号の一例)に基づいて第2色差信号Xbを変更する。例えば、第5処理部505は、各画素について、式(1)によって表される第1色差信号Crを、式(2)によって表される第1色差信号Cr1に変更する。また、第5処理部505は、各画素について、式(3)によって表される第2色差信号Cbを、式(4)によって表される第2色差信号Cb1に変更する。
【0044】
【数1】
【0045】
【数2】
【0046】
【数3】
【0047】
【数4】
【0048】
また、情報処理装置50がHD映像であるY信号、R信号、およびB信号について信号処理する場合、第5処理部505は、第4処理部504がY信号の輝度を所定数倍に変更することによりY1信号を生成した場合に、R信号、B信号、およびG信号に基づいて生成した第1色差信号Xrおよび生成した第2色差信号Xbのそれぞれを、所定数倍することにより第1色差信号Xr1(第11信号の一例)および第2色差信号Xb1(第12信号の一例)を生成する。例えば、第5処理部505は、各画素について、式(5)によって表される第1色差信号Prを、式(6)によって表される第1色差信号Pr1に変更する。また、第5処理部505は、各画素について、式(7)によって表される第2色差信号Pbを、式(8)によって表される第2色差信号Pb1に変更する。
【0049】
【数5】
【0050】
【数6】
【0051】
【数7】
【0052】
【数8】
【0053】
なお、値α(所定数の一例)は、輝度Y1を輝度Yで除算したものである。
【0054】
また、第5処理部505は、情報処理装置50がY信号、R信号、B信号、およびG信号について信号処理する場合、R信号、B信号、およびG信号に基づいて、第1色差信号Xrおよび第2色差信号Xbを生成する。そして、第5処理部505は、第4処理部504による輝度Yから輝度Y1への変更に基づいて、生成した第1色差信号Xrを第1色差信号Xr1に変更する。また、第5処理部505は、第4処理部504による輝度Yから輝度Y1への変更に基づいて、生成した第2色差信号Xbを第2色差信号Xb1に変更する。なお、情報処理装置50が扱う映像信号が、SD映像である場合、第1色差信号Xrは色差信号Crであり、第2色差信号Xbは色差信号Cbである。また、情報処理装置50が扱う映像信号がHD映像である場合、第1色差信号Xrは色差信号Prであり、第2色差信号Xbは色差信号Pbである。
【0055】
具体的には、情報処理装置50がSD映像であるY信号、R信号、B信号、およびG信号について信号処理する場合、第5処理部505は、各画素について、式(9)によって表される第1色差信号Crを、式(10)によって表される第1色差信号Cr1に変更する。また、第5処理部505は、各画素について、式(11)によって表される第2色差信号Cbを、式(12)によって表される第2色差信号Cb1に変更する。
【0056】
【数9】
【0057】
【数10】
【0058】
【数11】
【0059】
【数12】
【0060】
また、情報処理装置50がHD映像であるY信号、R信号、B信号、およびG信号について信号処理する場合、第5処理部505は、各画素について、式(13)によって表される第1色差信号Prを、式(14)によって表される第1色差信号Pr1に変更する。また、第5処理部505は、各画素について、式(15)によって表される第2色差信号Pbを、式(16)によって表される第2色差信号Pb1に変更する。
【0061】
【数13】
【0062】
【数14】
【0063】
【数15】
【0064】
【数16】
【0065】
なお、情報処理装置50は、上述した処理以外の処理についても実行し得る。なお、情報処理装置50が実行し得る上述した処理以外の処理を含めて、情報処理装置50が行う処理については、以下の処理フローの説明において詳細に説明する。
【0066】
次に、情報処理装置50が行う処理について、図6図9に示す処理フローを参照して説明する。
【0067】
(情報処理装置が行う処理)
図6は、本開示の一実施形態による情報処理装置50が行う全体の処理の処理フローの一例を示す図である。情報処理装置50がRGB信号を受けると、第1処理部501は、後述する信号処理の設定、後述する信号処理に必要なパラメータの設定や変更などを実行する(ステップS1)。例えば、低照度を補正する処理をRGB信号について実行するか、Y信号について実行するか、低照度を補正する処理を実行せずにスルーするかなどを設定する。スルーが設定された場合には、低照度を補正する処理は行われない。低照度を補正する処理の例としては、Retinex理論を用いて画像を変更する、SSR(Single Scale Retinex)手法を用いた処理などが挙げられる。Retinex手法を用いた処理では、例えば、Center/Surround model、すなわちlog(Y1/ガウシアンフィルター(Y1))のフィルタなどが用いられる。このRetinex手法を用いた処理は、Y信号の輝度が低くなるにつれてY1信号の輝度を高くし、Y信号の輝度が高くなるにつれてY1信号の輝度を低くする、すなわち、画像における輝度が低くなるにつれて輝度を高く補正し、画像における輝度が高くなるにつれて輝度を低く補正する処理である。なお、Retinex手法を用いた処理は、画像における輝度が低くなるにつれて輝度を高く補正し、画像における輝度が高くなるにつれて輝度を低く補正する処理となればよく、Center/Surround model、すなわちlog(Y1/ガウシアンフィルター(Y1))のフィルタなどを用いるものに限定するものではない。また、例えば、パラメータの1つであるClip値をユーザが指定する場合、第1処理部501は、ユーザによるClip値を指定する入力を受け、受けたClip値を設定する。また、第1処理部501は、ユーザが指定したパラメータの値が既に設定されている値と異なる場合、設定されているパラメータの値を、ユーザが指定したパラメータの値に変更する。Retinex手法を用いた処理を実行することにより、全体が暗く、撮像対象がわかりづらい画像を、撮像対象がわかりやすい画像に変更することができ、例えば、昼と夜とで撮影した画像であっても、画質の調整が不要になる。
【0068】
ステップS1の処理が終わると、第4処理部504は、RGB信号(第1処理部501がRGB信号について信号処理を行った場合には、信号処理後のRGB信号)について、低輝度の補正を実行する(ステップS2)。
【0069】
図7は、本開示の一実施形態による情報処理装置50が行うステップS2の処理の処理フローの一例を示す図である。ここで図7を参照して、ステップS2の処理において第4処理部504が行う低輝度を補正する処理について説明する。
【0070】
ステップS2の処理において、第4処理部504は、RGB信号について低輝度の補正を実行するか否かを判定する(ステップS201)。第4処理部504は、RGB信号について低輝度の補正を実行すると判定した場合(ステップS201においてYES)、SSR手法を用いた処理を実行する(ステップS202)。そして、第4処理部504は、V(明度)/S(彩度)を強調する処理を実行し、処理を実行した後の明度および彩度の変数を設定する(ステップS203)。また、第4処理部504は、RGB信号について低輝度の補正を実行しないと判定した場合(ステップS201においてNO)、ステップS203の処理に進める。
【0071】
ステップS2の処理が終わると、第1処理部501は、RGB信号をY信号、色差信号Xr、および色差信号Xbに変換する(ステップS3)。
【0072】
ステップS3の処理が終わると、情報処理装置50は、輝度のダイナミックレンジを補正する処理を実行する(ステップS4)。
【0073】
具体的には、第2処理部502は、第1処理部501が特定する第1ヒストグラムYにおけるClip値を設定する。第1処理部501は、複数の画素により示される画像をM×Nに分割し(例えば、画像を1×1に分割して全体を1つの画像とし)、その分割後の各画像における輝度(すなわち、Y信号)のヒストグラムである第1ヒストグラムYを特定する。第3処理部503は、Clip値に基づいて、第1ヒストグラムYのピーク付近の一部yを第1ヒストグラムYから減じる。そして、第3処理部503は、第1ヒストグラムYの値が少なくとも相対的に低い領域に、減じた第1ヒストグラムYの一部yに対応するヒストグラムy1を移動させる。この処理を必要な回数だけ繰り返すことにより、第3処理部503は、輝度のヒストグラムである第2ヒストグラムY1を生成したことになる。なお、処理の繰り返し回数は、処理が1回行われる度に、ユーザが画像を確認して所望の画像になったと判定したところで処理を停止することにより決定されるものであってもよい。また、処理の繰り返し回数は、予め決定されるものであってもよい。また、処理の繰り返し回数は、Clip値とともに、AI技術を用いて決定されるものであってもよい。例えば、第3処理部503は、機械学習の1つである教師データを用いてパラメータを決定した学習済みモデル(例えば、畳み込みニューラルネットワーク)を用いることにより、処理の繰り返し回数およびClip値を予測するものであってもよい。
【0074】
図8は、本開示の一実施形態による情報処理装置50が行うステップS4の処理の処理フローの一例を示す図である。ここで図8を参照して、ステップS4の処理において情報処理装置50が行う低輝度を補正する処理についてより詳細に説明する。
【0075】
ステップS4の処理において、第1処理部501は、複数の画素により示される画像を分割する分割数M×Nを設定する(ステップS401)。また、第2処理部502は、Clip値を設定する(ステップS401)。また、第3処理部503は、処理の繰り返し回数Lを設定する(ステップS401)。そして、第1処理部501は、複数の画素により示される画像をM×Nに分割して(例えば、画像を1×1に分割して全体を1つの画像として)輝度(すなわち、Y信号)についてヒストグラムの平坦化を行うとともに、後述する前段処理または後述する後段処理において前述の画像のM×Nの分割数に対して相対的に多く分割して(例えば、画像を8×8に分割して全体を64個の画像として)輝度についてヒストグラムの平坦化を行うことにより、分割後の各画像における輝度のヒストグラムである第1ヒストグラムYを特定する。
【0076】
第3処理部503は、M×Nに分割後の画像について前段処理(すなわち、分割数の多い画像の輝度についてヒストグラムの平坦化を行う処理)があるか否かを判定する(ステップS402)。第3処理部503は、前段処理があると判定した場合(ステップS402においてYES)、M×Nに分割した画像(例えば、8×8に分割した64個の画像)の輝度についてClip値を用いてヒストグラムの平坦化の処理を実行する(ステップS403)。つまり、ステップS403の処理は、後述するステップS404~ステップS407の処理を行う前に、この前段処理により画像全体についてヒストグラムの平坦化を細かく行っておくものである。そして、第3処理部503は、処理の繰り返し回数の終わりを判定するために用いる値INの初期値をゼロに設定する(ステップS404)。また、第3処理部503は、前段処理がないと判定した場合(ステップS402においてNO)、ステップS404の処理に進める。
【0077】
第3処理部503は、M×Nに分割した画像(例えば、画像を1×1に分割して全体を1つとして画像)の番号が1番目の画像からM×N番目の画像のそれぞれについて、第1ヒストグラムYの値が少なくとも相対的に低い領域に、減じた第1ヒストグラムYの一部yに対応するヒストグラムy1を移動させる(ステップS405)。第3処理部503は、値INに1を加える(ステップS406)。
【0078】
第3処理部503は、ステップS406の処理で定まる値INが処理の繰り返し回数Lから1を減じた値と同一であるか否かを判定する(ステップS407)。第3処理部503は、値INが処理の繰り返し回数Lから1を減じた値と異なると判定した場合(ステップS407においてNO)、ステップS405の処理に戻す。値INが処理の繰り返し回数Lから1を減じた値と同一であると第3処理部503が判定した場合(ステップS407においてYES)、第4処理部504は、第2ヒストグラムY1に基づいて、Y信号が示す輝度を変更したY1信号を生成する。第4処理部504は、後段処理(すなわち、分割数の多い画像の輝度についてヒストグラムの平坦化を行う処理)があるか否かを判定する(ステップS408)。第4処理部504は、後段処理があると判定した場合(ステップS408においてYES)、M×Nに分割した画像(例えば、8×8に分割した64個の画像)の輝度についてClip値を用いてヒストグラムの平坦化の処理を実行する(ステップS409)。つまり、ステップS409の処理は、ステップS404~ステップS407の処理を行った後に、この後段処理により画像全体についてヒストグラムの平坦化を細かく行うものである。そして、第4処理部504は、再調整が必要か否かを判定する(ステップS410)。例えば、第4処理部504は、予め設定された処理回数L-1に達したか否かを判定する。そして、第4処理部504は、予め設定した処理回数L-1に達していないと判定した場合、再調整が必要であると判定する。また、第4処理部504は、予め設定した処理回数L-1に達したと判定した場合、再調整は不要であると判定する。なお、第4処理部504は、所定の判定器を用いて、ヒストグラムの分布に基づいて、再調整の要否を判定するものであってもよい。第4処理部504は、再調整が必要であると判定した場合(ステップS410においてYES)、ステップS401の処理に戻す。また、第4処理部504は、再調整が不要であると判定した場合(ステップS410においてNO)、処理後の輝度を示すY1信号を出力する。
【0079】
なお、上述のように、画像のM×Nの分割数を少なくして(例えば、画像を1×1に分割して)、L-1回輝度のヒストグラムの平坦化の処理を繰り返すとともに、前段処理または後段処理により画像のM×Nの分割数を多くして(例えば、画像を8×8に分割して)1回輝度のヒストグラムの平坦化の処理を行うことにより、画像のM×Nの分割数を多くして(例えば、画像を8×8に分割して)L回輝度のヒストグラムの平坦化の処理を繰り返す場合に比べて、よりコントラスト比を大きくすることができる。
【0080】
なお、別の実施形態では、前段処理と後段処理の両方を行うものであってもよい。この場合、Retinex手法を用いた処理を行うことにより、輝度が適切に補正され、コントラスト比を大きくすることができる。また、別の実施形態では、前段処理と後段処理の両方を行わなくてもよい。この場合、相対的に分割数を少なくした画像(上記の例では、1×1に分割した画像)の輝度のヒストグラムを平坦化する処理回数を多くすることにより、コントラスト比を大きくすることができる。
【0081】
第4処理部504は、その他の輝度に関する処理がある場合その処理を実行する(ステップS5)。その他の輝度に関する処理の例としては、NR(Noise Reduction)、Sharpness、加重平均などの処理が挙げられる。
【0082】
ステップS5の処理が終わると、第4処理部504は、ステップS5の処理後のY1信号について、低輝度の補正を実行する(ステップS6)。このステップS6の低輝度を補正する処理は、Y1信号に対して行うものであるため、ステップS2のRGB信号について低輝度を補正する処理に比べて演算回数を低減させることができる。
【0083】
図9は、本開示の一実施形態による情報処理装置50が行うステップS6の処理の処理フローの一例を示す図である。ここで図9を参照して、ステップS6の処理において第4処理部504が行う低輝度を補正する処理について説明する。
【0084】
ステップS6の処理において、第4処理部504は、Y1信号について低輝度の補正を実行するか否かを判定する(ステップS601)。第4処理部504は、Y1信号について低輝度の補正を実行すると判定した場合(ステップS601においてYES)、SSR手法を用いた処理を実行する(ステップS602)。また、第4処理部504は、Y1信号について低輝度の補正を実行しないと判定した場合(ステップS601においてNO)、ステップS7の処理に進める。
【0085】
第5処理部505は、ステップS6の処理が行われたY1信号を、ステップS3の処理により得られたY信号で除算することにより、値αを特定する(ステップS7)。
【0086】
ステップS7の処理が終わると、情報処理装置50は、色差のダイナミックレンジを補正する処理を実行する(ステップS8)。
【0087】
具体的には、第5処理部505は、ステップS3の処理により得られた色差信号Xrおよび色差信号Xbについて、ステップS7の処理で得られた値αを用いて、情報処理装置50がSD映像信号を処理する場合には、式(2)および式(4)を用いることにより、色差信号Cr1および色差信号Cb1を特定する。また、第5処理部505は、ステップS3の処理により得られた色差信号Xrおよび色差信号Xbについて、ステップS7の処理で得られた値αを用いて、情報処理装置50がHD映像信号を処理する場合には、式(6)および式(8)を用いることにより、色差信号Pr1および色差信号Pb1を特定する。
【0088】
また、具体的には、第5処理部505は、情報処理装置50が受けたRGB信号について、ステップS7の処理で得られた値αを用いて、情報処理装置50がSD映像信号を処理する場合には、式(10)および式(12)を用いることにより、色差信号Cr1および色差信号Cb1を特定するものであってもよい。また、第5処理部505は、情報処理装置50が受けたRGB信号について、ステップS7の処理で得られた値αを用いて、情報処理装置50がHD映像信号を処理する場合には、式(14)および式(16)を用いることにより、色差信号Pr1および色差信号Pb1を特定するものであってもよい。
【0089】
第5処理部505は、ステップS6の処理が行われたY1信号、およびステップS8の処理により特定した色差信号Xr1、Xb1をRGB信号に変換する(ステップS9)。そして、第5処理部505は、再調整が必要か否かを判定する(ステップS10)。例えば、第5処理部505は、予め設定された処理回数に達したか否かを判定する。そして、第5処理部505は、予め設定した処理回数に達していないと判定した場合、再調整が必要であると判定する。また、第5処理部505は、予め設定した処理回数に達したと判定した場合、再調整は不要であると判定する。なお、第5処理部505は、所定の判定器を用いて、RGB信号に基づいて、再調整の要否を判定するものであってもよい。第5処理部505は、再調整が必要であると判定した場合(ステップS10においてYES)、ステップS1の処理に戻す。また、第5処理部505は、再調整が不要であると判定した場合(ステップS10においてNO)、変換後のRGB信号を出力する。
【0090】
以上、本開示の一実施形態による情報処理システム1について説明した。情報処理システム1における情報処理装置50は、第1処理部501、第2処理部502、および第3処理部503を備える。第1処理部501は、複数の画素により示される全体を1つの画像とし、画像における輝度のヒストグラムである第1ヒストグラムを特定する。第2処理部502は、第1ヒストグラムにおける調整量を設定する。第3処理部503は、調整量に基づいて、第1ヒストグラムのピーク付近の一部を第1ヒストグラムから減じ、第1ヒストグラムのピークが少なくとも相対的に低い領域に、前記一部に対応するヒストグラムを移動させることにより、第2ヒストグラムを生成する。
【0091】
こうすることにより、情報処理装置50は、映像信号のダイナミックレンジを補正することができる。
【0092】
また、こうすることにより、情報処理装置50は、RGBの3つの信号それぞれについて複雑な演算を実行せずに、輝度信号の1つについて複雑な演算を実行し、その演算結果のみを色差信号に適用することが可能である。その結果、RGBの3つの信号それぞれについて複雑な演算を実行する場合に比べて、輝度信号の1つについて複雑な演算を実行し、その演算結果のみを色差信号に適用することにより、情報処理装置50の演算量、つまりは、演算時間や演算に必要な消費電力を低減することができる。
【0093】
また、こうすることにより、RGBの3つの信号についてハードウェアにより処理を行う高価な専用のハードウェアではなく、情報処理装置50は、ソフトウェアにより処理を行うパーソナルコンピュータなどの汎用コンピュータにより実現することができる。
【0094】
また、こうすることにより、情報処理装置50は、ソフトウェアにより処理を行う比較的低ビットの処理(例えば、8ビット処理)を行う汎用コンピュータにより実現することができる。
【0095】
なお、本開示の別の実施形態では、情報処理装置50は、静止がおよび動画を撮影するカメラに搭載されるものであってもよい。図10は、本開示の別の実施形態による情報処理装置50の構成の一例を示す図である。例えば、情報処理装置50は、図10に示すように、第6処理部506を備える。第6処理部506は、カメラのコントラストAF(Autofocus)の処理を行う。コントラストAF(Autofocus)の処理とは、コントラストの大きいところを探してピントを合わせる処理のことである。情報処理装置50は、コントラスト比を大きくすることができる。そのため、この画像をカメラのコントラストAFの処理における画像として用いることにより、情報処理装置50によりコントラスト比を大きくする前の画像を用いる場合に比べて、第6処理部506は、被写体にピントを合わせやすくなる。
【0096】
なお、本開示の別の実施形態では、ISP20が行う処理の一部または全部は、情報処理装置50が行うものであってもよい。図11は、本開示の別の実施形態による情報処理装置50の構成の一例を示す図である。例えば、情報処理装置50は、図11に示すように、第7処理部507を備える。第7処理部507は、ISP20が行う処理の一部または全部を実行すればよい。こうすることにより、ISP20を簡易的で安価に実現することができるまたはISP20が不要になり、情報処理装置50は、汎用コンピュータが行うソフトウェアを変更することにより、ISP20が行う処理の一部または全部を実現することができる。
【0097】
なお、本開示の別の実施形態では、情報処理装置50は、HDRの処理を行うものであってもよい。例えば、情報処理装置50は、図11に示すように、第7処理部507を備える。第7処理部507は、HDRの処理を行えばよい。この場合、ISP20がHDRの処理を行った場合に発生する問題を回避することができる。図12は、本開示の別の実施形態による第7処理部507が行うHDRの処理の効果を説明するための第1の図である。図12は、例えば、ISP20が行う従来のHDRの処理の例を示している。図13は、本開示の別の実施形態による第7処理部507が行うHDRの処理の効果を説明するための第2の図である。図13は、第7処理部507が行うHDRの処理の例を示している。
【0098】
ISP20が行う従来のHDRの処理では、図12の(a)の部分に示すように、2つ以上の異なる露光時間で撮影した2フレームの画像を合成する。そのため、長時間の露光中に被写体が動く場合、短時間露光した画像と一致せず結果として、図12の(b)の部分に示すように、2つの被写体が重なった画像となってしまう。それに対して、第7処理部507が行うHDRの処理では、図13の(a)の部分に示すように、被写体ごとに短時間の露光による1フレームの画像処理となる。そのため、結果として、図13の(b)の部分に示すように、従来のHDRの処理のように2つの被写体が重なることはない。また、第7処理部507が行うHDRの処理は、短時間の露光の1フレーム処理であるため、従来のHDRの処理に比べて、ハイフレームレートの処理を実現することができる。
【0099】
なお、本開示の一実施形態では、第5処理部505は、ステップS6の処理が行われたY1信号、およびステップS8の処理により特定した色差信号Xr1、Xb1をRGB信号に変換するものとして説明した。しかしながら、本開示の別の実施形態では、第5処理部505は、情報処理装置50が受けたRGB信号のそれぞれ(すなわち、R信号、G信号、B信号のそれぞれ)に、ステップS7の処理で得られた値αを乗算することにより輝度を変更後の(コントラストを変更後の)RGB信号に変換するものであってもよい。
【0100】
なお、本開示の実施形態における処理は、適切な処理が行われる範囲において、処理の順番が入れ替わってもよい。
【0101】
本開示の実施形態について説明したが、上述の情報処理システム1、情報処理装置50、その他の制御装置は内部に、コンピュータシステムを有していてもよい。そして、上述した処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。コンピュータの具体例を以下に示す。
【0102】
図14は、少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。コンピュータ5は、図14に示すように、CPU6、メインメモリ7、ストレージ8、インターフェース9を備える。
【0103】
例えば、上述の情報処理システム1、情報処理装置50、その他の制御装置のそれぞれは、コンピュータ5に実装される。そして、上述した各処理部の動作は、プログラムの形式でストレージ8に記憶されている。CPU6は、プログラムをストレージ8から読み出してメインメモリ7に展開し、当該プログラムに従って上記処理を実行する。また、CPU6は、プログラムに従って、上述した各記憶部に対応する記憶領域をメインメモリ7に確保する。
【0104】
ストレージ8の例としては、HDD(Hard Disk Drive)、SSD(Solid State Drive)、磁気ディスク、光磁気ディスク、CD-ROM(Compact Disc Read Only Memory)、DVD-ROM(Digital Versatile Disc Read Only Memory)、半導体メモリ等が挙げられる。ストレージ8は、コンピュータ5のバスに直接接続された内部メディアであってもよいし、インターフェース9または通信回線を介してコンピュータ5に接続される外部メディアであってもよい。また、このプログラムが通信回線によってコンピュータ5に配信される場合、配信を受けたコンピュータ5が当該プログラムをメインメモリ7に展開し、上記処理を実行してもよい。少なくとも1つの実施形態において、ストレージ8は、一時的でない有形の記憶媒体である。
【0105】
また、上記プログラムは、前述した機能の一部を実現してもよい。さらに、上記プログラムは、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるファイル、いわゆる差分ファイル(差分プログラム)であってもよい。
【0106】
図15は、本開示の一実施形態による情報処理装置50の実装の一例を示す図である。情報処理装置50は、コンピュータ5に外付けのGPU(Graphics Processing Unit)50aを組み合わせて実装される。近年のCPU6は、複数コアを有しており、GPUを搭載しているものがほとんどである。このように情報処理装置50を実装した場合、並列性の高い処理であり、GPUを使用した並列プログラミング処理で対応できる。また、仕様がiGPUで対応可能な場合には、dGPUが不要(すなわち、外付けGPUが不要)であり、コストダウンが可能である。
【0107】
本開示のいくつかの実施形態を説明したが、これらの実施形態は、例であり、発明の範囲を限定しない。これらの実施形態は、発明の要旨を逸脱しない範囲で、種々の追加、省略、置き換え、変更を行ってよい。
【0108】
なお、上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
【0109】
(付記1)
複数の画素により示される全体を1つの画像とし、前記画像における輝度のヒストグラムである第1ヒストグラムを特定する第1処理部と、
前記第1ヒストグラムにおける調整量を設定する第2処理部と、
前記調整量に基づいて、前記第1ヒストグラムのピーク付近の一部を前記第1ヒストグラムから減じ、前記第1ヒストグラムのピークが少なくとも相対的に低い領域に、前記一部に対応するヒストグラムを移動させることにより、第2ヒストグラムを生成する第3処理部と、
を備える情報処理装置。
【0110】
(付記2)
輝度を示す第1信号、第1の色に係る第2信号、および第2の色に係る第3信号、または、前記第1信号、前記第2信号、前記第3信号、および第3の色に係る第4信号について信号処理する情報処理装置であって、
前記第2ヒストグラムに基づいて、前記第1信号が示す輝度を変更した第5信号を生成する第4処理部と、
前記第1信号、前記第2信号、および前記第3信号について信号処理する場合、前記第4処理部による前記輝度の変更に応じて、前記第2信号から前記第1信号を減算した値を含む第1色差信号を、前記第2信号から前記第5信号を減算した値を含む第1色差信号に変更し、かつ前記第3信号から前記第1信号を減算した値を含む第2色差信号を、前記第3信号から前記第5信号を減算した値を含む第2色差信号に変更し、前記第1信号、前記第2信号、前記第3信号、および前記第4信号について信号処理する場合、前記第2信号、前記第3信号、および前記第4信号に基づいて、第1色差信号および第2色差信号を生成し、前記第4処理部による前記輝度の変更に基づいて、生成した前記第1色差信号および生成した前記第2色差信号を変更する第5処理部と、
を備える付記1に記載の情報処理装置。
【0111】
(付記3)
前記第1信号、前記第2信号、および前記第3信号について信号処理する場合、
前記第5処理部は、
前記第4処理部が前記第1信号の輝度を所定数倍に変更することにより前記第5信号を生成した場合に、前記第2信号を前記所定数倍した信号から前記第5信号を減算した第9信号に基づいて前記第1色差信号を変更し、かつ、前記第3信号を前記所定数倍した信号から前記第5信号を減算した第10信号に基づいて前記第2色差信号を変更し、
前記第1信号、前記第2信号、前記第3信号、および前記第4信号について信号処理する場合、
前記第5処理部は、
前記第4処理部が前記第1信号の輝度を所定数倍に変更することにより前記第5信号を生成した場合に、前記第2信号、前記第3信号、および前記第4信号に基づいて生成した第1色差信号および生成した第2色差信号のそれぞれを、前記所定数倍することにより第11信号および第12信号を生成する、
付記2に記載の情報処理装置。
【0112】
(付記4)
前記第4処理部は、
前記第1信号の輝度が低くなるにつれて前記第5信号の輝度を高くし、前記第1信号の輝度が高くなるにつれて前記第5信号の輝度を低くする、
付記2または付記3に記載の情報処理装置。
【0113】
(付記5)
前記第4処理部は、
前記第1信号の輝度が低くなるにつれて前記第5信号の輝度を高くし、前記第1信号の輝度が高くなるにつれて前記第5信号の輝度を低くする処理の演算を倍精度で実行する、
付記4に記載の情報処理装置。
【0114】
(付記6)
Retinex理論を用いて画像を変更するRetinex手法を用いることにより、前記第1信号の輝度が低くなるにつれて前記第5信号の輝度を高くし、前記第1信号の輝度が高くなるにつれて前記第5信号の輝度を低くする、
付記4または付記5に記載の情報処理装置。
【0115】
(付記7)
前記第3処理部が生成した第2ヒストグラムに基づいて輝度が補正された画像を用いてコントラストAutofocusの処理を行う第6処理部、
を備える、
付記1から付記6の何れか1つに記載の情報処理装置。
【0116】
(付記8)
前記第3処理部が生成した第2ヒストグラムに基づいて輝度が補正された画像に基づいて、HDRの処理を行う第7処理部、
を備える、
付記1から付記7の何れか1つに記載の情報処理装置。
【0117】
(付記9)
複数の画素により示される全体を1つの画像とし、前記画像における輝度のヒストグラムである第1ヒストグラムを特定することと、
前記第1ヒストグラムにおける調整量を設定することと、
前記調整量に基づいて、前記第1ヒストグラムのピーク付近の一部を前記第1ヒストグラムから減じ、前記第1ヒストグラムのピークが少なくとも相対的に低い領域に、前記一部に対応するヒストグラムを移動させることにより、第2ヒストグラムを生成することと、
を含む情報処理方法。
【0118】
(付記10)
コンピュータに、
複数の画素により示される全体を1つの画像とし、前記画像における輝度のヒストグラムである第1ヒストグラムを特定することと、
前記第1ヒストグラムにおける調整量を設定することと、
前記調整量に基づいて、前記第1ヒストグラムのピーク付近の一部を前記第1ヒストグラムから減じ、前記第1ヒストグラムのピークが少なくとも相対的に低い領域に、前記一部に対応するヒストグラムを移動させることにより、第2ヒストグラムを生成することと、
を実行させるプログラム。
【符号の説明】
【0119】
1・・・情報処理システム
5・・・コンピュータ
6・・・CPU
7・・・メインメモリ
8・・・ストレージ
9・・・インターフェース
10・・・センサー
20・・・ISP
30・・・記憶装置
40・・・映像処理装置
50・・・情報処理装置
50a・・・外付けGPU
60・・・AI/CV
70・・・ディスプレイ
501・・・第1処理部
502・・・第2処理部
503・・・第3処理部
504・・・第4処理部
505・・・第5処理部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16