自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++多态及继承访问关系示例

c++多态及继承访问关系示例

2024-03-10 22:13:00 378

原创 冒泡、选择、插入、希尔、快速排序(python)

'''选择排序'''def choose(nums): for i in range(len(nums)): for j in range(i + 1, len(nums)): if nums[i]>nums[j]: nums[i],nums[j]=nums[j],nums[i] print(nums)choose([5,7,11,15,3,2,8,33,0,7,4])'''冒泡排序'''def p

2022-01-09 20:57:52 431

原创 算法时间复杂度计算

算法时间复杂度

2022-01-05 19:54:18 1320

原创 Keras框架简单搭建minst数据集训练模型

需要的包为keras,环境搭建:conda create -n keras python=3.8 使用conda命令创建新环境,前提是有anaconda这个软件。activate keras 激活环境conda install tensorflow 因为keras是基于tensorflow的,所以需要先下载tansorflow 默认最新CPU版本conda install keras 安装keras如果报各种环境错误,建议新建环境运行。因为有时用pip安装,有时用conda安装,很容易

2021-06-28 16:15:00 434

原创 图像平滑:导向滤波(python程序)

import numpy as npfrom scipy import signalimport cv2import randomimport pinghua_zhongzhi ##用于向图像加入噪声def guideFilter(I, p, winSize, eps, s): #导向滤波 # 输入图像的高、宽 h, w = I.shape[:2] # 缩小图像 size = (int(round(w * s)), int(round(h * s))) s

2021-05-23 19:22:32 762

原创 图像平滑:双边滤波(python程序)

import numpy as npfrom scipy import signalimport cv2import randomimport math#双边滤波def getClosenessWeight(sigma_g,H,W): r,c=np.mgrid[0:H:1,0:W:1] r -= (H - 1) // 2 c -= int(W - 1) // 2 closeWeight=np.exp(-0.5*(np.power(r,2)+np.power(c

2021-05-23 18:45:37 1871 1

原创 图像增强:全局直方图均衡化与限制对比度自适应直方图均衡化(python程序)

主要分四个步骤:计算图像的灰度直方图计算灰度直方图的累加直方图根据累加直方图和直方图均衡化原理得到输入灰度级和输出灰度级之间的映射关系根据第三步得到的灰度级映射关系,循环得到输出图像的每一个像素的灰度级import cv2import numpy as npimport sysimport matplotlib.pyplot as pltimport mathimport zengqiang_huidu#全局直方图均衡化,无参数def equalHist(image):

2021-05-23 09:49:48 1454 5

原创 图像增强:伽马变换(python程序)

import cv2import numpy as npimport sysimport matplotlib.pyplot as plt#伽马变换,有参数,利用幂函数运算def gamma_bianhuan(image,gamma): image=image/255.0 New=np.power(image,gamma) return Newif __name__=='__main__': ##启动语句 a= cv2.imread('D:/2.png'

2021-05-22 22:21:39 4954 3

原创 图像增强:直方图均衡化(python程序)

import cv2import numpy as npimport sysimport matplotlib.pyplot as pltdef zhifangtu_zhengguihua(image,a): Imax=np.max(image) Imin=np.min(image) #要输出的最大最小灰度值 Omin,Omax=0,255 a=float(Omax-Omin)/(Imax-Imin) b=Omin-a*Imin O=a*i

2021-05-22 21:46:41 407

原创 图像增强:线性变换(python程序)

首先将整个图像的蓝,绿,红三个通道的灰度值读取出来,线性变换参数取2,即整体每个像素点值*2,大于255就按255算。import cv2import numpy as npimport sysimport matplotlib.pyplot as pltdef xianxing(image,a): image=float(a)*image image[image>255]=255 #数据类型转换 image=np.round(image)#四舍五入

2021-05-22 20:57:32 1547

原创 画彩色图像各通道灰度直方图(python)

画彩色图像灰度直方图,图片放在D盘根目录下,没有直接使用hist函数,使用numpy数组自己计算的,加深理解。import cv2import numpy as npimport sysimport matplotlib.pyplot as pltdef calcGrayHist(image): #获得灰度图像矩阵的高、宽 rows,cols=image.shape #储存 grayHist=np.zeros([256],np.uint64) for r

2021-05-22 20:22:38 759

原创 numpy.core._exceptions.UFuncTypeError: ufunc ‘add‘ did not contain a loop with signature matching ty

