CN106093946A - 一种适用于场面监视雷达的目标凝聚方法及装置 - Google Patents
一种适用于场面监视雷达的目标凝聚方法及装置 Download PDFInfo
- Publication number
- CN106093946A CN106093946A CN201610359146.4A CN201610359146A CN106093946A CN 106093946 A CN106093946 A CN 106093946A CN 201610359146 A CN201610359146 A CN 201610359146A CN 106093946 A CN106093946 A CN 106093946A
- Authority
- CN
- China
- Prior art keywords
- index
- point
- trace set
- pointarray
- mark
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S13/00—Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
- G01S13/88—Radar or analogous systems specially adapted for specific applications
- G01S13/91—Radar or analogous systems specially adapted for specific applications for traffic control
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S13/00—Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
- G01S13/88—Radar or analogous systems specially adapted for specific applications
- G01S13/89—Radar or analogous systems specially adapted for specific applications for mapping or imaging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
Landscapes
- Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Electromagnetism (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Probability & Statistics with Applications (AREA)
- Radar Systems Or Details Thereof (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明涉及雷达数据处理技术,尤其是涉及一种适用于场面监视雷达的目标凝聚方法及装置。本发明针对现有技术存在的问题,提供一种目标凝聚方法及装置。以雷达所在位置为***中心点,雷达威力范围为边界,将管制空间投影为一个直角坐标系平面。首先按一个方向的坐标值将原始点迹集分配到相应的空间单元里,再依次对空间单元进行凝聚处理,得到该方向上的聚类结果,在此基础上,对第一次的聚类结果再进行另一个方向的凝聚处理,便得到了最终的凝聚结果。由于该算法一次凝聚只对一维方向进行线性扫描,优于传统的考虑两个维度的算法,故而称为降维算法。另外,由于不用计算任意两点间的距离,它的算法时间复杂度是线性的,因此效率很高。
Description
技术领域
本发明涉及雷达数据处理技术,尤其是涉及一种适用于场面监视雷达的目标凝聚方法及装置。
背景技术
场面监视雷达用来监视机场地面交通状况,以实现对地面航空器和机动车辆的调度,出现危险情况时能及时发出警报。场面监视雷达的功能决定了它的高精度和实时性。距离分辨率达 3米,方位分辨率小于等于0.6°,周期是1秒。雷达扫描飞机、汽车等目标时,录取的目标原始点迹通常存在多个,不同目标的原始点迹数据与虚警混在一起,目标点迹凝聚处理就是把原始点迹数据进行归类,把同一目标产生的点迹数据划为一个集合再进行凝聚处理产生唯一的目标点迹,并剔除杂波残余、干扰或无关紧要的目标引起的点迹,以便后续的航迹处理。场面监视雷达的数据处理流程图如图1所示;
目标凝聚的本质是对雷达扫描视频点进行归类,将属于同一个目标的数据划为一个集合。常用的方法有聚类算法、连通区域标记算法等。
聚类分析是通过将有限未标记数据集分成有限离散“自然”数据集来发现数据的结构信息,是统计模式分类中无监督分类的一个重要分支。聚类分析是按照某个特定标准把一个数据集分成若干个不同的子类,使得在同一类内的样本相似性尽可能的大,不同类的样本差异性也尽可能的大。场面监视雷达***对实时性的要求高。K-均值聚类、模糊聚类,虽然这些聚类算法的聚类效果比较好,但由于需要迭代,计算量很大。
目标凝聚问题还可以转化为二值图像的连通区域标记问题。
二值图像指仅包含背景像素和目标像素的数字图像。对二值图像而言,紧邻的点即认为是连通的。二值图像连通区域标记指将图像中符合某种连通规则的目标像素点用相同的标号表示出来。
到目前为止,常用的连通区域标记方法主要有以下几类:
1)双向反复扫描法:第一次扫描时,将每个目标像素点标记为一个唯一的标号。然后,通过正向和反向扫描标号图像,并在每个像素的邻域内传播最小标号,直到没有标号变化时为止。
2)两次扫描法:第一次扫描时,将临时标号存储在一个与图像大小一样的二维数组中并形成等价对。扫描结束时,通过某种搜索方法合并等价标号;第二次扫描时,用等价标号中最小的标号值赋予所有等价标号对应的像素点。详细的算法描述是:首先对一幅二值图像从左到右、从上到下进行扫描。假如当前像素的灰度值为 0,就移到下一个扫描位置。假如当前像素的灰度值为 1,检查它左、左上、上、右上这 4 个相邻像素。如果上述 4个相邻像素的灰度值都为 0,就给当前像素一个新的标记值。如果 4 个相邻像素中只有一个像素 P 的灰度值为 1,就把 P 像素的标记值赋给当前像素。如果 4 个相邻像素中有 m(1<m<=4)个像素的灰度值为 1,则按照左、左上、上、右上的优先顺序,确定当前像素的标记值。然后对这 m 个像素所拥有的标记值做等价对,并将其归入一个等价对数组中。第一次扫描结束后,所有灰度值为 1 的点都已经被标记过,但有些标记是等价的。整理等价对数组,把等价对整理为等价关系。进行第二次图像扫描,根据整理所得的等价关系来进行重新标记。第二次扫描结束后,所有灰度值为 1 的目标区域都被标记了不同的标记值。
3)区域增长法:依次扫描二值图像的每一个像素点。当找到某个未标记的目标像素点时,将其压入堆栈并从该点开始反复标记其区域,直到堆栈为空。详细的算法描述为:首先,对输入的二值图像施行逐行扫描,找到一个未标记区域的第一点,标记该点。检查该点的八邻域点并标记满足连通性要求的,且尚未被标记的点,同时将新增的标记点记录下来作为“区域增长”的种子点。在后续的标记过程中,不断地从记录种子点的数组中取出一个种子,施行上述操作,如此循环,直到记录种子点的数组为空。一个连通区域标记结束,接着再标记下一个未标记区域,直到输入二值图像的所有连通区域都被标记。
以上几种常用的连通区域标记算法的运行效率不高,双向反复扫描法由于扫描次数过多,导致时间效率不高;区域增长法不但对目标像素需要扫描多次,目标像素点的邻域比较次数也较多,而且需要较多的堆栈操作时间;两次扫描法对于阶梯形的连通区域由于等价对太多而效率很低。其次,这些算法严格地按照行列扫描,不能根据实际情况设置波门,灵活性不大。
发明内容
本发明所要解决的技术问题是:针对现有技术存在的问题,提供一种适用于场面监视雷达的目标凝聚方法及装置。以雷达所在位置为***中心点,雷达威力范围为边界,将管制空间投影为一个直角坐标系平面。然后将X轴从一个方向到相对的另一个方向分为若干个竖直带状空域,作为X方向凝聚的基本单元;再将Y轴从一个方向到相对的另一个方向分为若干效果个水平带状空域,作为Y方向凝聚的基本单元。凝聚处理时,首先将要处理的原始点迹集合投影到***直角坐标系平面,再依次进行单方向的凝聚处理。首先按一个方向的坐标值将原始点迹集分配到相应的空间单元里,再依次对空间单元进行处理,得到该方向上的聚类结果,在此基础上,对第一次的聚类结果再进行另一个方向的凝聚处理(方法一致),便得到了最终的凝聚集合,最后将各个凝聚的点集合加权平均后输出,得到聚类结果。由于该算法一次凝聚只对一维方向进行线性扫描,优于传统的考虑两个维度的算法,故而称为降维算法。另外,由于不用计算任意两点间的距离,它的算法时间复杂度是线性的,因此效率很高。
本发明采用的技术方案如下:
一种适用于场面监视雷达的目标凝聚方法包括:
步骤1:以雷达所在位置为***中心点,雷达威力范围(-MaxRange~MaxRange)为边界,X方向门限值XThreshold为X方向基本单位,Y方向门限值YThreshold为方向基本单元,将管制空间投影为一个直角坐标系平面;将管制空间沿X轴从一个方向到相对的另一个方向划分为2N个竖直带状空域带,作为X方向凝聚的基本单元,其中N=MaxRange/Xthreshold;再将管制空间沿Y轴从一个方向到相对的另一个方向划分为2M个水平带状空域带,作为Y方向凝聚的基本单元,其中M=MaxRange/Ythreshold;
步骤2:获得当前时刻雷达原始点迹,进行杂波处理得到待凝聚原始点迹集合,执行步骤3或步骤6再依次进行单方向的凝聚处理,得到凝聚后的点迹;
步骤3:将待凝聚原始点迹集合投影到直角坐标系平面,对待凝聚原始点迹集合进行X方向凝聚,获得X方向凝聚点迹集合PointSet;每个凝聚点迹集合PointSet以索引index为键值,存储在X方向的凝聚原始点迹集合RawPointSets;index为点集所属X方向空域带索引号;
步骤4:从凝聚原始点迹集合RawPointSets中取一个点迹集合OnePointSet,对其进行Y方向凝聚处理,所述Y方向凝聚处理与X方向凝聚处理方法相同;
对OnePointSet进行Y方向的凝聚处理后,凝聚产生的点迹集合全部加入集合LastPointSets;判断凝聚原始点迹集合RawPointSets的点迹集合是否已经处理完,若凝聚原始点迹集合RawPointSets的点迹集合已经处理完毕,执行步骤5,否则,从RawPointSets中删除该点迹集合OnePointSet,执行步骤4;
步骤5:遍历LastPointSets中的原始点迹集合,计算各集合的质心点,即加权平均值,便得到凝聚后的点迹;
步骤6:将待凝聚原始点迹集合投影到直角坐标系平面,对待凝聚原始点迹集合进行先进行Y方向凝聚,获得Y方向凝聚点迹集合PointSet;每个凝聚点迹集合PointSet以索引index为键值,存储在Y方向的凝聚原始点迹集合RawPointSets;index为点集所属Y方向空域带索引号;
步骤7:从凝聚原始点迹集合RawPointSets中取一个点迹集合OnePointSet,对其进行X方向凝聚处理,所述X方向凝聚处理与Y方向凝聚处理方法相同;
对OnePointSet进行X方向的凝聚处理后,凝聚产生的点迹集合全部加入集合LastPointSets;判断凝聚原始点迹集合RawPointSets的点迹集合是否已经处理完,若凝聚原始点迹集合RawPointSets的点迹集合已经处理完毕,执行步骤8,否则,从RawPointSets中删除该点迹集合OnePointSet,执行步骤7;
步骤8:遍历LastPointSets中的原始点迹集合,计算各集合的质心点,即加权平均值,便得到凝聚后的点迹。
进一步的,所述步骤2中获得当前时刻雷达原始点迹,进行杂波处理得到待凝聚原始点迹集合具体过程是:
步骤21:获得当前时刻雷达原始点迹作为输入;
步骤22:对当前时刻原始点迹进行X方向的凝聚,获得X方向归并点迹集合PointSet,每个点迹集合以X方向索引index为键值,存储在RawPointSets中;
步骤23:获取X方向凝聚后的原始点迹集合RawPointSets;
步骤24:从RawPointSets中取一个点迹集合OnePointSet,准备进行Y方向的凝聚处理;所述Y方向凝聚处理与X方向凝聚处理方法相同;
步骤25:对OnePointSet进行Y方向的凝聚处理,凝聚产生的点迹集合全部加入集合LastPointSets;
步骤26:判断RawPointSets的点迹集合是否已经处理完,若RawPointSets处理完毕,则执行步骤27,否则,执行步骤24;
步骤27:获得归并后的集合LastPointSets;遍历LastPointSets中的原始点迹集合;若该点迹集合中的点迹个数大于门限值iDensity,则将该点迹集合中的点迹加入待凝聚点迹集合;否则,删除该点迹集合。
进一步的,所述步骤3中对待凝聚原始点迹数据进行X方向凝聚,具体过程是:
步骤31:清空AllAarrayMap,获取当前时刻的待凝聚所有原始点迹points并存入数据缓存,得到无序的待凝聚的所有原始点迹points;AllAarrayMap指的是所有点迹集合的映射关系;
步骤32:取points中一个待凝聚原始点迹的point,根据point的极坐标计算笛卡尔坐标,以此便将待凝聚所有原始点迹points投影到直角坐标系平面;根据point的X坐标point.x计算point所属空域带, index=point.x/XThreshold+1;
步骤33:将point存入空域带对应的点迹集合pointArray[index],若当前还没有该点迹集合,则新创建一个;以index为键值,pointArray[index]为值,建立点迹集合的映射关系AllAarrayMap[index,pointArray[index]];若point不是所有原始点迹points中的最后一个点迹,则从points中删除point,执行步骤32;
步骤34:取出AllAarrayMap的键值集合keys,将键值keys中所有index进行升序排列;keys指的是所有index的集合;
步骤35:依次遍历keys,取一个键值index和index的下一个健值next;根据index、next分别取出与其对应的点迹集合pointArray[index]、点迹集合pointArray[next];
步骤36:若pointArray[next].Xmin -pointArray[index].Xmax<Xthreshold,则执行步骤37,否则index=next,执行步骤35;其中pointArray[index].Xmax与pointArray[inext].Xmin分别是pointArray[index]中点迹X坐标最大值和pointArray[next]中点迹X坐标值最小值;
步骤37:将pointArray [next]中的点迹并入pointArray [index]中,并且更新pointArray [index].Ymax=pointArray[next].Ymax,在AllAarrayMap中删除next对应的存储记录;其中pointArray [index].Ymax为pointArray[index]中点迹Y坐标最大值,pointArray[next].Ymax为pointArray [next]中点迹Y坐标值最大值;
步骤38:若next到达keys的最大值,则执行步骤310,否则执行步骤39;
步骤39:next=next+1,跳转到步骤36;
步骤310:按键值keys中index大小进行升序排列,将AllAarrayMap中的点迹集合存入RawPointSets。
进一步的,所述步骤4对待凝聚原始点迹数据进行Y方向凝聚,具体过程是:
步骤41:清空AllAarrayMap,从RawPointSets中取一个点迹集合OnePointSet;AllAarrayMap指的是所有点迹集合的映射关系;
步骤42:取OnePointSet中一个待凝聚原始点迹的point,根据point的Y坐标point.y计算point所属空域带, index=point. Y/Threshold+1;
步骤43:将point存入空域带对应的点迹集合pointArray[index],若当前还没有该点迹集合,则新创建一个;以index为键值,pointArray[index]为值,建立点迹集合的映射关系AllAarrayMap[index,pointArray[index]];若point不是OnePointSet的最后一个点迹,则从OnePointSet删除point,执行步骤42;
步骤44:取出AllAarrayMap的键值集合keys,将键值keys中所有index进行升序排列;keys指的是所有index的集合;
步骤45:依次遍历keys,取一个键值index和index的下一个健值next;根据index、next分别取出与其对应的点迹集合pointArray[index]、点迹集合pointArray[next];
步骤46:若pointArray[next].Ymin- pointArray[index].Ymax<Ythreshold,则执行步骤47,否则,index=next,执行步骤45;其中pointArray[index].Ymax与pointArray[next].Ymin分别是pointArray[index]中点迹Y坐标最大值和pointArray[next]中点迹Y坐标值最小值;
步骤47:将pointArray [next]中的点迹并入pointArray [index]中,并且更新pointArray [index].Ymax=pointArray[next].Ymax,在AllAarrayMap中删除next对应的存储记录(其中pointArray[index].Ymax为pointArray[index]中点迹Y坐标最大值,pointArray[next].Ymax为pointArray [next]中点迹Y坐标值最大值);
步骤48:若next到达keys的最大值,则执行步骤410,否则执行步骤49;
步骤49:next=next+1,跳转到步骤46;
步骤410:按键值keys中index大小进行升序排列,将AllAarrayMap中的点迹集合存入LastPointSets;
步骤411:判断OnePointSet是否已经是凝聚原始点迹集合RawPointSets的最后一个点迹集合,若是,则凝聚原始点迹集合RawPointSets的点迹集合已经处理完毕,执行步骤5,否则,从RawPointSets中删除OnePointSet,执行步骤41。
进一步的,所述步骤5中遍历LastPointSets中的原始点迹集合,计算质心,即加权平均值,得到凝聚后的点,具体过程:
步骤51:获得凝聚后的原始点迹集合LastPointSets;
步骤52:遍历LastPointSets,获得一个原始点迹集合PointSet;
步骤53:计算PointSet中所有原始点迹的质心点pt,pt的坐标值计算公式为:pt的x轴坐标pt.x=∑point.x/M,pt.y=∑point.y/M,M为PointSet中原始点迹个数,质心pt的坐标便是凝聚后的点迹坐标,将pt存入输出点迹缓存MergedPointList;
步骤54:若LastPointSets已经遍历完,则结束,MergedPointList便是凝聚后的点迹集合,否则执行步骤52。
一种适用于场面监视雷达的目标凝聚装置包括:
直角坐标系平面建立模块:以雷达所在位置为***中心点,雷达威力范围(-MaxRange~MaxRange)为边界,X方向门限值XThreshold为X方向基本单位,Y方向门限值YThreshold为Y方向基本单元,将管制空间投影为一个直角坐标系平面;将管制空间沿X轴从一个方向到相对的另一个方向划分为2N个竖直带状空域带,作为X方向凝聚的基本单元,其中N=MaxRange/Xthreshold;再将管制空间沿Y轴从一个方向到相对的另一个方向划分为2M个水平带状空域带,作为Y方向凝聚的基本单元,其中M=MaxRange/Ythreshold。
滤波处理及投影模块:用于获得当前时刻雷达原始点迹,进行杂波处理得到待凝聚原始点迹集合,然后通过X-Y凝聚模块或Y-X凝聚模块处理再依次进行单方向的凝聚处理,得到凝聚后的点迹;
X-Y凝聚模块:用于将待凝聚原始点迹集合投影到直角坐标系平面,对待凝聚原始点迹集合进行X方向凝聚,获得X方向凝聚点迹集合PointSet;每个凝聚点迹集合PointSet以索引index为键值,存储在X方向的凝聚原始点迹集合RawPointSets;index为点集所属X方向空域带索引号;从凝聚原始点迹集合RawPointSets中取一个点迹集合OnePointSet,准备进行Y方向凝聚处理;所述Y方向凝聚处理与X方向凝聚处理方法相同;
然后对OnePointSet进行Y方向的凝聚处理,凝聚产生的点迹集合全部加入集合LastPointSets;判断凝聚原始点迹集合RawPointSets的点迹集合是否已经处理完,若凝聚原始点迹集合RawPointSets的点迹集合已经处理完毕,则遍历LastPointSets中的原始点迹集合,计算质心,即加权平均值,得到凝聚后的原始点;否则,从RawPointSets中取一个点迹集合OnePointSet,准备进行Y方向的凝聚处理。
Y-X凝聚模块:用于将待凝聚原始点迹集合投影到直角坐标系平面,对待凝聚原始点迹集合进行Y方向凝聚,获得Y方向凝聚点迹集合PointSet;每个凝聚点迹集合PointSet以索引index为键值,存储在Y方向的凝聚原始点迹集合RawPointSets;index为点集所属Y方向空域带索引号;从凝聚原始点迹集合RawPointSets中取一个点迹集合OnePointSet,准备进行X方向凝聚处理;所述X方向凝聚处理与Y方向凝聚处理方法相同;然后对OnePointSet进行X方向的凝聚处理,凝聚产生的点迹集合全部加入集合LastPointSets;判断凝聚原始点迹集合RawPointSets的点迹集合是否已经处理完,若凝聚原始点迹集合RawPointSets的点迹集合已经处理完毕,则遍历LastPointSets中的原始点迹集合,计算质心,即加权平均值,得到凝聚后的原始点;否则,从RawPointSets中取一个点迹集合OnePointSet,准备进行Y方向的凝聚处理。
进一步的,所述滤波处理及投影模块获得当前周期雷达原始点迹,进行杂波处理得到待凝聚原始点迹集合,具体包括:
步骤71:获得当前时刻雷达原始点迹作为输入;
步骤72:对当前时刻原始点迹进行Y方向的凝聚,获得Y方向归并点迹集合PointSet,每个点迹集合以Y方向索引index为键值,存储在RawPointSets中;
步骤73:获取Y方向凝聚后的原始点迹集合RawPointSets;
步骤74:从RawPointSets中取一个点迹集合OnePointSet,准备进行Y方向的凝聚处理;所述X方向凝聚处理与Y方向凝聚处理方法相同;
步骤75:对OnePointSet进行X方向的凝聚处理,凝聚产生的点迹集合全部加入集合LastPointSets;
步骤76:判断RawPointSets的点迹集合是否已经处理完,若RawPointSets处理完毕,则执行步骤77,否则,执行步骤74;
步骤77:获得归并后的集合LastPointSets;遍历LastPointSets中的原始点迹集合;若该点迹集合中的点迹个数大于门限值iDensity,则将该点迹集合中的点迹加入待凝聚点迹集合;否则,删除该点迹集合。
进一步的,所述步骤X-Y凝聚模块中对待凝聚原始点迹数据进行Y方向凝聚,具体过程是:
步骤81:清空AllAarrayMap,获取当前时刻的待凝聚所有原始点迹points并存入数据缓存,得到无序的待凝聚的所有原始点迹points;AllAarrayMap指的是所有点迹集合的映射关系;
步骤82:取points中一个待凝聚原始点迹的point,根据point的极坐标计算笛卡尔坐标,以此便将待凝聚所有原始点迹points投影到直角坐标系平面;根据point的Y坐标point.y计算point所属空域带,index=point.y/YThreshold+1;
步骤83:将point存入空域带对应的点迹集合pointArray[index],若当前还没有该点迹集合,则新创建一个;以index为键值,pointArray[index]为值,建立点迹集合的映射关系AllAarrayMap[index,pointArray[index]];若point不是所有原始点迹points中的最后一个点迹,则从points中删除point,执行步骤82;
步骤84:取出AllAarrayMap的键值集合keys,将键值keys中所有index进行升序排列;keys指的是所有index的集合;
步骤85:依次遍历keys,取一个键值index和index的下一个健值next;根据index、next分别取出与其对应的点迹集合pointArray[index]、点迹集合pointArray[next];
步骤86:若pointArray[next].Ymin -pointArray[index].Ymax<Ythreshold,则执行步骤87,否则index=next,执行步骤85;其中pointArray[index].Ymax与pointArray[inext].Ymin分别是pointArray[index]中点迹Y坐标最大值和pointArray[next]中点迹Y坐标值最小值;
步骤87:将pointArray [next]中的点迹并入pointArray [index]中,并且更新pointArray [index].Ymax=pointArray[next].Ymax,在AllAarrayMap中删除next对应的存储记录(其中pointArray [index].Ymax为pointArray[index]中点迹Y坐标最大值,pointArray[next].Ymax为pointArray [next]中点迹Y坐标值最大值);
步骤88:若next到达keys的最大值,则执行步骤810,否则执行步骤89;
步骤89:next=next+1,跳转到步骤36;
步骤810:按键值keys中index大小进行升序排列,将AllAarrayMap中的点迹集合存入RawPointSets。
进一步的,所述X-Y凝聚模块对待凝聚原始点迹数据进行X方向凝聚,具体过程是:
步骤91:清空AllAarrayMap,从RawPointSets中取一个点迹集合OnePointSet;AllAarrayMap指的是所有点迹集合的映射关系;
步骤92:取OnePointSet中一个待凝聚原始点迹的point,根据point的X坐标point.x计算point所属空域带, index=point.x/XThreshold+1;
步骤93:将point存入空域带对应的点迹集合pointArray[index],若当前还没有该点迹集合,则新创建一个;以index为键值,pointArray[index]为值,建立点迹集合的映射关系AllAarrayMap[index,pointArray[index]];若point不是OnePointSet中的最后一个点迹,则从OnePointSet中删除point,执行步骤92;
步骤94:取出AllAarrayMap的键值集合keys,将键值keys中所有index进行升序排列;keys指的是所有index的集合;
步骤95:依次遍历keys,取一个键值index和index的下一个健值next;根据index、next分别取出与其对应的点迹集合pointArray[index]、点迹集合pointArray[next];
步骤96:若pointArray[next].Xmin- pointArray[index].Xmax<Xthreshold,则执行步骤97,否则,index=next,执行步骤95;其中pointArray[index].Xmax与pointArray[next].Xmin分别是pointArray[index]中点迹X坐标最大值和pointArray[next]中点迹X坐标值最小值;
步骤97:将pointArray [next]中的点迹并入pointArray [index]中,并且更新pointArray [index].Xmax=pointArray[next].Xmax,在AllAarrayMap中删除next对应的存储记录(其中pointArray[index].Xmax为pointArray[index]中点迹X坐标最大值,pointArray[next].Xmax为pointArray [next]中点迹X坐标值最大值);
步骤98:若next到达keys的最大值,则执行步骤910,否则执行步骤99;
步骤99:next=next+1,跳转到步骤96;
步骤910:按键值keys中index大小进行升序排列,将AllAarrayMap中的点迹集合存入LastPointSets;
步骤911:判断OnePointSet是否已经是凝聚原始点迹集合RawPointSets的最后一个点迹集合,若是,则凝聚原始点迹集合RawPointSets的点迹集合已经处理完毕,遍历LastPointSets中的原始点迹集合,计算质心,即加权平均值,得到凝聚后的点,否则,从RawPointSets中删除该点迹集合OnePointSet,执行步骤91。
进一步的,所述步骤X-YX-Y凝聚模块中遍历LastPointSets中的原始点迹集合,计算质心,即加权平均值,得到凝聚后的点,具体过程:
步骤101:获得凝聚后的原始点迹集合LastPointSets;
步骤102:遍历LastPointSets,获得一个原始点迹集合PointSet;
步骤103:计算PointSet中所有原始点迹的质心点pt,pt的坐标值计算公式为:pt的x轴坐标pt.x=∑point.x/M,pt.y=∑point.y/M,M为PointSet中原始点迹个数,质心pt的坐标便是凝聚后的点迹坐标,将pt存入输出点迹缓存MergedPointList;
步骤104:若LastPointSets已经遍历完,则结束,MergedPointList便是凝聚后的点迹集合,否则执行步骤102。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
以雷达所在位置为***中心点,雷达威力范围为边界,将管制空间投影为一个直角坐标系平面。然后将X轴从一个方向到相对的另一个方向分为若干个竖直带状空域,作为X方向凝聚的基本单元;再将Y轴从一个方向到相对的另一个方向分为若干个水平带状空域,作为Y方向凝聚的基本单元。凝聚处理时,首先将要处理的原始点迹集合投影到***直角坐标系平面,再依次进行单方向的凝聚处理。首先按一个方向的坐标值将原始点迹集分配到相应的空间单元里,再依次对空间单元进行处理,得到该方向上的聚类结果,在此基础上,对第一次的聚类结果再进行另一个方向的凝聚处理(方法一致),便得到了最终的凝聚集合,最后将各个凝聚的点集合加权平均后输出,得到聚类结果。由于该算法一次凝聚只对一维方向进行线性扫描,优于传统的考虑两个维度的算法,由于该算法一次凝聚只对一维方向进行线性扫描,优于传统的考虑两个维度的算法,故而称为降维算法。另外,由于不用计算任意两点间的距离,它的算法时间复杂度是线性的,因此效率很高。
附图说明
本发明将通过例子并参照附图的方式说明,其中:
图1是现有技术中场面监视雷达的数据处理流程图。
图2是本发明降维聚类算法示意图。
图3是本发明算法流程图。
图4是图3所示实施例步骤302对杂波过滤的流程图。
图5是图3所示实施例步骤303的X方向凝聚流程示意图。
图6a是X轴空域带划分示意图。
图6b是Y轴空域带划分示意图。
图7是图3所示实施例步骤309的示意图。
具体实施方式
本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
本说明书中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
场面监视雷达一般工作于边扫描边跟踪方式,观测的主要对象是机场的运动目标,如飞机和汽车,对这类目标的雷达回波进行检测并形成原始点迹,得到的不是一个而是一组点迹数据,点迹处理就是要对原始点迹数据进行滤除、归并和凝聚,获取表征目标物理位置参数的点迹凝聚估计值,要求一个目标只产生一个精确点迹。点迹数据处理的进一步要求为:抑制虚假点迹,提供目标距离、方位等参数的估值精度,并能有效地把目标点迹与杂波点迹区分开,为后续的航迹跟踪创造一个好的环境。
算法方案如下:以雷达所在位置为***中心点,雷达威力范围为边界,将管制空间投影为一个直角坐标系平面。然后将X轴从一个方向到相对的另一个方向分为若干个竖直带状空域,作为X方向凝聚的基本单元;再将Y轴从一个方向到相对的另一个方向分为若干个水平带状空域,作为Y方向凝聚的基本单元。凝聚处理时,首先将要处理的原始点迹集合投影到***直角坐标系平面,再依次进行单方向的凝聚处理。首先按一个方向的坐标值将原始点迹集分配到相应的空间单元里,再依次对空间单元进行处理,得到该方向上的聚类结果,在此基础上,对第一次的聚类结果再进行另一个方向的凝聚处理(方法一致),便得到了最终的凝聚集合,最后将各个凝聚的点集合加权平均后输出,得到聚类结果。由于该算法一次凝聚只对一维方向进行线性扫描,优于传统的考虑两个维度的算法,故而称为降维算法。另外,由于不用计算任意两点间的距离,它的算法时间复杂度是线性的,因此效率很高。流程图如图2所示。
步骤一、以雷达所在位置为***中心点,雷达威力范围为边界,将管制空间投影为一个直角坐标系平面;
步骤二、将X轴从一个方向到相对的另一个方向分为若干个竖直带状空域,作为X方向凝聚的基本单元;
步骤三、再将Y轴从一个方向到相对的另一个方向分为若干个水平带状空域,作为Y方向凝聚的基本单元;
步骤四、获得当前周期雷达原始点迹数据,将要处理的原始点迹集合投影到***直角坐标系平面,再依次进行单方向的凝聚处理,可以先X方向凝聚处理再Y方向凝聚处理,或先Y方向凝聚处理再X方向凝聚处理,下面以先X方向再Y方向的凝聚处理为例;
步骤五、横向排序:设置 x 方向的波门WaveThreshold _ X ,以波门为标准尺寸将雷达扫描数据按 x 坐标分单元映射存储,序号和存储列表对应;将扫描数据按 x 坐标分成M个小单元,同时记录下每个小单元中 x 坐标的最小值和最大值;
步骤六、横向凝聚:在 x 方向上,比较相邻单元中的 X (i)max 和 X (i +1)min 值,若差值小于门限WaveThreshold _ X,则将后一个单元并入前一个单元,同时删除后一单元,完成横向凝聚;
步骤七、单元内纵向排序:设置y方向的波门大小WaveThreshold _Y ,对横向上的每个单元 X1,X2,……,XM 分别在单元内进行纵向排序。例如,对X1进行纵向排序后,根据 y 坐标将单元分成 N 个集合1Y1,1Y2,……,1YN ,将单元内的点按规则映射到这些小集合。同时记录下每个小集合中 y 坐标的最小值和最大值;
步骤八、单元内纵向凝聚:在 y 方向上,比较相邻单元的Y( j)max 和Y( j +1)min值,若差值小于WaveThreshold _Y 则将两单元合并,即将后一集合并入前一集合,同时删除后一集合,完成某个单元内纵向凝聚后,将集合内的点坐标进行加权平均,统计点个数,如果大于iDensity,则输出加权平均值,否则删除。输出的点进行后续的航迹处理;
步骤九、按照步骤八的方法,依次完成 X1, X 2,……, XM 的单元内纵向凝聚,最后当前周期雷达原始点迹数据的凝聚完成。
由于该算法一次凝聚只对一维方向进行线性扫描,优于传统的考虑两个维度的算法,故而称为降维算法。通过降维来减小运算复杂度,将二维运算转化为一维运算,其次,不用计算任意两点间的距离,因此它的算法时间复杂度是线性的,效率很高。
为了调试方便,可通过设置参数来调整算法的精度和速度,三个最重要的参数是:WaveThreshold _ X、WaveThreshold _Y和iDensity。WaveThreshold _ X 是横向排序和凝聚时的波门大小,WaveThreshold _Y 是单元内纵向排序和凝聚时的波门大小,iDensity是输出点的密度门限。iDensity 为0则输出所有点迹,iDensity 可以认为是过滤杂波点的一个门限。仿真表明,在相同的运行环境下,使用常用的连通区域标记算法,每秒钟只能处理 500 多个目标(包括航迹处理等后续处理),使用降维聚类算法的目标处理能力可达数十万点/秒。
具体实施例:
图3为本发明提供的一种基于双向空域带划分进行快速目标凝聚的的降维聚类算法的实施例流程示意图,包括以下步骤:
步骤301:获得当前时刻待凝聚的原始点迹;
步骤302:杂波过滤,剔除杂波残余、干扰或无关紧要的目标引起的原始点迹;
步骤303:对待凝聚原始点迹进行X方向的凝聚,获得X方向各凝聚点迹集合,每个点迹集合PointSet以索引index(点集所属空域带号)为键值,存储在RawPointSets中;
步骤304:获取X方向凝聚后的原始点迹集合RawPointSets;
步骤305:从RawPointSets中取一个点迹集合OnePointSet,准备进行Y方向的凝聚处理;
步骤306:对OnePointSet进行Y方向的凝聚处理,凝聚产生的点迹集合全部加入集合LastPointSets;
步骤307:判断RawPointSets的点迹集合是否已经处理完,若是,则执行步骤308,否则,执行步骤305;
步骤308:遍历LastPointSets中的原始点迹集合,计算质心,也就是加权平均值,便得到了凝聚后的点。
步骤309:输出凝聚后的点。
图4为图3所示实施例步骤302对杂波过滤的流程图。用于剔除杂波残余、干扰或无关紧要的目标引起的点迹,以免影响后续处理。杂波过滤的算法和点迹凝聚基本一致(详细算法步骤见后文),需要先对当前时刻的原始点迹进行归并,划分为一个个原始点迹集合,区别在于若某个原始点迹集合内的点迹个数小于门限值时,判为杂波,该集合内的原始点迹全被删除掉。杂波处理可根据需要设置杂波过滤需要的参数。
RawPointSets、OnePointSet、LastPointSets均为算法中的临时变量,算法包括以下步骤:
步骤401:当前时刻待凝聚的原始点迹集合作为输入;
步骤402:对待凝聚原始点迹集合进行X方向的归并,获得X方向归并点迹集合PointSet,每个点迹集合以索引index(点集所属空域带号)为键值,存储在RawPointSets中;
步骤403:获取X方向归并后的原始点迹集合RawPointSets;
步骤404:从RawPointSets中取一个点迹集合OnePointSet,准备进行Y方向的归并处理;
步骤405:对OnePointSet进行Y方向的归并处理,方法同步骤402,归并产生的点迹集合全部加入集合LastPointSets;
步骤406:判断RawPointSets是否已经处理完,若是,则执行步骤407,否则,执行步骤404;;
步骤407:获得归并后的集合LastPointSets;
步骤408:遍历LastPointSets中的原始点迹集合;
步骤409:若该点迹集合中的点迹个数大于门限值iDensity,则执行步骤410,否则,执行步骤411;
步骤410:将该点迹集合中的点迹加入待凝聚点迹集合;
步骤411:删除该点迹集合。
图5为图3所示实施例步骤303的流程示意图,对待凝聚原始点迹集合进行X方向的凝聚,Y方向凝聚处理流程相同。包括以下步骤:
步骤501:划分空域带,以雷达所在位置为中心,雷达有效探测范围(-MaxRange~MaxRange)为限,X方向门限值XThreshold为基本单位,将管制空间平面沿X轴划分为若干带状区域,区域数为2N,N=MaxRange/XThreshold,Y方向空域带划分类似,区域数为2M,M=MaxRange/YThreshold,如图6所示;
步骤502:获取当前时刻待凝聚的原始点迹,存入数据缓存;
步骤503:坐标变换,取一个原始点迹point,根据它的极坐标计算笛卡尔坐标;
步骤504:根据point的X坐标计算point所属空域带,空域带索引号为index=point.x/XThreshold+1;
步骤505:将point存入空域带对应的点迹集合pointArray[index],若当前还没有该点迹集合,则新创建一个;
步骤506:以index为键,pointArray[index]为值,建立点迹集合的映射关系AllAarrayMap[index,pointArray[index]],计算pointArray中所有点迹的最小、最大X坐标xmin、xmax;
步骤507:取出AllAarrayMap的键值集合keys,以升序排列;
步骤508:依次遍历keys,取一个键值key和它的下一个键值next,分别取出它们对应的点迹集合X[key]、X[next];
步骤509:判断X[next].xmin-X[key].xmax是否小于门限值Xthreshold,若不是,执行步骤510,若是,执行步骤511;
步骤510:key=next,跳转到步骤508开始执行;
步骤511:将X[next]中的点迹并入X[key]中,并且更新X[key].xmax=X[next].xmax,在AllAarrayMap中删除next对应的存储记录;
步骤512:若next到达keys的末尾,则执行步骤514;
步骤513:next=next+1,跳转到步骤509执行;
步骤514:按键值升序,将AllAarrayMap中的点迹集合存入RawPointSets。
图7为图3所示实施例步骤308的流程示意图,将判断为同一目标的原始点迹合并为一个点迹,包括以下步骤:
步骤701:获得凝聚后的原始点迹集合LastPointSets;
步骤702:遍历LastPointSets,获得一个原始点迹集合PointSet;
步骤703:计算PointSet中原始点迹的质心点pt,pt的坐标值计算公式为:pt.x=∑point.x/N,pt.y=∑point.y/N,N为PointSet中原始点迹个数,pt的坐标便是凝聚后的点迹坐标,将pt存入输出点迹缓存MergedPointList;
步骤704:若LastPointSets已经遍历完,则结束,否则执行步骤702;
本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。
Claims (10)
1.一种适用于场面监视雷达的目标凝聚方法,其特征在于包括:
步骤1:以雷达所在位置为***中心点,雷达威力范围(-MaxRange~MaxRange)为边界,X方向门限值XThreshold为X方向基本单位,Y方向门限值YThreshold为方向基本单元,将管制空间投影为一个直角坐标系平面;将管制空间沿X轴从一个方向到相对的另一个方向划分为2N个竖直带状空域带,作为X方向凝聚的基本单元,其中N=MaxRange/Xthreshold;再将管制空间沿Y轴从一个方向到相对的另一个方向划分为2M个水平带状空域带,作为Y方向凝聚的基本单元,其中M=MaxRange/Ythreshold;
步骤2:获得当前时刻雷达原始点迹,进行杂波处理得到待凝聚原始点迹集合,执行步骤3或步骤6再依次进行单方向的凝聚处理,得到凝聚后的点迹;
步骤3:将待凝聚原始点迹集合投影到直角坐标系平面,对待凝聚原始点迹集合进行X方向凝聚,获得X方向凝聚点迹集合PointSet;每个凝聚点迹集合PointSet以索引index为键值,存储在X方向的凝聚原始点迹集合RawPointSets;index为点集所属X方向空域带索引号;
步骤4:从凝聚原始点迹集合RawPointSets中取一个点迹集合OnePointSet,对其进行Y方向凝聚处理,所述Y方向凝聚处理与X方向凝聚处理方法相同;
对OnePointSet进行Y方向的凝聚处理后,凝聚产生的点迹集合全部加入集合LastPointSets;判断凝聚原始点迹集合RawPointSets的点迹集合是否已经处理完,若凝聚原始点迹集合RawPointSets的点迹集合已经处理完毕,执行步骤5,否则,从RawPointSets中删除该点迹集合OnePointSet,执行步骤4;
步骤5:遍历LastPointSets中的原始点迹集合,计算各集合的质心点,即加权平均值,便得到凝聚后的点迹;
步骤6:将待凝聚原始点迹集合投影到直角坐标系平面,对待凝聚原始点迹集合进行先进行Y方向凝聚,获得Y方向凝聚点迹集合PointSet;每个凝聚点迹集合PointSet以索引index为键值,存储在Y方向的凝聚原始点迹集合RawPointSets;index为点集所属Y方向空域带索引号;
步骤7:从凝聚原始点迹集合RawPointSets中取一个点迹集合OnePointSet,对其进行X方向凝聚处理,所述X方向凝聚处理与Y方向凝聚处理方法相同;
对OnePointSet进行X方向的凝聚处理后,凝聚产生的点迹集合全部加入集合LastPointSets;判断凝聚原始点迹集合RawPointSets的点迹集合是否已经处理完,若凝聚原始点迹集合RawPointSets的点迹集合已经处理完毕,执行步骤8,否则,从RawPointSets中删除该点迹集合OnePointSet,执行步骤7;
步骤8:遍历LastPointSets中的原始点迹集合,计算各集合的质心点,即加权平均值,便得到凝聚后的点迹。
2.根据权利要求1所述的一种适用于场面监视雷达的目标凝聚方法,其特征在于所述步骤2中获得当前时刻雷达原始点迹,进行杂波处理得到待凝聚原始点迹集合具体过程是:
步骤21:获得当前时刻雷达原始点迹作为输入;
步骤22:对当前时刻原始点迹进行X方向的凝聚,获得X方向归并点迹集合PointSet,每个点迹集合以X方向索引index为键值,存储在RawPointSets中;
步骤23:获取X方向凝聚后的原始点迹集合RawPointSets;
步骤24:从RawPointSets中取一个点迹集合OnePointSet,准备进行Y方向的凝聚处理;所述Y方向凝聚处理与X方向凝聚处理方法相同;
步骤25:对OnePointSet进行Y方向的凝聚处理,凝聚产生的点迹集合全部加入集合LastPointSets;
步骤26:判断RawPointSets的点迹集合是否已经处理完,若RawPointSets处理完毕,则执行步骤27,否则,执行步骤24;
步骤27:获得归并后的集合LastPointSets;遍历LastPointSets中的原始点迹集合;若该点迹集合中的点迹个数大于门限值iDensity,则将该点迹集合中的点迹加入待凝聚点迹集合;否则,删除该点迹集合。
3.根据权利要求1所述的一种适用于场面监视雷达的目标凝聚方法,其特征在于所述步骤3中对待凝聚原始点迹数据进行X方向凝聚,具体过程是:
步骤31:清空AllAarrayMap,获取当前时刻的待凝聚所有原始点迹points并存入数据缓存,得到无序的待凝聚的所有原始点迹points;AllAarrayMap指的是所有点迹集合的映射关系,以点迹所属空域带号index为键,位于该空域带的点迹集合为值;
步骤32:取points中一个待凝聚原始点迹的point,根据point的极坐标计算笛卡尔坐标,以此便将待凝聚所有原始点迹points投影到直角坐标系平面;根据point的X坐标point.x计算point所属空域带, index=point.x/XThreshold+1;
步骤33:将point存入空域带对应的点迹集合pointArray[index],若当前还没有该点迹集合,则新创建一个;以index为键值,pointArray[index]为值,建立点迹集合的映射关系AllAarrayMap[index,pointArray[index]];若point不是所有原始点迹points中的最后一个点迹,则从points中删除point,执行步骤32;
步骤34:取出AllAarrayMap的键值集合keys,将键值keys中所有index进行升序排列;keys指的是所有index的集合;
步骤35:依次遍历keys,取一个键值index和index的下一个健值next;根据index、next分别取出与其对应的点迹集合pointArray[index]、点迹集合pointArray[next];
步骤36:若pointArray[next].Xmin -pointArray[index].Xmax<Xthreshold,则执行步骤37,否则index=next,执行步骤35;其中pointArray[index].Xmax与pointArray[inext].Xmin分别是pointArray[index]中点迹X坐标最大值和pointArray[next]中点迹X坐标值最小值;
步骤37:将pointArray [next]中的点迹并入pointArray [index]中,并且更新pointArray [index].Ymax=pointArray[next].Ymax,在AllAarrayMap中删除next对应的存储记录;其中pointArray [index].Ymax为pointArray[index]中点迹Y坐标最大值,pointArray[next].Ymax为pointArray [next]中点迹Y坐标值最大值;
步骤38:若next到达keys的最大值,则执行步骤310,否则执行步骤39;
步骤39:next=next+1,跳转到步骤36;
步骤310:按键值keys中index大小进行升序排列,将AllAarrayMap中的点迹集合存入RawPointSets。
4.根据权利要求1所述的一种适用于场面监视雷达的目标凝聚方法,其特征在于所述步骤4对待凝聚原始点迹数据进行Y方向凝聚,具体过程是:
步骤41:清空AllAarrayMap,从RawPointSets中取一个点迹集合OnePointSet;AllAarrayMap指的是所有点迹集合的映射关系,以点迹所属空域带号index为键,位于该空域带的点迹集合为值;
步骤42:取OnePointSet中一个待凝聚原始点迹的point,根据point的Y坐标point.y计算point所属空域带, index=point.y/YThreshold+1;
步骤43:将point存入空域带对应的点迹集合pointArray[index],若当前还没有该点迹集合,则新创建一个;以index为键值,pointArray[index]为值,建立点迹集合的映射关系AllAarrayMap[index,pointArray[index]];若point不是OnePointSet的最后一个点迹,则从OnePointSet删除point,执行步骤42;
步骤44:取出AllAarrayMap的键值集合keys,将键值keys中所有index进行升序排列;keys指的是所有index的集合;
步骤45:依次遍历keys,取一个键值index和index的下一个健值next;根据index、next分别取出与其对应的点迹集合pointArray[index]、点迹集合pointArray[next];
步骤46:若pointArray[next].Ymin- pointArray[index].Ymax<Ythreshold,则执行步骤47,否则,index=next,执行步骤45;其中pointArray[index].Ymax与pointArray[next].Ymin分别是pointArray[index]中点迹Y坐标最大值和pointArray[next]中点迹Y坐标值最小值;
步骤47:将pointArray [next]中的点迹并入pointArray [index]中,并且更新pointArray [index].Ymax=pointArray[next].Ymax,在AllAarrayMap中删除next对应的存储记录(其中pointArray[index].Ymax为pointArray[index]中点迹Y坐标最大值,pointArray[next].Ymax为pointArray [next]中点迹Y坐标值最大值);
步骤48:若next到达keys的最大值,则执行步骤410,否则执行步骤49;
步骤49:next=next+1,跳转到步骤46;
步骤410:按键值keys中index大小进行升序排列,将AllAarrayMap中的点迹集合存入LastPointSets;
步骤411:判断OnePointSet是否已经是凝聚原始点迹集合RawPointSets的最后一个点迹集合,若是,则凝聚原始点迹集合RawPointSets的点迹集合已经处理完毕,执行步骤5,否则,从RawPointSets中删除OnePointSet,执行步骤41。
5.根据权利要求1所述的一种适用于场面监视雷达的目标凝聚方法,其特征在于所述步骤5中遍历LastPointSets中的原始点迹集合,计算质心,即加权平均值,得到凝聚后的点,具体过程:
步骤51:获得凝聚后的原始点迹集合LastPointSets;
步骤52:遍历LastPointSets,获得一个原始点迹集合PointSet;
步骤53:计算PointSet中所有原始点迹的质心点pt,pt的坐标值计算公式为:pt的x轴坐标pt.x=∑point.x/M,pt.y=∑point.y/M,M为PointSet中原始点迹个数,质心pt的坐标便是凝聚后的点迹坐标,将pt存入输出点迹缓存MergedPointList;
步骤54:若LastPointSets已经遍历完,则结束,MergedPointList便是凝聚后的点迹集合,否则执行步骤52。
6.一种适用于场面监视雷达的目标凝聚装置,其特征在于包括:
直角坐标系平面建立模块:以雷达所在位置为***中心点,雷达威力范围(-MaxRange~MaxRange)为边界,X方向门限值XThreshold为X方向基本单位,Y方向门限值YThreshold为Y方向基本单元,将管制空间投影为一个直角坐标系平面;将管制空间沿X轴从一个方向到相对的另一个方向划分为2N个竖直带状空域带,作为X方向凝聚的基本单元,其中N=MaxRange/Xthreshold;再将管制空间沿Y轴从一个方向到相对的另一个方向划分为2M个水平带状空域带,作为Y方向凝聚的基本单元,其中M=MaxRange/Ythreshold;
滤波处理及投影模块:用于获得当前时刻雷达原始点迹,进行杂波处理得到待凝聚原始点迹集合,然后通过X-Y凝聚模块或Y-X凝聚模块处理再依次进行单方向的凝聚处理,得到凝聚后的点迹;
X-Y凝聚模块:用于将待凝聚原始点迹集合投影到直角坐标系平面,对待凝聚原始点迹集合进行X方向凝聚,获得X方向凝聚点迹集合PointSet;每个凝聚点迹集合PointSet以索引index为键值,存储在X方向的凝聚原始点迹集合RawPointSets;index为点集所属X方向空域带索引号;从凝聚原始点迹集合RawPointSets中取一个点迹集合OnePointSet,准备进行Y方向凝聚处理;所述Y方向凝聚处理与X方向凝聚处理方法相同;
然后对OnePointSet进行Y方向的凝聚处理,凝聚产生的点迹集合全部加入集合LastPointSets;判断凝聚原始点迹集合RawPointSets的点迹集合是否已经处理完,若凝聚原始点迹集合RawPointSets的点迹集合已经处理完毕,则遍历LastPointSets中的原始点迹集合,计算质心,即加权平均值,得到凝聚后的原始点;否则,从RawPointSets中取一个点迹集合OnePointSet,准备进行Y方向的凝聚处理;
Y-X凝聚模块:用于将待凝聚原始点迹集合投影到直角坐标系平面,对待凝聚原始点迹集合进行Y方向凝聚,获得Y方向凝聚点迹集合PointSet;每个凝聚点迹集合PointSet以索引index为键值,存储在Y方向的凝聚原始点迹集合RawPointSets;index为点集所属Y方向空域带索引号;从凝聚原始点迹集合RawPointSets中取一个点迹集合OnePointSet,准备进行X方向凝聚处理;所述X方向凝聚处理与Y方向凝聚处理方法相同;然后对OnePointSet进行X方向的凝聚处理,凝聚产生的点迹集合全部加入集合LastPointSets;判断凝聚原始点迹集合RawPointSets的点迹集合是否已经处理完,若凝聚原始点迹集合RawPointSets的点迹集合已经处理完毕,则遍历LastPointSets中的原始点迹集合,计算质心,即加权平均值,得到凝聚后的原始点;否则,从RawPointSets中取一个点迹集合OnePointSet,准备进行Y方向的凝聚处理。
7.根据权利要求6所述的一种适用于场面监视雷达的目标凝聚装置,其特征在于所述滤波处理及投影模块获得当前周期雷达原始点迹,进行杂波处理得到待凝聚原始点迹集合,具体包括:
步骤71:获得当前时刻雷达原始点迹作为输入;
步骤72:对当前时刻原始点迹进行Y方向的凝聚,获得Y方向归并点迹集合PointSet,每个点迹集合以Y方向索引index为键值,存储在RawPointSets中;
步骤73:获取Y方向凝聚后的原始点迹集合RawPointSets;
步骤74:从RawPointSets中取一个点迹集合OnePointSet,准备进行Y方向的凝聚处理;所述X方向凝聚处理与Y方向凝聚处理方法相同;
步骤75:对OnePointSet进行X方向的凝聚处理,凝聚产生的点迹集合全部加入集合LastPointSets;
步骤76:判断RawPointSets的点迹集合是否已经处理完,若RawPointSets处理完毕,则执行步骤77,否则,执行步骤74;
步骤77:获得归并后的集合LastPointSets;遍历LastPointSets中的原始点迹集合;若该点迹集合中的点迹个数大于门限值iDensity,则将该点迹集合中的点迹加入待凝聚点迹集合;否则,删除该点迹集合。
8.根据权利要求6所述的一种适用于场面监视雷达的目标凝聚方法,其特征在于所述步骤X-Y凝聚模块中对待凝聚原始点迹数据进行Y方向凝聚,具体过程是:
步骤81:清空AllAarrayMap,获取当前时刻的待凝聚所有原始点迹points并存入数据缓存,得到无序的待凝聚的所有原始点迹points;AllAarrayMap指的是所有点迹集合的映射关系,以点迹所属空域带号index为键,位于该空域带的点迹集合为值;
步骤82:取points中一个待凝聚原始点迹的point,根据point的极坐标计算笛卡尔坐标,以此便将待凝聚所有原始点迹points投影到直角坐标系平面;根据point的Y坐标point.y计算point所属空域带,index=point.y/YThreshold+1;
步骤83:将point存入空域带对应的点迹集合pointArray[index],若当前还没有该点迹集合,则新创建一个;以index为键值,pointArray[index]为值,建立点迹集合的映射关系AllAarrayMap[index,pointArray[index]];若point不是所有原始点迹points中的最后一个点迹,则从points中删除point,执行步骤82;
步骤84:取出AllAarrayMap的键值集合keys,将键值keys中所有index进行升序排列;keys指的是所有index的集合;
步骤85:依次遍历keys,取一个键值index和index的下一个健值next;根据index、next分别取出与其对应的点迹集合pointArray[index]、点迹集合pointArray[next];
步骤86:若pointArray[next].Ymin -pointArray[index].Ymax<Ythreshold,则执行步骤87,否则index=next,执行步骤85;其中pointArray[index].Ymax与pointArray[inext].Ymin分别是pointArray[index]中点迹Y坐标最大值和pointArray[next]中点迹Y坐标值最小值;
步骤87:将pointArray [next]中的点迹并入pointArray [index]中,并且更新pointArray [index].Ymax=pointArray[next].Ymax,在AllAarrayMap中删除next对应的存储记录(其中pointArray [index].Ymax为pointArray[index]中点迹Y坐标最大值,pointArray[next].Ymax为pointArray [next]中点迹Y坐标值最大值);
步骤88:若next到达keys的最大值,则执行步骤810,否则执行步骤89;
步骤89:next=next+1,跳转到步骤36;
步骤810:按键值keys中index大小进行升序排列,将AllAarrayMap中的点迹集合存入RawPointSets。
9.根据权利要求6所述的一种适用于场面监视雷达的目标凝聚方法,其特征在于所述X-Y凝聚模块对待凝聚原始点迹数据进行X方向凝聚,具体过程是:
步骤91:清空AllAarrayMap,从RawPointSets中取一个点迹集合OnePointSet;AllAarrayMap指的是所有点迹集合的映射关系,以点迹所属空域带号index为键,位于该空域带的点迹集合为值;
步骤92:取OnePointSet中一个待凝聚原始点迹的point,根据point的X坐标point.x计算point所属空域带, index=point.x/XThreshold+1;
步骤93:将point存入空域带对应的点迹集合pointArray[index],若当前还没有该点迹集合,则新创建一个;以index为键值,pointArray[index]为值,建立点迹集合的映射关系AllAarrayMap[index,pointArray[index]];若point不是OnePointSet中的最后一个点迹,则从OnePointSet中删除point,执行步骤92;
步骤94:取出AllAarrayMap的键值集合keys,将键值keys中所有index进行升序排列;keys指的是所有index的集合;
步骤95:依次遍历keys,取一个键值index和index的下一个健值next;根据index、next分别取出与其对应的点迹集合pointArray[index]、点迹集合pointArray[next];
步骤96:若pointArray[next].Xmin- pointArray[index].Xmax<Xthreshold,则执行步骤97,否则,index=next,执行步骤95;其中pointArray[index].Xmax与pointArray[next].Xmin分别是pointArray[index]中点迹X坐标最大值和pointArray[next]中点迹X坐标值最小值;
步骤97:将pointArray [next]中的点迹并入pointArray [index]中,并且更新pointArray [index].Xmax=pointArray[next].Xmax,在AllAarrayMap中删除next对应的存储记录(其中pointArray[index].Xmax为pointArray[index]中点迹X坐标最大值,pointArray[next].Xmax为pointArray [next]中点迹X坐标值最大值);
步骤98:若next到达keys的最大值,则执行步骤910,否则执行步骤99;
步骤99:next=next+1,跳转到步骤96;
步骤910:按键值keys中index大小进行升序排列,将AllAarrayMap中的点迹集合存入LastPointSets;
步骤911:判断OnePointSet是否已经是凝聚原始点迹集合RawPointSets的最后一个点迹集合,若是,则凝聚原始点迹集合RawPointSets的点迹集合已经处理完毕,遍历LastPointSets中的原始点迹集合,计算质心,即加权平均值,得到凝聚后的点,否则,从RawPointSets中删除该点迹集合OnePointSet,执行步骤91。
10.根据权利要求6所述的一种适用于场面监视雷达的目标凝聚方法,其特征在于所述步骤X-YX-Y凝聚模块中遍历LastPointSets中的原始点迹集合,计算质心,即加权平均值,得到凝聚后的点,具体过程:
步骤101:获得凝聚后的原始点迹集合LastPointSets;
步骤102:遍历LastPointSets,获得一个原始点迹集合PointSet;
步骤103:计算PointSet中所有原始点迹的质心点pt,pt的坐标值计算公式为:pt的x轴坐标pt.x=∑point.x/M,pt.y=∑point.y/M,M为PointSet中原始点迹个数,质心pt的坐标便是凝聚后的点迹坐标,将pt存入输出点迹缓存MergedPointList;
步骤104:若LastPointSets已经遍历完,则结束,MergedPointList便是凝聚后的点迹集合,否则执行步骤102。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610359146.4A CN106093946B (zh) | 2016-05-27 | 2016-05-27 | 一种适用于场面监视雷达的目标凝聚方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610359146.4A CN106093946B (zh) | 2016-05-27 | 2016-05-27 | 一种适用于场面监视雷达的目标凝聚方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106093946A true CN106093946A (zh) | 2016-11-09 |
CN106093946B CN106093946B (zh) | 2019-02-15 |
Family
ID=57230147
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610359146.4A Active CN106093946B (zh) | 2016-05-27 | 2016-05-27 | 一种适用于场面监视雷达的目标凝聚方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106093946B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106918807A (zh) * | 2017-02-28 | 2017-07-04 | 西安电子科技大学 | 一种雷达回波数据的目标点迹凝聚方法 |
CN107656247A (zh) * | 2017-08-24 | 2018-02-02 | 安徽四创电子股份有限公司 | 基于有源相控阵技术体制的三坐标监视雷达点迹处理方法 |
CN108614264A (zh) * | 2018-05-04 | 2018-10-02 | 深圳市华讯方舟雷达技术装备有限公司 | 一种基于连通标记法则的雷达目标点迹凝聚方法 |
CN108646235A (zh) * | 2018-05-03 | 2018-10-12 | 西安电子工程研究所 | 基于点迹位置聚合识别空间散布固定杂波的方法 |
CN109270530A (zh) * | 2018-09-29 | 2019-01-25 | 安徽四创电子股份有限公司 | 一种空管一次雷达的点迹处理的测试方法及*** |
CN109444840A (zh) * | 2018-12-04 | 2019-03-08 | 南京航空航天大学 | 一种基于机器学习的雷达杂波抑制方法 |
CN109857699A (zh) * | 2019-01-11 | 2019-06-07 | 中国船舶重工集团公司第七二四研究所 | 一种适配低资源的雷达目标点迹提取凝聚方法 |
CN110879390A (zh) * | 2019-12-02 | 2020-03-13 | 西安电子工程研究所 | 一种基于父子结点遍历的距离多普勒平面点迹凝聚方法 |
CN111208501A (zh) * | 2019-12-30 | 2020-05-29 | 广州市番禺奥莱照明电器有限公司 | 基于雷达探测的多目标聚合方法、装置、设备和存储介质 |
CN117970251A (zh) * | 2024-03-28 | 2024-05-03 | 安徽隼波科技有限公司 | 一种安防雷达杂波区动态检测方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104569950A (zh) * | 2015-01-27 | 2015-04-29 | 西安电子科技大学 | 基于相对功率和相位线性度的海面目标凝聚方法 |
CN104749576A (zh) * | 2015-04-08 | 2015-07-01 | 四川九洲空管科技有限责任公司 | 一种多雷达航迹关联融合方法 |
US20150260838A1 (en) * | 2010-04-30 | 2015-09-17 | Applied Physical Sciences Corp. | Sparse Array RF Imaging for Surveillance Applications |
-
2016
- 2016-05-27 CN CN201610359146.4A patent/CN106093946B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150260838A1 (en) * | 2010-04-30 | 2015-09-17 | Applied Physical Sciences Corp. | Sparse Array RF Imaging for Surveillance Applications |
CN104569950A (zh) * | 2015-01-27 | 2015-04-29 | 西安电子科技大学 | 基于相对功率和相位线性度的海面目标凝聚方法 |
CN104749576A (zh) * | 2015-04-08 | 2015-07-01 | 四川九洲空管科技有限责任公司 | 一种多雷达航迹关联融合方法 |
Non-Patent Citations (2)
Title |
---|
江兰: "近程警戒雷达数据处理算法及软件设计", 《中国优秀硕士论文全文数据库 信息科技辑》 * |
赵铃铃: "场面监视雷达数据处理及软件实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106918807A (zh) * | 2017-02-28 | 2017-07-04 | 西安电子科技大学 | 一种雷达回波数据的目标点迹凝聚方法 |
CN106918807B (zh) * | 2017-02-28 | 2019-07-09 | 西安电子科技大学 | 一种雷达回波数据的目标点迹凝聚方法 |
CN107656247A (zh) * | 2017-08-24 | 2018-02-02 | 安徽四创电子股份有限公司 | 基于有源相控阵技术体制的三坐标监视雷达点迹处理方法 |
CN108646235A (zh) * | 2018-05-03 | 2018-10-12 | 西安电子工程研究所 | 基于点迹位置聚合识别空间散布固定杂波的方法 |
CN108614264A (zh) * | 2018-05-04 | 2018-10-02 | 深圳市华讯方舟雷达技术装备有限公司 | 一种基于连通标记法则的雷达目标点迹凝聚方法 |
CN108614264B (zh) * | 2018-05-04 | 2023-08-04 | 武汉华讯国蓉科技有限公司 | 一种基于连通标记法则的雷达目标点迹凝聚方法 |
CN109270530A (zh) * | 2018-09-29 | 2019-01-25 | 安徽四创电子股份有限公司 | 一种空管一次雷达的点迹处理的测试方法及*** |
CN109444840B (zh) * | 2018-12-04 | 2020-12-25 | 南京航空航天大学 | 一种基于机器学习的雷达杂波抑制方法 |
CN109444840A (zh) * | 2018-12-04 | 2019-03-08 | 南京航空航天大学 | 一种基于机器学习的雷达杂波抑制方法 |
CN109857699A (zh) * | 2019-01-11 | 2019-06-07 | 中国船舶重工集团公司第七二四研究所 | 一种适配低资源的雷达目标点迹提取凝聚方法 |
CN110879390B (zh) * | 2019-12-02 | 2023-03-24 | 西安电子工程研究所 | 一种基于父子结点遍历的距离多普勒平面点迹凝聚方法 |
CN110879390A (zh) * | 2019-12-02 | 2020-03-13 | 西安电子工程研究所 | 一种基于父子结点遍历的距离多普勒平面点迹凝聚方法 |
CN111208501A (zh) * | 2019-12-30 | 2020-05-29 | 广州市番禺奥莱照明电器有限公司 | 基于雷达探测的多目标聚合方法、装置、设备和存储介质 |
CN111208501B (zh) * | 2019-12-30 | 2022-06-03 | 广州市番禺奥莱照明电器有限公司 | 基于雷达探测的多目标聚合方法、装置、设备和存储介质 |
CN117970251A (zh) * | 2024-03-28 | 2024-05-03 | 安徽隼波科技有限公司 | 一种安防雷达杂波区动态检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106093946B (zh) | 2019-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106093946A (zh) | 一种适用于场面监视雷达的目标凝聚方法及装置 | |
Wang et al. | Data-driven based tiny-YOLOv3 method for front vehicle detection inducing SPP-net | |
CN103295242B (zh) | 一种多特征联合稀疏表示的目标跟踪方法 | |
CN108564030A (zh) | 面向车载热成像行人检测的分类器训练方法和装置 | |
CN109871763A (zh) | 一种基于yolo的特定目标跟踪方法 | |
CN108549864A (zh) | 面向车载热成像行人检测的感兴趣区域过滤方法和装置 | |
CN106919902B (zh) | 一种基于cnn的车辆识别和轨迹追踪方法 | |
CN111444917A (zh) | 车牌字符识别方法、装置、电子设备和存储介质 | |
CN110569782A (zh) | 一种基于深度学习目标检测方法 | |
CN115049700A (zh) | 一种目标检测方法及装置 | |
CN110008900B (zh) | 一种由区域到目标的可见光遥感图像候选目标提取方法 | |
CN103870834A (zh) | 基于分层分割的滑动窗搜索方法 | |
CN109949229A (zh) | 一种多平台多视角下的目标协同检测方法 | |
CN107437068A (zh) | 基于Gabor方向直方图和猪体毛发模式的猪个体识别方法 | |
CN106897677A (zh) | 一种车辆特征分类检索***和方法 | |
Liu et al. | Multi-type road marking recognition using adaboost detection and extreme learning machine classification | |
CN107423734A (zh) | 一种sar图像海洋目标快速检测方法与装置 | |
CN107609509A (zh) | 一种基于运动显著性区域检测的动作识别方法 | |
CN109063630B (zh) | 一种基于可分离卷积技术和帧差补偿策略的快速车辆检测方法 | |
Li et al. | License plate detection using convolutional neural network | |
CN105761507A (zh) | 一种基于三维轨迹聚类的车辆计数方法 | |
Li et al. | Insect detection and counting based on YOLOv3 model | |
Liu et al. | Tilt correction toward building detection of remote sensing images | |
Ju et al. | A novel fully convolutional network based on marker-controlled watershed segmentation algorithm for industrial soot robot target segmentation | |
CN111311643B (zh) | 使用动态搜索的视频目标跟踪方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |