matlab灰度化处理函数_matlab中imfinfo的用法

matlab灰度化处理函数_matlab中imfinfo的用法Matlabinfl()依次使用函数IM=imreconstruct(marker,mask)有关算法的详细信息,请参见Soille,P.,《形态图像分析:原理和应用》,SpringerVerlag,1999年,第208-209页。第6.3.7节“填充孔”部分importnumpyasnpfromskimage.morphologyimportreconstructionimpor…

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

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

Matlab infl()依次使用函数IM=imreconstruct(marker,mask)

有关算法的详细信息,请参见

Soille,P.,《形态图像分析:原理和应用》,Springer Verlag,1999年,第208-209页。第6.3.7节“填充孔”部分import numpy as np

from skimage.morphology import reconstruction

import matplotlib.pyplot as plt

from skimage.io import imread, imsave

# Use the matlab reference Soille, P., Morphological Image Analysis: Principles and Applications, Springer-Verlag, 1999, pp. 208-209.

# 6.3.7 Fillhole

# The holes of a binary image correspond to the set of its regional minima which

# are not connected to the image border. This definition holds for grey scale

# images. Hence, filling the holes of a grey scale image comes down to remove

# all minima which are not connected to the image border, or, equivalently,

# impose the set of minima which are connected to the image border. The

# marker image 1m used in the morphological reconstruction by erosion is set

# to the maximum image value except along its border where the values of the

# original image are kept:

img = imread(“tyre.jpg”)

seed = np.ones_like(img)*255

img[ : ,0] = 0

img[ : ,-1] = 0

img[ 0 ,:] = 0

img[ -1 ,:] = 0

seed[ : ,0] = 0

seed[ : ,-1] = 0

seed[ 0 ,:] = 0

seed[ -1 ,:] = 0

fill = reconstruction(seed, img, method=’erosion’)

f, (ax0, ax1) = plt.subplots(1, 2,

subplot_kw={‘xticks’: [], ‘yticks’: []},

figsize=(12, 8))

ax0.imshow(img)

ax1.imshow(fill)

plt.show()

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

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

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


相关推荐

  • 在非Activity中使用startActivityForResult

    在非Activity中使用startActivityForResult在开发过程中有时会有需要在非activity中,跳转到另一个activity中,再携带某些值回到先前的页面,我们在很多地方可以拿到context,但这个时候想使用startActivityForResult时却发现无法调用,因为这个方法是Activity下的,而非Context下,这个时候只需要强转一下即可,将获取到的context转成activity就可以使用这个方法了,在我的…

    2022年7月27日
    7
  • leetcode链表问题_c++反转链表

    leetcode链表问题_c++反转链表给你单链表的头指针 head 和两个整数 left 和 right ,其中 left <= right 。请你反转从位置 left 到位置 right 的链表节点,返回 反转后的链表 。示例 1:输入:head = [1,2,3,4,5], left = 2, right = 4输出:[1,4,3,2,5]示例 2:输入:head = [5], left = 1, right = 1输出:[5] 提示:链表中节点数目为 n1 <= n <= 500-500

    2022年8月8日
    4
  • MySQL中count(*)、count(主键id)、count(字段)和count(1)那种效率更高?「建议收藏」

    MySQL中count(*)、count(主键id)、count(字段)和count(1)那种效率更高?

    2022年2月17日
    45
  • three.js创建简单的3D机房(1) 创建机柜模型-2

    three.js创建简单的3D机房(1) 创建机柜模型-2/****创建机柜门接上一篇*/letrearGeometryDoor=newTHREE.BoxGeometry(basicParameters.thickness,this.cabinetObj.h,this.cabinetObj.w+basicParameters.thickness*2);letmaterialsbgDoor=[];for(leti=0;i<rearGeometryDoor.faces.length/2;i+=1)

    2025年7月31日
    5
  • 组合数常用计算公式

    组合数常用计算公式Cnm=n!m!∗(n−m)!C_n^m=\frac{n!}{m!*(n-m)!}Cnm​=m!∗(n−m)!n!​Cn2=n∗(n−1)2C_n^2=\frac{n*(n-1)}{2}Cn2​=2n∗(n−1)​Cn3=n∗(n−1)∗(n−2)6C_n^3=\frac{n*(n-1)*(n-2)}{6}Cn3​=6n∗(n−1)∗(n−2)​Cnm=Cn−1m−1+Cn−1mC_n^m…

    2022年7月25日
    10
  • 计算机网络之TCP/UDP协议详解[通俗易懂]

    计算机网络之TCP/UDP协议详解[通俗易懂]深度理解TCP/IP1.TCP基础知识1.1什么是TCP?1.2什么是TCP连接?1.3TCP协议段格式1.4TCP主要特点2.UDP基础知识2.1UDP是什么?2.2UDP的协议段格式2.3UDP的主要特点2.4UDP的缓冲区3.TCP和UDP区别总结4.TCP保证可靠的机制4.1重传机制(这里只说了超时重传)4.2滑动窗口4.3流量控制4.3拥塞控制1.TCP基础知识1.1什么是TCP?TCP是⾯向连接的、可靠的、面向字节流的传输层通信协议面向连接:只能一对一连接,

    2022年5月9日
    36

发表回复

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

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