JP2004088307A - Image processing apparatus, image forming apparatus, program, and storage medium - Google Patents

Image processing apparatus, image forming apparatus, program, and storage medium Download PDF

Info

Publication number
JP2004088307A
JP2004088307A JP2002244877A JP2002244877A JP2004088307A JP 2004088307 A JP2004088307 A JP 2004088307A JP 2002244877 A JP2002244877 A JP 2002244877A JP 2002244877 A JP2002244877 A JP 2002244877A JP 2004088307 A JP2004088307 A JP 2004088307A
Authority
JP
Japan
Prior art keywords
image
header
code
images
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2002244877A
Other languages
Japanese (ja)
Other versions
JP3784755B2 (en
Inventor
Taku Kodama
児玉 卓
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2002244877A priority Critical patent/JP3784755B2/en
Priority to US10/646,754 priority patent/US7245775B2/en
Publication of JP2004088307A publication Critical patent/JP2004088307A/en
Application granted granted Critical
Publication of JP3784755B2 publication Critical patent/JP3784755B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Editing Of Facsimile Originals (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Record Information Processing For Printing (AREA)
  • Image Processing (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To easily put together images and divide the images that have been put together without repeating a process for expanding all images for expanding to a memory. <P>SOLUTION: In an image processing apparatus, a header/code data division processing section 55 divides a plurality of images to one or a plurality of tiles each and performs the discrete wavelet conversion of pixel values for each tile, and divides a plurality of code streams that are hierarchically compressed and coded to a header section and a code data section each. A header processing section 56 performs editing so that each image in data of the header section after the division is put together into one image. Then, a code stream synthesis section 57 generates a new, single code stream where each image is put together into one image by connecting the data of the edited header section to each code data section. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、画像を集約し、あるいは、集約された画像を分割する画像処理装置、画像形成装置、プログラム及び記憶媒体に関する。
【0002】
【従来の技術】
高精細静止画像の取扱いを容易にする画像圧縮伸長技術に対する高性能化あるいは多機能化の要求は、今後、ますます強くなっていくことは必至と思われる。こうした高精細静止画像の取扱いを容易にする画像圧縮伸長アルゴリズムとしては、現在のところ、JPEG(Joint Photographic Experts Group)が最も広く使われている。また、2001年に国際標準になることが確実となったJPEG2000は、JPEGよりも更に高性能なアルゴリズムを持つばかりでなく、並行して、大幅な多機能化や、様々なアプリケーションに対する柔軟性と拡張性を図った結果、JPEG後継の次世代高精細静止画像圧縮伸長フォーマットとして、期待されている。
【0003】
ところで、近年、プリンタなどの画像精度、画像品質の向上、環境への配慮などを背景に、画像を印刷又は表示する際に、複数ページをより少ないページに集約して表示、印刷する機会が増えている。また、インデックスにして、より簡易精度で表示、印刷することもよく行われる。このような場合、画像を作成するには、画像をひとつずつ展開し、必要であれば、所定のサイズへのサイズ変更、メモリへの展開の手順を繰り返し、集約画像を作成している。
【0004】
かかる手段では、処理時間も単一画像の処理に比べ数倍必要であり、さらに、必要なメモリ量も大きくなり、備わっているメモリ量を超えるメモリを必要とする、あるいは、高速処理可能なメモリ内に収まらないなどの理由により、単一画像の印刷に比べ、処理のためにはるかに大きな時間を要し、使用者に多大な苦痛を負わせるという事態が起こっている。
【0005】
このような不具合に対し、特開2000−156829公報に開示の技術では、インデックス画像を作成する際に、ライン単位のような小さい単位で集約画像を生成し、使用するメモリ量を節約しようとしている。また、特開2000−156830公報に開示の技術では、余分にバッファを用意し、高速化を図る技術について開示されている。
【0006】
また、特開2001−148774公報には、集約画像数を指定して画像の集約を行なう技術について開示され、特開平10−322542号公報には、集約された画像の原稿を用いて、異なる集約数で再集約技術について開示されている。
【0007】
【発明が解決しようとする課題】
しかしながら、特開2000−156829公報、特開2000−156830公報に開示の技術においても、依然、すべての画像を伸長してメモリへ展開するという工程を繰り返しているため、集約画像の生成には、単一画像の場合に比べて何倍も時間を要することには変わりはない。これは、特開2001−148774公報、特開平10−322542号公報に開示の技術においても同様である。
【0008】
本発明の目的は、すべての画像を伸長してメモリへ展開するという工程を繰り返すことなく、容易に画像の集約や、集約画像の分割を行なうことができるようにすることである。
【0009】
【課題を解決するための手段】
請求項1に記載の発明は、複数枚の画像をそれぞれ1又は複数の矩形領域に分割し当該矩形領域ごとに画素値を離散ウェーブレット変換して階層的に圧縮符号化した複数のコードストリームを対象として、それぞれヘッダ部分と符号データ部分とに分割するヘッダ・符号データ分割処理手段と、この分割後のヘッダ部分のデータを前記各画像を1枚の画像に集約するために編集するヘッダ処理手段と、この編集したヘッダ部分のデータと前記各符号データ部分とを結合して前記各画像を1枚の画像に集約した単一の新たなコードストリームを生成するコードストリーム合成手段と、を備えている画像処理装置である。
【0010】
したがって、すべての画像を伸長してメモリへ展開するという工程を繰り返すことなく、容易に画像の集約を行なうことができる。
【0011】
請求項2に記載の発明は、請求項1に記載の画像処理装置において、前記複数の画像を1枚の画像に集約する画像数を設定する集約設定手段を備え、前記ヘッダ処理手段は、前記集約設定手段の設定に応じて前記編集を行なう。
【0012】
したがって、集約する画像数を設定して、所望の集約画像を得ることができる。
【0013】
請求項3に記載の発明は、請求項2に記載の画像処理装置において、前記集約設定手段は、画像の水平方向及び垂直方向の少なくとも一方について前記集約する画像数を設定する。
【0014】
したがって、画像の水平方向、垂直方向の集約する画像数を設定して、所望の集約画像を得ることができる。
【0015】
請求項4に記載の発明は、画像を複数の矩形領域に分割し当該矩形領域ごとに画素値を離散ウェーブレット変換して階層的に圧縮符号化した単一のコードストリームであって、前記矩形領域の一つ又は複数がそれぞれ単一の画像であるものを対象として、ヘッダ部分と符号データ部分とに分割するヘッダ・符号データ分割処理手段と、この分割後のヘッダ部分のデータを前記画像ごとに複数の新たなコードストリームを生成するために編集するヘッダ処理手段と、この編集したヘッダ部分のデータと前記各符号データ部分とを結合して前記画像ごとに複数の新たなコードストリームに生成するコードストリーム合成処理手段と、を備えている画像処理装置である。
【0016】
したがって、すべての画像を伸長してメモリへ展開するという工程を繰り返すことなく、容易に集約画像の分割を行なうことができる。
【0017】
請求項5に記載の発明は、原稿の画像を読取るスキャナと、この読取った画像を1又は複数の矩形領域に分割し当該矩形領域ごとに画素値を離散ウェーブレット変換して階層的に圧縮符号化した単一のコードストリームを生成する画像圧縮符号化手段と、このコードストリームを前記対象とする請求項1〜4の何れかの一に記載の画像処理装置と、この画像処理装置の前記コードストリーム合成手段で合成後の各コードストリームに基づいて用紙上に画像の形成を行なうプリンタエンジンと、を備えている画像形成装置である。
【0018】
したがって、すべての画像を伸長してメモリへ展開するという工程を繰り返すことなく、容易に画像の集約や、集約画像の分割を行なうことができる。
【0019】
請求項6に記載の発明は、複数の画像を1枚の画像に集約する画像数を設定する集約設定処理と、前記複数の画像をそれぞれ1又は複数の矩形領域に分割し当該矩形領域ごとに画素値を離散ウェーブレット変換して階層的に圧縮符号化した複数のコードストリームを対象として、それぞれヘッダ部分と符号データ部分とに分割するヘッダ・符号データ分割処理と、この分割後のヘッダ部分のデータを前記集約設定手段の設定に応じて編集するヘッダ処理と、この編集したヘッダ部分のデータと前記各符号データ部分とを結合して前記各画像を1枚の画像に集約した単一の新たなコードストリームを生成するコードストリーム合成処理と、をコンピュータに実行させるコンピュータに読取り可能なプログラムである。
【0020】
したがって、すべての画像を伸長してメモリへ展開するという工程を繰り返すことなく、容易に画像の集約を行なうことができる。
【0021】
請求項7に記載の発明は、請求項6に記載のプログラムにおいて、前記集約設定処理は、水平方向の前記集約する画像数を設定する。
【0022】
したがって、水平方向の集約する画像数を設定して、所望の集約画像を得ることができる。
【0023】
請求項8に記載の発明は、請求項6又は7に記載のプログラムにおいて、前記集約設定処理は、垂直方向の前記集約する画像数を設定する。
【0024】
したがって、垂直方向の集約する画像数を設定して、所望の集約画像を得ることができる。
【0025】
請求項9に記載の発明は、画像を複数の矩形領域に分割し当該矩形領域ごとに画素値を離散ウェーブレット変換して階層的に圧縮符号化した単一のコードストリームであって、前記矩形領域の一つ又は複数がそれぞれ単一の画像であるものを対象として、ヘッダ部分と符号データ部分とに分割するヘッダ・符号データ分割処理と、この分割後のヘッダ部分のデータを編集するヘッダ処理と、この編集したヘッダ部分のデータと前記各符号データ部分とを結合して前記画像ごとに複数の新たなコードストリームに生成するコードストリーム合成処理と、をコンピュータに実行させるコンピュータに読取り可能なプログラムである。
【0026】
したがって、すべての画像を伸長してメモリへ展開するという工程を繰り返すことなく、容易に集約画像の分割を行なうことができる。
【0027】
請求項10に記載の発明は、請求項6〜9の何れかの一に記載のプログラムを記憶している記憶媒体である。
【0028】
したがって、記憶しているプログラムにより請求項6〜9の何れかの一に記載の発明と同様の作用、効果を奏する。
【0029】
【発明の実施の形態】
[JPEG2000アルゴリズムの概要について]
まず、本実施の形態に関連するJPEG2000アルゴリズムの概要について説明する。
【0030】
図1は、JPEGアルゴリズムの概要を説明するためのブロック図である。JPEGアルゴリズムは、色空間変換・逆変換部100、離散コサイン変換・逆変換部101、量子化・逆量子化部102、エントロピー符号化・復号化部103で構成されている。通常は、高い圧縮率を得るために、非可逆符号化を使用するので、完全なオリジナル画像データの圧縮伸長、いわゆるロスレス圧縮は行なわない場合がほとんどである。しかしながら、この非可逆(ロッシー)圧縮により実用上問題が生じることは少ない。そのため、JPEG方式は、圧縮や伸長の処理あるいは圧縮後の画像データ蓄積に必要なメモリ容量を抑え、また、データの送受信に費やされる時間を短くすることに大きく貢献している。こうした利点のために、JPEGは現在最も広く普及している静止画像の圧縮伸長アルゴリズムとなった。
【0031】
図2は、JPEG2000アルゴリズムの概要を説明するためのブロック図である。JPEG2000のアルゴリズムは、色空間変換・逆変換部110、2次元ウェーブレット変換・逆変換部111、量子化・逆量子化部112、エントロピー符号化・復号化部113、タグ処理部114で構成されている。
【0032】
上記のごとく、現在、最も広く普及している静止画像の圧縮伸長方式はJPEGである。しかしながら、静止画像に対する高精細化の要求はとどまることがなく、JPEG方式にも技術的な限界が見え始めている。例えば、今まではあまり目立たなかったブロックノイズやモスキートノイズが、原画像の高精細化に伴い顕著となり、JPEGファイルの画質劣化が無視できないレベルとなってきている。その結果を受けて、低ビットレート、すなわち高圧縮率領域における画質向上が、技術開発の最重要課題として認識されるようになった。JPEG2000はこうした問題を解決することが出来るアルゴリズムとして生まれた。そして、近い将来、現在主流のJPEG形式と併用されることが予想される。
【0033】
前述した図1と図2とを比較して、最も大きく異なる点の一つは変換方法である。JPEGは離散コサイン変換(DCT:Discrete Cosine Transform)を、JPEG2000は離散ウェーブレット変換(DWT:Discrete Wavelet Transform)を用いている。DWTはDCTに比べて、高圧縮領域における画質が良いという長所が、採用の大きな理由となっている。また、もう一つの大きな相違点は、後者では、最終段に符号形成をおこなうために、タグ処理部114と呼ばれる機能ブロックが追加されている。ここで、コードストリームの生成や解釈が行われる。そして、コードストリームによって、JPEG2000は様々な便利な機能を実現できるようになった。例えば、図3は、デコンポジションレベルが3の場合の、各デコンポジションレベルにおけるサブバンドの一例を示す図で、図3に示したブロックベースでのDWTにおけるオクターブ分割の階層に対応した任意の階層で、静止画像の圧縮伸長処理を停止させることができる。
【0034】
なお、図1と図2の原画像の入出力部分には、色空間変換・逆変換部100,110が用意されることが多い。例えば、原色系のR(赤)/G(緑)/B(青)の各コンポーネントからなるRGB表色系や、補色系のY(黄)/M(マゼンタ)/C(シアン)の各コンポーネントからなるYMC表色系から、YCrCbあるいはYUV表色系への変換又は逆の変換を行なう部分がこれに相当する。
【0035】
以下、JPEG2000アルゴリズムについて、説明する。
【0036】
ここで、JPEG2000に関する用語の定義は、JPEG2000 PartI FDIS(Final Draft International Standard)に準拠するものとする。以下、代表的な用語の定義について示す。
【0037】
1.code−block:A rectangular grouping of coefficients from the same subband of a tile−component.
2.decomposition level:A collection of wavelet subbands where each coefficient has the same spatial impact or span with respect to the sourcecomponent samples. These include the HL,LH,and HH subbands of the same two dimensional subband decomposition.For the last decomposition level the LL subband is also included.
3.precinct:A one rectangular region of a transformed tile−component,within each resolution level,used for limiting the size of packets.
4.layer:A collection of compressed image data from coding passes of one, or more, code−blocks of a tilecomponent. Layers have an order for encoding and decoding that must be preserved.
5.region of interest(ROI):A collection of coefficients that are considered of particular relevance by some user defined measure.
以上が、代表的な用語の定義である。
【0038】
図4は、タイル分割されたカラー画像の各コンポーネントの例を示す図である。カラー画像は、一般に、図4に示すように、原画像の各コンポーネント130,131,132(この例ではRGB原色系)が、矩形をした領域(タイル)130,131,132によって分割される。そして、個々のタイル、例えば、R00,R01,…,R15/G00,G01,…,G15/B00,B01,…,B15が、圧縮伸長プロセスを実行する際の基本単位となる。従って、圧縮伸長動作は、コンポーネント毎、そしてタイル毎に、独立に行われる。
【0039】
符号化時には、各コンポーネントの各タイルのデータが、図2に示した色空間変換部110に入力され、色空間変換を施されたのち、2次元ウェーブレット変換部111で2次元ウェーブレット変換(順変換)が適用されて周波数帯に空間分割される。
【0040】
前述した図3には、デコンポジションレベルが3の場合の、各デコンポジションレベルにおけるサブバンドを示している。すなわち、原画像のタイル分割によって得られたタイル原画像(0LL)(デコンポジションレベル0(符号120))に対して、2次元ウェーブレット変換を施し、デコンポジションレベル1(符号121)に示すサブバンド(1LL,1HL,1LH,1HH)を分離する。そして引き続き、この階層における低周波成分1LLに対して、2次元ウェーブレット変換を施し、デコンポジションレベル2(符号122)に示すサブバンド(2LL,2HL,2LH,2HH)を分離する。順次同様に、低周波成分2LLに対しても、2次元ウェーブレット変換を施し、デコンポジションレベル3(符号123)に示すサブバンド(3LL,3HL,3LH,3HH)を分離する。
【0041】
更に図3では、各デコンポジションレベルにおいて符号化の対象となるサブバンドを、グレーで表してある。例えば、デコンポジションレベルを3とした時、グレーで示したサブバンド(3HL,3LH,3HH,2HL,2LH,2HH,1HL,1LH,1HH)が符号化対象となり、3LLサブバンドは符号化されない。
【0042】
次いで、指定した符号化の順番で符号化の対象となるビットが定められ、図2に示した量子化部112で対象ビット周辺のビットからコンテキストが生成される。量子化の処理が終わったウェーブレット係数は、個々のサブバンド毎に、プレシンクトと呼ばれる重複のない矩形に分割される。これは、インプリメンテーションでメモリを効率的に使うために導入されたものである。
【0043】
図5は、プレシンクトとコードブロックの関係の一例を説明する図で、原画像140は、デコンポジションレベル1において、タイル140t0,140t1,140t2,140t3の4つのタイルに分割されている。図5に示したように、例えばプレシンクト140p4は、空間的に一致した3つの矩形領域からなり、プレシンクト140p6も同様である。ここでプレシンクトの番号はラスター順に0〜8まで割り当てられる。更に、個々のプレシンクトは、重複しない矩形のコードブロックと呼ばれるブロックに分けられる。本例では、0〜11までの12個のコードブロックに分けられており、例えばコードブロック140b1は、コードブロック番号1を示す。このコードブロックは、エントロピーコーディングを行なう際の基本単位となる。
【0044】
ウェーブレット変換後の係数値は、そのまま量子化し符号化することも可能であるが、JPEG2000では符号化効率を上げるために、係数値を「ビットプレーン」単位に分解し、画素あるいはコード・ブロック毎に「ビットプレーン」に順位付けを行なうことができる。図6には、その手順を簡単に説明するものである。この例は、原画像(32×32画素)を16×16画素のタイル4つで分割した場合で、デコンポジション・レベル1のプレシンクトとコード・ブロックの大きさは、各々8×8画素と4×4画素としている。プレシンクトとコード・ブロックの番号は、ラスター順に付けられる。タイル境界外に対する画素拡張にはミラーリング法を使い、可逆(5,3)フィルタでウェーブレット変換を行い、デコンポジションレベル1のウェーブレット係数値を求めている。また、タイル0/プレシンクト3/コード・ブロック3について、代表的な「レイヤ」についての概念図をも併せて示している。レイヤの構造は、ウェーブレット係数値を横方向(ビットプレーン方向)から見ると理解しやすい。1つのレイヤは任意の数のビットプレーンから構成される。この例では、レイヤ0,1,2,3は、各々、1,3,1、3つのビットプレーンから成っている。そして、LSBに近いビットプレーンを含むレイヤ程、先に量子化の対象となり、逆に、MSBに近いレイヤは最後まで量子化されずに残ることになる。LSBに近いレイヤから破棄する方法はトランケーションと呼ばれ、量子化率を細かく制御することが可能である。
【0045】
前述の図2に示したエントロピー符号化部113では、コンテキストと対象ビットから確率推定によって、各コンポーネントのタイルに対する符号化を行なう。こうして、原画像の全てのコンポーネントについて、タイル単位で符号化処理が行われる。最後にタグ処理部114は、エントロピコーダ部からの全符号化データを1本のコードストリームに結合するとともに、それにタグを付加する処理を行なう。図7は、コードストリームの構造の一例を簡単に示した図で、コードストリームの先頭と各タイルを構成する部分タイルの先頭にはヘッダ(それぞれ、メインヘッダ150及びタイルパートヘッダ151)と呼ばれるタグ情報が付加され、その後に、各タイルの符号化データ(ビットストリーム152)が続く。そして、コードストリームの終端には、再びタグ(End of codestream)153が置かれる。
【0046】
一方、復号化時には、符号化時とは逆に、各コンポーネントの各タイルのコードストリームから画像データを生成する。前述の図2を用いて簡単に説明する。この場合、タグ処理部114は、外部より入力したコードストリームに付加されたタグ情報を解釈し、コードストリームを各コンポーネントの各タイルのコードストリームに分解し、その各コンポーネントの各タイルのコードストリーム毎に復号化処理が行われる。コードストリーム内のタグ情報に基づく順番で復号化の対象となるビットの位置が定められるとともに、逆量子化部112で、その対象ビット位置の周辺ビット(既に復号化を終えている)の並びからコンテキストが生成される。エントロピー復号化部113で、このコンテキストとコードストリームから確率推定によって復号化を行い対象ビットを生成し、それを対象ビットの位置に書き込む。
【0047】
このようにして復号化されたデータは周波数帯域毎に空間分割されているため、これを2次元ウェーブレット逆変換部111で2次元ウェーブレット逆変換を行なうことにより、画像データの各コンポーネントの各タイルが復元される。復元されたデータは色空間逆変換部110によって元の表色系のデータに変換される。
【0048】
また、従来のJPEG圧縮伸長形式の場合は、上記のJPEG2000で述べたタイルを、2次元離散コサイン変換を行なう、一辺が8ピクセルの正方形ブロック、として読み替えれば良い。
【0049】
ここまでは、一般的な静止画像についての説明であったが、この技術を動画像に拡張することも可能である。すなわち、動画像の各フレームを1枚の静止画像で構成し、これらの静止画像を、アプリケーションに最適なフレーム速度で動画像データを作成(符号化)し、あるいは表示(復号化)させることができる。これが、静止画像のMotion圧縮伸長処理と言われている機能である。この方式は、動画像で現在広く使われているMPEG形式のビデオ・ファイルには無い機能、すなわち、フレーム単位で高品質な静止画像を扱えるという利点を持っていることから、放送局等の業務分野で注目を集め始めている。やがては、一般消費者向けに普及する可能性も大きい。
【0050】
[複写機の全体構成]
本発明の一実施の形態について説明する。
【0051】
図8は、本実施の形態である複写機を概略的に示す縦断面図である。複写機1は、本発明の画像形成装置を実施するもので、スキャナ2と、スキャナ2から出力される読取画像データに基づく画像を用紙等の記録媒体に形成するプリンタ21とを備えている。
【0052】
スキャナ2の本体ケースの上面には、図示しない原稿が載置されるコンタクトガラス3が設けられている。原稿は、原稿面をコンタクトガラス3に対向させて載置される。コンタクトガラス3の上側には、コンタクトガラス3上に載置された原稿を抑えるプラテンカバー4が設けられている。
【0053】
コンタクトガラス3の下方には、光を発光する光源5およびミラー6を搭載する第一走行体7と、2枚のミラー8,9を搭載する第2走行体10と、ミラー6,8,9によって導かれる光を結像レンズ11を介して受光するCCD(ChargeCoupled Device)イメージセンサ12等によって構成される読取光学系13が設けられている。CCDイメージセンサ12は、CCDイメージセンサ12上に結像される原稿からの反射光を光電変換した光電変換データを生成する光電変換素子として機能する。光電変換データは、原稿からの反射光の強弱に応じた大きさを有する電圧値である。第1、第2走行体7,10は、コンタクトガラス3に沿って往復動自在に設けられており、後述する画像読取り処理に際しては、図示しないモータ等の移動装置によって2:1の速度比で走行する。これにより、読取光学系13による原稿読取り領域の露光走査が行われる。
【0054】
プリンタ21は、シート状の用紙等の記録媒体を保持する媒体保持部22から電子写真方式のプリンタエンジン23および定着器24を経由して排出部25へ至る媒体経路26を備えている。
【0055】
プリンタエンジン23は、帯電器27、露光器28、現像器29、転写器30及びクリーナー31等を用いて電子写真方式で感光体32の周囲に形成したトナー像を記録材に転写し、転写したトナー像を、定着器24によって記録材上に定着させる。なお、プリンタエンジン23は、この例では電子写真方式で画像形成を行なうが、これに限定する必要はなく、インクジェット方式、昇華型熱転写方式、直接感熱記録方式など、様々な画像形成方式を用いることができる。
【0056】
このような複写機1は、複数のマイクロコンピュータで構成される制御系により制御される。図9は、これらの制御系のうち、画像処理にかかわる制御系の電気的な接続を示すブロック図である。この制御系は、CPU41、ROM42、RAM43が、バス44で接続されている。CPU41は、各種演算を行い、画像処理等の処理を集中的に制御する。ROM42には、このCPU41が実行する処理にかかわる各種プログラムや固定データが格納されている。RAM43は、CPU41のワークエリアとなる。IPU(Image Processing Unit)45は、各種画像処理にかかわるハードウエアを備えている。記憶媒体となるROM42は、フラッシュメモリ等の不揮発性メモリを備えていて、ROM42内に格納されているプログラムはCPU41の制御により、I/Oポート46を介して図示しない外部装置からダウンロードされるプログラムに書き換え可能である。
【0057】
図10は、画像処理装置51の機能ブロック図である。この画像処理装置51は、画像圧縮符号化部52と、集約画像部53とからなる。画像圧縮符号化部52は、画像圧縮符号化手段を実現するもので、スキャナ2で読取られ、IPU45で白シェーディング補正等の各種画像処理が施された複数枚の画像のデジタル画像データを、JPEG2000アルゴリズムにより圧縮符号化して、各画像のコードストリームを生成する。すなわち、画像を1又は複数の矩形領域(タイル)に分割し、この矩形領域ごとに画素値を離散ウェーブレット変換して階層的に圧縮符号化する。集約画像部53は、この各画像のコードストリームを1枚の画像に集約する集約処理や、すでに1枚の画像に集約されている画像のコードストリームを複数枚の画像に分割する分割処理を行なう。
【0058】
したがって、画像圧縮符号化部52は、図2を参照して説明した各機能ブロックを備え、前述のようなJPEG2000アルゴリズムにより画像データの圧縮符号化を行なう。この画像圧縮符号化部52の機能は、IPU45によりハードウエアが行なう処理により実行しても、ROM42に記憶されているプログラムに基づいてCPU41が行なう処理により実行してもよい。この集約画像部53の機能は、実際にはCPU41がROM42に格納されているプログラムに基づいて行なう処理により実現している。
【0059】
図11は、集約画像部53の機能ブロック図である。この集約画像部53は、画像読込部54、ヘッダ・符号データ分割処理部55、ヘッダ処理部56、コードストリーム合成部57及び集約設定部58からなる。
【0060】
以下では、集約画像部53により集約画像を合成する場合について説明する。なお、便宜上、集約画像部53に入力されるすべてのコードストリームが同サイズの1タイル構成である場合を想定して説明する。
【0061】
まず、ユーザが複写機1の図示しない操作パネルを操作して、集約画像の合成を伴ったコピーの実行を指示すると、スキャナ2により複数枚の原稿の画像を読取り、IPU45で白シェーディング補正等の各種画像処理が施された複数個のデジタル画像データは、それぞれ、画像圧縮符号化部52で圧縮符号化された複数個のコードストリームとして、集約設定部58に出力される。
【0062】
まず、集約設定手段を実現する集約設定部58においては、ユーザが図示しない操作パネルを操作して、何枚の画像を1枚に集約するように指示したかにより、集約画像を生成する水平方向、垂直方向の画像数を設定する。例えば、4枚の画像を1枚に集約する場合には、水平方向、垂直方向が2×2となる。さらに、画像読込部54は、集約処理を行なう各コードストリームが順次読み込む。読み込まれた最初のコードストリーム61は、ヘッダ・符号データ分割処理手段を実施するヘッダ・符号データ分割処理部55で、ヘッダ部分と、符号データ部分とに分割される。続いて、ヘッダ処理手段を実現するヘッダ処理部56では、集約設定部58の設定に応じて、分割されたメインヘッダの画像サイズが、集約後の画像サイズに変更される。また、新たなタイルパートヘッダが生成される。このタイルパートヘッダには、タイルインデックスが付加される。
【0063】
続いて、2番目以降のコードストリーム62,…を画像読込部54で読込み、ヘッダ・符号データ分割処理部55でヘッダと符号データを分割し、ヘッダ処理部56で、メインヘッダをタイルパートヘッダに変更する。その際、順次、タイルインデックスが付与される。すべての画像データのヘッダを処理し終えると、コードストリーム生成手段を実現するコードストリーム合成部57で、JPEG2000準拠のコードストリームに合成され、複数枚の画像を1枚に集約した画像のコードストリーム61’が完成する。
【0064】
図12は、集約画像部53で集約前の複数のコードストリームのデータ構成を説明するための図で、合成される1番目のコードストリーム61のメインヘッダ、タイルパートヘッダ、ビットストリーム、EOCマーカ、2番目のコードストリーム62のメインヘッダ、タイルパートヘッダ、ビットストリーム、EOCマーカ、…、N番目のコードストリーム6Nのメインヘッダ、タイルパートヘッダ、ビットストリーム、EOCマーカ、を示している。
【0065】
図13は、集約画像部53で集約後のコードストリームのデータ構成を説明するための図で、集約画像のコードストリーム61’のメインヘッダ、タイルパートヘッダ、ビットストリーム、タイルパートヘッダ、ビットストリーム、タイルパートヘッダ、ビットストリーム、EOCマーカを示している。
【0066】
図12、図13に明らかなように、画像読込部54に読み込まれた1,2,…,N番目のコードストリーム61,62,…,6Nはヘッダ部分と符号データ部分に分割され、1番目のコードストリームのメインヘッダ1及びタイルパートヘッダ1は、ヘッダ処理部56により編集され、メインヘッダ1’、タイルパートヘッダ1’に、2番目のコードストリームのメインヘッダ2及びタイルパートヘッダ2は、ヘッダ処理部56により編集され、タイルパートヘッダ2’に、N番目のコードストリームのメインヘッダN及びタイルパートヘッダNは、ヘッダ処理部56によりタイルパートヘッダN’に編集され、図13のように合成され、集約画像のコードストリーム61’が生成される。
【0067】
図14は、複写機1が行なう画像の集約処理の一例を説明するフローチャートである。まず、コピーの実行がユーザから指示されると(ステップS1のY)、ユーザが集約処理の実行を指示したか否か判断する(ステップS2)。指示されなかったと判断した場合は(ステップS2のN)、一連の処理を終了する。
【0068】
集約処理の実行を指示したときは(ステップS2のY)、集約の対象となるすべてのコードストリームを画像読込部54で読み込んだか否かを判断し(ステップS3)、すべてのコードストリームを読み込んだときは(ステップS3のY)、ステップS10に移行する。読み込んでないときは(ステップS3のN)、引き続き画像の読込みを行い(ステップS4)、ヘッダ・符号データ分割処理部55でヘッダ部と符号データ部を分割する(ステップS5)。ステップS5によりヘッダ・符号データ分割処理を実現している。
【0069】
続いて、読み込んだコードストリームが最初のコードストリームであるか判断し(ステップS6)、最初のコードストリームである場合(ステップS6のY)には、集約後のコードストリームのメインヘッダ、タイルパートヘッダを、ヘッダ処理部56で元のコードストリームのメインヘッダ、タイルパートヘッダより生成する(ステップS7)。最初のコードストリームではない場合(ステップS6のN)には、集約後のコードストリームのタイルパートヘッダを、ヘッダ処理部56で元のコードストリームのメインヘッダ、タイルパートヘッダより生成する(ステップS8)。ステップS7,S8によりヘッダ処理を実現している。元のコードストリームの数をカウントするためのカウンタをアップさせて(ステップS9)、ステップS3に戻る。以下、集約処理を行なう全てのコードストリームについて処理が終了するまでステップS3からステップS9までの処理を繰り返し、集約しようとする全てのコードストリームについて処理を終了すると(ステップS3のY)、集約後の新たなコードストリームを生成し(ステップS10)、一連の処理を終了する。ステップS10によりコードストリーム合成処理を実現している。
【0070】
図15は、複写機1で、集約されているコードストリームを分割し、複数のコードストリームを生成する分割処理を行なう際のフローチャートである。まず、コピーの実行がユーザから指示されると(ステップS11のY)、ユーザが図示しない操作パネルにより分割処理の実行を指示したか否かを判断する(ステップS12)。ユーザが分割処理の実行を指示しなかったときは(ステップS12のN)、一連の処理を終了する。必要であると判断された場合(ステップS12のY)は、分割処理を行なおうとするコードストリームを画像読込部54で読込み(ステップS13)、ヘッダ・符号データ分割処理部55でヘッダ部と符号データ部を分割する(ステップS14)。ステップS14によりヘッダ・符号データ分割処理を実現している。
【0071】
全ての分割処理が終了したか判断し(ステップS15)、すべての分割処理が終了したと判断された場合は(ステップS15のY)は、一連の処理を終了する。終了していない場合は(ステップS15のN)、分割したヘッダ部のデータはヘッダ処理部56で編集し、コードストリーム合成部57では、単一の符号データ部に新たなヘッダ部を付加して新たなコードストリームを生成することで分割画像の生成を行なう(ステップS16)。ステップS16によりヘッダ処理、コードストリーム合成処理を実現している。そして、その分割数をカウントするためのカウンタをアップさせて(ステップS17)、ステップS15に戻る。以下、分割処理が終了するまで、ステップS15、ステップS16の処理を繰り返し、分割処理が終了すると処理を終了する。
【0072】
よって、例えば、縦横2×2で4枚の画像を集約してコピーした原稿があった場合、ユーザは縦横各々2分割で4枚の画像に分割することを、図示しない操作パネルで指示して、コピーの実行を指示する。すると、画像圧縮符号化部52では、スキャナ2で読取った集約画像の原稿のデジタル画像データを対象として、1枚の画像を各々2分割で4枚のタイルに分割した図13に示すようなコードストリームを生成する。そして、このコードストリームを対象として、ヘッダ部と符号データ部を分割し(ステップS14)、各タイルをそれぞれ符号データ部とする図12に示すような4つのコードストリームが生成されるので(ステップS16)、この各コードストリームを対象としてプリンタ21で画像形成を行なうことにより、集約した画像を分割した4枚のコピーが生成される。
【0073】
なお、画像処理装置51は、集約処理、分割処理の両用の実行が可能であるが、その一方の処理のみが可能な構成としてもよい。また、集約処理について、前述の説明では、便宜上、集約対象となるコードストリームが単一のタイルで形成されるものとして説明したが、複数のタイルに分割されている場合などにおいても、タイルインデックス付加のところに多少の操作は必要であるが、おおむね同様の処理で集約画像を生成することができる。分割処理においても、便宜上、集約されている各画像がそれぞれ単一のタイルを構成するものとして説明したが、複数のタイルで単一の画像を構成するように集約されていてもよい。この場合は、単一の画像を構成する複数のタイルごとにコードストリームを生成する。
【0074】
また、前述の例では画像処理装置51を複写機1に搭載した例で説明したが、かかる画像処理装置51は画像データを扱う様々な電子機器に用いることができる。例えば、パーソナル・コンピュータなどの情報処理装置に画像処理装置51の機能を実行するアプリケーションプログラムを搭載するなどして、情報処理装置上で様々な画像データの集約、あるいは、集約された画像データの分割を行なうことができる。そして、このようなアプリケーションプログラムを記憶した、光ディスク、光磁気ディスク、フレキシブルディスク等の記憶媒体を提供することができる。
【0075】
【発明の効果】
請求項1,6に記載の発明は、すべての画像を伸長してメモリへ展開するという工程を繰り返すことなく、容易に画像の集約を行なうことができる。
【0076】
請求項2,7に記載の発明は、請求項1,6に記載の発明において、集約する画像数を設定して、所望の集約画像を得ることができる。
【0077】
請求項3,8に記載の発明は、請求項1,2,6,7に記載の発明において、画像の水平方向、垂直方向の集約する画像数を設定して、所望の集約画像を得ることができる。
【0078】
請求項4,9に記載の発明は、すべての画像を伸長してメモリへ展開するという工程を繰り返すことなく、容易に集約画像の分割を行なうことができる。
【0079】
請求項5に記載の発明は、すべての画像を伸長してメモリへ展開するという工程を繰り返すことなく、容易に画像の集約や、集約画像の分割を行なうことができる。
【0080】
請求項10に記載の発明は、記憶しているプログラムにより請求項6〜9の何れかの一に記載の発明と同様の効果を奏する。
【図面の簡単な説明】
【図1】JPEGアルゴリズムの概要を説明するためのブロック図である。
【図2】JPEG2000アルゴリズムの概要を説明するためのブロック図である。
【図3】デコンポジションレベルが3の場合の、各デコンポジションレベルにおけるサブバンドの一例を示す図である。
【図4】タイル分割されたカラー画像の各コンポーネントの例を示す図である。
【図5】プレシンクトとコードブロックの関係の一例を説明する図である。
【図6】係数値を「ビットプレーン」単位に分解し、画素あるいはコード・ブロック毎に「ビットプレーン」に順位付けを行なう手順の説明図である。
【図7】コードストリームの構造の一例を簡単に示した図である。
【図8】本発明の実施の形態である複写機を概略的に示す縦断面図である。
【図9】複写機の画像処理にかかわる制御系の電気的な接続を示すブロック図である。
【図10】複写機の画像処理装置の機能ブロック図である。
【図11】画像処理装置の集約画像部の機能ブロック図である。
【図12】集約画像部で集約前の複数のコードストリームのデータ構成を説明するための図である。
【図13】集約画像部で集約後のコードストリームのデータ構成を説明するための図である。
【図14】複写機が行なう画像の集約処理の一例を説明するフローチャートである。
【図15】複写機が行なう画像の分割処理の一例を説明するフローチャートである。
【符号の説明】
1   画像形成装置
2   スキャナ
23  プリンタエンジン
51  画像処理装置
52  画像圧縮符号化手段
55  ヘッダ・符号データ分割処理手段
56  ヘッダ処理手段
57  コードストリーム合成手段
58  集約設定手段
61〜6N コードストリーム
61’ コードストリーム
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an image processing apparatus, an image forming apparatus, a program, and a storage medium that combine images or divide the combined images.
[0002]
[Prior art]
The demand for high performance or multifunctional image compression / decompression technology that facilitates the handling of high-definition still images is likely to become stronger and stronger in the future. At present, JPEG (Joint Photographic Experts Group) is most widely used as an image compression / decompression algorithm for facilitating the handling of such high-definition still images. In addition, JPEG2000, which has become certain to become an international standard in 2001, has not only more sophisticated algorithms than JPEG, but also a large number of functions and flexibility for various applications. As a result of its expandability, it is expected as a next-generation high-definition still image compression / decompression format succeeding JPEG.
[0003]
By the way, in recent years, when printing or displaying an image in the background of the improvement of image accuracy and image quality of a printer or the like, consideration for the environment, etc., opportunities for displaying and printing a plurality of pages in a smaller number of pages have been increased. ing. In addition, it is often performed to display and print an index with an easier accuracy. In such a case, in order to create an image, the image is developed one by one, and if necessary, the procedure of changing the size to a predetermined size and developing the image in the memory is repeated to create an aggregated image.
[0004]
Such means requires several times the processing time as compared with the processing of a single image, and also requires a large amount of memory, requiring a memory exceeding the amount of memory provided, or a memory capable of high-speed processing. For example, it takes much longer time for processing than printing a single image, and it causes a great deal of pain to the user.
[0005]
To solve such a problem, the technique disclosed in Japanese Patent Application Laid-Open No. 2000-156829 attempts to reduce the amount of memory used by generating an aggregated image in a small unit such as a line when creating an index image. . Also, the technique disclosed in Japanese Patent Application Laid-Open No. 2000-156830 discloses a technique for preparing an extra buffer to increase the speed.
[0006]
Japanese Patent Application Laid-Open No. 2001-148774 discloses a technique for performing image aggregation by designating the number of images to be aggregated. A number of re-aggregation techniques are disclosed.
[0007]
[Problems to be solved by the invention]
However, even in the techniques disclosed in JP-A-2000-156829 and JP-A-2000-156830, since the process of expanding all the images and expanding them in the memory is repeated, generation of the aggregated image requires It still takes many times longer than a single image. This is the same in the technology disclosed in JP-A-2001-148774 and JP-A-10-322542.
[0008]
SUMMARY OF THE INVENTION It is an object of the present invention to enable easy aggregation of images and division of aggregated images without repeating the process of expanding all images and expanding them in a memory.
[0009]
[Means for Solving the Problems]
The first aspect of the present invention is directed to a plurality of code streams obtained by dividing a plurality of images into one or a plurality of rectangular regions, and performing discrete wavelet transform of pixel values for each of the rectangular regions and performing hierarchical compression encoding. A header / code data division processing means for dividing the data into a header portion and a code data portion, and a header processing means for editing the data of the divided header portion in order to combine the images into one image. Code stream synthesizing means for combining the data of the edited header portion and the respective code data portions to generate a single new code stream in which the images are aggregated into one image. An image processing device.
[0010]
Therefore, the images can be easily aggregated without repeating the process of expanding all the images and expanding them in the memory.
[0011]
According to a second aspect of the present invention, in the image processing apparatus according to the first aspect, the image processing apparatus further includes an aggregation setting unit configured to set the number of images that aggregates the plurality of images into one image, and the header processing unit includes: The editing is performed according to the setting of the aggregation setting means.
[0012]
Therefore, it is possible to obtain a desired aggregated image by setting the number of images to be aggregated.
[0013]
According to a third aspect of the present invention, in the image processing apparatus according to the second aspect, the aggregation setting unit sets the number of images to be aggregated in at least one of a horizontal direction and a vertical direction of the images.
[0014]
Therefore, it is possible to obtain a desired aggregated image by setting the number of images to be aggregated in the horizontal and vertical directions.
[0015]
The invention according to claim 4 is a single code stream obtained by dividing an image into a plurality of rectangular regions, and performing discrete wavelet transform of pixel values for each of the rectangular regions and hierarchically compression-encoding the rectangular region. A header / code data division processing unit that divides a header portion and a coded data portion into one or a plurality of which are each a single image, and divides the data of the header portion after the division for each image. Header processing means for editing to generate a plurality of new code streams; and code for combining the data of the edited header portion and each of the code data portions to generate a plurality of new code streams for each of the images And a stream synthesis processing unit.
[0016]
Therefore, it is possible to easily divide the aggregated image without repeating the process of expanding all the images and expanding them in the memory.
[0017]
According to a fifth aspect of the present invention, there is provided a scanner for reading an image of a document, and the read image is divided into one or a plurality of rectangular areas, and pixel values are discrete wavelet-transformed for each of the rectangular areas to hierarchically compress and encode. 5. An image compression encoding means for generating a single code stream, the image processing apparatus according to claim 1, wherein the code stream is used as the target, and the code stream of the image processing apparatus. And a printer engine for forming an image on a sheet based on each code stream synthesized by the synthesizing means.
[0018]
Therefore, images can be easily aggregated and the aggregated image can be divided without repeating the process of expanding all images and expanding them in the memory.
[0019]
The invention according to claim 6 is an aggregation setting process for setting the number of images to aggregate a plurality of images into one image, dividing the plurality of images into one or a plurality of rectangular regions, and dividing the plurality of images into one or a plurality of rectangular regions. A header / code data division process of dividing a plurality of code streams, which are subjected to discrete wavelet transform of pixel values and hierarchically compression-encoded, into a header portion and a code data portion, and data of the header portion after the division. A header process for editing the data according to the setting of the aggregation setting means, and combining the data of the edited header portion with each of the code data portions to aggregate each image into one image. A computer-readable program that causes a computer to execute a code stream synthesis process that generates a code stream.
[0020]
Therefore, the images can be easily aggregated without repeating the process of expanding all the images and expanding them in the memory.
[0021]
The invention according to claim 7 is the program according to claim 6, wherein the aggregation setting process sets the number of images to be aggregated in the horizontal direction.
[0022]
Therefore, a desired aggregated image can be obtained by setting the number of images to be aggregated in the horizontal direction.
[0023]
The invention according to claim 8 is the program according to claim 6 or 7, wherein the aggregation setting process sets the number of images to be aggregated in the vertical direction.
[0024]
Therefore, a desired aggregated image can be obtained by setting the number of images to be aggregated in the vertical direction.
[0025]
The invention according to claim 9 is a single code stream obtained by dividing an image into a plurality of rectangular areas, and performing discrete wavelet transform on pixel values for each of the rectangular areas and hierarchically compression-encoding the code area. A header / code data division process of dividing one or a plurality of each into a single image into a header portion and a code data portion, and a header process of editing data of the header portion after the division. A code stream synthesizing process of combining the edited data of the header portion and each of the code data portions to generate a plurality of new code streams for each of the images. is there.
[0026]
Therefore, it is possible to easily divide the aggregated image without repeating the process of expanding all the images and expanding them in the memory.
[0027]
According to a tenth aspect, there is provided a storage medium storing the program according to any one of the sixth to ninth aspects.
[0028]
Therefore, the same operation and effect as the invention according to any one of claims 6 to 9 are exerted by the stored program.
[0029]
BEST MODE FOR CARRYING OUT THE INVENTION
[Overview of JPEG2000 algorithm]
First, an outline of the JPEG2000 algorithm related to the present embodiment will be described.
[0030]
FIG. 1 is a block diagram for explaining the outline of the JPEG algorithm. The JPEG algorithm includes a color space conversion / inverse conversion unit 100, a discrete cosine conversion / inverse conversion unit 101, a quantization / inverse quantization unit 102, and an entropy coding / decoding unit 103. Usually, lossy encoding is used to obtain a high compression ratio, and thus, in most cases, complete compression / decompression of original image data, so-called lossless compression, is not performed. However, this irreversible (lossy) compression rarely causes problems in practical use. Therefore, the JPEG system greatly contributes to reducing the memory capacity required for compression and decompression processing or storing image data after compression, and to shorten the time spent for data transmission and reception. Because of these advantages, JPEG has become the most widespread still image compression and decompression algorithm.
[0031]
FIG. 2 is a block diagram for explaining the outline of the JPEG2000 algorithm. The JPEG2000 algorithm includes a color space conversion / inverse conversion unit 110, a two-dimensional wavelet conversion / inverse conversion unit 111, a quantization / inverse quantization unit 112, an entropy encoding / decoding unit 113, and a tag processing unit 114. I have.
[0032]
As described above, JPEG is currently the most widely used still image compression / expansion method. However, the demand for higher definition still images has not stopped, and the technical limits of the JPEG system are beginning to appear. For example, block noise and mosquito noise, which were not so noticeable until now, have become remarkable as the definition of the original image has increased, and the image quality degradation of the JPEG file has become a level that cannot be ignored. As a result, the improvement of image quality in a low bit rate, that is, in a high compression rate region has been recognized as the most important issue in technical development. JPEG2000 was born as an algorithm that could solve these problems. In the near future, it is expected to be used together with the currently mainstream JPEG format.
[0033]
One of the biggest differences between FIG. 1 and FIG. 2 described above is the conversion method. JPEG uses Discrete Cosine Transform (DCT), and JPEG2000 uses Discrete Wavelet Transform (DWT). The advantage that DWT has better image quality in a high compression area than DCT is a major reason for adoption. Another major difference is that, in the latter case, a functional block called a tag processing unit 114 is added in order to perform code formation in the last stage. Here, a code stream is generated and interpreted. The code stream has enabled JPEG2000 to realize various convenient functions. For example, FIG. 3 is a diagram showing an example of subbands at each decomposition level when the decomposition level is 3, and an arbitrary hierarchy corresponding to the octave division hierarchy in the block-based DWT shown in FIG. Thus, the compression / decompression processing of the still image can be stopped.
[0034]
Note that color space conversion / inverse conversion units 100 and 110 are often provided in the input / output portion of the original image in FIGS. For example, an RGB color system composed of R (red) / G (green) / B (blue) components of a primary color system, and Y (yellow) / M (magenta) / C (cyan) components of a complementary color system The conversion from the YMC color system to the YCrCb or YUV color system or the reverse conversion corresponds to this.
[0035]
Hereinafter, the JPEG2000 algorithm will be described.
[0036]
Here, the definition of terms relating to JPEG2000 is based on JPEG2000 Part I FDIS (Final Draft International Standard). Hereinafter, definitions of typical terms are shown.
[0037]
1. code-block: A rectangular grouping of coefficients from the same subband of a tile-component.
2. decomposition level: A collection of wavelet subbands there each co-efficient has the same spatial impact as a part of the company's representatives. The include the HL, LH, and HH subbands of the same two dimensional subband decomposition. For the last decomposition level the LL subband is also included.
3. precinct: A one rectangular region of a transformed tile-component, with each search resolution level, used for limiting the size of packets.
4. layer: A collection of compressed image data from coding passes of one, or more, code-blocks of a tile component. Layers have an order for encoding and decoding that must be preserved.
5. region of interest (ROI): A collection of coefficients that are considered of a partial relevance by some user defined measure.
The above is the definition of typical terms.
[0038]
FIG. 4 is a diagram illustrating an example of each component of the tiled color image. As shown in FIG. 4, a color image generally includes a rectangular area (tile) 130 in which each of the components 130, 131, and 132 (in this example, the RGB primary color system) of the original image is formed. t , 131 t , 132 t Divided by Each of the tiles, for example, R00, R01, ..., R15 / G00, G01, ..., G15 / B00, B01, ..., B15 is a basic unit when executing the compression / decompression process. Therefore, the compression / expansion operation is performed independently for each component and for each tile.
[0039]
At the time of encoding, the data of each tile of each component is input to the color space conversion unit 110 shown in FIG. 2 and subjected to color space conversion, and then the two-dimensional wavelet conversion unit 111 performs two-dimensional wavelet conversion (forward conversion). ) Is applied to perform spatial division into frequency bands.
[0040]
FIG. 3 described above shows subbands at each decomposition level when the decomposition level is 3. That is, a two-dimensional wavelet transform is performed on the tile original image (0LL) (decomposition level 0 (reference numeral 120)) obtained by the tile division of the original image, and the subband indicated by the decomposition level 1 (reference numeral 121) is obtained. (1LL, 1HL, 1LH, 1HH). Subsequently, a two-dimensional wavelet transform is performed on the low-frequency component 1LL in this layer to separate the subbands (2LL, 2HL, 2LH, 2HH) indicated by the decomposition level 2 (reference numeral 122). Similarly, two-dimensional wavelet transform is performed on the low-frequency component 2LL to separate the sub-bands (3LL, 3HL, 3LH, 3HH) indicated by the decomposition level 3 (123).
[0041]
Further, in FIG. 3, the subbands to be encoded at each decomposition level are shown in gray. For example, when the decomposition level is 3, the subbands (3HL, 3LH, 3HH, 2HL, 2LH, 2HH, 1HL, 1LH, 1HH) shown in gray are to be encoded, and the 3LL subband is not encoded.
[0042]
Next, bits to be encoded are determined in the specified encoding order, and a context is generated from bits around the target bit by the quantization unit 112 shown in FIG. The wavelet coefficients after the quantization process are divided into non-overlapping rectangles called precincts for each subband. This was introduced to make efficient use of memory in the implementation.
[0043]
FIG. 5 is a view for explaining an example of the relationship between a precinct and a code block. t0 , 140 t1 , 140 t2 , 140 t3 Are divided into four tiles. As shown in FIG. 5, for example, the precinct 140 p4 Consists of three spatially matched rectangular areas, and the precinct 140 p6 The same is true for Here, precinct numbers are assigned from 0 to 8 in raster order. Further, each precinct is divided into non-overlapping rectangular code blocks. In this example, it is divided into twelve code blocks from 0 to 11, for example, code block 140 b1 Indicates code block number 1. This code block is a basic unit when performing entropy coding.
[0044]
The coefficient value after wavelet transform can be quantized and encoded as it is. However, in JPEG2000, in order to increase the encoding efficiency, the coefficient value is decomposed into “bit plane” units, and each pixel or code block is decomposed. "Bit planes" can be ranked. FIG. 6 briefly explains the procedure. In this example, the original image (32 × 32 pixels) is divided by four tiles of 16 × 16 pixels, and the size of the precinct and the code block at the decomposition level 1 are 8 × 8 pixels and 4 pixels, respectively. × 4 pixels. Precincts and code blocks are numbered in raster order. The pixel expansion outside the tile boundary is performed by using a mirroring method, performing a wavelet transform using a reversible (5, 3) filter, and obtaining a wavelet coefficient value of decomposition level 1. In addition, a conceptual diagram of a representative “layer” for tile 0 / precinct 3 / code block 3 is also shown. The layer structure is easy to understand when the wavelet coefficient values are viewed from the horizontal direction (bit plane direction). One layer is composed of an arbitrary number of bit planes. In this example, layers 0, 1, 2, and 3 consist of 1, 3, 1, and 3 bit planes, respectively. Then, a layer including a bit plane closer to the LSB is subject to quantization first, and conversely, a layer closer to the MSB remains unquantized to the end. A method of discarding from a layer close to the LSB is called truncation, and it is possible to finely control the quantization rate.
[0045]
The above-described entropy coding unit 113 shown in FIG. 2 performs coding for each component tile by probability estimation from the context and the target bit. In this way, the encoding process is performed on all the components of the original image in tile units. Lastly, the tag processing unit 114 combines all the encoded data from the entropy coder unit into one code stream and performs a process of adding a tag to it. FIG. 7 is a diagram simply showing an example of the structure of a code stream. A tag called a header (a main header 150 and a tile part header 151, respectively) is placed at the head of the code stream and the head of a partial tile constituting each tile. Information is added, followed by encoded data (bitstream 152) for each tile. Then, at the end of the code stream, a tag (End of codestream) 153 is placed again.
[0046]
On the other hand, at the time of decoding, image data is generated from the code stream of each tile of each component, contrary to the time of encoding. This will be briefly described with reference to FIG. In this case, the tag processing unit 114 interprets the tag information added to the code stream input from the outside, decomposes the code stream into a code stream of each tile of each component, and Is subjected to a decoding process. The positions of the bits to be decoded are determined in the order based on the tag information in the code stream, and the inverse quantization unit 112 calculates the order of the neighboring bits (already decoded) at the target bit position. A context is created. The entropy decoding unit 113 decodes the context and the code stream by probability estimation to generate a target bit, and writes the target bit at the position of the target bit.
[0047]
Since the data decoded in this way is spatially divided for each frequency band, the two-dimensional wavelet inverse transform unit 111 performs an inverse two-dimensional wavelet transform on each of the tiles of each component of the image data. Will be restored. The restored data is converted by the color space inverse converter 110 into the original color system data.
[0048]
Further, in the case of the conventional JPEG compression / decompression format, the tile described in JPEG2000 above may be read as a square block having eight pixels on one side, which is subjected to two-dimensional discrete cosine transform.
[0049]
Up to this point, the description has been given of a general still image. However, this technique can be extended to a moving image. In other words, each frame of a moving image is composed of one still image, and the moving image data is created (encoded) or displayed (decoded) at a frame rate optimal for the application. it can. This is a function called motion compression / expansion processing of a still image. Since this method has a function not available in the MPEG format video file currently widely used for moving images, that is, it has the advantage that it can handle high-quality still images in frame units, It is starting to attract attention in the field. Eventually, it is likely to spread to general consumers.
[0050]
[Overall configuration of copier]
An embodiment of the present invention will be described.
[0051]
FIG. 8 is a longitudinal sectional view schematically showing a copying machine according to the present embodiment. The copier 1 implements the image forming apparatus of the present invention, and includes a scanner 2 and a printer 21 that forms an image based on read image data output from the scanner 2 on a recording medium such as paper.
[0052]
A contact glass 3 on which an original (not shown) is placed is provided on the upper surface of the main body case of the scanner 2. The original is placed with the original surface facing the contact glass 3. Above the contact glass 3, there is provided a platen cover 4 for holding down an original placed on the contact glass 3.
[0053]
Below the contact glass 3, a first traveling body 7 on which a light source 5 for emitting light and a mirror 6 are mounted, a second traveling body 10 on which two mirrors 8, 9 are mounted, and mirrors 6, 8, 9 A reading optical system 13 including a CCD (Charge Coupled Device) image sensor 12 and the like that receives the light guided by the imaging lens 11 through the imaging lens 11 is provided. The CCD image sensor 12 functions as a photoelectric conversion element that generates photoelectric conversion data obtained by photoelectrically converting reflected light from a document imaged on the CCD image sensor 12. The photoelectric conversion data is a voltage value having a magnitude corresponding to the intensity of light reflected from the document. The first and second traveling bodies 7 and 10 are provided so as to be reciprocally movable along the contact glass 3, and at the time of image reading processing described later, at a speed ratio of 2: 1 by a moving device such as a motor (not shown). To run. As a result, exposure scanning of the document reading area by the reading optical system 13 is performed.
[0054]
The printer 21 includes a medium path 26 from a medium holding unit 22 for holding a recording medium such as a sheet of paper to an output unit 25 via an electrophotographic printer engine 23 and a fixing unit 24.
[0055]
The printer engine 23 transfers the toner image formed around the photoreceptor 32 to the recording material by an electrophotographic method using a charger 27, an exposure device 28, a developing device 29, a transfer device 30, a cleaner 31, and the like, and transfers the toner image. The toner image is fixed on the recording material by the fixing device 24. In this example, the printer engine 23 forms an image by an electrophotographic method. However, the present invention is not limited to this, and various image forming methods such as an ink jet method, a sublimation type thermal transfer method, and a direct thermal recording method may be used. Can be.
[0056]
Such a copying machine 1 is controlled by a control system including a plurality of microcomputers. FIG. 9 is a block diagram showing an electrical connection of a control system related to image processing among these control systems. In this control system, a CPU 41, a ROM 42, and a RAM 43 are connected by a bus 44. The CPU 41 performs various calculations and centrally controls processing such as image processing. The ROM 42 stores various programs and fixed data related to the processing executed by the CPU 41. The RAM 43 is a work area for the CPU 41. The IPU (Image Processing Unit) 45 includes hardware related to various image processing. The ROM 42 serving as a storage medium includes a non-volatile memory such as a flash memory, and a program stored in the ROM 42 is a program downloaded from an external device (not shown) through the I / O port 46 under the control of the CPU 41. Can be rewritten.
[0057]
FIG. 10 is a functional block diagram of the image processing device 51. The image processing device 51 includes an image compression encoding unit 52 and an aggregate image unit 53. The image compression encoding unit 52 implements image compression encoding means, and converts digital image data of a plurality of images read by the scanner 2 and subjected to various image processing such as white shading correction by the IPU 45 into JPEG2000. A compression encoding is performed by an algorithm to generate a code stream of each image. That is, the image is divided into one or a plurality of rectangular regions (tiles), and pixel values are discrete wavelet-transformed for each of the rectangular regions and hierarchically compression-encoded. The aggregated image unit 53 performs an aggregation process of integrating the code streams of the respective images into one image and a division process of dividing the code stream of an image already aggregated into one image into a plurality of images. .
[0058]
Therefore, the image compression encoding unit 52 includes the respective functional blocks described with reference to FIG. 2, and performs the compression encoding of the image data by the JPEG2000 algorithm as described above. The function of the image compression encoding unit 52 may be performed by processing performed by hardware by the IPU 45, or may be performed by processing performed by the CPU 41 based on a program stored in the ROM 42. The function of the aggregated image unit 53 is actually realized by processing performed by the CPU 41 based on a program stored in the ROM 42.
[0059]
FIG. 11 is a functional block diagram of the integrated image unit 53. The integrated image unit 53 includes an image reading unit 54, a header / code data division processing unit 55, a header processing unit 56, a code stream synthesizing unit 57, and an aggregation setting unit 58.
[0060]
Hereinafter, a case where the aggregated image is combined by the aggregated image unit 53 will be described. Note that, for convenience, the description will be made on the assumption that all code streams input to the aggregated image unit 53 have a single-tile configuration of the same size.
[0061]
First, when the user operates an operation panel (not shown) of the copier 1 to instruct execution of copying accompanied by synthesis of an aggregated image, the scanner 2 reads images of a plurality of originals, and the IPU 45 performs white shading correction and the like. The plurality of digital image data subjected to various image processes are output to the aggregation setting unit 58 as a plurality of code streams compression-encoded by the image compression encoding unit 52, respectively.
[0062]
First, in the aggregation setting unit 58 that implements the aggregation setting means, the user operates an operation panel (not shown) to determine how many images are to be aggregated into one, and the horizontal direction for generating the aggregated image is determined. , Set the number of images in the vertical direction. For example, when four images are combined into one image, the horizontal and vertical directions are 2 × 2. Further, the image reading unit 54 sequentially reads each code stream for performing the aggregation process. The read first code stream 61 is divided into a header part and a code data part by a header / code data division processing unit 55 that implements a header / code data division processing unit. Subsequently, in the header processing unit 56 that implements the header processing unit, the image size of the divided main header is changed to the image size after aggregation according to the setting of the aggregation setting unit 58. Also, a new tile part header is generated. A tile index is added to this tile part header.
[0063]
Are read by the image reading unit 54, the header / code data dividing unit 55 divides the header and the coded data, and the header processing unit 56 converts the main header into a tile part header. change. At that time, a tile index is sequentially added. When all the headers of the image data have been processed, a code stream synthesizing unit 57 that realizes a code stream generating unit synthesizes the image stream into a code stream conforming to JPEG2000, and a code stream 61 of an image obtained by integrating a plurality of images into one image. 'Is completed.
[0064]
FIG. 12 is a diagram for explaining the data configuration of a plurality of code streams before aggregation by the aggregation image unit 53. The main header, tile part header, bit stream, EOC marker, The main header, tile part header, bit stream, EOC marker of the second code stream 62,..., The main header, tile part header, bit stream, and EOC marker of the Nth code stream 6N are shown.
[0065]
FIG. 13 is a view for explaining the data configuration of the code stream after aggregation by the aggregated image unit 53. The main header, tile part header, bit stream, tile part header, bit stream, A tile part header, a bit stream, and an EOC marker are shown.
[0066]
12 and 13, the 1, 2,..., Nth code streams 61, 62,..., 6N read by the image reading unit 54 are divided into a header portion and a code data portion. The main header 1 and the tile part header 1 of the code stream are edited by the header processing unit 56, and the main header 2 and the tile part header 2 of the second code stream are added to the main header 1 ′ and the tile part header 1 ′. The header processing unit 56 edits the tile part header 2 ′, and the main header N and the tile part header N of the Nth code stream are edited into the tile part header N ′ by the header processing unit 56, as shown in FIG. The combined image code stream 61 'is generated.
[0067]
FIG. 14 is a flowchart illustrating an example of an image aggregation process performed by the copying machine 1. First, when the user instructs to execute the copy (Y in step S1), it is determined whether the user instructs to execute the aggregation process (step S2). If it is determined that no instruction has been given (N in step S2), a series of processing ends.
[0068]
When the execution of the aggregation process is instructed (Y in step S2), it is determined whether or not all the code streams to be aggregated have been read by the image reading unit 54 (step S3), and all the code streams have been read. When (Y in step S3), the process proceeds to step S10. If not read (N in step S3), the image is read continuously (step S4), and the header / code data division processing section 55 divides the header section and the code data section (step S5). Step S5 implements a header / code data division process.
[0069]
Subsequently, it is determined whether the read code stream is the first code stream (step S6). If the read code stream is the first code stream (Y in step S6), the main header and the tile part header of the aggregated code stream are determined. Is generated from the main header and the tile part header of the original code stream by the header processing unit 56 (step S7). If it is not the first code stream (N in step S6), a tile part header of the aggregated code stream is generated from the main header and tile part header of the original code stream by the header processing unit 56 (step S8). . Header processing is realized by steps S7 and S8. A counter for counting the number of original code streams is incremented (step S9), and the process returns to step S3. Hereinafter, the processing from step S3 to step S9 is repeated until the processing is completed for all the code streams to be subjected to the aggregation processing, and the processing is completed for all the code streams to be aggregated (Y in step S3). A new code stream is generated (step S10), and a series of processing ends. The code stream synthesis processing is realized by step S10.
[0070]
FIG. 15 is a flowchart when the copier 1 divides an aggregated code stream and performs a division process of generating a plurality of code streams. First, when the user instructs to execute copying (Y in step S11), it is determined whether or not the user instructs to execute the dividing process using an operation panel (not shown) (step S12). When the user has not instructed the execution of the division processing (N in step S12), the series of processing ends. If it is determined that the code stream is necessary (Y in step S12), the image reading unit 54 reads the code stream to be subjected to the division processing (step S13), and the header / code data division processing unit 55 encodes the header and the code. The data section is divided (step S14). Step S14 implements a header / code data division process.
[0071]
It is determined whether all the division processes have been completed (step S15). If it is determined that all the division processes have been completed (Y in step S15), a series of processes is terminated. If the processing has not been completed (N in step S15), the data of the divided header section is edited by the header processing section 56, and the code stream synthesizing section 57 adds a new header section to the single code data section. Generation of a divided image is performed by generating a new code stream (step S16). Step S16 implements header processing and code stream synthesis processing. Then, a counter for counting the number of divisions is increased (step S17), and the process returns to step S15. Hereinafter, the processing of steps S15 and S16 is repeated until the division processing ends, and the processing ends when the division processing ends.
[0072]
Therefore, for example, when there is a document in which four images are vertically and horizontally aggregated and copied into four images, the user instructs on the operation panel (not shown) that the image is divided into four images by dividing the image vertically and horizontally into two. , And instruct the execution of the copy. Then, the image compression encoding unit 52 divides one image into two tiles and divides them into four tiles as shown in FIG. 13 for the digital image data of the original of the aggregated image read by the scanner 2. Create a stream. Then, for this code stream, the header part and the code data part are divided (step S14), and four code streams as shown in FIG. 12 in which each tile is a code data part are generated (step S16). The image is formed by the printer 21 for each code stream, so that four copies obtained by dividing the aggregated image are generated.
[0073]
Note that the image processing apparatus 51 can execute both the aggregation processing and the division processing, but may be configured to be able to perform only one of the processing. In addition, in the above description, the aggregation process has been described assuming that the code stream to be aggregated is formed of a single tile for convenience. However, even when the code stream to be aggregated is divided into a plurality of tiles, a tile index is added. Although some operations are required at the point, the aggregated image can be generated by generally the same processing. In the division processing, for convenience, each grouped image has been described as forming a single tile. However, the grouping may be performed so that a plurality of tiles form a single image. In this case, a code stream is generated for each of a plurality of tiles forming a single image.
[0074]
Further, in the above-described example, the example in which the image processing device 51 is mounted on the copying machine 1 has been described. However, the image processing device 51 can be used in various electronic devices that handle image data. For example, an image processing apparatus such as a personal computer is loaded with an application program for executing the function of the image processing apparatus 51, and various types of image data are aggregated on the information processing apparatus, or the aggregated image data is divided. Can be performed. Further, it is possible to provide a storage medium such as an optical disk, a magneto-optical disk, or a flexible disk in which such an application program is stored.
[0075]
【The invention's effect】
According to the first and sixth aspects of the present invention, the images can be easily aggregated without repeating the process of expanding all the images and expanding them to the memory.
[0076]
According to the second and seventh aspects of the present invention, in the first and sixth aspects, a desired aggregated image can be obtained by setting the number of images to be aggregated.
[0077]
According to a third aspect of the present invention, in the first, second, sixth, and seventh aspects, a desired aggregated image is obtained by setting the number of images to be aggregated in the horizontal and vertical directions. Can be.
[0078]
According to the fourth and ninth aspects of the present invention, it is possible to easily divide the aggregated image without repeating the process of expanding all the images and expanding them in the memory.
[0079]
According to the fifth aspect of the present invention, it is possible to easily aggregate images and divide the aggregated images without repeating the process of expanding all images and expanding them in the memory.
[0080]
According to a tenth aspect of the present invention, the same effect as the one of the sixth to ninth aspects of the invention is exerted by the stored program.
[Brief description of the drawings]
FIG. 1 is a block diagram for explaining an outline of a JPEG algorithm.
FIG. 2 is a block diagram for explaining an outline of a JPEG2000 algorithm.
FIG. 3 is a diagram showing an example of subbands at each decomposition level when the decomposition level is 3.
FIG. 4 is a diagram illustrating an example of each component of a tiled color image.
FIG. 5 is a diagram illustrating an example of a relationship between a precinct and a code block.
FIG. 6 is an explanatory diagram of a procedure of decomposing a coefficient value into “bit planes” and ranking the “bit planes” for each pixel or code block.
FIG. 7 is a diagram schematically illustrating an example of a structure of a code stream.
FIG. 8 is a longitudinal sectional view schematically showing a copying machine according to an embodiment of the present invention.
FIG. 9 is a block diagram showing an electrical connection of a control system related to image processing of the copying machine.
FIG. 10 is a functional block diagram of the image processing apparatus of the copying machine.
FIG. 11 is a functional block diagram of an integrated image unit of the image processing apparatus.
FIG. 12 is a diagram for describing a data configuration of a plurality of code streams before aggregation in an aggregate image unit.
FIG. 13 is a diagram for describing a data configuration of a code stream that has been aggregated by an aggregated image unit.
FIG. 14 is a flowchart illustrating an example of image aggregation processing performed by a copying machine.
FIG. 15 is a flowchart illustrating an example of an image division process performed by a copying machine.
[Explanation of symbols]
1 Image forming apparatus
2 Scanner
23 Printer Engine
51 Image processing device
52 image compression encoding means
55 Header / code data division processing means
56 Header processing means
57 Codestream Synthesis Means
58 Aggregation setting means
61-6N code stream
61 'code stream

Claims (10)

複数枚の画像をそれぞれ1又は複数の矩形領域に分割し当該矩形領域ごとに画素値を離散ウェーブレット変換して階層的に圧縮符号化した複数のコードストリームを対象として、それぞれヘッダ部分と符号データ部分とに分割するヘッダ・符号データ分割処理手段と、
この分割後のヘッダ部分のデータを前記各画像を1枚の画像に集約するために編集するヘッダ処理手段と、
この編集したヘッダ部分のデータと前記各符号データ部分とを結合して前記各画像を1枚の画像に集約した単一の新たなコードストリームを生成するコードストリーム合成手段と、
を備えている画像処理装置。
Each of a plurality of images is divided into one or a plurality of rectangular areas, and pixel values of each of the rectangular areas are subjected to discrete wavelet transform, and a plurality of code streams are hierarchically compression-encoded. Header / code data division processing means for dividing into
A header processing means for editing the data of the header portion after the division in order to combine the images into one image;
Code stream synthesizing means for combining the data of the edited header portion and the respective code data portions to generate a single new code stream in which the images are aggregated into one image;
An image processing apparatus comprising:
前記複数の画像を1枚の画像に集約する画像数を設定する集約設定手段を備え、
前記ヘッダ処理手段は、前記集約設定手段の設定に応じて前記編集を行なう、請求項1に記載の画像処理装置。
An aggregation setting unit configured to set the number of images that aggregate the plurality of images into one image;
The image processing apparatus according to claim 1, wherein the header processing unit performs the editing according to a setting of the aggregation setting unit.
前記集約設定手段は、画像の水平方向及び垂直方向の少なくとも一方について前記集約する画像数を設定する、請求項2に記載の画像処理装置。The image processing apparatus according to claim 2, wherein the aggregation setting unit sets the number of images to be aggregated in at least one of a horizontal direction and a vertical direction of the image. 画像を複数の矩形領域に分割し当該矩形領域ごとに画素値を離散ウェーブレット変換して階層的に圧縮符号化した単一のコードストリームであって、前記矩形領域の一つ又は複数がそれぞれ単一の画像であるものを対象として、ヘッダ部分と符号データ部分とに分割するヘッダ・符号データ分割処理手段と、
この分割後のヘッダ部分のデータを前記画像ごとに複数の新たなコードストリームを生成するために編集するヘッダ処理手段と、
この編集したヘッダ部分のデータと前記各符号データ部分とを結合して前記画像ごとに複数の新たなコードストリームに生成するコードストリーム合成処理手段と、
を備えている画像処理装置。
A single code stream obtained by dividing an image into a plurality of rectangular areas, discretely performing a discrete wavelet transform on pixel values for each of the rectangular areas, and hierarchically compressing and encoding the code streams, wherein one or more of the rectangular areas are each a single A header / code data division processing unit that divides the target image into a header portion and a code data portion;
Header processing means for editing the data of the divided header portion to generate a plurality of new code streams for each image;
Code stream synthesis processing means for combining the data of the edited header portion and the respective code data portions to generate a plurality of new code streams for each image;
An image processing apparatus comprising:
原稿の画像を読取るスキャナと、
この読取った画像を1又は複数の矩形領域に分割し当該矩形領域ごとに画素値を離散ウェーブレット変換して階層的に圧縮符号化した単一のコードストリームを生成する画像圧縮符号化手段と、
このコードストリームを前記対象とする請求項1〜4の何れかの一に記載の画像処理装置と、
この画像処理装置の前記コードストリーム合成手段で合成後の各コードストリームに基づいて用紙上に画像の形成を行なうプリンタエンジンと、
を備えている画像形成装置。
A scanner for reading the image of the original,
Image compression encoding means for dividing the read image into one or a plurality of rectangular areas, and generating a single code stream hierarchically compression-encoded by discrete wavelet transform of pixel values for each of the rectangular areas;
An image processing device according to any one of claims 1 to 4, wherein the code stream is the object.
A printer engine for forming an image on paper based on each code stream synthesized by the code stream synthesizing means of the image processing apparatus;
An image forming apparatus comprising:
複数枚の画像をそれぞれ1又は複数の矩形領域に分割し当該矩形領域ごとに画素値を離散ウェーブレット変換して階層的に圧縮符号化した複数のコードストリームを対象として、それぞれヘッダ部分と符号データ部分とに分割するヘッダ・符号データ分割処理と、
この分割後のヘッダ部分のデータを前記各画像を1枚の画像に集約するために編集するヘッダ処理と、
この編集したヘッダ部分のデータと前記各符号データ部分とを結合して前記各画像を1枚の画像に集約した単一の新たなコードストリームを生成するコードストリーム合成処理と、
をコンピュータに実行させるコンピュータに読取り可能なプログラム。
Each of a plurality of images is divided into one or a plurality of rectangular areas, and pixel values of each of the rectangular areas are subjected to discrete wavelet transform, and a plurality of code streams are hierarchically compression-encoded. A header / code data dividing process for dividing into
A header process of editing the data of the header portion after the division in order to combine the images into one image;
A code stream synthesizing process of combining the data of the edited header portion and the code data portions to generate a single new code stream in which the images are aggregated into one image;
Computer-readable program that causes a computer to execute the program.
前記複数の画像を1枚の画像に集約する画像数を設定する集約設定処理をさらにコンピュータに実行させ、
前記ヘッダ処理は、前記集約設定手段の設定に応じて前記編集を行なう、
請求項6に記載のプログラム。
Causing the computer to further execute an aggregation setting process of setting the number of images in which the plurality of images are aggregated into one image;
The header processing performs the editing according to the setting of the aggregation setting unit,
The program according to claim 6.
前記集約設定処理は、画像の水平方向及び垂直方向の少なくとも一方について前記集約する画像数を設定する、請求項7に記載のプログラム。The program according to claim 7, wherein the aggregation setting process sets the number of images to be aggregated in at least one of a horizontal direction and a vertical direction of the image. 画像を複数の矩形領域に分割し当該矩形領域ごとに画素値を離散ウェーブレット変換して階層的に圧縮符号化した単一のコードストリームであって、前記矩形領域の一つ又は複数がそれぞれ単一の画像であるものを対象として、ヘッダ部分と符号データ部分とに分割するヘッダ・符号データ分割処理と、
この分割後のヘッダ部分のデータを編集するヘッダ処理と、
この編集したヘッダ部分のデータと前記各符号データ部分とを結合して前記画像ごとに複数の新たなコードストリームに生成するコードストリーム合成処理と、
をコンピュータに実行させるコンピュータに読取り可能なプログラム。
A single code stream obtained by dividing an image into a plurality of rectangular areas, discretely performing a discrete wavelet transform on pixel values for each of the rectangular areas, and hierarchically compressing and encoding the code streams, wherein one or more of the rectangular areas are each a single A header / code data division process of dividing the image into a header portion and a code data portion,
Header processing for editing the data of the header part after this division,
A code stream synthesizing process for combining the data of the edited header portion and the respective code data portions to generate a plurality of new code streams for each image;
Computer-readable program that causes a computer to execute the program.
請求項6〜9の何れかの一に記載のプログラムを記憶している記憶媒体。A storage medium storing the program according to any one of claims 6 to 9.
JP2002244877A 2002-08-26 2002-08-26 Image processing apparatus, image forming apparatus, program, and storage medium Expired - Fee Related JP3784755B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2002244877A JP3784755B2 (en) 2002-08-26 2002-08-26 Image processing apparatus, image forming apparatus, program, and storage medium
US10/646,754 US7245775B2 (en) 2002-08-26 2003-08-25 Image processing apparatus for compositing images

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002244877A JP3784755B2 (en) 2002-08-26 2002-08-26 Image processing apparatus, image forming apparatus, program, and storage medium

Publications (2)

Publication Number Publication Date
JP2004088307A true JP2004088307A (en) 2004-03-18
JP3784755B2 JP3784755B2 (en) 2006-06-14

Family

ID=32053229

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002244877A Expired - Fee Related JP3784755B2 (en) 2002-08-26 2002-08-26 Image processing apparatus, image forming apparatus, program, and storage medium

Country Status (1)

Country Link
JP (1) JP3784755B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009071630A (en) * 2007-09-13 2009-04-02 Fuji Xerox Co Ltd Image processor and image processing program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009071630A (en) * 2007-09-13 2009-04-02 Fuji Xerox Co Ltd Image processor and image processing program

Also Published As

Publication number Publication date
JP3784755B2 (en) 2006-06-14

Similar Documents

Publication Publication Date Title
KR100971833B1 (en) Image coding method and apparatus
US7336852B2 (en) Image processing apparatus, image reading apparatus, image forming apparatus and recording medium for image processing program
US7440624B2 (en) Image compression apparatus, image decompression apparatus, image compression method, image decompression method, program, and recording medium
US7406202B2 (en) Image processing apparatus, image compression apparatus, image processing method, image compression method, program, and recording medium
JP4136951B2 (en) Image processing apparatus, program, and storage medium
JP2004242290A (en) Image processing apparatus and image processing method, image edit processing system, image processing program, and storage medium
US7245775B2 (en) Image processing apparatus for compositing images
JP2004236299A (en) Image processing apparatus, image forming apparatus, image processing method, program and storage medium
JP2004186871A (en) Image processing apparatus, imaging apparatus, program, and storage medium
JP2006014086A (en) Moving image encoding apparatus and moving image encoding method
EP1635576A1 (en) Image processing device and image processing program
JP4315928B2 (en) Image processing apparatus and image processing method
JP3784755B2 (en) Image processing apparatus, image forming apparatus, program, and storage medium
JP4090352B2 (en) Image processing apparatus, image processing method, image forming apparatus, program, and storage medium
JP2004227406A (en) Image processor, program and storage medium
JP4111909B2 (en) Image processing apparatus, image processing program, and storage medium
JP4014087B2 (en) Image processing apparatus, image processing method, program, and storage medium
JP2001258033A (en) Coder and method for image data, and storage medium
JP2004235935A (en) Image processing apparatus, image forming apparatus, program, and storage medium
JP5078199B2 (en) Image encoding apparatus and method, program code, and storage medium
JP2004236219A (en) Image compression apparatus, decoder, image forming apparatus, program, and storage medium
JP2004228952A (en) Image processor, program for processing image, and storage medium
JP3912752B2 (en) Image processing apparatus, program, and storage medium
JP4093871B2 (en) Image forming apparatus, program, and storage medium
JP4010452B2 (en) Image processing apparatus and image processing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040301

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20040924

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20050620

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050830

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051028

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060315

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100324

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110324

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120324

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130324

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20140324

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees