ユークリッド距離で 2 つの類似した灰色の画像の違いを比較しています。画像はグレーフォーマットです。
int dis = 0 ;
for(int i=0;i<mat1.rows;i++)
for(int j=0;j<mat1.cols;j++)
{
cout<< mat1.at<unsigned char>(i,j) <<endl;
int a = (mat1.at<unsigned char>(i,j) - mat2.at<unsigned char>(i,j));
dis += (a*a);
}
dis = sqrt (dis);
しかし、プログラムはエラーを出します。エラーの正確な内容はわかりません。しかし、エラーは変換によるものだと思います - int a = (mat1.at(i,j) - mat2.at(i,j));
int a = (mat1.at(i,j) - mat2.at(i,j)); を試しました。まだ動作しません