- 博客(101)
- 收藏
- 关注
原创 mysql中列的数据类型
数据类型1.整型tinyint 1个字节smallint 2个字节mediumint 3个字节int 4个字节(最常用)bigint 8个字节2.浮点型float 4个字节double 8个字节3.字符串形式的浮点型decimal (金融计算常用)4.字符串类型char 固定大小的字符串 长度0-255bitvarchar 可变字符串 长度0-65535 bit(最常用)(存变量)tinytext 微文本 长度255字节(1字节 = 8bit)text 文本 65535比特
2021-04-01 22:58:42
118
原创 mysql中数据库的切换以及数据库的展示和表的展示
数据库的切换// 切换到名为xxx的数据库use `xxx`;数据库的展示// 展示所有存在的数据库名show databases;表的展示// 展示目前数据库下所有存在的表名show tables;
2021-04-01 22:40:49
425
原创 mysql中对数据库的创建和删除(增删)操作
数据库的增删//(如果不存在)创建名为xxx的数据库create database (if not exists) xxx;//(如果存在)删除名为xxx的数据库drop database (if exists) xxx;
2021-04-01 22:37:35
86
原创 OpenCV中的摄像头人脸检测
OpenCV中的摄像头人脸检测代码实现:import cv2import osimport numpy as npimport matplotlib.pyplot as pltimport cv2 as cvfrom PIL import Imageimport pytesseract as test#摄像头人脸检测def face_detect(img): gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 加载分类器
2021-02-20 23:29:51
295
原创 OpenCV中的视频人脸检测
OpenCV中的视频人脸检测代码实现:import cv2import osimport numpy as npimport matplotlib.pyplot as pltimport cv2 as cvfrom PIL import Imageimport pytesseract as test#视频人脸检测def video_detect(img): gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 加载分类器 f
2021-02-20 23:27:57
265
原创 OpenCV中的静态人脸检测
OpenCV中的静态人脸检测代码实现:import cv2import osimport numpy as npimport matplotlib.pyplot as pltimport cv2 as cvfrom PIL import Imageimport pytesseract as test#静态人脸检测img = cv2.imread('dilirema.png')cv2.imshow('dilirema',img)gray = cv2.cvtColor(img,cv2.
2021-02-20 23:26:19
166
原创 OpenCV中的验证码识别
OpenCV中的验证码识别ocr环境搭建没有说明,如读者有兴趣可以单独出一章。代码实现:import cv2import osimport numpy as npimport matplotlib.pyplot as pltimport cv2 as cvfrom PIL import Imageimport pytesseract as tess#验证码识别 img = cv2.imread('yzm4.png')# x,y = img.shape[:2]# img = cv2
2021-02-20 23:24:26
852
1
原创 OpenCV中的开闭运算
OpenCV中的开闭运算代码实现:import cv2import numpy as np#开闭运算#1.开运算:先腐蚀后膨胀#一些很小的连通区域可能在腐蚀过后就没了,因此,可以去除孤立区域。较大的连通区域的边缘会被核给平滑。#删除小的干扰块,包括线形干扰img = cv2.imread('openandclose.png')img = cv2.medianBlur(img,5)cv2.imshow('source',img)gray = cv2.cvtColor(img,cv2.CO
2021-02-20 14:24:06
877
3
原创 OpenCV中的腐蚀和膨胀
OpenCV中的腐蚀和膨胀代码实现:import cv2import numpy as np#腐蚀和膨胀#腐蚀的作用就是让暗的区域变大,而膨胀的作用就是让亮的区域变大img = cv2.imread('measure.png')img = cv2.medianBlur(img,5)cv2.imshow('source',img)gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)ret,binary = cv2.threshold(gray,0,255,
2021-02-20 12:42:32
436
原创 OpenCV中的轮廓分析
OpenCV中的轮廓分析代码实现:import cv2import numpy as np#轮廓分析(以边数划分)img = cv2.imread('polydp.png')cv2.imshow('shape',img)gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)ret,binary = cv2.threshold(gray,0,255,cv2.THRESH_BINARY|cv2.THRESH_OTSU)contours,heriachy = cv
2021-02-19 21:51:16
258
原创 OpenCV中的图像测量
OpenCV中的图像测量代码实现:import cv2import numpy as np#图像测量img = cv2.imread('measure.png')cv2.imshow('circle',img)gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)ret,binary = cv2.threshold(gray,0,255,cv2.THRESH_BINARY|cv2.THRESH_OTSU)contours,heriachy = cv2.fin
2021-02-19 18:41:24
1018
原创 OpenCV中的轮廓发现和轮廓绘制
OpenCV中的轮廓发现和轮廓绘制代码实现:import cv2import numpy as np#轮廓发现和轮廓绘制img = cv2.imread('cat.jpg')cv2.imshow('img',img)img = cv2.medianBlur(img,5)cv2.imshow('blur',img)gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)ret,binary = cv2.threshold(gray,0,255,cv2.THRE
2021-02-19 15:53:26
235
原创 OpenCV中的圆检测
OpenCV中的圆检测cv2.HoughCircles(image, method, dp, minDist, circles, param1, param2, minRadius, maxRadius)image为输入图像,需要灰度图method为检测方法,常用CV_HOUGH_GRADIENTdp为检测内侧圆心的累加器图像的分辨率于输入图像之比的倒数,如dp=1,累加器和输入图像具有相同的分辨率,如果dp=2,累计器便有输入图像一半那么大的宽度和高度minDist表示两个圆之间圆心的最小距离
2021-02-18 14:14:57
2301
原创 OpenCV中的直线检测
OpenCV中的直线检测代码实现:import cv2import numpy as np#直线检测img = cv2.imread('cat.jpg')gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)edge = cv2.Canny(gray,30,90)lines = cv2.HoughLinesP(edge,1,np.pi/180,100,minLineLength=20,maxLineGap=5)for x1,y1,x2,y2 in lines
2021-02-18 13:38:00
1053
1
原创 OpenCV中的Canny算子边缘检测
OpenCV中的Canny边缘检测代码实现:import cv2import numpy as np#边缘检测(图像梯度)#一、Sobel算子img = cv2.imread('cat.jpg')cv2.imshow('img',img)#对x方向和y方向求梯度#ksize默认为3,此时采用Scharr算子,使得边缘更突出grad_x = cv2.Sobel(img,cv2.CV_32F,1,0,ksize=3)grad_y = cv2.Sobel(img,cv2.CV_32F,0,1
2021-02-16 00:32:10
399
原创 OpenCV中的laplacian算子边缘检测
OpenCV中的laplacian算子边缘检测代码实现:#二、Laplacian算子#1.自带laplacian的apicv2.imshow('img',img)laplacian = cv2.Laplacian(img,cv2.CV_32F,ksize=3) #ksize默认为1laplacian = cv2.convertScaleAbs(laplacian)cv2.imshow('laplacian1',laplacian)cv2.waitKey()#2.自定义拉普拉斯卷积核ker
2021-02-15 16:13:34
343
原创 OpenCV中的sobel算子边缘检测
OpenCV中的sobel算子边缘检测代码实现:#边缘检测(图像梯度)#一、Sobel算子img = cv2.imread('cat.jpg')cv2.imshow('img',img)#对x方向和y方向求梯度#ksize默认为3,此时采用Scharr算子,使得边缘更突出grad_x = cv2.Sobel(img,cv2.CV_32F,1,0,3,ksize=3)grad_y = cv2.Sobel(img,cv2.CV_32F,0,1,3,ksize=3)gradx = cv2.co
2021-02-15 16:11:43
338
原创 OpenCV中的直方图反向映射
OpenCV中的直方图反向映射代码实现:#直方图反向映射(在hsv色彩空间进行)#1.创建二维直方图def createhist2d(img): hsv = cv2.cvtColor(img,cv2.COLOR_BGR2HSV) hist = cv2.calcHist([img],[0,1],None,[100,256],[0,180,0,256]) #cv2的粗暴显示 cv2.imshow('hist2d',hist) #cv2.waitKey() #用pl
2021-02-15 13:45:53
346
原创 OpenCV中的直方图比较
OpenCV中的直方图比较用于近似相似度的方式:比较方式(method)1.相关性比较 (method=cv.HISTCMP_CORREL) 值越大,相关度越高,最大值为1,最小值为02.卡方比较(method=cv.HISTCMP_CHISQR )值越小,相关度越高,最大值无上界,最小值03.巴氏距离比较(method=cv.HISTCMP_BHATTACHARYYA) 值越小,相关度越高,最大值为1,最小值为0代码实现:#直方图比较(比较图像相似度)#1.创建直方图def create
2021-02-15 13:43:07
416
原创 OpenCV中的直方图均衡化
直方图均衡化 (使得图像对比度更高,更清晰)所谓对比度提高,就是黑的地方更黑,白的地方更白代码实现:#直方图均衡化 (使得图像对比度更高,更清晰)#所谓对比度提高,就是黑的地方更黑,白的地方更白#1.直接使用api进行均衡化img = cv2.imread('cat.jpg')#灰度化img = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)cv2.imshow('img',img)#该方法必须是单通道图gray1 = cv2.equalizeHist(img
2021-02-15 13:32:57
431
原创 matplotlib.pyplot中用直方图分别统计图像各个像素三个颜色通道数值数量的分布
matplotlib.pyplot中用直方图分别统计图像各个像素三个颜色通道数值数量的分布代码实现:#用直方图分别统计图像各个像素三个颜色通道数值数量的分布img = cv2.imread('tong.jpg')cv2.imshow('img',img)color = ('blue','green','red')#enumerate函数第一个返回索引index,第二个返回元素elementfor i,color in enumerate(color): #参数说明: #一、im
2021-02-15 13:28:20
1023
原创 matplotlib.pyplot中用直方图统计图像各个像素所有颜色通道数值数量的分布
matplotlib.pyplot中用直方图统计图像各个像素所有颜色通道数值数量的分布代码实现:import cv2import matplotlib.pyplot as pltimport numpy as np#直方图的顶点区域就是图像的特征区域#用直方图统计图像各个像素所有颜色通道数值数量的分布img = cv2.imread('cat.jpg')cv2.imshow('img',img)#hist() 第一个参数中的ravel将numpy数组扁平化为一位数组plt.hist(
2021-02-15 13:25:15
735
原创 OpenCV中边缘保留滤波(EPF)
OpenCV中边缘保留滤波(EPF)边缘保留滤波分为高斯双边滤波和均值迁移滤波(有多种叫法)主要是理解参数作用。边缘保留滤波是相机滤镜的基本原理。代码实现:import cv2#边缘保留滤波(EPF)img = cv2.imread('cat.jpg')cv2.imshow('cat',img)#1.高斯双边滤波#第二个参数为过滤时像素领域的直径,设为0则由后面两个参数算出即可#第三个参数为颜色标准差#第四个参数为空间标准差#第三第四个参数构成高斯分布image1 = cv2.b
2021-02-07 14:31:38
460
原创 OpenCV中图像通道的逻辑运算(与或非)
OpenCV中图像通道的逻辑运算(与或非)代码实现:import cv2#图像通道的逻辑运算(与或非)img = cv2.imread('cat.jpg')image = cv2.imread('cat.jpg')_and = cv2.bitwise_and(img,image) #与_or = cv2.bitwise_or(img,image) #或_not = cv2.bitwise_not(img) #非(取反)_xor = cv2.bitwise_xor(img,image) #异
2021-02-06 20:33:51
743
原创 OpenCV中高斯噪音的生成和高斯滤波的使用
OpenCV中高斯噪音的生成和高斯滤波的使用关键是高斯滤波函数的参数意义。高斯滤波的数学理论基础是二维正态分布函数(又称高斯函数,所以得名)代码实现:#高斯噪音的生成和高斯滤波的使用img = cv2.imread('cat.jpg')cv2.imshow('img',img)h,w,ch = img.shapedef clamp(num): #对随机数进行操作 if num>255: return 255 elif num<0:
2021-02-06 20:25:36
745
1
原创 OpenCV中基于Python的图像滤波
基于Python的图像滤波(或称图像模糊)1.均值滤波2.中值滤波3.自定义滤波1.均值滤波主要优点:算法简单,计算速度快。缺点:降低噪声的同时使图像产生模糊,特别在边缘和细节处。而且邻域越大,在去噪能力增强的同时模糊程度越严重。2.中值滤波优点:对脉冲干扰及椒盐噪声的抑制效果好,在抑制随机噪声的同时能有效保护边缘少受模糊。缺点:对点、线等细节较多的图像却不太合适。3.自定义滤波可自定义卷积核,针对具体问题作出选择代码实现:import cv2import numpy as np#图
2021-02-06 15:11:48
513
1
原创 OpenCV中floodfill的使用(洪水填充)(两种填充方式)
OpenCV中floodfill的使用(洪水填充)关键是理解参数的意义和作用,具体以于代码体现,高低值用于判定是否填充代码实现:import cv2#泛洪填充的使用img = cv2.imread('cat.jpg')cv2.imshow('img',img)mask = np.zeros([img.shape[0]+2,img.shape[1]+2],np.uint8) #+2是使用要求#floodfill的参数:1.操作图像 2.掩膜 3.起始像素点 4.填充颜色 5.填充颜色的低值 6
2021-02-06 13:58:40
5619
原创 OpenCV中图像通道的均值和方差
求图像通道的均值和方差meanstddev方法,返回两个参数,第一个为均值,第二个为方差代码实现:import cv2import numpy#求图像通道的均值和方差img = cv2.imread('cat.jpg')m,dev = cv2.meanStdDev(img)print(m)print(dev)...
2021-02-05 14:41:02
1246
原创 OpenCV中图像的加减乘除
图像的加减乘除代码实现:import cv2import numpy#图像的加减乘除img = cv2.imread('cat.jpg')image = cv2.imread('cat.jpg')add = cv2.add(img,image)print(add.shape)subtract = cv2.subtract(img,image)print(subtract.shape)divide = cv2.divide(img,image)print(divide.shape)m
2021-02-05 14:35:13
434
原创 OpenCV汇总关于图片颜色通道的分离与合并操作
关于图片颜色通道的分离与合并操作spilt函数为通道分离,merge为通道合并,具体用法如下:代码实现:#颜色通道的分离和合并,split和mergeimg = cv2.imread('cat.jpg')b,g,r = cv2.split(img) #通道分离cv2.imshow('cat',img)cv2.imshow('blue',b)cv2.imshow('green',g)cv2.imshow('red',r)image = cv2.merge([b,g,r]) #通道合并im
2021-02-05 13:33:18
354
原创 numpy库中reshape的基本使用
numpy库中reshape的基本使用reshape用于numpy数组的重构,主要用法如下:代码实现:import numpy as np#reshape的基本应用array = np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]])print("原数组",array)print("m,n",array.reshape(1,16)) #当两个参数都为正数(m,n)时为m行n列print("m,-1",array.reshape(
2021-02-04 22:36:57
516
原创 OpenCV中程序块运行时间的较精确测算(较time方法更精确的测算)
OpenCV中程序块运行时间的较精确测算(较time方法更精确的测算)getTickCount():用于返回从操作系统气筒到当前所经的计时周期数。getTcikFrequency():用于返回CPU的频率。所以(t2-t1) / getTcikFrequency():(当前次数-开始计时次数)/每秒重复次数=从开始到当前所用时间(单位为s,所以下方程序需要用到ms需要进行运算才能得到)代码实现:import cv2#计算代码的计算时间t1 = cv2.getTickCount()print
2021-02-04 21:46:57
292
原创 numpy数组指定数值的初始化(上一文章的补充知识)
numpy数组指定数值的初始化代码实现:import cv2import osimport numpy as np#指定数值初始化array = np.zeros([2,2],np.uint64)array.fill(8)print(array)
2021-02-04 21:32:04
2554
1
原创 关于numpy数组初始化图像和对图像通道的简易操作
**关于numpy数组初始化图像和对图像通道的简易操作主要函数:numpy.zeros()函数用于初始化数组,第一个参数为数组大小(必要参数),第二个参数为数据类型(可选参数)。numpy.ones()函数返回给定形状和数据类型的新数组,其中元素的值设置为1。此函数与numpy zeros()函数非常相似,用法也类似,区别在于zeros初始化赋值为0,ones赋值为1。**import cv2import osimport numpy as np# 关于numpy数组初始化图像和对图像通道的
2021-02-04 21:20:30
936
原创 Python面向对象基础语法
Python面向对象基础语法如果学习过Java等面向对象编程的话会更容易学习Python的面向对象语法,因为Python的面向对象语法是在它们的基础上简化或者略微修改的。1、类中的方法的第一个形参是额外形参,不需要传入参数,一般默认命名为self,self代表类的实例代码实例:class Test: def prt(self): print(self) print(self.__class__)t = Test()t.prt()运行结果:2、构造
2021-02-03 22:49:51
297
原创 Python中ASCII码的获取
Python中阿克斯码的获取ord函数可以获取字符的阿克斯码,用法如下:代码实现:#ord(‘字符’)可以返回该字符的阿克斯码print(ord('a'))运行结果:
2021-02-03 20:21:21
15112
原创 基于Python的openCV笔记(1):numpy数组的基础使用
基于Python的openCV笔记(1):numpy数组的基础使用numpy数组的简易使用,若要直接使用原码需先将其他代码块注释(否则可能引起变量冲突),各个代码块以注释名称标识。#-*- coding = utf-8 -*-#@Time : 2021/1/31 12:25#@Author : 夏帆#@File : cv.py#@Software : PyCharmimport cv2import numpyimport osimport numpy as npimport matp
2021-02-03 17:45:47
315
原创 基于python的简易爬虫的构建(以爬取豆瓣电影信息为例)
一、必用库的导入:from bs4 import BeautifulSoup #网页解析,获取数据import re #正则表达式,进行文字匹配import urllib #指定url,获取网页数据import xlwt #进行excel操作,将数据存在excel文件中import urllib.request #对网页进行请求操作二、功能实现的步骤划分1、网页的爬取2、数据的解析3、数据的保存数据的解析应该在爬取阶段同步进行,实现边爬取边解析。网页爬取的需要进行一定伪装,有些网站会
2021-02-01 12:40:05
831
1
原创 关于python无法安装第三方库的问题
说实话,我刚开始用pycharm下载第三方库或者直接用cmd下载第三方库的时候是相当痛苦的,会出各种各样的错误,但最终还是得以解决了,希望有相同问题的码友可以得到帮助:问题:无论怎么换python版本在pycharm内都无法安装第三方库,且使用cmd直接进行pip install也无法顺利运行解决方法:可以尝试以管理员权限打开cmd,提高权限后可能可以做到原来不可以的操作(不一定可以解决问题,但我是这么解决的)...
2020-12-08 16:16:58
845
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