JP2007142581A - Image processing method and image processing unit - Google Patents
Image processing method and image processing unit Download PDFInfo
- 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
Links
Images
Landscapes
- Image Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
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が挙げられる。
特許文献1によれば、サーバにJPEG2000で符号化された圧縮画像ファイルを置き、クライアントからコードストリームを部分的に要求し、バッファして格納する。そして、格納されていない部分のみを新規にサーバに対して要求を発行し、受信した符号データと既にバッファリングしている符号データとを接合し、デコードすることを繰り返す。この時の部分的な要求の単位は、JPEG2000符号内のパケット、タイル、コードブロックから選択される。また、バイト単位での要求も可能となっている。一方サーバは、要求された圧縮データの部分データを抜き出してクライアントに返送する。
According to
一方、特許文献2によれば、JPEG2000符号データのうち、サブバンド単位でサーバにデータを要求するもので、デコード時で使用した係数を保持する。そして、次に上位のサブバンドの符号データを要求した場合は、その係数に今回のデータを付加することでデコードする。そして、デコードで使用した係数を保持することを繰り返す。これにより、クライアント側で受信した符号データをバッファして格納する必要がないシステムを提供する。また、これにより、解像度方向のプログレッシブ表示を可能にする。
On the other hand, according to
また、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.
一方、中間データの保存をしない場合では、ユーザの要求が発生する度に上記の処理を行う必要がある。すなわち、同じ画像サイズを複数回要求する場合でも、その要求回数、上記の処理を行なう必要がある。
例えば画像サイズが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
また、特許文献1,2では、サーバに保持されているJPEG2000符号データの圧縮パラメタは変更なしで、断片的に符号データの一部分をクライアントに送信し、クライアントで受信した符号データを変換などしないでそのままデコードするため、クライアント側のアプリケーションで使わない部分の解像度の符号データまでをも処理しなければならないという問題がある。さらには解像度の階層数が、デコーダ側でサポートしている階層数を越している場合は、受信した符号データを最後までデコードできないということが生じる場合があるという問題点もある。
In
本発明は以上の問題に鑑みて成されたものであり、より高速に、且つメモリ効率を鑑みた画像復号を可能にするための画像符号化データを作成するための技術を提供することを目的とする。 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
ネットワーク100は、LANやインターネット等により構成されており、無線、有線の何れか、若しくはその組み合わせにより構成されている。画像データベース104には、JPEG2000によって圧縮符号化された画像符号化データがファイル形式で複数保存されている。クライアントコンピュータ102、103からは、画像データベース104に保存されている画像符号化データのうち、所望の画像符号化データの取得要求がサーバ103に送信されるので、サーバ103は要求された画像符号化データを画像データベース104から取得し、クライアントコンピュータ102、103に返信する。
The
そのため、サーバ103には、画像符号化データをクライアントコンピュータ102、103に送信するためのJPEG2000用の通信プロトコルであるJPIPサーバをはじめ、WWWサーバ機能に必要なソフトウエア等がインストールされている。
Therefore, the
また、クライアントコンピュータ102、103には、サーバ103に対して所望の画像符号化データの取得要求を送信し、この要求に応じてサーバ103から送信された画像符号化データを復号し、復号結果を表示する、という一連の処理を行う為に必要なソフトウェア、例えば、Webブラウザをはじめ、Webの各ページを表示するために必要なクライアント・ソフトウエアや、画像符号化データを復号/表示するために必要なクライアント・ソフトウエア、並びに、JPIPのクライアント機能を実装したソフトウエア等がインストールされている。
Further, the
なお、同図に示したシステムの構成については一例であり、サーバやクライアントコンピュータの数等については特に同図の構成に限定するものではない。 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
201はCPUで、ROM204やRAM205に格納されているプログラムやデータを用いてコンピュータ全体の制御を行うと共に、本コンピュータを適用した各装置が行う後述の各処理を実行する。
A
202はキーボードで、本コンピュータの操作者が操作することで、各種の指示をCPU201に対して入力することができる。なお、同図ではマウスやジョイスティックなどのポインティングデバイス202aがキーボード202に接続されており、このポインティングデバイス202aはキーボード202と同様、操作者が操作することで各種の指示をCPU201に対して入力することができる。
A
203は表示部で、CRTや液晶画面などにより構成されており、CPU201による処理結果を画像や文字などで表示することができる。
A
204はROMで、本コンピュータの設定データやブートプログラムなどを格納する。
A
205はRAMで、ハードディスク206やフロッピー(登録商標)ディスク207からロードされたプログラムやデータを一時的に記憶するためのエリア、ネットワークI/F209を介して外部から受信したデータを一時的に記憶するためのエリア、CPU201が各種の処理を実行する為に用いるワークエリアなど、各種のエリアを適宜提供することができる。
206はハードディスクで、OSや、本コンピュータを適用した各装置が行う後述の各処理をCPU201に実行させるためのプログラムやデータなどを保存しており、これらはCPU201による制御に従って適宜RAM205にロードされるものである。なお上述の通り、サーバとクライアントコンピュータとではそれぞれ異なるソフトウェアがインストールされているので、このハードディスク206に保存されている情報に関しては、本コンピュータをクライアントコンピュータに適用した場合と、サーバに適用した場合とで異なるものもある。
207はフロッピー(登録商標)ディスク207で、記憶媒体の一例としてのフロッピー(登録商標)に記録されているプログラムやデータを読み出して、RAM205やハードディスク206に出力する。
A floppy (registered trademark)
208はプリンタI/Fで、本コンピュータにプリンタなどの印刷装置を接続するためのインターフェースとして機能するものであり、本コンピュータはこのプリンタI/F208を介して印刷装置に印刷対象のデータ等を出力することができる。
A printer I /
209はネットワークI/Fで、本コンピュータを図1に示したネットワーク100に接続するためにインターフェースとして機能するものであり、このネットワークI/F209を介して本コンピュータはネットワーク100に接続されている各装置とのデータ通信を行うことができる。
次に、画像データベース104に保存されている画像符号化データについて説明する。図3は、一般的なJPEG2000を用いて画像を圧縮符号化することで得られる画像符号化データの構成例を示す図である。同図に示した構成は、Resolution level-Layer-Component-Position progression(以下Resolution Progressionと記す)の符号化オプションで符号化されたJPEG2000符号化データの構成の一例である。
Next, image encoded data stored in the
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
このように、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
図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,
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
また、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
また、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 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 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
このように、各サブバンドの符号化データが解像度レベルが低い順に画像符号化データに含められている。なお、以下では、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
先ず、ステップ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
本実施形態ではこの復号解像度レベルを「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
次に、上記ステップ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
デコーダをハードウェアで実現する場合には、このハードウェアがデコード時に使用するメモリに設定すればよい。ここで、デコード解像度を制御する変数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
次に、上記ステップ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
上記ステップ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
その後、画像符号化データ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
これにより、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
次に、上記ステップ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),
そして最後にステップS805では、情報606が関連付けられたfragment tableと、上記新符号化データ(図6において603)とをそれぞれBOX(新BOX)に格納し、画像符号化データ600、新画像符号化データ603を格納しているファイルに、新BOXを書き込む(アペンドする)処理を行う。
Finally, in step S805, the fragment table associated with the
これにより、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
次に、上記ステップ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
以上のチェック処理の結果、ステップS501で入力された復号解像度レベルが、元の画像符号化データにおける解像度レベル0を意味するのであれば処理をステップS809に進め、通常通り元の画像符号化データのLLサブバンドを復号する、と決定する。
As a result of the above check processing, if the decoding resolution level input in step S501 means the
一方、新符号化データにおける解像度レベル0を意味するのであれば、処理をステップS807に進める。ステップS807では、「256画素×256画素が最小画像サイズ」を示す情報606を検索し、ステップS808ではこの情報606と関連付けられているfragment tableを読み出し、このfragment tableを参照して復号する、と決定する。
On the other hand, if it means the
従って、図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,
1701は、元の画像符号化データを保持するBOXである。1702は、新符号化データを保持するためのBOXである。1703は、Associationの情報を入れるBOXである。この形式でこれまで説明してきた各データを格納、追加することで、一般的なJPEG2000のデコーダでデコード処理を行うことができる。
以上の説明により、本実施形態によれば、元々の画像符号化データ内にある任意の解像度のデータを新たな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
[第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.
本実施形態でも、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
ここで、ハードディスク206に保存している画像符号化データ1400を復号する要求が発生した場合に、クライアントコンピュータ102が行う本実施形態に係る処理のフローチャートについては基本的には図5に示したものと同様であるが、ステップS503〜S505における処理が若干異なる。以下では、本実施形態で行うステップS503〜S505における処理について説明する。
Here, when a request to decode the encoded
図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
次に、ステップ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
その後、画像符号化データ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
図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
また上述の通り、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
その後、画像符号化データ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
そして、新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
以上の説明により、本実施形態によれば以下の点を解消することができる。即ち、アプリケーションによっては、階層符号データ内に格納されている最低解像度の画像データより小さな画像データが必要になる場合がある。この時、最低解像度の画像データをデコードした後、単純な縮小処理によって目的とする画像サイズの画像データを得るのではなく、階層符号化により縮小処理および符号化を行い、新しい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
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
図9は、クライアントコンピュータ102がサーバ101から所望の符号化データを取得するために、互いの間で行われるやり取りを説明する図である。クライアントコンピュータ102側では所望の画像のタイル番号、resolution level、layer、component、position番号を指定し、その後、指定した符号化データの要求900をサーバ101に送信する。
FIG. 9 is a diagram for explaining an exchange performed between the
サーバ101はこの要求900を受信すると、画像符号化データ903のコードストリームを解析し、要求900によって指定されたタイル番号、resolution level、layer、component、position番号に相当するpacketデータ911を抜き出し、クライアントコンピュータ102に送信する。このpacketデータ911は910に示す如く、要求900によって指定されたタイル番号、resolution level、layer、component、position番号に相当するものである。
Upon receiving this
次に、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,
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 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
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
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
The third parameter is an offset
ここで、クライアントコンピュータ102からサーバ101に対して以下のようなリクエストが発行されたとする。
Here, it is assumed that the following request is issued from the
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
先ずステップ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
次に、ステップS1202では、ステップS1201でクライアントコンピュータ102から受信したリクエストの文字列を解析する。これにより、要求されているファイル名、返送データの形式、返信する画像データのサイズなどの条件を取得することができる。即ち、本実施形態の場合には、”d.jp2”というファイル名の画像ファイルを、画像全体が256画素×256画素のサイズに収まるサイズになるように要求しており、更にその返送形式は、JPIPのprecinct data-binである。
In step S1202, the request character string received from the
次に、ステップ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
図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
そしてステップ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
次に、ステップ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
ここで、上記ステップ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
以上説明したように、元々サーバ101にはLLサブバンドが64画素×64画素のサイズの画像の符号化データが格納されている場合でも、クライアントコンピュータ102からの要求が256画素×256画素のサイズの画像の符号化データから始まる要求の場合には、あたかもLLサブバンドが256画素×256画素のサイズの画像の符号化データであるかのように返送データを返すため、クライアントコンピュータ102側のアプリケーション、特にデコーダにおいて、クライアントコンピュータ102のアプリケーションが使用しない画像サイズのデコード、具体的には64画素×64画素のサイズ、128画素×128画素のサイズの画像データをデコードすることなく、256画素×256画素のサイズの画像データを直接デコードできるため、高速にデコードを行なうことができる。
As described above, even when the
さらには、サーバ101から送られる符号化データの量においても、3階層分(64画素×64画素のサイズ、128画素×128画素のサイズ、256画素×256画素のサイズ)の符号化データを送るよりは、1つのLLサブバンドの符号化データを返送した方が、データ量的にも少なくて済み、ネットワーク上でのトラフィックを下げることができる。従って、システム全体におけるスループットを向上させることができる。
Furthermore, also in the amount of encoded data sent from the
ここで、以上の各実施形態によれば、以下のような効果が期待できる。 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.
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.
前記復号解像度レベルを取得する工程と、
前記符号化データにおいて最も低い解像度レベルの画像を復号する復号工程と、
前記復号解像度レベルの画像サイズから前記最も低い解像度レベルの画像サイズまでの間の画像サイズの画像が再現可能なように、前記復号工程で復号した画像を符号化する符号化工程と、
前記最も低い解像度レベルの画像の代わりに、前記符号化工程で符号化された画像を用いる為に参照する参照情報を作成する作成工程と、
前記符号化工程で符号化された画像、及び前記参照情報を、前記符号化データと共に管理する管理工程と
を備えることを特徴とする画像処理方法。 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.
前記復号解像度レベルを取得する手段と、
前記符号化データを用いて、前記復号解像度レベルで画像を復号する復号手段と、
前記復号手段によって復号された画像を符号化する符号化手段と、
前記符号化データのうち前記復号解像度レベルで画像を復号する為に必要な部分の代わりに、前記符号化手段によって符号化された画像を用いる為に参照する参照情報を作成する作成手段と、
前記符号化手段によって符号化された画像、及び前記参照情報を、前記符号化データと共に管理する管理手段と
を備えることを特徴とする画像処理装置。 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.
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010152027A (en) * | 2008-12-25 | 2010-07-08 | Hitachi Ltd | Image display apparatus |
Citations (4)
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 |
-
2005
- 2005-11-15 JP JP2005330649A patent/JP2007142581A/en active Pending
Patent Citations (4)
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)
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 |