JP5966603B2 - 画像処理装置、画像処理方法、画像処理用プログラム、および、記録媒体 - Google Patents

画像処理装置、画像処理方法、画像処理用プログラム、および、記録媒体 Download PDF

Info

Publication number
JP5966603B2
JP5966603B2 JP2012113179A JP2012113179A JP5966603B2 JP 5966603 B2 JP5966603 B2 JP 5966603B2 JP 2012113179 A JP2012113179 A JP 2012113179A JP 2012113179 A JP2012113179 A JP 2012113179A JP 5966603 B2 JP5966603 B2 JP 5966603B2
Authority
JP
Japan
Prior art keywords
brightness
conversion
lower limit
upper limit
conversion function
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.)
Active
Application number
JP2012113179A
Other languages
English (en)
Other versions
JP2013033446A (ja
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.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing Co Ltd
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 Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP2012113179A priority Critical patent/JP5966603B2/ja
Priority to EP12173815.7A priority patent/EP2541497B1/en
Priority to DK12173815.7T priority patent/DK2541497T3/da
Priority to US13/534,782 priority patent/US8744207B2/en
Publication of JP2013033446A publication Critical patent/JP2013033446A/ja
Application granted granted Critical
Publication of JP5966603B2 publication Critical patent/JP5966603B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • G06T5/90
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/40Image enhancement or restoration by the use of histogram techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/40Picture signal circuits
    • H04N1/407Control or modification of tonal gradation or of extreme levels, e.g. background level
    • H04N1/4072Control or modification of tonal gradation or of extreme levels, e.g. background level dependent on the contents of the original
    • H04N1/4074Control or modification of tonal gradation or of extreme levels, e.g. background level dependent on the contents of the original using histograms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)

Description

本発明は、画像に対し階調の画像補正を行う画像処理装置、画像処理方法、画像処理用プログラム、および、記録媒体に関する。
市販のディジタルスチルカメラ(Digital still camera)および広ダイナミックレンジ(RGB各色8ビット以上の表現力を持つ)カメラで撮像された画像の補正技術において、輝度や明度等の明るさの偏りを改善する技術に注目が集まっている。輝度等の偏りを改善するために、処理対象となる画像に対して、単一の輝度特性を用いた補正が主体であり、例えば、輝度特性を補正する関数には、ガンマ補正関数、対数関数、および、ヒストグラム平均化等の統計処理を用いて定義された関数等が用いられている。
また、光ファイバー等のブロードバンドインターネット接続の普及や高精細度テレビジョン放送等の動画等の高解像度化により、ディジタルスチルカメラおよびディジタルビデオカメラ(Digital video camera)といった機器が、数メガピクセルからギガピクセルのように高画質化してきたため、画像処理の高速化や高精度が求められるようになってきている。
そのため、高速化で適切に画像のコントラストを強調できるように、例えば、特許文献1には、階調圧縮画像を得るための画像処理装置が開示されている。また、高精度化に関して、特許文献2には、局所領域を設定し、局所領域における明るさに関する局所ヒストグラムを算出し、局所ヒストグラムを累積して局所累積ヒストグラムを算出し、局所累積ヒストグラムの各階級における累積度数値に対応した単調増加関数を各々決定し、各単調増加関数に対する重み関数を各々決定し、重み関数により重み付けされた各単調増加関数から画素の明るさの変換関数を生成して画素の明るさを変換する画像処理装置が開示されている。
特許4214457号公報 特開2011−97465号公報
しかしながら、特許文献1の技術では、画像処理の高速化のために、画像全体をブロックに分割し、ブロック毎に処理すると、ブロックノイズが発生してしまう。また、従来の画像補正において、画像内の黒つぶれの部分等を補正する場合、画像において輪郭部分の領域や特定輝度が集中する領域に不自然さが生じることがあり、十分とは言えなかった。さらに、特許文献2では、例えば、晴天時の空、車のボディー等の人工物、波が無い湖面等のように、明るさが連続して変化する画像の場合に、十分精度よく明るさを変換することが難しいことがあった。
本発明は、上記課題を解決するためになされたものであり、明るさが連続する画像でも精度よく各画素の明るさを変換できる画像処理装置、画像処理方法、および、画像処理用プログラムを提供することを目的とする。
上記の課題を解決するために、請求項1に記載の発明は、画像処理を行う原画像の入力を受け付ける原画像入力手段と、前記原画像から、明るさの変換を行う画素の周りに局所領域を設定する局所領域設定手段と、前記明るさに対して連続かつ単調増加であり、明るさの変換の出力上限を決める上限変換関数を設定する上限変換関数設定手段と、前記明るさに対して連続かつ単調増加であり、明るさの変換の出力下限を決める下限変換関数を設定する下限変換関数設定手段と、前記変換を行う画素の明るさにおける前記上限変換関数の値である上限値および前記下限変換関数の値である下限値を算出する上限・下限値算出手段と、前記局所領域における各画素の明るさに応じて、前記上限値と前記下限値との間の値を設定するための比率を算出する比率算出手段と、前記上限値と前記下限値と前記比率とより、前記明るさの変換を行う画素の変換後の明るさを算出する明るさ算出手段と、前記明るさに対する重みにより明るさ領域を規定するための明るさ領域関数を設定する明るさ領域関数設定手段と、前記明るさ領域関数を明るさに対して累積することにより、明るさ変換関数を設定する明るさ変換関数設定手段と、を備え、前記比率算出手段が、前記局所領域における各画素の明るさに前記明るさ変換関数を適用して、比率を算出することを特徴とする。
また、請求項に記載の発明は、請求項に記載の画像処理装置において、前記明るさ領域関数設定手段が、前記明るさ領域毎に、各明るさ領域関数を設定し、前記明るさ変換関数設定手段が、各明るさ領域関数に対して、各明るさ変換関数を設定し、前記上限変換関数設定手段が、前記各明るさ領域に対応して上限変換関数を設定し、前記下限変換関数設定手段が、前記各明るさ領域に対応して下限変換関数を設定し、前記上限・下限値算出手段が、前記各明るさ領域に対応する上限変換関数および下限変換関数に応じて、各上限値および下限値を算出し、前記比率算出手段が、前記各明るさ変換関数を適用して、前記各上限値および前記下限値に対する各比率を算出し、前記明るさ算出手段が、前記各上限値および下限値と、前記各比率とより、前記変換後の明るさを算出することを特徴とする。
また、請求項に記載の発明は、請求項1または請求項に記載の画像処理装置において、前記明るさ領域関数が、連続関数であることを特徴とする。
また、請求項に記載の発明は、請求項1から請求項のいずれか1項に記載の画像処理装置において、前記上限変換関数および下限変換関数が、明るさに対する視覚特性に合うように補正する関数であることを特徴とする。
また、請求項に記載の発明は、請求項に記載の画像処理装置において、前記上限変換関数および下限変換関数が、ガンマ補正関数であることを特徴とする。
また、請求項に記載の発明は、請求項1から請求項のいずれか1項に記載の画像処理装置において、前記局所領域における明るさに関する局所ヒストグラムを算出する局所ヒストグラム算出手段と、前記局所領域における各画素の明るさを累積した明るさ累積ヒストグラムを算出する明るさ累積ヒストグラム算出手段と、を更に備え、前記比率算出手段が、前記局所ヒストグラムと前記明るさ累積ヒストグラムとから前記比率を算出することを特徴とする。
また、請求項に記載の発明は、画像処理装置が画像処理をする画像処理方法において、画像処理を行う原画像の入力を受け付ける原画像入力ステップと、前記原画像から、明るさの変換を行う画素の周りに局所領域を設定する局所領域設定ステップと、前記明るさに対して連続かつ単調増加であり、明るさの変換の出力上限を決める上限変換関数を設定する上限変換関数設定ステップと、前記明るさに対して連続かつ単調増加であり、明るさの変換の出力下限を決める下限変換関数を設定する下限変換関数設定ステップと、前記変換を行う画素の明るさにおける前記上限変換関数の値である上限値および前記下限変換関数の値である下限値を算出する上限・下限値算出ステップと、前記局所領域における各画素の明るさに応じて、前記上限値と前記下限値との間の値を設定するための比率を算出する比率算出ステップと、前記上限値と前記下限値と前記比率とより、前記明るさの変換を行う画素の変換後の明るさを算出する明るさ算出ステップと、前記明るさに対する重みにより明るさ領域を規定するための明るさ領域関数を設定する明るさ領域関数設定ステップと、前記明るさ領域関数を明るさに対して累積することにより、明るさ変換関数を設定する明るさ変換関数設定ステップと、を有し、前記比率算出ステップが、前記局所領域における各画素の明るさに前記明るさ変換関数を適用して、比率を算出することを特徴とする。
また、請求項に記載の発明は、コンピュータを、画像処理を行う原画像の入力を受け付ける原画像入力手段、前記原画像から、明るさの変換を行う画素の周りに局所領域を設定する局所領域設定手段、前記明るさに対して連続かつ単調増加であり、明るさの変換の出力上限を決める上限変換関数を設定する上限変換関数設定手段、前記明るさに対して連続かつ単調増加であり、明るさの変換の出力下限を決める下限変換関数を設定する下限変換関数設定手段、前記変換を行う画素の明るさにおける前記上限変換関数の値である上限値および前記下限変換関数の値である下限値を算出する上限・下限値算出手段、前記局所領域における各画素の明るさに応じて、前記上限値と前記下限値との間の値を設定するための比率を算出する比率算出手段、前記明るさに対する重みにより明るさ領域を規定するための明るさ領域関数を設定する明るさ領域関数設定手段、前記明るさ領域関数を明るさに対して累積することにより、明るさ変換関数を設定する明るさ変換関数設定手段、および、前記上限値と前記下限値と前記比率とより、前記明るさの変換を行う画素の変換後の明るさを算出する明るさ算出手段として機能させ、前記比率算出手段が、前記局所領域における各画素の明るさに前記明るさ変換関数を適用して、比率を算出することを特徴とする。
また、請求項に記載の発明は、コンピュータを、画像処理を行う原画像の入力を受け付ける原画像入力手段、前記原画像から、明るさの変換を行う画素の周りに局所領域を設定する局所領域設定手段、前記明るさに対して連続かつ単調増加であり、明るさの変換の出力上限を決める上限変換関数を設定する上限変換関数設定手段、前記明るさに対して連続かつ単調増加であり、明るさの変換の出力下限を決める下限変換関数を設定する下限変換関数設定手段、前記変換を行う画素の明るさにおける前記上限変換関数の値である上限値および前記下限変換関数の値である下限値を算出する上限・下限値算出手段、前記局所領域における各画素の明るさに応じて、前記上限値と前記下限値との間の値を設定するための比率を算出する比率算出手段、前記上限値と前記下限値と前記比率とより、前記明るさの変換を行う画素の変換後の明るさを算出する明るさ算出手段、前記明るさに対する重みにより明るさ領域を規定するための明るさ領域関数を設定する明るさ領域関数設定手段、および、前記明るさ領域関数を明るさに対して累積することにより、明るさ変換関数を設定する明るさ変換関数設定手段として機能させ、前記比率算出手段が、前記局所領域における各画素の明るさに前記明るさ変換関数を適用して、比率を算出することを特徴とする画像処理用プログラムがコンピュータ読み取り可能に記録される。
本発明によれば、原画像から、明るさの変換を行う画素の周りに局所領域を設定し、明るさに対して連続かつ単調増加であり、明るさの変換の出力上限を決める上限変換関数を設定し、明るさに対して連続かつ単調増加であり、明るさの変換の出力下限を決める下限変換関数を設定し、変換を行う画素の明るさにおける上限変換関数の値である上限値および前記下限変換関数の値である下限値を算出し、局所領域における各画素の明るさに応じて、上限値と下限値との間の値を設定するための比率を算出し、上限値と下限値と比率とより、明るさの変換を行う画素の変換後の明るさを算出することにより、明るさが連続する画像でも精度よく各画素の明るさを変換できる。
本発明の第1実施形態に係る画像処理装置の概要構成例を示すブロック図である。 図1の画像処理部の概要構成例を示すブロック図である。 図2に示したY方向の加算処理部の概要構成例を示すブロック図である。 図2に示したX方向の加算処理部の概要構成例を示すブロック図である。 図1の画像処理装置における第1実施形態の動作例を示すフローチャートである。 輝度を輝度領域に分割するための重み関数の一例を示す線図である。 図6の重み関数に対する輝度値変換関数の一例を示す線図である。 低輝度領域における上限変換関数および下限変換関数の一例を示す線図である。 中輝度領域における上限変換関数および下限変換関数の一例を示す線図である。 高輝度領域における上限変換関数および下限変換関数の一例を示す線図である。 図1の画像処理装置により画像処理をする原画像の一例を示す模式図である。 図9の原画像において、輝度の変換を行うある画素を中心とした局所領域の一例を示す模式図である。 低輝度領域において、対象画素の輝度値における上限値、下限値、および、変換後の輝度値の一例を示す模式図である。 中輝度領域において、対象画素の輝度値における上限値、下限値、および、変換後の輝度値の一例を示す模式図である。 高輝度領域において、対象画素の輝度値における上限値、下限値、および、変換後の輝度値の一例を示す模式図である。 輝度値変換テーブルの一例を示す模式図である。 Boxフィルタの考え方を示す模式図である。 Boxフィルタの考え方を示す模式図である。 Boxフィルタの考え方を示す模式図である。 Boxフィルタの考え方を示す模式図である。 Boxフィルタの考え方を示す模式図である。 図1の画像処理装置による輝度変換後の画像の一例を示す模式図である。 輝度変換後の画像の一例を示す模式図である。 図6の重み関数に対する輝度値変換関数の変形例を示す線図である。 図11Aの比率の変形例を示す模式図である。 図1の画像処理装置において、本発明の第2実施形態に係る動作例を示すフローチャートである。 局所領域における各画素の輝度値を累積した輝度累積ヒストグラムの一例を示す線図である。 局所領域における輝度に関する局所ヒストグラムの一例を示す線図である。
以下、図面を参照して本発明を実施するための形態について説明する。
[1.構成および機能概要]
(1.1 画像処理装置の構成および機能)
まず、本発明に係る第1実施形態に係る画像処理装置の概要構成および機能について、図を用いて説明する。
図1は、本発明の第1実施形態に係る画像処理装置の概要構成例を示すブロック図である。
図1に示すように、画像処理装置1は、画像処理用のLSI(Large Scale Integration)であり、各種の演算を行うCPU(Central Processing Unit)部2と、専用の画像処理を行う画像処理部3と、画像データ等を記憶する記憶部4と、処理される画像データを入力して処理結果を出力する入出力部(I/O)5と、を備える。これら各部は、画像処理装置1において、同一ダイ上に集積され、内部バス(図示せず)に接続されている。
入出力部5は、任意の画像信号(例えば、RGB信号)から、Y,Cb,Cr信号等の輝度と色を示す画像信号に変換する機能を有する。
CPU部2は、演算装置やレジスタ等を有し、各種のプログラムを実行したり、入出力部5を通したデータの入手力を制御したり、画像処理部3に画像処理の指令をしたり、画像処理装置1外部のメインメモリ等を制御する。
画像処理部3は、論理回路や、ラインメモリやシフトレジスタ等を有する。そして画像処理部3は、原画像から、輝度や明度等の明るさの変換を行う画素を中心とした局所領域を抽出したり、局所領域における各画素の明るさに応じて、明るさの変換を行ったり等、CPU部2からの指令に従って専用の画像処理をする。また、画像処理部3は、Box-Filtering方式を利用した、高速に逐次的に画像処理するための回路を有する。
記憶部4は、DRAM(Dynamic Random Access Memory)等により構成され、画像を記憶するためのメモリ、すなわち、フレーム・メモリの機能を有する。また、記憶部4には、画像処理に必要なパラメータテーブルが記憶されている。
(1.2 画像処理部の回路構成)
次に、画像処理部3が有する回路構成について図を用いて説明する。
図2は、画像処理部3の概要構成例を示すブロック図である。ここで、X方向は、画像処理の対象である原画像に対して走査する方向であり、Y方向とは、原画像に対してX方向に走査してX方向の端に来ると、Y方向に順に走査を1画素移動させる方向である。
図2に示すように、画像処理部3は、原画像の画素データの輝度値に応じて輝度値を変換する輝度値変換関数を実現する輝度値変換テーブル部TCs、TCm、TChと、輝度値変換テーブル部TCs、TCm、TChからの画素データを処理するY方向の加算処理部10と、Y方向の加算処理部10からの画素データを処理するX方向の加算処理部20とを備える。なお、Y方向の加算処理部10およびX方向の加算処理部20が、Box-Filtering方式を実現し、計算を高速化する。
輝度値変換テーブル部TCsは、低輝度領域用の輝度値変換テーブルを有し、輝度値変換テーブル部TCmは、中輝度領域用の輝度値変換テーブルを有し、輝度値変換テーブル部TChは、高輝度領域用の輝度値変換テーブルを有する。各輝度領域用の2つの輝度値変換テーブル部には、Y方向にずれた画素の位置の輝度値が入力される。各輝度値変換テーブル部TCs、TCm、TChの出力端の各々にY方向の加算処理部10が接続される。Y方向の加算処理部10の入力端には、2つの輝度値変換テーブル部の各出力端が接続される。各Y方向の加算処理部10には、X方向の加算処理部20が各々接続される。
各輝度値変換テーブル部TCs、TCm、TChに、原画像の局所領域内のある画素の輝度値L[xt+N,yt+N]に対して、Y方向にタップ数2N+1分、離れた画素の輝度値L[xt+N、yt−N−1]が入力され、各輝度値変換テーブル部TCs、TCm、TChは、各輝度値変換テーブルに対応した値を出力する。
そして、画像処理部3は、各輝度値変換テーブル部TCs、TCm、TCh、Y方向の加算処理部10およびX方向の加算処理部20により、座標[xt,yt]である対象画素PIX[xt,yt]の輝度値L[xt,yt]を中心とした局所領域(タップ数2N+1の正方領域)の統計情報として、輝度領域Bs、Bm、Bh毎に輝度値変換関数Cs[L]、Cm[L]、Ch[L]で変換した輝度値の総和のデータSumCs、SumCm、SumChを求める。
(1.3 Y方向の加算処理部10の概要構成および機能)
次に、Y方向の加算処理部10の概要構成および機能について、図3を用いて説明する。なお、データついては、データCsを用いて説明を行い、データCm、Chに関しては同様なので、省略する。
図3は、Y方向の加算処理部10の概要構成例を示すブロック図である。
図3に示すように、Y方向の加算処理部10は、入力側からの輝度値変換テーブル部TCsの出力データCs[xt+N,yt+N]と、出力側からのフィードバックされたデータBarCsとを加算する加算器11と、加算器11からの出力データから、入力側からの輝度値変換テーブル部TCsの出力データCs[xt+N,yt−N−1]を減算する減算器12と、減算器12からのデータBarCsを1ライン分(原画像のX方向の画素数個分)順に記憶するラインメモリ13と、を有する。なお、画像データの座標は一例である。
加算器11は、例えば、半加算器や全加算器等から構成された複数ビット用の加算器であり、任意の桁数の2進数の加算を行う。
減算器12は、例えば、not回路や全加算器等から構成された複数ビット用の減算器であり、任意の桁数の2進数の減算を行う。
ラインメモリ13は、原画像のX方向のライン分の長さの画素データ等を記憶するメモリであり、減算器12からの出力のデータBarCs[xt+N,yt]を記憶し、1ライン分遅れたデータを加算器11に出力するシフトレジスタとして機能する。すなわち、加算処理のたびに、参照したBarCs[xt+N,yt−1]を破棄し、生成したBarCs[xt+N,yt]を記憶するFIFOメモリとして機能する。ここで、画像処理装置1は、X方向に1画素ずつ走査していき、1ライン分遅れた画素データを出力するので、ラインメモリ13は、Y方向に1画素マイナスの画素データを出力する。
Y方向の加算処理部10の入力は、加算器11の一方の入力端および減算器12の一方の入力端により形成されている。加算器11の出力端は、減算器12の入力端に接続され、減算器12の出力端は、Y方向の加算処理部10の外部に出力する出力端を形成し、この分岐がラインメモリ13の入力端に接続されている。そして、ラインメモリ13の出力端は、加算器11の入力端に接続されている。
(1.4 X方向の加算処理部20の概要構成および機能)
次に、X方向の加算処理部20の概要構成および機能について、図4を用いて説明する。なお、データついては、データBarCsを用いて説明を行い、データBarCm、BarChに関しては同様なので、省略する。
図4は、X方向の加算処理部20の概要構成例を示すブロック図である。
図4に示すように、X方向の加算処理部20は、入力側からの入力のデータBarCs[xt+N,yt]と、出力側からのフィードバックされたデータSumCs[xt,yt]とを加算する加算器21と、加算器21からの出力データから、シフトレジストされた入力側からの入力のデータBarCs[xt−N−1,yt]を減算して外部に出力する減算器22と、入力側からの入力のデータBarCs[xt+N,yt]をシフトレジストするシフトレジスタ23と、減算器22の出力のデータSumCs[xt,yt]を1データ分記憶して、データSumCs[xt−1,yt]を加算器21に出力する記憶器24と、を有する。
加算器21は、加算器11と同様の構成および機能を有し、減算器22は、減算器12と同様の構成および機能を有する。
シフトレジスタ23は、タップ数分のデータを記憶するシフトレジスタであり、入力側からの入力のデータBarCs[xt+N,yt]を記憶し、タップ数分遅れたデータBarCs[xt−N−1,yt]を減算器22に出力するシフトレジスタとして機能する。
記憶器24は、データ1個分を記憶する遅延素子である。
X方向の加算処理部20の入力は、加算器21およびシフトレジスタ23の入力端に接続されている。加算器21およびシフトレジスタ23の出力端は、減算器22の入力端に接続され、減算器22の出力端は、X方向の加算処理部20の外部に出力する出力端を形成し、この分岐が記憶器24の入力端に接続されている。そして、記憶器24の出力端は、加算器21の入力端に接続されている。
[2.画像処理装置における第1実施形態の動作]
(2.1 画像処理装置1の動作例)
次に、画像処理装置1の動作例について、図5から図11を用いて説明する。
図5は、画像処理装置1における動作例を示すフローチャートである。図6は、輝度を輝度領域に分割するための重み関数の一例を示す線図である。図7は、重み関数に対する輝度値変換関数の一例を示す線図である。図8Aは、低輝度領域における上限変換関数および下限変換関数の一例を示す線図である。図8Bは、中輝度領域における上限変換関数および下限変換関数の一例を示す線図である。図8cは、高輝度領域における上限変換関数および下限変換関数の一例を示す線図である。図9は、画像処理装置1により画像処理をする原画像の一例を示す模式図である。図10は、原画像において、輝度の変換を行うある画素を中心とした局所領域の一例を示す模式図である。図11Aは、低輝度領域において、対象画素の輝度値における上限値、下限値、および、変換後の輝度値の一例を示す模式図である。図11Bは、中輝度領域において、対象画素の輝度値における上限値、下限値、および、変換後の輝度値の一例を示す模式図である。図11Cは、高輝度領域において、対象画素の輝度値における上限値、下限値、および、変換後の輝度値の一例を示す模式図である。
まず、図5に示すように、画像処理装置1は、各輝度領域に対応した輝度領域関数を設定する(ステップS1)。具体的には、画像処理装置1のCPU部2が、図6に示すように、輝度領域(明るさ領域の一例)を低輝度領域Bs,中輝度領域Bm,高輝度領域Bhに、重みにより区分するための輝度領域関数Ws,Wm,Wh(明るさ領域関数の一例)を各々設定する。輝度領域関数Ws,Wm,Whは、輝度に対する重みにより各輝度領域を規定する。低輝度領域Bsは、輝度領域関数Wsの重みに従って、輝度を表す値が0から255まで広がる領域である。中輝度領域Bmは、輝度領域関数Wmの重みに従って、輝度0から輝度256まで広がる領域である。高輝度領域Bhは、輝度領域関数Whの重みに従って、輝度0から輝度256まで広がる領域である。
輝度値Lの関数である輝度領域関数Ws,Wm,Whは、例えば、式(1)により設定される。
輝度領域関数Wsおよび輝度領域関数Whは、ガウス関数であり、また、低、中、高の各領域の面積(重みの合計)がほぼ等しくなるように、分散値σが調整される。また、輝度領域関数Wmは、ある輝度値における各輝度領域の重みの合計が、1になるように設定される。なお、本実施形態では、ガウス関数を用いたが、シグモイド曲線等、他の関数を用いてもよい。但し、関数は連続的な変化をする関数であることが好ましい。また、分割される領域数は3に限らず、2や4でもよい。
このように、画像処理装置1は、明るさに対する重みにより明るさ領域(低輝度領域Bs等)を規定するための明るさ領域関数(輝度領域関数Ws等)を設定する明るさ領域関数設定手段の一例として機能する。また、画像処理装置1は、明るさ領域毎(各輝度領域Bs、Bm,Bh)に、各明るさ領域関数を設定する明るさ領域関数設定手段の一例として機能する。
次に、画像処理装置1は、輝度領域関数から輝度領域毎の輝度値変換関数を設定する(ステップS2)。具体的には、画像処理装置1のCPU部2が、輝度領域関数Ws、Wm,Whを累積した輝度累積関数Fs,Fm、Fhを求める。輝度累積関数Fs,Fm、Fhは、
である。ここで、最小輝度は0とし、最大輝度をLmaxとする。
そして、画像処理装置1のCPU部2が、図7に示すように、輝度累積関数Fs,Fm、Fhより、輝度値変換関数Cs、Cm、Ch(明るさ変換関数の一例)を設定する。
ここで、輝度値変換関数Cs、Cm、Chは、正規化するために、輝度累積関数Fs,Fm、Fhを、輝度累積関数Fs,Fm、Fhの各々最大値である最大値max[Fs]、max[Fm]、max[Fh]で割った関数である。
このように、画像処理装置1は、明るさ領域関数(輝度領域関数Ws,Wm,Wh)を明るさ(輝度)に対して累積することにより、輝度累積関数Fs,Fm、Fhを求め、明るさ変換関数(輝度値変換関数Cs、Cm、Ch)を設定する明るさ変換関数設定手段の一例として機能する。また、画像処理装置1は、各明るさ領域関数に対して、各明るさ変換関数(輝度値変換関数Cs、Cm、Ch)を設定する明るさ変換関数設定手段の一例として機能する。
次に、画像処理装置1は、輝度領域毎の上・下限変換関数を設定する(ステップS3)。具体的には、画像処理装置1のCPU部2が、図8A、図8B、図8Cに示すように、輝度変換の上限値と下限値を規定するために、輝度領域Bs、Bm、Bh毎に上限変換関数として、上限ガンマ曲線関数Gs1、Gm1、Gh1と、下限変換関数として、下限ガンマ曲線関数Gs0、Gm0、Gh0とを設定する。ここで、各ガンマ曲線関数(ガンマ補正関数)のガンマ値は任意に設定可能とする。
なお、上限変換関数(上限ガンマ曲線関数Gs1、Gm1、Gh1)は、輝度に対して連続かつ単調増加であり、輝度変換の出力の上限を決める。下限変換関数(下限ガンマ曲線関数Gs0、Gm0、Gh0)は、輝度に対して連続かつ単調増加であり、輝度変換の出力の下限を決める。また、上限ガンマ曲線関数Gs1、Gm1、Gh1および下限ガンマ曲線関数Gs0、Gm0、Gh0は、ガンマ補正関数である。また、ガンマ補正関数は、明るさに対する視覚特性に合うように補正する関数の一例である。また、本実施形態では上限変換関数および下限変換関数の一例として、ガンマ曲線関数を挙げたが、上限変換関数および下限変換関数を生成する曲線は、単調増加であれば、ガンマ曲線関数に限定されるものでは無い。例えば、複数のガンマ曲線関数を合成した曲線や、直線とガンマ曲線関数を合成した曲線等であってもよい。
次に、画像処理装置1は、画像処理を行う原画像の入力を受け付ける(ステップS4)。具体的には、画像処理装置1のCPU部2が、画像処理装置1の外部から、図9に示すような画像処理を行う原画像30を取得して、記憶部4のフレーム・メモリに記憶させる。ここで、図9に示すように、原画像では、逆光などで暗く見えにくくなってしまう”黒つぶれ”や、逆に明るく見えにくくなる”白とび”が生じていて、原画像は、輝度の偏りが生じている例である。
このように画像処理装置1は、画像処理を行う原画像の入力を受け付ける原画像入力手段の一例として機能する。
次に、画像処理装置1は、原画像から処理の対象画素を設定する(ステップS5)。具体的には、CPU部2が、画像処理の指令を画像処理部3に与え、図10に示すように、画像処理部3が、記憶部4の原画像30から処理の対象画素PIX[xt,yt]を設定する。さらに具体的には、画像処理部3が、画像処理の対象である原画像に対してX方向に走査してX方向の端に来ると、Y方向に順に走査を1画素移動させて、対象画素を設定していき、原画像を画素毎に順次ディジタル処理する。
次に、画像処理装置1は、対象画素を中心とした局所領域を設定する(ステップS6)。具体的には、画像処理装置1の画像処理部3は、図10に示すように、明るさの変換を行う画素である対象画素PIX[xt,yt]を中心とした局所領域32を設定する。ここで、Box-Filtering方式を利用する場合、タップ数を設定することにより、局所領域が
決定される。画像処理装置1は、対象画素PIX[xt,yt]をX方向に1画素ずつ走
査していく。そして、画像処理装置1は、走査が原画像30の図中右端にくると、左端に戻り、Y方向に1画素分移動して、X方向に操作していく。
このように画像処理装置1は、原画像から、明るさの変換を行う画素を中心とした局所領域を設定する局所領域設定手段の一例として機能する。
次に、画像処理装置1は、各輝度領域に対して対象画素の輝度値における上限・下限変換関数値を算出する(ステップS7)。具体的には、画像処理装置1のCPU部2が、低輝度領域Bsの場合、図11Aに示すように、対象画素PIX[xt,yt]の輝度値L[xt,yt]における上限変換関数値Gs1[L[xt,yt]]および下限変換関数値Gs0[L[xt,yt]]を算出する。中輝度領域Bmの場合、図11Bに示すように、画像処理装置1のCPU部2が、対象画素[xt,yt]の輝度値L[xt,yt]における上限変換関数値Gm1[L[xt,yt]]および下限変換関数値Gm0[L[xt,yt]]を算出する。高輝度領域Bhの場合、図11Cに示すように、画像処理装置1のCPU部2が、対象画素[xt,yt]の輝度値L[xt,yt]における上限変換関数値Gh1[L[xt,yt]]および下限変換関数値Gh0[L[xt,yt]]を算出する。
なお、上限変換関数値Gs1[L[xt,yt]]、Gm1[L[xt,yt]]、Gh1[L[xt,yt]]は、各輝度領域において、変換を行う画素(対象画素PIX[xt,yt])の明るさ(輝度値L[xt,yt])における上限変換関数Gs1、Gm1、Gh1の値である上限値である。下限変換関数値Gs0[L[xt,yt]]、Gm0[L[xt,yt]]、Gh0[L[xt,yt]]は、各輝度領域において、変換を行う画素(対象画素PIX[xt,yt])の明るさ(輝度値L[xt,yt])における下限変換関数Gs0、Gm0、Gh0の値である下限値である。
このように、画像処理装置1は、明るさに対して連続かつ単調増加であり、明るさの変換の出力上限を決める上限変換関数を設定する上限変換関数設定手段、明るさに対して連続かつ単調増加であり、明るさの変換の出力下限を決める下限変換関数を設定する下限変換関数設定手段の一例として機能する。また、画像処理装置1は、各明るさ領域(輝度領域Bs,Bm,Bh)に対応して上限変換関数(上限ガンマ曲線関数Gs1、Gm1、Gh1)を設定する上限変換関数設定手段の一例として機能する。また、画像処理装置1は、各明るさ領域(輝度領域Bs,Bm,Bh)に対応して下限変換関数(下限ガンマ曲線関数Gs0、Gm0、Gh0)を設定する下限変換関数設定手段の一例として機能する。
また、画像処理装置1は、変換を行う画素の明るさにおける上限変換関数の値である上限値および下限変換関数の値である下限値を算出する上限・下限値算出手段の一例として機能する。また、画像処理装置1は、各明るさ領域(輝度領域Bs,Bm,Bh)に対応する上限変換関数および下限変換関数に応じて、各上限値および下限値を算出する上限・下限値算出手段の一例として機能する。
次に、画像処理装置1は、局所領域の各画素に輝度値変換関数を適用して総和を求め、上限・下限変換関数値の間の値を設定するための分割比率を算出する(ステップS8)。具体的には、画像処理装置1の画像処理部3が、座標[xt,yt]である対象画素PIX[xt,yt]の輝度値L[xt,yt]を中心とした局所領域32の統計情報として
、各輝度領域Bs、Bm、Bhに輝度値変換関数Cs[L]、Cm[L]、Ch[L]で変換した輝度値の総和のデータSumCs、SumCm、SumChを各々求める。さらに具体的には、図2に示すように、画像処理部3の輝度値変換テーブル部TCs、TCm、TChが、局所領域の各画素に対して、各領域の輝度値変換関数Cs[L]、Cm[L]、Ch[L]の値を求める。そして、画像処理部3のY方向の加算処理部10およびX方向の加算処理部20が、総和のデータSumCs、SumCm、SumChを求める。そして、画像処理装置1のCPU部2は、画像処理部3から、総和のデータSumCs、SumCm、SumChのデータを受信し、正規化するために、各総和のデータSumCs、SumCm、SumChは局所領域に含まれる画素数SUMで各々割り、各分割比率Hs、Hm、Hhを求める。
各分割比率Hs、Hm、Hhを式で表すと式(4)になる。
ここで、局所領域は一辺の長さを2N+1の大きさの正方形とする。また、局所領域に含まれる各画素の輝度をL[i,j]とする。また、Cs[L[i,j]]、Cm[L[i,j]]、Ch[L[i,j]]を、各々単にCs[i,j]、Cm[i,j]、Ch[i,j]と記載する。
なお、各分割比率Hs、Hm、Hhは、Y方向の加算処理部10およびX方向の加算処理部20により、Box-Filtering方式(後述)で高速に算出される。また、本実施形態で
は、局所領域の形を正方形としたが、任意の縦横比の長方形でもよい。また、各座標値[i,j]は、ラスタスキャン順に増加する。
次に、画像処理装置1は、上限・下限変換関数値と分割比率とより各輝度領域の変換輝度値を求める(ステップS9)。具体的には、画像処理装置1のCPU部2が、輝度領域Bs、Bm、Bh毎に、対象画素PIX[xt,yt]の輝度値L[xt,yt]に対応する、各領域の上限ガンマ値と下限ガンマ値を分割比率Hs,Hm、Hhを利用して、輝度領域毎の変換輝度値Ls、Lm、Lhを式(5)より求める。
図11Aに示すように、低輝度領域Bsの場合、輝度値L[xt,yt]における各領域の下限ガンマ値Gs0[L[xt,yt]]および上限ガンマ値Gs1[L[xt,yt]]から、分割比率Hs[xt,yt]から、式(5)に従って変換輝度値Ls[xt,yt]を求める。
また、図11Bに示すように、中輝度領域Bmの場合、輝度値L[xt,yt]における各領域の下限ガンマ値Gm0[L[xt,yt]]および上限ガンマ値Gm1[L[xt,yt]]から、分割比率Hm[xt,yt]から、式(5)に従って変換輝度値Lm[xt,yt]を求める。
また、図11Cに示すように、高輝度領域Bhの場合、輝度値L[xt,yt]における各領域の下限ガンマ値Gh0[L[xt,yt]]および上限ガンマ値Gh1[L[xt,yt]]から、分割比率Hh[xt,yt]から、式(5)に従って変換輝度値Lh[xt,yt]を求める。
このように、画像処理装置1は、局所領域における各画素の明るさ(輝度)に応じて、上限値と下限値との間の値を設定するための比率(分割比率H)を算出する比率算出手段の一例として機能する。また、画像処理装置1は、局所領域における各画素の明るさに明るさ変換関数(輝度値変換関数Cs、Cm、Ch)を適用して、比率を算出する比率算出手段の一例として機能する。また、画像処理装置1は、各明るさ変換関数(輝度値変換関数Cs、Cm、Ch)を適用して、各上限値および下限値に対する各比率(分割比率Hs、Hm、Hh)を算出する比率算出手段の一例として機能する。
次に、画像処理装置1は、各輝度領域の変換輝度値より変換輝度を求める(ステップS10)。具体的には、画像処理装置1のCPU部2が、式(6)のように、各領域の変換輝度値Ls[xt,yt]、Lm[xt,yt]、Lh[xt,yt]を加算し、対象画素
PIX[xt,yt]における輝度値を変換した輝度Lout[xt,yt]を求める。
このように、画像処理装置1は、上限値と下限値と比率とより、明るさ(輝度)の変換を行う画素の変換後の明るさ(輝度Lout)を算出する明るさ算出手段の一例として機能する。また、画像処理装置1は、各上限値および下限値と、各比率(分割比率Hs、Hm、Hh)とより、変換後の明るさを算出する明るさ算出手段の一例として機能する。
次に、画像処理装置1は、最後の画素か否かを判定する(ステップS11)。具体的には、画像処理部3は、原画像を走査していき、最後の画素まで来たか否かを判定する。最後の画素で無い場合(ステップS11;NO)、画像処理部3は、ステップS5に戻り、次の対象画素に移動して輝度変換を行う。最後の画素の場合(ステップS11;YES)、画像処理部3は、処理を終了し、CPU部2に、画像処理終了の信号を送信する。
(2.2 Box-Filtering方式の説明)
次に、画像処理部3で高速に画像処理するためのBox-Filtering方式について図を用いて説明する。
図12は、輝度値変換テーブルの一例を示す模式図である。図13から図17はBoxフィルタの考え方を示す模式図である。
対象画素PIXの輝度を決めるに当たり、局所領域32に含まれる全画素による演算が必要であり、単純に処理を行うと、極めて多くの演算が必要になる。この演算数を低減する方法の一つとして、Box-Filteringの考え方が応用できる。
対象画素PIX[xt,yt]に対して、分割比率Hs、Hm、Hhを求めることが、回路化に際して重い処理となる。分割比率Hs、Hm、Hhは、同一の手法で求めることができるので、ここでは、低輝度領域Bsについて、分割比率Hsを例に説明する。
まず、図12示すように、予めに用意した輝度値変換テーブル部TCsによって、輝度値変換関数Csが実現される。輝度値変換テーブル部TCsは、例えば、メモリ(RAMまたはROM)により実装される。そして、メモリのアドレスを任意の輝度値Lを入力とし、各輝度に対する変換結果がCs[L]を出力するように、メモリのデータにはアドレス毎に、Cs[L]の値が記憶される。例えば、図12に示すように、輝度の範囲を0〜255とし、画像処理部3の輝度値変換テーブル部TCsは、任意の画素PIX[i,j]の輝度値L[i,j]を入力とし、輝度変換後のデータをCs[i,j]を出力する。
次に、画像データと局所領域の関係について、図13を用いてする。なお、説明を簡単にするために、図13に示す各画素における値は、輝度値変換のデータCs[i,j]とする。画素p1の座標は、対象画素PIX[xt,yt]の座標に対応する。画素p1に対する局所領域を領域a1とする。また、領域a1の大きさは2N+1×2N+1とする。ここで、Hs[xt,yt]を求めることを考える。Hs[xt,yt]は、局所領域に含まれる全てのCs[i,j]の総和であるSumCs[i,j]を局所領域の画素数SUMで割った値であるから、SumCs[i,j]を求めると、容易にHs[xt,yt]を求めることができる。従って、局所領域に含まれる全てのCs[i,j]の総和を求める方法について説明する。
まず対象画素である画素p1から、X方向に1画素前の画素のデータCs[xt−1,yt]に対する局所領域として領域a2を考える。領域a2に含まれるCsの総和は既に求められているとする。領域a1および領域a2には、共通領域が存在する。その差分は、図14に示すように、領域a4および領域a5である。求める領域内のCs[i,j]の総和をデータSumCs[i,j]、領域a4や領域a5内のCs[i,j]の総和をデータBarCs[i,j](但し、i,jは、中央部の座標)とすると、領域a1=領域a2−領域a4+領域a5であるから、
となる。
次に、領域a5であるBarCs[xt+N,yt]の生成方法を考える。BarCs[xt+N,yt]の中心画素における値は、画素p2における値Cs[xt+N,yt]である。生成に当たり、図15に示すように、領域a5から見てY方向に、図中一つ上(Y方向に−1)の領域である領域a6、すなわち、BarCs[xt+N,yt−1]を考える。領域a5および領域a6にも共通部分が存在するので、図16に示すように、非共通部分である画素p3(Cs[xt+N,yt+N])と画素p4(Cs[xt+N,yt−N−1])より、領域a5=領域a6−画素p4+画素p3であるから、
ここで、BarCs[i,j]を1ライン分記憶する記憶素子MemCs(ラインメモ
リ13)を考える。記憶素子MemCsの領域は、図16に示す領域a7とする。すなわち、
とする。
BarCs[xt+N,yt]を求めるに当たり、BarCs[xt+N,yt−1]は、記憶素子MemCsを参照する。一方、記憶素子MemCsは、BarCs[xt+N,yt]生成後、参照したBarCs[xt+N,yt−1]を削除し、生成したBarCs[xt+N,yt]を追加するとする。この操作によって、次の対象画素である、Cs[xt+1,yt]に備えることが可能となる。
以上より、データSumCs[xt,yt]を求めるためには、画素p4および画素p3のみ参照すればよいことになり、わずかの演算でSumCx[xt,yt]を求めることができる。また、この方式は局所領域の大きさに関わらず、演算コストは同一となる。但し、本方式を行うに当たり、画像処理の前に最初の1ライン分のMemCsを用意する必要がある。また、画像の左辺は、データSumCsが存在しないので、単純に加算する必要がある。
なお、画像の各辺付近の画素は、図17に示すように、対象画素の周辺に仮想画素を想定する。仮想画素を想定する方法は、ミラー方式等、様々提案されている。ミラー方式の場合、例えば、Cs[0,0]を生成するに当たり、Cs[−2,−2]が必要になるが、この画素はCs[2,2]を代用すればよい。
(2.3 Box-Filtering方式の回路化)
次に、(2.2)で示した方法を回路化する方法に関して、データSumCs[xt,yt]を生成する過程を、図2から図4のブロック図を用いて説明する。
なお、記憶部4は、上・下限ガンマ曲線関数Gs1,Gs0,Gm1,Gm0,Gh1,Gh0によるガンマテーブルTGS1,TGs0T,Gm1,TGm0,TGh1,TGh0を記憶し、画像処理部3より、いつでも参照可能な構造とする。
対象画素PIX[xt,yt]に対するデータSumCs[xt,yt]は、図2における輝度値の入力データL[xt+N,yt−N−1]およびL[xt+N,yt+N]を輝度値変換テーブル部TCsで変換したデータCs[xt+N,yt−N−1]およびデータCs[xt+N,yt+N]から、上述した式(7)、および、式(8)に従って処理により生成される。
図2に示すように、Y方向の加算処理部10は、式(8)に対応し、データBarCsを生成する部分である。X方向の加算処理部20は、式(7)に対応し、データSumCsを生成する部分である。
図3に示すように、Y方向の加算処理部10に関して、式(8)のデータBarCs[xt+N,yt−1]は、ラインメモリ13(MemCs)より参照される。ラインメモリ13(MemCs)は、データBarCsを1ライン分記憶するメモリであり、加算処理のたびに、参照したBarCs[xt+N,yt−1]を破棄し、生成したBarCs[xt+N,yt]を記憶するFIFOメモリとして機能する。
次に、図4に示すように、X方向の加算処理部20に関して、データBarCs[xt+N,yt]は、Y方向の加算処理部10の出力である。データBarCs[xt−N−1,yt]は、入力であるデータBarCs[xt+N,yt]を2N+1分だけ前の値である。よって、データBarCs[xt−N−1,yt]は、シフトレジスタ23により、入力を遅らせることによって生成される。加算器21の出力からシフトレジスタ23の出力を、減算器22によって減算することにより、データSumCs[xt,yt]が生成される。なお、図4では、シフトレジスタ23による遅延でBarCs[xt−N−1,yt]を生成したが、ラインメモリ13(MemCs)にも同じ値が記憶されているので、それを使ってもよい。
なお、中輝度領域BmにおけるデータSumCm[xt,yt]や、高輝度領域BhにおけるデータSumCh[xt,yt]を生成する過程も同様に付き省略する。データSumCs、SumCm、SumChからデータLoutを生成する過程は、回路で生成しても、CPUで生成してもよいが、画像処理の高速化するならば、回路化が好ましい。
(2.4 画像処理結果)
次に、画像処理結果について、図18および図19を用いて説明する。
図18は、本実施形態による輝度変換後の画像の一例を示す模式図である。図19は、特許文献2の手法による輝度変換後の画像の一例を示す模式図である。
図18に示すように、画像処理装置1により、原画像30が画像処理されて、”黒つぶれ”していた部分(畑)がはっきりした画像40が得られる。また、図19示すように、特許文献2の手法による画像処理結果の画像41では、空の部分のグラデーション領域に、縞模様のような濃淡部分が生じる。しかし、図18に示すように、図18に示すように、本実施形態の手法による画像処理結果では、空等のグラデーション領域を再現できている。
以上、画像処理装置1は、原画像30から、輝度変換を行う画素の周りに局所領域32を設定し、輝度に対して連続かつ単調増加であり、輝度変換の出力上限を決める上限変換関数(Gs1等)を設定し、輝度に対して連続かつ単調増加であり、輝度変換の出力下限を決める下限変換関数(Gs0等)を設定する。そして、画像処理装置1は、変換を行う画素の輝度(L[xt,yt])おける上限変換関数の値である上限値(上限変換関数値Gs1[L[xt,yt]]等)および下限変換関数の値である下限値(下限変換関数値Gs0[L[xt,yt]]等)を算出し、局所領域32における各画素の輝度に応じて、上限値と下限値との間の値を設定するための分割比率Hs等を算出し、上限値と下限値と分割比率とより輝度変換を行う画素の変換後の輝度を算出する。従って、本実施形態によれば、明るさが連続する画像でも精度よく各画素の輝度を変換できる。すなわち、空等のグラデーション領域を含む画像であっても、良好な輝度変換を行うことができる。
局所領域32における各画素の輝度に応じて、分割比率Hs、Hm、Hhを算出している。例えば、対象画素PIX[xt、yt]の局所領域32内に含まれる画素に対する総和のデータSumCs、SumCm、SumChのような、局所領域32内における平均的な値により、分割比率Hs、Hm、Hhを算出している。このため、対象画素が、1画素ずれても、分割比率Hs、Hm、Hhの値が大きく変化しなく、対象画素の近傍の他の対象画素でも、変換の割合が大きく変化しない。従って、空等のグラデーション領域を含む画像であっても、良好な輝度変換を行うことができる。
なお、従来の手法では、空等のグラデーション領域を含む画像のように、輝度が緩やかに変化する画像の場合、輝度のヒストグラムが特定の輝度に集中した形状で、輝度変換を行うと、ヒストグラムの形状が広がり、良好な輝度変換を行うことができなかった。しかし、本実施形態によれば、上限変換関数(Gs1等)および下限変換関数Gs0等)により、極端な輝度変換が防止でき、空等のグラデーション領域を含む画像であっても、良好な輝度変換を行うことができる。
また、本実施形態によれば、ブロックノイズが無く、高精度にコントラストの改善ができる。また、画像処理装置1は、高速化で適切に各画素の明るさを変換できる。
また、画像処理装置1が、明るさ(輝度)に対する重みにより明るさ領域(低輝度領域Bs等)を規定するための明るさ領域関数(輝度領域関数Ws等)を設定し、明るさ領域関数を明るさに対して累積することにより(輝度累積関数Fs等)、明るさ変換関数(輝度値変換関数Cs等)を設定し、局所領域における各画素の明るさに明るさ変換関数を適用して、分割比率Hs等を算出する場合、局所領域における各画素の情報を反映した分割比率が決定でき、明るさ変換の精度を向上させることができる。
また、画像処理装置1が、明るさ領域毎(輝度領域Bs,Bm,Bh)に、各明るさ領域関数(輝度領域関数Ws,Wm,Wh)を設定し、各明るさ領域関数に対して、各明るさ変換関数(輝度値変換関数Cs、Cm、Ch)を設定し、各明るさ領域に対応して上限変換関数(上限ガンマ曲線関数Gs1、Gm1、Gh1)を設定し、各明るさ領域に対応して下限変換関数(下限ガンマ曲線関数Gs0、Gm0、Gh0)を設定する。そして、画像処理装置1が、各明るさ領域に対応する上限変換関数および下限変換関数に応じて、各上限値および下限値を算出し、各明るさ変換関数を適用して、各上限値および下限値に対する各比率(分割比率Hs、Hm、Hh)を算出し、各上限値および下限値と、各比率とより、変換後の明るさを算出する場合、ユーザが輝度領域毎に、輝度領域関数Ws,Wm,Wh、上限変換関数、および、下限変換関数の少なくとも1つを調整することにより、コントラスト等の調節ができる。
また、明るさ領域関数(輝度領域関数Ws,Wm,Wh)が、連続関数である場合、特に、原画像の明るさが連続する領域における、画像処理の精度を向上させることができる。
また、上限変換関数および下限変換関数が、ガンマ補正関数のように、明るさに対する視覚特性に合うように補正する関数である場合、人間の感覚にあった画像補正ができる。
次に、本実施形態の変形例について図を用いて説明する。
図20は,重み関数に対する輝度値変換関数の変形例を示す線図である。図21は、比率の変形例を示す模式図である。
図20に示すように、図7の輝度値変換関数Cs、Cm、Chが、輝度の軸の方向で反転させた場合でもよい。
例えば、輝度値変換関数Csは、
Cs=1−Fs[L]/max[Fs] ・・・(10)
でもよい。
図21に示すように、図11Aと比較して、分割比率Hsが、Gs0からの比率となる。
[3.画像処理装置における第2実施形態の動作]
次に、本発明の第2実施形態に係る動作について説明する。
第2実施形態の動作において、画像処理装置の概要構成は第1実施形態と同じである。なお、前記第1実施形態と同一または対応する部分には、同一の符号を用いて異なる構成および作用のみを説明する。その他の実施形態および変形例も同様とする。
次に、第2実施形態に係る画像処理装置1の動作例について、図22、図23Aおよび図23Bを用いて説明する。
図22は。画像処理装置1において、本発明の第2実施形態に係る動作例を示すフローチャートである。図23Aは、局所領域における各画素の輝度値を累積した輝度累積ヒストグラムの一例を示す線図である。図23Bは、局所領域における輝度に関する局所ヒストグラムの一例を示す線図である。
まず、図22に示すように、ステップS21からステップS27までは、第1実施形態のステップS1からステップS7まで同様の処理である。そして、ステップS31からステップS33は、第1実施形態のステップS9からステップS11まで同様の処理である。従って、ステップS28からステップS30までの処理について説明する。
ステップS27で、上限・下限変換関数値を算出した後、画像処理装置1は、局所ヒストグラムを生成する(ステップS28)。具体的には、画像処理装置1のCPU部2または画像処理部3が、図23Aに示すように、局所領域32に内の画素の輝度値に対して、所定のビン数(例えば、ビン数が8)により、各ビンにおける画素の数を積算して、式(11)に示すように、ヒストグラムHNを生成する。
ここで、各階級を示す記号をbinとする。また、個々の対象階級binの輝度範囲に含まれる画素のみを対象とする。
このように、画像処理装置1は、局所領域における明るさに関する局所ヒストグラムを算出する局所ヒストグラム算出手段の一例として機能する。
次に、画像処理装置1は、輝度累積ヒストグラムを生成する(ステップS29)。具体的には、画像処理装置1のCPU部2または画像処理部3が、図23Bに示すように、輝度値Lを積算した輝度累積ヒストグラムHLを生成する(式(12))。
例えば、最も輝度範囲の小さな階級を階級番号0(bin=0)とし、この階級に3つの画素が含まれたとする。各画素の輝度値が、それぞれ”5、12、21”とすると、HN[0]=3、HL[0]=5+12+21=38となる。
このように、画像処理装置1は、局所領域における各画素の明るさを累積した明るさ累積ヒストグラムを算出する明るさ累積ヒストグラム算出手段の一例として機能する。
次に、画像処理装置1は、局所ヒストグラムと、輝度累積ヒストグラムと、輝度値変換関数とから分割比率を算出する(ステップS30)。具体的には、画像処理装置1のCPU部2または画像処理部3が、まず、各階級のヒストグラムHN、輝度累積ヒストグラムHLから階級毎に平均輝度Lavrを求める(式(13))。
そして、画像処理装置1のCPU部2または画像処理部3が、階級毎に、平均輝度Lavrを輝度値変換関数Cs、Cm、Chにより変換した値に、各階級に含まれる画素数を掛けた値を、全ての階級で加算され、局所領域に含まれる画素数で割ることにより、分割比率Hs’,Hm’,Hh’を求める(式(14))。
ここで、binの最小値は、0とし、最大値は、BINmaxとする。また、中輝度領域Bm、高輝度領域Bhにおいても、同様に、それぞれ、分割比率Hm’、Hh’が求められる。なお、分割比率Hs’,Hm’,Hh’は、第1実施形態で求めた分割比率Hs,Hm,Hhの近似値となる。
このように、画像処理装置1局所ヒストグラムと明るさ累積ヒストグラムとから比率(分割比率Hs’,Hm’,Hh’)を算出する比率算出手段の一例として機能する。
分割比率Hs’,Hm’mHh’を算出した後の処理は、ステップS31からステップS33は、第1実施形態のステップS9からステップS11と同様の処理である。
なお、第1実施形態では、局所領域に含まれる全ての画素毎に、輝度値変換関数で変換し積算したが、本実施形態では、各階級に含まれる画素の平均値を代表値として使った。また、本実施形態では、各階級の輝度の代表値として算術平均値を用いたが、代表値として中央値や最頻値等を用いてもよい。
以上、局所領域における明るさに関する局所ヒストグラムを算出し、局所領域における各画素の明るさを累積した明るさ累積ヒストグラムを算出し、局所ヒストグラムと明るさ累積ヒストグラムとから比率を算出する場合でも、明るさが連続する画像でも精度よく各画素の輝度を変換できる。
なお、第1および第2実施形態の処理は、コンピュータにより実行してもよい。この場合、例えば、第1および第2実施形態の処理を実行するプログラムを記憶した記録媒体等をコンピュータが読み出し実行する。
また、第1および第2実施形態における画像補正技術は、ディジタルスチルカメラやビデオカメラでの画像処理のみならず、医療、車載、監視等、様々な用途に適用できる。
さらに、本発明は、上記各実施形態に限定されるものではない。上記各実施形態は、例示であり、本発明の特許請求の範囲に記載された技術的思想と実質的に同一な構成を有し、同様な作用効果を奏するものは、いかなるものであっても本発明の技術的範囲に包含される。
1:画像処理装置
2:CPU部
3:画像処理部
4:記憶部
10:Y方向の加算処理部
20:X方向の加算処理部
30:原画像
32:局所領域
L:輝度値(明るさ)
Bs、Bm、Bh:輝度領域(明るさ領域)
Ws、Wm、Wh:輝度領域関数(明るさ領域関数)
Cs、Cm、Ch:輝度値変換関数(明るさ変換関数)
Gs0、Gm0、Gh0:下限ガンマ曲線関数(下限変換関数)
Gs1、Gm1、Gh1:上限ガンマ曲線関数(上限変換関数)
Hs、Hm、Hh:分割比率(比率)
Lout:輝度(変換後の明るさ)

Claims (9)

  1. 画像処理を行う原画像の入力を受け付ける原画像入力手段と、
    前記原画像から、明るさの変換を行う画素の周りに局所領域を設定する局所領域設定手段と、
    前記明るさに対して連続かつ単調増加であり、明るさの変換の出力上限を決める上限変換関数を設定する上限変換関数設定手段と、
    前記明るさに対して連続かつ単調増加であり、明るさの変換の出力下限を決める下限変換関数を設定する下限変換関数設定手段と、
    前記変換を行う画素の明るさにおける前記上限変換関数の値である上限値および前記下限変換関数の値である下限値を算出する上限・下限値算出手段と、
    前記局所領域における各画素の明るさに応じて、前記上限値と前記下限値との間の値を設定するための比率を算出する比率算出手段と、
    前記上限値と前記下限値と前記比率とより、前記明るさの変換を行う画素の変換後の明るさを算出する明るさ算出手段と、
    前記明るさに対する重みにより明るさ領域を規定するための明るさ領域関数を設定する明るさ領域関数設定手段と、
    前記明るさ領域関数を明るさに対して累積することにより、明るさ変換関数を設定する明るさ変換関数設定手段と、
    を備え、
    前記比率算出手段が、前記局所領域における各画素の明るさに前記明るさ変換関数を適用して、比率を算出することを特徴とする画像処理装置。
  2. 請求項に記載の画像処理装置において、
    前記明るさ領域関数設定手段が、前記明るさ領域毎に、各明るさ領域関数を設定し、
    前記明るさ変換関数設定手段が、各明るさ領域関数に対して、各明るさ変換関数を設定し、
    前記上限変換関数設定手段が、前記各明るさ領域に対応して上限変換関数を設定し、
    前記下限変換関数設定手段が、前記各明るさ領域に対応して下限変換関数を設定し、
    前記上限・下限値算出手段が、前記各明るさ領域に対応する上限変換関数および下限変換関数に応じて、各上限値および下限値を算出し、
    前記比率算出手段が、前記各明るさ変換関数を適用して、前記各上限値および前記下限値に対する各比率を算出し、
    前記明るさ算出手段が、前記各上限値および下限値と、前記各比率とより、前記変換後の明るさを算出することを特徴とする画像処理装置。
  3. 請求項1または請求項に記載の画像処理装置において、
    前記明るさ領域関数が、連続関数であることを特徴とする画像処理装置。
  4. 請求項1から請求項のいずれか1項に記載の画像処理装置において、
    前記上限変換関数および下限変換関数が、明るさに対する視覚特性に合うように補正する関数であることを特徴とする画像処理装置。
  5. 請求項に記載の画像処理装置において、
    前記上限変換関数および下限変換関数が、ガンマ補正関数であることを特徴とする画像処理装置。
  6. 請求項1から請求項のいずれか1項に記載の画像処理装置において、
    前記局所領域における明るさに関する局所ヒストグラムを算出する局所ヒストグラム算出手段と、
    前記局所領域における各画素の明るさを累積した明るさ累積ヒストグラムを算出する明るさ累積ヒストグラム算出手段と、
    を更に備え、
    前記比率算出手段が、前記局所ヒストグラムと前記明るさ累積ヒストグラムとから前記比率を算出することを特徴とする画像処理装置。
  7. 画像処理装置が画像処理をする画像処理方法において、
    画像処理を行う原画像の入力を受け付ける原画像入力ステップと、
    前記原画像から、明るさの変換を行う画素の周りに局所領域を設定する局所領域設定ステップと、
    前記明るさに対して連続かつ単調増加であり、明るさの変換の出力上限を決める上限変換関数を設定する上限変換関数設定ステップと、
    前記明るさに対して連続かつ単調増加であり、明るさの変換の出力下限を決める下限変換関数を設定する下限変換関数設定ステップと、
    前記変換を行う画素の明るさにおける前記上限変換関数の値である上限値および前記下限変換関数の値である下限値を算出する上限・下限値算出ステップと、
    前記局所領域における各画素の明るさに応じて、前記上限値と前記下限値との間の値を設定するための比率を算出する比率算出ステップと、
    前記上限値と前記下限値と前記比率とより、前記明るさの変換を行う画素の変換後の明るさを算出する明るさ算出ステップと、
    前記明るさに対する重みにより明るさ領域を規定するための明るさ領域関数を設定する明るさ領域関数設定ステップと、
    前記明るさ領域関数を明るさに対して累積することにより、明るさ変換関数を設定する明るさ変換関数設定ステップと、
    を有し、
    前記比率算出ステップが、前記局所領域における各画素の明るさに前記明るさ変換関数を適用して、比率を算出することを特徴とする画像処理方法。
  8. コンピュータを、
    画像処理を行う原画像の入力を受け付ける原画像入力手段、
    前記原画像から、明るさの変換を行う画素の周りに局所領域を設定する局所領域設定手段、
    前記明るさに対して連続かつ単調増加であり、明るさの変換の出力上限を決める上限変換関数を設定する上限変換関数設定手段、
    前記明るさに対して連続かつ単調増加であり、明るさの変換の出力下限を決める下限変換関数を設定する下限変換関数設定手段、
    前記変換を行う画素の明るさにおける前記上限変換関数の値である上限値および前記下限変換関数の値である下限値を算出する上限・下限値算出手段、
    前記局所領域における各画素の明るさに応じて、前記上限値と前記下限値との間の値を設定するための比率を算出する比率算出手段、
    前記明るさに対する重みにより明るさ領域を規定するための明るさ領域関数を設定する明るさ領域関数設定手段、
    前記明るさ領域関数を明るさに対して累積することにより、明るさ変換関数を設定する明るさ変換関数設定手段、および、
    前記上限値と前記下限値と前記比率とより、前記明るさの変換を行う画素の変換後の明るさを算出する明るさ算出手段として機能させ、
    前記比率算出手段が、前記局所領域における各画素の明るさに前記明るさ変換関数を適用して、比率を算出することを特徴とする画像処理用プログラム。
  9. コンピュータを、
    画像処理を行う原画像の入力を受け付ける原画像入力手段、
    前記原画像から、明るさの変換を行う画素の周りに局所領域を設定する局所領域設定手段、
    前記明るさに対して連続かつ単調増加であり、明るさの変換の出力上限を決める上限変換関数を設定する上限変換関数設定手段、
    前記明るさに対して連続かつ単調増加であり、明るさの変換の出力下限を決める下限変換関数を設定する下限変換関数設定手段、
    前記変換を行う画素の明るさにおける前記上限変換関数の値である上限値および前記下限変換関数の値である下限値を算出する上限・下限値算出手段、
    前記局所領域における各画素の明るさに応じて、前記上限値と前記下限値との間の値を設定するための比率を算出する比率算出手段、
    前記上限値と前記下限値と前記比率とより、前記明るさの変換を行う画素の変換後の明るさを算出する明るさ算出手段、
    前記明るさに対する重みにより明るさ領域を規定するための明るさ領域関数を設定する明るさ領域関数設定手段、および、
    前記明るさ領域関数を明るさに対して累積することにより、明るさ変換関数を設定する明るさ変換関数設定手段として機能させ、
    前記比率算出手段が、前記局所領域における各画素の明るさに前記明るさ変換関数を適用して、比率を算出することを特徴とする画像処理用プログラムがコンピュータ読み取り可能に記録された記録媒体。
JP2012113179A 2011-06-28 2012-05-17 画像処理装置、画像処理方法、画像処理用プログラム、および、記録媒体 Active JP5966603B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2012113179A JP5966603B2 (ja) 2011-06-28 2012-05-17 画像処理装置、画像処理方法、画像処理用プログラム、および、記録媒体
EP12173815.7A EP2541497B1 (en) 2011-06-28 2012-06-27 Image processing apparatus, image processing method, image processing program, and recording medium
DK12173815.7T DK2541497T3 (da) 2011-06-28 2012-06-27 Billedbehandlingsindretning, billedbehandlingsfremgangsmåde, billedbehandlingsprogram og optagemedium
US13/534,782 US8744207B2 (en) 2011-06-28 2012-06-27 Image processing device, image processing method, image processing program and recording medium

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2011142492 2011-06-28
JP2011142492 2011-06-28
JP2012113179A JP5966603B2 (ja) 2011-06-28 2012-05-17 画像処理装置、画像処理方法、画像処理用プログラム、および、記録媒体

Publications (2)

Publication Number Publication Date
JP2013033446A JP2013033446A (ja) 2013-02-14
JP5966603B2 true JP5966603B2 (ja) 2016-08-10

Family

ID=46642343

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012113179A Active JP5966603B2 (ja) 2011-06-28 2012-05-17 画像処理装置、画像処理方法、画像処理用プログラム、および、記録媒体

