文档章节

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

不最醉不龟归
 不最醉不龟归
发布于 2017/02/09 12:54
字数 627
阅读 52
收藏 2

图像识别(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。

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

(完)

本文转载自:http://www.ruanyifeng.com/blog/2016/07/edge-recognition.html

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

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

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

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

数据汪
02/24
0
0
深度学习--简述卷积层如何检测物体边缘原理

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

wenqiwenqi123
02/03
0
0
一文带你入门图像分析,成为AI专家不是梦!

欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯云AI中心发表于云+社区专栏 腾讯云高级研究员讲述,从成像到图像分析如何入门 文︱冀永楠 “AI来了”邀请到我们腾讯云...

腾讯云加社区
08/23
0
0
如何识别图像边缘?

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

阮一峰
2016/07/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Redis常用命令

keys 我把这个命令放在第一位,是因为笔者曾经做过的项目,以及一些朋友的项目,都因为使用keys这个命令,导致出现性能毛刺。这个命令的时间复杂度是O(N),而且redis又是单线程执行,在执行k...

谢思华
29分钟前
2
0
关于css宽度分离

所谓宽度分离就是width 属性不与影响宽度的 padding/border(有时候包括 margin)属性共存 例如: .box{width:200px;padding:20px;border:1px solid;} 为何要做宽度分离 一说到分离就是为了好...

莫西摩西
40分钟前
1
0
Linux常用命令

###############常用命令说明############################## cat /proc/version 显示内核的版本 mv dir1 new_dir 重命名/移动 一个目录 rm -rf a.txt b.txt c.txt 删除多个文件 chmod 777 ......

lyle_luo
47分钟前
2
0
全国地区代码科普

全国地区代码表 天津市 地区代码 地区名称 1100 天津市 辽宁省 地区代码 地区名称 2210 沈阳市 2210 法库县 2210 康平县 2210 辽中县 2210 新民市 2220 大连市 2222 普兰店市 2223 庄河市 22...

恋码之子
47分钟前
1
0
DbForge Schema Compare for MySQL入门教程:生成比较报告

【dbForge Schema Compare for MySQL下载】 当架构比较完成后,您可以生成比较报告以保留架构更改的记录。 1. 在“Comparison” 菜单中,单击“Generate Comparison Report” 。将打开“Gen...

Miss_Hello_World
48分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部