opencv实现imfill_使用opencv实现matlab中的imfill填充孔洞功能

opencv实现imfill_使用opencv实现matlab中的imfill填充孔洞功能使用opencv实现matlab中的imfill填充孔洞功能,整体思路如下:1.首先给原始图像四周加一圈全0,并保存为另一幅图像2.使用floodFill函数给新图像进行填充,种子点设置为Point(0,0),填充颜色为全白。因为原始图像四周加了一圈0,因此使用floodFill填充之后,整个图像除了原始图像中内部的点是黑色之外其他地方全是白色。3.将填充之后…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

使用opencv实现matlab中的imfill填充孔洞功能,整体思路如下:

1.      首先给原始图像四周加一圈全0,并保存为另一幅图像

2.      使用floodFill函数给新图像进行填充,种子点设置为Point(0, 0),填充颜色为全白。因为原始图像四周加了一圈0,因此使用floodFill填充之后,整个图像除了原始图像中内部的点是黑色之外其他地方全是白色。

3.      将填充之后的图像颜色反转,再剪裁成原始图像大小。此时这张图像除了内部需要填充的地方是白色之外其他地方都是黑色。

4.      最后将新图像和原始图像取个并集,完成。

代码如下:

/**

\brief 填充二值图像孔洞

\param srcimage [in] 输入具有孔洞的二值图像

\param dstimage [out] 输出填充孔洞的二值图像

\return void

*/

void imfill(Mat srcimage, Mat &dstimage)

{

Size m_Size = srcimage.size();

Mat temimage = Mat::zeros(m_Size.height + 2, m_Size.width + 2, srcimage.type());//延展图像

//imshow(“temimage”, temimage);

srcimage.copyTo(temimage(Range(1, m_Size.height + 1), Range(1, m_Size.width + 1)));

floodFill(temimage, Point(0,0), Scalar(255));

//imshow(“temimage”, temimage);

//waitKey(0);

Mat cutImg;//裁剪延展的图像

temimage(Range(1, m_Size.height + 1), Range(1, m_Size.width + 1)).copyTo(cutImg);

dstimage = srcimage | (~cutImg);

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/194289.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • cad注释比例和打印比例不一样_CAD中的打印比例,绘图比例和注释全局比例详解…

    cad注释比例和打印比例不一样_CAD中的打印比例,绘图比例和注释全局比例详解…如上图同一条线段,在不同的标准格式如下(线宽设置相同,字高度都是3.5):第一个尺寸是测量因子为1,标注全局因子为2;第二个尺寸测量因子为2,标注全局因子为2;第三个尺寸测量因子为1,标注全局因子为1可见:1、测量因子影响的是标准尺寸的大小,2、标注全局因子影响的是字体和箭头的大小,3、他们的变化对线宽是没有影响的。关于他们对字体的大小的影响:打印比例和标注全局因子对打印出来的蓝图的字体会有影响。…

    2022年5月14日
    114
  • cloudsim仿真平台扩展的例子_云平台虚拟化技术

    cloudsim仿真平台扩展的例子_云平台虚拟化技术http://1.johnhome.sinaapp.com/?p=257幻灯片1云计算仿真框架CloudSim介绍jiangzw#ihep.ac.cn(以下为本人某次报告做的调研的PPT及其它一些实践记录,为保证清晰度,一些插入的图片较大,可在新标签页中打开)本文基于 署名3.0中国大陆 许可协议发布,未经本人许可不得转载

    2022年10月10日
    0
  • html页面调用高德地图,html前端使用高德地图入门教程「建议收藏」

    html页面调用高德地图,html前端使用高德地图入门教程「建议收藏」文章目录开始准备工作注册Key前期页面上的准备插件使用插件使用步骤引入插件定位自定义地图显示位置和缩放级别添加实时路况图层获取定位信息(需要使用插件)浏览器定位IP定位获取当前城市信息覆盖物添加覆盖物获取覆盖物覆盖物的操作图层设置图层获取图层移除图层3D地图未完待续…开始准备工作注册Key如果开发者账号包括Key已经有了,请忽略此步骤首先,注册开发者账号,成为高德开放平台开发者登陆之后,在进入…

    2022年5月21日
    73
  • 使用cookie登录百度网盘(网站使用cookie)

    cookies2.txt为存放cookie字符串的文件。cookie字符串获取方式1.可以通过手动的方式去取,比如登录之后在console里面执行document.cookie即可获得2.在application里面查看cookie的值3.通过webdriver.Chrome(…)创建出来的实例,调用get_cookies()就可以获取到…

    2022年4月10日
    521
  • eclipse设置系统字体

    eclipse设置系统字体

    2022年2月1日
    48
  • jq中ajax的dataType:”json”是指什么?

    jq中ajax的dataType:”json”是指什么?dataType String预期服务器返回的数据类型。如果不指定,jQuery 将自动根据 HTTP 包 MIME 信息来智能判断,比如XML MIME类型就被识别为XML。在1.4中,JSON就会生成一个JavaScript对象,而script则会执行这个脚本。随后服务器端返回的数据会根据这个值解析后,传递给回调函数。可用值:"xml": 返回 XML 文档,可用 jQuery 处理。"…

    2022年6月13日
    97

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号