[Hdrflow-svn] SF.net SVN: hdrflow: [400] trunk/lib/openlibraries/src/openimagelib/il
Status: Pre-Alpha
Brought to you by:
glslang
|
From: <gl...@us...> - 2008-01-10 22:09:50
|
Revision: 400
http://hdrflow.svn.sourceforge.net/hdrflow/?rev=400&view=rev
Author: glslang
Date: 2008-01-10 14:09:39 -0800 (Thu, 10 Jan 2008)
Log Message:
-----------
+ dpx log to linear transfer function
Modified Paths:
--------------
trunk/lib/openlibraries/src/openimagelib/il/lut_functions.cpp
trunk/lib/openlibraries/src/openimagelib/il/lut_functions.hpp
Modified: trunk/lib/openlibraries/src/openimagelib/il/lut_functions.cpp
===================================================================
--- trunk/lib/openlibraries/src/openimagelib/il/lut_functions.cpp 2008-01-08 23:14:58 UTC (rev 399)
+++ trunk/lib/openlibraries/src/openimagelib/il/lut_functions.cpp 2008-01-10 22:09:39 UTC (rev 400)
@@ -10,10 +10,17 @@
#include <cmath>
#endif
+#include <limits>
+
#include <openimagelib/il/il.hpp>
namespace olib { namespace openimagelib { namespace il {
+namespace
+{
+ const float dpx_black_offset = 0.0107977516233f;
+}
+
float to_sRGB( float v )
{
if( v < ( 0.04045f / 12.92f ) )
@@ -38,4 +45,9 @@
return powf( ( v + 0.099f) / 1.099f, 1.0f / 0.45f );
}
+float from_dpxLog( float v )
+{
+ return ( powf( 10.0f, ( v - 685.0f ) * ( 0.002f / 0.6f )) - dpx_black_offset ) / ( 1.0f - dpx_black_offset );
+}
+
} } }
Modified: trunk/lib/openlibraries/src/openimagelib/il/lut_functions.hpp
===================================================================
--- trunk/lib/openlibraries/src/openimagelib/il/lut_functions.hpp 2008-01-08 23:14:58 UTC (rev 399)
+++ trunk/lib/openlibraries/src/openimagelib/il/lut_functions.hpp 2008-01-10 22:09:39 UTC (rev 400)
@@ -13,6 +13,7 @@
IL_DECLSPEC float to_sRGB( float v );
IL_DECLSPEC float to_rec709( float v );
IL_DECLSPEC float from_rec709( float v );
+IL_DECLSPEC float from_dpxLog( float v );
} } }
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|