我是 Matlab 的新手。我有一张图像(大小为 mxnx3),图像上有几个人工选择的点。例如:
p1 = [267,79];
p2 = [96,372];
这些点是左上角 (1,1) 的图像坐标。我正在尝试将其转换为左下角 (0,0) 的笛卡尔坐标。我怎样才能做到这一点?提前致谢!
我是 Matlab 的新手。我有一张图像(大小为 mxnx3),图像上有几个人工选择的点。例如:
p1 = [267,79];
p2 = [96,372];
这些点是左上角 (1,1) 的图像坐标。我正在尝试将其转换为左下角 (0,0) 的笛卡尔坐标。我怎样才能做到这一点?提前致谢!
如果我理解正确:只需使用
axis xy
来自axis
文档:
AXIS XY 将 MATLAB 置于其默认的“笛卡尔”轴模式。坐标系原点在左下角。x 轴是水平的,从左到右编号。y 轴是垂直的,从下到上编号。
如果您需要直接在代码中翻译您的坐标,您可以创建一个简单的匿名函数:
img2cart = @(p) [p(1), img.size(2) - p(2)];
q1 = img2cart(p1);
q2 = img2cart(p2);