JP5534722B2 - Image processing apparatus and processing method thereof - Google Patents

Image processing apparatus and processing method thereof Download PDF

Info

Publication number
JP5534722B2
JP5534722B2 JP2009149176A JP2009149176A JP5534722B2 JP 5534722 B2 JP5534722 B2 JP 5534722B2 JP 2009149176 A JP2009149176 A JP 2009149176A JP 2009149176 A JP2009149176 A JP 2009149176A JP 5534722 B2 JP5534722 B2 JP 5534722B2
Authority
JP
Japan
Prior art keywords
processing
attribute value
data
image
image processing
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.)
Active
Application number
JP2009149176A
Other languages
Japanese (ja)
Other versions
JP2011008357A5 (en
JP2011008357A (en
Inventor
顕季 山田
光洋 小野
文孝 後藤
理恵 梶原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2009149176A priority Critical patent/JP5534722B2/en
Publication of JP2011008357A publication Critical patent/JP2011008357A/en
Publication of JP2011008357A5 publication Critical patent/JP2011008357A5/ja
Application granted granted Critical
Publication of JP5534722B2 publication Critical patent/JP5534722B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Color, Gradation (AREA)
  • Image Processing (AREA)
  • Record Information Processing For Printing (AREA)

Description

本発明は、画像処理装置及びその処理方法に関する。   The present invention relates to an image processing apparatus and a processing method thereof.

記録媒体に対して文字や画像等の情報を記録する記録装置が知られている。記録方式としては、例えば、インクを用いて記録を行なうインクジェット記録方式がある。近年、このようなインクジェット記録方式を採用した複合機(以下、インクジェット複合機と呼ぶ)が普及している。インクジェット複合機の特徴としては、普通紙へのコピーと写真用紙へのダイレクトプリントの両方が1台の装置で実現できるという点が挙げられる。   Recording apparatuses that record information such as characters and images on a recording medium are known. As a recording method, for example, there is an ink jet recording method in which recording is performed using ink. In recent years, multi-function machines (hereinafter referred to as “ink-jet multi-function machines”) that employ such an ink jet recording method have become widespread. A feature of the inkjet multifunction device is that both copying to plain paper and direct printing to photographic paper can be realized by a single device.

さて、記録速度の向上に伴って画像処理の高速化が要求されている。画像処理は、ハードウェア又はソフトウェアで実現される。ハードウェア規模とコストは、原則的に比例関係にあり、顧客満足度を上げるために機能を向上させつつ製品価格を下げるには、ハードウェアのコストを抑えたままその処理能力を向上させる必要がある。そこで、仕様用途に応じて柔軟に処理を変更するハードウェア技術が提案されている(特許文献1参照)。   Now, with the improvement in recording speed, it is required to increase the image processing speed. Image processing is realized by hardware or software. Hardware scale and cost are in principle proportional to each other, and in order to improve functionality and reduce product price to increase customer satisfaction, it is necessary to improve its processing power while keeping hardware costs low. is there. Therefore, a hardware technique for flexibly changing the process according to the specification application has been proposed (see Patent Document 1).

一般に、コピーでは、文字加工等の処理が行なわれている。文字加工処理は、例えば、文字部をエッジ強調することによる網点部分への弊害を抑えるために行なわれる。そのため、この処理では、文字エリアと網点エリアとを判定してエリアそれぞれに合わせた画像処理を実行する必要がある(特許文献2参照)。   In general, processing such as character processing is performed in copying. The character processing is performed, for example, in order to suppress an adverse effect on a halftone dot portion due to edge enhancement of the character portion. Therefore, in this process, it is necessary to determine a character area and a halftone dot area and execute image processing in accordance with each area (see Patent Document 2).

また、写真画像の記録(いわゆる、写真印刷)に際しては、覆い焼き処理等が行なわれている。覆い焼きでは、逆光状態の被写体の明度を適切にしつつ、背景部分への弊害を抑えるために、被写体とそれ以外のエリアとを判定してエリアそれぞれに合わせた処理を実行する必要がある(特許文献3参照)。同様に、フラッシュ撮影時の赤目を除去する赤目補正処理や、写真撮影時の暗部ノイズ等を除去するノイズ補正処理等においても、画像全体に対して画一的な処理を行なわない。すなわち、画質が良好な部分への弊害を抑えつつ、特定の弊害発生個所に対して補正処理を実施する必要がある(特許文献4、特許文献5参照)。   Further, when recording a photographic image (so-called photographic printing), a dodging process or the like is performed. In dodging, it is necessary to determine the subject and the other areas and execute processing according to each area in order to reduce the adverse effects on the background while making the brightness of the subject in the backlighting state appropriate (patent) Reference 3). Similarly, uniform processing is not performed on the entire image in red-eye correction processing for removing red eyes at the time of flash photography, noise correction processing for removing dark portion noise at the time of photography, or the like. That is, it is necessary to carry out correction processing for a specific problem occurrence place while suppressing the problem on a portion with good image quality (see Patent Documents 4 and 5).

特開2006−178546号公報JP 2006-178546 A 特開2002−77623号公報JP 2002-77623 A 特開平9−18704号公報Japanese Patent Laid-Open No. 9-18704 特開平11−355591号公報JP-A-11-355591 特開2004−15322号公報JP 2004-15322 A

コピーや写真印刷等に際して、上述した画像処理(すなわち、エリアに応じた画像処理)を高速化する場合、一般に、それぞれ専用の回路を設ける。そのため、例えば、インクジェット複合機のようにコピー機能と写真印刷機能とを備えた装置においては、両方の回路を搭載する必要があり、コストアップを避けられない。   In the case of speeding up the above-described image processing (that is, image processing corresponding to an area) at the time of copying, photo printing, or the like, a dedicated circuit is generally provided for each. For this reason, for example, in an apparatus having a copy function and a photo printing function such as an inkjet multifunction peripheral, both circuits need to be mounted, and an increase in cost is inevitable.

本発明は、上記課題に鑑みてなされたものであり、画像を表す画像データを含む処理用データを順次処理する複数の処理手段を用いて種々の処理を行えるようにした技術を提供することを目的とする。 The present invention has been made in view of the above-described problems, and provides a technique capable of performing various processes using a plurality of processing units that sequentially process processing data including image data representing an image. Objective.

上記課題を解決するため、本発明の一態様の画像処理装置は、画像を表す画像データ、または画像を表す画像データ及び当該画像データの処理内容を表す属性データを含む処理用データを入力する入力手段と、前記入力手段により入力された処理用データを順次処理する複数の処理手段と、を有し、前記複数の処理手段のうちの少なくとも1つの処理手段は、前記入力手段により入力された処理用データに含まれる画像データの処理と、前記画像データの処理により得られた結果を用いて当該処理手段以降の処理手段が当該画像データを処理するための属性データを新たに設定する処理と、を行って、処理済みのデータとして処理用データを出力することが可能であることを特徴とする。 In order to solve the above problems, an image processing apparatus according to one embodiment of the present invention inputs image data representing an image, or processing data including image data representing an image and attribute data representing processing content of the image data. And a plurality of processing means for sequentially processing the processing data input by the input means, wherein at least one of the plurality of processing means is a process input by the input means. Processing of image data included in the image data, processing for newly setting attribute data for processing means subsequent to the processing means using the result obtained by processing the image data, and processing the image data; And processing data can be output as processed data.

本発明によれば、複数の処理手段のそれぞれ毎に、画像を表す画像データを含む処理用データを順次処理する複数の処理手段を用いて種々の処理を行うことができる。 According to the present invention, various processes can be performed using a plurality of processing units that sequentially process processing data including image data representing an image for each of the plurality of processing units.

画像処理装置100の概略構成を示す斜視図。1 is a perspective view showing a schematic configuration of an image processing apparatus 100. FIG. 図1に示す画像処理装置100の制御部(不図示)の一例を示す図。FIG. 2 is a diagram showing an example of a control unit (not shown) of the image processing apparatus 100 shown in FIG. 1. 図2に示す画像処理モジュール4の構成の一例を示す図。The figure which shows an example of a structure of the image processing module 4 shown in FIG. 本実施形態に係わる処理用画像データのフォーマットの一例を示す図。The figure which shows an example of the format of the image data for a process concerning this embodiment. サブモジュールの構成の一例を示す図。The figure which shows an example of a structure of a submodule. 属性値伝達ラッパー層110を設けた構成の一例を示す図。The figure which shows an example of the structure which provided the attribute value transmission wrapper layer. 実施形態1を説明するための概略構成図。FIG. 2 is a schematic configuration diagram for explaining the first embodiment. 図7に示す構成における画像処理の流れの一例を示すフローチャート。8 is a flowchart showing an example of the flow of image processing in the configuration shown in FIG. 実施形態2を説明するための概略構成図。FIG. 5 is a schematic configuration diagram for explaining a second embodiment. 実施形態3を説明するための概略構成図。FIG. 5 is a schematic configuration diagram for explaining a third embodiment. 実施形態4を説明するための概略構成図。FIG. 6 is a schematic configuration diagram for explaining a fourth embodiment. 実施形態5を説明するための概略構成図。FIG. 6 is a schematic configuration diagram for explaining a fifth embodiment.

以下、本発明に係わる画像処理装置及びその処理方法の一実施の形態について添付図面を参照して詳細に説明する。なお、以下の説明においては、インクジェット記録方式を採用した画像処理装置を例に挙げて説明するが、これに限られず、例えば、色材にトナーを用いる電子写真方式を採用してもよい。   DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, an embodiment of an image processing apparatus and a processing method thereof according to the present invention will be described in detail with reference to the accompanying drawings. In the following description, an image processing apparatus adopting an ink jet recording method will be described as an example. However, the present invention is not limited to this. For example, an electrophotographic method using toner as a color material may be adopted.

また、画像処理装置は、例えば、記録機能のみを有するシングルファンクションプリンタであってもよいし、また、例えば、記録機能、FAX機能、スキャナ機能等の複数の機能を有するマルチファンクションプリンタであってもよい。また、例えば、カラーフィルタ、電子デバイス、光学デバイス、微小構造物等を所定の記録方式で製造するための製造装置であってもよい。   The image processing apparatus may be, for example, a single function printer having only a recording function, or may be, for example, a multi-function printer having a plurality of functions such as a recording function, a FAX function, and a scanner function. Good. In addition, for example, a manufacturing apparatus for manufacturing a color filter, an electronic device, an optical device, a minute structure, and the like by a predetermined recording method may be used.

なお、以下の説明において、「記録」とは、文字、図形等有意の情報を形成する場合のみならず、有意無意を問わない。更に人間が視覚で知覚し得るように顕在化したものであるか否かも問わず、広く記録媒体上に画像、模様、パターン、構造物等を形成する、又は媒体の加工を行なう場合も表す。   In the following description, “recording” is not limited to the case where significant information such as characters and figures is formed, and it does not matter whether it is significant. Further, it also represents a case where an image, a pattern, a pattern, a structure, or the like is widely formed on a recording medium or a medium is processed regardless of whether or not it is manifested so that a human can perceive it visually.

また、「記録媒体」とは、一般的な記録装置で用いられる紙のみならず、布、プラスチック・フィルム、金属板、ガラス、セラミックス、樹脂、木材、皮革等、インクを受容可能なものも表す。   “Recording medium” represents not only paper used in general recording apparatuses but also cloth, plastic film, metal plate, glass, ceramics, resin, wood, leather, and the like that can accept ink. .

更に、「インク」とは、上記「記録」の定義と同様広く解釈されるべきものである。従って、記録媒体上に付与されることによって、画像、模様、パターン等の形成又は記録媒体の加工、或いはインクの処理(例えば、記録媒体に付与されるインク中の色剤の凝固又は不溶化)に供され得る液体を表す。   Further, “ink” should be interpreted widely as in the definition of “recording”. Therefore, by being applied on the recording medium, it is used for forming an image, pattern, pattern, etc., processing the recording medium, or processing the ink (for example, coagulation or insolubilization of the colorant in the ink applied to the recording medium). Represents a liquid that can be provided.

図1は、本発明の一実施の形態に係わる画像処理装置100の概略構成を示す斜視図である。   FIG. 1 is a perspective view showing a schematic configuration of an image processing apparatus 100 according to an embodiment of the present invention.

画像処理装置100は、例えば、記録部と、読取部と、制御部(不図示)とを具備して構成される。記録部には、例えば、インクジェットシリアルプリンタが内蔵されており、読取部には、例えば、CCD方式のフラットヘッドスキャナが内蔵されている。   The image processing apparatus 100 includes, for example, a recording unit, a reading unit, and a control unit (not shown). For example, an ink jet serial printer is built in the recording unit, and, for example, a CCD type flat head scanner is built in the reading unit.

読取部は、記録媒体を光学的に走査して記録媒体に形成された画像を読み取る。読取部は、一般に、記録部の上部に設けられている。読取部には、原稿を押えるための上蓋66が設けられている。上蓋66は、ヒンジ(不図示)により回動自在である。一方、記録部には、記録後の記録媒体を装置外に排出する排紙部67や、記録に用いる記録紙などの記録媒体を積載した給紙部68が設けられている。   The reading unit optically scans the recording medium and reads an image formed on the recording medium. The reading unit is generally provided at the top of the recording unit. The reading unit is provided with an upper lid 66 for pressing the document. The upper lid 66 is rotatable by a hinge (not shown). On the other hand, the recording unit is provided with a paper discharge unit 67 for discharging the recording medium after recording to the outside of the apparatus, and a paper feeding unit 68 on which recording media such as recording paper used for recording are stacked.

図1に示すように、記録部は、例えば、ヘッドキャリッジ51、記録ヘッド52、インクタンク53〜56、シャフト57、搬送ローラ59、プラテン50、ヘッドキャリッジモータ(不図示)、搬送モータ(不図示)等を具備して構成される。   As shown in FIG. 1, the recording unit includes, for example, a head carriage 51, a recording head 52, ink tanks 53 to 56, a shaft 57, a conveyance roller 59, a platen 50, a head carriage motor (not shown), and a conveyance motor (not shown). ) And the like.

ヘッドキャリッジ51は、例えば、記録ヘッド52と、黒インクを収容したインクタンク53、シアンインクを収容したインクタンク54、マゼンタインクを収容したインクタンク55、イエロインクを収容したインクタンク56を搭載する。ヘッドキャリッジ51は、シャフト57に沿って矢印B方向に移動する。   The head carriage 51 includes, for example, a recording head 52, an ink tank 53 containing black ink, an ink tank 54 containing cyan ink, an ink tank 55 containing magenta ink, and an ink tank 56 containing yellow ink. . The head carriage 51 moves in the arrow B direction along the shaft 57.

記録ヘッド52は、例えば、熱エネルギを利用してインクを吐出するインクジェット方式により構成される。記録ヘッド52には、発熱抵抗素子から構成される記録素子(以下、ヒータという)やヒータ駆動回路が設けられる。ヒータは、各ノズルに対応して設けられる。発熱抵抗素子を用いたインクジェット記録方式では、発熱抵抗素子に電圧を印加し、発熱抵抗素子近傍のインクを瞬時に沸騰させる。そして、沸騰時のインクの相変化により生じる急激な発泡圧によってインク滴を吐出する。なお、インクの吐出方式はこれに限られず、例えば、ピエゾ素子を用いた方式、静電素子を用いた方式、MEMS素子を用いた方式など、いずれの方式を採用してもよい。   The recording head 52 is configured by, for example, an inkjet method that ejects ink using thermal energy. The recording head 52 is provided with a recording element (hereinafter referred to as a heater) composed of a heating resistor element and a heater driving circuit. A heater is provided corresponding to each nozzle. In an ink jet recording system using a heating resistor element, a voltage is applied to the heating resistor element, and ink near the heating resistor element is boiled instantaneously. Then, ink droplets are ejected by an abrupt foaming pressure generated by a phase change of ink at the time of boiling. The ink ejection method is not limited to this, and any method such as a method using a piezo element, a method using an electrostatic element, or a method using a MEMS element may be adopted.

画像処理装置100は、記録動作に際して、給紙部68内の一番上の記録紙58を搬送ローラ59と駆動モータとを用いてU字状(矢印C)に引き込む。記録紙58の先端が記録ヘッド52の下に到達すると、ヘッドキャリッジ51が矢印B方向に往復移動し、記録紙58に記録ヘッド52からインク液滴を吐出する。これにより、1走査分の記録が行なわれる。画像処理装置100は、搬送ローラ59により1走査分に相当する長さ分、記録紙58を搬送した後、再度、ヘッドキャリッジ51を走査させ、記録を行なう。この動作が繰り返し実施されることにより記録が行なわれる。記録媒体に対する記録が終わると、画像処理装置100は、記録紙58を排紙部67上に排紙する。これにより、記録動作が終了する。   In the recording operation, the image processing apparatus 100 draws the uppermost recording sheet 58 in the sheet feeding unit 68 into a U shape (arrow C) using the conveyance roller 59 and a drive motor. When the leading edge of the recording paper 58 reaches below the recording head 52, the head carriage 51 reciprocates in the direction of arrow B, and ink droplets are ejected from the recording head 52 onto the recording paper 58. Thereby, recording for one scan is performed. The image processing apparatus 100 transports the recording paper 58 by a length corresponding to one scan by the transport roller 59, and then scans the head carriage 51 again to perform recording. Recording is performed by repeating this operation. When the recording on the recording medium is completed, the image processing apparatus 100 discharges the recording paper 58 onto the paper discharge unit 67. Thereby, the recording operation ends.

図2は、図1に示す画像処理装置100の制御部(不図示)の一例を示す図である。   FIG. 2 is a diagram illustrating an example of a control unit (not shown) of the image processing apparatus 100 illustrated in FIG.

CPU1は、画像処理装置100における処理を統括的に制御する。ROM2は、プログラム等を格納する。RAM7は、画像の展開領域やプログラム実行のための作業用領域等として用いられる。特殊用途集積回路(ASIC)30は、例えば、記録ヘッド52を制御するための制御信号を生成する。ASIC30には、画像処理モジュール4−1〜4−mがm個(mは1以上の整数)設けられており、各種画像処理を行なう(以下、これらを総称する場合、画像処理モジュール4と呼ぶ)。詳細については後述するが、画像処理モジュール各々には、コンフィグレーションレジスタ101−1〜101−mがm個(mは1以上の整数)が設けられている(以下、これらを総称する場合、コンフィグレーションレジスタ101と呼ぶ)。   The CPU 1 comprehensively controls processing in the image processing apparatus 100. The ROM 2 stores programs and the like. The RAM 7 is used as an image development area, a work area for program execution, and the like. The special application integrated circuit (ASIC) 30 generates a control signal for controlling the recording head 52, for example. The ASIC 30 is provided with m image processing modules 4-1 to 4 -m (where m is an integer equal to or greater than 1), and performs various types of image processing (hereinafter collectively referred to as the image processing module 4). ). Although details will be described later, each of the image processing modules is provided with m configuration registers 101-1 to 101-m (m is an integer of 1 or more). Called the registration register 101).

アービタ5は、RAM7へのアクセスを調停する。RAMインターフェース6は、RAM7とのインターフェースである。ヘッドインターフェース8は、記録ヘッド52とのインターフェースである。なお、本実施形態においては、CPU1と、各画像処理モジュール4−1〜4−mとによりRAM7を共有して使用する場合を例に挙げて説明するが、CPU1専用のRAMを別途設けてもよい。   The arbiter 5 arbitrates access to the RAM 7. The RAM interface 6 is an interface with the RAM 7. The head interface 8 is an interface with the recording head 52. In the present embodiment, the case where the RAM 7 is shared and used by the CPU 1 and each of the image processing modules 4-1 to 4 -m will be described as an example, but a RAM dedicated to the CPU 1 may be provided separately. Good.

ここで、処理対象となる画像を受信した時の画像処理装置100の動作について説明する。画像処理装置100は、I/Oポート9において、画像を受信すると、バスブリッジ3、アービタ5、RAMインターフェース6を介して当該受信した画像をRAM7に格納する。この処理は、例えば、CPU1が、ROM2に格納されたプログラムに従うことにより実行される。   Here, the operation of the image processing apparatus 100 when an image to be processed is received will be described. When the image processing apparatus 100 receives an image at the I / O port 9, the image processing apparatus 100 stores the received image in the RAM 7 via the bus bridge 3, the arbiter 5, and the RAM interface 6. This process is executed by the CPU 1 following a program stored in the ROM 2, for example.

画像の格納が済むと、画像処理装置100は、CPU1において、画像処理モジュール4−1のコンフィグレーションレジスタ(以下、単にレジスタと呼ぶ)101−1にパラメータを設定する。このパラメータの設定に伴って画像処理モジュール4−1は、動作を開始する。なお、レジスタ101には、画像処理モジュールを動作制御するためのパラメータが保持される。レジスタ101には、例えば、データが格納されたRAM7内のアドレス範囲や、処理後のデータの格納先となるRAM7内のアドレス範囲等が保持される。   When the image is stored, the image processing apparatus 100 sets parameters in the configuration register (hereinafter simply referred to as a register) 101-1 of the image processing module 4-1, in the CPU 1. As the parameter is set, the image processing module 4-1 starts operation. The register 101 holds parameters for controlling the operation of the image processing module. The register 101 holds, for example, an address range in the RAM 7 in which data is stored, an address range in the RAM 7 that is a storage destination of processed data, and the like.

レジスタ101−1にパラメータが設定されると、画像処理モジュール4−1は、当該設定されたパラメータ(この場合、アドレス範囲)に従ってRAM7からデータを読み出したり、また、RAM7にデータを書き込んだりする。画像処理モジュール4−1は、このパラメータに従って処理を実施する。処理が終了すると、画像処理モジュール4−1は、割り込みを発生し、その旨をCPU1へ通知する。   When a parameter is set in the register 101-1, the image processing module 4-1 reads data from the RAM 7 or writes data to the RAM 7 in accordance with the set parameter (in this case, an address range). The image processing module 4-1 performs processing according to this parameter. When the processing ends, the image processing module 4-1 generates an interrupt and notifies the CPU 1 to that effect.

割り込みの通知を受けたCPU1は、その割込要因を解析する。ここで、読出処理の終了に伴って送られてきた通知であれば、CPU1は、次のデータの読出アドレス範囲をレジスタ101−1に設定し、画像処理モジュール4−1の処理を続行させる。また、書込処理の終了に伴って送られてきた通知であれば、CPU1は、処理後のデータの格納先となるアドレス範囲をレジスタ101−1に設定し、画像処理モジュール4−1の処理を続行させる。このとき、CPU1は、画像処理モジュール4−2のレジスタ101−2にパラメータを設定し、画像処理モジュール4−2に動作を開始させる。   Receiving the interrupt notification, the CPU 1 analyzes the interrupt factor. Here, if the notification is sent along with the end of the reading process, the CPU 1 sets the reading address range of the next data in the register 101-1, and causes the image processing module 4-1 to continue the processing. If it is a notification sent along with the end of the writing process, the CPU 1 sets an address range as a storage destination of the processed data in the register 101-1, and processes the image processing module 4-1. To continue. At this time, the CPU 1 sets a parameter in the register 101-2 of the image processing module 4-2, and causes the image processing module 4-2 to start operation.

