First, image data is converted using a first table storing conversion
values in addresses corresponding to at least input values: u(k)
represented by u(k)=ab.sup.-k (where a and b are constants and k is 0, 1,
2, . . . m) of all input values and linear interpolation. Next, a second
table storing conversion values set in response to the image data
provided by conversion using the first table in addresses corresponding
to at least input values: v(k) represented by v(k)=ck+d (where c and d
constants and k is 0, 1, 2, . . . n) of all input values is stored in
memory. Next, the image data provided by conversion using the first table
is again converted using the second table and linear interpolation.