CN111757108B - 集成电路及递归划分解码区块的方法 - Google Patents

集成电路及递归划分解码区块的方法 Download PDF

Info

Publication number
CN111757108B
CN111757108B CN202010626373.5A CN202010626373A CN111757108B CN 111757108 B CN111757108 B CN 111757108B CN 202010626373 A CN202010626373 A CN 202010626373A CN 111757108 B CN111757108 B CN 111757108B
Authority
CN
China
Prior art keywords
block
current
sub
video decoder
stack memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010626373.5A
Other languages
English (en)
Other versions
CN111757108A (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.)
Granfei Intelligent Technology Co ltd
Original Assignee
Glenfly Tech Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Glenfly Tech Co Ltd filed Critical Glenfly Tech Co Ltd
Priority to CN202010626373.5A priority Critical patent/CN111757108B/zh
Publication of CN111757108A publication Critical patent/CN111757108A/zh
Application granted granted Critical
Publication of CN111757108B publication Critical patent/CN111757108B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder

Landscapes

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

Abstract

本发明提供一种集成电路及递归划分解码区块的方法,该集成电路包括:一堆栈存储器;以及一视频解码器,用以对一视频流进行视频解码。该视频解码器从该视频流取得一超级区块,并将超级区块在水平方向及垂直方向均等划分为第一区块、第二区块、第三区块及第四区块。视频解码器选择第一区块做为一当前区块以执行一区块递归划分处理,并依序将第四区块、第三区块及第二区块写入至堆栈存储器。响应于当前区块的区块递归划分处理结束,视频解码器从堆栈存储器取出最上层区块以做为当前区块,并对当前区块执行区块递归划分处理。

Description

集成电路及递归划分解码区块的方法
技术领域
本发明涉及视频解码,特别涉及一种集成电路及递归划分(IterativelyDividing)解码区块的方法。
背景技术
在现今较先进的视频编解码标准(例如AV1、HEVC、VP9)中,一张图像帧可划分为若干个超级区块(super block),且超级区块的最大尺寸为128x128像素。当采用AV1标准进行视频解码时,需要对超级区块(亦称为解码块)进行递归划分的操作以将超级区块划分为多个编码单元(coding unit,CU)。然而,传统的视频解码器并无法有效率地将超级区块划分为多个编码单元,故会降低解码效能。
发明内容
有鉴于此,本发明提供一种集成电路及递归划分解码区块的方法用以解决上述问题。
本发明提供一种集成电路,包括:一堆栈存储器;以及一视频解码器,用以对一视频流进行视频解码;其中,该视频解码器从该视频流取得一超级区块,其中该超级区块在水平方向及垂直方向均具有第一尺寸,其中,该视频解码器将该超级区块在水平方向及垂直方向均等划分为一第一区块、一第二区块、一第三区块及一第四区块。该视频解码器选择该第一区块做为一当前区块以执行一区块递归划分处理,并依序将该第四区块、该第三区块及该第二区块写入至该堆栈存储器。响应于该当前区块的该区块递归划分处理结束,该视频解码器从该堆栈存储器取出下一区块以做为该当前区块,并对该当前区块执行该区块递归划分处理。该视频解码器还判断当前区块是否为该第四区块。当该当前区块为该第四区块,该视频解码器结束该超级区块的解码阶段。当该当前区块并非该第四区块,该视频解码器从该堆栈存储器取出下一区块以做为该当前区块,并对该当前区块执行该区块递归划分处理。
在一些实施例中,该视频流支持开放媒体联盟(AOMedia)Video1(AV1)、高效率视频编码(HighEfficiencyVideoCoding,HEVC)及VP9的视频编解码标准。
在一些实施例中,在该当前区块的该区块递归划分处理中,该视频解码器还判断该当前区块是否需要划分,其中,当该视频解码器判断该当前区块需要划分,该视频解码器将该当前区块在水平方向及垂直方向均等划分为一第一子区块、一第二子区块、一第三子区块及一第四子区块,并依序将该第四子区块、该第三子区块及该第二子区块写入至该堆栈存储器,其中,当该视频解码器判断该当前区块不需要划分,该视频解码器对该当前区块进行解码。
在一些实施例中,其中该视频解码器还将该第一子区块设定为当前子区块,并判断该当前子区块是否需要划分,其中,当该视频解码器判断该当前子区块需要划分,该视频解码器对当前子区块重复执行区块递归划分处理直到当前子区块的尺寸等于一预定尺寸。当该视频解码器判断该当前子区块不需要划分,该视频解码器对该当前子区块进行解码。
在一些实施例中,其中在该当前子区块的该区块递归划分处理中,响应于该当前子区块的解码结束,该视频解码器从该堆栈存储器取出下一子区块以做为该当前子区块,并对该当前子区块执行该区块递归划分处理。
在一些实施例中,其中在该当前区块的该区块递归划分处理中,响应于该当前子区块的该区块递归划分处理结束,该视频解码器判断当前子区块是否为该第四子区块。当该视频解码器判断该当前子区块为该第四子区块,该视频解码器对该当前子区块进行解码。当该视频解码器判断该当前子区块并非该第四子区块,该视频解码器从该堆栈存储器取出下一子区块以做为该当前子区块,并对该当前子区块执行该区块递归划分处理。
在一些实施例中,其中该预定尺寸为一最小编码单元(coding unit)的尺寸。
本发明还提供一种递归划分解码区块的方法,用于一集成电路,该集成电路包括一堆栈存储器,该方法包括:对一视频流进行视频解码;从该视频流取得一超级区块,其中该超级区块在水平方向及垂直方向均具有第一尺寸;将该超级区块在水平方向及垂直方向均等划分为一第一区块、一第二区块、一第三区块及一第四区块;选择该第一区块做为一当前区块以执行一区块递归划分处理,并依序将该第四区块、该第三区块及该第二区块写入至该堆栈存储器;响应于该当前区块的该区块递归划分处理结束,从该堆栈存储器取出下一区块以做为该当前区块,并对该当前区块执行该区块递归划分处理;判断当前区块是否为该第四区块;当该当前区块为该第四区块,结束该超级区块的解码阶段;以及当该当前区块并非该第四区块,从该堆栈存储器取出下一区块以做为该当前区块,并对该当前区块执行该区块递归划分处理。
附图说明
图1为依据本发明一实施例中的视频解码装置的方块图。
图2为依据本发明一实施例中超级区块及递归划分为编码单元的示意图。
图3A~3O为依据本发明图2的实施例中的堆栈顺序的示意图。
图4A为依据本发明一实施例中超级区块的划分方式的示意图。
图4B为依据本发明图4A的实施例中相应于超级区块的划分方式的堆栈存储器的示意图。
图5A为依据本发明一实施例中的递归划分解码区块的方法的流程图。
图5B为依据本发明图5A实施例中的当前区块的区块递归划分处理的流程图。
具体实施方式
为使本发明的上述目的、特征和优点能更明显易懂,下文特举一优选实施例,并配合附图,作详细说明如下。
图1为依据本发明一实施例中的视频解码装置的方块图。
如图1所示,视频解码装置100包括视频解码器110、易失性存储器120、以及存储器单元130。视频解码器110用以解码一视频流以得到多张图像帧。在一些实施例中,视频解码器110支持开放媒体联盟(AOMedia)Video1(AV1)、高效率视频编码(HighEfficiencyVideoCoding,HEVC)及VP9等视频编解码标准,但本发明并不限于此。在一实施例中,视频解码器110可用硬件电路所实现,例如为一应用导向集成电路(application-specific integrated circuit,ASIC)、现场可编程逻辑门阵列(field-programmable gatearray,FPGA)、或其他具有相同功能的逻辑电路,但本发明并不限于此。在另一实施例中,视频解码器110可用一中央处理器或数字信号处理器以执行相应的程序代码所实现。
易失性存储器120例如为静态随机存取存储器(static random access memory),其用以暂存视频解码器110在视频解码过程中所需的解码块。在一些实施例中。在一些实施例中,视频解码器110及易失性存储器120可整合至一集成电路(integrated circuit)150之中。
在一实施例中,视频解码器110可接收来自一编码器所产生的视频流以进行解码。在另一实施例中,视频解码装置100还包括一存储装置140,且视频流例如可以视频文件的形式存储在存储装置140中。视频解码器110可由存储装置140读取视频文件中的视频流以进行解码。存储装置140为一非易失性存储器,例如可为硬盘机(hard disk drive)、固态硬盘(solid-state disk)、快闪存储器(flash memory)等等,但本发明并不限于此。
图2为依据本发明一实施例中超级区块及递归划分为编码单元的示意图。如图2所示,超级区块200的尺寸为128x128像素。举例来说,在AV1标准中,最小的编码单元的尺寸为4x4像素,故视频解码器110需要对欲解码的超级区块200进行递归划分直到得到4x4的编码单元。
首先,将超级区块200划分为4个64x64区块,例如区块21~24,并接着依照循序扫描(raster scan)的顺序判断各个64x64区块21~24是否需进行划分。以64x64区块为例,当依照循序扫描的顺序进行判断时,视频解码器110首先会判断左上方的64x64区块(区块21)是否需要划分,再依序判断右上方、左下方及右下方的64x64区块22、23、24是否需要划分。
举例来说,在视频解码器110依据视频编解码标准进行正确解码的前提下,如果解码得到的syntax value是PARTITION_SPLIT,就继续划分;如果解码得到的syntax value是其他值(比如PARTITION_NONE,PARTITION_VERT,……)就返回并重新进入解码阶段。其中依据视频编解码标准进行解码不属于本发明的范围,在此不做赘述。
若视频解码器110判断第一个64x64区块21需要划分,则会将区块21划分为4个32x32区块,例如区块211~214。依据类似方式,如图2所示,视频解码器110判断区块211及214需要进一步划分,且区块212及213并不需进一步划分,故视频解码器110则将区块211及214划分为4个16x16区块,例如分别为区块2111~2114及区块2141~2144。此外,视频解码器110判断区块2111~2114及区块2141~2144均不需进一步划分,故可将区块2111~2114及区块2141~2144的每一个均视为一个编码单元(CU)。
图3A~3O为依据本发明图2的实施例中的堆栈顺序的示意图。
在一实施例中,易失性存储器120的其中一部分的存储器空间例如可做为堆栈存储器(stack memory)121,且视频解码器110例如可执行一区块递归划分指令,例如可称为QTREE指令,并将堆栈存储器121以先入后出(First-in-Last-out,FILO)或后入先出(Last-in-First-out,LIFO)的方式来实现区块递归划分之操作。对于堆栈存储器121而言,加入(push)操作与删除(pop)操作是在堆栈存储器121的同一端执行。
为了便于说明,图3A~3O的堆栈顺序依据图2中的超级区块的划分顺序来说明如何实现区块递归划分指令。
在一实施例中,视频解码器110例如可预先设定堆栈存储器121的最大划分深度,其中最大划分深度表示将超级区块200中的所有区块均划分至最小的编码单元(即4x4区块)时的4x4区块数量。举例来说,虽然尺寸为128x128的超级区块最多可划分为1024个4x4区块,但视频解码器110在执行区块递归划分指令时,实际上并不会用到1024个项目(entry),而是会依据循序扫描的顺序对每一层的四个区块的其中一个进行处理。故若要计算堆栈存储器121的最大划分深度,则超级区块200的划分方式如图4A所示,即每一层区块仅会占用堆栈存储器121中的3个项目。因此,64x64区块、32x32区块、16x16区块、8x8区块各占用堆栈存储器121中的3个项目。因为4x4区块为最小的编码单元,所以视频解码器110不会再将4x4区块划分为更小的区块,可以对4x4区块直接解码,故视频解码器110不需将4x4区块写入至堆栈存储器121。
因此,当执行超级区块200的区块递归划分指令时,一共最多会占用堆栈存储器121中的12个项目,故堆栈存储器121的最大划分深度为12。假定堆栈存储器121具有N个项目(entry)(例如N=12),则堆栈存储器121最底部的项目的逻辑地址例如为#0,最顶部的项目的逻辑地址为#(N-1),即#11,如图4B所示。然而,本发明并不限定于上述最大划分深度,且视频解码器110可视解码过程的实际情况而调整上述最大划分深度。
如图3A所示,视频解码器110进行第一次划分处理,例如将超级区块200(例如为128x128区块)划分为4个64x64区块21~24。在此实施例中,视频解码器110先判断区块21是否需要进一步划分,但是先不判断区块22~24是否需要进一步划分,故不会将区块21写入至堆栈存储器121,而是将区块24、区块23及区块22依序写入至堆栈存储器121,即区块24会在堆栈存储器121的最底部,如图3A所示。
接着,视频解码器110判断区块21需进一步划分,故执行第二次划分处理以将区块21划分为4个32x32区块211~214。因为已经执行第二次或以上的划分处理,故区块211~214也可称为子区块。类似地,依照循序扫描的顺序,视频解码器110会先判断第一个32x32区块211是否需要进一步划分,但是先不判断区块212~214是否需要进一步划分,故不会将区块211写入至堆栈存储器121,而是将区块214、区块213及区块212依序写入至堆栈存储器121,如图3B所示。
接着,视频解码器110判断区块211需进一步划分,故执行第三次划分处理以将区块211划分为4个16x16区块2111~2114(也可称为子区块)。类似地,依照在16x16区块此层的循序扫描顺序,视频解码器110会先判断第一个16x16区块2111是否需要进一步划分,但是先不判断区块2112~2114是否需要进一步划分,故不会将区块2111写入至堆栈存储器121,而是将区块2114、区块2113及区块2112依序写入至堆栈存储器121,如图3C所示。
接着,视频解码器110判断区块2111不需进一步划分,即在第四次划分处理时,区块2111的尺寸仍维持在16x16,故视频解码器110可将区块2111设定为编码单元CU0,并对区块2111进行解码。此时,堆栈存储器121仍然维持在图3C所示的存储内容。
视频解码器110并接着从堆栈存储器121取出(pop)区块2112,并判断出区块2112不需进一步划分。即在第五次划分处理时,区块2112的尺寸仍维持在16x16,即划分中止。因此,视频解码器110可将区块2112设定为编码单元CU1,并对区块2112进行解码。此时,堆栈存储器121的存储内容如图3D所示。
类似地,视频解码器110并继续依照在16x16区块此层的循序扫描顺序从堆栈存储器121取出区块2113,并判断出区块2113不需进一步划分。即在第六次划分处理时,区块2113的尺寸仍维持在16x16,即划分中止。因此,视频解码器110可将区块2113设定为编码单元CU2,并对区块2113进行解码。此时,堆栈存储器121的存储内容如图3E所示。
类似地,响应于编码单元CU2的划分中止,视频解码器110并继续依照在16x16区块此层的循序扫描顺序从堆栈存储器121取出区块2114,并判断出区块2114不需进一步划分。即在第七次划分处理时,区块2114的尺寸仍维持在16x16,即划分中止。因此,视频解码器110可将区块2114设定为编码单元CU3,并对区块2114进行解码。此时,堆栈存储器121的存储内容如图3F所示,且区块211的递归划分处理已结束。
接着,视频解码器110并继续依照在32x32区块此层的循序扫描顺序从堆栈存储器121取出32x32区块212,并判断出区块212不需进一步划分。即在第八次划分处理时,区块212的尺寸仍维持在32x32,即划分中止。因此,视频解码器110可将区块212设定为编码单元CU4,并对区块212进行解码。此时,堆栈存储器121的存储内容如图3G所示。
接着,响应于编码单元CU4的划分中止,视频解码器110并继续依照在32x32区块此层的循序扫描顺序从堆栈存储器121取出32x32区块213,并判断出区块213不需进一步划分。即在第九次划分处理时,区块213的尺寸仍维持在32x32,即划分中止。因此,视频解码器110可将区块213设定为编码单元CU5,并对区块213进行解码。此时,堆栈存储器121的存储内容如图3H所示。
接着,响应于编码单元CU5的划分中止,视频解码器110并继续依照在32x32区块此层的循序扫描顺序从堆栈存储器121取出32x32区块214,并判断出区块214需要进一步划分。因此,视频解码器110执行第十次划分处理以将32x32区块214划分为四个16x16区块2141~2144,并将区块2144、2143、2142依序写入堆栈存储器121,如图3I所示。
处理16x16区块2141~2144的步骤类似于处理16x16区块2111~2114。详细而言,视频解码器110先判断区块2141不需进一步划分,即在第十一次划分处理时,区块2141的尺寸仍维持在16x16,即划分中止。因此,视频解码器110可将区块2141设定为编码单元CU6,并对区块2141进行解码。此时,堆栈存储器121仍然维持在图3I所示的存储内容。
接着,响应于编码单元CU6的划分中止,视频解码器110并继续依照在16x16区块此层的循序扫描顺序从堆栈存储器121取出16x16区块2142,并判断出区块2142不需进一步划分。即在第十二次划分处理时,区块2142的尺寸仍维持在16x16,即划分中止。因此,视频解码器110可将区块2142设定为编码单元CU7,并对区块2142进行解码。此时,堆栈存储器121的存储内容如图3J所示。
响应于编码单元CU7的划分中止,视频解码器110并继续依照在16x16区块此层的循序扫描顺序从堆栈存储器121取出16x16区块2143,并判断出区块2143不需进一步划分。即在第十三次划分处理时,区块2143的尺寸仍维持在16x16,即划分中止。因此,视频解码器110可将区块2143设定为编码单元CU8,并对区块2143进行解码。此时,堆栈存储器121的存储内容如图3K所示。
响应于编码单元CU8的划分中止,视频解码器110并继续依照在16x16区块此层的循序扫描顺序从堆栈存储器121取出16x16区块2144,并判断出区块2144不需进一步划分。即在第十四次划分处理时,区块2144的尺寸仍维持在16x16,即划分中止。因此,视频解码器110可将区块2144设定为编码单元CU9,并对区块2144进行解码。此时,堆栈存储器121的存储内容如图3L所示,且64x64区块21的所有递归划分处理均已处理完毕。
接着,视频解码器110并继续依照在64x64区块此层的循序扫描顺序从堆栈存储器121取出64x64区块22,并判断出区块22不需进一步划分。即在第十五次划分处理时,区块22的尺寸仍维持在64x64,即划分中止。因此,视频解码器110可将区块22设定为编码单元CU10,并对区块22进行解码。此时,堆栈存储器121的存储内容如图3M所示。
响应于编码单元CU10的划分中止,视频解码器110并继续依照在64x64区块此层的循序扫描顺序从堆栈存储器121取出64x64区块23,并判断出区块23不需进一步划分。即在第十五次划分处理时,区块23的尺寸仍维持在64x64,即划分中止。因此,视频解码器110可将区块23设定为编码单元CU11,并对区块23进行解码。此时,堆栈存储器121的存储内容如图3N所示。
响应于编码单元CU11的划分中止,视频解码器110并继续依照在64x64区块此层的循序扫描顺序从堆栈存储器121取出64x64区块24,并判断出区块24不需进一步划分。即在第十六次划分处理时,区块24的尺寸仍维持在64x64,即划分中止。因此,视频解码器110可将区块24设定为编码单元CU12,并对区块24进行解码。此时,堆栈存储器121的存储内容已完全清空,如图3O所示。当完成编码单元CU12的解码后,表示超级区块200的解码过程结束。
图5A为依据本发明一实施例中的递归划分解码区块的方法的流程图。图5B为依据本发明图5A实施例中的当前区块的区块递归划分处理的流程图。请同时参考图1及图5A~5B。
在步骤S510,从欲解码的一视频流取得一超级区块,其中该超级区块在水平方向及垂直方向均具有第一尺寸。举例来说,以AV1标准中的超级区块的最大尺寸例如可为128x128。
在步骤S520,将该超级区块在水平方向及垂直方向均等划分为一第一区块、一第二区块、一第三区块及一第四区块。举例来说,第一区块、第二区块、第三区块及第四区块的顺序依照循序扫描的顺序而定(例如分别对应于图2中的区块21、22、23及24),即第一区块、第二区块、第三区块及第四区块分别位于超级区块的左上方、右上方、左下方及右下方。
在步骤S530,选择该第一区块做为一当前区块以执行一区块递归划分处理,并依序将该第四区块、该第三区块及该第二区块写入至一堆栈存储器。举例来说,先写入至堆栈存储器的第四区块会位于堆栈存储器的最底部。
在步骤S540,响应于该当前区块的该区块递归划分处理结束,从该堆栈存储器取出最上层区块以做为该当前区块,并对该当前区块执行该区块递归划分处理。需注意的是堆栈存储器121以先入后出(FILO)或后入先出(LIFO)的方式来实现区块递归划分的操作。对于堆栈存储器121而言,加入(push)操作与删除(pop)操作是在堆栈存储器121的同一端执行。因此,从该堆栈存储器所取出的下一区块为该堆栈存储器最上层的区块(或子区块)。
在步骤S550,判断当前区块是否为该第四区块。若当前区块为该第四区块,则此流程结束。若当前区块并非该第四区块,则回到步骤S540。
在此实施例中,当前区块的区块递归划分处理可进一步分为步骤S521~S527。
在步骤S521,判断当前区块是否需要划分。若判断当前区块需要划分,则执行步骤S522。若判断当前区块不需要划分,则执行步骤S525。
在步骤S522,将该当前区块在水平方向及垂直方向均等划分为一第一子区块、一第二子区块、一第三子区块及一第四子区块,并依序将该第四子区块、该第三子区块及该第二子区块写入至该堆栈存储器。
在步骤S523,将该第一子区块设定为当前子区块,并判断当前子区块是否需要划分。若当前子区块需要划分,执行步骤S524。若当前子区块不需要划分,执行步骤S525。
在步骤S524,对当前子区块重复执行区块递归划分处理直到当前子区块的尺寸等于一预定尺寸。举例来说,该预定尺寸例如为最小编码单元(CU)的尺寸,即4x4区块。
在步骤S525,对当前子区块进行解码。
在步骤S526,响应于该当前子区块的解码结束,从该堆栈存储器取出最上层子区块以做为该当前子区块,并对该当前子区块执行该区块递归划分处理。
在步骤S527,响应于该当前子区块的该区块递归划分处理结束,判断当前子区块是否为该第四子区块。若当前子区块为该第四子区块,则执行步骤S540。若当前子区块并非该第四子区块,则回到步骤S526。
综上所述,本发明提供一种集成电路及递归划分解码区块的方法,其可利用堆栈存储器以使视频解码器有效率地将超级区块递归划分为多个编码单元,藉以增进解码效能。
在权利要求中使用如“第一”、“第二”、“第三”等词用来修饰权利要求中的元件,并非用来表示之间具有优先权顺序,先行关系,或者是一个元件先于另一个元件,或者是执行方法步骤时的时间先后顺序,仅用来区别具有相同名字的元件。
本发明虽以优选实施例公开如上,然其并非用以限定本发明的范围,本领域技术人员,在不脱离本发明的精神和范围内,当可做些许的更动与润饰,因此本发明的保护范围当视所附权利要求书界定范围为准。

