Bonjour à tous, j’essaie de mettre en place une blockiness detection dans une vidéo. Pour cela je dois calculer une différence absolue pour chaque ligne avec la suivante.
Apparemment j'ai un problème d'accès mémoire au niveau du copyTo car j’obtiens une
Cv::exception at memory location 0x001712 
temp_1 est une matrice en luminance single channel

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//Block detection initializations:
Mat Row_diff(WIDTH,HEIGHT-1,CV_8UC1), Col_diff(WIDTH-1,HEIGHT-1,CV_8UC1);
Mat Row(WIDTH,1,CV_8UC1),Col(1,HEIGHT-1,CV_8UC1);
Mat Ar(WIDTH,1,CV_8UC1),Br(WIDTH,1,CV_8UC1);
int r,c;
 
 
                               //Diference between adjacent pixels
				//Rows
				for(r=0;r<HEIGHT-1;r++){
				Ar = temp_1.row(r);
				Br = temp_1.row(r+1);
				absdiff(Ar,Br,Row);
				Row.copyTo(Row_diff.row(r));       //?????
				}
				imshow( "Diff Map",Row_diff);
Quelqu'un a une idée du problème?