点击上方“3D视觉工坊”,选择“星标”

干货第一时间送达

作者丨Happy

编辑丨极市平台

导读

该文是香港理工大学张磊老师及其学生在图像增强领域的又一颠覆性成果。它将深度学习技术与传统3DLUT图像增强技术结合,得到了一种更灵活、更高效的图像增强技术。所提方法能够以1.66ms的速度对4K分辨率图像进行增强(硬件平台:Titan RTX GPU)。

paper: https://www4.comp.polyu.edu.hk/~cslzhang/paper/PAMI_LUT.pdf

code: https://github.com/HuiZeng/Image-Adaptive-3DLUT(即将开源)

Abstract

最近几年基于学习的方法已成为图像增强(增强图像的色调、对比度等)的主流方案,然而这些图像增强方法或者产生不好的效果或者需要大量的计算量以及内存占用,严重影响了这些方法在高分辨率图像方面的实际应用(比如12M像素)。

该文提出了一种图像自适应的3D查找表(3D LUT)方法用于图像增强,在具有超快速度的同时具有鲁棒的增强效果。3DLUT是传统图像编辑领域常用方案,但这些查找表往往需要人工调节并固化。该文首次提出采用成对/不成对学习的方式从标注数据集中学习3DLUT。更重要的是,所学习到的3DLUT具有图像自适应特性,可以灵活的进行图像增强。所提方法采用端到端的方式同时学习3DLUT以及一个小网络,小网络用于根据输入图像学习查找表的融合权值,将融合后的3DLUT作用于输入图像即可得到期望的输出。所提方法仅仅包含不到600K参数,能够以不超过2ms的速度处理4K分辨率图像(硬件平台:Titan RTX GPU)。在具有超快的推理速度同时,所提方法同样以极大的优势(PSNR,SSIM以及颜色差异度量指标)超越其他图像增强方法。

该文的贡献主要包含以下三点:

  • 首个采用深度学习方法学习3DLUT并用于自动图像增强的方案,更重要的是,所提方法学习到的3DLUT具有图像自适应性,可以更灵活的进行图像增强;

  • 所提方法仅有不超过600K参数量,且能够以不超过2ms的速度处理4K分辨率图像(GPU);

  • 在两个公开数据集上以极大优势超越其他SOTA图像增强方案。

Method

上图给出了本文所提出方案的框架图,它包含多个基准3DLUT与一个小的CNN网络。基准3DLUT可以确保输入到输出的颜色变换可以被更好的包含,而CNN则用于学习3DLUT的融合权值并将多个3DLUT融合为一个新的3DLUT,最后所得3DLUT用于图像变换。

3DLUT and trilinear interpolation

3DLUT是一种经典且有效并被广泛应用的图像增强技术,下图给出了3DLUT的示意图。3DLUT定义了一个包含个元素的晶格(注:M表示每个颜色通道的采样数,实际应用中一般为33)。每个定义了输入RGB颜色及对应的输出RGB颜色,而变换的精度则由M控制(默认33)。

给定M以及索引 RGB颜色可以通过均匀离散RGB颜色空间得到。不同的3DLUT具有不同的输出RGB颜色,而这在所提方法中是可学习的参数。当M=33时,每个3DLUT包含108K参数量。

基于3DLUT的颜色变换可以通过两个操作达成:lookuptrilinear interpolation。给定输入RGB颜色,lookup操作可以通过如下公式进行:

其中,而表示颜色值。在完成输入RGB颜色定位后,它的8个最近邻元素将被用于trilinear interpolation并得到输出RGB。trilinear interpolation可以描述如下:假设,,那么三次插值公式如下:

其中。上述三次插值过程是可微的,可以轻易的推导出的梯度。由于每个输入的三次插值结果完全独立,故而可以采用GPU进行并行加速。

Learning image-adaptive 3D LUTs

传统的基于3DLUT的图像增强方法具有两个主要局限:(1)3DLUT大多人工设计,需要设计人员具有丰富经验,同时消耗大量时间;(2)一个3DLUT仅能处理一种固定的变换,难以适应全场景的变换。尽管现有相机、图像编辑工具中提供了多个LUTs集合供用户手动选择以大臣个不同的增强效果,但是这种交互方式不够灵活。

为解决上述第一个局限,作者提出采用数据驱动方法生成3DLUT;为解决上述第二个局限,模型应当具有内容自适应特性,因此作者提出学习图像自适应的3DLUT。

一个很自然的想法是通过场景分类的方式选择不同的3DLUT,这也是诸多相机、图像编辑工具常用方案。然而这种硬决策方案具有这样几个缺陷:(1) 它难以将多个可能场景正确的划分到预定义类别中,因为不同类别具有不同的3DLUT;(2)需要大量的3DLUT以尽可能的覆盖全场景;(3) 分类器的训练独立于3DLUT,导致组合方案并非最优。如果场景分类错误,那么所选择的3DLUT大概率生成非常差的结果。

在该文中,作者采用一种更高效的方式学习图像自适应的3DLUT:同时学习N个3DLUT与一个小CNN模型(用于预测3DLUT的融合权值)。对于输入图像,其最终的增强输出可以描述如下:

而表示通过CNN模型预测的内容自适应权值。所提方法仅仅需要几个3DLUT(N=3)进行图像变换,同时采用软加权策略以获得图像内容自适应的变换效果。更进一步,考虑到像素变换的独立性,上述操作可以进一步简化如下:

也就是时候,可以先进行3DLUT融合,再进行图像变换。这种处理方式进一步提升的所提方法的推理速度。下表给出了所提方法中CNN模型的参数配置,它包含5个卷积(后接LeakyReLU、IN)、一个dropout以及一个全连接层。整个CNN模型包含269参数量(N=3)。

Learning Criteria

接下来就要介绍了优化的目标函数了,目标函数定义如下:

其中表示CNN模型与3DLUT,表示某些损失函数与正则项。

如前所述,所提方法可以采用成对数据进行训练,也可以采用非成对数据进行训练。我们先来看一下成对训练的损失函数,这个就比较简单的常规的损失函数即可,比如L1、MSE等。在这里作者选用了简单的MSE损失函数,定义如下

接下来,我们再看一下非成对数据的损失函数。这里借鉴的是GAN的思想进行非成对数据的训练,前述的3DLUT以及CNN可以视作生成器,只需要再引入一个判别器即可。此时生成器通过如下损失进行训练:

其中。判别器的损失函数定义如下:

其中,,前两项为标准的判别损失,最后一项为梯度惩罚项用于稳定训练。那么总的损失函数则定义为:

Regularization

我们可以采用前述损失以及SGD/Adam优化器进行训练3DLUT以及CNN。然而得到的3DLUT具有非平滑现象,见下图a。这种局部陡峭现象会导致变换后图像的伪影问题,为使得所学习的3DLUT具有更好的稳定性和鲁棒性,作者引入了两种正则项。

  • Smooth Regularization。为了稳定的将输入RGB变换到期望的颜色空间,而不引入伪影,3DLUT的输出RGB应当具有局部平滑性。全变差Total Variation, TV是图像复原领域经典的平滑正则化技术,作者将其引入到3DLUT,此时TV正则定义如下:

除了3DLUT应具有平滑性外,CNN预测的内容自适应权值同样非常重要,作者也为其引入了正则以提升所得3DLUT的平滑性。总的平滑正则项描述如下:

  • Monotonicity regularization。除了平滑性外,单调性也适合3DLUT应当具有的一个属性。为此作者设计了如下的单调正则项:

其中表示标准ReLU操作。

Final training losses and implementation

通过集成前述两个正则项,最终的损失函数定义如下:

其中。

在实现方面,基本框架为Pytorch,trilinear interpolation通过CUDA并行实现。训练的优化器为Adam,Batch=1,学习率固定0.0001(pair)和0.0002(unpair),随机裁剪、随机镜像等数据增强。而这N个3DLUT的初始化方式为:第一个为恒等映射,其他则初始化为0。CNN的全连接层的bias初始化为1,确保起始阶段的权值预测为1。

Experiments

训练数据:MIT-Adobe FiveK, HDR+。评价准则:PSNR、SSIM。下面直接看结果咯。

下图给出了三个不同图像采用所提方法生成的3DLUT以及最终的增强结果。可以看到:所提方法生成的结果比固定3DLUT的方式更灵活,效果更佳。

下图给出了所提方法与其他SOTA方法在FiveK数据集上的指标对比以及视觉效果对。可以看到所提方法不仅具有更好的指标,同样具有更好的视觉效果。

下面给出了所提方法与其他SOTA方法在HDR+数据集上的指标与视觉效果对比。

与此同时,作者也给出了不同图像编辑工具与所提方法的处理效果对比,见下图。

最后,作者给出不同的图像增强方法的推理速度对比,见下图。还有什么比这个速度更惊人的吗?以1.66ms的速度处理4K图像,只能感慨一下,快到没反应。

全文到此结束,对该感兴趣的同学建议去看一下原文。最后期待作者尽快开源代码。

◎作者档案

Happy,一个爱“胡思乱想”的AI行者

个人公众号:AIWalker

本文仅做学术分享,如有侵权,请联系删文。

下载1

在「3D视觉工坊」公众号后台回复:3D视觉即可下载 3D视觉相关资料干货,涉及相机标定、三维重建、立体视觉、SLAM、深度学习、点云后处理、多视图几何等方向。

下载2

在「3D视觉工坊」公众号后台回复:3D视觉github资源汇总即可下载包括结构光、标定源码、缺陷检测源码、深度估计与深度补全源码、点云处理相关源码、立体匹配源码、单目、双目3D检测、基于点云的3D检测、6D姿态估计源码汇总等。

下载3

在「3D视觉工坊」公众号后台回复:相机标定即可下载独家相机标定学习课件与视频网址;后台回复:立体匹配即可下载独家立体匹配学习课件与视频网址。

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的知识点汇总、入门进阶学习路线、最新paper分享、疑问解答四个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近2000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

圈里有高质量教程资料、可答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  

图像增强领域大突破!以1.66ms的速度处理4K图像,港理工提出图像自适应的3DLUT...相关推荐

  1. 图像增强领域大突破!以 1.66ms 的速度处理 4K 图像,港理工提出图像自适应的 3DLUT

    paper: https://www4.comp.polyu.edu.hk/~cslzhang/paper/PAMI_LUT.pdf code: https://github.com/HuiZeng/ ...

  2. CVPR 2022 | 大连理工提出自校准照明框架,用于现实场景的微光图像增强

    论文标题: Toward Fast, Flexible, and Robust Low-Light Image Enhancement 论文链接: https://arxiv.org/pdf/2204 ...

  3. 图像雅各比矩阵-将图像像素速度与相机速度关联

    如何将图像像素速度转变到相机速度? 导入 符号定义 固定点相对于移动相机的速度 构建交互矩阵 导入 在基于图像的视觉伺服中,我们可以通过相机观察到图像在相机中的位置发生变化 ,针对于每个像素来说呢?便 ...

  4. ASIC加速技术在航空航天领域的应用:提高飞行器速度和稳定性

    文章目录 引言 技术原理及概念 1. 高速信号处理 2. 实时控制 3. 加密和解密 相关技术比较 实现步骤与流程 1. 准备工作:环境配置与依赖安装 2. 核心模块实现 3. 集成与测试 应用示例与 ...

  5. 医疗领域大突破:AI眼病诊断工具堪比专家,准确率达94%!

    来源:新智元 本文共1379字,建议阅读5分钟. DeepMind计划开发一种医疗产品,能够帮助医生通过普通的眼部扫描检测50多种可能威胁到视力的疾病. [ 导读 ]Deepmind与英国NHS旗下的 ...

  6. AIWalker是个什么样的号?为什么要推荐呢?聚焦low-level,关注AI最前沿

    今天给大家推荐一个好朋友Happy运营的公众号[AIWalker],该公众号重点致力于low-level领域(比如超分.降噪.增强等)知识的分享,同时也会对最前沿的Transformer.网络架构.目 ...

  7. HINet | 性能炸裂,旷视科技提出适用于low-level问题的Half Instance Normalization

    编辑:Happy 首发: AIWalker 大家好,我是Happy. 一直以来,甚少有normalization技术在low-level得到广泛应用并取得优异性能,就算得到应用其性能也会受限或者造成异 ...

  8. 【 AI 简报 2020930 期】NVIDIA开源C++标准库等热点新闻等你来!

    导读:本期为 AI 简报 2020930期,将为您带来过去一周关于 AI 新闻 9 条,其他互联网圈内新闻 5 条,希望对您有所帮助~ 有更好的建议或者意见请在下方留言~ AI 1. AI养猪.智能超 ...

  9. 基于retinex理论改进的低照度图像增强算法

    写本文的目的是记录自己学习过或做过的一些东西,深化理解,理清思路,便于回忆.本人处于学习阶段,欢迎指出不对的地方. 本文算法参考文献:李勇.基于Retinex理论的低照度图像增强算法研究与实现[D]. ...

最新文章

  1. oracle数据迁移常用
  2. JavaScript中的endsWith
  3. C Capture Full IE Document
  4. python测试开发自学教程-python测试开发学习笔记
  5. boot spring 解析csv_spring-boot-starter-thymeleaf 避坑指南
  6. python应用系列教程——python使用SocketServer实现网络服务器,socket实现客户端
  7. ztree的树形结构不能正常显示原因
  8. 如何保护前端JS代码?前端js代码混淆加密
  9. GUI界面设计学渣笔记———使用PyQt做深度学习的可视化界面
  10. C语言入门--状态机编程
  11. 关于短信猫死机的问题程序要如何解决
  12. 查询数据表中重复数据及重复次数
  13. MySQL篇之授权用户可以远程访问数据库
  14. 中文分词词库汇总(一)
  15. 银河麒麟 Kylin_s10_sp3安装Oracle11g(FS)(亲测有效)
  16. Docker 部署微服务
  17. 六一小学生计算机创新活动总结,小学科技创新活动总结4篇
  18. python外卖点餐系统毕业设计开题报告
  19. zblog插件-免费zblog插件各类zblog插件打包
  20. 用swoole实现简单IM聊天室demo

热门文章

  1. RabbitMQ-松耦合设计
  2. githug游戏命令记录(持续更新)
  3. 极客日报:华为诉争“鸿蒙HongMeng”商标再被驳回;比尔盖茨夫妇正式离婚;iOS 15“查找”新功能,关机也能用
  4. vue + element 甘特图
  5. php高危漏洞,thinkphp高危漏洞修复--因控制器任意实例化产生的注入漏洞
  6. 短视频剪辑小技巧,少用平剪很重要,教你剪出受人欢迎的短视频
  7. 什么是BadUSB攻击以及如何预防
  8. vb用计算机模拟掷骰子游戏,vb掷骰子程序代码
  9. 如何找回微信聊天记录
  10. 程序员如何打造属于自己的云笔记服务