掌桥专利:专业的专利平台
掌桥专利
首页

脸部皱纹检测方法、电子设备和计算机可读存储介质

文献发布时间:2023-06-19 19:30:30


脸部皱纹检测方法、电子设备和计算机可读存储介质

技术领域

本申请涉及图像处理技术领域,具体涉及一种脸部皱纹检测方法、电子设备和计算机可读存储介质。

背景技术

目前,脸部皱纹检测技术越来越多地应用在多个领域中。例如,在化妆品研发领域中,需要针对不同的脸部皱纹特征,设计化妆产品或者推荐用户相应的化妆品。又例如,在照片美化特效领域中,需要针对不同的脸部皱纹进行不同程度的美化特效。又例如,在人脸识别中,需要根据脸部皱纹作为用户特征以验证用户身份。

然而,市面上针对皱纹的检测方式,只能检测出较粗的皱纹,针对细皱纹的检测能力较弱,无法全面地对皱纹进行整体完整的检测。

鉴于此,本发明提出一种脸部皱纹检测方法,能够完整地提取出粗皱纹和细皱纹,从而能够反馈人体脸部完整的皱纹分析结论。

发明内容

为解决上述技术问题,本发明的目的是提供一种脸部皱纹检测方法、电子设备和计算机可读存储介质,以满足精准并且全面地检测出脸部皱纹。

根据本发明的一个方面提出了一种脸部皱纹检测方法,包括以下步骤:

S1、基于人脸关键点对待测人脸图像进行提取,获得人脸ROI区域图像;

S2、基于深度学习算法对人脸ROI区域图像进行粗皱纹检测获得第一皱纹特征图,以及采用滤波和去噪的方式对人脸ROI区域图像进行细皱纹检测获得第二皱纹特征图;以及

S3、将第一皱纹特征图和第二皱纹特征图进行融合,获得整体皱纹图。

上述技术方案,根据皱纹的深浅程度采用不同的检测方法完整地提取出粗皱纹和细皱纹,能够实现对待测人脸图像皱纹的精准检测。

在具体的实施例中,在步骤S2中,采用滤波和去噪的方式对人脸ROI区域图像进行细皱纹检测获得第二皱纹特征图,包括以下子步骤:

S201、对人脸ROI区域图像进行x方向的gabor滤波,获得滤波图像;

S202、基于斜率和长度相结合的过滤算法对滤波图像进行首次去噪;

S203、通过颜色的过滤算法对滤波图像再次去噪,获得纯净皱纹区域图像;以及

S204、将纯净皱纹区域图像通过人脸关键点还原成图片大小与待测人脸图像一致的第二皱纹特征图。

由于痘痘、小斑点、痣等皮肤瑕疵都呈近似圆形而非条状,这些皮肤瑕疵与细皱纹的长度不同,而眉毛、眼睫毛呈长条状但其斜率与细皱纹存在不同,通过斜率和长度相结合的过滤算法,可以有效识别出细皱纹和小斑点、痘痘、眉毛、眼睫毛等,进而剔除眉毛、眼睫毛等干扰噪点;大斑点的颜色一般比小斑点和细皱纹颜色更深,通过颜色的过滤算法能够有效识别出细纹和大斑点,进而剔除大斑点。

在具体的实施例中,基于斜率和长度相结合的过滤算法对滤波图像进行首次去噪,具体包括以下子步骤:

S2021、提取滤波图像上所有皱纹轮廓,并逐个获取单个皱纹的两个顶点;

S2022、计算两个顶点之间的长度L,以及长度L与水平方向之间的倾斜角A;

S2023、根据不同部位的皱纹方向预设不同的倾斜角度范围,以判定单个皱纹是否为干扰点;以及

S2024、根据不同部位的皱纹长度预设不同的长度阈值,以进一步判定单个皱纹是否为干扰点。

通过上述技术方案,根据不同部位的皱纹方向、长度分别进行斜率卡控、长度卡控,以识别并剔除干扰点。

在具体的实施例中,在步骤S203中,通过颜色的过滤算法对滤波图像再次去噪,具体包括以下子步骤:

S2031、将人脸ROI区域图像进行灰度化,形成灰度图像,并且对灰度图像进行增强,获得增强后的图像;

S2032、对增强后的图像进行图像二值化,以及预设第一颜色阈值,提取低于第一颜色阈值的黑色区域;

S2033、对滤波图像进行图像二值化,以及预设第二颜色阈值,提取高于第二颜色阈值的高亮区域;以及

S2034、利用高亮区域减去黑色区域,获得纯净皱纹区域图像。

由于大斑点的颜色一般较深,因此将颜色值低于第一颜色阈值的黑色区域判定为色斑区域。gobor滤波后的图像在皱纹区域呈现高亮,因此将颜色值高于第二颜色阈值的高亮区域判定为皱纹区域。再通过皱纹区域减去色斑区域即可快速得到纯净的皱纹区域。

在具体的实施例中,还包括S4、根据整体皱纹图,选择老化程度对待测人脸图像进行老化增强或老化减弱的调节。

上述技术方案,可以根据老化程度-10~10进行面部皱纹调节,老化程度越大,使用老化增强流程,膨胀核越大,细纹逐渐变粗,增强皱纹。老化程度越小,使用老化减弱流程,腐蚀核越大,细皱纹逐渐变细,减弱皱纹。

在具体的实施例中,该方法还包括S4、基于整体皱纹图,选择老化程度对待测人脸图像进行老化增强或老化减弱的调节。

在具体的实施例中,在步骤S4中,基于整体皱纹图,选择老化程度对待测人脸图像进行老化减弱的调节,包括以下子步骤:

S401、将待测人脸图像进行灰度化处理,获得待测人脸灰度图,在待测人脸灰度图上获取与整体皱纹图上位置相同的皱纹区域,进而将非皱纹区域的像素全部设置为0,获得整体皱纹灰度图;

S402、统计整体皱纹灰度图上像素的极大值和次小值,并且将极大值和次小值相减获得皱纹深度范围h;

S403、通过以下公式计算老化减弱的高度y:

y=0.6*h+10x(-10<=x<=0)

式中,y表示老化减弱的高度,h表示皱纹深度范围,x表示取值范围为-10~0的老化程度分值;

S404、对待测人脸图像的皱纹区域进行亮度增强,其中亮度增强的数值为y,获得修复图像;以及

S405、对待测人脸图像和修复图像进行线性融合消除边缘噪点。

通过上述技术方案,能够实现对待测人脸图像的老化减弱效果,并且线性融合修复图像和待测人脸图像,使得整体皱纹变化更加光滑。

在具体的实施例中,在步骤S4中,基于整体皱纹图,选择老化程度对待测人脸图像进行老化增强的调节,包括以下子步骤:

S411、将待测人脸图像进行灰度化处理,获得待测人脸灰度图,在待测人脸灰度图上获取与整体皱纹图上位置相同的皱纹区域,进而将非皱纹区域的像素全部设置为0,获得整体皱纹灰度图;

S412、统计整体皱纹灰度图上像素的极大值和次小值,并且将极大值和次小值相减,获得皱纹深度范围h;

S413、根据皱纹深度范围h对待测人脸图像的灰度区域进行提取遮罩,获得皱纹塌陷区域图;

S414、合并整体皱纹灰度图和皱纹塌陷区域图,获得整体皱纹变化区域,并且对整体皱纹变化区域进行亮度减弱,获得增强图像;以及

S415、对待测人脸图像和增强图像进行线性融合消除边缘噪点。

在具体的实施例中,在步骤S2中,基于深度学习算法对人脸ROI区域图像进行粗皱纹检测获得第一皱纹特征图,包括以下子步骤:

S211、针对人脸ROI区域图像上人脸关键点外侧的皮肤进行填充获得填充图像;

S212、根据皱纹方向不确定性和皱纹颜色深浅不确定性对填充图像进行数据增强,获得预处理图像;

S213、通过BiSeNetV2的细节分支获得预处理图像的细节特征图;

S214、通过BiSeNetV2的语义分支获得预处理图像的不同分辨率的语义特征图;

S215、通过BiSeNetV2的特征融合模块融合细节特征图和语义特征图,获得融合后的特征图;

S216、通过BiSeNetV2依据融合后的特征图得到预处理图像的语义分割结果;以及

S217、将语义分割结果通过人脸关键点还原成图片大小与待测人脸图像一致的第一皱纹特征图。

上述技术方案通过深度学习算法对人脸粗皱纹进行检测,提高了检测效率。

在具体的实施例中,在步骤S1中,基于人脸关键点对待测人脸图像进行提取,获得人脸ROI区域图像,包括以下子步骤:

S11、将人脸关键点按区域进行裁剪,连接区域的外部关键点形成连通域;以及

S12、根据坐标轴极值点对齐连通域,并通过坐标轴缩放倍数获得具备目标像素大小的人脸ROI区域图像。

通过上述技术方案成功解决了直接将待测人脸图像按比例缩放后容易出现图像特征消失、无法检测出细皱纹等问题。

第二方面,本申请提供了一种电子设备,包括:

至少一个处理器;

以及与至少一个处理器通信连接的存储器;

其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行如上述中任一项的方法。

第三方面,本申请提供了一种计算机可读存储介质,该介质中存储有计算机程序,在计算机程序被处理器执行时,实施如上述中任一项的方法。

与现有技术相比,本发明的有益成果在于:

介于人脸不同部位的皱纹深浅程度不同,本发明通过人脸关键点划分待测人脸图像,然后分别采用深度学习算法和传统算法对不同部位进行皱纹检测。其中,在传统算法提取细皱纹过程中,利用斜率和长度相结合的过滤算法、颜色的过滤算法有效剔除掉大斑点、小斑点、眉毛、眼睫毛等噪点。本发明能够完整地提取出粗皱纹和细皱纹,从而能够反馈人脸完整的皱纹分析结论。再根据提取出的整体皱纹图,对待测人脸图像进行老化增强或老化减弱的调节。

附图说明

通过阅读参照以下附图,所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1是本申请的脸部皱纹检测方法的流程图;

图2是本申请的人脸关键点分布图;

图3是本申请的人脸ROI区域图像;

图4是本申请的滤波理图像;

图5是本申请的降噪前图像;

图6是本申请的降噪后图像;

图7是本申请的长度L和倾斜角A示意图;

图8是本申请的老化增强、老化减弱调节的流程图;

图9是本申请的待测人脸图像;

图10是本申请的修复图像;

图11是本申请的增强图像;

图12是适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。

具体实施方式

下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

图1示出了本申请的脸部皱纹检测方法的流程图,请参考图1,该方法包括以下步骤:

S1、基于人脸关键点对待测人脸图像进行提取,获得人脸ROI区域图像。

在本实施例中,考虑到脸部皱纹分布规律,皱纹检测前先对脸部区域进行分割。如图2所示的人脸关键点分布图,可以通过面部特征点预测器追踪人脸458个关键点。具体的,首先调用人脸检测函数对待测人脸图像中的人脸进行检测并标出人脸框,然后调用面部特征点预测器追踪面部关键点,基于人脸关键点位置提取出面部皱纹集中的人脸ROI区域。

分布在脸部不同区域的皱纹名称不一样,且颜色深浅也不一样。介于皱纹的深浅程度,本申请对不同部位的皱纹采用不同方法进行皱纹检测。皱纹位置及对应的检测方法如下表所示。

由于需要对整张人脸送入神经网络进行语义分割,但是待测人脸图像是大小为4000×3000的1200万像素图片,需要进行缩放为512*512像素大小的图片才能进行神经网络的输入,否则会因为图片太大导致模型推理时间长,内存占用大,而无法部署在移动端。然而,如果直接将待测人脸图像缩放成512*512像素大小的图片,相当于把原图进行50:1大小缩放,会导致图片特征消失,无法检测出细纹。为了解决这个问题,本申请采用以下方式进行处理,具体包括:

S11、将人脸关键点按区域进行裁剪,连接区域的外部关键点形成连通域;以及

S12、根据坐标轴极值点对齐连通域,并通过坐标轴缩放倍数获得具备目标像素大小的人脸ROI区域图像。

在本实施例中,依照区域外部关键点的顺序,用直线连接,形成连通域。分别计算该连通域上关键点的X轴坐标和Y轴坐标的极值点,得到该连通域的最小矩形的左上角点位和右上角点位,即左上角点位:(Xmin,Ymin),右下角点位(Xmax,Ymax)。计算其宽、高,得到其X轴的缩放倍数为a=512/(Xmax-Xmin),Y轴的缩放倍数为b=512/(Ymax-Ymin)。最后根据X,Y轴的缩放倍数获得一个512*512大小的人脸ROI区域图像。

继续参考图1,本申请的脸部皱纹检测方法还包括:

S2、对人脸ROI区域图像进行预处理获得预处理图像,基于深度学习算法对预处理图像进行粗皱纹检测获得第一皱纹特征图,以及采用滤波和去噪的方式对人脸ROI区域图像进行细皱纹检测获得第二皱纹特征图。

S3、将第一皱纹特征图和第二皱纹特征图进行融合,获得整体皱纹图。

在步骤S2的实施例中,首先对人脸ROI区域图像进行如下预处理:

S211、针对人脸ROI区域图像上人脸关键点外侧的皮肤进行填充获得填充图像。

在本实施例中,由于裁剪下来的人脸ROI区域图像是不规则形状,为了防止外侧边缘形成干扰,把神经网络模型的注意力落在人脸关键点范围内皮肤上,因此对在人脸关键点外侧的皮肤进行0值填充,获得填充图像。

S212、根据皱纹方向不确定性和皱纹颜色深浅不确定性对填充图像进行数据增强,获得预处理图像。

在本实施例中,针对皱纹方向不确定性和颜色深浅不确定性进行数据增强。该数据增强包括:沿着中心垂直方向对步骤S11裁剪下来的皱纹特征进行镜像翻转,对填充图像进行左右±45°的随机旋转以及对填充图像整体进行±20明暗度增强。

在步骤S2的实施例中,基于深度学习算法对预处理图像进行粗皱纹检测获得第一皱纹特征图,具体包括以下步骤:

S213、通过BiSeNetV2的细节分支获得预处理图像的细节特征图。

具体的,通过BiSeNetV2的细节分支(Detail Branch)依据设定分辨率大小的预处理图像,分别获得细节分支输出的预处理图像的设定分辨率1/2大小的分辨率1/2的细节特征图、设定分辨率1/4大小的分辨率1/4的细节特征图、设定分辨率1/8大小的分辨率1/8的细节特征图。

S214、通过BiSeNetV2的语义分支获得预处理图像的不同分辨率的语义特征图。

具体的,通过BiSeNetV2的语义分支(Semantic Branch)依据设定分辨率大小的预处理图像,分别获得语义分支输出的预处理图像的设定分辨率1/2大小的分辨率1/2的语义特征图、设定分辨率1/4大小的分辨率1/4的语义特征图、设定分辨率1/8大小的分辨率1/8的语义特征图、设定分辨率1/16大小的分辨率1/16的语义特征图、设定分辨率1/32大小的分辨率1/32的语义特征图。并且通过语义分支的通道注意力(channel attention)模块分别对分辨率1/8的语义特征图、分辨率1/16的语义特征图、分辨率1/32的语义特征图的每个通道分配不同的通道权重,获得分配不同通道权重后具有通道权重注意力的分辨率1/8的语义特征图、分辨率1/16的语义特征图、分辨率1/32的语义特征图。

S215、通过BiSeNetV2的特征融合模块融合细节特征图和语义特征图,获得融合后的特征图。