パラメータの設定に伴って画像処理モジュール4−2は、画像処理モジュール4−1同様に処理を開始する。そして、画像処理モジュール4−2は、上述した読出処理又は書込処理が終了すると、割り込みを発生し、その旨をCPU1へ通知する。その後、上記同様の処理が行なわれ、例えば、画像処理モジュール4−3の動作が開始する。このように画像処理装置100においては、ある画像処理モジュール4による処理が終わると、次の画像処理モジュール4が起動し、処理データが次々と各画像処理モジュール4に受け渡される。これにより、画像処理モジュール4を単位としたパイプラインが実現される。   As the parameters are set, the image processing module 4-2 starts processing in the same manner as the image processing module 4-1. Then, when the above-described reading process or writing process ends, the image processing module 4-2 generates an interrupt and notifies the CPU 1 to that effect. Thereafter, the same processing as described above is performed, and for example, the operation of the image processing module 4-3 is started. In this way, in the image processing apparatus 100, when the processing by a certain image processing module 4 is completed, the next image processing module 4 is activated, and the processing data is successively transferred to each image processing module 4. Thereby, a pipeline with the image processing module 4 as a unit is realized.

1つの画像処理モジュール4において、CPU1により指示された画像処理の実行が開始されてから当該画像処理モジュール4が画像処理を終了し、処理後のデータの出力が可能となるまでの間に、他の画像処理モジュール4でも並行して処理を行なえる。具体的には、RAM7から他の画像処理モジュール4へのデータの入力及び当該他の画像処理モジュールで処理が終了したデータのRAM7への出力を行なえる。更に、画像処理モジュール4は、他の画像処理モジュール4と独立して画像処理を行なうため、複数の画像処理モジュール4を並行して動作させることができ、複数の画像処理を同時に進行させることができる。   In one image processing module 4, after the execution of the image processing instructed by the CPU 1 is started, the image processing module 4 ends the image processing and the output of the processed data becomes possible. The image processing module 4 can also perform processing in parallel. Specifically, data can be input from the RAM 7 to the other image processing module 4 and data processed by the other image processing module can be output to the RAM 7. Furthermore, since the image processing module 4 performs image processing independently of the other image processing modules 4, the plurality of image processing modules 4 can be operated in parallel, and a plurality of image processing can proceed simultaneously. it can.

以上のようにして画像処理モジュール4−m−1まで処理が進み、所定サイズ以上のビットマップデータが生成されると、CPU1は、記録部を起動させる。画像処理モジュール4−mは、記録部の同期信号に合わせてビットマップデータを記録部へ送る。これにより、記録媒体に画像が記録される。   When the processing proceeds to the image processing module 4-m-1 as described above and bitmap data having a predetermined size or more is generated, the CPU 1 activates the recording unit. The image processing module 4-m sends bitmap data to the recording unit in accordance with the synchronization signal of the recording unit. Thereby, an image is recorded on the recording medium.

図3は、図2に示す画像処理モジュール4の内部構成の一例を示す図である。   FIG. 3 is a diagram showing an example of the internal configuration of the image processing module 4 shown in FIG.

画像処理モジュール4は、リードバッファ10と、サブモジュール11−1〜11−n(これらを総称する場合、サブモジュール11と呼ぶ)と、ライトバッファ12と、アービタ13と、リードアドレス生成部14とを具備して構成される。また更に、画像処理モジュール4には、割込制御部15と、ライトアドレス生成部16と、スイッチマトリクス17と、レジスタ101と、クロック分配部102と、電源供給部103とが設けられる。   The image processing module 4 includes a read buffer 10, submodules 11-1 to 11 -n (referred to collectively as submodule 11), a write buffer 12, an arbiter 13, and a read address generation unit 14. It is comprised and comprises. Further, the image processing module 4 is provided with an interrupt control unit 15, a write address generation unit 16, a switch matrix 17, a register 101, a clock distribution unit 102, and a power supply unit 103.

レジスタ(コンフィグレーションレジスタ)101には、スイッチマトリクス17、リードアドレス生成部14やライトアドレス生成部16、等の動作に係わるパラメータが設定される。クロック分配部102は、装置のクロックパルスclkを画像処理モジュール4内の各部へ分配する。クロック分配部102は、レジスタ101の設定により、任意のサブモジュール11へのクロックclkの供給を停止できる。電源供給部103は、画像処理モジュール4内の各部への電源供給を制御する。電源供給部103は、レジスタ101の設定により、任意のサブモジュールへの電源供給を停止できる。スイッチマトリクス17では、予め決められた順番で複数のサブモジュール11に対してデータを順次入力する。これにより、処理対象となるデータに対して実施すべき一連の画像処理を複数のサブモジュール11を用いて実施する。   In the register (configuration register) 101, parameters related to operations of the switch matrix 17, the read address generation unit 14, the write address generation unit 16, and the like are set. The clock distribution unit 102 distributes the clock pulse clk of the apparatus to each unit in the image processing module 4. The clock distribution unit 102 can stop the supply of the clock clk to an arbitrary submodule 11 by setting the register 101. The power supply unit 103 controls power supply to each unit in the image processing module 4. The power supply unit 103 can stop power supply to an arbitrary submodule by setting the register 101. In the switch matrix 17, data is sequentially input to the plurality of submodules 11 in a predetermined order. Accordingly, a series of image processing to be performed on the data to be processed is performed using the plurality of submodules 11.

スイッチマトリクス17が、複数のサブモジュール11に対して処理用画像データを入力する順番は、予め決められている。この順番は、例えば、リードバッファ10、サブモジュール1、サブモジュール2、・・・、サブモジュールn、ライトバッファ12のように固定的に決めることができる。これにより、スイッチマトリクス17は、常に決められた順にサブモジュール間で処理用画像データを移動させればその役割を果たせるので、スイッチマトリクス17の構成を簡略化できる。画像処理モジュール4内の各サブモジュール間での処理用画像データの入力順番が固定されていたとしても、CPU1において、各サブモジュールに与える処理の内容の順番を入れ替えるようにすれば、1つの画像処理モジュール4で種々の画像処理を実現できる。   The order in which the switch matrix 17 inputs the processing image data to the plurality of submodules 11 is determined in advance. This order can be fixedly determined, for example, as read buffer 10, submodule 1, submodule 2,..., Submodule n, and write buffer 12. As a result, the switch matrix 17 can play its role if the processing image data is moved between the submodules in an always determined order, so that the configuration of the switch matrix 17 can be simplified. Even if the input order of the processing image data between the sub-modules in the image processing module 4 is fixed, if the CPU 1 changes the order of the contents of the processing given to each sub-module, one image Various image processing can be realized by the processing module 4.

ここで、1つの画像処理モジュール4において、種類の異なるサブモジュール11が混在している場合を考えてみる。サブモジュール1(11−1)〜n−1(11−n−1)が、後述する図5に示す(適応的)画像処理部413を持つサブモジュールであり、サブモジュールn(11−n)が後述する図6に示す(静的)画像処理部413であるとする。この場合、(静的)画像処理部413が処理用画像データを処理する順番が固定されてしまうという不都合が考えられる。しかし、この不都合は、複数の画像処理モジュール4を組み合わせて使用することで解消できる。例えば、1つ目の画像処理モジュール4では、(適応的)画像処理部413及び(静的)画像処理部413において、(静的)画像処理部413を使用する処理を含む前半の画像処理を実施する。そして、(静的)画像処理部413を使用する処理の済んだ処理用画像データを2つ目の画像処理モジュール4へ転送する。当該処理用画像データを受信した2つ目の画像処理モジュール4では、(適応的)画像処理部413において、後半の画像処理を行なう。なお、2つ目の画像処理モジュール4では、(適応的)画像処理部413において、後半の画像処理を実施した後、(静的)画像処理部413を使用せずに、そのままライトバッファ12へデータを転送する。   Here, consider a case where different types of sub-modules 11 are mixed in one image processing module 4. Submodules 1 (11-1) to n-1 (11-n-1) are submodules having an (adaptive) image processing unit 413 shown in FIG. 5 to be described later, and submodule n (11-n). Is a (static) image processing unit 413 shown in FIG. In this case, there may be a disadvantage that the order in which the (static) image processing unit 413 processes the processing image data is fixed. However, this inconvenience can be solved by using a plurality of image processing modules 4 in combination. For example, in the first image processing module 4, the (adaptive) image processing unit 413 and the (static) image processing unit 413 perform the first half of image processing including the processing using the (static) image processing unit 413. carry out. Then, the processing image data that has been processed using the (static) image processing unit 413 is transferred to the second image processing module 4. In the second image processing module 4 that has received the processing image data, the (adaptive) image processing unit 413 performs the latter half of the image processing. In the second image processing module 4, the (adaptive) image processing unit 413 performs the latter half of the image processing and then directly uses the (static) image processing unit 413 without using the (static) image processing unit 413. Transfer data.

一方、1つの画像処理モジュール4において、種類の異なるサブモジュールが混在している場合であっても、サブモジュール間の処理の順番を変更するように設計できる。これは、CPU1において、サブモジュール間の処理の順番を指示する順番情報をレジスタ101に設定し、スイッチマトリクス17が、当該順番情報を参照して処理用画像データの入力順番を制御するようにすれば実現できる。この場合、サブモジュール間の処理の順番を固定した場合と比べ、スイッチマトリクス17の構成が複雑になる。しかし、この場合、複数の画像処理モジュール4それぞれにおいて別々の画像処理を実施するように構成できるため、複数の画像処理モジュール4を用いて1つの画像処理を行なう場合に比べて、画像処理速度の向上が見込める。   On the other hand, even in the case where different types of sub-modules are mixed in one image processing module 4, it can be designed to change the processing order between the sub-modules. This is because the CPU 1 sets the order information instructing the order of processing between the sub-modules in the register 101, and the switch matrix 17 refers to the order information to control the input order of the processing image data. Can be realized. In this case, the configuration of the switch matrix 17 is complicated as compared with the case where the processing order between the submodules is fixed. However, in this case, since each of the plurality of image processing modules 4 can be configured to perform separate image processing, the image processing speed is higher than when one image processing is performed using the plurality of image processing modules 4. Improvement can be expected.

上述した通り、CPU1は、画像処理モジュール4のレジスタ101にパラメータを設定する。このパラメータ設定により、リード開始アドレスとリード終了アドレスとが設定された場合、リードアドレス生成部14は、リードイネーブル信号Renを出力する。このとき、リードアドレス生成部14は、レジスタ101に設定されたパラメータを参照してリードアドレスRad、RAM7からのリードアクセス単位Rnを出力する。Rnが固定的な値であれば、レジスタ101にパラメータを参照せずにRnを出力してもよい。また、ライト開始アドレスとライト終了アドレスとが設定された場合、ライトアドレス生成部16は、ライトイネーブル信号Wenを出力する。このとき、リードアドレス生成部14は、レジスタ101に設定されたパラメータを参照してリードアドレスWad、RAM7からのリードアクセス単位Wnを出力する。Wnが固定的な値であれば、レジスタ101にパラメータを参照せずにWnを出力してもよい。   As described above, the CPU 1 sets parameters in the register 101 of the image processing module 4. When a read start address and a read end address are set by this parameter setting, the read address generation unit 14 outputs a read enable signal Ren. At this time, the read address generation unit 14 refers to the parameter set in the register 101 and outputs the read address Rad and the read access unit Rn from the RAM 7. If Rn is a fixed value, Rn may be output to the register 101 without referring to the parameter. Further, when the write start address and the write end address are set, the write address generation unit 16 outputs the write enable signal Wen. At this time, the read address generation unit 14 refers to the parameter set in the register 101 and outputs the read address Wad and the read access unit Wn from the RAM 7. If Wn is a fixed value, Wn may be output to the register 101 without referring to the parameter.

アービタ13は、リードバッファ10の空き容量Rpとリードアドレス生成部14からのリードイネーブル信号Renとを検出する。検出の結果、リードアドレスが有効(Ren=1)であり、また、リードバッファ10に空き領域があるとする(Rp≧Rn(Rn:RAM7からのリードアクセス単位))。この場合、アービタ13は、アービタ5に対してリードリクエスト(PREQ=1、PNRW=0、PNUM=Rn、PADD=Rad)を発行する。   The arbiter 13 detects the free capacity Rp of the read buffer 10 and the read enable signal Ren from the read address generation unit 14. As a result of detection, it is assumed that the read address is valid (Ren = 1) and there is an empty area in the read buffer 10 (Rp ≧ Rn (Rn: read access unit from the RAM 7)). In this case, the arbiter 13 issues a read request (PREQ = 1, PNRW = 0, PNUM = Rn, PADD = Rad) to the arbiter 5.

一方、ライトバッファ12のデータ蓄積量Wpが所定サイズ以上(Wp≧Wn(Wn:RAM7へのライトアクセス単位)あれば、アービタ13は、ライトアドレス生成部16のライトイネーブル信号Wenを検出する。そして、アービタ13は、アービタ5に対してライトリクエストを発行する。すなわち、ライトアドレスが有効(Wen=1)であり、ライトバッファ12がデータ出力可能(Wp≧Wn)であれば、アービタ13は、アービタ5へライトリクエスト(PREQ=1、PNRW=1、PNUM=Wnum、PADD=Wad)を発行する。   On the other hand, if the data storage amount Wp of the write buffer 12 is equal to or larger than a predetermined size (Wp ≧ Wn (Wn: write access unit to the RAM 7)), the arbiter 13 detects the write enable signal Wen of the write address generation unit 16. The arbiter 13 issues a write request to the arbiter 5. That is, if the write address is valid (Wen = 1) and the write buffer 12 can output data (Wp ≧ Wn), the arbiter 13 A write request (PREQ = 1, PNRW = 1, PNUM = Wnum, PADD = Wad) is issued to the arbiter 5.

アービタ5は、画像処理モジュール4からリクエスト信号PREQを受け取ると、信号PNRWに基づいてリードリクエストであるかライトリクエストであるかを判定する(0:リード、1:ライト)。また、アービタ5は、信号PNUMに基づいて転送サイズ(転送ワード数)を検出するとともに、信号PADDに基づいてアドレスを検出する。ここで、他のリクエスト(CPU1、他の画像処理モジュール4からのリクエスト)がなければ、アービタ5は、RAM7内の該当データへのアクセスを開始し、受領信号PACKをリクエスト元の画像処理モジュール4に返す。一方、他のリクエストがあれば、アービタ5は、各リクエストに対応した処理を調停し、優先順位に従って順番に処理を実行させる。   When receiving the request signal PREQ from the image processing module 4, the arbiter 5 determines whether it is a read request or a write request based on the signal PNRW (0: read, 1: write). The arbiter 5 detects a transfer size (number of transfer words) based on the signal PNUM and detects an address based on the signal PADD. If there is no other request (request from the CPU 1 or another image processing module 4), the arbiter 5 starts access to the corresponding data in the RAM 7, and receives the reception signal PACK as the request source image processing module 4. Return to. On the other hand, if there is another request, the arbiter 5 arbitrates the processing corresponding to each request, and executes the processing in order according to the priority order.

アービタ13は、アービタ5から受領信号PACKを受け取ると、リードリクエストであるかライトリクエストであるかを判定する。判定の結果、リードリクエストであれば、アービタ13は、受領信号Rackをリクエスト元のリードアドレス生成部14に返す。受領信号Rackを受け取ったリードアドレス生成部14は、データ読出先となるRAM7内のアドレスを生成しRadへ出力する。なお、リクエストされたアドレス(リードアドレス生成部14で生成したアドレス)がレジスタ101に設定されたリード終了アドレスであれば、リードアドレス生成部14は、リードイネーブル信号Renをリセットする。また、リードアドレス生成部14は、割込制御部15に向けてリード終了信号Rendを出力する。   When the arbiter 13 receives the reception signal PACK from the arbiter 5, it determines whether it is a read request or a write request. As a result of the determination, if it is a read request, the arbiter 13 returns a reception signal Rack to the request source read address generation unit 14. The read address generation unit 14 that has received the reception signal Rack generates an address in the RAM 7 as a data read destination and outputs it to the Rad. If the requested address (the address generated by the read address generation unit 14) is the read end address set in the register 101, the read address generation unit 14 resets the read enable signal Ren. Further, the read address generation unit 14 outputs a read end signal Rend to the interrupt control unit 15.

一方、アービタ5からの受領信号PACKがライトリクエストであった場合、アービタ13は、受領信号Wackをリクエスト元のライトアドレス生成部16に返す。受領信号Wackを受け取ったライトアドレス生成部16は、データ書込先となるRAM7内のアドレスを生成する。なお、リクエストされたアドレスがレジスタ101に設定されたライト終了アドレスであれば、ライトアドレス生成部16は、ライトイネーブル信号Wenをリセットするとともに、割込制御部15に向けてライト終了信号Wendを出力する。   On the other hand, when the reception signal PACK from the arbiter 5 is a write request, the arbiter 13 returns the reception signal Wack to the write address generation unit 16 that is the request source. Upon receiving the reception signal Wack, the write address generation unit 16 generates an address in the RAM 7 that is a data writing destination. If the requested address is the write end address set in the register 101, the write address generation unit 16 resets the write enable signal Wen and outputs the write end signal Wend to the interrupt control unit 15. To do.

ここで、割込制御部15は、レジスタ101に設定されたパラメータに基づいてリード終了割込マスク及びライト終了割込マスクの設定を行なう。割込制御部15は、各割込マスクの設定がイネーブルであれば、リード終了信号Rend又はライト終了信号Wendに応じて割込信号INTを生成し、その生成した信号をCPU1へ通知する。   Here, the interrupt control unit 15 sets a read end interrupt mask and a write end interrupt mask based on the parameters set in the register 101. If the setting of each interrupt mask is enabled, the interrupt control unit 15 generates an interrupt signal INT according to the read end signal Rend or the write end signal Wend, and notifies the CPU 1 of the generated signal.

割込信号INTを受けたCPU1は、割込制御部15のステータスを読み取り、割込要因を判定する。判定の結果、割込要因がリード終了であれば、CPU1は、リード終了割込マスクをリセットして割り込みを解除する。なお、処理を継続する場合には、CPU1において、リード開始アドレスとリード終了アドレスとをレジスタ101に再設定し、それに伴ってリードアドレス生成部14において、リードイネーブル信号Renを出力等する。その後、割込制御部15において、リード終了割込マスクを設定する。   Receiving the interrupt signal INT, the CPU 1 reads the status of the interrupt control unit 15 and determines the interrupt factor. As a result of the determination, if the interrupt factor is the end of reading, the CPU 1 resets the read end interrupt mask and cancels the interrupt. In the case of continuing the process, the CPU 1 resets the read start address and the read end address in the register 101, and accordingly, the read address generation unit 14 outputs the read enable signal Ren. Thereafter, the interrupt control unit 15 sets a read end interrupt mask.

一方、割込制御部15のステータスを読み取った結果、その割込要因がライト終了であれば、CPU1は、ライト終了割込マスクをリセットして割り込みを解除する。なお、処理を継続する場合には、CPU1において、ライト開始アドレスとライト終了アドレスとをレジスタ101に再設定し、それに伴ってライトアドレス生成部16において、ライトイネーブル信号Wenを出力等する。その後、割込制御部15において、ライト終了割込マスクを設定する。   On the other hand, as a result of reading the status of the interrupt control unit 15, if the interrupt factor is the write end, the CPU 1 resets the write end interrupt mask and releases the interrupt. When the processing is continued, the CPU 1 resets the write start address and the write end address in the register 101, and the write address generation unit 16 outputs a write enable signal Wen and the like accordingly. Thereafter, the interrupt control unit 15 sets a write end interrupt mask.

ここで、RAM7からデータが読み出されると、アービタ5は、RAMデータ有効信号PVALIDをリクエスト元の画像処理モジュール4に返す。リクエスト元の画像処理モジュール4では、アービタ13において、リードバッファ10へデータ有効信号Rvalidを返す。リードバッファ10は、このデータ有効信号Rvalidが出力されている間、RAMデータ出力信号PDINに含まれるデータを格納する。これにより、信号PADD(=Rad)に示されるアドレス(リードアドレス生成部14が生成したアドレス)に基づいてRAM7から読み出されたデータがリードバッファ10へ格納される。   Here, when data is read from the RAM 7, the arbiter 5 returns a RAM data valid signal PVALID to the requesting image processing module 4. In the request source image processing module 4, the arbiter 13 returns a data valid signal Rvalid to the read buffer 10. The read buffer 10 stores the data included in the RAM data output signal PDIN while the data valid signal Rvalid is being output. As a result, data read from the RAM 7 based on the address indicated by the signal PADD (= Rad) (the address generated by the read address generation unit 14) is stored in the read buffer 10.

一方、RAM7にデータを書き込む場合、アービタ5は、RAM7の書込タイミングに合せてリクエスト元の画像処理モジュール4にRAMデータ有効信号PVALIDを返す。リクエスト元の画像処理モジュール4では、アービタ13において、ライトバッファ12へデータ有効信号Wvalidを返す。ライトバッファ12は、データ有効信号Wvalidが出力されている間、RAMデータ入力信号PDOUTを用いて書込データを出力する。これにより、ライトバッファ12のデータが信号PADD(=Wad)に示されるRAM7内のアドレス(ライトアドレス生成部16が生成したアドレス)へ格納される。   On the other hand, when data is written to the RAM 7, the arbiter 5 returns a RAM data valid signal PVALID to the image processing module 4 as a request source in accordance with the write timing of the RAM 7. In the request source image processing module 4, the arbiter 13 returns a data valid signal Wvalid to the write buffer 12. The write buffer 12 outputs write data using the RAM data input signal PDOUT while the data valid signal Wvalid is output. As a result, the data in the write buffer 12 is stored at the address in the RAM 7 (the address generated by the write address generator 16) indicated by the signal PADD (= Wad).

リードバッファ10は、サブモジュール11の処理に必要なデータが全て格納されると、有効信号valid_outを出力し、そうでなければ、有効信号valid_outをリセットする。また、リードバッファ10は、サブモジュール11からの保持要求信号stall_inが入力されていなければ、格納されたデータをクロックに同期してdata_outへ順次出力する。なお、サブモジュール11からの保持要求信号stall_inが入力されていれば、data_outへ出力するデータの更新は行なわない。ここで、サブモジュール11から出力された保持要求信号stall_outは、リードバッファ10の保持要求信号stall_inへ入力される。一方、サブモジュール11は、処理後のデータのライトバッファ12への出力が可能になると、有効信号valid_outを出力し、そうでなければ、有効信号valid_outをリセットする。また、サブモジュール11は、保持要求信号stall_inがリードバッファ10から入力されていなければ、格納されたデータをクロックに同期してdata_outへ順次出力する。なお、保持要求信号stall_inがリードバッファ10から入力されていれば、data_outへ出力するデータの更新は行なわない。ここで、ライトバッファ12から出力された保持要求信号stall_outは、サブモジュール11の保持要求信号stall_inへ入力される。サブモジュール11同士のデータの送受信も、上述したサブモジュール11、リードバッファ10又はライトバッファ12間の手順と同様に行われる。   The read buffer 10 outputs the valid signal valid_out when all the data necessary for the processing of the submodule 11 is stored, and resets the valid signal valid_out otherwise. Further, when the holding request signal stall_in from the submodule 11 is not input, the read buffer 10 sequentially outputs the stored data to data_out in synchronization with the clock. If the holding request signal stall_in from the submodule 11 is input, the data output to data_out is not updated. Here, the holding request signal stall_out output from the submodule 11 is input to the holding request signal stall_in of the read buffer 10. On the other hand, the submodule 11 outputs the valid signal valid_out when the processed data can be output to the write buffer 12, and resets the valid signal valid_out otherwise. Also, if the holding request signal stall_in is not input from the read buffer 10, the submodule 11 sequentially outputs the stored data to data_out in synchronization with the clock. If the holding request signal stall_in is input from the read buffer 10, the data output to data_out is not updated. Here, the holding request signal stall_out output from the write buffer 12 is input to the holding request signal stall_in of the submodule 11. Data transmission / reception between the submodules 11 is also performed in the same manner as the procedure between the submodule 11, the read buffer 10, and the write buffer 12 described above.

サブモジュール11は、リードバッファ10又は他のサブモジュール11から有効信号valid_outが出力されている間、data_inを介してリードバッファ10又は他のサブモジュール11からデータを受け取る。サブモジュール11は、有効信号valid_outを出力している間、data_inを介してライトバッファ又は他のサブモジュール11へデータを出力する。なお、データの受け取りができない場合、サブモジュール11は、保持要求信号stall_outを出力する。これにより、データ送信元であるリードバッファ10又は他のサブモジュール11の保持要求信号stall_inをセットし、リードバッファ10の出力をホールドする。また、ライトバッファ12又は他のサブモジュール11がデータの受け取りができない場合、ライトバッファ12又は他のサブモジュール11は、保持要求信号stall_outを出力する。これにより、データ送信元であるサブモジュール11の保持要求信号stall_inをセットし、サブモジュール11の出力をホールドする。リードバッファ10、サブモジュール11、ライトバッファ12間のデータ入出力の順番は、スイッチマトリクスがレジスタ101の設定に従って管理する。そして、その順番に従って、data_in及びdata_out、valid_in及びvalid_out、stall_in及びstall_outが接続され、データが入出力される。なお、入力データ又は出力データを並び替える必要がなければ、リードバッファ10やライトバッファ12は、例えば、FIFOで構成すればよい。   The submodule 11 receives data from the read buffer 10 or the other submodule 11 via data_in while the valid signal valid_out is output from the read buffer 10 or the other submodule 11. While outputting the valid signal valid_out, the submodule 11 outputs data to the write buffer or another submodule 11 via data_in. If the data cannot be received, the submodule 11 outputs a holding request signal stall_out. As a result, the holding request signal stall_in of the read buffer 10 or other submodule 11 that is the data transmission source is set, and the output of the read buffer 10 is held. When the write buffer 12 or other submodule 11 cannot receive data, the write buffer 12 or other submodule 11 outputs a holding request signal stall_out. As a result, the hold request signal stall_in of the submodule 11 that is the data transmission source is set, and the output of the submodule 11 is held. The order of data input / output among the read buffer 10, submodule 11, and write buffer 12 is managed by the switch matrix according to the setting of the register 101. Then, according to the order, data_in and data_out, valid_in and valid_out, stall_in and stall_out are connected, and data is input and output. If it is not necessary to rearrange the input data or output data, the read buffer 10 and the write buffer 12 may be configured by, for example, a FIFO.

以上のように画像処理モジュール4の内部は、1つ以上のサブモジュール11により構成される。各サブモジュール11間では、上述した動作(有効信号validと保持要求信号stallによるハンドシェーク(あるモジュールの_inは他のモジュールの_outに接続される))によってデータの受け渡しが行なわれる。これらサブモジュール11は、各種画像処理に必要なハードリソースに着目して構成する。これにより、各サブモジュールの接続関係や処理シーケンス、演算精度等を適宜変更できるため、多様な処理モードに対応できるコンパクト且つ柔軟な画像処理装置を構築することができる。また、未使用サブモジュール11へのクロックの停止や、未使用サブモジュール11への電源供給を停止できるため、処理速度や処理精度のみならず、消費電力の抑制も図れる。   As described above, the inside of the image processing module 4 is configured by one or more submodules 11. Data is exchanged between the sub-modules 11 by the above-described operation (handshaking based on the valid signal valid and the hold request signal stall (_in of a certain module is connected to _out of another module)). These submodules 11 are configured by paying attention to hardware resources necessary for various image processing. As a result, the connection relationship, processing sequence, calculation accuracy, and the like of each submodule can be changed as appropriate, so that a compact and flexible image processing apparatus that can handle various processing modes can be constructed. Further, since the clock to the unused submodule 11 can be stopped and the power supply to the unused submodule 11 can be stopped, not only the processing speed and processing accuracy but also power consumption can be suppressed.

なお、画像処理モジュール4を多様なフォーマットに対応できるように構成した場合、分割処理(マルチシーケンス処理)を実現できる。この場合、上述したハードリソースでは未対応な処理であっても、別モジュールやCPU等で実行するように構成できる。基本的には、リードバッファ10、各サブモジュール11、ライトバッファ12間の入力データ及び出力データのフォーマットは、統一することが望ましい。フォーマットを統一した場合、サブモジュールの処理順番を入れ替えたり、特定のサブモジュールを不使用にしたりする場合でも、リードバッファ10、各サブモジュール11、ライトバッファ12間でのデータの入出力データフォーマットに変更は生じない。   If the image processing module 4 is configured to be compatible with various formats, division processing (multi-sequence processing) can be realized. In this case, even a process that is not supported by the above-described hardware resource can be configured to be executed by another module, a CPU, or the like. Basically, it is desirable to unify the formats of input data and output data among the read buffer 10, each submodule 11, and the write buffer 12. When the format is unified, the input / output data format of data among the read buffer 10, each submodule 11, and the write buffer 12 can be changed even if the processing order of submodules is changed or a specific submodule is not used. No change will occur.

ここで、図4は、本実施形態に係わる入出力データフォーマットの一例を示す図である。このフォーマット(以下、処理用画像データと呼ぶ)は、例えば、上述したサブモジュール11やスイッチマトリクス17等の間において共有して使用される。   Here, FIG. 4 is a diagram showing an example of an input / output data format according to the present embodiment. This format (hereinafter referred to as processing image data) is shared and used, for example, between the submodule 11 and the switch matrix 17 described above.

処理用画像データ301は、属性値を持たない形式である。この形式は、従来同様の形式である。この処理用画像データ301は、R(赤)、G(緑)、B(青)、それぞれ32bitづつの画素値を持つ画素値フィールド(3011〜3013)から構成され、全部で96bitとなる。   The processing image data 301 has a format having no attribute value. This format is the same as the conventional format. This processing image data 301 is composed of R (red), G (green), and B (blue) pixel value fields (3011 to 3013) each having a 32-bit pixel value, and is 96 bits in total.

処理用画像データ302は、8bitの属性値フィールドを3つ(3024〜3026)、24bitの画素値フィールドを3つ(3021〜3023)持つ形式である。ここで、本実施形態においては、この属性値フィールドに対して各種設定値(属性値)を設定する。属性値は、その種類や役割が固定されておらず、自由な値が設定される。例えば、どの画像処理サブモジュールでどのような処理を行なうかを示す値や、属性値フィールドの内、どのフィールドを参照してどのような処理を行なうか、等を示す値を設定することができる。   The processing image data 302 has a format having three 8-bit attribute value fields (3024 to 3026) and three 24-bit pixel value fields (3021 to 3023). Here, in the present embodiment, various setting values (attribute values) are set in the attribute value field. The attribute value is not fixed in type or role, and a free value is set. For example, it is possible to set a value indicating what processing is performed in which image processing sub-module, and a value indicating what processing is performed with reference to which of the attribute value fields. .

処理用画像データ303は、8bitの属性値フィールドを6つ(3034〜3039)、16bitの画素値フィールドを3つ(3031〜3033)持つ形式である。処理用画像データ304は、16bitの属性値フィールドを3つ(3044〜3046)、16bitの画素値フィールドを3つ(3041〜3043)持つ形式である。処理用画像データ305は、16bitの属性値フィールドを2つ(3054、3055)、8bitの属性値フィールドを2つ(3056、3057)、16bitの画素値フィールドを3つ(3051〜3053)持つ形式である。   The processing image data 303 has a format having six 8-bit attribute value fields (3034 to 3039) and three 16-bit pixel value fields (3031 to 3033). The processing image data 304 has a format having three 16-bit attribute value fields (3044 to 3046) and three 16-bit pixel value fields (3041 to 3043). The processing image data 305 has two 16-bit attribute value fields (3054 and 3055), two 8-bit attribute value fields (3056 and 3057), and three 16-bit pixel value fields (3051 to 3053). It is.

本実施形態においては、これら処理用画像データ301〜305は、いずれも全体として96bitのフォーマットで構成されている。そのため、属性値のダイナミックレンジを大きくする(属性値フィールドのbit数を多くする)と、画素値のダイナミックレンジは小さくなり(画素値フィールドのbit数が少なくなる)、属性値及び画素値は、トレードオフの関係を持つ。   In the present embodiment, the processing image data 301 to 305 are all configured in a 96-bit format. Therefore, if the dynamic range of the attribute value is increased (the number of bits in the attribute value field is increased), the dynamic range of the pixel value is decreased (the number of bits in the pixel value field is reduced), and the attribute value and the pixel value are Has a trade-off relationship.

これを踏まえると、処理用画像データ301の構成は、画素値の精度を最も高く維持できる形式であるといえる。また、処理用画像データ302の構成は、画素値の精度を高く維持しつつ、属性値も使用できる形式であるといえ、処理用画像データ303の構成は、各画素の保持する属性値の数を更に増やした形式であるといえる。処理用画像データ304の構成は、属性値が画素値と同じダイナミックレンジを持ち、より高精度な属性値による制御を実現する形式であるといえる。処理用画像データ305の構成は、2種類のサイズの属性値を持ち、必要に応じて大小の属性値を組み合わせて使用できる形式であるといえる。   Based on this, it can be said that the configuration of the processing image data 301 is a format that can maintain the highest accuracy of the pixel value. The configuration of the processing image data 302 can be said to be a format in which attribute values can be used while maintaining high accuracy of pixel values. The configuration of the processing image data 303 includes the number of attribute values held by each pixel. It can be said that this is a form further increased. It can be said that the configuration of the processing image data 304 has a format in which the attribute value has the same dynamic range as the pixel value, and realizes control with a more accurate attribute value. The configuration of the processing image data 305 can be said to have a format that has attribute values of two types of sizes and can be used by combining large and small attribute values as necessary.

以上のような処理用画像データを用いることにより、様々なユースケースにおいて異なる画像処理を実施できる。具体的には、属性値を用いることにより、同一リソースを用いて異なる画像処理を実施できる。これにより、画像処理の柔軟性と回路サイズの低減とが図れる。   By using the processing image data as described above, different image processing can be performed in various use cases. Specifically, by using the attribute value, different image processing can be performed using the same resource. Thereby, flexibility of image processing and reduction of circuit size can be achieved.

以上が処理用画像データのフォーマットについての説明であるが、上述したフォーマットの構成はあくまで一例であり、これに限られない。例えば、上述した説明では、各画素値が32bit、全体サイズが96bitである場合を例に挙げて説明したが、サイズは、これ以外であってもよい。例えば、各画素値が16bit、全体サイズが48bitであってもよい。また、各画素値のbit数は、同一である必要もなく、例えば、R:10bit、G:12bit、B:10bitのように、各画素値を不均一なサイズとしてもよい。なお、図4に示すフォーマット(処理用画像データ)は、例えば、CPU1(画像処理モジュール4であってもよい)により作成される。すなわち、CPU1においては、画像を表現する画像データを当該画像の各画素に対応して、当該各画素の画素値を保持する画素値フィールドと、属性値を保持する属性値フィールドとを含む処理用画像データに編集する機能を備える。   The above is the description of the format of the processing image data. However, the format configuration described above is merely an example, and the present invention is not limited to this. For example, in the above description, the case where each pixel value is 32 bits and the overall size is 96 bits has been described as an example, but the size may be other than this. For example, each pixel value may be 16 bits and the overall size may be 48 bits. The number of bits of each pixel value does not need to be the same, and each pixel value may have a non-uniform size, for example, R: 10 bits, G: 12 bits, B: 10 bits. Note that the format (processing image data) shown in FIG. 4 is created by the CPU 1 (which may be the image processing module 4), for example. That is, in the CPU 1, image data representing an image corresponds to each pixel of the image, and includes a pixel value field that holds the pixel value of each pixel and an attribute value field that holds an attribute value. A function for editing image data is provided.

次に、図5を用いて、画像処理を行なうサブモジュール(以下、画像処理サブモジュールと呼ぶ)の構成について説明する。画像処理サブモジュールは、図3に示すサブモジュール11として実現される。なお、上述した図3に示す構成と同一ものには同一の符号が付してある。   Next, the configuration of a submodule that performs image processing (hereinafter referred to as an image processing submodule) will be described with reference to FIG. The image processing submodule is realized as the submodule 11 shown in FIG. In addition, the same code | symbol is attached | subjected to the same thing as the structure shown in FIG. 3 mentioned above.

入力データ処理方法設定部401は、レジスタ101に設定されたパラメータを参照して、入力属性値と入力画素値とに対する処理方法を設定する。なお、入力属性値及び入力画素値を含む処理用画像データは、スイッチマトリクス17からのData_in制御信号により入力される。   The input data processing method setting unit 401 refers to the parameter set in the register 101 and sets a processing method for the input attribute value and the input pixel value. Note that the processing image data including the input attribute value and the input pixel value is input by a Data_in control signal from the switch matrix 17.

出力データ処理方法設定部402は、レジスタ101に設定されたパラメータを参照して、出力属性値と出力画素値とに対する処理方法を設定する。なお、出力属性値及び出力画素値を含む処理用画像データは、Data_out制御信号によりスイッチマトリクス17に出力される。この入力処理用画像データ及び出力処理用画像データに対する処理方法の設定は、CPU1において、リードバッファ10、各サブモジュール11−n、ライトバッファ12に係わる設定値をコンフィグレーションレジスタ101に設定することで行なわれる。この設定の仕方については特に問わない。例えば、図1に示す画像処理モジュール4各々からCPU1への信号線を双方向化する。そして、CPU1と画像処理モジュール4各々のレジスタ101とを接続し、CPU1からコンフィグレーションレジスタ101に直接設定してもよい。また、CPU1と画像処理モジュール4各々のスイッチマトリクス17とを接続し、レジスタ設定コマンドを実行することでスイッチマトリクス17を介して設定してもよい。なお、以下、説明する各種設定全てについても、その設定の仕方については特に問わない。   The output data processing method setting unit 402 refers to the parameter set in the register 101 and sets a processing method for the output attribute value and the output pixel value. Note that the processing image data including the output attribute value and the output pixel value is output to the switch matrix 17 by the Data_out control signal. The CPU 1 sets the processing values for the input processing image data and the output processing image data by setting the setting values related to the read buffer 10, each submodule 11-n, and the write buffer 12 in the configuration register 101. Done. The setting method is not particularly limited. For example, the signal lines from each of the image processing modules 4 shown in FIG. Then, the CPU 1 and each register 101 of the image processing module 4 may be connected and set directly from the CPU 1 to the configuration register 101. Alternatively, the CPU 1 and the switch matrix 17 of each of the image processing modules 4 may be connected, and the setting may be performed via the switch matrix 17 by executing a register setting command. It should be noted that the method of setting all the various settings described below is not particularly limited.

入力属性値処理部403は、入力処理用画像データに含まれる入力属性値を編集する。Bit拡張器404は、入力処理用画像データに含まれる入力画素値を画像処理部413の処理に適したフォーマットにBit拡張する。なお、入力属性値処理部403及びBit拡張器404における処理は、入力データ処理方法設定部401により設定される設定情報(第1の設定情報)に基づいて行なわれる。   The input attribute value processing unit 403 edits the input attribute value included in the input processing image data. The Bit expander 404 extends the input pixel value included in the input processing image data to a format suitable for the processing of the image processing unit 413. The processing in the input attribute value processing unit 403 and the bit expander 404 is performed based on setting information (first setting information) set by the input data processing method setting unit 401.

第1の属性値管理部405は、入力属性値処理部403により処理された入力属性値を遅延器406に保持させる。また、出力属性値の出力に際しては、所定のタイミングで出力属性値処理部407に向けて出力画素値を出力する。この出力タイミングは、画像処理部413の電気的構成に合わせる必要がある。   The first attribute value management unit 405 causes the delay unit 406 to hold the input attribute value processed by the input attribute value processing unit 403. When outputting the output attribute value, the output pixel value is output to the output attribute value processing unit 407 at a predetermined timing. This output timing needs to match the electrical configuration of the image processing unit 413.

例えば、画像処理部413が、以下の処理を行なうとする。   For example, assume that the image processing unit 413 performs the following processing.

入力画素:連続する3入力画素(画素(X−1)、画素(X)、画素(X+1))
出力画素:画素Xの位置
出力値:3画素の和
画素値(X−1)+画素値(X)+画素値(X+1)
属性値:特に処理せず、出力属性値(X)=入力属性値(X)
この場合、出力値を算出するために出力属性値(X)を用いるが、最終的な出力値が決まるのは、画素(X+1)が入力されたタイミングとなる。そのため、第1の属性値管理部405においては、出力画素値(X)が画像処理部413から出力属性値処理部407に送られるタイミングで遅延器406に既に保持されている属性値(X)を取り出し、出力属性値処理部407に出力する。すなわち、画素(X)より後に入力される画素(X+1)を用いた出力画素値(X)の演算が終了するまで、出力画素値(X)の属性値となる属性値(X)を遅延器406で保持する。以下、これと同様に、出力画素値(X)の出力タイミングとなるまで出力画素値(X)の属性値となる値を遅延器406で保持する。
Input pixels: 3 consecutive input pixels (pixel (X-1), pixel (X), pixel (X + 1))
Output pixel: Position of pixel X Output value: Sum of 3 pixels Pixel value (X-1) + pixel value (X) + pixel value (X + 1)
Attribute value: No particular processing, output attribute value (X) = input attribute value (X)
In this case, the output attribute value (X) is used to calculate the output value, but the final output value is determined at the timing when the pixel (X + 1) is input. Therefore, in the first attribute value management unit 405, the attribute value (X) already held in the delay unit 406 at the timing when the output pixel value (X) is sent from the image processing unit 413 to the output attribute value processing unit 407. Is output to the output attribute value processing unit 407. That is, the attribute value (X) that is the attribute value of the output pixel value (X) is delayed until the calculation of the output pixel value (X) using the pixel (X + 1) input after the pixel (X) is completed. Hold at 406. Thereafter, similarly to this, the value that becomes the attribute value of the output pixel value (X) is held in the delay unit 406 until the output timing of the output pixel value (X) comes.

遅延器406は、上述した通り、属性値(入力属性値、出力属性値)を保持する。遅延器406は、属性値の入出力を遅延させるために設けられる。この遅延器406による処理について具体例を挙げて説明する。
例えば、画像処理部413が、以下の処理を行なうとする。
入力画素:連続する3入力画素(画素(X−1)、画素(X)、画素(X+1))
出力画素:画素Xの位置
出力値:3画素の和を属性値で除算する
(画素値(X−1)+画素値(X)+画素値(X+1))÷属性値(X)
属性値:特に処理せず、出力属性値(X)=入力属性値(X)
この場合、画像処理部413においては、入力画素値(X+1)が入ってきたタイミングで入力属性値(X)が必要となる。そのため、遅延器406において、画像処理部413への入力属性値(X)の入力を遅延させる。
As described above, the delay unit 406 holds attribute values (input attribute value, output attribute value). The delay unit 406 is provided for delaying input / output of attribute values. The processing by the delay unit 406 will be described with a specific example.
For example, assume that the image processing unit 413 performs the following processing.
Input pixels: 3 consecutive input pixels (pixel (X-1), pixel (X), pixel (X + 1))
Output pixel: Position of pixel X Output value: Divide the sum of three pixels by the attribute value (pixel value (X-1) + pixel value (X) + pixel value (X + 1)) / attribute value (X)
Attribute value: No particular processing, output attribute value (X) = input attribute value (X)
In this case, the image processing unit 413 needs the input attribute value (X) at the timing when the input pixel value (X + 1) is input. Therefore, the delay unit 406 delays input of the input attribute value (X) to the image processing unit 413.

出力属性値処理部407は、画像処理部413から出力された出力属性値を編集する。Bit圧縮器408は、出力処理用画像データに含まれる出力画素値を出力用のフォーマットにBit圧縮する。なお、出力属性値処理部407及びBit圧縮器408における処理は、出力データ処理方法設定部402により設定される設定情報(第2の設定情報)に基づいて行なわれる。   The output attribute value processing unit 407 edits the output attribute value output from the image processing unit 413. The Bit compressor 408 performs Bit compression on the output pixel value included in the output processing image data into an output format. The processing in the output attribute value processing unit 407 and the Bit compressor 408 is performed based on setting information (second setting information) set by the output data processing method setting unit 402.

入力属性値情報設定部409は、レジスタ101に設定されたパラメータを参照して、遅延器406に保持される入力属性値の内、どの属性値を画像処理部413による画像処理時に用いるのかを規定する設定情報(第3の設定情報)を設定する。すなわち、複数の画素値フィールドの画素値と、複数の属性値フィールドの属性値とのいずれを対応付けて画像処理部413に入力するかを示す情報を設定する。   The input attribute value information setting unit 409 refers to the parameter set in the register 101 and defines which attribute value among the input attribute values held in the delay unit 406 is used during image processing by the image processing unit 413. Setting information (third setting information) to be set. That is, information indicating which of the pixel values of the plurality of pixel value fields and the attribute values of the plurality of attribute value fields is associated with and input to the image processing unit 413 is set.

出力属性値情報設定部410は、レジスタ101に設定されたパラメータを参照して、遅延器406に保持される出力属性値をどの属性値フィールドに設定するのかを規定する設定情報(第4の設定情報)を設定する。すなわち、画像処理部413により処理された複数の画素値フィールド各々に対して、複数の属性値フィールドのいずれかを対応付けるかを示す情報を設定する。言い換えれば、出力属性値情報設定部410は、画像処理部413により処理された出力属性値の属性値フィールドを設定する。   The output attribute value information setting unit 410 refers to the parameter set in the register 101 and sets setting information (fourth setting) that defines which attribute value field the output attribute value held in the delay unit 406 is set to. Information). That is, information indicating which of the plurality of attribute value fields is associated with each of the plurality of pixel value fields processed by the image processing unit 413 is set. In other words, the output attribute value information setting unit 410 sets the attribute value field of the output attribute value processed by the image processing unit 413.

