摄像头检测方法、装置、存储介质与电子设备与流程

文档序号:26232371发布日期:2021-08-10 16:33阅读:106来源:国知局
本公开涉及信息安全
技术领域
:,尤其涉及一种摄像头检测方法、摄像头检测装置、计算机可读存储介质与电子设备。
背景技术
::随着电子设备与通信技术的发展,摄像头在各行业中的应用越来越广泛。然而,一些不法分子在酒店房间、卫生间、更衣室、出租屋等场所内安装摄像头,进行偷拍,给人们的隐私与人身安全带来极大侵害。上述摄像头大多为针孔式,如果安装在插线孔、路由器、机顶盒、墙体缝隙等位置,则十分隐蔽,难以被发现。因此,如何有效检测出摄像头,是业界亟待解决的技术问题。技术实现要素:本公开提供了一种摄像头检测方法、摄像头检测装置、计算机可读存储介质与电子设备,进而至少在一定程度上解决隐藏的摄像头难以被发现的问题。根据本公开的第一方面,提供一种摄像头检测方法,包括:获取待检测空间内的网络数据包;将所述网络数据包随时间变化的第一特征与所述待检测空间随时间变化的第二特征进行匹配;根据所述第一特征与所述第二特征的匹配结果,确定所述待检测空间内是否存在摄像头。根据本公开的第二方面,提供一种摄像头检测装置,包括:数据获取模块,被配置为获取待检测空间内的网络数据包;特征匹配模块,被配置为将所述网络数据包随时间变化的第一特征与所述待检测空间随时间变化的第二特征进行匹配;检测结果确定模块,被配置为根据所述第一特征与所述第二特征的匹配结果,确定所述待检测空间内是否存在摄像头。根据本公开的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面的摄像头检测方法及其可能的实现方式。根据本公开的第四方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述第一方面的摄像头检测方法及其可能的实现方式。本公开的技术方案具有以下有益效果:构建待检测空间的变化,将所获取的网络数据包的变化与待检测空间的变化进行匹配,以此检测待检测空间内是否存在摄像头。一方面,由于摄像头通过差分方式发送视频数据包,其与待检测空间的变化具有相关性,通过匹配网络数据包与待检测空间两方面变化的特征来检测摄像头,具有较高的准确性。另一方面,本方案适用于检测几乎所有需要联网的摄像头,而不局限于检测配置补光源的摄像头,且本方案受到环境光照等因素的影响较小,对于场景的要求较低,有利于减少漏报的情况。再一方面,本方案基于待检测空间的变化进行检测,对于待检测空间以外的附近摄像头不会进行误报,具有较高的可靠性。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明图1示出本示例性实施方式中运行环境的系统架构图;图2示出本示例性实施方式中一种电子设备的结构示意图;图3示出本示例性实施方式中一种摄像头检测方法的流程图;图4示出本示例性实施方式中一种确定第二特征的流程图;图5示出本示例性实施方式中一种摄像头检测界面的示意图;图6示出本示例性实施方式中一种匹配网络数据包与闪光灯工作时间的示意图;图7示出本示例性实施方式中一种确定摄像头位置的流程图;图8示出本示例性实施方式中一种提示摄像头位置的流程图;图9示出本示例性实施方式中一种摄像头检测装置的结构示意图。具体实施方式现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。附图中所示的流程图仅是示例性说明,不是必须包括所有的步骤。例如,有的步骤还可以分解,而有的步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。相关技术的一种方案中,针对配置有红外等补光源的摄像头,通过检测房间内是否存在特定波长的光源,来判断是否存在摄像头。然而,对于光源的检测很容易受到环境光照的影响,难以保证准确性;并且,对于摄像头未配置补光源的情况,或者摄像头前方存在遮挡物的情况,该方法无法实现有效检测。鉴于上述问题,本公开的示例性实施方式首先提供一种摄像头检测方法。图1示出了本示例性实施方式运行环境的系统架构图。参考图1所示,该系统架构100可以包括数据抓取设备110与数据分析设备120。其中,数据抓取设备110可以是具备网络通讯功能的设备,如手机、平板电脑、个人电脑等。数据抓取设备110位于待检测空间内,用于抓取待检测空间内的网络数据包。待检测空间包括但不限于酒店房间、卫生间、更衣室、出租屋。数据抓取设备110与数据分析设备120可以通过有线或无线的通信链路形成连接,使得数据抓取设备110将所抓取的网络数据包发送至数据分析设备120。数据分析设备120可以是与数据抓取设备110连接的另一终端,或者提供摄像头检测服务的后台服务器。数据分析设备120用于对网络数据包进行分析,以检测待检测空间是否存在摄像头。在一种实施方式中,系统架构100还可以包括变化构造设备130,用于主动构造待检测空间的变化。例如,变化构造设备130可以是闪光灯装置,通过对待检测空间进行闪光,构造出待检测空间的明暗变化。变化构造设备130也可以是投影装置,通过对待检测空间进行投影,构造出待检测空间的图案、纹理变化。变化构造设备130可以包括摄像模组,用于在构造待检测空间变化的同时,采集待检测空间的图像,该图像可以被发送至数据分析设备120,用于辅助检测摄像头。在一种实施方式中,可以将数据抓取设备110、数据分析设备120、变化构造设备130中的任意两者或以上集成到一台设备中。例如,基于一台具备闪光灯的手机,可以实现数据抓取设备110与变化构造设备130的功能,其可以通过控制闪光灯工作来构造待检测空间的变化,同时抓取网络数据包,将网络数据包发送至后台服务器进行分析,以实现摄像头检测;或者,该手机还可以同时实现数据分析设备120的功能,抓取网络数据包后在本地进行分析,以实现摄像头检测。本公开的示例性实施方式还提供一种电子设备,用于执行上述摄像头检测方法。该电子设备可以是上述数据分析设备120。下面以图2中的移动终端200为例,对上述电子设备的构造进行示例性说明。本领域技术人员应当理解,除了特别用于移动目的的部件之外,图2中的构造也能够应用于固定类型的设备。如图2所示,移动终端200具体可以包括:处理器210、内部存储器221、外部存储器接口222、usb(universalserialbus,通用串行总线)接口230、充电管理模块240、电源管理模块241、电池242、天线1、天线2、移动通信模块250、无线通信模块260、音频模块270、扬声器271、受话器272、麦克风273、耳机接口274、传感器模块280、显示屏290、摄像模组291、闪光灯292、马达293、按键294以及sim(subscriberidentificationmodule,用户标识模块)卡接口295等。处理器210可以包括一个或多个处理单元,例如:处理器210可以包括ap(applicationprocessor,应用处理器)、调制解调处理器、gpu(graphicsprocessingunit,图形处理器)、isp(imagesignalprocessor,图像信号处理器)、控制器、编码器、解码器、dsp(digitalsignalprocessor,数字信号处理器)、基带处理器和/或npu(neural-networkprocessingunit,神经网络处理器)等。编码器可以对图像或视频数据进行编码(即压缩),例如对采集的待检测空间的图像或视频进行编码,形成对应的码流数据,以减少数据传输所占的带宽;解码器可以对图像或视频的码流数据进行解码(即解压缩),以还原出图像或视频数据。移动终端200可以支持一种或多种编码器和解码器。这样,移动终端200可以处理多种编码格式的图像或视频,例如:jpeg(jointphotographicexpertsgroup,联合图像专家组)、png(portablenetworkgraphics,便携式网络图形)、bmp(bitmap,位图)等图像格式,mpeg(movingpictureexpertsgroup,动态图像专家组)1、mpeg2、h.263、h.264、hevc(highefficiencyvideocoding,高效率视频编码)等视频格式。在一种实施方式中,处理器210可以包括一个或多个接口,通过不同的接口和移动终端200的其他部件形成连接。内部存储器221可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器221可以包括易失性存储器与非易失性存储器。处理器210通过运行存储在内部存储器221的指令,执行移动终端200的各种功能应用以及数据处理。外部存储器接口222可以用于连接外部存储器,例如microsd卡,实现扩展移动终端200的存储能力。外部存储器通过外部存储器接口222与处理器210通信,实现数据存储功能,例如存储图像,视频等文件。usb接口230是符合usb标准规范的接口,可以用于连接充电器为移动终端200充电,也可以连接耳机或其他电子设备。充电管理模块240用于从充电器接收充电输入。充电管理模块240为电池242充电的同时,还可以通过电源管理模块241为设备供电;电源管理模块241还可以监测电池的状态。移动终端200的无线通信功能可以通过天线1、天线2、移动通信模块250、无线通信模块260、调制解调处理器以及基带处理器等实现。天线1和天线2用于发射和接收电磁波信号。移动通信模块250可以提供应用在移动终端200上2g、3g、4g、5g等移动通信解决方案。无线通信模块260可以提供应用在移动终端200上的wlan(wirelesslocalareanetworks,无线局域网)(如wi-fi(wirelessfidelity,无线保真)网络)、bt(bluetooth,蓝牙)、gnss(globalnavigationsatellitesystem,全球导航卫星系统)、fm(frequencymodulation,调频)、nfc(nearfieldcommunication,近距离无线通信技术)、ir(infrared,红外技术)等无线通信解决方案。移动终端200可以通过gpu、显示屏290及ap等实现显示功能,显示用户界面。例如,当用户进行摄像头检测时,移动终端200可以在显示屏290中显示摄像头检测app(application,应用程序)的界面。移动终端200可以通过isp、摄像模组291、编码器、解码器、gpu、显示屏290及ap等实现拍摄功能。例如,用户可以在摄像头检测app中开启图像或视频拍摄功能,此时可以通过摄像模组291采集待检测空间的图像。移动终端200可以通过音频模块270、扬声器271、受话器272、麦克风273、耳机接口274及ap等实现音频功能。传感器模块280可以包括深度传感器2801、压力传感器2802、陀螺仪传感器2803、气压传感器2804等,以实现相应的感应检测功能。其中,深度传感器2801可以采集待检测空间的深度数据,陀螺仪传感器2803可以采集移动终端200的位姿数据,这两种数据可以辅助实现摄像头的定位。闪光灯292用于增加待检测空间的曝光量,以改变其明暗状态。闪光灯292可以与摄像模组291配套设置,与摄像模组291中的摄像头形成特定的相对位置关系。闪光灯292可以单独工作,也可以在摄像模组291拍摄图像时进行配套工作,例如按照快门时间进行闪光。此外,闪光灯292还可以起到提示的作用,例如在来电、电量过低时进行闪烁提示。马达293可以产生振动提示,也可以用于触摸振动反馈等。按键294包括开机键,音量键等。移动终端200可以支持一个或多个sim卡接口295,用于连接sim卡,以实现通话与移动通信等功能。下面对本示例性实施方式的摄像头检测方法进行说明。该方法的应用场景包括但不限于:用户处于酒店房间内,使用手机打开摄像头检测app并抓取网络数据包,然后执行本示例性实施方式的摄像头检测方法,在app中显示检测结果;或者手机抓取网络数据包后上传至服务器,由服务器执行本示例性实施方式的摄像头检测方法,并将检测结果返回至手机上加以显示。图3示出了摄像头检测方法的示例性流程,可以包括:步骤s310,获取待检测空间内的网络数据包;步骤s320,将上述网络数据包随时间变化的第一特征与待检测空间随时间变化的第二特征进行匹配;步骤s330,根据第一特征与第二特征的匹配结果,确定待检测空间内是否存在摄像头。基于上述方法,构建待检测空间的变化,将所获取的网络数据包的变化与待检测空间的变化进行匹配,以此检测待检测空间内是否存在摄像头。一方面,由于摄像头通过差分方式发送视频数据包,其与待检测空间的变化具有相关性,通过匹配网络数据包与待检测空间两方面变化的特征来检测摄像头,具有较高的准确性。另一方面,本方案适用于检测几乎所有需要联网的摄像头,而不局限于检测配置补光源的摄像头,且本方案受到环境光照等因素的影响较小,对于场景的要求较低,有利于减少漏报的情况。再一方面,本方案基于待检测空间的变化进行检测,对于待检测空间以外的附近摄像头不会进行误报,具有较高的可靠性。下面对图3中的每个步骤进行具体说明。参考图3,在步骤s310中,获取待检测空间内的网络数据包。位于待检测空间内的数据抓取设备可以抓取网络数据包,包括但不限于无线局域网的网络数据包、蓝牙网络数据包、移动网络数据包等。数据抓取设备上可以通过相关的软件或设置来实现网络数据包的抓取。以抓取无线局域网的网络数据包为例,将数据抓取设备的网卡设置为混杂模式,可以抓取所有流经的网络数据包,无论其目的地址是哪里。所抓取的网络数据包包括一定范围内所有网络设备发送的数据包。如果待检测空间内存在摄像头,则抓取的网络数据包也包括摄像头发送的视频数据包。在后续处理中,可以从网络数据包中识别出摄像头的视频数据包并加以检测。因此,本示例性实施方式可以在待检测空间内存在摄像头与其他网络设备的情况下,实现摄像头的检测。在一种实施方式中,为了排除其他网络设备的影响,可以引导用户主动关闭其他网络设备。例如,当用户在数据抓取设备上开启摄像头检测服务时,可以显示提示信息,提示用户关闭待检测空间内已知的网络设备,如智能电器等,或者关闭这些网络设备的网络连接功能。由此,保证所抓取的网络数据包以摄像头发送的视频数据包为主,提高后续处理的效率与摄像头检测的准确性。数据抓取设备抓取到网络数据包后,数据分析设备可以从数据抓取设备获取网络数据包,以用于后续处理。如果数据抓取设备与数据分析设备为两台设备,则数据抓取设备可以通过网络将网络数据包发送至数据分析设备,如果数据抓取设备与数据分析设备为一台设备,则可以通过内部的进程间通信实现网络数据包的发送。继续参考图3,在步骤s320中,将上述网络数据包随时间变化的第一特征与待检测空间随时间变化的第二特征进行匹配。其中,第一特征指网络数据包随时间变化的特征,第二特征指待检测空间随时间变化的特征,第一、第二在这里用于区分特征的不同主体。网络数据包的第一特征可以是网络数据包的一种或多种指标随时间变化的特征。指标包括但不限于:单个数据包的大小,相邻数据包的时间间隔,单位时间内的数据包数量等,一般属于网络通信层的信息,无需对网络数据包进行解密即可得到。而网络数据包中本身包括时间戳,并且数据抓取设备在抓取网络数据包时也可以记录时间信息,因此很容易将上述指标与时间进行对应,以解析指标随时间变化的情况,得到第一特征。本公开对于第一特征的具体形式不做限定,例如其可以是多个时间-指标数组形成的序列。本示例性实施方式中,待检测空间的变化是指能够引起摄像头拍摄画面显著变化的待检测空间的变化。在进行摄像头检测时,可以对待检测空间施加主动作用,使其发生明暗、图案、纹理等方面的强烈变化,包括但不限于:通过开关闪光灯,或者开关待检测空间内的灯、窗帘等,造成待检测空间的明暗变化;在待检测空间内投影或移动与待检测空间本身反差较大的图案,例如向待检测空间的墙壁投影卡通动画,或者将一张卡通海报多次移进移出待检测空间,造成待检测空间的图案、纹理变化。通过记录待检测空间发生变化的时间点,可以得到上述第二特征。本公开对于第二特征的具体形式不做限定,例如其可以是待检测空间发生变化的多个时间点形成的序列。下面对于如何得到第二特征,进行具体的示例性说明。在一种实施方式中,通过上述开关闪光灯造成待检测空间的变化,可以根据闪光灯的工作时间来确定第二特征。参考图4所示,摄像头检测方法可以包括:步骤s410,获取闪光灯对待检测空间进行闪光或照明的工作时间;步骤s420,根据闪光灯的工作时间确定待检测空间随时间变化的第二特征。需要说明的是,在通过闪光灯构造待检测空间的变化时,可以使闪光灯进行闪光,也可以使闪光灯维持开启一段时间以进行照明(如手机上的手电筒功能)。可以由闪光灯装置(如上述变化构造设备)将闪光灯的工作时间发送至数据分析设备,也可以由数据分析设备控制闪光灯工作时,直接获取闪光灯的工作时间。闪光灯的工作时间包括每次闪光或照明的开始时间与结束时间,或者包括每次闪光或照明的开始时间与持续时长,可以计算出结束时间。将每次闪光或照明的开始时间与结束时间作为待检测空间发生变化的时间点,其形成的序列可以作为上述第二特征。闪光灯的工作可以由系统自动控制,也可以由用户手动控制。在一种实施方式中,步骤s410可以包括:响应于对摄像头检测界面中闪光灯控件的操作,控制闪光灯对待检测空间进行闪光或照明,并获取闪光灯的工作时间。图5示出了摄像头检测界面500的示意图,该界面可以是摄像头检测app中的用户界面。在摄像头检测界面500中,提供闪光灯控件510,用户可以对其进行点击、长按等操作,以进行一次闪光,系统记录闪光灯的工作时间。应当理解,闪光灯控件510也可以实现类似照明开关的功能,例如用户点击或长按闪光灯控件510时触发打开闪光灯并保持常亮,用户再次点击或长按时关闭闪光灯,系统记录闪光灯的工作时间。在一种实施方式中,在用户首次使用摄像头检测app或者首次使用摄像头检测app中的闪光灯功能时,需要用户准许摄像头检测app获得闪光灯的使用权限,用户同意后,app可以调用相关的系统服务来控制闪光灯,并获取闪光灯的工作时间等数据。在一种实施方式中,当用户不借助变化构造设备来对待检测空间造成变化时,例如采用上述手动开关窗帘、灯,移动卡通海报等方式,数据分析设备无法从变化构造设备获取待检测空间发生变化的时间。基于此,摄像头检测方法可以包括:响应于对摄像头检测界面中时间控件的操作,确定待检测空间随时间变化的第二特征。其中,时间控件用于使用户手动记录待检测空间发生变化的时间。在摄像头检测界面中,可以显示相关的提示信息,以提示用户在手动构造待检测控件的变化时对时间控件进行操作,例如提示信息可以是“请您多次打开与关闭房间的主灯,并在每一次开灯或关灯时点击xx按键”。系统记录用户操作时间控件的时间,作为待检测空间发生变化的时间,进而可以得到第二特征。在待检测空间发生变化时,摄像头所拍摄到的画面也发生变化。而摄像头通常对画面采用差分编码或传输的方式处理,因此在画面发生变化时,摄像头发送的视频数据包也会发生变化,例如视频数据包的大小或数量发生显著增加。由上可见,当待检测空间内存在摄像头时,待检测空间的变化与摄像头发送的视频数据包的变化应当具有相关性。本示例性实施方式通过匹配上述第一特征与第二特征,以确定网络数据包与待检测空间的变化是否具有相关性。在一种实施方式中,步骤s320可以包括:利用预先训练的机器学习模型对第一特征与第二特征进行处理,输出匹配结果。举例来说,可以在试验场景内获取大量网络数据包随时间变化的第一样本特征与对应的试验场景随时间变化的第二样本特征;将一个第一样本特征与对应的一个第二样本特征形成一个样本数据组;一部分样本数据组是在实际对试验场景构造变化的情况下获取的,其中的第一样本特征与第二样本特征具有相关性,其标注数据(groundtruth)为1;另一部分样本数据组中的第一样本特征与第二样本特征不具有相关性,其标注数据为0;利用样本数据组及其标注数据训练初始构建的机器学习模型,如可以是神经网络模型,当达到预设的准确率时,得到训练完成的机器学习模型。在实际检测中,将上述第一特征与第二特征输入该机器学习模型中,输出两者是否匹配的结果。在另一种实施方式中,上述第一特征包括网络数据包发生变化的第一时间点,第一时间点的数量可以是多个;上述第二特征包括待检测空间发生变化的第二时间点,第二时间点的数量也可以是多个。由此,步骤s320可以包括:对第一时间点与第二时间点进行匹配。其中,对第一时间点与第二时间点进行匹配,是确定两种时间点在时间分布上是否存在相关性。举例来说,从网络数据包中提取时间戳与数据包大小,通过对数据包大小与时间的关系进行拟合,可以将拟合得到的突变点确定为第一时间点;记录待检测空间发生变化的时间点,即第二时间点;对第一时间点与第二时间点进行配对,得到多个时间点对,每个时间点对包括一个第一时间点与对应的一个第二时间点;如果每个时间点对中的第一时间点与第二时间点间的差值不超过预设的时间差阈值(可根据经验设置,如1秒,3秒等),则确定第一时间点与第二时间点匹配成功。考虑到摄像头发送视频数据包可能存在一定的延迟,可以对第一时间点或第二时间点整体进行时间补偿。例如,根据第一个第一时间点与第一个第二时间点间的时间差确定时间补偿值;然后对所有的第二时间点加上该时间补偿值;再对第一时间点与第二时间点进行配对,并判断每个时间点对中的第一时间点与第二时间点间的差值是否不超过时间差阈值,以得到匹配结果。图6示出了对网络数据包的大小发生变化的时间(即第一时间点)与闪光灯工作的时间(即第二时间点)进行匹配的示意图。可以看到,虽然第一时间点与第二时间点并不完全一致,但两者表现出强相关性。将第一时间点与第二时间点两两配对后,计算每个时间点对中的时间差值小于3秒的时间差阈值,可以确定第一时间点与第二时间点匹配成功。在再一种实施方式中,可以将第一特征与第二特征作为两个变量,进行相关性分析。例如第一特征可以是不同时刻的网络数据包的大小,第二特征可以是不同时刻是否开启闪光灯(开启闪光灯则值为1,未开启则值为0)。进而采用相关性分析的统计方法对两个变量进行分析,输出相关性的概率值,如果概率值达到预设的概率阈值(如70%、80%等),则确定第一特征与第二特征匹配成功。继续参考图3,在步骤s330中,根据第一特征与第二特征的匹配结果,确定待检测空间内是否存在摄像头。其中,当第一特征与第二特征匹配成功时,确定待检测空间内存在摄像头,当第一特征与第二特征匹配不成功时,确定待检测空间内不存在摄像头。进而,可以在摄像头检测界面中显示相应的检测结果。由上可见,只有当摄像头位于待检测空间内,拍摄待检测空间的画面时,其发送的视频数据包才会对待检测空间的变化产生响应,使得第一特征与第二特征发生匹配。当摄像头位于待检测空间外,并不拍摄待检测空间的画面时,即使其发送的视频数据包的信号经过待检测空间,并被数据抓取设备所抓取,由于视频数据包不会对待检测空间的变化产生响应,第一特征与第二特征不会发生匹配,本示例性实施方式不会误判为存在摄像头的情况。因此,本示例性实施方式可以将检测范围精确锁定在待检测空间内,保证检测结果的准确性。在一种实施方式中,步骤s310所抓取的网络数据包可能包括多种不同类型的数据包,例如由待检测空间内多个网络设备发送的数据包。可以根据网络数据包的包头信息对不同来源的网络数据包进行分组,包头信息包括但不限于:ip地址(internetprotocol,网络协议地址)、mac地址(mediaaccesscontrol,媒体存取控制位址,即物理地址)、编码信息、通信协议信息等。例如,可以根据网络数据包的目的ip地址对其分组,将目的ip地址相同的网络数据包分为一组。进而,可以对每组网络数据包分别解析其随时间变化的第一特征,得到多组第一特征,分别将每组第一特征与待检测空间随时间变化的第二特征进行匹配,当至少一组第一特征与第二特征匹配成功时,确定待检测空间内存在摄像头。在一种实施方式中,除了匹配第一特征与第二特征外,还可以对网络数据包其他方面的特征进行分析,以检测是否为摄像头发送的视频数据包。具体地,摄像头检测方法可以包括:将网络数据包的格式特征与预设格式特征进行匹配。相应的,在步骤s330中,可以根据第一特征与第二特征的匹配结果,以及网络数据包的格式特征与预设格式特征的匹配结果,确定待检测空间内是否存在摄像头。其中,网络数据包的格式特征是与数据格式、通信协议等相关的特征,包括但不限于端口、流量、mac地址等。摄像头发送视频数据包时,需要基于特定的数据格式、通信协议等,使得视频数据包具有特定的格式特征,即上述预设格式特征。在抓取网络数据包后,可以解析得到其中的格式特征,将其与预设格式特征进行匹配,可以从数据格式方面检测网络数据包是否为摄像头发送的视频数据包。在一种实施方式中,可以将网络数据包的格式特征输入预先训练的另一机器学习模型(不同于匹配第一特征与第二特征的机器学习模型),通过该机器学习模型的处理与识别,输出其与预设格式特征是否匹配的结果。本示例性实施方式可以结合据第一特征与第二特征的匹配结果,以及网络数据包的格式特征与预设格式特征的匹配结果这两方面,来确定最终的检测结果。具体地,可以设置上述两方面匹配结果为“或”的关系,即其中任一匹配结果为匹配成功时,确定存在摄像头,从而进一步减少漏报的情况;也可以设置上述两方面匹配结果为“与”的关系,即两方面匹配结果均为匹配成功时,确定存在摄像头,从而进一步减少误报的情况。本公开对此不做限定。在构造待检测空间的变化时,所采取的方式可分为以下两种:第一种是对待检测空间构造整体变化,例如开关灯、窗帘等,会对整个空间的明暗造成变化;第二种是对待检测空间构造局部变化,例如对准某一区域打开闪光灯或投影卡通动画。如果采用第二种方式,则可以进一步检测摄像头的位置。下面以闪光灯构造局部变化为例进行说明,应当理解,将闪光灯替换为其他构造局部变化的方式,方案实现的原理相同。在一种实施方式中,可以使闪光灯在多种位姿下对待检测空间进行闪光,这样不同位姿下闪光所覆盖的局部区域不同,并获取闪光灯在多种位姿下的工作时间。其中,变化构造设备中可以配置ins(inertianavagationsystem,惯性导航系统),如上述陀螺仪传感器等,用于测量设备的位姿变化,并基于某一初始或参考位姿,输出设备的绝对位姿。或者,变化构造设备中可以配置摄像模组,通过在不同位姿下采集待检测空间的图像,进行视觉定位,以输出设备的位姿。相应的,参考图7所示,摄像头检测方法可以包括:步骤s710,根据闪光灯在每种位姿下的工作时间确定每种位姿对应的第二特征;步骤s720,将第一特征分别与每种位姿对应的第二特征进行匹配;步骤s730,当第一特征与至少一种位姿对应的第二特征匹配成功时,确定待检测空间内存在摄像头。其中,第一特征与至少一种位姿对应的第二特征匹配成功,说明网络数据包的变化与该位姿对应的待检测空间的局部区域变化相关,可以确定待检测空间内存在摄像头,并且该摄像头能够拍摄到该局部区域的画面。进一步的,参考图7所示,摄像头检测方法还可以包括:步骤s740,根据上述至少一种位姿确定摄像头的位置。将上述至少一种位姿称为可疑位姿。举例来说,可以对可疑位姿下所获取的网络数据包进行解析,结合无线电定向的原理,确定摄像头的方位,其偏差不超过20度。在一种实施方式中,摄像头检测方法还可以包括:获取对待检测空间所采集的多张图像,并确定图像与闪光灯的位姿的对应关系;根据上述可疑位姿以及图像与位姿的对应关系,估计摄像头的位置。其中,用于采集图像的相机与闪光灯的相对位置关系固定,通过预先标定,可以确定两者的位姿变换关系,从而将相机采集图像时的位姿转换为闪光灯的位姿,实现图像与闪光灯位姿的对应。相机与闪光灯也可以是配套设置的摄像模组,例如变化构造设备为手机,手机上的摄像模组包括rgb相机与闪光灯。为了简化计算,也可以将相机的位姿等同于闪光灯的位姿。在上述可疑位姿下,闪光灯覆盖的局部区域是摄像头能够拍摄到的局部区域,推测摄像头位于该局部区域的对面方向。因此,根据图像与位姿的对应关系,找到局部区域的对面方向所对应的图像。例如,确定可疑位姿后,将可疑位姿旋转180度,得到反向位姿,获取与反向位姿对应的图像,确定摄像头位于图像所在的区域中。在一种实施方式中,用户手持手机对待检测空间的不同区域进行闪光与图像采集,手机可以根据所采集的图像以及自身的位姿,对待检测空间建立地图数据,如可以是三维点云形成的地图;确定可疑位姿后,可以在所采集的图像中找到可疑位姿对应的图像,这些图像所在的区域是摄像头能够拍摄到的局部区域;进而,在地图数据中确定图像所在区域,即摄像头能够拍摄到的局部区域,根据位置关系,进一步确定对面方向的区域为摄像头可能所在的区域,从而实现对摄像头位置的估计。在一种实施方式中,可以在用户手持手机对待检测空间的不同区域进行闪光与图像采集时,呈现引导信息,使用户以合理的位姿对准待检测空间的不同区域进行闪光与图像采集。例如,用户首选移动手机采集整个待检测空间的图像,并上传至服务器,服务器通过执行slam(simultaneouslocalizationandmapping)算法,对待检测空间建立地图数据。进而,服务器根据地图数据为用户规划出构造空间闪光变化的合理方式,引导用户走到待检测空间的某个合适位置(一般是中央位置),从某一方向开始进行闪光,引导用户沿顺时针或逆时针转动,每转动到合适的角度,显示提示信息“请停留在该位置并进行闪光”等,从而实现对整个待检测空间合理与全面地检测。在一种实施方式中,参考图8所示,在确定摄像头的位置后,还可以执行以下步骤:步骤s810,根据摄像头的位置,在上述多张图像中确定摄像头所在的候选图像;步骤s820,根据候选图像提示摄像头的位置。其中,候选图像可以是上述反向位姿对应的图像,也可以根据地图数据中摄像头可能所在的区域,找到对应的图像,作为候选图像。可以在摄像头检测界面中显示候选图像或者候选图像中的局部区域(即摄像头所在的局部区域),还可以同时显示相关的文字提示信息,例如“以下区域中可能存在摄像头”,以便于用户进一步在待检测空间中查找摄像头。进一步的,还可以在候选图像中检测是否存在可疑的光源,或者提示用户将相机重新对准候选图像的区域,系统检测是否存在可疑的光源,从而更加精确地锁定摄像头的位置。在一种实施方式中,可以在待检测空间的地图数据中标注出摄像头可能所在的区域,并显示相关的文字提示信息,以便于用户进一步查找。本公开的示例性实施方式还提供一种摄像头检测装置,可以配置于上述分析设备中。参考图9所示,该摄像头检测装置900可以包括:数据获取模块910,被配置为获取待检测空间内的网络数据包;特征匹配模块920,被配置为将上述网络数据包随时间变化的第一特征与待检测空间随时间变化的第二特征进行匹配;检测结果确定模块930,被配置为根据第一特征与第二特征的匹配结果,确定待检测空间内是否存在摄像头在一种实施方式中,数据获取模块910,还被配置为:获取闪光灯对待检测空间进行闪光或照明的工作时间;根据闪光灯的工作时间确定待检测空间随时间变化的第二特征。在一种实施方式中,闪光灯的工作时间包括闪光灯在多种位姿下的工作时间。数据获取模块910,被配置为根据闪光灯在每种位姿下的工作时间确定每种位姿对应的第二特征。检测结果确定模块930,被配置为当第一特征与至少一种位姿对应的第二特征匹配成功时,确定待检测空间内存在摄像头。在一种实施方式中,检测结果确定模块930,还被配置为根据上述至少一种位姿确定摄像头的位置。在一种实施方式中,数据获取模块910,还被配置为获取对待检测空间所采集的多张图像,并确定图像与闪光灯的位姿的对应关系。检测结果确定模块930,被配置为根据上述至少一种位姿以及图像与位姿的对应关系,确定摄像头的位置。在一种实施方式中,检测结果确定模块930,被配置为:在确定摄像头的位置后,根据该位置在上述多张图像中确定摄像头所在的候选图像;根据候选图像提示摄像头的位置。在一种实施方式中,数据获取模块910,被配置为:响应于对摄像头检测界面中闪光灯控件的操作,控制闪光灯对待检测空间进行闪光或照明,并获取闪光灯的工作时间。在一种实施方式中,数据获取模块910,被配置为:响应于对摄像头检测界面中时间控件的操作,确定待检测空间随时间变化的第二特征。在一种实施方式中,特征匹配模块920,被配置为利用预先训练的机器学习模型对第一特征与第二特征进行处理,输出匹配结果。在一种实施方式中,特征匹配模块920,还被配置为将网络数据包的格式特征与预设格式特征进行匹配;检测结果确定模块930,被配置为根据第一特征与第二特征的匹配结果,以及网络数据包的格式特征与预设格式特征的匹配结果,确定待检测空间内是否存在摄像头。上述装置中各部分的细节在方法部分实施方式中已经详细说明,因而不再赘述。本公开的示例性实施方式还提供了一种计算机可读存储介质,可以实现为一种程序产品的形式,其包括程序代码,当程序产品在电子设备上运行时,程序代码用于使电子设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。在一种实施方式中,该程序产品可以实现为便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在电子设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的示例性实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。所属
技术领域
:的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施方式。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本
技术领域
:中的公知常识或惯用技术手段。说明书和实施方式仅被视为示例性的,本公开的真正范围和精神由权利要求指出。应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限定。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1