(57)【要約】【課題】画像補正調整情報が記録されている補正調整テーブルを用いた画像補正調整装置に関し、補正調整テーブルを適切に圧縮し、補正調整テーブルの記録に必要な容量を小さくする。【解決手段】  直線部と曲線部により構成された補正調整テーブルにより入力画像を補正調整し出力する画像補正調整回路であって、補正調整テーブルの所定の範囲が直線範囲であることを判定する直線範囲判定部と、直線範囲について所定の間隔で間引きした補正調整テーブルを生成するテーブル生成部とを有している。【選択図】図１
2008097223.tif 000002
【特許請求の範囲】
【請求項１】
直線部と曲線部により構成された補正調整テーブルにより入力データを補正調整し出力する画像補正調整回路であって、
前記補正調整テーブルの所定の範囲が直線範囲であることを判定する直線範囲判定部と、
前記直線範囲について所定の間隔で間引きした補正調整テーブルを生成するテーブル生成部と、
を有することを特徴とする画像補正調整装置。
【請求項２】
請求項１に記載の画像補正調整装置であって、さらに
前記補正調整テーブルが格納されたアドレスを算出するアドレス算出部と、
前記アドレス算出部による算出結果に基づき前記補正調整テーブルを読み出すテーブル制御部と、
前記補正調整テーブルが有する間引きされた直線部に対して補間演算を行う補間演算部と、
を有することを特徴とする画像補正調整装置。
【請求項３】
前記テーブル制御部は、
前記補正調整テーブルについて、前記入力データに隣接する前後のデータに対応する出力データを結ぶ直線にある、該入力データに対応する値と、補正調整テーブルにおける出力データの値との差分の絶対値と、直線部を判定するための閾値とを設け、該差分の絶対値が該閾値よりも小さい場合に直線部と判定する判定部を有することを特徴とする、請求項１または２に記載の画像補正調整装置。
【請求項４】
請求項１から３のいずれかに記載の画像補正調整装置であって、さらに
前記補正調整テーブルの直線部と曲線部との開始位置を記憶する範囲開始レジスタと、
前記開始位置により分割された前記補正調整テーブルの1つの範囲が直線部であることを記憶する範囲情報レジスタと、
を有することを特徴とする画像補正調整装置。
【請求項５】
直線部と曲線部により構成された補正調整テーブルにより入力データを補正調整し出力する画像補正調整方法であって、
前記補正調整テーブルの所定の範囲が直線であることを判定し、
直線部について所定の間隔で間引きした補正調整テーブルを生成し、
入力データに対する補正調整テーブルデータが格納されたアドレスを算出し、
前記アドレスの算出結果に基づき補正調整テーブルデータを読み出し、
前記補正調整テーブルデータが間引き後の直線部である場合には、該直線部に対して補間演算を行う
ことを特徴とする、画像補正調整方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像データを補正、調整するための装置およびその方法に関する。
【背景技術】
【０００２】
近年、カラースキャナやデジタルカメラなどのデジタル画像入力機器が普及している。このようなデジタル画像入力機器により作成されたデジタル画像を画像処理装置によりディスプレイに表示する際、ディスプレイの色再現範囲が十分でないために、黒つぶれや白浮きなどの現象が発生することがある。また、フラットパネルはＲＧＢの特性が均一でない場合があり、ＲＧＢに同じ値を入力しても正しい白やグレーにならず、青っぽい色や赤っぽい色がつく場合がある。このような場合には、入力データであるデジタル画像の映像信号に対して画像の階調性に補正や調整を加えて出力する。図１１はＭＰＥＧ技術等により符号化された動画データを補正調整し、フラットパネル等の出力装置に表示する装置の全体構成図である。入力された圧縮ビデオストリームはビデオデコーダ１によりＹＵＶ（Ｙは輝度信号、ＵおよびＶは色差信号）信号にデコードされる。デコードされたデータは、スケーラ２により解像度等が変換される。スケーラから出力されたデータはカラースペースコンバータ３によりＲＧＢ信号として出力される。かかるＲＧＢ信号は色調整部１１０１により色調整され、出力装置５に出力される。補正や調整には、入力と出力との関係を参照するために作成した補正調整テーブルである、ルックアップテーブル（Ｌｏｏｋ  Ｕｐ  Ｔａｂｌｅ；以下、ＬＵＴと略称する）が用いられる。また、ビデオ解析部１１０２はＬＵＴを生成するために画像のＲＧＢ値の分布を解析する。この解析結果及びユーザーの設定値等よりＣＰＵ７でＬＵＴを生成する。ＬＵＴを画像処理用ＬＳＩ等の記憶部８に記録する場合、記憶部８は論理回路に比べてＬＳＩのチップ面積に影響を与える度合いが大きいため、ＬＵＴのデータ数の増加に伴い、ＬＳＩのチップ面積は大きくなる。そうすると画像処理装置のプリント基板に実装されるＬＳＩの実装面積が増大することとなり、コストアップの原因となるだけでなく、画像処理装置の小型化を妨げる要因ともなる。
【０００３】
図１２は従来の補正調整回路の概略図である。入力信号に対して制御回路１２０１は補正に必要なＬＵＴデータを記憶部１２から読み出し、補正後の信号を出力する。
【０００４】
特許文献１は、ある出力画像を得るために異なる複数のＬＵＴを用いる必要がある場合、それらのＬＵＴを１つに統合することで、メモリ容量や処理量の大幅な増大を招来することなくユーザが希望する画像処理を実現する画像処理方法を提供している。
【特許文献１】特開２００２−３３９２２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、近年の高画質化にともない、ＬＵＴの階層数は増加する傾向にある。例えば入力データがＲＧＢ３原色の画像データの場合、画像データのＲＧＢを各８ｂｉｔとすると、ＲＧＢ１原色当り２５６階調存在するので、ＲＧＢ別々のＬＵＴを格納すると、２５６ワード×８ｂｉｔ×３原色で６，１４４ｂｉｔのメモリ容量が必要となる。さらに階層数が１２ｂｉｔになると、４，０９６ワード×１２ｂｉｔ×３原色で１４７，４５６ｂｉｔのメモリ容量が必要となる。さらに、輝度情報などを考慮すると、必要なメモリ容量はさらに大きくなる。したがって、階層数が増えると、仮にＬＵＴを１つに統合してもメモリ容量の増大という問題を解決できない。
【０００６】
本発明は、上記の問題点を解決するためになされたものであり、メモリ容量を大幅に削減することの出来る画像補正調整装置および画像補正調整方法の提供を目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明に係る画像補正調整回路は、直線部と曲線部により構成された補正調整テーブルにより入力画像を補正調整し出力する画像補正調整回路であって、補正調整テーブルの所定の範囲が直線範囲であることを判定する直線範囲判定部と、直線範囲について所定の間隔で間引きした補正調整テーブルを生成するテーブル生成部と、を有することを特徴とする。
【発明の効果】
【０００８】
上記構成によれば、データの復元が容易な直線部分の補正調整テーブルデータのみを間引くことが出来、補正調整テーブルによる変換精度を損なうことなく、補正調整テーブルの記憶に必要なメモリ容量を削減することが出来る。また、メモリ容量の削減により、メモリ実装に必要なＬＳＩのチップ面積を小さくし、コストダウンを図ることが出来る。
【発明を実施するための最良の形態】
【０００９】
本発明の実施の一形態を図に基づいて説明する。図１は本実施例における画像処理装置全体の構成図である。ビデオデコーダ１は、入力された圧縮ビデオストリームをデコードする。圧縮形式としては例えばＭＰＥＧが挙げられるが、これに限定するものではない。スケーラ２は、デコードデータの映像サイズをフラットパネル等の出力装置５に応じて変換する。カラースペースコンバータ３は、ＹＵＶ信号をＲＧＢ信号に変換して出力する。
【００１０】
出力されたＲＧＢ信号はＬＵＴ生成部６および色調整演算部４に入力される。ＬＵＴ生成部６は、入力された１フレームの映像のＲＧＢ値の分布を解析し後述の圧縮方法に基づいて圧縮したＬＵＴを生成する。生成したＬＵＴは、記憶部８に記憶する。また色調整演算部４は、記憶部８に記憶したＬＵＴを参照し、ＲＧＢ信号の色調整を行い、出力装置５に映像データを出力する。
【００１１】
図２は、図１における色調整演算部４の詳細構成図である。色調整演算部４は、範囲開始レジスタ１００、範囲情報レジスタ１０１、制御回路１０２、補間演算回路１０４を備えている。本実施例において、記憶部１２は図１における記憶部と同一であるが、ＬＵＴ記録用に別の記憶部を設けても良い。
【００１２】
範囲開始レジスタ１００は、ＬＵＴのグラフを直線範囲および曲線範囲に分割するための分割点を記憶している。範囲情報レジスタ１０１は、範囲開始レジスタ１００により分割された各区間が直線であるか曲線であるかの情報を記憶している。記憶部１０３は、画像入力データを補正調整するための圧縮されたＬＵＴデータを記憶している。
【００１３】
ＲＧＢデータが入力されると、制御回路１０２は範囲開始レジスタ１００、範囲情報レジスタ１０１、および記憶部１２を読み出す。制御回路１０２は読み出したこれらのデータを元に圧縮されたＬＵＴデータから必要な出力データを算出し、さらに後述の通り必要に応じて補間演算回路１０４により補間演算を行うことで、補正調整後の画像を出力する。
【００１４】
図３は本実施例におけるＬＵＴデータの入力と出力の関係をグラフ化したものである。本実施例では入力データを０〜２５５の２５６階調とし、Ａ＝８０、Ｂ＝１００、Ｃ＝１６０、Ｄ＝２００で直線範囲と曲線範囲に分割しているものとする。また、本実施例では直線範囲を２階調ごとに間引いて記憶している。具体的には、直線範囲において入力データが偶数（０、２、４、・・・）の場合のＬＵＴのみを記憶部１２に格納する。図４は範囲開始レジスタ１００に記憶したデータを表現したものであり、ＬＵＴの直線範囲と曲線範囲との分割点であるＡ，Ｂ，Ｃ，Ｄを記憶している。図５は範囲情報レジスタ１０１に記憶したデータを表現したものであり、ＬＵＴの各範囲が直線範囲であるか曲線範囲であるかを記憶する。本実施例では直線を０、曲線を１として記憶しているが、これに限定するものではない。
【００１５】
図６は２階調ごとの間のデータを間引くことが出来るか否かの判定方法を表現したものである。例えば入力データｎに対するテーブルデータＴnを間引くことが出来るか判定するためには、入力ｎ−１に対するテーブルデータＴn-1と、入力ｎ＋１に対するテーブルデータＴn+1とで補間演算を行い、Ｔn’を求める。式１は補間演算のための式である。
【数１】
2008097223.tif 000003
【００１６】
Ｔn’−Ｔnの絶対値|Ｔn’−Ｔn|が、あらかじめ決めておいた閾値ＴＨよりも大きくなる場合には曲線範囲と判定し、ＴＨよりも小さくなる場合には直線範囲と判定する。
【００１７】
図７はＬＵＴデータの直線範囲／曲線範囲判定フローである。Ｓ１００でn＝０から開始し、Ｓ１０１でｎが奇数か否かを判定する。奇数の場合はＳ１０２において式１に基づいてＴn’を計算する。Ｓ１０３では計算したＴn’と閾値ＴＨとを比較し、曲線範囲と判定した場合には判定値Ａn=０とし、曲線範囲と判定した場合にはＡn=１とする。Ｓ１０４ではｎが１か否かを判定し、１で無い場合はＳ１０５を実行する。Ｓ１０５では今回求めたＡnと、すでに求めたＡn-2とを比較し、Ａn≠Ａn-2の場合には範囲開始レジスタにｎ−１を格納し（Ｓ１０６）、範囲情報レジスタにＡnを格納する（Ｓ１０７）。Ｓ１０８でｎをカウントアップし、ｎが２５４であれば、本実施例の入力データが２５６階調なので判定処理を終了する（Ｓ１０９）。
【００１８】
本実施例において、図４の範囲開始レジスタには、前述の通りＡ＝８０、Ｂ＝１００、Ｃ＝１６０、Ｄ＝２００が格納され、図５の範囲情報レジスタには０−Ａ間に０、Ａ−Ｂ間に１、Ｂ−Ｃ間に０、Ｃ−Ｄ間に１、Ｄ−２５５間に０が格納される。
【００１９】
図８は本実施例における記憶部１２のデータ格納イメージである。図８において、Ｔnは、入力データがｎの場合におけるＬＵＴデータを意味している。ＬＵＴデータを格納する記憶容量値は、従来の技術では1原色当り２５６ワードが必要なところ、本実施例では直線範囲を2階調ごとに間引いているため、必要な容量値を８０／２＋２０＋６０／２＋４０＋５６／２＝１５８ワードに削減することが出来る。また、入力データ＝２５５のＬＵＴデータの直線判定は、入力データ＝２５６が存在しないため判定できないので、そのまま格納する。よって、本実施例におけるＬＵＴ格納に必要な記憶部１２の容量値は１５８＋１＝１５９ワードとなり、約４０％の容量削減となる。削減率は、直線範囲が多くなるほど大きくなる。
【００２０】
図９は入力データをＬＵＴで補正調整し、出力するためのフローである。後述する図１０に記載のアドレス算出フローにより、入力データに対応するアドレス値を算出する（Ｓ２００）。入力データが偶数の場合、または入力データが曲線の範囲にある場合、図８の通りＬＵＴのデータが記憶部に存在する。従って、算出したアドレス値をもとにテーブルデータを読み出し（Ｓ２０２）、読み出したデータをそのまま出力すればよい（Ｓ２０３）。
【００２１】
一方、入力データが奇数であり、かつ直線範囲にある場合、当該データは記憶部の記憶容量削減のために間引いているため、図８のテーブルデータに存在しない。そこで、ステップＳ２００で算出したアドレスＡおよびその隣のアドレスＡ＋１に格納されたテーブルデータを読み出す（Ｓ２０４）。読み出したテーブルデータを元に直線補間を行い（Ｓ２０５）、補間演算結果を出力することにより（Ｓ２０６）、入力データが奇数であり、かつ直線範囲にある場合のテーブルデータを出力することが出来る。
【００２２】
図１０Ａおよび図１０Ｂは、図９のフローにおけるアドレス算出ステップ（Ｓ２０２、Ｓ２０３およびＳ２０７）の詳細なフローである。図１０Ａはアドレス算出のための前準備となるフローであり、図１０Ｂは、図１０Ａにより算出されたパラメータおよび図４の範囲開始レジスタの値からアドレスを算出するフローである。なお、図１０に用いられているｎと、図７におけるｎとは無関係である。
【００２３】
図１０Ａでは、範囲情報レジスタの値Ｉnを元に、新たな変数Ｉn'の値を定義する。各範囲情報レジスタ値Ｉnについて、Ｉn＝０の場合、Ｉn'＝２とし、Ｉn＝１の場合、Ｉn'＝１とする（Ｓ３００）。当該処理はｎ＝０から開始され、ｎ＝ｍ−１となるまで繰り返される（Ｓ３０１）。ここで、ｍは範囲情報レジスタ数である。
【００２４】
図１０Ｂでは、図１０Ａで求めたＩn'および範囲開始レジスタの値Ｓnを用い、入力されたデータＤｉｎに対して出力すべきデータが格納されているアドレスを算出する。データＤｉｎが入力されると（Ｓ４００）、ＤｉｎとＳ0との大小関係を比較する（Ｓ４０１）。ＤｉｎがＳ0以下の場合、アドレスＡをステップＳ４１０により算出し、アドレス算出処理を終了する。
【００２５】
ＤｉｎがＳ0よりも大きい場合（Ｓ４０１）、まずアドレスＡをＳ0／Ｉ0'とする（Ｓ４０２）。ｎをカウントアップし（Ｓ４０３）、ｎ＝ｍ−１かどうかを判定する（Ｓ４０１）。ｎ＝ｍ−１である場合、さらにＤｉｎ＝Ｄｍａｘであれば（Ｓ４０６）、アドレスＡをステップＳ４０９により算出し、アドレス算出処理を終了する。一方、Ｄｉｎ≠Ｄｍａｘであれば（Ｓ４０６）、アドレスＡをステップＳ４０８により算出し、アドレス算出処理を終了する。なお、ＤｍａｘはＬＵＴにおける入力データの最大値であり、本実施例ではＤｍａｘ＝２５５となる。
【００２６】
ステップＳ４０４においてｎ≠ｍ−１であり、かつＤｉｎがＳn以下の場合（Ｓ４０５）、ステップＳ４０８によりアドレスＡを算出し、アドレス算出処理を終了する。
【００２７】
一方、ＤｉｎがＳｎよりも大きい場合（Ｓ４０７）、アドレスＡをステップＳ４０７により算出し、ステップＳ４０３から上記の処理を再度行う。そして、ｎ＝ｍ−１となるか、あるいはＤｉｎがＳｎ以下になるまで処理を繰り返す（Ｓ４０４、Ｓ４０５）。
【００２８】
以上より、曲線部分のＬＵＴデータをそのまま保存し、直線部分のＬＵＴデータを間引くことで、ＬＵＴの保持に必要な記憶容量の圧縮を実現する。また、図１０のアドレス算出および直線補間演算を行うことにより、圧縮されたＬＵＴデータから、入力データに対応する所望の出力データを得ることが出来る。
【図面の簡単な説明】
【００２９】
【図１】本実施例における画像処理装置全体の構成図である。
【図２】本実施例における補正調整回路の構成図である。
【図３】本実施例におけるＬＵＴをグラフ表示したものである。
【図４】本実施例における範囲開始レジスタのメモリマップである。
【図５】本実施例における範囲情報レジスタのメモリマップである。
【図６】本実施例における直線部の判定をグラフ化したものである。
【図７】ＬＵＴデータの直線／曲線判定フローである。
【図８】本実施例におけるＬＵＴ格納ＲＡＭのメモリマップである。
【図９】本実施例におけるデータの補正調整フローである。
【図１０Ａ】本実施例におけるアドレス算出のための前準備フローである。
【図１０Ｂ】本実施例におけるアドレス算出フローである。
【図１１】従来技術における画像処理装置全体の構成図である。
【図１２】従来技術における補正調整回路の構成図である。
【符号の説明】
【００３０】
１  ビデオデコーダ
２  スケーラ
３  カラースペースコンバータ
４  色調整演算部
５  出力装置
６  ＬＵＴ生成部
７  ＣＰＵ
８  記憶部
１００  範囲開始レジスタ
１０１  範囲情報レジスタ
１０２  制御回路
１０４  補間演算回路
１１０１  色調整部
１１０２  ビデオ解析部
１２０１  制御回路
【図１】
2008097223.tif 000004
【図２】
2008097223.tif 000005
【図３】
2008097223.tif 000006
【図４】
2008097223.tif 000007
【図５】
2008097223.tif 000008
【図６】
2008097223.tif 000009
【図７】
2008097223.tif 000010
【図８】
2008097223.tif 000011
【図９】
2008097223.tif 000012
【図１０Ａ】
2008097223.tif 000013
【図１０Ｂ】
2008097223.tif 000014
【図１１】
2008097223.tif 000015
【図１２】
2008097223.tif 000016