一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种三维地图中选定范围进行自动巡航的方法与流程

2022-03-23 04:39:08 来源:中国专利 TAG:


1.本发明涉及一种自动巡航方法,特别是一种三维地图中选定范围进行自动巡航的方法。


背景技术:

2.目前,在森林防火、病虫害防治、治安管理、濒危动物探测、污染源检测、治理偷猎滥伐、余震检测等领域中,需要对大片监控区域中的全局或局部重点区域进行全天候的扫描观察,因此需要为安装在上述区域的监控设备设定合适的预置位、控制参数和巡航路径,确保实现对上述区域实现多层次、全方位、全天候、全自动、高清晰度、高频次的监控。
3.当前常见的操作流程是:根据监控设备所在区域的地形、环境、监控清晰度要求等,通过人工为每一台监控设备,设置专属的预置位、控制参数、巡航路径等。为了让监控画面的视野更开阔,需要使用较小的放大倍数,与此同时会存在视野远处的画面模糊不清的问题,不能确保监控画面的清晰度,无法保证监控效果,例如:视野远处的画面模糊不清,不利于在实际业务系统中智能识别是否存在火情;为了让监控面图的图像更清晰,需要使用较大的放大倍数将镜头拉近,这个过程需要人工根据整个监控环境全方位多角度的配置放大倍数等参数,与此同时会存在搭接不足可能出现监控盲区、搭接过多将出现单次巡航时长增加和巡航效率低下等问题。
4.实际业务中,存在需要对指定区域进行监控,或将指定区域剔除监控范围的情况。当前常见操作流程是设置预置位时,覆盖需要监控的区域,跳过不需要监控的区域。其存在的问题在于:通过预置位进行参数设置,是以监控设备为中心,保留或剔除某些扇形的监控区域或监控角度。若需要保留或剔除的区域不是扇形形状存在,或视野区域中同时存在需要监控和需要剔除的区域,则将存在较大误差。当前操作流程无法对任意形状的监控区域设置自动巡航参数。
5.监控设备的监视效果与进行上述设置的工作人员的经验、判断、专业水平相关。随着监控需求的增加,监控设备的数量与日俱增,上述人工设置参数的过程将同步增加。鉴于每个监控设备需要监视的环境复杂多变,各监控设备均需设置专属的预置位、放大倍数、巡航路径,该人工设置参数的过程较难实现标准化、模板化、自动化、可复制化。
6.因此,需要一种可以针对实际业务场景或环境中任意形状的监控区域自定义画面清晰度,并基于该清晰度要求,生成专属于每个场景的自动巡航参数(预置位排布及参数、巡航路径等)的方法,实现对监控区域多层次、全方位、全天候、全自动、高清晰度、高效率的监控。
7.在cn105573345a中公开了名称为“一种基于全视野图的云台摄像机的控制方法和装置”的发明专利申请,该方法包括:用户在全视野图上指定云台摄像机待转的视角,包括视角大小和视角方向。根据预先测量的所述云台摄像机的标定信息,计算出用户所指定的视角所对应的云台摄像机控制参数。根据计算的云台摄像机控制参数对所述云台摄像机进行控制,使所述云台摄像机控制后的视角与用户指定的视角基本一致。虽然该方法能够根
据用户所指定的目标视角所对应的云台摄像机控制参数,根据全视野图中设定的视角的先后顺序自动巡视。但是,该发明专利申请存在如下的不足:用户需要先在全视野图中设定目标视角,计算控制参数后,再按照设定视角的先后顺序进行自动巡视。这个过程需要用户根据监控需求逐一设定监控目标和巡视顺序,更适用于监控目标明确、有特定巡视视角和路线的业务环境,不能实现对划定区域或范围自动生成摄像机控制参数和自动生成巡航路径。
8.在cn104700409b中公开了名称为“一种根据监控目标自动调整摄像机预置位的方法”的发明专利,该方法包括如下步骤:获取监控目标的位置;确定摄像机相对于监控目标在三维坐标系中的二维水平旋转角度和二维垂直旋转角度;将二维水平旋转角度和二维垂直旋转角度分别转化为三维空间角度;根据二维水平旋转角度、二维垂直旋转角度和三维空间角度计算摄像机镜头相对于摄像机在水平方向的角度和垂直方向的角度;根据监控目标与摄像机的距离、监控区域宽度和摄像机镜头成像元件对角线长度得到焦距和视角。虽然该方法能够根据监控目标与摄像机的距离、监控区域宽度和摄像机镜头成像元件对角线长度得到焦距和视角,自动生成摄像机的预置位信息,使摄像机快速、准确的转到预置位。但是,该方法存在如下不足:不能实现对广域环境中的众多监控目标,同时生成预置位信息。
9.在cn105282449b中公开了名称为“一种pt摄像机的视野调整控制方法和装置”的发明专利,该方法既能够提供操作者摄像机指向方位的直观感知,通过全景图像提供直观的方向感知,又能够实现快速、全方向、任意方位定位的pt摄像机控制。虽然该方法能够通过采集全局图像的方位信息,并融合为含方位信息的全景图像,待操作者输入控制指令后,可通过pt定位快速的驱动摄像机定位到用户指定视野。但是,仍然存在如下的不足:全景图像虽提供了更直观的全景图像,但使用过程仍然需要操作者输入控制指令,必须依赖操作者的协助,不能实现无人的自动化监控操作;操作者每发出一个操作指令,摄像机只能根据指令要求实现一对一的动作响应,不能实现对划定区域或范围的自动巡航操作。
10.在cn106412402a中公开了名称为“一种摄像机预置位的配置方法和装置”的发明专利申请,该申请基于poi数据、路网信息中的道路或者与位置相关的业务数据,自动生成包括预置位以及每个预置位对应的摄像机控制参数的预置位信息表,当需要将摄像机快速定位到某个预置位时,选取所需的预置位,系统根据预置位信息表中该预置位对应的摄像机控制参数,将摄像机定位到所选取的预置位。虽然该申请能够根据摄像机的位置、以及路网信息中的道路或者位置相关的业务数据,生成包含预置位及其对应的摄像机控制参数的预置位信息表。选取该表中的预置位,可快速将摄像机定位到所选取的位置。但是,仍存在如下问题:发明生成的预置位信息表,虽可以将需要重点监控的建筑、设备、路口等囊括其中,但不能将监控环境中的所有物体包含其中,故不能实现对监控环境实现无死角、全覆盖的监控;用户选取预置位信息表中的预置位,可将摄像机快速定位到选定位置,这个过程需要用户参与并下发操作指令,无法实现对选定监控区域自动巡航监控。


