numeral 90 are interpolated between the output gray scale values x 0 and x 1 when the output value xn x 0 instead of simply considering the output gray scale value xn 1 to be absent the output gray scale value xn 1 is always set to 0 when an input gray scale value rout u2212 1 7 2 is u2212 1 thereby interpolating three gray scale values as indicated by a reference numeral 91 in fig5 a this corresponds to interpolating a portion 61 denoted by a broken line in fig5 b thus gray scale correction characteristics data for input gray scale values of all the 256 gray scale levels can be created in the construction shown in fig4 a the register value controller 24 supplies an offset off_set to the linear interpolation calculation circuit 23 based on the register control signal sc so that the example gray scale correction characteristics 60 shown in fig5 b are shifted as a whole in a direction of increase in gray scale value as indicated by an arrow 70 as described above the gray scale corrector 20 stores in luts gray scale correction characteristics data for input gray scale values having six bits equivalent to 64 gray scale levels for each color with regard to input image data having eight bits for each color of rgb equivalent to 256 gray scale levels with regard to the insufficiency the gray scale corrector 20 generates output.