Предполагается, что система координат фиксирована, а размеры изображения параллельны осям:
1. Нормализуйте координаты до [0, 1]:
Это говорит вам о части изображения, покрытой координатой вдоль каждого измерения. Эта доля остается постоянной при масштабировании изображения.
При заданной координате (x, y)
и изображении с размерами (w, h)
нормализованные координаты задаются как (x/w, y/h)
. Если начало координат не в (0, 0)
, а в некотором (x0, y0)
, оно задается как ((x-x0)/w, (y-y0)/h)
.
2. Увеличьте координаты
. При условии нормализованной координаты (x, y)
для родительского изображения с размерами (W, H)
масштабированная координата будет (x*W, y*H)
. Если начало координат не в (0, 0)
, а в некотором (x0, y0)
, оно задается как (x*W+x0, y*H+y0)
.
Объединение двух шагов, поскольку начало для обоих изображений одинаково в (0, 0)
, и подставляя w = h = 5
, W = H = 50
, для координаты (x, y)
, преобразованная координата (x', y')
определяется как:
(x', y') = (50*x / 5, 50*y / 5) = (10*x, 10*y)
.
Итак, в вашем регистр (2.5, 2.5)
будет сопоставлен с (25, 25)
.