(57)【要約】【課題】伸長の処理負荷がより少ない「画像圧縮装置、画像圧縮方法、画像伸長装置および画像伸長方法」を提供する。【解決手段】画像データの画素の色を形成する複数の色要素の各々を単独として、または複数の色要素を任意に組み合わせて、圧縮の基本単位を設定する基本単位設定部１２と、当該設定した基本単位が有する値を所定の規則に基づく符号化処理に従って圧縮する圧縮処理部１３とを備え、従来の動画コーデックや静止画コーデックのような複雑な処理は行わず、各画素の色を形成する複数の色要素について設定した基本単位が有する値を単に所定の規則に基づいて符号化するといった簡易な処理によって圧縮を行うことにより、圧縮とは逆の処理によって行われる伸長が簡易な処理で済むようにし、従来に比べて伸長の処理負荷を低減することができるようにする。【選択図】図１
2016208356.tif 000002
【特許請求の範囲】
【請求項１】
画像データの画素の色を形成する複数の色要素の各々を単独として、または上記複数の色要素を任意に組み合わせて、圧縮の基本単位を設定する基本単位設定部と、
上記基本単位設定部により設定された上記基本単位が有する値を所定の規則に基づく符号化処理に従って圧縮する圧縮処理部とを備えたことを特徴とする画像圧縮装置。
【請求項２】
上記所定の規則に基づく符号化処理は、上記基本単位に関する対象画素の値を直前の画素の値との差分情報に置き換える処理であることを特徴とする請求項１に記載の画像圧縮装置。
【請求項３】
上記所定の規則に基づく符号化処理は、上記基本単位について直前の画素の値と同じ値の画素が複数連続する場合に、当該複数の画素の値を繰り返し回数情報に置き換える処理であることを特徴とする請求項１に記載の画像圧縮装置。
【請求項４】
上記所定の規則に基づく符号化処理は、上記基本単位の値の組み合わせがパレットとしてあらかじめ設定した組み合わせに該当する場合に、当該基本単位の値の組み合わせをパレット識別情報に置き換える処理であることを特徴とする請求項１に記載の画像圧縮装置。
【請求項５】
上記基本単位設定部により複数種類の上記基本単位を設定し、当該複数種類の基本単位の設定下で上記圧縮処理部による符号化処理をそれぞれ実行し、最も圧縮率が高くなる場合の基本単位を採用して上記画像データを圧縮するようにしたことを特徴とする請求項１に記載の画像圧縮装置。
【請求項６】
上記画像データの１フレーム毎に請求項５に記載の処理を実行し、最も圧縮率が高くなる場合の基本単位を上記１フレーム毎に採用して上記画像データを圧縮するようにしたことを特徴とする画像圧縮装置。
【請求項７】
上記画像データの１ライン毎または１ブロック毎に請求項５に記載の処理を実行し、最も圧縮率が高くなる場合の基本単位を上記１ライン毎または上記１ブロック毎に採用して上記画像データを圧縮するようにしたことを特徴とする画像圧縮装置。
【請求項８】
請求項６に記載の処理と請求項７に記載の処理とを両方実行し、圧縮率がより高くなる方の処理を採用して上記画像データを圧縮するようにしたことを特徴とする画像圧縮装置。
【請求項９】
上記圧縮処理部は、上記所定の規則に基づく符号化処理として、上記基本単位に関する対象画素の値を直前の画素の値との差分情報に置き換える第１の符号化処理、上記基本単位について直前の画素の値と同じ値の画素が複数連続する場合に当該複数の画素の値を繰り返し回数情報に置き換える第２の符号化処理、または、上記基本単位の値の組み合わせがパレットとしてあらかじめ設定した組み合わせに該当する場合に当該基本単位の値の組み合わせをパレット識別情報に置き換える第３の符号化処理の中から何れか適合する処理を選択して順次実行し、選択した符号化処理を表すコード情報を付加して成る圧縮データを生成することを特徴とする請求項１に記載の画像圧縮装置。
【請求項１０】
画像圧縮装置の基本単位設定部が、画像データの画素の色を形成する複数の色要素の各々を単独として、または上記複数の色要素を任意に組み合わせて、圧縮の基本単位を設定する基本単位設定ステップと、
上記画像圧縮装置の圧縮処理部が、上記基本単位設定ステップにて設定された上記基本単位が有する値を所定の規則に基づく符号化処理に従って圧縮する圧縮処理ステップとを有することを特徴とする画像圧縮方法。
【請求項１１】
上記基本単位設定部により複数種類の上記基本単位を設定し、当該複数種類の基本単位の設定下で上記圧縮処理部による符号化処理をそれぞれ実行し、最も圧縮率が高くなる場合の基本単位を採用して上記画像データを圧縮するようにしたことを特徴とする請求項１０に記載の画像圧縮方法。
【請求項１２】
請求項１に記載の画像圧縮装置により生成された圧縮データを対象として、上記所定の規則に基づく符号化処理の逆処理を行うことによって、上記基本単位が有する値を復号する復号処理部と、
上記復号処理部によって復号された上記基本単位が有する値を用いて、上記複数の色要素から成る画素の値を再現する画素値生成部とを備えたことを特徴とする画像伸長装置。
【請求項１３】
画像伸長装置の復号処理部が、請求項１０に記載の画像圧縮方法により生成された圧縮データを対象として、上記所定の規則に基づく符号化処理の逆処理を行うことによって、上記基本単位が有する値を復号する復号処理ステップと、
上記画像伸長装置の画素値生成部が、上記復号処理ステップにて復号された上記基本単位が有する値を用いて、上記複数の色要素から成る画素の値を再現する画素値生成ステップとを有することを特徴とする画像伸長方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像圧縮装置、画像圧縮方法、画像伸長装置および画像伸長方法に関し、特に、隣接画素との画素値の変化が比較的小さい画像の圧縮・伸長に用いて好適なものである。
【背景技術】
【０００２】
一般に、動画データは容量が大きいため、データ転送における通信トラフィックやデータ蓄積に必要な記憶容量の削減などを目的として、圧縮技術を用いてデータ量を減らすのが通常である。特に、動画データはデータ量が極めて大きくなる傾向にある。そのため、動画コーデックのほとんどが、可逆圧縮に比べて圧縮率の大きい非可逆圧縮のアルゴリズムを採用している。
【０００３】
なお、画像データをＹＣｂＣｒのデータ形式に変換し、ＹＣｂＣｒデータに対してＭＰＥＧエンコーダまたはＭｏｔｉｏｎ−ＪＰＥＧエンコーダにより圧縮を行うようにした技術も考案されている（例えば、特許文献１参照）。
【０００４】
圧縮されたデータは、利用する前に必ず伸長処理を行うことが必要である。動画データの圧縮においては、圧縮率も重要な要素であるが、元画像の再現性（再生画像の品質）も重要な要素である。また、スムーズに再生するために伸長処理の負荷を小さくすることも考慮しなければならない。すなわち、動画圧縮では、圧縮率、画質、圧縮・伸長の処理負荷といった様々な要因のトレードオフを考慮して、どのようなアルゴリズムのコーデックを採用するかが決定される。
【０００５】
例えば、電子機器の電源をオンとしたときの起動時に再生される動画（以下、オープニングムービーという）の場合は、起動時間への影響を考慮して、伸長の処理負荷が小さいコーデックが求められる。このため、ＭＰＥＧのような動画コーデックではなく、静止画コーデックを用いて複数枚の静止画データを圧縮して保存しておき、起動時にこれらの静止画圧縮データを順次伸長してパラパラ漫画のように再生することが行われている。
【０００６】
静止画コーデックでよく用いられる非可逆圧縮方式のＪＰＥＧは、ＤＣＴ（discrete cosine transform）、量子化、ハフマン符号化といった処理を行っている。また、可逆圧縮方式のＰＮＧ（Portable Network Graphics）は、５種類のフィルタ（上／左／右との差／平均）を横１ライン毎に変換可能で、フィルタリング後に圧縮することで圧縮率を改善している。
【０００７】
しかしながら、これらの何れのコーデックにおいても、伸長処理に必要な演算量が多くなる。そのため、従来のコーデックをオープニングムービーに適用すると、当該オープニングムービーの再生と並行して実行される電子機器の起動処理にかかる時間が長くなってしまうといった問題があった。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００６−３３１９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明は、このような問題を解決するために成されたものであり、伸長の処理負荷がより少ないコーデックを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記した課題を解決するために、本発明の画像圧縮装置では、画像データの画素の色を形成する複数の色要素の各々を単独として、または複数の色要素を任意に組み合わせて、圧縮の基本単位を設定し、当該設定した基本単位が有する値を所定の規則に基づく符号化処理に従って圧縮するようにしている。
【００１１】
また、本発明の画像伸長装置では、上記の画像圧縮装置により生成された圧縮データを対象として、所定の規則に基づく処理の逆処理を行うことによって、基本単位が有する値を復号し、当該復号した基本単位が有する値を用いて、複数の色要素から成る画素の値を再現するようにしている。
【発明の効果】
【００１２】
上記のように構成した本発明によれば、従来の動画コーデックや静止画コーデックのような複雑な処理は行わず、各画素の色を形成する複数の色要素について設定した基本単位が有する値を単に所定の規則に基づいて符号化するといった簡易な処理によって圧縮が行われる。これにより、圧縮とは逆の処理によって行われる伸長も簡易な処理となり、従来に比べて伸長の処理負荷を低減することができる。
【図面の簡単な説明】
【００１３】
【図１】本実施形態による画像圧縮装置の機能構成例を示すブロック図である。
【図２】本実施形態の第１〜第３の符号化処理によって生成される圧縮データの構成例を示す図である。
【図３】本実施形態の圧縮処理部により実行される具体的な圧縮処理の例を示す図である。
【図４】本実施形態の圧縮処理部により実行される具体的な圧縮処理の例を示す図である。
【図５】本実施形態による画像圧縮装置の第１の動作例を示すフローチャートである。
【図６】本実施形態による画像圧縮装置の第２の動作例を示すフローチャートである。
【図７】本実施形態による画像圧縮装置の第３の動作例を示すフローチャートである。
【図８】本実施形態による画像伸長装置の機能構成例を示すブロック図である。
【図９】本実施形態による画像伸長装置の動作例を示すフローチャートである。
【図１０】本実施形態の画像圧縮装置によって生成される圧縮データの他の構成例を示す図である。
【図１１】本実施形態の画像圧縮装置によって生成される圧縮データの他の構成例を示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明の一実施形態を図面に基づいて説明する。図１は、本実施形態による画像圧縮装置の機能構成例を示すブロック図である。図１に示すように、本実施形態の画像圧縮装置１００は、その機能構成として、画像データ取得部１１、基本単位設定部１２、圧縮処理部１３、圧縮率算出部１４および制御部１５を備えている。圧縮処理部１３は、より具体的な機能構成として、差分情報置換部１３Ａ、繰り返し回数置換部１３Ｂおよびパレット置換部１３Ｃを備えている。
【００１５】
上記各機能ブロック１１〜１５は、ハードウェア、ＤＳＰ（Digital Signal Processor）、ソフトウェアの何れによっても構成することが可能である。例えばソフトウェアによって構成する場合、上記各機能ブロック１１〜１５は、実際にはコンピュータのＣＰＵ、ＲＡＭ、ＲＯＭなどを備えて構成され、ＲＡＭやＲＯＭ、ハードディスクまたは半導体メモリ等の記録媒体に記憶されたプログラムが動作することによって実現される。
【００１６】
画像データ取得部１１は、圧縮対象とする画像データを取得する。例えば、画像データ取得部１１は、電子機器のオープニングムービーとして使用する画像データを取得する。本実施形態では、コーデックの色空間の一例としてＹＣｂＣｒを使用する。すなわち、画像データ取得部１１は、１画素がＹ，Ｃｂ，Ｃｒの３つの色要素から成る画像データを取得する。なお、１画素がＲ，Ｇ，Ｂの３つの色要素から成る画像データを画像データ取得部１１が取得し、これをＹＣｂＣｒの画像データに変換するようにしてもよい。
【００１７】
基本単位設定部１２は、画像データ取得部１１により取得された画像データの画素の色を形成する複数の色要素の各々を単独として、または複数の色要素を任意に組み合わせて、圧縮の基本単位を設定する。例えば、基本単位設定部１２は、Ｙ，Ｃｂ，Ｃｒの各々を単独として圧縮の基本単位を設定する。この場合、圧縮の基本単位は３種類となる。
【００１８】
あるいは、基本単位設定部１２は、Ｙ単独と、ＣｂＣｒの組み合わせとを各々圧縮の基本単位として設定する。この場合、圧縮の基本単位は２種類となる。さらに、ＹＣｂの組み合わせとＣｒ単独とをそれぞれ基本単位として設定してもよい。また、ＹＣｂの組み合わせとＹＣｒの組み合わせとをそれぞれ基本単位として設定してもよい。何れの場合も、圧縮の基本単位は２種類である。この他、基本単位設定部１２は、任意の組み合わせで圧縮の基本単位を設定することが可能である。
【００１９】
圧縮処理部１３は、基本単位設定部１２により設定された基本単位が有する値を所定の規則に基づく符号化処理に従って圧縮する。例えば、基本単位設定部１２によってＹ，Ｃｂ，Ｃｒの各々を単独として圧縮の基本単位を設定した場合、圧縮処理部１３は、Ｙ，Ｃｂ，Ｃｒの各々の画素値を、所定の規則に基づく符号化処理に従って圧縮する。また、基本単位設定部１２によってＹ単独とＣｂＣｒの組み合わせとを圧縮の基本単位として設定した場合、圧縮処理部１３は、Ｙの画素値と、Ｃｂの画素値およびＣｒの画素値を組み合わせて成る組み合わせ値とを、所定の規則に基づく符号化処理に従って圧縮する。
【００２０】
本実施形態では、一例として、１つの色要素の値が１６ビット（２バイト）で示された画像データを対象として、基本単位の値を符号化処理によって８ビット（１バイト）の値に圧縮するものとする。例えば、Ｙ，Ｃｂ，Ｃｒの各々を基本単位として圧縮する場合、圧縮処理部１３は、Ｙ，Ｃｂ，Ｃｒの各２バイトの値を、Ｙ，Ｃｂ，Ｃｒの各１バイトの値に圧縮する。また、Ｙ，ＣｂＣｒの各々を基本単位として圧縮する場合、圧縮処理部１３は、Ｙの２バイトの値をＹの１バイトの値に圧縮するとともに、ＣｂＣｒの４バイトの値をＣｂＣｒの１バイトの値に圧縮する。
【００２１】
本実施形態では、符号化処理に関する所定の規則として３種類の規則を用意している。この３種類の規則に従って符号化処理を行うのが、差分情報置換部１３Ａ、繰り返し回数置換部１３Ｂおよびパレット置換部１３Ｃである。差分情報置換部１３Ａは、基本単位に関する対象画素の値を直前の画素の値との差分情報に置き換える処理（第１の符号化処理）を行う。ここで、差分情報置換部１３Ａは、従来の圧縮コーデックで一般的なフレーム間の差分情報を検出するのではなく、直前の画素間の差分情報を検出することを特徴としている。これにより、差分情報を検出するために用いるバッファの容量を小さくすることができる。
【００２２】
例えば、ある画素における基本単位の値が“０５ｈ”（ビット列で表わすと“０００００００００００００１０１”）、直前の画素における基本単位の値が“０４ｈ”（ビット列で表わすと“０００００００００００００１００”）であったとする。この場合、差分情報置換部１３Ａは、２バイトから成る基本単位の値“０５ｈ”を、１バイトから成る“＋１”を示す差分情報に置換する。オープニングムービーでは、急激な色の変化を有する画像ではなく、グラデーションのように徐々に変化する画像が使われることが多いので、隣接画素間で画素値の差分は比較的小さくなる。よって、２バイトの値を１バイトの差分情報に置換することが可能である。
【００２３】
繰り返し回数置換部１３Ｂは、基本単位について直前の画素の値と同じ値の画素が複数連続する場合に、当該複数の画素の値を繰り返し回数情報に置き換える処理（第２の符号化処理）を行う。例えば、ある画素から基本単位の値“０５ｈ”が５画素連続していたとする（０５ｈ，０５ｈ，０５ｈ，０５ｈ，０５ｈ）。この場合、繰り返し回数置換部１３Ｂは、２画素目から５画素目までの４つの基本単位の値“０５ｈ”を、４回の繰り返し回数を示す１つの繰り返し回数情報に置換する。このケースでは、４画素で合計８バイトの値を１バイトの繰り返し回数情報に置換することができる。よって、同じ値の繰り返し回数が多くなるほど、圧縮率が上がる。
【００２４】
パレット置換部１３Ｃは、基本単位の値の組み合わせがパレットとしてあらかじめ設定した組み合わせに該当する場合に、当該基本単位の値の組み合わせをパレット識別情報に置き換える処理（第３の符号化処理）を行う。例えば、Ｙ，Ｃｂ，Ｃｒの３つの基本単位の値の組み合わせ「００ｈ，８０ｈ，８０ｈ」を１つのパレットとして定義した場合、パレット置換部１３Ｃは、この合計６バイトの値を、１バイトから成るパレット識別情報に置換することができる。本実施形態では、符号化される値を１バイトで表現するため、１バイトで識別可能な数のパレットをあらかじめ設定しておくことが可能である。
【００２５】
なお、ここでは、３つの基本単位の値の組み合わせを１つのパレットとして定義する例を示したが、２つまたは４つ以上の基本単位の値の組み合わせを１つのパレットとして定義するようにしてもよい。ここで、基本単位の組み合わせ数を多くしてパレットを定義するほど、パレット識別情報に置換したときの圧縮率を高めることができる。ただし、元の画像データの中にそのパレットと同じ組み合わせの値が含まれる可能性は低くなるので、パレット識別情報に置換できる頻度は逆に少なくなる。よって、この二律相反の関係を考慮して、あらかじめ設定するパレットの内容を決定しておく。
【００２６】
図２は、差分情報置換部１３Ａ、繰り返し回数置換部１３Ｂおよびパレット置換部１３Ｃによる第１〜第３の符号化処理によって生成される圧縮データの構成例を示す図である。図２（ａ）は、差分情報置換部１３Ａによって生成される差分情報の構成例を示す。１バイトの差分情報のうち、ＭＳＢ（Most Significant Bit）から２ビットは、差分情報であることを示すコード情報“１０ｂ”である。３ビット目は、±の符号を示す情報である（＋を“０”、−を“１”で示すものとする）。残りの５ビットが、差分の値を示す情報である。したがって、上述した例における“＋１”の差分情報は、“１００００００１”＝“８１ｈ”で表わされる。
【００２７】
図２（ｂ）は、繰り返し回数置換部１３Ｂによって生成される繰り返し回数情報の構成例を示す。１バイトの繰り返し回数情報のうち、ＭＳＢから２ビットは、繰り返し回数情報であることを示すコード情報“０１ｂ”である。残りの６ビットが、繰り返し回数の値を示す情報である。したがって、上述した例における４回の繰り返しを示す繰り返し回数情報は、“０１００００１１”＝“４３ｈ”で表わされる（１回の繰り返し回数が“００００”で表わされるため、４回の繰り返し回数は“００１１”で表わされる）。
【００２８】
図２（ｃ）は、パレット置換部１３Ｃによって生成されるパレット識別情報の構成例を示す。１バイトのパレット識別情報のうち、ＭＳＢから２ビットは、パレット識別情報であることを示すコード情報“００ｂ”である。残りの６ビットが、個々のパレットを識別するための情報（以下、パレットＩＤという）である。例えば、上述した「００ｈ，８０ｈ，８０ｈ」の３つの基本単位の値の組み合わせから成るパレットのパレットＩＤを[０]と定義した場合、パレット識別情報は、“００００００００”＝“００ｈ”で表わされる。
【００２９】
なお、差分情報、繰り返し回数情報、パレット識別情報の何れにも置換することができない場合は、図２（ｄ）に示すように、コード情報を“１１ｂ”とし、その後に続けて基本単位の値を置くようにする。
【００３０】
以上のように、圧縮処理部１３は、画像データ取得部１１により取得された画像データに対して、基本単位設定部１２により設定された基本単位ごとに、差分情報置換部１３Ａによる第１の符号化処理、繰り返し回数置換部１３Ｂによる第２の符号化処理、または、パレット置換部１３Ｃによる第３の符号化処理の中から何れか適合する処理を選択して順次実行し、選択した符号化処理を表すコード情報を付加して成る圧縮データを生成する。
【００３１】
図３および図４は、圧縮処理部１３により実行される具体的な圧縮処理の例を示す図である。図３は、基本単位設定部１２によってＹ，Ｃｂ，Ｃｒの各々を圧縮の基本単位として設定し、Ｙ，Ｃｂ，Ｃｒの各々の値を圧縮処理部１３が第１〜第３の符号化処理の何れかを適用して圧縮する例を示している。なお、ここでは一例として、画像データがＹＣｂＣｒ４：２：２というデータ形式であるものとして説明する。
【００３２】
図３の例では、画像データ取得部１１により取得された画像データの値が「００ｈ，８０ｈ，００ｈ，８０ｈ，００ｈ，８０ｈ，００ｈ，８０ｈ」で示されている。この画像データのデータ形式がＹＣｂＣｒ４：２：２である場合は、１画素目のＹ，Ｃｂ，Ｃｒの値は「００ｈ，８０ｈ，８０ｈ」、２画素目のＹ，Ｃｂ，Ｃｒの値も「００ｈ，８０ｈ，８０ｈ」、３画素目のＹ，Ｃｂ，Ｃｒの値も「００ｈ，８０ｈ，８０ｈ」、４画素目のＹ，Ｃｂ，Ｃｒの値も「００ｈ，８０ｈ，８０ｈ」となる。
【００３３】
この場合、Ｙ，Ｃｂ，Ｃｒの３つの基本単位の値の組み合わせ「００ｈ，８０ｈ，８０ｈ」はパレットＩＤ[０]のパレットに相当し、これが４画素にわたり連続していることになる。よって、圧縮処理部１３は、１画素目については、パレット置換部１３Ｃによる第３の符号化処理を適用して、６バイトから成る「００ｈ，８０ｈ，８０ｈ」の値を１バイトのパレット識別情報“００ｈ”に置換する。また、２〜４画素目については、繰り返し回数置換部１３Ｂによる第２の符号化処理を適用して、合計１８バイトから成る値を１バイトの繰り返し回数情報“４２ｈ”に置換する。
【００３４】
次に、図４の例では、画像データ取得部１１により取得された画像データの値が「０４ｈ，８２ｈ，０５ｈ，７Ｄｈ，０５ｈ，８１ｈ，０５ｈ，７Ｄｈ」で示されている。図４では、基本単位設定部１２によってＹ，ＣｂＣｒの各々を圧縮の基本単位として設定し、Ｙ，ＣｂＣｒの各々の値を圧縮処理部１３が第１〜第３の符号化処理の何れかを適用して圧縮する例を示している。
【００３５】
画像データのデータ形式がＹＣｂＣｒ４：２：２である場合は、Ｙの基本単位の値は「０４ｈ，０５ｈ，０５ｈ，０５ｈ」という並びで表わされ、ＣｂＣｒの基本単位の値は「８２７Ｄｈ，８１７Ｄｈ」という並びで表わされる。この場合、Ｙの基本単位に関しては、１つ目は圧縮できないのでそのまま２バイトの“０４ｈ”とする。２つ目については差分情報置換部１３Ａによる第１の符号化処理を適用して、２バイトから成る「０５ｈ」の値を１バイトの差分情報“８１ｈ”に置換する。また、３〜４つ目については、繰り返し回数置換部１３Ｂによる第２の符号化処理を適用して、合計４バイトから成る値を１バイトの繰り返し回数情報“４１ｈ”に置換する。
【００３６】
一方、ＣｂＣｒの基本単位に関しては、１つ目は圧縮できないのでそのまま４バイトの“８２７Ｄｈ”とする。２つ目については差分情報置換部１３Ａによる第１の符号化処理を適用して、４バイトから成る「８１７Ｄｈ」の値を１バイトの差分情報“Ａ８ｈ”に置換する。なお、“Ａ８ｈ”のデータを構成する８ビットのうち、ＭＳＢから２ビットの値“１０ｂ”は差分情報であることを示すコード情報である。続く３ビットの値“１０１ｂ”はＣｂに関する差分値であり、先頭の１ビットは±の符号を示している。また、残り３ビットの値“０００ｂ”はＣｒに関する差分値であり、先頭の１ビットは±の符号を示している。
【００３７】
この図４の例のように、複数の色要素を組み合わせて圧縮の基本単位を設定した場合、どのような組み合わせで基本単位を設定したかを識別できるようにしておく必要がある。よって、基本単位の種類を表すコード情報を付加して圧縮データを構成するようにする。図４の例では、Ｙの基本単位を示すコード情報を“Ｃ０ｈ”とし、ＣｂＣｒの基本単位を示すコード情報を“Ｃ５ｈ”とし、それぞれのコード情報の後に続けて、基本単位ごとに符号化した値を配置することによって圧縮データを構成している。
【００３８】
すなわち、圧縮処理部１３によって得られる圧縮データの値は「Ｃ０ｈ，０４ｈ，８１ｈ，４１ｈ，Ｃ５ｈ，８２ｈ，７Ｄｈ，Ａ８ｈ」であり、“Ｃ０ｈ”の後に続く「０４ｈ，８１ｈ，４１ｈ」がＹの基本単位に関する圧縮データ、“Ｃ５ｈ”の後に続く「８２ｈ，７Ｄｈ，Ａ８ｈ」がＣｂＣｒの基本単位に関する圧縮データであることが示されている。
【００３９】
圧縮率算出部１４は、圧縮処理部１３により圧縮された画像データについて、圧縮率を算出する。
【００４０】
制御部１５は、基本単位設定部１２および圧縮処理部１３の動作を制御する。例えば、制御部１５は、基本単位設定部１２により複数種類の基本単位を設定し、当該複数種類の基本単位の設定下で圧縮処理部１３による符号化処理をそれぞれ実行し、最も圧縮率が高くなる場合の基本単位を採用して画像データを圧縮するように制御する。
【００４１】
ここで、制御部１５は、例えば、画像データの１フレーム毎に上述の制御を実行し、最も圧縮率が高くなる場合の基本単位を１フレーム毎に採用して画像データを圧縮するようにしてもよい。あるいは、制御部１５は、画像データの１ライン毎または所定の画素数から成る矩形の１ブロック毎に上述の制御を実行し、最も圧縮率が高くなる場合の基本単位を１ライン毎または１ブロック毎に採用して画像データを圧縮するようにしてよい。
【００４２】
また、制御部１５は、画像データの１フレーム毎に上述の制御を実行し、最も圧縮率が高くなる場合の基本単位を１フレーム毎に採用して画像データを圧縮する処理と、画像データの１ライン毎または１ブロック毎に上述の制御を実行し、最も圧縮率が高くなる場合の基本単位を１ライン毎または１ブロック毎に採用して画像データを圧縮する処理とを両方とも実行し、圧縮率がより高くなる方の処理を採用して画像データを圧縮するようにしてもよい。
【００４３】
図５は、上記のように構成した本実施形態による画像圧縮装置１００の第１の動作例を示すフローチャートである。この図５に示すフローチャートは、圧縮対象とする画像データを指定して圧縮処理の開始を指示したときに開始する。この図５のフローチャートは、最も圧縮率が高くなる場合の基本単位を１フレーム毎に採用して画像データを圧縮する場合の動作例を示したものである。
【００４４】
まず、画像データ取得部１１は、圧縮対象とする画像データの１フレーム分を取得する（ステップＳ１）。次に、基本単位設定部１２は、画像データ取得部１１により取得された画像データの画素の色を形成する複数の色要素について、圧縮の基本単位を設定する（ステップＳ２）。ここでは、あらかじめ用意した複数パターンの基本単位のうち、何れか１パターンの基本単位を設定する。
【００４５】
次に、圧縮処理部１３は、基本単位設定部１２により設定された基本単位が有する値を第１〜第３の符号化処理に従って圧縮する（ステップＳ３）。すなわち、圧縮処理部１３は、基本単位設定部１２により設定された基本単位ごとに、差分情報置換部１３Ａによる第１の符号化処理、繰り返し回数置換部１３Ｂによる第２の符号化処理、または、パレット置換部１３Ｃによる第３の符号化処理の中から何れか適合する処理を選択して順次実行することにより、１フレームの画像データを圧縮する。
【００４６】
１フレームの圧縮が終わると、圧縮率算出部１４は、圧縮された画像データの圧縮率を算出する（ステップＳ４）。ここで算出された圧縮率は、後に比較するために一時的に記憶しておく。その後、基本単位設定部１２は、あらかじめ用意された複数パターンの基本単位の全てを設定してデータ圧縮を行ったか否かを判定する（ステップＳ５）。まだ設定していない基本単位のパターンがある場合、処理はステップＳ２に戻って別のパターンの基本単位を設定し、新たに設定された基本単位の下でステップＳ３〜Ｓ４の処理を再度実行する。
【００４７】
一方、ステップＳ５において、あらかじめ用意された複数パターンの基本単位を全て設定し終えたと基本単位設定部１２により判定された場合、制御部１５は、それぞれのパターン毎に算出された圧縮率を比較して、最も圧縮率が高くなるパターンの基本単位を採用し、その基本単位の下で圧縮された画像データを圧縮処理部１３から出力するように制御する（ステップＳ６）。
【００４８】
その後、画像データ取得部１１は、圧縮対象とする画像データの全てのフレームを取得し終えたか否かを判定する（ステップＳ７）。ここで、未処理のフレームが残っている場合、処理はステップＳ１に戻り、画像データ取得部１１が次の１フレーム分の画像データを取得する。そして、ステップＳ２〜Ｓ６の処理を再度実行する。一方、画像データ取得部１１が全てのフレームの画像データを取得し終えた場合、図５に示すフローチャートの処理は終了する。
【００４９】
図６は、本実施形態による画像圧縮装置１００の第２の動作例を示すフローチャートである。この図６に示すフローチャートは、圧縮対象とする画像データを指定して圧縮処理の開始を指示したときに開始する。この図６のフローチャートは、最も圧縮率が高くなる場合の基本単位を１ライン毎に採用して画像データを圧縮する場合の動作例を示したものである。
【００５０】
まず、画像データ取得部１１は、圧縮対象とする画像データの１フレームのうち１ライン分のデータを取得する（ステップＳ１１）。次に、基本単位設定部１２は、画像データ取得部１１により取得された画像データの画素の色を形成する複数の色要素について、圧縮の基本単位を設定する（ステップＳ１２）。ここでは、あらかじめ用意した複数パターンの基本単位のうち、何れか１パターンの基本単位を設定する。
【００５１】
次に、圧縮処理部１３は、基本単位設定部１２により設定された基本単位が有する値を第１〜第３の符号化処理に従って圧縮する（ステップＳ１３）。すなわち、圧縮処理部１３は、基本単位設定部１２により設定された基本単位ごとに、差分情報置換部１３Ａによる第１の符号化処理、繰り返し回数置換部１３Ｂによる第２の符号化処理、または、パレット置換部１３Ｃによる第３の符号化処理の中から何れか適合する処理を選択して順次実行することにより、１ラインの画像データを圧縮する。
【００５２】
１ラインの圧縮が終わると、圧縮率算出部１４は、圧縮された画像データの圧縮率を算出する（ステップＳ１４）。ここで算出された圧縮率は、後に比較するために一時的に記憶しておく。その後、基本単位設定部１２は、あらかじめ用意された複数パターンの基本単位の全てを設定してデータ圧縮を行ったか否かを判定する（ステップＳ１５）。まだ設定していない基本単位のパターンがある場合、処理はステップＳ１２に戻って別のパターンの基本単位を設定し、新たに設定された基本単位の下でステップＳ１３〜Ｓ１４の処理を再度実行する。
【００５３】
一方、ステップＳ１５において、あらかじめ用意された複数パターンの基本単位を全て設定し終えたと基本単位設定部１２により判定された場合、制御部１５は、それぞれのパターン毎に算出された圧縮率を比較して、最も圧縮率が高くなるパターンの基本単位を採用し、その基本単位の下で圧縮された画像データを圧縮処理部１３から出力するように制御する（ステップＳ１６）。
【００５４】
その後、画像データ取得部１１は、１フレーム内の全てのラインの画像データを取得し終えたか否かを判定する（ステップＳ１７）。ここで、未処理のラインが残っている場合、処理はステップＳ１１に戻り、画像データ取得部１１が次の１ライン分の画像データを取得する。そして、ステップＳ１２〜Ｓ１６の処理を再度実行する。
【００５５】
一方、画像データ取得部１１が１フレーム内の全てのラインの画像データを取得し終えた場合、画像データ取得部１１はさらに、圧縮対象とする画像データの全てのフレームを取得し終えたか否かを判定する（ステップＳ１８）。ここで、未処理のフレームが残っている場合、処理はステップＳ１１に戻り、画像データ取得部１１が次の１フレームの１ライン分の画像データを取得する。そして、ステップＳ１２〜Ｓ１７の処理を再度実行する。一方、画像データ取得部１１が全てのフレームの画像データを取得し終えた場合、図６に示すフローチャートの処理は終了する。
【００５６】
図７は、本実施形態による画像圧縮装置１００の第３の動作例を示すフローチャートである。この図７に示すフローチャートは、圧縮対象とする画像データを指定して圧縮処理の開始を指示したときに開始する。この図７のフローチャートは、最も圧縮率が高くなる場合の基本単位を１フレーム毎に採用して画像データを圧縮する処理と、最も圧縮率が高くなる場合の基本単位を１ライン毎に採用して画像データを圧縮する処理との両方を実行し、より圧縮率が高い方を採用する場合の動作例を示したものである。
【００５７】
まず、画像データ取得部１１は、圧縮対象とする画像データの１フレーム分を取得する（ステップＳ２１）。次に、基本単位設定部１２および圧縮処理部１３は、制御部１５による制御のもと、ライン単位の圧縮処理を実行する（ステップＳ２２）。ライン単位の圧縮処理とは、図６のステップＳ１１〜Ｓ１７に示す処理のことである。
【００５８】
ライン単位の圧縮処理によって１フレーム分のデータ圧縮が終了すると、圧縮率算出部１４は、圧縮された１フレームの画像データの圧縮率を算出する（ステップＳ２３）。ここで算出された圧縮率は、後に比較するために一時的に記憶しておく。
【００５９】
その後、基本単位設定部１２および圧縮処理部１３は、制御部１５による制御のもと、フレーム単位の圧縮処理を実行する（ステップＳ２４）。フレーム単位の圧縮処理とは、図５のステップＳ１〜Ｓ６に示す処理のことである。
【００６０】
フレーム単位のデータ圧縮が終了すると、制御部１５は、ライン単位で圧縮処理を行った場合にステップＳ２３で算出された圧縮率と、フレーム単位で圧縮処理を行った場合にステップＳ２４の処理内で算出された圧縮率とを比較して、より圧縮率が高くなる方の処理を採用し、その処理の下で圧縮された画像データを圧縮処理部１３から出力するように制御する（ステップＳ２５）。
【００６１】
その後、画像データ取得部１１は、圧縮対象とする画像データの全てのフレームを取得し終えたか否かを判定する（ステップＳ２６）。ここで、未処理のフレームが残っている場合、処理はステップＳ２１に戻り、画像データ取得部１１が次の１フレーム分の画像データを取得する。そして、ステップＳ２２〜Ｓ２５の処理を再度実行する。一方、画像データ取得部１１が全てのフレームの画像データを取得し終えた場合、図７に示すフローチャートの処理は終了する。
【００６２】
以上のようにして画像圧縮装置１００により圧縮されたオープニングムービーの画像データ（圧縮データ）は、当該オープニングムービーを使用する電子機器の内蔵メモリに記憶される。なお、電子機器の電源起動時にオープニングムービーを外部のサーバ装置から取得して表示する場合は、圧縮データはサーバ装置に記憶される。
【００６３】
図８は、本実施形態による画像伸長装置の機能構成例を示すブロック図である。本実施形態の画像伸長装置は、電源起動時にオープニングムービーを表示するように成された電子機器に実装される。図８に示すように、本実施形態の画像伸長装置２００は、その機能構成として、圧縮データ取得部２１、復号処理部２２および画素値生成部２３を備えている。復号処理部２２は、より具体的な機能構成として、差分情報逆置換部２２Ａ、繰り返し回数逆置換部２２Ｂおよびパレット逆置換部２２Ｃを備えている。
【００６４】
上記各機能ブロック２１〜２３は、ハードウェア、ＤＳＰ、ソフトウェアの何れによっても構成することが可能である。例えばソフトウェアによって構成する場合、上記各機能ブロック２１〜２３は、実際にはコンピュータのＣＰＵ、ＲＡＭ、ＲＯＭなどを備えて構成され、ＲＡＭやＲＯＭ、ハードディスクまたは半導体メモリ等の記録媒体に記憶されたプログラムが動作することによって実現される。
【００６５】
圧縮データ取得部２１は、画像圧縮装置１００により圧縮された画像データを取得する。具体的には、圧縮データ取得部２１は、電子機器の内蔵メモリあるいは外部のサーバ装置等にあらかじめ記憶された圧縮データを、電子機器の電源がオンとされたときに取得する。
【００６６】
復号処理部２２は、圧縮データ取得部２１により取得された圧縮データを対象として、圧縮処理部１３による符号化処理の逆処理を行うことによって、基本単位が有する値を復号する。このとき復号処理部２２は、圧縮データ内に含まれているコード情報に基づいて、圧縮データに設定されている基本単位のパターンと、実行されている符号化処理の種類（第１〜第３の符号化処理の何れか）とを確認しながら、差分情報逆置換部２２Ａ、繰り返し回数逆置換部２２Ｂまたはパレット逆置換部２２Ｃの何れかの処理を選択的に実行することにより、圧縮データに設定されている基本単位が有する値を復号する。
【００６７】
ここで、差分情報逆置換部２２Ａは、差分情報置換部１３Ａによる第１の符号化処理の逆処理を行うことにより、差分情報を元の基本単位の値に復号する。繰り返し回数逆置換部２２Ｂは、繰り返し回数置換部１３Ｂによる第２の符号化処理の逆処理を行うことにより、繰り返し回数情報を元の基本単位が有する値に復号する。また、パレット逆置換部２２Ｃは、パレット置換部１３Ｃによる第３の符号化処理の逆処理を行うことにより、パレット識別情報を元の基本単位が有する値に復号する。
【００６８】
画素値生成部２３は、復号処理部２２によって復号された基本単位が有する値を用いて、複数の色要素から成る画素の値を再現する。画素値生成部２３によって各画素の値が生成されることにより、元の画像データが再現されることになる。そして、この再現された画像データが、電子機器の表示制御部（図示せず）によってオープニングムービーとして画面表示される。
【００６９】
図９は、本実施形態による画像伸長装置２００の動作例を示すフローチャートである。図９に示すフローチャートは、画像伸長装置２００が実装された電子機器の電源がオンとされたときに開始する。
【００７０】
まず、圧縮データ取得部２１は、電子機器の内蔵メモリあるいは外部のサーバ装置等にあらかじめ記憶された圧縮データを取得する（ステップＳ３１）。次に、復号処理部２２は、圧縮データ取得部２１により取得された圧縮データを対象として、圧縮処理部１３による符号化処理の逆処理を行うことによって、基本単位が有する値を復号する（ステップＳ２２）。
【００７１】
さらに、画素値生成部２３は、復号処理部２２によって復号された基本単位が有する値を用いて、複数の色要素から成る画素の値を生成することにより、圧縮前の元の画像データを再現する（ステップＳ２３）。これにより、図９に示すフローチャートの処理は終了する。
【００７２】
以上詳しく説明したように、本実施形態の画像圧縮装置１００では、画像データの画素の色を形成する複数の色要素の各々を単独として、または複数の色要素を任意に組み合わせて、圧縮の基本単位を設定し、当該設定した基本単位が有する値を第１〜第３の符号化処理に従って圧縮するようにしている。
【００７３】
また、本実施形態の画像伸長装置２００では、画像圧縮装置１００により生成された圧縮データを対象として、第１〜第３の符号化処理の逆処理を行うことによって、基本単位が有する値を復号し、当該復号した基本単位が有する値を用いて、複数の色要素から成る画素の値を再現するようにしている。
【００７４】
上記のように構成した本実施形態によれば、従来の動画コーデックや静止画コーデックのような複雑な処理は行わず、各画素の色を形成する複数の色要素について設定した基本単位が有する値を単に所定の規則に基づいて符号化するといった簡易な処理によって圧縮が行われる。これにより、圧縮とは逆の処理によって行われる伸長も簡易な処理となり、従来に比べて伸長の処理負荷を低減することができる。
【００７５】
なお、上記実施形態では、差分情報置換部１３Ａにより生成される１バイトの差分情報に関して、２つの色要素を組み合わせて圧縮の基本単位を設定している場合は、８ビットの差分情報のうち、ＭＳＢから２ビットを除く６ビットでＣｂの差分値とＣｒの差分値とを表現する必要がある。このため、それぞれの割り当ては３ビットとなり、±の符号を除けば割り当ては２ビットのみとなる（図４参照）。よって差分値として表現可能な値は±０〜３のみとなる。したがって、差分値が±０〜３を超える場合は、差分情報置換部１３Ａによる第１の符号化処理を適用することができない。
【００７６】
これに対して、差分情報置換部１３Ａにより生成する差分情報を２バイトで表現することにより、１つの色要素に対する差分値の割り当てビット数が多くなるようにしてもよい。例えば、図１０に示すように、差分情報を構成する２バイトのデータのうち、最初の１バイトにおいて、差分情報であることを示すコード情報“１０ｂ”および色要素の組み合わせ数を表現し、次の１バイトにおいて、Ｃｂの差分値とＣｒの差分値とを表現するようにする。このようにすれば、各色要素の差分値の割り当てビット数を４ビットとし、±０〜７の差分値を表すことができるようになる。
【００７７】
この場合、ＣｂＣｒで合計４バイトの値を２バイトの差分情報に圧縮することになるため、差分情報置換部１３Ａによる第１の符号化処理を１回適用した場合の圧縮率は、上記実施形態に比べて小さくなる。ただし、差分情報置換部１３Ａによる第１の符号化処理が適用される回数が増えるため、画像データ全体としては圧縮率を高めることができる。
【００７８】
また、上記実施形態では、圧縮前の画像データを形成している各色要素の値がそれぞれ２バイトである場合を例に説明したが、１バイトまたは３バイト以上の画像データにも同様に上記実施形態を適用することが可能である。ただし、色要素の値が１バイトで構成される場合、これを１バイトの差分情報に置き換えても圧縮効果はない。そこで、差分値と繰り返し回数値と混合して１バイトの圧縮データを生成するようにしてもよい。
【００７９】
例えば、図１１に示すように、１バイトの圧縮データのうち、ＭＳＢから２ビットにおいて差分情報であることを示すコード情報“１０ｂ”を表現し、次の３ビットにおいて差分値（±の符号を含む）を表現し、残りの３ビットで繰り返し回数を表現するようにする。
【００８０】
上述した図４の例において、Ｙの基本単位の値が「０４ｈ，０５ｈ，０５ｈ，０５ｈ」という並びで表わされる場合に、上記実施形態では、２つ目の値に差分情報置換部１３Ａによる第１の符号化処理を適用して差分情報“８１ｈ”に置換するとともに、３〜４つ目の値に繰り返し回数置換部１３Ｂによる第２の符号化処理を適用して繰り返し回数情報“４１ｈ”に置換した。つまり、２〜４つ目の基本単位の値を２バイトのデータに圧縮した。
【００８１】
これに対して、図１１の例によれば、２〜４つ目の値に差分情報置換部１３Ａおよび繰り返し回数置換部１３Ｂによる符号化処理を適用した結果として、１バイトのデータ“８９ｈ”（ビット列で表わすと“１０００１００１”）に置換することができる。すなわち、“８９ｈ”で表わされるビット列のうち、ＭＳＢから２ビットの値“１０ｂ”は差分情報であることを示すコード情報である。次の３ビットの値“００１ｂ”は差分値が“＋１”であることを示しており、残りの３ビットの値“００１ｂ”は繰り返し回数が２回であることを示している。このようにすれば、２〜４つ目の基本単位の値を１バイトのデータに圧縮することができる。
【００８２】
また、上記実施形態において、圧縮前の画像データの下位数ビットを切り捨てた後に第１〜第３の符号化処理を適用するようにしてもよい。このようにすれば、第１〜第３の符号化処理の何れかが適用される頻度を増やすことができるので、圧縮率を高めることができる。この場合は不可逆圧縮となり、画像伸長装置２００によって元の画像データを完全には復元することができなくなるが、切り捨てるのは下位数ビットに限られるので、目視ではほぼ分からないレベルである。
【００８３】
また、上記実施形態では、コーデックの色空間としてＹＣｂＣｒを使用する例について説明したが、本発明はこれに限定されない。例えば、コーデックの色空間としてＲＧＢを使用するようにしてもよい。
【００８４】
その他、上記実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００８５】
１１  画像データ取得部
１２  基本単位設定部
１３  圧縮処理部
１３Ａ  差分情報置換部
１３Ｂ  繰り返し回数置換部
１３Ｃ  パレット置換部
１４  圧縮率算出部
１５  制御部
２１  圧縮データ取得部
２２  復号処理部
２２Ａ  差分情報逆置換部
２２Ｂ  繰り返し回数逆置換部
２２Ｃ  パレット逆置換部
２３  画素値生成部
１００  画像圧縮装置
２００  画像伸長装置
【図１】
2016208356.tif 000003
【図２】
2016208356.tif 000004
【図３】
2016208356.tif 000005
【図４】
2016208356.tif 000006
【図５】
2016208356.tif 000007
【図６】
2016208356.tif 000008
【図７】
2016208356.tif 000009
【図８】
2016208356.tif 000010
【図９】
2016208356.tif 000011
【図１０】
2016208356.tif 000012
【図１１】
2016208356.tif 000013