首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将检测到的边缘合并到Emgu CV中的颜色捕获

如何将检测到的边缘合并到Emgu CV中的颜色捕获
EN

Stack Overflow用户
提问于 2010-03-07 21:34:58
回答 1查看 6.5K关注 0票数 6

我正在尝试制作一个C#桌面应用程序(带有Emgu CV包装器),它可以从摄像头捕获提要,检测提要中的边缘,然后显示带有边缘的原始提要(彩色)-所以有点像彩色提要和边缘的组合。我成功地从摄像机中获得了提要。我还使用Canny方法检测提要中的边缘。问题是,虽然原始提要是彩色的,但边缘检测是以灰度(黑色背景,白色边缘)完成的。我想知道如何“合并”彩色饲料与边缘饲料输出一个合并的饲料。

我在Emgu CV中尝试过Copy方法,但它输出的是黑色背景和正确着色的边缘(例如,如果我在相机前持有一个红色立方体,则该立方体周围的边缘将被着色为红色)。

任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-03-07 23:23:02

好的,经过一些修修补补,我找到了解决方案。诀窍是在倒置的Canny结果和颜色馈送上使用And函数。下面是我使用Application.Idle的函数:

代码语言:javascript
复制
    private void processFunction(object sender, EventArgs e) {
        Image<Bgr, Byte> frame = c0.QueryFrame();
        Image<Gray, Byte> grayscale = frame.Convert<Gray, Byte>();
        grayscale = grayscale.Canny(new Gray(0), new Gray(255)).Not(); //invert with Not()
        frame = frame.And(grayscale.Convert<Bgr, Byte>(), grayscale); //And function in action
        imageBox1.Image = frame;

    }
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2396411

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档