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

保护用户信息安全的方法、装置、计算机设备和存储介质与流程

2022-03-02 02:04:10 来源:中国专利 TAG:


1.本技术涉及图像处理技术领域,特别是涉及一种保护用户信息安全的方法、装置、计算机设备和存储介质。


背景技术:

2.目前互联网金融领域的发展催生出了越来越多的业务,一些业务往往需要采集用户手机中的信息,其中,避免不了收集到用户通过键盘输入的一些敏感信息。以远程视频面审为例,用户与面审员进行远程视频交流,并对手机的屏幕进行录制,录制后的视频将被存档。在录屏过程中,如果出现用户输入账号密码、支付密码等操作,用户整个输入过程将被记录下来,从而引发安全风险。由此,对于需要采集用户屏幕信息、业务涉及屏幕共享等功能的场景,保护用户隐私与数据安全是必不可少的。因此,现急需一种保护用户信息安全的方法。


技术实现要素:

3.基于此,有必要针对上述技术问题,提供一种保护用户信息安全的方法、装置、计算机设备和存储介质。
4.第一方面,本技术一种保护用户信息安全的方法,该方法包括:
5.获取当前视频帧,当前视频帧是基于屏幕共享所得到的;
6.若确定当前视频帧的识别结果为存在虚拟键盘,则对当前视频帧作虚拟键盘屏蔽处理,识别结果是基于识别模型对当前视频帧的分类结果所确定的。
7.在其中一个实施例中,识别模型包括图像特征提取子模型及分类子模型;识别模型的训练过程,包括:
8.获取训练样本图像及对应的分类标签,分类标签为以下三种分类结果中的任意一种,以下三种分类结果分别为存在虚拟键盘、不存在虚拟键盘以及不为录屏图像;
9.通过图像特征提取子模型,提取训练样本图像的图像特征,将提取到的图像特征输入至分类子模型,输出训练样本图像的预测分类结果;
10.基于预测分类结果与分类标签之间的差异,调整图像特征提取子模型及分类子模型的参数并继续训练,直至满足训练停止条件时结束训练,得到识别模型。
11.在其中一个实施例中,图像特征提取子模型依次包括第一卷积层、第一池化层、第二卷积层、第二池化层、第三卷积层、第三池化层、第一全连接层、丢弃层及第二全连接层。
12.在其中一个实施例中,当前视频帧来源于已录屏视频;当前视频帧的识别结果通过如下过程确定:
13.将已录屏视频中每一视频帧输入至识别模型,输出每一视频帧的分类结果,分类结果用于初步指示视频帧中是否存在虚拟键盘;
14.若当前视频帧的分类结果为存在虚拟键盘,则根据当前视频帧在已录屏视频中的帧序号、除当前视频帧之外的每一视频帧的分类结果以及帧序号,对当前视频帧的分类结
果进行校验,得到当前视频帧的识别结果。
15.在其中一个实施例中,根据当前视频帧在已录屏视频中的帧序号、除当前视频帧之外的每一视频帧的分类结果以及帧序号,对当前视频帧的分类结果进行校验,得到当前视频帧的识别结果,包括:
16.基于当前视频帧在已录屏视频中的帧序号,确定当前视频帧对应的帧序号筛选区间;
17.基于除当前视频帧之外的每一视频帧的分类结果,统计帧序号位于帧序号筛选区间内的所有视频帧中分类结果为存在虚拟键盘的视频帧数量;
18.若统计得到的视频帧数量不小于预设阈值,则确定当前视频帧的识别结果为存在虚拟键盘,若统计得到的视频帧数量小于预设阈值,则确定当前视频帧的识别结果为不存在虚拟键盘。
19.在其中一个实施例中,对当前视频帧作虚拟键盘屏蔽处理,包括:
20.确定当前视频帧中的虚拟键盘区域;
21.基于预设卷积核,对虚拟键盘区域作均值滤波处理。
22.第二方面,本技术还提供了一种保护用户信息安全的装置,该装置包括:
23.获取模块,用于获取当前视频帧,当前视频帧是基于屏幕共享所得到的;
24.屏蔽处理模块,用于当确定当前视频帧的识别结果为存在虚拟键盘时,则对当前视频帧作虚拟键盘屏蔽处理,识别结果是基于识别模型对当前视频帧的分类结果所确定的。
25.第三方面,本技术还提供了一种计算机设备,该计算机设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现以下步骤:
26.获取当前视频帧,当前视频帧是基于屏幕共享所得到的;
27.若确定当前视频帧的识别结果为存在虚拟键盘,则对当前视频帧作虚拟键盘屏蔽处理,识别结果是基于识别模型对当前视频帧的分类结果所确定的。
28.第四方面,本技术还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
29.获取当前视频帧,当前视频帧是基于屏幕共享所得到的;
30.若确定当前视频帧的识别结果为存在虚拟键盘,则对当前视频帧作虚拟键盘屏蔽处理,识别结果是基于识别模型对当前视频帧的分类结果所确定的。
31.第五方面,本技术还提供了一种计算机程序产品。计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
32.获取当前视频帧,当前视频帧是基于屏幕共享所得到的;
33.若确定当前视频帧的识别结果为存在虚拟键盘,则对当前视频帧作虚拟键盘屏蔽处理,识别结果是基于识别模型对当前视频帧的分类结果所确定的。
34.上述保护用户信息的方法、装置、计算机设备和存储介质,由于在屏幕共享中,在确定共享的视频帧中存在虚拟键盘时,可以对共享的视频帧中的虚拟键盘进行屏蔽处理,从而使得用户在对虚拟键盘进行操作的过程中输入的敏感信息及输入细节不会泄露,进而保护用户隐私与数据安全。
附图说明
35.图1为一个实施例中保护用户信息安全的过程的实施场景示意图;
36.图2为一个实施例中保护用户信息安全的方法的流程示意图;
37.图3为一个实施例中识别模型的训练方法的流程示意图;
38.图4为一个实施例中数据打标界面的示意图;
39.图5为一个实施例中存在虚拟键盘的图像的示意图;
40.图6为一个实施例中不存在虚拟键盘的图像的示意图;
41.图7为一个实施例中非录屏图像的示意图;
42.图8为一个实施例中图像特征提取子模型的工作流程示意图;
43.图9为一个实施例中屏蔽处理后的视频帧的示意图;
44.图10为一个实施例中训练系统与检测系统之间的协作流程示意图;
45.图11为一个实施例中已录屏视频的屏蔽处理流程示意图;
46.图12为一个实施例中实时视频流的屏蔽处理流程示意图;
47.图13为一个实施例中保护用户信息安全的装置的结构框图;
48.图14为一个实施例中计算机设备的内部结构图。
具体实施方式
49.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
50.可以理解,本技术所使用的术语“第一”、“第二”等可在本文中用于描述各种专业名词,但除非特别说明,这些专业名词不受这些术语限制。这些术语仅用于将一个专业名词与另一个专业名词区分。举例来说,在不脱离本技术的范围的情况下,第三预设阈值与第四预设阈值可以相同可以不同。
51.目前互联网金融领域的发展催生出了越来越多的业务,一些业务往往需要采集用户手机中的信息,其中,避免不了收集到用户通过键盘输入的一些敏感信息。以远程视频面审为例,用户与面审员进行远程视频交流,并对手机的屏幕进行录制,录制后的视频将被存档。在录屏过程中,如果出现用户输入账号密码、支付密码等操作,用户整个输入过程将被记录下来,从而引发安全风险。由此,对于需要采集用户屏幕信息、业务涉及屏幕共享等功能的场景,保护用户隐私与数据安全,对用户输入的敏感信息以及输入的细节进行屏蔽是必不可少的。
52.基于上述需求,本技术实施例提供了一种保护用户信息安全的方法,该方法可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。终端102通过录屏功能录制视频,将录屏视频传输至服务器104,由服务器104对录屏视频中存在虚拟键盘的视频帧作屏蔽处理。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器
组成的服务器集群来实现。
53.可以理解的是,实际实施过程中,也可以不由服务器104参与,而是由终端102录屏,并自行对录屏视频中存在虚拟键盘的视频帧作屏蔽处理。此时,执行主体即仅为终端102。
54.在一些实施例中,参见图2,提供了一种保护用户信息安全的方法。以该方法应用于图1中的服务器104为例进行说明,包括以下步骤:
55.202、获取当前视频帧,当前视频帧是基于屏幕共享所得到的。
56.可以理解的是,实际实施过程中可以存在对已有录频视频作虚拟键盘屏蔽处理以及对实时视频流作虚拟键盘屏蔽处理的两种需求。由此,当前视频帧可以是实时视频流中的当前某一视频帧(也即实时共享屏幕),也可以是已有录频视频中的某一视频帧(也即延时共享屏幕),本技术实施例不对当前视频帧的来源对象作具体限定。
57.204、若确定当前视频帧的识别结果为存在虚拟键盘,则对当前视频帧作虚拟键盘屏蔽处理,识别结果是基于识别模型对当前视频帧的分类结果所确定的。
58.其中,识别模型的类型可以为神经网络模型,如卷积神经网络,也可以为其它机器学习模型,本技术实施例对此不作具体限定。通过将当前视频帧输入至识别模型,可以输出对当前视频帧的分类结果,分类结果可以用于初步指示当前视频帧是否存在虚拟键盘。需要说明的是,在本技术实施例中可以将分类结果直接作为识别结果。但考虑到存在误将视频帧分类为存在虚拟键盘的情形,从而可以对分类结果进行校验,从而进一步确定得到识别结果。
59.其中,校验过程可以基于虚拟键盘布局结构实现,如进一步检测出虚拟键盘在视频帧中的所处区域,再判断所处区域占整个视频帧的比例是否符合虚拟键盘布局结构的预设占比,如果不符合,则说明可能是误分类,从而可以将识别结果确定为当前视频帧不存在虚拟键盘。另外,虚拟键盘屏蔽处理主要是为了在屏幕共享场景下,将虚拟键盘模糊化,以使得用户在对虚拟键盘进行操作的过程中输入的敏感信息及输入细节不会泄露,以保护用户隐私与数据安全。
60.例如,可以虚拟键盘区域的色阶细节劣化并打乱色块,或者可以直接打上固定的贴图或者马赛克等,以达到屏蔽虚拟键盘区域信息的目的,并对非虚拟键盘区域的部分信息进行保留,本技术实施例不对虚拟键盘屏蔽处理的方式作具体限定。
61.本技术实施例提供的方法,由于在屏幕共享中,在确定共享的视频帧中存在虚拟键盘时,可以对共享的视频帧中的虚拟键盘进行屏蔽处理,从而使得用户在对虚拟键盘进行操作的过程中输入的敏感信息及输入细节不会泄露,进而保护用户隐私与数据安全。
62.在一些实施例中,参见图3,提供了一种识别模型的训练方法。以该方法应用于图1中的服务器104为例进行说明,包括以下步骤:
63.302、获取训练样本图像及对应的分类标签,分类标签为以下三种分类结果中的任意一种,以下三种分类结果分别为存在虚拟键盘、不存在虚拟键盘以及不为录屏图像。
64.具体地,以训练识别模型的过程由训练系统实现为例,获取训练样本图像的过程可以通过训练系统中的数据获取模块实现,而后续的训练过程则可以通过训练系统中的训练模块实现。为使得识别模型能识别出不同型号终端录屏中的虚拟键盘,在获取训练样本图像时可以获取各型号手机在使用各类app时的屏幕截图或者录屏截图。其中,获取工具可
以为各类爬虫,获取来源可以为社交网站、论坛及贴吧等。
65.具体地,数据获取模块通过使用爬虫,定时从与“手机输入法”与“虚拟键盘”相关的社交网站、论坛及贴吧中抓取各型号的手机在使用各类app时的屏幕截图,以作为训练样本图像。
66.分类标签主要是起到标记作用,确定每一训练样本图像的分类标签即相当于“打标”过程,该“打标”过程可以通过训练系统中的数据打标模块实现,数据打标模块的实现界面可如图4所示。实际实施过程中,数据打标模块可以通过图4所示的界面,显示由数据获取模块获取到的训练样本图像,数据标注人员可以通过图4中提供的按钮对每一训练样本图像进行手动分类,从而得到每一训练样本图像的分类标签。
67.可以理解的是,图4中的“有键盘”即对应分类结果为“存在虚拟键盘”,“无键盘”即对应分类结果为“不存在虚拟键盘”,而“非截屏”即对应分类结果为“不为录屏图像”。其中,视频帧中存在虚拟键盘、不存在虚拟键盘及不为录屏图像的情形可分别参考图5、图6及图7。图7为人半身图像,而非是录屏图像。
68.通过数据打标模块对训练样本图像进行分类,可得到不同分类标签的训练样本图像。可以理解的是,这些训练样本图像中部分训练样本图像可以构成后面训练过程所使用的训练数据集。而在机器学习中,除了训练过程之外,通常还需要验证过程及测试过程。由此,这些训练样本图像中还可以分出部分训练样本图像构成后续验证过程所使用的验证数据集,最后剩下的训练样本图像可构成后续测测试过程所使用的测试数据集。
69.其中,对于经由训练数据集训练完成的模型,验证过程主要是为了调整模型中分类子模型的参数,如在神经网络中选择隐藏单元数,验证过程还可以用来确定网络结构或者控制模型复杂程度的参数。而测试过程,主要是为了测试训练完成的模型的分辨能力。需要说明的是,训练数据集、验证数据集及测试数据集中各自数据量的大小可根据需求进行设置,实际实施过程中三者数据量的大小比例可设置为8:1:1,本技术实施例对此不作具体限定。
70.304、通过图像特征提取子模型,提取训练样本图像的图像特征,将提取到的图像特征输入至分类子模型,输出训练样本图像的预测分类结果。
71.其中,图像特征提取子模型可以由不同处理层组成,如卷积层及全连接层等,而分类子模型可以sigmoid分类器或softmax函数等,本技术实施例对此不作具体限定。
72.306、基于预测分类结果与分类标签之间的差异,调整图像特征提取子模型及分类子模型的参数并继续训练,直至满足训练停止条件时结束训练,得到识别模型。
73.可以理解的是,上述训练过程主要是监督式的训练过程。其中,训练停止条件可以为模型达到收敛,模型收敛条件可以为达到最大迭代训练次数,或者相邻两次迭代训练过程中权值变化已经足够小,如小于某一设定阈值,本技术实施例不对训练停止条件的具体内容作具体限定。
74.本技术实施例提供的方法,由于虚拟键盘具有明显的特征,如梯度特征、形状特征及空间关系特征等,从而通过使用神经网络模型,可以自动隐式地提取当前视频帧中的虚拟键盘特征,避免手工设计繁琐的特征。由此,在识别当前视频帧中是否存在虚拟键盘时识别效率比较高。
75.在一些实施例中,图像特征提取子模型依次包括第一卷积层、第一池化层、第二卷
积层、第二池化层、第三卷积层、第三池化层、第一全连接层、丢弃层及第二全连接层。
76.其中,第一至第三卷积层所使用的卷积核大小可以为3*3,第一卷积层所使用的卷积核数量可以为32,第二卷积层及第三卷积层所使用的卷积核数量可以为64,第一至第三池化层所使用的池化核大小可以为2*2。可以理解的是,上述仅为给出的一种子模型设计,实际实施过程中,可以根据需求更改子模型的配置,本技术实施例对此不作具体限定。
77.为了便于理解,现以当前视频帧为例,对将当前视频帧输入至图像特征提取子模型中,提取当前视频帧的图像特征的过程进行说明。由于目前终端分辨率越来越高,从而将当前视频帧直接作为图像特征提取对象,则势必会存在不小的计算量。由此,在提取图像特征之前,可以对当前视频帧作预处理。其中,预处理可以包括色域转换处理及缩放处理。色域转换处理主要是将图像拉齐至同一色域标准下进行处理,如rgb色域模式,而缩放处理主要是为了降低图像的分辨率,如150*150的分辨率,本技术实施例不对使用的色域模式及分辨率大小作具体限定。
78.可以理解的是,对于rgb色域模式实则有3个通道,当前视频帧在经过预处理后,可以得到三个通道的150*150的图像,也即150*150*3的图像。基于3*3的卷积核,通过第一卷积层对150*150*3的图像进行处理,可以得到148*148*32维度的特征。为了避免出现梯度爆炸和梯度消失等问题,经过第一卷积层卷积处理后得到的148*148*32维度的特征,可以通过relu函数作线性修正处理。
79.经过第一卷积层处理后,可基于2*2池化核,由第一池化层对148*148*32维度的特征进行处理,得到74*74*32维度的特征。其中,第一至第三池化层均可以采用最大池化的方式,对图像维度进行降维,以去除冗余信息。接着,74*74*32维度的特征可以输入至第二卷积层,同样可基于3*3的卷积核进行处理,可以得到74*74*64维度的特征。同理,可以通过relu函数作线性修正处理。将74*74*64维度的特征输入至第二池化层,基于2*2的池化核进行处理,可以得到36*36*64维度的特征。
80.将到36*36*64维度的特征输入至第三卷积层,基于3*3的卷积核对36*36*64维度的特征进行处理,可以得到34*34*64维度的特征。同理,可以通过relu函数作线性修正处理。将34*34*64维度的特征输入至第三池化层,基于2*2的池化核进行处理,可以得到17*17*64维度的特征,也即64个通道的17*17维度的特征。
81.为实现第三池化层与第一全连接层之间的过渡,在两者之间还可以添加flatten层。flatten层主要是为了将输入的特征“压平”,即将输入的多维特征一维化。17*17*64维度的特征经过flatten层后,可以得到18496维的一维向量。将该18496维的一维向量输入至第一全连接层,得到128维的一维向量。该128维的一维向量同样可以通过relu函数作线性修正处理。
82.接着,将该128维的一维向量输入至丢弃层,也即dropout层,可以避免过拟合,提高模型的泛化能力。其中,可以为丢弃层设置丢弃率,也即随机将特征设置为0的比例。经由丢弃层处理后的特征,可再输入至第二全连接层,从而得到最终提取得到的图像特征。实际实施过程中,上述各层处理过程可如图8所示。将最终提取到的图像特征输入至分类子模型,如sigmoid分类器,即可得到当前视频帧的分类结果。
83.上述过程主要从提取当前视频帧的图像特征的过程,说明图像特征提取子模型的工作流程。需要说明的的是,实际训练模型的过程中,可以利用交叉熵误差函数进行反向传
播,并使用随机梯度下降算法对模型参数和偏置进行调整和优化,当模型达到收敛条件时停止训练,并保存模型。另外,训练过程中可添加tensorboard回调以实时观察训练情况,并可添加earlystop回调以防止模型过拟合,还可添加checkpoint回调对训练的模型按照迭代次数保存,以保证训练过程顺利完成。
84.本技术实施例提供的方法,由于设计了三层卷积层、三层池化层、两层全连接层以及一层丢弃层,从而可得到较高分类准确率的识别模型。
85.由上述实施例可知,当前视频帧可以来源于实时视频流,也可以来源于已录屏视频。可以理解的是,视频帧之间时间间隔通常很短,若某一视频帧中存在虚拟键盘,则不太可能仅仅是该一个视频帧中会出现虚拟键盘,虚拟键盘的存在会维持一段时间,如该视频帧的前后某些视频帧可能都会存在虚拟键盘。基于此,在该视频帧对应的分类结果以及该视频帧的前后某些视频帧对应的分类结果已知的前提下,可以利用这种已知的前提,对视频帧的分类结果进行校验。可以理解的是,对于实时视频流,后续视频帧的分类结果是无法预知的,而对于已录屏视频,则是可以获知的。
86.由此,对于已录屏视频,也即在当前视频帧来源于已录屏视频的前提下,在一些实施例中,本技术实施例还可以提供一种对当前视频帧的分类结果进行校验的方法,该方法包括:将已录屏视频中每一视频帧输入至识别模型,输出每一视频帧的分类结果,分类结果用于初步指示视频帧中是否存在虚拟键盘;若当前视频帧的分类结果为存在虚拟键盘,则根据当前视频帧在已录屏视频中的帧序号、除当前视频帧之外的每一视频帧的分类结果以及帧序号,对当前视频帧的分类结果进行校验,得到当前视频帧的识别结果。
87.其中,获取已录屏视频中每一视频帧的分类结果的过程可参考上述实施例的内容,此处不再赘述。以当前视频帧为例,在当前视频帧的分类结果为存在虚拟键盘的前提下,在一些实施例中,本技术实施例不对根据当前视频帧在已录屏视频中的帧序号、除当前视频帧之外的每一视频帧的分类结果以及帧序号,对当前视频帧的分类结果进行校验,得到当前视频帧的识别结果的方式作具体限定,包括但不限于:
88.基于当前视频帧在已录屏视频中的帧序号,确定当前视频帧对应的帧序号筛选区间;基于除当前视频帧之外的每一视频帧的分类结果,统计帧序号位于帧序号筛选区间内的所有视频帧中分类结果为存在虚拟键盘的视频帧数量;若统计得到的视频帧数量不小于预设阈值,则确定当前视频帧的识别结果为存在虚拟键盘,若统计得到的视频帧数量小于预设阈值,则确定当前视频帧的识别结果为不存在虚拟键盘。
89.具体地,将当前视频帧在已录屏视频中的帧序号记为x,则当前视频帧对应的帧序号筛选区间可以记为[x-y1,x y1]。其中,y1与y2的值可以相同,具体可以为已录屏视频的录制帧率fps。由此,当前视频帧对应的帧序号筛选区间可以记为[x-fps,x fps]。其中,fps的值可以为30,本技术实施例对此不作具体限定。
[0090]
以x取值为600为例,则当前视频帧对应的帧序号筛选区间可以记为[585,615]。由于已录制视频中每一视频帧的分类结果已知,从而先确定帧序号处于[585,615]这一区间内的视频帧中,有哪些视频帧的分类结果为存在虚拟键盘,并统计这些视频帧的数量,即可得到上述过程提及的视频帧数量,并可记为n。将n与预设阈值进行比较,若小于预设阈值,则可以认为当前视频帧为误分类帧。此时,可以对当前视频帧的分类结果进行修正,修正得到的识别结果即为不存在虚拟键盘。
[0091]
需要说明的是,预设阈值可以根据fps的数值来确定,如为fps数值的一半,本技术实施例对此不作具体限定。对于已录屏视频中每一视频帧的分类结果,均可以通过上述过程进行校验,以得到更为准确的识别结果。还需要说明的是,若当前视频帧来源实时视频流,则通常无法按照上述过程对分类结果进行校验。此时,可以直接将分类结果作为识别结果。
[0092]
本技术实施例提供的方法,由于可基于视频帧在已录屏视频中的帧序号,对视频帧的分类结果进行校验,从而可以提高对视频帧识别结果的准确率。
[0093]
在一些实施例中,对当前视频帧作虚拟键盘屏蔽处理,包括:确定当前视频帧中的虚拟键盘区域;基于预设卷积核,对虚拟键盘区域作均值滤波处理。
[0094]
其中,在已知终端型号以及使用的输入法app前提下,虚拟键盘区域通常是可以获知的。具体地,虚拟键盘通常占据屏幕下方位置,且通常是填充满的。不同终端型号或者不同的输入法app,虚拟键盘对应占据的屏幕占比可能会不同。例如,虚拟键盘占据的屏幕占比为60%,通常指的是屏幕上方40%的区域为非虚拟键盘区域,而屏幕下方60%的区域为虚拟键盘区域。
[0095]
实际实施过程中,可以预先收集常见终端型号,以及常见输入法app等相关数据,如终端型号的分辨率及输入法设置的虚拟键盘分辨率等数据,从而根据该相关数据确定实际应用过程中虚拟键盘的屏幕占比,进而再根据虚拟键盘的屏幕占比,确定当前视频帧中的虚拟键盘区域。当然,除了根据屏幕占比确定虚拟键盘区域之外,还可以通过手动标注的方式确定虚拟键盘区域,本技术实施例对此不作具体限定。
[0096]
在确定当前视频帧中的虚拟键盘区域后,即可基于预设卷积核,作均值滤波处理。其中,预设卷积核的大小可以为150*150,本技术实施例对此不作具体限定。在经过均值滤波处理之前的当前视频帧可参考图5,经过均值滤波处理后的当前视频帧可参考图9。如图9所示,均值滤波处理相当于在虚拟键盘区域处打上了马赛克,以屏蔽用户输入的敏感信息以及输入的细节。需要说明的是,实际实施过程中,除了均值滤波处理之外,还可以采用高斯滤波处理,本技术实施例不对处理方式作具体限定。
[0097]
综合上述说明可知,本技术实施例提及的方案主要包括识别模型的训练过程、虚拟键盘的识别过程及虚拟键盘的屏蔽处理过程。由上述提及的内容可知,识别模型的训练过程可以由训练系统实现。训练系统可以包括数据获取模块、数据打标模块及训练模块。实际实施过程中,虚拟键盘的识别过程及虚拟键盘的屏蔽处理过程可以由检测系统实现,也即整个保护用户信息安全的过程可以由检测系统及识别系统共同实现。
[0098]
其中,检测系统可以包括输入模块、键盘检测模块、检测校验模块以及键盘打码模块这四个模块。输入模块主要以已录屏视频及实时视频流的形式接收终端录屏形成的视频帧,并可以使用opencv对接收到的视频帧进行渲染和预处理。
[0099]
键盘检测模块可将输入模块预处理过后的视频帧输入至识别模型,通过识别模型中神经网络的正向传播,推断出分类结果。此时,若视频帧来源于实时视频流,则可以将分类结果直接作为识别结果。对于从实时视频流中后续接收到的视频帧,可逐一推断出分类结果。
[0100]
若视频帧来源于已录屏视频,则检测校验模块可通过上述过程提及的帧校验算法对分类结果进行校验,将误分类的视频帧进行剔除,最后得到一个最终的帧序号列表,用于
确定已录屏视频中哪些视频帧中存在虚拟键盘。需要说明的是,由于误分类的视频帧对于识别模型训练过程也存在训练价值,从而检测校验模块还可以将剔除的视频帧送至训练系统中的数据获取模块,形成反馈,以供下次训练。
[0101]
最后,无论是已录屏视频,还是实时视频流,均可以通过键盘打码模块实现虚拟键盘屏蔽处理。其中,对于已录屏视频,键盘打码模块可以根据最终的帧序号列表,将已录屏视频中对应的视频帧中的虚拟键盘区域进行打码,从而得到打码后的已录屏视频。而对于实时视频流,键盘检测模块在检测出存在虚拟键盘的视频帧后,则可以不用通过检测校验模块,也不用维护帧序号列表,而是直接送入键盘打码模块进行实时打码处理。其中,训练系统与检测系统之间的协作流程可参考图10。结合上述说明,对于已录屏视频,本技术实施例提供的方法对应的流程可参考图11。对于实时视频流,本技术实施例提供的方法对应的流程可参考图12。
[0102]
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0103]
基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的保护用户信息安全的方法的保护用户信息安全的装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个保护用户信息安全的装置实施例中的具体限定可以参见上文中对于保护用户信息安全的方法的限定,在此不再赘述。
[0104]
在一个实施例中,如图13所示,提供了一种保护用户信息安全的装置,包括:获取模块1302及屏蔽处理模块1304,其中:
[0105]
获取模块1302,用于获取当前视频帧,当前视频帧是基于屏幕共享所得到的;
[0106]
屏蔽处理模块1304,用于当确定当前视频帧的识别结果为存在虚拟键盘时,则对当前视频帧作虚拟键盘屏蔽处理,识别结果是基于识别模型对当前视频帧的分类结果所确定的。
[0107]
在一个实施例中,识别模型包括图像特征提取子模型及分类子模型;相应地,该装置还包括训练模块;
[0108]
训练模块,用于获取训练样本图像及对应的分类标签,分类标签为以下三种分类结果中的任意一种,以下三种分类结果分别为存在虚拟键盘、不存在虚拟键盘以及不为录屏图像;通过图像特征提取子模型,提取训练样本图像的图像特征,将提取到的图像特征输入至分类子模型,输出训练样本图像的预测分类结果;基于预测分类结果与分类标签之间的差异,调整图像特征提取子模型及分类子模型的参数并继续训练,直至满足训练停止条件时结束训练,得到识别模型。
[0109]
在一个实施例中,图像特征提取子模型依次包括第一卷积层、第一池化层、第二卷积层、第二池化层、第三卷积层、第三池化层、第一全连接层、丢弃层及第二全连接层。
[0110]
在一个实施例中,当前视频帧来源于已录屏视频;该装置还包括确定模块,该确定
模块包括输出单元及校验单元;
[0111]
输出单元,用于将已录屏视频中每一视频帧输入至识别模型,输出每一视频帧的分类结果,分类结果用于初步指示视频帧中是否存在虚拟键盘;
[0112]
校验单元,用于当当前视频帧的分类结果为存在虚拟键盘时,则根据当前视频帧在已录屏视频中的帧序号、除当前视频帧之外的每一视频帧的分类结果以及帧序号,对当前视频帧的分类结果进行校验,得到当前视频帧的识别结果。
[0113]
在一个实施例中,校验单元,用于基于当前视频帧在已录屏视频中的帧序号,确定当前视频帧对应的帧序号筛选区间;基于除当前视频帧之外的每一视频帧的分类结果,统计帧序号位于帧序号筛选区间内的所有视频帧中分类结果为存在虚拟键盘的视频帧数量;若统计得到的视频帧数量不小于预设阈值,则确定当前视频帧的识别结果为存在虚拟键盘,若统计得到的视频帧数量小于预设阈值,则确定当前视频帧的识别结果为不存在虚拟键盘。
[0114]
在一个实施例中,屏蔽处理模块1304,用于确定当前视频帧中的虚拟键盘区域;基于预设卷积核,对虚拟键盘区域作均值滤波处理。
[0115]
本发明实施例提供的装置,由于在屏幕共享中,在确定共享的视频帧中存在虚拟键盘时,可以对共享的视频帧中的虚拟键盘进行屏蔽处理,从而使得用户在对虚拟键盘进行操作的过程中输入的敏感信息及输入细节不会泄露,进而保护用户隐私与数据安全。
[0116]
关于保护用户信息安全的装置的具体限定可以参见上文中对于保护用户信息安全的方法的限定,在此不再赘述。上述保护用户信息安全的装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0117]
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图14所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储变狼数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种保护用户信息安全的方法。
[0118]
本领域技术人员可以理解,图14中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0119]
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
[0120]
获取当前视频帧,当前视频帧是基于屏幕共享所得到的;
[0121]
若确定当前视频帧的识别结果为存在虚拟键盘,则对当前视频帧作虚拟键盘屏蔽处理,识别结果是基于识别模型对当前视频帧的分类结果所确定的。
[0122]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
[0123]
获取训练样本图像及对应的分类标签,分类标签为以下三种分类结果中的任意一
种,以下三种分类结果分别为存在虚拟键盘、不存在虚拟键盘以及不为录屏图像;
[0124]
通过图像特征提取子模型,提取训练样本图像的图像特征,将提取到的图像特征输入至分类子模型,输出训练样本图像的预测分类结果;
[0125]
基于预测分类结果与分类标签之间的差异,调整图像特征提取子模型及分类子模型的参数并继续训练,直至满足训练停止条件时结束训练,得到识别模型。
[0126]
在一个实施例中,处理器执行计算机程序时,图像特征提取子模型依次包括第一卷积层、第一池化层、第二卷积层、第二池化层、第三卷积层、第三池化层、第一全连接层、丢弃层及第二全连接层。
[0127]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
[0128]
将已录屏视频中每一视频帧输入至识别模型,输出每一视频帧的分类结果,分类结果用于初步指示视频帧中是否存在虚拟键盘;
[0129]
若当前视频帧的分类结果为存在虚拟键盘,则根据当前视频帧在已录屏视频中的帧序号、除当前视频帧之外的每一视频帧的分类结果以及帧序号,对当前视频帧的分类结果进行校验,得到当前视频帧的识别结果。。
[0130]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
[0131]
基于当前视频帧在已录屏视频中的帧序号,确定当前视频帧对应的帧序号筛选区间;
[0132]
基于除当前视频帧之外的每一视频帧的分类结果,统计帧序号位于帧序号筛选区间内的所有视频帧中分类结果为存在虚拟键盘的视频帧数量;
[0133]
若统计得到的视频帧数量不小于预设阈值,则确定当前视频帧的识别结果为存在虚拟键盘,若统计得到的视频帧数量小于预设阈值,则确定当前视频帧的识别结果为不存在虚拟键盘。
[0134]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
[0135]
确定当前视频帧中的虚拟键盘区域;
[0136]
基于预设卷积核,对虚拟键盘区域作均值滤波处理。
[0137]
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
[0138]
获取当前视频帧,当前视频帧是基于屏幕共享所得到的;
[0139]
若确定当前视频帧的识别结果为存在虚拟键盘,则对当前视频帧作虚拟键盘屏蔽处理,识别结果是基于识别模型对当前视频帧的分类结果所确定的。
[0140]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
[0141]
获取训练样本图像及对应的分类标签,分类标签为以下三种分类结果中的任意一种,以下三种分类结果分别为存在虚拟键盘、不存在虚拟键盘以及不为录屏图像;
[0142]
通过图像特征提取子模型,提取训练样本图像的图像特征,将提取到的图像特征输入至分类子模型,输出训练样本图像的预测分类结果;
[0143]
基于预测分类结果与分类标签之间的差异,调整图像特征提取子模型及分类子模型的参数并继续训练,直至满足训练停止条件时结束训练,得到识别模型。
[0144]
在一个实施例中,计算机程序被处理器执行时,图像特征提取子模型依次包括第一卷积层、第一池化层、第二卷积层、第二池化层、第三卷积层、第三池化层、第一全连接层、
丢弃层及第二全连接层。
[0145]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
[0146]
将已录屏视频中每一视频帧输入至识别模型,输出每一视频帧的分类结果,分类结果用于初步指示视频帧中是否存在虚拟键盘;
[0147]
若当前视频帧的分类结果为存在虚拟键盘,则根据当前视频帧在已录屏视频中的帧序号、除当前视频帧之外的每一视频帧的分类结果以及帧序号,对当前视频帧的分类结果进行校验,得到当前视频帧的识别结果。
[0148]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
[0149]
基于当前视频帧在已录屏视频中的帧序号,确定当前视频帧对应的帧序号筛选区间;
[0150]
基于除当前视频帧之外的每一视频帧的分类结果,统计帧序号位于帧序号筛选区间内的所有视频帧中分类结果为存在虚拟键盘的视频帧数量;
[0151]
若统计得到的视频帧数量不小于预设阈值,则确定当前视频帧的识别结果为存在虚拟键盘,若统计得到的视频帧数量小于预设阈值,则确定当前视频帧的识别结果为不存在虚拟键盘。
[0152]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
[0153]
确定当前视频帧中的虚拟键盘区域;
[0154]
基于预设卷积核,对虚拟键盘区域作均值滤波处理。
[0155]
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
[0156]
获取当前视频帧,当前视频帧是基于屏幕共享所得到的;
[0157]
若确定当前视频帧的识别结果为存在虚拟键盘,则对当前视频帧作虚拟键盘屏蔽处理,识别结果是基于识别模型对当前视频帧的分类结果所确定的。
[0158]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
[0159]
获取训练样本图像及对应的分类标签,分类标签为以下三种分类结果中的任意一种,以下三种分类结果分别为存在虚拟键盘、不存在虚拟键盘以及不为录屏图像;
[0160]
通过图像特征提取子模型,提取训练样本图像的图像特征,将提取到的图像特征输入至分类子模型,输出训练样本图像的预测分类结果;
[0161]
基于预测分类结果与分类标签之间的差异,调整图像特征提取子模型及分类子模型的参数并继续训练,直至满足训练停止条件时结束训练,得到识别模型。
[0162]
在一个实施例中,计算机程序被处理器执行时,图像特征提取子模型依次包括第一卷积层、第一池化层、第二卷积层、第二池化层、第三卷积层、第三池化层、第一全连接层、丢弃层及第二全连接层。
[0163]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
[0164]
将已录屏视频中每一视频帧输入至识别模型,输出每一视频帧的分类结果,分类结果用于初步指示视频帧中是否存在虚拟键盘;
[0165]
若当前视频帧的分类结果为存在虚拟键盘,则根据当前视频帧在已录屏视频中的帧序号、除当前视频帧之外的每一视频帧的分类结果以及帧序号,对当前视频帧的分类结果进行校验,得到当前视频帧的识别结果。
[0166]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
[0167]
基于当前视频帧在已录屏视频中的帧序号,确定当前视频帧对应的帧序号筛选区间;
[0168]
基于除当前视频帧之外的每一视频帧的分类结果,统计帧序号位于帧序号筛选区间内的所有视频帧中分类结果为存在虚拟键盘的视频帧数量;
[0169]
若统计得到的视频帧数量不小于预设阈值,则确定当前视频帧的识别结果为存在虚拟键盘,若统计得到的视频帧数量小于预设阈值,则确定当前视频帧的识别结果为不存在虚拟键盘。
[0170]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
[0171]
确定当前视频帧中的虚拟键盘区域;
[0172]
基于预设卷积核,对虚拟键盘区域作均值滤波处理。
[0173]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
[0174]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0175]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
再多了解一些

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

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

相关文献