def project(self, from_shape, to_shape):
xy_proj = project_coords([(self.x, self.y)], from_shape, to_shape)<EOL>return self.deepcopy(x=xy_proj[<NUM_LIT:0>][<NUM_LIT:0>], y=xy_proj[<NUM_LIT:0>][<NUM_LIT:1>])<EOL>
Project the keypoint onto a new position on a new image.

E.g. if the keypoint is on its original image at x=(10 of 100 pixels)
and y=(20 of 100 pixels) and is projected onto a new image with
size (width=200, height=200), its new position will be (20, 40).

This is intended for cases where the original image is resized.
It cannot be used for more complex changes (e.g. padding, cropping).

Parameters
----------
from_shape : tuple of int
    Shape of the original image. (Before resize.)

to_shape : tuple of int
    Shape of the new image. (After resize.)

Returns
-------
imgaug.Keypoint
    Keypoint object with new coordinates.