第2の属性値管理部411は、画像処理部413における属性値の入出力を管理する。この管理は、入力属性値情報設定部409及び出力属性値情報設定部410により設定された設定情報に基づいて行なわれる。第2の属性値管理部411は、例えば、遅延器406から入力属性値を取り出し、画像処理部413に向けて出力する。また、第2の属性値管理部411は、例えば、画像処理部413から出力された出力属性値を遅延器406に保持させる。   The second attribute value management unit 411 manages input / output of attribute values in the image processing unit 413. This management is performed based on the setting information set by the input attribute value information setting unit 409 and the output attribute value information setting unit 410. For example, the second attribute value management unit 411 extracts the input attribute value from the delay unit 406 and outputs it to the image processing unit 413. Also, the second attribute value management unit 411 causes the delay unit 406 to hold the output attribute value output from the image processing unit 413, for example.

パラメータ設定部412は、レジスタ101に設定されたパラメータを参照して、画像処理固有の処理パラメータを設定する。画像処理部413は、画素毎に属性値に応じた画像処理を行なう(適応的画像処理)。具体的には、Bit拡張器404、第2の属性値管理部411、パラメータ設定部412等から入力される入力画素値、入力属性値、パラメータ等を用いて所定の画像処理を行なう。また、画像処理部413は、出力画素値を必要に応じてBit圧縮器408に向けて出力し、出力属性値を必要に応じて第2の属性値管理部411に向けて出力する。なお、本実施形態に係わる画像処理部413では、各画素値(R/G/B)それぞれを入出力ともに32bitで処理する。従って、属性値を使用する場合、Bit拡張器404において、「16bit」or「24bit」から「32bit」への拡張が行なわれる。また逆に、Bit圧縮器408においては、「32bit」から「16bit」or「24bit」への圧縮が行なわれる。すなわち、ビット数を合わせる(この場合、属性値フィールドのビット数と、画素値フィールドのビット数との比率が変更されることになる)。なお、必ずしもこのようなBit関係である必要はなく、画像処理部413における画像処理Bit数が入力属性値処理部403で抽出された画素値のBit数より小さくてもよい。この場合、例えば、図5に示すBit拡張器404とBit圧縮器408との位置を相互に入れ替えて対応すればよい。また、Bit拡張及び圧縮の方法としては、ビットシフトを用いてもよいし、乗算、除算を行なうようにしてもよい。   The parameter setting unit 412 refers to the parameters set in the register 101 and sets processing parameters specific to image processing. The image processing unit 413 performs image processing corresponding to the attribute value for each pixel (adaptive image processing). Specifically, predetermined image processing is performed using input pixel values, input attribute values, parameters, and the like input from the Bit expander 404, the second attribute value management unit 411, the parameter setting unit 412, and the like. Also, the image processing unit 413 outputs the output pixel value to the Bit compressor 408 as necessary, and outputs the output attribute value to the second attribute value management unit 411 as necessary. Note that the image processing unit 413 according to the present embodiment processes each pixel value (R / G / B) in 32 bits for both input and output. Therefore, when the attribute value is used, the bit expander 404 performs expansion from “16 bits” or “24 bits” to “32 bits”. Conversely, in the bit compressor 408, compression from “32 bits” to “16 bits” or “24 bits” is performed. That is, the number of bits is matched (in this case, the ratio between the number of bits in the attribute value field and the number of bits in the pixel value field is changed). Note that such a bit relationship is not necessarily required, and the number of image processing bits in the image processing unit 413 may be smaller than the number of bits of pixel values extracted by the input attribute value processing unit 403. In this case, for example, the positions of the bit expander 404 and the bit compressor 408 shown in FIG. Also, as a method of bit expansion and compression, bit shift may be used, or multiplication and division may be performed.

このように本実施形態においては、Bit拡張器404及びBit圧縮器408を設け、処理用画像データ内で保持される画素値フィールド(すなわち、画素)のbit数が異なる場合であっても、画像処理部413の入出力段階では、Bit数を一定にする。これにより、属性値のBit数、画素値のBit数によらず、同一リソース(画像処理部)を用いた画像処理が実現できる。   As described above, in this embodiment, the Bit expander 404 and the Bit compressor 408 are provided, and even if the number of bits of the pixel value field (that is, the pixel) held in the processing image data is different, the image At the input / output stage of the processing unit 413, the number of bits is made constant. Thereby, image processing using the same resource (image processing unit) can be realized regardless of the number of bits of the attribute value and the number of bits of the pixel value.

以上、画像処理サブモジュールの構成について説明したが、画像処理サブモジュールにおいては、上述した構成全てが必ずしも必須の構成ではない。例えば、1画素入力して所定の画像処理を施して1画素出力する場合には、遅延器406は不要となる。このとき、第1の属性値管理部405と第2の属性値管理部411とが一体で構成されてもよい。更に、上述した画像処理サブモジュールでは、属性値の設定変更も行なうことになるが、単に属性値を使用して画像処理を行なうモジュールを構成してもよい。この場合、出力属性値情報設定部410は不要となる。また、同様に属性値を画像処理に使用せず、属性値の設定変更のみを行なうモジュールを構成した場合には、入力属性値情報設定部409は不要となる。   The configuration of the image processing submodule has been described above. However, in the image processing submodule, all the above-described configurations are not necessarily essential. For example, when one pixel is input, predetermined image processing is performed and one pixel is output, the delay unit 406 is not necessary. At this time, the first attribute value management unit 405 and the second attribute value management unit 411 may be configured integrally. Further, in the above-described image processing submodule, setting of attribute values is also changed, but a module for performing image processing using only attribute values may be configured. In this case, the output attribute value information setting unit 410 is not necessary. Similarly, when a module that does not use the attribute value for image processing and only changes the setting of the attribute value is configured, the input attribute value information setting unit 409 becomes unnecessary.

ここで、図3に示す構成においては、複数のサブモジュールが配されている。この中に属性値非対応のサブモジュール(以下、属性値非対応サブモジュールと呼ぶ)が混在している場合、そのモジュールでは、属性値が画素値として取り扱われてしまう可能性がある。この場合、正しい出力結果が得られなくなってしまう。図6を用いて、これに対処する構成について説明する。   Here, in the configuration shown in FIG. 3, a plurality of submodules are arranged. If sub-modules that do not support attribute values (hereinafter referred to as sub-modules that do not support attribute values) are mixed, the attribute values may be handled as pixel values in that module. In this case, a correct output result cannot be obtained. A configuration for dealing with this will be described with reference to FIG.

属性値非対応サブモジュール11とスイッチマトリクス17との間には、属性値伝達ラッパー層110が設けられる。属性値伝達ラッパー層110は、スイッチマトリクス17と属性値非対応サブモジュール11との間の中間層(すなわち、中間処理モジュールとして機能する)に位置し、属性値を伝達する役割を果たす。これにより、属性値非対応サブモジュール11は、属性値対応サブモジュールであるかのように振舞うことができる。なお、属性値伝達ラッパー層110の符号401〜408に示す各構成部は、図5を説明した各構成部と同等の機能を果たすため、その説明については省略する。   An attribute value transmission wrapper layer 110 is provided between the attribute value non-corresponding submodule 11 and the switch matrix 17. The attribute value transmission wrapper layer 110 is located in an intermediate layer between the switch matrix 17 and the attribute value non-corresponding submodule 11 (that is, functions as an intermediate processing module) and plays a role of transmitting attribute values. Thereby, the attribute value non-corresponding submodule 11 can behave as if it is an attribute value corresponding submodule. In addition, since each component shown to the code | symbol 401-408 of the attribute value transmission wrapper layer 110 fulfill | performs the function equivalent to each component which demonstrated FIG. 5, the description is abbreviate | omitted.

パラメータ設定部412は、レジスタ101に設定されたパラメータを参照して、画像処理固有の処理パラメータを設定する。画像処理部413は、画素毎に一様な画像処理を行なう(静的画像処理)。具体的には、Bit拡張器404及びパラメータ設定部412等から入力される入力画素値及びパラメータ等を用いて所定の画像処理を行なう。また、画像処理部413は、出力画素値を必要に応じてBit圧縮器408に向けて出力する。なお、スイッチマトリクス17と属性値非対応サブモジュールとの間の制御信号の内、Valid_in、Stall_in、Stall_out、Valid_outについては、属性値伝達ラッパー層110を介さずに両者の間を直結するようにしてもよい。   The parameter setting unit 412 refers to the parameters set in the register 101 and sets processing parameters specific to image processing. The image processing unit 413 performs uniform image processing for each pixel (static image processing). Specifically, predetermined image processing is performed using input pixel values, parameters, and the like input from the bit expander 404, the parameter setting unit 412, and the like. Further, the image processing unit 413 outputs the output pixel value to the Bit compressor 408 as necessary. Of the control signals between the switch matrix 17 and the attribute value non-corresponding submodule, Valid_in, Stall_in, Stall_out, and Valid_out are directly connected to each other without using the attribute value transmission wrapper layer 110. Also good.

属性値伝達ラッパー層110から属性値非対応サブモジュール11へのData_inには、入力画素値のみが含まれる。これは、属性値伝達ラッパー層110の入力属性値処理部403及びBit拡張器404において、属性値が取り除かれるためである。また、属性値非対応サブモジュール11から属性値伝達ラッパー層110へのData_outには、出力画素値のみが含まれる。   Data_in from the attribute value transmission wrapper layer 110 to the attribute value incompatible sub-module 11 includes only the input pixel value. This is because the attribute value is removed in the input attribute value processing unit 403 and the bit expander 404 of the attribute value transmission wrapper layer 110. Further, Data_out from the attribute value non-corresponding submodule 11 to the attribute value transmission wrapper layer 110 includes only the output pixel value.

以上の構成により画像処理部413を変更せずに、属性値を伝達する仕組みを実現できる。ここで、仮に、画像処理部413において、32bit演算処理を行なうとした場合、画素値のBit幅が属性値の分、低減することになるが、画像処理の精度自体が変わる分けではない。また、属性値伝達ラッパー層110を設けることにより、属性値対応サブモジュールと属性値非対応サブモジュールとが混在した画像処理モジュール4を構成できる。これにより、共通のフォーマット(すなわち、処理用画像データ)を用いて、bit数の多い高精度な画像処理(静的)と、相対的にbit数は減るが適応的な画像処理との両方を実現することができる。   With the above configuration, it is possible to realize a mechanism for transmitting attribute values without changing the image processing unit 413. Here, if the image processing unit 413 performs 32-bit calculation processing, the bit width of the pixel value is reduced by the attribute value, but the accuracy of the image processing itself is not changed. Further, by providing the attribute value transmission wrapper layer 110, it is possible to configure the image processing module 4 in which the attribute value compatible submodule and the attribute value non-compatible submodule are mixed. Thus, using a common format (that is, processing image data), both high-precision image processing with a large number of bits (static) and adaptive image processing with a relatively small number of bits. Can be realized.

次に、「表1」を用いて、入力データ処理方法設定部401により設定される設定情報について説明する。すなわち、入力属性値処理部403及びBit拡張器404は、この「表1」の設定情報に基づいて各種処理を実行する。なお、「表1」に示す設定値はあくまで一例であり、これに限られない。
(表1)

Figure 0005534722
Next, setting information set by the input data processing method setting unit 401 will be described using “Table 1”. That is, the input attribute value processing unit 403 and the bit expander 404 execute various processes based on the setting information of “Table 1”. Note that the setting values shown in “Table 1” are merely examples, and the present invention is not limited thereto.
(Table 1)
Figure 0005534722

[Get_Mode10]
この設定は、処理用画像データが図4に示すフォーマット301である場合に好適である。この場合、処理用画像データ(すなわち、96bit)は、全て画素値フィールド(画素値フィールド32bit x 3)で構成される。この設定では、入力属性値処理部403は、属性値フィールドに全て0(標準値)を設定する。なお、この場合、画素値が32bitあるので、Bit拡張器404は動作しない。
[Get_Mode10]
This setting is suitable when the processing image data has the format 301 shown in FIG. In this case, the processing image data (that is, 96 bits) are all configured by a pixel value field (pixel value field 32 bits × 3). In this setting, the input attribute value processing unit 403 sets all 0 (standard value) in the attribute value field. In this case, since the pixel value is 32 bits, the Bit expander 404 does not operate.

[Get_Mode11]
この設定は、処理用画像データが図4に示すフォーマット302である場合に好適である。この場合、処理用画像データ(すなわち、96bit)は、画素値フィールドの24bit x 3と、属性値フィールドの8bit x 3とから構成される。この設定では、入力属性値処理部403は、属性値フィールドに全て0(標準値)を設定(上書き)する。これにより、画像処理部413においては、適応的な画像処理ではなく、静的な画像処理が行なわれる。また、この場合、画素値が24bitなので、Bit拡張器404は、「24bit」から「32bit」へのBit拡張を行なう。この「Get_Mode11」の設定は、例えば、他のサブモジュールの処理内容を属性値として生成し、それを設定する役割を果たすモジュール等で用いられる。例えば、「Get_Mode11」を実行するサブモジュールでは、画像の特徴を抽出する処理(エッジ部であるか否かの判定等)を行ない、元の画素値とともに出力する。この場合、「Get_Mode11」を実行するサブモジュールでは、画像処理部413において、画素値フィールドの画素値に基づき画像の特徴を抽出する。そして、その判定結果を属性値として生成し、生成した属性値を属性値フィールドに設定する。また、なんら加工や補正を行なっていない画素値を画素値フィールドに設定する。その後、出力属性値処理部407において、処理用画像データを出力する。この処理用画像データがスイッチマトリクス17を介して後続のサブモジュールへ転送される。すると、後続のサブモジュールでは、受け取った処理用画像データの属性値フィールドに設定された属性値を用いて、画素値に対する処理内容を決定して適応的に画像処理を実行する。また、この「Get_Mode11」の設定では、入力属性値処理部403において、属性値フィールドに0を設定してしまうため、属性値の伝播を中止できる。なお、属性値の伝播の中止のみを行なうのであれば、属性値フィールドに0を設定した処理用画像データを出力すればよいので、属性値の出力側、すなわち、出力属性値処理部407において、この処理(0パディング)を行なうようにしてもよい。更に、属性値の伝播を中止するとともに、新たに生成した属性値を属性値フィールドに設定する場合には、入力属性値処理部403で属性値を0にしなくてもよい。具体的には、画像処理部413において、属性値を用いずに画像処理を実施し、新たに生成した属性値を、属性値の出力側、すなわち、出力属性値処理部407において、属性値フィールドに設定する。そして、出力属性値処理部407において、処理用画像データを出力する。「Get_Mode11」を設定した場合、サブモジュール単体で処理が閉じることになるので、人為的ミス等が介在する可能性を低減させることができる。
[Get_Mode11]
This setting is suitable when the processing image data has the format 302 shown in FIG. In this case, the processing image data (ie, 96 bits) is composed of a pixel value field of 24 bits × 3 and an attribute value field of 8 bits × 3. In this setting, the input attribute value processing unit 403 sets (overwrites) all 0 (standard value) in the attribute value field. As a result, the image processing unit 413 performs static image processing instead of adaptive image processing. In this case, since the pixel value is 24 bits, the Bit expander 404 performs Bit expansion from “24 bits” to “32 bits”. The setting of “Get_Mode 11” is used in, for example, a module that generates processing contents of other submodules as attribute values and plays a role of setting them. For example, a sub-module that executes “Get_Mode 11” performs a process of extracting an image feature (determination of whether or not it is an edge portion or the like) and outputs it together with the original pixel value. In this case, in the submodule that executes “Get_Mode 11”, the image processing unit 413 extracts image features based on the pixel value in the pixel value field. Then, the determination result is generated as an attribute value, and the generated attribute value is set in the attribute value field. In addition, a pixel value that has not been processed or corrected is set in the pixel value field. Thereafter, the output attribute value processing unit 407 outputs processing image data. This processing image data is transferred to the subsequent submodule via the switch matrix 17. Then, in the subsequent submodule, using the attribute value set in the attribute value field of the received processing image data, the processing content for the pixel value is determined and the image processing is adaptively executed. In addition, in the setting of “Get_Mode11”, the input attribute value processing unit 403 sets 0 in the attribute value field, so that the propagation of the attribute value can be stopped. If only the propagation of the attribute value is to be stopped, the processing image data in which 0 is set in the attribute value field may be output. Therefore, in the output side of the attribute value, that is, in the output attribute value processing unit 407, This process (0 padding) may be performed. Further, when the propagation of the attribute value is stopped and the newly generated attribute value is set in the attribute value field, the input attribute value processing unit 403 does not have to set the attribute value to 0. Specifically, the image processing unit 413 performs image processing without using the attribute value, and the newly generated attribute value is sent to the attribute value output side, that is, the output attribute value processing unit 407 in the attribute value field. Set to. Then, the output attribute value processing unit 407 outputs processing image data. When “Get_Mode 11” is set, the process is closed by the sub module alone, so that the possibility of human error is reduced.

[Get_Mode12]
この設定は、処理用画像データが図4に示すフォーマット302である場合に好適である。この設定では、入力属性値処理部403は、入力された処理用画像データに含まれる属性値をそのまま設定することになる。「Get_Mode12」の設定は、例えば、属性値を使用して適応的な画像処理を行なう場合に用いられる。
[Get_Mode12]
This setting is suitable when the processing image data has the format 302 shown in FIG. In this setting, the input attribute value processing unit 403 sets the attribute value included in the input processing image data as it is. The setting of “Get_Mode12” is used when adaptive image processing is performed using attribute values, for example.

[Get_Mode13]
この設定は、上述した「Get_Mode11」とほぼ同じ動作となる。処理用画像データが図4に示すフォーマット303〜305である場合に好適である。「Get_Mode11」との相違点としては、属性値及び画素値のBit数にある。「Get_Mode13」を設定した場合、Bit拡張器404によるBitの拡張度合いは、「16bit」から「32bit」となる。
[Get_Mode13]
This setting is substantially the same operation as “Get_Mode 11” described above. This is suitable when the processing image data has the formats 303 to 305 shown in FIG. The difference from “Get_Mode 11” is the number of bits of the attribute value and the pixel value. When “Get_Mode 13” is set, the degree of bit expansion by the bit expander 404 is changed from “16 bits” to “32 bits”.

[Get_Mode14]
この設定は、上述したGet_Mode12とほぼ同じ動作となる。処理用画像データが図4に示すフォーマット303〜305である場合に好適である。「Get_Mode12」との相違点としては、属性値及び画素値のBit数にある。「Get_Mode14」を設定した場合、Bit拡張器404によるBitの拡張度合いは、「16bit」から「32bit」となる。
[Get_Mode14]
This setting is substantially the same operation as the above-described Get_Mode 12. This is suitable when the processing image data has the formats 303 to 305 shown in FIG. The difference from “Get_Mode12” is the number of bits of the attribute value and the pixel value. When “Get_Mode 14” is set, the degree of bit expansion by the bit expander 404 is changed from “16 bits” to “32 bits”.

次に、「表2」を用いて、出力データ処理方法設定部402により設定される設定情報について説明する。すなわち、出力属性値処理部407及びBit圧縮器408は、この「表2」の設定情報に基づいて各種処理を実行する。なお、「表2」に示す設定値はあくまで一例であり、これに限られない。
(表2)

Figure 0005534722
Next, setting information set by the output data processing method setting unit 402 will be described using “Table 2”. That is, the output attribute value processing unit 407 and the Bit compressor 408 execute various processes based on the setting information of “Table 2”. The set values shown in “Table 2” are merely examples, and the present invention is not limited to these.
(Table 2)
Figure 0005534722

[Put_Mode20]
この設定は、出力する処理用画像データが図4に示すフォーマット301である場合に好適である。この場合、処理用画像データ(すなわち、96bit)は、全て画素値フィールド(画素値フィールド 32bit x 3)で構成される。この設定では、出力属性値処理部407では属性値を設定しない。また、画素値が32bitあるので、Bit圧縮器408も動作しない。
[Put_Mode20]
This setting is suitable when the processing image data to be output is in the format 301 shown in FIG. In this case, all the processing image data (that is, 96 bits) is composed of a pixel value field (pixel value field 32 bits × 3). With this setting, the output attribute value processing unit 407 does not set an attribute value. In addition, since the pixel value is 32 bits, the Bit compressor 408 does not operate.

[Put_Mode21]
この設定は、出力する処理用画像データが図4に示すフォーマット302である場合に好適である。この場合、処理用画像データ(すなわち、96bit)は、画素値フィールドの24bit x 3と、属性値フィールドの8bit x 3とから構成される。この設定では、出力属性値処理部407は、属性値フィールドに全て0(標準値)を設定(上書き)する。これにより、他のサブモジュールに向けては、属性値が無効な状態の処理用画像データが出力されることになる。また、画素値が32bitあるので、Bit圧縮器408は、「32bit」から「24bit」へのBit圧縮を行なう。この「Put_Mode21」の設定は、例えば、自身(当該サブモジュール)は、属性値を用いた適応的な画像処理を実施するが、他のサブモジュールでは、属性値を用いない静的な画像処理を実施させる場合に用いられる。「Put_Mode21」の設定では、属性値フィールドに0を設定するため、属性値の伝播を中止できる。なお、属性値の入力側、すなわち、入力属性値処理部403において、この処理(0パディング)を行なうようにしてもよい。「Put_Mode21」を設定した場合、他の属性値非対応サブモジュールでの弊害発生確率を低減させることができる。
[Put_Mode21]
This setting is suitable when the processing image data to be output is in the format 302 shown in FIG. In this case, the processing image data (ie, 96 bits) is composed of a pixel value field of 24 bits × 3 and an attribute value field of 8 bits × 3. In this setting, the output attribute value processing unit 407 sets (overwrites) all 0 (standard value) in the attribute value field. As a result, the processing image data in which the attribute value is invalid is output toward the other submodule. Also, since the pixel value is 32 bits, the Bit compressor 408 performs Bit compression from “32 bits” to “24 bits”. This “Put_Mode 21” is set, for example, by itself (the submodule) performing adaptive image processing using attribute values, but in other submodules, static image processing that does not use attribute values is performed. Used for implementation. In the setting of “Put_Mode 21”, since the attribute value field is set to 0, the propagation of the attribute value can be stopped. Note that this processing (0 padding) may be performed on the attribute value input side, that is, the input attribute value processing unit 403. When “Put_Mode 21” is set, it is possible to reduce the probability of adverse effects occurring in other attribute value incompatible submodules.

