CN109891891A - 使用流式元数据的视频帧速率转换 - Google Patents

使用流式元数据的视频帧速率转换 Download PDF

Info

Publication number
CN109891891A
CN109891891A CN201780066852.2A CN201780066852A CN109891891A CN 109891891 A CN109891891 A CN 109891891A CN 201780066852 A CN201780066852 A CN 201780066852A CN 109891891 A CN109891891 A CN 109891891A
Authority
CN
China
Prior art keywords
frame
metadata
interpolation
interpolated parameter
motion vector
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.)
Pending
Application number
CN201780066852.2A
Other languages
English (en)
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.)
ATI Technologies ULC
Original Assignee
ATI Technologies ULC
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 ATI Technologies ULC filed Critical ATI Technologies ULC
Publication of CN109891891A publication Critical patent/CN109891891A/zh
Pending legal-status Critical Current

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/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/521Processing of motion vectors for estimating the reliability of the determined motion vectors or motion vector field, e.g. for smoothing the motion vector field or for correcting motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/87Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving scene cut or scene change detection in combination with video compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • 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/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • 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/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/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/553Motion estimation dealing with occlusions

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Television Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

一种视频服务器(130,305,405,505,605)生成表示第一帧(200)的部分的内插参数(240‑244)的元数据(530,535),所述第一帧(200)表示包括所述第一帧的帧流(315,335,415)中的场景(110)。所述内插参数用于生成表示在所述帧流中的在所述第一帧之后且在第二帧之前的所述场景的至少一个内插帧(205)。所述视频服务器将所述元数据并入到所述流中并传输包括多路复用的元数据的所述流。一种视频客户端(135,310,410,510,610)接收表示包括元数据的帧流的第一帧。所述视频客户端基于所述第一帧和所述元数据生成表示在所述帧流中的在所述第一帧之后且在第二帧之前的场景的一个或多个内插帧(205)。所述视频客户端显示所述第一帧、所述一个或多个内插帧和所述第二帧。

Description

