rendered paste bodyvoid harris (void *yuv, int width, int height, void *pt,int k, int tr) {
unsigned long long dx,dy,dxy;
unsigned char *pixels[ 3 ];
unsigned char *point[ 3 ];
pixels[ 0 ] = ( unsigned char* ) yuv;
point[0] = ( unsigned char* ) pt;
int size = width*height;
double GW[3][3];
GW[0][0] = 0.04; GW[0][1] = 0.12; GW[0][2] = 0.04;
GW[1][0] = 0.12; GW[1][1] = 0.36; GW[1][2] = 0.12;
GW[2][0] = 0.04; GW[2][1] = 0.12; GW[2][2] = 0.04;
for ( int x=width+2; x < size - width -2; x=x+2) {
dx = 0; dy = 0; dxy = 0;
for (int j=-2;j<3; j++) {
for (int i=-2;i<3; i++) {
dx += ( pixels[0][x+(2*i)+2 + width*j*2] - pixels[0][x+(2*i) + width*j*2] )*( pixels[0][x+(2*i)+2 + width*j*2] - pixels[0][x+(2*i) + w
dy += ( pixels[0][x+(2*i) + (width-1)*j*2] - pixels[0][x+(2*i) + width*j*2])*( pixels[0][x+(2*i) + (width-1)*j*2] - pixels[0][x+(2*i)
dxy += ( pixels[0][x+(2*i)+2 + (width-1)*j*2] - pixels[0][x+(2*i) + width*j*2] ) * ( pixels[0][x+(2*i)+2 + (width-1)*j*2] - pixels[0][x
}
}
point[0][x] = ((dx*dy-dxy*dxy) - k*(dx+dy)*(dx+dy));
// cout << dx << " " << dy << " " << dxy << endl;
}
}