rui130129 2017-03-24 06:49 采纳率: 0%
浏览 5759

不存在从"int"转换到"std::vector<cv::Mat,>>"的适当构造函数

void Cut_img(Mat src_img, int m, int n, vector ceil_img)
{
int t = m * n;
int height = src_img.rows;
int width = src_img.cols;

int ceil_height = height / m;
int ceil_width = width / n;

Mat roi_img, tmp_img;

Point p1, p2;
for (int i = 0; i<m; i++)
    for (int j = 0; j<n; j++) {
        //p1 = 
        Rect rect(i + j*ceil_width, j + i*ceil_height, ceil_width, ceil_height);

        src_img(rect).copyTo(roi_img);

        ceil_img.push_back(roi_img);
        imshow("roi_img", roi_img);
        //getchar();
        waitKey(0);
        //rectangle(i+j*ceil_width,j+i*ceil_height,);
    }

}

void show_images(vector imgs, int n) {

//do something

}

int _tmain(int argc, _TCHAR* argv[])
{
Mat img = imread("dog.jpg", 1);
imshow("src img", img);
int m = 3;
int n = 3;
vector ceil_img = m*n;

Cut_img(img, m, n, ceil_img);

waitKey();
return 0;

}
整个代码是图片剪切的代码,问题出现在倒数第三行代码,cut_img(img,m,n,ceil_img);
错误为:不存在从"int"转换到"std::vectorcv::Mat,std::allocator<cv::Mat>"的适当构造函数

还有错误C2440:"初始化":无法从“int”转换为"std::vectorcv::Mat,std::allocator<_Ty>"

  • 写回答

4条回答 默认 最新

  • 深蓝和红叶 2017-03-24 07:24
    关注

    楼主你这是要干什么 ceil_img 是个类吧 这样初始化的话 vector这个类得提供适当的转换构造函数才行 如果你想分配m*n大小的空间 应该是这样
    vector ceil_img(m*n); 昨天才建的博客 还不怎么会弄 0.0 一打下划线就变成斜体

    评论

报告相同问题?

悬赏问题

  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
  • ¥15 乘性高斯噪声在深度学习网络中的应用
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集