我是靠谱客的博主 机灵睫毛,最近开发中收集的这篇文章主要介绍【千律】OpenCV基础:图像的开运算和闭运算,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

环境:Python3.8 和 OpenCV

内容:图像的开运算和闭运算

开运算和闭运算:

开运算:平滑轮廓,消除毛刺

闭运算:平滑轮廓,填充孔洞

import cv2 as cv
import matplotlib.pyplot as plt


# 封装图片显示函数
def image_show(image):
    if image.ndim == 2:
        plt.imshow(image, cmap='gray')
    else:
        image = cv.cvtColor(image, cv.COLOR_BGR2RGB)
        plt.imshow(image)
    plt.show()


if __name__ == '__main__':

    # 读取灰度图像
    img_desk = cv.imread('desk.png', 0)

    # 灰度图二值化
    threshold = 90      # 二值化分割阈值
    max_value = 255     # 图像中的最大值
    [_, img_bin] = cv.threshold(img_desk, threshold, max_value, cv.THRESH_BINARY)

    # 建立结构元
    kernel = cv.getStructuringElement(cv.MORPH_RECT, (5, 5))

    # 开运算
    img_open = cv.morphologyEx(img_bin, cv.MORPH_OPEN, kernel)

    # 显示图像
    image_show(img_open)

    # 闭运算
    img_close = cv.morphologyEx(img_bin, cv.MORPH_CLOSE, kernel)

    # 显示图像
    image_show(img_close)

最后

以上就是机灵睫毛为你收集整理的【千律】OpenCV基础:图像的开运算和闭运算的全部内容,希望文章能够帮你解决【千律】OpenCV基础:图像的开运算和闭运算所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部