带Rect参数的OpenCV Mat构造函数

带Rect参数的OpenCV Mat构造函数,opencv,Opencv,我正在尝试从垫子中获得一个子垫子,方法如下 Mat subImage = Image(rect); 当我这样做时,即使rect在图像边界内,我也会得到以下错误: OpenCV错误:断言失败(0假设您的主图像是100x100。您的roi的起点是roi.x,假设它是30。这将使您距离图像边缘70,因此您的roi.width可以是任何高达70的值,而不会超出范围,因此需要roi.x+roi.width

我正在尝试从垫子中获得一个子垫子,方法如下

    Mat subImage = Image(rect);
当我这样做时,即使rect在图像边界内,我也会得到以下错误:


OpenCV错误:断言失败(0假设您的主图像是100x100。您的roi的起点是
roi.x
,假设它是30。这将使您距离图像边缘70,因此您的
roi.width
可以是任何高达70的值,而不会超出范围,因此需要
roi.x+roi.width
。如果您有
roi.width==80
例如,这比
m.cols
小,但您仍然超出范围。

明白了,谢谢!我感到困惑,因为主图像也是一个子图像,我仍然使用原始图像相对于roi的起点,而不是新主图像的起点。