一种图像检测方法、装置及计算机可读存储介质与流程

文档序号:23544953发布日期:2021-01-05 20:57阅读:107来源:国知局
一种图像检测方法、装置及计算机可读存储介质与流程

本申请涉及通信技术领域,具体涉及一种图像检测方法、装置及计算机可读存储介质。



背景技术:

随着互联网技术的飞速发展,计算机设备的处理能力也越来越强,从而衍生出很多基于人机交互的应用程序,例如云游戏(cloudgaming),该云游戏的游戏主机在服务器,玩家通过本地网络连接服务器,在玩游戏时,服务器将游戏画面通过网络进行实时传输,进行生动的互动娱乐。

现有技术中,需要对云游戏的流畅度进行评估,找到用户觉得不卡顿的帧率,为了实现评估过程,需要反复的对云游戏的视频流进行降帧处理,并根据降帧处理之后视频流进行流畅度检测,直至找到视频流合适的帧率。

在对现有技术的研究和实践过程中,本申请的发明人发现,现有技术中,由于云游戏画面的复杂性会导致大量噪点的出现,从而导致游戏画面识别容易出现错误,无法准确定位每一帧画面的帧顺序,从而导致云游戏的流畅度评估失败。



技术实现要素:

本申请实施例提供一种图像检测方法、装置及计算机可读存储介质,可以提升图像检测的准确率,进而提高云游戏的流畅度评估的准确性。

为解决上述技术问题,本申请实施例提供以下技术方案:

一种图像检测方法,包括:

获取视频流中每一帧的图像对应的像素数字帧掩码,所述像素数字帧掩码包括在至少两个预设像素位置集合上显示的第一预设像素,以形成图像的帧序号;

确定所述像素数字帧掩码中的包含第一预设像素的目标预设像素位置集合;

根据所述目标预设像素位置集合之间的位置排列关系确定所述视频流中每一帧的图像对应的帧序号;

根据所述帧序号确定所述视频流的视频流畅度。

一种图像检测装置,包括:

获取单元,用于获取视频流中每一帧的图像对应的像素数字帧掩码,所述像素数字帧掩码包括在至少两个预设像素位置集合上显示的第一预设像素,以形成图像的帧序号;

第一确定单元,用于确定所述像素数字帧掩码中的包含第一预设像素的目标预设像素位置集合;

第二确定单元,用于根据所述目标预设像素位置集合之间的位置排列关系确定所述视频流中每一帧的图像对应的帧序号;

第三确定单元,用于根据所述帧序号确定所述视频流的视频流畅度。

在一些实施例中,所述生成单元,用于:获取预设尺度的第二预设像素组成第一掩码,所述第一掩码中包含多个预设像素位置集合;将至少两个预设像素位置集合中的第二预设像素切换显示为第一预设像素,生成像素数字帧掩码。

在一些实施例中,所述增加单元,用于:

获取所述视频流中每一帧的图像的帧顺序;

根据所述帧顺序确定对应的目标图像和目标像素数字帧掩码;

在所述目标图像的预设位置上插入所述目标像素数字帧掩码。

在一些实施例中,所述获取单元,用于:

对所述视频流中每一帧的图像进行二值化处理,得到二值化处理后的图像;

获取所述二值化处理后的图像在预设位置上的像素数字帧掩码。

在一些实施例中,所述装置,还包括:

视频流生成单元,用于基于运行在服务器中的游戏画面生成视频流。

本发明实施例还提供一种计算机可读存储介质,其内存储有处理器可执行指令,所述指令由一个或一个以上处理器加载,以执行上述图像检测方法。

本申请实施例通过获取视频流中每一帧的图像对应的像素数字帧掩码;确定像素数字帧掩码中的包含第一预设像素的目标预设像素位置集合;根据目标预设像素位置集合之间的位置排列关系确定视频流中每一帧的图像对应的帧序号;根据帧序号确定视频流的视频流畅度。以此,可以获取视频流中每一帧的图像对应的像素数字帧掩码,确定其中包含第一预设像素的目标预设像素位置集合,根据该目标预设像素位置集合的排列组合确定视频流中每一帧的图像对应的帧序号,进而通过准确的帧序号确定视频流的视频流畅度,相对于现有技术中直接对游戏画面进行识别确定帧序号的方案而言,本申请实施例可以在不通过画面识别的基础上,准确的确定出云游戏的视频流中每一帧的图像的帧序号,不会因为云游戏画面的变化而导致识别不准确,极大的提升了图像检测的准确率,进而提高了云游戏的流畅度评估的准确性。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的图像检测系统的场景示意图;

图2是本申请实施例提供的图像检测方法的流程示意图;

图3a为本申请实施例提供的图像检测方法的场景示意图;

图3b为本申请实施例提供的图像检测方法的另一场景示意图;

图4是本申请实施例提供的图像检测方法的另一流程示意图;

图5为本申请实施例提供的图像检测方法的另一场景示意图;

图6是本申请实施例提供的图像检测装置的结构示意图;

图7是本申请实施例提供的服务器的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请实施例提供一种图像检测方法、装置、及计算机可读存储介质。

请参阅图1,图1为本申请实施例所提供的图像检测系统的场景示意图,包括:基础服务器a、和虚拟化的云主机b(该基础服务器a和虚拟化的云主机b还可以包括更多,具体个数在此不作限定),该基础服务器a即为物理机,也称为实体服务器,是相对于虚拟机(virtualmachine)而言的实体计算机的称呼,物理机提供给虚拟机的硬件环境,也称为“宿主”或者“寄主”。基础服务器a可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。通过对该基础服务器a进行虚拟化,每台基础服务器a都可以虚拟化出多个云主机b,该云主机b即为虚拟机,也可以称为虚拟专用服务器(virtualprivateserver,vps),是将一个服务器分区成多个虚拟独立专享服务器的技术。每个使用vps技术的虚拟独立服务器拥有各自独立的公网互联网协议(internetprotocoladdress,ip)地址、操作系统、硬盘空间、内存空间、处理器(centralprocessingunit,cpu)资源等,还可以进行安装程序、重启服务器等操作,与运行一台独立服务器完全相同。也就是说通过软件层面,对一台服务器进行虚拟划分,虚拟出来多台服务器,这样就能让只需要一点点计算能力用户享用到大型服务器的计算资源。从广义上讲,云主机b就是vps,只不过云主机b是在所有基础服务器a或者虚拟机上进一步虚拟化所有基础资源,例如内存带宽等等。云主机b的优势在于它可以分布式存储数据,动态扩展基础资源。安全性和扩展性较强。

该每台云主机b拥有独立的操作系统和硬件结构,与运行一台独立主机完全相同,只不过每台云主机b中的物理地址都为虚拟机的物理地址,每台云主机b中可以安装有多个处理器,如一台云主机b中安装有多个图形处理器(graphicsprocessingunit,gpu),一台云主机b可以类似于vmware虚拟机,一个物理机可以虚拟化多个安卓操作系统实例,该一台云主机b中可以安装游戏的板卡或者容器,模拟用户的终端环境,但是无物理显示屏,例如运行云游戏(cloudgaming)该云游戏又可称为游戏点播(gamingondemand),是一种以云计算技术为基础的在线游戏技术。云游戏技术使图形处理与数据运算能力相对有限的轻端设备(thinclient)能运行高品质游戏。在云游戏场景下,游戏并不在玩家游戏终端,而是在云端服务器中运行,并由云端服务器将游戏场景渲染为视频音频流,通过网络传输给玩家游戏终端。玩家游戏终端无需拥有强大的图形运算与数据处理能力,仅需拥有基本的流媒体播放能力与获取玩家输入指令并发送给云端服务器的能力即可。

以此,云主机b可以获取云游戏的视频流中每一帧的图像对应的像素数字帧掩码,该像素数字帧掩码包括在至少两个预设像素位置集合上显示的第一预设像素,以形成图像的帧序号;确定该像素数字帧掩码中的包含第一预设像素的目标预设像素位置集合;根据该目标预设像素位置集合之间的位置排列关系确定该视频流中每一帧的图像对应的帧序号;根据该帧序号确定该视频流的视频流畅度,极大的提升了图像检测的准确率,进而提高云游戏的流畅度评估的准确性。

需要说明的是,图1所示的图像检测系统的场景示意图仅仅是一个示例,本申请实施例描述的图像检测系统以及场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着图像检测系统的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。

基于上述应用场景的描述,以下分别进行详细说明。需说明的是,以下实施例的序号不作为对实施例优选顺序的限定。

实施例一、

在本实施例中,将从图像检测装置的角度进行描述,该图像检测装置具体可以集成在具备储存单元并安装有微处理器而具有运算能力的云主机中。

请参阅图2,图2是本申请实施例提供的图像检测方法的流程示意图。该图像检测方法包括:

在步骤101中,获取视频流中每一帧的图像对应的像素数字帧掩码。

本申请实施例中的像素是指由图像的小方格组成的,这些小方块都有一个明确的位置和被分配的色彩数值,小方块颜色和位置就决定该图像所呈现出来的样子。

需要说明的是,该视频流可以由多帧连续的游戏图像组成,即该视频流可以为游戏播放画面,在实际的场景中,该云主机通过网络将该视频流以设定的帧率,例如60帧/秒或者30帧/秒,实时的传输到用户终端中,用户终端通过播放上述视频流实现游戏。

在一实施例中,该视频流可以为云主机中云游戏的云游戏画面生成的视频流、视频播放器播放画面的视频流、直播平台播放直播画面对应的视频流或者普通游戏运行时的游戏画面形成的视频流,本申请实施例以云游戏画面生成的视频流进行描述,不作为具体限定,其他场景下的视频流也可以通过本实施例提供的图像检测方法进行处理。

其中,该帧率越高,视频流播放的流畅性和稳定性越高,游戏效果越好,该帧率越低,视频流播放的流畅性和稳定性越低,但是由于不同终端的设备配置不同和网络环境不同,对应能支持的帧率也不同,云主机对应不同的用户终端需要对推送的视频流的流畅度进行评估,找到不同用户终端觉得不卡顿的帧率,因此,基于高频帧率的视频流开始,需要反复的对云游戏的视频流进行降帧处理,并根据降帧处理之后的视频流进行流畅度检测,直至找到视频流合适的帧率。

由于云游戏中的视频流中的每一帧的图像是没有特定序号的,所以为了判断降帧之后的图像的播放是否均匀正确,需要对视频流中的每一帧的图像打上标记,从而通过识别标记的方式对降帧均匀程度进行评估。

在相关技术中,可以为视频流中的每一帧的图像写上对应的标记,通过光学字符识别(opticalcharacterrecognition,ocr)的方式进行标记识别确定每一图像的顺序,需要说明的是,该光学字符识别可以对字符通过检测暗、亮的模式确定其形状,然后用字符识别方式将形状翻译成计算机文字。但是,由于云游戏游戏画面的复杂性以及编码处理等技术,会导致部分图像中出现噪点,该噪点是图像中一种亮度或颜色信息的随机变化(被拍摄物体本身并没有),通常是电子噪声的表现,是图像生成过程中不希望存在的副产品,给图像带来了错误和额外的信息。该噪点会影响图像中标记的识别,进而导致图像标记检测的准确率极大的降低。

本申请实施例为了解决上述问题,可以预先生成像素数字帧掩码,该像素数字帧掩码包括在至少两个预设像素位置集合上显示的第一预设像素,以形成图像的帧序号,为视频流中每一帧的图像增加对应的像素数字帧掩码,实现帧序号标注,基于此,服务器可以获取视频流中每一帧的图像对应的像素数字帧掩码,例如,请一并参阅图3a所示,该视频流中的图像11中包含像素数字帧掩码111,在该像素数字帧掩码111中包含多个预设像素位置集合,该预设像素位置集合可以理解为形成数字的矩形笔画,该预设像素位置集合为预先定义好的,该预设像素位置集合的大小可以为2n*n像素大小,该第一预设像素可以为rgb(红(r)、绿(g)、蓝(b))值为(255,255,255)的像素,即纯白色像素。通过将至少两个预设像素位置集合上的像素设置为第一预设像素,可以表示出任意的数字,例如,通过两个预设像素位置集合上的像素设置为第一预设像素可以表示数字1,像素数字帧掩码111中包含数字0、9、9、1,将该数字0、9、9、1进行组合,确定该图像11的帧序号为0991。以此类推,对至少两个预设像素位置集合上显示的第一预设像素按照数字规则进行设置,可以得到任意数量的帧序号,且由于该像素数字帧掩码111的表达简单,后续可以准确且快速进行识别。

在步骤102中,确定像素数字帧掩码中的包含第一预设像素的目标预设像素位置集合。

在本申请实施例中,通过将像素数字帧掩码中的预设像素位置集合上设置第一预设像素来表达每一数字的矩形笔画,因此,需要首先确定像素数字帧掩码中的包含第一预设像素的目标预设像素位置集合,即确定形成数字的矩形笔画。

例如,请一并参阅图3a所示,像素数字帧掩码111中包含7个预设像素位置集合,分别为预设像素位置集合1、预设像素位置集合2、预设像素位置集合3、预设像素位置集合4、预设像素位置集合5、预设像素位置集合6、预设像素位置集合7,通过对该预设像素位置集合1、预设像素位置集合2、预设像素位置集合3、预设像素位置集合4、预设像素位置集合5、预设像素位置集合6、预设像素位置集合7中的像素进行分析,确定预设像素位置集合1、预设像素位置集合2、预设像素位置集合3、预设像素位置集合4、预设像素位置集合5、预设像素位置集合6、预设像素位置集合7中的像素均为第一预设像素,因此,将预设像素位置集合1、预设像素位置集合2、预设像素位置集合3、预设像素位置集合4、预设像素位置集合5、预设像素位置集合6、预设像素位置集合7均确定为目标预设像素位置集合。

在一些实施方式中,该确定像素数字帧掩码中的包含第一预设像素的目标预设像素位置集合的步骤,可以包括:

(1)确定该像素数字帧掩码中的多个预设像素位置集合;

(2)提取每一预设像素位置集合中第一预设数量的像素;

(3)将第一预设数量的像素均为第一预设像素的预设像素位置集合确定为目标预设像素位置集合。

其中,可以先确定像素数字帧掩码中的多个预设像素位置集合,请一并参阅图3b所示,确定像素数字帧掩码111中的预设像素位置集合1、预设像素位置集合2、预设像素位置集合3、预设像素位置集合4、预设像素位置集合5、预设像素位置集合6、预设像素位置集合7,提取预设像素位置集合1、预设像素位置集合2、预设像素位置集合3、预设像素位置集合4、预设像素位置集合5、预设像素位置集合6、预设像素位置集合7中第一预设数量的像素,该第一预设数量可以为4,即随机提取每一预设像素位置集合中的4个像素。

进一步的,假设预设像素位置集合中的4个像素均为第一预设像素,可以判定为该预设像素位置集合中的像素全部为第一预设像素,将第一预设数量的像素均为第一预设像素的预设像素位置集合确定为目标预设像素位置集合,即将预设像素位置集合1、预设像素位置集合2、预设像素位置集合3、预设像素位置集合4、预设像素位置集合5、预设像素位置集合6、预设像素位置集合7均确定为目标预设像素位置集合。

在步骤103中,根据目标预设像素位置集合之间的位置排列关系确定视频流中每一帧的图像对应的帧序号。

其中,请一并参阅图3b所示,可以设定一个数字信息包含7个预设像素位置集合,即预设像素位置集合1、预设像素位置集合2、预设像素位置集合3、预设像素位置集合4、预设像素位置集合5、预设像素位置集合6、预设像素位置集合7,该预设像素位置集合中的像素为第一预设像素时,即点亮数字笔画,该预设像素位置集合中的像素不为第一预设像素时,即不点亮数字笔画,通过该预设像素位置集合1、预设像素位置集合2、预设像素位置集合3、预设像素位置集合4、预设像素位置集合5、预设像素位置集合6、预设像素位置集合7可以表示数字0至9中的任一数字,例如:

0:预设像素位置集合1、2、3、5、6、7点亮。

1:预设像素位置集合3、6点亮。

2:预设像素位置集合1、3、4、5、7点亮。

3:预设像素位置集合1、3、4、6、7点亮。

4:预设像素位置集合2、3、4、6点亮。

5:预设像素位置集合1、2、4、6、7点亮。

6:预设像素位置集合1、2、4、5、6、7点亮。

7:预设像素位置集合1、3、6点亮。

8:预设像素位置集合1、2、3、4、5、6、7点亮。

9:预设像素位置集合1、2、3、4、6点亮。

本申请实施例可以根据需要设置任意数量的数字信息,在此不作具体限定。以此,本申请可以根据目标预设像素位置集合之间的位置排列关系确定视频流中每一帧的图像对应的帧序号,由于该帧序号为通过特定的第一预设像素组成,因此,即使图像中出现噪点也不会像素数字帧掩码产生影响,所以可以准确的识别帧序号,且由于该像素数字帧掩码和像素数字帧掩码中的预设像素位置集合的坐标信息在图像中对应的位置都是确定的,所以可以快速进行识别帧序号。

在一些实施方式中,该根据目标预设像素位置集合之间的位置排列关系确定视频流中每一帧的图像对应的帧序号的步骤,可以包括:

(1)将横坐标间距小于预设阈值的目标预设像素位置集合标记为同类集合;

(2)根据同类集合中的目标预设像素位置之间的位置排列关系生成对应的数字信息;

(3)将每一同类集合对应的数字信息进行组合,确定该视频流中每一帧的图像对应的帧序号。

其中,由于在实际的使用过程中,帧序号可以为个位数、十位数或者百位数,因此组成帧序号的数字信息可以为1个、2个或者3个等等,因此,可以通过横坐标间距将数字信息进行区分,将横坐标间距小于预设阈值的目标预设像素位置集合标记为同类集合,该预设阈值可以为10个像素,即将组成同一数字信息的目标预设像素位置集合归为一类。

进一步的,将同一类集合中的目标预设像素位置之间的位置排列关系与前述规则进行对比,得到每一同类集合对应的数字信息,将每一同类集合对应的数字信息进行组合,确定该视频流中每一帧的图像对应的帧序号。

在步骤104中,根据帧序号确定视频流的视频流畅度。

其中,可以根据视频流中每一帧的图像对应的帧序号,检测该帧序号之间是否为线性序列,当检测到该帧序号之间为线性序列时,判定该视频流的视频流畅度为流畅,当检测到该帧序号之间不为线性序列时,判定该视频流的视频流畅度为非流畅,需要进行调整。

在一实施方式中,在确定出每一帧的图像的帧序号之后,可以根据帧序号快速定位到需要进行画面测评的图像上,通过画质评估算法对图片的质量进行评估打分。

由上述可知,本申请实施例通过获取视频流中每一帧的图像对应的像素数字帧掩码;确定像素数字帧掩码中的包含第一预设像素的目标预设像素位置集合;根据目标预设像素位置集合之间的位置排列关系确定视频流中每一帧的图像对应的帧序号;根据帧序号确定视频流的视频流畅度。以此,可以获取视频流中每一帧的图像对应的像素数字帧掩码,确定其中包含第一预设像素的目标预设像素位置集合,根据该目标预设像素位置集合的排列组合确定视频流中每一帧的图像对应的帧序号,进而通过准确的帧序号确定视频流的视频流畅度,相对于现有技术中直接对游戏画面进行识别确定帧序号的方案而言,本申请实施例可以在不通过画面识别的基础上,准确的确定出云游戏的视频流中每一帧的图像的帧序号,不会因为云游戏画面的变化而导致识别不准确,极大的提升了图像检测的准确率,进而提高了云游戏的流畅度评估的准确性。

实施例二、

根据实施例一所描述的方法,以下将举例作进一步详细说明。

在本实施例中,将以该图像检测装置具体集成在服务器中,该服务器为云主机为例进行说明,具体参照以下说明。

请参阅图4,图4为本申请实施例提供的图像检测方法的另一流程示意图。该方法流程可以包括:

在步骤201中,服务器基于运行在服务器中的游戏画面生成视频流,获取预设尺度的第二预设像素组成第一掩码。

其中,该第一预设像素可以为rgb值为(255,255,255)的像素,即纯白色像素,该第二预设像素可以为rgb值为(0,0,0)的像素,即纯黑色像素,服务器可以通过运行在云主机中的云游戏对应的游戏画面生成视频流,该方式下生成的视频流中的每一帧图像即为云游戏的图像,获取预设尺度的第二预设像素组成的第一掩码,该预设尺度可以为人为设置,即生成预设尺度的纯黑色画布,该第一掩码中包含多个预设像素位置集合,例如可以包含28个预设像素位置集合。

需要说明的是,该预设像素位置集合的大小为2n*n像素大小,该2n为长度,该n为宽度,n为人工设置,例如3,7个预设像素位置集合可以形成一个数字信息,即本申请实施例最多可以表示4位数字,最小为1,最大为9999。

在步骤202中,服务器将至少两个预设像素位置集合中的第二预设像素切换显示为第一预设像素,生成像素数字帧掩码,获取视频流中每一帧的图像的帧顺序,根据帧顺序确定对应的目标图像和目标像素数字帧掩码,在目标图像的预设位置上插入目标像素数字帧掩码。

其中,服务器为了表示帧序号,可以以此将至少两个预设像素位置集合中的第二预设像素切换显示为第一预设像素,以此根据数字显示规则,可以生成数字为1至9999中任一帧序号的像素数字帧掩码。

进一步的,获取视频流中每一帧的图像的帧顺序,该帧顺序从1开始,根据该帧顺序确定对应的目标图像和目标像素数字帧掩码,例如,获取帧顺序为1,对应为视频流中第一帧的图像和目标像素数字帧掩码,该目标数字帧掩码中的帧序号为1,以此,在目标图像的预设位置上插入目标像素数字帧掩码,例如,请继续参阅图3a所示,在目标图像11的右下角插入目标像素数字帧掩码111,以此,在图像的固定位置上插入目标像素数字帧掩码,使得后续可以根据预设位置快速定位到像素数字帧掩码的位置,进而截取该像素数字帧掩码进行帧序号识别。

