- 博客(40)
- 问答 (1)
- 收藏
- 关注
原创 数据库(一 )SQL基本语言
关系是关系数据库中的基本构成单位,也称为表。在SQL中,分为以下两种。5. 基表。实表,数据显示存储的位置。6. 视图。虚表,数据仍在基表中,基表数据发生变化,视图数据也会变化。普通视图可根据其定义由其他基表导出。
2023-03-29 22:46:32
1249
原创 机器学习(二)LR(logistic regression)和SVM(support vector machine)的联系和区别
SVM 和 LR
2022-09-15 14:41:59
1085
原创 机器学习(一)决策树、Bagging (Random Forest)、Boosting (XGBoost,LightBoost)
总结了一些基于树的方法。
2022-08-07 15:47:50
1351
原创 【逻辑回归手推,从kaggle学习】
import numpy as npimport matplotlib.pyplot as pltimport csvfrom sklearn.preprocessing import MinMaxScalerimport pandas as pdfrom tqdm import tqdmsc = MinMaxScaler()def sigmoid(x): return 1 / (1 + np.exp(-x))def forward_propagation(w, b, x_t
2022-05-19 22:24:35
475
2
原创 基于OPENCV提取SIFT特征点,匹配两张图片。
一、图像提取SIFT特征点img1 = cv2.imread(filename)img2 = cv2.imread(filename)img1 = cv2.cvtColor(img1, cv2.COLOR_BGR2RGB)img2 = cv2.cvtColor(img2, cv2.COLOR_BGR2RGB)def extract_sift_features(image, num_features): # 提取特征点和计算描述符. sift_detector = cv2.SI
2022-05-14 14:07:09
3016
1
原创 从PPG预测BP,离了大谱
一、背景相关从脉搏波获取血压目前是一个重要的研究方向,为众多从事机器学习和深度学习算法的童鞋们提供了很好的研究对象。但是这个研究对象又不那么好研究,一方面是因为脉搏波的复杂性,一方面是因为数据库的不适用性(适合亚洲人的数据库我还没找到)。数据库一般包含以下几个数据:PPG、ABP、ECG的至少两个,我们要做的就是从PPG和ECG信号的组合中获取ABP信号,一般对于非持续精确测量而言,获取到SBP、DBP和MBP就可以了。波形数据源地址https://archive.ics.uci.edu/ml/data
2022-02-23 18:04:13
4605
7
原创 Remote PPG—— Pos Wang皮肤反射模型
一、肤色正交平面的来源由于2SR的主要特点是考虑色调变化(即忽略强度),因此它在(12)中的对应是首先消除1方向上的亮度变化。因此,我们将Cn(T)投影到正交于1的平面上,表示为:S(t)=Pp∗Cn(t)=Pp∗N∗I0∗(us∗s(t)+up∗p(t))S(t) = P_p*C_n(t)=P_p*N*I_0*(u_s*s(t)+u_p*p(t))S(t)=Pp∗Cn(t)=Pp∗N∗I0∗(us∗s(t)+up∗p(t))Pp∗1=(0,0).TP_p*1=(0, 0).TPp∗1=
2022-01-02 13:35:54
1712
原创 Remote PPG 皮肤反射模型
一、 绪论引言远程光体积描记术(RPPG)通过使用多波长RGB相机检测脉冲引起的人体皮肤表面细微的颜色变化,从而实现对人体心脏活动的非接触式监测。近年来,已经提出了几种从视频中提取脉搏信号的核心rPPG方法。其中以De Haan团队做出的成果最为显著,他们团队提出或运用的方法包括:1)盲源分离(BSS)(例如,基于主成分分析(PCA)的[2]和基于独立成分分析(ICA)的),它使用不同的标准将时间RGB轨迹分离成不相关或独立的信号源以恢复脉冲;2)Chrom,它通过假设标准化的肤色来线性地组合色度信
2021-12-24 17:10:41
4017
1
原创 怎么从图片中提取线 python
import numpy as npimport matplotlib.pyplot as pltimport cv2import pylab as mpl # import matplotlib as mplfrom scipy.signal import savgol_filterfrom signal_process.basic_signal_pro import normalize_funa = cv2.imread(r'.jpg')a_red = a[:, :, 2]def
2021-12-23 15:14:48
5229
4
原创 任意给一个矩阵,给定半径画圆
import numpy as npimport matplotlib.pyplot as pltdef arr_circle_max(arr, r): ''' arr: 输入矩阵 r: 半径 ''' # 需要加一步坐标移位到矩阵原点 row, col = arr.shape for i in range(0, r): j = int(np.sqrt(r ** 2 - i ** 2)) j_start = r -
2021-12-21 19:33:45
653
原创 pyqt5 TableWidget 修饰
一、改变样式表QTableWidget::item:hover{background-color:rgb(92,188,227,200)}QTableWidget::item:selected{background-color:#1B89A1}QTableCornerButton:section{ \padding:3px; margin:0px; color:#DCDCDC; border:1px solid #242424; border-left-width:0px; border-ri
2021-12-01 10:56:54
2323
原创 Eigen库学习笔记(3)——矩阵块操作、初始化
一、矩阵块操作即截取矩阵,基本操作为:索引同python,从0开始Block: size of (p, q), start at (i,j)matrix.block(i,j,p,q) //动态大小matrix.block(p,q)<i,j> //固定大小array同样适用该截取方法。固定块截取速度更快。对比一下numpy的截取和Eigen的截取# python版a = np.linspace(1,16,16)a.reshape(4,4)b = a[1:4, 1:4]
2021-11-06 18:43:31
3211
原创 Eigen库学习笔记(2)—— 密集矩阵和数组操作
总目录1. 矩阵类2. 矩阵与向量运算3. 数组类和系数操作4. 矩阵和数组转化一、矩阵类。包含矩阵和向量。因为向量是行或列为1的特殊矩阵。Matrix<type, row, col>·type指参数类型,通常为float。·row/col指矩阵的行数及列数矩阵基操之构建矩阵// Matrix_f/d,_上是数字的,就是静态,是X的,就是动态。f是float,d是double.Matrix3f m(3,3); //声明3*3的静态矩阵m << 1,2,3,
2021-11-05 23:37:47
427
原创 Eigen库学习笔记(1)
一、库的安装及使用Eigen库的设计者似乎很懂安装库的时候有多么让人抓狂,所以他们设置了非常简单的装库方法,直接下载源码压缩包,然后把包解压在include文件夹下,系统是Windows,软件是Codeblocks。路径配置过程为Settings->Compiler->Search Directories->Add->解压包的地址即可。 我装的是3.3.9,因为装4.0.0的时候有个Bug。3.3.9也能用不是。二、调试库的安装是否成功复制这段代码,能运行就说明成功啦!#i
2021-11-05 22:08:25
213
原创 plt.plot;cv2.putText
cv2.putText(img, str(i), (123,456)), font, 2, (0,255,0), 3)各参数依次是:图片,添加的文字,左上角坐标,字体,字体大小,颜色,字体粗细其中字体font可以选择cv.FONT_HERSHEY_SIMPLEXcv.FONT_HERSHEY_PLAINcv.FONT_HERSHEY_DUPLEXcv.FONT_HERSHEY_COMPLEXcv.FONT_HERSHEY_TRIPLEXcv.FONT_HERSHEY_COMPLEX_SMAL
2021-10-15 16:48:23
336
原创 自适应滤波器(LMS)基本知识
一、基本原理实验中测得一个观测信号u(t),得到一个再由这个信号的基本特征(如频谱分析中带通滤波或者小波变换)重建出一个期望信号d(t)。由u(t)与d(t)之间进行一系列运算之后得到输出的滤波后信号y(t)。基本步骤如下:初始化:给定初始权重系数w(0),迭代步长μ\muμ计算输出:$y(t) = w(t)⊺u(t)w(t) ^ \intercal u(t)w(t)⊺u(t)误差计算:e(t)=d(t)−y(t)e(t)=d(t)-y(t)e(t)=d(t)−y(t)权重更新:w(t+1)=
2021-09-20 19:06:04
2592
原创 奇异谱分析(SSA)与傅里叶幅频分析(FFT)的一个实验
一、原始信号的FFT分析模仿一个脉搏波(PPG)信号的波形from signal_process.singular_spectrum_analysis import SSAimport matplotlib.pyplot as pltimport numpy as np# 模拟一个信号并画出图def plot_freq_pulse(length, freq1, freq2, freq3, freq4): x = np.linspace(0, 15, length) # 采样频率fre
2021-09-09 22:29:52
1743
原创 opengl或pyqtgraph.opengl显示三维图像
import numpy as npimport pyqtgraph.opengl as glfrom PyQt5.QtWidgets import QApplication, QVBoxLayout, QMainWindow, QWidgetimport sysclass TestWindow(QMainWindow): def __init__(self, parent=None): QMainWindow.__init__(self) # 设置窗体尺
2021-09-07 15:54:30
3354
3
原创 cv2.VideoWriter 保存图像为视频的几个问题
用opencv库的cv2.VideoWriter函数保存图像为视频一、先确定要保存的视频的编码方式cv2.VideoWriter_fourcc(‘I’, ‘4’, ‘2’, ‘0’),该参数是YUV编码类型,文件名后缀为.avicv2.VideoWriter_fourcc(‘P’, ‘I’, ‘M’, ‘I’),该参数是MPEG-1编码类型,文件名后缀为.avicv2.VideoWriter_fourcc(‘X’, ‘V’, ‘I’, ‘D’),该参数是MPEG-4编码类型,文件名后缀为.avi
2021-08-28 21:58:11
11021
4
原创 pyqt 运行时程序直接崩溃,处理办法
程序前加入这样两行代码import cgitbcgitb.enable( format = ‘text’)具体分析:该cgitb模块为Python脚本提供了一个特殊的异常处理程序。(它的名字有点令人误解,它最初设计为在CGI脚本中显示HTML的广泛跟踪信息,后来被普遍化为以纯文本形式显示这些信息)。激活此模块后,如果发生未捕获的异常,将显示详细的格式化报告。该报告包含一个回溯,显示每个级别的源代码片段,以及当前运行的函数的参数值和局部变量值,以帮助您调试问题。或者,您可以将此信息保存到文件中,而不是
2021-07-13 11:57:53
2859
3
原创 pyqt UI设计好之后,运行程序时只有左上角显示一坨东东,解决办法
这就是我显示的界面:界面左上角显示的是Form,所以在QtDesinger里面新建窗口的时候,用的模板是Widget,而创建这个启动类的时候继承的是QMainWindow,因此会出现这样的问题。QWeight 实现 show 要在主程序中继承 QFrameQMainWindow 实现 show 则在主程序中继承 QMainWindow.修改继承关系后,就可以拖拽啦!参考:https://segmentfault.com/q/1010000022852958?utm_source=tag-newe
2021-07-11 23:54:25
1556
3
翻译 小波怎么选?——看图选
小波分析有两种类型:连续小波和多分辨率小波。哪种小波分析最适合您的工作取决于您想对数据做什么。本主题主要关注一维数据,但是您可以将相同的原则应用于二维数据。1. 时频分析:如果你的目标是执行一个详细的时频分析,选择连续小波变换(CWT)。在实现方面,CWT比离散小波变换(DWT)更精细地离散尺度。有关更多信息,请参阅连续和离散小波变换。1.1 瞬时频率对于瞬时频率增长较快的信号,连续小波变换优于短时傅里叶变换(STFT)。在下图中,双曲调频的瞬时频率在谱图和cwt衍生的尺度图中被绘制为虚线。1.
2021-06-28 21:38:32
8710
1
原创 pyqt显示图片的两种方法
方法一:利用QLabelimport sysfrom PyQt5.QtWidgets import (QWidget, QHBoxLayout, QLabel, QApplication)from PyQt5.QtGui import QPixmapclass Example (QWidget): def __init__(self): super ().__init__() self.initUI () def initUI(self):
2021-06-24 10:08:34
31038
6
原创 split 到底怎么用?按顺序读文件列表的那些坑!!——python
一、主要内容1、split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list)2、举例二、函数介绍1、split()函数语法:str.split(str="",num=string.count(str))[n]参数说明:str: 表示为分隔符,默认为空格,但是不能为空(’’)。若字符串中没有分隔符,则把整个字符串作为列表的一个元素,如文件中常见的’.’, ‘_’,’+'等。num:表示分割次数。等于分隔符的数量。[n]: 表示选取第n个分片注意:
2021-06-20 21:09:05
1368
原创 python 无迹卡尔曼(filterpy.kalman.UnscentedKalmanFilter)调参
python 无迹卡尔曼(filterpy.kalman)调参1. filter.kalman.MerweScaledSigmaPoints,Van der Merwe式sigma点选择,UT变换最好用的sigma点选择算法input:n :状态维度alpha :均值附近sigma点的分布,通常选0.1~1之间。调节中心点与周围点的权重。beta :由先验知识,高斯分布选2。kappa :k = 3-noutput:Wm :sigma点均值的权重Wc :sigma点协方差的权重可以看到,
2021-05-20 09:35:42
4924
1
原创 2021-04-25
关于pycharm社区版不能使用jupyter notebook的问题两步走第一步:pip install jupyter看到很多文章说pycharm新建就有jupyter notebook格式的文件,但是我这个社区版没有显示。emmm,现在使用jupyter的办法还是用网页打开咯。ps:喜欢pycharm,打死不装anaconda。第二步:在有.ipynb的文件地址栏敲cmd,弹出管理员界面,输入 jupyter notebook 就在默认浏览器打开当前目录下的文件列表了。...
2021-04-25 15:12:22
1374
2
空空如也
在圆图片中,以任意角度选择直线并返回圆上的点的值
2022-01-11
TA创建的收藏夹 TA关注的收藏夹
TA关注的人