[go: up one dir, main page]

JP2004120639A - Image processing method - Google Patents

Image processing method Download PDF

Info

Publication number
JP2004120639A
JP2004120639A JP2002284241A JP2002284241A JP2004120639A JP 2004120639 A JP2004120639 A JP 2004120639A JP 2002284241 A JP2002284241 A JP 2002284241A JP 2002284241 A JP2002284241 A JP 2002284241A JP 2004120639 A JP2004120639 A JP 2004120639A
Authority
JP
Japan
Prior art keywords
image
data
unit
image data
characteristic information
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
JP2002284241A
Other languages
Japanese (ja)
Other versions
JP4136573B2 (en
JP2004120639A5 (en
Inventor
Masakazu Kiko
木虎 正和
Hiroyuki Tsuji
辻 博之
Shinichi Kato
加藤 進一
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2002284241A priority Critical patent/JP4136573B2/en
Priority to US10/670,278 priority patent/US7447384B2/en
Publication of JP2004120639A publication Critical patent/JP2004120639A/en
Publication of JP2004120639A5 publication Critical patent/JP2004120639A5/ja
Application granted granted Critical
Publication of JP4136573B2 publication Critical patent/JP4136573B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Storing Facsimile Image Data (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide an image processing method, capable of providing appropriate image characteristic information corresponding to an operation mode and arbitrarily switching the priority of the image characteristic information to be added, to achieve more preferred image processing. <P>SOLUTION: Image data including the first image characteristic information are input by each predetermined unit from a scanner 1002, divided by a tiling bus 1048, and compressed by a tile compression section 1047. Compressed image data are stored in a memory, such as a RAM1021. At this point, when the compressed image data become a predetermined amount or larger, image data except for the first image characteristic information are stored; while an UI1032 or a CPU1006 specifies the second image characteristic information, and an image characteristic information substitution section 1058 sets the second image characteristic information as image characteristic information of image data expanded by an expansion section 1044, when the image data are output for printing by a printer 1003. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、欠落した画像特性情報を好適に補償する画像処理方法に関する。
【0002】
【従来の技術】
従来から、画像入力装置から読み込んだ画像データを圧縮する画像データ圧縮装置と、画像データ圧縮装置により圧縮された画像データを記憶するデータ記憶装置とを具備する画像処理装置が知られている。
【0003】
このような画像処理装置の中で、可変長符号の画像圧縮を行う画像処理装置では、画像データ圧縮装置から送信される画像データ量が画像データを記憶するデータ記憶装置の記憶容量を超えてしまった場合、もう一度画像入力をやり直し、前回より高い圧縮率で画像を圧縮し直す必要があった。あるいは、画像データ圧縮装置から送信される画像データのデータ量をカウントし、送信される画像データ量が一定値を超えた場合は、画像特性情報を送信することを停止することにより、データ記憶装置の記憶容量を超えないようにし、画像の再入力を回避するようにしていた。しかし、画像特性情報の送信を停止してしまうと画像特性情報が欠落してしまうので、画像処理装置内部での画像処理やプリント時の補正画像処理が最適に行われず、所望の画像処理結果が得られない可能性があった。
【0004】
そのため、これまでにも、画像データ転送時に代替情報をヘッダ情報として付加することによって、欠落した画像特性情報を補償する画像処理システムもある。
【0005】
【発明が解決しようとする課題】
しかしながら、画像データ圧縮時に代替情報(画像特性情報)を付加するだけでは、画像データ圧縮装置のデータ転送単位に代替情報が決定されるため、新たに画像データを転送したところから、画像データ出力時にページ内での代替情報の切り替わりが発生し、画質劣化が発生することが懸念される。また、ユーザの好みによっては、設定したい代替情報値を1つに決められないという問題点も懸念される。
【0006】
本発明は、このような事情を考慮してなされたものであり、動作モードに応じて適正な画像特性情報を提供することができ、付加する画像特性情報の優先度を任意に切り替えて、より好ましい画像処理を実現することができる画像処理方法を提供することを目的とする。
【0007】
【課題を解決するための手段】
この課題を解決するため本発明は、後述する実施態様に従えば以下の構成を特徴とする。
【0008】
[発明1] 所定単位毎に第1の画像特性情報を含む画像データを前記所定単位毎に分割する分割工程と、
分割された前記所定単位毎の画像データを圧縮する圧縮工程と、圧縮された画像データが所定量以下の場合、前記第1の画像特性情報を含めた画像データを記憶装置に記憶し、圧縮された画像データが所定量以上の場合、前記第1の画像特性情報を除いた画像データを前記記憶装置に記憶する記憶工程と、
前記記憶装置に記憶された圧縮後の画像データを伸長する伸長工程と、
第2の画像特性情報を指定する指定工程と、前記画像データの印刷時に、前記第1の画像特性情報を含まずに伸長された画像データの画像特性情報として、前記第2の画像特性情報を設定する置換工程と、
伸長された前記画像データを印刷する印刷工程と
を有することを特徴とする画像処理方法。
【0009】
[発明2] 前記第2の画像特性情報が、前記画像データの前記所定単位ごとに設定されたヘッダ情報に含まれていることを特徴とする発明1記載の画像処理方法。
【0010】
[発明3] 前記第2の画像特性情報が、前記画像データにおける画像特性情報の代表値であることを特徴とする発明2記載の画像処理方法。
【0011】
[発明4] 前記記憶装置に記憶される画像データのデータ量をカウントするカウント工程と、カウントされた前記画像データのデータ量が所定量を超えたか否かを判定する判定工程と、前記画像データのデータ量が所定量を超えたと判定された場合、前記第1の画像特性情報の前記記憶装置への記憶を停止する停止工程とをさらに有することを特徴とする発明1から3までのいずれか1項に記載の画像処理方法。
【0012】
[発明5] 圧縮された前記画像データのデータ量が所定量を超えたことを示すフラグを出力するフラグ出力工程をさらに有することを特徴とする発明4記載の画像処理方法。
【0013】
[発明6] 第2の画像特性情報を記憶する画像特性情報記憶装置を備える画像処理装置における画像処理方法であって、
所定単位毎に第1の画像特性情報を含む画像データを前記所定単位毎に分割する分割工程と、
分割された前記所定単位毎の画像データを圧縮する圧縮工程と、
圧縮された画像データが所定量以下の場合、前記第1の画像特性情報を含めた画像データを記憶装置に記憶し、圧縮された画像データが所定量以上の場合、前記第1の画像特性情報を除いた画像データを前記記憶装置に記憶する記憶工程と、
前記記憶装置に記憶された圧縮後の画像データを伸長する伸長工程と、
前記画像データの印刷時に、前記第1の画像特性情報を含まずに伸長された画像データの画像特性情報として、新たな画像特性情報を設定する置換工程と、
前記新たな画像特性情報として、前記画像特性情報記憶装置に記憶された前記第2の画像特性情報を用いる動作モード、又は、前記画像データの前記所定単位毎に設定されたヘッダ情報に含まれる第3の画像特性情報を用いる動作モードのいずれかの動作モードを指定する指定工程と、
伸長された前記画像データを印刷する印刷工程と
を有することを特徴とする画像処理方法。
【0014】
[発明7] 所定単位毎に第1の画像特性情報を含む画像データを前記所定単位毎に分割する分割工程と、
分割された前記所定単位毎の画像データを圧縮する圧縮工程と、
圧縮された画像データを記憶装置に記憶する記憶工程と、
前記記憶装置に記憶された圧縮後の画像データを伸長する伸長工程と、
複数ページの画像データを1ページに結合して印刷する際の結合前のページを設定するための第2の画像特性情報を指定する指定工程と、
前記画像データの印刷時に、伸長された前記画像データの画像特性情報として、前記第2の画像特性情報を設定する置換工程と、
伸長された前記画像データを印刷する印刷工程と
を有することを特徴とする画像処理方法。
【0015】
[発明8] 前記第2の画像特性情報が、
ラスタ画像及びフォントデータを含むデータタイプの種類を識別するためのデータタイプ識別情報と、
文字データ又は写真データのいずれであるのかを識別するための画像タイプ識別情報と、
グレースケールデータ又はカラーデータのいずれであるのかを識別するため色識別情報と
を含むことを特徴とする発明7記載の画像処理方法。
【0016】
[発明9] 前記第2の画像特性情報が、
複数ページの画像データを1枚の用紙に印刷する際に結合前のページを識別するための面情報と、
各画像データが連続階調データ又は面積階調で形成された画像データのいずれであるのかを識別するための画像タイプ識別情報と、
前記印刷手段の動作モードを識別する情報と
を含むことを特徴とする発明7記載の画像処理方法。
【0017】
[発明10] 所定単位毎に第1の画像特性情報を含む画像データを入力する入力手段と、
前記入力手段によって入力された前記画像データを前記所定単位毎に分割する分割手段と、
前記分割手段によって分割された前記所定単位毎の画像データを圧縮する圧縮手段と、
圧縮された画像データを記憶し、該圧縮された画像データが所定量以上の場合、前記第1の画像特性情報を除いた画像データを記憶する記憶手段と、
前記記憶手段に記憶された圧縮後の画像データを伸長する伸長手段と、
伸長された前記画像データを出力する出力手段と、
第2の画像特性情報を指定する指定手段と、
前記出力手段による前記画像データの出力時に、前記第1の画像特性情報を含まずに伸長された画像データの画像特性情報として、前記第2の画像特性情報を設定する置換手段と
を備えることを特徴とする画像処理装置。
【0018】
[発明11] 前記第2の画像特性情報が、前記画像データの前記所定単位ごとに設定されたヘッダ情報に含まれていることを特徴とする発明10記載の画像処理装置。
【0019】
[発明12] 前記第2の画像特性情報が、前記画像データにおける画像特性情報の代表値であることを特徴とする発明11記載の画像処理装置。
【0020】
[発明13] 前記記憶手段に記憶される画像データのデータ量をカウントするカウント手段と、
前記カウント手段によりカウントされた前記画像データのデータ量が所定量を超えたか否かを判定する判定手段と、
前記判定手段において前記画像データのデータ量が所定量を超えたと判定された場合、前記第1の画像特性情報の前記記憶手段への記憶を停止する停止手段とをさらに備えることを特徴とする発明10から12までのいずれか1項に記載の画像処理装置。
【0021】
[発明14] 圧縮された前記画像データのデータ量が所定量を超えたことを示すフラグを出力するフラグ出力手段をさらに備えることを特徴とする発明13記載の画像処理装置。
【0022】
[発明15] 所定単位毎に第1の画像特性情報を含む画像データを入力する入力手段と、
前記入力手段によって入力された前記画像データを前記所定単位毎に分割する分割手段と、
前記分割手段によって分割された前記所定単位毎の画像データを圧縮する圧縮手段と、
圧縮された画像データを記憶し、該圧縮された画像データが所定量以上の場合、前記第1の画像特性情報を除いた画像データを記憶する記憶手段と、
前記記憶手段に記憶された圧縮後の画像データを伸長する伸長手段と、
伸長された前記画像データを出力する出力手段と、
前記出力手段による前記画像データの出力時に、前記第1の画像特性情報を含まずに伸長された画像データの画像特性情報として、新たな画像特性情報を設定する置換手段と、
第2の画像特性情報を記憶する画像特性情報記憶手段と、
前記置換手段で設定される前記新たな画像特性情報として、前記画像特性情報記憶手段に記憶された前記第2の画像特性情報を用いる動作モード、又は、前記画像データの前記所定単位毎に設定されたヘッダ情報に含まれる第3の画像特性情報を用いる動作モードのいずれかの動作モードを指定する指定手段と
を備えることを特徴とする画像処理装置。
【0023】
[発明16] 前記出力手段が、媒体上に前記画像データを形成する画像形成装置であることを特徴とする発明10から15までのいずれか1項に記載の画像処理装置。
【0024】
[発明17] 前記入力手段が、原稿上に形成された画像を入力して前記画像データを生成する画像読取装置であることを特徴とする発明10から16までのいずれか1項に記載の画像処理装置。
【0025】
[発明18] 所定単位毎に第1の画像特性情報を含む画像データを入力する入力手段と、
前記入力手段によって入力された前記画像データを前記所定単位毎に分割する分割手段と、
前記分割手段によって分割された前記所定単位毎の画像データを圧縮する圧縮手段と、
圧縮された画像データを記憶する記憶手段と、
前記記憶手段に記憶された圧縮後の画像データを伸長する伸長手段と、
伸長された前記画像データを印刷する印刷手段と、
複数ページの画像データを1ページに結合して印刷する際の結合前のページを設定するための第2の画像特性情報を指定する指定手段と、
前記出力手段による前記画像データの出力時に、伸長された前記画像データの画像特性情報として、前記第2の画像特性情報を設定する置換手段と
を備えることを特徴とする画像処理装置。
【0026】
[発明19] 前記第2の画像特性情報が、
ラスタ画像及びフォントデータを含むデータタイプの種類を識別するためのデータタイプ識別情報と、
文字データ又は写真データのいずれであるのかを識別するための画像タイプ識別情報と、
グレースケールデータ又はカラーデータのいずれであるのかを識別するため色識別情報と
を含むことを特徴とする発明18記載の画像処理装置。
【0027】
[発明20] 前記第2の画像特性情報が、
複数ページの画像データを1枚の用紙に印刷する際に結合前のページを識別するための面情報と、
各画像データが連続階調データ又は面積階調で形成された画像データのいずれであるのかを識別するための画像タイプ識別情報と、
前記印刷手段の動作モードを識別する情報と
を含むことを特徴とする発明18記載の画像処理装置。
【0028】
[発明21] コンピュータに、
所定単位毎に第1の画像特性情報を含む画像データを前記所定単位毎に分割する分割手順と、
分割された前記所定単位毎の画像データを圧縮する圧縮手順と、
圧縮された画像データが所定量以下の場合、前記第1の画像特性情報を含めた画像データを記憶装置に記憶し、圧縮された画像データが所定量以上の場合、前記第1の画像特性情報を除いた画像データを前記記憶装置に記憶する記憶手順と、
前記記憶装置に記憶された圧縮後の画像データを伸長する伸長手順と、
第2の画像特性情報を指定する指定手順と、
前記画像データの出力時に、前記第1の画像特性情報を含まずに伸長された画像データの画像特性情報として、前記第2の画像特性情報を設定する置換工程と、
伸長された前記画像データを出力する出力手順と
を実行させるためのプログラム。
【0029】
[発明22] 発明21記載のプログラムを格納したことを特徴とするコンピュータ読み取り可能な記録媒体。
【0030】
上記本発明の構成にかかる理由は以下の記載から明らかになるであろう。
【0031】
【発明の実施の形態】
以下、図面を参照して、本発明の一実施形態に係る画像処理方法を実行する画像処理装置について詳細に説明する。
【0032】
[ネットワークシステムの概要説明]
図12は、本発明の一実施形態に係る画像処理装置を備えたネットワークシステム全体の構成図である。図12において、本発明の一実施形態に係る画像処理装置2001は、スキャナとプリンタを構成要素として有しており、スキャナから読み込んだ画像をローカルエリアネットワーク(LAN)2002に流したり、LAN2002から受信した画像をプリンタによりプリントアウトすることができる。また、スキャナから読み込んだ画像を図示しないFAX送信装置により、PSTN又はISDN2003に送信したり、PSTN又はISDN2003から受信した画像をプリンタによりプリントアウトすることができる。
【0033】
データベースサーバ2004は、画像処理装置2001により読み込んだ二値画像及び多値画像をデータベースとして管理する。また、データベースクライアント2005は、データベースサーバ2004に対するクライアント側装置であり、データベース2004に保存されている画像データを閲覧/検索等することができる。
【0034】
電子メールサーバ2006は、画像処理装置2001により読み取った画像を電子メールの添付ファイルとして受け取ることができる。電子メールクライアント2007は、電子メールサーバ2006の受け取ったメールを受信して閲覧したり、電子メールを送信したりすることが可能である。また、WWWサーバ2008は、HTML文書をLANに提供するためのWWWサーバである。そして、画像処理装置2001によってWWWサーバ2008から提供されるHTML文書をプリントアウトすることができる。
【0035】
ルータ2009は、LAN2002をインターネット/イントラネット2010と連結する。インターネット/イントラネット2010に、前述したデータベースサーバ2004、WWWサーバ2008、電子メールサーバ2006、本実施形態に係る画像処理装置2001と同様の装置が、それぞれデータベースサーバ2011、WWWサーバ2012、電子メールサーバ2013、画像処理装置2000として連結している。一方、本実施形態に係る画像処理装置2001は、PSTN又はISDN2003を介して、FAX装置2014と送受信可能になっている。また、LAN2002上にプリンタ2015が連結されており、本実施形態に係る画像処理装置2001により読み取った画像をプリントアウト可能なように構成されている。
【0036】
[画像処理装置2001の概要説明]
図13は、本発明の一実施形態に係る画像処理装置の全体の構成図である。図13において、コントローラユニット(Controller Unit)1001は、画像入力デバイスであるスキャナ(Scanner)1002や画像出力デバイスであるプリンタ(Printer)1003に接続し、またLAN1004や公衆回線(WAN)1005に接続することで、画像情報やデバイス情報の入出力、PDLデータのイメージ展開を行うためのコントローラである。
【0037】
[システム制御部の概要説明]
図14は、コントローラユニット1001内のシステム制御部2150の細部構成を示す構成図である。図14において、CPU1006はシステム全体を制御するためのプロセッサである。本実施形態では2つのCPUが用いられている例が示されている。これら2つのCPU1006は、共通のCPUバス1007に接続され、さらに、システムバスブリッジ1008に接続されている。
【0038】
システムバスブリッジ1008はバススイッチであり、CPUバス1007、RAMコントローラ1009、ROMコントローラ1010、IOバス1011、サブバススイッチ1012、IOバス1013、画像リングインタフェース1014及び画像リングインタフェース1015が接続されている。
【0039】
サブバススイッチ1012は第2のバススイッチであり、画像DMA1016、画像DMA1017、フォント伸長部1018、ソート回路1019及びビットマップトレース回路1020が接続され、これらの画像DMAから出力されるメモリアクセス要求を調停し、システムバスブリッジ1008への接続を行う。
【0040】
RAM1021はCPU1006が動作するためのシステムワークメモリであり、画像データを一時記憶するための画像メモリでもある。RAM1021は、RAMコントローラ1009により制御される。本実施形態では、ダイレクトRDRAMが採用されている例が示されている。また、ROM1022はブートROMであり、システムのブートプログラムが格納されている。ROM1022は、ROMコントローラ1010により制御される。
【0041】
画像DMA1016は、画像圧縮部1023に接続し、レジスタアクセスリング1024を介して設定された情報に基づき、画像圧縮部1023を制御し、RAM1021上にある非圧縮データの読み出し、圧縮、圧縮後データの書き戻しを行う。本実施形態では、JPEG方式を圧縮アルゴリズムに採用した例が示されている。
【0042】
画像DMA1017は、画像伸長部1025に接続し、レジスタアクセスリング1024を介して設定された情報に基づき、画像伸長部1025を制御し、RAM1021上にある圧縮データの読み出し、伸長、伸長後データの書き戻しを行う。本実施形態では、JPEG方式を伸長アルゴリズムに採用した例が示されている。
【0043】
フォント伸長部1018は、LANコントローラ1026等を介し、外部より転送されるPDLデータに含まれるフォントコードに基づき、ROM1022若しくはRAM1021内に格納された圧縮フォントデータの伸長を行う。本実施形態では、FBEアルゴリズムを採用した例が示されている。
【0044】
また、ソート回路1019は、PDLデータを展開する段階で生成されるディスプレイリストのオブジェクトの順番を並び替える回路である。さらに、ビットマップトレース回路1020は、ビットマップデータよりエッジ情報を抽出する回路である。
【0045】
IOバス1011は、内部IOバスの一種であり、標準バスであるUSBバスのコントローラ、USBインタフェース1027、(汎用)シリアルポート1028、インタラプトコントローラ1029、GPIOインタフェース1030が接続されている。IOバス1011には、図示しないバスアービタが含まれている。
【0046】
操作部インタフェース(I/F)1031は、操作部(UI)1032とのインタフェース部であり、操作部1032に表示する画像データを操作部1032に対して出力する。また、操作部1032から本システム使用者が入力した情報を、CPU1006に伝える役割をする。
【0047】
IOバス1013は、内部IOバスの一種であり、汎用バスインターフェース1033と、LANコントローラ1026が接続される。IOバス1013には、図示しないバスアービタが含まれる。汎用バスインタフェース1033は、2つの同一のバスインタフェースから成り、標準IOバスをサポートするバスブリッジである。本実施形態では、PCIバス1034を採用した例が示されている。
【0048】
外部記憶装置(HDD)1035はハードディスクドライブであり、システムソフトウェア、画像データ、各画像データに対応するページ情報及びジョブ情報等を格納する。HDD1035は、ディスクコントローラ1036を介して一方のPCIバス1034に接続される。LANコントローラ1026は、MAC回路1037、PHY/PMD回路1038を介しLAN1004に接続され、情報の入出力を行う。また、モデム(Modem)1039は公衆回線1005に接続し、情報の入出力を行う。
【0049】
[画像処理部の概要説明]
図15は、コントローラユニット1001内の画像処理部1041の細部構成を示す構成図である。図15において、画像リング1040は、一対の単方向接続経路の組み合わせにより構成される。そして、画像リング1040は、画像処理部1041内で、画像リングインタフェース1042及び画像リングインターフェース1043を介して、タイル伸長部1044、コマンド処理部1045、ステータス処理部1046及びタイル圧縮部1047に接続される。
【0050】
タイル伸長部1044は、画像リングインタフェース1042への接続に加えて、タイルバス1048に接続され、画像リング1040より入力された圧縮後の画像データを伸長し、タイルバス1048へ転送するバスブリッジである。タイルバスとは、1ページの画像データを所定の大きさの単位ブロック(これを「タイル」と呼ぶ。)に分割し、タイル単位でデータ処理及び転送を行うバスである。本実施形態では、多値画像データにはJPEG、二値画像データにはパックビッツを伸長アルゴリズムとして採用した例が示されている。
【0051】
タイル圧縮部1047は、画像リングインタフェース1043への接続に加えて、タイルバス1048に接続され、タイルバス1046より入力された圧縮前の画像データを圧縮し、画像リング1040へ転送するバスブリッジである。本実施形態では、多値画像データにはJPEG、二値画像データにはパックビッツを圧縮アルゴリズムとして採用した例が示されている。
【0052】
コマンド処理部1045は、画像リングインタフェース1043への接続に加え、レジスタ設定バス1049に接続され、画像リング1040を介して入力されたCPU1006より発行されたレジスタ設定要求を、レジスタ設定バス1049に接続される該当ブロックへ書き込む。また、CPU1006より発行されたレジスタ読み出し要求に基づき、レジスタ設定バス1049を介して該当レジスタより情報を読み出し、画像リングインタフェース1043に転送する。
【0053】
ステータス処理部1046は、各画像処理ブロックの情報を監視し、CPU1006に対してインタラプトを発行するためのインタラプトパケットを生成し、画像リングインタフェース1043に出力する。また、タイルバス1048には上記ブロックに加えて、以下の機能ブロックが接続される。
【0054】
すなわち、レンダリング部インタフェース1050、画像入力インタフェース1051、画像出力インタフェース1052、多値化処理部1053、二値化処理部1054、色空間変換部1055、画像回転部1056、解像度変換部1057及び画像特性情報置換部1058である。また、図中のタイルバス1048はバス・コントローラも含む。
【0055】
レンダリング部インタフェース1050は、後述するレンダリング部1067により生成されたビットマップイメージを入力するためのインタフェースである。レンダリング部1067とレンダリング部インタフェース1050は、一般的なビデオ信号1059によって接続される。レンダリング部インタフェース1050は、タイルバス1048に加え、メモリバス1060、レジスタ設定バス1049への接続を有し、入力されたラスタ画像をレジスタ設定バス1049を介して設定された所定の方法によってタイル画像への構造変換をすると同時にクロックの同期化を行い、タイルバス1048に対し出力を行う。
【0056】
画像入力インタフェース1051は、スキャナ1002からのスキャン画像データを入力とし、タイル画像への構造変換及びクロックレートの変更を行い、画像処理部1041へと出力する。
【0057】
画像出力インタフェース1052は、タイルバス1048からのタイル画像データを入力とし、ラスタ画像への構造変換及びクロックレートの変更を行い、ラスタ画像をプリント画像処理部1061へ出力する。
【0058】
画像回転部1056、1057は画像データの回転を行う。また、解像度変換部1055は画像の解像度の変換を行う。さらに、二値化処理部1054は、多値(カラー及びグレースケール)画像を二値化し、多値化処理部1053は、二値画像を多値データへ変換する。さらにまた、画像特性情報置換部1058は、受信した画像特性情報を代替特性情報へ変換し、他ブロックへの送信を行う。
【0059】
外部バスインタフェース部1062は、画像リングインタフェース1014、1015、1042、1043、コマンド処理部1045、レジスタ設定バス1049を介して、CPU1006により発行された書き込み・読み出し要求を外部バス1063に変換出力するバスブリッジである。外部バス1063は、本実施形態では、プリント画像処理部1061、スキャナ用画像処理部1064に接続されている。
【0060】
メモリ制御部1065は、メモリバス1059に接続され、各画像処理部の要求に従い、あらかじめ設定されたアドレス分割により、画像メモリ1066に対して、画像データの書き込み・読み出し、必要に応じてリフレッシュ等の動作を行う。本実施形態では、画像メモリにSDRAMを用いた例が示されている。
【0061】
スキャナ用画像処理部1064では、画像入力デバイスであるスキャナ1002によりスキャンされた画像データを補正処理する。また、プリント画像処理部1061では、プリンタ出力のための画像データの補正処理を行い、その結果をプリンタ1003へ出力する。
【0062】
レンダリング部1067は、PDLコード若しくは中間ディスプレイリストをビットマップイメージに展開する。
【0063】
すなわち、本実施形態に係る画像処理装置では、まず、スキャナ1002、画像入力I/F1051を介して、所定単位毎に第1の画像特性情報を含む画像データが入力される。入力された画像データは、タイルバス1048によって所定単位毎に分割され、タイル圧縮部1047において、分割された所定単位毎の画像データが圧縮される。そして、圧縮された画像データはRAM1021等のメモリに記憶されるが、この際、圧縮された画像データが所定量以上(例えば、メモリの記憶容量以上)になるような場合、第1の画像特性情報を除いた画像データが記憶される。次いで、メモリに記憶された圧縮後の画像データがタイル伸長部1044で伸長される。一方、UI1032やCPU1006により第2の画像特性情報が指定され、プリンタ1003での印刷のために画像出力I/F1052に対して画像データが出力される時に、第1の画像特性情報を含まずに伸長された画像データの画像特性情報として、第2の画像特性情報が画像特性情報置換部1058で設定される。
【0064】
また、本実施形態に係る画像処理装置では、メモリに記憶される画像データのデータ量がデータ量カウント部208でカウントされる。そして、CPU1006等により、データ量カウント部208でカウントされた画像データのデータ量が所定量を超えたか否かが判定され、画像データのデータ量が所定量を超えたと判定された場合は、第1の画像特性情報のメモリへの記憶動作が停止される。
【0065】
[パケット・フォーマット]
次に、本実施形態におけるデータフォーマットについて詳しく説明する。
【0066】
前述したコントローラユニット1001内では、画像データ、CPU1006によるコマンド、各ブロックからの割り込み情報等は、パケット化された形式で転送される。本実施例では、図16に示すデータパケット、図17に示すコマンドパケット、図18に示すインタラプトパケットの3つの異なる種類のパケットが使用される。
【0067】
図16は、本実施形態で使用されるデータパケットの構造の概要を示す図である。本実施形態では、画像データを32pixel×32pixelのタイル単位の画像データ(Image Data)3002に分割して取り扱う。このタイル単位の画像データ3002に、必要なヘッダ情報(header)3001及び画像特性情報(Z Data)3003等を結合したパケットを「データパケット」と呼ぶ。以下に、ヘッダ情報3001に含まれる情報について説明する。
【0068】
図16に示すように、パケットは、ヘッダ情報3001内のパケットタイプ(Pckt Type)3004内のパケットタイプID(Packet Type ID)3023の値によってデータパケット、コマンドパケット及びインタラプトパケットに区別される。本実施形態では、Packet Type ID3023は、3ビットであり、
001b又は101b :データパケット
010b  :コマンドパケット
100b  :インタラプトパケット
のようにそれぞれを割り付けている。
【0069】
また、パケットタイプ3004には、リピートフラグ(Repeat Flag)3022が含まれている。そして、データパケットの画像データ及び画像特性情報3003、ヘッダ情報3001内の所定の情報が1つ前に送信したデータパケットと同一の場合、リピートフラグ3022に1をセットする。この場合、パケットの転送はヘッダ情報3001のみ行われる。
【0070】
チップID(Chip ID)3005は、パケットを送信するターゲットとなるチップのIDを示す。イメージタイプ(Image Type)3006は、画像データのタイプを示す。本実施形態では、8ビットのイメージタイプ3006のうち上位2ビットを用いて画像データのタイプを以下のように規定する。
【0071】
00b:1画素の画像データを1ビットで表す
01b:1画素の画像データを8ビット1成分で表す
10b:1画素の画像データを8ビット3成分、計24ビットで表す
11b:1画素の画像データを8ビット4成分、計32ビットで表す。
【0072】
ページID(Page ID)3007は、データパケットが含まれるページを示しており、ジョブID(Job ID)3008は、ソフトウェアで管理するためのジョブIDを格納する。また、データパケットのページ上の並び順はY方向のタイル(tile)座標(Packet ID Y−coordinate)3009とX方向のタイル座標(Packet ID X−coordinate)3010の組み合わせで、Xで表される。
【0073】
プロセスインストラクション(Process Instruction)3011は左詰で8ビット毎に処理順に設定され、各処理ユニット(Unit)は処理後プロセスインストラクションを左に8ビットシフト(Shift)する。本実施形態では、プロセスインストラクション3011は、ユニットID(Unit ID)3024とモード(Mode)3025の組が8組格納されている。ユニットID3024は画像処理部2149の各処理ユニットを指定し、モード3025は各処理ユニットでの動作モードを指定する。これにより、1つのパケットは8つのユニットまで連続して処理することができる。
【0074】
パケットバイトレングス(Packet Byte Length)3012は、パケットのトータルバイト数を示す。イメージデータバイトレングス(Image Data Byte Length)3015は画像データのバイト数、画像特性情報バイトレングス(Z Data Byte Length)3016は画像特性情報のバイト数を表し、イメージデータオフセット(Image Data Offset)3013、画像特性情報オフセット(Z Data Offset)3014は、それぞれのデータに対するパケットの先頭からのオフセット(Offset)の値を表している。
【0075】
データパケットでは、パケットが持つ画像データ及び画像特性情報が圧縮されている場合と非圧縮の場合が存在する。本実施形態では、圧縮アルゴリズムとして、画像データが多値カラー(多値グレースケールを含む。)の場合はJPEG方式を、二値の場合及び画像特性情報はパックビッツ方式を採用した例が示されている。
【0076】
画像圧縮に関係する上記方式により画像データ及び画像特性情報が圧縮されている場合と非圧縮の場合との区別は、それぞれコンプレスフラグ(Compress Flag)3017内のイメージデータ(Image Data)3026及び画像特性情報(Z data)3027が1の場合は圧縮データ、0の場合は非圧縮データであることを表す。
【0077】
また、コンプレスフラグ(Compress Flag)3017内には、JPEGにより圧縮処理を行う際に使用した量子化テーブルの種類を格納するQテーブルID(Q−Table ID)3028が用意されており、量子化テーブルが複数ある場合、データの圧縮及び伸長時はこの値を参照して、使用する量子化テーブルの切替を行う。
【0078】
ソースID(Source ID)3018は、画像データ及び画像特性情報が生成されたソースを示す。Zタイプ(Z type)3020は画像特性情報における有効ビット幅を示し、Zタイプ3020で示したビット以外の画像特性情報は無効情報とする。尚、Zタイプ3020が0である場合は、入力された画像特性情報全てが無効であることを表す。
【0079】
Zダミー(Zdummy)3033は、後述のコンプレスフェイル(CompressFail)フラグが立った場合に、画像特性情報の代替値がセットされる。
【0080】
サムネールデータ(Thumbnail Data)3021は、データパケットの画像データを代表する値(以下、「サムネール値」と呼ぶ。)を格納する。本実施形態では、サムネールデータ(thumbnail Data)3021に最大4つのサムネール値を格納することができる構成となっている。
【0081】
ミスク(Misc)3019は、上記の各情報以外に必要となる情報を格納する。本実施形態では、キャラフラグ(Char−flag)3029及びQテーブルセル(Q−Table Sel)3030が用意されている。キャラフラグ3029には、データパケットが属する領域信号が格納される。Qテーブルセル3030には、JPEG方式による圧縮及び伸長時に使用する量子化テーブルを変更するための情報が格納される。キャラフラグ、Qテーブルセルともにパケット内の画像特性情報で示される、所定の画像特性を有する画素数をカウントし、そのカウント結果によりフラグ(flag)がオン/オフ(On/Off)される。
【0082】
コンプレスフェイル(CompressFail)3032は、圧縮後のデータ量が所定の値を超えていた場合にセットされるフラグである。
【0083】
図17は、本実施形態で使用されるコマンドパケットの構造の概要を示す図である。本パケットフォーマット(Packet Format)は、レジスタ設定バス1049へのアクセスを行うためのものである。本パケットを用いることにより、CPU1006より画像メモリ1066へのアクセスも可能である。
【0084】
チップID(Chip ID)4004には、コマンドパケットの送信先となる画像処理部1041を表すIDが格納される。ページID(Page ID)4007、ジョブID(Job ID)4008は、ソフトウェアで管理するためのページIDとジョブIDを格納する。ここで、パケットID(Packet ID)4009は1次元で表される。すなわち、データパケット(Data Packet)のX座標(X−coordinate)のみを使用する。
【0085】
パケットバイトレングス4010は、128バイトで固定されている。また、パケットデータ部4002には、アドレス(Address)4011とデータ(Data)4012の組を1つのコマンド(Command)として、最大12個のコマンドを格納することが可能である。そして、ヘッダ部4001には、ライトかリードかのコマンドのタイプ(Cmd Type)4005、コマンドの数(Cmd num)4006も含まれる。
【0086】
図18は、本実施形態で使用されるインタラプトパケットの構造の概要を示す図である。本パケットフォーマット(Packet Format)は画像処理部1041からCPU1006への割り込みを通知するためのものである。ステータス処理部1046は、インタラプトパケットを送信すると、次に送信の許可がされるまではインタラプトパケットを送信してはならない。尚、パケットバイトレングス5006は128バイトで固定されている。
【0087】
パケットデータ部(Int Data)5002には、画像処理部1041の各内部モジュールのステータス情報(Module Status)5007が格納されている。ステータス処理部1046は、画像処理部1041内の各モジュールのステータス情報を集め、一括してシステム制御部2150に送ることができる。
【0088】
チップID(Chip ID)5004には、インタラプトパケットの送信先となるシステム制御部2150を表すIDが格納される。また、イントチップID(Int Chip ID)5005には、インタラプトパケットの送信元となる画像処理部1041を表すIDが格納される。
【0089】
前述のパケット・データはメモリに格納される際には、パケットテーブル(Packet Table)という形態で管理される。図19は、パケットデータがRAM1021に格納されている状態を示す概要図である。パケットテーブル(Packet Table)6001の構成要素は次の通りである。すなわち、それぞれテーブル(Table)の値に0を5ビット付加すると、パケットの先頭アドレス6002、パケットのバイトレングス(Byte Length)6005となる。
【0090】
Packet Address Pointer (27bit) + 5b00000 = Packet先頭Address
Packet  Length (11bit) + 5b00000 = PacketのByte Length
尚、パケットテーブル(Packet Table)6011は常に走査方向に並んでいる。すなわち、Y/X=000/000,000/001,000/002,…という順で並んでいる。このパケットテーブル(Packet Table)6001のエントリ(Entry)は一意に一つのタイル(Tile)を示す。また、Y/Xmaxの次のエントリ(Entry)はYn+1/Xとなる。
【0091】
ヘッダ情報3001内のリピートフラグ(Repeat Flag)3002がセットされているパケットが入力される場合は、そのパケットはメモリ(Memory)上には書かず、パケットテーブル(Packet Table)のエントリ(Entry)に1つめのエントリと同じパケットアドレスポインタ(Packet Address Pointer)、パケットレングス(Packet Length)を格納する。これにより、1つのパケットデータ(Packet Data)を2つのテーブルエントリ(Table Entry)が指すようにになる。この場合、2つ目のテーブルエントリ(Table Entry)のリピートフラグ(Repeat Flag)6003がセットされる。
【0092】
また、パケット(Packet)はメモリ中に離散的に格納することも可能である。その場合は、チェーンテーブル(Chain Table)を使ってパケットを管理する。また、パケットテーブル(Packet Table)は、パケットデータを途中で分断することも許容されている。
【0093】
パケット(Packet)が複数に分断された場合は、ディバイドフラグ(Divide Flag)6004をセットし、そのパケットの先頭部分が入っているチェーンブロック(Chain Block)のチェーンテーブル番号(Chain Table No.)6006をセットする。尚、パケットテーブル(Packet Table)6001とチェーンテーブル(Chain Table)6010は分割されないものとする。
【0094】
チェーンテーブル(Chain Table)6010のエントリ(Entry)は、チェーンブロックアドレス(Chain Block Address)6011とチェーンブロックレングス(Chain Block Length)6012とから成り、テーブル(Table)の最後のエントリ(Entry)にはアドレス(Address)、レングス(Length)共に0を格納しておく。
【0095】
尚、本実施形態に係る画像処理装置では、代替情報(第2の画像特性情報)が、画像データの前記所定単位ごとに設定されたヘッダ情報に含まれていてもよい。また、代替情報(第2の画像特性情報)が、当該画像データにおける画像特性情報の代表値であってもよい。
【0096】
[スキャナ用画像処理ブロックの概要説明]
次に、本実施形態におけるスキャナ用画像処理部について詳細に説明する。図20は、図12に示されるスキャナ用画像処理部1064の内部ブロックを示す図である。
【0097】
図20に示すように、スキャナ1002より入力された画像(R,G,B)は、入力I/F部7001で画像処理ブロックのクロック同期に周波数変換される。ここで、スキャナ1002が3ラインセンサである場合、RGB間でのライン間遅延が存在するので、その場合はライン間遅延補正部7002で各色のライン間の遅延が補正される。また、副走査オフセット補正部7003では、光学系の色収差等による副走査方向のオフセットの補正が行われる。
【0098】
画像特性判定部7004では、原稿の種類に基づいて画像データのエッジ検出等を行って、入力される画像の文字の有無や色の有無等を判定し、RGBの画像データとともに、特性情報を出力する。
【0099】
ガンマ補正部7005及び入力ダイレクトマッピング処理部7006は、スキャナ1002の入力特性に従って、画像データを補正し出力する。例えば、ガンマ補正部7005では各色毎にダイナミックレンジを補正し、ダイレクトマッピング処理部7006では、スキャナの色味を補正する。
【0100】
ダイレクトマッピング処理部7006より出力された画像は、MTF補正部7007と特定画像判定部7012に入力される。MTF補正部7007では、主走査方向の光学系の開口数や色収差の補正を行う演算処理が施される。特定画像判定部7012では、有価証券類等の法律上で印刷することを禁じられている画像データをパターンマッチング等により判別する。
【0101】
空間フィルタ処理部7008は、入力画像に対してエッジ強調やスムージング等の空間フィルタ処理を実施する。このフィルタ処理は、前述の画像特性判定部7012の判定結果に応じて適応的に行われる。例えば、入力画像が文字と判定された場合はエッジが強調され、写真等の連続階調画像と判定された場合はスムージングされる。
【0102】
ヒストグラム算出/ND変換部7009は、入力された画像のヒストグラムを求め、有彩色のRGB入力画像を無彩色のND画像に変換する。また、トリミング/マスキング部7010は、入力画像データの枠消しやブック枠消しといった印字画像領域の加工を行う。さらに、出力I/F部7011は、スキャナ用画像処理クロックからシステム・クロック同期へ、画像データ及び特性情報の周波数変換を行って出力する。
【0103】
[タイル圧縮部]
図2は、図13に示される本実施形態の画像処理装置のコントローラユニット1001におけるタイル圧縮部1047内部の詳細な構成を示すブロック図である。
【0104】
図2において、タイルバスインタフェース部201は、タイルバス1048とハンドシェイクを行い、タイルバス1048から入力されるヘッダ情報、画像データ及び画像特性情報を取得し、後段に接続された各処理ブロックへそれぞれのデータを出力する。
【0105】
また、タイルバスインタフェース部201では、タイルバス1048から送られてくるヘッダ情報の解析を行い、ヘッダ情報に矛盾がある場合は後述のレジスタ設定部206に矛盾内容に相当する割り込み信号を出力した後、不図示のリセット信号が入力されるまで動作を停止する。
【0106】
一方、ヘッダ情報に矛盾がない場合は、後段に接続されたヘッダ情報生成部202に対してヘッダ情報を出力した後、タイルバス1048から画像データと画像特性情報を取得して、ヘッダ情報のイメージタイプ(Image Type)3006に従って第1圧縮処理部203(本実施形態では、JPEG方式による圧縮処理を行う。)及び第2圧縮処理部204(本実施形態では、パックビッツ方式による圧縮処理を行う。)それぞれに画像データ又は画像特性情報を出力する。
【0107】
具体的には、ヘッダ情報におけるイメージタイプ(Image Type)の上位2ビットが1ビットの画像データを表す00bの場合に、第1圧縮処理部203は使用せずに画像データを第2圧縮処理部204へ出力する。
【0108】
また、イメージタイプ(Image Type)の上位2ビットが00b以外の場合、画像データを第1圧縮処理部203へ出力するとともに、画像特性情報を第2圧縮処理部204へ出力する。但し、Zタイプ(Z type)3020が0の場合は入力された画像特性情報は無効であるため、画像特性情報を第2圧縮処理部204に出力せず、第2圧縮処理部による圧縮処理は行わない。
【0109】
ヘッダ情報生成部202は、第1圧縮処理部203及び第2圧縮処理部204が画像データ及び画像特性情報の圧縮処理を行っている間、ヘッダ情報を生成する。また、ヘッダ情報生成部202は、格納したヘッダ情報の中から圧縮処理に必要な情報を第1圧縮処理部及び第2圧縮処理部に対して出力する。
【0110】
第1圧縮処理部203は、本実施形態では、JPEG圧縮を行うJPEG圧縮処理部を表す。第1圧縮処理部203は、画像データが複数ビット構成であった場合に画像データの圧縮処理を行う。また、第1圧縮処理部203では、入力された画像データを1タイル分格納するためのバッファを持ち、次のパケットの画像データが入力されるまで直前に処理したパケットの画像データを保持しておくことで、タイルバスインターフェイス部201から入力された画像データとバッファ内に格納された画像データの比較を行う。その比較結果は後述の画像リング出力部に送られ、リピートフラグ(Repeat Flag)3022を生成する際に参照される。
【0111】
尚、第1圧縮処理部203において圧縮処理が行われている際に動作の異常が検知された場合、第1圧縮処理部203は異常動作の内容に相当する割り込み信号をレジスタ設定部206に対して出力した後、不図示のリセット信号が入力されるまで動作を停止する。
【0112】
第2圧縮処理部204は、本実施形態では、情報ロスのない圧縮方式、具体的にはパックビッツ方式による圧縮処理を行う。第2圧縮処理部204ではタイル圧縮部に入力されたパケットの画像データが1ビット構成である場合は画像データを、画像特性情報が存在する(すなわち、Zタイプ3020が0でない)場合は、画像特性情報をパックビッツ方式による圧縮処理を行う。
【0113】
また、第1圧縮処理部203と同様に、第2圧縮処理部204でも、入力された画像特性情報を1パケット分格納するためのバッファを持ち、直前に入力された1ビット画像データ又は画像特性情報を保持しておくことにより、タイルバスインタフェース部201から入力された画像又は画像特性情報とバッファ内に格納されたデータの比較を行う。そして、その比較結果は後述の画像リング出力部に送られ、リピートフラグ(Repeat Flag)3022を生成する際に参照される。
【0114】
尚、第2圧縮処理部204において圧縮処理が行われている際に動作の異常が検知された場合、第2圧縮処理部204は異常動作の内容に相当する割り込み信号をレジスタ設定部206に対して出力した後、不図示のリセット信号が入力されるまで動作を停止する。
【0115】
画像リング出力部205は、ヘッダ情報生成部202、第1圧縮処理部203及び第2圧縮処理部204から処理情報、画像データ、画像特性情報を取得する。そして、ヘッダ情報に対して所定の値を設定した後、図16に示すデータパケットを生成して画像リングインタフェース2102に出力する。
【0116】
レジスタ設定部206は、タイル圧縮部2106内部の処理に関して設定を行う。ここで、タイル圧縮部1047に所定の圧縮処理を行わせるためには、レジスタ設定部206に所定の値を設定する必要がある。これらの設定は、コマンドパケットを用いてシステム制御部2150から画像処理部1041のコマンド処理部1045に送り、コマンド処理部1045からレジスタ設定バス1049を介してタイル圧縮部1047に送られることにより行われる。
【0117】
レジスタ設定部206に設定された値は、第1圧縮処理部203及び第2圧縮処理部204に送られ、両圧縮処理部はそれらの設定値を参照することにより決められた処理を行う。
【0118】
尚、レジスタ設定部206へはコマンドパケットを用いて値を設定するだけでなく、コマンドパケットを用いてレジスタ設定部206が保持している設定値をシステム制御部2150へ出力することも可能である。
【0119】
さらに、レジスタ設定部206はタイルバスインタフェース部201、第1圧縮処理部203及び第2圧縮処理部204から入力された割り込み信号に対応するレジスタを持ち、いずれかのブロックから割り込み信号が入力されると対応するレジスタの値をセットした後に、ステータス処理部1046に対して割り込みが発生したことを知らせるインタラプト信号及びいずれのブロックで割り込みが発生したかを表すステータス信号を出力する。
【0120】
レジスタ設定バスインタフェース部207は、レジスタ設定バス1049からタイル圧縮部1047に入力されたアドレス及び設定値を、レジスタ設定部206が受け取れるフォーマットに変換して送る。尚、レジスタ設定バスインタフェース部207は、レジスタ設定バス1049からレジスタ設定値を受け取るだけでなく、レジスタ設定バス1049が示したアドレスに対応する設定値をレジスタ設定部206から読み出してレジスタ設定バス1049に出力することも可能である。
【0121】
データ量カウント部208は、第1圧縮処理部203及び第2圧縮処理部204から画像リング出力部205に送られる画像データ及び画像特性情報のデータ量をカウントし、所定の値を超えた場合にヘッダ情報生成部202にフラグ信号を出力する。
【0122】
[第1圧縮処理部]
図1は、図2における第1圧縮処理部203の詳細な構成を示すブロック図である。尚、本実施形態では、画像データが8ビット構成、24ビット構成又は32ビット構成である場合、すなわち画像データが第1圧縮処理部203において圧縮処理される場合について説明する。
【0123】
図1において、第1のデータバッファ101は、タイルバスインタフェース部201から送られてきた画像データを格納し、所定量のデータが送られた場合は後段に接続されたJPEG圧縮部110に対して所定の順序に従って画像データを出力する。ここで、第1のデータバッファ101には、ヘッダ情報生成部202からヘッダ情報のイメージタイプ(Image Type)3006が入力されており、JPEG圧縮部110に出力する画像データの順序はイメージタイプ3006により制御される。
【0124】
以下に、イメージタイプ3006とJPEG圧縮部110に入力される画像データの順序について説明する。図3は、本実施形態で扱われる1タイル分の画像データの構成を説明するための概要図である。図3の画像データは、イメージタイプ(Image Type)3006の上位2ビットが01b、すなわち、タイルバスインタフェース部201から1画素の画像データを1成分8ビットで表している画像データが入力された場合の1タイル分の画像データであり、主副走査32画素×32画素の1024画素から成る画像データを表している。
【0125】
JPEG圧縮部110へ出力するために、まず、これらの画素をJPEG圧縮処理の処理単位である主副走査8画素×8画素の64画素を単位として、16のブロックに分割する。そして、ブロックごとにJPEG圧縮部110へ出力する。尚、図3では1画素の画像データを細線で、JPEG圧縮処理単位に分割したブロックを太線で示し、JPEG圧縮部110へ送られる順番に0から15までの番号を付している。
【0126】
図4は、図3の画像データ中の分割されたブロックの左上に位置するブロック0に含まれる画素を拡大した図である。図4に示すように、このブロック内には64画素の画像データがあり、各画素に対しては主走査方向、副走査方向に対してそれぞれ0から7まで番号を付して表している。
【0127】
図4に示すブロック内において、JPEG圧縮部110へ出力される順序は、矢印で示したように左上の(0,0)の画素データを始めとして主走査方向に(0,1)→(0,2)→…→(0,7)の順に行われる。そして、(0,7)の画素データの次は、副走査方向に1ライン移動して(1,0)→(1,1)→…→(1,7)と進み、これを繰り返して右下の(7,7)の画像データが出力されるとブロックの画像データの出力を終了する。尚、図3に示すブロック0の画像データが出力されると、次はブロック1の左上の(0,8)から上述したような順序で同様に画像データが出力される。
【0128】
図5は、本実施形態で扱われる1タイル分の画像データを説明するための第2の図である。図5では、イメージタイプ(Image Type)3006の上位2ビットが10b、すなわち、タイルバスインタフェース部201から1画素に対して8ビット3成分、計24ビットの画像データが入力された場合における1タイル分の画像データを表している。尚、図5では各画素については表さずに、JPEG圧縮処理単位である図3に示されるブロック単位で表示する。また、各画像データが画素ごとではなく、成分ごとに成分1、成分2及び成分3に分割して表示している。
【0129】
図6は、図5で示される画像データをJPEG圧縮部110に出力する順番を示した図である。尚、図6で示された各ブロック内において、画像データが出力される順序は図4を用いて上述した場合と同様である。本実施形態では、まず始めに、第1のデータバッファ101からブロック0の成分1の画像データが出力される。前記ブロック0の成分1の画像データが全て出力されると、次に、ブロック0の成分2の画像データが、続いてブロック0の成分3の画像データが出力され、これによって最初にブロック0の全ての画像データが出力される。
【0130】
ブロック0の画像データが全て出力されると、次はブロック1の成分1の画像データ、続いてブロック1の成分2→ブロック1の成分3→ブロック2の成分1→…と続く。そして、最後にブロック15の成分1→ブロック15の成分2→ブロック15の成分3の画像データを出力し終わったところで、1タイル分の画像データの出力を終了する。
【0131】
尚、イメージタイプ(ImageType)3006の上位2ビットが11b、すなわちタイルバスインタフェース部201から1画素に対して8ビット4成分、計32ビットの画像データが入力された場合も図5及び図6と同様である。すなわち、まず所定のブロックの各成分の画像データを成分1→成分2→成分3→成分4の順番に出力した後、次のブロックの画像データの出力に移る。
【0132】
このようにして、本実施形態では、1タイルの画像データは、主走査方向8画素×副走査方向8画素のブロックに分割されており、各ブロック単位でJPEG圧縮部110に入力されて圧縮処理される。また、各ブロックに画像データが複数(複数の成分を有する)存在する場合は、ブロック内の各成分の画像データを圧縮し、全ての成分に対して圧縮を行ってから次のブロックの圧縮を行う。
【0133】
上述したように、本実施形態では図1に示すように、JPEG圧縮部110では画像データのJPEG方式による圧縮が行われている。尚、JPEG圧縮部110内はさらに3つの処理ブロックが存在する。
【0134】
まず、DCT変換部102であり、データバッファ101から64個のデータが入力されると、入力されたデータに対して離散コサイン変換(DCT)を行って周波数成分に変換する。また、このとき離散コサイン変換によって生成されたDC成分値をラッチ信号とともに後述のサムネール生成部107に出力する。離散コサイン変換は64個のデータが入力される度に行われ、その都度サムネール生成部107にはラッチ信号とDC成分値が出力される。また、DCT変換部は、離散コサイン変換の演算中にエラーが発生した場合、レジスタ設定部206に対してエラー割り込み信号を出力する。
【0135】
次に、量子化部103は、DCT変換部102から出力された周波数成分に対して所定の量子化値を用いて量子化を行って量子化データを生成する。尚、量子化値は後述する量子化テーブルから入力され、使用される量子化値はヘッダ情報生成部202からヘッダ情報を解析することにより決定される。量子化部103は、量子化を行った結果が所定の値以外の値になった場合、レジスタ設定部206に対してエラー割り込み信号を出力する。
【0136】
さらに、ハフマン符号化部104は、量子化部103から出力された量子化データに対して所定の符号化を行い符号化データを生成し、第2のデータバッファ105に出力する。また、ハフマン符号化部104は、符号化が不可能なデータが入力されると、レジスタ設定部206に対してエラー割り込み信号を出力する。
【0137】
第2のデータバッファ105は、ハフマン符号化部104で符号化した符号化データを格納するためのバッファであり、ハフマン符号化部104から1タイル分の符号化データを取得した場合、当該バッファ内に格納した符号化データの容量をデータバイトレングス1(Data Byte Length 1)として画像リング出力部205に対して出力する。また、第2のデータバッファ105は、画像リング出力部205の要求に従って、バッファ内に格納した符号化データを画像リング出力部205に対して出力する。
【0138】
データ比較部106は、タイルバスインタフェース部201から入力された画像データと第1のデータバッファ101に格納された画像データとを比較する。この際、データ比較部106は、タイルバスインタフェース部201から送られた画像データが第1のデータバッファ101に格納されると同時に、当該画像データが格納された部分に格納されていた画像データとの比較を行う。
【0139】
すなわち、第1のデータバッファ101にはタイルバスインタフェース部201から入力されるタイルの1つ前に第1の圧縮処理部203に送られた画像データが格納されている。ここで、上記動作によりデータ比較部106では、タイルバスインタフェース部201から送られてくる画像データと、第1の圧縮処理部203に送られた1つ前のタイルの画像データとの比較が行われる。
【0140】
そして、データ比較部106により1タイル分の画像データの比較が終了すると、データ比較部106から画像リング出力部206に対して比較結果(Compare result 1)が出力される。
【0141】
一方、サムネール生成部107は、DCT変換部102から出力されるラッチ信号に同期してDC成分値を取得し、演算及び正規化を行うことによってタイルごとにサムネール値を生成して、画像リング出力部205に出力する。尚、サムネール生成部107には、ヘッダ情報生成部202からイメージタイプ(Image Type)3006が入力されている。そこで、サムネール生成部107は、イメージタイプ(Image Type)3006を参照することにより、DCT変換部102から送られてくるDC成分値の順序を検知して、成分ごとにサムネール値を生成する。
【0142】
生成されたサムネール値は画像リング出力部205に出力され、画像リング出力部205において、ヘッダ情報生成部202から取得したヘッダ情報のサムネールデータ(thumbnail Data)3021の部分に所定のフォーマットで格納される。その後、第1圧縮処理部203で圧縮された画像データ及び第2圧縮処理部204で圧縮された画像特性情報とともに、データパケットとして画像リングインタフェース2104に出力される。
【0143】
量子化テーブル部109は、量子化部103において量子化を行うための量子化値を格納している。本実施形態における量子化テーブル部109には複数の量子化テーブルが格納されており、後述する量子化テーブル選択部108から入力される選択信号によって所定の量子化テーブルを選択して量子化部103に量子化値を出力する。
【0144】
量子化テーブル選択部108は、量子化テーブル部109に対して量子化テーブル選択信号を出力することによって、量子化テーブル部109に格納されている複数の量子化テーブルの中から所定の量子化テーブルを選択させる。
【0145】
量子化テーブル選択部108には、ヘッダ情報生成部202からイメージタイプ(Image Type)3006、モード(Mode)3025、キャラフラグ(Char−flag)3029、Qテーブルセル(Q−Table Sel)3030が入力されており、量子化テーブル選択部108はこれらのヘッダ情報から使用する量子化テーブルを決定する。使用する量子化テーブルが決まると、量子化テーブル選択部109は、決めた量子化テーブルを選択するように量子化テーブル選択信号を量子化テーブル部109に出力するとともに、選択した量子化テーブルを表すQテーブルID(Q−Table ID)を画像リング出力部205に出力する。
【0146】
[第2圧縮処理部]
図7は、図2に示される本実施形態における第2圧縮処理部204の詳細な構成を示すブロック図である。図7において、第1のデータバッファ701は、タイルバスインタフェース部201から送られてくる画像特性情報を格納するためのバッファであり、所定量のデータが送られると後段に接続されたパックビッツ圧縮部702に対して所定の順序に従ってデータを出力する。また、パックビッツ圧縮部702は、第1のデータバッファ701に格納された画像特性情報に対してパックビッツ方式の圧縮を行う。
【0147】
第2のデータバッファ703は、パックビッツ圧縮部702で圧縮した圧縮データを格納するためのバッファであり、パックビッツ圧縮部702から1タイル分の圧縮データを取得すると、当該バッファ内に格納したデータの容量をデータバイトレングス(Data Byte Length 2)として画像リング出力部205に対して出力する。また、第2のデータバッファ703は、画像リング出力部205の要求に従って当該バッファ内に格納した圧縮データを画像リング出力部205に対して出力する。
【0148】
データ比較部704は、タイルバスインタフェース部201から入力された画像データと第1のデータバッファ701に格納されたデータとを比較する。すなわち、タイルバスインタフェース部201から送られたデータは第1のデータバッファ701に格納されると同時に、第1のデータバッファ701に格納されていたデータとの比較がデータ比較部704で行われる。
【0149】
この際、第1のデータバッファ701にはタイルバスインタフェース部201から入力されるタイルの1つ前に第2の圧縮処理部204に送られた画像特性情報が格納されているため、上記動作によりデータ比較部106では、タイルバスインタフェース部201から送られてくる画像特性情報と、第2の圧縮処理部204において1つ前のタイルの画像特性情報との比較が行われる。
【0150】
データ比較部704により1タイル分の画像特性情報の比較が終了すると、データ比較部704から画像リング出力部206に対して比較結果(Compare result 2)が出力される。
【0151】
[データ量カウントによる画像特性情報の制御]
次に、図2に詳細なブロック図が示されているタイル圧縮部1047の動作手順について説明する。図8は、本実施形態に係るタイル圧縮部1047のデータカウント処理に関する動作を説明するためのフローチャートである。
【0152】
まず、タイル圧縮部1047において圧縮処理が開始されるとデータカウンタ値(DataCount)は0にセットされる(ステップS801)。次に、第1圧縮処理部203及び第2圧縮処理部204において圧縮処理が完了すると、データ量カウント部208にそれぞれの圧縮データ量(Data Byte Length1、Data Byte Length2)が出力され、それらをデータカウンタ値(DataCount)に加算する(ステップS802)。
【0153】
次に、データカウンタ値(DataCount)とあらかじめ設定されたリミット値toを比較する(ステップS803)。その結果、データカウンタ値がリミット値を超えていると判断された場合(Yes)、第2のデータバッファ703からの画像特性情報の送信を停止する(ステップS804)。そして、ヘッダ情報生成部202とレジスタ設定部206にコンプレスフェイル(Compress Fail)信号を出力し、データ量がオーバーしたことを通知する(ステップS805)。
【0154】
レジスタ設定部206は、コンプレスフェイル(Compress Fail)信号を受けるとステータス処理部1046へ割り込み信号を出力する。CPU1006は、ステータス処理部1046からのインタラプトパケットを受け取り、割り込みの発生要因がデータ量カウント部208であると判断した場合、その画像データに対応するページのページ情報にデータ量がオーバーしたことを登録する。
【0155】
続いて、データ量カウント部208は、Data Byte Length2を0に設定し、画像リング出力部205に出力する(ステップS806)。また、ヘッダ情報生成部202では、第2圧縮処理部における第1のデータバッファ701に格納されたデータの先頭画素のデータ値を参照し、送信停止した画像特性情報の代替値をZダミー(Zdummy)3033にセットする(ステップS807)。
【0156】
一方、ステップS803においてデータカウンタ値がリミット値を超えていないと判断された場合(No)、第2のデータバッファ703に保存されている画像特性情報及びData Byte Length2をそのまま画像リング出力部205に出力する(ステップS808)。
【0157】
そして、ステップS807又はステップS808の処理の後、データ量カウント部208は、第2のデータバッファ105に保存されている画像データ及びData Byte Length1をそのまま画像リング出力部205に送信する(ステップS809)。さらに、最後に1ページの処理が終了したか判断する(ステップS810)。その結果、まだ終了していない場合(No)、ステップS802に戻って前述の処理を繰り返す。一方、1ページの処理が終了したと判断された場合(Yes)、データカウント処理を終了する。
【0158】
以上のように、圧縮処理を行った際に画像データが一定量を超えないように制御して、画像データの再読み込みの発生を抑えるとともに、欠落した画像特性情報を補うことで画像劣化の極力少ない画像処理を実施することが可能である。
【0159】
[画像特性情報の概要説明]
図9は、プリンタ用画像処理部1061に供給する画像特性情報の一例を示す図である。本実施形態では、画像特性情報は画像データの供給元(入力ソース)によって内容の異なる4ビットのデータで構成される。図9においては、入力ソースがLANを経由してホストから転送されてくるPDLデータ等の場合の画像属性情報を入力ソース0で表し、入力ソースがスキャナから読み込まれたスキャン画像データに対する画像属性情報を入力ソース1で表している。
【0160】
入力ソース0の場合の画像特性情報において、bit0は各画像データがラスタ画像であるかフォントデータであるのか等のデータタイプの種類を識別するための情報(画像タイプ情報)である。また、bit1は文字データか写真データかどうかを識別する画像タイプを表す情報(画像タイプ識別情報)である。さらに、bit2はグレースケールデータかカラーデータかを識別するための色判定結果を表す情報(色識別情報)である。尚、bit3は空きビットである。
【0161】
一方、入力ソース1の場合の画像特性情報において、bit0は2つ或いはそれ以上のページを1枚の用紙に印刷する時等に結合前のページを識別するための面情報である。また、bit1は各画像データが写真等の連続階調のデータであるのか、或いはスクリーンやディザマトリクスに代表される面積階調で形成された画像データであるのかを識別するための画像タイプを表す画像タイプ識別情報である。さらに、bit2は各画像データが文字領域のデータかどうかを識別するための画像タイプを表す情報である。さらにまた、bit3はプリンタエンジンの動作モードを識別する情報である。
【0162】
本実施形態におけるbit0のように、画像特性情報の中に、レイアウトに関する領域情報を盛り込んでおくことにより、複数ページの製本処理を行う時にページ毎の画像処理設定が独立に設定できるという効果が得られる。
【0163】
尚、各画像の入力ソースタイプは、図13に示される外部記憶装置1035(例えば、ハードディスク)に記憶されており、プリント開始時にCPU1006によって当該ハードディスク上から読み出され、各タイプに応じた画像処理が施される。
【0164】
上述したように、本実施形態に係る画像処理装置では、複数ページの画像データを1ページに結合して印刷する際の結合前のページを設定するための代替情報(第2の画像特性情報)を指定して、プリンタ1003による画像データの画像形成時等に、伸長された画像データの画像特性情報として、当該代替情報(第2の画像特性情報)を付加することも可能である。
【0165】
[画像特性情報置換部の概要説明]
図10は、本実施形態における画像特性情報置換部1058の細部構成を示すブロック図である。図10において、10001はタイルバスインタフェース部、10002はレジスタ設定バスインタフェース部、10003はデータ置換部である。
【0166】
図11は、本実施形態における画像特性情報置換部1058の動作手順を説明するためのフローチャートである。まず、本実施形態では、ページ処理動作に入る前に予め画像特性情報置換部1058の動作モードを設定する(ステップS11001)。次に、ページ処理開始時に設定された動作モードを確認する(ステップS11002)。
【0167】
その結果、動作モードが画像特性情報置換を優先する優先モードに設定されている場合(Yes)、レジスタ設定バスインタフェース10002内に用意された画像特性情報の置換方法の選択用レジスタZselをセットする。また、レジスタ設定バスインタフェース10002内部に用意された、画像特性情報をビット毎に固定するためのレジスタZfixに対して、ビット毎に固定したい値をセットする(ステップS11003)。
【0168】
一方、動作モードがデータ圧縮部で設定された画像特性情報を優先する場合(No)、動作モードZselをリセットする(ステップS11004)。
【0169】
ステップS11003、S11004の処理の後、ページ処理が開始される(ステップS11005)。これにより、タイルバス1048から画像特性情報置換部1058へ画像が入力され、タイルバスインタフェース10001より画像特性情報とヘッダ情報のZダミー(Zdummy)及びコンプレスフェイル(Compress
Fail)フラグが取り出され、データ置換部10003へ出力される。
【0170】
また、Zselがリセットされている場合、データ置換部10003では、コンプレスフェイル(Compress Fail)フラグを参照し、コンプレスフェイルがセットされていた場合は、画像特性情報にZダミー(Zdummy)の値をセットし、タイルバスインタフェース10001へ転送する。
【0171】
タイルバスインタフェース10001は、データ置換部10003から返送されてきたコンプレスフェイル(CompressFail)フラグを参照し、コンプレスフラグ(Compress Flag)がセットされていた場合は、画像特性情報を入力画像データとマージし、ヘッダ情報のData Byte Length2にデータ長をセットする。そしてタイルバス1048を経由して画像出力インタフェース1052へと画像データを転送し、さらにプリンタ用画像処理部1061へと転送される。
【0172】
このようにすることによって、データ圧縮時にデータ量オーバーによる画像特性情報の欠落が発生しても、プリンタ用画像処理部1061へパケット単位の画像特性情報を再生成して転送することが可能になり、画像特性に応じた画像処理を実行することができる。
【0173】
一方、ステップS1102において、Zselがリセットされているシーケンスでは、画像特性情報がページの途中からZダミー(Zdummy)への置換が実行されることもあり、ページ途中の画像処理の切り替わりによる不連続性が、出力画像に好ましくない影響を与える可能性がある。そのような場合は、Zselをセットした処理を実施する。そして、Zselがセットされている場合は、CPU1006がデータ転送時に記憶されたページ情報からデータ量オーバーを起こしたパケットが含まれているかどうかを確認する。そして、含まれている場合はデータ量オーバーがセットされているページの先頭からコンプレスフェイル(Compres Fail)フラグに関係なく、パケット単位の画像特性情報の置換を行うようにする。この場合、データ置換部10003において、画像特性情報はZダミー(Zdummy)ではなくZfixに置換される。
【0174】
尚、前述の置換処理は、ページ内のパケットが全て転送されるまで繰り返し実行される(ステップS11006)。
【0175】
以上説明した通り、本実施形態のようなデータ置換部10003を備えることにより、好ましい画像を出力することが可能になる。また、上記Zsel及びZfixの設定は、ユーザモード等を設けてユーザに開放することにより、ユーザ自身ががどの画像特性を優先するかを任意に設定できるようにしてもよい。これによって、ユーザが最も好ましい画像出力を得ることが可能になる。
【0176】
すなわち、上述した本実施形態に係る画像処理装置では、ユーザが指定可能な代替情報(第2の画像特性情報)を記憶しておき、画像特性情報置換部1058で設定される新たな画像特性情報として、記憶された代替情報を用いる動作モード、又は、画像データの所定単位毎に設定されたヘッダ情報に含まれる代替情報(第3の画像特性情報)を用いる動作モードのいずれかの動作モードを指定するようにしてもよい。
【0177】
[プリンタ用画像処理部の概要説明]
次に、本発明の一実施形態におけるプリンタ用画像処理部1061について詳細に説明する。図21は、本実施形態に係るプリンタ用画像処理部1061の細部構成を示すブロック図である。図13等に示される画像処理部1041より出力された画像データRGBやCMYKは、プリンタ用画像処理部1061内のプリンタ画像処理部8001、8002にそれぞれ入力される。プリンタ画像処理部8001、8002は、内部にそれぞれ2色分の画像処理ブロックを備えており、各色毎にプリンタエンジンを備えるタンデムエンジンプリンタ(プリンタ1003)からの画像要求に応じて、それぞれのブロックが各プリンタエンジンに同期して動作できるようになっている。
【0178】
図22は、プリンタ画像処理部8001、8002内の細部構成を示すブロック図である。図22に示すように内部は大きく2系統に分かれており、2色分のプリンタエンジンに対応した画像データを生成する。
【0179】
図22において、9001、9002は入力I/F部であり、システムより入力される画像データをプリント画像処理クロック同期に周波数変換する。また、9003、9004は下地除去及びND変換部であり、画像特性情報に応じて、入力画像データの背景色を飛ばしたり、RGBの有彩色データを無彩色のNDデータに変換する。
【0180】
9005、9006は輝度濃度変換部であり、画像特性情報に応じて入力データの輝度濃度変換を行う。また、9007、9008はダイレクトマッピング処理部であり、画像特性情報に応じてRGB入力データをプリンタエンジンのC/M/Y/Kの各色成分への変換を行う。さらに、9009、9010は出力色選択部である。
【0181】
9011、9012は色バランス補正部であり、画像特性情報に応じて出力画像の色味の微調整等を行う。また、9013〜9018は出力ガンマ補正部であり、出力される画像のダイナミックレンジやトーンカーブの補正を行う。尚、本実施形態では、1色につきA〜Cの3種類のガンマ補正を同時に行って出力する。
【0182】
9019〜9024は中間調処理部であり、画像データを量子化して出力画像の階調変換を行う。本実施形態では、プリント画像処理部8001、8002への入力8ビットデータを4ビットデータに変換する。尚、中間調処理方法としては、一般にスクリーン処理や誤差拡散処理等が広く知られているが、本実施形態では各色とも任意の3種類の中間調処理を行うものとする。
【0183】
9025、9026は中間調処理選択部であり、前述の3種類の中間調処理部で処理された出力画像を画像特性情報に応じて最適な処理結果を選択するようになっている。また、9027、9028はスムージング処理部であり、画像特性情報に応じて文字エッジ等のがたつきを軽減するパターンマッチング処理を行う。
【0184】
9029、9030は特定情報付加部であり、出力画像データ中に出力機器を特定できるような画像情報を重畳する処理を行う。また、9031は出力選択部であり、前述の2系統の画像処理部で処理されたデータをどちらのプリンタエンジンに出力するかを切り替えることができるようになっている。
【0185】
9032、9034はドラム間遅延制御部、9033、9035はドラム間遅延メモリである。前述の入力I/F部9001、9002から出力色選択部9009、9010までの処理により、図12における画像処理部1041から出力された画像データが同時刻に4つの画像処理部で処理されている。また、ドラム間遅延制御部9032、9034は、画像処理部1041から出力され、プリント用画像処理部1061で処理された画像データを、プリンタ1003からの出力要求があるまでドラム間遅延メモリ9033、9035に蓄積する。このようにすることによって、各プリンタエンジン(プリンタ1003)に同期して画像データを出力することができる。
【0186】
尚、9036、9037は出力I/F部であり、プリンタI/Fクロックに同期して画像を出力するための周波数変換を行う。
【0187】
上述した本実施形態では、タンデムエンジンのプリンタに対応するプリント用画像処理部1061について説明したが、本発明の適用範囲は上述した実施形態だけに限定されるものではない。例えば、シングルエンジン用の画像処理部の構成でも構わないし、1つの画像処理部に4色分の画像処理ブロックを備えていても構わない。
【0188】
尚、本発明は、複数の機器(例えば、ホストコンピュータ、インタフェース機器、リーダ、プリンタ等)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置等)に適用してもよい。
【0189】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0190】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0191】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【0192】
【発明の効果】
以上説明したように、本発明によれば、動作モードに応じて適正な画像特性情報を提供することができ、付加する画像特性情報の優先度を任意に切り替えて、より好ましい画像処理を実現することができる。
【図面の簡単な説明】
【図1】図2に示される本実施形態における第1圧縮処理部203の詳細な構成を示すブロック図である。
【図2】図13に示される本実施形態の画像処理装置のコントローラユニット1001におけるタイル圧縮部1047内部の詳細な構成を示すブロック図である。
【図3】本実施形態で扱われる1タイル分の画像データの構成を説明するための概要図である。
【図4】図3の画像データ中の分割されたブロックの左上に位置するブロック0に含まれる画素を拡大した図である。
【図5】本実施形態で扱われる1タイル分の画像データを説明するための第2の図である。
【図6】図5で示される画像データをJPEG圧縮部110に出力する順番を示した図である。
【図7】図2に示される本実施形態における第2圧縮処理部204の詳細な構成を示すブロック図である。
【図8】本実施形態に係るタイル圧縮部1047のデータカウント処理に関する動作を説明するためのフローチャートである。
【図9】プリンタ用画像処理部1061に供給する画像特性情報の一例を示す図である。
【図10】本実施形態における画像特性情報置換部1058の細部構成を示すブロック図である。
【図11】本実施形態における画像特性情報置換部1058の動作手順を説明するためのフローチャートである。
【図12】本発明の一実施形態に係る画像処理装置を備えたネットワークシステム全体の構成図である。
【図13】本発明の一実施形態に係る画像処理装置の全体の構成図である。
【図14】コントローラユニット1001内のシステム制御部2150の細部構成を示す構成図である。
【図15】コントローラユニット1001内の画像処理部1041の細部構成を示す構成図である。
【図16】同実施形態で使用されるデータパケットの構造の概要を示す図である。
【図17】同実施形態で使用されるコマンドパケットの構造の概要を示す図である。
【図18】同実施形態で使用されるインタラプトパケットの構造の概要を示す図である。
【図19】パケットデータがRAM1021に格納されている状態を示す概要図である。
【図20】図12に示されるスキャナ用画像処理部1064の内部ブロックを示す図である。
【図21】同実施形態に係るプリンタ用画像処理部1061の細部構成を示すブロック図である。
【図22】プリンタ画像処理部8001、8002内の細部構成を示すブロック図である。
【符号の説明】
201 タイルバスインタフェース部
202 ヘッダ情報生成部
203 第1圧縮処理部
204 第2圧縮処理部
205 画像リング出力部
206 レジスタ設定部
207 レジスタ設定バスインタフェース部
208 データ量カウント部
1001 コントロールユニット
1002 スキャナ
1003 プリンタ
1021 RAM
1032 UI
1041 画像処理部
1044 タイル伸長部
1047 タイル圧縮部
1048 タイルバス
1058 画像特性情報置換部
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an image processing method for suitably compensating for missing image characteristic information.
[0002]
[Prior art]
2. Description of the Related Art Conventionally, an image processing apparatus including an image data compression device that compresses image data read from an image input device and a data storage device that stores image data compressed by the image data compression device is known.
[0003]
Among such image processing apparatuses, in an image processing apparatus that performs image compression of a variable length code, the amount of image data transmitted from the image data compression apparatus exceeds the storage capacity of a data storage apparatus that stores image data. In such a case, it is necessary to re-input the image again and re-compress the image at a higher compression ratio than the previous time. Alternatively, the data amount of the image data transmitted from the image data compression device is counted, and when the amount of transmitted image data exceeds a certain value, the transmission of the image characteristic information is stopped, whereby the data storage device is stopped. In order to avoid exceeding the storage capacity, and to avoid re-inputting of images. However, if the transmission of the image characteristic information is stopped, the image characteristic information is lost, so that the image processing inside the image processing apparatus and the corrected image processing at the time of printing are not optimally performed, and a desired image processing result is not obtained. Could not be obtained.
[0004]
For this reason, there has been an image processing system that compensates for missing image characteristic information by adding alternative information as header information when transferring image data.
[0005]
[Problems to be solved by the invention]
However, simply adding alternative information (image characteristic information) at the time of image data compression determines the alternative information in the unit of data transfer of the image data compression device. There is a concern that the switching of the alternative information within the page will occur and image quality will deteriorate. In addition, there is a concern that the user may not be able to determine one alternative information value to be set depending on the user's preference.
[0006]
The present invention has been made in view of such circumstances, and can provide appropriate image characteristic information according to an operation mode, and can arbitrarily switch the priority of image characteristic information to be added. An object of the present invention is to provide an image processing method capable of realizing preferable image processing.
[0007]
[Means for Solving the Problems]
In order to solve this problem, the present invention is characterized by the following configuration according to an embodiment described later.
[0008]
[Invention 1] a dividing step of dividing image data including first image characteristic information for each predetermined unit, for each predetermined unit;
A compression step of compressing the divided image data of each predetermined unit; and, when the compressed image data is equal to or less than a predetermined amount, storing the image data including the first image characteristic information in a storage device and compressing the image data. Storing the image data excluding the first image characteristic information in the storage device when the image data obtained is equal to or more than a predetermined amount;
A decompression step of decompressing the compressed image data stored in the storage device,
A designation step of designating second image characteristic information; and, when printing the image data, the second image characteristic information as image characteristic information of image data expanded without including the first image characteristic information. A replacement process to be set;
A printing step of printing the decompressed image data;
An image processing method comprising:
[0009]
[Invention 2] The image processing method according to Invention 1, wherein the second image characteristic information is included in header information set for each of the predetermined units of the image data.
[0010]
[Invention 3] The image processing method according to Invention 2, wherein the second image characteristic information is a representative value of the image characteristic information in the image data.
[0011]
[Invention 4] A counting step of counting the data amount of the image data stored in the storage device, a determining step of determining whether or not the counted data amount of the image data exceeds a predetermined amount; Any one of inventions 1 to 3, further comprising: stopping the storage of the first image characteristic information in the storage device when it is determined that the data amount of the first image characteristic exceeds a predetermined amount. Item 2. The image processing method according to Item 1.
[0012]
[Invention 5] The image processing method according to Invention 4, further comprising a flag output step of outputting a flag indicating that the data amount of the compressed image data exceeds a predetermined amount.
[0013]
[Invention 6] An image processing method in an image processing apparatus including an image characteristic information storage device that stores second image characteristic information,
A dividing step of dividing image data including the first image characteristic information for each predetermined unit, for each predetermined unit;
A compression step of compressing the divided image data of each predetermined unit;
When the compressed image data is equal to or less than a predetermined amount, the image data including the first image characteristic information is stored in a storage device, and when the compressed image data is equal to or more than a predetermined amount, the first image characteristic information is stored. A storage step of storing image data excluding the above in the storage device,
A decompression step of decompressing the compressed image data stored in the storage device,
A replacement step of setting new image characteristic information as image characteristic information of image data expanded without including the first image characteristic information when the image data is printed;
As the new image characteristic information, an operation mode using the second image characteristic information stored in the image characteristic information storage device, or a second mode included in the header information set for each of the predetermined units of the image data. A designating step of designating any one of the operation modes using the image characteristic information of (3);
A printing step of printing the decompressed image data;
An image processing method comprising:
[0014]
[Invention 7] a dividing step of dividing image data including the first image characteristic information for each predetermined unit, for each of the predetermined units;
A compression step of compressing the divided image data of each predetermined unit;
A storage step of storing the compressed image data in a storage device,
A decompression step of decompressing the compressed image data stored in the storage device,
A designation step of designating second image characteristic information for setting a page before combination when combining and printing a plurality of pages of image data into one page;
A replacement step of setting the second image characteristic information as image characteristic information of the decompressed image data when printing the image data;
A printing step of printing the decompressed image data;
An image processing method comprising:
[0015]
[Invention 8] The second image characteristic information is:
Data type identification information for identifying types of data types including raster image and font data,
Image type identification information for identifying whether the data is character data or photo data,
Color identification information to identify whether the data is grayscale data or color data
The image processing method according to invention 7, comprising:
[0016]
[Invention 9] The second image characteristic information is:
Surface information for identifying pages before combining when printing image data of a plurality of pages on one sheet of paper;
Image type identification information for identifying whether each image data is continuous tone data or image data formed in area tone,
Information for identifying an operation mode of the printing unit;
The image processing method according to invention 7, comprising:
[0017]
[Invention 10] Input means for inputting image data including first image characteristic information for each predetermined unit,
Division means for dividing the image data input by the input means for each of the predetermined units;
Compression means for compressing the image data of each predetermined unit divided by the division means,
Storage means for storing the compressed image data, and when the compressed image data is equal to or more than a predetermined amount, storing the image data excluding the first image characteristic information;
Decompression means for decompressing the compressed image data stored in the storage means,
Output means for outputting the decompressed image data,
Designation means for designating second image characteristic information;
A replacement unit that sets the second image characteristic information as image characteristic information of image data expanded without including the first image characteristic information when the image data is output by the output unit;
An image processing apparatus comprising:
[0018]
[Invention 11] The image processing apparatus according to Invention 10, wherein the second image characteristic information is included in header information set for each of the predetermined units of the image data.
[0019]
[Invention 12] The image processing apparatus according to Invention 11, wherein the second image characteristic information is a representative value of the image characteristic information in the image data.
[0020]
[Invention 13] Counting means for counting the amount of image data stored in the storage means,
Determining means for determining whether the data amount of the image data counted by the counting means has exceeded a predetermined amount,
The invention further comprising stopping means for stopping the storage of the first image characteristic information in the storage means when the determination means determines that the data amount of the image data exceeds a predetermined amount. The image processing device according to any one of items 10 to 12.
[0021]
[Invention 14] The image processing apparatus according to Invention 13, further comprising a flag output unit that outputs a flag indicating that the data amount of the compressed image data exceeds a predetermined amount.
[0022]
[Invention 15] Input means for inputting image data including first image characteristic information for each predetermined unit,
Division means for dividing the image data input by the input means for each of the predetermined units;
Compression means for compressing the image data of each predetermined unit divided by the division means,
Storage means for storing the compressed image data, and when the compressed image data is equal to or more than a predetermined amount, storing the image data excluding the first image characteristic information;
Decompression means for decompressing the compressed image data stored in the storage means,
Output means for outputting the decompressed image data,
A replacement unit that sets new image characteristic information as image characteristic information of image data expanded without including the first image characteristic information when the image data is output by the output unit;
Image characteristic information storage means for storing second image characteristic information;
As the new image characteristic information set by the replacement unit, an operation mode using the second image characteristic information stored in the image characteristic information storage unit, or set for each of the predetermined units of the image data Designating means for designating one of the operation modes using the third image characteristic information included in the header information
An image processing apparatus comprising:
[0023]
[Invention 16] The image processing apparatus according to any one of Inventions 10 to 15, wherein the output unit is an image forming apparatus that forms the image data on a medium.
[0024]
[Invention 17] The image according to any one of Inventions 10 to 16, wherein the input unit is an image reading apparatus that inputs an image formed on a document and generates the image data. Processing equipment.
[0025]
[Invention 18] Input means for inputting image data including first image characteristic information for each predetermined unit,
Division means for dividing the image data input by the input means for each of the predetermined units;
Compression means for compressing the image data of each predetermined unit divided by the division means,
Storage means for storing the compressed image data;
Decompression means for decompressing the compressed image data stored in the storage means,
Printing means for printing the decompressed image data,
Specifying means for specifying second image characteristic information for setting a page before combining when combining a plurality of pages of image data into one page and printing;
A replacement unit that sets the second image characteristic information as image characteristic information of the decompressed image data when the image data is output by the output unit.
An image processing apparatus comprising:
[0026]
[Invention 19] The second image characteristic information is:
Data type identification information for identifying types of data types including raster image and font data,
Image type identification information for identifying whether the data is character data or photo data,
Color identification information to identify whether the data is grayscale data or color data
The image processing apparatus according to invention 18, comprising:
[0027]
[Invention 20] The second image characteristic information is:
Surface information for identifying pages before combining when printing image data of a plurality of pages on one sheet of paper;
Image type identification information for identifying whether each image data is continuous tone data or image data formed in area tone,
Information for identifying an operation mode of the printing unit;
The image processing apparatus according to invention 18, comprising:
[0028]
[Invention 21] In a computer,
A division procedure of dividing image data including first image characteristic information for each predetermined unit, for each of the predetermined units;
A compression procedure of compressing the divided image data of each predetermined unit;
When the compressed image data is equal to or less than a predetermined amount, the image data including the first image characteristic information is stored in a storage device, and when the compressed image data is equal to or more than a predetermined amount, the first image characteristic information is stored. A storage procedure for storing the image data except for in the storage device,
A decompression procedure for decompressing the compressed image data stored in the storage device,
A designation procedure for designating second image characteristic information;
When outputting the image data, a replacing step of setting the second image characteristic information as image characteristic information of image data expanded without including the first image characteristic information;
An output procedure for outputting the decompressed image data;
The program to execute.
[0029]
[Invention 22] A computer-readable recording medium storing the program according to Invention 21.
[0030]
The reason for the configuration of the present invention will be apparent from the following description.
[0031]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, an image processing apparatus that executes an image processing method according to an embodiment of the present invention will be described in detail with reference to the drawings.
[0032]
[Overview of Network System]
FIG. 12 is a configuration diagram of an entire network system including an image processing apparatus according to an embodiment of the present invention. Referring to FIG. 12, an image processing apparatus 2001 according to an embodiment of the present invention includes a scanner and a printer as components, and transmits an image read from the scanner to a local area network (LAN) 2002 or receives an image from the LAN 2002. The printed image can be printed out by the printer. Further, an image read from the scanner can be transmitted to the PSTN or ISDN 2003 by a facsimile transmission device (not shown), or an image received from the PSTN or ISDN 2003 can be printed out by a printer.
[0033]
The database server 2004 manages the binary image and the multivalued image read by the image processing apparatus 2001 as a database. The database client 2005 is a client-side device for the database server 2004, and can browse / search image data stored in the database 2004.
[0034]
The e-mail server 2006 can receive the image read by the image processing device 2001 as an attached file of the e-mail. The e-mail client 2007 can receive and browse the e-mail received by the e-mail server 2006, and can transmit the e-mail. The WWW server 2008 is a WWW server for providing an HTML document to a LAN. The image processing apparatus 2001 can print out the HTML document provided from the WWW server 2008.
[0035]
The router 2009 connects the LAN 2002 with the Internet / intranet 2010. On the Internet / intranet 2010, the above-described database server 2004, WWW server 2008, e-mail server 2006, and apparatuses similar to the image processing apparatus 2001 according to the present embodiment are respectively connected to the database server 2011, the WWW server 2012, the e-mail server 2013, The image processing device 2000 is connected. On the other hand, the image processing apparatus 2001 according to the present embodiment is capable of transmitting and receiving to and from the facsimile apparatus 2014 via the PSTN or ISDN 2003. Further, a printer 2015 is connected to the LAN 2002 so that an image read by the image processing apparatus 2001 according to the present embodiment can be printed out.
[0036]
[Overview of Image Processing Apparatus 2001]
FIG. 13 is an overall configuration diagram of an image processing apparatus according to an embodiment of the present invention. In FIG. 13, a controller unit (Controller Unit) 1001 is connected to a scanner (Scanner) 1002 as an image input device and a printer (Printer) 1003 as an image output device, and is also connected to a LAN 1004 and a public line (WAN) 1005. This is a controller for inputting / outputting image information and device information and developing an image of PDL data.
[0037]
[Overview of system control unit]
FIG. 14 is a configuration diagram showing a detailed configuration of the system control unit 2150 in the controller unit 1001. In FIG. 14, a CPU 1006 is a processor for controlling the entire system. In the present embodiment, an example in which two CPUs are used is shown. These two CPUs 1006 are connected to a common CPU bus 1007 and further to a system bus bridge 1008.
[0038]
A system bus bridge 1008 is a bus switch, and is connected to a CPU bus 1007, a RAM controller 1009, a ROM controller 1010, an IO bus 1011, a sub bus switch 1012, an IO bus 1013, an image ring interface 1014, and an image ring interface 1015.
[0039]
The sub bus switch 1012 is a second bus switch, and is connected to the image DMA 1016, the image DMA 1017, the font expansion unit 1018, the sort circuit 1019, and the bitmap trace circuit 1020, and arbitrates a memory access request output from these image DMAs. Then, connection to the system bus bridge 1008 is performed.
[0040]
The RAM 1021 is a system work memory for the operation of the CPU 1006, and is also an image memory for temporarily storing image data. The RAM 1021 is controlled by a RAM controller 1009. In the present embodiment, an example in which a direct RDRAM is adopted is shown. The ROM 1022 is a boot ROM, and stores a system boot program. The ROM 1022 is controlled by a ROM controller 1010.
[0041]
The image DMA 1016 is connected to the image compression unit 1023, controls the image compression unit 1023 based on information set via the register access ring 1024, reads out uncompressed data on the RAM 1021, compresses the data, and outputs the uncompressed data. Write back. In the present embodiment, an example is shown in which the JPEG method is adopted as a compression algorithm.
[0042]
The image DMA 1017 is connected to the image decompression unit 1025, controls the image decompression unit 1025 based on the information set via the register access ring 1024, reads compressed data from the RAM 1021, decompresses, and writes decompressed data. Make a return. In the present embodiment, an example is shown in which the JPEG method is adopted as a decompression algorithm.
[0043]
The font decompression unit 1018 decompresses the compressed font data stored in the ROM 1022 or the RAM 1021 based on the font code included in the PDL data transferred from the outside via the LAN controller 1026 or the like. In the present embodiment, an example in which the FBE algorithm is adopted is shown.
[0044]
The sort circuit 1019 is a circuit that rearranges the order of the objects in the display list generated at the stage of expanding the PDL data. Further, the bitmap trace circuit 1020 is a circuit that extracts edge information from bitmap data.
[0045]
The IO bus 1011 is a kind of an internal IO bus, and is connected to a controller of a USB bus which is a standard bus, a USB interface 1027, a (general purpose) serial port 1028, an interrupt controller 1029, and a GPIO interface 1030. The IO bus 1011 includes a bus arbiter (not shown).
[0046]
The operation unit interface (I / F) 1031 is an interface unit with the operation unit (UI) 1032, and outputs image data to be displayed on the operation unit 1032 to the operation unit 1032. Further, it plays a role of transmitting information input by the system user from the operation unit 1032 to the CPU 1006.
[0047]
The IO bus 1013 is a type of an internal IO bus, and a general-purpose bus interface 1033 and a LAN controller 1026 are connected. The IO bus 1013 includes a bus arbiter (not shown). The general-purpose bus interface 1033 is a bus bridge composed of two identical bus interfaces and supporting a standard IO bus. In the present embodiment, an example in which the PCI bus 1034 is adopted is shown.
[0048]
An external storage device (HDD) 1035 is a hard disk drive, and stores system software, image data, page information corresponding to each image data, job information, and the like. The HDD 1035 is connected to one PCI bus 1034 via a disk controller 1036. The LAN controller 1026 is connected to the LAN 1004 via the MAC circuit 1037 and the PHY / PMD circuit 1038, and inputs and outputs information. A modem (Modem) 1039 is connected to the public line 1005 to input and output information.
[0049]
[Overview of image processing unit]
FIG. 15 is a configuration diagram illustrating a detailed configuration of the image processing unit 1041 in the controller unit 1001. In FIG. 15, an image ring 1040 is configured by a combination of a pair of unidirectional connection paths. The image ring 1040 is connected to the tile decompression unit 1044, the command processing unit 1045, the status processing unit 1046, and the tile compression unit 1047 via the image ring interface 1042 and the image ring interface 1043 in the image processing unit 1041. .
[0050]
The tile expansion unit 1044 is a bus bridge that is connected to the tile bus 1048 and expands the compressed image data input from the image ring 1040 and transfers the image data to the tile bus 1048 in addition to the connection to the image ring interface 1042. . The tile bus is a bus that divides image data of one page into unit blocks of a predetermined size (this is called a “tile”), and performs data processing and transfer in tile units. In the present embodiment, an example is shown in which JPEG is used for multivalued image data and PackBits is used for binary image data as a decompression algorithm.
[0051]
The tile compression unit 1047 is a bus bridge that is connected to the tile bus 1048 and compresses uncompressed image data input from the tile bus 1046 and transfers the compressed image data to the image ring 1040 in addition to the connection to the image ring interface 1043. . In the present embodiment, an example is shown in which JPEG is used as the compression algorithm for multi-valued image data and PackBits is used for binary image data.
[0052]
The command processing unit 1045 is connected to the register setting bus 1049 in addition to the connection to the image ring interface 1043, and is connected to the register setting bus 1049 via the image ring 1040 and issues a register setting request issued by the CPU 1006. Write to the corresponding block. Also, based on a register read request issued from the CPU 1006, information is read from the corresponding register via the register setting bus 1049 and transferred to the image ring interface 1043.
[0053]
The status processing unit 1046 monitors information of each image processing block, generates an interrupt packet for issuing an interrupt to the CPU 1006, and outputs the generated interrupt packet to the image ring interface 1043. The tile bus 1048 is connected to the following functional blocks in addition to the above blocks.
[0054]
That is, the rendering unit interface 1050, the image input interface 1051, the image output interface 1052, the multi-value processing unit 1053, the binarization processing unit 1054, the color space conversion unit 1055, the image rotation unit 1056, the resolution conversion unit 1057, and the image characteristic information A replacement unit 1058. The tile bus 1048 in the figure also includes a bus controller.
[0055]
The rendering unit interface 1050 is an interface for inputting a bitmap image generated by a rendering unit 1067 described later. The rendering unit 1067 and the rendering unit interface 1050 are connected by a general video signal 1059. The rendering unit interface 1050 has connections to a memory bus 1060 and a register setting bus 1049 in addition to the tile bus 1048, and converts an input raster image into a tile image by a predetermined method set via the register setting bus 1049. And at the same time, synchronize the clock and output to the tile bus 1048.
[0056]
The image input interface 1051 receives scan image data from the scanner 1002 as input, converts the structure into a tile image, changes the clock rate, and outputs it to the image processing unit 1041.
[0057]
The image output interface 1052 receives the tile image data from the tile bus 1048 as input, converts the structure into a raster image, changes the clock rate, and outputs the raster image to the print image processing unit 1061.
[0058]
Image rotators 1056 and 1057 rotate image data. The resolution conversion unit 1055 converts the resolution of an image. Further, the binarization processing unit 1054 binarizes the multi-level (color and gray scale) image, and the multi-level processing unit 1053 converts the binary image into multi-level data. Furthermore, the image characteristic information replacement unit 1058 converts the received image characteristic information into alternative characteristic information and transmits the alternative characteristic information to another block.
[0059]
The external bus interface unit 1062 converts a write / read request issued by the CPU 1006 to the external bus 1063 via the image ring interfaces 1014, 1015, 1042, 1043, the command processing unit 1045, and the register setting bus 1049. It is. In this embodiment, the external bus 1063 is connected to the print image processing unit 1061 and the scanner image processing unit 1064.
[0060]
The memory control unit 1065 is connected to the memory bus 1059, and writes / reads image data to / from the image memory 1066 and performs refreshing or the like as necessary according to a request from each image processing unit by performing a preset address division. Perform the operation. In the present embodiment, an example is shown in which an SDRAM is used as an image memory.
[0061]
The scanner image processing unit 1064 corrects image data scanned by the scanner 1002, which is an image input device. The print image processing unit 1061 corrects image data for printer output, and outputs the result to the printer 1003.
[0062]
The rendering unit 1067 develops the PDL code or the intermediate display list into a bitmap image.
[0063]
That is, in the image processing apparatus according to the present embodiment, first, the image data including the first image characteristic information is input for each predetermined unit via the scanner 1002 and the image input I / F 1051. The input image data is divided into predetermined units by the tile bus 1048, and the tile compression unit 1047 compresses the divided image data in the predetermined units. Then, the compressed image data is stored in a memory such as the RAM 1021. In this case, if the compressed image data is equal to or more than a predetermined amount (for example, the storage capacity of the memory), the first image characteristic The image data excluding the information is stored. Next, the compressed image data stored in the memory is expanded by the tile expansion unit 1044. On the other hand, when the second image characteristic information is designated by the UI 1032 or the CPU 1006 and the image data is output to the image output I / F 1052 for printing by the printer 1003, the first image characteristic information is not included. The second image characteristic information is set by the image characteristic information replacing unit 1058 as the image characteristic information of the decompressed image data.
[0064]
In the image processing apparatus according to the present embodiment, the data amount of the image data stored in the memory is counted by the data amount counting unit 208. Then, it is determined by the CPU 1006 or the like whether or not the data amount of the image data counted by the data amount counting unit 208 has exceeded a predetermined amount, and if it is determined that the data amount of the image data has exceeded the predetermined amount, The operation of storing the first image characteristic information in the memory is stopped.
[0065]
[Packet format]
Next, the data format in the present embodiment will be described in detail.
[0066]
In the above-described controller unit 1001, image data, commands from the CPU 1006, interrupt information from each block, and the like are transferred in a packetized format. In this embodiment, three different types of packets are used: a data packet shown in FIG. 16, a command packet shown in FIG. 17, and an interrupt packet shown in FIG.
[0067]
FIG. 16 is a diagram showing an outline of the structure of a data packet used in the present embodiment. In the present embodiment, the image data is divided into image data (Image Data) 3002 of 32 pixels × 32 pixels and handled. A packet in which the required header information (header) 3001 and image characteristic information (Z Data) 3003 and the like are combined with the image data 3002 in tile units is called a “data packet”. Hereinafter, information included in the header information 3001 will be described.
[0068]
As shown in FIG. 16, packets are distinguished into data packets, command packets, and interrupt packets based on the value of a packet type ID (Packet Type ID) 3023 in a packet type (Pckt Type) 3004 in the header information 3001. In the present embodiment, the Packet Type ID 3023 is 3 bits,
001b or 101b: data packet
010b: Command packet
100b: Interrupt packet
Each is assigned as follows.
[0069]
The packet type 3004 includes a repeat flag 3022. If the image data of the data packet, the image characteristic information 3003, and the predetermined information in the header information 3001 are the same as the previously transmitted data packet, the repeat flag 3022 is set to 1. In this case, the transfer of the packet is performed only for the header information 3001.
[0070]
The chip ID (Chip ID) 3005 indicates the ID of a chip that is a target for transmitting a packet. An image type (Image Type) 3006 indicates the type of image data. In the present embodiment, the type of image data is defined as follows using the upper 2 bits of the 8-bit image type 3006.
[0071]
00b: Represents image data of one pixel with 1 bit
01b: One pixel of image data is represented by one 8-bit component
10b: Image data of one pixel is represented by 8 bits and 3 components, that is, a total of 24 bits
11b: Image data of one pixel is represented by 8 bits and 4 components, that is, 32 bits in total.
[0072]
A page ID (Page ID) 3007 indicates a page including the data packet, and a job ID (Job ID) 3008 stores a job ID to be managed by software. The arrangement order of the data packets on the page is a combination of a tile coordinate (Packet ID Y-coordinate) 3009 in the Y direction and a tile coordinate (Packet ID X-coordinate) 3010 in the X direction. n Y n Is represented by
[0073]
The process instruction (Process Instruction) 3011 is set to the processing order every 8 bits left-justified, and each processing unit (Unit) shifts the process instruction to the left by 8 bits (Shift) after processing. In the present embodiment, the process instruction 3011 stores eight sets of a unit ID (Unit ID) 3024 and a mode (Mode) 3025. The unit ID 3024 specifies each processing unit of the image processing unit 2149, and the mode 3025 specifies the operation mode of each processing unit. Thus, one packet can be processed continuously up to eight units.
[0074]
A packet byte length (Packet Byte Length) 3012 indicates the total number of bytes of the packet. Image data byte length (Image Data Byte Length) 3015 indicates the number of bytes of image data, image property information byte length (Z Data Byte Length) 3016 indicates the number of bytes of image property information, and image data offset (Image Data Offset) 3013, An image characteristic information offset (Z Data Offset) 3014 indicates a value of an offset (Offset) from the head of a packet for each data.
[0075]
In data packets, there are cases where the image data and image characteristic information of the packet are compressed and cases where the image data and image characteristic information are not compressed. In the present embodiment, as the compression algorithm, an example is shown in which the JPEG method is used when image data is multi-valued color (including multi-valued gray scale), and the pack bit method is used for binary value and image characteristic information. ing.
[0076]
The distinction between the case where the image data and the image characteristic information are compressed by the above-described method related to the image compression and the case where the image characteristic information is uncompressed is made by comparing the image data (Image Data) 3026 in the compression flag (Compress Flag) 3017 and the image When the characteristic information (Z data) 3027 is 1, it indicates compressed data, and when it is 0, it indicates uncompressed data.
[0077]
In a compression flag (Compress Flag) 3017, a Q-table ID (Q-Table ID) 3028 that stores the type of quantization table used when performing compression processing by JPEG is prepared. When there are a plurality of tables, the quantization table to be used is switched by referring to this value when compressing and decompressing data.
[0078]
A source ID (Source ID) 3018 indicates a source from which the image data and the image characteristic information have been generated. The Z type (Z type) 3020 indicates an effective bit width in the image characteristic information, and image characteristic information other than the bits indicated by the Z type 3020 is invalid information. When the Z type 3020 is 0, it indicates that all the input image characteristic information is invalid.
[0079]
In a Z dummy (Zdummy) 3033, a substitute value of image characteristic information is set when a later-described compress fail flag is set.
[0080]
The thumbnail data (Thumbnail Data) 3021 stores a value (hereinafter, referred to as “thumbnail value”) representing the image data of the data packet. In the present embodiment, thumbnail data (thumbnail data) 3021 can store up to four thumbnail values.
[0081]
Misc 3019 stores necessary information other than the above information. In the present embodiment, a character flag (Char-flag) 3029 and a Q table cell (Q-Table Sel) 3030 are provided. The character flag 3029 stores an area signal to which the data packet belongs. The Q table cell 3030 stores information for changing a quantization table used at the time of compression and decompression according to the JPEG method. Both the character flag and the Q table cell count the number of pixels having predetermined image characteristics indicated by the image characteristic information in the packet, and the flag (flag) is turned on / off (On / Off) according to the count result.
[0082]
A CompressFail (CompressFail) 3032 is a flag that is set when the data amount after compression exceeds a predetermined value.
[0083]
FIG. 17 is a diagram showing an outline of the structure of a command packet used in the present embodiment. This packet format (Packet Format) is for accessing the register setting bus 1049. By using this packet, the CPU 1006 can also access the image memory 1066.
[0084]
In the chip ID (Chip ID) 4004, an ID representing the image processing unit 1041 to which the command packet is transmitted is stored. A page ID (Page ID) 4007 and a job ID (Job ID) 4008 store a page ID and a job ID for management by software. Here, the packet ID (Packet ID) 4009 is represented in one dimension. That is, only the X-coordinate (X-coordinate) of the data packet (Data Packet) is used.
[0085]
The packet byte length 4010 is fixed at 128 bytes. The packet data section 4002 can store a maximum of 12 commands, with a set of an address (Address) 4011 and data (Data) 4012 as one command (Command). The header section 4001 also includes a command type (Cmd Type) 4005 of write or read, and a command number (Cmd num) 4006.
[0086]
FIG. 18 is a diagram showing an outline of the structure of an interrupt packet used in the present embodiment. This packet format (Packet Format) is for notifying an interrupt from the image processing unit 1041 to the CPU 1006. After transmitting the interrupt packet, the status processing unit 1046 must not transmit the interrupt packet until the transmission is permitted. Note that the packet byte length 5006 is fixed at 128 bytes.
[0087]
The packet data section (Int Data) 5002 stores status information (Module Status) 5007 of each internal module of the image processing section 1041. The status processing unit 1046 can collect status information of each module in the image processing unit 1041 and send the status information to the system control unit 2150 collectively.
[0088]
The chip ID (Chip ID) 5004 stores an ID indicating the system control unit 2150 to which the interrupt packet is transmitted. In the Int Chip ID (Int Chip ID) 5005, an ID indicating the image processing unit 1041 that is a source of the interrupt packet is stored.
[0089]
When the above-described packet data is stored in the memory, it is managed in the form of a packet table. FIG. 19 is a schematic diagram showing a state where packet data is stored in the RAM 1021. The components of the packet table (Packet Table) 6001 are as follows. That is, when 5 bits of 0 are added to the values of the table (Table), respectively, a packet start address 6002 and a byte length (Byte Length) 6005 of the packet are obtained.
[0090]
Packet Address Pointer (27 bits) + 5b00000 = Packet Top Address
Packet Length (11 bits) + 5b00000 = Byte Length of Packet
The packet table (Packet Table) 6011 is always arranged in the scanning direction. That is, Y n / X n = 000/00000 / 001,000 / 002,... The entry (Entry) of the packet table (Packet Table) 6001 uniquely indicates one tile (Tile). Also, Y n / X max Next entry (Entry) is Y n + 1 / X 0 It becomes.
[0091]
When a packet in which a repeat flag (Repeat Flag) 3002 in the header information 3001 is set is input, the packet is not written in the memory (Memory) but is written in the entry (Entry) of the packet table (Packet Table). The same packet address pointer (Packet Address Pointer) and packet length (Packet Length) as the first entry are stored. As a result, one packet data (Packet Data) is indicated by two table entries (Table Entry). In this case, a repeat flag (Repeat Flag) 6003 of the second table entry (Table Entry) is set.
[0092]
Also, the packet can be stored discretely in the memory. In that case, the packet is managed using a chain table. In the packet table (Packet Table), it is also allowed to divide the packet data in the middle.
[0093]
When a packet is divided into a plurality of packets, a divide flag 6004 is set, and a chain table number (Chain Table No.) 6006 of a chain block (Chain Block) containing the head of the packet is set. Is set. Note that the packet table (Packet Table) 6001 and the chain table (Chain Table) 6010 are not divided.
[0094]
The entry (Entry) of the chain table (Chain Table) 6010 includes a chain block address (Chain Block Address) 6011 and a chain block length (Chain Block Length) 6012, and the last entry (Entry) of the table (Table) is 0 is stored in both the address (Address) and the length (Length).
[0095]
In the image processing apparatus according to the present embodiment, substitute information (second image characteristic information) may be included in header information set for each of the predetermined units of image data. Further, the substitute information (second image characteristic information) may be a representative value of the image characteristic information in the image data.
[0096]
[Overview of Scanner Image Processing Block]
Next, the scanner image processing unit according to the present embodiment will be described in detail. FIG. 20 is a diagram showing an internal block of the scanner image processing unit 1064 shown in FIG.
[0097]
As shown in FIG. 20, the image (R, G, B) input from the scanner 1002 is frequency-converted by the input I / F unit 7001 in synchronization with the clock of the image processing block. Here, when the scanner 1002 is a three-line sensor, there is an inter-line delay between RGB. In this case, the inter-line delay correction unit 7002 corrects the inter-line delay of each color. The sub-scanning offset correction unit 7003 corrects an offset in the sub-scanning direction due to chromatic aberration or the like of the optical system.
[0098]
The image characteristic determination unit 7004 performs edge detection and the like of the image data based on the type of the document, determines the presence or absence of characters and colors of the input image, and outputs the characteristic information together with the RGB image data. I do.
[0099]
The gamma correction unit 7005 and the input direct mapping processing unit 7006 correct and output image data according to the input characteristics of the scanner 1002. For example, the gamma correction unit 7005 corrects the dynamic range for each color, and the direct mapping processing unit 7006 corrects the color of the scanner.
[0100]
The image output from the direct mapping processing unit 7006 is input to the MTF correction unit 7007 and the specific image determination unit 7012. The MTF correction unit 7007 performs arithmetic processing for correcting the numerical aperture and chromatic aberration of the optical system in the main scanning direction. The specific image determination unit 7012 determines, by pattern matching or the like, image data that is prohibited from being printed under laws such as securities.
[0101]
The spatial filter processing unit 7008 performs a spatial filter process such as edge enhancement and smoothing on the input image. This filtering process is performed adaptively according to the determination result of the image characteristic determination unit 7012 described above. For example, when the input image is determined to be a character, edges are emphasized, and when it is determined to be a continuous tone image such as a photograph, smoothing is performed.
[0102]
The histogram calculation / ND conversion unit 7009 obtains a histogram of the input image and converts the chromatic RGB input image into an achromatic ND image. The trimming / masking unit 7010 performs processing of a print image area such as frame erasing of input image data or book frame erasing. Further, the output I / F unit 7011 performs frequency conversion of the image data and the characteristic information from the image processing clock for the scanner to the system clock synchronization, and outputs the result.
[0103]
[Tile compression unit]
FIG. 2 is a block diagram showing a detailed configuration inside the tile compression section 1047 in the controller unit 1001 of the image processing apparatus of the present embodiment shown in FIG.
[0104]
2, the tile bus interface unit 201 performs handshake with the tile bus 1048, obtains header information, image data, and image characteristic information input from the tile bus 1048, and sends the information to each processing block connected to the subsequent stage. Output data.
[0105]
Also, the tile bus interface unit 201 analyzes the header information sent from the tile bus 1048, and outputs an interrupt signal corresponding to the content of the inconsistency to a register setting unit 206 to be described later if there is any inconsistency in the header information. The operation is stopped until a reset signal (not shown) is input.
[0106]
On the other hand, when there is no inconsistency in the header information, the header information is output to the header information generation unit 202 connected at the subsequent stage, and then the image data and the image characteristic information are obtained from the tile bus 1048 to obtain the image of the header information. According to a type (Image Type) 3006, the first compression processing unit 203 (in the present embodiment, compression processing by the JPEG method is performed) and the second compression processing unit 204 (in the present embodiment, compression processing by the PackBits method). ) Output image data or image characteristic information for each.
[0107]
More specifically, when the upper two bits of the image type (Image Type) in the header information are 00b representing 1-bit image data, the first compression processing unit 203 does not use the image data and the second compression processing unit Output to 204.
[0108]
When the upper two bits of the image type (Image Type) are other than 00b, the image data is output to the first compression processing unit 203 and the image characteristic information is output to the second compression processing unit 204. However, when the Z type (Z type) 3020 is 0, the input image characteristic information is invalid, so that the image characteristic information is not output to the second compression processing unit 204, and the compression processing by the second compression processing unit is not performed. Not performed.
[0109]
The header information generation unit 202 generates header information while the first compression processing unit 203 and the second compression processing unit 204 perform the compression processing of the image data and the image characteristic information. Further, the header information generation unit 202 outputs information necessary for compression processing from the stored header information to the first compression processing unit and the second compression processing unit.
[0110]
In the present embodiment, the first compression processing unit 203 represents a JPEG compression processing unit that performs JPEG compression. The first compression processing unit 203 performs a compression process on the image data when the image data has a multi-bit configuration. Further, the first compression processing unit 203 has a buffer for storing the input image data for one tile, and holds the image data of the packet processed immediately before the image data of the next packet is input. Thus, the image data input from the tile bus interface unit 201 is compared with the image data stored in the buffer. The comparison result is sent to an image ring output unit described later, and is referred to when a repeat flag (Repeat Flag) 3022 is generated.
[0111]
If an abnormality in operation is detected while the first compression processing unit 203 is performing compression processing, the first compression processing unit 203 sends an interrupt signal corresponding to the content of the abnormal operation to the register setting unit 206. After that, the operation is stopped until a reset signal (not shown) is input.
[0112]
In the present embodiment, the second compression processing unit 204 performs a compression process using a compression method with no information loss, specifically, a packbits method. The second compression processing unit 204 outputs the image data when the image data of the packet input to the tile compression unit has a 1-bit configuration, and outputs the image data when the image characteristic information exists (that is, when the Z type 3020 is not 0). The characteristic information is subjected to a compression process by the pack bit method.
[0113]
Similarly to the first compression processing unit 203, the second compression processing unit 204 has a buffer for storing one packet of the input image characteristic information, and stores the 1-bit image data or the image characteristic input immediately before. By holding the information, the image or image characteristic information input from the tile bus interface unit 201 is compared with the data stored in the buffer. Then, the comparison result is sent to an image ring output unit described below, and is referred to when a repeat flag (Repeat Flag) 3022 is generated.
[0114]
If an abnormality in operation is detected while the second compression processing unit 204 is performing compression processing, the second compression processing unit 204 sends an interrupt signal corresponding to the content of the abnormal operation to the register setting unit 206. After that, the operation is stopped until a reset signal (not shown) is input.
[0115]
The image ring output unit 205 acquires processing information, image data, and image characteristic information from the header information generation unit 202, the first compression processing unit 203, and the second compression processing unit 204. Then, after setting a predetermined value for the header information, the data packet shown in FIG. 16 is generated and output to the image ring interface 2102.
[0116]
The register setting unit 206 performs settings related to processing inside the tile compression unit 2106. Here, in order for the tile compression section 1047 to perform a predetermined compression process, it is necessary to set a predetermined value in the register setting section 206. These settings are performed by using a command packet to send from the system control unit 2150 to the command processing unit 1045 of the image processing unit 1041 and from the command processing unit 1045 to the tile compression unit 1047 via the register setting bus 1049. .
[0117]
The value set in the register setting unit 206 is sent to the first compression processing unit 203 and the second compression processing unit 204, and both compression processing units perform a process determined by referring to those set values.
[0118]
It should be noted that, in addition to setting a value to the register setting unit 206 using a command packet, it is also possible to output a setting value held by the register setting unit 206 to the system control unit 2150 using a command packet. .
[0119]
Further, the register setting unit 206 has a register corresponding to the interrupt signal input from the tile bus interface unit 201, the first compression processing unit 203, and the second compression processing unit 204, and receives an interrupt signal from any of the blocks. After setting the value of the register corresponding to the above, an interrupt signal for notifying that the interrupt has occurred to the status processing unit 1046 and a status signal indicating in which block the interrupt has occurred are output.
[0120]
The register setting bus interface unit 207 converts the address and the setting value input from the register setting bus 1049 to the tile compression unit 1047 into a format that can be received by the register setting unit 206 and sends the converted format. Note that the register setting bus interface unit 207 not only receives the register setting value from the register setting bus 1049, but also reads out the setting value corresponding to the address indicated by the register setting bus 1049 from the register setting unit 206 and transfers the setting value to the register setting bus 1049. It is also possible to output.
[0121]
The data amount counting unit 208 counts the data amount of the image data and image characteristic information sent from the first compression processing unit 203 and the second compression processing unit 204 to the image ring output unit 205, and when the data amount exceeds a predetermined value. A flag signal is output to header information generating section 202.
[0122]
[First compression processing unit]
FIG. 1 is a block diagram showing a detailed configuration of the first compression processing unit 203 in FIG. In the present embodiment, a case where the image data has an 8-bit configuration, a 24-bit configuration, or a 32-bit configuration, that is, a case where the image data is compressed by the first compression processing unit 203 will be described.
[0123]
In FIG. 1, a first data buffer 101 stores image data sent from a tile bus interface unit 201, and sends a predetermined amount of data to a JPEG compression unit 110 connected to a subsequent stage when a predetermined amount of data is sent. The image data is output according to a predetermined order. Here, the image type (Image Type) 3006 of the header information is input to the first data buffer 101 from the header information generation unit 202, and the order of the image data output to the JPEG compression unit 110 is determined by the image type 3006. Controlled.
[0124]
Hereinafter, the order of the image type 3006 and the image data input to the JPEG compression unit 110 will be described. FIG. 3 is a schematic diagram for explaining the configuration of image data for one tile handled in the present embodiment. In the image data of FIG. 3, the upper two bits of the image type (Image Type) 3006 are 01b, that is, the image data representing one pixel of image data with one component of 8 bits from the tile bus interface unit 201 is input. , And represents image data composed of 1024 pixels of 32 pixels × 32 pixels in the main / sub scanning.
[0125]
In order to output the pixels to the JPEG compression unit 110, first, these pixels are divided into 16 blocks in units of 64 pixels of 8 pixels × 8 pixels in the main / sub scanning which is a processing unit of the JPEG compression processing. Then, the data is output to the JPEG compression unit 110 for each block. In FIG. 3, image data of one pixel is indicated by a thin line, and blocks obtained by dividing the image data into units of JPEG compression processing are indicated by thick lines.
[0126]
FIG. 4 is an enlarged view of pixels included in block 0 located at the upper left of the divided block in the image data of FIG. As shown in FIG. 4, there are image data of 64 pixels in this block, and each pixel is numbered from 0 to 7 in the main scanning direction and the sub-scanning direction.
[0127]
In the block shown in FIG. 4, the order of output to the JPEG compression unit 110 is (0, 1) → (0, 0) in the main scanning direction starting from the pixel data of (0, 0) at the upper left as shown by the arrow. , 2) →... → (0, 7). Then, after the pixel data of (0,7), it moves one line in the sub-scanning direction and proceeds in the order of (1,0) → (1,1) →... → (1,7). When the image data of (7, 7) below is output, the output of the image data of the block ends. When the image data of the block 0 shown in FIG. 3 is output, the image data is similarly output in the above-described order from (0, 8) at the upper left of the block 1.
[0128]
FIG. 5 is a second diagram for describing image data for one tile handled in the present embodiment. In FIG. 5, the upper two bits of the image type (Image Type) 3006 are 10b, that is, one tile in a case where a total of 24 bits of image data are input from the tile bus interface unit 201, ie, 8 bits and 3 components for one pixel. Minute image data. In FIG. 5, each pixel is not represented, but is displayed in units of blocks shown in FIG. 3, which are JPEG compression processing units. In addition, each image data is divided into components 1, 2 and 3 for each component instead of each pixel and displayed.
[0129]
FIG. 6 is a diagram showing the order in which the image data shown in FIG. 5 is output to the JPEG compression unit 110. The order in which the image data is output in each block shown in FIG. 6 is the same as the case described above with reference to FIG. In this embodiment, first, the image data of the component 1 of the block 0 is output from the first data buffer 101. When all the image data of the component 1 of the block 0 is output, the image data of the component 2 of the block 0 is output, and then the image data of the component 3 of the block 0 is output. All image data is output.
[0130]
When all the image data of block 0 has been output, the image data of component 1 of block 1 follows, followed by component 2 of block 1, component 3 of block 1, component 1 of block 2, and so on. Finally, when the output of the image data of the component 1 of the block 15 → the component 2 of the block 15 → the component 3 of the block 15 is completed, the output of the image data for one tile ends.
[0131]
5 and FIG. 6 also when the upper two bits of the image type (ImageType) 3006 are 11b, that is, when the tile bus interface unit 201 receives a total of 32 bits of image data of 8 bits and 4 components per pixel from the tile bus interface unit 201. The same is true. That is, first, the image data of each component of a predetermined block is output in the order of component 1 → component 2 → component 3 → component 4, and then the process proceeds to the output of the image data of the next block.
[0132]
In this manner, in the present embodiment, one tile of image data is divided into blocks of 8 pixels in the main scanning direction × 8 pixels in the sub-scanning direction. Is done. When each block has a plurality of image data (having a plurality of components), the image data of each component in the block is compressed, all components are compressed, and then the next block is compressed. Do.
[0133]
As described above, in the present embodiment, as shown in FIG. 1, the JPEG compression unit 110 compresses image data according to the JPEG method. It should be noted that the JPEG compression unit 110 has three more processing blocks.
[0134]
First, the DCT transform unit 102, when 64 data is input from the data buffer 101, performs a discrete cosine transform (DCT) on the input data to convert it into frequency components. Also, at this time, the DC component value generated by the discrete cosine transform is output to a thumbnail generation unit 107 described later together with the latch signal. The discrete cosine transform is performed every time 64 pieces of data are input, and a latch signal and a DC component value are output to the thumbnail generation unit 107 each time. Further, the DCT transform unit outputs an error interrupt signal to the register setting unit 206 when an error occurs during the operation of the discrete cosine transform.
[0135]
Next, the quantization unit 103 performs quantization on the frequency component output from the DCT transformation unit 102 using a predetermined quantization value to generate quantized data. The quantization value is input from a quantization table described later, and the quantization value to be used is determined by analyzing the header information from the header information generation unit 202. When the result of the quantization becomes a value other than the predetermined value, the quantization unit 103 outputs an error interrupt signal to the register setting unit 206.
[0136]
Further, Huffman encoding section 104 performs predetermined encoding on the quantized data output from quantization section 103 to generate encoded data, and outputs the encoded data to second data buffer 105. Further, when data that cannot be encoded is input, the Huffman encoding unit 104 outputs an error interrupt signal to the register setting unit 206.
[0137]
The second data buffer 105 is a buffer for storing the encoded data encoded by the Huffman encoding unit 104. When the encoded data for one tile is obtained from the Huffman encoding unit 104, the second data buffer 105 Is output to the image ring output unit 205 as the data byte length 1 (Data Byte Length 1). Further, the second data buffer 105 outputs the encoded data stored in the buffer to the image ring output unit 205 according to the request of the image ring output unit 205.
[0138]
The data comparison unit 106 compares the image data input from the tile bus interface unit 201 with the image data stored in the first data buffer 101. At this time, the data comparison unit 106 stores the image data sent from the tile bus interface unit 201 in the first data buffer 101 and simultaneously stores the image data stored in the portion where the image data is stored. Is compared.
[0139]
That is, the first data buffer 101 stores the image data sent to the first compression processing unit 203 immediately before the tile input from the tile bus interface unit 201. Here, the data comparison unit 106 compares the image data sent from the tile bus interface unit 201 with the image data of the previous tile sent to the first compression processing unit 203 by the above operation. Is
[0140]
When the comparison of the image data for one tile is completed by the data comparison unit 106, the comparison result (Compare result 1) is output from the data comparison unit 106 to the image ring output unit 206.
[0141]
On the other hand, the thumbnail generation unit 107 acquires a DC component value in synchronization with the latch signal output from the DCT conversion unit 102, generates a thumbnail value for each tile by performing operation and normalization, and outputs an image ring output. Output to the unit 205. Note that an image type (Image Type) 3006 is input to the thumbnail generation unit 107 from the header information generation unit 202. Therefore, the thumbnail generation unit 107 detects the order of the DC component values sent from the DCT conversion unit 102 by referring to the image type (Image Type) 3006, and generates a thumbnail value for each component.
[0142]
The generated thumbnail value is output to the image ring output unit 205, and stored in a predetermined format in the thumbnail data (thumbnail Data) 3021 of the header information acquired from the header information generation unit 202 in the image ring output unit 205. . Thereafter, the image data is output to the image ring interface 2104 as a data packet together with the image data compressed by the first compression processing unit 203 and the image characteristic information compressed by the second compression processing unit 204.
[0143]
The quantization table unit 109 stores a quantization value for performing quantization in the quantization unit 103. A plurality of quantization tables are stored in the quantization table unit 109 in the present embodiment, and a predetermined quantization table is selected by a selection signal input from a quantization table selection unit 108, which will be described later, and the quantization unit 103 is selected. To output the quantized value.
[0144]
The quantization table selection unit 108 outputs a quantization table selection signal to the quantization table unit 109 to output a predetermined quantization table from the plurality of quantization tables stored in the quantization table unit 109. To select.
[0145]
An image type (Image Type) 3006, a mode (Mode) 3025, a character flag (Char-flag) 3029, and a Q table cell (Q-Table Sel) 3030 are input from the header information generation unit 202 to the quantization table selection unit 108. The quantization table selection unit 108 determines a quantization table to be used from the header information. When the quantization table to be used is determined, the quantization table selection unit 109 outputs a quantization table selection signal to the quantization table unit 109 so as to select the determined quantization table, and represents the selected quantization table. The Q-table ID (Q-Table ID) is output to the image ring output unit 205.
[0146]
[Second compression processing unit]
FIG. 7 is a block diagram showing a detailed configuration of the second compression processing unit 204 in the present embodiment shown in FIG. In FIG. 7, a first data buffer 701 is a buffer for storing image characteristic information sent from the tile bus interface unit 201. When a predetermined amount of data is sent, a pack data compression unit connected to the subsequent stage is used. Data is output to the unit 702 in a predetermined order. Further, the pack bit compression section 702 performs pack bit compression on the image characteristic information stored in the first data buffer 701.
[0147]
The second data buffer 703 is a buffer for storing the compressed data compressed by the PackBits compression unit 702, and when the compressed data for one tile is obtained from the PackBits compression unit 702, the data stored in the buffer Is output to the image ring output unit 205 as the data byte length (Data Byte Length 2). Further, the second data buffer 703 outputs the compressed data stored in the buffer to the image ring output unit 205 according to the request of the image ring output unit 205.
[0148]
The data comparison unit 704 compares the image data input from the tile bus interface unit 201 with the data stored in the first data buffer 701. That is, the data sent from the tile bus interface unit 201 is stored in the first data buffer 701, and at the same time, the data comparison unit 704 compares the data with the data stored in the first data buffer 701.
[0149]
At this time, since the image characteristic information sent to the second compression processing unit 204 is stored in the first data buffer 701 immediately before the tile input from the tile bus interface unit 201, the above operation is performed. The data comparison unit 106 compares the image characteristic information sent from the tile bus interface unit 201 with the image characteristic information of the immediately preceding tile in the second compression processing unit 204.
[0150]
When the comparison of the image characteristic information for one tile is completed by the data comparison unit 704, the data comparison unit 704 outputs a comparison result (Compare result 2) to the image ring output unit 206.
[0151]
[Control of image characteristic information by counting data amount]
Next, an operation procedure of the tile compression section 1047 whose detailed block diagram is shown in FIG. 2 will be described. FIG. 8 is a flowchart for explaining the operation related to the data counting process of the tile compression section 1047 according to the present embodiment.
[0152]
First, when compression processing is started in the tile compression section 1047, the data counter value (DataCount) is set to 0 (step S801). Next, when the compression processing is completed in the first compression processing section 203 and the second compression processing section 204, the respective compressed data amounts (Data Byte Length 1 and Data Byte Length 2) are output to the data amount counting section 208, and these are output as data. It is added to the counter value (DataCount) (step S802).
[0153]
Next, the data counter value (DataCount) is compared with a preset limit value to (step S803). As a result, when it is determined that the data counter value exceeds the limit value (Yes), the transmission of the image characteristic information from the second data buffer 703 is stopped (step S804). Then, a compress fail signal is output to the header information generating unit 202 and the register setting unit 206 to notify that the data amount has exceeded (step S805).
[0154]
The register setting unit 206 outputs an interrupt signal to the status processing unit 1046 when receiving a compress fail signal. When the CPU 1006 receives the interrupt packet from the status processing unit 1046 and determines that the cause of the interrupt is the data amount counting unit 208, the CPU 1006 registers that the data amount has exceeded the page information of the page corresponding to the image data. I do.
[0155]
Subsequently, the data amount counting unit 208 sets Data Byte Length2 to 0, and outputs the data to the image ring output unit 205 (step S806). Also, the header information generation unit 202 refers to the data value of the first pixel of the data stored in the first data buffer 701 in the second compression processing unit, and substitutes a Z dummy (Zdummy) ) 3033 (step S807).
[0156]
On the other hand, if it is determined in step S803 that the data counter value does not exceed the limit value (No), the image characteristic information and Data Byte Length2 stored in the second data buffer 703 are directly transmitted to the image ring output unit 205. Output (Step S808).
[0157]
Then, after the processing in step S807 or S808, the data amount counting unit 208 transmits the image data and Data Byte Length1 stored in the second data buffer 105 to the image ring output unit 205 as they are (step S809). . Furthermore, it is determined whether the processing of one page is completed at last (step S810). As a result, if the processing has not been completed (No), the process returns to step S802 to repeat the above-described processing. On the other hand, if it is determined that the processing of one page has been completed (Yes), the data count processing is completed.
[0158]
As described above, when the compression processing is performed, the image data is controlled so as not to exceed a certain amount to suppress the occurrence of rereading of the image data, and to compensate for the missing image characteristic information to minimize the image deterioration. It is possible to perform less image processing.
[0159]
[Overview of image characteristic information]
FIG. 9 is a diagram illustrating an example of image characteristic information supplied to the printer image processing unit 1061. In the present embodiment, the image characteristic information is composed of 4-bit data having different contents depending on the supply source (input source) of the image data. In FIG. 9, image attribute information when the input source is PDL data or the like transferred from the host via the LAN is represented by input source 0, and the input source is image attribute information for the scanned image data read from the scanner. Is represented by an input source 1.
[0160]
In the image characteristic information in the case of the input source 0, bit0 is information (image type information) for identifying the type of data type such as whether each image data is a raster image or font data. Bit 1 is information (image type identification information) indicating an image type for identifying whether the data is character data or photo data. Further, bit2 is information (color identification information) indicating a color determination result for identifying grayscale data or color data. Note that bit3 is an empty bit.
[0161]
On the other hand, in the image characteristic information in the case of the input source 1, bit0 is surface information for identifying a page before combining when two or more pages are printed on one sheet. Bit 1 represents an image type for identifying whether each image data is continuous tone data such as a photograph or image data formed by area tone represented by a screen or a dither matrix. This is image type identification information. Further, bit 2 is information indicating an image type for identifying whether each image data is data of a character area. Further, bit 3 is information for identifying the operation mode of the printer engine.
[0162]
By incorporating the area information regarding the layout into the image characteristic information like bit 0 in the present embodiment, the effect that the image processing setting for each page can be set independently when performing the bookbinding processing for a plurality of pages is obtained. Can be
[0163]
The input source type of each image is stored in the external storage device 1035 (for example, a hard disk) shown in FIG. 13, and is read out from the hard disk by the CPU 1006 at the start of printing, and subjected to image processing corresponding to each type. Is applied.
[0164]
As described above, in the image processing apparatus according to the present embodiment, substitute information (second image characteristic information) for setting a page before combination when combining and printing a plurality of pages of image data into one page , The substitute information (second image characteristic information) can be added as image characteristic information of the decompressed image data when the image of the image data is formed by the printer 1003 or the like.
[0165]
[Overview of image characteristic information replacement unit]
FIG. 10 is a block diagram illustrating a detailed configuration of the image characteristic information replacement unit 1058 according to the present embodiment. 10, 10001 denotes a tile bus interface unit, 10002 denotes a register setting bus interface unit, and 10003 denotes a data replacement unit.
[0166]
FIG. 11 is a flowchart for explaining the operation procedure of the image characteristic information replacement unit 1058 in the present embodiment. First, in the present embodiment, the operation mode of the image characteristic information replacement unit 1058 is set in advance before starting the page processing operation (step S11001). Next, the operation mode set at the time of starting the page processing is confirmed (step S11002).
[0167]
As a result, when the operation mode is set to the priority mode in which the image characteristic information replacement is prioritized (Yes), the register Zsel for selecting the replacement method of the image characteristic information prepared in the register setting bus interface 10002 is set. In addition, a value to be fixed for each bit is set in the register Zfix for fixing the image characteristic information for each bit, which is prepared inside the register setting bus interface 10002 (step S11003).
[0168]
On the other hand, when the operation mode gives priority to the image characteristic information set by the data compression unit (No), the operation mode Zsel is reset (step S11004).
[0169]
After the processing in steps S11003 and S11004, page processing is started (step S11005). As a result, an image is input from the tile bus 1048 to the image characteristic information replacement unit 1058, and the Z dummy (Zdummy) and the compression failure (Compress) of the image characteristic information and the header information are input from the tile bus interface 10001.
The (Fail) flag is extracted and output to the data replacement unit 10003.
[0170]
If Zsel is reset, the data replacement unit 10003 refers to the Compress Fail flag, and if Compress Fail is set, the value of the Z dummy (Zdummy) is included in the image characteristic information. Is set and transferred to the tile bus interface 10001.
[0171]
The tile bus interface 10001 refers to the compression fail (CompressFail) flag returned from the data replacement unit 10003, and merges the image characteristic information with the input image data if the compression flag (Compress Flag) is set. Then, the data length is set in Data Byte Length2 of the header information. Then, the image data is transferred to the image output interface 1052 via the tile bus 1048, and further transferred to the image processing unit for printer 1061.
[0172]
In this way, even if image characteristic information is lost due to an excessive data amount during data compression, it is possible to regenerate and transfer packet-specific image characteristic information to the printer image processing unit 1061. In addition, image processing according to image characteristics can be executed.
[0173]
On the other hand, in the sequence in which Zsel is reset in step S1102, the image characteristic information may be replaced with a Z dummy (Zdummy) from the middle of the page, and discontinuity due to switching of image processing in the middle of the page may occur. However, this may have an undesirable effect on the output image. In such a case, a process in which Zsel is set is performed. If Zsel is set, the CPU 1006 checks from the page information stored at the time of data transfer whether or not a packet having an excessive data amount is included. If it is included, the replacement of the image characteristic information in packet units is performed from the top of the page in which the data amount excess is set, regardless of the Compress Fail flag. In this case, in the data replacement unit 10003, the image characteristic information is replaced with Zfix instead of Z dummy (Zdummy).
[0174]
The above-described replacement processing is repeatedly executed until all the packets in the page are transferred (step S11006).
[0175]
As described above, the provision of the data replacement unit 10003 as in the present embodiment makes it possible to output a preferable image. The setting of Zsel and Zfix may be provided to the user by providing a user mode or the like, so that the user himself / herself can arbitrarily set which image characteristic has priority. This allows the user to obtain the most desirable image output.
[0176]
That is, in the above-described image processing apparatus according to the present embodiment, alternative information (second image characteristic information) that can be specified by the user is stored, and new image characteristic information set by the image characteristic information replacement unit 1058 is stored. As an operation mode using the stored alternative information or an operation mode using the alternative information (third image characteristic information) included in the header information set for each predetermined unit of the image data. It may be specified.
[0177]
[Overview of Image Processing Unit for Printer]
Next, the printer image processing unit 1061 according to the embodiment of the present invention will be described in detail. FIG. 21 is a block diagram illustrating a detailed configuration of the printer image processing unit 1061 according to the present embodiment. The image data RGB and CMYK output from the image processing unit 1041 shown in FIG. 13 and the like are input to the printer image processing units 8001 and 8002 in the printer image processing unit 1061, respectively. Each of the printer image processing units 8001 and 8002 includes image processing blocks for two colors, and each of the blocks is processed in response to an image request from a tandem engine printer (printer 1003) having a printer engine for each color. It can operate in synchronization with each printer engine.
[0178]
FIG. 22 is a block diagram showing a detailed configuration of the printer image processing units 8001 and 8002. As shown in FIG. 22, the inside is largely divided into two systems, and image data corresponding to two colors of printer engines is generated.
[0179]
In FIG. 22, reference numerals 9001 and 9002 denote input I / F units, which perform frequency conversion of image data input from the system in synchronization with a print image processing clock. Reference numerals 9003 and 9004 denote a background removal and ND conversion unit, which skips the background color of input image data or converts RGB chromatic data to achromatic ND data according to image characteristic information.
[0180]
Reference numerals 9005 and 9006 denote luminance / density conversion units that perform luminance / density conversion of input data according to image characteristic information. Reference numerals 9007 and 9008 denote direct mapping processing units, which convert RGB input data into C / M / Y / K color components of a printer engine in accordance with image characteristic information. Reference numerals 9009 and 9010 denote output color selection units.
[0181]
Reference numerals 9011 and 9012 denote color balance correction units that finely adjust the color of an output image in accordance with image characteristic information. Reference numerals 9013 to 9018 denote output gamma correction units that correct the dynamic range and tone curve of the output image. In the present embodiment, three types of gamma corrections A to C are simultaneously performed for one color and output.
[0182]
Reference numerals 9019 to 9024 denote halftone processing units that quantize image data and perform gradation conversion of an output image. In the present embodiment, 8-bit data input to the print image processing units 8001 and 8002 is converted into 4-bit data. Generally, screen processing, error diffusion processing, and the like are widely known as halftone processing methods. In the present embodiment, it is assumed that any three types of halftone processing are performed for each color.
[0183]
Reference numerals 9025 and 9026 denote halftone processing selection units, which select optimum processing results for the output images processed by the above three types of halftone processing units in accordance with image characteristic information. Reference numerals 9027 and 9028 denote smoothing processing units which perform pattern matching processing for reducing rattling such as character edges according to image characteristic information.
[0184]
Reference numerals 9029 and 9030 denote specific information addition units that perform processing for superimposing image information that can specify an output device on output image data. Reference numeral 9031 denotes an output selection unit, which can switch to which printer engine the data processed by the two systems of image processing units is output.
[0185]
Reference numerals 9032 and 9034 denote inter-drum delay control units, and reference numerals 9033 and 9035 denote inter-drum delay memories. By the processing from the input I / F units 9001 and 9002 to the output color selection units 9009 and 9010, the image data output from the image processing unit 1041 in FIG. 12 is processed by the four image processing units at the same time. . The inter-drum delay control units 9032 and 9034 store the image data output from the image processing unit 1041 and processed by the print image processing unit 1061 until the output request from the printer 1003 is received. To accumulate. By doing so, it is possible to output image data in synchronization with each printer engine (printer 1003).
[0186]
Reference numerals 9036 and 9037 denote output I / F units, which perform frequency conversion for outputting an image in synchronization with a printer I / F clock.
[0187]
In the above-described embodiment, the print image processing unit 1061 corresponding to the tandem engine printer has been described, but the scope of the present invention is not limited to the above-described embodiment. For example, an image processing unit for a single engine may be used, or one image processing unit may include image processing blocks for four colors.
[0188]
Note that the present invention is applied to a system including a plurality of devices (for example, a host computer, an interface device, a reader, a printer, etc.), but a device including one device (for example, a copying machine, a facsimile machine, etc.). May be applied.
[0189]
Further, an object of the present invention is to supply a recording medium (or a storage medium) recording a program code of software for realizing the functions of the above-described embodiments to a system or an apparatus, and to provide a computer (or a CPU or a CPU) of the system or the apparatus. Needless to say, the present invention can also be achieved by the MPU) reading and executing the program code stored in the recording medium. In this case, the program code itself read from the recording medium implements the functions of the above-described embodiment, and the recording medium on which the program code is recorded constitutes the present invention. When the computer executes the readout program code, not only the functions of the above-described embodiments are realized, but also an operating system (OS) running on the computer based on the instruction of the program code. It goes without saying that a part or all of the actual processing is performed and the functions of the above-described embodiments are realized by the processing.
[0190]
Further, after the program code read from the recording medium is written into a memory provided in a function expansion card inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. It goes without saying that the CPU or the like provided in the card or the function expansion unit performs part or all of the actual processing, and the processing realizes the functions of the above-described embodiments.
[0191]
When the present invention is applied to the recording medium, the recording medium stores program codes corresponding to the flowcharts described above.
[0192]
【The invention's effect】
As described above, according to the present invention, it is possible to provide appropriate image characteristic information according to an operation mode, and to arbitrarily switch the priority of image characteristic information to be added, thereby realizing more preferable image processing. be able to.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a detailed configuration of a first compression processing unit 203 in the embodiment shown in FIG.
FIG. 2 is a block diagram showing a detailed configuration inside a tile compression unit 1047 in the controller unit 1001 of the image processing apparatus according to the embodiment shown in FIG.
FIG. 3 is a schematic diagram for explaining a configuration of image data for one tile handled in the present embodiment.
FIG. 4 is an enlarged view of pixels included in a block 0 located at the upper left of a divided block in the image data of FIG. 3;
FIG. 5 is a second diagram for describing image data for one tile handled in the present embodiment.
FIG. 6 is a diagram showing the order in which the image data shown in FIG. 5 is output to the JPEG compression unit 110.
FIG. 7 is a block diagram illustrating a detailed configuration of a second compression processing unit 204 according to the embodiment illustrated in FIG. 2;
FIG. 8 is a flowchart illustrating an operation related to a data count process of the tile compression section 1047 according to the present embodiment.
FIG. 9 illustrates an example of image characteristic information supplied to a printer image processing unit 1061.
FIG. 10 is a block diagram illustrating a detailed configuration of an image characteristic information replacement unit 1058 according to the present embodiment.
FIG. 11 is a flowchart illustrating an operation procedure of an image characteristic information replacement unit 1058 according to the present embodiment.
FIG. 12 is a configuration diagram of an entire network system including an image processing apparatus according to an embodiment of the present invention.
FIG. 13 is an overall configuration diagram of an image processing apparatus according to an embodiment of the present invention.
FIG. 14 is a configuration diagram showing a detailed configuration of a system control unit 2150 in the controller unit 1001.
FIG. 15 is a configuration diagram showing a detailed configuration of an image processing unit 1041 in the controller unit 1001.
FIG. 16 is a diagram showing an outline of a structure of a data packet used in the embodiment.
FIG. 17 is a diagram showing an outline of a structure of a command packet used in the embodiment.
FIG. 18 is a diagram showing an outline of a structure of an interrupt packet used in the embodiment.
FIG. 19 is a schematic diagram showing a state where packet data is stored in a RAM 1021.
20 is a diagram showing an internal block of a scanner image processing unit 1064 shown in FIG.
FIG. 21 is a block diagram showing a detailed configuration of a printer image processing unit 1061 according to the embodiment.
FIG. 22 is a block diagram showing a detailed configuration inside printer image processing units 8001 and 8002.
[Explanation of symbols]
201 Tile bus interface
202 Header information generation unit
203 first compression processing unit
204 second compression processing unit
205 Image ring output unit
206 Register setting section
207 Register setting bus interface
208 Data amount counting section
1001 control unit
1002 scanner
1003 Printer
1021 RAM
1032 UI
1041 Image processing unit
1044 tile extension
1047 Tile compression unit
1048 tile bath
1058 Image characteristic information replacement unit

