Image processing device, printing system, and image processing method
By adjusting reference points and using a range of reference pixels for interpolation, the image processing apparatus and method address color harmonization issues in image resolution conversion, producing high-quality images with seamless tiling.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- SEIKO EPSON CORP
- Filing Date
- 2022-08-22
- Publication Date
- 2026-04-14
AI Technical Summary
Existing image resolution conversion methods, such as bicubic interpolation, result in significant color differences between pixels near the edges and those inside the image, leading to undesirable color harmonization issues.
An image processing apparatus and method that adjusts the reference points for pixel value determination by shifting them inward from the image edges, using a predetermined range of reference pixels for interpolation, thereby harmonizing colors across the image.
The solution effectively reduces color discrepancies in images after resolution conversion, resulting in high-quality images with harmonized tones and seamless tiling patterns.
Smart Images

Figure 0007845109000003 
Figure 0007845109000004 
Figure 0007845109000005
Abstract
Description
Technical Field
[0001] The present invention relates to a technique for converting the resolution of an image.
Background Art
[0002] In order to convert the resolution of an image having a plurality of pixels arranged in two mutually orthogonal directions, the number of pixels of the image is converted by interpolation calculation such as the bicubic method. Converting to increase the resolution of the image increases the number of pixels of the image, and converting to decrease the resolution of the image decreases the number of pixels of the image. Here, let the two mutually orthogonal directions be the X direction and the Y direction. A computer that performs interpolation calculation by the bicubic method determines the coordinates of a reference point for determining the pixel value of each pixel of the transformed image in the X-Y coordinate plane adjusted to the input image, and uses the pixel values of 4×4 pixels centered on the reference point in the input image for the interpolation calculation. For example, the reference point of the pixel at the origin of the transformed image is adjusted to the position of the pixel at the origin of the input image.
[0003] The technique disclosed in Patent Document 1 determines an edge from the processing target image, performs color interpolation processing by the bicubic method on the edge portion, and performs color interpolation processing by uniform averaging based on an n×m pixel range set around the target pixel on the portion other than the edge.
Prior Art Documents
Patent Documents
[0004]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0005] In bicubic interpolation, if the reference point aligns with the position of a pixel in the input image, the pixel value of the pixel corresponding to the reference point in the converted image becomes the pixel value of the pixel at the reference point's position in the input image. For example, the pixel value of the pixel at the origin of the converted image becomes the pixel value of the pixel at the origin of the input image. Furthermore, the color of pixels on the two sides passing through the origin in the converted image is strongly influenced by the color of pixels on the two sides passing through the origin in the input image. This results in a difference in color between pixels on the two sides passing through the origin and pixels located inside the origin in the converted image. Therefore, it is desirable to reduce such color differences within the converted image. Furthermore, the aforementioned problems also exist when performing interpolation operations other than bicubic interpolation, such as bilinear interpolation. [Means for solving the problem]
[0006] The present invention is an image processing apparatus capable of performing image processing to obtain a converted image having a plurality of second pixels by converting the resolution of an input image having a plurality of first pixels arranged in a first direction and a second direction intersecting the first direction, A reference point determination unit determines the coordinates of a reference point for determining the pixel value of the second pixel included in the converted image, in a coordinate plane aligned with the input image. The system includes an interpolation unit that determines the pixel value of a second pixel based on the pixel values of a plurality of reference pixels that are within a predetermined range relative to the reference point, among the plurality of first pixels, The coordinates in the first direction of the first pixels located at each of the ends of the first direction among the plurality of first pixels are defined as the first direction end coordinates. The reference point determination unit has an embodiment that determines the coordinates in the first direction of the reference points of the second pixels located at both ends of the first direction among the plurality of second pixels to be coordinates that are greater than 0 and smaller than one pixel of the input image, and are shifted inward from the coordinates of the first direction end to the input image.
[0007] Furthermore, the printing system of the present invention is The image processing apparatus and, A print head having multiple nozzles capable of dispensing liquid onto a medium, The embodiment includes a control unit that controls the discharge of the liquid from the print head so that a printed image based on the converted image is formed on the medium.
[0008] Furthermore, the present invention is an image processing method that obtains a converted image having a plurality of second pixels by converting the resolution of an input image having a plurality of first pixels arranged in a first direction and a second direction intersecting the first direction, A reference point determination step in which, in a coordinate plane aligned with the input image, the coordinates of a reference point for determining the pixel value of the second pixel included in the converted image are determined, The process includes an interpolation step of determining the pixel value of a second pixel based on the pixel values of a plurality of reference pixels that are within a predetermined range relative to the reference point, among the plurality of first pixels, The coordinates in the first direction of the first pixels located at each of the ends of the first direction among the plurality of first pixels are defined as the first direction end coordinates. In the reference point determination step, the coordinates of the reference points in the first direction for the second pixels located at both ends of the first direction among the plurality of second pixels are determined to be coordinates that are greater than 0 and smaller than one pixel of the input image, and are shifted inward from the coordinates of the first direction end to the input image. [Brief explanation of the drawing]
[0009] [Figure 1] A schematic block diagram showing an example configuration of a printing system including an image processing device. [Figure 2] A schematic diagram illustrating an example of resolution conversion from an input image to a converted image. [Figure 3] A schematic diagram illustrating the bicubic interpolation method used for image resolution conversion. [Figure 4]A diagram schematically showing an example of converting the coordinates s1 on the input image from the coordinates s2 on the converted image in resolution conversion for reducing the number of pixels. [Figure 5] A diagram schematically showing an example of a reference point and a reference point for a second pixel at a corner of a converted image in resolution conversion for reducing the number of pixels. [Figure 6] A diagram schematically showing an example of forming a tiling pattern from an input image. [Figure 7] A diagram schematically showing an example of converting the coordinates s1 on the input image from the coordinates s2 on the converted image in resolution conversion for increasing the number of pixels. [Figure 8] A diagram schematically showing an example of a reference point and a reference point for a second pixel at a corner of a converted image in resolution conversion for increasing the number of pixels. [Figure 9] A flowchart schematically showing an example of tiling pattern output processing. [Figure 10] A diagram schematically showing an example of forming a tiling pattern from a one-pixel line stripe image. [Figure 11] A diagram schematically showing an example of a converted image formed from a one-pixel line stripe image. [Figure 12] A diagram schematically showing a comparison example of a converted image formed from a one-pixel line stripe image. [Figure 13] A diagram schematically showing a comparison example of a converted image formed from a one-pixel line stripe image. [Figure 14] A diagram schematically showing a comparison example of converting the coordinates s1 on the input image from the coordinates s2 on the converted image. [Figure 15] A diagram schematically showing a comparison example of forming a tiling pattern from an input image. [Figure 16] A diagram schematically showing a comparison example of forming a tiling pattern from a converted image.
Embodiments for Carrying Out the Invention
[0010] Hereinafter, embodiments of the present invention will be described. Of course, the following embodiments are merely illustrative of the present invention, and not all of the features shown in the embodiments are essential for the solution means of the invention.
[0011] (1) Outline of the technology included in the present invention: First, the outline of the technology included in the present invention will be described with reference to the examples shown in FIGS. 1 to 16. Note that the figures in the present application are schematic diagrams showing examples, and the magnification ratios in each direction shown in these figures may be different, and the figures may not be consistent. Of course, each element of the present technology is not limited to the specific examples indicated by reference numerals. In the "outline of the technology included in the present invention", the content in parentheses means a supplementary explanation of the immediately preceding word.
[0012] [Aspect 1] An image processing apparatus U0 according to one aspect of the present technology can execute image processing to obtain a converted image IM2 having a plurality of second pixels PX2 by converting the resolution of an input image IM1 having a plurality of first pixels PX1 arranged in a first direction D1 and a second direction D2 intersecting the first direction D1, as illustrated in FIGS. 2, 5, etc. The image processing apparatus U0 includes a reference point determination unit U1 and an interpolation unit U2 (see FIG. 1). The reference point determination unit U1 determines the coordinates (u, v) of a reference point P0 for determining the pixel value of the second pixel PX2 included in the converted image IM2 in a coordinate plane 300 adjusted to the input image IM1. The interpolation unit U2 determines the pixel value of the second pixel PX2 based on the pixel values of a plurality of reference pixels PX3 within a predetermined range AR1 centered on the reference point P0 among the plurality of first pixels PX1. Here, the coordinates of the first pixels in the first direction D1 of the plurality of first pixels PX1 located at each end of the first direction D1 are defined as the first direction end coordinates Xs and Xe. As illustrated in Figures 4, 5, 7 to 9, the reference point determination unit U1 determines the coordinates of the reference point P0 in the first direction D1 for the second pixels (referred to as the second start pixel PX2s and the second end pixel PX2e) located at both ends of the first direction D1 of the plurality of second pixels PX2 to be coordinates that are greater than 0 and smaller than one pixel of the input image IM1, and are shifted inward from the first direction end coordinates Xs and Xe within the input image IM1.
[0013] In the above embodiment, the coordinates of the reference point P0 of the second starting pixel PX2s and the second ending pixel PX2e included in the converted image IM2 in the first direction D1 are shifted inward from the first direction end coordinates Xs and Xe of the input image IM1, within a range greater than 0 and smaller than one pixel of the input image IM1. As a result, in the first direction D1, the reference point P0 of the second starting pixel PX2s and the second ending pixel PX2e is shifted from the position of the pixel in the input image IM1, and the strong appearance of the color of the first pixel PX1 located at the edge of the input image IM1 in the second starting pixel PX2s and the second ending pixel PX2e is avoided. Therefore, the above embodiment can provide an image processing device that can more harmonize the color in the image after resolution conversion.
[0014] Here, the conversion of the resolution of the input image means a conversion that performs at least one of two actions: enlargement, which increases the number of pixels, and reduction, which decreases the number of pixels, in at least one of the first and second directions. Therefore, the conversion of the resolution of the input image includes, for example, a conversion that changes the number of pixels in the first direction but does not change the number of pixels in the second direction, a conversion that increases the number of pixels in the first direction but decreases the number of pixels in the second direction, and so on. In this application, "first," "second," etc., are terms used to identify each component included in a group of similar components, and do not imply any order. Which component among the group of components corresponds to "first," "second," etc., is determined relatively. For example, if multiple first pixels of an input image are arranged in the X and Y directions, when the X direction is fitted to the first direction, the Y direction is fitted to the second direction, and when the Y direction is fitted to the first direction, the X direction is fitted to the second direction. Furthermore, the above-mentioned supplementary statement also applies in the following embodiments.
[0015] [Aspect 2] Furthermore, the coordinates in the second direction D2 of the first pixels located at both ends of the second direction D2 among the plurality of first pixels PX1 are defined as the second direction end coordinates Ys,Ye. The reference point determination unit U1 may determine the coordinates in the second direction D2 of the reference point P0 for the second pixels located at both ends of the second direction D2 among the plurality of second pixels PX2 to be coordinates that are greater than 0 and smaller than one pixel of the input image IM1, and are shifted inward from the second direction end coordinates Ys,Ye within the input image IM1. In the above case, even in the second direction D2, the reference point P0 of the second starting pixel PX2s and the second ending pixel PX2e in the converted image IM2 is shifted from the position of the pixels in the input image IM1, thus avoiding the strong appearance of the color of the first pixel PX1 located at the edge of the input image IM1 in the aforementioned second starting pixel PX2s and second ending pixel PX2e. Therefore, the above embodiment can further harmonize the color tones in the image after resolution conversion.
[0016] [Aspect 3] Furthermore, as illustrated in Figures 2 and 5, the first pixel at the beginning of the first direction D1 among the plurality of first pixels PX1 is designated as the first starting pixel PX1s, and the first pixel at the end of the first direction D1 is designated as the first ending pixel PX1e. The second pixel at the beginning of the first direction D1 among the plurality of second pixels PX2 is designated as the second starting pixel PX2s, and the second pixel at the end of the first direction D1 is designated as the second ending pixel PX2e. The second pixel between the second starting pixel PX2s and the second ending pixel PX2e in the first direction D1 among the plurality of second pixels PX2 is designated as the intervening pixel PX2b. The coordinates of the first starting pixel PX1s and the second starting pixel PX2s in the first direction D1 are used as the origin, and the coordinates of the second ending pixel PX2e in the first direction D1 are assigned to the coordinates of the first ending pixel PX1e in the first direction D1. The amount of shift is defined as the magnitude by which the reference point P0 is shifted inward in the first direction D1 towards the input image IM1, based on the linear correspondence relationship 901. The reference point determination unit U1 may determine the coordinates of the reference point P0 in the first direction D1 for the intervening pixel PX2b such that the shift amount (e.g., shift amount β) in the intervening pixel PX2b is smaller than the shift amount (e.g., offset amount α) in the second starting pixel PX2s and the second ending pixel PX2e.
[0017] In the above case, the amount of shift (β) of the intervening pixel PX2b located between the second starting pixel PX2s and the second ending pixel PX2e in the converted image IM2 in the first direction D1 is smaller than the amount of shift (α) of the second starting pixel PX2s and the second ending pixel PX2e in the first direction D1 in the converted image IM2. As a result, the edges of the converted image IM2 and the inside of the converted image IM2 have a harmonious color tone in the first direction D1. Therefore, the above embodiment can further harmonize the color tone within the image after resolution conversion. Furthermore, the same can be said for the second direction D2 as for embodiment 3 described above.
[0018] [Aspect 4] As illustrated in Figures 4 and 7, the reference point determination unit U1 may determine the coordinates of the reference point P0 for the intervening pixel PX2b in the first direction D1 such that the amount of shift in the second pixel PX2 decreases as the second pixel PX2 gets closer to the intermediate position IP between the second start pixel PX2s and the second end pixel PX2e in the first direction D1. In the above case, the shift amount in the converted image IM2 decreases as the second pixel PX2 approaches the intermediate position IP between the second start pixel PX2s and the second end pixel PX2e. As a result, the converted image IM2 has a harmonious color tone throughout in the first direction D1. Therefore, the above embodiment can further harmonize the color tone within the image after resolution conversion. Furthermore, the same can be said for the second direction D2 as for the embodiment 4 described above.
[0019] [Aspect 5] As illustrated in Figure 3, the pixel values of the multiple reference pixels PX3 may be 16 pixel values p11 to p44 used in the interpolation calculation using the bicubic method. The interpolation unit U2 may determine the pixel value p of the second pixel PX2 by performing the interpolation calculation using the 16 pixel values p11 to p44. This embodiment can obtain a high-quality converted image.
[0020] [Aspect 6] As illustrated in Figure 4, when the reference point determination unit U1 performs image processing to reduce the number of pixels in the first direction D1, it may determine the coordinates of the reference point P0 in the first direction D1 for the second pixels PX2 located at both ends of the first direction D1 among the plurality of second pixels PX2 to be shifted inward from the input image IM1 by 0.5 pixels of the input image IM1 compared to the first direction end coordinates Xs,Xe. This embodiment can obtain a high-quality reduced image. Furthermore, the same can be said for the second direction D2 as for embodiment 6 described above.
[0021] [Aspect 7] As illustrated in Figure 7, when the reference point determination unit U1 performs image processing to increase the number of pixels in the first direction D1, it may determine the coordinates of the reference point P0 in the first direction D1 for the second pixels located at both ends of the first direction D1 among the plurality of second pixels PX2 to be shifted inward from the first direction end coordinates Xs,Xe of the input image IM1 by a range greater than 0 and smaller than 0.5 pixels of the input image IM1. This embodiment can obtain a high-quality enlarged image. Furthermore, the same can be said for the second direction D2 as for embodiment 7 described above.
[0022] [Aspect 8] Incidentally, a printing system SY1 according to one aspect of this technology, as illustrated in Figure 1, comprises the image processing device U0 described above, a print head 220 having a plurality of nozzles capable of discharging liquid onto a medium ME1, and a control unit U10 that controls the discharge of the liquid from the print head 220 so that a printed image IM3 based on the converted image IM2 is formed on the medium ME1. This aspect can provide a printing system that can more harmonize the colors within a printed image.
[0023] [Aspect 9] The control unit U10 may control the discharge of the liquid from the print head 220 so that a tiling pattern TP1 is formed on the medium ME1 by repeatedly arranging the converted images IM2 side by side as the printed image IM3, as illustrated in Figure 6, etc. Examples of the tiling pattern TP1 include textile patterns in which a symmetrical pattern is repeated as the converted image IM2 in at least one of the first direction D1 and the second direction D2. As described above, in the converted image IM2, the strong color of the first pixel PX1 located at the edge of the input image IM1 is avoided in the second starting pixel PX2s and the second ending pixel PX2e, which are located at opposite ends of each other. Therefore, the seams between converted images IM2 are not noticeable in the tiling pattern TP1. Accordingly, this printing system SY1 is suitable for solving the problem of noticeable seams between converted images IM2 in the tiling pattern TP1 in which the converted images IM2 are repeated, and the above embodiment can print a tiling pattern with good image quality.
[0024] [Aspect 10] Furthermore, an image processing method according to one aspect of this technology is an image processing method that obtains a converted image IM2 by converting the resolution of the input image IM1, and includes the following steps (A) and (B), as illustrated in Figure 9. (A) A reference point determination step ST1 in which the coordinates (u,v) of a reference point P0 for determining the pixel value of the second pixel PX2 included in the converted image IM2 are determined in a coordinate plane 300 aligned with the input image IM1. (B) An interpolation step ST2 in which the pixel value of the second pixel PX2 is determined based on the pixel values of a plurality of reference pixels PX3 that are located in a predetermined range AR1 with respect to the reference point P0, among the plurality of first pixels PX1. Here, the coordinates in the first direction D1 of the first pixels located at both ends of the first direction D1 among the plurality of first pixels PX1 are defined as the first direction end coordinates Xs,Xe. In the reference point determination step ST1, the image processing method determines the coordinates in the first direction D1 of the reference point P0 for the second pixels located at both ends of the first direction D1 among the plurality of second pixels PX2 to be coordinates that are greater than 0 and smaller than one pixel of the input image IM1, and are shifted inward from the first direction end coordinates Xs,Xe within the input image IM1. The above embodiment can provide an image processing method that can further harmonize the colors within an image after resolution conversion.
[0025] Furthermore, this technology is applicable to a composite device including the image processing device described above, a printing method for the printing system described above, an image processing program for implementing the image processing method described above on a computer, a printing control program for the printing system described above, a computer-readable recording medium on which any of the aforementioned control programs are recorded, and so on. Any of the aforementioned devices may consist of multiple distributed parts.
[0026] (2) Specific examples of the configuration of a printing system including an image processing device: Figure 1 schematically shows an example of a printing system configuration including an image processing device. Figure 2 schematically shows an example of resolution conversion from an input image to a converted image. The printing system SY1 shown in Figure 1 includes a host device 100 and a printer 200, and is capable of forming a tiling pattern TP1, as illustrated in Figure 6, on a medium ME1. The tiling pattern TP1 is a pattern in which symmetrical patterned images IM2 are repeated adjacent to each other, such as a textile pattern. The host device 100 includes a processor CPU 111, ROM 112, RAM 113, storage device 114, input device 115, display device 116, communication I / F 117, etc. Here, CPU is an abbreviation for Central Processing Unit, ROM is an abbreviation for Read Only Memory, RAM is an abbreviation for Random Access Memory, and I / F is an abbreviation for Interface. The aforementioned elements (111 to 117) are electrically connected and capable of inputting and outputting information to each other. The ROM 112, RAM 113, and storage device 114 are memories, and at least the ROM 112 and RAM 113 are semiconductor memories.
[0027] The storage device 114 stores an OS (not shown), an image processing program PR0, an offset amount α used for resolution conversion as shown in Figure 2, a print control program PR1, etc. Here, OS is an abbreviation for operating system. The storage device 114 can be a non-volatile semiconductor memory such as flash memory, a magnetic storage device such as a hard disk, etc. The input device 115 can be a pointing device, a hard key including a keyboard, a touch panel attached to the surface of the display panel, etc. The display device 116 displays a screen corresponding to the display information based on the display information. The display device 116 can be a liquid crystal display panel, etc. The communication I / F 117 is connected to the communication I / F 230 of the printer 200 and inputs and outputs information such as print data to the printer 200. Communication between the communication I / F 117 and 230 may be wired, wireless, or a network communication such as a LAN or the Internet. Here, LAN is an abbreviation for Local Area Network.
[0028] The image processing program PR0 shown in Figure 1 implements the reference point determination function FU1 and the interpolation function FU2 on the host device 100. The print control program PR1 shown in Figure 1 implements the color conversion function FU3, the halftone processing function FU4, and the tiling function FU5 on the host device 100. The CPU 111 of the host device 100 reads information stored in the storage device 114 into the RAM 113 as appropriate and performs various processing by executing the read program. The CPU 111 performs processing corresponding to the above-mentioned functions (FU1 to FU5) by executing the programs (PR0, PR1) read into the RAM 113. The image processing program PR0 causes the host device 100, which is a computer, to function as an image processing device U0 equipped with a reference point determination unit U1 and an interpolation unit U2. The print control program PR1 causes the host device 100 to function as a color conversion unit U3, a halftone processing unit U4, and a tiling unit U5. Furthermore, the host device 100 executing the image processing program PR0 performs the reference point determination step ST1 and the interpolation step ST2, as illustrated in Figure 9. The host device 100 executing the print control program PR1 performs the color conversion step ST3, the halftone processing step ST4, and the tiling step ST5, as illustrated in Figure 9. The computer-readable recording medium storing the programs (PR0, PR1) that enable the computer to implement the above-mentioned functions (FU1 to FU5) is not limited to the internal storage device of the host device, but may also be an external recording medium of the host device.
[0029] The host device 100 includes computers such as personal computers, mobile phones such as smartphones, digital cameras, digital video cameras, etc. The host device 100 may have all its components (111-117) in a single enclosure, or it may be composed of multiple devices that are separated and able to communicate with each other. Furthermore, this technology can be implemented even if at least a part of the printer 200 is located in the host device 100.
[0030] The printer 200 shown in Figure 1 is an inkjet printer that forms a printed image IM3 corresponding to the print data by ejecting C ink, M ink, Y ink, and K ink as colorants from the print head 220. Here, ink is an example of a liquid, C means cyan, M means magenta, Y means yellow, and K means black. Of course, the printer 200 may also be an electrophotographic printer such as a laser printer that uses toner, a 3D printer, etc. The print head 220 has a plurality of nozzles Nc capable of ejecting C ink droplets onto the medium ME1, a plurality of nozzles Nm capable of ejecting M ink droplets onto the medium ME1, a plurality of nozzles Ny capable of ejecting Y ink droplets onto the medium ME1, and a plurality of nozzles Nk capable of ejecting K ink droplets onto the medium ME1. The print head 220 is supplied with C, M, Y, and K inks from ink cartridges Cc, Cm, Cy, and Ck, respectively. As a result, the print head 220 ejects ink droplets 280 of C, M, Y, and K from nozzles Nc, Nm, Ny, and Nk, respectively. When the ink droplets 280 land on the medium ME1, ink dots are formed on the medium ME1. As a result, a printed material with a printed image IM3 on the medium ME1 is obtained. The medium ME1 is not particularly limited and includes fabrics, paper, resin, metal, etc., on which the textile pattern is printed. The shape of the medium ME1 may be in the form of a roll, a cut two-dimensional shape, or a three-dimensional shape.
[0031] The printer 200 includes a controller 210 that controls the ejection of ink from the print head 220. The controller 210, together with the host device 100 that executes the print control program PR1, constitutes a control unit U10 that controls the ejection of ink from the print head 220 so that a print image IM3 based on the converted image IM2 (see Figure 2) is formed on the medium ME1.
[0032] As shown in Figure 2, the input image IM1 has multiple first pixels PX1 arranged in the X and Y directions. The X and Y directions are assumed to be orthogonal, but they do not have to be orthogonal as long as they intersect. In the example shown in Figure 2, the X direction is assigned to the first direction D1, and the Y direction is assigned to the second direction D2. It is also possible to assign the Y direction to the first direction D1 and the X direction to the second direction D2. In Figure 2, as a schematic example, the input image IM1 shows that X1 = 13 first pixels PX1 are arranged in the X direction, and Y1 = 13 first pixels PX1 are arranged in the Y direction. Of course, the number of pixels X1 may be different from the number of pixels Y1. If the color system of the input image IM1 is RGB, the pixel value of each first pixel PX1 is a combination of R value, G value, and B value. Here, R means red, G means green, and B means blue. The R, G, and B values are expressed, for example, as grayscale values from 0 to 255.
[0033] The image processing device U0 obtains a converted image IM2 by converting the resolution of the input image IM1. The conversion of the resolution of the input image IM1 may be magnification, which increases the number of pixels to increase the resolution, or reduction, which decreases the number of pixels to decrease the resolution, and the magnification may differ in the X and Y directions. Therefore, the conversion of the resolution of the input image IM1 includes, for example, magnification where the magnification ratio in the X direction is greater than the magnification ratio in the Y direction, reduction where the reduction ratio in the X direction is greater than the reduction ratio in the Y direction, conversion where the number of pixels in the Y direction is changed but the number of pixels in the Y direction is not changed, conversion where the number of pixels in the X direction is increased but the number of pixels in the Y direction is decreased, etc. The resulting converted image IM2 has multiple second pixels PX2 arranged in the X and Y directions. Figure 2 shows a schematic example of a converted image IM2 in which X2 = 6 second pixels PX2 are arranged in the X direction and Y2 = 6 second pixels PX2 are arranged in the Y direction. Of course, the number of pixels X2 may be different from the number of pixels Y2, and X2 may be greater than or equal to X1, and Y2 may be greater than or equal to Y1. If the color system of the input image IM1 is RGB, the color system of the converted image IM2 will be RGB, and the pixel value of each second pixel PX2 will be a combination of R, G, and B values. The R, G, and B values can be represented, for example, by grayscale values from 0 to 255.
[0034] In this specific example, the image processing device U0 performs an interpolation operation to calculate the pixel value of a second pixel PX2 using the pixel values of multiple reference pixels PX3, which are based on a reference point P0 corresponding to each second pixel PX2 in the converted image IM2. The reference point determination unit U1 included in the image processing device U0 determines the coordinates (u,v) of the reference point P0 for determining the pixel value of the second pixel PX2 in the converted image IM2, in the coordinate plane 300, which is an XY coordinate plane aligned with the input image IM1. The multiple reference pixels PX3 are first pixels within a predetermined range AR1 based on the reference point P0, among the multiple first pixels PX1 included in the input image IM1. In Figure 2, the reference point P0 corresponding to the pixel of interest PX2t marked with a triangle in the converted image IM2 is shown with a triangle in the input image IM1. The interpolation unit U2 included in the image processing device U0 determines the pixel value of the second pixel PX2 based on the pixel values of the multiple reference pixels PX3. In this specific example, the interpolation unit U2 determines the pixel value of the second pixel PX2 by performing a bicubic interpolation operation using a maximum of 4x4 pixels, including the position of the reference point P0, as reference pixels PX3 from among multiple first pixels PX1. Note that the interpolation operation may be performed using methods other than bicubic interpolation, such as bilinear interpolation. Therefore, the multiple reference pixels PX3 are not limited to 4x4 pixels, but may also be 2x2 pixels, etc.
[0035] For convenience, we will refer to pixels on the XY coordinate plane according to their position as follows: Of the multiple first pixels PX1 contained in the input image IM1, the first pixel at the beginning in the X direction is designated as the first start pixel PX1s, and the first pixel at the end in the X direction is designated as the first end pixel PX1e. Figure 2 shows the first pixels PX1 (thick lines) arranged in the X direction in the input image IM1, extracted to the bottom. Furthermore, of the multiple first pixels PX1, the first pixel located between the first start pixel PX1s and the first end pixel PX1e in the X direction is designated as the intervening pixel PX1b. Of the multiple first pixels PX1, the X coordinates of the first start pixel PX1s and the first end pixel PX1e, located at each end in the X direction, are designated as the first direction end coordinates Xs and Xe, respectively. The X coordinate is a coordinate in the X direction. The first direction end coordinate Xs of the first start pixel PX1s is 0, and the first direction end coordinate Xe of the first end pixel PX1e is X1-1. Of the multiple first pixels PX1 contained in the input image IM1, the first pixel at the beginning in the Y direction is designated as the first start pixel PX1s, and the first pixel at the end in the Y direction is designated as the first end pixel PX1e. Figure 2 shows the first pixels PX1 (thick lines) arranged in the Y direction in the input image IM1, extracted to the right. Furthermore, of the multiple first pixels PX1, the first pixel located between the first start pixel PX1s and the first end pixel PX1e in the Y direction is designated as the intervening pixel PX1b. Of the multiple first pixels PX1, the Y coordinates of the first start pixel PX1s and the first end pixel PX1e, located at both ends in the Y direction, are designated as the second direction end coordinates Ys and Ye, respectively. The Y coordinate is a coordinate in the Y direction. The second direction end coordinate Ys of the first start pixel PX1s is 0, and the second direction end coordinate Ye of the first start pixel PX1s is Y1-1.
[0036] Of the multiple second pixels PX2 contained in the converted image IM2, the second pixel at the beginning in the X direction is designated as the second starting pixel PX2s, and the second pixel at the end in the X direction is designated as the second ending pixel PX2e. In Figure 2, the second pixels PX2 (thick lines) aligned in the X direction in the converted image IM2 are shown extracted to the bottom. Furthermore, of the multiple second pixels PX2, the second pixel located between the second starting pixel PX2s and the second ending pixel PX2e in the X direction is designated as the intervening pixel PX2b. As shown in the lower part of Figure 2, in the XY coordinate plane aligned with the converted image IM2, the X coordinate of the second starting pixel PX2s is 0, and the X coordinate of the second ending pixel PX2e is X2-1. Of the multiple second pixels PX2 contained in the converted image IM2, the second pixel at the beginning in the Y direction is designated as the second starting pixel PX2s, and the second pixel at the end in the Y direction is designated as the second ending pixel PX2e. In Figure 2, the second pixels PX2 (thick lines) aligned in the Y direction in the converted image IM2 are shown extracted to the right. Furthermore, of the multiple second pixels PX2, the second pixel located between the second starting pixel PX2s and the second ending pixel PX2e in the Y direction is designated as the intervening pixel PX2b. As shown in the lower part of Figure 2, in the XY coordinate plane aligned with the converted image IM2, the Y coordinate of the second starting pixel PX2s is 0, and the Y coordinate of the second ending pixel PX2e is Y2-1.
[0037] In this specific example, the reference point determination unit U1 determines the X coordinate of the reference point P0 for the second starting pixel PX2s and the second ending pixel PX2e in the X direction to a coordinate that is greater than 0 and smaller than one pixel of the input image IM1, and shifted inward from the first direction end coordinates Xs,Xe. Furthermore, the reference point determination unit U1 determines the Y coordinate of the reference point P0 for the second starting pixel PX2s and the second ending pixel PX2e in the Y direction to a coordinate that is greater than 0 and smaller than one pixel of the input image IM1, and shifted inward from the second direction end coordinates Ys,Ye. Details of the reference point determination unit U1 will be described later.
[0038] First, referring to Figure 3, we will explain the interpolation operation using the bicubic method used for image resolution conversion. Here, in the XY coordinate plane, the coordinates of the reference point P0 are (u,v), the decimal part of the X coordinate u is Δu, the decimal part of the Y coordinate v is Δv, and the pixel values of the 4x4 reference points G0 surrounding the reference point P0 are p11 to p44. The reference point P0 is contained within the square enclosed by the reference points G0 with pixel values p22, p23, p33, and p32. Each reference point G0, when it is within the input image IM1, corresponds to a reference pixel PX3 contained in the input image IM1. For the reference points G0 that are outside the input image IM1 among the 16 reference points G0, we will assume that the pixel with the pixel value of the first pixel PX1 at the edge of the input image IM1 exists outside the input image IM1 and apply that pixel value.
[0039] The interpolated pixel value p is calculated using the following formula.
number
number
[0040] The image processing device U0 can calculate the pixel value p of the pixel of interest PX2t corresponding to the reference point P0 by performing an interpolation operation using the pixel values p11 to p44 of up to 4 × 4 reference pixels PX3 located in a predetermined range AR1 with respect to the reference point P0, according to the above equations (1) and (2).
[0041] Here, with reference to Figure 14, a comparative example for determining the coordinates (u,v) of the reference point P0 will be explained. Figure 14 schematically shows a comparative example for converting the coordinates s1 on the input image from the coordinates s2 on the transformed image. The coordinate conversion is performed for both the X and Y coordinates. Therefore, the X coordinate on the transformed image is converted to the X coordinate u of the reference point P0, and the Y coordinate on the transformed image is converted to the Y coordinate v of the reference point P0.
[0042] The linear correspondence relationship 901 shown in Figure 14 is the correspondence between (s2,s1)=(0,0) and (s2,s1)=(S2-1,S1-1) drawn by a straight line. Here, the number of pixels S1 is the number of pixels in the X or Y direction of the input image, and the number of pixels S2 is the number of pixels in the X or Y direction of the converted image. The number of pixels S1 in the X direction corresponds to the number of pixels X1 shown in Figure 2, the number of pixels S1 in the Y direction corresponds to the number of pixels Y1 shown in Figure 2, the number of pixels S2 in the X direction corresponds to the number of pixels X2 shown in Figure 2, and the number of pixels S2 in the Y direction corresponds to the number of pixels Y2 shown in Figure 2. Note that the X coordinate X1-1 on the input image is the first direction end coordinate Xe, and the Y coordinate Y1-1 on the input image is the second direction end coordinate Ye. The linear correspondence relationship 901 is expressed by the following equation. s1 = {(S1-1) / (S2-1)} × s2 …(3) Therefore, the X coordinate 0 on the converted image is converted to the X coordinate 0 on the input image, and the Y coordinate 0 on the converted image is converted to the Y coordinate 0 on the input image. Also, if no calculation errors occur due to integer conversion, etc., the X coordinate X2-1 on the converted image is converted to the X coordinate Xe=X1-1 on the input image, and the Y coordinate Ye=Y2-1 on the converted image is converted to the Y coordinate Y1-1 on the input image. Consequently, for example, the coordinate of the reference point P0 corresponding to the origin (0,0) on the converted image will be the origin (0,0), and if there are no calculation errors, the coordinate of the reference point P0 corresponding to the endpoint (X2-1,Y2-1) on the converted image will be the endpoint (X1-1,Y1-1). Note that calculation errors due to integer conversion, etc., vary depending on the size (X1,Y1) of the input image IM1 and the resolution conversion magnification, so there will be variations in the coordinate of the reference point P0 corresponding to the endpoint (X2-1,Y2-1) on the converted image.
[0043] The linear correspondence 902 shown in Figure 14 is the correspondence between (s2,s1)=(0,0) and (s2,s1)=(S2,S1) drawn by a straight line. Here, the coordinate S2 on the transformed image is outside the transformed image, and the coordinate S1 on the input image is outside the input image. The linear correspondence 902 is expressed by the following equation. s1 = (S1 / S2) × s2 …(4) Therefore, the X coordinate 0 on the converted image is converted to the X coordinate 0 on the input image, and the Y coordinate 0 on the converted image is converted to the Y coordinate 0 on the input image. Also, assuming no calculation errors due to integer conversion, etc., the X coordinate X2-1 on the converted image is converted to the X coordinate (S1 / S2)×(X1-1) on the input image, and the Y coordinate Y2-1 on the converted image is converted to the Y coordinate (S1 / S2)×(Y1-1) on the input image. Consequently, for example, the coordinate of the reference point P0 corresponding to the origin (0,0) on the converted image will be the origin (0,0) on the input image, and assuming no calculation errors, the coordinate of the reference point P0 corresponding to the endpoint (X2-1,Y2-1) on the converted image will be ((S1 / S2)×(X1-1),(S1 / S2)×(Y1-1)). There will be variations in the coordinates of the reference point P0 on the input image that correspond to the endpoint (X2-1, Y2-1) on the converted image.
[0044] In bicubic interpolation, if the reference point P0 aligns with the position of a pixel in the input image, the pixel value of the pixel corresponding to the reference point P0 in the transformed image will be the pixel value of the pixel at the position of the reference point P0 in the input image. For example, consider a case where the coordinates of the reference point P0 are calculated according to linear correspondence relation 901, and the reference point P0 corresponding to the origin (0,0) and endpoint (X2-1,Y2-1) in the transformed image is the position of a pixel in the input image. In this case, the color of pixels located at the edges in the transformed image will strongly reflect the color of pixels located at the edges in the input image. Now, consider a case where the input image IM1 is a striped image with vertical stripes that are symmetrical in the X and Y directions, as illustrated in Figure 15. In this case, the color of the second pixel PX2 located on two sides along the Y direction in the transformed image IM2 will strongly reflect the color of the first pixel PX1 located on two sides along the Y direction in the input image IM1. As a result, in the converted image IM2, there is a difference in color between the second pixels PX2 located on the two sides along the Y direction and the second pixels PX2 located on the inside. If the first pixels PX1 located on the two sides along the Y direction in the input image IM1 are dark, then the darkness of the second pixels PX2 located on the two sides along the Y direction in the converted image IM2 will strongly reflect the darkness of the first pixels PX1 located on the two sides along the Y direction in the input image IM1. In particular, when a tiling pattern TP1, such as a textile pattern formed by repeatedly arranging the converted images IM2 side by side as shown in the lower part of Figure 15, is formed on the medium ME1, the color, for example, the darkness at the seams between the converted images IM2 is noticeable in the tiling pattern TP1. Of course, a tiling pattern can also be formed by repeatedly arranging the converted images IM2 side by side in the Y direction, as shown in Figure 15. Although not shown, a similar color difference occurs when the input image IM1 is a striped image with horizontal stripes that are symmetrical in the X and Y directions, and the color, for example, the darkness at the seams between the converted images IM2 is noticeable in the tiling pattern formed by repeatedly arranging the converted images IM2 side by side in the Y direction.
[0045] Furthermore, if there is variation in the coordinates of the reference point P0 on the input image that corresponds to the endpoint (X2-1, Y2-1) on the converted image, the reference point P0 corresponding to the origin (0,0) on the converted image will be the position of a pixel on the input image. In this case, the color of pixels on the two sides passing through the origin on the converted image will be strongly influenced by the color of pixels on the two sides passing through the origin on the input image. If the input image IM1 is a vertical striped image, as illustrated in Figure 16, the color of the second pixel PX2 on the side with an X coordinate of 0 on the converted image IM2 will be strongly influenced by the color of the first pixel PX1 on the side with an X coordinate of 0 on the input image IM1. As a result, there will be a difference in color between the second pixel PX2 on the side with an X coordinate of 0 on the converted image IM2 and the second pixel PX2 located inside it. The color of the second pixel PX2 on the side with the maximum X coordinate on the converted image IM2 will change depending on the size (X1, Y1) of the input image IM1 and the resolution conversion magnification. In particular, as shown in the lower part of Figure 16, when a tiling pattern TP1 is formed on the medium ME1 by repeatedly arranging the converted images IM2 side by side, the color, for example, the darkness at the seams between the converted images IM2 is noticeable in the tiling pattern TP1. Although not shown, a similar color difference occurs when the input image IM1 is a striped image with horizontal stripes, and in the tiling pattern formed by repeatedly arranging the converted images IM2 side by side in the Y direction, the color, for example, the darkness at the seams between the converted images IM2 is noticeable.
[0046] In this specific example, the reference point determination unit U1 uses the linear correspondence relationship 901 shown in Figure 14 as a reference, and determines the coordinates (u,v) of the reference point P0 corresponding to the origin and endpoint of the converted image IM2 to be shifted inward within a range of less than 1 pixel from the input image IM1. Figure 4 schematically shows an example of converting coordinates s1 on the input image IM1 from coordinates s2 on the converted image IM2 during a resolution conversion to reduce the number of pixels. The following explanation also refers to Figure 2. The coordinate conversion is performed for both the X and Y coordinates. Therefore, the X coordinate on the converted image IM2 is converted to the X coordinate u of the reference point P0, and the Y coordinate on the converted image IM2 is converted to the Y coordinate v of the reference point P0.
[0047] The linear correspondence relationship 901 is expressed as s1 = {(S1-1) / (S2-1)} × s2, as shown in equation (3) above. Focusing on the X coordinate, the linear correspondence relationship 901 is a linear correspondence in which the coordinates in the X direction of the first starting pixel PX1s and the second starting pixel PX2s are set as the origin 0, and the coordinate in the X direction of the second ending pixel PX2e, X2-1, is assigned to the coordinate in the X direction of the first ending pixel PX1e, Xe = X1-1. Focusing on the Y coordinate, the linear correspondence relationship 901 is a linear correspondence in which the coordinates in the Y direction of the first starting pixel PX1s and the second starting pixel PX2s are set as the origin 0, and the coordinate in the Y direction of the second ending pixel PX2e is assigned to the coordinate in the Y direction of the first ending pixel PX1e, Ye. In this specific example, the reference point determination unit U1 sets the offset amount α to 0 < α < 1, and determines the coordinate 0 of the reference point P0 for the second starting pixel PX2s and the second ending pixel PX2e to a coordinate that is shifted inward by α pixels of the input image IM1 compared to the first starting pixel PX1s and the first ending pixel PX1e. Focusing on the X coordinate, the reference point determination unit U1 determines the X coordinate 0 of the reference point P0 for the second starting pixel PX2s to be a coordinate α that is shifted inward by α pixels of the input image IM1 in the X direction compared to the first starting pixel PX1s. Furthermore, the reference point determination unit U1 determines the X coordinate Xe of the reference point P0 for the second ending pixel PX2e to be a coordinate Xe-α that is shifted inward by α pixels of the input image IM1 in the X direction compared to the first ending pixel PX1e. Focusing on the Y-coordinate, the reference point determination unit U1 determines the Y-coordinate 0 of the reference point P0 for the second starting pixel PX2s to be a coordinate α that is shifted inward in the input image IM1 by α pixels in the Y direction compared to the first starting pixel PX1s. The reference point determination unit U1 also determines the Y-coordinate Ye of the reference point P0 for the second ending pixel PX2e to be a coordinate Ye-α that is shifted inward in the input image IM1 by α pixels in the Y direction compared to the first ending pixel PX1e.
[0048] The correspondence relationship 401, obtained by adding an offset amount α to the linear correspondence relationship 901, is expressed by the following equation. s1={(S1-1-2α) / (S2-1)}×s2+α …(5) The calculation is performed using, for example, floating-point or fixed-point numbers, such that the coordinates of the reference point P0 for the second starting pixel PX2s and the second ending pixel PX2e do not coincide with the coordinates of the first pixel PX1 contained in the input image IM1.
[0049] The above correspondence 401 can be expressed by the following equation, focusing on the X coordinate. u={(X1-1-2α) / (X2-1)}×u2+α …(6) However, the X-coordinate u2 is the X-coordinate of the pixel PX2t of interest in the XY coordinate plane aligned with the transformed image IM2. If the input image IM1 has symmetry in the X direction, then the transformed image IM2 will also have symmetry in the X direction when equation (6) is applied. Focusing on the Y coordinate, the above correspondence 401 can be expressed by the following equation. v={(Y1-1-2α) / (Y2-1)}×v2+α …(7) However, the Y coordinate v2 is the Y coordinate of the pixel PX2t of interest in the XY coordinate plane aligned with the transformed image IM2. If the input image IM1 has symmetry in the Y direction, then by applying equation (7) above, the transformed image IM2 will also have symmetry in the Y direction.
[0050] Here, the amount of shift is defined as the magnitude by which the reference point P0 is shifted inward from the input image IM1, relative to the linear correspondence relationship 901. Equation (6) above, which represents the correspondence relationship 401 shown in Figure 4, represents a linear correspondence such that, in the X direction, the closer the second pixel PX2 is to the intermediate position IP between the second start pixel PX2s and the second end pixel PX2e, the smaller the amount of shift in the second pixel PX2. The reference point determination unit U1 uses equation (6) above to determine the X coordinate of the reference point P0. Therefore, the reference point determination unit U1 determines the X coordinates of the reference point P0 for the second start pixel PX2s, the intervening pixel PX2b, and the second end pixel PX2e, such that, in the X direction, the closer the second pixel PX2 is to the intermediate position IP, the smaller the amount of shift in the second pixel PX2. From this, the reference point determination unit U1 determines the X coordinate of the reference point P0 for the intervening pixel PX2b such that the amount of shift β in the intervening pixel PX2b is smaller than the offset amount α in the second start pixel PX2s and the second end pixel PX2e. Furthermore, equation (7) above, which represents the correspondence relationship 401 shown in Figure 4, represents a linear correspondence in the Y direction such that the closer the second pixel PX2 is to the intermediate position IP between the second start pixel PX2s and the second end pixel PX2e, the smaller the shift amount in the second pixel PX2. The reference point determination unit U1 uses equation (7) above to determine the Y coordinate of the reference point P0. Therefore, the reference point determination unit U1 determines the Y coordinate of the reference point P0 for the second start pixel PX2s, the intervening pixel PX2b, and the second end pixel PX2e in the Y direction such that the closer the second pixel PX2 is to the intermediate position IP, the smaller the shift amount in the second pixel PX2. From this, the reference point determination unit U1 determines the Y coordinate of the reference point P0 for the intervening pixel PX2b such that the shift amount β in the intervening pixel PX2b is smaller than the offset amount α in the second start pixel PX2s and the second end pixel PX2e.
[0051] Figure 4 shows the offset amount α1 as the offset amount α used for resolution conversion to reduce the number of pixels. An offset amount α1 of 0.5 is preferred. When α1 = 0.5, the reference point determination unit U1 determines the coordinates in the X,Y directions of the reference points P0 for the second pixels located at both ends of the X,Y directions among the multiple second pixels PX2 to be shifted inward from the first direction end coordinates Xs,Xe of the input image IM1 by 0.5 pixels of the input image IM1. The reason why α1 = 0.5 is preferred will be explained below with reference to Figure 5. Figure 5 schematically illustrates the reference point P0 and reference point G0 for the second pixel PX2 located at the corner of the converted image IM2 in a resolution conversion that reduces the number of pixels.
[0052] For example, in the converted image IM2, the coordinates (u,v) of the reference point P0 for the pixel of interest PX2t located at the origin (0,0) are (α1,α1). When α1 = 0.5, the reference points with the highest weights among the 16 reference points G0 are the four reference points located at (0,0), (0,1), (1,0), and (1,1). As a result, the color of the pixel of interest PX2t will be close to the average color of the colors of these four reference points, and will not be limited to the color of the first pixel PX1 located at the origin (0,0) in the input image IM1. In the converted image IM2, the coordinates (u,v) of the reference point P0 for the second pixel PX2 located at the endpoint (X2-1,Y2-1) are (Xe-α1,Ye-α1). When α1 = 0.5, the four reference points with the highest weights among the 16 reference points G0 are the four reference points located at (Xe,Ye), (Xe,Ye-1), (Xe-1,Ye), and (Xe-1,Ye-1). As a result, the color of the second pixel PX2 at the endpoint in the transformed image IM2 will be close to the average color of these four reference points, and will not be limited to the color of the first pixel PX1 at the endpoint (Xe,Ye) in the input image IM1. The same can be said for the second pixel PX2 located at (0,Y2-1) and (X2-1,0) in the converted image IM2.
[0053] In the XY coordinate plane aligned with the converted image IM2, the color of intervening pixel PX2b with an X coordinate of 0 will be close to the average color of intervening pixel PX1b with an X coordinate of 0 and intervening pixel PX1b with an X coordinate of 1 in the XY coordinate plane aligned with the input image IM1. In the XY coordinate plane aligned with the converted image IM2, the color of intervening pixel PX2b with an X coordinate of X2-1 will be close to the average color of intervening pixel PX1b with an X coordinate of Xe and intervening pixel PX1b with an X coordinate of Xe-1 in the XY coordinate plane aligned with the input image IM1. In the XY coordinate plane aligned with the converted image IM2, the color of intervening pixel PX2b with a Y coordinate of 0 will be close to the average color of intervening pixel PX1b with a Y coordinate of 0 and intervening pixel PX1b with a Y coordinate of 1 in the XY coordinate plane aligned with the input image IM1. In the XY coordinate plane aligned with the converted image IM2, the color of intervening pixel PX2b with a Y coordinate of Y2-1 will be close to the average color of intervening pixel PX1b with an X coordinate of Ye and intervening pixel PX1b with a Y coordinate of Ye-1 in the XY coordinate plane aligned with the input image IM1.
[0054] As described above, the strong appearance of the color of the four sides of the input image IM1, and the first pixel PX1 located one pixel inward, in the second pixel PX2 located on all four sides of the converted image IM2 is avoided. Therefore, by setting α1 = 0.5, a high-quality reduced image can be obtained. Furthermore, by applying the same offset amount α1 to the reference points P0 at both ends in the X direction, if the color of each first pixel PX1 of the input image IM1 is symmetrical in the X direction, a symmetrical, high-quality converted image IM2 can be obtained. By applying the same offset amount α1 to the reference points P0 at both ends in the Y direction, if the color of each first pixel PX1 of the input image IM1 is symmetrical in the Y direction, a symmetrical, high-quality converted image IM2 can be obtained.
[0055] Figure 6 schematically illustrates how the input image IM1, which is a striped image with vertical stripes that are symmetrical in the X and Y directions, is reduced in size to form the tiling pattern TP1. As shown in Figure 6, the color intensity of the second pixels PX2 located on the two sides along the Y direction in the converted image IM2 is suppressed compared to the color intensity of the first pixels PX1 located on the two sides along the Y direction in the input image IM1. As a result, the difference in color between the second pixels PX2 located on the two sides along the Y direction and the second pixels PX2 located on the inside is suppressed in the converted image IM2. As shown in Figure 6, if the first pixels PX1 located on the two sides along the Y direction in the input image IM1 are dark, the intensity of the second pixels PX2 located on the two sides along the Y direction in the converted image IM2 is suppressed. The same can be said if the input image IM1 is a striped image with horizontal stripes that are symmetrical in the X and Y directions. Therefore, the resolution conversion in this specific example can harmonize the colors in the converted image more effectively.
[0056] Based on the above, when a tiling pattern TP1, such as a textile pattern, is formed on the medium ME1 by repeatedly arranging the converted images IM2 side by side, as shown in the lower part of Figure 6, the color of the seams between the converted images IM2 in the tiling pattern TP1 is not noticeable.
[0057] Figure 7 schematically illustrates an example of converting coordinates s2 on the converted image IM2 to coordinates s1 on the input image IM1 in a resolution conversion that increases the number of pixels. The following explanation also refers to Figure 2. Coordinate conversion is performed for both the X and Y coordinates. Figure 7 shows the offset amount α2 as the offset amount α used in the resolution conversion that increases the number of pixels. The correspondence relationship 402, obtained by adding the offset amount α2 to the linear correspondence relationship 901, is expressed by the following equation. s1={(S1-1-2α2) / (S2-1)}×s2+α2 …(8) Focusing on the x-coordinate, correspondence 402 can be expressed by the following equation. u={(X1-1-2α2) / (X2-1)}×u2+α2 …(9) Focusing on the Y-coordinate, correspondence 402 can be expressed by the following equation. v={(Y1-1-2α2) / (Y2-1)}×v2+α2 …(10)
[0058] The above equation (9), which represents the correspondence relationship 402 shown in Figure 7, represents a linear correspondence such that, in the X direction, the closer the second pixel PX2 is to the intermediate position IP between the second start pixel PX2s and the second end pixel PX2e, the smaller the shift amount in the second pixel PX2. The reference point determination unit U1 determines the X coordinates of the reference point P0 for the second start pixel PX2s, the intervening pixel PX2b, and the second end pixel PX2e, such that, in the X direction, the closer the second pixel PX2 is to the intermediate position IP, the smaller the shift amount in the second pixel PX2. From this, the reference point determination unit U1 determines the X coordinates of the reference point P0 for the intervening pixel PX2b such that the shift amount β in the intervening pixel PX2b is smaller than the offset amount α2 in the second start pixel PX2s and the second end pixel PX2e. Similarly, the reference point determination unit U1 determines the coordinates of the reference point P0 in the Y direction for the intervening pixel PX2b such that the shift amount β in the intervening pixel PX2b is smaller than the offset amount α2 in the second starting pixel PX2s and the second ending pixel PX2e.
[0059] The offset amount α2 when the number of pixels increases is preferably smaller than the offset amount α1 when the number of pixels decreases, and 0 < α2 < 0.5 is preferred. Figure 7 shows the correspondence 402 when α2 = 0.125. When 0 < α2 < 0.5, the reference point determination unit U1 determines the coordinates in the X,Y direction of the reference point P0 for the second pixels at both ends of the X,Y direction among the multiple second pixels PX2 to be coordinates that are greater than 0 and smaller than 0.5 pixels of the input image IM1, and shifted inward from the first direction end coordinates Xs,Xe of the input image IM1. The reason why 0 < α2 < 0.5 is preferred will be explained below with reference to Figure 8. Figure 8 schematically illustrates the reference point P0 and reference point G0 for the second pixel PX2 located at the corner of the converted image IM2 in a resolution conversion that increases the number of pixels.
[0060] For example, in the converted image IM2, the coordinates (u,v) of the reference point P0 for the second pixel PX2 located at the origin (0,0) are (α2,α2). When the number of pixels increases during resolution conversion, the spacing between the reference points P0 for each second pixel PX2 becomes narrower than the spacing between the first pixels PX1 in the input image IM1. If the offset amount α2 is set to 0.5, the color of the second pixel PX2 at the origin will be close to the average color of the four reference points G0 located at (0,0), (0,1), (1,0), and (1,1), resulting in a color that deviates from the color of the first pixel PX1 at the origin (0,0) in the input image IM1. By making the offset amount α2 smaller than 0.5, the coordinates (u,v) of the reference point P0 for the second pixel PX2 at the origin will be closer to the origin (0,0), and the color of the edges of the converted image IM2 will be closer to the color of the edges of the input image IM1 before scaling. However, if the offset amount α2 is set to 0, the color of the second pixel PX2 at the origin is limited to the color of the first pixel PX1 at the origin (0,0), which becomes conspicuous. Therefore, the offset amount α2 is set to be greater than 0 and less than 0.5. The same applies to the second pixel PX2 located at the endpoints (X2-1,Y2-1), (0,Y2-1), and (X2-1,0) in the converted image IM2.
[0061] The color of intervening pixel PX2b, whose X coordinate is 0 in the XY coordinate plane aligned with the converted image IM2, will be close to the color of the first pixel PX1, whose X coordinate is 0 in the XY coordinate plane aligned with the input image IM1 before scaling. Since the offset amount α2 is greater than 0, the color of intervening pixel PX2b with an X coordinate of 0 is inconspicuous. The same can be said for intervening pixel PX2b with an X coordinate of X2-1, and for intervening pixel PX2b with a Y coordinate of 0 or Y2-1. Therefore, by setting 0 < α2 < 0.5, a high-quality enlarged image can be obtained.
[0062] As described above, the resolution conversion magnification of the input image IM1 may differ between the X and Y directions. For example, when the number of pixels is reduced in the X direction and increased in the Y direction, the reference point determination unit U1 may apply equation (6) above with offset amount α set to α1 for the X direction, and apply equation (10) above with offset amount α set to α2 for the Y direction. When the number of pixels is changed in the Y direction without changing the number of pixels in the X direction, the reference point determination unit U1 may align the coordinates (u,v) of the reference point P0 with the coordinates of the first pixel PX1 for the X direction, and apply equation (7) above with offset amount α set to α1 for the Y direction, or apply equation (10) above with offset amount α set to α2.
[0063] (3) Specific examples of tiling pattern output processing: Figure 9 schematically illustrates the tiling pattern output process, which outputs a tiling pattern TP1 from the input image IM1. The tiling pattern output process will be explained below with reference to Figures 1 to 8. The tiling pattern output processing in this specific example is performed by the host device 100 shown in Figure 1. The tiling pattern output processing starts when the host device 100 receives a user operation at the input device 115 to print the tiling pattern TP1 to the printer 200. Here, steps S104 to S110 correspond to the reference point determination process ST1, the reference point determination unit U1, and the reference point determination function FU1. Steps S112 to S114 correspond to the interpolation process ST2, the interpolation unit U2, and the interpolation function FU2. Step S118 corresponds to the color conversion process ST3, the color conversion unit U3, and the color conversion function FU3. Step S120 corresponds to the halftone processing process ST4, the halftone processing unit U4, and the halftone processing function FU4. Step S122 corresponds to the tiling process ST5, the tiling unit U5, and the tiling function FU5. Hereafter, the term "step" may be omitted, and the step number may be indicated in parentheses.
[0064] When the tiling pattern output process starts, the host device 100 acquires the image sizes before and after resolution conversion (S102). As shown in FIG. 2, the image sizes include the number of pixels X1 in the X direction of the input image IM1, the number of pixels Y1 in the Y direction of the input image IM1, the number of pixels X2 in the X direction of the converted image IM2, and the number of pixels Y2 in the Y direction of the converted image IM2. Incidentally, when the color system of the input image IM1 is RGB, the pixel value of each first pixel PX1 is a combination of an R value, a G value, and a B value.
[0065] Next, the host device 100 sets an offset amount α in the X direction (S104). When X2 < X1, since resolution conversion is performed to reduce the number of pixels to lower the resolution, an offset amount α1 during reduction (see FIG. 4) is set. When X2 > X1, since resolution conversion is performed to increase the number of pixels to increase the resolution, an offset amount α² during enlargement (see FIG. 7) is set. As described above, α2 < α1. Incidentally, when X2 = X1, since no resolution conversion is performed, α = 0 may be set. Also, the host device 100 sets an offset amount α in the Y direction (S106). When Y2 < Y1, since resolution conversion is performed to reduce the number of pixels, an offset amount α1 during reduction is set. When Y2 > Y1, since resolution conversion is performed to increase the number of pixels, an offset amount α2 during enlargement is set. Incidentally, when Y2 = Y1, since no resolution conversion is performed, α = 0 may be set.
[0066] After setting the offset amount α, the host device 100 sets a target pixel PX2t from among a plurality of second pixels PX2 that will become the converted image IM2 (S108). This process can be a process of setting the coordinates (u2, v2) of the target pixel PX2t.
[0067] Next, the host device 100 determines the coordinates (u,v) of the reference point P0 using equation (5) above (S110). When the host device 100 performs a resolution transformation for the X coordinate, it calculates the X coordinate u of the reference point P0 using equation (6) above, i.e., u = {(X1-1-2α) / (X2-1)} × u2 + α. When the host device 100 performs a resolution transformation for the Y coordinate, it calculates the Y coordinate v of the reference point P0 using equation (7) above, i.e., v = {(Y1-1-2α) / (Y2-1)} × v2 + α. Of course, if a resolution transformation that reduces the number of pixels is performed, α = α1, and if a resolution transformation that increases the number of pixels is performed, α = α2. As described above, the reference point determination unit U1 determines the X,Y coordinates of the reference point P0 for the pixel of interest PX2t such that the closer the second pixel PX2 is to the intermediate position IP between the second start pixel PX2s and the second end pixel PX2e in the X,Y direction, the smaller the shift amount (α or β) in the second pixel PX2.
[0068] Next, the host device 100 acquires the pixel values p11 to p44 (see Figure 3) of 4x4 reference points G0, which are based on the reference point P0, from among the multiple first pixels PX1 contained in the input image IM1 (S112). Each reference point G0 is within a predetermined range AR1 used for interpolation calculations using the bicubic method, with respect to the reference point P0. If the color system of the input image IM1 is RGB, the host device 100 acquires the pixel values p11 to p44 for the R value, G value, and B value, respectively. Next, the host device 100 calculates the pixel value p of the pixel of interest PX2t by performing an interpolation operation using the bicubic method with the pixel values p11 to p44 (S114). If the color system of the input image IM1 is RGB, the host device 100 calculates the pixel value p for each of the R, G, and B values.
[0069] As described above, the interpolation unit U2 determines the pixel value p of the second pixel PX2 based on the pixel values of multiple reference pixels PX3 located within a predetermined range AR1 with respect to the reference point P0, among the multiple first pixels PX1.
[0070] After determining the pixel value p, the host device 100 branches the process depending on whether or not there are any unprocessed second pixels PX2 whose pixel value p has not yet been determined (S116). If there are any unprocessed second pixels PX2, the host device 100 repeats the processes S108 to S116. As a result, a pixel value p is determined for all second pixels PX2 that will become the converted image IM2. Once a converted image IM2 is generated in which all second pixels PX2 have a pixel value p, the host device 100 proceeds to process S118.
[0071] In S118, the host device 100 converts the converted image IM2 to, for example, two C, M, Y, and K elements. 8 A color conversion process is performed to convert the data into ink amount data having integer values of gradation. The color conversion process in S118 can be, for example, a process that converts the R, G, and B values of each second pixel PX2 into ink amount data while referring to a color conversion lookup that defines the correspondence between the gradation values of R, G, and B and the gradation values of C, M, Y, and K.
[0072] Next, the host device 100 reduces the number of gradations in the gradation values of each pixel constituting the ink amount data by performing a predetermined halftone process, thereby generating halftone data (S120). For the halftone process, dithering, error diffusion, density pattern, etc., can be used. The halftone data represents the dot formation state on a pixel-by-pixel basis and may be binary data indicating the presence or absence of dot formation, or it may be multi-level data with three or more gradations that can handle dots of different sizes, such as small, medium, and large.
[0073] Next, the host device 100 performs a tiling process to generate tiling pattern data by repeatedly arranging halftone data adjacent to each other in the X and Y directions (S122). The tiling pattern data is data that causes the medium ME1 to form a tiling pattern TP1 on the medium ME1 by repeatedly arranging converted images IM2 adjacent to each other in the X and Y directions as the print image IM3.
[0074] Subsequently, the host device 100 transmits the tiling pattern data to the printer 200, causing the printer 200 to print the tiling pattern TP1 as shown in Figure 6 (S124), and then terminates the tiling pattern output process. Upon receiving the tiling pattern data, the printer 200 ejects ink droplets from the print head 220 so that the tiling pattern TP1 is formed on the medium ME1 based on the tiling pattern data. As described above, the control unit U10, which includes the color conversion unit U3, the halftone processing unit U4, and the tiling unit U5, controls the ejection of ink from the print head 220 so that the tiling pattern TP1 is formed on the medium ME1.
[0075] Furthermore, if the printer 200 is capable of tiling, the host device 100 may send halftone data to the printer 200, and the printer 200, upon receiving the halftone data, may perform tiling. If the printer 200 is also capable of halftone processing, the host device 100 may send ink volume data to the printer 200, and the printer 200, upon receiving the ink volume data, may perform halftone processing. If the printer 200 is also capable of color conversion, the host device 100 may send the converted image IM2 to the printer 200, and the printer 200, upon receiving the converted image IM2, may perform color conversion.
[0076] Focusing on the edges of each converted image IM2, the X and Y coordinates of the reference point P0 of the second starting pixel PX2s and the second ending pixel PX2e (see Figure 2) are shifted inward from the coordinates of the edge of the input image IM1 by a pixel offset amount α such that 0 < α < 1. This prevents the strong appearance of the color of the first pixel PX1, which is located at the edge of the input image IM1, in the second starting pixel PX2s and the second ending pixel PX2e. Therefore, this specific example of image processing makes it possible to harmonize the colors within the image after resolution conversion.
[0077] Focusing on the tiling pattern TP1, the color of the first pixel PX1 existing at the edge of the input image IM1 in the second start pixel PX2s and the second end pixel PX2e is strongly manifested, so it is avoided that the joints between the converted images IM2 in the tiling pattern TP1 are conspicuous. Therefore, this specific example can print a tiling pattern TP1 with good image quality. In particular, when the tiling pattern TP1 is a textile pattern in which a pattern pattern having symmetry in at least one of the X direction and the Y direction is repeated as the converted image IM2, each converted image IM2 has symmetry. As a result, the colors of the joints between the converted images IM2 in the tiling pattern TP1 match, and a tiling pattern TP1 with good image quality is formed on the medium ME1.
[0078] Incidentally, the conditions for the second start pixel PX2s and the second end pixel PX2e in the X direction of the converted image IM2 to have the same pixel value are as follows. The first pixels PX1 with the X coordinates Xs = 0 and Xe all have the same pixel value (referred to as q1), the first pixels PX1 with the X coordinates Xs + 1 and Xe - 1 all have the same pixel value (referred to as q2), and the first pixels PX1 with the X coordinates Xs + 2 and Xe - 2 all have the same pixel value (referred to as q3). The pixel values of the second start pixel PX2s and the second end pixel PX2e are not necessarily q1. For example, if q1 < q2 and q1 < q3, they are larger than q1.
[0079] The conditions for the second start pixel PX2s and the second end pixel PX2e in the Y direction of the converted image IM2 to have the same pixel value are as follows. The first pixels PX1 with the Y coordinates Ys = 0 and Ye all have the same pixel value (referred to as q1), the first pixels PX1 with the Y coordinates Ys + 1 and Ye - 1 all have the same pixel value (referred to as q2), and the first pixels PX1 with the Y coordinates Ys + 2 and Ye - 2 all have the same pixel value (referred to as q3). Similarly, the pixel values of the second start pixel PX2s and the second end pixel PX2e do not necessarily become q1. For example, if q1 < q2 and q1 < q3, they will be greater than q1.
[0080] From the above, the image processing apparatus U0 obtains the converted image IM2 by converting the resolution of the input image IM1 that satisfies the above conditions so that the second start pixel PX2s and the second end pixel PX2e have the same pixel value.
[0081] (4) Various application examples: FIG. 10 schematically shows an application example of forming the tiling pattern TP1 from the input image IM1 which is a stripe image of a single pixel line. The input image IM1 shown in FIG. 10 has an image size of X1 = Y1 = 13 pixels. The pixel values of all the first pixels PX1 with even Y coordinates are gradation values indicating black, and the pixel values of all the first pixels PX1 with odd Y coordinates are gradation values indicating white. When the color space system of the input image IM1 is RGB, the pixel values (R value, G value, and B value) of the first pixel PX1 with an even Y coordinate are, for example, 0, and the pixel values (R value, G value, and B value) of the first pixel PX1 with an odd Y coordinate are, for example, 255. The input image IM1 shown in FIG. 10 is a stripe image with a horizontal stripe pattern in which a 1-pixel line of black and a 1-pixel line of white along the X direction are alternately arranged in the Y direction. Therefore, the input image IM1 has symmetry in the X direction and the Y direction. The converted image IM2 shown in FIG. 10 has an image size of X2 = Y2 = 3 pixels.
[0082] As shown in Figure 10, in the converted image IM2, the second pixel PX2 with Y coordinates Ys=0 and Ye=2 will have a color between the black and white lines in the input image IM1, and will all be the same color. When the offset amount α1 is 0.5, the second pixel PX2 with Y coordinates Ys=0 and Ye=2 in the converted image IM2 will have a color close to the intermediate color between the black and white lines in the input image IM1. In the converted image IM2, the second pixel PX2 with Y coordinate 1 will all be the same color and will be darker than the second pixel PX2 with Y coordinates Ys=0 and Ye=2. Therefore, the converted image IM2 is a striped image with a horizontal pattern in which relatively light single pixel lines along the X direction and relatively dark single pixel lines along the X direction are alternately arranged in the Y direction, and it has symmetry in the X and Y directions. In the tiling pattern TP1, which is a textile pattern created by repeatedly arranging the converted images IM2 side by side in the X and Y directions, the color at the seams between the converted images IM2 is not noticeable. The same applies if the input image IM1 is a striped image with vertical stripes of one pixel each.
[0083] Furthermore, when performing resolution conversion using the above equations (3) and (4) which represent the linear correspondence relationships 901 and 902 shown in Figure 14, the second pixel PX2 with Y coordinate Ys=0 and the second pixel PX2 with Y coordinate Ye=2 may have different density values in the converted image IM2.
[0084] Figure 11 schematically shows four examples of converted images IM2 formed from the input image IM1, which is a striped image with one pixel line, when an offset amount α1 = 0.5 is applied to the above equation (5) representing the correspondence relationship 401 shown in Figure 4. In the four examples shown in Figure 11, in all input images IM1, the pixel values (R, G, and B values) of the first pixel PX1 with an even Y coordinate are all black, with a grayscale value of 0, and the pixel values (R, G, and B values) of the first pixel PX1 with an odd Y coordinate are all white, with a grayscale value of 255. The image sizes of the input image IM1 are, from top to bottom, X1=Y1=1000 pixels, X1=Y1=1001 pixels, X1=Y1=1002 pixels, and X1=Y1=1003 pixels. Each converted image IM2 is obtained by performing a resolution conversion that reduces the number of pixels in the input image IM1 by a conversion magnification of 0.25 in both the X and Y directions. From input images IM1 with X1=Y1=1000 pixels and X1=Y1=1001 pixels, a converted image IM2 with X2=Y2=250 pixels was obtained, and from input images IM1 with X1=Y1=1002 pixels and X1=Y1=1003 pixels, a converted image IM2 with X2=Y2=251 pixels was obtained. The graph to the right of each converted image IM2 shows the pixel values (R, G, and B values) of the second pixel PX2 with respect to the Y coordinate in the XY coordinate plane aligned with the converted image IM2. In each graph, the horizontal axis is the Y coordinate indicating the position of the second pixel PX2 in the Y direction, and the vertical axis is the pixel value of the second pixel PX2.
[0085] As shown in Figure 11, moiré patterns appear in the converted image IM2 that correspond to changes in the pixel values of the converted image IM2, depending on the image size of the input image IM1. However, in all converted images IM2, the pixel values at both ends in the Y direction are the same, and the density at both ends in the Y direction is the same.
[0086] Figure 12 schematically shows four examples of converted images IM2 formed from an input image IM1, which is a striped image of one pixel line, in a comparative example in which resolution conversion is performed using the above equation (3) representing the linear correspondence relationship 901 shown in Figure 14. Figure 13 schematically shows four examples of converted images IM2 formed from an input image IM1, which is a striped image of one pixel line, in a comparative example in which resolution conversion is performed using the above equation (4) representing the linear correspondence relationship 902 shown in Figure 14. The four input images IM1 shown in Figures 12 and 13 are the same as the four input images IM1 in the example shown in Figure 11. The conversion magnification in the X and Y directions is 0.25, the same as in the example shown in Figure 11. The image size of the obtained converted image IM2 is the same as in the example shown in Figure 11. The graph to the right of each converted image IM2 shows the pixel values (R value, G value, and B value) of the second pixel PX2 with respect to the Y coordinate in the XY coordinate plane aligned with the converted image IM2.
[0087] As shown in Figure 12, moiré patterns appear in the converted image IM2 that correspond to changes in the pixel values of the converted image IM2 depending on the image size of the input image IM1. However, the moiré patterns shown in Figure 12 are different from those shown in Figure 11. In the comparative example shown in Figure 12, calculation errors may occur due to integerization, etc., and the density at both ends in the Y direction of the converted image IM2 shown in Figure 12 may or may not be uniform. In the converted image IM2 shown in Figure 13, no moiré pattern is observed when the image size of the input image IM1 is X1=Y1=1000 pixels. However, when the image size of the input image IM1 is other sizes, different moiré patterns are observed depending on the image size of the input image IM1. The moiré pattern shown in Figure 13 is different from the moiré pattern shown in Figure 11. In the converted image IM2 shown in Figure 13, the density at both ends in the Y direction may or may not be uniform.
[0088] As shown in Figures 11-13, this specific example of image processing can generate a converted image IM2 with harmonious color tones, regardless of the resolution conversion ratio or the image size of the converted image IM2.
[0089] (5) Variations: Various modifications of this invention are conceivable. For example, the reference point determination unit U1 and the interpolation unit U2 may be provided in the printer 200. Therefore, the tiling pattern output processing shown in Figure 9 may be performed by the printer 200. The entity performing the tiling pattern output processing is not limited to the CPU; it may also be an electronic component other than the CPU, such as an ASIC. Here, ASIC is an abbreviation for Application Specific Integrated Circuit. Of course, multiple CPUs may cooperate to perform the tiling pattern output processing, or a CPU and another electronic component (such as an ASIC) may cooperate to perform the tiling pattern output processing.
[0090] The tiling pattern output process can be modified as needed, such as by changing the order of the steps. For example, in the tiling pattern output process, the processes of S104 and S106 can be swapped. Alternatively, a tiling process may be performed immediately after the color conversion process of S118 to generate tiling pattern ink amount data by repeatedly arranging the ink amount data adjacent to each other, and then tiling pattern data may be generated by performing a halftone process on the tiling pattern ink amount data. Furthermore, a tiling process may be performed immediately after the converted image IM2 is generated to generate a tiling pattern image by repeatedly arranging the converted images IM2 adjacent to each other, and then tiling pattern data may be generated by performing a color conversion process and a halftone process on the tiling pattern image.
[0091] The color system of the input image IM1 is not limited to RGB; it can also be CMY, CMYK, etc. The color system of the converted image IM2 will be matched to the color system of the input image IM1.
[0092] The amount of inward shift of the reference point P0 in the input image IM1 relative to the linear correspondence relationship 901 (see Figures 4 and 7) is not limited to changing linearly according to the coordinates on the converted image IM2. If the coordinates of the reference point P0 in the X and Y directions of the second starting pixel PX2s and the second ending pixel PX2e (see Figure 2) are shifted inward by a pixel amount equal to the offset α, a basic effect of harmonizing the colors in the image after resolution conversion can be obtained. Therefore, the correspondence relationships 401 and 402 shown in Figures 4 and 7 may be replaced with curvilinear correspondence relationships, etc.
[0093] (6) Conclusion: As explained above, according to the present invention, it is possible to provide technologies that can further harmonize the colors in an image after resolution conversion, in various embodiments. Of course, even a technology consisting only of the constituent elements of an independent claim can obtain the basic functions and effects described above. Furthermore, configurations obtained by substituting or changing the combinations of each configuration disclosed in the above-mentioned examples, configurations obtained by substituting or changing the combinations of each configuration disclosed in the prior art and the above-mentioned examples, etc., are also possible. The present invention also includes these configurations, etc. [Explanation of symbols]
[0094] 100…Host device, 200…Printer, 220…Print head, 300…Coordinate plane, 401, 402…Correspondence relationship, 901…Linear correspondence relationship, AR1…Determined range, D1…First direction, D2…Second direction, G0…Reference point, IM1…Input image, IM2…Converted image, IM3…Printed image, IP…Intermediate position between second start pixel and second end pixel, ME1…Medium, P0…Reference point, PX1…First pixel, PX1s…First start pixel, PX1e…First end pixel, PX2…Second pixel, PX2s…Second start pixel, PX2e…Second end pixel, PX2b ...intervening pixel, PX2t...target pixel, PX3...reference pixel, ST1...reference point determination process, ST2...interpolation process, ST3...color conversion process, ST4...halftone processing process, ST5...tiling process, SY1...printing system, TP1...tiling pattern, U0...image processing device, U1...reference point determination unit, U2...interpolation unit, U3...color conversion unit, U4...halftone processing unit, U5...tiling unit, U10...control unit, Xs,Xe...first direction end coordinates, Ys,Ye...second direction end coordinates, α,α1,α2...offset amount, β...shift amount of intervening pixel.
Claims
1. An image processing apparatus capable of performing image processing to obtain a converted image having a plurality of second pixels by converting the resolution of an input image having a plurality of first pixels arranged in a first direction and a second direction intersecting the first direction, A reference point determination unit determines the coordinates of a reference point for determining the pixel value of the second pixel included in the converted image, in a coordinate plane aligned with the input image. The system includes an interpolation unit that determines the pixel value of a second pixel based on the pixel values of a plurality of reference pixels that are within a predetermined range relative to the reference point, among the plurality of first pixels, The coordinates in the first direction of the first pixels located at each of the ends of the first direction among the plurality of first pixels are defined as the first direction end coordinates. The reference point determination unit determines the coordinates in the first direction of the reference points of the second pixels located at both ends of the first direction among the plurality of second pixels to be coordinates that are greater than 0 and smaller than one pixel of the input image, and are shifted inward from the coordinates of the first direction end to the input image.
2. The coordinates in the second direction of the first pixels located at each of the two ends of the aforementioned plurality of first pixels are defined as the second direction end coordinates. The image processing apparatus according to claim 1, wherein the reference point determination unit determines the coordinates in the second direction of the reference points for the second pixels located at both ends of the second direction among the plurality of second pixels to be coordinates that are greater than 0 and smaller than one pixel of the input image, and are shifted inward from the second direction end coordinates to the input image.
3. Of the plurality of first pixels, the first pixel at the beginning of the first direction is designated as the first starting pixel, and the first pixel at the end of the first direction is designated as the first ending pixel. Of the plurality of second pixels, the second pixel at the starting end of the first direction is designated as the second starting pixel, and the second pixel at the ending end of the first direction is designated as the second ending pixel. Of the plurality of second pixels, the second pixel located between the second start pixel and the second end pixel in the first direction is defined as an intervening pixel. Based on a linear correspondence relationship in which the coordinates of the first and second starting pixels in the first direction are assigned as the origin, and the coordinates of the second ending pixel in the first direction are assigned as the coordinates of the first ending pixel in the first direction, the amount by which the reference point is shifted inward in the first direction of the input image is defined as the shift amount. The image processing apparatus according to claim 1, wherein the reference point determination unit determines the coordinates of the reference point in the first direction for the intervening pixel such that the amount of shift in the intervening pixel is smaller than the amount of shift in the second starting pixel and the second ending pixel.
4. The image processing apparatus according to claim 3, wherein the reference point determination unit determines the coordinates of the reference point in the first direction for the intervening pixel such that the amount of shift in the second pixel decreases as the second pixel gets closer to an intermediate position between the second start pixel and the second end pixel in the first direction.
5. The pixel values of the aforementioned plurality of reference pixels are 16 pixel values used in interpolation calculations using the bicubic method. The image processing apparatus according to claim 1, wherein the interpolation unit determines the pixel value of the second pixel by performing the interpolation operation using the 16 pixel values.
6. The image processing apparatus according to claim 1, wherein, when the reference point determination unit performs a process to reduce the number of pixels in the first direction as part of the image processing, it determines the coordinates in the first direction of the reference points of the second pixels located at both ends of the first direction among the plurality of second pixels to be shifted inward from the coordinates of the first direction end of the input image by 0.5 pixels of the input image.
7. The image processing apparatus according to claim 1, wherein, when the reference point determination unit performs an image processing to increase the number of pixels in the first direction, it determines the coordinates in the first direction of the reference points of the second pixels located at both ends of the first direction among the plurality of second pixels to be coordinates shifted inward from the coordinates of the first direction end of the input image, within a range greater than 0 and less than 0.5 pixels of the input image.
8. An image processing apparatus according to any one of claims 1 to 7, A print head having multiple nozzles capable of dispensing liquid onto a medium, A printing system comprising: a control unit that controls the discharge of the liquid from the print head so that a printed image based on the converted image is formed on the medium.
9. The printing system according to claim 8, wherein the control unit controls the discharge of the liquid from the print head so that a tiling pattern is formed on the medium in which the converted images are repeatedly arranged side by side as the printed image.
10. An image processing method for obtaining a converted image having a plurality of second pixels by converting the resolution of an input image having a plurality of first pixels arranged in a first direction and a second direction intersecting the first direction, A reference point determination step in which, in a coordinate plane aligned with the input image, the coordinates of a reference point for determining the pixel value of the second pixel included in the converted image are determined, The process includes an interpolation step of determining the pixel value of a second pixel based on the pixel values of a plurality of reference pixels that are within a predetermined range relative to the reference point, among the plurality of first pixels, The coordinates in the first direction of the first pixels located at each of the ends of the first direction among the plurality of first pixels are defined as the first direction end coordinates. An image processing method in which, in the reference point determination step, the coordinates of the reference points in the first direction for the second pixels located at both ends of the first direction among the plurality of second pixels are determined to be coordinates that are greater than 0 and smaller than one pixel of the input image, and are shifted inward from the coordinates of the first direction end to the input image.
Citation Information
Patent Citations
Method for expanding / contracting image
JP1993334427A
Electronic zooming processing unit and its method
JP1996279949A
Device and method for image processing, and image processing program recording medium
JP2001028051A
Color interpolation method for single board solid-state image pickup element, and recording medium recording color interpolation processing program for single board solid-state image pickup element
JP2001258040A
Pixel interpolator and pixel interpolation program
JP2006262306A