(57)【要約】【課題】所定のタイミングで更新されるパラメータを用いて画像処理を行う場合における画像処理後の画質劣化を視認させにくくする。【解決手段】画像信号に対して画像処理を行う画像処理装置は、該画像処理を行うための複数のパラメータを取得し、該複数のパラメータをバッファに書き込むことでパラメータを更新する更新し、該複数のパラメータのうち、該バッファにおいて未更新のパラメータを、該バッファにおいて更新済のパラメータを用いて補間して生成し、該バッファにおいて更新済のパラメータおよび該生成されたパラメータを用いて該画像処理を行う。【選択図】  図１
2017097226.tif 000002
【特許請求の範囲】
【請求項１】
画像信号に対して画像処理を行う画像処理装置であって、
前記画像処理を行うための複数のパラメータを取得する取得手段と、
前記取得された複数のパラメータをバッファに書き込むことでパラメータを更新する更新手段と、
前記取得された複数のパラメータのうち、前記バッファにおいて未更新のパラメータを、前記バッファにおいて更新済のパラメータを用いて補間して生成する補間手段と、
前記バッファにおいて更新済のパラメータおよび前記生成されたパラメータを用いて前記画像処理を行う画像処理手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記更新手段は、前記取得された複数のパラメータを複数のグループに分割し、グループ毎にパラメータを前記バッファに書き込むことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記取得された複数のパラメータのそれぞれには連続する識別番号が対応しており、前記グループは、所定の間隔の識別番号を有するパラメータを含むことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記補間手段は、前記バッファにおいて未更新のパラメータを、該パラメータに対応する識別番号の近傍の識別番号を有し、かつ、前記バッファにおいて更新済のパラメータを用いて補間して生成することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記バッファに前記取得された複数のパラメータの全てが書き込まれていない場合、前記補間手段は、補間方法を決定し、該決定した補間方法を用いて、前記バッファにおいて未更新のパラメータを補間して生成することを特徴とする請求項１から４のいずれか１項に記載の画像処理装置。
【請求項６】
前記画像処理を行うためのパラメータを更新するための期間の開始を前記更新手段に通知する通知手段を更に有し、
前記更新手段は、前記期間の開始の通知を受けた場合に、前記取得された複数のパラメータをバッファに書き込むことを開始することを特徴とする請求項１から５のいずれか１項に記載の画像処理装置。
【請求項７】
前記期間は、前記画像処理手段により前記画像処理が行われている期間以外であることを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記更新手段は、前記画像処理装置に画像信号が入力されたことを検知した場合、前記バッファへのパラメータの書き込みを停止することを特徴とする請求項１から７のいずれか１項に記載の画像処理装置。
【請求項９】
前記画像処理手段が前記入力された画像信号に対する画像処理を終了した場合に、前記更新手段は、前記バッファへのパラメータの書き込みを再開することを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記画像処理手段は、第一の画像処理を行う第一の画像処理手段と該第一の画像処理手段の後段に接続される第二の画像処理を行う第二の画像処理手段とを有し、
前記第一の画像処理手段と前記第二の画像処理手段は、前記バッファにおいて更新済のパラメータおよび前記生成されたパラメータを用い、それぞれ前記第一の画像処理と前記第二の画像処理を行うことを特徴とする請求項１から９のいずれか１項に記載の画像処理装置。
【請求項１１】
画像信号に対して画像処理を行う画像処理装置の制御方法であって、
前記画像処理を行うための複数のパラメータを取得する取得工程と、
前記取得された複数のパラメータをバッファに書き込むことでパラメータを更新する更新工程と、
前記取得された複数のパラメータのうち、前記バッファにおいて未更新のパラメータを、前記バッファにおいて更新済のパラメータを用いて補間して生成する補間工程と、
前記バッファにおいて更新済のパラメータおよび前記生成されたパラメータを用いて前記画像処理を行う画像処理工程と、
を有することを特徴とする制御方法。
【請求項１２】
コンピュータを、請求項１から１０のいずれか１項に記載の画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、その制御方法、およびプログラムに関する。
【背景技術】
【０００２】
画像の高解像度化にともない、高い精度で画像処理を行うために画像処理パラメータのデータ量が増加している。従来の画像処理装置は、画像処理パラメータを格納するためのバッファを２面用いて構成することが一般的である。このような画像処理装置では、次のような方法で画像処理パラメータを更新することが多い。すなわち、画像処理装置は、２面のバッファのうち、一方のバッファから画像処理パラメータを読み出しながら現フレームの画像処理をしている期間に、もう一方のバッファの画像処理パラメータを更新する。そして、パラメータ更新後、画像処理装置は、バッファを切替えて、更新したバッファのパラメータを使用して画像処理を行う。
【０００３】
しかしながら、このように２面のバッファを切り換える方法は、バッファのコストがかかるという課題がある。特許文献１には、従来２面で構成していたバッファを１面で構成し、コストを削減するための方法が開示されている。特許文献１の画像処理装置は、バッファを１面で構成し、画像処理を行わない垂直ブランキング期間に、バッファの画像処理パラメータを更新する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−２０５４６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
解像度変換処理などの画像処理により、処理対象の画像の垂直ブランキング期間が短くなることがある。また、データ量の大きな画像処理パラメータは、通常、画像処理装置内外のメインメモリに格納される。この場合、画像処理パラメータの更新は、ＤＭＡ（Direct Memory Access）コントローラーなどを使用し、メインメモリから画像処理装置のバッファへと転送することにより行われる。
【０００６】
しかし、転送時にメモリ帯域が十分確保できないときや、垂直ブランキング期間が短いときに、１回の垂直ブランキング期間中に全ての画像処理パラメータの更新が完了しない場合がある。１回の垂直ブランキング期間内に画像処理パラメータの更新が完了しない場合、画像処理装置は、次のフレームで、現在のフレームにおける更新途中の画像処理パラメータを用いて画像処理を行う。その場合、更新済の画像処理パラメータを用いた画像処理結果と更新前の画像処理パラメータを用いた画像処理結果との境界に差分が生じるため、画質劣化として視認されやすくなるという課題があった。
【０００７】
本発明は、上記課題に鑑みてなされたものであり、所定のタイミングで更新されるパラメータを用いて画像処理を行う場合における画像処理後の画質劣化を視認させにくくすることを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するための、本発明の一態様による画像処理装置は、以下の構成を有する。すなわち、画像信号に対して画像処理を行う画像処理装置であって、前記画像処理を行うための複数のパラメータを取得する取得手段と、前記取得された複数のパラメータをバッファに書き込むことでパラメータを更新する更新手段と、前記取得された複数のパラメータのうち、前記バッファにおいて未更新のパラメータを、前記バッファにおいて更新済のパラメータを用いて補間して生成する補間手段と、前記バッファにおいて更新済のパラメータおよび前記生成されたパラメータを用いて前記画像処理を行うことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、所定のタイミングで更新されるパラメータを用いて画像処理を行う場合における画像処理後の画質劣化を視認させにくくすることが可能となる。
【図面の簡単な説明】
【００１０】
【図１】実施形態１における画像処理装置の構成の例を示す図。
【図２】パラメータ更新部の構成の例を示す図。
【図３】パラメータ更新部の構成の別の例を示す図。
【図４】実施形態１における処理のフローチャート。
【図５】実施形態１における処理のフローチャート。
【図６】更新前後のパラメータの変換曲線を示す図。
【図７】実施形態１における色変換テーブルを示す図。
【図８】実施形態１における色変換テーブルのメインメモリでの配置を示す図。
【図９】実施形態１の第１のパラメータ更新状態を示す図。
【図１０】実施形態１の第１、第２のパラメータ更新状態を示す図。
【図１１】第１のパラメータ更新が完了した時点のパラメータの変換曲線を示す図。
【図１２】実施形態１の更新前、更新後のパラメータの例を示す図。
【図１３】実施形態１のパラメータの変換曲線の一例を示す図。
【図１４】実施形態２における処理のフローチャート。
【図１５】実施形態３における画像処理装置の構成の例を示す図。
【発明を実施するための形態】
【００１１】
以下、添付の図面を参照して、本発明をその実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【００１２】
［実施形態１］
図１は、本発明の実施形態１における画像処理装置１００の構成の例を示す図である。本実施形態における画像処理装置１００は、更新済の画像処理パラメータを用いて、未更新の画像処理パラメータを補間して生成することが可能である。この画像処理パラメータは、後述する画像処理部１０２により使用されるパラメータであり、以下、単にパラメータとも称する。
【００１３】
画像入力部１０１は、外部から、入力画像信号を受信する。この画像信号は、個々の画像フレームにおける画像データの信号である。画像入力部１０１は、信号フォーマットの解析を行い、解析後の画像信号を画像処理部１０２に出力する。また、画像入力部１０１は、パラメータ補間部１０５とパラメータ更新部１０７に対して、画像信号入力開始（画像フレームの開始）を通知する。画像処理部１０２は、画像信号に対して、画像処理を行う。本実施形態では、画像処理部１０２は、８ｂｉｔの画素値を補正カーブによって色補正する処理を行うものとする。本実施形態においては、色補正後の画素値として、画像処理部１０２は、入力画素のＲ画素値から補正カーブに基づく色変換テーブルによって補正した画素値を出力する。画像処理部１０２は、画像処理時にはパラメータ補間部１０５を介してパラメータバッファ１０６からパラメータを読み出し、または、パラメータ補間部１０５により保管されたパラメータを読みだし、画像処理を行う。画像処理部１０２は、画像処理後のフレームを画像出力部１０３に出力する。
【００１４】
画像出力部１０３は、画像処理された画像信号を表示装置１０８に出力する。更新期間検出部１０４は、パラメータを更新するための時間期間であるパラメータ更新期間を検出し、パラメータ更新期間の開始をパラメータ更新部１０７に通知する。本実施形態では、パラメータ更新期間として、画像処理部１０２に入力される画像信号の垂直ブランキング期間を想定する。更新期間検出部１０４は、画像処理部１０２に入力される画像信号の垂直ブランキング期間の開始時に開始トリガ信号を生成し、パラメータ更新部１０７に入力する。なお、パラメータ更新期間は、垂直ブランキング期間に限る必要はなく、画像処理部１０２による画像処理の実施期間以外であればよい。例えば、画像処理装置１００内部で各画像処理の処理タイミングが生成されている場合は、更新期間検出部１０４は、その内部タイミング信号に基づいてパラメータ更新期間の開始を通知してもよい。
【００１５】
パラメータ補間部１０５は、画像処理部１０２がパラメータバッファ１０６からパラメータ読み出しを行った場合に、画像処理部１０２にパラメータを返す。本実施形態では、パラメータ補間部１０５は、パラメータ未更新であれば更新済のパラメータから補間した値を返し、パラメータ更新済であれば、更新済のパラメータを返す。パラメータ補間部１０５は、参照するパラメータが更新済かどうかを判断するために、パラメータバッファ１０６におけるパラメータ更新情報を受けることが出来る。本実施形態では、後述するように、パラメータは複数のセットに分けられる。そのため、パラメータ補間部１０５は、パラメータバッファ１０６から、各パラメータセットが更新されているかの情報を受けることが出来る。パラメータ補間部１０５は、画像入力部１０１から画像信号入力開始の通知を受けた時点でパラメータ更新情報を取得する。
【００１６】
パラメータバッファ１０６は、画像処理部１０２が使用するパラメータを格納するメモリであり、本実施形態では１面で構成される。パラメータ更新部１０７は、パラメータバッファ１０６に格納されるパラメータの更新を行う。パラメータ更新部１０７は、更新期間検出部１０４により通知されたパラメータ更新期間開始の通知を検知してからパラメータ更新を開始する。
【００１７】
次に、パラメータ更新部１０７の構成について図２と図３を用いて詳細に説明する。図２と図３は、パラメータ更新部１０７の構成の一例を表す図である。図２に示すパラメータ更新部１０７は、パラメータ更新制御部２０１と、メインメモリ２０４と、パラメータ読出部２０３と、パラメータ書込部２０２から構成される。
【００１８】
パラメータ更新制御部２０１は、画像入力部１０１から画像信号入力開始の通知を受け取り、更新期間検出部１０４からパラメータ更新期間開始の通知を受け取る。パラメータ更新制御部２０１は、これらの通知に基づいて、パラメータ書込部２０２、およびパラメータ読出部２０３を制御する。例えば、パラメータ更新制御部２０１は、パラメータ書込部２０２に対し、パラメータバッファ１０６へのデータの書込順番を設定する。また、例えば、パラメータ更新制御部２０１は、パラメータ読出部２０３に対し、メインメモリ２０４からのデータの読出開始アドレスを設定し、また、読出のための転送サイズ、読出動作開始及び中止を制御する。
【００１９】
パラメータ書込部２０２は、パラメータ読出部２０３により読み出されたパラメータを、パラメータ更新制御部２０１から設定された書込順番に従い、パラメータバッファ１０６に書き込む。パラメータ読出部２０３は、パラメータ更新制御部２０１により設定された読み出し開始アドレスに従い、メインメモリ２０４からパラメータデータを読み出す。メインメモリ２０４は、パラメータ更新制御部２０１の制御により、パラメータバッファ１０６に設定するための画像処理パラメータを取得して格納する。
【００２０】
本実施形態では、パラメータ書込部２０２及びパラメータ読出部２０３はＤＭＡ（Direct Memory Access）コントローラーにより構成されているものとする。しかし、ＤＭＡコントローラーに限定する必要はなく、画像処理装置１００における不図示のＣＰＵ（Central Processing Unit）がメインメモリ２０４からパラメータを読み出し、パラメータバッファ１０６に書き込んでもよい。
【００２１】
図３は、パラメータ更新部１０７の構成の他の例を表す図である。図３に示すパラメータ更新部１０７は、図２と異なりメインメモリ２０４を持たず、パラメータ読出部２０３の代わりにパラメータ生成部２０５を持つ構成となっている。パラメータ生成部２０５は、パラメータバッファ１０６に書き込むパラメータを生成して取得する。なお、以降の説明では、パラメータ更新部１０７の構成は、図２に示す構成を前提とするが、必要な修正を加えることにより、図３に示す構成でも以下の実施形態は実現可能である。
【００２２】
次に、実施形態１における画像処理装置１００の処理を図４、図５を用いて説明する。図４は、パラメータ更新要求が発生したときに、パラメータ更新部１０７がパラメータ更新処理を行うための処理のフローチャートである。本実施形態において、パラメータ更新要求は、ユーザによる操作や処理対象の画像の解像度、色空間の変化、画像の性質等により発生し得る。
【００２３】
図４において、パラメータ更新制御部２０１は、パラメータ更新要求が発生すると、メメインメモリ３０４にパラメータを配置する（Ｓ５０１）。パラメータは、例えば、幾つかのパターンのテーブルデータとして、画像処理装置１００内外のＲＯＭ領域（不図示）に保存されている。パラメータ更新制御部２０１は、パラメータ更新要求の発生後に、その中から１つを選択する。本実施形態では、補間可能なパラメータから先に転送されるように、パラメータ更新制御部２０１は、パラメータの並べ替えを行い、メインメモリ２０４に格納する。パラメータの並べ替えに関する説明は後述する。
【００２４】
次に、パラメータ更新制御部２０１は、パラメータ書込部２０２およびパラメータ読出部２０３に対し、動作条件を設定する（Ｓ５０２）。本実施形態では、パラメータ更新制御部２０１は、動作条件として、パラメータ書込部２０２に対して書込順番を設定し、パラメータ読出部２０３に対してＤＭＡコントローラーの読出開始アドレス、読出サイズ（転送量）を設定する。
【００２５】
垂直ブランキング期間が開始すると、更新期間検出部１０４は、パラメータ更新期間開始をパラメータ更新制御部２０１に通知する。これを受けて、パラメータ更新制御部２０１は、パラメータ更新期間開始の通知を検出する（Ｓ５０３）。パラメータ更新制御部２０１は、パラメータ更新期間開始の通知を検出することにより、パラメータ読出部２０３およびパラメータ書込部２０２を起動させる（Ｓ５０４）。
【００２６】
続いて、パラメータ読出部２０３は、メインメモリ２０４からパラメータを順に読み出す。パラメータ書込部２０２は、パラメータ読出部２０３により読み出されたパラメータをパラメータバッファ１０６に書き込む。このとき、パラメータ書込部２０２は、パラメータ更新制御部２０１により設定された書込順番に基づいて、アドレス変換を行いながらパラメータを書き込む（Ｓ５０５）。Ｓ５０５の処理は、パラメータ更新が行われていることを意味する。
【００２７】
画像信号が画像入力部１０１に入力されると、画像入力部１０１は、画像信号入力開始をパラメータ更新制御部２０１に通知する。これを受けて、パラメータ更新制御部２０１は、画像入力開始の通知を検知する（Ｓ５０６）。続いて、パラメータ更新部１０７は、パラメータ更新を継続するかどうかを判断する（Ｓ５０７）。本実施形態では、パラメータ更新を継続するものとする（Ｓ５０７のＹｅｓ）。一方、パラメータ更新を停止する場合は（Ｓ５０７のＮｏ）、パラメータ更新制御部２０１は、パラメータ読出部２０３の動作を停止する制御を行う（Ｓ５０８）。
【００２８】
次に、図５について説明する。図５は、パラメータ更新制御部２０１が画像入力開始の通知を検出し、その後、画像処理部１０２からパラメータの要求を受けた場合の処理のフローチャートである。まず、パラメータ補間部１０５は、パラメータ更新部１０７によるパラメータ更新処理が完了したか、すなわち、パラメータバッファ１０６へのパラメータの書き込みが完了したかを判断する。パラメータ補間部１０５は、この判断に基づいて、補間を行うかどうかを決定する（Ｓ５０９）。
【００２９】
パラメータ更新処理が完了している場合（Ｓ５０９のＹｅｓ）、パラメータ補間部１０５は補間処理を行わず、要求に対応するパラメータを画像処理部１０２に返す。画像処理部１０２は、パラメータバッファ１０６に書き込まれたパラメータを用いて、画像処理を実施する（Ｓ５１０）。その後、画像処理装置１００に１画像フレーム分の画像信号が入力され、画像処理部１０２による該画像信号への画像処理後に、処理は終了する（Ｓ５１１）。
【００３０】
一方、パラメータ更新処理が完了していない場合（Ｓ５０９のＮｏ）、パラメータ補間部１０５は、未更新のパラメータ、すなわち、パラメータバッファ１０６にまだ書き込まれていないパラメータを補間する生成するための補間方法を決定する（Ｓ５１２）。パラメータ補間部１０５は、画像処理部１０２から未更新パラメータの要求があった場合に、Ｓ５１２で決定した補間方法を用いて未更新パラメータを生成し、画像処理部１０２へ返す。画像処理部１０２は、補間により生成されたパラメータを用いて画像処理を実施する（Ｓ５１３）。
【００３１】
その後、画像処理装置１００に１画像フレーム分の画像データが入力され、画像処理部１０２による該画像信号への補間を伴う画像処理後に、処理は終了する（Ｓ５１４）。続いて、Ｓ５０７と同様に、パラメータ更新部１０７は、パラメータ更新を継続するかどうかを判断する（Ｓ５１５）。パラメータ更新を継続しない場合（Ｓ５１５のＮｏ）、処理は終了する。パラメータ更新を継続する場合（Ｓ５１５のＹｅｓ）、パラメータ更新部１０７は、次に画像信号入力開始を受けるまでパラメータ更新を継続し（Ｓ５１６）、再びＳ５０９に戻り、全てのパラメータ更新が完了するまで処理を繰り返す。
【００３２】
次に、パラメータバッファ１０６における画像処理パラメータの更新（パラメータの書き込み）が完了しない場合に、パラメータ補間部１０５によって未更新パラメータを補間する処理について、図６から図１２を用いて説明する。
【００３３】
図６は、本実施形態における、変更前のパラメータと変更後のパラメータの変換曲線を示す図である。図６に示す変換曲線は、色変換曲線を表している。画像処理部１０２は、変更前の変換曲線を用いて、入力画素値０〜２５５に対して、各画素値を小さくする処理を行う。また、画像処理部１０２は、変更後の変換曲線を用いて、入力画素値０〜２５５に対して、各画素を大きくする処理を行う。具体的には、この変換処理はＲ（赤）成分の変換処理であるとする。
【００３４】
図７は、パラメータテーブル（色変換テーブル）の一例を示すものである。図におけるｉｎｄｅｘは、Ｒ画素値０〜２５５を表す。図７のパラメータテーブルは、ｉｎｄｅｘに対応して出力される画素値をテーブルデータとして持つ。また、図７のパラメータテーブルは、パラメータ（出力される画素値）のサイズを４Ｂｙｔｅ（３２ｂｉｔ）とし、４×２５６＝１０２４Ｂｙｔｅで構成される。なお、本実施形態におけるパラメータテーブルは、図７に示すものとするが、入力情報の識別情報や識別番号（図７ではｉｎｄｅｘ）に対応して出力される出力情報（図７では３２ｂｉｔの画素値）が配置された他のテーブルであってもよい。
【００３５】
図７に示すパラメータテーブルによれば、入力されるＲ画素値が１の場合、画像処理後に出力されるＲ画素値は２となる。また、入力されるＲ画素値が３の場合、画像処理後に出力されるＲ画素値は８となる。
【００３６】
図７に示すテーブルデータは、パラメータ更新制御部２０１により４つのグループに分割され、メインメモリ２０４に格納される。図８は、本実施形態における色変換テーブルのメインメモリ２０４での配置を示す図である。図８に示す例によれば、図７に示すパラメータデータは、
第１のパラメータ：４＊Ｎ        （Ｎ＝０，１，…，２５６／４  −  １）
第２のパラメータ：４＊Ｎ＋２    （Ｎ＝０，１，…，２５６／４  −  １）
第３のパラメータ：４＊Ｎ＋１    （Ｎ＝０，１，…，２５６／４  −  １）
第４のパラメータ：４＊Ｎ＋３    （Ｎ＝０，１，…，２５６／４  −  １）
の条件で４つのグループに分割される。すなわち、ｉｎｄｅｘが４の間隔でグループ化される。
【００３７】
パラメータ読出部２０３は、パラメータ更新制御部２０１の制御によって動作を開始し、設定された動作条件に基づいて、第１のパラメータセットから第４のパラメータセットを連続で読み出す。パラメータ書込部２０２は、図８のように分割されたテーブルデータにおける順を、パラメータバッファ１０６に書き込まれる順に書き込みアドレスを変換し、グループ毎にパラメータバッファ１０６に書き込む。本実施形態では、パラメータ読出部２０３とパラメータ書込部２０２により、以下に示す転送単位で連続して、パラメータバッファ１０６へ転送が行われる。
第１の転送単位：書き込み先開始アドレス０ｘ０、書き込み回数６４、オフセット１６
第２の転送単位：書き込み先開始アドレス０ｘ８、書き込み回数６４、オフセット１６
第３の転送単位：書き込み先開始アドレス０ｘ４、書き込み回数６４、オフセット１６
第４の転送単位：書き込み先開始アドレス０ｘｃ、書き込み回数６４、オフセット１６
【００３８】
パラメータ書込部２０２が、パラメータバッファ１０６へ全てのパラメータの書き込みが完了すると、図７で示した色変換テーブルがパラメータバッファ１０６に格納された状態となる。一方、一部のパラメータの更新が完了した時点では、パラメータバッファ１０６には未更新のパラメータと更新済みのパラメータが混在することになる。
【００３９】
図９と図１０に、パラメータバッファ１０６における更新状態の例を示す。図９は、第１のパラメータの更新が完了した時点におけるパラメータバッファ１０６における状態を示す。図９に示すように、第１のパラメータ更新が完了した時点では、パラメータバッファ１０６のｉｎｄｅｘ＝４Ｎ（Ｎ＝０〜６３）のパラメータが更新済となっている。パラメータバッファ１０６にはｉｎｄｅｘ＝４Ｎ（Ｎ＝０〜６３）のパラメータが０ｘ１０番地おきに書き込まれている。パラメータ補間部１０５は、パラメータバッファ１０６の最終アドレス−１２番地に書き込みがあった場合に、第１のパラメータ更新が完了したことをパラメータ更新情報により認識する。
【００４０】
第１のパラメータ更新完了後に、画像処理部１０２が画像処理を開始する時には、未更新であるｉｎｄｅｘ＝１２９のパラメータには更新前のパラメータが書き込まれている。画像処理部１０２がｉｎｄｅｘ＝１２９のパラメータを参照する場合、パラメータ補間部１０５は、更新済であるｉｎｄｅｘ＝１２８のパラメータ１３０とｉｎｄｅｘ＝１３２のパラメータ１４１を用いて補間値を生成する。パラメータ補間部１０５は、生成した値を、ｉｎｄｅｘ＝１２９のパラメータとして返す。
【００４１】
図１０は、第１のパラメータと第２のパラメータの更新が完了した時点におけるパラメータバッファ１０６における状態を示す。パラメータ補間部１０５は、パラメータバッファ１０６の最終アドレス−４番地に書き込みがあった場合に、第２のパラメータ更新が完了したことをパラメータ更新情報により認識する。第２のパラメータセット更新完了後に、画像処理部１０２が画像処理を開始する場合、パラメータ補間部１０５は、更新済であるｉｎｄｅｘ＝１２８のパラメータ１３０とｉｎｄｅｘ＝１３０のパラメータ１３５を用いて補間値を生成する。パラメータ補間部１０５は、生成した値を、ｉｎｄｅｘ＝１２９のパラメータとして返す。
【００４２】
パラメータ補間部１０５は、パラメータ更新要求があった場合に、パラメータバッファ１０６のパラメータ更新情報をクリアする。本実施形態では、図９、図１０に示すようにパラメータバッファ１０６の０ｘ０番地に書き込みがあった場合、パラメータ補間部１０５はパラメータ更新情報をクリアする。最初のパラメータがパラメータバッファ１０６に書き込まれると、パラメータ補間部１０５は全てのパラメータを未更新として認識する。その後、各パラメータセットの最終データ書込がある毎に、パラメータ更新情報が更新される。
【００４３】
図１１は、第１のパラメータ更新が完了した時点のパラメータの変換曲線を示す図である。図１１には、第１のパラメータ更新が完了した時点における、図６の入力画素値１２８〜１４３部分の曲線がしめされ、また、更新前のパラメータの変換曲線も示されている。図１２は、入力画素値１２８〜１４３部分における更新前、更新後のパラメータの例を示す。
【００４４】
第１のパラメータ更新が完了した時点で画像入力部１０１に画像信号が入力され、画像処理部１０２が図１１におけるＡのパラメータを参照したとする。Ａのパラメータは未更新であるため、補間を行わない従来例では更新前パラメータテーブル値であるＣが読み出される。Ｃを参照した場合と本来参照されるべきＡを参照した場合の色変換後の値は差が大きいため、Ｃを参照した場合の画像処理と、更新後パラメータを参照した場合のパラメータとの不整合が発生し、画質劣化が発生する。パラメータ補間部１０５は、画像処理部１０２が未更新であるＡを参照しようとした場合、更新済のパラメータＤ、Ｅから補間したＢをパラメータとして返却する。これによりＡのパラメータが未更新であっても、Ｃを参照する場合に比べて誤差の小さい値を得ることが出来る。
【００４５】
上記例では、パラメータ補間部１０５は、近傍の２点を利用し、一次関数による近似を用いているが、複数の更新済パラメータを利用した近似を用いてもよい。また、パラメータ補間部１０５は、更新済パラメータデータのいずれか一方の１点の値をそのまま返却してもよい。また、パラメータ補間部１０５は、二次以上の多項式による近似を用いてもよい。
【００４６】
以下に、本実施形態における補間方法を示す。補間データをＤとし、パラメータ要素数をＮとし、参照パラメータテーブルデータをＴ［Ｎ］とし、参照パラメータのインデックスをｉ（０，１，…Ｎ−１のいずれかの値）とし、更新済パラメータ更新間隔をＳｔｅｐとする。また、小数値Ｆの小数点を切り捨て整数とする処理をＲＯＵＮＤＤＯＷＮ（Ｆ）で表記し、値ＡをＢで除算した際の剰余をｍｏｄ（Ａ，Ｂ）で表記する。また、補間時パラメータ１をＰ１＝Ｔ［ＲＯＵＮＤＤＯＷＮ（ｉ／Ｓｔｅｐ）＊Ｓｔｅｐ）］とし、補間時パラメータ２をＰ２＝Ｔ［ＲＯＵＮＤＤＯＷＮ（ｉ／Ｓｔｅｐ）＊Ｓｔｅｐ＋Ｓｔｅｐ］（但し、ｉ＝Ｎ−Ｓｔｅｐの場合はＰ２＝Ｐ１とする。他の補間方法を用いてもよい）とする。この場合、補間データＤは、
Ｄ＝Ｔ［Ｐ１］＋（Ｔ［Ｐ２］−Ｔ［Ｐ１］）／Ｓｔｅｐ＊ｍｏｄ（ｉ，Ｓｔｅｐ）
により求められる。
【００４７】
ここで、更新済パラメータ更新間隔Ｓｔｅｐとは、図８のようにパラメータを四分割とした場合、第１のパラメータ更新が完了した時点で４、第２のパラメータ更新が完了した時点で２となる。また、第３のパラメータ更新完了時点では引き続き２となり、第４のパラメータ更新完了時点では補間は行われない。
【００４８】
本補間方法を用いて、図９で示した、未更新であるｉｎｄｅｘ＝１２９のパラメータを更新後の第１のパラメータから補間する例を示す。
Ｎ＝２５６、ｉ＝１２９、Ｓｔｅｐ＝４とすると
Ｐ１＝Ｔ［ＲＯＵＮＤＤＯＷＮ（１２９／４）＊４）］＝Ｔ［１２８］＝１３０
Ｐ２＝Ｔ［ＲＯＵＮＤＤＯＷＮ（１２９／４）＊４＋４］＝Ｔ［１３２］＝１４１
Ｄ＝１３０＋（１４１−１３０）／４＊１＝１３２．７５
となる。ここで、本実施形態では四捨五入して補間後の値は１３３とする。端数の処理方法については、切り捨て、または、切り上げを用いてもよい。
【００４９】
同様に、本補間方法を用いて、図１０で示した、未更新であるｉｎｄｅｘ＝１２９のパラメータを更新後の第１のパラメータと第２のパラメータから補間する例を示す。
Ｎ＝２５６、ｉ＝１２９、Ｓｔｅｐ＝２とすると
Ｐ１＝Ｔ［ＲＯＵＮＤＤＯＷＮ（１２９／２）＊２）］＝Ｔ［１２８］＝１３０
Ｐ２＝Ｔ［ＲＯＵＮＤＤＯＷＮ（１２９／２）＊２＋２］＝Ｔ［１３０］＝１３８
Ｄ＝１３０＋（１３８−１３０）／２＊１＝１３４
となる。
【００５０】
このようにパラメータを所定の複数の数に分割して更新することで、パラメータ更新量が少ない時点で画像信号が入力され、画像処理を行う場合であっても、全体の精度を保つよう未更新パラメータを補間することが出来る。また、より多くのパラメータが更新されている場合は、誤差がより小さい補間値を求めることが出来る。
【００５１】
本実施形態では、パラメータを４つに分割する例を示したが、２つ以上であれば任意の数に出来る。例えば、パラメータ更新期間開始から画像信号入力開始までの期間が短く、精度が落ちても未更新パラメータを参照することなく補間することで整合性を保ちたい場合は、分割数を１６や３２などに増やしてもよい。また、分割数は、予め多く分割しておいてもよいし、パラメータ更新期間である垂直ブランキング期間の長さやメモリ帯域などから適する分割数に動的に分割してもよい。
【００５２】
また、分割したパラメータの転送順番を動的に変更してもよい。例えば画像の統計量からＲ画素値が低階調付近に多く分布している場合を考える。この場合、パラメータ更新部１０７は、最初に第１のパラメータを更新した後、第２のパラメータの１／４（０〜６３）、第３のパラメータの１／４（０〜６３）、第４のパラメータの１／４（０〜６３）の順に更新するようにしてもよい。
【００５３】
また、パラメータ（変換曲線）の特徴から転送順番を動的に変更してもよい。図１３に色変換曲線の例を示す。図１３に示すように色変換曲線のうち、変化が大きい部分に偏りがある場合は、パラメータ更新部１０７は、変化が小さい部分は１／８精度で更新し、変化が大きい部分は全パラメータを更新するようにしてもよい。
【００５４】
また、本実施形態では、パラメータ読み出しにＤＭＡコントローラーを用いる例を示したるが、ＣＰＵを用いてもよい。また、転送順にパラメータを配置せず、パラメータ読出部２０３がランダムアクセスしても良い。この場合、ＤＭＡコントローラーから読み出す際のメモリアクセス効率やＣＰＵから読み出す際のキャッシュ効率が低下する。
【００５５】
パラメータ補間部１０５は、パラメータバッファ１０６の０ｘ０番地に書き込みがされるとパラメータ更新情報をクリアする。また、パラメータ補間部１０５は、第１のパラメータが更新完了したことはパラメータバッファ１０６の最終アドレス−１２番地が更新されたことによって知ることが出来る。同様に、パラメータ補間部１０５は、第２のパラメータの更新完了は最終アドレス−４番地、第３のパラメータの更新完了は最終アドレス−８番地、第４のパラメータの更新完了は最終アドレス−０番地が更新されたことによって知ることが出来る。
【００５６】
本実施形態では、最終アドレス−０番地が更新済であれば第４のパラメータ更新済であるため、パラメータ補間部１０５は補間を行わない。最終アドレス−４番地が更新済であれば、パラメータ補間部１０５は、第１のパラメータ、第２のパラメータによって未更新パラメータの補間を行う。それ以外の場合は、パラメータ補間部１０５は、第１のパラメータによって未更新パラメータの補間を行う。
【００５７】
分割したパラメータの内、１つも画像信号入力開始時に更新完了していない場合は、パラメータ補間部１０５は、更新前後のパラメータ、もしくは更新前のパラメータによって補間処理を行ってもよい。その場合、画像処理後の画像信号の品質は劣化する。このような更新処理以降にパラメータ更新要求が発生した場合には、パラメータ更新制御部２０１は、分割数を増やし、パラメータ更新期間開始から画像信号入力開始までに転送が必要な最低サイズを小さくする、といった制御を行ってもよい。
【００５８】
なお、本実施形態ではパラメータバッファ１０６の先頭及び終端４個分のパラメータ書き込みによって、パラメータ補間部１０５は補間方法を決定しているが、その他の方法でも良い。例えば、すべてのパラメータ更新情報がパラメータバッファ１０６からパラメータ補間部１０５に通知出来てもよい。この場合はパラメータがランダムに更新されても、パラメータ補間部１０５は、近傍の更新済パラメータを用いて補間することが可能である。
【００５９】
このように、本実施形態によれば、パラメータ更新期間である垂直ブランキング期間中にパラメータ更新が完了した場合は画質劣化なく画像処理を行うことが出来、パラメータ更新が完了しない場合は更新済パラメータを用いて画質劣化の小さい画像処理を行うことが出来る。このような構成によれば、画像処理のためのパラメータが未更新の場合であっても画像処理後の画質劣化を視認させにくくすることが可能となる。
【００６０】
なお、パラメータ更新部１０７は、パラメータ更新がパラメータ更新期間内に間に合わなかった場合に、パラメータ転送を中止することができる。また、画像信号入力が開始されたら、パラメータの更新が完了していなくてもパラメータ更新部１０７はパラメータ更新を中止し、画像信号入力終了から次の画像信号入力開始までに、次の画像信号入力のパラメータを更新してもよい。また、パラメータ更新が画像信号入力開始までに間に合わず、次の画像フレームでは更新中のパラメータが不要になる場合、パラメータ更新部１０７は、パラメータ更新を中止することでメモリ帯域を確保することが出来る。
【００６１】
［実施形態２］
実施形態２では、画像信号入力中のパラメータ更新を一時停止する場合について、図１４のフローチャートを使用し、実施形態１との差分のみ説明する。Ｓ６０１〜Ｓ６０６の処理は、Ｓ５０１〜Ｓ５０６の処理と同様である。Ｓ６０７の処理は、Ｓ５０９の処理と同様である。Ｓ６０８〜Ｓ６０９の処理は、Ｓ５１０〜Ｓ５１１の処理と同様である。Ｓ６１１〜Ｓ６１３の処理は、Ｓ５１２〜Ｓ５１４と同様である。Ｓ６１５の処理は、Ｓ５１６の処理と同様である。
【００６２】
画像信号入力開始時点でパラメータ更新が完了していない場合、パラメータ更新制御部２０１が、パラメータ読出部２０３によるパラメータの転送を一時停止する（Ｓ６１０）。本実施形態では、パラメータ更新制御部２０１は、ＤＭＡコントローラーを一時停止する。画像信号入力終了後、パラメータ更新制御部２０１が、パラメータ読出部２０３によるパラメータの転送を再開する（Ｓ６１４）。本実施形態では、パラメータ更新制御部２０１は、一時停止中のＤＭＡコントローラーを再開する。
【００６３】
このように、本実施形態によれば、画像処理中のメモリ帯域を確保しつつ、パラメータ更新期間中にパラメータを更新することが出来る。パラメータ更新が複数の画像フレーム期間に渡っても、補間を行うことで画質劣化を小さくすることが出来る。
【００６４】
［実施形態３］
実施形態３では、画像処理部が複数ある場合について実施形態１との差分のみ説明する。実施形態３の画像処理装置１１０の処理について、図１５を用いて説明する。図１５は、本実施形態における画像処理装置１１０の構成の例を示す図である。画像処理装置１１０は、画像処理部、パラメータ補間部、パラメータバッファを２つずつ持つ。第一画像処理部１１１の後段に第二画像処理部１１２が接続される。画像入力部１０１からの画像信号は第一画像処理部１１１で画像処理された後、第二画像処理部１１２で画像処理され、画像出力部１０３へ出力される。上述の実施形態と同様の方法により、第一画像処理部１１１は、第一パラメータ補間部１１３を介して第一パラメータバッファ１１５からパラメータを読み出す。同様に、第二画像処理部１１２は、第二パラメータ補間部１１４を介して第二パラメータバッファ１１６。なお、画像処理は、２段以上で行われてもよく、それに伴い、画像処理部、パラメータ補間部、パラメータバッファは２つ以上あってよい。
【００６５】
このような複数画像処理を持つ例の、パラメータ更新部１１７について説明する。実施形態１においてはテーブルデータを４つに分割し、メインメモリ２０４に格納した。
第１のパラメータ：４＊Ｎ        （Ｎ＝０，１，…，２５６／４  −  １）
第２のパラメータ：４＊Ｎ＋２    （Ｎ＝０，１，…，２５６／４  −  １）
第３のパラメータ：４＊Ｎ＋１    （Ｎ＝０，１，…，２５６／４  −  １）
第４のパラメータ：４＊Ｎ＋３    （Ｎ＝０，１，…，２５６／４  −  １）
【００６６】
本実施形態では第一画像処理部１１１、第二画像処理部１１２をそれぞれ分割し、メインメモリ２０４に混在して配置することが出来る。以下に例を示す。
第１のパラメータ：第一画像処理部１１１の４＊Ｎ
（Ｎ＝０，１，…，２５６／４  −  １）
第２のパラメータ：第二画像処理部１１２の４＊Ｎ
（Ｎ＝０，１，…，２５６／４  −  １）
第３のパラメータ：第一画像処理部１１１の４＊Ｎ＋２
（Ｎ＝０，１，…，２５６／４  −  １）
第４のパラメータ：第二画像処理部１１２の４＊Ｎ＋２
（Ｎ＝０，１，…，２５６／４  −  １）
第５のパラメータ：第一画像処理部１１１の４＊Ｎ＋１
（Ｎ＝０，１，…，２５６／４  −  １）
第６のパラメータ：第二画像処理部１１２の４＊Ｎ＋１
（Ｎ＝０，１，…，２５６／４  −  １）
第７のパラメータ：第一画像処理部１１１の４＊Ｎ＋３
（Ｎ＝０，１，…，２５６／４  −  １）
第８のパラメータ：第二画像処理部１１２の４＊Ｎ＋３
（Ｎ＝０，１，…，２５６／４  −  １）
【００６７】
また、画像処理の内容によって転送順番を変更してもよい。例えば、第一画像処理部１１１の画像処理が、第二画像処理部１１２の画像処理よりも画質劣化が目立ちやすい処理である場合を想定する。この場合、以下のように、パラメータ更新部１１７は、最初に最低限の画像処理パラメータを第一画像処理部１１１と第二画像処理部１１２に送る。続いて、パラメータ更新部１１７が、第一画像処理部１１１のパラメータを全て送る、といった更新順であってもよい。
第１のパラメータ：第一画像処理部１１１の４＊Ｎ  
（Ｎ＝０，１，…，２５６／４  −  １）
第２のパラメータ：第二画像処理部１１２の４＊Ｎ
（Ｎ＝０，１，…，２５６／４  −  １）
第３のパラメータ：第一画像処理部１１１の４＊Ｎ＋２
（Ｎ＝０，１，…，２５６／４  −  １）
第４のパラメータ：第一画像処理部１１１の４＊Ｎ＋１
（Ｎ＝０，１，…，２５６／４  −  １）
第５のパラメータ：第一画像処理部１１１の４＊Ｎ＋３
（Ｎ＝０，１，…，２５６／４  −  １）
第６のパラメータ：第二画像処理部１１２の４＊Ｎ＋２
（Ｎ＝０，１，…，２５６／４  −  １）
第７のパラメータ：第二画像処理部１１２の４＊Ｎ＋１
（Ｎ＝０，１，…，２５６／４  −  １）
第８のパラメータ：第二画像処理部１１２の４＊Ｎ＋３
（Ｎ＝０，１，…，２５６／４  −  １）
【００６８】
パラメータ更新制御部２０１は、パラメータ読出部２０３に第１から第８のパラメータを順に読み出すように設定する。パラメータ更新制御部２０１は、パラメータ書込部２０２に第１から第８のパラメータが第一パラメータバッファ１１５、第二パラメータバッファ１１６の適するアドレスに書き込まれるようにアドレス制御を設定する。
【００６９】
本実施形態によれば、第一画像処理部１１１、第二画像処理部１１２に補間可能な最小限のデータを送ることで画像処理の整合性を維持し、画質劣化の小さい画像処理を行うことが出来る。さらに残りの分割データを送ることでさらに画質劣化を小さくすることが出来る。
【００７０】
［その他の実施形態］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００７１】
１００  画像処理装置、１０１  画像入力部、１０２  画像処理部、１０３  画像出力部、１０４  更新期間検出部、１０５  パラメータ補間部、１０６  パラメータバッファ、１０７  パラメータ更新部、１１０  画像処理装置、１１１  第一画像処理部、１１２  第二画像処理部、１１３  第一パラメータ補間部、１１４  第二パラメータ補間部、１１５  第一パラメータバッファ、１１６  第二パラメータバッファ、２０１  パラメータ更新制御部、２０２  パラメータ書込部、２０３  パラメータ読出部、２０４  メインメモリ、２０５  パラメータ生成部
【図１】
2017097226.tif 000003
【図２】
2017097226.tif 000004
【図３】
2017097226.tif 000005
【図４】
2017097226.tif 000006
【図５】
2017097226.tif 000007
【図６】
2017097226.tif 000008
【図７】
2017097226.tif 000009
【図８】
2017097226.tif 000010
【図９】
2017097226.tif 000011
【図１０】
2017097226.tif 000012
【図１１】
2017097226.tif 000013
【図１２】
2017097226.tif 000014
【図１３】
2017097226.tif 000015
【図１４】
2017097226.tif 000016
【図１５】
2017097226.tif 000017