CN115334335B - 视频插帧方法及装置 - Google Patents

视频插帧方法及装置 Download PDF

Info

Publication number
CN115334335B
CN115334335B CN202210821122.1A CN202210821122A CN115334335B CN 115334335 B CN115334335 B CN 115334335B CN 202210821122 A CN202210821122 A CN 202210821122A CN 115334335 B CN115334335 B CN 115334335B
Authority
CN
China
Prior art keywords
frame
video frame
video
caption
caption area
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
CN202210821122.1A
Other languages
English (en)
Other versions
CN115334335A (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.)
Beijing Youku Technology Co Ltd
Original Assignee
Beijing Youku Technology 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 Beijing Youku Technology Co Ltd filed Critical Beijing Youku Technology Co Ltd
Priority to CN202210821122.1A priority Critical patent/CN115334335B/zh
Publication of CN115334335A publication Critical patent/CN115334335A/zh
Application granted granted Critical
Publication of CN115334335B publication Critical patent/CN115334335B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • 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/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/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234381Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the temporal resolution, e.g. decreasing the frame rate by frame skipping
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440281Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the temporal resolution, e.g. by frame skipping
    • 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/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4884Data services, e.g. news ticker for displaying subtitles

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Television Systems (AREA)

Abstract

本申请实施例公开了一种视频插帧方法及装置。其中主要方法包括:获取待处理的第一帧率视频帧序列;对所述第一帧率视频帧序列中的各视频帧分别进行字幕区域识别,得到各视频帧的字幕区域;以及分别对第一帧率视频帧序列的各待***视频帧进行运动估计,得到各待***视频帧指向参考帧的第一运动矢量,所述参考帧为待***视频帧的前一视频帧和/或后一视频帧;将所述各待***视频帧指向参考帧的第一运动矢量中,参考帧的字幕区域对应的运动矢量设置为0,得到所述各待***视频帧指向参考帧的第二运动矢量;利用所述各待***视频帧指向参考帧的第二运动矢量预测各待***视频帧,以得到第二帧率视频帧序列;其中,所述第二帧率大于所述第一帧率。本申请能够解决视频插帧后导致的字幕抖动现象。

Description

视频插帧方法及装置
技术领域
本申请涉及图像处理技术领域,特别是涉及一种视频插帧方法及装置。
背景技术
随着硬件和软件的快速发展,网络上视频资源呈现爆发式的增长,视频已日渐成为生活中信息的主要载体之一。视频插帧技术通过对视频的帧率进行提升,可以带来更流畅的观看体验,是目前超高清视频的核心技术之一。
例如,目前主流电影帧率仅为24帧,无法匹配主流60Hz刷新率的电视屏幕,会造成一些高速移动场景出现不连贯、模糊等现象,影响观看体验。视频插帧技术可以根据两个相邻帧的关系,估算物体运动,***一张中间帧,提升视频帧率,从而让视频中的画面更加流畅、运动细节展示更加清晰。
然而,传统视频插帧技术中,并未对字幕问题进行优化处理,导致得到的高帧率视频中经常出现字幕抖动现象,严重影响了用户观看视频的体验。
发明内容
有鉴于此,本申请提供了一种视频插帧方法及装置,用以减少视频插帧后导致的字幕抖动现象。
本申请提供了如下方案:
第一方面,提供了一种视频插帧方法,该方法包括:
获取待处理的第一帧率视频帧序列;
对所述第一帧率视频帧序列中的各视频帧分别进行字幕区域识别,得到各视频帧的字幕区域;以及分别对第一帧率视频帧序列的各待***视频帧进行运动估计,得到各待***视频帧指向参考帧的第一运动矢量,所述参考帧为待***视频帧的前一视频帧和/或后一视频帧;
将所述各待***视频帧指向参考帧的第一运动矢量中,参考帧的字幕区域对应的运动矢量设置为0,得到所述各待***视频帧指向参考帧的第二运动矢量;
利用所述各待***视频帧指向参考帧的第二运动矢量预测各待***视频帧,以得到第二帧率视频帧序列;
其中,所述第二帧率大于所述第一帧率。
根据本申请实施例中一可实现的方式,对所述第一帧率视频帧序列中的各视频帧分别进行字幕区域识别,得到各视频帧的字幕区域包括:
通过字幕区域识别模型获取所述第一帧率视频帧序列中的各视频帧的字幕区域,其中所述字幕区域识别模型为基于卷积神经网络的端到端模型;或者,
通过字幕区域识别模型获取所述第一帧率视频帧序列中的各视频帧的字幕区域作为初始字幕区域,将具有相同初始字幕区域的连续视频帧融合为一个视频帧,将融合得到的视频帧输入所述字幕区域识别模型,得到所述字幕区域识别模型输出的字幕区域作为所述连续视频帧的字幕区域。
根据本申请实施例中一可实现的方式,所述通过字幕区域识别模型获取所述第一帧率视频帧序列中的各视频帧的字幕区域作为初始字幕区域包括:
对所述第一帧率序列进行抽帧处理,通过字幕区域识别模型获取抽取的各视频帧的初始字幕区域;
确定抽取的视频帧中具有相同初始字幕区域的视频帧的第一帧和最后一帧;
从所述第一帧开始将之前的各帧输入字幕区域识别模型,直至利用字幕区域识别模型输出的字幕区域确定出该相同初始字幕区域的起始视频帧;以及从所述最后一帧开始将之后的各帧输入字幕区域识别模型,直至利用字幕区域识别模型输出的字幕区域确定出该相同初始字幕区域的结束视频帧;
确定从所述初始视频帧到所述结束视频帧的连续视频帧具有该相同初始字幕区域。
根据本申请实施例中一可实现的方式,所述字幕区域识别模型采用如下方式预先训练得到:
获取训练数据,所述训练数据包括多个包含字幕的视频帧样本以及对所述视频帧样本标注的字幕区域;
将所述视频帧样本作为基于卷积神经网络的端到端模型的输入,将对所述视频帧样本标注的字幕区域作为所述端到端模型的目标输出,训练所述端到端模型以作为字幕区域识别模型。
根据本申请实施例中一可实现的方式,利用所述各待***视频帧指向参考帧的第二运动矢量预测各待***视频帧包括:
依据所述第二运动矢量将参考帧向待***视频帧进行映射得到第一映射视频帧,利用所述第一映射视频帧得到待***视频帧;或者,
依据所述第二运动矢量将参考帧向待***视频帧进行映射得到第一映射视频帧,对所述第一映射视频进行非字幕区域的优化得到第二映射视频帧,利用所述第二映射视频帧得到待***视频帧。
根据本申请实施例中一可实现的方式,对所述第一映射视频进行非字幕区域的优化得到第二映射视频帧包括:
依据所述第二运动矢量将参考帧的字幕区域向待***视频帧进行映射,得到字幕映射区域,确定所述字幕映射区域与所述参考帧的字幕区域的差异区域;
对所述第一映射视频帧中的所述差异区域进行背景填充,得到第二映射视频帧。
根据本申请实施例中一可实现的方式,对所述第一映射视频帧中的所述差异区域进行背景填充包括:
对所述差异区域中的各像素分别采样距离该像素最近的非字幕区域像素进行填充。
根据本申请实施例中一可实现的方式,若所述参考帧为待***视频帧的上一视频帧和下一视频帧,则所述第一映射视频帧包括第一后向映射视频帧和第一前向映射视频帧,所述第二映射视频帧包括第二后向映射视频帧和第二前向映射视频帧;
利用所述第二映射视频帧得到待***视频帧包括:对所述第二后向映射视频帧和第二前向映射视频帧进行融合处理,得到待***视频帧。
第二方面,提供了一种视频插帧装置,该装置包括:
视频获取单元,被配置为获取待处理的第一帧率视频帧序列;
字幕识别单元,被配置为对所述第一帧率视频帧序列中的各视频帧分别进行字幕区域识别,得到各视频帧的字幕区域;
运动估计单元,被配置为分别对第一帧率视频帧序列的各待***视频帧进行运动估计,得到各待***视频帧指向参考帧的第一运动矢量,所述参考帧为待***视频帧的前一视频帧和/或后一视频帧;
运动保护单元,被配置为将所述各待***视频帧指向参考帧的第一运动矢量中,参考帧的字幕区域对应的运动矢量设置为0,得到所述各待***视频帧指向参考帧的第二运动矢量;
***帧预测单元,被配置为利用所述各待***视频帧指向参考帧的第二运动矢量预测各待***视频帧,以得到第二帧率视频帧序列;其中,所述第二帧率大于所述第一帧率。
第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一方面中任一项所述的方法的步骤。
第四方面,提供了一种电子设备,其特征在于,包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行上述第一方面中任一项所述的方法的步骤。
根据本申请提供的具体实施例,本申请可以具备以下技术效果:
1)本申请在针对第一帧率视频序列的各待***视频帧进行运动估计和预测时,对其中的字幕区域进行运动保护即设置运动估计的运动矢量中字幕区域对应的运动矢量为0,从而使得最终插帧得到的第二帧率视频帧序列中***帧相比较参考帧的字幕区域保持静止,减少字幕区域的抖动现象。
2)本申请在利用字幕区域识别模型对各视频帧进行字幕区域识别得到初始字幕区域后,将具有相同初始字幕区域的连续视频帧融合为一个视频帧后,将融合得到的视频帧再次输入字幕区域识别模型得到该连续视频帧的字幕区域。该方式充分利用视频帧的时序关系对字幕区域进行优化处理,从而提高所识别字幕区域的准确性,更进一步提高视频插帧的效果。
3)本申请实施例中,利用第二运动矢量分别将参考帧和参考帧的字幕区域向待***视频帧进行映射,对映射结果的差异区域进行背景填充,避免出现非字幕区域采样了字幕区域的内容,更进一步避免字幕区域的边缘不准确所带来的闪动现象。
4)本申请所提供的视频插帧方式中对字幕的处理简洁、高效,不会对设备的计算性能产生压力,且效果稳定,具有强鲁棒性。
当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的示例性***架构图;
图2为本申请实施例提供的视频插帧方法的流程图;
图3为本申请实施例提供一种优选的字幕区域识别方法流程图;
图4为本申请实施例提供的一种预测待***视频帧的方法流程图;
图5为本申请实施例提供的一个字幕映射区域与字幕区域的差值区域的示意图;
图6为本申请实施例提供的视频插帧装置的结构图;
图7为本申请实施例提供的电子设备的框架图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本申请保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
为了方便对本申请的理解,首先对本申请能够适用的***进行详细描述。图1示出了可以应用本申请实施例的示例性***架构,如图1中所示,该***可以包括终端设备、媒体服务器、存储设备和视频插帧装置。
其中,终端设备可以是任意的能够播放视频的有屏设备,包括但不限于:智能移动终端、智能家居设备、可穿戴式设备、PC(个人计算机)等。其中智能移动设备可以包括诸如手机、平板电脑、笔记本电脑、PDA(个人数字助理)、互联网汽车等。智能家居设备可以包括智能电视、智能冰箱等。可穿戴式设备可以包括诸如智能手表、智能眼镜、智能手环、虚拟现实设备、增强现实设备、混合现实设备(即可以支持虚拟现实和增强现实的设备)等等。
由于终端设备的播放能力的差异,不同终端设备能够支持不同帧率的视频播放。例如有些终端设备仅支持低帧率的视频,有些终端设备能够支持高帧率的视频。用户也可以通过终端设备选择并请求播放不同帧率的视频。
媒体服务器接收到来自终端设备的视频播放请求后,可以从存储设备中选择对应帧率的视频进行播放。
在存储设备中存储有多种帧率的视频。在一些场景下,存储设备仅具有第一帧率的某视频,但若为了得到更高帧率的视频,可以由图1所示***中的视频插帧装置采用本申请实施例中所提供的方式将第一帧率的视频进行插帧处理,得到第二帧率视频并存储于存储设备。其中第二帧率大于第一帧率。
这样当终端设备通过网络向媒体服务器请求第一帧率的视频或者第二帧率的视频时,都能够从存储设备中获取到并返回给终端设备进行播放。
视频插帧装置为位于服务器端的应用,或者还可以为位于服务器端的应用中的插件或软件开发工具包(Software Development Kit,SDK)等功能单元,或者,还可以位于具有较强计算能力的计算机终端。
上述媒体服务器以及视频插帧装置所在的服务器端可以是单一服务器,也可以是多个服务器构成的服务器群组,还可以是云服务器。云服务器又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决传统物理主机与虚拟专用服务器(VPs,Virtual Private Server)服务中存在的管理难度大,服务扩展性弱的缺陷。
上述网络可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
应该理解,图1中的终端设备、网络、服务器和存储设备的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络、服务器和存储设备。需要说明的是,图1所示***仅仅是本申请所适用的其中一种,还可以适用于其他***。例如,视频插帧装置获取一个计算机终端上传的第一帧率的视频,将其进行插帧处理得到第二帧率的视频后回传给计算机终端或存储于存储空间,等等。
传统视频插帧技术中字幕通常作为视频帧的一部分来进行***帧(即待***的视频帧)的预测,无论是采用将前后帧进行插值或者求平均等方式,还是进行运动估计的方式,都可能会造成字幕区域的抖动。而本申请则提出了一种全新的视频插帧方式,对其中的字幕进行特殊的处理来避免字幕区域的抖动现象。
图2为本申请实施例提供的视频插帧方法的流程图,该方法可以由图1所示***中的视频插帧装置执行。如图2中所示,该方法可以包括以下步骤:
步骤202:获取待处理的第一帧率视频帧序列。
步骤204:对第一帧率视频帧序列中的各视频帧分别进行字幕区域识别,得到各视频帧的字幕区域。
步骤206:分别对第一帧率视频帧序列的各待***视频帧进行运动估计,得到各待***视频帧指向参考帧的第一运动矢量,参考帧为待***视频帧的前一视频帧和/或后一视频帧。
需要说明的是,上述步骤204和步骤206没有严格的先后顺序,可以先后执行,也可以同时执行。
步骤208:将各待***视频帧指向参考帧的第一运动矢量中,参考帧的字幕区域对应的运动矢量设置为0,得到各待***视频帧指向参考帧的第二运动矢量。
步骤210:利用各待***视频帧指向参考帧的第二运动矢量预测各待***视频帧,以得到第二帧率视频帧序列;其中,第二帧率大于第一帧率。
由上面的流程可以看出,本申请在针对第一帧率视频序列的各待***视频帧进行运动估计和预测时,对其中的字幕区域进行运动保护即设置运动估计的运动矢量的中字幕区域对应的运动矢量为0,从而使得最终插帧得到的第二帧率视频帧序列中***帧相比较参考帧的字幕区域保持静止,避免字幕区域的抖动现象。
在此需要说明的是,本申请实施例中所涉及的字幕可以是以文字形式显示视频中的对话、旁白、唱词、说明词等非影像内容,还可以是人物介绍、片名、演职员表等视频后期加工的文字。字幕的位置一般出现在屏幕下方,也可能出现在屏幕右侧靠边缘的位置,或者屏幕顶部,等等,通常是尽量减少对视频帧中主要的背景内容遮挡的位置。
下面对上述各步骤展开进行详细描述。首先结合实施例对上述步骤202即“获取待处理的第一帧率视频帧序列”进行详细描述。
本步骤中可以从诸如数据仓库、媒体服务器、甚至是其他计算机终端获取待处理的第一帧率的视频,由于视频是由一系列视频帧构成的,即以帧为单位的一系列位图图像。因此可以获取待处理的第一帧率视频帧序列,序列中的各视频帧存在时间上的顺序和固定间隔。以帧率为每秒24帧为例,那么在一秒钟对应有等间距顺序排列的24个视频帧。对于一段10分钟的视频,其对应的序列中包含14400个等间距图像帧构成的序列。各视频帧可以采用标志、帧号或者时间戳等进行标识。
这里的第一帧率并不一定是低帧率,本申请实施例中所涉及的“高”和“低”仅仅是相对概念,即基于第一帧率的视频进行插帧处理,得到提高了帧率的第二帧率的视频。
需要说明的是,本公开中涉及的“第一”、“第二”等限定并不具备大小、顺序和数量等方面的限制,仅仅用以在名称上加以区分,例如“第一帧率”和“第二帧率”用以区分两种帧率。
下面结合实施例对上述步骤204即“对第一帧率视频帧序列中的各视频帧分别进行字幕区域识别,得到各视频帧的字幕区域”进行详细描述。
本步骤实际上是需要识别出各视频帧的字幕区域,可以采用多种方式实现,例如通过比较前后视频帧的灰度值差异的方式,将相同灰度值区域进行聚类得到多个候选区域,然后利用尺寸特征、长宽比特征等过滤掉明显不是字幕区域的候选区域,从而得到字幕区域。
再例如首先对视频帧的灰度图像进行边缘检测,得到边缘图;然后在边缘图上分别进行水平和竖直方向的投影分析,通过投影直方图的分布确定出字幕的候选区域。如果存在多个候选区域,则可以利用尺寸特征、长宽比特征等过滤掉明显不是字幕区域的候选区域;然后通过将多个视频帧的候选区域进行对比,基本就能够得到字幕区域。
但随着深度学习技术的不断成熟,字幕区域也可以采用深度学习的方式实现,包括但不限于以下两种方式:
第一种方式:将第一帧率视频帧序列中的各视频帧分别输入字幕区域识别模型,获取字幕区域识别模型输出的各视频帧的字幕区域,其中字幕区域识别模型为基于CNN(Convolutional Neural Networks,卷积神经网络)的端到端模型,本质上是一种分割模型。
字幕区域识别模型可以采用如下方式预先训练得到:
首先获取第一训练数据,第一训练数据中包括多个包含字幕的视频帧样本以及对视频帧样本标注的字幕区域。其中可以获取一些已经明确其中的字幕区域的视频帧作为样本。例如可以获取一些包含字幕的视频帧作为样本,采用人工标注的方式标注其中的字幕区域。
然后将视频帧样本作为基于卷积神经网络的端到端模型的输入,将对视频帧样本标注的字幕区域作为端到端模型的目标输出,训练端到端模型以作为字幕区域识别模型。其中,字幕区域识别模型可以从输入的视频帧样本中提取各块的特征,然后基于各像素的特征进行分类映射,以确定各块是否属于字幕区域,最终属于字幕区域的块构成了字幕区域。其中,块可以与运动估计过程中所使用的块一致。块可以是一个像素,也可以是多个像素构成的集合。
其中训练目标为最小化字幕区域识别模型输出的字幕区域与标注的字幕区域之间的差异,可以依据上述训练目标构造损失函数,在每一轮迭代中利用损失函数的取值,采用诸如梯度下降等方式更新模型参数,直至满足预设的训练结束条件。其中训练结束条件可以包括诸如损失函数的取值小于或等于预设的损失函数阈值,迭代次数达到预设的次数阈值等。
第二种方式:将第一帧率视频帧序列中的各视频帧分别输入字幕区域识别模型,获取字幕区域识别模型输出的各视频帧的字幕区域作为初始字幕区域,将具有相同初始字幕区域的连续视频帧融合为一个视频帧,将融合得到的视频帧输入字幕区域识别模型,获取字幕区域识别模型输出的字幕区域作为连续视频帧的字幕区域。
这种方式是第一种方式基础上的优化,将字幕区域识别模型得到的字幕区域作为初始字幕区域。作为其中一种优选的实施方式,可以参见图3,图3提供了一种优选的字幕区域识别方法流程图,如图3中所示,该方法流程可以包括以下步骤:
步骤302:对第一帧率视频帧序列进行抽帧处理。
对于第一帧率视频帧序列可以首先间隔地进行视频帧抽取。由于通常视频中每个字幕实例出现的时间都会大于1秒,对于24帧/秒的帧率而言,每个字幕实例至少出现在连续24帧,因此可以选取抽帧间隔为10帧,即每10帧抽取一个视频帧。其中抽帧间隔为10帧仅仅为一个例子,可以根据具体的帧率和实际需求选取一个经验值。
步骤304:将抽取的视频帧输入字幕区域识别模型,获取字幕区域识别模型输出的抽取的视频帧的初始字幕区域。
步骤306:确定抽取的视频帧中,具有相同初始字幕区域的视频帧,以及具有相同初始字幕区域的第一帧和最后一帧。
步骤308:从相同初始字幕区域的第一帧开始将之前的各帧逐一输入字幕区域识别模型,直至利用字幕区域识别模型输出的字幕区域确定出该相同初始字幕区域的起始视频帧。从相同字幕区域的最后一帧开始将之后的各帧逐一输入字幕区域识别模型,直至利用字幕区域识别模型输出的字幕区域确定出该相同初始字幕区域的结束视频帧。
举一个例子,假设进行抽帧处理后,抽取出的帧号为40~60的视频帧对应相同的初始字幕区域a,即抽取的视频帧中该初始字幕区域a的第一帧的帧号为40,最后一帧的帧号为60。但由于帧号为31~39、61~69的视频帧并未被抽取出来,其中也可能具有初始字幕区域a。因此可以从第39号开始向着31号视频帧的方向逐一输入字幕区域识别模型,若输出的初始字幕区域也为a,则继续输入,直到输出的初始字幕区域不为a。假设帧号为37的视频帧输出的初始字幕区域不为a,则可以认为初始字幕区域a的起始视频帧的帧号为38。结束视频帧的确定方式是从第61号开始朝着69号的方向,具体方式类似。
其中在确定是否具有相同初始字幕区域时,可以利用字幕区域识别模型输出的初始字幕区域之间的像素灰度值的相似度来确定,例如判断两个初始字幕区域的像素灰度值的相似度是否大于或等于预设的相似度阈值,如果是,则认为两个初始字幕区域是相同的字幕区域。
上述方式是为了减少计算量而基于抽帧的方式执行的流程,也可以不执行抽帧处理,分别针对每一视频帧都输入字幕区域识别模型来获取字幕区域识别模型输出的各视频帧的初始字幕区域。然后直接确定相同字幕区域的起始视频帧和结束视频帧。
步骤310:对具有相同初始字幕区域的连续视频帧进行融合处理,融合为一个视频帧。
本步骤中进行的融合处理是对视频帧的融合处理,例如对具有相同初始字幕区域的连续多个视频帧中的每个像素进行灰度值的求平均处理,得到融合后的视频帧。
步骤312:将融合得到的视频帧输入字幕区域识别模型,获取字幕区域识别模型输出的字幕区域作为连续视频帧的字幕区域。
融合后的视频帧中,由于初始字幕区域是相同的,因此经过融合这部分的改变不大。但由于连续多个视频帧的背景内容相比较字幕区域是改变较大的,因此经过求平均处理后,非字幕区域部分变得更加“模糊”,因此将融合处理后得到的视频再次输入字幕区域识别模型后,更加容易区分出字幕区域和非字幕区域,因此识别得到的字幕区域更加准确。
举个例子,假设帧号为38~63的连续视频帧具有相同的初始字幕区域a,则将帧号为38~63的连续视频帧进行融合处理得到一个视频帧,将该视频帧输入字幕区域识别模型后,得到字幕区域b,将该字幕区域b作为帧号为38~63的连续视频帧对应的字幕区域。
下面结合实施例对上述步骤206即“分别对第一帧率视频帧序列的各待***视频帧进行运动估计,得到各待***视频帧指向参考帧的第一运动矢量”进行详细描述。
视频插帧的实质是在已有视频帧之间***视频帧,该***的视频帧需要在视觉上与前后视频帧保持连贯。视频插帧技术主要分为两类:一类是没有考虑相邻帧间运动状态的方式,比如帧间重复方法和帧间平均方法。帧间重复方法是指直接对待插相位视频帧的前一帧进行复制作为***帧。帧间平均方法是指通过对待插相位视频帧的前后帧求平均得到***帧。这一类方式容易产生图像运动突变的现象或运动物体边缘模糊的现象。因此大多数采用第二类方式。第二类方式是考虑了相邻帧间运动物体的运动状态,其中以运动估计方法为代表。本申请实施例中采用了第二类方式。
本步骤中涉及的运动估计目的是为了确定待***视频帧指向参考帧的第一运动矢量。运动估计可以采用单向估计法,也可以采用双向估计法。若采用单向估计法,则可以采用待***视频帧的上一视频帧作为参考帧,此时称为后向估计;也可以采用待***视频帧的下一视频帧作为参考帧,此时称为前向估计。单向估计法利用估计得到的运动矢量可以直接预测待***视频帧。若采用双向估计法,则可以采用待***视频帧的上一视频帧和下一视频帧都作为参考帧,分别进行后向估计和前向估计得到后向运动矢量和前向运动矢量,然后分别利用后向运动矢量和前向运动矢量预测得到后向映射视频帧和前向映射视频帧,然后利用后向映射视频帧和前向映射视频帧进行融合处理,得到待***视频帧。下面以双向运动估计为例进行描述。
以待***视频帧It为例,上一视频帧表示为I0,I0是It的后向参考帧,下一视频帧表示为I1,I1是It的前向参考帧。首先可以分别估计I0到I1的运动矢量F01以及I1到I0的运动矢量F10,然后利用线性映射的方式,得到待***帧It指向I0的第一运动矢量Ft0以及指向I1的第一运动矢量Ft1。
待***帧It指向I0的第一运动矢量Ft0指的是待***帧It中的块指向I0中对应块的矢量。待***帧It指向I1的第一运动矢量Ft1指的是待***帧It中的块指向I1中对应块的矢量。其中,块是预先设置的进行运动估计的单位,可以是一个像素,也可以是多个像素构成的集合。
其中在估计运动矢量时可以采用传统基于块匹配的运动估计算法,也可以采用基于卷积神经网络的运动估计网络。鉴于这部分是现有技术,在此不做详述。
下面结合实施例对上述步骤208即“将各待***视频帧指向参考帧的第一运动矢量中,参考帧的字幕区域对应的运动矢量设置为0,得到各待***视频帧指向参考帧的第二运动矢量”进行详细描述。
由于对于相同字幕区域而言,在时序上应该是静止的,即在连续多个视频帧上的位置应该一致。因此本步骤是对字幕区域进行运动保护,将步骤206中确定的第一运动矢量中参考帧的字幕区域对应的运动矢量设置为0,强制字幕区域是静止的。在步骤204中确定出后向参考帧I0中,字幕区域识别模型针对每个块都会输出一个是否属于字幕区域的结果St0,例如以St0取0表示不属于字幕区域,以St0取1表示属于字幕区域。那么在本步骤208中,待***视频帧中各块指向参考帧I0的第二运动矢量Fts0可以表示为:
Fts0=Ft0*(1-St0)
同理,待***视频帧中各块指向参考帧I1的第二运动矢量Fts1可以表示为:
Fts1=Ft1*(1-St1)
St1是字幕区域识别模型针对参考帧I1中每个块输出的是否属于字幕区域的结果。
下面结合实施例对上述步骤210即“利用各待***视频帧指向参考帧的第二运动矢量预测各待***视频帧,以得到第二帧率视频帧序列”进行详细描述。
本步骤中可以依据第二运动矢量将参考帧向待***视频帧进行映射,依据映射的结果得到待***视频帧。以待***视频帧的其中一个块为例,该块的第二运动矢量的含义是指向参考帧中对应的块的矢量。因此,针对待***视频帧的每一个块依据第二运动矢量从参考帧中进行块采样。
作为其中一种可实现的方式,若采用的是单向运动估计的方式,则对于待***视频帧的块A,则依据该块A指向参考帧的第二运动矢量确定在参考帧所指向的块B,从参考帧中采集块B作为待***视频帧的块A的内容。针对每个块都执行上述处理后,得到待***视频帧It。
若采用的是双向运动估计的方式,则对于待***视频帧的块A,该块A指向参考帧I0的第二运动矢量为Fts0,指向参考帧I1的第二运动矢量为Fts1,则依据该第二运动矢量Fts0确定在参考帧I0所指向的块B,从参考帧I0中采集块B作为待***的后向视频帧It0的块A的内容。依据该第二运动矢量Fts1确定在参考帧I1所指向的块C,从参考帧I1中采集块C作为待***的前向视频帧It1的块A的内容。然后将后向视频帧的块A和前向视频帧的块A进行融合,例如进行求平均或加权求平均等处理,得到待***视频帧的块A。针对每个块都执行上述处理后,得到待***视频帧It。
上述依据第二运动矢量Fts0从参考帧I0中采样得到后向视频帧It0的过程可以采用以下公式表示:
It0=backwarp(Fts0,I0)
上述依据第二运动矢量Fts1从参考帧I1中采样得到前向视频帧It1的过程可以采用以下公式表示:
It1=backwarp(Fts1,I1)
其中,backwarp()是进行采样处理的函数。
将后向视频帧It0和前向视频帧It1进行融合,得到待***视频帧It的过程可以采用以下公式表示:
It=αIt1+(1-α)It0
其中,α为0到1之间的一个值,是加权系数,可以根据待***视频帧在I0和I1之间的时序位置确定。
在从参考帧中采样的过程中字幕区域做了保护,字幕区域静止即运动矢量为0,也就是说,字幕区域只会采样字幕区域的内容。然而,对于非字幕区域有可能会采样到字幕区域的内容,这样也可能造成字幕区域的边缘不准确,原本不是字幕的区域会有字幕区域的内容,从而造成字幕区域边缘闪动。针对于此,本步骤进一步提供了一种更为优选的实施方式,如图4中所示,可以具体包括以下步骤:
步骤402:依据第二运动矢量将参考帧向待***视频帧进行映射,得到第一映射视频帧。
本步骤的映射就是利用第二运动矢量从参考帧进行采样的过程,该过程与之前类似,但得到的视频帧不再直接用于产生待***视频帧,而是作为第一映射视频帧进行后续步骤的优化处理。
以双向运动估计为例,依据第二运动矢量Fts0从参考帧I0中采样得到第一后向映射视频帧It0的过程可以采用以下公式表示:
It0=backwarp(Fts0,I0)
上述依据第二运动矢量Fts1从参考帧I1中采样得到第一前向映射视频帧It1的过程可以采用以下公式表示:
It1=backwarp(Fts1,I1)
其中,backwarp()是进行采样处理的函数。
步骤404:依据第二运动矢量将参考帧的字幕区域向待***视频帧进行映射,得到字幕映射区域,确定字幕映射区域与参考帧的字幕区域的差异区域。
如图5中所示,本步骤中依据第二运动矢量将参考帧的字幕区域向待***视频帧进行映射,得到字幕映射区域,实际上是确定上述第一映射视频帧中所有采样了参考帧的字幕区域的区域。而理论上待***视频帧的字幕区域应该指向参考帧而言是静止的,那么将字幕映射区域与参考帧的字幕区域进行取差异,得到的差异区域就是采样了字幕区域的非字幕区域,图5中以灰色阴影部分示出。也就是说,该差异区域原本不应该是字幕区域,但却采样了字幕区域的内容。
仍以双向运动估计为例,依据第二运动矢量Fts0将参考帧I0的字幕区域M0向待***视频帧进行映射,得到后向字幕映射区域,然后确定后向字幕映射区域与M0的差异区域Mt0:
Mt0=max(0,backwarp(Fts0,M0)-M0)
依据第二运动矢量Fts1将参考帧I1的字幕区域M1向待***视频帧进行映射,得到前向字幕映射区域,然后确定前向字幕映射区域与M1的差异区域Mt1:
Mt1=max(0,backwarp(Fts1,M1)-M1)
其中,在0和差异区域之间取最大值的含义是,若字幕映射区域与参考帧的字幕区域相等或者小于参考帧的字幕区域,则说明不存在采样了字幕区域的非字幕区域,这种情况下可以不执行后续步骤406,而直接利用第一映射视频帧得到待***视频帧。
步骤406:对第一映射视频帧中的差异区域进行背景填充,得到第二映射视频帧。
由于上面确定出的差异区域是采样了字幕区域的非字幕区域,本步骤实际上就是恢复这部分非字幕区域,让其显示背景内容。
本步骤可以采用多种实现方式来实现,作为其中一种简便和快捷的实现方式,可以对差异区域中的各像素分别采样距离该像素最近的非字幕区域像素进行填充。这样填充后的部分就与其临近的背景内容接近,避免非字幕区域显示字幕区域的内容所造成的字幕区域因边缘不准确而发生边缘闪动的情况。
除了该实现方式之外,还可以采用其他方式进行背景填充,例如采用基于深度学习的方式是,或者采用其他基于图像结构特性的算法,在此不做详述。
仍以双向运动估计为例,对后向视频帧It0中的差异区域Mt0进行背景填充后,得到第二后向映射视频帧Itm0;对前向视频帧It1中的差异区域Mt1进行背景填充后,得到第二前向映射视频帧Itm1。
步骤408:利用第二映射视频帧得到待***视频帧。
若采用的是单向运动估计,则直接将第二映射视频帧作为待***视频帧It。
若采用的是双向运动估计,则在上面步骤中得到了第二后向映射视频帧Itm0和第二前向映射视频帧Itm1,可以对Itm0和Itm1进行融合处理,例如进行求平均或加权求平均等处理,得到待***视频帧It。例如可以采用以下公式:
It=αItm1+(1-α)Itm0
其中,α为0到1之间的一个值,是加权系数,可以根据待***视频帧在I0和I1之间的时序位置确定。
经过对每一个待***视频帧都执行上述处理后,就可以在各待***相位***视频帧,将第一帧率视频帧序列插帧得到了第二帧率视频帧序列,也就是说,在第一帧率视频的基础上生成了更高帧率的视频。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
根据另一方面的实施例,提供了一种视频插帧装置。图6示出根据一个实施例的视频插帧装置的示意性框图。如图6所示,该装置600包括:视频获取单元610、字幕识别单元620、运动估计单元630、运动保护单元640和***帧预测单元650。其中各组成单元的主要功能如下:
视频获取单元610,被配置为获取待处理的第一帧率视频帧序列。
字幕识别单元620,被配置为对第一帧率视频帧序列中的各视频帧分别进行字幕区域识别,得到各视频帧的字幕区域。
运动估计单元630,被配置为分别对第一帧率视频帧序列的各待***视频帧进行运动估计,得到各待***视频帧指向参考帧的第一运动矢量,参考帧为待***视频帧的前一视频帧和/或后一视频帧。
运动保护单元640,被配置为将各待***视频帧指向参考帧的第一运动矢量中,参考帧的字幕区域对应的运动矢量设置为0,得到各待***视频帧指向参考帧的第二运动矢量。
***帧预测单元650,被配置为利用各待***视频帧指向参考帧的第二运动矢量预测各待***视频帧,以得到第二帧率视频帧序列;其中,第二帧率大于第一帧率。
作为其中一种可实现的方式,字幕识别单元620可以具体被配置为将第一帧率视频帧序列中的各视频帧分别输入字幕区域识别模型,获取字幕区域识别模型输出的各视频帧的字幕区域,其中字幕区域识别模型为基于卷积神经网络的端到端模型。
作为另一种可实现的方式,字幕识别单元620可以具体被配置为将第一帧率视频帧序列中的各视频帧分别输入字幕区域识别模型,获取字幕区域识别模型输出的各视频帧的字幕区域作为初始字幕区域,将具有相同初始字幕区域的连续视频帧融合为一个视频帧,将融合得到的视频帧输入字幕区域识别模型,得到字幕区域识别模型输出的字幕区域作为连续视频帧的字幕区域。
其中,上述的字幕区域识别模型由模型训练单元(图6中未示出)采用如下方式预先训练得到:
获取第一训练数据,第一训练数据包括多个包含字幕的视频帧样本以及对视频帧样本标注的字幕区域;
将视频帧样本作为基于卷积神经网络的端到端模型的输入,将对视频帧样本标注的字幕区域作为端到端模型的目标输出,训练端到端模型以作为字幕区域识别模型。
除了通过字幕区域识别模型进行识别之外,字幕识别单元620还可以通过其他方式实现。例如通过比较前后视频帧的灰度值差异的方式,将相同灰度值区域进行聚类得到多个候选区域,然后利用尺寸特征、长宽比特征等过滤掉明显不是字幕区域的候选区域,从而得到字幕区域。
再例如首先对视频帧的灰度图像进行边缘检测,得到边缘图;然后在边缘图上分别进行水平和竖直方向的投影分析,通过投影直方图的分布确定出字幕的候选区域。如果存在多个候选区域,则可以利用尺寸特征、长宽比特征等过滤掉明显不是字幕区域的候选区域;然后通过将多个视频帧的候选区域进行对比,基本就能够得到字幕区域。
具体地,上述***帧预测单元650可以依据第二运动矢量将参考帧向待***视频帧进行映射,依据映射的结果得到待***视频帧。
作为其中一种可实现的方式,上述***帧预测单元650可以具体包括:
视频映射子单元651,被配置为依据第二运动矢量将参考帧向待***视频帧进行映射,得到第一映射视频帧;依据第二运动矢量将参考帧的字幕区域向待***视频帧进行映射,得到字幕映射区域。
字幕外确定子单元652,被配置为确定字幕映射区域与参考帧的字幕区域的差异区域。
字幕外修补子单元653,被配置为对第一映射视频帧中的差异区域进行背景填充,得到第二映射视频帧。
作为其中一种可实现的方式,字幕外修补子单元653可以对差异区域中的各像素分别采样距离该像素最近的非字幕区域像素进行填充。
除了该实现方式之外,字幕外修补子单元653还可以采用其他方式进行背景填充,例如采用基于深度学习的方式是,或者采用其他基于图像结构特性的算法。
视频帧确定子单元654,被配置为利用第二映射视频帧得到待***视频帧。
若采用双向运动估计,则参考帧为待***视频帧的上一视频帧和下一视频帧,上述的第一映射视频帧包括第一后向映射视频帧和第一前向映射视频帧,上述的第二映射视频帧包括第二后向映射视频帧和第二前向映射视频帧。视频帧确定子单元644可以对第二后向映射视频帧和第二前向映射视频帧进行融合处理,得到待***视频帧。
另外,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述方法实施例中任一项所述的方法的步骤。
以及一种电子设备,包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行前述方法实施例中任一项所述的方法的步骤。
其中,图7示例性的展示出了电子设备的架构,具体可以包括处理器710,视频显示适配器711,磁盘驱动器712,输入/输出接口713,网络接口714,以及存储器720。上述处理器710、视频显示适配器711、磁盘驱动器712、输入/输出接口713、网络接口714,与存储器720之间可以通过通信总线730进行通信连接。
其中,处理器710可以采用通用的CPU、微处理器、应用专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请所提供的技术方案。
存储器720可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器720可以存储用于控制电子设备700运行的操作***721,用于控制电子设备700的低级别操作的基本输入输出***(BIOS)722。另外,还可以存储网页浏览器723,数据存储管理***724,以及视频插帧装置725等等。上述视频插帧装置725就可以是本申请实施例中具体实现前述各步骤操作的应用程序。总之,在通过软件或者固件来实现本申请所提供的技术方案时,相关的程序代码保存在存储器720中,并由处理器710来调用执行。
输入/输出接口713用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
网络接口714用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线730包括一通路,在设备的各个组件(例如处理器710、视频显示适配器711、磁盘驱动器712、输入/输出接口713、网络接口714,与存储器720)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器710、视频显示适配器711、磁盘驱动器712、输入/输出接口713、网络接口714,存储器720,总线730等,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本申请方案所必需的组件,而不必包含图中所示的全部组件。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***或***实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的***及***实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上对本申请所提供的技术方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本申请的限制。

Claims (9)

1.一种视频插帧方法,其特征在于,该方法包括:
获取待处理的第一帧率视频帧序列;
对所述第一帧率视频帧序列中的各视频帧分别进行字幕区域识别,得到各视频帧的字幕区域;以及分别对第一帧率视频帧序列的各待***视频帧进行运动估计,得到各待***视频帧指向参考帧的第一运动矢量,所述参考帧为待***视频帧的前一视频帧和/或后一视频帧;
将所述各待***视频帧指向参考帧的第一运动矢量中,参考帧的字幕区域对应的运动矢量设置为0,得到所述各待***视频帧指向参考帧的第二运动矢量;
利用所述各待***视频帧指向参考帧的第二运动矢量预测各待***视频帧,以得到第二帧率视频帧序列;其中,所述第二帧率大于所述第一帧率;
其中,利用所述各待***视频帧指向参考帧的第二运动矢量预测各待***视频帧包括:依据所述第二运动矢量将参考帧向待***视频帧进行映射得到第一映射视频帧;依据所述第二运动矢量将参考帧的字幕区域向待***视频帧进行映射,得到字幕映射区域,确定所述字幕映射区域与所述参考帧的字幕区域的差异区域,对所述第一映射视频帧中的所述差异区域进行背景填充,得到第二映射视频帧。
2.根据权利要求1所述的方法,其特征在于,对所述第一帧率视频帧序列中的各视频帧分别进行字幕区域识别,得到各视频帧的字幕区域包括:
通过字幕区域识别模型获取所述第一帧率视频帧序列中的各视频帧的字幕区域,其中所述字幕区域识别模型为基于卷积神经网络的端到端模型;或者,
通过字幕区域识别模型获取所述第一帧率视频帧序列中的各视频帧的字幕区域作为初始字幕区域,将具有相同初始字幕区域的连续视频帧融合为一个视频帧,将融合得到的视频帧输入所述字幕区域识别模型,得到所述字幕区域识别模型输出的字幕区域作为所述连续视频帧的字幕区域。
3.根据权利要求2所述的方法,其特征在于,所述通过字幕区域识别模型获取所述第一帧率视频帧序列中的各视频帧的字幕区域作为初始字幕区域包括:
对所述第一帧率序列进行抽帧处理,通过字幕区域识别模型获取抽取的各视频帧的初始字幕区域;
确定抽取的视频帧中具有相同初始字幕区域的视频帧的第一帧和最后一帧;
从所述第一帧开始将之前的各帧输入字幕区域识别模型,直至利用字幕区域识别模型输出的字幕区域确定出该相同初始字幕区域的起始视频帧;以及从所述最后一帧开始将之后的各帧输入字幕区域识别模型,直至利用字幕区域识别模型输出的字幕区域确定出该相同初始字幕区域的结束视频帧;
确定从所述初始视频帧到所述结束视频帧的连续视频帧具有该相同初始字幕区域。
4.根据权利要求2所述的方法,其特征在于,所述字幕区域识别模型采用如下方式预先训练得到:
获取训练数据,所述训练数据包括多个包含字幕的视频帧样本以及对所述视频帧样本标注的字幕区域;
将所述视频帧样本作为基于卷积神经网络的端到端模型的输入,将对所述视频帧样本标注的字幕区域作为所述端到端模型的目标输出,训练所述端到端模型以作为字幕区域识别模型。
5.根据权利要求1所述的方法,其特征在于,对所述第一映射视频帧中的所述差异区域进行背景填充包括:
对所述差异区域中的各像素分别采样距离该像素最近的非字幕区域像素进行填充。
6.根据权利要求1所述的方法,其特征在于,若所述参考帧为待***视频帧的上一视频帧和下一视频帧,则所述第一映射视频帧包括第一后向映射视频帧和第一前向映射视频帧,所述第二映射视频帧包括第二后向映射视频帧和第二前向映射视频帧;
利用所述第二映射视频帧得到待***视频帧包括:对所述第二后向映射视频帧和第二前向映射视频帧进行融合处理,得到待***视频帧。
7.一种视频插帧装置,其特征在于,该装置包括:
视频获取单元,被配置为获取待处理的第一帧率视频帧序列;
字幕识别单元,被配置为对所述第一帧率视频帧序列中的各视频帧分别进行字幕区域识别,得到各视频帧的字幕区域;
运动估计单元,被配置为分别对第一帧率视频帧序列的各待***视频帧进行运动估计,得到各待***视频帧指向参考帧的第一运动矢量,所述参考帧为待***视频帧的前一视频帧和/或后一视频帧;
运动保护单元,被配置为将所述各待***视频帧指向参考帧的第一运动矢量中,参考帧的字幕区域对应的运动矢量设置为0,得到所述各待***视频帧指向参考帧的第二运动矢量;
***帧预测单元,被配置为利用所述各待***视频帧指向参考帧的第二运动矢量预测各待***视频帧,以得到第二帧率视频帧序列,具体包括:依据所述第二运动矢量将参考帧向待***视频帧进行映射得到第一映射视频帧;依据所述第二运动矢量将参考帧的字幕区域向待***视频帧进行映射,得到字幕映射区域,确定所述字幕映射区域与所述参考帧的字幕区域的差异区域,对所述第一映射视频帧中的所述差异区域进行背景填充,得到第二映射视频帧;其中,所述第二帧率大于所述第一帧率。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至6任一项所述的方法的步骤。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行权利要求1至6任一项所述的方法的步骤。
CN202210821122.1A 2022-07-13 2022-07-13 视频插帧方法及装置 Active CN115334335B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210821122.1A CN115334335B (zh) 2022-07-13 2022-07-13 视频插帧方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210821122.1A CN115334335B (zh) 2022-07-13 2022-07-13 视频插帧方法及装置

Publications (2)

Publication Number Publication Date
CN115334335A CN115334335A (zh) 2022-11-11
CN115334335B true CN115334335B (zh) 2024-01-09

Family

ID=83917095

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210821122.1A Active CN115334335B (zh) 2022-07-13 2022-07-13 视频插帧方法及装置

Country Status (1)

Country Link
CN (1) CN115334335B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116684668B (zh) * 2023-08-03 2023-10-20 湖南马栏山视频先进技术研究院有限公司 一种自适应的视频帧处理方法及播放终端
CN116886996B (zh) * 2023-09-06 2023-12-01 浙江富控创联技术有限公司 一种数字乡村多媒体显示屏广播***

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101615255A (zh) * 2009-07-21 2009-12-30 北京大学 一种视频文字多帧融合的方法
CN101815197A (zh) * 2009-02-23 2010-08-25 佳能株式会社 图像显示***、图像显示设备和图像显示设备的控制方法
CN101902609A (zh) * 2010-07-28 2010-12-01 西安交通大学 一种处理游飞字幕的运动补偿帧频提升方法
CN102577365A (zh) * 2009-09-18 2012-07-11 夏普株式会社 视频显示装置
CN110516517A (zh) * 2018-05-22 2019-11-29 杭州海康威视数字技术股份有限公司 一种基于多帧图像的目标识别方法、装置及设备
CN110933497A (zh) * 2019-12-10 2020-03-27 Oppo广东移动通信有限公司 视频图像数据插帧处理方法及相关设备
CN111369469A (zh) * 2020-03-10 2020-07-03 北京爱笔科技有限公司 图像处理方法、装置及电子设备
CN111582241A (zh) * 2020-06-01 2020-08-25 腾讯科技(深圳)有限公司 视频字幕识别方法、装置、设备及存储介质
CN114648751A (zh) * 2020-12-17 2022-06-21 武汉Tcl集团工业研究院有限公司 一种处理视频字幕的方法、装置、终端及存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101815197A (zh) * 2009-02-23 2010-08-25 佳能株式会社 图像显示***、图像显示设备和图像显示设备的控制方法
CN101615255A (zh) * 2009-07-21 2009-12-30 北京大学 一种视频文字多帧融合的方法
CN102577365A (zh) * 2009-09-18 2012-07-11 夏普株式会社 视频显示装置
CN101902609A (zh) * 2010-07-28 2010-12-01 西安交通大学 一种处理游飞字幕的运动补偿帧频提升方法
CN110516517A (zh) * 2018-05-22 2019-11-29 杭州海康威视数字技术股份有限公司 一种基于多帧图像的目标识别方法、装置及设备
CN110933497A (zh) * 2019-12-10 2020-03-27 Oppo广东移动通信有限公司 视频图像数据插帧处理方法及相关设备
CN111369469A (zh) * 2020-03-10 2020-07-03 北京爱笔科技有限公司 图像处理方法、装置及电子设备
CN111582241A (zh) * 2020-06-01 2020-08-25 腾讯科技(深圳)有限公司 视频字幕识别方法、装置、设备及存储介质
CN114648751A (zh) * 2020-12-17 2022-06-21 武汉Tcl集团工业研究院有限公司 一种处理视频字幕的方法、装置、终端及存储介质

Also Published As

Publication number Publication date
CN115334335A (zh) 2022-11-11

Similar Documents

Publication Publication Date Title
CN115334335B (zh) 视频插帧方法及装置
KR102365521B1 (ko) 비디오 인식 및 훈련 방법과 장치, 전자 기기와 매체
US10796438B2 (en) Method and apparatus for tracking target profile in video
US9681201B2 (en) Comment information generating apparatus and comment information generating method
US10412462B2 (en) Video frame rate conversion using streamed metadata
CN113286194A (zh) 视频处理方法、装置、电子设备及可读存储介质
CN113691733B (zh) 视频抖动检测方法、装置、电子设备和存储介质
CN111898701A (zh) 模型训练、帧图像生成、插帧方法、装置、设备及介质
CN109783684B (zh) 一种视频的情感识别方法、装置、设备及可读存储介质
US20140126818A1 (en) Method of occlusion-based background motion estimation
KR100634671B1 (ko) 고정밀도의 실시간 점진적 장면경계 검출기 및 그 방법
EP4060602A1 (en) Video processing method and video processing apparatus
WO2023103576A1 (zh) 视频处理方法、装置、计算机设备及存储介质
CN111340101B (zh) 稳定性评估方法、装置、电子设备和计算机可读存储介质
CN112380929A (zh) 一种高光片段的获取方法、装置、电子设备和存储介质
CN114758068A (zh) 空间几何信息估计模型的训练方法及装置
CN108509876B (zh) 针对视频的物体检测方法、装置、设备、存储介质及程序
WO2024067512A1 (zh) 视频密集预测方法及其装置
CN111292333A (zh) 用于分割图像的方法和装置
CN115334334B (zh) 视频插帧方法及装置
JP5812808B2 (ja) 画像処理装置及び画像処理方法
CN107993247B (zh) 追踪定位方法、***、介质和计算设备
CN116188535A (zh) 基于光流估计的视频跟踪方法、装置、设备及存储介质
CN115835035A (zh) 图像插帧方法、装置、设备及计算机可读存储介质
CN114066841A (zh) 一种天空检测方法、装置、计算机设备和存储介质

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