使用流式元数据的视频帧速率转换
背景技术
帧速率指示由摄像机捕获或由诸如电影放映机、电视、数字显示器等装置显示帧(其通常还被称为图像或场)的速率。例如,常规电影摄像机以24帧每秒(FPS)的速率捕获帧,而常规电影放映机以24FPS的相同速率投射帧。一些数字成像装置可以更高的帧速率(诸如30FPS、48FPS、60FPS和更高)捕获帧。数字显示器(诸如高清晰度电视(HDTV))能够以更高的帧速率(诸如60FPS和更高)显示帧。由于图像捕获装置的帧速率通常与显示装置的帧速率不同,因此显示装置使用帧速率转换来修改所捕获帧的帧速率以匹配显示装置的帧速率。例如,通过在对应于五个所显示帧的持续时间内显示两个所捕获帧,以24FPS的速率捕获的帧可以60FPS来显示。这被称为3:2转换,因为两个相继捕获的帧A和B分别重复三次和两次,以形成五个所显示帧的序列:AAABB。通过重复所捕获帧来执行帧速率上转换的优点是相对简单,但已知引入不期望的视觉效果,诸如抖动和模糊。
附图说明
通过参考附图,可更好地理解本公开,并且本公开的许多特征和优点对本领域技术人员变得显而易见。在不同附图中使用的相同附图标号指示类似或完全相同的项目。
图1是根据一些实施方案的视频获取和显示系统的图示。
图2是示出根据一些实施方案的视频帧和基于运动矢量所生成的内插帧的图示。
图3是示出根据一些实施方案的包括视频服务器和视频客户端的视频处理系统的第一实例的框图。
图4是示出根据一些实施方案的包括视频服务器和视频客户端的视频处理系统的第二实例的框图。
图5是根据一些实施方案的示出视频帧、元数据和内插帧的视频处理系统的框图。
图6是根据一些实施方案的视频处理系统的框图,所述视频处理系统包括用于从视频帧生成元数据的视频服务器以及用于基于所述元数据和视频帧生成内插帧的视频客户端。
图7是包括根据一些实施方案显示图像的屏幕的图示,可对所述图像进行搜索以确定与图像中的对象相关联的运动矢量。
具体实施方式
支持高帧速率(诸如60FPS)的视频显示装置通过(通常基于所接收帧的部分的运动矢量)在所接收的帧之间进行内插对从视频服务器接收的较低帧速率流执行视频速率上转换。为确定运动矢量,将以24FPS的帧速率捕获的帧细分成包括一个或多个像素的部分。将第一帧中的每个部分与后续(第二)帧中的对应部分进行比较,所述对应部分从第一帧中的部分的位置偏移达由候选运动矢量指示的距离。针对表示第一帧的部分的可能运动的一组候选运动矢量执行类似的比较。选择产生第一帧中的部分与第二帧中的偏移部分之间的最佳匹配的运动矢量作为表示第一帧中的部分的运动的运动矢量。然后,针对第一帧的每个部分重复运动矢量计算,以确定第一帧的运动矢量场。视频显示装置使用运动矢量场来生成估计帧,以替换常规帧速率转换中所用的重复帧。例如,从24FPS到60FPS的帧速率上转换可表示为AA′A″BB′,其中A′是通过对帧A进行内插所生成的第一估计帧,A″是通过对帧A进行内插所生成的第二估计帧,并且B′是通过对帧B进行内插所生成的估计帧。然而,视频帧速率上转换是计算密集型的,这显著增加了视频显示装置的功率使用,并且将帧速率上转换的可用性限于具有足够的计算能力以执行对运动矢量场的强力计算的视频显示装置。
通过在视频服务器处对流中的帧执行运动估计,然后将帧与表示帧的运动矢量场的元数据一起提供给视频显示装置,可降低视频显示装置的功耗,同时还允许计算能力较弱的视频显示装置受益于视频帧速率上转换。在一些实施方案中,元数据还包括运动矢量场中的运动矢量的置信度测度或指示以下的标记:(0)不基于运动矢量执行内插,(1)仅在时间上前向执行内插,(2)仅在时间上后向执行内插,或(3)在时间上双向执行内插。视频服务器以第一帧速率提供流中的帧,并将元数据多路复用或以其他方式并入到流中。视频服务器的一些实施方案还被配置来对帧执行场景变化检测并且提供指示在帧中是否检测到场景变化的附加元数据。使用运动矢量处理来标识与相邻运动矢量意外不同的离群值运动矢量,例如,它们指向相反方向,或具有与相邻运动矢量的平均值大不相同的量值。可忽略离群值运动矢量或基于相邻运动矢量的值对其进行修改。可使用遮挡检测来标识受遮挡影响的帧的部分的运动矢量,使得不基于被遮挡运动矢量执行内插,仅在时间上前向执行内插,仅在时间上后向执行内插,或者在时间上双向执行内插。在一些实施方案中,运动矢量处理和遮挡检测由视频服务器执行,所述视频服务器生成表示帧中的离群值运动矢量或被遮挡运动矢量的元数据,并且将元数据与帧一起提供。视频显示装置接收流中的帧以及对应的元数据,并且通过基于元数据对帧进行内插来使用元数据生成估计帧。估计帧用于流中的帧的从第一帧速率到第二(更高的)帧速率的帧速率上转换。
图1是根据一些实施方案的视频获取和显示系统100的图示。系统100包括视频获取装置105,诸如视频摄像机。视频获取装置105可以是独立的装置,或者视频获取装置105可集成到另一计算装置(诸如台式计算机、膝上型计算机、平板计算机、智能电话等)中。视频获取装置105获取场景110的图像序列。在所示实施方案中,场景110包括运动场115、人120和球125。然而,场景110可以是能够由视频获取装置105监测的任何场景。由视频获取装置105捕获的图像表示为帧中的像素的值。视频获取装置105基于所捕获图像以一定帧速率(诸如24帧每秒(FPS)或30FPS)生成帧。
将由视频获取装置105生成的帧提供给视频服务器130,所述视频服务器130被配置来(至少暂时地)存储帧并例如,经由居间网络140将帧提供给一个或多个视频客户端135。例如,场景110包括用户正在视频客户端135的屏幕145上观看的足球或橄榄球比赛的一部分。在此实例中,视频服务器130接收由视频获取装置105生成的帧流并以视频获取装置105的帧速率将帧流传输到视频客户端135。如本文所论述,视频获取装置105的帧速率不一定匹配可用于在视频客户端135处显示由帧流表示的视频的帧速率。例如,视频获取装置105可以24FPS的帧速率获取图像,而视频客户端135可以更高的帧速率(诸如30FPS、48FPS、60FPS和更高)显示帧。
视频客户端135可执行视频帧速率上转换,以将以较低帧速率(诸如24FPS)接收的帧转换为可以较高帧速率(诸如60FPS)显示的更多数目的帧。例如,视频客户端135可通过在从视频服务器130接收的帧之间进行内插来生成附加帧。视频客户端135可基于从所接收帧导出的内插参数(诸如所接收帧的部分的运动矢量,所述运动矢量是使用所接收帧与参考帧的基于块的比较、对所接收帧的光流分析、或所接收帧的各部分的相关性(例如,自相关、卷积、互相关或相位相关)生成的)来执行内插。然而,如本文所论述,生成内插参数是计算密集型的,这增加了视频客户端135处的功耗并且可能限制能够执行视频速率上转换的视频客户端135的类型。
为了减轻视频客户端135的计算负担,视频服务器130的一些实施方案使用从视频获取装置105接收的帧来生成内插参数。例如,视频服务器130可生成一组或多组内插参数,可使用所述内插参数来执行从视频获取装置105所用的帧速率(例如,24FPS)到用于在视频客户端135处显示帧的帧速率(例如,60FPS)的视频速率上转换。使用由视频获取装置105生成的帧流中的第一帧的内插参数来生成表示在由视频获取装置105生成的流中的在第一帧之后且在第二帧之前的场景110的一个或多个内插帧。然后,视频服务器130生成表示内插参数的元数据并将元数据多路复用或以其他方式并入到传输到视频客户端135的帧流中。因此,视频客户端135不需要执行生成内插参数的计算密集型任务。
视频客户端135从视频服务器130接收包括多路复用的元数据的帧流。例如,视频客户端135可接收帧流中的表示场景110的第一帧,所述帧流包括表示第一帧的部分的内插参数的多路复用的元数据。然后,视频客户端135可生成表示在帧流中的在第一帧之后且在第二帧之前的时间间隔处的场景的一个或多个内插帧。例如,视频客户端135可使用第一帧的部分(诸如像素或像素组)的运动矢量来对第一帧中的像素的值进行内插,以生成内插帧中的像素的估计值。内插帧的数目是基于视频获取装置105所用的帧速率与视频客户端135所用的帧速率的比来确定的。例如,视频客户端135可迭代地生成第一帧的两个内插帧和第二帧的一个内插帧,以执行从24FPS到60FPS的3:2帧速率上转换。然后,视频客户端135显示第一帧、对第一帧内插的两个帧、第二帧、对第二帧内插的一个帧等。在一些实施方案中,内插是基于置信度测度或标记来选择性地执行的,如本文所论述。例如,基于元数据中的标记的值,可绕过、在时间上前向执行、在时间上后向执行或在时间上双向执行内插。
图2是示出根据一些实施方案的视频帧200和基于运动矢量所生成的内插帧205的图示。视频帧200表示由图1所示的视频获取装置105的一些实施方案生成的帧。内插帧205表示由图1所示的视频客户端135的一些实施方案生成的内插帧。
视频帧200由具有表示视频获取装置正在监测的场景的值的像素的阵列构成。例如,像素210、211、212(本文中统称为“像素210-212”)具有表示视频帧200中的人215的对应部分的值。又例如,像素220、221具有表示视频帧200中的球225的对应部分的值。再例如,像素230具有表示视频帧200中的运动场235的对应部分的值。
像素与对应运动矢量相关联。例如,像素210-212具有指示对像素210-212估计的运动的幅值和方向的对应运动矢量240、241、242(本文中统称为“运动矢量240-242”)。又例如,像素220、221具有指示对像素220、221估计的运动的幅值和方向的对应运动矢量243、244。像素230具有表示运动场235的静止部分的值,因此不存在与像素230相关联的运动矢量。可替代地,幅值为零且没有方向(或任意方向)的运动矢量可与像素230相关联。如本文所论述,由诸如图1所示的视频服务器130的视频服务器确定像素210-212、220、221、230的运动矢量240-244(以及其他内插参数)。虽然在图2中描绘了单个像素210-212、220、221、230,但在一些实施方案中,像素210-212、220、221、230也表示像素块,诸如16x 16的像素块。视频服务器将表示运动矢量240-244(或其他内插参数)的元数据与表示视频帧200的信息多路复用,然后将多路复用的帧/元数据流传输到诸如图1所示的视频客户端135的视频客户端。
视频客户端使用所接收帧和元数据,例如,通过基于所接收帧和元数据生成内插帧来执行视频速率上转换。在所示实施方案中,内插帧205是通过基于运动矢量240-244对视频帧200中的像素值进行内插以生成内插帧205中的像素值来生成的。例如,像素250、251、252(本文中统称为“像素250-252”)的值是通过使用运动矢量240-242对像素210-212的值进行内插来生成的。又例如,像素253、254的值是通过使用运动矢量243、244对像素220、221的值进行内插来生成的。像素210-212、220、221和像素250-254之间的偏移是由运动矢量240-244的幅值和方向以及视频帧200与内插帧205之间的时间间隔来决定的。像素230在内插帧205中保留来自视频帧200的值。
图3是示出根据一些实施方案的包括视频服务器305和视频客户端310的视频处理系统300的第一实例的框图。使用视频处理系统300来实现图1所示的视频获取和显示系统100的一些实施方案。例如,使用视频服务器305来实现视频服务器130的一些实施方案,并且使用视频客户端310来实现图1所示的视频客户端135的一些实施方案。视频服务器305接收流315,所述流315包括由视频获取装置(诸如图1所示的视频获取装置105)以诸如24FPS的第一帧速率提供的帧。
视频服务器305包括运动估计模块320,所述运动估计模块320用于估计所接收帧中的像素或像素组的运动矢量。例如,运动估计模块320可将当前帧中的像素值与参考帧中的像素值(例如,流中先前接收的帧)进行比较。通过使当前帧中的像素移位达由候选运动矢量确定的偏移量,然后将偏移像素的值与参考帧中的像素值进行比较来执行比较。然而,如本文所论述,比较还可基于相关性分析、光流分析等来执行。然后计算像素值的相似性的测度。针对一组候选运动矢量迭代这个过程,并且选择具有最高相似性测度的候选运动矢量作为像素(或像素组)的运动矢量。在一些实施方案中,运动估计模块320测量不同候选运动矢量之间的相似性测度的梯度,并且比较候选运动矢量之间的“距离成本”。对梯度和成本进行加权和组合以选择候选运动矢量中的一个作为像素或像素组的运动矢量。“距离成本”可使用L-1范数(例如,候选运动矢量之间的距离的网格测度上的出租车距离)、根据毕达哥拉斯定理确定候选运动矢量之间的欧几里德距离的L-2范数,或者表征不同候选运动矢量之间的距离的其他测度来确定。在一些实施方案中,除主运动矢量之外,还可选择“亚军(runner-up)”运动矢量。
运动估计模块320的一些实施方案生成选定运动矢量和任何“亚军”运动矢量的置信度测度。它们的置信度测度指示以下可能性:选定运动矢量准确地表示在对应像素或像素组中表示的图像的部分的运动。例如,矢量的置信度测度可由范围0..n内的数字表示,其中较小的数字表示较低的置信度水平,而较大的数字表示较高的置信度水平。表示置信度测度的数字可以是浮点数、3位数或其他表示。
运动估计模块320生成表示流315的帧中的像素(或像素组)的运动矢量的元数据。例如,像素(或像素组)中的每一个的运动矢量可表示为沿屏幕的平面中的X方向和Y方向的微分距离(dx,dy)。又例如,像素(或像素组)中的每一个的运动矢量可表示为指示运动矢量的幅值的信息和指示帧中的运动矢量的方向的信息。运动矢量中的每一个的元数据还包括标识对应像素(或像素组)的信息。运动估计模块320的一些实施方案还在元数据中包括运动矢量中的每一个的置信度测度。虽然图3所示的运动估计模块320计算运动矢量,但运动估计模块320的一些实施方案生成其他内插参数,诸如光流结果、相关性分析结果等。因此,运动估计模块320可生成表示这些其他内插参数的元数据。
视频服务器305的一些实施方案包括场景变化检测模块325。当前帧所表示的场景与流315中的前一帧所表示的场景不同时,发生场景变化。场景变化检测模块325能够通过将当前帧中的像素值与前一帧中的像素值进行比较来检测场景变化。例如,如果在当前帧和前一帧之间发生场景变化,那么当前帧和前一帧中的像素中的一些或全部的值不连续地变化。因此,场景变化检测模块325可确定当前帧和前一帧中的像素值之间的差异的测度。如果距离测度大于阈值,那么场景变化检测模块325检测到场景变化。场景变化检测模块325能够生成指示场景变化的元数据,诸如在不存在场景变化的情况下赋予值“0”,而在检测到场景变化的情况下赋予值“1”的位。使用元数据的值来确定是否尝试在流315中的帧之间进行内插。
将流315中的帧、由运动估计模块320产生的元数据、由场景变化检测模块325产生的元数据和由视频服务器305中的其他任何视频处理模块产生的元数据提供给多路复用器330。多路复用器330将元数据多路复用或以其他方式并入到流315中。例如,多路复用器330可生成输出流335,所述输出流335包括流315中的帧,所述帧由与所述帧中的每一个相关联的元数据隔开。将输出流335传输到视频客户端310。在一些实施方案中,将帧和元数据存储在视频服务器305中。然后,响应于来自视频客户端310的请求,将多路复用的输出流335提供给视频客户端310。因此,不需要实时生成元数据。
视频客户端310的一些实施方案包括遮挡和运动矢量处理模块340。当场景中的一个对象在另一对象前面或后面经过时,发生遮挡。例如,当球在树后面行进时,球的部分被树遮挡。前一帧中的对象的在当前帧中被遮挡的部分的运动矢量不应当用于内插,因为这可导致表示遮挡对象的部分的像素的值成为对应于被遮挡对象的部分的分配值。例如,基于帧中的运动矢量来对表示包括在树后面行进的球的场景的帧进行内插可导致在内插帧中球的一部分看起来在树前面行进。遮挡和运动矢量处理模块340可检测场景的各部分的的遮挡并生成对应元数据。遮挡和运动矢量处理模块340的一些实施方案通过将在时间上前向确定的运动矢量(例如,通过确定当前帧中相对于前一帧的运动矢量)和在时间上后向确定的运动矢量(例如,通过确定前一帧中相对于当前帧的运动矢量)进行比较来检测遮挡。如果运动矢量一致,那么不太可能发生遮挡。然而,如果存在遮挡,那么前向运动矢量和后向运动矢量将不同。遮挡和运动矢量处理模块340生成指示像素(或像素组)是否正在经历遮挡的元数据。例如,被遮挡像素(或像素组)的运动矢量可被赋予0或其他低值的置信度测度,以指示运动矢量的低置信度。又例如,被遮挡像素(或像素组)可与在不存在与运动矢量相关联的遮挡的情况下赋予值“0”而在检测到对运动矢量的遮挡的情况下赋予值“1”的位相关联。使用元数据的值来确定是否将运动矢量用于流335中的帧之间的内插。
也可使用遮挡和运动矢量处理模块340来检测可能是错误或伪像的离群值运动矢量。例如,如果遮挡和运动矢量处理模块340确定第一像素的运动矢量在统计上不同于一个或多个相邻像素的运动矢量,那么遮挡和运动矢量处理模块340将第一像素的运动矢量标识为离群值。统计差异的实例包括:幅值相对于相邻运动矢量的幅值的平均值大预定数量的标准偏差、方向相对于相邻运动矢量的平均方向大预定数量的标准偏差等的运动矢量。遮挡和运动矢量处理模块340的一些实施方案基于相邻运动矢量的值,例如通过将离群值运动矢量的幅值或方向替换为相邻运动矢量的幅值或方向的平均值来修改离群值运动矢量。也可例如使用时空子午线滤波器对运动矢量进行滤波以去除离群值,所述时空子午线滤波器将离群值替换为局部平均值或替换为最相似的相邻运动矢量。与离群值运动矢量(或离群值运动矢量的替换值)相关联的置信度测度可被设置为低值,以指示运动矢量的准确度的低置信度。遮挡和运动矢量处理模块340可生成元数据,诸如可指示对离群值运动矢量的修改或指示离群值运动矢量是否应当用于内插的置信度测度。
视频客户端310中的内插模块345接收包括流315的帧和由视频服务器305生成的元数据的输出流335,以及由遮挡和运动矢量处理模块340生成的任何元数据。如本文所论述,内插模块345使用所接收视频帧和元数据来生成一个或多个内插帧。然后,内插模块345提供包括流315中的帧以及基于帧和元数据产生的内插帧的视频流350。
图4是示出根据一些实施方案的包括视频服务器405和视频客户端410的视频处理系统400的第二实例的框图。使用视频处理系统400来实现图1所示的视频获取和显示系统100的一些实施方案。例如,使用视频服务器405来实现视频服务器130的一些实施方案,并且使用视频客户端410来实现图1所示的视频客户端135的一些实施方案。视频服务器405接收流415,所述流415包括由视频获取装置(诸如图1所示的视频获取装置105)以诸如24FPS的第一帧速率提供的帧。
视频服务器405包括运动估计模块420,所述运动估计模块420确定运动矢量并且生成表示流415的帧中的像素(或像素组)的运动矢量的元数据。视频服务器405还包括场景变化检测模块425,所述场景变化检测模块425检测流415的帧中的场景变化并生成指示场景变化的元数据。运动估计模块420和场景变化检测模块425被配置来以与图3所示的运动估计模块320和场景变化检测模块325的一些实施方案相同的方式操作。
图4所示的视频处理系统400的第二实例与图3所示的视频处理系统300的第一实例的不同之处在于,视频服务器405实现遮挡和运动矢量处理模块430。移动遮挡和运动矢量处理模块430的中等计算密集型操作减轻视频客户端410的计算负担。遮挡和运动矢量处理模块430被配置来检测流415的帧中的遮挡并生成指示帧中的像素(或像素组)是否正在经历遮挡的元数据。遮挡和运动矢量处理模块430还被配置来检测流415的帧中的离群值运动矢量。如本文所论述,遮挡和运动矢量处理模块430的一些实施方案修改离群值运动矢量的值,并且生成可指示对离群值运动矢量的修改或指示离群值运动矢量是否应当用于内插的元数据。
将流415中的帧、由运动估计模块420产生的元数据、由场景变化检测模块425产生的元数据、由遮挡和运动矢量处理模块430产生的元数据和由视频服务器405中的其他任何视频处理模块产生的元数据提供给多路复用器435。多路复用器435将元数据多路复用或以其他方式并入到流415中。例如,多路复用器435可生成输出流440,所述输出流440包括流415中的帧,所述帧由与所述帧中的每一个相关联的元数据隔开。将输出流440传输到视频客户端410。在一些实施方案中,帧和元数据被存储在视频服务器405中。然后,响应于来自视频客户端410的请求,将多路复用的输出流440提供给视频客户端410。因此,不需要实时生成元数据。
视频客户端410中的内插模块445接收包括流415的帧和由视频服务器405生成的元数据的输出流440。如本文所论述,内插模块445使用所接收视频帧和元数据来生成一个或多个内插帧。然后,内插模块445提供包括流415中的帧以及基于帧和元数据产生的内插帧的内插视频流450。
图5是根据一些实施方案的示出视频帧、元数据和内插帧的视频处理系统500的框图。视频处理系统500包括视频服务器505和视频客户端510,所述视频服务器505和视频客户端510使用图1、图3和图4所示的视频服务器130、305、405和视频客户端135、310、410的一些实施方案来实现。
视频服务器505接收(或生成)包括视频帧515、520的流。视频服务器505也生成对应视频帧515、520的元数据525、530。元数据可由运动估计模块、场景变化检测模块、遮挡和运动矢量处理模块(在视频服务器505中实现的情况下)或在视频服务器505中实现的其他视频处理模块生成。将视频帧515、520和元数据525、530提供给多路复用器535,所述多路复用器535将视频帧515、520和元数据525、530多路复用或以其他方式并入到输出流540中。
视频服务器505的一些实施方案压缩视频帧515、520和元数据525、530以形成输出流540。压缩形成输出流540的位可显著提高视频质量,而传输输出流540所需的带宽只是稍微增加。例如,诸如以约5兆位/秒的速率进行的Netflix流数据的服务,对于具有24FPS的帧速率的电影,这相当于每压缩数据画面约208,000位。所述压缩数据表示约2500万位的未压缩数据。元数据可表示为包括运动矢量信息和置信度测度的16位矢量,例如,6个位表示水平运动,6个位表示垂直运动,2个位表示置信度测度,并且2个位指示运动矢量是否与遮挡相关以及应当用于前向、后向或双向内插。如本文所论述,在1920x 1080的像素屏幕上显示每帧8100个矢量,这导致每帧8100x16=129,600位的未压缩数据。由于图像中的运动之间通常存在大量相关性,因此元数据的压缩比的保守估计值是10:1。因此,与压缩的视频帧相比,压缩的元数据消耗非常少的带宽。因此可节省带宽,例如,通过将60Hz的视频作为包括指示如何对未传送的帧进行恢复或内插的元数据的30Hz的视频进行传送,传输60Hz的视频所需的带宽可降低近50%。
视频服务器505的一些实施方案也能够将缩小版本或缩略版本的帧多路复用到输出流540中。这允许视频服务器505丢弃具有较高帧速率的流中的一些帧,并以较低的帧速率传输剩余的帧。然后,视频服务器505可利用缩小版本或缩略版本的丢弃帧来补充输出流540中的信息,以便视频客户端510可使用所述缩小版本或缩略版本来对帧进行重建或内插,以便以更高的帧速率显示所接收的帧。还可使用所述缩小版本或缩略版本来标识遮挡区域的形状或在图像的遮挡区域或模糊区域中执行内插。
视频客户端510从视频服务器505接收输出流540。视频客户端510使用视频帧515、520和元数据525、530来生成内插帧545、550、555,如本文所论述。例如,使用元数据525来对视频帧515中的像素值进行内插以生成内插帧545、550的像素值。又例如,使用元数据530来对视频帧520中的像素值进行内插以生成内插帧555的像素值。视频客户端510生成包括视频帧515、520和内插帧545、550、555的显示流560。使用显示流560来在视频客户端510的屏幕上显示视频。
图6是根据一些实施方案的视频处理系统600的框图,所述视频处理系统600包括用于从视频帧生成元数据的视频服务器605以及用于基于元数据和视频帧生成内插帧的视频客户端610。使用视频服务器605和视频客户端610来实现的图1和图3至图5所示的视频服务器130、305、405、505和视频客户端135、310、410、510的一些实施方案。
视频服务器605包括用于传输和接收信号的网络接口615(例如,网络接口)。例如,网络接口615可接收表示由视频获取装置620生成的流中的帧的信号。网络接口615还可传输表示视频帧和相关联元数据的信号,如本文所论述。网络接口615可被实现为单个集成电路(例如,使用单个ASIC或FPGA)或被实现为包括用于实现网络接口615的功能的不同模块的片上系统(SOC)。视频服务器605还包括处理器625和存储器630。可使用处理器625来执行存储在存储器630中的指令并将诸如所执行指令的结果的信息存储在存储器630中,所述结果可包括视频帧或相关联元数据。
视频客户端610包括用于传输和接收信号的网络接口635。例如,网络接口635可接收表示视频帧和由视频服务器605生成的元数据的信号。又例如,网络接口635可将视频帧和基于所接收元数据生成的内插帧传输到屏幕640以供显示。网络接口635可被实现为单个集成电路(例如,使用单个ASIC或FPGA)或被实现为包括用于实现网络接口635的功能的不同模块的片上系统(SOC)。视频客户端610还包括处理器645和存储器650。可使用处理器645来执行存储在存储器650中的指令并将诸如所执行指令的结果的信息存储在存储器650中。例如,可使用处理器645来基于从视频服务器605接收的视频帧和元数据生成内插帧。然后,将内插帧提供给网络接口635以在屏幕640上生成图像。
图7是包括根据一些实施方案的屏幕700的图示,所述屏幕700显示图像,可对所述图像进行搜索以确定与图像中的对象相关联的运动矢量。屏幕700是1920x 1080的像素阵列,但屏幕700的其他实施方案包括以不同数目的行或列排列的不同数目的像素。在所示实施方案中,当前帧中所示的图像包括由屏幕700所实现的阵列中的不同像素值表示的人705、球710和运动场715。
为了检测图像中的运动,将表示当前帧中的图像的像素的值的子集与表示前一帧中的图像的像素的值的参考子集进行比较。例如,屏幕700的像素可划分成诸如搜索窗口720的64x 64的搜索窗口,然后将搜索窗口720内的16x 16的搜索块与诸如包括表示球710的前一位置的像素值的16x 16参考块725的参考块进行比较。因此,搜索过程需要对不同偏移量下的搜索块与参考块725进行64x 64=4096次单独的比较,以评估搜索窗口720内的候选运动矢量。每次比较的结果可通过得分S表示:
其中Cij表示搜索窗口720中的比较块内的位置i,j处的像素值并且Rij表示参考块725内的位置i,j处的像素值。因此,在当前实例中,每个得分需要256次减法运算和256次绝对值运算。
运动矢量搜索的计算负荷可通过假设使用单指令多数据(SIMD)图形处理单元(GPU)确定得分来估计,所述SIMD GPU需要每处理核约30个指令来对诸如搜索窗口720的每个候选区域执行搜索。因此,对由屏幕700上的像素表示的图像的一次完整搜索需要GPU上的4096x 30=122,880个循环。对于由屏幕700上的像素表示的图像,不同参考块的数目是1920/16x 1080/16=8100个参考块。因此,搜索每个图像所需的循环总数是8100x 122,880≈109个循环。如本文所论述,遮挡检测和其他功能需要执行前向搜索(例如,将当前帧与前一帧进行比较)和后向搜索(例如,将前一帧与当前帧进行比较),这使每图像循环数目加倍。典型的输入帧速率是24FPS,这导致处理器总需求为每秒480亿个循环。并非所有装置都具有这种处理能力,而在具有这种处理能力的情况下,会消耗大量功率。此外,这个估计值是较低估计值,因为后处理通常需要附加计算,例如,以查找并处理离群值、遮挡等。此外,可对以不同比例表示的图像执行附加计算。
本文所述的视频获取和显示系统的一些实施方案具有优于常规实践的许多优点。例如,在视频服务器处执行运动估计(并且在一些情况下,其他视频处理)以及将视频帧与表示内插参数的元数据一起提供给视频客户端降低了对视频客户端支持视频帧速率上转换的最低要求,并且降低了视频客户端处的功耗。通过使用视频服务器的计算资源来实现更复杂的运动估计或者使用更复杂的分析来检查更大范围的可能选择并确定哪些选择将产生最佳视频质量,将运动估计(并且在一些情况下,其他视频处理)从视频客户端移位到视频服务器还可提高视频客户端处的视频质量,并且降低伪像的发生率和严重性。此外,在一些实施方案中,并不需要在视频服务器处实时执行运动估计(并且在一些情况下,其他视频处理)。例如,视频流的元数据可在视频客户端请求视频流之前生成,然后在请求时提供。
在一些实施方案中,以上所描述的设备和技术被实现在包括一个或多个集成电路(IC)装置(也称为集成电路封装或微芯片)的系统中,诸如以上参考图1至图6所述的视频获取和显示系统。在这些IC装置的设计和制造中使用电子设计自动化(EDA)和计算机辅助设计(CAD)软件工具。这些设计工具通常表示为一个或多个软件程序。所述一个或多个软件程序包括代码,所述代码可由计算机系统执行以操纵计算机系统在表示一个或多个IC装置的电路的代码上操作,以便执行过程的至少一部分以设计或调适制造系统,从而制造电路。此代码可包括指令、数据或指令和数据的组合。表示设计工具或制造工具的软件指令通常存储在计算系统可存取的计算机可读存储介质中。同样地,表示IC装置的设计和制造的一个或多个阶段的代码存储在同一计算机可读存储介质或不同计算机可读存储介质中,并从同一计算机可读存储介质或不同计算机可读存储介质存取。
计算机可读存储介质包括在使用期间可由计算机系统存取以向计算机系统提供指令和/或数据的任何非暂时性存储介质或非暂时性存储介质的组合。此类存储介质可包括但不限于光学介质(例如,压缩光盘(CD)、数字通用光盘(DVD)、蓝光光盘)、磁性介质(例如,软盘、磁带或磁性硬盘驱动器)、易失性存储器(例如,随机存取存储器(RAM)或高速缓存)、非易失性存储器(例如,只读存储器(ROM)或闪存存储器)或基于微机电系统(MEMS)的存储介质。在一些实现方式中,计算机可读存储介质嵌入计算系统中(例如,系统RAM或ROM),固定地附接到计算系统(例如,磁性硬盘驱动器),可移除地附接到计算系统(例如,光盘或基于通用串行总线(USB)的闪存存储器),或者经由有线或无线网络耦合到计算机系统(例如,网络可存取存储装置(NAS))。
在一些实施方案中,上述技术的某些方面可由执行软件的处理系统的一个或多个处理器来实现。所述软件包括存储在或以其他方式有形地体现在非暂时性计算机可读存储介质上的一个或多个可执行指令集。所述软件可包括指令和某些数据,所述指令和数据在由一个或多个处理器执行时操纵一个或多个处理器以执行上述技术的一个或多个方面。非暂时性计算机可读存储介质可包括例如磁盘或光盘存储装置、诸如闪存存储器的固态存储装置、高速缓存、随机存取存储器(RAM),或者一个或多个其他非易失性存储器装置等。存储在非暂时性计算机可读存储介质上的可执行指令可以是源代码、汇编语言代码、对象代码或者被一个或多个处理器解译或可以其他方式执行的其他指令格式。
应注意,并非上文在一般性描述中所描述的所有活动或元素都是必需的,特定活动或装置的一部分可能不是必需的,并且除所描述的那些之外,还可执行一个或多个其他活动,或者还可包括其他元素。再者,列出活动的次序不一定是活动被执行的次序。此外,已参考具体实施方案对概念进行了描述。然而,本领域普通技术人员应理解,在不脱离如下文权利要求所阐述的本公开的范围的情况下,可进行各种修改和改变。因此,说明书和附图应被视为是说明性的而不是限制性的,并且所有此类修改意图包括在本公开的范围内。
上文已关于具体实施方案描述了益处、其他优点和问题解决方案。然而,所述益处、优点、问题解决方案以及可能致使任何益处、优点或解决方案出现或变得更明显的任何一个或多个特征都不应被视为任何或所有权利要求的关键、必需或本质特征。此外,上文所公开的特定实施方案仅仅是说明性的,因为所公开的主题可以不同但等效的方式进行修改和实践,这些方式对受益于本文教导的本领域技术人员是显而易见的。除如下文权利要求中所描述的以外,本文所示出的构造或设计的细节意图不受限制。因此,显而易见的是,上文所公开的特定实施方案可进行变更或修改,并且所有此类变型都被视为在所公开主题的范围内。因此,本文所寻求的保护如下文权利要求中所阐述。

Claims (20)

1.一种方法,其包括:
在视频服务器(130,305,405,505,605)处生成表示第一帧(200)的部分的内插参数(240-244)的元数据(525,530),所述第一帧(200)表示包括所述第一帧的帧流(315,335,415)中的场景(110),其中所述内插参数用于生成表示在所述帧流中的在所述第一帧之后且在第二帧之前的所述场景的至少一个内插帧(205);
在所述视频服务器处将所述元数据并入到所述流中;以及
从所述视频服务器传输包括所述元数据的所述流。
2.如权利要求1所述的方法,其中生成所述元数据包括:生成表示与所述第一帧的所述部分相关联的运动矢量(240-244)的元数据和所述运动矢量的置信度测度。
3.如权利要求1所述的方法,其中生成所述元数据包括:标识所述第一帧的部分的在统计上不同于所述第一帧的相邻部分的相邻内插参数的离群值内插参数,并且生成元数据,所述元数据指示所述离群值内插参数将被忽略以便进行内插或基于所述相邻运动矢量来修改所述离群值内插参数。
4.如权利要求1所述的方法,其还包括:
执行遮挡检测以标识所述第一帧的被遮挡部分的内插参数。
5.如权利要求4所述的方法,其中执行遮挡检测包括:在所述视频服务器处执行遮挡检测,并且其中生成所述元数据包括:生成指示所述第一帧的所述被遮挡部分的所述内插参数将被忽略以便进行内插的元数据。
6.一种方法,其包括:
在视频客户端(135,310,410,510,610)处接收表示包括元数据(525,530)的帧流(315,335,415)中的场景(110)的第一帧(200),所述元数据(525,530)表示所述第一帧的部分的内插参数(240-244);
在所述视频客户端处,基于所述第一帧和所述元数据,生成表示在所述帧流中的在所述第一帧之后且在第二帧之前的所述场景的至少一个内插帧(205);以及
在所述视频客户端处显示所述第一帧、所述至少一个内插帧和所述第二帧。
7.如权利要求6所述的方法,其中接收表示所述内插参数的所述元数据包括:接收表示与所述帧的所述部分相关联的运动矢量((240-244)的元数据和所述运动矢量的置信度测度。
8.如权利要求6所述的方法,其中接收所述元数据包括:接收标识所述帧的一部分的离群值内插参数的元数据,所述离群值内插参数在统计上不同于所述帧的相邻部分的相邻内插参数,并且其中生成所述至少一个内插帧包括:当生成所述至少一个内插帧时,忽略所述离群值内插参数。
9.如权利要求6所述的方法,其还包括:
在所述视频客户端处执行遮挡检测以标识所述帧的被遮挡部分的内插参数;以及
当生成所述至少一个内插帧时,忽略所述帧的所述被遮挡部分的所述内插参数。
10.如权利要求6所述的方法,其中接收生成所述元数据包括:接收指示所述帧的所述被遮挡部分的内插参数的元数据,并且其中生成所述至少一个内插帧包括:当生成所述至少一个内插帧时,忽略所述帧的所述被遮挡部分的所述内插参数。
11.一种视频服务器(130,305,405,505,605),其包括:
处理器(625),所述处理器(625)用于生成表示第一帧(200)的部分的内插参数(240-244)的元数据(525,530),所述第一帧(200)表示包括所述第一帧的帧流(315,335,415)中的场景(110),其中所述内插参数用于生成表示在所述帧流中的在所述第一帧之后且在第二帧之前的所述场景的至少一个内插帧(205),所述处理器还被配置来将所述元数据并入到所述流中;以及
网络接口(615),所述网络接口(615)用于传输包括多路复用的元数据的所述流。
12.如权利要求11所述的视频服务器,其中所述处理器被配置来生成表示与所述第一帧的所述部分相关联的运动矢量(240-244)的元数据和所述运动矢量的置信度测度。
13.如权利要求11所述的视频服务器,其中所述处理器被配置来标识所述第一帧的一部分的离群值内插参数,所述离群值内插参数在统计上不同于所述第一帧的相邻部分的相邻内插参数。
14.如权利要求13所述的视频服务器,其中所述处理器被配置来生成元数据,所述元数据指示所述离群值内插参数将被忽略以便进行内插或基于所述相邻运动矢量来修改所述离群值内插参数。
15.如权利要求11所述的视频服务器,其中所述处理器还被配置来执行遮挡检测以标识所述第一帧的被遮挡部分的内插参数,并生成指示所述第一帧的所述被遮挡部分的所述内插参数将被忽略以便进行内插的元数据。
16.一种视频客户端(135,310,410,510,610),其包括:
网络接口(635),所述网络接口(635)用于接收表示包括元数据(530,535)的帧流(315,335,415)中的场景(110)的第一帧(200),所述元数据(530,535)表示所述第一帧的部分的内插参数(240-242);
处理器(645),所述处理器(645)用于基于所述第一帧和所述元数据生成表示在所述帧流中的在所述第一帧之后且在第二帧之前的所述场景的至少一个内插帧(205);以及
屏幕(145,640),所述屏幕(145,640)用于显示所述第一帧、所述至少一个内插帧和所述第二帧。
17.如权利要求16所述的视频客户端,其中所述网络接口被配置来接收表示与所述帧的所述部分相关联的运动矢量(240-244)的元数据和所述运动矢量的置信度测度。
18.如权利要求16所述的视频客户端,其中所述网络接口被配置来接收标识所述帧的一部分的离群值内插参数的元数据,所述离群值内插参数在统计上不同于所述帧的相邻部分的相邻内插参数,并且其中所述处理器被配置为当生成所述至少一个内插帧时,忽略所述离群值内插参数。
19.如权利要求16所述的视频客户端,其中所述处理器被配置来执行遮挡检测以标识所述帧的被遮挡部分的内插参数,并且当生成所述至少一个内插帧时,忽略所述帧的所述被遮挡部分的所述内插参数。
20.如权利要求16所述的视频客户端,其中所述网络接口被配置来接收指示所述帧的被遮挡部分的内插参数的元数据,并且其中所述处理器被配置为当生成所述至少一个内插帧时,忽略所述帧的所述被遮挡部分的所述内插参数。
CN201780066852.2A 2016-11-08 2017-11-08 使用流式元数据的视频帧速率转换 Pending CN109891891A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/346,392 2016-11-08
US15/346,392 US10412462B2 (en) 2016-11-08 2016-11-08 Video frame rate conversion using streamed metadata
PCT/IB2017/056989 WO2018087675A1 (en) 2016-11-08 2017-11-08 Video frame rate conversion using streamed metadata

Publications (1)

Publication Number Publication Date
CN109891891A true CN109891891A (zh) 2019-06-14

Family

ID=62064880

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780066852.2A Pending CN109891891A (zh) 2016-11-08 2017-11-08 使用流式元数据的视频帧速率转换

Country Status (6)

Country Link
US (1) US10412462B2 (zh)
EP (1) EP3539292A4 (zh)
JP (1) JP2019537913A (zh)
KR (1) KR20190077428A (zh)
CN (1) CN109891891A (zh)
WO (1) WO2018087675A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111726555A (zh) * 2020-06-04 2020-09-29 上海顺久电子科技有限公司 一种显示设备及运动估计方法、视频处理方法
WO2022142952A1 (zh) * 2020-12-31 2022-07-07 紫光展锐(重庆)科技有限公司 图像数据存储方法、设备及存储介质、芯片、模组设备
CN114827663A (zh) * 2022-04-12 2022-07-29 咪咕文化科技有限公司 分布式直播插帧系统及方法

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10621446B2 (en) * 2016-12-22 2020-04-14 Texas Instruments Incorporated Handling perspective magnification in optical flow processing
US20190164296A1 (en) * 2017-11-27 2019-05-30 Qualcomm Incorporated Systems and methods for determining a confidence measure for a motion vector
US11535158B2 (en) * 2019-03-28 2022-12-27 Magna Electronics Inc. Vehicular camera with automatic lens defogging feature
CN110933497B (zh) * 2019-12-10 2022-03-22 Oppo广东移动通信有限公司 视频图像数据插帧处理方法及相关设备
CN111010599B (zh) * 2019-12-18 2022-04-12 浙江大华技术股份有限公司 一种处理多场景视频流的方法、装置及计算机设备
KR20210083840A (ko) 2019-12-27 2021-07-07 삼성전자주식회사 다이나믹 톤 메타데이터를 포함하는 영상의 편집을 위한 전자 장치 및 그의 동작 방법
CN112203034B (zh) * 2020-09-30 2023-09-08 Oppo广东移动通信有限公司 帧率控制方法、装置以及电子设备
KR20220085283A (ko) * 2020-12-15 2022-06-22 삼성전자주식회사 전자 장치 및 그 제어 방법
CN115460436B (zh) * 2022-08-03 2023-10-20 北京优酷科技有限公司 视频处理方法、存储介质及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101023662A (zh) * 2004-07-20 2007-08-22 高通股份有限公司 用于运动矢量处理的方法和设备
CN102595089A (zh) * 2011-12-29 2012-07-18 香港应用科技研究院有限公司 用于降减光晕的使用混合双向运动向量的帧率转换
CN102907092A (zh) * 2010-05-26 2013-01-30 高通股份有限公司 相机参数辅助式视频帧速率上转换
US20140028911A1 (en) * 2012-07-24 2014-01-30 Snell Limited Interpolation of images
US20140226901A1 (en) * 2013-02-12 2014-08-14 Vmware, Inc. Method and system for enhancing user experience for remoting technologies
CN105657541A (zh) * 2015-12-29 2016-06-08 华为技术有限公司 一种帧处理方法及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2311182A (en) * 1996-03-13 1997-09-17 Innovision Plc Improved gradient based motion estimation
AU2005269310C1 (en) * 2004-07-30 2010-05-20 Euclid Discoveries, Llc Apparatus and method for processing video data
US9258519B2 (en) * 2005-09-27 2016-02-09 Qualcomm Incorporated Encoder assisted frame rate up conversion using various motion models
US8488059B2 (en) 2009-12-16 2013-07-16 Broadcom Corporation Adaptation of frame selection for frame rate conversion
US9042682B2 (en) * 2012-05-23 2015-05-26 Dolby Laboratories Licensing Corporation Content creation using interpolation between content versions
US9432690B2 (en) 2013-01-30 2016-08-30 Ati Technologies Ulc Apparatus and method for video processing

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101023662A (zh) * 2004-07-20 2007-08-22 高通股份有限公司 用于运动矢量处理的方法和设备
CN102907092A (zh) * 2010-05-26 2013-01-30 高通股份有限公司 相机参数辅助式视频帧速率上转换
CN102595089A (zh) * 2011-12-29 2012-07-18 香港应用科技研究院有限公司 用于降减光晕的使用混合双向运动向量的帧率转换
US20140028911A1 (en) * 2012-07-24 2014-01-30 Snell Limited Interpolation of images
US20140226901A1 (en) * 2013-02-12 2014-08-14 Vmware, Inc. Method and system for enhancing user experience for remoting technologies
CN105657541A (zh) * 2015-12-29 2016-06-08 华为技术有限公司 一种帧处理方法及装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111726555A (zh) * 2020-06-04 2020-09-29 上海顺久电子科技有限公司 一种显示设备及运动估计方法、视频处理方法
CN111726555B (zh) * 2020-06-04 2021-11-23 上海顺久电子科技有限公司 一种显示设备及运动估计方法、视频处理方法
WO2022142952A1 (zh) * 2020-12-31 2022-07-07 紫光展锐(重庆)科技有限公司 图像数据存储方法、设备及存储介质、芯片、模组设备
CN114827663A (zh) * 2022-04-12 2022-07-29 咪咕文化科技有限公司 分布式直播插帧系统及方法
CN114827663B (zh) * 2022-04-12 2023-11-21 咪咕文化科技有限公司 分布式直播插帧系统及方法

Also Published As

Publication number Publication date
EP3539292A1 (en) 2019-09-18
EP3539292A4 (en) 2020-04-29
JP2019537913A (ja) 2019-12-26
US20180132009A1 (en) 2018-05-10
WO2018087675A1 (en) 2018-05-17
US10412462B2 (en) 2019-09-10
KR20190077428A (ko) 2019-07-03

Similar Documents

Publication Publication Date Title
CN109891891A (zh) 使用流式元数据的视频帧速率转换
US10944996B2 (en) Visual quality optimized video compression
Wang et al. End-to-end view synthesis for light field imaging with pseudo 4DCNN
Yang et al. Deep virtual stereo odometry: Leveraging deep depth prediction for monocular direct sparse odometry
WO2019149206A1 (zh) 深度估计方法和装置、电子设备、程序和介质
CN102272796B (zh) 运动向量生成装置以及运动向量生成方法
JP5954668B2 (ja) 画像処理装置、撮像装置および画像処理方法
CN112104854A (zh) 相机视图之间的鲁棒虚拟视图生成的方法和系统
KR100888081B1 (ko) 2차원 영상 신호의 3차원 영상 신호로의 변환 절차 및 변환장치
JP2009147807A (ja) 画像処理装置
US20170116741A1 (en) Apparatus and Methods for Video Foreground-Background Segmentation with Multi-View Spatial Temporal Graph Cuts
US20140199048A1 (en) Video generating apparatus and video generating method
Jin et al. Online video synopsis method through simple tube projection strategy
WO2022120698A1 (en) Method and system of image processing with increased subjective quality 3d reconstruction
US20240161316A1 (en) Method and system of image processing with multi-skeleton tracking
US11205257B2 (en) Method and apparatus for measuring video quality based on detection of change in perceptually sensitive region
Domański et al. Fast depth estimation on mobile platforms and FPGA devices
Jacobson et al. Scale-aware saliency for application to frame rate upconversion
CN111583345A (zh) 一种相机参数的获取方法、装置、设备及存储介质
WO2022061631A1 (en) Optical tracking for small objects in immersive video
Li et al. Dvonet: unsupervised monocular depth estimation and visual odometry
WO2022165620A1 (en) Game focus estimation in team sports for immersive video
Chang et al. Real-time Hybrid Stereo Vision System for HD Resolution Disparity Map.
CN112396624A (zh) 使用时间不一致性的3d移动对象点云优化
Sekkati et al. Back to old constraints to jointly supervise learning depth, camera motion and optical flow in a monocular video

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
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20190614

WD01 Invention patent application deemed withdrawn after publication