numpy数组抛出异常:numpy.core._exceptions.UFuncTypeError: ufunc ‘add’ did not contain a loop with signature matching types (dtype(’<U32’), dtype(’<U32’)) -> dtype(’<U32’)我把excel表格读进numpy数组,excel中即有字符串类型数据,又有数值类型数据,读到numpy之后,numpy默认都是str类型,所以,就不能直接对nu

2021-05-21 19:44:21 10678

原创 逼近理想解法TOPSIS(python程序)

逼近理想解排序法,也称优劣解距离法,是多目标决策分析中一种常用的距离综合评价方法。基本思想是定义决策问题的理想解和负理想解,根据有限个评价对象与理想解的接近程度进行排序,找到最优方案。正负理想解是一个方案集中并不存在的虚拟最佳、最劣方案。它的每个属性值都是决策矩阵中该属性的最好的值、最坏的值。将每个方案分别与最优、最劣理想解计算欧式距离,并进一步可计算出对方案的最终排序。基本步骤:确定指标体系,构造评估矩阵。无量纲化评估矩阵。构造加权评估矩阵(可有可无)。确定正理想解、负理想解。

2021-04-27 19:13:58 2882

原创 python操作excel(读取、写入)

使用的库有:import xlrd # 读取excel数据import numpy as np #使用np计算数据import math #数学方法,开方,乘方等import xlwt ##向excel写入数据, 只能写入新创建的xls表(xlsx不行)import xlsxwriter ##可以写入xlsxfrom xlutils.copy import copy #可以写入现有的excel表代码:import xlrd # 导入库,读取数据import numpy as

2021-04-18 19:06:11 568 1

原创 pyqt+cv2实现彩色图像、灰度图像的读取、显示与保存(超详细)

大致实现是,用cv2读取一张彩色图片,获取蓝色通道灰度图,将彩色图片和蓝色图片显示在pyqt上,最后将灰度图保存到电脑。界面设计的代码不放了,直接放主要代码。用对话框打开图片,路径不能有中文: image,_=QFileDialog.getOpenFileName(self,'打开文件','.','图像文件(*.jpg *.png)')#第三个参数是默认路径,第四个参数是打开哪一类图像现在image中是图片的路径 a = cv2.imread(image) # 路径名中不能有中文,会出错,cv

2021-03-20 16:35:47 7728 4

原创 Pyqt文件对话框QFileDialog打开图像文件、text文件

'''QFileDialog 文件对话框:图像文件,文本文件'''import sysfrom PyQt5.QtCore import *from PyQt5.QtWidgets import *from PyQt5.QtGui import *class QDialogDemo(QWidget): def __init__(self): super().__init__()##继承父类构造函数 self.initUI()#初始化UI def

2021-03-03 18:53:22 843 2

原创 Pyqt文字对话框QFontDialog和颜色对话框QColorDialog

'''对话框:QDialogQMessageBox 消息对话框QColorDialog 颜色对话框QFileDialog 文件对话框QFontDialog 文字对话框QInputDialog 获取用户输入信息对话框以下为文字对话框QFontDialog 和 颜色对话框QColorDialog'''import sysfrom PyQt5.QtWidgets import QApplicationfrom PyQt5.QtWidgets import QVBoxLayout,QPus

2021-03-03 18:03:08 317 2

原创 pyqt输入信息对话框QInputDialog用法

'''对话框:QDialogQMessageBox 消息对话框QColorDialog 颜色对话框QFileDialog 文件对话框QFontDialog 文字对话框QInputDialog 获取用户输入信息对话框pyqt 中的几种窗口QMainWindow 有菜单 主窗口QWidget 有菜单QDialog 对话框,无菜单点击button显示对话框,以下是QInputDialog对话框方法:QInputDialog.getItem用来显示输入列表或元组

2021-03-03 17:30:48 1252 1

原创 pyqt对话框(QDialog及QMessageBox消息对话框)

'''对话框:QDialogQMessageBox 消息对话框QColorDialog 颜色对话框QFileDialog 文件对话框QFontDialog 文字对话框QInputDialog 获取用户输入信息对话框ptqt 中的几种窗口QMainWindow 有菜单 主窗口QWidget 有菜单QDialog 对话框,无菜单点击button显示对话框,以下是QDialog对话框,和 5种QMessageBox 消息对话框'''import sysfrom

2021-03-03 16:28:25 812 1

原创 python柱状图(双柱子,可调在横坐标上位置,横纵坐标名称及刻度,图例,数据标签显示及位置)

import numpy as npimport matplotlib.pyplot as pltif __name__ == "__main__": x4=np.array([1,2,3,4]) x5 = np.array([1, 2, 3, 4,5])# x4和x5用来调整柱子位置,和显示横坐标刻度 y1=np.array([2,8,3,3]) #柱一数据 y2 = np.array([5,5,6,3]) #柱二数据 plt.rcParams['font

2021-03-02 22:39:10 6057

原创 python折线图(使用matplotlib,双曲线,图例,中文数据标签)

import numpy as npimport matplotlib.pyplot as pltif __name__ == "__main__": x1=["目标一","目标二","目标四","目标五","目标六","目标三","目标七"] ##融合 x2=["目标一","目标二","目标五","目标六","目标四","目标三","目标七"] ##TOPSIS x4=[1,2,3,4,5,6,7] y1=np.array([0.3220,0.2000,0.145

2021-03-02 22:21:44 8522

原创 python随机数生成(使用numpy)

1.使用randint生成随机数import numpy as np###使用numpy生成随机数:randintA=np.random.randint(0, 10) # [0, 10)之间的随机数print("A",A)B=np.random.randint(0, 10, 10) ##0-10之间随机数,10个print("B",B)C=np.random.randint(0, 2, 10) ##0-2之间的随机数,10个print("C",C)D=np.random.r

2021-01-13 19:20:46 2280

原创 使用numpy生成数组

import numpy as np##以下为numpy用法1.使用array生成数组####使用array生成数组Lnp=np.array([i for i in range(10)]) ###生成0,1,2,3,4,5,6,7,8,9的numpy数组Lnp[5]=100 ##对固定位置赋值print("Lnp",Lnp)输出:Lnp [ 0 1 2 3 4 100 6 7 8 9]2.

2021-01-12 21:23:02 2340

原创 c++命名空间的理解与使用using namespace std

C++名称空间的支持是一项C++的特性,当需要组合几个代码且他们还包含相同名称函数时,命名空间就派上用场了,可以将相同的函数封装在不同的命名空间中,这样就可以通过命名空间来指定想要的函数。按照这种方式,类、函数、变量变是C++编译器的标准组件,都装在名为std的命名空间中。第一种使用方法:#include <iostream>int main(){//第一种:使用using namespace std语句using namespace std;cout << "Com

2020-12-18 16:47:13 917 1

原创 支持向量机原理(超详细)

支持向量机(SVM)是机器学习算法之一,是二分类算法。给定一组训练样本集,如图,样本数据集是二维的,分散在平面上,需要找到一条直线将数据集分割开。可以分开的直线有很多,我们要找到其中泛化能力最好,鲁棒性最强的直线。这是在平面上的点,如果是在三维空间中,则需要找到一个平面;如果是超过三维以上的维数,则需要找到一个超平面。超平面的表达式为:原理举例:wT取(w1,w2),x取(x1,x2)T, 则原式得 w1x1+w2x2+b=0 与传统直线 Ax+By+c=0 方程式相同,由二维三维空间推到

2020-08-27 23:46:40 44279 6

原创 OpenCV-均值平滑(python)

均值平滑,卷积核里每个值都是一样的,且相加为1。假如说一个3*3的卷积核,那么每个元素为1/9。不用opencv自带的函数的话,要先求出积分后的图像值,再与卷积核所在的对应位置进行卷积计算,代码如下,如果用opencv自带函数其实只需要一句话,倒数第七行的 b=cv2.blur(blue,(5,5)) 这句,自己编一下有助于理解。import cv2import numpy as npdef integral(image): ##对图像进行积分运算 rows,cols=image.s

2020-08-15 00:14:31 1612

原创 OpenCV-高斯平滑(python)

使用高斯平滑对图像进行平滑处理,把包导入,图片路径换了就可以运次,高斯平滑大概原理就是连续函数离散化,用二项分布去近似高斯函数,高斯核是可分离的所以就行和列分开卷积,图像多且大时,分开卷积可以降低时间复杂度。import cv2import numpy as npfrom scipy import signal ## 科学计算包#参数分别为:图像,方差,卷积核高,卷积核宽,边界填充方式,填充常数def gaussBlur(image,sigma,H,W,_boundary='fill',_f

2020-08-13 23:53:01 1465

原创 Matlab进行彩色图像直方图匹配(不用histeq函数)

用matlab进行彩色图像直方图匹配,基本原理是分别对RGB三个通道进行直方图匹配,最后合成一张图。涉及到的数学知识有概率密度,分布函数,频数等,因为是对离散数据进行操作,所以都比较简单。下面是代码,没有用histeq均衡函数、概率密度等现成函数,纯手造,如果用的话只需要二十几行吧,给有需要的伙伴们参考。%彩色图直方图匹配matlabclcclear allclose allim = imread('d:\2.png');im1=im(:,:,1);im2=im(:,:,2);im3=im(

2020-08-02 15:45:51 3483

原创 opencv+python实现图像仿射变换(注释全)

用的是cv2.getAffineTransform这个函数实现`from matplotlib import pyplot as pltimport cv2import numpy as npimg=cv2.imread(‘E:/cat.jpg’) #路径名中不能有中文,会出错s=img.sizeprint(img.shape) #输出三维向量(500,500,3)p1 = np.float32([[50,50],[200,50],[50,200]]) #变

2020-05-26 23:09:16 975

原创 用EM算法进行简单贝叶斯网络的参数学习(python程序)

用EM算法进行贝叶斯网络的条件参数学习,建立一个简单的网络,网络来源西瓜书,我把模型简化了,只有3个特征。其中色泽属性可取值为青绿1,乌黑2,浅白3;根蒂取值为蜷缩1,稍蜷2,硬挺3;敲声浊响1,沉闷2,清脆3;好瓜1,坏瓜2;数字是为了输入样本数据用的。现在用EM算法进行网络的条件参数学习,先简单介绍一下EM算法。概念:EM算法即最大期望算法,是一类通过迭代进行极大似然估计的优化算法,用于对包含隐变量或缺失数据的概率模型进行参数估计。与极大似然估计关系:极大似然估计是对服从已知分布的未知参数

2020-05-11 23:22:59 4162 6

原创 VS2017用pip导入python的第三方类库出现socket.timeout: The read operation timed out超时问题

直接用pip的话,它是从国外网站下载的,由于防火墙等等原因下载的回很慢,或者干脆下载不下来,我们换个下载地址,用清华大学的镜像类库。操作如下,右击项目解决方案下的Python环境点击查看所有python环境选择概述这项,然后点击在PowerShell中打开,出现如下窗口在后面输入pip install -i https://pypi.tuna.tsinghua.edu.cn/simpl...

2020-04-13 23:28:33 415

原创 从贝叶斯定理到模糊动态贝叶斯网络

从贝叶斯定理到模糊贝叶斯动态网络贝叶斯定理公式:p(c)为类先验概率p(x|c)为样本x相对于类别c的条件概率p(x)用于归一化的证据因子,对给定样本x,与类别无关p(c|x)即后验概率,我们想要求得的概率从贝叶斯定理到朴素贝叶斯分类器:由上面贝叶斯定理公式来估计后验概率的主要困难在于:类条件概率 是所有属性上的联合概率,难以从有限的训练样本中直接估计而得...

2020-03-12 16:12:43 6687 3

原创 单链表结构实现增删查以及合并功能

数据结构链表结构,实现增删查以及两个链表合并功能,VC++环境,直接复制粘贴就能运行。#include<stdio.h>#include<stdlib.h>#define ERROR 0#define OK 1typedef int status;typedef int ElemType;typedef struct Node{ ElemType...

2019-11-04 20:39:50 176

原创 用java写计算器(包括保存记录到文件和计算行列式功能)

这个计算器是我上大二java课时写的程序设计,现在已经研一啦。记得当时可是写了好多天呢,以前不懂起名的讲究,大多用的都是ABCD代替,大家凑合看看,可以作为java课程设计的参考,主要有三个界面,主界面是A类,保存计算记录是B类,行列式的计算是C类下面是A类代码及界面图(主界面)。package yuxiaoye;import java.awt.*;import yuxiaoye.B;...

2019-11-04 20:14:26 2552 2

原创 Visual Studio运行c#程序出现权限问题

今天调试c#项目时,报错显示无法访问***C:\Users\xiaotuoer\source\repos\WindowsFormsApp2\WindowsFormsApp2\bin\Debug下的WindowsFormsApp2.exe程序,我手动点击这个exe程序也无法打开,需要具备管理员权限。尝试了网上各种更改权限的办法无果,经过三个小时的各种实验。。。。发现是WindowsFormsApp...

2019-10-09 19:29:44 491

空空如也

空空如也

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

TA关注的人

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