Subversion Repositories filter_foundry

Rev

Rev 304 | Rev 399 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 304 Rev 335
Line 1... Line -...
1
 
-
 
2
 
-
 
3
Implementation detail differences
1
Implementation detail differences
4
=================================
2
=================================
5
 
3
 
6
Filter Foundry tries to be as compatible with Filter Factory as possible.
4
Filter Foundry tries to be as compatible with Filter Factory as possible.
7
However, there are some differences that are explained in this documentation.
5
However, there are some differences that are explained in this documentation.
Line 72... Line 70...
72
-------------------------
70
-------------------------
73
 
71
 
74
In Filter Foundry 1.7.0.8, the previously undocumented variables I, U, V as well as imin, umin, vmin
72
In Filter Foundry 1.7.0.8, the previously undocumented variables I, U, V as well as imin, umin, vmin
75
have been changed to represent the actual results of the i,u,v variables:
73
have been changed to represent the actual results of the i,u,v variables:
76
 
74
 
77
    I, imax = 255 (stayed the same)
75
    imax = 255 (stayed the same)
78
    U, umax = 55 (was 255 in Filter Factory)
76
    umax = 55 (was 255 in Filter Factory)
79
    V, vmax = 78 (was 255 in Filter Factory)
77
    vmax = 78 (was 255 in Filter Factory)
80
 
78
 
81
    imin = 0 (stayed the same)
79
    imin = 0 (stayed the same)
82
    umin = -55 (was 0 in Filter Factory)
80
    umin = -55 (was 0 in Filter Factory)
83
    vmin = -78 (was 0 in Filter Factory)
81
    vmin = -78 (was 0 in Filter Factory)
84
 
82
 
-
 
83
It is questionable if `I` was meant to be a synonym of `imax`, or if `I` was meant to be `I := imax - imin`.
-
 
84
We have chosen the latter in Filter Foundry 1.7.0.9. Same thing with `U` and `V`.
-
 
85
 
-
 
86
Therefore:
-
 
87
 
-
 
88
    I := imax-imin = 255
-
 
89
    U := umax-umin = 110
-
 
90
    V := vmax-vmin = 156
-
 
91
 
-
 
92
 
-
 
93
dmin, D (Testcase d_minmax.afs)
-
 
94
-------
-
 
95
 
-
 
96
**The Filter Factory manual writes:**
-
 
97
 
-
 
98
0 corresponds to the 3 o'clock position
-
 
99
256 to the 6 o'clock position,
-
 
100
512 to the 9 o'clock position,
-
 
101
768 to the 12 o'clock position,
-
 
102
and 1024 to the full rotation back to the 3 o'clock position
-
 
103
 
-
 
104
But this does not match the Windows implementation of Filter Factory
-
 
105
(maybe it is true to the Mac implementation?)
-
 
106
 
-
 
107
**In the original Windows implementation we can observe:**
-
 
108
 
-
 
109
d=-512 is at 9 o'clock position
-
 
110
d=-256 is at 12 o'clock position
-
 
111
d=0 is at 3 o'clock position
-
 
112
d=256 is at 6 o'clock position
-
 
113
d=512 is the full rotation back to 3 o'clock position
-
 
114
 
-
 
115
Therefore, `dmin` has been changed from 0 to -512,
-
 
116
and `D`, `dmax` has been changed from 1024 to 512.
-
 
117
 
85
 
118
 
86
get(i) (Testcase getput.afs)
119
get(i) (Testcase getput.afs)
87
------
120
------
88
 
121
 
89
Filter Foundry:
122
Filter Foundry: