Mercurial > hg > orthanc-stone
comparison Framework/Scene2D/Internals/CairoLookupTableTextureRenderer.cpp @ 1163:ba9db2ad317c broker
test log
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 19 Nov 2019 20:44:55 +0100 |
parents | 6e888cf6a48b |
children | 177e7d431cd1 |
comparison
equal
deleted
inserted
replaced
1162:709aa65aca17 | 1163:ba9db2ad317c |
---|---|
82 else if (v >= 255) | 82 else if (v >= 255) |
83 { | 83 { |
84 v = 255; | 84 v = 255; |
85 } | 85 } |
86 | 86 |
87 if (1) //l.IsApplyLog()) | |
88 { | |
89 // https://theailearner.com/2019/01/01/log-transformation/ | |
90 v = 255.0f / log(1.0f + 255.0f * 1.5f) * log(1.0f + static_cast<float>(v)); | |
91 if (v <= 0) | |
92 { | |
93 v = 0; | |
94 } | |
95 else if (v >= 255) | |
96 { | |
97 v = 255; | |
98 } | |
99 } | |
100 | |
87 uint8_t vv = static_cast<uint8_t>(v); | 101 uint8_t vv = static_cast<uint8_t>(v); |
88 | 102 |
89 q[0] = lut[4 * vv + 2]; // B | 103 q[0] = lut[4 * vv + 2]; // B |
90 q[1] = lut[4 * vv + 1]; // G | 104 q[1] = lut[4 * vv + 1]; // G |
91 q[2] = lut[4 * vv + 0]; // R | 105 q[2] = lut[4 * vv + 0]; // R |