\apiitem{"oiio:ColorSpace" : string}
  The name of the color space of the color channels. Values incude:
  \qkw{Linear}, \qkw{sRGB}, \qkw{GammaCorrected}, \qkw{AdobeRGB},
  \qkw{Rec709}, and \qkw{KodakLog}.
  \apiend
   
  \apiitem{"oiio:Gamma" : float}
  If the color space is \qkw{GammaCorrected}, this value is the gamma
  exponent.
  \apiend
The {\cf ImageSpec::extra_attribs} field may store metadata that reveals
  the color space the image file in the \qkw{oiio:ColorSpace}
  attribute, which may take on any of the following values:
   
  \begin{description}
  \item[\halfspc \rm \qkw{Linear}] indicates that the
  color pixel values are known to be linear.
  \item[\halfspc \rm \qkw{GammaCorrected}] indicates
  that the color pixel values (but not alpha or $z$) have
  already been gamma corrected (raised to the power $1/\gamma$), and
  that the gamma exponent may be found in the \qkw{oiio:Gamma} metadata.
  \item[\halfspc \rm \qkw{sRGB}] indicates that the
  color pixel values are in sRGB color space.
  \item[\halfspc \rm \qkw{AdobeRGB}] indicates that the
  color pixel values are in Adobe RGB color space.
  \item[\halfspc \rm \qkw{Rec709}] indicates that the
  color pixel values are in Rec709 color space.
  \item[\halfspc \rm \qkw{KodakLog}] indicates that the
  color pixel values are in Kodak logarithmic color space.
  \end{description}
   
  The \ImageInput sets the \qkw{oiio:ColorSpace} metadata in a
  purely advisory capacity --- the {\cf read} will not convert pixel
  values among color spaces. Many image file formats only support
  nonlinear color spaces (for example, JPEG/JFIF dictates use of sRGB).
  So your application should intelligently deal with gamma-corrected and
  sRGB input, at the very least.
   
  The color space hints only describe color channels. You should assume that
  alpha or depth ($z$) channels (designated by the {\cf alpha_channel} and
  {\cf z_channel} fields, respectively) always represent linear values and
  should never be transformed by your application.

spec.attribute("oiio::ColorSpace", "Linear");

spec.attribute("oiio::ColorSpace", "GammaCorrected");
spec.attribute("oiio::Gamma", (float)gamma);

spec.attribute("oiio::ColorSpace", "sRGB");
spec.attribute("oiio::ColorSpace", "Rec709");

----------------------------------------------------------------------------------------------------------

Applies an inverse gamma correction to texture lookups. For example, a value of 2.2 will linearize a texture that comes in with a gamma of 2.2. This is done for 8 and 16 bit images.

Arnold scans the contents of a texture (it does not rely on the extension) and anything that is not float is considered to have a gamma baked even if the image has a different color space embedded.

Tx texture format

You can convert your textures to linear space with the make tx tool. This way you can ensure that all of your textures are linear before rendering. For example:

maketx --colorconvert sRGB linear C:\solidangle\mtoadeploy\2014\bin\image.jpg

Gamma Correction of OIIO的更多相关文章

  1. 【图形学】我理解的伽马校正(Gamma Correction)

    http://blog.csdn.net/candycat1992/article/details/46228771/ 写在前面 我相信几乎所有做图像处理方面的人都听过伽马校正(Gamma Corre ...

  2. Gamma Correction

    [Gamma Correction] 磁盘上存储的纹理可分为Linear Texture.Gamma Texture. sRGB sampling allows the Unity Editor to ...

  3. Gamma correction 伽马校准及 matlab 实现

    matlab 内置实现:imadjust Gamma Correction gamma correction formula : .^(gamma) or .^(1/gamma)? 用以调整图像光照强 ...

  4. 【视频开发】伽马校正(gamma correction)学习笔记

    我相信几乎所有做图像处理方面的人都听过伽马校正(Gamma Correction)这一个名词,但真正明白它是什么.为什么要有它.以及怎么用它的人其实不多.我也不例外.  最初我查过一些资料,但很多文章 ...

  5. [笔记]dynamic gamma correction

    2014-03-17  14:37:04 周一 在设计过程中参考论文<一种改进的视频画质增强算法及VLSI设计>电子学报 在YUV色彩空间对输入图像的信息进行判断分类和对比度调整,然后对调 ...

  6. 【转】Using Gamma 2.2

    This is a detailed description of the work with Gamma 2.2. If you are only interested in exact instr ...

  7. gamma

    图:显卡(驱动程序)上的Gamma设置 图:ACDSEE中的曝光调节 二. 什么是Gamma? 2.1. 显示器Gamma曲线 Gamma可能源于CRT(显示器/电视机)的响应曲线,即其亮度与输入电压 ...

  8. 图像处理之gamma校正

    1 gamma校正背景 在电视和图形监视器中,显像管发生的电子束及其生成的图像亮度并不是随显像管的输入电压线性变化,电子流与输入电压相比是按照指数曲线变化的,输入电压的指数要大于电子束的指数.这说明暗 ...

  9. gamma校正

    1 gamma校正背景 在电视和图形监视器中,显像管发生的电子束及其生成的图像亮度并不是随显像管的输入电压线性变化,电子流与输入电压相比是按照指数曲线变化的,输入电压的指数要大于电子束的指数.这说明暗 ...

随机推荐

  1. Shiro 权限校验不通过时,区分GET和POST请求正确响应对应的方式

    引入:https://blog.csdn.net/catoop/article/details/69210140 本文基于Shiro权限注解方式来控制Controller方法是否能够访问. 例如使用到 ...

  2. Bootstrap 与 Jquery validate 结合使用——简单实现

    首先必须引入的JS和CSS <script type="text/javascript" src="${ctx}/static/js/jquery-1.9.1.mi ...

  3. RocketMQ初探(一)

    初学RocketMQ,认识一门新技术,还是哪三问:是什么?能干什么?怎么用? 消息中间件主要是实现分布式系统中解耦.异步消息.流量销锋.日志处理等场景. Rocketmq是阿里捐赠给Apache的.3 ...

  4. Kettle中配置oracle RAC

    由于项目中使用了oracle v-ip做了oracle数据库集群,现在需要把项目中程序进行升级. 原来的程序中直接使用的是JDBC然后配置的kettle.properties配置文件,如下图: 根据项 ...

  5. LUA 环境

    LUA中环境是指一个函数执行的表,即一个函数在什么表中执行. 这里的函数是特殊的,是loadfile("x.lua")的返回值. loadfile("x.lua" ...

  6. excel解析的几种实现方法

  7. 前端开发之JavaScript HTML DOM理论篇二

    主要内容: 1.HTML DOM元素 2.HTML DOM事件 一.DOM元素 主要操作有添加.删除和替换HTML元素 1.创建新的HTML元素  (1)方法一: appendChild() 追加 如 ...

  8. Hadoop HA 机制学习

    一.Hadoop 系统架构 1.1 Hadoop1.x和Hadoop2.x 架构 在介绍HA之前,我们先来看下Hadoop的系统架构,这对于理解HA是至关重要的.Hadoop 1.x之前,其官方架构如 ...

  9. 这几天用高通VUFORIA的体会

    VUFORIA 主要用来做图像识别,先把图片上至网站,然后网站分析生成数据包 在UNITY中导入VUFORIA SDK和数据包后,就可以正常使用了 对了,数据包需要勾选Load Active那个选项, ...

  10. 我为什么使用Kubuntu

    网上看贴,包括身边的同事.朋友,总会问的问题是:我该选择哪个Linux发行版?使用久了,就会觉得这个问题其实不是问题,纯属个人习惯而已,当你真正习惯.理解了Linux,那么任何一个发行版的优点,你都有 ...