高光图像处理方法、装置和电子设备
技术领域
本公开涉及图像处理领域,尤其涉及一种高光图像处理方法、装置、电子设备及计算机可读存储介质。
背景技术
随着计算机技术的发展,智能终端的应用范围得到了广泛的提高,例如可以通过智能终端听音乐、玩游戏、上网聊天和拍照等。对于智能终端的拍照技术来说,其拍照像素已经达到千万像素以上,具有较高的清晰度和媲美专业相机的拍照效果。
目前在采用智能终端进行拍照时,不仅可以使用出厂时内置的拍照软件实现传统功能的拍照效果,还可以通过从网络端下载应用程序(Application,简称为:APP)来实现具有附加功能的拍照效果,例如可以实现暗光检测、美颜相机和超级像素等功能的APP。通过组合各种基本的高光图像处理可以形成各种特效效果,比如美颜、滤镜、大眼瘦脸等等。
目前的所拍摄的图像中,特别是人脸部分,当光线较强的情况下,在人脸的某些区域,比如比较光滑的区域对光的反射会比较强,这样在形成图像时,就会形成一片高光的区域,影响图像的清晰度,目前的一些处理方法是可以直接降低图像传感器的光感度,这样可以整体是图像变暗,但是这样处理会使原本就比较暗的区域变得更暗,也会影响图像的清晰度。
发明内容
第一方面,本公开实施例提供一种高光图像处理方法,包括:获取人脸图像;计算所述人脸图像的平均肤色;计算所述人脸图像的像素点的高光概率;使用平均肤色对人脸图像做第一处理,得到第一图像;将所述人脸图像和第一图像根据所述高光概率进行混合,得到处理后的人脸图像。
进一步的,所述获取人脸图像,包括:获取视频帧,获取所述视频帧中的人脸检测区域。
进一步的,所述计算所述人脸图像的平均肤色,包括:获取人脸图像中的多个像素的颜色值,计算所述颜色值的平均值。
进一步的,所述计算所述人脸图像的像素点的高光概率,包括:根据所述人脸图像中的像素点的颜色值计算所述像素点在RGB三个通道上的颜色比例;根据所述颜色比例计算所述高光概率。
进一步的,所述根据所述颜色比例计算所述高光概率,包括:根据所述颜色比例计算多个第一参数;根据所述多个第一参数中的最大第一参数计算所述高光概率。
进一步的,所述根据所述多个第一参数中的最大第一参数计算所述高光概率,包括:根据所述最大的第一参数计算高光置信度;将所述高光置信度做归一化处理,得到高光概率。
进一步的,所述使用平均肤色对人脸图像做第一处理,得到第一图像,包括:比较平均肤色与人脸图像的像素的亮度,取亮度较小的像素点组成第一图像。
进一步的,所述比较平均肤色与人脸图像的像素的亮度,包括:将所述平均肤色和人脸图像的色彩空间转换到HLS颜色空间;比较所述平均肤色和人脸图像的像素在HLS色彩空间上的亮度。
进一步的,所述使用平均肤色对人脸图像做第一处理,得到第一图像,包括:将平均肤色与人脸图像按照预定的规则进行混合,得到第一混合图像;比较第一混合图像和人脸图像的像素的亮度,取亮度较小的像素点组成第一图像。
进一步的,所述将所述人脸图像和第一图像根据所述高光概率进行混合,得到处理后的人脸图像,包括:将所述第一图像中的像素点的颜色值与高光概率相乘,得到第一结果;将所述人脸图像中的像素点的颜色值减去所述颜色值与所述高光概率的乘积,得到第二结果;将所述第一结果和第二结果相加,得到处理后的人脸图像的像素点的颜色值。
第二方面,本公开实施例提供一种高光图像处理装置,包括:
人脸图像获取模块,用于获取人脸图像;
平均肤色计算模块,用于计算所述人脸图像的平均肤色;
高光概率计算模块,用于计算所述人脸图像的像素点的高光概率;
第一处理模块,用于使用平均肤色对人脸图像做第一处理,得到第一图像;
混合处理模块,用于将所述人脸图像和第一图像根据所述高光概率进行混合,得到处理后的人脸图像。
进一步的,所述人脸图像获取模块,包括:视频帧获取模块,用于获取视频帧,获取所述视频帧中的人脸检测区域。
进一步的,所述平均肤色计算模块,还用于:获取人脸图像中的多个像素的颜色值,计算所述颜色值的平均值。
进一步的,所述高光概率计算模块,包括:
颜色比例计算模块,用于根据所述人脸图像中的像素点的颜色值计算所述像素点在RGB三个通道上的颜色比例;
高光概率计算第一子模块,用于根据所述颜色比例计算所述高光概率。
进一步的,所述高光概率子模块,包括:
第一参数计算模块,用于根据所述颜色比例计算多个第一参数;
高光概率计算第二子模块,用于根据所述多个第一参数中的最大第一参数计算所述高光概率。
进一步的,所述高光概率计算第二子模块,包括:
高光置信度计算模块,根据所述最大的第一参数计算高光置信度;
归一化模块,用于将所述高光置信度做归一化处理,得到高光概率。
进一步的,所述第一处理模块,包括:
第一混合模块,用于将平均肤色与人脸图像按照预定的规则进行混合,得到第一混合图像;
第三亮度比较模块,用于比较第一混合图像和人脸图像的像素的亮度;
第二亮度选择模块,用于取亮度较小的像素点组成第一图像。
进一步的,所述混合处理模块,包括:
第一结果计算模块,用于将所述第一图像中的像素点的颜色值与高光概率相乘,得到第一结果;
第二结果计算模块,用于将所述人脸图像中的像素点的颜色值与减去所述高光概率的结果相乘,得到第二结果;
混合处理子模块,用于将所述第一结果和第二结果相加,得到处理后的人脸图像的像素点的颜色值。
进一步的,所述第一处理模块还包括:
第一亮度比较模块,用于比较平均肤色与人脸图像的像素的亮度;
第一亮度选择模块,用于取亮度较小的像素点组成第一图像。
进一步的,所述第一亮度比较模块,包括:
颜色空间转换模块,用于将所述平均肤色和人脸图像的色彩空间转换到HLS颜色空间;
第二亮度比较模块,用于比较所述平均肤色和人脸图像的像素在HLS色彩空间上的亮度。
第三方面,本公开实施例提供一种电子设备,包括:至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有能被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行前述第一方面中的任一所述高光图像处理方法。
第四方面,本公开实施例提供一种非暂态计算机可读存储介质,其特征在于,该非暂态计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行前述第一方面中的任一所述高光图像处理方法。
本公开公开了一种高光图像处理方法、装置、电子设备和计算机可读存储介质。其中该高光图像处理方法包括:获取人脸图像;计算所述人脸图像的平均肤色;计算所述人脸图像的像素点的高光概率;使用平均肤色对人脸图像做第一处理,得到第一图像;将所述人脸图像和第一图像根据所述高光概率进行混合,得到处理后的人脸图像。本公开实施例通过计算像素点的高光概率,并通过高光概率对图像进行处理解决了现有技术中对于人脸高光区域处理效果不佳的技术问题。
上述说明仅是本公开技术方案的概述,为了能更清楚了解本公开的技术手段,而可依照说明书的内容予以实施,并且为让本公开的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的高光图像处理方法实施例的流程图;
图2为本公开实施例提供的高光图像处理方法实施例中的步骤S104的另一个实施例的流程图;
图3为本公开实施例提供的高光图像处理装置的实施例的结构示意图;
图4为本公开实施例中提供的高光图像处理装置实施例的结构中的第一处理模块304的另一个实施例的结构示意图;
图5为根据本公开实施例提供的电子设备的结构示意图。
具体实施方式
以下通过特定的具体实例说明本公开的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本公开的其他优点与功效。显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。本公开还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本公开的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
需要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本公开,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目个方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。
还需要说明的是,以下实施例中所提供的图示仅以示意方式说明本公开的基本构想,图式中仅显示与本公开中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
另外,在以下描述中,提供具体细节是为了便于透彻理解实例。然而,所属领域的技术人员将理解,可在没有这些特定细节的情况下实践所述方面。
图1为本公开实施例提供的高光图像处理方法实施例的流程图,本实施例提供的该高光图像处理方法可以由一高光图像处理装置来执行,该高光图像处理装置可以实现为软件,或者实现为软件和硬件的组合,该高光图像处理装置可以集成设置在高光图像处理系统中的某设备中,比如高光图像处理服务器或者高光图像处理终端设备中。如图1所示,该方法包括如下步骤:
步骤S101,获取人脸图像;
在一个实施例中,获取人脸图像首先需要获取图像,获取图像可以通过图像传感器获取,所述图像传感器指可以采集图像的各种设备,典型的图像传感器为摄像机、摄像头、相机等。在该实施例中,所述图像传感器可以是终端设备上的摄像头,比如智能手机上的前置或者后置摄像头,摄像头采集的图像可以直接显示在手机的显示屏上,在该步骤中,获取图像传感器所拍摄的图像视频,用于在下一步进一步对图像进行处理。
在该实施例中,所述获取图像,可以是获取当前终端设备所采集到的视频的当前视频帧,由于视频是由多个视频帧组成的,该实施例中对于图像的处理可以是对视频的视频帧进行处理。
在一个实施例中,获取视频帧,获取所述视频帧中的人脸检测区域。在该实施例中,当获取到图像传感器所采集到的图像之后,可以对图像中的人脸进行识别。识别人脸图像,主要是在图像中检测出人脸,人脸检测是任意给定一个图像或者一组图像序列,采用一定策略对其进行搜索,以确定所有人脸的位置和区域的一个过程,从各种不同图像或图像序列中确定人脸是否存在,并确定人脸数量和空间分布的过程。通常人脸检测的方法可以分为4类:(1)基于先验知识的方法,该方法将典型的人脸形成规则库对人脸进行编码,通过面部特征之间的关系进行人脸定位;(2)特征不变方法,该方法在姿态、视角或光照条件改变的情况下找到稳定的特征,然后使用这些特征确定人脸;(3)模板匹配方法,该方法存储几种标准的人脸模式,用来分别描述整个人脸和面部特征,然后计算输入图像和存储的模式间的相互关系并用于检测;(4)基于外观的方法,该方法与模板匹配方法相反,从训练图像集中进行学习从而获得模型,并将这些模型用于检测。在此可以使用第(4)种方法中的一个实现方式来说明人脸检测的过程:首先需要提取特征完成建模,本实施例使用Haar特征作为判断人脸的关键特征,Haar特征是一种简单的矩形特征,提取速度快,一般Haar特征的计算所使用的特征模板采用简单的矩形组合由两个或多个全等的矩形组成,其中特征模板内有黑色和白色两种矩形;之后,使用AdaBoost算法从大量的Haar特征中找到起关键作用的一部分特征,并用这些特征产生有效的分类器,通过构建出的分类器可以对图像中的人脸进行检测。
可以理解的是,由于每种人脸检测算法各有优点,适应范围也不同,因此可以设置多个不同的检测算法,针对不同的环境自动切换不同的算法,比如在背景环境比较简单的图像中,可以使用检出率较差但是速度较快的算法;在背景环境比较复杂的图像中,可以使用检出率较高但是速度较慢的算法;对于同一图像,也可以使用多种算法多次检测以提高检出率。
步骤S102:计算所述人脸图像的平均肤色;
在一个实施例中,步骤S101中检测出人脸的检测区域,在该步骤中获取所述人脸的检测区域的所有像素的颜色值,对所有的颜色值计算其颜色值的平均值,将该平均值作为人脸检测区域的平均肤色。
在一个实施例中,所述颜色值是RGB颜色空间中的颜色值,此时,需要分别计算RGB颜色空间的三个通道中的颜色的平均值。具体的,可以将所有像素点的R通道的值相加的和除以像素的个数,得到R通道的颜色平均值;将所有像素点的G通道的值相加的和除以像素的个数,得到G通道的颜色平均值;将所有像素点的B通道的值相加的和除以像素的个数,得到B通道的颜色平均值。
可以理解的是,计算平均肤色的时候也可以使用其他颜色空间,如使用HLS颜色空间按照上述方法也可以计算出平均肤色,实际上任何能够表达颜色的方式都可以用于本公开的平均肤色计算中,在此不再赘述;
可以理解是,上述平均肤色虽然是计算了人脸检测区域的所有像素点的颜色的平均值,但是在实际应用中,也可以不计算所有像素点的颜色的平均值,而仅计算亮度超过一定值的像素点的颜色的平均值,或者按照其他的标准所选择出来的像素点的颜色的平均值,在此不再赘述。
步骤S103:计算所述人脸图像的像素点的高光概率;
在该步骤中,计算所述人脸图像的像素点的高光概率,所述高光概率表示该像素点为高光像素点的概率。
在一个实施例中,根据所述人脸图像中的像素点的颜色值计算所述像素点在RGB三个通道上的颜色比例;根据所述颜色比例计算所述高光概率。具体的,可以根据所述颜色比例计算多个第一参数,根据所述多个第一参数中的最大第一参数计算所述高光概率。具体的,上述根据所述人脸图像中的像素点的颜色值计算所述像素点在RGB三个通道上的颜色比例,可以根据下述公式1进行计算:
其中σc为像素点在RGB颜色空间中的RGB各个通道的色度,该色度实际上就是RGB每个通道中的值在整个RGB空间中所占的比例;Ic为像素在RGB各个通道中的值,∑cIc为像素点在RGB各个通道中的颜色值的和,其中Ic的取值范围为[0,1];其中C={R,G,B}。具体的,一个像素点在RGB空间中的值为(0.6,0.5,0.9),则按照上述公式计算同样的可以计算出,σG=0.25,σB=0.45。
使用上述颜色比例,可以计算第一参数,所述第一参数可以是像素点的漫反射色度,具体的,可以使用下述公式2计算像素点的漫反射色度:
其中σmin表示σR、σG和σB中值最小的色度;其中C={R,G,B}。具体的根据上述例子中的数据,可以计算同样的,可以计算出ΛG=0,ΛB=0.8。由此,可以计算出三个第一参数。
根据所述多个第一参数中的最大第一参数计算所述高光概率。由于上述三个第一参数中有一个必然为0,因此在该实施例中,只需要比较两个不为0的参数中的最大值即可。使用该最大值,根据以下公式3,可以计算出像素点的高光概率:
其中,P为像素点的高光置信度,即像素点的高光概率;Imax为RGB通道中的最大值;Λmax为上述漫反射色度的最大值;∑cIc为像素点在RGB各个通道中的颜色值的和。具体的根据上述例子中的数据,可以计算:
也就是说该点为高光像素点的概率为0.5。
在另一个实施例中,为了方便对高光概率的控制,可以对上述高光置信度进行归一化,生成归一化后的高光概率为实际的高光概率,归一化的处理可以使用下述公式4:
其中,x=α(P-0.5),其中α为任意正实数,用于控制函数的拉伸宽度,通过α的取值控制,可以使P′在P值超过0.5之后迅速拉升至接近1的值。具体的,当α取值为10,P为0.8时,可以计算x=3,带入上述公式4,可以计算出P′=0.95;而当α取值为5,P为同样0.8时,可以计算x=1.5,带入上述公式4,可以计算出P′=0.82,由此可见,通过α的取值,可以灵活的控制高光概率的定义。可以理解的是,x=α(P-0.5)中的0.5也可以改变,具体的如0.5改为0.4,则当P=0.4时,此时x=0,P′=0.5,此时可以认为当P=0.4时,就可以认为该像素点为高光点,可以将P=0.4到1的数值区域,映射到P′的0.5到1的区域。
步骤S104:使用平均肤色对人脸图像做第一处理,得到第一图像;
在一个实施例中,将平均肤色与人脸图像按照预定的规则进行混合,得到第一混合图像;比较第一混合图像和人脸图像的像素的亮度,取亮度较小的像素点组成第一图像。所述的混合可以是柔光处理,先使用平均肤色对人脸图像做柔光处理,得到人脸的柔光图,再将柔光图和人脸图像进行对比,取亮度较小的像素点组成第一图像。所述的柔光处理可以按照以下公式5进行处理:
其中I为人脸图像的像素点的RGB三通道的颜色值,T为平均肤色的RGB三通道的颜色值,其中I和T的取值范围均为[0,1],当I<0.5时,按照公式5上边的分支处理,当I为其他值时,按照公式5下边的分支处理。对RGB三个通道中的上的颜色值分别处理,可以得到柔光处理的像素点的RGB值,记为S。
之后可以比较S和I的值的大小,取两者较小的值输出,得到D,其中使用以下公式6计算D:
D=min(S,I) (6)
经过上述处理,可以得到处理后的第一图像,其中第一图像中的像素点均是人脸图像中较暗的像素点。
步骤S105:将所述人脸图像和第一图像根据所述高光概率进行混合,得到处理后的人脸图像。
在一个实施例中,所述将所述人脸图像和第一图像根据所述高光概率进行混合,得到处理后的人脸图像,包括:将所述第一图像中的像素点的颜色值与高光概率相乘,得到第一结果;将所述人脸图像中的像素点的颜色值减去所述颜色值与所述高光概率的乘积,得到第二结果;将所述第一结果和第二结果相加,得到处理后的人脸图像的像素点的颜色值。
具体的,可以使用以下公式7计算混合后的处理后的人脸图像的像素点的颜色值:
F=I*(1-P)+D*P (7)
其中I为人脸图像的像素点的RGB颜色值,P为该像素点的高光概率,可以理解此处的P也可以是根据上述实施例归一化之后的P′,D为根据公式6计算的较暗的像素点。从上述公式6可以看出,如果通过公式6比较出来的较暗的点就是人脸图像本身的像素点,上述处理结果就是I本身,也就是不对I进行处理;如果经比较,较暗的是其他点,则根据上述公式计算得到的像素点的颜色值比I要小,达到了去除高光的效果。
图2为本公开实施例提供的高光图像处理方法实施例中的步骤S104的另一个实施例,如图2所述,所述步骤S104,还可以包括:
步骤S201:比较平均肤色与人脸图像的像素的亮度;
步骤S202:取亮度较小的像素点组成第一图像。
该步骤S201可以进一步包括:
步骤S2011:将所述平均肤色和人脸图像的色彩空间转换到HLS颜色空间;
步骤S2012:比较所述平均肤色和人脸图像的像素在HLS色彩空间上的亮度。
在该实施例中,可以计算平均肤色的亮度和人脸图像的像素的亮度,之后对两个亮度进行比较,计算亮度可以是将RGB通道上的三个颜色值相加之后取平均值。或者,在一个实施例中,将所述平均肤色和人脸图像的色彩空间转换到HSL颜色空间;比较所述平均肤色和人脸图像的像素在HSL色彩空间上的亮度。在该实施例中,HSL颜色空间包括色相、饱和度和亮度,可以直接使用该亮度属性进行比较。
本公开公开了一种高光图像处理方法、装置、电子设备和计算机可读存储介质。其中该高光图像处理方法包括:获取人脸图像;计算所述人脸图像的平均肤色;计算所述人脸图像的像素点的高光概率;使用平均肤色对人脸图像做第一处理,得到第一图像;将所述人脸图像和第一图像根据所述高光概率进行混合,得到处理后的人脸图像。本公开实施例通过计算像素点的高光概率,并通过高光概率对图像进行处理解决了现有技术中对于人脸高光区域处理效果不佳的技术问题。
图3为本公开实施例提供的高光图像处理装置实施例的结构示意图,如图3所示,该装置300包括:人脸图像获取模块301、平均肤色计算模块302、高光概率计算模块303、第一处理模块304和混合处理模块305。其中,
人脸图像获取模块301,用于获取人脸图像;
平均肤色计算模块302,用于计算所述人脸图像的平均肤色;
高光概率计算模块303,用于计算所述人脸图像的像素点的高光概率;
第一处理模块304,用于使用平均肤色对人脸图像做第一处理,得到第一图像;
混合处理模块305,用于将所述人脸图像和第一图像根据所述高光概率进行混合,得到处理后的人脸图像。
进一步的,所述人脸图像获取模块301,包括:视频帧获取模块,用于获取视频帧,获取所述视频帧中的人脸检测区域。
进一步的,所述平均肤色计算模块302,还用于:获取人脸图像中的多个像素的颜色值,计算所述颜色值的平均值。
进一步的,所述高光概率计算模块303,包括:
颜色比例计算模块,用于根据所述人脸图像中的像素点的颜色值计算所述像素点在RGB三个通道上的颜色比例;
高光概率计算第一子模块,用于根据所述颜色比例计算所述高光概率。
进一步的,所述高光概率子模块,包括:
第一参数计算模块,用于根据所述颜色比例计算多个第一参数;
高光概率计算第二子模块,用于根据所述多个第一参数中的最大第一参数计算所述高光概率。
进一步的,所述高光概率计算第二子模块,包括:
高光置信度计算模块,根据所述最大的第一参数计算高光置信度;
归一化模块,用于将所述高光置信度做归一化处理,得到高光概率。
进一步的,所述第一处理模块304,包括:
第一混合模块,用于将平均肤色与人脸图像按照预定的规则进行混合,得到第一混合图像;
第三亮度比较模块,用于比较第一混合图像和人脸图像的像素的亮度;
第二亮度选择模块,用于取亮度较小的像素点组成第一图像。
进一步的,所述混合处理模块305,包括:
第一结果计算模块,用于将所述第一图像中的像素点的颜色值与高光概率相乘,得到第一结果;
第二结果计算模块,用于将所述人脸图像中的像素点的颜色值与1减去所述高光概率的结果相乘,得到第二结果;
混合处理子模块,用于将所述第一结果和第二结果相加,得到处理后的人脸图像的像素点的颜色值。
图3所示装置可以执行图1所示实施例的方法,本实施例未详细描述的部分,可参考对图1所示实施例的相关说明。该技术方案的执行过程和技术效果参见图1所示实施例中的描述,在此不再赘述。
图4为本公开实施例中提供的高光图像处理装置实施例的结构中的第一处理模块的另一个实施例。如图4所示,所述第一处理模块304进一步的包括:
第一亮度比较模块401,用于比较平均肤色与人脸图像的像素的亮度;
第一亮度选择模块402,用于取亮度较小的像素点组成第一图像。
进一步的,所述第一亮度比较模块401,包括:
颜色空间转换模块4011,用于将所述平均肤色和人脸图像的色彩空间转换到HLS颜色空间;
第二亮度比较模块4012,用于比较所述平均肤色和人脸图像的像素在HLS色彩空间上的亮度。
图4所示装置可以执行图2所示实施例的方法,本实施例未详细描述的部分,可参考对图2所示实施例的相关说明。该技术方案的执行过程和技术效果参见图2所示实施例中的描述,在此不再赘述。
下面参考图5,其示出了适于用来实现本公开实施例的电子设备500的结构示意图。本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图5示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图5所示,电子设备500可以包括处理装置(例如中央处理器、图形处理器等)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储装置508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有电子设备500操作所需的各种程序和数据。处理装置501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
通常,以下装置可以连接至I/O接口505:包括例如触摸屏、触摸板、键盘、鼠标、图像传感器、麦克风、加速度计、陀螺仪等的输入装置506;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置507;包括例如磁带、硬盘等的存储装置508;以及通信装置509。通信装置509可以允许电子设备500与其他设备进行无线或有线通信以交换数据。虽然图5示出了具有各种装置的电子设备500,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置509从网络上被下载和安装,或者从存储装置508被安装,或者从ROM 502被安装。在该计算机程序被处理装置501执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取至少两个网际协议地址;向节点评价设备发送包括所述至少两个网际协议地址的节点评价请求,其中,所述节点评价设备从所述至少两个网际协议地址中,选取网际协议地址并返回;接收所述节点评价设备返回的网际协议地址;其中,所获取的网际协议地址指示内容分发网络中的边缘节点。
或者,上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:接收包括至少两个网际协议地址的节点评价请求;从所述至少两个网际协议地址中,选取网际协议地址;返回选取出的网际协议地址;其中,接收到的网际协议地址指示内容分发网络中的边缘节点。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取至少两个网际协议地址的单元”。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。