当前位置:   article > 正文

用python进行图片处理的一些方法_使用python进行图片处理

使用python进行图片处理

# 图片文字的正确显示

# 图片中负号的正确显示

# 图片的不同方式的拼接

 此方法一可以解决负号显示问题,方法二仅可以将中文汉字的显示问题解决。

  1. #更改字体方法一
  2. # 设置西文字体为新罗马字体
  3. from matplotlib import rcParams
  4. config = {
  5. "font.family":'SimHei', # 设置字体类型
  6. "axes.unicode_minus": False #解决负号无法显示的问题
  7. }
  8. rcParams.update(config)
  9. # 更改字体方法二
  10. import matplotlib.pyplot as plt
  11. plt.rcParams['font.sans-serif'] = 'SimHei'

将17份图片按照列展示出来,第一列为images,第二列为images1,第三列为images2,最终生成一份3列17行的图片排列

  1. #保存图片//#融合图片
  2. from PIL import Image
  3. width = 394 *3
  4. height = 275 *17
  5. # 创建一个2x3大小的空白图片
  6. result_image = Image.new('RGB', (width, height))
  7. images=[]
  8. # 分别打开十七张图片
  9. for i in range(17):
  10. image_path = f"D:\\Dasan\\shujuwajue\\三峡文件数据分析\\三峡库区作物结构\\比例和ACC\\Figure 2024-03-25 214059 ({i}).png"
  11. imagei = Image.open(image_path)
  12. images.append(imagei)
  13. images1=[]
  14. # 分别打开十七张图片
  15. for i in range(17):
  16. image_path = f"D:\\Dasan\\shujuwajue\\三峡文件数据分析\\三峡库区作物结构\\比例和NH3_N2O\\Figure 2024-03-26 192412 ({i}).png"
  17. imagei = Image.open(image_path)
  18. images1.append(imagei)
  19. images2=[]
  20. # 分别打开十七张图片
  21. for i in range(17):
  22. image_path = f"D:\\Dasan\\shujuwajue\\三峡文件数据分析\\三峡库区作物结构\\比例和runoff_erosion_leaching\\Figure 2024-03-26 193448 ({i}).png"
  23. imagei = Image.open(image_path)
  24. images2.append(imagei)
  25. # 设置新的宽度和高度
  26. new_width = images[0].width
  27. new_height = images[0].height
  28. # 修改图片的大小
  29. # 调整 images 中的图像大小
  30. for i in range(1, 17):
  31. images[i] = images[i].resize((new_width, new_height))
  32. # 调整 images1 中的图像大小
  33. for i in range(0, 17):
  34. images1[i] = images1[i].resize((new_width, new_height))
  35. # 调整 images2 中的图像大小
  36. for i in range(0, 17):
  37. images2[i] = images2[i].resize((new_width, new_height))
  38. # 将三组十七张图片按照顺序粘贴到结果图片上
  39. for i in range(17):
  40. result_image.paste(images[i], (0, i * new_height))
  41. result_image.paste(images1[i], (new_width, i * new_height))
  42. result_image.paste(images2[i], (2 * new_width, i * new_height))
  43. # 保存结果图片
  44. result_image.save(r"D:\Dasan\shujuwajue\三峡文件数据分析\三峡库区作物结构\result_image1.jpg")

在同一个文件夹下的三张图片的拼接//我通常是将其生成的三个小的图片将其放置到一起,形成横坐标一致,纵坐标不同的一张图片,一行三列

  1. #保存图片//#融合图片 #同一个文件夹下的三张图片的拼接
  2. from PIL import Image
  3. width = 389 *3
  4. height = 260
  5. # 创建一个1x3大小的空白图片
  6. result_image = Image.new('RGB', (width, height))
  7. images=[]
  8. # 分别打开三张图片
  9. for i in range(3):
  10. image_path = f"D:\\Dasan\\shujuwajue\\三峡文件数据分析\\三峡库区作物结构\\拟合曲线\\rapeseed\\Figure 2024-03-29 153346 ({i}).png"
  11. imagei = Image.open(image_path)
  12. images.append(imagei)
  13. # 设置新的宽度和高度
  14. new_width = images[0].width
  15. new_height = images[0].height
  16. # 修改图片的大小
  17. # 调整 images 中的图像大小
  18. for i in range(1, 3):
  19. images[i] = images[i].resize((new_width, new_height))
  20. result_image.paste(images[0], (0, 0))
  21. result_image.paste(images[1], (new_width, 0))
  22. result_image.paste(images[2], (2 * new_width, 0))
  23. # 保存结果图片
  24. result_image.save(r"D:\Dasan\shujuwajue\三峡文件数据分析\三峡库区作物结构\拟合曲线\rapeseed\result_image1.jpg")

三个文件夹下的三张图片的拼接,我通常是将上面代码生成的三个图片的一张集合图片进行拼接,最终生成一个3行3列的矩阵图片

  1. #保存图片//#融合图片 #三个文件夹下的三张图片的拼接
  2. from PIL import Image
  3. width = 1167
  4. height = 260 *3
  5. # 创建一个1x3大小的空白图片
  6. result_image = Image.new('RGB', (width, height))
  7. images=[]
  8. # 分别打开三张图片
  9. image_path1 = r"D:\Dasan\shujuwajue\三峡文件数据分析\三峡库区作物结构\拟合曲线\rice\result_image1.jpg"
  10. image_path2 = r"D:\Dasan\shujuwajue\三峡文件数据分析\三峡库区作物结构\拟合曲线\maize\result_image1.jpg"
  11. image_path3 = r"D:\Dasan\shujuwajue\三峡文件数据分析\三峡库区作物结构\拟合曲线\rapeseed\result_image1.jpg"
  12. imagei1 = Image.open(image_path1)
  13. imagei2 = Image.open(image_path2)
  14. imagei3 = Image.open(image_path3)
  15. images.append(imagei1)
  16. images.append(imagei2)
  17. images.append(imagei3)
  18. # 设置新的宽度和高度
  19. new_width = images[0].width
  20. new_height = images[0].height
  21. # 修改图片的大小
  22. # 调整 images 中的图像大小
  23. for i in range(1, 3):
  24. images[i] = images[i].resize((new_width, new_height))
  25. result_image.paste(images[0], (0, 0))
  26. result_image.paste(images[1], (0, new_height))
  27. result_image.paste(images[2], (0, 2* new_height))
  28. # 保存结果图片
  29. result_image.save(r"D:\Dasan\shujuwajue\三峡文件数据分析\三峡库区作物结构\拟合曲线\result_image2.jpg")

或许之后还会更新,或者会发布新的文章来补充说明

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/554817?site
推荐阅读
相关标签
  

闽ICP备14008679号