Country Status (4)

Country Link
US (1) US8744207B2 (ja)
EP (1) EP2541497B1 (ja)
JP (1) JP5966603B2 (ja)
DK (1) DK2541497T3 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112021004869T5 (de) 2020-09-15 2023-08-10 Hoya Corporation Prozessor für ein endoskop und endoskopsystem

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2718992C (en) 2008-03-21 2013-04-30 Abbott Point Of Care, Inc. Method and apparatus for determining the hematocrit of a blood sample utilizing the intrinsic pigmentation of hemoglobin contained within the red blood cells
US10453221B2 (en) * 2017-04-10 2019-10-22 Intel Corporation Region based processing
CN115018714A (zh) * 2021-03-05 2022-09-06 思特威(上海)电子科技股份有限公司 一种图像像素值映射方法、成像装置及计算机存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0352491B1 (en) * 1988-06-30 1996-08-14 Dainippon Screen Mfg. Co., Ltd. Method of generating gradation correction curve for correcting gradation character of image
JPH0652931B2 (ja) * 1988-06-30 1994-07-06 大日本スクリーン製造株式会社 階調変換曲線発生装置
US5149372A (en) 1990-02-27 1992-09-22 Pmc, Inc Multiple roll impregnator
JP4214457B2 (ja) 2003-01-09 2009-01-28 ソニー株式会社 画像処理装置および方法、記録媒体、並びにプログラム
WO2006137361A1 (ja) * 2005-06-20 2006-12-28 Nikon Corporation 画像処理装置、画像処理方法、画像処理プログラム製品、および撮像装置
JP2007158693A (ja) * 2005-12-05 2007-06-21 Nikon Corp 露出条件の異なる画像データを合成する画像処理装置、画像処理プログラム、電子カメラ、画像出力装置、および画像処理方法
JP5493717B2 (ja) * 2009-10-30 2014-05-14 大日本印刷株式会社 画像処理装置、画像処理方法、および、画像処理用プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112021004869T5 (de) 2020-09-15 2023-08-10 Hoya Corporation Prozessor für ein endoskop und endoskopsystem