在步骤203中,服务器对视频流中每一帧的图像进行二值化处理,得到二值化处理后的图像,获取二值化处理后的图像在预设位置上的像素数字帧掩码。

其中,为了增加像素数字帧掩码中的第一预设像素和第二预设像素之间的区分度,服务器可以预先对视频流中每一帧的图像进行二值化处理,该二值化处理可以将整个图像呈现出明显的黑白效果,从而凸显出第一预设像素的轮廓。

进一步的,获取二值化处理后的图像在预设位置,例如图像的右下角上的像素数字帧掩码,由于服务器预先定义了像素数字帧掩码的位置,以此,快速快速通过定义的位置截取到像素数字帧掩码以进行后续的识别,请一并参阅图5所示,该图5所示即为二值化处理后的图像在预设位置上的像素数字帧掩码112。

在步骤204中,服务器确定像素数字帧掩码中的多个预设像素位置集合,提取每一预设像素位置集合中第一预设数量的像素,获取第一预设数量的像素为第一预设像素的目标数量。

其中,请继续参阅图5所示,确定像素数字帧掩码112中包含的28个预设像素位置集合,该第一预设数量为人工设置,假设为4个,服务器提取28个预设像素位置集合中任意4个像素。

进一步的,确定4个像素中像素为第一预设像素的目标数量,假设为4个像素中3个第一预设像素,目标数量为3。

在步骤205中,服务器将目标数量大于第二预设数量的预设像素位置集合确定为目标预设像素位置集合。

其中,由于云游戏画面在传输之前需要压缩码和编码等处理,会导致部分像素可能损失细节,为了避免出现误判,可以设定第二预设数量,该第二预设数量小于第一预设数量,假设该第二预设数量可以为2,以此,服务器将目标数量大于2的预设像素位置集合确定为目标预设像素位置集合。请一并参阅图5所示,确定目标预设像素位置集合为25个。

在步骤206中,服务器将横坐标间距小于预设阈值的目标预设像素位置集合标记为同类集合,根据同类集合中的目标预设像素位置之间的位置排列关系生成对应的数字信息。

其中,请一并参阅图5所示,不同数字信息之间的横坐标间隔为固定的,纵坐标接近,以此,服务器可将横坐标间隔小于预设阈值的目标预设像素位置集合标记为同类集合,得到集合a、集合b、集合c和集合d。请继续参阅图3b所示,可以设定一个数字信息包含7个预设像素位置集合,即预设像素位置集合1、预设像素位置集合2、预设像素位置集合3、预设像素位置集合4、预设像素位置集合5、预设像素位置集合6、预设像素位置集合7,该预设像素位置集合中的像素为第一预设像素时,即点亮数字笔画,该预设像素位置集合中的像素不为第一预设像素时,即不点亮数字笔画,通过该预设像素位置集合1、预设像素位置集合2、预设像素位置集合3、预设像素位置集合4、预设像素位置集合5、预设像素位置集合6、预设像素位置集合7可以表示数字0至9中的任一数字,例如:

0:预设像素位置集合1、2、3、5、6、7点亮。

1:预设像素位置集合3、6点亮。

2:预设像素位置集合1、3、4、5、7点亮。

3:预设像素位置集合1、3、4、6、7点亮。

4:预设像素位置集合2、3、4、6点亮。

5:预设像素位置集合1、2、4、6、7点亮。

6:预设像素位置集合1、2、4、5、6、7点亮。

7:预设像素位置集合1、3、6点亮。

8:预设像素位置集合1、2、3、4、5、6、7点亮。

9:预设像素位置集合1、2、3、4、6点亮。

以此,服务器将同类集合中的目标预设像素位置之间的位置排列关系根据上述规则进行推导,生成集合a、集合b、集合c和集合d对应的数字信息分别为0、9、9、8。

在步骤207中,服务器将每一同类集合对应的数字信息进行组合,确定视频流中每一帧的图像对应的帧序号。

其中,服务器将集合a、集合b、集合c和集合d对应数字信息0、9、9、8进行组合,识别得到当前图像的帧序号为0998,以此类推,服务器可以快速且准确的识别出视频流中每一帧的图像对应的帧序号。

在步骤208中,服务器根据帧序号确定视频流的视频流畅度。

其中,在服务器确定视频流中每一图像的帧序号之后,检测该帧序号之间是否为线性序列,当检测到该帧序号之间为线性序列时,判定该视频流的视频流畅度为流畅,当检测到该帧序号之间不为线性序列时,判定该视频流的视频流畅度为非流畅,需要进行调整。

由上述可知,本申请实施例通过获取视频流中每一帧的图像对应的像素数字帧掩码;确定像素数字帧掩码中的包含第一预设像素的目标预设像素位置集合;根据目标预设像素位置集合之间的位置排列关系确定视频流中每一帧的图像对应的帧序号;根据帧序号确定视频流的视频流畅度。以此,可以获取视频流中每一帧的图像对应的像素数字帧掩码,确定其中包含第一预设像素的目标预设像素位置集合,根据该目标预设像素位置集合的排列组合确定视频流中每一帧的图像对应的帧序号,进而通过准确的帧序号确定视频流的视频流畅度,相对于现有技术中直接对游戏画面进行识别确定帧序号的方案而言,本申请实施例可以在不通过画面识别的基础上,准确的确定出云游戏的视频流中每一帧的图像的帧序号,不会因为云游戏画面的变化而导致识别不准确,极大的提升了图像检测的准确率,进而提高了云游戏的流畅度评估的准确性。

实施例三、

为便于更好的实施本申请实施例提供的图像检测方法,本申请实施例还提供一种基于上述图像检测方法的装置。其中名词的含义与上述图像检测方法中相同,具体实现细节可以参考方法实施例中的说明。

请参阅图6,图6为本申请实施例提供的图像检测装置的结构示意图,其中该图像检测装置可以包括获取单元301、第一确定单元302、第二确定单元303、及第三确定单元304等。

获取单元301,用于获取视频流中每一帧的图像对应的像素数字帧掩码,该像素数字帧掩码包括在至少两个预设像素位置集合上显示的第一预设像素,以形成图像的帧序号。

其中,可以预先生成像素数字帧掩码,该像素数字帧掩码包括在至少两个预设像素位置集合上显示的第一预设像素,以形成图像的帧序号,为视频流中每一帧的图像增加对应的像素数字帧掩码,实现帧序号标注,基于此,获取单元301可以获取视频流中每一帧的图像对应的像素数字帧掩码。

在一些实施方式中,该获取单元301,用于:对该视频流中每一帧的图像进行二值化处理,得到二值化处理后的图像;获取该二值化处理后的图像在预设位置上的像素数字帧掩码。

第一确定单元302,用于确定该像素数字帧掩码中的包含第一预设像素的目标预设像素位置集合。

其中,第一确定单元302通过将像素数字帧掩码中的预设像素位置集合上设置第一预设像素来表达每一数字的矩形笔画,因此,需要首先确定像素数字帧掩码中的包含第一预设像素的目标预设像素位置集合,即确定形成数字的矩形笔画。

在一些实施方式中,该第一确定单元302,包括:

第一确定子单元,用于确定该像素数字帧掩码中的多个预设像素位置集合;

提取子单元,用于提取每一预设像素位置集合中第一预设数量的像素;

第二确定子单元,用于将第一预设数量的像素均为第一预设像素的预设像素位置集合确定为目标预设像素位置集合。

在一些实施方式中,该第二确定子单元,用于:获取该第一预设数量的像素为第一预设像素的目标数量;将该目标数量大于第二预设数量的预设像素位置集合确定为目标预设像素位置集合,该第二预设数量小于该第一预设数量。

第二确定单元303,用于根据该目标预设像素位置集合之间的位置排列关系确定该视频流中每一帧的图像对应的帧序号。

其中,第二确定单元303可以根据目标预设像素位置集合之间的位置排列关系确定视频流中每一帧的图像对应的帧序号,由于该帧序号为通过特定的第一预设像素组成,因此,即使图像中出现噪点也不会像素数字帧掩码产生影响,所以可以准确的识别帧序号,且由于该像素数字帧掩码和像素数字帧掩码中的预设像素位置集合的坐标信息在图像中对应的位置都是确定的,所以可以快速进行识别帧序号。

在一些实施方式中,该第二确定单元303,用于:将横坐标间距小于预设阈值的目标预设像素位置集合标记为同类集合;根据同类集合中的目标预设像素位置之间的位置排列关系生成对应的数字信息;将每一同类集合对应的数字信息进行组合,确定该视频流中每一帧的图像对应的帧序号。

第三确定单元304,用于根据该帧序号确定该视频流的视频流畅度。

其中,第三确定单元304可以根据视频流中每一帧的图像对应的帧序号,检测该帧序号之间是否为线性序列,当第三确定单元304检测到该帧序号之间为线性序列时,判定该视频流的视频流畅度为流畅,当第三确定单元304检测到该帧序号之间不为线性序列时,判定该视频流的视频流畅度为非流畅,需要进行调整。

在一些实施方式中,该装置还包括:

