I have a table about inverse gamma correction these are the values coresponding from 0 to 256 down there. I need a way to calculate the inverse of this function -> something like 0, 2, 6, 9, …
I would appreciate it, if someone could tell me a freeware tool that could do that or an algorithm I could write in C.
0,
0,
1,
1,
1,
1,
2,
2,
2,
3,
3,
3,
3,
4,
4,
4,
5,
5,
5,
6,
6,
6,
6,
7,
7,
7,
8,
8,
8,
9,
9,
9,
10,
10,
10,
11,
11,
11,
12,
12,
12,
13,
13,
14,
14,
14,
15,
15,
15,
16,
16,
16,
17,
17,
18,
18,
18,
19,
19,
20,
20,
20,
21,
21,
22,
22,
22,
23,
23,
24,
24,
25,
25,
25,
26,
26,
27,
27,
28,
28,
29,
29,
30,
30,
31,
31,
31,
32,
32,
33,
33,
34,
34,
35,
35,
36,
37,
37,
38,
38,
39,
39,
40,
40,
41,
41,
42,
43,
43,
44,
44,
45,
45,
46,
47,
47,
48,
48,
49,
50,
50,
51,
52,
52,
53,
54,
54,
55,
56,
56,
57,
58,
58,
59,
60,
61,
61,
62,
63,
64,
64,
65,
66,
67,
67,
68,
69,
70,
71,
71,
72,
73,
74,
75,
76,
77,
77,
78,
79,
80,
81,
82,
83,
84,
85,
86,
87,
88,
89,
90,
91,
92,
93,
94,
95,
96,
97,
98,
99,
101,
102,
103,
104,
105,
106,
108,
109,
110,
111,
113,
114,
115,
116,
118,
119,
121,
122,
123,
125,
126,
128,
129,
131,
132,
134,
135,
137,
138,
140,
142,
143,
145,
147,
148,
150,
152,
154,
156,
157,
159,
161,
163,
165,
167,
169,
171,
173,
175,
178,
180,
182,
184,
187,
189,
191,
194,
196,
199,
201,
204,
207,
209,
212,
215,
218,
221,
224,
227,
230,
233,
236,
239,
243,
246,
249,
253,
You are asking how to invert a lookup table for a nondecreasing function.
This isn’t pretty (or even tested), but it might work in C:
Or, in Perl (shown: on windows; on linux, you would interchange ‘ and “):
This question, as formulated (no real question about Gamma Correction) probably belongs in another forum.