JP4086192B2 - Image processing apparatus, image processing method, program, and information recording medium - Google Patents

Image processing apparatus, image processing method, program, and information recording medium Download PDF

Info

Publication number
JP4086192B2
JP4086192B2 JP2003417886A JP2003417886A JP4086192B2 JP 4086192 B2 JP4086192 B2 JP 4086192B2 JP 2003417886 A JP2003417886 A JP 2003417886A JP 2003417886 A JP2003417886 A JP 2003417886A JP 4086192 B2 JP4086192 B2 JP 4086192B2
Authority
JP
Japan
Prior art keywords
code
code stream
image
layer
progressive
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.)
Expired - Fee Related
Application number
JP2003417886A
Other languages
Japanese (ja)
Other versions
JP2005184086A (en
Inventor
幸二 小林
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 JP2003417886A priority Critical patent/JP4086192B2/en
Publication of JP2005184086A publication Critical patent/JP2005184086A/en
Application granted granted Critical
Publication of JP4086192B2 publication Critical patent/JP4086192B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

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

Description

本発明は、画像処理の分野に係り、特に、画像のプログレッシブ符号ストリームの生成及びプログレッシブ復号に関する。   The present invention relates to the field of image processing, and more particularly, to generation and progressive decoding of a progressive code stream of an image.

近年、デジタルカメラやスキャナ等の普及に加えてインターネットの高速化も進み、高精細な多値の静止画像がホームユーザにも手軽に扱われるようになった。通常、これらの多値静止画像は、非常に多くの情報量となるため、何らかの圧縮符号化処理が行われている。   In recent years, in addition to the popularization of digital cameras and scanners, the speed of the Internet has increased, and high-definition multi-valued still images can be easily handled by home users. Usually, these multilevel still images have a very large amount of information, and therefore some kind of compression encoding processing is performed.

現在、カラー静止画像において最もよく使用されいる圧縮符号化方式は、Joint Photographic Experts GroupのIS(International Standard)10918-1(ITU-T T.81)にて勧告されたJPEGベースラインシステムである。なお、JPEGはベースラインシステムの他にプログレッシブ等の機能を拡充した拡張システム(IS 10918-3:ITU-T T.84)も標準化されている。また、次世代圧縮方式として、JPEGよりも高画質、多機能化が図られたJPEG2000の基本方式(part1)も2000年12月に標準化が完了している(IS 15444-1)。   Currently, the most commonly used compression coding method for color still images is the JPEG baseline system recommended by the Joint Photographic Experts Group IS (International Standard) 10918-1 (ITU-T T.81). In addition to the baseline system, JPEG has also standardized an extended system (IS 10918-3: ITU-T T.84) with expanded functions such as progressive. As a next-generation compression method, standardization (part 1) of JPEG2000, which has higher image quality and more functionality than JPEG, was completed in December 2000 (IS 15444-1).

通常、画像データを転送する際には、上記のような圧縮方式によって圧縮符号化された画像データがネットワークを介して転送され、受信側で復号され、モニタ等の表示装置に表示され、あるいは紙等の記録媒体に記録されて顕像化される。例えば、クライアント/サーバ環境において、クライアント側が画像データを受信してモニタ等に表示する場合に、例えばインターネットのような転送路の帯域が狭く画像データの受信に時間がかかるような条件では、画像データの転送の初期段階で粗い画像を画面表示させ、画像データの転送が進むにつれて精細な画像を表示するプログレッシブ符号化方式が採用されている。 Usually, when transferring image data, the image data compressed and encoded by the compression method as described above is transferred via a network, decoded on the receiving side, displayed on a display device such as a monitor, or on paper. The image is recorded on a recording medium such as For example, in a client / server environment, when the client side receives image data and displays it on a monitor or the like, the image data may be used under conditions such as the Internet where the bandwidth of the transfer path is narrow and it takes time to receive the image data. A progressive encoding method is employed in which a coarse image is displayed on the screen at the initial stage of the transfer, and a fine image is displayed as the transfer of the image data proceeds.

JPEGでは、その拡張システムにおいて、転送路を介して画像を表示させることを主な目的としたプログレッシブ符号化方式が定義されているが、JPEG2000においては基本方式からプログレッシブ符号化方式が定義されている。   JPEG defines a progressive encoding system whose main purpose is to display an image via a transfer path in its extended system, but JPEG2000 defines a progressive encoding system from the basic system. .

後述の本発明の実施の形態においては圧縮符号化方式としてJPEG2000を利用するため、ここでJPEG2000基本方式とプログレッシブ順序の概要を説明する。   In the embodiment of the present invention described later, since JPEG2000 is used as a compression encoding method, an outline of the JPEG2000 basic method and progressive order will be described here.

図26は、JPEG2000part1(以下JPEG2000)における圧縮符号化処理の基本ブロック図である。ここでは、入力画像データとしてカラーのRed,Green,Blue(以下RGB)の画像データを扱うもとして説明する。   FIG. 26 is a basic block diagram of compression encoding processing in JPEG2000part1 (hereinafter JPEG2000). Here, description will be made assuming that color Red, Green, Blue (hereinafter referred to as RGB) image data is handled as input image data.

入力されたRGBの画像データは、タイリング処理部222にて矩形のブロック(タイルと呼ばれる)に分割され、タイル単位で色変換部223に入力される。ラスタ形式の画像データが入力された場合は、タイリング処理部222においてラスタ/ブロック変換が行われる。   The input RGB image data is divided into rectangular blocks (called tiles) by the tiling processing unit 222 and input to the color conversion unit 223 in tile units. When raster format image data is input, the tiling processing unit 222 performs raster / block conversion.

JPEG2000においては、タイル単位に独立して符号化又は復号化が可能である。このことは、ハードウェアにより符号化/復号化を行う場合のハード量を削減でき、また、必要なタイルのみ復号して表示することも可能となるなど、JPEG2000の多機能化の一翼を担っている。なお、JPEG2000ではタイリングはオプションであり、タイリングを行わないことも可能である。   In JPEG2000, encoding or decoding can be performed independently for each tile. This contributes to the multi-functionality of JPEG2000, such as reducing the amount of hardware when encoding / decoding by hardware, and decoding and displaying only the necessary tiles. Yes. In JPEG2000, tiling is an option, and tiling can be omitted.

次に、画像データは色変換処理部123にて、輝度/色差系の信号に変換される。JPEG2000では、離散ウェーブレット変換(以下DWT)に使用するフィルタの種類(5x3と9x7の2通り)に対応して2種類の色変換が定められており、例えば可逆変換可能な5x3フィルタを使用する場合は、下記の式(1)による可逆の色変換が用いられる。   Next, the image data is converted into a luminance / color difference signal by the color conversion processing unit 123. In JPEG2000, two types of color conversion are defined corresponding to the types of filters (5x3 and 9x7) used for discrete wavelet transform (hereinafter DWT). For example, when using a 5x3 filter capable of reversible conversion Uses reversible color conversion according to the following equation (1).

Figure 0004086192
なお、上記の色変換に先立ち、RGBの各信号毎にDCレベルシフトが行われる。DCレベルシフトは、例えば入力RGB信号が8bitの場合は、下記の式(2)により表される。
Figure 0004086192
Prior to the above color conversion, a DC level shift is performed for each RGB signal. The DC level shift is expressed by the following equation (2) when the input RGB signal is 8 bits, for example.

Figure 0004086192
色変換後の信号はDWT処理部224において各コンポーネント毎に離散ウェーブレット変換(DWT)を施される。DWTは2次元にて行われるが、通常は、リフティング演算と呼ばれる演算方法により、1次元フィルタ演算のコンボリューションにて実施される。1次元の変換式を式(3)に示す。
Figure 0004086192
The signal after color conversion is subjected to discrete wavelet transform (DWT) for each component in the DWT processing unit 224. 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 0004086192
DWTはダウンサンプリングを伴うため、上記L(k)、H(k)は入力画像と比較し1/2の解像度となる。
Figure 0004086192
Since DWT involves downsampling, the above L (k) and H (k) have half the resolution compared to the input image.

図27は、オクターブ分割されたウェーブレット係数を表す図である。DWTは、1デコンポジション(分解)レベル毎にLL,HL,LH,HHの4つのサブバンドと呼ばれる方向成分が出力され、LLに対してDWTを再帰的に行うことによって、より低解像度へとデコンポジションレベルをあげていく。解像度の最も高いデコンポジションレベル1の係数を1HL,1LH,1HHと表し、デコンポジションレベル2の係数を2HL,2LH,2HH、等々と表す。なお、図27は、3デコンポジションレベルのサブバンド分割を示している。また、図27中の各サブバンドの右肩に記入した数字は解像度レベルを示す。   FIG. 27 is a diagram illustrating wavelet coefficients that have been divided into octaves. DWT outputs directional components called LL, HL, LH, and HH for each decomposition (decomposition) level. By recursively performing DWT on LL, lower resolution is achieved. Raise the decomposition level. Decomposition level 1 coefficients with the highest resolution are represented as 1HL, 1LH, 1HH, decomposition level 2 coefficients are represented as 2HL, 2LH, 2HH, and so on. FIG. 27 shows subband division at 3 decomposition levels. Also, the numbers written on the right shoulder of each subband in FIG. 27 indicate the resolution level.

各デコンポジションレベルのサブバンドを、プレシンクトと呼ばれる矩形領域に分割して符号の集合を作成することが可能である。また、各プレシンクトはコードブロックとよばれる所定の矩形ブロックに分割され、符号化はコードブロック単位で行われる。   It is possible to divide each decomposition level subband into rectangular areas called precincts to create a set of codes. Each precinct is divided into predetermined rectangular blocks called code blocks, and encoding is performed in units of code blocks.

さて、DWT処理部224から出力されたウェーブレット係数に対し量子化処理部225によってスカラー量子化が行われるが、可逆のDWTが実施される場合にはスカラー量子化は行われないか、量子化ステップサイズを1とした量子化が行われる。また、後段のポスト量子化部227によるポスト量子化によっても、スカラー量子化とほぼ同様な効果が得られる。スカラー量子化のパラメータはタイル単位に変更可能である。   Now, scalar quantization is performed on the wavelet coefficients output from the DWT processing unit 224 by the quantization processing unit 225. When reversible DWT is performed, scalar quantization is not performed. Quantization with a size of 1 is performed. Also, post quantization by the post quantization unit 227 in the subsequent stage can provide substantially the same effect as scalar quantization. Scalar quantization parameters can be changed on a tile basis.

量子化処理部225から出力された量子化後のウェーブレット係数は、エントロピー符号化部226にてエントロピー符号化が行われる。JPEG2000におけるエントロピー符号化方式では、サブバンド内をコードブロックと呼ばれる矩形領域に分割し(但し、サブバンド領域のサイズがコードブロックサイズ以下の場合は分割しない)、コードブロック単位に符号化される。   The entropy coding unit 226 performs entropy coding on the quantized wavelet coefficients output from the quantization processing unit 225. 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 encoding is performed in units of code blocks.

この符号化においては、図28に模式的に示すように、コードブロック内のウェーブレット係数はビットプレーンに分解され、ビットプレーンは画質への影響度を表す状態に従って3つの符号化パス(Significance propagationパス,Magnitude refinementパス,Clean upパス)と呼ばれるサブビットプレーンに分割されて、各々でMQコーダと呼ばれる算術符号化方式により符号化される。ビットプレーンはMSB側ほど、また、符号化パスはSignificance propagation、Magnitude refinement,Clean upの順に、重要度(画質への寄与度)が高くなっている。また、各パスの終端は、切り捨て点(トランケーションポイント)とも呼ばれ、後段でのポスト量子化での符号の切り捨て可能な単位となっている。   In this encoding, as schematically shown in FIG. 28, the wavelet coefficients in the code block are decomposed into bit planes, and the bit planes are divided into three encoding propagation paths (Significance propagation paths) according to the state representing the degree of influence on image quality. , Magnitude refinement pass, Clean up pass), and is encoded by an arithmetic coding method called MQ coder. The bit plane has a higher importance (contribution to image quality) in the order of the MSB side and the encoding pass in the order of significance propagation, magnitude refinement, and cleanup. Also, the end of each path is also called a truncation point, and is a unit that can be used for truncating the code in post-quantization at the later stage.

エントロピー符号化により生成された符号データに対し、ポスト量子化部227にて必要に応じて符号の切り捨て(トランケーション)が行われる。ただし、可逆の符号を出力する必要がある場合にはポスト量子化は実行されない。このように符号化後に符号の切り捨てにより符号量を制御することができ、符号量の制御にフィードバックを必要としない構成(1パスの符号化)であり、これがJPEG2000の特徴の1つである。   The post-quantization unit 227 performs code truncation (truncation) on the code data generated by entropy coding as necessary. However, post-quantization is not performed when it is necessary to output a reversible code. In this way, the code amount can be controlled by truncating the code after encoding, and the feedback control is not required for the code amount control (one-pass encoding). This is one of the features of JPEG2000.

符号ストリーム生成処理部228は、ポスト量子化後の符号データに対し、後述するプログレッシブ順序に従って符号の並べ替えとヘッダの付加を行うことにより符号ストリームを生成する。   The code stream generation processing unit 228 generates a code stream by rearranging codes and adding a header to the post-quantized code data according to a progressive order described later.

図29は、JPEG2000におけるレイヤプログレッションの符号ストリームの模式図である。符号ストリームは、メインヘッダと1以上のタイルのデータで構成される。各タイルのデータは、タイルヘッダと、タイル内符号をレイヤとよばれる符号単位(後述)に区切った複数のレイヤにより構成されており、レイヤ0、レイヤ1・・・というように上位レイヤから順番に並んでいる。レイヤはレイヤ用のタイルヘッダと複数のパケットにより構成されており、パケットはパケットヘッダと符号データから構成されている。   FIG. 29 is a schematic diagram of a code stream for layer progression in JPEG2000. The code stream includes a main header and one or more tile data. Each tile data is composed of a tile header and a plurality of layers obtained by dividing the code in the tile into code units (to be described later) called layers. Layer 0, layer 1... Are lined up. A layer is composed of a tile header for the layer and a plurality of packets, and the packet is composed of a packet header and code data.

パケットは、符号データの最小単位であり、1つのタイルコンポーネント内の1つの解像度レベル(デコンポジションレベル)における1つのプレシンクト内の1つのレイヤの符号データから成っている。   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通りのプログレッション(プログレッシブ順序)が定義されている。   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 (Progressive order) is defined.

・LRCPプログレッション:プレシンクト、コンポーネント、解像度レベル、レイヤの順序に復号されるため、レイヤのインデックスが進む毎に画像全面の画質が改善されることになり、画質プログレッションを実現できる。レイヤプログレッションとも呼ばれる。   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 is advanced, and image quality progression can be realized. Also called layer progression.

・RLCPプログレッション:プレシンクト、コンポーネント、レイヤ、解像度レベルの順序に復号されるため、解像度プログレッションを実現できる。   RLCP progression: Decoding is performed in the order of precinct, component, layer, and resolution level, so that resolution progression can be realized.

・RPCLプログレッション:レイヤ、コンポーネント、プレシンクト、解像度レベルの順序に復号されるため、RLCPプログレッションと同様、解像度プログレッションであるが、特定位置(プレシンクト)の優先度を高くすることができる。   RPCL progression: Since decoding is performed in the order of layer, component, precinct, and resolution level, as with RLCP progression, although it is resolution progression, the priority of a specific position (precinct) can be increased.

・PCRLプログレッション:レイヤ、解像度レベル、コンポーネント、プレシンクトの順序に復号されるため、特定部分の復号が優先されるようになり空間位置プログレッションを実現できる。   PCRL progression: Since decoding is performed in the order of layer, resolution level, component, and precinct, decoding of a specific part is prioritized and spatial position progression can be realized.

・CPRLプログレッション:レイヤ、解像度レベル、プレシンクト、コンポーネントの順序に復号されるため、例えばカラー画像のプログレッシブ復号の際に、最初にグレーの画像を再現するようなコンポーネント・プログレッションを実現できる。   CPRL progression: Since decoding is performed in the order of layer, resolution level, precinct, and component, for example, in the case of progressive decoding of a color image, component progression that first reproduces a gray image can be realized.

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

(A)の破線はレイヤプログレッションにおける復号順序(符号の順序)を表している。最上位のレイヤの全ての解像度の復号を行って次位(下位)のレイヤの復号を行う。ウェーブレット係数レベルでみれば、係数の上位bitから復号を行うことになり、徐々に画質が向上するプログレッシブ復号が可能である。   The broken line in (A) represents the decoding order (code order) in layer progression. Decoding of all resolutions of the highest layer is performed, and decoding of the next (lower) layer is performed. At the wavelet coefficient level, decoding is performed from the higher bits of the coefficient, and progressive decoding with gradually improving image quality is possible.

(B)の破線は解像度プログレッションにおける復号順序(符号の順序)を表している。最も高いデコンポジションレベルの全てのレイヤの復号を行った後に次のデコンポジションレベルの復号を行うことになり、徐々に解像度が向上するプログレッシブ復号が可能である。   The broken line in (B) represents the decoding order (code order) in resolution progression. After decoding all the layers having the highest decomposition level, decoding of the next decomposition level is performed, and progressive decoding with gradually improving resolution is possible.

なお、図30においてはコンポーネント及びプレシンクトの概念が省略されているので、その理解のために、LRCPプログレッションとRLCPプログレッションにおけるパケットの並び方を模式的に図31と図32に例示する。   In FIG. 30, the concept of components and precincts is omitted. For understanding, the arrangement of packets in LRCP progression and RLCP progression is schematically illustrated in FIGS. 31 and 32.

さて、近年、スキャナ、プリンタ、コピー等の機能を統合した複写機(マルチファンクションプリンタ;MFP)の普及がめざましい。このようなMFPは、ハードディスク装置(以下HDD)等の大容量の記憶装置を備え、複数部数の原稿を1度だけ読み込み、その画像データをHDD等に記憶(蓄積)しておくことにより、その原稿をページ順に複数部数、出力する”電子ソート”と呼ばれる機能や、用紙のミスフィード(紙づまり)等のエラーにより複数のプリントがエラーした場合でも、原稿の再読み込みをすることなく自動的に再プリントを行うような機能を備えている。また、このようなスタンドアロンで使用される機能のほかに、スキャンした画像データをパソコンに転送したり、E-mailに添付して送信したり、スキャンした画像データをHDD内に一旦蓄積し、それを必要に応じてパソコン等へ転送する、ネットワーク経由の文書配信機能を備えている。   In recent years, copying machines (multifunction printers; MFPs) that integrate functions such as scanners, printers, and copiers have become very popular. Such an MFP includes a large-capacity storage device such as a hard disk device (hereinafter referred to as HDD), reads a plurality of originals only once, and stores (accumulates) the image data in the HDD or the like. Even if multiple print errors occur due to a function called “electronic sort” that outputs multiple copies of a document in page order, or an error such as paper misfeed (paper jam), the document is automatically read without re-reading. A function to perform reprinting is provided. In addition to these stand-alone functions, scanned image data can be transferred to a PC, sent as an e-mail attachment, or scanned image data can be temporarily stored in the HDD. A document distribution function via a network is provided to transfer files to a personal computer as necessary.

しかし、従来、このようなMFPから文書画像をプログレッシブ符号化してパソコン等へ転送し、パソコン等でプログレッシブ復号を行っても、転送の早期の段階では、文書の全体のレイアウトは把握できるものの、文字が判読不可能であるため文書の内容を把握できないことが多いという問題があった。   However, conventionally, even if a document image is progressively encoded from such an MFP and transferred to a personal computer or the like, and the progressive decoding is performed by the personal computer or the like, the overall layout of the document can be grasped at an early stage of transfer, but the character There is a problem that the contents of the document cannot often be grasped because of being unreadable.

このような問題の解決のために、例えば特許文献1に記載されている技術の利用が考えられる。特許文献1に記載の技術は、画像データをその属性に従って区分するレイアウト解析を行い、レイアウト解析により区分された領域の各々をタイルに分割し、分割によって得られたタイルに含まれる画像データの属性をタイルの属性として対応付け、対応付けされたタイルの属性に従ってプログレッシブ順序を切替えて符号化するというものである。より具体的には、文字属性のタイルはSNRプログレッション(レイヤプログレッション)を選択し、文字以外のタイルは解像度プログレッションを選択するものである。   In order to solve such a problem, for example, use of the technique described in Patent Document 1 can be considered. The technique described in Patent Document 1 performs layout analysis that classifies image data according to its attributes, divides each of the areas segmented by layout analysis into tiles, and attributes of image data included in the tiles obtained by the division Are associated as tile attributes, and the progressive order is switched according to the associated tile attributes for encoding. More specifically, tiles with character attributes select SNR progression (layer progression), and tiles other than characters select resolution progression.

しかし、このようなプログレッシブ順序を切り替える方式には別の問題がある。例えば、文字の含まれているタイルと文字の含まれていないタイルの境界部分でプログレッシブ順序が切り替わるため、それが画像上に違和感となって現れやすい。また、地図やチラシ等でよく見られる絵柄上の文字は”写真”属性と誤判定される場合があるが、その場合には解像度プログレッションとなるため文字判読性が低下するおそれがある。   However, there is another problem with the method of switching the progressive order. For example, since the progressive order is switched at the boundary between a tile including characters and a tile not including characters, it tends to appear uncomfortable on the image. In addition, characters on a pattern often seen on a map, a flyer, or the like may be erroneously determined as a “photo” attribute.

なお、本発明においては画像種別を判定する領域判定技術が利用される。領域判定に関する公知文献は極めて多いが、その例として特許文献2,3,4を挙げることができる。   In the present invention, an area determination technique for determining the image type is used. There are a large number of publicly-known documents related to area determination, and examples thereof include Patent Documents 2, 3, and 4.

特開2003−23544号公報JP 2003-23544 A 特開2000−175032号公報JP 2000-175032 A 特開2003−101770号公報JP 2003-101770 A 特開平11−220622号公報JP 11-220622 A

前記問題点に鑑み、本発明は、符号ストリームのプログレッシブ復号の早い段階で画像内容の把握を可能にするための、新規な画像処理装置及び画像処理方法を提供しようとするものである。   In view of the above problems, the present invention is intended to provide a novel image processing apparatus and image processing method for enabling grasping of image contents at an early stage of progressive decoding of a code stream.

請求項1の発明は、画像の符号化処理を行って、レイヤプログレッションのプログレッシブ符号ストリームを出力する符号化手段と、画像の画像種別を所定のブロック単位で判定する領域判定手段とを有し、前記符号化手段において前記レイヤプログレッションのプログレッシブ符号ストリームを生成するための符号ストリーム生成手段は、前記レイヤプログレッションのプログレッシブ符号ストリームの各レイヤに含める符号及び符号量を、ブロック毎に、前記領域判定手段による判定結果に従って制御する手段を含むことを特徴とする画像処理装置である。 The invention of claim 1 includes an encoding unit that performs an image encoding process and outputs a progressive code stream of a layer progression, and an area determination unit that determines an image type of an image in a predetermined block unit, The code stream generating means for generating the progressive code stream of the layer progressive in the encoding means is configured to include a code and a code amount included in each layer of the progressive code stream of the layer progressive by the area determining means for each block. An image processing apparatus including means for controlling according to a determination result.

請求項2の発明は、画像の符号ストリームを記憶する記憶手段と、画像の画像種別を所定のブロック単位で判定する領域判定手段と、前記記憶手段に記憶されている符号ストリームを取り込み、該符号ストリームから、レイヤプログレッションのプログレッシブ符号ストリームを生成する符号ストリーム生成手段とを有し、前記符号ストリーム生成手段は、前記レイヤプログレッションのプログレッシブ符号ストリームの各レイヤに含める符号及び符号量を、ブロック毎に、前記領域判定手段による判定結果に従って制御する手段を含むことを特徴とする画像処理装置である。 The invention of claim 2 takes in the code stream stored in the storage means for storing the code stream of the image, the area determination means for determining the image type of the image in a predetermined block unit, and the code stored in the storage means. Code stream generation means for generating a progressive code stream of layer progression from the stream, the code stream generation means, for each block, the code and code amount included in each layer of the progressive code stream of the layer progression , An image processing apparatus including means for controlling according to a determination result by the area determination means.

請求項3の発明は、前記符号ストリーム生成手段に含まれる前記制御する手段が、前記レイヤプログレッションのプログレッシブ符号ストリームのレイヤ単位の符号量を予め決められた設定符号量に制御することを特徴とする請求項1又は2の発明による画像処理装置である。 The invention according to claim 3 is characterized in that the control means included in the code stream generation means controls the code amount of each layer of the progressive code stream of the layer progression to a predetermined set code amount. An image processing apparatus according to claim 1 or 2.

請求項4の発明は、前記符号ストリーム生成手段に含まれる前記制御する手段が、前記レイヤプログレッションのプログレッシブ符号ストリームのレイヤ単位の設定符号量を、前記領域判定手段による判定結果に従って切り替えることを特徴とする請求項3の発明による画像処理装置である。 The invention according to claim 4 is characterized in that the control means included in the code stream generation means switches the set code amount in units of layers of the progressive code stream of the layer progression according to the determination result by the area determination means. According to a third aspect of the present invention, there is provided an image processing apparatus.

請求項5の発明は、前記領域判定手段により判定される画像種別に文字、黒文字、色文字及び網点のうちの少なくとも1つが含まれることを特徴とする請求項1,2,3又は4の発明による画像処理装置である。   According to a fifth aspect of the present invention, at least one of a character, a black character, a color character, and a halftone dot is included in the image type determined by the region determining means. An image processing apparatus according to the invention.

請求項6の発明は、前記領域判定手段が、画像の符号化処理の過程において生成される画像の周波数変換係数に基づいて画像種別を判定することを特徴とする請求項1又は2の発明による画像処理装置である。   The invention according to claim 6 is the invention according to claim 1 or 2, characterized in that the region determination means determines an image type based on a frequency conversion coefficient of an image generated in the course of an image encoding process. An image processing apparatus.

請求項7の発明は、前記領域判定手段が、前記符号ストリーム生成手段に取り込まれた符号ストリームに基づいて画像種別を判定することを特徴とする請求項2の発明による画像処理装置である。   The invention according to claim 7 is the image processing apparatus according to claim 2, wherein the area determination unit determines an image type based on a code stream fetched by the code stream generation unit.

請求項8の発明は、画像の符号化処理を行って、レイヤプログレッションのプログレッシブ符号ストリームを出力する符号化手段と、画像の特徴量を所定のブロック単位で検出する特徴量検出手段と、前記符号化手段において前記レイヤプログレッションのプログレッシブ符号ストリームを生成するための符号ストリーム生成手段は、前記レイヤプログレッションのプログレッシブ符号ストリームの各レイヤに含める符号及び符号量を、ブロック毎に、前記特徴量検出手段により検出された特徴量に従って多段階に制御する手段を含むことを特徴とする画像処理装置である。 According to an eighth aspect of the present invention, there is provided an encoding unit that performs an image encoding process and outputs a progressive code stream of a layer progression, a feature amount detection unit that detects an image feature amount in a predetermined block unit, and the code The code stream generating means for generating the progressive code stream of the layer progressive in the converting means detects the code and code amount included in each layer of the progressive code stream of the layer progressive by the feature quantity detecting means for each block According to another aspect of the present invention, there is provided an image processing apparatus including means for performing control in multiple stages according to the feature amount.

請求項9の発明は、画像の符号ストリームを記憶する記憶手段と、画像の特徴量を所定のブロック単位で検出する特徴量検出手段と、前記記憶手段に記憶されている符号ストリームを取り込み、該符号ストリームから、レイヤプログレッションのプログレッシブ符号ストリームを生成する符号ストリーム生成手段とを有し、前記符号ストリーム生成手段は、前記レイヤプログレッションのプログレッシブ符号ストリームの各レイヤに含める符号及び符号量を、ブロック毎に、前記特徴量検出手段により検出された特徴量に従って多段階に制御する手段を含むことを特徴とする画像処理装置である。 The invention of claim 9 is a storage means for storing a code stream of an image, a feature quantity detection means for detecting a feature quantity of an image in a predetermined block unit, and a code stream stored in the storage means. Code stream generation means for generating a progressive code stream of a layer progression from the code stream, the code stream generation means includes a code and a code amount included in each layer of the progressive code stream of the layer progression for each block An image processing apparatus comprising means for controlling in multiple stages according to the feature quantity detected by the feature quantity detection means.

請求項10の発明は、前記符号ストリーム生成手段に含まれる前記制御する手段が、前記レイヤプログレッションのプログレッシブ符号ストリームのレイヤ単位の符号量を予め決められた設定符号量に制御することを特徴とする請求項8又は9の発明による画像処理装置である。 The invention of claim 10 is characterized in that the control means included in the code stream generation means controls the code amount of each layer of the progressive code stream of the layer progression to a predetermined set code amount. An image processing apparatus according to claim 8 or 9.

請求項11の発明は、前記符号ストリーム生成手段に含まれる前記制御する手段が、前記レイヤプログレッションのプログレッシブ符号ストリームのレイヤ単位の設定符号量を、前記特徴量検出手段により検出された特徴量に従って多段階に切り替えることを特徴とする請求項10の発明による画像処理装置である。 According to an eleventh aspect of the present invention, the control means included in the code stream generation means increases the set code quantity for each layer of the progressive code stream of the layer progression according to the feature quantity detected by the feature quantity detection means. The image processing apparatus according to claim 10, wherein the image processing apparatus is switched to a stage.

請求項12の発明は、前記特徴量検出手段により検出される画像の特徴量がエッジ量であることを特徴とする請求項8,9,10又は11の発明による画像処理装置である。   According to a twelfth aspect of the invention, there is provided the image processing apparatus according to the eighth, ninth, tenth or eleventh aspect of the invention, wherein the feature quantity of the image detected by the feature quantity detecting means is an edge quantity.

請求項13の発明は、前記特徴量検出手段が、画像の符号化処理の過程において生成される画像の周波数変換係数に基づいて特徴量を検出することを特徴とする請求項8又は9の発明による画像処理装置である。   According to a thirteenth aspect of the present invention, the feature quantity detecting means detects a feature quantity based on a frequency conversion coefficient of an image generated in the course of an image encoding process. Is an image processing apparatus.

請求項14の発明は、前記特徴量検出手段が、前記符号ストリーム生成手段に取り込まれた符号ストリームに基づいて特徴量を検出することを特徴とする請求項9の発明による画像処理装置である。   The invention according to claim 14 is the image processing device according to claim 9, wherein the feature quantity detection means detects a feature quantity based on the code stream fetched by the code stream generation means.

請求項15の発明は、画像のプログレッシブ符号ストリームを受信してレイヤプログレッションのプログレッシブ復号を行う画像処理装置であって、画像の画像種別を所定のブロック単位で判定する領域判定手段と、受信したプログレッシブ符号ストリームに対するレイヤプログレッションのプログレッシブ復号において各レイヤに含める符号及び符号量を、ブロック毎に、前記領域判定手段による判定結果に従って制御する手段とを有することを特徴とする画像処理装置である。 The invention according to claim 15 is an image processing apparatus that receives a progressive code stream of an image and performs progressive decoding of a layer progression, and includes an area determination unit that determines an image type of an image in a predetermined block unit, and the received progressive An image processing apparatus comprising: means for controlling, for each block, a code and a code amount included in each layer in progressive decoding of layer progression for a code stream according to a determination result by the area determination unit.

請求項16の発明は、画像のプログレッシブ符号ストリームを受信してレイヤプログレッションのプログレッシブ復号を行う画像処理装置であって、画像の特徴量を所定のブロック単位で検出する特徴量検出手段と、受信したプログレッシブ符号ストリームに対するレイヤプログレッションのプログレッシブ復号において各レイヤに含める符号及び符号量を、ブロック毎に、前記特徴量検出手段により検出された特徴量に従って多段階に制御する手段とを有することを特徴とする画像処理装置である。 The invention according to claim 16 is an image processing apparatus that receives a progressive code stream of an image and performs progressive decoding of a layer progression, the feature amount detecting means for detecting a feature amount of the image in a predetermined block unit, and the received image And a means for controlling a code and a code amount to be included in each layer in the progressive decoding of the layer progression for the progressive code stream for each block in accordance with the feature amount detected by the feature amount detection means. An image processing apparatus.

請求項17の発明は、画像の画像種別を所定のブロック単位で判定する領域判定工程と、画像のレイヤプログレッションのプログレッシブ符号ストリームを生成する符号ストリーム生成工程とを有し、前記符号ストリーム生成工程は、前記レイヤプログレッションのプログレッシブ符号ストリームの各レイヤに含める符号及び符号量を、ブロック毎に、前記領域判定手段による判定結果に従って制御する工程を含むことを特徴とする画像処理方法である。 The invention of claim 17 includes a region determination step of determining an image type of an image in a predetermined block unit, and a code stream generation step of generating a progressive code stream of an image layer progression , wherein the code stream generation step The image processing method includes a step of controlling, for each block, a code and a code amount included in each layer of the progressive code stream of the layer progression according to a determination result by the region determination unit.

請求項18の発明は、画像の多値の特徴量を所定のブロック単位で検出する特徴量検出工程と、画像のレイヤプログレッションのプログレッシブ符号ストリームを生成する符号ストリーム生成工程とを有し、前記符号ストリーム生成工程は、前記レイヤプログレッションのプログレッシブ符号ストリームの各レイヤに含める符号及び符号量を、ブロック毎に、前記特徴量検出工程により検出された特徴量に従って多段階に制御する工程を含むことを特徴とする画像処理方法である。 The invention according to claim 18 includes a feature amount detection step of detecting a multi-value feature amount of an image in a predetermined block unit, and a code stream generation step of generating a progressive code stream of an image layer progression. The stream generation step includes a step of controlling a code and a code amount included in each layer of the progressive code stream of the layer progression in multiple stages according to the feature amount detected by the feature amount detection step for each block. This is an image processing method.

請求項19の発明は、画像のプログレッシブ符号ストリームを受信してレイヤプログレッションのプログレッシブ復号を行う画像処理方法であって、画像の画像種別を所定のブロック単位で判定する領域判定工程と、受信したプログレッシブ符号ストリームに対するレイヤプログレッションのプログレッシブ復号において各レイヤに含める符号及び符号量を、ブロック毎に、前記領域判定工程による判定結果に従って制御する工程とを有することを特徴とする画像処理方法である。 The invention of claim 19 is an image processing method for performing progressive decoding of layer progressive by receiving a progressive code stream of an image, comprising: an area determination step for determining an image type of an image in a predetermined block unit; and the received progressive And a step of controlling, for each block, a code and a code amount included in each layer in the progressive decoding of the layer progression for the code stream according to the determination result of the region determination step.

請求項20の発明は、画像のプログレッシブ符号ストリームを受信してレイヤプログレッションのプログレッシブ復号を行う画像処理方法であって、画像の特徴量を所定のブロック単位で検出する特徴量検出工程と、受信したプログレッシブ符号ストリームに対するレイヤプログレッションのプログレッシブ復号において各レイヤに含める符号及び符号量を、ブロック毎に、前記特徴量検出工程により検出された特徴量に従って多段階に制御する工程とを有することを特徴とする画像処理装方法である。 The invention of claim 20 is an image processing method for performing progressive decoding of a layer progression by receiving a progressive code stream of an image, the feature amount detecting step for detecting a feature amount of an image in a predetermined block unit, And a step of controlling the number of codes and code amounts included in each layer in progressive decoding of a layer progression with respect to a progressive code stream in multiple steps according to the feature amount detected by the feature amount detection step for each block. An image processing method.

請求項21の発明は、請求項1乃至16のいずれか1項の発明による画像処理装置の各手段としてコンピュータを機能させるプログラムである。   A twenty-first aspect of the invention is a program that causes a computer to function as each unit of the image processing apparatus according to any one of the first to sixteenth aspects of the invention.

請求項22の発明は、請求項21の発明によるプログラムが記録された、コンピュータが読み取り可能な情報記録媒体である。   A twenty-second aspect of the invention is a computer-readable information recording medium on which a program according to the twenty-first aspect of the invention is recorded.

請求項1乃至7,17の発明によれば、領域判定結果に従ったレイヤ分割構成の制御により、画像種別に適したレイヤ分割構成を有するプログレッシブ符号ストリームを生成できるため、それを外部装置へ転送してプログレッシブ復号する場合などに、転送もしくは復号の早い段階で画像内容の把握を可能にすることができる。また、プログレッシブ符号ストリームのプログレッシブ順序は領域判定結果によって切り替えられないため、画像種別の異なる領域の境界部に、プログレッシブ順序を切り替える方法に見られるような違和感を生じない。また、請求項2の発明によれば、記憶手段に記憶される符号ストリームのプログレッシブ順序や階層分割構成は任意であり、必ずしもプログレッシブである必要もないため、画像処理装置の内部での利用に適した構成の符号ストリームを記憶手段に記憶しておくことができ、一方、外部装置から要求された場合に、レイヤプログレッションの、画像種別に適したレイヤ分割構成のプログレッシブ符号ストリームを生成することができる。また、請求項3,4の発明によればプログレッシブ符号ストリームのレイヤ単位の符号量を保証でき、このことは低速の転送路を介して外部装置へ転送する場合などに有利である。さらに請求項4の発明によれば、例えば、非文字領域に比べ文字領域におけるレイヤ単位の設定符号量を大きくすることにより、プログレッシブ符号ストリームの転送、復号の早い段階での文字判読性を向上させることができる。また、請求項6,7の発明によれば、符号化処理又は符号ストリーム生成処理のためのハードウェア又はソフトウェアの内部で領域判定処理を完結させることができ、また領域判定処理も比較的簡易な処理とすることができるため、領域判定に関わるハードウェアやソフトウェアの簡略化に一般に有利である、等々の効果を得られる。 According to the first to seventh and seventeenth aspects of the present invention, a progressive code stream having a layer division configuration suitable for the image type can be generated by controlling the layer division configuration according to the region determination result, so that it is transferred to an external device. In the case of progressive decoding, it is possible to grasp the image contents at an early stage of transfer or decoding. In addition, since the progressive order of the progressive code stream is not switched depending on the region determination result, there is no sense of incongruity as seen in the method of switching the progressive order at the boundary between regions of different image types. According to the second aspect of the present invention, the progressive order and the hierarchical division configuration of the code stream stored in the storage means are arbitrary, and need not be progressive, so that they are suitable for use inside the image processing apparatus. structure of the code stream can be stored in the storage means has, on the other hand, can when requested by an external device, generating a progressive code streams of the layer divided structure suitable for layer progression, the image type . According to the invention of claim 3, 4 can ensure the code amount of the layer units of the progressive code stream, which is advantageous, for example, to transfer to an external device via a low-speed transfer path. Furthermore, according to the invention of claim 4, for example, by increasing the set code amount for each layer in the character area as compared with the non-character area, the character readability at an early stage of the transfer and decoding of the progressive code stream is improved. be able to. According to the sixth and seventh aspects of the present invention, the area determination process can be completed within the hardware or software for the encoding process or the code stream generation process, and the area determination process is relatively simple. Since the processing can be performed, it is possible to obtain various effects that are generally advantageous for simplification of hardware and software related to area determination.

請求項8乃至14,18の発明によれば、特徴量に従ったレイヤ分割構成の制御により、画像種別に適したレイヤ分割構成を有するプログレッシブ符号ストリームを生成できるため、それを外部装置へ転送してプログレッシブ復号する場合などに、転送もしくは復号の早い段階で画像内容の把握を可能にすることができる。また、領域判定結果に従ってレイヤ分割構成を制御する構成では、誤判定領域で本来の画像種別とは別の画像種別に対応したレイヤ分割構成とされる結果、復号画像に違和感を生じやすいが、レイヤ分割構成を特徴量に従って段階的に制御することにより、そのような違和感は生じにくくなる。また、プログレッシブ符号ストリームのプログレッシブ順序は特徴量によらず一定であるため、特徴量の異なる領域の境界部に、プログレッシブ順序を切り替える方法に見られるような違和感を生じない。また、請求項9の発明によれば、記憶手段に記憶される符号ストリームのプログレッシブ順序や階層分割構成は任意であり、必ずしもプログレッシブである必要もないため、画像処理装置の内部での利用に適した構成の符号ストリームを記憶手段に記憶しておくことができ、一方、外部装置から要求された場合に、レイヤプログレッションの、画像種別に適したレイヤ分割構成のプログレッシブ符号ストリームを生成することができる。また、請求項10,11の発明によればプログレッシブ符号ストリームのレイヤ単位の符号量を保証でき、このことは低速の転送路を介して外部装置へ転送する場合などに有利である。さらに請求項11の発明によれば、例えば、非文字領域に比べ文字領域におけるレイヤ単位の設定符号量を大きくすることにより、プログレッシブ符号ストリームの転送、復号の早い段階での文字判読性を向上させることができる。また、請求項12の発明では特徴量としてエッジ量を検出するが、エッジ量はエントロピー符号化の符号量との対応や文字らしさとの対応が良好であるため、文字判読性を向上させるようなレイヤ分割構成制御を的確に行うことができる。また、請求項13,14の発明によれば符号化処理又は符号ストリーム生成処理のためのハードウェア又はソフトウェアの内部で特徴量検出処理を完結させることができ、また特徴量検出処理も比較的簡易な処理とすることができるため、特徴量検出に関わるハードウェアやソフトウェアの簡略化に一般に有利である、等々の効果が得られる。 According to the eighth to fourteenth and eighteenth aspects of the present invention, a progressive code stream having a layer division configuration suitable for the image type can be generated by controlling the layer division configuration according to the feature quantity, so that it is transferred to an external device. Thus, in the case of progressive decoding, it is possible to grasp the image content at an early stage of transfer or decoding. In the configuration for controlling the layer divided configuration in accordance with area determination result, the result of the original image type in erroneous determination region is a layer divided configuration corresponding to a different image type, but susceptible to discomfort in the decoded image, the layer By controlling the divided configuration in stages according to the feature amount, such a sense of incongruity is less likely to occur. In addition, since the progressive order of the progressive code stream is constant regardless of the feature amount, there is no sense of incongruity as seen in the method of switching the progressive order at the boundary between regions having different feature amounts. According to the ninth aspect of the present invention, the progressive order and the hierarchical division configuration of the code stream stored in the storage means are arbitrary, and need not be progressive, and are therefore suitable for use inside the image processing apparatus. structure of the code stream can be stored in the storage means has, on the other hand, can when requested by an external device, generating a progressive code streams of the layer divided structure suitable for layer progression, the image type . Further, according to the inventions of claims 10 and 11, the code amount of the progressive code stream can be guaranteed for each layer , which is advantageous when transferring to an external device via a low-speed transfer path. Further, according to the invention of claim 11, for example, by increasing the set code amount for each layer in the character area as compared with the non-character area, the character legibility in the early stage of transfer and decoding of the progressive code stream is improved. be able to. Further, although the edge amount is detected as the feature amount in the invention of claim 12, since the edge amount has a good correspondence with the code amount of the entropy coding and the character-likeness, the character readability is improved. Layer division configuration control can be performed accurately. According to the inventions of claims 13 and 14, the feature amount detection process can be completed within the hardware or software for the encoding process or code stream generation process, and the feature amount detection process is relatively simple. Therefore, it is possible to obtain advantageous effects that are generally advantageous for simplification of hardware and software related to feature amount detection.

請求項15,19の発明によれば、受信した符号ストリームのプログレッシブ復号のレイヤ分割構成が領域判定結果に従って制御されるため、復号の早い段階で画像内容の把握を可能にすることができる。また、復号のプログレッシブ順序は領域判定結果に応じて切り替えられないため、画像種別の異なる領域の境界部に、プログレッシブ順序を切り替える方法に見られるような違和感を生じない、等々の効果を得られる。 According to the fifteenth and nineteenth aspects of the present invention, the layer division configuration of the progressive decoding of the received code stream is controlled according to the region determination result, so that the image content can be grasped at an early stage of decoding. In addition, since the progressive order of decoding cannot be switched according to the region determination result, it is possible to obtain an effect such as not causing a sense of incongruity as seen in the method of switching the progressive order at the boundary between regions of different image types.

請求項16,20の発明によれば、受信した符号ストリームのプログレッシブ復号のレイヤ分割構成が特徴量に従って段階的に制御されるため、復号の早い段階で画像内容の把握を可能にすることができる。また、領域判定結果に従って階層分割構成を制御する構成では、誤判定領域で本来の画像種別とは異なった画像種別に適したレイヤ分割構成とされる結果、復号画像に違和感を生じやすいが、レイヤ分割構成を特徴量に従って段階的に制御する構成であるため、そのような違和感は生じにくい。また、プログレッシブ順序は特徴量によらず一定であるため、特徴量の異なる領域の境界部に、プログレッシブ順序を切り替える方法に見られるような違和感を生じない、等々の効果を得られる。 According to the inventions of claims 16 and 20, since the layer division configuration of progressive decoding of the received code stream is controlled stepwise according to the feature amount, it is possible to grasp the image content at an early stage of decoding. . In the configuration for controlling the hierarchical division structure according to the region determination result, the result is a layer divided configuration suitable for different image type from the original image type in erroneous determination area, but prone to discomfort in the decoded image, the layer Such a sense of incongruity is unlikely to occur because the divided configuration is configured to be controlled step by step according to the feature amount. In addition, since the progressive order is constant regardless of the feature amount, it is possible to obtain an effect such as not causing a sense of incongruity as seen in the method of switching the progressive order at the boundary between regions having different feature amounts.

また、請求項21,22の発明によれば、コンピュータを利用し請求項1乃至20の発明を容易に実施することができる。   According to the inventions of claims 21 and 22, the inventions of claims 1 to 20 can be easily implemented using a computer.

本発明の実施の形態の例として、図1に示すようなサーバ/クライアント環境で用いられる画像処理装置を挙げることができる。   As an example of an embodiment of the present invention, an image processing apparatus used in a server / client environment as shown in FIG. 1 can be cited.

図1において、サーバ1はMFPなどの画像処理装置であり、クライアント3はプログレッシブ復号処理の可能な画像処理装置やパソコンなどである。サーバ1とクライアント3の間の転送路2は、例えばLAN、イントラネット、インターネットなどのネットワークの回線である。サーバ1は、クライアント3からのコマンドを受信し、画像のプログレッシブ符号ストリームを送信する。クライアント3は、プログレッシブ符号ストリームを受信してプログレッシブに復号を行うことにより、モニタ装置4に画像を段階的に画質が向上するように表示する。   In FIG. 1, a server 1 is an image processing apparatus such as an MFP, and a client 3 is an image processing apparatus capable of progressive decoding processing, a personal computer, or the like. A transfer path 2 between the server 1 and the client 3 is a network line such as a LAN, an intranet, or the Internet. The server 1 receives a command from the client 3 and transmits a progressive code stream of an image. The client 3 receives the progressive code stream and performs progressive decoding, thereby displaying the image on the monitor device 4 so that the image quality is improved step by step.

請求項1〜14,17,18の発明は、サーバ1として用いられるMFPなどの画像処理装置に関わるものである。また、請求項15,16,19,20の発明は、クライアント3として用いられる画像処理装置に関わるものである。ただし、本発明は、画像のプログレッシブ符号ストリームを生成し、それをプログレッシブ復号する機能を持つスタンドアローンの画像処理装置にも適用し得るものである。   The inventions of claims 1 to 14, 17 and 18 relate to an image processing apparatus such as an MFP used as the server 1. The inventions of claims 15, 16, 19, and 20 relate to an image processing apparatus used as the client 3. However, the present invention can also be applied to a stand-alone image processing apparatus having a function of generating a progressive code stream of an image and progressively decoding it.

以下、本発明の実施の形態を、いくつかの実施例に関し詳細に説明する。なお、説明の重複を減らすため、説明中で参照される複数の図面において同一部分又は対応部分には同一の参照符号を付し、また、一部の図面を複数の実施例の説明に利用する。また、各実施例における圧縮符号化方式として、先に概要を説明したJPEG2000の基本方式を想定する。   Hereinafter, embodiments of the present invention will be described in detail with reference to several examples. In addition, in order to reduce duplication of description, the same reference numerals are given to the same or corresponding parts in a plurality of drawings referred to in the description, and some drawings are used for the description of a plurality of embodiments. . Further, the JPEG 2000 basic method, which has been outlined above, is assumed as the compression encoding method in each embodiment.

図2は、本実施例に係る画像処理装置のブロック図である。この画像処理装置は、サーバ1として利用し得るMFPであり、原稿を読み取るスキャナ部9、スキャナ部9から入力された画像データに対し公知のγ補正処理や空間フィルタ処理等の画像処理を行うスキャナ画像処理部11、スキャナ9から入力された画像データによって像域分離処理を行う像域分離処理部10、画像データの符号化処理を行って符号ストリームを出力するエンコーダ12、装置全体の動作命令やコントローラユニット内のデータ処理を行うCPU13、画像データや圧縮符号化された符号データを一時的に記憶するワーク領域として使用される揮発性のメモリ14、符号データ等を保存、蓄積するためのハードディスク装置(HDD)15、操作者とのインターフェースである、スタートボタンや動作モード等の設定ボタンなどを有する操作部16、外部転送路2を介してクライアント3等の外部機器とデータを送受信する外部転送路インターフェース(I/F)17、符号データを復号処理して画像データを出力するデコーダ18、画像データに公知の色補正処理、γ変換処理、擬似階調処理等を施すプリンタ画像処理部19、前記構成要素12〜18を接続するバス20、プリンタ画像処理部19より入力される画像データを記録紙等の記録媒体へ出力するプリンタ部21から構成されている。   FIG. 2 is a block diagram of the image processing apparatus according to the present embodiment. This image processing apparatus is an MFP that can be used as the server 1, and is a scanner unit 9 that reads a document, and a scanner that performs image processing such as known γ correction processing and spatial filter processing on image data input from the scanner unit 9. An image processing unit 11; an image region separation processing unit 10 that performs image region separation processing based on image data input from the scanner 9; an encoder 12 that performs image data encoding processing and outputs a code stream; CPU 13 that performs data processing in the controller unit, volatile memory 14 that is used as a work area for temporarily storing image data and compression-encoded code data, and a hard disk device for storing and accumulating code data and the like (HDD) 15, an operation with a start button, an operation mode setting button, etc., which is an interface with the operator 16, an external transfer path interface (I / F) 17 that transmits / receives data to / from an external device such as the client 3 via the external transfer path 2, a decoder 18 that decodes the code data and outputs image data, and the image data A printer image processing unit 19 that performs known color correction processing, γ conversion processing, pseudo gradation processing, and the like, a bus 20 that connects the constituent elements 12 to 18, and image data input from the printer image processing unit 19 is recorded on recording paper, etc. Printer unit 21 for outputting to the recording medium.

まず、この画像処理装置における基本的な複写動作について説明する。ユーザにより操作部16上のスタートボタン(図示無し)が押下されると、操作部16よりバス20を介して信号を受信したCPU13は、複写動作に先立ち必要なパラメータの設定等を行った後、所定の複写動作のための制御を行う。   First, a basic copying operation in this image processing apparatus will be described. When a start button (not shown) on the operation unit 16 is pressed by the user, the CPU 13 that has received a signal from the operation unit 16 via the bus 20 performs setting of necessary parameters prior to the copying operation, and the like. Control for a predetermined copying operation is performed.

スキャナ部9は、原稿をスキャンして図示しないCCDによって光電変換を行い、デジタル信号であるRed(R),Green(G),Blue(B)のカラー画像データへと変換して出力する。スキャナから出力された画像データに対しスキャナ画像処理部11で公知の画像処理が行われ、また、この画像データに基づいて像域分離処理部10で像域分離処理が行われる。スキャナ画像処理部11における画像処理の内容は、本発明において特に限定されるものではないが、その例をあげれば、CCDから読込まれた反射率属性の信号を、濃度属性に変換するγ変換やlog変換、スキャナ光学系のMTFの劣化補正、モアレ抑制を目的とした空間フィルタ処理、原稿地肌を除去する地肌除去処理、スキャナの色空間を例えばsRGBなどの標準色空間へと変換する色変換処理等が考えられる。なお、このような処理において、像域分離処理部10から出力される分離信号を使用して、文字部と非文字部にて異なる処理を行うように構成してもよい。   The scanner unit 9 scans an original, performs photoelectric conversion by a CCD (not shown), converts the digital image into red (R), Green (G), and Blue (B) color image data and outputs the color image data. Known image processing is performed on the image data output from the scanner by the scanner image processing unit 11, and image area separation processing is performed by the image area separation processing unit 10 based on the image data. The content of the image processing in the scanner image processing unit 11 is not particularly limited in the present invention. For example, γ conversion for converting a reflectance attribute signal read from a CCD into a density attribute, log conversion, MTF degradation correction of scanner optical system, spatial filter processing for moire suppression, background removal processing for removing original background, color conversion processing for converting scanner color space to standard color space such as sRGB Etc. are considered. In such a process, the separation signal output from the image area separation processing unit 10 may be used to perform different processing for the character part and the non-character part.

像域分離処理部10では、画像を画素単位にて文字と非文字に像域分離を行い、1bitの分離信号を出力する。ここでの像域分離処理には公知の像域分離処理技術を使用すればよく、その処理方法は特に限定されないが、その好適な方法の一例として特許文献2に記載された像域分離方法がある。その概要は次の通りである。   The image area separation processing unit 10 separates an image into characters and non-characters in units of pixels and outputs a 1-bit separation signal. A known image area separation processing technique may be used for the image area separation processing here, and the processing method is not particularly limited, but the image area separation method described in Patent Document 2 is an example of a suitable method. is there. The outline is as follows.

RGB画像データの場合に、Gデータに関し、無地上文字領域の判定と網点上文字領域の判定を行う。無地上文字領域の判定においては、Gデータをエッジ強調フィルタを適用してから2つの閾値を用いて白、黒、その他に3値化し、黒エッジパターン及び白エッジパターンとのマッチングを行い、例えば5×5画素のブロック内に白エッジパターンと一致する画素及び黒エッジパターンと一致する画素がそれぞれ1個以上存在する場合には、そのブロック(又は中心画素)を無地上文字領域と判定する。網点上文字領域の判定においては、Gデータを平滑化フィルタを適用してから別の2つの閾値を用いて白、黒、その他に3値化し、黒エッジパターン及び白エッジパターンとのマッチングを行い、5×5画素のブロック内に白エッジパターンと一致する画素及び黒エッジパターンと一致する画素がそれぞれ1個以上存在する場合には、そのブロック(又は中心画素)を網点上文字領域と判定する。そして、無地上文字領域又は網点上文字領域と判定された画素を最終的に文字領域とし、それ以外の画素を最終的に非文字領域とする。 In the case of RGB image data, for the G data, the determination of the plain character area and the determination of the halftone dot character area are performed. In the determination of the plain text region, the G data is applied to the edge enhancement filter, and then ternarized into white, black, and others using two threshold values, and matching with the black edge pattern and the white edge pattern is performed. If there are one or more pixels matching the white edge pattern and one pixel matching the black edge pattern in the 5 × 5 pixel block, the block (or the central pixel) is determined as a non-ground character area. In the determination of the character area on the halftone dot , the G data is applied with a smoothing filter and then ternarized into white, black, and others using another two threshold values, and matching with the black edge pattern and the white edge pattern is performed. If there are one or more pixels that match the white edge pattern and one that matches the black edge pattern in the 5 × 5 pixel block, the block (or the center pixel) is designated as a half-dot character area. judge. Then, a pixel determined to be a plain character area or a halftone dot character area is finally set as a character area, and other pixels are finally set as non-character areas.

このような画像データに基づいた像域分離方法は、画素単位の精度の高い像域分離が可能であり、したがって、像域分離結果を利用することによりタイルの領域判定を精度よく行うことができる。なお、後述のようにエンコーダ12において色変換が行われるため、色変換後のY信号を用いて同様の像域分離を行ってもよく、かかる態様も本実施例に包含される。 The image area separation method based on such image data enables high-accuracy image area separation in units of pixels . Therefore, it is possible to accurately determine the tile area by using the image area separation result. . Since color conversion is performed in the encoder 12 as will be described later, similar image area separation may be performed using the Y signal after color conversion, and this aspect is also included in this embodiment.

スキャナ画像処理部11により処理された画像データと、像域分離処理部10より出力される分離信号は、エンコーダ12に入力される。エンコーダ12において、画像データは分離信号に応じて圧縮符号化され、符号ストリームが生成される。エンコーダ12は本発明に直接関連する部分であり、その詳細は後述する。   The image data processed by the scanner image processing unit 11 and the separation signal output from the image area separation processing unit 10 are input to the encoder 12. In the encoder 12, the image data is compression-coded according to the separated signal, and a code stream is generated. The encoder 12 is directly related to the present invention, and details thereof will be described later.

エンコーダ12からバス20に出力された符号ストリームはメモリ14に一旦記憶され、その後、メモリ14から読み出されてHDD15に保存される。また、HDD15への保存と並行して、符号ストリームはデコーダ18に入力され復号処理が行われる。上記のようなバスの制御は、CPU13によって行われる。   The code stream output from the encoder 12 to the bus 20 is temporarily stored in the memory 14, and then read from the memory 14 and stored in the HDD 15. In parallel with the storage in the HDD 15, the code stream is input to the decoder 18 to be decoded. The bus control as described above is performed by the CPU 13.

なお、通常、このようにバスに接続されたメモリへのデータの書き込みアクセスは、バスに接続された各処理部がDMA(Direct Memory Accsess)によって数十バイトから数キロバイトの一定量のデータ単位で行われるので、バスの接続部はバッファとDMAコントローラで構成されているのが一般的であるが、説明の簡略化のためDMAコントローラは省略されている。また、メモリからのデータの読み込みも同様にDMAによって行われるので入力バッファメモリが必要となるが、これも省略されている。   Normally, data write access to the memory connected to the bus in this way is performed by each processing unit connected to the bus in a certain data unit of several tens of bytes to several kilobytes by DMA (Direct Memory Access). In general, the bus connection section is composed of a buffer and a DMA controller, but the DMA controller is omitted for the sake of simplicity. In addition, since reading of data from the memory is similarly performed by DMA, an input buffer memory is necessary, but this is also omitted.

また、HDD15への符号データの保存の際にメモリ14への書き込みを介在させているが、その理由は次の通りである。HDDは、ディスクの中心に近い側と遠い側等で読み出し/書き込み速度が変化したり、読み出し/書き込みエラー等を生じる可能性があり、半導体メモリと比較すると同期信号の読み出し/書き込みには向かないデバイスである。そのため、同期信号であるエンコーダ12の出力データを直接書き込まずに、一旦メモリ14に記憶された符号データを非同期に書き込み安定的に使用するためである。読み出し時も同様である。ただし、1ページ単位のマクロ的にみれば、HDDも同期して動作することになる。 Further, when the code data is stored in the HDD 15, the writing into the memory 14 is interposed for the following reason. HDDs may change read / write speeds or cause read / write errors on the side closer to and far from the center of the disk, and may not be suitable for reading / writing synchronization signals compared to semiconductor memories. It is a device. For this reason, the code data once stored in the memory 14 is asynchronously written and used stably without directly writing the output data of the encoder 12 as a synchronization signal. The same applies to reading. However, the HDD operates in synchronism when viewed in a macro for each page.

