日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

海思Hi3516A(5)3D降噪

發布時間:2023/12/20 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 海思Hi3516A(5)3D降噪 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1. 概述

3D降噪算法是將前后兩幀的圖像進行對比處理,找出噪點位置,然后對其增益控制。3D數字降噪功能能夠降低弱信號圖像的噪波干擾。


2. 函數接口

HI_S32 HI_MPI_VPSS_SetGrpParam(VPSS_GRP VpssGrp, VPSS_GRP_PARAM_S*pstVpssParam);

參數名稱描述輸入/輸出
VpssGrpVPSS GROUP號輸入
pstVpssParam高級屬性設置輸入

?VPSS_GRP_PARAM_S結構體:

typedef?struct?hiVPSS_GRP_PARAM_S { HI_U32?u32Contrast;??????????????????//保留 HI_S32?s32GlobalStrength;????????????//3DNR降噪強度,[0.1408] HI_S32?s32IeStrength;????????????????//圖像紋理增強,[-1,100] HI_S32?s32YSFStrength;???????????????//亮度空域去噪強度,[-1,100] HI_S32?s32YTFStrength;???????????????//亮度時域去噪強度,[-1,15] HI_S32?s32CSFStrength;???????????????//色度空域去噪強度,[-1,255] HI_S32?s32CTFStrength;???????????????//色域時域去噪強度,[-1,32] HI_S32?s32MotionLimen;???????????????//運動閾值,表示NR強度,[-1,32] }VPSS_GRP_PARAM_S;

空域降噪是對單幀進行采樣,降噪會犧牲更多的細節;時域降噪是對前后幀進行分析,盡量保留畫面細節,但是拍攝劇烈運動可能會有拖影。在實際應用中可根據不同的側重點(細節、運動、亮度、色度)來調整VPSS_GRP_PARAM_S結構體的成員變量。


3. PQTools設置界面


4. 代碼設計

在SDK包的mpp/tools目錄下編寫應用程序代碼,具體代碼如下:

/*?File?Name:?vpss_attr_3dnr.cAuthor:????shugen.yinDate:??????2017.2.10Function:??3DNR?settinglog: */#include?<stdio.h> #include?<stdlib.h> #include?<string.h> #include?"hi_common.h" #include?"hi_comm_video.h" #include?"hi_comm_sys.h" #include?"hi_comm_vo.h" #include?"hi_comm_vi.h" #include?"hi_comm_vpss.h" #include?"hi_type.h" #include?"mpi_vb.h" #include?"mpi_sys.h" #include?"mpi_vi.h" #include?"mpi_vo.h" #include?"mpi_vpss.h"#define?CHECK_RET(express,name)\do{\if?(HI_SUCCESS?!=?express)\{\printf("%s?failed?at?%s:?LINE:?%d?!?errno:%#x?\n",?\name,?__FUNCTION__,?__LINE__,?express);\return?HI_FAILURE;\}\}while(0)HI_S32?main() {HI_S32?s32Ret=0;HI_U8?u8Index?=?0;VPSS_GRP?VpssGrp?=?0;VPSS_GRP_ATTR_S?stVpssGrpAttr?=?{0};VPSS_GRP_PARAM_S?stVpssGrpParam?=?{0};HI_S32?s32NrParam[4][8]?=?{ {0x0,?0x2f8,?0x0,?0x20,?0xc,?0x8,?0x6,?0x0},{0x0,?0x330,?0x0,?0x20,?0xc,?0x8,?0x6,?0x0},{0x0,?0x3ea,?0x0,?0x20,?0xc,?0x8,?0x6,?0x0},{0x0,?0x458,?0x0,?0x20,?0xc,?0xe,?0xc,?0x0}};s32Ret?=?HI_MPI_VPSS_GetGrpAttr(VpssGrp,?&stVpssGrpAttr);CHECK_RET(s32Ret,?"HI_MPI_VPSS_GetGrpAttr");s32Ret?=?HI_MPI_VPSS_GetGrpParam(VpssGrp,?&stVpssGrpParam);CHECK_RET(s32Ret,?"HI_MPI_VPSS_GetGrpParam");stVpssGrpAttr.bNrEn?=?1;stVpssGrpParam.u32Contrast?=?s32NrParam[u8Index][0];stVpssGrpParam.s32GlobalStrength?=?s32NrParam[u8Index][1];stVpssGrpParam.s32IeStrength?=?s32NrParam[u8Index][2];stVpssGrpParam.s32YSFStrength?=?s32NrParam[u8Index][3];stVpssGrpParam.s32YTFStrength?=?s32NrParam[u8Index][4];stVpssGrpParam.s32CSFStrength?=?s32NrParam[u8Index][5];stVpssGrpParam.s32CTFStrength?=?s32NrParam[u8Index][6];stVpssGrpParam.s32MotionLimen?=?s32NrParam[u8Index][7];s32Ret?=?HI_MPI_VPSS_SetGrpAttr(VpssGrp,?&stVpssGrpAttr);CHECK_RET(s32Ret,?"HI_MPI_VPSS_SetGrpAttr");s32Ret?=?HI_MPI_VPSS_SetGrpParam(VpssGrp,?&stVpssGrpParam);CHECK_RET(s32Ret,?"HI_MPI_VPSS_SetGrpParam");return?0; }


5. 編譯運行

在mpp/tools目錄下執行make命令,生成vpss_attr_3dnr可執行程序,將此可執行程序復制到目標板卡中,執行./vpss_attr_3dnr,3DNR算法模塊開始工作。


6. 最終結果

在沒有運行vpss_attr_3dnr時,視頻顯示結果如下圖所示,畫面有明顯的弱噪聲。

運行vpss_attr_3dnr后,視頻顯示結果如下圖所示,弱噪聲得到明顯抑制。

轉載于:https://blog.51cto.com/shugenyin/1896821

總結

以上是生活随笔為你收集整理的海思Hi3516A(5)3D降噪的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。