Computer art generally refers to art that is created by a computer. Since a computer follows a program, the computer is
required to be taught to paint via a program. Creativity is, however, not something that can be easily taught to a computer with
the primitive programming tools available today.

If considering painting an approximation to a photograph, then computer art can be considered generating different
approximations to a photograph. Some of the simple approximation methods that have been attempted by artists in the past
are implemented into computer programs. Example images generated by these programs are shown below.

The image in Fig. 1a shows a plumeria flower. Fig. 1b shows approximation of the flower by random color dots. Each pixel is
replaced with up to 256 random red, green, and blue dots. When the generated image is viewed from afar, an approximation
to the original flower is observed. When the image is viewed from up close, individual dots become visible. A close-up view of
the upper-left corner of the image in FIg. 1b is shown in Fig. 1c. Note that when red and green dots fall on top of each other a
yellow dot is obtained. Similarly other color dots are obtained when random red, green, and blue dots fall on top of each other.
Our eyes sense a particular color by mixing red, green, and blue dots in close proximity of each other. Another example of
approximation by random color dots is given in Fig. 2.
(c)
Fig. 1. (a) A plumeria flower. (b) Approximation of the plumeria by random red, green, and blue dots. Click at the generted image to
view/download the image in full resolution. (c) A close-up view of the upper-left corner of (b).
Fig. 2.  (a) Piercing eyes. (b) Approximation of the eyes with random red, green, and blue dots.
(a)
(c)
Fig. 4. (a), (d) Original images. (b), (e) Images approximated with circles to keep the maximum color difference between an image and
its approximation below 25. (c), (f) The same but keeping the maximum color difference below 16.
(a)
(b)
(a)
(b)
(a)
(b)
(c)
Fig. 3. (a), (d) Original images. (b), (e) Images approximated by squares with maximum color difference of 25. (c), (f) Images
approximated by squares with maximum color difference of 16. Red, green, and blue color components vary between 0 and 255.
(b)
The software for each approximation method reads a color or gray scale image. Then, it asks the user to choose one among a
number of options. The options are such as the  number of colors to be used to approximate an image or the maximum
intensity/color difference between an image and its approximation. The software will then generate an approximation to the
provided image and displays it on the screen. The displayed image can be saved into a file in jpg, bmp, png, ps or other formats

For questions or additional information about Computer Art Software, contact:
support@clrimg.com
Computer Art Software
Color Image
Another simple image approximation method replaces a collection of adjacent pixels of similar colors with a square of the same
color. The approximation involves errors. This method uses the maximum color difference between an image and its approximation
to guide the process. Examples of image approximation by squares to achieve a required maximum error is given in Fig. 3.
Decreasing the error tolerance will increase the number of squares used in the approximation.
(d)
(e)
(f)
Another simple approximation method replaces adjacent pixels of similar colors with a circle of the same color. Since a pixel
represents a square area, replacing it with a circle leaves unfilled subpixel regions. This can produce artifacts when viewing a
generated image in postscript (.ps) format. In other formats, however, the subpixel regions are not visible. Examples of
approximation by circles are give in Fig. 4 when using maximum color differences 25 and 16.
(d)
(e)
(f)
(a)
(c)
(b)
Yet another approximation method replaces an image with parallel lines where color and thickness of a line are varied with colors of
individual pixels. Example images generated by this approximation method when using horizontal lines are given in Fig. 5.
(d)
Fig. 5. (a), (c) Original images. (b), (d) Images approximation using horizontal lines. Click at a generated image to view the
approximation in full resolution.
(a)
(c)
(b)
A natural question coming to mind when approximating an image by horizontal lines is: why not use vertical lines, or lines in arbitrary
directions to approximate an image. Actually, the same process can be followed to approximate an image by lines in arbitrary
directions. Following are examples of image approximation when using  lines with directions equal to local intensity gradient
directions.
(d)
Fig. 6. (a), (c) Original images. (b), (d) Images approximated by lines with directions equal to local intensity gradient directions.
(a)
(c)
(b)
An artist often creates a painting by painting regions of appropriate colors. This process can be easily coded into a program, if a
reference image from which a painting should be created is available. The process involves identifying regions of homogeneous
colors in the image and replacing each region with the color approximating the colors of pixels within the region. As more colors are
allowed in the approximation, the generated image will become more similar to the provided image. By specifying the number of
colors allowed in an approximation, regions of homogeneous colors can be identified and replaced with their approximations.
Examples of image approximation in this manner are given in Fig. 7.
(d)
Fig. 7. (a), (d) Original images. (b), (e) Images approximated with homogeneous regions up to 10 different colors. (c), (f) Images
approximated with homogeneous regions up to 20 different colors.
(f)
(e)