自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 傅里叶变换及应用(二)——傅里叶变换的特点

文章目录前言傅里叶变换的特点前言上一节我们介绍了傅里叶变换的物理意义:对原函数进行傅里叶变换后取绝对值得到的曲线正好就是原函数的频率谱。这一节,我们继续通过几个特殊函数来介绍一下傅里叶变换的特点,下一节傅里叶变换在滤波技术中的应用。傅里叶变换的特点先来看下面两个高斯函数的傅里叶变换:可以看出这种高斯函数傅里叶变换后仍然是一个高斯函数,且宽度是有限的,说明高斯函数是一个有限带宽的函数(...

2019-10-17 22:25:53 5506

原创 傅里叶变换及其应用(一)

文章目录前言傅里叶变换的物理意义附:Matlab代码前言记得大学刚开始学傅里叶变换的时候,只觉得这货怎么这么反人类,简简单单地一个函数被它这么一折腾就变得极其繁琐且不知所云。然而,毕业后随着读研究生到后来参加工作逐渐接触到越来越多的实际问题,不禁发出一句感叹,“真香!”。我是从事光电相关行业的,因此接触到大量的傅里叶变换在相关方向上的应用,感叹其带来的便捷。这几篇博文就是想回顾一下傅里叶变换的...

2019-10-16 11:15:46 5993

原创 为Python写c扩展

最近在使用Python编写一些控制程序,由于需要控制一些CCD相机之类的外设,而这些外设通常又只提供c的SDK,因此需要自己编写一些c/c++的扩展程序,方便用python来控制这些设备。下面介绍一下我的编写经验。  使用工具:VS2017;python 3.6;操作系统:win10,x64。  首先,安装VS2017:  社区版的VS2017可以在官网上免费下载和安装使用。当然,在免费使用...

2019-08-29 23:15:51 995

原创 QTimer的timeout多函数的并行执行

最近在用Python和pyqt5编写一个界面程序,需要用到QTimer。在使用QTimer时遇到一个很有趣的问题,特此记录一下。先将问题简化成如下所示的小程序。先定义一个界面,界面包括一个按钮和一个文本显示框。from PyQt5 import QtCore, QtGui, QtWidgetsclass Ui_MainWindow(object): def setupUi(sel...

2019-07-22 16:21:21 6792 6

原创 使用numba加速python程序

文章目录前言准备jit修饰器的使用vectorize修饰器前言最近在写一个实时图像处理的程序,程序需要对快速相机捕获的目标图像进行实时地计算处理并输出处理结果。由于相机帧频比较快(几百fps),计算机对图像的处理速度就成了整个程序速度的瓶颈,在使用python语言编写完成后,程序的运行速度只有几十赫兹。为了提高程序的运行速度,引入了numba工具,使用jit和vectorize两种函数修饰器对...

2019-07-01 13:01:29 1447

原创 用Matplotlib在PyQt5界面绘制动态曲线、柱形、二维、三维图(下)

文章目录前言循环的实现图形数据的更新曲线图的更新柱形图的更新二维图的更新三维图的更新前言上一篇介绍了如何在PyQt的界面上通过Matplotlib绘制静态的曲线图、柱形图、二维图和三维图。这一篇介绍一下如何通过数据更新实现这些图形的动态显示。循环的实现要实现图形或数据的动态更新,必然需要一个时间循环,在PyQt中一般通过QTimer来实现循环控制。QTimer的使用方式如下所示。 ...

2019-06-17 01:18:58 10354 10

原创 用Matplotlib在PyQt5界面绘制动态曲线、柱形、二维、三维图(上)

文章目录前言1、准备PyQt界面2、定义画板3、添加画板4、画图前言使用PyQt设计程序界面过程中不可避免地需要将数据通过图形化的方式显示出来,对于一些实时性较强的系统,还需要能够动态地更新这些图形。然而Matplotlab对于曲线图、柱形图、二维图、三维图的绘制和更新各有不同的方法。  我在工作中就遇到了这个问题,花了不少精力汇总了使用Matplotlib实现曲线、柱形图、二维图以及三维图...

2019-06-17 01:18:23 19154 16

原创 神经网络反向传播算法推导(机器学习九)

文章目录背景介绍背景介绍反向传播算法是神经网络的一个关键步骤,通过反向传播算法,可以计算出假设函数对所有神经网络参数的偏导数。  神经网络算法的工作流程为:首先通过人工或其它算法确定特征x\mathbf{x}x,并随机初始化所有神经网络参数;然后运用正向传播算法计算出神经网络的输出值;接下来运用反向传播算法计算输出值对所有参数的偏导数;最后运用梯度下降算法更新所有的神经网络参数。  首先,...

2019-03-26 19:54:32 249

原创 神经网络(机器学习八)

文章目录前言前言

2019-03-18 20:28:47 276

原创 手写数字识别(机器学习笔记七)

文章目录前言问题描述多分类问题训练集和测试集结语前言上一章,我们学习了利用逻辑回归算法处理复杂二分类问题的方法,这一章,我们通过手写数字识别的例子来介绍逻辑回归算法对多分类问题的解决办法。问题描述我们在写信或寄快递的时候都要填上邮编和手机号来标明邮寄的目的地和收件人,如果我们有一个程序能够自动识别出不同人手写的数字,并将其录入计算机中,无疑会大大增加邮寄的效率。然而,由于每个人的书写习惯不...

2019-03-09 12:14:32 1411

原创 过拟合与正则化(机器学习笔记六)

文章目录前言问题描述前言上一节,我们介绍了分类问题的处理方法——逻辑回归算法。对于二分类问题,逻辑回归算法归根结底是寻找训练集中标签为0和1的样本的分界线或分界面。上一节的问题比较简单,分界线就是一条直线,然而,更多情况下,两种标签样本的分界是非常复杂的曲线或曲面,相应的曲线或曲面方程就会非常复杂,设计多阶的高次项。这个时候,我们就需要在假设函数中引入正则项以避免可能出现的过拟合问题。问题描...

2019-03-07 22:59:48 252

原创 逻辑回归中偏导数的推导详解

逻辑回归问题中的代价函数为:J=−1m∑i=1m[y(i)loghθ(x(i))+(1−y(i))log(1−hθ(x(i)))]J=-\frac{1}{m}\sum\limits_{i=1}^{m}{[y^{(i)}logh_\mathbf{\theta}(\mathbf{x}^{(i)})+(1-y^{(i)})log(1-h_\mathbf{\theta}(\mathbf{x}^{(i)}...

2019-03-02 14:33:35 2734 6

原创 监督学习与无监督学习(机器学习笔记一)

文章目录前言前言最近在网易云课堂上学习吴恩达老师的机器学习课程。吴老师的课讲的通俗易懂、深入浅出,令我获益良多,在这里记录一下学习过程的一些知识点和个人理解,欢迎各位童鞋一起交流。这一节主要介绍第一章绪论中的内容。一、应用领域机器学习是人工智能的一个重要分支,目前主要的应用方向包括以下四类:1、数据挖掘互联网和自动化发展过程中产生了大量数据,例如网络浏览数据、医疗数据等,机器学习提供了...

2019-03-01 08:50:27 490

原创 逻辑回归(机器学习笔记五)

文章目录

2019-03-01 08:48:55 257 1

原创 多项式回归和正规方程(机器学习笔记四)

文章目录前言多项式回归泰勒公式多项式回归正规方程结语前言上一章,我们学习了多变量线性回归算法的原理和实现过程。正如上一章最后所说,我们现实中面临的问题大部分都是非线性的,这时候,我们需要对多变量线性回归做一些处理,就是我们这一章要学习的多项式回归算法。  在进行回归算法学习的过程中,还面临着一个问题,就是如何验证算法的学习成果。对于单变量线性回归问题,我们将训练集和学习结果画出来就可以直观地...

2019-02-25 16:05:35 568

原创 多变量线性回归(机器学习笔记三)

文章目录前言前言上一章通过一个年龄-身高的例子介绍了单变量线性回归算法的实现过程。通过向量化表示算法中的各个参量,我们可以很容易地将单变量线性回归算法扩展到多变量的情况。这一章我们就来学习多变量线性回归算法的实现。...

2019-02-22 11:47:42 358

原创 单变量线性回归(机器学习笔记二)

文章目录前言一、符号定义前言上一章我们学习了机器学习的应用领域、定义以及算法的分类,这一章来学习最简单的一个机器学习算法——单变量线性回归算法,它是一种监督学习的算法,而且输出值是连续变化的值,因此是一种“回归”算法。一、符号定义我们通过吴老师课堂上给出的练习题中的例子来学习单变量线性回归算法。在进行监督学习算法的时候,我们首先要有一个训练集,这里的训练集就是人们统计的50名不同年龄的儿...

2019-02-20 22:57:56 912

原创 PyQt5+QtDesigner编写摄像头界面程序(五)——用pyinstaller将py文件打包成exe

上一节,我们已经完成了摄像头界面程序的编写,点击运行程序后就可以看到正常工作的界面程序了,具备了实时显示摄像头采集到的图像,调整摄像头的亮度、增益等参数,改变图像的颜色、保存截图或录像等功能。然而,由于程序运行时会用到python、opencv、pyqt5等可能是我们自己电脑上独有的工具,一旦程序移植到别的电脑上就无法运行了。为了让我们编写的程序在别的电脑上也能正常运行,我们就需要将程序打包成ex...

2019-01-24 10:49:43 5337 15

原创 PyQt5+QtDesigner编写摄像头界面程序(四)——用OpenCV和time读取和设置摄像头

def SetFilePath(self): dirname = QFileDialog.getExistingDirectory(self, "浏览", '.') if dirname: self.FilePathLE.setText(dirname) self.Recor

2019-01-21 16:32:58 20703 463

原创 PyQt5+QtDesigner编写摄像头界面程序(三)——主程序的编写

文章目录前言1、Slider和SpinBox2、控件初始化3、参数初始化4、控件回调函数前言上一节中,我们已经完成了程序的界面设计,并初步编写了主函数可以生成程序的界面。这一节将介绍如何编写各控件的调用函数,实现摄像头参数的调控,并通过time函数实现摄像头的实时图像显示。在上一节中,我们通过QtDesigner生成了程序界面的ui文件,然后通过PyUIC将该ui文件转换成了py文件。在Py...

2019-01-15 17:27:02 16806 17

原创 PyQt5+QtDesigner编写摄像头界面程序(二)——使用qtdesigner设计软件界面

文章目录前言一、程序布局二、插入功能控件三、显示软件界面前言上一节介绍了PyQt和QtDesigner等工具的安装和环境设置,本节主要介绍QtDesigner的使用方法,利用QtDesigner完成相机控制程序的界面设计。一、程序布局还是接着上一节的PyQtTest项目进行编辑,在PyCharm里单击Tools->External Tools->Qt Desig

2019-01-09 10:27:48 19883 12

原创 PyQt5+QtDesigner编写摄像头界面程序(一)——pyqt5、qtdesigner安装和环境设置

用PyQt+QtDesigner编写摄像头控制界面程序(一)前言PyQt+QtDesigner及相关插件的安装和设置1、PyQt、QtDesigner及其它工具包的安装2、将QtDesigner和PyUIC链接到PyCharm的外部工具库3、界面设计测试前言最近工作需要使用Python语言编写一些算法控制程序,需要涉及CCD的读取和串口的输出。为了方便调试,学习了基于PyQt和QtDesign...

2019-01-04 11:54:38 22933 19

空空如也

空空如也

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

TA关注的人

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