1. A digital image processing method for enhancing a color digital image composed of a plurality of pixels having color values representative of the image, said method comprising the steps of:
a) identifying a local neighborhood of pixels including a pixel of interest;
b) using the color values of one or more of the pixels from the local neighborhood to calculate a color weighting factor for the pixel of interest, the color weighting factor being a near continuous function of the location of said one or more pixels in a color space;
c) applying a spatial filter to the values of pixels from the local neighborhood to calculate a first signal value and a second signal value for the pixel of interest;
d) using the color weighting factor to modify the first signal value;
e) generating an enhanced pixel value for the pixel of interest from the modified first signal value and the second signal value; and
f) repeating steps (a) through (e) for other pixels in the color digital image.
2. The method claimed in claim 1, wherein the spatial filter is a function of the pixel values of the local neighborhood.
3. The method claimed in claim 1, wherein the spatial filter is a non-linear function of the pixel values of the local neighborhood.
4. The method claimed in claim 1, wherein the first signal value predominantly relates to the low spatial frequency information and the second signal value predominantly relates to the high spatial frequency information.
5. The method claimed in claim 4, wherein step c) further comprises the steps of applying a spatial filter to the first signal values for pixels in the color digital image to calculate a gradient signal value from the first signal values, and using the gradient signal value to modify either the first signal value or second signal value.
6. The method as claimed in claim 5 wherein the gradient signal values are modified with a single valued function.
7. The method claimed in claim 1, wherein one of said first and second signal values predominantly relates to the low spatial frequency information and the other of said first and second signal values predominantly relates to the high spatial frequency information.
8. A digital image processing method for enhancing a color digital image composed of a plurality of pixels having color values representative of the image, said method comprising the steps of:
a) identifying a local neighborhood of pixels including a pixel of interest;
b) using the color values of one or more of the pixels from the local neighborhood to calculate a color weighting factor for the pixel of interest, the color weighting factor being a near continuous function of the location of said one or more pixels in a color space;
c) applying a spatial filter to the values of pixels from the local neighborhood to calculate a first signal value and a second signal value for the pixel of interest;
d) using the color weighting factor to modify the first signal value;
e) generating an enhanced pixel value for the pixel of interest from the modified first signal value and the second signal value; and
f) repeating steps (a) through (e) for other pixels in the color digital image;
wherein step b) further comprises the steps of identifying one or more color regions in the color space, calculating a pixel color coordinate in the color space for the pixel of interest, and calculating the color weighting factor as a near continuous function of the pixel color coordinate and the one or more color regions.
9. The method claimed in claim 8, wherein step b) further comprises the steps of calculating a neighborhood color value derived from the values of one or more pixels sampled from a local neighborhood of pixels including the pixel of interest, calculating color distance(s) from the neighborhood color value to the identified color region(s) and using the color distance values to calculate the color weighting factor.
10. The method claimed in claim 9, wherein the neighborhood color value is derived only from the pixel of interest.
11. The method claimed in claim 9, wherein the color weighting factor is calculated as a Gaussian function of the color distance(s).
12. The method claimed in claim 11, wherein the color weighting factor is calculated using a Gaussian function of the color distance values for each identified color region.
13. The method claimed in claim 12, wherein the Gaussian functions are combined in an additive manner to calculate the color weighting factor.
14. The method claimed in claim 12, wherein the Gaussian functions are combined in a multiplicative manner to calculate the color weighting factor.
15. The method claimed in claim 8, wherein the color weighting factor causes an amplification of high spatial frequency information for pixels of interest that are closer in color to one of the identified color regions.
16. The method claimed in claim 8, wherein the color weighting factor causes a reduction of high spatial frequency information for pixels of interest that are closer in color to one of the identified color regions.
17. The method claimed in claim 8, wherein the color weighting factor causes an amplification of high spatial frequency information for pixels of interest that are closer in color to one of the identified color regions, and causes a reduction of high spatial frequency information for pixels of interest that are closer in color to another of the identified color regions.
18. The method claimed in claim 8, wherein one of the identified color regions is the color of sky.
19. The method claimed in claim 8, wherein one of the identified color regions is the color of grass.
20. The method claimed in claim 8, wherein one of the identified color regions is the color of skin.
21. A digital image processing method for enhancing a color digital image composed of a plurality of pixels having color values representative of the image, said method comprising the steps of:
a) identifying a local neighborhood of pixels including a pixel of interest;
b) using the color values of one or more of the pixels from the local neighborhood to calculate a color weighting factor for the pixel of interest, the color weighting factor being a near continuous function of the location of said one or more pixels in a color space;
c) applying a spatial filter to the values of pixels from the local neighborhood to calculate a first signal value and a second signal value for the pixel of interest;
d) using the color weighting factor to modify the first signal value;
e) generating an enhanced pixel value for the pixel of interest from the modified first signal value and the second signal value; and
f) repeating steps (a) through (e) for other pixels in the color digital image;
and further comprising the steps of using the values of pixels sampled from the local neighborhood to calculate a statistical weighting factor for the pixel of interest and using the statistical weighting factor to modify either the first signal value or second signal value.
22. The method claimed in claim 21, further comprising the steps of identifying a noise parameter relating to the expected noise level for the pixel of interest and using the statistical weighting factor and the noise parameter to modify either the first signal value or second signal value.
23. The method claimed in claim 22, wherein the step of identifying a noise parameter comprises the steps of calculating an intensity signal value for the pixel of interest and identifying a noise parameter relating to the expected noise level for the pixel of interest, the noise parameter being a function of the intensity signal value.
24. A digital image processing method for enhancing a color digital image composed of a plurality of pixels having color values representative of the image, said method comprising the steps of:
a) identifying a local neighborhood of pixels including a pixel of interest;
b) using the color values of one or more of the pixels from the local neighborhood to calculate a color weighting factor for the pixel of interest, the color weighting factor being a near continuous function of the location of said one or more pixels in a color space;
c) applying a spatial filter to the values of pixels from the local neighborhood to calculate a first signal value and a second signal value for the pixel of interest;
d) using the color weighting factor to modify the first signal value;
e) generating an enhanced pixel value for the pixel of interest from the modified first signal value and the second signal value; and
f) repeating steps (a) through (e) for other pixels in the color digital image;
wherein the color digital image has red, green, and blue digital image channels, and further comprising the steps of calculating color difference values as linear combinations of the red, green, and blue digital image channels, and identifying the color regions and calculating the color weighing factors in color difference space.
25. A digital image processing method for enhancing a color digital image composed of a plurality of pixels having color values representative of the image, said method comprising the steps of:
a) identifying a local neighborhood of pixels including a pixel of interest;
b) using the color values of one or more of the pixels from the local neighborhood to calculate a color weighting factor for the pixel of interest, the color weighting factor being a near continuous function of the location of said one or more pixels in a color space;
c) applying a spatial filter to the values of pixels from the local neighborhood to calculate a first signal value and a second signal value for the pixel of interest;
d) using the color weighting factor to modify the first signal value;
e) generating an enhanced pixel value for the pixel of interest from the modified first signal value and the second signal value; and
f) repeating steps (a) through (e) for other pixels in the color digital image;
and further comprising the steps of calculating color difference values as CIELAB a* and b* components, and identifying the color regions and calculating the color weighing factors in color difference space.
26. A digital image processing method for enhancing a color digital image composed of a plurality of pixels having color values representative of the image, said method comprising the steps of:
a) identifying a local neighborhood of pixels including a pixel of interest;
b) using the color values of one or more of the pixels from the local neighborhood to calculate a color weighting factor for the pixel of interest, the color weighting factor being a near continuous function of the location of said one or more pixels in a color space;
c) applying a spatial filter to the values of pixels from the local neighborhood to calculate a first signal value and a second signal value for the pixel of interest;
d) using the color weighting factor to modify the first signal value;
e) generating an enhanced pixel value for the pixel of interest from the modified first sigal value and the second signal value; and
f) repeating steps (a) through (e) for other pixels in the color digital image;
and further comprising the steps of calculating color difference values as C* and H* components, and identifying the color regions and calculating the color weighing factors in color difference space.
27. A computer program product for enhancing a color digital image composed of a plurality of pixels having color values representative of the image, said computer program product comprising: a computer erasable storage medium having a computer program store thereon for performing the steps of:
a) identifying a local neighborhood of pixels including a pixel of interest;
b) using the color values of one or more of the pixels from the local neighborhood to calculate a color weighting factor for the pixel of interest, the color weighting factor being a near continuous function of the location of said one or more pixels in a color space;
c) applying a spatial filter to the values of pixels from the local neighborhood to calculate a first signal value and a second signal value for the pixel of interest;
d) using the color weighting factor to modify the first signal value; and
e) generating an enhanced pixel value for the pixel of interest from the modified first signal value and the second signal value;
f) repeating steps (a) through (e) for other pixels in the color digital image.
28. The computer program product of claim 27, wherein the first signal value predominantly relates to the low spatial frequency information and the second signal value predominantly relates to the high spatial frequency information.
29. The computer program product of claim 27, wherein one of said first and second signal values predominantly relates to the low spatial frequency information and the other of said first and second signal values predominantly relates to the high spatial frequency information.
30. A computer program product for enhancing a color digital image composed of a plurality of pixels having color values representative of the image, said computer program product comprising: a computer erasable storage medium having a computer program store thereon for performing the steps of:
a) identifying a local neighborhood of pixels including a pixel of interest;
b) using the color values of one or more of the pixels from the local neighborhood to calculate a color weighting factor for the pixel of interest, the color weighting factor being a near continuous function of the location of said one or more pixels in a color space;
c) applying a spatial filter to the values of pixels from the local neighborhood to calculate a first signal value and a second signal value for the pixel of interest;
d) using the color weighting factor to modify the first signal value; and
e) generating an enhanced pixel value for the pixel of interest from the modified first signal value and the second signal value;
f) repeating steps (a) through (e) for other pixels in the color digital image;
wherein step b) further comprises the steps of identifying one or more color regions in the color space, calculating a pixel color coordinate in the color space for the pixel of interest, and calculating the color weighting factor as a near continuous function of the pixel color coordinate and the one or more color regions.
31. The computer program product of claim 30, wherein step b) further comprises the steps of calculating a neighborhood color value derived from the values of one or more pixels sampled from a local neighborhood of pixels including the pixel of interest, calculating color distance value(s) from the neighborhood color value to the identified color region(s) and using the color distance values to calculate the color weighting factor.
32. The computer program product of claim 31, wherein the neighborhood color value is derived only from the pixel of interest.
33. The computer program product of claim 31, wherein the color weighting factor is calculated as a Gaussian function of the color distance values.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A printing apparatus which performs scan printing on a print medium by using a printhead having, for each color ink, a plurality of nozzle arrays in each of which a plurality of nozzles are arrayed, the apparatus comprising:
a control unit configured to execute a speed oriented mode and an image quality oriented mode as modes of the scan printing;
a print control unit configured to generate data to be transferred to the printhead, for each nozzle array, based on print data of one nozzle array, based on change data for changing data corresponding to a nozzle which does not discharge ink in the print data of the one nozzle array, and based on information relating to an inclination of a nozzle array in a reference direction; and
a memory control unit configured to read out print data held in a first buffer memory outside the print control unit, and to store, in a second buffer memory inside the print control unit in correspondence with a nozzle array, print data changed in accordance with the change data,
wherein in the image quality oriented mode, the print control unit reads out the change data from the first buffer memory and generates data to be transferred to the printhead, and
wherein in the speed oriented mode, the print control unit reads out the change data held in advance in the second buffer memory and generates data to be transferred to the printhead.
2. The apparatus according to claim 1, wherein the first buffer memory is a DRAM.
3. The apparatus according to claim 1, wherein the second buffer memory is an SRAM or a register.
4. The apparatus according to claim 1, wherein the print control unit comprises:
a data changing unit configured to change, by using the change data, print data read out from the first buffer memory; and
a memory control unit configured to write, in the second buffer memory, data changed by the data changing unit.
5. The apparatus according to claim 1, wherein the print control unit comprises a third buffer memory configured to hold, for each nozzle array, data generated based on the information relating to the inclination of the nozzle array in the reference direction.
6. The apparatus according to claim 1, wherein the second buffer memory has an area for holding data of a plurality of columns for each nozzle array.
7. The apparatus according to claim 1,
wherein in the image quality oriented mode, the print control unit generates, based on print data different between nozzle arrays, data to be transferred to the printhead, and
wherein in the speed oriented mode, the print control unit generates, based on print data of one nozzle array, data to be transferred to the printhead for a plurality of nozzle arrays.
8. A printing method of performing scan printing on a print medium by using a printhead having, for each color ink, a plurality of nozzle arrays in each of which a plurality of nozzles are arrayed, the method comprising:
setting execution of a speed oriented mode or an image quality oriented mode as a mode of the scan printing;
generating, by a print control unit, data to be transferred to the printhead for each nozzle array based on print data of one nozzle array, change data for changing data corresponding to a nozzle which does not discharge ink in the print data of the one nozzle array, and information relating to an inclination of a nozzle array in a reference direction;
reading out print data held in a first buffer memory outside the print control unit; and
storing in a second buffer memory inside the print control unit print data changed in accordance with the change data,
wherein in the generating step, when executing the image quality oriented mode, the change data is read out from the first buffer memory to generate data to be transferred to the printhead, and
wherein when executing the speed oriented mode, the change data held in advance in the second buffer memory is read out to generate data to be transferred to the printhead.