An image processing device performs an error diffusion on multilevel input
image data to generate multilevel output image data that has fewer levels
than the multilevel input image data. The image processing device
includes a plurality of setting devices, each of which sets a threshold
value to be used at the error diffusion, a threshold value selecting
device that randomly selects one of the plurality of setting devices with
respect to each pixel to be processed and allows the selected setting
device to set a threshold value with respect to the pixel to be processed
when the image processing device performs the error diffusion, and a
converting device that converts the pixel to be processed into multilevel
output image data with fewer levels than multilevel input image data by
the error diffusion, in accordance with the threshold value set by the
setting device selected by the threshold value selecting device. The
plurality of setting devices includes at least a first setting device and
a second setting device that sets a threshold value which is higher than
a threshold value set by the first setting device.