JP2008118183A - 画像処理プログラムおよび画像処理装置 - Google Patents

画像処理プログラムおよび画像処理装置 Download PDF

Info

Publication number
JP2008118183A
JP2008118183A JP2006296904A JP2006296904A JP2008118183A JP 2008118183 A JP2008118183 A JP 2008118183A JP 2006296904 A JP2006296904 A JP 2006296904A JP 2006296904 A JP2006296904 A JP 2006296904A JP 2008118183 A JP2008118183 A JP 2008118183A
Authority
JP
Japan
Prior art keywords
value
pixel signal
reflected light
light component
normalized
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.)
Granted
Application number
JP2006296904A
Other languages
English (en)
Other versions
JP4353233B2 (ja
Inventor
Maki Kondo
真樹 近藤
Tomohiko Hasegawa
智彦 長谷川
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.)
Brother Industries Ltd
Original Assignee
Brother Industries 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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2006296904A priority Critical patent/JP4353233B2/ja
Priority to US11/931,213 priority patent/US8040409B2/en
Publication of JP2008118183A publication Critical patent/JP2008118183A/ja
Application granted granted Critical
Publication of JP4353233B2 publication Critical patent/JP4353233B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • 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)
  • Biodiversity & Conservation Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Image Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)

Abstract

【課題】レティネックス処理を高速で行うことができる画像処理プログラムおよび画像処理装置を提供すること。
【解決手段】プリンタでは、テーブルデータを参照することによってガンマ補正演算を行うことなく、入力された元画像をレティネックス処理して出力画像を生成することができるので、画像処理を高速化することができる。その上、元画像が最も多く有する正規化反射率refleの値にて形成されたテーブルデータ(中央値テーブル)を備えているので、テーブルデータを参照して作成される出力値Outを正確なものとすることができ、ガンマ補正演算によらずに出力画像を生成しても、画質を低下させることがない。
【選択図】図6

Description

本発明は、画像処理プログラムおよび画像処理装置に関し、特にレティネックス処理を高速で行うことができる画像処理プログラムおよび画像処理装置に関するものである。
逆光条件下で被写体が撮像された場合、被写体部分の画像は、詳細な態様が判別困難となるほど明度やコントラストの低い不明瞭な逆光画像となる。かかる逆光画像のみならず、露光の過不足や、撮像時のぶれやぼけ、ノイズ、光量不足などによる劣悪な画像を、画像処理によって明度やコントラストを向上させて画質を改良することが行われている。かかる画像処理の1手法として、レティネックス処理(Retinex処理)が知られている。
このレティネックス処理の概要を図7を参照して説明する。図7は、レティネックス処理の概要を示した図である。レティネックス処理では、まず、入力画像(元画像)の各画素を注目画素として(1)式に従ったガウスフィルタ処理が実行される(図7(a),(b))。図7の(b−1)には、m×nのマトリクスで形成されたガウスフィルタ(MSRマスク)を模式的に示している。また、図7の(b−2)には、このガウスフィルタの各マトリクスに設定されるフィルタ係数を示している。尚、図7の(b−2)におけるグラフは、横軸にマトリクスの位置(フィルタサイズ)、縦軸にフィルタ係数を示している。横軸の中心付近に示した「0」は、フィルタ中心位置であり、「0」から遠ざかるほどフィルタ中心から遠いマトリクス位置となる。図7の(b−2)に示すように、ガウスフィルタは、中心から四方へ向かって次第にフィルタ係数が小さくなると共に、各フィルタ係数の総合計が1となるように設計されている。
Figure 2008118183
ここで、xは、横方向の座標を、yは、縦方向の座標を、I(x,y)は、座標(x、y)における信号強度値(画素値,画素信号の値)を、F(x,y)は、ガウスフィルタを、*は、畳み込み演算(コンボリューション)をそれぞれ示す。かかるガウスフィルタ処理がなされると、即ち、各画素をそれぞれ注目画素とするm×nの領域にガウスフィルタF(x,y)による畳み込み演算が行われると、注目画素からの距離に応じた重みを加味しつつ平均された周辺画素の平均輝度値が、各画素のそれぞれに対応して算出されることとなる。このガウスフィルタ処理により算出される周辺画素の平均輝度値は、注目画素の画素値に周辺画素の画素値を反映した値となる。
そして、(2)式に従って、入力画像の各画素値を、算出された対応する平均輝度値で除し、得られた値を自然対数化する(図7(c))。
Figure 2008118183
この対数化された値(対数値)をRとする。対数値Rは、各画素値毎に、対応するR(x,y)が求められる。この対数値Rが求められると、対数値Rのヒストグラムを生成するために、全対数値Rの最大値と最小値とが求められる。
次いで、得られた最大値と最小値との範囲で、対数値Rのヒストグラム(頻度分布)を作成し(図7(d))、その後、ヒストグラムの補正を行う(図7(e))。かかるヒストグラム補正では、作成されたヒストグラムからメジアン値Mを求め、そのメジアン値Mから大きい側へ所定%(例えば45%)の画素数を含む範囲の上限値をU、メジアン値Mから小さい側へ所定%(例えば45%)の画素数を含む範囲の下限値をDとする。
続いて、対数値Rを正規化した正規化反射率(正規化レティネックス値)refleを求める(図7(f))。具体的には、求められた上限値Uおよび下限値Dの値を、それぞれ予め定めた上限値uおよび下限値dとして、先に算出された上限値U〜下限値Dの範囲の対数値Rを上限値u〜下限値dの範囲の値に正規化する(正規化反射率refleの算出)。この正規化は、例えば、(3)式に従って実行される。
Figure 2008118183
尚、下限値D以下である対数値Rは下限値dに、上限値U以上である対数値Rは、上限値uとされる。求められた正規化反射率refleは、入力画像の反射光成分(正規化された反射光成分)であって、最終的な反射光成分(出力値Out)を求めるためのパラメータとなる値である。その後、正規化反射率refleに対し、カラー補正処理であるCR処理を実行した後(図7(g))、出力値Outを生成する。出力値Outは、(4)式に従って算出される。この出力値Outは、出力画像の各画素の画素値(出力画像データ)となる。
Figure 2008118183
レティネックス処理では、画素値は、照明光成分と反射光成分との合成値とされており、照明光成分は輝度を反映し、反射光成分は色を反映するものとされている。ここで、照明光成分は、入力画像の画素値を反射光成分で除して求められるので、(4)式においては、分母が照明光成分に相当する。尚、入力画像の画素値が0〜255で表されるので、refle(x,y)には255が乗算されている。
従って、出力値Outは、反射光成分となる。出力画像データの画素値としては、色を形成する値が必要であるので、反射光成分である出力値Outが求められるのである。当然の事ながら、(4)式からも解るように、算出される出力値Outは、ガンマ補正によって明度や階調(コントラスト)が補正された照明光成分が反映された値となっている。
このようなレティネックス処理によって、照明光成分に対してガンマ補正等の明度や階調(コントラスト)を補正する処理が行われて、入力画像に対し逆光画像部分などの低画質部分の画質が改良された出力画像を生成することができる。
特許3731577号公報
しかしながら、従来の文献に開示された処理では、図7(h)に示したガンマ補正演算が行われるので、出力値Outを生成するのに多大な時間を要するという問題点があった。つまり、ガンマ補正演算は複雑な演算処理であるために、計算量が多くなってしまうからである。しかも、一般に、画像(入力画像)を構成する画素は膨大な数であるため、各画素のそれぞれについて出力値Outを、上記(4)式に従って算出すると、更に処理時間を増大(処理速度を低下)させる一因となるという問題点があった。
本発明は、上記問題点を解決するためになされたものであり、レティネックス処理を高速で行うことができる画像処理プログラムおよび画像処理装置を提供することを目的としている。
この目的を達成するために、請求項1記載の画像処理プログラムは、画像の補正処理を行う画像処理装置に搭載され、元画像における注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とに基づいて注目画素と周辺画素との相対的な明るさの指標となる反射光成分値を算出する反射光成分算出ステップと、その反射光成分算出ステップにて算出された反射光成分値をパラメータとして注目画素の画素信号の値をガンマ補正した補正値と、注目画素の画素信号の値とに基づいて出力画像の画素信号を生成する画素信号生成ステップとを備え、レティネックス処理による画像の補正を実行するものであって、前記画素信号生成ステップは、第1の画素信号の値に対し予め定めた反射光成分値をパラメータとしてガンマ補正を行った補正値、または、その補正値と第1の画素信号の値とに基づいて算出された第2の画素信号の値を画素信号生成因子とし、その画素信号生成因子を第1の画素信号の値に対応つけて予め記憶する記憶手段から、注目画素の画素信号の値に基づいて対応する画素信号生成因子を抽出する抽出ステップと、その抽出ステップにて抽出された画素信号生成因子に基づいて出力画像の画素信号を生成する抽出生成ステップとを備えており、前記記憶手段に予め記憶された画素信号生成因子に対してなされたガンマ補正においてパラメータとされた前記予め定めた反射光成分値は、注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とが略同じである場合に、前記反射光成分算出ステップにて算出される値とされている。
尚、画素信号生成ステップは、元画像の全ての画素信号について、一義的に抽出生成ステップにて出力画像の画素信号生成を行うものであってもよく、また、元画像の一部の画素信号について抽出生成ステップによる出力画像の画素信号生成を行うものであっても良い。元画像の一部の画素信号について抽出生成ステップで出力画像の画素信号生成を行う場合は、例えば、反射光成分算出ステップにて算出された反射光成分値を基準に、抽出生成ステップによる出力画像の画素信号生成を行うかを判断してもよい。また、抽出生成ステップにて出力画像の画素信号が生成されない残りの画素信号については、ガンマ補正演算にて補正値を求めて出力画像の画素信号を生成しても良い。
また、補正値生成に関与するガンマ補正は、広義のガンマ補正であって、ガンマ関数による補正のみならず、画素信号の値が「0」から所定範囲の小さい値側にある場合にその値を増大させた出力値を生成するものであって且つ単調増加関数でない非線形の関数による補正を含む概念である。
請求項2記載の画像処理プログラムは、請求項1記載の画像処理プログラムにおいて、前記記憶手段に予め記憶される画素信号生成因子は、予め定めた複数の反射光成分値のそれぞれに対応して算出されたものであり、前記抽出ステップは、前記反射光成分算出ステップにより算出された反射光成分値に対応する画素信号生成因子を前記記憶手段から抽出する一方、前記算出された反射光成分値が前記記憶手段に予め記憶される画素信号生成因子に対応するものでない場合には、前記予め定めた複数の反射光成分値の内、前記反射光成分算出ステップにより算出された反射光成分値を跨ぐ2つの値について、対応する画素信号生成因子を前記記憶手段から抽出するものであり、前記抽出生成ステップは、前記抽出ステップにて抽出された2の画素信号生成因子に対し、前記反射光成分算出ステップにより算出された反射光成分値に基づいた補間演算を行って、出力画像の画素信号を生成するものである。
請求項3記載の画像処理プログラムは、請求項1又は2に記載の画像処理プログラムにおいて、前記画素信号生成ステップは、前記反射光成分算出ステップにより算出された反射光成分値について、所定割合以上の画素が属する範囲となることを条件に、反射光成分値の正規化範囲を決定する範囲決定ステップと、その範囲決定ステップにより決定された正規化範囲を予め定めた上限値と下限値との範囲とする変換により、前記正規化範囲に属する各反射光成分値を正規化して正規化反射光成分値を算出する正規化ステップとを有し、その正規化ステップにて正規化された正規化反射光成分値を前記反射光成分値として用いて出力画像の画素信号を生成するものであり、前記記憶手段に予め記憶された画素信号生成因子に対してなされたガンマ補正においてパラメータとされた前記予め定めた反射光成分値は、前記正規化ステップにより正規化された値が取る範囲の正規化反射光成分値とされている。
請求項4記載の画像処理プログラムは、請求項2記載の画像処理プログラムにおいて、前記画素信号生成ステップは、前記反射光成分算出ステップにより算出された反射光成分値について、所定割合以上の画素が属する範囲となることを条件に、反射光成分値の正規化範囲を決定する範囲決定ステップと、その範囲決定ステップにより決定された正規化範囲を予め定めた上限値と下限値との範囲とする変換により、前記正規化範囲に属する各反射光成分値を正規化して正規化反射光成分値を算出する正規化ステップとを有し、その正規化ステップにて正規化された正規化反射光成分値を前記反射光成分値として用いて出力画像の画素信号を生成するものであり、前記記憶手段に予め記憶された画素信号生成因子に対してなされたガンマ補正においてパラメータとされた前記予め定めた反射光成分値には、前記正規化ステップにより正規化された値が取る範囲の正規化反射光成分値であって、前記正規化ステップにて正規化範囲を変換するために予め定められた上限値と下限値とが採用されている。
請求項5記載の画像処理プログラムは、画像の補正処理を行う画像処理装置に搭載され、元画像における注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とに基づいて注目画素と周辺画素との相対的な明るさの指標となる反射光成分値を算出する反射光成分算出ステップと、その反射光成分算出ステップにて算出された反射光成分値をパラメータとして注目画素の画素信号の値をガンマ補正した補正値と、注目画素の画素信号の値とに基づいて出力画像の画素信号を生成する画素信号生成ステップとを備え、レティネックス処理による画像の補正を実行するものであり、前記画素信号生成ステップは、前記反射光成分算出ステップにより算出された反射光成分値について、所定割合以上の画素が属する範囲となることを条件に、反射光成分値の正規化範囲を決定する範囲決定ステップと、その範囲決定ステップにより決定された正規化範囲を、予め定めた上限値と下限値との範囲とする変換により、前記正規化範囲に属する各反射光成分値を正規化して正規化反射光成分値を算出する正規化ステップと、第1の画素信号の値に対し予め定めた正規化反射光成分値をパラメータとしてガンマ補正を行った補正値、または、その補正値と第1の画素信号の値とに基づいて算出された第2の画素信号の値を画素信号生成因子とし、その画素信号生成因子を第1の画素信号の値に対応つけて予め記憶する記憶手段から、注目画素の画素信号の値に基づいて対応する画素信号生成因子を抽出する抽出ステップと、その抽出ステップにて抽出された画素信号生成因子に基づいて出力画像の画素信号を生成する抽出生成ステップとを備え、前記正規化ステップにて正規化された正規化反射光成分値を前記反射光成分値として用いて出力画像の画素信号を生成するものであり、前記記憶手段に予め記憶された画素信号生成因子に対してなされたガンマ補正においてパラメータとされた前記予め定めた正規化反射光成分値は、前記正規化ステップにて求められる元画像の正規化反射光成分値の平均値、中央値、最頻値のいずれかに対応する値とされている。
尚、画素信号生成ステップは、元画像の全ての画素信号について、一義的に抽出生成ステップにて出力画像の画素信号生成を行うものであってもよく、また、元画像の一部の画素信号について抽出生成ステップによる出力画像の画素信号生成を行うものであっても良い。元画像の一部の画素信号について抽出生成ステップで出力画像の画素信号生成を行う場合は、例えば、正規化ステップにて算出された正規化反射光成分値を基準に、抽出生成ステップによる出力画像の画素信号生成を行うかを判断してもよい。また、抽出生成ステップにて出力画像の画素信号が生成されない残りの画素信号については、ガンマ補正演算にて補正値を求めて出力画像の画素信号を生成しても良い。
請求項6記載の画像処理プログラムは、請求項5記載の画像処理プログラムにおいて、
前記記憶手段に予め記憶される画素信号生成因子は、予め定めた複数の正規化反射光成分値のそれぞれに対応して算出されたものであり、前記抽出ステップは、前記正規化ステップにより正規化された正規化反射光成分値に対応する画素信号生成因子を前記記憶手段から抽出する一方、前記正規化された正規化反射光成分値が、前記記憶手段に予め記憶される画素信号生成因子に対応するものでない場合には、前記予め定めた複数の正規化反射光成分値の内、前記正規化ステップにて正規化された正規化反射光成分値を跨ぐ2つの値について、対応する画素信号生成因子を前記記憶手段から抽出するものであり、前記抽出生成ステップは、前記抽出ステップにて抽出された2の画素信号生成因子に対し、前記正規化ステップにて正規化された正規化反射光成分値に基づいた補間演算を行って、出力画像の画素信号を生成するものである。
請求項7記載の画像処理プログラムは、請求項6記載の画像処理プログラムにおいて、前記記憶手段に予め記憶された画素信号生成因子に対してなされたガンマ補正においてパラメータとされた前記予め定めた正規化反射光成分値には、前記正規化ステップにて正規化範囲を変換するために予め定められた上限値と下限値とが採用されている。
請求項8記載の画像処理プログラムは、請求項3から7のいずれかに記載の画像処理プログラムにおいて、前記正規化範囲を変換するために予め定められた下限値は、0を超える値とされている。
請求項9記載の画像処理プログラムは、請求項3から8のいずれかに記載の画像処理プログラムにおいて、前記正規化範囲を変換するために予め定められた上限値は、1以上の値とされている。
請求項10記載の画像処理プログラムは、請求項8又は9に記載の画像処理プログラムにおいて、前記正規化範囲を変換するために予め定められた上限値と下限値との幅は、1とされている。
請求項11記載の画像処理装置は、元画像における注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とに基づいて注目画素と周辺画素との相対的な明るさの指標となる反射光成分値を算出する反射光成分算出手段と、その反射光成分算出手段にて算出された反射光成分値をパラメータとして注目画素の画素信号の値をガンマ補正した補正値と、注目画素の画素信号の値とに基づいて出力画像の画素信号を生成する画素信号生成手段とを備え、レティネックス処理による画像の補正を実行するものであり、第1の画素信号の値に対し予め定めた反射光成分値をパラメータとしてガンマ補正を行った補正値、または、その補正値と第1の画素信号の値とに基づいて算出された第2の画素信号の値を画素信号生成因子とし、その画素信号生成因子を第1の画素信号の値に対応つけて予め記憶する記憶手段を備えており、前記画素信号生成手段は、その記憶手段から、注目画素の画素信号の値に基づいて対応する画素信号生成因子を抽出する抽出手段と、その抽出手段にて抽出された画素信号生成因子に基づいて出力画像の画素信号を生成する抽出生成手段とを備えており、前記記憶手段に予め記憶された画素信号生成因子に対してなされたガンマ補正においてパラメータとされた前記予め定めた反射光成分値は、注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とが略同じである場合に、前記反射光成分算出手段にて算出される値とされていることを特徴とする画像処理装置。
尚、補正値生成に関与するガンマ補正は、広義のガンマ補正であって、ガンマ関数による補正のみならず、画素信号の値が「0」から所定範囲の小さい値側にある場合にその値を増大させた出力値を生成するものであって且つ単調増加関数でない非線形の関数による補正を含む概念である。
請求項12記載の画像処理装置は、元画像における注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とに基づいて注目画素と周辺画素との相対的な明るさの指標となる反射光成分値を算出する反射光成分算出手段と、その反射光成分算出手段にて算出された反射光成分値をパラメータとして注目画素の画素信号の値をガンマ補正した補正値と、注目画素の画素信号の値とに基づいて出力画像の画素信号を生成する画素信号生成手段とを備え、レティネックス処理による画像の補正を実行するものであり、第1の画素信号の値に対し予め定めた正規化反射光成分値をパラメータとしてガンマ補正を行った補正値、または、その補正値と第1の画素信号の値とに基づいて算出された第2の画素信号の値を画素信号生成因子とし、その画素信号生成因子を第1の画素信号の値に対応つけて予め記憶する記憶手段を備えており、前記画素信号生成手段は、前記反射光成分算出手段により算出された反射光成分値について、所定割合以上の画素が属する範囲となることを条件に、反射光成分値の正規化範囲を決定する範囲決定手段と、その範囲決定手段により決定された正規化範囲を、予め定めた上限値と下限値との範囲とする変換により、前記正規化範囲に属する各反射光成分値を正規化して正規化反射光成分値を算出する正規化手段と、前記記憶手段から、注目画素の画素信号の値に基づいて対応する画素信号生成因子を抽出する抽出手段と、その抽出手段にて抽出された画素信号生成因子に基づいて出力画像の画素信号を生成する抽出生成手段とを備え、前記正規化手段にて正規化された正規化反射光成分値を前記反射光成分値として用いて出力画像の画素信号を生成するものであり、前記記憶手段に予め記憶された画素信号生成因子に対してなされたガンマ補正においてパラメータとされた前記予め定めた正規化反射光成分値は、前記正規化手段にて求められる元画像の正規化反射光成分値の平均値、中央値、最頻値のいずれかに対応する値とされていることを特徴とする画像処理装置。
尚、補正値生成に関与するガンマ補正は、広義のガンマ補正であって、ガンマ関数による補正のみならず、画素信号の値が「0」から所定範囲の小さい値側にある場合にその値を増大させた出力値を生成するものであって且つ単調増加関数でない非線形の関数による補正を含む概念である。
請求項1記載の画像処理プログラムによれば、反射光成分算出ステップにより反射光成分値が算出される。ここで、反射光成分値は、注目画素と周辺画素との相対的な明るさの指標とされるものであって、元画像における注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とに基づいて算出される。そして、この算出された反射光成分値をパラメータとして注目画素の画素信号の値をガンマ補正した補正値と、注目画素の画素信号の値とに基づいて、画素信号生成ステップにより、出力画像の画素信号が、即ち、レティネックス処理による補正がなされた画素信号が、生成される。かかる画素信号生成ステップでは、抽出ステップにより、記憶手段から、注目画素の画素信号の値に基づいて対応する画素信号生成因子が抽出され、その抽出ステップにて抽出された画素信号生成因子に基づいて、出力画像の画素信号が、抽出生成ステップにて生成される。
よって、かかる抽出生成ステップにより、ガンマ補正の複雑な演算を行うことなく出力画像の画素信号を生成することができるので、元画像に対するレティネックス処理を行って出力画像を生成する一連の画像処理において演算量を減らすことができ、高速で処理を行うことができるという効果がある。
また、記憶手段には、画素信号生成因子として、第1の画素信号の値に対し予め定めた反射光成分値をパラメータとしてガンマ補正を行った補正値、または、その補正値と第1の画素信号の値とに基づいて算出された第2の画素信号の値が、第1の画素信号の値に対応つけて予め記憶されている。記憶される画素信号生成因子は、第1の画素信号の値に対してガンマ補正を行って導出された値であるが、ガンマ補正においては、予め定めた反射光成分値がその演算のパラメータとされている。そして、このパラメータである予め定めた反射光成分値は、注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とが略同じである場合に、反射光成分算出ステップにて算出される値とされている。従って、ガンマ補正の演算を行うのではなく、元画像の注目画素の画素信号の値に対応する値を記憶手段から抽出するという簡便な処理にて出力画像の画素信号を生成しても、精度良く、該画素信号の値を生成することができるという効果がある。
抽出生成ステップにて生成される出力画像の画素信号の値を、元画像の画素信号の値を実際にガンマ補正して得られる値に近似させるためには、本プログラムにて取り扱う画素信号生成因子、即ち、記憶手段に記憶させる画素信号生成因子を、どのように設計するかが重要となる。ここで、画素信号生成因子(第1の画素信号の値をガンマ補正した補正値)は、パラメータとする反射光成分値によって大きく変化するので、記憶手段に記憶させる画素信号生成因子を設計する上で、ガンマ補正のパラメータとする予め定めた反射光成分値をどのようするかが肝要となる。
記憶手段に記憶される画素信号生成因子は、元画像の大部分においては、注目画素の画素信号の値とその周辺画素の平均輝度値とが略同じとなることから、注目画素の画素信号の値とその周辺画素の平均輝度値とが略同じである場合に反射光成分算出ステップにて算出される反射光成分値をガンマ補正のパラメータとして設計されている。これによれば、抽出生成ステップにて出力画像の画素信号の値を生成すると、元画像の大部分については、ガンマ補正の演算で生成した場合と同様の結果(近似した結果)を得ることができる。その結果、ガンマ補正の演算を行って出力画像の画素信号を生成した場合と比べて、画像品質を大きく劣化させることがない上、高速で出力画像の生成を行うことができるという効果がある。
請求項2記載の画像処理プログラムによれば、請求項1記載の画像処理プログラムの奏する効果に加え、抽出ステップにて、反射光成分算出ステップにより算出された反射光成分値に対応する画素信号生成因子が記憶手段から抽出される一方、算出された反射光成分値が記憶手段に予め記憶される画素信号生成因子に対応するものでない場合には、予め定めた複数の反射光成分値の内、反射光成分算出ステップにより算出された反射光成分値を跨ぐ2つの値について対応する画素信号生成因子が記憶手段から抽出される。そして、抽出ステップにて抽出された2の画素信号生成因子に対し、抽出生成ステップにて、反射光成分算出ステップにより算出された反射光成分値に基づいた補間演算が行われて、出力画像の画素信号が生成される。
記憶手段に記憶される画素信号生成因子が唯一の反射光成分値に対応するもののみとされていると、元画像の各注目画素に対応する出力画像の各画素信号を全て、抽出生成ステップにて生成しようとすれば、反射光成分算出ステップにより算出される全ての反射光成分値を、その唯一の反射光成分値として扱わねばならない。ところが、実際には、反射光成分算出ステップにて算出される反射光成分値は、唯一の値とはならないため、かかる条件下で抽出生成ステップが生成する値は、生成されるべき値(ガンマ補正演算を行った場合に得られる値)から大きくずれてしまいかねない。
しかし、記憶手段には、予め定めた複数の反射光成分値に対応する画素信号生成因子が記憶されており、本プログラムにおいては、抽出生成ステップにおいて、出力画像の画素信号の値生成に際し、算出された反射光成分値に対応する適切な画素信号生成因子を選択することができる。よって、抽出生成ステップにて生成される出力画像の画素信号の値について、その生成されるべき値からのずれを抑制することができる。
更には、反射光成分算出ステップにより算出された反射光成分値が記憶手段に予め記憶される画素信号生成因子に対応するものでなくとも、算出された反射光成分値に対応する画素信号生成因子を補間演算によって導出することができる。故に、様々な反射光成分値が反射光成分算出ステップにより算出されても、補間演算を行うことによって得られる画素信号生成因子を元に、抽出生成ステップで、適切な出力画像の画素信号の値を生成することができるという効果がある。
このため、反射光成分算出ステップにて算出される様々な反射光成分値に対応して膨大な画素信号生成因子を記憶手段に記憶させておく必要が無く、画素信号生成因子を記憶するために必要な記憶手段のメモリ容量を抑制することができる。
また、抽出生成ステップは、注目画素の画素信号の値とその周辺画素の平均輝度値とが略同じである場合に反射光成分算出ステップにて算出される反射光成分値をパラメータとした画素信号生成因子を用いて補間演算を行って、出力画像の画素信号の値を生成することができる。このため、生成した画素信号の値とその周辺画素の画素信号の値との輝度差の正負を、入力画像と同じ符号とすることができるという効果がある。つまり、注目画素と周辺画素とを比較した場合、注目画素が周辺画素に比べて明るい、同じ、暗いの3つのパターンが生じる。注目画素の画素信号の値とその周辺画素の平均輝度値とが略同じである場合は、注目画素と周辺画素との明るさ(輝度)が同じ場合に対応している。つまり、注目画素の画素信号の値とその周辺画素の平均輝度値とが略同じである場合に、反射光成分算出ステップにて算出される反射光成分値は、注目画素と周辺画素との輝度差の正負が反転する境界となる。従って、かかる反射光成分値に対応する画素信号生成因子が記憶手段に記憶されていると、抽出生成ステップが補間演算を行って画素信号の値を生成する場合に、かかる境界を跨ぐ補間演算は実行されない。言い換えれば、注目画素の輝度と周辺画素の輝度との正負が反転する境界を境にした補間演算が行われるので、両者の輝度の差が出力画像において反転することがない(輝度差の正負を入力画像と同じ符号となる)。故に、出力画像において入力画像と異なった不自然なコントラストが発生することを回避することができるという効果がある。
請求項3記載の画像処理プログラムによれば、請求項1又は2に記載の画像処理プログラムの奏する効果に加え、反射光成分算出ステップにより算出された反射光成分値について所定割合以上の画素が属する範囲となることを条件に、反射光成分値の正規化範囲が、範囲決定ステップにて決定されると、決定された正規化範囲を予め定めた上限値と下限値との範囲とする変換により、正規化範囲に属する反射光成分値を正規化した正規化反射光成分値が、正規化ステップにて算出される。
反射光成分算出ステップにより算出された反射光成分値の全ての値を許容していては、扱う数値範囲が膨大な範囲に及んでしまうため、算出された反射光成分値を用いた処理において処理速度の低下を招いてしまう。よって、正規化ステップで反射光成分値を正規化することにより、反射光成分算出ステップにより算出された反射光成分値を、現実的な範囲で取扱う事ができ、処理速度を向上させることができるという効果がある。また、正規化ステップにて正規化を行うことにより、ノイズ等の影響をカットすることができるという効果がある。
更に、記憶手段に予め記憶された画素信号生成因子に対してなされたガンマ補正においてパラメータとされた予め定めた反射光成分値は、正規化ステップにより正規化された値が取る範囲の正規化反射光成分値とされているので、抽出ステップにて抽出された画素信号生成因子に基づいて抽出生成ステップが出力画像の画素信号を生成することにより、正規化反射光成分値を反射光成分値として用いて、出力画像の画素信号を生成することができる。
ここで、本プログラムは、正規化ステップにて正規化された正規化反射光成分値を反射光成分値として用いて出力画像の画素信号を生成するものであるので、例えば、入力画像の一部についてガンマ補正の演算を行って出力画像の画像の画素信号の値を生成する場合にも、正規化ステップにて正規化された正規化反射光成分値に対してのガンマ補正の演算が行われることとなる。かかる場合においては、入力画像の他の部分については、抽出生成ステップにて出力画像の画素信号の値が生成されるが、その抽出生成ステップにて生成される出力画像の画素信号の値も、正規化反射光成分値を用いて生成されるものとなるので、画像全体のトーンを均質なものとすることができる。
更には、請求項2に従属する画像処理プログラムによれば、正規化ステップにて正規化された正規化反射光成分値に対応する画素信号生成因子が、抽出ステップにて抽出されることとなる。正規化された正規化反射光成分値が取る範囲は、予め定めた上限値から下限値に至る範囲であるので、正規化ステップにより正規化された正規化反射光成分値と、記憶手段に予め記憶させておく画素信号生成因子の算出に関与した正規化反射光成分値とは同じ範囲で規定されるものとなる。正規化された値が取る範囲、即ち、上限値および下限値に応じて、正規化後の値は変化するため、正規化ステップにより正規化された正規化反射光成分値と、記憶手段に予め記憶させておく画素信号生成因子の算出に関与した正規化反射光成分値とを同じ範囲で規定することにより、両者を整合することができる。その結果、抽出ステップが、画素信号生成因子の記憶手段から抽出を、正規化ステップにて正規化された正規化反射光成分値に基づいて行うことにより、的確な画素信号生成因子の抽出を行うことができるという効果がある。
請求項4記載の画像処理プログラムによれば、請求項2記載の画像処理プログラムの奏する効果に加え、反射光成分算出ステップにより算出された反射光成分値について所定割合以上の画素が属する範囲となることを条件に、反射光成分値の正規化範囲が、範囲決定ステップにて決定されると、決定された正規化範囲を予め定めた上限値と下限値との範囲とする変換により、正規化範囲に属する反射光成分値を正規化した正規化反射光成分値が、正規化ステップにて算出される。このため、予め定めた上限値と下限値とは、それぞれ正規化反射光成分値の上限値と下限値となる。そして、正規化ステップにて正規化された正規化反射光成分値を反射光成分値として用いて、画素信号生成ステップにより出力画像の画素信号が生成される。抽出ステップにおいては、正規化反射光成分値に基づいて記憶手段から画素信号生成因子が抽出される。ここで、記憶手段に予め記憶された画素信号生成因子に対してなされたガンマ補正においてパラメータとされた予め定めた反射光成分値には、正規化ステップにより正規化された値が取る範囲の正規化反射光成分値であって、正規化ステップにて正規化範囲を変換するために予め定められた上限値と下限値とが採用されている。
よって、記憶手段には、注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とが略同じである場合に反射光成分算出ステップにて算出される反射光成分値の正規化反射光成分値に対応する画素信号生成因子に加え、予め定めた上限値と下限値とのそれぞれに対応する画素信号生成因子が記憶されることとなり、正規化ステップにて正規化された正規化反射光成分値が取り得る全範囲において、抽出生成ステップによって、出力画像の画素信号を生成することができるという効果がある。従って、元画像に対するレティネックス処理を行って出力画像を生成する一連の画像処理を、単純なアルゴリズムで実行でき、その処理時間を短縮することができるという効果がある。
更には、記憶手段には、上限値と下限値との間のもう一点の正規化反射光成分値に対応する画素信号生成因子が保持されるので、抽出生成ステップにおいて、画素信号生成因子の補間演算を行う場合に、正規化反射光成分値の変化に対し非線形に変化する画素信号生成因子の値の偏差を反映して補間演算を実行することができ、抽出生成ステップによって生成される出力画像の画素信号の値の精度を向上させることができるという効果がある。
請求項5記載の画像処理プログラムによれば、反射光成分算出ステップにより反射光成分値が算出される。反射光成分値は、注目画素と周辺画素との相対的な明るさの指標とされるものであって、元画像における注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とに基づいて算出される。そして、反射光成分算出ステップにより算出された反射光成分値について所定割合以上の画素が属する範囲となることを条件に、反射光成分値の正規化範囲が、範囲決定ステップにて決定されると、決定された正規化範囲を予め定めた上限値と下限値との範囲とする変換により、正規化範囲に属する反射光成分値を正規化した正規化反射光成分値が、正規化ステップにて算出される。そして、この算出された正規化反射光成分値をパラメータとして注目画素の画素信号の値をガンマ補正した補正値と、注目画素の画素信号の値とに基づいて、画素信号生成ステップにより、出力画像の画素信号が、即ち、レティネックス処理による補正がなされた画素信号が、生成される。
かかる画素信号生成ステップでは、抽出ステップにより、記憶手段から、注目画素の画素信号の値に基づいて対応する画素信号生成因子が抽出され、抽出された画素信号生成因子に基づいて出力画像の画素信号が抽出生成ステップにて生成される。
よって、かかる抽出生成ステップにより、ガンマ補正の複雑な演算を行うことなく出力画像の画素信号を生成することができるので、元画像に対するレティネックス処理を行って出力画像を生成する一連の画像処理において演算量を減らすことができ、高速で処理を行うことができるという効果がある。
また、記憶手段には、画素信号生成因子として、第1の画素信号の値に対し予め定めた正規化反射光成分値をパラメータとしてガンマ補正を行った補正値、または、その補正値と第1の画素信号の値とに基づいて算出された第2の画素信号の値が、第1の画素信号の値に対応つけて予め記憶されている。記憶される画素信号生成因子は、第1の画素信号の値に対しガンマ補正を行って導出された値であるが、ガンマ補正においては、予め定めた反射光成分値がその演算のパラメータとされている。そして、ガンマ補正のパラメータであるこの予め定めた反射光成分値は、正規化ステップにて求められる元画像の正規化反射光成分値の平均値、中央値、最頻値のいずれかに対応する値とされている。従って、ガンマ補正の演算を行うことなく、元画像の注目画素の画素信号の値に対応する値を記憶手段から抽出するという簡便な処理にて出力画像の画素信号を生成しても、精度良く、該画素信号の値を生成することができるという効果がある。
抽出生成ステップにて生成される出力画像の画素信号の値を、元画像の画素信号の値を実際にガンマ補正して得られる値と近似させるためには、本プログラムにて取り扱う画素信号生成因子、即ち、記憶手段に記憶させる画素信号生成因子を、どのように設計するかが重要となる。画素信号生成因子(第1の画素信号の値をガンマ補正した補正値)は、パラメータとする正規化反射光成分値によって大きく変化するので、記憶手段に記憶させる画素信号生成因子を設計する上で、パラメータとする予め定めた正規化反射光成分値をどのように選定かが肝要となる。
ここで、記憶手段に記憶される画素信号生成因子のパラメータである正規化反射光成分値は、正規化ステップにて求めた元画像の正規化反射光成分値の平均値、中央値、最頻値のいずれかに対応する値とされているので、正規化反射光成分値の母集団を代表する値とすることができる。その結果、かかる正規化反射光成分値をパラメータとしてガンマ補正された画素信号生成因子は、元画像の注目画素の画素信号の値に対し、幅広く対応するものとなる。故に、抽出生成ステップにて画素信号生成因子に基づいて生成される出力画像の画素信号の値を適切なものとすることができるという効果がある。従って、ガンマ補正の演算を行って出力画像の画素信号を生成した場合と比べて、画像品質を大きく劣化させることがない上、高速で出力画像の生成を行うことができるという効果がある。
尚、本プログラムは、正規化ステップを備えているので、元画像が異なるものであっても、各元画像について得られる正規化反射光成分値は、正規化によって同様の分布態様となることが多い。従って、記憶手段に、予め、1の元画像の正規化反射光成分値の平均値、中央値、最頻値のいずれかをパラメータとして算出された画素信号生成因子を記憶させくことにより、他の元画像についても、記憶手段に記憶される画素信号生成因子を適用して、支障なく、出力画像の画素信号の値を生成することができる。
請求項6記載の画像処理プログラムによれば、請求項5記載の画像処理プログラムの奏する効果に加え、抽出ステップにて、正規化ステップにより正規化(算出)された正規化反射光成分値に対応する画素信号生成因子が記憶手段から抽出される一方、正規化ステップにより正規化された正規化反射光成分値が、記憶手段に予め記憶される画素信号生成因子に対応するものでない場合には、予め定めた複数の正規化反射光成分値の内、正規化ステップにて正規化された正規化反射光成分値を跨ぐ2つの値について対応する画素信号生成因子が、抽出ステップにより記憶手段から抽出される。そして、抽出ステップにて抽出された2の画素信号生成因子に対し、正規化ステップにて正規化された正規化反射光成分値に基づいた補間演算が、抽出生成ステップにて行われて、出力画像の画素信号が生成される。
記憶手段に記憶される画素信号生成因子が唯一の正規化反射光成分値に対応するもののみとされていると、元画像の各注目画素に対応する出力画像の各画素信号を全て、抽出生成ステップにて生成しようとすれば、正規化ステップにより算出される全ての正規化反射光成分値を、その唯一の正規化反射光成分値として扱わねばならない。ところが、実際には、反射光成分算出ステップにて算出された後に正規化ステップにて正規化された正規化反射光成分値は、唯一の値とはならないため、かかる条件下で抽出生成ステップが生成した出力画像の画素信号の値は、生成されるべき値(ガンマ補正演算を行った場合に得られる値)から大きくずれてしまいかねない。
しかし、記憶手段には、予め定めた複数の正規化反射光成分値に対応する画素信号生成因子が記憶されているので、本プログラムでは、出力画像の画素信号の値生成に際し、算出された正規化反射光成分値に対応する適切な画素信号生成因子を選択することができる。よって、抽出生成ステップにて生成される出力画像の画素信号の値について、その生成されるべき値からのずれを抑制することができる。
更には、正規化ステップにより算出された正規化反射光成分値が記憶手段に予め記憶される画素信号生成因子に対応するものでなくとも、算出された正規化反射光成分値に対応する画素信号生成因子を補間演算によって導出することができる。故に、正規化ステップにて様々な正規化反射光成分値が算出されても、補間演算を行うことによって得られる画素信号生成因子を元に、抽出生成ステップで、適切な出力画像の画素信号の値を生成することができるという効果がある。従って、反射光成分算出ステップにて算出される反射光成分値は様々であるためその反射光成分値が正規化された反射光成分値も多様となるが、かかる多様な正規化反射光成分に対応して膨大な画素信号生成因子を記憶手段に記憶させておく必要が無く、画素信号生成因子を記憶するために必要な記憶手段のメモリ容量を抑制することができる。
請求項7記載の画像処理プログラムによれば、請求項6記載の画像処理プログラムの奏する効果に加え、記憶手段に予め記憶された画素信号生成因子に対してなされたガンマ補正においてパラメータとされた予め定めた正規化反射光成分値には、正規化ステップにて正規化範囲を変換するために予め定められた上限値と下限値とが採用されているので、記憶手段には、正規化ステップにて求めた元画像の正規化反射光成分値の平均値、中央値、最頻値のいずれかに対応する正規化反射光成分値に対応する画素信号生成因子に加え、予め定めた上限値と下限値とのそれぞれに対応する画素信号生成因子が記憶されることとなり、正規化された正規化反射光成分値が取り得る全範囲において、抽出生成ステップによって、出力画像の画素信号を生成することができるという効果がある。従って、元画像に対するレティネックス処理を行って出力画像を生成する一連の画像処理を、単純なアルゴリズムで実行でき、その処理時間を短縮することができるという効果がある。
更には、記憶手段には、上限値と下限値との間のもう一点の正規化反射光成分値に対応する画素信号生成因子が保持されるので、抽出生成ステップにおいて、画素信号生成因子の補間演算を行う場合に、正規化反射光成分値の変化に対し非線形に変化する画素信号生成因子の値の偏差を反映して補間演算を実行することができ、抽出生成ステップによって生成される出力画像の画素信号の値の精度を向上させることができるという効果がある。
請求項8記載の画像処理プログラムによれば、請求項3から7のいずれかに記載の画像処理プログラムの奏する効果に加え、正規化範囲を変換するために予め定められた下限値は、0を超える値とされているので、出力画像の画素信号の値が生成不能となることを回避できるという効果がある。
一般に、レティネックス処理において、補正値を求める演算には、注目画素の画素信号の値を正規化反射光成分値で除す演算が含まれる。上記の予め定められた下限値が0である場合には、正規化反射光成分値が0を含む値となる。正規化反射光成分値が0である場合には、算出される補正値は無限大となるので算出不能となってしまう。しかし、本プログラムにおいては、正規化範囲を変換するために予め定められた下限値は、0を超える値とされているので、正規化反射光成分値を用いて算出される補正値が無限大となることを回避できる。従って、正規化反射光成分値をパラメータとしするガンマ補正を経て算出された補正値、画素信号生成因子は、必ず実在する数となるので、予め定めた下限値に対応する画素信号生成因子に基づく出力画像の画素信号の値を、抽出生成ステップによって、確実に生成することができる。
請求項9記載の画像処理プログラムによれば、請求項3から8のいずれかに記載の画像処理プログラムの奏する効果に加え、正規化範囲を変換するために予め定められた上限値は、1以上の値とされているので、出力画像の画素信号のダイナミックレンジの上側の値を、入力された元画像の画素信号のダイナミックレンジの上側以上の値とすることができるという効果がある。
例えば、元画像の画素信号が0〜255のダイナミックレンジ(上側のレンジが255)を有する場合に、出力画像の画素信号の値の上側のレンジが255未満となる補正が行われてしまうと、出力画像全体のトーンが暗くなって、画像品質を低下させてしまう。しかし、正規化範囲を変換するために予め定められた上限値は、1以上の値とされているので、正規化ステップにて正規化された正規化反射光成分値の最大値を1以上の値とする事ができる。故に、元画像の画素信号が0〜255のダイナミックレンジであれば、算出される画素生成因子の値の最大値を255以上の値とすることができ、良好な画像品質を確保することができる。
請求項10記載の画像処理プログラムによれば、請求項8又は9に記載の画像処理プログラムの奏する効果に加え、正規化範囲を変換するために予め定められた上限値と下限値との幅は、1とされているので、生成される出力画像の画素信号のダイナミックレンジを、元画像の画素信号のダイナミックレンジと略同じにすることができるという効果がある。このため、元画像に比べて、出力画像の全体の階調が極端に変化する、即ち、階調範囲が極端に狭くなったり広くなったりすることを回避できる。
請求項11記載の画像処理装置によれば、反射光成分算出手段により反射光成分値が算出される。ここで、反射光成分値は、注目画素と周辺画素との相対的な明るさの指標とされるものであって、元画像における注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とに基づいて算出される。そして、この算出された反射光成分値をパラメータとして注目画素の画素信号の値をガンマ補正した補正値と、注目画素の画素信号の値とに基づいて、画素信号生成手段により、出力画像の画素信号が、即ち、レティネックス処理による補正がなされた画素信号が、生成される。かかる画素信号生成手段では、抽出手段により、記憶手段から、注目画素の画素信号の値に基づいて対応する画素信号生成因子が抽出され、その抽出手段にて抽出された画素信号生成因子に基づいて、出力画像の画素信号が、抽出生成手段にて生成される。
よって、かかる抽出生成手段により、ガンマ補正の複雑な演算を行うことなく出力画像の画素信号を生成することができるので、元画像に対するレティネックス処理を行って出力画像を生成する一連の画像処理において演算量を減らすことができ、高速で処理を行うことができるという効果がある。
また、記憶手段には、画素信号生成因子として、第1の画素信号の値に対し予め定めた反射光成分値をパラメータとしてガンマ補正を行った補正値、または、その補正値と第1の画素信号の値とに基づいて算出された第2の画素信号の値が、第1の画素信号の値に対応つけて予め記憶されている。記憶される画素信号生成因子は、第1の画素信号の値に対してガンマ補正を行って導出された値であるが、ガンマ補正においては、予め定めた反射光成分値がその演算のパラメータとされている。そして、このパラメータである予め定めた反射光成分値は、注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とが略同じである場合に、反射光成分算出手段にて算出される値とされている。従って、ガンマ補正の演算を行うのではなく、元画像の注目画素の画素信号の値に対応する値を記憶手段から抽出するという簡便な処理にて出力画像の画素信号を生成しても、精度良く、該画素信号の値を生成することができるという効果がある。
抽出生成手段にて生成される出力画像の画素信号の値を、元画像の画素信号の値を実際にガンマ補正して得られる値に近似させるためには、記憶手段に記憶させる画素信号生成因子を、どのように設計するかが重要となる。ここで、画素信号生成因子(第1の画素信号の値をガンマ補正した補正値)は、パラメータとする反射光成分値によって大きく変化するので、記憶手段に記憶させる画素信号生成因子を設計する上で、ガンマ補正のパラメータとする予め定めた反射光成分値をどのようするかが肝要となる。
記憶手段に記憶される画素信号生成因子は、元画像の大部分においては、注目画素の画素信号の値とその周辺画素の平均輝度値とが略同じとなることから、注目画素の画素信号の値とその周辺画素の平均輝度値とが略同じである場合に反射光成分算出手段にて算出される反射光成分値をガンマ補正のパラメータとして設計されている。これによれば、抽出生成手段にて出力画像の画素信号の値を生成すると、その大部分について、ガンマ補正の演算で生成した場合と同様の結果(近似した結果)を得ることができる。その結果、ガンマ補正の演算を行って出力画像の画素信号を生成した場合と比べて、画像品質を大きく劣化させることがない上、高速で出力画像の生成を行うことができるという効果がある。
請求項12記載の画像処理装置によれば、反射光成分算出手段により反射光成分値が算出される。反射光成分値は、注目画素と周辺画素との相対的な明るさの指標とされるものであって、元画像における注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とに基づいて算出される。そして、反射光成分算出手段により算出された反射光成分値について所定割合以上の画素が属する範囲となることを条件に、反射光成分値の正規化範囲が、範囲決定手段にて決定されると、決定された正規化範囲を予め定めた上限値と下限値との範囲とする変換により、正規化範囲に属する反射光成分値を正規化した正規化反射光成分値が、正規化手段にて算出される。そして、この算出された正規化反射光成分値をパラメータとして注目画素の画素信号の値をガンマ補正した補正値と、注目画素の画素信号の値とに基づいて、画素信号生成手段により、出力画像の画素信号が、即ち、レティネックス処理による補正がなされた画素信号が、生成される。
かかる画素信号生成手段では、抽出手段により、記憶手段から、注目画素の画素信号の値に基づいて対応する画素信号生成因子が抽出され、抽出された画素信号生成因子に基づいて出力画像の画素信号が抽出生成手段にて生成される。
よって、かかる抽出生成手段により、ガンマ補正の複雑な演算を行うことなく出力画像の画素信号を生成することができるので、元画像に対するレティネックス処理を行って出力画像を生成する一連の画像処理において演算量を減らすことができ、高速で処理を行うことができるという効果がある。
また、記憶手段には、画素信号生成因子として、第1の画素信号の値に対し予め定めた正規化反射光成分値をパラメータとしてガンマ補正を行った補正値、または、その補正値と第1の画素信号の値とに基づいて算出された第2の画素信号の値が、第1の画素信号の値に対応つけて予め記憶されている。記憶される画素信号生成因子は、第1の画素信号の値に対しガンマ補正を行って導出された値であるが、ガンマ補正においては、予め定めた反射光成分値がその演算のパラメータとされている。そして、ガンマ補正のパラメータであるこの予め定めた反射光成分値は、正規化手段にて求められる元画像の正規化反射光成分値の平均値、中央値、最頻値のいずれかに対応する値とされている。従って、ガンマ補正の演算を行うことなく、元画像の注目画素の画素信号の値に対応する値を記憶手段から抽出するという簡便な処理にて出力画像の画素信号を生成しても、精度良く、該画素信号の値を生成することができるという効果がある。
抽出生成手段にて生成される出力画像の画素信号の値を、元画像の画素信号の値を実際にガンマ補正して得られる値と近似させるためには、記憶手段に記憶させる画素信号生成因子を、どのように設計するかが重要となる。画素信号生成因子(第1の画素信号の値をガンマ補正した補正値)は、パラメータとする正規化反射光成分値によって大きく変化するので、記憶手段に記憶させる画素信号生成因子を設計する上で、パラメータとする予め定めた正規化反射光成分値をどのように選定かが肝要となる。
ここで、記憶手段に記憶される画素信号生成因子のパラメータである正規化反射光成分値は、正規化手段にて求めた元画像の正規化反射光成分値の平均値、中央値、最頻値のいずれかに対応する値とされているので、正規化反射光成分値の母集団を代表する値とすることができる。その結果、かかる正規化反射光成分値をパラメータとしてガンマ補正された画素信号生成因子は、元画像の注目画素の画素信号の値に対し、幅広く対応するものとなる。故に、抽出生成手段にて画素信号生成因子に基づいて生成される出力画像の画素信号の値を適切なものとすることができるという効果がある。従って、ガンマ補正の演算を行って出力画像の画素信号を生成した場合と比べて、画像品質を大きく劣化させることがない上、高速で出力画像の生成を行うことができるという効果がある。
尚、本装置は、正規化手段を備えているので、元画像が異なるものであっても、各元画像について得られる正規化反射光成分値は、正規化によって同様の分布態様となることが多い。従って、記憶手段に、予め、1の元画像の正規化反射光成分値の平均値、中央値、最頻値のいずれかをパラメータとして算出された画素信号生成因子を記憶させくことにより、他の元画像についても、記憶手段に記憶される画素信号生成因子を適用して、支障なく、出力画像の画素信号の値を生成することができる。
以下、本発明の好ましい第1の実施形態について添付図面を参照して説明する。図1は、本実施形態の画像処理を行う機能を有するプリンタ1の電気的な構成を示したブロック図である。本実施形態においては、プリンタ1に搭載された画像処理プログラムは、パーソナルコンピュータ(以下「PC」と称する)2や、デジタルカメラ21や、外部メディア20から入力された画像データ(元画像データ)に対しレティネックス処理(Retinex処理)を実行して、画像データの逆光画像部分などの低画質領域の補正を行った出力画像データを生成するように構成されている。
図1に示すように、プリンタ1は、CPU11、ROM12、RAM13、印刷ヘッドなどから構成され、印刷媒体(例えば、紙媒体など)への印刷(出力)を行う印刷部15、出力画像サイズなどの入力値をユーザが入力可能なユーザ操作部(例えば、テンキーなど)を有する操作パネル16とを備えている。
また、プリンタ1は、ケーブル5を介してPC2と接続可能なインターフェイス(以下「I/F」と称する)17と、ケーブル6を介してデジタルカメラ21と接続可能なI/F18と、外部メディア20(例えば、SDメモリカード、メモリスティックなどのフラッシュメモリにより構成される)を着脱自在に装着可能な外部メディアスロット19とを備えている。これらのI/F17、18により行われる通信方法としてUSB(Universal Serial Bus)が使用される。
よって、プリンタ1には、PC2に記憶されている画像データをケーブル5及びI/F17を介して入力することが可能であると共に、デジタルカメラ21によって撮影された画像データをケーブル6及びI/F18を介して入力することが可能である。さらに、外部メディアスロット19に装着された外部メディア20から、その外部メディア20に記憶されている画像データを入力することが可能である。
CPU11は、プリンタ1全体を制御する演算処理装置である。ROM12は、CPU11により実行される各種制御プログラムやそのプログラムを実行する際に用いられる固定値などを記憶するものであり、レティネックス処理を用いた補正処理を行う画像処理プログラム12aや、印刷を行うための印刷制御プログラム12b、更には、レティネックス処理による補正を行うための上限値テーブル12c、中央値テーブル12d、下限値テーブル12e等が備えられている。尚、図5、図6に示すフローチャートのプログラムは、画像処理プログラム12aの一部としてROM12に記憶されている。
上限値テーブル12c、中央値テーブル12d、下限値テーブル12eは、レティネックス処理による補正が行われた出力値Outを生成するためのテーブルであって、輝度信号Yとその輝度信号Yに対してレティネックス処理が行われた出力値Outとが対応つけて記憶されている。つまり、各テーブル12c〜12eは、レティネックス処理がなされた出力値Outを、元画像の輝度信号Yに基づいて得るためのテーブルである。プリンタ1は、この各テーブル12c〜12eを備えることにより、ガンマ補正演算を行うことなく、元画像データから、レティネックス処理がなされた出力画像データを、テーブルデータに基づいて生成することができるようになっている。
ここで、元画像データは、ラスタデータであって元画像を形成する各画素の画素値(信号強度値、RGB値)で構成されている。なお、本実施形態では、元画像データ及び出力画像データはいずれも、RGB値から構成され、これらの各RGB値は、「0」〜「255」の範囲の値である。
RGB値は、光の3原色である赤を表すR値と、緑を表すG値と、青を示すB値とを構成成分とする値である。光の3原色の混色により各種の色は生成されるので、元画像の各画素の色は、R値とG値とB値との組合せ(RGB値)により1の色(色相や階調など)が示される。このRGB値の値が大きいほど、輝度(明度)は高くなる。
本実施形態においては、かかる元画像データ(RGB値)に対して直接的にレティネックス処理を行うのではなく、元画像データのRGB値を輝度信号Yに変換してからレティネックス処理を実行するように構成されている。このため、各テーブル12c〜12eには、輝度信号Yに対しレティネックス処理による補正がなされた出力値Outyが、輝度信号Yに対応して記憶されているのである。従って、RGB値のそれぞれに対してレティネックス処理を行う場合に比べて、レティネックス処理後の出力画像において元画像のカラーバランスを維持することができる。
RGB値から(5)式に従って輝度信号Yおよび色信号Cb,Crは、算出されるが、RGB値は、予め定められた範囲であるので、輝度信号Yも予め定められた範囲の値となり、実際には「0」〜「255」となる。
Figure 2008118183
このため、上記(4)式における元画像の信号強度値I(x,y)は、輝度信号Y(x,y)とされて、レティネックス処理がなされた輝度信号Yが、出力値Outとして算出される。レティネックス処理において出力値Outを算出する(4)式によれば、ガンマ係数は任意の定数であるので、変数(パラメータ)は、元画像の画素値(輝度信号Y)と正規化反射率refleとの2つである。このため、正規化反射率refleを選定すれば、「0」〜「255」の各輝度信号Yに対応する各出力値Outを導出することができるのである。
尚、この輝度信号Yが請求項記載の画素信号に該当する。また、本実施形態においては、輝度信号Yに対しレティネックス処理を行う構成としたが、これに代えて、RGB値をそのまま用いてレティネックス処理を行うようにしても良い。
多数の正規化反射率refleに対応する出力値Outをテーブルデータで備えるほど、当然ながら、正確な((4)式の演算にて求める値に近似する)出力値Outを取得することができる。しかし、テーブルデータの増大は、メモリ容量を圧迫したり、大容量のメモリが必要となるなど好ましくない。
そこで、本実施形態においては、少ないテーブル数で最適な出力値Outを取得することができるように、予め定めた3つの正規化反射率refleに対応する3種類のテーブル12c〜12eを、ROM12に記憶させている。また、図6において後述するように、各テーブル12c〜12eからの正規化反射率refleに基づいた出力値Outの抽出に、線形補間演算を組み合わせて、出力値Outを生成するように画像処理プログラム12aは構成されている。これにより、プリンタ1は、テーブルデータを記憶するためのメモリ容量を抑制しつつ、的確な出力値Outを生成することができるようになっている。
具体的には、上限値テーブル12c、中央値テーブル12d、下限値テーブル12eは、予め定めた反射率(正規化反射率refle)に対応して設けられたものであり、上限値テーブル12cは正規化反射率refleを1.3、中央値テーブル12dは正規化反射率refleを0.8、下限値テーブル12eは正規化反射率refleを0.3として、それぞれ形成されたものである。
図2は、上限値テーブル12c、中央値テーブル12d、下限値テーブル12eのそれぞれに記憶されるテーブルデータを説明する図あり、各テーブル12c〜12eに記憶される輝度信号Yと出力値Outとの関係を示したグラフである。図2において、横軸には、輝度信号Yを示している。縦軸には、出力値Outを示している。そして、実線で示したグラフ曲線は、正規化反射率refleが1.3である場合に、輝度信号Yを(4)式に従って処理して得られる出力値Outを示している。破線で示したグラフ曲線は、正規化反射率refleが0.8である場合に、輝度信号Yを(4)式に従って処理して得られる出力値Outを示している。一点鎖線で示したグラフ曲線は、正規化反射率refleが0.3である場合に、輝度信号Yを(4)式に従って処理して得られる出力値Outを示している。かかるグラフ曲線のそれぞれにおいて、輝度信号Yが「0」〜「255」の各値(整数値)である場合にグラフ曲線上で得られる各値が出力値Outである。そして、この得られる各出力値Outが「0」〜「255」の各値に対応つけられて、対応するテーブル12c〜12eに記憶されている。
図2に示されるように、3本のグラフ曲線は、正規化反射率refleが0.3、0.8、1.3と0.5ずつ、同じ間隔で変更されたものであるにもかかわらず、3本のグラフ曲線にて形成される曲線間の間隔は均等ではない。例えば、輝度信号Yの値が「128」である場合、正規化反射率refle1.3での出力値Outと正規化反射率refle0.8での出力値Outとの差W1は、正規化反射率refle0.8での出力値Outと正規化反射率refle0.3での出力値Outとの差W2よりも、明らかに小さい。つまり、出力値Outは、正規化反射率refleの変化に対して非線形に変化する。従って、上限値テーブル12c、中央値テーブル12d、下限値テーブル12eの3つのテーブルを備えることにより、線形補間演算を行って出力値Outを生成する場合に、その正規化反射率refleの変化に対する出力値Outの偏りを、補間演算に反映させることができる。故に、かかるテーブルデータに基づいて出力値Outを生成した場合に、的確に出力値Outを生成することができるのである。
ここで、プリンタ1内部に記憶させるテーブルデータがどのような内容で構成されているか、即ち、テーブルデータの形成に用いられた正規化反射率refleの値がどのように設計されているかは、少ないテーブル数で的確な出力値Outを生成するための重要な要素である。
そこで、図3と図4とを参照して、本プリンタ1に記憶させた各テーブル12c〜12eの形成に用いられた正規化反射率refleについて詳細に説明する。
図3は、元画像データから求められる対数値Rと元画像との関係を説明する図である。図3(a)には、逆光画像である元画像(逆光画像模式図)が表示されている。該元画像は、矩形状の外形を有する態様に形成されると共に、中央部において円形の逆光部位を有している。図3(b)は、元画像の各画素値を反射率(対数値R)に変換して形成した変換画像を示している。ここで、対数値Rは、注目画素の画素値とその周辺画素の平均輝度値との差を示す値、言い換えれば、注目画素と周辺画素との明るさの差を表す値である。変換画像において、白で示される領域Aは対数値Rが正であることを、黒で示される領域Cは対数値Rが負であることを、灰色で示される領域Bは対数値Rが0であることをそれぞれ示している。
この対数値Rが正の値を持つ場合、注目画素は、周辺画素よりも明るいことを示している。逆に、対数値Rが負の値を持つ場合、注目画素は、周辺画素よりも暗いことを示している。また、対数値Rが0である場合は、注目画素は、周辺画素と同じ明るさであることを示している。
一般には、元画像の各部においては、その明るさが一様であることが多い。逆光部位の大部分は同じように暗く、また、逆光部位以外の他の部分については、同じように明るい。従って、変換画像に示すように、物体の輪郭周辺や、逆光部位と非逆光部位との境界周辺など、画像の一部の領域に属する一部の画素が、周辺画素よりも明るく又は暗くなるのである。
図4は、一般的な画像についての対数値Rのヒストグラムを示している。該ヒストグラムは、横軸を対数値Rとし、縦軸を画素数として作成されており、元画像の各画素について対数値Rを集計した結果を表したものである。かかるヒストグラムにおいてメジアン値Mは0であり、対数値Rは、メジアン値Mをピークとして両側に略対称に分布している。また、対数値Rはメジアン値M(即ち対数値R=0)近傍に集中しており、元画像の大部分において、注目画素と周辺画素とは同程度の明るさとなることが示されている。尚、対数値Rの母集団においては、モード値についても0となっている。つまり、このヒストグラムによっても、元画像における各画素の対数値Rの大部分が0(0近傍)となることが示されている。
プリンタ1は、この対数値Rが0となる場合に対応するテーブルデータ(中央値テーブル12d)を用いて出力値Outの生成を行うように構成されている。多くの画素の対数値Rが0(0近傍)であることから、この対数値Rが0である場合に算出される出力値Outをテーブルデータとして有することにより、テーブルデータを用いた出力値Out生成において、生成される値の精度を向上することができるからである。実際には、(4)式の演算における反射光成分の項に、対数値R=0を用いて計算を行うと演算結果が無限大となってしまうので、算出された対数値Rに正規化を行った正規化反射率refleが用いられている。
対数値Rの正規化においては、正規化を行うクリップ範囲(正規化範囲)を規定する必要がある。本実施形態においては、形成されるヒストグラムにおいて、メジアン値Mよりも大きい側において45%の画素が含まれる点となる値を対数値Rの上限値Uとし、メジアン値Mよりも小さい側において45%の画素が含まれる点となる値を対数値Rの下限値Dとして、下限値D〜上限値Uの範囲がクリップ範囲とされている。そして、クリップ範囲の対数値Rは、予め定めた範囲(下限値d〜上限値u)へと正規化される。この正規化は、下限値D以下の対数値Rを下限値dとし、上限値U以上の値を上限値uとすると共に、下限値Dから上限値Uまでのクリップ範囲の対数値Rを、線形、または非線形な関数で、下限値d〜上限値uの範囲の値へと変換することにより行われる。テーブル12c〜12eに保持させる出力値Outは、かかる正規化によって求められた正規化反射率refleを用いて算出されている。尚、クリップ範囲は、メジアン値Mを中心に上下45%の画素が属する範囲としたが、これに限られるものではなく、45%以上の画素が属する範囲であっても、45%以下の画素が属する範囲であっても良い。
本実施形態に用いられた各テーブル12c〜12eの設計においては、この対数値Rの正規化は、次の3の条件を満たすように行われている。1つ目の条件は、正規化して得られる正規化反射率refleが、0を含まない値とすることである。これは、上記したように、出力値Outが算出不能となることを回避するためである。
2つ目の条件は、正規化反射率refleの上限値uを1以上の値とすることである。これは、正規化反射率refleが1以上の値でない場合には、出力画像の画素値を最大値(255)以上の値で出力することができないからである。言い換えれば、元画像の画素値が、255で入力されても、出力画像の対応する画素値は255未満となってしまうのである(ダイナミックレンジの縮小)。従って、本実施形態では、生成される出力画像の画素値の最大値を255以上とすることができるように、正規化反射率refleの上限値uを1以上の値とすることを条件としているのである。尚、正規化反射率refleが1以上の値であると、255以上の出力値が生成されてしまうが、生成された画素値が255以上の値となった場合には、255に収束されるように処理される。
3つ目の条件は、正規化された正規化反射率refleの値の幅を1とすることである。正規化反射率refleの有する幅が1であると、元画像のダイナミックレンジと出力画像のダイナミックレンジとをおおよそ同じにすることができる。元画像の画素値は「0」〜「255」の範囲の値であるので、正規化反射率refleの有する幅を1とすることにより、本実施形態では、同じ範囲である「0」〜「255」で出力画像の画素値を得ることができる。その結果、出力画像全体の色調が入力画像に比べて変化してしまうことを回避できる。
このため、対数値Rは、0を超える値の下限値dから、その下限値dに1加算した上限値uの範囲に、正規化される。尚、本実施形態においては、(3)式における下限値dは0.3とされ、上限値uは1.3とされており、対数値Rは0.3〜1.3の値に正規化されている。言い換えれば、元画像の各画素の正規化反射率refleは、0.3〜1.3の値となる。また、対数値Rを0.3〜1.3の範囲に正規化すると、対数値R「0」の正規化反射率refleは、0.8となる。従って、正規化反射率refleが0.8を超える画素(注目画素)は、対数値Rが正である、即ち、注目画素が周辺画素よりも明るい事を示しており、正規化反射率refleが0.8未満である画素(注目画素)は、対数値Rが負である、即ち、注目画素が周辺画素よりも暗い事を示すこととなる。
ここで、上限値テーブル12c、中央値テーブル12d、下限値テーブル12eには、正規化反射率refleが1.3、正規化反射率refleが0.8、正規化反射率refleが0.3である場合において形成されたものである。つまり、上限値テーブル12cは、正規化反射率refleの上限値(対数値Rが正である)を用いて形成されたものであり、下限値テーブル12eは、正規化反射率refleの下限値(対数値Rが負である)を用いて形成されたものである。そして、中央値テーブル12dは、上記したように、対数値R=0である場合の正規化反射率refleを用いて形成されたものとなっている。
また、プリンタ1は、入力された元画像データから算出された対数値Rを、0.3〜1.3の範囲に正規化するように構成されている。つまり、プリンタ1において入力された元画像から演算される対数値Rの正規化反射率refleと、各テーブル12c〜12eの形成に用いた正規化反射率refleとは、同じ範囲を有するものとなり、両者を整合させることができる。故に、かかる3つのテーブル12c〜12eを用いて生成される出力値Outは、的確な値となる。
その上、上限値テーブル12cと下限値テーブル12eとを備えていることにより、補間演算を行えば、プリンタ1に入力された元画像から算出される全ての正規化反射率refleに対応する出力値Outを、各テーブル12c〜12eに記憶されるテーブルデータを用いて導出することができる。
尚、本実施形態においては、正規化反射率refleは、0.3〜1.3の範囲としたが、正規化反射率refleの範囲はこれに限られるものではなく、同じクリップ範囲について、正規化反射率refleの範囲を、例えば、0.1〜1.1や、0.4〜1.4などとしても良い。また、正規化反射率refleの幅も厳密に1である必要はなく、1より小さい範囲(例えば、0.9など)であっても良く、1より大きい範囲(例えば、1.5など)であっても良い。
図1に戻って説明する。
RAM13は、制御プログラムがCPU11により実行される際に必要な各種レジスタ群などが記憶されるワーキングエリアや、処理中のデータを一時的に格納するテンポラリエリア等を有しランダムにアクセスできる書き換え可能なメモリであり、元画像データを記憶する元画像メモリ13aと、元画像を縮小し、縮小した画像のレティネックス処理において求められる反射率(対数値Rs)を記憶する縮小レティネックス画像メモリ13bと、対数値Rsのヒストグラム(頻度分布)が記憶されるヒストグラムメモリ13cと、縮小画像の反射率(対数値Rs)の最大値を記憶する最大値メモリ13dと、縮小画像の反射率(対数値Rs)の最小値を記憶する最小値メモリ13eと、元画像のRGB値から生成された輝度信号Yを記憶する輝度値メモリ13fと、元画像の反射率(反射光成分、対数値R)を記憶する対数値メモリ13gと、正規化された反射率である正規化反射率refleを記憶するrefle値メモリhと、レティネックス処理による補正がなされた出力画像データを記憶する出力画像メモリ13iとを備えている。なお、「s」は、縮小画像についての接尾辞であり、元画像については、接尾辞を付さないものとする。
元画像メモリ13aは、PC2、デジタルカメラ21、及び外部メディア20から、それぞれ、I/F17、I/F18、及び外部メディアスロット19を介してプリンタ1へ入力された画像データであって、上記した元画像データを記憶するものである。この元画像メモリ13aに記憶される元画像データは、新たにプリンタ1に画像データが入力されると、入力された画像データで更新される。
縮小レティネックス画像メモリ13bは、元画像を縮小した縮小画像の輝度信号Ysについて、レティネックス処理において求められる反射率、即ち対数値Rsを記憶するメモリである。
元画像を縮小する方法としては、縮小する画像の画素に対応する元画像の位置に最も近い画素の値をサンプリングし、そのサンプリングした画素の値をそのまま用いる最近傍(Nearest Neighbor)法や、縮小する画像の画素に対応する元画像の位置の周囲の画素を用いて補間演算を行うバイキュービック法や、平均画素法などが知られている。画質より処理速度を優先する場合は、最近傍法が用いられ、処理速度より画質を優先する場合は、バイキュービック法や、平均画素法が用いられる。
これらいずれかの方法により元画像が縮小され、その縮小画像の各画素(ピクセル)について対数値Rsが上述の(2)式を用いて演算され、縮小画像の各画素の座標(x,y)に対応して縮小レティネックス画像メモリ13bに記憶される。この縮小レティネックス画像メモリ13bの値は、新たな補正処理の実行時に更新される。尚、対数値Rsの演算は、上記(2)式における元画像の信号強度値I(x,y)に、輝度信号Ys(x,y)を用いて実行される。
ヒストグラムメモリ13cは、縮小レティネックス画像メモリ13bに記憶される反射率(対数値Rs)について、レベルが同じものの画素数を集計した集計結果を記憶するものであり、各レベルのそれぞれに対応して各1のエリアが設けられている。言い換えれば、対数値Rsのヒストグラムを形成するためのメモリである。
ヒストグラムメモリ13cの各エリア数及び各エリアにて管理する対数値Rsのレベルは、新たに元画像が入力されることにより、CPU11によって設定される。具体的には、縮小画像を構成する全画素について対数値Rsが求められると、求められた対数値Rsの最小値と最大値とに基づいてヒストグラムの生成範囲が決定され、また、同じレベルとして集計するレベル範囲(管理するレベル)が選定される。これにより、ヒストグラムメモリ13cのエリア数と各エリアのレベルが設定される。
縮小レティネックス画像メモリ13bに記憶される各対数値Rsが、いずれのレベルに属するかが判断されると、その判断された対数値Rsのレベルに対応するエリアに記憶される値に1が加算される。これにより、各レベル毎に、画素数が集計される。
縮小レティネックス画像メモリ13bに記憶される全ての対数値Rsのレベル判断が完了すると、このヒストグラムメモリ13cに記憶される集計結果から、メジアン値Mが検出され、上限値Uと下限値Dとが決定される。プリンタ1では、このヒストグラムメモリ13cにおける集計結果にて決定された下限値Dから上限値Uに至る範囲が、元画像メモリ13aに記憶される元画像データのクリップ範囲とされる。
このように、プリンタ1では、縮小画像から形成されたヒストグラムで元画像のクリップ範囲を決定することができるので、かかるクリップ範囲を決定するために、元画像の全画素についてのヒストグラムを生成する必要が無く、処理時間を短縮することができる。
最大値メモリ13d及び最小値メモリ13eは、ヒストグラムの生成に際し、縮小レティネックス画像メモリ13bに記憶される対数値Rsの内の、最大値のものと、最小値のものとをそれぞれ記憶するメモリである。かかる最大値メモリ13d及び最小値メモリ13eには、元画像のレティネックス処理を行う補正処理の開始に際し、0が書き込まれる。対数値Rsが算出されると、最大値メモリ13dに記憶される値は、その算出された(縮小レティネックス画像メモリ13bに記憶された)対数値Rsと比較される。そして、その比較結果に基づいて、より大きな対数値Rsにて、最大値メモリ13dに先に記憶される値が更新される。
また、最大値メモリ13dに記憶される値よりも、比較した対数値Rsの方が小さかった場合には、その対数値Rsは、最小値メモリ13eに記憶される値と比較される。そして、その比較結果に基づいて、より小さな対数値Rsにて最小値メモリ13eに記憶される先の値は更新される。
その結果、最大値メモリ13dには、縮小レティネックス画像メモリ13bに記憶される対数値Rsの内の最大値が保持され、最小値メモリ13eには、縮小レティネックス画像メモリ13bに記憶される対数値Rsの内の最小値が保持される。
この最大値メモリ13d及び最小値メモリ13eに記憶される最大値および最小値は、ヒストグラム生成のタイミングでCPU11に参照され、かかる最大値及び最小値に基づいて、ヒストグラム生成の範囲がCPU11にて決定される。
輝度値メモリ13fは、RGB値から(5)式に従って算出された輝度信号Y(Ys)と色信号Cb,Crを記憶するメモリである。プリンタ1では、上記したように、入力された元画像の元画像データ(RGB値)に直接レティネックス処理を行うのではなく、RGB値を輝度信号Yに変換してからレティネックス処理を行うように構成されている。RGB値から変換された輝度信号Yなどは、変換元のRGB値の座標(x,y)に対応してこの輝度値メモリ13fに記憶される。そして、この輝度値メモリ13fに記憶される輝度信号Yや輝度信号Ysに基づいて、反射率や出力値Outが生成される。
ここで、プリンタ1は、出力画像の出力値Outを生成するために、縮小画像と元画像との両者から、合計2回、反射率(対数値Rs及び対数値R)を算出する。反射率の算出に際しては、算出元の画像データ(縮小画像データ、元画像データ)のRGB値から輝度信号Ysまたは輝度信号Yがそれぞれ生成され、この輝度値メモリ13fに書き込まれる。元画像の輝度信号Yの生成に先立って、縮小画像の輝度信号Ysは生成され、輝度値メモリ13fに書き込まれる。輝度値メモリ13fに記憶された縮小画像の輝度信号Ys等は、その後、元画像の輝度信号Yが生成されるタイミングで、0クリアされ、新たに、元画像データのRGB値から生成された輝度信号Yなどが輝度値メモリ13fに記憶される。
対数値メモリ13gは、元画像データから算出された反射率である対数値Rを記憶するメモリである。具体的には、輝度値メモリ13fに記憶された元画像データの輝度信号Yを用いて、各画素に対応する対数値R(x,y)が、上述の(2)式に従って算出され、算出された対数値R(x,y)は、その座標に対応して対数値メモリ13gに記憶される。この対数値メモリ13gの値は、新たな補正処理の実行時に更新される。尚、上記(2)式における元画像の信号強度値I(x,y)は、輝度信号Y(x,y)を用いて演算される。
refle値メモリ13hは、対数値メモリ13gに記憶される対数値Rが正規化された正規化反射率refleを記憶するメモリである。このrefle値メモリ13hに記憶される正規化反射率refleは、対数値メモリ13gに記憶される各対数値R(x,y)を、(3)式に従って下限値0.3〜上限値1.3の範囲に正規化したものである。対数値R(x,y)、即ち対数値Rの各々に対応して、各1ずつの正規化反射率refle(x,y)が生成され、その座標に対応してこのrefle値メモリ13hに書き込まれる。このrefle値メモリ13hに記憶される正規化反射率refleは、出力値Outを生成するタイミングでrefle値メモリ13hから読み出され、読み出された正規化反射率refleに対応するテーブル(テーブル12c〜12e)が、出力値Out抽出元のテーブルとして選定される。
出力画像メモリ13iは、印刷部15に出力する出力画像データを記憶するメモリである。この出力画像メモリ13iに記憶される出力画像データは、補正処理によって元画像から生成された出力値Outであり、出力画像を形成する各画素のRGB値である。上記したように、本実施形態では、各テーブル12c〜12eから元画像の輝度信号Y(x,y)に応じた出力値Outが抽出される。このテーブル12c〜12eから抽出される出力値Out値は、輝度信号Yであるので、必要に応じて線形補間演算などが行われた後、以下に示す(6)式に従って、RGB値に変換され、出力値Outとされる。
Figure 2008118183
元画像の各輝度信号Y(x,y)の各々に対応して、各1ずつの出力値Out(x,y)が算出されており、出力値Outについても、各出力値Out(x,y)のそれぞれに対応する出力値Out(x,y)が生成される。そして、生成された出力値Out(x,y)が、その座標に対応して、出力画像メモリ13iに書き込まれる。記憶された出力値Out(出力画像データ)は、印刷を実行するタイミングでこの出力画像メモリ13iから読み出され、印刷部15へ出力される。印刷部へ出力された出力値Outは、出力画像メモリ13iから消去される。
次に、図5と図6とのフローチャートを参照して、上記のように構成されたプリンタ1で実行される補正処理について説明する。補正処理は、上記した画像処理プログラム12aによって実行される処理であり、入力された画像データ(元画像データ)にレティネックス処理を行って出力画像データを生成するものである。
この補正処理では、まず、元画像メモリ13aから元画像データを読み出し(S1)、縮小画像を形成すると共にその形成された縮小画像の各RGB値を輝度信号Ysと色信号Cb,Crとに変換し、縮小画像の各RGB値の座標(x,y)にそれぞれ対応させて輝度値メモリ13fに書き込む(S2)。これにより、縮小画像の全画素に対応する輝度信号Ysが輝度値メモリ13fに記憶される。
そして、輝度値メモリ13fに記憶した縮小画像の輝度信号Ysについて反射率(対数値Rs)を算出する。各画素の対数値Rs(x,y)は、(2)式の画素値I(x,y)に輝度信号Ys(x,y)を用いて算出する(S3)。つまり、座標(x,y)の注目画素を含むm×nの領域にガウスフィルタF(x,y)による畳み込み演算が行って、注目画素からの距離に応じた重みを加味しつつ平均された周辺画素の平均輝度値を求め、その平均輝度値にて注目画素の輝度信号Ys(x,y)を除したものの自然対数を求めることにより、注目画素の反射率である対数値Rs(x,y)を算出する。
その後、算出した対数値Rs(x,y)を縮小レティネックス画像メモリ13bに記憶し(S4)、記憶した対数値Rs(x,y)が最大値メモリ13dに記憶される値よりも大きいかを判断する(S5)。対数値Rs(x,y)が最大値メモリ13dに記憶される値よりも大きければ(S5:Yes)、算出した対数値Rs(x,y)を最大値メモリ13dに記憶して、先に最大値メモリ13dに記憶される値を更新する(S6)。また、S5の処理で確認した結果、対数値Rs(x,y)が最大値メモリ13dに記憶される値よりも小さい場合には(S5:No)、その対数値Rsを最小値メモリ13eに記憶される値よりも小さいかを判断する(S7)。その結果、比較した対数値Rsが最小値メモリ13eに記憶される値よりも小さければ(S7:Yes)、その対数値Rsを最小値メモリ13eに記憶し、最小値メモリ13eに先に記憶される値を更新する(S8)。
S6またはS8の処理の後は、縮小画像の全画素について処理が終了したかを確認する(S9)。縮小画像についての対数値Rsの生成と対数値Rsの最大値と最小値とを判断するS3〜S8の処理は、1の注目画素毎(1の輝度信号Ys毎)に実行され、最終画素の輝度信号Ysの処理が終了するまで、繰り返して実行される。従って、輝度値メモリ13fからは、S3〜S8の処理の実行毎に、座標に従った順番で(先頭座標から最終座標へ向かうラスタ走査の順で)、輝度信号Ysが読み出される。そして、S9の処理で確認した結果、全画素についての処理が終了していれば(S9:Yes)、縮小レティネックス画像メモリ13bに記憶される対数値Rsに対し、最大値メモリ13dに記憶される最大値から最小値メモリ13eに記憶される最小値までの範囲において、ヒストグラムを形成する(S10)。
その後、形成したヒストグラムからメジアン値Mを求め(S11)、次いで、そのメジアン値Mとヒストグラムとから対数値Rsのクリップ範囲(上限値Uと下限値D)を定める(S12)。具体的には、メジアン値Mを中心に、メジアン値Mの上側において45%の画素が含まれる点となる対数値Rsを上限値Uとし、メジアン値Mの下側において45%の画素が含まれる点となる対数値Rsを下限値Dとし、メジアン値Mの上下に各45%ずつの画素が所属する下限値D〜上限値Uの範囲をクリップ範囲とする。
続いて、輝度値メモリ13fを0クリアしてから(S13)、元画像メモリ13aに記憶される元画像データの各RGB値を輝度信号Yと色信号Cb,Crとに変換し、各RGB値の座標(x,y)にそれぞれ対応させて輝度値メモリ13fに書き込む(S14)。その後、出力画像データを生成する出力値算出処理を実行してから(S15)、その出力値算出処理(S15)において元画像の全画素についての処理が終了したかを確認し(S16)、元画像の全画素が出力値Outに変換されていなければ(S16:No)、その処理をS15の処理に移行して、元画像の全画素について出力値Outが生成されるまで繰り返して出力値算出処理(S15)を実行し、一方、元画像の全画素が出力値Outに変換されていれば(S16:Yes)、出力画像データの生成は完了であるので、この補正処理を終了する。
一方、S7の処理で確認した結果、対数値Rsが最小値メモリ13eに記憶される値以上の値であった場合には(S7:No)、最小値メモリ13eに記憶される値を更新する必要がないので、その処理をS9の処理に移行する。また、S9の処理で確認した結果、縮小画像の全画素について対数値Rsの生成や、その対数値Rsの最小値、最大値の判断を行う処理が終了していなければ(S9:No)、その処理をS3の処理に移行し、最終画素の輝度信号Yに対する処理が終了するまで、繰り返してS3〜S9の処理を実行する。
図6は、図5の補正処理の中で実行される出力値算出処理(S15)のフローチャートである。尚、出力値算出処理(S15)は、1の注目画素毎(1の輝度信号Y毎)に実行されるように構成されており、輝度値メモリ13fからは、出力値算出処理(S15)の実行毎に、座標に従った順番で(先頭座標から最終座標へ向かうラスタ走査の順で)、輝度信号Yが読み出され、最終画素の輝度信号Yの処理が終了するまで、繰り返して実行される。
この出力値算出処理(S15)では、まず、輝度値メモリ13fに記憶される輝度信号Yについて反射率(対数値R)を算出する。上記したように、輝度信号Yは、元画像の各画素のそれぞれについて求められて、その座標(x,y)に対応して輝度値メモリ13fに記憶されている。各画素の対数値R(x,y)は、(2)式の画素値I(x,y)に各輝度信号Y(x,y)を用いて算出する(S21)。
次に、算出した対数値Rを対数値メモリ13gに記憶してから(S22)、対数値メモリ13gに記憶した対数値Rについて、S12の処理で設定した下限値D〜上限値Uの範囲を0.3〜1.3とする正規化をおこなって、正規化反射率refle(x,y)を算出する(S23)。
この正規化は、対数値R(x,y)≦Dである場合には、0.3とし、また、対数値R(x,y)≧Uである場合には、1.3とすると共に0.3<対数値R(x,y)<1.3である場合には、(3)式に従って、対数値Rを正規化する。尚、本実施形態においては、(3)式におけるd及びuは、それぞれ0.3と1.3となる。
次に、算出した正規化反射率refle(x,y)を、その座標に対応してrefle値メモリ13hに記憶してから(S24)、その正規化反射率refle(x,y)が1.3であるかを確認する(S25)。ここで、正規化反射率refle(x,y)が1.3でなければ(S25:No)、正規化反射率refleは、1.3未満であるので、正規化反射率refle(x,y)が0.8を超えているかを確認する(S26)。つまり、このS26の処理により、正規化反射率refleが0.8を超え1.3未満の範囲にあるかが判断される。そして、正規化反射率refle(x,y)が0.8を超えている場合には(S26:Yes)、輝度値メモリ13fから読み出した輝度信号Y(x,y)に対応する出力値Outを、上限値テーブル12cと中央値テーブル12dとのそれぞれから読み出す(S27)。上限値テーブル12cから読み出した出力値OutをOu、中央値テーブル12dから読み出した出力値OutをOcとする。
続いて、読み出した出力値Ou,Odを、(7)式に従って、正規化反射率refle(x,y)の値に基づいた線形補間をして、輝度信号Y(x,y)に対応する出力値Outを求める(S28)。
Figure 2008118183
そして、求めた出力値Outを、(6)式に従ってRGB値に逆変換して出力値Outを生成し、生成元の輝度信号Yの座標(x,y)に対応させて出力画像メモリ13iに書き込んで(S29)、この出力値算出処理を終了する。
一方、S25の処理で確認した結果、正規化反射率refle(x,y)が1.3であれば(S25:Yes)、輝度信号Y(x,y)に対応する出力値Outを上限値テーブル12cから読み出して(S30)、その処理をS29の処理に移行する。
また、S26の処理で確認した結果、正規化反射率refle(x,y)が0.8を超えていなければ(S26:No)、正規化反射率refleが0.8であるかを確認し(S31)、正規化反射率refleが0.8でなければ(S31:No)、正規化反射率refleは、0.8未満であるので、更に、0.3を超えているかを確認する(S32)。つまり、このS32の処理により、正規化反射率refleが0.3を超え0.8未満の範囲にあるかが判断される。ここで、正規化反射率refle(x,y)が0.3を超えていれば(S32:Yes)、輝度値メモリ13fから読み出した輝度信号Y(x,y)に対応する出力値Outを、下限値テーブル12eと中央値テーブル12dとのそれぞれから読み出す(S33)。下限値テーブル12eから読み出した出力値OutをOdとする。次いで、読み出した出力値Oc,Odを、(8)式に従って、正規化反射率refle(x,y)の値に基づいた線形補間をして、輝度信号Y(x,y)に対応する出力値Outを求める(S34)。その後、その処理をS29の処理に移行する。
Figure 2008118183
更に、S31の処理で確認した結果、正規化反射率refleが0.8であれば(S31:Yes)、輝度信号Yに対応する出力値Outを中央値テーブル12dから読み出して(S35)、S29の処理に移行する。
また、S32の処理で確認した結果、正規化反射率refle(x,y)が、0.3を超えていなければ(S32:No)、正規化反射率refleは0.3であるので、輝度信号Yに対応する出力値Outを下限値テーブル12eから読み出して(S36)、S29の処理に移行する。
各テーブル12c〜12eに記憶される出力値Outを生成する際に用いられた正規化反射率refleは、1.3、0.8、0.3であるので、算出された正規化反射率refleが1.3、0.8、0.3の場合には、線形補間演算を行う必要がない。S30、S35、S36の処理は、算出された各画素の正規化反射率refleが、1.3、0.8、0.3の場合にそれぞれ実行されるものであり、従って、線形補間演算を行うステップS28,S34を経由することなく、S29の処理に移行するようになっている。このため、S30、S35、S36を経由して実行されるS29の処理では、各テーブル12c〜12eから読み出された出力値Outそのものが、出力値Outに変換される。
以上説明したように、プリンタ1では、テーブルデータを参照することによってガンマ補正演算を行うことなく、入力された元画像をレティネックス処理して出力画像を生成することができるので、画像処理を高速化することができる。その上、元画像が最も多く有する正規化反射率refleの値にて形成されたテーブルデータ(中央値テーブル12d)を備えているので、テーブルデータを参照して作成される出力値Outを正確なものとすることができ、ガンマ補正演算によらずに出力画像を生成しても、画質を低下させることがない。
以上、実施形態に基づいて本発明を説明したが、本発明は上記各実施形態に何ら限定されるものでなく、本発明の趣旨を逸脱しない範囲内で種々の改良変形が可能であることは容易に推察できるものである。
例えば、上記実施形態では、色表現系はRGB形式としたが、RGB形式以外の他の色表現系、例えば、CMY形式などに本発明を適用してもよい。また、画像処理プログラム12aは、正規化反射率refleを算出し、この正規化反射率refleにて、参照するテーブルを選定した。また、各テーブル12c〜12eは、正規化反射率refleをパラメータとして形成された。これに代えて、算出した反射率R(0を除く)を用いて形成されたテーブルを選定するようにしても良い。
また、上記実施形態では、本発明の画像処理プログラムは、プリンタ1に組み込まれたCPU11により実行されるものとしたが、パーソナルコンピュータにアプリケーションとして供給され、パーソナルコンピュータに組み込まれたCPUなどにより実行されるようにしてもよい。
また、レティネックス処理は、SSR(シングルスケール法)であってもMSR(マルチスケール法)であってもよい。
また、上記実施形態の画像処理では、CPU11によりレティネックス処理などを行うものとしたが、DSP(Digital Signal Processor)により行ってもよい。DSPを用いると、より高速に積和演算などの処理を実行することができる。
加えて、上記実施形態では、演算された輝度信号および色信号は、RAM13(輝度値メモリ13f)に一時記憶するように構成しているが、記憶容量を削減したい場合には、これらを記憶せずに、必要な場合、元画像メモリから画素値(RGB値)を読み出し、その都度、演算で求めてもよい。
更に、反射率である対数値Rについて正規化を行う正規化範囲(クリップ範囲)は、ヒストグラム形成してそのメジアン値を基準に求めたが、このメジアン値に代えて、モード値や平均値を用いても良い。更には、注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とが略同じであるとは、完全同一であることも含む概念である。また、注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とが同じ場合には、対数値Rは0となるが、例えば、ヒストグラム形成した場合の対数値Rのメジアン値、モード値、平均値は、必ずしも0とはならず、0から、ずれた値となる。このずれた値を網羅する範囲が、注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とが略同じであるとする領域である。
また、上記実施形態においては、正規化反射率refleの全領域を網羅することができるように、プリンタ1には、3つのテーブルを設けたが、必ずしも、正規化反射率refleの全領域を網羅するテーブルを有する必要はなく、少なくとも中央値テーブル12dを備える構成として、テーブル参照とガンマ補正演算とを併用して出力値Outを生成するものとしても良い。かかる場合には、プリンタ1および画像処理プログラム12aを、四捨五入、切り捨て、切り上げで正規化反射率refleが0.8となる範囲について中央値テーブル12dを用いた出力値Outの生成を行い、それ以外の範囲については、ガンマ補正演算を行って出力値Outを生成するように構成しても良い。多くの画素の対数値Rは0となる(0近傍に集中する)ので、対数値R=0に対応するテーブル(中央値テーブル12d)を有していれば、多くの画素についてはテーブル参照にて出力値Outを生成することができる。従って、中央値テーブル12dに対するテーブル参照にて出力値Outを生成するだけでも、十分に演算速度を高速化することができる。
また、画像処理プログラム12aが参照するテーブルは、必ずしも3つである必要はなく、上記したように、中央値テーブル12aの1つであっても良く、4つ以上であっても良い。
本発明の実施形態の画像処理プログラムを搭載したプリンタの電気的構成を示すブロック図である。 プリンタに設けられた上限値テーブル、中央値テーブル、下限値テーブルに記憶される内容を説明する図である。 元画像データから求められる対数値Rと元画像との関係を説明する図である。 図3に示した画像を含む一般的な画像についての対数値Rのヒストグラムを示した図である。 プリンタにおいて、画像処理プログラムにより行われる補正処理を示すフローチャートである。 補正処理の中で実行される出力値算出処理のフローチャートである。 従来のレティネックス処理を説明する図である。
符号の説明
1 プリンタ(画像処理装置)
2 パーソナルコンピュータ
11 CPU
12 ROM(記憶手段)
12a 画像処理プログラム
12c 上限値テーブル(記憶手段の一部)
12d 中央値テーブル(記憶手段の一部)
12e 下限値テーブル(記憶手段の一部)
S11,S12 範囲決定ステップ、範囲決定手段
S21,S23 反射光成分算出ステップ、反射光成分算出手段
S23 正規化ステップ、正規化手段
S27〜S36 画素信号生成ステップ、画素信号生成手段
S27,S33,S30,S35,S36 抽出ステップ、抽出手段
S28,S29,S30,S34,S35,S36 抽出生成ステップ、抽出生成手段

Claims (12)

  1. 画像の補正処理を行う画像処理装置に搭載され、元画像における注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とに基づいて注目画素と周辺画素との相対的な明るさの指標となる反射光成分値を算出する反射光成分算出ステップと、その反射光成分算出ステップにて算出された反射光成分値をパラメータとして注目画素の画素信号の値をガンマ補正した補正値と、注目画素の画素信号の値とに基づいて出力画像の画素信号を生成する画素信号生成ステップとを備え、レティネックス処理による画像の補正を実行する画像処理プログラムにおいて、
    前記画素信号生成ステップは、第1の画素信号の値に対し予め定めた反射光成分値をパラメータとしてガンマ補正を行った補正値、または、その補正値と第1の画素信号の値とに基づいて算出された第2の画素信号の値を画素信号生成因子とし、その画素信号生成因子を第1の画素信号の値に対応つけて予め記憶する記憶手段から、注目画素の画素信号の値に基づいて対応する画素信号生成因子を抽出する抽出ステップと、
    その抽出ステップにて抽出された画素信号生成因子に基づいて出力画像の画素信号を生成する抽出生成ステップとを備えており、
    前記記憶手段に予め記憶された画素信号生成因子に対してなされたガンマ補正においてパラメータとされた前記予め定めた反射光成分値は、注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とが略同じである場合に、前記反射光成分算出ステップにて算出される値とされていることを特徴とする画像処理プログラム。
  2. 前記記憶手段に予め記憶される画素信号生成因子は、予め定めた複数の反射光成分値のそれぞれに対応して算出されたものであり、
    前記抽出ステップは、前記反射光成分算出ステップにより算出された反射光成分値に対応する画素信号生成因子を前記記憶手段から抽出する一方、前記算出された反射光成分値が前記記憶手段に予め記憶される画素信号生成因子に対応するものでない場合には、前記予め定めた複数の反射光成分値の内、前記反射光成分算出ステップにより算出された反射光成分値を跨ぐ2つの値について、対応する画素信号生成因子を前記記憶手段から抽出するものであり、
    前記抽出生成ステップは、前記抽出ステップにて抽出された2の画素信号生成因子に対し、前記反射光成分算出ステップにより算出された反射光成分値に基づいた補間演算を行って、出力画像の画素信号を生成するものであることを特徴とする請求項1記載の画像処理プログラム。
  3. 前記画素信号生成ステップは、前記反射光成分算出ステップにより算出された反射光成分値について、所定割合以上の画素が属する範囲となることを条件に、反射光成分値の正規化範囲を決定する範囲決定ステップと、その範囲決定ステップにより決定された正規化範囲を予め定めた上限値と下限値との範囲とする変換により、前記正規化範囲に属する各反射光成分値を正規化して正規化反射光成分値を算出する正規化ステップとを有し、その正規化ステップにて正規化された正規化反射光成分値を前記反射光成分値として用いて出力画像の画素信号を生成するものであり、
    前記記憶手段に予め記憶された画素信号生成因子に対してなされたガンマ補正においてパラメータとされた前記予め定めた反射光成分値は、前記正規化ステップにより正規化された値が取る範囲の正規化反射光成分値とされていることを特徴とする請求項1又は2に記載の画像処理プログラム。
  4. 前記画素信号生成ステップは、前記反射光成分算出ステップにより算出された反射光成分値について、所定割合以上の画素が属する範囲となることを条件に、反射光成分値の正規化範囲を決定する範囲決定ステップと、その範囲決定ステップにより決定された正規化範囲を予め定めた上限値と下限値との範囲とする変換により、前記正規化範囲に属する各反射光成分値を正規化して正規化反射光成分値を算出する正規化ステップとを有し、その正規化ステップにて正規化された正規化反射光成分値を前記反射光成分値として用いて出力画像の画素信号を生成するものであり、
    前記記憶手段に予め記憶された画素信号生成因子に対してなされたガンマ補正においてパラメータとされた前記予め定めた反射光成分値には、前記正規化ステップにより正規化された値が取る範囲の正規化反射光成分値であって、前記正規化ステップにて正規化範囲を変換するために予め定められた上限値と下限値とが採用されていることを特徴とする請求項2記載の画像処理プログラム。
  5. 画像の補正処理を行う画像処理装置に搭載され、元画像における注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とに基づいて注目画素と周辺画素との相対的な明るさの指標となる反射光成分値を算出する反射光成分算出ステップと、その反射光成分算出ステップにて算出された反射光成分値をパラメータとして注目画素の画素信号の値をガンマ補正した補正値と、注目画素の画素信号の値とに基づいて出力画像の画素信号を生成する画素信号生成ステップとを備え、レティネックス処理による画像の補正を実行する画像処理プログラムにおいて、
    前記画素信号生成ステップは、前記反射光成分算出ステップにより算出された反射光成分値について、所定割合以上の画素が属する範囲となることを条件に、反射光成分値の正規化範囲を決定する範囲決定ステップと、
    その範囲決定ステップにより決定された正規化範囲を、予め定めた上限値と下限値との範囲とする変換により、前記正規化範囲に属する各反射光成分値を正規化して正規化反射光成分値を算出する正規化ステップと、
    第1の画素信号の値に対し予め定めた正規化反射光成分値をパラメータとしてガンマ補正を行った補正値、または、その補正値と第1の画素信号の値とに基づいて算出された第2の画素信号の値を画素信号生成因子とし、その画素信号生成因子を第1の画素信号の値に対応つけて予め記憶する記憶手段から、注目画素の画素信号の値に基づいて対応する画素信号生成因子を抽出する抽出ステップと、
    その抽出ステップにて抽出された画素信号生成因子に基づいて出力画像の画素信号を生成する抽出生成ステップとを備え、前記正規化ステップにて正規化された正規化反射光成分値を前記反射光成分値として用いて出力画像の画素信号を生成するものであり、
    前記記憶手段に予め記憶された画素信号生成因子に対してなされたガンマ補正においてパラメータとされた前記予め定めた正規化反射光成分値は、前記正規化ステップにて求められる元画像の正規化反射光成分値の平均値、中央値、最頻値のいずれかに対応する値とされていることを特徴とする画像処理プログラム。
  6. 前記記憶手段に予め記憶される画素信号生成因子は、予め定めた複数の正規化反射光成分値のそれぞれに対応して算出されたものであり、
    前記抽出ステップは、前記正規化ステップにより正規化された正規化反射光成分値に対応する画素信号生成因子を前記記憶手段から抽出する一方、前記正規化された正規化反射光成分値が、前記記憶手段に予め記憶される画素信号生成因子に対応するものでない場合には、前記予め定めた複数の正規化反射光成分値の内、前記正規化ステップにて正規化された正規化反射光成分値を跨ぐ2つの値について、対応する画素信号生成因子を前記記憶手段から抽出するものであり、
    前記抽出生成ステップは、前記抽出ステップにて抽出された2の画素信号生成因子に対し、前記正規化ステップにて正規化された正規化反射光成分値に基づいた補間演算を行って、出力画像の画素信号を生成するものであることを特徴とする請求項5記載の画像処理プログラム。
  7. 前記記憶手段に予め記憶された画素信号生成因子に対してなされたガンマ補正においてパラメータとされた前記予め定めた正規化反射光成分値には、前記正規化ステップにて正規化範囲を変換するために予め定められた上限値と下限値とが採用されていることを特徴とする請求項6記載の画像処理プログラム。
  8. 前記正規化範囲を変換するために予め定められた下限値は、0を超える値とされていることを特徴とする請求項3から7のいずれかに記載の画像処理プログラム。
  9. 前記正規化範囲を変換するために予め定められた上限値は、1以上の値とされていることを特徴とする請求項3から8のいずれかに記載の画像処理プログラム。
  10. 前記正規化範囲を変換するために予め定められた上限値と下限値との幅は、1とされていることを特徴とする請求項8又は9に記載の画像処理プログラム。
  11. 元画像における注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とに基づいて注目画素と周辺画素との相対的な明るさの指標となる反射光成分値を算出する反射光成分算出手段と、その反射光成分算出手段にて算出された反射光成分値をパラメータとして注目画素の画素信号の値をガンマ補正した補正値と、注目画素の画素信号の値とに基づいて出力画像の画素信号を生成する画素信号生成手段とを備え、レティネックス処理による画像の補正を実行する画像処理装置において、
    第1の画素信号の値に対し予め定めた反射光成分値をパラメータとしてガンマ補正を行った補正値、または、その補正値と第1の画素信号の値とに基づいて算出された第2の画素信号の値を画素信号生成因子とし、その画素信号生成因子を第1の画素信号の値に対応つけて予め記憶する記憶手段を備えており、
    前記画素信号生成手段は、その記憶手段から、注目画素の画素信号の値に基づいて対応する画素信号生成因子を抽出する抽出手段と、その抽出手段にて抽出された画素信号生成因子に基づいて出力画像の画素信号を生成する抽出生成手段とを備えており、
    前記記憶手段に予め記憶された画素信号生成因子に対してなされたガンマ補正においてパラメータとされた前記予め定めた反射光成分値は、注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とが略同じである場合に、前記反射光成分算出手段にて算出される値とされていることを特徴とする画像処理装置。
  12. 元画像における注目画素の画素信号の値と注目画素周辺の周辺画素の平均輝度値とに基づいて注目画素と周辺画素との相対的な明るさの指標となる反射光成分値を算出する反射光成分算出手段と、その反射光成分算出手段にて算出された反射光成分値をパラメータとして注目画素の画素信号の値をガンマ補正した補正値と、注目画素の画素信号の値とに基づいて出力画像の画素信号を生成する画素信号生成手段とを備え、レティネックス処理による画像の補正を実行する画像処理装置において、
    第1の画素信号の値に対し予め定めた正規化反射光成分値をパラメータとしてガンマ補正を行った補正値、または、その補正値と第1の画素信号の値とに基づいて算出された第2の画素信号の値を画素信号生成因子とし、その画素信号生成因子を第1の画素信号の値に対応つけて予め記憶する記憶手段を備えており、
    前記画素信号生成手段は、前記反射光成分算出手段により算出された反射光成分値について、所定割合以上の画素が属する範囲となることを条件に、反射光成分値の正規化範囲を決定する範囲決定手段と、その範囲決定手段により決定された正規化範囲を、予め定めた上限値と下限値との範囲とする変換により、前記正規化範囲に属する各反射光成分値を正規化して正規化反射光成分値を算出する正規化手段と、前記記憶手段から、注目画素の画素信号の値に基づいて対応する画素信号生成因子を抽出する抽出手段と、その抽出手段にて抽出された画素信号生成因子に基づいて出力画像の画素信号を生成する抽出生成手段とを備え、前記正規化手段にて正規化された正規化反射光成分値を前記反射光成分値として用いて出力画像の画素信号を生成するものであり、
    前記記憶手段に予め記憶された画素信号生成因子に対してなされたガンマ補正においてパラメータとされた前記予め定めた正規化反射光成分値は、前記正規化手段にて求められる元画像の正規化反射光成分値の平均値、中央値、最頻値のいずれかに対応する値とされていることを特徴とする画像処理装置。
JP2006296904A 2006-10-31 2006-10-31 画像処理プログラムおよび画像処理装置 Expired - Fee Related JP4353233B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006296904A JP4353233B2 (ja) 2006-10-31 2006-10-31 画像処理プログラムおよび画像処理装置
US11/931,213 US8040409B2 (en) 2006-10-31 2007-10-31 Image processing device capable of performing retinex process at high speed

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006296904A JP4353233B2 (ja) 2006-10-31 2006-10-31 画像処理プログラムおよび画像処理装置

Publications (2)

Publication Number Publication Date
JP2008118183A true JP2008118183A (ja) 2008-05-22
JP4353233B2 JP4353233B2 (ja) 2009-10-28

Family

ID=39329638

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006296904A Expired - Fee Related JP4353233B2 (ja) 2006-10-31 2006-10-31 画像処理プログラムおよび画像処理装置

Country Status (2)

Country Link
US (1) US8040409B2 (ja)
JP (1) JP4353233B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012019293A (ja) * 2010-07-06 2012-01-26 Sony Corp 画像処理装置、撮影方法、撮影プログラム、画像処理方法及び画像処理プログラム
US9736466B2 (en) * 2011-05-27 2017-08-15 Zspace, Inc. Optimizing stereo video display
US10755386B2 (en) * 2016-06-30 2020-08-25 Intel Corporation Median filtering of images using directed search
KR102272979B1 (ko) * 2017-11-22 2021-07-02 한국전기연구원 레티넥스 내시경 영상 처리 시스템, 방법, 및 상기 방법을 실행시키기 위한 컴퓨터 판독 가능한 프로그램을 기록한 기록 매체

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001069525A (ja) 1999-08-27 2001-03-16 Sharp Corp 画像処理方法
US6727959B2 (en) * 1999-11-22 2004-04-27 Conexant Systems, Inc. System of and method for gamma correction of real-time video
EP1152604A1 (en) * 2000-04-24 2001-11-07 Pulnix America, Inc. Video glare reduction
JP4096613B2 (ja) 2002-05-10 2008-06-04 松下電器産業株式会社 画像処理方法及び画像処理装置
US7298917B2 (en) 2002-11-11 2007-11-20 Minolta Co., Ltd. Image processing program product and device for executing Retinex processing
JP2004164121A (ja) 2002-11-11 2004-06-10 Minolta Co Ltd 画像処理プログラム
JP3731577B2 (ja) 2002-11-11 2006-01-05 コニカミノルタホールディングス株式会社 画像処理プログラム
JP4345366B2 (ja) 2003-06-12 2009-10-14 コニカミノルタホールディングス株式会社 画像処理プログラムおよび画像処理装置
JP2005004510A (ja) 2003-06-12 2005-01-06 Minolta Co Ltd 画像処理プログラム
US7548258B2 (en) * 2003-11-21 2009-06-16 Arecont Vision Llc. High resolution network video camera with massively parallel implementation of image processing, compression and network server
US7580070B2 (en) * 2005-03-31 2009-08-25 Freescale Semiconductor, Inc. System and method for roll-off correction in image processing
US7683948B2 (en) * 2005-03-31 2010-03-23 Freescale Semiconductor, Inc. System and method for bad pixel replacement in image processing

Also Published As

Publication number Publication date
US20080100749A1 (en) 2008-05-01
JP4353233B2 (ja) 2009-10-28
US8040409B2 (en) 2011-10-18

Similar Documents

Publication Publication Date Title
US7319787B2 (en) Automatic contrast enhancement
JP4867529B2 (ja) 画像処理プログラムおよび画像処理装置
US7876474B2 (en) Image processing device capable of suppressing over-correction in Retinex process
US8081831B2 (en) Image processor performing a high precision retinex process
US8081839B2 (en) Image processor
US7920752B2 (en) Image processing device that quickly performs retinex process
US20080298723A1 (en) Image processing device
JP4997846B2 (ja) 画像処理プログラムおよび画像処理装置
JP4862554B2 (ja) 画像処理プログラムおよび画像処理装置
JP4353233B2 (ja) 画像処理プログラムおよび画像処理装置
JP4345026B2 (ja) 画像処理プログラムおよび画像処理装置
JP4281786B2 (ja) 画像処理プログラムおよび画像処理装置
JP4120928B2 (ja) 画像処理装置、画像処理方法、およびそのプログラム
JP2000032287A (ja) 画像処理装置及び画像処理方法
JP4661754B2 (ja) 画像処理装置および画像処理プログラム
JP4345027B2 (ja) 画像処理プログラムおよび画像処理装置
JP4353234B2 (ja) 画像処理プログラムおよび画像処理装置
JP4793166B2 (ja) 画像処理プログラムおよび画像処理装置
JP2008059307A (ja) 画像処理装置および画像処理プログラム
JP4793175B2 (ja) 画像処理プログラムおよび画像処理装置
JP4710761B2 (ja) 画像処理プログラムおよび画像処理装置
JP4735499B2 (ja) 画像処理プログラムおよび画像処理装置
JP4375223B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム
JP2008060944A (ja) 画像処理装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090126

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: 20090707

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090720

R150 Certificate of patent or registration of utility model

Ref document number: 4353233

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120807

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120807

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130807

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees