c# 图像坐标处理

本文关键字:处理 坐标 图像 | 更新日期: 2023-09-27 18:30:42

如果我们有 2 个相同的图像。一个是小,一个是大。现在我们在小图像上有 x y 值

那么我们将如何将其映射到大图像上的相同位置。谁能告诉我公式?

c# 图像坐标处理

我想你会缩放它:

int bigX = smallX * (bigWidth / smallWidth);
int bigY = smallY * (bigHeight / smallHeight);

请注意,您可能希望使用浮点运算来避免整数算术问题:

int bigX = (int) (smallX * ((double) bigWidth / smallWidth));
int bigY = (int) (smallY * ((double) bigHeight / smallHeight));

只需使用比例。

Point bigpoint = new Point((int)(smallpoint.X * bigwidth/smallwidth), 
             (int)(smallpoint.Y * bigheight/smallheight));
// Assuming that Point smallpoint is the pixel of small image