JP2024076886A - 画像処理装置、画像処理方法 - Google Patents

画像処理装置、画像処理方法 Download PDF

Info

Publication number
JP2024076886A
JP2024076886A JP2022188699A JP2022188699A JP2024076886A JP 2024076886 A JP2024076886 A JP 2024076886A JP 2022188699 A JP2022188699 A JP 2022188699A JP 2022188699 A JP2022188699 A JP 2022188699A JP 2024076886 A JP2024076886 A JP 2024076886A
Authority
JP
Japan
Prior art keywords
image
input image
dark channel
processing device
transmittance distribution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022188699A
Other languages
English (en)
Inventor
寿人 関根
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2022188699A priority Critical patent/JP2024076886A/ja
Priority to US18/515,433 priority patent/US20240177281A1/en
Publication of JP2024076886A publication Critical patent/JP2024076886A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/90Dynamic range modification of images or parts thereof
    • G06T5/94Dynamic range modification of images or parts thereof based on local image properties, e.g. for local contrast enhancement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/90Dynamic range modification of images or parts thereof
    • G06T5/92Dynamic range modification of images or parts thereof based on global image properties
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20172Image enhancement details
    • G06T2207/20192Edge enhancement; Edge preservation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20221Image fusion; Image merging

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Processing (AREA)

Abstract

【課題】 ハローを低減するための技術を提供すること。【解決手段】 入力画像に基づいて環境光を算出する。入力画像と環境光とに基づき、該入力画像における局所領域のカラーチャンネルの最小値を画素値とするダークチャンネル画像を生成し、該ダークチャンネル画像に基づいて大気の透過率分布を生成する。透過率分布を整形する処理を複数回行う。整形された整形済み透過率分布と、環境光と、に基づいて、入力画像のコントラストを補正した補正画像を生成する。【選択図】 図3

Description

本発明は、入力画像におけるコントラストを補正するための技術に関する。
監視カメラや車載カメラの分野において、カメラから被写体までの間に存在する霧などの影響により、撮像画像の視認性低下が問題となっている。これは、光が大気を通過する際に微小粒子成分によって光散乱することで、撮像画像のコントラストの低下が発生するためである。この現象は被写体までの距離によって散乱度合いが変化するため、被写体までの距離が混在するシーンの場合には、画像の局所領域ごとにコントラストの低下度合いの異なる画像となる。このようなコントラスト低下を補正する手法として、非特許文献1のような手法がある。非特許文献1では、霧などの影響によって黒浮きが発生すると仮定し、領域におけるカラーチャンネル最小画素値(以下、ダークチャンネル)から、大気の透過率分布を推定し、大気モデルに基づき、霧の影響を除去する(以下、霧除去)。また、非特許文献2では、透過率分布を階層的に合成することで、補正不足によって被写体の周辺が白くなる画質弊害(以下、ハロー)を低減し、視認性の向上を行う。
He et al. , Single Image Haze Removal Using Dark Channel Prior, IEEE Transactions on Pattern Analysis and Machine Intelligence, Sep. 9, 2010, pp. 2341-2353, vol. 33, Issue: 12, IEEE. Qiyuan Liang, City University of Hong Kong、"PYRAMID FUSION DARK CHANNEL PRIOR FOR SINGLE IMAGE DEHAZING"、Computer Vision and Pattern Recognition, arXiv:2105.10192
しかしながら、非特許文献1の手法では、ダークチャンネルによる透過率分布の推定結果が実際より低いと判定された領域ではハローが発生する。また、非特許文献2の手法では、画素ごとにハローが発生しやすい領域が異なるのに対し、全ての画素で一定の比率で透過率分布の合成を行うため、ハローの低減効果が低くなる。本発明では、ハローを低減するための技術を提供する。
本発明の一様態は、入力画像に基づいて環境光を算出する算出手段と、前記入力画像と前記環境光とに基づき、該入力画像における局所領域のカラーチャンネルの最小値を画素値とするダークチャンネル画像を生成し、該ダークチャンネル画像に基づいて大気の透過率分布を生成する第1生成手段と、前記透過率分布を整形する処理を複数回行う整形手段と、前記整形手段により整形された整形済み透過率分布と、前記環境光と、に基づいて、前記入力画像のコントラストを補正した補正画像を生成する第2生成手段とを備えることを特徴とする。
本発明によれば、ハローを低減することができる。
システムの構成例を示す図。 画像処理装置100のハードウェア構成例を示すブロック図。 画像処理部207の機能構成例を示すブロック図。 画像処理装置100が行う処理のフローチャート。 算出部303の機能構成例を示すブロック図。 算出部303が行う処理のフローチャート。 エッジ強度と距離境界との関係を示す図。 画像処理部207の機能構成例を示すブロック図。 画像処理装置100が行う処理のフローチャート。 距離境界とフィルタ適用回数との関係を示す図。 画像処理部207の機能構成例を示すブロック図。 画像処理装置100が行う処理のフローチャート。 解析部1104が行う処理のフローチャート。 解析部1104の機能構成例を示すブロック図。 分散vとフィルタ適用回数Nとの関係を示す図。
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
[第1の実施形態]
本実施形態では、入力画像に基づいて生成した「それぞれ異なる解像度のダークチャンネル画像(該入力画像における局所領域のカラーチャンネルの最小値を画素値とする画像)」を、該ダークチャンネル画像に基づいて推定した距離境界に基づいて合成し、該合成の結果に基づいて大気の透過率分布を求める。そして、該透過率分布に対してジョイントバイラテラルフィルタを反復適用して該透過率分布を整形し、該整形した透過率分布を用いて、入力画像のコントラストを補正した補正画像(距離境界において発生するハローを低減した補正画像)を生成する。
先ず、本実施形態に係るシステムの構成例について、図1を用いて説明する。図1に示す如く、本実施形態に係るシステムは、カメラ101と、画像処理装置100と、ディスプレイ103と、を有する。そして、カメラ101と画像処理装置100との間、画像処理装置100とディスプレイ103との間、は、HDMI(登録商標)やSDI(シリアルデジタルインターフェース)ケーブルなどの映像伝送ケーブル102を介して互いに通信可能に接続されている。なお、カメラ101と画像処理装置100との間、画像処理装置100とディスプレイ103との間、の接続方法については特定の接続方法に限らない。
先ず、カメラ101について説明する。カメラ101は、画像処理装置100からの指示に応じて、もしくは自立的に自身のパン、チルト、ズームを制御可能な撮像装置の一例であり、動画像もしくは静止画像を撮像する。カメラ101は、動画像を撮像する場合には、該動画像における各フレームの画像を撮像画像として出力し、静止画像を撮像する場合には、定期的もしくは不定期的に撮像した静止画像を撮像画像として出力する。カメラ101から出力された撮像画像は、映像伝送ケーブル102を介して画像処理装置100に入力画像として入力される。なお、カメラ101から出力された撮像画像は、不図示の通信路を介してディスプレイ103に出力して該ディスプレイ103に該撮像画像を表示しても良い。
次に、ディスプレイ103について説明する。ディスプレイ103は、液晶画面やタッチパネル画面を有し、画像処理装置100から出力された画像や文字を表示する。また、ディスプレイ103がタッチパネル画面を有している場合には、該タッチパネル画面に対するユーザからの操作入力は、不図示の通信路を介して画像処理装置100に通知される。
次に、画像処理装置100について説明する。画像処理装置100は、PC(パーソナルコンピュータ)、スマートフォン、タブレット端末装置、などのコンピュータ装置である。画像処理装置100のハードウェア構成例について、図2のブロック図を用いて説明する。
CPU201は、RAM202に格納されているコンピュータプログラムやデータを用いて各種の処理を実行する。これによりCPU201は、画像処理装置100全体の動作制御を行うと共に、画像処理装置100が行う処理として説明する各種の処理を実行もしくは制御する。
RAM202は、ROM203や外部記憶装置204からロードされたコンピュータプログラムやデータを格納するためのエリア、画像入力部206が通信I/F205を介してカメラ101から取得した入力画像を格納するためのエリア、を有する。さらにRAM202は、CPU201や画像処理部207が各種の処理を実行する際に用いるワークエリアを有する。このようにRAM202は、各種のエリアを適宜提供することができる。
ROM203には、画像処理装置100の設定データ、画像処理装置100の起動に係るコンピュータプログラムやデータ、画像処理装置100の基本動作に係るコンピュータプログラムやデータ、などが格納されている。
外部記憶装置204は、ハーディスクドライブ装置などの大容量情報記憶装置である。外部記憶装置204には、OS(オペレーティングシステム)、画像処理装置100が行う処理として説明する各種の処理をCPU201や画像処理部207に実行もしくは制御させるためのコンピュータプログラムやデータ、などが保存されている。外部記憶装置204に保存されているコンピュータプログラムやデータは、CPU201による制御に従って適宜RAM202にロードされ、CPU201や画像処理部207による処理対象となる。
なお、画像処理装置100は、外部記憶装置204に加えて、SSD、SDカード、USBメモリなどの記憶媒体に対するコンピュータプログラムやデータの読み書きを行う装置を有しても良い。
通信I/F205は、HDMIやSDIといったインターフェースであり、映像伝送ケーブル102を介してカメラ101やディスプレイ103との間のデータ通信を行うためのインターフェースである。
画像入力部206は、映像伝送ケーブル102を介してカメラ101から出力された撮像画像を入力画像として取得し、該取得した入力画像をRAM202や外部記憶装置204に格納/保存する。画像処理部207は、画像処理用のハードウェア回路である。
操作部209は、キーボード、マウス、タッチパネルなどのユーザインターフェースであり、ユーザが操作することで各種の指示をCPU201に対して入力することができる。画像出力部210は、画像処理装置100にて処理した画像を通信I/F205を介してディスプレイ103に対して出力する。
CPU201、RAM202、ROM203、外部記憶装置204、通信I/F205、画像入力部206、画像処理部207、操作部209、画像出力部210、はいずれもシステムバス211に接続されている。
画像処理部207の機能構成例を図3のブロック図に示す。以下では図3に示した機能部はいずれもハードウェアで実装されているものとして説明する。しかし、図3に示した機能部のうち1以上の機能部をソフトウェア(コンピュータプログラム)で実装しても良く、その場合、該1以上の機能部に対応するコンピュータプログラムをCPU201が実行することで、該1以上の機能部の機能が実現される。
カメラ101から取得した入力画像のコントラストを補正した補正画像を生成するために画像処理装置100が行う処理について、図4のフローチャートに従って説明する。
ステップS401では、CPU201は、ROM203や外部記憶装置204に格納/保存されている「以降の処理において用いる各種のパラメータ」をRAM202にロードする。
ステップS402では、画像入力部206は、カメラ101から映像伝送ケーブル102を介して出力された撮像画像を入力画像Iとして、通信I/F205を介して取得し、該取得した入力画像Iを画像処理部207に入力する。ここで、I(x,y,c)は、入力画像Iにおける画素位置(x、y)の画素の、カラーチャンネルcの画素値を表す。ここで、c=R、G、Bとする。
ステップS403では、変換部301は、入力画像Iを、輝度に対してリニア特性を示すリニアRGB画像I’に変換する。ここで、I’(x,y,c)は、リニアRGB画像I’における画素位置(x、y)の画素の、カラーチャンネルcの画素値を表す。
ステップS404では、算出部302は、リニアRGB画像I’を用いてカラーチャンネルcの環境光A(c)を算出する。環境光とは、太陽や空などからの光が霧によって散乱された光の成分である。ここで、A(c)は、カラーチャンネルcに対応する光の成分である。画像から環境光を算出する方法は周知であり、例えば、非特許文献1に記載の方法を用いて環境光を算出することが可能である。
ステップS405では、算出部303は、リニアRGB画像I’と環境光A(c)とを用いて、大気の透過率分布Tを算出する。ここで、T(x,y)は、入力画像I(リニアRGB画像I’)における画素位置(x、y)に対応する大気の透過率を表す。ステップS405における処理の詳細については後述する。
ステップS406では、整形部304は、ステップS405で算出された透過率分布Tに対して、探索範囲形状軽減のための整形処理を行って、整形済み透過率分布T’を生成する。ここで、T’(x,y)は、入力画像I(リニアRGB画像I’)における画素位置(x、y)に対応する大気の透過率を表す。ステップS406における処理の詳細については後述する。
ステップS407では、処理部305は、リニアRGB画像I’に対して、環境光A(c)と整形済み透過率分布T’とを用いて、以下の(式1)に従った処理を行うことで霧除去処理を行い、霧除去画像Jを生成する。
Figure 2024076886000002
ここで、J(x,y,c)は、霧除去画像Jにおける画素位置(x、y)の画素の、カラーチャンネルcの画素値を表す。また、tminはゼロ割を防ぐための規定の係数であり、本実施形態ではtmin=0.1とする。
ステップS408では、処理部306は、ステップS407で生成された霧除去画像Jに対してガンマ補正を行って、出力画像J’を生成する。ステップS409では、画像出力部210は、ステップS408で生成された出力画像J’を、通信I/F205を介してディスプレイ103に対して出力する。
ステップS410では、CPU201は、処理の終了条件が満たされたか否かを判断する。処理の終了条件には様々な条件が適用可能である。たとえば、「カメラ101の電源がオフになったことを検知した」、「カメラ101から入力画像を取得していない期間の長さが一定期間長以上となった」、「ユーザが操作部209を操作して処理の終了指示を入力したことを検知した」、などがある。
このような判断の結果、処理の終了条件が満たされた場合には、図4のフローチャートに従った処理は終了し、処理の終了条件が満たされていない場合には、処理はステップS402に進む。
次に、上記のステップS405における処理の詳細について説明する。算出部303の機能構成例を図5のブロック図に示す。図5に示す機能構成例を有する算出部303が行う処理(ステップS405の処理)について、図6のフローチャートに従って説明する。
ステップS601では、縮小処理部501は、リニアRGB画像I’の縦横サイズを1/2に縮小した縮小画像I2を生成する。ここで、I2(x,y,c)は、縮小画像I2における画素位置(x、y)の画素の、カラーチャンネルcの画素値を表す。
また、縮小処理部502は、リニアRGB画像I’の縦横サイズを1/4に縮小した縮小画像I3を生成する。ここで、I3(x,y,c)は、縮小画像I3における画素位置(x、y)の画素の、カラーチャンネルcの画素値を表す。
また、縮小処理部503は、リニアRGB画像I’の縦横サイズを1/8に縮小した縮小画像I4を生成する。ここで、I4(x,y,c)は、縮小画像I4における画素位置(x、y)の画素の、カラーチャンネルcの画素値を表す。
なお、縮小処理部501,502,503がリニアRGB画像I’から縮小画像を生成するために採用する方法は特定の方法に限らず、例えば、ニアネストネイバー法やバイリニア法を用いる。
算出部504は、リニアRGB画像I’と環境光A(c)とを用いて以下の(式2)に従った演算処理を行うことで、ダークチャンネル画像d1を生成する。ここで、d1(x,y)は、ダークチャンネル画像d1における画素位置(x、y)の画素の画素値を表す。
算出部505は、縮小画像I2と環境光A(c)とを用いて以下の(式2)に従った演算処理を行うことで、ダークチャンネル画像d2を生成する。ここで、d2(x,y)は、ダークチャンネル画像d2における画素位置(x、y)の画素の画素値を表す。
算出部506は、縮小画像I3と環境光A(c)とを用いて以下の(式2)に従った演算処理を行うことで、ダークチャンネル画像d3を生成する。ここで、d3(x,y)は、ダークチャンネル画像d3における画素位置(x、y)の画素の画素値を表す。
算出部507は、縮小画像I4と環境光A(c)とを用いて以下の(式2)に従った演算処理を行うことで、ダークチャンネル画像d4を生成する。ここで、d4(x,y)は、ダークチャンネル画像d4における画素位置(x、y)の画素の画素値を表す。
Figure 2024076886000003
ここで、Ω(h,v)は、ダークチャンネル画像を算出する矩形の局所領域であり、h、vは矩形範囲である。本実施形態では、着目画素周囲のh=3,v=3の領域に対してR,G,Bの最小値を算出し、着目画素位置の画素値を置き換える。
ステップS603では、拡大処理部508は、ダークチャンネル画像d2の縦横サイズを2倍に拡大した拡大画像d2’を求める。以下では、該拡大画像d2’をダークチャンネル画像d2と表記する。
また、拡大処理部509は、ダークチャンネル画像d3の縦横サイズを4倍に拡大した拡大画像d3’を求める。以下では、該拡大画像d3’をダークチャンネル画像d3と表記する。
また、拡大処理部510は、ダークチャンネル画像d4の縦横サイズを8倍に拡大した拡大画像d4’を求める。以下では、該拡大画像d4’をダークチャンネル画像d4と表記する。
拡大処理部508、509,510がダークチャンネル画像を拡大する方法ために採用する方法は特定の方法に限らず、例えば、ニアネストネイバー法やバイリニア法を用いる。
ステップS604では、推定部511は距離境界を推定する。距離境界とは、距離の異なる被写体の境界面のことである。一般的に、距離境界は被写体までの距離がわかっていなければ算出することはできない。しかしながら、非特許文献1において、霧が発生しているシーンにおいては被写体までの距離とダークチャンネルには相関があることが示されている。すなわち、ダークチャンネル画像のエッジ強度を抽出することで、距離境界を推定することができる。
そこで、推定部511は、ダークチャンネル画像d1における各画素について、該画素の8近傍に対してラプラシアンフィルタを適用して絶対値をとることで得た「該画素に対応するエッジ強度」を該画素の画素値として有するエッジ強度画像eを生成する。ここで、e(x,y)は、エッジ強度画像eにおける画素位置(x、y)の画素の画素値(エッジ強度)を表す。なお、エッジ強度画像を生成するために用いるフィルタはラプラシアンフィルタに限らず、例えば、ソーベルフィルタなどを用いても構わない。
さらに、推定部511は、エッジ強度画像eに対して最大値フィルタを適用することでエッジ領域を拡大させてエッジ強度画像e’を生成する。ここで、e’(x,y)は、エッジ強度画像e’における画素位置(x、y)の画素の画素値(エッジ強度)を表す。
そして推定部511は、図7に示す、エッジ強度と距離境界との関係に基づいて、エッジ強度画像e’に対応する距離境界マップBを生成する。推定部511は、図7に示す如く、エッジ強度e’(x,y)<閾値Setupの場合には、B(x、y)=0.0とし、エッジ強度e’(x,y)≧閾値Setupの場合には、B(x、y)=e’(x,y)xSlope(傾き)とする。また、推定部511は、B(x、y)>1.0となった場合には、B(x、y)=1.0に補正する。ここで、B(x、y)は、距離境界マップBの位置(x、y)における値(距離境界)を表す。なお、閾値SetupやSlopeは変換制御のパラメータであり、ステップS401にて設定される。
ステップS605では、合成部512は、ステップS604で生成された距離境界マップBを用いて以下の(式3)に従った演算を行う。これにより合成部512は、ダークチャンネル画像d1、d2、d3、d4(d2、d3、d4はステップS603で拡大されたダークチャンネル画像)を合成した合成ダークチャンネル画像Dを生成する。
Figure 2024076886000004
ここで、D(x,y)は、合成ダークチャンネル画像Dにおける画素位置(x、y)の画素の画素値を表す。また、th1,th2は0<th1<th2<1となる合成度合いを制御するためのパラメータであり、ステップS401にて設定される。
(式3)に示す如く、距離境界B(x,y)が大きくなるにつれて、小さい範囲から算出したダークチャンネル画像を用いる。一方、B(x,y)が小さくなるにつれて、大きい範囲から算出したダークチャンネル画像を用いる。これにより、距離境界において適切な探索範囲のダークチャンネル画像を設定することができる。
ステップS606では、処理部513は、ステップS605で生成された合成ダークチャンネル画像Dを用いて以下の(式4)に従った演算処理を行うことで、透過率分布Tを生成する。
Figure 2024076886000005
ここで、ωは0.0~1.0の範囲内で設定されるパラメータ(遠方にある被写体の透過率が大きくなりすぎるのを制御するためのパラメータ)であり、ステップS401にて設定される。
次に、上記のステップS406における処理の詳細について説明する。透過率分布Tには探索範囲形状が残留するため、このような透過率分布Tを用いてステップS407の霧除去処理を行うと、探索範囲形状のハローが発生する。そこで、整形部304は先ず、以下の(式5)を用いて、リニアRGB画像I’の輝度画像Yを生成する。
Figure 2024076886000006
ここで、Y(x,y)は、輝度画像Yにおける画素位置(x、y)の画素の画素値(輝度値)を表す。次に整形部304は、輝度画像Yを用いて以下の(式6)に従った処理、すなわち「透過率分布Tに対してジョイントバイラテラルフィルタをN(Nは2以上の整数)回反復適用して透過率分布Tを整形する処理」を行って、整形済み透過率分布T’を生成する。
Figure 2024076886000007
ここで、T=Tとする。また、h、vは処理対象画素を中心とした処理範囲であり、本実施形態ではh=v=5を設定する。また、Nはジョイントバイラテラルフィルタの繰り返し適用回数(フィルタ適用回数)でN≧2とする。フィルタ適用回数Nを多く設定することで、ハロー低減効果を向上することができる。このように、輝度画像をガイド画像として探索範囲形状軽減のための整形処理を行うことで、整形済み透過率分布T’を生成する。
なお、本実施形態では、ハローを低減する手法として、ジョイントバイラテラルフィルタを用いた処理を例に説明した。しかし、繰り返し適用することでエッジと平坦部を分離可能なフィルタ処理であれば、特定のフィルタ処理に限らず、例えば、ガイデットフィルタなどのフィルタを用いたフィルタ処理でも構わない。
このように本実施形態によれば、被写体の距離境界を推定した上で最適な解像度で合成された透過率分布に対し、複数回のフィルタ処理を反復適用する(透過率分布を整形する処理を複数回行う)ことで、距離境界に発生するハローを低減することが可能となる。
[第2の実施形態]
本実施形態を含む以下の各実施形態では、第1の実施形態との差分について説明し、以下で特に触れない限りは、第1の実施形態と同様であるものとする。第1の実施形態では、それぞれ異なるサイズの縮小画像に対応するダークチャンネル画像を距離境界に基づいて合成した合成ダークチャンネル画像に基づいて透過率分布を算出し、フィルタを複数回反復適用する方法について説明した。本実施形態では、リニアRGB画像I’に基づく1枚のダークチャンネル画像と距離境界とに基づき、領域ごとに異なる回数のフィルタを適用する方法について説明する。
本実施形態に係る画像処理部207の機能構成例を図8のブロック図に示す。以下では図8に示した機能部はいずれもハードウェアで実装されているものとして説明する。しかし、図8に示した機能部のうち1以上の機能部をソフトウェア(コンピュータプログラム)で実装しても良く、その場合、該1以上の機能部に対応するコンピュータプログラムをCPU201が実行することで、該1以上の機能部の機能が実現される。
カメラ101から取得した入力画像のコントラストを補正した補正画像を生成するために画像処理装置100が行う処理について、図9のフローチャートに従って説明する。図9において、図4に示した処理ステップと同じ処理ステップには同じステップ番号を付しており、該処理ステップに係る説明は省略する。
ステップS903では、変換部801は上記のステップS403と同様にして、入力画像IをリニアRGB画像I’に変換する。ステップS904では、算出部803は上記のステップS404と同様にして、リニアRGB画像I’を用いてカラーチャンネルcの環境光A(c)を算出する。
ステップS905では、算出部802は上記のステップS602と同様にして、リニアRGB画像I’と環境光A(c)とを用いて上記の(式2)に従った演算処理を行うことで、ダークチャンネル画像dを生成する。
ステップS906では、推定部804は上記のステップS604と同様にして、ダークチャンネル画像dから距離境界マップBを生成する。ステップS907では、算出部805は上記のステップS606と同様にして、ダークチャンネル画像dを、(式4)のDとして用いて(式4)に従った演算処理を行うことで、透過率分布Tを生成する。
ステップS908では、整形部806は、リニアRGB画像I’と距離境界マップBとを用いて透過率分布Tを整形し、ブロック形状を軽減した整形済み透過率分布T’を生成する。本実施形態においても、整形部806は第1の実施形態と同様に、(式5)に従ってリニアRGB画像I’の輝度画像Yを生成し、該輝度画像Yを用いて上記の(式6)に従った処理を行って、整形済み透過率分布T’を生成する。しかし、本実施形態では、整形部806は、フィルタ適用回数Nを、図10に例示した、距離境界とフィルタ適用回数との関係に基づいて決定する。
図10の場合、整形部806は、距離境界が0.0以上0.25未満であれば、フィルタ適用回数N=0とし、距離境界が0.25以上0.5未満であれば、フィルタ適用回数N=1とする。また、整形部806は、距離境界が0.5以上0.75未満であれば、フィルタ適用回数N=3とし、距離境界が0.75以上1.0未満であれば、フィルタ適用回数N=5とする。このように、本実施形態では、距離境界に応じたフィルタ適用回数Nを用いて上記の(式6)に従った処理を行って整形済み透過率分布T’を生成する。
ステップS909では、処理部807は上記のステップS407と同様、リニアRGB画像I’に対して、環境光A(c)と整形済み透過率分布T’とを用いて霧除去処理を行い、霧除去画像Jを生成する。
ステップS910では、処理部808は上記のステップS408と同様、ステップS909で生成された霧除去画像Jに対してガンマ補正を行って、出力画像J’を生成する。ステップS911では、画像出力部210は、ステップS910で生成された出力画像J’を、通信I/F205を介してディスプレイ103に対して出力する。
ステップS912では、CPU201は上記のステップS410と同様、処理の終了条件が満たされたか否かを判断する。このような判断の結果、処理の終了条件が満たされた場合には、図9のフローチャートに従った処理は終了し、処理の終了条件が満たされていない場合には、処理はステップS402に進む。
このように、本実施形態によれば、距離境界の大きさに応じてフィルタ適用回数を変化させるので、領域ごとに最適なフィルタ適用回数を設定することができる。これにより、被写体までの距離が一定で距離境界のない領域において、高速な処理が可能となる。
[第3の実施形態]
第2の実施形態では、距離境界マップに基づいて領域ごとにフィルタ適用回数を設定したが、本実施形態では、カメラ101により撮像するシーンの被写体までの距離や霧などのシーン特性に応じて、全体の最適なフィルタ適用回数を設定する。
本実施形態に係る画像処理部207の機能構成例を図11のブロック図に示す。以下では図11に示した機能部はいずれもハードウェアで実装されているものとして説明する。しかし、図11に示した機能部のうち1以上の機能部をソフトウェア(コンピュータプログラム)で実装しても良く、その場合、該1以上の機能部に対応するコンピュータプログラムをCPU201が実行することで、該1以上の機能部の機能が実現される。
カメラ101から取得した入力画像のコントラストを補正した補正画像を生成するために画像処理装置100が行う処理について、図12のフローチャートに従って説明する。図12において、図4に示した処理ステップと同じ処理ステップには同じステップ番号を付しており、該処理ステップに係る説明は省略する。
ステップS1203では、変換部1101は上記のステップS403と同様にして、入力画像IをリニアRGB画像I’に変換する。ステップS1204では、算出部1103は上記のステップS404と同様にして、リニアRGB画像I’を用いてカラーチャンネルcの環境光A(c)を算出する。
ステップS1205では、算出部1102は上記のステップS602と同様にして、リニアRGB画像I’と環境光A(c)とを用いて上記の(式2)に従った演算処理を行うことで、ダークチャンネル画像dを生成する。
ステップS1206では、解析部1104は、ステップS1205で生成したダークチャンネル画像dを用いてシーンの特性を解析し、該解析の結果に応じてフィルタ適用回数Nを算出する。ステップS1206における処理の詳細については後述する。
ステップS1207では、算出部1105は上記のステップS606と同様にして、合成ダークチャンネル画像dを、(式4)のDとして用いて(式4)に従った演算処理を行うことで、透過率分布Tを生成する。
ステップS1208では、整形部1106は、リニアRGB画像I’を用いて透過率分布Tを整形し、ブロック形状を軽減した整形済み透過率分布T’を生成する。本実施形態においても、整形部部1106は第1の実施形態と同様にして整形済み透過率分布T’を生成するが、フィルタ適用回数Nとして、ステップS1206にて算出されたフィルタ適用回数Nを適用する。
ステップS1209では、処理部1107は上記のステップS407と同様、リニアRGB画像I’に対して、環境光A(c)と整形済み透過率分布T’とを用いて霧除去処理を行い、霧除去画像Jを生成する。
ステップS1210では、処理部1108は上記のステップS408と同様、ステップS1209で生成された霧除去画像Jに対してガンマ補正を行って、出力画像J’を生成する。ステップS1211では、画像出力部210は、ステップS1210で生成された出力画像J’を、通信I/F205を介してディスプレイ103に対して出力する。
ステップS1212では、CPU201は上記のステップS410と同様、処理の終了条件が満たされたか否かを判断する。このような判断の結果、処理の終了条件が満たされた場合には、図12のフローチャートに従った処理は終了し、処理の終了条件が満たされていない場合には、処理はステップS402に進む。
ここで、解析部1104の機能構成例を図14のブロック図に示す。図14に示す機能構成例を有する解析部1104が行う処理(上記のステップS1206における処理)について、図13のフローチャートに従って説明する。
ステップS1301では、抽出部1401は、ダークチャンネル画像dのエッジ強度画像eを算出する。ここで、エッジ強度画像は上記のステップS604と同様に、ダークチャンネル画像dにおける各画素について、該画素の8近傍に対してラプラシアンフィルタを適用して絶対値をとることで得た「該画素に対応するエッジ強度」を該画素の画素値として有するエッジ強度画像eを生成する。
ステップS1302では、算出部1402は、ステップS1301で生成したエッジ強度画像eにおける画素値のヒストグラム分布H(i)(つまりエッジ強度の分布)を算出する。ここで、iは画素値を示し、H(i)はエッジ強度画像eにおいて画素値iを有する画素の数を表す。
ステップS1303では、算出部1403は、ステップS1302で算出したヒストグラム分布H(i)を用いて以下の(式7)に従った演算を行うことで、該ヒストグラム分布H(i)の分散vを算出する。
Figure 2024076886000008
ここで、右辺の括弧内の2項目は、H(1)~H(Z)(Zは画素値の数)の平均を表す。ステップS1304では、変換部1404は、ステップS1303で求めた分散vからフィルタ適用回数Nを決定する。
分散vが大きい場合は、ダークチャンネル画像のエッジが多いことを意味する。つまり、ハローが発生しやすいため、分散vとフィルタ適用回数Nとの関係を示す図15に示すように、フィルタ適用回数Nを多く設定することでハローの低減効果を強く設定する。一方、分散vが小さい場合には、ダークチャンネル画像のエッジが少ないことを意味する。つまり、ハローが発生しづらいため、図15に示すように、フィルタ適用回数Nを少なく設定する。
つまり変換部1404は、分散v=v1の場合には、フィルタ適用回数NをN1と決定し、分散v=v2(>v1)の場合には、フィルタ適用回数NをN2(>N1)と決定する。なお、分散vが大きいほどより大きいフィルタ適用回数Nを決定し、分散vが小さいほどより小さいフィルタ適用回数Nを決定するのであれば、分散vに基づくフィルタ適用回数Nの決定方法は特定の決定方法に限らない。
このように、本実施形態によれば、シーンの特性に応じてフィルタ適用回数を変化させることで、シーンに最適なフィルタ適用回数を設定することができる。これにより、シーンの特性として、被写体までの距離が近い場合や、被写体までの距離差が小さい場合には高速な処理を行うことが可能となる。
[第4の実施形態]
上記の各実施形態では、画像処理装置100とカメラ101とを別個の装置としていたが、画像処理装置100とカメラ101とを一体化させて、画像処理装置100の機能とカメラ101の機能とを有する1台の装置を構成しても良い。
また、画像処理装置100を複数台のコンピュータ装置で実装し、該複数台のコンピュータ装置による分散処理でもって、画像処理装置100が行う処理として説明した処理を実行するようにしても良い。
また、カメラ101が行う処理として説明した処理の一部を画像処理装置100が行っても良いし、画像処理装置100が行う処理として説明した処理の一部をカメラ101が行っても良い。
また、上記の各実施形態では、出力画像J’の出力先はディスプレイ103としたが、出力画像J’の出力先はディスプレイ103に限らない。例えば、出力画像J’はLANやインターネットなどのネットワーク回線を介して外部装置に対して送信しても良いし、画像処理装置100や他の装置におけるメモリに格納しても良い。
また、上記の各実施形態では、画像処理装置100は、入力画像Iを取得した後、該入力画像IをリニアRGB画像I’に変換していたが、画像処理装置100は、入力画像IではなくリニアRGB画像I’を取得するようにしても良い。この場合、上記の変換部301、801、1101は不要となり、よって、上記のステップS403、S903、S1203の処理は不要となる。
また、上記の各実施形態で使用した数値、処理タイミング、処理順、処理の主体、データ(情報)の取得方法/送信先/送信元/格納場所などは、具体的な説明を行うために一例として挙げたもので、このような一例に限定することを意図したものではない。
また、以上説明した各実施形態の一部若しくは全部を適宜組み合わせて使用しても構わない。また、以上説明した各実施形態の一部若しくは全部を選択的に使用しても構わない。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本明細書の発明は、以下の画像処理装置、画像処理方法、コンピュータプログラムを含む。
(項目1)
入力画像に基づいて環境光を算出する算出手段と、
前記入力画像と前記環境光とに基づき、該入力画像における局所領域のカラーチャンネルの最小値を画素値とするダークチャンネル画像を生成し、該ダークチャンネル画像に基づいて大気の透過率分布を生成する第1生成手段と、
前記透過率分布を整形する処理を複数回行う整形手段と、
前記整形手段により整形された整形済み透過率分布と、前記環境光と、に基づいて、前記入力画像のコントラストを補正した補正画像を生成する第2生成手段と
を備えることを特徴とする画像処理装置。
(項目2)
前記第1生成手段は、前記入力画像と、該入力画像の複数の縮小画像と、前記環境光と、を用いて、該入力画像および該複数の縮小画像のそれぞれに対応するダークチャンネル画像を生成し、該入力画像に対応するダークチャンネル画像のエッジ強度に基づいて、距離の異なる被写体の境界面を表す距離境界のマップを生成し、該入力画像および該複数の縮小画像のそれぞれに対応するダークチャンネル画像を該マップに基づいて合成した合成ダークチャンネル画像を生成し、該合成ダークチャンネル画像に基づいて前記透過率分布を生成することを特徴とする項目1に記載の画像処理装置。
(項目3)
前記整形手段は、前記入力画像に基づく輝度画像を用いて、前記透過率分布に対して、エッジと平坦部を分離可能なフィルタ処理を複数回行うことで、該透過率分布を整形することを特徴とする項目1または2に記載の画像処理装置。
(項目4)
前記第1生成手段は、前記入力画像と前記環境光とを用いて、該入力画像に対応するダークチャンネル画像を生成し、該入力画像に対応するダークチャンネル画像のエッジ強度に基づいて、距離の異なる被写体の境界面を表す距離境界のマップを生成し、該生成したダークチャンネル画像に基づいて、大気の透過率分布を生成し、
前記整形手段は、前記入力画像に基づく輝度画像を用いて、前記透過率分布に対して、エッジと平坦部を分離可能なフィルタ処理を、前記マップに応じた回数だけ行う
ことを特徴とする項目1に記載の画像処理装置。
(項目5)
前記第1生成手段は、前記入力画像と前記環境光とを用いて、該入力画像に対応するダークチャンネル画像を生成し、該入力画像に対応するダークチャンネル画像のエッジ強度の分布を求め、該生成したダークチャンネル画像に基づいて、大気の透過率分布を生成し、
前記整形手段は、前記入力画像に基づく輝度画像を用いて、前記透過率分布に対して、エッジと平坦部を分離可能なフィルタ処理を、前記分布における分散に応じた回数だけ行う
ことを特徴とする項目1に記載の画像処理装置。
(項目6)
前記第2生成手段は、前記補正画像に対してガンマ補正を行うことを特徴とする項目1ないし5のいずれか1項目に記載の画像処理装置。
(項目7)
前記入力画像は、輝度に対してリニア特性を示す画像であることを特徴とする項目1ないし6のいずれか1項目に記載の画像処理装置。
(項目8)
画像処理装置が行う画像処理方法であって、
前記画像処理装置の算出手段が、入力画像に基づいて環境光を算出する算出工程と、
前記画像処理装置の第1生成手段が、前記入力画像と前記環境光とに基づき、該入力画像における局所領域のカラーチャンネルの最小値を画素値とするダークチャンネル画像を生成し、該ダークチャンネル画像に基づいて大気の透過率分布を生成する第1生成工程と、
前記画像処理装置の整形手段が、前記透過率分布を整形する処理を複数回行う整形工程と、
前記画像処理装置の第2生成手段が、前記整形工程で整形された整形済み透過率分布と、前記環境光と、に基づいて、前記入力画像のコントラストを補正した補正画像を生成する第2生成工程と
を備えることを特徴とする画像処理方法。
(項目9)
コンピュータを、項目1ないし7のいずれか1項目に記載の画像処理装置の各手段として機能させるためのコンピュータプログラム。
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
301:変換部 302:算出部 303:算出部 304:整形部 305:処理部 306:処理部

Claims (9)

  1. 入力画像に基づいて環境光を算出する算出手段と、
    前記入力画像と前記環境光とに基づき、該入力画像における局所領域のカラーチャンネルの最小値を画素値とするダークチャンネル画像を生成し、該ダークチャンネル画像に基づいて大気の透過率分布を生成する第1生成手段と、
    前記透過率分布を整形する処理を複数回行う整形手段と、
    前記整形手段により整形された整形済み透過率分布と、前記環境光と、に基づいて、前記入力画像のコントラストを補正した補正画像を生成する第2生成手段と
    を備えることを特徴とする画像処理装置。
  2. 前記第1生成手段は、前記入力画像と、該入力画像の複数の縮小画像と、前記環境光と、を用いて、該入力画像および該複数の縮小画像のそれぞれに対応するダークチャンネル画像を生成し、該入力画像に対応するダークチャンネル画像のエッジ強度に基づいて、距離の異なる被写体の境界面を表す距離境界のマップを生成し、該入力画像および該複数の縮小画像のそれぞれに対応するダークチャンネル画像を該マップに基づいて合成した合成ダークチャンネル画像を生成し、該合成ダークチャンネル画像に基づいて前記透過率分布を生成することを特徴とする請求項1に記載の画像処理装置。
  3. 前記整形手段は、前記入力画像に基づく輝度画像を用いて、前記透過率分布に対して、エッジと平坦部を分離可能なフィルタ処理を複数回行うことで、該透過率分布を整形することを特徴とする請求項1に記載の画像処理装置。
  4. 前記第1生成手段は、前記入力画像と前記環境光とを用いて、該入力画像に対応するダークチャンネル画像を生成し、該入力画像に対応するダークチャンネル画像のエッジ強度に基づいて、距離の異なる被写体の境界面を表す距離境界のマップを生成し、該生成したダークチャンネル画像に基づいて、大気の透過率分布を生成し、
    前記整形手段は、前記入力画像に基づく輝度画像を用いて、前記透過率分布に対して、エッジと平坦部を分離可能なフィルタ処理を、前記マップに応じた回数だけ行う
    ことを特徴とする請求項1に記載の画像処理装置。
  5. 前記第1生成手段は、前記入力画像と前記環境光とを用いて、該入力画像に対応するダークチャンネル画像を生成し、該入力画像に対応するダークチャンネル画像のエッジ強度の分布を求め、該生成したダークチャンネル画像に基づいて、大気の透過率分布を生成し、
    前記整形手段は、前記入力画像に基づく輝度画像を用いて、前記透過率分布に対して、エッジと平坦部を分離可能なフィルタ処理を、前記分布における分散に応じた回数だけ行う
    ことを特徴とする請求項1に記載の画像処理装置。
  6. 前記第2生成手段は、前記補正画像に対してガンマ補正を行うことを特徴とする請求項1に記載の画像処理装置。
  7. 前記入力画像は、輝度に対してリニア特性を示す画像であることを特徴とする請求項1に記載の画像処理装置。
  8. 画像処理装置が行う画像処理方法であって、
    前記画像処理装置の算出手段が、入力画像に基づいて環境光を算出する算出工程と、
    前記画像処理装置の第1生成手段が、前記入力画像と前記環境光とに基づき、該入力画像における局所領域のカラーチャンネルの最小値を画素値とするダークチャンネル画像を生成し、該ダークチャンネル画像に基づいて大気の透過率分布を生成する第1生成工程と、
    前記画像処理装置の整形手段が、前記透過率分布を整形する処理を複数回行う整形工程と、
    前記画像処理装置の第2生成手段が、前記整形工程で整形された整形済み透過率分布と、前記環境光と、に基づいて、前記入力画像のコントラストを補正した補正画像を生成する第2生成工程と
    を備えることを特徴とする画像処理方法。
  9. コンピュータを、請求項1ないし7のいずれか1項に記載の画像処理装置の各手段として機能させるためのコンピュータプログラム。
JP2022188699A 2022-11-25 2022-11-25 画像処理装置、画像処理方法 Pending JP2024076886A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022188699A JP2024076886A (ja) 2022-11-25 2022-11-25 画像処理装置、画像処理方法
US18/515,433 US20240177281A1 (en) 2022-11-25 2023-11-21 Image processing apparatus, image processing method, and non-transitory computer-readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022188699A JP2024076886A (ja) 2022-11-25 2022-11-25 画像処理装置、画像処理方法

Publications (1)

Publication Number Publication Date
JP2024076886A true JP2024076886A (ja) 2024-06-06

Family

ID=91191910

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022188699A Pending JP2024076886A (ja) 2022-11-25 2022-11-25 画像処理装置、画像処理方法

Country Status (2)

Country Link
US (1) US20240177281A1 (ja)
JP (1) JP2024076886A (ja)

Also Published As

Publication number Publication date
US20240177281A1 (en) 2024-05-30

Similar Documents

Publication Publication Date Title
US10580140B2 (en) Method and system of real-time image segmentation for image processing
US10186023B2 (en) Unified multi-image fusion approach
CN108876753B (zh) 使用引导图像对合成长曝光图像进行可选增强
US7983511B1 (en) Methods and apparatus for noise reduction in digital images
US10204432B2 (en) Methods and systems for color processing of digital images
WO2018082185A1 (zh) 图像处理方法和装置
CN107622504B (zh) 用于处理图片的方法和装置
JP6818463B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP2017130060A (ja) 画像処理装置、画像処理方法及びプログラム
KR101624801B1 (ko) 전경 물체 추출을 위한 매팅 방법 및 이를 수행하는 장치
US8488899B2 (en) Image processing apparatus, method and recording medium
CN113039576A (zh) 图像增强系统和方法
US11922598B2 (en) Image processing apparatus, image processing method, and storage medium
CN114640885B (zh) 视频插帧方法、训练方法、装置和电子设备
JP2020061080A (ja) 画像処理装置、撮像装置、画像処理方法
US20220398704A1 (en) Intelligent Portrait Photography Enhancement System
JP2024076886A (ja) 画像処理装置、画像処理方法
CN115880461A (zh) 一种增强现实图像生成方法、装置、设备及存储介质
KR102585573B1 (ko) 콘텐츠 기반 이미지 프로세싱
US11200708B1 (en) Real-time color vector preview generation
KR102470242B1 (ko) 영상 처리 장치, 영상 처리 방법, 및 프로그램
Van Vo et al. High dynamic range video synthesis using superpixel-based illuminance-invariant motion estimation
JP6854629B2 (ja) 画像処理装置、画像処理方法
US20230092409A1 (en) Image processing systems and methods
JP2024085780A (ja) 画像処理装置、画像処理方法