An image processing method includes the steps of detecting the dynamic range of input image data, performing edge enhancement processing to increase the number of grayscale levels of the input image data, and performing dithering processing to reduce the number of grayscale levels of each pixel of the input image data. The number of pseudo grayscale levels is determined based on a parameter indicating the level of the dynamic range and a parameter indicating the level of the edge enhancement processing.