JP2010045488A - Image forming apparatus and data compression method - Google Patents
Image forming apparatus and data compression method Download PDFInfo
- Publication number
- JP2010045488A JP2010045488A JP2008206766A JP2008206766A JP2010045488A JP 2010045488 A JP2010045488 A JP 2010045488A JP 2008206766 A JP2008206766 A JP 2008206766A JP 2008206766 A JP2008206766 A JP 2008206766A JP 2010045488 A JP2010045488 A JP 2010045488A
- Authority
- JP
- Japan
- Prior art keywords
- drawing data
- value
- target set
- set pixel
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Record Information Processing For Printing (AREA)
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
Abstract
Description
本発明は、用紙上に画像を形成する画像形成装置、及び、第1描画データを第2描画データに圧縮するデータ圧縮方法に関する。 The present invention relates to an image forming apparatus that forms an image on a sheet, and a data compression method that compresses first drawing data into second drawing data.
従来、画像データに基づいて、用紙上に画像を形成する複写機やプリンタ等の画像形成装置が知られている。画像形成装置が複写機である場合には、画像形成装置は、原稿から画像を読み取ることによって描画データとしての画像データを取得する。一方で、画像形成装置がプリンタである場合には、画像形成装置は、パーソナルコンピュータなどの外部装置から描画データとしての、或いは、描画データを生成する元データとしての画像データを取得する。 2. Description of the Related Art Conventionally, an image forming apparatus such as a copying machine or a printer that forms an image on a sheet based on image data is known. When the image forming apparatus is a copying machine, the image forming apparatus acquires image data as drawing data by reading an image from a document. On the other hand, when the image forming apparatus is a printer, the image forming apparatus acquires image data as drawing data or original data for generating drawing data from an external device such as a personal computer.
元データをパーソナルコンピュータなどの外部装置から取得する場合には、外部装置は、ページ記述言語(PDL:Page Description Language)で記述された印刷ジョブを出力する。印刷ジョブは、ページ記述言語で記述された画像データを含む。ページ記述言語で記述された画像データは、例えば、プリンタとは別体構成とされた、或いは、プリンタに組み込まれたプリンタコントローラによって、ビットマップデータなどの中間言語で記述された第1描画データに変換される。第1描画データでは、第1ビット数、例えば、8ビットで1画素が表される。すなわち、第1描画データでは、1画素は、256階調を有する。 When acquiring original data from an external device such as a personal computer, the external device outputs a print job described in a page description language (PDL). The print job includes image data described in a page description language. The image data described in the page description language is, for example, the first drawing data described in an intermediate language such as bitmap data by a printer controller that is configured separately from the printer or incorporated in the printer. Converted. In the first drawing data, one pixel is represented by the first number of bits, for example, 8 bits. That is, in the first drawing data, one pixel has 256 gradations.
一方で、画像形成装置は、メモリ領域のサイズやレーザの駆動制御能力の制約から、第1描画データを低階調化して、第2描画データを取得する。第2描画データでは、第1ビット数よりも少ない第2ビット数、例えば、1ビットで1画素が表現される。すなわち、第2描画データでは、典型的には、1画素は、2階調を有する。 On the other hand, the image forming apparatus obtains second drawing data by reducing the gradation of the first drawing data due to restrictions on the size of the memory area and the drive control capability of the laser. In the second drawing data, one pixel is represented by a second bit number smaller than the first bit number, for example, one bit. That is, in the second drawing data, typically, one pixel has two gradations.
なお、第2描画データにおいて、第2ビット数は、1ビットに限定されるものではなく、メモリ領域のサイズやレーザの駆動制御能力が許容するのであれば、2ビットであってもよい。このようなケースでは、2ビットで1画素が表現され、1画素は、4階調を有する。 In the second drawing data, the second bit number is not limited to 1 bit, and may be 2 bits if the size of the memory area and the laser drive control capability allow. In such a case, one pixel is expressed by two bits, and one pixel has four gradations.
このように、第1描画データの低階調化に伴って、階調の再現性が劣化する。これに対して、階調の再現性の劣化を抑制するために、出力画像を構成する複数の画素によって、入力画像を構成する1画素を表現する技術が提案されている(例えば、特許文献1)。但し、この技術は、入力画像の画素数が出力画像の画素数よりも少ないケース、即ち、入力画像に比べて出力画像が低解像度とされるケースにのみ適用可能である。
上述したように、特許文献1の技術では、入力画像の画素数が出力画像の画素数よりも少ないことを前提としている。詳細には、出力画像の画素数は、入力画像の画素数の整数倍でなければならない。 As described above, the technique of Patent Document 1 is based on the premise that the number of pixels of the input image is smaller than the number of pixels of the output image. Specifically, the number of pixels in the output image must be an integer multiple of the number of pixels in the input image.
また、上述の特許文献1とは異なる背景技術として、誤差拡散法を採用して低解像度化することが知られている。誤差拡散法では、規則的パターンの重畳によって生じる縞干渉、いわゆる「モワレ」の発生を低減することが可能である。しかしながら、濃度の変化が小さい領域では、誤差拡散法を用いても目障りな縞模様が生じる可能性がある。 Further, as a background technique different from the above-described Patent Document 1, it is known to reduce the resolution by using an error diffusion method. In the error diffusion method, it is possible to reduce the occurrence of fringe interference caused by superposition of regular patterns, so-called “moire”. However, in an area where the change in density is small, an unsightly striped pattern may occur even if the error diffusion method is used.
そこで、本発明は、上述した課題を解決するためになされたものであり、低解像度化を伴うことなく、用紙上に形成する画像の品質劣化を抑制することを可能とする画像形成装置及びデータ圧縮方法を提供することを目的とする。 Therefore, the present invention has been made to solve the above-described problems, and an image forming apparatus and data that can suppress deterioration in the quality of an image formed on a sheet without reducing the resolution. An object is to provide a compression method.
第1の特徴に係る画像形成装置は、用紙上に画像を形成する。画像形成装置は、第1描画データを第2描画データに圧縮し、前記第2描画データを伸長後描画データに伸長する制御部(制御ユニット400)と、前記制御部の指示に応じて、前記伸長後描画データに基づいて画像を用紙上に形成する画像形成部(画像形成部50)とを備える。前記制御部は、複数の隣接画素によって1つの注目集合画素を構成して、前記第1描画データに係る前記複数の隣接画素の値に基づいて、前記第1描画データに係る前記注目集合画素の値を算出する算出部(算出部441)と、前記第1描画データに係る前記注目集合画素の値と判定閾値とを比較して、前記第1描画データに係る前記注目集合画素の値を符号化する圧縮部(圧縮部442)と、前記第1描画データに係る前記注目集合画素の値と、前記第2描画データに係る前記注目集合画素の伸長値との差分である誤差を前記注目集合画素の周囲に設けられた周辺画素に分配して、前記第1描画データに係る前記周辺画素の値を前記誤差によって修正する分配部(分配部443)と、前記第1描画データの圧縮を終了するまで、前記複数の注目すべき画素のシフトにより、前記注目集合画素のシフトを繰り返すシフト部(シフト部444)とを有する。前記算出部、前記圧縮部及び前記分配部は、前記複数の注目すべき画素のシフト毎に処理を繰り返す。 The image forming apparatus according to the first feature forms an image on a sheet. The image forming apparatus compresses the first drawing data into second drawing data, expands the second drawing data into decompressed drawing data, and controls the control unit 400 according to an instruction from the control unit. An image forming unit (image forming unit 50) that forms an image on a sheet based on the decompressed drawing data. The control unit configures one target set pixel by a plurality of adjacent pixels, and determines the target set pixel of the first drawing data based on the values of the plurality of adjacent pixels of the first drawing data. A calculation unit (calculation unit 441) that calculates a value is compared with the value of the target set pixel related to the first drawing data and a determination threshold, and the value of the target set pixel related to the first drawing data is encoded An error that is a difference between the compression unit (compression unit 442) that converts the value of the target set pixel related to the first drawing data and the expansion value of the target set pixel related to the second drawing data A distribution unit (distribution unit 443) that distributes to peripheral pixels provided around the pixel and corrects the value of the peripheral pixel related to the first drawing data by the error, and finishes the compression of the first drawing data Until the plurality By shifting the pixel to be the eye, and a shift unit (shift section 444) repeating the shift of the target set pixel. The calculation unit, the compression unit, and the distribution unit repeat processing for each shift of the plurality of pixels of interest.
かかる特徴によれば、制御部は、複数の隣接画素によって1つの注目集合画素を構成して、第1描画データに係る注目集合画素の値を符号化する。すなわち、制御部は、注目集合画素単位で、第1描画データを第2描画データに圧縮する。 According to this feature, the control unit configures one target set pixel by a plurality of adjacent pixels, and encodes the value of the target set pixel related to the first drawing data. That is, the control unit compresses the first drawing data into the second drawing data in units of attention set pixels.
これによって、注目集合画素を構成する複数の隣接画素に割り当てられるビット数によって、第2描画データに係る注目集合画素の値を表現することができる。すなわち、第2描画データに係る注目集合画素の値を表現するビット数の増大によって、伸長後描画データに係る画素の階調数を増やすことができる。 Thus, the value of the target set pixel related to the second drawing data can be expressed by the number of bits assigned to the plurality of adjacent pixels constituting the target set pixel. That is, by increasing the number of bits representing the value of the target collection pixel related to the second drawing data, it is possible to increase the number of gradations of the pixel related to the decompressed drawing data.
このように、誤差拡散法を用いるケースにおいて、圧縮率の低下を伴わずに、画素の階調数を増やすことができるため、用紙上に形成される画像の品質劣化を抑制することができる。なお、低解像度化を伴う必要がないことは勿論である。 As described above, in the case of using the error diffusion method, the number of gradations of the pixels can be increased without reducing the compression rate, so that deterioration of the quality of the image formed on the paper can be suppressed. Of course, it is not necessary to reduce the resolution.
第1の特徴において、前記算出部は、前記第1描画データに係る前記複数の隣接画素の値の平均値を、前記第1描画データに係る前記注目集合画素の値として算出する。 In the first feature, the calculation unit calculates an average value of the values of the plurality of adjacent pixels related to the first drawing data as a value of the target set pixel related to the first drawing data.
第1の特徴において、前記注目集合画素を構成する前記複数の隣接画素の数は、前記第1描画データを前記第2描画データに圧縮する圧縮率と、前記伸長後描画データに係る1画素の階調数とによって定められる。 In the first feature, the number of the plurality of adjacent pixels constituting the target set pixel includes a compression rate for compressing the first drawing data into the second drawing data, and one pixel related to the decompressed drawing data. It is determined by the number of gradations.
第2の特徴に係るデータ圧縮方法は、第1描画データを第2描画データに圧縮する。データ圧縮方法は、複数の隣接画素によって1つの注目集合画素を構成して、前記第1描画データに係る前記複数の隣接画素の値に基づいて、前記第1描画データに係る前記注目集合画素の値を算出するステップAと、前記第1描画データに係る前記注目集合画素の値と判定閾値とを比較して、前記注目集合画素の値を符号化するステップBと、前記第1描画データに係る前記注目集合画素の値と前記第2描画データに係る前記注目集合画素の伸長値との差分である誤差を前記注目集合画素の周囲に設けられた周辺画素に分配して、前記第1描画データに係る前記周辺画素の値を前記誤差によって修正するステップCと、前記第1描画データの圧縮を終了するまで、前記複数の注目すべき画素のシフトにより、前記注目集合画素のシフトを繰り返すステップDとを有する。前記ステップA、前記ステップB及び前記ステップCは、前記複数の注目すべき画素のシフト毎に繰り返される。 The data compression method according to the second feature compresses the first drawing data into the second drawing data. In the data compression method, one target set pixel is configured by a plurality of adjacent pixels, and the target set pixel of the first drawing data is determined based on the values of the plurality of adjacent pixels of the first drawing data. Step A for calculating a value, Step B for comparing the value of the target set pixel related to the first drawing data with a determination threshold, and encoding the value of the target set pixel, and the first drawing data An error, which is a difference between the value of the target set pixel and the expanded value of the target set pixel related to the second drawing data, is distributed to peripheral pixels provided around the target set pixel, and the first drawing The shift of the target set pixel is repeated by correcting the value of the surrounding pixels related to the data by the error and shifting the plurality of target pixels until the compression of the first drawing data is completed. And a step D to return. Step A, Step B and Step C are repeated for each shift of the plurality of pixels of interest.
本発明によれば、低解像度化を伴うことなく、用紙上に形成する画像の品質劣化を抑制することを可能とする画像形成装置及びデータ圧縮方法を提供することができる。 According to the present invention, it is possible to provide an image forming apparatus and a data compression method that can suppress deterioration in quality of an image formed on a sheet without reducing the resolution.
以下において、本発明の実施形態に係る画像形成装置について、図面を参照しながら説明する。なお、以下の図面の記載において、同一又は類似の部分には、同一又は類似の符号を付している。 Hereinafter, an image forming apparatus according to an embodiment of the present invention will be described with reference to the drawings. In the following description of the drawings, the same or similar parts are denoted by the same or similar reference numerals.
ただし、図面は模式的なものであり、各寸法の比率などは現実のものとは異なることに留意すべきである。従って、具体的な寸法などは以下の説明を参酌して判断すべきである。また、図面相互間においても互いの寸法の関係や比率が異なる部分が含まれていることは勿論である。 However, it should be noted that the drawings are schematic and ratios of dimensions and the like are different from actual ones. Therefore, specific dimensions and the like should be determined in consideration of the following description. Moreover, it is a matter of course that portions having different dimensional relationships and ratios are included between the drawings.
[第1実施形態]
(画像形成装置の概略)
以下において、第1実施形態に係る画像形成装置の概略について、図面を参照しながら説明する。図1は、第1実施形態に係る画像形成装置100の概略を示す図である。なお、図1では、画像形成装置100の詳細な構成については省略されていることに留意すべきである。
[First Embodiment]
(Outline of image forming apparatus)
The outline of the image forming apparatus according to the first embodiment will be described below with reference to the drawings. FIG. 1 is a diagram schematically illustrating an image forming apparatus 100 according to the first embodiment. In FIG. 1, it should be noted that the detailed configuration of the image forming apparatus 100 is omitted.
図1に示すように、画像形成装置100は、自動原稿送りユニット10と、画像読取ユニット20と、用紙トレイユニット30と、給紙ユニット40と、画像形成部50と、定着ユニット60と、排紙ユニット70と、反転ユニット80と、操作ユニット90とを有する。画像形成装置100は、給紙装置200及び後処理装置300をさらに有する。 As shown in FIG. 1, the image forming apparatus 100 includes an automatic document feeding unit 10, an image reading unit 20, a paper tray unit 30, a paper feeding unit 40, an image forming unit 50, a fixing unit 60, a discharge unit. A paper unit 70, a reversing unit 80, and an operation unit 90 are provided. The image forming apparatus 100 further includes a paper feeding device 200 and a post-processing device 300.
画像形成装置100は、プリンタコントローラ500を介してユーザ端末600に接続されている。画像形成装置100は、例えば、プリンタコントローラ500とビデオバス501によって接続される。プリンタコントローラ500は、例えば、ユーザ端末600とLAN(Local Area Network)601によって接続される。 The image forming apparatus 100 is connected to a user terminal 600 via a printer controller 500. For example, the image forming apparatus 100 is connected to the printer controller 500 by a video bus 501. For example, the printer controller 500 is connected to the user terminal 600 via a LAN (Local Area Network) 601.
第1実施形態では、画像形成装置100として、電子写真方式によって用紙上に画像を形成するMFP(Multiple Function Peripheral)を例示する。但し、画像形成方法は、電子写真方式に限定されるものではなく、インクジェット方式、熱転写方式、ドットインパクト方式などであってもよい。 In the first embodiment, as the image forming apparatus 100, an MFP (Multiple Function Peripheral) that forms an image on a sheet by an electrophotographic method is exemplified. However, the image forming method is not limited to the electrophotographic method, and may be an ink jet method, a thermal transfer method, a dot impact method, or the like.
自動原稿送りユニット10は、複写すべき原稿を搬送するユニットである。画像読取ユニット20は、原稿の画像を読み取って、画像データを生成するユニットである。 The automatic document feeder unit 10 is a unit that conveys a document to be copied. The image reading unit 20 is a unit that reads an image of a document and generates image data.
用紙トレイユニット30は、用紙を収容するユニットである。給紙ユニット40は、画像形成部50に用紙を給紙するユニットである。 The paper tray unit 30 is a unit that stores paper. The paper feed unit 40 is a unit that feeds paper to the image forming unit 50.
画像形成部50は、画像読取ユニット20によって生成された画像データに応じて、給紙ユニット40によって給紙された用紙上にトナー像を形成する。具体的には、画像形成部50は、イエローに対応するトナー像を形成するイエロー用ユニット50Yと、マゼンタに対応するトナー像を形成するマゼンタ用ユニット50Mと、シアンに対応するトナー像を形成するシアン用ユニット50Cと、ブラックに対応するトナー像を形成するブラック用ユニット50Kと、中間転写ベルト51と、転写ローラ52とを有する。イエロー用ユニット50Y、マゼンタ用ユニット50M、シアン用ユニット50C及びブラック用ユニット50Kは、それぞれ、感光体ドラムや書込み処理部などを有する。 The image forming unit 50 forms a toner image on a sheet fed by the sheet feeding unit 40 in accordance with the image data generated by the image reading unit 20. Specifically, the image forming unit 50 forms a yellow unit 50Y for forming a toner image corresponding to yellow, a magenta unit 50M for forming a toner image corresponding to magenta, and a toner image corresponding to cyan. It includes a cyan unit 50C, a black unit 50K that forms a toner image corresponding to black, an intermediate transfer belt 51, and a transfer roller 52. Each of the yellow unit 50Y, the magenta unit 50M, the cyan unit 50C, and the black unit 50K includes a photosensitive drum and a writing processing unit.
各感光体ドラムは、光導電性感光層が表面に形成されたドラムであり、回転可能に設けられている。各感光体ドラムの表面には、各色に対応する静電荷潜像が形成される。 Each photosensitive drum is a drum having a photoconductive photosensitive layer formed on the surface thereof, and is rotatably provided. An electrostatic charge latent image corresponding to each color is formed on the surface of each photosensitive drum.
各書込み処理部は、後述する制御ユニット400から取得する画像データ、すなわち、後述する第2描画データに応じて、各色に対応する静電荷潜像を感光体ドラムの表面に形成する。具体的には、書込み処理部は、画像データに基づいてレーザ光を出射するレーザダイオードと、レーザ光を偏向走査する走査光学ユニットを有している。 Each writing processing unit forms an electrostatic latent image corresponding to each color on the surface of the photosensitive drum in accordance with image data acquired from a control unit 400 described later, that is, second drawing data described later. Specifically, the writing processing unit includes a laser diode that emits laser light based on image data, and a scanning optical unit that deflects and scans the laser light.
中間転写ベルト51は、イエロー用ユニット50Y、マゼンタ用ユニット50M、シアン用ユニット50C、ブラック用ユニット50K、転写ローラ52を通るように、複数のローラに巻き回されている。中間転写ベルト51上には、各色のトナー像が重ね合わされる。 The intermediate transfer belt 51 is wound around a plurality of rollers so as to pass through the yellow unit 50Y, the magenta unit 50M, the cyan unit 50C, the black unit 50K, and the transfer roller 52. On the intermediate transfer belt 51, toner images of respective colors are superimposed.
転写ローラ52は、中間転写ベルト51上に形成されたトナー像を用紙上に転写する具体的には、転写ローラ52は、トナーと反対の極性を有するように帯電している。 Specifically, the transfer roller 52 transfers the toner image formed on the intermediate transfer belt 51 onto a sheet, and the transfer roller 52 is charged so as to have a polarity opposite to that of the toner.
定着ユニット60は、用紙上に形成されたトナー像を熱圧着によって用紙に定着するユニットである。排紙ユニット70は、トナー像が定着された用紙を排紙するユニットである。反転ユニット80は、片面についてトナー像の形成が終了してない用紙の表裏を反転させるユニットである。 The fixing unit 60 is a unit that fixes a toner image formed on a sheet to the sheet by thermocompression bonding. The paper discharge unit 70 is a unit for discharging the paper on which the toner image is fixed. The reversing unit 80 is a unit that reverses the front and back of a sheet on which toner image formation is not completed on one side.
操作ユニット90は、画像形成装置100の操作を行うためのユーザインタフェースである。操作ユニット90は、液晶パネル上にタッチパネルが重畳されたタッチスクリーン、ボタン及びスイッチによって構成される。 The operation unit 90 is a user interface for operating the image forming apparatus 100. The operation unit 90 is configured by a touch screen, buttons, and switches in which a touch panel is superimposed on a liquid crystal panel.
給紙装置200は、用紙トレイユニット30よりも多量の用紙を収容する装置である。多量の用紙を出力するケースにおいて、給紙装置200は、用紙トレイユニット30の代わりに用いられる。 The paper feeding device 200 is a device that accommodates a larger amount of paper than the paper tray unit 30. In the case of outputting a large amount of sheets, the sheet feeder 200 is used instead of the sheet tray unit 30.
後処理装置300は、画像が形成された用紙の後処理を行う。具体的には、後処理装置300は、ソート処理、パンチ(穴空け)処理、ステープル処理、中折り処理、裁断処理などを行う。 The post-processing device 300 performs post-processing of the paper on which the image is formed. Specifically, the post-processing device 300 performs sort processing, punching (punching) processing, stapling processing, center folding processing, cutting processing, and the like.
プリンタコントローラ500は、LAN(Local Area Network)601を介してユーザ端末600から印刷ジョブを受信する。プリンタコントローラ500は、印刷ジョブを解析して画像データを生成し、この画像データをビデオバス501を介して画像形成装置100に送信する。 The printer controller 500 receives a print job from the user terminal 600 via a LAN (Local Area Network) 601. The printer controller 500 analyzes the print job, generates image data, and transmits the image data to the image forming apparatus 100 via the video bus 501.
ここで、印刷ジョブは、ユーザ端末600によって指定された画像の印刷を指示するデータであり、例えば、PostScript(アドビ社の登録商標)やPCLなどのページ記述言語(PDL:Page Description Language)で記述されている。 Here, the print job is data instructing printing of an image designated by the user terminal 600, and is described in, for example, a page description language (PDL) such as PostScript (registered trademark of Adobe) or PCL. Has been.
具体的には、プリンタコントローラ500は、ページ記述言語で記述された画像データを中間言語で記述されるデータに変換し、この中間言語のデータから1画素当り所定の第1ビット数を有する第1描画データに変換する。プリンタコントローラ500は、ビデオバス501を介して第1描画データを画像データとして画像形成装置100に送信する。第1描画データにおける所定の第1ビット数は、本例では、8ビットである。 Specifically, the printer controller 500 converts image data described in a page description language into data described in an intermediate language, and the first data having a predetermined first number of bits per pixel from the intermediate language data. Convert to drawing data. The printer controller 500 transmits the first drawing data as image data to the image forming apparatus 100 via the video bus 501. The predetermined first number of bits in the first drawing data is 8 bits in this example.
ユーザ端末600は、パーソナルコンピュータなどの端末である。ユーザ端末600は、LAN(Local Area Network)601を介して印刷ジョブをプリンタコントローラ500に送信する。 The user terminal 600 is a terminal such as a personal computer. The user terminal 600 transmits a print job to the printer controller 500 via a LAN (Local Area Network) 601.
(画像形成装置の機能)
以下において、第1実施形態に係る画像形成装置の機能について、図面を参照しながら説明する。図2は、第1実施形態に係る画像形成装置100を示すブロック図である。
(Function of image forming apparatus)
Hereinafter, functions of the image forming apparatus according to the first embodiment will be described with reference to the drawings. FIG. 2 is a block diagram illustrating the image forming apparatus 100 according to the first embodiment.
図2に示すように、画像形成装置100は、画像形成装置100を統括的に制御する制御ユニット400を有する。制御ユニット400は、通信I/F410と、HDD420と、メモリ430と、CPU440とを有する。 As shown in FIG. 2, the image forming apparatus 100 includes a control unit 400 that comprehensively controls the image forming apparatus 100. The control unit 400 includes a communication I / F 410, an HDD 420, a memory 430, and a CPU 440.
通信I/F410は、ビデオバス501に接続されており、前述の第1描画データを画像データとしてプリンタコントローラ500から取得する。 The communication I / F 410 is connected to the video bus 501 and acquires the above-described first drawing data from the printer controller 500 as image data.
HDD420は、制御プログラムや画像形成装置100の機能に関する情報などを記憶する。 The HDD 420 stores a control program, information regarding functions of the image forming apparatus 100, and the like.
メモリ430は、DRAMなどの半導体メモリによって構成される。メモリ430上には、HDD420に記憶された制御プログラムが展開される。また、メモリ430は、画像読取ユニット20によって取得された画像データや通信I/F410によって取得された画像データを一時的に記憶する。ここで、メモリ430は、画像データとして後述の第2描画データを記憶する。 The memory 430 is configured by a semiconductor memory such as a DRAM. A control program stored in the HDD 420 is expanded on the memory 430. The memory 430 temporarily stores image data acquired by the image reading unit 20 and image data acquired by the communication I / F 410. Here, the memory 430 stores second drawing data described later as image data.
CPU440は、メモリ430上に展開された制御プログラムに従って、画像形成装置100の各構成を制御する。以下においては、第1実施形態に関連するCPU440の動作について主として説明する。従って、CPU440の動作の一部は省略されていることに留意すべきである。 The CPU 440 controls each component of the image forming apparatus 100 according to the control program developed on the memory 430. In the following, the operation of the CPU 440 related to the first embodiment will be mainly described. Therefore, it should be noted that a part of the operation of the CPU 440 is omitted.
具体的には、CPU440は、第1描画データを第2描画データに圧縮する。また、CPU440は、第2描画データを伸長して伸長後描画データを生成する。CPU440は、図3に示すように、算出部441と、圧縮部442と、分配部443と、シフト部444と、伸長部445と、ラスタライズ部446と、指示部447とを有する。 Specifically, CPU 440 compresses the first drawing data into second drawing data. The CPU 440 decompresses the second drawing data and generates decompressed drawing data. As illustrated in FIG. 3, the CPU 440 includes a calculation unit 441, a compression unit 442, a distribution unit 443, a shift unit 444, an expansion unit 445, a rasterization unit 446, and an instruction unit 447.
第1実施形態では、第1描画データを第2描画データに圧縮する際に、複数の注目すべき隣接画素によって1つの集合画素(注目集合画素)が構成される。第2描画データでは、注目集合画素を構成する複数の隣接画素の値が1つの注目集合画素の値を構成する。伸長後描画データでは、注目集合画素を構成する複数の隣接画素が同じ値を有する。 In the first embodiment, when the first drawing data is compressed into the second drawing data, one set pixel (target set pixel) is configured by a plurality of adjacent pixels to be noted. In the second drawing data, the values of a plurality of adjacent pixels constituting the target set pixel constitute the value of one target set pixel. In the post-expansion drawing data, a plurality of adjacent pixels constituting the target set pixel have the same value.
第1実施形態では、以下に示す内容を前提として説明することに留意すべきである。但し、実施形態は、このような前提に限定されないことは勿論である。 It should be noted that the first embodiment will be described on the assumption of the following contents. However, it is needless to say that the embodiment is not limited to such a premise.
(1) 画素の座標表現
第1描画データに係る画素の座標をf(x,y)で表し、第2描画データに係る画素の座標をg(x,y)で表し、伸長後描画データに係る画素の座標をh(x,y)で表す。f(x,y)及びf(x+1,y)によって構成される注目集合画素をF(X,Y)で表す。g(x,y)及びg(x+1,y)によって構成される注目集合画素をG(X,Y)で表す。h(x,y)及びh(x+1,y)によって構成される注目集合画素をH(X,Y)で表す。このように、第1実施形態では、注目集合画素は、水平方向に隣接する2つの画素によって構成される。
(1) Pixel coordinate representation The coordinates of the pixel relating to the first drawing data are represented by f (x, y), the coordinates of the pixel relating to the second drawing data are represented by g (x, y), The coordinates of such a pixel are represented by h (x, y). An attention set pixel constituted by f (x, y) and f (x + 1, y) is represented by F (X, Y). An attention set pixel constituted by g (x, y) and g (x + 1, y) is represented by G (X, Y). An attention set pixel constituted by h (x, y) and h (x + 1, y) is represented by H (X, Y). Thus, in the first embodiment, the attention set pixel is configured by two pixels adjacent in the horizontal direction.
なお、“x”,“X”は、水平方向の座標を表しており、“y”,“Y”は、垂直方向の座標を表している。また、f(x,y)、g(x,y)及びh(x,y)は、1対1の関係を有する。また、X−Y座標におけるX座標において、1注目集合画素は、x−y座標におけるx座標の2画素に相当する。X−Y座標におけるY座標において、1注目集合画素は、x−y座標におけるy座標の1画素に相当する。 Note that “x” and “X” represent horizontal coordinates, and “y” and “Y” represent vertical coordinates. Further, f (x, y), g (x, y), and h (x, y) have a one-to-one relationship. Further, in the X coordinate in the XY coordinate, one target set pixel corresponds to two pixels in the x coordinate in the xy coordinate. In the Y coordinate in the XY coordinate, one target set pixel corresponds to one pixel in the y coordinate in the xy coordinate.
(2) 画素を表現するビット
第1描画データでは、1画素が8ビットで表現される。すなわち、第1描画データでは、1画素は256階調を有する。第2描画データでは、1注目集合画素が2ビットで表現される。伸長後描画データでは、注目集合画素を構成する複数の隣接画素が同じ値を有するため、1画素は4階調を有する。
(2) Bits Representing Pixels In the first drawing data, one pixel is represented by 8 bits. That is, in the first drawing data, one pixel has 256 gradations. In the second drawing data, one target pixel is represented by 2 bits. In the post-decompression drawing data, since a plurality of adjacent pixels constituting the target set pixel have the same value, one pixel has four gradations.
(3) 圧縮率
注目集合画素が2つの隣接画素によって構成されるため、第1描画データでは、注目集合画素は、8ビット×2画素=16ビットで表現される。第2描画データでは、注目集合画素は、2ビットで表現される。従って、第1描画データを第2描画データに圧縮する圧縮率は、2/16=1/8である。
(3) Compression rate Since the target set pixel is composed of two adjacent pixels, the target set pixel is represented by 8 bits × 2 pixels = 16 bits in the first drawing data. In the second drawing data, the target set pixel is expressed by 2 bits. Therefore, the compression ratio for compressing the first drawing data into the second drawing data is 2/16 = 1/8.
図3に戻って、算出部441は、複数の注目すべき隣接画素(注目隣接画素)によって1つの注目集合画素を構成する。続いて、算出部441は、第1描画データに係る注目隣接画素の値に基づいて、注目集合画素の値を算出する。第1実施形態では、注目集合画素の値は、第1描画データに係る注目隣接画素の値の平均値である。 Returning to FIG. 3, the calculation unit 441 configures one target set pixel by a plurality of adjacent pixels to be noted (target adjacent pixels). Subsequently, the calculation unit 441 calculates the value of the target set pixel based on the value of the target adjacent pixel related to the first drawing data. In the first embodiment, the value of the target set pixel is an average value of the values of the target adjacent pixels related to the first drawing data.
圧縮部442は、第1描画データに係る注目集合画素の値と判定閾値とを比較して、第1描画データに係る注目集合画素の値を符号化する。第1実施形態に係る伸長後描画データでは、1画素が4階調を有するため、判定閾値は、第1判定閾値、第2判定閾値及び第3判定閾値の3種類である。例えば、第1判定閾値は“64”であり、第2判定閾値は“128”であり、第3判定閾値は“196”である。 The compression unit 442 compares the value of the target set pixel related to the first drawing data with the determination threshold value, and encodes the value of the target set pixel related to the first draw data. In the post-decompression drawing data according to the first embodiment, since one pixel has four gradations, there are three types of determination threshold values: a first determination threshold value, a second determination threshold value, and a third determination threshold value. For example, the first determination threshold is “64”, the second determination threshold is “128”, and the third determination threshold is “196”.
圧縮部442は、第1描画データに係る注目集合画素の値が第1判定閾値未満である場合には、第2描画データに係る注目集合画素の値をビット列“00”で表現する。圧縮部442は、第1描画データに係る注目集合画素の値が第1判定閾値以上、第2判定閾値未満である場合には、第2描画データに係る注目集合画素の値をビット列“10”で表現する。圧縮部442は、第1描画データに係る注目集合画素の値が第2判定閾値以上、第3判定閾値未満である場合には、第2描画データに係る注目集合画素の値をビット列“01”で表現する。圧縮部442は、第1描画データに係る注目集合画素の値が第3判定閾値以上である場合には、第2描画データに係る注目集合画素の値をビット列“11”で表現する。 When the value of the target set pixel related to the first drawing data is less than the first determination threshold value, the compression unit 442 expresses the value of the target set pixel related to the second draw data as a bit string “00”. When the value of the target set pixel related to the first drawing data is equal to or greater than the first determination threshold and less than the second determination threshold, the compression unit 442 converts the value of the target set pixel related to the second drawing data to the bit string “10”. It expresses with. When the value of the target set pixel related to the first drawing data is greater than or equal to the second determination threshold and less than the third determination threshold, the compression unit 442 converts the value of the target set pixel related to the second drawing data to the bit string “01”. It expresses with. When the value of the target set pixel related to the first drawing data is greater than or equal to the third determination threshold, the compression unit 442 expresses the value of the target set pixel related to the second draw data as a bit string “11”.
圧縮部442は、第1描画データに係る注目集合画素の値の符号化が完了した旨を分配部443に通知する。 The compression unit 442 notifies the distribution unit 443 that the encoding of the value of the target set pixel related to the first drawing data has been completed.
分配部443は、第1描画データに係る注目集合画素の値と第2描画データに係る注目集合画素の伸長値との差分である誤差を注目集合画素の周辺に設けられた周辺画素に分配して、第1描画データに係る周辺画素の値を誤差によって修正する。 The distribution unit 443 distributes an error, which is a difference between the value of the target set pixel related to the first drawing data and the extension value of the target set pixel related to the second drawing data, to peripheral pixels provided around the target set pixel. Thus, the values of the peripheral pixels related to the first drawing data are corrected by the error.
なお、伸長値は、第2描画データに係る注目集合画素の値に対応付けられた値である。具体的には、第2描画データに係る注目集合画素の値の伸長によって得られる値である。第1実施形態に係る伸長後描画データでは、1画素が4階調を有するため、伸長値は、第1伸長値、第2伸長値、第3伸長値及び第4伸長値の4種類である。例えば、ビット列“00”に対応する第1伸長値は“0”であり、ビット列“10”に対応する第2伸長値は“96”であり、ビット列“01”に対応する第3伸長値は“196”であり、ビット列“11”に対応する第4伸長値は“255”である。 The decompression value is a value associated with the value of the target set pixel related to the second drawing data. Specifically, it is a value obtained by expanding the value of the target set pixel related to the second drawing data. In the post-expansion drawing data according to the first embodiment, since one pixel has four gradations, there are four types of expansion values: a first expansion value, a second expansion value, a third expansion value, and a fourth expansion value. . For example, the first decompression value corresponding to the bit string “00” is “0”, the second decompression value corresponding to the bit string “10” is “96”, and the third decompression value corresponding to the bit string “01” is The fourth decompression value corresponding to the bit string “11” is “255”.
第1実施形態では、F(X,Y)の値とG(X,Y)の伸長値との差分である誤差をe(X,Y)で表す。ここでは、F(X+1,Y)、F(X−1,Y+1)、F(X,Y+1)、F(X+1,Y+1)にe(X,Y)を分配するケースについて説明する。なお、F(X+1,Y)は、f(x+2,y)及びf(x+3,y)によって構成される注目集合画素である。F(X−1,Y+1)は、f(x−2,y+1)及びf(x−1,y+1)によって構成される注目集合画素である。F(X,Y+1)は、f(x,y+1)及びf(x+1,y+1)によって構成される注目集合画素である。F(X+1,Y+1)は、f(x+2,y+1)及びf(x+3,y+1)によって構成される注目集合画素である。 In the first embodiment, an error that is a difference between the value of F (X, Y) and the expansion value of G (X, Y) is represented by e (X, Y). Here, a case where e (X, Y) is distributed to F (X + 1, Y), F (X-1, Y + 1), F (X, Y + 1), and F (X + 1, Y + 1) will be described. Note that F (X + 1, Y) is an attention set pixel configured by f (x + 2, y) and f (x + 3, y). F (X-1, Y + 1) is an attention set pixel configured by f (x-2, y + 1) and f (x-1, y + 1). F (X, Y + 1) is an attention set pixel configured by f (x, y + 1) and f (x + 1, y + 1). F (X + 1, Y + 1) is an attention set pixel constituted by f (x + 2, y + 1) and f (x + 3, y + 1).
(1) (X+1,Y)、すなわち、f(x+2,y)及びf(x+3,y)について
f(x+2,y)=f(x+2,y)+p1×e(X,Y)
f(x+3,y)=f(x+3,y)+p2×e(X,Y)
なお、p1及びp2は、誤差分配に係る係数である。第1実施形態では、p1=p2=7/16である。なお、p1及びp2が異なる値であってもよい。
(1) (X + 1, Y), ie, f (x + 2, y) and f (x + 3, y) f (x + 2, y) = f (x + 2, y) + p 1 × e (X, Y)
f (x + 3, y) = f (x + 3, y) + p 2 × e (X, Y)
P 1 and p 2 are coefficients related to error distribution. In the first embodiment, p 1 = p 2 = 7/16. Note that p 1 and p 2 may be different values.
(2) (X−1,Y+1)、すなわち、f(x−2,y+1)及びf(x−1,y+1)について
f(x−2,y+1)=f(x−2,y+1)+q1×e(X,Y)
f(x−1,y+1)=f(x−1,y+1)+q2×e(X,Y)
なお、q1及びq2は、誤差分配に係る係数である。第1実施形態では、q1=q2=3/16である。なお、q1及びq2が異なる値であってもよい。
(2) (X−1, Y + 1), ie, f (x−2, y + 1) and f (x−1, y + 1) f (x−2, y + 1) = f (x−2, y + 1) + q 1 × e (X, Y)
f (x-1, y + 1) = f (x-1, y + 1) + q 2 × e (X, Y)
Note that q 1 and q 2 are coefficients related to error distribution. In the first embodiment, q 1 = q 2 = 3/16. Note that q 1 and q 2 may be different values.
(3) (X,Y+1)、すなわち、f(x,y+1)及びf(x+1,y+1)について
f(x,y+1)=f(x,y+1)+r1×e(X,Y)
f(x+1,y+1)=f(x+1,y+1)+r2×e(X,Y)
なお、r1及びr2は、誤差分配に係る係数である。第1実施形態では、r1=r2=5/16である。なお、r1及びr2が異なる値であってもよい。
(3) (X, Y + 1), that is, f (x, y + 1) and f (x + 1, y + 1) f (x, y + 1) = f (x, y + 1) + r 1 × e (X, Y)
f (x + 1, y + 1) = f (x + 1, y + 1) + r 2 × e (X, Y)
R 1 and r 2 are coefficients related to error distribution. In the first embodiment, r 1 = r 2 = 5/16. Note that r 1 and r 2 may be different values.
(4) (X+1,Y+1)、すなわち、f(x+2,y+1)及びf(x+3,y+1)について
f(x+2,y+1)=f(x+2,y+1)+s1×e(X,Y)
f(x+3,y+1)=f(x+3,y+1)+s2×e(X,Y)
なお、s1及びs2は、誤差分配に係る係数である。第1実施形態では、s1=s2=1/16である。なお、s1及びs2が異なる値であってもよい。
(4) (X + 1, Y + 1), ie, f (x + 2, y + 1) and f (x + 3, y + 1) f (x + 2, y + 1) = f (x + 2, y + 1) + s 1 × e (X, Y)
f (x + 3, y + 1) = f (x + 3, y + 1) + s 2 × e (X, Y)
Note that s 1 and s 2 are coefficients related to error distribution. In the first embodiment, s 1 = s 2 = 1/16. Note that s 1 and s 2 may be different values.
分配部443は、誤差によって修正された画素の値を算出部441に通知する。また、分配部443は、誤差の分配が完了した旨をシフト部444に通知する。 The distribution unit 443 notifies the calculation unit 441 of the pixel value corrected by the error. In addition, the distribution unit 443 notifies the shift unit 444 that error distribution has been completed.
シフト部444は、第1描画データの圧縮を終了するまで、注目隣接画素をシフトすることにより、注目集合画素のシフトを繰り返す。具体的には、シフト部444は、X−Y座標においてF(X,Y)を水平方向又は垂直方向に1注目集合画素分シフトさせる。すなわち、シフト部444は、x−y座標における水平方向においてf(x,y)を2画素分シフトする。また、シフト部444は、x−y座標における垂直方向においてf(x,y)を1画素分シフトする。 The shift unit 444 repeats the shift of the target set pixel by shifting the target adjacent pixel until the compression of the first drawing data is finished. Specifically, the shift unit 444 shifts F (X, Y) by one attention set pixel in the horizontal direction or the vertical direction in the XY coordinates. That is, the shift unit 444 shifts f (x, y) by two pixels in the horizontal direction in the xy coordinates. The shift unit 444 shifts f (x, y) by one pixel in the vertical direction in the xy coordinates.
算出部441、圧縮部442及び分配部443は、注目集合画素のシフト毎に処理を繰り返す。これによって、圧縮部442は、第1描画データを第2描画データに圧縮する。 The calculation unit 441, the compression unit 442, and the distribution unit 443 repeat processing for each shift of the target set pixel. Thereby, the compression unit 442 compresses the first drawing data into the second drawing data.
第1実施形態では、圧縮部442は、4つの注目集合画素の値に対応するビット列を10進数で表現される値に変換した上で、10進数で表現される値を第2描画データとして順にメモリ430に格納する。上述したように、伸長後描画データでは、注目集合画素を構成する2つの注目隣接画素が同じ値を有するため、10進数で表現される値は、8つの画素の値に相当することに留意すべきである。 In the first embodiment, the compression unit 442 converts the bit string corresponding to the values of the four target set pixels into values expressed in decimal numbers, and then sequentially converts the values expressed in decimal numbers as second rendering data. Store in the memory 430. As described above, in the post-expansion drawing data, since the two target adjacent pixels constituting the target set pixel have the same value, it should be noted that the value expressed in decimal is equivalent to the value of eight pixels. Should.
伸長部445は、第2描画データを伸長後描画データに伸長した上で、各画素の値を取得する。具体的には、伸長部445は、メモリ430に格納された値、すなわち、10進数で表現される値をメモリ430から読み出して、10進数で表現される値を2進数で表現されるビット列に変換する。 The decompression unit 445 obtains the value of each pixel after decompressing the second rendering data into decompressed rendering data. Specifically, the decompression unit 445 reads a value stored in the memory 430, that is, a value expressed in decimal notation from the memory 430, and converts a value expressed in decimal notation into a bit string expressed in binary notation. Convert.
続いて、伸長部445は、2進数で表現されるビット列を注目集合画素毎に伸長して、第2描画データに係る注目集合画素の伸長値を取得する。伸長部445は、伸長後描画データに係る注目集合画素を構成する各注目隣接画素の値として、第2描画データに係る注目集合画素の伸長値をセットする。 Subsequently, the decompression unit 445 decompresses the bit string expressed in binary number for each target set pixel, and acquires the stretch value of the target set pixel related to the second drawing data. The decompression unit 445 sets the decompressed value of the target set pixel related to the second drawing data as the value of each target adjacent pixel constituting the target set pixel related to the post-expanded drawing data.
例えば、伸長部445は、第2描画データに係る注目集合画素に対応するビット列“00”を伸長して、第2描画データに係る注目集合画素の伸長値として第1伸長値“0”を取得する。伸長部445は、伸長後描画データに係る注目集合画素を構成する各画素の値として“0”をセットする。 For example, the decompression unit 445 decompresses the bit string “00” corresponding to the target set pixel related to the second drawing data, and acquires the first extension value “0” as the extension value of the target set pixel related to the second drawing data. To do. The decompression unit 445 sets “0” as the value of each pixel constituting the target set pixel related to the decompressed drawing data.
伸長部445は、第2描画データに係る注目集合画素に対応するビット列“10”を伸長して、第2描画データに係る注目集合画素の伸長値として第2伸長値“96”を取得する。伸長部445は、伸長後描画データに係る注目集合画素を構成する各画素の値として“96”をセットする。 The decompression unit 445 decompresses the bit string “10” corresponding to the target set pixel related to the second drawing data, and acquires the second extension value “96” as the extension value of the target set pixel related to the second drawing data. The decompression unit 445 sets “96” as the value of each pixel constituting the target set pixel related to the decompressed drawing data.
伸長部445は、第2描画データに係る注目集合画素に対応するビット列“01”を伸長して、第2描画データに係る注目集合画素の伸長値として第3伸長値“160”を取得する。伸長部445は、伸長後描画データに係る注目集合画素を構成する各画素の値として“160”をセットする。 The decompression unit 445 decompresses the bit string “01” corresponding to the target set pixel related to the second drawing data, and acquires the third extension value “160” as the extension value of the target set pixel related to the second drawing data. The decompression unit 445 sets “160” as the value of each pixel constituting the target set pixel related to the decompressed drawing data.
伸長部445は、第2描画データに係る注目集合画素に対応するビット列“11”を伸長して、第2描画データに係る注目集合画素の伸長値として第4伸長値“255”を取得する。伸長部445は、伸長後描画データに係る注目集合画素を構成する各画素の値として“255”をセットする。 The decompression unit 445 decompresses the bit string “11” corresponding to the target set pixel related to the second drawing data, and acquires the fourth extension value “255” as the extension value of the target set pixel related to the second drawing data. The decompression unit 445 sets “255” as the value of each pixel constituting the target set pixel related to the decompressed drawing data.
ラスタライズ部446は、伸長後描画データに係る各画素の値をラスタライズする。具体的には、ラスタライズ部446は、伸長後描画データに係る各画素の値をx−y座標において並べて、画素の値の配列を取得する。 The rasterizing unit 446 rasterizes the value of each pixel related to the decompressed drawing data. Specifically, the rasterizing unit 446 arranges the values of the pixels related to the decompressed drawing data in the xy coordinates, and acquires an array of pixel values.
指示部447は、画像形成部50に画像の形成を指示する。具体的には、指示部447は、ラスタライズ部446によって取得された画素の値の配列を画像形成部50に出力する。詳細には、指示部447は、画像形成部50に設けられた各書込み処理部に、各書込み処理部に対応する色の画素の値の配列を出力する。 The instruction unit 447 instructs the image forming unit 50 to form an image. Specifically, the instruction unit 447 outputs the pixel value array acquired by the rasterizing unit 446 to the image forming unit 50. Specifically, the instruction unit 447 outputs an array of pixel values of colors corresponding to each write processing unit to each write processing unit provided in the image forming unit 50.
(画像形成装置の動作)
以下において、第1実施形態に係る画像形成装置の動作について、図面を参照しながら説明する。図4は、第1実施形態に係る画像形成装置100の動作を示すフロー図である。図4に示すフローは、CPU440がHDD420に記憶されたプログラムをメモリ430に展開することによって実行される。
(Operation of image forming apparatus)
Hereinafter, the operation of the image forming apparatus according to the first embodiment will be described with reference to the drawings. FIG. 4 is a flowchart showing the operation of the image forming apparatus 100 according to the first embodiment. The flow shown in FIG. 4 is executed by the CPU 440 developing the program stored in the HDD 420 in the memory 430.
図4に示すように、ステップ100において、制御ユニット400は、ビデオバス501を介して第1描画データを受信する。 As shown in FIG. 4, in step 100, the control unit 400 receives the first drawing data via the video bus 501.
ステップ200において、制御ユニット400は、第1描画データを第2描画データに圧縮する。なお、圧縮処理の詳細については後述する(図5及び図6を参照)。 In step 200, the control unit 400 compresses the first drawing data into the second drawing data. Details of the compression process will be described later (see FIGS. 5 and 6).
ステップ300において、制御ユニット400は、第2描画データをメモリ430に格納する。 In step 300, the control unit 400 stores the second drawing data in the memory 430.
ステップ400において、制御ユニット400は、メモリ430から読み出された第2描画データを伸長する。なお、伸長処理の詳細については後述する(図7及び図8を参照)。 In step 400, the control unit 400 decompresses the second drawing data read from the memory 430. Details of the decompression process will be described later (see FIGS. 7 and 8).
ステップ500において、制御ユニット400は、ステップ400で伸長された値をラスタライズして、画像を構成する画素の配列を取得する。 In step 500, the control unit 400 rasterizes the value decompressed in step 400 to obtain an array of pixels constituting the image.
ステップ600において、制御ユニット400は、画像形成部50に画像の形成を指示する。 In step 600, the control unit 400 instructs the image forming unit 50 to form an image.
以下において、上述した圧縮処理の詳細について、図5及び図6を参照しながら説明する。 Details of the above-described compression processing will be described below with reference to FIGS.
図5に示すように、ステップ210aにおいて、制御ユニット400は、X−Y座標において、F(X,Y)やG(X,Y)のY座標をセットする。なお、制御ユニット400は、ステップ210a〜ステップ210bのループ処理が一巡すると、X−Y座標において、Y座標を1注目集合画素分シフトする。なお、ステップ210a〜ステップ210bのループ処理は、垂直方向における全画素について圧縮処理が終了するまで繰り返される。 As shown in FIG. 5, in step 210a, the control unit 400 sets the Y coordinates of F (X, Y) and G (X, Y) in the XY coordinates. Note that the control unit 400 shifts the Y coordinate by one target set pixel in the XY coordinates when the loop processing from Step 210a to Step 210b is completed. Note that the loop processing from step 210a to step 210b is repeated until the compression processing is completed for all the pixels in the vertical direction.
併せて、ステップ210aにおいて、制御ユニット400は、x−y座標において、f(x,y)やg(x,y)のy座標をセットすることに留意すべきである。なお、制御ユニット400は、ステップ210a〜ステップ210bのループ処理が一巡すると、x−y座標において、y座標を1画素分シフトする。 In addition, it should be noted that in step 210a, the control unit 400 sets the y coordinate of f (x, y) or g (x, y) in the xy coordinate. Note that the control unit 400 shifts the y coordinate by one pixel in the xy coordinates when the loop processing from step 210a to step 210b is completed.
ステップ220aにおいて、制御ユニット400は、X−Y座標において、F(X,Y)やG(X,Y)のX座標をセットする。なお、制御ユニット400は、ステップ220a〜ステップ220bのループ処理が一巡すると、X−Y座標において、F(X,Y)やG(X,Y)のX座標を1注目集合画素分シフトする。なお、ステップ220a〜ステップ220bのループ処理は、水平方向における全画素について圧縮処理が終了するまで繰り返される。 In step 220a, the control unit 400 sets the X coordinate of F (X, Y) or G (X, Y) in the XY coordinate. The control unit 400 shifts the X coordinates of F (X, Y) and G (X, Y) by one target set pixel in the XY coordinates when the loop processing from Step 220a to Step 220b is completed. Note that the loop processing from step 220a to step 220b is repeated until the compression processing is completed for all pixels in the horizontal direction.
併せて、ステップ220aにおいて、制御ユニット400は、x−y座標において、f(x,y)やg(x,y)のx座標をセットすることに留意すべきである。なお、制御ユニット400は、ステップ220a〜ステップ220bのループ処理が一巡すると、x−y座標において、x座標を2画素分シフトする。 In addition, it should be noted that in step 220a, the control unit 400 sets the x coordinate of f (x, y) or g (x, y) in the xy coordinate. Note that the control unit 400 shifts the x coordinate by two pixels in the xy coordinates when the loop processing from step 220a to step 220b is completed.
ステップ230において、制御ユニット400は、F(X,Y)を構成するf(x,y)及びf(x+1,y)の値の平均値a、すなわち、F(X,Y)の値を算出する。 In step 230, the control unit 400 calculates the average value a of the values of f (x, y) and f (x + 1, y) constituting F (X, Y), that is, the value of F (X, Y). To do.
例えば、図6に示すように、制御ユニット400は、F(0,0)を構成するf(0,0)及びf(1,0)の値の平均値a“150”を算出する。 For example, as shown in FIG. 6, the control unit 400 calculates an average value a “150” of the values of f (0, 0) and f (1, 0) constituting F (0, 0).
ステップ241において、制御ユニット400は、平均値aが“64”未満であるか否かを判定する。制御ユニット400は、平均値aが“64”未満である場合には、ステップ251の処理に移る。制御ユニット400は、平均値aが“64”以上である場合には、ステップ242の処理に移る。 In step 241, the control unit 400 determines whether or not the average value a is less than “64”. If the average value a is less than “64”, the control unit 400 proceeds to the process of step 251. If the average value “a” is equal to or greater than “64”, the control unit 400 proceeds to step 242.
ステップ242において、制御ユニット400は、平均値aが“64”以上“128”未満であるか否かを判定する。制御ユニット400は、平均値aが“64”以上“128”未満である場合には、ステップ253の処理に移る。制御ユニット400は、平均値aが“128”以上である場合には、ステップ243の処理に移る。 In step 242, the control unit 400 determines whether or not the average value a is “64” or more and less than “128”. When the average value “a” is “64” or more and less than “128”, the control unit 400 proceeds to step 253. If the average value “a” is equal to or greater than “128”, the control unit 400 proceeds to step 243.
ステップ243において、制御ユニット400は、平均値aが“128”以上“196”未満であるか否かを判定する。制御ユニット400は、平均値aが“128”以上“196”未満である場合には、ステップ255の処理に移る。制御ユニット400は、平均値aが“196”以上である場合には、ステップ257の処理に移る。 In step 243, the control unit 400 determines whether or not the average value “a” is “128” or more and less than “196”. When the average value a is “128” or more and less than “196”, the control unit 400 proceeds to the process of step 255. When the average value a is “196” or more, the control unit 400 proceeds to the process of step 257.
ステップ251において、制御ユニット400は、g(x,y)に“0”をセットし、g(x+1,y)に“0”をセットする。すなわち、制御ユニット400は、第2描画データに係るG(X,Y)の値をビット列“00”で表現する。 In step 251, the control unit 400 sets “0” to g (x, y) and sets “0” to g (x + 1, y). That is, the control unit 400 expresses the value of G (X, Y) related to the second drawing data as a bit string “00”.
ステップ252において、制御ユニット400は、平均値aと第1伸長値“0”との差分をe(X,Y)にセットする。 In step 252, the control unit 400 sets the difference between the average value “a” and the first extension value “0” to e (X, Y).
ステップ253において、制御ユニット400は、g(x,y)に“1”をセットし、g(x+1,y)に“0”をセットする。すなわち、制御ユニット400は、第2描画データに係るG(X,Y)の値をビット列“10”で表現する。 In step 253, the control unit 400 sets “1” to g (x, y) and sets “0” to g (x + 1, y). That is, the control unit 400 expresses the value of G (X, Y) related to the second drawing data by the bit string “10”.
ステップ254において、制御ユニット400は、平均値aと第2伸長値“96”との差分をe(X,Y)にセットする。 In step 254, the control unit 400 sets the difference between the average value “a” and the second extension value “96” to e (X, Y).
ステップ255において、制御ユニット400は、g(x,y)に“0”をセットし、g(x+1,y)に“1”をセットする。すなわち、制御ユニット400は、第2描画データに係るG(X,Y)の値をビット列“01”で表現する。 In step 255, the control unit 400 sets “0” to g (x, y) and “1” to g (x + 1, y). That is, the control unit 400 expresses the value of G (X, Y) related to the second drawing data by the bit string “01”.
ステップ256において、制御ユニット400は、平均値aと第3伸長値“160”との差分をe(X,Y)にセットする。 In step 256, the control unit 400 sets the difference between the average value a and the third expansion value “160” to e (X, Y).
ステップ257において、制御ユニット400は、g(x,y)に“1”をセットし、g(x+1,y)に“1”をセットする。すなわち、制御ユニット400は、第2描画データに係るG(X,Y)の値をビット列“11”で表現する。 In step 257, the control unit 400 sets “1” to g (x, y) and sets “1” to g (x + 1, y). That is, the control unit 400 expresses the value of G (X, Y) related to the second drawing data by the bit string “11”.
ステップ258において、制御ユニット400は、平均値aと第4伸長値“255”との差分をe(X,Y)にセットする。 In step 258, the control unit 400 sets the difference between the average value a and the fourth extension value “255” to e (X, Y).
例えば、図6に示すように、制御ユニット400は、平均値a“150”が“128”以上“196”未満であるため、G(0,0)の値をビット列“01”で表現する。また、制御ユニット400は、平均値a“150”と第3伸長値“160”との差分“−10”をe(0,0)にセットする。 For example, as shown in FIG. 6, the control unit 400 expresses the value of G (0, 0) as a bit string “01” because the average value “150” is “128” or more and less than “196”. Further, the control unit 400 sets a difference “−10” between the average value “a” “150” and the third extension value “160” to e (0, 0).
ステップ260において、制御ユニット400は、F(X,Y)の周辺に設けられたF(X+1,Y)、F(X−1,Y+1)、F(X,Y+1)、F(X+1,Y+1)にe(X,Y)を分配する。なお、F(X+1,Y)は、f(x+2,y)及びf(x+3,y)によって構成される注目集合画素である。F(X−1,Y+1)は、f(x−2,y+1)及びf(x−1,y+1)によって構成される注目集合画素である。F(X,Y+1)は、f(x,y+1)及びf(x+1,y+1)によって構成される注目集合画素である。F(X+1,Y+1)は、f(x+2,y+1)及びf(x+3,y+1)によって構成される注目集合画素である。 In step 260, the control unit 400 determines that F (X + 1, Y), F (X-1, Y + 1), F (X, Y + 1), F (X + 1, Y + 1) provided around F (X, Y). Distribute e (X, Y). Note that F (X + 1, Y) is an attention set pixel configured by f (x + 2, y) and f (x + 3, y). F (X-1, Y + 1) is an attention set pixel configured by f (x-2, y + 1) and f (x-1, y + 1). F (X, Y + 1) is an attention set pixel configured by f (x, y + 1) and f (x + 1, y + 1). F (X + 1, Y + 1) is an attention set pixel constituted by f (x + 2, y + 1) and f (x + 3, y + 1).
上述したように、e(X,Y)の分配は、以下のように行われる。
(1) (X+1,Y)、すなわち、f(x+2,y)及びf(x+3,y)について
f(x+2,y)=f(x+2,y)+p1×e(X,Y)
f(x+3,y)=f(x+3,y)+p2×e(X,Y)
(2) (X−1,Y+1)、すなわち、f(x−2,y+1)及びf(x−1,y+1)について
f(x−2,y+1)=f(x−2,y+1)+q1×e(X,Y)
f(x−1,y+1)=f(x−1,y+1)+q2×e(X,Y)
(3) (X,Y+1)、すなわち、f(x,y+1)及びf(x+1,y+1)について
f(x,y+1)=f(x,y+1)+r1×e(X,Y)
f(x+1,y+1)=f(x+1,y+1)+r2×e(X,Y)
(4) (X+1,Y+1)、すなわち、f(x+2,y+1)及びf(x+3,y+1)について
f(x+2,y+1)=f(x+2,y+1)+s1×e(X,Y)
f(x+3,y+1)=f(x+3,y+1)+s2×e(X,Y)
As described above, the distribution of e (X, Y) is performed as follows.
(1) (X + 1, Y), ie, f (x + 2, y) and f (x + 3, y) f (x + 2, y) = f (x + 2, y) + p 1 × e (X, Y)
f (x + 3, y) = f (x + 3, y) + p 2 × e (X, Y)
(2) (X−1, Y + 1), ie, f (x−2, y + 1) and f (x−1, y + 1) f (x−2, y + 1) = f (x−2, y + 1) + q 1 × e (X, Y)
f (x-1, y + 1) = f (x-1, y + 1) + q 2 × e (X, Y)
(3) (X, Y + 1), ie, f (x, y + 1) and f (x + 1, y + 1) f (x, y + 1) = f (x, y + 1) + r 1 × e (X, Y)
f (x + 1, y + 1) = f (x + 1, y + 1) + r 2 × e (X, Y)
(4) (X + 1, Y + 1), ie, f (x + 2, y + 1) and f (x + 3, y + 1) f (x + 2, y + 1) = f (x + 2, y + 1) + s 1 × e (X, Y)
f (x + 3, y + 1) = f (x + 3, y + 1) + s 2 × e (X, Y)
例えば、図6に示すように、制御ユニット400は、周辺画素の値を以下のように修正する。なお、画素の値は負の値を取らないため、画素の値の最小値は“0”である。
f(2,0)=100+7/16×−10≒96
f(3,0)=0+7/16×−10≒0
f(0,1)=100+5/16×−10≒97
f(1,1)=50+5/16×−10≒47
f(2,1)=200+1/16×−10≒200
f(3,1)=200+1/16×−10≒200
For example, as shown in FIG. 6, the control unit 400 corrects the values of the surrounding pixels as follows. Since the pixel value does not take a negative value, the minimum value of the pixel value is “0”.
f (2,0) = 100 + 7/16 × −10≈96
f (3,0) = 0 + 7/16 × −10≈0
f (0,1) = 100 + 5/16 × −10≈97
f (1,1) = 50 + 5/16 × −10≈47
f (2,1) = 200 + 1/16 × −10≈200
f (3,1) = 200 + 1/16 × −10≈200
このように、制御ユニット400は、ステップ210a〜ステップ210bのループ処理を繰り返すことによって、全画素について第1描画データを第2描画データに圧縮する。 In this manner, the control unit 400 compresses the first drawing data into the second drawing data for all the pixels by repeating the loop processing of Step 210a to Step 210b.
ステップ270において、制御ユニット400は、4つのG(X,Y)に対応するビット列を10進数で表現される値に変換する。 In step 270, the control unit 400 converts the bit string corresponding to the four G (X, Y) into a value expressed in decimal.
例えば、図6に示すように、制御ユニット400は、ビット列“01001011”を10進数で表現される値“75”に変換する。 For example, as shown in FIG. 6, the control unit 400 converts the bit string “01001011” into a value “75” expressed in decimal.
以下において、上述した伸長処理の詳細について、図7及び図8を参照しながら説明する。 Details of the above-described decompression processing will be described below with reference to FIGS.
図7に示すように、ステップ410aにおいて、制御ユニット400は、X−Y座標において、G(X,Y)やH(X,Y)のY座標をセットする。なお、制御ユニット400は、ステップ410a〜ステップ410bのループ処理が一巡すると、X−Y座標において、Y座標を1注目集合画素分シフトする。なお、ステップ410a〜ステップ410bのループ処理は、垂直方向における全画素について伸長処理が終了するまで繰り返される。 As shown in FIG. 7, in step 410a, the control unit 400 sets the Y coordinate of G (X, Y) or H (X, Y) in the XY coordinates. Note that the control unit 400 shifts the Y coordinate by one target set pixel in the XY coordinates when the loop processing from Step 410a to Step 410b is completed. Note that the loop processing from Step 410a to Step 410b is repeated until the expansion processing is completed for all the pixels in the vertical direction.
併せて、ステップ410aにおいて、制御ユニット400は、x−y座標において、g(x,y)やh(x,y)のy座標をセットすることに留意すべきである。なお、制御ユニット400は、ステップ410a〜ステップ410bのループ処理が一巡すると、x−y座標において、y座標を1画素分シフトする。 In addition, it should be noted that in step 410a, the control unit 400 sets the y coordinate of g (x, y) or h (x, y) in the xy coordinate. Note that the control unit 400 shifts the y coordinate by one pixel in the xy coordinates when the loop processing from step 410a to step 410b is completed.
ステップ420aにおいて、制御ユニット400は、X−Y座標において、G(X,Y)やH(X,Y)のX座標をセットする。なお、制御ユニット400は、ステップ420a〜ステップ420bのループ処理が一巡すると、X−Y座標において、G(X,Y)やH(X,Y)のX座標を4注目集合画素分シフトする。4注目集合画素分シフトする理由は、4注目集合画素に相当する第2描画データが10進数で表現されており、10進数で表現された第2描画データがメモリ430に格納されるためである。なお、ステップ420a〜ステップ420bのループ処理は、水平方向における全画素について伸長処理が終了するまで繰り返される。 In step 420a, the control unit 400 sets the X coordinates of G (X, Y) and H (X, Y) in the XY coordinates. Note that the control unit 400 shifts the X coordinates of G (X, Y) and H (X, Y) by four attention set pixels in the XY coordinates when the loop processing of Step 420a to Step 420b is completed. The reason for shifting by four attention set pixels is that the second drawing data corresponding to the four attention set pixels is expressed in decimal numbers, and the second drawing data expressed in decimal numbers is stored in the memory 430. . Note that the loop processing from step 420a to step 420b is repeated until the expansion processing is completed for all pixels in the horizontal direction.
併せて、ステップ420aにおいて、制御ユニット400は、x−y座標において、g(x,y)やh(x,y)のx座標をセットすることに留意すべきである。なお、制御ユニット400は、ステップ420a〜ステップ420bのループ処理が一巡すると、x−y座標において、x座標を8画素分シフトする。 In addition, it should be noted that in step 420a, the control unit 400 sets the x coordinate of g (x, y) or h (x, y) in the xy coordinate. Note that the control unit 400 shifts the x coordinate by 8 pixels in the xy coordinates when the loop process of step 420a to step 420b is completed.
ステップ430において、制御ユニット400は、メモリ430に格納された値、すなわち、10進数で表現される値を2進数で表現されるビット列に変換する。 In step 430, the control unit 400 converts the value stored in the memory 430, that is, the value expressed in decimal numbers into a bit string expressed in binary numbers.
例えば、図8に示すように、制御ユニット400は、10進数で表現される値“75”をビット列“01001011”に変換する。 For example, as shown in FIG. 8, the control unit 400 converts a value “75” expressed in decimal numbers into a bit string “01001011”.
ステップ440aにおいて、制御ユニット400は、x−y座標において、g(x,y)やh(x,y)のx座標をセットすることに留意すべきである。なお、制御ユニット400は、ステップ440a〜ステップ440bのループ処理が一巡すると、x−y座標において、x座標を2画素分シフトする。ステップ440a〜ステップ440bのループ処理は、4注目集合画素に相当する回数、すなわち、4回繰り返される。 It should be noted that in step 440a, the control unit 400 sets the x coordinate of g (x, y) or h (x, y) in the xy coordinate. Note that the control unit 400 shifts the x coordinate by two pixels in the xy coordinates when the loop processing from step 440a to step 440b is completed. The loop processing from step 440a to step 440b is repeated the number of times corresponding to four attention set pixels, that is, four times.
ステップ451において、制御ユニット400は、g(x,y)=0、かつ、g(x+1,y)=0であるか否かを判定する。すなわち、制御ユニット400は、G(X,Y)に対応するビット列が“00”であるか否かを判定する。制御ユニット400は、G(X,Y)に対応するビット列が“00”である場合には、ステップ461の処理に移る。制御ユニット400は、G(X,Y)に対応するビット列が“00”でない場合には、ステップ452の処理に移る。 In step 451, the control unit 400 determines whether g (x, y) = 0 and g (x + 1, y) = 0. That is, the control unit 400 determines whether or not the bit string corresponding to G (X, Y) is “00”. If the bit string corresponding to G (X, Y) is “00”, the control unit 400 proceeds to the process of step 461. If the bit string corresponding to G (X, Y) is not “00”, the control unit 400 proceeds to the process of step 452.
ステップ452において、制御ユニット400は、g(x,y)=1、かつ、g(x+1,y)=0であるか否かを判定する。すなわち、制御ユニット400は、G(X,Y)に対応するビット列が“10”であるか否かを判定する。制御ユニット400は、G(X,Y)に対応するビット列が“10”である場合には、ステップ462の処理に移る。制御ユニット400は、G(X,Y)に対応するビット列が“10”でない場合には、ステップ453の処理に移る。 In step 452, the control unit 400 determines whether g (x, y) = 1 and g (x + 1, y) = 0. That is, the control unit 400 determines whether or not the bit string corresponding to G (X, Y) is “10”. If the bit string corresponding to G (X, Y) is “10”, the control unit 400 proceeds to the process of step 462. If the bit string corresponding to G (X, Y) is not “10”, the control unit 400 proceeds to the process of step 453.
ステップ453において、制御ユニット400は、g(x,y)=0、かつ、g(x+1,y)=1であるか否かを判定する。すなわち、制御ユニット400は、G(X,Y)に対応するビット列が“01”であるか否かを判定する。制御ユニット400は、G(X,Y)に対応するビット列が“01”である場合には、ステップ463の処理に移る。制御ユニット400は、G(X,Y)に対応するビット列が“11”である場合には、ステップ464の処理に移る。 In step 453, the control unit 400 determines whether g (x, y) = 0 and g (x + 1, y) = 1. That is, the control unit 400 determines whether or not the bit string corresponding to G (X, Y) is “01”. If the bit string corresponding to G (X, Y) is “01”, the control unit 400 proceeds to the process of step 463. If the bit string corresponding to G (X, Y) is “11”, the control unit 400 proceeds to the process of step 464.
ステップ461において、制御ユニット400は、h(x,y)の値として“0”をセットし、h(x+1,y)の値として“0”をセットする。 In step 461, the control unit 400 sets “0” as the value of h (x, y) and sets “0” as the value of h (x + 1, y).
ステップ462において、制御ユニット400は、h(x,y)の値として“96”をセットし、h(x+1,y)の値として“96”をセットする。 In step 462, the control unit 400 sets “96” as the value of h (x, y) and sets “96” as the value of h (x + 1, y).
ステップ463において、制御ユニット400は、h(x,y)の値として“160”をセットし、h(x+1,y)の値として“160”をセットする。 In step 463, the control unit 400 sets “160” as the value of h (x, y) and sets “160” as the value of h (x + 1, y).
ステップ464において、制御ユニット400は、h(x,y)の値として“255”をセットし、h(x+1,y)の値として“255”をセットする。 In step 464, the control unit 400 sets “255” as the value of h (x, y) and sets “255” as the value of h (x + 1, y).
例えば、図8に示すように、制御ユニット400は、G(0,0)に対応するビット列が“01”である場合、すなわち、g(0,0)=0、かつ、g(1,0)=1である場合には、h(0,0)及びh(1,0)の値として“160”をセットする。また、制御ユニット400は、G(1,0)に対応するビット列が“00”である場合、すなわち、g(2,0)=0、かつ、g(3,0)=0である場合には、h(2,0)及びh(3,0)の値として“0”をセットする。 For example, as shown in FIG. 8, the control unit 400, when the bit string corresponding to G (0,0) is “01”, that is, g (0,0) = 0 and g (1,0) ) = 1, “160” is set as the value of h (0,0) and h (1,0). Further, the control unit 400 determines that the bit string corresponding to G (1, 0) is “00”, that is, when g (2, 0) = 0 and g (3, 0) = 0. Sets “0” as the value of h (2,0) and h (3,0).
(比較結果)
以下において、原画像、従来技術の誤差拡散法後の画像、実施形態の誤差拡散法後の画像の比較結果について、図9を参照しながら説明する。図9(a)は、原画像及びその一部の拡大図である。図9(b)は、従来技術の誤差拡散法後の画像及びその一部の拡大図である。図9(c)は、実施形態の誤差拡散法後の画像及びその一部の拡大図である。
(Comparison result)
Hereinafter, a comparison result of the original image, the image after the error diffusion method of the prior art, and the image after the error diffusion method of the embodiment will be described with reference to FIG. FIG. 9A is an enlarged view of the original image and a part thereof. FIG. 9B is an enlarged view of an image after a conventional error diffusion method and a part thereof. FIG. 9C is an enlarged view of an image after the error diffusion method of the embodiment and a part thereof.
図9(a)と図9(b)との比較から、従来技術の誤差拡散法後の画像は、原画像に比べて低解像度化していることが分かる。 From a comparison between FIG. 9A and FIG. 9B, it can be seen that the image after the error diffusion method of the prior art has a lower resolution than the original image.
図9(b)と図9(c)との比較から、実施形態の誤差拡散法後の画像では、従来技術の誤差拡散法後の画像に比べて、低解像度化が抑制されていることが分かる。すなわち、図9(a)と図9(c)との比較から、実施形態の誤差拡散法後の画像は、従来技術の誤差拡散法後の画像に比べて、原画像に近いことが分かる。 From the comparison between FIG. 9B and FIG. 9C, it is found that the resolution reduction is suppressed in the image after the error diffusion method of the embodiment compared to the image after the error diffusion method of the prior art. I understand. That is, it can be seen from the comparison between FIG. 9A and FIG. 9C that the image after the error diffusion method of the embodiment is closer to the original image than the image after the error diffusion method of the prior art.
(作用及び効果)
制御ユニット400は、複数の注目隣接画素によって1つの注目集合画素を構成して、第1描画データに係る注目集合画素の値を符号化する。すなわち、制御ユニット400は、注目集合画素単位で、第1描画データを第2描画データに圧縮する。
(Function and effect)
The control unit 400 configures one target set pixel by a plurality of target adjacent pixels, and encodes the value of the target set pixel related to the first drawing data. In other words, the control unit 400 compresses the first drawing data into the second drawing data for each set pixel of interest.
これによって、注目集合画素を構成する複数の注目隣接画素に割り当てられるビット数によって、第2描画データに係る注目集合画素の値を表現することができる。すなわち、第2描画データに係る注目集合画素の値を表現するビット数の増大によって、伸長後描画データに係る画素の階調数を増やすことができる。 Accordingly, the value of the target set pixel related to the second drawing data can be expressed by the number of bits assigned to the plurality of target adjacent pixels constituting the target set pixel. That is, by increasing the number of bits representing the value of the target collection pixel related to the second drawing data, it is possible to increase the number of gradations of the pixel related to the decompressed drawing data.
このように、誤差拡散法を用いるケースにおいて、圧縮率の低下を伴わずに、画素の階調数を増やすことができるため、用紙上に形成される画像の品質劣化を抑制することができる。なお、低解像度化を伴う必要がないことは勿論である。 As described above, in the case of using the error diffusion method, the number of gradations of the pixels can be increased without reducing the compression rate, so that deterioration of the quality of the image formed on the paper can be suppressed. Of course, it is not necessary to reduce the resolution.
[その他の実施形態]
本発明は上述した実施形態によって説明したが、この開示の一部をなす論述及び図面は、この発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施形態、実施例及び運用技術が明らかとなろう。
[Other Embodiments]
Although the present invention has been described with reference to the above-described embodiments, it should not be understood that the descriptions and drawings constituting a part of this disclosure limit the present invention. From this disclosure, various alternative embodiments, examples and operational techniques will be apparent to those skilled in the art.
例えば、画像形成装置100は、MFPではなくて、プリンタ機能のみを有する装置であってもよく、複写機能のみを有する装置であってもよい。 For example, the image forming apparatus 100 may not be an MFP but may be an apparatus having only a printer function or an apparatus having only a copying function.
上述した実施形態では、第2描画データに係る注目集合画素の値は、2ビットで表現されるが、実施形態はこれに限定されるものではない。第2描画データに係る注目集合画素の値は、4ビットで表現されてもよく、8ビットで表現されてもよい。このように、第2描画データに係る注目集合画素の値を表現するビット数を増やせば、伸長後描画データに係る画素の階調数が増える。 In the embodiment described above, the value of the target set pixel related to the second drawing data is expressed by 2 bits, but the embodiment is not limited to this. The value of the target set pixel related to the second drawing data may be expressed by 4 bits or may be expressed by 8 bits. As described above, if the number of bits representing the value of the target set pixel related to the second drawing data is increased, the number of gradations of the pixel related to the post-decompression drawing data increases.
例えば、第2描画データに係る注目集合画素の値が4ビットで表現される場合には、伸長後描画データにおいて1画素は16階調であり、圧縮率は、4/16=1/4である。第2描画データに係る注目集合画素の値が8ビットで表現される場合には、伸長後描画データにおいて1画素は256階調であり、圧縮率は、8/16=1/2である。 For example, when the value of the target set pixel related to the second drawing data is expressed by 4 bits, one pixel in the decompressed drawing data has 16 gradations, and the compression rate is 4/16 = 1/4. is there. When the value of the target set pixel related to the second drawing data is expressed by 8 bits, one pixel in the decompressed drawing data has 256 gradations, and the compression rate is 8/16 = 1/2.
上述した実施形態では、注目集合画素は、水平方向に隣接する2つの画素によって構成されるが、実施形態はこれに限定されるものではない。注目集合画素は、垂直方向に隣接する2つの画素によって構成されてもよい。 In the embodiment described above, the attention set pixel is configured by two pixels adjacent in the horizontal direction, but the embodiment is not limited to this. The target set pixel may be configured by two pixels adjacent in the vertical direction.
上述した実施形態では、注目集合画素を構成する画素数は、“2”であるが、実施形態はこれに限定されるものではない。注目集合画素を構成する画素数は、“4”であってもよく、“8”であってもよい。このように、注目集合画素を構成する画素数を増やせば、圧縮率が高まる。 In the embodiment described above, the number of pixels constituting the target set pixel is “2”, but the embodiment is not limited to this. The number of pixels constituting the target set pixel may be “4” or “8”. As described above, if the number of pixels constituting the target set pixel is increased, the compression rate is increased.
例えば、第2描画データに係る注目集合画素の値を表現するビット数が“2”であれば、注目集合画素を構成する画素数が“4”である場合には、圧縮率は2/32=1/16である。同様に、注目集合画素を構成する画素数が“8”である場合には、圧縮率は2/64=1/32である。 For example, if the number of bits representing the value of the target set pixel related to the second drawing data is “2”, the compression rate is 2/32 when the number of pixels constituting the target set pixel is “4”. = 1/16. Similarly, when the number of pixels constituting the target set pixel is “8”, the compression ratio is 2/64 = 1/32.
注目集合画素を構成する画素数は、第1描画データを第2描画データに圧縮する圧縮率と、伸長後描画データに係る画素の階調数とによって定められてもよい。例えば、高い圧縮率や多くの階調が要求されるケースでは、注目集合画素を構成する画素数を増やせばよい。 The number of pixels constituting the target set pixel may be determined by a compression rate for compressing the first drawing data into the second drawing data and the number of gradations of the pixels related to the decompressed drawing data. For example, in a case where a high compression rate and a large number of gradations are required, the number of pixels constituting the target set pixel may be increased.
上述した実施形態では、第1描画データの圧縮処理は、画像形成装置100で行われるが、実施形態はこれに限定されるものではない。第1描画データの圧縮処理は、プリンタコントローラ500で行われてもよい。 In the embodiment described above, the compression process of the first drawing data is performed by the image forming apparatus 100, but the embodiment is not limited to this. The first drawing data compression process may be performed by the printer controller 500.
上述した実施形態では特に触れていないが、第1データの圧縮処理をコンピュータに実行させるプログラムが提供されてもよい。 Although not specifically mentioned in the above-described embodiment, a program for causing a computer to execute compression processing of the first data may be provided.
上述した実施形態では、PDLから中間言語への変換処理は、プリンタコントローラ500で行われるが、実施形態はこれに限定されるものではない。PDLから中間言語への変換処理は、ユーザ端末600で行われてもよい。 In the above-described embodiment, the conversion process from the PDL to the intermediate language is performed by the printer controller 500, but the embodiment is not limited to this. The conversion process from the PDL to the intermediate language may be performed by the user terminal 600.
10・・・自動原稿送りユニット、20・・・画像読取ユニット、30・・・用紙トレイユニット、40・・・給紙ユニット、50・・・画像形成部、60・・・定着ユニット、70・・・排紙ユニット、80・・・反転ユニット、90・・・操作ユニット、100・・・画像形成装置、200・・・給紙装置、300・・・後処理装置、400・・・制御ユニット、410・・・通信I/F、420・・・HDD、430・・・メモリ、440・・・CPU、441・・・算出部、442・・・圧縮部、443・・・分配部、444・・・シフト部、445・・・伸長部、446・・・ラスタライズ部、447・・・指示部 DESCRIPTION OF SYMBOLS 10 ... Automatic document feeding unit, 20 ... Image reading unit, 30 ... Paper tray unit, 40 ... Paper feed unit, 50 ... Image forming unit, 60 ... Fixing unit, 70 ..Paper discharge unit, 80... Reversing unit, 90... Operation unit, 100... Image forming apparatus, 200. , 410 ... Communication I / F, 420 ... HDD, 430 ... Memory, 440 ... CPU, 441 ... Calculation part, 442 ... Compression part, 443 ... Distribution part, 444 ... Shift unit, 445 ... Extension unit, 446 ... Rasterize unit, 447 ... Instruction unit
Claims (4)
第1描画データを第2描画データに圧縮し、前記第2描画データを伸長して伸長後描画データを得る制御部と、
前記制御部の指示に応じて、前記伸長後描画データに基づいて画像を用紙上に形成する画像形成部とを備え、
前記制御部は、
複数の注目すべき隣接画素によって1つの注目集合画素を構成して、前記第1描画データの集合注目画素に係る前記複数の隣接画素の値に基づいて、前記第1描画データに係る前記注目集合画素の値を算出する算出部と、
前記第1描画データに係る前記注目集合画素の値と判定閾値とを比較して、前記第1描画データに係る前記注目集合画素の値を符号化する圧縮部と、
前記第1描画データに係る前記注目集合画素の値と、前記第2描画データに係る前記注目集合画素の伸長値との差分である誤差を前記注目集合画素の周囲に設けられた周辺画素に分配して、前記第1描画データに係る前記周辺画素の値を前記誤差によって修正する分配部と、
前記第1描画データの圧縮を終了するまで、前記複数の注目すべき隣接画素をシフトすることにより、前記注目集合画素のシフトを繰り返すシフト部とを有し、
前記算出部、前記圧縮部及び前記分配部は、前記複数の注目すべき画素のシフト毎に処理を繰り返すことを特徴とする画像形成装置。 An image forming apparatus for forming an image on paper,
A controller that compresses the first drawing data into second drawing data, decompresses the second drawing data, and obtains drawing data after decompression;
An image forming unit that forms an image on a sheet based on the decompressed drawing data in accordance with an instruction from the control unit;
The controller is
A target set pixel is configured by a plurality of adjacent pixels to be noted, and the target set related to the first drawing data is based on values of the plurality of adjacent pixels related to the set target pixel of the first drawing data A calculation unit for calculating a pixel value;
A compression unit that compares the value of the target set pixel related to the first drawing data with a determination threshold and encodes the value of the target set pixel related to the first drawing data;
An error, which is a difference between the value of the target set pixel related to the first drawing data and the extension value of the target set pixel related to the second drawing data, is distributed to peripheral pixels provided around the target set pixel A distribution unit that corrects a value of the peripheral pixel related to the first drawing data by the error;
A shift unit that repeats the shift of the target set pixel by shifting the plurality of adjacent pixels of interest until the compression of the first drawing data is finished,
The image forming apparatus, wherein the calculation unit, the compression unit, and the distribution unit repeat the process for each shift of the plurality of pixels of interest.
複数の注目すべき隣接画素によって1つの注目集合画素を構成して、前記第1描画データに係る前記複数の隣接画素の値に基づいて、前記第1描画データに係る前記注目集合画素の値を算出するステップAと、
前記第1描画データに係る前記注目集合画素の値と判定閾値とを比較して、前記注目集合画素の値を符号化するステップBと、
前記第1描画データに係る前記注目集合画素の値と前記第2描画データに係る前記注目集合画素の伸長値との差分である誤差を前記注目集合画素の周囲に設けられた周辺画素に分配して、前記第1描画データに係る前記周辺画素の値を前記誤差によって修正するステップCと、
前記第1描画データの圧縮を終了するまで、前記複数の注目すべき画素のシフトにより、前記注目集合画素のシフトを繰り返すステップDとを有しており、
前記ステップA、前記ステップB及び前記ステップCは、前記複数の注目すべき隣接画素のシフト毎に繰り返されることを特徴とするデータ圧縮方法。 A data compression method for compressing first drawing data into second drawing data,
A target set pixel is constituted by a plurality of adjacent pixels to be noted, and the value of the target set pixel related to the first drawing data is determined based on the values of the plurality of adjacent pixels related to the first drawing data. Calculating step A;
Comparing the value of the target set pixel related to the first drawing data with a determination threshold, and encoding the value of the target set pixel;
An error, which is a difference between the value of the target set pixel related to the first drawing data and the expanded value of the target set pixel related to the second drawing data, is distributed to peripheral pixels provided around the target set pixel. A step C of correcting the value of the surrounding pixels related to the first drawing data by the error;
Repetitively shifting the target set pixel by shifting the plurality of pixels of interest until the compression of the first drawing data is completed,
Step A, Step B, and Step C are repeated for each shift of the plurality of adjacent pixels to be noted.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008206766A JP2010045488A (en) | 2008-08-11 | 2008-08-11 | Image forming apparatus and data compression method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008206766A JP2010045488A (en) | 2008-08-11 | 2008-08-11 | Image forming apparatus and data compression method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010045488A true JP2010045488A (en) | 2010-02-25 |
Family
ID=42016528
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008206766A Pending JP2010045488A (en) | 2008-08-11 | 2008-08-11 | Image forming apparatus and data compression method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010045488A (en) |
-
2008
- 2008-08-11 JP JP2008206766A patent/JP2010045488A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9967429B2 (en) | Image processing apparatus, image processing method, and storage medium | |
JP5874721B2 (en) | Image processing apparatus, image correction method, and program | |
US20100103435A1 (en) | Image processing apparatus and image processing method for processing screen-processed image | |
JP2007193787A (en) | Image forming system, image forming device, and its control method | |
US8780408B2 (en) | Image processing apparatus, image processing method and recording medium | |
JP6632345B2 (en) | Image processing apparatus, method, program and data structure | |
US8441690B2 (en) | Image processing apparatus and image processing method for processing screen-processed image | |
JP2010118927A (en) | Program, recording medium, image processing apparatus, image processing method, and sheet for gradation correction parameter generation | |
JP5476874B2 (en) | Color processing apparatus, image forming apparatus, and program | |
JP6759963B2 (en) | Control device, image processing method and image processing program | |
JP2008067029A (en) | Image processor and program | |
US10387759B2 (en) | Image processing apparatus, image processing method and storage medium | |
JP2008147748A (en) | Image processor and image processing method | |
US9001381B2 (en) | Image forming apparatus which processes printing data including a transparency pattern, printing control terminal apparatus, and image forming method thereof | |
JP2012186770A (en) | Image processing apparatus, image forming apparatus, and program | |
US10404892B2 (en) | Image forming apparatus for outputting a halftone image and image forming method | |
JP2010045488A (en) | Image forming apparatus and data compression method | |
JP5966434B2 (en) | Image processing apparatus and image processing program | |
JP5644230B2 (en) | Image processing apparatus and image processing method | |
JP2013026729A (en) | Image processing device, image forming device, image processing method, and computer program | |
JP5126693B2 (en) | Image forming apparatus and printing control method | |
JP5603613B2 (en) | Image processing apparatus and image processing method | |
JP6504464B2 (en) | PRINT CONTROL DEVICE, PRINT CONTROL PROGRAM, AND PRINT CONTROL METHOD | |
JP2010045487A (en) | Image forming device and data binary-coding method | |
JP2020195004A (en) | Image forming apparatus and control method for the same, and program |