自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 matlab元胞数组cell添加元素

元胞数组新增元素

2022-12-20 21:42:58 3767 1

原创 matlab子函数示例

matlab子函数

2022-11-01 16:08:18 565

原创 c++动态数组

c++动态数组

2022-09-10 16:30:00 651

原创 图像配准算法中的适应度函数设置

大概有两种方法,一种是基于灰度匹配的用两幅图像的互信息、均方差做适应度函数,第二种是,用优化算法求出单应性矩阵后,然后用两幅图像特征点的匹配个数做适应度函数

2022-05-09 11:28:04 479

原创 surf特征提取 msac算法进行特征点匹配

% clear,clc,close all% img=imread('cqu2.jpg');% imshow(img)% img_gray=rgb2gray(img);% figure,imshow(img_gray)% pts=detectORBFeatures(img_gray);% figure,% imshow(img_gray)% hold on% plot(pts,'showscale',false)clc;clear;close all;% load colorI

2022-03-23 12:31:28 412

转载 ransac和msac算法的区别

RANSAC的cost算法伪代码:count = number of Data Points //粗糙匹配对的组数cost = 0For (n=0; n<count; n++){ cost += Error[n] <= Tolerance?0:1;}MSAC的cost算法伪代码:count = number of Data Points //粗糙匹配对的组数cost = 0For (n=0; n<count; n++){ cost += Error[n] <=

2022-03-23 11:36:43 1142

原创 python读取摄像头的视频并播放

import numpy as npimport cv2#read cameracap = cv2.VideoCapture(0) while(True): # Capture frame-by-frame ret, frame = cap.read() # Our operations on the frame come here gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) # Display t

2022-03-22 12:26:13 5513

原创 pyqt中将lineEdit的值置为特定的值

注意:setText()中的值必须为字符型,如果是数字,则要用方法str()将数字装换成字符型,如果为数字的话程序会报错 def showprint(self): s = self.lineEdit.text() #获取lineedit中的值 print(type(s)) # s=int(s) # print(s) self.lineEdit_2.setText(s) #setText中的值必须为“str”

2022-03-21 14:52:46 2018

原创 pyqt中获取lineEdit文本框中输入的值

pyqt中获取lineEdit文本框中输入的值 def showprint(self): s = self.lineEdit.text() #获取lineedit中的值 print(type(s))

2022-03-21 14:23:46 11028 1

原创 将pyqt5生成的.ui文件转换成.py代码后需要添加的代码

将pyqt5生成的.ui文件转换成.py代码后需要添加的代码if __name__=='__main__': import sys app=QtWidgets.QApplication(sys.argv) MainWindow=QtWidgets.QMainWindow() #创建窗体对象 ui=Ui_Form() #创建pyqt设计的窗体对象 ui.setupUi(MainWindow) #

2022-03-21 13:13:54 925

原创 opencv 中imshow不能显示数据类型为int32的数组?

python中opencv中的imshow函数好像不能显示int32的数组?可以用以下代码来证明,以后用imshow显示图像要注意数组中元素的数据类型import cv2img=cv2.imread('1.1.jpg',0)#从图片中读取的数组的数据类型为uint8,可以用imshow正常显示print(img.dtype)#用np.array()将uint8转换为int32之后,imshow就不能显示此图像img_int32=np.array(img,dtype=np.int32)prin

2022-03-16 11:03:18 5023

原创 opendcv中waitKey()的一个用法(图像循环显示)

实现的功能是循环显示不同阈值下生成的二值图像,范围为[0.255],代码如下:import cv2a=cv2.imread('4.27.png',0)while cv2.waitKey(1)==-1: for i in range(0,255): thresh,b=cv2.threshold(a,i,255,cv2.THRESH_BINARY) cv2.imshow('a',b) cv2.waitKey(1)cv2.destroyAllWin

2022-03-15 14:59:08 271

原创 opencv中没有按下按键就不断循环

代码如下:while cv2.waitkey(1)==-1 #循环的内容cv2.destroyAllWindows()

2022-03-15 12:23:03 2783

原创 numpy中shape的一个容易混淆的地方

shape是在numpy中特有的,以下这种情况要注意import numpy as npa=np.array([1,2])print(a.shape)显示结果为:import numpy as npa=np.array([[1],[2]])print(a.shape)其输出结果为:

2022-03-14 15:57:20 2321

原创 python随机生成彩色图像

利用numpy.random.randint生成随机三维数组,代码如下import numpy as npimport cv2a=np.random.randint(0,256,[768,1366,3],np.uint8)cv2.imshow('a',a)cv2.waitKey()cv2.destroyAllWindows()

2022-03-14 10:49:00 2623

原创 python numpy.reshape的一个特性

将一个数组进行重排的时候,可以用只设置一个轴的尺寸,另一个轴可以负数代替,比如说-1import numpy as npa=np.arange(20).reshape(4,-1)

2022-03-12 21:04:06 745

原创 python强制打印整个数组

注意要导入sys模块import sysnp.set_printoptions(threshold=sys.maxsize)

2022-03-11 11:14:03 1380

原创 python 导入模块

在python导入模块的过程中,拿numpy模块中的pi举例,注意下面的区别import numpyprint(numpy.pi)##############from numpy import piprint(pi)

2022-03-11 10:38:09 359

转载 python numpy判断两个数组相等

地址:https://www.cnblogs.com/Yanjy-OnlyOne/p/13366342.html

2022-03-09 16:25:04 2544

原创 python注意数组赋值的特殊含义

注意python中赋值和传统意义上赋值的区别如果要避免以上情况,最好用以下形式b=a[:]

2022-03-09 14:55:40 262

原创 matlab层次聚类相关解释

包括linkage和cluster链接:https://my.oschina.net/u/4304788/blog/3903952

2022-03-07 11:20:54 236

原创 python读取图片并显示

利用opencv模块读取并显示图像import cv2a=cv2.imread('1.1.jpg')cv2.imshow('flower',a)cv2.waitKey()cv2.destroyAllWindows()

2022-03-07 10:52:44 1279

转载 层次聚类的评价

层次聚类的评价—共性分类相关系数(cophenetic correlation coeffieient,CPCC)一个聚类树的共性分类相关性是指由聚类树得到的共性分类距离与构造树时的原始距离(相异性)之间的线性相关系数,因此它是对聚类树在多大程度上代表了样本之间相异性的度量。MATLAB中,用cohenetic计算该相关系数,输入参数为pdist函数输出的样本对距离向量Y和由linkage函数输出的层次聚类树Z,相关系数越接近于1,说明聚类效果越好。该系数的计算公式为:其中,是Y中样本i和j之间的距

2022-03-05 03:16:06 2387

原创 matlab中k-means算法的实现

