当前位置: 首页 > ai >正文

数字图像处理2——图像增强

目的:突出某些信息,削弱不需要的信息

可以利用颜色,形状,形态学

直接灰度映射:对点的灰度值通过某种函数规则映射到新的灰度值

比如g(i,j)=a⋅f(i,j)+bg(i,j)=a⋅f(i,j)+b

或者扩展感兴趣的,牺牲其他的/压缩其他的

用cv2.lut()完成映射

dst = cv2.LUT(src, lut[, dst])

src输入图像,通常是一个灰度图像或者彩色图像。

lut查找表,应该是一个大小为 [256,1] 或 [256,3] 的数组(对于灰度图像和彩色图像分别适用),其中包含了从旧像素值到新像素值的映射关系。每个元素的取值范围在 [0,255] 之间。

dst可选参数,输出图像,其大小和深度与输入图像相同。

非线性变换:指数变换(伽马变换)

如果光照较暗,可尝试(但是首选物理手段)

im_for_read="D:\AAAproject\PYproject\EXPERuse\jhk-1754814023931.jpg"
imgg=cv2.imread(im_for_read,-1)
def gamma_transform(image,gamma):inv_Gamma = 1.0 / gammatable=np.array([(i / 255.0)**inv_Gamma * 255 for i in range (256)]).astype("uint8")return cv2.LUT(image,table)
gamma=2.0
after_imgg=gamma_transform(imgg,gamma)
cv2.imshow("after_imgg",after_imgg)
cv2.imshow("imgg",imgg)
cv2.waitKey(0)

这是用1/gamma变换,所以当γ大于1会变亮

直方图变换(少用)

统计每个灰度级出现的频数

直方图均衡

把过于集中的直方图部分铺散

卷积

掩膜在这里也叫:滤波器,模板,滤波模板,,窗口,卷积滤波,卷积模板,卷积核

  1. 将卷积核中心对准图像某像素(如 (1,1))
  2. 对应位置相乘(除中心点外周围一圈)
  3. 所有乘积求和
  4. 结果作为输出图像该位置的像素值
  5. 滑动到下一个位置,重复

 

kernel = np.array([[0, -1, 0], [-1, 5,-1],[0, -1, 0]])  # 锐化滤波器的例子
sharpened = cv2.filter2D(img, -1, kernel)

http://www.xdnf.cn/news/17446.html

相关文章:

  • Java设计模式之开闭原则介绍与说明
  • TypeScript中的type和interface的区别是什么?
  • 红楼梦文本数据分析
  • LeetCode 869.重新排序得到 2 的幂:哈希表+排序(一次初始化)
  • 前端开发的奇技淫巧 --- 持续更新中
  • 使用线性降维方法进行数据降维
  • 使用tcp ntrip 协议 接收数据报错 java.net.SocketException: Connection reset
  • MariaDB 数据库管理与web服务器
  • 变量详解:创建初始化与内存管理
  • 【数据结构入门】栈和队列的OJ题
  • Virtio 驱动关键结构体与函数详解
  • RabbitMQ面试精讲 Day 18:内存与磁盘优化配置
  • 01.【面试题】在SpringBoot中如何实现多数据源配置
  • UNet改进(31):基于Adaptive Attention的UNet设计与实践
  • 智慧社区(十一)——Spring Boot 实现 Excel 导出、上传与数据导入全流程详解
  • 【永磁同步电机数学模型全程推导】【7 转矩方程】
  • IntelliJ IDEA 2025.2 重磅发布
  • 移动端音频处理实践:59MB变声应用的技术实现分析
  • 【GPT入门】第43课 使用LlamaFactory微调Llama3
  • GitLab 零基础入门指南:从安装到项目管理全流程
  • 复杂项目即时通讯从android 5升级android x后遗症之解决 ANR: Input dispatching timed out 问题 -优雅草卓伊凡
  • Android Intent 解析
  • 绕过文件上传漏洞并利用文件包含漏洞获取系统信息的技术分析
  • GPT OSS深度解析:OpenAI时隔6年的开源模型,AI民主化的新里程碑?
  • ubuntu 安装内核模块驱动 DKMS 介绍
  • RL代码实践 02——策略迭代
  • IDEA 如何导入系统设置
  • Go语言中切片(Slice)的拷贝
  • IDEA 快捷编辑指南
  • Mybatis学习之动态SQL(八)