
图像处理算法
dz4543
这个作者很懒,什么都没留下…
展开
-
Python基于opencv的blob算法实现
最近也是想试试blob算法检测个东西。发现Python方面讲这个的真不多,几乎都是说的算法原理,这里给出Python3代码,与 效果图。copy了别人的成果,代码什么的也是,原链接是:点击打开链接。这个网站是learnopencv,全英文的,无障碍的可以看看,我是为了自己学习整理了一下,如有错漏,欢迎指正。1.什么是Blob? 像素是图像中的一组连接像素,它们共享一些公共...翻译 2018-04-11 18:07:24 · 11018 阅读 · 14 评论 -
vs2017 cmake opencv教程心得 以及在VS2017与QT5上的配置
这几天都在编译opencv,用cmake编译没报错,医用vs编译的时候就出问题,找不到"opencv_world.dll"文件,挺糟心的,现在把自己的教程写下来。环境:vs2017opencv3.4contribcmake3.101 下载所需的各种文件vs什么的默认安装好了。open官网:opencvcontrib:contrib链接cmake:cmeke当然你可以选择...原创 2019-04-05 16:20:52 · 3064 阅读 · 2 评论 -
逐帧读取视频保存为图片(python+opencv)
""" 从视频读取帧保存为图片"""import cv2cap = cv2.VideoCapture("003.mp4")#名为'003.mp4'的文件c=0 #文件名从0开始while(1): # get a frame ret, frame = cap.read() # show a frame ...原创 2019-01-17 21:59:30 · 11317 阅读 · 0 评论 -
Python时频变换(傅里叶变换)
参考博客: https://blog.youkuaiyun.com/on2way/article/details/46981825 https://www.cnblogs.com/ranjiewen/p/6241913.html 参考书籍: 《数字图像处理第三版》(冈萨雷斯) 《信号与系统第二版》(奥本海姆)本博客不会讲述过多的公式与证明(我不会说在博客输入公式好麻烦)。...原创 2018-09-19 22:55:45 · 5490 阅读 · 2 评论 -
转载----计算机视觉与算法测试数据集和源码站点
致敬原作者:原文博客以下是computer vision:algorithm and application计算机视觉算法与应用这本书中附录里的关于计算机视觉的一些测试数据集和源码站点,我整理了下,加了点中文注解。ComputerVision:Algorithms and ApplicationsRichard Szeliski 在本书的最好附录中,我总结了一...转载 2018-09-08 12:33:16 · 703 阅读 · 0 评论 -
OpenCV各种变换:仿射、投射、单应性矩阵等记录
本文仅仅只是记录OpenCV的几个几何变换相关函数,OpenCV3.0官方指南网址: https://docs.opencv.org/3.0-beta/modules/imgproc/doc/geometric_transformations.htmlconvertMaps() 将图像从一种类型,转换成另一种类型remap() 对图像应用通用几何变换。resize() 调...原创 2018-08-08 15:51:10 · 1170 阅读 · 0 评论 -
OpenCV最大稳定值检测(MSER)Python实现
今天是发现有这么一个东西MSER,然后搜了一下,用代码实现,在这里记录下:import cv2import matplotlib.pyplot as pltimg = cv2.imread('D:/codes/ticket.jpg')gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)mser = cv2.MSER_create(_min...原创 2018-07-12 22:05:01 · 8890 阅读 · 0 评论 -
OpenCV特征检测问题
这篇不讲原理,只讲怎么实现。 OpenCV常用的特征检测和提取算法有:Harris:该算法常用于检测角点SIFT:该算法用于检测斑点(blob)SURF:该算法用于检测斑点(blob)FAST:该算法用于检测角点BRIEF:该算法用于检测斑点(blob)ORB:该算法代表带方向的FAST算法和具有旋转不变性的BRIEF算法通过以下方法进行特征匹配:暴力(Brute-Forc...原创 2018-07-12 13:54:15 · 900 阅读 · 0 评论 -
第一章 图像预处理(2)平滑
局部预处理可以分为二种,一种是平滑,一种是梯度算子。本文主要记录平滑。 平滑的目的在于抑制噪声或者其他小的波动,这等同于在傅里叶变换域抑制高频部分。但是平滑也会模糊所有的带有重要信息的明显边缘。故而具备保持边缘作用的平滑方法得到了更多关注。常见的有基于二维离散卷积的高斯平滑、均值平滑、基于统计学习方法的中值平滑,具备保持边缘的双边滤波、导向滤波等。OpenCV提供函数cv2.filte...原创 2018-07-04 23:00:52 · 1199 阅读 · 0 评论 -
第一章 图像预处理 (1)对比度增强 (直方图)
1. 灰度直方图我的理解,灰度直方图就是统计整张图片的灰度值。比如说对于一张8位图,其灰度级数为0~255,那么灰度直方图便是统计灰度依次区0~255的个数,比如说灰度是127的像素个数,灰度是0的个数等等。下面是用Python实现的代码:定义函数def calGrayHist(image): r,c=image.shape#灰度图尺寸 #创建一个一维数组gr...原创 2018-07-03 23:16:37 · 5582 阅读 · 0 评论 -
Python OpenCV霍夫圆变换HoughCircles()
由于最近的事情一直有涉及霍夫圆变换,免得老翻书,这里记录下: 不用多说,OpenCV利用的是梯度法Python的API函数如下:cv2.HoughCircles(image,method,dp,minDist[, circles[,param1, param2[,minRadius[,maxRadius]]]]])其返回N个圆的信息储存在1×N×的ndarray。image ...原创 2018-06-14 23:27:18 · 29659 阅读 · 4 评论 -
图像形态学与图像减法的边界提取
原始图用这个吧: 内边界提取内边界提取通常可以用原图减去其腐蚀图,代码如下:import cv2import numpy as npI = cv2.imread('D:/Programs/Python/Python36/blob.jpg',0)ret,img = cv2.threshold(I,127,255,cv2.THRESH_BINARY_INV)#m,n =...原创 2018-06-22 17:44:17 · 1698 阅读 · 0 评论 -
视觉机器学习2----KNN算法
参考博客:点击打开链接 KNN理论成熟,是最简单的机器学习方法之一,可以用它来实现分类和回归,是监督学习方法之一。 KNN算法基本思想:输入没有标签即未经分类的新数据,首先提取新数据的特征并与测试集中的每一个数据特征进行比较;然后从样本中提取k个最近邻(最相似)数据特征的分类标签,统计这k个最近邻数据中出现次数最多的分类,将其作为新数据的类别。 ...原创 2018-05-07 20:09:40 · 581 阅读 · 0 评论 -
视觉机器学习1——K-means
K-means(K均值)是一种无监督学习算法,也属于聚类算法,样本集预先不知道所属类别或标签,根据样本之间的距离或者相似程度自动进行分类。在经典k-means聚类算法中,映射是通过样本和样本和个中心之间的最小平方和最小准则来建立的。求解目标函数是一个NP-hard问题,无法保证的带一个稳定的全局最优解。而经典的K-means(由Stuart Lloyd提出的)聚类算法中,采取迭代优化策略,有效求取...原创 2018-05-04 19:12:46 · 1192 阅读 · 0 评论 -
视觉机器学习2(补)——K近邻
关于使用OpenCV实现,手写体的OCR应用程序。参考OpenCV官方文档。比较坑的是一个是OpenCV版本使用接口不一样,我装的opencv3.4,查的确实3.0的指南,以为没什么差别。结果一个是数据’digits.png’,这张图是缺失,应该是装轮子时每装这个,一个是函数KNearest()变了,3.0的和3.4的不一样。另外说一句,官方使用2.x的语法,我用的3.6的编译器。后来我找...原创 2018-05-10 22:15:48 · 278 阅读 · 0 评论 -
视觉机器学习1(补)——Kmeans
OpenCV是一个开源的视觉库,里面也封装了机器学习的相关库。下面介绍用OpenCV实现Kmeans。OpenCV中使用cv.kmeans()函数进行数据聚类。-输入参数: 1. 样本:它应该是np.float32数据类型,并且每个要素应放在一个列中 2. n群(K):最后需要的群集数 3. 标准:这是迭代终止标准。当满足这个标准时,算法迭代停止。实际上,它应该是3个参数的元组...原创 2018-05-09 10:27:04 · 237 阅读 · 0 评论 -
python opencv的cv2.drawKeypoints()函数详解
我用的python3.x,opencv3.x.官方文档里介绍cv2.drawKeypoints()函数主要包含五个参数:image:也就是原始图片keypoints:从原图中获得的关键点,这也是画图时所用到的数据outputimage:输出color:颜色设置,通过修改(b,g,r)的值,更改画笔的颜色,b=蓝色,g=绿色,r=红色。flags:绘图功能的标识设置,(可能标识的值由DrawMatc...原创 2018-04-13 21:35:50 · 30360 阅读 · 2 评论 -
DLL load failed: 找不到指定模块\Failed to load the native TensorFlow runtime解决方法
安装tensorflow出错:Traceback (most recent call last):File "C:\Users\toy\AppData\Local\Programs\Python\Python35\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 18, in swig_import...原创 2019-04-11 20:53:58 · 2253 阅读 · 1 评论