1,详细信息 https://github.com/jack16888/imgaug   color_brightness.py 要联合其他脚本使用。

2,该github中还有另外一种图像增强方法,请看github介绍imgaug。

# coding=utf-8
import os
import os
import cv2
import math
import numpy as np
import shutil
from PIL import Image
from PIL import ImageEnhance

"""
1、对比度:白色画面(最亮时)下的亮度除以黑色画面(最暗时)下的亮度;
2、色彩饱和度::彩度除以明度,指色彩的鲜艳程度,也称色彩的纯度;
3、色调:向负方向调节会显现红色,正方向调节则增加黄色。适合对肤色对象进行微调;
4、锐度:是反映图像平面清晰度和图像边缘锐利程度的一个指标。
"""

def compute(img):
    per_image_Rmean = []
    per_image_Gmean = []
    per_image_Bmean = []
    per_image_Bmean.append(np.mean(img[:, :, 0]))
    per_image_Gmean.append(np.mean(img[:, :, 1]))
    per_image_Rmean.append(np.mean(img[:, :, 2]))
    R_mean = np.mean(per_image_Rmean)
    G_mean = np.mean(per_image_Gmean)
    B_mean = np.mean(per_image_Bmean)
    return math.sqrt(0.241 * (R_mean ** 2) + 0.691 * (G_mean ** 2) + 0.068 * (B_mean ** 2))

def fun_color(image, coefficient, path_save):
    # 色度,增强因子为1.0是原始图像
    # 色度增强 1.5
    # 色度减弱 0.8
    enh_col = ImageEnhance.Color(image)
    image_colored1 = enh_col.enhance(coefficient)
    image_colored1.save(path_save)

def fun_Contrast(image, coefficient, path_save):
    # 对比度,增强因子为1.0是原始图片
    # 对比度增强 1.5
    # 对比度减弱 0.8
    enh_con = ImageEnhance.Contrast(image)
    image_contrasted1 = enh_con.enhance(coefficient)
    image_contrasted1.save(path_save)

def fun_Sharpness(image, coefficient, path_save):
    # 锐度,增强因子为1.0是原始图片
    # 锐度增强 3
    # 锐度减弱 0.8
    enh_sha = ImageEnhance.Sharpness(image)
    image_sharped1 = enh_sha.enhance(coefficient)
    image_sharped1.save(path_save)

def fun_bright(image, coefficient, path_save):
    # 变亮 1.5
    # 变暗 0.8
    # 亮度增强,增强因子为0.0将产生黑色图像; 为1.0将保持原始图像。
    enh_bri = ImageEnhance.Brightness(image)
    image_brightened1 = enh_bri.enhance(coefficient)
    image_brightened1.save(path_save)

def show_all():
    file_root = "/home/zhangwanchun/data/VOCdevkit/VOC2007_aug/JPEGImages/"
    xml_root = "/home/zhangwanchun/data/VOCdevkit/VOC2007_aug/Annotations/"
    save_root = "/home/zhangwanchun/data/VOCdevkit/VOC2007_aug/save/"
    xml_save = "/home/zhangwanchun/data/VOCdevkit/VOC2007_aug/xml/"
    list_file = os.listdir(file_root)
    cnt = 0
    for img_name in list_file:
        cnt += 1
        print("cnt=%d,img_name=%s" % (cnt, img_name))
        path = file_root + img_name
        name = img_name.replace(".jpg", "")
        image = Image.open(path)
        list_coe = [0.5,1,3]
        for val in list_coe:
            path_save_bright = save_root + name + "_bri_" + str(val) + ".jpg"
            fun_bright(image, val, path_save_bright)

path_save_color = save_root + name + "_color_" + str(val) + ".jpg"
            fun_color(image, val, path_save_color)

path_save_contra = save_root + name + "_contra_" + str(val) + ".jpg"
            fun_Contrast(image, val, path_save_contra)

path_save_sharp = save_root + name + "_sharp_" + str(val) + ".jpg"
            fun_Sharpness(image, val, path_save_sharp)

def my_aug():
    file_root = "/home/zhangwanchun/data/VOCdevkit/VOC2007_aug/JPEGImages/"
    save_root = "/home/zhangwanchun/data/VOCdevkit/VOC2007_aug/save/"
    xml_save = "/home/zhangwanchun/data/VOCdevkit/VOC2007_aug/xml/"
    xml_root = "/home/zhangwanchun/data/VOCdevkit/VOC2007_aug/Annotations/"
    list_file = os.listdir(file_root)
    cnt = 0
    for img_name in list_file:
        cnt += 1
        print("cnt=%d,img_name=%s" % (cnt, img_name))
        path = file_root + img_name
        name = img_name.replace(".jpg", "")
        image = Image.open(path)
        img = cv2.imread(path)
        mean_1 = compute(img)
        cof = 0.0
        if mean_1 < 40:
            cof = 3.5
        elif mean_1 < 60:
            cof = 3
        elif mean_1 < 80:
            cof = 2
        elif mean_1 < 90:
            cof = 1.5
        elif mean_1 < 110:
            cof = 1.1
        elif mean_1 > 130:
             cof = 0.5
        else:
             cof = 0.75

cof_contrast = 0.0
        if cof>1:
            cof_contrast = 1.5
        else:
            cof_contrast = 0.8
        xmlpath = xml_root + name + '.xml'
        
        path_save_bright = save_root + name + "_bri_" + str(cof) + '.jpg'
        path_save_bright_xml = xml_save + name + "_bri_" + str(cof) + '.jpg'
        shutil.copy(xmlpath,path_save_bright_xml.replace(".jpg", ".xml"))
        fun_bright(image, cof, path_save_bright)

