Я хочу найти наивысшие точки пика на приведенной ниже гистограмме. Например, как показано на рисунке, я должен выбрать 4 пиковых значения, но я получаю эту 4-х очную информацию после просмотра гистограммы, поэтому мне нужно найти ее по кодированию. Есть ли какой-либо метод или алгоритм для решения этой проблемы?Найти наивысшее неизвестное количество точек пика в Matlab
Если я выбираю вручную, я мог бы решить эту проблему. Тем не менее, я не знаю количество наивысших точек пика. На самом деле основной проблемой является определение порога.
[pks,locs] = findpeaks(difference)
[sortedX,sortingIndices] = sort(difference,'descend');
locsize=size(locs,2);
counter=1;
peak_order=[];
while counter<5
for j=1:locsize
if sortingIndices(counter)==locs(j)
peak_order(counter)=sortingIndices(counter);
counter=counter+1;
end
end
end
sorted_peak_order=sort(peak_order)enter code here
так просто добавить порог нет? – obchardon
сортируйте свой массив, уменьшив размер, затем возьмите первые 4 элемента ... – Hoki
Но проблема в том, что я не знаю значения «4» или любого порогового значения. – user951487