TWI807687B - 基於自適應幀內刷新機制的解碼、編碼 - Google Patents

基於自適應幀內刷新機制的解碼、編碼 Download PDF

Info

Publication number
TWI807687B
TWI807687B TW111109255A TW111109255A TWI807687B TW I807687 B TWI807687 B TW I807687B TW 111109255 A TW111109255 A TW 111109255A TW 111109255 A TW111109255 A TW 111109255A TW I807687 B TWI807687 B TW I807687B
Authority
TW
Taiwan
Prior art keywords
frame
virtual boundary
current frame
boundary position
refresh
Prior art date
Application number
TW111109255A
Other languages
English (en)
Other versions
TW202247657A (zh
Inventor
魏亮
陳方棟
王莉
Original Assignee
大陸商杭州海康威視數字技術股份有限公司
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 大陸商杭州海康威視數字技術股份有限公司 filed Critical 大陸商杭州海康威視數字技術股份有限公司
Publication of TW202247657A publication Critical patent/TW202247657A/zh
Application granted granted Critical
Publication of TWI807687B publication Critical patent/TWI807687B/zh

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/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • 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/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/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/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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/167Position within a video image, e.g. region of interest [ROI]
    • 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/174Methods 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 slice, e.g. a line of blocks or a group of 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/187Methods 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 scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本發明實施例公開了一種基於自適應幀內刷新機制的解碼、編碼方法及相關設備,屬於視頻編解碼領域。在本發明實施例中,在當前幀的碼流中的擴展資料內新增自適應幀內刷新視頻擴展號以及虛擬邊界位置標記資訊。這樣,由於該虛擬邊界位置標記資訊能夠指示虛擬邊界的位置,且該虛擬邊界至少用於區分當前幀中的已刷新區域和未刷新區域,因此編碼設備在劃分當前幀的刷新區域時,可以基於實際需求任意設置該虛擬邊界,並通過該虛擬邊界位置標記資訊指示該虛擬邊界的位置,從而有效提高了劃分區域的靈活性。

Description

基於自適應幀內刷新機制的解碼、編碼
本發明實施例涉及視頻編解碼領域,特別涉及用於基於自適應幀內刷新機制的解碼、編碼的方法及相關設備。
為了解決由於I幀碼率過大而導致解碼I幀所需時間較長的問題,幀內刷新機制應運而生。幀內刷新機制的基本原理是將一個I幀的碼率分散到若干個P幀上。在編碼的過程中,將一個完整圖像幀基於刷新週期劃分為N個強制幀內區域,依次編碼針對該圖像幀的N個幀內刷新幀,每個幀內刷新幀包括前述N個強制幀內區域中的一個強制幀內區域,這N個強制幀內區域的編碼模式為強制幀內(intra)模式,每個幀內刷新幀中的其他區域的編碼模式允許採用幀間(inter)模式,這樣每個幀內刷新幀的碼率不僅相對於I幀的碼率得以減小,各個幀內刷新幀的碼率也比較穩定。但是基於目前的語法啟動幀內刷新機制的過程有些冗餘。
本發明實施例提供了一種基於自適應幀內刷新機制的解碼、編碼方法及相關設備,可以提高劃分為幀內刷新機制的應用靈活性。所述技術方案如下:
一方面,提供了一種基於自適應幀內刷新機制的解碼方法,所述方法包括:接收當前幀的碼流;若所述當前幀的碼流中存在擴展資料且所述擴展資料中攜帶自適應幀內刷新視頻擴展號,則獲取所述擴展資料中攜帶的虛擬邊界位置標記資訊,所述虛擬邊界位置標記資訊用於指示虛擬邊 界的位置,所述虛擬邊界至少用於區分所述當前幀中的已刷新區域和未刷新區域;基於所述虛擬邊界位置標記資訊,確定所述當前幀是否支援自適應幀內刷新技術。
基於上述方法,在一種可能的實現方式中,所述方法還包括:若所述當前幀的碼流的擴展資料中不存在所述自適應幀內刷新視頻擴展號,則確定所述當前幀不支持所述自適應幀內刷新技術。
基於上述方法,在一種可能的實現方式中,所述虛擬邊界位置標記資訊包括第一虛擬邊界位置標記資訊和第二虛擬邊界位置標記資訊;所述第一虛擬邊界位置標記資訊用於指示所述虛擬邊界在所述當前幀水平方向上的像素位置,所述第二虛擬邊界位置標記資訊用於指示所述虛擬邊界在所述當前幀垂直方向上的像素位置。
基於上述方法,在一種可能的實現方式中,所述第一虛擬邊界位置標記資訊為所述虛擬邊界在所述當前幀水平方向上的圖像橫坐標,所述第二虛擬邊界位置標記資訊為所述虛擬邊界在所述當前幀垂直方向上的圖像縱坐標;所述已刷新區域是指以圖像左上角座標(0,0)為原點,寬為所述圖像橫坐標、高為所述圖像縱坐標的矩形區域,所述未刷新區域是指所述當前幀中除所述已刷新區域之外的其他區域。
基於上述方法,在一種可能的實現方式中,所述基於所述虛擬邊界位置標記資訊,確定所述當前幀是否支援自適應幀內刷新技術,包括:若所述第一虛擬邊界位置標記資訊的取值和所述第二虛擬邊界位置標記資訊的取值均大於0,則確定所述當前幀支持自適應幀內刷新技術;若所述第一虛擬邊界位置標記資訊的取值和/或所述第二虛擬邊界位置標記資訊的取值等於0,則確定所述當前幀不支持自適應幀內刷新技術。
基於上述方法,在一種可能的實現方式中,所述方法還包括:若所述當前幀支持自適應幀內刷新技術,且解碼順序中當前幀的前一幀不支持自適應幀內刷新技術,則所述當前幀為隨機接入點;其中,前一幀不支援自適應幀內刷新技術,包括:所述前一幀的擴展資料中不存在自適應幀內刷新視頻擴展號;或者所述前一幀的擴展資料中存在自適應幀內刷新視頻擴展號,但前一幀的第一虛擬邊界位置標記資訊和/或第二虛擬邊界位置標 記資訊的取值等於0。
基於上述方法,在一種可能的實現方式中,所述方法還包括:若確定所述當前幀支持自適應幀內刷新技術,且根據所述當前幀的第一虛擬邊界位置標記資訊確定虛擬邊界的像素位置等於或超出當前幀的右邊界,以及根據所述當前幀的第二虛擬邊界位置標記資訊確定虛擬邊界的像素位置等於或超出當前幀的下邊界,則確定所述當前幀為隨機接入的復原點。
基於上述方法,在一種可能的實現方式中,所述第一虛擬邊界位置標記資訊的精度為一個最大編碼單元(large coding unit,LCU)的寬度,所述第二虛擬邊界位置標記資訊的精度為一個所述LCU的高度。
基於上述方法,在一種可能的實現方式中,當所述當前幀用於隨機訪問時,對所述當前幀進行解碼之前,所述方法還包括:獲取一個有效的序列頭;根據所述序列頭攜帶的資訊,對所述當前幀進行解碼。
另一方面,提供了一種基於自適應幀內刷新機制的編碼方法,所述方法包括:確定當前幀是否支持自適應幀內刷新技術;若所述當前幀支援自適應幀內刷新技術,則在所述當前幀的擴展資料中攜帶自適應幀內刷新視頻擴展號和所述當前幀的虛擬邊界位置標記資訊,所述虛擬邊界位置標記資訊指示虛擬邊界的位置,所述虛擬邊界至少用於區分所述當前幀中的已刷新區域和未刷新區域。
基於上述方法,在一種可能的實現方式中,所述虛擬邊界位置標記資訊包括第一虛擬邊界位置標記資訊和第二虛擬邊界位置標記資訊;所述第一虛擬邊界位置標記資訊用於指示所述虛擬邊界在所述當前幀水平方向上的像素位置,所述第二虛擬邊界位置標記資訊用於指示所述虛擬邊界在所述當前幀垂直方向上的像素位置。
基於上述方法,在一種可能的實現方式中,所述第一虛擬邊界位置標記資訊為所述虛擬邊界在所述當前幀水平方向上的圖像橫坐標,所述第二虛擬邊界位置標記資訊為所述虛擬邊界在所述當前幀垂直方向上的圖像縱坐標;所述已刷新區域是指以圖像左上角座標(0,0)為原點,寬為所述圖像橫坐標、高為所述圖像縱坐標的矩形區域,所述未刷新區域是指所述當前幀中除所述已刷新區域之外的其他區域。
基於上述方法,在一種可能的實現方式中,若所述當前幀不支持自適應幀內刷新技術,則在所述當前幀的擴展資料中不攜帶自適應幀內刷新視頻擴展號,或者,在所述當前幀的擴展資料中攜帶自適應幀內刷新視頻擴展號,但是所述當前幀的擴展資料中攜帶的第一虛擬邊界位置標記資訊的取值和/或第二虛擬邊界位置標記資訊的取值為0。
基於上述方法,在一種可能的實現方式中,若所述當前幀支持自適應幀內刷新技術,則所述當前幀的擴展資料中攜帶的所述第一虛擬邊界位置標記資訊的取值大於0,且所述第二虛擬邊界位置標記資訊的取值也大於0。
基於上述方法,在一種可能的實現方式中,所述方法還包括:若所述當前幀為隨機接入點,則確定所述當前幀支持自適應幀內刷新技術,且編碼順序中當前幀的前一幀不支持自適應幀內刷新技術。
基於上述方法,在一種可能的實現方式中,所述方法還包括:若所述當前幀為隨機接入的復原點,則確定所述當前幀支持自適應幀內刷新技術,且所述第一虛擬邊界位置標記資訊所指示的虛擬邊界的像素位置等於或超出所述當前幀的右邊界,以及所述第二虛擬邊界位置標記資訊所指示的虛擬邊界的像素位置等於或超出所述當前幀的下邊界。
基於上述方法,在一種可能的實現方式中,所述第一虛擬邊界位置標記資訊的精度為一個LCU的寬度,所述第二虛擬邊界位置標記資訊的精度為一個所述LCU的高度。
另一方面,提供了一種解碼裝置,所述解碼裝置包括:接收模組,用於接收當前幀的碼流;處理模組,用於若所述當前幀的碼流中存在擴展資料且所述擴展資料中攜帶自適應幀內刷新視頻擴展號,則獲取所述擴展資料中攜帶的虛擬邊界位置標記資訊,所述虛擬邊界位置標記資訊用於指示虛擬邊界的位置,所述虛擬邊界至少用於區分所述當前幀中的已刷新區域和未刷新區域;所述處理模組,還基於所述虛擬邊界位置標記資訊,確定所述當前幀是否支援自適應幀內刷新技術。
基於上述裝置,在一種可能的實現方式中,所述處理模組還用於:若所述當前幀的碼流的擴展資料中不存在所述自適應幀內刷新視頻擴 展號,則確定所述當前幀不支持所述自適應幀內刷新技術。
基於上述裝置,在一種可能的實現方式中,所述虛擬邊界位置標記資訊包括第一虛擬邊界位置標記資訊和第二虛擬邊界位置標記資訊;所述第一虛擬邊界位置標記資訊用於指示所述虛擬邊界在所述當前幀水平方向上的像素位置,所述第二虛擬邊界位置標記資訊用於指示所述虛擬邊界在所述當前幀垂直方向上的像素位置。
基於上述裝置,在一種可能的實現方式中,所述第一虛擬邊界位置標記資訊為所述虛擬邊界在所述當前幀水平方向上的圖像橫坐標,所述第二虛擬邊界位置標記資訊為所述虛擬邊界在所述當前幀垂直方向上的圖像縱坐標;所述已刷新區域是指以圖像左上角座標(0,0)為原點,寬為所述圖像橫坐標、高為所述圖像縱坐標的矩形區域,所述未刷新區域是指所述當前幀中除所述已刷新區域之外的其他區域。
基於上述裝置,在一種可能的實現方式中,所述處理模組用於:若所述第一虛擬邊界位置標記資訊的取值和所述第二虛擬邊界位置標記資訊的取值均大於0,則確定所述當前幀支持自適應幀內刷新技術;若所述第一虛擬邊界位置標記資訊的取值和/或所述第二虛擬邊界位置標記資訊的取值等於0,則確定所述當前幀不支持自適應幀內刷新技術。
基於上述裝置,在一種可能的實現方式中,所述處理模組還用於:若所述當前幀支持自適應幀內刷新技術,且解碼順序中當前幀的前一幀不支持自適應幀內刷新技術,則所述當前幀為隨機接入點;其中,前一幀不支援自適應幀內刷新技術,包括:所述前一幀的擴展資料中不存在自適應幀內刷新視頻擴展號;或者所述前一幀的擴展資料中存在自適應幀內刷新視頻擴展號,但前一幀的第一虛擬邊界位置標記資訊和/或第二虛擬邊界位置標記資訊的取值等於0。
基於上述裝置,在一種可能的實現方式中,所述處理模組還用於:若確定所述當前幀支持自適應幀內刷新技術,且根據所述當前幀的第一虛擬邊界位置標記資訊確定虛擬邊界的像素位置等於或超出當前幀的右邊界,以及根據所述當前幀的第二虛擬邊界位置標記資訊確定虛擬邊界的像素位置等於或超出當前幀的下邊界,則確定所述當前幀為隨機接入的復原 點。
基於上述裝置,在一種可能的實現方式中,所述第一虛擬邊界位置標記資訊的精度為一個LCU的寬度,所述第二虛擬邊界位置標記資訊的精度為一個所述LCU的高度。
基於上述裝置,在一種可能的實現方式中,所述處理模組還用於:當所述當前幀用於隨機訪問時,對所述當前幀進行解碼之前,獲取一個有效的序列頭;根據所述序列頭攜帶的資訊,對所述當前幀進行解碼。
另一方面,提供了一種編碼裝置,所述編碼裝置包括:編碼模組,用於確定當前幀是否支持自適應幀內刷新技術;所述編碼模組,還用於若所述當前幀支持自適應幀內刷新技術,則在所述當前幀的擴展資料中攜帶自適應幀內刷新視頻擴展號和所述當前幀的虛擬邊界位置標記資訊,所述虛擬邊界位置標記資訊指示虛擬邊界的位置,所述虛擬邊界至少用於區分所述當前幀中的已刷新區域和未刷新區域。
基於上述裝置,在一種可能的實現方式中,所述虛擬邊界位置標記資訊包括第一虛擬邊界位置標記資訊和第二虛擬邊界位置標記資訊;所述第一虛擬邊界位置標記資訊用於指示所述虛擬邊界在所述當前幀水平方向上的像素位置,所述第二虛擬邊界位置標記資訊用於指示所述虛擬邊界在所述當前幀垂直方向上的像素位置。
基於上述裝置,在一種可能的實現方式中,所述第一虛擬邊界位置標記資訊為所述虛擬邊界在所述當前幀水平方向上的圖像橫坐標,所述第二虛擬邊界位置標記資訊為所述虛擬邊界在所述當前幀垂直方向上的圖像縱坐標;所述已刷新區域是指以圖像左上角座標(0,0)為原點,寬為所述圖像橫坐標、高為所述圖像縱坐標的矩形區域,所述未刷新區域是指所述當前幀中除所述已刷新區域之外的其他區域。
基於上述裝置,在一種可能的實現方式中,所述編碼模組還用於:若所述當前幀不支持自適應幀內刷新技術,則在所述當前幀的擴展資料中不攜帶自適應幀內刷新視頻擴展號,或者,在所述當前幀的擴展資料中攜帶自適應幀內刷新視頻擴展號,但是所述當前幀的擴展資料中攜帶的第一虛擬邊界位置標記資訊的取值和/或第二虛擬邊界位置標記資訊的取值為0。
基於上述裝置,在一種可能的實現方式中,所述編碼模組還用於:若所述當前幀支援自適應幀內刷新技術,則所述當前幀的擴展資料中攜帶的所述第一虛擬邊界位置標記資訊的取值大於0,且所述第二虛擬邊界位置標記資訊的取值也大於0。
基於上述裝置,在一種可能的實現方式中,所述編碼模組還用於:若所述當前幀為隨機接入點,則確定所述當前幀支持自適應幀內刷新技術,且編碼順序中當前幀的前一幀不支持自適應幀內刷新技術。
基於上述裝置,在一種可能的實現方式中,所述編碼模組還用於:若所述當前幀為隨機接入的復原點,則確定所述當前幀支持自適應幀內刷新技術,且所述第一虛擬邊界位置標記資訊所指示的虛擬邊界的像素位置等於或超出所述當前幀的右邊界,以及所述第二虛擬邊界位置標記資訊所指示的虛擬邊界的像素位置等於或超出所述當前幀的下邊界。
基於上述裝置,在一種可能的實現方式中,所述第一虛擬邊界位置標記資訊的精度為一個LCU的寬度,所述第二虛擬邊界位置標記資訊的精度為一個所述LCU的高度。
另一方面,提供了一種解碼設備,所述解碼設備包括處理器和用於存儲處理器可執行指令的記憶體;其中,所述處理器被配置為執行上述所述的基於自適應幀內刷新機制的解碼方法中的任一步驟。
另一方面,提供了一種編碼設備,所述編碼設備包括處理器和用於存儲處理器可執行指令的記憶體;其中,所述處理器被配置為執行上述所述的基於自適應幀內刷新機制的編碼方法中的任一步驟。
另一方面,提供了一種電腦可讀存儲介質,所述電腦可讀存儲介質上存儲有指令,所述指令被處理器執行時實現上述基於自適應幀內刷新機制的解碼方法、或者基於自適應幀內刷新機制的編碼方法中的任一步驟。
另一方面,提供了一種包含指令的電腦程式產品,當其在電腦上運行時,使得電腦執行上述基於自適應幀內刷新機制的解碼方法、或者基於自適應幀內刷新機制的編碼方法中的任一步驟。
本發明實施例提供的技術方案帶來的有益效果至少包括:在 當前幀的碼流中的擴展資料中新增自適應幀內刷新視頻擴展號以及虛擬邊界位置標記資訊,由於該虛擬邊界位置標記資訊能夠指示虛擬邊界的位置,且該虛擬邊界至少用於區分當前幀中的已刷新區域和未刷新區域,因此編碼設備在劃分當前幀的刷新區域時,可以基於實際需求任意設置該虛擬邊界,然後通過該虛擬邊界位置標記資訊指示該虛擬邊界的位置即可,從而提高了劃分刷新區域的靈活性,也即是本發明實施例提供了一種通過擴展資料實現自適應劃分刷新區域的自適應幀內刷新機制。
401、402、601、602、603:步驟
700:解碼裝置
701:接收模組
702:處理模組
800:編碼裝置
801:編碼模組
900:終端
901:處理器
902:記憶體
903:週邊設備介面
904:射頻電路
905:顯示幕
906:攝像頭組件
907:音訊電路
908:定位組件
909:電源
910:感測器
911:加速度感測器
912:陀螺儀感測器
913:壓力感測器
914:指紋感測器
915:光學感測器
916:接近感測器
為了更清楚地說明本發明實施例中的技術方案,下面將對實施例描述中所需要使用的圖式作簡單地介紹,顯而易見地,下面描述中的圖式僅僅是本發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些圖式獲得其他的圖式。
圖1是本發明實施例提供的一種幀內刷新機制的示意圖;
圖2是本發明實施例提供的一種採用幀內刷新機制後的圖像序列的示意圖;
圖3是本發明實施例提供的一種採用幀內刷新機制後的圖像序列的示意圖;
圖4是本發明實施例提供的一種基於自適應幀內刷新機制的編碼方法流程圖;
圖5是本發明實施例提供的一種自適應幀內刷新機制中幀內刷新幀的區域分佈示意圖;
圖6是本發明實施例提供的一種基於自適應幀內刷新機制的解碼方法流程圖;
圖7是本發明實施例提供的一種解碼裝置的結構示意圖;
圖8是本發明實施例提供的一種編碼裝置的結構示意圖;
圖9是本發明實施例提供的一種終端的結構示意圖。
為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合圖式對本發明實施方式作進一步地詳細描述。
在對本發明實施例提供的方法進行解釋說明之前,先對本發明實施例涉及的應用場景進行解釋說明。
在視頻編解碼中,用於做基準參考的圖像幀稱為I幀,I幀也稱為關鍵幀。編碼I幀時,壓縮率很低,目的在於後續解碼時能夠直接基於I幀的碼流解碼得到I幀,從而無需參考其他圖像幀。在編碼時,基於前一幀圖像和當前圖像幀之間的差值進行編碼的圖像幀稱為P幀,編碼後的P幀的碼流中攜帶的是前一幀圖像和當前圖像幀之間的差值,以便於後續基於I幀、解碼得到的前一幀圖像和碼流中的差值解碼得到當前圖像幀。此外,在編碼時,基於前一幀圖像和當前圖像幀之間的差值、以及當前圖像幀和後一幀圖像之間的差值進行編碼的圖像幀稱為B幀,編碼後的B幀的碼流中攜帶的是前一幀圖像和當前圖像幀之間的差值以及當前圖像幀和後一幀圖像之間的差值,以便於後續基於I幀、解碼得到的前一幀圖像和後一幀圖像以及碼流中的差值解碼得到當前圖像幀。將編碼後的一個I幀以及若干個B幀或若干個P幀組成的序列稱為一個圖像序列。該圖像序列也稱為IPPP或IBBB序列。
在解碼設備通過隨機接入方式訪問IPPP或IBBB序列時,通常情況下I幀的碼率會遠大於P幀或B幀的碼率,使得I幀的解碼時間比P幀或B幀的解碼時間更長。尤其在弱網環境中解碼I幀所需的時間更長,從而導致可能會出現視訊卡頓現象。
為了避免由於解碼I幀所需時長過長導致出現視訊卡頓現象,目前業內提供了一種幀內刷新機制。該幀內刷新機制的核心思想是:將I幀的碼率分散到若干個P幀上,每個P幀都有一小塊區域的編碼模式是強制幀內模式,其他區域的編碼模式允許採用幀間模式,最終每個P幀的碼率都比原來的I幀小很多。同時,幀內刷新機制中要求不同P幀的強制幀內區域互不相交,如此經過若干個P幀之後,基於強制幀內模式便能夠刷新完整個圖像區域。
為了便於後續說明,下面對幀內刷新機制的原理進行詳細說明。
圖1是本發明實施例提供的其中一種幀內刷新機制的示意圖。圖1中的幀內刷新機制是把I幀的碼率分散到四個P幀上,每個P幀都有一個區域是強制幀內區域。其中標記為
Figure 111109255-A0202-12-0009-12
的區域是強制幀內區域。標記為
Figure 111109255-A0202-12-0009-13
的區域是編碼順序中前一幀的已刷新區域,該區域的編碼模式允許採用幀間模式,因此也稱為當前幀的幀間區域。標記為
Figure 111109255-A0202-12-0010-14
的區域是未刷新區域,該區域的編碼模式允許採用幀間模式。
如圖1所示,將完整的圖像幀劃分了4個強制幀內區域,刷新週期內包括4個幀內刷新幀,分別為圖1中從左到右的4幀圖像。對於刷新週期內第一幀圖像,該圖像包括一個幀內刷新區域和未刷新區域,由於第一幀圖像為刷新週期內的第一幀圖像,因此,第一幀圖像中的已刷新區域僅僅包括當前圖像幀中的強制幀內區域。對於刷新週期內第二幀圖像,該圖像包括第一幀圖像中的已刷新區域、一個幀內刷新區域和未刷新區域,第二幀圖像中第一幀圖像的已刷新區域和當前圖像幀包括的幀內刷新區域合併後統稱為第二幀圖像的已刷新區域。對於刷新週期內第三幀圖像,該圖像包括第二幀圖像中的已刷新區域、一個幀內刷新區域和未刷新區域,第三幀圖像中第二幀圖像的已刷新區域和當前圖像幀包括的幀內刷新區域合併後統稱為第三幀圖像的已刷新區域。對於刷新週期內第四幀圖像,該圖像包括第三幀圖像中的已刷新區域、一個幀內刷新區域,第四幀圖像中第三幀圖像的已刷新區域和當前圖像幀包括的幀內刷新區域合併後統稱為第四幀圖像的已刷新區域。由於前面是將完整圖像劃分了4個強制幀內區域,因此,第四幀圖像中是沒有未刷新區域的。
此外,未刷新區域也稱為髒(dirty)區域,編碼順序中前一幀的已刷新區域和當前幀的強制幀內區域合併後還可以統稱為當前幀的清潔(clean)區域,二者的分界線是圖1中的分界線。本發明實施例所涉及的虛擬邊界也是用於區分clean區域和dirty區域的分界線,只是分界線的劃分方式更加靈活,可以是折線的分界線,不限於垂直分界線。在本發明實施例中,對於任一幀內刷新幀,該幀內刷新幀的已刷新區域和未刷新區域之間的虛擬邊界是指已刷新區域和未刷新區域之間的分界線,該分界線也是該幀內刷新幀的clean區域和dirty區域之間的分界線。
圖2是本發明實施例提供的其中一種採用幀內刷新機制後的圖像序列的示意圖。如圖2所示,把原始圖像序列(圖2中簡稱為原始序列)中的I2(I幀)、P8(P幀)、P9(P幀)、P10(P幀)四幀替換成四 個幀內刷新幀,這四個幀內刷新幀標記為X1、X2、X3、X4,得到基於幀內刷新機制的圖像序列(圖2中簡稱為幀內刷新序列)。這四個幀內刷新幀均有一個區域是強制幀內區域,其他區域的編碼模式允許採用幀間模式,故可以把這四個幀內刷新幀看作四個“大P幀”,碼率近似為原來I2幀碼率的1/4。此外,這四個幀內刷新幀還可以簡稱為IR幀。
在圖2所示的圖像序列中,在隨機接入方式下,假設原始圖像序列中的I2幀是一個隨機接入點,該I2幀之後的幀可以獨立解碼,所以P8幀只能參考I2幀,不能參考P7幀。但是在基於幀內刷新機制的圖像序列(圖2中簡稱為幀內刷新序列)中,X1幀是一個隨機接入點,X1幀內的未刷新區域中的幀間編碼區域可以參考P7幀,但是可能無法正確解碼(因為隨機接入時P7幀可能還未拿到)。類似的,X2幀、X3幀的未刷新區域也可能無法正確解碼。直到X1至X4幀全部刷新完,此時由於X4幀中的已刷新區域中的幀間區域可以基於X1-X3的強制幀內區域的碼流解碼得到,X4幀中的已刷新區域中的強制幀內區域基於強制幀內解碼模式便可得到,因此沒有未刷新區域的X4幀可以完整的正確解碼。所以,圖2中的X1、X2、X3、X4幀是一個刷新週期,刷新週期中只有最後一幀可以完整的正確解碼,故稱該幀為復原點(Recovery Point)。
需要說明的是,在隨機接入情形下,只有復原點及其後面的圖像幀才會顯示給使用者,隨機接入點所在的刷新週期中的其他圖像由於可能無法正確解碼,因此均不顯示。在非隨機接入情形下,所有圖像幀都能完整的正確解碼,因此所有圖像幀都會顯示給使用者。
另外,為了保證基於幀內刷新機制編碼後的碼流解碼功能,目前幀內刷新機制對解碼模式中的幀內模式/幀間模式以及環路濾波限制了如下條件:
條件一:對於任一幀內刷新幀,該幀內刷新幀上已刷新區域的塊只能參考同一個刷新週期中其他幀內刷新幀的已刷新區域進行解碼,不能參考其他幀內刷新幀的未刷新區域進行解碼;TMVP(temporal motion vector prediction,時域運動向量預測)機制中的當前塊在參考幀中的同位塊也不能落在參考幀的未刷新區域,其中,同位元塊是指參考幀中和當前塊位 於相同位置的圖像塊,也即是,當前圖像幀的圖像塊的MV(motion vector,運動向量)資訊所指向的區域不能落在參考幀的未刷新區域中。需要說明的是,本發明實施例中當前塊和當前圖像塊為同一概念,為了便於說明,可以將當前圖像塊簡稱為當前塊。
條件二:對於任一幀內刷新幀,該幀內刷新幀上未刷新區域的塊解碼時沒有參考限制。
條件三:對於圖像序列中不是幀內刷新幀的圖像幀,該圖像幀的塊允許參考所在隨機接入週期中幀內刷新幀的已刷新區域進行解碼,但是不能參考所在隨機接入週期中幀內刷新幀的未刷新區域進行解碼;TMVP機制中的當前塊在參考幀中的同位塊也不能落在參考幀的未刷新區域。
條件四:對於任一幀內刷新幀,環路濾波不能跨越該幀內刷新幀的已刷新區域和未刷新區域之間的分界線,也即是不對已刷新區域和未刷新區域之間的虛擬邊界執行環路濾波操作。
目前VVC(Versatile Video Coding,通用視頻編碼)標準中的GDR(Gradual Decoding Refresh,逐步解碼刷新)技術給出了一種幀內刷新機制。該幀內刷新機制的具體內容如下。
首先通過垂直劃分方式劃分已刷新區域和未刷新區域。在垂直劃分方式中,已刷新區域和未刷新區域之間的虛擬邊界為平行於圖像坐標系中的Y軸的一條分界線。劃分邊界對齊到最小CU(coding unit,編碼單元)的寬高(CU的最小為8像素),也即是已刷新區域的寬度為整數倍最小CU的寬度,已刷新區域的高度為幀內刷新幀的圖像高度。
其次,不同幀內刷新幀上的強制幀間區域等距劃分,且強制幀間區域的寬度=圖像幀的總寬度/刷新週期。刷新週期是指正確解碼得到完整圖像幀所需的幀內刷新幀的數量,比如,圖3中的刷新週期即為6。其中,刷新週期可由編碼設備配置,比如,編碼設備可基於幀內刷新幀的碼流的圖像頭參數recovery_poc_cnt來設置該刷新週期,對於圖3所示的圖像序列,可將recovery_poc_cnt=6,指示該幀內刷新幀所在的刷新週期為6。此外,刷新順序是預設的從左到右,該刷新順序無需在碼流中明確指示,解碼設備預設按照從左到右的刷新順序解碼每個幀內刷新幀。
另外,對於任一圖像幀,編碼設備還可以基於圖像幀的碼流的圖像頭參數gdr_pic_flag標識當前圖像幀是否為幀內刷新幀。比如,gdr_pic_flag=1時,指示當前圖像幀為幀內刷新幀,gdr_pic_flag=0時,指示當前圖像幀不是幀內刷新幀。
此外,VCC標準中的幀內刷新機制同樣包括上述條件一至條件4這四個限制條件,在此不再贅述。
上述VCC標準中的幀內刷新機制中的強制幀內區域的劃分方式不夠靈活,只能是等距的分隔號狀區域,無法自適應的根據圖像內容劃分區域。此外,由於VCC標準中的幀內刷新機制不允許跨越已刷新區域和未刷新區域之間的虛擬邊界的環路濾波,所以該虛擬邊界上的圖像品質較差。
基於上述VCC標準中的幀內刷新機制中出現的問題,本發明實施例提供了一種基於自適應幀內刷新機制的編解碼方法,該方法中提供更靈活的強制幀內區域劃分方法,劃分方式編碼設備可配,通過本發明實施例提供的方法一方面能夠根據圖像內容自適應劃分已刷新區域和未刷新區域之間的虛擬邊界,提高了強制幀內區域的劃分靈活性。此外,還可以使得已刷新區域和未刷新區域之間的虛擬邊界盡可能與圖像中的物件邊界重合,從而避免由於無法對虛擬邊界進行環路濾波而影響解碼後的圖像品質。
由於本發明實施例提供的方法能夠根據圖像內容自適應劃分已刷新區域和未刷新區域之間的虛擬邊界,因此本發明實施例涉及的幀內刷新幀還可以稱為自適應幀內刷新幀,後續為了便於說明,將本發明實施例涉及的自適應幀內刷新幀簡稱為幀內刷新幀或刷新幀。
下面對本發明實施例提供的基於自適應幀內刷新機制的編解碼方法進行詳細解釋說明。
圖4是本發明實施例提供的一種基於自適應幀內刷新機制的編碼方法。如圖4所示,該方法包括如下幾個步驟。
步驟401:編碼設備確定當前幀是否支援自適應幀內刷新技術。
在使用者訪問視頻的過程中,通常存在隨機訪問的場景。在隨機訪問的場景中,由於解碼設備沒有獲取到隨機接入點之前的碼流,因此需要基於隨機接入點之後的碼流來解碼,這種場景下,為了能夠實現解碼設備 的正確解碼,便需要隨機接入點之後的碼流支持自適應幀內刷新技術。
基於上述場景,編碼設備可以通過如下方式來確定當前幀是否支持自適應幀內刷新技術:若當前幀為隨機接入點,則確定當前幀支持自適應幀內刷新技術,但編碼順序中當前幀的前一幀不支持自適應幀內刷新技術。若所述當前幀為隨機接入的復原點,則確定所述當前幀支持自適應幀內刷新技術。若所述當前幀為隨機接入點和隨機點接入的復原點之間的任一幀圖像,則確定所述當前幀支援自適應幀內刷新技術。
在當前幀支援自適應幀內刷新技術的情況下,編碼設備則需要確定當前幀中的已刷新區域和未刷新區域,以便於後續在編碼當前幀的碼流時,能夠將區分當前幀中的已刷新區域和未刷新區域的虛擬邊界的位置的虛擬邊界位置標記資訊編碼在碼流中。
為了便於理解,在此對本發明實施例提供的虛擬邊界進行解釋說明。
上述虛擬邊界可以是當前幀中已刷新區域的邊界線,也可以是當前幀中未刷新區域的邊界線,還可以是分割出來的已刷新區域和未刷新區域的分割界線。這三種虛擬邊界的示例本質相同。
後續實施例以虛擬邊界是分割出來的已刷新區域和未刷新區域的分割界線為例進行說明。也即是,該虛擬邊界位置標記資訊可以指示當前幀中已刷新區域和未刷新區域之間的虛擬邊界的位置,虛擬邊界的位置具體可以包括該虛擬邊界在當前幀水平方向上的位置以及當前幀中已刷新區域和未刷新區域之間的虛擬邊界在當前幀垂直方向上的位置。
但是需要說明的是,本發明實施例提供的自適應幀內刷新方案中的虛擬邊界不限於上述解釋,虛擬邊界可以是前述三種虛擬邊界示例中任意一種。
步驟402:若當前幀支援自適應幀內刷新技術,編碼設備則在當前幀的擴展資料中攜帶自適應幀內刷新視頻擴展號和當前幀的虛擬邊界位置標記資訊,虛擬邊界位置標記資訊指示虛擬邊界的位置,虛擬邊界至少用於區分當前幀中的已刷新區域和未刷新區域。
需要說明的是,擴展資料是指編碼後的當前幀的碼流中位於 圖像頭和圖像資料之間的一段資料。在某些標準中,擴展資料也稱為SEI(supplemental enhancement information,補充增強資訊)。
目前,在擴展資料中可以指示多個視頻擴展號,每個視頻擴展號下面可以繼續指示一些解碼參數。因此,在本發明實施例中,可以在擴展資料擴展一個新的視頻擴展標號出來,擴展的視頻擴展標號可以稱為自適應幀內刷新視頻擴展號。該自適應幀內刷新視頻擴展號用於通知解碼設備擴展資料中還進一步攜帶有和虛擬邊界的位置有關的參數(也即是虛擬邊界位置標記資訊),以便於後續解碼設備確定當前幀是否支援自適應幀內刷新機制,進而基於虛擬邊界位置標記資訊解碼當前幀的碼流。
表1是本發明實施例提供的一種擴展資料的語法元素示意表。如表1所示,本發明實施例擴展的自適應幀內刷新視頻擴展號為“1110”。這種場景下,擴展資料中還進一步包括“air_parameters_extension”欄位,該欄位用於指示虛擬機器邊界的位置有關的參數。
Figure 111109255-A0202-12-0015-1
需要說明的是,上述表1僅僅是本發明實施例提供的擴展資 料的語法元素的可選示例,本發明實施例並不限定這些語法元素的具體表現形式。此外,表1中其他語法元素的解釋可以參考相關標準,本發明實施例對此不做限定。
在一種可能的實現方式中,上述虛擬邊界位置標記資訊可以包括第一虛擬邊界位置標記資訊和第二虛擬邊界位置標記資訊。其中,第一虛擬邊界位置標記資訊用於指示虛擬邊界在當前幀水平方向上的像素位置,第二虛擬邊界位置標記資訊用於指示虛擬邊界在當前幀垂直方向上的像素位置。
這種情況下,如表2所示,上述表1中的語法元素air_parameters_extension( )便可包括第一虛擬邊界位置標記資訊和第二虛擬邊界位置標記資訊。表2是本發明實施例提供的另一種語法元素的示意表,如表2所示,air_parameters_extension( )中包括extension_id(用於標識前述的自適應幀內刷新視頻擴展號)、air_bound_x(用於標識第一虛擬邊界位置標記資訊)、以及air_bound_y(用於標識第二虛擬邊界位置標記資訊)。
Figure 111109255-A0202-12-0016-2
需要說明的是,上述虛擬邊界位置標記資訊實施例僅僅用於舉例說明,並不限定本發明實施例提供的虛擬邊界位置標記資訊的功能,任意能夠指示當前幀中已刷新區域和未刷新區域之間的虛擬邊界在當前幀水平方向上的位置以及當前幀中已刷新區域和未刷新區域之間的虛擬邊界在當前幀垂直方向上的位置的標記資訊均在本發明實施例提供的虛擬邊界位置標記資訊的範圍之內。
在確定當前幀是否支持自適應幀內刷新技術之後,便可編碼當前幀的碼流。具體地,若當前幀不支持自適應幀內刷新技術,則在當前幀的擴展資料中不攜帶自適應幀內刷新視頻擴展號,或者,在當前幀的擴展資 料中攜帶自適應幀內刷新視頻擴展號,但是當前幀的擴展資料中攜帶的第一虛擬邊界位置標記資訊的取值或第二虛擬邊界位置標記資訊的取值為0。
相應地,若當前幀支持自適應幀內刷新技術,則在所述當前幀的擴展資料中攜帶自適應幀內刷新視頻擴展號和所述當前幀的虛擬邊界位置標記資訊,且當前幀的擴展資料中攜帶的第一虛擬邊界位置標記資訊的取值大於0,且第二虛擬邊界位置標記資訊的取值也大於0。
示例地,上述第一虛擬邊界位置標記資訊為虛擬邊界在當前幀水平方向上的圖像橫坐標,第二虛擬邊界位置標記資訊為虛擬邊界在當前幀垂直方向上的圖像縱坐標。這種場景下,當前幀中的已刷新區域是指以圖像左上角座標(0,0)為原點,寬為圖像橫坐標、高為圖像縱坐標的矩形區域,當前幀中的未刷新區域是指當前幀中除已刷新區域之外的其他區域。
又示例地,第一虛擬邊界位置標記資訊的取值可以指示虛擬邊界在當前幀水平方向上所占的寬度為多少個LCU的寬度。第二虛擬邊界位置標記資訊的取值可以指示虛擬邊界在當前幀垂直方向上所占的高度為多少個LCU的高度。
此時,表2中的air_bound_x表示已刷新區域和未刷新區域之間的虛擬邊界在圖像中的橫坐標,且該橫坐標以LCU的寬度為單位。表2中的air_bound_y表示已刷新區域和未刷新區域之間的虛擬邊界在圖像中的縱坐標,該縱坐標也是以LCU的高度為單位。
比如,第一虛擬邊界位置標記資訊的取值為2,第二虛擬邊界位置標記資訊的取值為3,則表明當前已刷新區域是指以圖像左上角座標(0,0)為原點,以2倍的LCU的寬度為圖像橫坐標,3倍的LCU的高度為圖像縱坐標的矩形區域。
這種場景下,第一虛擬邊界位置標記資訊的精度為一個LCU的寬度,第二虛擬邊界位置標記資訊的精度為一個LCU的高度。
需要說明的是,上述是示例說明本發明實施例提供的邊界精度的可選實施例,並不限定本發明實施例涉及的邊界精度的範圍。其中,邊界精度包括已刷新區域的寬度精度和高度精度。其中,已刷新區域的寬度精度是指已刷新區域的最小寬度,已刷新區域的實際寬度通常配置為該寬度 精度的整數倍。已刷新區域的高度精度是指已刷新區域的最小高度,已刷新區域的實際高度通常配置為該高度精度的整數倍。
圖5是本發明實施例提供的一種自適應幀內刷新機制中幀內刷新幀的區域分佈示意圖。如圖5所示,幀內刷新幀的已刷新區域是指以座標為(0,0)為左上角、寬為圖像橫坐標AirBoundX、高為圖像縱坐標AirBoundY的矩形區域,該幀內刷新幀的未刷新區域是指該幀內刷新幀中除已刷新區域之外的其他區域。
也即是,圖5中的幀內刷新幀包括已刷新區域和未刷新區域。已刷新區域僅利用當前圖像或其他圖像已刷新區域進行解碼,未刷新區域可利用當前圖像或其他圖像進行解碼。
圖5中的PictureWidthInLcu標識圖像寬度除以LCU的寬度後的數值,PictureHeightInLcu標識圖像高度除以LCU的高度後的數值。如圖5所示,AirBoundX的值應小於或等於PictureWidthInLcu。AirBoundY的值應小於或等於PictureHeightInLcu。
此外,上述AirBoundX和AirBoundY為解碼過程中針對語法中的第一虛擬邊界位置標記資訊和第二虛擬邊界位置標記資訊設置的兩個變數。這兩個變數仍然用於指示圖像中已刷新區域的圖像橫坐標和圖像縱坐標。具體地,這兩個變數的取值在後續解碼側進行詳細說明,在此先不展開說明。
此外,若當前幀為隨機接入的復原點,編碼設備則確定當前幀支援自適應幀內刷新技術,且第一虛擬邊界位置標記資訊所指示的虛擬邊界的像素位置等於或超出當前幀的右邊界,以及第二虛擬邊界位置標記資訊所指示的虛擬邊界的像素位置等於或超出當前幀的下邊界。以便於後續解碼設備基於第一虛擬邊界位置標記資訊和第二虛擬邊界位置標記資訊便可判斷當前幀是否是隨機接入的復原點。
綜上所述,在當前幀的碼流中的擴展資料中新增自適應幀內刷新視頻擴展號以及虛擬邊界位置標記資訊,由於該虛擬邊界位置標記資訊能夠指示虛擬邊界的位置,且該虛擬邊界至少用於區分當前幀中的已刷新區域和未刷新區域,因此編碼設備在劃分當前幀的刷新區域時,可以基於 實際需求任意設置該虛擬邊界,然後通過該虛擬邊界位置標記資訊指示該虛擬邊界的位置即可,從而提高了劃分刷新區域的靈活性,也即是本發明實施例提供了一種通過擴展資料實現自適應劃分刷新區域的自適應幀內刷新機制。
下面通過圖6所示的實施例對本發明實施例提供的基於幀內刷新機制的解碼方法進行詳細解釋說明。如圖6所示,該解碼方法包括步驟601至步驟603。
步驟601:接收當前幀的碼流。
編碼設備在通過圖4所示的方法完成編碼後,便可將各個圖像的碼流發送至解碼設備,由解碼設備基於圖6所示的實施例完成圖像的解碼。
步驟602:若當前幀的碼流中存在擴展資料且擴展資料中攜帶自適應幀內刷新視頻擴展號,則獲取擴展資料中攜帶的虛擬邊界位置標記資訊,虛擬邊界位置標記資訊用於指示虛擬邊界的位置,虛擬邊界至少用於區分當前幀中的已刷新區域和未刷新區域。
關於自適應幀內刷新視頻擴展號、以及虛擬邊界位置標記資訊的相關解釋同樣可以參考編碼設備實施例中的步驟401,在此不再贅述。
此外,基於圖4所示的實施例可知,若當前幀的碼流的擴展資料中不存在自適應幀內刷新視頻擴展號,則確定當前幀不支援自適應幀內刷新技術。
比如,對於表2所示的語法元素,在當前幀的碼流的擴展資料中沒有查找到“1110”這個視頻擴展號,則確定當前幀不支持自適應幀內刷新技術,此時便可通過其他解碼方式解碼當前幀的碼流,本發明實施例對不支持自適應幀內刷新技術下的解碼過程不做限定。
步驟603:基於該虛擬邊界位置標記資訊,確定當前幀是否支援自適應幀內刷新技術。
基於圖4所示的實施例可知,在擴展資料中存在自適應幀內刷新視頻擴展號的情況下,當前幀也不一定是支持自適應幀內刷新技術的。因此,在通過步驟602獲取到虛擬邊界位置標記資訊,還需基於虛擬邊界 位置標記資訊,進一步判斷當前幀是否支持自適應幀內刷新技術。
基於圖4所示的實施例可知,虛擬邊界位置標記資訊包括第一虛擬邊界位置標記資訊和第二虛擬邊界位置標記資訊。其中,第一虛擬邊界位置標記資訊用於指示虛擬邊界在當前幀水平方向上的像素位置,第二虛擬邊界位置標記資訊用於指示虛擬邊界在當前幀垂直方向上的像素位置。
這種場景下,步驟603的實現過程為:若第一虛擬邊界位置標記資訊的取值和第二虛擬邊界位置標記資訊的取值均大於0,則確定當前幀支持自適應幀內刷新技術。相應地,若第一虛擬邊界位置標記資訊的取值或第二虛擬邊界位置標記資訊的取值等於0,則確定當前幀不支持自適應幀內刷新技術。
比如,對於表1和表2所示的語法元素,在解碼擴展資料時,判斷碼流中是否存在自適應幀內刷新參數air_bound_x和air_bound_y。若存在這兩個參數,則令圖5中當前幀的AirBoundX的值等於air_bound_x的值,當前幀的AirBoundY的值等於air_bound_y的值。如果不存在這兩個參數,則令當前幀的AirBoundX的值等於0,當前幀的AirBoundY的值等於0。
其中,當前幀的AirBoundX和AirBoundY已在前述進行了解釋說明,在此不再贅述。
在得到當前幀的AirBoundX和AirBoundY之後,如果AirBoundX和AirBoundY均大於0,則確定當前幀支持自適應幀內刷新技術。如果AirBoundX和/或AirBoundY等於0,則確定當前幀不支持自適應幀內刷新技術。
此外,解碼設備在確定當前幀支援自適應幀內刷新技術,且解碼順序中當前幀的前一幀不支持自適應幀內刷新技術時,則確定當前幀為隨機接入點。其中,前一幀不支持自適應幀內刷新技術包括以下幾種情況:前一幀的擴展資料中不存在自適應幀內刷新視頻擴展號;或者前一幀的擴展資料中存在自適應幀內刷新視頻擴展號,但前一幀的第一虛擬邊界位置標記資訊和/或第二虛擬邊界位置標記資訊的取值等於0。
相應地,若確定當前幀支持自適應幀內刷新技術,且根據當前 幀的第一虛擬邊界位置標記資訊確定虛擬邊界的像素位置等於或超出當前幀的右邊界,以及根據當前幀的第二虛擬邊界位置標記資訊確定虛擬邊界的像素位置等於或超出當前幀的下邊界,則確定當前幀為隨機接入的復原點。
比如,對於表1和表2所示的語法元素,如果當前幀的擴展資料中存在參數air_bound_x和air_bound_y,且二者的值都大於0;同時,當前幀解碼順序中前一幀的參數air_bound_x和air_bound_y不存在或者存在且至少一者等於0,那麼當前幀是隨機接入點,允許從當前幀進行隨機訪問。
如果當前幀的擴展資料中存在參數air_bound_x和air_bound_y,且air_bound_x的值等於PictureWidthInLcu,air_bound_y的值等於PictureHeightInLcu,那麼當前幀是復原點,從當前幀開始後的各幀圖像都能正確解碼。
此外,當所述當前幀用於隨機訪問時,對所述當前幀進行解碼之前,解碼設備還需要獲取一個有效的序列頭。根據該序列頭攜帶的資訊,對所述當前幀進行解碼。
其中,有效的序列頭可以是碼流中位於當前幀碼流之前且距離當前幀的碼流最近的序列頭,也可以是從系統層接收到的序列頭。序列頭中攜帶的資訊包括碼流的檔次、級別、各種技術的使能開關以及圖像的解析度和幀率等解碼過程中需要用到的序列級資訊。
需要說明的是,在本發明實施例中,由於可以隨意指定虛擬邊界的位置資訊,因此本發明實施例支援水平、垂直和對角刷新,刷新方向可以是從左上到右下,在此不再詳細說明。
綜上所述,在當前幀的碼流中的擴展資料中新增自適應幀內刷新視頻擴展號以及虛擬邊界位置標記資訊,由於該虛擬邊界位置標記資訊能夠指示虛擬邊界的位置,且該虛擬邊界至少用於區分當前幀中的已刷新區域和未刷新區域,因此編碼設備在劃分當前幀的刷新區域時,可以基於實際需求任意設置該虛擬邊界,然後通過該虛擬邊界位置標記資訊指示該虛擬邊界的位置即可,從而提高了劃分刷新區域的靈活性,也即是本發明實 施例提供了一種通過擴展資料實現自適應劃分刷新區域的自適應幀內刷新機制。
圖7是本發明實施例提供的一種解碼裝置的結構示意圖。如圖7所示,該解碼裝置700包括如下幾個模組:
接收模組701,用於接收當前幀的碼流;
處理模組702,用於若當前幀的碼流中存在擴展資料且擴展資料中攜帶自適應幀內刷新視頻擴展號,則獲取擴展資料中攜帶的虛擬邊界位置標記資訊,虛擬邊界位置標記資訊用於指示虛擬邊界的位置,虛擬邊界至少用於區分當前幀中的已刷新區域和未刷新區域;
處理模組702,還基於虛擬邊界位置標記資訊,確定當前幀是否支援自適應幀內刷新技術。
基於上述裝置,在一種可能的實現方式中,處理模組還用於:若當前幀的碼流的擴展資料中不存在自適應幀內刷新視頻擴展號,則確定當前幀不支援自適應幀內刷新技術。
基於上述裝置,在一種可能的實現方式中,虛擬邊界位置標記資訊包括第一虛擬邊界位置標記資訊和第二虛擬邊界位置標記資訊;第一虛擬邊界位置標記資訊用於指示虛擬邊界在當前幀水平方向上的像素位置,第二虛擬邊界位置標記資訊用於指示虛擬邊界在當前幀垂直方向上的像素位置。
基於上述裝置,在一種可能的實現方式中,第一虛擬邊界位置標記資訊為虛擬邊界在當前幀水平方向上的圖像橫坐標,第二虛擬邊界位置標記資訊為虛擬邊界在當前幀垂直方向上的圖像縱坐標;已刷新區域是指以圖像左上角座標(0,0)為原點,寬為圖像橫坐標、高為圖像縱坐標的矩形區域,未刷新區域是指當前幀中除已刷新區域之外的其他區域。
基於上述裝置,在一種可能的實現方式中,處理模組用於:若第一虛擬邊界位置標記資訊的取值和第二虛擬邊界位置標記資訊的取值均大於0,則確定當前幀支持自適應幀內刷新技術;若第一虛擬邊界位置標記資訊的取值和/或第二虛擬邊界位置標記資訊的取值等於0,則確定當前幀不支持自適應幀內刷新技術。
基於上述裝置,在一種可能的實現方式中,處理模組還用於:若當前幀支持自適應幀內刷新技術,且解碼順序中當前幀的前一幀不支持自適應幀內刷新技術,則當前幀為隨機接入點;其中,前一幀不支援自適應幀內刷新技術,包括:前一幀的擴展資料中不存在自適應幀內刷新視頻擴展號;或者前一幀的擴展資料中存在自適應幀內刷新視頻擴展號,但前一幀的第一虛擬邊界位置標記資訊和/或第二虛擬邊界位置標記資訊的取值等於0。
基於上述裝置,在一種可能的實現方式中,處理模組還用於:若確定當前幀支持自適應幀內刷新技術,且根據當前幀的第一虛擬邊界位置標記資訊確定虛擬邊界的像素位置等於或超出當前幀的右邊界,以及根據當前幀的第二虛擬邊界位置標記資訊確定虛擬邊界的像素位置等於或超出當前幀的下邊界,則確定當前幀為隨機接入的復原點。
基於上述裝置,在一種可能的實現方式中,第一虛擬邊界位置標記資訊的精度為一個LCU的寬度,第二虛擬邊界位置標記資訊的精度為一個LCU的高度。
基於上述裝置,在一種可能的實現方式中,處理模組還用於:當當前幀用於隨機訪問時,對當前幀進行解碼之前,獲取一個有效的序列頭;根據序列頭攜帶的資訊,對當前幀進行解碼。
綜上,在當前幀的碼流中的擴展資料中新增自適應幀內刷新視頻擴展號以及虛擬邊界位置標記資訊,由於該虛擬邊界位置標記資訊能夠指示虛擬邊界的位置,且該虛擬邊界至少用於區分當前幀中的已刷新區域和未刷新區域,因此編碼設備在劃分當前幀的刷新區域時,可以基於實際需求任意設置該虛擬邊界,然後通過該虛擬邊界位置標記資訊指示該虛擬邊界的位置即可,從而提高了劃分刷新區域的靈活性,也即是本發明實施例提供了一種通過擴展資料實現自適應劃分刷新區域的自適應幀內刷新機制。
需要說明的是:上述實施例提供的解碼裝置在實現基於自適應幀內刷新機制的解碼方法時,僅以上述各功能模組的劃分進行舉例說明,實際應用中,可以根據需要而將上述功能分配由不同的功能模組完成,即將設備的內部結構劃分成不同的功能模組,以完成以上描述的全部或者部分功能。另外,上述實施例提供的解碼裝置與基於自適應幀內刷新機制的解碼 方法實施例屬於同一構思,其具體實現過程詳見方法實施例,這裡不再贅述。
圖8是本發明實施例提供的一種編碼裝置的結構示意圖。如圖8所示,該編碼裝置800包括編碼模組801,用於確定當前幀是否支持自適應幀內刷新技術。編碼模組還用於:若當前幀支援自適應幀內刷新技術,則在當前幀的擴展資料中攜帶自適應幀內刷新視頻擴展號和當前幀的虛擬邊界位置標記資訊,虛擬邊界位置標記資訊指示虛擬邊界的位置,虛擬邊界至少用於區分當前幀中的已刷新區域和未刷新區域。
基於上述裝置,在一種可能的實現方式中,虛擬邊界位置標記資訊包括第一虛擬邊界位置標記資訊和第二虛擬邊界位置標記資訊;第一虛擬邊界位置標記資訊用於指示虛擬邊界在當前幀水平方向上的像素位置,第二虛擬邊界位置標記資訊用於指示虛擬邊界在當前幀垂直方向上的像素位置。
基於上述裝置,在一種可能的實現方式中,第一虛擬邊界位置標記資訊為虛擬邊界在當前幀水平方向上的圖像橫坐標,第二虛擬邊界位置標記資訊為虛擬邊界在當前幀垂直方向上的圖像縱坐標;已刷新區域是指以圖像左上角座標(0,0)為原點,寬為圖像橫坐標、高為圖像縱坐標的矩形區域,未刷新區域是指當前幀中除已刷新區域之外的其他區域。
基於上述裝置,在一種可能的實現方式中,編碼模組還用於:若當前幀不支援自適應幀內刷新技術,則在當前幀的擴展資料中不攜帶自適應幀內刷新視頻擴展號,或者,在當前幀的擴展資料中攜帶自適應幀內刷新視頻擴展號,但是當前幀的擴展資料中攜帶的第一虛擬邊界位置標記資訊的取值和/或第二虛擬邊界位置標記資訊的取值為0。
基於上述裝置,在一種可能的實現方式中,編碼模組還用於:若當前幀支持自適應幀內刷新技術,則當前幀的擴展資料中攜帶的第一虛擬邊界位置標記資訊的取值大於0,且第二虛擬邊界位置標記資訊的取值也大於0。
基於上述裝置,在一種可能的實現方式中,編碼模組還用於:若當前幀為隨機接入點,則確定當前幀支持自適應幀內刷新技術,且編碼順序中當前幀的前一幀不支持自適應幀內刷新技術。
基於上述裝置,在一種可能的實現方式中,編碼模組還用於:若當前幀為隨機接入的復原點,則確定當前幀支持自適應幀內刷新技術,且第一虛擬邊界位置標記資訊所指示的虛擬邊界的像素位置等於或超出當前幀的右邊界,以及第二虛擬邊界位置標記資訊所指示的虛擬邊界的像素位置等於或超出當前幀的下邊界。
基於上述裝置,在一種可能的實現方式中,第一虛擬邊界位置標記資訊的精度為一個LCU的寬度,第二虛擬邊界位置標記資訊的精度為一個LCU的高度。
綜上,在當前幀的碼流中的擴展資料中新增自適應幀內刷新視頻擴展號以及虛擬邊界位置標記資訊,由於該虛擬邊界位置標記資訊能夠指示虛擬邊界的位置,且該虛擬邊界至少用於區分當前幀中的已刷新區域和未刷新區域,因此編碼設備在劃分當前幀的刷新區域時,可以基於實際需求任意設置該虛擬邊界,然後通過該虛擬邊界位置標記資訊指示該虛擬邊界的位置即可,從而提高了劃分刷新區域的靈活性,也即是本發明實施例提供了一種通過擴展資料實現自適應劃分刷新區域的自適應幀內刷新機制。
需要說明的是:上述實施例提供的編碼裝置在實現基於自適應幀內刷新機制的編碼方法時,僅以上述各功能模組的劃分進行舉例說明,實際應用中,可以根據需要而將上述功能分配由不同的功能模組完成,即將設備的內部結構劃分成不同的功能模組,以完成以上描述的全部或者部分功能。另外,上述實施例提供的編碼裝置與基於自適應幀內刷新機制的編碼方法實施例屬於同一構思,其具體實現過程詳見方法實施例,這裡不再贅述。
圖9是本發明實施例提供的一種終端900的結構框圖。前述實施例中涉及的解碼設備以及編碼設備均可以通過該終端來實現。具體地,該終端900可以是:智慧手機、平板電腦、MP3播放機(Moving Picture Experts Group Audio Layer III,動態影像專家壓縮標準音頻層面3)、MP4(Moving Picture Experts Group Audio Layer IV,動態影像專家壓縮標準音頻層面4)播放機、筆記型電腦或臺式電腦。終端900還可能被稱為使用者設備、可擕式終端、膝上型終端、臺式終端等其他名稱。通常,終端900包括有處理器901和記憶體902。
處理器901可以包括一個或多個處理核心,比如4核心處理器、8核心處理器等。處理器901可以採用DSP(Digital Signal Processing,數位信號處理)、FPGA(Field-Programmable Gate Array,現場可程式設計閘陣列)、PLA(Programmable Logic Array,可程式設計邏輯陣列)中的至少一種硬體形式來實現。處理器901也可以包括主處理器和輔助處理器,主處理器是用於對在喚醒狀態下的資料進行處理的處理器,也稱CPU(Central Processing Unit,中央處理器);輔助處理器是用於對在待機狀態下的資料進行處理的低功耗處理器。在一些實施例中,處理器901可以集成有GPU(Graphics Processing Unit,影像處理器),GPU用於負責顯示幕所需要顯示的內容的渲染和繪製。一些實施例中,處理器901還可以包括AI(Artificial Intelligence,人工智慧)處理器,該AI處理器用於處理有關機器學習的計算操作。
記憶體902可以包括一個或多個電腦可讀存儲介質,該電腦可讀存儲介質可以是非暫態的。記憶體902還可包括高速隨機存取記憶體,以及非易失性記憶體,比如一個或多個磁片存放裝置、快閃記憶體存放裝置。在一些實施例中,記憶體902中的非暫態的電腦可讀存儲介質用於存儲至少一個指令,該至少一個指令用於被處理器901所執行以實現本發明中方法實施例提供的基於自適應幀內刷新機制的解碼、編碼方法。
在一些實施例中,終端900還可選包括有:週邊設備介面903和至少一個週邊設備。處理器901、記憶體902和週邊設備介面903之間可以通過匯流排或信號線相連。各個週邊設備可以通過匯流排、信號線或電路板與週邊設備介面903相連。具體地,週邊設備包括:射頻電路904、顯示幕905、攝像頭組件906、音訊電路907、定位組件908和電源909中的至少一種。
週邊設備介面903可被用於將I/O(Input/Output,輸入/輸出)相關的至少一個週邊設備連接到處理器901和記憶體902。在一些實施例中,處理器901、記憶體902和週邊設備介面903被集成在同一晶片或電路板上;在一些其他實施例中,處理器901、記憶體902和週邊設備介面903中的任意一個或兩個可以在單獨的晶片或電路板上實現,本實施例對此不 加以限定。
射頻電路904用於接收和發射RF(Radio Frequency,射頻)信號,也稱電磁信號。射頻電路904通過電磁信號與通信網路以及其他通信設備進行通信。射頻電路904將電信號轉換為電磁信號進行發送,或者,將接收到的電磁信號轉換為電信號。可選地,射頻電路904包括:天線系統、RF收發器、一個或多個放大器、調諧器、振盪器、數位訊號處理器、編解碼晶片組、使用者身份模組卡等等。射頻電路904可以通過至少一種無線通訊協定來與其它終端進行通信。該無線通訊協定包括但不限於:都會區網路、各代移動通信網路(2G、3G、4G及5G)、無線局域網和/或WiFi(Wireless Fidelity,無線保真)網路。在一些實施例中,射頻電路904還可以包括NFC(Near Field Communication,近距離無線通訊)有關的電路,本發明對此不加以限定。
顯示幕905用於顯示UI(User Interface,使用者介面)。該UI可以包括圖形、文本、圖示、視頻及其它們的任意組合。當顯示幕905是觸摸顯示幕時,顯示幕905還具有採集在顯示幕905的表面或表面上方的觸摸信號的能力。該觸摸信號可以作為控制信號輸入至處理器901進行處理。此時,顯示幕905還可以用於提供虛擬按鈕和/或虛擬鍵盤,也稱軟按鈕和/或軟鍵盤。在一些實施例中,顯示幕905可以為一個,設置終端900的前面板;在另一些實施例中,顯示幕905可以為至少兩個,分別設置在終端900的不同表面或呈折疊設計;在另一些實施例中,顯示幕905可以是柔性顯示幕,設置在終端900的彎曲表面上或折疊面上。甚至,顯示幕905還可以設置成非矩形的不規則圖形,也即異形屏。顯示幕905可以採用LCD(Liquid Crystal Display,液晶顯示幕)、OLED(Organic Light-Emitting Diode,有機發光二極體)等材質製備。
攝像頭組件906用於採集圖像或視頻。可選地,攝像頭組件906包括前置攝像頭和後置攝像頭。通常,前置攝像頭設置在終端的前面板,後置攝像頭設置在終端的背面。在一些實施例中,後置攝像頭為至少兩個,分別為主攝像頭、景深攝像頭、廣角攝像頭、長焦攝像頭中的任意一種,以實現主攝像頭和景深攝像頭融合實現背景虛化功能、主攝像頭和廣角攝像 頭融合實現全景拍攝以及VR(Virtual Reality,虛擬實境)拍攝功能或者其它融合拍攝功能。在一些實施例中,攝像頭組件906還可以包括閃光燈。閃光燈可以是單色溫閃光燈,也可以是雙色溫閃光燈。雙色溫閃光燈是指暖光閃光燈和冷光閃光燈的組合,可以用於不同色溫下的光線補償。
音訊電路907可以包括麥克風和揚聲器。麥克風用於採集使用者及環境的聲波,並將聲波轉換為電信號輸入至處理器901進行處理,或者輸入至射頻電路904以實現語音通信。出於身歷聲採集或降噪的目的,麥克風可以為多個,分別設置在終端900的不同部位。麥克風還可以是陣列麥克風或全向採集型麥克風。揚聲器則用於將來自處理器901或射頻電路904的電信號轉換為聲波。揚聲器可以是傳統的薄膜揚聲器,也可以是壓電陶瓷揚聲器。當揚聲器是壓電陶瓷揚聲器時,不僅可以將電信號轉換為人類可聽見的聲波,也可以將電信號轉換為人類聽不見的聲波以進行測距等用途。在一些實施例中,音訊電路907還可以包括耳機插孔。
定位組件908用於定位終端900的當前地理位置,以實現導航或LBS(Location Based Service,基於位置的服務)。定位組件908可以是基於美國的GPS(Global Positioning System,全球定位系統)、中國的北斗系統、***的格雷納斯系統或歐盟的伽利略系統的定位組件。
電源909用於為終端900中的各個組件進行供電。電源909可以是交流電、直流電、一次性電池或可充電電池。當電源909包括可充電電池時,該可充電電池可以支援有線充電或無線充電。該可充電電池還可以用於支援快充技術。
在一些實施例中,終端900還包括有一個或多個感測器910。該一個或多個感測器910包括但不限於:加速度感測器911、陀螺儀感測器912、壓力感測器913、指紋感測器914、光學感測器915以及接近感測器916。
加速度感測器911可以檢測以終端900建立的坐標系的三個坐標軸上的加速度大小。比如,加速度感測器911可以用於檢測重力加速度在三個坐標軸上的分量。處理器901可以根據加速度感測器911採集的重力加速度信號,控制顯示幕905以橫向視圖或縱向視圖進行使用者介面 的顯示。加速度感測器911還可以用於遊戲或者使用者的運動資料的採集。
陀螺儀感測器912可以檢測終端900的機體方向及轉動角度,陀螺儀感測器912可以與加速度感測器911協同採集使用者對終端900的3D動作。處理器901根據陀螺儀感測器912採集的資料,可以實現如下功能:動作感應(比如根據使用者的傾斜操作來改變UI)、拍攝時的圖像穩定、遊戲控制以及慣性導航。
壓力感測器913可以設置在終端900的側邊框和/或顯示幕905的下層。當壓力感測器913設置在終端900的側邊框時,可以檢測使用者對終端900的握持信號,由處理器901根據壓力感測器913採集的握持信號進行左右手識別或快捷操作。當壓力感測器913設置在顯示幕905的下層時,由處理器901根據使用者對顯示幕905的壓力操作,實現對UI介面上的可操作性控制項進行控制。可操作性控制項包括按鈕控制項、捲軸控制項、圖示控制項、功能表控制項中的至少一種。
指紋感測器914用於採集用戶的指紋,由處理器901根據指紋感測器914採集到的指紋識別用戶的身份,或者,由指紋感測器914根據採集到的指紋識別用戶的身份。在識別出用戶的身份為可信身份時,由處理器901授權該用戶執行相關的敏感操作,該敏感操作包括解鎖螢幕、查看加密資訊、下載軟體、支付及更改設置等。指紋感測器914可以被設置終端900的正面、背面或側面。當終端900上設置有物理按鍵或廠商Logo時,指紋感測器914可以與物理按鍵或廠商Logo集成在一起。
光學感測器915用於採集環境光強度。在一個實施例中,處理器901可以根據光學感測器915採集的環境光強度,控制顯示幕905的顯示亮度。具體地,當環境光強度較高時,調高顯示幕905的顯示亮度;當環境光強度較低時,調低顯示幕905的顯示亮度。在另一個實施例中,處理器901還可以根據光學感測器915採集的環境光強度,動態調整攝像頭組件906的拍攝參數。
接近感測器916,也稱距離感測器,通常設置在終端900的前面板。接近感測器916用於採集使用者與終端900的正面之間的距離。在一個實施例中,當接近感測器916檢測到使用者與終端900的正面之間的 距離逐漸變小時,由處理器901控制顯示幕905從亮屏狀態切換為息屏狀態;當接近感測器916檢測到使用者與終端900的正面之間的距離逐漸變大時,由處理器901控制顯示幕905從息屏狀態切換為亮屏狀態。
本領域技術人員可以理解,圖9中示出的結構並不構成對終端900的限定,可以包括比圖示更多或更少的組件,或者組合某些組件,或者採用不同的組件佈置。
本發明實施例還提供了一種非臨時性電腦可讀存儲介質,當所述存儲介質中的指令由終端的處理器執行時,使得終端能夠執行上實施例提供的基於自適應幀內刷新機制的解碼、編碼方法。
本發明實施例還提供了一種包含指令的電腦程式產品,當其在終端上運行時,使得終端執行上述實施例提供的基於自適應幀內刷新機制的解碼、編碼方法。
本領域普通技術人員可以理解實現上述實施例的全部或部分步驟可以通過硬體來完成,也可以通過程式來指令相關的硬體完成,所述的程式可以存儲於一種電腦可讀存儲介質中,上述提到的存儲介質可以是唯讀記憶體,磁片或光碟等。
以上所述僅為本發明實施例的較佳實施例,並不用以限制本發明實施例,凡在本發明實施例的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。
601、602、603:步驟

Claims (18)

  1. 一種基於自適應幀內刷新機制的解碼方法,其特徵在於,所述方法包括:接收當前幀的碼流;若所述當前幀的碼流中存在擴展資料且所述擴展資料中攜帶自適應幀內刷新視頻擴展號,則獲取所述擴展資料中攜帶的虛擬邊界位置標記資訊,所述虛擬邊界位置標記資訊用於指示虛擬邊界的位置,所述虛擬邊界至少用於區分所述當前幀中的已刷新區域和未刷新區域,基於所述虛擬邊界位置標記資訊,確定所述當前幀是否支援自適應幀內刷新技術;若所述當前幀的碼流的擴展資料中不存在所述自適應幀內刷新視頻擴展號,則確定所述當前幀不支持所述自適應幀內刷新技術;其中,所述虛擬邊界位置標記資訊包括第一虛擬邊界位置標記資訊和第二虛擬邊界位置標記資訊;所述第一虛擬邊界位置標記資訊用於指示所述虛擬邊界在所述當前幀水平方向上的像素位置,所述第二虛擬邊界位置標記資訊用於指示所述虛擬邊界在所述當前幀垂直方向上的像素位置。
  2. 如請求項1所述的方法,其中,所述第一虛擬邊界位置標記資訊為所述虛擬邊界在所述當前幀水平方向上的圖像橫坐標,所述第二虛擬邊界位置標記資訊為所述虛擬邊界在所述當前幀垂直方向上的圖像縱坐標;所述已刷新區域是指以圖像左上角座標(0,0)為原點,寬為所述圖像橫坐標、高為所述圖像縱坐標的矩形區域,所述未刷新區域是指所述當前幀中除所述已刷新區域之外的其他區域。
  3. 如請求項1所述的方法,其中,所述基於所述虛擬邊界位置標記資訊,確定所述當前幀是否支援自適應幀內刷新技術,包括:若所述第一虛擬邊界位置標記資訊的取值和所述第二虛擬邊界位置標 記資訊的取值均大於0,則確定所述當前幀支持所述自適應幀內刷新技術;若所述第一虛擬邊界位置標記資訊的取值和/或所述第二虛擬邊界位置標記資訊的取值等於0,則確定所述當前幀不支持所述自適應幀內刷新技術。
  4. 如請求項1所述的方法,其中,所述方法還包括:若所述當前幀支持所述自適應幀內刷新技術,且解碼順序中所述當前幀的前一幀不支持所述自適應幀內刷新技術,則所述當前幀為隨機接入點。
  5. 如請求項4所述的方法,其中,所述前一幀不支持所述自適應幀內刷新技術,包括:所述前一幀的擴展資料中不存在所述自適應幀內刷新視頻擴展號;或者所述前一幀的擴展資料中存在所述自適應幀內刷新視頻擴展號,但所述前一幀的第一虛擬邊界位置標記資訊和/或第二虛擬邊界位置標記資訊的取值等於0。
  6. 如請求項1所述的方法,其中,所述方法還包括:若確定所述當前幀支持所述自適應幀內刷新技術,且根據所述當前幀的第一虛擬邊界位置標記資訊確定虛擬邊界的像素位置等於或超出所述當前幀的右邊界,以及根據所述當前幀的第二虛擬邊界位置標記資訊確定虛擬邊界的像素位置等於或超出所述當前幀的下邊界,則確定所述當前幀為隨機接入的復原點。
  7. 如請求項1所述的方法,其中,所述第一虛擬邊界位置標記資訊的精度為一個最大編碼單元LCU的寬度,所述第二虛擬邊界位置標記資訊的精度為一個所述LCU的高度。
  8. 一種基於自適應幀內刷新機制的編碼方法,其中,所述方法包括:確定當前幀是否支持自適應幀內刷新技術;若所述當前幀支持所述自適應幀內刷新技術,則在所述當前幀的擴展資料中攜帶自適應幀內刷新視頻擴展號和所述當前幀的虛擬邊界位置標記資訊,所述虛擬邊界位置標記資訊指示虛擬邊界的位置,所述虛擬邊界至少 用於區分所述當前幀中的已刷新區域和未刷新區域;若所述當前幀不支持所述自適應幀內刷新技術,則在所述當前幀的所述擴展資料中不攜帶所述自適應幀內刷新視頻擴展號,或者,在所述當前幀的所述擴展資料中攜帶所述自適應幀內刷新視頻擴展號,但是所述當前幀的所述擴展資料中攜帶的所述虛擬邊界位置標記資訊的取值能夠指示是否支援所述自適應幀內刷新技術。
  9. 如請求項8所述的方法,其中,所述虛擬邊界位置標記資訊包括第一虛擬邊界位置標記資訊和第二虛擬邊界位置標記資訊;所述第一虛擬邊界位置標記資訊用於指示所述虛擬邊界在所述當前幀水平方向上的像素位置,所述第二虛擬邊界位置標記資訊用於指示所述虛擬邊界在所述當前幀垂直方向上的像素位置。
  10. 如請求項9所述的方法,其中,所述第一虛擬邊界位置標記資訊為所述虛擬邊界在所述當前幀水平方向上的圖像橫坐標,所述第二虛擬邊界位置標記資訊為所述虛擬邊界在所述當前幀垂直方向上的圖像縱坐標;所述已刷新區域是指以圖像左上角座標(0,0)為原點,寬為所述圖像橫坐標、高為所述圖像縱坐標的矩形區域,所述未刷新區域是指所述當前幀中除所述已刷新區域之外的其他區域。
  11. 如請求項9所述的方法,其中,若所述當前幀不支持所述自適應幀內刷新技術,則在所述當前幀的擴展資料中攜帶所述自適應幀內刷新視頻擴展號,但是所述當前幀的擴展資料中攜帶的所述第一虛擬邊界位置標記資訊的取值和/或所述第二虛擬邊界位置標記資訊的取值為0;若所述當前幀支持所述自適應幀內刷新技術,則所述當前幀的擴展資料中攜帶的所述第一虛擬邊界位置標記資訊的取值大於0,且所述第二虛擬邊界位置標記資訊的取值也大於0。
  12. 如請求項9所述的方法,其中,所述方法還包括: 若所述當前幀為隨機接入點,則確定所述當前幀支持所述自適應幀內刷新技術,且編碼順序中所述當前幀的前一幀不支持所述自適應幀內刷新技術;若所述當前幀為隨機接入的復原點,則確定所述當前幀支持所述自適應幀內刷新技術,且所述第一虛擬邊界位置標記資訊所指示的虛擬邊界的像素位置等於或超出所述當前幀的右邊界,以及所述第二虛擬邊界位置標記資訊所指示的虛擬邊界的像素位置等於或超出所述當前幀的下邊界。
  13. 如請求項9所述的方法,其中,所述第一虛擬邊界位置標記資訊的精度為一個LCU的寬度,所述第二虛擬邊界位置標記資訊的精度為一個所述LCU的高度。
  14. 一種解碼裝置,其特徵在於,所述解碼裝置包括:接收模組,用於接收當前幀的碼流;處理模組,用於若所述當前幀的碼流中存在擴展資料且所述擴展資料中攜帶自適應幀內刷新視頻擴展號,則獲取所述擴展資料中攜帶的虛擬邊界位置標記資訊,所述虛擬邊界位置標記資訊用於指示虛擬邊界的位置,所述虛擬邊界至少用於區分所述當前幀中的已刷新區域和未刷新區域,基於所述虛擬邊界位置標記資訊,確定所述當前幀是否支援自適應幀內刷新技術;若所述當前幀的碼流的所述擴展資料中不存在所述自適應幀內刷新視頻擴展號,則確定所述當前幀不支持所述自適應幀內刷新技術;其中,所述虛擬邊界位置標記資訊包括第一虛擬邊界位置標記資訊和第二虛擬邊界位置標記資訊;所述第一虛擬邊界位置標記資訊用於指示所述虛擬邊界在所述當前幀水平方向上的像素位置,所述第二虛擬邊界位置標記資訊用於指示所述虛擬邊界在所述當前幀垂直方向上的像素位置。
  15. 一種編碼裝置,其特徵在於,所述編碼裝置包括:編碼模組,用於確定當前幀是否支持自適應幀內刷新技術;所述編碼模組,還用於:若所述當前幀支持所述自適應幀內刷新技術,則在所述當前幀的 擴展資料中攜帶自適應幀內刷新視頻擴展號和所述當前幀的虛擬邊界位置標記資訊,所述虛擬邊界位置標記資訊指示虛擬邊界的位置,所述虛擬邊界至少用於區分所述當前幀中的已刷新區域和未刷新區域,若所述當前幀不支持所述自適應幀內刷新技術,則在所述當前幀的所述擴展資料中不攜帶所述自適應幀內刷新視頻擴展號,或者,在所述當前幀的所述擴展資料中攜帶所述自適應幀內刷新視頻擴展號,但是所述當前幀的所述擴展資料中攜帶的所述虛擬邊界位置標記資訊的取值能夠指示是否支援所述自適應幀內刷新技術。
  16. 一種解碼設備,其特徵在於,所述解碼設備包括:處理器;和用於存儲處理器可執行指令的記憶體,其中,所述處理器被配置為執行上述請求項1至7中的任一項請求項所述的方法的步驟。
  17. 一種編碼設備,其特徵在於,所述編碼設備包括:處理器;和用於存儲處理器可執行指令的記憶體,其中,所述處理器被配置為執行上述請求項8至13中的任一項請求項所述的方法的步驟。
  18. 一種電腦可讀存儲介質,其特徵在於,所述電腦可讀存儲介質上存儲有指令,所述指令被處理器執行時實現上述請求項1至7、或上述請求項8至13中的任一項請求項所述的方法的步驟。
TW111109255A 2021-03-19 2022-03-14 基於自適應幀內刷新機制的解碼、編碼 TWI807687B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110298610.4A CN114630122B (zh) 2021-03-19 2021-03-19 基于自适应帧内刷新机制的解码、编码方法及相关设备
CN202110298610.4 2021-03-19

Publications (2)

Publication Number Publication Date
TW202247657A TW202247657A (zh) 2022-12-01
TWI807687B true TWI807687B (zh) 2023-07-01

Family

ID=78668978

Family Applications (1)

Application Number Title Priority Date Filing Date
TW111109255A TWI807687B (zh) 2021-03-19 2022-03-14 基於自適應幀內刷新機制的解碼、編碼

Country Status (8)

Country Link
US (1) US20240048726A1 (zh)
EP (1) EP4243414A4 (zh)
JP (1) JP7502568B2 (zh)
KR (2) KR102662691B1 (zh)
CN (2) CN113709479B (zh)
AU (1) AU2022235806B2 (zh)
TW (1) TWI807687B (zh)
WO (1) WO2022194017A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117412053A (zh) * 2022-07-08 2024-01-16 中兴通讯股份有限公司 视频编码方法、装置、电子设备和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101621685A (zh) * 2008-07-04 2010-01-06 株式会社日立制作所 编码装置和编码方法
CN109348227A (zh) * 2018-11-22 2019-02-15 上海大学 适用于视频编码的运动自适应帧内刷新方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7042948B2 (en) * 2001-03-05 2006-05-09 Intervideo, Inc. Systems and methods for management of data in a ring buffer for error resilient decoding of a video bitstream
US6842484B2 (en) * 2001-07-10 2005-01-11 Motorola, Inc. Method and apparatus for random forced intra-refresh in digital image and video coding
US8879857B2 (en) 2005-09-27 2014-11-04 Qualcomm Incorporated Redundant data encoding methods and device
US8325822B2 (en) * 2006-01-20 2012-12-04 Qualcomm Incorporated Method and apparatus for determining an encoding method based on a distortion value related to error concealment
US10652572B2 (en) 2016-04-29 2020-05-12 Ati Technologies Ulc Motion-adaptive intra-refresh for high-efficiency, low-delay video coding
EP3657799B1 (en) * 2018-11-22 2020-11-04 Axis AB Method for intra refresh encoding of a plurality of image frames
MX2021011013A (es) * 2019-03-11 2021-11-12 Huawei Tech Co Ltd Un codificador, un decodificador y métodos correspondientes.
WO2020188149A1 (en) * 2019-03-21 2020-09-24 Nokia Technologies Oy A method, an apparatus and a computer program product for video encoding and video decoding
WO2020262504A1 (ja) 2019-06-25 2020-12-30 株式会社Jvcケンウッド 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム、動画像復号装置、動画像復号方法及び動画像復号プログラム
US11159822B2 (en) * 2019-07-11 2021-10-26 Qualcomm Incorporated Intra-prediction according to virtual boundaries for video coding
CN114630113B (zh) * 2021-02-23 2023-04-28 杭州海康威视数字技术股份有限公司 基于自适应帧内刷新机制的解码、编码方法及相关设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101621685A (zh) * 2008-07-04 2010-01-06 株式会社日立制作所 编码装置和编码方法
CN109348227A (zh) * 2018-11-22 2019-02-15 上海大学 适用于视频编码的运动自适应帧内刷新方法

Also Published As

Publication number Publication date
CN113709479A (zh) 2021-11-26
US20240048726A1 (en) 2024-02-08
JP7502568B2 (ja) 2024-06-18
EP4243414A1 (en) 2023-09-13
CN114630122B (zh) 2023-04-28
KR102662691B1 (ko) 2024-04-30
KR20230093543A (ko) 2023-06-27
TW202247657A (zh) 2022-12-01
CN114630122A (zh) 2022-06-14
JP2023550535A (ja) 2023-12-01
EP4243414A4 (en) 2024-03-20
AU2022235806B2 (en) 2023-11-09
KR20240068065A (ko) 2024-05-17
WO2022194017A1 (zh) 2022-09-22
AU2022235806A1 (en) 2023-07-06
CN113709479B (zh) 2022-12-06

Similar Documents

Publication Publication Date Title
WO2020253841A1 (zh) 预测模式的解码、编码方法及装置
TWI807687B (zh) 基於自適應幀內刷新機制的解碼、編碼
CN114630113B (zh) 基于自适应帧内刷新机制的解码、编码方法及相关设备
CN111641824B (zh) 视频倒放方法及装置
RU2815483C1 (ru) Декодирование и кодирование на основе механизма адаптивного внутреннего обновления