
图像处理
山阴少年
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
目标检测初体验(三)破解滑动验证码
在我们日常登录或注册某个网站的时候,经常会出现滑动验证码,如下图: 本文将会讲述如何利用darknet来破解滑动验证码,我们只要找到图片中的缺口就可以了。数据的采集和标注 笔者利用爬虫在某网站爬取了约300张带缺口的滑动验证码的图片,并对这些验证码图片进行标注,即标注缺口的位置。 我们使用的标注工具为labelImg,这是图像标注方面一个非常好用的GUI工具。网上已经有很多关于安装labelImg的教程,本文不再具体介绍。我们打开labelImg,如下图: 在labelImg中我们原创 2020-05-24 20:16:08 · 601 阅读 · 0 评论 -
目标检测初体验(二)自制人脸检测功能
之前笔者在学习OpenCV的时候,曾经接触过人脸检测,那时候我们只需要一个函数就能轻松实现人脸检测。关于如何在OpenCV中实现人脸检测功能,可以参考文章:OpenCV神技——人脸检测,猫脸检测 。那时候的感觉是,CV是如此的神奇,而人脸检测正是笔者迈向CV的关键一步。 以前,笔者从没想过能自己实现人脸检测功能,直到不久前接触了目标检测,接触了darknet,脑海中就有了“自制人脸检测”这个想法。如果能够使用darknet来自己实现人脸检测功能,那该是多么酷的一件事情啊! 经过近两天的探索,笔者原创 2020-05-12 21:37:20 · 847 阅读 · 1 评论 -
目标检测初体验(一)
很久没有写CV方面的文章了,最近笔者接触了一段时间的目标检测的工具:darknet,因此希望能写篇文章记录下,同时希望自己能在目标检测有更深一步的研究。 目标检测是计算机视觉和数字图像处理的一个热门方向,广泛应用于机器人导航、智能视频监控、工业检测、航空航天等诸多领域,通过计算机视觉减少对人力资本的消耗,具有重要的现实意义。目标检测即找出图像中所有感兴趣的物体,包含物体定位和物体分类两个子任务,同时确定物体的类别和位置。图像分类的任务我们已经熟悉了,而目标检测与图片分类的不同之处在于,目标检测需要检原创 2020-05-11 22:15:18 · 456 阅读 · 0 评论 -
利用百度文字识别API识别图像中的文字
本文将会介绍如何使用百度AI开放平台中的文字识别服务来识别图片中的文字。百度AI开放平台的访问网址为:http://ai.baidu.com/,为了能够使用该平台提供的AI服务,你需要事先注册一个百度账号。创建百度AI文字识别应用 在百度AI开放平台中,登录自己的百度账号,点击**“文字识别”服务中的“通用场景文字识别”,选择“创建应用”**,填好应用名称,选择应用类型,填好应用描述,这...原创 2019-05-11 22:02:00 · 3686 阅读 · 0 评论 -
如何识别图片中的表格数据
在很多时候,我们的数据来源形式是多种多样的,有时候数据(或表格)也会呈现在图片中。那么,我们如何来获取图片中的有用数据呢?当一张图片中含有表格数据的时候,我们可以用OpenCV识别表格中的直线,然后再用OCR技术识别其中的文字。 本文仅作为如何识别图片中的表格的一个例子,希望能给读者一些启示。笔者用到的工具如下:opencvpyteressactnumpy我们用opencv来识...原创 2018-12-24 10:34:44 · 22924 阅读 · 6 评论 -
OpenCV入门之寻找图像的凸包(convex hull)
介绍 凸包(Convex Hull)是一个计算几何(图形学)中的概念,它的严格的数学定义为:在一个向量空间V中,对于给定集合X,所有包含X的凸集的交集S被称为X的凸包。 在图像处理过程中,我们常常需要寻找图像中包围某个物体的凸包。凸包跟多边形逼近很像,只不过它是包围物体最外层的一个凸集,这个凸集是所有能包围这个物体的凸集的交集。如下图所示:在上图中,绿色线条所包围的凸集即为白色图形的凸...原创 2018-09-30 10:49:38 · 3766 阅读 · 1 评论 -
利用Python测量滴水湖的水面面积
美丽的滴水湖 美丽的滴水湖坐落在上海的东南角,濒临东海,风景秀丽,安静舒适,是旅游、恋爱的绝佳去处。笔者有幸去过一回,对那儿的风土人情留下了深刻的印象,如果有机会,笔者还会多去几次! 滴水湖是个神奇的地方,神奇之处在于它的外形是一个正圆形,这源于城市规划者对临港新城的美好设想。每次路过这个美丽的湖时,笔者总会想:这个湖到底多大呢? 本文将会谈到如何如何得到滴水湖的水面面积。是手动测量?...原创 2018-09-28 11:08:39 · 1978 阅读 · 0 评论 -
使用NetworkX模块绘制深度神经网络(DNN)结构图
本文将展示如何利用Python中的NetworkX模块来绘制深度神经网络(DNN)结构图。 在文章Keras入门(一)搭建深度神经网络(DNN)解决多分类问题中,我们创建的DNN结构图如下:该DNN模型由输入层、隐藏层、输出层和softmax层组成,每一层的神经元个数分别为4,5,6,3,3。不知道聪明的读者有没有发现,这张示意图完全是由笔者自己用Python绘制出来的,因为并不存在现...原创 2018-10-12 12:58:14 · 3018 阅读 · 0 评论 -
OpenCV入门之获取验证码的单个字符(字符切割)
介绍 在我们日常上网注册账号以及制作网络爬虫时,经常会遇到奇奇怪怪的验证码,有些容易,有些连人眼都无法辨识。于是,大牛们想到了用深度学习的方法来破解验证码,对于一般的验证码往往能出奇制胜,取得不俗的识别效果。对于利用深度学习方法识别验证码,其预处理就是获取验证码中的单个字符,即字符切割。 本文将通过一个简单的验证码例子,来展示如何利用OpenCV来获取单个字符。手把手教学 我们所使用...原创 2018-09-21 18:52:03 · 4513 阅读 · 2 评论 -
OpenCV入门之获取图像的旋转角度
在我们的日常生活中,所碰到的图像往往都有一定的倾斜。那么,如何用OpenCV来获取图像的旋转角度呢? 我们以下面的图片为例,简单介绍如何用OpenCV来获取图像的旋转角度。 可以看到,该图像存在着许多噪声,且是彩色图片,因此,需要对图像做预处理。预处理 图像的预处理包括去除边缘,去除噪声(两条灰色线),滤波,二值化等,具体处理的Python代码如下:# -*- coding:...原创 2018-09-26 17:16:04 · 14092 阅读 · 6 评论 -
OpenCV入门之获取验证码的单个字符(二)
在文章 OpenCV入门之获取验证码的单个字符(字符切割)中,介绍了一类验证码的处理方法,该验证码如下:该验证码的特点是字母之间的间隔较大,很容易就能提取出其中的单个字符。接下来,笔者将会介绍如何在另一种验证码中提取单个字符的方法。 测试的验证码来源于某个账号注册的网站,如下:笔者一共收集了346张验证码。我们可以看到,这些验证码的特点是:噪声较大,有些验证码之间的字母黏连在一起,...原创 2018-09-24 16:44:15 · 880 阅读 · 0 评论 -
OpenCV神技——人脸检测,猫脸检测
简介 OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。 OpenCV的官方网址为:https://opencv.org/, 其G...原创 2018-09-18 10:54:00 · 2067 阅读 · 0 评论