Claims (1)

所定単位毎に第1の画像特性情報を含む画像データを前記所定単位毎に分割する分割工程と、
分割された前記所定単位毎の画像データを圧縮する圧縮工程と、
圧縮された画像データが所定量以下の場合、前記第1の画像特性情報を含めた画像データを記憶装置に記憶し、圧縮された画像データが所定量以上の場合、前記第1の画像特性情報を除いた画像データを前記記憶装置に記憶する記憶工程と、
前記記憶装置に記憶された圧縮後の画像データを伸長する伸長工程と、
第2の画像特性情報を指定する指定工程と、
前記画像データの印刷時に、前記第1の画像特性情報を含まずに伸長された画像データの画像特性情報として、前記第2の画像特性情報を設定する置換工程と、
伸長された前記画像データを印刷する印刷工程と
を有することを特徴とする画像処理方法。
A dividing step of dividing image data including the first image characteristic information for each predetermined unit, for each predetermined unit;
A compression step of compressing the divided image data of each predetermined unit;
When the compressed image data is equal to or less than a predetermined amount, the image data including the first image characteristic information is stored in a storage device, and when the compressed image data is equal to or more than a predetermined amount, the first image characteristic information is stored. A storage step of storing image data excluding the above in the storage device,
A decompression step of decompressing the compressed image data stored in the storage device,
A specifying step of specifying second image characteristic information;
A replacement step of setting the second image characteristic information as image characteristic information of image data expanded without including the first image characteristic information when the image data is printed;
A printing step of printing the decompressed image data.
JP2002284241A 2002-09-27 2002-09-27 Image processing method, image processing apparatus, program, and recording medium Expired - Fee Related JP4136573B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2002284241A JP4136573B2 (en) 2002-09-27 2002-09-27 Image processing method, image processing apparatus, program, and recording medium
US10/670,278 US7447384B2 (en) 2002-09-27 2003-09-26 Image processing method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002284241A JP4136573B2 (en) 2002-09-27 2002-09-27 Image processing method, image processing apparatus, program, and recording medium

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2008006275A Division JP2008160866A (en) 2008-01-15 2008-01-15 Image processing method and apparatus

Publications (3)

Publication Number Publication Date
JP2004120639A true JP2004120639A (en) 2004-04-15
JP2004120639A5 JP2004120639A5 (en) 2005-11-17
JP4136573B2 JP4136573B2 (en) 2008-08-20

Family

ID=32277866

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002284241A Expired - Fee Related JP4136573B2 (en) 2002-09-27 2002-09-27 Image processing method, image processing apparatus, program, and recording medium

Country Status (1)

Country Link
JP (1) JP4136573B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006327155A (en) * 2005-05-30 2006-12-07 Canon Inc Image processing device, its control method, and program
US7680358B2 (en) 2006-06-05 2010-03-16 Canon Kabushiki Kaisha Image processing apparatus and control method thereof, and program
US8274667B2 (en) 2005-05-30 2012-09-25 Canon Kabushiki Kaisha Image processing apparatus, control method thereof, and storage medium storing a program for converting raster image data into block vector image format

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006327155A (en) * 2005-05-30 2006-12-07 Canon Inc Image processing device, its control method, and program
US8274667B2 (en) 2005-05-30 2012-09-25 Canon Kabushiki Kaisha Image processing apparatus, control method thereof, and storage medium storing a program for converting raster image data into block vector image format
US7680358B2 (en) 2006-06-05 2010-03-16 Canon Kabushiki Kaisha Image processing apparatus and control method thereof, and program