Claims (14)

1.一种集成电路,包括:
堆栈存储器;以及
视频解码器,用以对该集成电路收到的视频流进行解码,该视频解码器从该视频流取得超级区块,其中该超级区块在水平方向及垂直方向均具有第一尺寸,该视频解码器将该超级区块在水平方向及垂直方向均等划分为第一区块,第二区块,第三区块以及第四区块,
其中该视频解码器选择该第一区块做为当前区块以执行区块递归划分处理,并依序将该第四区块,该第三区块及该第二区块写入至该堆栈存储器;
其中,当该当前区块的该区块递归划分处理结束,该视频解码器从该堆栈存储器取出最上层区块以做为该当前区块,并对该当前区块执行该区块递归划分处理,
该视频解码器判断当前区块是否为该第四区块,
当该当前区块为该第四区块,判断该第四区块是否需要划分,若判断该第四区块不需要划分时,该视频解码器结束该超级区块的解码,
当该当前区块并非该第四区块,该视频解码器从该堆栈存储器取出下一区块以做为该当前区块,并对该当前区块执行该区块递归划分处理。
2.如权利要求1所述的集成电路,其中该视频流支持以下标准之一或其结合:开放媒体联盟标准,高效率视频编码标准及VP9的视频编解码标准。
3.如权利要求1所述的集成电路,其中在该当前区块的该区块递归划分处理中,该视频解码器还判断该当前区块是否需要划分,
当该视频解码器判断该当前区块需要划分,该视频解码器将该当前区块在水平方向及垂直方向均等划分为第一子区块,第二子区块,第三子区块及第四子区块,并依序将该第四子区块,该第三子区块及该第二子区块写入至该堆栈存储器;以及
该视频解码器判断该当前区块不需要划分,该视频解码器对该当前区块进行解码。
4.如权利要求3所述的集成电路,其中该视频解码器还将该第一子区块设定为当前子区块,并判断该当前子区块是否需要划分,
当该视频解码器判断该当前子区块需要划分,该视频解码器对当前子区块重复执行该区块递归划分处理直到当前子区块的尺寸等于预定尺寸;以及
当该视频解码器判断该当前子区块不需要划分,该视频解码器对该当前子区块进行解码。
5.如权利要求4所述的集成电路,其中在该当前子区块的该区块递归划分处理中,当该当前子区块的解码结束,该视频解码器从该堆栈存储器取出最上层子区块以做为该当前子区块,并对该当前子区块执行该子区块递归划分处理。
6.如权利要求5所述的集成电路,其中在该当前子区块的该区块递归划分处理中,响应于该当前子区块的该区块递归划分处理结束,该视频解码器判断当前子区块是否为该第四子区块,
当该视频解码器判断该当前子区块为该第四子区块时,该视频解码器判断该第四子区块是否需要划分,若判断该第四子区块不需要划分时,该视频解码器对该当前子区块进行解码;以及
当该视频解码器判断该当前子区块并非该第四子区块,该视频解码器从该堆栈存储器取出最上层子区块以做为该当前子区块,并对该当前子区块执行该区块递归划分处理。
7.如权利要求4所述的集成电路,其中该预定尺寸为最小编码单元的尺寸。
8.一种递归划分解码区块的方法,用于集成电路,该集成电路包括堆栈存储器,该方法包括:
对该集成电路收到的视频流进行视频解码;
从该视频流取得超级区块,其中该超级区块在水平方向及垂直方向均具有第一尺寸;
将该超级区块在水平方向及垂直方向均等划分为第一区块,第二区块,第三区块及第四区块;
选择该第一区块做为当前区块以执行区块递归划分处理,并依序将该第四区块,该第三区块及该第二区块写入至该堆栈存储器;
响应于该当前区块的该区块递归划分处理结束,从该堆栈存储器取出下一区块以做为该当前区块,并对该当前区块执行该区块递归划分处理;
判断当前区块是否为该第四区块;
当该当前区块为该第四区块,判断该第四区块是否需要划分,若判断该第四区块不需要划分时,结束该超级区块的解码阶段;以及
当该当前区块并非该第四区块,从该堆栈存储器取出下一区块以做为该当前区块,并对该当前区块执行该区块递归划分处理。
9.如权利要求8所述的递归划分解码区块的方法,其中该视频流支持以下标准之一或其结合:开放媒体联盟标准,高效率视频编码标准及VP9的视频编解码标准。
10.如权利要求8所述的递归划分解码区块的方法,在该当前区块的该区块递归划分处理中,该方法还包括:
判断该当前区块是否需要划分;
当判断该当前区块需要划分时,将该当前区块在水平方向及垂直方向均等划分为第一子区块,第二子区块,第三子区块及第四子区块,并依序将该第四子区块,该第三子区块及该第二子区块写入至该堆栈存储器;以及
当判断该当前区块不需要划分时,对该当前区块进行解码。
11.如权利要求10所述的递归划分解码区块的方法,还包括:
将该第一子区块设定为当前子区块,并判断该当前子区块是否需要划分;
当判断该当前子区块需要划分,对当前子区块重复执行区块递归划分处理直到当前子区块的尺寸等于预定尺寸;以及
当判断该当前子区块不需要划分,对该当前子区块进行解码。
12.如权利要求11所述的递归划分解码区块的方法,其中在该当前子区块的该区块递归划分处理中,该方法还包括:当该当前子区块的解码结束,从该堆栈存储器取出下一子区块以做为该当前子区块,并对该当前子区块执行该区块递归划分处理。
13.如权利要求12所述的递归划分解码区块的方法,其中在该当前子区块的该区块递归划分处理中,该方法还包括:
当该当前子区块的该区块递归划分处理结束,判断当前子区块是否为该第四子区块;
当判断该当前子区块为该第四子区块时,判断该第四子区块是否需要划分,若判断该第四子区块不需要划分时,对该当前子区块进行解码;以及
当判断该当前子区块并非该第四子区块时,从该堆栈存储器取出下一子区块以做为该当前子区块,并对该当前子区块执行该区块递归划分处理。
14.如权利要求11所述的递归划分解码区块的方法,其中该预定尺寸为最小编码单元的尺寸。
CN202010626373.5A 2020-07-01 2020-07-01 集成电路及递归划分解码区块的方法 Active CN111757108B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010626373.5A CN111757108B (zh) 2020-07-01 2020-07-01 集成电路及递归划分解码区块的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010626373.5A CN111757108B (zh) 2020-07-01 2020-07-01 集成电路及递归划分解码区块的方法

