场景:opencv c++ 访问mat(单通道图像)中的像素点
完整报错:
OpenCV(4.5.5) Error: Assertion failed (DataType<_Tp>::channels == m.channels() || m.empty()) in cv::Mat_<unsigned char>::operator =,
出错的代码:
uchar g3 = ((Mat_<uchar>)result)(0, 0);
原因:result中的元素类型不是uchar(unsigned int),而是cv_64f的
解决:(注意g3的类型也要换,只要有一处类型不同,都会导致报错)
double g3 = ((Mat_<double>)result)(0, 0);