MATLAB图像处理:图像坐标系解析

        本文转载自 MATLAB 图像处理工具箱的帮助文档,向读者介绍如何使用像素索引和空间坐标来表示图像位置。

图像分辨率:1280 x 1014

cut-off

        您可以使用几种不同图像坐标系来访问图像中的位置:使用离散像素索引指定位置,因为图像存储为数组;也可以使用连续空间坐标来指定位置,因为图像表示连续空间中的真实世界场景。

        MATLAB® 将大多数图像存储为二维数组(即矩阵),其中矩阵的每个元素对应于所显示图像中的单个像素(像素派生自图片元素,通常表示计算机显示屏上的一个点)。例如,由 200 行和 300 列不同颜色的点组成的图像将作为 200×300 矩阵存储在 MATLAB 中。为了便于访问图像中的位置,Image Processing Toolbox™ 使用几种常用的图像坐标系来将图像表示为数组:

        • 像素索引 - 因为图像是数组,所以可以使用标准 MATLAB 索引。

        • 空间坐标 - 您可以使用笛卡尔坐标将图像中的位置视为平面上的位置。

像素索引

        通常,表示图像中位置的最方便方法是使用像素索引。将图像视为由离散元素组成的网格,从上到下、从左到右排列,如下图所示。

像素索引

        对于像素索引,逐行向下递增,而逐列向右递增。像素索引是整数值,范围是从 1 到行或列的长度。

        在 MATLAB 中,前两个矩阵维度的像素索引和下标之间有一对一的对应关系。例如,第五行第二列中的像素的数据存储在矩阵元素 (5,2) 中。您可以使用普通的 MATLAB 矩阵下标来访问单个像素的值。例如,MATLAB 代码

I(2,15)

返回图像 I 的第 2 行第 15 列的像素值。同样,MATLAB 代码

RGB(2,15,:)

返回图像 RGB 的第 2 行第 15 列像素的 R、G、B 值。

        MATLAB 中前两个矩阵维度的像素索引和下标之间的对应关系使得图像数据矩阵和图像显示方式之间的关系易于理解。

空间坐标

        表示图像中位置的另一种方法是使用连续变化的坐标系,而不是离散的索引。对于这种坐标,您可以想象图像覆盖在一个方形补片之上。在像这样的空间坐标系中,图像中的位置是平面上的位置,它们用 x 和 y(而不是像素索引系统中的行和列)来描述。从笛卡尔坐标角度来看,(x,y) 位置(如 (3.2,5.3))是有意义的,并且不同于像素 (5,3)。

        Image Processing Toolbox™ 定义了两种类型的空间坐标系:

        • 内部坐标 - 与像素索引对应的空间坐标系

        • 世界坐标 - 将图像与某个其他坐标空间相关联的空间坐标系

内部坐标

        默认情况下,Image Processing Toolbox™ 使用与图像像素索引对应的图像空间坐标系。它称为内部坐标系,如下图所示。请注意,y 向下递增,因为该方向与数字图像的通常查看方式一致。

内部坐标系

        任何像素的中心点的内部坐标 (x,y) 与该像素的列和行索引相同。例如,第 5 行第 3 列中像素的中心点的空间坐标为 x = 3.0、y = 5.0。这种对应大大简化了许多工具箱函数的使用。然而,请注意,相对于像素索引 (5,3),坐标设定 (3.0,5.0) 的顺序在内部坐标中是反向的。

        有几个函数主要使用空间坐标而不是像素索引,但是,只要使用默认的空间坐标系(内部坐标),就可以根据其列 (x) 和行 (y) 来指定位置。

        查看内部坐标系时,请注意图像的左上角位于 (0.5,0.5),而不是 (0,0),图像的右下角位于 (numCols + 0.5, numRows + 0.5),其中 numCols 和 numRows 是图像中的行数和列数。在与之相对的像素索引中,左上角的像素是像素 (1,1),右下角的像素是像素 (numRows, numCols)。左上角像素的中心是 (1.0, 1.0),右下角像素的中心是 (numCols, numRows)。事实上,每个像素的中心坐标均为整数值。具有索引 (r, c) 的像素的中心(其中 r 和 c 定义为整数)位于内部坐标系中 x = c、y = r 的点。

世界坐标

        在某些情况下,您可能希望使用世界坐标系(也称为非默认空间坐标系)。可能需要使用世界坐标系的一些情况包括:

        • 当您对图像执行几何运算(如平移)并希望保留新位置与原始位置的关系信息时。例如,您可以平移原点,指定图像的左上角是点 (19.0,7.5) 而不是点 (0.5,0.5)。

        • 当像素布局不是正方形时。例如,在磁共振成像 (MRI) 中,您可以收集数据,使像素在一个方向上的采样率高于正交方向。

        • 当您知道像素的范围如何与现实世界中的位置对应时。例如,在航空照片中,您可能希望指定一个坐标系,其中每个像素可能覆盖地面上一个特定的 5×5 米地块。

        • 当您要反转 x 轴或 y 轴的方向时。这是一种用于地理空间数据的常见方法。

        定义世界坐标系有几种方法。您可以使用空间参照对象,这些对象对图像在世界坐标系中的位置、图像分辨率以及图像范围与内部坐标和世界坐标的关系进行编码。您也可以指定每个维度中的最大和最小坐标。有关详细信息,请参阅“Define World Coordinate System of Image” (https://ww2.mathworks.cn/help/releases/R2020b/images/define-world-coordinates-using-spatial-referencing.html)

cut-off

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空