Publications (2)

Publication Number Publication Date
CN111757108A CN111757108A (zh) 2020-10-09
CN111757108B true CN111757108B (zh) 2023-03-24

Family

ID=72678592

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010626373.5A Active CN111757108B (zh) 2020-07-01 2020-07-01 集成电路及递归划分解码区块的方法

Country Status (1)

Country Link
CN (1) CN111757108B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6137493A (en) * 1996-10-16 2000-10-24 Kabushiki Kaisha Toshiba Multidimensional data management method, multidimensional data management apparatus and medium onto which is stored a multidimensional data management program
TW201919397A (zh) * 2017-07-19 2019-05-16 弗勞恩霍夫爾協會 圖片編碼的裝置和方法
CN109845257A (zh) * 2016-12-06 2019-06-04 Jvc 建伍株式会社 图像编码装置、图像编码方法和图像编码程序、图像解码装置、图像解码方法和图像解码程序
CN112055966A (zh) * 2018-04-24 2020-12-08 联发科技股份有限公司 用于画面和视频编解码的可选择的变换跳过模式的方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106331720B (zh) * 2015-06-17 2020-03-27 福州瑞芯微电子股份有限公司 一种视频解码相关信息存储方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6137493A (en) * 1996-10-16 2000-10-24 Kabushiki Kaisha Toshiba Multidimensional data management method, multidimensional data management apparatus and medium onto which is stored a multidimensional data management program
CN109845257A (zh) * 2016-12-06 2019-06-04 Jvc 建伍株式会社 图像编码装置、图像编码方法和图像编码程序、图像解码装置、图像解码方法和图像解码程序
TW201919397A (zh) * 2017-07-19 2019-05-16 弗勞恩霍夫爾協會 圖片編碼的裝置和方法
CN112055966A (zh) * 2018-04-24 2020-12-08 联发科技股份有限公司 用于画面和视频编解码的可选择的变换跳过模式的方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于二叉树的栅格数据快速编码及其实现;杨敏等;《测绘工程》;20011230(第04期);全文 *

Also Published As

Publication number Publication date
CN111757108A (zh) 2020-10-09

Similar Documents

Publication Publication Date Title
US7411529B2 (en) Method of decoding bin values using pipeline architecture and decoding device therefor
TWI353119B (en) Compression system and method for a bit-plane
US20220360798A1 (en) Method and apparatus for parallelizing context selection in video processing
US20220116613A1 (en) Video encoding method and device, and video decoding method and device
US20220109839A1 (en) Video decoding method and device, and video coding method and device
CN111757108B (zh) 集成电路及递归划分解码区块的方法
JP4865662B2 (ja) エントロピー符号化装置、エントロピー符号化方法およびコンピュータプログラム
CN110572713B (zh) 一种自适应视频宽高比的转码方法及处理终端
US8023756B2 (en) Image encoding apparatus and method of controlling same
CN111726626B (zh) 集成电路及用于视频解码的概率表存储方法
CN1182981A (zh) 解码图象显示装置及其显示存储器的控制方法
CN115695794A (zh) 视频残差解码装置和关联方法
JP2004517527A (ja) グラフィック画像符号化
US8634669B2 (en) Fast implementation of context selection of significance map
JPH10108011A (ja) データ処理装置
US20140301655A1 (en) Image decoding methods and image decoding devices
US20200275099A1 (en) Image encoding method and device, and image decoding method and device
US20040213467A1 (en) Image processing apparatus
US20060115150A1 (en) Calculation method of a cumulative histogram
CN110392259A (zh) 影像压缩***及利用影像压缩***以压缩影像画面的方法
CN110662088B (zh) 一种防止视频重复转码的去重方法及处理终端
US11669281B1 (en) Count circuit for symbol statistics
WO2007105951A1 (en) Method and device for coding and decoding data
Rowshanbin et al. Acceleration of fractal image compression using characteristic vector classification
CN114339220A (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20210315

Address after: 201203 3rd floor, building 2, No. 200, zhangheng Road, Pudong New Area pilot Free Trade Zone, Shanghai

Applicant after: Gryfield Intelligent Technology Co.,Ltd.

Address before: Room 301, 2537 Jinke Road, Zhangjiang hi tech park, Shanghai 201203

Applicant before: VIA ALLIANCE SEMICONDUCTOR Co.,Ltd.

GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 201203, 11th Floor, Building 3, No. 889 Bibo Road, China (Shanghai) Pilot Free Trade Zone

Patentee after: Granfei Intelligent Technology Co.,Ltd.

Country or region after: China

Address before: 201203 3rd floor, building 2, No. 200, zhangheng Road, Pudong New Area pilot Free Trade Zone, Shanghai

Patentee before: Gryfield Intelligent Technology Co.,Ltd.

Country or region before: China