(57)【要約】【課題】画像処理時のメモリアクセス量を低下させるために固定長符号を用いても、元画像に対するエッジの再現性を高めることができる符号化装置を提供する。【解決手段】画像分割手段、画像ブロックに対応する周波数変換係数を出力する周波数変換手段、周波数変換係数の絶対値を所定条件に適合する条件適合周波数変換係数とする条件適合周波数変換係数特定手段、適画素に対応する周波数変換係数の値を個別に制限する制限値群を選択する制限値選択手段、選各制限値を用いて周波数変換係数の値を制限するする制限処理手段と、制限処理が実行された後の周波数変換係数を固定長符号として符号化する符号化手段、を有し、制限処理手段は、周波数変換係数に含まれる条件適合周波数変換係数に対する制限処理においては、選択された制限値群に含まれている制限値よりも小さい値を用いて条件適合周波数変換係数の値を制限する、符号化装置による。【選択図】図４
2020088467.tif 000002
【特許請求の範囲】
【請求項１】
複数の画素を含む画像を所定の数の画素数で分割した画像ブロックを固定長符号にする符号化装置であって、
前記画像ブロックを生成する画像分割手段と、
前記画像ブロックに対する周波数変換処理を行い、当該画像ブロックに対応する周波数変換係数を出力する周波数変換手段と、
前記画像ブロックに含まれる各画素に対応する前記周波数変換係数の絶対値が所定条件に適合する周波数変換係数を条件適合周波数変換係数として特定する条件適合周波数変換係数特定手段と、
前記条件適合周波数変換係数に基づいて、前記画素に対応する前記周波数変換係数の値を個別に制限するための制限値を含む制限値群を選択する制限値選択手段と、
選択された制限値群に含まれる各制限値を用いて、前記周波数変換手段により出力された周波数変換係数の値を制限する制限処理を実行する制限処理手段と、
前記制限処理が実行された後の周波数変換係数を固定長符号として符号化する符号化手段と、
を有し、
前記制限処理手段は、前記周波数変換係数に含まれる前記条件適合周波数変換係数に対する制限処理においては、選択された前記制限値群に含まれている制限値よりも小さい値を用いて前記条件適合周波数変換係数の値を制限する、
ことを特徴とする符号化装置。
【請求項２】
条件適合周波数変換係数特定手段は、所定の上限以上かつ所定の下限未満の周波数変換係数の絶対値を並べ替えの対象から除外したものを条件適合周波数変換係数の対象とする、
請求項１に記載の符号化装置。
【請求項３】
前記条件適合周波数変換係数特定手段は、前記所定条件として、前記絶対値が大きいものから順に三個の周波数変換係数を条件適合周波数変換係数として特定する、
請求項１又は２に記載の符号化装置。
【請求項４】
前記符号化手段は、前記周波数変換係数に含まれる前記条件適合周波数変換係数のパターンに基づいて、前記制限処理が実行された周波数変換係数の固定長符号化フォーマットを決定し、当該固定長符号化フォーマットに基づいて前記周波数変換係数を固定長符号にする、
請求項１乃至３のいずれか一項に記載の符号化装置。
【請求項５】
前記符号化が固定長符号化フォーマットの決定に用いる前記条件適合周波数変換係数のパターンは、前記条件適合周波数変換係数に対応する前記画素の配置である、
請求項４に記載の符号化装置。
【請求項６】
複数の画素を含む画像を所定の数の画素数で分割した画像ブロックに対応する固定長符号を前記画像に復号化する復号化装置であって、
前記固定長符号を解析し、当該固定長符号に係るパターンを特定し、当該固定長符号に含まれる各周波数変換係数を特定する符号解析手段と、
前記符号解析手段において特定された前記パターンと、特定された前記周波数変換係数に基づいて、前記画像ブロックに対応した配列を有する周波数変換係数を生成する周波数変換係数生成手段と
前記符号解析手段において特定された前記パターンに基づいて逆量子化テーブルを選択し、当該逆量子化テーブルにより前記周波数変換係数に対する逆量子化処理を行う逆量子化手段と、
前記逆量子化手段において生成される周波数変換係数に対して逆周波数変換処理を行い、当該周波数変換係数に係る画像ブロックを生成する逆周波数変換処理手段と、
前記逆周波数変換処理手段において生成された前記画像ブロックを統合して画像を生成する画像ブロック統合手段と、
を有することを特徴とする復号化装置。
【請求項７】
複数の画素を含む画像を所定の数の画素数で分割した画像ブロックにし、
前記画像ブロックに対する周波数変換処理を行い、
当該画像ブロックに対応する周波数変換係数を出力し、
前記画像ブロックに含まれる各画素に対応する前記周波数変換係数の絶対値が所定条件に適合する周波数変換係数を条件適合周波数変換係数として特定し、
前記条件適合周波数変換係数に基づいて、前記画素に対応する前記周波数変換係数の値を個別に制限するための制限値を含む制限値群を選択し、
選択された制限値群に含まれる各制限値を用いて、前記周波数変換係数の値を制限する制限処理を実行するに当たり、前記周波数変換係数に含まれる前記条件適合周波数変換係数に対する制限処理においては、選択された前記制限値群に含まれている制限値よりも小さい値を用いて前記条件適合周波数変換係数の値を制限し、
前記制限処理が実行された後の周波数変換係数を固定長符号として符号化する、
ことを特徴とする符号化方法。
【請求項８】
複数の画素を含む画像を所定の数の画素数で分割した画像ブロックに対応する固定長符号を解析し、
当該固定長符号に係るパターンを特定し、
当該固定長符号に含まれる各周波数変換係数を特定し、
特定された前記パターンと、特定された前記周波数変換係数に基づいて、前記画像ブロックに対応した配列を有する周波数変換係数を生成し、
特定された前記パターンに基づいて逆量子化テーブルを選択し、
当該逆量子化テーブルにより前記周波数変換係数に対する逆量子化処理を実行し、
前記逆量子化処理において生成される周波数変換係数に対して逆周波数変換処理を行い、
当該周波数変換係数に係る画像ブロックを生成し、
生成された前記画像ブロックを統合して画像を生成する、
ことを特徴とする復号化方法。
【請求項９】
コンピュータにおいて、複数の画素を含む画像を所定の数の画素数で分割した画像ブロックを固定長符号にする処理を実行させる符号化プログラムであって、
前記画像ブロックを生成する画像分割部と、
前記画像ブロックに対する周波数変換処理を行い、当該画像ブロックに対応する周波数変換係数を出力する周波数変換部と、
前記画像ブロックに含まれる各画素に対応する前記周波数変換係数の絶対値が所定条件に適合する周波数変換係数を条件適合周波数変換係数として特定する条件適合周波数変換係数特定部と、
前記条件適合周波数変換係数に基づいて、前記画素に対応する前記周波数変換係数の値を個別に制限するための制限値を含む制限値群を選択する制限値選択部と、
選択された制限値群に含まれる各制限値を用いて、前記周波数変換部により出力された周波数変換係数の値を制限する制限処理を実行する制限処理部と、
前記制限処理が実行された後の周波数変換係数を固定長符号として符号化する符号化部と、
を含み、
前記制限処理部は、前記周波数変換係数に含まれる前記条件適合周波数変換係数に対する制限処理においては、選択された前記制限値群に含まれている制限値よりも小さい値を用いて前記条件適合周波数変換係数の値を制限する、
処理を実行させることを特徴とする符号化プログラム。
【請求項１０】
コンピュータにおいて、複数の画素を含む画像を所定の数の画素数で分割した画像ブロックに対応する固定長符号を前記画像に復号化する処理を実行させる復号化プログラムであって、
前記固定長符号を解析し、当該固定長符号に係るパターンを特定し、当該固定長符号に含まれる各周波数変換係数を特定する符号解析部と、
前記符号解析部において特定された前記パターンと、特定された前記周波数変換係数に基づいて、前記画像ブロックに対応した配列を有する周波数変換係数を生成する周波数変換係数生成部と
前記符号解析部において特定された前記パターンに基づいて逆量子化テーブルを選択し、当該逆量子化テーブルにより前記周波数変換係数に対する逆量子化処理を行う逆量子化部と、
前記逆量子化部において生成される周波数変換係数に対して逆周波数変換処理を行い、当該周波数変換係数に係る画像ブロックを生成する逆周波数変換処理部と、
前記逆周波数変換処理部において生成された前記画像ブロックを統合して画像を生成する画像ブロック統合部と、
を含む処理を実行させることを特徴とする復号化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、符号化装置、復号化装置、符号化方法、復号化方法、符号化プログラム及び復号化プログラムに関する。
【背景技術】
【０００２】
近年、デジタルカメラやＭＦＰ（Ｍｕｌｔｉ−Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）などにおいて様々な画像処理が行われる様になっている。これらの画像処理は、ＣＰＵや半導体メモリなどにより構成されるハードウェアを利用したソフトウェア処理によって実現される機能である。画像処理における処理対象のデータはデータサイズが大きくなりがちの画像データであり、また、処理内容も複雑かつ大量なものになる。
【０００３】
したがって、画像処理を実行中に半導体メモリへのアクセス処理が大量に発生するので、このアクセス量を低減させることが画像処理の効率化へとつながる。そこで、アクセス量の低減を図るためにメモリへのアクセス処理に用いられるデータのサイズをなるべく小さくする方法として、画像データを圧縮しデータ量を減少させる方法が知られている。その一例として、離散コサイン変換（ＤＣＴ：Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ）を利用して、離散信号である画像データを周波数領域に変換し、固定長のｂｉｔに符号化するデータ処理技術が知られている。
【０００４】
例えばデジタルカメラにおける画像処理を想定する。この場合、光学系を介して取得した被写体像に基づくＲＧＢ画像データをＹＵＶ画像データに変換して動画圧縮処理を行ない、動画像データを記録するための画像処理を必要とする。その中でも例えば、幾何変換を利用した歪曲補正処理を実行する場合などは、メモリアクセスが大量に発生するので、画像データを固定長ｂｉｔ列に符号化すれば、メモリアクセス処理毎のデータ量を低減につながる。
【０００５】
画像データの固定長符号化を行うにあたり、周波数変換処理により出力されるＤＣＴ係数から画像中のエッジの縦、横、斜めを認識し、ＤＣＴ係数のリミッタを切り替えてリミッタ処理を実行して固定長符号にする技術が開示されている（例えば、特許文献１）。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ＲＧＢ画像データから変換されたＹＵＶ画像データを固定長符号にする場合、当該固定長符号には、輝度成分（Ｙ成分）と２つの色差成分（Ｕ成分、Ｖ成分）のそれぞれ対応するｂｉｔ列が含まれる。したがって固定長符号のうち、元の画像に含まれているエッジが弱い部分（ＹＵＶ成分のスカラー量が低量又は中量の部分）に係る輝度（Ｙ）のＤＣＴ成分のｂｉｔ長をある長さにしなければ、復号化後の画像のエッジ部分がなまった状態になる。
【０００７】
一方、復号化の画像データに係る画質の劣化を抑制するために、低中スカラー量に係る部分の輝度のＤＣＴ成分のｂｉｔ長をある程度すると、Ｕ成分とＶ成分のＤＣＴ成分の（ｂｉｔ数）のｂｉｔ長を短くしなければならない。Ｕ成分とＶ成分のＤＣＴ成分のｂｉｔ長を短くする（データ量を少なくする）と、復号化後の画像において色の再現性が低下することになる。
【０００８】
また、特許文献１に開示されている技術では、ＤＣＴ係数から、エッジを縦、横、斜めの大きく三種類に分けて認識している。この技術では、各エッジの特徴を十分に把握することは困難である。また、特許文献１に開示されている技術は、ＤＣＴ係数を制限する制限値（リミッタ）が、ＤＣＴ係数のスカラー量に関わらず一律に設定されているので、ＤＣＴ係数に対するリミッタ処理が一律に行われる。この技術では、復号化後の画像に含まれるエッジの再現性に課題がある。
【０００９】
すなわち、特許文献１に代表される従来技術を用いても、画像処理を行うときのメモリアクセス量を低下させるために高い圧縮率を実現しつつ、画質への影響を抑制することには課題がある。
【００１０】
本発明は、画像処理時のメモリアクセス量を低下させるために固定長符号を用いても、元画像に対するエッジの再現性を高めることができる符号化装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記技術的課題を解決するため、本発明の一態様は、複数の画素を含む画像を所定の数の画素数で分割した画像ブロックを固定長符号にする符号化装置であって、前記画像ブロックを生成する画像分割手段と、前記画像ブロックに対して周波数変換処理を行い、当該画像ブロックに対応する周波数変換係数を出力する周波数変換手段と、前記画像ブロックに含まれる各画素に対応する前記周波数変換係数の絶対値が所定条件に適合する周波数変換係数を条件適合周波数変換係数として特定する条件適合周波数変換係数特定手段と、前記条件適合周波数変換係数に基づいて、前記画素に対応する前記周波数変換係数の値を個別に制限するための制限値を含む制限値群を選択する制限値選択手段と、選択された制限値群に含まれる各制限値を用いて、前記周波数変換手段により出力された周波数変換係数の値を制限する制限処理を実行する制限処理手段と、前記制限処理が実行された後の周波数変換係数を固定長符号として符号化する符号化手段と、を有し、前記制限処理手段は、前記周波数変換係数に含まれる前記条件適合周波数変換係数に対する制限処理においては、選択された前記制限値群に含まれている制限値よりも小さい値を用いて前記条件適合周波数変換係数の値を制限する、ことを特徴とする。
【発明の効果】
【００１２】
本発明によれば、画像処理時のメモリアクセス量を低下させるために固定長符号を用いても、元画像に対するエッジの再現性を高めることができる符号化装置を提供することを目的とする。画像処理時のメモリアクセス量を低下させるために固定長符号化を行っても、元画像への再現性を確保できる。
【図面の簡単な説明】
【００１３】
【図１】本発明に係る符号化装置及び復号化装置を適用可能な画像形成システムの実施形態を示す構成図。
【図２】上記画像形成システムの機能ブロック図。
【図３】本実施形態の処理対象となる画像データ（ａ）と固定長符号（ｂ）の例を示す図。
【図４】本発明に係る符号化装置の機能ブロックを示す図。
【図５】本実施形態に係るＤＣＴ係数のイメージを示す図。
【図６】本実施形態に係るＤＣＴ係数であって、特定の係数を区別したイメージを示す図。
【図７】本実施形態に係る符号化装置が用いる制限値群のイメージを示す図。
【図８】本実施形態に係る符号化装置が用いる制限値のデータ構造の例を示す図。
【図９】本実施形態に係る符号化装置において生成される固定長符号のフォーマットの例を示す図。
【図１０】本実施形態に係る符号化装置における固定長符号の生成のイメージを示す図。
【図１１】本発明に係る復号化装置の機能ブロックを示す図。
【図１２】本実施形態に係る復号化において固定長符号フォーマットからＤＣＴ係数に変換されるイメージを示す図。
【図１３】本実施形態に係る符号化装置が備える画像処理ブロックの機能構成図。
【図１４】本実施形態に係る符号化装置が備える可変長動画圧縮ブロックの機能構成図。
【図１５】本発明に係る符号化方法及び復号化方法を含む画像処理方法の実施形態を示すフローチャート。
【図１６】本発明に係る符号化方法の実施形態を示すフローチャート。
【図１７】本発明に係る符号化方法の詳細な実施形態を示すフローチャート。
【図１８】本発明に係る符号化方法の詳細な実施形態を示すフローチャート。
【図１９】本発明に係る符号化方法に含まれるリミッタ処理のイメージを示す図。
【図２０】本発明に係る復号化方法の実施形態を示すフローチャート。
【発明を実施するための形態】
【００１４】
［本発明の要旨］
まず、本発明の要旨について概説する。本発明に係る符号化装置は、離散コサイン変換（ＤＣＴ：Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ）を利用した周波数変換処理を適用して、画像データを固定長データに符号化する処理を行う装置である。また、本発明に係る復号化装置は当該符号化装置に対応し、固定長データを画像データに復号化させる装置である。以下、離散コサイン変換を「ＤＣＴ」と表記する。また、ＤＣＴを用いた周波数変換処理により得られる係数を「ＤＣＴ係数」と表記する。
【００１５】
本発明に係る装置では、画像データを１４４ｂｉｔの固定長ｂｉｔ列に符号化する。これを用いて画像処理を行うことでメモリアクセス処理に係るデータ量を減らすことで、メモリアクセスコストを低下させる。また、画像処理を行うＡＳＩＣ（Ａｐｐｌｉｃａｔｉｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）に適用することで、ＡＳＩＣの消費電流を低下させることもでき、ＡＳＩＣの冷却機構の簡素化や、画像処理装置の製造コストを下げることもできる。
【００１６】
本発明に係る符号化装置及び復号化装置において実行される符号化方法及び復号化方法は、画像を所定の画素サイズからなる画像ブロックに分割した上で、画像ブロックごとに固定長ｂｉｔ列（固定長符号）への符号化を行う。本発明では、固定長符号に含まれる高スカラー（スカラー量が大きい）の画像ブロックのＹ（輝度）のＤＣＴ係数を復号化後の画質が補償できる範囲で、可能な限り短いｂｉｔ長に抑えるようにする。
【００１７】
本発明に係る符号化方法及び復号化方法と同様に、ＤＣＴを利用した周波数変換処理を用いる従来技術では、例えば、画像データを８画素×８画素単位に分割した画像ブロックにＤＣＴを利用した周波数変換処理を実行してＤＣＴ係数を得る。このＤＣＴ係数に対して特徴判定を行い、ＤＣＴ係数の量子化後の固定長符号を行う前に、ｂｉｔ列の長さを整えるための「リミッタ処理のＴＹＰＥ」を特定して、ＤＣＴ係数を量子化する。量子化の後、リミッタ処理のＴＹＰＥに基づいてリミッタ処理を実行するなどの固定長符号化処理を実行する。このような従来技術では、ＤＣＴ係数において縦／横／斜め方向に特徴を抽出し、ＤＣＴ係数を制限するためのリミッタ処理に用いる制限値（リミッタ値）を変えながらリミッタ処理を実行する。
【００１８】
しかし、従来技術では、リミッタ処理において、ＤＣＴ係数のスカラー量には注目していないので、ＤＣＴ係数が有するスカラー量の差異（起伏）がリミッタ処理によって平坦化してしまう。その結果、そのリミッタ処理が行われた画像ブロックが有する特徴が無くなってしまい、特に高周波数を有する画像のエッジが劣化する。
【００１９】
この点、本発明に係る符号化装置によれば、ＹＵＶ画像データに対して、ＤＣＴを利用した周波数変換処理を行ってＤＣＴ係数を算出し、これを固定長符号にしてデータアクセス処理に係るメモリアクセス量を低減させることができる。また、本発明に係る復号化装置によれば、上記符号化装置によって生成された固定長符号を復号化することで画質の劣化を抑えることができる。すなわち、本発明に係る符号化装置及び復号化装置を用いることで、メモリアクセスが大量に発生する処理（例えば、画像データに対する歪曲補正処理などの幾何変換処理）を実行するときのメモリアクセス量を少なくしつつ、復号化後の画像の再現性も確保できる。以下、これらの特徴と実現し得る実施形態について説明する。
【００２０】
［本発明に係る符号化装置／復号化装置を備える装置の実施形態］
本発明に係る符号化装置及び復号化装置は、例えば、画像を撮影して処理する画像処理システムに適用可能なものである。以下、本発明に係る符号化装置及び復号化装置の実施形態を説明するための画像処理システムの構成例を図１に示す。以下の説明において、本実施形態に係る画像処理システムは、被写体像を撮像して記録する機能を備えるデジタルカメラ１とする。
【００２１】
本実施形態に係るデジタルカメラ１は、光学系２０、撮像素子３０、Ａ／Ｄコンバータ４０、画像処理を行うプロセッサ１０、メモリコントローラ５０、固定長用メモリ６０、動画像メモリ７０、を備える。
【００２２】
光学系２０は、光学レンズなどを備え、被写体像を撮像素子３０の撮影面に結像させる。光学系２０が備える光学レンズは、例えば広角レンズである。この光学レンズを二枚備えることで、１８０度の範囲の被写体の反射光を集光するように構成することもできる。
【００２３】
撮像素子３０は、光学系２０により集光された光を電気信号に変換して、当該画像信号を所定の時間間隔で適宜出力する光電変換素子である。撮像素子３０は、例えば、ＣＣＤセンサやＣＭＯＳセンサなどの固体撮影素子を用いることができる。
【００２４】
Ａ／Ｄコンバータ４０は、撮像素子３０から出力されてくる画像信号をデジタルデータ（画像データ）に変換してプロセッサ１０に適宜出力する。この画像データが後段のプロセッサ１０による画像処理の対象となる。
【００２５】
いわゆるコンピュータを構成するプロセッサ１０は、例えば、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）であって、歪曲補正処理などの幾何変換処理を含む画像処理を実行する。また、プロセッサ１０は、画像処理を行うにあたり、画像データの固定長符号に変換する符号化処理、固定長符号を画像データに復号化する復号化処理を実行する。
【００２６】
メモリコントローラ５０は、プロセッサ１０の処理により生成された固定長符号を一旦、固定長用メモリ６０に格納するときのデータ格納動作、固定長用メモリ６０に格納されている固定長符号の読出しの動作を制御する。
【００２７】
固定長用メモリ６０は、プロセッサ１０において実行される画像処理に用いられる固定長符号を、メモリコントローラ５０の制御によって格納／読み出しを行う不揮発性メモリである。固定長用メモリ６０には、例えば、ＤＤＲ−ＳＤＲＡＭ（Ｄｏｕｂｌｅ−ＤａｔａーＲａｔｅ  Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）を用いることができる。
【００２８】
動画像メモリ７０は、プロセッサ１０によって画像処理が行われて生成される動画像を記憶する不揮発性メモリである。動画像メモリ７０には、例えば、フラッシュメモリを用いることができる。
【００２９】
［プロセッサ１０の機能ブロック］
次に、プロセッサ１０の機能ブロックについて詳細に説明する。図２に示すように、プロセッサ１０によって構成される画像処理ブロック１００は、画像処理部１１０と、固定長符号化部１２０と、歪曲補正部１３０と、固定長復号化部１４０と、可変長動画圧縮部１５０と、を有する。
【００３０】
画像処理部１１０は、光学系２０、撮像素子３０及びＡ／Ｄコンバータ４０によって構成されるデータ入力部２００から出力されてくる画像データをＲＧＢ画像データにする画像処理を実行する。画像処理部１１０は、ＲＧＢ画像データを生成して固定長符号化部１２０に出力する。なお、画像処理部１１０の詳細については、後述する。
【００３１】
固定長符号化部１２０は、画像処理部１１０において生成されたＲＧＢ画像データに対する固定長符号化処理を実行する。したがって、固定長符号化部１２０によってＲＧＢ画像データが固定長符号に変換される。また、固定長符号化部１２０は、歪曲補正部１３０により生成された補正画像データ（補正後のＲＧＢ画像データ）に対して固定長符号化処理を実行する。固定長符号化部１２０は、補正後のＲＧＢ画像データから変換された固定長符号を一時記憶部３００に転送する。このとき、歪曲補正部１３０から指定されたアドレスに補正後の固定長符号を書き込むように指示する。固定長符号化部１２０の詳細については後述する。固定長符号化部１２０は、本発明に係る符号化装置の実施形態である。
【００３２】
歪曲補正部１３０は、一時記憶部３００に格納された補正前の固定長符号から固定長復号化部１４０により復号化された画像データを読み込んで、歪曲補正処理を実行する。歪曲補正部１３０は、歪曲補正処理によって生成された補正画像データを、固定長符号化部１２０に転送する。
【００３３】
固定長復号化部１４０は、歪曲補正部１３０から指定された固定長符号を一時記憶部３００から読み出して復号化して、歪曲補正部１３０に転送する。また、固定長復号化部１４０は、補正後の固定長符号を順次読み込んで復号化し、可変長動画圧縮部１５０に転送する。固定長復号化部１４０の詳細については後述する。固定長復号化部１４０は、符号化装置を構成する。
【００３４】
可変長動画圧縮部１５０は、固定長復号化部１４０から転送されてきた補正後のＲＧＢ画像データに対し、例えば、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）方式の動画圧縮処理を実行する。可変長動画圧縮部１５０は、動画圧縮処理により生成された動画像データを、動画像メモリ７０によって構成される画像データ格納部４００に転送する。可変長動画圧縮部１５０の詳細については、後述する。
【００３５】
［元画像データと固定長符の例］
ここで、本実施形態に係る画像処理ブロック１００における処理対象となる画像データと当該画像データに係る固定長符号の関係について、図３の模式図を用いて説明する。図３（ａ）は、画像処理対象となる元画像データ６０１を模式的に示している。元画像６０１データは、複数の画素により構成されている。図３（ｂ）は、元画像データ６０１を所定のサイズの画素数からなる画像ブロックに分割した画像ブロックを模式的に示している。この画像ブロック毎に固定長符号化の処理が実行されることになる。
【００３６】
デジタルカメラ１で撮影された被写体に係る元画像データ６０１を、４画素×４画素の画像ブロックに分割して、図３（ｂ）に例示するような画像ブロックを固定長符号の処理単位とする。したがって、本実施形態に係る固定長符号は、元画像データ６０１の４画素×４画素で構成される画像ブロックごとに生成される値に基づくものとなる。
【００３７】
［符号化装置の実施形態］
次に、本発明に係る符号化装置の実施形態に相当する固定長符号化部１２０の機能ブロックについてより詳細に説明する。図４に示すように、本実施形態に係る固定長符号化部１２０は、ブロック化部１２１と、ＹＵＶ変換部１２２と、ＤＣＴ変換部１２３と、３ＭＡＸ位置番号生成部１２４と、量子化部１２５と、量子化テーブル１２６と、リミッタ部１２７と、リミッタテーブル１２８と、符号化フォーマット生成部１２９と、を有する。
【００３８】
ブロック化部１２１は、画像処理部１１０から受け取るＲＧＢ画像データを、４画素×４画素からなる画像ブロックに分割する。画像ブロックのイメージは、図３を用いて説明したとおりである。ブロック化部１２１は、画像分割手段に相当し、画像分割部を構成する。
【００３９】
ＹＵＶ変換部１２２は、ブロック化部１２１から渡される画像ブロック（４画素×４画素からなる画像ブロック）のそれぞれに対して、ＹＵＶ変換処理を実行する。したがって、ＹＵＶ変換部１２２において、４画素×４画素からなるＹＵＶ画像ブロックが形成される。このＹＵＶ画像ブロックが、ＹＵＶ変換部１２２からＤＣＴ変換部１２３に渡される。
【００４０】
ＤＣＴ変換部１２３は、ＹＵＶ画像ブロックに対し、ＤＣＴを利用した周波数変換処理を実行して、当該ＹＵＶ画像ブロックに係るＤＣＴ係数を生成する。ＤＣＴ変換部１２３は、生成したＤＣＴ係数を３ＭＡＸ位置番号生成部１２４と、量子化部１２５に渡す。ＤＣＴ変換部１２３は、周波数変換手段に相当し、周波数変換部を構成する。
【００４１】
ここで、ＤＣＴ変換部１２３において生成されるＤＣＴ係数の例を模式的に示す。なおＤＣＴ係数は、水平及び垂直の２次元のコサインカーブの周波数で構成される値である。各画素の空間周波数にＤＣＴ係数で示される周波数がどの程度含まれているかによって値が異なる。図５は、本実施形態に係るあるＹＵＶ画像ブロックをＤＣＴ係数の値によって区別した例である。これをＤＣＴ係数ブロック１０００とする。ＤＣＴ係数ブロック１０００は、４画素×４画素の各画素の領域を、輝度のＤＣＴ係数の値によって区別して表現したものである。
【００４２】
本実施形態では、ＤＣＴ係数の値の大きさに応じて、４つのレベルで区別している。これらを、第一レベルＤＣＴ係数１００１、第二レベルＤＣＴ係数１００２、第三レベルＤＣＴ係数１００３、第四レベルＤＣＴ係数１００４とする。
【００４３】
直流成分（ＤＣ）に相当する領域のＤＣＴ係数を、第一レベルＤＣＴ係数１００１とする。図５の例では、第一画素に相当する領域のＤＣＴ係数が第一レベルＤＣＴ係数１００１になっている。
【００４４】
画素に含まれる交流成分（ＡＣ）が低い領域のＤＣＴ係数を、第二レベルＤＣＴ係数１００２とする。図５の例では、第二画素と第五画素に相当する領域のＤＣＴ係数が第二レベルＤＣＴ係数１００２になっている。
【００４５】
画素に含まれる交流成分（ＡＣ）が中程度の領域のＤＣＴ係数を、第三レベルＤＣＴ係数１００３とする。図５の例では、第三画素、第四画素、第六〜第十画素、第十三画素と第十四画素が、第三レベルＤＣＴ係数１００３になっている。
【００４６】
画素に含まれる交流成分が高周波の領域のＤＣＴ係数を、第四レベルＤＣＴ係数１００４とする。図５の例では、第十一画素、第十二画素、第十五画素、第十六画素が、第四レベルＤＣＴ係数１００４になっている。なお、第四レベルＤＣＴ係数１００４は、固定長符号に含めない。
【００４７】
上記のように、画素ごとに区別されたＤＣＴ係数を含むＤＣＴ係数ブロック１０００は、画像ブロックを構成する各画素に対応するレベルのＤＣＴ係数のパターン（配置のパターン）によって、異なる複数のパターンを有するものとなる。このような特定のＤＣＴ係数の配置パターンをもった画像ブロックが、ＤＣＴ変換部１２３から３ＭＡＸ位置番号生成部１２４と量子化部１２５に渡される。
【００４８】
図４に戻る。３ＭＡＸ位置番号生成部１２４は、ＤＣＴ変換部１２３から受け取ったＤＣＴ係数ブロック１０００のうち、第三レベルＤＣＴ係数１００３の絶対値を大きいものから順に並べたとき、上位３位までに相当する三個の第三レベルＤＣＴ係数１００３を区別する。この「上位３位まで」が所定条件に相当する。また、３ＭＡＸ位置番号生成部１２４は、ＤＣＴ係数の絶対値が所定の上限以上かつ所定の下限未満ではない第三レベルＤＣＴ係数１００３以外は、処理対象にしない。すなわち、３ＭＡＸ位置番号生成部１２４は、所定条件において、処理対象を除外し、第三レベルＤＣＴ係数１００３に該当しない絶対値のものは、これを除外して処理を行う。この区別された第三レベルＤＣＴ係数１００３を、第五レベルＤＣＴ係数１００５とする。この第五レベルＤＣＴ係数１００５を含むＤＣＴ係数ブロック１０００を、３ＭＡＸＤＣＴ係数ブロック１１００とする。
【００４９】
たとえば、図５に示したＤＣＴ係数ブロック１０００に含まれる第三レベルＤＣＴ係数１００３の上位三個が、第三画素と第四画素及び第七画素に対応する領域のＤＣＴ係数だった場合、図６のような３ＭＡＸＤＣＴ係数ブロック１１００を得られる。なお、３ＭＡＸＤＣＴ係数ブロック１１００は、８４パターンに分類される。
【００５０】
図７は、３ＭＡＸＤＣＴ係数ブロック１１００の全パターンを例示している。なお、図７は、３ＭＡＸＤＣＴ係数ブロック１１００の区別ごとのリミッタ値の例示でもある。リミッタ値については、後述する。
【００５１】
３ＭＡＸＤＣＴ係数ブロック１１００は、第三レベルＤＣＴ係数１００３のうち第五レベルＤＣＴ係数１００５となるものの配置パターンによって、３ＭＡＸ位置番号が「１」から「８４」のいずれかに相当するものである。３ＭＡＸ位置番号生成部１２４は、３ＭＡＸＤＣＴ係数ブロック１１００に含まれている第五レベルＤＣＴ係数１００５の配置パターンが、図７に含まれる８４パターンの中のいずれに該当するかを特定する。そして、この特定されるものが「３ＭＡＸ位置番号」としてリミッタ部１２７と符号化フォーマット生成部１２９に転送される。３ＭＡＸ位置番号生成部１２４は、条件適合周波数変換係数特定手段に相当し、条件適合周波数変換係数特定部を構成する。
【００５２】
図４に戻る。量子化部１２５は、ＤＣＴ変換部１２３からＤＣＴ係数を受け取り、量子化テーブル１２６から量子化値を読み出して、４×４のＤＣＴ係数の量子化をする。量子化部１２５は、量子化したＤＣＴ係数をリミッタ部１２７に転送する。
【００５３】
量子化テーブル１２６は、量子化値を記憶している。量子化テーブル１２６に記憶されている量子化値は、量子化部１２５によって読み出される。
【００５４】
リミッタ部１２７は、３ＭＡＸ位置番号生成部１２４から受け取った３ＭＡＸ位置番号に基づいて、リミッタテーブル１２８を参照し、３ＭＡＸ位置番号に対応したリミッタ値を読み出す。ここで読み出されるリミッタ値は、四画素×四画素に対応して生成された四×四の係数群に対応する制限値群である。また、リミッタ部１２７は、量子化部１２５から受け取った量子化後のＤＣＴ係数に対し、リミッタ値を用いたリミッタ処理を行う。リミッタ部１２７は、リミッタ処理を行った量子化後のＤＣＴ係数を符号化フォーマット生成部１２９に転送する。リミッタ部１２７は、制限値群を選択する制限値選択手段に相当し、制限値選択部を構成する。また、リミッタ部１２７は、制限処理手段に相当し、制限処理部を構成する。
【００５５】
リミッタテーブル１２８は、３ＭＡＸ位置番号と、これに紐付けられているリミッタ値を記憶している。リミッタテーブル１２８に記憶されているリミッタテーブルデータ２０００の例を図７及ぶ図８に例示する。リミッタ値テーブルは、３ＭＡＸ位置番号をインデックスとして、これに対応するリミッタ値を記憶している。リミッタ値は４×４の３ＭＡＸＤＣＴ係数ブロック１１００に対応しているものである。なお、リミッタ値は、上述した、区別されたＤＣＴ係数（第一から第五）のそれぞれに対応する値として区別されてリミッタテーブル１２８に格納されている。
【００５６】
ここで、リミッタテーブルデータ２０００に含まれるリミッタ値について、図７を参照しながら説明する。なお、図７において、３ＭＡＸＤＣＴ係数ブロック１１００に含まれる各係数には符号は付していないが、図６に例示した各ブロックのパターン（横線、格子、斜線、塗りつぶし）に同様のパターンを用いて表記している。したがって、図７において横線パターンの係数は、第一レベルＤＣＴ係数１００１に相当する。斜線パターンの係数は、第二レベルＤＣＴ係数１００２に相当する。格子パターンの係数は、第三レベルＤＣＴ係数１００３に相当する。塗りつぶしの係数は、第五レベルＤＣＴ係数１００５に相当する。
【００５７】
リミッタ値は、３ＭＡＸＤＣＴ係数ブロック１１００に含まれる各ＤＣＴ係数に基づいて、以下のように個別に設定される。第一レベルＤＣＴ係数１００１は、直流成分（ＤＣ）であるから、最もリミッタレベルを高くし、ｂｉｔ長を短くしないように設定されている。第二レベルＤＣＴ係数１００２は、交流成分（ＡＣ）で一番低い波形であるから、二番目にリミッタレベルを高くし、ｂｉｔ長をあまり短くしないように設定されている。第三レベルＤＣＴ係数１００３は、交流成分が中くらいの波形であるから、ＤＣＴ係数のスカラー量が大きくない。そこで、第三レベルＤＣＴ係数１００３は、最もリミッタレベルを高くし、ｂｉｔ長を短くするように設定されている。第五レベルＤＣＴ係数１００５は、交流成分（ＡＣ）が中くらいの波形であって、ＤＣＴ係数のスカラー量は大きくない。そこで、第五レベルＤＣＴ係数１００５は、中度のリミッタレベルとし、ｂｉｔ長を少し短くするように設定されている。なお、第四レベルＤＣＴ係数１００４は、高周波であるかた固定長符号には含めない。したがって、リミッタ値は設定されていない。
【００５８】
符号化フォーマット生成部１２９は、リミッタ部１２７から渡された、リミッタ処理後のＤＣＴ係数を、図９に例示するような形式に変換するフォーマット変換処理を行う。符号化フォーマット生成部１２９は、フォーマット変換処理によって生成された固定長符号を、一時記憶部３００を構成する固定長用メモリ６０に記憶させる。符号化フォーマット生成部１２９は、符号化手段に相当する。
【００５９】
図９は、本実施形態に係る固定長符号のフォーマット（固定長符号化フォーマット）を例示している。図９に示すように、３ＭＡＸ位置番号を示すｂｉｔ（７ｂｉｔ）と、輝度のＤＣＴ係数に対応するｂｉｔ（９７ｂｉｔ）と、Ｕ成分のＤＣＴ係数に対応するｂｉｔ（２０ｂｉｔ）と、Ｖ成分のＤＣＴ係数に対応するｂｉｔ（２０ｂｉｔ）から構成される。本実施形態に係る固定長符号は、１４４ｂｉｔから構成される。
【００６０】
図１０は、符号化フォーマット生成部１２９において、リミッタ部１２７から渡されたＤＣＴ係数を、図９に示したフォーマットに基づいて固定長符号に変換した場合の例を示している。図１０（ａ）、図１０（ｂ）、図１０（ｃ）はそれぞれ、異なる３ＭＡＸ位置番号に対応する３ＭＡＸＤＣＴ係数ブロック１１００に対するリミッタ処理後の係数ブロックに基づく固定長符号を例示している。符号化フォーマット生成部１２９は、図１０に示すように各ブロックのＤＣＴ係数を並び替えて、３ＭＡＸ位置番号に基づいて符号化フォーマットを決定し、図１０に示したフォーマットの固定長を生成する。なお、図１０に示す３ＭＡＸＤＣＴ係数ブロック１１００内の数字は、固定長符号におけるｂｉｔ列の位置との対応を例示するために便宜上表記した数字である。
【００６１】
図１０（ａ）は、図７に示した３ＭＡＸＤＣＴ係数ブロック１１００のおける、３ＭＡＸ位置番号が「１」のものに対し、リミッタ部１２７においてリミッタ処理が行われたものを例示している。ＤＣＴ係数のレベルによって有効なｂｉｔ長が異なる。例えば、第一レベルＤＣＴ係数１００１は１１ｂｉｔ、第二レベルＤＣＴ係数１００２は１０ｂｉｔ、第五レベルＤＣＴ係数１００５は８ｂｉｔ、第三レベルＤＣＴ係数１００３は７ｂｉｔが有効なｂｉｔ長である。
【００６２】
図１０（ａ）に係る符号化フォーマットは、図９に示したものと同様であって、各ＤＣＴ係数ブロックをレベル毎に格納している。以上のように、符号化フォーマット生成部１２９は、３ＭＡＸ位置番号に対応したリミッタ処理が行われた画素ブロックのＤＣＴ係数に対する符号化処理を実行する。
【００６３】
［復号化装置の実施形態］
続いて、本発明に係る復号化装置の実施形態に相当する固定長復号化部１４０の詳細な機能ブロックについて図１１を用いて説明する。図１１に示すように、本実施形態に係る固定長復号化部１４０は、符号解析部１４１と、ＤＣＴ係数ソート部１４２と、逆量子化部１４３と、逆量子化テーブル１４４と、逆ＤＣＴ変換部１４５と、ＲＧＢ変換部１４６と、逆ブロック化部１４７と、を有する。
【００６４】
符号解析部１４１は、一時記憶部３００から読み出した図９に示したフォーマットからなる固定長符号を読み出して、３ＭＡＸ位置番号と各ＤＣＴ係数に対応するｂｉｔ列から、それぞれＤＣＴ係数の値を特定し、ＤＣＴ係数ソート部１４２に転送する。符号解析部１４１は、符号解析手段に相当する。
【００６５】
ＤＣＴ係数ソート部１４２は、３ＭＡＸ位置番号から輝度のＤＣＴ係数を変換し、逆量子化部１４３に輝度のＤＣＴ係数を転送する。ＤＣＴ係数ソート部１４２は、符号解析部１４１において特定された第三レベルＤＣＴ係数１００３の配置パターンと、解析された各周波数変換係数に基づいて、画像ブロックに対応した配列を有する周波数変換係数を生成する。ＤＣＴ係数ソート部１４２は、周波数変換係数生成手段に相当し、周波数変換係数生成部を構成する。
【００６６】
ＤＣＴ係数ソート部１４２における処理について、図１２を用いて説明する。図１２は、図１０に示した図とは逆に、固定長フォーマットのｂｉｔ列から、３ＭＡＸ位置番号を抽出し、固定長符号から３ＭＡＸＤＣＴ係数ブロック１１００へ変換する様子を例示している。ＤＣＴ係数ソート部１４２は、図１２に示すように、固定長フォーマットから３ＭＡＸＤＣＴ係数ブロック１１００への変換を行い、変換された３ＭＡＸＤＣＴ係数ブロック１１００を逆量子化部１４３に転送する。
【００６７】
逆量子化部１４３は、３ＭＡＸＤＣＴ係数ブロック１１００に含まれる輝度のＤＣＴ係数と、Ｕ成分のＤＣＴ係数及びＶ成分のＤＣＴ係数に対し、逆量子化テーブル１４４から読み出した逆量子化値を用いて逆量子化処理を実行する。逆量子化部１４３は、逆量子化処理の結果を、逆ＤＣＴ変換部１４５に転送する。逆量子化部１４３は、逆量子化手段に相当する。
【００６８】
逆量子化テーブル１４４には、ＤＣＴ係数を量子化するための量子化値が格納されている。
【００６９】
逆ＤＣＴ変換部１４５は、逆量子化部１４３から渡された「逆量子化処理の結果として得られた輝度、Ｕ成分、Ｖ成分のＤＣＴ係数」に基づいて逆ＤＣＴ変換処理を実行する。これによって、ＹＵＶ画像データが得られるので、このＹＵＶ画像データをＲＧＢ変換部１４６に転送する。逆ＤＣＴ変換部１４５は、逆周波数変換処理手段に相当し、逆周波数変換処理部を構成する。
【００７０】
ＲＧＢ変換部１４６は、転送されてきたＹＵＶ画像データに対するＲＧＢ画像データへの変換処理を実行する。ＲＧＢ変換部１４６によって、４画素×４画素の画素ブロックからなるＲＧＢ画像データが出力される。
【００７１】
逆ブロック化部１４７は、ＲＧＢ変換部１４６から渡された画素ブロックを２次元の画像データに展開して、ＲＧＢ画像データを生成する。逆ブロック化部１４７は、生成したＲＧＢ画像データを一時記憶部３００に転送する。逆ブロック化部１４７は、画像ブロック統合手段に相当し、画像ブロック統合部を構成する。
【００７２】
［画像処理部１１０の詳細な機能ブロック］
ここで、本実施形態に係る画像処理部１１０の詳細な機能ブロックについて図１３を用いて説明する。図１３に示すように、画像処理部１１０は、Ｂｙａｅｒ補正処理部１１１と、フィルタ処理部１１２と、を有する。
【００７３】
Ｂｙａｅｒ補正処理部１１１は、データ入力部２００から画像データを受け取り、ベイヤー型の画像を読み込み補正して通常のＲＧＢ値を生成する。
【００７４】
フィルタ処理部１１２は、Ｂｙａｅｒ補正処理部１１１において生成されたＲＧＢ画像データにフィルタ処理を実行する。フィルタ処理後のＲＧＢ画像データは、固定長符号化部１２０に転送される。
【００７５】
［可変長動画圧縮部１５０の詳細な機能ブロック］
次に、本実施形態に係る可変長動画圧縮部１５０の詳細な機能ブロックについて、図１４を用いて説明する。図１４に示すように、可変長動画圧縮部１５０は、動き検索部１５１と、ＤＣＴ部１５２と、量子化処理部１５３と、可変長符号化部１５４と、逆量子化処理部１５５と、逆ＤＣＴ部１５６と、動き補償部１５７と、を有する。
【００７６】
動き検索部１５１は、固定長復号化部１４０から受け取った画像データと、動き補償部１５７からの相関が最も高い前フレームのブロックとの差分データを算出する。
【００７７】
ＤＣＴ部１５２は、動き検索部１５１で算出された差分データを空間周波数に変換し、量子化処理部１５３に転送する。
【００７８】
量子化処理部１５３は、周波数変換済みのＤＣＴデータを量子化し、可変長符号化部１５４に転送する。
【００７９】
可変長符号化部１５４は、量子化処理部１５３で生成された量子化データを可変長符号化して圧縮符号を生成する。可変長符号化部１５４は、生成した圧縮符号を画像データ格納部４００に格納する。
【００８０】
逆量子化処理部１５５は、量子化処理部１５３で生成された、「量子化されたブロック」に対し、逆量子化処理を実行する。逆量子化処理部１５５は、処理結果を、逆ＤＣＴ部１５６に転送する。
【００８１】
逆ＤＣＴ部１５６は、逆量子化処理部１５５から渡された逆量子化データに対して、逆周波数変換処理を実行する。逆ＤＣＴ部１５６は、逆周波数変換処理による処理結果を動き補償部１５７に転送するする。
【００８２】
動き補償部１５７は、動き補償した前フレームのマクロブロックに、逆ＤＣＴ部１５６から渡された差分データを加算して参照フレームを作成する。動き補償部１５７は、参照フレームを動き検索部１５１に転送する。
【００８３】
［符号化方法及び復号化方法の実施形態］
次に、本発明に係る符号化方法及び復号化方法の実施形態について説明する。図１５は、上記にて説明をしたデジタルカメラ１の動作の流れを例示している。本実施形態に係る符号化方法と復号化方法は、デジタルカメラ１のような画像処理装置において実行される一連の画像処理の中で行われる。
【００８４】
まず、光学系２０を介して被写体の反射光を撮像素子３０の撮像面に集光させ、撮像素子３０から出力される画像信号を取り込む（Ｓ１５０１）。続いて、Ａ／Ｄコンバータ４０によって、画像信号が画像データに変換されてプロセッサ１０に入力される（Ｓ１５０２）。続いて、プロセッサ１０において画像データ処理が実行される（Ｓ１５０３）。画像データ処理の詳細は後述する。プロセッサ１０における画像データ処理によって動画像データが生成されて出力され、動画像メモリ７０に格納される（Ｓ１５０４）。
【００８５】
［画像データ処理の詳細］
Ｓ１５０３における画像データ処理において、本発明に係る符号化方法及び復号化方法は適用される。したがって、当該画像データ処理を実行する画像処理プログラムに、本発明に係る符号化プログラム及び復号化プログラムが含まれる。以下、画像データ処理（Ｓ１５０３）の詳細について説明しつつ、符号化方法及び復号化方法、符号化プログラム及び復号化プログラムの実行についても言及する。
【００８６】
図１６は、Ｓ１５０３における画像データ処理の詳細な流れを示すフローチャートである。まず、固定長符号化部１２０においてＲＧＢ画像データが固定長符号に符号化される（Ｓ１６０１）。生成された固定長符号は、一時記憶部３００に一旦格納される（Ｓ１６０２）。続いて、一旦格納されている固定長符号を歪曲補正部１３０の指示に基づいて固定長復号化部１４０が読み出す（Ｓ１６０３）。
【００８７】
続いて、固定長復号化部１４０が、固定長符号を復号化する（Ｓ１６０４）。固定長符号からＹＵＶ画像データに復号化されたものを用いて、歪曲補正部１３０が歪曲補正処理を実行する（Ｓ１６０５）。
【００８８】
歪曲補正処理が行われたＹＵＶ画像データに対し、再度、固定長符号化処理が行われる（Ｓ１６０６）。生成された固定長符号は、一時記憶部３００に一旦格納される（Ｓ１６０７）。続いて、一旦格納されている固定長符号を可変長動画圧縮部１５０の指示に基づいて固定長復号化部１４０が読み出す（Ｓ１６０８）。
【００８９】
続いて、固定長復号化部１４０が、固定長符号を復号化する（Ｓ１６０９）。固定長符号からＹＵＶ画像データに復号化されたものを用いて、可変長動画圧縮部１５０が動画像データを生成する（Ｓ１６１０）。続いて、生成された動画像データを画像データ格納部４００に格納する（Ｓ１６１１）。
【００９０】
次に、固定長符号化処理（Ｓ１６０１、Ｓ１６０６）における詳細な処理の流れについて、図１７のフローチャートを用いながら説明する。
【００９１】
まず、画像処理部１１０によって生成されたＲＧＢ画像データをメモリから読み出して、ブロック化部１２１において、４画素×４画素の画像ブロックを生成し、ＹＵＶ変換部１２２に対して順次出力する（Ｓ１７０１）。
【００９２】
続いて、ＹＵＶ変換部１２２は、画像ブロックのそれぞれに対し、ＲＧＢ形式からＹＵＶ形式に変換するＹＵＶ変換処理を実行し、生成したＹＵＶ画像データをＤＣＴ変換部１２３に転送する（Ｓ１７０２）。
【００９３】
続いて、Ｓ１７０２においてＹＵＶ形式に変換された４画素×４画素のＹＵＶ画像ブロックに対し、ＤＣＴ変換部１２３が離散コサイン変換（ＤＣＴ）を利用した周波数変換処理を実行する（Ｓ１７０３）。ＤＣＴ変換部１２３は、周波数変換処理により生成したＤＣＴ係数を３ＭＡＸ位置番号生成部１２４と量子化部１２５に転送する。
【００９４】
続いて、生成された周波数変換係数（ＤＣＴ）係数に対し、３ＭＡＸ位置番号生成部１２４，量子化部１２５，リミッタ部１２７によるＤＣＴ形成制限処理が行われる（Ｓ１７０４）。ＤＣＴ制限処理の詳細は後述する。
【００９５】
最後に、符号化フォーマット生成部１２９において、固定長符号生成処理が実行される（Ｓ１７０５）。固定長符号生成処理の詳細は、図９及び図１０を用いながら説明をした符号化フォーマット生成部１２９の動作によるものである。
【００９６】
次に、ＤＣＴ係数制限処理（Ｓ１７０４）の詳細について、図１８のフローチャートを用いながら説明する。まず、ＤＣＴ変換処理（Ｓ１７０３）において、図５において例示したＤＣＴ係数ブロック１０００が生成されたものとする。これに対し、各ブロックのＤＣＴ係数の値に基づいて、各ブロックが、どのレベルのＤＣＴ係数に相当するかを判断する（Ｓ１８０１）。
【００９７】
続いて、３ＭＡＸ位置番号生成部１２４が、第三レベルＤＣＴ係数１００３に相当するＤＣＴ係数の絶対値が大きいものから順に並べ、その上位３つに相当する第三レベルＤＣＴ係数１００３を特定する（Ｓ１８０２）。
【００９８】
続いて、上位３つに相当する第三レベルＤＣＴ係数１００３を、第五レベルＤＣＴ係数１００５とする（図６参照）。そして、第五レベルＤＣＴ係数１００５の配置パターンが、図７に示したいずれのパターンに合致するかを判定し、合致したパターンの「３ＭＡＸ位置番号」を特定する（Ｓ１８０３）。特定された３ＭＡＸ位置番号はリミッタ部１２７と符号化フォーマット生成部１２９に転送される。
【００９９】
また、ＤＣＴ変換処理（Ｓ１７０３）において、生成されたＤＣＴ係数ブロック１０００に含まれるＤＣＴ係数に対して、量子化部１２５が量子化処理を実行する（Ｓ１８０４）。Ｓ１８０４において、量子化部１２５は、量子化テーブル１２６を参照して量子化値を特定し、ＤＣＴ係数ブロック１０００に含まれるＤＣＴ係数の量子化を行う。量子化したＤＣＴ係数は、リミッタ部１２７に転送される。
【０１００】
続いて、リミッタ部１２７において、ＤＣＴ係数を制限するリミッタ処理が実行される（Ｓ１８０５）。ここで、リミッタ処理（Ｓ１８０５）の効果について詳細について説明する。図１９は、リミッタ部１２７において実行される制限処理（Ｓ１８０５）の効果を説明するイメージ図である。図１９において、各画素に対応する位置に表記されている数字はＤＣＴ係数の例示である。
【０１０１】
図１９（ａ）から（ｄ）は、従来技術を用いてＤＣＴ係数の制限処理を行う場合を想定した比較例を示している。図１９（ｅ）から（ｈ）は、本発明に係る符号化処理における制限処理を行った場合の例である。
【０１０２】
図１９（ａ）と図１９（ｅ）は、それぞれ量子化前のＤＣＴ係数を例示している。図１９（ｅ）に示すように、第三レベルＤＣＴ係数１００３の一部が、第五レベルＤＣＴ係数１００５とされている。
【０１０３】
これらに対し量子化処理を実行したものが図１９（ｂ）と図１９（ｆ）である。そして、これらに対してリミッタ処理を実行したものが図１９（ｃ）と図１９（ｇ）である。最後にこれらに対して逆量子化処理を行ったものが図１９（ｄ）と図１９（ｈ）である。各図に示されている量子化前のＤＣＴ係数の値と、量子化後のＤＣＴ係数の値を参照すると、比較例では、第三レベルＤＣＴ係数１００３の値が大きく変化しているところ、本発明に係るものは、その変化が小さい。すなわち、本発明に係る方法であれば、固定長符号に圧縮した場合であっても、画像のエッジの再現性や色の再現性が高い。つまり、画像処理を実行するときの処理対象データを固定長符号にすることで、メモリへのアクセス量を減らし、処理の効率化を図るとともに、処理後の画像の質を高いレベルで維持できる。
【０１０４】
本実施形態に係る量子化部１２５では、第三レベルＤＣＴ係数１００３に対しては、３ｂｉｔシフト、第一レベルＤＣＴ係数１００１に対してはシフトなし、第二レベルＤＣＴ係数１００２に対しては１ｂｉｔシフト、第五レベルＤＣＴ係数１００５に対しては、２ｂｉｔシフト、第四レベルＤＣＴ係数１００４の値はゼロにする。なお、量子化部１２５におけるｂｉｔシフト処理は、すべて右シフトである。なお、逆量子化部１４３において実行される逆量子化処理においては、各レベルのＤＣＴ係数に対して同様に左シフト処理を行う。
【０１０５】
また、本実施形態に係るリミッタ部１２７では、第五レベルＤＣＴ係数１００５の値が「６３」以上の場合は、ＤＣＴ係数の値を「６３」に制限する。また、第二レベルＤＣＴ係数１００２及び第一レベルＤＣＴ係数１００１については、ＤＣＴ係数の値に関わらず制限はしない。また、第五レベルＤＣＴ係数１００５については、ＤＣＴ係数の値が「１２７」以上の場合は、値を「１２７」に制限する。
【０１０６】
以上のように、本実施形態に係る符号化方法では、特にＤＣＴ係数制限処理（Ｓ１７０４）において、量子化前の第三レベルＤＣＴ係数１００３の内、スカラー量が上位三位までのものである第五レベルＤＣＴ係数１００５に対して、リミッタ値を大きく設定している。これによって、逆量子化処理後も量子化前の値との差が小さく、特にスカラーが大きいＤＣＴ係数の特徴が維持されている。これに対し、比較例は、第三レベルＤＣＴ係数１００３の部分が平坦化してしまい、特徴が消えている。
【０１０７】
次に、固定長復号化処理（Ｓ１６０４、Ｓ１６０９）における詳細な処理の流れについて、図２０のフローチャートを用いながら説明する。
【０１０８】
まず、符号解析部１４１が一時記憶部３００から該当する固定長符号を読み出し、解析して、３ＭＡＸ位置番号と、各ＤＣＴ係数にｂｉｔ列を区別して、ＤＣＴ係数ソート部１４２に転送する（Ｓ２００１）。
【０１０９】
続いて、ＤＣＴ係数ソート部１４２が、３ＭＡＸ位置番号に基づいて図１２に例示したように、輝度のＤＣＴ係数への変換を行い、逆量子化部１４３に転送する（Ｓ２００２）。
【０１１０】
続いて、逆量子化部１４３が、逆量子化テーブル１４４を参照して、ＤＣＴ係数ソート部１４２から転送されてきた量子化された輝度、Ｕ成分、Ｙ成分、のＤＣＴ係数に対して、逆量子化処理を実行し、結果を逆ＤＣＴ変換部１４５に転送する（Ｓ２００３）。
【０１１１】
続いて、逆ＤＣＴ変換部１４５が、転送されてきたＤＣＴ係数に基づいて逆ＤＣＴ変換を行い、ＹＵＶ画像データを生成する。生成したＹＵＶ画像データはＲＧＢ変換部１４６に転送される（Ｓ２００４）。
【０１１２】
続いて、ＲＧＢ変換部１４６は、転送されてきたＹＵＶ画像データをＲＧＢ画像データに変換する（Ｓ２００５）。最後に、画像ブロックからなるＲＧＢ画像データ（４×４画素の画像ブロック）を、二次元データに展開したＲＧＢ画像データを生成し、一時記憶部３００に転送する（Ｓ２００６）。
【０１１３】
以上のように、ＤＣＴ係数のスカラー量に基づいて、所定の画像ブロックに相当するＤＣＴ係数を制限する処理を制御して、これを固定長符号にし、上記のように復号化することで、画像の質の低下を抑制しながら、高い圧縮率をもってデータ量を低減させることができる。
【０１１４】
なお、本発明は上述した各実施形態に限定されるものではなく、その技術的要旨を逸脱しない範囲で種々の変形が可能であり、特許請求の範囲に記載された技術思想に含まれる技術的事項の全てが本発明の対象となる。上記実施形態は、好適な例を示したものであるが、当業者であれば、開示した内容から様々な変形例を実現することが可能である。そのような変形例も、特許請求の範囲に記載された技術的範囲に含まれる。
【符号の説明】
【０１１５】
１        ：デジタルカメラ
１０      ：プロセッサ
２０      ：光学系
３０      ：撮像素子
４０      ：Ａ／Ｄコンバータ
５０      ：メモリコントローラ
６０      ：固定長用メモリ
７０      ：動画像メモリ
１００    ：画像処理ブロック
１１０    ：画像処理部
１１１    ：Ｂｙａｅｒ補正処理部
１１２    ：フィルタ処理部
１２０    ：固定長符号化部
１２１    ：ブロック化部
１２２    ：ＹＵＶ変換部
１２３    ：ＤＣＴ変換部
１２４    ：３ＭＡＸ位置番号生成部
１２５    ：量子化部
１２６    ：量子化テーブル
１２７    ：リミッタ部
１２８    ：リミッタテーブル
１２９    ：符号化フォーマット生成部
１３０    ：歪曲補正部
１４０    ：固定長復号化部
１４１    ：符号解析部
１４２    ：ＤＣＴ係数ソート部
１４３    ：逆量子化部
１４４    ：逆量子化テーブル
１４５    ：逆ＤＣＴ変換部
１４６    ：ＲＧＢ変換部
１４７    ：逆ブロック化部
１５０    ：可変長動画圧縮部
１５１    ：動き検索部
１５２    ：ＤＣＴ部
１５３    ：量子化処理部
１５４    ：可変長符号化部
１５５    ：逆量子化処理部
１５６    ：逆ＤＣＴ部
１５７    ：動き補償部
２００    ：データ入力部
３００    ：一時記憶部
４００    ：画像データ格納部
６０１    ：元画像データ
【先行技術文献】
【特許文献】
【０１１６】
【特許文献１】特開２００４−１１２３４５号公報
【図１】
2020088467.tif 000003
【図２】
2020088467.tif 000004
【図３】
2020088467.tif 000005
【図４】
2020088467.tif 000006
【図５】
2020088467.tif 000007
【図６】
2020088467.tif 000008
【図７】
2020088467.tif 000009
【図８】
2020088467.tif 000010
【図９】
2020088467.tif 000011
【図１０】
2020088467.tif 000012
【図１１】
2020088467.tif 000013
【図１２】
2020088467.tif 000014
【図１３】
2020088467.tif 000015
【図１４】
2020088467.tif 000016
【図１５】
2020088467.tif 000017
【図１６】
2020088467.tif 000018
【図１７】
2020088467.tif 000019
【図１８】
2020088467.tif 000020
【図１９】
2020088467.tif 000021
【図２０】
2020088467.tif 000022