通过使用不同方法对图像进行锐化处理,更改参数对比图像显示,代码如下:

# (6)、随机读取一幅图像,对其进行锐化,
#导入库
import cv2
import skimage.filters as af
import  skimage.filters
import matplotlib.pyplot as plt
from PIL import  Image
from PIL import  ImageFilter
from PIL.ImageFilter import  FIND_EDGES,EDGE_ENHANCE,EDGE_ENHANCE_MORE,SHARPEN# im=Image.open("image_01/肾穿病理镜下图片.png")
plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False  # 用来正常显示负号
# 导入图片
img_01=cv2.imread("img.png")
# 转换灰度
img=cv2.cvtColor(img_01, cv2.COLOR_BGR2GRAY)# 显示图像
def show_img(ax_img,img,title,cmap="gray"):ax_img.imshow(img, cmap)ax_img.set_title(title)ax_img.set_axis_off()# 方法1:对公式中的总数取不同的值,对比显示实验结果;公式:锐化图像=原始图像+(原始图像-模糊图像)
def fun_01():# 高斯滤波器img_gaussianBlur = cv2.GaussianBlur(img, (3, 3), 1)# 锐化图像=原始图像+(原始图像-模糊图像)im_fun_01=img+(img-img_gaussianBlur)*10im_fun_02 = img + (img - img_gaussianBlur) * 20im_fun_03 = img + (img - img_gaussianBlur) * 30fig,(ax_img,im1,im2,im3)=plt.subplots(1,4)# 显示图像show_img(ax_img,img,"原始图像")show_img(im1,im_fun_01,"总数=10")show_img(im2,im_fun_02,"总数=20")show_img(im3, im_fun_03, "总数=30")plt.show()# 方法2:对参数radius与amount取不同的值,对比显示实验结果;
def fun_02():im_upsharp_1= skimage.filters.unsharp_mask(img, radius=1.0, amount=100.0, multichannel=False, preserve_range=False)im_upsharp_2=skimage.filters.unsharp_mask(img, radius=2.0, amount=50.0, multichannel=False, preserve_range=False)im_upsharp_3 = skimage.filters.unsharp_mask(img, radius=10.0, amount=80.0, multichannel=False, preserve_range=False)fig, (ax_img, im1, im2, im3) = plt.subplots(1, 4)# 显示图像show_img(ax_img, img, "原始图像")show_img(im1, im_upsharp_1, "im_upsharp_1")show_img(im2, im_upsharp_2, "im_upsharp_2")show_img(im3, im_upsharp_3, "im_upsharp_3")plt.show()# 方法3:按照实验指导取不同的参数,对比显示实验结果。
def fun_03():im=Image.open("img.png")im_01=im.filter(FIND_EDGES)im_02=im.filter(EDGE_ENHANCE)im_03=im.filter(EDGE_ENHANCE_MORE)im_04=im.filter(SHARPEN)fig, (ax_img, im1, im2, im3) = plt.subplots(1, 4)# 显示图像show_img(ax_img,img,"原始图像")show_img(im1,im_01,"总数=10")show_img(im2,im_02,"总数=20")show_img(im3, im_03, "总数=30")plt.show()if __name__ == '__main__':fun_01()fun_02()fun_03()

运行结果:

fun_01()

fun_02()

fun_03()

Python 使用多种方法对图像进行锐化处理——图像处理相关推荐

  1. Fib(兔子问题)python实现多种方法

    # 斐波那契数列是学计算机入门最经典的一道题目# 斐波那契数列(Fibonacci sequence),又称黄金分割数列.因数学家列昂纳多·斐波那契(Leonardoda Fibonacci) # 以 ...

  2. Python使用数学形态学方法处理图像

    本文要点在于Python扩展库numpy.scipy.matplotlib的用法和数学形态学中开.闭.腐蚀.膨胀等运算的实现. >>> import numpy as np > ...

  3. 通过python使用多种方法改变图片尺寸

    图片拉伸改变尺寸 文章目录 图片拉伸改变尺寸 使用PIL库 使用PythonMagick库 保持比例 不保持比例 使用PIL库 使用PIL库当中的Image功能即可实现对图片的拉伸. 在下列代码中,我 ...

  4. python怎么读文件内容-Python读取文件内容为字符串的方法(多种方法详解)

    以下笔记是我在 xue.cn 学习群之数据分析小组所整理分享的心得.相关背景是:我选择中文词频统计案例作为考察大家python基础功掌握程度. 以小见大,下面是2个小技能的具体实战: 如何灵活地处理文 ...

  5. python判断字母数字_Python判断字符串是否为字母或者数字(浮点数)的多种方法

    str为字符串s为字符串 str.isalnum() 所有字符都是数字或者字母 str.isalpha() 所有字符都是字母 str.isdigit() 所有字符都是数字 str.isspace() ...

  6. python去重语句_Python对列表去重的多种方法(四种方法)

    无聊统计了下列表去重到底有多少种方法.下面小编给大家总结一下,具体内容详情如下: 开发中对数组.列表去重是非常常见的需求,对一个list中的id进行去重,有下面几种方法,前面两种方法不能保证顺序, 后 ...

  7. python清空集合_python集合删除多种方法详解

    这篇文章主要介绍了python集合删除多种方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 删除指定的元素 A={'a','c','b','d ...

  8. python两张图合成一张_Python图像处理实现两幅图像合成一幅图像的方法【测试可用】...

    本文实例讲述了Python图像处理实现两幅图像合成一幅图像的方法.分享给大家供大家参考,具体如下: 将两幅图像合成一幅图像,是图像处理中常用的一种操作,python图像处理库PIL中提供了多种种将两幅 ...

  9. python 多重列表去重_Python对列表去重的多种方法(四种方法)

    Python对列表去重的多种方法(四种方法) 无聊统计了下列表去重到底有多少种方法.下面小编给大家总结一下,具体内容详情如下: 开发中对数组.列表去重是非常常见的需求,对一个list中的id进行去重, ...

最新文章

  1. Linux必学的网络操作命令
  2. numpy可视化教程
  3. SpringMVC学习总结(2)——SpringMVC返回json配置
  4. android 制作的精美闹钟
  5. jQuery的ajax()、post()方法提交数组,参数[] 问题
  6. 从早期的初创企业到MongoDB的经理(播客)
  7. 阿里中台建设全解密:包含哪些内容?如何发挥作用?
  8. 2008不可错过的好莱坞电影
  9. 关于var、let和const
  10. 弹窗编辑jsp报表内数据
  11. 最佳路径搜索(一):盲目搜索(深度优先,广度优先,深度限制,迭代加深)
  12. 使用 travis + gitbook + github pages 优雅地发布自己的书
  13. 两个9014三极管简易开关电路分析
  14. tensorflow获取tensor的shape
  15. codeforces #630 F. Selection of Personnel
  16. 三十岁以后,我一定能阔起来!
  17. 斗鱼爬取主播相册爬虫函数封装
  18. 华为云、百度云 群控系统开发流程
  19. 利用CompletableFuture集齐7龙珠
  20. 如何在Mac上获取App Store的ipa包(非越狱手机也可以)

热门文章

  1. Rendering in Rails
  2. 无线传感器网络及其安全问题
  3. Spring freemarker word模板导出List数据
  4. JS中用replace替换特殊字符
  5. js replace替换字符串中某个指定字符
  6. Spring Security OAuth2 微服务认证中心自定义授权模式扩展以及常见登录认证场景下的应用实战
  7. Android Monkey测试
  8. 小米2s Android pie,抢先体验 Android Pie 小米 MIX 2s 已收到推送
  9. python关键字定义_python使用什么关键字定义类
  10. 如何解决UE5动态模糊问题