path_save_sharp = save_root + name + "_sharp_" + str(2) + '.jpg'
        path_save_sharp_xml = xml_save + name + "_sharp_" + str(2) + '.jpg'
        shutil.copy(xmlpath, path_save_sharp_xml.replace(".jpg", ".xml"))
        fun_Sharpness(image, 2, path_save_sharp)

path_save_contra = save_root + name + "_contra_" + str(cof_contrast) + ".jpg"
        path_save_contra_xml = xml_save + name + "_contra_" + str(cof_contrast) + ".jpg"
        shutil.copy(xmlpath, path_save_contra_xml.replace(".jpg", ".xml"))
        fun_Contrast(image, cof_contrast, path_save_contra)

path_save_color = save_root + name + "_color_" + str(1.5) + ".jpg"
        path_save_color_xml = xml_save + name + "_color_" + str(1.5) + ".jpg"
        shutil.copy(xmlpath,path_save_color_xml.replace(".jpg", ".xml"))
        fun_color(image, 1.5, path_save_color)

if __name__ == "__main__":

#show_all()
    my_aug()

数据增强-亮度-对比度-色彩饱和度-色调-锐度 不改变图像大小 --增加ssd目标框xml文件的同步处理方法。相关推荐

  1. 数据增强-亮度-对比度-色彩饱和度-色调-锐度 不改变图像大小

    https://www.cnblogs.com/yanghailin/p/11106480.html # coding=utf-8 import os import os import cv2 imp ...

  2. 图像调整亮度饱和度 c语言,数据增强-亮度-对比度-色彩饱和度-色调-锐度 不改变图像大小...

    # coding=utf-8 import os import os import cv2 import math import numpy as np from PIL import Image f ...

  3. 总结 62 种在深度学习中的数据增强方式

    数据增强 数据增强通常是依赖从现有数据生成新的数据样本来人为地增加数据量的过程 这包括对数据进行不同方向的扰动处理 或使用深度学习模型在原始数据的潜在空间(latent space)中生成新数据点从而 ...

  4. 深度学习数据增强数据扩增方法

    随机裁剪 对图片随机0.6~1.0比率大小的区域进行裁剪. 然后resize到固定大小. torch.API torchvision.transforms.RandomCrop(size,paddin ...

  5. 大杀器!攻克目标检测难点秘籍四,数据增强大法

    点击上方"AI算法修炼营",选择加星标或"置顶" 标题以下,全是干货 前面的话 在前面的秘籍一:模型加速之轻量化网络.秘籍二:非极大抑制算法和回归损失优化之路. ...

  6. 图像分类之花卉图像分类(一)数据增强

    网上有很多图像分类的代码,有很多是必须要在GPU上面才能跑的,因为我想在自己的电脑跑,所以很多都是不能用的,而且说实话很多对我这个小白来说,都很难看懂.所以我找了一个就是之间用CNN写的神经卷积模型用 ...

  7. 目标检测中的数据增强

    目标检测中的数据增强 技术标签: 深度学习 人工智能 一.图像遮挡 ①random erase 用随机值或训练集的平均像素替换图像区域. URL: https://arxiv.org/pdf/1708 ...

  8. 使用 imgaug 对图像进行数据增强 Data Augmentation

    所谓数据增强,就正如 imgaug 库对自己的介绍: This python library helps you with augmenting images for your machine lea ...

  9. 数据增强:数据有限时如何使用深度学习 ?

    转自:https://www.leiphone.com/news/201805/avOH5g1ZX3lAbmjp.html 这篇文章是对深度学习数据增强技术的全面回顾,具体到图像领域.这是<在有 ...

  10. 在QT框架下进行仿照PS图像调整功能设计(亮度对比度,色相饱和度及明度)

    原文链接:https://blog.csdn.net/maozefa/article/details/4778934 图像亮度调整分为非线性和线性两种方法. 非线性图像亮度是将图像像素的R.G.B分别 ...

最新文章

  1. cached过高导致内存溢出 java head space
  2. 创新课程管理系统数据库设计心得
  3. android根据项目把文件编译到文件系统中
  4. Kubernetes入门——Kubernetes应用部署
  5. matlab 设计 18db,基于混沌理论的微弱MPSK信号解调方案设计
  6. IM、RTC技术两生花,看融云如何打造“IM+RTC+Push”一站式通信云服务
  7. java swing panel问题_关于 Java swing Box 的使用问题
  8. java 6 linux_CentOS 6.5 安装java
  9. 算法工程师面试备战笔记7_数据清洗与特征处理
  10. 全向移动机器人参数校准对比及流程分析
  11. SDWebImage的简单使用
  12. 大数据平台建设实施方案
  13. 浏览器文件服务器计算器设置,【魅蓝 U20使用总结】界面|浏览器|计算器|设置_摘要频道_什么值得买...
  14. C语言程序设计实验报告——实验五
  15. CmsEasy7.6.3.2逻辑漏洞
  16. 解析MATLAB短时傅里叶变换函数spectrogram()
  17. Spring Aop(入门篇)
  18. 教你如何用ps美化皮肤 每一步都很容易理解!
  19. IntelliJ IDEA 快捷键 Mac版(个人自用最新版)
  20. 【Mysql】Mysql数据库查询“表空间”

热门文章

  1. 搭建iis自己可以别人_自己也可以搭建一台好用实惠的软导一体机!
  2. windows hotkey
  3. 大理大学 计算机研究生分数线,大理大学2018年研究生复试分数线
  4. 2020线上夏令营感受
  5. 解决 注册谷 歌 邮 箱 gmail 手机号无法用于验证
  6. 2017杭州云栖大会精华PPT
  7. Browser 相关内容
  8. 方位角的表示及示意图
  9. 面向预测的时空数据学习方法分析
  10. (干货)备战2021年软考中级网络工程师-03-计算机系统开发基础