自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)
  • 资源 (3)
  • 收藏
  • 关注

原创 关于virtualbox共享文件

一、首先选在需要共享的文件夹二、在虚拟机terminal里输入sudo gedit /etc/fstab进行文件挂在,在编辑器任意一行更改(win共享文件夹名称) /home/(虚拟机下路径)vboxsf rw,gid=100,uid=1000,auto 0 0三、挂在成功...

2021-06-04 11:29:29 99

原创 python max(a,key = lambda a:a[1]) max的简洁用法

 max(x.items(),key = lambda a:a[1])    将x.items()字典面最大的值赋值给a[1]并返回给haha3

2019-01-29 12:16:16 2015 1

原创 python _**、__**区别

  (1)_xxx      "单下划线 " 开始的成员变量叫做保护变量,意思是只有类实例和子类实例能访问到这些变量,需通过类提供的接口进行访问;不能用'from module import *'导入  (2)__xxx    类中的私有变量/方法名 (Python的函数也是对象,所以成员方法称为成员变量也行得通。)," 双下划线 " 开始的是私有成员,意思是只有类对象自己能访问,连子类对象也...

2019-01-23 15:08:03 249

原创 OPENCV K邻近

原理kNN可以说是最简单的监督学习分类器了。想法也很简单,就是找出测试数据在特征空间中的最近邻居。我们将使用下面的图片介绍上图中的对象可以分成两组,蓝色方块和红色三角。每一组也可以称为一个类。我们可以把所有的这些对象看成是一个城镇中房子,而所有的房子分属于蓝色和红色家族,而这个城镇就是所谓的特征空间。(你可以把一个特征空间看成是所有点的投影所在的空间。例如在一个 2D 的坐标空间中,每...

2018-11-29 19:30:31 189

原创 视觉分析createBackgroundSubtractorKNN去背景

在很多基础应用中背景检出都是一个非常重要的步骤。例如顾客统计,使用一个静态摄像头来记录进入和离开房间的人数,或者是交通摄像头,需要提取交通工具的信息等。在所有的这些例子中,首先要将人或车单独提取出来。技术上来说,我们需要从静止的背景中提取移动的前景。如果你有一张背景(仅有背景不含前景)图像,比如没有顾客的房间,没有交通工具的道路等,那就好办了。我们只需要在新的图像中减去背景就可以得到前景对象了。但...

2018-11-27 19:11:06 8843

原创 视频分析稠密光流

Lucas-Kanade 法是计算一些特征点的光流(我们上面的例子使用的Shi-Tomasi 算法检测到的角点)。OpenCV 还提供了一种计算稠密光流的方法。它会图像中的所有点的光流。这是基于 Gunner_Farneback 的算法(2003 年)。下面的例子就是使用上面的算法计算稠密光流。结果是一个带有光流向量(u,v)的双通道数组。通过计算我们能得到光流的大小和方向。我们使用颜色对结果进行...

2018-11-27 18:55:55 1238 2

原创 摄像头Lucas-Kanade法分析光流

 现在我们要使用第二条假设,邻域内的所有点都有相似的运动。LucasKanade 法就是利用一个 3x3 邻域中的 9 个点具有相同运动的这一点。这样我们就可以找到这 9 个点的光流方程,用它们组成一个具有两个未知数 9 个等式的方程组,这是一个约束条件过多的方程组。一个好的解决方法就是使用最小二乘拟合。下面就是求解结果:(有没有发现上边的逆矩阵与 Harris 角点检测器非常相似,这说明角...

2018-11-26 10:44:03 467

原创 视频跟踪 cv2.CamShift跟踪有问题

 这个算法首先要使用 meanshift,meanshift 找到(并覆盖)目标之后,再去调整窗口的大小,s = 2x√M00256 。它还会计算目标对象的最佳外接椭圆的角度,并以此调节窗口角度。然后使用更新后的窗口大小和角度来在原来的位置继续进行 meanshift。重复这个过程知道达到需要的精import cv2import numpy as npfrom matplotlib im...

2018-11-22 19:46:19 540

原创 视频分析Meanshift动态物体识别

eanshift 算法的基本原理是和很简单的。假设我们有一堆点(比如直方图反向投影得到的点),和一个小的圆形窗口,我们要完成的任务就是将这个窗口移动到最大灰度密度处(或者是点最多的地方)。如下图所示:初始窗口是蓝色的“C1”,它的圆心为蓝色方框“C1_o”,而窗口中所有点质心却是“C1_r”(小的蓝色圆圈),很明显圆心和点的质心没有重合。所以移动圆心 C1_o 到质心 C1_r,这样我们就...

2018-11-22 11:43:09 718

原创 opencv ORB两张图片蛮力匹配及官方例子错误,img3 = cv.drawMatches(img1,kp1,img2,kp2,matches[:10], flags=2)

踩坑opencv3.4官方例子量图片匹配img3 = cv.drawMatches(img1,kp1,img2,kp2,matches[:10], flags=2), 第六个函数outimg官方没有,很多书也是复制粘贴并没有实际操作会报错TypeError: Required argument 'outImg' (pos 6) not found亲测成功img2 = cv2.drawMa...

2018-11-19 10:00:50 1348

原创 opencv蛋疼的3.0和3.4 orb角点检测

版本区别3.0orb = cv2.ORB()kp = orb.detect(img,None)如果再3.4运行就会出现TypeError: Incorrect type of self (must be 'Feature2D' or its derivative)opencv3.4函数有所变化orb = cv2.ORB_create()kp = orb.detect(img...

2018-11-18 16:21:45 990

原创 fast检测器 (编译不过kp = fast.detect(img , None)类型不对先记录下来以后查看源码)

import cv2import numpy as npfrom matplotlib import pyplot as pltimg = cv2.imread('left08.jpg',0)cv2.imshow("contours", img)fast = cv2.FastFeatureDetector()print(type(fast))kp = fast.detect(...

2018-11-17 22:44:46 876

原创 SIFT算法

SIFT具有旋转不变特性,即使图片发生了旋转,我们也能找到同样的角点。很明显即使图像发生旋转之后角点还是角点。那如果我们对图像进行缩放呢?角点可能就不再是角点了。以下图为例,在一副小图中使用一个小的窗口可以检测到一个角点,但是如果图像被放大,再使用同样的窗口就检测不到角点了尺度空间极值检测从上图我们可以很明显的看出来在不同的尺度空间不能使用相同的窗口检测极值点。对小的角点要用小的窗口,...

2018-11-15 18:02:23 200

原创 Shi-Tomasi 角点检测 & 适合于跟踪的图像特 征

 Harris 角点检测的打分公式为:R = λ1λ2 − k (λ1 + λ2),但 Shi-Tomasi 使用的打分函数为:R = min (λ1, λ2),如果打分超过阈值,我们就认为它是一个角点。我们可以把它绘制到 λ1 ~λ2 空间中,就会得到下图:从这幅图中,我们可以看出来只有当 λ1 和 λ2 都大于最小值时,才被认为是角点(绿色区域)。  import cv2 ...

2018-11-12 18:08:33 283

原创 第十九天识别二维码

import cv2 as cvimport numpy as npfrom PIL import Imageimport pytesseract as tessdef recognize_text(src): gray = cv.cvtColor(src, cv.COLOR_BGR2GRAY) ret, binary = cv.threshold(gray, 0, 2...

2018-11-05 17:18:34 178

原创 第十八天调用摄像头人脸识别(有误判)

import cv2 as cvimport numpy as npdef face_detect_demo(image): gray = cv.cvtColor(image, cv.COLOR_BGR2GRAY) ##叠加分类器 face_detector = cv.CascadeClassifier("M:/opencv3&python视频 淘宝一枝...

2018-11-05 17:18:02 379

原创 第十九天分水岭及归一化标准化

  pyrMeanShiftFiltering。这个函数严格来说并不是图像的分割,而是图像在色彩层面的平滑滤波,它可以中和色彩分布相近的颜色,平滑色彩细节,侵蚀掉面积较小的颜色区域  归一化(normalization):   ,如果对输出结果范围有要求,用归一化 标准化(standardization): 如果数据存在异常值和较多噪音,用标准化,可以间接通过中心化避免异常值和极端值...

2018-11-04 20:58:55 158

原创 第十九天黑帽顶帽

 numpy array 和 python list 有什么区别?标准Python的列表(list)中,元素本质是对象。如:L = [1, 2, 3],需要3个指针和三个整数对象,对于数值运算比较浪费内存和CPU。因此,Numpy提供了ndarray(N-dimensional array object)对象:存储单一数据类型的多维数组。   import cv2 as ...

2018-11-04 20:02:08 264

原创 第十九天开闭操作 提取水平、垂直线

开闭操作都是基于先腐蚀再膨胀进行运算的, kernel = cv.getStructuringElement(cv.MORPH_ELLIPSE, (**, **)) 腐蚀时候将x轴设为1个像素点,即去掉水平方向的线。竖直方向同理. 总结开操作可以删除小的干扰块闭操作是先膨胀再腐蚀,参见下图,黑色小于白色区域的都会被取消import cv2 as cvimport numpy as n...

2018-11-03 22:56:20 307

原创 第十八天opencv膨胀腐蚀

膨胀就是相邻三个像素点||       腐蚀就是相邻三个像素点&&膨胀作用:将多余相素放大。去除  (增大白色面积)腐蚀作用:将多余相素去掉再缩小。恢复原图.   (增大相邻黑色面积)import cv2 as cvimport numpy as npdef erode_demo(image): print(image.shape) gray =...

2018-11-02 20:22:15 206

原创 第十七天 圆形矩形多边形的识别

import cv2 as cvimport numpy as npdef measure_object(image): gray = cv.cvtColor(image, cv.COLOR_BGR2GRAY) ret, binary = cv.threshold(gray, 0, 255, cv.THRESH_BINARY | cv.THRESH_OTSU) pr...

2018-11-01 21:32:30 487

原创 第十七天边缘检测

获取轮廓的多边形拟合结果   approxPlyDp   -coutour     -epsilon 越小越折线越逼近真是形状   -colse  是否为闭合区域  import cv2 as cvimport numpy as npdef edge_demo(image): blurred = cv.GaussianBlur(image, (3, 3), 0) ...

2018-11-01 20:41:46 98

原创 第十六天霍夫圆检测

void HoughCircles(InputArray image,OutputArray circles, int method, double dp, double minDist, double param1=100,double param2=100, int minRadius=0, int maxRadius=0 )第一个参数,InputArray类型的image,输入图像,即...

2018-10-31 20:09:50 230 1

原创 第十五天霍夫直线检测

hough空间(离散极坐标)的表示原因:图像中直线的表示,由斜率和截距表示,而极坐标中用(r, theta)表示.r = cos(theta)*x + sin(theta)*y##测直线cv.HoughLines算法不够完善需要代码补充 ,cv.HoughLinesP则算法补充import cv2 as cvimport numpy as npdef line_detect...

2018-10-31 11:03:37 121

原创 十四天canny边缘检测

1高斯滤波 2.使用偏导数 3.求出梯度值其中得出梯度是差异较大域的切线port cv2 as cvdef edge_demo(image): blurred = cv.GaussianBlur(image, (3, 3), 0) gray = cv.cvtColor(blurred, cv.COLOR_BGR2GRAY) xgrad...

2018-10-31 08:54:11 114 1

原创 第十三天 高斯金字塔拉普拉斯金字塔

import cv2 as cvimport numpy as npdef pyramid_demo(image): ##高斯金字塔 levels =3 temp = image.copy() pyramid_images = [] for i in range(levels): dst = cv.pyrDown(temp) ...

2018-10-29 19:57:32 151

原创 第十二天 分块处理二值法及去雪花

import cv2 as cvimport numpy as npdef big_image_binary(image): print (image.shape) cw =56 ch=56 h,w = image.shape[:2] gray = cv.cvtColor(image, cv.COLOR_BGR2GRAY) for row in...

2018-10-29 19:21:22 123

原创 第十一天 二值化

注:二值化 cv.threshold类型参考地址https://blog.csdn.net/u012566751/article/details/77046445  import cv2 as cvimport numpy as npdef custom_threshold(image): gray = cv.cvtColor(image, cv.COLOR_BGR...

2018-10-29 11:14:15 86

原创 第十天模板匹配,卷积基本概念

卷积具体介绍这篇文章是我看的最好的:https://blog.csdn.net/qq_39521554/article/details/79083864                    CV_TM_SQDIFF 平方差匹配法:该方法采用平方差来进行匹配;最好的匹配值为0;匹配越差,匹配值越大。      CV_TM_CCORR 相关匹配法:该方法采用乘法操作;数值越大表明匹配程度越...

2018-10-26 17:51:08 878

原创 第九天 直方图反投影和2d直方图

import cv2 as cvimport numpy as npfrom matplotlib import pyplot as pltdef back_projection_demo(): sample = cv.imread("C:/Users/weiqiangwen/Desktop/sest/data/pic4.png") target = cv.imread(...

2018-10-26 09:18:58 105

原创 第八天直方图巴氏距离,相关性,卡方

直方图均值化,opencv中必须是灰度图片才能操作。import cv2 as cvimport numpy as npdef equalHist_demo(image): gray = cv.cvtColor(image, cv.COLOR_BGR2GRAY) dst = cv.equalizeHist(gray) cv.imshow("equalHis...

2018-10-25 20:15:09 2123

原创 第七天 opencv 2d直方图和直方图反投影

import cv2 as cvimport numpy as npfrom matplotlib import pyplot as pltdef back_projection_demo(): sample = cv.imread("C:/Users/weiqiangwen/Desktop/sest/data/pic4.png") target = cv.imread(...

2018-10-25 15:11:28 341

原创 第六天双边滤波和均值漂移

均值漂移迭代空间构建:以输入图像上src上任一点P0为圆心,建立物理空间上半径为sp,色彩空间上半径为sr的球形空间,物理空间上坐标2个—x、y,色彩空间上坐标3个—R、G、B(或HSV),构成一个5维的空间球体。其中物理空间的范围x和y是图像的长和宽,色彩空间的范围R、G、B分别是0~255。双边滤波原理上式中的单位化分部综合了两种高斯权重于一起而得到,其中的c与s计算可以详细...

2018-10-25 10:49:25 437

原创 第五天opecv高斯模糊

一张图了解高斯模糊import cv2 as cvimport numpy as npdef clamp(pv): if pv > 255: return 255 if pv < 0: return 0 else: return pvdef gaussian_noise(image): h, ...

2018-10-24 17:34:54 132

原创 第四天 opencv 图像变换和空间图像滤波

解释图像变换和空间滤波区别即cv.medianBlur和cv.filter2D在空间域的操作主要可以分为两类:第一类是所谓的“图像强度变换”(Intensity Transform),另一类是所谓的“空间域图像滤波”(Spatial Filtering)。这两者的区别主要是处理方法的不同。前者对单个像素点进行操作,例如通过阈值函数实现图形的二值化,实现灰度平均等。而后者建立在邻域(neighb...

2018-10-24 15:46:21 305

原创 第四天ROI图片切割合并和泛洪填充

import cv2 as cvimport numpy as np泛洪填充算法(Flood Fill Algorithm)泛洪填充算法又称洪水填充算法是在很多图形绘制软件中常用的填充算法,最熟悉不过就是windows paint的油漆桶功能。算法的原理很简单,就是从一个点开始附近像素点,填充成新的颜色,直到封闭区域内的所有像素点都被填充新颜色为止。泛红填充实现最常见有四邻域...

2018-10-24 11:38:18 164

原创 第三条python-opecv图片混合及亮度调节

import cv2 as cvimport numpy as npdef add_demo(m1,m2): dst=cv.add(m1,m2) #量图片加在一起 cv.imshow("add_demo",dst)def subtract_demo(m1,m2): dst=cv.subtract(m1,m2) #量图片减...

2018-10-24 10:40:00 366

原创 opencv第二天视频文件打开及色彩分离合并

import cv2 as cvimport numpy as npdef extrace_object_demo(): capture = cv.VideoCapture("C:/Users/weiqiangwen/Desktop/sest/QQ视频_2703CD4E8BBCC4F5B071A7A61FA35AB7.mp4") #在读取时有可能出现ret=false用播放器...

2018-10-23 20:15:15 265

原创 opencv3.0第一天读取摄像头和图片大小类型

import cv2 as cvimport numpy as npdef video_demo(): ##调用摄像头 capture = cv.VideoCapture(0) while(True): capture = cv.VideoCapture(0) while (True): ret, fram...

2018-10-22 18:00:26 1305

原创 django.core.exceptions.ImproperlyConfigured: Application labels aren't unique, duplicates: users解决方案

在创建项目是application name  里的users。原因是解释路径不对。上一张图就明白了settting.py里的users寻址路径重复改成'goods.apps.GoodsConfig'即可

2018-07-04 20:27:15 3865 2

python qt5教程

很不错的中文pyqt5教程。作者一年前更新的。耐心研究好处良多

2018-12-04

windows命令大全+shell命令大全

windows命令大全+shell命令大全,完整版windows命令手册

2018-03-14

python学习手册第四版+正则表达式表

python学习手册第四版电子版+正则表达式常用七种常用方法

2018-03-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除