TWI743919B - 視訊處理裝置及視訊串流的處理方法 - Google Patents

視訊處理裝置及視訊串流的處理方法 Download PDF

Info

Publication number
TWI743919B
TWI743919B TW109126181A TW109126181A TWI743919B TW I743919 B TWI743919 B TW I743919B TW 109126181 A TW109126181 A TW 109126181A TW 109126181 A TW109126181 A TW 109126181A TW I743919 B TWI743919 B TW I743919B
Authority
TW
Taiwan
Prior art keywords
coding unit
unit
encoding
coding
image
Prior art date
Application number
TW109126181A
Other languages
English (en)
Other versions
TW202207708A (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 緯創資通股份有限公司
Priority to TW109126181A priority Critical patent/TWI743919B/zh
Priority to CN202010966599.XA priority patent/CN114071189B/zh
Priority to US17/022,097 priority patent/US11363298B2/en
Priority to EP20204027.5A priority patent/EP3952307A1/en
Priority to JP2020196826A priority patent/JP7075983B2/ja
Application granted granted Critical
Publication of TWI743919B publication Critical patent/TWI743919B/zh
Publication of TW202207708A publication Critical patent/TW202207708A/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • 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/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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • 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/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • 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/146Data rate or code amount at the encoder output
    • 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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems

Landscapes

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

Abstract

本發明實施例提出視訊處理裝置及視訊串流的處理方法。在此方法中,對影像畫面形成編碼單元,依據影像序列中的數個編碼單元中的次編碼單元中的第一次編碼單元與第二次編碼單元之間的相關性編碼那些次編碼單元,並依據影像序列的編碼結果產生視訊串流。影像畫面是影像序列中的一張畫面,且各編碼單元用於記錄所屬區塊的編碼資訊。藉此,可改善編碼效率。

Description

視訊處理裝置及視訊串流的處理方法
本發明是有關於一種視訊編碼技術,且特別是有關於一種視訊處理裝置及視訊串流的處理方法。
近年來,機器學習(machine learning)技術在許多領域中己得到許多顯著的成果,更尤其是在電腦視覺和影像處理。然而,基於機器學習的視頻編碼(video coding)仍處於起步階段。視頻編碼(video coding)是網路電話(VoIP)的基礎,其效率直接影響到使用者的感受。相較於其他的背景雜訊抑制(background noise suppression)、回音消除(echo cancellation)及語音及臉部辨識(voice and facial recognition)等視頻領域應用,視頻編碼目前發展最快,並可透過機器學習提升或改善通話/視訊品質。值得注意的是,第五代(5G)行動通訊時代的來臨,在行動及高效傳輸的需求浮現後,影像傳輸品質的問題勢必再度被關注,且高效率的視頻編碼更不斷試圖突破網路傳輸的限制。
VoIP 在遠距離語音會議的應用方面,不但能節省費用,還能同時允許多人上線會談,且透過各種會議工具(例如,表達工具(presentation tool)、直播串流(live streaming)等)提供身臨其境的會議體驗。然而,隨著上線人數的增加,網路的頻寬需求與連線數量相對倍增,影像及語音延遲時間也因頻道擁塞而難以控制。此時,會議的品質(例如,服務品質(QoS)/體驗品質(OoE))往往大打折扣。VoIP 通常會經由有線網路連線至網際網路(Internet)上使用,但近年來有越來越多需求是經由行動通訊(例如,4G或5G行動網路)提供服務,使得管理和部署更多資源不僅會增加成本,有時更成為不可能的任務(例如,行動環境中,頻寬不能超過一個上限)。隨著視頻技術的進步,尤其是超高解析度(Ultra-High Definition,UHD)視頻的普及,迫切需要進一步提高壓縮效率,以便將UHD視頻容納在有限的儲存空間和有限的傳輸頻寬。因此,如何有效地管理和控制資源,是業界期待解決的問題之一。
此外,隨著網路頻寬不斷地提升,也相對帶動即時會議視訊服務的需求。在頻寬有限或分配不足的情況下,容易造成封包傳送延遲(Delay)、抖動(Jitter)或是封包遺失等網路效能降低的狀況,使得VoIP視頻的品質低落。因此,如何維持即時視訊傳輸品質,亦是業界期待解決的問題之一。
有鑑於此,本發明實施例提供一種視訊處理裝置及視訊串流的處理方法,基於影像畫面中的不同區塊的差異來編碼,從而降低運算複雜度,並達到影像傳輸需求。
本發明實施例的視訊串流的處理方法包括(但不僅限於)下列步驟:對影像畫面形成編碼單元,依據影像序列中的各編碼單元中的次編碼單元中的第一次編碼單元與第二次編碼單元之間的相關性編碼那些次編碼單元,並依據影像序列的編碼結果產生視訊串流。影像畫面是影像序列中的一張畫面,且各編碼單元用於記錄所屬區塊的編碼資訊。
本發明實施例的視訊處理裝置包括(但不僅限於)通訊收發器及處理器。通訊收發器用以傳送或接收資料。處理器耦接通訊收發器,並經配置用以對影像畫面形成編碼單元,依據影像序列中的各編碼單元中的次編碼單元中的第一次編碼單元與第二次編碼單元之間的相關性編碼那些次編碼單元,並依據影像序列的編碼結果產生視訊串流。影像畫面是影像序列中的一張畫面,且各編碼單元用於記錄所屬區塊的編碼資訊。
基於上述,本發明實施例的視訊處理裝置及視訊串流的處理方法,對影像畫面的編碼單元處理,並依據編碼單元中的不同次編碼單元之間在空間及時間上的相關性來決定這些次編碼單元的決策,使差異較小的次編碼單元可忽略,從而減少編碼的複雜度,進而提升使用者體驗。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
圖1是依據本發明一實施例的視訊串流系統1的方塊圖。請參照圖1,視訊串流系統1包括(但不僅限於)一台或更多台客戶裝置50以及視訊處理裝置100。
客戶裝置50可以是桌上型電腦、筆記型電腦、智慧型手機、智慧型電視、平板、或機上盒等裝置。客戶裝置50包括(但不僅限於)通訊收發器51、儲存器53、顯示器55及處理器57。
通訊收發器51可以是支援諸如乙太網路、光纖網路、行動網路、Wi-Fi或其他通訊技術的傳送電路及接收電路。在一實施例中,通訊收發器51用以連線至網際網路或區域網路,進而與視訊處理裝置100相互傳送資料。
儲存器53可以是任何型態的固定或可移動隨機存取記憶體(Radom Access Memory,RAM)、唯讀記憶體(Read Only Memory,ROM)、快閃記憶體(flash memory)、傳統硬碟(Hard Disk Drive,HDD)、固態硬碟(Solid-State Drive,SSD)或類似元件。在一實施例中,儲存器53用以儲存軟體模組、應用程式及其程式碼、以及其他暫存或永久資料或檔案(例如,影像序列、影像畫面、編碼資訊、視訊串流、品質評估模型),且這些資料將待後續實施例詳述。
顯示器55可以是液晶顯示器(Liquid-Crystal Display, LCD)、發光二極體(Light-Emitting Diode,LED)顯示器或有機發光二極體(Organic Light-Emitting Diode,OLED)顯示器。在一實施例中,顯示器55用以呈現影像畫面或使用者介面。
處理器57可以是中央處理單元(Central Processing Unit,CPU)、圖形處理單元(Graphic Processing Unit,GPU)、微控制單元(Micro Control Unit,MCU)、或特殊應用積體電路(Application-Specific Integrated Circuit,ASIC)等運算單元。在一實施例中,處理器57用以執行客戶裝置50的所有運作,並可載入且執行儲存器53所儲存的軟體模組或應用程式,其詳細運作待後續實施例詳述。
視訊處理裝置100可以是桌上型電腦、筆記型電腦、伺服器、雲端平台、或後台主機等裝置。視訊處理裝置100包括(但不僅限於)通訊收發器110、儲存器130及處理器170。
通訊收發器110、儲存器130及處理器170的實施態樣可分別參照通訊收發器51、儲存器53及處理器57的說明,於此不再贅述。
在一實施例中,通訊收發器110用以連線至網際網路或區域網路,進而與客戶裝置50相互傳送資料。
在一實施例中,儲存器130用以儲存軟體模組、應用程式及其程式碼、以及其他暫存或永久資料或檔案(例如,影像序列、影像畫面、編碼資訊、視訊串流、異常偵測模型),且這些資料將待後續實施例詳述。
在一實施例中,處理器170用以執行視訊處理裝置100的所有運作,並可載入且執行儲存器130所儲存的軟體模組或應用程式,其詳細運作待後續實施例詳述。
下文中,將搭配視訊串流系統1中的各項裝置、元件及模組說明本發明實施例所述之方法。各個流程可依照實施情形而隨之調整,且並不僅限於此。
圖2是依據本發明一實施例的視訊串流的處理方法的流程圖。請參照圖2,處理器170對影像畫面形成一個或更多個編碼單元(步驟S210)。具體而言,影像畫面是影像序列(即,由多張畫面形成的序列)中的一張畫面。影像序列可能是由相機、錄影機或監視器拍攝所形成數位視訊資料,也可能是經任何運算裝置(例如,電腦、或智慧型手機等)編輯所形成的動畫、電影、廣告或電視劇等視訊資料。原始的影像序列可能包括相當多的資訊(例如,各畫素的色彩、明度等資訊),導致資料量過大而不便於傳輸或儲存。因此,需要對影像序列進行視訊壓縮處理。
在一實施例中,針對高效率視訊編碼(High Efficiency Video Coding,HEVC)或進階視訊編碼(MPEG-4 Part 10, Advanced Video Coding,MPEG-4 AVC)等視訊編碼標準,影像序列中的一個或更多張影像畫面會被進一步分割成一個或更多個處理單元(例如,編碼樹單元(Coding Tree Block,CTU)、巨集區塊(macroblock)或其他基本編碼單元),且各處理單元還可能進一步對應分割成一個或更多個編碼單元。各編碼單元用於記錄所屬區塊的編碼資訊(例如,編碼模式、亮度、色彩、或語法等)。
以HEVC為例,HEVC技術在輸入影像序列進行編碼之前,會先對影像序列中的影像畫面分別切割成相等大小的編碼樹單元後再輸入至編碼器進行編碼。區塊(Block)是儲存資料之處,且許多區塊加上語法元素組成一個單元(Unit)。若輸入的影像畫面採用YUV(明度(Luma)-色度(Chroma)-濃度)的顏色編碼格式,則一個編碼樹單元是由一個明度編碼樹區塊(Coding Tree Block,CTB)、兩個色度編碼樹區塊及語法元素(Syntax Element)所組成。在其他實施例中,顏色編碼格式可能是RGB(紅色-綠色-藍色)或其他格式。
在一實施例中,編碼單元還能進一步被分割而形成一個或更多個次編碼單元。在部分視訊編碼機制中,透過記錄區塊的實際值與畫面間(inter)或畫面內(intra)預測的預測值之間的殘量(residual)(即,實際值與預測值之間的差異)來壓縮影像畫面。而次編碼單元即是用於記錄所屬區塊的預測值與實際值之間的殘量。
以HEVC為例,編碼單元還能進一步被分割形成一個或更多個預測單元(Prediction Unit,PU)(由亮度和色度預測塊組成)及轉換單元(Transform Unit,TU)(作為次編碼單元)。圖3是一範例說明單元。請參照圖3,編碼樹單元可能包括不同大小的編碼單元CU 1, CU 2, CU 3(其大小例如分別是32×32、16×16及8×8像素)。編碼單元CU 2還可能進一步包括8×8像素的預測單元PU、8×8像素的轉換單元TU 1及4×4像素的轉換單元TU 2
圖4是一範例說明各單元對應處理步驟的流程圖。請參照圖4,處理器170輸入影像序列(步驟S405)之後,將針對各影像畫面所形成的各編碼單元CU處理。針對編碼流程410,對於預測單元PU而言,處理器170可進行畫面內預測(intra prediction)模式(步驟S411)或畫面間預測(inter prediction)模式(步驟S414)。畫面內預測模式包括畫面內預測估測(步驟S412)及畫面內預測(步驟S413)。而畫面間預測模式包括動態(motion)估測(步驟S415)及動態補償(compensation)(步驟S416)。畫面內預測模式或畫面間預測模式的預測值與原影像畫面的實際值之間的差異量即是殘量。對於轉換單元TU而言,殘量經轉換(步驟S417)及量化(步驟S418)所形成的係數(coefficients)資料可與預測模式(畫面間預測及畫面內預測中擇一)、估測所得的動態資料(例如,動態向量)及濾波控制資料形成標頭(header)並據以熵(Entropy)編碼(步驟S425),即可形成位元串流(bit stream)(可進一步透過通訊收發器110轉換成封包並經由網路傳送到客戶裝置50(可能會經過其他伺服器轉送))。
針對解碼流程430,客戶裝置50的處理器57可對轉換單元TU反量化(步驟S431)及反轉換(步驟S432)以還原出殘量。殘量與預測值合併後將經濾波控制分析(例如,確認環路(loop)濾波器)(步驟S433)、以及解區塊(deblocking)及取樣自適應偏移(Sample Adaptive Offset,SAO)濾波(步驟S434)來還原影像畫面,並據以儲存在畫面緩衝器(步驟S435)以供顯示器55播放。
須說明的是,在一些實施例中,依據不同視訊編碼規格,次編碼單元可能是不同於轉換單元的其他名稱。
處理器170依據影像序列中的數個編碼單元中的那些次編碼單元中的第一次編碼單元與第二次編碼單元之間的相關性編碼那些次編碼單元(步驟S220)。具體而言,雖然HEVC可節約流量,但卻增加了壓縮時間及解壓縮所需的運算量,進而大幅提高壓縮複雜性。研究指出,HEVC的編碼時間(encoding time)平均比H.264 / AVC高253%,這對於實現多媒體應用是不切實際的,尤其是即時視頻的VoIP應用,即時串流的延遲可能會造成許多損失及誤解。編碼單元分割預測方法是根據編碼中的一些特徵(例如,影像內容複雜度、動態向量(motion vector)等)及人為製定的決策規則,來決定如何對編碼單元分割,且編碼單元再遞迴(Recursion)劃分出不同層次的樹結構(例如,四叉樹結構)以形成轉換單元(即,次編碼單元)。
針對次編碼單元的編碼,本發明實施例對時間及空間維度分析。圖5是依據本發明一實施例的編碼處理方法的流程圖。請參照圖5,在一實施例中,相關性是時間相關性。處理器170可依據時間相關性決定次編碼單元的單元大小(步驟S510)。具體而言,處理器170依據第一次編碼單元與第二次編碼單元之間的差異決定第一次編碼單元或第二次編碼單元的單元大小,且第二次編碼單元是影像序列中不同於影像畫面的另一張畫面中的對應次編碼單元。處理器170利用“時間(temporal)”概念判斷不同影像畫面之間的差異(形成時間差異序列),並透過時間上的差異大小來決定對應的單元大小。其中,若差異越大(代表像素之間越不相似),則單元大小越小,且對應資訊量較多;若差異越小(代表像素之間越相似),則單元大小越大,且對應資訊量較少。
為了得出時間上的差異,在一實施例中,處理器170將第二次編碼單元輸入至異常偵測模型,以得出還原單元。異常偵測模型是將第一次編碼單元作為訓練資料並基於機器學習演算法所訓練。機器學習演算法可以是自動編碼器(AutoEncoder,AE)、降噪自動編碼器(Denoising Autoencoder)、主成分分析(Principal components analysis,PCA)或其他演算法。在一實施例中,處理器170可將一張或更多張場景影像(例如,會議室、辦公室的視訊會議影像、或直播串流影像等,並視為正常影像)輸入到機器學習演算法的初始模型進行訓練,以形成異常偵測模型。在一些實施例中,處理器170還可使用測試資料(即,特定影像資料,例如是特定場景影像的集合)輸入到異常偵測模型,來測試異常偵測模型的準確率及失敗率,進而修正異常偵測模型。
以自動編碼器為例,圖6A是一範例說明自動編碼器AE。請參照圖6A,自動編碼器AE的架構中可細分為編碼器(encoder)和解碼器(decoder)兩部分,它們分別進行壓縮與解壓縮的動作。在訓練過程中,讓輸出值和輸入值表示相同意義(損失函數(lose function)為輸出值和輸入值越接近越好)。自動編碼器AE的編碼器可進行降維(dimension reduction),而解碼器可進行還原,使得自動編碼器AE可解釋為使用較低維度的特徵來近似原始輸入。原始輸入OI經編碼器處理可得到壓縮的嵌入編碼(embedding code),這個編碼即是原始輸入OI的一個壓縮表示CI。為了取得中間的編碼的輸入表示,壓縮表示CI的編碼經解碼器處理可得到重建輸入RI。若此輸出的重建輸入RI與原始輸入OI相近,則代表這個壓縮表示CI與原始輸入OI之間存在特定映射關係。
將自動編碼器AE概念應用在切割次編碼單元的決策中,在訓練階段中,處理器170可使用參考區塊(reference block)訓練自動編碼器AE的異常偵測模型。例如,參考區塊可以是將前述場景影像或其他影像分割成對應次編碼單元的數個訓練區塊。此外,假設異常偵測模型將參考區塊作為輸入資料可輸出相同或相近的區塊。換句而言,可預期自動編碼器AE將參考區塊編碼後再解碼所得的估測區塊幾乎相同於參考區塊。接著,處理器170基於訓練資料中的輸入物件(例如,參考區塊)及預期的輸出結果(例如,相同或相近的參考區塊)訓練異常偵測模型,使輸入物件輸入到異常偵測模型可得出預期的輸出結果(幾乎相同於參考區塊的估測區塊)。例如,處理器170將輸入物件作為異常偵測模型對應函數的輸入變數,而輸出結果作為此函數的輸出變數,並據以找出此函數。
處理器170可依據第一次編碼單元與第二次編碼單元的還原單元之間的差異形成時間差異序列。具體而言,處理器170可將影像序列中的一張影像畫面的某一個或更多個次編碼單元(例如,第一次編碼區塊)作為訓練所用的參考區塊,且透過已訓練的異常偵測模型推論此影像序列中不同時間點的另一張影像畫面的對應次編碼單元(例如,第二次編碼單元)的還原單元是否相近於參考區塊。若將第二次編碼單元輸入到自動編碼器AE所得出的估測區塊(即,其還原單元)相同或相近於訓練所用的參考區塊,則表示此次編碼單元的動態差異較低。若將第二次編碼單元輸入到自動編碼器AE得出的估測區塊(即,其還原單元)不同於訓練所用的參考區塊,則異常偵測模型可判斷此次編碼單元具有動態差異較高,並需要進一步對其編碼。
圖6B是依據本發明一實施例的應用自動編碼器AE決策單元大小的示意圖。請參照圖6B,待測的次編碼單元TUT的單元大小例如是32×32、16×16、8×8或4×4像素。假設次編碼單元TUT已被分割成特定單元大小,次編碼單元TUT的值x(對應到第一次編碼單元)經分析函數g a轉換可得出新編碼y(位於編碼空間CS),編碼y經量化得出量化值q,且量化值q被壓縮成位元後即可用於測量編碼率R。接著,量化值q經反量化後形成編碼
Figure 02_image001
,編碼
Figure 02_image001
經合成函數g s反轉換後可獲得重建的次編碼單元TUT(其值
Figure 02_image003
)。接著,將第二次編碼單元輸入到值
Figure 02_image003
。值為x及
Figure 02_image003
的次編碼單元TUT同時透過相同的函數g p(例如,自動編碼器的異常偵測模型)轉換,以分別得到還原單元的值為z及
Figure 02_image005
(位於表示空間PS)。處理器170可由公式(1):
Figure 02_image007
…(1) 得出兩者之間的差異V(其中,
Figure 02_image009
是常數,D是用於得出讓值z,
Figure 02_image005
相等的函數並可用諸如均方誤差(MSE)或差值等方式實現)。
由於考慮的差異時間序列(對應到畫面間的像素之間的時間相關性),因此處理器170會對影像序列中不同影像畫面中的對應次編碼單元依據時間順序產生一連串的差異V,並據以形成時間差異序列。處理器170即可判斷時間差異序列對應的單元大小。
在一實施例中,處理器170可設定多個時間細度群組(分別對應到不同時間細粒度(grain fineness)(對應到不同單元大小)),並判斷時間差異序列所對應的時間細度群組。例如,表(1)是不同時間細度群組T1~T4對應的單元大小: 表(1)
時間細度群組 單元大小
T1 32×32
T2 16×16
T3 8×8
T4 4×4
假設差異V屬於時間細度群組T1,則表示此第一次編碼單元的單元大小被設定為32×32像素,即平面區域或細節資訊較少。假設差異V屬於時間細度群組T4,則表示此第一次編碼單元的單元大小被設定為4×4像素,即細節資訊較多。其餘依此類推,於此不再贅述。此外,圖6C是一範例說明四分樹的結構。請參照圖6C,四個時間細度群組將形成四個階層,並可依照此階層進行編碼,例如以1代表分割為更小的單元。
須說明的是,表(1)中的時間細度群組數量及其對應的單元大小僅是作為範例說明,應用者可視需求自行變化。此外,在一些實施例中,基於不同訓練機制,異常偵測模型還可能直接將第一次編碼單元分類到特定時間細度群組。
請返回圖5,在一實施例中,相關性是空間相關性。處理器170可依據空間相關性決定是否對次編碼單元編碼(步驟S530)。具體而言,處理器170依據第一次編碼單元與第二次編碼單元之間的差異決定是否編碼。此時,第二次編碼單元是與第一次編碼單元相同的影像畫面中的另一次編碼單元。處理器170利用“空間”概念判斷相同影像畫面中不同區塊之間的差異(即,空間差異或空間相關性)。在一實施例中,第一次編碼單元與第二次編碼單元之間在空間上的差異是第一次編碼單元與第二次編碼單元的畫素之間的差的絕對值總合((Sum of Absolute Difference,SAD),其數學表示式(2)為:
Figure 02_image011
…(2) 其中,
Figure 02_image013
是第一次編碼單元
Figure 02_image015
與第二次編碼單元
Figure 02_image017
在各像素坐標(i, j)之間的差的絕對值總合,i為1至N之間的整數,j是1至M之間的整數,N、M為正整數。
在其他實施例中,空間差異也可以是第一次編碼單元與第二次編碼單元的畫素之間的平均差、均方根誤差或其他差異的量度。在一些實施例中,圖5所示實施例可應用在圖4中畫面內編碼模式S411及畫面間編碼模式S414。例如,在畫面內編碼模式S411中,使用自動編碼器AE及時間差異序列作為轉換單元TU的切割大小的判斷。又例如,在畫面間編碼模式S414中,使用轉換單元TU在差的絕對值總合來決定是否編碼此轉換單元TU。
空間差異得出之後,處理器170可依據此差異大小來決定是否對第一次編碼單元或第二次編碼單元(例如,對應到影像畫面中的某一區塊)編碼。其中,若差異越大(例如,未小於空間差異門檻值,即代表像素之間越不相似),則處理器170將執行此第一次編碼單元或第二次編碼單元的編碼;若差異越小(例如,小於空間差異門檻值,即代表像素之間越相似,例如都是辦公室的牆(即,相同背景)),則處理器170將禁能此第一次編碼單元或第二次編碼單元的編碼。
在一實施例中,針對被禁能編碼的第一次編碼單元或第二次編碼單元,處理器170可將其合併到與其空間中像素差異度低的其他第三次編碼單元,以形成合併單元,且第三次編碼單元與第一次編碼單元或第二次編碼單元的差異小於空間差異門檻值。即,將差異較小的次編碼單元合併。接著,處理器170即可執行對合併單元的編碼。例如,第一次編碼單元是參考第三次編碼單元的預測值得出殘量。又例如,第一次編碼單元與第三次編碼單元結合在一起並同時進行預測及編碼。
在另一實施例中,處理器170可設定多個空間等級(分別對應到不同空間細粒度),並判斷空間差異所對應的空間等級。這些空間等級分別對應到不同像素差異程度,並依據差異程度大小排序。例如,表(2)是不同空間等級S1~S3對應的值域: 表(2)
空間等級 值域
S1 0到第一等級上限
S2 第一等級上限至第二等級上限
S3 第二等級上限至第三等級上限
假設空間差異的值在0到第一等級上限之間,則歸類到空間等級S1,且表示此第一次編碼單元與第二次編碼單元之間的像素差異較小。假設空間差異的值在第一等級上限到第二等級上限之間,則歸類到空間等級S2,且表示此第一次編碼單元與第二次編碼單元之間的像素差異相較大些(可能具有較粗糙的紋理)。假設空間差異的值在第二等級上限到第三等級上限之間,則歸類到空間等級S3,且表示此第一次編碼單元與第二次編碼單元之間的像素差異更大(可能是影像畫面的邊緣像素)。
在一些實施例中,處理器170可將前述判斷是否編碼的空間差異門檻值設定成第一等級上限、第二等級上限或第三等級上限,以決定那些空間等級的次編碼單元需要進一步編碼。
須說明的是,表(2)中的空間等級數量及其對應的值域僅是作為範例說明,應用者可視需求自行變化。
又一實施例中,處理器170可對整張影像畫面決定相關於自然影像的統計分佈。次編碼單元經切割之後,處理器170分別決定第一次編碼單元及第二次編碼單元對應的統計分佈,且判斷兩統計分佈之間的差異,並據以決定是否需要對第一次編碼單元或第二次編碼單元進一步編碼。於另一實施例中,處理器170可判斷第一次編碼單元或第二次編碼單元對應的統計分佈中是否具有重要特徵,並決定對具有重要特徵的第一次編碼單元或第二次編碼單元進行編碼。具體而言,自然影像的統計分佈例如是基於自然場景統計(Natural Scene Statistics,NSS)。自然場景統計能描述自然影像中的統計性質。處理器170可應用小波或拉普拉斯分別計算統計分佈。透過對整張影像畫面決定統計分佈後再分割成區塊的手段,處理器170可得知此區塊是否包括重要特徵。例如,假設一張人臉是很重要的,整張畫面的統計分佈中,對應於此張人臉的部分的統計分佈會顯示出具有重要特徵,但是分割後的區塊卻是一個眼睛,此時統計分佈可表現出此區塊重要(即,眼睛對應的統計分佈為人臉的統計分佈中的一部分,故可從對應眼睛的統計分佈中判斷眼睛為重要特徵)。基於自然場景統計對應的重要程度,若不同次編碼單元的兩統計分佈相近(例如使用相似度門檻值比較),則代表空間上的變化是平坦區域(即,重要程度相近,故不需要編碼或合併編碼);若兩統計分佈不相近,則表示空間上的變化較大(即,重要程度的差異大,故需要編碼)。於一實施例中,若差的絕對值總合(SAD)所得的空間差異較小,則處理器170可進一步比對第一次編碼單元及第二次編碼單元的統計分佈。若兩者的統計分佈相近或相同,即可禁能編碼。藉由兩種比對手段(即,差的絕對值總合及統計分佈的比對),可確保空間差異評估的正確性。
在另一實施例中,影像可被切割成較小的評估區塊,並應用小波或拉普拉斯計算各評估區塊的統計分佈,以作為各評估區塊的特徵值。這些評估區塊的特徵值可做為編碼過程中特徵提取的確認。此特徵值代表NSS的規律性。在一些實施例中,前述場景影像也可被切成較小的評估區塊,並應用小波或拉普拉斯計算各評估區塊的統計分佈,以進行NSS規律評估。
請回到圖2,基於前述次編碼單元的單元大小決策及編碼與否的決策,處理器170可依據影像序列的編碼結果產生視訊串流(步驟S230)。例如,處理器170使用設定的單元大小來承載預測資訊與實際資訊之間的殘量、對次編碼單元合併編碼、或者對設定的次編碼單元編碼所產生的位元串流即是編碼結果(可參照圖4的編碼流程410,但不限於特定視訊編碼標準)。視訊串流可進一步透過通訊收發器110傳送而出。另一方面,客戶裝置50的處理器57可透過通訊收發器51直接或間接地自視訊處理裝置100接收到此視訊串流,並對視訊串流解碼(與編碼作業相反的動作(例如,反量化、反轉換、加上預測值等))即可得到重建後的影像畫面,且可進一步透過顯示器55播放。
除了編碼複雜度的降低,本發明實施例更進一步考慮影像品質,以避免減損使用者的觀看體驗。影像品質的評估方法可概括分為客觀及主觀二種,常見的客觀評估數學模型有均方根誤差(Root-Mean-Square Error,RMSE),平均誤差(MSE)及峰值訊雜比(Peak Signal to Noise Ratio,PSNR)。以均方根誤差為例,均方根誤差的值越小,代表著兩張影像相似性愈高,但並不代表此影像的品質越好。為了能呈現使用者對即時串流的影像品質的主觀視覺感受,本發明實施例將位元率(bitrate)、串流內容及使用者體驗三種資訊作為影像品質的評估因素。
在與「解析度」相配性的前提下,較高的位元率可容納更高的視訊品質。因此,當傳輸資料的位元率增加時,人們的感知品質會提高。為了提升使用者的即時串流的品質滿意度及有效的利用頻寬,傳輸的資料量應該在位元率較低時提高。本發明實施例將「編碼等級」用於調整位元率的機制可滿足使用者主觀對即時串流的品質滿意度,而不是廣泛性的提升或降低位元率。
在一實施例中,處理器170可依據傳送視訊串流的傳輸頻寬決定數個編碼等級中的一者。這些編碼等級即是分別對應前述那些空間等級。例如,編碼等級b1對應到表(2)的空間等級S1,編碼等級b2對應到空間等級S2,且編碼等級b3對應到空間等級S3。須說明的是,編碼等級不限於三個,並可視需求而變化。
在保持影像品質的前提下,處理器170可依據當前的傳輸頻寬設置最接近但不超過的可用傳輸頻寬的編碼層級,以增加或減少資料傳輸流量。主要概念是將即時串流中的影像畫面中相較複雜或有較多變化的部份進行處理(例如,編碼及傳輸),而簡單的部份(例如,沒有變化或較少變化的部份)則不進行處理,解碼時使用前面已經編碼過的畫面進行預測即可。透過此等動態調整方式可進一步取得編碼效率及節約流量之間的平衡,從而達到使用者對即時串流的品質(例如是QoE)的期望。
當傳輸頻寬小於頻寬門檻值時,代表可用傳輸頻寬不夠,且需要減少資料傳輸量,因此編碼等級須提升。例如,將當前編碼等級升高一個等級或視可用傳輸頻寬調整。反之,當傳輸頻寬未小於頻寬門檻值時,代表可用傳輸頻寬足夠,且可進一步增加資料傳輸量,因此編碼等級可降低。例如,將當前編碼等級降低一個等級或降到最低等級。舉例而言,假設當前編碼等級為b2,當傳輸頻寬小於40 Kbps(即,頻寬門檻值)時,則處理器170將編碼等級修改成b3。
此外,處理器170可依據決定的編碼等級改變前述空間差異門檻值。若編碼等級增加(即,傳輸頻寬降低),則空間差異門檻值也增加;若編碼等級降低(即,傳輸頻寬增加),則空間差異門檻值也降低。舉例而言,當傳輸頻寬降低時,編碼等級被提升至b3,且只對邊緣像素的區塊進行編碼及傳輸,而其他部份是使用前面已經編碼過的畫面進行預測,即可減少傳輸資料量。相反而言,當傳輸頻寬增加時,編碼等級被降低到b2或b1,則需要進一步對紋理(texture)或平坦(flat)的區塊進行編碼及傳輸。藉此,可因應於傳輸頻寬的變化而重新分配編碼機制,進而改善了編碼效率及用戶對即時串流的體驗。
以實際情境說明,假設目前編碼等級為對應空間等級S2的b2,且頻寬門檻值設為40 Kbps。當傳輸頻寬小於頻寬門檻值時,視頻會議應用程序將無法正常工作(可能會有延遲或封包遺失等情況發生),因此無法滿足用戶的即時視頻期望。
一旦傳輸頻寬小於頻寬門檻值,處理器170可將空間差異門檻值及編碼等級提升(但不可高於最高的空間等級的上限及編碼等級的上限)。例如,編碼等級提升到為b3,空間差異門檻值設為空間等級S3,代表次編碼單元是邊緣(即,空間差異大於空間等級S2的上限)才需編碼。即,只對有即時串流進行重點(此處將空間差異較大的次編碼單元視為重點)的編碼,以降低整體的位元率,提高編碼效率,並維持即時串流品質。
在另一實施例中,視訊處理裝置100可依據客戶裝置50對於影像品質評估(例如,針對前述串流內容及使用者體驗因素)的回饋來改變編碼機制。圖7是依據本發明一實施例的影像品質評估方法的流程圖。請參照圖7,客戶裝置50的處理器57對視訊串流中的影像形成數個待評估區塊(步驟S710)。具體而言,有別於傳統技術對於整張影像的所有像素進行影像品質評估,本發明實施例是以區塊為基本單位來評估。而待評估區塊可以是前述次編碼單元的單元大小或是其他大小。
處理器57可將待評估區塊輸入品質評估模型(步驟S730)。具體而言,品質評估模組是基於機器學習演算法所訓練。此機器學習演算法可以是膠囊網路(Capsule network,CapsNet)、卷積神經網路(Convolutional neural network,CNN)、緊密卷積網路(Dense Convolutional Network,DenseNet)或其他演算法。
以膠囊網路為例,在影像識別上和CNN不同之處在於,使用接近生物神經組織(biological neural organization)的概念。當視角(viewpoint)改變時,部分(part)或物件(object)具有線性影響,而像素則是非線性影響。膠囊網路是帶有方向的向量,並可根據統計訊息進行特徵檢測。例如,根據五官辨識出一隻「貓」。此外,膠囊網路還可以對特徵進行理解。例如,若五官不在其特定的區域(例如,嘴在額頭、或眼睛在耳朵上方),則膠囊網路能透過檢測出物體的不同方向(例如,順時針旋轉),從而了解處於特定位置的貓五官才能被稱作是「貓」。
在一實施例中,處理器57可將前述場景影像切割成數個待學習區塊,並將這些場景影像的那些待學習區塊作為學習資料,且將此學習資料作為訓練品質評估模型的訓練樣本。例如,會議影像作為場景影像,則訓練品質評估模型後即可將影像中的人臉作為重要資訊。即,取得影像特徵,並據以作為人臉感興趣區域。而影像特徵是指將待學習區塊輸入機器學習演算法的神經網路中,可針對待學習區塊學習出局部影像的特徵。例如,紋理和梯度信息。而在膠囊網路中可以向量記錄紋理和梯度訊息、以及相對位置等資訊。此外,膠囊網路的作用可以確保重要資訊的位置正確,進而輕易地分辨出重要資訊。
在另一實施例中,處理器57可將例如是平均意見分數(Mean Opinion Score,MOS)或差分平均意見分數(Differential Mean Opinion Score,DMOS)影像資料庫中的資料作為學習資料,對學習資料中的影像切割成數個待學習區塊,並將這些待學習區塊作為訓練品質評估模型的訓練樣本。
在又一實施例中,處理器57可統計一位或更多位人員對那些待學習區塊主觀評斷的觀感評估分數。觀感評估分數是基於人類觀感實際的評分結果所得出。以國際標準化的協議電信聯盟(ITU)測試為例,ITU測試分為幾個段落,至少由15位觀察人員組成,觀察人員受要求以1到5的分數對待學習區塊評分。每個人的主觀影像質量評分標準可能不同,使得不同人通常給出的分數會不同。每位觀察人員給出的分數取決於自身經驗及喜好,甚至可能根據當天的心情及事物而變化。處理器57可將那些待學習區塊對應的觀感評估分數作為訓練品質評估模型的訓練樣本。而透過對區塊的觀感評估分數輸入至機器學習演算法的神經網路,可建立品質評估模型,並讓品質評估模型可用於推論其他情境下的視訊串流的影像品質。
再一實施例中,處理器57可依據那些待學習區塊對應的影像特徵、觀感評估分數及/或統計分佈(基於自然場景統計)決定數個目標函數中的一者,並作為訓練品質評估模型的訓練樣本。具體而言,目標函數可以是粒子群最佳化(Particle Swarm Optimization,PSO)的適應性函數(fitness function)、模糊決策的成本函數計算或其他最佳化函數。這些目標函數具有上限及下限,即目標函數的最佳解在上下及下限之間的可行區域(feasible region)(或稱容許範圍)內變動。在編解碼過程中,資訊減少或遺失是無法避免的。因此,求取目標函數的解可在一個區間內,目標函數的上限及下限的目的是指影像品質提高或減損可在某個容忍範圍內。求得最佳解(即,和原始影像對應區塊相同的影像品質)是主要目標,其次可找尋其他相關的可行解(即,在容忍範圍內的影像品質提高或減損)。
以影像特徵、觀感評估分數及統計分佈三者皆作為目標函數的參數為例:
Figure 02_image019
…(3)
Figure 02_image021
…(4) 目標函數
Figure 02_image023
包括待評估區塊的影像特徵 t、觀感評估分數 m及統計分佈 nmax_f代表上限, min_f代表下限,即求解目標可在上限 max_f和下限 min_f間變動。
須說明的是,方程式(3)、(4)僅是作為範例說明,其他實施例也可能是將影像特徵與觀感評估分數及統計分佈中的任一者作為目標函數的參數。
處理器57可依據品質評估模型的輸出結果決定影像的品質(步驟S750)。具體而言,經訓練的品質評估模組可將待評估區塊作為輸入資料,並據以推論其對應的結果。在一實施例中,若場景影像及/或訓練資料的影像特徵、觀感評估分數、統計分佈及目標函數作為品質評估模組的學習資料,則品質評估模型的輸出結果可包括特定的影像特徵、觀感評估分數、統計分佈及目標函數。例如,品質評估模組對視訊串流經重建後的影像畫面中的待評估區塊擷取影像特徵,並辨識出對應此影像特徵所屬類別(例如,人臉、眼睛、或嘴)的區塊,再依據此類別的區塊取得對應的觀感評估分數、統計分佈及目標函數。
接著,處理器57可依據輸出結果中的影像特徵、觀感評估分數、統計分佈及目標函數,決定各待評估區塊對應的目標函數的計算值(即,同時依據影像特徵、觀感評估分數及統計分佈決定對應待評估區塊的計算值)。處理器57可依據此計算值判斷對應待評估區塊的品質。即,計算值為影像品質的指標。
在一實施例中,處理器57可判斷計算值是否介於對應的目標函數的上限及下限之間(即,容許範圍)。若此計算值位於最佳解的上限及下限內,即代表使用者對此待評估區塊的感觀接受度在容許範圍內(差值代表容忍度,並可經由經驗而來或動態修正最佳解的上下限),並可進一步透過顯示器55播放重建的影像畫面(即,視訊串流經解碼後的影像畫面)。若計算值未位於上限及下限內或無解,則代表目標函數無法得出最佳解、使用者對此待評估區塊的感觀接受度不在容許範圍內或畫面失真,並可進一步透過通訊收發器51發出對影像重新編碼的要求。而若計算值等於最佳解,則代表使用者對此待評估區塊的感觀接受度相同,並可進一步透過顯示器55播放重建的影像畫面。
在另一實施例中,若場景影像及/或訓練資料的影像特徵、觀感評估分數及目標函數作為品質評估模組的學習資料,則品質評估模型的輸出結果可包括特定的影像特徵、觀感評估分數及目標函數(此實施例是依據影像特徵及觀感評估分數形成目標函數)。接著,處理器57可將輸出結果中的影像特徵及觀感評估分數輸入至輸出結果中的目標函數,並據以決定各待評估區塊對應的目標函數的計算值(即,依據影像特徵及觀感評估分數決定對應待評估區塊的計算值),並據以作為影像品質的指標。
又一實施例中,若場景影像及/或訓練資料的影像特徵、統計分佈及目標函數作為品質評估模組的學習資料,則品質評估模型的輸出結果可包括特定的影像特徵、統計分佈及目標函數(此實施例是依據影像特徵及統計分佈形成目標函數)。接著,處理器57可將輸出結果中的影像特徵及統計分佈輸入至輸出結果中的目標函數,並據以決定各待評估區塊對應的目標函數的計算值(即,依據影像特徵及統計分佈決定對應待評估區塊的計算值),並據以作為影像品質的指標。
由於影像畫面中的畫素分佈並非均勻分佈,因此影像畫面中的單一待評估區塊不一定可以反映出整張影像畫面的所有畫素,且各待評估區塊得到使用者關注的程度也許不同。一般而言,重要資訊(例如,會議室中的人比會議室背景更重要)或變化較大的資訊(例如,切換場景或換人發言)是使用者所關注的部份。
為了考慮不同待評估區塊對影像品質評估的影響,本發明實施例使用編碼等級做為待評估區塊的加權平均所用的權重。處理器57可決定各待評估區塊的編碼等級,且不同的編碼等級對應到不同的權重。以表(2)的編碼等級為例,編碼等級b3、b2及b1 分別對應到權重w3、w2及w1。相較於編碼等級b1,編碼等級b3會讓使用者有更多注意力,因此權重w3的值大於權重w1的值。即,編碼等級越高,權重的值越高。相反而言,編碼等級越低,權重的值越低。處理器57可依據那些待評估區塊的品質(例如是前述計算值)及其對應的權重決定整張影像畫面的品質。影像畫面的品質的計算公式如下:
Figure 02_image025
…(5) Q為整張影像畫面的品質,
Figure 02_image027
為第k待評估區塊的品質,
Figure 02_image029
是第k待評估區塊的權重,假設影像畫面分割成L個待評估區塊,且L為正整數。
以影像畫面被分割成三個待評估區塊為例,其編碼等級b3、b2及b1對應到的權重分別為60%、30%及10%。整張影像畫面的品質為(
Figure 02_image031
*0.6+
Figure 02_image033
*0.3+
Figure 02_image035
*0.1)/(0.6+0.3+0.1)。
須說明的是,若影像畫面的品質的分數是以DMOS或MOS來計分,則DMOS的分數越高表示品質越差,或MOS的分數越高表示品質越高。
此外,若得出品質不佳的回饋,視訊處理裝置100可依據影像品質評估結果來改變編碼機制。在一實施例中,處理器170更依據視訊串流經解碼後的影像品質(例如,前述整張影像畫面的品質、或部分待評估區塊的品質)改變空間差異門檻值。例如,若影像品質不佳(例如,其計算值不位於目標函數的容許範圍內),則處理器170可降低空間差異門檻值,使降低空間等級(即,值域較低)的次編碼單元以取得更多編碼資訊(原先這些較低空間等級的次編碼單元不執行編碼,解碼時將參考其他預測值,且降低空間差異門檻值後若這些次編碼單元符合較低空間等級也可執行編碼) ,並重新編碼那些次編碼單元。
在另一實施例中,處理器170可依據視訊串流經解碼後的影像品質改變單元大小的決定。若影像品質不佳,則處理器170可在編碼流程中對單元大小的決定放寬條件。例如,處理器170可降低時間細度群組對應的單元大小,使細節資訊增加。
綜上所述,本發明實施例視訊處理裝置及視訊串流的處理方法,將影像畫面中的空間及時間特徵分為不同細粒度,使用異常偵測模型作為編碼單元結構切割次編碼單元的決策依據,並判斷各次編碼單元屬於那個空間等級的區間門檻值,進而判斷次編碼單元是否需要進行編碼,從而減少編碼複雜度。此外,使用NSS統計特性可助於提供更精確的分割決策。另一方面,本發明實施例整合傳輸頻寬、觀感評估分數及自然場景統計分佈三種資訊作為影像品質的評估因素。基於編碼等級動態調整位元率以滿足使用者主觀對即時串流的品質滿意度,而不是廣泛性的提升或降低位元率。此外,本發明實施例採用無參考(no-reference,NR)影像品質評估概念,不需參考影像的比對,也不需要對影像中的所有畫素擷取影像特徵。由於參考NSS統計特性,因此本發明實施例機器學習演算法的神經網路擷取待評估區塊的影像特徵,並使用編碼等級對待評估區塊的像素進行加權,從而對整個影像進行品質評估。影像品質評估還能進一步回饋到編碼機制,讓調整後的編碼機制能符合人類視覺觀感的需求。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
1:視訊串流系統 50:客戶裝置 51、110:通訊收發器 53、130:儲存器 55:顯示器 57、170:處理器 100:視訊處理裝置 S210~S230、S405~S435、S510~S530、S710~S750:步驟 CU、CU 1、CU 2、CU 3:編碼單元 PU:預測單元 TU、TU 1、TU 2:轉換單元 410:編碼流程 430:解碼流程 AE:自動編碼器 OI:原始輸入 CI:壓縮表示 RI:重建輸入 CS:編碼空間 PS:表示空間 TUT:次編碼單元 x、
Figure 02_image003
、z、
Figure 02_image005
:值 y、
Figure 02_image001
:編碼 g p:函數 q:量化值 D:函數 R:編碼率
圖1是依據本發明一實施例的視訊串流系統的方塊圖。 圖2是依據本發明一實施例的視訊串流的處理方法的流程圖。 圖3是一範例說明單元。 圖4是一範例說明各單元對應處理步驟的流程圖。 圖5是依據本發明一實施例的編碼處理方法的流程圖。 圖6A是一範例說明自動編碼器(AutoEncoder,AE)。 圖6B是依據本發明一實施例的應用AE決策單元大小的示意圖。 圖6C是一範例說明四分樹的結構。 圖7是依據本發明一實施例的影像品質評估方法的流程圖。
S210~S230:步驟

Claims (18)

  1. 一種視訊串流的處理方法,包括:對一影像畫面形成至少一編碼單元,其中該影像畫面是一影像序列中的一張畫面,且每一該編碼單元用於記錄所屬區塊的編碼資訊;依據該影像序列中的多個該編碼單元中的多個次編碼單元中的一第一次編碼單元與一第二次編碼單元之間的相關性編碼該些次編碼單元;以及依據該影像序列的編碼結果產生一視訊串流,其中依據該影像序列中的該些編碼單元中的該些次編碼單元中的該第一次編碼單元與該第二次編碼單元之間的相關性編碼該些次編碼單元的步驟包括:依據該第一次編碼單元與該第二次編碼單元之間的差異決定該第一次編碼單元或該第二次編碼單元的單元大小,其中該第二次編碼單元是該影像序列中不同於該影像畫面的另一張畫面中的對應次編碼單元;或依據該第一次編碼單元與該第二次編碼單元之間的空間差異決定是否編碼該第一次編碼單元或該第二次編碼單元,其中該第二次編碼單元是與該第一次編碼單元相同的該影像畫面中的另一次編碼單元。
  2. 如請求項1所述的視訊串流的處理方法,其中依據該影像序列中的該些編碼單元中的該些次編碼單元中的該第一次編 碼單元與該第二次編碼單元之間的相關性編碼該些次編碼單元的步驟更包括:反應於該空間差異小於一空間差異門檻值,禁能該第一次編碼單元或該第二次編碼單元的編碼;以及反應於該空間差異未小於該空間差異門檻值,執行該第一次編碼單元或該第二次編碼單元的編碼。
  3. 如請求項1所述的視訊串流的處理方法,其中依據該第一次編碼單元與該第二次編碼單元之間的差異決定該第一次編碼單元或該第二次編碼單元的單元大小的步驟更包括:將該第二次編碼單元輸入至一異常偵測模型,以得出一還原單元,其中該異常偵測模型是將該第一次編碼單元作為訓練資料並基於一機器學習演算法所訓練;依據該第一次編碼單元與該第二次編碼單元的該還原單元之間的差異形成一時間差異序列;以及判斷該時間差異序列對應的單元大小。
  4. 如請求項1所述的視訊串流的處理方法,其中該第一次編碼單元與該第二次編碼單元之間的該空間差異是該第一次編碼單元與該第二次編碼單元的畫素之間的差的絕對值總合(Sum of Absolute Difference,SAD)。
  5. 如請求項1所述的視訊串流的處理方法,其中依據該第一次編碼單元與該第二次編碼單元之間的該空間差異決定是否編碼該第一次編碼單元或該第二次編碼單元的步驟更包括:決定該影像畫面相關於自然影像的統計分佈;依據該影像畫面的統計分佈分別決定該第一次編碼單元及該第二次編碼單元對應的統計分佈;以及依據該第一次編碼單元及該第二次編碼單元對應的統計分佈決定是否編碼該第一次編碼單元或該第二次編碼單元。
  6. 如請求項2所述的視訊串流的處理方法,其中禁能該第一次編碼單元或該第二次編碼單元的編碼的步驟包括:將該第一次編碼單元或該第二次編碼單元合併到一第三次編碼單元,以形成一合併單元,其中該第三次編碼單元與該第一次編碼單元或該第二次編碼單元的該空間差異小於該空間差異門檻值;以及執行對該合併單元的編碼。
  7. 如請求項1所述的視訊串流的處理方法,其中依據該第一次編碼單元與該第二次編碼單元之間的空間差異決定是否編碼該第一次編碼單元或該第二次編碼單元的步驟包括:依據傳送該視訊串流的一傳輸頻寬決定多個編碼等級中的一者;以及依據決定的該編碼等級改變該空間差異門檻值。
  8. 如請求項1所述的視訊串流的處理方法,更包括: 依據該視訊串流經解碼後的影像品質改變該空間差異門檻值。
  9. 如請求項1所述的視訊串流的處理方法,更包括:依據該視訊串流經解碼後的影像品質改變該單元大小。
  10. 一種視訊處理裝置,包括:一通訊收發器,用以傳送或接收資料;以及一處理器,耦接該通訊收發器,並經配置用以:對一影像畫面形成至少一編碼單元,其中該影像畫面是一影像序列中的一張畫面,且每一該編碼單元用於記錄所屬區塊的編碼資訊;依據該影像序列中的多個該編碼單元中的多個次編碼單元中的一第一次編碼單元與一第二次編碼單元之間的相關性編碼該些次編碼單元;以及依據該影像序列的編碼結果產生一視訊串流,其中該視訊串流透過該通訊收發器傳送,其中該處理器更經配置用以:依據該第一次編碼單元與該第二次編碼單元之間的差異決定該第一次編碼單元或該第二次編碼單元的單元大小,其中該第二次編碼單元是該影像序列中不同於該影像畫面的另一張畫面中的對應次編碼單元;或依據該第一次編碼單元與該第二次編碼單元之間的空間差異決定是否編碼該第一次編碼單元或該第二次編碼單元,其中該第二次編碼單元是與該第一次編碼單元相同的該影像畫面中的 另一次編碼單元。
  11. 如請求項10所述的視訊處理裝置,其中該處理器經配置用以:反應於該空間差異小於一空間差異門檻值,禁能該第一次編碼單元或該第二次編碼單元的編碼;以及反應於該空間差異未小於該空間差異門檻值,執行該第一次編碼單元或該第二次編碼單元的編碼。
  12. 如請求項10所述的視訊處理裝置,其中該處理器經配置用以:將該第二次編碼單元輸入至一異常偵測模型,以得出一還原單元,其中該異常偵測模型是將該第一次編碼單元作為訓練資料並基於一機器學習演算法所訓練;依據該第一次編碼單元與該第二次編碼單元的該還原單元之間的差異形成一時間差異序列;以及判斷該時間差異序列對應的單元大小。
  13. 如請求項10所述的視訊處理裝置,其中該第一次編碼單元與該第二次編碼單元之間的該空間差異是該第一次編碼單元與該第二次編碼單元的畫素之間的差的絕對值總合。
  14. 如請求項10所述的視訊處理裝置,其中該處理器經配置用以:決定該影像畫面相關於自然影像的統計分佈;依據該影像畫面的統計分佈分別決定該第一次編碼單元及該 第二次編碼單元對應的統計分佈;以及依據該第一次編碼單元及該第二次編碼單元對應的統計分佈決定是否編碼該第一次編碼單元或該第二次編碼單元。
  15. 如請求項11所述的視訊處理裝置,其中該處理器經配置用以:將該第一次編碼單元或該第二次編碼單元合併到一第三次編碼單元,以形成一合併單元,其中該第三次編碼單元與該第一次編碼單元或該第二次編碼單元的該空間差異小於該空間差異門檻值;以及執行對該合併單元的編碼。
  16. 如請求項10所述的視訊處理裝置,其中該處理器經配置用以:依據傳送該視訊串流的一傳輸頻寬決定多個編碼等級中的一者;以及依據決定的該編碼等級改變該空間差異門檻值。
  17. 如請求項10所述的視訊處理裝置,其中該處理器經配置用以:透過該通訊收發器接收該視訊串流經解碼後的影像品質;以及依據該影像品質改變該空間差異門檻值。
  18. 如請求項10所述的視訊處理裝置,其中該處理器經配置用以: 透過該通訊收發器接收該視訊串流經解碼後的影像品質;以及依據該影像品質改變該單元大小。
TW109126181A 2020-08-03 2020-08-03 視訊處理裝置及視訊串流的處理方法 TWI743919B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
TW109126181A TWI743919B (zh) 2020-08-03 2020-08-03 視訊處理裝置及視訊串流的處理方法
CN202010966599.XA CN114071189B (zh) 2020-08-03 2020-09-15 视频处理装置及视频串流的处理方法
US17/022,097 US11363298B2 (en) 2020-08-03 2020-09-16 Video processing apparatus and processing method of video stream
EP20204027.5A EP3952307A1 (en) 2020-08-03 2020-10-27 Video processing apparatus and processing method of video stream
JP2020196826A JP7075983B2 (ja) 2020-08-03 2020-11-27 ビデオ処理装置およびビデオストリームの処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW109126181A TWI743919B (zh) 2020-08-03 2020-08-03 視訊處理裝置及視訊串流的處理方法

Publications (2)

Publication Number Publication Date
TWI743919B true TWI743919B (zh) 2021-10-21
TW202207708A TW202207708A (zh) 2022-02-16

Family

ID=73029883

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109126181A TWI743919B (zh) 2020-08-03 2020-08-03 視訊處理裝置及視訊串流的處理方法

Country Status (5)

Country Link
US (1) US11363298B2 (zh)
EP (1) EP3952307A1 (zh)
JP (1) JP7075983B2 (zh)
CN (1) CN114071189B (zh)
TW (1) TWI743919B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2698414C1 (ru) * 2018-09-21 2019-08-26 Владимир Александрович Свириденко Способ и устройство сжатия видеоинформации для передачи по каналам связи с меняющейся пропускной способностью и запоминания в системах хранения данных с использованием машинного обучения и нейросетей
EP3942836A1 (en) * 2020-05-19 2022-01-26 Google LLC Dynamic parameter selection for quality-normalized video transcoding
TWI749676B (zh) * 2020-08-03 2021-12-11 緯創資通股份有限公司 影像品質評估裝置及其影像品質評估方法
US11429804B2 (en) 2020-09-18 2022-08-30 Google Llc Platform for registering and processing visual encodings
JP2022174948A (ja) * 2021-05-12 2022-11-25 横河電機株式会社 装置、監視システム、方法およびプログラム
CN113282552B (zh) * 2021-06-04 2022-11-22 上海天旦网络科技发展有限公司 流量统计日志的相似性向量化方法及***
US20240121402A1 (en) * 2022-09-30 2024-04-11 Netflix, Inc. Techniques for predicting video quality across different viewing parameters
CN116996680B (zh) * 2023-09-26 2023-12-12 上海视龙软件有限公司 一种用于视频数据分类模型训练的方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106791828A (zh) * 2016-12-21 2017-05-31 四川大学 基于机器学习的高性能视频转码方法及其转码器
CN108965892A (zh) * 2012-01-30 2018-12-07 三星电子株式会社 用于视频解码的设备

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1175058A1 (en) * 2000-07-21 2002-01-23 Alcatel Processor system, and terminal, and network-unit, and method
CN100559880C (zh) 2007-08-10 2009-11-11 中国传媒大学 一种基于自适应st区的高清视频图像质量评价方法及装置
EP2286595A1 (en) * 2008-06-16 2011-02-23 Dolby Laboratories Licensing Corporation Rate control model adaptation based on slice dependencies for video coding
US9788019B2 (en) * 2011-03-09 2017-10-10 Hfi Innovation Inc. Method and apparatus of transform unit partition with reduced complexity
GB2492163B (en) * 2011-06-24 2018-05-02 Skype Video coding
US9456212B2 (en) * 2011-09-30 2016-09-27 Broadcom Corporation Video coding sub-block sizing based on infrastructure capabilities and current conditions
JP5795525B2 (ja) * 2011-12-13 2015-10-14 日本電信電話株式会社 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置,画像符号化プログラムおよび画像復号プログラム
TW201336318A (zh) * 2012-01-18 2013-09-01 Jvc Kenwood Corp 影像編碼裝置、影像編碼方法及影像編碼程式、以及影像解碼裝置、影像解碼方法及影像解碼程式
JP5943733B2 (ja) * 2012-06-20 2016-07-05 キヤノン株式会社 画像符号化装置およびその制御方法ならびにプログラム
JP5719410B2 (ja) 2013-07-25 2015-05-20 日本電信電話株式会社 画像符号化方法、画像符号化装置及び画像符号化プログラム
JP2015027022A (ja) * 2013-07-29 2015-02-05 Kddi株式会社 動画像符号化装置、動画像符号化方法、およびプログラム
CN104683798B (zh) * 2013-11-26 2018-04-27 扬智科技股份有限公司 镜射影像编码方法及其装置、镜射影像解码方法及其装置
CN103702131B (zh) * 2013-12-25 2017-02-15 清华大学 一种基于模式预处理的帧内编码优化方法和***
US9699466B2 (en) * 2013-12-26 2017-07-04 Mediatek Inc Adaptive reference/non-reference frame determination for video encoding
CN103916675B (zh) 2014-03-25 2017-06-20 北京工商大学 一种基于条带划分的低延迟帧内编码方法
CN104079925B (zh) 2014-07-03 2016-05-18 中国传媒大学 基于视觉感知特性的超高清视频图像质量客观评价方法
GB2531004A (en) * 2014-10-06 2016-04-13 Canon Kk Residual colour transform signalled at sequence level for specific coding modes
CN104333756B (zh) 2014-11-19 2017-10-24 西安电子科技大学 基于时域相关性的hevc预测模式快速选择方法
CN106254870B (zh) * 2015-06-08 2020-08-18 财团法人工业技术研究院 采用自适性色彩转换的视频编码方法、***和计算机可读取记录介质
CN105657433B (zh) * 2015-12-30 2019-09-03 航天恒星科技有限公司 一种基于图像复杂度的信源实时编码方法及***
WO2017157249A1 (en) * 2016-03-16 2017-09-21 Mediatek Inc. Method and apparatus of video data processing with restricted block size in video coding
WO2018062950A1 (ko) * 2016-09-30 2018-04-05 엘지전자(주) 영상 처리 방법 및 이를 위한 장치
CN109644273B (zh) * 2016-10-14 2021-04-09 华为技术有限公司 用于视频编码的设备和方法
WO2018135885A1 (ko) * 2017-01-19 2018-07-26 가온미디어 주식회사 변환 처리를 제공하는 영상 복호화 및 부호화 방법
KR102354628B1 (ko) * 2017-03-31 2022-01-25 한국전자통신연구원 부호화 트리 유닛 및 부호화 유닛의 처리를 수행하는 영상 처리 방법, 그를 이용한 영상 복호화, 부호화 방법 및 그 장치
CN109218729A (zh) * 2017-07-05 2019-01-15 财团法人工业技术研究院 视频编码方法、视频解码方法、视频编码器及视频解码器
EP3673656A4 (en) 2017-08-22 2020-07-01 Panasonic Intellectual Property Corporation of America IMAGE ENCODER, IMAGE DECODER, IMAGE ENCODING METHOD, AND IMAGE DECODING METHOD
CN107690069B (zh) * 2017-08-28 2021-01-01 中国科学院深圳先进技术研究院 一种数据驱动的级联视频编码方法
US20190045195A1 (en) * 2018-03-30 2019-02-07 Intel Corporation Reduced Partitioning and Mode Decisions Based on Content Analysis and Learning
EP3952306A1 (en) * 2018-10-02 2022-02-09 Nokia Technologies Oy An apparatus, a method and a computer program for running a neural network
CN110324618A (zh) 2019-07-03 2019-10-11 上海电力学院 基于vmaf准则的提高视频质量的优化编码方法
CN110213584A (zh) * 2019-07-03 2019-09-06 北京电子工程总体研究所 基于纹理复杂度的编码单元分类方法和编码单元分类设备
US11490099B2 (en) * 2019-12-23 2022-11-01 Qualcomm Incorporated Reference subpicture scaling ratios for subpictures in video coding
KR20210092588A (ko) * 2020-01-16 2021-07-26 삼성전자주식회사 영상 처리 장치 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108965892A (zh) * 2012-01-30 2018-12-07 三星电子株式会社 用于视频解码的设备
CN106791828A (zh) * 2016-12-21 2017-05-31 四川大学 基于机器学习的高性能视频转码方法及其转码器

Also Published As

Publication number Publication date
EP3952307A1 (en) 2022-02-09
JP7075983B2 (ja) 2022-05-26
CN114071189A (zh) 2022-02-18
US11363298B2 (en) 2022-06-14
JP2022028586A (ja) 2022-02-16
US20220038747A1 (en) 2022-02-03
CN114071189B (zh) 2023-05-05
TW202207708A (zh) 2022-02-16

Similar Documents

Publication Publication Date Title
TWI743919B (zh) 視訊處理裝置及視訊串流的處理方法
WO2021244341A1 (zh) 图像编码方法及装置、电子设备及计算机可读存储介质
CN105187835B (zh) 基于内容的自适应视频转码方法及装置
JPH10257489A (ja) 映像符号化のためのビット発生量調節装置及び方法
KR20170135069A (ko) QoE 분석 기반 비디오 프레임 관리 방법 및 그 장치
WO2021129007A1 (zh) 视频码率的确定方法、装置、计算机设备及存储介质
WO2023134523A1 (zh) 内容自适应视频编码方法、装置、设备和存储介质
WO2021136110A1 (zh) 编码方法及编码器
WO2023159965A1 (zh) 一种基于视觉感知的码率控制方法及装置
WO2020244328A1 (zh) 图像处理方法及装置
Xu et al. Consistent visual quality control in video coding
JP2004023288A (ja) 動画像符号化のための前処理方式
US11880966B2 (en) Image quality assessment apparatus and image quality assessment method thereof
WO2024108950A1 (zh) 一种码流控制方法、装置及电子设备
US10110893B2 (en) Method and device for calculating distortion of a video being affected by compression artifacts and channel artifacts
Zhao et al. Fast CU partition decision strategy based on human visual system perceptual quality
JPH06133303A (ja) 動画像符号化装置
CN114827616A (zh) 一种基于时空信息平衡的压缩视频质量增强方法
Jung Comparison of video quality assessment methods
US12022096B2 (en) Human visual system adaptive video coding
US11854165B2 (en) Debanding using a novel banding metric
Tancharoen et al. Automatic face color segmentation based rate control for low bit-rate video coding
US20200267396A1 (en) Human visual system adaptive video coding
Yang et al. A multi-category task for bitrate interval prediction with the target perceptual quality
Amirpour et al. A Real-Time Video Quality Metric for HTTP Adaptive Streaming