首页 文章

需要帮助将两个3通道图像组合成6通道图像Python

提问于
浏览
4

我试图将两个不同的RGB图像组合成一个单独的6通道图像(Tiff最好),只使用Python .

我所拥有的是从普通相机拍摄的RGB图像以及另一个RGB图像,它是基于SfM重建的法线贴图 . 图像具有相同的尺寸,我只需要将一个图像叠加在另一个上,这样我就可以根据组合的通道信息运行图像分类 .

我一直在考虑使用openCV,但我对文档感到厌倦 . 我是一名地质学家,而不是程序员,所以我的数学技能和编程知识充其量只是平庸 .

我一直在做一些挖掘,到目前为止我尝试过使用OpenCV为每个图像创建一个数组,然后使用numpy连接生成的矩阵并使用PIL将它们组合成一个图像 . 麻烦的是图像并排显示两个图像,而不是作为6通道图像 .

我不认为PIL可以做我需要它做的事情,但我不确定如何使用openCV mixChannels函数或如何在Python中创建MAT,因为Mat :: create文档完全在C中 .

RGB Image

Normals Image

我在这个网站上遇到过另一个帖子,但就我所知,他们并没有真正回答:

See here

1 回答

  • 3

    NumPy让你满意 .

    您的输入可能都是 (1200, 900, 3) (检查 .shape ),并且您希望 (1200, 900, 6) 作为输出 - 这要求沿第三轴连接两个数组 . 因此

    np.concatenate((im1, im2), axis=2) # axes are 0-indexed, i.e. 0, 1, 2
    

    会做你想要的 .

相关问题