(57)【要約】【課題】圧縮記録画像の全体を伸長するという処理を経ず、データ出力に必要な部分のみ画像を切り出す。【解決手段】ジグザグ順に低周波側から高周波側にかけて６４個分のＤＣＴ係数の計数を行うことで１単位分のブロックを識別する（Ｓ１０）。１単位分のブロックとして識別した、６４個分のＤＣＴ係数（ＥＯＢで打ち切った場合は、最低周波数のＤＣＴ係数からＥＯＢまでのＤＣＴ係数）が被覆ブロック群Ｚｃｏｖに含まれるか否かを判断する（Ｓ１１）。Ｙｅｓの場合、被覆ブロック群Ｚｃｏｖに含まれると判断された６４個分のＤＣＴ係数（または最低周波数のＤＣＴ係数からＥＯＢまでのＤＣＴ係数）につき、目標解像度に基づいてＩＤＣＴ（逆離散コサイン変換）を施すべきＤＣＴ係数の周波数成分を決定し、決定された周波数成分のＤＣＴ係数にのみ逆量子化とＩＤＣＴを施し、間引き画像データを得る（Ｓ１２）。【選択図】  図６
2011023863.tif 000002
【特許請求の範囲】
【請求項１】
ブロック単位で可変長符号化された圧縮画像において出力すべき範囲の指定を受け付ける範囲指定部と、
前記圧縮画像を可変長復号化する復号化部と、
前記範囲指定部が受け付けた範囲に基づいて伸長すべきブロックを抽出する抽出部と、
前記復号化部が可変長復号化した圧縮画像のうち、前記抽出部の抽出したブロックにのみ伸長を行う伸長部と、
を備える画像伸長装置。
【請求項２】
目標解像度を取得する目標解像度取得部と、
前記目標解像度取得部の取得した目標解像度に基づき、前記抽出部の抽出したブロックから伸長すべき圧縮画像の成分を決定する決定部と、
を備え、
前記伸長部は、前記決定部の決定した圧縮画像の成分を伸長する請求項１に記載の画像伸長装置。
【請求項３】
前記画像データはブロック単位の離散周波数領域変換もしくは離散ウェーブレット変換で得られた係数で表現されており、
前記伸長部は、前記目標解像度取得部の取得した目標解像度に基づき、前記抽出部の抽出したブロックから伸長すべき周波数成分を決定し、前記決定された周波数成分の係数に対応する可変長復号化した圧縮画像データ列に逆量子化および逆離散周波数領域変換もしくは逆離散ウェーブレット変換を施すことで伸長する請求項２に記載の画像伸長装置。
【請求項４】
前記係数で表現された圧縮画像データはハフマン符号、ＥＢＣＯＴ（Embedded Block Coding with Optimal Truncation）方式または算術符号により可変長符号化されている請求項３に記載の画像伸長装置。
【請求項５】
前記可変長符号化された画像データはＪＰＥＧ（Joint Photographic Experts Group）またはＪＰＥＧ２０００画像データを含む請求項４に記載の画像伸長装置。
【請求項６】
前記伸長部の伸長した画像データを出力する出力部を備える請求項１〜５のいずれかに記載の画像伸長装置。
【請求項７】
前記出力部は、前記伸長部の伸長した画像データを表示装置、プリンタ、ネットワークのうち少なくとも１つに出力可能である請求項６に記載の画像伸長装置。
【請求項８】
携帯端末から送信要求された画像を配信する画像配信サーバからの要求に応じて前記画像を前記画像配信サーバに送信する画像蓄積サーバが、
ブロック単位で可変長符号化された圧縮画像において出力すべき範囲の指定を受け付けるステップと、
前記圧縮画像を可変長復号化するステップと、
前記受け付けた範囲に基づいて伸長すべきブロックを抽出するステップと、
前記可変長復号化した圧縮画像のうち、前記抽出したブロックにのみ伸長を行うステップと、
前記伸長した画像データを前記画像配信サーバに送信するステップと、
を実行する画像伸長方法。
【請求項９】
携帯端末から送信要求された画像を画像蓄積サーバに要求し、前記画像蓄積サーバから前記画像を受信する画像配信サーバが、
ブロック単位で可変長符号化された圧縮画像において出力すべき範囲の指定を受け付けるステップと、
前記圧縮画像を可変長復号化するステップと、
前記受け付けた範囲に基づいて伸長すべきブロックを抽出するステップと、
前記可変長復号化した圧縮画像のうち、前記抽出したブロックにのみ伸長を行うステップと、
前記伸長した画像データを前記携帯端末に送信するステップと、
を実行する画像伸長方法。
【請求項１０】
情報処理装置が、
ブロック単位で可変長符号化された圧縮画像において出力すべき範囲の指定を受け付けるステップと、
前記圧縮画像を可変長復号化するステップと、
前記受け付けた範囲に基づいて伸長すべきブロックを抽出するステップと、
前記可変長復号化した圧縮画像のうち、前記抽出したブロックにのみ伸長を行うステップと、
を実行する画像伸長方法。
【請求項１１】
請求項１０に記載の画像伸長方法を情報処理装置に実行させるための画像伸長プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データが複数領域に分割されて個別に圧縮処理を施された圧縮画像データの復号化技術に関する。
【背景技術】
【０００２】
特許文献１では、JPEGにより圧縮された画像データの可変長復号処理が行われ，直交変換係数が得られる（ステップ31）。また，圧縮画像データの解像度（大きさ）が取得され（ステップ32），目標の縮小画像の解像度と取得した解像度とから，直交変換係数の中から逆変換で用いる一部の直交変換係数が決定される（ステップ33）。決定された直交変換係数が逆変換され，第１の縮小画像が得られる（ステップ34）。得られた第１の縮小画像の解像度が目標となるものでなければ，縮小画像データのデータ量が調整され，目標となる第２の縮小画像が得られる（ステップ35）、とする。
【０００３】
特許文献２では、圧縮処理されるブロック単位ごとにリスタートインターバルマーカを挿入したデータ構造の圧縮データを作成する。これにより、各ブロックの圧縮データの先頭の直流値は絶対値となり、更に各リスタートインターバルマーカは、アドレス情報のみで（ビット情報なしで）フラッシュＲＯＭへの記録位置が特定される。従って、フラッシュＲＯＭから任意のブロックを読み出す際にビット位置を指定する必要がなく、また、JPEG伸張ブロックでの伸張時に他のブロックの先頭の直流値を必要としないため、ブロック単独でそのブロックの圧縮データを復号することができる、とする。
【０００４】
特許文献３では、サーバコンピュータ側の画像処理に必要な最小限の解像度に応じた画像データをクライアントコンピュータからサーバコンピュータに対して送信するとする。
【０００５】
特許文献４の画像処理装置は、取得された画像情報を複数のブロックに分割する分割部と、分割された複数のブロックの中から文字を含む有意ブロックを選出する有意ブロック選出部と、選出された有意ブロックを複数の圧縮率のいずれかで圧縮し圧縮データを出力する圧縮部と、圧縮データを伸張し伸張画像を出力する伸張部と、複数の圧縮率で画像情報全体を圧縮したときの各予想ファイルサイズを算出する予想ファイルサイズ算出部とを含む。
【０００６】
図９は、従来のＪＰＥＧのデコード処理の概略を示すフローチャートである。ＪＰＥＧのデコード処理は、ハフマン復号化（Ｓ２１）、逆量子化（Ｓ２２）、逆ＤＣＴ（Ｓ２３）が伸張ブロックの各々について繰り返される（Ｓ２４）ことで行われる。１つのブロックの可変長符号には、１個のＤＣ係数と６３個のＡＣ係数からなるＤＣＴ係数が含まれる。なお、ＪＰＥＧ２０００のデコード処理も図９と同様の流れで行われ、ブロック単位のＥＢＣＯＴ（Embedded Block Coding with Optimal Truncation）復号化、逆量子化、および逆離散ウェーブレット変換がそれぞれＳ２１〜Ｓ２３に相当する。
【０００７】
ＤＣ係数の符号は、例えば図１０のような符号表で決定される。この符号表自体は、ＪＰＥＧ符号化時に決定され、ＪＰＥＧファイルのヘッダに記述される。
【０００８】
ＤＣ係数は−２５５〜２５５までの整数値をとる。この値によって９種のグループに分類される。例えば、ＤＣ値が５０であれば、当該表に従い、分類が「６」になる。このとき、分類「６」を表す２進数「１１１０」が符号化され、さらに６ビット分の付加ビットによって分類「６」に含まれる−６３〜−３２、３２〜６３の値のうち５０であることを指定する。分類「６」には６４通りのＤＣ値の可能性が含まれるため、２＾６＝６４で６ビットを上記「１１１０」の後に付加することでＤＣ値を特定できる。
【０００９】
ＡＣ係数については、例えば図１１のような符号表で決定される。この表も、ＪＰＥＧ符号化時に決定され、ＪＰＥＧファイルのヘッダに記述される。
【００１０】
ＡＣ係数もＤＣ係数と同様に値によって分類される。分類は、０〜１０の値によって表され、付加ビットの数と等しい。ＡＣ係数を符号化する際には、係数自体の値と、その係数に先行する０の係数が続く数（ランレングス）を同時に表す点でＤＣ係数と異なる。すなわち、例えば「０、０、４」と続く３つのＡＣ係数を「分類＝３、ランレングス＝２」に対応するハフマン符号と３ビットの付加ビットで表す。
【００１１】
また、このときランレングスが１６以上になるときには、ランレングス＝１６の符号（ＺＲＬ）を一旦出力し、次に元々のランレングスから１６を減じた数をもとに符号を発行する。
【００１２】
復号化する時には、上記表からランレングスと付加ビット数＝分類を求め、後続する付加ビットを用いて、ＡＣ係数を復号化する。この手順をＡＣ係数が６３個復号化されるまで続ける。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開２００６−６０５４０号公報
【特許文献２】特開２００６−３１３９８４号公報
【特許文献３】特開２００４−１２８９４８号公報
【特許文献４】特開２００８−８５９１４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１４】
近年、携帯電話のような小さな表示画面を備えた端末機器の普及に伴い、圧縮記録画像から任意の領域を切り取りつつ、任意の解像度に縮小して画像を当該表示画面に出力したいというニーズがある。
【００１５】
例えば、新聞のような大きな面積を持つ記録画像を、携帯電話のような小さな端末機器の表示画面で表示する場合を考える。新聞全体を縮小してこの画面全体に表示すると記事が小さすぎて読めないため、読みたい部分を新聞から切り出し、これを拡大し、切り出した部分の記事が読めるように端末機器の表示画面に適した解像度でこれを表示する方が現実的である。
【００１６】
この場合、特許文献１のように、一旦圧縮記録画像の全体を復号化した上で表示に必要な部分の画像を切り出すという手順をとると、表示しない部分の復号化が無駄である。
【００１７】
特許文献２では、圧縮処理されるブロック単位ごとにリスタートインターバルマーカを挿入するという処理をそもそも行わなければブロック単独での圧縮データ復号ができない。
【００１８】
本発明は、ブロックの単位を示す情報が挿入されない通常の圧縮処理技術に従い、画像データが複数領域に分割されて個別に圧縮処理を施された圧縮画像データから、圧縮記録画像の全体を伸長するという処理を経ることなく、表示、プリントアウト、ネットワーク送信などの各種形態でのデータ出力に必要な部分のみ画像を切り出す技術を提供する。
【課題を解決するための手段】
【００１９】
本発明は、ブロック単位で可変長符号化された圧縮画像において出力すべき範囲の指定を受け付ける範囲指定部と、圧縮画像を可変長復号化する復号化部と、範囲指定部が受け付けた範囲に基づいて伸長すべきブロックを抽出する抽出部と、復号化部が可変長復号化した圧縮画像のうち、抽出部の抽出したブロックにのみ伸長を行う伸長部と、を備える画像伸長装置を提供する。
【００２０】
目標解像度を取得する目標解像度取得部と、目標解像度取得部の取得した目標解像度に基づき、抽出部の抽出したブロックから伸長すべき圧縮画像の成分を決定する決定部と、を備え、伸長部は、決定部の決定した圧縮画像の成分を伸長する。
【００２１】
画像データはブロック単位の離散周波数領域変換もしくは離散ウェーブレット変換で得られた係数で表現されており、伸長部は、目標解像度取得部の取得した目標解像度に基づき、抽出部の抽出したブロックから伸長すべき周波数成分を決定し、決定された周波数成分の係数に対応する可変長復号化した圧縮画像データ列に逆量子化および逆離散周波数領域変換もしくは逆離散ウェーブレット変換を施すことで伸長する。
【００２２】
係数で表現された圧縮画像データはハフマン符号、ＥＢＣＯＴ（Embedded Block Coding with Optimal Truncation）方式または算術符号により可変長符号化されている。
【００２３】
可変長符号化された画像データはＪＰＥＧ（Joint Photographic Experts Group）またはＪＰＥＧ２０００画像データを含む。
【００２４】
伸長部の伸長した画像データを出力する出力部を備える。
【００２５】
出力部は、伸長部の伸長した画像データを表示装置、プリンタ、ネットワークのうち少なくとも１つに出力可能である。
【００２６】
本発明は、携帯端末から送信要求された画像を配信する画像配信サーバからの要求に応じて画像を画像配信サーバに送信する画像蓄積サーバが、ブロック単位で可変長符号化された圧縮画像において出力すべき範囲の指定を受け付けるステップと、圧縮画像を可変長復号化するステップと、受け付けた範囲に基づいて伸長すべきブロックを抽出するステップと、可変長復号化した圧縮画像のうち、抽出したブロックにのみ伸長を行うステップと、伸長した画像データを画像配信サーバに送信するステップと、を実行する画像伸長方法を提供する。
【００２７】
本発明は、携帯端末から送信要求された画像を画像蓄積サーバに要求し、画像蓄積サーバから画像を受信する画像配信サーバが、ブロック単位で可変長符号化された圧縮画像において出力すべき範囲の指定を受け付けるステップと、圧縮画像を可変長復号化するステップと、受け付けた範囲に基づいて伸長すべきブロックを抽出するステップと、可変長復号化した圧縮画像のうち、抽出したブロックにのみ伸長を行うステップと、伸長した画像データを携帯端末に送信するステップと、を実行する画像伸長方法を提供する。
【００２８】
本発明は、情報処理装置が、ブロック単位で可変長符号化された圧縮画像において出力すべき範囲の指定を受け付けるステップと、圧縮画像を可変長復号化するステップと、受け付けた範囲に基づいて伸長すべきブロックを抽出するステップと、可変長復号化した圧縮画像のうち、抽出したブロックにのみ伸長を行うステップと、を実行する画像伸長方法を提供する。
【００２９】
上記の画像伸長方法を情報処理装置に実行させるための画像伸長プログラムも本発明に含まれる。
【発明の効果】
【００３０】
本発明によると、指定された画像範囲の出力（表示、ネットワーク送信、印刷など）に必要な画像のブロックだけが伸長されるので、画像伸長処理が簡略化され、必要な範囲を即座に出力できる。
【図面の簡単な説明】
【００３１】
【図１】画像提供システムの概略構成図
【図２】携帯端末の構成を例示した図
【図３】ＪＰＥＧ画像ファイルの構造を示す図
【図４】伸長処理の概略フローチャート
【図５】圧縮記録画像データの一例を示す図
【図６】ＤＣＴ係数の一部の逆変換処理（Ｓ７）の詳細フローチャート
【図７】画像提供システムの他の構成例（画像蓄積サーバで伸長処理）を示す図
【図８】画像提供システムの他の構成例（画像配信サーバで伸長処理）を示す図
【図９】ＪＰＥＧデコード処理の概略を示すフローチャート
【図１０】ＤＣ係数の符号表の一例を示す図
【図１１】ＡＣ係数の符号表の一例を示す図
【発明を実施するための形態】
【００３２】
＜第１実施形態＞
図１は本発明の好ましい第１実施形態に係る画像提供システムの概略構成を示す。このシステムは、画像蓄積サーバ１、画像配信サーバ２、携帯電話３、プリンタ４を含む。画像蓄積サーバ１と画像配信サーバ２はＬＡＮやインターネットなどの各種ネットワークで接続されている。また、画像配信サーバ２と携帯電話３は移動体電話通信網などの各種ネットワークで接続されている。また、携帯電話３とプリンタ４は、赤外線通信などの各種ネットワークで接続されている。
【００３３】
画像蓄積サーバ１および画像配信サーバ２は、コンピュータで構成され、ＣＰＵ、メモリ（ＲＡＭ，ＲＯＭ）、ＨＤＤ、通信ユニット、データ入出力回路、表示回路、操作装置などを備える。
【００３４】
画像配信サーバ２が、携帯電話３からの所望の画像の配信要求に基づき、ネットワーク経由で当該画像の配信を画像配信サーバ２に要求すると、画像配信サーバ２はネットワーク経由で当該画像の送信を画像蓄積サーバ１に要求する。
【００３５】
画像蓄積サーバ１は、画像配信サーバ２から当該要求を受信すると、要求で示された画像の識別情報（ハイパーリンク、画像ファイル名など）に対応する圧縮記録画像を画像データベース１ａから取得し、この画像を画像配信サーバ２に送信する。圧縮記録画像は、ＪＰＥＧ、ＪＰＥＧ２０００、ＭＰＥＧ（動画）などの圧縮方式に従い、オリジナル画像データが複数領域に分割されて個別に圧縮処理を施された圧縮画像データである。ＪＰＥＧ圧縮の場合、オリジナル画像データを離散コサイン変換（ＤＣＴ）し、ビット配分を決定して量子化を行う。ベースライン方式の場合、量子化データをハフマン符号化により符号化して符号化データを得る。ＪＰＥＧ２０００圧縮の場合、オリジナル画像データを離散ウェーブレット変換（ＤＷＴ）し、量子化およびEBCOT方式によるエントロピー符号化（ビットプレーンを単位としたエントロピー符号化）を行う。
【００３６】
画像配信サーバ２は、画像蓄積サーバ１から受信した画像を携帯電話３に送信する。携帯電話３は、受信した画像の全体あるいは一部を表示画面２１１に表示したり、プリンタ４転送したりできる。
【００３７】
図２は携帯電話３の内部構成を示すブロック図である。この携帯電話３は、ＣＰＵ２３０でその全体が制御されるように構成されている。このＣＰＵ２３０には揮発性のメモリであるＲＡＭ２３１、不揮発性のメモリであるＲＯＭ２３２、表示画面２１１を備えた表示部２３３、操作キー２２１、書換可能な不揮発性のメモリである書換可能ＲＯＭ２３４および電源部２３５が配備されている。
【００３８】
ＲＯＭ２３２には、ＣＰＵ２３０で実行されるプログラム等が記憶されており、また、書換可能ＲＯＭ２３４には、画像配信サーバ２からパケット通信によりダウンロードされたプログラムが記憶され、そのＲＯＭ２３２や書換可能ＲＯＭ２３４に記憶されたプログラムがＣＰＵ２３０で実行されることにより、この携帯電話３の各部の動作が制御される。
【００３９】
ＲＡＭ２３１は、ＣＰＵ２３０で実行されるプログラムの作業領域として利用される他、この携帯電話３で取り扱われる画像データの画素数の設定値や画像データ等の格納領域として利用される。
【００４０】
表示部２３３は、表示画面２１１を有し、ＣＰＵ２３０の指示に応じてこの表示画面２１１にＲＡＭ２３１の画像を表示する。
【００４１】
表示画面２１１のアスペクト比は任意であり、例えば４：３、１６：９である。また表示画面２１１の解像度は任意であり、例えば３２０×１８０、３２０×２４０、６４０×４８０、１０２４×７６８、１２８０×７６８、１９２０×１０８０などである。表示画面２１１のアスペクト比および解像度を示す情報はＲＯＭ２３２に記憶されている。
【００４２】
操作キー２２１は、ユーザによる操作を受けその操作をＣＰＵ２３０に伝える役割りを担っている。操作キー２２１が操作されると、ＣＰＵ２３０は、その操作に応じて各部を制御する。
【００４３】
電源部２３５には、電池（図示せず）が装填されその電池からの電力を、ＣＰＵ２３０や、そのＣＰＵ２３０からの指令を受けてこの携帯電話の各部に供給する。
【００４４】
また、この携帯電話３には、電話機能を担う構成要素として、アンテナ２１３、送受信部２４１、信号処理部２４２、および通話部２４３が備えられている。この通話部２４３には、受話口２２２の内部に配備されたマイクロホン２４３ａと送話口２１２の内部に配備されたスピーカ２４３ｂが含まれている。
【００４５】
送受信部２４１は、アンテナ２１３での電波の送受信を担う回路要素であり、アンテナ２１３での電波受信により送受信部２４１で得られた信号は信号処理部に入力されて信号処理を受けて通話部２４３のスピーカ２４３ｂから音声として出力される。また、通話部２４３のマイクロホン２４３ａでピックアップされた音声は信号処理部２４２で信号処理を送受信部２４１を介してアンテナ２１３から電波として送信される。
【００４６】
また、この携帯電話３はパケット通信機能も備えており、アンテナ２１３および送受信部２４１を介して受信したパケット信号は、信号処理部２４２で適切な信号処理を受けた後一旦ＲＡＭ２３１に格納され、あるいはダウンロードされたプログラムの場合は書換可能ＲＯＭ２３４に記憶され、操作キー２２１からの指示を受けたＣＰＵ２３０により、そのＲＡＭ２３１内のパケットデータが表示部２３３の表示画面２１１に表示され、あるいは書換可能ＲＯＭに記憶されたプログラムが実行される。携帯電話３がパケット通信で受信するデータは何でもよく、例えば、圧縮記録画像データ、文字データ、音声データ、プログラムなどが挙げられる。
【００４７】
操作キー２２１で作成されたパケット通信文書等はその作成時点ではＲＡＭ２３１に一旦格納され、操作キー２２１からの送信指示に応じて信号処理部２４２に送られて送信用に信号処理を受け、送受信部２４１およびアンテナ２１３を介して電波として送信される。
【００４８】
さらに、この携帯電話３には、撮影部２５１、画像処理部２５２、および赤外線通信部２５３が備えられている。
【００４９】
撮影部２５１には、撮影レンズ２１４および撮影素子２５１ａが備えられており、撮影レンズを経由して取り込まれた被写体が撮影素子２５１ａで提示されて画像信号が生成される。この撮影素子２５１ａで得られた画像信号は画像処理部２５２で処理されてＪＰＥＧやＪＰＥＧ２０００やＭＰＥＧなどの各種の規格に準拠したデジタル圧縮画像データに変換され、ＣＰＵ２３０を介して一旦ＲＡＭに格納され操作キー２２１の操作に応じて表示部２３３の表示画面２１１に表示され、あるいは、赤外線通信部２５３を介してプリンタ４などの外部機器に向けて送信される。また、この赤外線通信部２５３は、赤外線信号受信機能も備えており、送信した画像データがプリンタ４で受信された場合にプリンタ４から通信されてくる、画像データを受信したことを表わすアクノリッジ信号を受信する。
【００５０】
これにより、この携帯電話３では、プリンタ４に向けて画像データを送信してから所定時間以内にアクノリッジ信号を受信できたか否かにより、送信したこれらデータがプリンタ４で正しく受信されたか否かが認識することができる。
【００５１】
なお、ここでいう「携帯電話」とは、ノート型パソコンやＰＤＡなどの各種携帯情報端末の一例にすぎない。また、赤外線通信部２５３を介してプリンタ４に送信する画像は、撮影部２５１に由来するものに限らず、画像配信サーバ２から送受信部２４１を介して受信した圧縮記録画像に由来する画像データでもよい。いずれの画像をプリンタ４に送信するかは操作キー２２１を介して任意に選択できる。
【００５２】
図３は携帯電話３が受信あるいは撮影する圧縮記録画像データの一例であるＪＰＥＧ画像ファイルの構造を示す。
【００５３】
まず、ＪＰＥＧデータの開始を示すＳＯＩマーカー（２バイトの特定のデータ列）の後、ＤＱＴやＤＨＴなどと呼ばれる圧縮のパラメータなどを表すセグメントがある。セグメントの先頭には、セグメント種類を表すバイトのマーカーの後、２バイトのセグメント長が記載されているため、セグメントのデータが不要であれば読みとばすことも可能である。セグメントの中にはなくてもよいものもある。いくつかのセグメントの後、ＳＯＳマーカーがあり、それ以降が画像データ本体となる。
【００５４】
ＳＯＳマーカー以降は、ＭＣＵと呼ばれるマクロブロック単位で画像データが格納されている。ＪＰＥＧ方式では、ＭＣＵは８×８画素単位または１６×１６画素単位となる。具体的には、ＳＯＦセグメントの中に、色数とサンプリング比の記述があり、そこを参照することで画素単位を判定できる。例えば、色数が１のときや色数が３でサンプリング比が４：４：４のときはＭＣＵは８×８画素単位であり、色数が３でサンプリング比が４：２：０のときはＭＣＵは１６×１６画素単位である。
【００５５】
図３では、よく使われている組み合わせの色数が３でサンプリング比が４：２：０のケースを想定して記述している。このとき、色数はＹ，Ｃｂ，Ｃｒの３色であれば、元画像１６×１６画素のマクロブロックから、Ｙの８×８画素ブロック４つと、ＣｂとＣｒをそれぞれサンプリング（または縮小）した８×８画素のブロック２つの計６つのブロックデータでＭＣＵが構成される。
【００５６】
個々のブロックのデータでは、低周波成分（左上）から高周波成分（右下）に至るジグザグ順序に沿った０番から６３番までの６４個のＤＣＴ（離散コサイン変換）係数の量子化代表値が記述されている。すなわち６４個の各ＤＣＴ係数は、所定の量子化表に対応する量子化幅あるいは量子化ステップで除算され、その値の少数以下の桁を丸めることで、各ＤＣＴ係数が量子化されている。
【００５７】
量子化されたＤＣＴ係数はハフマン符号などで可変長符号化（エントロピー符号化）されているため、「何バイト後にブロックが終了する」というような形で出力に不要なブロックを読みとばすことはできない。また、ブロックのＤＣＴ係数で、ある番号以降のＤＣＴ係数が全て０である場合は、ＥＯＢマーカーを記述することで、その番号以降のＤＣＴ係数を記述しなくて済む。
【００５８】
ＥＯＢは、ブロック内の後続のＤＣＴ係数の量子化代表値は全てゼロであるという意味のコードである。ＤＣＴを行って得られるＤＣＴ係数テーブルにおいては、左上に画質の劣化が顕在化しやすい低い空間周波数のＤＣＴ係数が配置され、右下に向かうほど画質の劣化が顕在化しにくい高い空間周波数のＤＣＴ係数が配置される。量子化代表値は、左上から右下に向かってジグザグの順序でエントロピー符号化されることから、この順序がジグザグ順序と呼ばれる。従って、このジグザグ順序の順にエントロピー復号化を行うと、低い空間周波数のＤＣＴ係数を表す量子化代表値ほど先に復元される。そして、ゼロの量子化代表値の列の先頭には、ＥＯＢが付加される。
【００５９】
図４は画像蓄積サーバ１のＣＰＵで実行される伸長処理の概略フローチャートを示す。この処理を画像蓄積サーバ１のＣＰＵで実行させるためのプログラムはＲＯＭなどの記憶媒体に記憶されている。なお、このプログラムは画像配信サーバ２などのパソコンのＣＰＵで実行することもできる。
【００６０】
Ｓ１では、携帯電話３から画像配信サーバ２を介して所望の圧縮記録画像の送信要求を受信する。そして、当該要求に含まれる画像識別情報（ハイパーリンク、ファイル名など）に対応する圧縮画像ファイルをＤＢ１ａからＲＡＭに取得する。
【００６１】
Ｓ２では、ＲＡＭに保存された圧縮記録画像データ画像データの出力範囲（新聞記事の一部など）を示す情報の入力を、画像蓄積サーバ１の操作装置、あるいは携帯電話３の操作キー２２１を介して受け付ける。例えば、操作キー２２１に含まれる十字キーおよび確定キーの操作情報を携帯電話３から画像蓄積サーバ１に送信することにより、画像データ全体領域から出力したい領域の開始座標および終了座標、例えば矩形の左上の座標と右下の座標の指定を受け付ける。あわせて、画像の最終出力先の選択（表示画面２１１への出力、プリンタ４への出力あるいは携帯電話３と接続された他の携帯電話などの各種電子機器）を受け付けてもよい。
【００６２】
Ｓ３では、操作キー２２１などから受け付けた画像データの出力範囲を示す情報に基づいて、圧縮記録画像データから伸長が必要なブロックを抽出する。
【００６３】
例えば、図５のような圧縮記録画像データが画像蓄積サーバ１のＲＡＭに保存されているとする。この画像は、１５×１０個のブロックに分割され、この各ブロックの画像データが各ＭＣＵに格納されている。また、出力範囲Ｚが指定されたとする。この場合、面積最小で出力範囲Ｚを包含するマクロブロック群である被覆マクロブロック群Ｚｃｏｖを、伸長が必要なブロックとして抽出する。
【００６４】
一般的には、開始座標をＸｓおよび終了座標Ｙｓであり、ブロックの一辺がＮのときは、Ｘ方向について（Ｘｓ／Ｎ）番目かつＹ方向について（Ｙｓ／Ｎ）番目（ただし整数単位で切捨てし、最初のブロックは０番目とする）のブロックＢｉが抽出開始ブロックとなる。また、出力範囲Ｚの大きさすなわち目標解像度がＸｗ×Ｙｈのとき、切り取るべき右下端のブロックはＸ方向について（（Ｘｓ＋Ｘｗ−１）／Ｎ）番目かつＹ方向について（（Ｙｓ＋Ｙｈ−１）／Ｎ）番目のブロックＢｔとなる。
【００６５】
なお、圧縮記録画像データはブロック単位で分割されていればよく、本処理の適用範囲はＪＰＥＧに限られない。また、本処理は動画および静止画のいずれにも適用できる。
【００６６】
Ｓ４では、ハフマン符号表と圧縮に用いた量子化表とを用いて、ハフマン符号化された各ブロックのＤＣＴ係数をハフマン復号化し、ブロックごとに１つのＤＣ係数と６３個のＡＣ係数を得る。例えば、図１０および図１１の符号表に基づいて、図９のＳ２１（ハフマン復号化）のみを全てのブロックについて実行すればよい。換言すると、伸長処理すなわち図９のＳ２２（逆量子化）およびＳ２３（逆ＤＣＴ）は全てのブロックに行うのではなく、必要なブロックにのみ行う。必要なブロックのみの圧縮データ伸長の処理の詳細は後述する。
【００６７】
Ｓ５〜Ｓ８は、特許文献１と同様である。すなわち、Ｓ５では、ＲＡＭの圧縮画像データの解像度（画素数）をその圧縮画像データが格納されている画像ファイルのヘッダから取得する。
【００６８】
Ｓ６では、出力先として表示画面２１１が選択された場合は、携帯電話３のＲＯＭ２３２に保存された表示画面２１１の解像度（画素数）を取得し、これを目標解像度とする。この目標解像度は携帯電話３から画像蓄積サーバ１への画像の送信要求に含まれていてもよい。
【００６９】
この目標解像度に基づいて、被覆マクロブロック群Ｚｃｏｖに含まれる各ブロックのうちＩＤＣＴ（逆離散コサイン変換）を施すべきＤＣＴ係数の周波数成分を決定する。これは特許文献１と同様、縮小率α＝目標解像度／オリジナルの圧縮画像データの解像度を計算し、全ＤＣＴ係数のうち低周波側からジグザグ順に沿ったαの割合に相当する個数のＤＣＴ係数を用いて、オリジナル画像のα倍の画像を生成する。例えば、オリジナル画像の３／８の目標解像度で出力範囲Ｚを出力しようとする場合は、被覆マクロブロック群Ｚｃｏｖに含まれるＭＣＵを構成する各８×８ブロックの左上（低周波数側からジグザグ順に沿った）の３×３個の係数が、逆変換される係数として決定される。
【００７０】
なお、出力先としてプリンタが選択された場合は、プリンタ４から印刷解像度を取得し、これを目標解像度とする。
【００７１】
Ｓ７では、Ｓ６で決定された周波数成分のＤＣＴ係数のみにＩＤＣＴを施し、間引き画像データを得る。目標解像度がオリジナル画像の解像度より小さければ、縮小画像データが得られることになる。ただし、携帯電話３の表示画面２１１は小さいので、携帯電話３から指定される目標解像度に従うと通常は縮小画像データが得られることになるであろう。ＤＣＴ係数の逆変換は、Ｓ３で抽出された被覆マクロブロック群Ｚｃｏｖに含まれる係数のうちＳ６で決定されたもののみについて部分的に行うのであって、全てのブロックの全てのＤＣＴ係数を逆変換するのではない。この点は下記で詳説する。
【００７２】
Ｓ８では、Ｓ７で得られた間引き画像データから、Ｓ２で指定された出力範囲に相当する部分を切り取った最終出力データを作成する。この最終出力データの大きさが目標解像度と同じでなければその目標とする解像度となるように画像データのデータ量をさらに調整してこれを改めて最終出力データとしてもよい。このデータ量の調整は，たとえば，原画像の周辺画像を算出して拡大，縮小する双三次補間を利用することができる。最終出力データは、画像蓄積サーバ１から画像配信サーバ２を介して携帯電話３に送信される。携帯電話３は受信した最終出力データを表示画面２１１に表示したり、プリンタ４に送信するなど各種の用途に供することができる。
【００７３】
図６は伸長処理のＳ７（ＤＣＴ係数の一部の逆変換）の詳細フローチャートを示す。この処理は、画像データ本体を表すビットストリームを可変長復号化（ハフマン復号化）して得られた各ＭＣＵの各ブロックのＤＣＴ係数のうち、被覆マクロブロック群Ｚｃｏｖに対応するブロックのＤＣＴ係数の一部の周波成分にのみＩＤＣＴを施す。
【００７４】
Ｓ１０では、画像データ本体の当初からジグザグ順に低周波側から高周波側にかけてハフマン復号化された６４個分のＤＣＴ係数（ＤＣ係数１個、ＡＣ係数６３個）の計数を行うことで１単位分のブロックを識別する。上述のように、Ｓ４ではハフマン復号化でブロックごとにＤＣ係数１個、ＡＣ係数６３個が得られているため、ＤＣ係数１個、ＡＣ係数６３個を計数すれば１単位分のブロックを識別することができる。なお、計数の途中でＥＯＢマーカーが検出された場合は、その時点でＤＣＴ係数の計数を打ち切る。
【００７５】
Ｓ１１では、Ｓ１０で１単位分のブロックとして識別した、６４個分のＤＣＴ係数（ＥＯＢで打ち切った場合は、最低周波数のＤＣＴ係数からＥＯＢまでのＤＣＴ係数）が被覆マクロブロック群Ｚｃｏｖに含まれるか否かを判断する。
【００７６】
例えば、色数が３でサンプリング比が４：２：０のときはＭＣＵは１６×１６画素単位であるから、画像本体データの当初から識別された６つ目までのブロックはＭＣＵ（１）、７個目から１２個目までのブロックはＭＣＵ（２）・・に所属するが、あるブロックが所属するＭＣＵが被覆マクロブロック群Ｚｃｏｖに含まれれば当該ブロックは被覆マクロブロック群Ｚｃｏｖに含まれることになる。よって、識別されたブロックが所属するＭＣＵが被覆マクロブロック群Ｚｃｏｖに含まれるか否かで当該ブロックが被覆マクロブロック群Ｚｃｏｖに含まれるかを判断すればよい。
【００７７】
Ｙｅｓの場合はＳ１２に進む。Ｎｏの場合はＳ１０に戻り、すでに識別された１単位分のブロックの最後（最高周波数に位置する６４個目のＤＣＴ係数、またはＥＯＢの後に続く０のＤＣＴ係数の最後）の次のＤＣＴ係数から、ジグザグ順に低周波側から高周波側にかけて６４個分のＤＣＴ係数の計数を行うことで１単位分のブロックを識別する。
【００７８】
Ｓ１２では、被覆マクロブロック群Ｚｃｏｖに含まれると判断された６４個分のＤＣＴ係数（または最低周波数のＤＣＴ係数からＥＯＢまでのＤＣＴ係数）につき、特許文献１と同様に、目標解像度に基づいてＩＤＣＴ（逆離散コサイン変換）を施すべきＤＣＴ係数の周波数成分を決定し（Ｓ６）、決定された周波数成分のＤＣＴ係数にのみ量子化代表値の逆量子化とＩＤＣＴを施し、画像データを得る（Ｓ７）。
【００７９】
以上の処理の後、Ｓ１０に戻り、すでに識別された１単位分のブロックの最後（最高周波数に位置する６４個目のＤＣＴ係数、またはＥＯＢの後に続く０のＤＣＴ係数の最後）の次のＤＣＴ係数から、ジグザグ順に低周波側から高周波側にかけて６４個分のＤＣＴ係数の計数を行うことで次の１単位分のブロックを識別することを繰り返す。なお、Ｓ１２で被覆マクロブロック群Ｚｃｏｖを構成する全てのブロックについて逆量子化とＩＤＣＴが施された場合は、Ｓ１０に戻らず本ループを抜けＳ８に進む。
【００８０】
以上の処理により、ユーザから指定された画像の出力範囲につき、出力先（表示、ネットワーク送信または印刷）での目標解像度の達成に必要なブロックの一部のＤＣＴ係数だけに逆量子化とＩＤＣＴが施されるので、画像出力処理が簡略化され、必要な範囲を必要な解像度で即座に出力できる。
【００８１】
なお、ＪＰＥＧ２０００の場合は、ＪＰＥＧのハフマン復号化、逆量子化、および離散逆コサイン変換を、それぞれＥＢＣＯＴ復号化、逆量子化、および逆離散ウェーブレット変換と読み替えれば、ＪＰＥＧ２０００についても同様に、出力先での目標解像度の達成に必要なブロックの一部の離散ウェーブレット係数だけに逆量子化および逆離散ウェーブレット変換を施すことができる。
【００８２】
＜第２実施形態＞
図４および図６の伸長処理の実行主体は画像蓄積サーバ１である必然性はなく、システム構成および用途に応じて変更しうる。図７および図８は画像提供システムの他の構成例を示す。
【００８３】
例えば図７に示すように、画像配信サーバ２が、携帯電話３から任意の圧縮記録画像の指定を受け付けると、当該指定された圧縮記録画像を画像データベース１ａから取得して送信するよう画像蓄積サーバ１に要求し、当該要求に応じて画像蓄積サーバ１から送信された当該圧縮記録画像を受信する。画像配信サーバ２は、当該圧縮記録画像に対する任意の出力範囲の指定を携帯電話３から受け付けると、当該圧縮記録画像について図４および図６の伸長処理を施し、得られた画像データを携帯電話３に送信してもよい。
【００８４】
あるいは図８に示すように、画像配信サーバ２が、携帯電話３から任意の圧縮記録画像の指定を受け付けると、当該指定された圧縮記録画像を画像データベース１ａから取得して送信するよう画像蓄積サーバ１に要求し、当該要求に応じて画像蓄積サーバ１から送信された当該圧縮記録画像を受信して携帯電話３に転送する。携帯電話３は、画像配信サーバ２から受信した圧縮記録画像について図５および図６の伸長処理を施し、得られた画像データをプリンタ４に送信してもよい。
【００８５】
いずれの態様でも、ネットワーク送信する画像のデータ量を削減できる。
【符号の説明】
【００８６】
１：画像蓄積サーバ、２：画像配信サーバ、３：携帯電話、４：プリンタ
【図１】
2011023863.tif 000003
【図２】
2011023863.tif 000004
【図３】
2011023863.tif 000005
【図４】
2011023863.tif 000006
【図５】
2011023863.tif 000007
【図６】
2011023863.tif 000008
【図７】
2011023863.tif 000009
【図８】
2011023863.tif 000010
【図９】
2011023863.tif 000011
【図１０】
2011023863.tif 000012
【図１１】
2011023863.tif 000013