美文网首页
matlab基础常用代码

matlab基础常用代码

作者: 乌龟小姐姐 | 来源:发表于2020-10-23 16:18 被阅读0次

    可参考https://blog.csdn.net/m0_37402140/article/details/78107719

    读图 I=imread('1.png')

    灰度化 X=rgb2gray(I)

    输出直方图imhist(I)

    im2bw函数(将灰度图像转换为二值图像)

    imshow(I)显示图像;

    disp()直接在命令行输出

    IndMin=find(diff(sign(diff(h)))>0)+1;波谷的位置

    [C,index] = max(A):返回返回行向量C和index,C向量记录矩阵A每列的最大值,index记录A每列最大值的行号(即每列最大值的索引)

    参考https://www.cnblogs.com/shuqingstudy/p/5079716.html

    graythresh(image)使用最大类间方差法找到图片的一个合适的阈值(threshold),再利用im2bw(将灰度图像转换为二值图像)函数,将找到的阈值输入,就可以把原图变为一个二值图

    参考 https://blog.csdn.net/leichaoaizhaojie/article/details/52589123

    中值滤波medfilt2 参考https://blog.csdn.net/Pxzly1117/article/details/79201772

    重点研究findpeaks函数 /还需要再理解

    Fs=1;%采样频率
    MinPeakProminence=max(data)/4;%峰最小突起幅度门限
    threshold=0;%峰值点与邻近点比较门限
    MinPeakHeight=max(data)/5;%最小峰高度门限
    MinPeakDistance=600/Fs;%最小峰间距门限
    nPeaks=6;%最多找nPeaks个峰
    sortstr='none';%结果排序
    Annotate='extents';%丰富的输出
    %峰宽度计算标准,halfprom:半突起幅度宽;halfheight:半高宽
    WidthReference='halfprom';
    findpeaks(data,Fs,'MinPeakProminence',MinPeakProminence,...
    'threshold',threshold,'MinPeakHeight',MinPeakHeight,...
    'MinPeakDistance',MinPeakDistance,'npeaks',nPeaks,...
    'sortstr',sortstr,...
    'Annotate',Annotate,'WidthReference',WidthReference);
    

    缺点:只有波峰没有波谷
    IndMin=find(diff(sign(diff(data)))>0)+1;
    IndMax=find(diff(sign(diff(data)))<0)+1;
    其中的,
    IndMin, data(IndMin)对应的是波谷点的数据
    IndMax,data(IndMax)对应的是波峰点的数据

    abs()求绝对值
    round()四舍五入

    相关文章

      网友评论

          本文标题:matlab基础常用代码

          本文链接:https://www.haomeiwen.com/subject/trwvmktx.html