载入标准fisher数据集,然后用k均值聚类算法将数据集分成3簇,关键点是利用索引idx查找矩阵x中对应的值,以及plot各项属性的使用clear,clcload fisheririsx=meas(:,[1:3]);[idx,cen]=kmeans(x,3);% silhouette(x,idx)color=['r','g','b'];for i=1:3% kk=x(find(idx==i));plot3(x(idx==i,1),x(idx==i,2),x(idx==i,3),'

2022-03-04 11:07:59 2079

原创 matlab中利用索引找出矩阵想要的值

代码示例如下:idx为索引矩阵,含有1,2,3for i=1:3plot(x(idxi,1),x(idxi,2),x(idx==i,3),)end

2022-03-04 10:53:25 1911

原创 matlab guide数据传递总结

https://www.cnblogs.com/jmliao/p/5628521.html

2022-03-01 15:32:52 240

原创 matlab guide中隐藏坐标轴

方法一:在坐标轴属性栏中将vision 关掉方法二:在xxx_OpeningFcn中输入set(handles.axes1,‘visible’,‘off’)参考链接:https://www.ilovematlab.cn/forum.php?mod=viewthread&tid=270054

2022-03-01 14:10:48 4107

原创 计算图像的质心(重心)

摘自《数字图像处理》,先将所求图像的行列索引[r.c]分别找出来,然后,利用以r和c作为输入的mean函数来计算物体的质心:rbar=mean( r );cbar=mean( c );

2022-02-25 10:34:31 3271

原创 MATLAB中应用于图像的仿射变换

仿射变换的类型如下表所示以函数checkerboard中生成的棋盘图像进行顺时针旋转30°为例注意:imtransform在默认的情况下将输出范围之外的位置全部重为0!代码如下:f=checkerboard(50);%生成棋盘图像angle=pi/6;%设置顺时针旋转角度T=[cos(angle) sin(angle) 0;-sin(angle) cos(angle) 0;0 0 1];%仿射矩阵t1=maketform('affine',T);%根据仿射矩阵创建tform结构g1=imt

2022-01-06 14:06:00 3715

原创 matlab创建匿名函数句柄

MATLAB中创建匿名函数句柄,如下在命令行窗口中输入x=@(a) a^2之后就能在工作区创建一个临时的函数类变量x,如果想使用直接输入x(3),意思是求3的平方

2022-01-06 09:43:04 488

原创 中值滤波器的matlab实现

中值滤波器能够有效降低图像中的椒盐噪声,其中在matlab中可以使用两种方式实现,操作过程如下首先载入没有噪声的待处理图像,a=imread('zl1.tif');a=tofloat(a);%注意要用tofloat将uint8类转换成浮点数,因为在滤波运算中都是以浮点数的形式运算的,如果不转换,可能会造成精度丢失原图如下用imnoise函数加入椒盐噪声b=imnoise(a,'salt $ pepper',0.25);%注意属性选项中即“salt $ pepper”中间有两个空格,0.2

2021-12-20 10:17:53 5832

原创 matlab中动态绘制曲线

此项目实现动态绘制曲线图,这只是其中的一种方法,还有很多其他的方法,代码如下clearclcx=linspace(0,10,100);y=sin(x);for i=1:numel(x)plot(x(1:i),y(1:i),'r')axis([min(x)*(11/10),max(x)*(11/10),min(y)*(11/10),max(y)*(11/10)])hold onpause(0.1)end有两个注意的点:1.matalb坐标轴刻度范围默认是自适应的,所以要根据向量的

2021-12-16 14:42:18 4403

原创 在matlab gui中播放视频的方法

这个项目仅仅作为gui播放视频的验证视频文件前处理:讲要播放的视频用视频剪辑软件调整到合适的时长,注意这个视频的时长不是在gui界面上的播放时长,因为imshow函数会有可观的运行时间,导致在gui中播放的时长要比视频实际时长要长,这个问题暂时还没有找到解决方法首先利用guide把界面画好,如下图所示:注意:要想不在gui界面中隐藏坐标轴,将坐标轴属性中的‘vision’置为‘off’,如下图,然后保存,如下图在按钮的回调函数中写入如下代码:function pushbutton1_Callb

2021-12-16 11:39:05 6941 7

原创 matlab中怎样判断两个数组是否相等

matlab中怎样判断两个数组是否相等?方法一:利用冒号和all函数,例如:all(x(:)== y(: ) )方法二:利用isequal,例如:isequal(x,y)注意:若x=y,未必能保证上式返回真值,因为若矩阵中有nan,而nan~=nan...

2021-12-13 13:54:08 9595

原创 matlab中遍历图片像素点的方法(冒号和reshape的用法)

在for循环中,一般循环条件是形如1:10,是生成的单独的行向量,然后将行向量中的每一个元素赋值给i;如果循环条件是矩阵,那么是把矩阵中的每一列赋值给i,而不是我误认为的把矩阵中的每一个元素赋值给i,要想对矩阵a中的每一个元素进行遍历,可以采用两种方法方法一:for i=(a(:))'%注意a(:)生成的是列向量,不能在循环中进行遍历,所有要加’进行转置,将列向量转换成行向量方法二:for i=reshape(a,1,[])%利用reshape函数将矩阵转换成行向量,将“列参数”设为空值

2021-12-13 11:43:01 2749

原创 matlab 复现文献中的图,用到求解未知数

帮别人做的文献中的程序,原文见[1]. 江岳文与陈晓榕, 风电波动成本分摊方法. 电力自动化设备, 2020.要求根据以下原理作图求等效出力曲线图,如下想到了两种求解思路,第一种求解思路和文献中的图有出入,编程思路是先求出l和pw的值,满足公式(1),然后讲求得的和相除得到比例因子,然后将l中所有的纵坐标除以比例因子,即得到要求得的pw1代码如下第二种思路是严格按照公式(1)和公式(2)中的原来编程,设未知数x,迭代求得pw1的和表达式,然后利用matlab来方程的解,然后将解带入到pw1

2021-11-22 17:30:07 1015

原创 基于元胞自动机的森林火灾matlab模拟

先建立一个300300的矩阵,模拟森林的各种状态,其中矩阵的每个元素有3个状态,分别是0、1、2,其中0代表此处没有树木生长,1代表此处的树木正在燃烧,2代表此处有树木。这个模型的规则是,A、如果矩阵中的一个树木上下左右有燃烧的树木,那么它会被点燃,也就是说如果一个元素的状态为 2,它的“上下左右”相邻的元素中有值为1的话,那么这个元素在下一次的循环中会变成1,;B、如果一个树木正处于燃烧中,那么它会熄灭,也就是说如果一个元素的值为1,那么它在下一次循环中会变成0;C、在没有树的土地上有几率长成

2021-10-02 21:27:23 1557

原创 神经网络中训练数据、验证数据、测试数据三者的含义

训练数据是用来训练神经网络模型的数据,验证数据的作用是在神经网络训练的过程中不断测试模型的误差,验证数据的误差随着神经网络模型训练的次数增加会呈现先减小后增加的数据,所以验证数据的误差会存在一个拐点,当达到这个拐点时停止神经网络的训练,这时得到的神经网络的误差最小。而测试数据就是用来在神经网络训练完毕的时候测试模型的误差的数据。总结至https://www.bilibili.com/video/av97628861/ 中14:30处...

2021-09-10 22:43:21 4290

原创 matlab 《华强买瓜》二值化视频案例

先将视频读入后将每帧进行图像二值化处理,然后在子文件夹下生成二值化之后的图片,代码如下v = VideoReader('f25.mp4');ii = 1;while hasFrame(v) img = readFrame(v); thresh = graythresh(img); %自动确定二值化阈值I2=im2bw(img,thresh); %图像二值化 % filename = ['./jpg/'sprintf('%03d',ii) '.jp

2021-08-13 02:48:50 1038

原创 matlab中缩小图片的两种方式

1、将矩阵的横纵坐标间隔取值,下列代码就将图片分辨率缩小为原来的1/4I1 = I(1:2:end,1:2:end)2、利用自带的imresize将图片A放大m倍,m取值可以是大于1或者小于1B = imresize(A,m)

2021-08-12 22:20:17 5884

空空如也

空空如也

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

TA关注的人

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