提取峰值

2024-02-24 13:48
文章标签 提取 峰值

本文主要是介绍提取峰值,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

郁闷了好几天,怎样求峰值呢,
昨天回去的路上才子说:可以用三个点。
晕,突然想到啦,这么弱智的问题居然困扰了我好久。
下面是求峰值的代码,可能有点乱。
求出峰值,下面的步骤就比较简单啦。


a = imread( ' c:oat.png');   % 读入图像
figure,imshow(a);  %显示图像
b
= a(:);
k
= size(b);
%  下述操作可以实现像素的显示
c
= linspace( 0 , 0 , 256 );
for  i = 1 :k
    
for  j = 1 : 256
        
if (b(i) == j)
            c(j)
= c(j) + 1 ;
        
end
    
end
end
%  以下步骤简单实现读取整个图像的峰值点

max
= c( 1 );
maxi
= 0 ;
for  i = 1 : 256
    
if (c(i) > max)
        max
= c(i);
        maxi
= i;
    
end
end
max
maxi




%  下面步骤实现对各个峰值的读取
d
= c;  %作为临时操作数组,以不破坏原数组
emax
= linspace( 0 , 0 , 256 );
emaxi
= linspace( 0 , 0 , 256 );
a
= 1 ;
for  j = 2 : 256
        
if (d(j) > d(j - 1 & d(j) > d(j + 1 ))
            emax(a)
= d(j);
            emaxi(a)
= j;
            d(j)
= d(j - 1 );
            a
= a + 1 ;   %开始没有想明白,用额外的循环变量
        
end
end


%  下面的程序读取四个高峰值,并进行显示
fmax
= linspace( 0 , 0 , 4 );
fmaxi
= linspace( 0 , 0 , 4 );
b
= 1 ;
for  i = 1 : 4
    fmax(b)
= emax( 1 );
    
for  j = 2 : 256
        
if (emax(j) > fmax(b))
            fmax(b)
= emax(j);
            fmaxi(b)
= emaxi(j);
            t
= j;
        
end
    
end
    emax(t)
= 0 ;
    b
= b + 1 ;
end


for  i = 1 : 4
    fmax(i)
    fmaxi(i)
end




 

这篇关于提取峰值的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/742302

相关文章

ROS - C++实现RosBag包回放/提取

文章目录 1. 回放原理2. 回放/提取 多个话题3. 回放/提取数据包,并实时发布 1. 回放原理 #include <ros/ros.h>#include <rosbag/bag.h>#include <std_msgs/String.h>int main(int argc, char** argv){// 初始化ROS节点ros::init(argc, argv,

HalconDotNet中的图像特征与提取详解

文章目录 简介一、边缘特征提取二、角点特征提取三、区域特征提取四、纹理特征提取五、形状特征提取 简介   图像特征提取是图像处理中的一个重要步骤,用于从图像中提取有意义的特征,以便进行进一步的分析和处理。HalconDotNet提供了多种图像特征提取方法,每种方法都有其特定的应用场景和优缺点。 一、边缘特征提取   边缘特征提取是图像处理中最基本的特征提取方法之一,通过检

如何根据相同分隔符提取间隔数据?

最近遇到很多提问怎么提取字符的,而这些问题都有一个相同的特征,就是要提取的内容与内容之间,都有着相同的分隔符。当然,这种问题直接用“数据” →  “分列”功能就可以一步到位实现的,但有人喜欢折腾,而更多的人又非得指定函数公式的方法,或者更多的是要保持数据的同步性。   下面,我们就来讲讲用函数公式应该怎么实现这个提取,首先来个数据和要求,如下图,将 - 号间隔的内容依次提取到右边单元格内:

Java8特性:分组、提取字段、去重、过滤、差集、交集

总结下自己使用过的特性 将对象集合根据某个字段分组 //根据id分组Map<String, List<Bean>> newMap = successCf.stream().collect(Collectors.groupingBy(b -> b.getId().trim())); 获取对象集合里面的某个字段的集合 List<Bean> list = new ArrayList<>

OpenCV结构分析与形状描述符(10)检测并提取轮廓函数findContours()的使用

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C++11 算法描述 在二值图像中查找轮廓。 该函数使用算法 253从二值图像中检索轮廓。轮廓是有用的工具,可用于形状分析和对象检测与识别。参见 OpenCV 示例目录中的 squares.cpp。 findContours 是 OpenCV 库中的一个重要函数

【python 走进pytotch】pytorch实现用Resnet提取特征

无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家。教程不仅是零基础,通俗易懂, 而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。点这里可以跳转到教程。人工智能教程 准备一张图片,pytorch可以方便地实现用预训练的网络提取特征。 下面我们用pytorch提取图片采用预训练网络resnet50,提取图片特征。 # -*- coding: utf-8 -*-import os

mhtml图片提取 百度图片下载

如果你需要找一些图片,可以先去百度一下,待相关网页加载完成后,点击保存,即可得到一个mhtml文件。这个文件里的图片会用base64进行存储,只需要找到他们并转化就可以。目前在美篇之类的网站上效果还一般,需要继续排查问题。 效果 代码 大概分为提取所有base64、转化为图片两步。 import base64from io import BytesIOfrom PIL import

python转换并提取pdf文件中的图片

#安装fitz包pip install pymupdf 脚本如下所示: import fitzimport reimport osimport timeimport sysarguments = sys.argvfor arg in arguments:print(arg)def file_name_list(base_dir):for i, j, k in os.walk(b

如何提取JKS文件的证书和私钥?

文章来源 https://jingyan.baidu.com/article/066074d61de50cc3c21cb0ba.html 验证命令如下: > 生成证书文件:keytool -genkey -alias server_cert -keypass 12345678 -keyalg RSA -keysize 1024 -validity 365-keystore

knime和Python两种解法提取斜杠(/)或反斜杠(\)分隔前后数据

有如下数据,需要对数据处理,输出客户需要的效果。 数据样例:👇 客户想要的效果: 解决办法: 链接: knime和Python两种方式解法提取斜杠(/)或反斜杠(\)分隔前后数据 今天的分享就到这里了。有收获的小伙伴,记得点赞、收藏、分享哦! 如果您对本次分享的内容感兴趣的话,记得关注关注哦!不然下次找不到喽! 关注不迷路哦! “好记性不如烂笔头”,IT小本本 —— 记录I