JP2008263589A - Encoding device, code conversion device, code expansion device, encoding method, code conversion method, and code expansion method - Google Patents

Encoding device, code conversion device, code expansion device, encoding method, code conversion method, and code expansion method Download PDF

Info

Publication number
JP2008263589A
JP2008263589A JP2008043464A JP2008043464A JP2008263589A JP 2008263589 A JP2008263589 A JP 2008263589A JP 2008043464 A JP2008043464 A JP 2008043464A JP 2008043464 A JP2008043464 A JP 2008043464A JP 2008263589 A JP2008263589 A JP 2008263589A
Authority
JP
Japan
Prior art keywords
data
code
encoding
code stream
conversion
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.)
Granted
Application number
JP2008043464A
Other languages
Japanese (ja)
Other versions
JP5081663B2 (en
Inventor
Taku Kodama
児玉  卓
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2008043464A priority Critical patent/JP5081663B2/en
Priority to US12/047,839 priority patent/US8135223B2/en
Publication of JP2008263589A publication Critical patent/JP2008263589A/en
Application granted granted Critical
Publication of JP5081663B2 publication Critical patent/JP5081663B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide an encoding device and an encoding method that can prevent a memory consumption and a processing speed from decreasing while accessing data in the order of resolution by arranging codes in an order different from that of a conventional one. <P>SOLUTION: The encoding device generates a code stream by encoding input data and includes a dividing unit 31 that divides the input data into at least one rectangular area, a conversion unit 33 that converts data of the rectangular area divided by the dividing unit 31 into conversion data as specified, an ordering unit 35 that adds the priority order to the conversion data, an encoding unit 37 that rearranges the conversion data based on the priority order added by the ordering unit 35 and encodes the conversion data into the code stream, and marker coupling units 39a to 39d that couple a marker that can identify the priority order to the header part of each conversion data in the code stream generated by the encoding unit 37. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

この発明は、画像を符号化し圧縮データストリームを生成する符号化装置、及び符号化方法に関する。特に、符号データの整列順序を従来の方式と異ならせることで、解像度順のアクセスを可能としながら使用するメモリ量や処理速度の低下を防ぐことができる符号化装置、及び符号化方法に関するものである。   The present invention relates to an encoding apparatus and an encoding method for encoding an image and generating a compressed data stream. In particular, the present invention relates to an encoding apparatus and an encoding method that can prevent a decrease in the amount of memory used and the processing speed while enabling access in the order of resolution by making the order of arrangement of code data different from the conventional method. is there.

近年、画像を矩形領域に分割し、この矩形領域を独立に圧縮する方式が提案されている。この方式における各矩形領域には、色変換、解像度変換、領域分割、及びビットプレーン変換が施される。そして、それらの処理がなされたデータに対して算術符号化が施されて符号データが生成され、この符号データを整列して圧縮符号が生成される。
符号データを整列する順序はプログレッションオーダーと呼ばれ、5種類用意されている。これらプログレッションオーダーの中から、1つが選択されて符号データが整列される。ユーザが低解像度から画像を表示したい場合は、RPCLというプログレッションオーダーで画像を圧縮すると、表示装置にて解像度順の表示が容易となる。
さらに、画像が複数の矩形領域に分割されている場合は、全ての矩形領域の符号データを解像度順に並べ、画像が複数の矩形領域に分割された符号データであっても低解像度からの表示が可能となっている。
なお、先行技術として特許文献1は、クライアント端末装置に過去に送信したデータに関する情報を履歴として記録する。そして、所望の画像を得るために必要なタイル中の論理単位のデータの送信要求をクライアント端末装置から受信した場合、上記履歴を参照することで、クライアント端末装置で利用しているプログレッションオーダーの種類を判別する。この判別結果に従ってクライアント端末装置に送信する各タイル中の論理単位のデータの送信順を決定し、決定した送信順に基づいてタイル中の論理単位のデータをクライアント端末装置に送信する技術が開示されている。
特開2005−12685公報
In recent years, a method of dividing an image into rectangular areas and independently compressing the rectangular areas has been proposed. Each rectangular area in this method is subjected to color conversion, resolution conversion, area division, and bit plane conversion. Then, arithmetic processing is performed on the data subjected to these processes to generate code data, and the code data is aligned to generate a compression code.
The order of arranging the code data is called a progression order, and five types are prepared. One of these progression orders is selected and the code data is aligned. When the user wants to display an image from a low resolution, if the image is compressed with a progression order called RPCL, the display device can easily display the images in the order of resolution.
Furthermore, if the image is divided into a plurality of rectangular areas, the code data of all the rectangular areas are arranged in the order of resolution, and even if the image is code data divided into a plurality of rectangular areas, display from a low resolution is possible. It is possible.
As a prior art, Patent Document 1 records information on data transmitted to the client terminal device in the past as a history. When a transmission request for data in a logical unit in a tile necessary for obtaining a desired image is received from the client terminal device, the type of progression order used in the client terminal device by referring to the above history Is determined. A technique for determining the transmission order of logical unit data in each tile to be transmitted to the client terminal device according to the determination result, and transmitting the logical unit data in the tile to the client terminal device based on the determined transmission order is disclosed. Yes.
Japanese Patent Application Laid-Open No. 2005-12585

しかしながら、解像度順に符号データを生成する場合には、全ての矩形領域の符号データを解像度順に並べるため全ての矩形領域の符号データを同時に処理する必要がある。この処理によって処理時間や符号データが使用するメモリ量などが大量に必要となってしまう。その結果、前述の理由によって処理速度の低下や機器の動作不安定をもたらすなどの問題があった。
また、ハードウェアで符号データを形成する場合も、同様の理由から非常にコストがかかってしまう問題があった。
本発明は、上記従来の問題点に鑑みてなされたもので、符号データの整列順序を従来の方式とは異ならせることで、解像度順のアクセスを可能としながら使用するメモリ量や処理速度の低下を防ぐことができる符号化装置、符号化方法、及びコンピュータープログラム、並びに記録媒体を提供することを目的とする。
However, when generating code data in the order of resolution, it is necessary to simultaneously process the code data of all rectangular areas in order to arrange the code data of all rectangular areas in the order of resolution. This process requires a large amount of processing time and the amount of memory used by the code data. As a result, there have been problems such as a decrease in processing speed and unstable operation of the device due to the reasons described above.
Also, when code data is formed by hardware, there is a problem that the cost is very high for the same reason.
The present invention has been made in view of the above-described conventional problems. By making the code data alignment order different from that of the conventional method, the amount of memory used and the processing speed are reduced while enabling access in the order of resolution. It is an object of the present invention to provide an encoding device, an encoding method, a computer program, and a recording medium that can prevent the above.

上述の目的を達成するために、請求項1に記載の発明は、入力データを符号化し、符号ストリームを生成する符号化装置であって、前記入力データを少なくとも1つの矩形領域に分割する分割手段と、前記分割手段で分割された矩形領域に対し所定の変換を行い、変換データに変換する変換手段と、前記変換データに優先順序を付する順序付け手段と、前記順序付け手段で付された前記優先順序に基づいて前記変換データを整列するとともに、符号化処理を施すことで符号ストリームを生成する符号化処理手段と、前記符号化処理手段で生成された符号ストリームにおける各変換データの先頭部に、前記優先順序が識別可能なマーカーを結合するマーカー結合手段と、を有する符号化装置を特徴とする。
また、請求項2に記載の発明は、前記変換データは、周波数帯域データ、色成分データ、ビットプレーンの集合データ、小領域データのいずれか1である請求項1に記載の符号化装置を特徴とする。
In order to achieve the above-mentioned object, the invention according to claim 1 is an encoding device for encoding input data and generating a code stream, and dividing means for dividing the input data into at least one rectangular area A conversion unit that performs predetermined conversion on the rectangular area divided by the division unit and converts the rectangular area into conversion data, an ordering unit that assigns a priority order to the conversion data, and the priority assigned by the ordering unit Arranging the converted data based on the order, encoding processing means for generating a code stream by performing an encoding process, and at the head of each conversion data in the code stream generated by the encoding processing means, And a marker combining unit that combines markers whose priority order can be identified.
The invention according to claim 2 is characterized in that the conversion data is any one of frequency band data, color component data, bit plane aggregate data, and small area data. And

また、請求項3に記載の発明は、画像データを矩形領域に分割し、各矩形領域を符号化処理して生成した符号ストリームを変換する符号変換装置であって、前記符号ストリームの少なくとも1つの領域データを読み込み、当該領域データの境界部を検出する境界検出手段と、前記境界検出手段で検出された少なくとも1つの領域データの先頭部に、当該領域データを識別可能なマーカーを結合するマーカー結合手段と、を有することを特徴とする符号変換装置。
また、請求項4に記載の発明は、画像データを矩形領域に分割し、各矩形領域を符号化処理して生成した符号ストリームを変換する符号変換装置であって、前記符号ストリームから矩形領域の領域データを識別する識別手段と、前記識別手段で識別された前記領域データの整列順序を設定する設定手段と、前記設定手段で設定された整列順序に基づき、符号データを並べ替える並替手段と、を有し、前記矩形領域に関する符号データを結合して配置した符号ストリームに変換する符号変換装置を特徴とする。
According to a third aspect of the present invention, there is provided a code conversion device for converting a code stream generated by dividing image data into rectangular areas and encoding each rectangular area, wherein at least one of the code streams is converted. Boundary detection means for reading area data and detecting a boundary portion of the area data, and marker combination for combining a marker capable of identifying the area data at the head of at least one area data detected by the boundary detection means And a code conversion device.
According to a fourth aspect of the present invention, there is provided a code conversion device for converting a code stream generated by dividing image data into rectangular areas and encoding each rectangular area. Identification means for identifying area data; setting means for setting the alignment order of the area data identified by the identification means; and reordering means for rearranging code data based on the alignment order set by the setting means And a code conversion device that converts code data relating to the rectangular area into a code stream that is combined and arranged.

また、請求項5に記載の発明は、前記領域データは、周波数帯域データ、色成分データ、ビットプレーンの集合データ、小領域データのいずれか1である請求項3又は4に記載の符号変換装置を特徴とする。
また、請求項6に記載の発明は、画像データを矩形領域に分割し、データの境界が識別可能な識別子が付与された符号ストリームを伸張する符号伸張装置であって、前記符号ストリームから矩形領域の領域データを識別する識別手段と、前記識別手段で識別された領域データの整列順序を設定する設定手段と、前記設定手段で設定された整列順序に基づき、前記符号データを並べ替える並替手段と、前記符号ストリームを伸張する伸張手段と、
を有する符号伸張装置を特徴とする。
According to a fifth aspect of the present invention, in the code conversion device according to the third or fourth aspect, the area data is any one of frequency band data, color component data, bit plane aggregate data, and small area data. It is characterized by.
According to a sixth aspect of the present invention, there is provided a code expansion device for dividing image data into rectangular areas and expanding a code stream to which an identifier that can identify a boundary of the data is added, wherein the rectangular area is extracted from the code stream. Identifying means for identifying the area data; setting means for setting the alignment order of the area data identified by the identifying means; and reordering means for rearranging the code data based on the alignment order set by the setting means And decompression means for decompressing the code stream;
A code expansion apparatus having the following features.

また、請求項7に記載の発明は、前記領域データは、周波数帯域データ、色成分データ、ビットプレーンの集合データ、小領域データのいずれか1である請求項6に記載の符号伸張装置を特徴とする。
また、請求項8に記載の発明は、入力データを符号化し、符号ストリームを生成する符号化方法であって、前記入力データを少なくとも1つの矩形領域に分割する分割工程と、前記分割工程で分割された矩形領域に対し所定の変換を行い、変換データに変換する変換工程と、前記変換データに優先順序を付する順序付け工程と、前記順序付け工程で付された前記優先順序に基づいて前記変換データを整列するとともに、符号化処理を施すことで符号ストリームを生成する符号化工程と、前記符号化工程で生成された符号ストリームにおける各変換データの先頭部に、前記優先順序が識別可能なマーカーを結合するマーカー結合工程と、を有する符号化方法を特徴とする。
The invention according to claim 7 is characterized in that the region data is any one of frequency band data, color component data, bit plane set data, and small region data. And
The invention according to claim 8 is an encoding method for encoding input data and generating a code stream, wherein the input data is divided into at least one rectangular area, and the division is performed in the division step. A conversion step of performing predetermined conversion on the rectangular area thus converted to conversion data, an ordering step of assigning a priority order to the conversion data, and the conversion data based on the priority order assigned in the ordering step And a marker capable of identifying the priority order at the head of each conversion data in the code stream generated in the encoding step, and generating a code stream by performing an encoding process. And a marker combining step for combining.

また、請求項9に記載の発明は、前記変換データは、周波数帯域データ、色成分データ、ビットプレーンの集合データ、小領域データのいずれか1である請求項8に記載の符号化方法を特徴とする。
また、請求項10に記載の発明は、画像データを矩形領域に分割し、各矩形領域を符号化処理して生成した符号ストリームを変換する符号変換方法であって、前記符号ストリームの少なくとも1つの領域データを読み込み、当該領域データの境界部を検出する境界検出工程と、前記境界検出工程で検出された少なくとも1つの領域データの先頭部に、当該領域データを識別可能なマーカーを結合するマーカー結合工程と、を有する符号変換方法を特徴とする。
The invention according to claim 9 is the encoding method according to claim 8, wherein the conversion data is any one of frequency band data, color component data, bit plane set data, and small area data. And
The invention according to claim 10 is a code conversion method for converting a code stream generated by dividing image data into rectangular areas and encoding each rectangular area, and at least one of the code streams. A boundary detection step for reading region data and detecting a boundary portion of the region data, and a marker combination for combining a marker capable of identifying the region data at the head of at least one region data detected in the boundary detection step And a code conversion method including the steps.

また、請求項11に記載の発明は、画像データを矩形領域に分割し、各矩形領域を符号化処理して生成した符号ストリームを変換する符号変換方法であって、前記符号ストリームから矩形領域のデータを識別する識別工程と、前記識別工程で識別されたデータの整列順序を設定する設定工程と、前記設定工程で設定された整列順序に基づき、符号データを並べ替える並替工程と、を有し、前記矩形領域に関する符号データを結合して配置した符号ストリームに変換する符号変換方法を特徴とする。
また、請求項12に記載の発明は、前記領域データは、周波数帯域データ、色成分データ、ビットプレーンの集合データ、小領域データのいずれか1である請求項10又は11に記載の符号変換方法を特徴とする。
The invention according to claim 11 is a code conversion method for converting a code stream generated by dividing image data into rectangular areas and encoding each rectangular area, wherein An identification step for identifying data, a setting step for setting the alignment order of the data identified in the identification step, and a rearrangement step for rearranging the code data based on the alignment order set in the setting step. And a code conversion method for converting the code data related to the rectangular area into a code stream arranged in combination.
The invention according to claim 12 is the code conversion method according to claim 10 or 11, wherein the area data is any one of frequency band data, color component data, bit plane aggregate data, and small area data. It is characterized by.

また、請求項13に記載の発明は、画像データを矩形領域に分割し、領域データの境界が識別可能な識別子が付与された符号ストリームを伸張する符号伸張方法であって、前記符号ストリームから矩形領域のデータを識別する識別工程と、前記識別工程で識別されたデータの整列順序を設定する設定工程と、前記設定工程で設定された整列順序に基づき、符号データを並べ替える並替工程と、前記符号ストリームを伸張する伸張工程と、を有する符号伸張方法を特徴とする。
また、請求項14に記載の発明は、前記領域データは、周波数帯域データ、色成分データ、ビットプレーンの集合データ、小領域データのいずれか1である請求項13に記載の符号伸張方法を特徴とする。
According to a thirteenth aspect of the present invention, there is provided a code decompression method for dividing image data into rectangular areas and decompressing a code stream to which an identifier capable of identifying the boundary of the area data is attached. An identification step for identifying data in the area; a setting step for setting the alignment order of the data identified in the identification step; a rearrangement step for rearranging the code data based on the alignment order set in the setting step; A code decompression method comprising: a decompressing step of decompressing the code stream.
The invention according to claim 14 is characterized in that the region data is any one of frequency band data, color component data, bit plane aggregate data, and small region data. And

本発明によれば、解像度、色成分、レイヤのいずれか1つの要素でアクセスが容易な符号ストリームを高速、かつ省メモリで生成することができる。
また、本発明によれば、タイル内の部分領域でアクセスの容易な、符号データが高速かつ、省メモリで生成できる。
また、本発明によれば、タイルパートに分割された符号データを高速、省メモリで、伸張可能である。
According to the present invention, a code stream that can be easily accessed with any one element of resolution, color components, and layers can be generated at high speed and in a memory-saving manner.
Further, according to the present invention, code data that is easy to access in a partial area in a tile can be generated at high speed and with a small amount of memory.
Further, according to the present invention, code data divided into tile parts can be decompressed at high speed and with a small amount of memory.

以下、図面を参照して本発明の実施形態を詳細に説明する。
本発明は、PC(Personal Computer)などの汎用コンピュータや、画像表示機能を有する情報端末、携帯電話などの情報処理機器の内蔵マイクロコンピュータにおいてプログラムで実現されるのが、1つの典型的な実施態様である。
このような実施態様について、図1に基づいて説明する。図1は、本発明によるコンピュータの一実施形態のブロック図である。
図1に示すように、このコンピュータは、CPU(Central Processing Unit)1、第1の記憶装置2、ディスプレイ装置3、ハードディスク等の第2の記憶装置4、キーボードやポインティングデバイスなどの入力装置5、通信インターフェース(I/F)6、入出力インターフェース(I/F)7、各種記録媒体(磁気ディスク、光ディスク、光磁気ディスク、半導体記憶素子など)の読み書きのための媒体ドライブ装置8で構成される。それらがシステムバス9で相互に接続された構成となっている。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
The present invention is realized by a program in a general-purpose computer such as a PC (Personal Computer), an information terminal having an image display function, or a built-in microcomputer of an information processing device such as a mobile phone. It is.
Such an embodiment will be described with reference to FIG. FIG. 1 is a block diagram of one embodiment of a computer according to the present invention.
As shown in FIG. 1, the computer includes a CPU (Central Processing Unit) 1, a first storage device 2, a display device 3, a second storage device 4 such as a hard disk, an input device 5 such as a keyboard and a pointing device, A communication interface (I / F) 6, an input / output interface (I / F) 7, and a medium drive device 8 for reading and writing various recording media (magnetic disk, optical disk, magneto-optical disk, semiconductor storage element, etc.) . They are configured to be connected to each other via a system bus 9.

そして、本発明を実施するためのプログラム10(以下、画像処理プログラムと称する)が記録された記録媒体を媒体ドライブ装置8によって読み出し、画像処理プログラム10が第2の記憶装置7に格納される。または、ネットワークを介して通信インターフェース11より取り込まれて第2の記憶装置4に格納される。
画像処理プログラム10は、第2の記憶装置4から第1の記憶装置2に読み出される。CPU1により画像処理プログラム10が実行されることでコンピュータ上で本発明による画像処理が実現される。
Then, a recording medium on which a program 10 for implementing the present invention (hereinafter referred to as an image processing program) is recorded is read by the medium drive device 8, and the image processing program 10 is stored in the second storage device 7. Alternatively, it is fetched from the communication interface 11 via the network and stored in the second storage device 4.
The image processing program 10 is read from the second storage device 4 to the first storage device 2. By executing the image processing program 10 by the CPU 1, the image processing according to the present invention is realized on the computer.

ここで、本発明の符号化装置で処理対象となる静止画像又は動画像の符号データは、例えば、ネットワーク上のサーバなどに格納されている。このサーバから通信インターフェース6を介して符号データが取り込まれる。また、入出力インターフェース7に接続されたデジタルカメラ等の撮像装置から取り込まれる。第2の記憶装置4から符号データが取り込まれる形態もある。
1つの典型的な態様によれば、画像処理プログラム10は、ビューア、ブラウザなどと呼ばれる画像を閲覧するための他のプログラム12(以下、ビューア/ブラウザと称する)と連携して動作する形態をとる。
Here, code data of a still image or a moving image to be processed by the encoding device of the present invention is stored in, for example, a server on a network. Code data is taken from this server via the communication interface 6. Further, the image data is taken in from an imaging device such as a digital camera connected to the input / output interface 7. There is also a form in which code data is taken from the second storage device 4.
According to one typical aspect, the image processing program 10 takes a form that operates in cooperation with another program 12 (hereinafter referred to as a viewer / browser) for browsing an image called a viewer or a browser. .

本発明は、画像を矩形領域に分割し、この矩形領域毎に独立に符号化処理を行う。従来では、矩形領域に分割された符号データを解像度順に並べる場合に、タイルパートという機能を用いる。このタイルパート機能を用いると、全ての矩形領域の符号データを解像度順に並べることができる。しかしながら、その符号データは、ソフトウェア及びハードウェアともに圧縮伸張処理に、大量のメモリが必要であり、処理時間を非常に要するものであった。
そこで、本発明の実施形態の方式では、全ての矩形領域の符号データを並べ替えず、矩形領域単位で処理を行い、解像度の切れ目にタイルパートの識別子を挿入するようにしている。
それぞれの矩形領域は、図2に示すように、圧縮時には色空間変換、ウェーブレット変換、量子化、エントロピー符号化、タグ処理が行われて符号データが生成される。
In the present invention, an image is divided into rectangular areas, and encoding processing is performed independently for each rectangular area. Conventionally, a function called a tile part is used when arranging code data divided into rectangular areas in the order of resolution. If this tile part function is used, the code data of all the rectangular areas can be arranged in the order of resolution. However, the code data requires a large amount of memory for the compression / decompression processing for both software and hardware, and the processing time is very long.
Therefore, in the system according to the embodiment of the present invention, the code data of all the rectangular areas are not rearranged, the process is performed in units of rectangular areas, and the tile part identifier is inserted at the resolution break.
As shown in FIG. 2, each rectangular area is subjected to color space conversion, wavelet conversion, quantization, entropy encoding, and tag processing during compression to generate code data.

入力された画像データは、分割部301にて矩形領域に分割される。なお、矩形領域の分割は、任意であり、画像を矩形領域に分割しない場合は、矩形領域の数を1として扱う。次に分割部301で分割された画像データは色変換処理部302にて、色変換処理がなされる。例えば、以下の式1によって可逆の色変換処理が行われる。

Figure 2008263589
U=R−G
V=B−G
・・・・式1
但し:
Figure 2008263589
は、xを超えない最大の整数を表す。
なお、上記の色変換に先立ち、画像に対してDCレベルシフトが行われる。DCレベルシフトは、例えば入力される画像がRGB信号の8bitである場合は、式2にて表される。
Figure 2008263589
・・・・式2
色変換処理後の信号は、DWT処理部303において各々のコンポーネント毎にDWT(離散ウェーブレット変換)が行われ、ウェーブレット係数が生成される。DWTは2次元にて行われるが、通常は、リフティング演算と呼ばれる演算方法により1次元フィルタ演算のコンボリューションにて実施される。1次元の変換式を式3に示す。
Figure 2008263589
・・・・式3
但し、L(k)は低周波成分、H(k)は高周波成分、x(k)は画素値、kは座標を表す。
なお、DWTは、ダウンサンプリングを伴うため、上記L(k)、H(k)は入力画像と比較して1/2の解像度となる。 The input image data is divided into rectangular areas by the dividing unit 301. The division of the rectangular area is arbitrary, and when the image is not divided into rectangular areas, the number of rectangular areas is handled as one. Next, the color conversion processing unit 302 performs color conversion processing on the image data divided by the dividing unit 301. For example, reversible color conversion processing is performed according to the following Equation 1.

Figure 2008263589
U = RG
V = B-G
.... Formula 1
However:
Figure 2008263589
Represents the largest integer not exceeding x.
Prior to the color conversion, a DC level shift is performed on the image. The DC level shift is expressed by Equation 2 when the input image is 8 bits of RGB signals, for example.
Figure 2008263589
.... Formula 2
The signal after the color conversion process is subjected to DWT (discrete wavelet transform) for each component in the DWT processing unit 303 to generate wavelet coefficients. Although DWT is performed in two dimensions, it is usually performed in a convolution of a one-dimensional filter operation by an operation method called lifting operation. A one-dimensional conversion formula is shown in Formula 3.
Figure 2008263589
.... Formula 3
However, L (k) represents a low frequency component, H (k) represents a high frequency component, x (k) represents a pixel value, and k represents a coordinate.
Since DWT involves downsampling, the above L (k) and H (k) have half the resolution compared to the input image.

図3は、オクターブ分割されたウェーブレット係数を表す図である。
DWTは、1デコンポジション(分解)レベル毎にLL、HL、LH、HHの4つのサブバンドと呼ばれる方向成分が生成される。そして、サブバンドLLに対してDWTを再帰的に行うことでより低解像度へとデコンポジションレベルをあげていく。解像度の最も高い1デコンポジションレベルの係数を1HL、1LH、1HHと表し、以下2HL、2LH・・・nHHと表す。なお、同図は、3デコンポジションレベルに分割した例である。一方解像度レベルは、デコンポジションレベルとは逆方向に解像度の低い係数から0、1、2、3というように呼ばれる。
各デコンポジションレベルにおけるサブバンド内は、プレシンクトと呼ばれる領域に分割して符号の集合を形成することが可能となっている。また、符号化はコードブロックとよばれる所定のブロック単位にて実施されることになる。
FIG. 3 is a diagram illustrating wavelet coefficients that have been divided into octaves.
In the DWT, directional components called four subbands of LL, HL, LH, and HH are generated for each decomposition (decomposition) level. Then, by performing DWT recursively on the subband LL, the composition level is increased to a lower resolution. The coefficient of one decomposition level with the highest resolution is represented as 1HL, 1LH, 1HH, and hereinafter represented as 2HL, 2LH... NHH. The figure is an example of division into three decomposition levels. On the other hand, the resolution level is referred to as 0, 1, 2, 3 because of the low resolution coefficient in the opposite direction to the decomposition level.
A subband in each decomposition level can be divided into areas called precincts to form a set of codes. Encoding is performed in predetermined block units called code blocks.

図4は、タイル内ウェーブレット係数におけるタイル、プレシンクト及びコードブロックの関係を示す図である。
DWT処理部303から出力されたウェーブレット係数は、図2の量子化処理部304によってスカラー量子化が行われるが、可逆変換を実施する場合にはスカラー量子化は行わないか“1”により量子化する。また、後段のポスト量子化においても、量子化とほぼ同様な効果が得られる。なお、スカラー量子化はタイル単位にパラメータを変更可能となっている。
図2において、量子化処理部304から出力された量子化データは、エントロピー符号化部305にてエントロピー符号化が行われる。JPEG2000におけるエントロピー符号化方式は、サブバンド内をコードブロックと呼ばれる矩形領域に分割(但し、サブバンド領域のサイズがコードブロックサイズ以下の場合は分割しない)し、コードブロック単位で符号化される。
FIG. 4 is a diagram illustrating the relationship among tiles, precincts, and code blocks in the intra-tile wavelet coefficients.
The wavelet coefficients output from the DWT processing unit 303 are subjected to scalar quantization by the quantization processing unit 304 in FIG. 2, but when performing reversible transformation, the scalar quantization is not performed or is quantized by “1”. To do. Also, in post-quantization at the subsequent stage, the same effect as that of quantization can be obtained. In scalar quantization, parameters can be changed for each tile.
In FIG. 2, the entropy encoding unit 305 performs entropy encoding on the quantized data output from the quantization processing unit 304. In the entropy encoding method in JPEG2000, a subband is divided into rectangular areas called code blocks (however, when the size of the subband area is equal to or smaller than the code block size, it is not divided) and encoded in units of code blocks.

また、コードブロック内のデータは、図5に示されるようにビットプレーンに分解された後、ビットプレーンを変換係数の画質への影響度を表す状態に従って3つのパス(Significance propagationパス、Magnitude refinementパス、Clean upパス)に分割し、各々でMQコーダと呼ばれる算術符号化方式により符号化される。ビットプレーンはMSB側、符号化パスはSignificance propagation、Magnitude refinement、Clean upの順に重要度(画質への寄与度)が高くなっている。また、各パスの終端は、切り捨て点(トランケーションポイント)とも呼ばれ後段でのポスト量子化の符号の切り捨て可能な単位となっている。
エントロピー符号化された符号データを図2のポスト量子化部306にて必要に応じて符号を切り捨てる。なお、可逆の符号を出力する必要がある場合には、ポスト量子化は実行しない。JPEG2000は、符号化後に符号量を切り捨て可能なことによって、符号量の制御にフィードバックを必要としない構成(1パスの符号化)となっている
ポスト量子化後の符号データは、図2の符号ストリーム生成処理部307にて、所定のプログレッシブ順序(符号データの復号順序)に基づいて符号の並べ替えとヘッダの付加を行い当該タイル分の符号ストリームが完成する。
Further, after the data in the code block is decomposed into bit planes as shown in FIG. 5, the three bit paths (Significance propagation path, Magnitude refinement path) are represented according to the state representing the influence of the transform coefficient on the image quality. , Clean up path), and each is encoded by an arithmetic encoding method called MQ coder. The bit plane has an MSB side, and the encoding pass has an increasing importance (contribution to image quality) in the order of significance propagation, magnitude refinement, and cleanup. The end of each path is also called a truncation point, which is a unit that can be used for truncating a post-quantization code at a later stage.
The post-quantization unit 306 in FIG. 2 truncates the code of the entropy-encoded code as necessary. Note that when it is necessary to output a reversible code, post-quantization is not executed. JPEG2000 has a configuration that requires no feedback to control the code amount (1 pass encoding) because the code amount can be truncated after encoding. The code data after post-quantization is the code shown in FIG. The stream generation processing unit 307 rearranges codes and adds headers based on a predetermined progressive order (decoding order of code data) to complete a code stream for the tile.

図6は、JPEG2000におけるレイヤプログレッションによる符号ストリーム全体を表した図である。全体符号は、メインヘッダと画像を分割した複数のタイルで構成される。タイル符号は、タイルヘッダとタイル内符号をレイヤとよばれる符号単位(詳細は後述する)に区切った複数のレイヤにより構成されており、レイヤ0、レイヤ1・・・というように下位レイヤから順番に並んでいる。レイヤ符号の構成は、レイヤ用のタイルヘッダと複数のパケットにより構成されており、パケットはパケットヘッダと符号データから構成されている。
パケットは、符号データの最小単位であり、1つのタイルコンポーネント内の1つの解像度レベル(デコンポジションレベル)における1つのプレシンクト内の1つのレイヤの符号データから成っている。
FIG. 6 is a diagram showing the entire code stream by layer progression in JPEG2000. The whole code is composed of a main header and a plurality of tiles obtained by dividing an image. A tile code is composed of a plurality of layers in which a tile header and an intra-tile code are divided into code units called layers (details will be described later). Layer 0, layer 1,... Are lined up. The configuration of the layer code is composed of a layer tile header and a plurality of packets, and the packet is composed of a packet header and code data.
The packet is a minimum unit of code data, and is composed of code data of one layer in one precinct at one resolution level (decomposition level) in one tile component.

次に、JPEG2000におけるプログレッシブ順序について説明する。
JPEG2000では、画質(レイヤ(L))、解像度(R)、コンポーネント(C)、位置(プレシンクト(P))という4つの画像の要素の優先順位を変更することによって以下に示す5通りのプログレッションが定義されている。
・LRCPプログレッション
プレシンクト、コンポーネント、解像度レベル、レイヤの順序に復号されるため、レイヤのインデックスが進む毎に画像全面の画質が改善されることになり、画質のプログレッションが実現出来る。レイヤプログレッションとも呼ばれる。
・RLCPプログレッション
プレシンクト、コンポーネント、レイヤ、解像度レベルの順序に復号されるため、解像度のプログレッションが実現出来る。
・RPCLプログレッション
レイヤ、コンポーネント、プレシンクト、解像度レベルの順序に復号されるため、RLCP同様、解像度のプログレッションであるが、特定位置の優先度を高くすることが出来る。
・PCRLプログレッション
レイヤ、解像度レベル、コンポーネント、プレシンクトの順序に復号されるため、特定部分の復号が優先されるようになり空間位置のプログレッションが実現出来る。
・CPRLプログレッション
レイヤ、解像度レベル、プレシンクト、コンポーネントの順序に復号されるため、例えばカラー画像のプログレッシブ復号の際に最初にグレーの画像を再現するようなコンポーネントのプログレッションが実現出来る。
Next, the progressive order in JPEG2000 will be described.
In JPEG2000, by changing the priority order of the four image elements of image quality (layer (L)), resolution (R), component (C), and position (precinct (P)), the following five progressions are performed. Is defined.
LRCP progression Since decoding is performed in the order of precinct, component, resolution level, and layer, the image quality of the entire image is improved each time the layer index advances, and the progression of image quality can be realized. Also called layer progression.
-RLCP progression Since the decoding is performed in the order of precinct, component, layer, and resolution level, the progression of resolution can be realized.
RPCL progression Since decoding is performed in the order of layer, component, precinct, and resolution level, it is a progression of resolution as in RLCP, but the priority of a specific position can be increased.
-PCRL progression Since decoding is performed in the order of layer, resolution level, component, and precinct, decoding of a specific part is prioritized, and progression of spatial position can be realized.
CPRL Progression Since decoding is performed in the order of layer, resolution level, precinct, and component, for example, in the progressive decoding of a color image, it is possible to realize component progression that first reproduces a gray image.

図7(a)は、LRCPプログレッション(以下レイヤプログレッション)、図7(b)は、RLCPプログレッションまたはRPCLプログレッション(以下解像度プログレッション)のプログレッシブ順序を模式的に表した図である。
図7(a)、図7(b)とも横軸はデコンポジションレベル(数字が高いほど低解像度)、縦軸はレイヤ番号(数字が高いほど上位レイヤであり、下位レイヤに上位レイヤの符号を付加して復号することによってより高画質な再生が可能となる)である。図中、塗りつぶされた長方形の図形は、当該デコンポジションレベル、レイヤにおける符号を表し、その大きさは符号量の割合を模式的に表している。図中の点線の矢印は、符号順序を表している。
FIG. 7A is a diagram schematically showing the progressive order of LRCP progression (hereinafter referred to as layer progression), and FIG. 7B is a diagram illustrating the progressive order of RLCP progression or RPCL progression (hereinafter referred to as resolution progression).
7 (a) and 7 (b), the horizontal axis represents the decomposition level (the higher the number, the lower the resolution), and the vertical axis represents the layer number (the higher the number, the higher layer, and the upper layer code in the lower layer) By adding and decoding, reproduction with higher image quality becomes possible. In the figure, a filled rectangular figure represents a code in the decomposition level and layer, and its size schematically represents the ratio of the code amount. The dotted arrows in the figure indicate the code order.

図7(a)は、レイヤプログレッションに復号する符号順序を表しており、同一レイヤ番号の全ての解像度の復号を行って次段の上位レイヤの復号を行う。ウェーブレット係数レベルでみれば、係数の上位bitから復号を行うことになり、徐々に画質が向上するプログレッションが実現可能となっている。図7(b)は、解像度プログレッションに復号する符号順序を表しており、同一デコンポジション(解像度)レベルの全てのレイヤの復号を行って次段のデコンポジション(解像度)レベルの復号を行うことになり、徐々に解像度が向上するプログレッションが実現可能となっている。
上記の各処理を経て、解像度、色成分、レイヤ、プリシンクトで分類される複数の画像の符号データ(パケット)が生成される。そして、不図示のタグ処理部にて、図8に示すように特定のプログレッションオーダー順に符号データが並べ替えられる。
FIG. 7A shows a code order for decoding in layer progression, and decoding of all resolutions of the same layer number is performed to decode the upper layer of the next stage. If it sees at a wavelet coefficient level, it will decode from the high-order bit of a coefficient, and the progression which improves an image quality gradually is realizable. FIG. 7B shows a code order for decoding in resolution progression, in which all layers at the same decomposition (resolution) level are decoded and decoding at the next decomposition (resolution) level is performed. Thus, it is possible to realize a progression in which the resolution is gradually improved.
Through the above processes, code data (packets) of a plurality of images classified by resolution, color component, layer, and precinct are generated. Then, in the tag processing unit (not shown), the code data is rearranged in a specific progression order as shown in FIG.

図8は、1つの矩形領域あたり、4解像度(R0〜R3)、3色成分(C0〜C2)、1プレシンクト、1レイヤに分類され、12個のパケットが生成された場合のRPCLプログレッションオーダーで並べ替えられた場合の符号データを示す説明図である。図8におけるMHはメインヘッダであり、SOTはマーカーであり矩形領域の符号データの先頭に付加される。
図8に示した順序で符号データを並べ替えた場合、それぞれの矩形領域は、解像度順に符号データが並べ替えられるため、解像度が順次向上するように伸長処理後の画像を表示することができる。しかし、JPEG2000では、画像が矩形領域に分割されている場合、タイルパート機能が用いられてしまう。
このタイルパート機能を用いた場合、全ての矩形領域にわたって低解像度から解像度が順次向上するように符号データの伸張と表示が可能となる。しかし、このタイルパート機能は、全ての矩形領域の符号データに対してアクセスする必要があり、使用メモリ量が非常に増えてしまうこと、全てにアクセスすることによる処理時間の増加が問題となる。なお、タイルパート機能を用いると、図9に示すような符号データが生成される。図9では、解像度ごとのタイルパートの例を示している。
FIG. 8 shows an RPCL progression order when 12 packets are generated for each rectangular area, classified into 4 resolutions (R0 to R3), 3 color components (C0 to C2), 1 precinct, and 1 layer. It is explanatory drawing which shows the code data at the time of rearrangement. In FIG. 8, MH is a main header, and SOT is a marker, which is added to the head of code data in a rectangular area.
When the code data is rearranged in the order shown in FIG. 8, since the code data is rearranged in the order of resolution in each rectangular area, the image after the decompression process can be displayed so that the resolution is sequentially improved. However, in JPEG2000, when an image is divided into rectangular areas, the tile part function is used.
When this tile part function is used, it is possible to expand and display the code data so that the resolution is sequentially improved from the low resolution over the entire rectangular area. However, this tile part function requires access to the code data of all the rectangular areas, and the amount of used memory is greatly increased, and an increase in processing time due to accessing all becomes a problem. When the tile part function is used, code data as shown in FIG. 9 is generated. FIG. 9 shows an example of tile parts for each resolution.

ところで、図1のビューア/ブラウザ11は、ディスプレイ装置3の画面上に画像表示ウィンドウを開き、そこに画像を表示させる。
通常、表示させる画像の指定(ファイル名やURLの指定)のほか、入力装置5に含まれるマウスなどのポインティングデバイスの操作により、画像表示ウィンドウの縦横サイズの変更、画像の表示倍率の変更、画像表示ウィンドウより大きな画像のスクロール、特定領域(位置)の指定などが可能である。画像表示ウィンドウの縦横サイズ、画像表示倍率、画像の領域の位置などの条件は画像処理プログラム10に通知される。また、コントロール領域に表示されたボタンやスライドバーなどにより、動画又は静止画に関する様々な条件の指定を行うことができビューア/ブラウザ11は、解像度、画質、色成分、位置、重要領域、フレームレート、符号量、処理時間などに関わる条件を画像処理プログラム10に通知する。
画像処理プログラム10は、その復号処理能力や画像表示ウィンドウのサイズ等々の条件に応じて、かつ、ユーザの意向にそった形で静止画又は動画を表示できるように、静止画又は動画の符号化データの符号を選択的に復号して画像データを再生し、この画像データをビューア/ブラウザ11が画像表示ウィンドウに表示させる。このように、符号化データの符号の選択的な復号処理は画像処理プログラム10で行われるが、ディスプレイ装置5の画面への画像表示の制御はビューア/ブラウザ11により行われる。
Incidentally, the viewer / browser 11 of FIG. 1 opens an image display window on the screen of the display device 3 and displays an image there.
Usually, in addition to designation of an image to be displayed (designation of a file name and URL), the operation of a pointing device such as a mouse included in the input device 5 changes the vertical and horizontal sizes of the image display window, changes the image display magnification, It is possible to scroll an image larger than the display window and specify a specific area (position). Conditions such as the vertical and horizontal sizes of the image display window, the image display magnification, and the position of the image area are notified to the image processing program 10. In addition, various conditions relating to moving images or still images can be specified by using buttons or slide bars displayed in the control area, and the viewer / browser 11 can display resolution, image quality, color components, position, important area, frame rate. The image processing program 10 is notified of conditions relating to the code amount, processing time, and the like.
The image processing program 10 encodes a still image or a moving image so that the still image or the moving image can be displayed in accordance with the conditions such as the decoding processing capacity and the size of the image display window and in accordance with the user's intention. The code of the data is selectively decoded to reproduce the image data, and the viewer / browser 11 displays the image data on the image display window. Thus, the selective decoding process of the code of the encoded data is performed by the image processing program 10, but the display of the image on the screen of the display device 5 is controlled by the viewer / browser 11.

次に、本発明による図1に示されたコンピュータに画像処理プログラム10を適用して達成した符号化装置、及び符号化方法の実施形態について説明する。
図10は、図1に示すコンピュータに画像処理プログラム10を適用して達成した符号化装置の機能構成ブロック図である。
図10に示される符号化装置は、入力される画像を符号化し圧縮データストリームを生成するものである。図10の符号化装置は、分割部31、周波数変換部33、順序付け部35、圧縮部37、マーカー結合部39a、マーカー結合部39b、マーカー結合部39c、マーカー結合部39dで構成される。分割部31は、入力される画像を矩形領域に分割する。本実施形態では、画像を複数の矩形領域に分割しているが、画像を1つの矩形領域とみなせば、矩形領域の数は複数でなくても良いのは言うまでもない。周波数変換部33は、分割部31で分割された矩形領域に対して周波数変換を行い、複数の周波数帯域データを生成する。順序付け部35は、周波数変換部33で生成された各周波数帯域データに優先順序を付する。圧縮部(符号化処理手段)37は、順序付け部35で付された優先順序に基づいて周波数帯域データを整列するとともに、この周波数帯域データに対して圧縮処理を行うことで符号ストリームを生成する。マーカー結合部39aは、圧縮部37で生成される各帯域の符号ストリームにおける帯域データの先頭部に、優先順序が識別可能なマーカーを結合する。
Next, an embodiment of an encoding apparatus and an encoding method achieved by applying the image processing program 10 to the computer shown in FIG. 1 according to the present invention will be described.
FIG. 10 is a functional configuration block diagram of the encoding apparatus achieved by applying the image processing program 10 to the computer shown in FIG.
The encoding apparatus shown in FIG. 10 encodes an input image and generates a compressed data stream. 10 includes a dividing unit 31, a frequency converting unit 33, an ordering unit 35, a compressing unit 37, a marker combining unit 39a, a marker combining unit 39b, a marker combining unit 39c, and a marker combining unit 39d. The dividing unit 31 divides an input image into rectangular areas. In the present embodiment, the image is divided into a plurality of rectangular areas, but it is needless to say that the number of rectangular areas may not be plural if the image is regarded as one rectangular area. The frequency converting unit 33 performs frequency conversion on the rectangular area divided by the dividing unit 31 to generate a plurality of frequency band data. The ordering unit 35 assigns a priority order to each frequency band data generated by the frequency conversion unit 33. The compression unit (encoding processing means) 37 arranges the frequency band data based on the priority order given by the ordering unit 35 and generates a code stream by performing compression processing on the frequency band data. The marker combining unit 39a combines a marker whose priority order can be identified with the head portion of the band data in the code stream of each band generated by the compression unit 37.

このように本実施形態は、従来技術のように全タイルの符号データを並べ替えることは行わず、各矩形領域単位で処理を実行し、符号ストリームの帯域の切れ目に識別子を挿入している。
また、別の実施形態として、圧縮部37は、各帯域の符号ストリームにおける色成分データの先頭部に、優先順序を識別可能なマーカーを結合するマーカー結合部39bを有する構成となっている。
さらに、別の実施形態として、圧縮部37は、各帯域の符号ストリームにおける画質データの先頭部に、優先順序を識別可能なマーカーを結合するマーカー結合部39cを有する構成となっている。
さらに、別の実施形態として、圧縮部37は、各帯域の符号ストリームにおける小領域データの先頭部に、優先順序を識別可能なマーカーを結合するマーカー結合部39dを有する構成となっている。
As described above, in this embodiment, the code data of all tiles is not rearranged as in the prior art, but the process is executed in units of each rectangular area, and the identifier is inserted at the band break of the code stream.
As another embodiment, the compression unit 37 includes a marker combining unit 39b that combines a marker whose priority order can be identified at the head of the color component data in the code stream of each band.
Furthermore, as another embodiment, the compression unit 37 includes a marker combining unit 39c that combines a marker capable of identifying the priority order at the head of the image quality data in the code stream of each band.
Furthermore, as another embodiment, the compression unit 37 is configured to include a marker combining unit 39d that combines markers capable of identifying the priority order at the head of the small area data in the code stream of each band.

図11は、上記の符号化装置における画像処理プログラム10のフローチャートである。
以下、処理フローに沿って説明する。
ステップ101:ユーザによる設定情報の参照やデフォルトの設定により、以下の符号化条件が設定される。ここでは、本発明に係る設定のみについて説明する。
解像度分割レベル数RM、色成分数CM、プレシンクト分割数PM、レイヤ数LM、タイルパート分割境界解像度Riに、タイルパートとして分割される解像度を以下のように設定される。
Ri={R0、R1、R2、R3}
なお、本説明では、プログレッションオーダーRPCLについて説明するが、他のプログレッションオーダーでも実施可能である。また、処理中の画像のタイル番号T1、解像度レベルR、プレシンクトT2、色成分C、レイヤ番号Lは、初期値に設定される。
FIG. 11 is a flowchart of the image processing program 10 in the above encoding apparatus.
Hereinafter, it demonstrates along a processing flow.
Step 101: The following encoding conditions are set by referring to the setting information and default settings by the user. Here, only the setting according to the present invention will be described.
The resolution divided as tile parts is set as follows in the resolution division level number RM, the color component number CM, the precinct division number PM, the layer number LM, and the tile part division boundary resolution Ri.
Ri = {R0, R1, R2, R3}
In this description, the progression order RPCL will be described, but other progression orders can be implemented. Further, the tile number T1, resolution level R, precinct T2, color component C, and layer number L of the image being processed are set to initial values.

ステップ102:符号化対象である画像が読み込まれる。
本ステップは、ステップ110の符号化の時点で実施してもよいし、特定のサイズ毎に、分割して符号化の前に実施してもよい。
ステップ103:処理中の画像のタイルT1が符号化タイル数TMに達したか否か判断する。達した場合は、ENDに移り、そうでない場合は、ステップ104に移る。
ステップ104:解像度レベルRが符号化解像度レベル数RMに達したか否か判断する。達した場合は、ステップ111に移り、そうでない場合は、ステップ105に移る。
ステップ105:処理する解像度レベルが、設定されているタイルパートの境界Riの集合に含まれているか否かを判断する。処理する解像度レベルが設定されているタイルパートの境界Riの集合に含まれている場合は、ステップ106へ移り、そうでない場合は、ステップ107へ移る。ここで、タイルパートの境界Riはタイル毎に変更してもよく、タイルパート分割のないタイルでは、タイルパート境界の集合Riは空集合となる。
ステップ106:タイルパート境界を示すマーカーを付与する。本マーカーには、タイルパートの長さを示すパラメータが含まれるが、その値はタイルパート長が判明した時点で置き換えられる。そのため、最初は不定値となる。
Step 102: An image to be encoded is read.
This step may be performed at the time of encoding in step 110, or may be performed for each specific size before encoding.
Step 103: It is determined whether or not the tile T1 of the image being processed has reached the number of encoded tiles TM. If reached, the process moves to END, and if not, the process moves to Step 104.
Step 104: It is determined whether or not the resolution level R has reached the encoded resolution level number RM. If it has reached, the process moves to Step 111, and if not, the process moves to Step 105.
Step 105: It is determined whether or not the resolution level to be processed is included in the set of the set Ri of the tile parts. If the resolution level to be processed is included in the set of the boundary Ri of the tile part, the process proceeds to step 106, and otherwise, the process proceeds to step 107. Here, the tile part boundary Ri may be changed for each tile, and in a tile without tile part division, the tile part boundary set Ri is an empty set.
Step 106: A marker indicating a tile part boundary is assigned. This marker includes a parameter indicating the length of the tile part, but the value is replaced when the tile part length is determined. Therefore, the value is initially indefinite.

ステップ107:プリシンクトT2が符号化プレシンクト数PMに達したか否か判断する。符号化プレシンクト数PMに達した場合は、ステップ112に移り、そうでない場合は、ステップ108に移る。
ステップ108:色成分Cが符号化色成分数CMに達したか否か判断する。符号化色成分数CMに達した場合は、ステップ113に移り、そうでない場合は、ステップ109に移る。
ステップ109:レイヤ番号Lが符号化レイヤ数LMに達したか否か判断する。符号化レイヤ数LMに達した場合は、ステップ114に移り、そうでない場合は、ステップ110に移る。
ステップ110:対象の解像度R、プレシンクトP、色成分C、レイヤ番号Lのデータに対して符号化処理を行い、ステップ15に移る。
ステップ111:解像度レベルRを初期値R0に、タイル番号T1を1つインクリメントする。
Step 107: It is determined whether or not the precinct T2 has reached the number of encoded precincts PM. When the number of encoded precincts PM has been reached, the routine proceeds to step 112, and otherwise, the routine proceeds to step 108.
Step 108: It is determined whether or not the color component C has reached the number of encoded color components CM. If the number of encoded color components CM has been reached, the process proceeds to step 113, and if not, the process proceeds to step 109.
Step 109: It is determined whether or not the layer number L has reached the encoding layer number LM. If the number of coding layers LM has been reached, the process moves to step 114, and if not, the process moves to step 110.
Step 110: Encode the target resolution R, precinct P, color component C, and layer number L data, and go to Step 15.
Step 111: The resolution level R is incremented to the initial value R0, and the tile number T1 is incremented by one.

ステップ112:プレシンクト番号T2を初期値P0に、解像度レベルRを1つインクリメントする。
ステップ113:色成分番号Cを初期値C0に、プレシンクト番号T2を1つインクリメントする。
ステップ114:レイヤ番号Lを初期値L0に、色成分番号Cを1つインクリメントする。
ステップ115:レイヤ番号Lを1つインクリメントする。
Step 112: The precinct number T2 is incremented to the initial value P0 and the resolution level R is incremented by one.
Step 113: The color component number C is incremented to the initial value C0, and the precinct number T2 is incremented by one.
Step 114: Increment the layer number L to the initial value L0 and the color component number C by one.
Step 115: Increment the layer number L by one.

上記のフローチャートに基づく処理の結果、生成されるタイルパート符号を図12に示す。
図12は、図11に示した画像処理により生成されるタイルパート符号の説明図である。
従来技術で生成されていたタイルパート符号は、図9のように解像度毎にタイルパートを並べていた。しかしながら、本発明を実施すれば、図12に示すように矩形領域毎に識別子が挿入されており、符号データがまとまっている。つまり、矩形領域毎の符号データが解像度毎にタイルパートに分割されている。
上記の符号データは、対象としている矩形領域のみの処理だけ実施すれば良いため、従来の方式に比べると使用メモリ量が非常に少なくて済む。つまり、本発明を実施すると、従来技術に比べて処理時間が非常に短縮される。
FIG. 12 shows tile part codes generated as a result of the processing based on the above flowchart.
12 is an explanatory diagram of tile part codes generated by the image processing shown in FIG.
The tile part codes generated in the prior art have tile parts arranged for each resolution as shown in FIG. However, if the present invention is implemented, an identifier is inserted for each rectangular area as shown in FIG. 12, and code data is collected. That is, the code data for each rectangular area is divided into tile parts for each resolution.
Since the above code data only needs to be processed only for the target rectangular area, the amount of memory used is much smaller than that of the conventional method. That is, when the present invention is implemented, the processing time is greatly shortened as compared with the prior art.

図13は、図1に示すコンピュータに画像処理プログラム10を適用して達成した符号変換装置の機能構成ブロック図である。
図13に示されるように、この符号変換装置では、画像データを矩形領域に分割し、周波数変換し、圧縮処理が行われて生成された符号ストリームの少なくとも1つの領域データを読み込み、周波数帯域の境界部を検出する帯域検出部41aと、帯域検出部41aから検出された少なくとも1つの帯域データの先頭部に、帯域の識別が可能なマーカーを結合するマーカー結合部43aとを有する構成となっている。
また、この符号変換装置の変形例では、同じく図13に示されるように、画像データを矩形領域に分割し、色変換処理を行い、圧縮処理が行われて生成された符号ストリームの少なくとも1つの色成分データを読み込み、色成分の境界部を検出する帯域検出部41bと、帯域検出部41bから検出された少なくとも1つの色成分データの先頭部に、色成分の識別が可能なマーカーを結合するマーカー結合部43bとを有する構成となっている。
FIG. 13 is a functional block diagram of the code conversion apparatus achieved by applying the image processing program 10 to the computer shown in FIG.
As shown in FIG. 13, this code conversion apparatus divides image data into rectangular areas, performs frequency conversion, reads at least one area data of a code stream generated by compression processing, A band detection unit 41a that detects a boundary part and a marker combination unit 43a that combines a marker capable of identifying the band at the head of at least one band data detected from the band detection unit 41a. Yes.
Further, in the modification of the code conversion apparatus, as shown in FIG. 13, the image data is divided into rectangular areas, color conversion processing is performed, and compression processing is performed. A band detection unit 41b that reads color component data and detects a boundary portion of the color component, and a marker that can identify the color component is coupled to the head of at least one color component data detected from the band detection unit 41b. The marker coupling portion 43b is included.

また、この符号変換装置の他の変形例では、同じく図13に示すように、画像データを矩形領域に分割し、矩形領域をビットプレーン分割し、複数のビットプレーンの集合を形成することで符号ストリームが生成された符号ストリームの少なくとも1つのビットプレーン集合データを読み込み、集合の境界部を検出する帯域検出部41cと、帯域検出部41cで検出された少なくとも1つのビットプレーン集合の先頭部に、ビットプレーン集合の識別が可能なマーカーを結合するマーカー結合部43cと、を有する構成となっている。
また、この符号変換装置の他の変形例では、同じく図13に示すように、画像データを矩形領域に分割し、分割された矩形領域をさらに小領域に分割し、小領域毎に生成された符号ストリームの少なくとも1つの小領域データを読み込み、小領域の境界部を検出する帯域検出部41dと、帯域検出部41dで検出された少なくとも1つの小領域データの先頭部に、小領域の識別が可能なマーカーを結合するマーカー結合部43dと、を有する構成となっている。
Further, in another modification of the code conversion apparatus, as shown in FIG. 13, the image data is divided into rectangular areas, the rectangular areas are divided into bit planes, and a set of a plurality of bit planes is formed. A band detector 41c that reads at least one bit plane set data of a code stream from which a stream is generated and detects a boundary portion of the set, and a head portion of at least one bit plane set detected by the band detector 41c, And a marker combining unit 43c that combines markers capable of identifying a set of bit planes.
Further, in another modification of the code conversion device, as shown in FIG. 13, the image data is divided into rectangular areas, the divided rectangular areas are further divided into small areas, and the data is generated for each small area. A band detection unit 41d that reads at least one small region data of the code stream and detects a boundary portion of the small region, and a small region is identified at the head of at least one small region data detected by the band detection unit 41d. And a marker coupling portion 43d that couples possible markers.

図14は、上記機能構成の符号変換装置における画像処理プログラム21の概略処理フローチャートである。
以下、処理フローに沿って説明する。
ステップ201:ユーザによる設定情報の参照やデフォルトの設定により、以下の符号化条件が設定される。ここでは、本発明に係る設定のみについて説明する。
処理中の画像のタイル番号T1、解像度レベルR、プレシンクトT2、色成分C、レイヤ番号Lを初期値に設定する。
タイルパート分割境界解像度Riにタイルパートとして分割される解像度を以下のように設定される。
Ri={R0、R1、R2、R3}
ステップ202:変換が行われる対象の符号が終端に達したか否かを判断が行われる。終端であった場合は、ENDに移る。そうでない場合は、ステップ203に移る。
ステップ203:変換が行われる対象の符号のヘッダを読み込む。
ステップ204:ステップ203で読み込まれたヘッダ情報に基づき、タイルパート分割の境界であるか否かの判断が行われる。境界である場合は、ステップ205に移り、そうでない場合はステップ206に移る。
FIG. 14 is a schematic process flowchart of the image processing program 21 in the code conversion apparatus having the above functional configuration.
Hereinafter, it demonstrates along a processing flow.
Step 201: The following encoding conditions are set by referring to the setting information and default settings by the user. Here, only the setting according to the present invention will be described.
The tile number T1, resolution level R, precinct T2, color component C, and layer number L of the image being processed are set to initial values.
The resolution to be divided as tile parts into the tile part division boundary resolution Ri is set as follows.
Ri = {R0, R1, R2, R3}
Step 202: A determination is made whether the code to be converted has reached the end. If it is the end, the process proceeds to END. Otherwise, go to step 203.
Step 203: Read the header of the code to be converted.
Step 204: Based on the header information read in Step 203, it is determined whether or not it is a tile part division boundary. If it is a boundary, the process moves to Step 205, and if not, the process moves to Step 206.

ここで、境界の判断は読み込まれたヘッダ情報に基づき、1つ前に処理した解像度R‘と処理中の解像度Rが異なっている場合、解像度の境界であることが判明される。
解像度の境界であった場合、解像度Rがタイルパート分割境界Riの集合に含まれているか比較し、含まれている場合、タイルパート分割境界となる。
ステップ205:タイルパート境界マーカーSOTが挿入される。
本マーカーには、タイルパートの長さを示すパラメータが含まれるが、その値はタイルパート長が判明した時点で置き換えられる。そのため、最初は不定値となる。
ステップ206:ヘッダで読み込んだパケット長分の符号データを読み飛ばす。
上記処理の結果、図8に示した符号が、図12に示した符号へ変換される。
従来技術で生成されていたタイルパート符号は、解像度毎にタイルパートを並べていたが、本発明実施の符号データは、タイル毎に符号がまとまっており、そのタイルデータを解像度毎にタイルパートに分割している。
上記符号データは、符号データの生成時に、対象としているタイルのみの処理で足りるため、従来方式に比べ、使用メモリ量が少なくて済み、その結果処理時間の短縮につながる。
Here, the boundary is determined based on the read header information when the resolution R ′ processed immediately before and the resolution R being processed are different from each other.
If it is a resolution boundary, it is compared whether the resolution R is included in the set of tile part division boundaries Ri, and if it is included, it becomes a tile part division boundary.
Step 205: A tile part boundary marker SOT is inserted.
This marker includes a parameter indicating the length of the tile part, but the value is replaced when the tile part length is determined. Therefore, the value is initially indefinite.
Step 206: The code data corresponding to the packet length read in the header is skipped.
As a result of the above processing, the code shown in FIG. 8 is converted into the code shown in FIG.
The tile part code generated in the prior art has tile parts arranged for each resolution. However, the code data according to the present invention is grouped for each tile, and the tile data is divided into tile parts for each resolution. is doing.
Since the code data need only be processed for the target tile when generating the code data, the amount of memory used is less than that of the conventional method, resulting in a reduction in processing time.

次に、本発明を実施した符号変換装置、及び符号変換方法について説明する。
図15は、図1に示されるコンピュータに画像処理プログラム10を適用して達成した符号変換装置の機能構成ブロック図である。
図15に示されるように、この符号変換装置では、画像データを矩形領域に分割し、周波数変換を行い、圧縮処理が行われ、少なくとも1つの周波数帯域の境界に周波数帯域の境界が識別可能な識別子を付与されて生成された符号ストリームから、矩形領域の周波数帯域を識別する識別部51aと、識別部51aで識別された矩形周波数データの整列順序を設定する設定部53aと、設定部53aで設定された整列順序に圧縮処理によって生成された符号データを並べ替える並び替え部55とを有し、少なくとも1つの矩形領域に関する符号データを結合して配置した符号ストリームを生成する構成となっている。
また、この符号変換装置の変形例は、同じく図15に示されるように、画像データを矩形領域に分割し、色変換処理を行い、圧縮処理が行われ、少なくとも1つの色成分の境界に色成分の境界が識別可能な識別子を付与されたて生成された符号ストリームより、矩形領域の色成分を識別する識別部51bと、識別部51bで識別された矩形色データの整列順序を設定する設定部53bと、設定部53bで設定された整列順序に符号を並べ替える並び替え部55とを有し、少なくとも1つの矩形領域に関する符号データを結合して配置した符号ストリームを生成する構成となっている。
Next, a code conversion apparatus and a code conversion method embodying the present invention will be described.
FIG. 15 is a functional block diagram of a code conversion apparatus achieved by applying the image processing program 10 to the computer shown in FIG.
As shown in FIG. 15, in this code conversion apparatus, image data is divided into rectangular regions, frequency conversion is performed, compression processing is performed, and a frequency band boundary can be identified as at least one frequency band boundary. An identification unit 51a for identifying a frequency band of a rectangular region from a code stream generated with an identifier, a setting unit 53a for setting the alignment order of rectangular frequency data identified by the identification unit 51a, and a setting unit 53a The reordering unit 55 reorders the code data generated by the compression process in the set order of arrangement, and is configured to generate a code stream in which code data related to at least one rectangular area is combined and arranged. .
Further, as shown in FIG. 15, the modification of the code conversion apparatus divides image data into rectangular areas, performs color conversion processing, performs compression processing, and sets a color at the boundary of at least one color component. A setting for setting an arrangement order of an identification unit 51b for identifying a color component of a rectangular area and a rectangular color data identified by the identification unit 51b from a code stream generated with an identifier that can identify a component boundary. Unit 53b and rearrangement unit 55 that rearranges the codes in the arrangement order set by setting unit 53b, and generates a code stream in which code data related to at least one rectangular area is combined and arranged. Yes.

また、この符号変換装置の他の変形例は、同じく図15に示されるように、画像データを矩形領域に分割し、ビットプレーン変換し、ビットプレーンの集合を形成し、圧縮処理が行われ、少なくとも1つのビットプレーン集合の境界にビットプレーン集合の境界が識別可能な識別子を付与されて生成された符号ストリームから矩形領域のビットプレーン集合を識別する識別部51cと、識別部51cで識別された矩形ビットプレーン集合データの整列順序を設定する設定部53cと、設定部53cで設定された整列順序に符号を並べ替える並び替え部55cとを有し、少なくとも1つの矩形領域に関する符号データを結合して配置した符号ストリームを生成する構成となっている。
また、この符号変換装置の他の変形例は、同じく図15に示されるように、画像データを矩形領域に分割し、分割した矩形領域をさらに小領域に分け、圧縮処理が行われ、少なくとも1つの小領域の境界に小領域の境界が識別可能な識別子を付与されて生成された符号ストリームから矩形領域の小領域を識別する識別部51dと、識別部51dで識別された矩形小領域データの整列順序を設定する設定部53dと、設定部53dで設定された整列順序に符号を並べ替える並び替え部55とを有し、少なくとも1つの前記矩形領域に関する符号データを結合して配置した符号ストリームを生成する構成となっている。
Further, as shown in FIG. 15, another modification example of this code conversion apparatus divides image data into rectangular areas, performs bit plane conversion, forms a set of bit planes, and performs compression processing. An identification unit 51c for identifying a bit plane set in a rectangular area from a code stream generated by assigning an identifier capable of identifying the boundary of the bit plane set to the boundary of at least one bit plane set, and the identification unit 51c A setting unit 53c that sets the arrangement order of the rectangular bit plane set data; and a rearrangement unit 55c that rearranges the codes in the arrangement order set by the setting unit 53c, and combines the code data related to at least one rectangular area. The code stream is arranged to be generated.
Further, as shown in FIG. 15, another modification of the code conversion apparatus divides the image data into rectangular areas, further divides the divided rectangular areas into small areas, and performs compression processing. An identification unit 51d for identifying a small region of a rectangular region from a code stream generated by assigning an identifier that can identify the boundary of the small region to the boundary of two small regions, and the rectangular small region data identified by the identifying unit 51d A code stream that includes a setting unit 53d that sets an arrangement order and a rearrangement unit 55 that rearranges codes in the arrangement order set by the setting unit 53d, and is arranged by combining code data related to at least one rectangular area Is generated.

図16は、上記機能構成の符号変換装置における画像処理プログラム10の概略処理フローチャートである。
以下、処理フローに沿って説明する。
ステップ301:ユーザによる設定情報の参照やデフォルトの設定により、以下の符号化条件が設定される。ここでは、本発明に係る設定のみについて説明する。
タイルパートを結合するタイル番号の集合Tiの設定
Ti={T0、T1、T2、T3}。
FIG. 16 is a schematic process flowchart of the image processing program 10 in the code conversion apparatus having the above functional configuration.
Hereinafter, it demonstrates along a processing flow.
Step 301: The following encoding conditions are set by referring to the setting information and default settings by the user. Here, only the setting according to the present invention will be described.
Setting of a set Ti of tile numbers to combine tile parts Ti = {T0, T1, T2, T3}.

また、処理中の画像データのタイル番号T、タイルパート番号TP、符号ポインタFP1、符号ポインタFP2を初期値に設定する。
ステップ302:符号変換処理が終了したか否かを判断する。符号変化処理が終了した場合はENDに移り、そうでない場合はステップ303に移る。
ステップ303:符号読み込み位置FPよってタイルパートヘッダを読み込み、タイル番号Tを取得する。
ステップ304:タイル番号TがTiに含まれているか否かを判断する。タイル番号TがTiに含まれていた場合は、ステップ305に移り、タイル番号TがTiに含まれていない場合はステップ310に移る。
ステップ305:符号読み込み位置FP1を記録する。
FP2=FP1
Further, the tile number T, tile part number TP, code pointer FP1, and code pointer FP2 of the image data being processed are set to initial values.
Step 302: It is determined whether or not the code conversion process has been completed. If the sign change process is completed, the process proceeds to END. Otherwise, the process proceeds to step 303.
Step 303: The tile part header is read according to the code reading position FP, and the tile number T is acquired.
Step 304: It is determined whether or not the tile number T is included in Ti. If the tile number T is included in Ti, the process proceeds to step 305. If the tile number T is not included in Ti, the process proceeds to step 310.
Step 305: Record the code reading position FP1.
FP2 = FP1

タイルパートヘッダから、タイルパートの長さを取得し、タイルパートデータを読み込み、生成された符号データに結合する。
ステップ306:処理中のタイルTの全てのタイルパートを読み込んだか否かを判断する。全てのタイルパートを読み込んだ場合は、ステップ309に移り、全てのタイルパートを読み込んでいない場合は、ステップ307に移る。
ステップ307:FPより順次タイルパートを検索し、タイル番号が一致するタイルパートを探す。
ステップ308:見つけたタイルパートを生成された符号データに結合する。
ステップ309:ポインタFP1をFP2にリセットする。
ここで、FP2=FP1
ステップ310:読み込んでいるタイルパートを生成された符号データにコピーする。
The length of the tile part is acquired from the tile part header, the tile part data is read, and combined with the generated code data.
Step 306: It is determined whether all tile parts of the tile T being processed have been read. If all tile parts have been read, the process proceeds to step 309. If all tile parts have not been read, the process proceeds to step 307.
Step 307: The tile parts are sequentially searched from the FP, and the tile parts having the same tile number are searched.
Step 308: Combine the found tile part with the generated code data.
Step 309: Reset the pointer FP1 to FP2.
Here, FP2 = FP1
Step 310: Copy the tile part being read into the generated code data.

上記ステップの結果、図9に示された符号データが、図12に示された符号データに変換される。
従来技術で生成されていたタイルパート符号は、解像度毎にタイルパートを並べていたが、本発明実施の符号データは、タイル毎に符号がまとまっており、そのタイルデータを解像度毎にタイルパートに分割される。
上記符号データは、符号データの生成時に、対象としているタイルのみの処理で足りるため、従来方式に比べ、使用メモリ量が少なくて済み、その結果処理時間の短縮につながる。
As a result of the above steps, the code data shown in FIG. 9 is converted into the code data shown in FIG.
The tile part code generated in the prior art has tile parts arranged for each resolution. However, the code data according to the present invention is grouped for each tile, and the tile data is divided into tile parts for each resolution. Is done.
Since the code data need only be processed for the target tile when generating the code data, the amount of memory used is less than that of the conventional method, resulting in a reduction in processing time.

次に、本発明を実施した符号伸張装置、及び符号伸張方法について説明する。
図17は、図1に示すコンピュータに画像処理プログラム10を適用して達成した符号伸張装置の機能構成ブロック図である。
図17に示されるように、この符号伸張装置では、画像データを矩形領域に分割し、周波数変換し、圧縮処理が行われ、少なくとも1つの周波数帯域の境界に周波数帯域の境界が識別可能な識別子を付与された符号ストリームが伸張される。すなわち、符号ストリームから矩形領域の周波数帯域を識別する識別部61aと、識別部61aで識別された矩形周波数データの整列順序を設定する設定部63aと、設定部63aで設定された整列順序に符号データを並べ替える並替部65と、符号ストリームを伸張処理する伸張部67とを有し、少なくとも1つの矩形領域に関する符号データを結合して配置した符号データに変換し、さらに伸張する構成である。
また、この符号伸張装置の変形例では、同じく図17に示されるように、画像データを矩形領域に分割し、色変換処理し、圧縮処理が行われ、少なくとも1つの色成分の境界に色成分の境界が識別可能な識別子が付与された符号ストリームが伸張される。すなわち、符号ストリームから矩形領域の色成分を識別する識別部61bと、識別部63bで識別された矩形色データの整列順序を設定する設定部63bと、設定部63bで設定された整列順序に符号を並べ替える並替部65と、符号ストリームを伸張処理する伸張部67とを有し、少なくとも1つの矩形領域に関する符号データを結合して配置した符号データに変換し、さらに伸張する構成である。
Next, a code expansion apparatus and code expansion method embodying the present invention will be described.
FIG. 17 is a functional block diagram of a code decompression apparatus achieved by applying the image processing program 10 to the computer shown in FIG.
As shown in FIG. 17, in this code decompression apparatus, an image data is divided into rectangular areas, subjected to frequency conversion, compression processing is performed, and an identifier that can identify a frequency band boundary as at least one frequency band boundary. Is expanded. That is, the identification unit 61a for identifying the frequency band of the rectangular area from the code stream, the setting unit 63a for setting the alignment order of the rectangular frequency data identified by the identification unit 61a, and the alignment order set by the setting unit 63a are encoded. It has a rearrangement unit 65 that rearranges data and a decompression unit 67 that decompresses the code stream, and converts the code data related to at least one rectangular area into code data arranged and further expands the code data. .
Further, in this modification of the code expansion device, as shown in FIG. 17, the image data is divided into rectangular areas, subjected to color conversion processing, compression processing, and color components at the boundary of at least one color component. The code stream to which an identifier that can identify the boundary is attached is decompressed. That is, the identifying unit 61b for identifying the color component of the rectangular area from the code stream, the setting unit 63b for setting the alignment order of the rectangular color data identified by the identifying unit 63b, and the alignment order set by the setting unit 63b are encoded. A rearrangement unit 65 that rearranges the code stream, and a decompression unit 67 that decompresses the code stream. The code data relating to at least one rectangular area is converted into code data that is combined and arranged, and further decompressed.

また、この符号伸張装置の他の変形例では、同じく図17に示されるように、画像データを矩形領域に分割し、ビットプレーン変換し、ビットプレーンの集合を形成し、圧縮処理が行われ、少なくとも1つのビットプレーン集合の境界にビットプレーン集合の境界が識別可能な識別子が付与された符号ストリームが変換される。すなわち、符号ストリームから矩形領域のビットプレーン集合を識別する識別部61cと、識別部61cで識別された矩形ビットプレーン集合データの整列順序を設定する設定部63cと、設定部63cで設定された整列順序に符号を並べ替える並替部65と、符号ストリームを伸張処理する伸張部67とを有し、少なくとも1つの矩形領域に関する符号データを結合して配置した符号データに変換し、さらに伸張する構成である。
また、この符号伸張装置の他の変形例では、同じく図17に示されるように、画像データを矩形領域に分割し、分割した矩形領域をさらに小領域に分け、圧縮処理が行われ、少なくとも1つの小領域の境界に小領域の境界が識別可能な識別子が付与された符号ストリームが伸張される。すなわち、符号ストリームから矩形領域の小領域を識別する識別部61dと、識別部61dで識別された矩形小領域データの整列順序を設定する設定部63dと、設定部63dで設定された整列順序に符号を並べ替える並替部65と、符号ストリームを伸張処理する伸張部67とを有し、少なくとも1つの前記矩形領域に関する符号データを結合して配置した符号データに変換し、さらに伸張する構成である。
Further, in another modification of this code decompression apparatus, as shown in FIG. 17, the image data is divided into rectangular areas, bit-plane converted, a set of bit planes is formed, and compression processing is performed. A code stream in which an identifier that can identify a boundary of a bit plane set is attached to a boundary of at least one bit plane set is converted. That is, an identification unit 61c for identifying a bit plane set of a rectangular area from the code stream, a setting unit 63c for setting the alignment order of the rectangular bit plane set data identified by the identification unit 61c, and an alignment set by the setting unit 63c A configuration that includes a rearrangement unit 65 that rearranges codes in order and a decompression unit 67 that decompresses the code stream, converts the code data related to at least one rectangular area into code data that is arranged, and further decompresses the code data It is.
Further, in another modification of this code expansion apparatus, as shown in FIG. 17, the image data is divided into rectangular areas, the divided rectangular areas are further divided into small areas, and compression processing is performed. A code stream in which an identifier that can identify the boundary of a small area is added to the boundary of two small areas is expanded. That is, an identification unit 61d for identifying a small region of a rectangular region from the code stream, a setting unit 63d for setting the alignment order of the rectangular small region data identified by the identification unit 61d, and an alignment order set by the setting unit 63d. It has a rearrangement unit 65 for rearranging codes and a decompression unit 67 for decompressing the code stream, and converts the code data related to at least one of the rectangular areas into code data arranged and further expands the code data. is there.

図18は、上記の符号伸張装置における静止画に対する画像処理プログラム21の概略処理フローチャートである。
以下、処理フローに沿って説明する。
ステップ401:ユーザによる設定情報の参照やデフォルトの設定により、以下の符号化条件が設定される。ここでは、本発明に係る設定のみについて説明する。
タイルパートを結合するタイル番号の集合Tiの設定。
Ti={T0、T1、T2、T3}。
FIG. 18 is a schematic processing flowchart of the image processing program 21 for a still image in the code expansion device.
Hereinafter, it demonstrates along a processing flow.
Step 401: The following encoding conditions are set by referring to the setting information and default settings by the user. Here, only the setting according to the present invention will be described.
Setting of a set Ti of tile numbers to combine tile parts.
Ti = {T0, T1, T2, T3}.

また、処理中の画像データのタイル番号T、タイルパート番号TP、符号ポインタFP1、符号ポインタFP2を初期値に設定する。
ステップ402:符号データの伸張処理が終了か否かを判断する。終了の場合はENDに移り、そうでない場合はステップ403に移る。
ステップ403:符号読み込み位置FPより、タイルパートヘッダを読み込み、タイル番号Tを取得する。
ステップ404:タイル番号TがTiに含まれているか否かを判断する。タイル番号TがTiに含まれていた場合は、ステップ405に移り、タイル番号TがTiに含まれていない場合はステップ410に移る。
ステップ405:符号読み込み位置FP1を記録する。
ここで、FP2=FP1
タイルパートヘッダからタイルパートの長さを取得し、タイルパートデータを読み込み、生成された符号データに結合する。
Further, the tile number T, tile part number TP, code pointer FP1, and code pointer FP2 of the image data being processed are set to initial values.
Step 402: It is determined whether or not the code data expansion processing is completed. If it is completed, the process proceeds to END. Otherwise, the process proceeds to step 403.
Step 403: The tile part header is read from the code reading position FP, and the tile number T is acquired.
Step 404: It is determined whether or not the tile number T is included in Ti. If the tile number T is included in Ti, the process proceeds to step 405. If the tile number T is not included in Ti, the process proceeds to step 410.
Step 405: Record the code reading position FP1.
Here, FP2 = FP1
The length of the tile part is obtained from the tile part header, the tile part data is read and combined with the generated code data.

ステップ406:処理中のタイルTの全てのタイルパートを読み込んだか否かを判断する。全てのタイルパートを読み込んだ場合はステップ409に移り、全てのタイルパートを読み込んでいない場合はステップ407に移る。
ステップ407:FPより順次タイルパートを検索し、タイル番号が一致するタイルパートを探す。
ステップ408:見つけたタイルパートを伸張する符号データに結合する。
ステップ409:ポインタFP1をFP2にリセットする。
ここで、FP2=FP1
ステップ410:読み込んだタイルデータを伸張処理する。
上記ステップの結果、図9に示された符号データが図12の符号データに変換され、伸張処理が行われる。
上記符号データは、符号データの生成時に、対象としているタイルのみの処理で足りるため、従来方式に比べ、使用メモリ量が少なくて済み、その結果処理時間の短縮につながる。
Step 406: It is determined whether all tile parts of the tile T being processed have been read. If all the tile parts have been read, the process proceeds to step 409. If all the tile parts have not been read, the process proceeds to step 407.
Step 407: The tile parts are sequentially searched from the FP, and the tile parts having the same tile number are searched.
Step 408: Combine the found tile part with the code data to be decompressed.
Step 409: Reset the pointer FP1 to FP2.
Here, FP2 = FP1
Step 410: The read tile data is decompressed.
As a result of the above steps, the code data shown in FIG. 9 is converted into the code data shown in FIG. 12, and decompression processing is performed.
Since the code data need only be processed for the target tile when generating the code data, the amount of memory used is less than that of the conventional method, resulting in a reduction in processing time.

本発明によるコンピュータの一実施形態の構成ブロック図である。It is a block diagram of a configuration of an embodiment of a computer according to the present invention. 圧縮時における処理の詳細を示す説明図である。It is explanatory drawing which shows the detail of the process at the time of compression. オクターブ分割されたウェーブレット係数を表す図である。It is a figure showing the wavelet coefficient by which the octave division was carried out. タイル内ウェーブレット係数におけるタイル、プレシンクト及びコードブロックの関係を示す図である。It is a figure which shows the relationship between the tile in a wavelet coefficient in a tile, a precinct, and a code block. ビットプレーンとサブビットプレーンの関係を示す図である。It is a figure which shows the relationship between a bit plane and a sub bit plane. JPEG2000におけるレイヤプログレッションによる符号ストリーム全体を表した図である。It is a figure showing the whole code stream by the layer progression in JPEG2000. 図7(a)はLRCPプログレッション(以下レイヤプログレッション)、図7(b)はRLCPプログレッションまたはRPCLプログレッション(以下解像度プログレッション)のプログレッシブ順序を模式的に表した図である。FIG. 7A schematically shows the progressive order of LRCP progression (hereinafter referred to as layer progression), and FIG. 7B schematically illustrates the progressive order of RLCP progression or RPCL progression (hereinafter referred to as resolution progression). 1タイルあたり、4解像度、3色成分、1プレシンクト、1レイヤに分類され、12個のパケットが生成された場合の、RPCLプログレッションオーダーにて、整列された場合の符号の例を示す説明図である。It is explanatory drawing which shows the example of the code | cord | chord at the time of arranging in RPCL progression order when it classify | categorizes into 4 resolution per 1 tile, 3 color components, 1 precinct, 1 layer, and 12 packets are produced | generated. is there. 解像度ごとのタイルパートの例を示す説明図である。It is explanatory drawing which shows the example of the tile part for every resolution. 図1に示されるコンピュータに画像処理プログラム10を適用して達成した符号化装置の機能構成ブロック図である。It is a functional block diagram of the encoding apparatus achieved by applying the image processing program 10 to the computer shown in FIG. 図10の符号伸張装置における画像処理プログラム10の概略処理フローチャートである。12 is a schematic processing flowchart of an image processing program 10 in the code decompression apparatus of FIG. 10. 図11に示される画像処理により生成されるタイルパート符号の説明図である。It is explanatory drawing of the tile part code | symbol produced | generated by the image processing shown by FIG. 図1に示されるコンピュータに画像処理プログラム10を適用して達成した符号変換装置の機能構成ブロック図である。FIG. 2 is a functional configuration block diagram of a code conversion apparatus achieved by applying an image processing program 10 to the computer shown in FIG. 1. 図13の符号変換装置における画像処理プログラム10の概略処理フローチャートである。14 is a schematic process flowchart of an image processing program 10 in the code conversion apparatus of FIG. 13. 図1に示されるコンピュータに画像処理プログラム10を適用して達成した符号変換装置の機能構成ブロック図である。FIG. 2 is a functional configuration block diagram of a code conversion apparatus achieved by applying an image processing program 10 to the computer shown in FIG. 1. 図15の符号変換装置における画像処理プログラム10の概略処理フローチャートである。16 is a schematic process flowchart of an image processing program 10 in the code conversion apparatus of FIG. 図1に示されるコンピュータに画像処理プログラム10を適用して達成した符号伸張装置の機能構成ブロック図である。FIG. 2 is a functional configuration block diagram of a code expansion device achieved by applying an image processing program 10 to the computer shown in FIG. 1. 図17の符号伸張装置における画像処理プログラム10の概略処理フローチャートである。18 is a schematic processing flowchart of an image processing program 10 in the code decompression apparatus of FIG.

符号の説明Explanation of symbols

1…CPU、2…第1の記憶装置、3…ディスプレイ装置、4…第2の記憶装置、5…入力装置、7…入出力インターフェース、8…媒体ドライブ装置、9…システムバス、10…画像処理プログラム、11…通信インターフェース、12…ビューア/ブラウザ、31…分割部、33…変換部、35…順序付け部、37…圧縮部、39…マーカー結合部、41…帯域検出部、43…マーカー結合部、51…識別部、53…設定部、55…並替部、61…識別部、63…設定部、65…並替部、67…伸張部   DESCRIPTION OF SYMBOLS 1 ... CPU, 2 ... 1st memory | storage device, 3 ... Display apparatus, 4 ... 2nd memory | storage device, 5 ... Input device, 7 ... Input / output interface, 8 ... Medium drive device, 9 ... System bus, 10 ... Image Processing program 11 ... Communication interface 12 ... Viewer / browser 31 ... Splitting unit 33 ... Conversion unit 35 ... Ordering unit 37 ... Compression unit 39 ... Marker combining unit 41 ... Band detecting unit 43 ... Marker combining , 51 ... Identification unit, 53 ... Setting unit, 55 ... Rearrangement unit, 61 ... Identification unit, 63 ... Setting unit, 65 ... Rearrangement unit, 67 ... Extension unit

Claims (14)

