CN111491204A - 视频修复方法、装置、电子设备和计算机可读存储介质 - Google Patents

视频修复方法、装置、电子设备和计算机可读存储介质 Download PDF

Info

Publication number
CN111491204A
CN111491204A CN202010304728.9A CN202010304728A CN111491204A CN 111491204 A CN111491204 A CN 111491204A CN 202010304728 A CN202010304728 A CN 202010304728A CN 111491204 A CN111491204 A CN 111491204A
Authority
CN
China
Prior art keywords
frame
repaired
block
motion vector
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.)
Granted
Application number
CN202010304728.9A
Other languages
English (en)
Other versions
CN111491204B (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.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp 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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN202010304728.9A priority Critical patent/CN111491204B/zh
Publication of CN111491204A publication Critical patent/CN111491204A/zh
Priority to PCT/CN2021/076044 priority patent/WO2021208580A1/zh
Application granted granted Critical
Publication of CN111491204B publication Critical patent/CN111491204B/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/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
    • 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/44016Processing 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 splicing one content stream with another content stream, e.g. for substituting a video clip

Landscapes

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

Abstract

本申请涉及一种视频修复方法、装置、计算机设备和存储介质。所述方法包括:获取待修复视频,确定所述待修复视频中的起始帧和结束帧,并确定所述起始帧和所述结束帧之间的待修复帧的数量;基于运动补偿在所述起始帧和所述结束帧之间生成插值帧,所述插值帧的数量与所述待修复帧的数量相同;将所述待修复帧和对应的插值帧进行融合处理,得到目标帧;基于所述起始帧、所述结束帧和所述目标帧生成目标视频。采用本方法能够快速准确地完成视频修复,提高视频修复的效率。

Description

视频修复方法、装置、电子设备和计算机可读存储介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种视频修复方法、装置、电子设备和计算机可读存储介质。
背景技术
随着计算机技术的发展,出现了视频修复技术,通过视频修复技术能够将一些破损的视频片断进行修复,或者对视频中不清晰的图像帧进行修复。但是在现有的视频修复技术,对于需要修复的图像帧,一般是需要人工参与修复,且需要对待修复的图像帧进行标记,大大的增加了视频修复的时间。
发明内容
本申请实施例提供了一种视频修复方法、装置、电子设备、计算机可读存储介质,可以减少视频修复的时间,提高视频修复的效率。
一种视频修复方法,包括:
获取待修复视频,确定所述待修复视频中的起始帧和结束帧,并确定所述起始帧和所述结束帧之间的待修复帧的数量;
基于运动补偿在所述起始帧和所述结束帧之间生成插值帧,所述插值帧的数量与所述待修复帧的数量相同;
将所述待修复帧和对应的插值帧进行融合处理,得到目标帧;
基于所述起始帧、所述结束帧和所述目标帧生成目标视频。
一种视频修复装置,包括:
获取模块,用于获取待修复视频,确定所述待修复视频中的起始帧和结束帧,并确定所述起始帧和所述结束帧之间的待修复帧的数量;
插值帧生成模块,用于基于运动补偿在所述起始帧和所述结束帧之间生成插值帧,所述插值帧的数量与所述待修复帧的数量相同;
融合模块,用于将所述待修复帧和对应的插值帧进行融合处理,得到目标帧;
目标视频生成模块,用于基于所述起始帧、所述结束帧和所述目标帧生成目标视频。
一种电子设备,包括存储器及处理器,所述存储器中储存有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:
获取待修复视频,确定所述待修复视频中的起始帧和结束帧,并确定所述起始帧和所述结束帧之间的待修复帧的数量;
基于运动补偿在所述起始帧和所述结束帧之间生成插值帧,所述插值帧的数量与所述待修复帧的数量相同;
将所述待修复帧和对应的插值帧进行融合处理,得到目标帧;
基于所述起始帧、所述结束帧和所述目标帧生成目标视频。
一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如下步骤:
获取待修复视频,确定所述待修复视频中的起始帧和结束帧,并确定所述起始帧和所述结束帧之间的待修复帧的数量;
基于运动补偿在所述起始帧和所述结束帧之间生成插值帧,所述插值帧的数量与所述待修复帧的数量相同;
将所述待修复帧和对应的插值帧进行融合处理,得到目标帧;
基于所述起始帧、所述结束帧和所述目标帧生成目标视频。
上述视频修复方法、装置、电子设备和计算机可读存储介质,通过获取待修复视频,确定待修复视频中的起始帧和结束帧,并确定起始帧和结束帧之间的待修复帧的数量,基于运动补偿在起始帧和结束帧之间生成插值帧,该插值帧的数量与待修复帧的数量相同,将待修复帧和对应的插值帧进行融合处理,得到目标帧,基于起始帧、结束帧和目标帧生成目标视频,无需人工干预,能够快速准确地完成视频修复,提高视频修复的效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中视频修复方法的应用环境图;
图2为一个实施例中视频修复方法的流程图;
图3为一个实施例中基于运动补偿在起始帧和结束帧之间生成插值帧的流程图;
图4为一个实施例中基于运动补偿在起始帧和结束帧之间生成插值帧的示意图;
图5为一个实施例中通过起始帧中的每个块的前向运动矢量和结束帧中的每个块的后向运动矢量确定插值帧的流程图;
图6为一个实施例中运动矢量穿过待插值帧中的分块的示意图;
图7为一个实施例中通过目标帧替换视频中的待修复帧的示意图;
图8为一个实施例中获取待修复视频的流程图;
图9为一个实施例中视频修复装置的结构框图;
图10为一个实施例中电子设备的内部结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中视频修复方法的应用环境示意图。如图1所示,该应用环境包括终端102和服务器104。其中,终端102通过网络与服务器104通过网络进行通信。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。在本实施例中,终端102可从服务器104获取待修复视频。终端102确定待修复视频中的起始帧和结束帧,并确定起始帧和结束帧之间的待修复帧的数量。接着,终端102基于运动补偿在起始帧和结束帧之间生成插值帧,该插值帧的数量与待修复帧的数量相同。接着,终端102将待修复帧和对应的插值帧进行融合处理,得到目标帧。终端102基于起始帧、结束帧和目标帧生成目标视频。接着,终端102可将该目标视频发送给服务器104进行存储,从而快速准确地完成视频修复,提高视频修复的效率。
图2为一个实施例中视频修复方法的流程图。本实施例中的视频修复方法,以运行于图1中的终端上为例进行描述。如图2所示,该视频修复方法包括步骤202至步骤206。
步骤202,获取待修复视频,确定待修复视频中的起始帧和结束帧,并确定起始帧和结束帧之间的待修复帧的数量。
其中,待修复视频是指存在需要修复的图像帧的视频。该待修复视频可以是完整的视频,也可以是包含起始帧、待修复帧和结束帧的视频片断。起始帧是指该待修复视频中的在时间维度上的第一帧图像帧,结束帧是指在时间维度上的最后一帧图像帧。该起始帧和结束帧都是完整的、不需要修复的图像帧。该起始帧和修复帧可以是在时间维度上相邻的图像帧,也可以是不相邻的图像帧。该修复帧和起始帧可以是在时间维度上相邻的图像帧,也可以是不相邻的图像帧。
具体地,终端获取待修复视频,并确定该待修复视频中的待修复帧,并确定该待修复帧的数量。当该待修复视频中除了待修复帧以外,仅存在两帧图像帧,且该两帧图像帧分别为该待修复视频在时间维度上的第一帧和最后一帧时,表示该待修复视频是视频片断。则终端将该待修复视频在时间维度上的第一帧作为起始帧,将最后一帧作为结束帧。
在本实施例中,当该待修复视频为完整视频,或者当该待修复视频中除了待修复帧以外,还存在超过两帧不需要进行修复的图像帧时,终端可将在时间维度上该待修复图像帧对应的相邻前一帧作为起始帧,将该待修复图像帧对应的相邻后一帧作为结束帧。
步骤204,基于运动补偿在起始帧和结束帧之间生成插值帧,该插值帧的数量与待修复帧的数量相同。
其中,运动补偿是一种描述相邻帧(相邻在这里表示在编码关系上相邻,在播放顺序上两帧未必相邻)差别的方法,具体来说是描述前一帧的每个小块移动到当前帧中的某个位置去的过程。
具体地,终端可确定该起始帧相对于结束帧的前向运动矢量,并确定结束帧相对于起始帧的后向运动矢量。接着,终端基于前向运动矢量和后向运动矢量在该起始帧和结束帧之间生成插值帧。该插值帧的数量和待修复帧的数量相同。
步骤206,将待修复帧和对应的插值帧进行融合处理,得到目标帧。
其中,目标帧是指经过修复后得到的图像帧。
具体地,终端可生成各插值帧后,确定待修复帧对应的插值帧。将该待修复帧的像素和对应的插值帧的像素进行融合处理,得到融合后的图像帧,即该待修复帧对应的目标帧。
当存在多帧待修复图像帧时,确定每个待修复帧对应的插值帧。将每个待修复帧和对应的插值帧进行融合处理,得到每个待修复帧对应的目标帧。
步骤208,基于起始帧、结束帧和目标帧生成目标视频。
具体地,目标视频为完成图像帧修复的视频。终端用目标帧替换待修复视频中对应的待修复帧,从而得到目标视频。
在本实施例中,终端可根据起始帧、结束帧和目标帧,以及对应的时间生成目标视频。
在本实施例中,该目标视频和待修复视频具有相同的帧率和分辨率。其中,帧率(Frame rate)是称为帧的位图图像连续出现在显示器上的频率(速率)。
本实施例中,获取待修复视频,确定待修复视频中的起始帧和结束帧,并确定起始帧和结束帧之间的待修复帧的数量,基于运动补偿在起始帧和结束帧之间生成插值帧,该插值帧的数量与待修复帧的数量相同,将待修复帧和对应的插值帧进行融合处理,得到目标帧,基于起始帧、结束帧和目标帧生成目标视频,无需人工干预,能够快速准确地完成视频修复,提高视频修复的效率和准确性。
在一个实施例中,如图3所示,基于运动补偿在起始帧和结束帧之间生成插值帧,包括:
步骤302,将起始帧和结束帧分别进行分块。
具体地,终端可将该起始帧和结束帧分别进行分块,该起始帧的分块方式可以和结束帧的分块方式相同。例如,都划分为九宫格,划分的分块数量相同。也可以分别使用不同的分块方式,分块的数量也可以不相同。
步骤304,在结束帧中确定与起始帧中每个块对应的匹配块,并确定起始帧中每个块相对于结束帧中的匹配块的前向运动矢量。
其中,运动矢量指的是物体在当前帧图像和前一帧图像中的相对位移,或者当前帧图像和后一帧图像中的相对位移。前向运动矢量是指起始帧中的物体相对于结束帧中同一物体的位移。后向运动矢量是指结束帧中的物体相对于起始帧中同一物体的位移。
具体地,终端可按照起始帧中的块进行遍历。终端在结束帧中查找与该起始帧中的每个块相匹配的分块,从而得到该起始帧中每个块相对于结束帧中的匹配块的前向运动矢量。
步骤306,在起始帧中确定与结束帧中每个块对应的匹配块,并确定结束帧中每个块相对于起始帧中的匹配块的后向运动矢量。
同样地,终端可按照结束帧中的块进行遍历。终端在起始帧中查找与该起始帧中的每个块相匹配的分块,从而得到该结束帧中每个块相对于起始帧中的匹配块的后向运动矢量。
步骤308,通过起始帧中的每个块的前向运动矢量和结束帧中的每个块的后向运动矢量生成插值帧。
具体地,终端可确定起始帧和结束帧之间的时间间隔,将该时间间隔等间距划分为预设数量,每一份作为一个时间相位。接着,终端可根据起始帧中的每个块的前向运动矢量和结束帧中的每个块的后向运动矢量,在每个相位内生成一个插值帧。
在本实施例中,终端可根据待修复帧的数量,将起始帧和结束帧之间的时间间隔划分为与该待修复帧的数量相同的份数,每一份作为一个时间相位。每个时间相位对应一个待修复帧。接着,终端可根据起始帧中的每个块的前向运动矢量和结束帧中的每个块的后向运动矢量,在每个相位内生成一个插值帧。
本实施例中,通过将起始帧和结束帧分别进行分块,在结束帧中确定与起始帧中每个块对应的匹配块,并确定起始帧中每个块相对于结束帧中的匹配块的前向运动矢量,从而能够确定起始帧中的各物体相对于结束帧中同一物体的位移。在起始帧中确定与结束帧中每个块对应的匹配块,从而能够确定结束帧中的各物体相对于起始帧中同一物体的位移。根据起始帧中的物体相对于结束帧中同一物体的位移,以及结束帧中的物体相对于起始帧中同一物体的位移,能够准确地确定同一物体在插值帧的位置,从而准确得到起始帧和结束帧之间的各插值帧。
如图4中的(a)所示,终端在起始帧中的按块进行遍历。针对起始帧中的每个块,终端在结束帧中查找对应的匹配块,从而得到该起始帧中每个块相对于结束帧中的匹配块的前向运动矢量。同样地,终端在结束帧中按块进行遍历。针对结束帧中的每个块,终端在起始帧中查找对应的匹配块,从而得到该结束帧中每个块相对于起始帧中的匹配块的后向运动矢量。
接着,终端根据起始帧中的每个块的前向运动矢量和结束帧中的每个块的后向运动矢量,在起始帧和结束帧中生成插值帧,如图4中的(b)所示。
在一个实施例中,如图5所示,通过起始帧中的每个块的前向运动矢量和结束帧中的每个块的后向运动矢量生成插值帧,包括:
步骤502,通过起始帧中的每个块的前向运动矢量和结束帧中的每个块的后向运动矢量确定待插值帧。
具体地,终端根据起始帧中的每个块的前向运动矢量和结束帧中的每个块的后向运动矢量,在起始帧和结束帧之间生成待插值帧。该待插值帧中的像素未知。
步骤504,针对待插值帧中的每个分块,确定穿过分块的前向运动矢量和后向运动矢量的数量。
具体地,终端将待插值帧划分为多个分块后,对于每个分块,终端确定穿过该分块的前向运动矢量以及穿过该分块的前向运动矢量的数量。终端确定穿过该分块的后向运动矢量以及穿过该分块的后向运动矢量的数量。
步骤506,确定前向运动矢量和后向运动矢量在分块中对应的面积。
具体地,终端可确定穿过该分块的前向运动矢量,并分别确定每个前向运动矢量穿过该分块的面积。穿过该分块的面积即为各前向运动矢量在该分块中对应的面积。接着,终端可确定穿过该分块的后向运动矢量,并分别确定每个后向运动矢量穿过该分块的面积。穿过该分块的面积即为各后向运动矢量在该分块中对应的面积。
例如,待插值帧的分块A被起始帧中的块B、C、D对应的前向运动矢量穿过,则计算块B对应的前向运动矢量在分块A中的面积,计算块C对应的前向运动矢量在分块A中的面积,计算块D对应的前向运动矢量在分块A中的面积。
同时,该待插值帧中的分块A被结束帧中的块b、c、d对应的后向运动矢量穿过,则计算块b对应的后向运动矢量在分块A中的面积,计算块c对应的后向运动矢量在分块A中的面积,计算块d对应的后向运动矢量在分块A中的面积。
如图6所示,为运动矢量穿过待插值帧中的分块的示意图。终端通过确定穿过待插值帧中分块的运动矢量,可以计算出每个运动矢量穿过该分块的面积。
步骤508,根据前向运动矢量和后向运动矢量的数量、以及对应的面积,确定分块的映射运动矢量。
其中,该映射运动矢量是指该分块相对于起始帧和结束帧的运动矢量。
具体地,针对每一个前向运动矢量和对应的面积,终端将前向运动矢量和该前向运动矢量在该分块中对应的面积相乘,得到乘积。针对每一个后向运动矢量和对应的面积,终端将后向运动矢量和该后向运动矢量在该分块中对应的面积相乘,得到乘积。终端可将各前向运动矢量在该分块中的面积和各后向运动矢量在该分块中的面积进行求和。接着,终端将各乘积求和,并计算各乘积求和后的值与各面积求和后的值之间的比值。该比值即为该分块对应的映射运动矢量。按照相同处理方式,终端可得到该待插值帧中每个分块对应的映射运动矢量。
例如,终端可通过下列公式(1)计算分块对应的映射运动矢量:
Figure BDA0002455363360000051
其中,MV是分块对应的映射运动矢量。k为穿过分块的前向运动矢量和后向运动矢量的总数量。n为运动矢量的编号,MVn为第n个运动矢量。Wn为第n个运动矢量穿过该分块的面积。
步骤510,基于映射运动矢量确定分块中的各像素值,根据该待插值帧中各分块中的各像素值生成插值帧。
具体地,终端确定待插值帧中每个分块的映射运动矢量后,对应每个分块,基于分块对应的映射运动矢量确定起始帧中和结束帧中与该分块对应的匹配块,得到两个匹配块。接着,终端可获取该两个匹配块分别对应的权重,以及每个匹配块中各像素点的像素值。接着,终端根据该两个匹配块分别对应的权重,以及每个匹配块中各像素点的像素值,计算出该分块中每个像素点对应的像素值。按照相同的处理方式,得到该待插值帧中各分块中的各像素值。接着,终端将确定各像素值之后的待插值帧作为插值帧。
在本实施例中,当存在多帧待修复帧时,对应生成多帧待插值帧。则按照步骤502至步骤510的处理方式,能够得到每个待插值帧中各像素点对应的像素值,从而得到每个插值帧。
本实施例中,针对待插值帧中的每个分块,确定穿过分块的前向运动矢量和后向运动矢量的数量,确定前向运动矢量和后向运动矢量在分块中对应的面积,以确定起始帧和结束帧中有哪些分块穿过待插值帧中的分块,并且穿过的面积是多少。根据前向运动矢量和后向运动矢量的数量、以及对应的面积,确定分块的映射运动矢量,以明确该分块相对于起始帧和结束帧的运动矢量。基于映射运动矢量确定分块中的各像素值,各分块中的各像素值即为插值帧中的各像素,从而准确生成插值帧。
在一个实施例中,基于映射运动矢量确定分块中的各像素值,包括:
基于映射运动矢量确定在起始帧和结束帧中与分块对应的匹配块;对起始帧和结束帧中与分块对应的匹配块进行权重插值,得到分块中的各像素值。
具体地,终端确定待插值帧中每个分块的映射运动矢量后,对应每个分块,基于分块对应的映射运动矢量确定起始帧中与该分块对应的匹配块,并基于分块对应的映射运动矢量确定结束帧中与该分块对应的匹配块,从而得到两个匹配块。接着,终端可获取该两个匹配块分别对应的权重,以及每个匹配块中各像素点的像素值。接着,终端根据该两个匹配块分别对应的权重,以及每个匹配块中各像素点的像素值,计算出该分块中每个像素点对应的像素值。按照相同的处理方式,得到该待插值帧中各分块中的各像素值。
在本实施例中,终端可通过反距离权重插值计算出待插值帧中各分块中的各像素值。例如,终端可通过公式(2)计算出该起始帧中的匹配块对应的权重和该结束帧中的匹配块对应的权重:
Figure BDA0002455363360000061
其中,wij是第i个未知点与第j个已知点之间的权重值,dij是第i个未知点与第j个已知点之间的距离,dik是第i个未知点与第k个已知点之间的距离,h为幂数。未知点是指待插值帧中分块的像素点,已知点是指起始帧中匹配块的像素点,或者结束帧中匹配块的像素点。
接着,终端可按照反距离权重插值反函数,即P=W-1T计算出待插值帧中的分块的各像素值。如下列公式(3)所示:
Figure BDA0002455363360000062
其中,W=[wij]m×n是权重矩阵,T=[sij]m×n是已知点矩阵,P=[vij]m×n是未知点矩阵。
接着,终端可根据待插值帧中的分块和起始帧中的匹配块计算出该分块中的各像素值。根据待插值帧中的分块和结束帧中的匹配块计算出该分块中的各像素值,从而得到该待插值帧的分块中的一个像素点对应两个像素值。终端确定同一像素点对应的两个像素值的像素均值,将该像素均值作为该像素点的目标像素值,从而得到该待插值帧的分块中的各目标像素值。
本实施例中,基于映射运动矢量确定在起始帧和结束帧中与分块对应的匹配块,对起始帧和结束帧中与分块对应的匹配块进行权重插值,从而能够快速准确计算出分块中的各像素值。
在一个实施例中,在确定穿过分块的前向运动矢量和后向运动矢量的数量之前,还包括:
当分块均没有被前向运动矢量和后向运动矢量穿过时,确定穿过其它分块的前向运动矢量和后向运动矢量与分块之间的距离;将距离最小的运动矢量作为分块对应的运动矢量,运动矢量为前向运动矢量或后向运动矢量。
具体地,当该待插值帧中的分块没有被前向运动矢量穿过,也没有被后向运动矢量穿过时,终端确定穿过其它分块的前向运动矢量与该分块之间的欧式距离。终端确定穿过其它分块的后向运动矢量与该分块之间的欧式距离。该欧式距离即欧几里得度量(euclideanmetric),指在m维空间中两个点之间的真实距离,或者向量的自然长度(即该点到原点的距离)。在二维和三维空间中的欧氏距离就是两点之间的实际距离。接着,终端确定最短的欧式距离对应的运动矢量,并将该最短的欧式距离对应的运动矢量作为该分块对应的运动矢量。
当该最短的欧式距离对应的运动矢量为前向运动矢量时,将该前向运动矢量作为该分块对应的前向运动矢量。当该最短的欧式距离对应的运动矢量为后向运动矢量时,将该后向运动矢量作为该分块对应的后向运动矢量。
在本实施例中,相邻的分块之间的特征最接近,特征的连续性最强。当分块均没有被前向运动矢量和后向运动矢量穿过时,确定穿过其它分块的前向运动矢量和后向运动矢量与分块之间的距离,将距离最小的运动矢量作为分块对应的运动矢量,从而对于没有被运动矢量穿过的分块,可借助欧式距离最短的运动矢量作为该分块的运动矢量。
在一个实施例中,在确定穿过分块的前向运动矢量和后向运动矢量的数量之前,还包括:
当分块均没有被前向运动矢量和后向运动矢量穿过时,确定该插值帧中其它分块与该分块之间的距离;将距离最小的分块对应的运动矢量作为分块对应的运动矢量,运动矢量为前向运动矢量或后向运动矢量。
具体地,当分块均没有被前向运动矢量和后向运动矢量穿过时,终端可计算该待插值帧中其它分块与该分块之间的欧式距离。将各欧式距离进行比较,确定欧式距离最小的分块对应的运动矢量,将该欧式距离最小的分块对应的运动矢量作为没有被前向运动矢量和后向运动矢量穿过的分块对应的运动矢量。
在一个实施例中,将待修复帧和对应的插值帧进行融合处理,得到目标帧,包括:
获取待修复帧的时间相位,确定与待修复帧的时间相位相同的插值帧;将时间相位相同的待修复帧和插值帧进行融合处理,得到待修复帧对应的目标帧。
具体地,终端可根据待修复帧的数量,将起始帧和结束帧之间的时间间隔等间距划分为与该待修复帧的数量相同的份数,每一份作为一个时间相位。每个时间相位对应一个待修复帧。接着,终端可根据起始帧中的每个块的前向运动矢量和结束帧中的每个块的后向运动矢量,在每个相位生成一个插值帧。
接着,终端可获取待修复帧对应的时间相位,并获取插值帧对应的时间相位。终端将各待修复帧对应的时间相位和各插值帧对应的时间相位进行比较。接着,终端确定时间相位相同的待修复帧和插值帧,并将时间相位相同的待修复帧和插值帧进行像素融合处理,得到待修复帧对应的目标帧。
在本实施例中,通过获取待修复帧的时间相位,确定与待修复帧的时间相位相同的插值帧,从而能够准确确定待修复帧对应的插值帧。将时间相位相同的待修复帧和插值帧进行融合处理,以恢复待修复帧中被损坏的区域,从而得到待修复帧对应的目标帧。
在一个实施例中,将时间相位相同的待修复帧和插值帧进行融合处理,得到待修复帧对应的目标帧,包括:
确定时间相位相同的待修复帧的像素和插值帧的像素;将待修复帧的像素和插值帧的像素进行加权融合处理,得到待修复帧对应的目标帧。
具体地,终端确定时间相位相同的待修复帧和插值帧后,确定该待修复帧的像素和对应的插值帧的像素。接着,终端确定该待修复帧和插值帧中相匹配的像素点,并确定相匹配的像素点的像素值。将该相匹配的像素点的像素值进行加权融合处理,得到目标像素值。按照相同的处理方式,可将各时间相位相同的待修复帧的像素和插值帧的像素进行加权融合处理,得到目标像素值。各像素点和对应的目标像素值组成目标帧图像。
本实施例中,通过确定时间相位相同的待修复帧的像素和插值帧的像素,将待修复帧的像素和插值帧的像素进行加权融合处理,以准确恢复待修复帧中损坏的区域,从而修复好的目标帧。
例如,终端可通过下列公式(4)将待修复帧的像素和插值帧的像素进行加权融合:
Figure BDA0002455363360000071
其中,F为目标帧,
Figure BDA0002455363360000072
为待修复帧,
Figure BDA0002455363360000073
为与
Figure BDA0002455363360000074
时间相位相同的插值帧,w为各像素对应的权重,w小于1。M和N为图像帧的分辨率。该权重w可以预先设定,也可以根据插值帧的每个插值块的运动矢量的可信度自适应设定。
在一个实施例中,获取待修复视频,包括:
获取原始视频,确定原始视频中的待修复帧;当待修复帧为单帧时,将单帧待修复帧的相邻前一帧作为起始帧,将单帧待修复帧的相邻后一帧作为结束帧;将起始帧、结束帧和单帧待修复帧作为待修复视频。
其中,原始视频是指图像帧在时间维度上连续的视频,且包含了需要修复的图像帧视频。
具体地,终端可从本地或网络或者从第三设备上获取原始视频。终端可确定该原始视频中需要修复的图像帧,即待修复帧,并确定该待修复帧的数量。当仅存在一帧待修复帧时,终端确定原始视频中该待修复帧的相邻前一帧,即在时间维度上确定该待修复帧的相邻前一帧。将该相邻前一帧作为待修复视频的起始帧。接着,终端确定原始视频中该待修复帧的相邻后一帧,即在时间维度上确定该待修复帧的相邻后一帧。将该相邻后一帧作为待修复视频的结束帧。接着,终端将该起始帧、待修复帧和结束帧组成视频片断,得到待修复视频。
如图7所示,该原始视频中的第1帧为损坏的待修复帧,终端确定第1帧的相邻前一帧作为起始帧,即第0帧。确定第1帧的相邻后一帧作为结束帧,即第2帧。该第0帧和第2帧为未损坏的图像帧。终端将该第0帧、第1帧和第2帧形成待修复视频。通过本实施例的视频修复方法,得到第3帧,该第3帧即为修复好的第1帧。终端用第3帧替换掉待修复视频中的第1帧,根据该第0帧、第3帧和第2帧形成目标视频。进一步地,终端可利用目标视频替换掉原始视频中的第0帧、第1帧和第2帧。或者,终端可用第3帧替换掉原始视频中的第1帧,得到修复好的视频。
本实施例中,通过获取原始视频,确定原始视频中的待修复帧,当待修复帧为单帧时,将单帧待修复帧的相邻前一帧作为起始帧,将单帧待修复帧的相邻后一帧作为结束帧,从而能够将视频中损坏的单帧图像帧筛选出来,并与完好的起始帧、结束帧组成待修复视频,而无需对其它未损坏图像帧进行任何处理,以快速对损坏的单帧进行修复,从而快速完成视频修复。
在一个实施例中,如图8所示,方法还包括:
步骤802,当待修复帧为连续至少两帧时,确定连续至少两帧待修复帧的首帧和尾帧。
具体地,当终端检测出该原始视频中存在连续至少两帧待修复帧时,终端可进一步确定该连续至少两帧待修复帧在时间维度上的首帧和尾帧。首帧是指该连续至少两帧待修复帧在时间维度上的第一帧图像帧,尾帧是指该连续至少两帧待修复帧在时间维度上的最后一帧图像帧。
步骤804,将原始视频中与首帧相邻的前一帧作为起始帧,将原始视频中与尾帧相邻的后一帧作为结束帧;该起始帧和结束帧为原始视频中的非待修复帧。
具体地,终端可确定与该连续至少两帧待修复帧中的首帧的相邻前一帧,即在时间维度上确定该首帧的相邻前一帧。将该相邻前一帧作为待修复视频的起始帧。接着,终端确定该连续至少两帧待修复帧中的尾帧的相邻后一帧,即在时间维度上确定该尾帧的相邻后一帧。将该相邻后一帧作为待修复视频的结束帧。
步骤806,将起始帧、结束帧和连续至少两帧待修复帧作为待修复视频。
具体地,终端按照时间维度将该起始帧、连续至少两帧待修复帧和结束帧组成视频片断,得到待修复视频。
在本实施例中,在将插值帧和对应的待修复帧进行融合时,可将该待修复帧的权重设置为0。
本实施例中,通过当待修复帧为连续至少两帧时,确定连续至少两帧待修复帧的首帧和尾帧,能够筛选出原始视频中的连续损坏的多帧图像帧。将原始视频中与首帧相邻的前一帧作为起始帧,将原始视频中与尾帧相邻的后一帧作为结束帧;该起始帧和结束帧为原始视频中的非待修复帧,使得能够获取与损坏的图像帧特征最接近的完成无损的图像帧。起始帧和结束帧是完好无损的图像帧,并且是与连续损坏的图像帧特征最相近,将起始帧、结束帧和连续至少两帧待修复帧作为待修复视频,基于起始帧和结束帧对待修复帧进行图像修复,使得修复的图像帧更准确。
在一个实施例中,提供了一种视频修复方法,包括:
终端获取原始视频,确定原始视频中的待修复帧。
可选地,当待修复帧为单帧时,终端将单帧待修复帧的相邻前一帧作为起始帧,将单帧待修复帧的相邻后一帧作为结束帧;将起始帧、结束帧和单帧待修复帧作为待修复视频。
可选地,当待修复帧为连续至少两帧时,终端确定连续至少两帧待修复帧的首帧和尾帧;将原始视频中与首帧相邻的前一帧作为起始帧,将原始视频中与尾帧相邻的后一帧作为结束帧;起始帧和结束帧为原始视频中的非待修复帧;将起始帧、结束帧和连续至少两帧待修复帧作为待修复视频。
接着,终端确定待修复视频中的起始帧和结束帧,并确定起始帧和结束帧之间的待修复帧的数量。
进一步地,终端将起始帧和结束帧分别进行分块;在结束帧中确定与起始帧中每个块对应的匹配块,并确定起始帧中每个块相对于结束帧中的匹配块的前向运动矢量。
接着,终端在起始帧中确定与结束帧中每个块对应的匹配块,并确定结束帧中每个块相对于起始帧中的匹配块的后向运动矢量。
接着,终端通过起始帧中的每个块的前向运动矢量和结束帧中的每个块的后向运动矢量确定待插值帧。
接着,终端针对待插值帧中的每个分块,确定穿过分块的前向运动矢量和后向运动矢量的数量。
接着,终端确定前向运动矢量和后向运动矢量在分块中对应的面积。
进一步地,终端根据前向运动矢量和后向运动矢量的数量、以及对应的面积,确定分块的映射运动矢量。
可选地,当分块均没有被前向运动矢量和后向运动矢量穿过时,终端确定穿过其它分块的前向运动矢量和后向运动矢量与分块之间的距离;将距离最小的运动矢量作为分块对应的运动矢量,该运动矢量为前向运动矢量或后向运动矢量;确定穿过分块的前向运动矢量和后向运动矢量的数量;确定前向运动矢量和后向运动矢量在分块中对应的面积;根据前向运动矢量和后向运动矢量的数量、以及对应的面积,确定分块的映射运动矢量。
接着,终端基于映射运动矢量确定在起始帧和结束帧中与分块对应的匹配块。
接着,终端对起始帧和结束帧中与分块对应的匹配块进行权重插值,得到分块中的各像素值。
进一步地,终端根据待插值帧中各分块中的各像素值生成插值帧,该插值帧的数量与待修复帧的数量相同。
接着,终端获取待修复帧的时间相位,确定与待修复帧的时间相位相同的插值帧;确定时间相位相同的待修复帧的像素和插值帧的像素。
进一步地,终端将待修复帧的像素和插值帧的像素进行加权融合处理,得到待修复帧对应的目标帧。
接着,终端基于起始帧、结束帧和目标帧生成目标视频。
本实施例中,通过确定原始视频中存在的待修复帧数量,可确定出起始帧和结束帧,从而筛选出起始帧、待修复帧和结束帧形成待修复视频。通过在结束帧中确定与起始帧中每个块对应的匹配块,并确定起始帧中每个块相对于结束帧中的匹配块的前向运动矢量,从而能够确定起始帧中的各物体相对于结束帧中同一物体的位移。在起始帧中确定与结束帧中每个块对应的匹配块,从而能够确定结束帧中的各物体相对于起始帧中同一物体的位移,从而准确得到起始帧和结束帧之间的各插值帧。
针对待插值帧中的每个分块,确定穿过分块的前向运动矢量和后向运动矢量的数量,确定前向运动矢量和后向运动矢量在分块中对应的面积,根据前向运动矢量和后向运动矢量的数量、以及对应的面积,确定分块的映射运动矢量,以明确该分块相对于起始帧和结束帧的运动矢量,从而能够基于对起始帧和结束帧中与分块对应的匹配块进行权重插值,以快速准确计算出分块中的各像素值,从而得到插值帧。将时间相位相同的待修复帧和插值帧进行融合处理,以恢复待修复帧中被损坏的区域,能够得到待修复帧对应的目标帧,从而准确快速得到修复好的目标视频。采用本实施例的视频修复方法,无需人工干预,能够节省视频修复的时间并提高视频修复是效率和准确性。
应该理解的是,虽然图2-图8的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-图8中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
图9为一个实施例的视频修复装置的结构框图。如图9所示,视频修复装置包括:获取模块902、插入模块904、融合模块906和生成模块908。其中,
获取模块902,用于获取待修复视频,确定待修复视频中的起始帧和结束帧,并确定起始帧和结束帧之间的待修复帧的数量。
插入模块904,用于基于运动补偿在起始帧和结束帧之间生成插值帧,该插值帧的数量与待修复帧的数量相同。
融合模块906,用于将待修复帧和对应的插值帧进行融合处理,得到目标帧。
生成模块908,用于基于起始帧、结束帧和目标帧生成目标视频。
本实施例中,获取待修复视频,确定待修复视频中的起始帧和结束帧,并确定起始帧和结束帧之间的待修复帧的数量,基于运动补偿在起始帧和结束帧之间插入插值帧,该插值帧的数量与待修复帧的数量相同,将待修复帧和对应的插值帧进行融合处理,得到目标帧,基于起始帧、结束帧和目标帧生成目标视频,无需人工干预,能够快速准确地完成视频修复,提高视频修复的效率。
在一个实施例中,该插入模块904还用于:将该起始帧和该结束帧分别进行分块;在该结束帧中确定与该起始帧中每个块对应的匹配块,并确定该起始帧中每个块相对于该结束帧中的匹配块的前向运动矢量;在该起始帧中确定与该结束帧中每个块对应的匹配块,并确定该结束帧中每个块相对于该起始帧中的匹配块的后向运动矢量;通过该起始帧中的每个块的前向运动矢量和该结束帧中的每个块的后向运动矢量生成插值帧。
本实施例中,通过将起始帧和结束帧分别进行分块,在结束帧中确定与起始帧中每个块对应的匹配块,并确定起始帧中每个块相对于结束帧中的匹配块的前向运动矢量,从而能够确定起始帧中的各物体相对于结束帧中同一物体的位移。在起始帧中确定与结束帧中每个块对应的匹配块,从而能够确定结束帧中的各物体相对于起始帧中同一物体的位移。根据起始帧中的物体相对于结束帧中同一物体的位移,以及结束帧中的物体相对于起始帧中同一物体的位移,能够准确地确定同一物体在插值帧的位置,从而准确得到起始帧和结束帧之间的各插值帧。
在一个实施例中,该插入模块904还用于:通过起始帧中的每个块的前向运动矢量和结束帧中的每个块的后向运动矢量确定待插值帧;针对待插值帧中的每个分块,确定穿过该分块的前向运动矢量和后向运动矢量的数量;确定该前向运动矢量和该后向运动矢量在该分块中对应的面积;根据该前向运动矢量和该后向运动矢量的数量、以及对应的面积,确定该分块的映射运动矢量;基于该映射运动矢量确定该分块中的各像素值,根据该待插值帧中各分块中的各像素值生成插值帧。
本实施例中,针对待插值帧中的每个分块,确定穿过分块的前向运动矢量和后向运动矢量的数量,确定前向运动矢量和后向运动矢量在分块中对应的面积,以确定起始帧和结束帧中有哪些分块穿过待插值帧中的分块,并且穿过的面积是多少。根据前向运动矢量和后向运动矢量的数量、以及对应的面积,确定分块的映射运动矢量,以明确该分块相对于起始帧和结束帧的运动矢量。基于映射运动矢量确定分块中的各像素值,各分块中的各像素值即为插值帧中的各像素,从而准确生成插值帧。
在一个实施例中,该插入模块904还用于:基于该映射运动矢量确定在该起始帧和该结束帧中与该分块对应的匹配块;对该起始帧和该结束帧中与该分块对应的匹配块进行权重插值,得到该分块中的各像素值。
本实施例中,基于映射运动矢量确定在起始帧和结束帧中与分块对应的匹配块,对起始帧和结束帧中与分块对应的匹配块进行权重插值,从而能够快速准确计算出分块中的各像素值。
在一个实施例中,该插入模块904还用于:当该分块均没有被前向运动矢量和后向运动矢量穿过时,确定穿过其它分块的前向运动矢量和后向运动矢量与该分块之间的距离;将该距离最小的运动矢量作为该分块对应的运动矢量,该运动矢量为前向运动矢量或后向运动矢量。
在本实施例中,相邻的分块之间的特征最接近,特征的连续性最强。当分块均没有被前向运动矢量和后向运动矢量穿过时,确定穿过其它分块的前向运动矢量和后向运动矢量与分块之间的距离,将距离最小的运动矢量作为分块对应的运动矢量,从而对于没有被运动矢量穿过的分块,可借助欧式距离最短的运动矢量作为该分块的运动矢量。
在一个实施例中,该融合模块906还用于:获取该待修复帧的时间相位,确定与该待修复帧的时间相位相同的插值帧;将时间相位相同的待修复帧和插值帧进行融合处理,得到该待修复帧对应的目标帧。
在本实施例中,通过获取待修复帧的时间相位,确定与待修复帧的时间相位相同的插值帧,从而能够准确确定待修复帧对应的插值帧。将时间相位相同的待修复帧和插值帧进行融合处理,以恢复待修复帧中被损坏的区域,从而得到待修复帧对应的目标帧。
在一个实施例中,该融合模块906还用于:确定时间相位相同的待修复帧的像素和插值帧的像素;将该待修复帧的像素和该插值帧的像素进行加权融合处理,得到该待修复帧对应的目标帧。
本实施例中,通过确定时间相位相同的待修复帧的像素和插值帧的像素,将待修复帧的像素和插值帧的像素进行加权融合处理,以准确恢复待修复帧中损坏的区域,从而修复好的目标帧。
在一个实施例中,该获取模块902还用于:获取原始视频,确定该原始视频中的待修复帧;当该待修复帧为单帧时,将单帧待修复帧的相邻前一帧作为起始帧,将该单帧待修复帧的相邻后一帧作为结束帧;将该起始帧、该结束帧和该单帧待修复帧作为待修复视频。
本实施例中,通过获取原始视频,确定原始视频中的待修复帧,当待修复帧为单帧时,将单帧待修复帧的相邻前一帧作为起始帧,将单帧待修复帧的相邻后一帧作为结束帧,从而能够将视频中损坏的单帧图像帧筛选出来,并与完好的起始帧、结束帧组成待修复视频,而无需对其它未损坏图像帧进行任何处理,以快速对损坏的单帧进行修复,从而快速完成视频修复。
在一个实施例中,该获取模块902还用于:当该待修复帧为连续至少两帧时,确定该连续至少两帧待修复帧的首帧和尾帧;将该原始视频中与该首帧相邻的前一帧作为起始帧,将该原始视频中与该尾帧相邻的后一帧作为结束帧;该起始帧和该结束帧为该原始视频中的非待修复帧;将该起始帧、该结束帧和该连续至少两帧待修复帧作为待修复视频。
本实施例中,通过当待修复帧为连续至少两帧时,确定连续至少两帧待修复帧的首帧和尾帧,能够筛选出原始视频中的连续损坏的多帧图像帧。将原始视频中与首帧相邻的前一帧作为起始帧,将原始视频中与尾帧相邻的后一帧作为结束帧;该起始帧和结束帧为原始视频中的非待修复帧,使得能够获取与损坏的图像帧特征最接近的完成无损的图像帧。起始帧和结束帧是完好无损的图像帧,并且是与连续损坏的图像帧特征最相近,将起始帧、结束帧和连续至少两帧待修复帧作为待修复视频,基于起始帧和结束帧对待修复帧进行图像修复,使得修复的图像帧更准确。
上述视频修复装置中各个模块的划分仅用于举例说明,在其他实施例中,可将视频修复装置按照需要划分为不同的模块,以完成上述视频修复装置的全部或部分功能。
关于视频修复装置的具体限定可以参见上文中对于视频修复方法的限定,在此不再赘述。上述视频修复装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
图10为一个实施例中电子设备的内部结构示意图。如图10所示,该电子设备包括通过系统总线连接的处理器和存储器。其中,该处理器用于提供计算和控制能力,支撑整个电子设备的运行。在本实施例中,该处理器用于获取待修复视频,确定待修复视频中的起始帧和结束帧,并确定起始帧和结束帧之间的待修复帧的数量;基于运动补偿在起始帧和结束帧之间生成插值帧,插值帧的数量与待修复帧的数量相同;将待修复帧和对应的插值帧进行融合处理,得到目标帧;基于起始帧、结束帧和目标帧生成目标视频。存储器可包括非易失性存储介质及内存储器。非易失性存储介质存储有操作系统和计算机程序。该存储器中还存储了待修复视频、修复过程中产生的数据以及目标视频等。该计算机程序可被处理器所执行,以用于实现以下各个实施例所提供的一种视频修复方法。内存储器为非易失性存储介质中的操作系统计算机程序提供高速缓存的运行环境。该电子设备可以是手机、平板电脑、PDA(Personal Digital Assistant,个人数字助理)、POS(Point of Sales,销售终端)、车载电脑、穿戴式设备等任意终端设备。
本申请实施例中提供的视频修复装置中的各个模块的实现可为计算机程序的形式。该计算机程序可在终端或服务器上运行。该计算机程序构成的程序模块可存储在电子设备的存储器上。该计算机程序被处理器执行时,实现本申请实施例中所描述方法的步骤。
本申请实施例还提供了一种计算机可读存储介质。一个或多个包含计算机可执行指令的非易失性计算机可读存储介质,当所述计算机可执行指令被一个或多个处理器执行时,使得所述处理器执行视频修复方法的步骤。
一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行视频修复方法。
本申请所使用的对存储器、存储、数据库或其它介质的任何引用可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM),它用作外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDR SDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (12)

1.一种视频修复方法,其特征在于,包括:
获取待修复视频,确定所述待修复视频中的起始帧和结束帧,并确定所述起始帧和所述结束帧之间的待修复帧的数量;
基于运动补偿在所述起始帧和所述结束帧之间生成插值帧,所述插值帧的数量与所述待修复帧的数量相同;
将所述待修复帧和对应的插值帧进行融合处理,得到目标帧;
基于所述起始帧、所述结束帧和所述目标帧生成目标视频。
2.根据权利要求1所述的方法,其特征在于,所述基于运动补偿在所述起始帧和所述结束帧之间生成插值帧,包括:
将所述起始帧和所述结束帧分别进行分块;
在所述结束帧中确定与所述起始帧中每个块对应的匹配块,并确定所述起始帧中每个块相对于所述结束帧中的匹配块的前向运动矢量;
在所述起始帧中确定与所述结束帧中每个块对应的匹配块,并确定所述结束帧中每个块相对于所述起始帧中的匹配块的后向运动矢量;
通过所述起始帧中的每个块的前向运动矢量和所述结束帧中的每个块的后向运动矢量生成插值帧。
3.根据权利要求2所述的方法,其特征在于,所述通过所述起始帧中的每个块的前向运动矢量和所述结束帧中的每个块的后向运动矢量生成插值帧,包括:
通过所述起始帧中的每个块的前向运动矢量和所述结束帧中的每个块的后向运动矢量确定待插值帧;
针对所述待插值帧中的每个分块,确定穿过所述分块的前向运动矢量和后向运动矢量的数量;
确定所述前向运动矢量和所述后向运动矢量在所述分块中对应的面积;
根据所述前向运动矢量和所述后向运动矢量的数量、以及对应的面积,确定所述分块的映射运动矢量;
基于所述映射运动矢量确定所述分块中的各像素值,根据所述待插值帧中各分块中的各像素值生成插值帧。
4.根据权利要求3所述的方法,其特征在于,所述基于所述映射运动矢量确定所述分块中的各像素值,包括:
基于所述映射运动矢量确定在所述起始帧和所述结束帧中与所述分块对应的匹配块;
对所述起始帧和所述结束帧中与所述分块对应的匹配块进行权重插值,得到所述分块中的各像素值。
5.根据权利要求3所述的方法,其特征在于,在所述确定穿过所述分块的前向运动矢量和后向运动矢量的数量之前,还包括:
当所述分块均没有被前向运动矢量和后向运动矢量穿过时,确定穿过其它分块的前向运动矢量和后向运动矢量与所述分块之间的距离;
将所述距离最小的运动矢量作为所述分块对应的运动矢量,所述运动矢量为前向运动矢量或后向运动矢量。
6.根据权利要求1所述的方法,其特征在于,所述将所述待修复帧和对应的插值帧进行融合处理,得到目标帧,包括:
获取所述待修复帧的时间相位,确定与所述待修复帧的时间相位相同的插值帧;
将时间相位相同的待修复帧和插值帧进行融合处理,得到所述待修复帧对应的目标帧。
7.根据权利要求6所述的方法,其特征在于,所述将时间相位相同的待修复帧和插值帧进行融合处理,得到所述待修复帧对应的目标帧,包括:
确定时间相位相同的待修复帧的像素和插值帧的像素;
将所述待修复帧的像素和所述插值帧的像素进行加权融合处理,得到所述待修复帧对应的目标帧。
8.根据权利要求1所述的方法,其特征在于,所述获取待修复视频,包括:
获取原始视频,确定所述原始视频中的待修复帧;
当所述待修复帧为单帧时,将单帧待修复帧的相邻前一帧作为起始帧,将所述单帧待修复帧的相邻后一帧作为结束帧;
将所述起始帧、所述结束帧和所述单帧待修复帧作为待修复视频。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
当所述待修复帧为连续至少两帧时,确定所述连续至少两帧待修复帧的首帧和尾帧;
将所述原始视频中与所述首帧相邻的前一帧作为起始帧,将所述原始视频中与所述尾帧相邻的后一帧作为结束帧;所述起始帧和所述结束帧为所述原始视频中的非待修复帧;
将所述起始帧、所述结束帧和所述连续至少两帧待修复帧作为待修复视频。
10.一种视频修复装置,其特征在于,包括:
获取模块,用于获取待修复视频,确定所述待修复视频中的起始帧和结束帧,并确定所述起始帧和所述结束帧之间的待修复帧的数量;
插值帧生成模块,用于基于运动补偿在所述起始帧和所述结束帧之间生成插值帧,所述插值帧的数量与所述待修复帧的数量相同;
融合模块,用于将所述待修复帧和对应的插值帧进行融合处理,得到目标帧;
目标视频生成模块,用于基于所述起始帧、所述结束帧和所述目标帧生成目标视频。
11.一种电子设备,包括存储器及处理器,所述存储器中储存有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至9中任一项所述的方法的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至9中任一项所述的方法的步骤。
CN202010304728.9A 2020-04-17 2020-04-17 视频修复方法、装置、电子设备和计算机可读存储介质 Active CN111491204B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010304728.9A CN111491204B (zh) 2020-04-17 2020-04-17 视频修复方法、装置、电子设备和计算机可读存储介质
PCT/CN2021/076044 WO2021208580A1 (zh) 2020-04-17 2021-02-08 视频修复方法、装置、电子设备和计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010304728.9A CN111491204B (zh) 2020-04-17 2020-04-17 视频修复方法、装置、电子设备和计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN111491204A true CN111491204A (zh) 2020-08-04
CN111491204B CN111491204B (zh) 2022-07-12

Family

ID=71812894

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010304728.9A Active CN111491204B (zh) 2020-04-17 2020-04-17 视频修复方法、装置、电子设备和计算机可读存储介质

Country Status (2)

Country Link
CN (1) CN111491204B (zh)
WO (1) WO2021208580A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021208580A1 (zh) * 2020-04-17 2021-10-21 Oppo广东移动通信有限公司 视频修复方法、装置、电子设备和计算机可读存储介质
CN113613088A (zh) * 2021-08-02 2021-11-05 安徽文香科技有限公司 一种mp4文件的修复方法、装置、电子设备及可读存储介质
CN114268832A (zh) * 2021-12-20 2022-04-01 杭州逗酷软件科技有限公司 一种修复方法、电子设备及计算机存储介质
CN114268832B (zh) * 2021-12-20 2024-05-28 杭州逗酷软件科技有限公司 一种修复方法、电子设备及计算机存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117274106B (zh) * 2023-10-31 2024-04-09 荣耀终端有限公司 一种照片修复的方法、电子设备及相关介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6583823B1 (en) * 1997-08-01 2003-06-24 Sony Corporation Methods, apparatuses, and mediums for repairing a pixel associated with motion-picture processes
CN1592398A (zh) * 2003-03-28 2005-03-09 株式会社东芝 帧插值方法和使用该方法的图像显示系统
CN1756312A (zh) * 2004-09-30 2006-04-05 中国科学院计算技术研究所 一种具有运动前景的视频合成方法
CN101375315A (zh) * 2006-01-27 2009-02-25 图象公司 数字重制2d和3d运动画面以呈现提高的视觉质量的方法和系统
CN101827272A (zh) * 2009-03-06 2010-09-08 株式会社日立制作所 视频错误修复装置
CN103402098A (zh) * 2013-08-19 2013-11-20 武汉大学 一种基于图像插值的视频插帧方法
CN106791279A (zh) * 2016-12-30 2017-05-31 中国科学院自动化研究所 基于遮挡检测的运动补偿方法及系统
CN108389217A (zh) * 2018-01-31 2018-08-10 华东理工大学 一种基于梯度域混合的视频合成方法
CN109005342A (zh) * 2018-08-06 2018-12-14 Oppo广东移动通信有限公司 全景拍摄方法、装置和成像设备
CN109922231A (zh) * 2019-02-01 2019-06-21 重庆爱奇艺智能科技有限公司 一种用于生成视频的插帧图像的方法和装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008244846A (ja) * 2007-03-27 2008-10-09 Toshiba Corp フレーム補間装置及びその方法
KR101498124B1 (ko) * 2008-10-23 2015-03-05 삼성전자주식회사 움직임 궤적을 이용한 프레임률 향상 장치 및 방법
JP5645636B2 (ja) * 2010-12-16 2014-12-24 三菱電機株式会社 フレーム補間装置及び方法
JP5550794B2 (ja) * 2011-11-18 2014-07-16 三菱電機株式会社 画像処理装置及び方法、並びに画像表示装置及び方法
EP3111630B1 (en) * 2014-03-28 2021-06-02 Huawei Technologies Co., Ltd. Method and device for generating a motion-compensated video frame
CN110856048B (zh) * 2019-11-21 2021-10-08 北京达佳互联信息技术有限公司 视频修复方法、装置、设备及存储介质
CN111491204B (zh) * 2020-04-17 2022-07-12 Oppo广东移动通信有限公司 视频修复方法、装置、电子设备和计算机可读存储介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6583823B1 (en) * 1997-08-01 2003-06-24 Sony Corporation Methods, apparatuses, and mediums for repairing a pixel associated with motion-picture processes
CN1592398A (zh) * 2003-03-28 2005-03-09 株式会社东芝 帧插值方法和使用该方法的图像显示系统
CN1756312A (zh) * 2004-09-30 2006-04-05 中国科学院计算技术研究所 一种具有运动前景的视频合成方法
CN101375315A (zh) * 2006-01-27 2009-02-25 图象公司 数字重制2d和3d运动画面以呈现提高的视觉质量的方法和系统
CN101827272A (zh) * 2009-03-06 2010-09-08 株式会社日立制作所 视频错误修复装置
CN103402098A (zh) * 2013-08-19 2013-11-20 武汉大学 一种基于图像插值的视频插帧方法
CN106791279A (zh) * 2016-12-30 2017-05-31 中国科学院自动化研究所 基于遮挡检测的运动补偿方法及系统
CN108389217A (zh) * 2018-01-31 2018-08-10 华东理工大学 一种基于梯度域混合的视频合成方法
CN109005342A (zh) * 2018-08-06 2018-12-14 Oppo广东移动通信有限公司 全景拍摄方法、装置和成像设备
CN109922231A (zh) * 2019-02-01 2019-06-21 重庆爱奇艺智能科技有限公司 一种用于生成视频的插帧图像的方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
贾茜等: "一种带图像修补的运动补偿视频插帧方法", 《四川大学学报(工程科学版)》, no. 03, 20 May 2015 (2015-05-20) *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021208580A1 (zh) * 2020-04-17 2021-10-21 Oppo广东移动通信有限公司 视频修复方法、装置、电子设备和计算机可读存储介质
CN113613088A (zh) * 2021-08-02 2021-11-05 安徽文香科技有限公司 一种mp4文件的修复方法、装置、电子设备及可读存储介质
CN114268832A (zh) * 2021-12-20 2022-04-01 杭州逗酷软件科技有限公司 一种修复方法、电子设备及计算机存储介质
CN114268832B (zh) * 2021-12-20 2024-05-28 杭州逗酷软件科技有限公司 一种修复方法、电子设备及计算机存储介质

