JP2006287604A - 画像処理装置、画像処理方法、及びコンピュータプログラム - Google Patents

画像処理装置、画像処理方法、及びコンピュータプログラム Download PDF

Info

Publication number
JP2006287604A
JP2006287604A JP2005104511A JP2005104511A JP2006287604A JP 2006287604 A JP2006287604 A JP 2006287604A JP 2005104511 A JP2005104511 A JP 2005104511A JP 2005104511 A JP2005104511 A JP 2005104511A JP 2006287604 A JP2006287604 A JP 2006287604A
Authority
JP
Japan
Prior art keywords
image
color space
tile
conversion
color
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2005104511A
Other languages
English (en)
Inventor
Koichi Ueda
浩市 上田
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 JP2005104511A priority Critical patent/JP2006287604A/ja
Publication of JP2006287604A publication Critical patent/JP2006287604A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Facsimile Image Signal Circuits (AREA)
  • Color Image Communication Systems (AREA)
  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

【課題】 異なる色情報を有する画像を編集する際の処理負担を軽減する。
【解決手段】 複数の異なる色情報を有する1枚の入力画像を複数のタイルに分割し、分割したタイル単位で画像データを処理するに際し、係数選択回路301は、変換される色情報ごとに設定された変換用の係数値のうちの1つを、入力したタイルの色情報に基づいて選択し、選択した係数値と、入力された画像データの値とを用いて行列演算回路302が演算を行い、色情報を変換する。これにより、複数の異なる色情報を有する1枚の入力画像を1つの色情報に統一することが、1つのパスにて実現できるようになる。
【選択図】 図3

Description

