【解決手段】 画像の局所的な補正処理を行う局所的処理部と、前記画像の全体的な補正処理を行う大域的処理部と、を備え、前記局所的処理部が、補正対象ピクセルを含み設定される第1の範囲に含まれる複数の第1参照ピクセルに基づく第1補正値と、前記第1の範囲を含み設定される第2の範囲に含まれ、かつ、前記第1の範囲に含まれない複数の第2参照ピクセルに基づく第2補正値とに基づいて、前記補正対象ピクセルの補正値を求め、前記大域的処理部が、前記局所的処理部が求めた前記補正対象ピクセルの補正値を、前記局所的処理部が求めた1フレーム分のピクセルの補正値に基づきさらに補正する、コントラスト補正回路である。
前記局所的処理部は、前記第2補正値を求める際、前記補正対象ピクセルのピクセル値から、前記第2参照ピクセルのピクセル値に所定の係数を乗じた値を減じることで前記差分値を算出する、
請求項2記載のコントラスト補正回路。
前記バッファは、少なくとも前記第1参照ピクセルと前記第2参照ピクセルとのいずれかになり得るピクセルのピクセル値を保持する、請求項4に記載のコントラスト補正回路。
前記レジスタは、前記第1算出部に対し複数の前記第1参照ピクセルのピクセル値をパラレルに出力すると共に、前記第2算出部に対し前記第2参照ピクセルのピクセル値をパラレルに出力する、請求項4又は5に記載のコントラスト補正回路。
前記局所的処理は、前記第2補正値を求める際、前記補正対象ピクセルのピクセル値から、前記第2参照ピクセルのピクセル値に所定の係数を乗じた値を減じることで前記差分値を算出する、
請求項9記載のコントラスト補正方法。
【発明を実施するための形態】
【0025】
以下、図面を参照して本発明の実施の形態を説明する。ただし、以下に説明する実施形態は、あくまでも例示であり、以下に明示しない種々の変形や技術の適用を排除する意図はない。本発明は、その趣旨を逸脱しない範囲で種々変形(例えば各実施形態を組み合わせる等)して実施することができる。また、以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付して表している。図面は模式的なものであり、必ずしも実際の寸法や比率等とは一致しない。図面相互間においても互いの寸法の関係や比率が異なる部分が含まれていることがある。
【0026】
まず、本発明に係るコントラスト補正回路の基本原理について説明する。
図1は、コントラスト補正回路の構成の一例を説明するためのブロックダイアグラムである。
【0027】
コントラスト補正回路1は、局所的処理部10と、大域的処理部20とを含み構成され、人間の視覚の性質の一つである色恒常性と同等の処理を行うものである。なお、光恒常性とは、物体の反射光成分から環境光を分離して、当該物体を認識する人間の視覚の性質である。
【0028】
局所的処理部10は、例えば、カウンタ11と、補正部12とを含み構成される。局所的処理部10は、外部から入力される入力信号INを補正して内部信号INTを生成し、大域的処理部20へ出力する。ここで、入力信号INは、画像を構成する各ピクセルのピクセル値を順次送信する信号である。
【0029】
カウンタ11は、外部からのデータイネーブル信号DE、及び垂直同期信号V−SYNCを受け取る。カウンタ11は、データイネーブル信号DEに基づき、現在の入力信号INがピクセル値を表すピクセルの位置を求めて、信号X及び信号Yとして、書き込みアドレスカウンタ121及び読み出しアドレスカウンタ122に出力する。なお、信号Xは当該ピクセルの画像上のX方向の位置を表し、信号Yは同ピクセルの画像上のY方向の位置を表す。
【0030】
また、カウンタ11は、垂直同期信号V−SYNC信号に基づき、1フレーム分の画像に係る入力信号INが終了したか否かを判断する。
【0031】
補正部12は、例えば、赤色ピクセル用の補正部12R、緑色ピクセル用の補正部12G、及び青色ピクセル用の補正部12Bを含み構成される。赤色ピクセル用の補正部12R、緑色ピクセル用の補正部12G、及び青色ピクセル用の補正部12Bは、夫々カウンタ11からの信号X及び信号Yを受け取る。加えて、補正部12Rは入力信号IN_Rを受け取り、補正部12Gは入力信号IN_Gを受け取り、補正部12Bは入力信号IN_Bを受け取る。また、補正部12Rは内部信号INT_Rを出力し、補正部12GはINT_Gを出力し、補正部12Bは内部信号INT_Bを出力する。
【0032】
補正部12R、12G及び12Bは、夫々、内部の基本構成を同一とされ、例えば、書き込みアドレスカウンタ121と、読み出しアドレスカウンタ122と、バッファ123と、レジスタ124と、算出部125とを含み構成される。
【0033】
書き込みアドレスカウンタ121は、信号X及び信号Yを受け取り、入力信号INが示すピクセル値を書き込むバッファ123のアドレスを特定して、該バッファ123へ出力する。
【0034】
読み出しアドレスカウンタ122は、信号X及び信号Yを受け取り、ピクセル値を読み出すバッファ123のアドレスを特定して、該バッファ123へ出力する。
【0035】
バッファ123は、例えば、RAMにより構成され、入力信号INが示すピクセル値を記憶する。バッファ123では、書き込みアドレスカウンタ121からの入力に基づき、入力信号INにピクセル値を示されるピクセルの位置に応じて、そのピクセル値を書き込むアドレスを指定される。これにより、バッファ123では、ピクセルの位置に応じたアドレスに、該ピクセルのピクセル値を画像のフレームごとに上書きしつつ記憶する。なお、バッファ123は、全てのピクセルのピクセル値を記憶する必要はなく、算出部125にて参照ピクセルRPとされるピクセルのピクセル値のみを記憶するように構成して良い。
【0036】
また、バッファ123は、読み出しアドレスカウンタ122からの入力に基づき指定されるアドレスよりピクセル値を読み出し、レジスタ124に出力する。ここで、バッファ123が読み出すピクセル値は、所定クロック内に算出部125の第1計算部1251で参照ピクセルRPとされるピクセルのピクセル値である。
【0037】
レジスタ124は、バッファ123より受け取ったピクセル値を所定個数記憶する。また、レジスタ124は、複数の参照ピクセルRPのピクセル値を、第1計算部1251に対しパラレルに出力する。このようにすることで、レジスタ124は、1つのクロックで算出部125への出力を完了する。
【0038】
算出部125は、例えば、第1計算部1251と、加算部1252と、制限部1253と、第2計算部1254と、除算部1255とを含み構成される。算出部125は、補正対象ピクセルPのピクセル値を、参照ピクセルRPのピクセル値に基づき補正した補正値を求め、内部信号INTとして出力する。
【0039】
第1計算部1251は、入力信号INを受け取ることで補正対象ピクセルPのピクセル値を受け取ると共に、レジスタ124から複数の参照ピクセルRPのピクセル値も受け取る。
【0040】
ここで、補正対象ピクセルPと参照ピクセルRPとの関係の一例は、
図2に示すようになる。同図は、複数のピクセルにより構成される画像の一例を表しており、参照ピクセルRPは、補正対象ピクセルPを含む範囲Rの内部に位置するピクセルより選択される。なお、範囲Rの形状は、任意に設定してよいが、例えば図示するように縦9ピクセル、横9ピクセルの正方形状に定めてよい。また、参照ピクセルRPは、範囲Rの内部で任意に選択してよいが、例えば、図示するように、4ピクセルごとに設定してよい。
【0041】
図1に戻り、第1計算部1251では、以下に示す計算が行われる。
【0043】
上式において、I(x,y)は、補正対象ピクセルPのピクセル値を表す。また、I(i,j)は、一の参照ピクセルRPのピクセル値を表す。さらに、limitは、I(x,y)とI(i,j)との差分の絶対値が、所定の上限値を超える場合に、該上限値以下に制限する関数である。なお、係数α1は、例えば1とされる。
【0044】
第1計算部1251では、レジスタ124から入力された全ての参照ピクセルRPのピクセル値に対し、上式による計算を個別に行う。なお、第1計算部1251は、個別の計算を終了した後、その結果をパラレルに加算部1252へ出力する。これにより、第1計算部1251は、1つのクロックで加算部1252への出力を完了する。
【0045】
加算部1252は、第1計算部1251より受け取った計算結果の総和を計算し、該計算結果を制限部1253へ出力する。ここで、加算部1252は、例えば、
図3に示すようなTriangle Adderを用いて、高速に計算を行うことが好ましい。
【0046】
なお、
図3においては、加算部1252が第1計算部1251より受け取った計算結果が、A[0][0]〜A[0][8]の9個である場合を示している。この場合において、加算部1252は、まず、第1ステップとして、隣接する2つの計算結果について加算する。例えば、加算部1252は、A[0][0]とA[0][1]とを加算して、その結果をA[1][0]とする。なお、加算部1252は、加算する相手がいないことから、A[0][8]はそのままA[1][4]とする。
【0047】
次に、加算部1252は、第2ステップとして、第1ステップでの加算結果をさらに加算する。例えば、A[1][0]とA[1][2]とを加算して、その結果をA[2][0]とする。加算部1252では、同様の加算処理を、第3ステップ、第4ステップと行い、A[0][0]〜A[0][9]の総和を求め、A[4][0]とする。
【0048】
図1に戻り、制限部1253では、加算部1252から受け取った値が、所定の上限値を上回る場合に、該上限値以下に制限して、除算部1255へ出力する。
【0049】
第2計算部1254は、範囲Rの面積を計算し、計算結果を除算部1255へ出力する。例えば、範囲Rが正方形状であり、縦横共にピクセル数がwあるとき、第2計算部1254は、下式に示す計算を行う。
【0051】
除算部1255は、制限部1253より受け取った値を、第2計算部1254より受け取った値で除する。この計算結果は、局所的処理部10を用いて補正対象ピクセルPのピクセル値を補正した補正値であり、該補正値を計算式で表すと下式となる。除算部1255は、該補正値を、内部信号INTとして大域的処理部20へ出力する。
【0053】
ここで、局所的処理部10での処理をまとめると、補正対象ピクセルPのピクセル値の補正値は、上式にも示されるように、補正対象ピクセルPのピクセル値と、範囲R内の個々の参照ピクセルRPのピクセル値との差分を求め、該差分の総和を、範囲Rの面積で除することにより求められる。なお、範囲Rの面積で除する理由は補正対象ピクセルPに対する参照ピクセルRPの距離に基づく重み付けを考慮するためである。
【0054】
大域的処理部20は、画像の全体的な階調補正を行うものであり、除算部1255より受け取った内部信号INT(より詳細には、内部信号INT_R、INT_G、INT_B)を補正して、出力信号OUT(より詳細には、出力信号OUT_R、OUT_G、及びOUT_Bである。)として外部へ出力する。
【0055】
大域的処理部20は、局所的処理部10で求めた補正値を、画像の1フレーム分保持している。なお、保持している補正値は、現在のフレームより1つ前のフレームのものであってよい。また、保持している補正値は、現在のフレームより1つ前のフレームの値を内部信号INTにより順次書き換えた値であってもよい。
【0056】
そして、大域的処理部20では、上述の1フレーム分の補正値と、局所的処理部10で求めた補正対象ピクセルPのピクセル値の補正値とにより、下式を用いて更なる補正値を求め、出力信号OUTとして外部に出力する。
【0058】
ここで、Iは、局所的処理部10で求めた補正対象ピクセルPのピクセル値の補正値である。また、Mは、上述の1フレーム分の補正値の中での最大値であり、mは、上述の1フレーム分の補正値の中での最小値である。さらに、Dはピクセル値のダイナミックレンジである。
【0059】
図4は、上述のコントラスト補正回路の局所的処理部における補正対象ピクセルと、候補ピクセルとの関係の一例を示す図である。同図は、複数のピクセルに構成される画像の一例を示しており、補正対象ピクセルPとして、補正対象ピクセルP00〜P17を示している。この場合において、コントラスト補正回路1を用いた補正対象ピクセルPのピクセル値の補正は、補正対象ピクセルP00から開始し、順次、補正対象ピクセルP17まで行われる。
【0060】
一方、候補ピクセルQとは、バッファ123にピクセル値を保存されるピクセルであり、局所的処理部10における補正対象ピクセルPのピクセル値を補正する際に、参照ピクセルRPとなり得るピクセルである。同図では、4ピクセルごとに候補ピクセルQとされている。その結果、候補ピクセルQは、候補ピクセルQ00〜Q23まで設けられている。
【0061】
図5は、上述のコントラスト補正回路の局所的処理部におけるタイミングチャートである。より具体的には、同図は、
図4に示す補正対象ピクセルPを順次補正する際の、レジスタ124に参照ピクセルRPとして記憶される候補ピクセルQの変化を示している。
【0062】
同図に示すように、補正対象ピクセルP、及びレジスタ124に記憶される参照ピクセルRPは、クロック信号CLKに同期して変化する。
【0063】
例えば、局所的処理部10において、補正対象ピクセルP00のピクセル値を補正する場合、バッファ123のレジスタS1からS9には、順に、
図4に示す補正対象ピクセルP00を含む範囲Rの内部に位置する候補ピクセルQ07、Q08、Q09、Q13、Q14、Q15、Q19、Q20、及びQ21のピクセル値が、参照ピクセルRPのピクセル値として記憶される。
【0064】
また、レジスタ124の予備レジスタPr1からPr3には、順に、候補ピクセルQ10、Q16、及びQ22のピクセル値が保存されている。これらの候補ピクセルQは、補正対象ピクセルP00のピクセル値の補正の際に参照ピクセルRPとされるものでないが、所定クロック後に補正が行われる補正対象ピクセルP04等において参照ピクセルRPとされる。
【0065】
別の例として、局所的処理部10において、補正対象ピクセルP04のピクセル値を補正する場合、バッファ123のレジスタS1からS9には、順に、
図4に示す補正対象ピクセルP04を含む範囲Rの内部に位置する候補ピクセルQ08、Q09、Q10、Q14、Q15、Q16、Q20、Q21、及びQ22のピクセル値が、参照ピクセルPRのピクセル値として記憶される。レジスタS1には、補正対象ピクセルP03のピクセル値を補正した際にレジスタS2に記憶されていたピクセル値がシフトされる。同様に、レジスタS2には、レジスタS3に記憶されていたピクセル値がシフトされ、レジスタS3には、予備レジスタPr1に記憶されていたピクセル値がシフトされる。以降のレジスタSも同様である。このように、レジスタ124では、レジスタS及び予備レジスタPr間でピクセル値をシフトするため、バッファ123からの読み込みを待つ必要なく、1つのクロックで、レジスタSの書き換えを実行できる。
【0066】
別の例として、局所的処理部10において、補正対象ピクセルP13のピクセル値の補正が行われる場合、バッファ123のレジスタS1からS9には、順に、Q10、Q11、Q11、Q16、Q17、Q17、Q22、Q23、及びQ23のピクセル値が、参照ピクセルRPのピクセル値として記憶される。すなわち、バッファ123のレジスタSに参照ピクセルRPとしてピクセル値を記憶される候補ピクセルQにダブりを生じる。これは、
図4に示すように、補正対象ピクセルP13が画像の端に位置するためである。
【0067】
また、局所的処理部10においては、補正対象ピクセルP13のピクセル値の補正を行った後、補正対象ピクセルP14のピクセル値の補正を行う。この補正対象ピクセルP14は、
図4に示すように、補正対象ピクセルP13と反対側の端に位置するピクセルであり、レジスタSに参照ピクセルRPとしてピクセル値を記憶する候補ピクセルQを大幅に変更する必要がある。この変更は、データイネーブル信号DEがLowとなるブランキング期間を利用して行われる。なお、同様の処理は、補正対象ピクセルPが下端から上端に切り替わる際にも行われる。
【0068】
ここで、上述のコントラスト補正回路1は、局所的処理部10の候補ピクセル数を適宜変更すること、及び大域的処理部20を用いることで、比較的小さな回路規模で画像のコントラスト補正を行うことができる。しかしながら、コントラスト補正回路1を用いて、一様な部分が多い画像を処理した場合には、満足な補正結果を得られないという課題に直面する。これは、画像の一様な部分を処理した場合において、局所的処理部10における補正対象ピクセルPのピクセル値の補正値が0又はそれに近いとなり、該補正値を大域的処理部20にて処理した際に全体の平均的な階調が失われるためである。
【0069】
そこで、以下の実施形態では、一様な部分が多い画像も適切に補正することができるコントラスト補正回路が提案される。
【0070】
図6は、本実施形態に係るコントラスト補正回路を説明するためのブロックダイアグラムである。なお、同図中、上述した構成と同じ構成要素には、同じ符号を付している。同図に示すコントラスト補正回路601は、局所的処理部610と、大域的処理部20とを含み構成され、人間の視覚の性質の一つである色恒常性と同等の処理を行うものである。
【0071】
局所的処理部610は、例えば、カウンタ11と、補正部612とを含み構成される。局所的処理部610は、外部からの入力信号INを受け取り、それを補正して内部信号INTを生成し、該内部信号INTを大域的処理部20に出力する。
【0072】
補正部612は、例えば、赤色ピクセル用の補正部612R、緑色ピクセル用の補正部612G、及び青色ピクセル用の補正部612Bを含み構成される。赤色ピクセル用の補正部612R、緑色ピクセル用の補正部612G、及び青色ピクセル用の補正部612Bは、夫々カウンタ11からの信号X及び信号Yを受け取る。加えて、補正部612Rは入力信号IN_Rを受け取り、補正部612Gは入力信号IN_Gを受け取り、補正部612Bは入力信号IN_Bを受け取る。また、補正部612Rは内部信号INT_Rを出力し、補正部612Gは内部信号INT_Gを出力し、補正部612Bは内部信号INT_Bを出力する。
【0073】
補正部612R、612G及び612Bは、夫々、内部構成を同一とされ、例えば、第1補正部650と、第2補正部660と、合計部670を含み構成される。
【0074】
第1補正部650は、例えば、レジスタ124と、算出部125とを含み構成され、補正部12同様に、上述の数式3に示す計算を行い、計算結果を第1補正値C1として合計部670へ出力する。すなわち、第1補正部650では、例えば、
図7に示す補正対象ピクセルPのピクセル値と、個々の第1参照ピクセルRP1のピクセル値との差分を求め、該差分の総和を、第1の範囲R1の面積で除することにより、当該補正対象ピクセルPのピクセル値の第1補正値C1を求め、該第1補正値C1を合計部670へ出力する。
【0075】
なお、第1補正部650は、レジスタ124へのピクセル値の書き込みを、第2補正部660のレジスタ661を介して行う。このことに起因して、第1補正部650は、補正部12に含まれていた書き込みアドレスカウンタ121と、読み出しアドレスカウンタ122と、バッファ123とを必ずしも含まなくてよい。
【0076】
図7は、第1の範囲と第2の範囲との関係の一例を説明する図である。
図7は、複数のピクセルを含む画像を表しており、第1の範囲R1と、第2の範囲R2とが設定されている。第1の範囲R1は、補正対象ピクセルPと、所定間隔ごとに設けられる複数の第1参照ピクセルRP1とを含む。また、第1の範囲R1の形状は、任意に定めてよいが、例えば、同図に示すように縦横共にwピクセルの正方形状に定めてよい。
【0077】
一方、第2の範囲R2は、第1の範囲R1を含み、該第1の範囲R1より広く設定され、第1の範囲R1の範囲外に、所定間隔ごとに設けられる複数の第2参照ピクセルRP2を含む。また、第2の範囲R2の形状は、前述の条件を満たすことを条件に任意に設定してよいが、例えば、同図に示すように縦横共にw’ピクセルの正方形状に定めてよい。
【0078】
図6に戻り、第2補正部660は、例えば、書き込みアドレスカウンタ121と、読み出しアドレスカウンタ122と、バッファ123と、レジスタ661と、算出部662とを含み構成される。第2補正部660は、補正対象ピクセルPのピクセル値と、個々の第2参照ピクセルRP2のピクセル値との差分を求め、該差分の総和を、第1の範囲R1の面積から第2の範囲R2の面積を差し引いた値で除することにより、当該補正対象ピクセルPの第2補正値C2を求める。詳細は後述する。
【0079】
レジスタ661は、バッファ123又はレジスタ124より受け取ったピクセル値を所定個数記憶する。また、レジスタ661は、複数の第2参照ピクセルRP2のピクセル値を、算出部662の第1計算部6621に対しパラレルに出力する。さらに、レジスタ661は、レジスタ124に対しピクセル値をパラレルに出力する。なお、レジスタ661は、第1計算部6621及びレジスタ124への出力をパラレルに行うことに基づき、それら出力を1つのクロックで完了する。
【0080】
算出部662は、例えば、第1計算部6621と、加算部6622と、制限部6623と、第2計算部6624と、除算部6625とを含み構成される。算出部662は、補正対象ピクセルPのピクセル値を、第2参照ピクセルRP2のピクセル値に基づき補正した補正値を求め、第2補正値C2として出力する。
【0081】
第1計算部6621は、入力信号INを受け取ることで補正対象ピクセルPのピクセル値を受け取ると共に、レジスタ661から複数の第2参照ピクセルRP2のピクセル値を受け取り、個々の第2参照ピクセルRP2ごとに以下に示す計算を行う。
【0083】
上式において、I(x,y)は補正対象ピクセルPのピクセル値を、I(i,j)は一の第2参照ピクセルRP2のピクセル値を、夫々表す。また、limitは、I(x,y)とI(i,j)との差分の絶対値が、所定値を超える場合に、該所定値以下に制限する関数である。なお、係数α2は、係数α1と異なる値であり、例えば、以下のように設定される。
【0085】
上記の式において、wは、
図7に示すように、第1の範囲R1を正方形状としたときの該第1の範囲R1の縦横のピクセル数である。また、w’は、同図に示すように、第2の範囲R2を正方形状としたときの該第2の範囲R2の縦横のピクセル数である。また、係数α2は負の値になるため、数式5は実質的に差分の計算を行う式となる。
【0086】
なお、第1計算部6621は、上述の計算を全ての第2参照ピクセルRP2に対し行った後、そのすべての計算結果をパラレルに加算部6622に出力する。これにより、第1計算部6621は、1つのクロックで加算部6622への出力を完了する。
【0087】
加算部6622は、第1計算部6621より受け取った計算結果の総和を算出する。加算部6622は、例えば、
図3に示したようなTriangle Adderを使用して行われる。
【0088】
制限部6623では、加算部6622から受け取った値が所定値を超える場合に、該所定値以下に制限した上で、除算部6625に出力する。
【0089】
第2計算部6624は、第1の範囲R1の面積から第2の範囲R2の面積を差し引いた値を求め、除算部6625に出力する。例えば、第1の範囲R1及び第2の範囲R2が、
図7に示すように設定されているとき、第2計算部6624は、以下の計算を行う。なお、下式で求まる値は、第1の範囲R1の面積が第2の範囲R2の面積より狭いことに基づき負の値となる。
【0091】
除算部6625は、制限部6623より受け取った値を、第2計算部6624より受け取った値で除すことで、補正対象ピクセルPのピクセル値を補正して第2補正値C2を求め、該第2補正値C2を合計部670へ出力する。
【0092】
なお、以上に基づき、算出部662では、下式で表される計算が行われることとなる。ただし、下式におけるSは、第2の範囲R2内で、かつ、第1の範囲R1に含まれない範囲を指す。
【0094】
合計部670では、第1補正部650で計算された補正対象ピクセルPの第1補正値C1と、第2補正部660で計算された補正対象ピクセルPの第2補正値C2とを足し合わせて、その値を内部信号INTとして大域的処理部20へ出力する。
【0095】
以上に基づき、局所的処理部610では、下式で表される計算が行われることとなる。
【0097】
すなわち、局所的処理部610では、補正対象ピクセルPのピクセル値の補正値を、上式の第1項に現れる局所的処理部10での補正値と同じ値である第1補正値C1に、第2項にあらわれる第2補正値C2を足し合わせて求める。
【0098】
画像の一様な部分を処理した場合に、局所的処理部610では、上記の式に基づき、第1補正値C1が0又はそれに近い値となるが、第2補正値C2が補正前の補正対象ピクセルPのピクセル値に近い値となる。したがって、局所的処理部610は、補正対象ピクセルPのピクセル値を補正の前後でほぼ維持する。
【0099】
このことから、コントラスト補正回路601では、画像の一様な部分を処理した場合において、大域的処理部20での補正を行った際に全体の平均的な階調が失われることを防止できる。
【0100】
図8A〜
図8Cは、本発明の一実施形態に係るコントラスト補正方法を説明するフローチャートである。かかるコントラスト補正方法は、コントラスト補正回路601において実行される処理である。なお、同図においては、画像の所定のフレームにおいてコントラスト補正処理を行う場合について説明する。
【0101】
図8Aに示すように、コントラスト補正回路601は、例えば、入力信号INと、データイネーブル信号DEと、垂直同期信号V−SYNCとを受け取る(S801)。入力信号INは、赤色ピクセルの入力信号IN_R、緑色ピクセルの入力信号IN_G、及び青色ピクセルの入力信号IN_Bを含む。補正部612Rは、入力信号IN_Rを受け取り、補正部612Gは、入力信号IN_Gを受け取り、また、補正部612Bは、入力信号IN_Bを受け取る。また、以下に説明する補正部612で行われる処理は、補正部612R、補正部612G、及び補正部612Bの夫々において並行して実施される。
【0102】
その後、コントラスト補正回路601では、3つの処理を並列又は並行して行う。一つ目として、バッファ123が、入力信号INに示されるピクセル値を記憶する(S802)。この場合、バッファ123は、書き込みアドレスカウンタ121に指定されるアドレスに、入力信号INに示されるピクセル値を記憶する。書き込みアドレスカウンタ121からバッファ123への指示は、カウンタ11で作成された信号X及び信号Yに基づく。該信号X及び信号Yは、外部からのデータイネーブル信号DE及び垂直同期信号V−SYNCに基づき、入力信号INにピクセル値を示されるピクセルの画像上の位置を示す。したがって、バッファ123は、ピクセルの位置に対応したアドレスに、当該ピクセルのピクセル値を記憶する。
【0103】
2つ目として、第1補正部650が、第1補正値C1を求める(S803)。これは、
図8Bに示すように、まず、レジスタ124が、レジスタ661を経由してバッファ123よりピクセル値を受け取り、該ピクセル値を所定個数記憶する(S8031)。レジスタ124が受け取るピクセル値は、読み出しアドレスカウンタ122より指定されるバッファ123のアドレスより読み出されたものであり、所定クロック内に算出部125で補正対象ピクセルPとなるピクセルのピクセル値を補正するために必要な第1参照ピクセルRP1のピクセル値である。
【0104】
続いて、第1計算部1251は、入力信号INを受け取ることで補正対象ピクセルPのピクセル値を受け取ると共に、レジスタ124から複数の第1参照ピクセルRP1と候補ピクセルQのピクセル値を受け取る(S8032)。なお、補正対象ピクセルPと、第1参照ピクセルRP1との関係は、例えば、
図7に示すとおりである。また、第1計算部1251は、複数の第1参照ピクセルRP1のピクセル値をレジスタ124よりパラレルに受け取るので、1つのクロックで該受け取りを完了する。
【0105】
続いて、第1計算部1251は、上述の数式1に示す式の計算を、一の第1参照ピクセルRP1を対象として、そのピクセル値を用いて行う(S8033)。その後、第1計算部1251は、全ての第1参照ピクセルRP1について、S8033の計算を完了したか否かを判断する。計算を完了していない場合(S8034でNo)、第1計算部1251は、S8033に戻り計算を続ける。一方、計算を完了している場合(S8034でYes)、第1計算部1251は、加算部1252に対し、全ての計算結果を出力する(S8035)。なお、第1計算部1251は、全ての計算結果をパラレルに出力するので、1つのクロックで出力を完了する。
【0106】
続いて、次に示す2つの処理が並行して行われる。一つ目として、加算部1252は、第1計算部1251より受け取った計算結果の総和を求め、制限部1253で所定の値以下に制限した上で除算部1255へ出力する(S8036)。次に二つ目として、第2計算部1254は、第1の範囲R1の面積の計算を行い、該計算の結果を除算部1255へ出力する(S8037)。例えば、
図7に示すように、第1の範囲R1が設定されるとき、第2計算部1254は、数式2に示す式を用いて、第1の範囲R1の面積を求める。
【0107】
続いて、除算部1255は、制限部1253で所定の値以下に制限された加算部1252からの出力の値を、第2計算部1254から出力された値で除して、第1補正値C1を求め、合計部670に出力する(S8038)。なお、除算部1255で算出された第1補正値C1は、上述の数式3で表される式に基づくものとなる。以上で、第1補正値C1の算出(S803)が終了する。
【0108】
図8Aに戻り、S801後に並行して行う3つ目の処理として、第2補正部660が、第2補正値C2を求める(S804)。これは、
図8Cに示すように、まず、レジスタ661が、ピクセル値を受け取り、該ピクセル値を所定個数記憶する(S8041)。ここで、レジスタ661は、読み出しアドレスカウンタ122により指定されるバッファ123のアドレスより読み出されたピクセル値を受け取ってよく、又は、レジスタ124よりピクセル値を受け取ってよい。また、レジスタ661で記憶するピクセル値は、所定クロック内に第1計算部6621で補正対象ピクセルPとなるピクセルのピクセル値を補正するために必要な第2参照ピクセルRP2のピクセル値である。
【0109】
続いて、第1計算部6621は、入力信号INを受け取ることで補正対象ピクセルPのピクセル値を受け取ると共に、レジスタ661から複数の第2参照ピクセルRP2のピクセル値を受け取る(S8042)。なお、補正対象ピクセルPと、第2参照ピクセルRP2との関係は、例えば、
図7に示すとおりである。また、第1計算部6621は、複数の第2参照ピクセルRP2のピクセル値をレジスタ661よりパラレルに受け取るので、1つのクロックで該受け取りを完了する。
【0110】
続いて、第1計算部6621は、上述の数式5に示す式の計算を、一の第2参照ピクセルRP2を対象として、そのピクセル値を用いて行う(S8043)。その後、第1計算部6621は、全ての第2参照ピクセルRP2について、S8043の計算を完了したか否かを判断する。計算を完了していない場合(S8044でNo)、第1計算部6621は、S8043に戻り計算を続ける。一方、計算を完了している場合(S8044でYes)、第1計算部6621は、加算部6622に対し、全ての計算結果を出力する(S8045)。なお、第1計算部6621は、全ての計算結果をパラレルに出力するので、1つのクロックで出力を完了する。
【0111】
続いて、次に示す2つの処理が並行して行われる。一つ目として、加算部6622は、第1計算部6621より受け取った計算結果の総和を求め、制限部6623で所定の値以下に制限した上で除算部6625へ出力する(S8046)。次に二つ目として、第2計算部6624は、第1の範囲R1の面積から第2の範囲R2の面積を差し引いた値を求め、その値を除算部6625へ出力する(S8047)。例えば、
図7に示すように、第1の範囲R1及び第2の範囲R2が設定されるとき、加算部6622は、数式7に示す式を用いて計算を行う。
【0112】
続いて、除算部6625は、制限部6623で所定の値以下に制限された加算部6622からの出力の値を、第2計算部6624から出力された値で除して、第2補正値C2を求め、合計部670に出力する(S8048)。なお、除算部6625で算出された第2補正値C2は、上述の数式8で表される式に基づくものとなる。以上で、第2補正値C2の算出(S804)が終了する。
【0113】
図8Aに戻り、合計部670は、除算部1255より受け取った第1補正値C1と、除算部6625より受け取った第2補正値C2と加算した結果を、内部信号INTとして大域的処理部20に出力する(S805)。なお、合計部670で算出された値は、上述の数式9で表されるものとなる。以上で、局所的処理部610における処理が終了する。
【0114】
続いて、大域的処理部20は、受け取った内部信号INTが示す局所的処理部10で求めた補正値を、上述の数式4に示す式を用いて更に補正して、該補正の結果を出力信号OUTとして出力する(S806)。なお、大域的処理部20は、補正部612Rより受け取った内部信号INT_Rを更に補正して、出力信号OUT_Rを出力し、補正部612Gより受け取った内部信号INT_Gを更に補正して、出力信号OUT_Rを出力し、補正部612Bより受け取った内部信号INT_Bをさらに補正して、出力信号OUT_Bを出力する。
【0115】
続いて、カウンタ11は、外部から受け取った垂直同期信号V−SYNCに基づき、所定のフレームの入力信号INが終了したか否かを判断する(S807)。カウンタ11が終了したと判断した場合において(S807のYes)、コントラスト補正回路601は処理を終了する。一方、カウンタ11が終了していないと判断した場合において(S807でNo)、コントラスト補正回路601は、S801に戻り処理を続ける。
【0116】
上記各実施形態は、本発明を説明するための例示であり、本発明をこれらの実施形態にのみ限定する趣旨ではない。本発明は、その要旨を逸脱しない限り、さまざまな形態で実施することができる。
【0117】
例えば、本明細書に開示される方法においては、その結果に矛盾が生じない限り、ステップ、動作又は機能を並行して又は異なる順に実施しても良い。説明されたステップ、動作及び機能は、単なる例として提供されており、ステップ、動作及び機能のうちのいくつかは、発明の要旨を逸脱しない範囲で、省略でき、また、互いに結合させることで一つのものとしてもよく、また、他のステップ、動作又は機能を追加してもよい。
【0118】
また、本明細書では、さまざまな実施形態が開示されているが、一の実施形態における特定のフィーチャ(技術的事項)を、適宜改良しながら、他の実施形態に追加し、又は該他の実施形態における特定のフィーチャと置換することができ、そのような形態も本発明の要旨に含まれる。