[Put_Mode22]
この設定は、上述した「Put_Mode21」とほぼ同じ動作となる。処理用画像データが図4に示すフォーマット302である場合に好適である。この設定の場合、出力属性値処理部407は、画像処理部413から出力された属性値をそのまま用いて属性値を設定する。また、画素値が32bitあるので、Bit圧縮器408は、「32bit」から「24bit」へのBit圧縮を行なう。「Put_Mode22」の設定は、例えば、他のサブモジュールの処理内容を属性値として生成し、それを設定する役割を果たすモジュール等で用いられる。
[Put_Mode22]
This setting is substantially the same operation as “Put_Mode 21” described above. This is suitable when the processing image data has the format 302 shown in FIG. In this setting, the output attribute value processing unit 407 sets the attribute value using the attribute value output from the image processing unit 413 as it is. Also, since the pixel value is 32 bits, the Bit compressor 408 performs Bit compression from “32 bits” to “24 bits”. The setting of “Put_Mode 22” is used in, for example, a module that generates processing contents of other submodules as attribute values and plays a role of setting them.

[Put_Mode23]
この設定は、上述した「Put_Mode21」とほぼ同じ動作となる。処理用画像データが図4に示すフォーマット303〜305である場合に好適である。「Put_Mode21」との相違点としては、属性値及び画素値のBit数にある。「Put_Mode23」を設定した場合、Bit圧縮器408によるBitの圧縮度合いが「32bit」から「16bit」となる。
[Put_Mode23]
This setting is substantially the same operation as “Put_Mode 21” described above. This is suitable when the processing image data has the formats 303 to 305 shown in FIG. The difference from “Put_Mode 21” is the number of bits of the attribute value and the pixel value. When “Put_Mode 23” is set, the bit compression degree by the bit compressor 408 is changed from “32 bits” to “16 bits”.

[Put_Mode24]
この設定は、上述した「Put_Mode22」とほぼ同じ動作となる。処理用画像データが図4に示すフォーマット303〜305である場合に好適な設定である。「Put_Mode22」との相違点としては、属性値及び画素値のBit数にある。「Put_Mode24」を設定した場合、Bit圧縮器408によるBitの圧縮度合いが「32bit」から「16bit」となる。
[Put_Mode24]
This setting is substantially the same operation as “Put_Mode 22” described above. This setting is suitable when the processing image data has the formats 303 to 305 shown in FIG. The difference from “Put_Mode 22” is the number of bits of the attribute value and the pixel value. When “Put_Mode 24” is set, the bit compression degree by the bit compressor 408 is changed from “32 bits” to “16 bits”.

以上のように「表2」に示す設定情報を用いて処理を行なうことにより、属性値対応サブモジュールでの属性値の使用・未使用等を制御できる。これにより、様々な画像処理を同一リソース(画像処理部)を用いて実現できる。また、処理用画像データ内のどのフィールドを属性値又は画素値に使用するかを自由に設計できるため、画像処理設計の柔軟性を実現しつつ、様々な用途にサブモジュールを利用できる。   As described above, by using the setting information shown in “Table 2”, it is possible to control the use / non-use of attribute values in the attribute value corresponding submodule. Thereby, various image processing can be realized using the same resource (image processing unit). In addition, since it is possible to freely design which field in the processing image data is used for the attribute value or the pixel value, the submodule can be used for various purposes while realizing the flexibility of the image processing design.

次に、「表3」を用いて、入力属性値情報設定部409により設定される設定情報について説明する。第2の属性値管理部411は、画像処理の開始前において、この「表3」の設定情報に基づいて各種処理を実行する。ここでは、図4に示すフォーマット302(属性値フィールドが3つ)を使用する場合の設定情報を例に挙げて説明する。
(表3)

Figure 0005534722
Next, setting information set by the input attribute value information setting unit 409 will be described using “Table 3”. The second attribute value management unit 411 executes various processes based on the setting information in “Table 3” before starting the image processing. Here, setting information when using the format 302 (three attribute value fields) shown in FIG. 4 will be described as an example.
(Table 3)
Figure 0005534722

[In_Mode30]
この設定では、画像処理に属性値を使用しない。すなわち、第2の属性値管理部411において、属性値を画像処理部413に入力しない。この場合、サブモジュールは、属性値非対応サブモジュールとして動作する。この設定は、例えば、画像処理部413で静的な画像処理を実施する場合に好適である。画像処理部413に静的な画像処理を実施させる方法は種々あるが、例えば、画像処理部413に伝達される属性値を全て0(標準値)とすればよい。「表1」に示す「Get_Mode11」を設定した場合にも、属性値フィールドを0に設定できるが、「In_Mode30」を設定した場合には、他のサブモジュールから受け取った属性値自体を0に変更するのではないため、属性値の伝播は継続される。
[In_Mode30]
With this setting, attribute values are not used for image processing. That is, the attribute value is not input to the image processing unit 413 in the second attribute value management unit 411. In this case, the submodule operates as an attribute value non-corresponding submodule. This setting is suitable, for example, when the image processing unit 413 performs static image processing. There are various methods for causing the image processing unit 413 to perform static image processing. For example, all the attribute values transmitted to the image processing unit 413 may be set to 0 (standard value). Even when “Get_Mode11” shown in “Table 1” is set, the attribute value field can be set to 0. However, when “In_Mode30” is set, the attribute value itself received from another submodule is changed to 0. Because of this, attribute value propagation continues.

[In_Mode31]
この設定は、複数の属性値フィールド(A0〜A2)の内、属性値フィールドA0のみを用いて画素値フィールド全て(3チャネル)に対して適応的な画像処理を実施する場合に好適である。「In_Mode31」を設定した場合、画像処理は、他の属性値フィールド(A1、A2)を用いずに行なわれる。「In_Mode31」を設定した場合、同一の属性値を用いて画素値フィールドの全チャネル(RGB)に対して適応的な画像処理を実施できる。ここで、A0は、図4に示すフォーマット302の属性値フィールド3024であり、A1は、図4に示すフォーマット302の属性値フィールド3025であり、A2は、図4に示すフォーマット302の属性値フィールド3026である。以下の実施形態1〜5において、A0〜A2は、属性値フィールド3024〜3026を指す。
[In_Mode31]
This setting is suitable when adaptive image processing is performed on all the pixel value fields (3 channels) using only the attribute value field A0 among the plurality of attribute value fields (A0 to A2). When “In_Mode 31” is set, the image processing is performed without using the other attribute value fields (A1, A2). When “In_Mode 31” is set, adaptive image processing can be performed on all channels (RGB) of the pixel value field using the same attribute value. Here, A0 is the attribute value field 3024 of the format 302 shown in FIG. 4, A1 is the attribute value field 3025 of the format 302 shown in FIG. 4, and A2 is the attribute value field of the format 302 shown in FIG. 3026. In the following first to fifth embodiments, A0 to A2 indicate attribute value fields 3024 to 3026.

[In_Mode32]
この設定は、複数の属性値フィールド(A0〜A2)の内、属性値フィールドA1のみを用いて画素値フィールド全て(3チャネル)に対して適応的な画像処理を実施する場合に好適である。「In_Mode32」を設定した場合、画像処理は、他の属性値フィールド(A0、A2)を用いずに行なわれる。「In_Mode32」を設定した場合、同一の属性値を用いて画素値フィールドの全チャネル(RGB)に対して適応的な画像処理を実施できる。
[In_Mode32]
This setting is suitable when adaptive image processing is performed for all the pixel value fields (3 channels) using only the attribute value field A1 among the plurality of attribute value fields (A0 to A2). When “In_Mode 32” is set, the image processing is performed without using other attribute value fields (A0, A2). When “In_Mode 32” is set, adaptive image processing can be performed on all channels (RGB) of the pixel value field using the same attribute value.

[In_Mode33]
この設定は、複数の属性値フィールド(A0〜A2)の内、属性値フィールドA2のみを用いて画素値フィールド全て(3チャネル)に対して適応的な画像処理を実施する場合に好適である。「In_Mode33」を設定した場合、画像処理は、他の属性値フィールド(A0、A1)を用いずに行なわれる。「In_Mode33」を設定した場合、同一の属性値を用いて画素値フィールドの全チャネル(RGB)に対して適応的な画像処理を実施できる。
[In_Mode33]
This setting is suitable when adaptive image processing is performed for all the pixel value fields (3 channels) using only the attribute value field A2 among the plurality of attribute value fields (A0 to A2). When “In_Mode 33” is set, the image processing is performed without using other attribute value fields (A0, A1). When “In_Mode 33” is set, adaptive image processing can be performed on all channels (RGB) of the pixel value field using the same attribute value.

[In_Mode34]
この設定は、属性値フィールドA0を画素値R、属性値フィールドA1を画素値G、属性値フィールドA2を画素値B、に用いて適応的な画像処理を実施する場合に好適である。
[In_Mode34]
This setting is suitable when adaptive image processing is performed using the attribute value field A0 as the pixel value R, the attribute value field A1 as the pixel value G, and the attribute value field A2 as the pixel value B.

以上のように「In_Mode30〜34」を選択的に用いて処理を行なうことにより、複数の属性値フィールドの少なくとも1つの情報を用いて適応的な画像処理を実施できる。なお、「表3」に示す設定値はあくまで一例であり、これに限られない。例えば、画素値がR、G、Bではなく、Y、Cb、Crのように、明るさ(Y)情報や色(Cb/Cr)情報を含む場合には、明るさに関しては属性値フィールドA0、色に関しては属性値フィールドA1、を用いて適応的な画像処理を実施するようにしてもよい。この場合、属性値フィールドA2には、例えば、他のサブモジュールが用いる属性値等を設定すればよい。   As described above, by performing processing using “In_Mode 30 to 34” selectively, adaptive image processing can be performed using at least one piece of information in a plurality of attribute value fields. The set values shown in “Table 3” are merely examples, and the present invention is not limited to these. For example, when the pixel value includes brightness (Y) information and color (Cb / Cr) information such as Y, Cb, and Cr instead of R, G, and B, the attribute value field A0 regarding brightness is included. For color, adaptive image processing may be performed using the attribute value field A1. In this case, for example, an attribute value used by another submodule may be set in the attribute value field A2.

次に、「表4」を用いて、出力属性値情報設定部410により設定される設定情報について説明する。第2の属性値管理部411は、画像処理の終了後において、この「表4」の設定情報に基づいて各種処理を実行する。ここでは、図4に示すフォーマット303(属性値フィールドが6つ)を使用する場合の設定情報を例に挙げて説明する。
(表4)

Figure 0005534722
Next, setting information set by the output attribute value information setting unit 410 will be described using “Table 4”. The second attribute value management unit 411 executes various processes based on the setting information in “Table 4” after the image processing is completed. Here, setting information when using the format 303 (six attribute value fields) shown in FIG. 4 will be described as an example.
(Table 4)
Figure 0005534722

[Out_Mode40]
この設定は、自身(当該サブモジュール)において属性値の設定を行なわない場合に好適である。すなわち、出力属性値は、入力属性値そのままとなり、両者は同じ値となる。
[Out_Mode 40]
This setting is suitable when the attribute value is not set by itself (the submodule). That is, the output attribute value remains as the input attribute value, and both are the same value.

[Out_Mode41]
この設定は、複数の属性値フィールド(A0〜A2)の内、属性値フィールドA0のみを新たに設定する場合に好適である。「Out_Mode41」を設定した場合、他の属性値フィールド(A1、A2)は更新されない。
[Out_Mode41]
This setting is suitable when only the attribute value field A0 is newly set among the plurality of attribute value fields (A0 to A2). When “Out_Mode 41” is set, the other attribute value fields (A1, A2) are not updated.

[Out_Mode42]
この設定は、複数の属性値フィールド(A0〜A2)の内、属性値フィールドA1のみを新たに設定する場合に好適である。「Out_Mode42」を設定した場合、他の属性値フィールド(A0、A2)は更新されない。
[Out_Mode42]
This setting is suitable when only the attribute value field A1 is newly set out of the plurality of attribute value fields (A0 to A2). When “Out_Mode 42” is set, the other attribute value fields (A0, A2) are not updated.

[Out_Mode43]
この設定は、複数の属性値フィールド(A0〜A2)の内、属性値フィールドA2のみを新たに設定する場合に好適である。「Out_Mode43」を設定した場合、他の属性値フィールド(A0、A1)は更新されない。
[Out_Mode43]
This setting is suitable when only the attribute value field A2 is newly set among the plurality of attribute value fields (A0 to A2). When “Out_Mode 43” is set, the other attribute value fields (A0, A1) are not updated.

[Out_Mode44]
この設定は、複数の属性値フィールドA0〜A2の全てを新たに設定する場合に好適である。
[Out_Mode44]
This setting is suitable when all of the plurality of attribute value fields A0 to A2 are newly set.

以上のように「Out_Mode40〜44」を選択的に用いて処理を行なうことにより、複数の属性値フィールドの少なくとも1つの情報を設定変更できる。これにより、他のサブモジュールで適応的な画像処理を実施させることができる。なお、「表4」に示す設定値はあくまで一例であり、これに限られない。例えば、画素値がR、G、Bではなく、Y、Cb、Crのように、明るさ(Y)情報や色(Cb/Cr)情報を含む場合には、明るさに関しては属性値フィールドA0、色に関しては属性値フィールドA1に対して異なる属性値を設定すればよい。この場合、属性値フィールドA2には、例えば、他のサブモジュールが用いる属性値等を設定すればよい。   As described above, by selectively using “Out_Mode 40 to 44”, it is possible to change the setting of at least one piece of information in the plurality of attribute value fields. As a result, adaptive image processing can be performed in other submodules. The set values shown in “Table 4” are merely examples, and the present invention is not limited to these. For example, when the pixel value includes brightness (Y) information and color (Cb / Cr) information such as Y, Cb, and Cr instead of R, G, and B, the attribute value field A0 regarding brightness is included. As for colors, different attribute values may be set for the attribute value field A1. In this case, for example, an attribute value used by another submodule may be set in the attribute value field A2.

次に、実施形態1〜7を用いて、画像処理サブモジュールにおける動作例と、それに伴う設定情報の設定例とについていくつか例を挙げて説明する。   Next, with reference to the first to seventh embodiments, an operation example in the image processing submodule and a setting example of setting information associated therewith will be described with some examples.

(実施形態1)
図7は、3つの属性値対応サブモジュールにおいて、外部から伝達された3つの属性値各々を使用して画像処理を行なう場合の概要を示している。ここでは、写真印刷に際して、逆光補正、赤目補正、ノイズ補正を行なう場合を例に挙げて説明する。なお、使用する処理用画像データは、図4に示すフォーマット302(属性値フィールドが3つ)であるものとする。
(Embodiment 1)
FIG. 7 shows an outline in the case where image processing is performed using each of the three attribute values transmitted from the outside in the three attribute value corresponding sub-modules. Here, a case where backlight correction, red-eye correction, and noise correction are performed during photo printing will be described as an example. Note that the processing image data to be used has a format 302 (three attribute value fields) shown in FIG.

ここでまず、各サブモジュールで実施される処理について説明する。逆光補正は、暗部を明るくする処理(例えば、一次元ルックアップテーブルを用いた階調変換)であり、暗部にだけ補正処理を施す必要がある。赤目補正は、赤色を黒くする処理(例えば、三次元ルックアップテーブルを用いた色変換)であり、赤目エリアにだけ補正処理を施す必要がある。ノイズ補正は、ノイズ発生エリアをぼかす(例えば、二次元平面フィルタを用いた平滑化)処理であり、ノイズ発生エリアにだけ補正処理を施す必要がある。なお、これら補正処理は、いかなる方法で実現されてもよい。   Here, first, processing performed in each submodule will be described. Backlight correction is a process for brightening a dark part (for example, gradation conversion using a one-dimensional lookup table), and it is necessary to perform a correction process only on the dark part. Red-eye correction is a process for blackening red (for example, color conversion using a three-dimensional lookup table), and it is necessary to perform a correction process only on the red-eye area. The noise correction is a process for blurring the noise generation area (for example, smoothing using a two-dimensional planar filter), and it is necessary to perform the correction process only on the noise generation area. Note that these correction processes may be realized by any method.

サブモジュールと補正処理との関係は以下の通りとする。
逆光補正処理サブモジュール11−1:逆光補正処理(一次元ルックアップテーブルによる階調変換処理:属性値0で補正なし、属性値1で補正あり)
赤目補正処理サブモジュール11−2:赤目補正処理(三次元ルックアップテーブルによる色変換処理:属性値0で補正なし、属性値1で補正あり)
ノイズ補正処理サブモジュール11−3:ノイズ補正処理(二次元平面フィルタによる平滑化処理:属性値0で補正なし、属性値1で補正あり)
なお、補正の有無については、あくまで一例であり、属性値の値(8bit時:0〜255)を補正強度としてもよい。また、属性値によって補正の有り・無しを指定するのではなく、属性値によって参照するルックアップテーブルやフィルタ係数を切り替えるようにしてもよい。その場合、例えば、第1のルックアップテーブルを補正無しのテーブルとし、第2のルックアップテーブルを補正有りのテーブルとして設け、互いを切り替えて使用する。また更に、第3のルックアップテーブルを設け、逆方向の補正を行なうようにしてもよい。この場合、例えば、ぼかし〜補正なし〜エッジ強調等の処理を属性値により切り替えることができる。
The relationship between the submodule and the correction process is as follows.
Backlight correction processing sub-module 11-1: Backlight correction processing (gradation conversion processing using a one-dimensional lookup table: no correction at attribute value 0, correction at attribute value 1)
Red-eye correction processing sub-module 11-2: Red-eye correction processing (color conversion processing using a three-dimensional lookup table: no correction at attribute value 0, correction at attribute value 1)
Noise correction processing sub-module 11-3: Noise correction processing (smoothing processing using a two-dimensional plane filter: no correction at attribute value 0, correction at attribute value 1)
Note that the presence or absence of correction is merely an example, and the value of the attribute value (8-bit: 0 to 255) may be used as the correction strength. Further, instead of designating the presence or absence of correction according to the attribute value, a lookup table or a filter coefficient referred to by the attribute value may be switched. In that case, for example, the first look-up table is used as a table without correction, and the second look-up table is provided as a table with correction. Furthermore, a third look-up table may be provided to correct in the reverse direction. In this case, for example, processing such as blurring, no correction, edge enhancement, and the like can be switched according to the attribute value.

ここで、図8を用いて、図7に示す構成における画像処理(例えば、写真印刷時)の流れの一例について説明する。   Here, an example of the flow of image processing (for example, during photo printing) in the configuration shown in FIG. 7 will be described with reference to FIG.

画像処理装置100は、CPU1において、まず、画像処理対象の写真が逆光写真であるか否かを判定し、補正すべき暗部を特定する(S101)。暗部の特定が済むと、画像処理装置100は、CPU1において、画像処理対象の写真内に赤目が発生しているか否かを判定し、補正すべき赤目エリアを特定する(S102)。また、画像処理装置100は、CPU1において、画像処理対象の写真内に撮影ノイズが発生しているか否かを判定し、補正すべきノイズ発生エリアを特定する(S103)。   The image processing apparatus 100 first determines in the CPU 1 whether or not the photo to be processed is a backlight photo, and specifies a dark part to be corrected (S101). When the dark part is specified, the image processing apparatus 100 determines in the CPU 1 whether or not red eyes have occurred in the image to be processed, and specifies the red eye area to be corrected (S102). Further, the image processing apparatus 100 determines in the CPU 1 whether or not shooting noise is generated in the image to be processed, and specifies a noise generation area to be corrected (S103).

処理対象となるエリアの特定が済むと、画像処理装置100は、CPU1において、属性値を設定する(S104)。属性値の設定方法としては種々の方法が考えられるが、いかなる方法を用いてもよい。例えば、メモリ(RAM7)内の写真(画像)に直接書き込んでもよい。ここで、属性値の設定内容を以下に示す。この属性値は、上述したS101〜S103における処理の検出結果に応じて画素毎に設定される。
属性値フィールドA0 逆光補正属性値(0:補正不要、1:補正必要)
属性値フィールドA1 赤目補正属性値(0:補正不要、1:補正必要)
属性値フィールドA2 ノイズ補正属性値(0:補正不要、1:補正必要)
When the area to be processed is specified, the image processing apparatus 100 sets an attribute value in the CPU 1 (S104). Various methods are conceivable as the attribute value setting method, and any method may be used. For example, you may write directly in the photograph (image) in memory (RAM7). Here, the setting contents of the attribute value are shown below. This attribute value is set for each pixel according to the detection results of the processes in S101 to S103 described above.
Attribute value field A0 Backlight correction attribute value (0: correction unnecessary, 1: correction required)
Attribute value field A1 Red-eye correction attribute value (0: correction unnecessary, 1: correction required)
Attribute value field A2 Noise correction attribute value (0: correction unnecessary, 1: correction required)

次に、属性値の設定が済むと、画像処理装置100は、CPU1において、モジュール(画像処理モジュール4、サブモジュール11)の動作設定を行なう(S105)。このとき、サブモジュール11−1〜11−3に係わる設定情報には、図7の下部に示す内容が設定される。その他、S105の処理では、サブモジュール11−1〜11−3で使用される一次元及び三次元ルックアップテーブルの設定や、二次元フィルタ係数の設定等も行なわれる。   Next, when the attribute values are set, the image processing apparatus 100 performs operation settings of the modules (image processing module 4 and submodule 11) in the CPU 1 (S105). At this time, the contents shown in the lower part of FIG. In addition, in the process of S105, setting of the one-dimensional and three-dimensional lookup tables used in the submodules 11-1 to 11-3, setting of a two-dimensional filter coefficient, and the like are also performed.

この設定が済むと、画像処理装置100は、CPU1において、画像処理モジュール4及びサブモジュール11−1〜3を起動させる(S106)。これにより、サブモジュール各々は、属性値を個別に使用して各種画像処理を実施する。このサブモジュール11−1〜3で行なわれる画像処理の詳細を下記に示す。   When this setting is completed, the image processing apparatus 100 activates the image processing module 4 and the sub modules 11-1 to 11-3 in the CPU 1 (S106). As a result, each of the submodules performs various image processing using the attribute values individually. Details of the image processing performed in the submodules 11-1 to 3 will be described below.

[逆光補正処理サブモジュール]
入力データ処理 Get_Mode12 属性値A0〜A2を抽出
属性値入力処理 In_Mode31 逆光補正属性値A0に基づいて画像処理
属性値出力処理 Out_Mode40 属性値の更新はなし
出力データ処理 Put_Mode22 属性値A0〜A2を設定(逆光補正出力画素値と結合)して出力
[赤目補正処理サブモジュール]
入力データ処理 Get_Mode12 属性値A0〜A2を抽出
属性値入力処理 In_Mode32 赤目補正属性値A1に基づいて画像処理
属性値出力処理 Out_Mode40 属性値の更新はなし
出力データ処理 Put_Mode22 属性値A0〜A2を設定(赤目補正出力画素値と結合)して出力
[ノイズ補正処理サブモジュール]
入力データ処理 Get_Mode12 属性値A0〜A2を抽出
属性値入力処理 In_Mode33 ノイズ補正属性値A2に基づいて画像処理
属性値出力処理 Out_Mode40 属性値の更新はなし
出力データ処理 Put_Mode22 属性値A0〜A2を設定(ノイズ除去出力画素値と結合)して出力
[Backlight compensation processing sub-module]
Input data processing Get_Mode12 Extract attribute values A0 to A2 Attribute value input processing In_Mode31 Image processing based on backlight correction attribute value A0 Attribute value output processing Out_Mode40 No attribute value update Output data processing Put_Mode22 Set attribute values A0 to A2 (backlight correction) Combined with output pixel value) and output
[Red-eye correction processing submodule]
Input data processing Get_Mode12 Extract attribute values A0 to A2 Attribute value input processing In_Mode32 Image processing based on red-eye correction attribute value A1 Attribute value output processing Out_Mode40 No attribute value update Output data processing Put_Mode22 Set attribute values A0 to A2 (red-eye correction) Combined with output pixel value) and output
[Noise correction processing submodule]
Input data processing Get_Mode12 Extract attribute values A0 to A2 Attribute value input processing In_Mode33 Image processing based on noise correction attribute value A2 Attribute value output processing Out_Mode40 No attribute value update Output data processing Put_Mode22 Set attribute values A0 to A2 (noise removal) Combined with output pixel value) and output

(実施形態2)
次に、図9を用いて、上述したケースと別のユースケースとして、画素値RGB各々に対して個別にぼかし度合いを切り替えてノイズ除去補正を実施する場合について説明する。なお、使用する処理用画像データは、図4に示すフォーマット302(属性値フィールドが3つ)であるものとする。
(Embodiment 2)
Next, a case where noise removal correction is performed by individually switching the degree of blurring for each of the pixel values RGB will be described with reference to FIG. Note that the processing image data to be used has a format 302 (three attribute value fields) shown in FIG.

サブモジュールと補正処理との関係は以下の通りとする。
逆光補正処理サブモジュール11−1 動作しない
赤目補正処理サブモジュール11−2 動作しない
ノイズ補正処理サブモジュール11−3 ノイズ補正処理(二次元平面フィルタによる平滑化処理。属性値A0が0でR補正なし、属性値A0が1でR補正あり、属性値A1が0でG補正なし、属性値A1が1でG補正あり、属性値A2が0でB補正なし、属性値A2が1でB補正あり)
The relationship between the submodule and the correction process is as follows.
Backlight correction processing sub-module 11-1 Does not operate Red-eye correction processing sub-module 11-2 Does not operate Noise correction processing sub-module 11-3 Noise correction processing (smoothing processing using a two-dimensional plane filter. Attribute value A0 is 0 and R correction is not performed , Attribute value A0 is 1 and R is corrected, attribute value A1 is 0 and G is not corrected, attribute value A1 is 1 and G is corrected, attribute value A2 is 0 and B is not corrected, attribute value A2 is 1 and B is corrected )

処理の流れは、上述した図8と同様となるので、ここでは相違点を挙げて説明する。相違点としては、S103から処理が始まる点である。また、S104の処理では、S103の処理の検出結果に応じて以下のように属性値を画素毎に設定する。
属性値フィールドA0 ノイズ補正属性値R(0:R補正不要、1:R補正必要)
属性値フィールドA1 ノイズ補正属性値G(0:G補正不要、1:G補正必要)
属性値フィールドA2 ノイズ補正属性値B(0:B補正不要、1:B補正必要)
Since the flow of processing is the same as that in FIG. 8 described above, only the differences will be described here. The difference is that the process starts from S103. In the process of S104, the attribute value is set for each pixel as follows according to the detection result of the process of S103.
Attribute value field A0 Noise correction attribute value R (0: R correction unnecessary, 1: R correction required)
Attribute value field A1 Noise correction attribute value G (0: G correction unnecessary, 1: G correction required)
Attribute value field A2 Noise correction attribute value B (0: B correction unnecessary, 1: B correction required)

また、S105における設定処理では、サブモジュール11−1〜11−3に係わる設定情報として、図9の下部に示す内容が設定される。その他、S105の処理では、サブモジュール(ノイズ補正処理サブモジュール)11−3で使用される二次元フィルタ係数の設定や、サブモジュール11−1及び11−2の不使用設定等も行なわれる。また、S106における起動処理では、下記に示す設定により、サブモジュール11−3が、属性値を使用して各種画像処理を実施する。   In the setting process in S105, the contents shown in the lower part of FIG. 9 are set as the setting information related to the submodules 11-1 to 11-3. In addition, in the process of S105, the setting of the two-dimensional filter coefficient used in the submodule (noise correction processing submodule) 11-3, the non-use setting of the submodules 11-1 and 11-2, and the like are also performed. In the activation process in S106, the submodule 11-3 performs various image processes using attribute values according to the settings shown below.

[ノイズ補正処理サブモジュール]
入力データ処理 Get_Mode12 属性値A0〜A2を抽出
属性値入力処理 In_Mode34 属性値A0〜A2に基づいて画像処理
属性値出力処理 Out_Mode40 属性値の更新はなし
出力データ処理 Put_Mode22 属性値A0〜A2を設定(ノイズ除去出力画素値と結合)して出力
[Noise correction processing submodule]
Input data processing Get_Mode12 Extract attribute values A0 to A2 Attribute value input processing In_Mode34 Image processing based on attribute values A0 to A2 Attribute value output processing Out_Mode40 No attribute value update Output data processing Put_Mode22 Set attribute values A0 to A2 (noise removal) Combined with output pixel value) and output

以上のように構成した場合、ノイズ補正処理サブモジュール11−3のみが、属性値フィールドの属性値全てに基づいて画像処理を実施する。このとき、それ以外のサブモジュール11−1及び11−2は、画像処理を行なわない(属性値未使用)。当然ではあるが、この場合、逆光補正処理サブモジュール11−1及び赤目補正処理サブモジュール11−2に対して、属性値を使用しない静的な画像処理を実施させることもできる。   When configured as described above, only the noise correction processing submodule 11-3 performs image processing based on all the attribute values in the attribute value field. At this time, the other submodules 11-1 and 11-2 do not perform image processing (attribute value unused). Needless to say, in this case, the backlight correction processing submodule 11-1 and the red-eye correction processing submodule 11-2 can be made to perform static image processing that does not use attribute values.

なお、ノイズ補正処理に際しては、RGB各々のチャネルで補正を行なうか否かの判断を行なうことになるが、補正を行なうか否かは、ユーザが指示するようにしてもよいし、また、画像の解析結果に基づいて自動的に決めるようにしてもよい。自動で行なう場合には、例えば、図8に示すS101及びS102の処理結果に基づいて行なえばよい。具体的には、逆光補正と赤目補正の必要性とが低いと判断された場合に、RGBそれぞれのチャネルでノイズ補正を実施すればよい。つまり、1つの画像処理モジュール4内の一連の処理で補正すべき補正処理の数が多い場合には、それぞれの補正に際して、1つの属性値を用いて全チャネル(RGB)を補正すればよい。また、1つの画像処理モジュール4内の一連の処理で補正すべき補正処理の数が少ない場合には、それぞれの属性値を用いて各チャネルをより細かく補正すればよい。例えば、1つの画像処理モジュール4内の一連の処理で補正すべき補正処理の数が多い場合の一例として、逆光補正、赤目補正、ノイズ補正の3つを補正を行なうものとする。この場合、逆光補正に際しては、1つの属性値A0を用いて全チャネル(RGB)を補正し、赤目補正に際しては、1つの属性値A1を用いて全チャネル(RGB)を補正し、ノイズ補正に際しては、1つの属性値A2を用いて全チャネル(RGB)を補正する。一方、1つの画像処理モジュール4内の一連の処理で補正すべき補正処理の数が少ない場合の一例として、例えば、ノイズ補正のみを行なうとする。この場合、属性値A0を用いてRチャンネルを補正し、属性値A1を用いてGチャンネルを補正し、A2を用いてBチャンネルを補正すれば、より細かく補正できる。   In the noise correction processing, it is determined whether or not correction is performed for each of the RGB channels. However, the user may instruct whether or not to perform correction, or the image may be corrected. It may be determined automatically based on the analysis result. In the case of performing automatically, for example, it may be performed based on the processing results of S101 and S102 shown in FIG. Specifically, when it is determined that the necessity for backlight correction and red-eye correction is low, noise correction may be performed on each of the RGB channels. That is, when the number of correction processes to be corrected by a series of processes in one image processing module 4 is large, all the channels (RGB) may be corrected using one attribute value for each correction. Further, when the number of correction processes to be corrected by a series of processes in one image processing module 4 is small, each channel may be corrected more finely using each attribute value. For example, as an example of a case where the number of correction processes to be corrected by a series of processes in one image processing module 4 is large, three corrections of backlight correction, red-eye correction, and noise correction are performed. In this case, for backlight correction, all channels (RGB) are corrected using one attribute value A0, for red-eye correction, all channels (RGB) are corrected using one attribute value A1, and noise correction is performed. Corrects all channels (RGB) using one attribute value A2. On the other hand, as an example of a case where the number of correction processes to be corrected by a series of processes in one image processing module 4 is small, for example, only noise correction is performed. In this case, the correction can be made more finely by correcting the R channel using the attribute value A0, correcting the G channel using the attribute value A1, and correcting the B channel using A2.

(実施形態3)
次に、図10を用いて、上述したケースと別のユースケースとして、コピー時に文字領域と写真領域とを像域分離し、写真領域には写真用の色補正処理、文字領域には文字加工処理を行なう場合について説明する。なお、使用する処理用画像データは、図4に示すフォーマット302(属性値フィールドが3つ)であるものとする。
(Embodiment 3)
Next, as a use case different from the case described above with reference to FIG. 10, the image area is separated from the character area and the photograph area at the time of copying, the color correction processing for the photograph is performed in the photograph area, and the character processing is performed in the character area. A case where processing is performed will be described. Note that the processing image data to be used has a format 302 (three attribute value fields) shown in FIG.

ここでまず、各サブモジュールで実施される処理について説明する。像域分離は、文字領域と写真領域とを判定する処理(例:局所的な濃度変化を用いて閾値と比較して判定)である。色補正は、写真に好適な色補正を行なう処理(例:三次元ルックアップテーブルを用いた色変換)であり、写真領域にだけ補正処理を施す必要がある。文字加工は、文字をくっきりさせる処理(例:二次元平面フィルタを用いたエッジ強調処理)であり、文字領域にだけ補正処理を施す必要がある。なお、これら補正処理は、いかなる方法で実現されてもよい。   Here, first, processing performed in each submodule will be described. Image area separation is a process for determining a character area and a photographic area (eg, determination by comparing with a threshold value using a local density change). Color correction is a process for performing color correction suitable for a photograph (for example, color conversion using a three-dimensional lookup table), and it is necessary to perform a correction process only on a photograph area. Character processing is processing for sharpening characters (eg, edge enhancement processing using a two-dimensional plane filter), and correction processing needs to be performed only on the character area. Note that these correction processes may be realized by any method.

サブモジュールと補正処理との関係は以下の通りとする。
像域分離処理サブモジュール11−0 像域分離処理(注目画素の画素値と注目画素周辺にある周辺画素の画素値との比較処理:文字領域は属性値を0に設定、写真領域は属性値を1に設定)
色補正処理サブモジュール11−2 色補正処理(三次元ルックアップテーブルによる色変換処理:属性値0で補正なし、属性値1で補正あり)
文字加工処理サブモジュール11−3 文字加工処理(二次元平面フィルタによる平滑化処理:属性値0で補正あり、属性値1で補正なし)
ここで、像域分離処理サブモジュールに11−0という符号を使用している。これは、図7及び図8の逆光補正処理サブモジュール11−1が補正処理を行なうのに対して、当該補正処理とは異なる像域分離処理を行なうサブモジュールであることを明示するため便宜上付与した符号である。つまり、像域分離処理サブモジュール11−0は、図3に示すサブモジュール11−1に該当するサブモジュールである。
The relationship between the submodule and the correction process is as follows.
Image Area Separation Processing Submodule 11-0 Image Area Separation Process (Comparison processing between the pixel value of the target pixel and the pixel values of surrounding pixels around the target pixel: the attribute value is set to 0 for the character area, and the attribute value for the photo area Is set to 1)
Color correction processing sub-module 11-2 Color correction processing (color conversion processing using a three-dimensional lookup table: no correction at attribute value 0, correction at attribute value 1)
Character processing sub-module 11-3 Character processing (smoothing using a two-dimensional plane filter: correction with attribute value 0, no correction with attribute value 1)
Here, the code 11-0 is used for the image area separation processing submodule. This is provided for convenience in order to clearly show that the backlight correction processing submodule 11-1 in FIGS. 7 and 8 performs the correction processing, but is a submodule that performs image area separation processing different from the correction processing. It is a code. That is, the image area separation processing submodule 11-0 is a submodule corresponding to the submodule 11-1 shown in FIG.

なお、名称は異なるが、色補正処理サブモジュールと上述した赤目補正処理サブモジュールとは同一のサブモジュールで実現でき、文字加工処理サブモジュールと上述したノイズ補正処理サブモジュールとは同一のモジュールで実現できる。但し、パラメータや属性値を変更して設定する必要がある。すなわち、同一のサブモジュールにおいて、写真印刷時とコピー時とで異なる画像処理を実施できる。   Although the names are different, the color correction processing sub-module and the above-described red-eye correction processing sub-module can be realized by the same sub-module, and the character processing processing sub-module and the above-described noise correction processing sub-module are realized by the same module. it can. However, it is necessary to change and set parameters and attribute values. That is, in the same submodule, different image processing can be performed when printing a photo and when copying.

処理の流れは、上述した図8と同様となるので、ここでは相違点を挙げて説明する。相違点としては、S105から処理が始まる点である。また、S105における設定処理では、サブモジュール11−0、11−2、11−3に係わる設定情報として、図10の下部に示す内容が設定される。その他、S105の処理では、サブモジュール11−2及び11−3で使用される三次元ルックアップテーブルや二次元フィルタ係数の設定等も行なわれる。また、S106における起動処理では、下記に示す設定により、サブモジュール各々は、属性値を使用して各種画像処理を実施する。   Since the flow of processing is the same as that in FIG. 8 described above, only the differences will be described here. The difference is that the process starts from S105. Further, in the setting process in S105, the contents shown in the lower part of FIG. 10 are set as the setting information related to the submodules 11-0, 11-2, and 11-3. In addition, in the process of S105, setting of a three-dimensional lookup table and a two-dimensional filter coefficient used in the submodules 11-2 and 11-3 are also performed. Further, in the activation process in S106, each of the submodules performs various image processes using the attribute values according to the settings shown below.

[像域分離処理サブモジュール]
入力データ処理 Get_Mode12 属性値A0〜A2を抽出
属性値入力処理 In_Mode30 属性値未使用
属性値出力処理 Out_Mode41 像域分離属性値A0を更新
出力データ処理 Put_Mode22 属性値A0〜A2を設定(像域分離出力画素値と結合)して出力
[色補正処理サブモジュール]
入力データ処理 Get_Mode12 属性値A0〜A2を抽出
属性値入力処理 In_Mode31 像域分離属性値A0に基づいて画像処理
属性値出力処理 Out_Mode40 属性値の更新はなし
出力データ処理 Put_Mode22 属性値A0〜A2を設定(赤目補正出力画素値と結合)して出力
[文字加工処理サブモジュール]
入力データ処理 Get_Mode12 属性値A0〜A2を抽出
属性値入力処理 In_Mode31 像域分離属性値A0に基づいて画像処理
属性値出力処理 Out_Mode40 属性値の更新はなし
出力データ処理 Put_Mode22 属性値A0〜A2を設定(ノイズ除去出力画素値と結合)して出力
[Image area separation processing submodule]
Input data processing Get_Mode12 Extract attribute values A0 to A2 Attribute value input processing In_Mode30 Attribute value unused Attribute value output processing Out_Mode41 Update image area separation attribute value A0 Output data processing Put_Mode22 Set attribute values A0 to A2 (image area separation output pixels Combined with value) and output
[Color correction processing submodule]
Input data processing Get_Mode12 Extract attribute values A0 to A2 Attribute value input processing In_Mode31 Image processing based on image area separation attribute value A0 Attribute value output processing Out_Mode40 No attribute value update Output data processing Put_Mode22 Set attribute values A0 to A2 (red-eye Combined with the corrected output pixel value) and output
[Text Processing Submodule]
Input data processing Get_Mode12 Extract attribute values A0 to A2 Attribute value input processing In_Mode31 Image processing based on image area separation attribute value A0 Attribute value output processing Out_Mode40 No attribute value update Output data processing Put_Mode22 Set attribute values A0 to A2 (noise) Combined with the removal output pixel value) and output

以上のように構成した場合、同一の属性値フィールドの属性値を複数のサブモジュールで共有して使用できる。そのため、属性値を有効利用できる。例えば、図10に不図示のサブモジュールにおいて、図10に示すサブモジュールにより使用されていない属性値フィールド(例えば、A1及びA2)に基づく処理を実施させることができる。勿論、像域分離処理サブモジュール11−0において、属性値フィールドA0及びA1を設定し、それ以外のサブモジュール11−2及び11−3において、当該設定された属性値を用いて画像処理を行なうように構成してもよい。   When configured as described above, the attribute value of the same attribute value field can be shared by a plurality of submodules. Therefore, attribute values can be used effectively. For example, in a submodule not shown in FIG. 10, processing based on attribute value fields (for example, A1 and A2) that are not used by the submodule shown in FIG. 10 can be performed. Of course, the attribute value fields A0 and A1 are set in the image area separation processing submodule 11-0, and image processing is performed using the set attribute values in the other submodules 11-2 and 11-3. You may comprise as follows.

このように処理用画像データ内の属性値フィールドの割当方法、使用方法、設定方法をサブモジュール単位に設定できるため、システム全体での属性値の数を抑えつつ、柔軟性のある画像処理を実施することができる。   In this way, the assignment method, usage method, and setting method of attribute value fields in the processing image data can be set in units of sub-modules, so flexible image processing is performed while reducing the number of attribute values in the entire system. can do.

(実施形態4)
次に、属性値対応サブモジュールと属性値非対応サブモジュールとが混在する場合について説明する。図11には、2つの属性値対応サブモジュールと、1つの属性値非対応サブモジュールとが示される。ここでは、2つの属性値対応サブモジュールにおいて、外部から伝達された属性値を使用して画像処理を行なった後、属性値非対応サブモジュールにおいて、画像処理を行なう場合について説明する。
(Embodiment 4)
Next, the case where the attribute value compatible sub-module and the attribute value non-compatible sub-module are mixed will be described. FIG. 11 shows two attribute value corresponding sub-modules and one attribute value non-corresponding sub-module. Here, a case will be described in which image processing is performed in an attribute value non-corresponding submodule after image processing is performed using attribute values transmitted from the outside in two attribute value corresponding submodules.

ここで、各サブモジュールにおいては、図4に示すフォーマット302(属性値フィールドが3つ)を用いて処理を行なう。但し、属性値非対応であるノイズ補正処理サブモジュール11−4に対しては、属性値の除去処理を実施した後、図4に示すフォーマット301を入力する。   Here, each submodule performs processing using the format 302 (three attribute value fields) shown in FIG. However, the format 301 shown in FIG. 4 is input to the noise correction processing submodule 11-4 that does not support attribute values after the attribute value removal processing.

サブモジュールと補正処理との関係は以下の通りとする。
逆光補正処理サブモジュール11−1 逆光補正処理(一次元ルックアップテーブルによる階調変換処理:属性値0で補正なし、属性値1で補正あり)
赤目補正処理サブモジュール11−2 赤目補正処理(三次元ルックアップテーブルによる色変換処理:属性値0で補正なし、属性値1で補正あり)
ノイズ補正処理サブモジュール11−4 ノイズ補正処理(二次元平面フィルタによる平滑化処理:全画素に対して一律に同じフィルタ係数で処理を行なう)
The relationship between the submodule and the correction process is as follows.
Backlight correction processing sub-module 11-1 Backlight correction processing (gradation conversion processing using a one-dimensional lookup table: no correction at attribute value 0, correction at attribute value 1)
Red-eye correction processing sub-module 11-2 Red-eye correction processing (color conversion processing using a three-dimensional lookup table: no correction at attribute value 0, correction at attribute value 1)
Noise correction processing submodule 11-4 Noise correction processing (smoothing processing using a two-dimensional planar filter: processing is performed uniformly on all pixels with the same filter coefficient)

処理の流れは、上述した図8と同様となるので、ここでは相違点を挙げて説明する。相違点としては、S102の処理の後、S103の処理を実施せずにS104の処理に進む。ここで、S104の処理における属性値の設定内容を以下に示す。この属性値は、上述したS101及びS102における処理の検出結果に応じて画素毎に設定される。
属性値フィールドA0 逆光補正属性値 (0:補正不要、1:補正必要)
属性値フィールドA1 赤目補正属性値 (0:補正不要、1:補正必要)
属性値フィールドA2 設定なし
Since the flow of processing is the same as that in FIG. 8 described above, only the differences will be described here. As a difference, after the process of S102, the process proceeds to S104 without performing the process of S103. Here, the setting contents of the attribute value in the process of S104 are shown below. This attribute value is set for each pixel in accordance with the detection results of the processes in S101 and S102 described above.
Attribute value field A0 Backlight correction attribute value (0: correction unnecessary, 1: correction required)
Attribute value field A1 Red-eye correction attribute value (0: correction unnecessary, 1: correction required)
Attribute value field A2 Not set

