CN108600781B - 一种视频封面生成的方法以及服务器 - Google Patents

一种视频封面生成的方法以及服务器 Download PDF

Info

Publication number
CN108600781B
CN108600781B CN201810490362.1A CN201810490362A CN108600781B CN 108600781 B CN108600781 B CN 108600781B CN 201810490362 A CN201810490362 A CN 201810490362A CN 108600781 B CN108600781 B CN 108600781B
Authority
CN
China
Prior art keywords
pixel
image frame
pixels
video cover
video
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810490362.1A
Other languages
English (en)
Other versions
CN108600781A (zh
Inventor
黄磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810490362.1A priority Critical patent/CN108600781B/zh
Publication of CN108600781A publication Critical patent/CN108600781A/zh
Application granted granted Critical
Publication of CN108600781B publication Critical patent/CN108600781B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明实施例公开了一种视频封面生成的方法,包括:从待处理视频中获取第一图像帧;获取所述第一图像帧的第一像素信息,其中,所述第一像素信息包括所述第一图像帧的像素数量、像素饱和度以及像素亮度中的至少一项;若所述第一像素信息满足视频封面生成条件,则根据所述第一图像帧生成视频封面,其中,所述视频封面用于在客户端进行展示。本发明实施例还公开了一种服务器。本发明实施例无需耗费较多的时间和精力即可生成视频封面,从而提升视频封面生成的效率,并且降低了视频封面生成的成本。

Description

一种视频封面生成的方法以及服务器
技术领域
本发明涉及视频处理技术领域,尤其涉及一种视频封面生成的方法以及服务器。
背景技术
随着社交网络产品的发展,如个人空间或博客等,互联网用户可以将自己喜欢的视频上传到社交网络产品中。为了能够让观看者更容易了解视频内容,通常会在视屏未播放前放置一张封面图。
目前,一种常用的视频封面生成方式为,首先从待生成视频封面的视频中任意取出一幅图像或者视频帧,然后基于深度神经网络计算出该图像或者该视频帧的特征信息,最后利用特征信息学习得到视频封面。
上述视频封面的生成方式依赖于深度神经网络,然而,训练得到深度神经网络往往需要大量的样本,因此深度学习的过程会耗费较长的时间,并且需要投入较大精力,从而导致生成视频封面的成本较高,同时也不利于视频封面生成的效率。
发明内容
本发明实施例提供了一种视频封面生成的方法以及服务器,无需耗费较多的时间和精力即可生成视频封面,从而提升视频封面生成的效率,并且降低了视频封面生成的成本。
本发明的第一方面提供了一种视频封面生成的方法,包括:
从待处理视频中获取第一图像帧;
获取所述第一图像帧的第一像素信息,其中,所述第一像素信息包括所述第一图像帧的像素数量、像素饱和度以及像素亮度中的至少一项;
若所述第一像素信息满足视频封面生成条件,则根据所述第一图像帧生成视频封面,其中,所述视频封面用于在客户端进行展示。
本发明的第二方面提供了一种服务器,包括:
获取模块,用于从待处理视频中获取第一图像帧;
所述获取模块,还用于获取所述第一图像帧的第一像素信息,其中,所述第一像素信息包括所述第一图像帧的像素数量、像素饱和度以及像素亮度中的至少一项;
生成模块,用于若所述获取模块获取的所述第一像素信息满足视频封面生成条件,则根据所述第一图像帧生成视频封面,其中,所述视频封面用于在客户端进行展示。
本发明的第三方面提供了一种服务器,所述服务器包括:存储器、收发器、处理器以及总线系统;
其中,所述存储器用于存储程序;
所述处理器用于执行所述存储器中的程序,包括如下步骤:
从待处理视频中获取第一图像帧;
获取所述第一图像帧的第一像素信息,其中,所述第一像素信息包括所述第一图像帧的像素数量、像素饱和度以及像素亮度中的至少一项;
若所述第一像素信息满足视频封面生成条件,则根据所述第一图像帧生成视频封面,其中,所述视频封面用于在客户端进行展示;
所述总线系统用于连接所述存储器以及所述处理器,以使所述存储器以及所述处理器进行通信。
本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明实施例中,提供了一种视频封面生成的方法,首先服务器从待处理视频中获取第一图像帧,然后服务器获取第一图像帧的第一像素信息,其中,第一像素信息包括第一图像帧的像素数量、像素饱和度以及像素亮度中的至少一项,如果第一像素信息满足视频封面生成条件,那么服务器根据第一图像帧生成视频封面,其中,视频封面用于在客户端进行展示。通过上述方式,无需耗费较多的时间和精力即可生成视频封面,从而提升视频封面生成的效率,并且降低了视频封面生成的成本。
附图说明
图1A为本发明实施例中视频封面生成系统的一个架构示意图;
图1B为一个实施例中操作系统、母应用程序、子应用程序以及子应用程序页面之间关系的示意图;
图2为本发明实施例中未生成视频封面的一个界面示意图;
图3为本发明实施例中已生成视频封面的一个界面示意图;
图4为本发明实施例中视频封面生成的方法一个实施例示意图;
图5(a)为本发明实施例中取样线段的一个示意图;
图5(b)为本发明实施例中取样线段的另一个示意图;
图5(c)为本发明实施例中取样线段的另一个示意图;
图5(d)为本发明实施例中取样线段的另一个示意图;
图5(e)为本发明实施例中取样线段的另一个示意图;
图5(f)为本发明实施例中取样线段的另一个示意图;
图6为本发明应用场景中生成视频封面的一个流程示意图;
图7为本发明实施例中服务器的一个实施例示意图;
图8为本发明实施例中服务器的另一个实施例示意图;
图9为本发明实施例中服务器的另一个实施例示意图;
图10为本发明实施例中服务器的一个结构示意图。
具体实施方式
本发明实施例提供了一种视频封面生成的方法以及服务器,无需耗费较多的时间和精力即可生成视频封面,从而提升视频封面生成的效率,并且降低了视频封面生成的成本。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应理解,目前市场上各种视频软件都会在视屏源未播放前放置一张封面图,而这种效果都是在视频源下发到终端设备之后,由视频播放控件进行视频源截图并展示的。本发明能够解决的问题是,既不依赖视频播放控件,同时也不依赖于人工后期运营,而是全程自动化生成视频封面。本发明所提供的视频封面生成方法主要部署于服务器上,由服务器生成视频封面后将其发送至终端设备的客户端上。为了便于理解,请参阅图1A,图1A为本发明实施例中视频封面生成系统的一个架构示意图,如图所示,服务器通过网络与终端设备建立通信连接,由服务器生成视频封面,然后将视频封面发送至终端设备,终端设备便会在客户端上展示该视频封面。
其中,图1A中所示的终端设备仅为一个示意,在实际应用中,终端设备包含但不仅限于手机、台式电脑、平板电脑、笔记本电脑以及掌上电脑。
请参阅图1B,图1B为一个实施例中操作系统、母应用程序、子应用程序以及子应用程序页面之间关系的示意图,本发明主要应用于以在母应用程序提供的环境中生成包括子应用程序页面的子应用程序,其中,子应用程序具体可以是指小程序。如图4所示,终端设备上运行操作系统,并在操作系统上运行母应用程序,其中,母应用程序具体可以是指浏览器,那么小程序就可以理解为是运行于浏览器上的应用程序。在母应用程序提供的环境中生成子应用程序,子应用程序包括子应用程序页面。终端设备可通过母应用程序从本地或者服务器获取子应用程序标识。
其中,操作系统(Operating System,OS)是管理和控制终端硬件与软件资源的计算机程序,是直接运行在终端裸机上的最基本的系统软件,应用程序需要在操作系统的支持下运行。
母应用程序是承载子应用程序的应用程序,为子应用程序的实现提供环境。母应用程序是原生应用程序。原生应用程序是可直接运行于操作系统的应用程序。母应用程序可以是社交应用程序、专门支持子应用程序的专用应用程序、文件管理应用程序、邮件应用程序或者游戏应用程序等。社交应用程序包括即时通信应用、社交网站(Social NetworkService,SNS)应用或者直播应用等。
子应用程序则是可在母应用程序提供的环境中实现的应用程序。子应用程序具体可以是社交应用程序、文件管理应用程序、邮件应用程序或者游戏应用程序等。
公共组件是母应用程序所提供的可供不同的子应用程序共用的组件,具有视觉形态,是子应用程序页面的组成单元。公共组件还可以封装有用于处理针对该公共组件所触发事件的逻辑代码。不同的子应用程序共用公共组件,具体可以是同时或者在不同时刻调用相同的公共组件。在一个实施例中,公共组件还可由母应用程序和子应用程序所共用。
下面将结合图2和图3介绍视频封面的展示方式,请先参阅图2,图2为本发明实施例中未生成视频封面的一个界面示意图,如图所示,在未生成视频封面的浏览器界面上可以看到预先设置的视频封面,如A1、A2和A3所指示的视频封面均为一个灰度图案,上面并没有显示与视频内容有关的内容,但可以理解的是,每个视频封面上方均会显示该视频的上传时间(或拍摄时间),比如A1指示的视频是2018年3月14日上传的,A2指示的视频是2017年10月26日上传的,A3指示的视频是2017年10月16日上传的,通过上传时间可以辨别视频内容。此外,图2所示浏览器界面下方还有一个“上传视频”的模块,点击该模块之后可以上传新的视频。
然而,只通过上传时间来辨别视频内容是不可靠的,其辨识度较低,如果能够将统一的灰度图案替换为个性化的视频封面,那就具有较好的识别度。请参阅图3,图3为本发明实施例中已生成视频封面的一个界面示意图,如图所示,B1、B2和B3所指示的视频封面均为与视频内容相关的图片,该图片是属于视频内容中的某帧图像。此外,在每个视频封面上方均会显示该视频的上传时间(或拍摄时间),比如B1指示的视频是2018年3月22日上传的,B2指示的视频是2018年3月1日上传的,B3指示的视频是2018年3月19日上传的,通过上传时间可以辨别视频内容。
应理解,本发明具体可以应用于开发周期较短的子应用程序,比如小程序,小程序是指一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或者搜一下就可以打开应用。小程序开发并不能提供视频封面图生成的组件或接口,当用户上传视频后,如果脱离了视频播放组件,并不能在用户浏览器界面列表中呈现视频源(即如图2所示)。小程序开发周期较短,通常需要快速上线。采用本发明所提供的视频封面生成方法之后,会下发视频封面地址给到客户端进行图片组件的呈现(即如图3所示)。
可以理解的是,本发明除了可以用于小程序,还可以应用于订阅号、服务号、企业号、微博、朋友圈、视频网站以及其他门户网站等,此处不作具体限定。
下面将从服务器的角度,对本发明中视频封面生成的方法进行介绍,请参阅图4,本发明实施例中视频封面生成的方法一个实施例包括:
101、从待处理视频中获取第一图像帧;
本实施例中,服务器首先获取待处理视频,其中,待处理视频通常是用户通过客户端上传至服务器的视频,也可以是服务器从存储区域中选择的某个视频。接下来,服务器需要从待处理视频中截取第一图像帧,这里的第一图像帧可以是待处理视频中的第一帧图像,也可以是待处理视频中的任意一帧图像,但是选择待处理视频中靠前的图像作为第一帧图像还具有如下优势:经过长期观察可以了解,靠前的图像往往更贴近待处理视频所要表达的内容,因此更具有代表性。
服务器可以使用Node.js开发服务,Node.js是一个爪哇脚本(Javascript)运行环境,Node.js可以在不新增额外线程的情况下,对任务进行并发处理。基于Node.js开发的服务能够接收待处理视频以及提供上传接口等,该服务集成了开源视频处理程序快速前向动态图像专家组(fast forward moving picture experts group,FFMPEG),通过FFMPEG对待处理视频进行视频帧图片截取,该图片截取功能可选择待处理视频中的任意帧。由于上面论述了尽量靠近视频播放开始位置截取封面,所以可以从第一帧开始截取。
其中,FFMPEG是一套可以用来记录以及转换数字视音频,并能将其转化为流的开源计算机程序,FFMPEG在Linux平台下开发,但它同样也可以在其它操作系统环境中编译运行。多媒体视频处理工具FFMPEG有非常强大的功能,包括视频采集功能、视频格式转换、视频抓图以及给视频加水印等。
102、获取第一图像帧的第一像素信息,其中,第一像素信息包括第一图像帧的像素数量、像素饱和度以及像素亮度中的至少一项;
本实施例中,服务器通过分析第一图像帧可以获取该第一图像帧的第一像素信息,这里的第一像素信息包含第一图像帧的像素数量、像素饱和度以及像素亮度中的至少一项。
103、若第一像素信息满足视频封面生成条件,则根据第一图像帧生成视频封面,其中,视频封面用于在客户端进行展示。
本实施例中,服务器根据第一像素信息判断第一图像帧是否满足视频封面生成条件,如果满足,那么服务器就根据第一图像帧生成视频封面,然后服务器可以向客户端发送视频封面的地址,客户端接收该地址,再通过地址拉取视频封面,从而在客户端的浏览器界面上进行视频封面的展示。
本发明实施例中,提供了一种视频封面生成的方法,首先服务器从待处理视频中获取第一图像帧,然后服务器获取第一图像帧的第一像素信息,其中,第一像素信息包括第一图像帧的像素数量、像素饱和度以及像素亮度中的至少一项,如果第一像素信息满足视频封面生成条件,那么服务器根据第一图像帧生成视频封面,其中,视频封面用于在客户端进行展示。通过上述方式,无需耗费较多的时间和精力即可生成视频封面,从而提升视频封面生成的效率,并且降低了视频封面生成的成本。
可选地,在上述图4对应的实施例的基础上,本发明实施例提供的视频封面生成的方法第一个可选实施例中,获取第一图像帧的第一像素信息,可以包括:
从第一图像帧中确定N条取样线段,其中,取样线段的一个端点与第一图像帧的一个顶点重合,N为大于或等于1的整数;
将N条取样线段所经过的像素点确定为目标像素点;
根据目标像素点获取第一像素信息。
本实施例中,将通过几个例子介绍服务器是如何获取第一像素信息的,当然,在实际应用中,下面介绍的像素信息获取方式不仅限于第一图像帧,还可以是待处理视频中的任意其他图像帧。
请参阅图5(a),图5(a)为本发明实施例中取样线段的一个示意图,如图所示,假设第一图像帧为竖屏图像,N为1时,那么可以从第一图像帧中确定一条取样线段,如C1所指示的线段即为取样线段的一个示意,取样线段可以为第一图像帧的对角线。服务器将这条取样线段所经过的像素点确定为目标像素点,假设有300个目标像素点,那么服务器通过分析这300个目标像素点就可以得到第一像素信息。
请参阅图5(b),图5(b)为本发明实施例中取样线段的另一个示意图,如图所示,假设第一图像帧为横屏图像,N为1时,那么可以从第一图像帧中确定一条取样线段,如D1所指示的线段即为取样线段的一个示意,取样线段可以为第一图像帧的对角线。服务器将这条取样线段所经过的像素点确定为目标像素点,假设有300个目标像素点,那么服务器通过分析这300个目标像素点就可以得到第一像素信息。
请参阅图5(c),图5(c)为本发明实施例中取样线段的另一个示意图,如图所示,假设第一图像帧为竖屏图像,N为2时,那么可以从第一图像帧中确定两条取样线段,如E1和E2所指示的线段即为取样线段的一个示意,取样线段的一个端点与第一图像帧的顶点重合,且取样线段与第一图像帧的边线呈45度夹角,这样设计的好处是,取样线段上各个像素点的坐标是整数,不会出现浮点,从而便于统计和计算。服务器将这两条取样线段所经过的像素点确定为目标像素点,假设一个有300个目标像素点,那么服务器通过分析这300个目标像素点就可以得到第一像素信息。
请参阅图5(d),图5(d)为本发明实施例中取样线段的另一个示意图,如图所示,假设第一图像帧为横屏图像,N为2时,那么可以从第一图像帧中确定两条取样线段,如F1和F2所指示的线段即为取样线段的一个示意,取样线段的一个端点与第一图像帧的顶点重合,且取样线段与第一图像帧的边线呈45度夹角,这样设计的优势此处不做赘述。服务器将这两条取样线段所经过的像素点确定为目标像素点,假设一个有300个目标像素点,那么服务器通过分析这300个目标像素点就可以得到第一像素信息。
请参阅图5(e),图5(e)为本发明实施例中取样线段的另一个示意图,如图所示,假设第一图像帧为竖屏图像,N为2时,那么可以从第一图像帧中确定两条取样线段,如G1和G2所指示的线段即为取样线段的一个示意,取样线段的一个端点与第一图像帧的顶点重合,且取样线段与第一图像帧的边线呈45度夹角,与图5(c)和图5(d)不同的是,两条取样线段之间具有交点,这样做的优势在于,取样的跨度更大,同样也能够尽可能避免出现单色的情况。类似地,服务器将这两条取样线段所经过的像素点确定为目标像素点,假设一个有300个目标像素点,那么服务器通过分析这300个目标像素点就可以得到第一像素信息。
请参阅图5(f),图5(f)为本发明实施例中取样线段的另一个示意图,如图所示,假设第一图像帧为横屏图像,N为2时,那么可以从第一图像帧中确定两条取样线段,如H1和H2所指示的线段即为取样线段的一个示意,取样线段的一个端点与第一图像帧的顶点重合,且取样线段与第一图像帧的边线呈45度夹角,与图5(c)和图5(d)不同的是,两条取样线段之间具有交点,这样做的优势此处不做赘述。类似地,服务器将这两条取样线段所经过的像素点确定为目标像素点,假设一个有300个目标像素点,那么服务器通过分析这300个目标像素点就可以得到第一像素信息。
可以理解的是,上述几个例子并不能涵盖所有可能的实现方式,仅为一个可能的实现方式,实际应用中,还可以对此进行变形,从而保证方案的灵活性。
其次,本发明实施例中,服务器获取第一图像帧的第一像素信息的过程具体可以是,从第一图像帧中确定至少一条取样线段,然后将至少一条取样线段所经过的像素点确定为目标像素点,最后根据目标像素点获取第一像素信息。通过上述方式,采用具有一定斜率的取样线段来获取目标像素点,能够横跨整个或部分的图像帧,从而可以更好地反映出图像帧的特征,而无斜率的取样线段容易导致目标像素点出现单色,因此,本发明能够提升取样的可靠性和鲁棒性。
可选地,在上述图4对应的实施例的基础上,本发明实施例提供的视频封面生成的方法第二个可选实施例中,第一像素信息包括第一图像帧的像素数量;
根据第一图像帧生成视频封面之前,还可以包括:
根据第一像素信息获取第一图像帧的第一像素个数以及第二像素个数,其中,第一像素个数为像素总个数,第二像素个数是第一像素个数去重后得到的像素个数;
若第二像素个数与第一像素个数之间的第一比值达到预设数量比值,则确定第一像素信息满足视频封面生成条件。
本实施例中,将介绍如何根据像素数量确定视频帧是否满足视频封面生成条件。为了便于介绍,下面将以第一图像帧为例进行介绍,然而这并不应理解为对本发明的限定。首先,服务器获取取样线段经过的目标像素点,分析这些目标像素点从而得到第一像素信息。若从第一像素信息中得到第一像素个数,则对第一像素个数中重复的个数进行剔除,从而得到第二像素个数。即第一像素个数为像素总个数,第二像素个数是第一像素个数去重后得到的像素个数,假设第一像素个数为300,第二像素个数为255,那么服务器可以计算出第二像素个数与第一像素个数之间的第一比值,即255/300=0.85,然后服务器判断0.85是否达到预设数量比值,假设预设数量比值为0.8,那么0.85大于0.8,即达到预设数量比值,因此,服务器就将该第一图像帧作为视频封面。
像素是指由图像的小方格,这些小方块都有一个明确的位置和被分配的色彩数值,而这些一小方格的颜色和位置就决定该图像所呈现出来的样子。可以将像素视为整个图像中不可分割的单位或者是元素,不可分割的意思是它不能够再切割成更小单位抑或是元素,它是以一个单一颜色的小格存在。每一个点阵图像包含了一定量的像素,这些像素决定图像在屏幕上所呈现的大小。
其次,本发明实施例中,介绍了一种满足视频封面生成条件的方式,可以利用像素个数的比值是否达到预设数量比值作为参考依据,确定第一图像帧是否能够作为视频封面。通过上述方式,利用像素个数的第一比值能够反映出第一图像帧的画面情况,避免出现提取像素个数不足的情况,从而保证视频封面的完整性。
可选地,在上述图4对应的实施例的基础上,本发明实施例提供的视频封面生成的方法第三个可选实施例中,第一像素信息包括第一图像帧的像素饱和度;
根据第一图像帧生成视频封面之前,还可以包括:
根据第一像素信息获取第一图像帧的第一像素个数以及第三像素个数,其中,第一像素个数为像素总个数,第三像素个数是第一像素个数中饱和度达到预设饱和门限的像素个数;
若第三像素个数与第一像素个数之间的第二比值达到预设饱和度比值,则确定第一像素信息满足视频封面生成条件。
本实施例中,将介绍如何根据像素饱和度确定视频帧是否满足视频封面生成条件。为了便于介绍,下面将以第一图像帧为例进行介绍,然而这并不应理解为对本发明的限定。首先,服务器获取取样线段经过的目标像素点,分析这些目标像素点从而得到第一像素信息。若从第一像素信息中得到第一像素个数,假设第一像素个数为300,然后从第一像素中选择饱和度达到预设饱和门限的像素,比如预设饱和门限为50%,饱和度大于或等于50%的像素即为第三像素,假设第三像素个数为240,那么服务器可以计算出第三像素个数与第一像素个数之间的第二比值,即240/300=0.8,然后服务器判断0.8是否达到预设饱和度比值,假设预设饱和度比值为0.5,那么0.8大于0.5,即达到预设饱和度比值,因此,服务器就将该第一图像帧作为视频封面。
饱和度可定义为彩度除以明度,与彩度同样表征彩色偏离同亮度灰色的程度。饱和度是指色彩的鲜艳程度,也称色彩的纯度。饱和度取决于该色中含色成分和消色成分(灰色)的比例。含色成分越大,饱和度越大;消色成分越大,饱和度越小。纯的颜色都是高度饱和的,如鲜红以及鲜绿。混杂上白色、灰色或其他色调的颜色,是不饱和的颜色,如绛紫、粉红以及黄褐等。完全不饱和的颜色根本没有色调,如黑白之间的各种灰色。
其次,本发明实施例中,介绍了一种满足视频封面生成条件的方式,可以利用像素饱和度的比值是否达到预设饱和度比值作为参考依据,确定第一图像帧是否能够作为视频封面。利用像素饱和度的第二比值能够反映出第一图像帧的色彩情况,较高的饱和度能够反映出更具有色彩感的图像,因此,采用第二比值大于预设饱和度比值的第一图像帧作为视频封面,能够保证视频封面的色彩多样性,并且提升视频封面的观赏性。
可选地,在上述图4对应的实施例的基础上,本发明实施例提供的视频封面生成的方法第四个可选实施例中,第一像素信息包括第一图像帧的像素亮度;
根据第一图像帧生成视频封面之前,还可以包括:
根据第一像素信息获取第一图像帧的第一像素个数以及第四像素个数,其中,第一像素个数为像素总个数,第四像素个数是第一像素个数中亮度值达到预设亮度门限的像素个数;
若第四像素个数与第一像素个数之间的第三比值达到预设亮度比值,则确定第一像素信息满足视频封面生成条件。
本实施例中,介绍如何根据像素饱和度确定视频帧是否满足视频封面生成条件。为了便于介绍,下面将以第一图像帧为例进行介绍,然而这并不应理解为对本发明的限定。首先,服务器获取取样线段经过的目标像素点,分析这些目标像素点从而得到第一像素信息。若从第一像素信息中得到第一像素个数,假设第一像素个数为300,然后从第一像素中选择亮度值达到预设亮度门限的像素,比如预设亮度门限为50%,亮度值大于或等于50%的像素即为第四像素,假设第四像素个数为210,那么服务器可以计算出第四像素个数与第一像素个数之间的第三比值,即210/300=0.7,然后服务器判断0.7是否达到预设亮度门限,假设预设亮度门限为0.6,那么0.7大于0.6,即达到预设亮度比值,因此,服务器就将该第一图像帧作为视频封面。
亮度是指发光体(反光体)表面发光(反光)强弱的物理量。人眼从一个方向观察光源,在这个方向上的光强与人眼所见到的光源面积之比,定义为该光源单位的亮度,即单位投影面积上的发光强度。亮度的单位是坎德拉/平方米(cd/m2)。亮度也称明度,表示色彩的明暗程度。人眼所感受到的亮度是色彩反射或透射的光亮所决定的。
其次,本发明实施例中,介绍了一种满足视频封面生成条件的方式,可以利用亮度值的比值是否达到预设饱和度比值作为参考依据,确定第一图像帧是否能够作为视频封面。利用像素饱和度的第三比值能够反映出第一图像帧的亮度情况,较高的亮度能够反映出能见度更好的图像,因此,采用第三比值大于预设亮度比值的第一图像帧作为视频封面,能够保证视频封面的能见度,并且提升视频封面生成的可行性。
可选地,在上述图4对应的实施例的基础上,本发明实施例提供的视频封面生成的方法第五个可选实施例中,第一像素信息包括第一图像帧的像素数量、像素饱和度以及像素亮度;
根据第一图像帧生成视频封面之前,还可以包括:
根据第一像素信息获取第一图像帧的第一像素个数以及第二像素个数,其中,第一像素个数为像素总个数,第二像素个数是第一像素个数去重后得到的像素个数;
若第二像素个数与第一像素个数之间的第一比值达到预设数量比值,则根据第一像素信息获取第一图像帧的第三像素个数,其中,第三像素个数是第一像素个数中饱和度达到预设饱和门限的像素个数;
若第三像素个数与第一像素个数之间的第二比值达到预设饱和度比值,则根据第一像素信息获取第四像素个数,其中,第四像素个数是第一像素个数中亮度值达到预设亮度门限的像素个数;
若第四像素个数与第一像素个数之间的第三比值达到预设亮度比值,则确定第一像素信息满足视频封面生成条件。
本实施例中,介绍如何根据像素饱和度确定视频帧是否满足视频封面生成条件。为了便于介绍,下面将以第一图像帧为例进行介绍,然而这并不应理解为对本发明的限定。首先,服务器获取取样线段经过的目标像素点,分析这些目标像素点从而得到第一像素信息。若从第一像素信息中得到第一像素个数,则对第一像素个数中重复的个数进行剔除,从而得到第二像素个数。即第一像素个数为像素总个数,第二像素个数是第一像素个数去重后得到的像素个数,假设第一像素个数为300,第二像素个数为255,那么服务器可以计算出第二像素个数与第一像素个数之间的第一比值,即255/300=0.85,然后服务器判断0.85是否达到预设数量比值,假设预设数量比值为0.8,那么0.85大于0.8,即达到预设数量比值。
接下来,服务器从第一像素中选择饱和度达到预设饱和门限的像素,比如预设饱和门限为50%,饱和度大于或等于50%的像素即为第三像素,假设第三像素个数为240,那么服务器可以计算出第三像素个数与第一像素个数之间的第二比值,即240/300=0.8,然后服务器判断0.8是否达到预设饱和度比值,假设预设饱和度比值为0.5,那么0.8大于0.5,即达到预设饱和度比值。
最后,服务器从第一像素中选择亮度值达到预设亮度门限的像素,比如预设亮度门限为50%,亮度值大于或等于50%的像素即为第四像素,假设第四像素个数为210,那么服务器可以计算出第四像素个数与第一像素个数之间的第三比值,即210/300=0.7,然后服务器判断0.7是否达到预设亮度门限,假设预设亮度门限为0.6,那么0.7大于0.6,即达到预设亮度比值,因此,服务器就将该第一图像帧作为视频封面。
考虑到运算效率和精确度保存平衡,我们并没有逐个的分析图像帧中所有的像素,而是抽样截取图像帧的对角线部分,获取这些点的像素信息,分析像素与预设指标是否相符,达标则将图片文件保存至文件存储服务,并输出图片可访问的对应地址。不达标则重新调用FFMEPG对视频进行截图,直到取得像素质量达标图像帧,反复N次还未取到合适的视频封面,则从这N张图像帧中进行数据对比,取最接近指标的图像帧保存并输出地址,预设指标是结合诸多用户反馈的案例中的特征、特例等提取出来的。目前指标按权重由高到低为像素>饱和度>亮度。
如果像素、饱和度和亮度都达标就直接输出该图像帧,并将其作为视频封面。都不达标就取下一张图像帧。
其次,本发明实施例中,提供了一种判断是否满足视频封面生成条件的方式,即需要同时满足预设数量比值、预设饱和度比值以及预设亮度比值三个条件,才能认为符合视频封面生成条件。通过上述方式,能够避免出现遗漏或者特殊的封面,并且也避免了黑屏或单色封面的出现,以避免了较昏暗的视频封面出现,从而提升方案的可操作性。
可选地,在上述图4或图4对应的第一至第五个实施例中任一项的基础上,本发明实施例提供的视频封面生成的方法第六个可选实施例中,获取第一图像帧的第一像素信息之后,还可以包括:
若第一像素信息不满足视频封面生成条件,则从待处理视频中获取第二图像帧;
获取第二图像帧的第二像素信息,其中,第二像素信息包括第二图像帧的像素数量、像素饱和度以及像素亮度中的至少一项;
若第二像素信息满足视频封面生成条件,则根据第二图像帧生成视频封面。
本实施例中,如果第一图像帧中的第一像素信息不满足视频封面生成条件,那么可以继续往后获取当前进度的+5%的图像帧,即第二图像帧,然后再获取第二图像帧中的第二像素信息,类似地,第二像素信息也包括第二图像帧的像素数量、像素饱和度以及像素亮度中的至少一项。如果第二图像帧的第二像素信息也不满足视频封面生成条件,则可以继续往后获取当前进度的+5%的图像帧,直到图像帧提取次数达到预设提取次数为止。反之,如果第二像素信息满足视频封面生成条件,则根据第二图像帧生成视频封面。
可以理解的是,上述实施例仅以两个图像帧为例进行介绍,在实际应用中,预设提取次数可以根据情况设定,如果设定为10,则表示服务器分析的10个图像帧都不满足视频封面生成条件情况下,会在这10个已经分析过的图像帧中选择一帧作为视频封面。如果设定为5,则表示服务器分析的5个图像帧都不满足视频封面生成条件情况下,会在这5个已经分析过的图像帧中选择一帧作为视频封面。此处不做限定。
再次,本发明实施例中,在第一像素信息不满足视频封面生成条件的情况下,服务器会从待处理视频中获取第二图像帧,如果获取第二图像帧的第二像素信息满足视频封面生成条件,则服务器根据第二图像帧生成视频封面。通过上述方式,能够从待处理视频中选择多帧图像进行分析,从而找到满足条件的视频帧作为视频封面,从而提升方案的可行性。
可选地,在上述图4对应的第六个实施例的基础上,本发明实施例提供的视频封面生成的方法第七个可选实施例中,获取第二图像帧的第二像素信息之后,还可以包括:
若第二像素信息不满足视频封面生成条件,且图像帧提取次数已达到预设提取次数,则根据第一像素信息以及第二像素信息,从第一图像帧以及第二图像帧中选择目标图像帧,其中,目标图像帧为第一图像帧或第二图像帧;
根据目标图像帧生成视频封面。
本实施例中,如果第二图像帧的第二像素信息也不满足视频封面生成条件,而且这个时候图像帧提取次数已达到预设提取次数,那么服务器需要从第一图像帧和第二图像帧中选择其中一个图像帧作为目标图像帧。
假设第一像素信息中的第二像素个数与第一像素个数之间的第一比值为0.7,第二像素信息中的第二像素个数与第一像素个数之间的第一比值为0.65,那么优选第一比值为0.65的第二图像帧。假设第一比值一样,那么对第一像素信息中的饱和度进行分析,假设第一像素信息中的第三像素个数与第一像素个数之间的第二比值为0.8,第二像素信息中的第三像素个数与第一像素个数之间的第二比值为0.6,那么优选第一图像帧。假设第二比值一样,那么对第一像素信息中的亮度进行分析,假设第一像素信息中的第四像素个数与第一像素个数之间的第二比值为0.55,第二像素信息中的第四像素个数与第一像素个数之间的第二比值为0.7,那么优选第二图像帧。
进一步地,本发明实施例中,在第二像素信息也不满足视频封面生成条件时,而且图像帧提取的次数已经达到预设提取次数,那么可以通过两两对比的方式从已经分析过的图像帧中选择一张最合适的目标图像帧,将目标图像帧作为视频封面。通过上述方式,即便已分析的图像帧都不满足视频封面生成条件,也可以通过两两对比,从这些图像帧中选择一张目标图像帧作为视频封面,无需继续分析待处理视频中的其他视频帧,从而提升了视频封面生成的效率。
可选地,在上述图4对应的实施例的基础上,本发明实施例提供的视频封面生成的方法第八个可选实施例中,根据第一图像帧生成视频封面,可以包括:
将第一图像帧确定为视频封面;
或,
将目标贴图与第一图像帧确定为视频封面,其中,目标贴图位于第一图层,第一图像帧位于第二图层,第一图层位于第二图层之上。
本实施例中,将介绍两种生成视频封面的方式,这里是以第一图像帧为例进行介绍的,且前提是该第一图像帧是满足视频封面生成条件的图像帧,在实际应用中,还可以是其他满足视频封面生成条件的图像帧,此处仅为一个示意,并不应理解为对本发明的限定。
视频封面的生成方式一,直接生成;
顾名思义,直接生成视频封面也就是说,不需要对满足视频封面生成条件的第一图像帧(或其他图像帧)进行处理,直接截取该第一图像帧,然后将截取到的第一图像帧作为视频封面。
视频封面的生成方式二,间接生成;
这里涉及到至少两个图层,每一个图层都是由许多像素组成的,而图层又通过上下叠加的方式来组成整个图像。打个比喻,每一个图层就好似是一个透明的“玻璃”,而图层内容就画在这些“玻璃”上,如果“玻璃”什么都没有,这就是个完全透明的空图层,当各“玻璃”都有图像时,自上而下俯视所有图层,从而形成图像显示效果。为了便于理解,这里以两个图层为例进行介绍,在设计的时候,可以将目标贴图(比如卡通贴图、风景贴图或文字贴图等)分布于第一图层上,没有分布目标贴图的部分即为透明区域。第二图层上分布有第一图像帧,将第一图层覆盖在第二图层之上合并成一个图层,所有透明区域的交叠部分都会保持透明,由此得到视频封面。
更进一步地,本发明实施例中,在生成视频封面的过程中,通常可以采用两种方式,一种是直接生成,也就是直接将满足视频封面生成条件的图像帧作为视频封面,另一种是间接生成,即将满足视频封面生成条件的图像帧和预设的一些贴图进行组合,从而生成视频封面。通过上述方式,利用图像帧直接生成视频封面可以有效地提升视频封面生成效率,而利用图像帧和贴图生成视频封面能够提升视频封面的生动性,从而达到更佳的展示效果。
为了便于理解,下面将结合图6介绍一种视频封面生成的应用场景,请参阅图6,图6为本发明应用场景中生成视频封面的一个流程示意图,如图所示,具体地:
步骤S1中,服务器先获取待处理视频的视频文件,通常情况下,可以由客户端向服务器上传该视频文件,也可以由服务器从后台选择一个视频文件;
步骤S2中,服务器可以使用FFMPEG从待处理视频的第一帧开始截取图片,当然也可以选择待处理视频中的任一帧开始截取图片;
步骤S3中,对截取的图片进行像素抽样分析,具体可以分析得到该图片的像素数量、像素饱和度以及像素亮度中的至少一项;
步骤S4中,判断像素数量、像素饱和度以及像素亮度中的至少一项是否达到预设要求,如果符合预设要求,则进入步骤S5,如果不达标,那么继续分析待处理视频中的下一帧图片;
步骤S5中,如果在步骤S4判断某图片达标,那么就会输出该图片,也就是说,能够将该图片作为视频封面;
步骤S6中,判断待处理视频中前9次获取到的图片是否达到要求,若是,则跳转至步骤S8,如果未达到要求,则进入步骤S7;
步骤S7中,如果前9次获取到的图片都未达到要求,那么使用FFMPEG继续截取后一帧图像;
步骤S8中,如果前9次获取到的图片有一张达到要求,那么服务器将会保留分析的数据;
步骤S9中,判断待处理视频中前10次获取到的图片是否达到要求,若是,则跳转至步骤S10,若第10次所截取的图片达标,则输出第10的图片;
步骤S10中,当取到第10张图像帧仍然没有达标,则从这10张图片取质量最高的图像帧输出,对于已经保留分析数据的图片而言,直接输出即可。
采用本方案从视频文件到达服务器至分析结果输出,约耗时均值为20毫秒,相比较现有的方案均值耗时200毫秒以上,效率提升10倍。
下面对本发明中的服务器进行详细描述,请参阅图7,图7为本发明实施例中服务器一个实施例示意图,服务器20包括:
获取模块201,用于从待处理视频中获取第一图像帧;
所述获取模块201,还用于获取所述第一图像帧的第一像素信息,其中,所述第一像素信息包括所述第一图像帧的像素数量、像素饱和度以及像素亮度中的至少一项;
生成模块202,用于若所述获取模块201获取的所述第一像素信息满足视频封面生成条件,则根据所述第一图像帧生成视频封面,其中,所述视频封面用于在客户端进行展示。
本实施例中,获取模块201从待处理视频中获取第一图像帧,所述获取模块201获取所述第一图像帧的第一像素信息,其中,所述第一像素信息包括所述第一图像帧的像素数量、像素饱和度以及像素亮度中的至少一项,若所述获取模块201获取的所述第一像素信息满足视频封面生成条件,则生成模块202根据所述第一图像帧生成视频封面,其中,所述视频封面用于在客户端进行展示。
本发明实施例中,提供了一种服务器,首先服务器从待处理视频中获取第一图像帧,然后服务器获取第一图像帧的第一像素信息,其中,第一像素信息包括第一图像帧的像素数量、像素饱和度以及像素亮度中的至少一项,如果第一像素信息满足视频封面生成条件,那么服务器根据第一图像帧生成视频封面,其中,视频封面用于在客户端进行展示。通过上述方式,无需耗费较多的时间和精力即可生成视频封面,从而提升视频封面生成的效率,并且降低了视频封面生成的成本。
可选地,在上述图7所对应的实施例的基础上,本发明实施例提供的服务器20的另一实施例中,
所述获取模块201,具体用于从所述第一图像帧中确定N条取样线段,其中,所述取样线段的一个端点与所述第一图像帧的一个顶点重合,所述N为大于或等于1的整数;
将所述N条取样线段所经过的像素点确定为目标像素点;
根据所述目标像素点获取所述第一像素信息。
其次,本发明实施例中,服务器获取第一图像帧的第一像素信息的过程具体可以是,从第一图像帧中确定至少一条取样线段,然后将至少一条取样线段所经过的像素点确定为目标像素点,最后根据目标像素点获取第一像素信息。通过上述方式,采用具有一定斜率的取样线段来获取目标像素点,能够横跨整个或部分的图像帧,从而可以更好地反映出图像帧的特征,而无斜率的取样线段容易导致目标像素点出现单色,因此,本发明能够提升取样的可靠性和鲁棒性。
可选地,在上述图7所对应的实施例的基础上,请参阅图8,本发明实施例提供的服务器20的另一实施例中,所述第一像素信息包括所述第一图像帧的像素数量,所述服务器20还包括确定模块203;
所述获取模块201,还用于所述生成模块202根据所述第一图像帧生成视频封面之前,根据所述第一像素信息获取所述第一图像帧的第一像素个数以及第二像素个数,其中,所述第一像素个数为像素总个数,所述第二像素个数是所述第一像素个数去重后得到的像素个数;
所述确定模块203,用于若所述获取模块201获取的所述第二像素个数与所述第一像素个数之间的第一比值达到预设数量比值,则确定所述第一像素信息满足所述视频封面生成条件。
其次,本发明实施例中,介绍了一种满足视频封面生成条件的方式,可以利用像素个数的比值是否达到预设数量比值作为参考依据,确定第一图像帧是否能够作为视频封面。通过上述方式,利用像素个数的第一比值能够反映出第一图像帧的画面情况,避免出现提取像素个数不足的情况,从而保证视频封面的完整性。
可选地,在上述图7所对应的实施例的基础上,请参阅图8,本发明实施例提供的服务器20的另一实施例中,所述第一像素信息包括所述第一图像帧的像素饱和度,所述服务器20还包括确定模块203;
所述获取模块201,还用于所述生成模块202根据所述第一图像帧生成视频封面之前,根据所述第一像素信息获取所述第一图像帧的第一像素个数以及第三像素个数,其中,所述第一像素个数为像素总个数,所述第三像素个数是所述第一像素个数中饱和度达到预设饱和门限的像素个数;
所述确定模块203,用于若所述获取模块201获取的所述第三像素个数与所述第一像素个数之间的第二比值达到预设饱和度比值,则确定所述第一像素信息满足所述视频封面生成条件。
其次,本发明实施例中,介绍了一种满足视频封面生成条件的方式,可以利用像素饱和度的比值是否达到预设饱和度比值作为参考依据,确定第一图像帧是否能够作为视频封面。利用像素饱和度的第二比值能够反映出第一图像帧的色彩情况,较高的饱和度能够反映出更具有色彩感的图像,因此,采用第二比值大于预设饱和度比值的第一图像帧作为视频封面,能够保证视频封面的色彩多样性,并且提升视频封面的观赏性。
可选地,在上述图7所对应的实施例的基础上,请参阅图8,本发明实施例提供的服务器20的另一实施例中,所述第一像素信息包括所述第一图像帧的像素亮度,所述服务器20还包括确定模块203;
所述获取模块201,还用于所述生成模块202根据所述第一图像帧生成视频封面之前,根据所述第一像素信息获取所述第一图像帧的第一像素个数以及第四像素个数,其中,所述第一像素个数为像素总个数,所述第四像素个数是所述第一像素个数中亮度值达到预设亮度门限的像素个数;
所述确定模块203,用于若所述获取模块201获取的所述第四像素个数与所述第一像素个数之间的第三比值达到预设亮度比值,则确定所述第一像素信息满足所述视频封面生成条件。
其次,本发明实施例中,介绍了一种满足视频封面生成条件的方式,可以利用亮度值的比值是否达到预设饱和度比值作为参考依据,确定第一图像帧是否能够作为视频封面。利用像素饱和度的第三比值能够反映出第一图像帧的亮度情况,较高的亮度能够反映出能见度更好的图像,因此,采用第三比值大于预设亮度比值的第一图像帧作为视频封面,能够保证视频封面的能见度,并且提升视频封面生成的可行性。
可选地,在上述图7所对应的实施例的基础上,请参阅图8,本发明实施例提供的服务器20的另一实施例中,所述第一像素信息包括所述第一图像帧的像素数量、像素饱和度以及像素亮度,所述服务器20还包括确定模块203;
所述获取模块201,还用于所述生成模块202根据所述第一图像帧生成视频封面之前,根据所述第一像素信息获取所述第一图像帧的第一像素个数以及第二像素个数,其中,所述第一像素个数为像素总个数,所述第二像素个数是所述第一像素个数去重后得到的像素个数;
所述获取模块201,还用于若所述第二像素个数与所述第一像素个数之间的第一比值达到预设数量比值,则根据所述第一像素信息获取所述第一图像帧的第三像素个数,其中,所述第三像素个数是所述第一像素个数中饱和度达到预设饱和门限的像素个数;
所述获取模块201,还用于若所述第三像素个数与所述第一像素个数之间的第二比值达到预设饱和度比值,则根据所述第一像素信息获取第四像素个数,其中,所述第四像素个数是所述第一像素个数中亮度值达到预设亮度门限的像素个数;
所述确定模块203,用于若所述获取模块201获取的所述第四像素个数与所述第一像素个数之间的第三比值达到预设亮度比值,则确定所述第一像素信息满足所述视频封面生成条件。
其次,本发明实施例中,提供了一种判断是否满足视频封面生成条件的方式,即需要同时满足预设数量比值、预设饱和度比值以及预设亮度比值三个条件,才能认为符合视频封面生成条件。通过上述方式,能够避免出现遗漏或者特殊的封面,并且也避免了黑屏或单色封面的出现,以避免了较昏暗的视频封面出现,从而提升方案的可操作性。
可选地,在上述图7或图8所对应的实施例的基础上,本发明实施例提供的服务器20的另一实施例中,
所述获取模块201,还用于获取所述第一图像帧的第一像素信息之后,若所述第一像素信息不满足所述视频封面生成条件,则从所述待处理视频中获取第二图像帧;
所述获取模块201,还用于获取所述第二图像帧的第二像素信息,其中,所述第二像素信息包括所述第二图像帧的像素数量、像素饱和度以及像素亮度中的至少一项;
所述生成模块202,还用于若所述获取模块201获取的所述第二像素信息满足所述视频封面生成条件,则根据所述第二图像帧生成视频封面。
再次,本发明实施例中,在第一像素信息不满足视频封面生成条件的情况下,服务器会从待处理视频中获取第二图像帧,如果获取第二图像帧的第二像素信息满足视频封面生成条件,则服务器根据第二图像帧生成视频封面。通过上述方式,能够从待处理视频中选择多帧图像进行分析,从而找到满足条件的视频帧作为视频封面,从而提升方案的可行性。
可选地,在上述图7或图8所对应的实施例的基础上,请参阅图9,本发明实施例提供的服务器20的另一实施例中,所述服务器20还包括选择模块204;
所述选择模块204,用于所述获取模块201获取所述第二图像帧的第二像素信息之后,若所述第二像素信息不满足所述视频封面生成条件,且图像帧提取次数已达到预设提取次数,则根据所述第一像素信息以及所述第二像素信息,从所述第一图像帧以及所述第二图像帧中选择目标图像帧,其中,所述目标图像帧为所述第一图像帧或所述第二图像帧;
所述生成模块202,还用于根据所述选择模块204选择的所述目标图像帧生成视频封面。
进一步地,本发明实施例中,在第二像素信息也不满足视频封面生成条件时,而且图像帧提取的次数已经达到预设提取次数,那么可以通过两两对比的方式从已经分析过的图像帧中选择一张最合适的目标图像帧,将目标图像帧作为视频封面。通过上述方式,即便已分析的图像帧都不满足视频封面生成条件,也可以通过两两对比,从这些图像帧中选择一张目标图像帧作为视频封面,无需继续分析待处理视频中的其他视频帧,从而提升了视频封面生成的效率。
可选地,在上述图7所对应的实施例的基础上,本发明实施例提供的服务器20的另一实施例中,
所述生成模块202,具体用于将所述第一图像帧确定为所述视频封面;
或,
将目标贴图与所述第一图像帧确定为所述视频封面,其中,所述目标贴图位于第一图层,所述第一图像帧位于第二图层,所述第一图层位于所述第二图层之上。
更进一步地,本发明实施例中,在生成视频封面的过程中,通常可以采用两种方式,一种是直接生成,也就是直接将满足视频封面生成条件的图像帧作为视频封面,另一种是间接生成,即将满足视频封面生成条件的图像帧和预设的一些贴图进行组合,从而生成视频封面。通过上述方式,利用图像帧直接生成视频封面可以有效地提升视频封面生成效率,而利用图像帧和贴图生成视频封面能够提升视频封面的生动性,从而达到更佳的展示效果。
图10是本发明实施例提供的一种服务器结构示意图,该服务器300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processingunits,CPU)322(例如,一个或一个以上处理器)和存储器332,一个或一个以上存储应用程序342或数据344的存储介质330(例如一个或一个以上海量存储设备)。其中,存储器332和存储介质330可以是短暂存储或持久存储。存储在存储介质330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储介质330通信,在服务器300上执行存储介质330中的一系列指令操作。
服务器300还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作系统341,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由服务器所执行的步骤可以基于该图10所示的服务器结构。
本实施例中,CPU 322用于执行如下步骤:
从待处理视频中获取第一图像帧;
获取所述第一图像帧的第一像素信息,其中,所述第一像素信息包括所述第一图像帧的像素数量、像素饱和度以及像素亮度中的至少一项;
若所述第一像素信息满足视频封面生成条件,则根据所述第一图像帧生成视频封面,其中,所述视频封面用于在客户端进行展示。
可选地,CPU 322具体用于执行如下步骤:
从所述第一图像帧中确定N条取样线段,其中,所述取样线段的一个端点与所述第一图像帧的一个顶点重合,所述N为大于或等于1的整数;
将所述N条取样线段所经过的像素点确定为目标像素点;
根据所述目标像素点获取所述第一像素信息。
可选地,CPU 322还用于执行如下步骤:
根据所述第一像素信息获取所述第一图像帧的第一像素个数以及第二像素个数,其中,所述第一像素个数为像素总个数,所述第二像素个数是所述第一像素个数去重后得到的像素个数;
若所述第二像素个数与所述第一像素个数之间的第一比值达到预设数量比值,则确定所述第一像素信息满足所述视频封面生成条件。
可选地,CPU 322还用于执行如下步骤:
根据所述第一像素信息获取所述第一图像帧的第一像素个数以及第三像素个数,其中,所述第一像素个数为像素总个数,所述第三像素个数是所述第一像素个数中饱和度达到预设饱和门限的像素个数;
若所述第三像素个数与所述第一像素个数之间的第二比值达到预设饱和度比值,则确定所述第一像素信息满足所述视频封面生成条件。
可选地,CPU 322还用于执行如下步骤:
根据所述第一像素信息获取所述第一图像帧的第一像素个数以及第四像素个数,其中,所述第一像素个数为像素总个数,所述第四像素个数是所述第一像素个数中亮度值达到预设亮度门限的像素个数;
若所述第四像素个数与所述第一像素个数之间的第三比值达到预设亮度比值,则确定所述第一像素信息满足所述视频封面生成条件。
可选地,CPU 322还用于执行如下步骤:
根据所述第一像素信息获取所述第一图像帧的第一像素个数以及第二像素个数,其中,所述第一像素个数为像素总个数,所述第二像素个数是所述第一像素个数去重后得到的像素个数;
若所述第二像素个数与所述第一像素个数之间的第一比值达到预设数量比值,则根据所述第一像素信息获取所述第一图像帧的第三像素个数,其中,所述第三像素个数是所述第一像素个数中饱和度达到预设饱和门限的像素个数;
若所述第三像素个数与所述第一像素个数之间的第二比值达到预设饱和度比值,则根据所述第一像素信息获取第四像素个数,其中,所述第四像素个数是所述第一像素个数中亮度值达到预设亮度门限的像素个数;
若所述第四像素个数与所述第一像素个数之间的第三比值达到预设亮度比值,则确定所述第一像素信息满足所述视频封面生成条件。
可选地,CPU 322还用于执行如下步骤:
若所述第一像素信息不满足所述视频封面生成条件,则从所述待处理视频中获取第二图像帧;
获取所述第二图像帧的第二像素信息,其中,所述第二像素信息包括所述第二图像帧的像素数量、像素饱和度以及像素亮度中的至少一项;
若所述第二像素信息满足所述视频封面生成条件,则根据所述第二图像帧生成视频封面。
可选地,CPU 322还用于执行如下步骤:
若所述第二像素信息不满足所述视频封面生成条件,且图像帧提取次数已达到预设提取次数,则根据所述第一像素信息以及所述第二像素信息,从所述第一图像帧以及所述第二图像帧中选择目标图像帧,其中,所述目标图像帧为所述第一图像帧或所述第二图像帧;
根据所述目标图像帧生成视频封面。
可选地,CPU 322具体用于执行如下步骤:
将所述第一图像帧确定为所述视频封面;
或,
将目标贴图与所述第一图像帧确定为所述视频封面,其中,所述目标贴图位于第一图层,所述第一图像帧位于第二图层,所述第一图层位于所述第二图层之上。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (11)

1.一种视频封面生成的方法,其特征在于,包括:
通过快速前向动态图像专家组从待处理视频中获取第一图像帧;
从所述第一图像帧中确定N条具有斜率的取样线段,其中,所述取样线段的一个端点与所述第一图像帧的一个顶点重合,所述N为大于或等于1的整数;其中,当N等于1时,所述取样线段为所述第一图像帧的对角线;当N大于1时,所述取样线段与所述第一图像帧的边线呈45度夹角;
将所述N条取样线段所经过的像素点确定为目标像素点;
根据所述目标像素点获取第一像素信息,其中,所述第一像素信息包括所述第一图像帧的像素数量、像素饱和度以及像素亮度,所述像素数量、像素饱和度以及像素亮度按权重高到低为:像素数量>像素饱和度>像素亮度;
若所述第一像素信息满足视频封面生成条件,则根据所述第一图像帧生成视频封面,其中,所述视频封面用于在客户端进行展示;
其中,所述根据所述第一图像帧生成视频封面,包括:
将目标贴图与所述第一图像帧确定为所述视频封面,其中,所述目标贴图位于第一图层,没有分布目标贴图的部分为透明区域,所有透明区域的交叠部分保持透明,所述第一图像帧位于第二图层,所述第一图层位于所述第二图层之上。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一图像帧生成视频封面之前,所述方法还包括:
根据所述第一像素信息获取所述第一图像帧的第一像素个数以及第二像素个数,其中,所述第一像素个数为像素总个数,所述第二像素个数是所述第一像素个数去重后得到的像素个数;
若所述第二像素个数与所述第一像素个数之间的第一比值达到预设数量比值,则确定所述第一像素信息满足所述视频封面生成条件。
3.根据权利要求1所述的方法,其特征在于,所述根据所述第一图像帧生成视频封面之前,所述方法还包括:
根据所述第一像素信息获取所述第一图像帧的第一像素个数以及第三像素个数,其中,所述第一像素个数为像素总个数,所述第三像素个数是所述第一像素个数中饱和度达到预设饱和门限的像素个数;
若所述第三像素个数与所述第一像素个数之间的第二比值达到预设饱和度比值,则确定所述第一像素信息满足所述视频封面生成条件。
4.根据权利要求1所述的方法,其特征在于,所述根据所述第一图像帧生成视频封面之前,所述方法还包括:
根据所述第一像素信息获取所述第一图像帧的第一像素个数以及第四像素个数,其中,所述第一像素个数为像素总个数,所述第四像素个数是所述第一像素个数中亮度值达到预设亮度门限的像素个数;
若所述第四像素个数与所述第一像素个数之间的第三比值达到预设亮度比值,则确定所述第一像素信息满足所述视频封面生成条件。
5.根据权利要求1所述的方法,其特征在于,所述根据所述第一图像帧生成视频封面之前,所述方法还包括:
根据所述第一像素信息获取所述第一图像帧的第一像素个数以及第二像素个数,其中,所述第一像素个数为像素总个数,所述第二像素个数是所述第一像素个数去重后得到的像素个数;
若所述第二像素个数与所述第一像素个数之间的第一比值达到预设数量比值,则根据所述第一像素信息获取所述第一图像帧的第三像素个数,其中,所述第三像素个数是所述第一像素个数中饱和度达到预设饱和门限的像素个数;
若所述第三像素个数与所述第一像素个数之间的第二比值达到预设饱和度比值,则根据所述第一像素信息获取第四像素个数,其中,所述第四像素个数是所述第一像素个数中亮度值达到预设亮度门限的像素个数;
若所述第四像素个数与所述第一像素个数之间的第三比值达到预设亮度比值,则确定所述第一像素信息满足所述视频封面生成条件。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述获取所述第一图像帧的第一像素信息之后,所述方法还包括:
若所述第一像素信息不满足所述视频封面生成条件,则从所述待处理视频中获取第二图像帧;
获取所述第二图像帧的第二像素信息,其中,所述第二像素信息包括所述第二图像帧的像素数量、像素饱和度以及像素亮度中的至少一项;
若所述第二像素信息满足所述视频封面生成条件,则根据所述第二图像帧生成视频封面。
7.根据权利要求6所述的方法,其特征在于,所述获取所述第二图像帧的第二像素信息之后,所述方法还包括:
若所述第二像素信息不满足所述视频封面生成条件,且图像帧提取次数已达到预设提取次数,则根据所述第一像素信息以及所述第二像素信息,从所述第一图像帧以及所述第二图像帧中选择目标图像帧,其中,所述目标图像帧为所述第一图像帧或所述第二图像帧;
根据所述目标图像帧生成视频封面。
8.一种服务器,其特征在于,包括:
获取模块,用于通过快速前向动态图像专家组从待处理视频中获取第一图像帧;
所述获取模块,还用于从所述第一图像帧中确定N条具有斜率的取样线段,其中,所述取样线段的一个端点与所述第一图像帧的一个顶点重合,所述N为大于或等于1的整数,其中,当N等于1时,所述取样线段为所述第一图像帧的对角线,当N大于1时,所述取样线段与所述第一图像帧的边线呈45度夹角,将所述N条取样线段所经过的像素点确定为目标像素点,根据所述目标像素点获取第一像素信息,其中,所述第一像素信息包括所述第一图像帧的像素数量、像素饱和度以及像素亮度,所述像素数量、像素饱和度以及像素亮度按权重高到低为:像素数量>像素饱和度>像素亮度;
生成模块,用于若所述获取模块获取的所述第一像素信息满足视频封面生成条件,则根据所述第一图像帧生成视频封面,其中,所述视频封面用于在客户端进行展示;
其中,所述生成模块,具体用于将目标贴图与所述第一图像帧确定为所述视频封面,其中,所述目标贴图位于第一图层,没有分布目标贴图的部分为透明区域,所有透明区域的交叠部分保持透明,所述第一图像帧位于第二图层,所述第一图层位于所述第二图层之上。
9.一种服务器,其特征在于,所述服务器包括:存储器、收发器、处理器以及总线系统;
其中,所述存储器用于存储程序;
所述处理器用于执行所述存储器中的程序,包括如下步骤:
通过快速前向动态图像专家组从待处理视频中获取第一图像帧;
从所述第一图像帧中确定N条具有斜率的取样线段,其中,所述取样线段的一个端点与所述第一图像帧的一个顶点重合,所述N为大于或等于1的整数;其中,当N等于1时,所述取样线段为所述第一图像帧的对角线;当N大于1时,所述取样线段与所述第一图像帧的边线呈45度夹角;
将所述N条取样线段所经过的像素点确定为目标像素点;
根据所述目标像素点获取第一像素信息,其中,所述第一像素信息包括所述第一图像帧的像素数量、像素饱和度以及像素亮度,所述像素数量、像素饱和度以及像素亮度按权重高到低为:像素数量>像素饱和度>像素亮度;
若所述第一像素信息满足视频封面生成条件,则根据所述第一图像帧生成视频封面,其中,所述视频封面用于在客户端进行展示;
所述总线系统用于连接所述存储器以及所述处理器,以使所述存储器以及所述处理器进行通信;
其中,所述根据所述第一图像帧生成视频封面,包括:
将目标贴图与所述第一图像帧确定为所述视频封面,其中,所述目标贴图位于第一图层,没有分布目标贴图的部分为透明区域,所有透明区域的交叠部分保持透明,所述第一图像帧位于第二图层,所述第一图层位于所述第二图层之上。
10.根据权利要求9所述的服务器,其特征在于,所述处理器还用于执行如下步骤:
若所述第一像素信息不满足所述视频封面生成条件,则从所述待处理视频中获取第二图像帧;
获取所述第二图像帧的第二像素信息,其中,所述第二像素信息包括所述第二图像帧的像素数量、像素饱和度以及像素亮度中的至少一项;
若所述第二像素信息满足所述视频封面生成条件,则根据所述第二图像帧生成视频封面。
11.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1至7中任一项所述的方法。
CN201810490362.1A 2018-05-21 2018-05-21 一种视频封面生成的方法以及服务器 Active CN108600781B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810490362.1A CN108600781B (zh) 2018-05-21 2018-05-21 一种视频封面生成的方法以及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810490362.1A CN108600781B (zh) 2018-05-21 2018-05-21 一种视频封面生成的方法以及服务器

Publications (2)

Publication Number Publication Date
CN108600781A CN108600781A (zh) 2018-09-28
CN108600781B true CN108600781B (zh) 2022-08-30

Family

ID=63632607

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810490362.1A Active CN108600781B (zh) 2018-05-21 2018-05-21 一种视频封面生成的方法以及服务器

Country Status (1)

Country Link
CN (1) CN108600781B (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109360436B (zh) * 2018-11-02 2021-01-08 Oppo广东移动通信有限公司 一种视频生成方法、终端及存储介质
CN109413483B (zh) * 2018-11-29 2020-01-14 北京字节跳动网络技术有限公司 直播内容的预览方法、装置、设备和介质
CN111385640B (zh) * 2018-12-28 2022-11-18 广州市百果园信息技术有限公司 视频封面的确定方法、装置、设备及存储介质
CN109905782B (zh) 2019-03-31 2021-05-18 联想(北京)有限公司 一种控制方法及装置
CN112312200A (zh) * 2019-08-06 2021-02-02 北京字节跳动网络技术有限公司 视频封面生成方法、装置和电子设备
CN112887797B (zh) * 2019-11-29 2022-12-20 腾讯科技(深圳)有限公司 控制视频播放的方法及相关设备
CN112437343B (zh) * 2020-05-15 2021-09-17 上海哔哩哔哩科技有限公司 基于浏览器的封面生成方法和系统
CN111581435B (zh) * 2020-05-25 2023-12-01 北京达佳互联信息技术有限公司 一种视频封面图像生成方法、装置、电子设备及存储介质
CN113453069B (zh) * 2021-06-18 2022-11-11 海信视像科技股份有限公司 一种显示设备及缩略图生成方法
CN113157973A (zh) * 2021-03-29 2021-07-23 广州市百果园信息技术有限公司 一种封面的生成方法、装置、设备及介质
CN113179421B (zh) * 2021-04-01 2023-03-10 影石创新科技股份有限公司 视频封面选择方法、装置、计算机设备和存储介质
CN113343832B (zh) * 2021-06-01 2024-02-02 北京奇艺世纪科技有限公司 视频封面判别方法、装置、设备及计算机可读介质
CN113407774A (zh) * 2021-06-30 2021-09-17 广州酷狗计算机科技有限公司 封面确定方法、装置、计算机设备及存储介质
CN113727139A (zh) * 2021-07-30 2021-11-30 北京达佳互联信息技术有限公司 封面图片的确定方法、装置、服务器及存储介质
CN114007133B (zh) * 2021-10-25 2024-02-23 杭州当虹科技股份有限公司 基于视频播放的视频起播封面自动生成方法及装置
CN113709563B (zh) * 2021-10-27 2022-03-08 北京金山云网络技术有限公司 视频封面选取方法、装置、存储介质以及电子设备

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102611823B (zh) * 2012-01-13 2014-06-04 百度在线网络技术(北京)有限公司 一种基于图片内容选择压缩算法的方法和设备
KR20130134546A (ko) * 2012-05-31 2013-12-10 삼성전자주식회사 동영상의 섬네일 이미지 생성 방법 및 그 전자 장치
CN103281559A (zh) * 2013-05-31 2013-09-04 于京 视频质量检测的方法及系统
CN103716603A (zh) * 2013-12-24 2014-04-09 北京淳中视讯科技有限公司 图像融合处理的相机辅助校正方法、装置及系统
CN105159639B (zh) * 2015-08-21 2018-07-27 小米科技有限责任公司 音频封面显示方法及装置
CN106503693B (zh) * 2016-11-28 2019-03-15 北京字节跳动科技有限公司 视频封面的提供方法及装置
CN107832725A (zh) * 2017-11-17 2018-03-23 北京奇虎科技有限公司 基于评价指标的视频封面提取方法及装置

Also Published As

Publication number Publication date
CN108600781A (zh) 2018-09-28

Similar Documents

Publication Publication Date Title
CN108600781B (zh) 一种视频封面生成的方法以及服务器
JP2017126345A (ja) 写真の変換提案
US9195880B1 (en) Interactive viewer for image stacks
US10242710B2 (en) Automatic cinemagraph
US11606532B2 (en) Video reformatting system
US10271014B2 (en) Dynamic video image management
KR20070019999A (ko) 전자 기기
CN114640783B (zh) 一种拍照方法及相关设备
US20240144976A1 (en) Video processing method, device, storage medium, and program product
CN114245028B (zh) 图像展示方法、装置、电子设备及存储介质
CN112102422B (zh) 图像处理方法及装置
CN114758027A (zh) 图像处理方法、装置、电子设备及存储介质
CN113989396A (zh) 图片渲染方法、装置、设备、存储介质和程序产品
CN112419218B (zh) 图像处理方法、装置及电子设备
CN116457821A (zh) 使用神经网络的对象重新照明
CN113645476A (zh) 画面处理方法、装置、电子设备及存储介质
CN113596574A (zh) 视频处理方法、视频处理装置、电子设备和可读存储介质
KR20130134546A (ko) 동영상의 섬네일 이미지 생성 방법 및 그 전자 장치
CN113989404B (zh) 图片处理方法、装置、设备、存储介质和程序产品
CN111158826B (zh) 一种界面皮肤生成方法、装置、设备及存储介质
US11665312B1 (en) Video reformatting recommendation
KR20220000981A (ko) 인물 그룹 및 이미지 기반 창작물의 자동 생성
CN110378973A (zh) 图像信息处理方法、装置以及电子设备
EP4136829B1 (en) Perceptually improved color display in image sequences on physical displays
US20240152261A1 (en) Video processing method and apparatus, electronic device, and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant