Vs: image: the codomain is the set that the function might reach.

The image is the exact set that it actually reaches.

E.g. the function:
could have:

$f(x)=x_{2}$

- codomain $R$
- image $R_{+}$

Note that the definition of the codomain is somewhat arbitrary, e.g. $x_{2}$ could as well technically have codomain:
even though it will obviously never reach any value in $R_{2}$.

$R⋃R_{2}$

The exact image is in general therefore harder to characterize.