Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6800726B2 - Image forming equipment, methods and programs - Google Patents
[go: Go Back, main page]

JP6800726B2 - Image forming equipment, methods and programs - Google Patents

Image forming equipment, methods and programs Download PDF

Info

Publication number
JP6800726B2
JP6800726B2 JP2016238778A JP2016238778A JP6800726B2 JP 6800726 B2 JP6800726 B2 JP 6800726B2 JP 2016238778 A JP2016238778 A JP 2016238778A JP 2016238778 A JP2016238778 A JP 2016238778A JP 6800726 B2 JP6800726 B2 JP 6800726B2
Authority
JP
Japan
Prior art keywords
matrix
block
storage
threshold value
image forming
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
JP2016238778A
Other languages
Japanese (ja)
Other versions
JP2018098543A (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 JP2016238778A priority Critical patent/JP6800726B2/en
Publication of JP2018098543A publication Critical patent/JP2018098543A/en
Application granted granted Critical
Publication of JP6800726B2 publication Critical patent/JP6800726B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Facsimile Image Signal Circuits (AREA)

Description

本発明は、画像形成処理を実行する画像形成装置、方法およびプログラムに関する。 The present invention relates to an image forming apparatus, method and program for performing an image forming process.

複合機などの画像形成装置では、画像データは、印刷が行われる前に、適切な階調数をもった画像データに変換される。その際、ディザ法といったスクリーン処理技術が一般的に用いられる。ディザ法では、ディザマトリクスといったLUT(Look Up Table)が用いられる。ディザ法では、入力画像の画素値とディザマトリクスの閾値とを比較し、ハーフトーン処理された二値化画像が生成される。ディザ法を用いることにより、画像の階調数が削減され、記憶領域の容量が削減可能となる。 In an image forming apparatus such as a multifunction device, image data is converted into image data having an appropriate number of gradations before printing is performed. At that time, a screen processing technique such as a dither method is generally used. In the dither method, a LUT (Look Up Table) such as a dither matrix is used. In the dither method, the pixel value of the input image is compared with the threshold value of the dither matrix, and a halftone-processed binarized image is generated. By using the dither method, the number of gradations of the image can be reduced, and the capacity of the storage area can be reduced.

近年では、スクリーン処理技術の発展と伴い、ディザマトリクスの閾値の新しい作成方法も知られている。例えば、Blue Noiseディザマトリクス(以下、BNマスクという)といった技術が知られている。 In recent years, with the development of screen processing technology, a new method for creating a dither matrix threshold is also known. For example, a technique such as a Blue Noise dither matrix (hereinafter referred to as BN mask) is known.

BNマスクは従来のディザマトリクスの使用方法と同じであるが、閾値パターンは、非周期的、等方的であり、低周波成分の少ないノイズ成分で構成されるパワースペクトル(ブルーノイズ特性)を持つことを特徴とする。よって、スクリーン処理後の画像のモアレが見え難く、画質は従来のディザ法より改善されると考えられている。但し、BNマスクの適用には、サイズが大きなマトリクスの使用が必要であり、一般的には、256×256サイズ以上のBNマスクが要求される。ディザ法を用いて、スクリーン処理を行う機能をASICなどのハードウェアで実装する際には、ディザマトリクスをSRAMなどの記憶領域に格納する必要がある。よって、BNマスクを格納する巨大なサイズの記憶領域が必要となる。 The BN mask is the same as the conventional dither matrix usage, but the threshold pattern is aperiodic, isotropic, and has a power spectrum (blue noise characteristic) composed of noise components with few low frequency components. It is characterized by that. Therefore, it is considered that moire of the image after screen processing is difficult to see, and the image quality is improved as compared with the conventional dither method. However, in order to apply the BN mask, it is necessary to use a matrix having a large size, and generally, a BN mask having a size of 256 × 256 or more is required. When a function for performing screen processing is implemented by hardware such as ASIC using the dither method, it is necessary to store the dither matrix in a storage area such as SRAM. Therefore, a huge storage area for storing the BN mask is required.

特許文献1には、BNマスクを回転させ、同じBNマスクの異なる回転パターンを結合して使用する方法が記載されている。 Patent Document 1 describes a method of rotating a BN mask and combining and using different rotation patterns of the same BN mask.

特開平8−163361号公報Japanese Unexamined Patent Publication No. 8-163361

特許文献1に記載の手法を用いることで、図15に簡略的に示すように、128×128サイズのBNマスクと、128×128サイズの回転させたBNマスクとを結合して使用する構成が考えられる。そのような構成により、記憶領域に格納すべきBNマスクのサイズを256×256から128×128に低減することが可能になると考えられる。 By using the method described in Patent Document 1, as shown briefly in FIG. 15, a configuration in which a 128 × 128 size BN mask and a 128 × 128 size rotated BN mask are used in combination is configured. Conceivable. It is considered that such a configuration makes it possible to reduce the size of the BN mask to be stored in the storage area from 256 × 256 to 128 × 128.

スクリーン処理を高速に行う場合、入力画像の画素値とディザマトリクスの閾値との比較は、M×N画素(例えば、4×2画素)のブロック単位で行うことが多い。そのような構成では、1クロックサイクル(クロック信号の1回の立ち上がり)で同時にM×N個の閾値を取得して、M×N個の画素値との比較が行われる。一般的には、1個のSRAMから1クロックサイクルに1個の閾値しか読み出せないので、4×2画素のブロック単位の場合には、同じSRAMが8個必要となる。 When the screen processing is performed at high speed, the comparison between the pixel value of the input image and the threshold value of the dither matrix is often performed in block units of M × N pixels (for example, 4 × 2 pixels). In such a configuration, M × N threshold values are acquired at the same time in one clock cycle (one rising edge of the clock signal), and comparison with M × N pixel values is performed. Generally, only one threshold value can be read from one SRAM in one clock cycle, so in the case of a block unit of 4 × 2 pixels, eight same SRAMs are required.

特許文献1に記載の手法を用いてSRAMに格納すべきBNマスクのサイズを128×128に低減することが可能になったとしても、上記のスクリーン処理の場合には、8個のSRAMそれぞれに128×128サイズのBNマスクが記憶される。その結果、SRAMの総サイズが128×128×8となってSRAMの使用効率がかえって低下することになり、また、ASICの生産コストの増大の一因ともなってしまう。 Even if the size of the BN mask to be stored in the SRAM can be reduced to 128 × 128 by using the method described in Patent Document 1, in the case of the above screen processing, each of the eight SRAMs can be used. A 128 x 128 size BN mask is stored. As a result, the total size of the SRAM becomes 128 × 128 × 8, and the usage efficiency of the SRAM is rather lowered, which also contributes to an increase in the production cost of the ASIC.

本発明の目的は、このような従来の問題点を解決することにある。上記の点に鑑み、本発明は、ハーフトーン処理で用いられるマトリクスの記憶領域の使用効率を向上させる画像形成装置、方法およびプログラムを提供することを目的とする。 An object of the present invention is to solve such a conventional problem. In view of the above points, it is an object of the present invention to provide an image forming apparatus, method and program for improving the efficiency of using the storage area of the matrix used in the halftone processing.

上記課題を解決するため、本発明に係る画像形成装置は、画像データに対してハーフトーン処理を実行する画像形成装置であって、前記ハーフトーン処理に用いるマトリクスに設定された閾値を記憶部に格納する格納手段と、前記画像データから、前記マトリクスのサイズより小さいM×N画素のブロック単位で画素値を取得し、前記画像データにマッピングされた前記マトリクスから前記M×N画素のブロックに対応する閾値を前記記憶部から取得する取得手段と、前記取得手段により取得された前記画素値と前記閾値とに基づいて、前記ハーフトーン処理を実行する実行手段と、を備え、前記格納手段は、前記マトリクスに設定された複数の閾値を、前記記憶部を構成する複数の記憶素子に分散して格納し、前記M×N画素のブロックに対応するM×N個の閾値が前記取得手段によりM×N個の記憶素子から取得されるように、前記複数の閾値は、前記複数の記憶素子に分散して格納され、前記格納手段は、前記マトリクスに設定された前記複数の閾値のうち、前記M×N画素のブロックの各位置について、前記取得手段により取得されるべき複数の閾値を1つの記憶素子に格納することを特徴とする。 In order to solve the above problems, the image forming apparatus according to the present invention is an image forming apparatus that executes halftone processing on image data, and stores a threshold value set in a matrix used for the halftone processing in a storage unit. Pixel values are acquired in block units of M × N pixels smaller than the size of the matrix from the storage means for storing and the image data, and the matrix mapped to the image data corresponds to the block of M × N pixels. The storage means includes an acquisition means for acquiring the threshold value to be performed from the storage unit, and an execution means for executing the halftone process based on the pixel value acquired by the acquisition means and the threshold value. A plurality of threshold values set in the matrix are distributed and stored in a plurality of storage elements constituting the storage unit, and M × N threshold values corresponding to the block of M × N pixels are M by the acquisition means. The plurality of threshold values are distributed and stored in the plurality of storage elements so as to be acquired from × N storage elements, and the storage means is among the plurality of threshold values set in the matrix. It is characterized in that a plurality of threshold values to be acquired by the acquisition means are stored in one storage element for each position of the block of M × N pixels .

本発明によれば、ハーフトーン処理で用いられるマトリクスの記憶領域の使用効率を向上させることができる。 According to the present invention, it is possible to improve the efficiency of using the storage area of the matrix used in the halftone processing.

複合機のブロック構成を示す図である。It is a figure which shows the block structure of a multifunction device. ディザ設定モジュールとディザ処理モジュールの構成を示す図である。It is a figure which shows the structure of the dither setting module and the dither processing module. SRAM配列の構成を示す図である。It is a figure which shows the structure of the SRAM array. 二値化データが出力されるまでの処理を示すフローチャートである。It is a flowchart which shows the process until the binarized data is output. 閾値を読み出す処理を示すフローチャートである。It is a flowchart which shows the process of reading a threshold value. SRAMの特定を説明するための図である。It is a figure for demonstrating the identification of SRAM. BNマスク内の閾値が16個のSRAMに格納される様子を示す図である。It is a figure which shows how the threshold value in a BN mask is stored in 16 SRAMs. インデクス値を示す図である。It is a figure which shows the index value. 閾値データの読出動作を説明するための図である。It is a figure for demonstrating the operation of reading threshold data. 閾値データの読出動作を説明するための図である。It is a figure for demonstrating the operation of reading threshold data. インデクス値を示す図である。It is a figure which shows the index value. 閾値データの読出動作を説明するための図である。It is a figure for demonstrating the operation of reading threshold data. BNマスクを簡易化した図である。It is the figure which simplified the BN mask. BNマスクを簡易化した図である。It is the figure which simplified the BN mask. BNマスクを結合して使用する様子を示す図である。It is a figure which shows the mode that the BN mask is combined and used.

以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成要素には同一の参照番号を付して、説明を省略する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. It should be noted that the following embodiments do not limit the present invention according to the claims, and not all combinations of features described in the present embodiment are essential for the means for solving the present invention. .. The same components are given the same reference numbers, and the description thereof will be omitted.

[第1の実施形態]
図1(a)は、画像形成装置100のブロック構成を示す図である。デジタル複合機100は、コントローラユニット110、操作部120、スキャナ130、プリンタ140を含む。コントローラユニット110には、操作部120が接続され、また、画像入力デバイスであるスキャナ130や画像出力デバイスであるプリンタ140が接続される。プリンタ140は、インクジェット記録方式や電子写真方式等により、記録媒体への画像の記録を行う。本実施形態では、画像形成装置100として複合機を説明するが、記録媒体への画像形成処理が行われる前のハーフトーン処理が実行されるのであれば、複合機(MFP)ではなく、印刷機能を有するSFPであっても良い。
[First Embodiment]
FIG. 1A is a diagram showing a block configuration of the image forming apparatus 100. The digital multifunction device 100 includes a controller unit 110, an operation unit 120, a scanner 130, and a printer 140. An operation unit 120 is connected to the controller unit 110, and a scanner 130 which is an image input device and a printer 140 which is an image output device are connected. The printer 140 records an image on a recording medium by an inkjet recording method, an electrophotographic method, or the like. In the present embodiment, the multifunction device will be described as the image forming apparatus 100, but if the halftone processing before the image forming processing on the recording medium is executed, the printing function is used instead of the multifunction device (MFP). It may be an SFP having.

コントローラユニット110は、装置全体を統括的に制御するコントローラボードであり、CPU112を含む。CPU112は、ROM116に記憶されているブートプログラムによりOSを起動する。コントローラユニット110は、このOS上で、HDD115に記憶されているアプリケーションプログラムを実行して各種処理を実行する。RAM113は、CPU112の作業領域として用いられる。HDD115は、上記アプリケーションプログラムや各種データを記憶する。本実施形態の動作も、例えば、CPU112がROM116やHDD115に記憶されているプログラムをRAM113上に読み出して実行することにより実現される。 The controller unit 110 is a controller board that controls the entire device in an integrated manner, and includes a CPU 112. The CPU 112 boots the OS by the boot program stored in the ROM 116. The controller unit 110 executes an application program stored in the HDD 115 on the OS to execute various processes. The RAM 113 is used as a work area of the CPU 112. The HDD 115 stores the above application program and various data. The operation of this embodiment is also realized, for example, by the CPU 112 reading a program stored in the ROM 116 or the HDD 115 onto the RAM 113 and executing the program.

CPU112には、システムバス119を介して、例えば、HDD115、ROM116、RAM113、操作部インタフェース(I/F)111、デバイスI/F114、ネットワークI/F117、画像処理部118が接続される。操作部I/F111は、タッチパネル等の表示部を有する操作部120とのインタフェースである。操作部I/F111は、操作部120に表示する各種設定データなどの情報を操作部120に送出したり、ユーザ操作により入力された情報を操作部120から受信してCPU112に送出する。デバイスI/F114には、例えば、スキャナ130およびプリンタ140が接続され、データや制御信号の入出力が行われる。ネットワークI/F117は、外部のネットワーク150に接続され、ネットワーク150を介してネットワーク150上の各装置との間で通信を行う。画像処理部118は、例えば、スキャナ130で光学的に原稿を読み取られた画像データに対する各種処理や、プリンタ140で印刷を行うための、画像回転、画像圧縮、解像度変換、色空間変換、階調変換などの画像データに対する各種処理を実行する。 For example, the HDD 115, the ROM 116, the RAM 113, the operation unit interface (I / F) 111, the device I / F 114, the network I / F 117, and the image processing unit 118 are connected to the CPU 112 via the system bus 119. The operation unit I / F 111 is an interface with the operation unit 120 having a display unit such as a touch panel. The operation unit I / F 111 sends information such as various setting data to be displayed on the operation unit 120 to the operation unit 120, or receives the information input by the user operation from the operation unit 120 and sends it to the CPU 112. For example, a scanner 130 and a printer 140 are connected to the device I / F 114, and data and control signals are input and output. The network I / F 117 is connected to the external network 150 and communicates with each device on the network 150 via the network 150. The image processing unit 118 may, for example, perform various processes on image data optically read by the scanner 130, image rotation, image compression, resolution conversion, color space conversion, and gradation for printing by the printer 140. Performs various processes on image data such as conversion.

画像形成装置100が外部のPC等からネットワーク150を介して印刷対象のPDLデータを受信すると、CPU112の制御により、画像処理部118は、レンダリング処理が実行された多値の画像データを生成する。そして、画像処理部118は、スクリーン処理を実行し、多値の画像データから、プリンタ140の各色材色に対応した二値の画像データ(ハーフトーンデータ)を生成する。本実施形態では、画像処理部118は、ディザ法を用いるスクリーン処理システムを含み、そのスクリーン処理システムによりスクリーン処理を実行する。プリンタ140は、生成された二値の画像データに基づいて、記録媒体に画像を記録し、その後、印刷出力される。外部からのPDLデータの受信から印刷出力までの間で、上記以外にも、必要な処理が適宜行われる。例えば、PDLデータに付加された属性情報に基づいて、画像の加工や変換等の処理が行われる場合がある。 When the image forming apparatus 100 receives the PDL data to be printed from an external PC or the like via the network 150, the image processing unit 118 generates multi-valued image data in which the rendering process is executed under the control of the CPU 112. Then, the image processing unit 118 executes screen processing and generates binary image data (halftone data) corresponding to each color material color of the printer 140 from the multi-valued image data. In the present embodiment, the image processing unit 118 includes a screen processing system using the dither method, and the screen processing is executed by the screen processing system. The printer 140 records an image on a recording medium based on the generated binary image data, and then prints out the image. In addition to the above, necessary processing is appropriately performed between the reception of PDL data from the outside and the print output. For example, processing such as image processing or conversion may be performed based on the attribute information added to the PDL data.

図1(b)は、画像処理部118のスクリーン処理システムの構成を示す図である。スクリーン処理システム160は、ディザ法により、入力された画像データをM×N画素のブロック単位で二値の画像データに変換していく。その際に、スクリーン処理システム160は、128×128サイズのブルーノイズマスク(以下、BNマスク)を用いて、入力データ164と閾値との比較を行うことにより二値化データ165を生成する。入力データ164は、画像データのうちM×N画素のブロックに対応する画像データの画素値である。本実施形態では、スクリーン処理システム160は、4×2画素のブロック単位で二値化データ165への変換を行う。図1(b)は、入力データ164の4×2画素のブロックの画素値(1、3、7、12、1、5、12、32)と、BNマスクの閾値(2、3、2、4、1、5、12、21)とが各画素について比較され、二値化データ165が生成される様子を示している。以下、ブロックを4×2画素として説明するが、プロセッサの処理能力や記憶素子の構成等に応じて、他の画素数で構成されても良い。 FIG. 1B is a diagram showing a configuration of a screen processing system of the image processing unit 118. The screen processing system 160 converts the input image data into binary image data in block units of M × N pixels by the dither method. At that time, the screen processing system 160 generates binarized data 165 by comparing the input data 164 with the threshold value using a blue noise mask (hereinafter, BN mask) having a size of 128 × 128. The input data 164 is a pixel value of the image data corresponding to a block of M × N pixels in the image data. In the present embodiment, the screen processing system 160 converts the binarized data 165 in block units of 4 × 2 pixels. FIG. 1B shows the pixel values (1, 3, 7, 12, 1, 5, 12, 32) of the 4 × 2 pixel block of the input data 164 and the threshold values of the BN mask (2, 3, 2, 2,). 4, 1, 5, 12, 21) are compared for each pixel, and the binarized data 165 is generated. Hereinafter, the block will be described as 4 × 2 pixels, but it may be configured with another number of pixels depending on the processing capacity of the processor, the configuration of the storage element, and the like.

スクリーン処理システム160は、ディザ設定モジュール161、SRAM配列162、ディザ処理モジュール163を含む。ディザ設定モジュール161は、SRAM配列162内に構成された複数の記憶素子、本実施形態では複数のSRAMのうち、特定のSRAMのアドレスに閾値を書き込む。ディザ処理モジュール163は、入力データの画素値と閾値との比較を行い、二値化データ165を生成して出力する。また、図1(b)に示すように、クロック信号が、ディザ処理モジュール163とSRAM配列162とに入力されており、1個のSRAMについて、1クロックサイクルで1個の閾値が読み出される。つまり、複数のSRAMから各1個の閾値を1クロックサイクルで読み出すことが可能である。 The screen processing system 160 includes a dither setting module 161, an SRAM array 162, and a dither processing module 163. The dither setting module 161 writes a threshold value to the address of a specific SRAM among a plurality of storage elements configured in the SRAM array 162, or a plurality of SRAMs in the present embodiment. The dither processing module 163 compares the pixel value of the input data with the threshold value, generates binarized data 165, and outputs the data. Further, as shown in FIG. 1B, a clock signal is input to the dither processing module 163 and the SRAM array 162, and one threshold value is read out in one clock cycle for one SRAM. That is, it is possible to read each threshold value from a plurality of SRAMs in one clock cycle.

図2(a)は、ディザ設定モジュール161の構成の一例を示す図である。ディザ設定モジュール161は、例えば半導体集積回路装置で構成され、制御部201、情報格納部202、閾値設定送信部203を含む。制御部201は、例えばCPU或いは専用制御モジュールを含み、情報格納部202と閾値設定送信部203を制御する。制御部201は、図1のCPU112の制御により動作する場合もある。情報格納部202は、不図示のRAMやROM等の記憶部を含み、ディザマトリクス内の閾値を記憶する。閾値設定送信部203は、SRAM配列162の特定のSRAMの特定のアドレスに対して閾値を書き込むリクエストコマンドを生成し、SRAM配列162に送信する。 FIG. 2A is a diagram showing an example of the configuration of the dither setting module 161. The dither setting module 161 is composed of, for example, a semiconductor integrated circuit device, and includes a control unit 201, an information storage unit 202, and a threshold value setting transmission unit 203. The control unit 201 includes, for example, a CPU or a dedicated control module, and controls the information storage unit 202 and the threshold value setting transmission unit 203. The control unit 201 may operate under the control of the CPU 112 of FIG. The information storage unit 202 includes a storage unit such as a RAM or ROM (not shown) and stores the threshold value in the dither matrix. The threshold setting transmission unit 203 generates a request command for writing a threshold value to a specific address of a specific SRAM of the SRAM array 162, and transmits the request command to the SRAM array 162.

図2(b)は、ディザ処理モジュール163の構成の一例を示す図である。ディザ処理モジュール163は、例えば半導体集積回路装置で構成され、画像入力部211、インデクス取得部212、閾値リクエスト送信部213、閾値データ受信部214、画像処理部215、及び画像出力部216を含む。 FIG. 2B is a diagram showing an example of the configuration of the dither processing module 163. The dither processing module 163 is composed of, for example, a semiconductor integrated circuit device, and includes an image input unit 211, an index acquisition unit 212, a threshold request transmission unit 213, a threshold data reception unit 214, an image processing unit 215, and an image output unit 216.

画像入力部211は、メモリ或いは他のモジュールから、画像データを受信する回路であり、1クロックサイクルで4×2個の入力データ、即ち画素値を受信する。また、画像入力部211は、受信した入力データを画像処理部215に送信する機能、及び、入力データを受信する度に、インデクス取得部212にインデクス取得指令を発行する機能を有する。 The image input unit 211 is a circuit that receives image data from a memory or another module, and receives 4 × 2 input data, that is, a pixel value in one clock cycle. Further, the image input unit 211 has a function of transmitting the received input data to the image processing unit 215 and a function of issuing an index acquisition command to the index acquisition unit 212 each time the input data is received.

インデクス取得部212は、画像入力部211からインデクス取得指令を受ける度に、当面の回転パターンに従い、入力データに対応する閾値を取得するためのインデクス値を取得する回路である。本実施形態では、インデクス値は、4×2個取得される。インデクス値は、BNマスク内での画素の位置を示す情報であり、BNマスクから該当する閾値を検索する際に使用される。取得されたインデクス値は、閾値リクエスト送信部213に送信される。閾値リクエスト送信部213は、インデクス取得部212により取得されたインデクス値を受信し、閾値のリードリクエストコマンドを生成してインデクス値とともにSRAM配列162に送信する。 The index acquisition unit 212 is a circuit that acquires an index value for acquiring a threshold value corresponding to input data according to the rotation pattern for the time being each time an index acquisition command is received from the image input unit 211. In this embodiment, 4 × 2 index values are acquired. The index value is information indicating the position of a pixel in the BN mask, and is used when searching for a corresponding threshold value from the BN mask. The acquired index value is transmitted to the threshold request transmission unit 213. The threshold request transmission unit 213 receives the index value acquired by the index acquisition unit 212, generates a threshold read request command, and transmits the index value together with the index value to the SRAM array 162.

閾値データ受信部214は、SRAM配列162から、1クロックサイクルで4×2個の閾値データを受信し、画像処理部215に送信する。画像処理部215は、画像入力部211からの入力データと、閾値データ受信部214からの閾値データを受信し、入力データの画素値と閾値データの閾値との比較を行い、比較結果を二値化データとして、画像出力部216に送信する回路である。画像出力部216は、画像処理部215からの二値化データを受信し、メモリ或いは他のディザ処理モジュールに送信する。本実施形態では、1クロックサイクルで4×2画素分の二値化データを送信する。 The threshold data receiving unit 214 receives 4 × 2 threshold data in one clock cycle from the SRAM array 162 and transmits the 4 × 2 threshold data to the image processing unit 215. The image processing unit 215 receives the input data from the image input unit 211 and the threshold data from the threshold data receiving unit 214, compares the pixel value of the input data with the threshold of the threshold data, and binarizes the comparison result. This is a circuit that transmits the data to the image output unit 216. The image output unit 216 receives the binarized data from the image processing unit 215 and transmits it to the memory or another dither processing module. In the present embodiment, binarized data for 4 × 2 pixels is transmitted in one clock cycle.

図3は、SRAM配列162の構成の一例を示す図である。SRAM配列162は、例えば半導体集積回路装置で構成され、リクエスト受信部301、SRAM選択部302、アドレス生成部303、データ格納部304、及び出力制御部305を含む。 FIG. 3 is a diagram showing an example of the configuration of the SRAM array 162. The SRAM array 162 is composed of, for example, a semiconductor integrated circuit device, and includes a request receiving unit 301, an SRAM selection unit 302, an address generation unit 303, a data storage unit 304, and an output control unit 305.

リクエスト受信部301は、ディザ処理モジュール163からリードリクエストコマンドを受信し、そのリードリクエストコマンドを、SRAM選択部302、アドレス生成部303、及び出力制御部305に送信する。SRAM選択部302は、リクエスト受信部301から受信したリードリクエストコマンドからインデクス情報を抽出し、該当するインデクス情報に対応する閾値を格納するSRAMを選択する選択信号を生成し、データ格納部304に送信する。 The request receiving unit 301 receives a read request command from the dither processing module 163, and transmits the read request command to the SRAM selection unit 302, the address generation unit 303, and the output control unit 305. The SRAM selection unit 302 extracts index information from the read request command received from the request reception unit 301, generates a selection signal for selecting an SRAM that stores a threshold value corresponding to the corresponding index information, and transmits the selection signal to the data storage unit 304. To do.

アドレス生成部303は、リクエスト受信部301から受信したリードリクエストコマンドからインデクス情報を抽出し、該当するインデクス情報に対応する閾値を格納するSRAM中の位置信号(アドレス信号)を生成し、データ格納部304に送信する。データ格納部304は、Max(M,N)×Max(M,N)個、即ち、最大値の二乗個の比較的に小さい容量のSRAMの配列を含んで構成される。例えば、本実施形態では4×2画素のブロックであるので、Max(4,2)×Max(4,2)=4×4、即ち16個のSRAMの配列を含む。また、データ格納部304に含まれるSRAMの配列の総サイズは、BNマスクを格納するための最小サイズであり、本実施形態では、128×128である。つまり、1個のSRAMのサイズは、128×128÷16=1024アドレス分となる。 The address generation unit 303 extracts index information from the read request command received from the request reception unit 301, generates a position signal (address signal) in the SRAM that stores the threshold value corresponding to the corresponding index information, and generates a data storage unit. Send to 304. The data storage unit 304 is configured to include an array of Max (M, N) × Max (M, N), that is, a square of the maximum value, which has a relatively small capacity. For example, in this embodiment, since it is a block of 4 × 2 pixels, Max (4,2) × Max (4,2) = 4 × 4, that is, an array of 16 SRAMs is included. Further, the total size of the SRAM array included in the data storage unit 304 is the minimum size for storing the BN mask, and is 128 × 128 in the present embodiment. That is, the size of one SRAM is 128 × 128 ÷ 16 = 1024 addresses.

データ格納部304は、SRAM選択部302とアドレス生成部303からのSRAM選択信号とアドレス信号を受信し、所定のSRAMの所定のアドレスから、閾値を読み出して出力制御部305に送信する。出力制御部305は、データ格納部304から閾値を受信し、リクエスト受信部301から受信したリードリクエストコマンドからインデクス情報を抽出する。そして、16個のSRAMの出力のうち特定の4×2個のSRAMの出力をディザ処理モジュール163に送信する。 The data storage unit 304 receives the SRAM selection signal and the address signal from the SRAM selection unit 302 and the address generation unit 303, reads the threshold value from the predetermined address of the predetermined SRAM, and transmits the threshold value to the output control unit 305. The output control unit 305 receives the threshold value from the data storage unit 304, and extracts the index information from the read request command received from the request reception unit 301. Then, out of the outputs of the 16 SRAMs, the outputs of the specific 4 × 2 SRAMs are transmitted to the dither processing module 163.

図4は、ディザマトリクスの閾値の設定から二値化データが出力されるまでの処理を示すフローチャートである。S401〜S405では、ディザ設定モジュール161がSRAM配列162に閾値データを書き込む処理を示す。S401〜S405の処理は、例えば、制御部201のCPUがROMに記憶されたプログラムを読み出して実行することにより実現される。 FIG. 4 is a flowchart showing a process from setting the threshold value of the dither matrix to outputting the binarized data. In S401 to S405, the dither setting module 161 indicates a process of writing the threshold data to the SRAM array 162. The processing of S401 to S405 is realized, for example, by the CPU of the control unit 201 reading and executing the program stored in the ROM.

S401において、制御部201は、既に設定した閾値の数とBNマスクのサイズとに基づき、閾値の設定が終了したか否かを判定する。閾値の設定が終了していないと判定された場合、S402において、制御部201は、情報格納部202から、所定の閾値データを読み出す。一方、閾値の設定が終了していると判定された場合、後述のS406へ進む。 In S401, the control unit 201 determines whether or not the threshold value setting is completed based on the number of the threshold values already set and the size of the BN mask. When it is determined that the threshold value setting is not completed, the control unit 201 reads the predetermined threshold value data from the information storage unit 202 in S402. On the other hand, when it is determined that the threshold value setting is completed, the process proceeds to S406 described later.

S403において、制御部201は、注目する閾値の書き込み先のSRAMを特定し、S404において、閾値の書き込み先のSRAMの中の位置(アドレス)を特定する。S405において、制御部201は、閾値設定送信部203を介して、SRAM配列214に対して、閾値の書込みリクエストを発行する。その後、S401からの処理を繰り返す。 In S403, the control unit 201 specifies the SRAM of the writing destination of the threshold value of interest, and in S404, specifies the position (address) in the SRAM of the writing destination of the threshold value. In S405, the control unit 201 issues a threshold value write request to the SRAM array 214 via the threshold value setting transmission unit 203. After that, the process from S401 is repeated.

図6(a)は、S403のSRAMの特定を説明するための図である。BNマスク601は、128×128サイズのマトリクスである。注目閾値602をSRAM配列162に書き込む際、制御部201は、注目閾値の位置(X_Cord、Y_Cord)を確認する。ここで、X_Cordは、注目閾値602と注目閾値602が属する行の先頭との距離であり、本実施形態では、0〜127の値をとる。また、Y_Cordは、注目閾値602と注目閾値602が属する列の先頭との距離であり、本実施形態では、0〜127の値をとる。そして、上記のX_CordとY_Cordの値に基づき、式(1)に従い、書き込む先のSRAMの番号を特定する。 FIG. 6A is a diagram for explaining the identification of the SRAM of S403. The BN mask 601 is a 128 × 128 size matrix. When writing the attention threshold value 602 to the SRAM array 162, the control unit 201 confirms the position of the attention threshold value (X_Cord, Y_Cord). Here, X_Cord is the distance between the attention threshold value 602 and the beginning of the line to which the attention threshold value 602 belongs, and in the present embodiment, it takes a value of 0 to 127. Further, Y_Cord is the distance between the attention threshold value 602 and the head of the column to which the attention threshold value 602 belongs, and in the present embodiment, it takes a value of 0 to 127. Then, based on the above-mentioned values of X_Cord and Y_Cord, the number of the SRAM to be written is specified according to the equation (1).

X_Cord%max(M,N)+Y_Cord%max(M,N)*max(M,N) ・・・(1)
ここで、「%」は剰余を表す。本実施形態では、5%4+3%4*4=1+12=13となり、注目閾値602を書き込むSRAMは、図6(a)のSRAM13であることを特定する。
X_Cord% max (M, N) + Y_Cord% max (M, N) * max (M, N) ... (1)
Here, "%" represents a remainder. In the present embodiment, 5% 4 + 3% 4 * 4 = 1 + 12 = 13, and it is specified that the SRAM for writing the attention threshold value 602 is the SRAM 13 shown in FIG. 6A.

図6(b)は、S404のアドレスの特定を説明するための図である。X_CordとY_Cordは、上記で説明したとおりである。MatrixWidthは、BNマスクの幅であり、本実施形態では、128である。本実施形態では、X_Cord、Y_CordとMatrixWidthに基づき、式(2)に従い、書き込む先のアドレスを特定する。 FIG. 6B is a diagram for explaining the identification of the address of S404. X_Cord and Y_Cord are as described above. MatrixWidth is the width of the BN mask, which is 128 in this embodiment. In the present embodiment, the address to be written is specified according to the equation (2) based on X_Cord, Y_Cord, and MatrixWidth.

X_Cord/max(M,N)+(Y_Cord/(max(M,N))*(MatrixWidth/max(M,N)) ・・・(2)
ここで「/」は商を表す。本実施形態では、5/4+(3/4)*(128/4)=1+0=1となり、注目閾値602を書き込むSRAM13のアドレスは1であることを特定する。
X_Cord / max (M, N) + (Y_Cord / (max (M, N)) * (MatrixWids / max (M, N)) ... (2)
Here, "/" represents a quotient. In the present embodiment, 5/4 + (3/4) * (128/4) = 1 + 0 = 1, and it is specified that the address of the SRAM 13 for writing the attention threshold value 602 is 1.

本実施形態では、図6(a)及び図6(b)の方法により、BNマスク601内の閾値は16個のSRAMに分散して格納される。図7には、表示の便宜上、16個のSRAMをA〜Pで表し、BNマスク701内の閾値は対応するSRAMに格納されることを示す。例えば、矢印で示される4つの閾値Aは、SRAM−Aのアドレス0、1、32、33に格納される。 In the present embodiment, the threshold values in the BN mask 601 are distributed and stored in 16 SRAMs by the methods of FIGS. 6 (a) and 6 (b). FIG. 7 shows that 16 SRAMs are represented by A to P for convenience of display, and the threshold value in the BN mask 701 is stored in the corresponding SRAM. For example, the four thresholds A indicated by the arrows are stored at addresses 0, 1, 32, 33 of SRAM-A.

図7では、BNマスクが128×128の場合を示している。図13及び図14は、本願の概念を容易に説明するための図である。 FIG. 7 shows a case where the BN mask is 128 × 128. 13 and 14 are diagrams for easily explaining the concept of the present application.

図13(a)は、BNマスクが仮に8×8の場合を示す図である。ブロック単位は、上記と同様に、4×2画素である。ここで、図13(a)に示すように、各ブロックをブロックA〜Hとする。そして、各ブロック内の位置を、左上から右上に向かって1、2、3、4と規定し、左下から右下に向かって5、6、7、8と規定する。つまり、ブロックAには、閾値A1、A2、A3、A4、A5、A6、A7、A8の8つの閾値がある。他のブロックB〜Hについても同様である。図13(b)は、式(1)及び(2)を図13(a)に適用した場合に、SRAM0〜15にどのように格納されるかを示す図である。図13(b)のSRAM0〜15の並びは、図3や図6(a)で示した並びと同じである。つまり、4×2画素のブロックであるので、最大値4の二乗、16個のSRAMが構成されている。 FIG. 13A is a diagram showing a case where the BN mask is tentatively 8 × 8. The block unit is 4 × 2 pixels as described above. Here, as shown in FIG. 13A, each block is designated as blocks A to H. Then, the positions in each block are defined as 1, 2, 3, 4 from the upper left to the upper right, and 5, 6, 7, 8 from the lower left to the lower right. That is, the block A has eight thresholds A1, A2, A3, A4, A5, A6, A7, and A8. The same applies to the other blocks B to H. FIG. 13B is a diagram showing how the equations (1) and (2) are stored in SRAMs 0 to 15 when the equations (1) and (2) are applied to FIG. 13 (a). The arrangement of SRAMs 0 to 15 in FIG. 13B is the same as the arrangement shown in FIGS. 3 and 6A. That is, since it is a block of 4 × 2 pixels, a maximum value of 4 squared and 16 SRAMs are configured.

図13(b)に示すように、ブロックAについて、8つの閾値A1〜A8が、8つのSRAM0〜7から読み出される。また、ブロックBについて、8つの閾値B1〜B8が、8つのSRAM0〜7から読み出される。また、ブロックCについて、8つの閾値C1〜C8が、8つのSRAM8〜15から読み出される。また、ブロックDについて、8つの閾値D1〜D8が、8つのSRAM8〜15から読み出される。 As shown in FIG. 13B, for block A, eight thresholds A1 to A8 are read from eight SRAMs 0-7. Further, for block B, eight threshold values B1 to B8 are read from eight SRAMs 0 to 7. Also, for block C, eight thresholds C1 to C8 are read from eight SRAMs 8 to 15. Also, for block D, eight thresholds D1 to D8 are read from eight SRAMs 8 to 15.

ブロックEについて、8つの閾値E1〜E8が、8つのSRAM0〜7から読み出される。また、ブロックFについて、8つの閾値F1〜F8が、8つのSRAM0〜7から読み出される。また、ブロックGについて、8つの閾値G1〜G8が、8つのSRAM8〜15から読み出される。また、ブロックHについて、8つの閾値H1〜H8が、8つのSRAM8〜15から読み出される。 For block E, eight thresholds E1 to E8 are read from eight SRAMs 0-7. Further, for the block F, eight threshold values F1 to F8 are read from eight SRAMs 0 to 7. Further, for the block G, eight threshold values G1 to G8 are read from eight SRAMs 8 to 15. Also, for block H, eight thresholds H1 to H8 are read from eight SRAMs 8 to 15.

このように、どのブロックについても、異なるSRAMから閾値が読み出されることになる。つまり、どのブロックについても、1クロックサイクルでそのブロックの閾値を読み出すことができる。また、各SRAMについて必要な記憶容量は、図13(b)に示すように、アドレス0〜3の4アドレス分で良く、BNマスクの8×8=64アドレスを確保しなくて良い。 In this way, the threshold value is read from different SRAMs for each block. That is, for any block, the threshold value of that block can be read in one clock cycle. Further, as shown in FIG. 13B, the storage capacity required for each SRAM may be 4 addresses of addresses 0 to 3, and it is not necessary to secure 8 × 8 = 64 addresses of the BN mask.

図14(a)は、BNマスクが仮に16×16の場合を示す図である。ブロック単位は、上記と同様に、4×2画素である。ここで、図16(a)に示すように、各ブロックをブロックA〜Zfとする。そして、各ブロック内の位置を、左上から右上に向かって1、2、3、4と規定し、左下から右下に向かって5、6、7、8と規定する。つまり、ブロックAには、閾値A1、A2、A3、A4、A5、A6、A7、A8の8つの閾値がある。他のブロックB〜Zfについても同様である。図14(b)は、式(1)及び(2)を図14(a)に適用した場合に、SRAM0〜15にどのように格納されるかを示す図である。図14(b)のSRAM0〜15の並びは、図3や図6(a)で示した並びと同じである。つまり、4×2画素のブロックであるので、最大値4の二乗、16個のSRAMが構成されている。 FIG. 14A is a diagram showing a case where the BN mask is tentatively 16 × 16. The block unit is 4 × 2 pixels as described above. Here, as shown in FIG. 16A, each block is designated as blocks A to Zf. Then, the positions in each block are defined as 1, 2, 3, 4 from the upper left to the upper right, and 5, 6, 7, 8 from the lower left to the lower right. That is, the block A has eight thresholds A1, A2, A3, A4, A5, A6, A7, and A8. The same applies to the other blocks B to Zf. FIG. 14B is a diagram showing how the equations (1) and (2) are stored in SRAMs 0 to 15 when the equations (1) and (2) are applied to FIG. 14 (a). The arrangement of SRAMs 0 to 15 in FIG. 14B is the same as the arrangement shown in FIGS. 3 and 6A. That is, since it is a block of 4 × 2 pixels, a maximum value of 4 squared and 16 SRAMs are configured.

図の簡略上、図14(b)のSRAM0には、「A1〜D1、I1〜L1、Q1〜T1、Y1〜Zb1」と表記している。これは、A1、B1、C1、D1、I1、J1、K1、L1、Q1、R1、S1、T1、Y1、Z1、Za1、Zb1を表す。他のSRAM1〜15についても同様に表記している。 For simplification of the figure, SRAM 0 in FIG. 14B is described as "A1 to D1, I1 to L1, Q1 to T1, Y1 to Zb1". This represents A1, B1, C1, D1, I1, J1, K1, L1, Q1, R1, S1, T1, Y1, Z1, Za1, Zb1. The same applies to the other SRAMs 1 to 15.

図14(b)に示すように、例えば、ブロックAについて、8つの閾値A1〜A8が、8つのSRAM0〜7から読み出される。また、ブロックBについて、8つの閾値B1〜B8が、8つのSRAM0〜7から読み出される。また、ブロックCについて、8つの閾値C1〜C8が、8つのSRAM8〜15から読み出される。また、ブロックDについて、8つの閾値D1〜D8が、8つのSRAM8〜15から読み出される。 As shown in FIG. 14B, for example, for block A, eight thresholds A1 to A8 are read from eight SRAMs 0-7. Further, for block B, eight threshold values B1 to B8 are read from eight SRAMs 0 to 7. Also, for block C, eight thresholds C1 to C8 are read from eight SRAMs 8 to 15. Also, for block D, eight thresholds D1 to D8 are read from eight SRAMs 8 to 15.

他のブロックについても同様であり、どのブロックについても、異なるSRAMから閾値が読み出されることになる。つまり、どのブロックについても、1クロックサイクルでそのブロックの閾値を読み出すことができる。また、各SRAMについて必要な記憶容量は、図14(b)に示すように、アドレス0〜15の16アドレス分で良く、BNマスクの16×16=256アドレスを確保しなくて良い。図13及び図14の効果は、図7の場合でも同様であり、各SRAMについて必要な記憶容量は、アドレス0〜1023の1024アドレス分で良く、BNマスク701の128×128=16384アドレスを確保しなくても良い。 The same applies to the other blocks, and the threshold value is read from different SRAMs for each block. That is, for any block, the threshold value of that block can be read in one clock cycle. Further, as shown in FIG. 14B, the storage capacity required for each SRAM may be 16 addresses of addresses 0 to 15, and 16 × 16 = 256 addresses of the BN mask need not be secured. The effects of FIGS. 13 and 14 are the same in the case of FIG. 7, and the storage capacity required for each SRAM may be 1024 addresses of addresses 0 to 1023, and 128 × 128 = 16384 addresses of the BN mask 701 are secured. You don't have to.

再び、図4を参照する。S406〜S413は、ディザ処理モジュール163が入力データを受信し、SRAM配列162にリードリクエストコマンドを送信し、読み込んだ閾値と入力データの画素値との比較を行い、その結果を出力する処理を示す。 See FIG. 4 again. S406 to S413 indicate a process in which the dither processing module 163 receives the input data, sends a read request command to the SRAM array 162, compares the read threshold value with the pixel value of the input data, and outputs the result. ..

S406において、画像入力部211は、入力データを受信したか否かを判定する。入力データを受信したと判定された場合、S407において、画像入力部211は、受信した4×2画素のブロックを画像処理部215に送信するとともに、インデクス取得部212にインデクス取得コマンドを送信する。 In S406, the image input unit 211 determines whether or not the input data has been received. When it is determined that the input data has been received, in S407, the image input unit 211 transmits the received 4 × 2 pixel block to the image processing unit 215 and also transmits an index acquisition command to the index acquisition unit 212.

S408において、インデックス計算部212は、インデクス取得コマンドを受信すると、入力されたブロックに対応する閾値の4×2個のインデクスを取得する。インデクス取得部212は、その取得結果を閾値リクエスト送信部213に送信する。閾値リクエスト送信部213は、インデクス取得結果であるインデクス値を受信すると、インデクス値とともにSRAM配列162に閾値データのリードリクエストコマンドを発行する。SRAM配列162で行われるS414については後述する。 In S408, when the index calculation unit 212 receives the index acquisition command, it acquires 4 × 2 indexes of the threshold value corresponding to the input block. The index acquisition unit 212 transmits the acquisition result to the threshold request transmission unit 213. When the threshold request transmission unit 213 receives the index value which is the index acquisition result, the threshold request transmission unit 213 issues a read request command for threshold data to the SRAM array 162 together with the index value. S414 performed in the SRAM array 162 will be described later.

S409において、閾値データ受信部214は、発行されたリードリクエストコマンドに対応する閾値データ、即ち4×2個の閾値を受信する。閾値データ受信部214は、受信された閾値データを画像処理部215に送信する。S410において、画像処理部215は、画像入力部211から送信された入力データの画素値と閾値データ受信部214から送信された閾値データの閾値との比較を行う。画素値が閾値より大きいと判定された場合、画像処理部215は、出力結果に“1”を代入し、データ出力部216に送信する。一方、画素値が閾値より大きくないと判定された場合、画像処理部215は、出力結果に“0”を代入し、データ出力部216に送信する。 In S409, the threshold data receiving unit 214 receives the threshold data corresponding to the issued read request command, that is, 4 × 2 thresholds. The threshold data receiving unit 214 transmits the received threshold data to the image processing unit 215. In S410, the image processing unit 215 compares the pixel value of the input data transmitted from the image input unit 211 with the threshold value of the threshold data transmitted from the threshold data receiving unit 214. When it is determined that the pixel value is larger than the threshold value, the image processing unit 215 substitutes "1" for the output result and transmits it to the data output unit 216. On the other hand, when it is determined that the pixel value is not larger than the threshold value, the image processing unit 215 substitutes "0" for the output result and transmits it to the data output unit 216.

S413において、データ出力部216は、画像処理部215から送信された比較結果、即ち4×2画素の二値化データをディザ処理モジュール163の外部に出力する。本実施形態では、以上のように、入力データを二値化データに変換する。 In S413, the data output unit 216 outputs the comparison result transmitted from the image processing unit 215, that is, the binarized data of 4 × 2 pixels, to the outside of the dither processing module 163. In the present embodiment, the input data is converted into the binarized data as described above.

図8は、S407のインデクス値の取得結果を示す図である。本実施形態では、画像データが512×512サイズであるとする。本実施形態では、画像処理部118は、スクリーン処理を行う場合には、画像データ801に対して、図8に示すように、128×128のBNマスク802と、BNマスク802を右方向に90度回転したBNマスク803とを結合するようにマッピングしている。このようなBNマスクのマッピングにより、マトリクス特有のパターンを目立ち難くしつつ、一般的には256×256サイズ以上のBNマスクが要求されるところSRAMに格納しておくBNマスクの容量を128×128のサイズに抑えることができる。 FIG. 8 is a diagram showing the acquisition result of the index value of S407. In the present embodiment, it is assumed that the image data has a size of 512 × 512. In the present embodiment, when performing screen processing, the image processing unit 118 applies a 128 × 128 BN mask 802 and a BN mask 802 to the right 90 with respect to the image data 801 as shown in FIG. It is mapped so as to be combined with the BN mask 803 rotated by the degree. By such mapping of the BN mask, the pattern peculiar to the matrix is made inconspicuous, and the capacity of the BN mask stored in the SRAM is 128 × 128 where a BN mask of 256 × 256 size or more is generally required. Can be suppressed to the size of.

S407で取得されるインデクスは、BNマスク内での画素の位置を示している。本実施形態では、図8に示すように、BNマスク内で、各画素の位置を表す位置情報がインデクス値0〜16383として定められている。S407では、4×2画素のブロックに対応する8個のインデクス値が取得される。また、BNマスク802内で割り当てられたブロックのインデクス値0に対応するBNマスク803内での値は、インデクス値16256となる。 The index acquired in S407 indicates the position of the pixel in the BN mask. In the present embodiment, as shown in FIG. 8, the position information indicating the position of each pixel is defined as the index value 0 to 16383 in the BN mask. In S407, eight index values corresponding to a block of 4 × 2 pixels are acquired. Further, the value in the BN mask 803 corresponding to the index value 0 of the block assigned in the BN mask 802 is the index value 16256.

再び、図4を参照する。S414は、SRAM配列162がディザ処理モジュール163からのリードリクエストコマンドを受信した後に、所定の閾値を読み出す処理を示すフローチャートである。また、図5は、S414の処理の詳細を示すフローチャートである。 See FIG. 4 again. S414 is a flowchart showing a process of reading a predetermined threshold value after the SRAM array 162 receives a read request command from the dither processing module 163. Further, FIG. 5 is a flowchart showing details of the process of S414.

S501において、リクエスト受信部301は、ディザ処理モジュール163からリードリクエストコマンドを受信したか否かを判定する。ディザ処理モジュール163からリードリクエストコマンドを受信したと判定された場合、リクエスト受信部301は、リードリクエストコマンド及びインデクス取得結果をSRAM選択部302、アドレス生成部303、出力制御部305に送信する。 In S501, the request receiving unit 301 determines whether or not a read request command has been received from the dither processing module 163. When it is determined that the read request command has been received from the dither processing module 163, the request receiving unit 301 transmits the read request command and the index acquisition result to the SRAM selection unit 302, the address generation unit 303, and the output control unit 305.

S502において、SRAM選択部302は、受信したインデクス取得結果に基づいて、図6(a)で説明した動作によりSRAMを特定する。S503において、アドレス生成部303は、受信したインデクス取得結果に基づいて、図6(b)で説明した動作によりアドレスを特定する。 In S502, the SRAM selection unit 302 identifies the SRAM by the operation described with reference to FIG. 6A based on the received index acquisition result. In S503, the address generation unit 303 identifies the address by the operation described with reference to FIG. 6B based on the received index acquisition result.

S504において、データ格納部304は、SRAMを特定する情報とアドレスを特定する情報に基づき、所定のSRAMから閾値を読み出して出力制御部305に送信する。S505において、出力制御部305は、16個の閾値の中からリクエスト受信部301に送信されたインデクス情報に基づき、必要な8個の閾値を選択してディザ処理モジュール163に送信する。 In S504, the data storage unit 304 reads a threshold value from a predetermined SRAM and transmits it to the output control unit 305 based on the information for specifying the SRAM and the information for specifying the address. In S505, the output control unit 305 selects the necessary eight threshold values from the six threshold values and transmits them to the dither processing module 163 based on the index information transmitted to the request reception unit 301.

図9、図10は、BNマスクの異なる回転パターンを用いる場合の、S504での閾値データの読出動作を説明するための図である。図9(a)のBNマスク901は、無回転のBNマスクであり、図8のBNマスク802に対応する。BNマスク901において、4×2の画素ブロックに対応する閾値は、ブロック902、903で読み出される。図13及び図14で説明したように、ブロック902、903内では、SRAMを表示するラベル(A〜P)が重複せず、異なるSRAMから閾値が読み出されることになる。つまり、1クロックサイクルで4×2個の閾値を取得することができる。 9 and 10 are diagrams for explaining the operation of reading the threshold data in S504 when different rotation patterns of the BN masks are used. The BN mask 901 of FIG. 9A is a non-rotating BN mask and corresponds to the BN mask 802 of FIG. In the BN mask 901, the threshold value corresponding to the 4 × 2 pixel block is read out in the blocks 902 and 903. As described with reference to FIGS. 13 and 14, the labels (A to P) displaying the SRAM do not overlap in the blocks 902 and 903, and the threshold value is read from different SRAMs. That is, 4 × 2 thresholds can be acquired in one clock cycle.

図9(b)のBNマスク904は、BNマスク901を右方向に90度回転させたBNマスクであり、図8のBNマスク803に対応する。4×2の画素ブロックに対応する閾値は、ブロック905、906で読み出される。図9(b)に示すように、ブロック905、906内では、SRAMを表示するラベル(A〜P)が重複せず、異なるSRAMから閾値が読み出されることになる。つまり、1クロックサイクルで4×2個の閾値を取得することができる。 The BN mask 904 of FIG. 9B is a BN mask obtained by rotating the BN mask 901 to the right by 90 degrees, and corresponds to the BN mask 803 of FIG. The threshold value corresponding to the 4 × 2 pixel block is read out in blocks 905 and 906. As shown in FIG. 9B, the labels (A to P) displaying the SRAM do not overlap in the blocks 905 and 906, and the threshold value is read from different SRAMs. That is, 4 × 2 thresholds can be acquired in one clock cycle.

図10(a)のBNマスク907は、BNマスク901を180度回転させたBNマスクである。4×2の画素ブロックに対応する閾値は、ブロック908、909で読み出される。図10に示すように、ブロック908、909内では、SRAMを表示するラベル(A〜P)が重複せず、異なるSRAMから閾値が読み出されることになる。つまり、1クロックサイクルで4×2個の閾値を取得することができる。 The BN mask 907 of FIG. 10A is a BN mask obtained by rotating the BN mask 901 by 180 degrees. The threshold value corresponding to the 4 × 2 pixel block is read out in blocks 908 and 909. As shown in FIG. 10, in the blocks 908 and 909, the labels (A to P) displaying the SRAM do not overlap, and the threshold value is read from different SRAMs. That is, 4 × 2 thresholds can be acquired in one clock cycle.

図10(b)のBNマスク910は、BNマスク901を右方向に270度回転させたBNマスクである。4×2の画素ブロックに対応する閾値は、ブロック911、912で読み出される。図10(b)に示すように、ブロック911、912内では、SRAMを表示するラベル(A〜P)が重複せず、異なるSRAMから閾値が読み出されることになる。つまり、1クロックサイクルで4×2個の閾値を取得することができる。 The BN mask 910 of FIG. 10B is a BN mask obtained by rotating the BN mask 901 to the right by 270 degrees. The threshold value corresponding to the 4 × 2 pixel block is read out in blocks 911 and 912. As shown in FIG. 10B, the labels (A to P) displaying the SRAM do not overlap in the blocks 911 and 912, and the threshold value is read from different SRAMs. That is, 4 × 2 thresholds can be acquired in one clock cycle.

また、BNマスク901の鏡像を用いた場合であっても、BNマスク904、BNマスク907、BNマスク910と同じ動作となる。つまり、異なるSRAMから複数個の閾値を読み出されることになり、1クロックサイクルで4×2個の閾値を取得することができる。 Further, even when the mirror image of the BN mask 901 is used, the operation is the same as that of the BN mask 904, the BN mask 907, and the BN mask 910. That is, a plurality of threshold values are read from different SRAMs, and 4 × 2 threshold values can be acquired in one clock cycle.

以上のように、本実施形態によれば、ディザマトリクスの回転パターンによらず、1クロックサイクルでM×N個の閾値データを読み出すことができる。さらには、必要なBNマスクのサイズ分の記憶領域を複数のSRAMで実現するので、SRAMの記憶領域の使用効率を向上させることができる。 As described above, according to the present embodiment, M × N threshold data can be read in one clock cycle regardless of the rotation pattern of the dither matrix. Further, since the storage area corresponding to the required size of the BN mask is realized by a plurality of SRAMs, the efficiency of using the storage area of the SRAM can be improved.

[第2の実施形態]
第1の実施形態では、図8に示すように、回転させたBNマスクを結合する形態を説明した。本実施形態では、BNマスクを回転させずに、所定の画素分シフトさせたBNマスクを用いる形態を説明する。以下、図4及び図5を参照しながら、第1の実施形態と異なる点について説明する。
[Second Embodiment]
In the first embodiment, as shown in FIG. 8, a mode in which the rotated BN mask is bound has been described. In the present embodiment, a mode in which the BN mask is shifted by a predetermined pixel without rotating the BN mask will be described. Hereinafter, the points different from the first embodiment will be described with reference to FIGS. 4 and 5.

ディザ設定モジュール161がSRAM配列162に閾値データを書き込む処理については、第1の実施形態におけるS401〜S405の説明と同様であるので、その説明を省略する。 The process of the dither setting module 161 writing the threshold data to the SRAM array 162 is the same as the description of S401 to S405 in the first embodiment, and thus the description thereof will be omitted.

ディザ処理モジュール163が入力データを受信してから、閾値と入力データの画素値との比較を行い、その結果を出力するまでは、S407以外、第1の実施形態におけるS406〜S413の説明と同様であるので、その説明を省略する。 After the dither processing module 163 receives the input data, the threshold value is compared with the pixel value of the input data, and the result is output, except for S407, which is the same as the description of S406 to S413 in the first embodiment. Therefore, the description thereof will be omitted.

以下、本実施形態におけるS407でのインデクス値の取得の処理について説明する。図11は、本実施形態における画像データ1101にマッピングされたBNマスク内の各画素のインデクス値を示す図である。本実施形態では、図11に示すように、128×128のBNマスク1102が、512×512の画像データ1101にマッピングされる。また、図11に示すように、副走査方向(図中、上下方向)に128画素分進む度に、主走査方向(図中、左右方向)へのマッピングは、右方向に1画素シフトされる。図11に示すように、副走査方向でのBNマスク間は、インデックス16256の画素の下にインデックス127の画素が位置する。 Hereinafter, the process of acquiring the index value in S407 in the present embodiment will be described. FIG. 11 is a diagram showing an index value of each pixel in the BN mask mapped to the image data 1101 in the present embodiment. In the present embodiment, as shown in FIG. 11, the 128 × 128 BN mask 1102 is mapped to the 512 × 512 image data 1101. Further, as shown in FIG. 11, the mapping in the main scanning direction (horizontal direction in the figure) is shifted by one pixel to the right every time the sub scanning direction (vertical direction in the figure) advances by 128 pixels. .. As shown in FIG. 11, the pixel of the index 127 is located below the pixel of the index 16256 between the BN masks in the sub-scanning direction.

本実施形態では、図11に示すように、副走査方向でのBNマスク間で主走査方向へシフトされているので、マトリクス特有のパターンが目立ち難くなる。さらに、図12で後述するように、4×2画素のブロックがBNマスク間を跨いだとしても、異なるSRAMから複数個の閾値を読み出されることになり、1クロックサイクルで4×2個の閾値を取得することができる。 In the present embodiment, as shown in FIG. 11, since the BN masks in the sub-scanning direction are shifted in the main scanning direction, the pattern peculiar to the matrix becomes inconspicuous. Further, as will be described later in FIG. 12, even if a block of 4 × 2 pixels straddles between BN masks, a plurality of threshold values will be read from different SRAMs, and 4 × 2 threshold values will be read in one clock cycle. Can be obtained.

インデクス取得部212は、着目する4×2画素のブロックに対応するインデクス情報を閾値リクエスト送信部213に送信する。閾値リクエスト送信部213は、インデクス情報を受信すると、インデクス情報とともにSRAM配列162に閾値データのリードリクエストコマンドを発行する。その後、対応する閾値が読み出される。SRAM配列162がディザ処理モジュール163からのリードリクエストコマンドを受信後、所定の閾値を読み出すS414の処理については、第1の実施形態におけるS501〜S505の説明と同様であるので、その説明を省略する。 The index acquisition unit 212 transmits the index information corresponding to the block of 4 × 2 pixels of interest to the threshold request transmission unit 213. Upon receiving the index information, the threshold request transmission unit 213 issues a read request command for threshold data to the SRAM array 162 together with the index information. After that, the corresponding threshold is read. The processing of S414 for reading a predetermined threshold value after the SRAM array 162 receives the read request command from the dither processing module 163 is the same as the description of S501 to S505 in the first embodiment, and thus the description thereof will be omitted. ..

図12は、本実施形態でのS504における閾値の読出動作を説明するための図である。BNマスク1201は、無回転のBNマスクである。第1の実施形態で説明したように、4×2画素のブロックに対応する閾値は、1個のBNマスク内部に存在する場合、異なるSRAMから読み出される。 FIG. 12 is a diagram for explaining the threshold reading operation in S504 in the present embodiment. The BN mask 1201 is a non-rotating BN mask. As described in the first embodiment, the threshold value corresponding to the block of 4 × 2 pixels is read from different SRAMs when it exists inside one BN mask.

図12は、4×2画素のブロック1202がBNマスク間を跨いだ場合の例を示している。図12のようにBNマスクが画像データに対してマッピングされた場合には、4×2画素のブロック1202がBNマスク間を跨いだとしても、SRAMを表示するラベル(A〜P)が重複せず、異なるSRAMから閾値が読み出されることになる。つまり、1クロックサイクルで4×2個の閾値を取得することができる。 FIG. 12 shows an example in which a block 1202 having 4 × 2 pixels straddles between BN masks. When the BN mask is mapped to the image data as shown in FIG. 12, even if the block 1202 of 4 × 2 pixels straddles between the BN masks, the labels (A to P) for displaying the SRAM are duplicated. Instead, the threshold will be read from different SRAMs. That is, 4 × 2 thresholds can be acquired in one clock cycle.

図11及び図12では、無回転のBNマスクを説明したが、BNマスクが回転されたパターンや鏡像等の場合であっても同様に、同時に異なるSRAMから閾値が読み出されることになる。 Although the non-rotating BN mask has been described with reference to FIGS. 11 and 12, threshold values are similarly read from different SRAMs at the same time even when the BN mask is a rotated pattern or a mirror image.

以上のように、本実施形態によれば、M×N画素のブロックがBNマスク間を跨いだとしても、異なるSRAMから複数個の閾値を読み出されることになり、1クロックサイクルでM×N個の閾値を取得することができる。 As described above, according to the present embodiment, even if a block of M × N pixels straddles between BN masks, a plurality of threshold values are read from different SRAMs, and M × N pieces are read in one clock cycle. Threshold can be obtained.

(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
(Other Examples)
The present invention supplies a program that realizes one or more functions of the above-described embodiment to a system or device via a network or storage medium, and one or more processors in the computer of the system or device reads and executes the program. It can also be realized by the processing to be performed. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.

100 複合機: 112 CPU: 113 RAM: 116 ROM: 201 制御部 100 Multifunction device: 112 CPU: 113 RAM: 116 ROM: 201 Control unit

Claims (10)

画像データに対してハーフトーン処理を実行する画像形成装置であって、
前記ハーフトーン処理に用いるマトリクスに設定された閾値を記憶部に格納する格納手段と、
前記画像データから、前記マトリクスのサイズより小さいM×N画素のブロック単位で画素値を取得し、前記画像データにマッピングされた前記マトリクスから前記M×N画素のブロックに対応する閾値を前記記憶部から取得する取得手段と、
前記取得手段により取得された前記画素値と前記閾値とに基づいて、前記ハーフトーン処理を実行する実行手段と、を備え、
前記格納手段は、前記マトリクスに設定された複数の閾値を、前記記憶部を構成する複数の記憶素子に分散して格納し、
前記M×N画素のブロックに対応するM×N個の閾値が前記取得手段によりM×N個の記憶素子から取得されるように、前記複数の閾値は、前記複数の記憶素子に分散して格納され、
前記格納手段は、前記マトリクスに設定された前記複数の閾値のうち、前記M×N画素のブロックの各位置について、前記取得手段により取得されるべき複数の閾値を1つの記憶素子に格納する、
ことを特徴とする画像形成装置。
An image forming apparatus that executes halftone processing on image data.
A storage means for storing the threshold value set in the matrix used for the halftone processing in the storage unit, and
Pixel values are acquired from the image data in block units of M × N pixels smaller than the size of the matrix, and a threshold value corresponding to the block of M × N pixels is set from the matrix mapped to the image data in the storage unit. And the acquisition method to obtain from
An execution means for executing the halftone process based on the pixel value and the threshold value acquired by the acquisition means is provided.
The storage means distributes and stores a plurality of threshold values set in the matrix in a plurality of storage elements constituting the storage unit.
The plurality of threshold values are dispersed in the plurality of storage elements so that the M × N threshold values corresponding to the block of the M × N pixels are acquired from the M × N storage elements by the acquisition means. Stored,
The storage means stores, among the plurality of threshold values set in the matrix, a plurality of threshold values to be acquired by the acquisition means in one storage element for each position of the M × N pixel block.
An image forming apparatus characterized in that.
前記複数の記憶素子の数は、M,Nのうちの最大値を二乗した値であることを特徴とする請求項1に記載の画像形成装置。 The image forming apparatus according to claim 1, wherein the number of the plurality of storage elements is a squared value of the maximum value of M and N. 前記マトリクスを前記画像データにマッピングするマッピング手段、をさらに備え、
前記取得手段は、前記マッピング手段により前記画像データにマッピングされた前記マトリクスから前記M×N画素のブロックに対応する閾値を前記記憶部から取得する、
ことを特徴とする請求項1又は2に記載の画像形成装置。
A mapping means for mapping the matrix to the image data is further provided.
The acquisition means acquires a threshold value corresponding to the block of M × N pixels from the storage unit from the matrix mapped to the image data by the mapping means.
The image forming apparatus according to claim 1 or 2 .
前記マッピング手段は、前記マトリクスと、前記マトリクスを回転させたマトリクスとを、前記画像データにマッピングすることを特徴とする請求項に記載の画像形成装置。 The image forming apparatus according to claim 3 , wherein the mapping means maps the matrix and a matrix obtained by rotating the matrix to the image data. 前記マッピング手段は、前記マトリクスがマッピングされる位置を所定の画素分シフトさせながら、前記マトリクスを前記画像データにマッピングすることを特徴とする請求項に記載の画像形成装置。 The image forming apparatus according to claim 3 , wherein the mapping means maps the matrix to the image data while shifting the position where the matrix is mapped by a predetermined pixel. 前記複数の記憶素子それぞれは、SRAMであることを特徴とする請求項1乃至のいずれか1項に記載の画像形成装置。 The image forming apparatus according to any one of claims 1 to 5 , wherein each of the plurality of storage elements is an SRAM. 前記マトリクスは、ディザ法で用いられるマトリクスであることを特徴とする請求項1乃至のいずれか1項に記載の画像形成装置。 The image forming apparatus according to any one of claims 1 to 6 , wherein the matrix is a matrix used in the dither method. 前記マトリクスは、ブルーノイズマスクであることを特徴とする請求項1乃至のいずれか1項に記載の画像形成装置。 The image forming apparatus according to any one of claims 1 to 7 , wherein the matrix is a blue noise mask. 画像データに対してハーフトーン処理を実行する画像形成装置において実行される方法であって、
前記ハーフトーン処理に用いるマトリクスに設定された閾値を記憶部に格納する格納工程と、
前記画像データから、前記マトリクスのサイズより小さいM×N画素のブロック単位で画素値を取得し、前記画像データにマッピングされた前記マトリクスから前記M×N画素のブロックに対応する閾値を前記記憶部から取得する取得工程と、
前記取得工程において取得された前記画素値と前記閾値とに基づいて、前記ハーフトーン処理を実行する実行工程と、を有し、
前記格納工程は、前記マトリクスに設定された複数の閾値を、前記記憶部を構成する複数の記憶素子に分散して格納し、
前記M×N画素のブロックに対応するM×N個の閾値が前記取得工程においてM×N個の記憶素子から取得されるように、前記複数の閾値は、前記複数の記憶素子に分散して格納され、
前記格納工程は、前記マトリクスに設定された前記複数の閾値のうち、前記M×N画素のブロックの各位置について、前記取得工程において取得されるべき複数の閾値を1つの記憶素子に格納する、
ことを特徴とする方法。
A method executed in an image forming apparatus that performs halftone processing on image data.
A storage step of storing the threshold value set in the matrix used for the halftone processing in the storage unit, and
Pixel values are acquired from the image data in block units of M × N pixels smaller than the size of the matrix, and a threshold value corresponding to the block of M × N pixels is set from the matrix mapped to the image data in the storage unit. The acquisition process to be acquired from
It has an execution step of executing the halftone process based on the pixel value acquired in the acquisition step and the threshold value.
In the storage step, a plurality of threshold values set in the matrix are distributed and stored in a plurality of storage elements constituting the storage unit.
The plurality of threshold values are dispersed in the plurality of storage elements so that M × N threshold values corresponding to the block of M × N pixels are acquired from the M × N storage elements in the acquisition step. Stored,
In the storage step, among the plurality of threshold values set in the matrix, a plurality of threshold values to be acquired in the acquisition step are stored in one storage element for each position of the block of M × N pixels.
A method characterized by that.
請求項1乃至のいずれか1項に記載の画像形成装置に記載の各手段としてコンピュータを機能させるためのプログラム。 A program for operating a computer as each means according to the image forming apparatus according to any one of claims 1 to 8 .
JP2016238778A 2016-12-08 2016-12-08 Image forming equipment, methods and programs Active JP6800726B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016238778A JP6800726B2 (en) 2016-12-08 2016-12-08 Image forming equipment, methods and programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016238778A JP6800726B2 (en) 2016-12-08 2016-12-08 Image forming equipment, methods and programs

Publications (2)

Publication Number Publication Date
JP2018098543A JP2018098543A (en) 2018-06-21
JP6800726B2 true JP6800726B2 (en) 2020-12-16

Family

ID=62633187

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016238778A Active JP6800726B2 (en) 2016-12-08 2016-12-08 Image forming equipment, methods and programs

Country Status (1)

Country Link
JP (1) JP6800726B2 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08163361A (en) * 1994-12-02 1996-06-21 Dainippon Screen Mfg Co Ltd Image binarization method and apparatus
JP3861483B2 (en) * 1998-11-27 2006-12-20 富士ゼロックス株式会社 Halftone generation apparatus and halftone generation method
JP2006050415A (en) * 2004-08-06 2006-02-16 Fuji Xerox Co Ltd Image processing apparatus and threshold data storage method
JP6355321B2 (en) * 2013-11-28 2018-07-11 キヤノン株式会社 Image processing apparatus, image processing method, and program
JP6472336B2 (en) * 2014-06-18 2019-02-20 キヤノン株式会社 Image processing apparatus, image processing method, and program

Also Published As

Publication number Publication date
JP2018098543A (en) 2018-06-21

Similar Documents

Publication Publication Date Title
CN106303150A (en) Image processing apparatus and the control method of image processing apparatus
US20140362395A1 (en) Image processing apparatus and method
JP6447564B2 (en) Image forming apparatus, program, and information processing system
US10674037B2 (en) Image processing apparatus, image processing method, and storage medium with halftone processing using dither matrix of dot concentration type or dither matrix of dot distribution type
US9280727B2 (en) Information processing unit, printing control method for printer driver, and computer program product
JP4868026B2 (en) Image processing apparatus, image forming apparatus, and program
JP6800726B2 (en) Image forming equipment, methods and programs
JPH04252562A (en) Picture processing unit
JP6525526B2 (en) IMAGE PROCESSING APPARATUS, IMAGE PROCESSING METHOD, AND PROGRAM
US8970911B2 (en) Image processing apparatus
JP5531578B2 (en) Program, image processing apparatus, image processing method, and image processing system
US10560603B2 (en) Image processing apparatus and image processing method
JP6427960B2 (en) Image processing device
JP2011053263A (en) Image processing device, image processing method, image output system, program and recording medium
JP6794834B2 (en) Image processing equipment and programs
JP2013218539A (en) Histogram creation device
CN104935767A (en) Electronic device and data management method
JP6205893B2 (en) Image processing apparatus, image processing method, and program
US9064204B1 (en) Flexible image processing apparatus and method
JP7591183B2 (en) Image forming device
JP4490327B2 (en) Output device, color conversion method, and program
JP4285513B2 (en) Image processing circuit and printing apparatus
EP2816795B1 (en) Image forming apparatus having function of combining stamp image with original image
US10057458B2 (en) Method and apparatus for printing in grayscale
JP6455675B2 (en) Electronic device and font image output program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191008

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200731

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200818

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200911

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201009

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201125

R151 Written notification of patent or utility model registration

Ref document number: 6800726

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151