【问题标题】:How to join 3 open cv IplImages into one?如何将 3 个 opencv IplImage 合二为一?
【发布时间】:2010-11-19 18:41:42
【问题描述】:

所以我有这样的代码:

    IplImage* redchannel = cvCreateImage(cvGetSize(destination), 8, 1);
                    IplImage* greenchannel = cvCreateImage(cvGetSize(destination), 8, 1);
                    IplImage* bluechannel = cvCreateImage(cvGetSize(destination), 8, 1);
cvSplit(source, bluechannel, greenchannel, redchannel, NULL);
// code...
//now I need to join them back

如何将 bluechannel、greenchannel 和 redchannel 加入到某个 IplImage* 目的地?

【问题讨论】:

    标签: c++ c opencv


    【解决方案1】:

    void cvMerge(const CvArr* src0, const CvArr* src1, const CvArr* src2, const CvArr* src3, CvArr* dst);

    Here is the documentation.

    编辑:

    来自文档: 您必须致电:

    cvMerge(bluechannel, greenchannel, redchannel, NULL, target);
    

    假设您的目标图像也只有 3 个通道。

    【讨论】:

    • hm.. 如果我有 3 张图片,如何获得 4 张图片?
    • 如何创建这样的目标?为什么 IplImage* 目的地 = cvCreateImage(cvSize(w, h),IPL_DEPTH_8U, 3);工作不正常?
    • “工作不正确”非常不具体,你的意思是什么?
    猜你喜欢
    • 1970-01-01
    • 2010-09-28
    • 2010-09-28
    • 1970-01-01
    • 1970-01-01
    • 2012-06-24
    • 2013-05-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多