首页 > 编程语言 >算法介绍(一):LLCNN低光照

算法介绍(一):LLCNN低光照

时间:2024-07-24 20:07:05浏览次数:15  
标签:灰度级 变换 亮度 算法 LLCNN 图像 伽马 光照

对于一张灰度图片,像素值越大则亮度越高,像素值越小则亮度越低

在数字图像处理领域有一种很简单的图像亮度调整算法——伽马变换
伽马变换是一种用于调整图像亮度和对比度的非线性操作,其基本公式为 ( I' = I^\gamma ),其中 ( I' ) 是输出图像的灰度值,( I ) 是输入图像的灰度值,而 ( \gamma ) 是伽马值(gamma value)。伽马变换的目的是使图像的视觉效果更加符合人眼的感知,因为人眼对亮度的感知是非线性的。在暗部,人眼对亮度变化更敏感,而在亮部则不那么敏感。

伽马值的选择会影响图像的视觉效果:

  • 当伽马值小于1时,图像中灰度级较低的区域会被拉伸,同时灰度级较高的部分会被压缩,从而增强图像的暗部细节并提升整体亮度。
  • 当伽马值大于1时,图像中灰度级较高的区域会被拉伸,而灰度级较低的部分会被压缩,这会使得图像的暗部细节更清晰,但整体亮度降低。

在图像处理中,伽马变换可以通过编程实现,例如使用Python的OpenCV库中的 cv2.convertScaleAbs() 函数,或者通过创建查找表(LUT: Look Up Table)来加速处理过程。例如,可以为0到255之间的每个整数执行一次预补偿操作,将结果存入查找表,然后使用该表对图像进行伽马校正。

伽马变换在多个领域有广泛应用,如摄影中修复曝光问题、医疗图像处理中增强CT或MRI图像的对比度等。此外,伽马变换也是图像预处理的一部分,有助于突出图像中感兴趣的部分或减少噪声影响。在实际应用中,伽马变换可以增强图像的视觉效果,使之更适合人眼观察或满足特定的技术需求。

LLCNN是有监督的训练模式,所以采用伽马变换合成训练数据

LLCNN核心模块CM由两个阶段组成,第一阶段由两条路径组成,一条路径的卷积核是3x3大小,另一条是1x1大小,分别进行特征提取,再相加;第二个阶段是一个残差结构,首先对第一阶段的输出使用卷积操作,在通过加法操作将第一阶段的输出融合到最终的output

残差结构(Residual Structure)是一种深度学习网络设计中的技术,用于解决随着网络深度增加时出现的梯度消失或梯度爆炸问题,以及所谓的退化问题。
残差结构的核心思想是让深层网络通过学习残差函数(即输入和输出之间的差异)来训练,而不是直接学习映射函数本身。这样,如果网络层的增加不带来性能提升,网络可以简单地学习到恒等映射(即输出等于输入),从而避免了性能退化。

标签:灰度级,变换,亮度,算法,LLCNN,图像,伽马,光照
From: https://www.cnblogs.com/jzzg/p/18321621

相关文章

  • java中的一些经典算法code
    //1.importjava.util.LinkedList;importjava.util.Queue;publicclassCandyGame{//定义一个点的类,用于记录位置和当前累计的糖果数量staticclassPoint{intx,y,steps,candies;Point(intx,inty,intsteps,intcandies){......
  • 改进的灰狼优化算法(GWO)(附完整matlab代码)
    1.灰狼优化算法灰狼优化算法作为一种高效率群体智能优化算法,其结构简单,收敛速度快,调节参数少,在时间序列预测,机械设计,结构设计,聚类分析等工程问题上都有着十分广泛的应用。但是在应用过程中发现,其存在种群多样性差,后期收敛速度缓慢,容易陷入局部最优以及局部搜索和全局搜索不均......
  • 2024 | 大模型算法工程师相关面试题汇总及答案解析
    前言在准备大模型的面试时,我们需要对模型的基础理论、进阶应用、微调策略、以及特定技术如LangChain、参数高效微调(PEFT)等有深入的理解。这里给大家整理了一份详细的面试题,帮助大家提前进行面试复习,同时对自己的技术进行查漏补缺。一、大模型基础面试题目前主流的开源模......
  • 算法笔记|Day6哈希表基础II
    算法笔记|Day6哈希表基础II☆☆☆☆☆leetcode454.四数相加II题目分析代码☆☆☆☆☆leetcode383.赎金信题目分析代码☆☆☆☆☆leetcode15.三数之和题目分析代码☆☆☆☆☆leetcode18.四数之和题目分析代码☆☆☆☆☆leetcode454.四数相加II题目链接:leetco......
  • 数据结构与算法,剑指Offer 50题
    队列队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。对列的添加insertappend队列的取值列表[-1]列表[0]队列的删......
  • MVO-CNN多输入分类预测|多元宇宙算法-卷积神经网络|Matlab
    目录一、程序及算法内容介绍:基本内容:亮点与优势:二、实际运行效果三、算法介绍:四、完整程序下载:一、程序及算法内容介绍:基本内容:本代码基于Matlab平台编译,将MVO(多元宇宙算法)与CNN(卷积神经网络)结合,进行多输入数据分类预测输入训练的数据包含12个特征,1个响应值,即......
  • Python实现RSA加密算法,让你的信息更加安全
    一、什么是编码    想要实现加密就必须要先了解什么是编码。    编码是信息从另一种形式或格式转换为另一种形式或格式的过程,解码则是编码的逆过程。字符编码(CharacterEncoding)是把字符集中的字符编码为指定集合中的某个对象,以便信息在计算机中传输。在密码......
  • 「代码随想录算法训练营」第十九天 | 回溯算法 part01
    回溯算法模板voidbacktracking(参数){if(终止条件){存放结果;return;}for(选择:本层集合中元素(树中节点孩子的数量就是集合的大小)){处理节点;backtracking(路径,选择列表);//递归回溯,撤销处理结果}}......
  • 最小生成树(Kruskal和Prim算法)
    最小生成树(Kruskal和Prim算法)部分资料来源于:最小生成树(Kruskal算法)_kruskal算法求最小生成树-CSDN博客、【算法】最小生成树——Prim和Kruskal算法-CSDN博客关于图的几个概念定义:连通图:在无向图中,若任意两个顶点vi与vj都有路径相通,则称该无向图为连通图。强连通图:在有向......
  • 24暑假算法刷题 | Day20 | LeetCode 235. 二叉搜索树的最近公共祖先,701. 二叉搜索树中
    目录235.二叉搜索树的最近公共祖先题目描述题解701.二叉搜索树中的插入操作题目描述题解450.删除二叉搜索树中的节点题目描述题解235.二叉搜索树的最近公共祖先点此跳转题目链接题目描述给定一个二叉搜索树,找到该树中两个指定节点的最近公共祖先。百度......