1、Zernike矩介绍

Zernike矩是基于 Zernike多项式的正交化函数,所利用的正交多项式集是 1个在单位圆内的完备正交集。Zernike矩是复数矩 ,一般把 Zernike矩的模作为特征来描述物体形状。1个目标对象的形状特征可以用 1组很小的 Zernike矩特征向量很好的表示,低阶矩特征向量描述的是 1幅图像目标的整体形状,高阶矩特征向量描述的是图像目标的细节。

2、Zernike多项式数学描述

Zernike有奇数和偶数之分

若为奇数,则  

若为偶数,则  

其中,

m、n为非负整数,且n>m;

φ 为方位角;

ρ 为半径 ,

Zernike收敛于[-1,1]之间:

Rm为径向多项式:

当n-m的值为奇数时,

当n-m的值为偶数时, Rmn =0 。

3、Zernike的特点

1)当计算 1幅图像的 Zernike矩时 ,以该图像的形心 (也称作重心 )为原点 ,把像素坐标映射到单位圆内。

2)Zernike 矩是一组正交矩,具有旋转不变性的特性,即旋转目标并不改变其模值。

3)低阶矩特征向量描述的是 1幅图像目标的整体形状,高阶矩特征向量描述的是图像目标的细节。

4)通过标准矩来归一化的图像,可以做到平移和尺度不变性。

4、Zernike矩的应用

由于Zernike矩是用来描述图像目标的几何形状信息,所以Zernike图像矩可应用于手势识别、形状识别、图像分类等几何形状明显的特征物。但是不能用来识别丰富的纹理信息的物体。

参考:

维基百科:https://en.wikipedia.org/wiki/Zernike_polynomials

百度百科:http://baike.baidu.com/link?url=_F6XtZkLrUH9lcIyD2MbH8aJhFetRHR29flNItQMciiqktaDRQldo1qjY3LDToKP41XhxJbYJ5D5PP9QKWmdQ_

http://baike.baidu.com/link?url=HVwJi9xDwpq0ABl1FR2wDVp0_R2SGfV8y9OabQGTZA6I85m2ouoiBEjtt9nzDDCccF0lrel5PLLLQtxDx6WTfK

matlab代码:http://www.mathworks.com/matlabcentral/fileexchange/38900-zernike-moments

C代码:http://blog.csdn.net/wrj19860202/article/details/6334275

C++与opencv写的demo:http://download.csdn.net/detail/lengyun_5850/9365199

Zernike不变矩的更多相关文章

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

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

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

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

  3. Zernike矩之边缘检测(附源码)

    这一篇博文将讨论Zernike矩在边缘检测中的应用,关于Zernike矩的基本概念,可以参看<Zernike矩之图像重建(附源码> 源码下载 参考: [4] Ghosal S, Mehro ...

  4. Zernike矩之图像重建(附源码)

    源码下载 参考: [1] Teague M R. Image analysis via the general theory of moments[J]. JOSA, 1980, 70(8): 920 ...

  5. 几何不变矩--Hu矩

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

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

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

  7. 模式识别之不变矩---SIFT和SURF的比较

  8. 转载:使用 OpenCV 识别 QRCode

    原文链接:http://coolshell.cn/articles/10590.html#jtss-tsina 识别二维码的项目数不胜数,每次都是开箱即用,方便得很. 这次想用 OpenCV 从零识别 ...

  9. A Survey of Shape Feature Extraction Techniques中文翻译

    Yang, Mingqiang, Kidiyo Kpalma, and Joseph Ronsin. "A survey of shape feature extraction techni ...

随机推荐

  1. 监控-CPU使用率

    原始脚本来自TG,自己对部分脚本做了调整,分享出来仅供参考,请勿整篇Copy! 使用以下语句获取[CPU使用率] USE [DBA_Monitor] GO /****** 对象: StoredProc ...

  2. Git 基本命令有哪些

    Git 相关命令 git init 初始化一个项目 git clone 利用url 从远程clone下来一个项目 git status 查看当前项目修改状态 git log 查看日志 查看历史记录 g ...

  3. javaSE(九)之泛型(Generics)

    前言 这几天分享了怎么搭建集群,这一篇给大家介绍的是泛型,在我们的很多java底层的源代码都是有很多复杂的泛型的!那什么是泛型呢? 泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是 ...

  4. Java数据库 高级查询

    插入数据记录 1.插入单行数据 语法: INSERT INTO 表名 [(字段名列表)]  VALUES (值列表); 2.插入多行数据 语法:INSERT INTO 新表 (字段名列表) VALUE ...

  5. Qt学习之路MainWindow学习过程中的知识点

    一.Qt的GUI程序有一个常用的顶层窗口,叫做MainWindow MainWindow继承自QMainWindow.QMainWindow窗口分成几个主要的区域:   二.QAction类 QAct ...

  6. Hive内置数据类型

    Hive的内置数据类型可以分为两大类:(1).基础数据类型:(2).复杂数据类型.其中,基础数据类型包括:TINYINT,SMALLINT,INT,BIGINT,BOOLEAN,FLOAT,DOUBL ...

  7. Twitter的分布式系统中ID生成方法——Snowflake

    Twitter-Snowflake算法产生的背景相当简单,为了满足Twitter每秒上万条消息的请求,每条消息都必须分配一条唯一的id,这些id还需要一些大致的顺序(方便客户端排序),并且在分布式系统 ...

  8. [Sdoi2010]星际竞速

    个人对山东省选已经十分无语了,做了三道题,都TM是费用流,这山东省选是要干什么,2009--2011连续三年,只要会费用流,然后建个边,跑一跑就过了. 10 年一度的银河系赛车大赛又要开始了.作为全银 ...

  9. Ionic3学习笔记(四)修改返回按钮文字、颜色

    本文为原创文章,转载请标明出处 目录 修改返回按钮文字 修改返回按钮颜色 1. 修改返回按钮文字 参考官网 Ionic API---Config 文档 可在 ./src/app/app.module. ...

  10. Mysql主从复制原理及配置

    Mysql主从复制原理及配置 1.复制概述 Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其 ...