Matlab 如何在二值图像中找到峰值
我有这个二值图像,我想用findpeaks函数找到峰值 我该怎么做呢。你不能用图像 但是,您可以提取图像中绘制的数据,并对其应用Matlab 如何在二值图像中找到峰值,matlab,image-processing,Matlab,Image Processing,我有这个二值图像,我想用findpeaks函数找到峰值 我该怎么做呢。你不能用图像 但是,您可以提取图像中绘制的数据,并对其应用findpeaks。为了提取数据,我们首先设置阈值,以避免JPEG压缩在图像中引入很低的灰度值。此阈值导致图像仅具有0和1值。接下来,我们使用查找每列中包含1值的第一个索引。因为图像的原点在左上角,而不是打印数据使用的左下角,所以我们反转这些索引 a=imread('https://i.stack.imgur.com/Q1f5L.jpg'); a=a>30;%一些合适的
findpeaks
。为了提取数据,我们首先设置阈值,以避免JPEG压缩在图像中引入很低的灰度值。此阈值导致图像仅具有0和1值。接下来,我们使用查找每列中包含1值的第一个索引。因为图像的原点在左上角,而不是打印数据使用的左下角,所以我们反转这些索引
a=imread('https://i.stack.imgur.com/Q1f5L.jpg');
a=a>30;%一些合适的阈值——JPEG压缩使这成为必要
a(结束:)=1;
[~,b]=max(a,[],1);
b=尺寸(a,1)-b;%相反,原点位于图像的底部
[c,d]=FindPeak(b);
地块(b)
等等
图(d、c、o)
轴相等
xlim([0,大小(a,2)])
ylim([0,大小(a,1)])
您的意思是要提取此处绘制的1D信号,然后应用
FindPeak
?