Найти изображение небольшого масштаба в крупномасштабном изображении

У меня есть изображения с двух камер. Оба они отправляют изображение, но изображение камеры 1 увеличено (это похоже на то, что изображение камеры 1 находится внутри изображения камеры 2).

У меня есть позиция точки в изображении камеры 1. Это положение может меняться на разных снимках. Теперь я хочу найти эту точку на картинке камеры 2.

Оба изображения камер находятся в 2560X2048 px.

Как я могу найти, что x, y на картинке 2?

1 ответ

Я нашел ответ. Я обрезал unzoomed! изображение будет равно увеличенной картинке. и сохраните x, y обрезанного изображения на unzoomed изображении. Чем я вычисляю проценты x, y этой точки в увеличенном изображении. что-то вроде этого:

****** percentXZoom = (I_PLATE_MIN_X * 100) / 2560;
****** xCropedImage = xD - xU;
****** xDiff = (xCropedImage * percentXZoom) / 100;
****** x = xD + Math.Abs(xDiff);

****** percentYZoom = (I_PLATE_MIN_Y * 100) / 2560;
****** yCropedImage = yD - yU;
****** yDiff = (yCropedImage * percentYZoom) / 100;
****** y = yD + Math.Abs(yDiff);

"2560" - это размер пикселя в изображениях.

xD, yD - начальная точка обрезанного изображения. и xU, yU - конечная точка обрезанного изображения.

Теперь у меня есть x, y этой точки в unzoomed picture.

licensed under cc by-sa 3.0 with attribution.