【Atlas500】入门到放弃(六)——【DVPP】浅析HFBC格式数据存在的意义
轉載自:https://bbs.huaweicloud.com/blogs/156199, 作者:山人
【摘要】 HFBC格式是一種數據壓縮格式,是VDEC解碼后輸出的每一幀數據的格式(Hisi Frame Buffer Compress),而對此格式進行解壓縮由VPC完成,因VDEC和VPC是兩個獨立模塊,所以用戶在使用過程中可以看到HFBC數據。
HFBC格式是一種數據壓縮格式,是VDEC解碼后輸出的每一幀數據的格式(Hisi Frame Buffer Compress),而對此格式進行解壓縮由VPC完成,因VDEC和VPC是兩個獨立模塊,所以用戶在使用過程中可以看到HFBC數據。
為什么要有HFBC格式呢?
因為VDEC解碼每一幀后,將此幀圖像進行HFBC壓縮之后再寫入內存,既可以降低寫入內存的數據量,又可以減少輸出此幀的耗時,從而獲取更高解碼性能。
舉例:如下圖,比如此幀圖像分辨率為19201080,正常一幀圖像大小為19201080*3/2=3110400?B,所以需要寫入內存的數據量為3110400B,而經過HFBC壓縮后(一般壓縮率為50%),寫入內存數據量僅有1555200B,所以既減少了寫入內存的數量,也減少了寫入內存的耗時,從而性能更高。
怎么使用HFBC格式更優?
因用戶最終需要的是YUV數據,而VDEC輸出的是HFBC數據,所以用戶需要調用VPC模塊對HFBC數據進行解壓縮得到YUV數據。而一般場景下,用戶最終想要的是送入網絡大小的圖(比如224x224),并不是原始圖像(比如1920x1080),所以當VDEC解碼后輸出每幀HFBC數據后,用戶可以將HFBC數據送入VPC并同時配置好resize/crop參數,驅使VPC直接輸出需要的圖像數據,即一次性完成【HFBC解壓縮+resize/crop】操作,這樣是最佳使用方式。
若用戶需要原始圖像,則VDEC輸出HFBC格式相比VDEC直接輸出YUV格式并沒有優勢(因為VDEC輸出HFBC后,還需要VPC讀入HFBC數據解壓縮后再輸出YUV數據),但當前芯片VDEC不能直接輸出YUV數據,所以只能使用HFBC格式數據給VPC進行處理。
總結
以上是生活随笔為你收集整理的【Atlas500】入门到放弃(六)——【DVPP】浅析HFBC格式数据存在的意义的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 命名实体识别(NER)发展简史
- 下一篇: python怎么读excel_pytho