JP2008187669A - Image processing device, and image processing program - Google Patents
Image processing device, and image processing program Download PDFInfo
- Publication number
- JP2008187669A JP2008187669A JP2007021807A JP2007021807A JP2008187669A JP 2008187669 A JP2008187669 A JP 2008187669A JP 2007021807 A JP2007021807 A JP 2007021807A JP 2007021807 A JP2007021807 A JP 2007021807A JP 2008187669 A JP2008187669 A JP 2008187669A
- Authority
- JP
- Japan
- Prior art keywords
- data
- row
- rotation
- comparison
- line
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012545 processing Methods 0.000 title claims abstract description 157
- 238000007906 compression Methods 0.000 claims abstract description 74
- 230000006835 compression Effects 0.000 claims abstract description 59
- 238000013500 data storage Methods 0.000 claims description 69
- 239000011159 matrix material Substances 0.000 claims description 48
- 238000006243 chemical reaction Methods 0.000 claims description 42
- 238000000034 method Methods 0.000 description 56
- 230000008569 process Effects 0.000 description 50
- 230000000694 effects Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 17
- 239000000463 material Substances 0.000 description 12
- 239000003086 colorant Substances 0.000 description 11
- 238000011161 development Methods 0.000 description 9
- 230000018109 developmental process Effects 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 6
- 230000006837 decompression Effects 0.000 description 5
- 238000004040 coloring Methods 0.000 description 3
- 230000008707 rearrangement Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000010438 heat treatment Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000000859 sublimation Methods 0.000 description 1
- 230000008022 sublimation Effects 0.000 description 1
Images
Landscapes
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Description
本発明は画像処理装置および画像処理プログラムに関し、特に、二階調の画像を高速かつ高い圧縮率でデータを圧縮することができる画像処理装置および画像処理プログラムに関するものである。 The present invention relates to an image processing apparatus and an image processing program, and more particularly to an image processing apparatus and an image processing program capable of compressing data of a two-tone image at a high speed and with a high compression rate.
画像の圧縮方式として、同一色の連続数を利用するランレングス符号を用いた圧縮方法が知られている。この圧縮方法では、同一色の画素が複数連続している場合、その連続する色の値を、「色の値×回数」という値に置き換えることにより、データを圧縮している。したがって、同一色の連続数が多いほど、より効果的な圧縮が可能である。 As an image compression method, a compression method using a run-length code using a continuous number of the same color is known. In this compression method, when a plurality of pixels of the same color are continuous, the data is compressed by replacing the continuous color value with a value of “color value × number of times”. Therefore, more effective compression is possible as the number of consecutive identical colors increases.
一方、多階調画像の階調を擬似的に再現するために、ディザ法による階調変換処理がなされる場合がある。この場合、階調変換後の画像データは、同一色の連続が少なくなるために、ランレングス符号化では圧縮効率が低くなってしまう。そこで、ランレングス符号化に先立ち、ディザパターンに応じたビット列の並べ替え処理をすることで、連続する同一色を増やし、圧縮率を高める方法が提案されている(例えば、特許文献1参照)。
しかしながら、特許文献1に記載の技術では、ビット列の並べ替えを複数パターンで行い、さらに、その並べ替え結果を比較して、最も圧縮率が高い並び替えを選択しなければならず、処理が複雑であって、処理に時間がかかるという問題点があった。
However, in the technique described in
そこで本発明は、高速かつ高い圧縮率で二階調の画像を圧縮することができる画像処理装置を提供することを目的としている。 Accordingly, an object of the present invention is to provide an image processing apparatus capable of compressing a two-tone image at a high speed and a high compression rate.
この目的を達成するために、請求項1記載の画像処理装置は、多階調画像を構成する各画素の階調値を、ディザマトリクスを用いて、二階調の階調値に変換する階調変換手段と、その階調変換手段により変換された一行分の画素の階調値から構成される行データが複数行集まって構成される画像データを圧縮する圧縮手段とを備えたものであって、前記画像データの各行の行データを、それぞれの行の一行前の行データと比較する比較手段を備え、前記比較手段は、比較処理を行う行の一行前の行データを比較対象データとして記憶する比較対象データ記憶手段と、比較処理を行う行の行データを構成する階調値の各々を、行方向に平行な所定の方向に、所定画素分ローテートさせたローテートデータを作成する、比較用ローテートデータ作成手段とを備え、前記圧縮手段は、前記比較手段による比較の結果、前記比較対象データと、前記ローテートデータとが一致すると判断された場合、一行前の行データと一致することを示す情報を、一行前一致データとして記憶する一行前一致データ記憶手段を備えたことを特徴とする。
To achieve this object, the image processing apparatus according to
請求項2記載の画像処理装置は、請求項1記載の画像処理装置において、前記圧縮手段は、前記比較手段による比較の結果、前記比較対象データと、前記ローテートデータとが一致しないと判断された場合、そのローテートデータを作成する際に用いた行データを所定のアルゴリズムで圧縮して一行分圧縮データとして記憶する圧縮データ記憶手段を備えたものであることを特徴とする。
The image processing apparatus according to
請求項3記載の画像処理装置は、請求項1または2に記載の画像処理装置において、前記一行前一致データ記憶手段は、前記比較手段による比較の結果、前記比較対象データと、前記ローテートデータとが一致しないと判断されるまでの間に、前記比較手段による比較の結果、前記比較対象データと、前記ローテートデータとが一致すると判断されたローテートデータの行数に相当する値を、一行前一致データとして記憶することを特徴とする。
The image processing apparatus according to claim 3 is the image processing apparatus according to
請求項4記載の画像処理装置は、請求項1から3のいずれかに記載の画像処理装置において、前記階調変換手段は、万線パターンを形成するディザマトリクスを用いて、階調値を変換するものであることを特徴とする。
5. The image processing apparatus according to
請求項5記載の画像処理装置は、請求項1から4のいずれかに記載の画像処理装置において、前記階調変換手段により用いられたディザマトリクスに対応したローテート方向情報とローテート量情報とを取得するローテート条件取得手段を備え、前記比較用ローテートデータ作成手段は、比較処理を行う行の行データを構成する階調値の各々を、前記ローテート方向情報に基づく方向に、前記ローテート量情報に基づく画素数分ローテートさせたローテートデータを作成するものであり、前記圧縮手段は、前記ローテート条件取得手段により取得されたローテート方向情報とローテート量情報とを記憶するローテート条件記憶手段を備えることを特徴とする。
The image processing device according to claim 5 is the image processing device according to any one of
請求項6記載の画像処理装置は、請求項1から4のいずれかに記載の画像処理装置において、前記比較用ローテートデータ作成手段は、比較処理を行う行の行データを構成する階調値の各々を、1画素ずつローテートさせたローテートデータを作成するものであることを特徴とする。
The image processing apparatus according to claim 6 is the image processing apparatus according to any one of
請求項7記載の画像処理プログラムは、多階調画像を構成する各画素の階調値が、ディザマトリクスを用いて、二階調の階調値に変換されることにより得られた画像データであって、一行分の画素の階調値から構成される行データが複数行集まって構成される画像データを圧縮する圧縮ステップを画像処理装置に実行させるためのプログラムであって、前記画像データの各行の行データを、それぞれの行の一行前の行データと比較する比較ステップを備え、前記比較ステップは、比較処理を行う行の一行前の行データを比較対象データとして記憶する比較対象データ記憶ステップと、比較処理を行う行の行データを構成する階調値の各々を、行方向に平行な所定の方向に、所定画素分ローテートさせたローテートデータを作成する、比較用ローテートデータ作成ステップとを備え、前記圧縮ステップは、前記比較ステップによる比較の結果、前記比較対象データと、前記ローテートデータとが一致すると判断された場合、一行前の行データと一致することを示す情報を、一行前一致データとして記憶する一行前一致データ記憶ステップを備えたことを特徴とする。 The image processing program according to claim 7 is image data obtained by converting a gradation value of each pixel constituting a multi-gradation image into a gradation value of two gradations using a dither matrix. A program for causing an image processing apparatus to execute a compression step of compressing image data composed of a plurality of rows of row data composed of pixel gradation values for one row, wherein each row of the image data A comparison step of comparing the row data of the previous row with the row data of the previous row of each row, wherein the comparison step stores the row data of the previous row of the row to be compared as comparison target data. And a rotation data for comparison in which each of the gradation values constituting the row data of the row to be compared is rotated by a predetermined number of pixels in a predetermined direction parallel to the row direction. And a compressing step indicating that the comparison target data matches the previous row data when it is determined that the comparison target data and the rotate data match. It is characterized by comprising a preceding line matching data storing step for storing information as preceding line matching data.
請求項8記載の画像処理プログラムは、請求項7記載の画像処理プログラムにおいて、前記圧縮ステップは、前記比較ステップによる比較の結果、前記比較対象データと、前記ローテートデータとが一致しないと判断された場合、そのローテートデータを作成する際に用いた行データを所定のアルゴリズムで圧縮して一行分圧縮データとして記憶する圧縮データ記憶ステップを備えたものであることを特徴とする。
The image processing program according to
請求項9記載の画像処理プログラムは、請求項7または8に記載の画像処理プログラムにおいて、前記一行前一致データ記憶ステップは、前記比較ステップによる比較の結果、前記比較対象データと、前記ローテートデータとが一致しないと判断されるまでの間に、前記比較ステップによる比較の結果、前記比較対象データと、前記ローテートデータとが一致すると判断されたローテートデータの行数に相当する値を、一行前一致データとして記憶することを特徴とする。
The image processing program according to claim 9 is the image processing program according to
請求項10記載の画像処理プログラムは、請求項7から9のいずれかに記載の画像処理プログラムにおいて、多階調画像を構成する各画素の階調値を、ディザマトリクスを用いて、二階調の階調値に変換する階調変換ステップを、前記画像処理装置に実行させるものであり、その階調変換ステップは、万線パターンを形成するディザマトリクスを用いて、階調値を変換するものであることを特徴とする。 An image processing program according to a tenth aspect is the image processing program according to any one of the seventh to ninth aspects, wherein a gradation value of each pixel constituting the multi-tone image is converted into a two-tone using a dither matrix. A gradation conversion step for converting to a gradation value is executed by the image processing apparatus, and the gradation conversion step is for converting a gradation value by using a dither matrix for forming a line pattern. It is characterized by being.
請求項11記載の画像処理プログラムは、請求項7から10のいずれかに記載の画像処理プログラムにおいて、前記ディザマトリクスに対応したローテート方向情報とローテート量情報とを取得するローテート条件取得ステップを備え、前記比較用ローテートデータ作成ステップは、比較処理を行う行の行データを構成する階調値の各々を、前記ローテート方向情報に基づく方向に、前記ローテート量情報に基づく画素数分ローテートさせたローテートデータを作成するものであり、前記圧縮ステップは、前記ローテート条件取得ステップにより取得されたローテート方向情報とローテート量情報とを記憶するローテート条件記憶ステップを備えることを特徴とする。
An image processing program according to
請求項12記載の画像処理プログラムは、請求項7から10のいずれかに記載の画像処理プログラムにおいて、前記比較用ローテートデータ作成ステップは、比較処理を行う行の行データを構成する階調値の各々を、1画素ずつローテートさせたローテートデータを作成するものであることを特徴とする。 An image processing program according to a twelfth aspect is the image processing program according to any one of the seventh to tenth aspects, wherein the comparison rotation data creation step includes a gradation value constituting the row data of the row to be compared. Rotation data is created by rotating each pixel one by one.
請求項1記載の画像処理装置によれば、比較手段により、画像データの各行の行データが、それぞれの行の一行前の行データと比較される。ここで、比較対象データ記憶手段により、比較処理を行う行の一行前の行データが比較対象データとして記憶され、比較用ローテートデータ作成手段により、比較処理を行う行の行データを構成する階調値の各々が、行方向に平行な所定の方向に、所定画素分ローテートされたローテートデータが作成される。そして、比較手段による比較の結果、比較対象データと、ローテートデータとが一致すると判断された場合、一行前の行データと一致することを示す情報が、一行前一致データとして記憶されるので、処理が簡単であって、高速で処理できると共に、高い圧縮率でデータを圧縮することができるという効果がある。 According to the image processing apparatus of the first aspect, the comparison unit compares the row data of each row of the image data with the row data of the previous row of each row. Here, the comparison target data storage unit stores the row data immediately before the row to be compared as comparison target data, and the comparison rotation data creation unit sets the row data of the row to be compared. Rotation data is created in which each value is rotated by a predetermined number of pixels in a predetermined direction parallel to the row direction. Then, as a result of the comparison by the comparison means, if it is determined that the comparison target data and the rotation data match, information indicating that it matches the previous row data is stored as the previous row matching data. Is simple, can be processed at high speed, and can compress data at a high compression rate.
請求項2記載の画像処理装置によれば、請求項1記載の画像処理装置の奏する効果に加え、比較手段による比較の結果、比較対象データと、ローテートデータとが一致しないと判断された場合、そのローテートデータを作成する際に用いた行データが所定のアルゴリズムで圧縮され、一行分圧縮データとして記憶されるので、高い圧縮率でデータを圧縮することができるという効果がある。
According to the image processing device of
請求項3記載の画像処理装置によれば、請求項1または2に記載の画像処理装置の奏する効果に加え、比較手段による比較の結果、比較対象データと、ローテートデータとが一致しないと判断されるまでの間に、比較手段による比較の結果、比較対象データと、ローテートデータとが一致すると判断されたローテートデータの行数に相当する値が、一行前一致データとして記憶されるので、処理が簡単であって、高速で処理できるという効果がある。また、比較対象データと、ローテートデータとが一致すると判断されたローテートデータが多数存在する場合であっても、その行数に相当する値が記憶されるので、高い圧縮率で圧縮することができるという効果がある。 According to the image processing apparatus of the third aspect, in addition to the effect produced by the image processing apparatus of the first or second aspect, as a result of comparison by the comparison means, it is determined that the comparison target data and the rotation data do not match. In the meantime, as a result of the comparison by the comparison means, the value corresponding to the number of rows of the rotation data determined to match the comparison target data and the rotation data is stored as the previous row matching data. It is simple and has the effect of being able to process at high speed. Further, even when there are a lot of rotation data determined to match the comparison target data and the rotation data, a value corresponding to the number of rows is stored, so that compression can be performed at a high compression rate. There is an effect.
請求項4記載の画像処理装置によれば、請求項1から3のいずれかに記載の画像処理装置の奏する効果に加え、階調変換手段は、万線パターンを形成するディザマトリクスを用いて、階調値を変換するものであるので、比較対象データと、ローテートデータとが一致すると判断される可能性が高く、高い圧縮率が得られるという効果がある。
According to the image processing device of
ここで万線パターンとは、規則的に密に並んだ平行線のように見えるパターンであって、画素の濃度に応じて平行線の太さを変更することで、階調を擬似的に表現することができるパターンである。このような万線パターンで形成された画像の一行を拡大して見てみると、その一行は、色材が定着されない画素と、色材が定着された画素とが規則的に配列されて構成されている。そして、一定の階調を示す領域を構成する複数行を拡大してみてみると、各行における色材定着領域の並びは、一行前における色材定着領域の並びと対応関係にある。よって、階調変換手段が、万線パターンを形成するディザマトリクスを用いて階調値を変換するものである場合、一行前の階調変換データとローテートデータとが一致すると判断される可能性が高く、高い圧縮効率が得られるのである。 Here, the line pattern is a pattern that looks like parallel lines that are regularly arranged in a dense manner, and the gradation is expressed in a pseudo manner by changing the thickness of the parallel lines according to the pixel density. It is a pattern that can be done. Looking at an enlarged line of an image formed with such a line pattern, the line is composed of regularly arranged pixels to which color material is not fixed and pixels to which color material is fixed. Has been. When a plurality of lines constituting an area showing a certain gradation are enlarged, the arrangement of the color material fixing areas in each line corresponds to the arrangement of the color material fixing areas in the previous line. Therefore, when the gradation conversion means converts the gradation value using a dither matrix that forms a line pattern, there is a possibility that it is determined that the gradation conversion data of the previous line and the rotation data match. High compression efficiency can be obtained.
請求項5記載の画像処理装置によれば、請求項1から4のいずれかに記載の画像処理装置の奏する効果に加え、ローテート条件取得手段により、階調変換手段により用いられたディザマトリクスに対応したローテート方向情報とローテート量情報とが取得され、比較処理を行う行の行データを構成する階調値の各々が、ローテート方向情報に基づく方向に、ローテート量情報に基づく画素数分ローテートされたローテートデータが作成されるので、比較対象データと、ローテートデータとが一致すると判断される可能性が高く、高い圧縮率が得られるという効果がある。 According to the image processing apparatus of the fifth aspect, in addition to the effect produced by the image processing apparatus according to any one of the first to fourth aspects, the rotation condition acquisition unit can cope with the dither matrix used by the gradation conversion unit. Rotation direction information and rotation amount information are acquired, and each of the gradation values constituting the row data of the row to be compared is rotated in the direction based on the rotation direction information by the number of pixels based on the rotation amount information. Since the rotation data is created, there is a high possibility that the comparison target data and the rotation data are determined to match, and there is an effect that a high compression ratio can be obtained.
請求項6記載の画像処理装置によれば、請求項1から4のいずれかに記載の画像処理装置の奏する効果に加え、比較用ローテートデータ作成手段により、比較処理を行う行の行データを構成する階調値の各々が、1画素ずつローテートされたローテートデータが作成される。よって、階調変換手段により用いられたディザマトリクスが、一行ずれる毎に1画素分ずれたパターンを形成するものである場合、比較対象データとローテートデータとが一致すると判断される可能性が高く、高い圧縮率が得られるという効果がある。 According to the image processing device of the sixth aspect, in addition to the effect produced by the image processing device according to any one of the first to fourth aspects, the row data for the row on which the comparison processing is performed is configured by the comparison rotate data creating means. Rotation data in which each gradation value to be rotated is rotated by one pixel is created. Therefore, when the dither matrix used by the gradation converting unit forms a pattern shifted by one pixel every time one line is shifted, it is highly likely that the comparison target data and the rotated data match. There is an effect that a high compression ratio can be obtained.
請求項7記載の画像処理プログラムによれば、比較ステップにより、画像データの各行の行データが、それぞれの行の一行前の行データと比較される。ここで、比較対象データ記憶ステップにより、比較処理を行う行の一行前の行データが比較対象データとして記憶され、比較用ローテートデータ作成ステップにより、比較処理を行う行の行データを構成する階調値の各々が、行方向に平行な所定の方向に、所定画素分ローテートされたローテートデータが作成される。そして、比較ステップによる比較の結果、比較対象データと、ローテートデータとが一致すると判断された場合、一行前の行データと一致することを示す情報が、一行前一致データとして記憶されるので、処理が簡単であって、高速で処理できると共に、高い圧縮率でデータを圧縮することができるという効果がある。 According to the image processing program of the seventh aspect, in the comparison step, the line data of each line of the image data is compared with the line data before one line of each line. Here, the comparison target data storage step stores the previous row data as the comparison target data as the comparison target data, and the comparison rotation data creation step generates the row data of the comparison target row. Rotation data is created in which each value is rotated by a predetermined number of pixels in a predetermined direction parallel to the row direction. Then, as a result of the comparison in the comparison step, when it is determined that the comparison target data and the rotation data match, information indicating that the comparison is the previous row data is stored as the previous row matching data. Is simple, can be processed at high speed, and can compress data at a high compression rate.
請求項8記載の画像処理プログラムによれば、請求項7記載の画像処理プログラムの奏する効果に加え、比較ステップによる比較の結果、比較対象データと、ローテートデータとが一致しないと判断された場合、そのローテートデータを作成する際に用いた行データが所定のアルゴリズムで圧縮され、一行分圧縮データとして記憶されるので、高い圧縮率でデータを圧縮することができるという効果がある。
According to the image processing program of
請求項9記載の画像処理プログラムによれば、請求項7または8に記載の画像処理プログラムの奏する効果に加え、比較ステップによる比較の結果、比較対象データと、ローテートデータとが一致しないと判断されるまでの間に、比較ステップによる比較の結果、比較対象データと、ローテートデータとが一致すると判断されたローテートデータの行数に相当する値が、一行前一致データとして記憶されるので、処理が簡単であって、高速で処理できるという効果がある。また、比較対象データと、ローテートデータとが一致すると判断されたローテートデータが多数存在する場合であっても、その行数に相当する値が記憶されるので、高い圧縮率で圧縮することができるという効果がある。 According to the image processing program of the ninth aspect, in addition to the effect produced by the image processing program according to the seventh or eighth aspect, as a result of comparison in the comparison step, it is determined that the comparison target data and the rotation data do not match. In the meantime, as a result of the comparison in the comparison step, a value corresponding to the number of rows of the rotation data determined to match the comparison target data and the rotation data is stored as the previous row matching data. It is simple and has the effect of being able to process at high speed. Further, even when there are a lot of rotation data determined to match the comparison target data and the rotation data, a value corresponding to the number of rows is stored, so that compression can be performed at a high compression rate. There is an effect.
請求項10記載の画像処理プログラムによれば、請求項7から9のいずれかに記載の画像処理プログラムの奏する効果に加え、階調変換ステップは、万線パターンを形成するディザマトリクスを用いて、階調値を変換するものであるので、比較対象データと、ローテートデータとが一致すると判断される可能性が高く、高い圧縮率が得られるという効果がある。
According to the image processing program of
請求項11記載の画像処理プログラムによれば、請求項7から10のいずれかに記載の画像処理プログラムの奏する効果に加え、ローテート条件取得ステップにより、ディザマトリクスに対応したローテート方向情報とローテート量情報とが取得され、比較処理を行う行の行データを構成する階調値の各々が、ローテート方向情報に基づく方向に、ローテート量情報に基づく画素数分ローテートされたローテートデータが作成されるので、比較対象データと、ローテートデータとが一致すると判断される可能性が高く、高い圧縮率が得られるという効果がある。
According to the image processing program of
請求項12記載の画像処理プログラムによれば、請求項7から10のいずれかに記載の画像処理プログラムの奏する効果に加え、比較用ローテートデータ作成ステップにより、比較処理を行う行の行データを構成する階調値の各々が、1画素ずつローテートされたローテートデータが作成される。よって、ディザマトリクスが、一行ずれる毎に1画素分ずれたパターンを形成するものである場合、比較対象データとローテートデータとが一致すると判断される可能性が高く、高い圧縮率が得られるという効果がある。 According to the image processing program of the twelfth aspect, in addition to the effect produced by the image processing program according to any one of the seventh to tenth aspects, the row data of the row to be subjected to the comparison processing is configured by the comparison rotation data creation step. Rotation data in which each gradation value to be rotated is rotated by one pixel is created. Therefore, when the dither matrix forms a pattern shifted by one pixel every time it is shifted, there is a high possibility that the comparison target data and the rotated data are judged to match, and a high compression ratio can be obtained. There is.
以下、本発明の好ましい実施例について、添付図面を参照して説明する。図1は、本発明における画像処理装置として機能するパーソナルコンピュータ10(以下、PC10と称する)を含む印刷システムの全体構成を示すブロック図である。図1に示されるような印刷システムは、PC10と、PC10に接続されるプリンタ50とを備えている。
Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings. FIG. 1 is a block diagram showing the overall configuration of a printing system including a personal computer 10 (hereinafter referred to as a PC 10) that functions as an image processing apparatus according to the present invention. A printing system as shown in FIG. 1 includes a
PC10は、後述する画像データ送信処理(図6参照)によって、PC10に入力された画像データに基づき、プリンタ50において記録用紙に印刷を施すためのデータを生成し、圧縮してプリンタ50に送信する装置である。
The
PC10は、図1に示すように、CPU11と、ROM12と、RAM13と、HDD14とを備えており、これらはバスライン200を介して互いに接続されている。また、バスライン200は、入出力ポート19にも接続されている。この入出力ポート19には、入力装置15と、表示装置16と、プリンタ50と接続するためのインターフェイス18(I/F18)が接続されている。
As shown in FIG. 1, the
CPU11は、このPC10を総括的に制御する中央演算処理であり、図7および図8のフローチャートで示す処理を実行するプログラムなどの各種プログラムを実行する。ROM12は、CPU11により実行される各種制御プログラムや、それらの制御プログラムをCPU11により実行する上で必要なデータなどを格納した書き換え不能なメモリである。
The
RAM13は、CPU11により実行される各種処理に必要なデータやプログラムを一時的に記憶するためのメモリである。このRAM13は、入力データ記憶エリア131と、色変換データ記憶エリア132と、二値化データ記憶エリア133と、処理ライン記憶エリア134と、処理ラインローテートデータ記憶エリア135と、比較ライン記憶エリア136と、一行分圧縮データ記憶エリア137と、展開回数カウンタ138と、圧縮データ記憶エリア139とが設けられている。
The
入力データ記憶エリア131は、一般的な文書データ作成ソフト、表計算ソフト、グラフィックデザインソフトなどのアプリケーションで作成された画像(特許請求の範囲に記載の多階調画像の一例)について印刷指示が出された場合に、その印刷対象画像のデータが入力されるメモリである。なお入力データ記憶エリア131に記憶されるデータ(以下、入力データと称する)は、ビットマップ形式のデータであって、各画素の階調値が、R(レッド)、G(グリーン)、B(ブルー)の各色について、例えば0から255までの256階調で表現されたデータである。この入力データ記憶エリア131に記憶された入力データは、後述する色変換処理によって色変換データに変換される。
In the input
色変換データ記憶エリア132は、色変換処理により得られた色変換データが記憶されるエリアである。この色変換データは、各画素の階調値が、C(シアン),M(マゼンダ),Y(イエロー),K(ブラック)の各色について、例えば0から255までの256階調で表現されたデータである。この色変換データ記憶エリア132に記憶されたデータは、二値化処理によって、二値化データに変換される。
The color conversion
二値化データ記憶エリア133は、二値化処理により得られた二値化データが記憶されるエリアである。この二値化データは、各画素の階調値が、例えば、「1」または「0」とされた2値のデータである。 The binarized data storage area 133 is an area for storing binarized data obtained by binarization processing. This binarized data is binary data in which the gradation value of each pixel is set to, for example, “1” or “0”.
図2(a)を参照して、入力データ記憶エリア131、色変換データ記憶エリア132、および二値化データ133の各々に記憶されるデータについてさらに説明する。図2(a)は、入力データ、色変換データ、および二値化データを模式的に示す図である。理解を容易にするために、ここでは、各データを、8画素分のみ図示している。
With reference to FIG. 2A, data stored in each of the input
図2(a)に示すように、入力データは、PC10で色を表現するための表色系であるR,G,Bの各々の階調値で構成されている。ここでは、この8画素はレッド(赤)色の画素であって、各画素の階調値が(R,G,B)=(255,0,0)であるものとして説明する。そしてR,G,Bの各階調値を、図7に示す色変換処理(S2)により、プリンタ50にて画像を形成するための表色系であるC,M,Y,Kの階調値に変換することにより、色変換データが得られる。
As shown in FIG. 2A, the input data is composed of respective gradation values of R, G, and B which are color systems for expressing colors on the
図2(a)に示すように、色変換データは、C,M,Y,Kの各々の階調値で構成されている。ここでは、色変換により、各画素の階調値が(C、M,Y,K)=(0,220,133,0)とされている。すなわち、元の画像の赤色を、マゼンダの階調220と、イエローの階調133との組み合わせが表現しているのである。 As shown in FIG. 2A, the color conversion data is composed of C, M, Y, and K gradation values. Here, the gradation value of each pixel is (C, M, Y, K) = (0, 220, 133, 0) by color conversion. That is, the combination of the magenta tone 220 and the yellow tone 133 represents the red color of the original image.
このように、入力データおよび色変換データは、各色の階調値が、0から255までの256階調で表現されるデータであるが、プリンタ50では、各画素について、色材を定着するか、または色材を定着しないかのいずれかにより画像を表現する。よって、図2に示すように、256階調の色変換データは、図7に示す二値化処理(S4)により、C,M,Y,Kの各色に分離され、各画素の階調値が「1」または「0」のいずれかとされた4色の二値化データに変換される。
As described above, the input data and the color conversion data are data in which the gradation value of each color is expressed by 256 gradations from 0 to 255. In the
ここでは、二値化処理として、ディザマトリクスを用いた処理が行われたものとして説明する。ディザマトリクスは、例えば、40×40のマトリクスの各々に、各画素の階調値を「1」または「0」に変換するための閾値が設定されたデータである。このディザマトリクスを色変換データに重ねあわせ、各マトリクスの閾値と対応する各画素における階調値とを比較して、「1」または「0」決定する。このようにして、色変換データの各画素の値をディザマトリクスの閾値と比較することにより、元の画素の階調に応じて、一定の規則の基に処理対照色の「1」または「0」が出現し、「1」の出現頻度によって中間調を擬似的に表現することができる。なお、後述するように、各色には、それぞれ別の種類のディザマトリクスが適用されるので、図2(a)にも示すように、「1」とされた画素が形成するパターンは各色毎に異なっている。 Here, a description will be given assuming that a process using a dither matrix is performed as the binarization process. The dither matrix is, for example, data in which a threshold value for converting the gradation value of each pixel into “1” or “0” is set in each 40 × 40 matrix. This dither matrix is superimposed on the color conversion data, and the threshold value of each matrix is compared with the gradation value of each corresponding pixel to determine “1” or “0”. In this way, by comparing the value of each pixel of the color conversion data with the threshold value of the dither matrix, the processing contrast color “1” or “0” is set based on a certain rule according to the gradation of the original pixel. "Appears, and the halftone can be expressed in a pseudo manner by the appearance frequency of" 1 ". As will be described later, since different types of dither matrices are applied to each color, as shown in FIG. 2A, the pattern formed by the pixels set to “1” is different for each color. Is different.
図2(b)は、ディザマトリクスを用いた二値化処理により得られた、マゼンダの二値化データを模式的に示す図であり、図2(b)における横方向の一列が、それぞれ一行分の画素を構成する。なお、図2(b)において、階調値が「1」である画素については色を付し、階調値が「0」である画素については色を付していない。以下、階調値が「1」である画素をドットオンの画素と称し、階調値が「0」である画素をドットオフの画素と称する。 FIG. 2B is a diagram schematically showing the magenta binarization data obtained by the binarization process using the dither matrix. Each horizontal column in FIG. 2B represents one row. Construct a minute pixel. In FIG. 2B, a pixel having a gradation value “1” is colored, and a pixel having a gradation value “0” is not colored. Hereinafter, a pixel having a gradation value of “1” is referred to as a dot-on pixel, and a pixel having a gradation value of “0” is referred to as a dot-off pixel.
図2(b)に示すように、ディザマトリクスを用いて各画素の階調値を二値化すると、ドットオンの画素が一定の規則の基に出現するので、ドットオンの画素により所定のパターンが形成されることとなる。図2(b)には、一行について7個のドットオンの画素が連続すると、次に、ドットオフの画素が3個連続するパターンを図示している。このように、10個中7個の画素をドットオンとすることにより、全体として70%の階調を表現することができる。 As shown in FIG. 2B, when the gradation value of each pixel is binarized using a dither matrix, dot-on pixels appear based on a certain rule. Will be formed. FIG. 2B illustrates a pattern in which seven dot-on pixels are consecutive in one row and then three dot-off pixels are consecutive. In this way, 70% of gradations can be expressed as a whole by turning on 7 out of 10 pixels.
ここで、図2(b)に示すパターンでは、一行においてドットオンの画素が形成するパターンは、その行の一行前の行のパターンを、3画素分移動させたパターンである。よって、このようなパターンの行が複数行集まって形成するパターンは、全体として、密に並んだ平行線のように見えるので、万線パターンと称される。 Here, in the pattern shown in FIG. 2B, the pattern formed by the dot-on pixels in one row is a pattern obtained by moving the pattern in the previous row by three pixels. Therefore, a pattern formed by combining a plurality of rows of such patterns looks like parallel lines that are densely arranged as a whole, and is called a line pattern.
ここで、一行内におけるドットオンが連続する領域を、色材定着領域と称する。そして、図2(b)に示すように、各色材定着領域の重心Pが並ぶ線と、行方向とがなす角を、以下、ディザパターンの角度θと称する。このディザパターンの角度θは、二値化処理の際に用いられるディザマトリクスの種類によって変化する。このディザパターンの角度θが0°である場合、万線パターンは、行方向に平行な平行線のパターンを形成することとなる。また、ディザパターンの角度が90°である場合、万線パターンは、行方向に垂直な平行線のパターンを形成することとなる。これに対し、ディザパターンの角度θが、0°、90°、180°以外の万線パターン、すなわち、行方向に対し斜めに交わる万線パターンを、斜め万線パターンと称することとする。 Here, an area where dots on in one line are continuous is referred to as a color material fixing area. As shown in FIG. 2B, the angle formed by the line in which the centroids P of the color material fixing regions are arranged and the row direction is hereinafter referred to as a dither pattern angle θ. The dither pattern angle θ varies depending on the type of dither matrix used in the binarization process. When the dither pattern angle θ is 0 °, the parallel line pattern forms a parallel line pattern parallel to the row direction. When the dither pattern angle is 90 °, the parallel line pattern forms a pattern of parallel lines perpendicular to the row direction. On the other hand, a line pattern whose dither pattern angle θ is other than 0 °, 90 °, and 180 °, that is, a line pattern that obliquely intersects the row direction is referred to as an oblique line pattern.
本実施形態では、C,M,Y,Kの各階調値は、それぞれ別のディザマトリクスを用いて二値化処理されるものである。よって、C,M,Y,Kの各色は、それぞれ異なるパターンを形成することとなる。 In this embodiment, the C, M, Y, and K gradation values are binarized using different dither matrices. Therefore, each color of C, M, Y, and K forms a different pattern.
図1に戻り説明する。処理ライン記憶エリア134は、二値化データから読み出された、処理対象の一行分の行データ(以下、処理ラインと称する)が記憶されるエリアである。処理ラインローテートデータ135は、処理ラインを構成する階調値の各々を、行方向に平行な所定の方向に、所定画素分ローテートさせることにより作成された処理ラインローテートデータ(特許請求の範囲に記載のローテートデータの一例)が記憶されるエリアである。比較ライン記憶エリア136は、処理ラインの一行前の行データ(以下、比較ラインと称する)が記憶されるエリアである。一行分圧縮データ記憶エリア137は、処理ラインをランレングス圧縮することにより得られた一行分圧縮データを記憶するエリアである。展開回数カウンタ138は、後述する展開回数を記憶するカウンタである。圧縮データ記憶エリア139は、後述する圧縮処理において、二値化データが圧縮されることにより作成された圧縮データが記憶されるエリアである。なお、この圧縮データ記憶エリア139に格納された圧縮データは、インターフェイス18を介してプリンタ50に出力される。
Returning to FIG. The processing
図3を参照して、処理ライン、ローテートデータ、比較ライン、一行分圧縮データ、展開回数、圧縮データの各々について説明する。図3は、二値化データから圧縮データが作成されるまでの流れを模式的に示す図である。図3(a)は、マゼンダの二値化データを模式的に示す図である。まず、最初に、一行分の画素の階調値から構成される行データが複数集まって構成される二値化データ(特許請求の範囲に記載の画像データの一例)から、一行目の行データが読み出され、比較ライン(特許請求の範囲に記載の比較対象データの一例)として比較ライン記憶エリア136に格納される。次に、比較ラインの次の行の行データが読み出され、処理ラインとして処理ライン記憶エリア134に記憶される。
With reference to FIG. 3, each of the processing line, rotate data, comparison line, compressed data for one line, number of expansions, and compressed data will be described. FIG. 3 is a diagram schematically showing a flow until compressed data is created from binarized data. FIG. 3A is a diagram schematically showing binarized data of magenta. First, from the binarized data (an example of the image data described in the claims) composed of a plurality of row data composed of the gradation values of pixels for one row, the first row data Is read out and stored in the comparison
図3(b)は、処理ラインをローテートさせることにより作成される処理ラインローテートデータを模式的に示す図である。ここでいうローテートとは、一行分の画素の階調値から構成される処理ラインの各階調値を、それぞれ、行方向に平行な所定方向に、所定画素分ずれた画素の階調値として移動させると共に、その所定方向の一端にあふれた階調値を、他端の画素の階調値として付加することである。ここで、各行の画素のうち、図3に向かって最左の画素を先頭の画素と称し、反対側の画素を末尾の画素と称する。 FIG. 3B is a diagram schematically showing processing line rotation data created by rotating a processing line. “Rotate” here refers to moving each gradation value of a processing line composed of gradation values of pixels for one row as a gradation value of pixels shifted by a predetermined number of pixels in a predetermined direction parallel to the row direction. In addition, the gradation value overflowing at one end in the predetermined direction is added as the gradation value of the pixel at the other end. Here, among the pixels in each row, the leftmost pixel in FIG. 3 is referred to as the first pixel, and the opposite pixel is referred to as the last pixel.
図3(b)では、末尾から先頭方向(図3に向かって左方向)に3画素分ローテートする場合を例にとって図示している。上述したように、各画素の階調値を、それぞれ、3画素分先頭側の画素の階調値として移動させると、一行の先頭側において、3画素分の階調値があふれるので、このあふれた3画素分の階調値は、一行の末尾に付加するのである。このようにして処理ラインローテートデータが作成される。 FIG. 3B illustrates an example in which rotation is performed by three pixels from the end toward the top (leftward as viewed in FIG. 3). As described above, if the gradation value of each pixel is moved as the gradation value of the pixel on the leading side for three pixels, the gradation value for three pixels overflows on the leading side of one row. The gradation values for the three pixels are added to the end of one line. In this way, processing line rotation data is created.
図3(c)は、比較ラインと、処理ラインローテートデータとを並べて示す図であり、比較ラインと、処理ラインローテートデータとが一致する関係にある場合を図示している。すなわち、比較ラインを構成する各画素の階調値と、処理ラインローテートデータを構成する各画素の階調値とを、行方向における位置が等しい画素同士で比較した場合、全ての画素の階調値が一致する関係にある。 FIG. 3C is a diagram showing the comparison line and the processing line rotation data side by side, and illustrates the case where the comparison line and the processing line rotation data are in a matching relationship. That is, when the gradation value of each pixel constituting the comparison line and the gradation value of each pixel constituting the processing line rotation data are compared between pixels having the same position in the row direction, the gradation of all the pixels The values match.
上述したように、マゼンダの二値化データで形成される万線パターンは、一行の色材定着領域が、その一行前の色材定着領域よりも、3画素分末尾方向(図3に向かって右側)に移動することにより、形成されているパターンである。よって、処理ラインの階調値と比較ラインの階調値とを、そのまま各画素毎に比較すると、それらが一致すると判断される可能性は低い。 As described above, the line pattern formed by the magenta binarized data has one line of the color material fixing area in the end direction of three pixels (toward FIG. 3) than the color material fixing area of the previous line. The pattern is formed by moving to the right). Therefore, if the gradation value of the processing line and the gradation value of the comparison line are directly compared for each pixel, it is unlikely that they are determined to match.
これに対し、本実施形態では、処理ラインを、先頭側に3画素分ローテートさせた処理ラインローテートデータを作成し、その処理ラインローテートデータの階調値と、比較ラインの階調値とを比較することとしているので、図3(c)に示すように、両者が一致すると判断される可能性は高くなるのである。そして、両者が一致すると判断された場合は、展開回数カウンタ138(図1参照)の値に1を加算する。 On the other hand, in this embodiment, processing line rotation data is generated by rotating the processing line by three pixels to the head side, and the gradation value of the processing line rotation data is compared with the gradation value of the comparison line. Therefore, as shown in FIG. 3C, there is a high possibility that both are determined to match. If it is determined that the two match, 1 is added to the value of the expansion counter 138 (see FIG. 1).
このようにして、二値化データの各行の行データを、全ての行に渡って、それぞれの行の一行前の行データ(比較ライン)と比較する。なお、ここでいう行データとは、一行分の画素の階調値から構成されるデータのことであり、二値化データから読み出された一行分のデータと、その一行分のデータを元に作成された処理ラインローテートデータを含む意味である。図3においては、2行目以降の全ての処理ラインローテートデータが、比較ラインと一致すると判断された場合について説明する。 In this way, the row data of each row of the binarized data is compared with the row data (comparison line) one row before each row over all rows. The row data here is data composed of the gradation values of the pixels for one row, and the data for one row read from the binarized data and the data for the one row are based on the data. This means that the processing line rotation data created in the above is included. In FIG. 3, a case will be described in which it is determined that all the processing line rotation data in the second and subsequent rows match the comparison line.
図3(d)は、複数行の二値化データが、一行分圧縮データと、その一行分圧縮データの展開回数とに圧縮された例を模式的に示している。すなわち、一行分圧縮データの元となった行以降に、比較ラインと一致すると判断された処理ラインローテートデータの行数(ここでは、10)が、一行分圧縮データと対応付けて圧縮データとして記憶されることとなる。このようにすれば、処理が簡単であって、高速で処理ができると共に、複数行の二値化データを高い圧縮率で圧縮することができる。 FIG. 3D schematically shows an example in which a plurality of lines of binarized data are compressed into one line of compressed data and the number of expansions of the one line of compressed data. That is, the number of lines (in this case, 10) of the processing line rotation data determined to match the comparison line after the line that is the source of the compressed data for one line is stored as compressed data in association with the compressed data for one line. Will be. In this way, the processing is simple, the processing can be performed at high speed, and the binary data of a plurality of rows can be compressed at a high compression rate.
図4(a)は、圧縮データ記憶エリア139に記憶される圧縮データを模式的に示す図である。図4(a)に示すように、圧縮データは、ローテート方向1381と、ローテート量1382と、圧縮データ本体1383とから構成される。ローテート方向1381は、処理ラインから処理ラインローテートデータを作成する際に、処理ラインの各階調値をローテートさせた方向を示す情報である。また、ローテート量は、処理ラインから処理ラインローテートデータを作成する際に、処理ラインの階調値を何画素分ローテートさせたかを示す情報である。このローテート方向1381およびローテート量1382は、圧縮データを受け取った装置において参照され、圧縮データを展開する展開処理(図9参照)において用いられる。
FIG. 4A is a diagram schematically showing compressed data stored in the compressed
図4(b)は、圧縮データ本体1383を模式的に示す図である。図4(b)に示すように、圧縮データ本体1383は、前ライン参照フラグ1385と、データサイズ1386と、一行分圧縮データ1387と、展開回数1388とが含まれたデータである。
FIG. 4B is a diagram schematically showing the compressed data
前ライン参照フラグ1385には、「オン」または「オフ」の値が格納される。前ライン参照フラグ1385がオフとなっている場合、その前ライン参照フラグ1385には、データサイズ1386と、一行分圧縮データ1387とが続けて記憶される。データサイズ1386は、その直後に続く一行分圧縮データ1387のデータサイズを示す情報である。一行分圧縮データ1387は、一行分の行データが、ランレングス圧縮されることにより作成されたデータである。
The previous
一方、前ライン参照フラグ1385がオンとなっている場合、その次に続くデータは、展開回数1388である。そして、その展開回数1388は、前ライン参照フラグ1385の直前の一行分圧縮データ1387を元にして、展開することができる行数を示す情報である。
On the other hand, when the previous
図1に戻り説明する。ハードディスクドライブ14(以下、HDD14と称する)は、書換可能な記憶装置であり、図7および図8のフローチャートに示す処理をPC10に実行させるプリンタドライバ141と、シアンの階調値を二値化処理するためのディザマトリクスを含むC用ディザデータ142と、マゼンダの階調値を二値化処理するためのディザマトリクスを含むM用ディザデータ143と、イエローの階調値を二値化処理するためのディザマトリクスを含むY用ディザデータ144と、ブラックの階調値を二値化処理するためのディザマトリクスを含むK用ディザデータ145とが設けられている。
Returning to FIG. The hard disk drive 14 (hereinafter referred to as the HDD 14) is a rewritable storage device, and a
なお、各ディザデータ142,143,144,145は、それぞれ万線パターンを形成するディザマトリクスであるが、C,M,Y,Kの各色が形成するパターンが互いに干渉して干渉縞が生じることを防止ために、それぞれのディザマトリクスが形成するディザパターンの角度θが、互いに所定の角度を有して異なるように、各色のディザマトリクスが設定されている。
Each of the
図5を参照して、ディザデータの構成について説明する。図5は、M用ディザデータ143の構成を模式的に示す図である。図5に示すように、M用ディザデータ143は、ディザID1431、ローテート方向1432、ローテート量1433、色変換データのうち、マゼンダの階調値を二値化するために用いられるディザマトリクス1434とを含んで構成されている。ディザID1431は、各ディザデータ142,143,144,145を識別するために付与された符号である。
The configuration of dither data will be described with reference to FIG. FIG. 5 is a diagram schematically showing the configuration of the
ローテート方向1432と、ローテート量1433とは、二値化データを圧縮処理する際に参照されるデータである。図3を参照して説明したように、ディザマトリクス1434が形成する万線パターンにおいて、各行のパターンが、一行上の行のパターンに対し、例えば、先頭から末尾側へ3画素分ずれたパターンである場合、各行のパターンと一行上の行のパターンとを一致させるためには、一行の階調値を、末尾から先頭側へ3画素分移動させればよい。この場合、ローテート方向1432には、末尾から先頭側への方向が記憶され、ローテート量1433には3画素が記憶される。このようにすれば、ローテート方向1432とローテート量1433に従って作成された処理ラインローテートデータは、比較ラインと一致する可能性が高くなる。このローテート方向1432とローテート量1433とは、ディザパターンの角度θに応じて、各ディザデータ毎にそれぞれ特有の値が定められている。
The
ディザマトリクス1434は、例えば、40×40のマトリクスの各々に、各画素の階調値を「ドットオン」または「ドットオフ」のいずれかに変換するための閾値が設定されたデータであり、図7に示す二値化処理(S4)に用いられるデータである。
The
図1に戻り説明する。入力装置15は、PC10にデータ又はコマンドを入力するものであり、キーボード、マウスなどにより構成されている。表示装置16は、PC10で実行される処理内容や入力されたデータなどを視覚的に確認するために、文字や画像などを表示するものであり、例えば、CRTディスプレイや液晶ディスプレイなどにより構成されている。I/F18は、PC10とプリンタ50とを接続するものであり、PC10は、このI/F18を介することにより、後述する圧縮処理(図8参照)で圧縮した圧縮データをプリンタ50に送信し、プリンタ50に印刷を実行させることができる。
Returning to FIG. The
なお、図1には、1台のPC10とプリンタ50とが直接接続された状態を図示しているが、ネットワークを介し、複数のPC10が1台のプリンタ50を共用する構成であっても良い。
Although FIG. 1 illustrates a state where one
また、図1に示すように、プリンタ50は、CPU51と、ROM52と、RAM53とを備えており、これらはバスライン201を介して互いに接続されている。また、バスライン201は、入出力ポート59にも接続されている。この入出力ポート59には、PC10と接続するためのI/F57と、画像形成ユニット56とが接続されている。
As shown in FIG. 1, the
プリンタ50における上記のような構成において、CPU51は、プリンタ50の動作を制御するものであり、図9のフローチャートで示す処理を実行するプログラムなどの各種プログラムを実行する。ROM52は、プリンタ50の動作を制御するためのプログラムなどが格納されたメモリである。ここで、図9のフローチャートで示す処理を実行するプログラムは、このROM52内に格納されている。
In the configuration as described above in the
RAM53は、CPU51の処理に必要なデータなどを一時的に記憶するための読み書き可能なメモリであり、圧縮データ記憶エリア531と、展開データ記憶エリア532と、参照ラインローテートデータ記憶エリア533とが設けられている。圧縮データ記憶エリア531は、PC10から入力された圧縮データ(図4(a)参照)が記憶されるエリアである。展開データ記憶エリア532は、圧縮データ記憶エリア531に記憶された圧縮データを展開して作成された展開データが記憶されるエリアである。参照ラインローテートデータ記憶エリア533は、展開データ記憶エリア532に記憶された展開データのうち、参照ラインをローテートすることにより作成された参照ラインローテートデータが記憶されるエリアである。
The
図6を参照して、参照ラインと、参照ラインローテートデータとについて説明する。図6は、一行の参照ラインから複数行のデータが展開されるまでの流れを模式的に示す図である。図6(a)は、展開データ記憶エリア532に格納された一行分のデータを模式的に示す図である。まず、この一行分のデータが参照ラインとされる。 With reference to FIG. 6, the reference line and the reference line rotation data will be described. FIG. 6 is a diagram schematically illustrating a flow from the development of a plurality of rows of data from one row of reference lines. FIG. 6A is a diagram schematically showing one line of data stored in the expanded data storage area 532. First, this one line of data is used as a reference line.
図6(b)は、参照ラインと、その参照ラインをローテートして作成された参照ラインローテートデータとを模式的に示す図である。図6(b)では、参照ラインの各画素の階調値が、先頭から末尾方向(図6に向かって右方向)に3画素分ローテートされた場合を例にとって図示している。各画素の階調値を、それぞれ、3画素分末尾側の画素の階調値として移動させると、一行の末尾において、3画素分の階調値があふれるので、このあふれた3画素分の階調値は、一行の先頭に付加される。なお、このローテートにおけるローテート方向は、圧縮データに含まれるローテート方向1381と逆方向である。また、このローテートにおけるローテート量は、圧縮データに含まれるローテート量1382と等しい量である(図4(a)参照)。
FIG. 6B is a diagram schematically showing the reference line and the reference line rotation data created by rotating the reference line. FIG. 6B illustrates an example in which the gradation value of each pixel on the reference line is rotated by three pixels from the beginning to the end (rightward in FIG. 6). If the gradation value of each pixel is moved as the gradation value of the pixel on the end side by three pixels, the gradation value for three pixels overflows at the end of one line. The key value is added to the head of one line. Note that the rotation direction in this rotation is opposite to the
このようにして作成された参照ラインローテートデータは、一行分の展開データとして、展開データ記憶エリア532に記憶される。次に、図6(c)に示すように、展開データ記憶エリア532に記憶された展開データのうち、最新の一行分の展開データが参照ラインとされる。そして、参照ラインに基づいて、同様の処理により参照ラインローテートデータが作成され、その参照ラインローテートデータが、展開データ記憶エリア532に記憶される。このようにして、図6(d),図6(e)に示すように処理を繰り返す。この繰り返し回数は、圧縮データに含まれる展開回数1388(図4(b)参照)に基づいて定められる。 The reference line rotate data created in this way is stored in the expanded data storage area 532 as expanded data for one line. Next, as shown in FIG. 6C, among the expanded data stored in the expanded data storage area 532, the latest expanded data for one line is used as a reference line. Then, based on the reference line, reference line rotation data is created by the same processing, and the reference line rotation data is stored in the expanded data storage area 532. In this way, the process is repeated as shown in FIGS. 6 (d) and 6 (e). The number of repetitions is determined based on the number of expansions 1388 (see FIG. 4B) included in the compressed data.
図6(f)は、展開回数1388に基づいて定められる繰り返し回数で、処理を繰り返した結果、得られた展開データを模式的に示す図である。ここで、この展開データのうち、一行目は、圧縮データに含まれる一行分圧縮データ1387(図4(b)参照)を展開することにより得られたデータである。その一行分圧縮データ1387に続く展開回数1388として「10」が記憶されていた場合、参照ラインローテートデータを作成し、展開データ記憶エリア532(図1参照)に記憶する処理が10回繰り返される。このようにすれば、一行分圧縮データ1387と、展開回数1388とに基づいて、1行目から11行目までの展開データが作成される。そして、展開回数1388分の繰り返しを終了すると、圧縮データから次の一行分圧縮データ1387(図4(b)参照)が取得され、その一行分圧縮データ1387を展開する処理が繰り返されるのである。
FIG. 6F is a diagram schematically showing the developed data obtained as a result of repeating the process with the number of repetitions determined based on the number of
図1に戻り説明する。プリンタ50はいわゆるレーザプリンタであって、画像形成ユニット56は、感光体ドラム、帯電器、露光ユニット、現像ユニットを備える。感光体ドラムの表面を帯電器によって一様に帯電させ、露光ユニットからデータに従って光を照射して、感光体ドラムの表面に静電潜像を形成させる。次に、この感光体ドラムの表面に、現像剤(色材)を付着させ、感光体ドラムの表面の静電潜像を可視像化させる。そして、感光体ドラムの回転に伴って、可視化された現像剤像を転写位置に移動させる。そして、図示しない給紙ローラおよび搬送ローラなどにより、転写位置に記録用紙が供給されると、転写ローラと感光体ドラムとの間にバイアスを印加させ、現像剤像を記録用紙に転写する。そして記録用紙上に現像剤像を加熱、加圧して定着させることにより、記録用紙に画像を形成するのである。なお、本実施形態では、プリンタ50がレーザプリンタであるものとして説明するが、プリンタ50は、昇華型プリンタ、インクジェットプリンタなど、他の方式のプリンタで構成されるものでも良い。
Returning to FIG. The
次に、図7および図8のフローチャートを参照して、上記のように構成されるPC10において実行される、画像データ送信処理について説明する。
Next, the image data transmission process executed in the
図7は、PC10において実行される画像データ送信処理を示すフローチャートである。この画像データ送信処理は、PC10において、ユーザから印刷指示がされることにより、印刷対象画像のデータが入力データ記憶エリア131(図1参照)に入力されると起動する処理である。まず、入力データ記憶エリア131に入力された入力データに色変換処理を施す(S2)。そして、色変換処理により得られた色変換データを、ディザマトリクスを用いて二値化処理する(S4)。なお、上述したように、C,M,Y,Kの各色について、予め各色毎のディザデータ142,143,144,145が記憶されており、この二値化処理では、対応する色のディザデータ142,143,144,145が読み出される。
FIG. 7 is a flowchart showing image data transmission processing executed in the
次に、二値化処理(S4)により得られた二値化データを圧縮する圧縮処理を実行する(S6)。なお、この圧縮処理については、図8を参照して後述する。そして、圧縮処理により得られた圧縮データをプリンタ50へ送信する(S8)。圧縮処理(S8)により、高い圧縮率でデータが圧縮されるので、プリンタ50へのデータ送信を短時間で行うことができる。
Next, a compression process for compressing the binarized data obtained by the binarization process (S4) is executed (S6). This compression processing will be described later with reference to FIG. Then, the compressed data obtained by the compression process is transmitted to the printer 50 (S8). Since the data is compressed at a high compression rate by the compression process (S8), data transmission to the
図8を参照して、圧縮処理について説明する。図8は、PC10において実行される圧縮処理を示すフローチャートであり、二値化データ記憶エリア133に記憶された二値化データを圧縮する処理である。上述したように、二値化データは、C,M,Y,Kの各色について作成されるが、図8に示すフローチャートは、1色の二値化データを圧縮する処理を示している。すなわち、この圧縮処理を、4色の二値化データの各々について実行することで、4色全ての二値化データが圧縮されることとなる。ここでは、マゼンダの二値化データを圧縮処理する場合について説明するが、他の色でも同様の処理が行われる。
The compression process will be described with reference to FIG. FIG. 8 is a flowchart showing compression processing executed in the
まず、二値化処理(S6)に用いたディザマトリクスに対応するローテート方向とローテート量とを取得し、圧縮データ記憶エリア139に記憶する(S860)。 First, the rotation direction and rotation amount corresponding to the dither matrix used in the binarization process (S6) are acquired and stored in the compressed data storage area 139 (S860).
ここでは、マゼンダの二値化データを圧縮する場合について説明しているので、M用ディザデータ143からローテート方向1432とローテート量1433(図5参照)が取得される。取得したローテート方向1432とローテート量1433は、圧縮データを構成するローテート方向1381とローテート量1382(図4(a)参照)として、圧縮データ記憶エリア139に記憶される。
Here, since the case of compressing the magenta binarized data is described, the
次に、処理ライン数を「1」とする(S862)。そして、処理ライン数で指定される行の行データを、二値化データ記憶エリア133から取得し、処理ライン記憶エリア134に記憶する(S864)。次に、その処理ラインが1行目か否かを判断する(S866)。最初は、処理ラインが1行目と判断され(S866:Yes)、S874の処理に移行する。 Next, the number of processing lines is set to “1” (S862). Then, the row data of the row designated by the number of processing lines is acquired from the binarized data storage area 133 and stored in the processing line storage area 134 (S864). Next, it is determined whether or not the processing line is the first line (S866). Initially, the processing line is determined to be the first line (S866: Yes), and the process proceeds to S874.
そして、展開回数カウンタ138の値を「0」とし(S874)、処理ラインを比較ラインとして、比較ライン記憶エリア136(図1参照)に書き込む(S876)。次に、処理ラインをランレングス圧縮して一行分圧縮データ1387(図4(b)参照)を作成し、前ライン参照フラグ1385をオフとして、一行分圧縮データ1387のデータサイズを示すデータサイズ1386と共に、圧縮データ記憶エリア139に記憶する(S878)。これにより、二値化データのうち1行目のデータが圧縮される。
Then, the value of the
次に、処理ライン数に「1」を加算し(S880)、全行の処理を終了したか否かを判断する(S882)。全行の処理を終了していない場合(S882:No)、S864の処理に戻り、次の行の行データを処理ラインとして取得する(S864)。この行は1ライン目ではないので(S886:No)、次に、処理ラインから処理ラインローテートデータを作成し、処理ラインローテートデータ記憶エリア135に記憶する(S868)。ここで、処理ラインは、S860の処理で取得されたローテート方向と、ローテート量に従って、ローテートされる。 Next, “1” is added to the number of processing lines (S880), and it is determined whether or not the processing of all rows has been completed (S882). If all the lines have not been processed (S882: No), the process returns to S864, and the line data of the next line is acquired as a process line (S864). Since this line is not the first line (S886: No), next, process line rotate data is created from the process line and stored in the process line rotate data storage area 135 (S868). Here, the processing line is rotated according to the rotation direction and the rotation amount acquired in the processing of S860.
次に、処理ラインローテートデータ記憶エリア135に記憶された処理ラインローテートデータと、比較ライン記憶エリア136に記憶された比較ラインとを比較し、両者が一致するか否かを判断する(S870)。すなわち、図3を参照して説明したように、処理ラインをローテートして作成された処理ラインローテートデータと、その処理ラインの一行前の行データである比較ラインとが一致するか否かを判断する。
Next, the processing line rotation data stored in the processing line rotation
処理ラインローテートデータと、比較ラインとが一致する場合(S870:Yes)、展開回数カウンタ138の値に「1」加算する(S884)。次に、処理ライン記憶エリア134に記憶された処理ラインを、次の比較ラインとして比較ライン記憶エリア136に書き込む(S886)。そして、処理ライン数に「1」を加算して(S880)、全行の処理が終了しない間(S882)、S864に戻り処理を繰り返す。このようにして、処理ラインローテートデータと比較ラインとが一致すると判断される間(S870:Yes)、展開回数カウンタ138の値に「1」加算する(S884)。すなわち、処理ラインローテートデータと比較ラインとが一致すると連続して判断された回数を、カウントする。
When the processing line rotation data matches the comparison line (S870: Yes), “1” is added to the value of the development counter 138 (S884). Next, the processing line stored in the processing
このようにして処理を繰り返すうちに、S870の処理における比較の結果、比較ラインと処理ラインローテートデータとが一致しないと判断されると(S870:No)、前ライン参照フラグ1385(図4(b)参照)をオンとする。そして、展開回数カウンタ138の値を、展開回数1388(図4(b)参照)として、前ライン参照フラグ1385と共に、圧縮データとして、圧縮データ記憶エリア139に記憶する(S872)。このようにすれば、展開回数1388は、比較ラインと、処理ラインローテートデータとが一致しないと判断されるまでの間に、比較ラインと、処理ラインローテートデータとが一致すると、連続して判断された処理ラインローテートデータの行数を示す値となる。
While the process is repeated in this manner, if it is determined that the comparison line and the process line rotate data do not match as a result of the comparison in S870 (S870: No), the previous line reference flag 1385 (FIG. 4B) )) Is turned on. Then, the value of the
次に、展開回数カウンタ138の値を「0」として(S874)、処理ラインを、比較ラインとして比較ライン記憶エリア136に書き込み(S876)、処理ラインをランレングス圧縮して、一行分圧縮データを作成する。そして、前ライン参照フラグ1385(図4(b)参照)をオフとして、データサイズ1386と共に、一行分圧縮データを圧縮データ記憶エリア139に記憶する(S878)。すなわち、比較ラインと、処理ラインローテートデータとが一致しないと判断された場合(S870:No)、その処理ラインローテートデータを作成する際に用いた処理ラインが、ランレングス圧縮(特許請求の範囲に記載の所定のアルゴリズムで圧縮)されて、一行分圧縮データ1387として、圧縮データ記憶エリア139に記憶される。
Next, the value of the
このようにして処理を繰り返す内に全行の処理を終了すると(S882:Yes)、次に、展開回数カウンタ138の値が「0」であるか否かを判断し(S888)、展開回数カウンタ138の値が「0」である場合(S888:Yes)、そのまま処理を終了する。一方、展開回数カウンタ138の値が「0」ではない場合(S888:No)、前ライン参照フラグ1385をオンとし、展開回数カウンタ138の値を展開回数1388として、前ライン参照フラグ1385と共に圧縮データ記憶エリア139に記憶して(S890)、処理を終了する。
When the processing for all the lines is completed while repeating the processing in this way (S882: Yes), it is next determined whether or not the value of the
このように、上記圧縮処理(S6)によれば、比較ラインと、処理ラインローテートデータとが一致すると判断された場合、一行前の行データと一致することを示す展開回数1388(図4参照)が記憶されるので、処理が簡単であって、高速で処理できる。また、この展開回数1388は、比較ラインと一致すると判断された処理ラインローテートデータの行数であるので、比較データと一致すると判断された処理ラインローテートデータの行数が多数であっても、展開回数1388のデータサイズは小さく、高い圧縮率が得られる。
As described above, according to the compression process (S6), when it is determined that the comparison line and the process line rotate data match, the number of
また、比較ラインと、処理ラインローテートデータとが一致しないと判断された場合、その処理ラインローテートデータを作成する際に用いた行データが所定のアルゴリズムで圧縮され、一行分圧縮データとして記憶されるので、高い圧縮率でデータを圧縮することができる。 If it is determined that the comparison line and the processing line rotation data do not match, the row data used to create the processing line rotation data is compressed by a predetermined algorithm and stored as compressed data for one line. Therefore, data can be compressed at a high compression rate.
また、上述の実施形態で説明したマゼンダを二値化処理するために用いられたディザマトリクスは、斜め万線パターンを形成するものであったので、比較ラインと、処理ラインローテートデータとが一致すると判断される可能性が高く、高い圧縮率が得られる。 In addition, since the dither matrix used for binarizing magenta described in the above embodiment forms a diagonal line pattern, the comparison line matches the processing line rotation data. The possibility of being judged is high, and a high compression rate is obtained.
また、二値化処理(S4)において用いられたディザマトリクスに対応したローテート方向1432とローテート量1433とが取得され、比較処理を行う行の行データを構成する階調値の各々が、ローテート方向1432に基づく方向に、ローテート量1433に基づく画素数分ローテートされたローテートデータが作成されるので、比較ラインと、処理ラインローテートデータとが一致すると判断される可能性が高く、高い圧縮率が得られる。また、各色用のディザデータ毎に、ディザパターンの角度θに応じたローテート方向とローテート量とが定められているので、どのようなタイプの万線パターンにおいても、高い圧縮率を得ることができる。
Further, the
次に、図9のフローチャートを参照して、展開処理について説明する。図9は、プリンタ50において実行される展開処理を示すフローチャートである。この展開処理は、PC10において上述の圧縮処理(S6)で圧縮された圧縮データが、PC10からプリンタ50に送信された場合に、プリンタ50で実行される処理である。なお、PC50において、受信した圧縮データは、圧縮データ記憶エリア531に記憶される。また、上述したように、圧縮データは、C,M,Y,Kの各色について作成されているが、図9に示すフローチャートは、1色の圧縮データを展開する処理を示している。すなわち、この展開処理を、4色の圧縮データの各々について実行することで、4色全ての圧縮データが展開されることとなる。ここでは、マゼンダの圧縮データを展開処理する場合について説明するが、他の色でも同様の処理が行われる。
Next, the expansion process will be described with reference to the flowchart of FIG. FIG. 9 is a flowchart showing a developing process executed in the
まず、圧縮データから、ローテート方向1381とローテート量1382(図4(a)参照)とを取得する(S902)。そして、圧縮データに含まれる圧縮データ本体1383(図4(b)参照)を先頭から調べ、先頭の前ライン参照フラグ1385がオンか否かを判断する(S904)。現在、一番最初のループであるので先頭の前ライン参照フラグ1385はオフゆえ(S904:No)、次に一行分圧縮データ1387を展開する(S906)。そして、展開したデータを、展開データ記憶エリア532に記憶する(S908)。
First, the
次に、圧縮データを全て処理したか否かを判断し(S910)、未だ全てを処理していない場合(S910:No)、S904に戻り、圧縮データ本体1383に含まれる次の前ライン参照フラグ1385がオンであるか否かを判断する。ここでは、前ライン参照フラグ1385がオンであった場合について説明する。前ライン参照フラグ1385がオンであった場合(S904:Yes)、その前ライン参照フラグ1385の後ろには、展開回数1388(図4(b)参照)が記憶されているから、その展開回数1388を取得する(S912)。ここで、上述の圧縮処理で説明したように、展開回数1388は、その直前の一行分圧縮データ1387を元にして展開することができる行数を示す値である。
Next, it is determined whether or not all the compressed data has been processed (S910). If not all have been processed (S910: No), the process returns to S904, and the next previous line reference flag included in the compressed data
次に、展開数を「1」とする(S914)。そして、展開データ記憶エリア532に直近に書き込まれた一行分の展開データを、参照ラインとして取得する(S916)。すなわち、直前の一行分圧縮データ1387を元にして展開された一行分の展開データを参照ラインとする。
Next, the number of expansions is set to “1” (S914). Then, the development data for one line most recently written in the development data storage area 532 is acquired as a reference line (S916). That is, the expanded data for one line expanded based on the
次に、圧縮データから取得したローテート方向1381とローテート量1382とに基づいて、参照ラインをローテートし、参照ラインローテートデータを作成する(S918)。ここで、例えば、ローテート方向1381が、末尾から先頭方向を示していた場合、それは、圧縮処理において、処理ラインローテートデータを作成する際に、一行分の画素の階調値を、末尾から先頭方向へ所定画素ずつ移動させたことを示している。よって、ここで、参照ラインをローテートする際には、ローテート方向1381で示される方向と逆方向に、参照ラインをローテートし、参照ラインローテートデータが作成される(図6(b)参照)。そして、作成した参照ラインローテートデータは、参照ラインローテートデータ記憶エリアに記憶される(S920)。
Next, the reference line is rotated based on the
次に、展開数に「1」を加算し(S922)、展開数が、展開回数1388よりも大となったか否かを判断する(S924)。 Next, “1” is added to the number of expansions (S922), and it is determined whether or not the number of expansions is greater than the number of expansions 1388 (S924).
展開数が展開回数1388以下である場合(S924:No)、S916に戻り処理を繰り返す。すなわち、展開データ記憶エリア532に直近に書き込まれた一行分の展開データ(直近に作成された参照ラインローテートデータ)を、参照ラインとして取得し(S916)、その参照ラインを元に、参照ラインローテートデータを作成し(S920)、その参照ラインローテートデータを、展開データ記憶エリア532に記憶する。このような処理を、展開回数1388に等しい回数分繰り返すことにより、展開回数1388と等しい行数の展開データが得られる。
When the number of expansions is equal to or less than the number of expansions 1388 (S924: No), the process returns to S916 and repeats the process. That is, the development data for one line most recently written in the development data storage area 532 (reference line rotation data created most recently) is acquired as a reference line (S916), and the reference line rotation is performed based on the reference line. Data is created (S 920), and the reference line rotate data is stored in the expanded data storage area 532. By repeating such processing as many times as the number of
このようにして処理を繰り返すうちに、展開回数1388が展開数よりも大となると(S924:Yes)、次に圧縮データを全て処理したか否かを判断し(S910)、圧縮データを全て処理し終えてない場合は(S910:No)、S904にもどる。
If the number of
このようにして処理を繰り返すうちに、圧縮データを全て処理し終えると(S910:Yes)、展開処理を終了する。 When all the compressed data has been processed while the processing is repeated in this way (S910: Yes), the decompression processing ends.
展開処理によれば、図8を参照して説明した圧縮処理(S6)にて圧縮されたデータを、簡単な処理で展開することができる。よって、プリンタ50のCPU51の処理能力がそれほど高くなくても展開処理を実行することができるので、安価なプリンタ50を使用することができる。
According to the expansion process, the data compressed in the compression process (S6) described with reference to FIG. 8 can be expanded with a simple process. Therefore, the developing process can be executed even if the processing capacity of the
以上、実施形態に基づき本発明を説明したが、本発明は上述した実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変更が可能であることは容易に推察できるものである。 The present invention has been described above based on the embodiments. However, the present invention is not limited to the above-described embodiments, and various modifications and changes can be easily made without departing from the spirit of the present invention. Can be inferred.
例えば、上述した実施形態では、PC10からプリンタ50にデータを送信する場合に、圧縮処理(S6)が実行されるものとして説明したが、プリンタ50以外の装置に送信する場合に、圧縮処理(S6)が実行されても良い。
For example, in the above-described embodiment, it has been described that the compression process (S6) is performed when data is transmitted from the
また、上述した実施形態では、処理ラインローテートデータの作成の際、および参照ラインローテートデータの作成の際には、ローテート量を3画素分とし、3画素分の階調値を移動させていた。このローテート量は、ディザパターンの角度θに応じた量とされる。例えば、ディザパターンの角度θが45°である万線パターンでは、1行ずれる毎に1画素分ずれたパターンが形成る。よって、圧縮処理(S6)においては、処理ラインを構成する階調値の各々を、1画素ずつローテートさせて処理ラインローテートデータを作成することで、ディザパターンの角度θが45°の万線パターンが形成されるディザマトリクスが用いられた場合でも、高い圧縮率を得ることができる。 In the above-described embodiment, when the processing line rotation data is created and when the reference line rotation data is created, the rotation amount is set to 3 pixels, and the gradation values for 3 pixels are moved. This rotation amount is an amount corresponding to the angle θ of the dither pattern. For example, in a line pattern in which the dither pattern angle θ is 45 °, a pattern shifted by one pixel is formed every time one line is shifted. Therefore, in the compression process (S6), each gradation value constituting the processing line is rotated pixel by pixel to create processing line rotation data, thereby creating a line pattern having a dither pattern angle θ of 45 °. Even when a dither matrix in which is formed is used, a high compression ratio can be obtained.
10 PC(画像処理装置の一例)
136 比較ライン記憶エリア(比較対象データ記憶手段の一例)
1381 ローテート方向(ローテート方向情報の一例)
1382 ローテート量(ローテート量情報の一例)
141 プリンタドライバ(画像処理プログラムの一例)
1434 ディザマトリクスの一例
S4 二値化処理(階調変換手段,階調変換ステップの一例)
S6 圧縮処理(圧縮手段、圧縮ステップの一例)
S860 ローテート条件取得手段、ローテート条件取得ステップの一例
S860 ローテート条件記憶手段、ローテート条件記憶ステップの一例
S868 比較用ローテートデータ作成手段、比較用ローテートデータ作成ステップの一例
S862〜S882 比較手段、比較ステップの一例
S872 一行前一致データ記憶手段、一行前一致データ記憶ステップの一例
S876,S886 比較対象データ記憶ステップ
S878 圧縮データ記憶手段、圧縮データ記憶ステップの一例
10 PC (an example of an image processing apparatus)
136 Comparison line storage area (an example of comparison target data storage means)
1381 Rotate direction (an example of rotate direction information)
1382 Rotate amount (an example of rotate amount information)
141 Printer driver (an example of an image processing program)
1434 Example of Dither Matrix S4 Binarization (Example of Tone Conversion Means, Tone Conversion Step)
S6 Compression processing (example of compression means and compression step)
S860 Example of rotation condition acquisition means and rotation condition acquisition step S860 Example of rotation condition storage means and rotation condition storage step S868 Example of comparison rotation data creation means and comparison rotation data creation step S862 to S882 Example of comparison means and comparison step S872 One-line-preceding coincidence data storage means, example of one-line-preceding coincidence data storage step S876, S886 Comparison target data storage step S878 Example of compressed data storage means, compressed data storage step
Claims (12)
前記画像データの各行の行データを、それぞれの行の一行前の行データと比較する比較手段を備え、
前記比較手段は、
比較処理を行う行の一行前の行データを比較対象データとして記憶する比較対象データ記憶手段と、
比較処理を行う行の行データを構成する階調値の各々を、行方向に平行な所定の方向に、所定画素分ローテートさせたローテートデータを作成する、比較用ローテートデータ作成手段とを備え、
前記圧縮手段は、
前記比較手段による比較の結果、前記比較対象データと、前記ローテートデータとが一致すると判断された場合、一行前の行データと一致することを示す情報を、一行前一致データとして記憶する一行前一致データ記憶手段を備えたことを特徴とする画像処理装置。 A gradation conversion unit that converts the gradation value of each pixel constituting the multi-gradation image into a gradation value of two gradations using a dither matrix, and a pixel of one row converted by the gradation conversion unit In an image processing apparatus comprising compression means for compressing image data composed of a plurality of lines of line data composed of gradation values,
Comparing means for comparing the row data of each row of the image data with the row data of the previous row of each row,
The comparison means includes
Comparison target data storage means for storing the row data of the row before the row to be compared as comparison target data;
A rotation data creation unit for comparison that creates rotation data in which each of the gradation values constituting the row data of the row to be compared is rotated by a predetermined number of pixels in a predetermined direction parallel to the row direction;
The compression means includes
As a result of the comparison by the comparison means, when it is determined that the comparison target data and the rotate data match, information indicating that the data matches with the previous row data is stored as the previous row match data. An image processing apparatus comprising data storage means.
前記比較手段による比較の結果、前記比較対象データと、前記ローテートデータとが一致しないと判断された場合、そのローテートデータを作成する際に用いた行データを所定のアルゴリズムで圧縮して一行分圧縮データとして記憶する圧縮データ記憶手段を備えたものであることを特徴とする請求項1記載の画像処理装置。 The compression means includes
As a result of comparison by the comparison means, if it is determined that the comparison target data and the rotation data do not match, the row data used when creating the rotation data is compressed by a predetermined algorithm and compressed by one row 2. The image processing apparatus according to claim 1, further comprising compressed data storage means for storing data.
前記比較用ローテートデータ作成手段は、比較処理を行う行の行データを構成する階調値の各々を、前記ローテート方向情報に基づく方向に、前記ローテート量情報に基づく画素数分ローテートさせたローテートデータを作成するものであり、
前記圧縮手段は、前記ローテート条件取得手段により取得されたローテート方向情報とローテート量情報とを記憶するローテート条件記憶手段を備えることを特徴とする請求項1から4のいずれかに記載の画像処理装置。 Rotation condition acquisition means for acquiring rotation direction information and rotation amount information corresponding to the dither matrix used by the gradation conversion means,
The comparison rotation data creating means rotates each of the gradation values constituting the row data of the row to be compared in the direction based on the rotation direction information by the number of pixels based on the rotation amount information. Is to create
5. The image processing apparatus according to claim 1, wherein the compression unit includes a rotation condition storage unit that stores rotation direction information and rotation amount information acquired by the rotation condition acquisition unit. .
前記画像データの各行の行データを、それぞれの行の一行前の行データと比較する比較ステップを備え、
前記比較ステップは、
比較処理を行う行の一行前の行データを比較対象データとして記憶する比較対象データ記憶ステップと、
比較処理を行う行の行データを構成する階調値の各々を、行方向に平行な所定の方向に、所定画素分ローテートさせたローテートデータを作成する、比較用ローテートデータ作成ステップとを備え、
前記圧縮ステップは、
前記比較ステップによる比較の結果、前記比較対象データと、前記ローテートデータとが一致すると判断された場合、一行前の行データと一致することを示す情報を、一行前一致データとして記憶する一行前一致データ記憶ステップを備えたことを特徴とする画像処理プログラム。 This is image data obtained by converting the gradation value of each pixel constituting a multi-gradation image into a gradation value of two gradations using a dither matrix. An image processing program for causing an image processing apparatus to execute a compression step for compressing image data composed of a plurality of lines of configured line data,
A comparison step of comparing the row data of each row of the image data with the row data of the previous row of each row;
The comparison step includes
A comparison target data storage step for storing, as comparison target data, the row data preceding the row to be compared;
A rotation data creation step for comparison, which creates rotation data in which each gradation value constituting the row data of the row to be compared is rotated by a predetermined number of pixels in a predetermined direction parallel to the row direction.
The compression step includes
As a result of the comparison in the comparison step, when it is determined that the comparison target data and the rotate data match, information indicating that the data matches with the previous row data is stored as the previous row match data. An image processing program comprising a data storage step.
前記比較ステップによる比較の結果、前記比較対象データと、前記ローテートデータとが一致しないと判断された場合、そのローテートデータを作成する際に用いた行データを所定のアルゴリズムで圧縮して一行分圧縮データとして記憶する圧縮データ記憶ステップを備えたものであることを特徴とする請求項7記載の画像処理プログラム。 The compression step includes
As a result of the comparison in the comparison step, when it is determined that the comparison target data and the rotation data do not match, the row data used for creating the rotation data is compressed by a predetermined algorithm and compressed by one row 8. The image processing program according to claim 7, further comprising a compressed data storing step for storing as data.
その階調変換ステップは、万線パターンを形成するディザマトリクスを用いて、階調値を変換するものであることを特徴とする請求項7から9のいずれかに記載の画像処理プログラム。 Causing the image processing apparatus to execute a gradation conversion step of converting a gradation value of each pixel constituting a multi-gradation image into a gradation value of two gradations using a dither matrix;
10. The image processing program according to claim 7, wherein the gradation conversion step converts the gradation value using a dither matrix that forms a line pattern.
前記比較用ローテートデータ作成ステップは、比較処理を行う行の行データを構成する階調値の各々を、前記ローテート方向情報に基づく方向に、前記ローテート量情報に基づく画素数分ローテートさせたローテートデータを作成するものであり、
前記圧縮ステップは、前記ローテート条件取得ステップにより取得されたローテート方向情報とローテート量情報とを記憶するローテート条件記憶ステップを備えることを特徴とする請求項7から10のいずれかに記載の画像処理プログラム。 A rotation condition acquisition step of acquiring rotation direction information and rotation amount information corresponding to the dither matrix;
The comparison rotation data creation step is a rotation data obtained by rotating each gradation value constituting the row data of the row to be compared in the direction based on the rotation direction information by the number of pixels based on the rotation amount information. Is to create
The image processing program according to any one of claims 7 to 10, wherein the compression step includes a rotation condition storage step for storing the rotation direction information and the rotation amount information acquired by the rotation condition acquisition step. .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007021807A JP4702297B2 (en) | 2007-01-31 | 2007-01-31 | Image processing apparatus and image processing program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007021807A JP4702297B2 (en) | 2007-01-31 | 2007-01-31 | Image processing apparatus and image processing program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008187669A true JP2008187669A (en) | 2008-08-14 |
JP4702297B2 JP4702297B2 (en) | 2011-06-15 |
Family
ID=39730376
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007021807A Expired - Fee Related JP4702297B2 (en) | 2007-01-31 | 2007-01-31 | Image processing apparatus and image processing program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4702297B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8817322B2 (en) | 2012-02-28 | 2014-08-26 | Brother Kogyo Kabushiki Kaisha | Image processing apparatus for generating distortion free image data with screen angle using dither matrix |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08300744A (en) * | 1995-05-02 | 1996-11-19 | Casio Electron Mfg Co Ltd | Copy print printing device |
JP2000032276A (en) * | 1998-04-09 | 2000-01-28 | Nokia Mobile Phones Ltd | Device and method for utilizing two-dimensional data compression function through air interface |
JP2000341511A (en) * | 1999-05-26 | 2000-12-08 | Ricoh Co Ltd | Image processor |
JP2001251518A (en) * | 2000-03-06 | 2001-09-14 | Ricoh Co Ltd | Image data processor, print output device, image data compression/expansion processing method, and image data processing method |
-
2007
- 2007-01-31 JP JP2007021807A patent/JP4702297B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08300744A (en) * | 1995-05-02 | 1996-11-19 | Casio Electron Mfg Co Ltd | Copy print printing device |
JP2000032276A (en) * | 1998-04-09 | 2000-01-28 | Nokia Mobile Phones Ltd | Device and method for utilizing two-dimensional data compression function through air interface |
JP2000341511A (en) * | 1999-05-26 | 2000-12-08 | Ricoh Co Ltd | Image processor |
JP2001251518A (en) * | 2000-03-06 | 2001-09-14 | Ricoh Co Ltd | Image data processor, print output device, image data compression/expansion processing method, and image data processing method |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8817322B2 (en) | 2012-02-28 | 2014-08-26 | Brother Kogyo Kabushiki Kaisha | Image processing apparatus for generating distortion free image data with screen angle using dither matrix |
Also Published As
Publication number | Publication date |
---|---|
JP4702297B2 (en) | 2011-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8270663B2 (en) | Watermarked information embedding apparatus | |
JP4135195B2 (en) | Print processing system, print processing method, and computer-readable recording medium on which print processing control program is recorded | |
JP2006108866A (en) | Image processing apparatus | |
JP4702297B2 (en) | Image processing apparatus and image processing program | |
JP4109785B2 (en) | Image processing apparatus and method, and computer-readable memory | |
JP4356953B2 (en) | Image processing system, image processing apparatus, control method therefor, and storage medium | |
JP4514168B2 (en) | Image processing system and image processing method | |
US20060092439A1 (en) | Printer controller, image forming apparatus, image forming program | |
JP4575929B2 (en) | Print control apparatus, print control method, and print control program | |
JP4428028B2 (en) | Image processing apparatus and program for image processing | |
JP2000013601A (en) | Print information processor and device and method for generating intermediate data | |
JP4217332B2 (en) | Image processing apparatus and method, and computer-readable memory | |
JP2008252702A (en) | Image processing program and image processing apparatus | |
JP4306841B2 (en) | Image processing apparatus and method, and computer-readable memory | |
JP2006333140A (en) | Image processing apparatus and image processing method | |
JP4636145B2 (en) | Image processing apparatus and program | |
JP3636891B2 (en) | Color image output method | |
JP2007288495A (en) | Color separating method, color separation table creating method and image processing apparatus | |
US9224079B2 (en) | Image processing apparatus configured to perform pixel dithering based on dithering table and pass information | |
JPH11268352A (en) | Apparatus and method for processing image, and memory medium | |
JP2005197993A (en) | Image forming apparatus, image forming method and program | |
JP2006094489A (en) | Color image processing device | |
JP5181916B2 (en) | Image processing apparatus, compression method and decompression method | |
JP2008186110A (en) | Image processor | |
JP2014195204A (en) | Image processing unit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090330 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101116 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110114 |
|
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: 20110208 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110221 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4702297 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |