原创 H.266/VVC代碼學習61:VTM中deblocking源碼閱讀

自從找實習以來,很久一陣子沒看VTM代碼了,一直在文本層面做改動和優化。遠程控制實驗室電腦時斷時續,本機上只有比較老的6.0版本,經過對比發現8.0上的改動也非常小。爲了在疫情期間保持讀代碼的能力,決定入手一個新技術的實現方法。

原创 Leetcode學習:五大算法之回溯算法

文章目錄1 簡介1.1 介紹1.2 算法核心2 解答模板3 例題3.1 全排列問題3.2 N皇后問題3.3 解數獨問題 1 簡介 1.1 介紹 百度百科給出的定義如下: 回溯法(探索與回溯法)是一種選優搜索法,又稱爲試探法,按選優

原创 H.266/VVC技術學習52:Merge模式相關

VVC中Merge模式分爲目錄中的以下五種。 文章目錄1 Merge1.1 空域候選1.2 時域候選1.3 歷史候選1.4 平均候選1.5 零MV2 MMVD(Merge mode with MVD)2.1 預測方式2.2 搜索方

原创 H.266/VVC技術學習53:Affine相關

文章目錄1 簡介1.1 計算方法1.2 子塊大小2 Affine merge2.1 繼承Affine merge候選2.2 構造Affine merge候選2.3 零MV候選3 Affine AMVP3.1 繼承Affine A

原创 H.266/VVC技術學習59:量化

文章目錄1 簡介2 QP3 RDOQ4 DQ6 其他 1 簡介 量化是視頻編碼中最主要的失真產生的位置。 變換系數爲x,經過量化得到一個數值,li就是反量化後的變換系數。 這裏數值li的值如下: c是變換後的殘差值,Qstep

原创 H.266/VVC代碼學習60:CCALF解碼端過程

CCALF是把亮度的信息進行維納濾波加到色度上,以補充色度平坦的信息。於JVET的O次會議提出,Q次會議接收。 首先我們先回顧一下ALF的算法,然後進行CCALF的學習。 1 輸入輸出 輸入: 1、亮度ALF之前的重建亮度像素;

原创 常見圖算法思想

文章目錄1 最小生成樹1.1 普里姆算法(Prim)1.2 克魯斯卡爾算法(Kruskal)2 最短路徑2.1 迪傑斯特拉算法(Dijkstra)2.2 弗洛伊德算法(Floyd) 1 最小生成樹 生成樹:圖有n個結點,用n-1條

原创 萬老師《H.265/HEVC》第十二章:速率控制

速率控制: 通過選擇一系列編碼參數,使得視頻編碼後的比特率滿足所需要的速率限制,並且使得編碼失真儘量小。即R受限,找這種情況下最小的D。屬於率失真優化的範疇。 重點: 每一個編碼單元(可能是幀,可能是宏塊等)確定最優QP(找到了Q

原创 H.266/VVC技術學習58:色度殘差聯合編碼(JCCR)

VVC支持色度殘差工具的聯合編碼(JCCR)。最根本的計算方法如下: 編碼端: 解碼端: 對於I幀,支持模式1,2,3,三種模式進行競爭。 對於P、B幀,僅支持模式2。因此,在P和B切片中,僅當兩個色度cbfs均爲1時,纔會出

原创 H.266/VVC技術學習57:視頻屬性雜談(2)

雜談部分主要講講自己初學時不懂的,而且是過了好久好久才理解的內容(心痛啊)。這裏做一個簡要的記錄及痛心的會議,比較面向還沒入門的同學,希望會有所幫助吧。 前一期視頻屬性雜談 我們討論了視頻的構成要素,也知道了顯示在屏幕上的視頻,是

原创 H.266/VVC技術學習55:熵編碼

文章目錄1 CABAC引擎1.1 HEVC的編解碼引擎1.2 VVC的編解碼引擎2 變換系數熵編解碼2.1 普通變換系數的殘差編碼2.2 變換跳過係數的殘差編碼3 係數編碼上下文模型 1 CABAC引擎 1.1 HEVC的編解碼引

原创 H.266/VVC代碼學習56:率失真優化

躲避疫情,在家也學點東西吧,解鎖一波新地圖——VVC的RDO。 所謂率失真優化:在給定編碼比特率的情況下,如何使失真最小:J(λ) = min[ D + λR ]。其中: 率:信息數量的多少(比特率R); 失真:接收短信號與源信號

原创 萬老師《H.265/HEVC》第十一章:率失真優化

做了一陣子率失真優化才發覺自己理解太不到位了,特此係統讀書學習一波。 有損壓縮算法,性能由編碼輸出的比特率和失真共同決定。 編碼的目的:就是在保證一定視頻質量的條件下儘量減少編碼比特率,或在一定編碼比特率限制條件下儘量地減小編碼失

原创 數據結構學習:堆與priority_queue

堆的例題初步學習 大頂堆和小頂堆的實現除了用vector實現,可以直接用STL中的priority_queue容器。 便於理解的代碼如下: #include<iostream> #include<algorithm> #inclu

原创 AVS3代碼學習1:HPM6.0框架

VVC基本結束,我的工作任務瞬間從project轉向了paper,這種“突然”是很不適應的。鑑於對看代碼的熱情與日俱增,也是爲實習做一些可能的準備,特此在寫&改paper之餘抽出3小時,重新開一個一直沒敢碰的大坑找找新鮮感,閱讀一