视频流生成单元,用于基于运行在服务器中的游戏画面生成视频流。

以上各个单元的具体实施可参见前面的实施例,在此不再赘述。

由上述可知,本申请实施例通过获取单元301获取视频流中每一帧的图像对应的像素数字帧掩码;第一确定单元302确定像素数字帧掩码中的包含第一预设像素的目标预设像素位置集合;第二确定单元303根据目标预设像素位置集合之间的位置排列关系确定视频流中每一帧的图像对应的帧序号;第三确定单元304根据帧序号确定视频流的视频流畅度。以此,可以获取视频流中每一帧的图像对应的像素数字帧掩码,确定其中包含第一预设像素的目标预设像素位置集合,根据该目标预设像素位置集合的排列组合确定视频流中每一帧的图像对应的帧序号,进而通过准确的帧序号确定视频流的视频流畅度,相对于现有技术中直接对游戏画面进行识别确定帧序号的方案而言,本申请实施例可以在不通过画面识别的基础上,准确的确定出云游戏的视频流中每一帧的图像的帧序号,不会因为云游戏画面的变化而导致识别不准确,极大的提升了图像检测的准确率,进而提高了云游戏的流畅度评估的准确性。

实施例四、

本申请实施例还提供一种服务器,如图7所示,其示出了本申请实施例所涉及的服务器的结构示意图,具体来讲:

该服务器可以为云主机,可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、电源403和输入单元404等部件。本领域技术人员可以理解,图7中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:

处理器401是该服务器的控制中心,利用各种接口和线路连接整个服务器的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行服务器的各种功能和处理数据,从而对服务器进行整体监控。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。

存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。

服务器还包括给各个部件供电的电源403,优选的,电源403可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源403还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。

该服务器还可包括输入单元404,该输入单元404可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。

尽管未示出,服务器还可以包括显示处理器等,在此不再赘述。具体在本实施例中,服务器中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如下:

获取视频流中每一帧的图像对应的像素数字帧掩码,该像素数字帧掩码包括在至少两个预设像素位置集合上显示的第一预设像素,以形成图像的帧序号;确定该像素数字帧掩码中的包含第一预设像素的目标预设像素位置集合;根据该目标预设像素位置集合之间的位置排列关系确定该视频流中每一帧的图像对应的帧序号;根据该帧序号确定该视频流的视频流畅度。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对图像检测方法的详细描述,此处不再赘述。

由上述可知,本申请实施例的服务器可以通过获取视频流中每一帧的图像对应的像素数字帧掩码;确定像素数字帧掩码中的包含第一预设像素的目标预设像素位置集合;根据目标预设像素位置集合之间的位置排列关系确定视频流中每一帧的图像对应的帧序号;根据帧序号确定视频流的视频流畅度。以此,可以获取视频流中每一帧的图像对应的像素数字帧掩码,确定其中包含第一预设像素的目标预设像素位置集合,根据该目标预设像素位置集合的排列组合确定视频流中每一帧的图像对应的帧序号,进而通过准确的帧序号确定视频流的视频流畅度,相对于现有技术中直接对游戏画面进行识别确定帧序号的方案而言,本申请实施例可以在不通过画面识别的基础上,准确的确定出云游戏的视频流中每一帧的图像的帧序号,不会因为云游戏画面的变化而导致识别不准确,极大的提升了图像检测的准确率,进而提高了云游戏的流畅度评估的准确性。

实施例五、

本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。

为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请实施例所提供的任一种图像检测方法中的步骤。例如,该指令可以执行如下步骤:

获取视频流中每一帧的图像对应的像素数字帧掩码,该像素数字帧掩码包括在至少两个预设像素位置集合上显示的第一预设像素,以形成图像的帧序号;确定该像素数字帧掩码中的包含第一预设像素的目标预设像素位置集合;根据该目标预设像素位置集合之间的位置排列关系确定该视频流中每一帧的图像对应的帧序号;根据该帧序号确定该视频流的视频流畅度。

根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例提供的各种可选实现方式中提供的方法。

以上各个操作的具体实施可参见前面的实施例,在此不再赘述。

其中,该计算机可读存储介质可以包括:只读存储器(rom,readonlymemory)、随机存取记忆体(ram,randomaccessmemory)、磁盘或光盘等。

由于该计算机可读存储介质中所存储的指令,可以执行本申请实施例所提供的任一种图像检测方法中的步骤,因此,可以实现本申请实施例所提供的任一种图像检测方法所能实现的有益效果,详见前面的实施例,在此不再赘述。

以上对本申请实施例所提供的一种图像检测方法、装置、计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1