检测与定位摄像头的方法、系统及装置
文献发布时间:2024-04-18 19:58:30
技术领域
本发明涉及检测与定位摄像头领域,尤其是涉及一种检测与定位摄像头的方法、系统及装置。
背景技术
随着物联网技术的成熟,无线网络摄像头技术得到大量应用。物联网技术不断发展,大量基于物联网技术的新兴产品涌现而出,形成一套新的物联网生态体系。网络摄像头是物联网技术的典型产品之一,网络摄像头是一种数字视频摄像头,它能够通过网络接收控制指令,发送图像、视频数据。网络摄像头能够通过TCP/IP协议传输数据,可以便捷地接入到网络之中,方便管理者调用和查看视频数据。但传统的有线网络摄像头需要进行网络布线,而且必须安放在固定位置,在家庭等场景下使用繁琐耗时,也缺乏经济性。随着无线局域网技术的发展,无线摄像头也在逐渐发展。相对于传统的有线网络摄像头,无线网络摄像头使用Wi-Fi协议或蜂窝移动网络传输网络数据,使用者可以在无线网络范围内自由部署无线网络摄像头,使用更加方便。无线网络摄像头在城市交通监控,企业内部监控,医院患者监测,银行安保,家庭防盗等各个生产生活的角落都有广泛应用。
但是网络摄像头的普及也给攻击者带来了便利。隐私窃取摄像头是专门用于在未授权情况下进行非正常拍摄的摄像头。隐私窃取摄像头可安装于企业内部、宾馆房间、汽车内部、家庭空间之中,用于商业机密窃取、个人隐私视频釆集、法庭证据收集、个人位置追踪、考试作弊等用途。为了便于隐藏或携带,隐私窃取摄像头多制成较小的形状,俗称“针孔摄像头”。针孔摄像头具有较强的隐蔽性,在未授权的情况下将网络摄像头安装在企业内部、宾馆房间等场所,对国家机密安全、企业机密安全和个人隐私安全造成严重威胁。
由于当前基于光学属性、电磁属性、射频波段、WLAN流量嗅探等方法的缺陷,对于这种摄像头的大规模发现与识别有着诸多难点。如何在高速流量的局域网络中探测摄像头的存在、检测摄像头的安全性尚未存在成熟的解决方案。
发明内容
本发明的目的在于提供一种检测与定位摄像头的系统,旨在解决检测与定位摄像头。
本发明提供一种检测与定位摄像头的系统,包括:
网络流量采集模块、传感器信息采集模块、检测算法模块和定位算法模块;
网络流量采集模块,用于检测环境中的无线流量数据并将信息发送到检测算法模块和定位算法模块;
传感器信息采集模块,用于采集传感器的信息并将信息发送到检测算法模块和定位算法模块;
检测算法模块,用于接收无线流量数据和传感器的信息检测摄像头;
定位算法模块,用于根据无线流量数据和传感器的信息定位摄像头;
UI界面模块,用于展示检测和定位结果并与用户交互。
本发明还提供一种检测与定位摄像头的方法,包括:
通过网络流量采集模块检测环境中的无线流量数据并将信息发送到检测算法模块和定位算法模块;
通过传感器信息采集模块采集传感器的信息并将信息发送到检测算法模块和定位算法模块;
通过检测算法模块接收无线流量数据和传感器的信息检测摄像头;
定位算法模块根据无线流量数据和传感器的信息定位摄像头;
通过UI界面模块展示检测和定位结果并与用户交互。
采用本发明实施例,可以实检测与定位摄像头的方法。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的检测与定位摄像头的系统的示意图;
图2是本发明实施例的检测与定位摄像头的系统的具体示意图;
图3是本发明实施例的检测与定位摄像头的系统的摄像头的检测算法流程图;
图4是本发明实施例的检测与定位摄像头的系统的摄像头的定位算法流程图;
图5是本发明实施例的检测与定位摄像头的系统的摄像头检测UI示意图;
图6是本发明实施例的检测与定位摄像头的系统的摄像头定位UI示意图。
具体实施方式
下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
方法实施例
根据本发明实施例,提供了一种检测与定位摄像头的系统,图1是本发明实施例的检测与定位摄像头的系统的示意图,如图1所示,具体包括:
网络流量采集模块、传感器信息采集模块、检测算法模块和定位算法模块;
网络流量采集模块,用于检测环境中的无线流量数据并将信息发送到检测算法模块和定位算法模块;
传感器信息采集模块,用于采集传感器的信息并将信息发送到检测算法模块和定位算法模块;
传感器信息采集模块用于采集光照传感器中的光照变化参数和重力加速度传感器与磁传感器计算出的罗盘指针数据,将光照变化参数和罗盘指针数据发送到检测算法模块和定位算法模块。
检测算法模块,用于接收无线流量数据和传感器的信息检测摄像头;
检测算法模块具体用于:基于无线流量数据中的时间、数据包长度字段信息和光照传感器获取的光度信息,使用SVM和随机森林机器学习算法进行特征训练,通过训练出的机器学习模型推断是否为网络摄像头。
定位算法模块,用于根据无线流量数据和传感器的信息定位摄像头;
UI界面模块,用于展示检测和定位结果并与用户交互。
定位算法模块具体用于:检测到无线摄像头后,定位算法根据无线流量数据中的RSSI强度和罗盘数据对网络摄像头进行定位。
定位算法具体包括:
以1秒作为周期,统计出周期内RSSI最大时的时刻t,根据无线流量数据中的时间和罗盘数据拟合出时间t时的罗盘方向,当RSSI最大时的罗盘方向即为摄像头方向。
具体实施方法如下:
本发明只针对上行的数据帧流量进行监听采集,从数据包包头中提取的信息有:时间戳,源mac地址,目标mac地址,数据长度,信道号。
图2是本发明实施例的检测与定位摄像头的系统的具体示意图;
网络流量采集模块,可以使用手机自身的支持监听模式的网卡芯片进行采集,也可以通过外置采集装置进行采集。需要注意的是,采集流量包的网卡芯片需要支持监听模式,才能监听采集到环境中的无线流量数据。
传感器信息采集模块,本发明通过手机的光照传感器获取环境中的光照变化,通过重力加速度传感器与磁传感器计算出罗盘指针数据。
Flutter与原生(Native)通信模块,Flutter与Android/IOS原生通信方式如下:
MethodChannel:用于Flutter与原生平台之间函数的互相调用。Flutter主动调用Native的方法,并获取相应的返回值。比如获取系统电量,发起调用系统API,可以通过这个来完成。
EventChannel:用于Flutter与原生平台之间事件的通信。这里是Native将事件通知到Flutter。比如Flutter需要监听网络情况,这时候MethodChannel就无法胜任这个需求了。EventChannel可以将Flutter的一个监听交给Native,Native去做网络广播的监听,当收到广播后借助EventChannel调用Flutter注册的监听,完成对Flutter的事件通知。
本发明中,原生传感器信息与网络流量包信息通过EventChannel方式实时传输到Flutter app侧,而流量包采集的相关配置指令则通过MethodChannel方式进行通信。
使用平台通道(MethodChannel)在客户端(Flutter)和宿主(Android/IOS原生)之间传递消息。
检测算法分析模块,检测算法通过MAC地址匹配、机器学习模型预测相结合的方式,对无线摄像头进行检测。
一般的,MAC地址前6位代表了网卡的生产厂商,对于部分无线设备,根据生产厂商名,可以推断此无线设备是否为网络摄像头。通过数据流的数据包中的时间、数据包长度等字段信息,与从光照传感器获取的光度信息,使用SVM和随机森林等机器学习算法进行特征训练,通过训练出的机器学习模型推断是否为网络摄像头。
摄像头的检测算法如下:
图3是本发明实施例的检测与定位摄像头的系统的摄像头的检测算法流程图;
获取流量包数据并分流。按照源MAC地址将无线数据分为若干数据流,每个数据流均为一个设备(可能是智能家居,也可能是其他网络设备)的通信数据流,得到若干数据流,每个数据流中包含一个待识别设备的所有传输数据。
通过MAC匹配检测是否为摄像头。在检测前,先建立一个MAC地址信息库。先通过MAC地址匹配方式,对采集的流量数据包进行MAC匹配,如果该MAC地址在数据库中,则为网络摄像头设备。
利用随机森林机器学习模型,根据流量包特征进行推断。流量包特征主要有大包比、Duration方差均值比。
利用SVM机器学习模型,根据光度与流量包特征进行推断。主要根据流量包与光度上升沿匹配进行推断。
定位算法分析模块,在检测到无线摄像头后,定位算法根据采集数据包中的RSSI强度与罗盘数据,对网络摄像头进行定位。
摄像头定位算法如下:
图4是本发明实施例的检测与定位摄像头的系统的摄像头的定位算法流程图;
获取流量包数据中的MAC地址、时间与RSSI信息,并进行分流;
通过Android/IOS原生同时获取罗盘数据与时间。
以1秒作为周期,统计出周期内RSSI最大时的时刻t。
根据时间、罗盘数据,拟合出时间t时的罗盘方向。RSSI最大时的罗盘方向即为摄像头方向。
将罗盘方向发送至UI界面进行展示。
界面模块,UI界面包括网络摄像头检测、定位结果展示与用户交互2部分。
图5是本发明实施例的检测与定位摄像头的系统的摄像头检测UI示意图;
图中显示的为疑似摄像头。
图6是本发明实施例的检测与定位摄像头的系统的摄像头定位UI示意图;
箭头显示摄像头的方向,并显示摄像头的信号强度。
本发明设计了一种网络摄像头检测与定位的手机应用系统。该系统包括检测算法、定位算法模块、传感器与通信原生模块。该系统通过无线网络流量采集系统获取无线网络流量特征,利用手机光照传感器信息,结合机器学习技术,检测是否存在网络摄像头设备;利用手机重力加速度传感器与磁传感器,对网络摄像头方位进行定位。此应用系统基于Flutter移动跨平台框架,支持Android与IOS手机;利用流量特征与光照特征训练机器学习模型,具备较高的网络摄像头检测准确率;根据数据包RSSI信息与罗盘信息可以准确定位网络摄像头方位。本发明可用于Android或IOS手机进行网络摄像头的检测与定位。
有益效果如下:
基于Flutter移动跨平台框架,使用Dart语言编写,具有平台兼容性,可同时支持Android与IOS手机;
MAC地址比对与机器学习模型同时使用,检测准确率高。
创新性的通过网络流量包RSSI场强与手机罗盘数据,可以对网络摄像头方位进行精确定位。
UI界面交互友好,可以对网络摄像头方位进行实时精确指示。
实验结果证明,本系统检测网络摄像头的准确达到95%以上,定位网络摄像头准确率达90%以上,可以对网络摄像头进行有效检测识别与定位,解决了现有技术检测精度低、误报率高、定位不准的问题。
方法实施例
根据本发明实施例,提供了一种检测与定位摄像头的方法,具体包括:
通过网络流量采集模块检测环境中的无线流量数据并将信息发送到检测算法模块和定位算法模块;
通过传感器信息采集模块采集传感器的信息并将信息发送到检测算法模块和定位算法模块;
通过传感器信息采集模块采集传感器的信息并将信息发送到检测算法模块和定位算法模块具体用于:采集光照传感器中的光照变化参数和重力加速度传感器与磁传感器计算出的罗盘指针数据,将光照变化参数和罗盘指针数据发送到检测算法模块和定位算法模块。
通过检测算法模块接收无线流量数据和传感器的信息检测摄像头;
通过检测算法模块接收无线流量数据和传感器的信息检测摄像头具体包括:基于无线流量数据中的时间、数据包长度字段信息和光照传感器获取的光度信息,使用SVM和随机森林机器学习算法进行特征训练,通过训练出的机器学习模型推断是否为网络摄像头。
定位算法模块根据无线流量数据和传感器的信息定位摄像头;
定位算法模块根据无线流量数据和传感器的信息定位摄像头具体用于:检测到无线摄像头后,定位算法根据无线流量数据中的RSSI强度和罗盘数据对网络摄像头进行定位。
定位算法根据无线流量数据中的RSSI强度和罗盘数据对网络摄像头进行定位具体包括:以1秒作为周期,统计出周期内RSSI最大时的时刻t,根据无线流量数据中的时间和罗盘数据拟合出时间t时的罗盘方向,当RSSI最大时的罗盘方向即为摄像头方向。
通过UI界面模块展示检测和定位结果并与用户交互。
本发明实施例是与上述方法实施例对应的系统实施例,各个模块的具体操作可以参照方法实施例的描述进行理解,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换本发明各实施例技术方案,并不使相应技术方案的本质脱离本方案的范围。
- 一种摄像头污点检测方法、装置、设备及存储介质
- 一种基于双摄像头的人脸检测方法及装置
- 测试用结构光摄像头的平行度检测方法、装置及可读存储介质
- 通过车载摄像头确定检测行人区域的方法及装置
- 一种基于摄像头实现定位的方法、装置及定位系统
- 一种基于摄像头实现定位的方法、装置及定位系统