Also Published As

Publication number Publication date
EP2541497B1 (en) 2019-02-20
US20130177257A1 (en) 2013-07-11
EP2541497A1 (en) 2013-01-02
DK2541497T3 (da) 2019-05-27
JP2013033446A (ja) 2013-02-14
US8744207B2 (en) 2014-06-03

Similar Documents

Publication Publication Date Title
EP1302898B1 (en) System and method for digital image tone mapping using an adaptive sigmoidal function based on perceptual preference guidelines
KR100940148B1 (ko) 디지털 영상을 그 잡음을 고려하여 수정하기 위한 방법 및시스템
US8170362B2 (en) Edge-enhancement device and edge-enhancement method
JP5493717B2 (ja) 画像処理装置、画像処理方法、および、画像処理用プログラム
JP6116272B2 (ja) 画像処理装置及び画像処理方法、プログラム、記憶媒体
JP5434265B2 (ja) 領域分類装置、画質改善装置、映像表示装置、およびそれらの方法
JPWO2008105268A1 (ja) 画像処理方法
JP4810473B2 (ja) 画像処理装置および画像処理プログラム
JP6613697B2 (ja) 画像処理装置、プログラムおよび記録媒体
JP3208762B2 (ja) 画像処理装置及び画像処理方法
JP5966603B2 (ja) 画像処理装置、画像処理方法、画像処理用プログラム、および、記録媒体
US8942477B2 (en) Image processing apparatus, image processing method, and program
US20080063295A1 (en) Imaging Device
US8896729B2 (en) Image processing apparatus and image processing method
JP5410378B2 (ja) 映像信号補正装置および映像信号補正プログラム
JP6957665B2 (ja) 画像処理装置、画像処理方法及びプログラム
KR101634652B1 (ko) 영상의 대비 강화 방법 및 장치
JP3807266B2 (ja) 画像処理装置
JP2022112995A (ja) 画像処理方法
JP2018128764A (ja) 画像処理装置、画像処理方法、及びプログラム
JP5863236B2 (ja) 画像処理装置、画像処理方法
JP6019782B2 (ja) 画像処理装置、画像処理方法、画像処理用プログラム、および、記録媒体
JP2006279162A (ja) 画像入力方法及びこれを用いた画像入力装置
JP2015076676A (ja) 画像処理装置、画像処理方法及びプログラム
JP2011022779A (ja) 画像補正装置、画像補正方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150422

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160301

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160427

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160607

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160620

R150 Certificate of patent or registration of utility model

Ref document number: 5966603

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150