Also Published As

Publication number Publication date
JP4136573B2 (en) 2008-08-20

Similar Documents

Publication Publication Date Title
US8660347B2 (en) Image processing apparatus and processing method therefor
JP3732702B2 (en) Image processing device
US7468803B2 (en) Image processing apparatus and image processing method
US7130072B2 (en) Multifunction system, image processing method, computer program and memory medium
JP4805747B2 (en) Image processing method, image output method, image processing system, and image output apparatus.
US8953220B2 (en) Image processing for rotation of compressed image data
US7447384B2 (en) Image processing method and apparatus
US20110158522A1 (en) Image processing apparatus and processing method thereof
JP2011193394A (en) Image processing apparatus, image processing method, and program
US7742199B2 (en) System and method for compressing and rotating image data
JP4908382B2 (en) Image processing apparatus and image processing method
JP4136573B2 (en) Image processing method, image processing apparatus, program, and recording medium
JP2005045458A (en) Image compression method and apparatus
JP5441676B2 (en) Image processing apparatus and processing method thereof
JP3227181B2 (en) Image processing device
JP2008160866A (en) Image processing method and apparatus
JP4859215B2 (en) Data processing apparatus and control method
JP2002314763A (en) Color copier controller
JP2003348338A (en) Information processing apparatus
JP2004112303A (en) Image processing method, image processor, and image processing system
JP2004253906A (en) Expanding apparatus
JP2003250050A (en) Image processing apparatus and control method thereof
JP3790881B2 (en) Image processing device
JP2004120135A (en) Image processor, and control method therefor
JP2003224727A (en) Image processing system

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050927

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050927

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071116

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080215

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080415

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080603

R150 Certificate of patent or registration of utility model

Ref document number: 4136573

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110613

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120613

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120613

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130613

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees