opencv c++ 报错Error: Assertion failed (depth == CV_32F || depth == CV_64F) in cv::pow, file E:\opencv

原因:所调用的函数对矩阵Mat中的元素类型有要求,调试发现实参mat的元素类型为int16,类型不匹配

解决:调用前进行类型转换,如:

img_x.convertTo(img_x, CV_64F); //类型转换之后再相乘
src_mat.convertTO(dst_mat,type);

转换后成功运行~

你可能感兴趣的:(计算机视觉,opencv)