US7394569B2 - Error-diffusion image processing system and method thereof - Google Patents
Error-diffusion image processing system and method thereof Download PDFInfo
- Publication number
- US7394569B2 US7394569B2 US11/047,701 US4770105A US7394569B2 US 7394569 B2 US7394569 B2 US 7394569B2 US 4770105 A US4770105 A US 4770105A US 7394569 B2 US7394569 B2 US 7394569B2
- Authority
- US
- United States
- Prior art keywords
- block
- error
- summed
- range
- pixel
- 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.)
- Expired - Fee Related, expires
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/40—Picture signal circuits
- H04N1/405—Halftoning, i.e. converting the picture signal of a continuous-tone original into a corresponding signal showing only two levels
- H04N1/4051—Halftoning, i.e. converting the picture signal of a continuous-tone original into a corresponding signal showing only two levels producing a dispersed dots halftone pattern, the dots having substantially the same size
- H04N1/4052—Halftoning, i.e. converting the picture signal of a continuous-tone original into a corresponding signal showing only two levels producing a dispersed dots halftone pattern, the dots having substantially the same size by error diffusion, i.e. transferring the binarising error to neighbouring dot decisions
Definitions
- the invention relates to an image processing system and the method of the same.
- the invention relates to an error-diffusion image processing method that employs block reading to convert a multi-level image to a bi-level image for output and the method thereof.
- the multi-level image generally refers to a digital image created by a digital camera, scanner, or computer software.
- a monochrome image each pixel consists of at least two different levels of gray.
- a color image there are many different color planes.
- Each pixel consists of at least two different levels in each color plane.
- Either monochrome or color images are usually output via a printer or a display device.
- these output devices often describe these multi-level images in a bi-level way.
- a monochrome image can only be described using black-level and white-level.
- each color plane is described using on-level and off-level. Therefore, before a multi-level image is sent to these output devices for output, it has to be converted into a bi-level image first.
- Such a process of converting a multi-level image into a bi-level image is also called halftoning.
- the error-diffusion image processing is a widely used conventional halftoning technique.
- the conventional error-diffusion image processing is performed by row reading. That is, the operation is not performed until a whole row of image data are read in. Therefore, it takes a lot of memory space to store the image data. The operation efficiency is also lowered because of the frequent access of data in the memory.
- the invention provides an improved error-diffusion image processing system and the method thereof.
- a primary objective of the invention is to adopt a blocking reading scheme in place of the row reading scheme in the prior art for the purpose of saving memory space and increasing the operational efficiency.
- the primary technique of the invention is to solve the gap problem caused by block reading in the error-diffusion image processing technique. Hence, good image output quality of the multi-level image still remains when converted into a bi-level image.
- the improved error-diffusion image processing system includes: (a) an image partition unit; (b) an operation block processing unit; (c) a summed pixel processing unit; (d) an error-diffusion image processing unit; and (e) a storage unit.
- the improved error-diffusion image processing method executes the following operational steps via the above-mentioned system: (a) dividing a multi-level image into more than one block, each block having a position condition (i, j) and containing more than one pixel; (b) reading in sequence blocks for processing and determining an operation block range according to the position condition (i, j), thus computing the summed error of the block (BEsum); (c) determining the summed pixel range according to the position condition (i, j) of the block, adding the summed error to the summed pixel range; and (d) executing an error-diffusion calculation for each pixel in the block to determine the bi-level output of each pixel and storing the result, and computing the average error (BE) of the block and storing it.
- FIG. 1 is a system block diagram of the invention
- FIG. 2 is a flowchart of the disclosed method
- FIG. 3 is a schematic view showing the processing order and position conditions in the invention.
- FIG. 4 shows the relation among the logic rules used in the invention
- FIGS. 5A to 5F are schematic views of the logic rules used in the invention.
- FIGS. 6A and 6B compare results before and after the operation of the invention.
- FIGS. 7A and 7B compare another results before and after the operation of the invention.
- FIG. 1 A system block diagram of the invention is shown in FIG. 1 .
- the invention converts a multi-level image 10 from an external input into a bi-level image 70 .
- Main functional blocks include:
- an image partition unit 20 It is used to partition the externally input multi-level image, dividing it into many blocks of the same size. Each of the blocks contains many pixels. Each block in the partition is attributed with a fixed position condition (i,j). For example, if the image partition unit 20 divides the multi-level image into m*n blocks, then the corresponding position conditions of the blocks from left to right along the x axis and from up to down along the y axis are (1,1) to (m,n), as shown in FIG. 3 .
- an operation block processing unit 30 It is used to read in blocks from the image partition unit 20 according to a processing order (i.e. from left to right along the x axis and from up to down along the y axis).
- the operation block processing unit 30 contains logic rules for determining an operation block range and computing the summed error (BEsum) associated with each block.
- the operation block range for computing the summed error is determined according to the position conditions (i, j) of each block.
- a summed pixel processing unit 40 It is used to determine logic rules for determining a summed pixel range. It adds the summed error (BEsum) obtained by the operation block processing unit 30 into the summed pixel range associated with the block. The method of determining the summed pixel range is also primarily determined by the position condition (i, j) of each block. Once it is determined, the summed error of the block is added to the summed pixel range.
- an error-diffusion processing unit 50 It is used to execute an error-diffusion calculation for each pixel in the block to determine the bi-level output associated with pixel and to store the result. Since this part belongs to the scope of the prior art, we do not describe it herein.
- the error-diffusion processing unit 50 has to be able to compute the average error (BE) of the current block and to store it for the summed error calculation needed in subsequent calculations for other blocks.
- BE average error
- the average error (BE) is computed as follows:
- the computation rules of the diffusive error are as follows: when the value of a pixel is greater than 128, its diffusive error is (the pixel value-255); and when the value of a pixel is smaller than 128, the pixel value is taken as the diffusive error directly.
- a storage unit 60 (e) a storage unit 60 . It is used to store the bi-level output result and the average error (BE) produced by the error-diffusion processing unit 50 .
- the storage unit 60 can be used to temporarily store the blocks divided by the image partition unit 20 . Using this method, the operation block processing unit 30 has to read in the needed block data from the storage unit 60 .
- the converted bi-level image can be output from the storage unit 60 .
- FIG. 2 shows the actual operational steps in the disclosed method.
- the multi-level image is first partitioned into blocks of the same size. Each block is associated with a fixed position condition (i, j), and each block contains many pixels (step 100 ).
- the blocks are read in according to a predetermined sequence for processing.
- the position condition (i, j) is used to determined the required operation block range.
- the determined operation block range is used to compute the summed error (BEsum) of the current block (step 200 ).
- the position condition (i, j) of the block is used to determine the summed pixel range that the current block should be adjusted. Afterwards, the summed error associated with the block is added to the summed pixel range (step 300 ).
- each block has to go through steps 200 to 400 before the procedure is complete.
- the method further determines whether there is any other unfinished block (step 500 ). If there is, the method returns to step 200 to read in the next block for processing; otherwise, the method has completed the process of converting a multi-level image into a bi-level image. In this case, the complete bi-level image is output.
- FIG. 4 shows one case of the preferred embodiment. It explains the possible variations of the operation block range and the summed pixel range determined from different block position conditions (i, j) and the calculation rules for the summer error.
- the operation block range is the block position (1,1), as shown in FIG. 5A .
- the operation block range is the block positions (1,1) and (1,2), as shown in FIG. 5B .
- the operation block range is the block positions (1,1), (1,2), and (1,3), as shown in FIG. 5C .
- the operation block range is the block positions (1,1), (1,2), and (1,3), as shown in FIG. 5D .
- the operation block range is the block positions (i ⁇ 1, j), (i ⁇ 1, j+1), and (i ⁇ 1, j+2), as shown in FIG. 5E .
- BEsum BE(1,1)+BE(1,2)*2, as shown in FIG. 5B .
- the summed error (BEsum) is BE(1,1)+BE(1,2)+BE(1,3), as shown in FIG. 5C .
- the summed error (BEsum) is A*BE(1,1)+B*BE(1,2)+C*BE(1,3), as shown in FIG. 5D .
- the summed error (BEsum) is A*BE(i ⁇ 1, j)+B*BE(i ⁇ 1, j+1)+C*BE (i ⁇ 1, j+2), as shown in FIG. 5E .
- the summed pixel range is the last four bits, as shown in FIG. 5A .
- the summed pixel range is the first four bits and the last four bits, as shown in FIG. 5B .
- the summed pixel range is the first four bits and the last four bits, as shown in FIG. 5C .
- the summed pixel range is the first four bits and the last four bits, as shown in FIG. 5D .
- the summed pixel range is the last four bits, as shown in FIG. 5E .
- the operation block range with these position conditions has two parts ( FIG. 5F ):
- A, B, and C are weight values (in this embodiment, A is 1/55, B is 1/85, and C is 1/95, but they can be modified appropriately according to practical needs).
- the first four bits refers to the first foru pixels in each row of the block
- the last four bits refers to the last four pixels in each row of the block.
- the disclosed system and method of operations indeed can replace the row reading method in the conventional error-diffusion image processing with blocking reading in order to save memory space and to increase operation efficiency. Moreover, the invention solves the gap problem existing in the block reading scheme.
- FIGS. 6A and 7A Please refer to FIGS. 6A and 7A . It is seen in the drawings that if one simply employs the block processing scheme to perform improved operations on the image, there are many gaps 600 in the output bi-level image, deteriorating the output digital image quality. On the other hand, in FIGS. 6B and 7B , the invention further uses the proposed technique to process the image. Obviously, the gaps 600 disappear and the invention achieves the complete conversion of a multi-level image to a bi-level image.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
Abstract
Description
-
- The summed pixel range corresponding to the block also contains two parts:
- (a3) the first four bits; and
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/047,701 US7394569B2 (en) | 2005-02-02 | 2005-02-02 | Error-diffusion image processing system and method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/047,701 US7394569B2 (en) | 2005-02-02 | 2005-02-02 | Error-diffusion image processing system and method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
US20060170971A1 US20060170971A1 (en) | 2006-08-03 |
US7394569B2 true US7394569B2 (en) | 2008-07-01 |
Family
ID=36756209
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/047,701 Expired - Fee Related US7394569B2 (en) | 2005-02-02 | 2005-02-02 | Error-diffusion image processing system and method thereof |
Country Status (1)
Country | Link |
---|---|
US (1) | US7394569B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2953621B1 (en) * | 2009-12-03 | 2012-01-13 | Sagem Comm | METHOD AND DEVICE FOR PROCESSING AN IMAGE TO PRINT |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6201612B1 (en) * | 1997-03-26 | 2001-03-13 | Oki Data Corporation | Image processing method and apparatus employing block error diffusion |
-
2005
- 2005-02-02 US US11/047,701 patent/US7394569B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6201612B1 (en) * | 1997-03-26 | 2001-03-13 | Oki Data Corporation | Image processing method and apparatus employing block error diffusion |
Also Published As
Publication number | Publication date |
---|---|
US20060170971A1 (en) | 2006-08-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8331731B2 (en) | Image processing method and image processing apparatus | |
CN101588447B (en) | Method and system for correcting dead pixel points of images and image sensor | |
JP5801624B2 (en) | Display device and display device control circuit | |
US7912128B2 (en) | Motion vector estimation system and method thereof | |
KR101691571B1 (en) | Device and method of processing image data being displayed by display device | |
US7925085B2 (en) | Image data processing device and image data processing method | |
US20080117228A1 (en) | System and method for gamma conversion | |
US20080001975A1 (en) | Image processing apparatus and image processing method | |
WO2010076382A1 (en) | Method and apparatus for finding data quantisation error | |
CN103179321B (en) | A kind of for performing equipment based on the image procossing of error diffusion and method | |
JP3171993B2 (en) | Image processing method and apparatus | |
JP4260781B2 (en) | Information embedding device, information embedding method, and information embedding program | |
US20080239157A1 (en) | Memory Efficient Gamma Correction For Multiple Display Devices | |
US7394569B2 (en) | Error-diffusion image processing system and method thereof | |
US6965696B1 (en) | Image processing device for image region discrimination | |
JPH118765A (en) | Gradation lowering processing method, processor therefor integrated circuit for gradation lowering processing, and computer-readable recording medium recorded with gradation lowering program | |
US20140071153A1 (en) | Image processing method and image display device | |
CN100355267C (en) | Improved system and method for error diffusion imaging processing | |
US6956674B1 (en) | Image processor capable of reducing gradation at high speed | |
CN112581403A (en) | Fisheye image correction method, fisheye image correction system and fisheye image correction medium | |
US7149351B2 (en) | Image processing apparatus and method, computer program and computer-readable storage medium | |
KR100313857B1 (en) | Apparatus for converting gray level values of an image into binary level values | |
US7616820B2 (en) | System and method for reducing discontinuity of gray level in an image buffer memory | |
US7844137B2 (en) | Multisampling with reduced bit samples | |
US8243825B2 (en) | Decoding and encoding method for deinterleaver |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: DESTINY TECHNOLOGY CORPORATION, TAIWAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CHEN, GUO-TAI;LUO, JIE-CHANG;REEL/FRAME:016242/0967;SIGNING DATES FROM 20050113 TO 20050114 |
|
AS | Assignment |
Owner name: PIRMAX ELECTRONICS LTD.,TAIWAN Free format text: MERGER;ASSIGNOR:DESTINY TECHNOLOGY CORPORATION;REEL/FRAME:018284/0100 Effective date: 20060920 Owner name: PIRMAX ELECTRONICS LTD., TAIWAN Free format text: MERGER;ASSIGNOR:DESTINY TECHNOLOGY CORPORATION;REEL/FRAME:018284/0100 Effective date: 20060920 |
|
AS | Assignment |
Owner name: PRIMAX ELECTRONICS LTD., TAIWAN Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S NAME PREVIOUSLY RECORDED ON REEL 018284 FRAME 0100;ASSIGNOR:DESTINY TECHNOLOGY CORPORATION;REEL/FRAME:018431/0220 Effective date: 20060902 Owner name: PRIMAX ELECTRONICS LTD.,TAIWAN Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S NAME PREVIOUSLY RECORDED ON REEL 018284 FRAME 0100;ASSIGNOR:DESTINY TECHNOLOGY CORPORATION;REEL/FRAME:018431/0220 Effective date: 20060902 |
|
REMI | Maintenance fee reminder mailed | ||
FPAY | Fee payment |
Year of fee payment: 4 |
|
SULP | Surcharge for late payment | ||
REMI | Maintenance fee reminder mailed | ||
LAPS | Lapse for failure to pay maintenance fees | ||
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20160701 |