1. close all;
  2. clear all;
  3. I1=imread('lena.bmp');
  4. angle=;
  5. T=[cos(angle),sin(angle),;-sin(angle),cos(angle),;,,];
  6. t1 = maketform('affine',T);
  7. I2 = imtransform(I1,t1,'bilinear','fill',);%旋转
  8. I2=imresize(I2,0.5);%缩放
  9. figure;
  10. imshow(I1);
  11. figure;
  12. imshow(I2);
  13. H1=Humoment(I1)
  14. H2=Humoment(I2)
  1. function Hu = Humoment(I)
  2. I=double(I);
  3. m00=sum(sum(I));
  4. m10=;m01=;
  5. [row,col]=size(I);
  6. for i=:row
  7. for j=:col
  8. m10=m10+i*I(i,j);
  9. m01=m01+j*I(i,j);
  10. end
  11. end
  12. xb=m10/m00;%重心坐标
  13. yb=m01/m00;
  14.  
  15. %中心距
  16. u02 = ;u03 = ;u11 = ;u12 = ;u20 = ;u21 = ;u30 = ;
  17. for i=:row
  18. for j=:col
  19. u02=u02+(j-yb)^*I(i,j);
  20. u03=u03+(j-yb)^*I(i,j);
  21. u11=u11+(i-xb)*(j-yb)*I(i,j);
  22. u12=u12+(i-xb)*(j-yb)^*I(i,j);
  23. u20=u20+(i-xb)^*I(i,j);
  24. u21=u21+(i-xb)^*(j-yb)*I(i,j);
  25. u30=u30+(i-xb)^*I(i,j);
  26. end
  27. end
  28.  
  29. %归一化中心距
  30. n02=u02/m00^;
  31. n03=u03/m00^2.5;
  32. n11=u11/m00^;
  33. n12=u12/m00^2.5;
  34. n20=u20/m00^;
  35. n21=u21/m00^2.5;
  36. n30=u30/m00^2.5;
  37.  
  38. %Hu
  39. h1 = n20 + n02;
  40. h2 = (n20-n02)^ + *(n11)^;
  41. h3 = (n30-*n12)^ + (*n21-n03)^;
  42. h4 = (n30+n12)^ + (n21+n03)^;
  43. h5 = (n30-*n12)*(n30+n12)*((n30+n12)^-*(n21+n03)^)+(*n21-n03)*(n21+n03)*(*(n30+n12)^-(n21+n03)^);
  44. h6 = (n20-n02)*((n30+n12)^-(n21+n03)^)+*n11*(n30+n12)*(n21+n03);
  45. h7 = (*n21-n03)*(n30+n12)*((n30+n12)^-*(n21+n03)^)-(*n12-n30)*(n21+n03)*(*(n30+n12)^-(n21+n03)^);
  46. Hu = [h1 h2 h3 h4 h5 h6 h7];

结果:

对于两图像做测试,其中第二幅是第一幅旋转30度并缩小到1/4大小:

上述两幅图计算出的Hu矩都为:

0.0012    0.0000    0.0000    0.0000   -0.0000   -0.0000    0.0000

Hu矩的更多相关文章

  1. Hu矩SVM训练及检测-----OpenCV

    关键词:Hu矩,SVM,OpenCV 在图像中进行目标物识别,涉及到特定区域内是否存在目标物,SVM可在样本量较少情况下对正负样本(图片中前景背景)做出良好区分,图片基本特征包括诸如HOG.LBP.H ...

  2. opencv计算两个轮廓之间hu矩相似程度,MatchShapes

    https://blog.csdn.net/jiake_yang/article/details/52589063 [OpenCV3.3]通过透视变换矫正变形图像 https://blog.csdn. ...

  3. 【图像基础】图像不变性特征HU矩和Zernike矩

    参考 1. 图像不变性特征: 2. matlab实现: 3. HU矩和Zernike矩: 完

  4. 几何不变矩--Hu矩

    [图像算法]图像特征: ---------------------------------------------------------------------------------------- ...

  5. 【图像算法OpenCV】几何不变矩--Hu矩

    原文地址  http://blog.csdn.NET/daijucug/article/details/7535370 [图像算法OpenCV]几何不变矩--Hu矩 一 原理 几何矩是由Hu(Visu ...

  6. opencv —— moments 矩的计算(空间矩/几何矩、中心距、归一化中心距、Hu矩)

    计算矩的目的 从一幅图像计算出来的矩集,不仅可以描述图像形状的全局特征,而且可以提供大量关于该图像不同的几何特征信息,如大小,位置.方向和形状等.这种描述能力广泛应用于各种图像处理.计算机视觉和机器人 ...

  7. opencv中的图像矩(空间矩,中心矩,归一化中心矩,Hu矩)

    严格来讲矩是概率与统计中的一个概念,是随机变量的一种数字特征.设 x 为随机变量,C为常数,则量E[(x−c)^k]称为X关于C点的k阶矩.比较重要的两种情况如下: 1.c=0,这时a_k=E(X^k ...

  8. 形状特征提取-Hu不变矩(转载)

    [原文部分转载]:http://blog.csdn.net/wrj19860202/archive/2011/04/16/6327094.aspx 在连续情况下,图像函数为 ,那么图像的p+q阶几何矩 ...

  9. OpenCV学习(33) 轮廓的特征矩Moment

    在OpenCV中,可以很方便的计算多边形区域的3阶特征矩,opencv中的矩主要包括以下几种:空间矩,中心矩和中心归一化矩. class Moments { public: ...... // 空间矩 ...

随机推荐

  1. error C2065: 'CArchiveStream' : undeclared identifier

    release:模式下 问题: 在导入JPEG文件时要使用到  CArchiveStream类  但是编译的时候会出现  'CArchiveStream'   :   undeclared   ide ...

  2. WPF使用HierarchicalDataTemplate绑定Dictionary生成TreeView

    Dictionary中的<string, CustomeType>CustomeType是一个集合,将其绑定生成一棵树,树的第一层节点是Dictionary的Key,第二层是Custome ...

  3. a column-oriented DBMS

    https://clickhouse.yandex/docs/en/introduction/what_is_clickhouse.html

  4. Kills all phantomjs instances, disregard of their origin python关闭进程

    Python/Linux quit() does not terminate PhantomJS process · Issue #767 · SeleniumHQ/selenium https:// ...

  5. (25) java web的struts2框架的使用-基于表单的文件上传

    一,首先创建一个表单页面 <body> <form action="uploads" method="post" enctype=" ...

  6. 小玩Spring Boot

    Spring Boot是Spring Mvc的升级版 号称是替代者 也是微服务的微框架基础 有3启动方式 用IntelJ IDEA 生成spring boot工程 1.有个入口类 可以直接run as ...

  7. caioj1465&&poj1024: 【AC自动机】地图匹配

    刷的第二题AC自动机,这题简直了.. 用询问的串建AC自动机,然后...爆搜! ACBB                  ACBBACCA                  A  AABBC     ...

  8. codeforces 414B B. Mashmokh and ACM(dp)

    题目链接: B. Mashmokh and ACM time limit per test 1 second memory limit per test 256 megabytes input sta ...

  9. 并不对劲的bzoj1758:p4292:[WC2010]重建计划

    题目大意 \(n\)(\(n\leq10^5\))个点的一棵树,有边权\(w\),给定\(l,r\),求边数在\([l,r]\)中的路径的平均边权的最大值 题解 二分答案,判断时将边权变成\(w-mi ...

  10. bzoj1207 [HNOI2004]打鼹鼠——LIS

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1207 这题和求LIS有点像,打这一只鼹鼠一定可以从打上一只鼹鼠转移过来: 所以不用考虑机器人 ...