具体的,将获得的细节分支的分辨率1/2的细节特征图、分辨率1/4的细节特征图、分辨率1/8的细节特征图,以及获得的语义分支的具有通道权重注意力的分辨率1/8的语义特征图、分辨率1/16的语义特征图、分辨率1/32的语义特征图输入BiSeNetV2的特征融合模块;通过特征融合模块将语义分支的细节特征图和细节分支的语义特征图进行特征融合,获得融合后的特征图。

S216、通过BiSeNetV2依据融合后的特征图得到预处理图像的语义分割结果。该语义分割结果包括人脸额头、眉间以及脸颊区域的皱纹。

S217、将语义分割结果通过人脸关键点还原成图片大小与待测人脸图像一致的第一皱纹特征图。可以根据待测人脸图像的缩放倍数进行放大还原,并根据待测人脸图像的Xmin,Ymid进行偏移矫正,使其回到原图正确的点位。

由于细纹分布密集并且线条较细,人工标注难度大,且标注效果不好,因此很难用深度学习算法来达到很好的细皱纹特征分割效果。为了避免这个问题,本申请使用传统算法对细皱纹特征进行分割,即采用滤波、去噪和二值化处理的方式对人脸ROI区域图像进行细皱纹检测获得第二皱纹特征图,具体包括以下子步骤:

S201、对人脸ROI区域图像进行x方向的gabor滤波,获得滤波图像。

由于gabor滤波可以在频域上不同尺度、不同方向上提取相关的特征,Gabor函数与人眼的作用相仿,所以经常用作纹理识别上。针对眼角的细皱纹存在一定的方向性,因此需要根据不同部位的纹理进行适配。主要配置gabor滤波核信息如下表。

在获取gabor滤波核后对人脸ROI区域图像进行滤波操作,得到滤波后的图像。其中,人脸ROI区域图像如图3所示,滤波图像如图4所示。

S202、基于斜率和长度相结合的过滤算法对滤波图像进行首次去噪。

图5示出了降噪前的图像,图中的灰色区域为噪点。如图5所示,虽然gabor滤波能够对带方向性的皱纹进行特征提取,但是针对于脸部的一些色斑,及细小毛孔区域也能被当作皱纹从而进行提取。因此,为解决这种误判的皱纹,本申请提出了基于斜率和长度相结合的过滤算法,通过该算法进行首次去噪,具体包括以下子步骤:

S2021、提取滤波图像上所有皱纹轮廓,并逐个获取单个皱纹的两个顶点。

S2022、计算两个顶点之间的长度L,以及长度L与水平方向之间的倾斜角A。请参考图7,图7示意出了长度L和倾斜角A。

S2023、根据不同部位的皱纹方向预设不同的倾斜角度范围,以判定单个皱纹是否为干扰点。

例如左边眼下的皱纹方向为45°,则在此基础上对皱纹斜率范围进行卡控。经过对比100张左边眼下皱纹的角度的直方图统计,发现大部分数据落在30°~60°之间。因此不在此范围的皱纹可以判断为干扰点(如眉毛,色斑等)。

S2024、根据不同部位的皱纹长度预设不同的长度阈值,以进一步判定单个皱纹是否为干扰点。

根据统计100张左边眼下皱纹的皱纹长度直方图,数据呈长尾分布,且随着年龄的增长,平均皱纹越长。因此皱纹长度只适合做下限控制,无法取得一个较好的上限。例如要求皱纹长度需要大于15个像素点距离。

通过上述技术方案,根据不同部位的皱纹方向、长度分别进行斜率卡控、长度卡控,以识别并剔除小斑点、痘痘、痣、眉毛、眼睫毛等干扰点。

在上文对滤波图像进行首次去噪的基础上,继续执行以下步骤:

S203、通过颜色的过滤算法对滤波图像再次去噪,获得纯净皱纹区域图像。

S204、将纯净皱纹区域图像通过人脸关键点还原成图片大小与待测人脸图像一致的第二皱纹特征图。

其中,步骤S203基于颜色的过滤算法再次去噪,具体包括以下子步骤:

S2031、将人脸ROI区域图像进行灰度化,形成灰度图像,并且对灰度图像进行增强,获得增强后的图像。增强公式如下:

式中,C为增强后的数值,B为灰度图像下的像素值。对C的数值进行四舍五入,转为整数,并将大于255的数值转为255,进而得到增强后的图像。

S2032、对增强后的图像进行图像二值化,以及预设第一颜色阈值,提取低于第一颜色阈值的黑色区域。大斑点的颜色一般较深,该黑色区域实际为色斑区域。

S2033、对滤波图像进行图像二值化,以及预设第二颜色阈值,提取高于第二颜色阈值的高亮区域。gobor滤波后的图像在皱纹区域呈现高亮,因此需要使用二值化将高亮区域进行提取。

S2034、利用高亮区域减去黑色区域,获得纯净皱纹区域图像。即通过皱纹区域减去色斑区域即可快速得到纯净的皱纹区域。

由于痘痘、小斑点、痣等皮肤瑕疵都呈近似圆形而非条状,这些皮肤瑕疵与细皱纹的长度不同,而眉毛、眼睫毛呈长条状但其斜率与细皱纹存在不同,通过斜率和长度相结合的过滤算法,可以有效识别出细皱纹和小斑点、痘痘、眉毛、眼睫毛等,进而剔除眉毛、眼睫毛等干扰噪点;大斑点的颜色一般比小斑点和细皱纹颜色更深,通过颜色的过滤算法能够有效识别出细纹和大斑点,进而剔除大斑点。

图8示出了老化增强、老化减弱流程图,如图8所示,本申请还提出了一种基于使用上文所述方法提取到的皱纹特征进行预测,根据老化程度对待测人脸图像进行老化增强或老化减弱的调节。

具体的,根据提取到的皱纹特征进行预测,可以根据老化程度-10~10进行面部皱纹调节,老化程度越大,使用老化增强流程,膨胀核越大,细纹逐渐变粗,增强皱纹。老化程度越小,使用老化减弱流程,腐蚀核越大,细纹逐渐变细减弱皱纹,原图则默认老化程度为0。如果老化程度减弱则减少皱纹长度和宽度及数量。如果老化程度增加则对皱纹长度增加和对部分皱纹进行联通。

其中,基于整体皱纹图,选择老化程度对待测人脸图像进行老化减弱的调节,具体包括以下子步骤:

S401、将待测人脸图像进行灰度化处理,获得待测人脸灰度图。应当理解的是,皱纹沟壑区域由于光照会变得比肤色暗沉。进一步的,在待测人脸灰度图上获取与整体皱纹图上位置相同的皱纹区域,进而将非皱纹区域的像素全部设置为0,获得整体皱纹灰度图;

S402、统计整体皱纹灰度图上像素的极大值和次小值(最小值为非皱纹区域0),并且将极大值和次小值相减获得皱纹深度范围h,h表示其皱纹最外侧和最内侧的垂直高度。

S403、根据老化程度-10~0分值x,取皱纹深度范围h的60%为极限值(如皱纹深度为100),通过以下公式计算老化减弱的高度y:

y=0.6*h+10x(-10<=x<=0)

式中,y表示老化减弱的高度,h表示皱纹深度范围,x表示取值范围为-10~0的老化程度分值;

S404、对彩色的待测人脸图像的皱纹区域进行亮度增强,其中亮度增强的数值为y,获得修复图像。待测人脸图像如图9所示,修复图像如图10所示。

S405、对待测人脸图像和修复图像进行线性融合消除边缘噪点,使得整体皱纹变换变得更加平滑。

基于整体皱纹图,选择老化程度对待测人脸图像进行老化增强的调节,包括以下子步骤:

S411、将待测人脸图像进行灰度化处理,获得待测人脸灰度图,在待测人脸灰度图上获取与整体皱纹图上位置相同的皱纹区域,进而将非皱纹区域的像素全部设置为0,获得整体皱纹灰度图。

S412、统计整体皱纹灰度图上像素的极大值和次小值,并且将极大值和次小值相减,获得皱纹深度范围h。

S413、根据皱纹深度范围h对待测人脸图像的灰度区域进行提取遮罩,获得皱纹塌陷区域图。具体的,由整体皱纹灰度图得到的极大值加上皱纹深度范围h,将这块覆盖区域认为是未来皱纹塌陷区域,即获得皱纹塌陷区域图。

S414、合并整体皱纹灰度图和皱纹塌陷区域图,获得整体皱纹变化区域,并且对整体皱纹变化区域进行亮度减弱,使得皱纹的垂直高度变深,获得增强图像。其中,增强图像如图11所示。

S415、对待测人脸图像和增强图像进行线性融合消除边缘噪点,使得整体皱纹变换变得更加平滑。

通过上述技术方案,根据皱纹的深浅程度采用不同的检测方法完整地提取出粗皱纹和细皱纹,能够实现对待测人脸图像皱纹的精准检测,进而反馈出人脸完整的皱纹分析结论。并且基于获得的整体皱纹图,能够实现待测人脸图像的老化增强、老化减弱。

本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序在被处理器执行时实施如上述中任一项方法。

下面参考图12,其示出了适于用来实现本申请实施例的终端设备或服务器的计算机系统1200的结构示意图。图12示出的终端设备或服务器仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。

如图12所示,计算机系统1200包括中央处理单元(CPU)1201,其可以根据存储在只读存储器(ROM)1202中的程序或者从存储部分1208加载到随机访问存储器(RAM)1203中的程序而执行各种适当的动作和处理。在RAM 1203中,还存储有系统1200操作所需的各种程序和数据。CPU 1201、ROM 1202以及RAM 1203通过总线1204彼此相连。输入/输出(I/O)接口1205也连接至总线1204。

以下部件连接至I/O接口1205:包括键盘、鼠标等的输入部分1206;包括液晶显示器(LCD)等以及扬声器等的输出部分1207;包括硬盘等的存储部分1208;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1209。通信部分1209经由诸如因特网的网络执行通信处理。驱动器1210也根据需要连接至I/O接口1205。可拆卸介质1211,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1210上,以便于从其上读出的计算机程序根据需要被安装入存储部分1208。

特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1209从网络上被下载和安装,和/或从可拆卸介质1211被安装。在该计算机程序被中央处理单元(CPU)1201执行时,执行本申请的方法中限定的上述功能。需要说明的是,本申请所述的计算机可读介质可以是计算机可读信号介质或者计算机可读介质或者是上述两者的任意组合。计算机可读介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本申请实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括接收模块、获取模块、确定模块、计算模块和生成模块。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,接收单元还可以被描述为“响应于确定校验请求信息中包括用户名、请求时间、用户签名编码和客户端应用编码,获取预设的、目标用户的配置信息的模块”。

作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的服务器中所包含的;也可以是单独存在,而未装配入该服务器中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该服务器执行时,使得该服务器:接收目标用户的客户端发送的校验请求信息;响应于确定校验请求信息中包括用户名、请求时间、用户签名编码和客户端应用编码,获取预设的、目标用户的配置信息,其中,配置信息包括预设的、用户名对应的用户密码;根据请求时间确定校验请求信息是否有效,响应于确定有效,确定预设存储区内是否包括用户签名编码;响应于确定不包括,将用户签名编码存储至预设存储区内,以及基于用户密码、请求时间和用户签名编码,计算得到服务端应用编码;响应于确定服务端应用编码和客户端应用编码匹配,生成用于表征校验请求为合法请求的校验成功信息。

另外,上述计算机可读介质可以是上述实施例中描述的终端设备中所包含的;也可以是单独存在,而未装配入该终端设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该终端设备执行时,使得该终端设备:获取目标用户输入的用户信息,其中,用户信息包括用户名和用户密码;基于用户信息,生成用于表征目标用户的用户签名编码;确定请求时间;基于用户密码、请求时间和用户签名编码,计算得到客户端应用编码;生成包括用户名、请求时间、用户签名编码和客户端应用编码的校验请求信息,以及将校验请求信息发送至服务端。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

技术分类

06120115935610