PyQt で画像のビューアを作る 13 version 1
:追加された部分
:削除された部分
(差分が大きい場合、文字単位では表示しません)
トーンカーブ4
- ベジェのポイントからLUTを作る
- 欠落したxの補間について、前後にデータがある前提だが多分間違ってると思う
```
p1=(0,0)
p2=(0,250)
p3=(100,255)
p4=(255,255)
import time
start = time.time()
list=[]
last_x=-1
tt=1/255
for l in range(256):
t=l*tt
x = (1-t)**3*p1[0] + 3*(1-t)**2*t*p2[0] + 3*(1-t)*t**2*p3[0] + t**3*p4[0]
if round(x)==last_x:
continue
if round(x) != last_x+1:
list.append([last_x+1 , -1])
y = (1-t)**3*p1[1] + 3*(1-t)**2*t*p2[1] + 3*(1-t)*t**2*p3[1] + t**3*p4[1]
last_x=round(x)
list.append([ last_x , round(y)])
elapsed_time = time.time() - start
print ("xyRL-cond:{0}".format(elapsed_time) + "[sec]")
# print(len(list) , list)
start = time.time()
for l in list:
if l[1]==-1:
# print(l , end='')
l=[l[0] , int((list[l[0]-1][1] + list[l[0]+1][1])/2) ]
# print(l)
elapsed_time = time.time() - start
print ("xyRL-cond:{0}".format(elapsed_time) + "[sec]")
```
- ベジェのポイントからLUTを作る
- 欠落したxの補間について、前後にデータがある前提だが多分間違ってると思う
p1=(0,0)
p2=(0,250)
p3=(100,255)
p4=(255,255)
import time
start = time.time()
list=[]
last_x=-1
tt=1/255
for l in range(256):
t=l*tt
x = (1-t)**3*p1[0] + 3*(1-t)**2*t*p2[0] + 3*(1-t)*t**2*p3[0] + t**3*p4[0]
if round(x)==last_x:
continue
if round(x) != last_x+1:
list.append([last_x+1 , -1])
y = (1-t)**3*p1[1] + 3*(1-t)**2*t*p2[1] + 3*(1-t)*t**2*p3[1] + t**3*p4[1]
last_x=round(x)
list.append([ last_x , round(y)])
elapsed_time = time.time() - start
print ("xyRL-cond:{0}".format(elapsed_time) + "[sec]")
# print(len(list) , list)
start = time.time()
for l in list:
if l[1]==-1:
# print(l , end='')
l=[l[0] , int((list[l[0]-1][1] + list[l[0]+1][1])/2) ]
# print(l)
elapsed_time = time.time() - start
print ("xyRL-cond:{0}".format(elapsed_time) + "[sec]")