技术实现要素:

11.本发明的目的就是提供具有高清晰度、多层次、全方位进行监控的对监控中选定范围进行自动巡航的方法。
12.本发明的目的是通过这样的技术方案实现的,一种对三维地图中选定范围进行自动巡航的方法,所述方法包括如下步骤:
13.1)通过数字高程模型获取深度数据;
14.2)选择待监控区域;
15.3)根据深度值对监控区域进行多层划分,通过聚类算法将各个层级区分开;
16.4)选择聚类后的其中一个层级区域,计算监控设备在该区域中巡航所需焦距和放大倍数;
17.5)选择其余层级区域,重复步骤4);
18.6)选择其中一个层级区域,根据监控设备在其中巡航需要的放大倍数计算巡航时监控设备的视场反映在深度图中的窗口大小;
19.7)对步骤6)中所选择的层级区域,按照窗口大小进行排布;
20.8)对每一个层级区域,重复步骤7),完成对所有层级的窗口排布;
21.9)规划巡航路径;
22.10)在实际监控环境中进行应用。
23.其中,在所述步骤2)中,根据数字高程模型,获取监控设备所在点周围任意空间范围内相对于观测点的深度信息数据;在获得深度信息数据后,以方位角为横坐标,俯仰角为纵坐标,建立平面直角坐标系;按照每一个深度信息数据对应的方位角和俯仰角,将它们的深度放到对应的位置,组成一个数值矩阵,作为深度图;在深度图中选择要监控的区域a1、a2、a3……an
和不监控的区域b1、b2、b3……bn
,实际需要监控的总区域s可以表示为:
[0024][0025]
其中,不监控的区域b1、b2、b3……bn
可以为空;当深度图中存在没有深度数据的点,将没有深度数据的所有区域记为c,则在排除掉没有数据的区域后,实际需要监控的总区域s可以表示为:
[0026][0027]
其中,在所述步骤3)中,包括根据深度值对将监控区域进行多层划分,通过聚类算法将各个层级区分开。
[0028]
对于各处深度值差不多的区域,使用单一的放大倍数就可以满足拍摄图像实际场景精度需要。而实际选择的区域,可能具有深度差异较大的层级结构,对于这种层级结构,需要根据深度将各个层级分离开,分别计算每层的参数以便取得更清晰的监控画面、更佳的监控效果。
[0029]
对实际需要监控的总区域s,根据每个点的深度值,使用聚类算法将各个层级区分开。
[0030]
其中,在所述步骤4)中,包括计算层级区域到监控设备的距离d、计算焦距f'和计算放大倍数z:
[0031]
其中,经过聚类后,一个层级区域内部的深度较为接近,将这个层级区域中的所有
点都视为深度相同,计算这个层级区域所包含的所有点的深度的算术平均值,作为这个层级区域到监控设备的距离d;
[0032]
通过公式计算焦距f'
[0033][0034]
其中,f为设备支持的最小焦距;
[0035]
h1为图像传感器的高度(单位:mm);
[0036]
h2为设备获取的图像的高度(单位:像素);
[0037]
w1为图像传感器的宽度(单位:mm);
[0038]
w2为设备获取的图像的宽度(单位:像素);
[0039]
ρ为自定义的图像像素与图像包含的场景实际大小的比值;根据监控设备的不同应用环境或领域,结合实际业务的需求确定监控设备画面需要覆盖的范围,可灵活的在范围内自定义(ρ∈[0.2,100]);
[0040]
通过公式计算z
[0041][0042]
其中,在所述步骤5)中,选择其余层级区域,重复步骤4);为了实现步骤3)、4)、5),可以根据每一个点的深度进行层级分离,再对每一个层级区域所有点的深度取算术平均值作为这个层级区域的深度,然后对层级区域根据它的深度计算放大倍数z,最终得到层级区域的划分和每一个层级区域对应的放大倍数;
[0043]

[0044]
先对深度图中的监控区域的每一个点根据深度计算放大倍数,然后根据每一个点对应的放大倍数进行层级分离,再取每一个层级区域所有点的放大倍数的平均值作为这个分层的放大倍数z,最终同样得到层级区域的划分和每一个层级区域对应的放大倍数。
[0045]
其中,在所述步骤6)中,包括计算视场角和获取一个窗口的覆盖范围,其中,
[0046]
水平视场角fovh为
[0047]
垂直视场角fovv为
[0048]
对角视场角fov为
[0049][0050]
其中,获取窗口覆盖范围:
[0051]
将视场区域看作矩形,矩形的宽度和高度在数值上分别等于水平视场角fovh和垂直视场角fovv,即窗口的宽度wf、高度hf分别为:wf=fovh,hf=fovv。
[0052]
其中,在所述步骤7)中,包括如下步骤:
[0053]

以这个层级区域作为待排布区域;
[0054]

计算待排布区域的最小正外接矩形,设其宽为wb高为hb,在这个最小正外接矩形上排布nw×
nh个窗口,组成一个阵列;
[0055]
其中
[0056][0057]
(为向上取整符号),这个由nw×
nh个窗口组成的阵列的宽w4、高h4分别为w
4=nw
×
wf,h4=nh×
hf;
[0058]

计算搭接区域
[0059]
为了防止出现监控盲区,窗口之间可以设置一定的搭接,搭接部分宽与窗口宽的比值为rw,搭接部分高与窗口高的比值为rh,其中rw,rh∈[0,1),则此时的窗口阵列满足
[0060][0061][0062]
w4=(n
w-1)
·
(1-rw)wf wf[0063]
h4=(n
h-1)
·
(1-rh)hf hf[0064]

去掉部分窗口与待排布区域非交集区域,得到窗口在这个层级区域中的排布。
[0065]
或者,
[0066]
在所述步骤7)中,包括如下步骤:
[0067]

以这个层级区域作为待排布区域;
[0068]

计算待排布区域的最小正外接矩形,设其宽为wb高为hb,在这个最小正外接矩形上排布nw×
nh个窗口,组成一个阵列;
[0069]
其中
[0070][0071]
(为向上取整符号),这个由nw×
nh个窗口组成的阵列的宽w4、高h4分别为w4=nw×
wf,h4=nh×
hf;
[0072]

