这是我的以下代码:
void filter() {
Mat kern = (Mat_<char>(3,3) << -1, 0, 1,
-1, 0, 1,
-1, 0, 1);
Mat kern2 = (Mat_<char>(3,3) << 1, 1, 1,
0, 0, 0,
-1, -1, -1);
Mat I = imread("lena.bmp", CV_LOAD_IMAGE_COLOR);
imshow("Lena1", I);
Mat J,K;
filter2D(I, J, I.depth(), kern);
filter2D(I, K, I.depth(), kern2);
imshow("Lena2", J);
imshow("Lena3", K);
pow(J,2,J);
pow(K,2,K);
Mat X = J + K;
imshow("Test1", X);
sqrt(X,X);
imshow("Test2", X);
waitKey(0);
}
Run Code Online (Sandbox Code Playgroud)
只是简单地尝试显示图像的渐变.但是,在sqrt(X,X)此处,会发生未处理的内存异常.怎么了?