![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
opencv机器视觉
尘盖天
这个作者很懒,什么都没留下…
展开
-
36_机器学习
#机器学习识别目标需要以下三点:# 样本 特征 分类器 (检验)#Haar特征+adaboost分类器《《face#Haar由一系列的模板组成#adaboost分类器有三级:最高级为强分类器 ,二级为弱分类器 ,三级node节点#hog模板+SVM...原创 2019-01-17 00:03:44 · 267 阅读 · 0 评论 -
25_#颜色映射
#颜色映射import cv2import numpy as npimg = cv2.imread('ruonan.jpg',1)Info = img.shapeheight = Info[0]width = Info[1]cv2.imshow('Img',img)dst = np.zeros((height,width,3),np.uint8)for i in range(0,...原创 2019-01-14 22:27:40 · 351 阅读 · 0 评论 -
38_图片合成视频
import cv2img = cv2.imread('dataset\\1.jpg')#cv2.imshow("j",img)Info = img.shapeheight = Info[0]width = Info[1]size = (width,height)print(size)videoWrite = cv2.VideoWriter('C:\\Users\\Administ...原创 2019-01-18 00:25:18 · 373 阅读 · 0 评论 -
37_视频至图片的分解
import cv2#load info parse imshow imwritecap = cv2.VideoCapture('C:\\Users\\Administrator\\Desktop\\TE.WMV') #获取一个视频isOpened = cap.isOpened #判断是否打开print(isOpened)fps...原创 2019-01-18 00:24:46 · 333 阅读 · 0 评论 -
15_图片的旋转变换
import cv2import numpy as npimg = cv2.imread('ruonan.jpg',1)Info = img.shapeheight = Info[0]width = Info[1]matRotate = cv2.getRotationMatrix2D((width*0.5,0.5*height),-45,0.4)  #C参数1 旋转中心的位置...原创 2019-01-11 20:31:01 · 254 阅读 · 0 评论 -
16_图像变换总结
#图像的缩放  平移    镜像    剪切#图像的仿射   :    位移   旋转  原创 2019-01-11 20:31:42 · 318 阅读 · 0 评论 -
17_图片的灰度处理
#图片的灰度处理#方法1import cv2img0 = cv2.imread('ruonan.jpg',0)img1 = cv2.imread('ruonan.jpg',1)print(img0.shape)print(img1.shape)cv2.imshow('Img0',img0)cv2.imshow('Img1',img1)cv2.waitKey(0)#方法二imp...原创 2019-01-11 20:32:22 · 467 阅读 · 0 评论 -
18_马赛克效果
import cv2img = cv2.imread('ruonan.jpg',1)Info = img.shapeheight = Info[0]width = Info[1]for m in range(100,300): for n in range(100,200):  if m%10==0 and n%10==0:  &n原创 2019-01-11 20:33:24 · 309 阅读 · 0 评论 -
19_毛玻璃效果
import cv2import numpy as npimport randomimg = cv2.imread('ruonan.jpg',1)Info = img.shapeheight = Info[0]width = Info[1]dst = np.zeros((height,width,3),np.uint8)mm = 8for i in range(mm,height...原创 2019-01-11 20:34:03 · 242 阅读 · 0 评论 -
20_图片的融合
#图片的融合#dst = scr1*α+scr2*(1-α)import cv2import numpy as npimg0 = cv2.imread('ruonan.jpg',1)img1 = cv2.imread('lcc.jpg',1)Info = img0.shapeheight = Info[0]width = Info[1]##ROIroiHeight = int(...原创 2019-01-11 20:34:51 · 225 阅读 · 0 评论 -
21_颜色反转
#灰度图片的颜色反转#0-255  ,255-当前灰度值import cv2import numpy as npimg = cv2.imread('ruonan.jpg',1)Info = img.shapeheight = Info[0]width = Info[1]dst = np.zeros((height,width,1),np.uint8)gray = cv2...原创 2019-01-11 20:36:44 · 339 阅读 · 0 评论 -
22_边缘检测
import cv2img = cv2.imread('lcc.jpg',1)Info = img.shapeheight = Info[0]width = Info[1]height = int(0.5*height)width = int(0.5*width)img = cv2.resize(img,(height,width))#cv2.imshow('img',img)#...原创 2019-01-11 20:37:52 · 268 阅读 · 0 评论 -
26_线段的绘制
#线段的绘制import cv2import numpy as np Info = (500,500,3)dst = np.zeros(Info,np.uint8)#line 绘制线段 cv2.line(dst,(100,100),(300,300),(0,0,255)) #参数1 data 参数2 起点 参数3 ...原创 2019-01-14 22:28:36 · 274 阅读 · 0 评论 -
27_圆椭圆矩形的绘制
import cv2import numpy as npInfo = (500,500,3)dst = np.zeros(Info,np.uint8)#rectangle的绘制 cv2.rectangle(dst,(100,100),(400,400),(0,255,0),3) #参数-1,表示填充,参数大于0,表示线的宽度#cicle 圆的绘制cv2.cir...原创 2019-01-14 22:29:30 · 349 阅读 · 0 评论 -
35_皮肤美白
#皮肤美白#双边滤波#高斯核 + 距离核 =核p piexl乘核pimport cv2img = cv2.imread('ruonan.jpg',1)cv2.imshow('src',img)dst = cv2.bilateralFilter(img,15,35,35)cv2.imshow('dst',dst)cv2.waitKey(0)####中值滤波源代码import ...原创 2019-01-17 00:02:37 · 439 阅读 · 0 评论 -
34_亮度增强
#亮度增强#origin+value=newimport cv2import numpy as npimg = cv2.imread('ruonan.jpg',1)cv2.imshow('src',img)Info = img.shapeheight = Info[0]width = Info[1]dst = np.zeros((height,width,3),np.uint8)...原创 2019-01-17 00:01:23 · 699 阅读 · 0 评论 -
41_Hog特征
#什么是Hog特征? 特征 :像素 运算#再模板计算的基础上另加几步,haar特征是模板计算#Hog特征计算步骤:#1、模块划分 计算梯度 方向 模板 bin投影 每个模块的hog特征#模块划分# image 》 win 》 block 》 cell (size)#win step block step cell step#win特征计算最...原创 2019-01-26 12:36:33 · 587 阅读 · 0 评论 -
40_SVM
#SVM本质是寻求一个最优的超平面,进而实现分类#SVM核 : 这里用线性line,也可以是非线性#身高 体重 训练 预测#SVM中所有的数据必须都有标签#例如男生160,56----1#SVM属于监督学习,有导师学习import cv2import numpy as npimport matplotlib.p...原创 2019-01-25 16:10:27 · 345 阅读 · 0 评论 -
39_基于Haar特征和adaboost人脸识别
#什么是Haar特征 ?特征= 像素 运算 》结果 (矩阵 数值 向量 多维)#Haar特征 白色 - 黑色#如何利用特征 区分目标 阈值判决#如何判决? 机器学习#权值1 =1 权值2 =-2整个区域权值 1+黑色权值2#haar特征 image size 100100 模板size 1010 步长step10 共需100次#模板 滑动 缩...原创 2019-01-25 16:09:13 · 402 阅读 · 1 评论 -
33_彩色图均衡化源代码
#本质 统计每个像素灰度出现的概率import cv2import numpy as npimport matplotlib.pyplot as pltimg = cv2.imread('ruonan.jpg',1)Info = img.shapeheight = Info[0]width = Info[1]count_b = np.zeros(256,np.float...原创 2019-01-15 01:00:04 · 324 阅读 · 0 评论 -
32_灰度直方图均衡化源代码
#本质 统计每个像素灰度出现的概率import cv2import numpy as npimport matplotlib.pyplot as pltimg = cv2.imread('ruonan.jpg',1)gray = cv2.cvtColor(img,cv2.COLOR_RGB2GRAY)Info = gray.shapeheight = Info[0]width =...原创 2019-01-15 00:29:54 · 385 阅读 · 0 评论 -
31_图像的修补
import cv2img = cv2.imread('ruonan.jpg',1)for i in range(200,300): img[i,200-1] = (255,255,255) img[i,200] = (255,255,255) img[i,200+1] = (255,255,255)for j in range(150,250): img[2...原创 2019-01-14 23:42:19 · 379 阅读 · 0 评论 -
30_图像的均衡化
#灰度图像直方图均衡化import cv2img = cv2.imread('ruonan.jpg',1)gray = cv2.cvtColor(img,cv2.COLOR_RGB2GRAY)cv2.imshow('src',gray)result = cv2.equalizeHist(gray)cv2.imshow('dst',result)cv2.waitKey(0)#灰度图像...原创 2019-01-14 23:06:40 · 334 阅读 · 0 评论 -
29_直方图
#直方图绘制#思路 #1引入模块 2定义方法 3获取直方图属性 4画布构建 5归一化直方图高度 6绘制lineimport cv2import numpy as npdef imageHist(image,type): color = (255,255,255) &n...原创 2019-01-14 22:32:50 · 330 阅读 · 0 评论 -
28_文字附着于图片
#文字图片的绘制'''import cv2img = cv2.imread('ruonan.jpg',1)print(img.shape)font = cv2.FONT_HERSHEY_SIMPLEXcv2.rectangle(img,(60,60),(300,300),(255,0,0),5)cv2.putText(img,'this is a beauty',(80,...原创 2019-01-14 22:31:56 · 310 阅读 · 0 评论 -
23_sobel边缘检测源代码
#sobel边缘检测源代码import cv2import numpy as np import mathimg = cv2.imread('ruonan.jpg',1)Info = img.shapeheight = Info[0]width = Info[1]#  算子模板    图像卷积   梯度&n原创 2019-01-11 20:38:32 · 1080 阅读 · 0 评论 -
24_#浮雕效果
import cv2import numpy as npimport mathimg = cv2.imread('ruonan.jpg',1)Info = img.shapeheight = Info[0]width = Info[1]gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)dst = np.zeros((height,width,1)...原创 2019-01-11 20:39:24 · 233 阅读 · 0 评论 -
04_Numpy模块的使用
import numpy as npdata1 = np.array([2,3,5])data2 = np.array([[25,56], [665,8]])data3 = np.zeros([5,6])data4 = np.ones([5,2])data3[0,0] = 5print(data1)print(data2)print(data1....原创 2019-01-06 21:41:06 · 217 阅读 · 0 评论 -
利用递归进行进制之间的转换
def to_str(number,basic): convert_string=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E",原创 2018-10-24 21:51:04 · 332 阅读 · 0 评论 -
利用递归实现一个数的阶乘
def fact(n): mul=1 if n==0: return 1 else: return n*fact(n-1)print(fact(5))原创 2018-10-24 21:09:00 · 841 阅读 · 0 评论 -
python之递归函数
所谓递归函数就是一种调用自身的函数;为了更好的说明递归函数,我们举一个简单的递归求和例子。def sum_list(num_list): if len(num_list)==1: return num_list[0] else: return num_list[0]+sum_list(num_list[1:]) #调用函数自己print(...原创 2018-10-24 20:36:56 · 221 阅读 · 0 评论 -
迭代求和
def list_num(listnum): num=0 for i in listnum: num=num+i return numprint(list_num([2,5,56,2]))原创 2018-10-24 20:05:40 · 1190 阅读 · 0 评论 -
用MATLAB寻找自守数,方法二:矩阵
ticx=5:100000;y=mod(x.^2,10.^(1+floor(log10(x))));x(x==y)toc结论:利用矩阵运算速度远大于循环原创 2018-10-25 18:47:38 · 352 阅读 · 0 评论 -
利用MATLAB求自守数,方法一:循环
什么是自守数?一个数的平方的末尾即为数字等于它本身,如55=25,66=36…ticf=zeros(0,100);index=0;for p=5:100000 w=1+floor(log10(p)); %求解这个数的位数%为什么用floor不用ceil,请自己运行ceil(log10(10))便知 m=mod(p^2,10^w); if p==m; ...原创 2018-10-25 18:45:10 · 458 阅读 · 0 评论 -
访问数组中的值
import numpy as npar=np.array([[51,56,22],[52,62,5]],np.uint8)print(ar)print(ar[1,2])#访问第二行第三列的值print(ar[1,:])#访问第二行的所有值print(ar[:,1])#访问所有行的第二列的值print(ar[:,:])#访问所有行所有列的所有值...原创 2018-10-22 16:20:25 · 416 阅读 · 0 评论 -
如何获取二维数组的类型以及尺寸
import numpy as npm=np.array([[2,5,2],[1,55,2]],np.int16)print(m)print(m.shape)#获取数组尺寸print(m.dtype)#获取m的数据类型原创 2018-10-22 16:11:16 · 2119 阅读 · 0 评论 -
数组与矩阵的区别
矩阵是由一组数据构成并按照一定的顺序存放的数据组合,这里的数据一定是阿拉伯数据。但是数组,他可以是由矩阵组成的也可以是由数据组成的,还可以是由字符串组成的。因此我们可以将矩阵理解为特殊的数组,一维数组。#用python生成一个矩阵import numpy as npar=np.array([[2 ,5, 5],[4, 4, 5],[4, 55, 6]],np.int16)print(ar)...原创 2018-10-22 16:04:30 · 3714 阅读 · 0 评论 -
初始化一个三维整形矩阵
import numpy as npar=np.array([[2 ,5, 5],[4, 4, 5],[4, 55, 6]],np.int16)print(ar)print(type(ar))原创 2018-10-22 15:51:12 · 898 阅读 · 0 评论 -
初始化一个浮点型矩阵
import numpy as npn=np.array([[14,5,55,44,22],[55,5,6,6,8],[4,58,4,4,66]],np.float64)print(n)原创 2018-10-22 15:43:51 · 1803 阅读 · 0 评论 -
05_matplotlib
import numpy as npimport matplotlib.pyplot as pltx = np.array([1,2,3,4,5,6,7,8,9])y = np.array([2,5,8,5,6,12,11,3,9])plt.plot(x,y,'r')plt.plot(x,y,'g',lw=15)  #参数3颜色   参数4 宽度x = n...原创 2019-01-10 22:45:01 · 214 阅读 · 0 评论