Also Published As

Publication number Publication date
CN111491204B (zh) 2022-07-12
WO2021208580A1 (zh) 2021-10-21

Similar Documents

Publication Publication Date Title
CN111491204B (zh) 视频修复方法、装置、电子设备和计算机可读存储介质
CN110517278B (zh) 图像分割和图像分割网络的训练方法、装置和计算机设备
CN111179177B (zh) 图像重建模型训练方法、图像重建方法、设备及介质
US9014463B2 (en) System for real-time stereo matching
US11443481B1 (en) Reconstructing three-dimensional scenes portrayed in digital images utilizing point cloud machine-learning models
CN111881737B (zh) 年龄预测模型的训练方法及装置、年龄预测方法及装置
CN111754429A (zh) 运动矢量后处理方法和装置、电子设备及存储介质
CN110555526A (zh) 神经网络模型训练方法、图像识别方法和装置
CN111614911B (zh) 图像生成方法和装置、电子设备及存储介质
CN113808064A (zh) 图像融合方法、装置、电子设备和介质
CN110457361B (zh) 特征数据获取方法、装置、计算机设备和存储介质
CN111586321A (zh) 视频生成方法、装置、电子设备和计算机可读存储介质
CN111711823B (zh) 运动矢量处理方法和装置、电子设备及存储介质
CN110570487B (zh) 欠采样模型生成方法、图像重建方法、装置和计算机设备
CN112083698A (zh) 一种基于数字孪生模型的产线实时控制方法和装置
CN110909669A (zh) 基于图像检测的地下电缆故障确定方法和装置
US20110194610A1 (en) Motion-Vector Estimation
CN111462021B (zh) 图像处理方法、装置、电子设备和计算机可读存储介质
CN112446951B (zh) 三维重建方法、装置、电子设备及计算机存储介质
CN113674232A (zh) 图像噪声预估方法、装置、电子设备和存储介质
CN111178024B (zh) 数据表拼接方法、装置、计算机设备和存储介质
CN108846856B (zh) 图片特征点的跟踪方法和跟踪装置
CN111311731B (zh) 基于数字投影的随机灰度图生成方法、装置和计算机设备
CN110427816B (zh) 物体检测方法、装置、计算机设备和存储介质
CN111683256B (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