文档章节

图像识别原理之如何识别图像边缘

不最醉不龟归
 不最醉不龟归
发布于 2017/02/09 12:54
字数 627
阅读 45
收藏 2
点赞 0
评论 0

图像识别(image recognition)是现在的热门技术。

文字识别、车牌识别、人脸识别都是它的应用。但是,这些都算初级应用,现在的技术已经发展到了这样一种地步:计算机可以识别出,这是一张狗的照片,那是一张猫的照片。

 

这是怎么做到的?

 

让我们从人眼说起,学者发现,人的视觉细胞对物体的边缘特别敏感。也就是说,我们先看到物体的轮廓,然后才判断这到底是什么东西。

计算机科学家受到启发,第一步也是先识别图像的边缘。

 

加州大学的学生 Adit Deshpande 写了一篇文章《A Beginner's Guide To Understanding Convolutional Neural Networks》,介绍了一种最简单的算法,非常具有启发性,体现了图像识别的基本思路。

 

首先,我们要明白,人看到的是图像,计算机看到的是一个数字矩阵。所谓"图像识别",就是从一大堆数字中找出规律。

怎样将图像转为数字呢?一般来说,为了过滤掉干扰信息,可以把图像缩小(比如缩小到 49 x 49 像素),并且把每个像素点的色彩信息转为灰度值,这样就得到了一个 49 x 49 的矩阵。

然后,从左上角开始,依次取出一个小区块,进行计算。

 

上图是取出一个 5 x 5 的区块。下面的计算以 7 x 7 的区块为例。

接着,需要有一些现成的边缘模式,比如垂直、直角、圆、锐角等等。

 

上图右边是一个圆角模式,左边是它对应的 7 x 7 灰度矩阵。可以看到,圆角所在的边缘灰度值比较高,其他地方都是0。

现在,就可以进行边缘识别了。下面是一张卡通老鼠的图片。

 

取出左上角的区块。

 

取样矩阵与模式矩阵对应位置的值相乘,进行累加,得到6600。这个值相当大,它说明什么呢?

 

取样矩阵移到老鼠头部,与模式矩阵相乘,得到的值是0。

乘积越大就说明越匹配,可以断定区块里的图像形状是圆角。通常会预置几十种模式,每个区块计算出最匹配的模式,然后再对整张图进行判断。

(完)

© 著作权归作者所有

共有 人打赏支持
不最醉不龟归
粉丝 11
博文 262
码字总数 435067
作品 0
深圳
程序员
Ian Goodfellow最新论文:是猫还是狗?不光神经网络识别不了,你也能被忽悠

大数据文摘作品 作者:小鱼、龙牧雪 上面这张图里,是猫还是狗?再好好想想,你能肯定吗? 根据胡子、鼻子较短判断,左边的似乎是猫。但是再看看右边,这明显是只狼狗吧(诡异的戴着蝴蝶结的...

bkmk01mz3w ⋅ 02/24 ⋅ 0

学界 | Ian Goodfellow最新论文:是猫还是狗?不光神经网络识别不了,你也能被忽悠

大数据文摘作品 作者:小鱼、龙牧雪 上面这张图里,是猫还是狗?再好好想想,你能肯定吗? 根据胡子、鼻子较短判断,左边的似乎是猫。但是再看看右边,这明显是只狼狗吧(诡异的戴着蝴蝶结的...

数据汪 ⋅ 02/24 ⋅ 0

深度学习--简述卷积层如何检测物体边缘原理

对计算机视觉与深度学习有所了解的同学应该知道图像卷积可以识别出物体,在神经网络的前几层,识别出物体最基础的例如垂直或是水平的边缘。在之后的隐藏层慢慢可以识别出物体的部分,直到最后...

wenqiwenqi123 ⋅ 02/03 ⋅ 0

如何识别图像边缘?

图像识别(image recognition)是现在的热门技术。 文字识别、车牌识别、人脸识别都是它的应用。但是,这些都算初级应用,现在的技术已经发展到了这样一种地步:计算机可以识别出,这是一张狗...

阮一峰 ⋅ 2016/07/22 ⋅ 0

深度学习算法实践10---卷积神经网络(CNN)原理

其实从本篇博文开始,我们才算真正进入深度学习领域。在深度学习领域,已经经过验证的成熟算法,目前主要有深度卷积网络(DNN)和递归网络(RNN),在图像识别、视频识别、语音识别领域取得了...

yt7589 ⋅ 2016/08/26 ⋅ 0

CIDetector 边缘识别

下自带了四种识别功能 接下来用对图片的矩形状边缘进行识别,效果图如下 (Demo链接文章底部已给出) 识别边缘 截取 部分代码: 初始化一个高精度的识别器 调用照相机捕获摄像头图像 还需要有...

madaoCN ⋅ 2017/11/19 ⋅ 0

手写数字识别(一)(KNN+CNN+tensorflow)

手写数字识别作为模式识别领域的一个重要问题,也有着重要的理论价值,在大数据时代的背景下,其应用领域非常之广。很多学者对手写数字识别提出了不同的算法,取得了不错的测试效果,但如今O...

wlx19970505 ⋅ 05/10 ⋅ 0

车牌识别SDK开发包智能神器OCR工具

  新闻:【交警新标配“手机神器”违法车信息可拍照录入】北京交警的“新武器”——对着违法车辆一拍,就能全盘掌握车辆和驾驶人的信息;哪里有事故发生民警只需一键导航就可快速赶到;事故...

人工智能专家刘飞 ⋅ 2017/08/24 ⋅ 0

“我爱智能”原创性博客索引

不知不觉,博客也写出了一点小体系,新的阶段已经开始,未来希望再接再厉继续补充这一体系,在成长中写博客,在博客中成长,在此先做一个小的梳理,谢谢大家的支持。 一)关于深度学习系列 ...

on2way ⋅ 2015/08/29 ⋅ 0

如何解决ABBYY中区域未正确检测问题

 ABBYY FineReader会在识别前分析页面图像并检测图片上不同类型的区域,如文本、图片、背景图片、表格和条形码区域,此分析确定识别的区域和识别顺序。在用户界面中,不同的区域类型按其边界...

ABBYY ⋅ 2016/04/06 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

js模拟栈和队列

栈和队列 栈:LIFO(先进后出)一种数据结构 队列:LILO(先进先出)一种数据结构 使用的js方法 1.push();可以接收任意数量的参数,把它们逐个推进队尾(数组末尾),并返回修改后的数组长度。 2....

LIAOJIN1 ⋅ 22分钟前 ⋅ 0

180619-Yaml文件语法及读写小结

Yaml文件小结 Yaml文件有自己独立的语法,常用作配置文件使用,相比较于xml和json而言,减少很多不必要的标签或者括号,阅读也更加清晰简单;本篇主要介绍下YAML文件的基本语法,以及如何在J...

小灰灰Blog ⋅ 30分钟前 ⋅ 0

IEC60870-5-104规约传送原因

1:周期循环2:背景扫描3:自发4:初始化5:请求6:激活7:激活确认8:停止激活9:停止激活确认10:激活结束11:远程命令引起的返送信息12:当地命令引起的返送信息13:文件传送20:响应总召...

始终初心 ⋅ 43分钟前 ⋅ 0

【图文经典版】冒泡排序

1、可视化排序过程 对{ 6, 5, 3, 1, 8, 7, 2, 4 }进行冒泡排序的可视化动态过程如下 2、代码实现    public void contextLoads() {// 冒泡排序int[] a = { 6, 5, 3, 1, 8, 7, 2, ...

pocher ⋅ 53分钟前 ⋅ 0

ORA-12537 TNS-12560 TNS-00530 ora-609解决

oracle 11g不能连接,卡住,ORA-12537 TNS-12560 TNS-00530 TNS-12502 tns-12505 ora-609 Windows Error: 54: Unknown error 解决方案。 今天折腾了一下午,为了查这个问题。。找了N多方案,...

lanybass ⋅ 今天 ⋅ 0

IDEA反向映射Mybatis

1.首先在pom文件的plugins中添加maven对mybatis-generator插件的支持 ` <!-- mybatis逆向工程 --><plugin><groupId>org.mybatis.generator</groupId><artifactId>mybatis-generator-ma......

lichengyou20 ⋅ 今天 ⋅ 0

4.10/4.11/4.12 lvm讲解 4.13 磁盘故障小案例

准备磁盘分区 fdisk /dev/sdb n 创建三个新分区,分别1G t 改变分区类型为8e 准备物理卷 pvcreate /dev/sdb1 pvcreate /dev/sdb2 pvcreate /dev/sdb3 pvdisplay/pvs 列出当前的物理卷 pvremo...

Linux_老吴 ⋅ 今天 ⋅ 0

zabbix 3.4安装

#已装好lamp环境 1.安装相关yum仓库 rpm -i http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm #tip:rpm -ql zabbix-release 看上面这个软件装了哪些东......

山月关 ⋅ 今天 ⋅ 0

Java的Excel导出工具类

首先在POM中引入需要的Jar <dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.47</version></dependency><dependency><groupId>o......

Kxvz ⋅ 今天 ⋅ 0

springboot 使用jsp

目录结构: 启动文件的Application必须在contorller文件的父级 文件路径在src/main/webapp下面 我的配置:前缀是/WEB-INF/jsp/ pom.xml需要加入tomcat-embed-jasper, 对jsp的支持的依赖 <de...

夜醒者 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部