JP2007142581A - Image processing method and image processing unit - Google Patents

Image processing method and image processing unit Download PDF

Info

Publication number
JP2007142581A
JP2007142581A JP2005330649A JP2005330649A JP2007142581A JP 2007142581 A JP2007142581 A JP 2007142581A JP 2005330649 A JP2005330649 A JP 2005330649A JP 2005330649 A JP2005330649 A JP 2005330649A JP 2007142581 A JP2007142581 A JP 2007142581A
Authority
JP
Japan
Prior art keywords
image
decoding
data
encoded
encoded data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2005330649A
Other languages
Japanese (ja)
Other versions
JP2007142581A5 (en
Inventor
Miyuki Enokida
幸 榎田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2005330649A priority Critical patent/JP2007142581A/en
Publication of JP2007142581A publication Critical patent/JP2007142581A/en
Publication of JP2007142581A5 publication Critical patent/JP2007142581A5/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a technique for creating image encoding data enabling image decoding at higher speed in consideration of memory efficiency. <P>SOLUTION: In S503, the encoding data are used to decode an image at a decoding resolution level, and the decoded image is encoded. In S504, a fragment table, which is referred to for using the encoded image, is created instead of a portion required to decode the image at the decoding resolution level in the encoding data. In S505, the encoded image and the fragment table are managed with the encoding data. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、画像符号化技術に関するものである。   The present invention relates to an image encoding technique.

近年、コンピュータの表示装置として用いられているディスプレイも技術の進化と共に、解像度が向上している。例えば従来であれば、VGA(640x480画素)、SVGA(800x600画素)程度であった解像度が、現在ではノートPCでさえ、XGA(1024x768画素)以上になっている。また、デスクトップPCに至っては、SXGA(1280x1024画素)、UXGA(1600x1200画素)が普及しており、更に今後はQXGA、QUXGAなどの高解像度をサポートすることは、容易に推察できる。このため、画像表示するディスプレイ装置の種類が多くなり、それぞれの装置に合った画像表示が必要になってきた。特に解像度に関してはディスプレイの解像度に合わせ、サムネイル画像データのサイズを調整することも必要になってきた。   In recent years, the resolution of a display used as a computer display device has improved with the evolution of technology. For example, in the past, the resolution of about VGA (640 × 480 pixels) and SVGA (800 × 600 pixels) is now XGA (1024 × 768 pixels) or more even for notebook PCs. In addition, SXGA (1280x1024 pixels) and UXGA (1600x1200 pixels) are prevalent in desktop PCs, and it can be easily guessed that high resolution such as QXGA and QUXGA will be supported in the future. For this reason, the types of display devices that display images have increased, and image display suitable for each device has become necessary. In particular, regarding the resolution, it has become necessary to adjust the size of the thumbnail image data in accordance with the resolution of the display.

更に、ディジタルカメラの進歩により、撮影できる画像の解像度も年々高くなり、ディスプレイの解像度がいくら高くなっても、一度に全体を最大解像度で表示できなくなってきている。そこで、ディジタルカメラ等で撮影した多数の画像データのサムネイル画像を一覧表示し、その中から選択することで1枚表示に切り替え、その画像に対してズームやスクロール等の表示技術により、より詳細な画像データを表示するようなアプリケーションが必要になってきた。この場合、多数の画像データを一度に表示する場合には、高速性が重要視されるため、主画像データとは異なる予め作成されているサムネイル画像データを用いることが多い。一方、そのサムネイル表示から選択された画像データの1枚表示は、主画像データを用いて、アプリケーションのウィンドウサイズ或いは、ディスプレイ装置に表示できるまでは、画像全体を表示し、それ以上の拡大表示になると、画像の一部分を表示する。   Furthermore, with the advancement of digital cameras, the resolution of images that can be taken has been increasing year by year, and no matter how high the resolution of the display becomes, the entire image cannot be displayed at the maximum resolution at one time. Therefore, a list of thumbnail images of a large number of image data taken with a digital camera or the like is displayed as a list, and the image is switched to single image display by selecting from among the thumbnail images. Applications that display image data have become necessary. In this case, when displaying a large number of image data at once, high speed is regarded as important, and therefore thumbnail image data created in advance different from the main image data is often used. On the other hand, the single image display selected from the thumbnail display uses the main image data to display the entire image until it can be displayed on the window size of the application or the display device, and to display an enlarged image larger than that. Then, a part of the image is displayed.

このような1枚の画像データを表示する際に、元々の画像データの画像サイズとは異なる元々の画像データの画像サイズより小さい画像サイズを複数種類使用するようなアプリケーションの場合、必要に応じてデコード処理を行い、一旦元々の画像データの画像サイズを再生し、その後、目的の画像サイズになるように、画像データを縮小することを行っていた。この場合、画像データは、非圧縮、或いはJPEG baselineのようなシーケンシャルの符号化方式で圧縮されている。   When displaying such a single piece of image data, if the application uses a plurality of image sizes different from the image size of the original image data different from the image size of the original image data, as required A decoding process is performed, the image size of the original image data is once reproduced, and then the image data is reduced so as to be the target image size. In this case, the image data is uncompressed or compressed by a sequential encoding method such as JPEG baseline.

或いは、画像データを階層符号化方式で画像圧縮しておき、表示に必要な画像サイズまでをデコードし、表示するように実装していた。階層符号化方式としては、JPEG2000がある。このJPEG2000は、1枚の画像データを1つ以上のタイルに分割し、その分割されたタイル毎に、1つ以上の解像度を持つ階層符号化方式として、2001年にISO/ITCで標準化された画像符号化方式である。また、ネットワーク上でこのJPEG2000で符号化された符号データファイルに対して断片的に必要な部分のみをアクセスする時のプロトコルとして、JPEG2000 image coding system - Part 9: Interactivity tools, APIs and protocols(以下、JPIPと記す)がある。このJPEG2000の場合、解像度の数、即ち最低解像度の画像サイズは、エンコード(符号化時)に決定するものである。   Alternatively, the image data is compressed by a hierarchical encoding method, and the image size required for display is decoded and displayed. As a hierarchical encoding method, there is JPEG2000. This JPEG2000 was standardized by ISO / ITC in 2001 as a hierarchical encoding method that divided one image data into one or more tiles and had one or more resolutions for each divided tile. This is an image encoding method. In addition, as a protocol for accessing only the necessary part of the encoded data file encoded with JPEG2000 on the network, JPEG2000 image coding system-Part 9: Interactivity tools, APIs and protocols (hereinafter, JPIP)). In the case of JPEG2000, the number of resolutions, that is, the image size of the lowest resolution is determined by encoding (during encoding).

また上記JPIPに関連した技術としては、特許文献1,2が挙げられる。   Patent documents 1 and 2 can be cited as technologies related to the JPIP.

特許文献1によれば、サーバにJPEG2000で符号化された圧縮画像ファイルを置き、クライアントからコードストリームを部分的に要求し、バッファして格納する。そして、格納されていない部分のみを新規にサーバに対して要求を発行し、受信した符号データと既にバッファリングしている符号データとを接合し、デコードすることを繰り返す。この時の部分的な要求の単位は、JPEG2000符号内のパケット、タイル、コードブロックから選択される。また、バイト単位での要求も可能となっている。一方サーバは、要求された圧縮データの部分データを抜き出してクライアントに返送する。   According to Patent Document 1, a compressed image file encoded by JPEG2000 is placed on a server, a code stream is partially requested from a client, and is buffered and stored. Then, a request is newly issued to the server for only the unstored part, and the received code data and the already buffered code data are joined and decoded. The partial request unit at this time is selected from packets, tiles, and code blocks in the JPEG2000 code. Requests in byte units are also possible. On the other hand, the server extracts the partial data of the requested compressed data and returns it to the client.

一方、特許文献2によれば、JPEG2000符号データのうち、サブバンド単位でサーバにデータを要求するもので、デコード時で使用した係数を保持する。そして、次に上位のサブバンドの符号データを要求した場合は、その係数に今回のデータを付加することでデコードする。そして、デコードで使用した係数を保持することを繰り返す。これにより、クライアント側で受信した符号データをバッファして格納する必要がないシステムを提供する。また、これにより、解像度方向のプログレッシブ表示を可能にする。   On the other hand, according to Patent Document 2, the JPEG2000 code data is requested to the server in subband units, and the coefficients used at the time of decoding are held. When the next upper subband code data is requested, decoding is performed by adding the current data to the coefficient. Then, holding the coefficients used in the decoding is repeated. This provides a system that does not require buffering and storing the code data received on the client side. This also enables progressive display in the resolution direction.

また、1つの階層符号データには1つの最低解像度データが存在し、この最低解像度の符号データから順にデコードすることで、解像度方向の階層デコードを実現するのが一般的である。そのため、この符号データから最低解像度の画像サイズより大きな画像サイズの画像データを取り出すためには、要求する出力画像サイズにより複数回の階層デコード処理を繰り返す必要がある。具体的には、JPEG2000の場合では、DWTを必要回数繰り返す、ことで目的とする画像データを得る。また逆に、最低解像度の画像サイズより小さなサイズの画像データを要求する場合は、まず最低解像度の画像データをデコードし、その後に縮小処理を行なう必要がある。   In addition, there is one minimum resolution data in one hierarchical code data, and it is general to realize hierarchical decoding in the resolution direction by decoding sequentially from the lowest resolution code data. Therefore, in order to extract image data having an image size larger than the minimum resolution image size from the code data, it is necessary to repeat the hierarchical decoding process a plurality of times depending on the required output image size. Specifically, in the case of JPEG2000, the desired image data is obtained by repeating DWT as many times as necessary. Conversely, when requesting image data of a size smaller than the image size of the lowest resolution, it is necessary to first decode the image data of the lowest resolution and then perform a reduction process.

これら1度処理した途中の階層の画像データ或いは、最低解像度より小さな画像データ等の中間データを保存するには、元の画像データファイルとは別のファイルで、且つこの元の階層符号データと独立した新たな画像データとして符号化処理などを施し、別のファイルとして保存する必要がある。この別ファイルとして保存する場合は、ファイルを管理するということを考えると1つの画像に対して複数のファイルが存在することになり、ファイルを移動、削除、複写等を行なう場合、処理が煩雑になる。またファイル名のつけ方などにも気をつける必要がある。   In order to save intermediate data such as the image data of the intermediate layer processed once or image data smaller than the minimum resolution, it is a file different from the original image data file and independent of the original hierarchical code data. It is necessary to perform encoding processing or the like as the new image data and save it as a separate file. In the case of saving as this separate file, there are a plurality of files for one image in consideration of managing the files, and the process is complicated when moving, deleting, copying, etc. Become. You also need to be careful about how to name the file.

一方、中間データの保存をしない場合では、ユーザの要求が発生する度に上記の処理を行う必要がある。すなわち、同じ画像サイズを複数回要求する場合でも、その要求回数、上記の処理を行なう必要がある。
特開2003-023630号公報 特開2004-040674号公報
On the other hand, in the case where intermediate data is not stored, it is necessary to perform the above processing every time a user request occurs. That is, even when the same image size is requested a plurality of times, it is necessary to perform the above processing for the number of times requested.
JP2003-023630 JP 2004-040674 A

例えば画像サイズが2048x2048画素の画像データをdecomposition level = 5で符号化したJPEG2000符号データ”A.j2k”があるとする。この場合、”A.j2k”は、64x64, 128x128, 256x256, 512x512, 1024x1024, 2048x2048の6種類の異なる解像度の画像データを再現できる。また、画像をデコード/表示するアプリケーション”APP_1.exe”でサムネイル画像から選択された時に表示する画像サイズは、256x256画素相当の画像サイズを表示するとする。   For example, it is assumed that there is JPEG2000 code data “A.j2k” obtained by encoding image data with an image size of 2048 × 2048 pixels at decomposition level = 5. In this case, “A.j2k” can reproduce image data of six different resolutions of 64 × 64, 128 × 128, 256 × 256, 512 × 512, 1024 × 1024, and 2048 × 2048. It is also assumed that the image size displayed when an image decoding / display application “APP_1.exe” is selected from thumbnail images is an image size equivalent to 256 × 256 pixels.

このような条件では、”APP_1.exe”で選択された1枚の画像データを表示する時の処理は、64x64,128x128,256x256の3つの解像度の符号データをデコードし、デコードされた画像を表示することになる。すなわち、このアプリケーション”APP_1.exe”では、256x256画素以下の解像度の画像データは扱わないので、256x256画素以下の解像度の符号データがある場合は、必ず256x256画素以上の画像データをデコードするまで、デコーダをループさせなければならない。そのため、デコードに時間がかかるという問題がある。また、そのアプリケーションで使用しない解像度の符号データをバッファなどで格納しなければならず、格納のための領域を余計に使用してしまうという問題点もある。さらには、JPIPでサーバに符号データを要求する場合は、通信のための時間も余計にかかるという問題もある。   Under these conditions, the processing when displaying one image data selected by "APP_1.exe" decodes the code data of three resolutions of 64x64, 128x128, 256x256 and displays the decoded image Will do. In other words, since this application “APP_1.exe” does not handle image data with a resolution of 256x256 pixels or less, if there is code data with a resolution of 256x256 pixels or less, the decoder must always decode the image data of 256x256 pixels or more. Must be looped. Therefore, there is a problem that decoding takes time. In addition, code data having a resolution that is not used in the application must be stored in a buffer or the like, and there is a problem that an extra storage area is used. Furthermore, when JPIP requests code data from the server, there is a problem that it takes extra time for communication.

更に、特許文献2においては、デコード処理を途中で止めて、デコード処理で使用した係数を保持するため、符号データを保持する場合に比べて、保持のためのメモリを多く使用することになる。またデコーダも途中で止めたり、更には、サブバンドのデータを追加したりと、特殊なデコーダが必要になる。   Further, in Patent Document 2, since the decoding process is stopped halfway and the coefficients used in the decoding process are held, more memory for holding is used than when the code data is held. Also, a special decoder is required, such as stopping the decoder halfway or adding subband data.

また、特許文献1,2では、サーバに保持されているJPEG2000符号データの圧縮パラメタは変更なしで、断片的に符号データの一部分をクライアントに送信し、クライアントで受信した符号データを変換などしないでそのままデコードするため、クライアント側のアプリケーションで使わない部分の解像度の符号データまでをも処理しなければならないという問題がある。さらには解像度の階層数が、デコーダ側でサポートしている階層数を越している場合は、受信した符号データを最後までデコードできないということが生じる場合があるという問題点もある。   In Patent Documents 1 and 2, the compression parameter of the JPEG2000 code data held in the server is not changed, a part of the code data is transmitted to the client in a fragmented manner, and the code data received by the client is not converted. Since the decoding is performed as it is, there is a problem that even the code data of the resolution which is not used in the client side application must be processed. Furthermore, when the number of resolution layers exceeds the number of layers supported on the decoder side, there is a problem that the received code data may not be decoded to the end.

本発明は以上の問題に鑑みて成されたものであり、より高速に、且つメモリ効率を鑑みた画像復号を可能にするための画像符号化データを作成するための技術を提供することを目的とする。   The present invention has been made in view of the above problems, and an object of the present invention is to provide a technique for creating image encoded data for enabling image decoding in consideration of memory efficiency at a higher speed. And

本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。   In order to achieve the object of the present invention, for example, an image processing method of the present invention comprises the following arrangement.

即ち、複数の解像度レベルで画像が復号可能なように構成されている符号化データを取得する工程と、
前記復号解像度レベルを取得する工程と、
前記符号化データを用いて、前記復号解像度レベルで画像を復号する復号工程と、
前記復号工程で復号された画像を符号化する符号化工程と、
前記符号化データのうち前記復号解像度レベルで画像を復号する為に必要な部分の代わりに、前記符号化工程で符号化された画像を用いる為に参照する参照情報を作成する作成工程と、
前記符号化工程で符号化された画像、及び前記参照情報を、前記符号化データと共に管理する管理工程と
を備えることを特徴とする。
That is, obtaining encoded data configured to be able to decode an image at a plurality of resolution levels;
Obtaining the decoding resolution level;
A decoding step of decoding an image at the decoding resolution level using the encoded data;
An encoding step of encoding the image decoded in the decoding step;
A creation step of creating reference information to be referred to in order to use the image encoded in the encoding step, instead of a portion necessary for decoding the image at the decoding resolution level in the encoded data;
A management step of managing the image encoded in the encoding step and the reference information together with the encoded data.

本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。   In order to achieve the object of the present invention, for example, an image processing method of the present invention comprises the following arrangement.

即ち、複数の解像度レベルで画像が復号可能なように構成されている符号化データを取得する工程と、
前記復号解像度レベルを取得する工程と、
前記符号化データにおいて最も低い解像度レベルの画像を復号する復号工程と、
前記復号解像度レベルの画像サイズから前記最も低い解像度レベルの画像サイズまでの間の画像サイズの画像が再現可能なように、前記復号工程で復号した画像を符号化する符号化工程と、
前記最も低い解像度レベルの画像の代わりに、前記符号化工程で符号化された画像を用いる為に参照する参照情報を作成する作成工程と、
前記符号化工程で符号化された画像、及び前記参照情報を、前記符号化データと共に管理する管理工程と
を備えることを特徴とする。
That is, obtaining encoded data configured to be able to decode an image at a plurality of resolution levels;
Obtaining the decoding resolution level;
A decoding step of decoding an image having the lowest resolution level in the encoded data;
An encoding step of encoding the image decoded in the decoding step so that an image of an image size between the image size of the decoding resolution level and the image size of the lowest resolution level can be reproduced;
A creation step of creating reference information to be referred to in order to use the image encoded in the encoding step instead of the lowest resolution level image;
A management step of managing the image encoded in the encoding step and the reference information together with the encoded data.

本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。   In order to achieve the object of the present invention, for example, an image processing apparatus of the present invention comprises the following arrangement.

即ち、複数の解像度レベルで画像が復号可能なように構成されている符号化データを取得する手段と、
前記復号解像度レベルを取得する手段と、
前記符号化データを用いて、前記復号解像度レベルで画像を復号する復号手段と、
前記復号手段によって復号された画像を符号化する符号化手段と、
前記符号化データのうち前記復号解像度レベルで画像を復号する為に必要な部分の代わりに、前記符号化手段によって符号化された画像を用いる為に参照する参照情報を作成する作成手段と、
前記符号化手段によって符号化された画像、及び前記参照情報を、前記符号化データと共に管理する管理手段と
を備えることを特徴とする。
That is, means for acquiring encoded data configured to be able to decode an image at a plurality of resolution levels;
Means for obtaining the decoding resolution level;
Decoding means for decoding an image at the decoding resolution level using the encoded data;
Encoding means for encoding the image decoded by the decoding means;
Creating means for creating reference information to be referred to in order to use an image encoded by the encoding means instead of a portion necessary for decoding an image at the decoding resolution level in the encoded data;
Management means for managing the image encoded by the encoding means and the reference information together with the encoded data.

本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。   In order to achieve the object of the present invention, for example, an image processing apparatus of the present invention comprises the following arrangement.

即ち、複数の解像度レベルで画像が復号可能なように構成されている符号化データを取得する手段と、
前記復号解像度レベルを取得する手段と、
前記符号化データにおいて最も低い解像度レベルの画像を復号する復号手段と、
前記復号解像度レベルの画像サイズから前記最も低い解像度レベルの画像サイズまでの間の画像サイズの画像が再現可能なように、前記復号手段によって復号した画像を符号化する符号化手段と、
前記最も低い解像度レベルの画像の代わりに、前記符号化手段によって符号化された画像を用いる為に参照する参照情報を作成する作成手段と、
前記符号化手段によって符号化された画像、及び前記参照情報を、前記符号化データと共に管理する管理手段と
を備えることを特徴とする。
That is, means for acquiring encoded data configured to be able to decode an image at a plurality of resolution levels;
Means for obtaining the decoding resolution level;
Decoding means for decoding an image having the lowest resolution level in the encoded data;
Encoding means for encoding the image decoded by the decoding means so that an image having an image size between the image size of the decoding resolution level and the image size of the lowest resolution level can be reproduced;
Creating means for creating reference information to be referred to in order to use the image encoded by the encoding means instead of the image of the lowest resolution level;
Management means for managing the image encoded by the encoding means and the reference information together with the encoded data.

本発明の構成により、より高速に、且つメモリ効率を鑑みた画像復号を可能にするための画像符号化データを作成することができる。   With the configuration of the present invention, it is possible to create image encoded data for enabling image decoding in consideration of memory efficiency at a higher speed.

以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。   Hereinafter, the present invention will be described in detail according to preferred embodiments with reference to the accompanying drawings.

[第1の実施形態]
図1は、本実施形態に係るシステムの概略構成図である。同図に示す如く、本実施形態に係るシステムは、2台のクライアントコンピュータ102,103、サーバ101、画像データベース104により構成されている。また、2台のクライアントコンピュータ102、103とサーバ103とはネットワーク100を介して接続されており、互いにデータ通信が可能な構成となっている。
[First Embodiment]
FIG. 1 is a schematic configuration diagram of a system according to the present embodiment. As shown in the figure, the system according to the present embodiment includes two client computers 102 and 103, a server 101, and an image database 104. Further, the two client computers 102 and 103 and the server 103 are connected via the network 100, and are configured to be capable of data communication with each other.

ネットワーク100は、LANやインターネット等により構成されており、無線、有線の何れか、若しくはその組み合わせにより構成されている。画像データベース104には、JPEG2000によって圧縮符号化された画像符号化データがファイル形式で複数保存されている。クライアントコンピュータ102、103からは、画像データベース104に保存されている画像符号化データのうち、所望の画像符号化データの取得要求がサーバ103に送信されるので、サーバ103は要求された画像符号化データを画像データベース104から取得し、クライアントコンピュータ102、103に返信する。   The network 100 is configured by a LAN, the Internet, or the like, and is configured by one of wireless, wired, or a combination thereof. The image database 104 stores a plurality of encoded image data compressed and encoded by JPEG2000 in a file format. From the client computers 102 and 103, among the encoded image data stored in the image database 104, an acquisition request for desired encoded image data is transmitted to the server 103. Data is acquired from the image database 104 and returned to the client computers 102 and 103.

そのため、サーバ103には、画像符号化データをクライアントコンピュータ102、103に送信するためのJPEG2000用の通信プロトコルであるJPIPサーバをはじめ、WWWサーバ機能に必要なソフトウエア等がインストールされている。   Therefore, the server 103 is installed with software necessary for the WWW server function, as well as a JPIP server, which is a JPEG2000 communication protocol for transmitting encoded image data to the client computers 102 and 103.

また、クライアントコンピュータ102、103には、サーバ103に対して所望の画像符号化データの取得要求を送信し、この要求に応じてサーバ103から送信された画像符号化データを復号し、復号結果を表示する、という一連の処理を行う為に必要なソフトウェア、例えば、Webブラウザをはじめ、Webの各ページを表示するために必要なクライアント・ソフトウエアや、画像符号化データを復号/表示するために必要なクライアント・ソフトウエア、並びに、JPIPのクライアント機能を実装したソフトウエア等がインストールされている。   Further, the client computer 102, 103 transmits a request for obtaining desired image encoded data to the server 103, decodes the image encoded data transmitted from the server 103 in response to this request, and displays the decoding result. Software necessary for performing a series of processing such as display, for example, client software necessary for displaying each page of the Web, including a Web browser, and decoding / displaying image encoded data Necessary client software and software that implements the JPIP client function are installed.

なお、同図に示したシステムの構成については一例であり、サーバやクライアントコンピュータの数等については特に同図の構成に限定するものではない。   The configuration of the system shown in the figure is merely an example, and the number of servers and client computers is not particularly limited to the configuration shown in the figure.

図2は、クライアントコンピュータ102、103やサーバ103に適用可能なコンピュータのハードウェア構成を示すブロック図である。   FIG. 2 is a block diagram showing a hardware configuration of a computer applicable to the client computers 102 and 103 and the server 103.

201はCPUで、ROM204やRAM205に格納されているプログラムやデータを用いてコンピュータ全体の制御を行うと共に、本コンピュータを適用した各装置が行う後述の各処理を実行する。   A CPU 201 controls the entire computer using programs and data stored in the ROM 204 and the RAM 205, and executes each process described below performed by each device to which the computer is applied.

202はキーボードで、本コンピュータの操作者が操作することで、各種の指示をCPU201に対して入力することができる。なお、同図ではマウスやジョイスティックなどのポインティングデバイス202aがキーボード202に接続されており、このポインティングデバイス202aはキーボード202と同様、操作者が操作することで各種の指示をCPU201に対して入力することができる。   A keyboard 202 is operated by an operator of the computer and can input various instructions to the CPU 201. In the figure, a pointing device 202a such as a mouse or a joystick is connected to the keyboard 202. Like the keyboard 202, the pointing device 202a inputs various instructions to the CPU 201 when operated by an operator. Can do.

203は表示部で、CRTや液晶画面などにより構成されており、CPU201による処理結果を画像や文字などで表示することができる。   A display unit 203 includes a CRT, a liquid crystal screen, and the like, and can display a processing result by the CPU 201 as an image or a character.

204はROMで、本コンピュータの設定データやブートプログラムなどを格納する。   A ROM 204 stores setting data, a boot program, and the like of the computer.

205はRAMで、ハードディスク206やフロッピー(登録商標)ディスク207からロードされたプログラムやデータを一時的に記憶するためのエリア、ネットワークI/F209を介して外部から受信したデータを一時的に記憶するためのエリア、CPU201が各種の処理を実行する為に用いるワークエリアなど、各種のエリアを適宜提供することができる。   Reference numeral 205 denotes a RAM, which is an area for temporarily storing programs and data loaded from the hard disk 206 and the floppy (registered trademark) disk 207, and temporarily stores data received from the outside via the network I / F 209. Various areas such as a work area used for the CPU 201 to execute various processes can be provided as appropriate.

206はハードディスクで、OSや、本コンピュータを適用した各装置が行う後述の各処理をCPU201に実行させるためのプログラムやデータなどを保存しており、これらはCPU201による制御に従って適宜RAM205にロードされるものである。なお上述の通り、サーバとクライアントコンピュータとではそれぞれ異なるソフトウェアがインストールされているので、このハードディスク206に保存されている情報に関しては、本コンピュータをクライアントコンピュータに適用した場合と、サーバに適用した場合とで異なるものもある。   Reference numeral 206 denotes a hard disk, which stores programs and data for causing the CPU 201 to execute processes to be described later performed by the OS and each apparatus to which the computer is applied, and these are loaded into the RAM 205 as appropriate under the control of the CPU 201. Is. As described above, since different software is installed on the server and the client computer, the information stored in the hard disk 206 is applied to the client computer and the server. Some are different.

207はフロッピー(登録商標)ディスク207で、記憶媒体の一例としてのフロッピー(登録商標)に記録されているプログラムやデータを読み出して、RAM205やハードディスク206に出力する。   A floppy (registered trademark) disk 207 reads a program and data recorded in a floppy (registered trademark) as an example of a storage medium, and outputs it to the RAM 205 and the hard disk 206.

208はプリンタI/Fで、本コンピュータにプリンタなどの印刷装置を接続するためのインターフェースとして機能するものであり、本コンピュータはこのプリンタI/F208を介して印刷装置に印刷対象のデータ等を出力することができる。   A printer I / F 208 functions as an interface for connecting a printing device such as a printer to the computer. The computer outputs data to be printed to the printing device via the printer I / F 208. can do.

209はネットワークI/Fで、本コンピュータを図1に示したネットワーク100に接続するためにインターフェースとして機能するものであり、このネットワークI/F209を介して本コンピュータはネットワーク100に接続されている各装置とのデータ通信を行うことができる。   Reference numeral 209 denotes a network I / F that functions as an interface for connecting the computer to the network 100 shown in FIG. 1. The computer is connected to the network 100 via the network I / F 209. Data communication with the device can be performed.

次に、画像データベース104に保存されている画像符号化データについて説明する。図3は、一般的なJPEG2000を用いて画像を圧縮符号化することで得られる画像符号化データの構成例を示す図である。同図に示した構成は、Resolution level-Layer-Component-Position progression(以下Resolution Progressionと記す)の符号化オプションで符号化されたJPEG2000符号化データの構成の一例である。   Next, image encoded data stored in the image database 104 will be described. FIG. 3 is a diagram illustrating a configuration example of image encoded data obtained by compressing and encoding an image using general JPEG2000. The configuration shown in the figure is an example of the configuration of JPEG2000 encoded data encoded with the encoding option of Resolution level-Layer-Component-Position progression (hereinafter referred to as Resolution Progression).

Resolution Progressionに準じた場合、resolution/layer/component/positionの順に符号化データが記録される。その他にもSNR Progressionなどの符号順が選択可能であるが、これら符号化データの並び順をprogression orderと呼ぶ。本実施形態では説明を簡単にするため、画像符号化データはResolution Progressionに従った構成(即ち図3に示した構成)を有するものとして説明する。   When conforming to Resolution Progression, encoded data is recorded in the order of resolution / layer / component / position. In addition, although the code order such as SNR Progression can be selected, the arrangement order of these encoded data is called a progression order. In the present embodiment, in order to simplify the description, it is assumed that the encoded image data has a configuration according to Resolution Progression (that is, the configuration shown in FIG. 3).

次に、ウェーブレット変換による各サブバンドと解像度との関係について説明する。図4は、6つの解像度レベルの画像が再現可能なように、ウェーブレット変換を行った場合に得られるサブバンドの構成を示す図である。このようなサブバンドは、decomposition level = 5となる。   Next, the relationship between each subband by wavelet transform and resolution will be described. FIG. 4 is a diagram showing a subband configuration obtained when wavelet transform is performed so that images of six resolution levels can be reproduced. Such a subband has decomposition level = 5.

先ず、サブバンドLL(NL=0)を復号すると、解像度レベル0(resolution level = 0)の画像が得られる。そして更に、HL(NL=1),LH(NL=1),HH(NL=1)の3つのサブバンドをLL(NL=0)に続けて復号することで、解像度レベル1(resolution level = 1)の画像が得られる。   First, when the subband LL (NL = 0) is decoded, an image of resolution level 0 (resolution level = 0) is obtained. Further, by decoding the three subbands HL (NL = 1), LH (NL = 1), and HH (NL = 1) following LL (NL = 0), resolution level 1 (resolution level = The image of 1) is obtained.

更に続けてNL=2のサブバンドを復号すると、解像度レベル2(resolution level = 2)の画像が得られ、更に続けてNL=3のサブバンドを復号すると、解像度レベル3(resolution level = 3)の画像が得られ、更に続けてNL=4のサブバンドを復号すると、解像度レベル4(resolution level = 4)の画像が得られ、更に続けてNL=5のサブバンドを復号すると、解像度レベル5(resolution level = 5)の画像が得られる。   When the subband of NL = 2 is further decoded, an image of resolution level 2 (resolution level = 2) is obtained. When the subband of NL = 3 is further decoded, resolution level 3 (resolution level = 3) If the NL = 4 sub-band is decoded further, the resolution level 4 (resolution level = 4) image is obtained, and if the NL = 5 sub-band is further decoded, the resolution level 5 An image of (resolution level = 5) is obtained.

このように、decomposition level = 5の画像符号化データは、各NLのサブバンドを順次復号することで、6つの解像度レベルの画像が再現できる。解像度レベルが1つずつ増加する毎に、再現される画像データの画像サイズは、幅、高さ共に2倍になっていく。   As described above, the encoded image data of decomposition level = 5 can reproduce images of six resolution levels by sequentially decoding each NL subband. Each time the resolution level increases, the image size of the reproduced image data doubles in both width and height.

図3に示したResolution Progressionの場合は、1つのresolution levelの符号データは、layer番号が小さい順で、component番号が小さい順に、position番号が小さい順になるように並べられている。ここでのlayer番号は復元する画像の原画に対するS/N比に対応し、layer番号が小さいほどS/N比が悪い画像データを再現することになる。   In the case of the Resolution Progression shown in FIG. 3, the code data of one resolution level are arranged in the order of the smallest layer number, the smallest component number, and the smallest position number. The layer number here corresponds to the S / N ratio for the original image of the image to be restored, and the smaller the layer number, the more the image data with a worse S / N ratio is reproduced.

更に、JPEG2000符号化データファイル内でのresolution番号数、layer番号数、component番号数の各値は、エンコード時のエンコード・パラメタによって予め設定され、そのパラメタにしたがってエンコード処理されており、その各パラメタが符号化データの中にヘッダ情報として格納されている。また、符号化データにおける論理的な最小単位であるパケットは、各パケットに格納されている全code-blockの情報を管理しているpacket header部と、そのpacketを構成する全code-blockの符号データであるpacket dataから構成されている。   Furthermore, the resolution number, layer number, and component number values in the JPEG2000 encoded data file are preset according to the encoding parameters at the time of encoding, and are encoded according to the parameters. Is stored as header information in the encoded data. In addition, a packet that is a logical minimum unit in encoded data includes a packet header part that manages information of all code-blocks stored in each packet, and codes of all code-blocks constituting the packet. It consists of packet data that is data.

ここで、本実施形態で用いる画像符号化データは、図3に示す如く構成を有し、且つ図4に示す如く、6つの異なる解像度レベルの画像が再現可能なようにNL=0〜5のサブバンドで構成されているものとする。本実施形態では、NL=0〜5の全てのサブバンドを復号した結果得られる画像のサイズを2048画素×2048画素とするので、NL=0〜5のそれぞれまでを復号した結果得られる画像のサイズは以下のようになる。   Here, the encoded image data used in the present embodiment has a configuration as shown in FIG. 3 and, as shown in FIG. 4, NL = 0 to 5 so that images of six different resolution levels can be reproduced. It is assumed that it consists of subbands. In this embodiment, since the size of an image obtained as a result of decoding all subbands of NL = 0 to 5 is set to 2048 pixels × 2048 pixels, an image obtained as a result of decoding up to NL = 0 to 5 is decoded. The size is as follows.

NL=0のサブバンドを復号した結果得られる画像のサイズ 64画素×64画素
NL=0、1のサブバンドを復号した場合に得られる画像のサイズ 128画素×128画素
NL=0〜2のサブバンドを復号した場合に得られる画像のサイズ 256画素×256画素
NL=0〜3のサブバンドを復号した場合に得られる画像のサイズ 512画素×512画素
NL=0〜4のサブバンドを復号した場合に得られる画像のサイズ 1024画素×1024画素
NL=0〜5のサブバンドを復号した場合に得られる画像のサイズ 2048画素×2048画素
即ち、本実施形態に係る画像符号化データはNLに応じて、64画素×64画素のサイズから2048画素×2048画素のサイズまでの6種類のサイズ(解像度レベル)の画像を再現することができる。
Image size obtained as a result of decoding the subband of NL = 0 64 pixels x 64 pixels
Image size obtained when decoding subbands with NL = 0, 1 128 pixels x 128 pixels
Image size obtained when decoding subbands with NL = 0 to 2 256 pixels x 256 pixels
Image size obtained when decoding subbands with NL = 0 to 3 512 pixels x 512 pixels
Image size obtained when subbands with NL = 0 to 4 are decoded 1024 pixels x 1024 pixels
The size of the image obtained when the subband of NL = 0 to 5 is decoded 2048 pixels × 2048 pixels That is, the image encoded data according to this embodiment is 2048 pixels from the size of 64 pixels × 64 pixels according to NL. Images of six types of sizes (resolution levels) up to × 2048 pixels can be reproduced.

更に、本実施形態では、説明を簡単にするために、このような画像符号化データは、クライアントコンピュータが有するハードディスク206内に保存されているものとし、クライアントコンピュータがこの画像符号化データをハードディスク206から読み出し、取り扱う場合について説明する。なお、このクライアントコンピュータは、図1に示したクライアントコンピュータ(クライアントコンピュータ102、103)の何れでも良いが、以下の説明では例としてクライアントコンピュータ102を用いるものとする。   Furthermore, in this embodiment, for the sake of simplicity, it is assumed that such image encoded data is stored in the hard disk 206 of the client computer, and the client computer stores the image encoded data in the hard disk 206. The case of reading from and handling will be described. The client computer may be any of the client computers (client computers 102 and 103) shown in FIG. 1, but in the following description, the client computer 102 is used as an example.

図6は、本実施形態に係る画像符号化データの構成例を示す図である。同図において600が1つの画像符号化データ全体を示す。600−1は、”Start Of Codestream”であり、画像符号化データの始まりを示すマーカ・コードである。601は、エンコード・パラメタ等が格納されているメインヘッダである。例えば最大の画像サイズが2048画素×2048画素であり、”decomposition level = 5”、“Resolution Progression”で画像符号化データが構成されていることを示す。   FIG. 6 is a diagram illustrating a configuration example of image encoded data according to the present embodiment. In the figure, reference numeral 600 denotes the entire encoded image data. Reference numeral 600-1 denotes "Start Of Codestream", which is a marker code indicating the start of encoded image data. Reference numeral 601 denotes a main header in which encoding parameters and the like are stored. For example, the maximum image size is 2048 pixels × 2048 pixels, and “decomposition level = 5” and “Resolution Progression” indicate that encoded image data is configured.

602−0〜602−5はそれぞれ、“Resolution Progression”で格納された各解像度レベル(NL)におけるサブバンドのデータである。即ち、Resolution 0なるもの(602−0)は、NL=0のサブバンド(即ち図4に示したLLサブバンド)の符号化データであり、復号すれば64画素×64画素の画像(解像度レベル0の画像)が得られる。   Reference numerals 602-0 to 602-5 are subband data at each resolution level (NL) stored in “Resolution Progression”. That is, Resolution 0 (602-0) is encoded data of a subband of NL = 0 (that is, the LL subband shown in FIG. 4). If decoded, an image of 64 × 64 pixels (resolution level) 0 image) is obtained.

また、Resolution 1なるもの(602−1)は、NL=1のサブバンド(図4に示したHL(NL=1),LH(NL=1),HH(NL=1)の3つのサブバンド)の符号化データであり、先のResolution 0の符号化データと共に復号することで、128画素×128画素の画像(解像度レベル1の画像)を得ることができる。   Also, Resolution 1 (602-1) is a subband of NL = 1 (three subbands of HL (NL = 1), LH (NL = 1), and HH (NL = 1) shown in FIG. 4). ) And is decoded together with the previous Resolution 0 encoded data, whereby an image of 128 pixels × 128 pixels (image of resolution level 1) can be obtained.

また、Resolution 2なるもの(602−2)は、NL=2のサブバンド(図4に示したHL(NL=2),LH(NL=2),HH(NL=2)の3つのサブバンド)の符号化データであり、先のResolution 0,1の符号化データと共に復号することで、256画素×256画素の画像(解像度レベル2の画像)を得ることができる。   Also, Resolution 2 (602-2) is a subband of NL = 2 (three subbands of HL (NL = 2), LH (NL = 2), and HH (NL = 2) shown in FIG. 4). ) And is decoded together with the previous Resolution 0, 1 encoded data, an image of 256 pixels × 256 pixels (an image of resolution level 2) can be obtained.

また、Resolution 3なるもの(602−3)は、NL=3のサブバンド(図4に示したHL(NL=3),LH(NL=3),HH(NL=3)の3つのサブバンド)の符号化データであり、先のResolution 0〜2の符号化データと共に復号することで、512画素×512画素の画像(解像度レベル3の画像)を得ることができる。   Also, Resolution 3 (602-3) is a subband of NL = 3 (three subbands of HL (NL = 3), LH (NL = 3), and HH (NL = 3) shown in FIG. 4). ) And is decoded together with the encoded data of Resolution 0 to 2 above, an image of 512 pixels × 512 pixels (image of resolution level 3) can be obtained.

また、Resolution 4なるもの(602−4)は、NL=4のサブバンド(図4に示したHL(NL=4),LH(NL=4),HH(NL=4)の3つのサブバンド)の符号化データであり、先のResolution 0〜3の符号化データと共に復号することで、1024画素×1024画素の画像(解像度レベル4の画像)を得ることができる。   The resolution 4 (602-4) is a subband of NL = 4 (three subbands of HL (NL = 4), LH (NL = 4), and HH (NL = 4) shown in FIG. 4). ) And is decoded together with the encoded data of Resolution 0 to 3 above, an image of 1024 pixels × 1024 pixels (image of resolution level 4) can be obtained.

また、Resolution 5なるもの(602−5)は、NL=5のサブバンド(図4に示したHL(NL=5),LH(NL=5),HH(NL=5)の3つのサブバンド)の符号化データであり、先のResolution 0〜4の符号化データと共に復号することで、2048画素×2048画素の画像(解像度レベル5の画像)を得ることができる。   Also, Resolution 5 (602-5) is a subband of NL = 5 (three subbands of HL (NL = 5), LH (NL = 5), and HH (NL = 5) shown in FIG. 4). ) And is decoded together with the encoded data of Resolutions 0 to 4 above, an image of 2048 pixels × 2048 pixels (image of resolution level 5) can be obtained.

このように、各サブバンドの符号化データが解像度レベルが低い順に画像符号化データに含められている。なお、以下では、NL=Xのサブバンドを「解像度レベルXのサブバンド」と呼称する場合がある。   In this way, the encoded data of each subband is included in the encoded image data in order of increasing resolution level. In the following description, a subband of NL = X may be referred to as a “subband of resolution level X”.

600−2は、”End of codestream”であり、画像符号化データの終わりを示すマーカ・コードである。   Reference numeral 600-2 denotes "End of codestream", which is a marker code indicating the end of encoded image data.

ここで、例えば256画素×256画素以上のサイズの画像しか扱わないようなアプリケーションがこのような画像符号化データを取り扱う場合、このアプリケーションによって画像表示など、この画像符号化データを復号する要求が発生した場合には、少なくともNL=0〜2のサブバンドの符号化データは必ず復号する必要がある。これは最低でも256画素×256画素のサイズの画像は復号し、更にこれ以上のサイズの画像が必要となった場合には、NL=3以上のサブバンドの符号化データを更に復号する必要があるからである。更に、NL=0〜2のサブバンドの符号化データを復号する処理は、このような要求が発生する度に行う必要がある。   Here, when an application that handles only an image having a size of, for example, 256 pixels × 256 pixels or more handles such image encoded data, a request for decoding the image encoded data such as image display is generated by this application. In such a case, it is necessary to always decode at least sub-band encoded data of NL = 0-2. It is necessary to decode an image with a size of at least 256 pixels × 256 pixels, and when an image with a size larger than this is required, it is necessary to further decode the encoded data of a subband of NL = 3 or more. Because there is. Further, it is necessary to perform the process of decoding the encoded data of the subband of NL = 0-2 every time such a request occurs.

即ち、このようなアプリケーションでは、画像を復号することが必要な処理が発生する毎に、必ずNL=0〜2のサブバンドの符号化データの復号処理を行うことになり、処理が毎回冗長する。本実施形態ではこのような問題に対処するために、復号要求を受けるたびに毎回復号する符号化データ(この例では、NL=0〜2のサブバンドの符号化データ)については、最初の復号処理で復号したものを新たに新LLサブバンドとする処理を行う。   That is, in such an application, every time processing that requires decoding of an image occurs, decoding processing of encoded data of subbands NL = 0 to 2 is always performed, and the processing becomes redundant every time. . In the present embodiment, in order to cope with such a problem, the encoded data that is decoded every time a decoding request is received (in this example, the encoded data of the subband of NL = 0 to 2) is first decoded. Processing that is decoded in the processing is newly set as a new LL subband.

これにより、毎回復号していた符号化データ部分は1回目の復号処理で既に新LLサブバンドの形態で復号されているので、これを用いればよい。これにより、2回目以降の復号処理では、この冗長した復号処理は行わなくても良くなる。従って、2回目以降の復号処理をより高速に行うことができると共に、1回目に復号した冗長部分を別途別ファイルの形態で保持しておかなくても良いので、メモリ効率の観点でも好適である。   As a result, the encoded data portion that has been decoded each time has already been decoded in the form of the new LL subband in the first decoding process, and this may be used. As a result, in the second and subsequent decoding processes, this redundant decoding process need not be performed. Accordingly, the second and subsequent decoding processes can be performed at a higher speed, and the redundant portion decoded at the first time does not have to be held in a separate file form, which is preferable from the viewpoint of memory efficiency. .

図5は、ハードディスク206に保存している画像符号化データを復号する要求が発生した場合に、クライアントコンピュータ102が行う処理のフローチャートである。なお、同図のフローチャートに従った処理をCPU201に実行させるためのプログラムやデータは、ハードディスク206に保存されており、CPU201による制御に従って適宜RAM205にロードされる。そして、CPU201がこれを用いて処理を実行することで、クライアントコンピュータ102は以下説明する各処理を実行することになる。   FIG. 5 is a flowchart of processing performed by the client computer 102 when a request for decoding the encoded image data stored in the hard disk 206 is generated. Note that programs and data for causing the CPU 201 to execute the processing according to the flowchart of FIG. 5 are stored in the hard disk 206 and are appropriately loaded into the RAM 205 under the control of the CPU 201. Then, when the CPU 201 executes processing using this, the client computer 102 executes each processing described below.

先ず、ステップS500では、処理対象の画像符号化データに対する復号要求が、今回が最初であるか否かをチェックする。一般に、ファイルに対してアクセスするアプリケーションは、過去にどのファイルにアクセスしたかの履歴を保持している。従って、本ステップでも、過去の履歴を参照することで、この画像符号化データに対する同じ復号要求が過去になされているか否かをチェックし、なされている場合には今回の要求は2回目以降と判断するし、なされていない場合には今回の要求は1回目と判断する。   First, in step S500, it is checked whether or not the decoding request for the image encoded data to be processed is the first time. In general, an application that accesses a file holds a history of which file has been accessed in the past. Therefore, also in this step, it is checked whether or not the same decoding request for the image encoded data has been made in the past by referring to the past history. If it is determined and not made, it is determined that this request is the first time.

従って、ステップS500における処理の結果、今回の復号処理が最初ではない場合には処理をステップS506に進め、最初である場合には処理をステップS501に進める。ステップS501では、復号する画像の解像度レベル(復号解像度レベル)を取得する。取得形態については特に限定するものではなく、様々な形態が考えられる。例えば、予め定められた復号解像度レベルを記したデータをハードディスク206から取得するようにしても良い。また、表示部203に復号解像度レベルの入力を促すGUI(グラフィカルユーザインターフェース)を表示し、ユーザがキーボード202やポインティングデバイス202aを用いて、このGUIを介して入力した復号解像度を取得するようにしても良い。   Accordingly, as a result of the process in step S500, if the current decoding process is not the first, the process proceeds to step S506, and if it is the first, the process proceeds to step S501. In step S501, the resolution level (decoding resolution level) of the image to be decoded is acquired. The acquisition form is not particularly limited, and various forms are conceivable. For example, data describing a predetermined decoding resolution level may be acquired from the hard disk 206. In addition, a GUI (graphical user interface) that prompts the input of the decoding resolution level is displayed on the display unit 203, and the decoding resolution input by the user via the GUI is obtained using the keyboard 202 or the pointing device 202a. Also good.

本実施形態ではこの復号解像度レベルを「2」(resolution level = 2、即ちNL=2)とする。即ち、復号する画像のサイズを256画素×256画素とする。なお、ステップS501では、各サブバンドのうち、ユーザが所望する解像度の画像を得るべく復号する部分が特定できるような情報であれば、何れの情報を入力するようにしても良い。   In this embodiment, the decoding resolution level is “2” (resolution level = 2, ie, NL = 2). That is, the size of the image to be decoded is 256 pixels × 256 pixels. In step S501, any information may be input as long as it is information that can specify a portion to be decoded in order to obtain an image having a resolution desired by the user in each subband.

次に、ステップS502では、画像符号化データを含むファイル内を参照し、この入力された復号解像度レベルのサブバンドの符号化データが存在するか否かをチェックする。即ち、復号解像度レベルのサブバンドが、画像符号化データ内のLLサブバンドであるか、若しくは、このファイル内に後述の新LLサブバンドが既に管理されている場合にはこの新LLサブバンドである場合には、この入力された復号解像度レベルのサブバンドの符号化データがこのファイル内に存在していると判断する。また、復号解像度レベルのサブバンドが、画像符号化データ内のLLサブバンドではなく、更に、このファイル内に後述の新LLサブバンドが既に管理されている場合であってもこの新LLサブバンドではない場合には、この入力された復号解像度レベルのサブバンドの符号化データがこのファイル内に存在していないと判断する。   Next, in step S502, the file containing the encoded image data is referred to, and it is checked whether or not the input encoded data of the subband of the decoding resolution level exists. That is, if the subband of the decoding resolution level is an LL subband in the encoded image data, or if a new LL subband described later is already managed in this file, the new LL subband is used. In some cases, it is determined that the subband encoded data of the input decoding resolution level exists in this file. Further, even if the decoding resolution level subband is not the LL subband in the encoded image data and a new LL subband described later is already managed in this file, this new LL subband is also managed. If not, it is determined that the subband encoded data of the input decoding resolution level does not exist in this file.

このチェック処理の結果、存在している場合には処理をステップS506に進める。一方、存在していない場合には、処理をステップS503に進める。   If it exists as a result of this check process, the process advances to step S506. On the other hand, if it does not exist, the process proceeds to step S503.

そして、ステップS503では、指定された復号解像度レベルの画像(即ち、256画素×256画素のサイズの画像)を得るために復号すべき全てのサブバンドを復号し、復号した結果の画像を新LLサブバンドとする。ステップS503における処理の詳細については後述する。   In step S503, all subbands to be decoded are decoded in order to obtain an image having a designated decoding resolution level (ie, an image having a size of 256 pixels × 256 pixels), and the decoded image is converted into a new LL. Subband. Details of the processing in step S503 will be described later.

ステップS504では、指定された復号解像度レベルの画像を得るために復号すべき全てのサブバンドの代わりに、ステップS503で作成した新LLサブバンドを用いる為に参照される後述のfragment table、及びステップS503で作成した新LLサブバンドを含む新画像符号化データを作成する処理を行う。ステップS504で作成するものを総称して「新符号」と呼称する。ステップS504における処理の詳細については後述する。   In step S504, a fragment table, which will be described later, is referred to in order to use the new LL subband created in step S503 instead of all the subbands to be decoded in order to obtain an image of the specified decoding resolution level. Processing for creating new image encoded data including the new LL subband created in S503 is performed. The items created in step S504 are collectively referred to as “new code”. Details of the processing in step S504 will be described later.

そして、ステップS505では、画像符号化データ、及びステップS504で作成した新符号を1つの同じファイルに書き込む処理を行う。ステップS505における処理の詳細については後述する。   In step S505, the encoded image data and the new code created in step S504 are written into one same file. Details of the processing in step S505 will be described later.

一方、ステップS506では、ファイルから所望の符号化データを読み出す場合の読み出し方法を特定する処理を行う。ステップS506における処理の詳細については後述する。   On the other hand, in step S506, processing for specifying a reading method when reading desired encoded data from a file is performed. Details of the processing in step S506 will be described later.

次にステップS507では、ステップS506で特定した読み出し方法に従って所望の符号化データを読み出し、復号(デコード)する。   Next, in step S507, desired encoded data is read and decoded (decoded) in accordance with the reading method specified in step S506.

そして、ステップS590では、ステップS503で作成した新LLサブバンド、若しくはステップS507で復号した結果を、出力画像データとして出力する。出力先は、画像復号の要求に応じて異なるが、例えば画像表示の要求がキーボード202やポインティングデバイス202aによって入力されていたのであれば、出力先は表示部203となる。   In step S590, the new LL subband created in step S503 or the result decoded in step S507 is output as output image data. Although the output destination varies depending on the request for image decoding, for example, if the request for image display is input by the keyboard 202 or the pointing device 202a, the output destination is the display unit 203.

次に、上記ステップS503における、新LLサブバンドの作成処理について、図7Aを用いて説明する。図7Aは、ステップS503における処理の詳細を示すフローチャートである。   Next, new LL subband creation processing in step S503 will be described with reference to FIG. 7A. FIG. 7A is a flowchart showing details of the process in step S503.

先ず、ステップS700では、メインヘッダに格納されているエンコードパラメータに基づいて、画像符号化データ内のタイル数を求める。求める方法としては、最大画像サイズと、1つのタイルのサイズとを用いて、最大画像サイズ/1つのタイルのサイズを計算すれば、容易に求めることができる。   First, in step S700, the number of tiles in the encoded image data is obtained based on the encoding parameter stored in the main header. As a calculation method, the maximum image size and the size of one tile are used to calculate the maximum image size / the size of one tile.

次に、ステップS701では、上記ステップS501で取得した復号解像度レベルをデコード階層数としてデコーダに設定する。本実施形態ではデコーダはデコードプログラムをCPU201が実行することにより実現するので、この場合、ステップS501で取得した復号解像度レベルは、デコードプログラムの実行時に用いる変数に設定することになる。なお、エンコード条件はタイル毎に変更することも可能である。   In step S701, the decoding resolution level acquired in step S501 is set in the decoder as the number of decoding layers. In this embodiment, the decoder is realized by the CPU 201 executing the decoding program. In this case, the decoding resolution level acquired in step S501 is set as a variable used when the decoding program is executed. The encoding conditions can be changed for each tile.

デコーダをハードウェアで実現する場合には、このハードウェアがデコード時に使用するメモリに設定すればよい。ここで、デコード解像度を制御する変数Dlevelを0にする。   When the decoder is realized by hardware, the hardware may be set to a memory used for decoding. Here, the variable Dlevel for controlling the decoding resolution is set to zero.

次に、ステップS702では、1つのタイルを選択し、選択したこのタイルのDlevelで示される解像度レベルのサブバンドの符号化データを復号する処理を行う。そしてこの復号化処理を終えると、次にステップS703では、ステップS702で復号したサブバンドの解像度レベルが復号解像度レベルに達したか否かをチェックする。本実施形態の場合、復号解像度レベルは「2」であるので、ステップS702で復号したサブバンドの解像度レベルが「2」であるのか否かをチェックする。   Next, in step S702, one tile is selected, and processing for decoding the encoded data of the subband of the resolution level indicated by Dlevel of the selected tile is performed. When the decoding process is completed, in step S703, it is checked whether the resolution level of the subband decoded in step S702 has reached the decoding resolution level. In this embodiment, since the decoding resolution level is “2”, it is checked whether or not the resolution level of the subband decoded in step S702 is “2”.

そしてこのチェックの結果、ステップS702で復号したサブバンドのDlevelで示される解像度レベルが復号解像度レベルに達していない場合、即ち、ステップS501で取得した復号解像度レベルにおけるこのタイルの復号処理がステップS702にて未だ行われていない場合には、Dlevelを1つインクリメントし、処理をステップS702に戻し、このタイルの次の解像度レベルにおけるサブバンドの符号化データについて復号処理を行う。   As a result of this check, if the resolution level indicated by Dlevel of the subband decoded in step S702 has not reached the decoding resolution level, that is, the decoding process of this tile at the decoding resolution level acquired in step S501 is performed in step S702. If not done yet, Dlevel is incremented by one, and the process returns to step S702 to perform decoding processing on the encoded data of the subband at the next resolution level of this tile.

一方、ステップS702で復号したサブバンドの解像度レベルが復号解像度レベルに達した場合、即ち、ステップS501で取得した復号解像度レベルにおけるこのタイルの復号処理がステップS702にて行われた場合には、処理をステップS704に進め、全てのタイルについて上記復号処理を行ったかをチェックする。   On the other hand, if the resolution level of the subband decoded in step S702 reaches the decoding resolution level, that is, if the decoding process of this tile at the decoding resolution level acquired in step S501 is performed in step S702, the process In step S704, it is checked whether the decoding process has been performed for all tiles.

このチェックの結果、全てのタイルについて復号処理を行っていない場合には処理をステップS701に戻し、次の未処理のタイルを選択し、選択したこのタイルについてステップS702以降の処理を行う。   If the result of this check is that decoding has not been performed for all tiles, the process returns to step S701, the next unprocessed tile is selected, and the processing from step S702 onward is performed for this selected tile.

以上説明した、図7Aのフローチャートに従った処理を行うことで、全てのタイルについて、解像度レベル0から復号解像度レベル(「2」)までの全ての解像度レベルにおけるサブバンドを復号することができるので、結果として、256画素×256画素の画像を得ることができる。本実施形態ではこの画像を新LLサブバンドとして用いる。なお、ここで、以上の処理によって、元の画像符号化データについては何等変更処理は行っていないことに注意されたい。   By performing the processing according to the flowchart of FIG. 7A described above, subbands at all resolution levels from resolution level 0 to the decoding resolution level (“2”) can be decoded for all tiles. As a result, an image of 256 pixels × 256 pixels can be obtained. In this embodiment, this image is used as a new LL subband. Here, it should be noted that no change processing is performed on the original image encoded data by the above processing.

次に、上記ステップS504における、新符号作成処理について、図7Bを用いて説明する。図7BはステップS504における処理の詳細を示すフローチャートである。   Next, the new code creation process in step S504 will be described with reference to FIG. 7B. FIG. 7B is a flowchart showing details of the processing in step S504.

先ず、ステップS705では、元の画像符号化データに含まれているメインヘッダ(旧メインヘッダ)を取り出す。そして、ステップS706では、取り出したメインヘッダを用いて新メインヘッダを作成する処理を行う。そのうちの1つの処理として、メインヘッダに記述されているdecomposition level=5を新メインヘッダにはdecomposition level=3と記述する。これは、上記ステップS503における処理で、NL=0〜2のサブバンドを1つのサブバンド(新LLサブバンド)としたからである。即ち、この新LLサブバンドをNL=0とすると、NL=1のサブバンドは、元NL=3のサブバンド、NL=2のサブバンドは元NL=4のサブバンド、NL=3のサブバンドは元NL=5のサブバンドとなり、結果としてこのNLの最大値が「3」となるからである。この新メインヘッダは、新LLサブバンドと共に後述の新符号化データを構成する。   First, in step S705, a main header (old main header) included in the original image encoded data is extracted. In step S706, a process of creating a new main header is performed using the extracted main header. As one of the processes, decomposition level = 5 described in the main header is described as decomposition level = 3 in the new main header. This is because the subband of NL = 0 to 2 is set as one subband (new LL subband) in the process in step S503. That is, if this new LL subband is NL = 0, the subband of NL = 1 is the subband of original NL = 3, the subband of NL = 2 is the subband of original NL = 4, and the subband of NL = 3 This is because the band is an original NL = 5 subband, and as a result, the maximum value of the NL is “3”. The new main header constitutes new encoded data described later together with the new LL subband.

次に、ステップS707では、ステップS503で作成された画像を、新LLサブバンドの符号化データとすべく、この画像に対してEBCOTで符号化処理を行う。そして、ステップS708では、NL=0〜2のサブバンドの替わりに、新LLサブバンドを用いるために参照される後述の各情報を作成する処理を行い、ステップS709では、ステップS708で作成した情報を後述のfragment tableに書き込む処理を行う。   Next, in step S707, the image created in step S503 is encoded with EBCOT so as to be encoded data of the new LL subband. In step S708, instead of subbands of NL = 0-2, a process for creating each information to be described later to be used for using the new LL subband is performed. In step S709, the information created in step S708 is performed. Is written to the fragment table described later.

以上の処理の結果作成される新符号の具体的な構成について図6を用いて説明する。同図において603で示す部分が、ステップS503で作成した新LLサブバンドを含む新画像符号化データである。また、603−1、604で示す部分が、ステップS706で作成した新メインヘッダである。また、605−1で示す部分が、ステップS707で作成した新LLサブバンドの符号化データである。   A specific configuration of the new code created as a result of the above processing will be described with reference to FIG. In the drawing, a portion indicated by reference numeral 603 is new image encoded data including the new LL subband created in step S503. Also, the parts indicated by reference numerals 603-1 and 604 are the new main header created in step S706. Also, the portion indicated by 605-1 is the encoded data of the new LL subband created in step S707.

上記ステップS708における処理では、上記603−1、604、605−1で示される部分のバイト数を607−2で示すLengthフィールドに格納する。607−1で示すフィールド(Offsetフィールド)には、画像符号化データ600、新画像符号化データ603を書き込んだファイルの先頭からの新符号化データ603のOffsetを格納する。   In the processing in step S708, the number of bytes of the portion indicated by 603-1, 604, 605-1 is stored in the Length field indicated by 607-2. In a field indicated by 607-1 (Offset field), Offset of the new encoded data 603 from the head of the file in which the encoded image data 600 and the new encoded image data 603 are written is stored.

その後、画像符号化データ600内のResolution 3のサブバンドの符号化データ(602−3)以降の符号化データを指し示すため、608−1で示すフィールドには、画像符号化データ600、新画像符号化データ603を書き込んだファイルの先頭からの602−3のResolution 3のOffsetを格納する。608−2で示すフィールドには、602−3のResolution 3以降の符号化データ602−4,602−5、及び600−2で示すEOCの総バイト数を格納する。   Then, in order to indicate the encoded data after the resolution 3 subband encoded data (602-3) in the encoded image data 600, the field indicated by 608-1 includes the encoded image data 600, the new image code, and the like. Stores the Offset of Resolution 3 of 602-3 from the top of the file in which the digitized data 603 is written. The field indicated by 608-2 stores encoded data 602-4 and 602-5 after Resolution 3 of 602-3 and the total number of bytes of EOC indicated by 600-2.

これにより、607で示すfragment tableを完成させることができる。従って、このfragment tableを先頭(上部)から参照すれば、先ず、元のResolution 0〜2の符号化データ(602−0〜602−2)の代わりに用いるべき新LLサブバンドの符号化データ(605−1)を特定できるし、次に、Resolution 3以降の符号化データを特定できる。   Thereby, the fragment table indicated by 607 can be completed. Therefore, referring to this fragment table from the top (upper part), first, the encoded data of the new LL subband to be used instead of the encoded data (602-0 to 602-2) of the original Resolution 0-2 ( 605-1) can be specified, and then encoded data after Resolution 3 can be specified.

次に、上記ステップS505におけるファイル書き込み処理の詳細について、図8Aを用いて説明する。図8Aは、ステップS505における処理の詳細を示すフローチャートである。   Next, details of the file writing process in step S505 will be described with reference to FIG. 8A. FIG. 8A is a flowchart showing details of the processing in step S505.

先ず、ステップS801では、上記ステップS706において作成した新メインヘッダ(図6において604)を取得する。次に、ステップS802では、この取得した新メインヘッダを参照し、新LLサブバンドの符号化データを特定し、これを読み出す。次に、ステップS803では、ステップS709で作成したfragment tableを取得する。そして次にステップS804では、新LLサブバンドが最低解像度レベル(最小画像サイズ)のサブバンドであることを示すために、「256画素×256画素が最小画像サイズ」を示す情報606と、fragment table706とを、JPEG2000の場合ではAssociation BOX等の仕組みを用いて関連付ける。   First, in step S801, the new main header (604 in FIG. 6) created in step S706 is acquired. Next, in step S802, the acquired new main header is referred to, the encoded data of the new LL subband is specified, and this is read out. Next, in step S803, the fragment table created in step S709 is acquired. In step S804, in order to indicate that the new LL subband is a subband of the lowest resolution level (minimum image size), information 606 indicating “256 pixels × 256 pixels is the minimum image size”, and a fragment table 706 are displayed. Are linked using a mechanism such as Association BOX in the case of JPEG2000.

そして最後にステップS805では、情報606が関連付けられたfragment tableと、上記新符号化データ(図6において603)とをそれぞれBOX(新BOX)に格納し、画像符号化データ600、新画像符号化データ603を格納しているファイルに、新BOXを書き込む(アペンドする)処理を行う。   Finally, in step S805, the fragment table associated with the information 606 and the new encoded data (603 in FIG. 6) are stored in BOX (new BOX), respectively, and the image encoded data 600, new image encoded A process of writing (appending) the new BOX to the file storing the data 603 is performed.

これにより、2つのLLサブバンド(602−0のResolution 0の符号化データ、605−1のResolution 0の符号化データ)を有する画像符号化データファイルを作成することができる。   As a result, an image encoded data file having two LL subbands (encoded data of Resolution 0 of 602-0 and encoded data of Resolution 0 of 605-1) can be created.

次に、上記ステップS506における読み出し方法を特定する処理の詳細について、図8Bを用いて説明する。図8Bは、ステップS506における処理の詳細を示すフローチャートである。   Next, details of the process for specifying the reading method in step S506 will be described with reference to FIG. 8B. FIG. 8B is a flowchart showing details of the processing in step S506.

先ずステップS811では、上記ステップS501における処理と同様の処理を行う。このチェック処理の結果、今回の復号処理が最初ではない場合には処理をステップS810に進め、最初である場合には処理をステップS806に進める。   First, in step S811, the same processing as that in step S501 is performed. As a result of this check process, if the current decoding process is not the first, the process proceeds to step S810. If it is the first, the process proceeds to step S806.

ステップS806では、画像符号化データファイル内を参照し、上記ステップS501で取得した復号解像度レベルのサブバンドの符号化データが存在するか否かをチェックする。即ち、復号解像度レベルが、元の画像符号化データ(図6における600)における解像度レベル0(即ち、図6における602−0)であるのか、それとも新符号化データ(図6に示す603)における解像度レベル0(即ち、図6における605−1)であるのかをチェックする。   In step S806, the inside of the image encoded data file is referred to and it is checked whether or not there is sub-band encoded data of the decoding resolution level acquired in step S501. That is, whether the decoding resolution level is the resolution level 0 (that is, 602-0 in FIG. 6) in the original encoded image data (600 in FIG. 6), or in the newly encoded data (603 in FIG. 6). It is checked whether the resolution level is 0 (that is, 605-1 in FIG. 6).

本実施形態では、ステップS501で入力された復号解像度レベルは256画素×256画素のサイズの画像である。また、元の画像符号化データにおける解像度レベル0の画像サイズは64画素×64画素であり、新符号化データにおける解像度レベル0の画像のサイズは256画素×256画素のサイズであるので、この場合は、ステップS501入力された復号解像度レベルは、新画像符号化データにおける解像度レベル0を意味する。   In the present embodiment, the decoding resolution level input in step S501 is an image having a size of 256 pixels × 256 pixels. In this case, the image size of resolution level 0 in the original image encoded data is 64 pixels × 64 pixels, and the image size of resolution level 0 in the new encoded data is 256 pixels × 256 pixels. In step S501, the input decoding resolution level means the resolution level 0 in the new encoded image data.

以上のチェック処理の結果、ステップS501で入力された復号解像度レベルが、元の画像符号化データにおける解像度レベル0を意味するのであれば処理をステップS809に進め、通常通り元の画像符号化データのLLサブバンドを復号する、と決定する。   As a result of the above check processing, if the decoding resolution level input in step S501 means the resolution level 0 in the original encoded image data, the process proceeds to step S809, and the original encoded image data is processed as usual. Decide to decode the LL subband.

一方、新符号化データにおける解像度レベル0を意味するのであれば、処理をステップS807に進める。ステップS807では、「256画素×256画素が最小画像サイズ」を示す情報606を検索し、ステップS808ではこの情報606と関連付けられているfragment tableを読み出し、このfragment tableを参照して復号する、と決定する。   On the other hand, if it means the resolution level 0 in the new encoded data, the process proceeds to step S807. In step S807, information 606 indicating “256 pixels × 256 pixels is the minimum image size” is searched. In step S808, the fragment table associated with the information 606 is read out, and is decoded with reference to the fragment table. decide.

従って、図8Bに示したフローチャートに従った処理の後に行う上記ステップS507では、この読み出されたfragment tableを上部から順に参照すれば、復号する順にサブバンドの符号化データを特定することができるので、この特定した符号化データを順に復号すれば、所望の画像を得ることができる。   Therefore, in step S507 performed after the processing according to the flowchart shown in FIG. 8B, the encoded data of the subbands can be specified in the decoding order by referring to the read fragment table in order from the top. Therefore, a desired image can be obtained by sequentially decoding the identified encoded data.

一方、ステップS810では、既に読み出し方法はステップS808,S809の何れかで決まっているので、この決まっている方法を用いる、と決定する。   On the other hand, in step S810, since the reading method is already determined in either step S808 or S809, it is determined that this determined method is used.

図17は、上記各BOXを管理している画像符号化データファイルの構成を示す図である。当然、このファイルはJPEG2000に従ったものである。同図において1700はfragment tableを保持するためのBOXで、このfragment tableを複数個有する場合には1700−1で示すfragment list boxをfragment tableの数だけ有するようにすればよい。   FIG. 17 is a diagram showing the configuration of an image encoded data file that manages each of the BOXes. Of course, this file conforms to JPEG2000. In the figure, reference numeral 1700 denotes a BOX for holding a fragment table. If there are a plurality of fragment tables, the number of fragment list boxes indicated by 1700-1 may be as many as the number of fragment tables.

1701は、元の画像符号化データを保持するBOXである。1702は、新符号化データを保持するためのBOXである。1703は、Associationの情報を入れるBOXである。この形式でこれまで説明してきた各データを格納、追加することで、一般的なJPEG2000のデコーダでデコード処理を行うことができる。   Reference numeral 1701 denotes a BOX that holds the original encoded image data. Reference numeral 1702 denotes a BOX for holding new encoded data. Reference numeral 1703 denotes a BOX for storing Association information. By storing and adding each data described so far in this format, a general JPEG2000 decoder can perform decoding processing.

以上の説明により、本実施形態によれば、元々の画像符号化データ内にある任意の解像度のデータを新たなLLサブバンドの符号化データとして持つことにより、元々の画像符号化データ内にある、使わない解像度の低い部分をデコードすることを省くことができる。これにより、デコード処理を高速に行うことが可能となる。   As described above, according to the present embodiment, by having data of arbitrary resolution in the original image encoded data as the encoded data of the new LL subband, it is in the original image encoded data. , It can save the decoding of the low-resolution part that is not used. Thereby, the decoding process can be performed at high speed.

特に、LLサブバンドのみのデコードで処理できると、階層符号のデコードに必要なデコードの繰り返しがなくなる。また、元々の符号データについては何等変更せず、新しい情報を付加するだけなので、元の符号データはそのまま使用することができる。   In particular, if the processing can be performed by decoding only the LL subband, the repetition of decoding necessary for decoding the hierarchical code is eliminated. Also, since the original code data is not changed and new information is added, the original code data can be used as it is.

また、本実施形態では、1つの新符号を画像符号化データファイルに追加する場合について説明したが、要求に応じて複数の新符号を追加するようにしても良い。即ち、6つの解像度レベルの画像が再現可能な画像符号化データの場合、LLサブバンド以外の5種類のサブバンド(NL=1〜5のサブバンド)について、新符号を作成し、追加することができる。   In the present embodiment, the case where one new code is added to the encoded image data file has been described. However, a plurality of new codes may be added as required. That is, in the case of image encoded data that can reproduce images of six resolution levels, new codes are created and added for five types of subbands (NL = 1 to 5) other than the LL subband. Can do.

また、上記ステップS707における新LLサブバンドの符号化では離散ウェーブレット変換処理は全く必要はなく、EBCOT符号化のみで行なうことができるため、高速に符号化処理を行なうことができる。   In addition, in the encoding of the new LL subband in step S707, there is no need for discrete wavelet transform processing, and since it can be performed only by EBCOT encoding, the encoding processing can be performed at high speed.

更に、本実施形態で用いているfragment tableは、JPEG2000のPart2で規定されているテーブル、管理方法であり、新たに追加したLLサブバンドからのデコード処理時にfragment tableを用いながら符号データをリードする処理系に対して特別な処理系は必要ない。   Furthermore, the fragment table used in the present embodiment is a table and management method defined in Part 2 of JPEG2000, and reads code data while using the fragment table during decoding processing from a newly added LL subband. No special processing system is required for the processing system.

[第2の実施形態]
第1の実施形態では、元の画像符号化データにおけるLLサブバンドの代わりに用いるべき新LLサブバンドとして、このLLサブバンドよりも画像サイズの大きいものを作成した。本実施形態では、新LLサブバンドとして元の画像符号化データにおけるLLサブバンドよりも画像サイズの小さいものを作成する。
[Second Embodiment]
In the first embodiment, a new LL subband to be used instead of the LL subband in the original image encoded data is created with a larger image size than the LL subband. In the present embodiment, a new LL subband having a smaller image size than the LL subband in the original image encoded data is created.

図14は、本実施形態に係る画像符号化データの構成例を示す図である。同図において図6と同じ部分には同じ番号を付けており、その説明は省略する。1400は画像符号化データ全体を示しており、その構成については実質的には図6に示した構成と同様である。異なる点は、図6に示した画像符号化データ600では”decomposition level = 5”であったものが、図14に示した画像符号化データ1400では、”decomposition level = 3”となっている点である。   FIG. 14 is a diagram illustrating a configuration example of encoded image data according to the present embodiment. In the figure, the same parts as those in FIG. Reference numeral 1400 denotes the entire encoded image data, and the configuration thereof is substantially the same as the configuration shown in FIG. The difference is that the encoded data 600 shown in FIG. 6 has “decomposition level = 5”, whereas the encoded image data 1400 shown in FIG. 14 has “decomposition level = 3”. It is.

本実施形態でも、NL=0〜3の全てのサブバンドを復号した結果得られる画像のサイズを2048画素×2048画素とするので、NL=0〜3のそれぞれまでを復号した結果得られる画像のサイズは以下のようになる。   Also in this embodiment, since the size of the image obtained as a result of decoding all subbands of NL = 0 to 3 is 2048 pixels × 2048 pixels, the image obtained as a result of decoding up to each of NL = 0 to 3 is also used. The size is as follows.

NL=0のサブバンドを復号した結果得られる画像のサイズ 256画素×256画素
NL=0、1のサブバンドを復号した場合に得られる画像のサイズ 512画素×512画素
NL=0〜2のサブバンドを復号した場合に得られる画像のサイズ 1024画素×1024画素
NL=0〜3のサブバンドを復号した場合に得られる画像のサイズ 2048画素×2048画素
即ち、本実施形態に係る画像符号化データはNLに応じて、256画素×256画素のサイズから2048画素×2048画素のサイズまでの4種類のサイズ(解像度レベル)の画像を再現することができる。
Image size obtained as a result of decoding subbands with NL = 0 256 pixels x 256 pixels
Size of image obtained when subband of NL = 0, 1 is decoded 512 pixels x 512 pixels
Image size obtained when subbands with NL = 0 to 2 are decoded 1024 pixels x 1024 pixels
The size of the image obtained when the subband of NL = 0 to 3 is decoded 2048 pixels × 2048 pixels That is, the encoded image data according to the present embodiment is 2048 pixels from the size of 256 pixels × 256 pixels according to NL. Images of four types of sizes (resolution levels) up to × 2048 pixels can be reproduced.

ここで、本実施形態では、図14に示した構成を有する画像符号化データ1400を用いて、128画素×128画素のサイズの画像を復号、表示する場合について説明する。ここで、従来では同様の目的を達成するためには、最小画像(解像度レベル0の画像)を復号し、これを縦横半分に縮小する。本実施形態では、元のLLサブバンドについて階層符号化処理を行い、新LLサブバンドを作成する。新LLサブバンドを作成した以降の処理については第1の実施形態と同様である。   Here, in the present embodiment, a case will be described in which an image having a size of 128 pixels × 128 pixels is decoded and displayed using the encoded image data 1400 having the configuration shown in FIG. Here, conventionally, in order to achieve the same purpose, the minimum image (image of resolution level 0) is decoded and reduced to half in length and width. In the present embodiment, hierarchical coding processing is performed on the original LL subband to create a new LL subband. The processing after the creation of the new LL subband is the same as in the first embodiment.

ここで、ハードディスク206に保存している画像符号化データ1400を復号する要求が発生した場合に、クライアントコンピュータ102が行う本実施形態に係る処理のフローチャートについては基本的には図5に示したものと同様であるが、ステップS503〜S505における処理が若干異なる。以下では、本実施形態で行うステップS503〜S505における処理について説明する。   Here, when a request to decode the encoded image data 1400 stored in the hard disk 206 is generated, the flowchart of the processing according to the present embodiment performed by the client computer 102 is basically the one shown in FIG. However, the processing in steps S503 to S505 is slightly different. Below, the process in step S503-S505 performed by this embodiment is demonstrated.

図15Aは、本実施形態に係るステップS503における処理の詳細を示すフローチャートである。同図において図7Aと同じステップについては同じステップ番号を付けており、その説明は省略する。   FIG. 15A is a flowchart showing details of the processing in step S503 according to the present embodiment. In the figure, the same steps as those in FIG.

先ず、ステップS1500では、画像符号化データ1400のLLサブバンドを復号する。これにより、256画素×256画素のサイズの画像を得る。次に、ステップS700では、上述の通り、タイル数を求める。次に、ステップS1501では、256画素×256画素のサイズの画像をこのタイル数分タイル分割した場合に、各タイルについて階層符号化を行う際の階層数を設定する。本実施形態では、256画素×256画素のサイズの画像、及び128画素×128画素のサイズの画像の2階層(2つの解像度レベル)が表現可能な階層符号化を行うので、符号化階層数は「2」となる。そこで、ステップS1501で設定する階層数は「2」となる。   First, in step S1500, the LL subband of the encoded image data 1400 is decoded. Thereby, an image having a size of 256 pixels × 256 pixels is obtained. Next, in step S700, the number of tiles is obtained as described above. Next, in step S1501, when an image having a size of 256 pixels × 256 pixels is divided into tiles by the number of tiles, the number of hierarchies at the time of performing hierarchical coding is set for each tile. In the present embodiment, since hierarchical encoding that can represent two layers (two resolution levels) of an image having a size of 256 pixels × 256 pixels and an image having a size of 128 pixels × 128 pixels is performed, the number of encoding layers is “2”. Therefore, the number of hierarchies set in step S1501 is “2”.

次に、ステップS1502では、1つタイルを選択し、選択したタイルについて、2階層を有するような階層符号化処理を行う。ステップS703では、全ての階層について符号化を行ったのかを判断し、行っていない場合には処理をステップS1502に戻すのであるが、行ったのであれば処理をステップS704に進め、全てのタイルについて符号化処理を行ったのかをチェックする。そして全てのタイルについて符号化処理を行ったのであれば本処理を終了するのであるが、全てのタイルについて符号化処理を行っていないのであれば処理をステップS1501に戻し、未だ符号化処理の対象となっていないタイルについて以降の処理を行う。   In step S1502, one tile is selected, and the selected tile is subjected to hierarchical encoding processing having two layers. In step S703, it is determined whether or not all layers have been encoded. If not, the process returns to step S1502. If so, the process proceeds to step S704, and all tiles are processed. Check if the encoding process has been performed. If all tiles have been encoded, this process ends. If all tiles have not been encoded, the process returns to step S1501, and the encoding process is not yet performed. Subsequent processing is performed for tiles that are not.

以上の処理により、256画素×256画素のサイズの画像に基づいて、128画素×128画素のサイズの画像と、256画素×256画素のサイズの画像の2つの解像度レベルが再現可能な符号化データを作成することができる。以下では、この作成した128画素×128画素のサイズの画像を新LLサブバンドとして用いる。   Based on the above processing, based on an image having a size of 256 pixels × 256 pixels, encoded data capable of reproducing two resolution levels of an image having a size of 128 pixels × 128 pixels and an image having a size of 256 pixels × 256 pixels. Can be created. In the following, this created image of 128 × 128 pixels is used as the new LL subband.

図15Bは、本実施形態に係るステップS504における処理の詳細を示すフローチャートである。同図に示したフローチャートは、図7Bに示したフローチャートにおいてステップS707を省略したものであり、基本的に行う処理については同様であるので、これに関する説明は省略する。即ち、本実施形態では、新LLサブバンドとして用いるものが異なるのみであって、それ以外については第1の実施形態と同様である。   FIG. 15B is a flowchart showing details of the process in step S504 according to the present embodiment. The flowchart shown in FIG. 7 is obtained by omitting step S707 in the flowchart shown in FIG. 7B, and the processing that is basically performed is the same. That is, in the present embodiment, only the new LL subband used is different, and the rest is the same as in the first embodiment.

従って、ステップS504における処理では、上記603−1、1404,1405−1,1405−2で示される部分のバイト数を1407−2で示すLengthフィールドに格納する。1407−1で示すフィールド(Offsetフィールド)には、新画像符号化データ1403を格納しているファイル先頭からの新符号化データ1403のOffsetを格納する。   Therefore, in the process in step S504, the number of bytes of the portion indicated by 603-1, 1404, 1405-1, and 1405-2 is stored in the Length field indicated by 1407-2. In a field indicated by 1407-1 (Offset field), Offset of the new encoded data 1403 from the head of the file storing the new encoded image data 1403 is stored.

その後、画像符号化データ1400内のResolution Level=1以降の符号化データを指し示すため、1408−1で示すフィールドには、画像符号化データ1400を格納しているファイルの先頭からの1402−1のResolution 1のOffsetを格納する。1408−2で示すフィールドには、1402−1のResolution 1以降の符号化データ1402−2,1402−3、及び600−2で示すEOCの総バイト数を格納する。   Thereafter, in order to indicate encoded data after Resolution Level = 1 in the encoded image data 1400, the field indicated by 1408-1 includes 1402-1 from the head of the file storing the encoded image data 1400. Stores the Resolution 1 offset. The field indicated by 1408-2 stores the encoded data 1402-2 and 1402-3 after Resolution 1 of 1402-1 and the total number of bytes of EOC indicated by 600-2.

図16は、本実施形態に係るステップS505における処理の詳細を示すフローチャートである。同図に示したフローチャートは、図8Aに示したフローチャートにおいてステップS802をステップS1600に変更したものである。従って、以下では、このステップS1600における処理について説明する。ステップS1600では、ステップS801で取得した新メインヘッダを参照し、新LLサブバンドの符号化データを特定し、これを読み出す。   FIG. 16 is a flowchart showing details of the processing in step S505 according to the present embodiment. The flowchart shown in the figure is obtained by changing step S802 to step S1600 in the flowchart shown in FIG. 8A. Therefore, hereinafter, the processing in step S1600 will be described. In step S1600, the new main header acquired in step S801 is referred to, the encoded data of the new LL subband is specified, and this is read out.

以上の処理により、図14に示した各部を含む画像符号化データファイルを作成することができる。新符号化データ1403において、画像符号化データ1400におけるResolution 0(1402−0)を、2つの解像度レベル(1405−1と1405−2)に分けている点が第1の実施形態とは異なる。   Through the above processing, an image encoded data file including each unit shown in FIG. 14 can be created. The new encoded data 1403 is different from the first embodiment in that Resolution 0 (1402-0) in the image encoded data 1400 is divided into two resolution levels (1405-1 and 1405-2).

また上述の通り、fragment table1407において、上記603−1、1404,1405−1,1405−2で示される部分のバイト数を1407−2で示すLengthフィールドに格納する。1407−1で示すフィールド(Offsetフィールド)には、新画像符号化データ1403を格納しているファイル先頭からの新符号化データ1403のOffsetを格納する。   Further, as described above, in the fragment table 1407, the number of bytes of the portion indicated by 603-1, 1404, 1405-1, 1405-2 is stored in the Length field indicated by 1407-2. In a field indicated by 1407-1 (Offset field), Offset of the new encoded data 1403 from the head of the file storing the new encoded image data 1403 is stored.

その後、画像符号化データ1400内のResolution Level=1以降の符号化データを指し示すため、1408−1で示すフィールドには、画像符号化データ1400を格納しているファイルの先頭からの1402−1のResolution 1のOffsetを格納する。1408−2で示すフィールドには、1402−1のResolution 1以降の符号化データ1402−2,1402−3、及び600−2で示すEOCの総バイト数を格納する。   Thereafter, in order to indicate encoded data after Resolution Level = 1 in the encoded image data 1400, the field indicated by 1408-1 includes 1402-1 from the head of the file storing the encoded image data 1400. Stores the Resolution 1 offset. The field indicated by 1408-2 stores the encoded data 1402-2 and 1402-3 after Resolution 1 of 1402-1 and the total number of bytes of EOC indicated by 600-2.

そして、新LLサブバンドが再現可能な最低解像度レベル(最小画像サイズ)が「128画素×128画素のサイズ」であることを示すために、「128画素×128画素が最小画像サイズ」を示す情報1406と、fragment table1407とを、JPEG2000の場合ではAssociation BOX等の仕組みを用いて関連付ける。   In order to indicate that the minimum resolution level (minimum image size) at which the new LL subband can be reproduced is “128 pixels × 128 pixels”, information indicating “128 pixels × 128 pixels is the minimum image size”. 1406 and the fragment table 1407 are associated using a mechanism such as an Association BOX in the case of JPEG2000.

そして最後にステップS805では、情報1406が関連付けられたfragment table1407と、上記新符号化データ(図14において1403)とをそれぞれ、BOX(新BOX)に格納し、画像符号化データ1400を格納しているファイルに、新BOXを書き込む(アペンドする)処理を行う。   Finally, in step S805, the fragment table 1407 associated with the information 1406 and the new encoded data (1403 in FIG. 14) are stored in a BOX (new BOX), and the encoded image data 1400 is stored. The new BOX is written (appended) to the existing file.

以上の説明により、本実施形態によれば以下の点を解消することができる。即ち、アプリケーションによっては、階層符号データ内に格納されている最低解像度の画像データより小さな画像データが必要になる場合がある。この時、最低解像度の画像データをデコードした後、単純な縮小処理によって目的とする画像サイズの画像データを得るのではなく、階層符号化により縮小処理および符号化を行い、新しいLLサブバンドの画像サイズを目的とする画像サイズにすることで、以降のアプリケーションの処理上で、再度この128画素×128画素のサイズの画像データが必要になったときにでも、高速にデコード処理を行なうことが可能となる。   As described above, according to the present embodiment, the following points can be solved. That is, depending on the application, image data smaller than the lowest resolution image data stored in the hierarchical code data may be required. At this time, after decoding the image data of the lowest resolution, the image data of the desired image size is not obtained by simple reduction processing, but reduction processing and encoding are performed by hierarchical encoding, and the new LL subband image is obtained. By setting the size to the desired image size, it is possible to perform high-speed decoding even when image data of the size of 128 pixels × 128 pixels is required again in subsequent application processing. It becomes.

さらには、この階層符号化による符号化処理は、小さい画像サイズの画像データを対象とするため、高速に行なうことが可能である。   Furthermore, since the encoding process by this hierarchical encoding targets image data with a small image size, it can be performed at high speed.

また、本実施形態では、1つの新符号を画像符号化データファイルに追加する場合について説明したが、要求に応じて複数の新符号を追加するようにしても良い。   In the present embodiment, the case where one new code is added to the encoded image data file has been described. However, a plurality of new codes may be added as required.

[第3の実施形態]
第1,2の実施形態では、画像符号化データがクライアントコンピュータ102が有するハードディスク206内に保存されているものとし、クライアントコンピュータ102がこの画像符号化データをハードディスク206から読み出し、取り扱う場合について説明した。本実施形態では、画像符号化データは図1に示した画像データベース104に保持されているものとする。この場合、クライアントコンピュータ102は、第1の実施形態でも説明したとおり、この画像データベース104を管理しているサーバ101に対して画像取得要求を送信する。その際、サーバ101は、要求された解像度レベルに応じて、第1,2の実施形態で説明した各処理を行うことになる。なお、本実施形態では、クライアントコンピュータ102とサーバ101との間の通信プロトコルについては、JPIPを用いるものとして説明する。
[Third Embodiment]
In the first and second embodiments, it is assumed that the encoded image data is stored in the hard disk 206 of the client computer 102, and the client computer 102 reads the encoded image data from the hard disk 206 and handles it. . In the present embodiment, it is assumed that the encoded image data is held in the image database 104 shown in FIG. In this case, as described in the first embodiment, the client computer 102 transmits an image acquisition request to the server 101 that manages the image database 104. At that time, the server 101 performs each process described in the first and second embodiments in accordance with the requested resolution level. In the present embodiment, the communication protocol between the client computer 102 and the server 101 is described as using JPIP.

JPIP/JPEG2000符号化データを使えば、ユーザはサーバ101にある全ての画像データを取得せず、必要な部分のデータのみをサーバ101から受信することが可能である。ユーザの受信データの単位としては、JPEG2000のpacket、あるいはpacketよりも大きい符号化単位であるタイル単位が考えられる。例えばユーザがサーバ101から受信するデータ単位としてpacket単位を想定する。Packet単位のリクエストおよびレスポンスの概念図を図9に示す。   If JPIP / JPEG2000 encoded data is used, the user can receive only necessary data from the server 101 without acquiring all the image data in the server 101. As a unit of received data of the user, a JPEG2000 packet or a tile unit which is an encoding unit larger than the packet can be considered. For example, a packet unit is assumed as a data unit received by the user from the server 101. FIG. 9 shows a conceptual diagram of requests and responses in packet units.

図9は、クライアントコンピュータ102がサーバ101から所望の符号化データを取得するために、互いの間で行われるやり取りを説明する図である。クライアントコンピュータ102側では所望の画像のタイル番号、resolution level、layer、component、position番号を指定し、その後、指定した符号化データの要求900をサーバ101に送信する。   FIG. 9 is a diagram for explaining an exchange performed between the client computers 102 in order to obtain desired encoded data from the server 101. On the client computer 102 side, the tile number, resolution level, layer, component, and position number of the desired image are specified, and then the specified encoded data request 900 is transmitted to the server 101.

サーバ101はこの要求900を受信すると、画像符号化データ903のコードストリームを解析し、要求900によって指定されたタイル番号、resolution level、layer、component、position番号に相当するpacketデータ911を抜き出し、クライアントコンピュータ102に送信する。このpacketデータ911は910に示す如く、要求900によって指定されたタイル番号、resolution level、layer、component、position番号に相当するものである。   Upon receiving this request 900, the server 101 analyzes the code stream of the encoded image data 903, extracts the packet data 911 corresponding to the tile number, resolution level, layer, component, and position number specified by the request 900, and sends the client Send to computer 102. The packet data 911 corresponds to the tile number, resolution level, layer, component, and position number specified by the request 900, as indicated by 910.

次に、JPIPを使ってpacketデータを送信単位として、データを送受信する場合のレスポンスデータの構成を、図10、図11を用いて説明する。   Next, the structure of response data when data is transmitted and received using packet data as a transmission unit using JPIP will be described with reference to FIGS.

図10は、packetデータ群により構成されているprecinct data-binの構成例を示す図である。同図において1001はこのprecinct data-binである。同図に示す如く、precinct data-binは複数のpacketデータ1003により構成されている。   FIG. 10 is a diagram illustrating a configuration example of a precinct data-bin configured by a packet data group. In the figure, reference numeral 1001 denotes this precinct data-bin. As shown in the figure, the precinct data-bin is composed of a plurality of packet data 1003.

JPIPでは、このprecinct data-binと呼ばれるJPEG2000のpacketデータの塊を基本としてレスポンスデータを作成する。precinct data-binとは、Tile tnの中のprecinct pnのresolution level rn、 component番号cnを構成する全てのlayerのpacketを、layer番号が昇順になるように並べてつなげたデータの塊である。   In JPIP, response data is created based on a JPEG2000 packet data block called “precinct data-bin”. The precinct data-bin is a lump of data in which packets of all layers constituting the resolution level rn of the precinct pn and the component number cn in Tile tn are arranged in an ascending order.

図10に示すprecinct data-binから抜き出したPacket(tn, rn, cn, pn, 1)を使って、作成されたJPIP response dataの例を図11に示す。JPIP response dataは、message header1101とmessage body 1103から構成される。   FIG. 11 shows an example of JPIP response data created using Packet (tn, rn, cn, pn, 1) extracted from the precinct data-bin shown in FIG. JPIP response data includes a message header 1101 and a message body 1103.

message body 1103には、precinct data-bin1001から切り出されたJPEG2000符号化データが入る。つまり、図10のPacket(tn, rn, cn, pn, 1)1003を抜き出してJPIP response dataを作成すると、Packet(tn, rn, cn, pn, 1) 1003がmessage body 1103に格納される。message header 1101は、4つのパラメタから構成されている。   In message body 1103, JPEG2000 encoded data cut out from precinct data-bin 1001 is entered. That is, when the packet (tn, rn, cn, pn, 1) 1003 in FIG. 10 is extracted and JPIP response data is created, the packet (tn, rn, cn, pn, 1) 1003 is stored in the message body 1103. The message header 1101 is composed of four parameters.

1番最初のパラメタは、message body 1103に入っているデータがprecinct data-binであることを示す識別子が入る。2番目のパラメタには、precinct data-bin ID(PrID)が入る。これは、タイル番号tn, resolution level番号rn, component番号cn, precinct番号 pnから一意に決まり、次式で求めることができる。   The first parameter contains an identifier indicating that the data contained in the message body 1103 is a precinct data-bin. The second parameter contains a precinct data-bin ID (PrID). This is uniquely determined from the tile number tn, resolution level number rn, component number cn, and precinct number pn, and can be obtained by the following equation.

PrID(tn, rn, cn, pn)=tn+(cn+s×(component数))×tile数
ただし、
s = pn + tn×(resolution level rnにおける1 tileあたりのprecinct数)
+(resolution level 0から(rn-1)までのタイル trのprecinct数の総和)
3番目のパラメタは、レスポンスデータのprecinct data-binにおけるオフセット値PrOffset 1002である。つまり、message body 1103に入っているデータは、PrID(tn, rn, cn, pn)のprecinct data-bin 1001において何Byte目からのデータであるのかを示す値であり、図10の1002で示したPrOffstの値と同じである。PrOffstは、precinct data-binの先頭からのオフセット値を示すものである。message header 1101の最後のパラメタは、response data、つまり、message body 1103のバイト長である。つまり、ResLen 1102には、ResLen[byte] 1104の値が入る。
PrID (tn, rn, cn, pn) = tn + (cn + s × (number of components)) × tile number However,
s = pn + tn x (number of precincts per tile at resolution level rn)
+ (total number of precincts for tile tr from resolution level 0 to (rn-1))
The third parameter is an offset value PrOffset 1002 in the response data-precinct data-bin. That is, the data contained in the message body 1103 is a value indicating the number of bytes starting from the data data bin 1001 of PrID (tn, rn, cn, pn), which is indicated by 1002 in FIG. It is the same as the value of PrOffst. PrOffst indicates an offset value from the head of the precinct data-bin. The last parameter of the message header 1101 is response data, that is, the byte length of the message body 1103. That is, ResLen 1102 contains the value of ResLen [byte] 1104.

ここで、クライアントコンピュータ102からサーバ101に対して以下のようなリクエストが発行されたとする。   Here, it is assumed that the following request is issued from the client computer 102 to the server 101.

http://www.image.com/jpip.cgi?target=d.jp2&fsiz=256,256&type=jpp-stream
このようなリクエストを受けた場合に、サーバ101が行う処理について、同処理のフローチャートを示す図12を用いて説明する。なお、同図のフローチャートに従った処理をサーバ101のCPU201が行うためのプログラムやデータはサーバ101のハードディスク206に格納されており、サーバ101のCPU201がこれをRAM205にロードした後に、これを用いて処理を実行することで、サーバ101は以下説明する各処理を実行する。
http://www.image.com/jpip.cgi?target=d.jp2&fsiz=256,256&type=jpp-stream
A process performed by the server 101 when such a request is received will be described with reference to FIG. 12 showing a flowchart of the process. It should be noted that a program and data for the CPU 201 of the server 101 to perform processing according to the flowchart of FIG. 10 are stored in the hard disk 206 of the server 101 and are used after the CPU 201 of the server 101 loads them into the RAM 205. Thus, the server 101 executes each process described below.

先ずステップS1201では、上記リクエストを受信する。なおこのリクエスト文字列は、”target”によりサーバ101に格納されている画像符号化データファイル名を指定し、”fsiz”により画像全体の大きさを指定し、”type”により送信データ形式を指定している。   First, in step S1201, the request is received. This request character string specifies the image encoded data file name stored in the server 101 by “target”, the size of the entire image by “fsiz”, and the transmission data format by “type” is doing.

次に、ステップS1202では、ステップS1201でクライアントコンピュータ102から受信したリクエストの文字列を解析する。これにより、要求されているファイル名、返送データの形式、返信する画像データのサイズなどの条件を取得することができる。即ち、本実施形態の場合には、”d.jp2”というファイル名の画像ファイルを、画像全体が256画素×256画素のサイズに収まるサイズになるように要求しており、更にその返送形式は、JPIPのprecinct data-binである。   In step S1202, the request character string received from the client computer 102 in step S1201 is analyzed. This makes it possible to acquire conditions such as the requested file name, return data format, and the size of the image data to be returned. That is, in the case of the present embodiment, the image file having the file name “d.jp2” is requested to have a size that fits the size of 256 pixels × 256 pixels, and the return format is as follows. JPIP's precinct data-bin.

次に、ステップS1203では、この要求に応じたレスポンスデータを生成する。ステップS1203における処理の詳細については後述する。そして、ステップS1204では、ステップS1203で作成したレスポンスデータをクライアントコンピュータ102に送信する。   In step S1203, response data corresponding to this request is generated. Details of the processing in step S1203 will be described later. In step S1204, the response data created in step S1203 is transmitted to the client computer 102.

図13は、上記ステップS1203におけるレスポンスデータの作成処理の詳細を示すフローチャートである。なお、同図において図5と同じステップについては同じステップ番号を付けており、その説明は省略する。   FIG. 13 is a flowchart showing details of response data creation processing in step S1203. In the figure, the same steps as those in FIG. 5 are denoted by the same step numbers, and the description thereof is omitted.

先ず、ステップS500では、クライアントコンピュータ102から前回同じものが要求されたか否か(今回が1回目のアクセスか否か)をチェックする。これは、JPIPの通信をステートフルで行う場合は、1回目か否かはその要求のフローの中で簡単に判断できる。一方ステートレスの場合は、サーバのログ情報などを利用することで判断することができる。   First, in step S500, it is checked whether or not the same request was previously requested from the client computer 102 (whether or not this time is the first access). When JPIP communication is performed in a stateful manner, whether or not this is the first time can be easily determined in the request flow. On the other hand, in the case of stateless, it can be determined by using log information of the server.

このようなチェック処理の結果、クライアントコンピュータ102から前回同じものが要求されている場合には処理をステップS506に進める。一方、クライアントコンピュータ102から前回同じものが要求されていない場合には、処理をステップS501に進める。そしてステップS501では、クライアントコンピュータ102から受けたリクエストに記述された画像サイズを、復号解像度レベルとして取得する。   As a result of such check processing, if the same request was previously requested from the client computer 102, the processing proceeds to step S506. On the other hand, if the same request has not been requested from the client computer 102 last time, the process proceeds to step S501. In step S501, the image size described in the request received from the client computer 102 is acquired as the decoding resolution level.

そしてステップS502では、リクエストに記述されているファイル名で特定される画像符号化データファイル内を参照し、この取得した復号解像度レベルのサブバンドの符号化データが存在するか否かをチェックする。このチェック処理については実質的には第1の実施形態と同様にして行う。   In step S502, the image encoded data file specified by the file name described in the request is referred to, and it is checked whether or not the acquired encoded data of the subband of the decoding resolution level exists. This check process is performed in substantially the same manner as in the first embodiment.

このチェック処理の結果、存在すると判断した場合には処理をステップS506に進め、存在しないと判断した場合には処理をステップS1301に進める。ステップS1301では、上記ステップS503からステップS505における処理を行う。上記第2の実施形態において説明したように、ステップS503からステップS505における処理は第1の実施形態と第2の実施形態とで異なる。従って、画像符号化データファイル内に存在するLLサブバンドの画像サイズ、そして存在すれば既存の新LLサブバンドの画像サイズのうち小さい方を選択し、選択した画像サイズが復号解像度レベルの画像サイズよりも小さい場合には第1の実施形態に係るステップS503〜ステップS505における処理を行い、大小関係が逆であれば第2の実施形態に係るステップS503〜ステップS505における処理を行う。本実施形態の場合には、256画素×256画素のサイズの画像がクライアントコンピュータ102から要求されているので、第1の実施形態に係るステップS503〜ステップS505における処理を行うことになる。   As a result of this check process, if it is determined that it exists, the process proceeds to step S506. If it is determined that it does not exist, the process proceeds to step S1301. In step S1301, the processing from step S503 to step S505 is performed. As described in the second embodiment, the processing from step S503 to step S505 differs between the first embodiment and the second embodiment. Accordingly, the image size of the LL subband existing in the image encoded data file and, if present, the smaller one of the image sizes of the existing new LL subband are selected, and the selected image size is the image size of the decoding resolution level. If it is smaller, the processing in steps S503 to S505 according to the first embodiment is performed. If the magnitude relationship is reversed, the processing in steps S503 to S505 according to the second embodiment is performed. In the case of the present embodiment, since an image having a size of 256 pixels × 256 pixels is requested from the client computer 102, the processes in steps S503 to S505 according to the first embodiment are performed.

次に、ステップS1302では、ステップS1301で作成した新LLサブバンドの読み出し方法を特定する処理を行う。本ステップでは、図8Bのフローチャートに従った処理を行う。   Next, in step S1302, processing for specifying the method for reading the new LL subband created in step S1301 is performed. In this step, processing according to the flowchart of FIG. 8B is performed.

そして、ステップS1303では、ステップS1302,S506の何れかで決定した読み出し方法で読み出された符号化データを返送データとして作成する。そしてその後、サーバ101はこの返送データをクライアントコンピュータ102に送信する。   In step S1303, the encoded data read by the reading method determined in any of steps S1302 and S506 is created as return data. Thereafter, the server 101 transmits this return data to the client computer 102.

ここで、上記ステップS500において、今回の要求が一回目の要求か否かを判断しているのは、この一回目の要求で今後の要求に対してどの読み出し方を利用するかを決定するためである。具体的には、一回目の要求で256画素×256画素のサイズの画像データを要求する本実施形態の場合、ユーザの要求等により拡大要求が発生し、次に512画素×512画素の画像データをサーバ101に要求した場合は、クライアントコンピュータ102側ではLLサブバンドが256画素×256画素のサイズの画像の符号データだと認識しているため、256画素×256画素のサイズの画像の符号化データからの差分の符号データを返送する必要がある。そのため2回目以降の要求の場合は、一回目で特定した読み出し方法に従って、処理を行なう必要があるためである。   Here, in step S500, it is determined whether or not the current request is the first request in order to determine which read-out method is used for the future request in the first request. It is. Specifically, in the case of this embodiment in which image data having a size of 256 pixels × 256 pixels is requested by the first request, an enlargement request is generated due to a user request or the like, and then image data of 512 pixels × 512 pixels. When the server 101 is requested, the client computer 102 recognizes that the LL subband is encoded data of an image having a size of 256 pixels × 256 pixels, and therefore encodes an image having a size of 256 pixels × 256 pixels. It is necessary to return the code data of the difference from the data. Therefore, in the case of the second and subsequent requests, it is necessary to perform processing according to the reading method specified in the first time.

以上説明したように、元々サーバ101にはLLサブバンドが64画素×64画素のサイズの画像の符号化データが格納されている場合でも、クライアントコンピュータ102からの要求が256画素×256画素のサイズの画像の符号化データから始まる要求の場合には、あたかもLLサブバンドが256画素×256画素のサイズの画像の符号化データであるかのように返送データを返すため、クライアントコンピュータ102側のアプリケーション、特にデコーダにおいて、クライアントコンピュータ102のアプリケーションが使用しない画像サイズのデコード、具体的には64画素×64画素のサイズ、128画素×128画素のサイズの画像データをデコードすることなく、256画素×256画素のサイズの画像データを直接デコードできるため、高速にデコードを行なうことができる。   As described above, even when the server 101 originally stores encoded data of an image having an LL subband size of 64 pixels × 64 pixels, the request from the client computer 102 is a size of 256 pixels × 256 pixels. In the case of the request starting from the encoded data of the image, since the return data is returned as if the LL subband is the encoded data of the image of 256 pixels × 256 pixels, the application on the client computer 102 side Particularly, in the decoder, decoding of an image size that is not used by the application of the client computer 102, specifically, 256 pixels × 256 without decoding image data of a size of 64 × 64 pixels and 128 × 128 pixels. Direct decoding of pixel-size image data Therefore, decoding can be performed at high speed.

さらには、サーバ101から送られる符号化データの量においても、3階層分(64画素×64画素のサイズ、128画素×128画素のサイズ、256画素×256画素のサイズ)の符号化データを送るよりは、1つのLLサブバンドの符号化データを返送した方が、データ量的にも少なくて済み、ネットワーク上でのトラフィックを下げることができる。従って、システム全体におけるスループットを向上させることができる。   Furthermore, also in the amount of encoded data sent from the server 101, encoded data of three layers (size of 64 pixels × 64 pixels, size of 128 pixels × 128 pixels, size of 256 pixels × 256 pixels) is sent. Rather, it is possible to reduce the amount of data and return traffic on the network by returning the encoded data of one LL subband. Therefore, the throughput in the entire system can be improved.

ここで、以上の各実施形態によれば、以下のような効果が期待できる。   Here, according to each embodiment described above, the following effects can be expected.

即ち、アプリケーションが使用する最低解像度の画像サイズに符号データの最低解像度を合わせることができ、デコードにかかる時間を短縮することができる。またアプリケーションは、最初に画像を表示する画像サイズから拡大表示する場合など、符号データ内のどの階層符号データをデコードすればよいかも簡単に判断することができる。   That is, the minimum resolution of the code data can be matched with the minimum resolution image size used by the application, and the time required for decoding can be shortened. Also, the application can easily determine which hierarchical code data in the code data should be decoded, such as when enlarging and displaying the image size from which the image is displayed first.

またこの符号変換処理は、画像サイズの小さい画像データを対象に行うため、高速に変換できる。あるいはこの符号変換処理で、既に階層符号データの中に存在する途中の階層の符号データをLLサブバンドに変換する処理は、DWT処理を行うことは無く、単に画像データをLLサブバンドとしてEBCOT符号化処理を行うだけであるため、演算コストは低い。   Since this code conversion process is performed on image data having a small image size, it can be converted at high speed. Alternatively, in this code conversion process, the process of converting the code data in the middle layer already existing in the hierarchical code data to the LL subband does not perform the DWT process, and simply uses the EBCOT code with the image data as the LL subband. The calculation cost is low because only the conversion processing is performed.

さらには、符号データのLLサブバンドの画像サイズより小さなサイズのLLサブバンドを生成するための、再符号化処理を行なう場合においても、画像サイズが小さいを対象に階層符号化を行なうため、高速に行なうことができる。   Furthermore, even when performing re-encoding processing to generate an LL subband having a size smaller than the image size of the LL subband of the code data, hierarchical encoding is performed for a small image size, so that high-speed processing is performed. Can be done.

また使い方によっては、全ての解像度の符号データをLLサブバンドの符号データでデコードすることも可能になる。この場合は、各階層の符号データを独立した符号データとして扱うことが可能となる。   Further, depending on the usage, it is possible to decode the code data of all resolutions with the code data of the LL subband. In this case, the code data of each layer can be handled as independent code data.

更には、符号データをサーバに要求するような場合は、JPIPの仕組みを利用し、サーバがリクエスト文字列を判断することにより、サーバ側で自動的に判断することも可能である。このためクライアントはサーバで管理されている符号データのエンコード・オプションを意識することなく、アプリケーションが設定する最低解像度の画像データを簡単に入手することができ、さらには階層数を削減することで、サーバから返送する符号の通信量まで削減できる。   Furthermore, when the code data is requested from the server, the server side can automatically determine the request character string by using the JPIP mechanism. For this reason, the client can easily obtain the lowest resolution image data set by the application without being aware of the encoding options of the code data managed by the server, and by reducing the number of layers, It is possible to reduce the communication amount of codes returned from the server.

更には、サーバで管理している符号化データは、他のクライアントからの要求に対して、再利用することができるため、符号データを効率的に利用することが可能となる。   Furthermore, since the encoded data managed by the server can be reused in response to a request from another client, the encoded data can be used efficiently.

あるいは、サーバとクライアント間で画像データの通信の前に、ネゴシエーションすることも可能であり、これを行うことでより正確に双方の状態などを知らせることが可能となる。さらにはこのネゴシエーションには、JPIPの”vendor capability”として実装も可能であり、JPIPの仕組みの範囲内での実装が可能である。   Alternatively, it is possible to negotiate before communication of image data between the server and the client. By doing this, it becomes possible to more accurately notify both states. Furthermore, this negotiation can be implemented as JPIP's “vendor capability” and can be implemented within the scope of the JPIP mechanism.

また、上記各実施形態は適宜組み合わせて用いるようにしても良い。   The above embodiments may be used in combination as appropriate.

[その他の実施形態]
また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
[Other Embodiments]
Needless to say, the object of the present invention can be achieved as follows. That is, a recording medium (or storage medium) that records a program code of software that implements the functions of the above-described embodiments is supplied to a system or apparatus. Then, the computer (or CPU or MPU) of the system or apparatus reads and executes the program code stored in the recording medium. In this case, the program code itself read from the recording medium realizes the functions of the above-described embodiment, and the recording medium on which the program code is recorded constitutes the present invention.

また、コンピュータが読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。   Further, by executing the program code read by the computer, an operating system (OS) or the like running on the computer performs part or all of the actual processing based on the instruction of the program code. Needless to say, the process includes the case where the functions of the above-described embodiments are realized.

さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。   Furthermore, it is assumed that the program code read from the recording medium is written in a memory provided in a function expansion card inserted into the computer or a function expansion unit connected to the computer. After that, based on the instruction of the program code, the CPU included in the function expansion card or function expansion unit performs part or all of the actual processing, and the function of the above-described embodiment is realized by the processing. Needless to say.

本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。   When the present invention is applied to the recording medium, program code corresponding to the flowchart described above is stored in the recording medium.

本発明の第1の実施形態に係るシステムの概略構成図である。1 is a schematic configuration diagram of a system according to a first embodiment of the present invention. クライアントコンピュータ102、103やサーバ103に適用可能なコンピュータのハードウェア構成を示すブロック図である。2 is a block diagram illustrating a hardware configuration of a computer applicable to client computers 102 and 103 and a server 103. FIG. 一般的なJPEG2000を用いて画像を圧縮符号化することで得られる画像符号化データの構成例を示す図である。It is a figure which shows the structural example of the image coding data obtained by carrying out the compression coding of the image using general JPEG2000. 6つの解像度レベルの画像が再現可能なように、ウェーブレット変換を行った場合に得られるサブバンドの構成を示す図である。It is a figure which shows the structure of the subband obtained when a wavelet transformation is performed so that the image of six resolution levels can be reproduced. ハードディスク206に保存している画像符号化データを復号する要求が発生した場合に、クライアントコンピュータ102が行う処理のフローチャートである。4 is a flowchart of processing performed by a client computer when a request for decoding encoded image data stored in a hard disk is generated. 本発明の第1の実施形態に係る画像符号化データの構成例を示す図である。It is a figure which shows the structural example of the image coding data which concerns on the 1st Embodiment of this invention. ステップS503における処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the process in step S503. ステップS504における処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the process in step S504. ステップS505における処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the process in step S505. ステップS506における処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the process in step S506. クライアントコンピュータ102がサーバ101から所望の符号化データを取得するために、互いの間で行われるやり取りを説明する図である。FIG. 3 is a diagram for explaining an exchange performed between client computers 102 in order to obtain desired encoded data from a server 101. packetデータ群により構成されているprecinct data-binの構成例を示す図である。It is a figure which shows the structural example of precinct data-bin comprised by the packet data group. 図10に示すprecinct data-binから抜き出したPacket(tn, rn, cn, pn, 1)を使って、作成されたJPIP response dataの例を示す図である。It is a figure which shows the example of JPIP response data produced using Packet (tn, rn, cn, pn, 1) extracted from the precinct data-bin shown in FIG. リクエストを受けた場合に、サーバ101が行う処理のフローチャートである。It is a flowchart of the process which the server 101 performs when a request is received. ステップS1203におけるレスポンスデータの作成処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the production | generation process of the response data in step S1203. 本発明の第2の実施形態に係る画像符号化データの構成例を示す図である。It is a figure which shows the structural example of the image coding data which concerns on the 2nd Embodiment of this invention. 本発明の第2の実施形態に係るステップS503における処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the process in step S503 which concerns on the 2nd Embodiment of this invention. 本発明の第2の実施形態に係るステップS504における処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the process in step S504 which concerns on the 2nd Embodiment of this invention. 本発明の第2の実施形態に係るステップS505における処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the process in step S505 which concerns on the 2nd Embodiment of this invention. 各BOXを管理している画像符号化データファイルの構成を示す図である。It is a figure which shows the structure of the image coding data file which manages each BOX.

Claims (11)

複数の解像度レベルで画像が復号可能なように構成されている符号化データを取得する工程と、
前記復号解像度レベルを取得する工程と、
前記符号化データを用いて、前記復号解像度レベルで画像を復号する復号工程と、
前記復号工程で復号された画像を符号化する符号化工程と、
前記符号化データのうち前記復号解像度レベルで画像を復号する為に必要な部分の代わりに、前記符号化工程で符号化された画像を用いる為に参照する参照情報を作成する作成工程と、
前記符号化工程で符号化された画像、及び前記参照情報を、前記符号化データと共に管理する管理工程と
を備えることを特徴とする画像処理方法。
Obtaining encoded data configured such that an image can be decoded at a plurality of resolution levels;
Obtaining the decoding resolution level;
A decoding step of decoding an image at the decoding resolution level using the encoded data;
An encoding step of encoding the image decoded in the decoding step;
A creation step of creating reference information to be referred to in order to use the image encoded in the encoding step, instead of a portion necessary for decoding the image at the decoding resolution level in the encoded data;
An image processing method comprising: a management step of managing the image encoded in the encoding step and the reference information together with the encoded data.
前記管理工程では、前記符号化工程で符号化された画像と、前記符号化データと、前記参照情報と、を1つのファイルで管理することを特徴とする請求項1に記載の画像処理方法。   The image processing method according to claim 1, wherein in the management step, the image encoded in the encoding step, the encoded data, and the reference information are managed in one file. 前記作成工程では、前記符号化工程で符号化された画像の前記ファイルにおける所在情報、前記符号化データのうち前記復号解像度レベルで画像を復号する為に必要な部分以外の部分の前記ファイルにおける所在情報を、この順に登録したテーブルを前記参照情報として作成することを特徴とする請求項2に記載の画像処理方法。   In the creating step, the location information in the file of the image encoded in the encoding step, the location in the file of the encoded data other than the portion necessary for decoding the image at the decoding resolution level The image processing method according to claim 2, wherein a table in which information is registered in this order is created as the reference information. 前記復号工程、前記符号化工程、前記作成工程による処理は、前記復号解像度レベルの画像サイズを有する画像が、前記符号化データと共に管理されていない場合に行う処理であることを特徴とする請求項1に記載の画像処理方法。   The processing by the decoding step, the encoding step, and the creation step is processing performed when an image having an image size of the decoding resolution level is not managed together with the encoded data. 2. The image processing method according to 1. 更に、前記復号解像度レベルの画像サイズを有する画像が、既に前記符号化データと共に管理されている場合には、当該画像を復号して出力する工程を備えることを特徴とする請求項1に記載の画像処理方法。   2. The method according to claim 1, further comprising a step of decoding and outputting the image when the image having the image size of the decoding resolution level is already managed together with the encoded data. Image processing method. 複数の解像度レベルで画像が復号可能なように構成されている符号化データを取得する工程と、
前記復号解像度レベルを取得する工程と、
前記符号化データにおいて最も低い解像度レベルの画像を復号する復号工程と、
前記復号解像度レベルの画像サイズから前記最も低い解像度レベルの画像サイズまでの間の画像サイズの画像が再現可能なように、前記復号工程で復号した画像を符号化する符号化工程と、
前記最も低い解像度レベルの画像の代わりに、前記符号化工程で符号化された画像を用いる為に参照する参照情報を作成する作成工程と、
前記符号化工程で符号化された画像、及び前記参照情報を、前記符号化データと共に管理する管理工程と
を備えることを特徴とする画像処理方法。
Obtaining encoded data configured such that an image can be decoded at a plurality of resolution levels;
Obtaining the decoding resolution level;
A decoding step of decoding an image having the lowest resolution level in the encoded data;
An encoding step of encoding the image decoded in the decoding step so that an image of an image size between the image size of the decoding resolution level and the image size of the lowest resolution level can be reproduced;
A creation step of creating reference information to be referred to in order to use the image encoded in the encoding step instead of the lowest resolution level image;
An image processing method comprising: a management step of managing the image encoded in the encoding step and the reference information together with the encoded data.
前記符号化データが再現可能な最小の画像サイズ、及び前記符号化データと共に既に前記管理工程で管理されている画像のサイズのうち最も小さいサイズと、前記復号解像度レベルの画像サイズとの大小関係に基づいて、請求項1乃至5に記載の画像処理方法、請求項6に記載の画像処理方法の何れかを実行することを特徴とする画像処理方法。   The minimum image size that the encoded data can be reproduced, and the size relationship between the smallest size of the images already managed in the management process together with the encoded data, and the image size of the decoding resolution level An image processing method according to any one of claims 1 to 5 and an image processing method according to claim 6. 複数の解像度レベルで画像が復号可能なように構成されている符号化データを取得する手段と、
前記復号解像度レベルを取得する手段と、
前記符号化データを用いて、前記復号解像度レベルで画像を復号する復号手段と、
前記復号手段によって復号された画像を符号化する符号化手段と、
前記符号化データのうち前記復号解像度レベルで画像を復号する為に必要な部分の代わりに、前記符号化手段によって符号化された画像を用いる為に参照する参照情報を作成する作成手段と、
前記符号化手段によって符号化された画像、及び前記参照情報を、前記符号化データと共に管理する管理手段と
を備えることを特徴とする画像処理装置。
Means for obtaining encoded data configured to be capable of decoding an image at a plurality of resolution levels;
Means for obtaining the decoding resolution level;
Decoding means for decoding an image at the decoding resolution level using the encoded data;
Encoding means for encoding the image decoded by the decoding means;
Creating means for creating reference information to be referred to in order to use an image encoded by the encoding means instead of a portion necessary for decoding an image at the decoding resolution level in the encoded data;
An image processing apparatus comprising: a management unit that manages the image encoded by the encoding unit and the reference information together with the encoded data.
複数の解像度レベルで画像が復号可能なように構成されている符号化データを取得する手段と、
前記復号解像度レベルを取得する手段と、
前記符号化データにおいて最も低い解像度レベルの画像を復号する復号手段と、
前記復号解像度レベルの画像サイズから前記最も低い解像度レベルの画像サイズまでの間の画像サイズの画像が再現可能なように、前記復号手段によって復号した画像を符号化する符号化手段と、
前記最も低い解像度レベルの画像の代わりに、前記符号化手段によって符号化された画像を用いる為に参照する参照情報を作成する作成手段と、
前記符号化手段によって符号化された画像、及び前記参照情報を、前記符号化データと共に管理する管理手段と
を備えることを特徴とする画像処理装置。
Means for obtaining encoded data configured to be capable of decoding an image at a plurality of resolution levels;
Means for obtaining the decoding resolution level;
Decoding means for decoding an image having the lowest resolution level in the encoded data;
Encoding means for encoding the image decoded by the decoding means so that an image having an image size between the image size of the decoding resolution level and the image size of the lowest resolution level can be reproduced;
Creating means for creating reference information to be referred to in order to use the image encoded by the encoding means instead of the image of the lowest resolution level;
An image processing apparatus comprising: a management unit that manages the image encoded by the encoding unit and the reference information together with the encoded data.
コンピュータに請求項1乃至7の何れか1項に記載の画像処理方法を実行させることを特徴とするプログラム。   A program causing a computer to execute the image processing method according to any one of claims 1 to 7. 請求項10に記載のプログラムを格納したことを特徴とする、コンピュータ読み取り可能な記憶媒体。   A computer-readable storage medium storing the program according to claim 10.
JP2005330649A 2005-11-15 2005-11-15 Image processing method and image processing unit Pending JP2007142581A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005330649A JP2007142581A (en) 2005-11-15 2005-11-15 Image processing method and image processing unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005330649A JP2007142581A (en) 2005-11-15 2005-11-15 Image processing method and image processing unit

Publications (2)

Publication Number Publication Date
JP2007142581A true JP2007142581A (en) 2007-06-07
JP2007142581A5 JP2007142581A5 (en) 2008-10-30

Family

ID=38204962

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005330649A Pending JP2007142581A (en) 2005-11-15 2005-11-15 Image processing method and image processing unit

Country Status (1)

Country Link
JP (1) JP2007142581A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010152027A (en) * 2008-12-25 2010-07-08 Hitachi Ltd Image display apparatus

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003153187A (en) * 2001-11-15 2003-05-23 Canon Inc Information recorder and controlling method thereof
US20030113027A1 (en) * 2001-07-02 2003-06-19 Woei Chan Digital image compression
JP2005033801A (en) * 2003-07-07 2005-02-03 Ricoh Co Ltd Method, product, and apparatus for network access to partial document images
JP2005094345A (en) * 2003-09-17 2005-04-07 Ricoh Co Ltd Image processor, image processing system, image output control method, program, and recording medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030113027A1 (en) * 2001-07-02 2003-06-19 Woei Chan Digital image compression
JP2003153187A (en) * 2001-11-15 2003-05-23 Canon Inc Information recorder and controlling method thereof
JP2005033801A (en) * 2003-07-07 2005-02-03 Ricoh Co Ltd Method, product, and apparatus for network access to partial document images
JP2005094345A (en) * 2003-09-17 2005-04-07 Ricoh Co Ltd Image processor, image processing system, image output control method, program, and recording medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010152027A (en) * 2008-12-25 2010-07-08 Hitachi Ltd Image display apparatus

Similar Documents

Publication Publication Date Title
JP4709493B2 (en) Method and product for communicating compressed digital images
JP4377103B2 (en) Image processing for JPEG2000 in a server client environment
US7206804B1 (en) Methods and systems for transmitting digital images
JP4111926B2 (en) Image processing apparatus, program, storage medium, and image transmission method
EP1335561B1 (en) Method for document viewing
JP4603947B2 (en) Image communication system, server apparatus and control method therefor, and computer program
JP4934462B2 (en) Method, server and computer program for accessing partial document images
JP4128438B2 (en) Image processing apparatus, program, storage medium, and image editing method
US7558430B2 (en) Apparatus method and computer-readable medium for processing hierarchical encoded image data
JP2004274758A (en) Method and apparatus for converting jpp-stream into jpeg-2000 code stream
JP2004194146A (en) Displaying method of thumbnail image, server computer, client computer, and program
JP2004274759A (en) Communication method and device for compressed digital image with limited access and server/client transfer
JP2008140361A (en) Image processing apparatus or image processing method
KR100893829B1 (en) Object transfer method with format adaptation
JP2004242290A (en) Image processing apparatus and image processing method, image edit processing system, image processing program, and storage medium
US7721971B2 (en) Image processing system, image processing method and computer readable information recording medium
US7456844B2 (en) Image transmission method, computer-readable image transmission program, recording medium, and image transmission apparatus
JP2007142581A (en) Image processing method and image processing unit
US20070140572A1 (en) Decompression for printing and display systems
JP3958198B2 (en) Image processing method
JP5080325B2 (en) Information processing apparatus, information processing method, information processing program, and recording medium
JP2006086579A (en) Image processing apparatus, program and storage medium
JP4450321B2 (en) Information processing system, client device, server device, stream type control method, program, and information recording medium
JP2006339972A (en) Image processing apparatus and its control method, computer program, and storage medium
JP5187094B2 (en) Image encoding device

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080912

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080912

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110922