本発明は、画像処理装置、画像処理方法、及びコンピュータプログラムに関し、特に、1枚の画像を複数の小さなブロック(以下タイルと記す)単位で処理するために用いて好適なものである。
従来から、画像を複数のタイルに分割し、分割したタイル単位で画像データを処理し、管理する画像処理システムがある(例えば、特許文献1を参照)。このような画像処理システムの従来例を以下に説明する。
[画像処理装置の構成]
図8は、画像を複数のタイルに分割し、分割したタイル単位で画像データを処理し、管理する画像処理システムの構成の従来例を示すブロック図である。図8において、画像処理装置コントローラ2000は、画像入力デバイスであるスキャナ2070や画像出力デバイスであるプリンタ2095と接続される。また、LAN2011や公衆回線(WAN)2051を介して外部機器との間でデータを授受する。このようにして、画像処理装置コントローラ2000は、画像の入出力を行うことができる。
システム制御部2150は、内部にCPU2001a、2001bを含み、画像処理装置全体を制御する。尚、図8では、2つのCPU2001a、2001bを用いた例を示す。これら2つのCPU2001a、2001bは、共通のCPUバス2126を介してシステムバスブリッジ(SBB)2007に接続される。
システムバスブリッジ2007は第1のバススイッチとして機能する。このシステムバスブリッジ2007には、CPUバス2126、RAMコントローラ2124、ROMコントローラ2125、第1のIOバス2127、サブバススイッチ2128、第2のIOバス2129、第1の画像リングインターフェース2147、及び第2の画像リングインターフェース2148が接続される。
サブバススイッチ2128は、第2のバススイッチとして機能する。このサブバススイッチ2128には、第1の画像DMA2130、第2の画像DMA2132、フォント伸張部2134、ソート回路2135、及びビットマップトレース部2136が接続されている。また、サブバススイッチ2128は、これらの画像DMA2130、2132から出力されるメモリーアクセス要求を調停し、システムバスブリッジ2007への接続を行う。
第2のIOバス2129には、第1の汎用バスインターフェース2142a、第2の汎用バスインターフェース2142b、及びLANコントローラ2010が接続される。第1の汎用バスインターフェース2142aには、第1のPCバス2143aを介して、レンダリング部2060、ディスクコントローラ2144、及びモデム2050が接続されている。公衆回線2051を介した外部とのデータのやり取りは、モデム2050を通して行われる。また、外部記憶装置2004とのデータのやり取りは、ディスクコントローラ2144を通して行われる。
第1のIOバス2127には、USBインターフェース2138、UI2012に接続された操作部インターフェース2006、第1〜第3のシリアルポート2139a〜2139c、インタラプトコントローラ2140及びGPIOインターフェース2141が接続されている。
RAM2002は、CPU2001が動作するためのシステムワークメモリーであり、画像データを一時的に記憶するための画像メモリーでもある。また、このRAM2002は、RAMコントローラ2124により制御される。尚、本例では、RAM2002として、例えばダイレクトRDRAMを採用している。
ROM2003はブートROMであり、システムのブートプログラムが格納されている。また、このROM2003はROMコントローラ2125により制御される。
第1の画像DMA2130は、画像圧縮部2131に接続され、レジスタアクセスリング2137を介して設定された情報に基づき、画像圧縮部2131による、RAM2002上にある非圧縮データの読み出しと、圧縮と、圧縮後データの書き戻しとの制御を行う。尚、本例では、例えばJPEGを圧縮アルゴリズムとして採用している。
第2の画像DMA2132は、画像伸張部2133に接続され、レジスタアクセスリング2137を介して設定された情報に基づき、画像伸張部2133による、RAM2002上にある圧縮データの読み出しと、伸張と、伸張後データの書き戻しとの制御を行う。尚、本例では、上述した圧縮アルゴリズムに対応した伸張アルゴリズムとしてJPEGを採用している。
第1の画像リングインターフェース2147及び第2の画像リングインターフェース2148は、システムバスブリッジ2007を、画像データを高速で転送する画像リング2008a、2008bに接続するためのインターフェースであり、圧縮画像データをRAM2002と画像処理部2149との間で転送するためのDMAコントローラとして機能する。
第1及び第2のタイル伸張部2103a、2103bは、第3の画像リングインターフェース2101に接続されると共に、タイルバス2107にも接続される。これら第1及び第2のタイル伸張部2103a、2103bは、画像リング2008を介して入力された圧縮後の画像データ(圧縮画像データ)を伸張し、タイルバス2107へ転送するバスブリッジである。尚、本例では、例えば多値データにはJPEGを、また2値データにはパックビッツをそれぞれ伸張アルゴリズムとして採用している。
第1〜第3のタイル圧縮部2106a〜2106cは、第4の画像リングインターフェース2102に接続されると共に、タイルバス2107にも接続される。これら第1〜第3のタイル圧縮部2106a〜2106cは、タイルバス2107を介して入力された圧縮前の画像データを圧縮し、画像リング2008bへ転送するバスブリッジである。尚、本例では、上述の伸張アルゴリズムに対応して、多値データにはJPEGを、2値データにはパックビッツを圧縮アルゴリズムとして採用している。
コマンド処理部2104は、第3及び第4の画像リングインターフェース2101、2102に接続されると共に、タイルバス2107を介してレジスタ設定バス2109にも接続される。このコマンド処理部2104は、CPU2001より発行され、画像リング2008aを介して入力したレジスタ設定要求を、レジスタ設定バス2109に接続される該当ブロックへ書き込むための処理を行う。また、CPU2001より発行されたレジスタ読み出し要求に基づき、レジスタ設定バス2109を介して該当レジスタより情報を読み出し、第4の画像リングインターフェース2102に転送する。
ステータス処理部2105は、各画像データ処理部(後述する多値化部2119、2値化部2118、色空間変換部2117、画像回転部2030、変倍処理部2116の情報を監視する。そして、CPU2001に対してインタラプトを発行するためのインタラプトパケットを生成し、第4の画像リングインターフェース2102に出力する。
また、タイルバス2107には、上述のブロックに加え、次の機能ブロックが接続される。すなわち、レンダリング部インターフェース2110、画像入力インターフェース2112、及び画像出力インターフェース2113が接続される。また、タイルバス2107及びメモリーバス2108を介して、外部バスインターフェース部2120、多値化部2119、2値化部2118、色空間変換部2117、画像回転部2030、及び変倍処理部2116が接続される。また、画像入力インターフェース2112には、スキャナ2070からの画像を取り込んで処理するスキャナ用画像処理部2114が接続され、画像出力インターフェース2113には、プリンタ2095へ出力する画像を処理するプリンタ用画像処理部2115が接続される。
[パケット構成]
次に、画像を複数のタイルに分割し、分割したタイル単位で画像データを処理し、管理する画像処理システムに用いられるパケットのフォーマットについて説明する。本例における画像処理装置コントローラ2000は、画像データ、CPU2001によるコマンド、及び各画像データ処理部2116、2117、2118、2119、2030より発行される割り込み情報を、パケット化された形式で転送する。パケットデータには、以下の種類がある。
(1)データパケット(図9)
図9に示すデータパケットは所定の画素数(ここでは32pixel×32pixelとする)で分割したタイル単位の画像データ3002と、後述する制御情報を格納するヘッダ情報3001と、画像付加情報等3003とを含んで構成される。
以下、ヘッダ情報3001内に含まれる情報について説明を行う。
PcktType3004はパケット・タイプを識別するための情報である。このPcktType3004にはリピートフラグが含まれており、画像データ3002が1つ前に送信したデータパケットの画像データと同一の場合、リピートフラグがセットされる。
ChipID3005は、パケットの送信先を示す情報である。
ImageType3006は、画像データのタイプを示す情報である。
PageID3007は、画像データのページ番号を示す情報である。
JobID3008は、ソフトウェアで画像処理を管理するためのジョブIDである。
PacketIDY3009及びPacketIDX3010は、パケットに含まれる(又は指定される)画像データが、画像全体においてどの位置におけるタイルに相当するかを示す情報である。ここでタイル位置は、Y方向の位置を示す情報(PacketIDY3009)とX方向の位置を示す情報(PacketIDX3010)との組み合わせYnXnで表される。
データパケットは画像データが圧縮されている場合と非圧縮の場合とがある。本例では、圧縮アルゴリズムとして、多値カラー(多値グレースケールを含む)の場合はJPEGを、2値の場合はパックビッツを採用するものとする。圧縮されている場合と非圧縮の場合との区別は、CompressFlag3017で示される。
Process Instruction3011は、5ビットのUnitID3019と3ビットのMode3020との組である第1〜第8の処理ユニットを含んで構成され、各処理ユニットは、左(下位)から順番に処理される。処理されたUnitID及びModeは廃棄され、次に処理されるUnitID及びModeが左端に位置するように、Process Instruction3011全体が左に8ビットシフトされる。
Process Instruction3011には、UnitID3019とMode3020との組が最大8組格納される。UnitID3019は、各画像データ処理部を指定する。Mode3020は、各画像データ処理部での動作モードを指定する。これにより、1つの画像データパケットに含まれる(又は指定される)画像データに対して、最大でのべ8つの画像データ処理部による連続処理を指定することが可能である。
PacketByteLength3012はパケットのトータルバイト数を示す情報である。
ImageDataByteLengh3015は画像データのバイト数を示す情報である。
ZdataByteLength3016は画像付加情報のバイト数を示す情報である。
ImageDataOffset3013、ZdataOffset3014はそれぞれ、画像データ及び画像付加情報の、パケットの先頭からのオフセットを示す情報である。
(2)コマンドパケット(図10)
図10に示すコマンドパケットは、レジスタ設定バス2109へのアクセスを行うためのものである。このパケットを用いることにより、CPU2001より画像メモリー2123a、2139bへのアクセスも可能である。また、コマンドパケットは、ヘッダ4001及びコマンド(パケットデータ部)4002を含んで構成される。
このヘッダ4001におけるChipID4004には、コマンドパケットの送信先となる画像処理部2149を表すIDが格納される。
PageID4007及びJobID4008には、それぞれ、ソフトウェアで管理するためのPage ID及びJob IDが格納される。
Packet ID4009は1次元で表され、Data PacketのX-coordinateのみを使用する。
PacketByteLength4010は128Byteで固定である。
一方、コマンド(パケットデータ部)4002には、アドレス4011とデータ4012との組を1つのコマンドとして最大12個のコマンドを格納することが可能である。ライトかリードかのコマンドのタイプはCmdType4005で示され、コマンドの数はCmdnum4006で示される。
(3)インタラプトパケット(図11)
図11に示すインタラプトパケットは、ヘッダ5001及びインタラプトデータ(パケットデータ部)5002を含んでおり、画像処理部2149からCPU2001への割り込みを通知するために用いられる。
ステータス処理部2105は、インタラプトパケットを送信すると、次に送信の許可がされるまではインタラプトパケットを送信してはならない。
PacketByteLength5006は128Byteで固定である。
インタラプトデータ(パケットデータ部)5002には、画像処理部2149の各々の内部モジュールのステータス情報5007が格納されている。ステータス処理部2105は画像処理部2149内のモジュールのステータス情報を集め、一括してシステム制御部2150に送ることができる。
ChipID5004には、インタラプトパケットの送信先となるシステム制御部2150を表すIDが格納される。また、IntChipID5005には、インタラプトパケットの送信元となる画像処理部2149を表すIDが格納される。
[パケットテーブルの構成]
上述した各パケットは、図12に示すようなパケットテーブル6001によって管理される。このパケットテーブル6001は、画像データと対で使用され、画像データが図8に示したRAM2002に展開されている場合は、RAM2002上で管理される。また、画像データが外部記憶装置2004に格納される場合には、このパケットテーブル6001も同時に外部記憶装置2004に格納される。外部記憶装置2004に格納された画像データが再びRAM2002に展開されると、このパケットテーブル6001もRAM2002に読み出され、画像データが展開されるアドレス情報に応じてアドレス情報の書き換えが行われる。
パケットテーブル6001の値(ポインタ及び長さ)に5bit付加すると、パケットの先頭Address(Packet Start Address)、パケットのバイト長(Packet Byte Length)6005となる。即ち、以下の(1)式、及び(2式)が成立する。
Packet Address Pointer(27bit)+5b00000=Packet先頭Address・・・(1)
Packet Length(11bit)+5b00000=Packet Byte Length・・・(2)
尚、パケットテーブル6001とチェーンテーブル(Chain Table)6010とは分割されないものとする。
パケットテーブル6001は、常に走査方向に並んでおり、Yn/Xn=000/000,000/001,000/002,…という順に並んでいる。このパケットテーブル6001のエントリは一意に1つのタイルを示す。また、Yn/Xmaxの次のエントリはYn+1/X0となる。ここで、パケットがひとつ前のパケットとまったく同じデータである場合は、そのパケットはメモリー上に格納されず、パケットテーブル6001のエントリに、1つ前のエントリと同じPacket Address Pointer6002と、Packet Length6005とを格納する。つまり、1つのパケットデータを2つのテーブルエントリが指すようなかたちになる。この場合、2つ目のテーブルエントリのRepeat Flag6003がセットされる。
また、チェーンDMAによりパケットが複数に分断された場合、Divide Flag6004をセットし、そのパケットの先頭部分が入っているチェーンブロックのチェーンテーブル番号(Chain Table No.)6006をセットする。
チェーンテーブル6010のエントリは、Chain Block Address6011とChain Block Length6012とを含んで構成され、チェーンテーブル6010の最後のエントリには、Chain Block Address6011、Chain Block Length6012共に0を格納しておく。
[実際の画像処理]
次に、以上のような従来の画像処理システムで行われる実際の画像処理として変倍処理を例に挙げて詳述する。
なお、以下では、スキャナ2070あるいは外部機器から画像データを事前に取り込み、その画像データはRAM2002にすでに存在するとして説明を行う。
まず、システム制御部2150がRAM2002からタイルデータを読み出し、図9に示したデータパケットを生成し、生成したデータパケットを第1の画像リングインターフェース2147を介して、画像処理部2149へ出力する。このとき、生成されたデータパケットのProcess Instruction3011には、「タイル伸張部2103→変倍処理部2116→タイル圧縮部2016に格納」の順で処理を行うためのデータが格納されている。
次に、システム制御部2150から出力されたデータパケットは、画像リング2008を介して第3の画像リングインターフェース2101に入力される。この第3の画像リングインターフェース2101は第1のタイル伸張部2103を選択して、データパケットを転送する。ここで、第1のタイル伸張部2103の選択は、図3000に示したパケットフォーマットのProcess Instruction3011に従って行われる。
第1のタイル伸張部2103では転送されたデータパケットをJPEG伸張して、非圧縮の画像データに変換する。次に、第1のタイル伸張部2103は、タイルバス2107に対して変倍処理部2116への接続要求を行う。そして、第1のタイル伸張部2103は、タイルバス2107を介して変倍処理部2116に接続されると、データパケットを変倍処理部2116に転送する。
変倍処理部2116は変倍処理を実施する。その後、変倍処理部2116はタイルバス2107に対してタイル圧縮部2016への接続要求を行う。そして、変倍処理部2116はタイルバス2107を介してタイル圧縮部2016に接続されると、データパケットをタイル圧縮部2016に転送する。
タイル圧縮部2016ではデータパケットをJPEG圧縮し、JPEG圧縮したデータパケットを第4の画像リングインターフェース2102に転送する。第4の画像リングインターフェース2102は、画像リング2008bを介して、JPEG圧縮したデータパケットをシステム制御部2150に転送する。そして、システム制御部2150が、転送されてきたデータパケットのタイルデータをRAM2002に格納することによって、一連の変倍処理が終了する。
特開2003−234917号公報
しかしながら、上記従来の画像処理システムにおいては、例えば、1枚の画像内に異なる色情報を持つタイルが混在した場合には、1枚の画像全体を1つの色情報に統一する。このため、統一しようとしている色情報の画像タイル部分を抜き出して、色変換処理を実行した後、希望する画像処理(例えば変倍処理やプリントアウト処理)を実行する必要があり、処理手順が複雑になると同時に処理を行うループ回数が増えるため処理時間がかかるといった問題があった。
本発明は、前述の問題点に鑑みてなされたものであり、異なる色情報を有する画像を編集する際の処理負担を軽減することを目的とする。
本発明の画像処理装置は、複数のタイルに分割された画像を、前記分割されたタイル毎に処理する第1〜第n(nは自然数)の画像処理モジュールを有し、前記第1〜第nの画像処理モジュールの少なくとも1つは、前記画像の色空間を前記タイル単位で変換する色空間変換手段と、前記色空間変換手段で色空間の変換を行うために必要な色変換情報を記録する記録手段とを有し、前記色空間変換手段は、前記色空間の変換対象となるタイルの色情報に基づいて、前記記録手段に記録された色変換情報を読み出して、前記タイルの色空間を変換することを特徴とする。
本発明の画像処理方法は、複数のタイルに分割された画像を、前記分割されたタイル毎に処理する第1〜第n(nは自然数)の画像処理モジュールの少なくとも1つが、前記画像の色空間を前記タイル単位で変換する色空間変換ステップと、前記色空間変換手段で色空間の変換を行うために必要な色変換情報を記録する記録ステップとを行い、前記色空間変換ステップは、前記色空間の変換対象となるタイルの色情報に基づいて、前記記録手段に記録された色変換情報を読み出して、前記タイルの色空間を変換することを特徴とする。
本発明のコンピュータプログラムは、複数のタイルに分割された画像を、前記分割されたタイル毎に処理する第1〜第n(nは自然数)の画像処理モジュールの少なくとも1つが、前記画像の色空間を前記タイル単位で変換する色空間変換ステップと、前記色空間変換手段で色空間の変換を行うために必要な色変換情報を記録する記録ステップとを行うことをコンピュータに実行させ、前記色空間変換ステップは、前記色空間の変換対象となるタイルの色情報に基づいて、前記記録手段に記録された色変換情報を読み出して、前記タイルの色空間を変換することを特徴とする。
本発明によれば、複数のタイルに分割された画像を、前記分割されたタイル毎に処理する第1〜第n(nは自然数)の画像処理モジュールの少なくとも1つが、色空間の変換対象となるタイルの色情報に基づいて、前記色空間の変換を行うために必要な色変換情報を読み出して、前記タイルの色空間を変換するようにしたので、複数の色情報を有する1枚画像を、可及的に高速に処理して、色情報が統一された画像を形成することができる。
次に、図面を参照しながら、本発明の実施形態について説明する。
(第1の実施形態)
図1は、本実施形態の画像処理システムの構成の一例を示すブロック図である。なお、本実施形態の説明において、上述した図8と同一の部分については、図1に付した符号と同一の符号を付し、詳細な説明を省略する。
図1において、12103a、12103bはタイル伸張部、12030は画像回転部、12116は変倍処理部、12113は画像出力インターフェースであり、それらの内部には、それぞれ色情報変換用マトリックス回路101a〜101eが組み込まれている。その他のブロックについては、図8に示したものと同様である。
ここで、図2に示すような画像の編集を行うとする。スキャナより取り込んだA4サイズの画像データ201と、レンダリングにより生成されたA4サイズの画像データ202とを、1枚のA4サイズの用紙に出力する画像データ203を生成することを行うとする。またスキャナで取り込んだ画像はYUVフォーマット、レンダリングインターフェースより取り込まれた画像はRGBフォーマットであるとする。これらの画像は、すでに画像処理システムに取り込まれており、システム制御部2150に接続された外部RAM2002上に格納されているとする。
各画像データ201、202は、各々に示された矢印の方向に矢印の側から反対側へ順にタイル番号が振られ、また、その矢印の方向に画像が生成されているので、出力を行う際に行わなければならない処理としては、スキャナによる画像データ201の回転処理と、両画像データ201、202の色情報をあわせることと、縮小処理とが必要になる。これらの処理を行う場合について以下に詳述する。
まず、システム制御部2150がRAM2002からタイルデータを読み出し、図9に示したデータパケットを生成し、生成したデータパケットを第1の画像リングインターフェース2147を介して、画像処理部2149へ出力する。この場合、タイルの順番がプリント出力の順番となるように、システム制御部2150がデータパケットを出力できるように、CPU2001にてパケットテーブルを生成する。そうすると、スキャナによるイメージは画素の並び順が変わってしまう。このため、画素の並び順を正しくするように(具体的には時計方向に90度)画像データ201を回転するような処理を行う。
つまり、データパケットのProcess Instruction3011に、「タイル伸張部12103→回転処理部12030→変倍処理部12116→画像出力インターフェース2113」の順で処理を行うためのデータを設定し、かつ、回転処理部12030のモードに対してはスキャナによる画像データ201のタイルに対しては90度時計方向の回転していから出力することを、レンダリングによる画像データ202のタイルに対してはそのまま出力することをそれぞれ指定する。
具体的には、第1のUnitIDにタイル伸張部12103のIDが格納され、第2のUnitIDに回転処理部12030のIDが格納され、第3のUnitIDに変倍処理部12116のIDが格納され、第4のUnitIDに画像出力インターフェース2113が格納される。そして、第1のMode、第3のMode、及び第4のModeには各処理部で行われる処理に対応した値が格納され、第2のModeには各タイルの画像ソースに従った値(上記の時計方向90度回転かそのままかの何れかを示す値)が格納される。
次に、各画像処理部にて必要な各種レジスタ設定を、上記コマンドパケットを用いて設定する。このとき、画像回転部12030の出力色情報を、例えばスキャナによる画像データ201と同じYCCフォーマットとするならば、各色情報に対しマトリックス処理後の色情報がYCCとなるような設定を、画像回転部12030の色情報変換マトリックス回路101に対して行う。
すべての設定が終了したらシステム制御部2150からデータの出力を開始する。
システム制御部2150から出力されたデータパケットは、画像リング2008aを介して第3の画像リングインターフェース2101に入力される。この第3の画像リングインターフェース2101は、第1のタイル伸張部12103aを選択して、データパケットを転送する。ここで、第1のタイル伸張部12103aの選択は、図9に示したパケットフォーマットのProcess Instruction3011に従って行われる。
第1のタイル伸張部12103aは、転送されたデータパケットをJPEG伸張して、非圧縮の画像データに変換する。次に、第1のタイル伸張部12103aは、タイルバス2107に対して画像回転部12030への接続要求を行う。そして、第1のタイル伸張部12103aは、タイルバス2107を介して画像回転部12030に接続されると、データパケットを画像回転部12030に転送する。
画像回転部12030は、Modeに設定されたタイルヘッダーの色情報に応じたマトリックス演算を、画像回転部12030内に設けられた色情報変換用マトリックス回路101で実施して、回転処理を実行すべく画素の並び替えを行う。そして、タイルの位置情報PacketIDY3009とPacketIDX3010とを、回転処理した後の正しい値に設定し直してから、タイルバス2107に対して変倍処理部12116への接続要求を行う。そして、画像回転部12030から変倍処理部12116への接続がなされると、データパケットを変倍処理部12116に転送する。
変倍処理部12116は、先に設定された変倍率に従って画像回転部12030から入力された画像データに対して変倍処理を行い、その出力を転送するためにタイルバス2107に対して画像出力インターフェース12113への接続要求を行う。そして、変倍処理部12116から画像出力インターフェース12113への接続がなされるとデータパケットを画像出力インターフェース12113に転送する。
画像出力インターフェース12113は、変倍処理部12116より転送された画像データを、メモリーバス2108を介してメモリー制御部2122に転送しタイル形式からラスタ形式に戻した後プリンタインターフェースを介してプリンタ用画像処理部2115に画像データを出力し、一連の処理を終了する。
図3は、色情報変換マトリックス回路101の構成の一例を示すブロック図である。
図3において、301は係数選択回路、302は行列演算回路である。係数選択回路301には、レジスタ設定バス2109を用いて被変換色情報ごとに変換に必要な係数値が予め設定されており、変換すべきタイルが入力されると、そのタイルの色情報が入力され、その色情報に基づいた適切な変換係数が選択され、行列演算回路302へ出力される。
行列演算回路302は係数選択回路301にて選択された係数値と、入力された画像データの値とを用いて演算を行い、その結果を出力するものである。
行列演算回路302の具体例を図4に示す。ここまでは、RGB形式の色情報をYCC形式の色情報に変換する場合を例に挙げて説明してきたが、図4に示す行列演算回路302では、例えばCMYK形式の色情報であってもよいように4つの入力とした例を示している。行列演算回路302は、図4では以下の(3)式に示すマトリックス演算を実行するように、乗算回路17と加算回路18とを備えた4つの行列演算回路302a〜302dを備えている。
Figure 2006287604
また、図4では、入力についてはW=R、X=G、Y=Bとして記してあり、Zは今回の例では0に固定される。一方、出力側はW'=Y、X'=Cr、Y'=Cbとして記してありZ'は今回の例では未使用である。
図5に、係数選択回路301の構成の一例を示す。
図5において、501は一致検出回路、502はデコーダ回路、503は選択回路である。一致選択回路501は、レジスタ設定バス2109を用いて予め設定されている係数値と、その係数値を用いるImage Typeコード値とが予め設定されており、入力されたタイルのImage Typeコードと一致するImage Typeコードが設定されているデコード前の選択信号として「1」を出力する。デコード回路502は一致検出回路501からの信号をデコードし、その結果を選択回路503に出力する。選択回路503はデコード回路502の結果に基づき対応する係数値を行列演算回路302に与えるものである。
以下にImage Typeと色情報との対応例と、設定例とを示す。
Figure 2006287604
つまり、スキャナ2070による画像はYCC色情報であるので上記表では選択信号として「1」が選択され、その場合の系数値(この場合何も行わないような係数値が設定される)が選択される。一方、レンダリングによる画像はRGB色情報であるので、上記表では選択信号として「0」が選択され、行列演算回路302に設定される係数値はRGBからYCCへの色情報変換が行われるような系数値が与えられる。
以上のように本実施形態では、複数の異なる色情報を有する1枚の入力画像を複数のタイルに分割し、分割したタイル単位で画像データを処理するに際し、係数選択回路301は、変換される色情報ごとに設定された変換用の係数値のうちの1つを、入力したタイルの色情報に基づいて選択し、選択した係数値と、入力された画像データの値とを用いて行列演算回路302が演算を行い、色情報を変換するようにしたので、複数の異なる色情報を有する1枚の入力画像を1つの色情報に統一することが、1つのパスにて実現できるようになる。これにより、入力画像を編集する際の処理負担を軽減し、処理速度を向上させることが可能になる。
(第1の変形例)
本実施形態では回転処理を伴うため、画像回転部12030にて2つの異なる色情報の統一を行ったが、色情報の統一を行う場所は画像回転部12030に限定されるものではなく処理過程における適する個所にて行えばよい。例えば、図6のように向きもそろった2つの異なる色情報の画像を、大きさも向きも変えずただA3サイズに出力する場合には、タイル伸張部12103あるいは画像出力インターフェース12113にて色情報の統一を行えばよい。
(第2の変形例)
また、1つの色情報変換用マトリックス回路101ですべての色情報を1つに統一する必要はない。つまり、1枚の被処理画像が3つの異なる色情報領域を有し、その中の1つの色情報に統一した処理結果画像を単にプリントアウトする場合を考えた場合、例えば、第1の領域における色情報の変更をタイル伸張部12103にて行い、もう1つの変更すべき第2の領域における色情報の変更を画像出力インターフェース12113にて行わせることも可能である。この場合、各画像処理部内の色情報変換用マトリックス回路101には、予め設定された変換すべき色情報と、その場合に用いられるマトリックス係数のみを格納すればよい。このため、複数の画像処理部にて同じ係数を格納する必要がなくなり、回路規模の増大を抑えながら上述した実施形態と同様な効果が得られる。
図7は、このようにする場合の係数選択回路の構成のブロック図である。図7において、一致検出回路701は、レジスタ設定バス2109にて予め設定されたImage Typeと、タイルにて入力されたImage Typeとが一致するかどうかだけを判断すればよい。また、選択回路703は、レジスタ設定バス2109にて予め設定された変換用系数値、あるいは同じくレジスタ設定バス2109にて予め設定された変換用係数値または固定の無変換用の係数値のどちらかを出力する。
また、一致検出回路701からの出力により、行列演算回路302の出力、あるいは行列演算回路302の入力(つまりスルー)のどちらかを選択させることも可能である。
(本発明の他の実施形態)
上述した実施形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置あるいはシステム内のコンピュータに対し、前記実施形態の機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータ(CPUあるいはMPU)に格納されたプログラムに従って前記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
また、この場合、前記ソフトウェアのプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコード自体、及びそのプログラムコードをコンピュータに供給するための手段、例えば、かかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
また、コンピュータが供給されたプログラムコードを実行することにより、上述の実施形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼働しているOS(オペレーティングシステム)あるいは他のアプリケーションソフト等と共同して上述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって上述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。
本発明の実施形態を示し、画像処理システムの構成の一例を示すブロック図である。 本発明の実施形態を示し、編集を行う画像データの一例を示した図である。 本発明の実施形態を示し、色情報変換マトリックス回路の構成の一例を示すブロック図である。 本発明の実施形態を示し、行列演算回路の構成の一例を示す図である。 本発明の実施形態を示し、係数選択回路の構成の一例を示す図である。 本発明の実施形態の第1の変形例を示し、編集を行う画像データの一例を示した図である。 本発明の実施形態の第2の変形例を示し、係数選択回路の構成の一例を示す図である。 従来の技術を示し、画像処理システムの構成を示すブロック図である。 従来の技術を示し、データパケットの構成を概念的に示した図である。 従来の技術を示し、コマンドパケットの構成を概念的に示した図である。 従来の技術を示し、インタラプトパケットの構成を概念的に示した図である。 従来の技術を示し、パケットテーブルの構成を概念的に示した図である。
符号の説明
17 乗算回路
18 加算回路
101 色情報変換用マトリックス回路
201 スキャナより取り込んだ画像データ
202 レンダリングにより生成された画像データ202
203 出力する画像データ
301 係数選択回路
302 行列演算回路
501 一致検出回路
502 デコーダ回路
503 選択回路
12030 画像回転部
12103 タイル伸張部
12113 画像出力インターフェース
12116 変倍処理部

Claims (8)

  1. 複数のタイルに分割された画像を、前記分割されたタイル毎に処理する第1〜第n(nは自然数)の画像処理モジュールを有し、
    前記第1〜第nの画像処理モジュールの少なくとも1つは、
    前記画像の色空間を前記タイル単位で変換する色空間変換手段と、
    前記色空間変換手段で色空間の変換を行うために必要な色変換情報を記録する記録手段とを有し、
    前記色空間変換手段は、前記色空間の変換対象となるタイルの色情報に基づいて、前記記録手段に記録された色変換情報を読み出して、前記タイルの色空間を変換することを特徴とする画像処理装置。
  2. 前記画像を複数のタイルに分割する分割手段を有することを特徴とする請求項1に記載の画像処理装置。
  3. 前記色空間変換手段は、色空間変換用のマトリックス回路を有することを特徴とする請求項1又は2に記載の画像処理装置。
  4. 前記色空間変換手段は、前記色空間変換用のマトリックス回路を有し、
    前記色変換情報は、前記色空間変換用のマトリックス回路で用いられる変換係数であることを特徴とする請求項3に記載の画像処理装置。
  5. 前記変換係数は、前記タイルの色情報に応じて設定されており、
    前記色空間変換手段は、前記色空間の変換対象となるタイルの色情報に応じて前記変換係数を選択し、選択した変換係数を用いて、前記タイルの色空間を変換することを特徴とする請求項4に記載の画像処理装置。
  6. 前記色空間変換手段により色空間が変換されたタイルを少なくとも1つ含む複数のタイルを用いて画像を形成する画像形成手段を有することを特徴とする請求項1〜5の何れか1項に記載の画像処理装置。
  7. 複数のタイルに分割された画像を、前記分割されたタイル毎に処理する第1〜第n(nは自然数)の画像処理モジュールの少なくとも1つが、
    前記画像の色空間を前記タイル単位で変換する色空間変換ステップと、
    前記色空間変換手段で色空間の変換を行うために必要な色変換情報を記録する記録ステップとを行い、
    前記色空間変換ステップは、前記色空間の変換対象となるタイルの色情報に基づいて、前記記録手段に記録された色変換情報を読み出して、前記タイルの色空間を変換することを特徴とする画像処理方法。
  8. 複数のタイルに分割された画像を、前記分割されたタイル毎に処理する第1〜第n(nは自然数)の画像処理モジュールの少なくとも1つが、
    前記画像の色空間を前記タイル単位で変換する色空間変換ステップと、
    前記色空間変換手段で色空間の変換を行うために必要な色変換情報を記録する記録ステップとを行うことをコンピュータに実行させ、
    前記色空間変換ステップは、前記色空間の変換対象となるタイルの色情報に基づいて、前記記録手段に記録された色変換情報を読み出して、前記タイルの色空間を変換することを特徴とするコンピュータプログラム。
JP2005104511A 2005-03-31 2005-03-31 画像処理装置、画像処理方法、及びコンピュータプログラム Pending JP2006287604A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005104511A JP2006287604A (ja) 2005-03-31 2005-03-31 画像処理装置、画像処理方法、及びコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005104511A JP2006287604A (ja) 2005-03-31 2005-03-31 画像処理装置、画像処理方法、及びコンピュータプログラム

Publications (1)

Publication Number Publication Date
JP2006287604A true JP2006287604A (ja) 2006-10-19

Family

ID=37409034

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005104511A Pending JP2006287604A (ja) 2005-03-31 2005-03-31 画像処理装置、画像処理方法、及びコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP2006287604A (ja)

Similar Documents

Publication Publication Date Title
US7468803B2 (en) Image processing apparatus and image processing method
JP4065503B2 (ja) 画像処理装置、画像入出力装置、変倍処理方法、及びメモリ制御方法
US7130072B2 (en) Multifunction system, image processing method, computer program and memory medium
JP5501041B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP2008104164A (ja) 画像処理装置及び画像処理方法
US7447384B2 (en) Image processing method and apparatus
JP2003316714A (ja) 情報処理装置及び方法
JP3907471B2 (ja) 画像入出力制御装置
JP2004221998A (ja) 画像処理装置
US20020054342A1 (en) Image processing apparatus and method, and storage medium
JP4065550B2 (ja) 画像入出力制御装置、画像処理装置、画像入出力制御装置における画像処理方法、及び画像処理装置における画像処理方法
JP2006287604A (ja) 画像処理装置、画像処理方法、及びコンピュータプログラム
JP5441676B2 (ja) 画像処理装置及びその処理方法
JP2005045458A (ja) 画像圧縮方法、画像圧縮装置
JP5538996B2 (ja) 画像処理装置、画像処理方法、プログラム、および記憶媒体
JP4136573B2 (ja) 画像処理方法、画像処理装置、プログラム及び記録媒体
JP2003348355A (ja) 画像処理装置及びその制御方法
JP2003241983A (ja) 情報処理装置及び情報処理方法
JP3703431B2 (ja) データ通信装置、画像処理装置、データ通信方法、及び画像処理装置におけるデータ通信方法
JP2003348338A (ja) 情報処理装置
JP2004157609A (ja) 画像処理装置および画像処理システム
JP2004253906A (ja) 伸長装置
JP2003078770A (ja) 画像処理方法及びその装置
JP2006041901A (ja) 画像処理方式
JP3214617B2 (ja) 多値画像プリンタ