なお、HDD15に保存された符号データは、複写時に紙詰まり等が発生した場合のバックアップや、多ページの原稿を多部数、ページ順に出力する電子ソート機能、外部機器へのデータ配信等に利用される。   The code data stored in the HDD 15 is used for backup when a paper jam or the like occurs during copying, an electronic sort function that outputs a multi-page document in multiple copies in page order, data distribution to an external device, etc. The

デコーダ18は、メモリ14から符号ストリームが入力されると、所定の復号処理を行い画像データをプリンタ画像処理部19に出力する。プリンタ画像処理部19での画像処理は、スキャナ画像処理部11と同様、本発明において特に限定されることはないが、例をあげれば、RGB信号をプリンタの色材信号、例えばCyan(C),Magenta(M),Yellow(Y),Black(K)へ変換しカラーマッチングを行う色補正、墨生成、画像データのγ特性をプリンタ21のγ特性に合わせるγ補正、ディザや誤差拡散といったハーフトーンへの変換を行う擬似階調処理等が考えられる。このような画像処理が行われた画像データは、プリンタ21にて記録紙などに印字されて出力され、複写動作が完了する。   When the code stream is input from the memory 14, the decoder 18 performs a predetermined decoding process and outputs image data to the printer image processing unit 19. Image processing in the printer image processing unit 19 is not particularly limited in the present invention, as in the scanner image processing unit 11, but for example, RGB signals are converted into printer color material signals such as Cyan (C). , Magenta (M), Yellow (Y), Black (K), color matching for color matching, black generation, gamma correction to match the γ characteristics of the image data with the γ characteristics of the printer 21, half dither and error diffusion Pseudo gradation processing for converting to a tone can be considered. The image data that has been subjected to such image processing is printed on a recording sheet or the like by the printer 21 and output, and the copying operation is completed.

複写動作完了後には、HDD15内に複写動作途中の画像データが圧縮符号化された状態で保存されたことになる。このようにHDD15内に画像データを保存しておくことによって、画像データを外部機器へ転送したり、必要になった時に再プリントをすることが可能となる。なお、原稿をHDD15内に電子データとして保存することのみ必要な場合は、デコーダ18以降の処理は行われない。   After the copying operation is completed, the image data in the middle of the copying operation is stored in the HDD 15 in a compressed and encoded state. By storing the image data in the HDD 15 in this way, the image data can be transferred to an external device or reprinted when necessary. If it is only necessary to save the document as electronic data in the HDD 15, the processing after the decoder 18 is not performed.

次に、エンコーダ12について説明する。図3は、本実施例に係るエンコーダ12のブロック図である。このエンコーダ12は、JPEG2000基本方式に準拠した符号化手段であり、入力バッファ30と、符号化処理に直接関わる色変換処理部31、離散ウェーブレット変換(DWT)処理部32、エントロピー符号化部35、ポスト量子化処理部36及び符号ストリーム生成処理部37と、領域判定処理部34とからなる。   Next, the encoder 12 will be described. FIG. 3 is a block diagram of the encoder 12 according to the present embodiment. The encoder 12 is an encoding unit compliant with the JPEG2000 basic system, and includes an input buffer 30, a color conversion processing unit 31 directly related to the encoding process, a discrete wavelet transform (DWT) processing unit 32, an entropy encoding unit 35, The post quantization processing unit 36, the code stream generation processing unit 37, and the region determination processing unit 34 are included.

スキャナ画像処理部11及び像域分離処理部10より出力されるRGB画像データ及び分離データは入力バッファ30に一旦蓄積され、タイル単位に読み出される。スキャナ9からの出力データはラスタデータの形式であるので、入力バッファ30でラスタ/ブロック変換が行われる。 The RGB image data and separation data output from the scanner image processing unit 11 and the image area separation processing unit 10 are temporarily stored in the input buffer 30 and read out in tile units. Since the output data from the scanner 9 is in the form of raster data, the input buffer 30 performs raster / block conversion.

入力バッファ30より読み出された画像データは、色変換処理部31にて輝度/色差信号(YUV)に変換される。色変換後の信号は、DWT処理部32において各々のコンポーネント毎にDWTが行われる。DWT処理部32から出力されたDWT係数は、エントロピー符号化部35にてエントロピー符号化される。エントロピー符号化された符号データは、ポスト量子化処理部36にて必要に応じて符号の切り捨てによるポスト量子化処理を施される。通常、スキャナにより入力された画像データにはノイズ成分が含まれている場合が多く、画質に影響しない程度にポスト量子化を行うことにより圧縮率を向上させることができる。ただし、可逆の符号を出力する場合は、ポスト量子化は行われない。ポスト量子化処理後の符号データは符号ストリーム生成処理部37へ入力される。なお、ポスト量子化の代わりに、DWT処理部32から出力されたDWT係数に対してスカラー量子化を行うように構成してもよい。   The image data read from the input buffer 30 is converted into a luminance / color difference signal (YUV) by the color conversion processing unit 31. The signal after color conversion is subjected to DWT for each component in the DWT processing unit 32. The DWT coefficient output from the DWT processing unit 32 is entropy encoded by the entropy encoding unit 35. The entropy-encoded code data is subjected to post-quantization processing by code truncation as necessary in the post-quantization processing unit. Normally, image data input by a scanner often contains a noise component, and the compression rate can be improved by performing post-quantization to such an extent that the image quality is not affected. However, post-quantization is not performed when a reversible code is output. The code data after the post-quantization processing is input to the code stream generation processing unit 37. Instead of post-quantization, scalar quantization may be performed on the DWT coefficient output from the DWT processing unit 32.

一方、領域判定処理部34では、タイル単位で分離信号(文字の時に”1”となる1bit信号)のORをとることによって、文字タイルであるか非文字タイルであるかの領域判定を行い、その結果を表す領域判定信号を出力する。この領域判定信号は符号ストリーム生成処理部37へ入力される。なお、この領域判定信号をポスト量子化処理部36へ入力して、文字タイルと非文字タイルとでポスト量子化処理の内容を変更させる構成としてもよく、かかる態様も本実施例に含まれる。   On the other hand, the area determination processing unit 34 performs area determination as to whether a tile is a character tile or a non-character tile by ORing a separation signal (a 1-bit signal that is “1” when a character is used) in tile units. An area determination signal representing the result is output. This region determination signal is input to the code stream generation processing unit 37. Note that the region determination signal may be input to the post-quantization processing unit 36 to change the contents of the post-quantization processing between the character tile and the non-character tile, and this aspect is also included in this embodiment.

符号ストリーム生成処理部37では、ポスト量子化処理後の各タイルの符号データの符号を並べ替えることにより、所定のプログレッシブ順序(本実施例ではレイヤ(LRCP)プログレッション)によるプログレッシブ符号を生成し、当該タイル分のプログレッシブ符号ストリームを構成し、それをヘッダデータを付加してバス20を介しメモリ14へ出力する。この各タイルの符号ストリームの形成の際に、領域判定処理部34からの領域判定信号が文字タイルを示すか非文字タイルを示すかによって、符号ストリームの階層分割構成(ここではレイヤ分割構成、換言すれば符号の優先順位)を変更する。   The code stream generation processing unit 37 generates a progressive code in a predetermined progressive order (in this embodiment, a layer (LRCP) progression) by rearranging the codes of the code data of each tile after the post-quantization processing, A progressive code stream for tiles is formed, and header data is added to the stream and output to the memory 14 via the bus 20. When the code stream of each tile is formed, the code stream has a hierarchical division configuration (here, a layer division configuration, in other words, depending on whether the region determination signal from the region determination processing unit 34 indicates a character tile or a non-character tile. If so, the priority order of the codes is changed.

本実施例においては符号ストリームのプログレッシブ順序としてレイヤ(LRCP)プログレッションを使用する。解像度プログレッションでは、低解像度を復号した後、高解像度の復号というプログレッシブ順序になるので、文字等の高周波成分に高いエネルギーを有する画像では一般にレイヤプログレッションの方が適する。一方、レイヤプログレッションにおいては、上位bitから下位bit側への復号順序を守らなければならないという制約はあるものの、コードブロック単位でレイヤ境界は自由に設定可能であり、階層分割構成の自由度は高くなっている。これがレイヤプログレッションを使用する主たる理由である。   In the present embodiment, layer (LRCP) progression is used as the progressive order of the code stream. In the resolution progression, the progressive order of decoding the low resolution and then the high resolution is performed, so that the layer progression is generally suitable for an image having high energy in high frequency components such as characters. On the other hand, in layer progression, although there is a restriction that the decoding order from the upper bit to the lower bit must be observed, the layer boundary can be set freely in units of code blocks, and the degree of freedom of the hierarchical division configuration is high. It has become. This is the main reason for using layer progression.

ここまでの説明から明らかなように、符号ストリーム生成処理部37は請求項1の発明における符号ストリーム生成手段に対応し、領域判定処理部34は像域分離処理部10とともに請求項1の発明における領域判定手段を構成するものである。また、タイルが請求項1の発明におけるブロックに相当する。   As is apparent from the above description, the code stream generation processing unit 37 corresponds to the code stream generation means in the invention of claim 1, and the region determination processing unit 34 together with the image area separation processing unit 10 in the invention of claim 1. It constitutes an area determination means. A tile corresponds to a block in the invention of claim 1.

また、本実施例は請求項17の発明の一実施例でもある。すなわち、符号ストリーム生成処理部37による処理は請求項17の発明における符号ストリーム生成工程に対応し、領域判定処理部34による処理は請求項17の発明における領域判定工程に対応する。   This embodiment is also an embodiment of the invention of claim 17. That is, the processing by the code stream generation processing unit 37 corresponds to the code stream generation step in the invention of claim 17, and the processing by the region determination processing unit 34 corresponds to the region determination step in the invention of claim 17.

ここで、文字タイル/非文字タイルの別によるレイヤ分割構成(階層分割構成)の制御について説明する。   Here, the control of the layer division configuration (hierarchical division configuration) by character tile / non-character tile will be described.

図4は、レイヤ分割構成を説明するための模式図であり、(A)は文字タイル用のレイヤ分割構成を、(B)は非文字タイル用のレイヤ分割構成を表している。ここでは、説明の簡略化のため、デコンポジションレベル数2のウェーブレット変換としている。また、コンポーネント、プレシンクト、コードブロックの概念は省略されている。   4A and 4B are schematic diagrams for explaining the layer division configuration. FIG. 4A shows a layer division configuration for character tiles, and FIG. 4B shows a layer division configuration for non-character tiles. Here, in order to simplify the description, the wavelet transform with two decomposition levels is used. Further, the concepts of component, precinct, and code block are omitted.

図4において、横軸は各サブバンド名を、縦軸はレイヤ番号を表している。レイヤ数は4としているが、これは例にすぎない。図30の(A)と同様、図中の塗りつぶされた長方形は各サブバンド、各レイヤにおける符号を示し、その大きさは符号量の割合を模式的に表している。   In FIG. 4, the horizontal axis represents the name of each subband, and the vertical axis represents the layer number. Although the number of layers is four, this is only an example. As in FIG. 30A, the filled rectangles in the figure indicate codes in each subband and each layer, and the size schematically represents the ratio of the code amount.

文字タイルと非文字タイルのレイヤ分割構成の違いを説明する。特に、レイヤ0に特徴がある。   The difference between the character tile and non-character tile layered configurations will be described. In particular, layer 0 is characterized.

文字タイルにおいては、図4(A)に示すように、最上位のレイヤ0から1HL、1LHサブバンドの符号を含ませることによって、高周波成分に高い値を持つ文字画像の再現性を高めている。但し、上位レイヤから符号量が大きくなる(圧縮率が低下する)ことをなるべく避けるため、斜め成分である1HHサブバンドの符号量は0とし、2HHサブバンドの符号量も2HL、2LHサブバンドと比較し小さくしている。   In the character tile, as shown in FIG. 4A, the reproducibility of the character image having a high value in the high frequency component is enhanced by including the codes of the highest layer 0 to 1HL and 1LH subbands. . However, the code amount of the 1HH subband, which is an oblique component, is set to 0, and the code amount of the 2HH subband is also 2HL and 2LH subbands, in order to avoid as much as possible the code amount from the higher layer (decrease in compression rate). Compared to smaller.

一方、非文字タイルにおいては、図4(B)に示すように、レイヤ0ではデコンポジションレベル1の成分の符号量を全て0として圧縮率の低下を防いでいる。レイヤ1では、高周波成分の上位bitを含ませている。デコンポジションレベルが高い(解像度が低い)成分であっても、下位bitはノイズ成分である可能性が高いので、そのような成分よりも高周波の上位bitを優先させることによって、エッジ等を含む写真の解像度をプログレッシブの早期段階から向上させることを意図したレイヤ分割構成としているわけである。CCD等の光電変換素子を使用して画像を取得する画像入力機器であるスキャナやデジタルカメラでは、画像にノイズ成分を含む場合が多いので、このようなレイヤ分割構成が特に有効である。   On the other hand, in the non-character tile, as shown in FIG. 4B, in layer 0, the code amount of the component of decomposition level 1 is all set to 0 to prevent the compression rate from being lowered. Layer 1 includes the upper bits of the high-frequency component. Even if it is a component with a high decomposition level (low resolution), the lower bits are likely to be noise components, so by giving priority to the upper bits of the higher frequency over such components, photos including edges etc. Therefore, the layer resolution is intended to improve the resolution of the image from the early stage of progressive. In a scanner or a digital camera that is an image input device that acquires an image using a photoelectric conversion element such as a CCD, a noise component is often included in the image. Therefore, such a layer division configuration is particularly effective.

このようにレイヤ分割構成が制御されたレイヤプログレッションの符号ストリームは、外部I/F17より外部転送路2を介しクライアント3などの外部機器へ転送しプログレッシブ復号するならば、転送もしくは復号の早い段階で文字の判読が可能になるため画像内容の把握が容易になる。また、画像の写真部等のエッジ部分の再生も早期の段階で高画質に再生可能となる。また、文字タイルと非文字タイルとで符号ストリームのプログレッシブ順序が切り替わることはないため、文字タイルと非文字タイルの境界部にプログレッシブ順序の違いによる違和感が生じることもない。   If the layer progression code stream in which the layer division configuration is controlled in this way is transferred from the external I / F 17 to an external device such as the client 3 via the external transfer path 2 and is progressively decoded, it is transferred or decoded at an early stage. Since the characters can be read, it is easy to grasp the image contents. In addition, it is possible to reproduce an edge portion such as a photograph portion of an image with high image quality at an early stage. Further, since the progressive order of the code stream is not switched between the character tile and the non-character tile, there is no sense of incongruity due to the difference in the progressive order at the boundary between the character tile and the non-character tile.

図5に本実施例に係る符号ストリーム生成処理部37のブロック図を示す。図示のように、本実施例の符号ストリーム生成処理部37は、入力符号バッファ41、符号量カウンタ42、パターンテーブル43、セレクタ44、パケット生成処理部45、タイルヘッダ生成処理部46、及び、出力符号バッファ47から構成されている。なお、入力符号バッファ41と出力符号バッファ47を分割せず、同じメモリを使用するような構成にしてもよい。   FIG. 5 is a block diagram of the code stream generation processing unit 37 according to the present embodiment. As shown in the figure, the code stream generation processing unit 37 of this embodiment includes an input code buffer 41, a code amount counter 42, a pattern table 43, a selector 44, a packet generation processing unit 45, a tile header generation processing unit 46, and an output. It consists of a code buffer 47. The input code buffer 41 and the output code buffer 47 may not be divided and the same memory may be used.

符号ストリーム生成処理動作は以下の通りである。ポスト量子化処理部36から出力された符号データは、入力符号バッファ41に、サブバンドのコードブロック単位で記憶される。入力符号バッファ41にはそれが模式的に表されており、CD1〜CD4・・・・はコードブロックと便宜上の番号を示している。なお、説明の簡略化のためにコンポーネントの概念は省略している。各々のコードブロックの符号は、図28に示したようにサブビットプレーン単位に区切られて配置される。   The code stream generation processing operation is as follows. The code data output from the post-quantization processing unit 36 is stored in the input code buffer 41 in units of subband code blocks. This is schematically shown in the input code buffer 41, and CD1 to CD4... Indicate code blocks and numbers for convenience. Note that the concept of components is omitted for the sake of simplicity. The code of each code block is arranged by being divided into sub bit planes as shown in FIG.

また、符号データは符号量カウンタ42にも入力され、符号量カウンタ42によってコードブロックのサブビットプレーン単位で符号量がカウントされる。この符号量データは、パケット生成処理部45とタイルヘッダ生成部46に入力され、パケットヘッダとタイルヘッダの符号量情報に使用される。   The code data is also input to the code amount counter 42, and the code amount is counted by the code amount counter 42 for each sub-bit plane of the code block. The code amount data is input to the packet generation processing unit 45 and the tile header generation unit 46, and is used for the code amount information of the packet header and the tile header.

入力符号バッファ41にタイルの全ての符号データが入力されると、まずタイルヘッダ生成処理部46によってタイルヘッダと部分列用のタイルヘッダが生成され、出力符号バッファ47に書き込まれる。次に、パケット生成処理部45は、同一のレイヤ、デコンポジションレベル、コンポーネント、プレシンクトの単位でパケットデータとパケットヘッダを生成する。   When all the code data of the tile is input to the input code buffer 41, first, the tile header generation processing unit 46 generates a tile header and a tile header for the partial sequence, and writes them to the output code buffer 47. Next, the packet generation processing unit 45 generates packet data and a packet header in units of the same layer, decomposition level, component, and precinct.

パターンテーブル43は、レイヤ分割構成を制御するための情報(以下レイヤパターン)を格納する手段である。パターンテーブル43は、文字タイル用と非文字タイル用の2種類のレイヤパターンを記憶可能な容量を備えており、処理に先立ってCPU13によってバス20を介し2種類のレイヤパターンが設定される。本実施例における各レイヤパターンは、サブバンド単位に、”各レイヤにどのサブビットプレーンまでを含めるか”という情報である。例えば、レイヤ0には、2LLのMSBから上位4bit+5bit目のSignificance propagationパスまで、2HLのMSBから上位3bit(3bitめのClean upパスまで)、というようなサブバンド毎のサブビットプレーン単位に設定されたレイヤ境界情報が格納されている。   The pattern table 43 is means for storing information (hereinafter referred to as a layer pattern) for controlling the layer division configuration. The pattern table 43 has a capacity capable of storing two types of layer patterns for character tiles and non-character tiles, and two types of layer patterns are set by the CPU 13 via the bus 20 prior to processing. Each layer pattern in the present embodiment is information on “up to which sub-bit plane is included in each layer” for each subband. For example, in layer 0, from the 2LL MSB to the upper 4 bits + 5 bit Significance propagation pass, from the 2HL MSB to the upper 3 bits (up to the 3rd clean up pass) Stores the set layer boundary information.

セレクタ44は、領域判定処理部34より出力される領域判定データに従って、タイル単位で、文字用レイヤパターン又は非文字用レイヤパターンを選択し、それをパケット生成処理部45へ入力する。パケット生成処理部45は、セレクタ44から入力されるレイヤパターンに従って必要な符号データを入力符号バッファ41より読み込み、レイヤ単位に符号ストリームを形成して出力符号バッファ47へ順次出力する。一つのレイヤの符号ストリームが完成すると、タイルヘッダ生成処理部46で部分列用のタイルヘッダが生成されて出力符号バッファ47に書き込まれ、次のレイヤの符号ストリームの生成処理を開始する。このようにして1つのタイルについて、文字タイル用又は非文字タイル用レイヤパターンに従ったレイヤ分割構成の符号ストリームが完成した時点で、出力符号バッファ47に記憶された符号ストリームはメモリ14へ出力される。同様の処理が全タイルについて繰り返される。 The selector 44 selects a character layer pattern or a non-character layer pattern for each tile according to the region determination data output from the region determination processing unit 34, and inputs it to the packet generation processing unit 45. The packet generation processing unit 45 reads necessary code data from the input code buffer 41 according to the layer pattern input from the selector 44, forms a code stream for each layer, and sequentially outputs the code stream to the output code buffer 47. When a code stream of one layer is completed, a tile header for a partial sequence is generated by the tile header generation processing unit 46 and written to the output code buffer 47, and the generation process of the code stream of the next layer is started. When a code stream having a layer division configuration according to a character tile or non-character tile layer pattern is completed for one tile in this way, the code stream stored in the output code buffer 47 is output to the memory 14. The Similar processing is repeated for all tiles.

画像データの全タイル分の符号ストリームがメモリ14上に完成すると、CPU13は、メモリ上の符号ストリームにメインヘッダを付加し、メモリ14からHDD15への符号ストリームの転送を開始する。   When the code stream for all tiles of the image data is completed on the memory 14, the CPU 13 adds a main header to the code stream on the memory and starts transferring the code stream from the memory 14 to the HDD 15.

ここまでの説明から明らかなように、パターンテーブル43と、そのレイヤパターンを領域判定データに従って選択しパケット生成処理部45へ渡すセレクタ44、及びその作用は、請求項1,17の発明における符号ストリームの階層分割構成をブロック毎に領域判定結果に従って制御する手段もしくは工程に対応する。   As is apparent from the above description, the pattern table 43, the selector 44 that selects the layer pattern according to the region determination data and passes it to the packet generation processing unit 45, and the operation thereof are the code stream in the inventions of claims 1 and 17. This corresponds to means or process for controlling the hierarchical division configuration of each block according to the area determination result for each block.

なお、本実施例においては圧縮符号化方式としてJPEG2000の基本方式が用いられるが、標準圧縮方式に必ずしも準拠しなくともよい。このことは、本実施例のみならず後記各実施例でも同様である。但し、符号ストリームの汎用性の観点からは、標準圧縮方式に準拠した方が一般に有利である。また、ウェーブレット変換以外の周波数変換、例えば離散コサイン変換等を使用する圧縮符号化方式や、周波数変換を行わずに実空間画像データに直接的に圧縮符号化処理を行う圧縮符号化方式を用い得ることも同様である。   In this embodiment, the JPEG 2000 basic method is used as the compression encoding method, but it does not necessarily conform to the standard compression method. This is the same not only in this embodiment but also in each embodiment described later. However, from the viewpoint of versatility of the code stream, it is generally advantageous to comply with the standard compression method. In addition, a compression encoding method that uses frequency transforms other than wavelet transform, such as discrete cosine transform, or a compression encoding method that directly compresses and encodes real space image data without performing frequency transform can be used. The same is true.

<実施例1の変形例>
前記実施例1はレイヤプログレッションの符号ストリームを生成する実施例であったが、パターンテーブル43の内容を変更することにより、同様の装置構成において、文字タイルと非文字タイルの別に応じて階層分割構成を制御した解像度プログレッションの符号ストリームを生成することも可能である。
<Modification of Example 1>
In the first embodiment, the code stream of the layer progression is generated. However, by changing the contents of the pattern table 43, in the same device configuration, the hierarchical division configuration according to the character tile and the non-character tile It is also possible to generate a resolution progression code stream in which the above is controlled.

図6は、解像度プログレッションの符号ストリームの階層分割構成の例を示す、図4と同様の模式図である。図6の(A)は文字タイルの階層分割構成の例を示し、(B)は非文字タイルの階層分割構成の例を示している。   FIG. 6 is a schematic diagram similar to FIG. 4, illustrating an example of a hierarchical division configuration of a resolution progression code stream. 6A shows an example of a hierarchical division configuration of character tiles, and FIG. 6B shows an example of a hierarchical division configuration of non-character tiles.

解像度プログレッションの場合、低解像度(高いデコンポジションレベル)の符号よりも先に高解像度(低いデコンポジションレベル)の符号を出力できないので、プログレッシブ順序は、(2LL)→(2HL,2LH,2HH)→(1HL,1LH,1HH)の順となり、各解像度レベルでは上位レイヤの符号から復号されていくことになる。   In the case of resolution progression, since the high resolution (low decomposition level) code cannot be output before the low resolution (high decomposition level) code, the progressive order is (2LL) → (2HL, 2LH, 2HH) → (1HL, 1LH, 1HH) in this order, and decoding is performed from the upper layer code at each resolution level.

文字タイルにおいては、図6の(A)に見られるように、上位レイヤの段階で多くの符号を出力するようにする。このような階層分割構成とすることにより、再生に多くの符号を必要とする文字画像の判読性を向上させることができる。一方、非文字タイルにおいては、(B)に見られるように、上位レイヤでは符号量を少なくして、下位レイヤで多くの符号を出力するようにするとよい。このような階層分割構成とすることにより、各解像度レベルでの上位レイヤにおける符号量の増加を抑制することができる。   In the character tile, as shown in FIG. 6A, many codes are output at the upper layer stage. With such a hierarchical division configuration, it is possible to improve the legibility of a character image that requires many codes for reproduction. On the other hand, in the non-character tile, as seen in (B), it is preferable to reduce the code amount in the upper layer and output many codes in the lower layer. By adopting such a hierarchical division configuration, it is possible to suppress an increase in the code amount in the upper layer at each resolution level.

なお、(A)では符号量が空(から)のレイヤが存在するが、符号構成上は問題はない。但し、プログレッシブに表示を行う時に空レイヤの部分で画像が変化しなくなるため、違和感を生じる可能性があるので、実際的は全てのレイヤに多少の符号を設定する方が好ましい。   In (A), there is an empty code amount layer, but there is no problem in the code configuration. However, since the image does not change in the empty layer portion when progressive display is performed, there is a possibility that a sense of incongruity may occur. Therefore, in practice, it is preferable to set some codes for all layers.

ここで、レイヤプログレッションと比較した場合の解像度プログレッションの利点について述べる。クライアント側の装置が例えばモバイル端末などの表示部が非常に小さい機器の場合のように、クライアント側の表示部の解像度(画像サイズ)がサーバ側の画像データの解像度(画像サイズ)と比較して小さいと、レイヤプログレッションで高解像度部のデータを送付しても意味が無くなってしまい、転送に無駄が生じる。このような場合、解像度プログレションの符号ストリームならば、必要な解像度の段階で転送を停止させることによって無駄な転送を防止し、転送路のトラフィックを低減できる利点がある。   Here, the advantage of the resolution progression when compared with the layer progression will be described. For example, when the client side device is a device with a very small display unit such as a mobile terminal, the resolution (image size) of the client side display unit is compared with the resolution (image size) of the server side image data. If it is small, even if the data of the high resolution part is sent by layer progression, it becomes meaningless, and transfer is wasted. In such a case, the resolution-progress code stream has an advantage that the transfer is stopped at the necessary resolution stage to prevent useless transfer and reduce the traffic on the transfer path.

したがって、符号ストリームの転送先となるクライアントの表示部の解像度に応じて、サーバ側で符号ストリームのプログレッシブ順序としてレイヤプログレッションと解像度プログレッションの一方を選択できるようにするのが望ましい。例えば、CPU13で、符号ストリーム転送先となるクライアントの表示部の解像度に応じてレイヤプログレッション又は解像度プログレッションを選択し、選択したプログレッション用のレイヤパターンをパターンテーブル43に設定し、また、選択したプログレッションをパケット生成処理部45へ設定するような構成とすることができる。このようなプログレッシブ順序の選択が可能な態様も本発明に包含される。   Therefore, it is desirable that one of layer progression and resolution progression can be selected as the progressive order of the code stream on the server side according to the resolution of the display unit of the client that is the transfer destination of the code stream. For example, the CPU 13 selects a layer progression or a resolution progression according to the resolution of the display unit of the client that is the code stream transfer destination, sets the layer pattern for the selected progression in the pattern table 43, and also selects the selected progression. A configuration in which the packet generation processing unit 45 is set can be adopted. A mode in which such a progressive order can be selected is also included in the present invention.

前記実施例1は、符号化処理の際に、領域判定結果に応じて階層分割構成が制御されたプログレッシブ符号ストリームを生成する構成であったが、本実施例においては、外部装置へ転送する際に、プログレッシブ符号ストリームをHDD15に保存されている符号ストリームから生成する構成である。   In the first embodiment, the progressive code stream in which the hierarchical division configuration is controlled according to the region determination result is generated in the encoding process. In the present embodiment, the progressive code stream is transferred to the external device. In addition, the progressive code stream is generated from the code stream stored in the HDD 15.

図7は、本実施例に係る画像処理装置のブロック図である。この画像処理装置はサーバ1として利用し得るMFPであり、前記実施例1との主たる相違点は、符号ストリーム変更処理部50が追加されていることである。   FIG. 7 is a block diagram of the image processing apparatus according to the present embodiment. This image processing apparatus is an MFP that can be used as the server 1. The main difference from the first embodiment is that a code stream change processing unit 50 is added.

実施例1においては、エンコーダ12から出力される符号ストリームは、領域判定結果に従って階層分割構成が制御されたレイヤプログレッションの符号ストリームであった。しかし、本実施例では、エンコーダ12によって生成されてHDD15に保存される符号ストリームに対しては、領域判定結果による階層分割構成の制御は行われない(ただし、後述のように領域判定の結果は符号ストリーム内に保持される)。また、エンコーダ12から出力される符号ストリームは、プログレッシブ順序は基本的に任意であり、必ずしもプログレッシブである必要はなく、階層構造も任意であり、例えば1ページ分全体を一様な階層構造としてもよい。これは本実施例の利点である。すなわち、複写動作の際には、プログレッシブ符号ストリームである必要なく、むしろ1ページ全体の画像を一様な階層構造としたほうが、複写動作のためのデコーダ18による伸長処理の負荷が軽減されるからである。また、クライアント3の種類によっては、RPCLプログレッションのような解像度プログレッションの方が都合の良い場合もあるからである。例えば、モバイル端末のようなモニタの表示サイズが小さいクライアントの場合には、必要解像度の符号のみ出力すればよいので、HDD15に保存されている符号ストリームのプログレッシブ順序の種類は、解像度の選択が容易な解像度プログレッションの方がよい場合もある。すなわち、クライアントからプログレッションの種類等の要求をコマンドとして受信し、それに応じて選択したプログレッションの符号ストリームを生成して送信する方が好ましい。本実施例は、このようなクライアントに応じて選択したプログレッションの符号ストリームの生成、送信をすることが可能な構成であり、これも本実施例の利点の一つである。 In the first embodiment, the code stream output from the encoder 12 is a layer progression code stream in which the hierarchical division configuration is controlled according to the region determination result. However, in this embodiment, for the code stream generated by the encoder 12 and stored in the HDD 15, the hierarchical division configuration control based on the region determination result is not performed (however, as described later, the region determination result is Retained in the code stream). The progressive order of the code stream output from the encoder 12 is basically arbitrary, and does not necessarily need to be progressive, and the hierarchical structure is also arbitrary. For example, the entire page may have a uniform hierarchical structure. Good. This is an advantage of this embodiment. That is, in the copying operation, it is not necessary to be a progressive code stream. Rather, if the image of the entire page has a uniform hierarchical structure, the load of the decompression process by the decoder 18 for the copying operation is reduced. It is. Also, depending on the type of client 3, resolution progression such as RPCL progression may be more convenient. For example, in the case of a client with a small monitor display size such as a mobile terminal, it is only necessary to output a code of a necessary resolution. Therefore, the type of progressive order of the code stream stored in the HDD 15 can be easily selected. Sometimes a good resolution progression is better. That is, it is preferable to receive a request such as the type of progression from the client as a command, and generate and transmit a code stream of the progression selected according to the request. This embodiment, generation of the progression of the code stream selected in accordance with such clients are configured to be capable of transmission, which is also one of the advantages of this embodiment.

以下、本実施例について詳細に説明する。本実施例に係るエンコーダ12は、前記実施例1と同様な図3に示したような構成であり、符号化処理を行って符号ストリームを生成する。エンコーダ12内の符号ストリーム生成処理部37は、領域判定処理部34によるタイル単位の領域判定結果に従った階層分割構成の制御は行わないが、領域判定結果を、生成する符号ストリーム内に保持させる。本実施例では、領域判定結果を符号ストリーム内に保持させる方法として、符号ストリームのタイルヘッダのコメント部にフラグとして記録する方法が用いられるが、これのみに限定されるものではない。例えば、電子透かしなどの技術を使用して、領域判定結果を符号ストリーム内に記録することも可能である。領域判定結果のフラグデータを、符号ストリームとは分離してメモリ14またはHDD15に蓄積することも可能である。エンコーダ12から出力された符号ストリームは、メモリ14に一旦蓄積された後、HDD15に保存される。   Hereinafter, this embodiment will be described in detail. The encoder 12 according to the present embodiment has the same configuration as that shown in FIG. 3 as in the first embodiment, and performs a coding process to generate a code stream. The code stream generation processing unit 37 in the encoder 12 does not control the hierarchical division configuration according to the area determination result in tile units by the area determination processing unit 34, but retains the area determination result in the generated code stream. . In the present embodiment, as a method for retaining the region determination result in the code stream, a method of recording as a flag in the comment portion of the tile header of the code stream is used, but the method is not limited to this. For example, it is possible to record the region determination result in the code stream using a technique such as digital watermarking. The flag data of the area determination result can be stored in the memory 14 or the HDD 15 separately from the code stream. The code stream output from the encoder 12 is temporarily stored in the memory 14 and then stored in the HDD 15.

クライアント3から符号ストリームの送信要求を外部転送路2を介し受信すると、CPU13は、必要なパラメータをセットした後、HDD15から符号ストリームを読み出し、バス20を介してメモリ14へ書き込む。メモリ14に記録された符号ストリームは、タイル単位に読み出されて符号ストリーム変更処理部50に入力される。   When the code stream transmission request is received from the client 3 via the external transfer path 2, the CPU 13 sets the necessary parameters, reads the code stream from the HDD 15, and writes it to the memory 14 via the bus 20. The code stream recorded in the memory 14 is read out in units of tiles and input to the code stream change processing unit 50.

図8は、符号ストリーム変更処理部50のブロック図である。符号ストリーム変更処理部50は、前記実施例1に係る符号ストリーム生成処理部37(図5)とよく似た構成であるが、ヘッダ解析処理部51とパケット分解処理部52が追加されている。   FIG. 8 is a block diagram of the code stream change processing unit 50. The code stream change processing unit 50 has a configuration very similar to the code stream generation processing unit 37 (FIG. 5) according to the first embodiment, except that a header analysis processing unit 51 and a packet decomposition processing unit 52 are added.

まず、CPU13によって、クライアントの要求に応じて選択したプログレッシブ順序(レイヤプログレッション又は解像度プログレッション)のための文字タイル用、非文字タイル用の2種類のレイヤパターンがパターンテーブル43に設定される。また、選択されたプログレッションの種類もパケット生成処理部45に設定される。   First, the CPU 13 sets, in the pattern table 43, two types of layer patterns for character tiles and non-character tiles for the progressive order (layer progression or resolution progression) selected according to the client's request. The selected progression type is also set in the packet generation processing unit 45.

次に、バス20を介してメモリ14からタイル単位に符号データが入力されるが、ヘッダ解析処理部51はタイルヘッダを解析し、タイルヘッダに記述されている領域判定結果を読み出して領域判定信号をセレクタ44へ出力する。   Next, code data is input in units of tiles from the memory 14 via the bus 20, and the header analysis processing unit 51 analyzes the tile header, reads out the area determination result described in the tile header, and outputs an area determination signal. Is output to the selector 44.

次にパケットが入力されると、ヘッダ解析処理部51はパケットヘッダの解析を行い、パケット分解処理部52へ制御信号を出力する。パケット分解処理部52は、この制御信号に応じてパケットの符号部分を、サブビットプレーン毎の符号データに分解して入力符号バッファ41へ記録する。この時に、符号量カウンタ42はコードブロックのサブビットプレーン単位に符号量をカウントする。入力符号バッファ41にタイルの全ての符号データが入力されると、まずタイルヘッダ生成処理部46によってタイルヘッダと部分列用のタイルヘッダが生成され、出力符号バッファ47に書き込まれる。次に、パケット生成処理部45は、ヘッダ解析処理部51からの領域選択信号に従ってセレクタ44により選択されたレイヤパターンに従って、必要な符号データを入力符号バッファ41より読み込み、レイヤ単位に符号ストリームを形成して出力符号バッファ47へ順次出力する。1つのタイルについてレイヤパターンに従った階層分割構成の符号ストリームが完成した時点で、出力符号バッファ47からメモリ14へ符号ストリームが出力される。同様の処理が各タイルについて繰り返される。   Next, when a packet is input, the header analysis processing unit 51 analyzes the packet header and outputs a control signal to the packet decomposition processing unit 52. The packet decomposition processing unit 52 decomposes the code portion of the packet into code data for each sub-bit plane in accordance with this control signal, and records it in the input code buffer 41. At this time, the code amount counter 42 counts the code amount for each sub-bit plane of the code block. When all the code data of the tile is input to the input code buffer 41, first, the tile header generation processing unit 46 generates a tile header and a tile header for the partial sequence, and writes them to the output code buffer 47. Next, the packet generation processing unit 45 reads necessary code data from the input code buffer 41 according to the layer pattern selected by the selector 44 in accordance with the region selection signal from the header analysis processing unit 51, and forms a code stream in units of layers. And sequentially output to the output code buffer 47. The code stream is output from the output code buffer 47 to the memory 14 when the code stream having a hierarchical division structure according to the layer pattern is completed for one tile. Similar processing is repeated for each tile.

このようにして画像データの全タイル分の符号ストリームがメモリ14上に完成すると、CPU13は、その符号ストリームをメインヘッダを付加して外部I/F17より外部転送路2を介してクライアント3へ送信させる。クライアント3では、受信した符号ストリームをプログレッシブに復号しモニタ4上に復号画像をプログレッシブに表示させる。   When the code stream for all tiles of the image data is completed on the memory 14 in this way, the CPU 13 adds the main header to the code stream and transmits it to the client 3 from the external I / F 17 via the external transfer path 2. Let The client 3 progressively decodes the received code stream and displays the decoded image on the monitor 4 in a progressive manner.

ここまでの説明から明らかなように、符号ストリーム変更処理部50及びその処理は、請求項2,17の発明における符号ストリーム生成手段もしくは符号ストリーム生成工程に対応する。また、パターンテーブル43と、ヘッダ解析処理部51からの領域判定信号に従ってレイヤパターンを選択しパケット生成処理部45へ渡すセレクタ44及びその作用は、請求項2,17における符号ストリームの階層分割構成をブロック毎に領域判定結果に従って制御する手段もしくは工程に対応する。また、符号ストリーム変更処理部50の観点からは、ヘッダ解析処理部51の領域判定信号を抽出する機能は、請求項2,17における領域判定手段もしくは工程に対応する。ただし、画像処理装置全体の観点からは、像域分離処理部10及びエンコーダ12内の領域判定処理部34が領域判定手段もしくは工程に対応する。   As is apparent from the above description, the code stream change processing unit 50 and its processing correspond to the code stream generating means or the code stream generating step in the inventions of claims 2 and 17. The selector 44 that selects a layer pattern according to the pattern determination signal from the pattern table 43 and the area analysis signal from the header analysis processing unit 51 and passes it to the packet generation processing unit 45, and the operation thereof, have the hierarchical structure of the code stream according to claims 2 and 17 This corresponds to a means or process for controlling each block according to the region determination result. Further, from the viewpoint of the code stream change processing unit 50, the function of extracting the region determination signal of the header analysis processing unit 51 corresponds to the region determination means or process in claims 2 and 17. However, from the viewpoint of the entire image processing apparatus, the image region separation processing unit 10 and the region determination processing unit 34 in the encoder 12 correspond to a region determination unit or process.

以上説明したように、本実施例によれば、読み取った画像データをMFP内のプリント出力処理に適した構成の符号ストリームとしてHDD15に保存することができる。一方、クライアントから送信要求を受けたときに、クライアントに適したプログレッシブ順序を選択し、保存されている符号ストリームから、領域判定結果に従って階層分割構成を制御したプログレッシブ符号ストリームを生成してクライアントへ送信することができる。また、そのプログレッシブ符号ストリームの生成は、保存されている符号ストリームの符号レベルの操作、つまり符号の並べ替えによって行われ、復号・再符号化の処理を含まないため、復号・再符号化による画像品質の劣化を伴わず、また、処理も短時間で行うことができる。   As described above, according to the present embodiment, the read image data can be stored in the HDD 15 as a code stream having a configuration suitable for print output processing in the MFP. On the other hand, when a transmission request is received from the client, a progressive order suitable for the client is selected, and a progressive code stream in which the hierarchical division configuration is controlled according to the region determination result is generated from the stored code stream and transmitted to the client. can do. Further, the generation of the progressive code stream is performed by the operation of the code level of the stored code stream, that is, the rearrangement of codes, and does not include the decoding / re-encoding process. The process can be performed in a short time without deteriorating the quality.

実施例1,2においては、符号ストリームの生成の際に、サブバンド毎に設定されたサブビットプレーン単位に設定可能なレイヤ境界情報であるレイヤパターンを使用した。このようなレイヤパターンを利用した階層分割構成の制御によれば、レイヤ単位での画質レベルを一定とすることができる。途中のレイヤで復号を停止させたり、予め定められたレイヤまでを送信することにより、画質レベルを容易に制御可能になり、画質を保証するシステムの構築が可能となる。しかし、レイヤ単位(階層単位)での符号量を制御できないため、プログレッシブ転送途中の符号量を保証することはできない。   In the first and second embodiments, a layer pattern that is layer boundary information that can be set in units of sub-bit planes set for each subband is used when generating a code stream. According to the control of the hierarchical division configuration using such a layer pattern, the image quality level in units of layers can be made constant. By stopping decoding at an intermediate layer or transmitting up to a predetermined layer, the image quality level can be easily controlled, and a system that guarantees image quality can be constructed. However, since the code amount in units of layers (hierarchical units) cannot be controlled, it is not possible to guarantee the code amount during progressive transfer.

ここでは、レイヤ単位での符号量を保証する実施例について説明する。   Here, an embodiment for guaranteeing the code amount in units of layers will be described.

レイヤ単位の符号量を制御する方法としては、次の2通りの方法をとり得る。その一つは、タイルまたは画像全体の符号量から1レイヤあたりの符号量(設定符号量)を算出し各レイヤの符号量をその設定符号量とするように制御する方法である。すなわち、レイヤ単位の設定符号量を画像に応じて適応的に制御する方法である(以下、A方法)。   As a method of controlling the code amount in units of layers, the following two methods can be used. One of them is a method of calculating the code amount per layer (set code amount) from the code amount of the entire tile or image and controlling the code amount of each layer to be the set code amount. In other words, this is a method of adaptively controlling the set code amount for each layer according to the image (hereinafter referred to as method A).

もう一つは、レイヤ単位の設定符号量を予め決定し、各レイヤの符号量を設定符号量とするように制御し、最終レイヤの時点で符号に残りがあれば、残りの全ての符号で最終レイヤを構成する方法である。すなわち、レイヤ単位の設定符号量を非適応的に制御する方法である(以下、B方法)。   The other is to determine the set code amount for each layer in advance and control the code amount of each layer to be the set code amount. If there is a remaining code at the time of the last layer, This is a method of configuring the final layer. That is, this is a method for non-adaptively controlling the set code amount in units of layers (hereinafter, method B).

A方法,B方法には一長一短があり、一概にどちらの方法が良いとはいえない。例えば、方法Aでは、レイヤ単位の符号量をほぼ均等にすることが可能となり、また、レイヤ数も保証可能となる。その反面、画像によってレイヤ単位の符号量が変化するので、サーバからクライアントへの符号データのレイヤ単位の転送時間を保証できない。   The A method and the B method have advantages and disadvantages, and neither method is generally good. For example, in the method A, the code amount for each layer can be made substantially equal, and the number of layers can be guaranteed. On the other hand, since the code amount for each layer varies depending on the image, the transfer time for each layer of code data from the server to the client cannot be guaranteed.

一方、方法Bでは、最終レイヤ以外のレイヤの符号量を既知の値とすることが可能となるので、レイヤ単位の転送時間の保証が可能となる。その反面、最終レイヤのみ符号量が極端に多くなったり、設定した最終レイヤの前に全ての符号データが出力済みとなってレイヤ数が変化する可能性がある。   On the other hand, in the method B, the code amount of the layers other than the final layer can be set to a known value, so that the transfer time for each layer can be guaranteed. On the other hand, there is a possibility that only the final layer has an extremely large code amount, or that all code data has already been output before the set final layer and the number of layers changes.

したがって、A方法、B方法のいずれを選ぶかは、システム条件に応じて決めるべきであろうが、ここではB方法を利用する実施例について説明する。そのための装置構成は、前記実施例1と同様でもよいし、前記実施例2と同様でもよい。つまり、レイヤ単位の符号量制御を、前記実施例1に係る図5に示す符号ストリーム生成処理部37において実施することも、前記実施例2に係る図8に示す符号ストリーム変更処理部50において実施することも可能であるが、ここでは便宜、図5の符号ストリーム生成処理部37において符号量制御を行う場合について説明する。   Accordingly, whether to select the A method or the B method should be determined according to the system conditions. Here, an embodiment using the B method will be described. The apparatus configuration for this purpose may be the same as that of the first embodiment or the same as that of the second embodiment. That is, the code amount control for each layer is performed in the code stream generation processing unit 37 shown in FIG. 5 according to the first embodiment, or in the code stream change processing unit 50 shown in FIG. 8 according to the second embodiment. However, for the sake of convenience, a case where code amount control is performed in the code stream generation processing unit 37 of FIG. 5 will be described here.

ここで述べる実施例では、図5に示す符号ストリーム生成処理部37において、パターンテーブル43に、文字タイル用と非文字タイル用の、サブバンドによらない符号の優先順位を示す情報が格納される。この情報とは、優先順位の高い順に、2LL(MSBから上位3bit+4bit目のMagnitude refinementパスまで)→2HL(MSBから上位3bit)→....というような情報である。この優先順位にレイヤ(階層)の区別はなく、単純にサブバンド単位での画質への寄与度の高い順である。   In the embodiment described here, in the code stream generation processing unit 37 shown in FIG. 5, the pattern table 43 stores information indicating the priority order of codes for character tiles and non-character tiles regardless of subbands. . This information is: 2LL (from MSB to upper 3 bits + 4th Magnitude refinement path) → 2HL (from MSB to upper 3 bits) →. . . . It is such information. There is no distinction between layers (hierarchies) in this priority order, and the order of contribution to image quality is simply in subband units.

一つの実施例では、パケット生成処理部45は、セレクタ44により選択されたパターンテーブル43の符号順序情報に従ってパケット単位に符号ストリームを順次生成し、予め設定されたレイヤ単位の設定符号量に達した時点で、当該レイヤの符号ストリームを完成させる。ただし、最終(最下位)レイヤについては、残りの符号を全て使用して符号ストリームを生成する。すなわち、文字タイルでも非文字タイルでもタイル(階層)単位の設定符号量は同一である。ただし、各タイルにどのような符号を含めるか(階層分割構成)は文字タイルと非文字タイルとで異なる。   In one embodiment, the packet generation processing unit 45 sequentially generates a code stream for each packet according to the code order information of the pattern table 43 selected by the selector 44, and reaches a preset code amount for each layer. At this point, the code stream of the layer is completed. However, for the final (lowest) layer, a code stream is generated using all the remaining codes. That is, the set code amount in tile (hierarchy) units is the same for both character tiles and non-character tiles. However, what kind of code is included in each tile (hierarchical division configuration) differs between the character tile and the non-character tile.

もう一つの一実施例では、領域判定データがパケット生成処理部45へも入力される。そして、パケット生成処理部45は、文字タイルでは文字タイル用に設定されたレイヤ単位の設定符号量となるようにレイヤの符号ストリームを生成し、非文字タイルでは非文字タイル用に設定されたレイヤ単位の設定符号量となるようにレイヤの符号ストリームを生成する。すなわち、文字タイルであるか非文字タイルであるかにより、レイヤ単位の設定符号量が切り替えられる。文字タイル用のレイヤ単位の設定符号量は、非文字タイル用のレイヤ単位の設定符号量より大きな値に設定するのが一般に好適である。これは、一般的に文字領域の方が非文字領域よりも情報量が大きいため、同程度の画質を再現するためには、文字領域の方が多くの符号量を必要とするためである。   In another embodiment, the area determination data is also input to the packet generation processing unit 45. Then, the packet generation processing unit 45 generates a code stream of the layer so that the set code amount of each layer set for the character tile is set for the character tile, and the layer set for the non-character tile is set for the non-character tile. A layer code stream is generated so as to have a set code amount per unit. That is, the set code amount for each layer is switched depending on whether the tile is a character tile or a non-character tile. It is generally preferable to set the set code amount for each layer for character tiles to a value larger than the set code amount for each layer for non-character tiles. This is because the character area generally has a larger amount of information than the non-character area, and the character area requires a larger amount of code in order to reproduce the same image quality.

ここまでの説明から明らかなように、本実施例は請求項3,4の発明の実施例である。   As is apparent from the above description, this embodiment is an embodiment of the invention of claims 3 and 4.

以上説明したように、本実施例はレイヤ単位の符号量を保証することができるため、転送路における転送速度が遅いシステム等に特に好適である。また、領域判定結果によってレイヤ単位の設定符号量を切り替え、非文字タイルに比べ文字タイルのレイヤ単位の符号量を多くすることによって、プログレッシブ転送時の初期段階での文字の判読性を向上させることができる。   As described above, since this embodiment can guarantee the code amount in units of layers, it is particularly suitable for a system having a low transfer rate on the transfer path. In addition, by switching the set code amount for each layer according to the region determination result and increasing the code amount for each layer of character tiles compared to non-character tiles, the character readability at the initial stage during progressive transfer is improved. Can do.

なお、先に述べたように、前記実施例2に係る図8の符号ストリーム変更処理部50においても同様の符号量制御を実施できることは、以上の説明から明らかであろう。かかる態様も本発明に包含される。   As described above, it is clear from the above description that the same code amount control can be performed also in the code stream change processing unit 50 of FIG. 8 according to the second embodiment. Such embodiments are also encompassed by the present invention.

また、このようなプログレッシブ転送の途中段階(階層)での符号量制御は、解像度プログレッションなどでも同様に実施できることは明らかであろう。   It will be apparent that the code amount control in the intermediate stage (hierarchy) of progressive transfer can be similarly performed in resolution progression or the like.

前記実施例1,2,3においては、領域判定で判定される画像種別は文字と非文字の2種類であったが、より多くの画像種別で領域判定を行い、領域判定結果に応じた階層分割構成の制御を行うこともできる。そのような実施例について次に説明する。   In the first, second, and third embodiments, the image types determined by the region determination are two types of characters and non-characters. However, the region determination is performed with more image types, and the hierarchy according to the region determination result It is also possible to control the division configuration. Such an embodiment will now be described.

なお、装置構成は前記実施例1,2と同様でよいが、ここでは便宜、前記実施例1と同様な装置構成であるとし、前記実施例1に係る図2、図3及び図5を援用して説明する。   The apparatus configuration may be the same as in the first and second embodiments, but here, for convenience, the apparatus configuration is the same as in the first embodiment, and FIGS. 2, 3 and 5 related to the first embodiment are used. To explain.

ここに述べる実施例では、像域分離処理部10(図2)は、図9のようにエッジ判定処理部61、網点判定処理部62、色判定処理部63及び総合判定処理部64からなる構成とされる。この像域分離処理部10は、スキャナ部9(図2)から出力されたRGBの画像信号に基づいて黒文字、色文字、網点、それ以外の領域分離処理を行う。   In the embodiment described here, the image area separation processing unit 10 (FIG. 2) includes an edge determination processing unit 61, a halftone determination processing unit 62, a color determination processing unit 63, and an overall determination processing unit 64 as shown in FIG. It is supposed to be configured. The image area separation processing unit 10 performs black character, color character, halftone dot, and other region separation processing based on the RGB image signal output from the scanner unit 9 (FIG. 2).

すなわち、G信号に基づいてエッジ判定処理部61によってエッジか否かの判定が、G信号に基づいて網点判定処理部62により網点領域か否かの判定が、RGB信号に基づいて色判定処理部63により有彩色か無彩色かの判定が、それぞれ行われてEdge,AMI,IRO信号(それぞれ1bitの信号)が出力され、これが総合判定部64に入力される。   That is, the edge determination processing unit 61 determines whether the edge is an edge based on the G signal, and the dot determination processing unit 62 determines whether the image is a halftone area based on the G signal. The processing unit 63 determines whether the color is chromatic or achromatic, and outputs Edge, AMI, and IRO signals (each 1-bit signal), which are input to the general determination unit 64.

このようなエッジ判定、網点判定、色判定に関しては公知の技術を使用すればよく、その方法は問わないが、エッジ判定と色判定には例えば特許文献3に記載の方法を用いることができる。また、網点判定には例えば特許文献2に記載の方法を用いることができる。これら判定方法の詳細は特許文献2,3に譲るが、その概略について次に説明する。   For such edge determination, halftone dot determination, and color determination, a known technique may be used, and the method thereof is not limited. For example, the method described in Patent Document 3 can be used for edge determination and color determination. . For the halftone dot determination, for example, the method described in Patent Document 2 can be used. Details of these determination methods are given in Patent Documents 2 and 3, and the outline thereof will be described next.

まず、エッジ判定であるが、G信号を2つの閾値を用いて白、黒、その他に3値化し、黒エッジパターン及び白エッジパターンとのマッチングを行い、例えば5×5画素のブロック内に白エッジパターンと一致する画素及び黒エッジパターンと一致する画素がそれぞれ1個以上存在する場合には、そのブロックをエッジと判定する。   First, in the edge determination, the G signal is ternarized into white, black, and others using two threshold values, and matching with the black edge pattern and the white edge pattern is performed. For example, the white signal is contained in a 5 × 5 pixel block. If there are one or more pixels that match the edge pattern and one pixel that matches the black edge pattern, the block is determined to be an edge.

網点判定であるが、例えば3×3画素のブロックにおいて中心画素の値が周囲画素より一定レベル以上か判定することによりピーク画素を検出する。次いで、例えば4×4画素のブロックにおいて、ピーク画素を含むブロックが2ブロック以上存在する場合に注目ブロックを網点領域候補とする。最後に、4×4画素を1ブロックとして、注目ブロックを中心ブロックとする3×3ブロックにおいて、4ブロック以上が網点領域候補の場合に注目ブロックを網点領域とする。   In the halftone dot determination, for example, in a 3 × 3 pixel block, the peak pixel is detected by determining whether the value of the central pixel is higher than a certain level from the surrounding pixels. Next, for example, in a 4 × 4 pixel block, when there are two or more blocks including peak pixels, the target block is set as a halftone dot region candidate. Finally, in a 3 × 3 block having 4 × 4 pixels as one block and the target block as a central block, when the four or more blocks are halftone dot area candidates, the target block is set as a halftone dot area.

色判定であるが、画素毎にR,G,B信号の差分値の最大値max(|R−G|,|G−B|,|B−R|)を算出する。この値を所定の閾値と比較し、閾値以上の画素を有彩色、閾値未満の画素を無彩色と判定する。次に、注目画素を中心とした5×5画素のブロック内の有彩色と判定された画素数を計数し、その計数値が所定の閾値以上ならば注目画素を最終的に有彩色と判定し、閾値未満ならば注目画素を最終的に無彩色と判定する。 For color determination, the maximum value max (| R−G |, | GB− ||| B−R |) of the difference values of the R, G, and B signals is calculated for each pixel. This value is compared with a predetermined threshold, and pixels that are equal to or higher than the threshold are determined as chromatic colors, and pixels that are lower than the threshold are determined as achromatic colors. Next, the number of pixels determined to be a chromatic color in a 5 × 5 pixel block centered on the target pixel is counted, and if the counted value is equal to or greater than a predetermined threshold, the target pixel is finally determined to be a chromatic color. If it is less than the threshold, the target pixel is finally determined to be an achromatic color.

図9を再び参照する。総合判定部64では、Edge,AMI,IROの各信号から、例えば次に示す第1表に示すルールに従って、黒文字、色文字、網点領域の判定を行う。   Refer to FIG. 9 again. The overall determination unit 64 determines black characters, color characters, and halftone dot areas from the signals of Edge, AMI, and IRO, for example, according to the rules shown in Table 1 below.

Figure 0004086192
第1表は、Edge、IRO、AMI各信号の状態と総合判定の結果を対応させたものである。総合判定の結果は、黒文字、色文字、網点、その他の4種類である。各信号の状態は、1がオン(例えば、Edge信号がオンの場合その画素はエッジであることを表す。同様にIRO信号がオンの場合は有彩色、AMI信号がオンの場合は網点となる。)、0がオフ、*はその信号の状態によらずに総合判定が行われることをそれぞれ示す。
Figure 0004086192
Table 1 associates the state of each signal of Edge, IRO, and AMI with the result of comprehensive judgment. There are four types of comprehensive determination results: black characters, color characters, halftone dots, and others. The state of each signal is 1 (for example, when the Edge signal is on, the pixel is an edge. Similarly, when the IRO signal is on, chromatic colors are used, and when the AMI signal is on, halftone dots are displayed. ), 0 is off, and * indicates that comprehensive judgment is performed regardless of the state of the signal.

同表から分かるように、Edge信号を最優先としており、Edge信号がオンの場合、AMI信号によらずに文字画素とし、IRO信号によって黒文字と色文字を判定する。Edge信号がオフでかつAMI信号がオンの場合は網点と判定し、Edge信号とAMI信号がともオフの場合にその他に判定する。   As can be seen from the table, the Edge signal is given the highest priority, and when the Edge signal is on, the character pixel is determined regardless of the AMI signal, and the black character and the color character are determined by the IRO signal. When the Edge signal is off and the AMI signal is on, it is determined as a halftone dot, and when the Edge signal and the AMI signal are both off, other determinations are made.

なお、この総合判定方法はこれに限らない。例えば、次に示す第2表のように、AMI信号を最優先し、AMI信号がオンの場合にはEdge信号の状態に拘わらず網点領域と判定する方法としてもよい。   This comprehensive determination method is not limited to this. For example, as shown in Table 2 below, the AMI signal may be given the highest priority, and when the AMI signal is on, the halftone dot region may be determined regardless of the state of the Edge signal.

Figure 0004086192
第1表と第2表の違いは、網点地の上の文字を文字として判定するか網点として判定するかである。本実施例の場合は、文字の判読性向上を優先すため、網点地の上の文字を文字として判定することとしている。
Figure 0004086192
The difference between Table 1 and Table 2 is whether a character on a halftone dot is determined as a character or a halftone dot. In the case of the present embodiment, in order to give priority to improving the legibility of the character, the character on the halftone dot is determined as the character.

次に、本実施例におけるエンコーダ12(図3)の動作を説明する。基本的なエンコード処理の流れは前記実施例1の場合と同様であるので、相違点のみ説明する。   Next, the operation of the encoder 12 (FIG. 3) in the present embodiment will be described. Since the basic flow of the encoding process is the same as that in the first embodiment, only the differences will be described.

まず、領域判定部34の動作を説明する。領域判定部34では、像域分離処理部10からの画素単位の黒文字、色文字、網点の分離信号に基づいて、タイル単位に領域を判定する。この判定方法は、タイル全体で画素単位の各分離信号のORをとり、タイル内に黒文字、色文字、網点のそれぞれの画素が存在するかどうか判定する。タイル内にいずれの画素も存在しない場合には、その他の領域と判定する。また、黒文字のみが存在するタイルは黒文字領域、色文字のみが存在するタイルを色文字領域、網点のみが存在するタイルを網点領域と判定する。   First, the operation of the area determination unit 34 will be described. Based on the black character, color character, and halftone dot separation signals in pixel units from the image area separation processing unit 10, the region determination unit 34 determines regions in tile units. In this determination method, OR is performed on each separation signal in units of pixels in the entire tile, and it is determined whether each pixel of black characters, color characters, and halftone dots exists in the tile. If no pixel is present in the tile, it is determined as another area. Further, a tile having only black characters is determined as a black character region, a tile having only color characters is determined as a color character region, and a tile having only halftone dots is determined as a halftone dot region.

タイル内に複数の像域が存在している場合は、領域判定に関する各領域の優先順位に従って一つの領域に判定する。その優先順位は、システム環境に応じて適宜設定すればよいが、1つの好適な例としては、レイヤの初期段階にて優先的に符号を割り当てるべき画像種別、言い換えれば、画像をプログレッシブ転送する場合の初期段階に他の画像種別と比較して多くの符号を送信して細部の再現性を高めるべき画像種別の領域の優先順位を高く設定する。   If there are a plurality of image areas in the tile, the area is determined as one area according to the priority of each area regarding the area determination. The priority order may be set as appropriate according to the system environment. As one preferable example, an image type to which a code should be preferentially assigned at the initial stage of a layer, in other words, a case where an image is progressively transferred. In the initial stage, a larger number of codes are transmitted compared to other image types, and the priority of the region of the image type that should improve the reproducibility of details is set higher.

ここでは、色文字、黒文字、網点、その他の順に優先順位を設定するものとする。つまり、タイル内に1つでも色文字画素が存在すれば、他の分離結果の存在にかかわらず色文字領域とし、色文字画素が存在しない場合に黒文字画素が存在すれば黒文字領域、色文字画素も黒文字画素も存在せずに網点画素が存在すれば網点領域とする。   Here, the priority order is set in the order of color characters, black characters, halftone dots, and the like. In other words, if there is at least one color character pixel in the tile, the color character region is used regardless of the presence of other separation results. If there is no color character pixel, the black character region and the color character pixel are present. If there is a halftone dot pixel and no black character pixel, a halftone dot region is assumed.

この4種類の領域に関する領域判定データは符号ストリーム生成処理部37(図5)に入力し、符号ストリーム生成処理部37において、領域判定データに対応した符号ストリームのレイヤ分割構成(階層分割構成)の制御が行われる。この制御のため、パターンテーブル43には各画像種別に対応した4種類のレイヤパターンが設定され、そのいずれかのレイヤパターンがセレクタ44により領域判定データに従って選択されることになる。   The region determination data regarding these four types of regions is input to the code stream generation processing unit 37 (FIG. 5), and the code stream generation processing unit 37 uses the code stream layer division configuration (hierarchy division configuration) corresponding to the region determination data. Control is performed. For this control, four types of layer patterns corresponding to each image type are set in the pattern table 43, and any one of the layer patterns is selected by the selector 44 according to the area determination data.

ここで各画像種別の領域の特徴を簡単に述べると、色文字領域では自然画像に比べて輝度と色差のあらゆるサブバンドに高いDWT係数値が現れる。黒文字領域では輝度のあらゆるサブバンドに高いDWT係数値が現れ、網点領域では特定のサブバンドに高いDWT係数値が現れるという特徴を有している。これらを考慮して、各領域におけるレイヤ分割構成が決定され、それに対応したレイヤパターンがパターンテーブル43に設定される。   Here, the characteristics of each image type region will be briefly described. In the color character region, a high DWT coefficient value appears in every subband of luminance and color difference compared to a natural image. A black character region has a feature that a high DWT coefficient value appears in every subband of luminance, and a high DWT coefficient value appears in a specific subband in a halftone dot region. Considering these, the layer division configuration in each region is determined, and the layer pattern corresponding to it is set in the pattern table 43.

各領域の階層分割構成は概ね次のような考え方で決定し得る。まず、黒文字領域では、U,Vコンポーネントの優先順位及び符号量を低くする。色文字領域では、Y,U,V全コンポーネントを同様に扱う(高域成分まで必要であるから)。網点領域では、特定の高周波成分より高域の成分は送らないか優先順位を下げる。その他領域では、高域成分を含めなくても構わない。   The hierarchical division configuration of each region can be determined based on the following concept. First, in the black character area, the priority order and code amount of the U and V components are lowered. In the color character area, all the Y, U, and V components are handled in the same manner (because a high frequency component is necessary). In the halftone dot region, a higher frequency component than a specific high frequency component is not sent or the priority is lowered. In other regions, the high frequency component may not be included.

なお、網点の特定サブバンドの成分は、網点の線数成分であるので自然画像を認識する上では特に必要な成分ではない。そのため、網点領域においては、上位レイヤ(転送の初期の段階)には網点線数成分を含ませないレイヤ分割構成とし、符号量を少なくすることができる。   Note that the components of the specific subband of the halftone dot are not particularly necessary components for recognizing the natural image because they are the line number components of the halftone dot. For this reason, in the halftone dot region, the upper layer (the initial stage of transfer) has a layer division configuration that does not include a halftone line number component, and the amount of codes can be reduced.

以上説明したように、本実施例においては、タイル単位に画像の領域を黒文字、色文字、網点、その他の領域に判定し、判定結果に応じて符号ストリームの階層分割構成を制御するため、前記実施例1,2に比べ、より詳細に画像種別に適応したプログレッシブ符号ストリームの生成が可能となる。   As described above, in the present embodiment, the image area is determined to be a black character, a color character, a halftone dot, and other areas in tile units, and in order to control the hierarchical division configuration of the code stream according to the determination result, Compared to the first and second embodiments, it is possible to generate a progressive code stream adapted to the image type in more detail.

なお、前記実施例2においても、同様の領域判定と、その判定結果に従った符号ストリームの階層分割構成の制御を行うことができることは以上の説明から明らかであり、かかる態様も本発明に包含される。   In the second embodiment as well, it is clear from the above description that the same region determination and the code stream hierarchy division configuration according to the determination result can be performed, and such an aspect is also included in the present invention. Is done.

なお、領域判定の画像種をさらに増やし、より高精細な画像種別に応じた階層分割構成の制御を行うこともできる。例えば、銀塩写真や白地の判定などを行うようにしてもよい。また、同一の画像種別でも、そのサイズや色等の特徴を判定して階層分割構成(再生の優先度)を変更してもよい。例えば、表題のようなサイズの大きな文字の再現を優先させたり、文字色によって優先度を変更させたり、網点の線数の違いにより優先度を変えるなどしてもよい。また、自然画で構成されている画像で、人物の顔や花などの彩度の高い色の領域の再生を優先させるような制御も可能である。   Note that the number of image types for region determination can be further increased, and the hierarchical division configuration can be controlled in accordance with higher-definition image types. For example, a silver halide photograph or a white background may be determined. In addition, even for the same image type, characteristics such as size and color may be determined to change the hierarchical division configuration (reproduction priority). For example, priority may be given to reproduction of a large character such as a title, the priority may be changed depending on the character color, or the priority may be changed depending on the number of lines of halftone dots. In addition, it is possible to perform control so that priority is given to reproduction of a highly saturated color region such as a human face or flower in an image composed of natural images.

前記実施例1〜4では、実空間の画像データの像域分離信号によって領域判定を行った。すなわち、実空間の画像データに基づいて領域判定を行っていた。   In the first to fourth embodiments, the region determination is performed based on the image region separation signal of the real space image data. That is, area determination is performed based on real space image data.

ここでは、画像データの符号化処理の過程で生成されるDWT係数(より広義にには周波数変換係数)に基づいて領域判定を行う実施例について説明する。   Here, a description will be given of an embodiment in which region determination is performed based on DWT coefficients (frequency conversion coefficients in a broad sense) generated in the process of encoding image data.

図10は、本実施例に係る画像処理装置のエンコーダ12のブロック図である。なお、装置全体の構成は前記実施例1と同様でよいが、像域分離処理部10は不要である。   FIG. 10 is a block diagram of the encoder 12 of the image processing apparatus according to the present embodiment. The overall configuration of the apparatus may be the same as that of the first embodiment, but the image area separation processing unit 10 is unnecessary.

図10に示すエンコーダ12において、領域判定処理部34はDWT処理部32より出力されるDWT係数に基づいてタイル単位で文字/非文字の領域判定を行うもので、像域分離信号は入力しない。この領域判定部34以外のエンコーダ12の構成は前記各実施例と同様である。   In the encoder 12 shown in FIG. 10, the region determination processing unit 34 performs character / non-character region determination in tile units based on the DWT coefficient output from the DWT processing unit 32, and does not input an image region separation signal. The configuration of the encoder 12 other than the area determination unit 34 is the same as that in each of the above embodiments.

図11は、3デコンポジションレベルのDWT係数を表したものである。図中、太い実線はサブバンド境界を表し、細線は係数の境界を表している。つまり、細線で囲まれた格子が1つの係数である。DWT係数は、DWT処理部32に入力される画像と対応した位置に配置されている。言い換えれば、DWT処理は入力画像の位置情報を保存しているといえる。図11のように、各々のサブバンドに特定位置の入力画像に対応する係数が存在することになる。図中の網掛けされた係数が上記の対応関係にある係数を表している。   FIG. 11 shows the DWT coefficient at the 3 decomposition level. In the figure, a thick solid line represents a subband boundary, and a thin line represents a coefficient boundary. That is, a lattice surrounded by a thin line is one coefficient. The DWT coefficient is arranged at a position corresponding to the image input to the DWT processing unit 32. In other words, it can be said that the DWT process preserves the position information of the input image. As shown in FIG. 11, a coefficient corresponding to the input image at a specific position exists in each subband. The shaded coefficients in the figure represent the coefficients having the above correspondence.

また、DWT係数においては、LLサブバンド以外の高周波成分の絶対値は、同一方向のサブバンド間で相関を持つことが知られている。同一方向のサブバンド間とは、例えば、3HL、2HL、1HLのように同一方向成分の、異なった解像度のサブバンド間のことである。   In the DWT coefficient, it is known that the absolute values of the high frequency components other than the LL subband have a correlation between subbands in the same direction. The term “between subbands in the same direction” refers to between subbands of different resolutions having the same direction component such as 3HL, 2HL, and 1HL.

例えば、デコンポジションレベルの高い(解像度の低い)サブバンドの係数の絶対値が0であれば、同一方向成分の解像度の高いサブバンドの係数の絶対値も0の場合が多い。これと逆に、デコンポジションレベルの高い(解像度の低い)サブバンドの係数の絶対値が大きな値であれば、同一方向成分の解像度の高いサブバンドの係数も大きな値である場合が多い。また、入力画像がエッジ部であればDWT係数の絶対値は大きくなり、平坦部であれば小さくなる。本実施例では、このようなDWT係数の性質を利用して領域判定処理を行う。   For example, if the absolute value of the coefficient of the subband having a high decomposition level (low resolution) is 0, the absolute value of the coefficient of the subband having a high resolution of the same direction component is often 0. On the contrary, if the absolute value of the coefficient of the subband having a high decomposition level (low resolution) is a large value, the coefficient of the subband having a high resolution of the same direction component is often a large value. Further, the absolute value of the DWT coefficient increases if the input image is an edge portion, and decreases if the input image is a flat portion. In the present embodiment, the region determination process is performed using such a property of the DWT coefficient.

図12は本実施例に係る領域判定処理部34のブロック図である。この領域判定部34には、絶対値化された(YUV信号のうちの)Y信号のDWT係数が入力される。なお、JPEG2000におけるDWT係数の符号化は、プラス、マイナスのサインビットと絶対値化されたDWT係数のビットプレーンに対して算術符号化が行われる。そのため、DWT処理部32から出力される時点で、DWT係数は絶対値化されている方が都合が良く、本実施例においても、そのような構成をとるものとして扱う。   FIG. 12 is a block diagram of the area determination processing unit 34 according to the present embodiment. The area determination unit 34 receives the DWT coefficient of the Y signal (of the YUV signal) that has been converted to an absolute value. Note that the encoding of the DWT coefficient in JPEG2000 is performed on the bit plane of the plus / minus sign bit and the DWT coefficient converted to an absolute value. For this reason, it is more convenient that the DWT coefficient is converted to an absolute value at the time when it is output from the DWT processing unit 32, and this embodiment is treated as having such a configuration.

領域判定処理部34は、HLサブバンド用のサブバンド判定処理部71及び成分判定処理部72と、LHサブバンド用のサブバンド判定処理部73及び成分判定処理部74と、HHサブバンド用のサブバンド判定処理部75及び成分判定処理部76と、総合判定処理部77と、ラッチ78とから構成される。   The region determination processing unit 34 includes a subband determination processing unit 71 and a component determination processing unit 72 for HL subbands, a subband determination processing unit 73 and a component determination processing unit 74 for LH subbands, and a subband determination processing unit 74 for HH subbands. A subband determination processing unit 75, a component determination processing unit 76, a comprehensive determination processing unit 77, and a latch 78 are included.

HLサブバンド用のサブバンド判定処理部71は、図示のように、1HLサブバンド係数に対応した16個の2値化手段と、その2値化結果のORをとる手段と、2HLサブバンド係数に対応した4個の2値化手段と、その2値化結果のORをとる手段と、3HLサブバンド係数に対応した1個の2値化手段から構成される。図12では簡略化されているが、他のサブバンド判定処理部73,75も同様の構成である。   As shown in the figure, the subband determination processing unit 71 for the HL subband includes 16 binarizing means corresponding to the 1HL subband coefficient, a means for ORing the binarized result, and the 2HL subband coefficient. 4 binarizing means corresponding to the above, means for taking the OR of the binarized result, and one binarizing means corresponding to the 3HL subband coefficient. Although simplified in FIG. 12, the other subband determination processing units 73 and 75 have the same configuration.

次に、サブバンド判定処理部71と成分判定処理部72について処理を説明するが、他のサブバンドに関しても同様の処理が行われる。   Next, processing is described for the subband determination processing unit 71 and the component determination processing unit 72, but similar processing is performed for other subbands.

領域判定処理部34に入力された1HL,2HL,3HLサブバンド係数の絶対値は、サブバンド判定処理部71において、2値化手段によりサブバンド毎に予め定められた所定のしきい値(TL)と比較され、しきい値以上である場合には1(オン)、しきい値未満である場合には0(オフ)に2値化される。ここで、1回の判定に使用される各々の係数の数は、図11の網掛けされた係数の数となる。つまり、1HLは16個、2HLは4個、3HLは1個の係数が一度に2値化され、1HL,2HLに関しては、2値化後にOR処理がなされ2値の信号として出力される。つまり、1HLと2HLに関しては入力された係数の最大値を2値化したことと等価となる。こうして3つの2値化された信号が、成分判定部72へ入力される。成分判定部72では、3つの2値化信号のうち、2つ以上が1(オン)であれば1(オン)の信号を、そうでなければ0(オフ)の信号を判定結果として出力する。なお、この判定結果信号がオンの場合は、画像が文字であることを示している。これは、文字のような強いエッジを有する画像では、DWT係数に大きな値が出ることと、前述した”同一方向のサブバンド間で相関を持つ”という特性を利用したものである。また、1つの係数のみオンの場合を文字と判定しない理由は、ノイズの影響を排除するためである。成分判定処理部74,76からも同様の判定結果信号が出力される。   The absolute values of the 1HL, 2HL, and 3HL subband coefficients input to the region determination processing unit 34 are converted into predetermined threshold values (TL) predetermined for each subband by the binarization means in the subband determination processing unit 71. ) And is binarized to 1 (on) if it is greater than or equal to the threshold, and 0 (off) if it is less than the threshold. Here, the number of coefficients used for one determination is the number of shaded coefficients in FIG. That is, 16 coefficients of 1HL, 4 coefficients of 2HL, and 1 coefficient of 3HL are binarized at a time, and 1HL and 2HL are subjected to OR processing after binarization and output as a binary signal. In other words, 1HL and 2HL are equivalent to binarizing the maximum value of the input coefficient. The three binarized signals are input to the component determination unit 72 in this way. The component determination unit 72 outputs a 1 (ON) signal as a determination result if two or more of the three binarized signals are 1 (ON), and a 0 (OFF) signal otherwise. . When the determination result signal is on, it indicates that the image is a character. This is because an image having a strong edge such as a character has a large value in the DWT coefficient and the above-described characteristics of “correlation between subbands in the same direction”. The reason why only one coefficient is ON is not determined as a character is to eliminate the influence of noise. Similar determination result signals are also output from the component determination processing units 74 and 76.

総合判定処理部77では、成分判定処理部72,74,76の判定結果信号と、同一タイル内での直前に処理した係数組による総合判定結果(総合判定処理部77の出力)とのORをとり、それがオンであれば文字と判定する。この処理を、タイル内の全ての係数に対して行い、タイル内の全ての領域判定が終了した時点の総合判定結果がラッチ78にラッチされ、当該タイルの領域判定データとなる。つまり、タイル内にオンが一つでもあれば当該タイルを文字と判定し、一つもなければ非文字領域と判定する。次のタイルの判定開始時に、総合判定処理部77の出力は0クリアされる。   In the comprehensive determination processing unit 77, the OR of the determination result signal of the component determination processing units 72, 74, and 76 and the comprehensive determination result (output of the comprehensive determination processing unit 77) by the coefficient group processed immediately before in the same tile is performed. If it is on, it is determined to be a character. This process is performed for all the coefficients in the tile, and the overall determination result at the time when the determination of all the areas in the tile is completed is latched in the latch 78 and becomes the area determination data of the tile. That is, if there is one ON in the tile, the tile is determined as a character, and if there is no ON, it is determined as a non-character area. At the start of determination of the next tile, the output of the comprehensive determination processing unit 77 is cleared to zero.

なお、図12の回路を並列に複数備え、タイル内の全ての係数組についての総合判定処理部77の出力信号のORをとるように構成することもできる。このような構成は、ハード量が増えるが、1タイル当たりの判定処理を極めて短時間で行うことができる。   Note that a plurality of the circuits in FIG. 12 may be provided in parallel, and an OR operation may be performed on the output signal of the comprehensive determination processing unit 77 for all coefficient sets in the tile. Such a configuration increases the amount of hardware, but the determination process per tile can be performed in a very short time.

ここまでの説明から明らかなように、本実施例の領域判定処理部34は、請求項6の発明における領域判定手段に対応する。   As is apparent from the above description, the area determination processing unit 34 of this embodiment corresponds to the area determination means in the invention of claim 6.

以上説明したように、本実施例においては、符号化処理の過程で生成される離散ウェーブレット変換係数に基づいて領域判定を行うため、エンコーダ34の内部のみで領域判定処理が完結する。また、領域判定処理も比較的簡易である。このことは、領域判定に関わるハードウェアの単純化、ハード量の削減、もしくは領域判定に関わるソフトウェアの単純化や高速化に有利である。   As described above, in this embodiment, the region determination process is completed only within the encoder 34 because the region determination is performed based on the discrete wavelet transform coefficients generated in the course of the encoding process. Also, the area determination process is relatively simple. This is advantageous for simplification of hardware related to area determination, reduction of hardware amount, or simplification and speeding up of software related to area determination.

なお、ここでは、3デコンポジションレベルのDWT係数を使用する例を示したが、より多くの、または、より少ないデコンポジションレベルを使用して同様の領域判定を行うこともできる。また、符号化処理で生成される全てのデコンポジションレベルのDWT係数を使用する必要はなく、必要な解像度の係数を選択的に使用して領域判定を行ってよい。なお、一般にDWTではオクターブ分割を伴いながらデコンポジションレベルを上げていくので、デコンポジションレベルが高くなるほど、解像度は1/2づつ低くなる。したがって、文字等のエッジを判定する場合、あまりに低い解像度では文字密集部等でエッジの判定が不正確になるので、これを考慮して必要な解像度のDWT係数を領域判定に使用するのがよい。 Although an example in which the DWT coefficient of 3 decomposition levels is used is shown here, the same region determination can be performed using more or less decomposition levels. In addition, it is not necessary to use all the decomposition level DWT coefficients generated by the encoding process, and the area determination may be performed by selectively using a coefficient of a necessary resolution. In general, in the DWT, the decomposition level is increased with octave division, so that the resolution decreases by 1/2 as the decomposition level increases. Therefore, when determining the edge of a character or the like, the determination of the edge becomes inaccurate at a character crowded portion or the like at a very low resolution. Therefore, it is preferable to use a DWT coefficient having a necessary resolution for region determination in consideration of this. .

なお、前記実施例2において、エンコーダで符号化処理の際にDWTを利用した同様の領域判定を行ってもよい。その結果を符号ストリームのヘッダに記述するなどの方法によって符号ストリーム内に保存させるならば、符号ストリーム変更処理部50において、ヘッダ解析により領域判定の結果を認識することができる。かかる態様も本発明に包含される。   In the second embodiment, the same region determination using DWT may be performed during the encoding process by the encoder. If the result is stored in the code stream by a method such as describing it in the header of the code stream, the code stream change processing unit 50 can recognize the result of area determination by header analysis. Such embodiments are also encompassed by the present invention.

<変形例>
ここで、本実施例の変形例として、DWT係数より黒文字、色文字、網点、その他の領域を判定する方法を簡単に説明する。文字領域/非文字領域のみの判定の場合は、Y成分のみのDWT係数を使用したが、この変形例の場合はY,U,Vの全成分が領域判定に用いられる。
<Modification>
Here, as a modification of the present embodiment, a method for determining black characters, color characters, halftone dots, and other regions from DWT coefficients will be briefly described. In the determination of only the character area / non-character area, the DWT coefficient of only the Y component is used, but in this modification, all the components of Y, U, and V are used for the area determination.

すなわち、Y,U,Vの各成分について、図12に示したような構成の領域判定処理手段により文字/非文字の領域判定を行う。そして、U成分及び/又はV成分の判定結果が文字領域である場合には、色文字領域と判定する。U,V成分の両方の判定結果が非文字領域であり、かつ、Y成分の判定結果が文字領域である場合には、黒文字領域と判定する。   That is, for each of the Y, U, and V components, the character / non-character region determination is performed by the region determination processing unit configured as shown in FIG. When the determination result of the U component and / or the V component is a character area, it is determined as a color character area. When the determination result of both the U and V components is a non-character area and the determination result of the Y component is a character area, it is determined as a black character area.

前述のように、網点領域では特定のサブバンドに高いDWT係数が出現する。この性質に基づき、例えば成分判定処理部72において、2つ以上の係数がしきい値以上の場合は文字領域、1つであれば網点領域、というような判定を行うことが可能である。但し、このような網点領域の判定方法は誤判定が生じやすいので、より好適な方法としては、総合判定処理部77にて、網点と判定された数を計数するカウンタを備え、タイル内にて網点と判定された数が所定数を超えた場合にのみ網点領域と判定する方法をとると、網点領域の判定精度が向上する。   As described above, a high DWT coefficient appears in a specific subband in the halftone dot region. Based on this property, for example, the component determination processing unit 72 can perform determination such as a character region when two or more coefficients are equal to or greater than a threshold value, and a halftone dot region when there is one. However, such a halftone dot area determination method is prone to misjudgment. Therefore, a more preferable method is to include a counter that counts the number of halftone dots determined by the overall determination processing unit 77, and includes a tile area. If the method of determining a halftone dot region only when the number determined as a halftone dot exceeds a predetermined number, the determination accuracy of the halftone dot region is improved.

なお、本出願人の特許出願に係る特許文献4に記載されている網点判定手法を利用してもよい。この特許文献4には、DWT係数を利用した網点領域の判定手法がいくつか記載されているが、その一つの手法の概要を次に説明する。使用されるDWT係数はYコンポーネントのものである。   In addition, you may utilize the halftone dot determination method described in the patent document 4 which concerns on the patent application of this applicant. This Patent Document 4 describes several methods for determining a halftone dot region using DWT coefficients. The outline of one method will be described below. The DWT coefficient used is that of the Y component.

所定のブロック単位で、最も高い周波数成分である1HL,1LH,1HHサブバンド係数の絶対値を、各サブバンド対応の閾値とそれぞれ比較する。どのサブバンド係数の絶対値も閾値より大きくないならば、そのブロックを非網点領域とする。いずれかのサブバンドが閾値より大きいときには、中程度の周波数成分であるサブバンド係数、例えば4デコンポジションレベルの場合の3HL,3LH,3HHサブバンド係数を選び、その絶対値をサブバンド対応の閾値とそれぞれ比較する。そして、それら全てのサブバンド係数の絶対値が閾値より小さいときに、そのブロックを網点領域と判定する。   The absolute values of the 1HL, 1LH, and 1HH subband coefficients, which are the highest frequency components, are compared with thresholds corresponding to the subbands in a predetermined block unit. If the absolute value of any subband coefficient is not greater than the threshold value, the block is set as a non-halftone area. When any of the subbands is larger than the threshold, a subband coefficient that is an intermediate frequency component, for example, 3HL, 3LH, and 3HH subband coefficients in the case of 4 decomposition levels, is selected, and the absolute value is set to the threshold corresponding to the subband. Compare with each. Then, when the absolute values of all the subband coefficients are smaller than the threshold value, the block is determined as a halftone dot region.

前記実施例1〜5では、領域判定と階層分割構成制御の単位であるブロックとしてタイルを用いたが、JPEG2000におけるタイリングはオプションであり必ずしもタイリングが行われるわけではない。タイリングが行われない場合には、ブロックとしてタイルを用いることは適切でない。タイリングの有無に関係なく適用できるブロックとして、JPEG2000のコードブロックやプレシンクトを用いることができる。   In the first to fifth embodiments, tiles are used as blocks which are units for area determination and hierarchical division configuration control. However, tiling in JPEG2000 is an option, and tiling is not necessarily performed. If tiling is not performed, it is not appropriate to use tiles as blocks. JPEG2000 code blocks and precincts can be used as applicable blocks regardless of tiling.

ここでは、コードブロック単位にレイヤ分割構成を制御する実施例について説明する。本実施例に係る画像処理装置の基本的な構成は前記実施例5の場合と同様とし、相違点のみ説明することとする。本実施例に係る画像処理装置のエンコーダ12は、前記実施例5と同様な図10に示す構成であるが、その領域判定処理部34は図13に示すような構成とされる。   Here, an embodiment for controlling the layer division configuration in units of code blocks will be described. The basic configuration of the image processing apparatus according to the present embodiment is the same as that of the fifth embodiment, and only differences will be described. The encoder 12 of the image processing apparatus according to the present embodiment has the same configuration as shown in FIG. 10 as in the fifth embodiment, but the area determination processing unit 34 has the configuration as shown in FIG.

まず、図11を使用して、サブバンドとコードブロックの関係を説明する。前記実施例5の説明の際には、図11の細線で区切られた格子を1つのウェーブレット係数として扱ったが、ここでは、各格子を1つのコードブロックとして扱い説明する。   First, the relationship between subbands and code blocks will be described with reference to FIG. In the description of the fifth embodiment, the lattice delimited by the thin lines in FIG. 11 is treated as one wavelet coefficient. Here, each lattice is treated as one code block.

JPEG2000においては、コードブロックのサイズは各サブバンドで等しくなければならない。これは、デコンポジションレベルが異なれば、1つのコードブロックにより再現される実画像の面積(影響範囲)が異なることを意味している。したがって、デコンポジションレベル3で文字領域と判定されても、デコンポジションレベル2又は1では非文字領域と判定される場合があり得る。例えば、図11中の網掛けされた3HLのコードブロックが文字領域と判定されても、それに対応する1HLの16個のコードブロックには文字領域と写真領域が混在するということもあり得る。但し、このような場合であっても、本実施例の領域判定方法によれば、適切なレイヤ分割と画像のプログレッシブ再現を支障なく実現できる。   In JPEG2000, the code block size must be equal in each subband. This means that if the decomposition level is different, the area (influence range) of the actual image reproduced by one code block is different. Therefore, even if it is determined as a character area at the composition level 3, it may be determined as a non-character area at the composition level 2 or 1. For example, even if the shaded 3HL code block in FIG. 11 is determined to be a character area, the 16 code blocks of 1HL corresponding thereto may contain a character area and a photo area. However, even in such a case, according to the region determination method of the present embodiment, appropriate layer division and progressive reproduction of an image can be realized without hindrance.

図13を参照し、本実施例に係るエンコーダ12の領域判定処理部34について説明する。図示のように、HLサブバンド用のサブバンド判定処理部71及び成分判定処理部72と、LHサブバンド用のサブバンド判定処理部73及び成分判定処理部74と、HHサブバンド用のサブバンド判定処理部75及び成分判定処理部76と、総合判定処理部77とから構成される。HLサブバンド用のサブバンド判定処理部71は、図示のように、デコンポジションレベル対応の3組の2値化手段とバッファから構成される。図13では簡略化されているが、他のサブバンド判定処理部73,75も同様の構成である。   The region determination processing unit 34 of the encoder 12 according to the present embodiment will be described with reference to FIG. As shown, a subband determination processing unit 71 and component determination processing unit 72 for HL subbands, a subband determination processing unit 73 and component determination processing unit 74 for LH subbands, and a subband for HH subbands The determination processing unit 75, the component determination processing unit 76, and the comprehensive determination processing unit 77 are configured. As shown in the figure, the HL subband subband determination processing unit 71 includes three sets of binarization means and buffers corresponding to the composition level. Although simplified in FIG. 13, the other subband determination processing units 73 and 75 have the same configuration.

次に、サブバンド判定処理部71と成分判定処理部72について処理を説明するが、他のサブバンドに関しても同様の処理が行われる。   Next, processing is described for the subband determination processing unit 71 and the component determination processing unit 72, but similar processing is performed for other subbands.

領域判定処理部34には、各サブバンドの各コードブロックのDWT係数の絶対値が順次入力される。サブバンド判定処理部71においては、デコンポジションレベル対応の2値化手段により1係数ずつ順次、サブバンド毎に予め定められた所定のしきい値(TL)と比較され、しきい値以上でれば1(オン)、しきい値未満であれば0(オフ)に2値化される。2値化結果はサブバンド判定処理部71内のバッファに格納される。   The area determination processing unit 34 sequentially receives the absolute value of the DWT coefficient of each code block of each subband. In the subband determination processing unit 71, the binarization means corresponding to the decomposition level sequentially compares one coefficient at a time with a predetermined threshold value (TL) predetermined for each subband, and exceeds the threshold value. If it is less than the threshold, it is binarized to 0 (off). The binarization result is stored in a buffer in the subband determination processing unit 71.

このような構成をとる理由を以下に示す。JPEG2000におけるコードブロックサイズは、主、副走査とも2のべき乗の、4096以下の自由な値をとることができる。しかし、通常、符号化効率と利便性を考え、32×32または64×64のサイズが使用されることが多く、コードブロック内のDWT係数全てを同時に2値化しようとすると2値化手段のハード量が増大するため、2値化手段はデコンポジションレベル対応に1個ずつ用意し、逐次に2値化処理を行って、その結果をバッファに格納するようにしている。もちろん、ハード量の増大をいとわないならば、全係数を並列に2値化するような構成とすることもできる。   The reason for adopting such a configuration will be described below. The code block size in JPEG2000 can take a free value of 4096 or less, which is a power of 2 for both main and sub-scanning. However, in consideration of coding efficiency and convenience, a size of 32 × 32 or 64 × 64 is often used, and if all DWT coefficients in a code block are to be binarized at the same time, binarization means Since the amount of hardware increases, the binarization means prepares one by one corresponding to the decomposition level, sequentially performs binarization processing, and stores the result in the buffer. Of course, if the increase in the amount of hardware is not an issue, all the coefficients can be binarized in parallel.

他のサブバンド判定処理部73,75のおいても同様の処理が行われる。   Similar processing is performed in the other subband determination processing units 73 and 75.

成分判定処理部72は、図14に示すように、デコンポジションレベル対応の3組のOR処理部81及びバッファ82と、判定処理部83とからなる構成である。他の成分判定処理部74,76も同様の構成である。 Component determination processing unit 72, as shown in FIG. 14, a decomposition level corresponding three sets of OR processing unit 81 and a buffer 82, a structure comprising determining processing unit 83. The other component determination processing units 74 and 76 have the same configuration.

図14を参照し、成分判定処理部72の処理を説明する。サブバンド判定処理部71内のバッファから読み出された2値化されたサブバンド毎のHLb信号は、コードブロック単位にOR処理部81にてOR処理され、2値信号(1HLcb,2HLcb,3HLcb)が得られる。このOR処理後の2値化信号は、コードブロック内に1つでも2値化結果が1(オン)の係数があれ1(オン)になる(そのコードブロックを文字候補とすることを意味する)。OR処理部81から出力されるコードブロック単位の2値化信号はバッファ82に一旦記憶される。   The process of the component determination processing unit 72 will be described with reference to FIG. The binarized HLb signal for each subband read from the buffer in the subband determination processing unit 71 is ORed by the OR processing unit 81 for each code block, and the binary signal (1HLcb, 2HLcb, 3HLcb ) Is obtained. The binarized signal after the OR process is 1 (on) if there is a coefficient whose binarization result is 1 (on) in the code block (meaning that the code block is a character candidate). ). The binarized signal in units of code blocks output from the OR processing unit 81 is temporarily stored in the buffer 82.

判定処理部83は、バッファ82よりコードブロック単位の2値化信号を読み込み、各々のサブバンド毎の判定結果(J_1HL,J_2HL,J_3HL)を出力する。この判定結果はサブバンド毎のコードブロック単位に出力されるので、1個のJ_3HLに対して、4個のJ_2HLと、16個のJ_1HLが出力される。判定処理部83における判定は次のように行われる。J_3HLの判定では、3HLcb信号と、対応する4個の2HLcb信号のOR信号と、対応する16個の3HLcb信号のOR信号のうちの2つ以上が1(オン)ならば1(文字)を出力し、そうでなければ0(非文字)を出力する。J_2HLの判定では、2HLcb信号と、対応する3HLcbと、対応する4個の1HLcb信号のOR信号のうちの2つ以上が1ならば1(文字)を出力し、そうでなければ0(非文字)を出力する。J_1HLの判定では、1HLcb信号と、対応する2HLcb信号と、対応する3HLcb信号のうちの2つ以上が1ならば1(文字)を出力し、そうでなければ0(非文字)を出力する。   The determination processing unit 83 reads a binary signal in units of code blocks from the buffer 82, and outputs a determination result (J_1HL, J_2HL, J_3HL) for each subband. Since this determination result is output in units of code blocks for each subband, four J_2HLs and 16 J_1HLs are output for one J_3HL. The determination in the determination processing unit 83 is performed as follows. In J_3HL determination, if 2 or more of the 3HLcb signal, the corresponding 4HL signal of 2HLcb signal, and the corresponding 16HL signal of 3HLcb signal are 1 (ON), 1 (character) is output. Otherwise, 0 (non-character) is output. In J_2HL determination, if 2 or more of 2HLcb signal, corresponding 3HLcb, and corresponding OR signals of 1HLcb signal are 1, 1 (character) is output, otherwise 0 (non-character) ) Is output. In the determination of J_1HL, if two or more of the 1HLcb signal, the corresponding 2HLcb signal, and the corresponding 3HLcb signal are 1, 1 (character) is output, otherwise 0 (non-character) is output.

他の成分判定処理部74,76の処理も同様である。   The processing of the other component determination processing units 74 and 76 is the same.

総合判定処理部77は、成分判定処理部72,74,76より出力されるLH,HL,HH成分の判定出力信号を、デコンポジションレベル別に、対応コードブロック毎にOR処理することにより、デコンポジションレベル別のコードブロック単位の領域判定データJ1,J2,J3出力する。ここまでの説明から明らかなように、1個のJ3に対し、4個のJ2、16個のJ1が出力されることになる。   The overall determination processing unit 77 performs OR processing on the determination output signals of the LH, HL, and HH components output from the component determination processing units 72, 74, and 76 for each corresponding code block for each decomposition level, thereby performing decomposition. Outputs area judgment data J1, J2, and J3 for each code block by level. As is apparent from the description so far, four J2s and 16 J1s are output for one J3.

なお、タイリングを行う場合には、高いデコンポジションレベルのコードブロックのサイズが、サブバンドに含まれるDWT係数の数の関係から、デコンポジションレベル1のコードブロックよりも小さくなることがある(コードブロックサイズは、デフォルト値とサブバンド内の係数の数との小さい方の値をとるため)。この場合には、出力される領域判定データやOR処理に入力される2値データの数は上記の個数とは変化するが、特に問題とはならない。   When tiling is performed, the size of a code block having a high composition level may be smaller than that of a code block having a composition level 1 due to the number of DWT coefficients included in the subband (code code). The block size is the smaller of the default value and the number of coefficients in the subband). In this case, the number of area determination data to be output and the number of binary data to be input to the OR process vary from the above-mentioned number, but this is not a problem.

本実施例における符号ストリーム生成処理部37の構成は、前記実施例1と基本的に同様であるので図5を援用して説明する。本実施例に係る符号ストリーム生成処理部37の場合、パターンテーブル43とセレクタ44が各デコンポジションレベル毎に備えられ、各セレクタ44に、対応したデコンポジションレベルの領域判定データが入力される。各セレクタ44により選択された各デコンポジションレベル用のパターンテーブル43の情報がパケット生成処理部45に入力され、コードブロック単位にレイヤ分割構成が制御された符号ストリームが生成される。   Since the configuration of the code stream generation processing unit 37 in the present embodiment is basically the same as that of the first embodiment, description will be made with reference to FIG. In the case of the code stream generation processing unit 37 according to the present embodiment, a pattern table 43 and a selector 44 are provided for each composition level, and region determination data corresponding to the composition level is input to each selector 44. Information of the pattern table 43 for each composition level selected by each selector 44 is input to the packet generation processing unit 45, and a code stream in which the layer division configuration is controlled for each code block is generated.

なお、各デコンポジションレベルの領域判定データがパケット生成処理部45にも入力することにより、前記実施例5に述べたようなレイヤ単位の符号量を文字ブロックと非文字ブロックとで切り替えることができることは明らかである。   In addition, by inputting the region determination data of each decomposition level to the packet generation processing unit 45, the code amount of each layer as described in the fifth embodiment can be switched between the character block and the non-character block. Is clear.

本実施例は、タイリングの有無に拘わらず適用可能である。また、本実施例によれば、タイルサイズよりも小さなブロック単位で、領域判定をより高精度に行って符号ストリームの階層分割構成の制御、さらには階層単位の符号量制御を行うことができる。   This embodiment can be applied regardless of the presence or absence of tiling. Further, according to the present embodiment, it is possible to perform area determination with higher accuracy in units of blocks smaller than the tile size, and to control the code stream hierarchy division configuration and further control the code amount in units of hierarchies.

なお、本実施例はDWT係数に基づいて領域判定を行う例であるが、前記実施例1〜4のように画像データの像域分離信号を基に領域判定を行う場合においても、同様のコードブロック単位の領域判定を行うことも可能である。この場合には、各デコンポジションレベルに対応した画素(面積)の像域分離信号のOR処理を行って、各々のデコンポジションレベルにおける領域判定データを生成させればよい。そして、その領域判定データに従って、前記実施例と同様の符号ストリームの階層分割制御、さらには階層単位の符号量制御を行うことができる。   Although this embodiment is an example in which region determination is performed based on the DWT coefficient, the same code is used when performing region determination based on an image region separation signal of image data as in the first to fourth embodiments. It is also possible to perform block area determination. In this case, the region determination data at each decomposition level may be generated by performing OR processing on the image area separation signal of the pixel (area) corresponding to each decomposition level. Then, according to the area determination data, code stream layer division control similar to that of the above embodiment, and code amount control for each layer can be performed.

また、本実施例に示した方法と同様の方法によってプレシンクト単位に領域判定を行うことも可能である。JPEG2000におけるプレシンクトは、デコンポジションレベル毎にある程度自由なサイズを選択可能なので、判定領域を柔軟に選択可能となる。   It is also possible to perform area determination in units of precincts by a method similar to the method shown in the present embodiment. The precinct in JPEG2000 can be selected to a certain degree of freedom for each decomposition level, so that the determination area can be selected flexibly.

ここでは、符号ストリームに基づいて領域判定を行う実施例について説明する。   Here, an embodiment in which region determination is performed based on a code stream will be described.

JPEG2000の場合、符号データに基づいて領域判定を行う方法としては、パケットヘッダに記録されている情報を用いるのが、簡易で高速な方法である。パケットヘッダには、そのパケットに含まれるコードブロックに関する以下の情報が含まれている。
・零長パケット:パケット長が0であるか(空のパケットであるか)か否か。
・コードブロックの包含:現コードブロックがそれ以前のレイヤのパケットに包含されていたか否か。
・ゼロビットプレーン情報:コードブロック単位の(情報の無い)ビットプレーンの数(MSBから符号が現れるまでの数)。
・符号化パス数:コードブロック単位の現パケットに含まれる符号化パスの数
・コードブロックの符号長(符号量):現コードブロックに包含される符号量。
つまり、パケットヘッダのみから、これらの情報を取得可能である。基本的に可変長符号においては、符号量が多い(符号が長い)場合は多くの値が存在する。また、JPEG2000の場合、ビットプレーン符号化であるため、上位のビットプレーンの符号量が特定の値よりも大きい(0よりも大きい)場合は、該当するDWT係数はそのビットプレーンにて表される数値以上の値を持つことは明らかである。
In the case of JPEG2000, as a method for performing region determination based on code data, using information recorded in the packet header is a simple and high-speed method. The packet header includes the following information regarding the code block included in the packet.
Zero length packet: Whether the packet length is 0 (whether it is an empty packet) or not.
Code block inclusion: whether or not the current code block was included in the previous layer packet.
Zero bit plane information: The number of bit planes (no information) in code block units (number of MSBs until a code appears).
The number of coding passes: the number of coding passes included in the current packet in code block units. The code length (code amount) of the code block: the amount of code included in the current code block.
That is, these pieces of information can be acquired only from the packet header. Basically, a variable length code has many values when the code amount is large (the code is long). In the case of JPEG2000, since it is bit plane coding, when the code amount of the upper bit plane is larger than a specific value (greater than 0), the corresponding DWT coefficient is represented by that bit plane. It is clear that it has a value greater than the numerical value.

このような性質を使用することによって、各サブバンド内の全てのコードブロックに値の大きな(文字候補)の係数が存在するかどうかスキャンし、前記実施例5に関連して説明した方法と同様の方法(2つ以上のサブバンドに大きなDWT係数値(文字候補)が存在する場合に文字領域とする方法)などによりタイルの領域判定を行うことが可能である。   By using such a property, it is scanned whether there is a coefficient having a large value (character candidate) in all code blocks in each subband, and similar to the method described in connection with the fifth embodiment. It is possible to perform tile area determination by the above method (method of making a character area when a large DWT coefficient value (character candidate) exists in two or more subbands).

最も簡単な方法は、上記の0ビットプレーン情報を使用して、0でないサブビットプレーンのDWT係数におけるビット位置の情報から判定することである。例えば、あるコードブロック内に含まれるDWT係数のダイナミックレンジが10ビットであり、例えば0ビットプレーン数が3の場合、そのコードブロックに含まれるDWT係数の絶対値の最大値は、64〜127の範囲である。なお、上記のDWT係数の値は、量子化およびポスト量子化が行われていないDWT処理直後のDWT係数の値を表している。この方法により領域判定を行う実施例について説明する。   The simplest method is to use the above 0 bit plane information to determine from the information on the bit position in the DWT coefficient of the non-zero sub bit plane. For example, when the dynamic range of a DWT coefficient included in a certain code block is 10 bits and the number of 0-bit planes is 3, for example, the maximum absolute value of the DWT coefficient included in the code block is 64 to 127. It is a range. Note that the value of the DWT coefficient represents the value of the DWT coefficient immediately after the DWT process in which quantization and post-quantization are not performed. An embodiment in which region determination is performed by this method will be described.

本実施例に係る画像処理装置の全体構成は、前記実施例2と同様な図7に示すような構成であるとして説明する。本実施例において、領域判定処理は、図7の符号ストリーム変更処理部50の内部で行われる。   The overall configuration of the image processing apparatus according to the present embodiment will be described on the assumption that the configuration shown in FIG. In this embodiment, the area determination process is performed inside the code stream change processing unit 50 of FIG.

本実施例に係る符号ストリーム変更処理部50の構成を図15に示す。本実施例と前記実施例2との相違点は、ヘッダ解析処理部51から出力されるヘッダ解析情報を基にタイル単位の領域判定行う領域判定処理部53が追加されたことである。なお、前記実施例2の場合には、エンコーダ12において符号化処理時に領域判定を行い、領域判定結果を符号ストリームのタイルヘッダ部等に保持させたが、本実施例においては、その必要はない。したがって、エンコーダ12の領域判定処理部34は設ける必要がない。また、エンコーダ12により生成される符号ストリームのプログレッシブ順序や階層分割構成は任意であり、また、プログレッシブでなくともよい。   The configuration of the code stream change processing unit 50 according to the present embodiment is shown in FIG. The difference between the present embodiment and the second embodiment is that an area determination processing section 53 that performs area determination in units of tiles based on the header analysis information output from the header analysis processing section 51 is added. In the case of the second embodiment, the area determination is performed by the encoder 12 during the encoding process, and the area determination result is held in the tile header portion of the code stream. However, in the present embodiment, this is not necessary. . Therefore, the area determination processing unit 34 of the encoder 12 need not be provided. In addition, the progressive order and the hierarchical division configuration of the code stream generated by the encoder 12 are arbitrary, and may not be progressive.

ヘッダ解析処理部51は、入力されるパケットのパケットヘッダ情報を解析し、(YUV信号のうちの)Y信号に関するコードブロック単位での0ビットプレーン数を出力する。ここでは、例えば3デコンポジションレベルのDWT係数を示す図11において、細線で区切られた各格子を1つのコードブロックであるとして、各々のコードブロック毎の0ビットプレーン数がヘッダ解析処理部51から出力され、領域判定処理部53に入力する。   The header analysis processing unit 51 analyzes the packet header information of the input packet and outputs the number of 0-bit planes in the code block unit related to the Y signal (of the YUV signal). Here, for example, in FIG. 11 showing a DWT coefficient of 3 decomposition levels, it is assumed that each grid divided by thin lines is one code block, and the number of 0 bit planes for each code block is calculated from the header analysis processing unit 51. This is output and input to the area determination processing unit 53.

図16は領域判定処理部53のブロック図である。図示のように、領域判定処理部53は、HLサブバンド用のサブバンド判定処理部201及び成分判定処理部202と、LHサブバンド用のサブバンド判定処理部203及び成分判定処理部204と、HHサブバンド用のサブバンド判定処理部205及び成分判定処理部206と、総合判定処理部207と、ラッチ208とから構成される。   FIG. 16 is a block diagram of the area determination processing unit 53. As illustrated, the region determination processing unit 53 includes a subband determination processing unit 201 and a component determination processing unit 202 for HL subbands, a subband determination processing unit 203 and a component determination processing unit 204 for LH subbands, The sub-band determination processing unit 205 and the component determination processing unit 206 for the HH sub-band, an overall determination processing unit 207, and a latch 208 are included.

HLサブバンド用のサブバンド判定処理部201は、図示のように、1HLサブバンド係数に対応した16個の2値化手段と、その2値化信号のORをとる手段と、2HLサブバンド係数に対応した4個の2値化手段と、その2値化信号のORをとる手段と、3HLサブバンド係数に対応した1個の2値化手段から構成される。図16では簡略化されているが、他のサブバンド判定処理部203,205も同様の構成である。   As shown in the figure, the subband determination processing unit 201 for the HL subband includes 16 binarizing units corresponding to the 1HL subband coefficient, a unit for ORing the binarized signal, and the 2HL subband coefficient. 4 binarizing means, a means for ORing the binarized signal, and one binarizing means corresponding to the 3HL subband coefficients. Although simplified in FIG. 16, the other subband determination processing units 203 and 205 have the same configuration.

ヘッダ解析処理部51から出力されたコードブロック単位の0ビットプレーン数は、一旦バッファ200に記録される。タイル内の全てのコードブロックの0ビットプレーン数がバッファ200に蓄積されると、サブバンド判定処理部201は、2値化手段により、1HLz,2HLz,3HLzに関する0ビットプレーン数を、サブバンド毎に予め定められた所定のしきい値(TL_1HLz,TL_2HLz,TL_3HLz)と比較し、しきい値より大きい場合には0(オフ)、しきい値以下である場合には1(オン)に2値化する。このように、この2値化処理は通常の2値化処理とは出力レベルが逆である。これは、0ビットプレーン数の数が小さい場合はコードブロック内に大きなDWT係数が存在することを示し、数が大きな場合にはコードブロック内に大きなDWT係数が存在しないこと示す、という関係に合わせるためである。   The number of 0-bit planes in units of code blocks output from the header analysis processing unit 51 is once recorded in the buffer 200. When the number of 0-bit planes of all code blocks in the tile is accumulated in the buffer 200, the subband determination processing unit 201 uses the binarization unit to calculate the number of 0-bit planes for 1HLz, 2HLz, and 3HLz for each subband. Compared with a predetermined threshold value (TL_1HLz, TL_2HLz, TL_3HLz) determined in advance, it is 0 (off) if it is larger than the threshold value, and 1 (on) if it is less than the threshold value. Turn into. As described above, this binarization process has an output level opposite to that of the normal binarization process. This matches the relationship that when the number of 0-bit planes is small, there is a large DWT coefficient in the code block, and when the number is large, it indicates that there is no large DWT coefficient in the code block. Because.

ここでの1回の判定に使用される0ビットプレーン数の個数は、前記実施例5の場合と同様に図11の網掛けされた係数の数となる。つまり、1HLzは16個、2HLzは4個、3HLzは1個の係数が一度に2値化され、1HLzと2HLzに関しては16個、4個の2値化信号がOR手段によりそれぞれOR処理され、OR処理後の2値信号がサブバンド判定処理部201より出力される。   The number of 0-bit planes used for one determination here is the number of shaded coefficients in FIG. 11 as in the fifth embodiment. That is, 16 coefficients of 1HLz, 4 coefficients of 2HLz, and 1 coefficient of 3HLz are binarized at a time, and 16 binaries and 4 binarized signals are ORed by OR means for 1HLz and 2HLz, The binary signal after the OR process is output from the subband determination processing unit 201.

成分判定処理部202は、サブバンド判定処理部201より出力される3つの2値化信号のうち、2つ以上が1(オン)であれば1(オン)すなわち文字領域、そうでなければ0(オフ)すなわち非文字領域の判定結果信号を出力する。   The component determination processing unit 202 is 1 (on), that is, a character region if two or more of the three binarized signals output from the subband determination processing unit 201 are 1 (on), and 0 otherwise. (Off), that is, a non-character area determination result signal is output.

サブバンド判定処理部201及び成分判定処理部202について説明したが、LHサブバンドに対応したサブバンド判定処理部203及び成分判定処理部204、HHサブバンドに対応したサブバンド判定処理部205及び成分判定処理部208の処理も同様である。   Although the subband determination processing unit 201 and the component determination processing unit 202 have been described, the subband determination processing unit 203 and the component determination processing unit 204 corresponding to the LH subband, the subband determination processing unit 205 and the component corresponding to the HH subband The same applies to the processing of the determination processing unit 208.

総合判定処理部207は、成分判定処理部202,204,206の判定結果信号と、同一タイル内での一つ前の総合判定結果信号とのORをとり、そのOR信号を総合判定結果信号として出力する。この総合処理がタイル内の全ての係数に対して行われ、タイル内の全ての総合判定処理が終了した時点の総合判定結果信号がラッチ208にラッチされ、それが当該タイルの領域判定データとなる。つまり、タイル内にオンが一つでもあれば文字タイルと判定し、一つもなければ非文字タイルと判定する。なお、次のタイルの判定開始時に、総合判定処理部207の出力は0クリアされる。   The comprehensive determination processing unit 207 takes an OR of the determination result signals of the component determination processing units 202, 204, and 206 and the previous comprehensive determination result signal in the same tile, and outputs the OR signal as a comprehensive determination result signal. This total processing is performed for all coefficients in the tile, and the total determination result signal at the time when all the total determination processing in the tile is completed is latched in the latch 208, which becomes the area determination data of the tile. . That is, if there is one ON in the tile, it is determined as a character tile, and if there is no ON, it is determined as a non-character tile. Note that the output of the comprehensive determination processing unit 207 is cleared to 0 at the start of determination of the next tile.

ここまでの説明から明らかなように、本実施例は請求項7の発明の一実施例である。   As is apparent from the above description, this embodiment is an embodiment of the invention of claim 7.

以上説明したように、本実施例によれば、符号データから領域判定を行うことができるため、符号化処理時に領域判定を行う必要がなく、したがってメモリやHDD等の記憶媒体あるいは符号ストリームに領域判定結果を保持しておく必要がない。また、本実施例におけるパケットヘッダ情報のみに基づく領域判定処理は、処理が簡易であるという長所を有する。   As described above, according to the present embodiment, since area determination can be performed from code data, it is not necessary to perform area determination at the time of encoding processing. Therefore, an area can be stored in a storage medium such as a memory or an HDD or a code stream. There is no need to hold the determination result. Further, the area determination process based only on the packet header information in this embodiment has an advantage that the process is simple.

なお、本実施例においては、タイル単位で領域判定を行ったが、同様の方法により、前記実施例6のようなコードブロック単位の領域判定もしくはプレシンクト単位の領域判定も容易に可能であることは明らかである。   In this embodiment, the area determination is performed in units of tiles. However, it is possible to easily perform the area determination in units of code blocks or the area determination in units of precinct as in the sixth embodiment by the same method. it is obvious.

前記実施例1〜7においては、領域判定を行い、領域に応じて階層分割構成の制御、さらには階層単位の符号量の制御を行った。しかし、スキャナから読込まれた種々の画像データに対し正確な領域判定を実現することは容易でなく、ある程度の誤判定は避けられない。特に、鉛筆書き等の低コントラスト文字や色地上の文字等で誤判定が生じる可能性が高い。そして、誤判定が生じ、それに応じた処理がなされると、復号画像上に違和感が生じる可能性がある。このような違和感を緩和するためには、画像の特徴量を検出し、その特徴量に応じて符号ストリームのレイヤ分割構成(階層分割構成)を”多段階に”制御すると効果的である。ここでは、そのような特徴量に応じた多段階の制御を行う実施例について説明する。   In the first to seventh embodiments, region determination is performed, and the hierarchical division configuration is controlled according to the region, and further, the code amount is controlled in units of layers. However, it is not easy to realize accurate region determination for various image data read from the scanner, and some misjudgment is inevitable. In particular, there is a high possibility that erroneous determination will occur in low-contrast characters such as pencil writing or characters on the color ground. And when a misjudgment arises and the process according to it is made, a sense of incongruity may arise on a decoded image. In order to alleviate such a sense of incongruity, it is effective to detect the feature amount of the image and control the layer division configuration (hierarchy division configuration) of the code stream according to the feature amount in “multistage”. Here, an embodiment that performs multi-stage control according to such feature amounts will be described.

図17は、本実施例に係る画像処理装置の全体構成を示すブロック図である。この画像処理装置は、サーバ1として利用し得るMFPであり、図2に示した構成と比較すると、像域分離処理部10が特徴量算出部111に置き換えられている点が相違する。これ以外の全体的構成及びMFPとしての動作は前記実施例1に関連して述べた通りである。   FIG. 17 is a block diagram illustrating the overall configuration of the image processing apparatus according to the present embodiment. This image processing apparatus is an MFP that can be used as the server 1, and is different from the configuration shown in FIG. 2 in that the image area separation processing unit 10 is replaced with a feature amount calculation unit 111. Other overall configurations and operations as the MFP are the same as described in connection with the first embodiment.

なお、像域分離処理部10にはスキャナ9から出力される画像データが入力されたが、特徴量算出部111にはエンコーダ処理部12に入力される画像データが入力される。これは、符号化処理の対象となる画像データそのものを特徴量の算出に用いることにより、特徴量の算出精度を向上させようとするものである。   Note that image data output from the scanner 9 is input to the image area separation processing unit 10, but image data input to the encoder processing unit 12 is input to the feature amount calculation unit 111. This is to improve the calculation accuracy of the feature amount by using the image data itself that is the object of the encoding process for the calculation of the feature amount.

図18は特徴量算出部111のブロック図である。図示のように、特徴量算出部111は、エッジ量算出フィルタ121、絶対値化処理部122、最大値選択部123及びルックアップテーブル(LUT)124から構成される。   FIG. 18 is a block diagram of the feature amount calculation unit 111. As illustrated, the feature amount calculation unit 111 includes an edge amount calculation filter 121, an absolute value processing unit 122, a maximum value selection unit 123, and a lookup table (LUT) 124.

この特徴量算出部111には、画像データのG信号が入力される。入力されたG信号に対してエッジ量算出フィルタ121で2種類のフィルタによるフィルタ演算が行われ、それぞれのフィルタ演算結果が絶対値化処理部122へ入力される。絶対値化処理部122では、それぞれのフィルタ演算結果を絶対値化して2つのデータを出力する。最大値選択部123では、この2つのデータのうちの最大値を選択して出力する。このデータは、LUT124により所定段階数の特徴量(エッジ量)を表すEdge信号に変換される。本実施例では、Edge信号は0〜7の8値とし、その値が大きいほどエッジ量が大きいことを表す。なお、LUT124による変換は、Edge信号と入力画像との関係を線形に近づけるために行われる。   The G signal of the image data is input to the feature amount calculation unit 111. The edge amount calculation filter 121 performs filter calculation using two types of filters on the input G signal, and the respective filter calculation results are input to the absolute value processing unit 122. The absolute value processing unit 122 converts each filter calculation result to an absolute value and outputs two data. The maximum value selection unit 123 selects and outputs the maximum value of the two data. This data is converted by the LUT 124 into an Edge signal that represents a predetermined number of feature quantities (edge quantities). In this embodiment, the Edge signal has eight values of 0 to 7, and the larger the value, the larger the edge amount. Note that the conversion by the LUT 124 is performed in order to bring the relationship between the Edge signal and the input image close to linear.

エッジ量算出フィルタ121では、例えば図19(a),(b)のような方向性の異なる2種類の一次微分フィルタが用いられる。   In the edge amount calculation filter 121, for example, two types of first-order differential filters with different directivities as shown in FIGS. 19A and 19B are used.

なお、特徴量算出処理部111において、画像データのR,G,B各信号からエッジ量を算出し、それらの絶対値の最大値を選択するようにしてもよい。あるいは、RGB信号から所定の演算により生成した一つの信号からエッジ量を算出するようにしてもよい。さらには、エンコーダ12内で色変換処理により生成されるY信号を特徴量算出部111に入力し、同様のエッジ量検出を行うことも可能である。これらの態様も本発明に包含される。   Note that the feature amount calculation processing unit 111 may calculate the edge amount from each of the R, G, and B signals of the image data, and select the maximum absolute value thereof. Alternatively, the edge amount may be calculated from one signal generated by a predetermined calculation from the RGB signal. Furthermore, it is also possible to input the Y signal generated by the color conversion process in the encoder 12 to the feature amount calculation unit 111 and perform the same edge amount detection. These embodiments are also encompassed by the present invention.

図20は、本実施例に係るエンコーダ12のブロック図である。前記実施例1などに係る図3に示した構成と比較すると、領域判定処理部34が最大値選択部131に置き換えられている。最大値選択部131は、各タイル単位で、タイル内でのEdge信号の最大値を選択し、その値をタイルにおける特徴量(エッジ量)として出力する。この特徴量は符号ストリーム生成処理部37に入力される。 FIG. 20 is a block diagram of the encoder 12 according to the present embodiment. Compared to the configuration shown in FIG. 3 according to the first embodiment or the like, the area determination processing unit 34 is replaced with a maximum value selection unit 131. The maximum value selection unit 131 selects the maximum value of the Edge signal in the tile for each tile, and outputs the value as a feature amount (edge amount) in the tile. This feature amount is input to the code stream generation processing unit 37.

符号ストリーム生成処理部37の構成は、前記実施例1などに係る図5に示した構成と同様であるが、パターンテーブル43には、特徴量の段階数に対応した8種類のレイヤパターンが設定される。例えば、特徴量0(最低エッジ量)に対応するレイヤパターンは前記実施例1における非文字領域用のレイヤパターンとし、特徴量7(最大エッジ量)に対応するレイヤパターンは前記実施例1における文字領域用のレイヤパターンとし、中間的な特徴量1〜6に対応するレイヤパターンとしては、非文字領域用レイヤパターンと文字領域用レイヤパターンの中間的なレイヤパターンが用いられる。   The configuration of the code stream generation processing unit 37 is the same as the configuration shown in FIG. 5 according to the first embodiment, but 8 types of layer patterns corresponding to the number of feature amount stages are set in the pattern table 43. Is done. For example, the layer pattern corresponding to the feature amount 0 (minimum edge amount) is the layer pattern for the non-character area in the first embodiment, and the layer pattern corresponding to the feature amount 7 (maximum edge amount) is the character in the first embodiment. As the layer pattern for the region, an intermediate layer pattern between the non-character region layer pattern and the character region layer pattern is used as the layer pattern corresponding to the intermediate feature amounts 1 to 6.

セレクタ44は、特徴量に対応したレイヤパターンを選択してパケット生成処理部45へ入力する。したがって、パケット生成処理部45により、特徴量0のタイルでは非文字領域に適した階層分割構成の符号ストリームが生成され、特徴7のタイルでは文字領域に適した階層分割構成の符号ストリームが生成され、特徴量1〜6のタイルでは、その値に応じた中間的な階層分割構成の符号ストリームが生成されることとなる。このようにして、多値の特徴量に従って、符号ストリームの階層分割構成(レイヤ分割構成)が多段階に制御される。   The selector 44 selects a layer pattern corresponding to the feature amount and inputs it to the packet generation processing unit 45. Accordingly, the packet generation processing unit 45 generates a code stream having a hierarchical division configuration suitable for a non-character region for a tile having a feature amount of 0, and generates a code stream having a hierarchical division configuration suitable for a character region for a tile having a feature amount 7. In the tiles having the feature amounts 1 to 6, a code stream having an intermediate hierarchical division structure corresponding to the value is generated. In this way, the hierarchical division configuration (layer division configuration) of the code stream is controlled in multiple stages according to the multi-value feature quantity.

ここまでの説明から明らかなように、本実施例は請求項8,18の発明の一実施例である。特徴量算出部111及び最大値選択部131と、その作用は、請求項8,18における特徴量検出手段と工程に対応する。また、パターンテーブル43及びセレクタ44とその作用は、請求項8,18における階層分割構成を制御する手段と工程に対応する。   As is apparent from the above description, this embodiment is an embodiment of the inventions of claims 8 and 18. The feature amount calculation unit 111 and the maximum value selection unit 131 and their operations correspond to the feature amount detection means and the process in claims 8 and 18. The pattern table 43 and the selector 44 and their operations correspond to the means and process for controlling the hierarchical division structure in claims 8 and 18.

以上説明したように本実施例によれば、符号ストリームのレイヤ分割構成を特徴量(エッジ量)に従って多段階に制御されるため、領域判定結果に従ってレイヤ分割構成を制御する構成における、復号画像に誤判定による違和感が生じるという問題は解消される。   As described above, according to the present embodiment, since the layer division configuration of the code stream is controlled in multiple stages according to the feature amount (edge amount), the decoded image in the configuration in which the layer division configuration is controlled according to the region determination result. The problem of uncomfortable feeling due to erroneous determination is solved.

なお、符号ストリーム生成処理部37において、特徴量0に対応したレイヤパターンと特徴量7に対応したレイヤパターンのみをパターンテーブル43に設定し、それら2種類のレイヤパターンを用いて特徴量1〜6に対応した中間的なレイヤパターンを算出する構成としてもよく、かかる態様も本発明に包含される。   In the code stream generation processing unit 37, only the layer pattern corresponding to the feature amount 0 and the layer pattern corresponding to the feature amount 7 are set in the pattern table 43, and the feature amounts 1 to 6 are set using these two types of layer patterns. An intermediate layer pattern corresponding to the above may be calculated, and such an aspect is also included in the present invention.

また、像域分離も行い、その像域分離信号をLUT124に入力し、像域分離信号が文字領域を示す場合にLUT124より7のEdge信号を出力し、像域分離信号が非文字領域を示す場合には、LUT124より最大値選択部123で選択されたエッジ量に応じた0〜6のEdge信号を出力するというように、特徴量検出に像域分離を組み合わせることも可能である。かかる態様も本発明に包含される。   Also, image area separation is performed, and the image area separation signal is input to the LUT 124. When the image area separation signal indicates a character area, an edge signal of 7 is output from the LUT 124, and the image area separation signal indicates a non-character area. In this case, it is also possible to combine image area separation with feature amount detection so that the LUT 124 outputs 0 to 6 Edge signals corresponding to the edge amount selected by the maximum value selection unit 123. Such embodiments are also encompassed by the present invention.

また、エッジ量はエントロピー符号化時の符号量との対応や文字らしさとの対応も良いため、特徴量として極めて好適である。しかし、エッジ量以外の特徴量を利用することも可能である。例えば、パターン認識を行い、その類似度合い等を特徴量として利用することも可能であり、かかる態様も本発明に包含される。   Further, the edge amount is very suitable as a feature amount because it corresponds well to the code amount at the time of entropy encoding and to the character quality. However, it is also possible to use a feature amount other than the edge amount. For example, it is possible to perform pattern recognition and use the degree of similarity as a feature amount, and such an aspect is also included in the present invention.

また、コードブロック単位又はプレシンクト単位で特徴量を検出することも可能である。それには、例えば、最大値選択部131によってコードブロック内又はプレシンクト内の最大値を選択すればよい。   It is also possible to detect feature quantities in units of code blocks or precincts. For this purpose, for example, the maximum value in the code block or precinct may be selected by the maximum value selection unit 131.

また、前記実施例3に関連して説明したようなレイヤ単位(階層単位)の符号量を設定符号量に制御させることも可能である。さらには、レイヤ単位の設定符号量を特徴量に従って行わせることも可能である。例えば、符号ストリーム生成処理部37において、特徴量をパケット生成処理部45にも入力することにより、パケット生成処理部45でレイヤ単位の符号量を特徴量に従って多段階に制御させることができる。かかる態様は、請求項10,11の発明の一実施例に相当する。   It is also possible to control the code amount in units of layers (hierarchical units) as described in connection with the third embodiment to the set code amount. Furthermore, the set code amount for each layer can be performed according to the feature amount. For example, in the code stream generation processing unit 37, by inputting the feature amount also to the packet generation processing unit 45, the packet generation processing unit 45 can control the code amount in units of layers according to the feature amount in multiple stages. This aspect corresponds to an embodiment of the inventions of claims 10 and 11.

また、前記実施例2に係る画像処理装置(図7)において、前述したような特徴量検出を行い、エンコーダ12により生成される符号ストリーム内に、検出された特徴量の情報を保持させ、符号ストリーム変更処理部50(図8)で、本実施例と同様に特徴量に従った階層分割構成(レイヤ分割構成)の制御を行わせることも可能である。かかる態様は請求項9の一実施例に相当する。さらに、特徴量に従ってレイヤ単位の符号量を多段階に制御させることも可能である。   Further, in the image processing apparatus according to the second embodiment (FIG. 7), the feature amount detection as described above is performed, and the information of the detected feature amount is held in the code stream generated by the encoder 12, and the code The stream change processing unit 50 (FIG. 8) can also control the hierarchical division configuration (layer division configuration) according to the feature amount, as in the present embodiment. This aspect corresponds to an embodiment of the ninth aspect. Furthermore, it is possible to control the code amount of each layer in multiple stages according to the feature amount.

前記実施例8では、実空間画像信号から特徴量を検出したが、次にDWT係数から特徴量を算出する実施例を説明する。   In the eighth embodiment, the feature amount is detected from the real space image signal. Next, an embodiment in which the feature amount is calculated from the DWT coefficient will be described.

本実施例に係る画像処理装置の全体構成は、前記実施例8に係る画像処理装置(図17)より特徴量算出部111を省いた構成である。全体的動作は前記実施例8と同様であるので説明を省略し、前記実施例8との相違点を以下に説明する。   The overall configuration of the image processing apparatus according to the present embodiment is a configuration in which the feature amount calculation unit 111 is omitted from the image processing apparatus according to the eighth embodiment (FIG. 17). Since the overall operation is the same as that of the eighth embodiment, description thereof will be omitted, and differences from the eighth embodiment will be described below.

図21は、本実施例に係るエンコーダ12のブロック図である。このエンコーダ12は、前記実施例5に係るエンコーダ(図10)の領域判定処理部34を特徴量算出処理部141に置き換えた構成である。   FIG. 21 is a block diagram of the encoder 12 according to the present embodiment. The encoder 12 has a configuration in which the area determination processing unit 34 of the encoder according to the fifth embodiment (FIG. 10) is replaced with a feature amount calculation processing unit 141.

図22は、本実施例に係る特徴量算出処理部141のブロック図である。図示のように、特徴量算出部141は、HLサブバンドに対応した加算処理部151と、LHサブバンドに対応した加算処理部152と、HHサブバンドに対応した加算処理部153と、最大値選択処理部154と、ルックアップテーブル(LUT)155と、最大値選択処理部156と、ラッチ157とから構成される。   FIG. 22 is a block diagram of the feature amount calculation processing unit 141 according to the present embodiment. As illustrated, the feature amount calculation unit 141 includes an addition processing unit 151 corresponding to the HL subband, an addition processing unit 152 corresponding to the LH subband, an addition processing unit 153 corresponding to the HH subband, and a maximum value. A selection processing unit 154, a lookup table (LUT) 155, a maximum value selection processing unit 156, and a latch 157 are included.

この特徴量算出処理部141には、前記実施例5と同様に図11の網掛けされた部分のDWT係数(絶対値)が一度に入力される(ここでは、図11の細線の格子はDWT係数値を示すものとする)。入力されたHL,LH,HHのDWT係数は、加算処理部151,152,153によりそれぞれ加算され、その合計値が出力される。最大値選択処理部154により、その3つの合計値のうちの最大値が選択される。選択された最大値はLUT155によって前記実施例9と同様に8値の特徴量に変換される。この特徴量は最大値選択処理部156によって一つ前の特徴量と比較され、そのうちの大きな方の値が最大値選択処理部156より出力される。同様の処理がタイル内の全ての係数について繰り返され、全ての係数の処理が終了した時点における最大値選択処理部157の出力値がラッチ157にラッチされ、当該タイルの特徴量として出力される。なお、最大値選択処理部156の出力は、次のタイルの特徴量算出処理の開始前に0クリアされる。つまり、特徴量算出処理部141から出力される特徴量は、タイル内の特徴量の最大値である。   In the feature quantity calculation processing unit 141, the DWT coefficients (absolute values) of the shaded portions in FIG. 11 are input at once as in the fifth embodiment (here, the fine line grid in FIG. 11 is DWT). To indicate the coefficient value). The input WT, LH, and HH DWT coefficients are added by the addition processing units 151, 152, and 153, respectively, and the total value is output. The maximum value selection processing unit 154 selects the maximum value among the three total values. The selected maximum value is converted into an 8-value feature quantity by the LUT 155 as in the ninth embodiment. This feature value is compared with the previous feature value by the maximum value selection processing unit 156, and the larger value is output from the maximum value selection processing unit 156. Similar processing is repeated for all the coefficients in the tile, and the output value of the maximum value selection processing unit 157 at the time when the processing of all the coefficients is completed is latched in the latch 157 and output as the feature amount of the tile. Note that the output of the maximum value selection processing unit 156 is cleared to 0 before the start of the feature value calculation process for the next tile. That is, the feature value output from the feature value calculation processing unit 141 is the maximum value of the feature value in the tile.

そして、符号ストリーム生成処理部37において、前記実施例8と同様に階層分割構成が特徴量に従って多段階に制御された符号ストリームが生成される。   Then, the code stream generation processing unit 37 generates a code stream in which the hierarchical division configuration is controlled in multiple stages according to the feature amount as in the eighth embodiment.

ここまでの説明から明らかなように、本実施例は請求項13の発明の一実施例に相当する。   As is apparent from the above description, this embodiment corresponds to an embodiment of the invention of claim 13.

なお、同様の方法により、コードブロック単位又はプレシンクト単位で特徴量を検出してもよいことは明らかである。かかる態様も請求項13の発明に包含される。   It is obvious that the feature amount may be detected in units of code blocks or precincts by a similar method. Such an aspect is also included in the invention of claim 13.

また、DWT係数を使用した特徴量の算出方法は、前述の方法のみに限定されるものではない。   Further, the method for calculating the feature amount using the DWT coefficient is not limited to the above-described method.

また、前記実施例2に係る画像処理装置(図7)において、エンコーダ12内で同様の特徴量検出を行い、検出した特徴量を符号ストリーム内に保持させ、符号ストリーム変更処理部50(図8)で、本実施例と同様に特徴量に従った階層分割構成(レイヤ分割構成)の制御を行わせることも可能である。かかる態様は請求項9の一実施例に相当する。さらに、特徴量に従って階層単位(レイヤ)の符号量を多段階に制御させることも可能であり、かかる態様は請求項10,11の一実施例に相当する。   In the image processing apparatus according to the second embodiment (FIG. 7), the same feature amount detection is performed in the encoder 12, the detected feature amount is held in the code stream, and the code stream change processing unit 50 (FIG. 8) is detected. ), It is also possible to control the hierarchical division configuration (layer division configuration) according to the feature amount as in the present embodiment. This aspect corresponds to an embodiment of the ninth aspect. Furthermore, it is possible to control the code amount of the hierarchical unit (layer) in multiple stages according to the feature amount, and this aspect corresponds to an embodiment of claims 10 and 11.

次に、符号データから特徴量を算出する実施例を説明する。   Next, an embodiment for calculating a feature amount from code data will be described.

本実施例における画像処理装置の全体構成は、前記実施例7に係る画像処理装置(図7)の像域分離処理部10を省いた構成である。また、全体的動作は前記実施例7と同様である。   The overall configuration of the image processing apparatus according to the present embodiment is a configuration in which the image area separation processing unit 10 of the image processing apparatus according to the seventh embodiment (FIG. 7) is omitted. The overall operation is the same as that of the seventh embodiment.

本実施例に係る符号ストリーム変更処理部50は、前記実施例7に係る符号ストリーム生成処理部(図15)における領域判定処理部53を、図23に示す構成の特徴量算出処理部に置き換えた構成である。   The code stream change processing unit 50 according to the present embodiment replaces the area determination processing unit 53 in the code stream generation processing unit (FIG. 15) according to the seventh embodiment with a feature amount calculation processing unit having the configuration illustrated in FIG. It is a configuration.

この特徴量算出処理部は、図示のように、0ビットプレーン解析処理部161、加算処理部162,163,164、最大値選択処理部165、ルックアップテーブル(LUT)166、最大値選択処理部167及びラッチ168からなる。   As shown in the figure, this feature amount calculation processing unit includes a 0-bit plane analysis processing unit 161, addition processing units 162, 163, 164, a maximum value selection processing unit 165, a lookup table (LUT) 166, a maximum value selection processing unit 167, and a latch 168. Consists of.

ヘッダ解析処理部51よりパケットヘッダが入力されると、0ビットプレーン解析処理部161によってパケットヘッダの0ビットプレーン情報が解析され、各サブバンドのコードブロック単位のMSBからの0ビットプレーン情報が得られる。言い換えれば、各コードブロック単位の最大値の最上位ビットが含まれるサブビットプレーンが得られる。0ビットプレーン解析処理部161では、この情報に応じた重み値を与えて図11の網掛けされた部分の重み(W_1HL、W_2HL、W_3HL)を同時に出力する(ここでは、図11の細線の格子はコードブロックを示すものとする)。ここでの重みは、例えば、上記最上位ビットがLSBから7ビット目であれば128というように、2の”最上位ビット”乗とする。なお、この場合にサブビットプレーン単位にて重みを変更してもよい。例えば、最上位ビットがLSBから7ビット目のSignificance propagationパスである場合は、128+128×3/4(128は2の7乗、3/4はSignificance propagationパスの重み)という計算で224、Magnitude refinementパスの場合は、128+128×2/4という計算で192、Clean upパスの場合は、128+128×1/4という計算で160となる。   When a packet header is input from the header analysis processing unit 51, the 0-bit plane analysis processing unit 161 analyzes the 0-bit plane information of the packet header and obtains 0-bit plane information from the MSB of each subband code block unit. It is done. In other words, a sub bit plane including the most significant bit of the maximum value of each code block unit is obtained. In the 0-bit plane analysis processing unit 161, a weight value corresponding to this information is given and the shaded portion weights (W_1HL, W_2HL, W_3HL) in FIG. Indicates a code block). The weight here is 2 to the power of the “most significant bit”, for example, 128 if the most significant bit is the seventh bit from the LSB. In this case, the weight may be changed in units of sub bit planes. For example, if the most significant bit is the 7th bit significance propagation path from the LSB, 128 + 128 × 3/4 (128 is the 7th power of the 2 and 3/4 is the weight of the significance propagation path) 224, Magnitude refinement In the case of the path, the calculation is 128 + 128 × 2/4, 192, and in the case of the clean up path, the calculation is 128 + 128 × 1/4, 160.

これらの重みを、図11に示す網掛けされたコードブロックの数だけ、つまりW_1HLを16個、W_2HLを4個、W_3HLを1個、加算処理部162で加算する。LH,HH成分の重みについても同様に加算処理部163,164で加算処理する。3個の加算値のうち最大値が最大値選択処理部165にて選択される。これ以降の処理は実施例9と同様であり、最大値選択処理部165の出力値はLUT166により0〜7の値に変換され、その値と直前の最大値選択処理部167の出力値の大きい方の値が最大値選択処理部167により選択され、最終的にラッチ168にラッチされた値がタイルの特徴量として出力される。そして、前記実施例7と同様にして、特徴量に従って階層分割構成が多段階に制御された符号ストリームがパケット生成処理部45により生成される。   These weights are added by the addition processing unit 162 by the number of shaded code blocks shown in FIG. 11, that is, 16 W_1HL, 4 W_2HL, and 1 W_3HL. Similarly, addition processing units 163 and 164 perform addition processing on the weights of the LH and HH components. The maximum value among the three added values is selected by the maximum value selection processing unit 165. The subsequent processing is the same as in the ninth embodiment, and the output value of the maximum value selection processing unit 165 is converted to a value of 0 to 7 by the LUT 166, and the output value of the maximum value selection processing unit 167 just before that value is large. One value is selected by the maximum value selection processing unit 167, and the value finally latched by the latch 168 is output as the feature amount of the tile. As in the seventh embodiment, the packet generation processing unit 45 generates a code stream in which the hierarchical division configuration is controlled in multiple stages according to the feature amount.

ここまでの説明から明らかなように、本実施例は、請求項10の発明の一実施例に相当する。   As is apparent from the above description, this embodiment corresponds to an embodiment of the invention of claim 10.

なお、特徴量算出の単位領域はタイルに限らず、コードブロック単位又はプレシンクト単位の特徴量を同様の方法で算出可能であることは明らかであり、かかる態様も請求項10の発明に包含される。   It should be noted that the feature quantity calculation unit area is not limited to the tile, and it is obvious that the feature quantity in the code block unit or the precinct unit can be calculated by the same method, and this aspect is also included in the invention of claim 10. .

前記各実施例はサーバ側の画像処理装置に関するものであるが、転送路の転送速度は十分高速であるがクライアントの復号処理速度が遅い場合などには、クライアント側で前記各実施例に述べたような領域毎の画像種別に応じた階層分割構成の制御を行うと効果的である。   Each of the above embodiments relates to the image processing apparatus on the server side. However, when the transfer speed of the transfer path is sufficiently high but the decoding speed of the client is low, the client side described the above embodiments. It is effective to control the hierarchical division configuration according to the image type for each region.

ここに述べる実施例は、領域毎の画像種別に従ってプログレッシブ復号の階層分割構成の制御を行うクライアント側の画像処理装置に関するものである。   The embodiment described here relates to an image processing apparatus on the client side that controls the hierarchical division configuration of progressive decoding according to the image type for each region.

図24は、本実施例に係る画像処理装置の復号処理に関連する構成を示すブロック図である。本実施例の画像処理装置は、外部転送路2を介してサーバより符号ストリームを受信し、それをプログレッシブに復号するもので、外部インターフェース(I/F)91、符号バッファ92、符号ストリーム分解処理部93、エントロピー復号化処理部94、係数バッファ95、逆離散ウェーブレット変換(IDWT)処理部96、逆色変換処理部97及び画像バッファ98を含む構成である。すなわち、本実施例は、JPEG2000の伸長処理のための基本的構成に符号ストリーム分解処理部93が追加された構成である。符号ストリーム分解処理部93は、タイル単位で文字/非文字の領域判定を行うための手段を含み、その判定結果に従って、エントロピー復号化処理の前段で符号データのレイヤ分割構成(階層分割構成)を制御することによって、プログレッシブ復号の階層分割構成を制御するための手段である。
FIG. 24 is a block diagram illustrating a configuration related to the decoding process of the image processing apparatus according to the present embodiment. The image processing apparatus according to the present embodiment receives a code stream from a server via the external transfer path 2 and progressively decodes the code stream, and includes an external interface (I / F) 91, a code buffer 92, and a code stream decomposition process. This includes a unit 93, an entropy decoding processing unit 94, a coefficient buffer 95, an inverse discrete wavelet transform (IDWT) processing unit 96, an inverse color conversion processing unit 97, and an image buffer 98. In other words, the present embodiment has a configuration in which the code stream decomposition processing unit 93 is added to the basic configuration for JPEG2000 decompression processing. The code stream decomposition processing unit 93 includes means for performing character / non-character area determination in tile units, and in accordance with the determination result, the code data layer splitting configuration (hierarchy splitting configuration) is performed before the entropy decoding process. It is a means for controlling the hierarchical division structure of progressive decoding by controlling.

全体的な処理の流れは次の通りである。外部転送路2を介してサーバ1から転送された符号ストリームは、外部I/F91を経由して符号バッファ92へ蓄積される。符号バッファ92に一つの画像全体の符号データが蓄積されると、符号ストリーム分解処理部93は符号バッファ92から符号データをタイル単位で読み出し、該当するプログレッシブ階層(レイヤ)の符号データを選択してエントロピー復号化処理部94へ出力する。エントロピー復号化処理部94では、コードブロック単位でかつサブビットプレーン単位に算術符号化された符号データを復号化し、復号化したビットプレーンデータを係数バッファ95にDWT係数の形態に並べ替えて蓄積する。IDWT処理部96では、係数バッファ95からDWT係数を読み出し、前記式(3)の逆変換である逆離散ウェーブレット変換を実施してYUVの画像データを出力する。逆色変換処理部97では、前記式(1)、式(2)の逆変換によりYUVデータをRGBの画像データに戻して画像バッファに蓄積する。同様の処理が画像内の全てのタイルについて実施され、当該レイヤ(階層)の復号が終了する。なお、画像バッファ98内の画像データはモニタ4に逐次表示される。   The overall processing flow is as follows. The code stream transferred from the server 1 via the external transfer path 2 is accumulated in the code buffer 92 via the external I / F 91. When code data of one whole image is accumulated in the code buffer 92, the code stream decomposition processing unit 93 reads the code data from the code buffer 92 in units of tiles, selects code data of the corresponding progressive layer (layer), The data is output to the entropy decoding processing unit 94. The entropy decoding processing unit 94 decodes code data that is arithmetically encoded in units of code blocks and in units of sub-bitplanes, and stores the decoded bitplane data in the coefficient buffer 95 in the form of DWT coefficients. . The IDWT processing unit 96 reads the DWT coefficient from the coefficient buffer 95, performs inverse discrete wavelet transform, which is the inverse transform of Equation (3), and outputs YUV image data. In the inverse color conversion processing unit 97, the YUV data is converted back to RGB image data by the inverse conversion of the above equations (1) and (2) and stored in the image buffer. Similar processing is performed for all tiles in the image, and the decoding of the layer (hierarchy) is completed. The image data in the image buffer 98 is sequentially displayed on the monitor 4.

一つのレイヤの復号処理が終わると、次位のレイヤの復号が開始される。次位のレイヤの復号時も同様の流れにより復号処理が行われるが、処理済みの上位レイヤのエントロピー復号化されたビットプレーンデータは係数バッファ95内に蓄積されているので、改めてエントロピー復号化は行われない。つまり、次位のレイヤ分のみの符号データがエントロピー復号化されて新たに係数バッファ95内に蓄積されることになり、そのデータに改めてIDWT処理から後段の処理を実施して画像バッファ内の画像データを更新していくことにより、領域判定結果に従って階層分割構成が制御されたプログレッシブ復号がなされる。   When the decoding process for one layer is completed, decoding of the next layer is started. The decoding process is performed in the same flow when decoding the next layer, but since the processed upper layer entropy-decoded bitplane data is stored in the coefficient buffer 95, the entropy decoding is performed again. Not done. That is, code data for only the next layer is entropy-decoded and newly stored in the coefficient buffer 95, and the subsequent processing from IDWT processing is performed again on the data, and the image data in the image buffer is stored. By updating the data, progressive decoding in which the hierarchical division configuration is controlled according to the region determination result is performed.

図25は、符号ストリーム分解処理部93のブロック図である。この符号ストリーム分解処理部93は、前記実施例7に係る符号ストリーム変更処理部50(図15)とほぼ同様の構成であるが、符号ストリームの形成に関わるパケット生成処理部45及びタイルヘッダ生成処理部46は符号選択処理部101に置き換えられている。また、符号ストリーム分割処理部93内の領域判定処理部53は、前記実施例7に係る図16に示す構成と同様の構成である。   FIG. 25 is a block diagram of the code stream decomposition processing unit 93. The code stream decomposition processing unit 93 has substantially the same configuration as the code stream change processing unit 50 (FIG. 15) according to the seventh embodiment, but includes a packet generation processing unit 45 and tile header generation processing related to code stream formation. The unit 46 is replaced with a code selection processing unit 101. Further, the area determination processing unit 53 in the code stream division processing unit 93 has the same configuration as that shown in FIG. 16 according to the seventh embodiment.

符号ストリーム分割処理部93の処理は前記実施例7の符号ストリーム変更処理部50とほぼ同様であり、入力されるパケットのパケットヘッダがヘッダ解析処理部51で解析され、パケット分解処理部52からの制御信号に応じてパケット分解処理部52によりパケットの符号部分がサブビットプレーン毎の符号データに分解されて入力符号バッファ41に記録される。この際に、ヘッダ解析処理部51より(YUV信号のうちの)Y信号に関するコードブロック単位での0ビットプレーン数が領域判定処理部53へ出力され、領域判定処理部53において前記実施例7に関連して説明したと同様のタイル単位の文字/非文字の領域判定が行われる。この領域判定の結果に応じて、セレクタ44を介して、パターンテーブル43に設定されている文字タイル用レイヤパターン又は非文字タイル用レイヤパターンが符号選択処理部101に読み込まれる。   The processing of the code stream division processing unit 93 is almost the same as that of the code stream change processing unit 50 of the seventh embodiment. The packet header of the input packet is analyzed by the header analysis processing unit 51, and the packet decomposition processing unit 52 In accordance with the control signal, the packet decomposition processing unit 52 decomposes the code portion of the packet into code data for each sub-bit plane and records it in the input code buffer 41. At this time, the header analysis processing unit 51 outputs the number of 0-bit planes in the code block unit related to the Y signal (of the YUV signal) to the region determination processing unit 53. The same character / non-character area determination in tile units as described above is performed. Depending on the result of this area determination, the character selection layer pattern or the non-character tile layer pattern set in the pattern table 43 is read into the code selection processing unit 101 via the selector 44.

ここまでは前記実施例7の場合と同様であるが、本実施例においては、符号選択処理部101により、レイヤパターンに従って復号すべきレイヤに対応するサブビットプレーンの符号データを入力符号バッファ41から読み出し、それをエントロピー復号化処理部94へそのまま出力する点が相違する。このような符号ストリーム分解処理が、画像内の全タイルについて、上位レイヤから下位レイヤへ向かって順次繰り返されることにより、前述のような領域判定結果に従った階層分割構成のプログレッシブ復号が可能となる。   The processing up to this point is the same as in the seventh embodiment, but in this embodiment, the code selection processing unit 101 receives the code data of the sub bit plane corresponding to the layer to be decoded according to the layer pattern from the input code buffer 41. The difference is that the data is read and output to the entropy decoding processing unit 94 as it is. Such code stream decomposition processing is sequentially repeated for all tiles in the image from the upper layer to the lower layer, thereby enabling progressive decoding with a hierarchical division configuration according to the region determination result as described above. .

ここまでの説明から明らかなように、本実施例は、請求項15,19の発明の一実施例に相当する。そして、符号ストリーム分解処理部93とその作用は、請求項15,19におけるプログレッシブ復号の階層分割構成を制御する手段と工程に対応し、また、領域判定処理部53とその作用は、請求項15,19における領域判定手段と工程に対応する。   As is apparent from the above description, this embodiment corresponds to an embodiment of the inventions of claims 15 and 19. The code stream decomposition processing unit 93 and its operation correspond to the means and process for controlling the hierarchical division structure of progressive decoding in claims 15 and 19, and the region determination processing unit 53 and its operation are described in claim 15. , 19 corresponds to the area determination means and process.

なお、本実施例ではタイル単位で領域判定を行ったが、コードブロック単位又はプレシンクト単位で同様の領域判定を行うことも可能であることは明らかであり、かかる態様も請求項15,19の発明に包含される。   In the present embodiment, the area determination is performed in units of tiles. However, it is obvious that the same area determination can be performed in units of code blocks or precincts, and this aspect is also the invention of claims 15 and 19. Is included.

また、前記実施例2に関連して述べたように、サーバ側で領域判定が行われ、その領域判定データが符号ストリームのタイルヘッダのコメントマーカ部等に記述されているならば、符号ストリーム分割処理部93(図25)において、ヘッダ解析処理部51でタイルヘッダより領域判定データ結果を抽出し、その領域判定データをセレクタ44に与えることができる。この場合、ヘッダ解析処理部51が領域判定手段となるため、領域判定処理部53を省くことができる。かかる態様も請求項15,19の発明に包含される。   Further, as described in connection with the second embodiment, if region determination is performed on the server side and the region determination data is described in the comment marker portion of the tile header of the code stream, the code stream division is performed. In the processing unit 93 (FIG. 25), the header analysis processing unit 51 can extract the region determination data result from the tile header and give the region determination data to the selector 44. In this case, since the header analysis processing unit 51 serves as a region determination unit, the region determination processing unit 53 can be omitted. Such an embodiment is also included in the inventions of claims 15 and 19.

本実施例は、前記実施例11と同様にクライアント側の画像処理装置に関するものであり、復号処理に関わる構成は前記実施例11(図24)と同様である。   The present embodiment relates to an image processing apparatus on the client side as in the eleventh embodiment, and the configuration related to the decoding process is the same as in the eleventh embodiment (FIG. 24).

また、本実施例に係る画像処理装置の符号ストリーム分解処理部93の構成は前記実施例11に係る図25に示すような構成であるが、領域判定処理部53は前記実施例10に係る特徴量算出処理部(図23)と置き換えられる。この特徴量算出処理部により算出されたタイル単位の特徴量(0〜7の8段階)に応じたレイヤパターンがセレクタ44を介してパターンテーブル43より符号選択処理部101へ入力され、符号選択処理部101においてレイヤパターンに従って特徴量に応じた符号選択が行われる。かくして、タイル単位で特徴量に従ってプログレッシブ復号の階層分割構成を多段階に制御することができる。   In addition, the configuration of the code stream decomposition processing unit 93 of the image processing apparatus according to the present embodiment is the configuration illustrated in FIG. 25 according to the eleventh embodiment, but the area determination processing unit 53 is a feature according to the tenth embodiment. It is replaced with an amount calculation processing unit (FIG. 23). A layer pattern corresponding to the feature value (8 levels of 0 to 7) in units of tiles calculated by the feature value calculation processing unit is input from the pattern table 43 to the code selection processing unit 101 via the selector 44, and the code selection processing is performed. The unit 101 performs code selection according to the feature amount according to the layer pattern. Thus, the hierarchical division configuration of progressive decoding can be controlled in multiple stages according to the feature amount in units of tiles.

すなわち、本実施例は、請求項16,20の発明の一実施例である。そして、符号ストリーム分解処理部93とその作用は、請求項16,20におけるプログレッシブ復号の階層分割構成を制御する手段と工程に対応し、また、特徴量算出処理部3とその作用は請求項16,20における特徴量算出手段と工程に対応する。   That is, this embodiment is an embodiment of the inventions of claims 16 and 20. The code stream decomposition processing unit 93 and its operation correspond to the means and process for controlling the hierarchical division structure of progressive decoding in claims 16 and 20, and the feature quantity calculation processing unit 3 and its operation are described in claim 16. , 20 corresponding to the feature amount calculating means and process.

なお、本実施例ではタイル単位で特徴量を算出したが、コードブロック単位又はプレシンクト単位で同様の特徴量算出を行うことも可能であることは明らかであり、かかる態様も請求項16,20の発明に包含される。   In this embodiment, the feature amount is calculated in units of tiles. However, it is obvious that the same feature amount can be calculated in units of code blocks or precincts. Included in the invention.

また、サーバ側で特徴量算出を行い、その特徴量データが符号ストリームのタイルヘッダのコメントマーカ部等に記述されているならば、符号ストリーム分割処理部93において、ヘッダ解析処理部51でタイルヘッダより特徴量データを抽出してセレクタ44に与えることができ、特徴量算出処理部を省くことができる。かかる態様も請求項16,20の発明に包含される。   If the feature amount calculation is performed on the server side and the feature amount data is described in the comment marker portion of the tile header of the code stream, the header analysis processing unit 51 performs the tile header in the code stream division processing unit 93. More feature amount data can be extracted and given to the selector 44, and a feature amount calculation processing unit can be omitted. Such an aspect is also included in the inventions of claims 16 and 20.

なお、本発明の画像処理装置を構成する手段あるいは本発明の画像処理方法を構成する工程を、汎用コンピュータやマイクロコンピュータなどのコンピュータを利用して実現することも可能であることは明らかであり、そのためのプログラム、及び、同プログラムが記録されたコンピュータが読み取り可能な磁気ディスク、光ディスク、光磁気ディスク、半導体記憶素子などの各種情報記録(記憶)媒体も本発明に包含される。   It is obvious that the means for configuring the image processing apparatus of the present invention or the process for configuring the image processing method of the present invention can be realized using a computer such as a general-purpose computer or a microcomputer. A program for that purpose and various information recording (storage) media such as a magnetic disk, an optical disk, a magneto-optical disk, and a semiconductor storage element that can be read by a computer on which the program is recorded are also included in the present invention.

クライアント/サーバ環境の説明図である。It is explanatory drawing of a client / server environment. 本発明の実施例1などに係る画像処理装置の全体的構成を示すブロック図である。1 is a block diagram illustrating an overall configuration of an image processing apparatus according to a first embodiment of the present invention. 本発明の実施例1などに係るエンコーダのブロック図である。1 is a block diagram of an encoder according to Embodiment 1 of the present invention. FIG. 文字タイルと非文字タイルにおけるレイヤプログレッションの階層分割構成の説明図である。It is explanatory drawing of the hierarchy division | segmentation structure of the layer progression in a character tile and a non-character tile. 本発明の実施例などに係る符号ストリーム生成処理部のブロック図である。It is a block diagram of the code stream production | generation process part which concerns on the Example of this invention. 文字タイルと非文字タイルにおける解像度プログレッションの階層分割構成の説明図である。It is explanatory drawing of the hierarchy division | segmentation structure of the resolution progression in a character tile and a non-character tile. 本発明の実施例2などに係る画像処理装置の全体的構成を示すブロック図である。It is a block diagram which shows the whole structure of the image processing apparatus which concerns on Example 2 etc. of this invention. 本発明の実施例2に係る符号ストリーム変更処理部のブロック図である。It is a block diagram of the code stream change process part which concerns on Example 2 of this invention. 本発明の実施例4に係る贈位域分離処理部のブロック図である。FIG. 10 is a block diagram of a gift area separation processing unit according to a fourth embodiment of the present invention. 本発明の実施例5などに係るエンコーダのブロック図である。It is a block diagram of the encoder which concerns on Example 5 etc. of this invention. 各サブバンドのウェーブレット係数又はコードブロックの説明図である。It is explanatory drawing of the wavelet coefficient or code block of each subband. 本発明の実施例5に係る領域判定処理部のブロック図である。It is a block diagram of the area | region determination process part which concerns on Example 5 of this invention. 本発明の実施例6に係る領域判定処理部のブロック図である。It is a block diagram of the area | region determination process part which concerns on Example 6 of this invention. 図13中の成分判定処理部を説明するためのブロック図である。It is a block diagram for demonstrating the component determination processing part in FIG. 本発明の実施例7などに係る符号ストリーム変更処理部のブロック図である。It is a block diagram of the code stream change process part which concerns on Example 7 etc. of this invention. 図16中の領域判定処理部のブロック図である。It is a block diagram of the area | region determination process part in FIG. 本発明の実施例8などに係る画像処理装置の全体構成を示すブロック図である。It is a block diagram which shows the whole structure of the image processing apparatus which concerns on Example 8 etc. of this invention. 図17中の特徴量算出部のブロック図である。FIG. 18 is a block diagram of a feature amount calculation unit in FIG. 17. エッジ量算出フィルタを示す図である。It is a figure which shows an edge amount calculation filter. 本発明の実施例8に係るエンコーダのブロック図である。It is a block diagram of the encoder which concerns on Example 8 of this invention. 本発明の実施例9に係るエンコーダのブロック図である。It is a block diagram of the encoder which concerns on Example 9 of this invention. 図21中の特徴量算出処理部のブロック図である。It is a block diagram of the feature-value calculation process part in FIG. 本発明の実施例10など係る特徴量算出処理部のブロック図である。It is a block diagram of the feature-value calculation process part which concerns on Example 10 of this invention. 本発明の実施例11などに係る画像処理装置のブロック図である。It is a block diagram of the image processing apparatus which concerns on Example 11 etc. of this invention. 図24中の符号ストリーム分解処理部のブロック図である。FIG. 25 is a block diagram of a code stream decomposition processing unit in FIG. 24. JPEG2000の圧縮符号化処理を説明するためのブロック図である。It is a block diagram for demonstrating the compression encoding process of JPEG2000. オクターブ分割されたウェーブレット係数の説明図である。It is explanatory drawing of the wavelet coefficient by which the octave division was carried out. ビットプレーン分解及びサブビットプレーン分解の模式図である。It is a schematic diagram of bit plane decomposition and sub-bit plane decomposition. レイヤプログレッションの符号ストリームの模式図である。It is a schematic diagram of the code stream of layer progression. JPEG2000のLRCPプログレッションとRPCLプログレッションのプログレッシブ順序を示す模式図である。It is a schematic diagram which shows the progressive order of LRCP progression of JPEG2000 and RPCL progression. LRCPプログレッションの符号並びの例を示す図である。It is a figure which shows the example of the code sequence of LRCP progression. RLCPプログレッションの符号並びの例を示す図である。It is a figure which shows the example of the code arrangement | sequence of RLCP progression.

符号の説明Explanation of symbols

1 サーバ
2 クライアント
10 像域分離処理部
12 エンコーダ
13 CPU
14 メモリ
15 HDD
17 外部I/F
31 色変換処理部
32 離散ウェーブレット変換(DWT)処理部
34 領域判定処理部
35 エントロピー符号化処理部
36 ポスト量子化処理部
37 符号ストリーム生成処理部
41 入力符号バッファ
43 パターンテーブル
44 セレクタ
45 パケット生成処理部
46 タイルヘッダ生成処理部
47 出力符号バッファ
50 符号ストリーム変更処理部
51 ヘッダ解析処理部
52 パケット分解処理部
53 領域判定処理部
91 外部I/F
92 符号バッファ
93 符号ストリーム分解処理部
94 エントロピー復号化処理部
95 係数バッファ
96 逆離散ウェーブレット変換(IDWT)処理部
97 逆色変換処理部
98 画像バッファ
101 符号選択処理部
111 特徴量算出部
141 特徴量算出処理部
1 Server 2 Client 10 Image Area Separation Processing Unit 12 Encoder 13 CPU
14 Memory 15 HDD
17 External I / F
31 Color Conversion Processing Unit 32 Discrete Wavelet Transform (DWT) Processing Unit 34 Region Determination Processing Unit 35 Entropy Coding Processing Unit 36 Post Quantization Processing Unit 37 Code Stream Generation Processing Unit 41 Input Code Buffer 43 Pattern Table 44 Selector 45 Packet Generation Processing Unit 46 tile header generation processing unit 47 output code buffer 50 code stream change processing unit 51 header analysis processing unit 52 packet decomposition processing unit 53 area determination processing unit 91 external I / F
92 Code buffer 93 Code stream decomposition processing unit 94 Entropy decoding processing unit 95 Coefficient buffer 96 Inverse discrete wavelet transform (IDWT) processing unit 97 Inverse color conversion processing unit 98 Image buffer 101 Code selection processing unit 111 Feature quantity calculation unit 141 Feature quantity Calculation processing unit

Claims (22)

画像の符号化処理を行って、レイヤプログレッションのプログレッシブ符号ストリームを出力する符号化手段と、
画像の画像種別を所定のブロック単位で判定する領域判定手段とを有し、
前記符号化手段において前記レイヤプログレッションのプログレッシブ符号ストリームを生成するための符号ストリーム生成手段は、前記レイヤプログレッションのプログレッシブ符号ストリームの各レイヤに含める符号及び符号量を、ブロック毎に、前記領域判定手段による判定結果に従って制御する手段を含むことを特徴とする画像処理装置。
Encoding means for performing an image encoding process and outputting a progressive code stream of a layer progression ;
Area determining means for determining the image type of the image in predetermined block units,
The code stream generating means for generating the progressive code stream of the layer progressive in the encoding means is configured to include a code and a code amount included in each layer of the progressive code stream of the layer progressive by the area determining means for each block. An image processing apparatus comprising means for controlling according to a determination result.
画像の符号ストリームを記憶する記憶手段と、
画像の画像種別を所定のブロック単位で判定する領域判定手段と、
前記記憶手段に記憶されている符号ストリームを取り込み、該符号ストリームから、レイヤプログレッションのプログレッシブ符号ストリームを生成する符号ストリーム生成手段とを有し、
前記符号ストリーム生成手段は、前記レイヤプログレッションのプログレッシブ符号ストリームの各レイヤに含める符号及び符号量を、ブロック毎に、前記領域判定手段による判定結果に従って制御する手段を含むことを特徴とする画像処理装置。
Storage means for storing a code stream of the image;
Area determination means for determining the image type of the image in a predetermined block unit;
Code stream generation means for capturing a code stream stored in the storage means and generating a progressive code stream of a layer progression from the code stream;
The code stream generating means includes means for controlling a code and a code amount included in each layer of the progressive code stream of the layer progression for each block according to a determination result by the area determining means. .
前記符号ストリーム生成手段に含まれる前記制御する手段は、前記レイヤプログレッションのプログレッシブ符号ストリームのレイヤ単位の符号量を予め決められた設定符号量に制御することを特徴とする請求項1又は2に記載の画像処理装置。 3. The control means included in the code stream generation means controls the code amount of each layer of the progressive code stream of the layer progression to a predetermined set code amount. Image processing apparatus. 前記符号ストリーム生成手段に含まれる前記制御する手段は、前記レイヤプログレッションのプログレッシブ符号ストリームのレイヤ単位の設定符号量を、前記領域判定手段による判定結果に従って切り替えることを特徴とする請求項3に記載の画像処理装置。 The said control means contained in the said code stream production | generation means switches the setting code amount of the layer unit of the progressive code stream of the said layer progression according to the determination result by the said area | region determination means. Image processing device. 前記領域判定手段により判定される画像種別に文字、黒文字、色文字及び網点のうちの少なくとも1つが含まれることを特徴とする請求項1,2,3又は4に記載の画像処理装置。   The image processing apparatus according to claim 1, 2, 3, or 4, wherein the image type determined by the area determination unit includes at least one of a character, a black character, a color character, and a halftone dot. 前記領域判定手段は、画像の符号化処理の過程において生成される画像の周波数変換係数に基づいて画像種別を判定することを特徴とする請求項1又は2に記載の画像処理装置。   The image processing apparatus according to claim 1, wherein the area determination unit determines an image type based on a frequency conversion coefficient of an image generated in the course of an image encoding process. 前記領域判定手段は、前記符号ストリーム生成手段に取り込まれた符号ストリームに基づいて画像種別を判定することを特徴とする請求項2に記載の画像処理装置。   The image processing apparatus according to claim 2, wherein the area determination unit determines an image type based on a code stream captured by the code stream generation unit. 画像の符号化処理を行って、レイヤプログレッションのプログレッシブ符号ストリームを出力する符号化手段と、
画像の特徴量を所定のブロック単位で検出する特徴量検出手段と、
前記符号化手段において前記レイヤプログレッションのプログレッシブ符号ストリームを生成するための符号ストリーム生成手段は、前記レイヤプログレッションのプログレッシブ符号ストリームの各レイヤに含める符号及び符号量を、ブロック毎に、前記特徴量検出手段により検出された特徴量に従って多段階に制御する手段を含むことを特徴とする画像処理装置。
Encoding means for performing an image encoding process and outputting a progressive code stream of a layer progression ;
Feature amount detection means for detecting feature amounts of an image in predetermined block units;
The code stream generating means for generating the progressive code stream of the layer progressive in the encoding means includes the code and code amount included in each layer of the progressive code stream of the layer progressive for each block. An image processing apparatus comprising means for controlling in multiple stages in accordance with the feature amount detected by.
画像の符号ストリームを記憶する記憶手段と、
画像の特徴量を所定のブロック単位で検出する特徴量検出手段と、
前記記憶手段に記憶されている符号ストリームを取り込み、該符号ストリームから、レイヤプログレッションのプログレッシブ符号ストリームを生成する符号ストリーム生成手段とを有し、
前記符号ストリーム生成手段は、前記レイヤプログレッションのプログレッシブ符号ストリームの各レイヤに含める符号及び符号量を、ブロック毎に、前記特徴量検出手段により検出された特徴量に従って多段階に制御する手段を含むことを特徴とする画像処理装置。
Storage means for storing a code stream of the image;
Feature amount detection means for detecting feature amounts of an image in predetermined block units;
Code stream generation means for capturing a code stream stored in the storage means and generating a progressive code stream of a layer progression from the code stream;
The code stream generation means includes means for controlling the code and the code amount included in each layer of the progressive code stream of the layer progression in multiple stages according to the feature quantity detected by the feature quantity detection means for each block. An image processing apparatus.
前記符号ストリーム生成手段に含まれる前記制御する手段は、前記レイヤプログレッションのプログレッシブ符号ストリームのレイヤ単位の符号量を予め決められた設定符号量に制御することを特徴とする請求項8又は9に記載の画像処理装置。 The control means included in the code stream generation means controls the code amount of each layer of the progressive code stream of the layer progression to a predetermined set code amount. Image processing apparatus. 前記符号ストリーム生成手段に含まれる前記制御する手段は、前記レイヤプログレッションのプログレッシブ符号ストリームのレイヤ単位の設定符号量を、前記特徴量検出手段により検出された特徴量に従って多段階に切り替えることを特徴とする請求項10に記載の画像処理装置。 The control means included in the code stream generation means switches the set code amount in units of layers of the progressive code stream of the layer progression in multiple stages according to the feature quantity detected by the feature quantity detection means. The image processing apparatus according to claim 10. 前記特徴量検出手段により検出される画像の特徴量はエッジ量であることを特徴とする請求項8,9,10又は11に記載の画像処理装置。   The image processing apparatus according to claim 8, 9, 10, or 11, wherein the feature amount of the image detected by the feature amount detection means is an edge amount. 前記特徴量検出手段は、画像の符号化処理の過程において生成される画像の周波数変換係数に基づいて特徴量を検出することを特徴とする請求項8又は9に記載の画像処理装置。   The image processing apparatus according to claim 8, wherein the feature amount detection unit detects a feature amount based on a frequency conversion coefficient of an image generated in the course of an image encoding process. 前記特徴量検出手段は、前記符号ストリーム生成手段に取り込まれた符号ストリームに基づいて特徴量を検出することを特徴とする請求項9に記載の画像処理装置。   The image processing apparatus according to claim 9, wherein the feature amount detection unit detects a feature amount based on a code stream captured by the code stream generation unit. 画像のプログレッシブ符号ストリームを受信してレイヤプログレッションのプログレッシブ復号を行う画像処理装置であって、
画像の画像種別を所定のブロック単位で判定する領域判定手段と、
受信したプログレッシブ符号ストリームに対するレイヤプログレッションのプログレッシブ復号において各レイヤに含める符号及び符号量を、ブロック毎に、前記領域判定手段による判定結果に従って制御する手段とを有することを特徴とする画像処理装置。
An image processing apparatus that receives a progressive code stream of an image and performs progressive decoding of a layer progression ,
Area determination means for determining the image type of the image in a predetermined block unit;
An image processing apparatus comprising: means for controlling, for each block, a code and a code amount included in each layer in progressive decoding of a layer progressive with respect to the received progressive code stream, according to a determination result by the area determination unit.
画像のプログレッシブ符号ストリームを受信してレイヤプログレッションのプログレッシブ復号を行う画像処理装置であって、
画像の特徴量を所定のブロック単位で検出する特徴量検出手段と、
受信したプログレッシブ符号ストリームに対するレイヤプログレッションのプログレッシブ復号において各レイヤに含める符号及び符号量を、ブロック毎に、前記特徴量検出手段により検出された特徴量に従って多段階に制御する手段とを有することを特徴とする画像処理装置。
An image processing apparatus that receives a progressive code stream of an image and performs progressive decoding of a layer progression ,
Feature amount detection means for detecting feature amounts of an image in predetermined block units;
Means for controlling the code and code amount to be included in each layer in progressive decoding of the layer progressive with respect to the received progressive code stream in a multi-stage manner for each block according to the feature amount detected by the feature amount detection means. An image processing apparatus.
画像の画像種別を所定のブロック単位で判定する領域判定工程と、
画像のレイヤプログレッションのプログレッシブ符号ストリームを生成する符号ストリーム生成工程とを有し、
前記符号ストリーム生成工程は、前記レイヤプログレッションのプログレッシブ符号ストリームの各レイヤに含める符号及び符号量を、ブロック毎に、前記領域判定手段による判定結果に従って制御する工程を含むことを特徴とする画像処理方法。
An area determination step for determining an image type of an image in units of a predetermined block;
A code stream generation step of generating a progressive code stream of an image layer progression ,
The code stream generation step includes a step of controlling a code and a code amount included in each layer of the progressive code stream of the layer progression for each block according to a determination result by the region determination unit. .
画像の多値の特徴量を所定のブロック単位で検出する特徴量検出工程と、
画像のレイヤプログレッションのプログレッシブ符号ストリームを生成する符号ストリーム生成工程とを有し、
前記符号ストリーム生成工程は、前記レイヤプログレッションのプログレッシブ符号ストリームの各レイヤに含める符号及び符号量を、ブロック毎に、前記特徴量検出工程により検出された特徴量に従って多段階に制御する工程を含むことを特徴とする画像処理方法。
A feature amount detection step of detecting multi-value feature amounts of an image in a predetermined block unit;
A code stream generation step of generating a progressive code stream of an image layer progression ,
The code stream generation step includes a step of controlling a code and a code amount included in each layer of the progressive code stream of the layer progression in multiple stages according to the feature amount detected by the feature amount detection step for each block. An image processing method characterized by the above.
画像のプログレッシブ符号ストリームを受信してレイヤプログレッションのプログレッシブ復号を行う画像処理方法であって、
画像の画像種別を所定のブロック単位で判定する領域判定工程と、
受信したプログレッシブ符号ストリームに対するレイヤプログレッションのプログレッシブ復号において各レイヤに含める符号及び符号量を、ブロック毎に、前記領域判定工程による判定結果に従って制御する工程とを有することを特徴とする画像処理方法。
An image processing method for receiving a progressive code stream of an image and performing progressive decoding of a layer progression ,
An area determination step for determining an image type of an image in units of a predetermined block;
And a step of controlling, for each block, a code and an amount of code included in each layer in progressive decoding of a layer progressive with respect to the received progressive code stream, according to a determination result of the region determination step.
画像のプログレッシブ符号ストリームを受信してレイヤプログレッションのプログレッシブ復号を行う画像処理方法であって、
画像の特徴量を所定のブロック単位で検出する特徴量検出工程と、
受信したプログレッシブ符号ストリームに対するレイヤプログレッションのプログレッシブ復号において各レイヤに含める符号及び符号量を、ブロック毎に、前記特徴量検出工程により検出された特徴量に従って多段階に制御する工程とを有することを特徴とする画像処理装方法。
An image processing method for receiving a progressive code stream of an image and performing progressive decoding of a layer progression ,
A feature amount detection step of detecting a feature amount of an image in a predetermined block unit;
And a step of controlling the code and the amount of code included in each layer in the progressive decoding of the layer progressive with respect to the received progressive code stream according to the feature amount detected by the feature amount detection step for each block. An image processing method.
請求項1乃至16のいずれか1項に記載の画像処理装置の各手段としてコンピュータを機能させるプログラム。   A program that causes a computer to function as each unit of the image processing apparatus according to claim 1. 請求項21に記載のプログラムが記録された、コンピュータが読み取り可能な情報記録媒体。   A computer-readable information recording medium on which the program according to claim 21 is recorded.
JP2003417886A 2003-12-16 2003-12-16 Image processing apparatus, image processing method, program, and information recording medium Expired - Fee Related JP4086192B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003417886A JP4086192B2 (en) 2003-12-16 2003-12-16 Image processing apparatus, image processing method, program, and information recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003417886A JP4086192B2 (en) 2003-12-16 2003-12-16 Image processing apparatus, image processing method, program, and information recording medium

Publications (2)

Publication Number Publication Date
JP2005184086A JP2005184086A (en) 2005-07-07
JP4086192B2 true JP4086192B2 (en) 2008-05-14

Family

ID=34780249

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003417886A Expired - Fee Related JP4086192B2 (en) 2003-12-16 2003-12-16 Image processing apparatus, image processing method, program, and information recording medium

Country Status (1)

Country Link
JP (1) JP4086192B2 (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007074362A (en) * 2005-09-07 2007-03-22 Fuji Xerox Co Ltd Coding apparatus, decoding apparatus, coding method, decoding method, and program for them
JP4688164B2 (en) * 2006-07-14 2011-05-25 株式会社リコー Image processing apparatus, image processing method, program, and information recording medium
JP5030141B2 (en) * 2006-08-25 2012-09-19 株式会社リコー Structured document image processing apparatus, structured document image encryption processing method, program, and information recording medium
JP4254867B2 (en) * 2007-01-31 2009-04-15 ソニー株式会社 Information processing apparatus and method, program, and recording medium
JP5263621B2 (en) * 2009-09-24 2013-08-14 ソニー株式会社 Image processing apparatus and method
JP5520890B2 (en) * 2011-07-04 2014-06-11 株式会社ソニー・コンピュータエンタテインメント Image processing apparatus, image data generation apparatus, image processing method, image data generation method, and data structure of image file
EP3293702B1 (en) * 2016-09-13 2020-04-29 Dassault Systèmes Compressing a signal that represents a physical attribute
CN111311511B (en) * 2020-01-22 2023-08-29 凌云光技术股份有限公司 Method and device for removing moire patterns
CN111369450B (en) * 2020-02-21 2024-02-02 华为技术有限公司 Method and device for removing mole marks

Also Published As

Publication number Publication date
JP2005184086A (en) 2005-07-07

Similar Documents

Publication Publication Date Title
JP4365957B2 (en) Image processing method and apparatus and storage medium
JP3814456B2 (en) Image processing apparatus and method
US6879727B2 (en) Decoding bit-plane-encoded data using different image quality for display
JP4176114B2 (en) Image compression apparatus, image reading apparatus including the same, image processing apparatus including the image compression apparatus, image forming apparatus including the same, and image compression processing method
US20020018597A1 (en) Image processing system, image processing apparatus, image input apparatus, image output apparatus and method, and storage medium
WO2001016764A1 (en) System and method for transmitting a digital image over a communication network
KR100611705B1 (en) Image encoding device, image encoding method, and image processing device
JP2003348360A (en) Document encoding system, document decoding system and methods therefor
US7630574B2 (en) Image encoding method and image apparatus
JP4086192B2 (en) Image processing apparatus, image processing method, program, and information recording medium
JP4089905B2 (en) Image processing apparatus, image processing method, program, and information recording medium
JP2007005844A (en) Coding processor, coding processing method, program and information recording medium
US20060056714A1 (en) Image process device, image processing program, and recording medium
JP4315928B2 (en) Image processing apparatus and image processing method
JP4097146B2 (en) Image processing apparatus, image processing method, program, and information recording medium
US7373000B2 (en) Image processing apparatus
JP4766586B2 (en) Image processing apparatus, image processing method, program, and information recording medium
JP2004227406A (en) Image processor, program and storage medium
JP3952981B2 (en) Image processing device
JP5267140B2 (en) Image compression apparatus and image compression method
JP2003204439A (en) Image coding apparatus and method therefor
JP5560172B2 (en) Image processing apparatus, image processing method, and image processing program
JPH11289461A (en) Image coding method and image coder
JP2002290743A (en) Image information coding method, coding apparatus, digital copying machine, digital facsimile machine, and digital filing apparatus
JP2010028796A (en) Image forming apparatus, image converting device, and image forming method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060824

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071121

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080121

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: 20080213

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080214

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

Free format text: PAYMENT UNTIL: 20110228

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110228

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120229

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130228

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130228

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20140228

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees