(57)【要約】【課題】画質と圧縮率との高レベルな両立を図る。【解決手段】  数値の連続で静止画像を表現した画像データの連続で動画を表した被圧縮データを構成する各画像データの数値の連続から数値を間引くことにより、間引き出された数値の連続からなる第１データと残りの数値の連続からなる第２データとを各画像データ毎に作成し、時間的に隣接した画像データどうしでは、間引く数値の該静止画像上における位置を変える間引き処理部と、  上記第１データに可逆圧縮処理を施す第１圧縮部と、  上記第２データに非可逆圧縮処理を施す第２圧縮部とを備える。【選択図】図５
2009290552.tif 000002
【特許請求の範囲】
【請求項１】
数値の連続で静止画像を表現した画像データの連続で動画を表した被圧縮データを構成する各画像データの数値の連続から数値を間引くことにより、間引き出された数値の連続からなる第１データと残りの数値の連続からなる第２データとを各画像データ毎に作成し、時間的に隣接した画像データどうしでは、間引く数値の該静止画像上における位置を変える間引き処理部と、
前記第１データに可逆圧縮処理を施す第１圧縮部と、
前記第２データに非可逆圧縮処理を施す第２圧縮部とを備えたことを特徴とする動画圧縮装置。
【請求項２】
前記間引き処理部が、数値を間引くに当たり、前記静止画像上で周期的な配列を成す各位置に相当する数値を間引き、時間的に隣接した画像データどうしでは、該配列の周期は変えずに位相を変えるものであることを特徴とする請求項１記載の動画圧縮装置。
【請求項３】
前記間引き処理部が、数値を間引くに当たり、前記静止画像上で周期的な２次元配列を成す各位置に相当する数値を間引き、時間的に隣接した画像データどうしでは、該配列の周期は変えずに位相を変えて、間引く数値の該静止画像上における位置を画像データの所定数毎に該静止画像上で一巡させるものであることを特徴とする請求項１または２記載の動画圧縮装置。
【請求項４】
前記第１圧縮部は、第１データを構成する数値の連続について隣接する数値どうしの差分を求めることにより該差分を表わす数値の連続からなる差分データを生成する差分生成部を有し、該差分生成部によって生成された差分データに可逆圧縮処理を施すものであることを特徴とする請求項１から３のうちいずれか１項記載の動画圧縮装置。
【請求項５】
前記第１圧縮部は、第１データを構成する数値について、前記静止画像上で見てその数値に複数方向それぞれに隣接する複数の数値に基づいた２次元的な差分を求めることにより該差分を表わす数値の連続からなる差分データを生成する差分生成部を有し、該差分生成部によって生成された差分データに可逆圧縮処理を施すものであることを特徴とする請求項１から４のうちいずれか１項記載の動画圧縮装置。
【請求項６】
前記被圧縮データを構成する画像データが、所定の単位ビット数で表わされる数値の連続からなるものであり、
前記第２圧縮部が、
前記静止画像中のエッジ部分を判定する判定部と、
前記間引き処理部で生成された第２データを構成する数値について、前記判定部で判定されたエッジ部分でない場合には、前記単位ビット数よりも少ないビット数の所定符号を出力し、エッジ部分である場合には、前記単位ビット数以下の少ビット数で表現した数値を出力するデータ変換部とを備えたものであることを特徴とする請求項１から５のうちいずれか１項記載の動画圧縮装置。
【請求項７】
前記データ変換部が、数値を前記少ビット数で表現するに当たり、前記単位ビット数のビット値の下位桁を切り捨てるものであることを特徴とする請求項６記載の動画圧縮装置。
【請求項８】
前記差分生成部が、前記差分データとして、前記差分を所定の単位ビット数で表わした数値の連続からなる差分データを生成するものであり、
前記第１圧縮部が、
前記差分生成部によって生成された差分データを構成する各数値を所定値だけオフセットさせるオフセット部と、
前記オフセット部によって数値がオフセットされたデータの各数値を、前記単位ビット数よりも小さい所定の分割ビット数のところで上位ビット部分と下位ビット部分とに分けることによって、該データを、各数値における上位ビット部分の連続からなる上位データと各数値の下位ビット部分の連続からなる下位データとに分割する分割部と、
前記分割部によって分割された上位データに対して可逆圧縮処理を施す上位データ圧縮部とを備えたものであることを特徴とする請求項４または５記載の動画圧縮装置。
【請求項９】
前記上位データ圧縮部が、上位データ中の数値のうち、１つもしくは複数の所定の圧縮対象数値を除く数値についてはそのまま出力するとともに、圧縮対象数値については、該圧縮対象数値と、該圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する第１の符号化部を備えたものであることを特徴とする請求項８記載の動画圧縮装置。
【請求項１０】
前記上位データ圧縮部が、上位データ中の数値のうち、１つもしくは複数の所定の圧縮対象数値を除く数値についてはそのまま出力するとともに、圧縮対象数値については、該圧縮対象数値と、該圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する第１の符号化部と、
符号と数値を対応づけるテーブルを用いて、前記第１の符号化部で符号化された後のデータにエントロピー符号化を施す第２の符号化部を備えたものであることを特徴とする請求項８または９記載の動画圧縮装置。
【請求項１１】
前記上位データ圧縮部が、上位データ中の数値のうち、１つもしくは複数の所定の圧縮対象数値を除く数値についてはそのまま出力するとともに、圧縮対象数値については、該圧縮対象数値と、該圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する第１の符号化部と、
ハフマンテーブルを用いて、前記第１の符号化部で符号化された後のデータにハフマン符号化を施す第２の符号化部を備えたものであることを特徴とする請求項８から１０のうちいずれか１項記載の動画圧縮装置。
【請求項１２】
前記上位データ圧縮部が、上位データ中の数値のうち、１つもしくは複数の所定の圧縮対象数値を除く数値についてはそのまま出力するとともに、圧縮対象数値については、該圧縮対象数値と、該圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する第１の符号化部と、
前記第１の符号化部で符号化された後のデータ中に出現する数値のヒストグラムを求めるヒストグラム推定部と、
前記ヒストグラム推定部で求められたヒストグラムに基づき、符号と数値を対応づけるテーブルに、出現頻度の高い数値ほど符号長の短かい符号を割り当てる符号割当部と、
前記符号割当部で符号が割り当てられたテーブルを用いて、前記第１の符号化部で符号化された後のデータにエントロピー符号化を施す第２の符号化部を備えたものであることを特徴とする請求項８から１１のうちいずれか１項記載の動画圧縮装置。
【請求項１３】
前記分割部によって分割された下位データに対して可逆圧縮処理を施す下位データ圧縮部を備えたことを特徴とする請求項８から１２のうちいずれか１項記載の動画圧縮装置。
【請求項１４】
前記下位データ圧縮部が、符号と数値を対応づけるテーブルを用いて下位データにエントロピー符号化を施すものであることを特徴とする請求項１３記載の動画圧縮装置。
【請求項１５】
前記下位データ圧縮部が、ハフマンテーブルを用いて下位データにハフマン符号化を施すものであることを特徴とする請求項１３または１４記載の動画圧縮装置。
【請求項１６】
前記下位データ圧縮部が、圧縮省略の指示を受けて下位データを無圧縮で出力するものであることを特徴とする請求項１３から１５のうちいずれか１項記載の動画圧縮装置。
【請求項１７】
情報処理装置に組み込まれて該情報処理装置上に、
数値の連続で静止画像を表現した画像データの連続で動画を表した被圧縮データを構成する各画像データの数値の連続から数値を間引くことにより、間引き出された数値の連続からなる第１データと残りの数値の連続からなる第２データとを各画像データ毎に作成し、時間的に隣接した画像データどうしでは、間引く数値の該静止画像上における位置を変える間引き処理部と、
前記第１データに可逆圧縮処理を施す第１圧縮部と、
前記第２データに非可逆圧縮処理を施す第２圧縮部とを構築することを特徴とする動画圧縮プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画を表したデータに圧縮処理を施す動画圧縮装置および動画圧縮プログラムに関する。
【背景技術】
【０００２】
デジタル技術の発達に伴い、デジタルデータで動画を表し、撮影、記録、再生などを行う種々の技術が広汎に普及している。
【０００３】
このような動画を表した動画データは一般にデータ量が大きいが、例えば動画撮影や動画再生に並行してリアルタイムでデータ転送を行うことも多くの場面で必要とされる。このため適切な圧縮技術によってデータを圧縮することが求められており、いくつかのタイプの動画圧縮技術が普及している。最近では、動画データのデータ量や、データ通信の通信速度に応じて圧縮率を変更する機能を備えた装置も提案されている（例えば、特許文献１参照）。
【０００４】
しかし、現在普及している動画圧縮技術は圧縮率を重視した技術となっており、画質を犠牲にしていることが否めないので、画質を維持して高い圧縮率を実現する新たな圧縮技術が望まれている。例えば下記の特許文献２や特許文献３に示す、画像データの圧縮技術を、動画を構成する一連の静止画像（フレーム）それぞれを表した各画像データに適用することで動画データを圧縮することが考えられる。特許文献２に示す技術は画像データを非可逆圧縮する技術であり、特許文献３に示す技術は画像データを可逆圧縮する技術である。
【特許文献１】特開２０００−２６１７２３号公報
【特許文献２】特開２００３−３４８３５９号公報
【特許文献３】特開２００５−８６３５９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献２や特許文献３に示されている技術は、静止画像を表す画像データを圧縮する技術としては、画質と圧縮率との両立がある程度期待できるものであるが、現在普及している動画圧縮技術では、動画のフレームどうしが有する相関性などを利用して高い圧縮率を実現しているので、特許文献２や特許文献３に示されている技術を単純に動画の各フレームに適用しても、画質と圧縮率との高レベルな両立は必ずしも期待することが出来ない。
【０００６】
また、一部のフレームには可逆圧縮を施して他のフレームには非可逆圧縮を施すことで、いわば画質重視の瞬間と圧縮率重視の瞬間とを住み分けて画質と圧縮率との両立を図ることも考えられる。しかし、例えば防犯カメラの映像を保存する場合などのように、どの瞬間でも同様に高い画質で再現可能であるということも重要であり、どの瞬間においても画質と圧縮率との両立が図られていることが望まれる。
【０００７】
本発明は上記事情に鑑み、画質と圧縮率との高レベルな両立が図られた動画圧縮装置および動画圧縮プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成する本発明の動画圧縮装置は、
数値の連続で静止画像を表現した画像データの連続で動画を表した被圧縮データを構成する各画像データの数値の連続から数値を間引くことにより、間引き出された数値の連続からなる第１データと残りの数値の連続からなる第２データとを各画像データ毎に作成し、時間的に隣接した画像データどうしでは、間引く数値の該静止画像上における位置を変える間引き処理部と、
上記第１データに可逆圧縮処理を施す第１圧縮部と、
上記第２データに非可逆圧縮処理を施す第２圧縮部とを備えたことを特徴とする。
【０００９】
本発明の動画圧縮装置において、上記間引き処理部が、数値を間引くに当たり、上記静止画像上で周期的な配列を成す各位置に相当する数値を間引き、時間的に隣接した画像データどうしでは、その配列の周期は変えずに位相を変えるものであることは好適である。
【００１０】
また、上記間引き処理部が、数値を間引くに当たり、上記静止画像上で周期的な２次元配列を成す各位置に相当する数値を間引き、時間的に隣接した画像データどうしでは、その配列の周期は変えずに位相を変えて、間引く数値の静止画像上における位置を画像データの所定数毎に静止画像上で一巡させるものであることも好適である。
【００１１】
また、本発明の動画圧縮装置において、上記第１圧縮部は、第１データを構成する数値の連続について隣接する数値どうしの差分を求めることによりその差分を表わす数値の連続からなる差分データを生成する差分生成部を有し、その差分生成部によって生成された差分データに可逆圧縮処理を施すものであることが好適である。
【００１２】
また、上記第１圧縮部は、第１データを構成する数値について、上記静止画像上で見てその数値に複数方向それぞれに隣接する複数の数値に基づいた２次元的な差分を求めることによりその差分を表わす数値の連続からなる差分データを生成する差分生成部を有し、その差分生成部によって生成された差分データに可逆圧縮処理を施すものであることがより好適である。
【００１３】
また、本発明の動画圧縮装置において、
「上記被圧縮データを構成する画像データが、所定の単位ビット数で表わされる数値の連続からなるものであり、
上記第２圧縮部が、
上記静止画像中のエッジ部分を判定する判定部と、
上記間引き処理部で生成された第２データを構成する数値について、上記判定部で判定されたエッジ部分でない場合には、上記単位ビット数よりも少ないビット数の所定符号を出力し、エッジ部分である場合には、上記単位ビット数以下の少ビット数で表現した数値を出力するデータ変換部とを備えたものである」
という形態は好適である。この好適な形態においては、上記データ変換部が、数値を前記少ビット数で表現するに当たり、上記単位ビット数のビット値の下位桁を切り捨てるものであることも好適である。
【００１４】
上記差分生成部を備えた形態においては、
「上記差分生成部が、上記差分データとして、上記差分を所定の単位ビット数で表わした数値の連続からなる差分データを生成するものであり、
上記第１圧縮部が、
上記差分生成部によって生成された差分データを構成する各数値を所定値だけオフセットさせるオフセット部と、
上記オフセット部によって数値がオフセットされたデータの各数値を、上記単位ビット数よりも小さい所定の分割ビット数のところで上位ビット部分と下位ビット部分とに分けることによって、そのデータを、各数値における上位ビット部分の連続からなる上位データと各数値の下位ビット部分の連続からなる下位データとに分割する分割部と、
上記分割部によって分割された上位データに対して可逆圧縮処理を施す上位データ圧縮部とを備えたものである」
という形態がより好適である。また、この好適な形態において、上記上位データ圧縮部が、上位データ中の数値のうち、１つもしくは複数の所定の圧縮対象数値を除く数値についてはそのまま出力するとともに、圧縮対象数値については、その圧縮対象数値と、その圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する第１の符号化部を備えたものであることはさらに好適である。
【００１５】
また、上記上位データ圧縮部が、上位データ中の数値のうち、１つもしくは複数の所定の圧縮対象数値を除く数値についてはそのまま出力するとともに、圧縮対象数値については、その圧縮対象数値と、その圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する第１の符号化部と、
符号と数値を対応づけるテーブルを用いて、上記第１の符号化部で符号化された後のデータにエントロピー符号化を施す第２の符号化部を備えたものであることも好適であり、
上記上位データ圧縮部が、上位データ中の数値のうち、１つもしくは複数の所定の圧縮対象数値を除く数値についてはそのまま出力するとともに、圧縮対象数値については、その圧縮対象数値と、その圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する第１の符号化部と、
ハフマンテーブルを用いて、上記第１の符号化部で符号化された後のデータにハフマン符号化を施す第２の符号化部を備えたものであることも好適であり、
上記上位データ圧縮部が、上位データ中の数値のうち、１つもしくは複数の所定の圧縮対象数値を除く数値についてはそのまま出力するとともに、圧縮対象数値については、その圧縮対象数値と、その圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する第１の符号化部と、
上記第１の符号化部で符号化された後のデータ中に出現する数値のヒストグラムを求めるヒストグラム推定部と、
上記ヒストグラム推定部で求められたヒストグラムに基づき、符号と数値を対応づけるテーブルに、出現頻度の高い数値ほど符号長の短かい符号を割り当てる符号割当部と、
上記符号割当部で符号が割り当てられたテーブルを用いて、上記第１の符号化部で符号化された後のデータにエントロピー符号化を施す第２の符号化部を備えたものであることも好適である。
【００１６】
上記分割部を備えた形態においては、上記分割部によって分割された下位データに対して可逆圧縮処理を施す下位データ圧縮部を備えることが好適である。そして、この下位データ圧縮部を備える形態においては、下位データ圧縮部が、符号と数値を対応づけるテーブルを用いて下位データにエントロピー符号化を施すものであることが好適である。
【００１７】
また、上記下位データ圧縮部が、ハフマンテーブルを用いて下位データにハフマン符号化を施すものであることも好適であり、
上記下位データ圧縮部が、圧縮省略の指示を受けて下位データを無圧縮で出力するものであることも好適である。
【００１８】
上記目的を達成する本発明の動画圧縮プログラムは、
情報処理装置に組み込まれてその情報処理装置上に、
数値の連続で静止画像を表現した画像データの連続で動画を表した被圧縮データを構成する各画像データの数値の連続から数値を間引くことにより、間引き出された数値の連続からなる第１データと残りの数値の連続からなる第２データとを各画像データ毎に作成し、時間的に隣接した画像データどうしでは、間引く数値のその静止画像上における位置を変える間引き処理部と、
上記第１データに可逆圧縮処理を施す第１圧縮部と、
上記第２データに非可逆圧縮処理を施す第２圧縮部とを構築することを特徴とする。
【００１９】
なお、本発明にいう動画圧縮プログラムについては、ここではその基本形態のみを示すのにとどめるが、これは単に重複を避けるためであり、本発明にいう動画圧縮プログラムには、上記の基本形態のみではなく、前述した動画圧縮装置の各形態に対応する各種の形態が含まれる。
【００２０】
また、本発明の動画圧縮プログラムが情報処理装置上に構成する間引き処理部などといった要素は、１つの要素が１つのプログラム部品によって構築されるものであってもよく、１つの要素が複数のプログラム部品によって構築されるものであってもよく、複数の要素が１つのプログラム部品によって構築されるものであってもよい。また、これらの要素は、そのような作用を自分自身で実行するものとして構築されてもよく、あるいは、情報処理装置に組み込まれている他のプログラムやプログラム部品に指示を与えて実行するものとして構築されても良い。
【発明の効果】
【００２１】
上記本発明の動画圧縮装置ないし動画圧縮プログラムによれば、動画を構成する各静止画像（いわゆるフレーム）についてデータの間引きを行い、間引き出されたデータについては可逆圧縮を施すことで画質を維持し、間引かれた残りのデータについては非可逆圧縮により高い圧縮率を実現する。さらに、時間的に隣接したフレームどうしでは間引きの位置を変えているので、動画中のどの瞬間であっても、その瞬間を含むいくつかの連続したフレームの可逆部分を集めることで高画質の画像を再現可能となる。つまり、画質と圧縮率との高レベルでの両立が図られている。
【００２２】
上記間引き処理部が、静止画像上での周期的な箇所を間引き、静止画像どうしで位相を変えるものであると、静止画像上の各箇所で可逆部分の割合が同等であると共に、動画を構成する各静止画像でも可逆部分の割合が同等であり、動画中のどこでも画質と圧縮率との両立が同等に図られている。
【００２３】
また、上記間引き処理部が、静止画像上での周期的な２次元配列箇所を間引き、動画の時間進行に伴い間引き箇所を一巡させるものであると、その一巡分に相当する数のフレームそれぞれの可逆箇所を集めることで静止画像のほぼ完全な再現が可能となり、この再現は、動画中のどの瞬間にも適用可能である。
【００２４】
上記第１圧縮部が、差分を生成して可逆圧縮するものであると、可逆圧縮であるにも拘わらず効率の良い圧縮が期待され、画質と圧縮率とのより高レベルでの両立が図られる。また、その差分を求める際に２次元的な差分を求めるものであると差分ゼロの頻度が増して可逆圧縮による圧縮がより一層効率よくなる。
【００２５】
上記第２圧縮部が、第２データを圧縮する際に、画像中のエッジであるか否かで圧縮方式を切り換えるものであると、非エッジ部分では大幅な圧縮を実現すると共に、エッジ部分については圧縮を控えることで画質を維持することができる。また、データ変換部が、下位桁を切り捨てるものであると演算が不要となり変換が容易である。
【００２６】
上記第１圧縮部が分割部などを備え上位データと下位データとを分けて処理する形態によれば、後で詳述するようにデータ中の数値の分布傾向が顕著に異なっている上位データと下位データとで、各々に適した可逆な処理を施すことができ、画質と圧縮率とのより高レベルでの両立が図られる。また、このような上位データおよび下位データは、アルゴリズムが単純な可逆圧縮処理で大幅な圧縮が期待できるため圧縮の処理時間が短い。
【００２７】
また、上記の上位データ圧縮部が第１の符号化部を備えると、圧縮対象数値のみが、その圧縮対象数値と連続数とを表わす数値とに符号化されるため、原データよりも冗長度が増すという事態が回避され、圧縮率が向上する。
【００２８】
また、上記の上位データ圧縮部が第２の符号化部を備えると、エントロピー符号化（典型的にはハフマン符号化）による、圧縮率の更なる向上が見込まれる。
【００２９】
さらに、上記の上位データ圧縮部が、ヒストグラム算出部と符号割当部とを備え、第２の符号化部が、符号割当部で符号が割り当てられたテーブルを用いてエントロピー符号化（例えばハフマン符号化）を施すものであると、符号の割り当てが固定されたテーブルを用いたエントロピー符号化と比べ、圧縮率をさらに大きく向上させることができる。
【００３０】
また、上記第１圧縮部が下位データ圧縮部を備えると、下位データについても適切な可逆圧縮が施されて圧縮率が向上する。
【００３１】
また、上記の下位データ圧縮部が、エントロピー符号化を施すものであると、エントロピー符号化（典型的にはハフマン符号化）による、圧縮率の更なる向上が見込まれる。
【００３２】
さらに、上記の下位データ圧縮部が、圧縮省略の指示を受けて下位データを無圧縮で出力するものであると、そのような指示によってより高速な圧縮処理を選択することができる。
【発明を実施するための最良の形態】
【００３３】
以下図面を参照して本発明の実施の形態を説明する。
【００３４】
以下において説明する実施形態は、例えば監視カメラなどで撮影されて得られた動画データが入力され、その動画データにデータ圧縮を施す動画圧縮装置である。この動画データは、複数のフレームの時間的な連続で構成された動画を表しており、各フレームは静止画像を表している。動画データのデータ構造としては、各フレームの静止画像を表した画像データが連なった構造となっており、この動画圧縮装置は、これらの画像データを順次に受け取って処理する。
【００３５】
図１は、本発明の動画圧縮装置の一実施形態を示すブロック構成図である。
【００３６】
この図１に示す動画圧縮装置５００は、情報処理装置の一種であるパーソナルコンピュータ上に構築される装置であり、間引き処理部５０５、差分符号化部５１０、オフセット部５２０、エッジ検出部５２５、プレーン分割部５３０、Ｌプレーン圧縮部５４０、Ｈプレーン圧縮部５５０、およびＦＡＫＥ画素圧縮部５６０を備えている。各部５０５〜５６０の詳細は後述するが、この動画圧縮装置５００内での画像データの流れは以下のとおりである。
【００３７】
画像データＤ０は、図１に示す動画圧縮装置５００の間引き処理部５０５に入力されて、画像データから、画像中の周期的な画素部分に相当するＴＲＵＥ画素データが間引かれる。間引かれた残りはＦＡＫＥ画素データとなる。これらＴＲＵＥ画素データおよびＦＡＫＥ画素データが、それぞれ、本発明にいう第１データおよび第２データの各一例に相当する。
【００３８】
ＴＲＵＥ画素データは差分符号化部５１０に入力されて、２次元差分符号化処理、すなわち、入力されてきたデータを構成する数値の連続について、画像上で見てその数値に複数方向それぞれに隣接する複数の数値に基づいた２次元的な差分を求めることによりその差分を表わす８ビットの数値の連続からなる画像データを生成する処理が行なわれる。この差分符号化部５１０は、本発明にいう差分生成部の一例に相当する。なお、本発明にいう差分生成部としては、後述する主走査方向や副走査方向の１次元の差分を求めるものであってもよいが、本実施形態では、２次元的な差分を求める差分符号化部５１０を採用している。
【００３９】
差分符号化部５１０で生成された、差分を表わす数値の連続からなる画像データは、オフセット部５２０に入力されて所定値だけオフセットされる。その後、エッジ検出部５２５とプレーン分割部５３０に入力され、エッジ検出部５２５では、オフセットされた差分値に基づいて画像のエッジ部分が検出され、プレーン分割部５３０では、画像データ中の８ビットの各数値が下位４ビットと上位４ビットとに分けられることにより、画像データは、下位４ビットの数値の連続からなる下位サブプレーンＤ１Ｌと上位４ビットの数値の連続からなる上位サブプレーンＤ１Ｈに分割される。このオフセット部５２０は、本発明にいうオフセット部の一例に相当し、エッジ検出部５２５は、本発明にいう判定部の一例に相当し、プレーン分割部５３０は、本発明にいう分割部の一例に相当する。また、下位サブプレーンＤ１Ｌおよび上位サブプレーンＤ１Ｈは、それぞれ、本発明にいう下位データおよび上位データの各一例に相当する。
【００４０】
プレーン分割部５３０で分割された下位サブプレーンＤ１Ｌおよび上位サブプレーンＤ１Ｈは、それぞれ、Ｌプレーン圧縮部５４０およびＨプレーン圧縮部５５０に入力されて可逆圧縮が施される。これらＬプレーン圧縮部５４０およびＨプレーン圧縮部５５０は、それぞれ、本発明にいう下位データ圧縮部および上位データ圧縮部の各一例に相当する。
【００４１】
Ｌプレーン圧縮部５４０のハフマン符号化部５４１では、数値と符号とを対応づける固定的なハフマンテーブルに従って、そのハフマン符号化部５４１に入力されてきた下位サブプレーンＤ１Ｌを構成する数値をそのハフマンテーブルに従う符号に置き換える符号化処理が行なわれる。このハフマン符号化は、エントロピー符号化の一種である。なお、Ｌプレーン圧縮部５４０にはモード切換部５４２が組み込まれており、このモード切換部５４２は、ユーザから、高速モードと通常モードとの切り換えを指示されて、上記のハフマン符号化部５４１によるハフマン符号化を経る通常モードと、ハフマン符号化を省略して下位サブプレーンＤ１Ｌをそのまま出力する高速モードとを切り換える。このようなＬプレーン圧縮部５４０からは、下位サブプレーンＤ１Ｌが圧縮された下位圧縮データＤ２Ｌが出力されるが、高速モードの場合には下位圧縮データＤ２Ｌは下位サブプレーンＤ１Ｌそのものである。
【００４２】
一方、Ｈプレーン圧縮部５５０には、ランレングス符号化部５５１と、データスキャニング部５５２と、ハフマン符号化部５５３が備えられており、上位サブプレーンＤ１Ｈはランレングス符号化部５５１に入力される。
【００４３】
ランレングス符号化部５５１では、先ず、入力されてきた上位サブプレーンＤ１Ｈのデータの中から１つもしくは複数の圧縮対象数値の存在及び同一の圧縮対象数値の連続数が検出される。次いで、ランレングス符号化部５５１では、その検出結果を受けて、上位サブプレーンＤ１Ｈのデータ中、圧縮対象数値を除く数値についてはそのまま出力すると共に、圧縮対象数値については、その圧縮対象数値と、その圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力するという符号化処理が行なわれる。このランレングス符号化部５５１では、その符号化処理にあたっては、同一の圧縮対象数値の連続数に応じ、その連続数を異なるビット数で表現する符号化が行なわれる。ここでは、具体的には、同一の圧縮対象数値の連続数が所定数以下のときはその連続数を１単位ビット数で表現し、その連続数が所定数を越えるときは２単位ビット数で表現する符号化が行なわれる。本実施形態では、このランレングス符号化部５５１が、本発明にいう第１の符号化部の一例に相当する。
【００４４】
また、ランレングス符号化部５５１での符号化後のデータは、次に、データスキャニング部５５２とハフマン符号化部５５３との双方に入力される。データスキャニング部５５２では、ランレングス符号化部５５１で符号化された後のデータの全てをスキャニングして、そのデータ中に出現する全ての数値の出現頻度（ヒストグラム）が求められる。ここで、この出現頻度を求める処理は、本実施形態では、図１に示す上位サブプレーンＤ１Ｈの１つずつを単位として実行され、各上位サブプレーンＤ１Ｈの、ランレングス符号化部５５１で符号化された後のデータ中の数値の出現頻度が求められる。さらに、データスキャニング部５５２では、求められたデータヒストグラム（数値の出現頻度）に基づき、ハフマンテーブルに、出現頻度の高い数値ほど符号長の短かい符号を割り当てる。このデータスキャニング部５５２は、本発明にいうヒストグラム推定部および符号割当部の各一例を兼ね備えたものに相当する。
【００４５】
データスキャニング部５５２で数値に符号が割り当てられてなるハフマンテーブルは、ハフマン符号化部５５３に渡され、ハフマン符号化部５５３では、その渡されたハフマンテーブルに従って、そのハフマン符号化部５５３に入力されてきたデータを構成する数値を、そのハフマンテーブルに従う符号、すなわち、出現頻度の高い数値ほど短かいビット長で表わされる符号に置き換える符号化処理が行なわれる。このハフマン符号化部５５３は、本発明にいう第２の符号化部の一例に相当する。
【００４６】
ハフマン符号化部５５３でハフマン符号化された後のデータは、データスキャニング部５５２で割り当てられた数値と符号との割当テーブルを含む圧縮情報が添付され、上位サブプレーンＤ１Ｈが圧縮された上位圧縮データＤ２ＨとしてＨプレーン圧縮部５５０から出力される。
【００４７】
このようにＬプレーン圧縮部５４０およびＨプレーン圧縮部５５０のそれぞれから出力される下位圧縮データＤ２Ｌと上位圧縮データＤ２Ｈとの組は、ＴＲＵＥ画素データが可逆圧縮された可逆圧縮データを構成する。
【００４８】
一方、上記の間引き処理部５０５で得られたＦＡＫＥ画素データは、ＦＡＫＥ画素圧縮部５６０に入力されて非可逆圧縮処理が施される。このＦＡＫＥ画素圧縮部５６０には、ビット短縮部５６１と、ランレングス符号化部５６２と、ハフマン符号化部５６３とが備えられており、ＦＡＫＥ画素データを構成する数値はビット短縮部５６１で１ビットまたは４ビットの符号に置換される。このとき、上記エッジ検出部５２５によって検出されたエッジ部分に相当する画素か否かで符号の置換方法が異なっている。このように１ビットまたは４ビットの符号に置換された後は、ランレングス符号化部５６２およびハフマン符号化部５６３によって、上記Ｈプレーン圧縮部５５０における処理と全く同様の処理が実行される。この結果、ＦＡＫＥ画素圧縮部５６０からは、ＦＡＫＥ画素データが非可逆圧縮された非可逆圧縮データＤ３が出力される。
【００４９】
ＴＲＵＥ画素データの可逆圧縮データとＦＡＫＥ画素データの非可逆圧縮データとで、フレームの静止画像を表した元の画像データに対する圧縮データが構成される。そして、一連のフレームに対応した一連の圧縮データによって動画データの圧縮データが構成される。動画データのこのような圧縮データは、通信回線を介して送信されたり、記録媒体に保存されたりする。そして、送信先や再生機器で圧縮データにデータ伸長処理が施されて動画の表示などに利用される。このデータ伸長処理にあたっては、図１で説明した各種の符号化処理に対応する復号化処理が施されて、元の動画を表した一連の画像データに十分に近似した一連の画像データが復元され、元の動画が高画質で再現される。さらに、例えば防犯上必要な場合などには、動画中の所望の瞬間について元の静止画像とほぼ同一の静止画像を再現するためにも利用される。
【００５０】
図２は、図１に示す動画圧縮装置５００が構築されるパーソナルコンピュータのハードウェア構成図である。
【００５１】
この図２に示すパーソナルコンピュータ１００には、ＣＰＵ１１１、ＲＡＭ１１２、通信インターフェース１１３、ハードディスクコントローラ１１４、ＦＤドライブ１１５、ＣＤドライブ１１６、マウスコントローラ１１７、キーボードコントローラ１１８、ディスプレイコントローラ１１９、および通信用ボード１２０が備えられており、これらはバス１１０で相互に接続されている。
【００５２】
ハードディスクコントローラ１１４は、このパーソナルコンピュータ１００に内蔵されているハードディスク１０４のアクセスを制御するものであり、ＦＤドライブ１１５、ＣＤドライブ１１６は、このパーソナルコンピュータ１００に取出し自在に装填されるフレキシブルディスク（ＦＤ）１３０、ＣＤＲＯＭに代表されるＣＤ型媒体１４０にアクセスするものである。また、マウスコントローラ１１７、キーボードコントローラ１１８は、このパーソナルコンピュータ１００に備えられたマウス１０７、キーボード１０８の操作を検出してＣＰＵ１１１に伝達する役割を担っている。さらに、ディスプレイコントローラ１１９は、このＣＰＵ１１１の指示に基づいて、パーソナルコンピュータ１００に備えられた画像ディスプレイ１０９の表示画面上に画像を表示する役割を担っている。
【００５３】
通信用ボード１２０は、ＳＣＳＩ等の汎用インターフェースプロトコルに準拠した通信を担っており、圧縮後の動画データをインターフェースケーブル１５０を介して他の機器に転送する役割を担っている。
【００５４】
さらに、通信用インターフェース１１３は、インターネット等の汎用の通信を担っており、このパーソナルコンピュータ１００は、この通信用インターフェース１１３を経由して動画データを送信することもできる。
【００５５】
ＲＡＭ１１２には、ハードディスク１０４に格納されているプログラムが読み出されてＣＰＵ１１１での実行のために展開され、ＣＰＵ１１１では、そのＲＡＭ１１２に展開されたプログラムが読み出されて実行される。
【００５６】
図３は、本発明の動画圧縮プログラムの一実施形態に相当する画像圧縮処理プログラムの模式構成図である。
【００５７】
ここでは、この動画圧縮プログラム６００は、ＣＤ型媒体１４０に記憶されているが、本発明の動画圧縮プログラムを記憶する記憶媒体は、プログラムを記憶することができるものであればその種類を問うものではなく、例えばハードディスク装置の磁気ディスクであってもよく、あるいはフレキシブルディスクやＭＯディスクやＤＶＤであってもよく、あるいはカード型やテープ型の記憶媒体であってもよい。また、本発明の動画圧縮プログラムは、記憶媒体に記憶されているものに限定されず、例えば通信回線で通信されるものであってもよい。
【００５８】
この動画圧縮プログラム６００は、間引き処理部６０５、差分符号化部６１０、オフセット部６２０、エッジ検出部６２５、プレーン分割部６３０、Ｌプレーン圧縮部６４０、Ｈプレーン圧縮部６５０、およびＦＡＫＥ画素圧縮部６６０から構成されている。
【００５９】
この図３に示すＣＤ型媒体１４０が、図２に示すパーソナルコンピュータ１００に装填されＣＤドライブ１１６でアクセスされてそのＣＤ型媒体１４０に記憶されているプログラムがこのパーソナルコンピュータ１００にアップロードされ、ハードディスク１０４に記憶される。このハードディスク１０４に記憶されたプログラムがそのハードディスク１０４から読み出されてＲＡＭ１１２に展開されＣＰＵ１１１で実行されると、このパーソナルコンピュータ１００は図１に示す動画圧縮装置５００として動作する。
【００６０】
ここで、図３に示す動画圧縮プログラム６００は、パーソナルコンピュータ１００にインストールされてＣＰＵ１１１で実行されることにより、そのパーソナルコンピュータ１００内に図１に示す動画圧縮装置５００を実現するものであり、間引き処理部６０５、差分符号化部６１０、オフセット部６２０、エッジ検出部６２５、プレーン分割部６３０、Ｌプレーン圧縮部６４０、Ｈプレーン圧縮部６５０、およびＦＡＫＥ画素圧縮部６６０は、ＣＰＵ１１１で実行されることにより、そのパーソナルコンピュータ１００を、図１に示す動画圧縮装置５００を構成する、それぞれ、間引き処理部５０５、差分符号化部５１０、オフセット部５２０、エッジ検出部５２５、プレーン分割部５３０、Ｌプレーン圧縮部５４０、Ｈプレーン圧縮部５５０、およびＦＡＫＥ画素圧縮部５６０として動作させるプログラム部品である。つまり、これらのプログラム部品により、動画圧縮装置５００の構成要素がパーソナルコンピュータ１００上に実質的に構築されることとなる。
【００６１】
図３の動画圧縮プログラム６００を構成する各部６０５〜６６０の、ＣＰＵ１１１で実行されたときの作用は、それぞれ、図１の動画圧縮装置５００を構成する各部５０５〜５６０の作用そのものである。したがって、図１の動画圧縮装置５００の各部５０５〜５６０に関する、これまでの説明、および、以下に説明する詳細説明をもって、図３の動画圧縮プログラム６００を構成する各部６０５〜６６０の説明を兼ねるものとする。
【００６２】
図４は、図１の動画圧縮装置５００に入力される画像データのデータ構造および間引き処理の概念を示す図である。
【００６３】
図４に示すように、図１に示す動画圧縮装置５００に入力される画像データは、所定の主走査方向（図の横方向）とその主走査方向とは直角な副走査方向（図の縦方向）とに画素が並んでおり、主走査方向に並ぶ画素の列はラインと称される。ここでは８ライン分の画素が示されており、画素と画素との間隔は６００ｄｐｉの解像度に相当する。
【００６４】
各画素の位置は、画素値を表す符号Ｔ，Ｆに付された添え字で表現される。例えば３番目のラインについて、主走査方向に並ぶ各画素の画素値には、その並び順に、
３＿１，３＿２，３＿３，３＿４，…
という添え字が付されている。
【００６５】
図１に示す動画圧縮装置５００を構成する間引き処理部５０５には、このように並んだ画素値からなる画像データが入力され、各画素を、ＴＲＵＥ画素とＦＡＫＥ画素とに分類する。この図４に示す各画素のうちＴＲＵＥ画素は画素値が符号Ｔで表され、ＦＡＫＥ画素は画素値が符号Ｆで表されている。ＴＲＵＥ画素は、画素の並びの中から周期的に間引かれた画素であり、ここでは一例として、副走査方向に１ラインおきの各ライン（奇数番目のライン）について、主走査方向に１画素おきの各画素（奇数番目の画素）がＴＲＵＥ画素として間引き出されている。この結果、この図４に示す例ではＴＲＵＥ画素は、元の６００ｄｐｉの解像度から３００ｄｐｉの解像度に低下した画像を構成する画素に相当しており、元の画像データの４分の１に相当する画素が間引き出されたこととなる。このように間引き出されたＴＲＵＥ画素は、そのようなＴＲＵＥ画素の連続からなるＴＲＵＥ画素データを構成し、そのＴＲＵＥ画素データの構造は、元の画像データと同様に、主走査方向と副走査方向に画素が並んだ構造となっている。ＴＲＵＥ画素の間引きによって残ったＦＡＫＥ画素についても、そのＦＡＫＥ画素の連続からなるＦＡＫＥ画素データを構成する。
【００６６】
ＴＲＵＥ画素の間引き出しとしては、このほかに例えば、副走査方向に２ラインおきの各ラインについて、主走査方向に２画素おきの各画素を間引き出すことによって元の画像データの９分の１に相当する画素を間引き出す方式や、主走査方向と副走査方向とでは間引きだしの周期が異なる方式なども採用可能であるが、以下では、図４に示すように、奇数番ラインの奇数番画素が間引き出されたものとして説明を続ける。
【００６７】
間引き処理部５０５によるＴＲＵＥ画素の間引き出しの周期は、動画を構成する各フレームで同一の周期であるが、間引き出しの位置（位相）は、フレーム間で変化する。
【００６８】
図５は、フレーム間での間引き出し位置の変化を説明する図である。
【００６９】
この図５には、動画を構成する複数のフレームｆｎ−２，ｆｎ−１，ｆｎ，ｆｎ＋１が時間軸に沿って並んでいる様子が概念的に示されている。そして、各フレームｆｎ−２，ｆｎ−１，ｆｎ，ｆｎ＋１の左肩には各４つの画素Ａｎ−２，Ｂｎ−２，Ｃｎ−２，Ｄｎ−２；Ａｎ−１，Ｂｎ−１，Ｃｎ−１，Ｄｎ−１；Ａｎ，Ｂｎ，Ｃｎ，Ｄｎ；Ａｎ＋１，Ｂｎ＋１，Ｃｎ＋１，Ｄｎ＋１が示されている。これらの画素は、時間的に隣り合って並んでいる複数のフレームｆｎ−２，ｆｎ−１，ｆｎ，ｆｎ＋１それぞれの画像上で互いに同一の箇所（左肩）に位置しており、図４に示すデータ構造の左上に示されている４つの画素Ｔ１＿１，Ｆ１＿２，Ｆ２＿１，Ｆ２＿２にいずれも該当する。図４に示すデータ構造では、これら４つの画素Ｔ１＿１，Ｆ１＿２，Ｆ２＿１，Ｆ２＿２のうち左上の画素Ｔ１＿１がＴＲＵＥ画素となっているが、図５に示す各フレームｆｎ−２，ｆｎ−１，ｆｎ，ｆｎ＋１においては、１フレーム中に示された４つの画素のうち、斜線が付された画素がＴＲＵＥ画素となっている。つまり、ＴＲＵＥ画素の位置は、時間的に隣接するフレームどうしで異なっており、１フレーム毎に１画素あるいは１ラインずつＴＲＵＥ画素の位置が移動する。その結果ＴＲＵＥ画素の位置は、時間の進行に伴って４フレームごとに画像上で時計回りに一巡する。このようなＴＲＵＥ画素の位置の移動は、画像上の全てのＴＲＵＥ画素について同様となっており、従ってＴＲＵＥ画素の配列の周期は変わらず、配列の位相のみがフレーム毎に変わっていくこととなる。後述するように、ＴＲＵＥ画素の連続からなるＴＲＵＥ画素データには可逆な圧縮処理が施され、ＦＡＫＥ画素の連続からなるＦＡＫＥ画素データには非可逆な圧縮処理が施されるが、この図５に示すようにＴＲＵＥ画素の位置が移動すると、時間的に平均して見て画像上の各画素での画質が均質化する。また、画像上のどの画素にも、データが可逆に圧縮される瞬間が存在し、そのような可逆なデータ部分を、ＴＲＵＥ画素が一巡する分のフレーム（例えばこの図５に示すような４フレーム）について集めることで、動画中のどの瞬間についても、その瞬間における静止画像をほぼ同等の静止画像を再現することが出来る。
【００７０】
以下、ＴＲＵＥ画素データに対する可逆な圧縮処理について説明する。
【００７１】
この可逆な圧縮処理の最初にＴＲＵＥ画素データは、図１の動画圧縮装置５００を構成する差分符号化部５１０に入力されて２次元差分符号化処理が施され、主走査方向に隣接する画素どうしの差分における副走査方向での更なる差分が求められる。
【００７２】
この２次元差分符号化処理を具体的に説明する。
【００７３】
図６は、差分符号化部５１０に入力されるＴＲＵＥ画素データの構造を示す図、図７は、このＴＲＵＥ画素データに対して２次元差分符号化処理が施された後のデータの構造を示す図である。
【００７４】
ＴＲＵＥ画素データは、上述したように、画像から間引き出された画素からなる低解像度の画像を表したものであり、画像データの一種である。ＴＲＵＥ画素データが表す画像は、所定の主走査方向に画素がＭ個並んでなるラインが、その主走査方向とは直角な副走査方向にＮライン並ぶことによって構成されており、このような構成を反映してその画像データも、図６に示すように、主走査方向（図の左右方向）に画素値がＭ個並んでなるラインが、副走査方向（図の上下方向）にＮライン並んでいるという構造を備えている。この図６では、上からｎ番目のライン中の、左からｍ番目の画素値はＰｎ，ｍと表記されており、この表記法を用いて、副走査方向にｎ番目のラインについては、主走査方向に並ぶ各画素の画素値が、その並び順に、
Ｐｎ，１，Ｐｎ，２，…，Ｐｎ，ｍ−１，Ｐｎ，ｍ，…，Ｐｎ，Ｍ−２，Ｐｎ，Ｍ−１，Ｐｎ，Ｍ
と表されている。これらの画素値は、１６進表示で表された数値である。
【００７５】
ここで、図１に示す差分符号化部５１０には、上記のような画像データが入力されて２次元差分符号化処理が施され、主走査方向に隣接する画素どうしの差分における副走査方向での更なる差分が求められる。
【００７６】
図７には、２次元差分符号化処理が施されたデータの構造が示されており、このデータも、２次元差分符号化後の画素値が主走査方向にＭ個並んでなるラインが、副走査方向にＮライン並んでいるという構造を備えている。この図では、上からｎ番目のライン中の、左からｍ番目の、２次元差分符号化後の画素値は、Ｘｎ，ｍと表記されており、この２次元差分符号化後の画素値Ｘｎ，ｍは、図６の中央部に示す、２次元差分符号化前の４つの画素値｛Ｐｎ−１，ｍ−１，Ｐｎ−１，ｍ，Ｐｎ，ｍ−１，Ｐｎ，ｍ｝から、下記の変換式によって得られる。
Ｘｎ，ｍ＝（Ｐｎ，ｍ−Ｐｎ，ｍ−１）−（Ｐｎ−１，ｍ−Ｐｎ−１，ｍ−１）                …（１）
ここで、ｎ＝１の場合やｍ＝１の場合には、右辺の２次元差分符号化前の画素値の添え字に０が現れることとなるが、添え字が０となる画素値については、下記のように定義する。
Ｐ０，０＝Ｐ０，ｍ＝００  （ｍ＝１〜Ｍ），  Ｐｎ，０＝Ｐｎ−１，Ｍ  （ｎ＝１〜Ｎ）…（２）
ここで、式（２）の「００」は、画素値を１６進表示で表したときに値がゼロであることを表している。以下、式（１）および式（２）の意味について簡単に説明する。
【００７７】
式（１）は、主走査方向に隣接する画素どうしの差分（すなわち、カッコの中の値）における副走査方向での更なる差分によって２次元差分符号化後の画素値Ｘｎ，ｍが得られることを表しており、２次元差分符号化前の画素値Ｐｎ，ｍが隣接する画素の画素値と相関が強い（すなわち同じような大きさの画素値である）場合には、２次元差分符号化後の画素値Ｘｎ，ｍは、ゼロに近い値となる。
【００７８】
式（２）は、副走査方向の仮想的な０番目のラインと、各ラインの左から０番目の仮想的な画素値とを新たに設けたときの各画素値の定義を表す式である。主走査方向については左端の画素値（左から０番目の画素値Ｐｎ，０）とそのラインより１ライン前のラインの右端の画素値Ｐｎ−１，Ｍとを同一視するという定義となっている。また、副走査方向については、図の一番上側の画素値（０番目のライン上の画素値）、すなわち、Ｐ０，０やＰ０，ｍが全て０に固定された定義となっている。
【００７９】
２次元差分符号化後のデータにおいて、１ライン目の画素値、および各ラインの１番目の画素値については、式（１）の変換式の右辺に、添え字が「０」である項が現れるため、式（２）の定義が適用されることとなる。具体的には上記の式（１）および式（２）により、２次元差分符号化後の１ライン目の画素値は、
Ｘ１，１＝Ｐ１，１，
Ｘ１，２＝Ｐ１，２−Ｐ１，１，
Ｘ１，３＝Ｐ１，３−Ｐ１，２，
…………
Ｘ１，Ｍ＝Ｐ１，Ｍ−Ｐ１，Ｍ−１
のように表される。
【００８０】
一方、２次元差分符号化後のデータにおいて、各ラインの１番目の画素値については、上記の式（２）により、
Ｘ１，１＝Ｐ１，１，
Ｘ２，１＝（Ｐ２，１−Ｐ１，Ｍ）−Ｐ１，１，
Ｘ３，１＝（Ｐ３，１−Ｐ２，Ｍ）−（Ｐ２，１−Ｐ１，Ｍ），
…………
ＸＮ，１＝（ＰＮ，１−ＰＮ−１，Ｍ）−（ＰＮ−１，１−ＰＮ−２，Ｍ）
のように表される。このように、１ライン目の画素値、および各ラインの１番目の画素値については、その変換の仕方がやや特殊であるが、これらの画素値以外の画素値については、式（２）の定義が適用されることなく、式（１）がそのまま適用される。例えば、２ライン目の画素値のうち一番左端を除いた画素値は、
Ｘ２，２＝（Ｐ２，２−Ｐ２，１）−（Ｐ１，２−Ｐ１，１），
Ｘ２，３＝（Ｐ２，３−Ｐ２，２）−（Ｐ１，３−Ｐ１，２），
…………
Ｘ２，Ｍ＝（Ｐ２，Ｍ−Ｐ２，Ｍ−１）−（Ｐ１，Ｍ−Ｐ１，Ｍ−１）
のように表される。
【００８１】
この２次元差分符号化処理を、具体的な数値を用いて説明する。
【００８２】
図８は、図１の差分符号化部５１０における２次元差分符号化処理を例示して示す図である。
【００８３】
この図の左側（パート（Ａ））に示す各数値が画像データを構成する画素値であり、この図の右側（パート（Ｂ））に示す各数値が２次元差分符号化処理で出力される出力値である。この図の横方向が主走査方向であり、主走査方向に並んだ８つの数値の並びが上記のラインである。この図に示すデータにはこうした８つの数値が並んだラインが全部で８本あり、図６および図７のデータにおいてＮ＝８，Ｍ＝８の場合のデータに相当する。
【００８４】
図８のパート（Ａ）に示すデータの２次元差分符号化処理では、先ず、１ライン目の各画素値「９０  ８Ａ  ８Ａ  ７Ｂ  …」のうち、一番左の「９０」については、この値がそのまま上記のＸ１，１として出力され、それ以外のＸ１，２，Ｘ１，３，…については、主走査方向に隣接する画素値どうしの差分の値「８Ａ−９０＝ＦＡ」「８Ａ−８Ａ＝００」…が出力される。ここで、「８Ａ」から「９０」を引き算した結果は実際には負の数となり、９ビットで「１ＦＡ」と表されるが、ＭＳＢの１ビットである最上位の「１」は省略し、下位８ビットである「ＦＡ」のみを出力する。
【００８５】
２ライン目については、Ｘ２，１を求める式、
Ｘ２，１＝（Ｐ２，１−Ｐ１，Ｍ）−Ｐ１，１
において、Ｍ＝８としたときの右辺の｛Ｐ２，１，Ｐ１，８，Ｐ１，１｝に対し、図８のパート（Ａ）に示す数値が代入されて、「（８７−５８）−９０＝９Ｆ」がＸ２，１として出力される。それ以外のＸ２，２，Ｘ２，３，…については、２ライン目についての主走査方向に隣接する画素値どうしの差分と、１ライン目についての主走査方向に隣接する画素値どうしの差分とのさらなる差分の値「（８４−８７）−（８Ａ−９０）＝３」「（８８−８４）−（８Ａ−８Ａ）＝０４」…が出力される。
【００８６】
３ライン目については、Ｘ３，１を求める式、
Ｘ３，１＝（Ｐ３，１−Ｐ２，Ｍ）−（Ｐ２，１−Ｐ１，Ｍ）
において、Ｍ＝８としたときの右辺の｛Ｐ３，１，Ｐ２，８，Ｐ２，１，Ｐ１，８｝に、図８のパート（Ａ）に示す数値が代入されて、「（８Ｂ−４Ｃ）−（８７−５８）＝１０」がＸ３，１として出力される。それ以外のＸ３，２，Ｘ３，３，…については、３ライン目についての主走査方向に隣接する画素値どうしの差分と、２ライン目についての主走査方向に隣接する画素値どうしの差分とのさらなる差分の値「（８６−８Ｂ）−（８４−８７）＝ＦＥ」「（８Ａ−８６）−（８８−８４）＝００」…が出力される。
【００８７】
以下、４ライン目以降についても、３ライン目の演算と同じ演算を繰り返すことにより、図８のパート（Ｂ）に示す各数値が得られることとなる。
【００８８】
圧縮された動画データに対する伸長処理では、このように２次元差分符号化されたデータに対してデータの復号化処理が行われる。この復号化処理では、２次元差分符号化されたデータの値からＰｎ，ｍを求める式が使用されており、この式は以下のようにして求めることができる。
【００８９】
２次元差分符号化後の画素値Ｘｉ，ｊを、ｉ＝１からｉ＝ｍまで足し上げ、さらにｊ＝１からｊ＝ｍについて足し上げた結果は、式（１）および式（２）を用いて下記の式（３）のように表される。
【００９０】
【数１】
2009290552.tif 000003
【００９１】
ここで、式の途中に現れる｛Ｐ０，０，Ｐｎ，０，Ｐ０，ｍ｝に対して、式（２）が適用されている。この式から、２次元差分符号化前の画素値Ｐｎ，ｍは、下記の式（４）のように表される。
【００９２】
【数２】
2009290552.tif 000004
【００９３】
図１に示すパーソナルコンピュータ４では、上記の式（４）により、先ず、１ライン目の画素値Ｐ１，１，Ｐ１，２，…，Ｐ１，Ｍが求められる。例えば、１ライン目の画素値のうち主走査方向にｍ番目の画素値は、上記の式（４）にｎ＝１を代入し、さらに式（２）のＰ０，Ｍ＝０を利用して、下記の式（５）のように表される。
【００９４】
【数３】
2009290552.tif 000005
【００９５】
このようにして、１ライン目の画素値、Ｐ１，１，Ｐ１，２，…，Ｐ１，Ｍがすべて求められる。
【００９６】
２ライン目の画素値Ｐ２，１，Ｐ２，１，…，Ｐ２，Ｍについては、同様に上記の式（４）にｎ＝２を代入し、さらに１ライン目の画素値の複合化で得られたＰ１，Ｍを用いることで求めることができる。例えば、２ライン目の画素値のうち主走査方向にｍ番目の画素値は、下記の式（６）のように表される。
【００９７】
【数４】
2009290552.tif 000006
【００９８】
３ライン目以降の画素値についても同様にして、上記の式（６）やそれ以降の計算で複合化された画素値を用いて求めることができる。図１に示すパーソナルコンピュータ４では、このような方式でデータの復号化処理が行われる。
【００９９】
図１の差分符号化部５１０では、以上説明したような２次元差分符号化が画像データに施される。この２次元差分符号化によって得られるデータは、図１のオフセット部５２０に入力され、そのデータの各数値について所定のオフセット値が加算され、データが下位サブプレーンＤ１Ｌと上位サブプレーンＤ１Ｈとに分割される。ここでは、データの分割までの処理について具体的な画像を例に用いて説明する。
【０１００】
図９は、画像データの例を示す図である。
【０１０１】
この図９のパート（Ａ）には、画像の一例としてモノクロの風景画像が示されており、本実施形態では、このような画像の各画素における色の濃度が８ビットの数値で表現された画像データが用いられる。図９のパート（Ｂ）には、パート（Ａ）に示す風景画像を表す画像データにおけるデータ値のヒストグラムが示されており、このヒストグラムの横軸はデータ値、縦軸はデータ数（画素数）を表している。通常の画像ではヒストグラムの幅が広く、ヒストグラム中でデータ数の山谷は生じてもヒストグラムの途中にデータ数が「０」の領域が生じることは極めてまれである。
【０１０２】
図１０は、画像データに対する差分符号化およびオフセットの効果を示す図である。
【０１０３】
この図１０のパート（Ａ）には、図９に示した画像データに対して差分符号化が施されて得られるデータのヒストグラムが示されており、このヒストグラムの横軸はデータ値、縦軸は出現頻度を表している。画像データに対して、図６および図７で説明した差分符号化が施されると、データのヒストグラムは、一般に、この図１０のパート（Ａ）に示すような、最小データ値と最大データ値の双方に鋭いピークを有するヒストグラムとなる。そして、このようなデータに対してオフセットが施されると、データのヒストグラムは、図１０のパート（Ｂ）に示すような、オフセット値のところに鋭いピークを持つヒストグラムとなる。本実施形態ではオフセット値として「８」が用いられており、オフセットの結果、値が「１６」以上となるデータの頻度はほとんど「０」となっている。
【０１０４】
このように差分符号化およびオフセットによってヒストグラムが変形されたデータは、図１のプレーン分割部５３０によって下位サブプレーンＤ１Ｌと上位サブプレーンＤ１Ｈとに分割される。
【０１０５】
図１１は、プレーン分割部５３０によるデータ分割の効果を説明する図である。
【０１０６】
この図１１には、図１０のパート（Ｂ）に示すヒストグラムがデータ値「１５」とデータ値「１６」との間で切り離されたヒストグラムが示されており、図１のプレーン分割部５３０によるデータ分割は、まさにこのようなヒストグラムの分割に相当する効果を生じる。すなわち、本実施形態では、データを構成している８ビットの各数値が上位４ビットと下位４ビットとに分割されることで、下位４ビットが表す数値の連続からなる下位サブプレーンＤ１Ｌと上位４ビットが表す数値の連続からなる上位サブプレーンＤ１Ｈとが得られる。そして、下位サブプレーンＤ１Ｌを構成する４ビットの数値が値「０」から値「１５」までの各数値をそのまま表現していて、上位サブプレーンＤ１Ｈを構成する４ビットの数値の場合は、値「１６」から値「２５６」までの、１６間隔１６種類の数値を表現していると解釈すると、下位サブプレーンＤ１Ｌのヒストグラムは、この図１１の左側に示されたヒストグラムとほぼ同じものとなり、上位サブプレーンＤ１Ｈのヒストグラムは、図１１の右側に示されたヒストグラムとほぼ同じものとなる。ただし、上位サブプレーンＤ１Ｈのヒストグラムについては、図１１の右側に示されたヒストグラムのデータ値「１６」のところに、図１１の左側に示されたヒストグラムの面積に等しい高さのピークが付加されたものとなる。
【０１０７】
以下では、上位サブプレーンＤ１Ｈと下位サブプレーンＤ１Ｌとに分割された後のデータの処理について説明する。
【０１０８】
まず、上位サブプレーンＤ１Ｈに対する処理について説明する。
【０１０９】
図１１の右側に示されたヒストグラムにおいて画素の出現頻度がほとんどゼロに近いことからわかるように、上位サブプレーンＤ１Ｈ中の数値は、ゼロに近い値（１６進数表示での「００」や「０１」や「ＦＦ」）の連続が多いことが予想される。このため、上位サブプレーンＤ１Ｈに圧縮を施すには、同一の数値の連続を符号化することで圧縮を行うランレングス符号化が有効であり、上位サブプレーンＤ１Ｈは、図１に示すＨプレーン圧縮部５５０の構成要素の１つであるランレングス符号化部５５１に入力される。
【０１１０】
本実施形態では、処理の都合上、ランレングス符号化部５５１で、上位サブプレーンＤ１Ｈを構成する連続した４ビットの数値が２つで１つの８ビットの数値として取り扱われ、１６進数表示で値「００」から値「ＦＦ」までの数値の連続に対して以下の符号化処理が適用される。
【０１１１】
この符号化処理では、複数の８ビットの数値のうちの特定の数値についてのみ符号化処理が行なわれる。このため、このランレングス符号化部５５１では、受け取ったデータの中から、符号化処理を行なう数値（ここでは、この数値を「圧縮対象数値」と称する）と、その圧縮対象数値の連続数が検出される。
【０１１２】
本実施形態では、一例として、「０１」、「ＦＦ」および「００」の３つの数値を圧縮対象数値としている。
【０１１３】
図１２は、図１に示すランレングス符号化部５５１での符号化の説明図である。
【０１１４】
図１２の上のラインは、上位サブプレーンＤ１Ｈを構成するデータ、下のラインは、ランレングス符号化部５５１での符号化処理を行なった後のデータである。
【０１１５】
ここでは、図１２の上のラインに示すように、ランレングス符号化部５５１からは、
「０６  ０２  ０２  ０２  ０１  ０１  ０１  ０１  ０４  ０５  ００  …  」
なるデータが入力されたものとする。このとき、図１のランレングス符号化部５５１では、先頭の「０６」は圧縮対象数値ではなく、次に続く「０２  ０２  ０２」も圧縮対象数値ではなく、次に、圧縮対象数値である「０１」が４つ連続していること、次に、圧縮対象数値ではない「０４」、「０５」を間に置いて、圧縮対象数値である「００」が３２７６７個連続していることが検出される。
【０１１６】
図１３は、ランレングス符号化部における、圧縮対象数値を対象にした符号化のアルゴリズムを示す図である。
【０１１７】
この図１３中、Ｚは同一の圧縮対象数値の連続数、例えば図１２の上のラインの「０１」についてはＺ＝４、「００」についてはＺ＝３２７６７である。
【０１１８】
また、図１３中、「ＹＹ」は、１６進２桁で表わされた圧縮対象数値自体を表わしている。その「ＹＹ」に続く、「０」又は「１」は１ビットで表現された「０」又は「１」であり、さらにそれに続く「ＸＸＸ  ＸＸＸＸ…」は、１つの「Ｘ」が１ビットを表わしており、この「ＸＸＸ  ＸＸＸＸ…」でＺの値を表現している。
【０１１９】
すなわち、図１３は、圧縮対象数値「ＹＹ」がＺ＜１２８連続するときは、１バイト目で圧縮対象数値「ＹＹ」を表現し、それに続く１バイトで、先頭ビットが「０」、それに続く７ビットでＺの値を表現すること、また、圧縮対象数値「ＹＹ」がＺ≧１２８連続するときは、１バイト目で圧縮対象数値「ＹＹ」を表現し、それに続く２バイト（１６ビット）のうちの先頭の１ビットを「１」とすることで２バイトに跨って表現されていることを表現し、それに続く１５ビットで、Ｚの値を表現することを意味している。
【０１２０】
この図１３に示す規則に従って図２に示す符号化の例について説明する。
【０１２１】
図１のプレーン分割部５３０から入力されてきた上位サブプレーンＤ１Ｈのデータ（上のライン）を構成する先頭の数値「０６」は圧縮対象数値ではないため、その「０６」のまま出力される。また、それに続く「０２  ０２  ０２」も、「０２」は圧縮対象数値ではなく、これら３つの「０２」もそのまま出力される。次に、圧縮対象数値である「０１」が４個連続するため、「０１  ０４」に符号化される。次の「０４」及び「０５」は圧縮対象数値ではないため、そのまま「０４  ０５」が出力される。
【０１２２】
次に「００」が３２７６７個連続しているため、「００」を置き、次の１バイトのうちの先頭の１ビットを「１」とし、次いで１５ビットで３２７６７−１２８を表現することにより、「００  ＦＦ  ７Ｆ」の３バイトで「００」が３２７６７個連続していることを表現する。すなわち、連続数１２８は、最初のビット「１」を除き、「００  ００」と表現される。
【０１２３】
図１４は、図１のランレングス符号化部５５１における、連続数に応じた符号化処理の例を示す図である。
・「００」が１２７個連続するときは、２バイトを用いて「００  ７Ｆ」に符号化され、
・「００」が３２７６７個連続するときは、３バイトを用いて「００  ＦＦ  ７Ｆ」に符号化され、
・「００」が３２８９５個連続するときは、３バイトを用いて「００  ＦＦ  ＦＦ」に符号化され、
「００」が１２８個連続するときは、３バイトを用いて「００  ８０  ００」に符号化され、
「０１」が１２９個連続するときは、３バイトを用いて「０１  ８０  ０１」に符号化され、
・「ＦＦ」が４０９６個連続するときは、３バイトを用いて「ＦＦ  ８Ｆ  ８０」に符号化される。
【０１２４】
図１に示すランレングス符号化部５５１では、上記のような符号化処理が行なわれる。
【０１２５】
本実施形態によるランレングス符号化部５５１によれば、最大圧縮率は、３／３２８９５＝１／１０，９６５にまで向上する。また、このランレングス符号化部５５１が符号化処理の対象としている上位サブプレーンＤ１Ｈのデータは、図１１のヒストグラムで説明したように、４ビットの数値のほとんどが、データ値「１６」を表現した数値「０」であり、その４ビットの数値から作られる８ビットの数値も、多くが、１６進数表示で数値「００」となる。このためランレングス符号化部５５１における符号化処理によって大幅なデータ圧縮が期待される。
【０１２６】
図１のＨプレーン圧縮部５５０内のランレングス符号化部５５１で上記の符号化処理の行なわれた後のデータは、次に図１のＨプレーン圧縮部５５０を構成するデータスキャニング部５５２とハフマン符号化部５５３に入力される。
【０１２７】
このデータスキャニング部５５２では、先ず、ランレングス符号化部５５１から出力されたデータの全体がスキャニングされてデータ値の出現頻度が求められる。
【０１２８】
図１５は、データスキャニング部５５２によるスキャニング結果の例を示す図である。
【０１２９】
ここでは、「Ａ１」の出現頻度が最も強く、以下順に、「Ａ２」、「Ａ３」、「Ａ４」、…の順であるとする。尚、これら「Ａ１」、「Ａ２」等は数値を直接表わしている訳ではなく、数値を表わす符号である。すなわち、「Ａ１」は例えば数値「００」、「Ａ２」は数値「ＦＦ」等である。また、ここでは、簡単のため、図１のランレングス符号化部５５１から送られてくるデータは全てのデータ値が「Ａ１」〜「Ａ１６」の１６個の数値のうちのいずれかの数値であるものとする。そして、このような１６個の数値それぞれに対して、データスキャニング部５５２では、出現頻度に応じた符号が割り当てられてハフマンテーブルが作成される。即ち、出現頻度の最も高い「Ａ１」には、２ビットで表わされた符号「００」が割り当てられ、次の「Ａ２」には、やはり２ビットで表わされた符号「０１」が割り当てられ、次の「Ａ３」、さらに次の「Ａ４」には、３ビットで表わされる、それぞれ、符号「１００」、符号「１０１」が割り当てられ、次の「Ａ５」〜「Ａ８」には、５ビットで表わされる各符号が割り当てられ、以下同様に、出現頻度が低い数値ほど多くのビット数で表わされた符号が割り当てられる。
【０１３０】
図１６は、ハフマンテーブルの一例を示す図である。
【０１３１】
このハフマンテーブルは、図１５と一致させてあり、出現頻度が高い数値ほど短かいビット数で表わされた符号に置き換えられるように並べられた、符号化前（置き換え前）の数値と符号化後（置き換え後）の数値との対応テーブルである。
【０１３２】
図１のＨプレーン圧縮部５５０を構成するハフマン符号化部５５３では、このようなハフマンテーブルに従ってデータの数値が符号化され、その結果、多くの数値が短かいビット数の符号に置き換えられることとなってデータ圧縮が実現される。
【０１３３】
図１７は、ハフマンテーブルに用意される符号列の具体例を示す図である。
【０１３４】
図１７に示す符号列では、各符号列中の「，」よりも右側の数値がビット長を意味しており、その「，」から左側に並ぶそのビット長分の２進符号が実際の符号を表わしている。例えば、図１７の左上の第１番目の符号は「１１」の２ビット、次の２番目の符号は「０１１」の３ビット、その次の３番目の符号は「０１０」の３ビット、さらにその次の４番目の符号は「１０１０」の４ビットである。このような符号列により、出現頻度が高い数値ほど短かいビット数で表わされた符号に置き換えられる。
【０１３５】
以上の図１２〜図１７で説明した処理により、図１のＨプレーン圧縮部５５０に入力される上位サブプレーンＤ１Ｈについては、ランレングス符号化部５５１による符号化とハフマン符号化部５５３による符号化が施されることにより高い圧縮率で圧縮されて上位圧縮データＤ２Ｈとなる。
【０１３６】
次に、下位サブプレーンＤ１Ｌに対する処理について説明する。プレーン分割部５３０で分割された下位サブプレーンＤ１Ｌは、Ｌプレーン圧縮部５４０を構成するハフマン符号化部５４１において、図１５〜図１７で説明したハフマン符号化処理が行われる。ハフマン符号化後の下位サブプレーンＤ１Ｌは、下位圧縮データＤ２ＬとしてＬプレーン圧縮部５４０から出力される。なお、上述したように、ユーザから、高速モードが指示された場合には、上記のハフマン符号化部５４１によるハフマン符号化処理は省略されて、Ｌプレーン圧縮部５４０から出力されることになる。
【０１３７】
次に、ＦＡＫＥ画素データについての非可逆圧縮処理について説明する。間引き処理部５０５で得られたＦＡＫＥ画素データはＦＡＫＥ画素データ圧縮部５６０に入力され、ＦＡＫＥ画素データ圧縮部５６０内のビット短縮部５６１は、そのＦＡＫＥ画素データがエッジ部分の画素データであるか否かに応じて、このＦＡＫＥ画素データを、４ビットあるいは１ビットに符号化する。エッジ部分であるか否かは、オフセット部５２０によるオフセット後の差分データに基づき、図１のエッジ検出部５２５によって判定される。
【０１３８】
以下、ＦＡＫＥ画素データが符号化される様子について説明する。
【０１３９】
図４に示すＴＲＵＥ画素の画素値をＴｎ＿ｋと表現した場合に、そのＴＲＵＥ画素に隣接するＦＡＫＥ画素の画素値はＦｎ＿ｋ＋１，Ｆｎ＋１＿ｋ，Ｆｎ＋１＿ｋ＋１というように表現され、そのＴＲＵＥ画素に対してそれらのＦＡＫＥ画素を挟んだ位置のＴＲＵＥ画素の画素値は、Ｔｎ＿ｋ＋２，Ｔｎ＋２＿ｋ，Ｔｎ＋２＿ｋ＋２と表現される。エッジ検出部５２５では、このような４つのＴＲＵＥ画素の画素値Ｔｎ＿ｋ，Ｔｎ＿ｋ＋２，Ｔｎ＋２＿ｋ，Ｔｎ＋２＿ｋ＋２から２次元差分符号化処理で得られる差分値（ここでは、前述のように１６進数表示で値「００」から値「ＦＦ」までの数値で表した差分値ではなく、画素値をそのまま差分をとって得られる１０進数表示での差分値）が、エッジ検出部５２５に設定されている正の整数値の閾値パラメータＬを用いて規定される、（−Ｌ）未満の領域、あるいは（＋Ｌ）以上の領域に属する場合には、上述した３つのＦＡＫＥ画素の画素値Ｆｎ＿ｋ＋１，Ｆｎ＋１＿ｋ，Ｆｎ＋１＿ｋ＋１はエッジ部分であると判定され、ビット短縮部５６１において「１」から始まる４ビットの符号に符号化される。
【０１４０】
図１８は、４ビット符号への符号化方式を表す図である。
【０１４１】
この符号化方式では、ＦＡＫＥ画素の画素値は、その画素値を表した８ビットのビット値の下位５桁が切り捨てられ、残った上位３桁の先頭に「１」が付加されることで「１０００」〜「１１１１」の符号に符号化される。従って、この図の表に示すように、符号化前の「０」〜「２５５」の数値のうち「０」〜「３１」の数値は「１０００」に符号化され、「２２」〜「６３」の数値は「１００１」に符号化される。以下同様に、「６４」〜「９５」、「９６」〜「１２７」、「１２８」〜「１５９」、「１６０」〜「１９１」、「１９２」〜「２２３」、「２２４」〜「２５５」の数値は、それぞれ、「１０１０」、「１０１１」、「１１００」、「１１０１」、「１１１０」、「１１１１」に符号化される。このような符号化方式は、ビット値の桁の切り捨てというごく単純な処理で実現される。このような４ビット符号への符号化によって元の画像の情報がある程度維持されて画質低下が回避される。
【０１４２】
エッジ検出部５２５では、上述した４つのＴＲＵＥ画素の画素値Ｔｎ＿ｋ，Ｔｎ＿ｋ＋２，Ｔｎ＋２＿ｋ，Ｔｎ＋２＿ｋ＋２から２次元差分符号化処理で得られる差分値が、（−Ｌ）以上かつ（＋Ｌ）以下の領域に属する場合には、上述した３つのＦＡＫＥ画素の画素値Ｆｎ＿ｋ＋１，Ｆｎ＋１＿ｋ，Ｆｎ＋１＿ｋ＋１はエッジ部分ではないと判定され、ビット短縮部５６１において１ビットの符号「０」に符号化される。
【０１４３】
１ビットまたは４ビットの符号に置換されたデータは、ランレングス符号化部５６２およびハフマン符号化部５６３によって、上記Ｈプレーン圧縮部５５０における処理と全く同様の処理が施される。ここで、ＦＡＫＥ画素データ圧縮部５６０にも、Ｈプレーン圧縮部５５０のデータスキャニング部５５２と同様の働きをするデータスキャニング部が存在するが、図１ではその図示は省略されている。ランレングス符号化処理およびハフマン符号化処理が施されたＦＡＫＥ画素データは、非可逆圧縮データＤ３としてＦＡＫＥ画素データ圧縮部５６０から出力される。
【０１４４】
Ｌプレーン圧縮部５４０およびＨプレーン圧縮部５５０のそれぞれから出力される下位圧縮データＤ２Ｌと上位圧縮データＤ２Ｈとに、さらに非可逆圧縮データＤ３が加わったデータの組で、元の画像データに対して非可逆圧縮処理が施された圧縮データが構成される。そして、その非可逆圧縮処理が施された圧縮データの連続によって、元の動画データに対して非可逆圧縮処理が施された圧縮動画データが構成される。
【図面の簡単な説明】
【０１４５】
【図１】本発明の動画圧縮装置の一実施形態を示すブロック構成図である。
【図２】動画圧縮装置が構築されるパーソナルコンピュータのハードウェア構成図である。
【図３】本発明の動画圧縮プログラムの一実施形態に相当する画像圧縮処理プログラムの模式構成図である。
【図４】動画圧縮装置に入力される画像データのデータ構造および間引き処理の概念を示す図である。
【図５】フレーム間での間引き出し位置の変化を説明する図である。
【図６】差分符号化部に入力されるＴＲＵＥ画素データの構造を示す図である。
【図７】ＴＲＵＥ画素データに対して２次元差分符号化処理が施された後のデータの構造を示す図である。
【図８】差分符号化部における２次元差分符号化処理を例示して示す図である。
【図９】画像データの例を示す図である。
【図１０】画像データに対する２次元差分符号化およびオフセットの効果を示す図である。
【図１１】プレーン分割部によるデータ分割の効果を説明する図である。
【図１２】ランレングス符号化部での符号化の説明図である。
【図１３】ランレングス符号化部における、圧縮対象数値を対象にした符号化のアルゴリズムを示す図である。
【図１４】ランレングス符号化部における、連続数に応じた符号化処理の例を示す図である。
【図１５】データスキャニング部によるスキャニング結果の例を示す図である。
【図１６】ハフマンテーブルの一例を示す図である。
【図１７】ハフマンテーブルに用意される符号列の具体例を示す図である。
【図１８】４ビット符号への符号化方式を表す図である。
【符号の説明】
【０１４６】
１００    パーソナルコンピュータ
１４０    ＣＤ型媒体
１５０    汎用インターフェースケーブル
５００    画像圧縮装置
５０５    間引き処理部
５１０    差分符号化部
５２０    オフセット部
５２５    エッジ検出部
５３０    プレーン分割部
５４０    Ｌプレーン圧縮部
５４１    ハフマン符号化部
５４２    モード切換部
５５０    Ｈプレーン圧縮部
５５１    ランレングス符号化部
５５２    データスキャニング部
５５３    ハフマン符号化部
５６０    ＦＡＫＥ画素圧縮部
５６１    ビット短縮部
５６２    ランレングス符号化部
５６３    ハフマン符号化部
６００    画像圧縮プログラム
６０５    間引き処理部
６１０    差分符号化部
６２０    オフセット部
６２５    エッジ検出部
６３０    プレーン分割部
６４０    Ｌプレーン圧縮部
６５０    Ｈプレーン圧縮部
６６０    ＦＡＫＥ画素圧縮部
【図１】
2009290552.tif 000007
【図２】
2009290552.tif 000008
【図３】
2009290552.tif 000009
【図４】
2009290552.tif 000010
【図５】
2009290552.tif 000011
【図６】
2009290552.tif 000012
【図７】
2009290552.tif 000013
【図８】
2009290552.tif 000014
【図９】
2009290552.tif 000015
【図１０】
2009290552.tif 000016
【図１１】
2009290552.tif 000017
【図１２】
2009290552.tif 000018
【図１３】
2009290552.tif 000019
【図１４】
2009290552.tif 000020
【図１５】
2009290552.tif 000021
【図１６】
2009290552.tif 000022
【図１７】
2009290552.tif 000023
【図１８】
2009290552.tif 000024