RGB,HLS,HSV,YIQ,YCbCr,YUV ,老兄太多了。
核心代码:
RGB:
picbits[3*i+2]:=min(255,max(0,picbits[3*i+2]+scrollbar1.Position));
picbits[3*i+1]:=min(255,max(0,picbits[3*i+1]+scrollbar2.Position));
picbits[3*i+0]:=min(255,max(0,picbits[3*i+0]+scrollbar3.Position));
YCbCr:
r:=picbits[3*i-1];
g:=picbits[3*i-2];
b:=picbits[3*i-3];
y:= 0.2990*r+0.5870*g+0.1140*b+ scrollbar1.Position;
cb:=-0.1687*r-0.3313*g+0.5000*b+128+scrollbar2.Position;
cr:= 0.5000*r-0.4187*g-0.0813*b+128+scrollbar3.Position;
picbits[3*i-1]:=min(255,max(0,round(y+1.402*(cb-128))));
picbits[3*i-2]:=min(255,max(0,round(y-0.34414*(cb-128)-0.71414*(cr-128))));
picbits[3*i-3]:=min(255,max(0,round(y+1.772*(cb-128))));
YIQ:
r:=picbits[3*j-1];
g:=picbits[3*j-2];
b:=picbits[3*j-3];
Y:=0.2990*r+0.5870*g+0.1140*b+scrollbar1.Position;
I:=0.5960*r-0.2740*g-0.3220*b+scrollbar2.Position;
Q:=0.2110*r-0.5230*g+0.3120*b+scrollbar3.Position;
picbits[3*j-1]:=min(255,max(0,round(y+0.9560*I+0.6210*Q)));
picbits[3*j-2]:=min(255,max(0,round(y-0.2720*I-0.6470*Q)));
picbits[3*j-3]:=min(255,max(0,round(y-1.1060*I-1.7030*Q)));
YUV:
r:=picbits[3*i-1];
g:=picbits[3*i-2];
b:=picbits[3*i-3];
y:= 0.2990*r+0.5870*g+0.1140*b+scrollbar1.Position;
u:=-0.1480*r-0.2890*g+0.4370*b+scrollbar2.Position;
v:= 0.6150*r-0.5150*g-0.1000*b+scrollbar3.Position;
picbits[3*i-1]:=min(255,max(0,round(y+1.1402*v)));
picbits[3*i-2]:=min(255,max(0,round(y-0.3950*u-0.5810*v)));
picbits[3*i-3]:=min(255,max(0,round(y+2.0320*u)));
.....................