第32课 图像矩(Image Moments)

1. 矩的概念介绍

图像识别的一个核心问题是图像的特征提取,简单描述即为用一组简单的数据(数据描述量)来描述整个图像,这组数据月简单越有代表性越好。良好的特征不受光线、噪点、几何形变的干扰,图像识别技术的发展中,不断有新的描述图像特征提出,而图像不变矩就是其中一个。

从图像中计算出来的矩通常描述了图像不同种类的几何特征如:大小、灰度、方向、形状等,图像矩广泛应用于模式识别、目标分类、目标识别与防伪估计、图像编码与重构等领域。

严格来讲矩是概率与统计中的一个概念,是随机变量的一种数字特征。设 xx 为随机变量,C为常数,则量E[(x−c)^k]称为X关于C

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
计算图像主轴方向可以使用图像的方法。具体步骤如下: 1. 读入图像并将其转换为灰度图像。 2. 计算图像的中心和归一化中心。 3. 计算图像的二阶中心,即 m20、m11 和 m02。 4. 计算主轴方向的角度 θ: θ = 0.5 * atan2(2 * m11, m20 - m02) 5. 将角度转换为度数。 下面是 MATLAB 代码实现: ```matlab % 读入图像并转换为灰度图像 img = imread('image.jpg'); gray = rgb2gray(img); % 计算图像的中心和归一化中心 moments = moment(gray); centroid = moments(2:3) ./ moments(1); normalizedMoments = nmoment(gray, centroid(1), centroid(2)); % 计算二阶中心 m20 = normalizedMoments(3,1); m11 = normalizedMoments(2,2); m02 = normalizedMoments(1,3); % 计算主轴方向的角度 theta = 0.5 * atan2(2 * m11, m20 - m02); % 将角度转换为度数 angleInDegrees = rad2deg(theta); % 显示图像和主轴方向 imshow(img); hold on; plot(centroid(1), centroid(2), 'r+', 'MarkerSize', 10); line([centroid(1), centroid(1) + cos(theta)], [centroid(2), centroid(2) + sin(theta)], 'Color', 'r', 'LineWidth', 2); hold off; ``` 在这个代码中,`moment` 和 `nmoment` 函数分别计算图像和归一化。`moment` 函数返回的是一个长度为 6 的向量,分别代表 0 阶到 2 阶图像的重心坐标。`nmoment` 函数需要传入图像、重心的 x 坐标和 y 坐标,返回的是一个 3x3 的阵,代表归一化中心。 最后,使用 `imshow` 函数显示图像,使用 `plot` 函数在图像中心画一个红色十字,使用 `line` 函数画出主轴方向。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值