JP2006018740A - 画像処理手段、装置及び方法 - Google Patents
画像処理手段、装置及び方法 Download PDFInfo
- Publication number
- JP2006018740A JP2006018740A JP2004198002A JP2004198002A JP2006018740A JP 2006018740 A JP2006018740 A JP 2006018740A JP 2004198002 A JP2004198002 A JP 2004198002A JP 2004198002 A JP2004198002 A JP 2004198002A JP 2006018740 A JP2006018740 A JP 2006018740A
- Authority
- JP
- Japan
- Prior art keywords
- correction
- image
- lookup table
- unit
- shooting information
- 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.)
- Withdrawn
Links
Images
Landscapes
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
Abstract
【課題】 画像の補正において適応的に補正を行なう必要があった。
【解決手段】 写真撮影時の撮影情報を取得、保持する撮影情報保持手段と前記撮影情報に基づいて補正パラメータを設定する設定手段と、前記補正されたパラメータを用いて入力画像を補正する補正手段とを有することを特徴とする。
【選択図】 図2
【解決手段】 写真撮影時の撮影情報を取得、保持する撮影情報保持手段と前記撮影情報に基づいて補正パラメータを設定する設定手段と、前記補正されたパラメータを用いて入力画像を補正する補正手段とを有することを特徴とする。
【選択図】 図2
Description
本発明は、ある対象物を検出する手段、装置及び方法に関する。
デジタルカメラから入力した画像のコントラスト、ハイライト、シャドウやホワイトバランスを補正するアルゴリズムに関しては、これまでにいろいろな方法が提案されてきている。
本発明の発明者は特開平11−317959において、画像のハイライト部の、色の偏りの比率によって画像の特徴を判別し、その結果によってホワイトバランス補正の度合いを調整、同時にコントラスト、ハイライト、シャドウを最適に補正し、物体の色を忠実に再現するという方法を提案した。
特開平11−317959号
しかしながら、特開平11−317959においては、画像全体のヒストグラムから特徴を判定していて、撮影時のフラッシュ使用の有無、ピント位置などの区別はせずに同じ補正方法で補正を行なっていた。例えばフラッシュを使用してピント位置が近いときは、主被写体のハイライト部が飛んでしまっている可能性が強いため、ハイライトの強調は行なわないように補正方法を変更することが望ましいが、前記方法では補正方法を変更できないという問題があった。
本発明においては、前記問題点を解決するために、写真撮影時の撮影情報を取得、保持する撮影情報保持手段と、前記撮影情報に基づいて補正パラメータを設定する設定手段と、前記設定された補正パラメータを用いて入力画像データを補正する補正手段とを有し、前記撮影情報に基づいて補正方法を変更できることを特徴とする画像補正手段を提供することを目的とする。
本発明によれば、画像撮影時の撮影情報に応じて、補正方法を変更することができる。例えばフラッシュを使用してピント位置が短いときは、主被写体のハイライトポイントが飛んでいる可能性が強いので、補正後のハイライトポイントを調節し、ハイライトポイントが飛ぶのを防ぐなど、補正方法を変更することができる。
図1に本願実施形態にかかる画像処理装置の主要部分の構成を示す。
図1に示される画像処理装置は、画像入力部(2)、画像出力部(3)、ヒストグラム作成部(4)、ヒストグラム保持部(5)、ルックアップテーブル作成部(6)、ルックアップテーブル保持部(7)、画像補正部(8)、画像バッファ(9)、コピー用画像バッファ(10)、フィルタ処理部(11)、顔検出処理部(12)、撮影情報保持部(13)から構成される。
画像入力部(2)は、入力画像(1)からデータを読み込んで、画像バッファ(9)に書き込む。
画像出力部(3)は、画像バッファ(9)に格納されているデータを出力画像(14)に書き込む。
ヒストグラム作成部(4)は、画像バッファ(9)に格納されている画像データをもとに、ヒストグラムを作成し、結果をヒストグラム保持部(5)に格納する。
ヒストグラム保持部(5)は、画像データ全体のヒストグラム、及びマスク領域のヒストグラムを保持している。
ルックアップテーブル作成部(6)は、ヒストグラム保持部(5)に格納されているヒストグラムをもとに、補正に必要なパラメータを算出し、ルックアップテーブルを作成する。さらに、あらかじめルックアップテーブル保持部(7)に保持されている階調特性及び色再現性補正用ルックアップテーブルと合成し、合成したルックアップテーブルをルックアップテーブル保持部(7)に格納する。
ルックアップテーブル保持部(7)は、ルックアップテーブル作成部(6)において作成したルックアップテーブルと、階調特性及び色再現性補正用ルックアップテーブルを保持する。
画像補正部(8)は、ルックアップテーブル保持部(7)に格納されているルックアップテーブルをもとに、画像バッファ(9)に格納されている画像を補正、結果をコピー用画像バッファ(10)に格納する。
画像バッファ(9)及びコピー用画像バッファ(10)は、画像データを保持している。
フィルタ処理部(11)は、拡大/縮小処理やハイライト部のエッジ強調を行なう。
顔検出処理部(12)は、画像バッファ(9)に格納されている画像データを元に、人間の顔が存在するかどうかを検出する。そして、存在する場合は、マスクデータを作成する。
撮影情報保持部(13)は、撮影時のカメラの向き、フラッシュ使用情報、ピント距離、ピント位置(2次元)などを保持している。
画像処理装置は、例えばパソコンなどに図1の各部の処理または制御を実現するためのプログラムを供給することにより実現することができる。その場合は、パソコンのCPUがプログラムの内容に基づき各処理または制御を実施することになる。
以下、発明の実施の形態を、具体例を用いて詳細に説明する。
<本実施形態の処理の流れ>
図2に本実施形態における処理の流れを示す。
図2に本実施形態における処理の流れを示す。
ステップS1において、画像入力部(2)において入力画像(1)の撮影情報及び画像データを読み込み、画像バッファ(9)に展開する。画像入力部(2)の動作の詳細を図3に示し後述する。
ステップS2において、ヒストグラム作成部(4)、ルックアップテーブル作成部(6)、画像補正部(8)において、画像を補正する。動作の詳細を図4に示し後述する。
ステップS3において、顔検出処理部(12)において、顔検出処理を行なう。顔検出処理部(12)の動作の詳細を図13に示し後述する。
ステップS4において、顔検出処理の結果顔が存在したかどうかを判定する。少なくとも1つの顔が存在した場合、ステップS5に進む。顔が1つも存在しなかった場合、ステップS6に進む。
ステップS5において、ヒストグラム作成部(4)、ルックアップテーブル作成部(6)、画像補正部(8)において、マスクデータを用いて画像を補正する。動作の詳細を図14に示し後述する。
ステップS6において、フィルタ処理部(11)において、フィルタ処理を行なう。フィルタ処理部の動作の詳細を図18に示し後述する。
ステップS7において、画像出力部(3)において、画像バッファ(9)に格納されている画像データ及び撮影情報を出力画像(14)に出力する。
〈入力画像(1)に格納されている撮影情報及び画像データ〉
図20に入力画像(1)に格納されている撮影情報及び画像データを示す。撮影情報は撮影情報保持部(13)に、画像データは画像バッファ(9)に格納される。画像バッファ(9)はこれ以外にマスクデータを格納している。
図20に入力画像(1)に格納されている撮影情報及び画像データを示す。撮影情報は撮影情報保持部(13)に、画像データは画像バッファ(9)に格納される。画像バッファ(9)はこれ以外にマスクデータを格納している。
撮影情報には、撮影時のカメラの向き(図23(a)を正位置とし、(a)〜(d)の4通りある)、フラッシュ使用情報、ピント距離、ピント位置、入力機器IDなどが格納されている。
<画像の展開方法>
画像入力部(2)における動作の詳細を図3に示す。これは、図2のステップS1を詳細に示すものである。
画像入力部(2)における動作の詳細を図3に示す。これは、図2のステップS1を詳細に示すものである。
ステップS11において、入力画像(1)から撮影情報を入力し、撮影情報保持部(13)に格納する。
ステップS12において、撮影情報保持部(13)に格納されている撮影時のカメラの向きを判定し、判定結果に従って入力画像(1)から得た画像データを画像バッファ(9)に展開する。
展開は、カメラの位置が図23(a)の時はそのまま展開。図23(b)の時は、左に90°、図23(c)の時は、右に90°、図23(d)の時は180°それぞれ回転して、画像バッファ内では(a)の時と上下方向が一致するように展開する。このように展開することで、後の顔検出処理の時には、撮影時のカメラの向きに関係なく常に人が正位置を向いていることとして処理することができる。
また展開の際には、デジタルカメラ特有のダークノイズを低減する処理も行なう。この処理には、例えば輝度の低い部分で微妙に輝度が振れている部分を滑らかにするなどの処理が考えられる。
<画像補正処理>
図4に画像補正処理の流れを示す。
図4に画像補正処理の流れを示す。
ステップS21において、ヒストグラム作成部(4)で、画像バッファ(9)に格納されている画像データをもとにヒストグラムを作成し、結果をヒストグラム保持部(5)に格納する。ヒストグラム作成部(4)の動作の詳細は図5を用いて後述する。
ステップS22において、ルックアップテーブル作成部(6)で、ルックアップテーブルを作成する。ルックアップテーブル作成部(6)の動作の詳細は図7を用いて後述する。
ステップS23において、画像補正部(8)で、画像を補正する。画像補正部(8)の動作の詳細は図12を用いて後述する。
<ヒストグラム作成部(4)での動作>
ヒストグラム作成部(4)での動作を図5に示す。これは、図4のステップS21を詳細に示したものである。
ヒストグラム作成部(4)での動作を図5に示す。これは、図4のステップS21を詳細に示したものである。
ステップS31において、画像バッファ(9)から画像データを1画素分ずつ取り出す。画像データはRGB各色の輝度(R、G、B)が格納されている。
ステップS32において、画像データのRGB値から以下の式に従って当該画素の輝度Lを求める。
L=(3*R+6*G+1*B)/10
ステップS33において、ヒストグラム保持部に格納されているヒストグラムを更新する。ヒストグラム保持部には、上記計算した輝度LのヒストグラムHistL、およびRGB各色の累積輝度値を当該画素の輝度L別に格納する。HistR、HistG、HistBを保持している。初期状態はすべて0である。ヒストグラムの更新は下記の式に従う。
HistR[L]=HistR[L]+R
HistG[L]=HistG[L]+G
HistB[L]=HistB[L]+B
HistL[L]=HistL[L]+1
ステップS34において、全画素終了したかどうかを調べる。終了していれば、終了。いなければ、ステップS31に進む。
L=(3*R+6*G+1*B)/10
ステップS33において、ヒストグラム保持部に格納されているヒストグラムを更新する。ヒストグラム保持部には、上記計算した輝度LのヒストグラムHistL、およびRGB各色の累積輝度値を当該画素の輝度L別に格納する。HistR、HistG、HistBを保持している。初期状態はすべて0である。ヒストグラムの更新は下記の式に従う。
HistR[L]=HistR[L]+R
HistG[L]=HistG[L]+G
HistB[L]=HistB[L]+B
HistL[L]=HistL[L]+1
ステップS34において、全画素終了したかどうかを調べる。終了していれば、終了。いなければ、ステップS31に進む。
作成したヒストグラムHistLの例を図6に示す。
<階調再現及び色再現性補正用ルックアップテーブルの作成方法>
階調再現及び色再現性補正用ルックアップテーブルとは、好ましい色再現に注目し、デジタルカメラなどの入力機器から入力した画像をプリンタなどの出力機器で出力した時の印刷物の階調再現及び色再現を、銀塩ポジフィルムなどの出力目標物で実現している階調再現及び色再現に近付くような画像に補正するためのルックアップテーブルである。階調再現及び色再現性補正用ルックアップテーブルを作成する方法を、図21を用いて詳細に説明する。
階調再現及び色再現性補正用ルックアップテーブルとは、好ましい色再現に注目し、デジタルカメラなどの入力機器から入力した画像をプリンタなどの出力機器で出力した時の印刷物の階調再現及び色再現を、銀塩ポジフィルムなどの出力目標物で実現している階調再現及び色再現に近付くような画像に補正するためのルックアップテーブルである。階調再現及び色再現性補正用ルックアップテーブルを作成する方法を、図21を用いて詳細に説明する。
ステップS121において、図9に示す出力目標物プロファイル(パッチ番号とXYZ測色値の関係)と図11に示す出力機器プロファイル(XYZ測色値とRGB輝度の関係)を合成する。合成方法は、出力目標物プロファイルのXYZ値(各パッチごとに値がある)のY値と同じY値をもつパッチを出力機器プロファイルから探し出す。そして、出力機器プロファイルから探し出したパッチのXYZ値に対応するRGB値と、元の出力目標物プロファイルのパッチ番号との対応をとり、合成する。合成されたテーブルは、パッチ番号と出力機器の輝度(RGB値)との関係になる。
ステップS122において、ステップS121において合成したテーブルと、図10に示す入力機器プロファイルを合成する。入力機器プロファイルはパッチ番号と入力機器の輝度(RGB値)の関係になっているので、合成方法は、同じパッチ番号に対応する入力機器の輝度(RGB値)と出力機器の輝度(RGB値)との関係を収集することになる。作成したテーブルは、ルックアップテーブル保持部(7)に格納し、画像を補正する際に使用する。実際の使用例は後述する。
<階調特性及び色再現性補正用ルックアップテーブルの例>
図22に示すルックアップテーブルは、以上の方法により作成した階調特性及び色再現性補正用ルックアップテーブル、LUTRDD、LUTGDD、LUTBDDである。なお、テーブル内にデータが格納されていない各点間は、直線で補間し変換データを作成する。両端の点では、それぞれ(255,255)、(0,0)と直線で補間する。本実施形態では補間処理として直線補間を用いているが、例えばスプライン曲線やベジェ曲線を用いた非線形補間処理を用いても構わない。
図22に示すルックアップテーブルは、以上の方法により作成した階調特性及び色再現性補正用ルックアップテーブル、LUTRDD、LUTGDD、LUTBDDである。なお、テーブル内にデータが格納されていない各点間は、直線で補間し変換データを作成する。両端の点では、それぞれ(255,255)、(0,0)と直線で補間する。本実施形態では補間処理として直線補間を用いているが、例えばスプライン曲線やベジェ曲線を用いた非線形補間処理を用いても構わない。
<ルックアップテーブル作成部(6)での動作>
ルックアップテーブル作成部(6)での動作を図7に示す。これは、図4のステップS22を詳細に示したものである。
ルックアップテーブル作成部(6)での動作を図7に示す。これは、図4のステップS22を詳細に示したものである。
ステップS41において、ヒストグラム保持部(5)に格納されているヒストグラムHistLから、画像の最大輝度を求める。図6に示したヒストグラムにおいては、最大輝度は252になる。
ステップS42において、S41で求めた最大輝度と、255から所定量(図6においては、(所定量)=10である)を引き算していって、最大輝度の方が大きくなった時の輝度(LH′、つまりこの例の場合では、255、245、235、…を値を下げていって、その都度最大輝度と比較する。図6においては、LH′=245になる)を求め、所定の割合の画素(図6においては、総画素数の1%)を含む領域を求める。その領域の最小輝度をハイライトポイント(LH、図6においては、LH=234)とする。そして、以下の式に従って領域内(輝度がLH以上LH′以下の領域)のRGBの平均輝度(RH、GH、BH)を算出する。
ステップS44において、S43で求めた最小輝度と、0から所定量(図6においては、(所定量)=10である)を足し算していって、最小輝度の方が小さくなったときの輝度(LS′、図6においては、LS′=10)を求め、所定の割合の画素(図6においては、総画素数の1%)を含む領域を求める。その領域の最大輝度をシャドウポイント(LS、図6においては、LS=22)とする。そして、以下の式に従って領域内(輝度はLS′以上LS以下の領域)のRGBの平均輝度(RS、GS、BS)を算出する。
ステップS46において、ヒストグラム保持部(5)に格納されているヒストグラムHistLから、画像の平均輝度を求める。そして、求めた平均輝度の値によって、露出補正用ルックアップテーブルLUTLを作成する。作成したルックアップテーブルの例を図8(b)に示し、詳細を後述する。
ステップS47において、ステップS45で作成したルックアップテーブルLUTR、LUTG、LUTB、ステップS46で作成したルックアップテーブルLUTL、及びルックアップテーブル保持部(7)にあらかじめ格納されている階調特性及び色再現性補正用ルックアップテーブルLUTRDD、LUTGDD、LUTBDDを下記の式に従って合成する。合成したルックアップテーブルLUTR2、LUTG2、LUTB2をルックアップテーブル保持部(7)に格納する。
LUTR2[i]=LUTRDD[LUTL[LUTR[i]]]
LUTG2[i]=LUTGDD[LUTL[LUTG[i]]]
LUTB2[i]=LUTBDD[LUTL[LUTB[i]]]
ただし、上記の式においてiは、0以上最大輝度以下の値である。
LUTR2[i]=LUTRDD[LUTL[LUTR[i]]]
LUTG2[i]=LUTGDD[LUTL[LUTG[i]]]
LUTB2[i]=LUTBDD[LUTL[LUTB[i]]]
ただし、上記の式においてiは、0以上最大輝度以下の値である。
<作成したルックアップテーブルの例>
作成したルックアップテーブルLUTR、LUTG、LUTB、LUTLの例を図8に示す。図8(a)に示すルックアップテーブルLUTR、LUTG、LUTBは、コントラスト、及び色かぶりの補正を行なうためのものである。ここでは、G、B、Rの順にハイライトのガンマを立たせている。このように、Rに対してB及びGを強めることで、例えばシアンかぶりしている画像のかぶりを補正することができる。同時に、コントラストの補正もできる。
作成したルックアップテーブルLUTR、LUTG、LUTB、LUTLの例を図8に示す。図8(a)に示すルックアップテーブルLUTR、LUTG、LUTBは、コントラスト、及び色かぶりの補正を行なうためのものである。ここでは、G、B、Rの順にハイライトのガンマを立たせている。このように、Rに対してB及びGを強めることで、例えばシアンかぶりしている画像のかぶりを補正することができる。同時に、コントラストの補正もできる。
一方、図8(b)に示すルックアップテーブルLUTLは露出補正用のルックアップテーブルで、画像の平均輝度により、平均輝度が低いときは露出アンダーの可能性があるので、全体を明るくするようなテーブルを作成し、平均輝度が低い時は露出オーバーの可能性があるので、全体を暗くするようなルックアップテーブルを作成する。
<画像補正部(8)での動作>
図12に画像補正部(8)での動作を示す。これは、図4のステップS23、及び図14のステップS73を詳細に示したものである。
図12に画像補正部(8)での動作を示す。これは、図4のステップS23、及び図14のステップS73を詳細に示したものである。
ステップS51において、画像バッファ(9)に格納されている画像データを1画素分取り出す。画像データはRGB各色の輝度(R、G、B)が格納されている。
ステップS52において、ステップS46またはステップS98において合成したルックアップテーブルLUTR2、LUTG2、LUTB2に基づいて、画像バッファ(9)から取り出した画像データを補正する。結果はコピー用画像バッファ(10)に格納する。
R=LUTR2[R]
G=LUTG2[G]
B=LUTB2[B]
ステップS53において、全画素終了したかどうかを調べる。全画素終了していれば終了。終了していなければ、ステップS51に進む。
R=LUTR2[R]
G=LUTG2[G]
B=LUTB2[B]
ステップS53において、全画素終了したかどうかを調べる。全画素終了していれば終了。終了していなければ、ステップS51に進む。
本実施形態では、ルックアップテーブルの作成処理及び画像補正処理の高速化をはかるために各成分毎にルックアップテーブルを用意している。
<顔検出処理部(12)の動作>
図13及び図24に顔検出処理部(12)の動作を示す。これは、図2のステップS3を詳細に示したものである。
図13及び図24に顔検出処理部(12)の動作を示す。これは、図2のステップS3を詳細に示したものである。
ステップS61において、コピー用画像バッファ(10)に格納されている画像データ(つまり、ステップS2で補正された画像データ)を元に、局所的に輝度が低い領域をマークしていく。
ステップS62において、ステップS61でマークされた領域を2つずつ組にして、領域の大きさの均等性、輝度の差、水平に対する角度などから、組にした2つが目かどうかを判定する(図24(a))。
ステップS63において、目と判定された組について、その2つを中心にした矩形領域を設定する。そして、その領域の境界付近のエッジ、及び領域内の色情報を判定する。エッジは、顔の輪郭があるかどうかを判定する。また、色情報は矩形領域内のRGB値の平均値が、あらかじめ設定した肌色領域内に入っているかどうかを判定する。そして、顔領域を確定する。顔領域は前記矩形領域で与えられる(図24(b)(c))。
ステップS64において、確定した顔の領域をマスクするようなマスクデータを作成し、作成したマスクデータを画像バッファ(9)に格納する。
<マスクデータを用いた場合の画像補正処理>
図14に本実施形態におけるマスクデータを用いた場合の画像補正処理の流れを示す。
図14に本実施形態におけるマスクデータを用いた場合の画像補正処理の流れを示す。
ステップS71において、ヒストグラム作成部(4)で、画像バッファ(9)(ステップS2で補正される前の画像データ)に格納されている画像データをもとにヒストグラムを作成し、結果をヒストグラム保持部(5)に格納する。ヒストグラム作成部(4)の動作の詳細は図15を用いて後述する。
ステップS72において、ルックアップテーブル作成部(6)で、ルックアップテーブルを作成する。ルックアップテーブル作成部(6)の動作の詳細は図16を用いて後述する。
ステップS73において、画像補正部(8)で、画像を補正する。画像補正部(8)の動作の詳細は図12で示したものと同一である。
<マスクデータを用いた場合のヒストグラム作成処理>
ヒストグラム作成部(4)での動作を図15に示す。これは、図14のステップS71を詳細に示したものである。
ヒストグラム作成部(4)での動作を図15に示す。これは、図14のステップS71を詳細に示したものである。
ステップS81において、画像バッファ(9)から画像データとマスクデータを1画素分ずつ取り出す。画像データはRGB各色の輝度(R、G、B)、マスクデータはマスクの有無が格納されている。
ステップS82において、画像データのRGB値から以下の式に従って当該画素の輝度Lを求める。
L=(3*R+6*G+1*B)/10
ステップS33において、ヒストグラム保持部に格納されているヒストグラムを更新する。ヒストグラム保持部には、上記計算した輝度LのヒストグラムHistL、およびRGB各色の累積輝度値を当該画素の輝度L別に格納する。HistR、HistG、HistB、さらにマスクデータによってマスクされている領域の輝度LのヒストグラムHistLMskを保持している。初期状態はすべて0である。ヒストグラムの更新は下記の式に従う。
HistR[L]=HistR[L]+R
HistG[L]=HistG[L]+G
HistB[L]=HistB[L]+B
HistL[L]=HistL[L]+1
ステップS84において、マスクデータから当該画素がマスクされているかどうかを調べる。マスクされていたら、ステップS85に進み、マスクされていなかったら、ステップS86に進む。
L=(3*R+6*G+1*B)/10
ステップS33において、ヒストグラム保持部に格納されているヒストグラムを更新する。ヒストグラム保持部には、上記計算した輝度LのヒストグラムHistL、およびRGB各色の累積輝度値を当該画素の輝度L別に格納する。HistR、HistG、HistB、さらにマスクデータによってマスクされている領域の輝度LのヒストグラムHistLMskを保持している。初期状態はすべて0である。ヒストグラムの更新は下記の式に従う。
HistR[L]=HistR[L]+R
HistG[L]=HistG[L]+G
HistB[L]=HistB[L]+B
HistL[L]=HistL[L]+1
ステップS84において、マスクデータから当該画素がマスクされているかどうかを調べる。マスクされていたら、ステップS85に進み、マスクされていなかったら、ステップS86に進む。
ステップS85において、ヒストグラム保持部に格納されているマスク領域のヒストグラムを更新する。
HistLMsk[L]=HistLMsk[L]+1
ステップS86において、全画素終了したかどうかを調べる。終了していれば、終了。いなければ、ステップS81に進む。
HistLMsk[L]=HistLMsk[L]+1
ステップS86において、全画素終了したかどうかを調べる。終了していれば、終了。いなければ、ステップS81に進む。
作成したヒストグラムHistLの例は図6に示したものと同一である。
<マスクデータを使用した場合のルックアップテーブル作成部(6)での動作>
マスクデータを使用した場合のルックアップテーブル作成部(6)での動作を図16に示す。これは、図14のステップS72を詳細に示したものである。
マスクデータを使用した場合のルックアップテーブル作成部(6)での動作を図16に示す。これは、図14のステップS72を詳細に示したものである。
ステップS91において、ヒストグラム保持部(5)に格納されているヒストグラムHistLから、画像の最大輝度を求める。図6に示したヒストグラムにおいては、最大輝度は252になる。
ステップS92において、S91で求めた最大輝度と、255から所定量(図6においては、(所定量)=10である)を引き算していって、最大輝度の方が大きくなった時の輝度(LH′、つまりこの例の場合では、255、245、235、…を値を下げていって、その都度最大輝度と比較する。図6においては、LH′=245になる)を求め、所定の割合の画素(図6においては、総画素数の1%)を含む領域を求める。その領域の最小輝度をハイライトポイント(LH、図6においては、LH=234)とする。
ステップS93において、ヒストグラム保持部(5)に格納されているヒストグラムHistLから、画像の最小輝度を求める。図6に示したヒストグラムにおいては、最小輝度は6になる。
ステップS94において、S93で求めた最小輝度と、0から所定量(図6においては、(所定量)=10である)を足し算していって、最小輝度の方が小さくなった時の輝度(LS′、図6においては、LS′=10)を求め、所定の割合の画素(図6においては、総画素数の1%)を含む領域を求める。その領域の最大輝度をシャドウポイント(LS、図6においては、LS=22)とする。
ステップS95において、輝度がLS以上LH以下の範囲の画素で、以下の式を満たす画素のRGBそれぞれの輝度の平均値(RG、GG、BG)を求める。
Max(R、G、B)−Min(R、G、B)=<Thr
ただし、Max(R、G、B)はRGB値の中の最大値、Min(R、G、B)はRGB値の中の最小値、Thrはある閾値。
Max(R、G、B)−Min(R、G、B)=<Thr
ただし、Max(R、G、B)はRGB値の中の最大値、Min(R、G、B)はRGB値の中の最小値、Thrはある閾値。
ステップS96において、求めたLS、LH、RG、GG、BBからルックアップテーブルLUTR、LUTG、LUTBを作成する。作成したルックアップテーブルの例を図17(a)に示し、詳細を後述する。そして、結果をルックアップテーブル保持部(7)に格納する。また、LH及びLSをもとに、HistL補正用のルックアップテーブルLUTTmpを作成する。
ステップS97において、LUTTmpを用いてHistLMskを補正する。これは、あとで露出補正量を算出する際に使用する。
ステップS98において、補正を行った後のHistLMskからマスク領域の平均輝度を求め、所定の方法に従って露出補正用ルックアップテーブルLUTLMskを作成する。そして、結果をルックアップテーブル保持部(7)に格納する。LUTLMskの例を図10(b)に示し、詳細を後述する。
ステップS99において、ステップS96で作成したルックアップテーブルLUTR、LUTG、LUTB、LUTLMskと、及びルックアップテーブル保持部(7)にあらかじめ格納されている階調特性及び色再現性補正用ルックアップテーブルLUTRDD、LUTGDD、LUTBDDを下記の式に従って合成する。合成したルックアップテーブルLUTR2、LUTG2、LUTB2をルックアップテーブル保持部(7)に格納する。
LUTR2[i]=LUTRDD[LUTLMsk[LUTR[i]]]
LUTG2[i]=LUTGDD[LUTLMsk[LUTG[i]]]
LUTB2[i]=LUTBDD[LUTLMsk[LUTB[i]]]
ただし、上記の式においてiは、0以上最大輝度以下の値である。
LUTR2[i]=LUTRDD[LUTLMsk[LUTR[i]]]
LUTG2[i]=LUTGDD[LUTLMsk[LUTG[i]]]
LUTB2[i]=LUTBDD[LUTLMsk[LUTB[i]]]
ただし、上記の式においてiは、0以上最大輝度以下の値である。
<作成したルックアップテーブルの例>
作成したルックアップテーブルの例を図17に示す。図17(a)に示すルックアップテーブルLUTR、LUTG、LUTBは、コントラスト、及び色かぶりの補正を行なうためのものである。ここでは、G、B、Rの順に中間調のガンマを立たせている。このように、Rに対してG及びBを強めることで、例えばシアンっぽく色かぶりしている画像の色かぶりを補正することができる。同時に、コントラストの補正もできる。
作成したルックアップテーブルの例を図17に示す。図17(a)に示すルックアップテーブルLUTR、LUTG、LUTBは、コントラスト、及び色かぶりの補正を行なうためのものである。ここでは、G、B、Rの順に中間調のガンマを立たせている。このように、Rに対してG及びBを強めることで、例えばシアンっぽく色かぶりしている画像の色かぶりを補正することができる。同時に、コントラストの補正もできる。
一方、図17(b)に示すルックアップテーブルは、マスク領域の露出を最適に補正するためのルックアップテーブルLUTLMskである。ここで、例えば人物の領域をマスク領域に設定し、LUTLMskを人物の露出が最適に補正できるように設定することもできる。
<フィルタ処理部(11)の動作>
図18にフィルタ処理部(11)の動作の流れを示す。これは、図2のステップS6を詳細に示すものである。
図18にフィルタ処理部(11)の動作の流れを示す。これは、図2のステップS6を詳細に示すものである。
ステップS101において、画像の拡大/縮小処理を行なう。処理には、バイキュービックやバイリニアなどの方法を用いる。
ステップS102において、エッジ強調処理を行なう。エッジ強調処理の動作の詳細を図19に示し後述する。
<エッジ強調処理>
図19にエッジ強調処理の動作の流れを示す。これは、図18のステップS102を詳細に示したものである。
図19にエッジ強調処理の動作の流れを示す。これは、図18のステップS102を詳細に示したものである。
まず、ステップS111において、コピー用画像バッファ(10)から1画素分のRGB輝度データを読み出す。
ステップS112において、読み出したRGB輝度データと閾値をRGBそれぞれについて比較する。その結果、RGB輝度データがすべて閾値よりも小さいか、画像の端の画素だった場合には、ステップS114に進む。それ以外の時には、ステップS113に進む。
ステップS113において、閾値以上の値を有する色成分データについて、3×3のエッジ強調フィルタを用いてフィルタ処理を行なう。なお、閾値以下の色成分データに対してはフィルタ処理を行わない。
ステップS114において、処理されたRGB輝度データを画像バッファ(9)に書き込む。エッジ強調処理をしなかった場合はステップS111で読み込まれたRGB輝度データがそのまま画像バッファ(9)に書き込まれる。
ステップS115において、全画素終了したかどうかを判定する。全画素終了していなければ、ステップS111に進む。
なお、ステップS112で用いる閾値は各色成分に対して同一の閾値を用いても構わないし、各色成分に対して独立に閾値を設定しても構わない。
(第2の実施形態)
前記発明の実施の形態においては、ルックアップテーブル作成の際に、補正後のハイライトポイント及びシャドウポイント(図8(a)のHP及びSP)は常にある定数を使用していたが、撮影情報保持部(13)に格納されている情報を使用して、補正後のハイライトポイント及びシャドウポイントを可変にすることもできる。以下に実施の形態を詳細に述べる。
前記発明の実施の形態においては、ルックアップテーブル作成の際に、補正後のハイライトポイント及びシャドウポイント(図8(a)のHP及びSP)は常にある定数を使用していたが、撮影情報保持部(13)に格納されている情報を使用して、補正後のハイライトポイント及びシャドウポイントを可変にすることもできる。以下に実施の形態を詳細に述べる。
図25に発明の第2の実施形態における画像補正装置の主要部分の構成を示す。
図25に示される画像処理装置は、画像入力部(2)、画像出力部(3)、ヒストグラム作成部(4)、ヒストグラム保持部(5)、ルックアップテーブル作成部(6)、ルックアップテーブル保持部(7)、画像補正部(8)、画像バッファ(9)、コピー用画像バッファ(10)、フィルタ処理部(11)、顔検出処理部(12)、撮影情報保持部(13)、補正情報保持部(15)から構成される。
このうち、ルックアップテーブル作成部(6)、補正情報保持部(15)以外は前記実施形態において説明したものと同じ動作を行なうので、説明は省略する。
<第2の実施形態におけるルックアップテーブル作成方法>
図26に補正情報保持部(15)において保持している情報を示す。
図26に補正情報保持部(15)において保持している情報を示す。
図26においては、フラッシュ使用の有無、ピント距離の範囲を組み合わせて、それぞれの組み合わせに応じて補正後のハイライトポイント及びシャドウポイントを保持している。例えばフラッシュを使用して、ピント距離が短いときは、ハイライトが飛んでいる可能性が強いので、HPの値を低くしてコントラストをあまり強調しないようにしたり、フラッシュ未使用で、ピント距離が長いときは風景写真の可能性が強いので、SPの値を低く、HPの値を高くしてコントラストを強調したりすることが可能になる。このHP及びSPは、ルックアップテーブル作成部(6)において、ルックアップテーブル作成の際(ステップS45及びステップS96)に、補正情報保持部(15)から読み込むことによって使用する。
(他の実施の形態)
<輝度の考え方>
前記実施例においては、輝度データは0から255のデジタル値で実施しているが、これ以外、例えばデータの最大値は255に限定されるものではなく、さらに輝度のみならず網点濃度などでもよいことは言うまでもない。
<輝度の考え方>
前記実施例においては、輝度データは0から255のデジタル値で実施しているが、これ以外、例えばデータの最大値は255に限定されるものではなく、さらに輝度のみならず網点濃度などでもよいことは言うまでもない。
<輝度値の計算方法>
ステップS32及びステップS82において、輝度値をR:G:B=3:6:1の重みで加重平均して計算しているが、これに限らないことは言うまでもなく、例えばこれ以外の重みで計算してもいいし、RGBの最大値と最小値の平均値で求めてもよい。
ステップS32及びステップS82において、輝度値をR:G:B=3:6:1の重みで加重平均して計算しているが、これに限らないことは言うまでもなく、例えばこれ以外の重みで計算してもいいし、RGBの最大値と最小値の平均値で求めてもよい。
<顔検出結果の示し方>
前記実施例においては、顔検出の結果を矩形で示したが、矩形に限らないことは言うまでもなく、例えば輪郭部分を抽出したものを結果としてもよい。
前記実施例においては、顔検出の結果を矩形で示したが、矩形に限らないことは言うまでもなく、例えば輪郭部分を抽出したものを結果としてもよい。
<撮影時のカメラの向きと、画像バッファに格納する画像データ>
図23において、撮影時のカメラの向きと、画像バッファに格納する画像データについて、4つの場合について記述しているが、この4種類とは限らないことはいうまでもなく、例えば45°傾けて撮影された場合には、逆方向に45°傾けて画像バッファに格納するようにしてもよい。
図23において、撮影時のカメラの向きと、画像バッファに格納する画像データについて、4つの場合について記述しているが、この4種類とは限らないことはいうまでもなく、例えば45°傾けて撮影された場合には、逆方向に45°傾けて画像バッファに格納するようにしてもよい。
<撮影情報の利用方法>
前記実施例においては、撮影情報としてはカメラの位置のみしか使用していないが、図20に示すように、カメラのIDを使用して、図9に示す出力目標物プロファイルを切り替えるようにしてもよい。また、ピントの合った位置を使用することで、露出補正用ルックアップテーブルLUTL作成の際に、ピントの合った位置を中心に作成するようにしてもよい。
前記実施例においては、撮影情報としてはカメラの位置のみしか使用していないが、図20に示すように、カメラのIDを使用して、図9に示す出力目標物プロファイルを切り替えるようにしてもよい。また、ピントの合った位置を使用することで、露出補正用ルックアップテーブルLUTL作成の際に、ピントの合った位置を中心に作成するようにしてもよい。
<補正情報保持部(15)において保持している情報について>
前記第2の実施例においては、補正情報保持部(15)において、補正後のハイライトポイント(HP)及びシャドウポイント(SP)を保持していたが、HP、SPだけに限らないことは言うまでもない。例えば、露出補正の方法も保持するようにして、フラッシュ未使用、ピント距離が長い時は、露出アンダーの可能性が強いので、露出補正を通常よりも明るめに設定するようにしてもよい。
前記第2の実施例においては、補正情報保持部(15)において、補正後のハイライトポイント(HP)及びシャドウポイント(SP)を保持していたが、HP、SPだけに限らないことは言うまでもない。例えば、露出補正の方法も保持するようにして、フラッシュ未使用、ピント距離が長い時は、露出アンダーの可能性が強いので、露出補正を通常よりも明るめに設定するようにしてもよい。
<その他>
本発明は複数の機器(例えばホストコンピュータ、インタフェース機器、リーダ、プリンタ等)から構成されるシステムに適用しても一つの機器(例えば複写機、ファクシミリ装置)からなる装置に適用してもよい。
本発明は複数の機器(例えばホストコンピュータ、インタフェース機器、リーダ、プリンタ等)から構成されるシステムに適用しても一つの機器(例えば複写機、ファクシミリ装置)からなる装置に適用してもよい。
また前述した実施形態の機能を実現する様に各種のデバイスを動作させる様に該各種デバイスと接続された装置あるいはシステム内のコンピュータに、前記実施形態機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータ(CPUあるいはMPU)を格納されたプログラムに従って前記各種デバイスを動作させることによって実施したものも本発明の範疇に含まれる。
またこの場合、前記ソフトウェアのプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体、及びそのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムコードを格納した記憶媒体は本発明を構成する。
かかるプログラムコードを格納する記憶媒体としては例えばフロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
またコンピュータが供給されたプログラムコードを実行することにより、前述の実施形態の機能が実現されるだけではなく、そのプログラムコードがコンピュータにおいて稼働しているOS(オペレーティングシステム)、あるいは他のアプリケーションソフト等と共同して前述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
さらに、供給されたプログラムコードが、コンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後そのプログラムコードの指示に基づいてその機能拡張ボードや機能格納ユニットに備わるCPU等が実際の処理の一部または全部を行ない、その処理によって前述した実施形態の機能が実現される場合も本発明に含まれることは言うまでもない。
1 入力画像
2 画像入力部
3 画像出力部
4 ヒストグラム作成部
5 ヒストグラム保持部
6 ルックアップテーブル作成部
7 ルックアップテーブル保持部
8 画像補正部
9 画像バッファ
10 コピー用画像バッファ
11 フィルタ処理部
12 顔検出処理部
13 撮影情報保持部
14 出力画像
15 補正情報保持部
2 画像入力部
3 画像出力部
4 ヒストグラム作成部
5 ヒストグラム保持部
6 ルックアップテーブル作成部
7 ルックアップテーブル保持部
8 画像補正部
9 画像バッファ
10 コピー用画像バッファ
11 フィルタ処理部
12 顔検出処理部
13 撮影情報保持部
14 出力画像
15 補正情報保持部
Claims (7)
- 写真撮影時の撮影情報を取得、保持する撮影情報保持手段と、前記撮影情報に基づいて補正パラメータを設定する設定手段と、前記設定された補正パラメータを用いて入力画像データを補正する補正手段とを有することを特徴とする画像補正手段。
- 前記設定手段は、前記入力画像データのヒストグラムを作成するヒストグラム作成手段と、前記ヒストグラム画像のハイライトポイント、シャドウポイント、露出状態を算出し、算出結果及び前記撮影情報に基づいて補正用ルックアップテーブルを作成するルックアップテーブル作成手段を有し、
前記補正手段は、前記補正用ルックアップテーブルを使用して前記入力画像データを補正する補正手段であることを特徴とする請求項1に記載の画像補正手段。 - 前記撮影情報は、フラッシュ使用の有無、ピント位置であることを特徴とする請求項2に記載の画像補正手段。
- 前記撮影情報保持手段に格納されているデータは、前記撮影情報のそれぞれの組み合わせにおける補正後のハイライトポイント及びシャドウポイントであることを特徴とする請求項3に記載の画像補正手段。
- 前記補正用ルックアップテーブルは、前記補正後のハイライトポイント及びシャドウポイントを用いて作成することを特徴とする請求項4に記載の画像補正手段。
- 写真撮影時の撮影情報を取得、保持する撮影情報保持部と、前記撮影情報に基づいて補正パラメータを設定する設定部と、前記設定された補正パラメータを用いて入力画像データを補正する補正部とを有することを特徴とする画像補正装置。
- 写真撮影時の撮影情報を取得、保持する撮影情報保持方法と、前記撮影情報に基づいて補正パラメータを設定する設定方法と、前記設定された補正パラメータを用いて入力画像データを補正する補正方法とを有することを特徴とする画像補正方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004198002A JP2006018740A (ja) | 2004-07-05 | 2004-07-05 | 画像処理手段、装置及び方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004198002A JP2006018740A (ja) | 2004-07-05 | 2004-07-05 | 画像処理手段、装置及び方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2006018740A true JP2006018740A (ja) | 2006-01-19 |
Family
ID=35792936
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2004198002A Withdrawn JP2006018740A (ja) | 2004-07-05 | 2004-07-05 | 画像処理手段、装置及び方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2006018740A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2013172311A (ja) * | 2012-02-21 | 2013-09-02 | Fujitsu Ltd | 画像処理装置および画像処理方法並びに画像処理プログラム |
| JP2014527244A (ja) * | 2011-09-20 | 2014-10-09 | 富士通株式会社 | 除霧画像のための露光強化方法及び装置 |
| WO2021015492A1 (en) * | 2019-07-22 | 2021-01-28 | Samsung Electronics Co., Ltd. | Display apparatus and control method thereof |
-
2004
- 2004-07-05 JP JP2004198002A patent/JP2006018740A/ja not_active Withdrawn
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2014527244A (ja) * | 2011-09-20 | 2014-10-09 | 富士通株式会社 | 除霧画像のための露光強化方法及び装置 |
| US9478015B2 (en) | 2011-09-20 | 2016-10-25 | Fujitsu Limited | Exposure enhancement method and apparatus for a defogged image |
| JP2013172311A (ja) * | 2012-02-21 | 2013-09-02 | Fujitsu Ltd | 画像処理装置および画像処理方法並びに画像処理プログラム |
| WO2021015492A1 (en) * | 2019-07-22 | 2021-01-28 | Samsung Electronics Co., Ltd. | Display apparatus and control method thereof |
| KR20210011162A (ko) * | 2019-07-22 | 2021-02-01 | 삼성전자주식회사 | 디스플레이장치 및 그 제어방법 |
| US11355089B2 (en) | 2019-07-22 | 2022-06-07 | Samsung Electronics Co., Ltd. | Display apparatus and control method thereof |
| KR102757183B1 (ko) | 2019-07-22 | 2025-01-21 | 삼성전자주식회사 | 디스플레이장치 및 그 제어방법 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7580566B2 (en) | Image processing device, image processing method, storage medium, and program | |
| JP5089405B2 (ja) | 画像処理装置及び画像処理方法並びに撮像装置 | |
| JP6282156B2 (ja) | 画像装置、画像処理方法、制御プログラム及び記憶媒体 | |
| WO2018176925A1 (zh) | Hdr图像的生成方法及装置 | |
| JP3733165B2 (ja) | デジタルプリンタの画像データ変換方法 | |
| JP2001313844A (ja) | 局所的な色補正を実行する方法および装置 | |
| JP4066803B2 (ja) | 画像処理装置、画像処理プログラム、画像処理方法および電子カメラ | |
| CN113592739B (zh) | 一种镜头阴影校正的方法、装置及存储介质 | |
| JP2009065350A (ja) | 画像処理装置、画像処理方法、及び記憶媒体 | |
| JP4979090B2 (ja) | 画像処理装置、画像処理方法、プログラムおよび記録媒体 | |
| JP4123900B2 (ja) | 画像処理方法、画像処理装置、画像処理プログラム、および画像処理プログラムを記録した記録媒体 | |
| JP2009145991A (ja) | 画像処理装置、画像処理方法、プログラムおよび記憶媒体 | |
| JP2006018740A (ja) | 画像処理手段、装置及び方法 | |
| JPH08110603A (ja) | 色調整方法および装置 | |
| JP2000224418A (ja) | 写真複写の明度プロファイルを変更するためのマスク | |
| US20040114189A1 (en) | Image correction device and image correction program storage medium | |
| JP2006343863A (ja) | 画像処理装置及びその方法 | |
| JP2006018739A (ja) | 対象物検出手段、装置及び方法 | |
| JP2006018738A (ja) | 対象物検出手段、装置及び方法 | |
| JP4355416B2 (ja) | 画像処理装置及びその方法 | |
| JPH11317873A (ja) | 画像補正装置および記録媒体 | |
| JP4455307B2 (ja) | 画像処理装置及びその方法並びにメモリ媒体 | |
| JP4507078B2 (ja) | 自動顔画像補正方法及び装置 | |
| JP3684120B2 (ja) | 画像処理装置及びその方法並びにメモリ媒体 | |
| JPH11317959A (ja) | 画像処理装置及びその方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20071002 |