DPCM - Differential pulse code modulation
For calculation a prediction value "p" in the encoder, we use only pixels previously known to the decoder. Usually we combine the values of only a few neighboring pixels to obtain a predicted value. See the picture below where "u" is the value to be predicted, "a" is the value of previously decoded pixel value of the same line and "b", "c" are values in previous line. The pixel at (0, 0) have to be sent with original value - no values are known in decoder so far. Other pixels at the first row will use "a" as a prediction and at the first column will use "b" .
| . |
. |
. |
. |
| . |
c |
b |
. |
| . |
a |
u |
. |
| . |
. |
. |
. |
|