CN107197307A - 用于编码视频流的方法和系统 - Google Patents

用于编码视频流的方法和系统 Download PDF

Info

Publication number
CN107197307A
CN107197307A CN201710141219.7A CN201710141219A CN107197307A CN 107197307 A CN107197307 A CN 107197307A CN 201710141219 A CN201710141219 A CN 201710141219A CN 107197307 A CN107197307 A CN 107197307A
Authority
CN
China
Prior art keywords
block
picture frame
video camera
encoded
blocks
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
CN201710141219.7A
Other languages
English (en)
Other versions
CN107197307B (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.)
Axis AB
Original Assignee
Axis AB
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 Axis AB filed Critical Axis AB
Publication of CN107197307A publication Critical patent/CN107197307A/zh
Application granted granted Critical
Publication of CN107197307B publication Critical patent/CN107197307B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • 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/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • 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/533Motion estimation using multistep search, e.g. 2D-log search or one-at-a-time search [OTS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • 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/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • 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/57Motion estimation characterised by a search window with variable size or shape
    • 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/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/583Motion compensation with overlapping blocks
    • 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
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/681Motion detection
    • H04N23/6815Motion detection by distinguishing pan or tilt from motion

Abstract

本发明公开了用于编码视频流的方法和系统,具体涉及在编码器中执行的、用于对由摄像机捕获的视频流进行编码的方法,以及实施该方法的编码器。视频流描绘场景,包括第一和第二图像帧,第一图像帧在第二图像帧之前,第一和第二图像帧覆盖场景的部分重叠的部分,该方法包括:接收关于摄像机的移动的信息;基于关于摄像机的移动的信息,定义第二图像帧的第一区域和第二区域;针对第二区域,使用I块编码对每个像素块进行编码;针对第一区域的每个特定像素块,使用第一图像帧的至少一部分和特定像素块作为块匹配算法的输入,基于来自块匹配算法的输出,在将特定像素块编码为I块、P块和P跳跃块中的一种之间进行选择,并根据选择编码特定像素块。

Description

用于编码视频流的方法和系统
技术领域
本发明大体涉及一种在编码器中执行的用于编码由摄像机捕获的视频流的方法,以及实施该方法的计算机程序产品和编码器。
背景技术
对于许多视频摄像机应用而言,例如监控应用,使用能够摇摄、倾斜(并且可选地变焦和/或旋转)以覆盖大区域的摄像机是有利的。此类摄像机以PT(摇摄-倾斜)摄像机、PTZ(摇摄-倾斜-变焦)摄像机等名称为人所知。在摄像机的例如摇摄/倾斜运动期间,被摄像机捕获的视频流的比特率能够达到高的水平,这是由于在此类运动期间图像帧内的大多数或所有像素块是使用高开销的I块编码,导致比特率提高。可替代地,在摄像机的此类运动期间降低视频流的编码质量来减小比特率。然而,这会导致通常模糊的视频流。
在图像处理中,一直在做努力来保持图像的感知质量的同时降低比特率或图像大小。解决以上问题的一种方案是采用编码器的运动矢量搜索范围,所述编码器根据摇摄/倾斜调整的速度对视频流进行编码。由于搜索两个图像之间的匹配像素块通常需要大量的算术运算和增加的运动矢量搜索范围,这导致进行更多比较,此方案的问题是编码处理的计算复杂度会提高,因此需要更强的处理器能力和/或增加用于完成编码处理的处理时间。
因此在此背景下存在改善的需求。
发明内容
鉴于以上所述情况,本发明的目的在于解决或者至少减少以上讨论的缺点中的一个或若干个。概括地,以上目的通过所附独立专利权利要求实现。
根据第一方面,本发明通过在用于编码由摄像机捕获的视频流的编码器中执行的方法实现,视频流包括第一图像帧和第二图像帧,在视频流中第一图像帧在第二图像帧之前。该方法包括下述步骤:
-接收关于摄像机的移动的信息;
-基于关于摄像机的移动的信息来定义第二图像帧的包括还存在于第一图像帧中的图像数据的第一区域,以及第二图像帧的包括不存在于第一图像帧中的图像数据的第二区域;
-针对第二区域,使用I块编码对每个像素块进行编码;
-针对第一区域的每个特定像素块,使用第一图像帧的至少一部分和特定像素块作为对块匹配算法的输入,基于来自块匹配算法的输出,在将特定像素块编码为I块、P块和P跳跃块中的一种之间进行选择,然后根据该选择对特定像素块进行编码。
发明人意识到:由于第一图像帧和第二图像帧至少部分地覆盖周围环境中的不同部分,并且由于这可以使用摄像机的移动信息被定义,因此可以实现第二图像的改善的编码。摄像机的运动可被编码器访问,例如,从摄像机传输到编码器的关于输入到摄像机的PT(Z)控制的数据、关于摄像机的步进电机移动的信息、来自摄像机的运动传感器数据(来自陀螺仪等)、来自视频流中的图像帧的时域滤波的全局运动估计等。
可以使用此信息定义第二图像帧中的第一区域和第二区域,其中,相比于在第一图像帧中所捕获的,第二区域被认为是新区域,即,覆盖周围环境的新的部分。因此,第二区域更有可能包括不存在于第一图像帧中的图像数据。另一方面,第一区域覆盖在第一图像中还被覆盖的周围的区域。因此,第一区域更有可能包括存在于第一图像帧中的图像数据。当这些区域在第二图像中被确定时,可以使用I块编码来对第二区域中的每个像素块进行编码。因此,不需要将处理能力用在执行针对第二区域中的像素块的块匹配算法上。对于第一区域的像素块,可以使用块匹配算法进行在每个像素块的编码之间的选择,其中输出确定像素块是否应当使用I块、P块和P跳跃块被编码。可以使用在本领域中已知的任何合适的块匹配算法,诸如穷举搜索、三步搜索、二维对数搜索、四步搜索等。由于在第二区域的编码中的计算资源被释放,这些资源可被用于对第一区域进行编码,例如,通过增加编码器的运动矢量搜索范围。
在本说明书的上下文中,术语“I块”或“I块编码”应当被理解为被帧内编码的像素块。
在本说明书的上下文中,术语“P块”或“P块编码”应当被理解为被预测编码的像素块,即,仅保持运动矢量以及像素块与先前帧中的对应像素块的差异(残留误差)。
在本说明书的上下文中,术语“B块”或“B块编码”应当被理解为被双向预测编码的像素块,即,使用该像素块与先前图像帧和/或后续图像帧中的对应像素块之间的差异(残留误差)以及运动矢量被编码的像素块。换言之,B块可以仅使用先前图像帧、仅使用后续图像帧、或者使用先前图像帧和后续图像帧两者对块进行编码。
在本说明书的上下文中,术语“跳跃块”或“跳跃编码”应当被理解为在不发送残留误差或运动矢量的情况下被编码(使用先前帧,可选地还使用后续图像帧)的像素块。解码器会从已被解码的其他块推算针对这种编码块的运动矢量。跳跃编码还可以被称为直接编码。
在本说明书的上下文中,术语“像素块”应当被理解为在编码数字图像时使用的数字图像的基本像素单元。
在一些视频编码标准中像素块可被称为宏块。在视频编码标准H.264中,像素块的大小可以是16×16像素。在视频编码标准H.265中,像素块的大小可以在16×16像素至64×64像素之间变化,这是由于H.265采用所谓的编码树单元(CTU)代替宏块。可以使用其他标准(编解码器等)和大小的像素块。利用本实施例,可以实现更加有效的编码处理,这是因为在代表具有相同压缩度的场景的数字图像中的部分的范围可以近似或完美地重叠一个或多个像素块。应当理解的是,任何合适的基于块的编解码器(即,使用块的编解码器),例如,H.264、H.265、MPEG-4第2部分或者VP9编解码器,可被用于本实施例。
根据一些实施例,编码器具有预定义的第一阈值,预定义的第一阈值用于基于来自块匹配算法的输出选择将像素块编码为I块,其中,该方法包括下述步骤:在摄像机的移动期间,提高第一阈值。
针对第一区域中的特定像素块,块匹配算法输出差值或块匹配算法所搜索的第一图像中的块当中的最佳匹配的相似点。例如,块匹配算法可以针对像素块之间的每次比较计算绝对差和(SAD)。基于该差值,编码器在使用I块、P块和P跳跃块编码特定像素块之间进行选择。编码器具有预定义的第一阈值用于选择将像素块编码为I块,例如与500的SAD相对应。在该方法中,提高阈值以便编码器将选择P编码或P跳跃编码用于像素块,否则将使用I块编码对该像素块进行编码,例如,通过将用于将像素块编码为I块的SAD阈值提高至600。因此,在摄像机的移动期间(例如,PT移动),第一阈值被提高以便编码器将针对通常会导致I块编码的一些差值选择P块编码。因此,用于编码第一区域的比特率可被降低,这是因为较少的像素块将被编码为高开销的I块,这又降低编码后的第二图像的总体比特率。
根据一些实施例,编码器具有预定义的第二阈值,预定义的第二阈值用于基于来自块匹配算法的输出,在将像素块编码为P跳跃块和将像素块编码为P块之间进行选择,其中,该方法包括下述步骤:在摄像机的移动期间提高第二阈值。
例如,用于在将像素块编码为P跳跃块和将像素块编码为P块之间进行选择的预定义的第二阈值可以与从用于最佳匹配的块匹配算法输出的50的差值(例如,SAD)相对应。低于该值,编码器将会将像素块编码为P跳跃块编码(即,残留和运动矢量不会被编码),而在高于50(但低于用于进行I块编码的阈值,例如SAD=600)时,编码器将会将像素块编码为P块编码(残留和运动矢量将被编码)。通过将第二阈值提高到例如SAD=100,在第二图像帧的第一区域中的更多像素块将使用P跳跃块被编码,P跳跃块可以降低用于第二图像帧的被编码的第一区域的比特率。
根据一些实施例,视频流进一步包括第三图像帧,第二图像帧在第三图像帧之前,其中,第一区域和第二区域包括不存在于第三图像中的图像数据。这意味着即使在对第二图像帧进行编码时,第二图像帧的后续图像帧(第三图像帧)被编码器考虑(即,B块编码是可能的),该方法仍然是有效并且有利的。
根据一些实施例,该方法进一步包括下述步骤:基于关于摄像机移动的信息,定义第二图像帧的包括还存在于第一图像帧和第三图像帧中的图像数据的第三区域,以及第二图像帧的包括还存在于第三图像帧中但不存在于第一图像帧中的图像数据的第四区域。这是通过与上面结合第二区域和第一区域的定义所描述的类似的方式完成。
对于第三区域的每个特定像素块,编码器现在可以基于来自使用第一图像帧和第三图像帧的至少一部分以及特定像素块作为输入的块匹配算法的输出,在将特定像素块编码为I块、P块、P跳跃块、B块和B跳跃块中的一种之间进行选择,并且根据该选择对特定像素块进行编码。这是因为编码器知道第三区域覆盖在第一图像中也被覆盖的周围区域,第三区域使得所有上述编码方法的选择是可行的。
另一方面,对于第四区域,P块或P跳跃块不是好的选择,因为该区域覆盖在第一图像中未被覆盖的周围区域。结果,有利的是,对于第四区域的每个特定像素块,编码器基于来自第三图像帧的至少一部分和特定像素块作为输入的块匹配算法的输出,在将特定像素块编码为I块、B块和B跳跃块中的一种之间进行选择,并且根据该选择对特定像素块进行编码。
本实施例可以提高编码操作的效率,因为针对第二图像的不同区域,在对各自区域中的像素块进行编码之前定义了可选择的编码方法。例如,对于第四区域,编码器不需要在第一图像中搜索匹配块,因此降低了编码处理的计算复杂度。
根据一些实施例,编码器具有预定义的第三阈值,预定义的第三阈值用于基于来自块匹配算法的输出,在将像素块编码为B跳跃块和将像素块编码为B块之间进行选择,其中,该方法包括下述步骤:在摄像机移动期间提高第三阈值。
使用与上述针对提高第二阈值相同的论证,本实施例可以降低用于第二图像帧的被编码的第三区域和第四区域的比特率。
根据一些实施例,对第一区域的像素块进行编码的步骤包括使用第一量化参数。此外,对第二区域的像素块进行编码的步骤包括使用第二量化参数。此外,对第三区域的像素块进行编码的步骤包括使用第三量化参数。此外,对第四区域的像素块进行编码的步骤包括使用第四量化参数。根据本实施例,第三量化参数和第四量化参数低于第一量化参数和第二量化参数。应当注意的是,第一量化参数和第二量化参数可以相等或不同。还应当注意的是,第三量化参数和第四量化参数可以相等或不同。
由于编码器使用关于摄像机移动的信息获知:第三区域和第四区域包括可能是第三图像帧的一部分的像素块,而第一区域和第二区域包括可能不是第三图像帧的一部分的像素块,在确定不同区域的像素块的压缩率时,可以有利地使用该认知。相对质量或压缩率可以由量化参数(通常称为QP值)控制,量化参数关于像素块等级是可调节的。较低量化参数导致较少压缩的像素块,或者换言之,导致较高的编码质量。在对像素块进行编码时,将大量的比特消耗在下一帧中消失的像素块上,不如将这些比特消耗在将在视频流中停留更久的像素块上。因此,本实施例可以提高编码质量和/或降低所要求的比特率。
根据一些实施例,第四量化参数低于第三量化参数。由于第四区域包括可能不是先前的第一图像的一部分的像素块,而该像素块可能是后续的第三图像的一部分,因此还有可能:与作为第三区域的一部分的像素块相比,这些像素块将在更多图像帧期间停留在视频流中。因此,通过降低量化参数,并且因此与第三区域中的像素块相比提高第四区域中的像素块的编码质量,本实施例可以提高编码质量和/或降低所要求的比特率。
根据一些实施例,编码器是H.264编码器。在这种情况下,该方法进一步包括下述步骤:确定关于摄像机移动的信息对应于摄像机的水平移动,并在对第二图像的像素块进行编码之前旋转第二图像。由于在H.264编码器中定义的切片被定义为图像中的像素行,因此水平移动将导致无法实现根据以上所述将图像划分为第一、第二、第三和第四区域。然而,如果在编码处理之前旋转图像,则切片或切片组可以很好地与第一、第二、第三和第四区域相对应。
根据实施例,该方法还包括下述步骤:将关于摄像机移动的信息作为输入提供至块匹配算法。然后该信息可以有利地被块匹配算法使用,以定义用于在视频流中的图像帧之间搜索匹配块的起始点,或者在图像帧之间选择最佳匹配块。“意外的”最佳匹配可能恶化在意外匹配块的相邻块当中搜索匹配块,该意外的最佳匹配是,例如,在两个图像帧之间的均匀(例如,一个颜色)区域中的匹配块,其中最佳匹配刚好具有小的SAD值,但其中该块的运动矢量将从相邻的块偏离。使用关于摄像机移动的信息作为输入可以减少这些意外匹配,这反过来将使得例如将上述用于P跳跃编码、B跳跃编码或I块编码的阈值设置为较高的SAD值成为可能。
在第二方面中,本发明提供一种包括具有指令的计算机可读存储介质的计算机程序产品,所述指令适于在由具有处理能力的装置执行时实现根据第一方面的方法。
在第三方面中,本发明提供一种编码器,该编码器布置用于对由摄像机捕获的视频流进行编码,视频流包括第一图像帧和第二图像帧,在视频流中第一图像帧在第二图像帧之前,该编码器包括:
-接收部件,被布置为接收关于摄像机移动的信息;
-区域计算部件,被布置为基于关于摄像机移动的信息,定义第二图像帧的包括还存在于第一图像帧中的图像数据的第一区域,以及第二图像帧的包括不存在于第一图像帧中的图像数据的第二区域;
-编码部件,被布置为:
ο针对第二区域,使用I块编码对每个像素块进行编码;并且
ο针对第一区域的每个特定像素块,基于来自使用第一图像帧的至少一部分和特定像素块作为输入的块匹配算法的输出,在将特定像素块编码为I块、P块和P跳跃块中的一种之间进行选择,并且根据该选择对特定像素块进行编码。
在第三方面中,本发明提供一种被布置为捕获视频流的摄像机,摄像机包括用于估计摄像机移动的运动估计装置,摄像机连接到如权利要求9所定义的编码器,其中,运动估计装置被布置用于向编码器传输与摄像机的移动有关的数据,其中,摄像机被布置用于向编码器传输视频流。
根据一些实施例,运动估计装置被布置为使用以下中的至少一种估计摄像机的移动:摄像机的PT控制的输入,关于摄像机的步进电机移动的信息,来自摄像机中的传感器的运动数据以及来自视频流中的图像帧的时域滤波的全局运动估计。
第二、第三和第四方面通常可以具有与第一方面相同的特征和优点。
附图说明
本发明的上述以及其他目的、特征和优点将通过本发明实施例的以下参照附图的说明性且非限制性的详细说明而变得更易于理解,附图中相同的参考标记将用于相似的元件,其中:
图1示出了视频流的第一图像帧和第二图像帧,其中捕获视频流的摄像机在第一图像帧和第二图像帧之间移动;
图2至图3示出了根据本发明实施例的、基于图1的摄像机移动的图1的第二图像中的第一区域和第二区域的定义;
图4示出了视频流的第一、第二和第三图像帧,其中捕获视频流的摄像机在第一图像帧和第二图像帧之间以及在第二图像帧和第三图像帧之间移动;
图5至图6示出了根据本发明实施例的、基于图4的摄像机移动的图4的第二图像中的第一、第二、第三和第四区域的定义;
图7示出了根据本发明实施例的、在对第二图像的像素块进行编码之前的第二图像的旋转;
图8示出了根据本发明实施例的、在用于对由摄像机捕获的视频流进行编码的编码器中执行的方法;
图9示出了根据本发明实施例的编码器;
图10示出了根据本发明实施例的摄像机。
具体实施方式
图1示出了来自视频流的第一图像帧102和第二图像帧104,其中,在视频流中第一图像帧102在第二图像帧104之前。两个图像帧102、104每一个示出两个对象,但是,由于摄像机在被捕获的第一图像帧102和第二图像帧104之间移动,与第一图像帧102中的两个对象相比,第二图像帧104中的两个对象在图像中位于往左方更远处。因此,在两个图像帧102、104的捕获期间摄像机是向右摇摄的,但是在两个图像帧102、104之间具有重叠的视场。
图2示出了图1的两个图像帧102、104,但是进行了重叠以示出区域106和区域108,区域106定义由第一图像帧102和第二图像帧104两者捕获的视场,区域108定义仅在第二图像帧104中捕获的视场。换言之,图2定义了第二图像帧104的包括还存在于第一图像帧102中的图像数据的第一区域106,以及第二图像帧104的包括不存在于第一图像帧102中的图像数据的第二区域108。
在图3中,出于图示的目的,第二图像帧104的两个被定义的区域106、108没有图像内容地被示出。现将结合图8描述由用于对第二图像进行编码的编码器执行的方法。
在被布置为对由摄像机捕获的视频流(例如,包括图1至图2的第一图像帧102和第二图像帧104)进行编码的编码器中,使用从摄像机接收S802的关于摄像机移动的信息,可定义S804这两个区域。换言之,在用于定义区域106、108的编码器中不需要图像分析或类似操作。这样的信息可以从摄像机接收,并且源于摄像机的运动估计装置。运动估计装置可以使用信息,诸如摄像机的PT控制的输入、关于摄像机的步进电机移动的信息或来自摄像机中的传感器的运动数据,来产生关于摄像机的移动的信息。运动估计装置还可以使用用于提取摄像机移动的信息的图像分析,诸如视频流中图像帧的时域滤波,来估计图像帧的全局运动,即,整个图像帧的运动矢量。
使用关于摄像机移动的信息,编码器可以因此定义S804第二图像帧104的包括还存在于第一图像帧102中的图像数据的第一区域106以及第二图像帧104的包括不存在于第一图像帧102中的图像数据的第二区域108。
由于第二区域108包括(至少大部分)不大可能存在于第一图像帧中的图像数据(数据中的某些当然可以由于在由摄像机捕获的场景中的对象的移动而存在于第一图像帧中),因此编码器可以使用I-块编码对每个像素块进行编码S814,而不必在第一图像帧102和第二图像帧104之间执行任何高开销的块匹配操作。
对于第一区域,可以采用常规编码,即,使用第一图像帧的至少一部分和特定像素块作为块匹配算法的输入,基于来自块匹配算法的输出,在将特定像素块编码为I块、P块和P跳跃块中的一种之间进行选择,并且根据该选择对特定像素块进行编码S816。块匹配算法输出用于描述第一图像102中的哪个块最匹配第二图像帧104中的特定块的值,例如,通过输出用于描述第一图像帧102和第二图像帧104之间对应的块的移动的运动矢量。在第一图像102中没有发现特定块的合适的匹配块的情况下,块匹配算法可以输出用于描述该情况的值。块匹配算法还输出用于描述第一图像102中的最佳匹配是多好的匹配的某种值,例如差值(也被称为代价函数(cost function)或成本值),该差值可以是SAD值、平均绝对差(MAD)、均方误差(MSE)或者在块匹配算法领域所公知的任何其他合适的值。基于该值,编码器在用于对特定像素块进行编码的可用的编码方法之间进行选择。例如,编码器可以具有预定义阈值,用于在可用的编码方法之间进行选择,使得满足例如用于将像素块编码为P跳跃块的阈值的差值将以该方式被编码。
从第二区域的编码节省的处理能力可以选择性地用于增大块匹配算法的运动矢量搜索范围。此外,关于摄像机移动的信息可被提供为块匹配算法的输入,例如,用于定义起始点,该起始点用于在第一图像帧102中搜索第二图像帧104的第一区域106中的特定像素块的匹配像素块。
可选地,在使用I块编码、P块编码或P跳跃块编码对第一区域106中的像素块进行编码S816之前,可改变用于在可用的编码方法之间进行选择的编码器的阈值。由于编码器已经定义了如上所述的第一区域106和第二区域108,因此可知第一区域106的内容可能存在于第一图像102中,此认知可以有利地用于在摄像机移动期间提高编码质量和/或降低比特率。例如,基于来自块匹配算法的输出,编码器可以具有预定义的第一阈值,预定义的第一阈值用于选择将像素块编码为I块。换言之,基于例如由用于第二图像104的特定像素块在第一图像102中的最佳匹配的块匹配算法输出的差值,当涉及到使用哪种编码方法时,编码器通常采取特定决策。例如,如果块匹配算法输出SAD值,则预定义的第一阈值可以是400,用于将特定的像素块编码为I块。在本实施例中,对摄像机移动的认知可被使用,使得在摄像机移动期间第一阈值可提高S808到例如550。
可选地,在摄像机移动期间可以改变其它阈值。例如,基于来自块匹配算法的输出,编码器可以具有预定义的第二阈值,预定义的第二阈值用于在将像素块编码为P跳跃块和将像素块编码为P块之间进行选择。换言之,基于例如由用于第二图像104的特定像素块在第一图像102中的最佳匹配的块匹配算法输出的差值,当涉及到使用哪种编码方法时,编码器通常采取特定决策。例如,如果块匹配算法输出SAD值,则预定义的第二阈值可以是60,用于将特定像素块编码为P跳跃块。低于此值,特定像素块被编码为P跳跃块,而高于此值(但低于第一阈值),特定像素块被编码为P块。在本实施例中,摄像机移动的认知可被使用,使得在摄像机移动期间第二阈值可提高S810到例如105。
存在用于对视频进行编码的不同的编码器标准。两个示例为H.264/AVC和H.265。H.265的图块(图块(tile)将图像帧划分成可以独立地被解码/编码的矩形区的网格)的概念使将图像帧划分成所描述的区对于各种各样的摄像机移动(水平的、垂直的、对角线的等)都是可行的。然而,对于H.264编码器,用于将图像帧划分成可以独立地被编码的区的切片概念没有同样地灵活。切片包含以从图像帧顶部开始、通常从左到右的扫描顺序被处理的像素块。这在图7中进行了描述,其中,水平移动产生了如在图中所示的第一区域106和第二区域108。使用切片的概念,图像帧104不能被划分成如图7所示的区/区域。然而,通过在将图像帧104划分成切片之前将图像帧向左或向右旋转90度以形成旋转后的图像帧104’,可有利地将图像帧划分成第一区域106和第二区域108。
根据一些实施例,编码器的编码方法还包括B块编码和B跳跃块编码。以这种方式,第二图像帧之后的图像帧的内容也可出于编码目的被使用。这在图4至图6中被示出。视频流因此包括第三图像帧202,第二图像帧在第三图像帧之前。在本实施例中,第一区域106和第二区域108包括不存在于第三图像中的图像数据。然而,在捕获第三图像帧202时,使用摄像机移动的认知并因此摄像机FOV的认知,第二图像帧104现在可以被划分成两个另外的区域,第三区域204和第四区域206。
图4示出了第一图像帧102、第二图像帧104和第三图像帧202。在视频流中第一图像帧102在第二图像帧104之前,并且在视频流中第二图像帧104在第三图像帧202之前。两个图像帧102、104的每一个示出了两个对象,但是,由于摄像机在被捕获的第一图像帧102和第二图像帧104之间移动,与第一图像帧102中的两个对象相比,第二图像帧104中的两个对象在图像帧104内位于往左上方更远处。在第三图像帧202中仅示出了对象中的一个,这是由于在捕获第三图像帧202时其他对象已经离开了摄像机的FOV。因此摄像机在三个图像帧102、104、202的捕获期间向右和向下摇摄,但是在三个图像帧102、104、202之间仍然具有重叠的视场。
图5示出了图4的三个图像帧102、104、202,但是进行了重叠以示出区域106以及区域108,区域106定义在第一图像帧102和第二图像帧104两者中但是未在第三图像帧202中捕获的视场,区域108定义仅在第二图像帧104中捕获的视场。此外,第二图像帧的第三区域204描绘了还被第一图像帧102和第三图像帧202两者捕获的视场。第二图像帧的第四区域206描绘了还在第三图像帧202中捕获但是未在第一图像帧102中捕获的视场。
换言之,图5定义了:第二图像帧104的第一区域106,包括还存在于第一图像帧102中但不存在于第三图像帧202中的图像数据;第二图像帧104的第二区域108,包括不存在于第一图像帧102或第三图像帧202中的图像数据;第二图像帧104的第三区域204,包括还存在于第一图像帧102和第三图像帧202中的图像数据;以及第二图像帧104的第四区域206,包括还存在于第三图像帧202中但不存在于第一图像帧102中的图像数据。
在图6中,出于图示的目的,示出了第二图像帧104的四个定义的区域106、108、204、206而没有图像内容。
现将结合图8描述如图6中所示的由编码器执行的、用于编码第二图像的方法。当第三图像帧202被包含在第二图像帧104的编码处理中时,可以通过如以下将被描述的另外的步骤扩展图8的方法。在本示例中没有描述的图8的方法的步骤(S804、S808、S810、S814和S816)应当被解释为如以上结合图1至图3所描述的。
使用由编码器接收S802的移动的信息;如以上所述可定义S806第二图像帧104的第三区域204和第四区域206。
由于编码器如以上所述已经定义了第三区域204和第四区域206,并且由此获知第三区域204的内容可能存在于第一图像帧102和第三图像帧202两者中,而第四区域206的内容可能存在于第三图像202中但不存在于第一图像帧102中,在摄像机移动期间,此认知可有利地用于提高编码质量,降低编码的计算复杂度和/或降低比特率。
例如,使用第三区域204和第四区域206的内容的以上认知,编码器可以针对两个区域中的每一个在不同的编码方法集合当中有利地选择编码方法。对于第三区域204的每个特定像素块,基于来自使用第一图像帧102和第三图像帧202的至少一部分以及特定像素块作为输入(因为第三区域可能包括存在于第一图像帧102和第三图像帧202两者中的图像数据)的块匹配算法的输出,编码器可以在将特定像素块编码为I块、P块、P跳跃块、B块和B跳跃块中的一种之间进行选择,并且根据该选择对特定像素块进行编码S818。另一方面,对于第四区域206的每个特定像素块,基于来自使用第三图像帧202的至少一部分以及特定像素块作为输入(因为第四区域206的图像内容可能存在于第三图像帧202中但不存在于第一图像帧102中)的块匹配算法的输出,编码器可以在将特定像素块编码为I块、B块和B跳跃块中的一种之间进行选择,并且根据该选择对特定像素块进行编码S820。通过预先获知例如第一图像帧102可能不包括要被匹配至第四区域206中的特定像素块的图像数据,对于第四区域,编码方法的计算复杂度可被降低。
可选地,在对第三区域和第四区域中的像素块进行编码S818、S820之前,可改变用于在可用的编码方法之间进行选择的编码器的阈值。
例如,基于来自块匹配算法的输出,编码器具有预定义的第三阈值,预定义的第三阈值用于在将像素块编码为B跳跃块和将像素块编码为B块之间进行选择。例如,如果块匹配算法输出SAD值,则预定义的第三阈值可以是45(用于第三图像帧202和/或第一图像帧102的最佳匹配块),用于将特定像素块编码为B跳跃块。低于此值,特定像素块被编码为B跳跃块,而高于此值(但低于第一阈值),特定像素块可被编码为B块。在本实施例中,摄像机移动的认知可被使用,使得在摄像机移动期间第三阈值可以提高S810到例如90。
如上所述,关于摄像机移动的信息作为块匹配算法的输入,使得块匹配算法可以将该输入用作初始值,在第一图像和/或第三图像中,块匹配算法应当针对第二图像帧104中的特定像素块开始为第一图像帧102和/或第三图像帧202中的像素块匹配块并且计算差值(代价函数等)。
图9示出了实施在图8中所描述的方法的编码器900。编码器900因此被布置用于对由摄像机捕获的视频流908进行编码。视频流908包括第一图像帧和第二图像帧,并且在视频流908中第一图像帧在第二图像帧之前。该视频流908由编码器接收。
编码器900进一步包括接收部件902,接收部件902被布置为接收关于摄像机移动的信息910。该接收部件还可以被布置为接收视频流908。
编码器还包括区域计算部件904,区域计算部件904被布置为基于关于摄像机移动的信息910定义第二图像帧的包括还存在于第一图像帧中的图像数据的第一区域以及第二图像帧的包括不存在于第一图像帧中的图像数据的第二区域。
编码器进一步包括编码部件906,编码部件906被布置为:针对第二区域,使用I块编码来对每个像素块进行编码,并且针对第一区域的每个特定像素块,基于来自使用第一图像帧的至少一部分以及特定像素块作为输入的块匹配算法的输出,在将特定像素块编码为I块、P块和P跳跃块中的一种之间进行选择,并且根据该选择对特定像素块进行编码。
根据一些实施例,视频流908可以在编码部件906处直接被接收。
本公开的编码器可以具有到摄像机1000的有线或无线连接,摄像机1000捕获被传输到编码器900的视频流908。这样的摄像机1000在图10中被示出。在一些实施例中,摄像机包括编码器900。摄像机包括用于估计摄像机的移动的运动估计装置1002,并且将关于移动的信息910传输至编码器。运动估计装置1002可以被布置为使用以下中的至少一种估计摄像机的移动:摄像机的PT控制的输入、关于摄像机的步进电机移动的信息、来自摄像机中的传感器(例如,陀螺仪、红外传感器或本领域中已知的类似的运动传感器)的运动数据以及视频摄像机软件,视频摄像机软件被布置为执行来自视频流中的图像帧的时域滤波的全局运动估计。
如上所述,摄像机移动的认知可以被编码器使用,用于针对要被编码的图像帧的不同区域使用不同的量化参数。由于编码器可以在对例如第二图像帧进行编码时访问关于在对当前第二图像帧进行编码时可用的下一帧(例如第三图像帧)期间摄像机如何移动的数据,这可以用于提高编码质量和/或降低要求的比特率。除了以上已经描述的之外,将给出另一示例。
对于具有8个像素块A、B、C、D、E、F、G和H(例如,16×16像素)的视频定义为:
A B C D
E F G H
具有向右的16个像素的PTZ运动:
—块A和块E将在下一帧中消失。
—块B和块F将在第二个下一帧中消失。
—块D和块H在此帧中是新的。
—剩下的块(C和G)将在视频中至少再停留两帧。
基于关于摄像机的摇摄移动的以上信息,下面的QP表可被应用。
+2 +1 0 -1
+2 +1 0 -1
应当注意的是,较低的QP值降低压缩并且因此提高编码质量。
在上文中公开的系统(例如编码器900)和方法可以实施为软件、固件、硬件或者其组合。在硬件实施方案中,在以上描述中提及的功能单元或部件(例如,接收部件902、区域计算部件904等)之间的任务的划分不必与物理单元的划分对应;相反,一个物理部件可以具有多个功能,而一个任务可以由若干个物理部件协作实现。某些部件或所有部件可以被实施为由数字信号处理器或微处理器执行的软件,或者可以被实施为硬件或专用集成电路。这种软件可以被分布在计算机可读介质上,其可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域技术人员所熟知的,术语计算机存储介质包括以任意方法或技术实施的、用于诸如计算机可读指令、数据结构、程序模块或其他数据的信息的存储的易失性和非易失性、可移动的和不可移动的介质。计算机存储介质包括但不限于,RAM、ROM、EEPROM、闪存或其他贮存技术,CD-ROM、数字多功能盘(DVD)或其他光盘存储器、盒式磁带、磁带、磁盘存储器或其他磁存储装置,或者可以用来存储所需信息并且可由计算机访问的任何其他介质。

Claims (13)

1.一种在编码器中执行的、用于对由摄像机捕获的视频流进行编码的方法,所述视频流描绘场景,所述视频流包括第一图像帧(102)和第二图像帧(104),在所述视频流中所述第一图像帧在所述第二图像帧之前,所述第一图像帧和所述第二图像帧覆盖所述场景的部分重叠的部分,所述方法包括下述步骤:
接收(S802)关于所述摄像机的移动的信息;
基于关于所述摄像机的移动的所述信息,定义(S804)所述第二图像帧的第一区域(106)和第二区域(108),其中所述第一区域覆盖所述场景的还被所述第一图像帧覆盖的部分,并且其中所述第二区域覆盖所述场景的未被所述第一图像帧覆盖的部分;
针对所述第二区域,使用I块编码对每个像素块进行编码(S814);
针对所述第一区域的每个特定像素块,使用所述第一图像帧的至少一部分和所述特定像素块作为块匹配算法的输入,基于来自所述块匹配算法的输出,在将所述特定像素块编码为I块、P块和P跳跃块中的一种之间进行选择,并且根据所述选择对所述特定像素块进行编码(S816)。
2.根据权利要求1所述的方法,其中,所述编码器具有预定义的第一阈值,其中所述编码器被布置用于当来自所述块匹配算法的输出超出所述预定义的阈值时选择将像素块编码为I块,其中所述方法包括下述步骤:
在所述摄像机的移动期间,提高(S808)所述第一阈值。
3.根据权利要求1所述的方法,其中,所述编码器具有预定义的第二阈值,其中所述编码器被布置用于在将像素块编码为P跳跃块和将像素块编码为P块之间进行选择,其中所述编码器被布置为当来自所述块匹配算法的输出未超出所述第二预定义的阈值时将所述像素块编码为P跳跃块,其中所述方法包括下述步骤:
在所述摄像机的移动期间,提高(S810)所述第二阈值。
4.根据权利要求1所述的方法,其中,所述视频流进一步包括第三图像帧(202),在所述视频流中所述第二图像帧在所述第三图像帧之前,其中所述第三图像帧覆盖所述场景的与所述场景的由所述第一图像帧和所述第二图像帧覆盖的部分部分重叠的部分,其中所述第一区域和所述第二区域覆盖所述场景的未被所述第三图像帧覆盖的部分。
5.根据权利要求4所述的方法,进一步包括下述步骤:
基于关于所述摄像机的移动的所述信息,定义(S806)所述第二图像帧的第三区域(204)和所述第二图像帧的第四区域(206),所述第三区域(204)覆盖所述场景的还被所述第一图像帧覆盖并且处于所述第三图像帧中的部分,所述第四区域(206)覆盖所述场景的还被所述第三图像帧覆盖并且未被所述第一图像帧覆盖的部分;
针对所述第三区域的每个特定像素块,基于来自使用所述第一图像帧和所述第三图像帧的至少一部分以及所述特定像素块作为输入的所述块匹配算法的输出,在将所述特定像素块编码为I块、P块、P跳跃块、B块和B跳跃块中的一种之间进行选择,并且根据所述选择对所述特定像素块进行编码(S818);
针对所述第四区域的每个特定像素块,基于来自使用所述第三图像帧的至少一部分和特定像素块作为输入的所述块匹配算法的输出,在将所述特定像素块编码为I块、B块和B跳跃块中的一种之间进行选择,并且根据所述选择对所述特定像素块进行编码(S820)。
6.根据权利要求5所述的方法,其中,所述编码器具有预定义的第三阈值,所述预定义的第三阈值用于在将像素块编码为B跳跃块和将像素块编码为B块之间进行选择,其中所述编码器被布置为当来自所述块匹配算法的输出未超出所述预定义的第三阈值时将所述像素块编码为B跳跃块,其中所述方法包括下述步骤:
在所述摄像机的移动期间,提高(S812)所述第三阈值。
7.根据权利要求6所述的方法,
其中对所述第一区域的像素块进行编码的步骤包括使用第一量化参数,
其中对所述第二区域的像素块进行编码的步骤包括使用第二量化参数,
其中对所述第三区域的像素块进行编码的步骤包括使用第三量化参数,
其中对所述第四区域的像素块进行编码的步骤包括使用第四量化参数,
其中所述第三量化参数和所述第四量化参数低于所述第一量化参数和所述第二量化参数。
8.根据权利要求7所述的方法,其中,所述第四量化参数低于所述第三量化参数。
9.根据权利要求1所述的方法,其中,所述编码器是H.264编码器,其中所述方法进一步包括下述步骤:
确定关于所述摄像机的移动的所述信息与所述摄像机的水平移动对应;
在对所述第二图像的像素块进行编码之前旋转所述第二图像。
10.根据权利要求1所述的方法,进一步包括下述步骤:
提供关于所述摄像机的移动的所述信息作为所述块匹配算法的输入。
11.一种编码器(900),被布置用于对由摄像机捕获的视频流(908)进行编码,所述视频流描绘场景,所述视频流包括第一图像帧和第二图像帧,在所述视频流中所述第一图像帧在所述第二图像帧之前,所述第一图像帧和所述第二图像帧覆盖所述场景的部分重叠的部分,所述编码器包括:
接收部件(902),被布置为接收关于所述摄像机的移动的信息(910);
区域计算部件(904),被布置为基于关于所述摄像机的移动的所述信息,定义所述第二图像帧的第一区域(106)和第二区域(108),其中所述第一区域覆盖所述场景的还被所述第一图像帧覆盖的部分,并且其中所述第二区域覆盖所述场景的未被所述第一图像帧覆盖的部分;
编码部件(906),被布置为:
针对所述第二区域,使用I块编码对每个像素块进行编码;并且
针对所述第一区域的每个特定像素块,基于来自使用所述第一图像帧的至少一部分和所述特定像素块作为输入的块匹配算法的输出,在将所述特定像素块编码为I块、P块和P跳跃块中的一种之间进行选择,并且根据所述选择对所述特定像素块进行编码。
12.一种摄像机(1000),被布置为捕获描述场景的视频流(908),所述摄像机包括用于估计所述摄像机的移动的运动估计装置(1002),所述摄像机连接至如权利要求11所限定的编码器,其中所述装置被布置用于将关于所述摄像机的移动的信息传输至所述编码器,其中所述摄像机被布置用于将所述视频流传输至所述编码器。
13.根据权利要求12所述的摄像机,其中,所述运动估计装置被布置用于使用以下中的至少一种估计所述摄像机的移动:所述摄像机的PT控制的输入、关于所述摄像机的步进电机移动的信息、来自所述摄像机中的传感器的运动数据、以及来自所述视频流中的图像帧的时域滤波的全局运动估计。
CN201710141219.7A 2016-03-15 2017-03-10 用于编码视频流的方法和系统 Active CN107197307B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP16160285.9 2016-03-15
EP16160285.9A EP3220642B1 (en) 2016-03-15 2016-03-15 Method, apparatus and system for encoding a video stream by defining areas within a second image frame with image data common to a first image frame

Publications (2)

Publication Number Publication Date
CN107197307A true CN107197307A (zh) 2017-09-22
CN107197307B CN107197307B (zh) 2018-10-16

Family

ID=55586167

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710141219.7A Active CN107197307B (zh) 2016-03-15 2017-03-10 用于编码视频流的方法和系统

Country Status (6)

Country Link
US (1) US10075727B2 (zh)
EP (1) EP3220642B1 (zh)
JP (1) JP6463397B2 (zh)
KR (1) KR101908639B1 (zh)
CN (1) CN107197307B (zh)
TW (1) TWI660626B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111212283A (zh) * 2018-11-22 2020-05-29 安讯士有限公司 用于多个图像帧的帧内刷新编码的方法
CN111314696A (zh) * 2018-12-11 2020-06-19 安讯士有限公司 用于对图像帧的序列进行编码的方法和设备
CN112887721A (zh) * 2019-11-29 2021-06-01 安讯士有限公司 对视频流的图像帧进行编码和传输
CN114374842A (zh) * 2020-10-16 2022-04-19 安讯士有限公司 对包括隐私屏蔽的图像进行编码的方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7036416B2 (ja) 2017-10-18 2022-03-15 Necプラットフォームズ株式会社 装置
US10397518B1 (en) * 2018-01-16 2019-08-27 Amazon Technologies, Inc. Combining encoded video streams
EP3713235B1 (en) * 2019-03-19 2023-08-02 Axis AB Methods and devices for encoding a video stream using a first and a second encoder
JP7343596B6 (ja) 2019-08-23 2024-02-26 華為技術有限公司 合同クロマ符号化を使用するブロックについてクロマ・ブロッキング解除を実行するためのエンコーダ、デコーダおよび対応する方法
EP3833028B1 (en) * 2019-12-03 2022-02-09 Axis AB Method and system for calculating a cost of encoding a motion vector
US11425412B1 (en) * 2020-11-10 2022-08-23 Amazon Technologies, Inc. Motion cues for video encoding

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1554194A (zh) * 2001-09-12 2004-12-08 �ʼҷ����ֵ��ӹɷ����޹�˾ 运动估计和/或补偿
CN1875633A (zh) * 2003-10-28 2006-12-06 皇家飞利浦电子股份有限公司 跟踪快速移动的小物体的运动矢量场求精法
WO2009156965A1 (en) * 2008-06-27 2009-12-30 Nokia Corporation Video encoding using motion data
US20100118185A1 (en) * 2006-11-07 2010-05-13 Sharp Kabushiki Kaisha Image displaying device and method, and image processing device and method
CN103673990A (zh) * 2012-09-13 2014-03-26 北京同步科技有限公司 获取摄像机姿态数据的装置及其方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05336514A (ja) * 1992-05-29 1993-12-17 Sony Corp 画像符号化装置
US5537155A (en) * 1994-04-29 1996-07-16 Motorola, Inc. Method for estimating motion in a video sequence
EP0720383B1 (en) * 1994-12-30 2000-09-13 Daewoo Electronics Co., Ltd Method and apparatus for detecting motion vectors in a frame decimating video encoder
JP3317327B2 (ja) * 1996-02-07 2002-08-26 日本電信電話株式会社 動画像符号化方法および装置
US7653133B2 (en) * 2003-06-10 2010-01-26 Rensselaer Polytechnic Institute (Rpi) Overlapped block motion compression for variable size blocks in the context of MCTF scalable video coders
JP4507896B2 (ja) * 2005-01-27 2010-07-21 パナソニック株式会社 動画像圧縮装置と動画像圧縮処理方法
US8774272B1 (en) 2005-07-15 2014-07-08 Geo Semiconductor Inc. Video quality by controlling inter frame encoding according to frame position in GOP
JP2007228101A (ja) * 2006-02-21 2007-09-06 Victor Co Of Japan Ltd 動画像符号化装置
US20100079605A1 (en) 2008-09-29 2010-04-01 William Marsh Rice University Sensor-Assisted Motion Estimation for Efficient Video Encoding
US20110292997A1 (en) 2009-11-06 2011-12-01 Qualcomm Incorporated Control of video encoding based on image capture parameters
JP5598199B2 (ja) * 2010-09-16 2014-10-01 富士通株式会社 動画像符号化装置
US9769473B2 (en) 2012-06-08 2017-09-19 Apple Inc. Predictive video coder with low power reference picture transformation

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1554194A (zh) * 2001-09-12 2004-12-08 �ʼҷ����ֵ��ӹɷ����޹�˾ 运动估计和/或补偿
CN1875633A (zh) * 2003-10-28 2006-12-06 皇家飞利浦电子股份有限公司 跟踪快速移动的小物体的运动矢量场求精法
US20100118185A1 (en) * 2006-11-07 2010-05-13 Sharp Kabushiki Kaisha Image displaying device and method, and image processing device and method
WO2009156965A1 (en) * 2008-06-27 2009-12-30 Nokia Corporation Video encoding using motion data
CN103673990A (zh) * 2012-09-13 2014-03-26 北京同步科技有限公司 获取摄像机姿态数据的装置及其方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111212283A (zh) * 2018-11-22 2020-05-29 安讯士有限公司 用于多个图像帧的帧内刷新编码的方法
CN111212283B (zh) * 2018-11-22 2021-03-26 安讯士有限公司 用于多个图像帧的帧内刷新编码的方法
CN111314696A (zh) * 2018-12-11 2020-06-19 安讯士有限公司 用于对图像帧的序列进行编码的方法和设备
CN111314696B (zh) * 2018-12-11 2023-03-24 安讯士有限公司 用于对图像帧的序列进行编码的方法和设备
CN112887721A (zh) * 2019-11-29 2021-06-01 安讯士有限公司 对视频流的图像帧进行编码和传输
CN112887721B (zh) * 2019-11-29 2023-03-24 安讯士有限公司 对视频流的图像帧进行编码和传输
CN114374842A (zh) * 2020-10-16 2022-04-19 安讯士有限公司 对包括隐私屏蔽的图像进行编码的方法
CN114374842B (zh) * 2020-10-16 2023-06-23 安讯士有限公司 对包括隐私屏蔽的图像进行编码的方法、系统和摄像机

Also Published As

Publication number Publication date
EP3220642B1 (en) 2018-03-07
TW201737712A (zh) 2017-10-16
JP2017201777A (ja) 2017-11-09
US10075727B2 (en) 2018-09-11
US20170272771A1 (en) 2017-09-21
KR20170107377A (ko) 2017-09-25
JP6463397B2 (ja) 2019-01-30
EP3220642A1 (en) 2017-09-20
CN107197307B (zh) 2018-10-16
TWI660626B (zh) 2019-05-21
KR101908639B1 (ko) 2018-10-16

Similar Documents

Publication Publication Date Title
CN107197307B (zh) 用于编码视频流的方法和系统
RU2518435C2 (ru) Оптимизация кодера в системах доставки стереоскопического видео
CN109688410B (zh) 以支持辅助帧的视频编码格式编码视频流的方法及编码器
CN102823250B (zh) 图像编码装置、图像解码装置、图像编码方法以及图像解码方法
CN103650504A (zh) 基于图像捕获参数对视频编码的控制
CN102450010A (zh) 定向内插和数据后处理
CN100521744C (zh) 图像处理设备和方法
JP2015515201A (ja) ビデオストリームの選択された空間部分を符号化するための方法および装置
CN103327319B (zh) 利用缩放后的运动搜索识别运动矢量候选的方法与设备
CN100393137C (zh) 移动图像编码装置
CN111567030B (zh) 用于自动切换视频捕获及回放帧率的方法
EP3852368A1 (en) Image processing apparatus and method
JP2017201777A5 (zh)
US7792373B2 (en) Image processing apparatus, image processing method, and image processing program
US20130094587A1 (en) Method and device for determining a saliency value of a block of a video frame blockwise predictive encoded in a data stream
CN101436301B (zh) 视频编码中特征运动区域的检测方法
Laumer et al. Moving object detection in the H. 264/AVC compressed domain
CN104380742A (zh) 籍助于选择性遗传的编码和解码
JP2014099028A (ja) 映像動き評価方法および映像動き評価装置
JP4243034B2 (ja) 符号化装置
CN104995917A (zh) 一种自适应运动估计方法和模块
JPH10327401A (ja) 動きベクトル検出方法及びそれを用いた画像信号の符号化方法及び装置
Zhang et al. An early CU partition mode decision algorithm in VVC based on variogram for virtual reality 360 degree videos
CN103155566A (zh) 动态图像编码方法以及动态图像编码装置
CN117896528A (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