I would say that whitening is a more general concept than randomness extraction.
In randomness extraction you have an input with some entropy that isn't perfectly random and an output that should be perfectly random and full entropy. In whitening there is not necessarily an entropy requirement on the output, it just needs to look perfectly random to an adversary.
For example, suppose you have a $b$-bit input $I$ with at least $e$ bits of entropy:
- A randomness extractor would map it to at most an $e$-bit output, for example the first $e$ bits of $H(I)$. (Better yet, an $\frac{e}{2}$-bit output, as NIST recommends in 800-90B.)
- A whitener could instead use encryption with a secret key $E_k(I)$. This gives a $b$-bit output that may only have $e$ bits of entropy, but still looks random as long as the key is secret.
With the above definitions, Von Neumann is both a randomness extractor and a whitener (when the input is a Bernoulli sequence).