c++ - 从图像数组创建单个图像

标签 c++ opencv image-processing opencv3.0

嗨,我正在尝试从 opencv 中的多个图像创建单个图像。 我使用的图像大小相同。

我所做的是将它们 reshape 为单行,然后尝试将它们与我的新图像合并在一起。

我创建了大小为 2 个图像的新图像并传递了数组,但收到错误 EXC_BAD_ACCESS(code=1, address = ..)

注意:图像尺寸正确 单张图像的大小:[170569 x 1] new_image 的大小:[170569 x 2]

我的代码如下。 谢谢

int main(){


    Mat image[2];
    image[0]= imread("image1.jpg",0);

    image[1]= imread("image2.jpg",0);



   image[0] = image[0].reshape(0, 1); //SINGLE LINE
   image[1] = image[1].reshape(0, 1); //SINGLE LINE

   int size = sizeof(image)/sizeof(Mat);


    Mat new_image(image[0].cols,size,CV_32FC1,image); 

}

最佳答案

垫新图像;

vconcat(图像[0],图像[1],new_image);

关于c++ - 从图像数组创建单个图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29390077/

相关文章:

c++ - 一些中间位与模式匹配的下一个最大整数?

python - 如何检测高斯模糊的内核大小?

c# - 如何将 FLANN 索引保存到从 C# 中的矩阵构建的磁盘?

Python - 解析图像上的对象

opencv - 解决相机不良的反馈(水平线上下移动几条阴影)

c++ - OpenGL 中的纹理渲染

c++ - 使用 odeint 时 Boost lib 错误

c++ - Winsock延迟,测试连接速度

python - 如何在 Windows 上安装 OpenCV 并在不使用包管理器的情况下为 PyCharm 启用它

python - cv2.remap 或 scipy.interpolate.map_coordinates 在 Tensorflow 中的等效/实现?