1. 抓log
adb shell setprop vendor.isp.log.switch.enable 1
adb shell setprop vendor.isp.log.switch.setting ALGO_FW_AUTOCLS,22
打印bra手机的OTP信息,log里搜dump Otp_
quad模式下,4096*2304尺寸,跟正常模式相比,sensor out会crop一半
2. 时光机维测
1) 异常定位:
统计之和是否正常:
值如果出现0,则为异常
Sensor type
普通模组是0,VA是2,历史昆仑山模组是1
2) 查看是否使用了SIA光源分类
如果ir_model_w < 512,则第一步选表不使用SIA的结果,使用的是ACS内部光源分类。
3) 查看SIA分类结果(acs光源分类:AH,D,NAHD)
sia light前六个:D/AH/LED/F/高压钠灯/others
4) 查看acs统计
5) 查看所选灰块的r/g,b/g范围
查看ACS白点,
acs_new_data_range_base_rg ,acs_new_data_range_base_bg 为ACS白点,与KNN表中的
第4、5列对应。
查看所选白块r/g,b/g范围,使用r/g,b/g在这些范围内的像素,根据评价指标选表
6) 如果没有使用SIA结果,通常是在暗光拍摄,查看ACS内部光源分类:
ACS内部光源分类,如下图所示,score_var_n,score_var_d,score_var_ah分别表示NDAH光源,D光,AH光的标准差指标,指标越小,表明当前场景属于该光源的概率越高。需要注意的是,由于此时大概率没有可靠的多光谱sensor信息,为了提升鲁棒性,ACS中并没有直接使用该分类结果,而是采用了抓大放小的原则:(1)如果AH或者D光的评价指标优于N光,结果一定不是N光;(2)如果AH光的评价指标最差,并且N光的评价指标最优,结果一定不是AH光。
7) KNN选表诸多结果如下:
Imax表示r/g选表,jmax表示b/g选表
前6个数是距离当前白点,lv,近红外占比最近的KNN中6行数据的行号,顺序是距离由小到大。
第8-13个数表示6张表中,第三步选表:直方图评价指标由小到大的6张表的指标,直方图指标越大表示该表越适合。
第15-20个数表示,直方图评价指标由小到大的6张表。
第22个数表示,6张表中直方图评价指标最大值和次大值的差归一化的结果,
8) 前24张表的评价指标
为了调试方便,在调试阶段,可以将PQ参数中,reserve_param的最后一个参数置1,注意该参数不能合入主线,会增大耗时。算法会将24张表的直方图评价指标都计算出来,打印在score_hist中
9) 计算直方图指标使用的灰色块个数:
如果使用的灰块太少,则直方图评价指标不可靠
10) acs输出的gain
lsc四角的rgb gain值如下图,顺序是左上右上左下右下
更多的gain值可以参考
写出了左上,右上,左下,右下3行20列 gain值。
11) minilsc gain值:
顺序:1-30个数:RGB长帧中心到四周降采样的10个gain,31-60个数:RGB短帧中心到四周降采样的10个gain。
Minilsc gain值从中心到四周一般是逐渐增大
12) DACS维测信息
如下图所示,dacs_rgweight表示dacs生效权重,0表示不生效,255表示完全生效,越大生效权重越大。Prob_value中第1个数表示头文件中是否调试了DACS,调试标志位置1表示调试DACS,为0表示未调试DACS。
2-5个数按照顺序分别表示r/g shading梯度阈值的最大值,最小值,b/g shading梯度阈值的最大值,最小值。
6-7个数表示DACS R/g,B/g生效的门控(-255-800),越大表示越容易生效,-255则任何场景都不生效。
3. 调试示例
调试前工作:先保证不存在异常,例如统计是否存在异常,sensor type是否与当前模组匹配
1) 先看光源分类是否正确:
当前场景是D光,但是光源分类结果倾向于AH光,因此ACS选到AH光的表。
2) 调试KNN
一般来说,SIA可以准确率很高的区分AH光,D光和非DAH光。在当前示例,如果该光源光谱和模组CFA相乘后,SIA难以区分AH光和D光(由于太多模块依赖SIA,优先SIA分准确),调整KNN也可以达到调试目标。如下图左红框中所示,可在D光中加入一些AH光的权重,或者在AH光中加入一些D光权重,如果在AH光中加入D光权重,还需要调小修改后的AH光的r/g选表。如下图右红框中所示,注意,要想指哪打哪,需要改6行数据。
3) 精调KNN
如果图像中出现了中心红,四周绿的情况,需要调大R/g选表。
具体可以按照以下思路分析
打开reserve_param的最后一个参数置1,注意该参数不能合入主线,会增大耗时。
观察时光机中的参数,如图所示,KNN第二步选出了16,17,18,19四种表,这四张表中,直方图指标19号表最好,因此选到了19号表。
如果图像中仍然存在中心红的问题,观察score_hist中是否有比19号更大的指标,如果19已经是最大,则需要把19号表在第二步中屏蔽掉。也就是说,0、1、2、6、5、3这几行中,倒数第2列不能包含19。
4) 查看使用的灰色块
可以根据exif中的统计,r/g,b/g起始点和终点,在python或者excel中画出使用的灰色块。如下图所示:
在cas工具中,可以调试使用灰色块的范围,参数如下:
5) 调试DACS
DACS调试使能开关为预留参数的倒数第10个数。置1表示使能,使能后在exif中有显示,
倒数第9个数表示DACS的gain是否使用四角归一化(四角为1024),置1表示使用。
倒数第8,7个数DACS R/g,B/g生效的门控(-255-800),越大表示越容易生效,-255则任何场景都不生效。
倒数第8,7个数DACS R/g,B/g生效的门控(-255-800),越大表示越容易生效,-255则任何场景都不生效。
倒数第6,5,4,3个数表示r/g shading梯度阈值的最大值,最小值,b/g shading梯度阈值的最大值,最小值,阈值的最大值表示大于该梯度一定不是shading的梯度,该梯度/2 有50%的可能是shading梯度,该阈值经过了缩放,梯度的尺度为:gradient(log(r/g*1024)*65536)。
最大值越小表示更小的梯度会被认为是shading梯度。最小值以及B/G相关参数不需要调试,设置为以下推荐值即可。
6) 调试蓝天偏红
在半天半地的场景中,由于蓝天和地面得反射谱不同,shading严重程度也不同,选表稍轻,地面会有shading,选表稍重,天空可能偏红。为此,ACS针对蓝天,增加了偏红问题。
衰减逻辑:Rw*(Rggain – 1024)/1024 + 1024。
acs_gain_w_start表示b/g – r/g达到什么值开始衰减,如果41*31中的像素值b/g – r/g小于该值,则使用lut中第0个数衰减
gain_w_rg_lut表示衰减lut,1024表示不衰减,小于1024越多,表示衰减越多。在Lut表的位置(第几个数)越靠后,表示对应b/g-r/g越大的衰减参数。
如果该功能不需要打开,则将acs_gain_w_start设为100000
如果需要开启该功能,通常的参数设置如下:
<acs_gain_w_start> 200</acs_gain_w_start>
<gain_w_rg_lut>
1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022,
1022, 1022, 1022, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1020, 1020, 1020, 1020, 1020, 1020, 1020, 1020, 1020, 1020, 1020, 1020,
1019, 1019, 1019, 1019, 1019, 1019, 1019, 1019, 1019, 1019, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1017, 1017, 1017, 1017, 1017, 1017, 1017, 1016, 1016, 1016, 1016, 1016, 1016,
1015, 1015, 1015, 1015, 1015, 1015, 1014, 1014, 1014, 1014, 1014, 1013, 1013, 1013, 1013, 1013, 1012, 1012, 1012, 1012, 1011, 1011, 1011, 1011, 1010, 1010, 1010, 1010, 1009, 1009, 1009, 1008,
1008, 1008, 1007, 1007, 1007, 1006, 1006, 1006, 1005, 1005, 1005, 1004, 1004, 1004, 1003, 1003, 1002, 1002, 1002, 1001, 1001, 1000, 1000, 999, 999, 998, 998, 997, 997, 996, 996, 995,
995, 994, 994, 993, 992, 992, 991, 991, 990, 989, 989, 988, 987, 987, 986, 985, 984, 984, 983, 982, 981, 981, 980, 979, 978, 977, 976, 976, 975, 974, 973, 972,
971, 970, 969, 968, 967, 966, 965, 964, 963, 962, 961, 960, 959, 957, 956, 955, 954, 953, 951, 950, 949, 948, 946, 945, 944, 942, 941, 939, 938, 937, 935, 934,
932, 931, 929, 928, 926, 924, 923, 921, 919, 918, 916, 914, 913, 911, 909, 907, 905, 904, 902, 900, 898, 896, 894, 892, 890, 888, 886, 884, 882, 880, 878, 876,
874, 872, 870, 867, 865, 863, 861, 859, 856, 854, 852, 850, 847, 845, 843, 840, 838, 835, 833, 831, 828, 826, 823, 821, 819, 816, 814, 811, 809, 806, 804, 801,
799, 796, 794, 791, 788, 786, 783, 781, 778, 776, 773, 771, 768, 765, 763, 760, 758, 755, 753, 750, 748, 745, 742, 740, 737, 735, 732, 730, 727, 725, 722, 720,
717, 715, 713, 710, 708, 705, 703, 701, 698, 696, 693, 691, 689, 686, 684, 682, 680, 677, 675, 673, 671, 669, 666, 664, 662, 660, 658, 656, 654, 652, 650, 648,
646, 644, 642, 640, 638, 636, 634, 632, 631, 629, 627, 625, 623, 622, 620, 618, 617, 615, 613, 612, 610, 608, 607, 605, 604, 602, 601, 599, 598, 597, 595, 594,
592, 591, 590, 588, 587, 586, 585, 583, 582, 581, 580, 579, 577, 576, 575, 574, 573, 572, 571, 570, 569, 568, 567, 566, 565, 564, 563, 562, 561, 560, 560, 559,
558, 557, 556, 555, 555, 554, 553, 552, 552, 551, 550, 549, 549, 548, 547, 547, 546, 545, 545, 544, 544, 543, 542, 542, 541, 541, 540, 540, 539, 539, 538, 538,
537, 537, 536, 536, 535, 535, 534, 534, 534, 533, 533, 532, 532, 532, 531, 531, 531, 530, 530, 530, 529, 529, 529, 528, 528, 528, 527, 527, 527, 526, 526, 526,
526, 525, 525, 525, 525, 524, 524, 524, 524, 523, 523, 523, 523, 523, 522, 522, 522, 522, 522, 521, 521, 521, 521, 521, 521, 520, 520, 520, 520, 520, 520, 519,
519, 519, 519, 519, 519, 519, 518, 518, 518, 518, 518, 518, 518, 518, 518, 517, 517, 517, 517, 517, 517, 517, 517, 517, 517, 516, 516, 516, 516, 516, 516, 516,
516, 516, 516, 516, 516, 515, 515, 515, 515, 515, 515, 515, 515, 515, 515, 515, 515, 515, 515, 515, 515, 515, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514,
514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513,
513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513,
513, 513, 513, 513, 513, 513, 513, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512,
512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512,
512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512,
512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512,
512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512,
512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512,
512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512,
512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512,
512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512,
512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512,
512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512,
512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512
</gain_w_rg_lut>
7) 调整ACS收敛速度
滤波权重autocls_runing_param->w_cur = ((unsigned int)autocls_runing_param->acs_filter_step << ACS_BITWIDTH_10) *GRID_POINTS / (unsigned int)(rgainsum[0] - rgainsum[1]);
其中acs_filter_step为可调整参数,位于sia标定文件中。w_cur越小,变化越慢,acs_filter_step为int整数,其值越小,收敛越慢(默认为2,最小为1)。
8) 大面积红色场景中心绿
实际调试过程中发现raw图上存在中心绿四角红现象,与传统lens shading中心红四角绿现象完全相反。在标定时将默认参数改为如下,即可生成校正中心绿的表,在此基础上再次调试knn选到合适选表。
4. Va 4.0“井”字shading补偿标定示例
注意点:该功能需客观场景标定完成,基础shading(呈现中心圆特征)校正无残留;
小光圈shading为基础shading和“井”字型叠加,基于当前lsc算法首先完成基础shading校正,残余部分即为“井”shading。基于不同模组不同光源下raw图对4.0shading形态进行分析,TL84/CWF/U30光源下形态类似,A/H/D光源下呈现类似形态,因此针对4.0光圈下新增不同光源标定接口。
A TL84
1) 提取“井”字shading形态:
Knn调试完成后,用专业模式切F4光圈,盖毛玻璃在QC灯箱下分别拍摄A光、TL84光源灰卡图。通过时光机解析jpg图片,进行残余shading形态提取,如下图位置。
2) 残余shading写入标定文件:
分别将A光残余shading进行提取,粘贴标定文件如下位置中,A光写在bg_gain_tl84处;TL84光写在rg_gain_tl84处,注意格式,需要将空格和换行替换为逗号。
3) 开启该功能:
将标定文件中param_reserved[9],即该数组第10位置为256,此功能方可开启。请学习学习这个文档, // knn_classfier
{0,0,200,1087,325,40,1024,16,17,
0,0,200,881,404,25,1024,17,13,
0,0,200,897,401,24,1024,16,12,
0,0,200,859,458,30,1024,13,8,
0,0,200,852,453,142,308,14,12,
0,0,200,1152,368,155,512,4,8,
0,0,200,1129,372,145,512,5,8,
0,0,200,1018,445,20,1024,4,10,
0,0,200,881,312,24,806,7,8,
0,0,200,1054,364,130,440,6,7,
0,0,200,888,631,120,420,1,11,
0,0,200,1050,295,115,400,6,11,
0,0,200,1534,211,108,380,8,9,
0,0,200,1345,322,95,360,9,10,
0,0,200,1081,256,90,350,7,12,
0,200,0,479,757,123,420,9,6,
0,200,0,475,761,110,420,9,6,
0,200,0,481,631,96,420,10,5,
0,200,0,493,695,90,420,10,5,
0,200,0,511,710,142,308,11,5,
0,200,0,509,683,155,512,11,6,
0,200,0,500,637,145,512,10,5,
0,200,0,513,648,130,187,10,5,
0,200,0,510,623,135,480,11,6,
0,200,0,490,721,130,440,10,5,
0,200,0,501,697,120,420,11,5,
0,200,0,506,708,115,400,11,5,
0,200,0,519,698,108,380,11,5,
0,200,0,500,702,95,360,10,5,
22,174,4,510,698,90,350,11,5,
120,80,0,642,510,74,140,12,9,
100,100,0,666,485,80,160,12,9,
140,60,0,639,487,95,140,2,12,
200,0,0,1027,292,69,160,6,8,
200,0,0,607,584,81,160,4,12,
200,0,0,793,506,85,160,5,11,
200,0,0,592,611,72,160,4,11,
200,0,0,643,504,80,120,0,10,
200,0,0,639,498,86,100,0,11,
8,68,23,626,493,101,140,0,11,
200,0,0,736,515,70,100,6,11,
200,0,0,818,523,52,80,6,11,
200,0,0,748,530,50,40,6,12,
200,0,0,918,497,44,21,5,11,
200,0,0,832,285,37,21,4,12},然后调整这个参数,强制走11号表
最新发布