PKU-Millimeter-Wave-Radar-T.../雷达点云处理流程仿真/peakSearch.m
2024-03-11 20:52:29 +08:00

31 lines
1.1 KiB
Matlab

%% 寻找峰值
function [RD_pearkSearch,peakSearchList] = peakSearch(RD_cfar,cfarTargetList)
peakSearchList = [];
[rangeLen, dopplerLen] = size(RD_cfar);
RD_pearkSearch = zeros(rangeLen, dopplerLen);
length = size(cfarTargetList,2);
for targetIdx = 1:length
rangeIdx = cfarTargetList(1,targetIdx);
dopplerIdx = cfarTargetList(2,targetIdx); %坐标
if rangeIdx > 1 && rangeIdx < rangeLen && dopplerIdx > 1 && dopplerIdx < dopplerLen %边界点不考虑
if RD_cfar(rangeIdx,dopplerIdx) > RD_cfar(rangeIdx - 1,dopplerIdx) && ...
RD_cfar(rangeIdx,dopplerIdx) > RD_cfar(rangeIdx + 1,dopplerIdx) && ...
RD_cfar(rangeIdx,dopplerIdx) > RD_cfar(rangeIdx,dopplerIdx - 1) && ...
RD_cfar(rangeIdx,dopplerIdx) > RD_cfar(rangeIdx,dopplerIdx + 1)
RD_pearkSearch(rangeIdx,dopplerIdx) = RD_cfar(rangeIdx,dopplerIdx);
cfarTarget = [rangeIdx ; dopplerIdx];
peakSearchList = [peakSearchList cfarTarget];
end
end
end
end