在别人帖子上进行了改进,加入了读取文件夹下的图片并进行批量处理并保存的模块

import cv2
import sys
import os
import numpy as np
from PIL import Image
import matplotlib.pyplot as plt
"""对比度调整算法:主要是对RGB空间进行调整。设定合适的RGB阈值,并在此阈值基础上计算出合适的调整系数进行对比度调整。参考CSDN博客:https://blog.csdn.net/maozefa/article/details/7069001
"""
def ContrastAlgorithm(rgb_img, contrast=0.5, threshold=0.5):img = rgb_img * 1.0img_out = img# 增量等于1,按灰度阈值最多调整成八种颜色:# 黑、红、绿、蓝、黄(255,255,0)、品红(255,0,255)、青(0,255,255)、白if contrast == 1:# newRGB = RGB >= Threshold? 255 : 0mask_1 = img >= threshold * 255.0rgb1 = 255.0rgb2 = 0img_out = rgb1 * mask_1 + rgb2 * (1 - mask_1)# 增量大于0小于1elif contrast >= 0:alpha = 1 - contrastalpha = 1 / alpha - 1img_out[:, :, 0] = img[:, :, 0] + (img[:, :, 0] - threshold * 255.0) * alphaimg_out[:, :, 1] = img[:, :, 1] + (img[:, :, 1] - threshold * 255.0) * alphaimg_out[:, :, 2] = img[:, :, 2] + (img[:, :, 2] - threshold * 255.0) * alpha# 增量小于0else:alpha = contrastimg_out[:, :, 0] = img[:, :, 0] + (img[:, :, 0] - threshold * 255.0) * alphaimg_out[:, :, 1] = img[:, :, 1] + (img[:, :, 1] - threshold * 255.0) * alphaimg_out[:, :, 2] = img[:, :, 2] + (img[:, :, 2] - threshold * 255.0) * alpha# img_out = img_out / 255.0return img_out
#批量修改对比度并保存
def Save2dir(data_dir,save_dir):if not os.path.exists(save_dir):os.mkdir(save_dir)for name in os.listdir(data_dir):save_name = name[:-4] + "hh.png"img = cv2.imread(os.path.join(data_dir,name))img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)img_new = ContrastAlgorithm(img, contrast, threshold)# plt.imshow(img_new)# plt.savefig(os.path.join(save_dir,save_name))img_new = img_new[:, :, ::-1]cv2.imwrite(os.path.join(save_dir,save_name), img_new)#  run : python Contrast.py (path) (contrast) (threshold)
def show():path = '/home/ljs/Desktop/test/Screenshot from bearing.mp4.png' #单张图片测试img = cv2.imread(path)img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)img_new = ContrastAlgorithm(img, contrast, threshold)plt.figure("img_original")plt.imshow(img / 255.0)plt.axis('off')plt.figure("img_contrast")plt.imshow(img_new / 255.0)plt.axis('off')plt.show()def save():Data_dir = "/home/ljs/Desktop/test"  # 要改变的图片的路径文件夹Save_dir = "/home/ljs/Desktop/test"  # 要保存的图片的路径文件夹Save2dir(Data_dir,Save_dir)if __name__ == '__main__':contrast = 0.5  # 范围:-1至1threshold = 0.5  # 范围:0至1show() # 查看一张图的效果# save() # 进行批量处理并且保存

Python批量处理图片对比度并且保存相关推荐

  1. 如何用python批量处理图片大小_python批量修改图片大小的方法

    本文实例为大家分享了python批量修改图片大小的具体代码,供大家参考,具体内容如下 引用的模块 from PIL import Image Image的使用 def resize_image(img ...

  2. python 批量处理图片文件(做到图片不变形)

    对此次项目中主要涉及到的内容做以下说明: 1.需要收集大量资料(包括收集不同信息和图片): 2.资料太多需要做同样的操作处理(包括修改文件名和修改图片尺寸). 一.修改文件名 import os os ...

  3. python批量_Python学习第九十三天:Python批量处理图片

    1.Pillow库介绍Pillow是Python里的图像处理库,提供了了广泛的文件格式支持,强大的图像处理能力,主要包括图像储存.图像显示.格式转换以及基本的图像处理操作等: 安装 pip insta ...

  4. python批量处理图片属性_python PIL 批量处理处理图片

    python PIL 批量处理处理图片 客户给一堆图片要传到后台,图片太大了,上百张图用photoshop改太慢,就想到用python写个简单的批处理.功能简单就是把原图按比例缩小,代码更简单 20多 ...

  5. python批量处理图片颜色反转_Python批量处理图片

    1.Pillow库介绍 Pillow是Python里的图像处理库,提供了了广泛的文件格式支持,强大的图像处理能力,主要包括图像储存.图像显示.格式转换以及基本的图像处理操作等: 安装 pip inst ...

  6. 用python批量处理图片_Python学习九十三天:Python批量处理图片

    1.Pillow库介绍 Pillow是Python里的图像处理库,提供了了广泛的文件格式支持,强大的图像处理能力,主要包括图像储存.图像显示.格式转换以及基本的图像处理操作等: 安装 pip inst ...

  7. Python批量处理图片

    1.Pillow库介绍 Pillow是Python里的图像处理库,提供了了广泛的文件格式支持,强大的图像处理能力,主要包括图像储存.图像显示.格式转换以及基本的图像处理操作等: 安装 pip inst ...

  8. python 批量截取图片 并保存原图片名

    前言 最近需要对图片进行批量截取处理,所以写下来作为笔记 代码 (1)对每张图片都需要点选然后截图 import matplotlib.pyplot as plt import os from PIL ...

  9. Python批量将Photoshop文件保存为图片

    这是给zhenguo老师的投稿,已经收获50元稿费. 困扰我的问题 我是一名电商美工设计师,俗称电商图片搬运工,我的桌面经常是这样的.再就是这样的.各种的psd文件再加上文字无法表达色彩和构图的关键信 ...

最新文章

  1. 精选Pycharm里6大神器插件
  2. Jenkins简介及在Windows上的简单使用示例
  3. 邮件服务器SMTP概述
  4. Java程序员从阿里面试回来,这些面试题你们会吗?
  5. numpy 排序, 查询功能
  6. Viewer.js 图片预览插件
  7. Graph Valid Tree
  8. 苹果高管谈论iPhone 12影像功能:硬件和软件的整体结合
  9. qcow2镜像转换为iso_电子数据镜像格式的转换,以qcow2转raw为例
  10. DRBD 管理、故障处理部分
  11. EasyCVR调用Ehome协议接入的硬盘录像机设备录像无法播放,如何处理?
  12. “移动办事之城”杭州:超8成个人办理事项凭身份证通办
  13. 【手机跳板 多款软件测试】图文演示!
  14. selenium爬取新浪滚动新闻
  15. http缓慢攻击漏洞
  16. 主语从句、宾语从句、表语从句、同位语从句
  17. TortoiseGit 局域网版本库的创建方法
  18. win7通过远程桌面连接win10失败解决方法
  19. RGB、Lab等颜色空间的区别
  20. 第一章计算机网络体系结构(二)

热门文章

  1. 计算机网络VLAN划分实验报告
  2. 正确设置Windows缓存 让系统快步如飞
  3. mooc作业怎么上传附件_适合团队协作的工作便签软件怎么在团队便签中上传附件文件?_纳图电脑维修...
  4. ERP学习--MRP公式与计算
  5. java jdom 更新xml_用JDOM完成Java更新XML文件
  6. cms小猪o2o企业付款配置中微信提现配置实现商家转账到零钱(企业付款到零钱)解决:“操作失败!产品权限验证失败,请查看您当前是否具有该产品的权限“的错误提示
  7. 《各大IT公司薪金大曝光》(资料版)
  8. 免费高效的Speedpdf,一款好用的在线转换神器
  9. Linux网络编程之System V消息队列
  10. 单应性Homography梳理,概念解释,传统方法,深度学习方法