
Python
熊叫大雄
雁归时,佳期如梦。
展开
-
Python调用OpenCV读写视频
最近因为经常对视频进行操作,所以记录下Python用opencv来读写视频的方法。一、opencv读视频python调用opencv来读视频比较简单,可以直接调用cv2.VideoCapture来读取视频和摄像头,基本上,常见的avi和mp4都能够正常读取。cv2.VideoCapture是通过传入数字来读取对应的摄像头,或者通过传入一个路径字符串来读取对应的视频文件。最简单直接的读取...原创 2020-02-09 14:35:14 · 3791 阅读 · 2 评论 -
[tensorflow] FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated
在导入tensorflow的时候报了这样的提示:/usr/local/anaconda3/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:516: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; i...原创 2020-01-28 10:41:04 · 707 阅读 · 1 评论 -
Python调用OpenCV测试程序运行时间
OpenCV有提供测代码运行时间的函数,类似C/C++的。估计是一样的吧,看结果importnumpyasnpimportcv2ascvsrc=cv.imread("D:/lena.bmp")src=cv.resize(src,(1024,1024))e1=cv.getTickCount()img1=cv.medianBl...原创 2019-11-10 09:40:06 · 564 阅读 · 0 评论 -
Python调用OpenCV滤波
这一篇记录几种OpenCV提供的滤波函数,包括2D卷积、平均滤波、高斯滤波、中值滤波和双边滤波。1、2D卷积2D卷积使用的是OpenCV提供的filter2D()函数,该函数需要传入一个卷积核,这个卷积核可以通过numpy来构造:importnumpyasnpimportcv2ascvsrc=cv.imread("D:/lena.bmp")kernel=n...原创 2019-11-11 08:25:52 · 496 阅读 · 0 评论 -
Python调用OpenCV代码优化
OpenCV提供的API的代码大部分是经过优化的,很多都是经过SSE或者AVX等技术优化了函数,并且是默认打开优化的。其实,我们也可以查询OpenCV是否进行了函数优化,查询的函数为:cv2.useOptimized()如果打开了优化的话是返回True,反之返回False。我们也设置关闭或者开启优化,设置的函数为:cv2.setUseOptimized(False)cv2...原创 2019-11-13 11:16:34 · 686 阅读 · 0 评论 -
Python调用OpenCV形态学
图像形态学处理包括腐蚀、膨胀、开运算、闭运算、形态学梯度、礼帽(顶帽)、黑帽等运算。1、腐蚀腐蚀可以理解为前景像素会被腐蚀为背景像素,以白色255为前景,得到的效果就是白色变小、变细,黑色变大变粗:importcv2importnumpyasnpimg=cv2.imread('lena.jpg',0)kernel=np.ones((5,5),np.uint...原创 2019-11-21 14:21:43 · 263 阅读 · 0 评论 -
[Pytorch].pth转.pt文件
Pytorch的模型文件一般会保存为.pth文件,但是其C++接口一般读取的是.pt文件,因此,C++在调用Pytorch训练好的模型文件的时候就需要进行一个转换,转换为.pt文件,才能够读取。所以在转换的时候,首先就需要先将模型文件读取进来,然后利用pytorch提供的函数torch.jit.trace进行转换,这个函数的声明为:def trace(func, ...原创 2020-07-06 10:55:52 · 20660 阅读 · 11 评论 -
windows下移植别人配置好的python环境
一般来说,我们在windows下配置python环境的时候可能会比较推荐用anaconda,那么有一个比较方便的anaconda环境移植方法,也就是说,如果我已经在windows上安装好了anaconda,并且配置好了tensorflow、keras等环境的时候,是可以通过Ctrl+C和Ctrl+V的方式提供给别人的,那么别人就不需要再去安装anaconda,然后再从零装一遍tensorflow、...原创 2019-09-24 09:36:27 · 724 阅读 · 0 评论 -
Python调用OpenCV算术操作
Python调用OpenCV的很多操作都是类似numpy的操作的,这篇内容包括加法操作、图像混合、按位运算。1、加法图像的加法可以用cv2.add()来实现,如果相加后的像素值超过255,则取255,也可以用numpy的+操作,但是+操作的话与add函数不同的地方在于numpy的加法是取模操作,也就是说如果相加之后大于255,那么就会对256取模:importnumpyasnp...原创 2019-11-02 13:55:06 · 185 阅读 · 0 评论 -
Python调用OpenCV阈值化
这一篇主要有两点:普通阈值化和自适应阈值化。1、普通阈值化普通阈值化用到的函数是cv2.threshold,其函数原型为:threshold(src,thresh,maxval,type,dst=None)其中,type的取值有以下几种cv2.THRESH_BINARY、cv2.THRESH_BINARY_INV、cv2.THRESH_TRUNC、cv2.THRESH...原创 2019-10-30 13:24:54 · 605 阅读 · 1 评论 -
[Python]h5py/__init__.py:36:
个人博客地址:https://www.bearoom.xyz/2019/08/24/python-devolop-env-hdf5-problem/安装tensorflow之后,在导入tensorflow的包的时候遇到这个问题:anaconda3/lib/python3.6/site-packages/h5py/__init__.py:36: FutureWarning: Conversion...原创 2019-08-26 21:24:54 · 293 阅读 · 0 评论 -
[tensorflow] 线性回归模型实现
在这一篇博客中大概讲一下用tensorflow如何实现一个简单的线性回归模型,其中就可能涉及到一些tensorflow的基本概念和操作,然后因为我只是入门了点tensorflow,所以我只能对部分代码给出相关的tensorflow的概念。线性回归模型的表达式如下:其中,是权重,是偏置,和则是输入数据和对应的模型预测值。在tensorflow中,是用图来表示计算的形式的,图中的每个节...原创 2019-09-10 09:35:31 · 812 阅读 · 0 评论 -
tensorflow之逻辑回归模型实现
前面一篇介绍了用tensorflow实现线性回归模型预测sklearn内置的波士顿房价,现在这一篇就记一下用逻辑回归分类sklearn提供的乳腺癌数据集,该数据集有569个样本,每个样本有30维,为二分类数据集,212个正样本,357个负样本。首先,加载数据,并划分训练集和测试集:#加载乳腺癌数据集,该数据及596个样本,每个样本有30维,共有两类cancer=skd.load_...原创 2019-09-11 11:30:25 · 1069 阅读 · 0 评论 -
tensorflow之最近邻算法实现
最近邻算法,最直接的理解就是,输入数据的特征与已有数据的特征一一进行比对,最靠近哪一个就将输入数据划分为那一个所属的类,当然,以此来统计k个最靠近特征中所属类别最多的类,那就变成了k近邻算法。本博客同样对sklearn的乳腺癌数据进行最近邻算法分类,基本的内容同上一篇博客内容一样,就是最近邻计算的是距离,优化的是最小距离问题,这里采用L1距离(曼哈顿距离)或者L2距离(欧氏距离),计算特征之间的绝...原创 2019-09-11 11:41:46 · 353 阅读 · 0 评论 -
基于Keras的mnist手写数字识别
首先,在众多深度学习框架中,我最开始上手的框架(因为那时候先接触的caffe,配置使用都太麻烦了)是Keras,什么叫做搞什么深度学习,我不过是搭积木罢了,这句话真的太适合形容Keras了。Keras是一个高级的深度学习框架,是架设于tensorflow、Theano、CNTK三大深度学习框架之上的,可以设置切换后台为其中之一,不过目前比较多的应该是用tensorflow作为后台,tensorfl...原创 2020-05-26 09:11:51 · 1099 阅读 · 0 评论 -
Keras设置后端数据维度顺序
Keras是比较高级的深度学习框架,其对几个比较常见的主流深度学习框架的封装而来,也就是按照Keras的说法就是其后端是以Tensorflow、Theano和CNTK为基础封装而来。CNTK我没做过多了解,tensorflow的tensor的维度顺序和Theano的维度顺序是不一样的,所以在使用Keras的时候要格外注意这一点,如果后端不同的话,设置的数据维度顺序也是要不一样的。tensorf...原创 2019-11-17 10:05:00 · 1150 阅读 · 0 评论 -
Python调用OpenCV读显写
OpenCV提供了python的接口,而且很重要的一点是python下的很多接口名与C++的接口名是一样的,这一篇先记录python调用OpenCV去读取图像、显示图像和保存图像。1、OpenCV读取图像cv2.imread与C++下的接口一样,Python下的读图的接口也还是imread():img=cv2.imread("D:\images\lena.jpg",flags=...原创 2019-10-22 15:06:13 · 213 阅读 · 0 评论 -
Python调用OpenCV像素操作
Python调用OpenCV进行操作的时候基本上感觉就是对numpy进行操作,跟numpy是挺相关的。1、像素操作OpenCV获取图像(x,y)处的像素值:px=img[x,y]当图像是三通道的时候返回的是BGR三通道的值,如果是灰度图的话就返回一个亮度值同样的如果要对图像(x,y)处赋值的话,也通过这种方式来实现:#三通道img[x,y]=[255,255,255]...原创 2019-11-10 09:36:00 · 1107 阅读 · 0 评论 -
Python调用OpenCV颜色空间
Python调用OpenCV的颜色空间转换函数是cv2.cvtColor(),OpenCV提供了很多中颜色空间转换,这里可以借助一个函数来获取所有的转换标识:flags=[iforiindir(cv2)ifi.startswith('COLOR_')]这个可以得到如下的标识符:['COLOR_BAYER_BG2BGR','COLOR_BAYER_BG2BGRA','...原创 2019-10-29 08:02:28 · 708 阅读 · 0 评论 -
Python调用OpenCV几何变换
这一篇就记录三个:图像缩放、平移和镜像。1、图像缩放图像缩放用到的函数是cv2.resize()函数,函数原型如下:resize(src,dsize,dst=None,fx=None,fy=None,interpolation=None)OpenCV提供了几种缩放方式:cv2.INTER_AREA、cv2.INTER_CUBIC、cv2.INTER_LI...原创 2019-11-05 14:14:07 · 273 阅读 · 0 评论 -
[Python]distributed 1.21.8 requires msgpack, which is not installed.
个人博客原文地址:http://www.bearoom.xyz/2019/08/24/python-devolop-en-msgpack-problem/在安装tensorflow的时候,出现了这个提示:distributed 1.21.8 requires msgpack, which is not installed.解决方法:pip install msgpack...原创 2019-08-24 17:41:03 · 3467 阅读 · 0 评论