Python
TiRan_Yang
这个作者很懒,什么都没留下…
展开
-
python中的局部变量与全局变量
1、函数内部的变量名如果第一次出现,且出现在=前面,即被视为定义一个局部变量,不管全局域中有没有用到该变量名,函数中使用的将是局部变量,例如:num = 100def func(): num = 123 print(num)func()输出:123说明函数中定义的num是一个局部变量,会将全局变量覆盖。再例如:num = 100def func(原创 2014-07-28 23:23:11 · 1566 阅读 · 0 评论 -
python序列化存储模块:Pickle
python序列化存储模块:Picklepython的pickle模块实现了基本的数据序列和反序列化。通过pickle模块的序列化操作我们能够将程序中运行的对象信息保存到文件中去,永久存储;通过pickle模块的反序列化操作,我们能够从文件中创建上一次程序保存的对象。函数接口使用到主要接口有4个:dump, dumps, load, loads。其中dump和load用在序列和序列对象,而dums与原创 2017-11-23 11:28:42 · 1077 阅读 · 0 评论 -
Tensorflow学习笔记-softmax、cross_entroy
Tensorflow学习笔记-softmax_cross_entropy_with_logits 神经网络模型的效果和优化的目标都是通过损失函数(loss function)来定义的。但是在分类问题中,如果评价输出结果的准确性呢?常用的方法是使用交差熵(cross entropy),它刻画了两个概率分布之间的距离,它是分类问题中使用比较广的损失函数。 H(y,y′)=−∑xy(x)∗lo原创 2017-11-23 17:00:29 · 3565 阅读 · 0 评论 -
Tensorflow学习笔记-过度拟合问题
Tensorflow学习笔记-过度拟合问题 神经网络在训练是,并不是希望模型尽量模拟训练的数据,而是希望模型对未来的数据具有准确的判断。因此,模型在训练数据上的表现并不代表对未来数据的表现。如果模型可以完全记住训练数据而使得损失函数为0,这就是引起过度拟合的问题。 过度拟合训练数据中的随机噪声,虽然可以得到非常小的损失函数,但对未知数据很难做出判断。 训练处理的模型一般变现出三种原创 2017-11-23 22:02:53 · 1964 阅读 · 0 评论 -
sklearn-SVC实现与类参数
sklearn-SVC实现与类参数它是基于libsvm实现的。随着样本数量的增加,拟合时间的复杂度要高于二次,这就使得当样板数量超过一万个时,很难扩展到数据集中。在多类处理时,是按照1对1的方案进行处理的。 函数的的定义为: def __init__(self, C=1.0, kernel='rbf', degree=3, gamma='auto',coef0=0.0, shrinkin原创 2017-11-23 10:07:29 · 1784 阅读 · 0 评论 -
Python 搭建多线程服务端
Python 搭建多线程服务端 使用python搭建多线程服务端需要使用socketserver的ThreadingTCPServer方法。并且需要重写setup()、handel()、finish()这三个函数,具体的流程如下:import socketserverimport timeimport threadingHOST = 'localhost'PORT = 96原创 2017-11-10 10:10:41 · 1958 阅读 · 0 评论 -
Python 获取当前文件所在目录
Python 获取当前文件所在目录 python下获取文件所在的绝对目录,大都通过:os.path.abspath,但如果你在其他目录下,通过绝对路径获取,这时就会有错。例如: 步骤1 在当用目录运行import osimport sysprint(os.path.abspath('main.py')) 结果为:/home/abc/TiRan/WorkSpace/Py原创 2017-11-01 18:59:20 · 96696 阅读 · 12 评论 -
Python-matplotlib学习
Python下关于matplotlib的基本使用如下,更多的用法请参考matplotlib的API:http://matplotlib.org/tutorials/index.html#intermediateimport matplotlib.pyplot as pltplt.plot([1, 2, 3, 4])plt.ylabel('some numbers')plt.show()运行结果原创 2017-12-05 19:24:07 · 586 阅读 · 0 评论 -
Ubuntu搭建Caffe深度学习
本文所采用的环境为:Ubuntu16.04 64位。1、安装caffe相关依赖项:sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libhdf5-serial-dev protobuf-compilersudo apt-get install --no-install-recommends libboos原创 2017-04-18 19:54:41 · 6198 阅读 · 0 评论 -
Numpy中常用的接口
Numpy是利用python来进行数据分析中必须要掌握的基础。是高性能科学计算和数据分析的基础包。利用numpy能对整组数据无需循环就能进行快速的标准数学函数计算,同时能进行线性代数,随机数,以及傅里叶变换等等功能,而对于数据分析来说,比较重要的用途就是数据的清理,过滤,子集构造,转换,排序,描述统计等等。 在使用的时候,对某个API接口记得不是太轻,需要从新度娘,这势必会浪费比较多的时...原创 2018-01-24 11:50:36 · 1109 阅读 · 0 评论 -
Opencv调用深度学习模型
OpenCv 从V3.3版本开始支持调用深度学习模型,例如Caffe, Tensorflow, darknet等.详细见下图,具体的使用方法,可以参考官网: https://docs.opencv.org/3.4.1/d6/d0f/group__dnn.html 目前Opencv可以支持的网络有GoogLeNet, ResNet-50,MobileNet-SSD from Caff...原创 2018-04-13 15:19:54 · 13444 阅读 · 2 评论 -
random常用的方法
random.sample函数的第一个输入参数必须为list类型,否则会报错。第二个参数为从list中随机选取的个数。例如:import randomlist = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]for i in range(3): slice = random.sample(list, 5) # 从list中随机获取5个元素,作为一个片断返回...原创 2018-08-30 20:56:20 · 825 阅读 · 0 评论 -
Python解析二进制文件
使用python解析二进制文件时,需要了解python与C语言对应的格式,如下: 例如使用C语言保存的二进制格式,结构体为:struct Points{ int x; int y; int z;};struct Obj_info{ int id; int x1; int y1; int x2; int ...原创 2018-08-23 21:15:23 · 13012 阅读 · 0 评论 -
python print重定向到文件
python print重定向到文件 我们在开发中,有时需要将log信息保存到文件中,方便后续的查看,而无论是python2的print 还是python3的print(),默认都是将信息输出的控制台中,无法保存到本地,因此需要进行重定向。 import timeimport osclass LOG(): def __init__(self): if n原创 2017-11-02 09:07:01 · 11996 阅读 · 0 评论 -
python 字符串处理
去空格及特殊符号 s.strip().lstrip().rstrip(‘,’) 复制字符串strcpy(sStr1,sStr2)sStr1 = ‘strcpy’ sStr2 = sStr1 sStr1 = ‘strcpy2’ print sStr2 连接字符串strcat(sStr1,sStr2)sStr1 = ‘strcat’ sStr2 = ‘append’ sStr1 += s转载 2015-09-19 17:00:04 · 399 阅读 · 0 评论 -
Windows下基于Python搭建Qt和Opencv
1、安装python,注意系统是32位,还是64位,安装完毕,将python的安装目录添加到PATH,例如”C:\Python27”,通过cmd检测是否安装成功。2、安装Qt 度娘PyQt4-4.11.4-gpl-Py2.7-Qt4.8.7-x32.exe(Qt4,如果需要安装Qt5,找对应的安装包)的安装包,下载然后安装,安装完毕后,使用下面代码检原创 2017-02-13 13:25:50 · 4463 阅读 · 0 评论 -
Python QT由登陆界面到主界面
在使用Python QT开发界面的时候,会出现从登陆界面到主界面的一个切换问题。如下所示,用户输入用户名和密码后,如果用户名和密码匹配,则会跳转到主界面,此时登陆界面消失。 首先需要定义自己需要的对话框,请参考:http://blog.csdn.net/lovelyaiq/article/details/55050580。在代码加入对话中加入对话框退出时的返回值,例如:ac原创 2017-02-21 19:48:50 · 11708 阅读 · 2 评论 -
Python Qt定义自己的对话框
定制化对话框当QMessageBox不能满足你的需要时,例如你需要在对话框中加入QLabel、QTextBrowser等显示控件时。此时需要继承QDialog,然后实现自己所需要的功能。本例中在弹出的对话框中,加入QLabel、QTextBrowser和两个按钮。代码如下:import sysfrom PyQt4 import QtCore, QtGuiclass Save原创 2017-02-13 17:25:02 · 5305 阅读 · 0 评论 -
Python:如何获取当前的日期和时间
在python里如何获取当前的日期和时间呢?在Python语言里,我们可以通过调用什么模块或者类函数来得到当前的时间或日期呢?当然你可以使用时间模块(time module),该模块提供了各种和时间相关的函数。但是这个模块里的一些函数在某些平台里不可用。那么怎么办呢?我们可以使用一个更高级的面向对象的接口函数:datetime。它提供了操作日期和时间的多种简单或复杂的方法。py转载 2014-08-04 20:05:14 · 3847 阅读 · 0 评论 -
Python Shell 值的传送
最近在做那个测试框架的时候发现 Python 的另一个获得系统执行命令的返回值和输出的类。最开始的时候用 Python 学会了 os.system() 这个方法是很多比如 C,Perl 相似的。os.system(‘cat /proc/cpuinfo’)但是这样是无法获得到输出和返回值的,继续 Google,之后学会了 os.popen()。output = os.popen(‘cat /proc/原创 2015-09-19 15:45:59 · 521 阅读 · 0 评论 -
Python文件读写
Python读写文件在计算机语言中被广泛的应用,如果你想了解其应用的程序,以下的文章会给你详细的介绍相关内容,会你在以后的学习的过程中有所帮助,下面我们就详细介绍其应用程序。一、打开文件Python读写文件在计算机语言中被广泛的应用,如果你想了解其应用的程序,以下的文章会给你详细的介绍相关内容,会你在以后的学习的过程中有所帮助,下面我们就详细介绍其应用程序。代码如下:f = ope原创 2015-08-29 21:35:56 · 499 阅读 · 0 评论 -
Python通过pyserial控制串口操作
一、用python操作串口,首先需要下载相关模块: pyserial (http://pyserial.wiki.sourceforge.net/pySerial) pywin32 (http://sourceforge.net/projects/pywin32/)2,十六进制显示十六进制显示的实质是把接收到的字符诸葛转换成其对应的ASCII码,然后将ASCII码值原创 2015-08-30 07:48:10 · 14712 阅读 · 0 评论 -
Python List的赋值方法
Python中关于对象复制有三种类型的使用方式,赋值、浅拷贝与深拷贝。他们既有区别又有联系,刚好最近碰到这一类的问题,研究下。一、赋值 在python中,对象的赋值就是简单的对象引用,这点和C++不同。如下: a = [1,2,3,"hello",["python","C++"]]b = aprint a==b #True 这种情况下,b和原创 2017-02-14 17:48:09 · 85286 阅读 · 4 评论 -
caffe:pycaffe的使用
caffe学习入门:pycaffe的使用 caffe的官方完美的支持Python语言的兼容,提供了pycaffe的接口。用起来很方便,首先来看一下最常用到的:caffe的一个程序跑完之后会在snapshot所指定的目录下产生一个后缀名为caffemodel的文件,这里存放的就是我们在训练网络的时候得到的每层的参数信息,具体访问由net.params['layerName'][0].d转载 2017-04-19 19:23:21 · 1455 阅读 · 0 评论 -
QT与python的串口通信
由于最近接触到承重传感器,起初基于Python开发串口通信,在QT中通过process调用Python的串口程序,结果发现效果不是太好。最后转手在Qt中直接使用Qt的串口接口,达到了理想的效果。Python接口 在python中需要使用pyserial接口,可以通过下面连接进行下载,主要系统环境为python2.7 X86.http://download.csdn.net/de原创 2017-06-01 09:34:05 · 4331 阅读 · 0 评论 -
Python 数据库操作
Python中提供了SQlite和MySQL这两种数据库的接口。SQLite是一个轻量级的关系型数据库。这一数据库使用SQL语言。SQLite作为后端数据库,可以搭配Python建网站,或者制作有数据存储需求的工具。SQLite还在其它领域有广泛的应用,比如HTML5和移动端。Python标准库中的sqlite3提供该数据库的接口。原创 2017-03-01 19:20:30 · 955 阅读 · 0 评论 -
Python读取YUV文件,并显示
Python读取YUV格式文件,并使用opencv显示 opencv可以读取的图片类型比较多,但大多是比较常见的类型,比如".jpg"和".png",但它不能直接读取YUV格式的文件,需要通过python读取YUV文件,并进行相应的转换后,才能被opencv读取,并进行后续相应的处理. 话不多说,直接上程序.import cv2from numpy import *原创 2017-07-25 14:20:18 · 24447 阅读 · 4 评论 -
Opencv+Kdtree在C++和Python下的使用
Opencv+Kdtree在C++和Python下的使用 最近有个项目使用到Opencv下的flann模块,该模块主要在数据的搜索,搜索速度还算可以,就研究它在C++和Python下的使用方法,关于kdtree的搜索原理,请自行百度. Kdtree主要有Tree的加载树和建立树,其中建树主要的场景为:数据第一次初始化及更新;加载则为程序重启时,不需要读取数据重新建树,而节原创 2017-08-25 14:36:56 · 5240 阅读 · 1 评论 -
Savitsky-Golay滤波器及源码实现
SG平滑算法是由Savizkg和Golag提出来的。基于最小二乘原理的多项式平滑算法,也称卷积平滑。为啥叫多项式平滑呢?且看下去。下面使用五点平滑算法来说明平滑过程原理很简单如图:把光谱一段区间的等波长间隔的5个点记为X集合,多项式平滑就是利用在波长点为Xm-2,Xm-1,Xm,Xm+1,Xm+2的数据的多项式拟合值来取代Xm,,然后依次移动,直到把光谱遍历完。Savitsky-Gola...原创 2019-03-20 11:04:55 · 9039 阅读 · 8 评论