【发布时间】:2019-12-13 13:34:15
【问题描述】:
Mat newMask = Mat::zeros(mask.size(), mask.type());
for (int i=0; i< 3; i++){
Mat tray = Mat::zeros(mask.size(), mask.type());
inRange(mask,i+1, i+1, tray);
cv::erode(tray, tray, getStructuringElement(MORPH_RECT, cv::Size(5, 5)), cv::Point(-1, -1));
newMask += tray;
}
那个方法应该行吗?
我遇到了崩溃:
输入参数的大小不匹配) 该操作既不是'array op 数组'(其中数组具有相同的 大小和相同数量的通道), 也不是“数组运算标量”,也不是“标量运算” 函数'arithm_op'中的数组'
在下一行:
newMask += tray;
【问题讨论】:
-
如果您删除中间线中的一条或两条,即 inRange 和/或 cv::erode,它会在那里崩溃吗?
-
如果在“newMask += tray;”这一行崩溃。当我评论前两个时,我遇到了另一种崩溃