また、S105における設定処理では、サブモジュール11−1、11−2、11−4に係わる設定情報として、図11の下部に示す内容が設定される。その他、S105の処理では、サブモジュール11−2及び11−3で使用される一次元及び三次元ルックアップテーブルの設定や二次元フィルタ係数の設定等も行なわれる。また、S106における起動処理では、下記に示す設定により、サブモジュール各々は、属性値を使用して各種画像処理を実施する。   Further, in the setting process in S105, the contents shown in the lower part of FIG. 11 are set as the setting information related to the submodules 11-1, 11-2, and 11-4. In addition, in the process of S105, setting of one-dimensional and three-dimensional lookup tables used in the submodules 11-2 and 11-3, setting of a two-dimensional filter coefficient, and the like are also performed. Further, in the activation process in S106, each of the submodules performs various image processes using the attribute values according to the settings shown below.

[逆光補正処理サブモジュール]
入力データ処理 Get_Mode12 属性値A0〜A2を抽出
属性値入力処理 In_Mode31 逆光補正属性値A0に基づいて画像処理
属性値出力処理 Out_Mode40 属性値の更新はなし
出力データ処理 Put_Mode22 属性値A0〜A2を逆光補正出力画素値と結合
[赤目補正処理サブモジュール]
入力データ処理 Get_Mode128bit 属性値A0〜A2を抽出
属性値入力処理 In_Mode32 赤目補正属性値A1に基づいて画像処理
属性値出力処理 Out_Mode40 属性値の更新はなし
出力データ処理 Put_Mode20 属性値を用いず、赤目補正出力画素値を各チャネル拡張(32bit)して出力
[ノイズ補正処理サブモジュール]
静的画像処理 RGB各チャネル32bitの画素値を入力し、フィルタ処理を画像全体に対して一律に実施した後、RGB各チャネル32bitのフィルタ出力画素値を出力
[Backlight compensation processing sub-module]
Input data processing Get_Mode12 Extract attribute values A0 to A2 Attribute value input processing In_Mode31 Image processing based on backlight correction attribute value A0 Attribute value output processing Out_Mode40 No attribute value update Output data processing Put_Mode22 Attribute values A0 to A2 are backlit correction output pixels Join with value
[Red-eye correction processing submodule]
Input data processing Get_Mode128bit Extracts attribute values A0 to A2 Attribute value input processing In_Mode32 Image processing based on red-eye correction attribute value A1 Attribute value output processing Out_Mode40 No update of attribute value Output data processing Put_Mode20 Red-eye correction output pixel without using attribute value Output the value by extending each channel (32 bits)
[Noise correction processing submodule]
Static image processing Input RGB 32bit pixel value, perform filter processing uniformly on entire image, then output RGB 32bit filter output pixel value

なお、赤目補正処理サブモジュール11−2において、属性値を用いずに各チャネル32bitに拡張するのは、属性値非対応であるノイズ補正処理サブモジュール11−4の入力フォーマットに適応させるためである。ここでは、ノイズ補正サブモジュールとして属性値非対応サブモジュール11−4が、図4に示すフォーマット301(RGB各チャンネル32bit)を処理するサブモジュールであるとして説明した。これに限らず、属性値非対応であるノイズ補正処理サブモジュール11−4の入力フォーマットが各チャネル24bitであれば、赤目補正処理サブモジュールにおいては、「Put_Mode21」で出力データ処理を実施する。すなわち、属性値領域の8bitを全て「0」に設定する。更に、属性値非対応であるノイズ補正処理サブモジュール11−4の入力フォーマットが各チャネル16bitであれば、赤目補正処理サブモジュールにおいては、「Put_Mode23」で出力データ処理を実施する。すなわち、属性値領域の16bitを全て「0」に設定する。本実施形態では、属性非対応サブモジュール11−4がノイズ補正した処理用画像データは、ライトバッファ12へ出力されるが、属性非対応サブモジュール11−4には属性値フィールドを書き替える機能がない。そのため、本実施形態の画像処理モジュール4内で使用した属性値を、画像処理モジュール4の外部に出力する必要がない場合、属性非対応サブモジュール11−4へ処理用画像データを入力する前に属性値フィールドの属性値を消去するためである。   The reason why the red-eye correction processing submodule 11-2 expands to 32 bits without using attribute values is to adapt to the input format of the noise correction processing submodule 11-4 that does not support attribute values. . Here, the attribute value non-corresponding sub-module 11-4 as the noise correction sub-module has been described as a sub-module that processes the format 301 (RGB each channel 32 bits) shown in FIG. Not limited to this, if the input format of the noise correction processing submodule 11-4 that does not support attribute values is 24 bits for each channel, the red-eye correction processing submodule performs output data processing in “Put_Mode 21”. That is, all 8 bits of the attribute value area are set to “0”. Furthermore, if the input format of the noise correction processing submodule 11-4 that does not support attribute values is 16 bits for each channel, the red-eye correction processing submodule performs output data processing with “Put_Mode23”. That is, all 16 bits of the attribute value area are set to “0”. In the present embodiment, the processing image data subjected to noise correction by the attribute non-corresponding submodule 11-4 is output to the write buffer 12, but the attribute noncorresponding submodule 11-4 has a function of rewriting the attribute value field. Absent. Therefore, when it is not necessary to output the attribute value used in the image processing module 4 of this embodiment to the outside of the image processing module 4, before inputting the processing image data to the attribute non-corresponding submodule 11-4. This is because the attribute value in the attribute value field is deleted.

以上のような構成によれば、属性値非対応サブモジュールの直前に処理を行なう属性値対応のサブモジュールにおいて、属性値に全て「0」を設定する。そのため、属性値非対応サブモジュールには、属性値を書き替える機能を持たせなくて済み、画像処理モジュール4の回路構成を簡略化できる。これにより、画像処理モジュール4において、属性値対応サブモジュールと属性値非対応サブモジュールとが混在している場合においても、問題なく画像処理が行なえることになる。   According to the above configuration, all the attribute values are set to “0” in the attribute value-compatible submodule that performs processing immediately before the attribute value non-compatible submodule. Therefore, the attribute value non-corresponding submodule need not have a function of rewriting the attribute value, and the circuit configuration of the image processing module 4 can be simplified. As a result, even when the attribute value corresponding sub-module and the attribute value non-corresponding sub-module are mixed in the image processing module 4, the image processing can be performed without any problem.

(実施形態5)
次に、図12を用いて、属性値対応サブモジュールと属性値非対応サブモジュールとが混在し、更に、属性値伝達ラッパー層110を設けた場合について説明する。ここでは、属性値非対応サブモジュールにおいて、画像処理を行なった後、2つの属性値対応サブモジュールにおいて、外部から伝達された属性値を使用して画像処理を行なう場合について説明する。
(Embodiment 5)
Next, with reference to FIG. 12, a case where the attribute value corresponding sub-module and the attribute value non-corresponding sub-module are mixed and the attribute value transmission wrapper layer 110 is provided will be described. Here, a case will be described in which image processing is performed using attribute values transmitted from the outside in two attribute value-compatible sub-modules after image processing is performed in the attribute value-incompatible sub-module.

ここで、各サブモジュールにおいては、図4に示すフォーマット302(属性値フィールドが3つ)を用いて処理を行なう。但し、属性値非対応である逆光補正処理サブモジュール11−5に対しては、属性値伝達ラッパー層110を設けることにより、図4に示すフォーマット301が入力される。   Here, each submodule performs processing using the format 302 (three attribute value fields) shown in FIG. However, the format 301 shown in FIG. 4 is input to the backlight correction processing submodule 11-5 that does not support attribute values by providing the attribute value transmission wrapper layer 110.

サブモジュールと補正処理との関係は以下の通りとする。
逆光補正処理サブモジュール11−5 逆光補正処理(一次元ルックアップテーブルによる階調変換処理:全画素に対して一律同じ処理を行なう)
赤目補正処理サブモジュール11−2 赤目補正処理(三次元ルックアップテーブルによる色変換処理:属性値0で補正なし、属性値1で補正あり)
ノイズ補正処理サブモジュール11−3 ノイズ補正処理(二次元平面フィルタによる平滑化処理:属性値0で補正なし、属性値1で補正あり)
The relationship between the submodule and the correction process is as follows.
Backlight correction processing sub-module 11-5 Backlight correction processing (gradation conversion processing using a one-dimensional lookup table: the same processing is uniformly performed on all pixels)
Red-eye correction processing sub-module 11-2 Red-eye correction processing (color conversion processing using a three-dimensional lookup table: no correction at attribute value 0, correction at attribute value 1)
Noise correction processing sub-module 11-3 Noise correction processing (smoothing using a two-dimensional plane filter: no correction at attribute value 0, correction at attribute value 1)

処理の流れは、上述した図8と同様となるので、ここでは相違点を挙げて説明する。相違点としては、S102から処理が始まる点である。また、S104の処理では、S102及びS103の処理の検出結果に応じて以下のように属性値を画素毎に設定する。
属性値フィールドA0 未設定
属性値フィールドA1 赤目補正属性値 (0:補正不要、1:補正必要)
属性値フィールドA2 ノイズ補正属性値(0:補正不要、1:補正必要)
Since the flow of processing is the same as that in FIG. 8 described above, only the differences will be described here. The difference is that the process starts from S102. Further, in the process of S104, attribute values are set for each pixel as follows according to the detection results of the processes of S102 and S103.
Attribute value field A0 Not set Attribute value field A1 Red-eye correction attribute value (0: correction unnecessary, 1: correction required)
Attribute value field A2 Noise correction attribute value (0: correction unnecessary, 1: correction required)

また、S105における設定処理では、サブモジュール11−2及び11−3、属性値伝達ラッパー層110に係わる設定情報として、図12の下部に示す内容が設定される。その他、S105の処理では、サブモジュール11−2及び11−3や属性値伝達ラッパー層110で使用される一次元及び三次元ルックアップテーブルや二次元フィルタ係数の設定等も行なわれる。また、S106における起動処理では、下記に示す設定により、サブモジュール各々は、属性値を使用して各種画像処理を実施する。   In the setting process in S105, the contents shown in the lower part of FIG. 12 are set as the setting information related to the submodules 11-2 and 11-3 and the attribute value transmission wrapper layer 110. In addition, in the processing of S105, setting of one-dimensional and three-dimensional lookup tables and two-dimensional filter coefficients used in the submodules 11-2 and 11-3 and the attribute value transmission wrapper layer 110 are also performed. Further, in the activation process in S106, each of the submodules performs various image processes using the attribute values according to the settings shown below.

[属性値伝達ラッパー層110]
入力データ処理 Get_Mode12 属性値A0〜A2を抽出
出力データ処理 Put_Mode22 属性値A0〜A2を設定(逆光補正出力画素値と結合)して出力
[赤目補正処理サブモジュール]
入力データ処理 Get_Mode12 属性値A0〜A2を抽出
属性値入力処理 In_Mode32 赤目補正属性値A1に基づいて画像処理
属性値出力処理 Out_Mode40 属性値の更新はなし
出力データ処理 Put_Mode22 属性値A0〜A2を設定(赤目補正出力画素値と結合)して出力
[ノイズ補正処理サブモジュール]
入力データ処理 Get_Mode12 属性値A0〜A2を抽出
属性値入力処理 In_Mode33 ノイズ補正属性値A2に基づいて画像処理
属性値出力処理 Out_Mode40 属性値の更新はなし
出力データ処理 Put_Mode22 属性値A0〜A2を設定(ノイズ除去出力画素値と結合)して出力
[Attribute value transmission wrapper layer 110]
Input data processing Get_Mode12 Attribute values A0 to A2 are extracted Output data processing Put_Mode22 Attribute values A0 to A2 are set (combined with backlight correction output pixel values) and output
[Red-eye correction processing submodule]
Input data processing Get_Mode12 Extract attribute values A0 to A2 Attribute value input processing In_Mode32 Image processing based on red-eye correction attribute value A1 Attribute value output processing Out_Mode40 No attribute value update Output data processing Put_Mode22 Set attribute values A0 to A2 (red-eye correction) Combined with output pixel value) and output
[Noise correction processing submodule]
Input data processing Get_Mode12 Extract attribute values A0 to A2 Attribute value input processing In_Mode33 Image processing based on noise correction attribute value A2 Attribute value output processing Out_Mode40 No attribute value update Output data processing Put_Mode22 Set attribute values A0 to A2 (noise removal) Combined with output pixel value) and output

以上のような構成によれば、属性値伝達ラッパー層110を設けることにより、画像処理モジュール4において、属性値対応サブモジュールと属性値非対応サブモジュールとが混在している場合においても、問題なく画像処理が行なえる。   According to the above configuration, by providing the attribute value transmission wrapper layer 110, there is no problem even when the attribute value corresponding sub-module and the attribute value non-corresponding sub-module are mixed in the image processing module 4. Image processing can be performed.

このように処理用画像データ内の属性値フィールドの割当方法、使用方法、設定方法をサブモジュール単位に設定できるため、システム全体での属性値の数を抑えつつ、柔軟性のある画像処理を実施することができる。更に、既存の属性値非対応サブモジュールと混在して属性値対応サブモジュールを配すことができる。   In this way, the assignment method, usage method, and setting method of attribute value fields in the processing image data can be set in units of sub-modules, so flexible image processing is performed while reducing the number of attribute values in the entire system. can do. Furthermore, sub-modules corresponding to attribute values can be arranged together with existing sub-modules not corresponding to attribute values.

(実施形態6)
ここでは、図4に示すフォーマット303(属性値フィールドが6つ)を用いて各サブモジュールにおいて処理を行なう場合について説明する。
(Embodiment 6)
Here, a case will be described in which processing is performed in each submodule using the format 303 (six attribute value fields) shown in FIG.

ここで、「表5」を用いて、入力属性値情報設定部409により設定される設定情報について説明する。第2の属性値管理部411は、画像処理の開始前において、この「表5」の設定情報に基づいて各種処理を実行する。なお、「表5」に示す設定値はあくまで一例であり、これに限られない。本実施形態において、A0は、図4に示すフォーマット303の属性値フィールド3034であり、A1は、図4に示すフォーマット303の属性値フィールド3035であり、A2は図4に示すフォーマット303の属性値フィールド3036である。また、A3は、図4に示すフォーマット303の属性値フィールド3037であり、A4は、図4に示すフォーマット303の属性値フィールド3038であり、A5は、図4に示すフォーマット303の属性値フィールド3039である。
(表5)

Figure 0005534722
Here, the setting information set by the input attribute value information setting unit 409 will be described using “Table 5”. The second attribute value management unit 411 executes various processes based on the setting information in “Table 5” before starting the image processing. The set values shown in “Table 5” are merely examples, and the present invention is not limited to these. In this embodiment, A0 is the attribute value field 3034 of the format 303 shown in FIG. 4, A1 is the attribute value field 3035 of the format 303 shown in FIG. 4, and A2 is the attribute value of the format 303 shown in FIG. Field 3036. A3 is the attribute value field 3037 of the format 303 shown in FIG. 4, A4 is the attribute value field 3038 of the format 303 shown in FIG. 4, and A5 is the attribute value field 3039 of the format 303 shown in FIG. It is.
(Table 5)
Figure 0005534722

[In_Mode50]
この設定では、画像処理に属性値を使用しない。すなわち、第2の属性値管理部411において、属性値を画像処理部413に入力しない。この場合、サブモジュールは、属性値非対応サブモジュールとして動作する。
[In_Mode50]
With this setting, attribute values are not used for image processing. That is, the attribute value is not input to the image processing unit 413 in the second attribute value management unit 411. In this case, the submodule operates as an attribute value non-corresponding submodule.

[In_Mode51〜56]
この設定は、複数の属性値フィールド(A0〜A5)の内、いずれかの属性値フィールド(In_Mode51時はA0〜In_Mode56時はA5)を用いて画素値フィールド全て(3チャネル)に対して適応的な画像処理を実施する場合に好適である。「In_Mode51〜56」を設定した場合、画像処理は、他の属性値フィールドを用いずに行なわれる。
[In_Mode 51-56]
This setting is adaptive to all the pixel value fields (3 channels) using any one of the attribute value fields (A0 to A5) (A5 for In_Mode 51 and A5 for In_Mode 56). This is suitable when performing various image processing. When “In_Mode 51 to 56” is set, the image processing is performed without using other attribute value fields.

[In_Mode57]
この設定は、複数の属性値フィールド(A0〜A5)の内、属性値フィールドA0を画素値R、属性値フィールドA2を画素値G、属性値フィールドA4を画素値B、に用いて適応的な画像処理を実施する場合に好適である。「In_Mode57」を設定した場合、画像処理は、他の属性値フィールド(A1、A3、A5)を用いずに行なわれる。
[In_Mode57]
This setting is adaptive using the attribute value field A0 as the pixel value R, the attribute value field A2 as the pixel value G, and the attribute value field A4 as the pixel value B among the plurality of attribute value fields (A0 to A5). This is suitable for image processing. When “In_Mode 57” is set, the image processing is performed without using other attribute value fields (A1, A3, A5).

[In_Mode58]
この設定は、複数の属性値フィールド(A0〜A5)の内、属性値フィールドA1を画素値R、属性値フィールドA3を画素値G、属性値フィールドA5を画素値B、に用いて適応的な画像処理を実施する場合に好適である。「In_Mode58」を設定した場合、画像処理は、他の属性値フィールド(A0、A2、A4)を用いずに行なわれる。
[In_Mode58]
This setting is adaptive using the attribute value field A1 as the pixel value R, the attribute value field A3 as the pixel value G, and the attribute value field A5 as the pixel value B among the plurality of attribute value fields (A0 to A5). This is suitable for image processing. When “In_Mode 58” is set, the image processing is performed without using other attribute value fields (A0, A2, A4).

以上のように「In_Mode50〜58」を選択的に用いて処理を行なうことにより、複数の属性値フィールドの少なくとも1つの情報を用いて適応的な画像処理を実施できる。例えば、以下に示す使用例が挙げられる。   As described above, by performing processing using “In_Mode 50 to 58” selectively, adaptive image processing can be performed using at least one piece of information in a plurality of attribute value fields. For example, the following usage examples are given.

1)6つのサブモジュールにおいて、それぞれ異なる属性値を使用してRGB共通の画像処理
2)2つのサブモジュールにおいて、それぞれ3つずつの属性値を使用してRGB個別の画像処理
3)3つのサブモジュールにおいて、それぞれ異なる属性値を使用してRGB共通の画像処理を行なうとともに、更に、1つのサブモジュールにおいて、3つの属性値を利用してRGB個別の画像処理
1) RGB common image processing using different attribute values in 6 submodules 2) RGB individual image processing using 3 attribute values each in 2 submodules 3) 3 sub In the module, RGB common image processing is performed using different attribute values, and further, in each sub module, RGB individual image processing is performed using three attribute values.

次に、「表6」を用いて、出力属性値情報設定部410により設定される設定情報について説明する。第2の属性値管理部411は、画像処理の終了後において、この「表6」の設定情報に基づいて各種処理を実行する。なお、「表6」に示す設定値はあくまで一例であり、これに限られない。
(表6)

Figure 0005534722
Next, setting information set by the output attribute value information setting unit 410 will be described using “Table 6”. The second attribute value management unit 411 executes various processes based on the setting information of “Table 6” after the end of the image processing. Note that the setting values shown in “Table 6” are merely examples, and the present invention is not limited thereto.
(Table 6)
Figure 0005534722

[Out_Mode60]
この設定は、自身(当該サブモジュール)において属性値の設定を行なわない場合に好適である。すなわち、出力属性値は、入力属性値そのままとなり、両者は同じ値となる。
[Out_Mode60]
This setting is suitable when the attribute value is not set by itself (the submodule). That is, the output attribute value remains as the input attribute value, and both are the same value.

[Out_Mode61〜66]
この設定は、複数の属性値フィールド(A0〜A5)の内、いずれかの属性値フィールド(Out_Mode61時はA0〜Out_Mode66時はA5)のみを新たに設定する場合に好適である。「Out_Mode61〜66」を設定した場合、他の属性値フィールドは更新されない。
[Out_Mode 61-66]
This setting is suitable when only one of the attribute value fields (A0 to A5) is newly set (A5 for Out_Mode 61 and A5 for Out_Mode 66). When “Out_Mode 61 to 66” is set, other attribute value fields are not updated.

[Out_Mode67]
この設定は、複数の属性値フィールド(A0〜A5)の内、属性値フィールドA0、A2、A4のみを新たに設定する場合に好適である。「Out_Mode67」を設定した場合、他の属性値フィールド(A1、A3、A5)は更新されない。
[Out_Mode67]
This setting is suitable when only the attribute value fields A0, A2, and A4 are newly set among the plurality of attribute value fields (A0 to A5). When “Out_Mode 67” is set, the other attribute value fields (A1, A3, A5) are not updated.

[Out_Mode68]
この設定は、複数の属性値フィールド(A0〜A5)の内、属性値フィールドA1、A3、A5のみを新たに設定する場合に好適である。「Out_Mode68」を設定した場合、他の属性値フィールド(A0、A2、A4)は更新されない。
[Out_Mode68]
This setting is suitable when only the attribute value fields A1, A3, and A5 are newly set among the plurality of attribute value fields (A0 to A5). When “Out_Mode 68” is set, the other attribute value fields (A0, A2, A4) are not updated.

以上のように「Out_Mode60〜68」を選択的に用いて処理を行なうことにより、複数の属性値フィールドの少なくとも1つの情報を設定変更できる。例えば、以下に示す使用例が挙げられる。   As described above, by selectively using “Out_Mode 60 to 68”, it is possible to change the setting of at least one piece of information in the plurality of attribute value fields. For example, the following usage examples are given.

1)6つのサブモジュールにおいて、それぞれ異なる属性値を設定するケース
2)2つのサブモジュールにおいて、それぞれ3つずつの属性値を設定するケース
3)3つのサブモジュールにおいて、それぞれ異なる属性値を設定するとともに、1つのサブモジュールにおいて、3つの属性値を設定するケース
1) Case where different attribute values are set in each of the six submodules 2) Case where three attribute values are set in each of the two submodules 3) Each of the three submodules sets different attribute values In addition, the case where three attribute values are set in one submodule

このように属性値フィールドが増えた場合には、画像処理の柔軟性を更に高めることができる。また、属性値フィールドを増やした場合にも、処理用画像データのデータ量(96Bit)は変わらない。そのため、システム全体の規模を大きく変更せずに、画素値として割り当てるBit数(画像の階調性)と、属性値として割り当てるBit数(適応的画像処理の柔軟性)とのバランスを図った設計が行なえる。   Thus, when the attribute value field increases, the flexibility of image processing can be further increased. Even when the attribute value field is increased, the data amount (96 bits) of the processing image data does not change. Therefore, a design that balances the number of bits to be assigned as pixel values (tone gradation) and the number of bits to be assigned as attribute values (flexibility of adaptive image processing) without greatly changing the scale of the entire system. Can be done.

(実施形態7)
ここでは、図4に示すフォーマット305(属性値フィールドが4つ)を用いて各サブモジュールにおいて処理を行なう場合について説明する。本実施形態において、A0は、図4に示すフォーマット305の属性値フィールド3054であり、A1は、図4に示すフォーマット305の属性値フィールド3055である。また、A2は、図4に示すフォーマット305の属性値フィールド3056であり、A3は、図4に示すフォーマット305の属性値フィールド3057である。フォーマット305では、上述した通り、属性値フィールドA0及び属性値フィールドA1は、16bit幅で構成されているのに対して、属性値フィールドA2及び属性値フィールドA3は、8bit幅で構成されている。そして、属性値フィールドA2と属性値フィールドA3は、連続した16bit幅の属性値として取り扱ってもよいし、また、それぞれ8bitずつの異なる属性値として取り扱ってもよい。また更に、属性値フィールドA0及びA2と、属性値フィールドA1及びA3として、24bit幅の属性値として取り扱ってもよい。
(Embodiment 7)
Here, a case will be described in which processing is performed in each submodule using the format 305 (four attribute value fields) shown in FIG. In the present embodiment, A0 is the attribute value field 3054 of the format 305 shown in FIG. 4, and A1 is the attribute value field 3055 of the format 305 shown in FIG. Further, A2 is the attribute value field 3056 of the format 305 shown in FIG. 4, and A3 is the attribute value field 3057 of the format 305 shown in FIG. In the format 305, as described above, the attribute value field A0 and the attribute value field A1 have a 16-bit width, while the attribute value field A2 and the attribute value field A3 have an 8-bit width. The attribute value field A2 and the attribute value field A3 may be handled as consecutive 16-bit width attribute values, or may be handled as different attribute values of 8 bits each. Furthermore, the attribute value fields A0 and A2 and the attribute value fields A1 and A3 may be handled as attribute values having a width of 24 bits.

このように構成した場合、処理用画像データのフォーマットを固定したまま、属性値の数(適応的画像処理の種類)と各属性値のBit数(適応的画像処理の細かさ)とのバランスが取れるため、より柔軟な画像処理が実現できる。   When configured in this manner, the balance between the number of attribute values (type of adaptive image processing) and the number of bits of each attribute value (fineness of adaptive image processing) is maintained while the format of the processing image data is fixed. Therefore, more flexible image processing can be realized.

ここで、「表7」を用いて、入力属性値情報設定部409により設定される設定情報について説明する。第2の属性値管理部411は、画像処理の開始前において、この「表7」の設定情報に基づいて各種処理を実行する。なお、「表7」に示す設定値はあくまで一例であり、これに限られない。
(表7)

Figure 0005534722
Here, the setting information set by the input attribute value information setting unit 409 will be described using “Table 7”. The second attribute value management unit 411 executes various processes based on the setting information in “Table 7” before starting the image processing. Note that the setting values shown in “Table 7” are merely examples, and the present invention is not limited thereto.
(Table 7)
Figure 0005534722

[In_Mode70]
この設定では、画像処理に属性値を使用しない。すなわち、第2の属性値管理部411において、属性値を画像処理部413に入力しない。この場合、サブモジュールは、属性値非対応サブモジュールとして動作する。
[In_Mode70]
With this setting, attribute values are not used for image processing. That is, the attribute value is not input to the image processing unit 413 in the second attribute value management unit 411. In this case, the submodule operates as an attribute value non-corresponding submodule.

[In_Mode71]
この設定は、複数の属性値フィールド(A0〜A3)の内、属性値フィールドA0のみを用いて画素値フィールド全て(3チャネル)に対して適応的な画像処理を実施する場合に好適である。「In_Mode71」を設定した場合、画像処理は、他の属性値フィールド(A1、A2、A3)を用いずに行なわれる。
[In_Mode71]
This setting is suitable when adaptive image processing is performed on all the pixel value fields (3 channels) using only the attribute value field A0 among the plurality of attribute value fields (A0 to A3). When “In_Mode 71” is set, image processing is performed without using other attribute value fields (A1, A2, A3).

[In_Mode72]
この設定は、複数の属性値フィールド(A0〜A3)の内、属性値フィールドA1のみを用いて画素値フィールド全て(3チャネル)に対して適応的な画像処理を実施する場合に好適である。「In_Mode72」を設定した場合、画像処理は、他の属性値フィールド(A0、A2、A3)を用いずに行なわれる。
[In_Mode72]
This setting is suitable when adaptive image processing is performed on all the pixel value fields (3 channels) using only the attribute value field A1 among the plurality of attribute value fields (A0 to A3). When “In_Mode 72” is set, the image processing is performed without using other attribute value fields (A0, A2, A3).

[In_Mode73]
この設定は、複数の属性値フィールド(A0〜A3)の内、属性値フィールドA2及びA3を1つの属性値(16bit)として用いて、画素値フィールド全て(3チャネル)に対して適応的な画像処理を実施する場合に好適である。「In_Mode73」を設定した場合、画像処理は、他の属性値フィールド(A0、A1)を用いずに行なわれる。
[In_Mode73]
This setting uses an attribute value field A2 and A3 as one attribute value (16 bits) among a plurality of attribute value fields (A0 to A3), and is an image adaptive to all pixel value fields (3 channels). This is suitable when processing is performed. When “In_Mode 73” is set, the image processing is performed without using other attribute value fields (A0, A1).

[In_Mode74]
この設定は、複数の属性値フィールド(A0〜A3)の内、属性値フィールドA0を画素値R、属性値フィールドA1を画素値G、属性値フィールドA2及びA3を1つの属性値(16bit)として画素値Bに用いる。このような属性値の使い方により、適応的な画像処理を実施する場合に好適である。
[In_Mode74]
In this setting, among a plurality of attribute value fields (A0 to A3), the attribute value field A0 is a pixel value R, the attribute value field A1 is a pixel value G, and the attribute value fields A2 and A3 are one attribute value (16 bits). Used for pixel value B. The use of such attribute values is suitable for performing adaptive image processing.

[In_Mode75]
この設定は、複数の属性値フィールド(A0〜A3)の内、属性値フィールドA0及びA2を1つの属性値(24bit)として用いて、画素値フィールド全て(3チャネル)に対して適応的な画像処理を実施する場合に好適である。「In_Mode75」を設定した場合、画像処理は、他の属性値フィールド(A1、A3)を用いずに行なわれる。
[In_Mode75]
This setting uses an attribute value field A0 and A2 as one attribute value (24 bits) among a plurality of attribute value fields (A0 to A3), and is an image adaptive to all the pixel value fields (3 channels). This is suitable when processing is performed. When “In_Mode 75” is set, the image processing is performed without using the other attribute value fields (A1, A3).

[In_Mode76]
この設定は、複数の属性値フィールド(A0〜A3)の内、属性値フィールドA1及びA3を1つの属性値(24bit)として用いて、画素値フィールド全て(3チャネル)に対して適応的な画像処理を実施する場合に好適である。「In_Mode76」を設定した場合、画像処理は、他の属性値フィールド(A0、A2)を用いずに行なわれる。
[In_Mode76]
This setting uses an attribute value field A1 and A3 as one attribute value (24 bits) among a plurality of attribute value fields (A0 to A3), and is an image adaptive to all pixel value fields (3 channels). This is suitable when processing is performed. When “In_Mode 76” is set, the image processing is performed without using other attribute value fields (A0, A2).

[In_Mode77]
この設定は、複数の属性値フィールド(A0〜A3)の内、属性値フィールドA2を1つの属性値(8bit)として用いて、画素値フィールド全て(3チャネル)に対して適応的な画像処理を実施する場合に好適である。「In_Mode77」を設定した場合、画像処理は、他の属性値フィールド(A0、A1、A3)を用いずに行なわれる。
[In_Mode77]
This setting uses the attribute value field A2 as one attribute value (8 bits) among a plurality of attribute value fields (A0 to A3), and performs adaptive image processing for all the pixel value fields (3 channels). It is suitable for implementation. When “In_Mode 77” is set, the image processing is performed without using other attribute value fields (A0, A1, A3).

[In_Mode78]
この設定は、複数の属性値フィールド(A0〜A3)の内、属性値フィールドA3を1つの属性値(8bit)として用いて、画素値フィールド全て(3チャネル)に対して適応的な画像処理を実施する場合に好適である。「In_Mode78」を設定した場合、画像処理は、他の属性値フィールド(A0、A1、A2)を用いずに行なわれる。
[In_Mode78]
This setting uses the attribute value field A3 as one attribute value (8 bits) among a plurality of attribute value fields (A0 to A3), and performs adaptive image processing for all the pixel value fields (3 channels). It is suitable for implementation. When “In_Mode 78” is set, the image processing is performed without using other attribute value fields (A0, A1, A2).

以上のように「In_Mode70〜78」を選択的に用いて処理を行なうことにより、複数の属性値フィールドの少なくとも1つの情報を用いて適応的な画像処理を実施することができる。   As described above, by performing processing using “In_Mode 70 to 78” selectively, adaptive image processing can be performed using at least one piece of information in a plurality of attribute value fields.

次に、「表8」を用いて、出力属性値情報設定部410により設定される設定情報について説明する。第2の属性値管理部411は、画像処理の終了後において、この「表8」の設定情報に基づいて各種処理を実行する。なお、「表8」に示す設定値はあくまで一例であり、これに限られない。
(表8)

Figure 0005534722
Next, setting information set by the output attribute value information setting unit 410 will be described using “Table 8”. The second attribute value management unit 411 executes various processes based on the setting information in “Table 8” after the image processing is completed. The set values shown in “Table 8” are merely examples, and the present invention is not limited to these.
(Table 8)
Figure 0005534722

[Out_Mode80]
この設定は、自身(当該サブモジュール)において属性値の設定を行なわない場合に好適である。すなわち、出力属性値は、入力属性値そのままとなり、両者は同じ値となる。
[Out_Mode80]
This setting is suitable when the attribute value is not set by itself (the submodule). That is, the output attribute value remains as the input attribute value, and both are the same value.

[Out_Mode81]
この設定は、複数の属性値フィールド(A0〜A3)の内、属性値フィールドA0のみを新たに設定する場合に好適である。「Out_Mode81」を設定した場合、他の属性値フィールド(A1、A2、A3)は更新されない。
[Out_Mode81]
This setting is suitable when only the attribute value field A0 is newly set among a plurality of attribute value fields (A0 to A3). When “Out_Mode 81” is set, the other attribute value fields (A1, A2, A3) are not updated.

[Out_Mode82]
この設定は、複数の属性値フィールド(A0〜A3)の内、属性値フィールドA1のみを新たに設定する場合に好適である。「Out_Mode82」を設定した場合、他の属性値フィールド(A0、A2、A3)は更新されない。
[Out_Mode82]
This setting is suitable when only the attribute value field A1 is newly set among the plurality of attribute value fields (A0 to A3). When “Out_Mode 82” is set, the other attribute value fields (A0, A2, A3) are not updated.

[Out_Mode83]
この設定は、属性値フィールドA2及びA3を1つの属性値(16bit)として取り扱うとともに、当該フィールドに対して新たに設定する場合に好適である。「Out_Mode83」を設定した場合、他の属性値フィールド(A0、A1)は更新されない。
[Out_Mode83]
This setting is suitable when the attribute value fields A2 and A3 are handled as one attribute value (16 bits) and are newly set for the field. When “Out_Mode 83” is set, the other attribute value fields (A0, A1) are not updated.

[Out_Mode84]
この設定は、複数の属性値フィールド(A0〜A3)全てに新たに設定する場合に好適である。この場合、属性値フィールドA2&A3は、1つの属性値(16bit)として取り扱われる。
[Out_Mode84]
This setting is suitable for newly setting all of the plurality of attribute value fields (A0 to A3). In this case, the attribute value fields A2 & A3 are handled as one attribute value (16 bits).

[Out_Mode85]
この設定は、属性値フィールドA0及びA2を1つの属性値(24bit)として取り扱うとともに、当該フィールドに対して新たに設定する場合に好適である。「Out_Mode85」を設定した場合、他の属性値フィールド(A1、A3)は更新されない。
[Out_Mode85]
This setting is suitable when the attribute value fields A0 and A2 are handled as one attribute value (24 bits) and are newly set for the field. When “Out_Mode 85” is set, the other attribute value fields (A1, A3) are not updated.

[Out_Mode86]
この設定は、属性値フィールドA1及びA3を1つの属性値(24bit)として取り扱うとともに、当該フィールドに対して新たに設定する場合に好適である。「Out_Mode86」を設定した場合、他の属性値フィールド(A0、A2)は更新されない。
[Out_Mode86]
This setting is suitable when the attribute value fields A1 and A3 are handled as one attribute value (24 bits) and are newly set for the field. When “Out_Mode 86” is set, the other attribute value fields (A0, A2) are not updated.

[Out_Mode87]
この設定は、複数の属性値フィールド(A0〜A3)の内、属性値フィールドA2のみを新たに設定する場合に好適である。「Out_Mode87」を設定した場合、他の属性値フィールド(A0、A1、A3)は更新されない。
[Out_Mode87]
This setting is suitable when only the attribute value field A2 is newly set among the plurality of attribute value fields (A0 to A3). When “Out_Mode 87” is set, the other attribute value fields (A0, A1, A3) are not updated.

[Out_Mode88]
この設定は、複数の属性値フィールド(A0〜A3)の内、属性値フィールドA3のみを新たに設定する場合に好適である。「Out_Mode88」を設定した場合、他の属性値フィールド(A0、A1、A2)は更新されない。
[Out_Mode88]
This setting is suitable when only the attribute value field A3 is newly set among the plurality of attribute value fields (A0 to A3). When “Out_Mode 88” is set, the other attribute value fields (A0, A1, A2) are not updated.

以上のように「Out_Mode80〜88」を選択的に用いて処理を行なうことにより、複数の属性値フィールドの少なくとも1つの情報を用いて適応的な画像処理を実施できる。   By performing processing using “Out_Mode 80 to 88” selectively as described above, adaptive image processing can be performed using at least one piece of information in a plurality of attribute value fields.

以上が本発明の代表的な実施形態の一例であるが、本発明は、上記及び図面に示す実施形態に限定することなく、その要旨を変更しない範囲内で適宜変形して実施できるものである。   The above is an example of a typical embodiment of the present invention, but the present invention is not limited to the embodiment described above and shown in the drawings, and can be appropriately modified and implemented without departing from the scope of the present invention. .

Claims (12)

画像を表す画像データ、または画像を表す画像データ及び当該画像データの処理内容を表す属性データを含む処理用データを入力する入力手段と、
前記入力手段により入力された処理用データを順次処理する複数の処理手段と、を有し、
前記複数の処理手段のうちの少なくとも1つの処理手段は、前記入力手段により入力された処理用データに含まれる画像データの処理と、前記画像データの処理により得られた結果を用いて当該処理手段以降の処理手段が当該画像データを処理するための属性データを新たに設定する処理と、を行って、処理済みのデータとして処理用データを出力することが可能である
ことを特徴とする画像処理装置。
Input means for inputting image data representing an image or processing data including image data representing an image and attribute data representing the processing content of the image data;
A plurality of processing means for sequentially processing the processing data input by the input means,
At least one processing means of the plurality of processing means is configured to process the image data included in the processing data input by the input means, and use the result obtained by the processing of the image data. Image processing characterized in that it is possible for subsequent processing means to newly set attribute data for processing the image data and to output processing data as processed data apparatus.
前記処理手段は、前記入力手段により入力された処理用データに属性データが含まれていない場合、または前記属性データを利用しないことが設定されている場合は、前記入力手段により入力された処理用データに含まれる画像データに対し予め決められた処理を行う
ことを特徴とする請求項1に記載の画像処理装置。
When the processing data input by the input means does not include attribute data, or when it is set not to use the attribute data, the processing means for processing input by the input means The image processing apparatus according to claim 1, wherein predetermined processing is performed on image data included in the data.
前記複数の処理手段のうちの少なくとも1つの処理手段は、当該処理手段で処理を行うための属性データを決定する決定手段を備える
ことを特徴とする請求項1または請求項2に記載の画像処理装置。
3. The image processing according to claim 1, wherein at least one processing unit of the plurality of processing units includes a determination unit that determines attribute data to be processed by the processing unit. apparatus.
前記入力手段により入力される処理用データに含まれる属性データはそれぞれ処理内容の異なる複数の属性データを含み、
前記決定手段は、前記複数の属性データのそれぞれについて利用方法を決定する
ことを特徴とする請求項3に記載の画像処理装置。
The attribute data included in the processing data input by the input means includes a plurality of attribute data having different processing contents,
The image processing apparatus according to claim 3, wherein the determining unit determines a usage method for each of the plurality of attribute data.
前記入力手段により入力される処理用データに含まれる画像データはカラー画像データであり、属性データは色毎の処理内容を含む
ことを特徴とする請求項1乃至4のいずれか1項に記載の画像処理装置。
The image data included in the processing data input by the input unit is color image data, and the attribute data includes processing contents for each color. Image processing device.
前記複数の処理手段は、第1の処理手段から第Nの処理手段(Nは2以上の自然数)を含み、各処理手段により処理された処理済みのデータを順次前記第Nの処理手段までパイプライン処理させる
ことを特徴とする請求項1乃至5のいずれか1項に記載の画像処理装置。
The plurality of processing units include a first processing unit to an Nth processing unit (N is a natural number of 2 or more), and the processed data processed by each processing unit is sequentially piped to the Nth processing unit. The image processing apparatus according to claim 1, wherein line processing is performed.
前記処理手段は、前記入力手段により入力された処理用データが属性データを含まない場合に前記属性データを設定することが可能である
ことを特徴とする請求項1乃至6のいずれか1項に記載の画像処理装置。
The processing unit can set the attribute data when the processing data input by the input unit does not include the attribute data. The image processing apparatus described.
前記処理手段は、次に処理を行う処理手段が前記属性データに非対応のものである場合には、前記属性データを0とする、又は属性データを削除する
ことを特徴とする請求項1乃至7のいずれか1項に記載の画像処理装置。
The processing means sets the attribute data to 0 or deletes the attribute data when the processing means to be processed next does not correspond to the attribute data. 8. The image processing device according to any one of items 7.
前記入力手段により入力される処理用データにおける前記画像データと前記属性データとが割当てられるビット数は所定ビット数であり、
前記処理手段により出力される処理済みのデータにおける前記画像データと前記属性データとが割当てられるビット数は前記所定ビット数と同じビット数である
ことを特徴とする請求項1乃至8のいずれか1項に記載の画像処理装置。
The number of bits assigned to the image data and the attribute data in the processing data input by the input means is a predetermined number of bits,
The number of bits to which the image data and the attribute data in the processed data output by the processing unit are allocated is the same number of bits as the predetermined number of bits. The image processing apparatus according to item.
前記処理手段は、前記所定ビット数における前記画像データと前記属性データとの割合を変更する変更手段を備える
ことを特徴とする請求項9に記載の画像処理装置。
The image processing apparatus according to claim 9, wherein the processing unit includes a changing unit that changes a ratio between the image data and the attribute data in the predetermined number of bits.
前記入力手段により入力された処理用データは、複数の画像データと複数の属性データとを含む
ことを特徴とする請求項1乃至10に記載の画像処理装置。
The image processing apparatus according to claim 1, wherein the processing data input by the input unit includes a plurality of image data and a plurality of attribute data.
複数の処理手段を有する画像処理装置の処理方法であって、
画像を表す画像データ、または画像を表す画像データ及び当該画像データの処理内容を表す属性データを含む処理用データを入力し、
前記入力された処理用データを前記複数の処理手段により順次処理し、
前記複数の処理手段のうちの少なくとも1つの処理手段では、前記入力された処理用データに含まれる画像データの処理と、前記画像データの処理により得られた結果を用いて当該処理手段以降の処理手段が当該画像データを処理するための属性データを新たに設定する処理と、を行って、処理済みのデータとして処理用データを出力させることが可能である
ことを特徴とする処理方法。
A processing method of an image processing apparatus having a plurality of processing means,
Input image data representing an image or processing data including image data representing an image and attribute data representing the processing content of the image data,
Sequentially processing the input processing data by the plurality of processing means;
In at least one of the plurality of processing means, the processing subsequent to the processing means using the processing of the image data included in the input processing data and the result obtained by the processing of the image data. And a processing method for newly setting attribute data for processing the image data, and processing data can be output as processed data.
JP2009149176A 2009-06-23 2009-06-23 Image processing apparatus and processing method thereof Active JP5534722B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009149176A JP5534722B2 (en) 2009-06-23 2009-06-23 Image processing apparatus and processing method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009149176A JP5534722B2 (en) 2009-06-23 2009-06-23 Image processing apparatus and processing method thereof

Publications (3)

Publication Number Publication Date
JP2011008357A JP2011008357A (en) 2011-01-13
JP2011008357A5 JP2011008357A5 (en) 2012-08-09
JP5534722B2 true JP5534722B2 (en) 2014-07-02

Family

ID=43564977

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009149176A Active JP5534722B2 (en) 2009-06-23 2009-06-23 Image processing apparatus and processing method thereof

Country Status (1)

Country Link
JP (1) JP5534722B2 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3740379B2 (en) * 2000-04-19 2006-02-01 キヤノン株式会社 Image processing apparatus and image processing method

Also Published As

Publication number Publication date
JP2011008357A (en) 2011-01-13

Similar Documents

Publication Publication Date Title
JP6012778B2 (en) Image processing device and image processing apparatus
JP5605778B2 (en) Image processing apparatus and image processing method
US7277198B2 (en) Image printing apparatus, image printing system and control method
JP2009225113A (en) Image forming apparatus, image forming method and image forming program
JP5539071B2 (en) Image processing apparatus and image processing method
JP3950704B2 (en) Image processing apparatus, image processing method, print control apparatus, print control method, and program
US9888150B2 (en) Image processing apparatus, and image processing device which processes image data in correspondence with one or more pixels of an image
JP5534722B2 (en) Image processing apparatus and processing method thereof
JP4612778B2 (en) Image forming apparatus
US9171239B2 (en) Processing image data strips in columnar regions
JP5929128B2 (en) Printing device
US9061523B2 (en) Image forming apparatus, control method thereof, and computer readable information recording medium
JP2007067799A (en) Image recording device
US20080158576A1 (en) Image forming system and computer readable medium storing image forming program
JPH09219799A (en) Image processor and its method
JP2003330663A (en) Information processor
JP2004153644A (en) Copy system, its controller, copy generation method and program
JP2005086633A (en) Combined machine
JP2012071461A (en) Image forming apparatus
JP2005086539A (en) Combined machine system
JP2005199566A (en) Image forming apparatus, and its control program
JP2008179085A (en) Printing processing unit, printing processing method, and its program
JP2009171275A (en) Image processing apparatus, control method of image processing apparatus, and control program for image processing apparatus

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120625

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120625

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130405

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130415

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130614

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130726

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131028

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20131107

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140305

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140422

R151 Written notification of patent or utility model registration

Ref document number: 5534722

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151