入力データを符号化し、符号ストリームを生成する符号化装置であって、
前記入力データを少なくとも1つの矩形領域に分割する分割手段と、
前記分割手段で分割された矩形領域に対し所定の変換を行い、変換データに変換する変換手段と、
前記変換データに優先順序を付する順序付け手段と、
前記順序付け手段で付された前記優先順序に基づいて前記変換データを整列するとともに、符号化処理を施すことで符号ストリームを生成する符号化処理手段と、
前記符号化処理手段で生成された符号ストリームにおける各変換データの先頭部に、前記優先順序が識別可能なマーカーを結合するマーカー結合手段と、
を有することを特徴とする符号化装置。
An encoding device that encodes input data and generates a code stream,
Dividing means for dividing the input data into at least one rectangular area;
Conversion means for performing a predetermined conversion on the rectangular area divided by the dividing means and converting it into converted data;
Ordering means for giving a priority order to the converted data;
An encoding processing means for arranging the converted data based on the priority order assigned by the ordering means and generating a code stream by performing an encoding process;
Marker combining means for combining a marker that can identify the priority order at the head of each conversion data in the code stream generated by the encoding processing means;
An encoding device comprising:
前記変換データは、周波数帯域データ、色成分データ、ビットプレーンの集合データ、小領域データのいずれか1であることを特徴とする請求項1に記載の符号化装置。   The encoding apparatus according to claim 1, wherein the conversion data is any one of frequency band data, color component data, bit plane set data, and small area data. 画像データを矩形領域に分割し、各矩形領域を符号化処理して生成した符号ストリームを変換する符号変換装置であって、
前記符号ストリームの少なくとも1つの領域データを読み込み、当該領域データの境界部を検出する境界検出手段と、
前記境界検出手段で検出された少なくとも1つの領域データの先頭部に、当該領域データを識別可能なマーカーを結合するマーカー結合手段と、
を有することを特徴とする符号変換装置。
A code conversion device that divides image data into rectangular areas and converts a code stream generated by encoding each rectangular area,
Boundary detection means for reading at least one region data of the code stream and detecting a boundary portion of the region data;
Marker combining means for combining a marker capable of identifying the area data at the head of at least one area data detected by the boundary detection means;
A code conversion apparatus comprising:
画像データを矩形領域に分割し、各矩形領域を符号化処理して生成した符号ストリームを変換する符号変換装置であって、
前記符号ストリームから矩形領域の領域データを識別する識別手段と、
前記識別手段で識別された前記領域データの整列順序を設定する設定手段と、
前記設定手段で設定された整列順序に基づき、符号データを並べ替える並替手段と、
を有し、
前記矩形領域に関する符号データを結合して配置した符号ストリームに変換することを特徴とする符号変換装置。
A code conversion device that divides image data into rectangular areas and converts a code stream generated by encoding each rectangular area,
Identification means for identifying region data of a rectangular region from the code stream;
Setting means for setting an arrangement order of the area data identified by the identification means;
Reordering means for reordering the code data based on the alignment order set by the setting means;
Have
A code conversion apparatus that converts code data related to the rectangular area into a code stream that is combined and arranged.
前記領域データは、周波数帯域データ、色成分データ、ビットプレーンの集合データ、小領域データのいずれか1であることを特徴とする請求項3又は4に記載の符号変換装置。   5. The code conversion apparatus according to claim 3, wherein the area data is any one of frequency band data, color component data, bit plane aggregate data, and small area data. 画像データを矩形領域に分割し、データの境界が識別可能な識別子が付与された符号ストリームを伸張する符号伸張装置であって、
前記符号ストリームから矩形領域の領域データを識別する識別手段と、
前記識別手段で識別された領域データの整列順序を設定する設定手段と、
前記設定手段で設定された整列順序に基づき、前記符号データを並べ替える並替手段と、
前記符号ストリームを伸張する伸張手段と、
を有することを特徴とする符号伸張装置。
A code expansion device that divides image data into rectangular regions and expands a code stream to which an identifier that can identify a boundary of the data is attached,
Identification means for identifying region data of a rectangular region from the code stream;
Setting means for setting the arrangement order of the area data identified by the identification means;
Reordering means for reordering the code data based on the alignment order set by the setting means;
Decompression means for decompressing the code stream;
A code expansion device comprising:
前記領域データは、周波数帯域データ、色成分データ、ビットプレーンの集合データ、小領域データのいずれか1であることを特徴とする請求項6に記載の符号伸張装置。   The code expansion device according to claim 6, wherein the area data is any one of frequency band data, color component data, bit plane aggregate data, and small area data. 入力データを符号化し、符号ストリームを生成する符号化方法であって、
前記入力データを少なくとも1つの矩形領域に分割する分割工程と、
前記分割工程で分割された矩形領域に対し所定の変換を行い、変換データに変換する変換工程と、
前記変換データに優先順序を付する順序付け工程と、
前記順序付け工程で付された前記優先順序に基づいて前記変換データを整列するとともに、符号化処理を施すことで符号ストリームを生成する符号化工程と、
前記符号化工程で生成された符号ストリームにおける各変換データの先頭部に、前記優先順序が識別可能なマーカーを結合するマーカー結合工程と、
を有することを特徴とする符号化方法。
An encoding method for encoding input data and generating a code stream,
A dividing step of dividing the input data into at least one rectangular region;
A predetermined conversion is performed on the rectangular area divided in the dividing step, and a conversion step for converting into the conversion data,
An ordering step of giving a priority order to the converted data;
An encoding step of aligning the converted data based on the priority order assigned in the ordering step and generating a code stream by performing an encoding process;
A marker combining step of combining a marker whose priority order can be identified at the head of each converted data in the code stream generated in the encoding step;
An encoding method characterized by comprising:
前記変換データは、周波数帯域データ、色成分データ、ビットプレーンの集合データ、小領域データのいずれか1であることを特徴とする請求項8に記載の符号化方法。   9. The encoding method according to claim 8, wherein the conversion data is any one of frequency band data, color component data, bit plane aggregate data, and small area data. 画像データを矩形領域に分割し、各矩形領域を符号化処理して生成した符号ストリームを変換する符号変換方法であって、
前記符号ストリームの少なくとも1つの領域データを読み込み、当該領域データの境界部を検出する境界検出工程と、
前記境界検出工程で検出された少なくとも1つの領域データの先頭部に、当該領域データを識別可能なマーカーを結合するマーカー結合工程と、
を有することを特徴とする符号変換方法。
A code conversion method for converting a code stream generated by dividing image data into rectangular areas and encoding each rectangular area,
A boundary detection step of reading at least one region data of the code stream and detecting a boundary portion of the region data;
A marker combining step for combining a marker capable of identifying the region data at the head of at least one region data detected in the boundary detection step;
A code conversion method characterized by comprising:
画像データを矩形領域に分割し、各矩形領域を符号化処理して生成した符号ストリームを変換する符号変換方法であって、
前記符号ストリームから矩形領域のデータを識別する識別工程と、
前記識別工程で識別されたデータの整列順序を設定する設定工程と、
前記設定工程で設定された整列順序に基づき、符号データを並べ替える並替工程と、
を有し、
前記矩形領域に関する符号データを結合して配置した符号ストリームに変換することを特徴とする符号変換方法。
A code conversion method for converting a code stream generated by dividing image data into rectangular areas and encoding each rectangular area,
An identification step of identifying rectangular area data from the code stream;
A setting step for setting the alignment order of the data identified in the identification step;
A rearrangement step of rearranging the code data based on the alignment order set in the setting step;
Have
A code conversion method comprising: converting code data relating to the rectangular area into a code stream arranged by being combined.
前記領域データは、周波数帯域データ、色成分データ、ビットプレーンの集合データ、小領域データのいずれか1であることを特徴とする請求項10又は11に記載の符号変換方法。   12. The code conversion method according to claim 10, wherein the area data is any one of frequency band data, color component data, bit plane aggregate data, and small area data. 画像データを矩形領域に分割し、領域データの境界が識別可能な識別子が付与された符号ストリームを伸張する符号伸張方法であって、
前記符号ストリームから矩形領域のデータを識別する識別工程と、
前記識別工程で識別されたデータの整列順序を設定する設定工程と、
前記設定工程で設定された整列順序に基づき、符号データを並べ替える並替工程と、
前記符号ストリームを伸張する伸張工程と、
を有することを特徴とする符号伸張方法。
A code decompression method for decompressing a code stream to which image data is divided into rectangular regions and an identifier capable of identifying the boundary of the region data is added,
An identification step of identifying rectangular area data from the code stream;
A setting step for setting the alignment order of the data identified in the identification step;
A rearrangement step of rearranging the code data based on the alignment order set in the setting step;
A decompression step of decompressing the code stream;
A code expansion method characterized by comprising:
前記領域データは、周波数帯域データ、色成分データ、ビットプレーンの集合データ、小領域データのいずれか1であることを特徴とする請求項13に記載の符号伸張方法。   14. The code expansion method according to claim 13, wherein the area data is any one of frequency band data, color component data, bit plane aggregate data, and small area data.
JP2008043464A 2007-03-16 2008-02-25 Encoding device, code conversion device, code expansion device, encoding method, code conversion method, and code expansion method Expired - Fee Related JP5081663B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008043464A JP5081663B2 (en) 2007-03-16 2008-02-25 Encoding device, code conversion device, code expansion device, encoding method, code conversion method, and code expansion method
US12/047,839 US8135223B2 (en) 2007-03-16 2008-03-13 Image processing apparatus and method of image processing

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2007069632 2007-03-16
JP2007069632 2007-03-16
JP2008043464A JP5081663B2 (en) 2007-03-16 2008-02-25 Encoding device, code conversion device, code expansion device, encoding method, code conversion method, and code expansion method

Publications (2)

Publication Number Publication Date
JP2008263589A true JP2008263589A (en) 2008-10-30
JP5081663B2 JP5081663B2 (en) 2012-11-28

Family

ID=39985714

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008043464A Expired - Fee Related JP5081663B2 (en) 2007-03-16 2008-02-25 Encoding device, code conversion device, code expansion device, encoding method, code conversion method, and code expansion method

Country Status (1)

Country Link
JP (1) JP5081663B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011147120A (en) * 2010-01-18 2011-07-28 Ntt Docomo Inc Method and apparatus for transmitting scalable video in accordance with priority

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003169333A (en) * 2001-09-21 2003-06-13 Ricoh Co Ltd Code string forming apparatus, picture expansion system, picture expander, picture providing system, code string forming method, program and recording medium
JP2004228717A (en) * 2003-01-20 2004-08-12 Ricoh Co Ltd Image processing method, image processing apparatus, electronic camera apparatus, program, and recording medium

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003169333A (en) * 2001-09-21 2003-06-13 Ricoh Co Ltd Code string forming apparatus, picture expansion system, picture expander, picture providing system, code string forming method, program and recording medium
JP2004228717A (en) * 2003-01-20 2004-08-12 Ricoh Co Ltd Image processing method, image processing apparatus, electronic camera apparatus, program, and recording medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011147120A (en) * 2010-01-18 2011-07-28 Ntt Docomo Inc Method and apparatus for transmitting scalable video in accordance with priority

Also Published As

Publication number Publication date
JP5081663B2 (en) 2012-11-28

Similar Documents

Publication Publication Date Title
US7646927B2 (en) Image processing and display scheme for rendering an image at high speed
JP4530274B2 (en) Code processing apparatus, code processing method, program, and information recording medium
JP2007142614A (en) Image processing apparatus and method, program, and information recording medium
JP2010093669A (en) Apparatus and method for processing information
JP4086196B2 (en) Image encoding apparatus, program, and storage medium
JP2005092110A (en) Image processing device, image processing method, program and information recording medium
JP2004166124A (en) Image processor, program, storage medium, and image processing method
JP4789192B2 (en) Code processing apparatus, program, and information recording medium
JP2004186871A (en) Image processing apparatus, imaging apparatus, program, and storage medium
JP4640942B2 (en) Server device
JP4532518B2 (en) Image processing apparatus and image processing method
JP4609918B2 (en) Image processing system, image processing method, program, and information recording medium
US20050169542A1 (en) Image processing apparatus, image processing method, program, and information recording medium
JP5081663B2 (en) Encoding device, code conversion device, code expansion device, encoding method, code conversion method, and code expansion method
US8135223B2 (en) Image processing apparatus and method of image processing
JP2011071649A (en) Image processing apparatus and method
JP4489474B2 (en) Image processing apparatus, program, and recording medium
JP4859014B2 (en) Image processing apparatus, image processing method, program, and information recording medium
JP4743613B2 (en) Code generation device, file generation device, code processing device, program, information recording medium
JP4475513B2 (en) Image processing apparatus, program, and recording medium
JP4114144B2 (en) Image encoding device, image encoding program, and image decoding program
JP4688164B2 (en) Image processing apparatus, image processing method, program, and information recording medium
JP4059399B2 (en) Image processing apparatus, image processing system, image output control method, program, and recording medium
JP4748672B2 (en) Code processing apparatus, program, and information recording medium
JP4280613B2 (en) MOVING IMAGE REPRODUCING DEVICE, ITS CONTROL METHOD, COMPUTER PROGRAM, AND COMPUTER-READABLE STORAGE MEDIUM

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100702

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111226

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120828

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120903

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150907

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5081663

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees