In a digital camera, a CPU divides a multi-valued image into blocks and selects
object blocks, which are to be the object of processing. A CCD outputs luminance
values of the multi-valued image. A low luminance threshold value setter sets low
luminance threshold values on the basis of mean luminance values of blocks adjacent
to the object block. A mean luminance value calculator calculates mean luminance
values using luminance values from which luminance values that do not reach the
low luminance threshold value in a block have been removed. A binarization threshold
value setting circuit sets a binarization threshold value of the block based on
the mean luminance values. A binarizer then binarizes the multi-valued image in
the block on the basis of the binarization threshold values.