前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >音视频技术基础(五)-- LUT图

音视频技术基础(五)-- LUT图

原创
作者头像
黑眼圈云豆
修改2020-07-10 17:07:51
1.8K0
修改2020-07-10 17:07:51
举报

上一篇文章给大家介绍了一些openGL的知识点,今天继续给大家介绍一个关于图像的知识,LUT图

简介

LUT指显示查找表(Look-Up-Table),本质上就是一个RAM。它把数据事先写入RAM后,每当输入一个信号就等于输入一个地址进行查表,找出地址对应的内容,然后输出。(来自百度百科

其实通俗点来讲,就是事先有一套输出规则,然后将数据导入,根据规则输出修正之后的数据。

从图像上来说,其实就是达成了滤镜效果,下面我就来讲讲实现的大概过程。

实现过程

大家都知道,图像是由众多像素点组成的,每个像素点都有对应的R、G、B值,而LUT图就是通过查找并匹配规则替换掉对应的R、G、B值,达到修改原图亮度、饱和度的目的。

效果

比如LOG格式的视频,这个格式的视频画面对比度和饱和度都比较低,看上去就是灰蒙蒙的感觉。

LOG视频截图
LOG视频截图

借助标准LUT图进行色彩转换,就可以把图像转成整标准色彩的图像了。

LUT图转换后的标准图
LUT图转换后的标准图

色彩转换

LUT图转换过程如下图所示:

LUT图转换过程
LUT图转换过程

LUT图是一张512×512大小的图片,分为64个8×8的小区域,每个小区域对应一个B值(0~255,间隔4),小区域内的每个像素点对应一组R和G值(0~255,间隔为4)。

使用时,获取原图某个像素点的值,通过颜色查找,替换为对应的滤镜颜色值。

查找方式

从查找方式上LUT可以分为1D LUT和3D LUT。

我们用公式的形式看看他们的区别,先设置Ri、Gi、Bi三个为输入值,Ro、Go、Bo为输出值,LUT标准的转换方法为FuncLUT。

1.1D LUT公式

Ro = FuncLUT(Ri)

Go = FuncLUT(Gi)

Bo = FuncLUT(Bi)

从公式可以看出,各个数值之间是独立的。

2.3D LUT公式

Ro = FuncLUT(Ri, Gi, Bi)

Go = FuncLUT(Ri, Gi, Bi)

Bo = FuncLUT(Ri, Gi, Bi)

在3D LUT中,数值之间是会互相音响的。

从公式对比中我们可以看出来,如果在色深为10位的系统中,1D LUT的数据量大概是3*2^10bit ,3D LUT就是(3*2^10)^3bit。

由此可以看出3D LUT的数据量比1D LUT多了一个指数级,所以3D LUT的精度比1D LUT高了很多,因为3D LUT 的数据量太大,所以是通过列举节点的方式进行数据存储。

使用LUT

目前用的比较多的还是3D LUT,毕竟精度更高,可以进行更多的色彩操作。

像在很多视频创作软件和图片处理软件里面都有TUL功能。

比较出名的就有达芬奇调色(DaVinci Resolve Studio)。

自带的创意类LUT
自带的创意类LUT

在Adobe PhotoShop中也有使用

现在很多的音视频技术中,处理滤镜的方式都有用到LUT。

总结

这篇文章主要是给大家介绍一些LUT这个概念,大家熟悉一下就好,明白其中的一些实现过程,如果大家感兴趣的话,可以深入了解一下。如果有碰到比较好的文章,也请给我推荐一下。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介
  • 实现过程
    • 效果
      • 色彩转换
        • 查找方式
          • 1.1D LUT公式
          • 2.3D LUT公式
      • 使用LUT
      • 总结
      相关产品与服务
      图像处理
      图像处理基于腾讯云深度学习等人工智能技术,提供综合性的图像优化处理服务,包括图像质量评估、图像清晰度增强、图像智能裁剪等。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档