DDMA信号处理以及数据处理的流程---随机目标生成

Hello,大家好,我是Xiaojie,好久不见,欢迎大家能够和Xiaojie一起学习毫米波雷达知识,Xiaojie准备连载一个系列的文章---DDMA信号处理以及数据处理的流程,本系列文章将从目标生成、信号仿真、测距、测速、cfar检测、测角、目标聚类、目标跟踪这几个模块逐步介绍,这个系列的文章大约是一个7-8篇左右。

最终效果如下:

整体文件的目录树如下:

本篇文章主要讲的是目标生成的部分。

目标生成部分主要是在targetGenerate目录下实现,按隔随机帧数来生成目标的随机距离、随机速度、随机角度以及随机横向距离。

generateRandFrame.m介绍

generateRandFrame.m文件主要目的是生成随机的帧数,目的是隔多少帧来生成一个新的目标。在下面代码中会在[18,23]中生成一个随机数。

复制代码
%% 获取随机帧数,表征隔几帧生成一个新目标
function frame = generateRandFrame()
    frameMin = 18; %最小帧号
    frameMax = 23; %最大帧号
    %生成随机帧号,范围为[frameMin,frameMax]
    frame = round(rand(1,1)*(frameMax-frameMin))+frameMin; 
end

generateNewTarget.m介绍

generateNewTarget.m文件主要目的是生成一个新的目标,包括是在目标的径向距离、径向速度、角度、横向距离。目标的横向距离 t a r g e t L o targetLo targetLo范围在 [ − 10 , 10 ] [-10,10] [−10,10]中,目标的径向速度 s p e e d I n i t speedInit speedInit范围在 [ − 25 , 25 ] [-25,25] [−25,25]中,目标的径向距离是和径向速度是相关的,当径向速度小于0时,目标径向距离为 125 125 125,当径向速度大于0时,目标径向距离为 2 + a b s ( t a r g e t L o ) 2+abs(targetLo) 2+abs(targetLo),目标角度计算为 a n g l e I n i t = a s i n d ( t a r g e t L o / r a n g e I n i t ) angleInit = asind(targetLo/rangeInit) angleInit=asind(targetLo/rangeInit),最终一个新的目标为 t a r g e t = [ r a n g e I n i t , s p e e d I n i t , a n g l e I n i t , t a r g e t L o ] ; target = [rangeInit, speedInit, angleInit, targetLo]; target=[rangeInit,speedInit,angleInit,targetLo];

复制代码
%% 产生一个新的目标
function target = generateNewTarget()

    loMin = -10; %横距的最小值
    loMax = 10; %横距的最大值
    %随机生成目标的横距,范围为[loMin,loMax]
    targetLo = round(rand(1,1)*(loMax-loMin))-loMax; 
    speedInit = 0; % 目标速度初始化为0
    speedMax = 25; % 目标速度的最大值
    speedMin = -25; % 目标速度的最小值
    % 随机生成目标的速度,范围为[speedMin,speedMax]
    while (speedInit == 0)
        speedInit = round(rand(1,1)*(speedMax-speedMin))-speedMax;
    end
    if speedInit < 0 %目标速度的小于0,目标从远靠近
        rangeInit = 125;
    else
        rangeInit = 2 + abs(targetLo); %目标从近到远
    end
    angleInit = asind(targetLo/rangeInit); %目标角度初始化
    target = [rangeInit, speedInit, angleInit, targetLo]; %目标信息生成
end

targetUpdate.m介绍

随着帧数的变化,目标的径向速度以及角度会发生变化(假设目标的径向速度不变),targetUpdate.m文件主要目的是对生成目标的径向距离以及角度进行更新。

复制代码
%% 目标信息更新
function target = targetUpdate(parameter,target)

    for targetIdx = 1:1:parameter.targetNums
        
        targetRange = target(targetIdx,1); %目标的距离
        targetSpeed = target(targetIdx,2); %目标的速度
        targetLo = target(targetIdx,4); %目标的横距
        targetRange = targetRange + targetSpeed * parameter.frameTime; %目标距离计算
        targetAngle = asind(targetLo/targetRange); %目标角度计算
        target(targetIdx,1) = targetRange; %距离更新
        target(targetIdx,2) = targetSpeed; %速度更新
        target(targetIdx,3) = targetAngle; %角度更新
    end
    
end

generateMovingTarget.m介绍

generateMovingTarget.m是生成移动的目标,当frameNumLoops为0时,会生成新的目标且目标列表更新并生成下次目标生成的随机帧号;且每帧都会进行目标信息更新

复制代码
%% 生成动态目标
function [parameter,target] = generateMovingTarget(parameter,target)
    
    parameter.frameNumLoops = parameter.frameNumLoops - 1; %frameNumLoops
    % 如果frameNumLoops为0,则生成新的目标
    if parameter.frameNumLoops == 0
        newTarget = generateNewTarget(); % 生成新目标
        parameter.targetNums = parameter.targetNums + 1; %目标数增加
        target = [target ; newTarget]; %target更新
        parameter.frameNumLoops = generateRandFrame(); %生成随机帧号
    end
    target = targetUpdate(parameter,target); %目标信息更新

end

至此,本片文章就此结束了。

相关推荐
FPGA_ADDA1 天前
全国产复旦微FMQL100TAI 核心板
fpga开发·信号处理·全国产·fmql100tai·zynq7国产化
初听于你2 天前
深入解析IP, ICMP, OSPF, BGP四大核心网络协议
服务器·网络·网络协议·计算机网络·信息与通信·信号处理
孙同学_4 天前
【Linux篇】信号机制深度剖析:从信号捕捉到SIGCHLD信号处理
linux·信号处理
fie88895 天前
基于循环谱分析的盲源分离信号处理MATLAB
开发语言·matlab·信号处理
WPG大大通6 天前
【经验分享】Genio 520/Genio720未使用引脚处理方法
经验分享·笔记·信号处理·模块测试·usb·功能模块
焦糖码奇朵、6 天前
移动通信网络建设-实验2:5G站点选型与设备部署
网络·数据库·人工智能·5g·信号处理·基带工程
jz_ddk6 天前
[实战] 卡尔曼滤波原理与实现(GITHUB 优秀库解读)
算法·github·信号处理·kalman filter·卡尔曼滤波
这张生成的图像能检测吗10 天前
(论文速读)基于图像堆栈的低频超宽带SAR叶簇隐蔽目标变化检测
图像处理·人工智能·深度学习·机器学习·信号处理·雷达·变化检测
XINVRY-FPGA10 天前
XC7Z020-1CLG484I Xilinx AMD FPGA Zynq-7000 SoC
arm开发·嵌入式硬件·网络协议·fpga开发·硬件工程·信号处理·fpga
Shang1809893572610 天前
T41LQ 一款高性能、低功耗的系统级芯片(SoC) 适用于各种AIoT应用智能安防、智能家居方案优选T41L
人工智能·驱动开发·嵌入式硬件·fpga开发·信息与通信·信号处理·t41lq