图像亮度提取

import cv2
import numpy as np
img=cv2.imread('demo.jpg')
img_gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
brightness=np.mean(img_gray)

图像亮度调整

res = np.uint8(np.clip((2 * img + 20), 0, 255))

CLAHE处理

img_clahe = np.zeros_like(img)
clahe = cv2.createCLAHE(clipLimit=2.0, tileGridSize=(8, 8))
for i in range(3):                                          img_clahe[:, :, i] = clahe.apply(img[:, :, i])          

MSRCR处理

# -*- coding: utf-8 -*-
import os
import cv2
import numpy as npdef retinex_scales_distribution(max_scale, nscales):scales = []scale_step = max_scale / nscalesfor s in range(nscales):scales.append(scale_step * s + 2.0)return scalesdef CR(im_ori, im_log, alpha=128., gain=1., offset=0.):im_cr = im_log * gain * (np.log(alpha * (im_ori + 1.0)) - np.log(np.sum(im_ori, axis=2) + 3.0)[:, :, np.newaxis]) + offsetreturn im_crdef MSRCR(image_path, max_scale, nscales, dynamic=2.0, do_CR=True):im_ori = np.float32(image_path[:, :, (2, 1, 0)])scales = retinex_scales_distribution(max_scale, nscales)im_blur = np.zeros([len(scales), im_ori.shape[0], im_ori.shape[1], im_ori.shape[2]])im_mlog = np.zeros([len(scales), im_ori.shape[0], im_ori.shape[1], im_ori.shape[2]])for channel in range(3):for s, scale in enumerate(scales):# If sigma==0, it will be automatically calculated based on scaleim_blur[s, :, :, channel] = cv2.GaussianBlur(im_ori[:, :, channel], (0, 0), scale)im_mlog[s, :, :, channel] = np.log(im_ori[:, :, channel] + 1.) - np.log(im_blur[s, :, :, channel] + 1.)im_retinex = np.mean(im_mlog, 0)if do_CR:im_retinex = CR(im_ori, im_retinex)im_rtx_mean = np.mean(im_retinex)im_rtx_std = np.std(im_retinex)im_rtx_min = im_rtx_mean - dynamic * im_rtx_stdim_rtx_max = im_rtx_mean + dynamic * im_rtx_stdim_rtx_range = im_rtx_max - im_rtx_minim_out = np.uint8(np.clip((im_retinex - im_rtx_min) / im_rtx_range * 255.0, 0, 255))return im_outif __name__ == '__main__':    s=300 #300n=3   #3d=2   #2no_cr=Trueimglist='demo.txt'outdir='results'f=open(imglist,'r')                      lines=f.readlines()                          if not os.path.exists(outdir):           os.makedirs(outdir)                  for line in lines:                       imgpath=line.strip().split(' ')[0]                         imgdir,imgname=os.path.split(imgpath)print('imgpath',imgpath)       im=cv2.imread(imgpath)if im is None:print('img is None!',imgpath)h,w,c=im.shape#im_size=cv2.resize(im,(int(w/4),int(h/4)))im_out = MSRCR(im, s, n, d, not no_cr)output=os.path.join(outdir,imgname)cv2.imwrite(output, im_out[:, :, (2, 1, 0)])

图像处理 亮度、CLAHE处理、MSRCR相关推荐

  1. 数字图像处理—亮度变换与空间滤波—亮度变换函数

    数字图像处理-亮度变换与空间滤波-亮度变换函数 参考资料:<数字图像处理>,仅供学习参考. 亮度变换函数仅取决于亮度的值,与像素位置无关,所以亮度变换函数通常可写成如下形式: s=T(r) ...

  2. C++图像处理 -- 亮度/对比度调整

    阅读提示:     <C++图像处理>系列以代码清晰,可读性为主,全部使用C++代码.     <Delphi图像处理>系列以效率为侧重点,一般代码为PASCAL,核心代码采用 ...

  3. c++ 绘制函数图像_【图像增强】CLAHE 限制对比度自适应直方图均衡化

    文章来自:微信公众号[机器学习炼丹术]. 文章目录: 1 基本概述 2 竞赛中的CLAHE实现 3 openCV绘制直方图 4 对比度Contrast 5 Contrast Stretching 6 ...

  4. JsCV Core v0.2发布 Javascript图像处理系列目录

    JsCV Core是一个开源的Javascript图像处理核心库,其在MIT许可下发布. 简介 本质上JsCV是旨在:用Javascript做一些Computer Vision(计算机视觉)的事情的. ...

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

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

  6. MATLAN图像处理之盲去卷积

    %盲去卷积 %图像复原中,困难的是得到PSF(PSF) 不以PSF复原图像的方法 盲去卷积 %MLE 最大似然估计为基础,用被随机噪声干扰的量进行估计的最优化策略 %将图像数据看成是随机量,它们与另一 ...

  7. MATLAN图像处理之高频强调滤波(图像增强)

    书中是对X拍的图片进行了增强  下面这个例子不太合适  但是也能体会到高频强调滤波的作用 % 图中可以看出  高频强调滤波在增强边缘的同时  距离原图的色度较近 %高通滤波器偏离了直流项,从而把图像的 ...

  8. CLAHE算法实现图像增强「AI工程论」

    关注:决策智能与机器学习,深耕AI脱水干货 作者 |  机器学习炼丹术 来源 |  机器学习炼丹术 1 基本概述 CLAHE是一个比较有意思的图像增强的方法,主要用在医学图像上面.之前的比赛中,用到了 ...

  9. 视觉组考核——装甲板识别

    视觉组考核--装甲板识别 识别Robomaster的装甲板的简易程序 算法分析 装甲板识别主要分这几步 图像处理->提取灯柱同时对灯柱进行筛选->灯条匹配->装甲板的筛选 1.图像处 ...

最新文章

  1. struts2之ModelDriven的使用
  2. 最强的Attention函数诞生啦,带给你意想不到的巨大提升!
  3. socket网络编程——多进程、多线程处理并发
  4. spring— Spring与Web环境集成
  5. MyEclipse 10.5 安装SVN插件
  6. 决策树算法学习笔记(提升篇)
  7. Python机器学习:逻辑回归算法以及多类分类
  8. IPv6 to IPv4过渡技术——6to4隧道配置实例
  9. 虚拟机安装MySQL教程
  10. 人工智能的变革趋势: 从弱人工智能到强人工智能,再到生物智能
  11. windows复制文件命令Xcopy
  12. 20220724 三角函数系的正交性
  13. dimens文件生成器
  14. html中span隐藏属性,span标签的class属性
  15. CTS测试中testYuvBurst[1]项
  16. table.render 中 cols 属性 【【问题】】
  17. 直接在文件夹打开cmd
  18. 羊毛出在狗身上让猪来买单 - 智能音箱背后的平台经济...
  19. JAVASE面向对象基础
  20. Algorithm Review 7 数学相关

热门文章

  1. hooks 系列七:自定义 hook
  2. 乖宝宠物IPO过会:年营收25.75亿 KKR与君联是股东
  3. excel设置打印区域_仅在没有打印区域的情况下打印Excel表
  4. apex声音断断续续_EPL S12单日汇总:apEX大发神威,Astralis全员发挥,瑞典双雄无奈败北...
  5. java对PNG图片圆角处理 保持PNG透明背景
  6. 华为云计算学习:计算虚拟化基础1
  7. PHP 正则表达式判断手机号和身份证号
  8. html下拉框内容新增,给html下拉框控件自动添加数据
  9. C语言基础 — 运算符
  10. android 评论盖楼,Android 使用ListView实现网易评论盖楼效果