9759
- 收藏
- 点赞
- 分享
- 举报
mpp2 使用PQTool调节ISP后的参数保存与加载函数
本帖最后由 9crk 于 2016-3-31 09:56 编辑
纯手工抄写。。方便使用。
由于mpp2使用PQTool调节后,参数不能被保存并方便地加载,因此写了以下工具,调节完参数后,可使用save函数保存为一个文件,并在自己的程序中调用load函数加载ISP参数文件。
不正确的地方请指出。
[code]typedef struct zConfig{
ISP_OP_TYPE_E enExpType;
ISP_AE_ATTR_S stAEAttr;
// ISP_AE_ATTR_S_EX stAEAttrEx;
ISP_ME_ATTR_S stMEAttr;
ISP_ME_ATTR_EX_S stMEAttrEx;
ISP_EXP_STA_INFO_S stExpStatistic;
ISP_OP_TYPE_E enIrisType;
ISP_AI_ATTR_S stAIAttr;
ISP_OP_TYPE_E enWBType;
ISP_AWB_ATTR_S stAWBAttr;
ISP_MWB_ATTR_S stMWBAttr;
ISP_AWB_ALG_TYPE_E enALGType;
ISP_ADV_AWB_ATTR_S stAdvAWBAttr;
ISP_AWB_ADD_LIGHTSOURCE_S stLightSource;
HI_U16 u16ColorTemp;
ISP_WB_STA_INFO_S stWBStatistic;
ISP_SATURATION_ATTR_S stSatAttr;
HI_U8 u8Value;
ISP_COLORMATRIX_S stColorMatrix;
// ISP_COLORTONE S stColorTone;
ISP_SHARPEN_ATTR_S stSharpenAttr;
ISP_GAMMA_ATTR_S stGammaAttr;
ISP_GAMMA_TABLE_S stGammaTable;
ISP_DRC_ATTR_S stDRCAttr;
ISP_SHADING_ATTR_S stShadingAttr;
ISP_SHADINGTAB_S stShadingTab;
ISP_DP_ATTR_S stDPAttr;
ISP_CR_ATTR_S stCRAttr;
ISP_DENOISE_ATTR_S stDenoiseAttr;
ISP_DIS_ATTR_S stDISAttr;
ISP_ANTIFOG_S stAntiFog;
ISP_ANTI_FALSECOLOR_S stAntiFC;
ISP_DEMOSAIC_ATTR_S stDemosaicAttr;
ISP_BLACK_LEVEL_S stBlackLevel;
// ISP_BLACK_LEVEL_S stNoiseProfileTable;
}zConfig;
void isp_save_config(char* fileName)
{
zConfig config;
FILE* fp;
int ret;
memset(&config,0,sizeof(zConfig));
fp = fopen(fileName,"wb");
if(fp == NULL){printf("cant write!\n");return;}
//AE:
HI_MPI_ISP_GetExposureType(&config.enExpType);//获取曝光类型。
HI_MPI_ISP_GetAEAttr(&config.stAEAttr);//获取AE 属性。
// HI_MPI_ISP_GetAEAttrEx(&config.stAEAttrEx);//获取AE 曝光扩展属性。
HI_MPI_ISP_GetMEAttr(&config.stMEAttr);//获取ME 属性
HI_MPI_ISP_GetMEAttrEx(&config.stMEAttrEx);//获取手动曝光属性。
HI_MPI_ISP_GetExpStaInfo(&config.stExpStatistic);//获取AE 曝光统计信息。
HI_MPI_ISP_GetIrisType(&config.enIrisType);//获取光圈控制类型。
HI_MPI_ISP_GetAIAttr(&config.stAIAttr);//获取自动光圈的控制属性。
//AWB:
HI_MPI_ISP_GetWBType(&config.enWBType);//获取白平衡类型
HI_MPI_ISP_GetAWBAttr(&config.stAWBAttr);//获取自动白平衡属性
HI_MPI_ISP_GetMWBAttr(&config.stMWBAttr);//获取手动白平衡属性
HI_MPI_ISP_GetAWBAlgType(&config.enALGType);//获取白平衡算法类型
HI_MPI_ISP_GetAdvAWBAttr(&config.stAdvAWBAttr);//获取ADV 白平衡的属性
HI_MPI_ISP_GetLightSource(&config.stLightSource);//获取独立光源点属性
HI_MPI_ISP_GetColorTemp(&config.u16ColorTemp);//获取环境色温
HI_MPI_ISP_SetWBStaInfo(&config.stWBStatistic);//设置白平衡统计信息参数。
//CCM:
HI_MPI_ISP_GetSaturationAttr(&config.stSatAttr);//获取颜色饱和度属性。
HI_MPI_ISP_GetSaturation(&config.u8Value);//获取颜色饱和度期望值。
HI_MPI_ISP_GetCCM(&config.stColorMatrix);//获取颜色校正基础矩阵。
// HI_MPI_ISP_GetColorTone(&config.stColorTone);//获取冷暖色调。
//Sharpen:
HI_MPI_ISP_GetSharpenAttr(&config.stSharpenAttr);//获取边缘锐化属性。
//GAMMA:
HI_MPI_ISP_GetGammaAttr(&config.stGammaAttr);//获取Gamma 属性。
HI_MPI_ISP_GetGammaTable(&config.stGammaTable);//获取Gamma 表属性。
//DRC:
HI_MPI_ISP_GetDRCAttr(&config.stDRCAttr);//获取DRC 属性。
//Shadding:
HI_MPI_ISP_GetShadingAttr(&config.stShadingAttr);//获取暗角校正属性。
HI_MPI_ISP_GetShadingTable(&config.stShadingTab);//获取镜头暗角补偿查找表
//Defect Pixel:
HI_MPI_ISP_GetDefectPixelAttr(&config.stDPAttr);//获取坏点校正属性。
//CrossTalk:
HI_MPI_ISP_GetCrosstalkAttr(&config.stCRAttr);//获取Crosstalk remove 属性
//Denoise:
HI_MPI_ISP_GetDenoiseAttr(&config.stDenoiseAttr);//获取噪点抑制属性
//DIS:
HI_MPI_ISP_GetDISAttr(&config.stDISAttr);//获取DIS 属性
//AntiFog:
HI_MPI_ISP_GetAntiFogAttr(&config.stAntiFog);//获取去雾属
//AntiFakeColor:
HI_MPI_ISP_GetAntiFalseColorAttr(&config.stAntiFC);//获取去伪彩属性
//Demosaic
HI_MPI_ISP_GetDemosaicAttr(&config.stDemosaicAttr);//获取去马赛克属性
//BlackLevel:
HI_MPI_ISP_GetBlackLevelAttr(&config.stBlackLevel);//获取黑电平属性。
//NoiseProfile:
// HI_MPI_ISP_GetNoiseProfileTable(&config.stNoiseProfileTable);//获取噪声型式表。
ret = fwrite(&config,1,sizeof(zConfig),fp);
if(ret != sizeof(zConfig)){printf("write error %d!\n",ret);return;}
fclose(fp);
}
void isp_load_config(char* fileName)
{
zConfig config;
FILE* fp;
int ret;
memset(&config,0,sizeof(zConfig));
fp = fopen(fileName,"rb");
ret = fread(&config,1,sizeof(zConfig),fp);
if(ret != sizeof(zConfig)){printf("read error!\n");return;}
fclose(fp);
HI_MPI_ISP_SetExposureType(config.enExpType);//设置曝光类型。
HI_MPI_ISP_SetAEAttr(&config.stAEAttr);//设置AE 属性。
// HI_MPI_ISP_SetAEAttrEx(&config.stAEAttrEx);//设置AE 曝光扩展属性。
HI_MPI_ISP_SetMEAttr(&config.stMEAttr);//设置ME 属性。
HI_MPI_ISP_SetMEAttrEx(&config.stMEAttrEx);//设置手动曝光属性。
HI_MPI_ISP_SetExpStaInfo(&config.stExpStatistic);//设置AE 曝光统计信息。
HI_MPI_ISP_SetIrisType(config.enIrisType);//设置光圈控制类型。
HI_MPI_ISP_SetAIAttr(&config.stAIAttr);//设置自动光圈的控制属性。
HI_MPI_ISP_SetWBType(config.enWBType);//设置白平衡类型
HI_MPI_ISP_SetAWBAttr(&config.stAWBAttr);//设置自动白平衡属性
HI_MPI_ISP_SetMWBAttr(&config.stMWBAttr);//设置手动白平衡属性
HI_MPI_ISP_SetAWBAlgType(config.enALGType);//设置白平衡算法类型
HI_MPI_ISP_SetAdvAWBAttr(&config.stAdvAWBAttr);//设置ADV 白平衡算法属性
HI_MPI_ISP_SetLightSource(&config.stLightSource);//设置独立光源点属性
HI_MPI_ISP_SetColorTemp(config.u16ColorTemp);//设置目标色温
HI_MPI_ISP_SetWBStaInfo(&config.stWBStatistic);//设置白平衡统计相关参数
HI_MPI_ISP_SetSaturationAttr(&config.stSatAttr);//设置颜色饱和度属性。
HI_MPI_ISP_SetSaturation(config.u8Value);//设置颜色饱和度期望值。
HI_MPI_ISP_SetCCM(&config.stColorMatrix);//设置颜色校正基础矩阵。
// HI_MPI_ISP_SetColorTone(&config.stColorTone);//设置冷暖色调。
HI_MPI_ISP_SetSharpenAttr(&config.stSharpenAttr);//设置边缘锐化属性。
HI_MPI_ISP_SetGammaAttr(&config.stGammaAttr);//设置Gamma 属性。
HI_MPI_ISP_SetGammaTable(&config.stGammaTable);//设置Gamma 表属性。
HI_MPI_ISP_SetDRCAttr(&config.stDRCAttr);//设定DRC 属性。
HI_MPI_ISP_SetShadingAttr(&config.stShadingAttr);//设置暗角校正属性。
HI_MPI_ISP_SetShadingTable(&config.stShadingTab);//设置镜头暗角补偿查找表。
HI_MPI_ISP_SetDefectPixelAttr(&config.stDPAttr);//设置坏点校正属性。
HI_MPI_ISP_SetCrosstalkAttr(&config.stCRAttr);//设定Crosstalk remove 属性
HI_MPI_ISP_SetDenoiseAttr(&config.stDenoiseAttr);//设定噪点抑制属性
HI_MPI_ISP_SetDISAttr(&config.stDISAttr);//设置DIS 属性
HI_MPI_ISP_SetAntiFogAttr(&config.stAntiFog);//设置去雾属性
HI_MPI_ISP_SetAntiFalseColorAttr(&config.stAntiFC);//设置去伪彩属性
HI_MPI_ISP_SetDemosaicAttr(&config.stDemosaicAttr);//设置去马赛克属性
HI_MPI_ISP_SetBlackLevelAttr(&config.stBlackLevel);//设置黑电平属性。
// HI_MPI_ISP_SetNoiseProfileTable(&config.stNoiseProfileTable);//设置噪声型式表。
}[/code]
纯手工抄写。。方便使用。
由于mpp2使用PQTool调节后,参数不能被保存并方便地加载,因此写了以下工具,调节完参数后,可使用save函数保存为一个文件,并在自己的程序中调用load函数加载ISP参数文件。
不正确的地方请指出。
[code]typedef struct zConfig{
ISP_OP_TYPE_E enExpType;
ISP_AE_ATTR_S stAEAttr;
// ISP_AE_ATTR_S_EX stAEAttrEx;
ISP_ME_ATTR_S stMEAttr;
ISP_ME_ATTR_EX_S stMEAttrEx;
ISP_EXP_STA_INFO_S stExpStatistic;
ISP_OP_TYPE_E enIrisType;
ISP_AI_ATTR_S stAIAttr;
ISP_OP_TYPE_E enWBType;
ISP_AWB_ATTR_S stAWBAttr;
ISP_MWB_ATTR_S stMWBAttr;
ISP_AWB_ALG_TYPE_E enALGType;
ISP_ADV_AWB_ATTR_S stAdvAWBAttr;
ISP_AWB_ADD_LIGHTSOURCE_S stLightSource;
HI_U16 u16ColorTemp;
ISP_WB_STA_INFO_S stWBStatistic;
ISP_SATURATION_ATTR_S stSatAttr;
HI_U8 u8Value;
ISP_COLORMATRIX_S stColorMatrix;
// ISP_COLORTONE S stColorTone;
ISP_SHARPEN_ATTR_S stSharpenAttr;
ISP_GAMMA_ATTR_S stGammaAttr;
ISP_GAMMA_TABLE_S stGammaTable;
ISP_DRC_ATTR_S stDRCAttr;
ISP_SHADING_ATTR_S stShadingAttr;
ISP_SHADINGTAB_S stShadingTab;
ISP_DP_ATTR_S stDPAttr;
ISP_CR_ATTR_S stCRAttr;
ISP_DENOISE_ATTR_S stDenoiseAttr;
ISP_DIS_ATTR_S stDISAttr;
ISP_ANTIFOG_S stAntiFog;
ISP_ANTI_FALSECOLOR_S stAntiFC;
ISP_DEMOSAIC_ATTR_S stDemosaicAttr;
ISP_BLACK_LEVEL_S stBlackLevel;
// ISP_BLACK_LEVEL_S stNoiseProfileTable;
}zConfig;
void isp_save_config(char* fileName)
{
zConfig config;
FILE* fp;
int ret;
memset(&config,0,sizeof(zConfig));
fp = fopen(fileName,"wb");
if(fp == NULL){printf("cant write!\n");return;}
//AE:
HI_MPI_ISP_GetExposureType(&config.enExpType);//获取曝光类型。
HI_MPI_ISP_GetAEAttr(&config.stAEAttr);//获取AE 属性。
// HI_MPI_ISP_GetAEAttrEx(&config.stAEAttrEx);//获取AE 曝光扩展属性。
HI_MPI_ISP_GetMEAttr(&config.stMEAttr);//获取ME 属性
HI_MPI_ISP_GetMEAttrEx(&config.stMEAttrEx);//获取手动曝光属性。
HI_MPI_ISP_GetExpStaInfo(&config.stExpStatistic);//获取AE 曝光统计信息。
HI_MPI_ISP_GetIrisType(&config.enIrisType);//获取光圈控制类型。
HI_MPI_ISP_GetAIAttr(&config.stAIAttr);//获取自动光圈的控制属性。
//AWB:
HI_MPI_ISP_GetWBType(&config.enWBType);//获取白平衡类型
HI_MPI_ISP_GetAWBAttr(&config.stAWBAttr);//获取自动白平衡属性
HI_MPI_ISP_GetMWBAttr(&config.stMWBAttr);//获取手动白平衡属性
HI_MPI_ISP_GetAWBAlgType(&config.enALGType);//获取白平衡算法类型
HI_MPI_ISP_GetAdvAWBAttr(&config.stAdvAWBAttr);//获取ADV 白平衡的属性
HI_MPI_ISP_GetLightSource(&config.stLightSource);//获取独立光源点属性
HI_MPI_ISP_GetColorTemp(&config.u16ColorTemp);//获取环境色温
HI_MPI_ISP_SetWBStaInfo(&config.stWBStatistic);//设置白平衡统计信息参数。
//CCM:
HI_MPI_ISP_GetSaturationAttr(&config.stSatAttr);//获取颜色饱和度属性。
HI_MPI_ISP_GetSaturation(&config.u8Value);//获取颜色饱和度期望值。
HI_MPI_ISP_GetCCM(&config.stColorMatrix);//获取颜色校正基础矩阵。
// HI_MPI_ISP_GetColorTone(&config.stColorTone);//获取冷暖色调。
//Sharpen:
HI_MPI_ISP_GetSharpenAttr(&config.stSharpenAttr);//获取边缘锐化属性。
//GAMMA:
HI_MPI_ISP_GetGammaAttr(&config.stGammaAttr);//获取Gamma 属性。
HI_MPI_ISP_GetGammaTable(&config.stGammaTable);//获取Gamma 表属性。
//DRC:
HI_MPI_ISP_GetDRCAttr(&config.stDRCAttr);//获取DRC 属性。
//Shadding:
HI_MPI_ISP_GetShadingAttr(&config.stShadingAttr);//获取暗角校正属性。
HI_MPI_ISP_GetShadingTable(&config.stShadingTab);//获取镜头暗角补偿查找表
//Defect Pixel:
HI_MPI_ISP_GetDefectPixelAttr(&config.stDPAttr);//获取坏点校正属性。
//CrossTalk:
HI_MPI_ISP_GetCrosstalkAttr(&config.stCRAttr);//获取Crosstalk remove 属性
//Denoise:
HI_MPI_ISP_GetDenoiseAttr(&config.stDenoiseAttr);//获取噪点抑制属性
//DIS:
HI_MPI_ISP_GetDISAttr(&config.stDISAttr);//获取DIS 属性
//AntiFog:
HI_MPI_ISP_GetAntiFogAttr(&config.stAntiFog);//获取去雾属
//AntiFakeColor:
HI_MPI_ISP_GetAntiFalseColorAttr(&config.stAntiFC);//获取去伪彩属性
//Demosaic
HI_MPI_ISP_GetDemosaicAttr(&config.stDemosaicAttr);//获取去马赛克属性
//BlackLevel:
HI_MPI_ISP_GetBlackLevelAttr(&config.stBlackLevel);//获取黑电平属性。
//NoiseProfile:
// HI_MPI_ISP_GetNoiseProfileTable(&config.stNoiseProfileTable);//获取噪声型式表。
ret = fwrite(&config,1,sizeof(zConfig),fp);
if(ret != sizeof(zConfig)){printf("write error %d!\n",ret);return;}
fclose(fp);
}
void isp_load_config(char* fileName)
{
zConfig config;
FILE* fp;
int ret;
memset(&config,0,sizeof(zConfig));
fp = fopen(fileName,"rb");
ret = fread(&config,1,sizeof(zConfig),fp);
if(ret != sizeof(zConfig)){printf("read error!\n");return;}
fclose(fp);
HI_MPI_ISP_SetExposureType(config.enExpType);//设置曝光类型。
HI_MPI_ISP_SetAEAttr(&config.stAEAttr);//设置AE 属性。
// HI_MPI_ISP_SetAEAttrEx(&config.stAEAttrEx);//设置AE 曝光扩展属性。
HI_MPI_ISP_SetMEAttr(&config.stMEAttr);//设置ME 属性。
HI_MPI_ISP_SetMEAttrEx(&config.stMEAttrEx);//设置手动曝光属性。
HI_MPI_ISP_SetExpStaInfo(&config.stExpStatistic);//设置AE 曝光统计信息。
HI_MPI_ISP_SetIrisType(config.enIrisType);//设置光圈控制类型。
HI_MPI_ISP_SetAIAttr(&config.stAIAttr);//设置自动光圈的控制属性。
HI_MPI_ISP_SetWBType(config.enWBType);//设置白平衡类型
HI_MPI_ISP_SetAWBAttr(&config.stAWBAttr);//设置自动白平衡属性
HI_MPI_ISP_SetMWBAttr(&config.stMWBAttr);//设置手动白平衡属性
HI_MPI_ISP_SetAWBAlgType(config.enALGType);//设置白平衡算法类型
HI_MPI_ISP_SetAdvAWBAttr(&config.stAdvAWBAttr);//设置ADV 白平衡算法属性
HI_MPI_ISP_SetLightSource(&config.stLightSource);//设置独立光源点属性
HI_MPI_ISP_SetColorTemp(config.u16ColorTemp);//设置目标色温
HI_MPI_ISP_SetWBStaInfo(&config.stWBStatistic);//设置白平衡统计相关参数
HI_MPI_ISP_SetSaturationAttr(&config.stSatAttr);//设置颜色饱和度属性。
HI_MPI_ISP_SetSaturation(config.u8Value);//设置颜色饱和度期望值。
HI_MPI_ISP_SetCCM(&config.stColorMatrix);//设置颜色校正基础矩阵。
// HI_MPI_ISP_SetColorTone(&config.stColorTone);//设置冷暖色调。
HI_MPI_ISP_SetSharpenAttr(&config.stSharpenAttr);//设置边缘锐化属性。
HI_MPI_ISP_SetGammaAttr(&config.stGammaAttr);//设置Gamma 属性。
HI_MPI_ISP_SetGammaTable(&config.stGammaTable);//设置Gamma 表属性。
HI_MPI_ISP_SetDRCAttr(&config.stDRCAttr);//设定DRC 属性。
HI_MPI_ISP_SetShadingAttr(&config.stShadingAttr);//设置暗角校正属性。
HI_MPI_ISP_SetShadingTable(&config.stShadingTab);//设置镜头暗角补偿查找表。
HI_MPI_ISP_SetDefectPixelAttr(&config.stDPAttr);//设置坏点校正属性。
HI_MPI_ISP_SetCrosstalkAttr(&config.stCRAttr);//设定Crosstalk remove 属性
HI_MPI_ISP_SetDenoiseAttr(&config.stDenoiseAttr);//设定噪点抑制属性
HI_MPI_ISP_SetDISAttr(&config.stDISAttr);//设置DIS 属性
HI_MPI_ISP_SetAntiFogAttr(&config.stAntiFog);//设置去雾属性
HI_MPI_ISP_SetAntiFalseColorAttr(&config.stAntiFC);//设置去伪彩属性
HI_MPI_ISP_SetDemosaicAttr(&config.stDemosaicAttr);//设置去马赛克属性
HI_MPI_ISP_SetBlackLevelAttr(&config.stBlackLevel);//设置黑电平属性。
// HI_MPI_ISP_SetNoiseProfileTable(&config.stNoiseProfileTable);//设置噪声型式表。
}[/code]
我来回答
回答10个
时间排序
认可量排序
认可0
认可0
认可0
认可0
认可0
认可0
认可0
认可0
认可0
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币
Markdown 语法
- 加粗**内容**
- 斜体*内容*
- 删除线~~内容~~
- 引用> 引用内容
- 代码`代码`
- 代码块```编程语言↵代码```
- 链接[链接标题](url)
- 无序列表- 内容
- 有序列表1. 内容
- 缩进内容
- 图片![alt](url)
相关问答
-
2015-01-23 10:59:21
-
2023-07-17 17:47:42
-
2019-12-05 17:47:50
-
2015-05-20 15:18:37
-
2014-10-27 09:50:05
-
2020-08-19 14:24:12
-
2016-07-29 09:59:07
-
2020-08-29 10:21:25
-
212015-03-28 14:57:14
-
2017-12-08 09:00:04
-
2021-01-14 17:34:54
-
2019-03-14 15:18:29
-
2016-05-06 10:57:27
-
2018-10-09 14:27:39
-
2020-03-24 19:09:32
-
2018-07-31 10:34:21
-
2018-12-13 11:15:35
-
2018-09-02 19:46:24
-
12020-03-10 14:41:53
无更多相似问答 去提问
点击登录
-- 积分
-- E币
提问
—
收益
—
被采纳
—
我要提问
切换马甲
上一页
下一页
悬赏问答
-
5Hi3516CV610 如何使用SD卡升级固件
-
5cat /dev/logmpp 报错 <3>[ vi] [func]:vi_send_frame_node [line]:99 [info]:vi pic queue is full!
-
50如何获取vpss chn的图像修改后发送至vo
-
5FPGA通过Bt1120传YUV422数据过来,vi接收不到数据——3516dv500
-
50SS928 运行PQtools 拼接 推到设备里有一半画面会异常
-
53536AV100的sample_vdec输出到CVBS显示
-
10海思板子mpp怎么在vi阶段改变视频数据尺寸
-
10HI3559AV100 多摄像头同步模式
-
9海思ss928单路摄像头vio中加入opencv处理并显示
-
10EB-RV1126-BC-191板子运行自己编码的程序
举报反馈
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明
提醒
你的问题还没有最佳答案,是否结题,结题后将扣除20%的悬赏金
取消
确认
提醒
你的问题还没有最佳答案,是否结题,结题后将根据回答情况扣除相应悬赏金(1回答=1E币)
取消
确认