CN118055237A - 用于管理数据缓冲器中的编码后的图像帧的方法和装置 - Google Patents

用于管理数据缓冲器中的编码后的图像帧的方法和装置 Download PDF

Info

Publication number
CN118055237A
CN118055237A CN202311497253.XA CN202311497253A CN118055237A CN 118055237 A CN118055237 A CN 118055237A CN 202311497253 A CN202311497253 A CN 202311497253A CN 118055237 A CN118055237 A CN 118055237A
Authority
CN
China
Prior art keywords
encoded image
image frames
frames
frame
encoded
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
CN202311497253.XA
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.)
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 CN118055237A publication Critical patent/CN118055237A/zh
Pending legal-status Critical Current

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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • 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/177Methods 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 group of pictures [GOP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

公开了用于管理数据缓冲器中的编码后的图像帧的方法和装置。方法包括:获得描绘场景并且被布置在图片组GOP中的编码后的图像帧的输入流;确定是否满足缓冲器充满度要求;当缓冲器充满度要求未被满足时,将被包括在获得的输入流中的一个或多个编码后的图像帧存储在事件前缓冲器中,直到缓冲器充满度要求被满足;当缓冲器充满度要求被满足时:从存储在数据缓冲器中的编码后的图像帧中选择要从数据缓冲器中去除的一个或多个编码后的图像帧;从事件前缓冲器中去除选择的一个或多个编码后的图像帧;并且在事件前缓冲器中存储被包括在获得的输入流中的一个或多个编码后的图像帧。

Description

用于管理数据缓冲器中的编码后的图像帧的方法和装置
技术领域
本发明涉及用于管理数据缓冲器中的编码后的图像帧的装置和方法。
背景技术
视频监视在不同应用中的使用正在稳定地增加。监视或监控照相机可以例如被用于犯罪预防和交通监控,并且监控照相机可以安装在购物中心、零售店、私人住宅、车辆和道路中,并且所谓的身体佩戴照相机(BWC)可以由例如警察和警卫佩戴。
通常,监控照相机随着时间的推移捕获场景的图像帧,从而获得图像帧的时间序列。图像帧的时间序列可以被称为视频序列。在视频序列被存储在存储器中或者通过通信网络被传输到接收器之前,视频序列被压缩以减少其大小。压缩可以通过各种视频编码方法来执行。在多个数字视频编码系统中,两种主要的模式被用于压缩视频序列的图像帧:帧内/模式编码和帧间/模式编码。
在帧内模式编码中,通过利用图像帧本身内的像素的空间冗余经由预测、变换和熵编码对图像帧进行编码。在帧内模式中编码后的图像帧被称为帧内帧、I帧或者关键帧。
帧间模式编码利用单独的图像帧之间的时间冗余,并且依赖于通过对选择的像素块从一个图像帧到另一图像帧的像素中的运动进行编码来从一个或多个其它图像帧预测图像帧的部分的运动补偿预测技术。在帧间模式中编码后的图像帧被称为帧间帧,并且可以是P帧或B帧。P帧是基于从先前I帧或P帧的前向预测进行编码的前向预测帧。然而,B帧是基于从先前I帧或P帧的前向预测以及从后续I帧或P帧的后向预测进行编码的双向预测帧。因此,B帧基于在先图像帧和后续图像帧二者,而P帧仅基于在先帧。一些编码系统也使用另一种帧间帧,其有时被称为帧间刷新帧,或仅被称为刷新帧或R帧。这种帧间帧也可以被称为快进帧或F帧。与P帧不同,F帧不使用最近的在先解码的P帧作为参考图像帧,而是参考回最近的在先帧内帧。
编码后的图像帧被布置在图片组中,或者简称为GOP,其中GOP可以包括固定数量的图片,即固定数量的图像帧,或者,当使用动态GOP的概念时,GOP可以包括变化数量的图像帧。每个图片组由帧内帧开始,帧内帧不参考任何其它图像帧。帧内帧随后是多个帧间帧,这些帧间帧确实参考其它图像帧。图像帧不必必须以与它们被捕获或显示的顺序相同的顺序进行编码和解码。唯一的固有限制是,对于用作参考帧的图像帧,其必须在将它作为参考的图像帧可以被编码之前进行解码。在监视或监控应用中,编码一般实时完成,意味着最实用的方法是以与捕获和显示图像帧的顺序相同的顺序对图像帧进行编码和解码,因为否则将存在非期望的延迟。
具体地在监控或监视应用中,视频序列的记录可以基于一个或多个事件触发器,例如,在检测到监控区域内的运动时触发的运动检测事件触发器。如此,当诸如当在先前静止的场景中发生移动或者当火灾警报或入室盗窃警报被触发的事件发生时,可以启动记录。当记录基于事件触发器时,也记录在事件被触发之前捕获的视频序列通常是有用的。这样的视频序列在本文中被称为事件前视频序列。例如,如果记录是由在代表被监控场景的一部分的感兴趣的区域中移动的人触发的,则可能感兴趣的是也记录显示在事件被触发之前该人如何在感兴趣的区域内移动(例如,进入感兴趣的区域)的视频序列,因为这样的视频序列可以具有证据价值。为了能够在事件发生时记录事件前视频序列,编码后的图像帧可以被连续地缓冲在诸如先进先出(FIFO)缓冲器的缓冲器中。当FIFO缓冲器满时,最旧的缓冲的编码后的图像帧被最新的编码后的图像帧重写。在事件触发时,从FIFO缓冲器检索缓冲的编码后的图像帧,并将其传输或转移到记录器,使得检索的编码后的图像帧可以先于在事件处开始的视频序列被记录。然后可以在事件期间以及在事件过去之后的预定的时间期间继续记录。可替代地,记录可以继续,直到接收到代表停止记录事件的事件触发器为止。事件前视频序列的时间长度可以由用户设置。
图1示意性地图示了由监控照相机捕获的I帧和P帧的序列。在图中,字母I表示I帧,并且字母P表示P帧。图1也图示了事件何时开始和事件何时结束。事件的开始可以是当运动警报被触发时,而事件的结束可以是当运动警报已经由操作者确认时。然而,事件的结束不必与操作者所采取的操作相关联。而是,事件的结束可以被认为发生在事件被触发之后的预定义的时间段或者发生在检测到的运动终止之后的预定义的时间段。由监控照相机在事件开始之前捕获的图像帧的事件前视频序列可以临时存储在FIFO缓冲器中。因为缓冲器存储图像帧的事件前视频序列,所以缓冲器有时被称为事件前缓冲器。当事件开始时,从缓冲器中检索图像帧的事件前视频序列,并且将检索到的事件前图像序列与从事件开始及之后捕获的图像帧的视频序列组合。因此,除了事件前视频序列之外,组合的图像帧的视频序列还可以包括包含在事件期间捕获的图像帧的视频序列的事件视频序列和包含在事件结束之后捕获的图像帧的视频序列的事件后视频序列。组合的图像帧的视频序列可以例如被显示给操作者和/或被永久地记录在存储器中供以后重放和调查。
一些监控照相机可以连续地捕获图像帧,但是仅在事件触发时记录它们,而其它监控照相机仅在事件触发时捕获图像帧并且记录它们。提到的第一种类型的监控照相机通常将捕获的图像帧存储到FIFO缓冲器中,以便以后可以将它们记录在存储器中。与作为更永久的存储的存储器中的记录相比,FIFO缓冲器中的存储被视为临时存储。因为缓冲器是FIFO缓冲器,所以当缓冲器满时,FIFO缓冲器中最旧的图像帧将被最新捕获的图像帧重写。通常,用户决定要在缓冲器中缓冲的编码后的图像帧的事件前视频序列的时间长度。例如,可能感兴趣的是能够记录和/或显示在事件被触发之前3秒开始的视频序列。该时间段有时被称为事件前记录时间,并且在给定的示例中,事件前记录时间为3秒。为了能够解码和观看这3秒的编码后的图像帧,缓冲的事件前视频序列必须以I帧开始。然而,这3秒中的第一个图像帧很可能是P帧,如图1中例证的。因为在没有P帧参考其进行编码的I帧的情况下,P帧不包括所有必要的数据,所以事件前视频序列的解码不能在P帧处开始。为了保证将存在至少3秒的可解码的事件前视频,如在US2016/277759 A1中描述的,对应于一个GOP的编码后的图像帧的额外的序列的容量被添加到缓冲器中。所以,存储在事件前缓冲器中的编码后的图像帧的实际时间长度将取决于用户选择的事件前记录时间、当前的帧速率和GOP长度。比如,在用户设置3秒的事件前记录时间、30fps的帧速率和128个图像帧的GOP长度的情况下,事件前缓冲器中缓冲的事件前视频序列的总时间将是7.3秒(3秒+128/30秒)。因此,在此示例中,需要在事件前缓冲器中缓冲的事件前视频序列的总时间大于期望的事件前记录时间的两倍。因此,因为总是需要另外的GOP,所以需要在事件前缓冲器中缓冲的事件前视频序列的总时间总是比期望的事件前记录时间长。当试图优化缓冲器的存储使用时,并且尤其是当试图将编码后的图像帧的缓冲优化为仅提供具有期望的事件前记录时间的事件前视频序列所需要的缓冲时,这是一个缺点。进一步,因为GOP长度可以变化,并且因为事件前视频序列的长度基于GOP长度而变化,所以事件前缓冲器必须能够保留变化长度的事件前视频序列,以便确保可以从缓冲器中检索到事件前记录时间的可解码的事件前图像序列。作为安全措施,事件前缓冲器可以被配置为能够缓冲除了期望的长度的事件前视频系列之外还包括具有最长的GOP长度的额外的GOP的事件前视频序列。因此,需要改进的编码后的图像帧的缓冲。尤其,需要改进的缓冲在数据缓冲器中的编码后的图像帧的管理。
ISOVIC D等人:“资源受限系统中的质量感知MPEG-2流自适应”(欧洲微处理器实时系统会议论文集,2004年1月1日(2004-01-01),第23-32页,XP002447140)描述了一种用于在有限的资源下进行MPEG解码的方法,其中跳帧被应用于MPEG流以实现仅包括能够保证被及时解码和显示的帧的定制的MPEG流。
CA2 786 200A1公开了容量和频谱受限的、通过选择性地丢弃分组来优化性能的多址通信系统。分组被划分优先级,并且基于优先级做出丢弃决定。
发明内容
鉴于上述内容,因此本发明的目的是缓解现有技术的缺点,并且提供改进的编码后的图像帧的缓冲。尤其,目的是以所有存储的(例如缓冲的)编码后的图像帧可以作为可解码的视频序列从数据缓冲器中被检索的方式并且以仅用于获得具有预定义的记录时间的可解码的视频序列所需要的编码后的那些图像帧可以被存储在数据缓冲器中的方式来管理数据缓冲器(例如事件前缓冲器)中的编码后的图像帧。这可以被称为以所有存储的编码后的图像帧可以作为具有预定义的记录时间的可解码的视频序列从数据缓冲器中被检索的方式修剪数据缓冲器。从而,仅用于生成视频序列所需要的编码后的图像帧可以被存储在数据缓冲器中。从而,在数据缓冲器中不需要用于存储额外的GOP的额外的空间。
目的的方面是当数据缓冲器满时选择要删除哪一个或多个存储的编码后的图像帧,以便能够存储新的编码后的图像帧。如果从数据缓冲器中删除了“错误”的编码后的图像帧,即用作一个或多个其它编码后的图像帧的参考的参考图像帧,则这些一个或多个其它编码后的图像帧将不可解码,并且因此将不可能从数据缓冲器中检索包括所有缓冲的编码后的图像帧的可解码的视频序列。
本发明由所附权利要求限定。
根据本发明的第一方面,上述目的通过一种用于管理事件前缓冲器中的编码后的图像帧的方法来实现,其中编码后的图像帧描绘场景,其中事件前缓冲器被配置为临时存储编码后的图像帧,当检测到场景中的事件或者与场景相关的事件时,存储的编码后的图像帧构成在事件之前捕获的视频序列。方法包括获得描绘场景并且被布置在图片组(GOP)中的编码后的图像帧的输入流,每个GOP包括单个帧内帧以及两个或更多个帧子组。每个帧子组包括直接参考帧内帧进行编码的单个直接编码的帧间帧,以及经由单个直接编码的帧间帧间接参考帧内帧进行编码的零个或多个间接编码的帧间帧。进一步,方法包括确定是否满足缓冲器充满度要求,其中缓冲器充满度要求是当存储的编码后的图像帧的总记录时间等于预定义的记录时间时或者如果获得的输入流中的一个或多个编码后的图像帧被存储、则存储的编码后的图像帧的总记录时间将变得大于预定义的记录时间时所满足的缓冲时间要求。当缓冲器充满度要求未被满足时,方法包括将被包括在获得的输入流中的一个或多个编码后的图像帧存储在事件前缓冲器中,直到缓冲器充满度要求被满足。当缓冲器充满度要求被满足时,方法包括从存储在数据缓冲器中的编码后的图像帧中选择要从数据缓冲器中去除的一个或多个编码后的图像帧。选择的一个或多个编码后的图像帧是非参考编码后的图像帧以及两个或更多个帧子组中的帧子组中的至少一个,其中非参考编码后的图像帧是未被用作存储的编码后的图像帧中的任何编码后的图像帧的参考图像帧的编码后的图像帧。此外,方法包括从事件前缓冲器中去除选择的一个或多个编码后的图像帧,并且在事件前缓冲器中存储被包括在获得的输入流中的一个或多个编码后的图像帧。从而将临时存储在事件前缓冲器中的编码后的图像帧管理为仅是构成具有预定义的记录时间的可解码的视频序列的那些编码后的图像帧。
当在本公开中使用时,术语“帧内帧”应理解为帧内编码的图像帧,即,理解为使用帧内模式进行编码而不参考另一图像帧的图像帧。帧内帧可以被称为I帧或关键帧。
当在本公开中使用时,术语“帧间帧”应理解为帧间编码的图像帧,即,理解为使用帧间模式编码参考至少一个其它图像帧进行编码的图像帧。在对另一图像帧进行编码时用作参考帧的图像帧在本文中被称为“参考/参考图像帧”,并且未被用作参考的编码后的图像帧在本文中被称为“非参考编码后的图像帧”。
术语“直接编码的帧间帧”应理解为直接参考帧内帧进行编码的帧间帧。
当在本公开中使用时,术语“间接编码的帧间帧”应理解为经由直接编码的帧间帧间接参考帧内帧进行编码的帧间帧。因此,间接编码的帧间帧可以直接参考直接编码的帧间帧进行编码,该直接编码的帧间帧直接参考帧内帧进行编码。换句话说,间接编码的帧间帧可以经由直接编码的帧间帧间接参考帧内帧进行编码。为了解码间接编码的帧间帧,需要间接编码的帧间帧所参考的直接编码的帧间帧和该直接编码的帧间帧所参考的帧内帧二者。可替代地,间接编码的帧间帧可以直接参考在先间接编码的帧间帧进行编码。
当在本文中使用时,术语“非参考编码后的图像帧”应理解为未被用作存储在数据缓冲器中的编码后的图像帧中的任何一个的参考图像帧的编码后的图像帧。
通过管理事件前缓冲器中的编码后的图像帧(诸如如本发明所建议的通过在事件前缓冲器满时从事件前缓冲器中去除一个或多个存储的编码后的图像帧来修剪事件前缓冲器),新的编码后的图像帧可以连续地被存储在事件前缓冲器中,并且所有存储的编码后的图像帧可以作为可解码的视频序列从事件前缓冲器中被检索。优选地,例如以视频序列的帧数或秒数测量的事件前缓冲器的大小适于仅存储用于获得具有预定义的记录时间的可解码的视频序列所需要的编码后的图像帧。如将在本文中描述的,当事件发生时,可以检索所有存储的编码后的图像帧,以便重放在事件发生之前发生了什么。在这种情况下,具有预定义的记录时间的可解码的视频序列可以被称为具有预定义的事件前记录时间的可解码的事件前视频序列。
进一步,通过在事件前缓冲器中存储被包括在布置在GOP中的编码后的图像帧的获得的输入流中的一个或多个编码后的图像帧,其中每个GOP包括单个帧内帧以及两个或更多个帧子组,并且其中每个帧子组包括直接参考帧内帧进行编码的单个直接编码的帧间帧以及经由单个直接编码的帧间帧间接参考帧内帧进行编码的零个或多个间接编码的帧间帧,在不影响解码存储在事件前缓冲器中的剩余的编码后的图像帧的能力的情况下从事件前缓冲器中选择和去除一个或多个编码后的图像帧是可能的。
因此,本发明的益处在于在事件前缓冲器中仅存储用于获得具有预定义的记录时间的可解码的视频序列所需要的那些编码后的图像帧是可能的。
根据本发明的第二方面,上述目的通过一种用于管理事件前缓冲器中的编码后的图像帧的装置来实现,其中编码后的图像帧描绘场景,其中事件前缓冲器被配置为临时存储编码后的图像帧,当检测到场景中的事件或者与场景相关的事件时,存储的编码后的图像帧构成在事件之前捕获的视频序列。装置包括被配置为获得描绘场景并且被布置在图片组(GOP)中的编码后的图像帧的输入流的获得模块,每个GOP包括单个帧内帧以及两个或更多个帧子组。每个帧子组包括直接参考帧内帧进行编码的单个直接编码的帧间帧,以及经由单个直接编码的帧间帧间接参考帧内帧进行编码的零个或多个间接编码的帧间帧。装置进一步包括被配置为确定是否满足缓冲器充满度要求的确定模块,其中缓冲器充满度要求是当存储的编码后的图像帧的总记录时间等于预定义的记录时间时或者如果获得的输入流中的一个或多个编码后的图像帧被存储、则存储的编码后的图像帧的总记录时间将变得大于预定义的记录时间时所满足的缓冲时间要求。装置包括存储模块,该存储模块被配置为当缓冲器充满度要求未被满足时,将被包括在获得的输入流中的一个或多个编码后的图像帧存储在事件前缓冲器中,直到缓冲器充满度要求被满足。此外,装置包括选择模块,该选择模块被配置为当缓冲器充满度要求被满足时,从存储的编码后的图像帧中选择要从事件前缓冲器中去除的一个或多个编码后的图像帧。选择的一个或多个编码后的图像帧是非参考编码后的图像帧以及两个或更多个帧子组中的帧子组中的至少一个,其中非参考编码后的图像帧是未被用作存储的编码后的图像帧中的任何一个的参考图像帧的编码后的图像帧。又进一步,装置包括去除模块,该去除模块被配置为从事件前缓冲器中去除选择的一个或多个编码后的图像帧,并且存储模块被配置为在事件前缓冲器中存储被包括在获得的输入流中的一个或多个编码后的图像帧。
根据本发明的第三方面,上述目的通过一种非暂时性计算机可读介质来实现,该非暂时性计算机可读介质具有存储在其上的计算机代码指令,该计算机代码指令在由具有处理能力的装置执行时适于执行第一方面的方法。
第二方面和第三方面一般可以具有与第一方面相同的特征和优势。本发明的实施例在所附从属权利要求中进行限定。进一步注意,除非另外明确地说明,否则本发明涉及在本文中公开的特征的所有可能的组合。
附图说明
通过参考附图对本发明的实施例进行下述阐释性和非限制性的详细描述,将更好地理解本发明的上述以及另外的目的、特征和优势,其中相同的附图标记将用于类似的元件,其中:
图1示意性地图示了根据现有技术的事件视频序列。
图2A示意性地图示了其中可以实施本发明的各种实施例的示例性环境。
图2B示意性地图示了包括用于管理数据缓冲器中的编码后的图像帧的装置的照相机的实施例。
图2C示意性地图示了其中用于管理数据缓冲器中的编码后的图像帧的装置连接到照相机的实施例。
图2D示意性地图示了包括或连接到编码器和记录器的照相机的实施例。
图3示意性地图示了根据实施例的用于管理数据缓冲器中的编码后的图像帧的方法的流程图。
图4A示意性地图示了根据实施例的编码后的图像帧的序列。
图4B示意性地图示了根据实施例的图片组(GOP)。
图4C示意性地图示了根据实施例的事件视频序列。
图5示意性地图示了根据实施例的用于管理数据缓冲器中的编码后的图像帧的装置的框图。
具体实施例
下文将参考附图更充分地描述本发明,附图中示出了本发明的实施例。
图2A示出了其中可以实施本发明的各种实施例的示例性环境200的示意图。如在图2A中可见,照相机208捕获到具有对象204的场景202,例如,人朝着建筑物206走去。应注意,场景202的描绘只是用于阐释性目的的简单化视图。在更一般的意义上,场景202可以被描述为其大小和形状由监控场景的照相机的视野来定义的任何三维物理空间。照相机208可以是监控照相机,有时也称为监视照相机。进一步,照相机可以是固定照相机(例如,静止照相机)、可移动照相机(例如,平移、倾斜和变焦(PTZ)照相机)或者身体佩戴照相机(BWC)。照相机208可以是可见光照相机、热成像照相机或者结合可见光和热成像方法的照相机。进一步,仅给出一些示例,照相机208可以被布置为监控诸如建筑物的门的前面、建筑物内的区域或者佩戴照相机208的人的前面的场景中的区域的建筑物外部的区域。
如图2A中图示的,照相机208被配置为直接通过网络(诸如直接通过有线网络212或无线地通过无线电链路210)将视频流传输到有线网络212,并且最终传输到可以连接到网络212的客户端214和/或服务器216。应理解,有多个无线和有线传输模型的组合可以使用,并且图2A仅图示了一个示例。进一步,在本公开中,作为例如在“视频流”、“视频序列”、“图像帧的流”和“图像帧的序列”中的术语“流”和“序列”可以互换使用。
客户端214可以是提供有输入设备和显示器的控制台,所以操作者可以向照相机208输入控制命令并且查看来自照相机208的图像和/或视频序列。服务器216可以是可以存储和/或进一步处理图像和/或视频序列的视频管理系统。典型地,客户端214也连接到服务器216。
通常,照相机208连续地捕获并且编码场景的图像帧的视频序列,并且将编码后的图像帧的视频序列缓冲(即,临时存储)在数据缓冲器中,但是仅当检测到场景中的事件或者与场景相关的事件时,并且仅当这种检测到的事件触发记录时,才执行将缓冲的视频序列记录到与数据缓冲器相比更永久的存储器中。检测到的事件可以通过在场景中检测到的运动或检测到的声音、触发与被监控的场景相关联的警报(例如入室盗窃警报或火灾警报)。例如,事件可以由被包括在照相机208中并且被配置为检测由照相机208捕获的视频序列中的运动和/或声音的视频分析模块(未示出)检测。视频分析模块可以包括分别被配置为检测视频序列中的运动和声音的图像分析模块和音频分析模块。作为另一示例,事件可以由诸如门触点、烟雾探测器或被动红外(PIR)传感器的通信地连接到照相机208的外部传感器检测。事件也可以是诸如命令的输入的用户输入事件。例如,可以通过在身体佩戴照相机上注册记录按钮的激活来检测事件。
在事件检测以后,事件通知可以被传输到接收模块。如下面将描述的,接收模块可以被包括在用于管理数据缓冲器中的编码后的图像帧的装置中。
在于由照相机208监控的场景202中检测到事件或检测到与场景202相关的事件的情况下,期望记录捕获该事件的视频序列,以便能够在稍后的时间点重放该视频序列。如先前提到的,经常也期望在记录中包括事件前视频序列。所以,照相机208可以包括或可操作地连接到被配置为缓冲(即,临时存储)在事件的情况下将构成事件前视频序列的编码后的图像帧的数据缓冲器。如下面将参考图5更详细地描述的,数据缓冲器520可以被包括在或者可操作地连接到用于管理数据缓冲器520中的编码后的图像帧的装置500。数据缓冲器520可以是用于临时存储编码后的图像帧的存储器或存储器的区域。存储器可以在硬件中的物理存储器中实施,或者可以通过使用软件中的指向物理存储器中的位置的虚拟存储器来实施。因为数据缓冲器520可以被包括在装置500中或连接到装置500,所以在图5中数据缓冲器520分别图示为布置在装置500内和装置500的外部的虚线框。装置500可以被包括在照相机208中,如图2B中示意性地图示的。
在图2C中示意性地图示了装置500可以可操作地连接到照相机208,并且数据缓冲器520可以被包括在装置500中,或者在装置500的外部并且可操作地连接到装置500。还可以设想,装置500可以被包括在照相机208中,并且数据缓冲器520被布置在照相机208的外部,但是与装置500操作连接(未示出)。
图2D示意性地图示了照相机208的实施例,照相机208包括被配置为将捕获的图像帧的序列编码为编码后的图像帧的序列的编码器220和被配置为记录从数据缓冲器520中检索到的编码后的图像帧的序列的记录器230。然而,记录器230可以被布置在照相机208的外部,但是与照相机208操作连接。还应理解,编码器220和记录器230二者都可以被布置在照相机208的外部。在图2D中还示意性地图示了可以被包括在照相机208中或者可操作地连接到照相机208的诸如比特率控制器的控制器240。控制器240控制编码器220的输出比特率,并且因此控制器240可操作地连接到编码器220。控制器240可以控制编码器220对编码后的图像帧的序列具有相同的输出比特率,而不管编码后的图像帧的序列是编码后的图像帧的事件前序列、编码后的图像帧的事件序列还是图像帧的事件后序列。然而,对于事件前序列、事件序列和事件后序列中的一个或多个,序列的输出比特率可以不同。因此,事件前序列可以具有第一比特率,事件序列可以具有第二比特率,并且事件后序列可以具有第三比特率,这些比特率可以是相同的,或者它们中的一个或多个可以不同于其它比特率。
编码器220可以是被配置为将图像帧的序列编码为符合标准视频编码格式的编码后的图像帧的序列的视频编码器。标准视频编码格式的一些示例为H.264、H.265、AV1和VVC。
记录器230可以是诸如视频记录器的被配置为记录/存储数据/视频的数据记录器。记录器230可以进一步是被配置为通过通信网络(例如,网络212)连接到诸如照相机208和/或编码器220的其它设备的网络记录器230。
与由数据缓冲器520提供的更临时的存储相比,由记录器230提供的视频序列的记录可以被视为视频序列的更永久的存储。然而,应理解,视频序列的永久存储并不意味着视频序列被永久存储,而是应理解为与数据缓冲器520提供的较短时间段相比在较长时间段内的存储。例如,仅给出一些示例,数据缓冲器520中的存储时间可以在从一秒或多秒到若干分钟甚至若干小时的范围内,而记录器230的存储时间可以在从一天或多天到若干个月甚至若干年的范围内。
现在将参考图3描述用于在被配置为存储编码后的图像帧的数据缓冲器中管理编码后的图像帧的方法。还将参考图4A、图4B和图4C以及图5。图4A示意性地图示了根据实施例的编码后的图像帧的序列,图4B示意性地图示了根据实施例的GOP,并且图4C示意性地图示了根据实施例的事件视频序列。图5示意性地图示了根据实施例的用于管理数据缓冲器520中的编码后的图像帧的装置500的框图。数据缓冲器520可以是被配置为缓冲(即,临时存储)具有预定义的事件前记录时间的事件前视频序列的事件前缓冲器。在本公开中,将参考作为存储编码后的图像帧的事件前视频序列的事件前缓冲器的数据缓冲器来描述本发明。然而,应理解,数据缓冲器不必是存储事件前视频序列的事件前缓冲器,而是可以是存储具有预定义的记录时间的编码后的图像帧的另一类型的视频序列的另一类型的数据缓冲器。进一步,应理解,动作中的一些可以是可选的,并且可以以另一适当的顺序采取动作。
动作302
在动作302中,获得布置在图片组(GOP)中的编码后的图像帧的输入流400,其中每个GOP包括单个帧内帧401以及两个或更多个帧子组SG1、SG2。进一步,每个帧子组SG1、SG2包括直接参考帧内帧401进行编码的单个直接编码的帧间帧402,以及经由单个直接编码的帧间帧402间接参考帧内帧401进行编码的零个或多个间接编码的帧间帧403。
在图4A中,编码后的图像帧的输入流400被布置在多个GOP中,图示了其中的第一GOP GOP1和第二GOP GOP2。如时间轴所指示的,第一GOP GOP1在时间上先于第二GOP GOP2,意味着第一GOP GOP1比第二GOP GOP2旧,并且它在GOP2之前被捕获。进一步,每个GOP包括帧内帧401以及两个帧子组SG1、SG2。在图4A中,使用附图标记4011来指代GOP1的帧内帧,其中下标号表示GOP号,并且使用附图标记SG11和SG12来指代GOP1的两个帧子组,其中第一个下标号表示GOP号,并且第二个下标号表示该子组是GOP的第一子组还是第二子组。GOP2使用相同的符号。然而,应理解,在本公开中,仅当期望在诸如GOP1和GOP2的两个GOP之间进行区分时才使用GOP的下标号。
在图4B中示意性地图示了GOP1包括单个帧内帧4011以及两个帧子组SG11和SG12。进一步,它图示了每个帧子组SG11和SG12包括相应的单个直接编码的帧间帧4021和4022,其中相应的单个直接编码的帧间帧的下标号表示相应的单个直接编码的帧间帧属于两个帧子组中的哪一个。如由从单个直接编码的帧间帧4021、4022中的每一个到单个帧内帧4011的箭头所指示的,单个直接编码的帧间帧4021、4022二者直接参考GOP1的单个帧内帧4011进行编码。在一些实施例中,帧子组仅由一个帧组成,即仅由单个直接编码的帧间帧402组成。单个直接编码的帧间帧402可以是直接参考帧内帧401进行编码的P帧、F帧或R帧。在本公开中,单个直接编码的帧间帧402将被称为F帧。
如也在图4B中图示的,GOP1的子组SG11可以包括一个或多个间接编码的帧间帧40311至4031n,并且GOP1的子组SG12可以包括一个或多个间接编码的帧间帧40321至4032m。为了指示一个或多个间接编码的帧间帧是可选的,它们在图中被指示为虚线框。间接编码的帧间帧403中的每一个可以是P帧或B帧。
因此,每个帧子组SG1、SG2包括直接参考帧内帧401进行编码的单个直接编码的帧间帧402。如以上提到的,有时单个直接编码的帧间帧402是被包括在子组中的仅有的帧,并且从而没有间接编码的帧间帧403被包括在子组中。然而,除了单个直接编码的帧间帧402之外,每个子组还可以包括一个或多个间接编码的帧间帧403。
每个子组包括单个直接编码的帧间帧402以及零个或多个间接编码的帧间帧403可以被表达为每个子组包括单个直接编码的帧间帧402以及没有、一个或多个间接编码的帧间帧403。可替代地,它可以被表达为每个子组包括单个直接编码的帧间帧402并且可以包括一个或多个间接编码的帧间帧403。
除了单个直接编码的帧间帧402之外,子组是否包括零个或多个间接编码的帧间帧403取决于编码后的图像帧的输入流400是如何被编码的。
输入流400在控制器240的控制下由编码器220进行编码。因此,控制器240控制编码器220将捕获的图像帧编码到布置在GOP中的编码后的图像帧的输入流400中,其中每个GOP包括单个帧内帧401以及两个或更多个帧子组SG1、SG2。控制器240可以采用恒定比特率(CBR)、最大比特率(MBR)或者可变比特率(VBR)。CBR意味着无论在捕获的场景中发生什么,编码器220将努力始终输出相同的比特率。如果带宽有限,当场景中存在运动时,这可能导致低质量的图像,但是当场景是静止的时,可以带来高质量的图像。在监视或监控情况下,这一般没有用,因为具有运动的场景通常比静止的场景更令人感兴趣。对于MBR,比特率允许变化,只要它不超过设置的比特率限制。涉及此方法的问题类似于与CBR相关联的问题。如果MBR限制设置得太低,则有运动的场景的图像可能具有低质量。然而,如果限制设置得较高,为了适应运动,则当对静止的场景的图像进行编码时,输出比特率可能不必要地高。VBR也可以被称为恒定量比特率,意味着编码后的图像的质量应保持恒定,但是输出比特率允许取决于场景中发生什么而变化。当场景中存在运动时,这种方法可能导致高输出比特率。如果带宽有限(诸如当在移动网络上传输编码后的图像帧时),则这特别成问题。类似地,如果存储有限(诸如当在数据缓冲器中缓冲编码后的图像帧时,或者当在照相机机载上(例如,在SD卡上)存储编码后的图像帧时),这是有问题的。如果若干照相机同时传输具有运动的场景的图像,则在大型照相机系统中高输出比特率也可能有问题。
无论控制器240使用的比特率控制方案如何,为了符合由控制器240设置的比特率,可以调整的参数之一是GOP长度。在一些应用中,GOP长度由控制器240动态地确定。例如,如果要降低比特率,则可以增加GOP长度,即被包括在GOP中的编码后的图像帧的数量。相应地,如果要增加比特率,则可以降低GOP长度。
基于关于数据缓冲器520的总存储容量、关于预定义的事件前记录时间以及关于期望的帧速率的知识,控制器240确定如何编码每个图像帧。例如,如果数据缓冲器520的总存储容量是270MB,预定义的事件前记录时间是90秒,并且帧速率是每秒30个图像帧,则2700(30fps×90s)个编码后的图像帧要被存储在数据缓冲器520中。如果这2700个编码后的图像帧具有相同的大小,则它们各自都必须具有0.1MB(0.8Mbit)的大小。通过对GOP中的图像帧进行编码,其中每个GOP包括如在本文中描述的单个帧内帧以及一个或多个帧子组,可以优化可用的存储容量的利用率,以在优化视频序列的质量的同时存储预定义的事件前记录时间的编码后的图像帧。
例如,对图像帧进行编码,使得每个GOP仅包括一个单个帧内帧401和多个都通过直接参考GOP的单个帧内帧401进行编码的直接编码的帧间帧402,可以是有利的。这样的GOP将不包括任何间接编码的帧间帧403。当GOP被编码为包括一个I帧和多个都参考相应的I帧进行编码的F帧时可以是这种情况。在这种场景中,F帧中的每一个被认为构成相应的帧子组。将GOP的图像帧编码为一个I帧和多个F帧可以是有利的一种场景是,当编码后的图像帧要被存储在诸如数据缓冲器520的具有足够的存储空间用于记录在事件开始的时间点之前的预定的长度(例如,预定义的事件前记录时间)的事件前视频序列的事件前缓冲器中时。如果事件前视频序列仅由多个F帧和解码F帧所需要的一个或多个I帧组成,则不管先前存储在数据缓冲器520中的GOP的F帧中的一个或多个是否已经被去除,事件前视频序列将总是可解码的。从而,如果数据缓冲器520具有足够的存储空间,则将编码后的图像帧存储在GOP中是有利的,其中每个GOP由一个I帧和多个(例如两个或更多个)F帧组成,因为这有利于数据缓冲器520的管理以使得能够检索具有预定义的事件前记录时间的可解码的事件前视频序列。
然而,F帧通常大于P帧,尤其是在非静止的场景中并且当F帧和它直接编码到的I帧之间的时间距离增加时以及当F帧和I帧之间的内容差异增加导致与当对参考时间距离和内容差异小的帧进行编码的P帧进行编码时的情况相比较少的冗余可以被用在帧间编码中时。因此,F帧通常比P帧要求大的存储空间。所以,为了减少所要求的存储空间并且仍然能够缓冲预定义的事件前记录时间的编码后的图像帧的事件前视频序列,在编码后的图像帧的输入流400中的一个或多个帧子组中也包括一个或多个P帧可以是有利的。控制器240可以控制编码器220将一个或多个图像帧编码成一个或多个间接编码的帧间帧403(例如,一个或多个P帧),并且从而在场景中有很多运动并且GOP的单个帧内帧401和每个直接编码的帧间帧402之间的差异将太大而导致太高的比特率时,增加帧子组以除了单个直接编码的帧间帧402(即帧子组中的单个F帧)之外,包括一个或多个间接编码的帧间帧403。通过增加帧子组中的帧的数量,可以减少GOP中的帧子组的数量,并且从而也可以减少GOP中直接编码的帧间帧402(即,F帧)的数量。这常常会导致比特率的降低,因为间接编码的帧间帧403(例如,P帧)通常小于直接编码的帧内帧402(即,F帧)。
在图4B中示意性地图示了一个或多个间接编码的帧间帧403(即,一个或多个P帧)可以被包括在每个帧子组中。每个这样的P帧直接参考在编码顺序上直接在它前面的图像帧进行编码,即直接参考在编码顺序上在它前面的间接编码的帧间帧403或者直接编码的帧间帧402。因此,每个这样的P帧仅经由其具有直接或间接参考的直接编码的帧间帧402、参考GOP的帧内帧401进行间接编码。
编码后的图像帧的输入流400可以由获得模块511获得。获得模块511可以被包括在用于管理数据缓冲器520中的编码后的图像帧的装置500中。装置500可以被包括在诸如照相机208的照相机中,捕获图像帧并且将它们编码到编码后的图像帧的输入流400中。可替代地,当照相机208不包括编码器时,装置500可以被包括在连接到照相机208的编码器220中。在后一种场景下,编码器220从照相机208接收捕获的图像帧,并且将它们编码到编码后的图像帧的输入流400中。从而,装置500获得编码后的图像帧的输入流400。作为另一替代方案,仅给出一些示例,装置500可以被包括在被配置为从照相机208或编码器220接收或检索编码后的图像帧的输入流400的记录器230中。
如以上提到的,控制器240可以决定如何对捕获的图像帧进行编码,并且将控制信号传输到被配置为按照控制信号对捕获的图像帧进行编码的编码器220。因此,控制器240可以决定是否在每个帧子组中包括一个或多个间接编码的帧间帧403,即,包括一个或多个P帧。是否包括一个或多个间接编码的帧间帧403可以基于在先单个直接编码的帧间帧402的大小,即,基于在先F帧的大小。如果在先单个直接编码的帧间帧402的尺寸大,则指示在先单个直接编码的帧间帧402与它基于其进行编码的单个帧内帧401之间存在大的差异。这种大的差异反过来是在单个帧内帧401的捕获和单个直接编码的帧间帧402的捕获之间的场景中存在多个运动的指示。如果后续图像帧要被编码为后续帧子组的后续单个直接编码的帧间帧402,则由于场景中的运动,后续单个直接编码的帧间帧402也将有大的尺寸。在这种情况下,参考在先单个直接编码的帧间帧402,将后续图像帧编码为间接编码的帧间帧403(例如P帧)可以是有利的,因为间接编码的帧间帧403的大小可以小于直接编码的帧间帧402的大小。因此,控制器240可以决定减少GOP中的帧子组的数量,并且代替为增加一个或多个帧子组中的间接编码的帧间帧403的数量,以便降低比特率。
动作304
在获得的输入流400中的一个或多个编码后的图像帧被存储在数据缓冲器520中之前,确定数据缓冲器520是否具有存储一个或多个编码后的图像帧的容量。这在动作304中执行,其中确定是否满足缓冲器充满度要求。
如果缓冲器充满度要求未被满足,则数据缓冲器520具有存储获得的输入流400中的一个或多个编码后的图像帧的容量。在缓冲器充满度要求未被满足的情况下,方法继续动作310。
另一方面,如果缓冲器充满度要求被满足,则在可以存储获得的输入流400中的一个或多个编码后的图像帧之前,必须从数据缓冲器520中去除一个或多个存储的编码后的图像帧。在这样的情况下,在方法进行到动作310之前必须执行动作306和动作308。
缓冲器充满度要求可以是当存储的编码后的图像帧的总记录时间等于预定义的记录时间时或者如果获得的输入流中的一个或多个编码后的图像帧被存储、则存储的编码后的图像帧的总记录时间将变得大于预定义的记录时间时所满足的缓冲时间要求。当满足缓冲时间要求时,存储在数据缓冲器520中的一个或多个编码后的图像帧应被去除,以便在数据缓冲器中释放足够的存储空间,用于存储在最后存储的编码后的图像帧被捕获的时间点之后的时间点捕获的一个或多个编码后的图像帧。尤其,要存储的一个或多个编码后的图像帧中的第一个编码后的图像帧是直接连续于存储在数据缓冲器520中的最后的编码后的图像帧而捕获的。然而,不可能仅从数据缓冲器520随意地去除一个或多个存储的编码后的图像帧,因为数据缓冲器520中的剩余的编码后的图像帧必须是可解码的并且必须具有预定义的记录时间。如果剩余的编码后的图像帧是不可解码的,则将不可能基于所有剩余的编码后的图像帧来重放和显示事件前视频序列,并且尤其是具有预定义的事件前记录时间的事件前视频序列。为了能够显示检索的事件前视频序列,检索的事件前视频序列的所有编码后的图像帧都需要是可解码的。因此,如果从数据缓冲器520检索到多个帧间帧,则还需要在对帧间帧进行编码时使用的帧内帧,以便能够解码帧间帧。如果参考帧内帧已经从数据缓冲器520中去除,则检索到的参考该参考帧内帧进行编码的帧间帧将不可解码,因此将不可能重放和观看它们。因为那些检索到的帧间帧是事件前视频序列的一部分但是由于不可解码而不可显示,所以事件前视频顺序的可显示的时间长度将比期望的短,即,比预定义的事件前记录时间短。从而,先于事件的开始的重要信息可能不会被重放给操作者。所以,如何选择要从数据缓冲器520中删除的一个或多个编码后的图像帧是重要的。
下面将参考动作308更详细地描述要去除的一个或多个编码后的图像帧的选择,但是非参考编码后的图像帧或帧子组都可以被选择。进一步,选择的要去除的一个或多个编码后的图像帧可以是所谓的旧的非参考编码后的图像帧。旧的非参考编码后的图像帧是在先于当前时间点的大于预定义的记录时间(即大于预定义的事件前记录时间)的时间点捕获的非参考编码后的图像帧。当前时间点可以是事件时间点,即事件发生或事件被检测到的时间点。因此,选择的一个或多个编码后的图像帧可以在先于当前时间点减去预定义的记录时间的时间点被捕获。例如,预定义的记录时间可以在从几秒到几十分钟的范围内,诸如在从5秒到10分钟的范围内。
可替代地或另外地,缓冲器充满度要求可以是缓冲器大小要求。例如,缓冲器充满度要求可以是当存储的编码后的图像帧的总大小大于预定的缓冲器大小阈值时所满足的缓冲器大小要求。预定的缓冲器大小阈值可以是在50兆字节(MB)和500MB之间的范围内的值。有时,预定的缓冲器大小阈值可以是100MB。
作为另一示例,缓冲器充满度要求可以是当存储的编码后的图像帧的总数大于存储的编码后的图像帧的预定的数量时所满足的缓冲器大小要求。可以基于使用情况来设置要缓冲在数据缓冲器520中的存储的编码后的图像帧的预定的数量。在一些实施例中,可能期望缓冲某些数量的编码后的图像帧,而不管它们相应的大小。在设置存储的编码后的图像帧的预定的数量时,可以考虑期望的GOP数量和/或每个GOP中期望的编码后的图像帧的数量。存储的编码后的图像帧的预定的数量可以由用户设置。在一些实施例中,在计数时,存储的编码后的图像帧的预定的数量不包括存储的作为参考图像帧的旧的编码后的图像帧,因为它们被保持在数据缓冲器中仅为了能够解码参考它们的一个或多个存储的帧间帧。有时,这种旧的编码后的图像帧仅用于使得能够对参考它们的一个或多个存储的帧间帧进行解码,并且当重放包括它们的事件前视频序列时将不显示它们。当帧速率是每秒30帧并且事件前视频序列具有在1秒和90秒之间的范围内的期望的事件前记录时间时,存储的编码后的图像帧的预定的数量可以是在30和2700之间的范围内的值。然而,存储的图像帧的预定的数量可以是另一数量,因为它将随着帧速率和事件前视频序列的期望的事件前记录时间而变化。
是否满足缓冲器充满度要求的确定可以由确定模块513来执行。确定模块513可以被包括在装置500中。
动作306
当缓冲器充满度要求被满足时,从存储的编码后的图像帧中选择要从数据缓冲器520中去除的一个或多个编码后的图像帧。选择的一个或多个编码后的图像帧是非参考编码后的图像帧以及两个或更多个帧子组中的帧子组中的至少一个。
非参考编码后的图像帧是未被用作存储的编码后的图像帧中的任何一个的参考图像帧的编码后的图像帧。因此,应理解,非参考编码后的图像帧可以是未被用作用于另一编码后的图像帧(例如,用于F帧、P帧或B帧)的参考帧的I帧。进一步,非参考编码后的图像帧可以是未被用作用于另一编码后的图像帧(例如,用于P帧或B帧)的参考帧的F帧。进一步,非参考编码后的图像帧可以是未被用作用于另一编码后的图像帧(例如,用于另一P帧或另一B帧)的参考帧的P帧或B帧。换句话说,如果没有使用编码后的图像帧作为参考对其它图像帧进行编码,则该编码后的图像帧在本公开中被称为非参考编码后的图像帧。
当选择一个或多个编码后的图像帧时,一个可替代的方案是从一组非参考编码后的图像帧中选择一个或多个编码后的图像帧。另一可替代的方案是选择一个或多个编码后的图像帧作为两个或更多个帧子组中的帧子组。
当非参考编码后的图像帧被选择作为要去除的一个或多个编码后的图像帧时,非参考编码后的图像帧可以基于大小(例如,最大的帧大小)、基于GOP或包括非参考编码后的图像帧的帧子组的大小或者根据预定义的模式(例如,每两个帧或者每三个帧要被选择)来选择。因此,当选择的一个或多个编码后的图像帧是非参考编码后的图像帧时,非参考编码后的图像帧是以下中的至少一个:
-具有大于任何其它存储的非参考编码后的图像帧的字节大小的字节大小的非参考编码后的图像帧。通过选择最大的非参考编码后的图像帧,通过仅去除一个编码后的图像帧,将使得数据缓冲器520中的最大的可能的存储空间可用。
-被包括在具有大于任何其它存储的GOP的编码后的图像帧的数量的编码后的图像帧的数量的GOP中的非参考编码后的图像帧。大的GOP可以指示由GOP的编码后的图像帧捕获的场景没有变化很多,并且指示GOP的帧间帧较小。当基于场景中检测到的运动、基于诸如检测到的声音的其它检测到的事件或者基于GOP长度的预先安排的改变来动态地控制GOP长度时,可以是这种情况。从最大的GOP中选择非参考编码后的图像帧供去除将不会像如果从较小的GOP中选择并删除较大的编码后的图像帧那样大地影响事件前视频序列的显示。
-被包括在具有大于任何其它存储的帧子组的编码后的图像帧的数量的编码后的图像帧的数量的帧子组中的非参考编码后的图像帧。大的帧子组指示由帧子组的编码后的图像帧捕获的场景没有变化很多,并且指示帧子组的帧间帧较小。因此,从最大的帧子组中选择非参考编码后的图像帧供去除将不会像如果从较小的帧子组中选择并删除可能较大的编码后的图像帧那样大地影响事件前视频序列的显示。
-根据预定义的模式选择的非参考编码后的图像帧。通过根据预定义的模式(例如,第一预定义的模式)选择非参考编码后的图像帧,使得每两个或者每三个图像帧被选择并且然后被去除,因为“丢失的”图像帧根据预定义的模式分布在事件前视频序列中,所以减少了在显示事件前视频序列时“丢失的”图像帧的可能的负面视觉影响。进一步,图像帧的均匀分布去除也可以导致帧速率的均匀分布的降低。
当帧子组被选择作为要去除的一个或多个编码后的图像帧时,可以基于大小来选择帧子组,例如,可以选择具有最大的大小的帧子组。可替代地,可以基于它的帧的数量来选择帧子组,例如,可以选择具有最大数量的帧的帧子组。作为另一可替代的方案,可以根据预定义的模式来选择帧子组,例如,每两个或三个帧子组要被选择,或者4个帧子组中的3个或10个帧子组中的9个要被选择。因此,当选择的一个或多个编码后的图像帧是帧子组时,该帧子组可以是以下中的至少一个:
-具有大于任何其它存储的帧子组的字节大小的字节大小的帧子组。通过选择具有最大的字节大小的帧子组,通过仅去除一个帧子组,将使得数据缓冲器中的最大的可能的存储空间可用。
-包括大于任何其它存储的帧子组的编码后的图像帧的数量的编码后的图像帧的数量的帧子组。具有大量编码后的图像帧的帧子组指示由该帧子组的编码后的图像帧捕获的场景没有变化很多,并且指示帧子组的帧间帧较小。因此,通过选择最大的帧子组(即包括的编码后的图像帧的数量最大)供去除,将不会像如果选择并删除较小的帧子组那样大地影响事件前视频序列的显示。
-根据预定义的模式选择的帧子组。通过根据预定义的模式(例如,可以不同于以上提到的第一预定义的模式的第二预定义的模式)来选择帧子组,使得每两个或者每三个帧子组被选择并且然后被去除,因为“丢失的”图像帧根据预定义的模式分布在事件前视频序列中,所以减少了在显示事件前视频序列时“丢失的”图像帧的可能的负面视觉影响。
为了将最新的编码后的图像帧保持在数据缓冲器520中,有时期望从存储在数据缓冲器520中的最旧的GOP中(即,从时间上最旧的GOP中)选择非参考编码后的图像帧或帧子组。因此,选择的一个或多个编码后的图像帧可以被包括在于先于任何其它存储的GOP的捕获时间点的时间点捕获的存储的GOP中。
例如,被包括在最旧的GOP中的最旧的帧子组可以被选择。因此,选择的一个或多个编码后的图像帧被包括在于先于被包括在存储的GOP中的任何其它帧子组的捕获时间点的时间点捕获的帧子组中。
一个或多个编码后的图像帧的选择可以由选择模块514执行。选择模块514可以被包括在装置500中。
动作308
从数据缓冲器520中去除选择的一个或多个编码后的图像帧。这意味着从数据缓冲器520中删除选择的一个或多个存储的编码后的图像帧,以为要存储在数据缓冲器520中的新的编码后的图像帧释放数据空间。应理解,选择的一个或多个存储的编码后的图像帧可以通过在将要存储在数据缓冲器520中的一个或多个编码后的图像帧存储在数据缓冲器520中时用它/它们重写而从数据缓冲器520中去除并且因此删除。
可以通过去除模块515来执行一个或多个编码后的图像帧的去除。去除模块515可以被包括在装置500中。
动作310
在动作310中,布置在GOP中的编码后的图像帧的获得的输入流400中的一个或多个编码后的图像帧被存储在数据缓冲器520中。
编码后的图像帧可以按编码顺序一个接一个地存储在数据缓冲器520中。这可以由被配置为将编码后的图像帧存储在数据缓冲器520中的存储模块512执行。如在动作308中提到的,选择的一个或多个存储的编码后的图像帧可以通过用要存储的一个或多个编码后的图像帧重写它们来去除。这可以由存储模块512来执行。
当启动数据缓冲器520时,数据缓冲器520的所有存储空间可以是可用的,并且因此与预定义的事件前记录时间的事件前视频序列相对应的编码后的图像帧可以存储在数据缓冲器520中。
然而,在数据缓冲器520的操作期间,一个或多个编码后的图像帧已经被存储在数据缓冲器中,并且然后在获得的输入流400中的一个或多个其它编码后的图像帧实际能够被存储在数据缓冲器520中之前,动作306必须已经执行,并且可能动作308和动作310也必须已经执行。
因此,随着连续获得输入流400,其一个或多个编码后的图像帧或者立即或者在去除一个或多个存储的编码后的图像帧之后被存储在数据缓冲器520中,如上面在动作306、308和310中描述的。一个或多个编码后的图像帧可以按编码顺序一个接一个地存储。这可以由存储模块512来执行。存储模块512可以被包括在装置500中。
在一些实施例中,上述方法可以进一步包括当事件已经发生时,例如当事件已经被检测到时,要采取的另外的动作312、314和316。下面将更详细地描述这些动作。然而,应理解,它们可以以任何适当的方式与在先动作交错执行。
动作312
在动作312中,接收事件指示。事件指示指示已经检测到事件。该事件可以是警报或者在捕获的场景中已经检测到移动的指示。作为另一示例,事件指示可以是BWC上的记录按钮的激活。事件指示可以由被配置为接收事件指示的接收模块516接收。接收模块516可以被包括在装置500中。
动作314
在接收到事件指示时,在动作314中,从数据缓冲器520中检索存储的编码后的图像帧。存储的编码后的图像帧在本文中也被称为事件前视频序列。这可以由检索模块517来执行。检索模块517可以被包括在装置500中。
动作316
在动作316中,在编码后的图像帧的输出流中传输检索到的编码后的图像帧。传输模块518可以执行在编码后的图像帧的输出流中检索到的编码后的图像帧的从装置500到接收器的传输。除了检索到的编码后的图像帧(即,事件前视频序列)之外,在接收器处接收到的编码后的图像帧的输出流还可以包括在事件期间捕获的编码后的图像帧(即,事件序列),以及还可以包括在事件之后捕获的编码后的图像帧(即,编码后的图像帧的事件后序列)。传输模块518可以被包括在装置500中。接收器可以是记录器230、客户端214或者服务器216。
在编码后的图像帧的输出流中传输的一个或多个参考编码后的图像帧,例如一个或多个参考I帧,可以带有不显示指示进行传输。这可以是例如当参考I帧是旧的,例如太旧而不能被包括在预定义的事件前记录时间中,并且仅被保存在数据缓冲器520中以用于当解码参考它进行编码的一个或多个编码后的图像帧时使用的情况。因为旧的参考I帧可能是在对应于比使用它作为参考的编码后的图像帧被捕获的时间点早若干帧的时间点被捕获的,所以场景可能在两个图像帧之间变化太大,所以如果它们二者在视频序列中相继显示,则看起来会不太好。所以,仅使用旧的参考I帧作为参考来观看编码后的图像帧可以更令观看者愉快,并且这是传输带有不显示指示的参考I帧的原因。例如,当存储在数据缓冲器中时,或者在从数据缓冲器中检索旧的参考I帧时或之后,可以将不显示指示添加到旧的参考I帧。因此,传输的检索到的编码后的图像帧可以包括在带有不显示指示的编码后的图像帧的输出流中传输的一个或多个参考编码后的图像帧。术语“参考编码后的图像帧”在本公开中用于被用作检索到的编码后的图像帧中的任何一个的参考图像帧的编码后的图像帧。
实施例还涉及用于管理数据缓冲器520中的编码后的图像帧的装置500,现在将参考图5进行描述。数据缓冲器520被配置为存储编码后的图像帧。
数据缓冲器是存储器的用于在数据从一个地方移动到另一个地方时临时存储数据的区域。数据缓冲器520可以在硬件中的固定的存储器位置中实施,或者通过在软件中使用指向物理存储器中的位置的虚拟数据缓冲器来实施。存储器可以是随机存取存储器(RAM)或闪存,但是也可以是网络附属储存器。
装置500包括被配置为获得布置在GOP中的编码后的图像帧的输入流的获得模块511,每个GOP包括:单个帧内帧以及两个或更多个子组。每个子组包括直接参考帧内帧进行编码的单个直接编码的帧间帧,以及经由单个直接编码的帧间帧间接参考帧内帧进行编码的零个或多个间接编码的帧间帧。
装置500包括被配置为确定是否满足缓冲器充满度要求的确定模块513。
装置500还包括被配置为当缓冲器充满度要求被满足时,从存储在数据缓冲器520中的编码后的图像帧中选择要从数据缓冲器520中去除的一个或多个编码后的图像帧的选择模块514。选择的一个或多个编码后的图像帧是非参考编码后的图像帧以及两个或更多个子组中的子组中的至少一个,其中非参考编码后的图像帧是未被用作存储的编码后的图像帧中的任何一个的参考图像帧的编码后的图像帧。
进一步,装置500包括被配置为从数据缓冲器中去除选择的一个或多个编码后的图像帧的去除模块515。
此外,装置500包括被配置为将获得的布置在GOP中的编码后的图像帧的流存储在数据缓冲器520中的存储模块512。
在一些实施例中,装置500进一步被配置为根据在本文中描述的一个或多个动作来执行方法。
装置500可以被包括在照相机208、编码器220或者记录器230中。
实施例还涉及非暂时性计算机可读介质,该非暂时性计算机可读介质上存储有计算机代码指令,该计算机代码指令在由具有处理能力的装置执行时适于执行在本文中描述的方法的实施例。
如上所述,装置500可以被配置为实施用于管理数据缓冲器中的编码后的图像帧的方法。为此目的,装置500可以包括电路,该电路被配置为实施在本文中描述的各种方法步骤。
在硬件实施中,电路可以是专用的并且被具体地设计为实施方法步骤中的一个或多个步骤。电路可以是诸如一个或多个专用集成电路或者一个或多个现场可编程门阵列的一个或多个集成电路的形式。举例来说,装置500因此可以包括获得布置在GOP中的编码后的图像帧的输入流400的电路,其中每个GOP包括:单个帧内帧401以及两个或更多个帧子组SG1、SG2,并且其中每个帧子组SG1、SG2包括直接参考帧内帧401进行编码的单个直接编码的帧间帧402,以及经由单个直接编码的帧间帧402间接参考单个帧内帧401进行编码的零个或多个间接编码的帧间帧403。进一步,电路确定是否满足缓冲器充满度要求。当缓冲器充满度要求被满足时,电路从存储在数据缓冲器中的编码后的图像帧中选择要从数据缓冲器中去除的一个或多个编码后的图像帧。选择的一个或多个编码后的图像帧是非参考编码后的图像帧以及两个或更多个帧子组中的帧子组中的至少一个,其中非参考编码后的图像帧是未被用作存储的编码后的图像帧中的任何一个的参考图像帧的编码后的图像帧。又进一步,电路从数据缓冲器520中去除选择的一个或多个编码后的图像帧,并且在数据缓冲器520中存储布置在GOP中的编码后图像帧的获得的流400。
在软件实施中,电路可以替代为诸如微处理器的处理器的形式,其与存储在诸如非易失性存储器的(非暂时性)计算机可读介质上的计算机代码指令相关联,使装置500执行在本文中公开的任何方法。非易失性存储器的示例包括只读存储器、闪存、铁电RAM、磁性计算机存储设备和光盘等。在软件情况下,上述方法步骤中的每一个因此可以对应于存储在计算机可读介质上的计算机代码指令的一部分,当该计算机代码指令的一部分由处理器执行时使装置500执行在本文中公开的任何方法。
应理解,具有硬件和软件实施的组合也是可能的,意味着一些方法步骤在硬件中实施,而其它方法步骤在软件中实施。
将理解,本领域技术人员可以以多种方式修改上述实施例,并且仍然使用如在以上实施例中示出的本发明的优势。因此,本发明不应限于示出的实施例,而应仅由所附权利要求限定。另外,如本领域技术人员所理解的,示出的实施例可以被组合。

Claims (14)

1.一种用于管理事件前缓冲器(520)中的编码后的图像帧的方法,其中所述编码后的图像帧描绘场景,其中所述事件前缓冲器(520)被配置为临时存储编码后的图像帧,当检测到所述场景中的事件或者与所述场景相关的事件时,存储的所述编码后的图像帧构成在所述事件之前捕获的视频序列,并且其中所述方法包括:
获得(302)描绘所述场景并且被布置在图片组GOP中的编码后的图像帧的输入流(400),每个GOP包括:
单个帧内帧(401),以及
两个或更多个帧子组(SG1,SG2),其中每个帧子组(SG1,SG2)包括直接参考所述帧内帧(401)进行编码的单个直接编码的帧间帧(402),以及经由所述单个直接编码的帧间帧(402)间接参考所述单个帧内帧(401)进行编码的零个或多个间接编码的帧间帧(403);
确定(304)是否满足缓冲器充满度要求,其中所述缓冲器充满度要求是当存储的所述编码后的图像帧的总记录时间等于预定义的记录时间时或者如果获得的所述输入流中的一个或多个编码后的图像帧被存储、则存储的所述编码后的图像帧的所述总记录时间将变得大于所述预定义的记录时间时所满足的缓冲时间要求;
当所述缓冲器充满度要求未被满足时,将被包括在获得的所述输入流(400)中的一个或多个编码后的图像帧存储(310)在所述事件前缓冲器(520)中,直到所述缓冲器充满度要求被满足;并且
当所述缓冲器充满度要求被满足时:
从存储在所述数据缓冲器(520)中的编码后的图像帧中选择(306)要从所述数据缓冲器(520)中去除的一个或多个编码后的图像帧,其中选择的所述一个或多个编码后的图像帧是以下中的至少一个:
非参考编码后的图像帧,其中所述非参考编码后的图像帧是未被用作存储的所述编码后的图像帧中的任何一个的参考图像帧的编码后的图像帧;以及
所述两个或更多个帧子组中的帧子组;
从所述事件前缓冲器(520)中去除(308)选择的所述一个或多个编码后的图像帧;并且
在所述事件前缓冲器(520)中存储(310)被包括在获得的所述输入流(400)中的一个或多个编码后的图像帧,
从而将临时存储在所述事件前缓冲器(520)中的所述编码后的图像帧管理为仅是构成具有所述预定义的记录时间的可解码的视频序列的那些编码后的图像帧。
2.根据权利要求1所述的方法,其中选择的所述一个或多个编码后的图像帧在先于当前时间点减去所述预定义的记录时间的时间点被捕获。
3.根据权利要求1所述的方法,其中,所述预定义的记录时间在从几秒到几十分钟的范围内,诸如在从5秒到10分钟的范围内。
4.根据权利要求1所述的方法,其中所述缓冲器充满度要求是当存储的所述编码后的图像帧的总大小大于预定的缓冲器大小阈值时或者当存储的编码后的图像帧的总数大于存储的编码后的图像帧的预定的数量时所满足的缓冲器大小要求。
5.根据权利要求4所述的方法,其中所述预定的缓冲器大小阈值是在50MB和500MB之间的范围内的值,并且其中,当帧速率是每秒30帧并且当所述预定义的记录时间在1秒和90秒之间的范围内时,存储的编码后的图像帧的所述预定的数量是在30和2700之间的范围内的值。
6.根据权利要求1所述的方法,当选择的所述一个或多个编码后的图像帧是所述帧子组时,所述帧子组是以下中的至少一个:
具有大于任何其它存储的帧子组的字节大小的字节大小的帧子组;
包括大于任何其它存储的帧子组的编码后的图像帧的数量的编码后的图像帧的数量的帧子组;和
根据预定义的模式选择的帧子组。
7.根据权利要求1所述的方法,当选择的所述一个或多个编码后的图像帧是所述非参考编码后的图像帧时,所述非参考编码后的图像帧是以下中的至少一个:
具有大于任何其它存储的非参考编码后的图像帧的字节大小的字节大小的非参考编码后的图像帧;
被包括在具有大于任何其它存储的GOP的编码后的图像帧的数量的编码后的图像帧的数量的GOP中的非参考编码后的图像帧;
被包括在具有大于任何其它存储的帧子组的编码后的图像帧的数量的编码后的图像帧的数量的帧子组中的非参考编码后的图像帧;和
根据预定义的模式选择的非参考编码后的图像帧。
8.根据权利要求1所述的方法,其中选择的所述一个或多个编码后的图像帧被包括在于先于任何其它存储的GOP的捕获时间点的时间点捕获的存储的GOP中。
9.根据权利要求8所述的方法,其中选择的所述一个或多个编码后的图像帧被包括在于先于被包括在所述存储的GOP中的任何其它帧子组的捕获时间点的时间点捕获的帧子组中。
10.根据权利要求1所述的方法,进一步包括:
接收(312)指示事件已经被检测到的事件指示;
在接收到所述事件指示时,从所述事件前缓冲器(520)中检索(314)存储的编码后的图像帧,以及
在编码后的图像帧的输出流中传输(316)检索到的所述编码后的图像帧。
11.一种用于管理事件前缓冲器(520)中的编码后的图像帧的装置(500),其中所述编码后的图像帧描绘场景,其中所述事件前缓冲器(520)被配置为临时存储编码后的图像帧,当检测到所述场景中的事件或者与所述场景相关的事件时,存储的所述编码后的图像帧构成在所述事件之前捕获的视频序列,并且其中所述装置(500)包括:
获得模块(511),被配置为获得描绘所述场景并且被布置在图片组GOP中的编码后的图像帧的输入流(400),每个GOP包括:
单个帧内帧(401),以及
两个或更多个帧子组(SG1,SG2),其中每个帧子组包括直接参考所述帧内帧进行编码的单个直接编码的帧间帧(402),以及经由所述单个直接编码的帧间帧(402)间接参考所述单个帧内帧(401)进行编码的零个或多个间接编码的帧间帧(403);
确定模块(513),被配置为确定是否满足缓冲器充满度要求,其中所述缓冲器充满度要求是当存储的所述编码后的图像帧的总记录时间等于预定义的记录时间时或者如果获得的所述输入流中的一个或多个编码后的图像帧被存储、则存储的所述编码后的图像帧的所述总记录时间将变得大于所述预定义的记录时间时所满足的缓冲时间要求;
当所述缓冲器充满度要求未被满足时,存储模块(512)被配置为将被包括在获得的所述输入流(400)中的一个或多个编码后的图像帧存储在所述事件前缓冲器(520)中,直到所述缓冲器充满度要求被满足;并且
当所述缓冲器充满度要求被满足时:
选择模块(514)被配置为:
从存储在所述事件前缓冲器(520)中的编码后的图像帧中选择要从所述事件前缓冲器(520)中去除的一个或多个编码后的图像帧,其中选择的所述一个或多个编码后的图像帧是以下中的至少一个:
非参考编码后的图像帧,其中所述非参考编码后的图像帧是未被用作存储的所述编码后的图像帧中的任何一个的参考图像帧的编码后的图像帧;以及
所述两个或更多个帧子组中的帧子组;
去除模块(515),被配置为从所述事件前缓冲器(520)中去除选择的所述一个或多个编码后的图像帧;和
所述存储模块(512),被配置为在所述事件前缓冲器(520)中存储被包括在获得的所述流(400)中的一个或多个编码后的图像帧;
从而所述装置(500)被配置为将临时存储在所述事件前缓冲器(520)中的所述编码后的图像帧管理为仅是构成具有所述预定义的记录时间的可解码的视频序列的那些编码后的图像帧。
12.根据权利要求11所述的装置(500),进一步被配置为执行根据权利要求2所述的方法。
13.根据权利要求11所述的装置(500),其中所述装置被包括在照相机(208)、编码器(220)或者记录器(230)中。
14.一种非暂时性计算机可读介质,具有存储在其上的计算机代码指令,所述计算机代码指令在由具有处理能力的装置(500)执行时适于执行根据权利要求1所述的方法。
CN202311497253.XA 2022-11-16 2023-11-10 用于管理数据缓冲器中的编码后的图像帧的方法和装置 Pending CN118055237A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP22207673.9 2022-11-16
EP22207673.9A EP4373083A1 (en) 2022-11-16 2022-11-16 A method and a device for managing encoded image frames in a data buffer

Publications (1)

Publication Number Publication Date
CN118055237A true CN118055237A (zh) 2024-05-17

Family

ID=84359270

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311497253.XA Pending CN118055237A (zh) 2022-11-16 2023-11-10 用于管理数据缓冲器中的编码后的图像帧的方法和装置

Country Status (3)

Country Link
US (1) US20240163456A1 (zh)
EP (1) EP4373083A1 (zh)
CN (1) CN118055237A (zh)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2786200C (en) * 2011-09-23 2015-04-21 Cygnus Broadband, Inc. Systems and methods for prioritization of data for intelligent discard in a communication network
EP3070695B1 (en) * 2015-03-16 2017-06-14 Axis AB Method and system for generating an event video sequence, and camera comprising such system

Also Published As

Publication number Publication date
EP4373083A1 (en) 2024-05-22
US20240163456A1 (en) 2024-05-16

Similar Documents

Publication Publication Date Title
KR101928520B1 (ko) 이벤트 비디오 시퀀스를 생성하기 위한 방법 및 시스템과 이러한 시스템을 포함하는 카메라
US8830339B2 (en) Auto-triggered fast frame rate digital video recording
EP2868107B1 (en) System and method for encoding video content using virtual intra-frames
US10109316B2 (en) Method and apparatus for playing back recorded video
JP2006253768A (ja) デジタルカメラ
US20050226327A1 (en) MPEG coding method, moving picture transmitting system and method using the same
CN113556462B (zh) 用于控制平移倾斜变焦相机的方法和系统以及存储介质
US20240163456A1 (en) Method and a device for managing encoded image frames in a data buffer
KR20240072033A (ko) 데이터 버퍼 내의 부호화된 이미지 프레임을 관리하는 방법 및 장치
JP7346518B2 (ja) 画像処理デバイス、カメラ、およびビデオ画像のシーケンスをエンコードするための方法
JPH1169298A (ja) 監視画像記録装置
JP5506536B2 (ja) 画像処理装置
TWI838649B (zh) 影像處理設備、相機及將視訊影像序列之編碼方法
EP4054184A1 (en) Event video sequences
WO2003017678A1 (en) Multiplexed mpeg compression
CN118158421A (zh) 用于对视频序列进行裁剪的方法以及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication