Patent Description:
Conventionally, a display apparatus is proposed which combines a close-up image and a far-away image to generate a composite image for display (e.g., Patent No. <CIT>). The close-up image is intended to be perceived by a viewer who is close to the display apparatus. The far-away image is intended to be perceived by a viewer who is far away from the display apparatus.

However, the display apparatus disclosed in Patent No. <CIT> fails to consider the composite position of a close-up image and a far-away image. Accordingly, depending on the composite position of the close-up image and the far-away image, for example, a majority of edge portions of the far-away image overlaps with the close-up image, resulting in a composite image that is not easy for the viewer to perceive.

The present disclosure is made in view of such circumstances. An object of the present disclosure is to propose a technology of generating a composite image that is easy for a viewer to perceive.

To achieve the abovementioned object, there is provided an image processing apparatus as set out in independent claim <NUM>, an image processing program as set out in independent claim <NUM>, and an image processing method as set out in independent claim <NUM>. Advantageous developments are defined in the dependent claims.

The advantages and features provided by one or more embodiments of the disclosure will become more fully understood from the detailed description given herein below and the appended drawings which are given by way of illustration only, and thus are not intended as a definition of the limits of the present disclosure.

Hereinafter, one or more embodiments of the present disclosure will be described with reference to the drawings. However, the scope of the disclosure is not limited to the disclosed embodiments.

An image forming apparatus according to embodiments of the present disclosure will be described, with reference to the accompanying drawings. In the embodiments described below, when referring to the number, amount, etc., the scope of the present disclosure is not necessarily limited to the number, amount, etc., unless otherwise specified. The same reference numerals refer to like parts and corresponding parts, and redundant description may not be repeated. It is planned from the beginning to use the configurations according to the embodiments in combination as appropriate.

Today in the information society, advertisement is an essential tool for companies to reach many consumers. Sometimes, companies display text advertisements. An advantage of text advertisement is that text advertisements are inexpensive for companies that wish to place an advertisement, as compared to placing banner advertisements (an advertisement represented by an image, a display advertisement). Meanwhile, signage, which displays a directory and an advertisement in a station or a hospital, is increasing in recent years.

Signage displays text in a text size intended to be seen by a person (also referred to as a viewer) from any position. However, the distance between the person and the signage is unknown. For example, it is hard for a person who is away from a signage to see an image (letter) on the signage that is intended to be taken a close look at. In contrast, it is hard for a person who is close to a signage to view an image (letter) on the signage that is intended to be viewed from a distance.

Thus, an image processing apparatus is proposed which employs a superhybrid approach which combines an image that is intended to be taken a close look at (hereinafter, also referred to as a "close-up image") and an image that is intended to be viewed from a distance (hereinafter, also referred to as a "far-away image"). The superhybrid approach is disclosed in Patent No. <NUM>, for example. Moreover, in general, a viewer easily perceive an image that has a spatial frequency at which the contrast sensitivity is maximum. If a filter is applied to the image to achieve that spatial frequency, a human can easily perceive the image.

<FIG> shows one example close-up image. <FIG> shows one example far-away image. The close-up image is an image of alphabets "A to Z," etc. arranged. The far-away image is an image of characters "<IMG>" Each character included in the far-away image is larger in size than any character included in the close-up image.

When the image processing apparatus combines a far-away image and a close-up image, the image processing apparatus extracts an image having a high-frequency component in the spatial frequency from the close-up image, and extracts an image having a low-frequency component in the spatial frequency from the far-away image. Hereinafter, "the image having the high-frequency component in the spatial frequency" will be referred to as a "high-frequency image," and "the image having the low-frequency component in the spatial frequency" will be referred to as a "low-frequency image. " <FIG> is one example high-frequency image. <FIG> is one example low-frequency image. The high-frequency image shown in <FIG> includes characters, such as "A," "B," "C," etc. having a defined edge. In contrast, the low-frequency image shown in <FIG> includes characters, "<IMG>" and "<IMG>" having a blurred edge.

An image processing apparatus according to a comparative example combines a high-frequency image and a low-frequency image, without considering the composite position of the high-frequency image and the low-frequency image. <FIG> is one example composite image generated by the image processing apparatus according to the comparative example combining the high-frequency image and the low-frequency image. As shown in <FIG>, the edge portion of the character "<IMG>" in the low-frequency image and the high-frequency image do not overlap in a portion A. Accordingly, the viewer can easily perceive the portion A. However, the edge portion of the character "<IMG>" in the low-frequency image and the high-frequency image overlap in a portion B. Accordingly, the viewer can hardly perceive the portion B.

As such, the image processing apparatus according to the comparative example does not consider the composite position of the high-frequency image and the low-frequency image, ending up generating a composite image having a portion that is hard for the viewer to perceive.

In contrast, the image processing apparatus according to the present embodiment considers the composite position of the high-frequency image and the low-frequency image to combine the high-frequency image and the low-frequency image. The image processing apparatus according to the present embodiment extracts an image indicating edge portions of the far-away image of <FIG> from the far-away image. <FIG> is one example edge image indicating edge portions. The edges are portions of the image whose density is different from the rest. Thus, the edge is also referred to as a "density change portion. " The image processing apparatus according to the present embodiment determines the composite position of the high-frequency image and the low-frequency image, based on the edge image and the close-up image. The composite position yields a small degree of overlap between the edge image and the close-up image. The image processing apparatus according to the present embodiment combines the high-frequency image and the low-frequency image at the determined composite position.

<FIG> is one example composite image generated by the image processing apparatus according to the present embodiment combining the high-frequency image and the low-frequency image. As shown in <FIG>, according to the image processing apparatus of the present embodiment, the size (e.g., area) of the portions in which the edge portions of the low-frequency image and the high-frequency image overlap is small, as compared to the image processing apparatus according to the comparative example. Accordingly, the composite image generated by the image processing apparatus according to the present embodiment is easier for the viewer to perceive, as compared to the composite image generated by the image processing apparatus according to the comparative example.

<FIG> is a diagram showing how a paper having the composite image printed thereon is perceived by a viewer X from a distance and perceived by viewer X from near. As shown in <FIG>, as the composite image is viewed by viewer X from a distance, viewer X can perceive the characters "<IMG>" In contrast, as the composite image is viewed by viewer X from near, viewer X can perceive the characters "ABC.

<FIG> is a diagram showing a hardware configuration of an image processing apparatus <NUM>. Referring to <FIG>, image processing apparatus <NUM> includes a central processing unit (CPU) <NUM> which executes programs, a read only memory (ROM) <NUM> which stores data in a non-volatile fashion, a random access memory (RAM) <NUM> which stores data in a volatile fashion, a flash memory <NUM>, and a communication interface (IF) <NUM>. For example, CPU <NUM>, ROM <NUM>, and RAM <NUM> correspond to a controller according to the present disclosure.

Flash memory· <NUM> is a non-volatile semiconductor memory. Flash memory <NUM> stores the operating system and various programs which are executed by CPU <NUM>, and various content and data. Flash memory <NUM> also stores various data in a volatile fashion, such as data generated by image processing apparatus <NUM> and data obtained from devices external to image processing apparatus <NUM>.

CPU <NUM>, ROM <NUM>, RAM <NUM>, flash memory <NUM>, and communication IF <NUM> are interconnected by data buses.

Processes at image processing apparatus <NUM> are performed by respective hardware and CPU <NUM>, ROM <NUM>, and RAM <NUM>, for example. Such software may be pre-stored in flash memory <NUM>, etc. The software may also be stored in a storage medium, such as a memory card, and distributed as a program product. Alternatively, the software may be provided by, what is called, an information provider connected to the Internet, as a program product that can be downloaded. Such software is read from the storage medium by a reader for image processing apparatus <NUM> or downloaded via communication IF <NUM>, and temporarily stored in flash memory <NUM>. The software is read from flash memory <NUM> by CPU <NUM>, and further stored into flash memory <NUM> in the form of an executable program. CPU <NUM> executes the program.

Note that the storage medium is not limited to a DVD-ROM, a CD-ROM, a flexible disk (FD), and a hard disk. The storage medium may be a medium fixedly bearing a program, such as a magnetic tape, a cassette tape, an optical disc (magnetic optical disc (MO)/Mini Disc (MD)/digital versatile disc (DVD)), or a semiconductor memory, such as an optical memory card, a mask ROM, an EPROM (Erasable Programmable Read Only Memory), an EEPROM (Electrically Erasable Programmable Read-Only Memory), and a flash ROM. The storage medium is a non-transitory medium from which the computer can read the program.

The program, as used herein, includes not only one that is directly executable by the CPU, but also source programs, compressed programs, encrypted programs, etc..

Image processing apparatus <NUM> may be implemented in, for example, a general purpose computer or a computer dedicated to image processing apparatus <NUM>. The general purpose computer may be, for example, a personal computer (PC), a tablet, or a smartphone.

Moreover, the present embodiment discloses an image forming apparatus and a display apparatus which include image processing apparatus <NUM>. A hardware configuration of the image forming apparatus is, for example, the hardware configuration shown in <FIG> that includes an image forming unit. The image forming unit forms an image on a recording medium (e.g., a paper). The image forming unit is configured of, for example, a photoreceptor. A hardware configuration of the display apparatus is, for example, the hardware configuration shown in <FIG> that includes a display unit. The display unit displays various images (a composite image described below). The display unit is, typically, a monitor or the like.

<FIG> is a diagram showing an example functional configuration of an image forming apparatus <NUM> according to the present embodiment. Image forming apparatus <NUM> according to the present embodiment includes image processing apparatus <NUM> and an image forming unit <NUM>. For example, a user inputs first image data <NUM> and second image data <NUM> to image forming apparatus <NUM>. First image data <NUM> is image data corresponding to a first image. First image data <NUM> is also image data corresponding to a close-up image. Second image data <NUM> is image data corresponding to a second image. Second image data <NUM> is also image data corresponding to a far-away image. First image data <NUM> and second image data <NUM> may be input to image forming apparatus <NUM> by, for example, the user transmitting them to image forming apparatus <NUM> via a network (not specifically shown) and communication IF <NUM>. Image forming apparatus <NUM> receives the input of the transmitted first image data <NUM> and second image data <NUM>. The user may store first image data <NUM> and second image data <NUM> into a storage medium and connect the storage medium to image forming apparatus <NUM>. Image forming apparatus <NUM> receives input of first image data <NUM> and second image data <NUM> from the storage medium connected thereto.

Image processing apparatus <NUM> generates composite image data <NUM> from first image data <NUM> and second image data <NUM>, and outputs composite image data <NUM>. Image forming unit <NUM> forms a composite image based on composite image data <NUM> onto a recording medium, and outputs the recording medium having the composite image formed thereon as an output result <NUM>. The recording medium is, for example, a paper or a sheet.

Note that the "image data" may be referred to simply as an "image" in the present embodiment. For example, first image data <NUM> is also referred to as the "first image," second image data <NUM> is also referred to as the "second image," and composite image data <NUM> is also referred to as the "composite image. " Moreover, the "image" is also referred to as "the image corresponding to the image data. " The "image data" is also referred to as "the image data corresponding to the image.

<FIG> is a diagram showing a flow of an image (image data) processed by image processing apparatus <NUM> according to the present embodiment. As shown in <FIG>, image processing apparatus <NUM> extracts a high-frequency component from first image data <NUM>. The image corresponding to first image data <NUM> is, for example, the image shown in <FIG>. An image (high-frequency image) corresponding to the high-frequency component extracted from first image data <NUM> is the diagram shown in <FIG>.

Image processing apparatus <NUM> also extracts a low-frequency component from second image data <NUM>. The image corresponding to second image data <NUM> is, for example, the image shown in <FIG>. An image (the low-frequency image) corresponding to the low-frequency component extracted from second image data <NUM> is the diagram shown in <FIG>.

Image processing apparatus <NUM> extracts edge portions from first image data <NUM>. An image (the edge image) corresponding to the extracted edge portions is the diagram shown in <FIG>. Image processing apparatus <NUM> determines a composite position from the high-frequency image and the edge image. Image processing apparatus <NUM> then combines the high-frequency image (high-frequency image data <NUM>) and the low-frequency image (low-frequency image data <NUM>) so that the composite position of the high-frequency image and the low-frequency image is the determined composite position. This generates the composite image (composite image data <NUM>) shown in <FIG>.

<FIG> is a diagram showing an example functional configuration of image processing apparatus <NUM> according to the present embodiment. Image processing apparatus <NUM> has functions as an input unit <NUM>, a discriminator <NUM>, a high-frequency image extractor <NUM>, determination unit <NUM>, an edge portion extractor <NUM>, a low-frequency image extractor <NUM>, and a combiner <NUM>. In the present disclosure, high-frequency image extractor <NUM> corresponds to a "first extraction unit. " In the present disclosure, low-frequency image extractor <NUM> corresponds to a "second extraction unit. " In the present disclosure, edge portion extractor <NUM> corresponds to a "third extraction unit".

Initially, input unit <NUM> receives first image data <NUM> (first image) input to image forming apparatus <NUM> and second image data <NUM> input to image forming apparatus <NUM>.

Next, discriminator <NUM> discriminates which one of the input first image data <NUM> and second image data <NUM> is close-up image data <NUM>, and which one of the input first image data <NUM> and second image data <NUM> is far-away image data <NUM>. As shown in <FIG>, generally, viewer X can easily perceive from a distance a character that is large in size, and viewer X can easily perceive from near a character that is small in size. Thus, discriminator <NUM> determines the image of characters that are small in size as a close-up image (the image corresponding to close-up image data <NUM>), and the image of characters that are large in size as a far-away image (the image corresponding to far-away image data <NUM>).

For example, discriminator <NUM> analyzes first image data <NUM> and second image data <NUM> to obtain a first average of the sizes of one or more characters included in the first image corresponding to first image data <NUM>, and a second average of the sizes of one or more characters included in the second image corresponding to second image data <NUM>. The "character size" is, typically, the area of the characters. Discriminator <NUM> compares the first average and the second average. If discriminator <NUM> determines that the first average is greater than the second average, discriminator <NUM> discriminates first image data <NUM> corresponding to the first average as far-away image data, and second image data <NUM> corresponding to the second average as a close-up image. If discriminator <NUM> compares the first average and the second average and determines that the second average is greater than the first average, discriminator <NUM> discriminates first image data <NUM> corresponding to the first average as close-up image data, and second image data <NUM> corresponding to the second average as a far-away image.

Note that, as a variation, discriminator <NUM> may employ a configuration in which discriminator <NUM> obtains a first summation value, which is a summation value of all the characters included in the image corresponding to first image data <NUM>, and a second summation value, which is a summation value of all the characters included in the image corresponding to second image data <NUM>.

If such a configuration is employed, and discriminator <NUM> compares the first summation value and the second summation value and determines that the first summation value is greater than the second summation value, discriminator <NUM> discriminates first image data <NUM> corresponding to the first summation value as far-away image data, and second image data <NUM> corresponding to the second summation value as a close-up image. If discriminator <NUM> compares the first summation value and the second summation value and determines that the second summation value is greater than the first summation value, discriminator <NUM> discriminates first image data <NUM> corresponding to the first summation value as close-up image data, and second image data <NUM> corresponding to the second summation value as a far-away image.

As a variation, discriminator <NUM> may employ a configuration in which discriminator <NUM> obtains the size of a first representative character among all the characters included in the image corresponding to first image data <NUM>, and the size of a second representative character among all the characters included in the image corresponding to second image data <NUM>.

If such a configuration is employed, and discriminator <NUM> compares the size of the first representative character and the size of the second representative character and determines that the size of the first representative character is greater than the size of the second representative character, discriminator <NUM> discriminates the first image data <NUM> corresponding to the size of the first representative character as far-away image data, and second image data <NUM> corresponding to the size of the second representative character as a close-up image. If discriminator <NUM> compares the size of the first representative character and the size of the second representative character and determines that the size of the second representative character is greater than the size of the first representative character, discriminator <NUM> discriminates second image data <NUM> corresponding to the size of the second representative character as far-away image data, and first image data <NUM> corresponding to the size of the first representative character as a close-up image.

The example of <FIG> shows a case in which discriminator <NUM> discriminates first image data <NUM> as close-up image data <NUM>, and discriminates second image data <NUM> as far-away image data <NUM>. An image corresponding to close-up image data <NUM> is the image shown in <FIG>. An image corresponding to far-away image data <NUM> is the image shown in <FIG>.

Close-up image data <NUM> is input to high-frequency image extractor <NUM> and determination unit <NUM>. High-frequency image extractor <NUM> extracts high-frequency image data <NUM>. High-frequency image data <NUM> is high-frequency component image data included in close-up image data <NUM>. High-frequency image extractor <NUM>, for example, applies a filter, for extracting high-frequency component image data, to close-up image data <NUM> and extracts high-frequency image data <NUM>. An image corresponding to high-frequency image data <NUM> is the image of <FIG>.

Far-away image data <NUM> is input to edge portion extractor <NUM> and low-frequency image extractor <NUM>. Edge portion extractor <NUM> extracts edge image data <NUM> corresponding to edge portions from far-away image data <NUM>. An image corresponding to edge image data <NUM> is the diagram shown in <FIG>. Low-frequency image extractor <NUM>, for example, passes far-away image data <NUM> through a filter, for extracting low-frequency component image data, and extracts low-frequency image data <NUM>.

Determination unit <NUM> determines a composite position of the high-frequency image and the low-frequency image, based on edge image data <NUM> and close-up image data <NUM>. Here, the composite position is a position so that a degree of overlap between edge portions of a far-away image and a high-frequency image is small when the high-frequency image and the low-frequency image are formed on a recording medium. The composite position may be a position of the low-frequency image relative to the high-frequency image. The composite position may be a position of the high-frequency image relative to the low-frequency image. The composite position may be a relative position between the high-frequency image and the low-frequency image. Determination unit <NUM> outputs the composite position information indicative of the determined composite position to combiner <NUM>.

Combiner <NUM> combines high-frequency image data <NUM> corresponding to the high-frequency image and low-frequency image data <NUM> corresponding to the low-frequency image so that the composite position of the high-frequency image and the low-frequency image is based on the composite position information output from determination unit <NUM>, thereby generating composite image data <NUM>. Combiner <NUM> outputs composite image data <NUM>.

Next, processing by determination unit <NUM> will be described. <FIG> is a diagram showing an example functional configuration of determination unit <NUM>. Determination unit <NUM> has functions as a judging unit <NUM>, an adding unit <NUM>, a moving unit <NUM>, an extractor <NUM>, a position determination unit <NUM>, a threshold storage unit <NUM>, a first pixel value storage unit <NUM>, and a second pixel value storage unit <NUM>. A threshold Th, described below, is pre-stored in threshold storage unit <NUM>. A pixel value which is added to the pixel of interest by adding unit <NUM> is stored in first pixel value storage unit <NUM>. Threshold storage unit <NUM> and first pixel value storage unit <NUM> are configured of ROM <NUM>, for example.

As also shown in <FIG>, close-up image data <NUM> is input to determination unit <NUM>. As close-up image data <NUM> is input to judging unit <NUM> included in determination unit <NUM>, judging unit <NUM>, for example, converts close-up image data <NUM> into a histogram. Based on the histogram, judging unit <NUM> counts a total number of first-color pixels among all the pixels of the close-up image corresponding to close-up image data <NUM>. Here, the "first-color pixel" is a pixel that has a color among all the pixels of the close-up image. In the present embodiment, the color refers to, for example, a color (e.g., black) obtained by combining red-green-blue (RGB) colors in any proportions. In the close-up image, a white pixel refers to a "first non-color pixel," for example.

Judging unit <NUM> determines whether the total number of first-color pixels included in the close-up image is greater than threshold Th. Here, threshold Th is, for example, a value obtained by dividing a total number of pixels of the close-up image by a predetermined number (e.g., <NUM>). Note that threshold Th may be any other number.

The total number of first-color pixels of a close-up image determined by determination unit <NUM> as being greater than or equal to threshold Th indicates that the total number of first-color pixels of the close-up image is relatively large. In this case, determination unit <NUM> determines the composite position by a first approach. The first approach will be described below. Determination unit <NUM> overlaps a close-up image with an edge image and counts a degree overlap between the two. The overlapping degree is, for example, a total number of pixels that are overlapping between the close-up image and the edge image. When counting the overlapping degree, determination unit <NUM> also obtains the location of the edge image (X coordinate, Y coordinate) relative to the close-up image. Determination unit <NUM> stores the overlapping degree and the location of the edge image, which is obtained when the overlapping degree is counted, in association into a given storage area (e.g., RAM <NUM>).

Determination unit <NUM> shifts the close-up image by one pixel in the X-coordinate direction or the Y-coordinate direction, overlaps the close-up image and the edge image, again, counts a degree of overlap between the close-up image and the edge image and obtains the location of the edge image when the overlapping degree is counted, and stores the overlapping degree and the location of the edge image in association into the given storage area. This allows determination unit <NUM> to store into the storage area the overlapping degree and the location of the edge image for every pattern of overlap between the close-up image and the edge image. Subsequently, determination unit <NUM> extracts the smallest overlapping degree among all the overlapping degrees stored, and extracts the location of the edge image corresponding to the smallest overlapping degree. This location of the edge image is a composite position which yields a smallest degree of overlap between the high-frequency image and the low-frequency image. Determination unit <NUM> outputs the composite position.

Next, the case is described where determination unit <NUM> determines that the total number of first-color pixels included in the close-up image is less than threshold Th. In this case, determination unit <NUM> determines the composite position by a second approach. In the second approach, the computations by determination unit <NUM> can be reduced, as compared to the first approach. The second approach will be described below.

In the second approach, determination unit <NUM> uses a label matrix <NUM> to determine the composite position. <FIG> is a diagram showing one example of label matrix <NUM>. Determination unit <NUM> applies label matrix <NUM> to a close-up image, thereby generating pixel value information. The pixel value information is used to reduce the computations by determination unit <NUM> when determining a composite position of a high-frequency image and a low-frequency image which yields a smallest degree of overlap between the high-frequency image and the low-frequency image.

Note that, as a variation, determination unit <NUM> may generate the pixel value information by moving the close-up image while label matrix <NUM> is fixed. In other words, determination unit <NUM> may generate the pixel value information by moving the position of the close-up image relative to label matrix <NUM>.

Label matrix <NUM> is configured of multiple cells. In the example of <FIG>, label matrix <NUM> includes five cells in the X-axis direction and seven cells in the Y-axis direction, that is, 5x7 of <NUM> cells. One cell corresponds to one pixel of the close-up image.

Thirty five cells of <FIG> are each assigned with an identification number. In the example of <FIG>, the identification numbers are listed in parentheses. In the example of <FIG>, the identification numbers <NUM>, <NUM>, <NUM>,. <NUM>, and <NUM> are assigned to the cells in the order from upper left to lower right. The center cell is defined for label matrix <NUM>. The center cell is one that is located at the center among the 5x7 of <NUM> cells. In the example of <FIG>, the center cell is indicated by the thick box and the identification number of which is "<NUM>.

In the following, the cells of label matrix <NUM> are represented by "cell identification numbers. " For example, the cell having the identification number "<NUM>" will be represented as "cell <NUM>. " Each cell included in label matrix <NUM> is associated with a pixel value. The pixel value is a pixel value that can be added to a pixel of the close-up image by adding unit <NUM>. In the example of <FIG>, for example, the cell <NUM> (referred to as the center cell) has a pixel value specified by a largest value "<NUM>. " The farther away from the center cell, the lower value the pixel value is specified by. For example, first adjacent cells (cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>) adjacent to the center cell have a pixel value specified by "<NUM>" which is less than the pixel value "<NUM>.

Furthermore, second adjacent cells (cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>) adjacent to the first adjacent cells have a pixel value specified by "<NUM>" which is less than the pixel value "<NUM>.

Furthermore, third adjacent cells (cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>, cell <NUM>) adjacent to the second adjacent cells have a pixel value specified by "<NUM>" which is less than the pixel value "<NUM>.

In the present embodiment, adding unit <NUM> applies label matrix <NUM> to the close-up image so that a pixel of interest, which is one of the pixels of the close-up image (close-up image data <NUM>), coincides with the center cell of label matrix <NUM>. If determined that the pixel of interest is a first-color pixel, adding unit <NUM> adds a pixel value to the pixel of interest.

<FIG> are schematic diagrams of the close-up image having label matrix <NUM> applied thereto. In the examples of <FIG>, for ease of explanation, the close-up image is a <NUM>×<NUM> pixels image. In the examples of <FIG>, for ease of explanation, the pixel at the coordinates (<NUM>, <NUM>) and the pixel at the coordinates (<NUM>, <NUM>) of the close-up image are first-color pixels, and the rest are not first-color pixels (hereinafter, a "non-first-color pixel"). In <FIG>, the first-color pixels are hatched pixels, and the non-first-color pixels are non-hatched pixels. In <FIG>, the frame of label matrix <NUM> and the center cell of label matrix <NUM> are indicated by a thick box.

As shown in <FIG>, using the initial pixel of the close-up image as the pixel of interest, adding unit <NUM> applies label matrix <NUM> to the close-up image so that the pixel of interest coincides with the center cell of label matrix <NUM>. Here, the initial pixel is, for example, the pixel at (<NUM>, <NUM>) of the close-up image. Adding unit <NUM> determines whether the pixel of interest is a first-color pixel. If determined that the pixel of interest is a first-color pixel, adding unit <NUM> adds a pixel value to the pixel of interest. On the other hand, if determined that the pixel of interest is not a first-color pixel, adding unit <NUM> adds no pixel value to the pixel of interest. Stated differently, adding unit <NUM> generates information (hereinafter, referred to also as "null information") for the pixel of interest, the information indicating that no pixel value is added to the pixel of interest (a pixel that is not a first-color pixel). In the example of <FIG>, the pixel of interest is not a first-color pixel and thus adding unit <NUM> adds no pixel value thereto. In the following, "the process of determining as to whether the pixel of interest is the first-color pixel," and "the add process of adding a pixel value to the pixel of interest upon the determination that the pixel of interest is a color pixel" by adding unit <NUM> will be collectively referred to as a "pixel process.

Next, the coordinates of the pixel of interest is incremented by "<NUM>" in the X-coordinate direction. In other words, the next pixel of interest is the pixel at (<NUM>, <NUM>). Adding unit <NUM> performs "the pixel process" on this pixel of interest. If the X-coordinate value of the pixel of interest is at the maximum, the X-coordinate value is returned to the initial value ("<NUM>" in the present embodiment) and the Y-coordinate value is incremented by "<NUM>. " In other words, adding unit <NUM> shifts the coordinates of the pixel of interest in the examples of <FIG> in order from (<NUM>, <NUM>) to (<NUM>, <NUM>),. (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>). (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>). (<NUM>, <NUM>), and (<NUM>, <NUM>), and performs the pixel process on pixels of interest (<NUM> pixels) at the respective pair of coordinates. Each pixel of the close-up image includes no pixel value prior to the performance of the pixel process.

<FIG> is a diagram showing the close-up image having label matrix <NUM> applied thereto in which the pixel of interest is the pixel at (<NUM>, <NUM>). In the example of <FIG>, the pixel of interest is not a first-color pixel and thus no pixel value is added to the pixel of interest.

<FIG> is a diagram showing the close-up image having label matrix <NUM> applied thereto in which the pixel of interest is the pixel at (<NUM>, <NUM>). As shown in <FIG>, a pixel of interest 511F at (<NUM>, <NUM>) is a first-color pixel, and thus adding unit <NUM> performs the add process on pixel of interest 511F. As shown in <FIG>, adding unit <NUM> adds "<NUM>" as a first pixel value to pixel of interest 511F.

Adding unit <NUM> also adds "<NUM>" as a second pixel value to the first adjacent pixels adjacent to pixel of interest 511F. The first adjacent pixels in <FIG> are eight pixels at (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), and (<NUM>, <NUM>). The second pixel value is smaller than the first pixel value.

Adding unit <NUM> also adds "<NUM>" as a third pixel value to the second adjacent pixels adjacent to the first adjacent pixels. The second adjacent pixels in <FIG> are the pixels at (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), and (<NUM>, <NUM>). The third pixel value is smaller than the second pixel value.

Adding unit <NUM> also adds "<NUM>" as a fourth pixel value to the third adjacent pixels adjacent to the second adjacent pixels. The third adjacent pixels in <FIG> are the pixels at (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), and (<NUM>, <NUM>). The fourth pixel value is smaller than the third pixel value.

The pixel value added by adding unit <NUM> and the coordinates of the pixel having the pixel value added thereto are stored in association into first pixel value storage unit <NUM>. In the example of <FIG>, the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), and the coordinates (<NUM>, <NUM>) are each stored in association with the pixel value "<NUM>" into first pixel value storage unit <NUM>.

In the example of <FIG>, the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), and the coordinates (<NUM>, <NUM>) are each stored in association with the pixel value "<NUM>" into first pixel value storage unit <NUM>.

In the example of <FIG>, the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), and the coordinates (<NUM>, <NUM>) are each stored in association with the pixel value "<NUM>" into first pixel value storage unit <NUM>.

In the example of <FIG>, the coordinates (<NUM>, <NUM>) and the pixel value "<NUM>" are stored in association into first pixel value storage unit <NUM>.

Next, adding unit <NUM> increments the coordinates of the pixel of interest by "<NUM>" in the X-coordinate direction, thereby setting the pixel at (<NUM>, <NUM>) to the pixel of interest, as shown in <FIG>. In the case of <FIG>, adding unit <NUM> adds "<NUM>" as the first pixel value to the pixel value (= <NUM>) of the pixel of interest (<NUM>, <NUM>) stored in first pixel value storage unit <NUM>.

Adding unit <NUM> also adds "<NUM>" as the second pixel value to first adjacent pixels adjacent to the pixel of interest at (<NUM>, <NUM>). The first adjacent pixels in <FIG> are the eight pixels at the coordinates (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), and (<NUM>, <NUM>). The add process of <FIG> has already added the pixel value "<NUM>" to, for example, the pixel at (<NUM>, <NUM>). Accordingly, the add process of <FIG> adds "<NUM>" to the pixel value "<NUM>" of the pixel at (<NUM>, <NUM>).

Adding unit <NUM> also adds "<NUM>" as the third pixel value to the second adjacent pixels adjacent to the first adjacent pixels. The second adjacent pixels in <FIG> are the pixels at (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), and (<NUM>, <NUM>). The add process of <FIG> has already added the pixel value "<NUM>" to, for example, the pixel at (<NUM>, <NUM>). Accordingly, the add process of <FIG> adds "<NUM>" to the pixel value "<NUM>" of the pixel at (<NUM>, <NUM>).

Adding unit <NUM> also adds "<NUM>" as the fourth pixel value to the third adjacent pixels adjacent to the second adjacent pixels. The third adjacent pixels in <FIG> are the pixels at (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), and (<NUM>, <NUM>). The add process of <FIG> has already added the pixel value "<NUM>" to, for example, the pixel at (<NUM>, <NUM>). Accordingly, add process of <FIG> adds "<NUM>" to the pixel value "<NUM>" of the pixel at (<NUM>, <NUM>).

<FIG> is a diagram showing the close-up image before the add process shown in <FIG> is performed thereon (the close-up image prior to calculation). <FIG> is a diagram showing the close-up image after the add process shown in <FIG> is performed thereon (the close-up image after the calculation).

In the example of <FIG>, the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), and the coordinates (<NUM>, <NUM>) are each stored in association with the pixel value "<NUM>" into first pixel value storage unit <NUM>.

In the example of <FIG>, the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), and the coordinates (<NUM>, <NUM>) are each stored in association with the pixel value "<NUM>" into first pixel value storage unit <NUM>.

In the example of <FIG>, the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), the coordinates (<NUM>, <NUM>), and the coordinates (<NUM>, <NUM>) are each stored in association with the pixel value "<NUM>" into first pixel value storage unit <NUM>.

In the example of <FIG>, the coordinates (<NUM>, <NUM>) and the coordinates (<NUM>, <NUM>) are each stored in association with the pixel value "<NUM>" into first pixel value storage unit <NUM>.

Adding unit <NUM> applies label matrix <NUM> to the close-up image so that every one of pixels (<NUM> pixels) of the close-up image is set to the pixel of interest, and performs the pixel process on the pixel. The information that is stored in first pixel value storage unit <NUM> after the completion of the pixel process on every one of pixels (<NUM> pixels) of the close-up image will be referred to as "pixel value information. " The pixel value information for the close-up image of <FIG> is shown in <FIG>.

For coordinates having no pixel value added thereto (e.g., coordinates having a pixel value "<NUM>", such as the coordinates (<NUM>, <NUM>)), null information is stored in the pixel value information.

Next, moving unit <NUM> shifts (moves) the relative position of the edge image and the pixel value information by one pixel each time so that the pixels of the edge image coincide with the pixels in the pixel value information. In the present embodiment, moving unit <NUM> shifts the edge image by one pixel each time, relative to the pixel value information. Note that, as a variation, moving unit <NUM> may shift the pixel value information by one pixel each time, relative to the edge image. In other words, moving unit <NUM> may shift the relative position of the pixel value information and the edge image by one pixel each time.

<FIG> is one example edge image. Note that the edge image of <FIG> is an image of a portion of the edge image of <FIG>, for example. In the example of <FIG>, for ease of explanation, the edge image is a 20x20 pixels image. In the example of <FIG>, for ease of explanation, the pixels at (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), and (<NUM>, <NUM>) are second-color pixels which have a color. The pixels at other coordinates are "second non-color pixels" which have no color. In the example of <FIG>, the second-color pixel are hatched pixels, and the second non-color pixel are non-hatched pixels. An arbitrary pixel among all the second-color pixels of the edge image is determined as a "reference pixel. " In the example of <FIG>, suppose that the pixel at the coordinates (<NUM>, <NUM>) is the reference pixel.

In the present embodiment, moving unit <NUM> shifts the edge image by one pixel each time, relative to the pixel value information (without shifting the pixel value information) so that every pixel in the pixel value information coincides with the reference pixel of the edge image. For example, the reference pixel of the edge image is applied to the coordinates (<NUM>, <NUM>) in the pixel value information so that the reference pixel of the edge image coincides with the coordinates (<NUM>, <NUM>). Extractor <NUM> extracts a pixel value of every pixel in the pixel value information that coincides with the second-color pixels among all the pixels of the edge image. Extractor <NUM> extracts no pixel value of a pixel whose null information has been generated.

Note that, as a variation, moving unit <NUM> may shift the pixel value information by one pixel each time, relative to the edge image (without shifting the edge image).

<FIG> is a diagram showing the reference pixel of the edge image initially applied by moving unit <NUM> to the coordinates (<NUM>, <NUM>) in the pixel value information so that the coordinates (<NUM>, <NUM>) in the pixel value information coincide with the reference pixel of the edge image. Extractor <NUM> extracts a pixel value of every pixel, included in the pixel value information, which coincides with the second-color pixels which are pixels that have a color among all the pixels of the edge image. In the example of <FIG>, the pixel at the coordinates (<NUM>, <NUM>) included in the pixel value information coincides with a second-color pixel of the edge image. Extractor <NUM> extracts "<NUM>," which is the pixel value of the pixel at the coordinates (<NUM>, <NUM>) coinciding with the second-color pixel. Extractor <NUM> extracts no pixel value at coordinates no pixel value for which is stored in the pixel value information (coordinates for which the null information is stored).

Extractor <NUM> calculates a summation value of extracted pixel values. In the example of <FIG>, the summation value is "<NUM>. " Extractor <NUM> stores the calculated summation value "<NUM>" and the coordinates (<NUM>, <NUM>) of the reference pixel in association into second pixel value storage unit <NUM>. The summation value of pixel values calculated by extractor <NUM> is a degree of overlap between the edge image and the close-up image.

In the following, "the process of determining as to whether the reference pixel is a second-color pixel" and "the process of extracting a pixel and calculating the summation value upon determination that the reference pixel is a second-color pixel", which are performed by extractor <NUM>, will be collectively referred to as an "extraction process.

Moving unit <NUM> increments the coordinates of the reference pixel by "<NUM>" in the X-coordinate direction. In other words, the next reference pixel is the pixel at (<NUM>, <NUM>). Adding unit <NUM> performs "the extraction process" on this reference pixel. If the X-coordinate value of the reference pixel is at the maximum (<NUM> in the examples of <FIG>), the X-coordinate value is returned to the initial value ("<NUM>" in the present embodiment) and the Y-coordinate value is incremented by "<NUM>. " In other words, adding unit <NUM> shifts the coordinates of the reference pixel in the examples of <FIG> in order from (<NUM>, <NUM>), to (<NUM>, <NUM>). (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>). (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>). (<NUM>, <NUM>), and (<NUM>, <NUM>), and applies the reference pixel of the edge image to every one of pixels (<NUM> pixels) in the pixel value information, thereby performing the extraction process.

<FIG> is a diagram showing the pixel value information having the edge image applied thereto in which the reference pixel is the pixel at (<NUM>, <NUM>). In the example of <FIG>, the pixel at the coordinates (<NUM>, <NUM>) included in the pixel value information coincides with a second-color pixel of the edge image. Extractor <NUM> extracts "<NUM>," which is the pixel value of the pixel at the coordinates (<NUM>, <NUM>) coinciding with the second-color pixel. In the example of <FIG>, the pixel at coordinates (<NUM>, <NUM>) included in the pixel value information coincides with a second-color pixel of the edge image. Extractor <NUM> extracts "<NUM>," which is the pixel value of the pixel at coordinates (<NUM>, <NUM>) coinciding with the second-color pixel. In the example of <FIG>, the pixel at the coordinates (<NUM>, <NUM>) included in the pixel value information coincides with a second-color pixel of the edge image. Extractor <NUM> extracts "<NUM>," which is the pixel value the pixel at the coordinates (<NUM>, <NUM>) coinciding with the second-color pixel. In the example of <FIG>, the pixel at the coordinates (<NUM>, <NUM>) included in the pixel value information coincides with a second-color pixel of the edge image. Extractor <NUM> extracts "<NUM>," which is the pixel value at the coordinates (<NUM>, <NUM>) coinciding with the second-color pixel. In the example of <FIG>, the pixel at the coordinates (<NUM>, <NUM>) included in the pixel value information coincides with a second-color pixel of the edge image. Extractor <NUM> extracts "<NUM>," which is the pixel value of the pixel at the coordinates (<NUM>, <NUM>) coinciding with the second-color pixel.

In the case of <FIG>, extractor <NUM> calculates "<NUM>" as a summation value of the extracted pixel values. Extractor <NUM> stores the calculated summation value "<NUM>" (= the degree of overlap between the edge image and the close-up image) and the coordinates (<NUM>, <NUM>) of the reference pixel in association into second pixel value storage unit <NUM>.

<FIG> is a diagram showing the pixel value information having the edge image applied thereto in which the reference pixel is the pixel at (<NUM>, <NUM>). In the example of <FIG>, there is no pixel included in the edge image that coincides with any pixel having a pixel value specified thereto. Accordingly, extractor <NUM> stores a summation value "<NUM>" (= the degree of overlap between the edge image and the close-up image) and the coordinates (<NUM>, <NUM>) of the reference pixel in association into second pixel value storage unit <NUM>.

As such, extractor <NUM> performs the extraction process on every one of pixels (<NUM> pixels) included in the pixel value information using the pixel as a reference pixel, and stores the coordinates of the pixel and a summation value of the pixel values extracted when the pixel is the reference pixel in association into second pixel value storage unit <NUM>. The information that is stored in second pixel value storage unit <NUM> after extractor <NUM> completes the extraction process on every pixel (<NUM> pixels) in the pixels value information will be referred to as "pixel value sum information.

Position determination unit <NUM> determines a composite position, based on the pixel value sum information. As the composite position, position determination unit <NUM> determines a position (a reference location of the edge image in the present embodiment) which yields a smallest summation value of the pixel values of the pixels in the pixel value information that are extracted by extractor <NUM>. For example, in the example described with reference to <FIG>, the summation value of pixel values is "zero" when the reference location of the edge image is the coordinates (<NUM>, <NUM>). Accordingly, position determination unit <NUM> determines the position (<NUM>, <NUM>), which yields a smallest summation value of the pixel values which is "zero," as the composite position. Position determination unit <NUM> outputs composite position information indicative of the determined composite position to combiner <NUM>.

Next, an idea of the pixel value information will be described. In the examples of <FIG>, etc., the coordinates of the pixels of the close-up image are (<NUM>, <NUM>) and (<NUM>, <NUM>), as shown in <FIG>, etc. However, the pixel value information according to the present embodiment also includes pixel values that are specified to other pixels around the pixels at (<NUM>, <NUM>) and (<NUM>, <NUM>). In other words, according to the pixel value information of <FIG>, while a "high pixel value (= <NUM>)" is specified to the pixels at (<NUM>, <NUM>) and (<NUM>, <NUM>) of the close-up image, lower pixel values (pixel values such as <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, etc.) are also specified to pixels around these pixels of the close-up image. In contrast, the edge image according to the present embodiment has a narrow edge width, as shown in <FIG> and <FIG>, for example. Moreover, the edge image is overlapped with a low-frequency image corresponding to the far-away image from which the edge image is extracted. The low-frequency image includes edges that have wide edges.

Thus, considering the fact that the low-frequency image contains edges that have wide widths, image processing apparatus <NUM> according to the present embodiment generates pixel value information which also includes pixel values that are specified to other pixels around the coordinates of the pixels included in the close-up image.

<FIG> is a diagram showing a flow chart for image processing apparatus <NUM>. Processing by image processing apparatus <NUM> will be described, with reference to <FIG>.

Initially, in step S2, the first image (first image data <NUM>) and the second image (second image data <NUM>) are input to input unit <NUM>. Next, in step S4, discriminator <NUM> discriminates which one of the first image and the second image is a close-up image, and which one of the first image and the second image is a far-away image.

Next, image processing apparatus <NUM> performs the processes of steps S6, S8, and S10. In step S6, high-frequency image extractor <NUM> extracts a high-frequency image (an image corresponding to high-frequency image data <NUM>) from the close-up image (an image corresponding to close-up image data <NUM>). In step S8, low-frequency image extractor <NUM> extracts a low-frequency image (an image corresponding to low-frequency image data <NUM>) from the far-away image (an image corresponding to far-away image data <NUM>). In step S10, determination unit <NUM> determines a composite position of the high-frequency image and the low-frequency image. Details of step S10 will be described, with reference to <FIG>.

As the processes of steps S6, step S8, and step S10 end, combiner <NUM>, in step S12. combines the high-frequency image and the low-frequency image at the composite position determined in step S10. Next, in step S14, image forming unit <NUM> (See <FIG>) forms a composite image, generated by the combination of the high-frequency image and the low-frequency image, onto a recording medium (forms an image based on composite image data <NUM> onto a recording medium).

<FIG> is a flow chart of the composite position determination process of S10. Initially, in step S102, judging unit <NUM> determines whether a total number of first-color pixels included in the close-up image is less than threshold Th. If judging unit <NUM> determines that the total number of first-color pixels is less than threshold Th (NO in S102), the process proceeds to step S104.

In step S104, adding unit <NUM> applies label matrix <NUM> to the close-up image so that the initial pixel of interest (the pixel at (<NUM>, <NUM>) in the example of <FIG>) of the close-up image coincides with the center cell of label matrix <NUM> (See <FIG>). Next, in step S106, adding unit <NUM> determines whether the pixel of interest is a first-color pixel. If adding unit <NUM> determines that the pixel of interest is a first-color pixel (YES in S106), the process proceeds to step S108. In step S108, adding unit <NUM> adds pixel values (see the descriptions with reference to <FIG>, etc.) that are specified in label matrix <NUM> to the pixel of interest and pixels surrounding the pixel of interest, and stores the added values into first pixel value storage unit <NUM>. The surrounding pixels include first adjacent pixels, second adjacent pixels, third adjacent pixels, and fourth adjacent pixels. As step S108 ends, the process proceeds to step S110. On the other hand, if NO in step S106, the process skips step S108 and proceeds to step S110.

In step S110, adding unit <NUM> determines whether label matrix <NUM> has been applied to every one of pixels of the close-up image. If NO in step S110, adding unit <NUM> moves label matrix <NUM> by one pixel in the X-coordinate direction or the Y-coordinate direction in step S112 so that the next pixel of interest of the close-up image coincides with the center cell of label matrix <NUM>. The process then returns to step S106.

If adding unit <NUM> determines that label matrix <NUM> has been applied to every one of pixels of the close-up image in step S110 (YES in step <NUM>), the process proceeds to step S114. YES in step S110 indicates that the pixel value information is completed.

In step S114, moving unit <NUM> applies the edge image to the first coordinates ((<NUM>, <NUM>), as shown in <FIG>) in the pixel value information.

Next, in step S116, extractor <NUM> extracts, from the pixel value information, a pixel value of every pixel that coincides with a second-color pixel of the edge image. In step S116, extractor <NUM> further calculates a summation value of all extracted pixel values, and stores the summation value and the location of the edge image in association into second pixel value storage unit <NUM>. Next, in step S118, extractor <NUM> determines whether the edge image has been applied to every one of pixels included in the pixel value information. If NO in step S118, moving unit <NUM>, in step S120, moves the entirety of the edge image by one pixel in the X-axis direction or the Y-axis direction to the next location in the pixel value information, and applies the edge image to the pixel at the next location. Subsequently, extractor <NUM> stores a summation value of extracted pixel values and the location of the edge image in step S116. If YES in step S118, position determination unit <NUM>, in step S122, determines a position (a reference location of the edge image in the present embodiment) which yields a smallest summation value of the pixel values of all the pixels in the pixel value information extracted by extractor <NUM>, as the composite position.

In contrast, if the number of first-color pixels included in the close-up image is determined as being greater than or equal to threshold Th in step S102, the process proceeds to step S124. In step S124, determination unit <NUM> shifts the edge image by one pixel each time, relative to the close-up image to determine a position of the edge image which yields a smallest degree of overlap between the edge image and the close-up image, as the composite position.

Next, description will be given, with reference to the far-away image being another image. <FIG> is a diagram showing another example far-away image. The example of <FIG> shows an image of "αβ" as a far-away image. <FIG> is one example edge image extracted from the far-away image of <FIG> by edge portion extractor <NUM>. <FIG> is one example composite image obtained by the image processing apparatus according to the comparative example combining a low-frequency image and a high-frequency image. <FIG> is one example composite image obtained by the image processing apparatus according to the present embodiment combining the low-frequency image and the high-frequency image.

(<NUM>) According to image processing apparatus <NUM> of the present embodiment, a first image (close-up image) and a second image (far-away image) are input to input unit <NUM>, as shown in <FIG>, etc. High-frequency image extractor <NUM> (first extraction unit) extracts a high-frequency image from the first image (close-up image). Low-frequency image extractor <NUM> (second extraction unit) extracts a low-frequency image from the second image (far-away image). Edge portion extractor <NUM> (third extraction unit) extracts edge portions from the far-away image. Determination unit <NUM> determines a composite position of the high-frequency image and the low-frequency image which so that a degree of overlap between the first image (the close-up image) and the edge image (the image corresponding to edge image data <NUM>) is small (see <FIG>, etc.). Combiner <NUM> combines the high-frequency image and the low-frequency image at the composite position determined by determination unit <NUM>, thereby generating a composite image (See <FIG>).

Accordingly, image processing apparatus <NUM> according to the present embodiment can generate a composite image that has a small degree of overlap between the low-frequency image and the high-frequency image, as compared to the composite image generated by a conventional image processing apparatus. Thus, image processing apparatus <NUM> according to the present embodiment can generate a composite image that is easier for the viewer to perceive.

(<NUM>) As two images are input to input unit <NUM>, discriminator <NUM> discriminates an image that includes a character large in size as the second image, and an image that includes a character small in size as the first image. High-frequency image extractor <NUM> extracts the high-frequency image from the image (the first image (the close-up image)) discriminated by discriminator <NUM>. Low-frequency image extractor <NUM> extracts a low-frequency image from the image (the second image (the far-away image)) discriminated by discriminator <NUM>.

Accordingly, with such a configuration, this obviates the need for the user to determine the close-up image and the far-away image between the two images. Accordingly, the user convenience improves.

Note that, as a variation, among two images, discriminator <NUM> may discriminate the image that includes a character small in size as the second image, and the image that includes a character large in size as the first image. In other words, discriminator <NUM> may discriminate the first image and the second image, based on the sizes of the characters included in the two images.

(<NUM>) As described with reference to <FIG> and <FIG>, moving unit <NUM> included in determination unit <NUM> shifts the edge portions of the entirety of the far-away image by a predetermined number of pixels for multiple times, thereby determining a composite position. Accordingly, determination unit <NUM> can determine a composite position so that a degree of overlap between the edge portions of the entirety of the far-away image and the close-up image is small.

Note that, in the present embodiment, a description is given with reference to the predetermined number of pixels being "one pixel. " However, as a variation, the predetermined number of pixels may be other than "one pixel. " The predetermined number of pixels may be "two pixels" or "three pixels.

(<NUM>) As shown in <FIG>, judging unit <NUM> included in determination unit <NUM> determines whether a total number of first-color pixels included in the close-up image (a target image) is less than threshold Th (step S102 in <FIG>). If judging unit <NUM> determines that the total number of first-color pixels included in the close-up image (the target image) is less than threshold Th (YES in step S102), adding unit <NUM> generates (completes) the pixel value information, using label matrix <NUM>, by the processing below. As described with reference to <FIG>, adding unit <NUM> moves label matrix <NUM>, thereby to determine whether each of all the pixels of the close-up image is a first-color pixel, one pixel after another. In the present embodiment, adding unit <NUM> sets one of pixels of the close-up image as the pixel of interest, and applies label matrix <NUM> to the close-up image so that the pixel of interest coincides with the center cell of label matrix <NUM>. Adding unit <NUM> adds the first pixel value ("<NUM>" in the example of <FIG>) to a pixel (the pixel of interest) that is determined as the first-color pixel, and adds the second pixel value ("<NUM>" in the example of <FIG>) to pixels (the first adjacent pixels) adjacent to the pixel determined as the first-color pixel, the second pixel value being smaller than the first pixel value. Adding unit <NUM> adds no pixel value to a pixel determined as being not a first-color pixel. Stated differently, adding unit <NUM> generates "null information" indicating that no pixel value is added to the pixel. In the complete pixel value information of <FIG>, pixels storing no number each correspond to the "null information.

Then, as shown in <FIG>, moving unit <NUM> moves the location of the edge portion relative to the pixel value information by one pixel each time so that the pixels in the pixel value information coincide with the pixels of the edge portion. In the examples of <FIG>, moving unit <NUM> moves the edge portion by one pixel each time, relative to the pixel value information. Each time the extractor <NUM> moves the location (relative location) of the edge portion by one pixel, extractor <NUM> extracts pixel values of all the pixels in the pixel value information which coincide with second-color pixels among all the pixels of the edge portion. For example, in the example of <FIG>, extractor <NUM> extracts "<NUM>," "<NUM>," "<NUM>," "<NUM>," and "<NUM>" as pixel values. Position determination unit <NUM> determines the location (relative location) of the edge portion which yields a smallest summation value of the pixel values of the pixels in the pixel value information extracted by extractor <NUM>, as the composite position. In the examples of <FIG>, the summation value of the pixel values is the smallest in the case of <FIG>. For this reason, the location of the edge portion shown in <FIG> is determined as the composite position.

Here, extractor <NUM> extracts no pixel value of the pixel whose null information has been generated. For example, a configuration can be contemplated in which when generating the pixel value information, adding unit <NUM> adds "<NUM>" as a pixel value to the pixel that is not a first-color pixel, rather than generating the null information for that pixel (hereinafter, referred to also as a "configuration of the comparative example"). However, with such a configuration, for example, in the example of <FIG>, position determination unit <NUM> is required to add "<NUM>" as a pixel value of the pixels at (<NUM>, <NUM>), (<NUM>,<NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), and (<NUM>, <NUM>), in addition to calculating the summation value of the extracted pixel values "<NUM>," "<NUM>," "<NUM>," and "<NUM>. " This increases the computations by position determination unit <NUM>.

Thus, in the present embodiment, when generating the pixel value information, adding unit <NUM> generates the null information for the pixel that is not a first-color pixel. Accordingly, for example, in the example of <FIG>, position determination unit <NUM> may only calculate the summation value of the extracted pixel values "<NUM>," "<NUM>," "<NUM>," "<NUM>," and "<NUM>," and is not required to add "<NUM>" as a pixel value of the pixels at (<NUM>, <NUM>), (<NUM>,<NUM>), (<NUM>, <NUM>), (<NUM>, <NUM>), and (<NUM>, <NUM>). Accordingly, in the present embodiment, when generating the pixel value information, if the total number of first-color pixels of the first image (the close-up image) is small, null information is generated for the pixel that is not a first-color pixel, thereby reducing the computations, as compared to the configuration of the comparative example.

<FIG> is a diagram showing an example functional configuration of an image processing apparatus 100A according to Embodiment <NUM>. In the example of <FIG> showing the example functional configuration of image processing apparatus <NUM> according to Embodiment <NUM>, edge portion extractor <NUM> extracts the edge image (an image corresponding to edge image data <NUM>) from the far-away image.

In Embodiment <NUM>, edge portion extractor <NUM> extracts an edge image (an image corresponding to edge image data <NUM>) from a low-frequency image (an image corresponding to low-frequency image data <NUM>). As shown in <FIG>, far-away image data <NUM>, discriminated by discriminator <NUM>, is not input to edge portion extractor <NUM>. As shown in <FIG>, low-frequency image data <NUM> is input to edge portion extractor <NUM>. Edge portion extractor <NUM> extracts an edge image (the image corresponding to edge image data <NUM>) from the low-frequency image (the image corresponding to low-frequency image data <NUM>). Determination unit <NUM> according to Embodiment <NUM> shifts the edge portion of the entirety of the low-frequency image by a predetermined number of pixels for multiple times, thereby determining a composite position.

Image processing apparatus 100A according to Embodiment <NUM> as such has the same advantages effects as the image processing apparatus according to Embodiment <NUM>.

<FIG> is a diagram showing an example functional configuration of an image processing apparatus 100B according to Embodiment <NUM>. In the example of <FIG> showing the example functional configuration of image processing apparatus <NUM> according to Embodiment <NUM>, determination unit <NUM> uses a close-up image (an image corresponding to close-up image data <NUM>) to determine a composite position.

In Embodiment <NUM>, determination unit <NUM> uses a high-frequency image (an image corresponding to high-frequency image data <NUM>) to determine a composite position. As shown in <FIG>, close-up image data <NUM>, discriminated by discriminator <NUM>, is not input to determination unit <NUM>. As shown in <FIG>, high-frequency image data <NUM> is input to determination unit <NUM>. Determination unit <NUM> determines a composite position, based on high-frequency image data <NUM> and edge image data <NUM>. In Embodiment <NUM>, a judging unit <NUM> determines whether a total number of first-color pixels, each having a color, among all pixels of a high-frequency image (a target image), is less than a threshold.

Image processing apparatus 100B according to Embodiment <NUM> as such has the same advantageous effects as the image processing apparatus according to Embodiment <NUM>.

<FIG> is a diagram showing an example functional configuration of an image processing apparatus 100C according to Embodiment <NUM>. As shown in <FIG>, low-frequency image data <NUM> is input to an edge portion extractor <NUM>. Edge portion extractor <NUM> extracts an edge image (an image corresponding to edge image data <NUM>) from a low-frequency image (an image corresponding to low-frequency image data <NUM>). A determination unit <NUM> according to Embodiment <NUM> shifts the edge portion of the entirety of the low-frequency image by a predetermined number of pixels for multiple times, thereby determining a composite position.

As shown in <FIG>, determination unit <NUM> included in image processing apparatus 100C according to Embodiment <NUM> uses a high-frequency image (an image corresponding to high-frequency image data <NUM>) to determine the composite position. As shown in <FIG>, close-up image data <NUM>, discriminated by discriminator <NUM>, is not input to determination unit <NUM>. As shown in <FIG>, high-frequency image data <NUM> is input to determination unit <NUM>. Determination unit <NUM> determines the composite position, based on high-frequency image data <NUM> and edge image data <NUM>.

Image processing apparatus 100C according to Embodiment <NUM> as such has the same advantageous effects as the image processing apparatus according to Embodiment <NUM>.

An image processing apparatus according to Embodiment <NUM> combines a first image and a second image as appropriate, even if at least one of the first image and the second image is a color image. <FIG> is a diagram showing an example functional configuration of an image processing apparatus 100E according to Embodiment <NUM>.

Image processing apparatus 100E has a divider <NUM>, and includes a determination unit <NUM> in place of determination unit <NUM>. Determination unit <NUM> includes an R-image overlapping degree calculation unit 1082R, a G-image overlapping degree calculation unit <NUM>, a B-image overlapping degree calculation unit 1082B, and a position determination unit <NUM>.

Close-up image data <NUM> and far-away image data <NUM> are determined by discriminator <NUM> and input to divider <NUM>. Divider <NUM> divides close-up image data <NUM> and far-away image data <NUM> into multiple color components. In the present embodiment, suppose that the multiple color components are RGB components. In other words, divider <NUM> divides close-up image data <NUM> and far-away image data <NUM> each into R component, G component, and B component.

Close-up image data having R component is close-up R image data 511R. Far-away image data having R component is far-away R image data 512R. Close-up image data having G component is close-up G image data <NUM>. Far-away image data having G component is far-away G image data <NUM>. Close-up image data having B component is close-up R image data 511B. Far-away image data having B component is far-away R image data 512B.

Close-up R image data 511R is input to R-image overlapping degree calculation unit 1082R. Far-away R image data 512R is input to an R-image edge portion extractor 110R. R-image edge portion extractor 110R extracts an edge image having an R image (an image corresponding to edge image data 515R having R image) from far-away R image data 512R. The edge image having the R image (an image corresponding to edge image data 515R having R image) is input to R-image overlapping degree calculation unit 1082R. R-image overlapping degree calculation unit 1082R calculates a degree of overlap for the R image, based on close-up R image data 511R and edge image data 515R having R image.

Here, R-image overlapping degree calculation unit 1082R includes the components (i.e., judging unit <NUM>, adding unit <NUM>, moving unit <NUM>, extractor <NUM>, threshold storage unit <NUM>, first pixel value storage unit <NUM>, second pixel value storage unit <NUM>) included in determination unit <NUM> described with reference to <FIG>, except for position determination unit <NUM>. R-image overlapping degree calculation unit 1082R calculates a minimum degree of overlap of R component between the close-up image having R image and the edge portions having R image. For example, "close-up image data <NUM>" shown in <FIG> is replaced with "close-up R image data 511R," "edge image data <NUM>" shown in <FIG> is replaced with "edge image data 515R of R image," and a minimum degree of overlap of R component is calculated.

Similarly, G-image overlapping degree calculation unit <NUM> calculates a minimum degree of overlap of G component between the close-up image having G image and edge portions having G image. B-image overlapping degree calculation unit 1082B calculates a minimum degree of overlap of B component between the close-up image having B image and edge portions having B image.

The minimum degree of overlap of R component and a composite position corresponding to the minimum degree, the minimum degree of overlap of G component and a composite position corresponding to the minimum degree, and the minimum degree of overlap of B component and a composite position corresponding to the minimum degree are input to position determination unit <NUM>. Position determination unit <NUM> discriminates the smallest value among the minimum degree of overlap of R component, the minimum degree of overlap of G component, and the minimum degree of overlap of B component. Subsequently, position determination unit <NUM> determines a composite position that corresponds to the minimum overlapping degree, which is the smallest value, as the composite position of the high-frequency image and the low-frequency image. Stated differently, determination unit <NUM> determines the degree of overlap between the high-frequency image and the edge portion as the degree of overlap which is a smallest degree of overlap in the respective RGB components.

Image processing apparatus 100E according to the present embodiment calculates an overlapping degree for each of the color components (RGB components), and determines a composite position corresponding to the smallest overlapping degree among the calculated overlapping degrees, as the composite position of the high-frequency image and the low-frequency image. Accordingly, even if at least one of the close-up image and the far-away image is a color image, image processing apparatus 100E according to the present embodiment can generate a composite image (a color composite image) having a small degree of overlap between the low-frequency image and the high-frequency image.

In Embodiment <NUM>, discriminator <NUM> discriminates an image which includes a character small in size as a close-up image, and an image which includes a character large in size as a far-away image. In the present embodiment, among two images having frequency varying components, discriminator <NUM> discriminates an image having a greater frequency varying component as a close-up image, and an image having a smaller frequency varying component as a far-away image.

As mentioned above, in general, a large character is easily perceived by viewer X from a distance, and a small character is easily perceived by viewer X from near. For example, if an image includes many small characters as shown in <FIG>, the frequency varies in the image at the same number of portions (edge portions) as the number of small characters. Accordingly, discriminator <NUM> discriminates an image having a large frequency varying component as a first image (close-up image). If an image includes a small number of large characters as shown in <FIG>, the frequency varies in the image at the same number of portions (edge portions) as the number of large characters. Accordingly, discriminator <NUM> discriminates an image having a small frequency varying component as a second image (far-away image).

The image processing apparatus according to the present embodiment discriminates the close-up image and the far-away image, based on the frequency varying components of the two images input to input unit <NUM>. The image processing apparatus according to the present embodiment having such a configuration has the same advantageous effects as the image processing apparatus according to Embodiment <NUM>.

Note that, as a variation, among two images which includes a character, discriminator <NUM> may discriminate an image that includes a character having a smaller frequency varying component as a first image, and an image that includes a character having a greater frequency varying component as a second image. In other words, discriminator <NUM> may discriminate the first image and the second image, based on the frequency varying components of the characters included in the two images.

Determination unit <NUM> according to the above-described embodiments has been described as determining the composite position by shifting one of the edge portion of a text string of the entirety of a far-away image and the edge portion of the entirety of a low-frequency image by a predetermined number of pixels for multiple times.

A determination unit <NUM> according to the present embodiment shifts the edge portion of a character included in a far-away image by a predetermined number of pixels for multiple times, thereby determining a composite position. For example, if the far-away image is an image of three rows of characters "αβ" shown in <FIG>, determination unit <NUM> shifts the edge image of the "αβ" in the first row by a predetermined number of pixels for multiple times, thereby determining a composite position of the close-up image and the far-away image, which is "αβ" in the first row. Combiner <NUM> then combines the close-up image and the far-away image, which is "αβ" in the first row, at the determined composite position.

Determination unit <NUM> also shifts the edge image of "αβ" in the second row by a predetermined number of pixels for multiple times, thereby determining a composite position of the close-up image and the far-away image which is "αβ" in the second row. Combiner <NUM> then combines the close-up image and the far-away image, which is "αβ" in the second row, at the determined composite position.

Determination unit <NUM> also shifts the edge image of "αβ" in the third row by a predetermined number of pixels for multiple times, thereby determining a composite position of the close-up image and the far-away image, which is "αβ" in the third row. Combiner <NUM> then combines the close-up image and the far-away image, which is "αβ" in the third row, at the determined composite position.

Even if the far-away image includes multiple rows of characters, the image processing apparatus according to the present embodiment can determine the composite position for the characters at each row. Accordingly, even if the far-away image includes multiple rows of characters, the image processing apparatus according to the present embodiment can determine, for each text string, the composite position which yields a small overlapping degree. Thus, as compared to the above-described embodiments, the image processing apparatus according to the present embodiment can generate a composite image which yields an even smaller degree of overlap between the close-up image and the far-away image.

A determination unit <NUM> according to the present embodiment shifts the edge portion of a character included in a far-away image by a predetermined number of pixels for multiple times, thereby determining a composite position. For example, if the far-away image is two characters "αβ" shown in <FIG>, determination unit <NUM> shifts the edge image of "α" by a predetermined number of pixels for multiple times, thereby determining a composite position of the close-up image and the far-away image which is "a. " Combiner <NUM> then combines the close-up image and the far-away image, which is "α," at the determined composite position.

Determination unit <NUM> also shifts the edge image of "β" by a predetermined number of pixels for multiple times, thereby determining a composite position of the close-up image and the far-away image, which is "β". Combiner <NUM> then combines the close-up image and the far-away image, which is "β," at the determined composite position.

Even if the far-away image includes multiple characters, the image processing apparatus according to the present embodiment can determine the composite position, for each character, which yields a small overlapping degree. Accordingly, as compared to the above-described embodiments, the image processing apparatus according to the present embodiment can generate a composite image which yields an even smaller degree of overlap between the close-up image and the far-away image.

In the above-described embodiments, image processing apparatus <NUM> is described as being included in image forming apparatus <NUM>. However, image processing apparatus <NUM> may be included in another apparatus. The present embodiment will be described with reference to image processing apparatus <NUM> included in a display apparatus.

<FIG> is a diagram showing an example of including image processing apparatus <NUM> in a display apparatus <NUM>. The composite image (an image corresponding to composite image data <NUM>) generated by image processing apparatus <NUM> is input to a display unit <NUM>. Display unit <NUM> is, for example, a monitor. Display unit <NUM> displays an image based on composite image data <NUM>. Display unit <NUM>, for example, displays the composite images shown in <FIG> and <FIG>.

Image processing apparatus <NUM> according to the present embodiment being included in display apparatus <NUM> allows display of a composite image that is easy for the viewer to perceive. Display apparatus <NUM> is applied as a signage, for example.

The present embodiment has been described with reference to discriminator <NUM> discriminating the close-up image and the far-away image. However, the image processing apparatus may not include discriminator <NUM>. With such a configuration, as the user inputs two image data to the image processing apparatus, the image processing apparatus is configured to discriminate the close-up image data and the far-away image data among the two image data. For example, as the user inputs two images, information that allows the image processing apparatus to discriminate a close-up image is input for the close-up image, and information that allows the image processing apparatus to discriminate a far-away image is input for the far-away image. The image processing apparatus employing such a configuration can reduce the processing burden on discriminator <NUM>.

Claim 1:
An image processing apparatus (<NUM>), comprising:
an input unit (<NUM>) that receives input of a first image which is intended to be viewed from a close distance and a second image which is intended to be viewed from a larger distance;
a first extraction unit (<NUM>) that extracts a high-frequency image from the first image;
a second extraction unit (<NUM>) that extracts a low-frequency image from the second image;
a third extraction unit (<NUM>) that extracts an edge image of one of the second image and the low-frequency image;
a determination unit (<NUM>) that determines a composite position of the high-frequency image and the low-frequency image so that a degree of overlap between the edge image and one of the first image and the high-frequency image is small; and
a combiner (<NUM>) that combines the high-frequency image and the low-frequency image at the composite position determined by the determination unit (<NUM>), wherein
the determination unit (<NUM>) includes:
a judging unit (<NUM>) that determines whether a total number of first color pixels having a color among pixels of a target image is less than a predetermined threshold, the target image being one of the first image and the high-frequency image;
an adding unit (<NUM>) that, when the total number of first color pixels is determined to be less than the threshold, determines whether each of the pixels of the target image is a first color pixel one pixel after another, adds a first pixel value to a pixel determined to be a first color pixel, adds a second pixel value to a pixel adjacent to the pixel determined to be the first color pixel, the second pixel value being smaller than the first pixel value, and adds no pixel value to a pixel determined to be not a first color pixel to generate pixel value information;
a moving unit (<NUM>) that moves a relative position of the pixel value information and the edge image by one pixel each time so that pixels included in the pixel value information and pixels of the edge image coincide with each other;
an extractor (<NUM>) that, each time the relative position is moved by one pixel, extracts pixel values of all pixels included in the pixel value information that coincide with second color pixels, having a color, among all pixels of the edge image; and
a position determination unit (<NUM>) that determines the relative position that yields a smallest summation value of the pixel values extracted by the extractor (<NUM>), as the composite position.