# 數位3維期末考 ## 一,名詞解釋 ### 2023 ![image](https://hackmd.io/_uploads/Bym0tGNVR.png) > 這邊回答是我丟投影片給 claude 再問他的,我還沒上網另外查/逐一比對過投影片裡的內容 [name=yan] **(a) Disparity-Compensation vs Motion-Compensation Prediction in 3D-HEVC** * Disparity-Compensation Prediction (DCP) 用來預測 3D 視訊中不同視角畫面間的差異。 * Motion-Compensation Prediction (MCP) 是用來預測單一視角視訊中連續畫面的時間差異與運動。 DCP 著重於視角間空間上的補償, MCP 著重於時間軸上同一視角的補償。 3D-HEVC 同時使用 DCP 和 MCP 來壓縮 3D 視訊。 :::success **DC 與 MCP 的比較** | 特點 | Disparity Compensation (DC) | Motion Compensation Prediction (MCP) | | ----------- | ------------------------------------------------------------ | ------------------------------------------------------------ | | 原理 | 利用左右視圖之間的視差資訊,也就是同一物體在左右視圖中位置的差異,來預測當前視圖的內容。 | 利用時間上的相關性,也就是相鄰幀之間的運動資訊,來預測當前幀的內容。 | | 優勢 | 適用於靜態或少量運動的場景,有效去除視圖間冗餘資訊 | 適用於動態場景,準確預測幀間變化 | | 缺點 | 複雜運動場景下預測誤差增加 | 過於複雜或快速的運動可能導致運動向量不準確 | | 應用 | 3D 電影、3D 虛擬實境等強調深度感的內容 | 3D 體育賽事、3D 動畫等運動頻繁的內容 | 在 3D-HEVC 中,DC 和 MCP 是兩種互補的技術。**DC 更適合處理靜態或少量運動的場景**,而 **MCP 更適合處理動態場景**。 > Gemini 的回答,跟 claude 應該沒有差異。[name=SH] ::: **DC** ![image](https://hackmd.io/_uploads/SJGsndvVR.png) **MCP** ![image](https://hackmd.io/_uploads/BJUJpOvEC.png) **(b) Video Coder for Independent View vs Depth Maps vs Dependent Views in 3D-HEVC** 3D-HEVC中 * Independent View 使用傳統的單視角視訊編碼器如HEVC編碼。 * Depth Maps 和 Dependent Views 的編碼器則額外使用了DCP等工具。 * Independent View 不需參考其他視角 * Depth Maps 提供每個像素的深度資訊 * Dependent Views 需參考獨立視角和深度圖來進行DCP。 :::success 3D-HEVC 中,針對不同視角的編碼方式: * **獨立視角 (Independent View):** 使用標準 HEVC 編碼,提供基礎 2D 體驗及向後兼容性。 * **深度圖 (Depth Maps):** 使用基於視訊的編碼,提供深度資訊。 * **相依視角 (Dependent Views):** 使用視圖間預測技術,依賴視角補償預測,提供更多視角。 ::: **(c ) UVLC vs CAVLC in AVC** UVLC (Universal VLC)和 CAVLC (Context-based Adaptive VLC) 都是 AVC 用於熵編碼的可變長度編碼。 * UVLC 用於編碼非 transform coefficients 的語法元素 * CAVLC 用於編碼 transform coefficients 。CAVLC 根據上下文自適應調整,編碼效率比 UVLC高。 :::warning * **UVLC (Universal Variable Length Coding)**: * 原理: 使用固定長度的碼字表示不同符號,較短的碼字表示出現頻率較高的符號。 * 優點: 編解碼簡單,速度快。 * 缺點: 壓縮效率較低,不考慮符號之間的相關性。 * **CAVLC (Context-Adaptive Variable Length Coding)**: * 原理: 根據上下文動態調整碼字長度,利用符號之間的相關性提高壓縮效率。 * 優點: 壓縮效率高。 * 缺點: 編解碼較複雜,速度較慢。 **UVLC簡單快速,壓縮效率低;CAVLC壓縮效率高,但較複雜** >補充一些資訊 [name=SH] ::: **(e) Side-by-Side View-3/4 and Depth-1/4 vs CTDP 3/4-Texture Horizontal Packing Formats** 兩者都是水平排列的 3D 視訊封裝格式,將左右視角和深度壓縮到同一影格中。 * Side-by-Side View-3/4 and Depth-1/4:將左右視角壓縮到3/4寬,深度壓縮到1/4寬。 * CTDP 3/4-Texture 則將彩色影像壓縮到 3/4 高,深度壓縮到 1/4 高。CTDP 方式可保留更多彩色影像的解析度。 :::warning **Side-by-Side View-3/4 and Depth-1/4 格式**: * 左右眼視角各佔據畫面寬度的 3/4,並排放置。 * 深度圖佔據畫面寬度的 1/4。 * 優點:簡單直接,相容性高。 * 缺點:水平解析度減半,壓縮效率較低。 **CTDP 3/4-Texture Horizontal Packing 格式**: * 左右眼視角的像素交錯排列,每個像素佔據一半寬度。 * 深度圖以獨立的視訊流傳輸。 * 優點:保持原始解析度,壓縮效率高。 * 缺點:需要特殊播放器或硬體支援,較複雜。 >補充 [name=SH] ::: ### 2022 ![image](https://hackmd.io/_uploads/By7bt7VN0.png) **(a) CU representation in Quadtree in HEVC vs QTBT in VVC** * HEVC 使用 Quadtree 來表示編碼單元(CU),每個 CU 可以遞迴地被分割成四個相等大小的子 CU,CU 最小可到4x4。 * VVC 使用 QTBT(Quadtree plus Binary Tree) 結構,除了 Quadtree 分割外還允許橫向或縱向的Binary Tree 分割。QTBT 提供了更靈活的 CU 分割方式,CU 透過 QTBT 可以進一步分割成更小的單元。 > 3D Video 13 JVET H266.pdf :::success * **關係:** HEVC 和 VVC 都使用四元樹結構來表示 CU 的分割。這種結構允許編碼器根據視訊內容的複雜程度來調整 CU 的大小,從而提高編碼效率。 * **差異:** VVC 中的 QTBT 比 HEVC 中的四元樹更靈活,因為它允許使用多類型樹 (MTT) 進行更細緻的分割。這使得 VVC 能夠更好地處理複雜的視訊內容,並在相同視覺品質下實現更高的壓縮率。 ::: **(b) LM Chroma Mode Prediction in HEVC vs CCLM Prediction in VVC** * LM Chroma Mode Prediction in HEVC 是一種 Intra 預測模式,它利用重建的同位置 luma 樣本來預測 chroma 樣本。 * CCLM(Cross-Component Linear Model) Prediction in VVC 使用一個線性模型來預測 chroma 樣本,系數由鄰近重建的 luma 和 chroma 樣本計算得到。CCLM 比 LM Chroma Mode 更準確地捕捉了 luma 和 chroma 的相關性。VVC 還提供 MMLM (Multiple Model LM)模式,使用多個線性模型來進一步提升 chroma 預測的性能。 > 3D Video 14 AI-based Image and Video Coding shorten.pdf **(c ) No-Square Quadtree in HEVC vs Unified Multi-Type Tree in VVC** HEVC並沒有支持No-Square Quadtree,它的CU分割產生的都是正方形的子CU。VVC引入了Unified Multi-Type Tree,不僅支持Quadtree,還支持Binary和Ternary Tree分割。MTT允許產生長方形的CU,大小可以是128x64、64x32等。MTT結合QT和BT,提供了更靈活和高效的CU分割方式,可以更好地適應視訊內容的特性。 > 這個回答感覺怪怪的 之後再查 [name=yan] > 3D Video 13 JVET H266.pdf :::warning **HEVC 的 No-Square Quadtree (NSQT)** * **分割方式:** * 僅允許將 CU 進行水平或垂直的二分法分割,形成方形區塊。 * 最大的 CU 大小為 64x64 像素。 * **優點:** * 結構簡單,編碼效率較高。 * **缺點:** * 無法靈活適應不同形狀的內容,特別是對於非方形的物件或區域,分割效率較低。 **VVC 的 Unified Multi-Type Tree (UMTT)** * **分割方式:** * 在四叉樹分割的基礎上,引入了二元樹 (Binary Tree) 和三元樹 (Ternary Tree) 分割。 * 二元樹分割允許將 CU 水平或垂直分割為兩個相等的矩形區塊。 * 三元樹分割允許將 CU 水平分割為三個相等的矩形區塊。 * 最大的 CU 大小為 128x128 像素。 * **優點:** * 分割更靈活,能更好地適應不同形狀的內容,提高編碼效率。 * **缺點:** * 結構較複雜,編碼和解碼過程需要更多的計算資源。 * HEVC (NSQT):簡單,但分割不靈活。 * VVC (UMTT):靈活,但較複雜。 ::: **(d) Deblocking Filter vs Adaptive Loop filter for HEVC** Deblocking Filter和Adaptive Loop Filter都是HEVC中的環路濾波器,用於減少編碼區塊邊界的塊狀效應。 * Deblocking Filter 對區塊邊界進行有條件的濾波,根據相鄰樣本值的差異和 QP 等參數來決定濾波強度 * ALF 則是在 Deblocking 之後,自適應地對整個編碼圖像進行濾波,濾波系數通過最小化重建圖像與原始圖像間的失真來求取。ALF 能夠進一步去除 Deblocking 後剩餘的編碼失真,但計算複雜度也更高。 > 3D Video 13 JVET H266.pdf :::success | 特點 | Deblocking Filter (去區塊濾波器) | Adaptive Loop Filter (自適應迴圈濾波器) | | ----------- | ----------------------------------------------------- | ------------------------------------------------- | | 主要作用 | 減少區塊效應 | 減少量化誤差和振鈴效應 | | 作用原理 | 平滑區塊邊界像素值 | 自適應調整濾波強度和係數,細微調整像素值 | | 濾波強度 | 可調,通常在低碼率下較高 | 自適應調整 | | 計算複雜度 | 較低 | 較高 | | 應用順序 | 在解碼過程中,先進行去區塊濾波,再進行自適應迴圈濾波 | 在解碼過程中,去區塊濾波之後 | ::: **(e) Mode Dependent Transform vs Mode Dependent Coefficient Scan** Mode Dependent Transform 和 Mode Dependent Coefficient Scan 都是 VVC 中用於提升編碼效率的工具。 * Mode Dependent Transform 根據 Intra 預測模式來選擇不同的變換核函數,例如對於接近水平或垂直方向的預測模式使用 DST 變換,其它模式使用 DCT 變換。 * Mode Dependent Coefficient Scan 也根據 Intra 預測模式來選擇不同的係數掃描順序,例如對於接近水平方向的模式使用垂直掃描,接近垂直方向的模式使用水平掃描。 這兩種模式相關的技術都是為了更好地匹配預測信號的方向性和能量分佈特性,從而提高變換和熵編碼的效率。 > 3D Video 13 JVET H266.pdf 2021 ![image](https://hackmd.io/_uploads/Sk2QZNENR.png) **(1) Depth-assisted Texture Coding vs Texture-Assisted Depth Coding in HEVC** * Depth-assisted Texture Coding 是利用深度信息來輔助紋理(Texture)的編碼,可以利用深度圖進行運動估計和補償,改進紋理編碼的效率。 * Texture-Assisted Depth Coding 則是利用紋理信息來輔助深度圖的編碼。例如,可以利用紋理的邊緣信息來預測深度圖的內容,或利用重建的紋理塊來預測共置的深度塊。 兩種方法都利用了紋理和深度之間的相關性,但使用的參考信息和具體編碼方式不同。在3D-HEVC中都有使用到這兩種編碼工具。 > 3D Video 12 HEVC and Its 3D.pdf **(3) Advanced MV Prediction vs Motion Merging Scheme in HEVC** 都是HEVC中用於提升inter編碼效率的技術 * Advanced MV Prediction 從空間和時間鄰近塊的運動信息中選擇若干個 MV 候選作為當前塊的MV預測值。 * Motion Merging 則允許當前塊與其鄰近塊共享運動信息,即使用與鄰近塊相同的 MV 和參考圖像。 * AMVP 需要顯式編碼 MV 差分信息,而 Merging 只需編碼一個索引值(merged_idx)。AMVP 提供了更精確的 MV 預測,Merging 則可以節省 MV 編碼成本。 > 3D Video 12 HEVC and Its 3D.pdf **(5) View-3/4 and Depth-1/4 vs CTDP 3/4-Texture Vertical Packing Formats** > 後面那個跟 2023(e) 不一樣? 垂直跟水平? [name=yan] 都是 3D視 頻的打包格式,將左右視圖和對應的深度圖打包到同一視頻禎中進行傳輸。 * View-3/4 and Depth-1/4:水平打包方式,左右視圖各占 3/4 寬度,深度圖占 1/4 寬度。 * CTDP 3/4-Texture Vertical:垂直打包方式,將左右視圖疊加後占 3/4 高度,色度分量經過重採樣後與深度圖一起占1/4高度。兩種方案的主要區別是打包方向不同,CTDP方案可以為視圖分配更多像素,並通過色度重採樣進一步節省深度圖開銷。 > 3D Video 16 DTV Audio and Transmission.pdf 2020 ![image](https://hackmd.io/_uploads/Hk25rEEVA.png) **(1) Temporal Scalablity vs Spatial Scalability in video coding** 都屬於視頻的可適性編碼(Scalable Video Coding)技術。 * Temporal Scalability:透過編碼不同幀率的視頻層來實現的,解碼器可以根據網絡帶寬等條件選擇解碼不同幀率的視頻層。[針對不同的時間解析度] * Spatial Scalability:透過編碼不同空間解析度的視頻層來實現的,每一層對應不同的畫面大小。[針對不同的空間解析度] 兩者可以結合起來使用,以適應不同的網絡和設備需求。在 H.264/SVC 標準中對這兩種可適性編碼都進行了詳細的定義。 > 3D Video 09 AVC H264.pdf **(2) Reference Picture Selection vs Reference Picture Resampling in H.263+** * Reference Picture Selection (RPS):H.263+ 引入的一種基於編碼宏塊的參考圖像選擇機制。編碼器可以為每個宏塊指定一個參考索引(Reference Picture Index),解碼器根據該索引從多幀參考圖像隊列中選擇相應的參考圖像進行運動補償。 * Reference Picture Resampling:H.263+ 中用於生成額外參考圖像的技術,編碼器可以對已編碼圖像進行二次採樣(Downsample或Upsample),生成不同解析度和質量的參考圖像。 RPS 增加了編碼器選擇參考圖像的自由度,Resampling 則擴充了可選的參考圖像類型,兩者都可以提升編碼效率。 > 3D Video 09 AVC H264.pdf **(4) Error Concealment in Video Decoder vs Error Resilience in Video Coding** 都是視頻傳輸中抵禦錯誤和數據丟失的技術 * Error Concealment:接收端的視頻解碼器使用的一種技術。當檢測到傳輸錯誤或數據丟失時,解碼器可以利用已接收到的圖像內容對丟失區域進行修復和掩蓋,避免畫面產生黑塊等顯著的失真。 * Error Resilience:主要是指在視頻編碼階段採取的一些抗錯措施,如插入同步標記、數據分組、可逆變換等,使得視頻碼流能夠承受一定的傳輸錯誤而不至於完全無法解碼。 Error Concealment是解碼端的處理,Error Resilience則貫穿于整個編碼和傳輸的過程。 > 3D Video 09 AVC H264.pdf **(5) Transform Units in HEVC vs Adaptive Multiple Core Transform in VVC** * Transform Units (TU):HEVC 中對 CU 進行變換和量化的基本單元。在 HEVC 中,每個 CU 可以劃分為一個或多個 TU,但 TU 不能跨越 CU 的邊界。TU 支持的最大變換塊大小為 32x32。 * Adaptive Multiple Core Transform (AMT) in VVC:在前述基礎上進行了擴展。AMT 允許對一個CU 使用多個不同的變換核心(DCT-2, DST-7等)對應不同的 TU。此外,AMT 還支持最大 64x64 的變換塊大小,並可以對變換矩陣進行更精細的量化。 AMT 比 HEVC 的 TU 劃分更加靈活,變換類型更加多樣化,有助於進一步提升編碼性能。 > 3D Video 13 JVET H266.pdf 2019 ![image](https://hackmd.io/_uploads/BJCftyPEC.png) **(a-c.e) 2022(a-c.e)** **(d) HDR vs SDR content** HDR (High Dynamic Range)和SDR (Standard Dynamic Range)描述了視訊內容的動態範圍,也就是最亮和最暗區域之間的比例。 * HDR:透過擴展亮度範圍和增加位元深度,能夠表示更廣泛的亮度層級,呈現更豐富、逼真的畫面。 * SDR:亮度範圍和位元深度有限,難以完整再現真實場景中的光影變化。 為了有效編碼HDR內容,視訊壓縮標準需要進行相應的擴展和優化,如HEVC和VVC都新增了專門的HDR編碼工具。同時,考慮到SDR仍是主流,HDR編碼通常還需要保證與SDR的互通性。 > 3D Video 13 JVET H266.pdf ## 問答題 > 我不知道題目要不要把截圖重放 1 次誒 如果你們有其他排列上的想法可以直接修改 [name=yan] ![image](https://hackmd.io/_uploads/BybbXgvE0.png) **2. H.265/HEVC 相較於 H.264/AVC 提出的 4 個主要進階功能及其改善編碼效能的原因:** | 進階功能 | 改善編碼效能原因 | |:--|:--| | 更大和更彈性的編碼單元(CU)結構 | 允許使用最大64x64的CU,可更有效地適應不同視訊內容的特性,提升編碼效率 | | 35種方向的intra預測模式 | 提供更多方向的intra預測選擇,可更準確地預測像素值,減少需要編碼的殘差 | | 先進運動向量預測(AMVP)技術 | 從時間和空間鄰近區塊獲取多個MV候選,可更精確地預測當前區塊的運動資訊,減少MV編碼開銷 | | 新增Sample Adaptive Offset(SAO)濾波器 | 在Deblocking Filter之後對重建影像進行自適應補償,可進一步減少編碼失真,改善主觀和客觀質量 | Advanced Function | Reason for Improved Coding Performance | |:--|:--| | Larger and more flexible Coding Unit (CU) structure | Allows using CUs up to 64x64, which can more effectively adapt to different video content characteristics and enhance coding efficiency | | 35 directional intra prediction modes | Provides more directional choices for intra prediction, enabling more accurate pixel value prediction and reducing residuals that need to be encoded | | Advanced Motion Vector Prediction (AMVP) technique | Obtains multiple MV candidates from temporally and spatially neighboring blocks, allowing more precise prediction of current block's motion information and reducing MV coding overhead | | Addition of Sample Adaptive Offset (SAO) filter | Performs adaptive compensation on the reconstructed picture after the Deblocking Filter, further reducing coding distortion and improving subjective and objective quality | > 3D Video 13 JVET H266.pdf **3. H.266/VVC相較於H.265/HEVC提出的4個主要進階功能及其改善編碼效能的原因:** > 我還在想這個4否按照他投影片寫會比較好壓? [name=yan] | 進階功能 | 改善編碼效能原因 | |:--|:--| | 多種類型分割結構(Multi-Type Tree),包括QT、BT、TT | 結合多種分割類型,支援更靈活的編碼單元劃分,可更有效地表示視訊內容的局部特性,提升編碼效率 | | 改進的變換編碼工具,如Subblock Transform (SBT) | 對CU進行子塊變換,可減少預測殘差的空間冗餘,提升變換編碼效率 | | 引入Affine運動補償模式 | 使用仿射變換對塊進行運動預測和補償,可更好地處理旋轉、縮放等複雜運動,提升inter預測效率 | | 改進的熵編碼工具,如Context-based Adaptive Binary Arithmetic Coding (CABAC) | 使用更多上下文信息和更複雜的概率更新機制,可更精確地估計符號概率,提高熵編碼效率 | | Advanced Function | Reason for Improved Coding Performance | |:--|:--| | Multi-Type Tree (MTT) partitioning structure, including QT, BT, and TT | Combines multiple partitioning types, supporting more flexible coding unit division, which can more effectively represent local characteristics of video content and enhance coding efficiency | | Improved transform coding tools, such as Subblock Transform (SBT) | Performs subblock transform on CUs, reducing spatial redundancy of prediction residuals and improving transform coding efficiency | | Introduction of Affine motion compensation mode | Uses affine transformation for motion prediction and compensation of blocks, better handling complex motions like rotation and scaling, and enhancing inter prediction efficiency | | Enhanced entropy coding tools, such as Context-based Adaptive Binary Arithmetic Coding (CABAC) | Utilizes more context information and sophisticated probability update mechanisms, enabling more accurate estimation of symbol probabilities and improving entropy coding efficiency | > 3D Video 13 JVET H266.pdf ![image](https://hackmd.io/_uploads/rksY7gwV0.png) **2. (15%) 請列舉H.263相較於H.261所提出的四個主要先進功能 (5%)。請說明這四個主要功能為什麼能夠改善編碼效能 (10%)。** **問題1:列舉H.263相較於H.261所提出的四個主要先進功能** 1. **Unrestricted Motion Vector Mode** - 動態向量現在可以指向畫面外部,這使得當動態向量指向編碼區域外的像素時,最後一個完整的像素被使用。這種方式特別對於邊緣部分和小圖片格式有顯著的效果增益。此外,動態向量的範圍也進行了擴展,從[-16, 15.5]擴展到[-31.5, 31.5],在4CIF和16CIF中尤為有用。 2. **Syntax-Based Arithmetic Coding Mode** - 所有可變長度編碼/解碼操作被替換為算術編碼/解碼。這種方法可以根據語法和模型來編碼符號,並通過算術編碼進行處理。這可以提供大約5%的比特率減少,雖然不常使用,但在需要時可以顯著提高編碼效率。 3. **Advanced Prediction Mode** - 允許每個宏塊有四個動態向量,每個8x8塊一個,並使用重疊塊運動補償來減少塊效應,從而提高主觀畫面質量。此外,動態向量可以指向畫面外部,這樣可以提供更好的運動預測和更高的編碼效率。 4. **PB-Frames Mode** - 這種模式允許在不顯著增加比特率的情況下將幀速率加倍。PB幀由一個P幀和一個B幀共同編碼組成,其中B幀根據前面的P幀進行預測,而P幀則是根據前面解碼的P幀進行預測。 **問題2:說明這四個主要功能為什麼能夠改善編碼效能** 1. **Unrestricted Motion Vector Mode** - **改善效能原因**:動態向量可以指向畫面外部,這意味著在處理運動邊緣和背景移動時能夠獲得更高的準確性和靈活性,從而提高編碼效率和畫面質量。 2. **Syntax-Based Arithmetic Coding Mode** - **改善效能原因**:算術編碼相比於傳統的可變長度編碼具有更高的壓縮效率,能夠減少比特率並提高編碼的整體效率,特別是在高壓縮需求的場景中表現更為優異。 3. **Advanced Prediction Mode** - **改善效能原因**:允許更精細的運動向量預測和重疊塊運動補償,能夠顯著減少塊效應,提高預測的準確性,從而提升整體畫面質量和編碼效率。 4. **PB-Frames Mode** - **改善效能原因**:通過將P幀和B幀一起編碼,可以有效地利用空間和時間冗餘,在不顯著增加比特率的情況下提高幀速率,從而提升視頻的流暢度和畫面質量。 **3. (15%) 請列舉MPEG-2相較於MPEG-1所提出的四個主要先進功能 (5%)。請說明這四個主要功能為什麼能夠改善編碼效能 (10%)。** **問題1:列舉MPEG-2相較於MPEG-1所提出的四個主要先進功能** 1. **Interlace Support** - MPEG-2包括對隔行掃描視頻的支持,這在廣播電視和高清電視(HDTV)中很常見。這使得MPEG-2能夠高效地壓縮隔行掃描的視頻格式,從而提高廣播內容的視頻質量。 2. **Scalability and Compatibility** - MPEG-2引入了可擴展視頻編碼,這使得視頻可以在多個分辨率和比特率下進行編碼。這確保了在各種設備和網絡條件下的兼容性,為不同用戶提供更好的觀看體驗。 3. **Interoperability with Broadcast TV/HDTV** - MPEG-2與高清電視等廣播標準的兼容性確保了其可以用於高清廣播。這種互操作性使得從標清到高清的過渡更加順暢,提升了整體觀看質量。 4. **Cell Loss Resilience** - MPEG-2包含了一些特性,可以提高視頻流對數據包丟失的抵抗能力,這對於在容易發生數據丟失的網絡上進行傳輸至關重要。這確保了視頻播放的可靠性,減少了觀看過程中的圖像失真和中斷。 **問題2:說明這四個主要功能為什麼能夠改善編碼效能** 1. **Interlace Support** - **改善效能原因**:支持隔行掃描使得MPEG-2能夠處理更廣泛的視頻格式,尤其是廣播電視中常見的格式,從而提高了編碼效率和視頻質量。 2. **Scalability and Compatibility** - **改善效能原因**:可擴展視頻編碼允許視頻在不同的分辨率和比特率下編碼,這樣可以根據網絡條件和設備性能動態調整,提供最佳的視頻質量和傳輸效率。 3. **Interoperability with Broadcast TV/HDTV** - **改善效能原因**:互操作性確保了MPEG-2可以無縫集成到現有的廣播系統中,支持高清內容的傳輸,提升了視頻的清晰度和觀看體驗。 4. **Cell Loss Resilience** - **改善效能原因**:抗丟包性特性提高了視頻流在不穩定網絡條件下的穩定性和可靠性,減少了丟包對視頻質量的影響,從而提升了用戶的觀看體驗。 ![image](https://hackmd.io/_uploads/SJf0mxwVA.png) **2. (15%) 請畫出一個流程圖來展示3D-HEVC視圖合成優化的概念 (5%)。請詳細解釋深度值優化編碼的操作 (10%)。** **問題一:繪製3D-HEVC視圖合成優化的流程圖** ![image](https://hackmd.io/_uploads/B13TFYDER.png) **問題二:解釋深度值優化編碼的詳細操作** 1. **視差補償預測 (Disparity-compensated prediction, dependent views only)**: - 利用視差信息來預測相鄰視圖中的深度值,從而減少需要編碼的數據量。這種方法特別適用於依賴視圖的深度圖編碼。 2. **降低運動向量精度 (Reduced motion vector accuracy)**: - 在深度圖的編碼中,降低運動向量的精度以減少編碼的比特數。同時,這種方法還能夠平衡計算複雜度和編碼效率。 3. **禁用環內濾波器 (Disabling of in-loop filters, de-blocking, ALF, SAO)**: - 為了減少編碼過程中的計算量,可以選擇禁用環內濾波器(如去區塊濾波、適應性環內濾波和取樣自適應補償)。這樣做可以在某些情況下提高編碼效率,雖然會稍微影響視覺質量。 4. **深度建模模式 (Depth modeling modes)**: - 利用不同的深度建模模式來進行深度值的表示和編碼。這些模式可以根據場景的具體特徵選擇最優的建模方法,以提高編碼效率。 5. **運動參數繼承 (Motion parameter inheritance)**: - 在編碼深度圖時,繼承視頻編碼中的運動參數,從而減少需要獨立編碼的運動信息數量。這有助於減少比特流的大小。 6. **視圖合成優化 (View synthesis optimization, encoder only)**: - 在編碼過程中進行視圖合成優化,即通過優化深度圖來提高合成視圖的質量。這樣可以確保解碼後的視圖在質量上接近原始視圖,從而提升用戶的觀看體驗。 **3. (10%) 請解釋H.264 B-picture的編碼概念 (5%)。請解釋為什麼B-picture編碼方法能夠提高編碼效率並提供時間伸縮性 (5%)?** **問題1:解釋H.264 B-picture的編碼概念** - B-picture是使用雙向預測的圖片幀,可以同時利用前後兩個參考幀進行編碼。這種雙向預測使得B-picture能夠更高效地捕捉和壓縮時間上的冗餘信息,從而提高編碼效率。 **問題2:解釋為什麼B-picture編碼方法能夠提高編碼效率並提供時間伸縮性** 1. **Improve Coding Efficiency** - 由於B-picture可以同時利用前後兩個參考幀進行預測,它能夠更精確地預測和壓縮視頻數據中的時間冗餘。因此,使用B-picture可以顯著提高編碼效率,減少所需的比特數量。 2. **Provide Temporal Scalability** - B-picture可以靈活地進行時間上的伸縮,這意味著在傳輸或播放視頻時,可以在不顯著影響視頻主要質量的情況下,通過刪除一些B-picture來適應不同的帶寬和存儲條件,提供更靈活的視頻服務。 **3. (15%) 請簡要說明H.264/AVC中的B-picture設計 (5%)。它相較於P-picture有什麼優勢 (5%)。請解釋B-picture的五種模式 (5%)。** **問題1:簡要說明H.264/AVC中的B-picture設計** - B-picture是雙向預測的圖像幀,它可以同時利用前後兩個參考幀進行編碼。這使得B-picture能夠更有效地捕捉和壓縮時間上的冗餘,從而提高編碼效率。 **問題2:B-picture相較於P-picture的優勢** ![image](https://hackmd.io/_uploads/B1pAo5DNA.png) **問題3:解釋B-picture的五種模式** ![image](https://hackmd.io/_uploads/rk4cs9PVA.png) **4. (15%) 請說明MPEG-4、MPEG-7和MPEG-21的主要功能。此外,請畫一張圖來進一步說明它們之間的關係。** ![image](https://hackmd.io/_uploads/Bkrv25PVC.png) ![image](https://hackmd.io/_uploads/ryD_35DEA.png) ![image](https://hackmd.io/_uploads/ByTBNgw4A.png) **2. (20%) 請列舉H.265/HEVC相較於H.264/AVC所提出的四個主要先進功能 (5%)。請說明這四個主要功能為什麼能夠改善編碼效能 (15%)。** **問題1:列舉H.265/HEVC相較於H.264/AVC所提出的四個主要先進功能** 1. **Larger and More Flexible CU (Coding Unit)** - 最大到64x64的更大且更靈活的編碼單元,允許更高效的宏塊編碼。 2. **INTRA Prediction Modes** - 引入了35種模式(包括平面模式、DC模式和33個方向),提供更細緻的內部預測能力。 3. **Advanced Motion Vector Prediction/Coding** - 先進的運動向量預測和編碼技術,提高了運動補償的精度和效率。 4. **Large Transform** - 支持從4x4到32x32的整數離散餘弦變換(DCT),允許在不同的分辨率下進行有效的編碼。 **問題2:說明這四個主要功能為什麼能夠改善編碼效能** 1. **Larger and More Flexible CU (Coding Unit)** - **改善效能原因**:更大的編碼單元可以更有效地處理高分辨率圖像和視頻內容,減少編碼器的運算複雜度,同時提高編碼效率。 2. **INTRA Prediction Modes** - **改善效能原因**:更多的預測模式允許編碼器選擇最佳的預測方向,從而減少預測誤差,提高編碼效率和圖像質量。 3. **Advanced Motion Vector Prediction/Coding** - **改善效能原因**:先進的運動向量預測和編碼技術能夠更準確地捕捉運動信息,減少運動補償誤差,從而提高編碼效率。 4. **Large Transform** - **改善效能原因**:支持大尺寸的變換能夠更好地捕捉圖像和視頻中的低頻信息,從而提高壓縮效率,同時減少量化誤差,提升視頻質量。 **3. (20%) 請列舉H.266/VVC相較於H.265/HEVC所提出的四個主要先進功能 (5%)。請說明這四個主要功能為什麼能夠改善編碼效能 (15%)。** **問題1:列舉H.266/VVC相較於H.265/HEVC所提出的四個主要先進功能** 1. **Quad-Tree plus Binary Tree Partitioning (QTBT)** - QTBT使用四叉樹和二叉樹結構來進行編碼單元的分割,從128x128的正方形塊開始,可以更靈活地劃分為更小的塊。 2. **Intra Prediction Modes** - 在HEVC基礎上增加了更多的預測模式,並支持更大的塊大小,同時引入位置和模式依賴的濾波和平滑處理。 3. **Sub-CU based Motion Vector Prediction** - 引入子CU級別的運動矢量預測,包括替代時域運動矢量預測(ATMVP)和時空運動矢量預測(STMVP),允許更細粒度的運動矢量推導。 4. **Affine Motion Vector Derivation** - 對每個4x4塊以1/16像素分辨率推導運動矢量場,通過控制點運動矢量(CPMV)的信號傳輸和差異計算來實現更精確的運動描述。 **問題2:說明這四個主要功能為什麼能夠改善編碼效能** 1. **Quad-Tree plus Binary Tree Partitioning (QTBT)** - **改善效能原因**:QTBT的更靈活分割結構允許編碼器根據圖像內容更精確地分割塊,從而更有效地壓縮圖像,提高編碼效率和圖像質量,減少塊效應。 2. **Intra Prediction Modes** - **改善效能原因**:更多的預測模式和更大的塊大小可以捕捉圖像中的更多細節,減少預測誤差,從而提高編碼效率。同時,位置和模式依賴的濾波和平滑處理能進一步減少噪聲,提高圖像質量。 3. **Sub-CU based Motion Vector Prediction** - **改善效能原因**:子CU級別的運動矢量預測允許更精細地捕捉運動信息,減少運動補償誤差。替代時域和時空運動矢量預測技術提供了更多的合併候選,增加了編碼靈活性和效率。 4. **Affine Motion Vector Derivation** - **改善效能原因**:仿射運動模型可以更精確地描述物體的複雜運動,特別是旋轉和縮放,減少塊效應。這提高了運動估計的精度,從而提高了整體編碼效率和圖像質量。 > 上面的答案(從H.263開始)是我把解答ppt丟給gpt,讓它根據ppt內容回答的,還沒詳細驗證過對不對 [name=hua] > 從這裡往下 4 我臨時讓 gpt 生成的,很匆忙錯誤應該很多,還是以投影片為主 [name=hua] > ![image](https://hackmd.io/_uploads/HJFgyN0EA.png) ![image](https://hackmd.io/_uploads/ryiUyEREC.png) | Features / Standards | H.261 | H.262 | H.263 | H.264 | H.265 | H.266 | |----------------------|------------------|-----------------|------------------|-------------------|--------------------|--------------------| | **Bit rate** | Typically 64 to 384 Kbps | Higher than H.261 | From 20 Kbps to 2 Mbps | ≤ 20 Kbps to high HD rates | Similar to H.264 but more efficient | Even more efficient than H.265 | | **Block size** | 16x16 | 16x16 | 16x16, 8x8 | 16x16, 16x8, 8x16, 8x8, 8x4, 4x8, 4x4 | Varied sizes including up to 64x64 | More flexible partitioning options than H.265 | | **Loop filter** | Yes | Yes | Yes | Yes, with enhancements | Yes, more advanced | Yes, further refined | | **Motion vector** | One per macroblock | Up to 4 per macroblock | Up to 4 per macroblock | Up to 16 per macroblock | Significantly more with advanced prediction | Most advanced, with refined predictions | | **DCT block size** | 8x8 | 8x8 | 8x8 | 4x4 (integer DCT) | Larger and varying sizes | More flexible and larger transformations | | **Frame size** | QCIF, CIF | Sub-QCIF, QCIF, CIF, 4CIF, 16CIF | Sub-QCIF, QCIF, CIF, 4CIF, 16CIF | Sub-QCIF, QCIF, CIF, 4CIF, 16CIF | Up to 8K UHD | Up to 8K UHD with better handling | | **Motion compensation** | Integer pixel | Half & integer pixel | Half & integer pixel | Quarter, half & integer pixel | Highly accurate with multiple options | Highly precise with improvements | | **Pictures** | I-, P- | I-, P-, B- | I-, P-, B- | I-, P-, B- | I-, P-, B- | I-, P-, B- | | **Coding method** | VLC from fixed look up table | VLC from fixed look up table | VLC from fixed look up table | Exp-Golomb, CAVLC, CABAC | Exp-Golomb, CAVLC, CABAC | More advanced than H.265, including new tools | | **End of block marker** | Yes | No | No | No | No | No | ![image](https://hackmd.io/_uploads/Bki2REAEA.png) **4. (15%) 對於從左和右彩色幀的深度估計,請繪製一張圖並解釋立體匹配中局部優化的主要功能 (5%)。請解釋這些主要功能 (5%),並指出它們的弱點(如果有的話)(5%)。如何改進這些弱點?(5%)** **問題1:畫圖並解釋立體匹配中局部優化的主要功能** ![image](https://hackmd.io/_uploads/B1J9kr0NA.png) 1. **Matching Cost Computation** - **說明**:計算匹配成本是立體匹配的第一步。常用的方法包括SAD(絕對差值和)和Census變換。這些方法用於衡量左圖和右圖像素之間的相似度。公式如下: $$ C_d(x, y) = \alpha C_d^{SAD}(x, y) + (1 - \alpha) C_d^{CENSUS}(x, y) $$ 其中,$C_d^{SAD}$ 表示絕對差值和,$C_d^{CENSUS}$ 表示Census變換的海明距離。 2. **Cost Aggregation** - **說明**:將匹配成本在一定範圍內進行聚合,以減少噪聲對匹配結果的影響。常用的方法包括水平和垂直方向的加權聚合。公式如下: $$ C_d^{Hor}(x) = C_d^{LtoR}(x) + C_d^{RtoL}(x) $$ $$ C_d^{Ver}(x) = C_d^{UtoD}(x) + C_d^{DtoU}(x) $$ 3. **Disparity Optimization** - **說明**:優化視差圖以找到最佳的像素匹配。這一步通常會使用全局或局部的優化方法來提高匹配的準確性。 4. **Disparity Refinement** - **說明**:進行視差圖的細化處理,去除錯誤匹配並提升視差圖的精度。這一步通常會使用交叉檢查和遮擋區域檢測等技術。公式如下: $$ D_{Left}^{weight}(x, y) = D_{Left}(x, y) \cdot BackW_{Left}(x, y) $$ $$ D_{Right}^{weight}(x, y) = D_{Right}(x, y) \cdot BackW_{Right}(x, y) $$ $$ D_{Norm}(x, y) = \frac{F_{Per}(D_{weight}(x, y))}{F_{Per}(BackW(x, y))} $$ **問題2:這些主要功能的優點和弱點** 1. **Matching Cost Computation** - **優點**:能夠提供初步的匹配成本,為後續的成本聚合和視差優化提供基礎。 - **弱點**:在存在遮擋和大光照變化時,匹配成本計算可能不夠準確。 2. **Cost Aggregation** - **優點**:能夠減少匹配過程中的噪聲,提高匹配結果的穩定性。 - **弱點**:加權聚合的範圍和方法選擇對結果有較大影響,不合適的選擇可能會降低匹配精度。 3. **Disparity Optimization** - **優點**:通過優化方法可以找到更加準確的像素匹配,提高視差圖的準確性。 - **弱點**:全局優化方法計算量大,局部優化方法可能陷入局部最優解。 4. **Disparity Refinement** - **優點**:能夠進一步提高視差圖的精度,減少錯誤匹配。 - **弱點**:遮擋區域的檢測和處理較為困難,容易引入新的誤差。 **問題三:改進這些弱點的方法** 1. **Matching Cost Computation** - **改進方法**:引入更加魯棒的匹配成本計算方法,如基於梯度的信息來輔助匹配。 2. **Cost Aggregation** - **改進方法**:使用自適應加權聚合方法,根據圖像內容動態調整加權範圍和方法。 3. **Disparity Optimization** - **改進方法**:結合全局優化和局部優化的方法,既保證計算效率又提升匹配精度。 4. **Disparity Refinement** - **改進方法**:引入深度學習方法來識別和處理遮擋區域,進一步提升視差圖的精度。 ![image](https://hackmd.io/_uploads/HymiwKRVR.png) **(d) 背景生成是什麼?它的優點和缺點是什麼?** **問題一:背景生成是什麼** ![image](https://hackmd.io/_uploads/BkgxOKA4C.png) **問題二:優點** - 高斯混合模型用於紋理信息處理,有助於生成高質量的背景參考圖像。 - 深度圖信息的使用可以檢測運動物體,從而提升背景圖像的準確性和一致性。 - 對於單視角加深度圖格式特別有效,這種格式僅需使用一個視角的深度信息。 - 實驗結果表明,這種方法能在主觀和客觀上均取得顯著的增益,增益範圍在1到3 dB,優於修復方法。 **問題三:缺點** - 需要多幀圖像來估計背景,處理時間和計算資源需求較高。 - 背景生成過程需要處理一些未移動的物體,這可能會增加處理的複雜性。 ![image](https://hackmd.io/_uploads/SJrFcYC40.png) **6. (20%) 除了LM模式外,請解釋HEVC編碼系統中所有PU大小的其他5種色度預測模式 (10%)。請詳細描述LM模式 (10%)。** **問題一:解釋HEVC編碼系統中所有PU大小的其他5種色度預測模式** 1. **DM Mode (Derived Mode)** - **說明**:與亮度內部預測模式相同。這意味著色度預測模式直接從亮度預測模式推導而來。 2. **Planar Mode** - **說明**:這種模式使用平滑變化來進行預測,適合具有平坦顏色變化的區域。這是一種平面內插法。 3. **Vertical Mode** - **說明**:這種模式根據塊頂部的像素值進行垂直預測。適合於具有垂直紋理的區域。 4. **Horizontal Mode** - **說明**:這種模式根據塊左側的像素值進行水平預測。適合於具有水平紋理的區域。 5. **DC Mode** - **說明**:這種模式使用塊邊界像素的平均值進行預測。適合於顏色變化不大的區域。 **問題二:詳細描述LM模式** **LM Mode (Linear Model Mode)** - **說明**:LM模式通過從亮度預測色度,使用以下公式: $$ Pred_C(x, y) = \alpha \cdot Rec'_L(x, y) + \beta $$ 其中,$\alpha$ 和 $\beta$ 是通過最小二乘法估計得到的。這種模式結合了亮度和色度信息來進行預測,以提高預測精度。 - **步驟**: 1. **亮度和色度的取樣**:首先對亮度進行垂直和水平的降採樣。 2. **線性回歸**:使用線性回歸方法估計 $\alpha$ 和 $\beta$,然後利用這些參數進行色度預測。