图片识别——差异哈希算法
差异哈希算法(Different Hash Algorithms,dHash),像aHash和pHash一样,dHash易于实现,相比于它的简单,其实它的识别更为准确。作为一种感知算法的实现,dHash比aHash相近,但比aHash效果更好。aHash关注于平均值,pHash关注频率模式,dHash则基于渐变。下面介绍下dHash算法的工作原理。
算法步骤
- 缩小尺寸。最快速去掉高频和细节的办法就是缩小民族教育。在这里,收缩到9*8的大小,以便它有72的像素点(之后会解释为什么这样)。通过忽略尺寸和纵横比,不管图片如何伸缩,该hash都能匹配相似的图片。
- 简化色彩。转化为灰度图。把缩放后的图片转化为256阶的灰度图。将72个像素转变为72个颜色(为达到最佳效果,可以在缩放尺寸前简化色彩,或者缩放和简化色彩同时进行)
- 计算差异值。dHash算法工作在相邻像素之间,这标识了相对的渐变方向。这样每行9个像素之间产生了8个不同的差异,一共8行,则产生了64个差异值。
- 获取指纹。如果左边的像素比右边的更亮,则记录为1,否则为0(这里用1代表p[x]<p[x+1],设置位从左及右,从上及下的大边)
图片识别——差异哈希算法相关推荐
- 图片识别——均值哈希算法
均值哈希算法(Average hash algorithm,AHA)第一次是从著名的阮一峰阮老师的博文<相似图片搜索的原理>看到的.而此篇文章与阮老师也很类似Looks Like It - ...
- 图片识别——感知哈希算法
所谓感知哈希算法(Perceptual hash algorithm,PHA),它是用于对多种格式的数据生成一个指纹的算法.当然本文只讨论图片格式.感知哈希不同于密码哈希(如md5云云),它对于相似特 ...
- ML之K-means:基于(完整的)手写数字图片识别数据集利用K-means算法实现图片聚类
ML之K-means:基于(完整的)手写数字图片识别数据集利用K-means算法实现图片聚类 目录 输出结果 设计思路 核心代码 输出结果 设计思路 核心代码 metrics.adjusted_ran ...
- 图片识别——三种哈希算法性能与准确度比较
前面几篇文章对图片的三种哈希算法做了简单的介绍:均值哈希算法,感知哈希算法,差异哈希算法.本篇将对上面算法做一个总结.并对在性能方面做些对比. 性能和准确度 目前有个超过150,000张图片的实验,有 ...
- 相似图片搜索的三种哈希算法
想必大家都用google或baidu的识图功能,上面就是我搜索冠希哥一幅图片的结果,达到图片比较目的且利用信息指纹比较有三种算法,这些算法都很易懂,下面分别介绍一下: 一.平均哈希算法(aHash) ...
- python查重算法_用Python实现通过哈希算法检测图片重复的教程
Iconfinder 是一个图标搜索引擎,为设计师.开发者和其他创意工作者提供精美图标,目前托管超过 34 万枚图标,是全球最大的付费图标库.用户也可以在 Iconfinder 的交易板块上传出售原创 ...
- 基于感知哈希算法的中药标本相似图片的搜索
一 前言 笔者最近在开发中药标本相似图片的搜索,就是根据用户上传的图片,然后到中药标本库里找到相似的图片,从而帮助用户识别标本,获取标本信息.查阅了大量资料,看到了阮一峰的一篇文章,经过一个月的开发终 ...
- MATLAB中计算图像哈希,数字图像处理算法及原理(三):相似图片搜索(平均哈希算法)...
这里的关键技术叫做"感知哈希算法(aHash)"ash algorithm),它的作用是对每张图片生成一个"指纹"(fingerprint)字符串,然后比较不同 ...
- python检测图片相同部分_用 Python 实现哈希算法检测重复图片
在 Python 中导入 hashlib 模块,调用函数就可以生成某一个字符串或者文件的哈希值.这个算法对于未被篡改的上传文件非常有效,如果输入数据有细微变化,加密哈希算法都会导致雪崩效应,从而造成新 ...
最新文章
- 001_Gson概述
- [iPhone高级] 基于XMPP的IOS聊天客户端程序(IOS端一)
- Oracle 数据字典表 -- SYS.COL$
- linux 内核 企鹅,Linux 内核 Makefile 体系简单分析
- webpack如何将css文件分离的,webpack--css:Less文件的打包和分离(八)
- java中输入两个数组并显示_java-将输入存储在两个相关的数组中
- 修改sublime 侧边栏 颜色 等
- python自学免费教程-python免费入门教程/求完整的Python入门教程
- python语言能做什么-python语言到底可以做什么呢?
- Postman-汉化插件
- python爬虫——中文编码
- php支付宝查询对账单下载地址,对账单下载 · 移动支付刷脸付API接口开发文档 · 看云...
- 中国最小黑客:为不做作业 黑掉学校系统
- 【C语言】字符串数组按字典升序
- macbook python文件路径_mac下python目录
- 网站服务器怎么做防御?遇到攻击如何解决?
- 腾讯云企业邮箱设置别名
- LOG,Harris,SUSAN角点及边缘检测原理和代码实现
- 思科设备SSH登录配置
- mysql数据库cpu占用特别高
热门文章
- iphone更新运营商服务器,iPhone 上提示“运营商设置”更新是什么?
- OCR识别 云脉慧眼 CC慧眼 拍照翻译 拍照百度搜索
- java:1:错误:写入Hello时出错:Hello.class(拒绝访问)
- 红米3s android7.1,红米3S/3X 的LineageOS14.1刷机包 安卓7.1.1原生风格 本地化 20180203更新...
- 「CSS畅想」何以解忧,美食足矣,用技术给好友开发了一个零食盲盒小游戏
- EtherCAT主站掉线后,如何保证目标系统免受故障影响?
- 涉嫌行贿 三星掌门人等韩企大佬将首次集体接受质询
- php丢失msvcr110.dll,Win7电脑丢失Msvcr110.dll的解决方法
- 决策树实现预测是否购买点电脑
- Vision Transformer 综述