计算搭接区域
[0073]
为了防止出现监控盲区,窗口之间可以设置一定的搭接,搭接部分宽与窗口宽的比值为rw,搭接部分高与窗口高的比值为rh,其中rw,rh∈[0,1),则此时的窗口阵列满足
[0074][0075][0076]
w4=(n
w-1)
·
(1-rw)wf wf[0077]
h4=(n
h-1)
·
(1-rh)hf hf[0078]

将阵列移动到使阵列中心与最小正外接矩形中心重合,将所有中心未落在层级区域内的窗口去掉,出现未被窗口覆盖区域;
[0079]

将未被窗口覆盖区域作为新的待排布区域,重复
②③④
步骤,进行迭代,直到达预先设定好的迭代深度,或者剩余的没有被窗口覆盖的部分区域面积与窗口面积之比小于设定阈值α(根据实际需求α可以取值0.1%~20%),迭代终止即完成窗口在这个层级区域中的排布。
[0080]
或者,
[0081]
在所述步骤7)中,包括如下步骤:
[0082]

以这个层级区域作为待排布区域;
[0083]

计算待排布区域的最小正外接矩形,设其宽为wb高为hb,在这个最小正外接矩形上排布nw×
nh个窗口,组成一个阵列;
[0084]
其中
[0085][0086]
(为向上取整符号),这个由nw×
nh个窗口组成的阵列的宽w4、高h4分别为w4=nw×
wf,h4=nh×
hf;
[0087]

计算搭接区域
[0088]
为了防止出现监控盲区,窗口之间可以设置一定的搭接,搭接部分宽与窗口宽的比值为rw,搭接部分高与窗口高的比值为rh,其中rw,rh∈[0,1),则此时的窗口阵列满足
[0089][0090][0091]
w4=(n
w-1)
·
(1-rw)wf wf[0092]
h4=(n
h-1)
·
(1-rh)hf hf[0093]

将待排布区域的最小正外接矩形左右分别扩展上下分别扩展扩展出更大的矩形;
[0094]

设定水平方向、垂直方向的步进频数分别为fw、fh,取值5~100,则水平方向和垂直方向的步进幅度aw、ah分别为
[0095]aw
=(wb w
f-w4)/fw[0096]ah
=(hb h
f-h4)/fh[0097]
使nw×
nh个窗口组成的阵列在扩展矩形内部步进,共得到fw×fh
个不同的位置;
[0098]

选择其中的一个位置,将所有中心未落在待排布区域内的窗口去掉,记录此时剩余的窗口数量、剩余的所有窗口与待排布区域的重叠面积、剩余的所有窗口组成的图形的几何中心与待排布区域的几何中心之间的距离;
[0099]

在fw×fh
个不同的位置重复上述步骤,再按照以下的优先级选出最好的一个位
置:
[0100]
剩余的窗口数量最多;
[0101]
剩余的所有窗口与待排布区域的重叠面积最大;
[0102]
剩余的所有窗口组成的图形的几何中心与待排布区域的几何中心之间的距离最小;
[0103]

选出的最好的位置,将所有中心没有落在待排布区域内的窗口去掉后,待排布区域中没有被窗口覆盖的部分区域作为新的待排布区域,重复







步骤,进行迭代,直到达到预先设定好的迭代深度,或者剩余的没有被窗口覆盖的部分区域面积与窗口面积之比小于设定阈值α(根据实际需求α可以取值0.1%~20%),迭代终止即完成窗口在这个层级区域中的排布。
[0104]
其中,在所述步骤8)中,得到每一个层级区域的窗口,其中,每一个窗口都有其对应的放大倍数z,窗口中心点的坐标均具有对应的水平转角p和垂直转角t,每个窗口具有唯一确定的作为预置位的ptz数值,得到所有预置位的分布。
[0105]
ptz:p:即pan,监控设备相对于初始位置的水平转角;t:即tilt,监控设备相对于初始位置的垂直转角;z:即zoom,监控设备的放大倍数。
[0106]
预置位位:对云台球台监控设备预先设置好的观测位置,一般用ptz记录。
[0107]
巡航路线:云台球台监控设备按照一定顺序在设定好的预置位移动的路线。
[0108]
深度:目标点到观测点的距离。
[0109]
深度图:从观测点看出去的场景的展开平面图,每个点的像素值代表遮挡物表面到观测点的深度。
[0110]
其中,在所述步骤9)中,规划巡航路径可通过预置位使得监控设备在不同的预置位间进行移动,使得云台的转动角度最小化;
[0111]

