下面的程序是别人给我的程序的一部分,他说是实现梯度运算的程序,可我却没看出来。
请问一下这个能实现梯度运算吗??? 
最好能给一段实现梯度运算的程序,谢谢啦。//计算结果
    double fResult ;
    
    CvScalar s, s1 ;//两个标量
    int i, j ;
    int k, l ;
if (Top2Bottom == 2)
{
//竖直方向梯度 算子初始化
aTemplate[0] = -1.0;
        aTemplate[1] = -2.0 ;
        aTemplate[2] = -1.0 ;
        aTemplate[3] = 0.0;
        aTemplate[4] = 0.0 ;
        aTemplate[5] = 0.0 ;
        aTemplate[6] = 1.0;
        aTemplate[7] = 2.0 ;
        aTemplate[8] = 1.0 ;
//梯度运算
for(int m = 0; m < 8; m++)
{
//每行
for(i = m_ptOrigin[m].y; i < m_ptOrigin[m].y + Height; i++)
{
//每列
for(j = m_ptOrigin[m].x  ; j < m_ptOrigin[m].x + Width; j++)
{
fResult = 0 ;
for (k = 0; k < 3; k++)
{
for (l = 0; l < 3; l++)
{
s = cvGet2D(pImgXray,i+k-1,j+l-1);
fResult += s.val[0] * aTemplate[ k * 3 +l ] ; 
                          //fResult=s.val[0]*{aTemplate[0]+...+aTemplate[8]}, 

}
}
fResult = (double)fabs(fResult) ;
if(fResult > 255 )
{
s1.val[0] = 255 ;
s1.val[1] = 255 ;
s1.val[2] = 255 ;
cvSet2D(pImgTransition,i,j,s1) ;
}
else
{
s1.val[0] = fResult ;
s1.val[1] = fResult ;
s1.val[2] = fResult ;
cvSet2D(pImgTransition,i,j,s1) ;
}    
}
}
}
}