(57)【特許請求の範囲】
【請求項１】
供給された画像データを処理するための直列に接続された画像処理手段と該画像処理手段により得られた画像形成に係るデータを圧縮処理する画像圧縮処理手段を有する画像処理装置であって、
画像データを格納するメモリと、
前記画像圧縮処理手段で画像表示以外に用いるデータを生成する際、前記画像圧縮処理手段で圧縮処理するときの基本データサイズであるＭＣＵのサイズに対して垂直方向のデータサイズを整数（２以上の自然数）倍したものに周辺データを付加した垂直データサイズとした画像データを水平方向に連続的に前記メモリから順次前記画像処理手段へ供給するデータ供給手段と、
画像表示以外に用いるデータを生成するために前記画像圧縮処理手段に供給する場合には、前記画像処理手段により得られた画像形成に係るデータを前記基本データサイズに分割すると共に、分割して得られた前記基本データサイズのデータを、画像表示に用いるデータを生成するために前記画像圧縮処理手段に供給する場合とは異なる順序で前記画像圧縮処理手段へ供給する順序変更手段と、
を備えたことを特徴とする画像処理装置。
【請求項２】
前記データ供給手段により供給されるデータサイズに対応した処理を行ない得るように前記画像処理手段及び前記順序変更手段の処理動作を設定する設定手段を更に備えたことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記画像圧縮処理手段は、前記生成された画像表示以外に用いるデータの圧縮結果を用いて前記表示に用いるデータを生成するために圧縮処理を行い、
前記順序変更手段は、前記基本データサイズに分割されたデータを、初回の圧縮処理と以降の圧縮処理とで異なる順序で前記画像圧縮処理手段へ供給することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記画像データは、撮像により得られ、
前記画像圧縮処理手段は、ＪＰＥＧ方式によって画像形成に係るデータを圧縮することを特徴とする請求項１乃至請求項３のうち何れか１の請求項に記載の画像処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、デジタルカメラ等の電子的撮像装置に用いられる画像処理装置に関する。
【０００２】
【従来の技術】
近年、デジタルカメラなどの撮像装置に使用されている撮像素子の画素数は飛躍的に増大し、取り扱われる画像データ量も非常に大きなものとなってきている。このため、画像データを取り扱う際の処理時間が問題となってきており、処理時間の短縮化を図ることのできる高速な画像処理装置が必要とされている。
【０００３】
このような画像データ処理の高速化が図れる技術としては、特開２０００−３１２３２７号公報に記載されたものが知られている。
【０００４】
図９は従来の画像処理装置の構成を示すブロック図である。
【０００５】
この画像処理装置においては、バス１に接続されたＣＰＵ２の制御により、ＣＣＤ撮像素子からの撮像信号をプリプロセス回路部３で処理した信号は、バス１を介してイメージプロセス処理部５に入力される。イメージプロセス処理部５は初段イメージプロセス回路部５ー１からｎ段目のイメージプロセス回路部５ーｎまで直列に接続したパイプライン方式で画像処理を行ない、その結果をＪＰＥＧ処理部６に送り出す。ＪＰＥＧ処理部６ではＪＰＥＧ方式による圧縮処理を行った後、その圧縮された画像形成に係るデータをバス１を介してフレームメモリ４や図示していないメモリカードに記録するように構成されている。
【０００６】
このように構成することによって、バス１を介したデータ転送は、フレームメモリ４から初段のイメージプロセス回路部５ー１への転送と、ＪＰＥＧ処理部６からフレームメモリ４への転送のみで処理することができ、フレームメモリ４と各イメージプロセス回路との間でデータの転送を繰り返していた従来方式と比較してデータ転送量はかなり低減されることになる。
【０００７】
【発明が解決しようとする課題】
しかしながら、本画像処理装置を用いて画像データ処理の高速化を図り、処理時間を更に短縮しようとする要請は未だ強いものがある。そして、この課題の解決を図る際には、考慮すべき条件が存在する。
【０００８】
標準の圧縮方式であるＪＰＥＧ方式ではＭＣＵ（Minimum Coded Unit）と呼ばれるブロック単位で圧縮などの処理が行われ、このＭＣＵの大きさは通常８×８のブロック、あるいは８の整数倍のブロックが用いられる。
【０００９】
このため、イメージプロセス処理部５から画像データをＪＰＥＧ処理部６に渡す際には、その画像データを所定サイズのＭＣＵブロックに分割してＪＰＥＧ処理部６に受け渡す必要がある。この条件に加えて更に、ＪＰＥＧ処理部６で圧縮されたデータを元の画像データとして復元できるようにするためには、イメージプロセス処理部５は分割された画像データを所定の順序でＪＰＥＧ処理部６に受け渡さなければならない。
【００１０】
従って、本画像処理装置において画像データ処理時間の短縮を図ろうとする場合には、前述の制約を充足しＪＰＥＧ処理部６の動作が保障できるような形態での方策でなければならず、望ましくはＪＰＥＧ処理部６の動作に変更が生じないような形態での方策が求められる。
【００１１】
本発明は、かかる事情に鑑みてなされたものであって、画像データの処理時間を短縮することができ、ＪＰＥＧ処理部６の構成に変更を伴わない画像処理装置を提供することにある。
【００１２】
【課題を解決するための手段】
上記課題を解決するための本発明は、供給された画像データを処理するための直列に接続された画像処理手段と該画像処理手段により得られた画像形成に係るデータを圧縮処理する画像圧縮処理手段を有する画像処理装置であって、画像データを格納するメモリと、前記画像圧縮処理手段で画像表示以外に用いるデータを生成する際、前記画像圧縮処理手段で圧縮処理するときの基本データサイズであるＭＣＵのサイズに対して垂直方向のデータサイズを整数（２以上の自然数）倍したものに周辺データを付加した垂直データサイズとした画像データを水平方向に連続的に前記メモリから順次前記画像処理手段へ供給するデータ供給手段と、画像表示以外に用いるデータを生成するために前記画像圧縮処理手段に供給する場合には、前記画像処理手段により得られた画像形成に係るデータを前記基本データサイズに分割すると共に、分割して得られた前記基本データサイズのデータを、画像表示に用いるデータを生成するために前記画像圧縮処理手段に供給する場合とは異なる順序で前記画像圧縮処理手段へ供給する順序変更手段と、を備えた画像処理装置である。
【００１３】
また本発明は、上記記載の発明である画像処理装置において、前記データ供給手段により供給されるデータサイズに対応した処理を行ない得るように前記画像処理手段及び前記順序変更手段の処理動作を設定する設定手段を更に備えた画像処理装置である。
【００１４】
また本発明は、上記記載の発明である画像処理装置において、前記画像圧縮処理手段は、前記生成された画像表示以外に用いるデータの圧縮結果を用いて前記表示に用いるデータを生成するために圧縮処理を行い、前記順序変更手段は、前記基本データサイズに分割されたデータを、初回の圧縮処理と以降の圧縮処理とで異なる順序で前記画像圧縮処理手段へ供給する画像処理装置である。
【００１５】
また本発明は、上記記載の発明である画像処理装置において、画像データは、撮像により得られ、画像圧縮処理手段は、ＪＰＥＧ方式によって画像形成に係るデータを圧縮する画像処理装置である。
【００１６】
【発明の実施の形態】
発明者は、前述の課題を達成するためにイメージプロセス処理部５における処理時間の遅延要因について調査を重ねるとともに粘り強く検討を続け、ＪＰＥＧ処理部６に影響を及ぼさない対応策である本発明に想到したものである。
【００１７】
先ず、イメージプロセス処理部５における処理時間を遅延させる一要因について説明する。
【００１８】
図１は、イメージプロセス処理部５において処理されるデータの容量を示す図である。
【００１９】
データ量１１はフレームメモリ４から読み出した画像データの容量を示している。この画像データは後述する理由によりＪＰＥＧ処理部６に入力するデータ量１４よりも大きなデータ容量である。そして、イメージプロセス処理部５の初段イメージプロセス回路部５ー１から最終段イメージプロセス回路部５ーｎ迄、順次データ処理される間に画像データの容量はデータ量１２、・・・、１３と減少する。
【００２０】
このようにデータ容量が減少するのはイメージ処理を行うために余分なデータが必要とされるためである。例えば、イメージプロセス処理部５において空間フィルタ処理をする場合には、処理すべきデータの周囲の何点かのデータを用いて計算する必要があり、その余分なデータはフィルタ処理後は不要なものとして除去されるからである。
【００２１】
図２は、メージプロセス処理部５における画像データの入出力状態を説明する図である。
【００２２】
前述のように、イメージプロセス処理部５の入力データは、ＪＰＥＧ処理部６に渡すＭＣＵブロックで構成されるデータ部分１５である８×８ｎの容量に、データ処理にのみ必要とされる余分なデータ部分１６であるα×８ｎ容量が付加されている。そして、このデータに続いてイメージプロセス処理部５に入力されるデータも同様に、ＪＰＥＧ処理部６に渡すＭＣＵブロックで構成されるデータ部分１７に余分なデータ部分１８が付加されたものである。
【００２３】
従って、イメージプロセス処理部５に入力されるデータは常に重複した余分なデータを伴っており、フレームメモリ４から画像データが読み出される回数が多くなればそれだけ多くの余分なデータ転送が発生していることになる。
【００２４】
図３は、従来方式による画像データ２０の転送順序を示す図である。
【００２５】
図３の（１）は、画像データ２０をＭＣＵブロックに分割した状態を示しており、縦方向に（Ｙ＋α）ピクセルの大きさを単位として、図中に示した矢印の順序、即ちＭＣＵ１、２、・・・、５、６、・・・、９、１０、・・・の順序で読み出される。ここで、Ｙは１つのＭＣＵブロックの縦方向のピクセルサイズを表している。
【００２６】
図３の（２）は、イメージプロセス処理部５を流れる画像データのブロックの順序を示している。ＪＰＥＧ処理部６はこの矢印で示される順序、即ちＭＣＵ１、２、３、・・・の順序で入力されるブロックを順次受入れて圧縮処理した後に、フレームメモリ４に転送する。
【００２７】
以上のような現状の処理構成に対して、さらに高速な処理を実現する方法として、発明者は余分なデータ部分に着目した。
【００２８】
ここで、オーバラップ量Ｌを式（１）で定義する。
【００２９】
Ｌ  ＝  α／（Ｙ＋α）                  ・・・（１）
この式（１）は、データを処理すべき時間の内、余分なデータを処理するために費やされる時間の割合を表している指標である。
【００３０】
従って、このオーバラップ量Ｌを小さくすることができれば、無駄なデータ処理時間を減少して、必要なデータのみの処理時間に近づかせることができるため処理の高速化を実現することができる。
【００３１】
ここで、このオーバラップ量Ｌに用いられるαは、イメージプロセス処理部５において用いられる処理方法が決まれば固定的に決まってしまう値である。例えば、フィルタフィルタタップ数が６のＬＰＦ（ローパスフィルタ）処理が施される場合はαには５が加算されることになり、フィルタタップ数が４のＬＰＦ（ローパスフィルタ）処理が施される場合はαには３が加算されることになる。このため、フィルタタップ数の小さいイメージプロセス回路を使用することで相対的にオーバラップ量Ｌを小さくすることは可能であるが、それでは本来必要とされる精度での処理機能が充足されない場合も考えられ、対策として採用することはできない。
【００３２】
そこで、縦方向のピクセル数であるＹを、現状のように１つのＭＣＵブロックのサイズでなく複数のＭＣＵサイズ即ち、ＭＣＵサイズの整数倍に設定してＹを大きくすることで相対的にオーバラップ量Ｌを小さくする方式を採用する。
【００３３】
図４は、本発明の方式による画像データ２０の転送順序を示す図である。
【００３４】
図４の（１）は、画像データ２０を複数のＭＣＵブロックにまとめて分割した状態を示しており、従来の分割方法と比べて、縦方向には複数のＭＣＵのピクセル数に対応したサイズにＹを設定した点が異なっている。そして、このデータは縦方向に（Ｙ＋α）ピクセルの大きさを単位として、図中に示した矢印の順序、即ち（ＭＣＵ１、６、１１）、（ＭＣＵ２、７、１２）、（ＭＣＵ３、８、１３）・・・の順序で読み出される。
【００３５】
図４の（２）は、イメージプロセス処理部５に入力される画像データのブロックの順序、即ち上記と同じ（ＭＣＵ１、６、１１）、（ＭＣＵ２、７、１２）、（ＭＣＵ３、８、１３）・・・の順序を示している。図４の（３）は、イメージプロセス処理部５から出力される画像データのＭＣＵブロックの順序、即ちＭＣＵ１、６、１１、２、７、１２、３、８、１３・・・の順序を示している。ＪＰＥＧ処理部６はこの順序で入力されるＭＣＵブロックを圧縮処理して、フレームメモリ４に転送する。
【００３６】
尚、図４の（３）の順序はこの実施形態に限定されず、ＭＣＵ１、６、１１、１２、７、２、３、８、１３・・・の順序でプロセス処理部５から出力するように構成しても良い。
【００３７】
このように、複数ブロックを転送する方式とすれば、オーバラップ量Ｌを小さくすることができ、処理の高速化が実現できる。しかしながら、この方式を採用するためには、次の２つの点を検討しなければならない。
【００３８】
第1の点は、イメージプロセス処理部５に転送されるデータの容量が従来よりも増加することである。この点に関しては、従来のイメージプロセス処理部５の構成では、本程度のデータ容量の増加に対応できるだけの十分な容量の内部バッファが備わっているため、本方式を採用したとしてもハードウエアを大幅に改造することなく小修正で処理することができる。
【００３９】
第２の点は、転送されるＭＣＵブロックの順序が変更になることである。転送順序が変更されることによって画像を組立てる順序が入れ替わることになるため、例えば従来のままの順序に従って組み立てた画像をモニタに表示すると丁度ジグゾーパズルの破片が適当な状態に納まっていないような画像が表示されてしまうことになる。
【００４０】
この不具合を解決するためには、データの転送順序をイメージプロセス処理の途中で変更させることが考えられるが、本発明では従来のハードウエアの構成を変更することなく対応させることを目的とするため、ＪＰＥＧ処理部６において転送されるデータブロックの順序が変更された場合にあっても圧縮処理が可能かどうかを検討する。以下に、通常時におけるＪＰＥＧ処理部６の所謂反復アプローチ法による圧縮動作について説明する。
【００４１】
図５は、ＪＰＥＧ処理部６の概略の動作を示すフロー図である。
【００４２】
先ずＪＰＥＧ処理部６は、この画像処理装置の操作者が設定した圧縮率を読出し、それを圧縮率の目標値とする（Ｓ１）。続いて、所定の初期値に設定された圧縮処理用のパラメータ（例えば、スケールファクタ等）の下で、第1パス目のデータ圧縮を行う（Ｓ２）。そして、圧縮した画像のデータ容量と原画像のデータ容量との比を求め、この圧縮実績値に基づいて目標とする圧縮率を達成するための２パス目のパラメータの値を算出する（Ｓ３）。
【００４３】
図６は、圧縮率とパラメータの関係を示す図である。
【００４４】
本図で縦軸は圧縮率を表し、横軸はパラメータ値を表している。同じパラメータ値であっても画像の複雑さによって圧縮される容量は異なり、図に示すように、その画像の複雑さによって特性曲線２２、２３、２４はそれぞれ異なった特性の曲線となる。
【００４５】
そこで、予め実験などで得た複数の特性曲線を基準線として、１パスでの圧縮実績値とパラメータの初期値とからその画像に適合する特性曲線２３を特定する。そして、その特性曲線２３に従って目標の圧縮率を与えるパラメータの修正値を求める。
【００４６】
そして、こうして算出したパラメータの修正値を用いて、２パス目のデータ圧縮を行う（Ｓ４）。２パス目の圧縮で目標とする圧縮率が達成できなかった場合（Ｓ５）は、所定のアルゴリズムによるパラメータの微調整を行って、次パスのためのパラメータ値を決定し（Ｓ６）、そのパラメータに基づいて次パスのデータ圧縮を行う（Ｓ７）。このように、ＪＰＥＧ処理において所望の圧縮率を得るためには少なくとも２回の圧縮処理が必要とされている。
【００４７】
発明者は、このＪＰＥＧ処理の動作において、１パス目に処理される画像データは初期パラメータ値の下での圧縮率算出用にのみ使用され、表示などの他の用途に使用されていないことに着目した。そうとすれば、前述の転送順序が変更されたデータであっても１パス目のデータとして使用することが可能であることが結論される。
【００４８】
本発明は以上の検討と考察に基づいて創出されたものであり、前記課題を達成するため次のように構成されている。
【００４９】
図７は本発明の実施形態に係る画像処理装置の構成を示すブロック図である。本図において、図９と同一の構成部分には同一の符号を付してその詳細な説明は省略する。
【００５０】
本実施の形態では図９に示した構成に対して、画像データをフレームメモリ４からイメージプロセス処理部５に転送する方式を選択する手段である選択部７と、イメージプロセス処理部５からＪＰＥＧ処理部６に受け渡す画像データの順序を変更する順序変更部８とを更に設けた点が異なっている。
【００５１】
この構成の画像処理装置において高速にイメージプロセス処理を行う方法について説明する。
【００５２】
図８は、画像処理装置の概略の手順を示すフロー図である。
【００５３】
画像を圧縮処理しようとする際には、選択部７はＣＰＵ２からの指令に基づいてイメージプロセス処理部５と順序変更部８に対して、前述の複数ＭＣＵブロックを転送する方式（以下、「高速処理モード」という）を行う旨の指示と、その高速処理モードを実行する場合に必要となる各パラメータ値を設定する（Ｓ１０）。
【００５４】
このパラメータとしては、例えば、転送する複数ＭＣＵブロックの数、送信するピクセル数、イメージプロセス回路のフィルタタップ数などがある。
【００５５】
そして、ＣＰＵ２はフレームメモリ４から複数ＭＣＵブロックを単位とする画像データを読み出し、イメージデータ処理にのみ必要とされる余分なデータと共にイメージプロセス処理部５に転送する（Ｓ１１）。
【００５６】
各段のイメージプロセス回路部５ー１、・・・、５−ｎでは転送された複数ＭＣＵブロックの画像データを予めＣＰＵ２から指示されたパラメータ値に従って処理する（Ｓ１２）。そして順序変更部８は、最終段のイメージプロセス回路部５ーｎがイメージ処理した画像データ中の複数ＭＣＵブロックを分割して単数のＭＣＵブロックとし、ＭＣＵ単位に順次ＪＰＥＧ処理部６に送り出す（Ｓ１３）。
【００５７】
ＪＰＥＧ処理部６は、前述の圧縮手順に従い１パス目の圧縮処理を行い（Ｓ１４）、その結果得られる圧縮実績値に基づいて２パス目の圧縮のためのパラメータ値を算出する（Ｓ１５）。
【００５８】
続いて、選択部７はＣＰＵ２の指令に基づいてイメージプロセス処理部５と順序変更部８に対して、単一のＭＣＵブロックを順次転送する方式（以下、「通常処理モード」という）を行う旨の指示と、その通常処理モードを実行する場合に必要となる各パラメータ値を設定する（Ｓ１６）。
【００５９】
そして、ＣＰＵ２はフレームメモリ４から単一のＭＣＵブロックを含んだ画像データを読み出し、イメージデータ処理のみに必要とされる余分なデータと共にイメージプロセス処理部５に転送する（Ｓ１７）。
【００６０】
各段のイメージプロセス回路部５ー１、・・・、５−ｎでは転送された画像データを予め指示された通常処理モードのパラメータ値に従って処理し、順序変更部８は最終段のイメージプロセス回路部５ーｎがイメージ処理した画像データの順序を変更せずにＪＰＥＧ処理部６に送り出す（Ｓ１８）。
【００６１】
ＪＰＥＧ処理部６は、前述の手順に従い２パス目以降の圧縮処理を行い（Ｓ１９）、その圧縮データをフレームメモリ４に転送する（Ｓ２０）。
【００６２】
このようにして、通常１つのＭＣＵ単位に処理されているイメージプロセス処理を、複数のＭＣＵをまとめて処理するように構成することにより、高速なパイプライン方式によるイメージ処理を更に高速化することができる。
【００６３】
またＪＰＥＧ圧縮処理の１パス目にこのように構成した処理方式を適用させることにより、従来のハードウエアを大幅に改造することなく処理の高速化を図ることができる。
【００６４】
尚、実施例では本発明は撮像装置に適用して記載しているが、この例に限定されるものではなく空間フィルタリング処理などのように余分なデータを用いて処理を行う機能を備えた画像処理装置に広く適用することが可能である。また、圧縮処理の例としてＪＰＥＧ処理方式について記載したが、この例に限定されるものではなく反復アプローチ方式を採用している圧縮方式に広く適用することが可能である。
【００６５】
【発明の効果】
以上説明したように、本発明によれば画像データの処理時間をＪＰＥＧ処理部の構成に変更を伴わずに短縮することができる。
【図面の簡単な説明】
【図１】イメージプロセス処理部において処理されるデータの容量を示す図。
【図２】イメージプロセス処理部における画像データの入出力状態を説明する図。
【図３】従来方式による画像データの転送順序を示す図。
【図４】本発明の方式による画像データの転送順序を示す図。
【図５】ＪＰＥＧ処理部の概略の動作を示すフロー図。
【図６】圧縮率とパラメータの関係を示す図。
【図７】本発明の実施形態に係る画像処理装置の構成を示すブロック図。
【図８】画像処理装置の概略の手順を示すフロー図。
【図９】従来の画像処理装置の構成を示すブロック図。
【符号の説明】
１…バス
２…ＣＰＵ
４…フレームメモリ
５…イメージプロセス処理部
６…ＪＰＥＧ処理部
１４…ＪＰＥＧ処理部に入力するデータ量
１５…ＭＣＵブロックで構成されるデータ部分
１６…データ処理にのみ必要とされるデータ部分
２０…画像データ
【図１】
0004179777.tif 000002
【図２】
0004179777.tif 000003
【図３】
0004179777.tif 000004
【図４】
0004179777.tif 000005
【図５】
0004179777.tif 000006
【図６】
0004179777.tif 000007
【図７】
0004179777.tif 000008
【図８】
0004179777.tif 000009
【図９】
0004179777.tif 000010