HiISP 開發(fā)參考-_第1頁
HiISP 開發(fā)參考-_第2頁
HiISP 開發(fā)參考-_第3頁
HiISP 開發(fā)參考-_第4頁
HiISP 開發(fā)參考-_第5頁
已閱讀5頁,還剩74頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、 HiISP開發(fā)參考文檔版本03發(fā)布日期2014-02-26版權(quán)所有 © 深圳市海思半導(dǎo)體有限公司2012-2014。保留一切權(quán)利。非經(jīng)本公司書面許可,任何單位和個人不得擅自摘抄、復(fù)制本文檔內(nèi)容的部分或全部,并不得以任何形式傳播。商標(biāo)聲明、海思和其他海思商標(biāo)均為深圳市海思半導(dǎo)體有限公司的商標(biāo)。本文檔提及的其他所有商標(biāo)或注冊商標(biāo),由各自的所有人擁有。注意您購買的產(chǎn)品、服務(wù)或特性等應(yīng)受海思公司商業(yè)合同和條款的約束,本文檔中描述的全部或部分產(chǎn)品、服務(wù)或特性可能不在您的購買或使用范圍之內(nèi)。除非合同另有約定,海思公司對本文檔內(nèi)容不做任何明示或默示的聲明或保證。由于產(chǎn)品版本升級或其他原因,本文檔

2、內(nèi)容會不定期進(jìn)行更新。除非另有約定,本文檔僅作為使用指導(dǎo),本文檔中的所有陳述、信息和建議不構(gòu)成任何明示或暗示的擔(dān)保。深圳市海思半導(dǎo)體有限公司地址:深圳市龍崗區(qū)坂田華為基地華為電氣生產(chǎn)中心郵編:518129客戶服務(wù)電話:+86-755-28788858客戶服務(wù)傳真:+86-755-28357515 前 言概述本文為使用HiISP 開發(fā)的程序員而寫,目的是為您在開發(fā)過程中遇到的問題提供解決辦法和幫助。產(chǎn)品版本與本文檔相對應(yīng)的產(chǎn)品版本如下。 產(chǎn)品名稱 產(chǎn)品版本Hi3516 V100Hi3518 V100讀者對象本文檔(本指南主要適用于以下工程師:z技術(shù)支持工程師 z 軟件開發(fā)工程師符號約定在本文中可

3、能出現(xiàn)下列標(biāo)志,它們所代表的含義如下。符號 說明 表示有高度潛在危險,如果不能避免,會導(dǎo)致人員死亡或嚴(yán)重傷害。 符號 說明表示有中度或低度潛在危險,如果不能避免,可能導(dǎo)致人員輕微或中等傷害。 表示有潛在風(fēng)險,如果忽視這些文本,可能導(dǎo)致設(shè)備損壞、數(shù)據(jù)丟失、設(shè)備性能降低或不可預(yù)知的結(jié)果。 表示能幫助您解決某個問題或節(jié)省您的時間。 表示是正文的附加信息,是對正文的強(qiáng)調(diào)和補(bǔ)充。修訂記錄修訂記錄累積了每次文檔更新的說明。最新版本的文檔包含以前所有文檔版本的更新內(nèi)容。文檔版本03 (2014-02-26第3章 AE3.5 數(shù)據(jù)類型,ISP_EXP_STA_INFO_S 的【定義】和【成員】中增加s16Hi

4、stError 。第4章 AWBHI_MPI_ISP_SetAWBAlgType 的【注意】中添加“Hi3516不支持”。HI_MPI_ISP_GetAWBAlgType 、HI_MPI_ISP_SetAdvAWBAttr 、HI_MPI_ISP_GetAdvAWBAttr 、HI_MPI_ISP_SetLightSource 、HI_MPI_ISP_GetLightSource 。ISP_AWB_LIGHTSOURCE_INFO_S 和ISP_AWB_ADD_LIGHTSOURCE_S ;ISP_AWB_ATTR_S 的【定義】和【成員】中有修改,【差異說明】有更新。第6章 IMP u8Lu

5、mThresh和u8NpOffset;新增表6-6和表6-7。第10章 Proc調(diào)試信息10.1 概述,新增【開啟方法】。文檔版本02(2013-09-25第3章 AEISP_AE_ATTR_EX_S的【參數(shù)】u32SystemGainMax的描述更新。ISP_EXP_STA_INFO_S新增【參數(shù)】u8ExpHistTarget5及描述;新增【注意事項】。ISP_INNER_STATE_INFO_S的【注意事項】中刪除關(guān)于高精度Sensor模擬增益、數(shù)字增益和高精度ISP數(shù)字增益的相關(guān)描述。第4章 AWBISP_WB_STA_INFO_S新增【參數(shù)】u32Rgain、u32Ggain、u32

6、Bgain及描述。第8章 AFISP_FOCUS_STA_INFO_S新增【參數(shù)】u8MetricsShift、u8NpOffset及描述。第10章 Proc調(diào)試信息新增。文檔版本01(2013-06-30第2章系統(tǒng)控制2.2 API參考中增加HI_MPI_ISP_GetVDTimeOut。2.3 數(shù)據(jù)類型中增加ISP_VD_INFO_S。第3章 AEHI_MPI_ISP_GetAEAttrEx、HI_MPI_ISP_SetMEAttrEx、HI_MPI_ISP_GetMEAttrEx、HI_MPI_ISP_QueryInnerStateInfo和HI_MPI_ISP_QueryInnerSt

7、ateInfoEx。u16SystemGainShift;【注意事項】中修改曝光變量更新模式的描述。ISP_INNER_STATE_INFO_S和ISP_INNER_STATE_INFO_EX_S。第4章 AWBstAWBCalibration和u8Speed。第6章 IMP u16DynamicBadPixelSlope和u16DynamicBadPixelThresh。新增6.12 黑電平新增第8章 AF文檔版本00B08(2013-04-02第3章 AE第6章 IMP6.9去霧功能描述有更新,數(shù)據(jù)類型ISP_ANTIFOG_S增加說明及成員。文檔版本00B07(2013-02-28第2章

8、系統(tǒng)控制2.2 API參考中,HI_MPI_ISP_SetModuleControl的【注意】中增加表2-1。2.3 數(shù)據(jù)類型中,增加ISP_ANTIFLICKER_MODE_E;ISP_ANTIFLICKER_S中增加【成員】enMode。第3章 AE第4章 AWB區(qū)間統(tǒng)計結(jié)果參與AWB校正”。第5章 CCM5.4 API參考中,新增HI_MPI_ISP_SetSaturation和HI_MPI_ISP_GetSaturation;更新HI_MPI_ISP_SetSaturationAttr的【注意事項】5.5 數(shù)據(jù)類型中,ISP_SATURATION_ATTR_S增加【成員】au8Sat8

9、及相關(guān)描述表5-1;同時更新【注意事項】;ISP_COLORMATRIX_S中修改u16HighColorTemp、u16MidColorTemp和u16LowColorTemp的取之范圍。第6章 IMP新增6.11 去馬賽克。文檔版本00B06(2013-02-05第5章 CCM5.4 API參考中,修改HI_MPI_ISP_SetSaturationAttr和HI_MPI_ISP_GetSaturationAttr的【語法】和【參數(shù)】;HI_MPI_ISP_SetSaturationAttr的【注意】中增加描述。5.5 數(shù)據(jù)類型中,增加ISP_SATURATION_ATTR_S。 第6章

10、IMP6.4 鏡頭陰影校正中HI_ERR_ISP_ILLEGAL_PARAM;【注意】中增加Hi3518的設(shè)置時的注意事項。u16ShadingOffCenter_G、u16ShadingOffCenter_B和u16ShadingTableNodeNumber及描述。文檔版本00B05(2012-12-26第3章 AE修改ISP_OP_TYPE_E的【成員】的描述和【注意事項】。第4章 AWBHI_MPI_ISP_SetAWBAttr的【注意】中增加“配置AWB算法的色溫上下限”的描述。ISP_AWB_ATTR_S的【定義】和【成員】中增加u8HighColorTemp和HI_U8u8Low

11、ColorTemp;【注意】中增加自動白平衡算法的色溫上下限的描述。第6章 IMPu8SharpenAltUd8及描述;修改成員u32StrengthTarget的描述及最小值;修改u8StrengthMin的默認(rèn)值;【注意】中修改sharpen的強(qiáng)度值與系統(tǒng)增益的關(guān)系需要參見的內(nèi)容。第7章 Debug新增。文檔版本 00B04(2012-11-25第2章系統(tǒng)控制2.2 API參考中增加HI_MPI_ISP_SetAntiFlickerAttr和HI_MPI_ISP_GetAntiFlickerAttr。2.3 數(shù)據(jù)類型中增加ISP_ANTIFLICKER_S。第3章 AE3.5 數(shù)據(jù)類型中I

12、SP_EXP_STA_INFO_S的【成員】增加了取值范圍的描述。第4章AWB的【成員】u16CbMin和u16CrMin的取值范圍。第5章 CCM 5.4 API中增加了HI_MPI_ISP_SetCCM的【注意】中關(guān)于三個色彩還原矩陣的描述。5.5 數(shù)據(jù)類型中修改ISP_COLORMATRIX_S的【定義】和【成員】;【注意事項】中增加高、中、低色溫需要滿足的條件。第6章 IMPISP_GAMMA_TABLE_S的【成員】中增加Hi3518的取值范圍;修改【差異說明】中Hi3518的相關(guān)值。ISP_SHARPEN_ATTR_S的【注意事項】中增加“sharpen的強(qiáng)度值與系統(tǒng)增益的關(guān)系”。

13、ISP_GAMMA_CURVE_E修改【定義】和【成員】。ISP_DENOISE_ATTR_S的【注意事項】中修改“u8ThreshTarget值越大,對噪點抑制”的相關(guān)描述。文檔版本00B03(2012-10-30第2章系統(tǒng)控制2.2 API參考中增加HI_MPI_ISP_SetSlowFrameRate和HI_MPI_ISP_GetSlowFrameRate。第3章 AEISP_AE_ATTR_S的【參數(shù)】u16ExpTimeMax、u16ExpTimeMin、u16DgainMax、u16DgainMin、u16AgainMax和u16AgainMin的取值范圍有修改。第4章AWB4.5

14、. ISP_AWB_ATTR_S的【參數(shù)】u8WeightWEIGHT_ZONE_ROWWEIGHT_ZONE_COLUMN增加取值范圍。ISP_WB_ZONE_STA_INFO_S的【參數(shù)】增加取值范圍說明。第5章 CCMHI_MPI_ISP_GetSaturationAttr的【參數(shù)】pu8Value修改描述。ISP_COLORMATRIX_S的【成員】u16CorrMatrix9增加取值范圍。第6章 IMP【舉例】更新。第7章錯誤碼 新增4個錯誤碼。文檔版本 00B02 (2012-09-20在ISP_INPUT_TIMING_S、ISP_IMAGE_ATTR_S、ISP_AE_ATTR

15、_S、ISP_ME_ATTR_S、ISP_AI_ATTR_S、ISP_MWB_ATTR_S、ISP_WB_ZONE_STA_INFO_S、ISP_WB_STA_INFO_S、ISP_COLORMATRIX_S、ISP_SHADINGTAB_S、ISP_DP_ATTR_S、ISP_CR_ATTR_S、ISP_DIS_INFO_S中增加參數(shù)的取值范圍。ISP_AWB_ATTR_S的【差異說明】中增加“僅排序后的前u8ZoneSel個區(qū)間統(tǒng)計結(jié)果參與AWB校正”的描述。ISP_AWB_ATTR_S的【差異說明】中增加參與AWB校正的相關(guān)描述。修改HI_MPI_ISP_GetSaturationAtt

16、r的【參數(shù)】pu8Value的描述。修改Sharpen、Gamma、DRC的描述。修改ISP_SHARPEN_ATTR_S、ISP_GAMMA_ATTR_S、ISP_DRC_ATTR_S的【成員】的描述。修改ISP_GAMMA_TABLE_S的【定義】和【成員】。修改ISP_SHADING_ATTR_S、ISP_SHADING_ATTR_S的【定義】。文檔版本 00B01 (2012-08-15第1次發(fā)布。 開發(fā)參考目錄目錄前言 (i1 概述 (11.1 概述 (11.2 功能描述 (12 系統(tǒng)控制 (62.1 功能概述 (62.2 API參考 (62.3 數(shù)據(jù)類型 (213 AE (273.

17、1 概述 (273.2 重要概念 (273.3 功能描述 (283.4 API參考 (303.5 數(shù)據(jù)類型 (494 AWB (644.1 概述 (644.2 重要概念 (644.3 功能描述 (644.4 API參考 (65 4.5 數(shù)據(jù)類型 (835 CCM (945.1 概述 (945.2 重要概念 (945.3 功能描述 (945.4 API參考 (955.5 數(shù)據(jù)類型 (1006 IMP (1046.1 Sharpen (1046.2 Gamma (1086.3 DRC (1156.4 鏡頭陰影校正 (1196.5 Defect Pixel (1306.6 CrossTalk Rem

18、oval (1356.7 Denoise (139 6.8 DIS (1436.9 去霧 (1516.10 去偽彩 (1546.11 去馬賽克 (1576.12 黑電平 (1627 Debug (1667.1 概述 (1667.2 功能描述 (1667.3 API參考 (1667.4 數(shù)據(jù)類型 (1698 AF (1728.1 概述 (1728.2 功能描述 (1728.3 API參考 (1728.4 數(shù)據(jù)類型 (1749 錯誤碼 (17610 Proc調(diào)試信息說明 (177 10.1 概述 (17710.2 ISP (177 圖目錄圖1-1 ISP控制結(jié)構(gòu)示意圖 (1圖1-2 ISP fir

19、mware 設(shè)計思路 (2圖1-3 ISP firmware 文件組織 (3圖1-4 ISP firmware 內(nèi)部流程 (4圖1-5 ISP firmware使用流程 (5圖3-1 AE模塊工作流程圖 (27圖3-2 AE五段統(tǒng)計信息直方圖 (28圖3-3 AE 256段統(tǒng)計信息直方圖 (29圖3-4 AE工作原理圖 (29圖4-1 AWB工作原理圖 (65圖5-1 CCM矩陣 (94圖6-1 CrossTalk Remove 門限 (136圖6-2 DIS偏移示意圖 (144圖6-3 DIS水平偏移 (150圖6-4 DIS垂直偏移 (151 表目錄表2-1 u32ModFlag對應(yīng)的比特

20、位控制 (15表5-1 au8Sat8在不同的增益情況下的設(shè)置值 (101表6-1 u8SharpenAltD8在不同的增益情況下的設(shè)置值 (107表6-2 u8SharpenAltUd在不同的增益情況下的設(shè)置值 (108表6-3 Mesh_Scale定義 (120表6-4 u8Strength在不同的增益情況下的設(shè)置值 (139表6-5 u8SnrThresh8在不同增益情況下對應(yīng)的設(shè)置值 (142表6-6 u8LumThresh在不同的增益情況下的設(shè)置值 (161表6-7 u8NpOffset在不同的增益情況下的設(shè)置值 (161表9-1 ISP API錯誤碼 (176 1 概述1.1 概述

21、ISP通過一系列數(shù)字圖像處理算法完成對數(shù)字圖像的效果處理。主要包括3A、壞點校正、去噪、強(qiáng)光抑制、背光補(bǔ)償、色彩增強(qiáng)、鏡頭陰影校正等處理。ISP包括邏輯部分以及運(yùn)行在其上的firmware。這里主要介紹ISP的用戶接口。1.2 功能描述ISP的控制結(jié)構(gòu)如圖1-1所示,lens將光信號投射到sensor的感光區(qū)域后,sensor經(jīng)過光電轉(zhuǎn)換,將Bayer格式的原始圖像送給ISP,ISP經(jīng)過算法處理,輸出RGB空間域的圖像給后端的視頻采集單元。在這個過程中,ISP通過運(yùn)行在其上的firmware對lens和sensor進(jìn)行相應(yīng)控制,進(jìn)而完成自動光圈、自動曝光、自動白平衡等功能。其中,firmwar

22、e的運(yùn)轉(zhuǎn)靠視頻采集單元的中斷驅(qū)動。PC TOOL通過網(wǎng)口或者串口完成對ISP的在線圖像質(zhì)量調(diào)節(jié)。ISP由ISP邏輯及運(yùn)行在其上的Firmware組成,邏輯單元除了完成一部分算法處理外,還可以統(tǒng)計出當(dāng)前圖像的實時信息。Firmware通過獲取ISP邏輯的圖像統(tǒng)計信息,重新計算,反饋控制lens、sensor和ISP邏輯,以達(dá)到自動調(diào)節(jié)圖像質(zhì)量的目的。圖1-1ISP控制結(jié)構(gòu)示意圖 ISP邏輯主要流程、具體概念和功能點請參見芯片手冊。 ISP的Firmware包含兩部分,一部分是算法控制部分,另一部分是sensor控制部分。Firmware設(shè)計的基本思想是將算法控制部分和sensor控制部分分離開來

23、,當(dāng)有新的sensor需要適配時,只需改動sensor控制單元。ISP firmware設(shè)計思路如圖1-2所示。圖1-2ISP firmware 設(shè)計思路 不同的sensor都向ISP的算法庫注冊控制函數(shù),這些函數(shù)都以回調(diào)函數(shù)的形式存在。Firmware通過這些回調(diào)函數(shù)控制sensor,如調(diào)節(jié)曝光時間、模擬增益、數(shù)字增益,控制lens步進(jìn)聚焦或旋轉(zhuǎn)光圈等。ISP Firmware的文件組織結(jié)構(gòu)如圖1-3所示,firmware和sensor分開。Firmware中的drv生成的驅(qū)動程序主要用來上報ISP中斷,該中斷是firmware運(yùn)轉(zhuǎn)的驅(qū)動力。Src文件夾中包含firmware的核心算法,編譯

24、后生成libisp.a,即基本算法庫。Sensor文件夾中包含了各個sensor的驅(qū)動程序,該部分代碼開源,這里將其編譯成庫的形式,方便應(yīng)用程序編譯和連接,當(dāng)然,用戶可以根據(jù)自己的需要多樣化處理。 圖1-3 ISP firmware 文件組織 include src sensorMakefilelibsns_aptn.a firmware Makefile Hi3516_isp.ko Makefile drv Makefilelibisp.a aptina altasens ov Makefile Makefile Makefile libsns_alta.alibsns_ov.aSDK 中給

25、出的形式符合一般客戶的開發(fā)模式,算法庫不變,用戶來適配不同的sensor 。Sensor 文件夾中包含兩個主要文件:z sensor_cmos.c該文件中主要實現(xiàn)ISP 需要的回調(diào)函數(shù),這些回調(diào)函數(shù)中包含了sensor 的適配算法,不同的sensor 可能有所不同。z sensor_ctrl.csensor 的底層控制驅(qū)動,主要實現(xiàn)sensor 的讀寫和初始化動作。用戶可以根據(jù)sensor 的datasheet 進(jìn)行這兩個文件的開發(fā),必要的時候可以向sensor 廠家尋求支持。 高級用戶可以基于ISP 寄存器進(jìn)行自己的算法庫開發(fā),當(dāng)然這需要對ISP 邏輯比較熟悉,同時具有算法開發(fā)能力。Firm

26、ware 內(nèi)部流程分兩部分,如圖1-4所示。一部分是初始化任務(wù),主要完成整個ISP 的初始化,包括sensor 的部分初始化(回調(diào)形式實現(xiàn);另一部分是動態(tài)調(diào)節(jié)過程,在這個過程中,firmware 實時計算并進(jìn)行相應(yīng)控制。 圖1-4 ISP firmware 內(nèi)部流程 ISP作為前端采集部分,需要和視頻采集單元(VIU協(xié)同工作。ISP初始化和基本配置完成后,需要VIU進(jìn)行接口時序匹配。一是為了匹配不同sensor的輸入時序,二是為ISP配置正確的輸入時序。待時序配置完成后,ISP就可以啟動Run來進(jìn)行動態(tài)圖像質(zhì)量調(diào)節(jié)。此時輸出的圖像被VIU采集到DDR,進(jìn)而送去顯示或編碼。軟件使用流程如圖1-5

27、所示。 PC Tuning主要完成在PC端進(jìn)行動態(tài)圖像質(zhì)量調(diào)節(jié),可以調(diào)節(jié)多個影響圖像質(zhì)量的因子,如去噪強(qiáng)度、色彩轉(zhuǎn)換矩陣、飽和度等。如果在產(chǎn)品發(fā)布階段沒有PC Tuning工具,可以使用MPI中提供的圖像質(zhì)量調(diào)節(jié)接口進(jìn)行簡單的圖像效果調(diào)試。 圖1-5 ISP firmware使用流程 如果用戶調(diào)試好圖像效果后,可以使用PC Tuning工具提供的保存配置文件進(jìn)行配置參數(shù)保存,在下次啟動時可以加載已經(jīng)調(diào)節(jié)好的圖像參數(shù)。 2 系統(tǒng)控制2.1 功能概述系統(tǒng)控制部分包含了ISP初始化時序配置,ISP圖像屬性,初始化ISP Firmware,運(yùn)行ISP firmware,設(shè)置ISP各模塊等功能。2.2

28、API參考z HI_MPI_ISP_SetInputTiming:設(shè)置ISP輸入時序。z HI_MPI_ISP_GetInputTiming:獲取ISP輸入時序。z HI_MPI_ISP_SetImageAttr:設(shè)置輸入圖像屬性。z HI_MPI_ISP_GetImageAttr:獲取輸入圖像屬性。z HI_MPI_ISP_Init:初始化ISP firmware。z HI_MPI_ISP_Run:運(yùn)行ISP firmware。z HI_MPI_ISP_Exit:退出ISP firmware。z HI_MPI_ISP_FreezeFmw:ISP firmware凍結(jié)控制。z HI_MPI_I

29、SP_SetModuleControl:設(shè)定ISP功能模塊的控制。z HI_MPI_ISP_GetModuleControl:獲取ISP功能模塊的控制。z HI_MPI_ISP_SetSlowFrameRate:設(shè)置ISP降低幀率的倍數(shù)。z HI_MPI_ISP_GetSlowFrameRate:獲取ISP降低幀率的倍數(shù)值。z HI_MPI_ISP_SetAntiFlickerAttr:設(shè)置ISP抗閃頻率屬性。z HI_MPI_ISP_GetAntiFlickerAttr:獲取ISP抗閃頻率屬性。HI_MPI_ISP_SetInputTiming【描述】設(shè)置ISP輸入時序?!菊Z法】HI_S32

30、 HI_MPI_ISP_SetInputTiming(const ISP_INPUT_TIMING_S *pstInputTiming;【參數(shù)】參數(shù)名稱描述輸入/輸出pstInputTiming 輸入時序?qū)傩?。輸入靜態(tài)屬性?!痉祷刂怠糠祷刂得枋? 成功。非0 失敗,其值為錯誤碼?!惧e誤碼】接口返回值含義HI_ERR_ISP_NULL_PTR空指針錯誤。HI_ERR_ISP_ILLEGAL_PARAM參數(shù)無效。【需求】z頭文件:hi_comm_isp.h、mpi_isp.hz庫文件:libisp.a【注意】z設(shè)置前需要先初始化ISP。z該接口從sensor輸入的圖像中獲取ISP需要的有效圖像內(nèi)容

31、。尤其是某些sensor 有OB區(qū)輸出,即圖像輸出有黑邊,此時需要用該接口剪裁掉黑邊。如果sensor輸入的圖像就是ISP需要的有效內(nèi)容,接口模式中選擇ISP_WIND_NONE,此時剪裁區(qū)的配置無效。【舉例】無。【相關(guān)主題】HI_MPI_ISP_GetInputTimingHI_MPI_ISP_GetInputTiming【描述】 獲取ISP輸入時序?!菊Z法】HI_S32 HI_MPI_ISP_GetInputTiming(ISP_INPUT_TIMING_S *pstInputTiming;【參數(shù)】參數(shù)名稱描述輸入/輸出pstInputTiming 輸入時序?qū)傩浴]敵鲮o態(tài)屬性?!痉祷刂怠糠?/p>

32、回值描述0 成功。非0 失敗,其值為錯誤碼。【錯誤碼】接口返回值含義HI_ERR_ISP_NULL_PTR空指針錯誤?!拘枨蟆縵頭文件:hi_comm_isp.h、mpi_isp.hz庫文件:libisp.a【注意】獲取前需要先設(shè)置?!九e例】無?!鞠嚓P(guān)主題】HI_MPI_ISP_SetInputTimingHI_MPI_ISP_SetImageAttr【描述】設(shè)置輸入圖像屬性?!菊Z法】 HI_S32 HI_MPI_ISP_SetImageAttr(const ISP_IMAGE_ATTR_S *pstImageAttr;【參數(shù)】參數(shù)名稱描述輸入/輸出pstImageAttr 輸入圖像屬性。輸入

33、靜態(tài)屬性?!痉祷刂怠糠祷刂得枋? 成功。非0 失敗,其值為錯誤碼。【錯誤碼】接口返回值含義HI_ERR_ISP_NULL_PTR空指針錯誤。HI_ERR_ISP_ILLEGAL_PARAM參數(shù)無效?!拘枨蟆縵頭文件:hi_comm_isp.h、mpi_isp.hz庫文件:libisp.a【注意】z圖像屬性即對應(yīng)的sensor的采集屬性。z設(shè)置前需要先初始化ISP?!九e例】無?!鞠嚓P(guān)主題】HI_MPI_ISP_GetImageAttrHI_MPI_ISP_GetImageAttr【描述】獲取輸入圖像屬性?!菊Z法】 HI_S32 HI_MPI_ISP_GetImageAttr(ISP_IMAGE_

34、ATTR_S *pstImageAttr;【參數(shù)】參數(shù)名稱描述輸入/輸出pstImageAttr 輸入圖像屬性。輸出靜態(tài)屬性?!痉祷刂怠糠祷刂得枋? 成功。非0 失敗,其值為錯誤碼。【錯誤碼】接口返回值含義HI_ERR_ISP_NULL_PTR空指針錯誤?!拘枨蟆縵頭文件:hi_comm_isp.h、mpi_isp.hz庫文件:libisp.a【注意】獲取前需要先設(shè)置輸入圖像屬性?!九e例】無?!鞠嚓P(guān)主題】HI_MPI_ISP_SetImageAttrHI_MPI_ISP_Init【描述】初始化ISP firmware。【語法】HI_S32 HI_MPI_ISP_Init(HI_VOID;【參數(shù)

35、】 無【返回值】返回值描述0 成功。非0 失敗,其值為錯誤碼。【錯誤碼】接口返回值含義HI_ERR_ISP_SNS_UNREGISTER Sensor未注冊。【需求】頭文件:hi_comm_isp.h、mpi_isp.h庫文件:libisp.a【注意】初始化前需要確保sensor已經(jīng)初始化,并且注冊了回調(diào)函數(shù)?!九e例】無?!鞠嚓P(guān)主題】HI_MPI_ISP_ExitHI_MPI_ISP_Run【描述】運(yùn)行ISP firmware?!菊Z法】HI_S32 HI_MPI_ISP_Run(HI_VOID;【參數(shù)】無。【返回值】返回值描述0 成功。 返回值描述非0 失敗,其值為錯誤碼?!惧e誤碼】接口返回值

36、含義HI_ERR_ISP_SNS_UNREGISTER Sensor未注冊?!拘枨蟆縵頭文件:hi_comm_isp.h、mpi_isp.hz庫文件:libisp.a【注意】z運(yùn)行前需要確保sensor已經(jīng)初始化,并且注冊了回調(diào)函數(shù)。z運(yùn)行前需要確保時序和圖像屬性已配置。z該接口是阻塞接口,建議用戶采用實時線程處理?!九e例】無?!鞠嚓P(guān)主題】HI_MPI_ISP_InitHI_MPI_ISP_Exit【描述】退出ISP firmware?!菊Z法】HI_S32 HI_MPI_ISP_Exit(HI_VOID;【參數(shù)】無?!痉祷刂怠糠祷刂得枋? 成功。非0 失敗,其值為錯誤碼。 【錯誤碼】無?!拘枨?/p>

37、】z頭文件:hi_comm_isp.h、mpi_isp.hz庫文件:libisp.a【注意】無?!九e例】無?!鞠嚓P(guān)主題】HI_MPI_ISP_InitHI_MPI_ISP_FreezeFmw【描述】ISP firmware凍結(jié)控制?!菊Z法】HI_S32 HI_MPI_ISP_FreezeFmw(HI_BOOL bFreeze;【參數(shù)】參數(shù)名稱描述輸入/輸出bFreeze ISP firmware凍結(jié)使能。輸入【返回值】返回值描述0 成功。非0 失敗,其值為錯誤碼。【錯誤碼】無?!拘枨蟆縵頭文件:hi_comm_isp.h、mpi_isp.hz庫文件:libisp.a 【注意】當(dāng)bFreeze值

38、為True時ISP Firmware的3A算法,DRC算法,NR算法等都停止ISP,Sensor的寄存器將一直保持凍結(jié)前的值,直到再次調(diào)用此接口使bFreeze值為False?!九e例】無?!鞠嚓P(guān)主題】無。HI_MPI_ISP_SetModuleControl【描述】設(shè)定ISP功能模塊的控制?!菊Z法】HI_S32 HI_MPI_ISP_SetModuleControl(HI_U32 u32ModFlag;【參數(shù)】參數(shù)名稱描述輸入/輸出u32ModFlag 模塊控制值。輸入【返回值】返回值描述0 成功。非0 失敗,其值為錯誤碼?!惧e誤碼】無?!拘枨蟆縵頭文件:hi_comm_isp.h、mpi_i

39、sp.hz庫文件:libisp.a【注意】z該接口可控制ISP各功能模塊的使能。z u32ModFlag中每個比特位控制著ISP中的一個功能模塊的使能,0表示開啟該模塊;1表示關(guān)閉該模塊。具體對應(yīng)請參見表2-1。 表2-1u32ModFlag對應(yīng)的比特位控制bit 描述31:27 保留。26 輸出直接與輸入相連。25:24 00:全部處理;01:旁路所有ISP處理(視頻輸入端口仍與輸出端口連接,輸出感光器原始數(shù)據(jù);10:旁路所有ISP處理(視頻輸入端口仍與輸出端口連接,輸出通道1和通道2最高位的感光器原始數(shù)據(jù);11:將輸出端與地相連。23:15 保留。14 旁路gamma表。13 旁路顏色矩陣

40、。12 旁路去馬賽克模塊(輸出原始數(shù)據(jù)。11 旁路DRC。10 保留。9 旁路陰影校正。8:7 保留。6 旁路黑電平和增益。5 旁路去噪。4 旁路壞點校正。3 旁路綠平衡。2 旁路WDR壓縮前端查找。1 旁路前端黑電平調(diào)節(jié)。0 旁路視頻測試生成器?!九e例】無?!鞠嚓P(guān)主題】HI_MPI_ISP_GetModuleControl HI_MPI_ISP_GetModuleControl【描述】獲取ISP功能模塊的控制?!菊Z法】HI_MPI_ISP_GetModuleControl(HI_U32 *pu32ModFlag;【參數(shù)】參數(shù)名稱描述輸入/輸出pu32ModFlag 模塊控制值。輸出【返回值】

41、返回值描述0 成功。非0 失敗,其值為錯誤碼?!惧e誤碼】接口返回值含義HI_ERR_ISP_NULL_PTR空指針錯誤?!拘枨蟆款^文件:hi_comm_isp.h、mpi_isp.h庫文件:libisp.a【注意】無。【舉例】無。【相關(guān)主題】HI_MPI_ISP_SetModuleControlHI_MPI_ISP_SetSlowFrameRate【描述】 設(shè)置ISP降低幀率的倍數(shù)。【語法】HI_MPI_ISP_SetSlowFrameRate(HI_U8 u8Value;【參數(shù)】參數(shù)名稱描述輸入/輸出u8Value 降低幀率的參數(shù)值輸入【返回值】返回值描述0 成功。非0 失敗,其值為錯誤碼。

42、【錯誤碼】接口返回值含義HI_ERR_ISP_ILLEGAL_PARAM參數(shù)錯誤?!拘枨蟆縵頭文件:hi_comm_isp.h、mpi_isp.hz庫文件:libisp.a【注意】當(dāng)前幀率=原幀率/(u8Value >> 4。u8Value允許的最小值為0x10,表示當(dāng)前的幀率和原幀率相等;當(dāng)u8Value設(shè)置為0x20,表示當(dāng)前幀率為原幀率的1/2;當(dāng)u8Value設(shè)置為0x30,表示當(dāng)前幀率為原幀率的1/3,以此類推?!九e例】無。【相關(guān)主題】HI_MPI_ISP_GetSlowFrameRateHI_MPI_ISP_GetSlowFrameRate【描述】獲取ISP降低幀率的倍

43、數(shù)值。 【語法】HI_MPI_ISP_GetSlowFrameRate(HI_U8 *pu8Value;【參數(shù)】參數(shù)名稱描述輸入/輸出pu8Value 降低幀率參數(shù)值輸出【返回值】返回值描述0 成功。非0 失敗,其值為錯誤碼?!惧e誤碼】接口返回值含義HI_ERR_ISP_NULL_PTR空指針錯誤?!拘枨蟆款^文件:hi_comm_isp.h、mpi_isp.h庫文件:libisp.a【注意】無。【舉例】無?!鞠嚓P(guān)主題】HI_MPI_ISP_SetSlowFrameRateHI_MPI_ISP_SetAntiFlickerAttr【描述】設(shè)置ISP抗閃頻率屬性?!菊Z法】HI_MPI_ISP_Se

44、tAntiFlickerAttr(const ISP_ANTIFLICKER_S *pstAntiflicker; 【參數(shù)】參數(shù)名稱描述輸入/輸出pstAntiflicker 設(shè)置抗閃頻率屬性輸入【返回值】返回值描述0 成功。非0 失敗,其值為錯誤碼?!惧e誤碼】接口返回值含義HI_ERR_ISP_ILLEGAL_PARAM參數(shù)錯誤?!拘枨蟆縵頭文件:hi_comm_isp.h、mpi_isp.hz庫文件:libisp.a【注意】當(dāng)電源頻率為50Hz時,抗閃頻率值設(shè)置為50;當(dāng)電源頻率為60Hz時,抗閃頻率值設(shè)置為60?!九e例】無?!鞠嚓P(guān)主題】HI_MPI_ISP_GetAntiFlickerA

45、ttrHI_MPI_ISP_GetAntiFlickerAttr【描述】獲取ISP抗閃頻率屬性?!菊Z法】HI_MPI_ISP_GetAntiFlickerAttr(ISP_ANTIFLICKER_S *pstAntiflicker;【參數(shù)】 參數(shù)名稱描述輸入/輸出pstAntiflicker 頻率抗閃屬性輸出【返回值】返回值描述0 成功。非0 失敗,其值為錯誤碼?!惧e誤碼】接口返回值含義HI_ERR_ISP_NULL_PTR空指針錯誤?!拘枨蟆款^文件:hi_comm_isp.h、mpi_isp.h庫文件:libisp.a【注意】無?!九e例】無?!鞠嚓P(guān)主題】HI_MPI_ISP_SetAntiF

46、lickerAttrHI_MPI_ISP_GetVDTimeOut【描述】獲取ISP中斷信息。【語法】HI_MPI_ISP_GetVDTimeOut(ISP_VD_INFO_S *pstIspVdInfo, HI_U32 u32MilliSec;【參數(shù)】參數(shù)名稱描述輸入/輸出pstIspVdInfo ISP幀信息結(jié)構(gòu)指針輸出 參數(shù)名稱描述輸入/輸出u32MilliSec 超時時間,以ms為單位輸入【返回值】返回值描述0 成功。非0 失敗,其值為錯誤碼?!惧e誤碼】接口返回值含義HI_ERR_ISP_NULL_PTR空指針錯誤?!拘枨蟆款^文件:hi_comm_isp.h、mpi_isp.h庫文件:

47、libisp.a【注意】z該接口表示獲取ISP產(chǎn)生中斷的相關(guān)信息,包括是否產(chǎn)生了中斷和中斷產(chǎn)生時的當(dāng)前ISP幀信息。z u32MilliSec參數(shù)以ms為單位,指超時時間。即在u32MilliSec時間內(nèi),如果獲取不到ISP中斷,則函數(shù)返回。當(dāng)u32MilliSec設(shè)為0時,表示阻塞模式,程序一直等待,直到獲取到ISP中斷才返回?!九e例】無?!鞠嚓P(guān)主題】無。2.3 數(shù)據(jù)類型z ISP_WIND_MODE_E:定義ISP輸入時序窗類型。z ISP_INPUT_TIMING_S:定義ISP輸入時序窗口屬性。z ISP_BAYER_FORMAT_E:定義輸入Bayer圖像數(shù)據(jù)格式。z ISP_IMA

48、GE_ATTR_S:定義ISP輸入圖像屬性。 z ISP_ANTIFLICKER_S:定義ISP圖像抗閃屬性。z ISP_VD_INFO_S:定義ISP幀信息。ISP_WIND_MODE_E【說明】定義ISP輸入時序窗類型?!径x】typedef enum hiISP_WIND_MODE_E0,ISP_WIND_NONE =1,ISP_WIND_HOR =2,ISP_WIND_VER =3,ISP_WIND_ALL =ISP_WIND_BUTT ISP_WIND_MODE_E;【成員】成員名稱描述ISP_WIND_NONE 無剪裁窗。ISP_WIND_HOR 水平剪裁。ISP_WIND_VER

49、 垂直剪裁。ISP_WIND_ALL 水平、垂直都剪裁。【注意事項】無?!鞠嚓P(guān)數(shù)據(jù)類型及接口】ISP_INPUT_TIMING_SISP_INPUT_TIMING_S【說明】定義ISP輸入時序窗口?!径x】typedef struct hiISP_INPUT_TIMING_SISP_WIND_MODE_E enWndMode; u16HorWndStart;HI_U16u16HorWndLength;HI_U16u16VerWndStart;HI_U16u16VerWndLength;HI_U16 ISP_INPUT_TIMING_S;【成員】成員名稱描述enWndMode 剪裁窗口模式。u1

50、6HorWndStart 水平起始位置,取值范圍為0x0, 0x780。u16HorWndLength 水平窗口長度,取值范圍為0x0, 0x780。u16VerWndStart 垂直起始位置,取值范圍為0x0, 0x4B0。u16VerWndLength 垂直窗口高度,取值范圍為0x0, 0x4B0?!咀⒁馐马棥繉τ蠴B(光學(xué)黑區(qū)輸出的sensor圖像,使用該接口進(jìn)行有效區(qū)圖像剪裁?!鞠嚓P(guān)數(shù)據(jù)類型及接口】ISP_WIND_MODE_EISP_BAYER_FORMAT_E【說明】定義輸入Bayer圖像數(shù)據(jù)格式。【定義】typedef enum hiISP_BAYER_FORMAT_E0,=BA

51、YER_RGGB1,=BAYER_GRBG2,=BAYER_GBRG3,BAYER_BGGR=BAYER_BUTT ISP_BAYER_FORMAT_E;【成員】 成員名稱描述BAYER_RGGB RGGB排列方式。BAYER_GRBG GRGB排列方式。BAYER_GBRG GBRG排列方式。BAYER_BGGR BGGR排列方式?!咀⒁馐马棥吭摳袷娇梢詮乃褂胹ensor的DataSheet上獲取。【相關(guān)數(shù)據(jù)類型及接口】ISP_IMAGE_ATTR_SISP_IMAGE_ATTR_S【說明】定義ISP輸入圖像屬性?!径x】typedef struct hiISP_IMAGE_ATTR_SH

52、I_U16 u16Width;HI_U16 u16Height;HI_U16 u16FrameRate;ISP_BAYER_FORMAT_E enBayer; ISP_IMAGE_ATTR_S;【成員】成員名稱描述u16Width 輸入圖像寬度,取值范圍為0x0, 0x780。u16Height 輸入圖像高度,取值范圍為0x0, 0x4B0。u16FrameRate 輸入圖像幀率,取值范圍為0x0,0xFF。enBayer Bayer數(shù)據(jù)格式?!咀⒁馐马棥繜o?!鞠嚓P(guān)數(shù)據(jù)類型及接口】 ISP_BAYER_FORMAT_EISP_ANTIFLICKER_MODE_E【說明】定義ISP抗閃模式?!径?/p>

53、義】typedef enum hiISP_ANTIFLICKER_MODE_EISP_ANTIFLICKER_MODE_0 = 0x0,ISP_ANTIFLICKER_MODE_1 = 0x1,ISP_ANTIFLICKER_MODE_BUTTISP_ANTIFLICKER_MODE_E;【成員】成員名稱描述ISP_ANTIFLICKER_MODE_0 抗閃模式0。ISP_ANTIFLICKER_MODE_1 抗閃模式1。【注意事項】z ISP_ANTIFLICKER_MODE_0為抗閃模式0,曝光時間可以根據(jù)亮度進(jìn)行調(diào)節(jié),最小曝光時間固定為1/120 sec(60Hz或1/100 sec(50Hz。有燈光的環(huán)境:曝光時間可與光源頻率相匹配,能夠防止圖像閃爍。高亮度的環(huán)境:亮度越高,要求曝光時間

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論