您现在的位置是:首页 > 技术教程 正文

三行代码实现图像画质修复,图片清晰度修复,清晰度提升python

admin 阅读: 2024-03-24
后台-插件-广告管理-内容页头部广告(手机)

核心代码

# 原始文件 enhancer = ImageEnhance.Sharpness(Image.open('文件路径.png')) # 增强图片 img_enhanced = enhancer.enhance(增强系数float) # 输出目标文件 img_enhanced.save('文件名.png')
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

注意,输入输出文件格式必须一致

所需依赖

# 文件选择框,可以直接输相对路径不引入这个 from tkinter import filedialog # 增强 from PIL import Image, ImageEnhance
  • 1
  • 2
  • 3
  • 4

代码实现

from tkinter import filedialog from PIL import Image, ImageEnhance def open_file_dialog(): file_path = filedialog.askopenfilename() # 在这里添加代码,处理文件路径 print("选择的文件路径:", file_path) return file_path # 打开原图像 # img = Image.open('image.png') filePath = open_file_dialog() img = Image.open(filePath) # 设置增强因子 factor = float(input('请输入增强系数(1.0~99.9):')) enhancer = ImageEnhance.Sharpness(img) # 增强图片 img_enhanced = enhancer.enhance(factor) # 保存增强后的图像 arr = filePath.split('/') i=0 fileDir='' len = len(arr) while i < len-1: fileDir += arr[i]+'/' i += 1 img_enhanced.save(fileDir+'output'+factor.__str__()+arr[len-1]) print('输出文件为:'+fileDir+'output'+factor.__str__()+arr[len-1])
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35

应用层面的话复制上面代码直接执行即可,唠叨两句讲讲我的实现思路:open_file_dialog()函数使用 tkinter 实现文件获取拿到文件名,用于识别需要修复的image;然后使用 PIL 的增强功能生成好画质修复后的图片;路径拼接确定输出路径和文件名为原路径下的output+原文件名,下面附上PIL的另外两个基础功能,如果有提升锐度和对比度的需求也可以自行改写相关代码:

增强锐度

from PIL import Image, ImageEnhance # 打开图片 img = Image.open('image.png') # 增强锐度 sharpness = ImageEnhance.Sharpness(img) img = sharpness.enhance(1.5) # 显示图片 img.show()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

增强对比度

from PIL import Image, ImageEnhance # 打开图片 img = Image.open('image.png') # 增强对比度 contrast = ImageEnhance.Contrast(img) img = contrast.enhance(1.5) # 显示图片 img.show()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
标签:
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

在线投稿:投稿 站长QQ:1888636

后台-插件-广告管理-内容页尾部广告(手机)
关注我们

扫一扫关注我们,了解最新精彩内容

搜索