搜索迭代步骤:
1.初始化c0;
2.δg0 = g0 - gm0;E0 = |δg0|2
3.δc = R*δg;
4.c1 = c0 - k*δc;
5.δg1 = g1 - gm1;E1 = |δg1|2;
6. if (E1<E0)
进入下一次迭代,c0 = c1
else
改变k=1.5,0.5,0.25等,重复步骤4~6
解释:
1. c为训练出的模型参数(如何初始化?)
2.g:测试图片的灰度值,模型对应位置采样得到
gm:由参数c得到模型的灰度值,gm(c)
计算模型与真实图片像素的差值,得到残差E0
3.R为训练出来的δc 和δg的线性关系,即可通过δg求出c的变化量
4.得到另外一组参数向量c1
5.求出新参数下的残差E1
6.比较两个残差,如果新参数得到结果更好就接受新的进入下一轮,如果新的不好,就改变参数的变化量,得到另外一组参数再次进行比较。
简单的说,初始参数向量c0,根据图像差值δg0 与参数改变量δc 之间的关系R确定另外的参数向量c1 ,比较两组参数所得模型gm与测试图片g的差E0E1 ,接受更好的参数c
时间: 2024-10-20 05:57:25