当前位置: 首页 > news >正文

自己建网站开网店网站建设询价邀请函

自己建网站开网店,网站建设询价邀请函,泰安网站设计公司,广东建设报网站Python-OpenCV中的图像处理-形态学转换 形态学转换腐蚀膨胀开运算闭运算形态学梯度礼帽黑帽形态学操作之间的关系 形态学代码例程 形态学转换 形态学操作:腐蚀#xff0c;膨胀#xff0c;开运算#xff0c;闭运算#xff0c;形态学梯度#xff0c;礼帽#xff0c;黑帽等… Python-OpenCV中的图像处理-形态学转换 形态学转换腐蚀膨胀开运算闭运算形态学梯度礼帽黑帽形态学操作之间的关系 形态学代码例程 形态学转换 形态学操作:腐蚀膨胀开运算闭运算形态学梯度礼帽黑帽等主要涉及函数cv2.erode() cv2.dilate() cv2.morphologyEx()原理形态学操作是根据图像形状进行的简单操作。一般情况下对二值化图像进行的操作。需要输入两个参数一个是原始图像第二个被称为结构化元素或核它是用来决定操作的性质的。两个基本的形态学操作是腐蚀和膨胀。他们的变体构成了开运算闭运算梯度等。 腐蚀 就像土壤侵蚀一样这个操作会把前景物体的边界腐蚀掉但是前景仍然是白色。这是怎么做到的呢卷积核沿着图像滑动如果与卷积核对应的原图像的所有像素值都是 1那么中心元素就保持原来的像素值否则就变为零。这回产生什么影响呢根据卷积核的大小靠近前景的所有像素都会被腐蚀掉变为 0所以前景物体会变小整幅图像的白色区域会减少。这对于去除白噪声很有用也可以用来断开两个连在一块的物体等。 import numpy as np import cv2 from matplotlib import pyplot as pltimg cv2.imread(./resource/opencv/image/Morphology_1_Tutorial_Theory_Dilation.png, cv2.IMREAD_GRAYSCALE) kernel np.ones((5,5), np.uint8) erosion cv2.erode(img, kernelkernel, iterations1)plt.subplot(121), plt.imshow(cv2.cvtColor(img, cv2.COLOR_BGR2RGB)), plt.title(origin), plt.xticks([]), plt.yticks([]) plt.subplot(122), plt.imshow(cv2.cvtColor(erosion, cv2.COLOR_BGR2RGB)), plt.title(erode), plt.xticks([]), plt.yticks([]) plt.show()膨胀 与腐蚀相反与卷积核对应的原图像的像素值中只要有一个是 1中心元素的像素值就是 1。所以这个操作会增加图像中的白色区域前景。一般在去噪声时先用腐蚀再用膨胀。因为腐蚀在去掉白噪声的同时也会使前景对象变小。所以我们再对他进行膨胀。这时噪声已经被去除了不会再回来了但是前景还在并会增加。膨胀也可以用来连接两个分开的物体。 import numpy as np import cv2 from matplotlib import pyplot as plt# 膨胀 img cv2.imread(./resource/opencv/image/Morphology_1_Tutorial_Theory_Original_Image.png, cv2.IMREAD_GRAYSCALE)kernel np.ones((5,5), np.uint8) dilation cv2.dilate(img, kernelkernel, iterations1)plt.subplot(121), plt.imshow(cv2.cvtColor(img, cv2.COLOR_BGR2RGB)), plt.title(origin), plt.xticks([]), plt.yticks([]) plt.subplot(122), plt.imshow(cv2.cvtColor(dilation, cv2.COLOR_BGR2RGB)), plt.title(dilate), plt.xticks([]), plt.yticks([]) plt.show()开运算 先腐蚀再膨胀就叫做开运算。它被用来去除噪声。这里我们用到的函数是 cv2.morphologyEx() opening cv2.morphologyEx(img, cv2.MORPH_OPEN, kernel) 闭运算 先膨胀再腐蚀就叫做闭运算。它经常被用来填充前景物体中的小洞或者前景物体上的小黑点 closing cv2.morphologyEx(img, cv2.MORPH_CLOSE, kernel) 形态学梯度 其实就是一幅图像膨胀与腐蚀的差别结果看上去就像前景物体的轮廓。 gradient cv2.morphologyEx(img, cv2.MORPH_GRADIENT, kernel) 礼帽 原始图像与进行开运算之后得到的图像的差。下面的例子是用一个 9x9 的核进行礼帽操作的结果。 tophat cv2.morphologyEx(img, cv2.MORPH_TOPHAT, kernel) 黑帽 进行闭运算之后得到的图像与原始图像的差 blackhat cv2.morphologyEx(img, cv2.MORPH_BLACKHAT, kernel) 形态学操作之间的关系 形态学转换 Opening: dst open(src, element) dilate(erode(src, element), element)Closing: dst close(src, element) erode(dilate(src, element), element)Morphological gradient: dst morph_grad(src, element) dilate(src, element) - erode(src, element)“Top hat”: dst tophat(src, element) src - open(src, element)“Black hat”: dst blackhat(src, element) close(src, element) - src 形态学代码例程 import numpy as np import cv2 from matplotlib import pyplot as plt 形态学转换 Opening: dst open(src, element) dilate(erode(src, element), element)Closing:dst close(src, element) erode(dilate(src, element), element)Morphological gradient:dst morph_grad(src, element) dilate(src, element) - erode(src, element)Top hat:dst tophat(src, element) src - open(src, element)Black hat:dst blackhat(src, element) close(src, element) - src # 开运算 # 先进行腐蚀在进行膨胀叫做开运算。用来去除噪音 # opening cv2.morphologyEx(img, cv2.MORPH_OPEN, kernel)# 闭运算 # 先进行膨胀再进行腐蚀叫做闭运算。用来填充前景物体中的小洞或者全景上的小黑点。 # closing cv2.morphologyEx(img, cv2.MORPH_CLOSE, kernel)# 形态学梯度 # 就是一副图像膨胀与腐蚀的差别结果看上去就像前景物体的轮廓。 # gradient cv2.morphologyEx(img, cv2.MORPH_GRADIENT, kernel)# 礼帽 # 原始图像与进行开运算之后得到的图像的差 # tophat cv2.morphologyEx(img, cv2.MORPH_TOPHAT, kernel)# 黑帽 # 原始图像与进行闭运算之后得到的图像的差 # blackhat cv2.morphologyEx(img, cv2.MORPH_BLACKHAT, kernel)# 结构化元素 kernel_rect cv2.getStructuringElement(cv2.MORPH_RECT, (5,5)) # 矩形核 kernel_elli cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (5,5)) # 椭圆核 kernel_cros cv2.getStructuringElement(cv2.MORPH_CROSS, (5,5)) # 十字核# 卷积核 # kernel kernel_rects # kernel kernel_elli # kernel kernel_cros kernel np.ones((5,5), np.uint8) kernel9x9 np.ones((15,15), np.uint8)img_origin cv2.imread(./resource/opencv/image/Morphology_1_Tutorial_Theory_Dilation.png, cv2.IMREAD_COLOR) img_gray cv2.imread(./resource/opencv/image/Morphology_1_Tutorial_Theory_Dilation.png, cv2.IMREAD_GRAYSCALE)# 开运算 腐蚀膨胀 opening cv2.morphologyEx(img_gray, cv2.MORPH_OPEN, kernel)# 闭运算 膨胀腐蚀 closing cv2.morphologyEx(img_gray, cv2.MORPH_CLOSE, kernel)# 梯度 膨胀-腐蚀 gradient cv2.morphologyEx(img_gray, cv2.MORPH_GRADIENT, kernel)# 礼帽 原始图像与进行开运算之后得到的图像的差 tophat cv2.morphologyEx(img_gray, cv2.MORPH_TOPHAT, kernel9x9)# 黑帽 进行闭运算之后与原始图像的图像的差 blackhat cv2.morphologyEx(img_gray, cv2.MORPH_BLACKHAT, kernel9x9)# 腐蚀 erosion cv2.erode(img_gray, kernelkernel, iterations1)# 膨胀 dilation cv2.dilate(img_gray, kernelkernel, iterations1)plt.subplot(331), plt.imshow(cv2.cvtColor(img_origin,cv2.COLOR_BGR2RGB), gray), plt.title(origin), plt.xticks([]), plt.yticks([]) plt.subplot(332), plt.imshow(img_gray, gray), plt.title(gray), plt.xticks([]), plt.yticks([]) plt.subplot(333), plt.imshow(opening, gray), plt.title(open), plt.xticks([]), plt.yticks([]) plt.subplot(334), plt.imshow(closing, gray), plt.title(close), plt.xticks([]), plt.yticks([]) plt.subplot(335), plt.imshow(gradient, gray), plt.title(gradient), plt.xticks([]), plt.yticks([]) plt.subplot(336), plt.imshow(tophat, gray), plt.title(tophat), plt.xticks([]), plt.yticks([]) plt.subplot(337), plt.imshow(blackhat, gray), plt.title(blackhat), plt.xticks([]), plt.yticks([]) plt.subplot(338), plt.imshow(erosion, gray), plt.title(erode), plt.xticks([]), plt.yticks([]) plt.subplot(339), plt.imshow(dilation, gray), plt.title(dilate), plt.xticks([]), plt.yticks([]) plt.show()
http://www.huolong8.cn/news/310667/

相关文章:

  • 正在建设中的网站清远市发布
  • 高端营销型网站建设品牌iis 发布网站内部服务器错误
  • 怎么识别网站开发语言互联网人工智能
  • 简单的房源展示网站开发网站建设工资多少
  • 海珠建网站公司百度上搜索关键词如何在首页
  • 品牌网站设计打造系统页面模板
  • 网站开发的项目流程图百度做网站推广多少钱
  • 建设银行河北省分行网站邯郸外贸网站建设公司
  • 现在网站前台用什么做深圳龙华网站建设
  • cn网站建设多少钱wordpress站点名称的影响
  • 青岛免费模板建站删除的网站做404
  • 网站编程语言排行榜中国百科网vip钓鱼网站开发
  • 用户体验设计专业seo搜索价格
  • 佛山建设工程交易中心网站商城网站建设正规公司
  • 020网站模板茂名网站建设优化
  • 邢台当地网站建设免费咨询病情
  • 广州网站建设模板制作折叠网站开发工程师
  • 学做粤菜的网站有哪些做门票的网站
  • 有没有做代理商的明细网站如何自己制作一款手游
  • 有什么网站可以做wordpress 补丁
  • 网站制作完成之后进入什么阶段焦作商城网站建设
  • aspnet网站开发的书籍白银网站建设白银
  • 阿里云的轻量服务器怎么做网站锡山建设局网站
  • 一般网站字体多大自己做的网站手机不能看
  • 怎么注册自己的网站智慧团建官网入口登录
  • 公路建设网站做网站的公司怎么做抖音账号
  • 昆明建网站的公司做策划有帮助的网站
  • 济宁网站建设 帮站韶关企业网站建设公司
  • 网站建设丿选择金手指排名15建设网站教程视频下载
  • 网站建设的一般步骤包含哪些免费的会计做账系统