[0112]
可通过预置位使得监控设备在不同的放大倍数的预置位间移动,使得焦距的改变值最小化;
[0113]

[0114]
自上到下,根据最小的放大倍数确定巡航扫描的行数,在同一行内,自左到右地在预置位之间进行移动。
[0115]
其中,在所述步骤10)中,将步骤8)得到的各窗口的ptz数值和步骤9)得到的巡航路径发送给监控设备,监控设备根据对应数值和巡航路径,对选定的监控范围进行自动巡航。
[0116]
由于采用了上述技术方案,本发明具有如下的优点:
[0117]
(1)本发明支持对框选的任意形状的监控范围或区域进行重点监控,支持从监控区域中框选任意形状的不需要监控的区域,从而确保需要监控的区域一个都不能少,不需要监控的区域一个也不多;
[0118]
(2)本发明通过算法不断迭代得到的窗口排布方式,可确保对监控区域全覆盖、无死角的监控;
[0119]
(3)本发明支持用户根据实际监控环境,自定义图像像素与图像包含的场景实际大小的比值ρ,并根据该比值进而计算出基于该比值的其他参数信息,能够得到更清晰的监
控画面,有助于提升监控效果;、
[0120]
(4)本发明根据实际监控环境对监控范围进行分层处理,得到针对每一层的焦距、放大倍数、窗口大小、窗口排布方式,从而得出所有预置位的参数、巡航路径,能够获得更清晰、更全覆盖的监控图像,有助于提升监控效果;
[0121]
(5)通过本发明计算的预置位、控制参数和规划的自动巡航轨迹,实现了对监控区域多层次、全方位、全天候、全自动、高清晰度、高频次的监控;
[0122]
(6)本发明通过科学计算得到预置位、控制参数和巡航路径,有助于实现作业流程的标准化、模板化、自动化、可复制化,保证工作质量的同时,提升工作效率,节约人力成本。
附图说明
[0123]
本发明的附图说明如下:
[0124]
图1为本发明通过数字高程模型获取的深度数据处理后得到的深度图;
[0125]
图2为深度图进行聚类后分层图;
[0126]
图3为图像传感器生成的平面图;
[0127]
图4为投影时的矩形窗口;
[0128]
图5为建立模型的图;
[0129]
图6为图5的平面图;
[0130]
图7为窗口排布图;
[0131]
图8为生成巡航路径图。
具体实施方式
[0132]
下面结合附图对本发明的具体实施方式作进一步详细的说明,但本发明并不局限于这些实施方式,任何在本实施例基本精神上的改进或替代,仍属于本发明权利要求所要求保护的范围。
[0133]
实施例1:一种在三维地图中选定范围进行自动巡航的方法,所述方法包括如下步骤:
[0134]
1)通过数字高程模型获取深度数据;
[0135]
2)选择待监控区域;
[0136]
3)根据深度值对监控区域进行多层划分,通过聚类算法将各个层级区分开;
[0137]
4)选择聚类后的其中一个层级区域,计算监控设备在该区域中巡航所需焦距和放大倍数;
[0138]
5)选择其余层级区域,重复步骤4);
[0139]
6)选择其中一个层级区域,根据监控设备在其中巡航需要的放大倍数计算巡航时监控设备的视场反映在深度图中的窗口大小;
[0140]
7)对步骤6)中所选择的层级区域,按照窗口大小进行排布;
[0141]
8)对每一个层级区域,重复步骤7),完成对所有层级的窗口排布;
[0142]
9)规划巡航路径;
[0143]
10)在实际监控环境中进行应用。
[0144]
其中,图1为通过监控设备获取的深度图。
[0145]
其中,在所述步骤2)中,根据数字高程模型,获取监控设备所在点周围任意空间范围内相对于观测点的深度信息数据;在获得深度信息数据后,以方位角为横坐标,俯仰角为纵坐标,建立平面直角坐标系;按照每一个深度信息数据对应的方位角和俯仰角,将它们的深度放到对应的位置,组成一个数值矩阵,作为深度图;在深度图中选择要监控的区域a1、a2、a3……an
和不监控的区域b1、b2、b3……bn
,实际需要监控的总区域s可以表示为:
[0146][0147]
其中,不监控的区域b1、b2、b3……bn
可以为空;当深度图中存在没有深度数据的点,将没有深度数据的所有区域记为c,则在排除掉没有数据的区域后,实际需要监控的总区域s可以表示为:
[0148][0149]
如图2所示,在步骤3)中,对于各处深度值差不多的区域,使用单一的放大倍数就可以满足拍摄图像实际场景精度需要。而实际选择的区域,可能具有深度差异较大的层级结构,对于这种层级结构,需要根据深度将各个层级分离开,分别计算每层的参数以便取得更清晰的监控画面、更佳的监控效果。
[0150]
对实际需要监控的总区域s,根据每个点的深度值,使用聚类算法将各个层级区分开。
[0151]
聚类算法可以是k-means聚类;knn聚类;k-medoids聚类;pam聚类;clara聚类;clarans聚类;k-prototype聚类;agnes聚类;birch聚类;cure聚类;rock聚类;bubble聚类;dbscan聚类;ws-dbscan聚类;mdca聚类;fdc聚类;sting聚类;clique聚类;wavecluster聚类;gmms聚类;som聚类;cobweb聚类;autoclass聚类;gcn聚类;cdp聚类;optics聚类;agglomerative聚类;pca主成分分析聚类;svd聚类;mds聚类;isomap聚类;lle聚类;mvu聚类;laplacian eigenmaps聚类;hessian eigenmaps聚类;kernel pca聚类;probabilistic pca聚类。
[0152]
其中,在所述步骤4)中,包括计算层级区域到监控设备的距离d、计算焦距f'和计算放大倍数z:
[0153]
其中,经过聚类后,一个层级区域内部的深度较为接近,将这个层级区域中的所有点都视为深度相同,计算这个层级区域所包含的所有点的深度的算术平均值,作为这个层级区域到监控设备的距离d;
[0154]
如图3所示,通过公式计算焦距f'
[0155][0156]
其中,f为设备支持的最小焦距;
[0157]
h1为图像传感器的高度(单位:mm);
[0158]
h2为设备获取的图像的高度(单位:像素);
[0159]
w1为图像传感器的宽度(单位:mm);
[0160]
w2为设备获取的图像的宽度(单位:像素);
[0161]
ρ为自定义的图像像素与图像包含的场景实际大小的比值;根据监控设备的不同应用环境或领域,结合实际业务的需求确定监控设备画面需要覆盖的范围,可灵活的在范围内自定义(ρ∈[0.2,100]);
[0162]
通过公式计算z
[0163]
在图3中,平面abcd是图像传感器所成平面;平面a
′b′c′d′
是投影到图像传感器上的实际场景在距离为d处形成的投影面;e,f,m,n分别为ad、bc、cd、ab的中点,o点为abcd的中心点;e

,f

,m

,n

分别为a
′d′
,b
′c′
,c
′d′
,a
′b′
的中点,o

点为a
′b′c′d′
的中心点;
[0164]
o,k,o

三点共线,且所在直线与平面abcd,a
′b′c′d′
均垂直;
[0165]
可知:
[0166]
ab=cd=ef=h1, a
′b′
=c
′d′
=e
′f′
=ρh2,
[0167]
ad=bc=mn=w1, a
′d′
=b
′c′
=m
′n′
=ρw2,
[0168]
镜头到投影面a
′b′c′d′
的距离ko

=d,
[0169]
单倍焦距,即设备支持的最小焦距为f,
[0170]
那么镜头到图像传感器abcd的距离ko,即此时的焦距f'。
[0171]
其中,在所述步骤5)中,根据每一个点的深度进行层级分离,再对每一个层级区域所有点的深度取算术平均值作为这个层级区域的深度,然后对层级区域根据它的深度计算放大倍数z,最终得到层级区域的划分和每一个层级区域对应的放大倍数;
[0172]

[0173]
先对深度图中的监控区域的每一个点根据深度计算放大倍数,然后根据每一个点对应的放大倍数进行层级分离,再取每一个层级区域所有点的放大倍数的平均值作为这个分层的放大倍数z,最终同样得到层级区域的划分和每一个层级区域对应的放大倍数。
[0174]
包括计算视场角和获取一个窗口的覆盖范围,其中,
[0175]
水平视场角fovh为
[0176]
垂直视场角fovv为
[0177]
对角视场角fov为
[0178][0179]
其中,获取窗口覆盖范围:
[0180]
如图4所示,将视场区域看作矩形,矩形的宽度和高度在数值上分别等于水平视场角fovh和垂直视场角fovv,即窗口的宽度wf、高度hf分别为:wf=fovh,hf=fovv。
[0181]
如图5、6所示:建立模型m,监控设备即为球心o,视场区域即为四棱锥oabcd内的区域及其延伸,截平面abcd到球心o的距离为d,表示将视场投影到指定距离d得到的平面。在d确定时,截平面abcd的大小始终确定;在截平面abcd的大小确定时,d始终确定。那么此时的
实际视场覆盖的区域等于当球半径为1时,曲面abcd展开的平面图大小;其中,图像的中轴宽度数值等于水平视场角fovh,中轴高度数值等于垂直视场角fovv,对角线长度数值等于对角视场角fov。
[0182]
进一步描述,在所述步骤7)中,包括如下步骤:
[0183]

以这个层级区域作为待排布区域;
[0184]

计算待排布区域的最小正外接矩形,设其宽为wb高为hb,在这个最小正外接矩形上排布nw×
nh个窗口,组成一个阵列;
[0185]
其中
[0186][0187]
(为向上取整符号),这个由nw×
nh个窗口组成的阵列的宽w4、高h4分别为w4=nw×
wf,h4=nh×
hf;
[0188]

计算搭接区域
[0189]
为了防止出现监控盲区,窗口之间可以设置一定的搭接,搭接部分宽与窗口宽的比值为rw,搭接部分高与窗口高的比值为rh,其中r
w,
rh∈[0,1),则此时的窗口阵列满足
[0190][0191][0192]
w4=(n
w-1)
·
(1-rw)wf wf[0193]
h4=(n
h-1)
·
(1-rh)hf hf[0194]

去掉部分窗口与待排布区域非交集区域,得到窗口在这个层级区域中的排布。
[0195]
实施例2:
[0196]
由于实施例1中,得到的窗口排布存在某些窗口中的待排布区域落在窗口的边缘或角落,未覆盖到窗口的中心点,只占很小的一部分。而往往需要关注的部分靠近窗口中心更符合一般人的观察习惯。因此在得到的窗口阵列基础上,将阵列移动到使阵列中心与最小正外接矩形中心重合,然后将所有中心未落在层级区域内的窗口去掉,此时会存在待排布区域中有一些未被窗口覆盖的部分区域;
[0197]
在所述步骤7)中,包括如下步骤:
[0198]

以这个层级区域作为待排布区域;
[0199]

计算待排布区域的最小正外接矩形,设其宽为wb高为hb,在这个最小正外接矩形上排布nw×
nh个窗口,组成一个阵列;
[0200]
其中
[0201][0202]
(为向上取整符号),这个由nw×
nh个窗口组成的阵列的宽w4、高h4分别为w4=nw×
wf,h4=nh×
hf;
[0203]

计算搭接区域
[0204]
为了防止出现监控盲区,窗口之间可以设置一定的搭接,搭接部分宽与窗口宽的比值为rw,搭接部分高与窗口高的比值为rh,其中r
w,
rh∈[0,1),则此时的窗口阵列满足
[0205][0206][0207]
w4=(n
w-1)
·
(1-rw)wf wf[0208]
h4=(n
h-1)
·
(1-rh)hf hf[0209]

将阵列移动到使阵列中心与最小正外接矩形中心重合,将所有中心未落在层级区域内的窗口去掉,出现未被窗口覆盖区域;
[0210]

将未被窗口覆盖区域作为新的待排布区域,重复
②③④
步骤,进行迭代,直到达预先设定好的迭代深度,或者剩余的没有被窗口覆盖的部分区域面积与窗口面积之比小于设定阈值α(根据实际需求α可以取值0.1%~20%),迭代终止即完成窗口在这个层级区域中的排布。
[0211]
实施例3:
[0212]
由于实施例2中,仍然会存在某些窗口中的待排布区域包含了窗口中心但仍然可能会偏向某一侧的情况,并且一开始得到的阵列区域本身往往超出层级区域的最小正外接矩形大小,这些问题使得窗口的排布仍然存在一定的随意性;
[0213]
在所述步骤7)中,包括如下步骤:
[0214]

以这个层级区域作为待排布区域;
[0215]

计算待排布区域的最小正外接矩形,设其宽为wb高为hb,在这个最小正外接矩形上排布nw×
nh个窗口,组成一个阵列;
[0216]
其中
[0217][0218]
(为向上取整符号),这个由nw×
nh个窗口组成的阵列的宽w4、高h4分别为w4=nw×
wf,h4=nh×
hf;
[0219]

计算搭接区域
[0220]
为了防止出现监控盲区,窗口之间可以设置一定的搭接,搭接部分宽与窗口宽的比值为rw,搭接部分高与窗口高的比值为rh,其中rw,rh∈[0,1),则此时的窗口阵列满足
[0221][0222][0223]
w4=(n
w-1)
·
(1-rw)wf wf[0224]
h4=(n
h-1)
·
(1-rh)hf hf[0225]

将待排布区域的最小正外接矩形左右分别扩展上下分别扩展扩展出更大的矩形;
[0226]

设定水平方向、垂直方向的步进频数分别为fw、fh,取值5~100,则水平方向和垂直方向的步进幅度aw、ah分别为
[0227]aw
=(wb w
f-w4)/fw[0228]ah
=(hb h
f-h4)/fh[0229]
使nw×
nh个窗口组成的阵列在扩展矩形内部步进,共得到fw×fh
个不同的位置;
[0230]

选择其中的一个位置,将所有中心未落在待排布区域内的窗口去掉,记录此时剩余的窗口数量、剩余的所有窗口与待排布区域的重叠面积、剩余的所有窗口组成的图形的几何中心与待排布区域的几何中心之间的距离;
[0231]

在fw×fh
个不同的位置重复上述步骤,在按照以下的优先级选出最好的一个位置:
[0232]
剩余的窗口数量最多;
[0233]
剩余的所有窗口与待排布区域的重叠面积最大;
[0234]
剩余的所有窗口组成的图形的几何中心与待排布区域的几何中心之间的距离最小;
[0235]

选出的最好的位置,将所有中心没有落在待排布区域内的窗口去掉后,待排布区域中没有被窗口覆盖的部分区域作为新的待排布区域,重复







步骤,进行迭代,直到达到预先设定好的迭代深度,或者剩余的没有被窗口覆盖的部分区域面积与窗口面积之比小于设定阈值α(根据实际需求α可以取值0.1%~20%),迭代终止即完成窗口在这个层级区域中的排布。
[0236]
进一步,如图7所示,在所述步骤8)中,得到每一个层级区域的窗口,其中,每一个窗口都有其对应的放大倍数z,窗口中心点的坐标均具有对应的水平转角p和垂直转角t,每个窗口具有唯一确定的作为预置位的ptz数值,得到所有预置位的分布。
[0237]
进一步,如图8所示,在所述步骤9)中,规划巡航路径可通过预置位使得监控设备在不同的预置位间进行移动,使得云台的转动角度最小化;
[0238]

[0239]
可通过预置位使得监控设备在不同的放大倍数的预置位间移动,使得焦距的改变值最小化;
[0240]

[0241]
自上到下,根据最小的放大倍数确定巡航扫描的行数,在同一行内,自左到右地在预置位之间进行移动;
[0242]
有条理的巡航路径,有助于提高自动巡航的效率,提升工作人员对监控画面的观看体验,降低机械结构的工作磨耗。
[0243]
进一步,在所述步骤10)中,将步骤8)得到的各窗口的ptz数值和步骤9)得到的巡航路径发送给监控设备,监控设备根据对应数值和巡航路径,对选定的监控范围进行自动巡航。
[0244]
本方法可根据实际监控环境,对图像像素与图像包含的场景实际大小的比值ρ进行自定义,进而计算出基于该比值的参数信息;根据实际监控环境对监控范围进行分层处理,得到针对每一层的焦距、放大倍数、窗口大小、窗口排布方式,从而得出所有预置位的参数、巡航路径。通过本方法将获得比传统方法更清晰、更全覆盖的监控图像,有助于提升监控效果;本方法通过科学计算得到相应参数和巡航路径,有助于实现作业流程的标准化、模板化、自动化。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献