38 #include "allheaders.h" 40 static void fdilate_1_0(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
41 static void ferode_1_0(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
42 static void fdilate_1_1(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
43 static void ferode_1_1(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
44 static void fdilate_1_2(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
45 static void ferode_1_2(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
46 static void fdilate_1_3(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
47 static void ferode_1_3(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
48 static void fdilate_1_4(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
49 static void ferode_1_4(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
50 static void fdilate_1_5(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
51 static void ferode_1_5(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
52 static void fdilate_1_6(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
53 static void ferode_1_6(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
54 static void fdilate_1_7(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
55 static void ferode_1_7(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
56 static void fdilate_1_8(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
57 static void ferode_1_8(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
58 static void fdilate_1_9(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
59 static void ferode_1_9(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
60 static void fdilate_1_10(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
61 static void ferode_1_10(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
62 static void fdilate_1_11(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
63 static void ferode_1_11(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
64 static void fdilate_1_12(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
65 static void ferode_1_12(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
66 static void fdilate_1_13(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
67 static void ferode_1_13(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
68 static void fdilate_1_14(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
69 static void ferode_1_14(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
70 static void fdilate_1_15(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
71 static void ferode_1_15(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
72 static void fdilate_1_16(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
73 static void ferode_1_16(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
74 static void fdilate_1_17(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
75 static void ferode_1_17(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
76 static void fdilate_1_18(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
77 static void ferode_1_18(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
78 static void fdilate_1_19(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
79 static void ferode_1_19(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
80 static void fdilate_1_20(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
81 static void ferode_1_20(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
82 static void fdilate_1_21(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
83 static void ferode_1_21(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
84 static void fdilate_1_22(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
85 static void ferode_1_22(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
86 static void fdilate_1_23(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
87 static void ferode_1_23(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
88 static void fdilate_1_24(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
89 static void ferode_1_24(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
90 static void fdilate_1_25(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
91 static void ferode_1_25(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
92 static void fdilate_1_26(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
93 static void ferode_1_26(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
94 static void fdilate_1_27(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
95 static void ferode_1_27(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
96 static void fdilate_1_28(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
97 static void ferode_1_28(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
98 static void fdilate_1_29(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
99 static void ferode_1_29(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
100 static void fdilate_1_30(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
101 static void ferode_1_30(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
102 static void fdilate_1_31(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
103 static void ferode_1_31(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
104 static void fdilate_1_32(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
105 static void ferode_1_32(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
106 static void fdilate_1_33(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
107 static void ferode_1_33(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
108 static void fdilate_1_34(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
109 static void ferode_1_34(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
110 static void fdilate_1_35(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
111 static void ferode_1_35(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
112 static void fdilate_1_36(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
113 static void ferode_1_36(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
114 static void fdilate_1_37(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
115 static void ferode_1_37(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
116 static void fdilate_1_38(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
117 static void ferode_1_38(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
118 static void fdilate_1_39(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
119 static void ferode_1_39(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
120 static void fdilate_1_40(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
121 static void ferode_1_40(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
122 static void fdilate_1_41(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
123 static void ferode_1_41(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
124 static void fdilate_1_42(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
125 static void ferode_1_42(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
126 static void fdilate_1_43(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
127 static void ferode_1_43(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
128 static void fdilate_1_44(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
129 static void ferode_1_44(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
130 static void fdilate_1_45(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
131 static void ferode_1_45(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
132 static void fdilate_1_46(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
133 static void ferode_1_46(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
134 static void fdilate_1_47(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
135 static void ferode_1_47(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
136 static void fdilate_1_48(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
137 static void ferode_1_48(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
138 static void fdilate_1_49(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
139 static void ferode_1_49(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
140 static void fdilate_1_50(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
141 static void ferode_1_50(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
142 static void fdilate_1_51(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
143 static void ferode_1_51(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
144 static void fdilate_1_52(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
145 static void ferode_1_52(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
146 static void fdilate_1_53(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
147 static void ferode_1_53(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
148 static void fdilate_1_54(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
149 static void ferode_1_54(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
150 static void fdilate_1_55(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
151 static void ferode_1_55(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
152 static void fdilate_1_56(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
153 static void ferode_1_56(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
154 static void fdilate_1_57(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
155 static void ferode_1_57(l_uint32 *, l_int32, l_int32, l_int32, l_uint32 *, l_int32);
167 fmorphopgen_low_1(l_uint32 *datad,
179 fdilate_1_0(datad, w, h, wpld, datas, wpls);
182 ferode_1_0(datad, w, h, wpld, datas, wpls);
185 fdilate_1_1(datad, w, h, wpld, datas, wpls);
188 ferode_1_1(datad, w, h, wpld, datas, wpls);
191 fdilate_1_2(datad, w, h, wpld, datas, wpls);
194 ferode_1_2(datad, w, h, wpld, datas, wpls);
197 fdilate_1_3(datad, w, h, wpld, datas, wpls);
200 ferode_1_3(datad, w, h, wpld, datas, wpls);
203 fdilate_1_4(datad, w, h, wpld, datas, wpls);
206 ferode_1_4(datad, w, h, wpld, datas, wpls);
209 fdilate_1_5(datad, w, h, wpld, datas, wpls);
212 ferode_1_5(datad, w, h, wpld, datas, wpls);
215 fdilate_1_6(datad, w, h, wpld, datas, wpls);
218 ferode_1_6(datad, w, h, wpld, datas, wpls);
221 fdilate_1_7(datad, w, h, wpld, datas, wpls);
224 ferode_1_7(datad, w, h, wpld, datas, wpls);
227 fdilate_1_8(datad, w, h, wpld, datas, wpls);
230 ferode_1_8(datad, w, h, wpld, datas, wpls);
233 fdilate_1_9(datad, w, h, wpld, datas, wpls);
236 ferode_1_9(datad, w, h, wpld, datas, wpls);
239 fdilate_1_10(datad, w, h, wpld, datas, wpls);
242 ferode_1_10(datad, w, h, wpld, datas, wpls);
245 fdilate_1_11(datad, w, h, wpld, datas, wpls);
248 ferode_1_11(datad, w, h, wpld, datas, wpls);
251 fdilate_1_12(datad, w, h, wpld, datas, wpls);
254 ferode_1_12(datad, w, h, wpld, datas, wpls);
257 fdilate_1_13(datad, w, h, wpld, datas, wpls);
260 ferode_1_13(datad, w, h, wpld, datas, wpls);
263 fdilate_1_14(datad, w, h, wpld, datas, wpls);
266 ferode_1_14(datad, w, h, wpld, datas, wpls);
269 fdilate_1_15(datad, w, h, wpld, datas, wpls);
272 ferode_1_15(datad, w, h, wpld, datas, wpls);
275 fdilate_1_16(datad, w, h, wpld, datas, wpls);
278 ferode_1_16(datad, w, h, wpld, datas, wpls);
281 fdilate_1_17(datad, w, h, wpld, datas, wpls);
284 ferode_1_17(datad, w, h, wpld, datas, wpls);
287 fdilate_1_18(datad, w, h, wpld, datas, wpls);
290 ferode_1_18(datad, w, h, wpld, datas, wpls);
293 fdilate_1_19(datad, w, h, wpld, datas, wpls);
296 ferode_1_19(datad, w, h, wpld, datas, wpls);
299 fdilate_1_20(datad, w, h, wpld, datas, wpls);
302 ferode_1_20(datad, w, h, wpld, datas, wpls);
305 fdilate_1_21(datad, w, h, wpld, datas, wpls);
308 ferode_1_21(datad, w, h, wpld, datas, wpls);
311 fdilate_1_22(datad, w, h, wpld, datas, wpls);
314 ferode_1_22(datad, w, h, wpld, datas, wpls);
317 fdilate_1_23(datad, w, h, wpld, datas, wpls);
320 ferode_1_23(datad, w, h, wpld, datas, wpls);
323 fdilate_1_24(datad, w, h, wpld, datas, wpls);
326 ferode_1_24(datad, w, h, wpld, datas, wpls);
329 fdilate_1_25(datad, w, h, wpld, datas, wpls);
332 ferode_1_25(datad, w, h, wpld, datas, wpls);
335 fdilate_1_26(datad, w, h, wpld, datas, wpls);
338 ferode_1_26(datad, w, h, wpld, datas, wpls);
341 fdilate_1_27(datad, w, h, wpld, datas, wpls);
344 ferode_1_27(datad, w, h, wpld, datas, wpls);
347 fdilate_1_28(datad, w, h, wpld, datas, wpls);
350 ferode_1_28(datad, w, h, wpld, datas, wpls);
353 fdilate_1_29(datad, w, h, wpld, datas, wpls);
356 ferode_1_29(datad, w, h, wpld, datas, wpls);
359 fdilate_1_30(datad, w, h, wpld, datas, wpls);
362 ferode_1_30(datad, w, h, wpld, datas, wpls);
365 fdilate_1_31(datad, w, h, wpld, datas, wpls);
368 ferode_1_31(datad, w, h, wpld, datas, wpls);
371 fdilate_1_32(datad, w, h, wpld, datas, wpls);
374 ferode_1_32(datad, w, h, wpld, datas, wpls);
377 fdilate_1_33(datad, w, h, wpld, datas, wpls);
380 ferode_1_33(datad, w, h, wpld, datas, wpls);
383 fdilate_1_34(datad, w, h, wpld, datas, wpls);
386 ferode_1_34(datad, w, h, wpld, datas, wpls);
389 fdilate_1_35(datad, w, h, wpld, datas, wpls);
392 ferode_1_35(datad, w, h, wpld, datas, wpls);
395 fdilate_1_36(datad, w, h, wpld, datas, wpls);
398 ferode_1_36(datad, w, h, wpld, datas, wpls);
401 fdilate_1_37(datad, w, h, wpld, datas, wpls);
404 ferode_1_37(datad, w, h, wpld, datas, wpls);
407 fdilate_1_38(datad, w, h, wpld, datas, wpls);
410 ferode_1_38(datad, w, h, wpld, datas, wpls);
413 fdilate_1_39(datad, w, h, wpld, datas, wpls);
416 ferode_1_39(datad, w, h, wpld, datas, wpls);
419 fdilate_1_40(datad, w, h, wpld, datas, wpls);
422 ferode_1_40(datad, w, h, wpld, datas, wpls);
425 fdilate_1_41(datad, w, h, wpld, datas, wpls);
428 ferode_1_41(datad, w, h, wpld, datas, wpls);
431 fdilate_1_42(datad, w, h, wpld, datas, wpls);
434 ferode_1_42(datad, w, h, wpld, datas, wpls);
437 fdilate_1_43(datad, w, h, wpld, datas, wpls);
440 ferode_1_43(datad, w, h, wpld, datas, wpls);
443 fdilate_1_44(datad, w, h, wpld, datas, wpls);
446 ferode_1_44(datad, w, h, wpld, datas, wpls);
449 fdilate_1_45(datad, w, h, wpld, datas, wpls);
452 ferode_1_45(datad, w, h, wpld, datas, wpls);
455 fdilate_1_46(datad, w, h, wpld, datas, wpls);
458 ferode_1_46(datad, w, h, wpld, datas, wpls);
461 fdilate_1_47(datad, w, h, wpld, datas, wpls);
464 ferode_1_47(datad, w, h, wpld, datas, wpls);
467 fdilate_1_48(datad, w, h, wpld, datas, wpls);
470 ferode_1_48(datad, w, h, wpld, datas, wpls);
473 fdilate_1_49(datad, w, h, wpld, datas, wpls);
476 ferode_1_49(datad, w, h, wpld, datas, wpls);
479 fdilate_1_50(datad, w, h, wpld, datas, wpls);
482 ferode_1_50(datad, w, h, wpld, datas, wpls);
485 fdilate_1_51(datad, w, h, wpld, datas, wpls);
488 ferode_1_51(datad, w, h, wpld, datas, wpls);
491 fdilate_1_52(datad, w, h, wpld, datas, wpls);
494 ferode_1_52(datad, w, h, wpld, datas, wpls);
497 fdilate_1_53(datad, w, h, wpld, datas, wpls);
500 ferode_1_53(datad, w, h, wpld, datas, wpls);
503 fdilate_1_54(datad, w, h, wpld, datas, wpls);
506 ferode_1_54(datad, w, h, wpld, datas, wpls);
509 fdilate_1_55(datad, w, h, wpld, datas, wpls);
512 ferode_1_55(datad, w, h, wpld, datas, wpls);
515 fdilate_1_56(datad, w, h, wpld, datas, wpls);
518 ferode_1_56(datad, w, h, wpld, datas, wpls);
521 fdilate_1_57(datad, w, h, wpld, datas, wpls);
524 ferode_1_57(datad, w, h, wpld, datas, wpls);
544 fdilate_1_0(l_uint32 *datad,
553 l_uint32 *sptr, *dptr;
555 pwpls = (l_uint32)(w + 31) / 32;
557 for (i = 0; i < h; i++) {
558 sptr = datas + i * wpls;
559 dptr = datad + i * wpld;
560 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
561 *dptr = ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
568 ferode_1_0(l_uint32 *datad,
577 l_uint32 *sptr, *dptr;
579 pwpls = (l_uint32)(w + 31) / 32;
581 for (i = 0; i < h; i++) {
582 sptr = datas + i * wpls;
583 dptr = datad + i * wpld;
584 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
585 *dptr = ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
592 fdilate_1_1(l_uint32 *datad,
601 l_uint32 *sptr, *dptr;
603 pwpls = (l_uint32)(w + 31) / 32;
605 for (i = 0; i < h; i++) {
606 sptr = datas + i * wpls;
607 dptr = datad + i * wpld;
608 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
609 *dptr = ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
611 ((*(sptr) >> 1) | (*(sptr - 1) << 31));
617 ferode_1_1(l_uint32 *datad,
626 l_uint32 *sptr, *dptr;
628 pwpls = (l_uint32)(w + 31) / 32;
630 for (i = 0; i < h; i++) {
631 sptr = datas + i * wpls;
632 dptr = datad + i * wpld;
633 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
634 *dptr = ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
636 ((*(sptr) << 1) | (*(sptr + 1) >> 31));
642 fdilate_1_2(l_uint32 *datad,
651 l_uint32 *sptr, *dptr;
653 pwpls = (l_uint32)(w + 31) / 32;
655 for (i = 0; i < h; i++) {
656 sptr = datas + i * wpls;
657 dptr = datad + i * wpld;
658 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
659 *dptr = ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
660 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
662 ((*(sptr) >> 1) | (*(sptr - 1) << 31));
668 ferode_1_2(l_uint32 *datad,
677 l_uint32 *sptr, *dptr;
679 pwpls = (l_uint32)(w + 31) / 32;
681 for (i = 0; i < h; i++) {
682 sptr = datas + i * wpls;
683 dptr = datad + i * wpld;
684 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
685 *dptr = ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
686 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
688 ((*(sptr) << 1) | (*(sptr + 1) >> 31));
694 fdilate_1_3(l_uint32 *datad,
703 l_uint32 *sptr, *dptr;
705 pwpls = (l_uint32)(w + 31) / 32;
707 for (i = 0; i < h; i++) {
708 sptr = datas + i * wpls;
709 dptr = datad + i * wpld;
710 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
711 *dptr = ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
712 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
714 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
715 ((*(sptr) >> 2) | (*(sptr - 1) << 30));
721 ferode_1_3(l_uint32 *datad,
730 l_uint32 *sptr, *dptr;
732 pwpls = (l_uint32)(w + 31) / 32;
734 for (i = 0; i < h; i++) {
735 sptr = datas + i * wpls;
736 dptr = datad + i * wpld;
737 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
738 *dptr = ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
739 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
741 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
742 ((*(sptr) << 2) | (*(sptr + 1) >> 30));
748 fdilate_1_4(l_uint32 *datad,
757 l_uint32 *sptr, *dptr;
759 pwpls = (l_uint32)(w + 31) / 32;
761 for (i = 0; i < h; i++) {
762 sptr = datas + i * wpls;
763 dptr = datad + i * wpld;
764 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
765 *dptr = ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
766 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
767 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
769 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
770 ((*(sptr) >> 2) | (*(sptr - 1) << 30));
776 ferode_1_4(l_uint32 *datad,
785 l_uint32 *sptr, *dptr;
787 pwpls = (l_uint32)(w + 31) / 32;
789 for (i = 0; i < h; i++) {
790 sptr = datas + i * wpls;
791 dptr = datad + i * wpld;
792 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
793 *dptr = ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
794 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
795 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
797 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
798 ((*(sptr) << 2) | (*(sptr + 1) >> 30));
804 fdilate_1_5(l_uint32 *datad,
813 l_uint32 *sptr, *dptr;
815 pwpls = (l_uint32)(w + 31) / 32;
817 for (i = 0; i < h; i++) {
818 sptr = datas + i * wpls;
819 dptr = datad + i * wpld;
820 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
821 *dptr = ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
822 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
823 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
825 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
826 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
827 ((*(sptr) >> 3) | (*(sptr - 1) << 29));
833 ferode_1_5(l_uint32 *datad,
842 l_uint32 *sptr, *dptr;
844 pwpls = (l_uint32)(w + 31) / 32;
846 for (i = 0; i < h; i++) {
847 sptr = datas + i * wpls;
848 dptr = datad + i * wpld;
849 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
850 *dptr = ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
851 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
852 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
854 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
855 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
856 ((*(sptr) << 3) | (*(sptr + 1) >> 29));
862 fdilate_1_6(l_uint32 *datad,
871 l_uint32 *sptr, *dptr;
873 pwpls = (l_uint32)(w + 31) / 32;
875 for (i = 0; i < h; i++) {
876 sptr = datas + i * wpls;
877 dptr = datad + i * wpld;
878 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
879 *dptr = ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
880 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
881 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
882 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
884 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
885 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
886 ((*(sptr) >> 3) | (*(sptr - 1) << 29));
892 ferode_1_6(l_uint32 *datad,
901 l_uint32 *sptr, *dptr;
903 pwpls = (l_uint32)(w + 31) / 32;
905 for (i = 0; i < h; i++) {
906 sptr = datas + i * wpls;
907 dptr = datad + i * wpld;
908 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
909 *dptr = ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
910 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
911 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
912 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
914 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
915 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
916 ((*(sptr) << 3) | (*(sptr + 1) >> 29));
922 fdilate_1_7(l_uint32 *datad,
931 l_uint32 *sptr, *dptr;
933 pwpls = (l_uint32)(w + 31) / 32;
935 for (i = 0; i < h; i++) {
936 sptr = datas + i * wpls;
937 dptr = datad + i * wpld;
938 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
939 *dptr = ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
940 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
941 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
942 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
944 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
945 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
946 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) |
947 ((*(sptr) >> 4) | (*(sptr - 1) << 28));
953 ferode_1_7(l_uint32 *datad,
962 l_uint32 *sptr, *dptr;
964 pwpls = (l_uint32)(w + 31) / 32;
966 for (i = 0; i < h; i++) {
967 sptr = datas + i * wpls;
968 dptr = datad + i * wpld;
969 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
970 *dptr = ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
971 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
972 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
973 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
975 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
976 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
977 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) &
978 ((*(sptr) << 4) | (*(sptr + 1) >> 28));
984 fdilate_1_8(l_uint32 *datad,
993 l_uint32 *sptr, *dptr;
995 pwpls = (l_uint32)(w + 31) / 32;
997 for (i = 0; i < h; i++) {
998 sptr = datas + i * wpls;
999 dptr = datad + i * wpld;
1000 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1001 *dptr = ((*(sptr) << 5) | (*(sptr + 1) >> 27)) |
1002 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
1003 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
1004 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
1005 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
1007 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
1008 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
1009 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) |
1010 ((*(sptr) >> 4) | (*(sptr - 1) << 28));
1016 ferode_1_8(l_uint32 *datad,
1025 l_uint32 *sptr, *dptr;
1027 pwpls = (l_uint32)(w + 31) / 32;
1029 for (i = 0; i < h; i++) {
1030 sptr = datas + i * wpls;
1031 dptr = datad + i * wpld;
1032 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1033 *dptr = ((*(sptr) >> 5) | (*(sptr - 1) << 27)) &
1034 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
1035 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
1036 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
1037 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
1039 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
1040 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
1041 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) &
1042 ((*(sptr) << 4) | (*(sptr + 1) >> 28));
1048 fdilate_1_9(l_uint32 *datad,
1057 l_uint32 *sptr, *dptr;
1059 pwpls = (l_uint32)(w + 31) / 32;
1061 for (i = 0; i < h; i++) {
1062 sptr = datas + i * wpls;
1063 dptr = datad + i * wpld;
1064 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1065 *dptr = ((*(sptr) << 5) | (*(sptr + 1) >> 27)) |
1066 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
1067 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
1068 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
1069 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
1071 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
1072 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
1073 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) |
1074 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) |
1075 ((*(sptr) >> 5) | (*(sptr - 1) << 27));
1081 ferode_1_9(l_uint32 *datad,
1090 l_uint32 *sptr, *dptr;
1092 pwpls = (l_uint32)(w + 31) / 32;
1094 for (i = 0; i < h; i++) {
1095 sptr = datas + i * wpls;
1096 dptr = datad + i * wpld;
1097 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1098 *dptr = ((*(sptr) >> 5) | (*(sptr - 1) << 27)) &
1099 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
1100 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
1101 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
1102 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
1104 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
1105 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
1106 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) &
1107 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) &
1108 ((*(sptr) << 5) | (*(sptr + 1) >> 27));
1114 fdilate_1_10(l_uint32 *datad,
1123 l_uint32 *sptr, *dptr;
1125 pwpls = (l_uint32)(w + 31) / 32;
1127 for (i = 0; i < h; i++) {
1128 sptr = datas + i * wpls;
1129 dptr = datad + i * wpld;
1130 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1131 *dptr = ((*(sptr) << 6) | (*(sptr + 1) >> 26)) |
1132 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) |
1133 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
1134 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
1135 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
1136 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
1138 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
1139 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
1140 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) |
1141 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) |
1142 ((*(sptr) >> 5) | (*(sptr - 1) << 27));
1148 ferode_1_10(l_uint32 *datad,
1157 l_uint32 *sptr, *dptr;
1159 pwpls = (l_uint32)(w + 31) / 32;
1161 for (i = 0; i < h; i++) {
1162 sptr = datas + i * wpls;
1163 dptr = datad + i * wpld;
1164 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1165 *dptr = ((*(sptr) >> 6) | (*(sptr - 1) << 26)) &
1166 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) &
1167 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
1168 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
1169 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
1170 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
1172 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
1173 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
1174 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) &
1175 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) &
1176 ((*(sptr) << 5) | (*(sptr + 1) >> 27));
1182 fdilate_1_11(l_uint32 *datad,
1191 l_uint32 *sptr, *dptr;
1193 pwpls = (l_uint32)(w + 31) / 32;
1195 for (i = 0; i < h; i++) {
1196 sptr = datas + i * wpls;
1197 dptr = datad + i * wpld;
1198 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1199 *dptr = ((*(sptr) << 6) | (*(sptr + 1) >> 26)) |
1200 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) |
1201 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
1202 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
1203 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
1204 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
1206 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
1207 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
1208 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) |
1209 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) |
1210 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) |
1211 ((*(sptr) >> 6) | (*(sptr - 1) << 26));
1217 ferode_1_11(l_uint32 *datad,
1226 l_uint32 *sptr, *dptr;
1228 pwpls = (l_uint32)(w + 31) / 32;
1230 for (i = 0; i < h; i++) {
1231 sptr = datas + i * wpls;
1232 dptr = datad + i * wpld;
1233 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1234 *dptr = ((*(sptr) >> 6) | (*(sptr - 1) << 26)) &
1235 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) &
1236 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
1237 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
1238 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
1239 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
1241 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
1242 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
1243 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) &
1244 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) &
1245 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) &
1246 ((*(sptr) << 6) | (*(sptr + 1) >> 26));
1252 fdilate_1_12(l_uint32 *datad,
1261 l_uint32 *sptr, *dptr;
1263 pwpls = (l_uint32)(w + 31) / 32;
1265 for (i = 0; i < h; i++) {
1266 sptr = datas + i * wpls;
1267 dptr = datad + i * wpld;
1268 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1269 *dptr = ((*(sptr) << 7) | (*(sptr + 1) >> 25)) |
1270 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) |
1271 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) |
1272 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
1273 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
1274 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
1275 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
1277 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
1278 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
1279 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) |
1280 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) |
1281 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) |
1282 ((*(sptr) >> 6) | (*(sptr - 1) << 26));
1288 ferode_1_12(l_uint32 *datad,
1297 l_uint32 *sptr, *dptr;
1299 pwpls = (l_uint32)(w + 31) / 32;
1301 for (i = 0; i < h; i++) {
1302 sptr = datas + i * wpls;
1303 dptr = datad + i * wpld;
1304 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1305 *dptr = ((*(sptr) >> 7) | (*(sptr - 1) << 25)) &
1306 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) &
1307 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) &
1308 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
1309 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
1310 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
1311 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
1313 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
1314 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
1315 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) &
1316 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) &
1317 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) &
1318 ((*(sptr) << 6) | (*(sptr + 1) >> 26));
1324 fdilate_1_13(l_uint32 *datad,
1333 l_uint32 *sptr, *dptr;
1335 pwpls = (l_uint32)(w + 31) / 32;
1337 for (i = 0; i < h; i++) {
1338 sptr = datas + i * wpls;
1339 dptr = datad + i * wpld;
1340 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1341 *dptr = ((*(sptr) << 7) | (*(sptr + 1) >> 25)) |
1342 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) |
1343 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) |
1344 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
1345 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
1346 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
1347 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
1349 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
1350 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
1351 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) |
1352 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) |
1353 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) |
1354 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) |
1355 ((*(sptr) >> 7) | (*(sptr - 1) << 25));
1361 ferode_1_13(l_uint32 *datad,
1370 l_uint32 *sptr, *dptr;
1372 pwpls = (l_uint32)(w + 31) / 32;
1374 for (i = 0; i < h; i++) {
1375 sptr = datas + i * wpls;
1376 dptr = datad + i * wpld;
1377 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1378 *dptr = ((*(sptr) >> 7) | (*(sptr - 1) << 25)) &
1379 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) &
1380 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) &
1381 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
1382 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
1383 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
1384 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
1386 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
1387 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
1388 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) &
1389 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) &
1390 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) &
1391 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) &
1392 ((*(sptr) << 7) | (*(sptr + 1) >> 25));
1398 fdilate_1_14(l_uint32 *datad,
1407 l_uint32 *sptr, *dptr;
1409 pwpls = (l_uint32)(w + 31) / 32;
1411 for (i = 0; i < h; i++) {
1412 sptr = datas + i * wpls;
1413 dptr = datad + i * wpld;
1414 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1415 *dptr = ((*(sptr) << 10) | (*(sptr + 1) >> 22)) |
1416 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) |
1417 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) |
1418 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) |
1419 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) |
1420 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) |
1421 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
1422 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
1423 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
1424 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
1426 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
1427 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
1428 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) |
1429 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) |
1430 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) |
1431 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) |
1432 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) |
1433 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) |
1434 ((*(sptr) >> 9) | (*(sptr - 1) << 23));
1440 ferode_1_14(l_uint32 *datad,
1449 l_uint32 *sptr, *dptr;
1451 pwpls = (l_uint32)(w + 31) / 32;
1453 for (i = 0; i < h; i++) {
1454 sptr = datas + i * wpls;
1455 dptr = datad + i * wpld;
1456 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1457 *dptr = ((*(sptr) >> 10) | (*(sptr - 1) << 22)) &
1458 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) &
1459 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) &
1460 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) &
1461 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) &
1462 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) &
1463 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
1464 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
1465 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
1466 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
1468 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
1469 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
1470 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) &
1471 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) &
1472 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) &
1473 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) &
1474 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) &
1475 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) &
1476 ((*(sptr) << 9) | (*(sptr + 1) >> 23));
1482 fdilate_1_15(l_uint32 *datad,
1491 l_uint32 *sptr, *dptr;
1493 pwpls = (l_uint32)(w + 31) / 32;
1495 for (i = 0; i < h; i++) {
1496 sptr = datas + i * wpls;
1497 dptr = datad + i * wpld;
1498 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1499 *dptr = ((*(sptr) << 10) | (*(sptr + 1) >> 22)) |
1500 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) |
1501 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) |
1502 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) |
1503 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) |
1504 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) |
1505 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
1506 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
1507 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
1508 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
1510 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
1511 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
1512 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) |
1513 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) |
1514 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) |
1515 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) |
1516 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) |
1517 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) |
1518 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) |
1519 ((*(sptr) >> 10) | (*(sptr - 1) << 22));
1525 ferode_1_15(l_uint32 *datad,
1534 l_uint32 *sptr, *dptr;
1536 pwpls = (l_uint32)(w + 31) / 32;
1538 for (i = 0; i < h; i++) {
1539 sptr = datas + i * wpls;
1540 dptr = datad + i * wpld;
1541 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1542 *dptr = ((*(sptr) >> 10) | (*(sptr - 1) << 22)) &
1543 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) &
1544 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) &
1545 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) &
1546 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) &
1547 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) &
1548 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
1549 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
1550 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
1551 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
1553 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
1554 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
1555 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) &
1556 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) &
1557 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) &
1558 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) &
1559 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) &
1560 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) &
1561 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) &
1562 ((*(sptr) << 10) | (*(sptr + 1) >> 22));
1568 fdilate_1_16(l_uint32 *datad,
1577 l_uint32 *sptr, *dptr;
1579 pwpls = (l_uint32)(w + 31) / 32;
1581 for (i = 0; i < h; i++) {
1582 sptr = datas + i * wpls;
1583 dptr = datad + i * wpld;
1584 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1585 *dptr = ((*(sptr) << 12) | (*(sptr + 1) >> 20)) |
1586 ((*(sptr) << 11) | (*(sptr + 1) >> 21)) |
1587 ((*(sptr) << 10) | (*(sptr + 1) >> 22)) |
1588 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) |
1589 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) |
1590 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) |
1591 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) |
1592 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) |
1593 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
1594 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
1595 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
1596 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
1598 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
1599 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
1600 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) |
1601 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) |
1602 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) |
1603 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) |
1604 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) |
1605 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) |
1606 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) |
1607 ((*(sptr) >> 10) | (*(sptr - 1) << 22)) |
1608 ((*(sptr) >> 11) | (*(sptr - 1) << 21)) |
1609 ((*(sptr) >> 12) | (*(sptr - 1) << 20));
1615 ferode_1_16(l_uint32 *datad,
1624 l_uint32 *sptr, *dptr;
1626 pwpls = (l_uint32)(w + 31) / 32;
1628 for (i = 0; i < h; i++) {
1629 sptr = datas + i * wpls;
1630 dptr = datad + i * wpld;
1631 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1632 *dptr = ((*(sptr) >> 12) | (*(sptr - 1) << 20)) &
1633 ((*(sptr) >> 11) | (*(sptr - 1) << 21)) &
1634 ((*(sptr) >> 10) | (*(sptr - 1) << 22)) &
1635 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) &
1636 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) &
1637 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) &
1638 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) &
1639 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) &
1640 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
1641 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
1642 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
1643 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
1645 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
1646 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
1647 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) &
1648 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) &
1649 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) &
1650 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) &
1651 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) &
1652 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) &
1653 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) &
1654 ((*(sptr) << 10) | (*(sptr + 1) >> 22)) &
1655 ((*(sptr) << 11) | (*(sptr + 1) >> 21)) &
1656 ((*(sptr) << 12) | (*(sptr + 1) >> 20));
1662 fdilate_1_17(l_uint32 *datad,
1671 l_uint32 *sptr, *dptr;
1673 pwpls = (l_uint32)(w + 31) / 32;
1675 for (i = 0; i < h; i++) {
1676 sptr = datas + i * wpls;
1677 dptr = datad + i * wpld;
1678 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1679 *dptr = ((*(sptr) << 15) | (*(sptr + 1) >> 17)) |
1680 ((*(sptr) << 14) | (*(sptr + 1) >> 18)) |
1681 ((*(sptr) << 13) | (*(sptr + 1) >> 19)) |
1682 ((*(sptr) << 12) | (*(sptr + 1) >> 20)) |
1683 ((*(sptr) << 11) | (*(sptr + 1) >> 21)) |
1684 ((*(sptr) << 10) | (*(sptr + 1) >> 22)) |
1685 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) |
1686 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) |
1687 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) |
1688 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) |
1689 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) |
1690 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
1691 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
1692 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
1693 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
1695 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
1696 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
1697 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) |
1698 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) |
1699 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) |
1700 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) |
1701 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) |
1702 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) |
1703 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) |
1704 ((*(sptr) >> 10) | (*(sptr - 1) << 22)) |
1705 ((*(sptr) >> 11) | (*(sptr - 1) << 21)) |
1706 ((*(sptr) >> 12) | (*(sptr - 1) << 20)) |
1707 ((*(sptr) >> 13) | (*(sptr - 1) << 19)) |
1708 ((*(sptr) >> 14) | (*(sptr - 1) << 18));
1714 ferode_1_17(l_uint32 *datad,
1723 l_uint32 *sptr, *dptr;
1725 pwpls = (l_uint32)(w + 31) / 32;
1727 for (i = 0; i < h; i++) {
1728 sptr = datas + i * wpls;
1729 dptr = datad + i * wpld;
1730 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1731 *dptr = ((*(sptr) >> 15) | (*(sptr - 1) << 17)) &
1732 ((*(sptr) >> 14) | (*(sptr - 1) << 18)) &
1733 ((*(sptr) >> 13) | (*(sptr - 1) << 19)) &
1734 ((*(sptr) >> 12) | (*(sptr - 1) << 20)) &
1735 ((*(sptr) >> 11) | (*(sptr - 1) << 21)) &
1736 ((*(sptr) >> 10) | (*(sptr - 1) << 22)) &
1737 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) &
1738 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) &
1739 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) &
1740 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) &
1741 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) &
1742 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
1743 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
1744 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
1745 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
1747 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
1748 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
1749 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) &
1750 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) &
1751 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) &
1752 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) &
1753 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) &
1754 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) &
1755 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) &
1756 ((*(sptr) << 10) | (*(sptr + 1) >> 22)) &
1757 ((*(sptr) << 11) | (*(sptr + 1) >> 21)) &
1758 ((*(sptr) << 12) | (*(sptr + 1) >> 20)) &
1759 ((*(sptr) << 13) | (*(sptr + 1) >> 19)) &
1760 ((*(sptr) << 14) | (*(sptr + 1) >> 18));
1766 fdilate_1_18(l_uint32 *datad,
1775 l_uint32 *sptr, *dptr;
1777 pwpls = (l_uint32)(w + 31) / 32;
1779 for (i = 0; i < h; i++) {
1780 sptr = datas + i * wpls;
1781 dptr = datad + i * wpld;
1782 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1783 *dptr = ((*(sptr) << 15) | (*(sptr + 1) >> 17)) |
1784 ((*(sptr) << 14) | (*(sptr + 1) >> 18)) |
1785 ((*(sptr) << 13) | (*(sptr + 1) >> 19)) |
1786 ((*(sptr) << 12) | (*(sptr + 1) >> 20)) |
1787 ((*(sptr) << 11) | (*(sptr + 1) >> 21)) |
1788 ((*(sptr) << 10) | (*(sptr + 1) >> 22)) |
1789 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) |
1790 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) |
1791 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) |
1792 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) |
1793 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) |
1794 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
1795 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
1796 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
1797 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
1799 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
1800 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
1801 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) |
1802 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) |
1803 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) |
1804 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) |
1805 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) |
1806 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) |
1807 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) |
1808 ((*(sptr) >> 10) | (*(sptr - 1) << 22)) |
1809 ((*(sptr) >> 11) | (*(sptr - 1) << 21)) |
1810 ((*(sptr) >> 12) | (*(sptr - 1) << 20)) |
1811 ((*(sptr) >> 13) | (*(sptr - 1) << 19)) |
1812 ((*(sptr) >> 14) | (*(sptr - 1) << 18)) |
1813 ((*(sptr) >> 15) | (*(sptr - 1) << 17));
1819 ferode_1_18(l_uint32 *datad,
1828 l_uint32 *sptr, *dptr;
1830 pwpls = (l_uint32)(w + 31) / 32;
1832 for (i = 0; i < h; i++) {
1833 sptr = datas + i * wpls;
1834 dptr = datad + i * wpld;
1835 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1836 *dptr = ((*(sptr) >> 15) | (*(sptr - 1) << 17)) &
1837 ((*(sptr) >> 14) | (*(sptr - 1) << 18)) &
1838 ((*(sptr) >> 13) | (*(sptr - 1) << 19)) &
1839 ((*(sptr) >> 12) | (*(sptr - 1) << 20)) &
1840 ((*(sptr) >> 11) | (*(sptr - 1) << 21)) &
1841 ((*(sptr) >> 10) | (*(sptr - 1) << 22)) &
1842 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) &
1843 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) &
1844 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) &
1845 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) &
1846 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) &
1847 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
1848 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
1849 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
1850 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
1852 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
1853 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
1854 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) &
1855 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) &
1856 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) &
1857 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) &
1858 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) &
1859 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) &
1860 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) &
1861 ((*(sptr) << 10) | (*(sptr + 1) >> 22)) &
1862 ((*(sptr) << 11) | (*(sptr + 1) >> 21)) &
1863 ((*(sptr) << 12) | (*(sptr + 1) >> 20)) &
1864 ((*(sptr) << 13) | (*(sptr + 1) >> 19)) &
1865 ((*(sptr) << 14) | (*(sptr + 1) >> 18)) &
1866 ((*(sptr) << 15) | (*(sptr + 1) >> 17));
1872 fdilate_1_19(l_uint32 *datad,
1881 l_uint32 *sptr, *dptr;
1883 pwpls = (l_uint32)(w + 31) / 32;
1885 for (i = 0; i < h; i++) {
1886 sptr = datas + i * wpls;
1887 dptr = datad + i * wpld;
1888 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1889 *dptr = ((*(sptr) << 17) | (*(sptr + 1) >> 15)) |
1890 ((*(sptr) << 16) | (*(sptr + 1) >> 16)) |
1891 ((*(sptr) << 15) | (*(sptr + 1) >> 17)) |
1892 ((*(sptr) << 14) | (*(sptr + 1) >> 18)) |
1893 ((*(sptr) << 13) | (*(sptr + 1) >> 19)) |
1894 ((*(sptr) << 12) | (*(sptr + 1) >> 20)) |
1895 ((*(sptr) << 11) | (*(sptr + 1) >> 21)) |
1896 ((*(sptr) << 10) | (*(sptr + 1) >> 22)) |
1897 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) |
1898 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) |
1899 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) |
1900 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) |
1901 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) |
1902 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
1903 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
1904 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
1905 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
1907 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
1908 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
1909 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) |
1910 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) |
1911 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) |
1912 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) |
1913 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) |
1914 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) |
1915 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) |
1916 ((*(sptr) >> 10) | (*(sptr - 1) << 22)) |
1917 ((*(sptr) >> 11) | (*(sptr - 1) << 21)) |
1918 ((*(sptr) >> 12) | (*(sptr - 1) << 20)) |
1919 ((*(sptr) >> 13) | (*(sptr - 1) << 19)) |
1920 ((*(sptr) >> 14) | (*(sptr - 1) << 18)) |
1921 ((*(sptr) >> 15) | (*(sptr - 1) << 17)) |
1922 ((*(sptr) >> 16) | (*(sptr - 1) << 16)) |
1923 ((*(sptr) >> 17) | (*(sptr - 1) << 15));
1929 ferode_1_19(l_uint32 *datad,
1938 l_uint32 *sptr, *dptr;
1940 pwpls = (l_uint32)(w + 31) / 32;
1942 for (i = 0; i < h; i++) {
1943 sptr = datas + i * wpls;
1944 dptr = datad + i * wpld;
1945 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
1946 *dptr = ((*(sptr) >> 17) | (*(sptr - 1) << 15)) &
1947 ((*(sptr) >> 16) | (*(sptr - 1) << 16)) &
1948 ((*(sptr) >> 15) | (*(sptr - 1) << 17)) &
1949 ((*(sptr) >> 14) | (*(sptr - 1) << 18)) &
1950 ((*(sptr) >> 13) | (*(sptr - 1) << 19)) &
1951 ((*(sptr) >> 12) | (*(sptr - 1) << 20)) &
1952 ((*(sptr) >> 11) | (*(sptr - 1) << 21)) &
1953 ((*(sptr) >> 10) | (*(sptr - 1) << 22)) &
1954 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) &
1955 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) &
1956 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) &
1957 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) &
1958 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) &
1959 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
1960 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
1961 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
1962 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
1964 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
1965 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
1966 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) &
1967 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) &
1968 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) &
1969 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) &
1970 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) &
1971 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) &
1972 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) &
1973 ((*(sptr) << 10) | (*(sptr + 1) >> 22)) &
1974 ((*(sptr) << 11) | (*(sptr + 1) >> 21)) &
1975 ((*(sptr) << 12) | (*(sptr + 1) >> 20)) &
1976 ((*(sptr) << 13) | (*(sptr + 1) >> 19)) &
1977 ((*(sptr) << 14) | (*(sptr + 1) >> 18)) &
1978 ((*(sptr) << 15) | (*(sptr + 1) >> 17)) &
1979 ((*(sptr) << 16) | (*(sptr + 1) >> 16)) &
1980 ((*(sptr) << 17) | (*(sptr + 1) >> 15));
1986 fdilate_1_20(l_uint32 *datad,
1995 l_uint32 *sptr, *dptr;
1997 pwpls = (l_uint32)(w + 31) / 32;
1999 for (i = 0; i < h; i++) {
2000 sptr = datas + i * wpls;
2001 dptr = datad + i * wpld;
2002 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2003 *dptr = ((*(sptr) << 20) | (*(sptr + 1) >> 12)) |
2004 ((*(sptr) << 19) | (*(sptr + 1) >> 13)) |
2005 ((*(sptr) << 18) | (*(sptr + 1) >> 14)) |
2006 ((*(sptr) << 17) | (*(sptr + 1) >> 15)) |
2007 ((*(sptr) << 16) | (*(sptr + 1) >> 16)) |
2008 ((*(sptr) << 15) | (*(sptr + 1) >> 17)) |
2009 ((*(sptr) << 14) | (*(sptr + 1) >> 18)) |
2010 ((*(sptr) << 13) | (*(sptr + 1) >> 19)) |
2011 ((*(sptr) << 12) | (*(sptr + 1) >> 20)) |
2012 ((*(sptr) << 11) | (*(sptr + 1) >> 21)) |
2013 ((*(sptr) << 10) | (*(sptr + 1) >> 22)) |
2014 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) |
2015 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) |
2016 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) |
2017 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) |
2018 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) |
2019 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
2020 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
2021 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
2022 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
2024 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
2025 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
2026 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) |
2027 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) |
2028 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) |
2029 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) |
2030 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) |
2031 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) |
2032 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) |
2033 ((*(sptr) >> 10) | (*(sptr - 1) << 22)) |
2034 ((*(sptr) >> 11) | (*(sptr - 1) << 21)) |
2035 ((*(sptr) >> 12) | (*(sptr - 1) << 20)) |
2036 ((*(sptr) >> 13) | (*(sptr - 1) << 19)) |
2037 ((*(sptr) >> 14) | (*(sptr - 1) << 18)) |
2038 ((*(sptr) >> 15) | (*(sptr - 1) << 17)) |
2039 ((*(sptr) >> 16) | (*(sptr - 1) << 16)) |
2040 ((*(sptr) >> 17) | (*(sptr - 1) << 15)) |
2041 ((*(sptr) >> 18) | (*(sptr - 1) << 14)) |
2042 ((*(sptr) >> 19) | (*(sptr - 1) << 13));
2048 ferode_1_20(l_uint32 *datad,
2057 l_uint32 *sptr, *dptr;
2059 pwpls = (l_uint32)(w + 31) / 32;
2061 for (i = 0; i < h; i++) {
2062 sptr = datas + i * wpls;
2063 dptr = datad + i * wpld;
2064 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2065 *dptr = ((*(sptr) >> 20) | (*(sptr - 1) << 12)) &
2066 ((*(sptr) >> 19) | (*(sptr - 1) << 13)) &
2067 ((*(sptr) >> 18) | (*(sptr - 1) << 14)) &
2068 ((*(sptr) >> 17) | (*(sptr - 1) << 15)) &
2069 ((*(sptr) >> 16) | (*(sptr - 1) << 16)) &
2070 ((*(sptr) >> 15) | (*(sptr - 1) << 17)) &
2071 ((*(sptr) >> 14) | (*(sptr - 1) << 18)) &
2072 ((*(sptr) >> 13) | (*(sptr - 1) << 19)) &
2073 ((*(sptr) >> 12) | (*(sptr - 1) << 20)) &
2074 ((*(sptr) >> 11) | (*(sptr - 1) << 21)) &
2075 ((*(sptr) >> 10) | (*(sptr - 1) << 22)) &
2076 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) &
2077 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) &
2078 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) &
2079 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) &
2080 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) &
2081 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
2082 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
2083 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
2084 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
2086 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
2087 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
2088 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) &
2089 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) &
2090 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) &
2091 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) &
2092 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) &
2093 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) &
2094 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) &
2095 ((*(sptr) << 10) | (*(sptr + 1) >> 22)) &
2096 ((*(sptr) << 11) | (*(sptr + 1) >> 21)) &
2097 ((*(sptr) << 12) | (*(sptr + 1) >> 20)) &
2098 ((*(sptr) << 13) | (*(sptr + 1) >> 19)) &
2099 ((*(sptr) << 14) | (*(sptr + 1) >> 18)) &
2100 ((*(sptr) << 15) | (*(sptr + 1) >> 17)) &
2101 ((*(sptr) << 16) | (*(sptr + 1) >> 16)) &
2102 ((*(sptr) << 17) | (*(sptr + 1) >> 15)) &
2103 ((*(sptr) << 18) | (*(sptr + 1) >> 14)) &
2104 ((*(sptr) << 19) | (*(sptr + 1) >> 13));
2110 fdilate_1_21(l_uint32 *datad,
2119 l_uint32 *sptr, *dptr;
2121 pwpls = (l_uint32)(w + 31) / 32;
2123 for (i = 0; i < h; i++) {
2124 sptr = datas + i * wpls;
2125 dptr = datad + i * wpld;
2126 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2127 *dptr = ((*(sptr) << 20) | (*(sptr + 1) >> 12)) |
2128 ((*(sptr) << 19) | (*(sptr + 1) >> 13)) |
2129 ((*(sptr) << 18) | (*(sptr + 1) >> 14)) |
2130 ((*(sptr) << 17) | (*(sptr + 1) >> 15)) |
2131 ((*(sptr) << 16) | (*(sptr + 1) >> 16)) |
2132 ((*(sptr) << 15) | (*(sptr + 1) >> 17)) |
2133 ((*(sptr) << 14) | (*(sptr + 1) >> 18)) |
2134 ((*(sptr) << 13) | (*(sptr + 1) >> 19)) |
2135 ((*(sptr) << 12) | (*(sptr + 1) >> 20)) |
2136 ((*(sptr) << 11) | (*(sptr + 1) >> 21)) |
2137 ((*(sptr) << 10) | (*(sptr + 1) >> 22)) |
2138 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) |
2139 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) |
2140 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) |
2141 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) |
2142 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) |
2143 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
2144 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
2145 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
2146 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
2148 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
2149 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
2150 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) |
2151 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) |
2152 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) |
2153 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) |
2154 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) |
2155 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) |
2156 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) |
2157 ((*(sptr) >> 10) | (*(sptr - 1) << 22)) |
2158 ((*(sptr) >> 11) | (*(sptr - 1) << 21)) |
2159 ((*(sptr) >> 12) | (*(sptr - 1) << 20)) |
2160 ((*(sptr) >> 13) | (*(sptr - 1) << 19)) |
2161 ((*(sptr) >> 14) | (*(sptr - 1) << 18)) |
2162 ((*(sptr) >> 15) | (*(sptr - 1) << 17)) |
2163 ((*(sptr) >> 16) | (*(sptr - 1) << 16)) |
2164 ((*(sptr) >> 17) | (*(sptr - 1) << 15)) |
2165 ((*(sptr) >> 18) | (*(sptr - 1) << 14)) |
2166 ((*(sptr) >> 19) | (*(sptr - 1) << 13)) |
2167 ((*(sptr) >> 20) | (*(sptr - 1) << 12));
2173 ferode_1_21(l_uint32 *datad,
2182 l_uint32 *sptr, *dptr;
2184 pwpls = (l_uint32)(w + 31) / 32;
2186 for (i = 0; i < h; i++) {
2187 sptr = datas + i * wpls;
2188 dptr = datad + i * wpld;
2189 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2190 *dptr = ((*(sptr) >> 20) | (*(sptr - 1) << 12)) &
2191 ((*(sptr) >> 19) | (*(sptr - 1) << 13)) &
2192 ((*(sptr) >> 18) | (*(sptr - 1) << 14)) &
2193 ((*(sptr) >> 17) | (*(sptr - 1) << 15)) &
2194 ((*(sptr) >> 16) | (*(sptr - 1) << 16)) &
2195 ((*(sptr) >> 15) | (*(sptr - 1) << 17)) &
2196 ((*(sptr) >> 14) | (*(sptr - 1) << 18)) &
2197 ((*(sptr) >> 13) | (*(sptr - 1) << 19)) &
2198 ((*(sptr) >> 12) | (*(sptr - 1) << 20)) &
2199 ((*(sptr) >> 11) | (*(sptr - 1) << 21)) &
2200 ((*(sptr) >> 10) | (*(sptr - 1) << 22)) &
2201 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) &
2202 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) &
2203 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) &
2204 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) &
2205 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) &
2206 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
2207 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
2208 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
2209 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
2211 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
2212 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
2213 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) &
2214 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) &
2215 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) &
2216 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) &
2217 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) &
2218 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) &
2219 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) &
2220 ((*(sptr) << 10) | (*(sptr + 1) >> 22)) &
2221 ((*(sptr) << 11) | (*(sptr + 1) >> 21)) &
2222 ((*(sptr) << 12) | (*(sptr + 1) >> 20)) &
2223 ((*(sptr) << 13) | (*(sptr + 1) >> 19)) &
2224 ((*(sptr) << 14) | (*(sptr + 1) >> 18)) &
2225 ((*(sptr) << 15) | (*(sptr + 1) >> 17)) &
2226 ((*(sptr) << 16) | (*(sptr + 1) >> 16)) &
2227 ((*(sptr) << 17) | (*(sptr + 1) >> 15)) &
2228 ((*(sptr) << 18) | (*(sptr + 1) >> 14)) &
2229 ((*(sptr) << 19) | (*(sptr + 1) >> 13)) &
2230 ((*(sptr) << 20) | (*(sptr + 1) >> 12));
2236 fdilate_1_22(l_uint32 *datad,
2245 l_uint32 *sptr, *dptr;
2247 pwpls = (l_uint32)(w + 31) / 32;
2249 for (i = 0; i < h; i++) {
2250 sptr = datas + i * wpls;
2251 dptr = datad + i * wpld;
2252 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2253 *dptr = ((*(sptr) << 22) | (*(sptr + 1) >> 10)) |
2254 ((*(sptr) << 21) | (*(sptr + 1) >> 11)) |
2255 ((*(sptr) << 20) | (*(sptr + 1) >> 12)) |
2256 ((*(sptr) << 19) | (*(sptr + 1) >> 13)) |
2257 ((*(sptr) << 18) | (*(sptr + 1) >> 14)) |
2258 ((*(sptr) << 17) | (*(sptr + 1) >> 15)) |
2259 ((*(sptr) << 16) | (*(sptr + 1) >> 16)) |
2260 ((*(sptr) << 15) | (*(sptr + 1) >> 17)) |
2261 ((*(sptr) << 14) | (*(sptr + 1) >> 18)) |
2262 ((*(sptr) << 13) | (*(sptr + 1) >> 19)) |
2263 ((*(sptr) << 12) | (*(sptr + 1) >> 20)) |
2264 ((*(sptr) << 11) | (*(sptr + 1) >> 21)) |
2265 ((*(sptr) << 10) | (*(sptr + 1) >> 22)) |
2266 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) |
2267 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) |
2268 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) |
2269 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) |
2270 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) |
2271 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
2272 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
2273 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
2274 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
2276 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
2277 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
2278 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) |
2279 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) |
2280 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) |
2281 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) |
2282 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) |
2283 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) |
2284 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) |
2285 ((*(sptr) >> 10) | (*(sptr - 1) << 22)) |
2286 ((*(sptr) >> 11) | (*(sptr - 1) << 21)) |
2287 ((*(sptr) >> 12) | (*(sptr - 1) << 20)) |
2288 ((*(sptr) >> 13) | (*(sptr - 1) << 19)) |
2289 ((*(sptr) >> 14) | (*(sptr - 1) << 18)) |
2290 ((*(sptr) >> 15) | (*(sptr - 1) << 17)) |
2291 ((*(sptr) >> 16) | (*(sptr - 1) << 16)) |
2292 ((*(sptr) >> 17) | (*(sptr - 1) << 15)) |
2293 ((*(sptr) >> 18) | (*(sptr - 1) << 14)) |
2294 ((*(sptr) >> 19) | (*(sptr - 1) << 13)) |
2295 ((*(sptr) >> 20) | (*(sptr - 1) << 12)) |
2296 ((*(sptr) >> 21) | (*(sptr - 1) << 11)) |
2297 ((*(sptr) >> 22) | (*(sptr - 1) << 10));
2303 ferode_1_22(l_uint32 *datad,
2312 l_uint32 *sptr, *dptr;
2314 pwpls = (l_uint32)(w + 31) / 32;
2316 for (i = 0; i < h; i++) {
2317 sptr = datas + i * wpls;
2318 dptr = datad + i * wpld;
2319 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2320 *dptr = ((*(sptr) >> 22) | (*(sptr - 1) << 10)) &
2321 ((*(sptr) >> 21) | (*(sptr - 1) << 11)) &
2322 ((*(sptr) >> 20) | (*(sptr - 1) << 12)) &
2323 ((*(sptr) >> 19) | (*(sptr - 1) << 13)) &
2324 ((*(sptr) >> 18) | (*(sptr - 1) << 14)) &
2325 ((*(sptr) >> 17) | (*(sptr - 1) << 15)) &
2326 ((*(sptr) >> 16) | (*(sptr - 1) << 16)) &
2327 ((*(sptr) >> 15) | (*(sptr - 1) << 17)) &
2328 ((*(sptr) >> 14) | (*(sptr - 1) << 18)) &
2329 ((*(sptr) >> 13) | (*(sptr - 1) << 19)) &
2330 ((*(sptr) >> 12) | (*(sptr - 1) << 20)) &
2331 ((*(sptr) >> 11) | (*(sptr - 1) << 21)) &
2332 ((*(sptr) >> 10) | (*(sptr - 1) << 22)) &
2333 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) &
2334 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) &
2335 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) &
2336 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) &
2337 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) &
2338 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
2339 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
2340 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
2341 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
2343 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
2344 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
2345 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) &
2346 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) &
2347 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) &
2348 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) &
2349 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) &
2350 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) &
2351 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) &
2352 ((*(sptr) << 10) | (*(sptr + 1) >> 22)) &
2353 ((*(sptr) << 11) | (*(sptr + 1) >> 21)) &
2354 ((*(sptr) << 12) | (*(sptr + 1) >> 20)) &
2355 ((*(sptr) << 13) | (*(sptr + 1) >> 19)) &
2356 ((*(sptr) << 14) | (*(sptr + 1) >> 18)) &
2357 ((*(sptr) << 15) | (*(sptr + 1) >> 17)) &
2358 ((*(sptr) << 16) | (*(sptr + 1) >> 16)) &
2359 ((*(sptr) << 17) | (*(sptr + 1) >> 15)) &
2360 ((*(sptr) << 18) | (*(sptr + 1) >> 14)) &
2361 ((*(sptr) << 19) | (*(sptr + 1) >> 13)) &
2362 ((*(sptr) << 20) | (*(sptr + 1) >> 12)) &
2363 ((*(sptr) << 21) | (*(sptr + 1) >> 11)) &
2364 ((*(sptr) << 22) | (*(sptr + 1) >> 10));
2370 fdilate_1_23(l_uint32 *datad,
2379 l_uint32 *sptr, *dptr;
2381 pwpls = (l_uint32)(w + 31) / 32;
2383 for (i = 0; i < h; i++) {
2384 sptr = datas + i * wpls;
2385 dptr = datad + i * wpld;
2386 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2387 *dptr = ((*(sptr) << 25) | (*(sptr + 1) >> 7)) |
2388 ((*(sptr) << 24) | (*(sptr + 1) >> 8)) |
2389 ((*(sptr) << 23) | (*(sptr + 1) >> 9)) |
2390 ((*(sptr) << 22) | (*(sptr + 1) >> 10)) |
2391 ((*(sptr) << 21) | (*(sptr + 1) >> 11)) |
2392 ((*(sptr) << 20) | (*(sptr + 1) >> 12)) |
2393 ((*(sptr) << 19) | (*(sptr + 1) >> 13)) |
2394 ((*(sptr) << 18) | (*(sptr + 1) >> 14)) |
2395 ((*(sptr) << 17) | (*(sptr + 1) >> 15)) |
2396 ((*(sptr) << 16) | (*(sptr + 1) >> 16)) |
2397 ((*(sptr) << 15) | (*(sptr + 1) >> 17)) |
2398 ((*(sptr) << 14) | (*(sptr + 1) >> 18)) |
2399 ((*(sptr) << 13) | (*(sptr + 1) >> 19)) |
2400 ((*(sptr) << 12) | (*(sptr + 1) >> 20)) |
2401 ((*(sptr) << 11) | (*(sptr + 1) >> 21)) |
2402 ((*(sptr) << 10) | (*(sptr + 1) >> 22)) |
2403 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) |
2404 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) |
2405 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) |
2406 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) |
2407 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) |
2408 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
2409 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
2410 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
2411 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
2413 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
2414 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
2415 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) |
2416 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) |
2417 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) |
2418 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) |
2419 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) |
2420 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) |
2421 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) |
2422 ((*(sptr) >> 10) | (*(sptr - 1) << 22)) |
2423 ((*(sptr) >> 11) | (*(sptr - 1) << 21)) |
2424 ((*(sptr) >> 12) | (*(sptr - 1) << 20)) |
2425 ((*(sptr) >> 13) | (*(sptr - 1) << 19)) |
2426 ((*(sptr) >> 14) | (*(sptr - 1) << 18)) |
2427 ((*(sptr) >> 15) | (*(sptr - 1) << 17)) |
2428 ((*(sptr) >> 16) | (*(sptr - 1) << 16)) |
2429 ((*(sptr) >> 17) | (*(sptr - 1) << 15)) |
2430 ((*(sptr) >> 18) | (*(sptr - 1) << 14)) |
2431 ((*(sptr) >> 19) | (*(sptr - 1) << 13)) |
2432 ((*(sptr) >> 20) | (*(sptr - 1) << 12)) |
2433 ((*(sptr) >> 21) | (*(sptr - 1) << 11)) |
2434 ((*(sptr) >> 22) | (*(sptr - 1) << 10)) |
2435 ((*(sptr) >> 23) | (*(sptr - 1) << 9)) |
2436 ((*(sptr) >> 24) | (*(sptr - 1) << 8));
2442 ferode_1_23(l_uint32 *datad,
2451 l_uint32 *sptr, *dptr;
2453 pwpls = (l_uint32)(w + 31) / 32;
2455 for (i = 0; i < h; i++) {
2456 sptr = datas + i * wpls;
2457 dptr = datad + i * wpld;
2458 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2459 *dptr = ((*(sptr) >> 25) | (*(sptr - 1) << 7)) &
2460 ((*(sptr) >> 24) | (*(sptr - 1) << 8)) &
2461 ((*(sptr) >> 23) | (*(sptr - 1) << 9)) &
2462 ((*(sptr) >> 22) | (*(sptr - 1) << 10)) &
2463 ((*(sptr) >> 21) | (*(sptr - 1) << 11)) &
2464 ((*(sptr) >> 20) | (*(sptr - 1) << 12)) &
2465 ((*(sptr) >> 19) | (*(sptr - 1) << 13)) &
2466 ((*(sptr) >> 18) | (*(sptr - 1) << 14)) &
2467 ((*(sptr) >> 17) | (*(sptr - 1) << 15)) &
2468 ((*(sptr) >> 16) | (*(sptr - 1) << 16)) &
2469 ((*(sptr) >> 15) | (*(sptr - 1) << 17)) &
2470 ((*(sptr) >> 14) | (*(sptr - 1) << 18)) &
2471 ((*(sptr) >> 13) | (*(sptr - 1) << 19)) &
2472 ((*(sptr) >> 12) | (*(sptr - 1) << 20)) &
2473 ((*(sptr) >> 11) | (*(sptr - 1) << 21)) &
2474 ((*(sptr) >> 10) | (*(sptr - 1) << 22)) &
2475 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) &
2476 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) &
2477 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) &
2478 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) &
2479 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) &
2480 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
2481 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
2482 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
2483 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
2485 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
2486 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
2487 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) &
2488 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) &
2489 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) &
2490 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) &
2491 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) &
2492 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) &
2493 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) &
2494 ((*(sptr) << 10) | (*(sptr + 1) >> 22)) &
2495 ((*(sptr) << 11) | (*(sptr + 1) >> 21)) &
2496 ((*(sptr) << 12) | (*(sptr + 1) >> 20)) &
2497 ((*(sptr) << 13) | (*(sptr + 1) >> 19)) &
2498 ((*(sptr) << 14) | (*(sptr + 1) >> 18)) &
2499 ((*(sptr) << 15) | (*(sptr + 1) >> 17)) &
2500 ((*(sptr) << 16) | (*(sptr + 1) >> 16)) &
2501 ((*(sptr) << 17) | (*(sptr + 1) >> 15)) &
2502 ((*(sptr) << 18) | (*(sptr + 1) >> 14)) &
2503 ((*(sptr) << 19) | (*(sptr + 1) >> 13)) &
2504 ((*(sptr) << 20) | (*(sptr + 1) >> 12)) &
2505 ((*(sptr) << 21) | (*(sptr + 1) >> 11)) &
2506 ((*(sptr) << 22) | (*(sptr + 1) >> 10)) &
2507 ((*(sptr) << 23) | (*(sptr + 1) >> 9)) &
2508 ((*(sptr) << 24) | (*(sptr + 1) >> 8));
2514 fdilate_1_24(l_uint32 *datad,
2523 l_uint32 *sptr, *dptr;
2525 pwpls = (l_uint32)(w + 31) / 32;
2527 for (i = 0; i < h; i++) {
2528 sptr = datas + i * wpls;
2529 dptr = datad + i * wpld;
2530 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2531 *dptr = ((*(sptr) << 25) | (*(sptr + 1) >> 7)) |
2532 ((*(sptr) << 24) | (*(sptr + 1) >> 8)) |
2533 ((*(sptr) << 23) | (*(sptr + 1) >> 9)) |
2534 ((*(sptr) << 22) | (*(sptr + 1) >> 10)) |
2535 ((*(sptr) << 21) | (*(sptr + 1) >> 11)) |
2536 ((*(sptr) << 20) | (*(sptr + 1) >> 12)) |
2537 ((*(sptr) << 19) | (*(sptr + 1) >> 13)) |
2538 ((*(sptr) << 18) | (*(sptr + 1) >> 14)) |
2539 ((*(sptr) << 17) | (*(sptr + 1) >> 15)) |
2540 ((*(sptr) << 16) | (*(sptr + 1) >> 16)) |
2541 ((*(sptr) << 15) | (*(sptr + 1) >> 17)) |
2542 ((*(sptr) << 14) | (*(sptr + 1) >> 18)) |
2543 ((*(sptr) << 13) | (*(sptr + 1) >> 19)) |
2544 ((*(sptr) << 12) | (*(sptr + 1) >> 20)) |
2545 ((*(sptr) << 11) | (*(sptr + 1) >> 21)) |
2546 ((*(sptr) << 10) | (*(sptr + 1) >> 22)) |
2547 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) |
2548 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) |
2549 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) |
2550 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) |
2551 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) |
2552 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) |
2553 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) |
2554 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
2555 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
2557 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
2558 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
2559 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) |
2560 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) |
2561 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) |
2562 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) |
2563 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) |
2564 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) |
2565 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) |
2566 ((*(sptr) >> 10) | (*(sptr - 1) << 22)) |
2567 ((*(sptr) >> 11) | (*(sptr - 1) << 21)) |
2568 ((*(sptr) >> 12) | (*(sptr - 1) << 20)) |
2569 ((*(sptr) >> 13) | (*(sptr - 1) << 19)) |
2570 ((*(sptr) >> 14) | (*(sptr - 1) << 18)) |
2571 ((*(sptr) >> 15) | (*(sptr - 1) << 17)) |
2572 ((*(sptr) >> 16) | (*(sptr - 1) << 16)) |
2573 ((*(sptr) >> 17) | (*(sptr - 1) << 15)) |
2574 ((*(sptr) >> 18) | (*(sptr - 1) << 14)) |
2575 ((*(sptr) >> 19) | (*(sptr - 1) << 13)) |
2576 ((*(sptr) >> 20) | (*(sptr - 1) << 12)) |
2577 ((*(sptr) >> 21) | (*(sptr - 1) << 11)) |
2578 ((*(sptr) >> 22) | (*(sptr - 1) << 10)) |
2579 ((*(sptr) >> 23) | (*(sptr - 1) << 9)) |
2580 ((*(sptr) >> 24) | (*(sptr - 1) << 8)) |
2581 ((*(sptr) >> 25) | (*(sptr - 1) << 7));
2587 ferode_1_24(l_uint32 *datad,
2596 l_uint32 *sptr, *dptr;
2598 pwpls = (l_uint32)(w + 31) / 32;
2600 for (i = 0; i < h; i++) {
2601 sptr = datas + i * wpls;
2602 dptr = datad + i * wpld;
2603 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2604 *dptr = ((*(sptr) >> 25) | (*(sptr - 1) << 7)) &
2605 ((*(sptr) >> 24) | (*(sptr - 1) << 8)) &
2606 ((*(sptr) >> 23) | (*(sptr - 1) << 9)) &
2607 ((*(sptr) >> 22) | (*(sptr - 1) << 10)) &
2608 ((*(sptr) >> 21) | (*(sptr - 1) << 11)) &
2609 ((*(sptr) >> 20) | (*(sptr - 1) << 12)) &
2610 ((*(sptr) >> 19) | (*(sptr - 1) << 13)) &
2611 ((*(sptr) >> 18) | (*(sptr - 1) << 14)) &
2612 ((*(sptr) >> 17) | (*(sptr - 1) << 15)) &
2613 ((*(sptr) >> 16) | (*(sptr - 1) << 16)) &
2614 ((*(sptr) >> 15) | (*(sptr - 1) << 17)) &
2615 ((*(sptr) >> 14) | (*(sptr - 1) << 18)) &
2616 ((*(sptr) >> 13) | (*(sptr - 1) << 19)) &
2617 ((*(sptr) >> 12) | (*(sptr - 1) << 20)) &
2618 ((*(sptr) >> 11) | (*(sptr - 1) << 21)) &
2619 ((*(sptr) >> 10) | (*(sptr - 1) << 22)) &
2620 ((*(sptr) >> 9) | (*(sptr - 1) << 23)) &
2621 ((*(sptr) >> 8) | (*(sptr - 1) << 24)) &
2622 ((*(sptr) >> 7) | (*(sptr - 1) << 25)) &
2623 ((*(sptr) >> 6) | (*(sptr - 1) << 26)) &
2624 ((*(sptr) >> 5) | (*(sptr - 1) << 27)) &
2625 ((*(sptr) >> 4) | (*(sptr - 1) << 28)) &
2626 ((*(sptr) >> 3) | (*(sptr - 1) << 29)) &
2627 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
2628 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
2630 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
2631 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
2632 ((*(sptr) << 3) | (*(sptr + 1) >> 29)) &
2633 ((*(sptr) << 4) | (*(sptr + 1) >> 28)) &
2634 ((*(sptr) << 5) | (*(sptr + 1) >> 27)) &
2635 ((*(sptr) << 6) | (*(sptr + 1) >> 26)) &
2636 ((*(sptr) << 7) | (*(sptr + 1) >> 25)) &
2637 ((*(sptr) << 8) | (*(sptr + 1) >> 24)) &
2638 ((*(sptr) << 9) | (*(sptr + 1) >> 23)) &
2639 ((*(sptr) << 10) | (*(sptr + 1) >> 22)) &
2640 ((*(sptr) << 11) | (*(sptr + 1) >> 21)) &
2641 ((*(sptr) << 12) | (*(sptr + 1) >> 20)) &
2642 ((*(sptr) << 13) | (*(sptr + 1) >> 19)) &
2643 ((*(sptr) << 14) | (*(sptr + 1) >> 18)) &
2644 ((*(sptr) << 15) | (*(sptr + 1) >> 17)) &
2645 ((*(sptr) << 16) | (*(sptr + 1) >> 16)) &
2646 ((*(sptr) << 17) | (*(sptr + 1) >> 15)) &
2647 ((*(sptr) << 18) | (*(sptr + 1) >> 14)) &
2648 ((*(sptr) << 19) | (*(sptr + 1) >> 13)) &
2649 ((*(sptr) << 20) | (*(sptr + 1) >> 12)) &
2650 ((*(sptr) << 21) | (*(sptr + 1) >> 11)) &
2651 ((*(sptr) << 22) | (*(sptr + 1) >> 10)) &
2652 ((*(sptr) << 23) | (*(sptr + 1) >> 9)) &
2653 ((*(sptr) << 24) | (*(sptr + 1) >> 8)) &
2654 ((*(sptr) << 25) | (*(sptr + 1) >> 7));
2660 fdilate_1_25(l_uint32 *datad,
2669 l_uint32 *sptr, *dptr;
2671 pwpls = (l_uint32)(w + 31) / 32;
2673 for (i = 0; i < h; i++) {
2674 sptr = datas + i * wpls;
2675 dptr = datad + i * wpld;
2676 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2677 *dptr = (*(sptr + wpls)) |
2684 ferode_1_25(l_uint32 *datad,
2693 l_uint32 *sptr, *dptr;
2695 pwpls = (l_uint32)(w + 31) / 32;
2697 for (i = 0; i < h; i++) {
2698 sptr = datas + i * wpls;
2699 dptr = datad + i * wpld;
2700 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2701 *dptr = (*(sptr - wpls)) &
2708 fdilate_1_26(l_uint32 *datad,
2717 l_uint32 *sptr, *dptr;
2719 pwpls = (l_uint32)(w + 31) / 32;
2721 for (i = 0; i < h; i++) {
2722 sptr = datas + i * wpls;
2723 dptr = datad + i * wpld;
2724 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2725 *dptr = (*(sptr + wpls)) |
2733 ferode_1_26(l_uint32 *datad,
2742 l_uint32 *sptr, *dptr;
2744 pwpls = (l_uint32)(w + 31) / 32;
2746 for (i = 0; i < h; i++) {
2747 sptr = datas + i * wpls;
2748 dptr = datad + i * wpld;
2749 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2750 *dptr = (*(sptr - wpls)) &
2758 fdilate_1_27(l_uint32 *datad,
2767 l_uint32 *sptr, *dptr;
2771 pwpls = (l_uint32)(w + 31) / 32;
2773 for (i = 0; i < h; i++) {
2774 sptr = datas + i * wpls;
2775 dptr = datad + i * wpld;
2776 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2777 *dptr = (*(sptr + wpls2)) |
2786 ferode_1_27(l_uint32 *datad,
2795 l_uint32 *sptr, *dptr;
2799 pwpls = (l_uint32)(w + 31) / 32;
2801 for (i = 0; i < h; i++) {
2802 sptr = datas + i * wpls;
2803 dptr = datad + i * wpld;
2804 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2805 *dptr = (*(sptr - wpls2)) &
2814 fdilate_1_28(l_uint32 *datad,
2823 l_uint32 *sptr, *dptr;
2827 pwpls = (l_uint32)(w + 31) / 32;
2829 for (i = 0; i < h; i++) {
2830 sptr = datas + i * wpls;
2831 dptr = datad + i * wpld;
2832 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2833 *dptr = (*(sptr + wpls2)) |
2843 ferode_1_28(l_uint32 *datad,
2852 l_uint32 *sptr, *dptr;
2856 pwpls = (l_uint32)(w + 31) / 32;
2858 for (i = 0; i < h; i++) {
2859 sptr = datas + i * wpls;
2860 dptr = datad + i * wpld;
2861 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2862 *dptr = (*(sptr - wpls2)) &
2872 fdilate_1_29(l_uint32 *datad,
2881 l_uint32 *sptr, *dptr;
2882 l_int32 wpls2, wpls3;
2886 pwpls = (l_uint32)(w + 31) / 32;
2888 for (i = 0; i < h; i++) {
2889 sptr = datas + i * wpls;
2890 dptr = datad + i * wpld;
2891 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2892 *dptr = (*(sptr + wpls3)) |
2903 ferode_1_29(l_uint32 *datad,
2912 l_uint32 *sptr, *dptr;
2913 l_int32 wpls2, wpls3;
2917 pwpls = (l_uint32)(w + 31) / 32;
2919 for (i = 0; i < h; i++) {
2920 sptr = datas + i * wpls;
2921 dptr = datad + i * wpld;
2922 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2923 *dptr = (*(sptr - wpls3)) &
2934 fdilate_1_30(l_uint32 *datad,
2943 l_uint32 *sptr, *dptr;
2944 l_int32 wpls2, wpls3;
2948 pwpls = (l_uint32)(w + 31) / 32;
2950 for (i = 0; i < h; i++) {
2951 sptr = datas + i * wpls;
2952 dptr = datad + i * wpld;
2953 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2954 *dptr = (*(sptr + wpls3)) |
2966 ferode_1_30(l_uint32 *datad,
2975 l_uint32 *sptr, *dptr;
2976 l_int32 wpls2, wpls3;
2980 pwpls = (l_uint32)(w + 31) / 32;
2982 for (i = 0; i < h; i++) {
2983 sptr = datas + i * wpls;
2984 dptr = datad + i * wpld;
2985 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
2986 *dptr = (*(sptr - wpls3)) &
2998 fdilate_1_31(l_uint32 *datad,
3007 l_uint32 *sptr, *dptr;
3008 l_int32 wpls2, wpls3, wpls4;
3013 pwpls = (l_uint32)(w + 31) / 32;
3015 for (i = 0; i < h; i++) {
3016 sptr = datas + i * wpls;
3017 dptr = datad + i * wpld;
3018 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3019 *dptr = (*(sptr + wpls4)) |
3032 ferode_1_31(l_uint32 *datad,
3041 l_uint32 *sptr, *dptr;
3042 l_int32 wpls2, wpls3, wpls4;
3047 pwpls = (l_uint32)(w + 31) / 32;
3049 for (i = 0; i < h; i++) {
3050 sptr = datas + i * wpls;
3051 dptr = datad + i * wpld;
3052 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3053 *dptr = (*(sptr - wpls4)) &
3066 fdilate_1_32(l_uint32 *datad,
3075 l_uint32 *sptr, *dptr;
3076 l_int32 wpls2, wpls3, wpls4;
3081 pwpls = (l_uint32)(w + 31) / 32;
3083 for (i = 0; i < h; i++) {
3084 sptr = datas + i * wpls;
3085 dptr = datad + i * wpld;
3086 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3087 *dptr = (*(sptr + wpls4)) |
3101 ferode_1_32(l_uint32 *datad,
3110 l_uint32 *sptr, *dptr;
3111 l_int32 wpls2, wpls3, wpls4;
3116 pwpls = (l_uint32)(w + 31) / 32;
3118 for (i = 0; i < h; i++) {
3119 sptr = datas + i * wpls;
3120 dptr = datad + i * wpld;
3121 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3122 *dptr = (*(sptr - wpls4)) &
3136 fdilate_1_33(l_uint32 *datad,
3145 l_uint32 *sptr, *dptr;
3146 l_int32 wpls2, wpls3, wpls4;
3153 pwpls = (l_uint32)(w + 31) / 32;
3155 for (i = 0; i < h; i++) {
3156 sptr = datas + i * wpls;
3157 dptr = datad + i * wpld;
3158 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3159 *dptr = (*(sptr + wpls5)) |
3174 ferode_1_33(l_uint32 *datad,
3183 l_uint32 *sptr, *dptr;
3184 l_int32 wpls2, wpls3, wpls4;
3191 pwpls = (l_uint32)(w + 31) / 32;
3193 for (i = 0; i < h; i++) {
3194 sptr = datas + i * wpls;
3195 dptr = datad + i * wpld;
3196 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3197 *dptr = (*(sptr - wpls5)) &
3212 fdilate_1_34(l_uint32 *datad,
3221 l_uint32 *sptr, *dptr;
3222 l_int32 wpls2, wpls3, wpls4;
3229 pwpls = (l_uint32)(w + 31) / 32;
3231 for (i = 0; i < h; i++) {
3232 sptr = datas + i * wpls;
3233 dptr = datad + i * wpld;
3234 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3235 *dptr = (*(sptr + wpls5)) |
3251 ferode_1_34(l_uint32 *datad,
3260 l_uint32 *sptr, *dptr;
3261 l_int32 wpls2, wpls3, wpls4;
3268 pwpls = (l_uint32)(w + 31) / 32;
3270 for (i = 0; i < h; i++) {
3271 sptr = datas + i * wpls;
3272 dptr = datad + i * wpld;
3273 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3274 *dptr = (*(sptr - wpls5)) &
3290 fdilate_1_35(l_uint32 *datad,
3299 l_uint32 *sptr, *dptr;
3300 l_int32 wpls2, wpls3, wpls4;
3301 l_int32 wpls5, wpls6;
3308 pwpls = (l_uint32)(w + 31) / 32;
3310 for (i = 0; i < h; i++) {
3311 sptr = datas + i * wpls;
3312 dptr = datad + i * wpld;
3313 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3314 *dptr = (*(sptr + wpls6)) |
3331 ferode_1_35(l_uint32 *datad,
3340 l_uint32 *sptr, *dptr;
3341 l_int32 wpls2, wpls3, wpls4;
3342 l_int32 wpls5, wpls6;
3349 pwpls = (l_uint32)(w + 31) / 32;
3351 for (i = 0; i < h; i++) {
3352 sptr = datas + i * wpls;
3353 dptr = datad + i * wpld;
3354 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3355 *dptr = (*(sptr - wpls6)) &
3372 fdilate_1_36(l_uint32 *datad,
3381 l_uint32 *sptr, *dptr;
3382 l_int32 wpls2, wpls3, wpls4;
3383 l_int32 wpls5, wpls6;
3390 pwpls = (l_uint32)(w + 31) / 32;
3392 for (i = 0; i < h; i++) {
3393 sptr = datas + i * wpls;
3394 dptr = datad + i * wpld;
3395 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3396 *dptr = (*(sptr + wpls6)) |
3414 ferode_1_36(l_uint32 *datad,
3423 l_uint32 *sptr, *dptr;
3424 l_int32 wpls2, wpls3, wpls4;
3425 l_int32 wpls5, wpls6;
3432 pwpls = (l_uint32)(w + 31) / 32;
3434 for (i = 0; i < h; i++) {
3435 sptr = datas + i * wpls;
3436 dptr = datad + i * wpld;
3437 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3438 *dptr = (*(sptr - wpls6)) &
3456 fdilate_1_37(l_uint32 *datad,
3465 l_uint32 *sptr, *dptr;
3466 l_int32 wpls2, wpls3, wpls4;
3467 l_int32 wpls5, wpls6, wpls7;
3475 pwpls = (l_uint32)(w + 31) / 32;
3477 for (i = 0; i < h; i++) {
3478 sptr = datas + i * wpls;
3479 dptr = datad + i * wpld;
3480 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3481 *dptr = (*(sptr + wpls7)) |
3500 ferode_1_37(l_uint32 *datad,
3509 l_uint32 *sptr, *dptr;
3510 l_int32 wpls2, wpls3, wpls4;
3511 l_int32 wpls5, wpls6, wpls7;
3519 pwpls = (l_uint32)(w + 31) / 32;
3521 for (i = 0; i < h; i++) {
3522 sptr = datas + i * wpls;
3523 dptr = datad + i * wpld;
3524 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3525 *dptr = (*(sptr - wpls7)) &
3544 fdilate_1_38(l_uint32 *datad,
3553 l_uint32 *sptr, *dptr;
3554 l_int32 wpls2, wpls3, wpls4;
3555 l_int32 wpls5, wpls6, wpls7;
3563 pwpls = (l_uint32)(w + 31) / 32;
3565 for (i = 0; i < h; i++) {
3566 sptr = datas + i * wpls;
3567 dptr = datad + i * wpld;
3568 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3569 *dptr = (*(sptr + wpls7)) |
3589 ferode_1_38(l_uint32 *datad,
3598 l_uint32 *sptr, *dptr;
3599 l_int32 wpls2, wpls3, wpls4;
3600 l_int32 wpls5, wpls6, wpls7;
3608 pwpls = (l_uint32)(w + 31) / 32;
3610 for (i = 0; i < h; i++) {
3611 sptr = datas + i * wpls;
3612 dptr = datad + i * wpld;
3613 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3614 *dptr = (*(sptr - wpls7)) &
3634 fdilate_1_39(l_uint32 *datad,
3643 l_uint32 *sptr, *dptr;
3644 l_int32 wpls2, wpls3, wpls4;
3645 l_int32 wpls5, wpls6, wpls7, wpls8;
3646 l_int32 wpls9, wpls10;
3657 pwpls = (l_uint32)(w + 31) / 32;
3659 for (i = 0; i < h; i++) {
3660 sptr = datas + i * wpls;
3661 dptr = datad + i * wpld;
3662 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3663 *dptr = (*(sptr + wpls10)) |
3688 ferode_1_39(l_uint32 *datad,
3697 l_uint32 *sptr, *dptr;
3698 l_int32 wpls2, wpls3, wpls4;
3699 l_int32 wpls5, wpls6, wpls7, wpls8;
3700 l_int32 wpls9, wpls10;
3711 pwpls = (l_uint32)(w + 31) / 32;
3713 for (i = 0; i < h; i++) {
3714 sptr = datas + i * wpls;
3715 dptr = datad + i * wpld;
3716 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3717 *dptr = (*(sptr - wpls10)) &
3742 fdilate_1_40(l_uint32 *datad,
3751 l_uint32 *sptr, *dptr;
3752 l_int32 wpls2, wpls3, wpls4;
3753 l_int32 wpls5, wpls6, wpls7, wpls8;
3754 l_int32 wpls9, wpls10;
3765 pwpls = (l_uint32)(w + 31) / 32;
3767 for (i = 0; i < h; i++) {
3768 sptr = datas + i * wpls;
3769 dptr = datad + i * wpld;
3770 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3771 *dptr = (*(sptr + wpls10)) |
3797 ferode_1_40(l_uint32 *datad,
3806 l_uint32 *sptr, *dptr;
3807 l_int32 wpls2, wpls3, wpls4;
3808 l_int32 wpls5, wpls6, wpls7, wpls8;
3809 l_int32 wpls9, wpls10;
3820 pwpls = (l_uint32)(w + 31) / 32;
3822 for (i = 0; i < h; i++) {
3823 sptr = datas + i * wpls;
3824 dptr = datad + i * wpld;
3825 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3826 *dptr = (*(sptr - wpls10)) &
3852 fdilate_1_41(l_uint32 *datad,
3861 l_uint32 *sptr, *dptr;
3862 l_int32 wpls2, wpls3, wpls4;
3863 l_int32 wpls5, wpls6, wpls7, wpls8;
3864 l_int32 wpls9, wpls10, wpls11, wpls12;
3877 pwpls = (l_uint32)(w + 31) / 32;
3879 for (i = 0; i < h; i++) {
3880 sptr = datas + i * wpls;
3881 dptr = datad + i * wpld;
3882 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3883 *dptr = (*(sptr + wpls12)) |
3884 (*(sptr + wpls11)) |
3885 (*(sptr + wpls10)) |
3905 (*(sptr - wpls10)) |
3906 (*(sptr - wpls11)) |
3913 ferode_1_41(l_uint32 *datad,
3922 l_uint32 *sptr, *dptr;
3923 l_int32 wpls2, wpls3, wpls4;
3924 l_int32 wpls5, wpls6, wpls7, wpls8;
3925 l_int32 wpls9, wpls10, wpls11, wpls12;
3938 pwpls = (l_uint32)(w + 31) / 32;
3940 for (i = 0; i < h; i++) {
3941 sptr = datas + i * wpls;
3942 dptr = datad + i * wpld;
3943 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
3944 *dptr = (*(sptr - wpls12)) &
3945 (*(sptr - wpls11)) &
3946 (*(sptr - wpls10)) &
3966 (*(sptr + wpls10)) &
3967 (*(sptr + wpls11)) &
3974 fdilate_1_42(l_uint32 *datad,
3983 l_uint32 *sptr, *dptr;
3984 l_int32 wpls2, wpls3, wpls4;
3985 l_int32 wpls5, wpls6, wpls7, wpls8;
3986 l_int32 wpls9, wpls10, wpls11, wpls12;
3987 l_int32 wpls13, wpls14, wpls15;
4003 pwpls = (l_uint32)(w + 31) / 32;
4005 for (i = 0; i < h; i++) {
4006 sptr = datas + i * wpls;
4007 dptr = datad + i * wpld;
4008 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
4009 *dptr = (*(sptr + wpls15)) |
4010 (*(sptr + wpls14)) |
4011 (*(sptr + wpls13)) |
4012 (*(sptr + wpls12)) |
4013 (*(sptr + wpls11)) |
4014 (*(sptr + wpls10)) |
4034 (*(sptr - wpls10)) |
4035 (*(sptr - wpls11)) |
4036 (*(sptr - wpls12)) |
4037 (*(sptr - wpls13)) |
4044 ferode_1_42(l_uint32 *datad,
4053 l_uint32 *sptr, *dptr;
4054 l_int32 wpls2, wpls3, wpls4;
4055 l_int32 wpls5, wpls6, wpls7, wpls8;
4056 l_int32 wpls9, wpls10, wpls11, wpls12;
4057 l_int32 wpls13, wpls14, wpls15;
4073 pwpls = (l_uint32)(w + 31) / 32;
4075 for (i = 0; i < h; i++) {
4076 sptr = datas + i * wpls;
4077 dptr = datad + i * wpld;
4078 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
4079 *dptr = (*(sptr - wpls15)) &
4080 (*(sptr - wpls14)) &
4081 (*(sptr - wpls13)) &
4082 (*(sptr - wpls12)) &
4083 (*(sptr - wpls11)) &
4084 (*(sptr - wpls10)) &
4104 (*(sptr + wpls10)) &
4105 (*(sptr + wpls11)) &
4106 (*(sptr + wpls12)) &
4107 (*(sptr + wpls13)) &
4114 fdilate_1_43(l_uint32 *datad,
4123 l_uint32 *sptr, *dptr;
4124 l_int32 wpls2, wpls3, wpls4;
4125 l_int32 wpls5, wpls6, wpls7, wpls8;
4126 l_int32 wpls9, wpls10, wpls11, wpls12;
4127 l_int32 wpls13, wpls14, wpls15;
4143 pwpls = (l_uint32)(w + 31) / 32;
4145 for (i = 0; i < h; i++) {
4146 sptr = datas + i * wpls;
4147 dptr = datad + i * wpld;
4148 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
4149 *dptr = (*(sptr + wpls15)) |
4150 (*(sptr + wpls14)) |
4151 (*(sptr + wpls13)) |
4152 (*(sptr + wpls12)) |
4153 (*(sptr + wpls11)) |
4154 (*(sptr + wpls10)) |
4174 (*(sptr - wpls10)) |
4175 (*(sptr - wpls11)) |
4176 (*(sptr - wpls12)) |
4177 (*(sptr - wpls13)) |
4178 (*(sptr - wpls14)) |
4185 ferode_1_43(l_uint32 *datad,
4194 l_uint32 *sptr, *dptr;
4195 l_int32 wpls2, wpls3, wpls4;
4196 l_int32 wpls5, wpls6, wpls7, wpls8;
4197 l_int32 wpls9, wpls10, wpls11, wpls12;
4198 l_int32 wpls13, wpls14, wpls15;
4214 pwpls = (l_uint32)(w + 31) / 32;
4216 for (i = 0; i < h; i++) {
4217 sptr = datas + i * wpls;
4218 dptr = datad + i * wpld;
4219 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
4220 *dptr = (*(sptr - wpls15)) &
4221 (*(sptr - wpls14)) &
4222 (*(sptr - wpls13)) &
4223 (*(sptr - wpls12)) &
4224 (*(sptr - wpls11)) &
4225 (*(sptr - wpls10)) &
4245 (*(sptr + wpls10)) &
4246 (*(sptr + wpls11)) &
4247 (*(sptr + wpls12)) &
4248 (*(sptr + wpls13)) &
4249 (*(sptr + wpls14)) &
4256 fdilate_1_44(l_uint32 *datad,
4265 l_uint32 *sptr, *dptr;
4266 l_int32 wpls2, wpls3, wpls4;
4267 l_int32 wpls5, wpls6, wpls7, wpls8;
4268 l_int32 wpls9, wpls10, wpls11, wpls12;
4269 l_int32 wpls13, wpls14, wpls15, wpls16;
4288 pwpls = (l_uint32)(w + 31) / 32;
4290 for (i = 0; i < h; i++) {
4291 sptr = datas + i * wpls;
4292 dptr = datad + i * wpld;
4293 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
4294 *dptr = (*(sptr + wpls17)) |
4295 (*(sptr + wpls16)) |
4296 (*(sptr + wpls15)) |
4297 (*(sptr + wpls14)) |
4298 (*(sptr + wpls13)) |
4299 (*(sptr + wpls12)) |
4300 (*(sptr + wpls11)) |
4301 (*(sptr + wpls10)) |
4321 (*(sptr - wpls10)) |
4322 (*(sptr - wpls11)) |
4323 (*(sptr - wpls12)) |
4324 (*(sptr - wpls13)) |
4325 (*(sptr - wpls14)) |
4326 (*(sptr - wpls15)) |
4327 (*(sptr - wpls16)) |
4334 ferode_1_44(l_uint32 *datad,
4343 l_uint32 *sptr, *dptr;
4344 l_int32 wpls2, wpls3, wpls4;
4345 l_int32 wpls5, wpls6, wpls7, wpls8;
4346 l_int32 wpls9, wpls10, wpls11, wpls12;
4347 l_int32 wpls13, wpls14, wpls15, wpls16;
4366 pwpls = (l_uint32)(w + 31) / 32;
4368 for (i = 0; i < h; i++) {
4369 sptr = datas + i * wpls;
4370 dptr = datad + i * wpld;
4371 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
4372 *dptr = (*(sptr - wpls17)) &
4373 (*(sptr - wpls16)) &
4374 (*(sptr - wpls15)) &
4375 (*(sptr - wpls14)) &
4376 (*(sptr - wpls13)) &
4377 (*(sptr - wpls12)) &
4378 (*(sptr - wpls11)) &
4379 (*(sptr - wpls10)) &
4399 (*(sptr + wpls10)) &
4400 (*(sptr + wpls11)) &
4401 (*(sptr + wpls12)) &
4402 (*(sptr + wpls13)) &
4403 (*(sptr + wpls14)) &
4404 (*(sptr + wpls15)) &
4405 (*(sptr + wpls16)) &
4412 fdilate_1_45(l_uint32 *datad,
4421 l_uint32 *sptr, *dptr;
4422 l_int32 wpls2, wpls3, wpls4;
4423 l_int32 wpls5, wpls6, wpls7, wpls8;
4424 l_int32 wpls9, wpls10, wpls11, wpls12;
4425 l_int32 wpls13, wpls14, wpls15, wpls16;
4426 l_int32 wpls17, wpls18, wpls19, wpls20;
4447 pwpls = (l_uint32)(w + 31) / 32;
4449 for (i = 0; i < h; i++) {
4450 sptr = datas + i * wpls;
4451 dptr = datad + i * wpld;
4452 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
4453 *dptr = (*(sptr + wpls20)) |
4454 (*(sptr + wpls19)) |
4455 (*(sptr + wpls18)) |
4456 (*(sptr + wpls17)) |
4457 (*(sptr + wpls16)) |
4458 (*(sptr + wpls15)) |
4459 (*(sptr + wpls14)) |
4460 (*(sptr + wpls13)) |
4461 (*(sptr + wpls12)) |
4462 (*(sptr + wpls11)) |
4463 (*(sptr + wpls10)) |
4483 (*(sptr - wpls10)) |
4484 (*(sptr - wpls11)) |
4485 (*(sptr - wpls12)) |
4486 (*(sptr - wpls13)) |
4487 (*(sptr - wpls14)) |
4488 (*(sptr - wpls15)) |
4489 (*(sptr - wpls16)) |
4490 (*(sptr - wpls17)) |
4491 (*(sptr - wpls18)) |
4498 ferode_1_45(l_uint32 *datad,
4507 l_uint32 *sptr, *dptr;
4508 l_int32 wpls2, wpls3, wpls4;
4509 l_int32 wpls5, wpls6, wpls7, wpls8;
4510 l_int32 wpls9, wpls10, wpls11, wpls12;
4511 l_int32 wpls13, wpls14, wpls15, wpls16;
4512 l_int32 wpls17, wpls18, wpls19, wpls20;
4533 pwpls = (l_uint32)(w + 31) / 32;
4535 for (i = 0; i < h; i++) {
4536 sptr = datas + i * wpls;
4537 dptr = datad + i * wpld;
4538 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
4539 *dptr = (*(sptr - wpls20)) &
4540 (*(sptr - wpls19)) &
4541 (*(sptr - wpls18)) &
4542 (*(sptr - wpls17)) &
4543 (*(sptr - wpls16)) &
4544 (*(sptr - wpls15)) &
4545 (*(sptr - wpls14)) &
4546 (*(sptr - wpls13)) &
4547 (*(sptr - wpls12)) &
4548 (*(sptr - wpls11)) &
4549 (*(sptr - wpls10)) &
4569 (*(sptr + wpls10)) &
4570 (*(sptr + wpls11)) &
4571 (*(sptr + wpls12)) &
4572 (*(sptr + wpls13)) &
4573 (*(sptr + wpls14)) &
4574 (*(sptr + wpls15)) &
4575 (*(sptr + wpls16)) &
4576 (*(sptr + wpls17)) &
4577 (*(sptr + wpls18)) &
4584 fdilate_1_46(l_uint32 *datad,
4593 l_uint32 *sptr, *dptr;
4594 l_int32 wpls2, wpls3, wpls4;
4595 l_int32 wpls5, wpls6, wpls7, wpls8;
4596 l_int32 wpls9, wpls10, wpls11, wpls12;
4597 l_int32 wpls13, wpls14, wpls15, wpls16;
4598 l_int32 wpls17, wpls18, wpls19, wpls20;
4619 pwpls = (l_uint32)(w + 31) / 32;
4621 for (i = 0; i < h; i++) {
4622 sptr = datas + i * wpls;
4623 dptr = datad + i * wpld;
4624 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
4625 *dptr = (*(sptr + wpls20)) |
4626 (*(sptr + wpls19)) |
4627 (*(sptr + wpls18)) |
4628 (*(sptr + wpls17)) |
4629 (*(sptr + wpls16)) |
4630 (*(sptr + wpls15)) |
4631 (*(sptr + wpls14)) |
4632 (*(sptr + wpls13)) |
4633 (*(sptr + wpls12)) |
4634 (*(sptr + wpls11)) |
4635 (*(sptr + wpls10)) |
4655 (*(sptr - wpls10)) |
4656 (*(sptr - wpls11)) |
4657 (*(sptr - wpls12)) |
4658 (*(sptr - wpls13)) |
4659 (*(sptr - wpls14)) |
4660 (*(sptr - wpls15)) |
4661 (*(sptr - wpls16)) |
4662 (*(sptr - wpls17)) |
4663 (*(sptr - wpls18)) |
4664 (*(sptr - wpls19)) |
4671 ferode_1_46(l_uint32 *datad,
4680 l_uint32 *sptr, *dptr;
4681 l_int32 wpls2, wpls3, wpls4;
4682 l_int32 wpls5, wpls6, wpls7, wpls8;
4683 l_int32 wpls9, wpls10, wpls11, wpls12;
4684 l_int32 wpls13, wpls14, wpls15, wpls16;
4685 l_int32 wpls17, wpls18, wpls19, wpls20;
4706 pwpls = (l_uint32)(w + 31) / 32;
4708 for (i = 0; i < h; i++) {
4709 sptr = datas + i * wpls;
4710 dptr = datad + i * wpld;
4711 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
4712 *dptr = (*(sptr - wpls20)) &
4713 (*(sptr - wpls19)) &
4714 (*(sptr - wpls18)) &
4715 (*(sptr - wpls17)) &
4716 (*(sptr - wpls16)) &
4717 (*(sptr - wpls15)) &
4718 (*(sptr - wpls14)) &
4719 (*(sptr - wpls13)) &
4720 (*(sptr - wpls12)) &
4721 (*(sptr - wpls11)) &
4722 (*(sptr - wpls10)) &
4742 (*(sptr + wpls10)) &
4743 (*(sptr + wpls11)) &
4744 (*(sptr + wpls12)) &
4745 (*(sptr + wpls13)) &
4746 (*(sptr + wpls14)) &
4747 (*(sptr + wpls15)) &
4748 (*(sptr + wpls16)) &
4749 (*(sptr + wpls17)) &
4750 (*(sptr + wpls18)) &
4751 (*(sptr + wpls19)) &
4758 fdilate_1_47(l_uint32 *datad,
4767 l_uint32 *sptr, *dptr;
4768 l_int32 wpls2, wpls3, wpls4;
4769 l_int32 wpls5, wpls6, wpls7, wpls8;
4770 l_int32 wpls9, wpls10, wpls11, wpls12;
4771 l_int32 wpls13, wpls14, wpls15, wpls16;
4772 l_int32 wpls17, wpls18, wpls19, wpls20;
4773 l_int32 wpls21, wpls22;
4796 pwpls = (l_uint32)(w + 31) / 32;
4798 for (i = 0; i < h; i++) {
4799 sptr = datas + i * wpls;
4800 dptr = datad + i * wpld;
4801 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
4802 *dptr = (*(sptr + wpls22)) |
4803 (*(sptr + wpls21)) |
4804 (*(sptr + wpls20)) |
4805 (*(sptr + wpls19)) |
4806 (*(sptr + wpls18)) |
4807 (*(sptr + wpls17)) |
4808 (*(sptr + wpls16)) |
4809 (*(sptr + wpls15)) |
4810 (*(sptr + wpls14)) |
4811 (*(sptr + wpls13)) |
4812 (*(sptr + wpls12)) |
4813 (*(sptr + wpls11)) |
4814 (*(sptr + wpls10)) |
4834 (*(sptr - wpls10)) |
4835 (*(sptr - wpls11)) |
4836 (*(sptr - wpls12)) |
4837 (*(sptr - wpls13)) |
4838 (*(sptr - wpls14)) |
4839 (*(sptr - wpls15)) |
4840 (*(sptr - wpls16)) |
4841 (*(sptr - wpls17)) |
4842 (*(sptr - wpls18)) |
4843 (*(sptr - wpls19)) |
4844 (*(sptr - wpls20)) |
4845 (*(sptr - wpls21)) |
4852 ferode_1_47(l_uint32 *datad,
4861 l_uint32 *sptr, *dptr;
4862 l_int32 wpls2, wpls3, wpls4;
4863 l_int32 wpls5, wpls6, wpls7, wpls8;
4864 l_int32 wpls9, wpls10, wpls11, wpls12;
4865 l_int32 wpls13, wpls14, wpls15, wpls16;
4866 l_int32 wpls17, wpls18, wpls19, wpls20;
4867 l_int32 wpls21, wpls22;
4890 pwpls = (l_uint32)(w + 31) / 32;
4892 for (i = 0; i < h; i++) {
4893 sptr = datas + i * wpls;
4894 dptr = datad + i * wpld;
4895 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
4896 *dptr = (*(sptr - wpls22)) &
4897 (*(sptr - wpls21)) &
4898 (*(sptr - wpls20)) &
4899 (*(sptr - wpls19)) &
4900 (*(sptr - wpls18)) &
4901 (*(sptr - wpls17)) &
4902 (*(sptr - wpls16)) &
4903 (*(sptr - wpls15)) &
4904 (*(sptr - wpls14)) &
4905 (*(sptr - wpls13)) &
4906 (*(sptr - wpls12)) &
4907 (*(sptr - wpls11)) &
4908 (*(sptr - wpls10)) &
4928 (*(sptr + wpls10)) &
4929 (*(sptr + wpls11)) &
4930 (*(sptr + wpls12)) &
4931 (*(sptr + wpls13)) &
4932 (*(sptr + wpls14)) &
4933 (*(sptr + wpls15)) &
4934 (*(sptr + wpls16)) &
4935 (*(sptr + wpls17)) &
4936 (*(sptr + wpls18)) &
4937 (*(sptr + wpls19)) &
4938 (*(sptr + wpls20)) &
4939 (*(sptr + wpls21)) &
4946 fdilate_1_48(l_uint32 *datad,
4955 l_uint32 *sptr, *dptr;
4956 l_int32 wpls2, wpls3, wpls4;
4957 l_int32 wpls5, wpls6, wpls7, wpls8;
4958 l_int32 wpls9, wpls10, wpls11, wpls12;
4959 l_int32 wpls13, wpls14, wpls15, wpls16;
4960 l_int32 wpls17, wpls18, wpls19, wpls20;
4961 l_int32 wpls21, wpls22, wpls23, wpls24;
4988 pwpls = (l_uint32)(w + 31) / 32;
4990 for (i = 0; i < h; i++) {
4991 sptr = datas + i * wpls;
4992 dptr = datad + i * wpld;
4993 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
4994 *dptr = (*(sptr + wpls25)) |
4995 (*(sptr + wpls24)) |
4996 (*(sptr + wpls23)) |
4997 (*(sptr + wpls22)) |
4998 (*(sptr + wpls21)) |
4999 (*(sptr + wpls20)) |
5000 (*(sptr + wpls19)) |
5001 (*(sptr + wpls18)) |
5002 (*(sptr + wpls17)) |
5003 (*(sptr + wpls16)) |
5004 (*(sptr + wpls15)) |
5005 (*(sptr + wpls14)) |
5006 (*(sptr + wpls13)) |
5007 (*(sptr + wpls12)) |
5008 (*(sptr + wpls11)) |
5009 (*(sptr + wpls10)) |
5029 (*(sptr - wpls10)) |
5030 (*(sptr - wpls11)) |
5031 (*(sptr - wpls12)) |
5032 (*(sptr - wpls13)) |
5033 (*(sptr - wpls14)) |
5034 (*(sptr - wpls15)) |
5035 (*(sptr - wpls16)) |
5036 (*(sptr - wpls17)) |
5037 (*(sptr - wpls18)) |
5038 (*(sptr - wpls19)) |
5039 (*(sptr - wpls20)) |
5040 (*(sptr - wpls21)) |
5041 (*(sptr - wpls22)) |
5042 (*(sptr - wpls23)) |
5049 ferode_1_48(l_uint32 *datad,
5058 l_uint32 *sptr, *dptr;
5059 l_int32 wpls2, wpls3, wpls4;
5060 l_int32 wpls5, wpls6, wpls7, wpls8;
5061 l_int32 wpls9, wpls10, wpls11, wpls12;
5062 l_int32 wpls13, wpls14, wpls15, wpls16;
5063 l_int32 wpls17, wpls18, wpls19, wpls20;
5064 l_int32 wpls21, wpls22, wpls23, wpls24;
5091 pwpls = (l_uint32)(w + 31) / 32;
5093 for (i = 0; i < h; i++) {
5094 sptr = datas + i * wpls;
5095 dptr = datad + i * wpld;
5096 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5097 *dptr = (*(sptr - wpls25)) &
5098 (*(sptr - wpls24)) &
5099 (*(sptr - wpls23)) &
5100 (*(sptr - wpls22)) &
5101 (*(sptr - wpls21)) &
5102 (*(sptr - wpls20)) &
5103 (*(sptr - wpls19)) &
5104 (*(sptr - wpls18)) &
5105 (*(sptr - wpls17)) &
5106 (*(sptr - wpls16)) &
5107 (*(sptr - wpls15)) &
5108 (*(sptr - wpls14)) &
5109 (*(sptr - wpls13)) &
5110 (*(sptr - wpls12)) &
5111 (*(sptr - wpls11)) &
5112 (*(sptr - wpls10)) &
5132 (*(sptr + wpls10)) &
5133 (*(sptr + wpls11)) &
5134 (*(sptr + wpls12)) &
5135 (*(sptr + wpls13)) &
5136 (*(sptr + wpls14)) &
5137 (*(sptr + wpls15)) &
5138 (*(sptr + wpls16)) &
5139 (*(sptr + wpls17)) &
5140 (*(sptr + wpls18)) &
5141 (*(sptr + wpls19)) &
5142 (*(sptr + wpls20)) &
5143 (*(sptr + wpls21)) &
5144 (*(sptr + wpls22)) &
5145 (*(sptr + wpls23)) &
5152 fdilate_1_49(l_uint32 *datad,
5161 l_uint32 *sptr, *dptr;
5162 l_int32 wpls2, wpls3, wpls4;
5163 l_int32 wpls5, wpls6, wpls7, wpls8;
5164 l_int32 wpls9, wpls10, wpls11, wpls12;
5165 l_int32 wpls13, wpls14, wpls15, wpls16;
5166 l_int32 wpls17, wpls18, wpls19, wpls20;
5167 l_int32 wpls21, wpls22, wpls23, wpls24;
5194 pwpls = (l_uint32)(w + 31) / 32;
5196 for (i = 0; i < h; i++) {
5197 sptr = datas + i * wpls;
5198 dptr = datad + i * wpld;
5199 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5200 *dptr = (*(sptr + wpls25)) |
5201 (*(sptr + wpls24)) |
5202 (*(sptr + wpls23)) |
5203 (*(sptr + wpls22)) |
5204 (*(sptr + wpls21)) |
5205 (*(sptr + wpls20)) |
5206 (*(sptr + wpls19)) |
5207 (*(sptr + wpls18)) |
5208 (*(sptr + wpls17)) |
5209 (*(sptr + wpls16)) |
5210 (*(sptr + wpls15)) |
5211 (*(sptr + wpls14)) |
5212 (*(sptr + wpls13)) |
5213 (*(sptr + wpls12)) |
5214 (*(sptr + wpls11)) |
5215 (*(sptr + wpls10)) |
5235 (*(sptr - wpls10)) |
5236 (*(sptr - wpls11)) |
5237 (*(sptr - wpls12)) |
5238 (*(sptr - wpls13)) |
5239 (*(sptr - wpls14)) |
5240 (*(sptr - wpls15)) |
5241 (*(sptr - wpls16)) |
5242 (*(sptr - wpls17)) |
5243 (*(sptr - wpls18)) |
5244 (*(sptr - wpls19)) |
5245 (*(sptr - wpls20)) |
5246 (*(sptr - wpls21)) |
5247 (*(sptr - wpls22)) |
5248 (*(sptr - wpls23)) |
5249 (*(sptr - wpls24)) |
5256 ferode_1_49(l_uint32 *datad,
5265 l_uint32 *sptr, *dptr;
5266 l_int32 wpls2, wpls3, wpls4;
5267 l_int32 wpls5, wpls6, wpls7, wpls8;
5268 l_int32 wpls9, wpls10, wpls11, wpls12;
5269 l_int32 wpls13, wpls14, wpls15, wpls16;
5270 l_int32 wpls17, wpls18, wpls19, wpls20;
5271 l_int32 wpls21, wpls22, wpls23, wpls24;
5298 pwpls = (l_uint32)(w + 31) / 32;
5300 for (i = 0; i < h; i++) {
5301 sptr = datas + i * wpls;
5302 dptr = datad + i * wpld;
5303 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5304 *dptr = (*(sptr - wpls25)) &
5305 (*(sptr - wpls24)) &
5306 (*(sptr - wpls23)) &
5307 (*(sptr - wpls22)) &
5308 (*(sptr - wpls21)) &
5309 (*(sptr - wpls20)) &
5310 (*(sptr - wpls19)) &
5311 (*(sptr - wpls18)) &
5312 (*(sptr - wpls17)) &
5313 (*(sptr - wpls16)) &
5314 (*(sptr - wpls15)) &
5315 (*(sptr - wpls14)) &
5316 (*(sptr - wpls13)) &
5317 (*(sptr - wpls12)) &
5318 (*(sptr - wpls11)) &
5319 (*(sptr - wpls10)) &
5339 (*(sptr + wpls10)) &
5340 (*(sptr + wpls11)) &
5341 (*(sptr + wpls12)) &
5342 (*(sptr + wpls13)) &
5343 (*(sptr + wpls14)) &
5344 (*(sptr + wpls15)) &
5345 (*(sptr + wpls16)) &
5346 (*(sptr + wpls17)) &
5347 (*(sptr + wpls18)) &
5348 (*(sptr + wpls19)) &
5349 (*(sptr + wpls20)) &
5350 (*(sptr + wpls21)) &
5351 (*(sptr + wpls22)) &
5352 (*(sptr + wpls23)) &
5353 (*(sptr + wpls24)) &
5360 fdilate_1_50(l_uint32 *datad,
5369 l_uint32 *sptr, *dptr;
5371 pwpls = (l_uint32)(w + 31) / 32;
5373 for (i = 0; i < h; i++) {
5374 sptr = datas + i * wpls;
5375 dptr = datad + i * wpld;
5376 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5377 *dptr = ((*(sptr + wpls) << 1) | (*(sptr + wpls + 1) >> 31)) |
5379 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
5386 ferode_1_50(l_uint32 *datad,
5395 l_uint32 *sptr, *dptr;
5397 pwpls = (l_uint32)(w + 31) / 32;
5399 for (i = 0; i < h; i++) {
5400 sptr = datas + i * wpls;
5401 dptr = datad + i * wpld;
5402 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5403 *dptr = ((*(sptr - wpls) >> 1) | (*(sptr - wpls - 1) << 31)) &
5405 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
5412 fdilate_1_51(l_uint32 *datad,
5421 l_uint32 *sptr, *dptr;
5423 pwpls = (l_uint32)(w + 31) / 32;
5425 for (i = 0; i < h; i++) {
5426 sptr = datas + i * wpls;
5427 dptr = datad + i * wpld;
5428 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5429 *dptr = ((*(sptr + wpls) << 1) | (*(sptr + wpls + 1) >> 31)) |
5431 ((*(sptr + wpls) >> 1) | (*(sptr + wpls - 1) << 31)) |
5432 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
5434 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
5435 ((*(sptr - wpls) << 1) | (*(sptr - wpls + 1) >> 31)) |
5437 ((*(sptr - wpls) >> 1) | (*(sptr - wpls - 1) << 31));
5443 ferode_1_51(l_uint32 *datad,
5452 l_uint32 *sptr, *dptr;
5454 pwpls = (l_uint32)(w + 31) / 32;
5456 for (i = 0; i < h; i++) {
5457 sptr = datas + i * wpls;
5458 dptr = datad + i * wpld;
5459 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5460 *dptr = ((*(sptr - wpls) >> 1) | (*(sptr - wpls - 1) << 31)) &
5462 ((*(sptr - wpls) << 1) | (*(sptr - wpls + 1) >> 31)) &
5463 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
5465 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
5466 ((*(sptr + wpls) >> 1) | (*(sptr + wpls - 1) << 31)) &
5468 ((*(sptr + wpls) << 1) | (*(sptr + wpls + 1) >> 31));
5474 fdilate_1_52(l_uint32 *datad,
5483 l_uint32 *sptr, *dptr;
5487 pwpls = (l_uint32)(w + 31) / 32;
5489 for (i = 0; i < h; i++) {
5490 sptr = datas + i * wpls;
5491 dptr = datad + i * wpld;
5492 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5493 *dptr = ((*(sptr + wpls2) << 2) | (*(sptr + wpls2 + 1) >> 30)) |
5494 ((*(sptr + wpls2) << 1) | (*(sptr + wpls2 + 1) >> 31)) |
5496 ((*(sptr + wpls2) >> 1) | (*(sptr + wpls2 - 1) << 31)) |
5497 ((*(sptr + wpls) << 2) | (*(sptr + wpls + 1) >> 30)) |
5498 ((*(sptr + wpls) << 1) | (*(sptr + wpls + 1) >> 31)) |
5500 ((*(sptr + wpls) >> 1) | (*(sptr + wpls - 1) << 31)) |
5501 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
5502 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
5504 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
5505 ((*(sptr - wpls) << 2) | (*(sptr - wpls + 1) >> 30)) |
5506 ((*(sptr - wpls) << 1) | (*(sptr - wpls + 1) >> 31)) |
5508 ((*(sptr - wpls) >> 1) | (*(sptr - wpls - 1) << 31));
5514 ferode_1_52(l_uint32 *datad,
5523 l_uint32 *sptr, *dptr;
5527 pwpls = (l_uint32)(w + 31) / 32;
5529 for (i = 0; i < h; i++) {
5530 sptr = datas + i * wpls;
5531 dptr = datad + i * wpld;
5532 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5533 *dptr = ((*(sptr - wpls2) >> 2) | (*(sptr - wpls2 - 1) << 30)) &
5534 ((*(sptr - wpls2) >> 1) | (*(sptr - wpls2 - 1) << 31)) &
5536 ((*(sptr - wpls2) << 1) | (*(sptr - wpls2 + 1) >> 31)) &
5537 ((*(sptr - wpls) >> 2) | (*(sptr - wpls - 1) << 30)) &
5538 ((*(sptr - wpls) >> 1) | (*(sptr - wpls - 1) << 31)) &
5540 ((*(sptr - wpls) << 1) | (*(sptr - wpls + 1) >> 31)) &
5541 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
5542 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
5544 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
5545 ((*(sptr + wpls) >> 2) | (*(sptr + wpls - 1) << 30)) &
5546 ((*(sptr + wpls) >> 1) | (*(sptr + wpls - 1) << 31)) &
5548 ((*(sptr + wpls) << 1) | (*(sptr + wpls + 1) >> 31));
5554 fdilate_1_53(l_uint32 *datad,
5563 l_uint32 *sptr, *dptr;
5567 pwpls = (l_uint32)(w + 31) / 32;
5569 for (i = 0; i < h; i++) {
5570 sptr = datas + i * wpls;
5571 dptr = datad + i * wpld;
5572 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5573 *dptr = ((*(sptr + wpls2) << 2) | (*(sptr + wpls2 + 1) >> 30)) |
5574 ((*(sptr + wpls2) << 1) | (*(sptr + wpls2 + 1) >> 31)) |
5576 ((*(sptr + wpls2) >> 1) | (*(sptr + wpls2 - 1) << 31)) |
5577 ((*(sptr + wpls2) >> 2) | (*(sptr + wpls2 - 1) << 30)) |
5578 ((*(sptr + wpls) << 2) | (*(sptr + wpls + 1) >> 30)) |
5579 ((*(sptr + wpls) << 1) | (*(sptr + wpls + 1) >> 31)) |
5581 ((*(sptr + wpls) >> 1) | (*(sptr + wpls - 1) << 31)) |
5582 ((*(sptr + wpls) >> 2) | (*(sptr + wpls - 1) << 30)) |
5583 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) |
5584 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) |
5586 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
5587 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) |
5588 ((*(sptr - wpls) << 2) | (*(sptr - wpls + 1) >> 30)) |
5589 ((*(sptr - wpls) << 1) | (*(sptr - wpls + 1) >> 31)) |
5591 ((*(sptr - wpls) >> 1) | (*(sptr - wpls - 1) << 31)) |
5592 ((*(sptr - wpls) >> 2) | (*(sptr - wpls - 1) << 30)) |
5593 ((*(sptr - wpls2) << 2) | (*(sptr - wpls2 + 1) >> 30)) |
5594 ((*(sptr - wpls2) << 1) | (*(sptr - wpls2 + 1) >> 31)) |
5596 ((*(sptr - wpls2) >> 1) | (*(sptr - wpls2 - 1) << 31)) |
5597 ((*(sptr - wpls2) >> 2) | (*(sptr - wpls2 - 1) << 30));
5603 ferode_1_53(l_uint32 *datad,
5612 l_uint32 *sptr, *dptr;
5616 pwpls = (l_uint32)(w + 31) / 32;
5618 for (i = 0; i < h; i++) {
5619 sptr = datas + i * wpls;
5620 dptr = datad + i * wpld;
5621 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5622 *dptr = ((*(sptr - wpls2) >> 2) | (*(sptr - wpls2 - 1) << 30)) &
5623 ((*(sptr - wpls2) >> 1) | (*(sptr - wpls2 - 1) << 31)) &
5625 ((*(sptr - wpls2) << 1) | (*(sptr - wpls2 + 1) >> 31)) &
5626 ((*(sptr - wpls2) << 2) | (*(sptr - wpls2 + 1) >> 30)) &
5627 ((*(sptr - wpls) >> 2) | (*(sptr - wpls - 1) << 30)) &
5628 ((*(sptr - wpls) >> 1) | (*(sptr - wpls - 1) << 31)) &
5630 ((*(sptr - wpls) << 1) | (*(sptr - wpls + 1) >> 31)) &
5631 ((*(sptr - wpls) << 2) | (*(sptr - wpls + 1) >> 30)) &
5632 ((*(sptr) >> 2) | (*(sptr - 1) << 30)) &
5633 ((*(sptr) >> 1) | (*(sptr - 1) << 31)) &
5635 ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
5636 ((*(sptr) << 2) | (*(sptr + 1) >> 30)) &
5637 ((*(sptr + wpls) >> 2) | (*(sptr + wpls - 1) << 30)) &
5638 ((*(sptr + wpls) >> 1) | (*(sptr + wpls - 1) << 31)) &
5640 ((*(sptr + wpls) << 1) | (*(sptr + wpls + 1) >> 31)) &
5641 ((*(sptr + wpls) << 2) | (*(sptr + wpls + 1) >> 30)) &
5642 ((*(sptr + wpls2) >> 2) | (*(sptr + wpls2 - 1) << 30)) &
5643 ((*(sptr + wpls2) >> 1) | (*(sptr + wpls2 - 1) << 31)) &
5645 ((*(sptr + wpls2) << 1) | (*(sptr + wpls2 + 1) >> 31)) &
5646 ((*(sptr + wpls2) << 2) | (*(sptr + wpls2 + 1) >> 30));
5652 fdilate_1_54(l_uint32 *datad,
5661 l_uint32 *sptr, *dptr;
5663 pwpls = (l_uint32)(w + 31) / 32;
5665 for (i = 0; i < h; i++) {
5666 sptr = datas + i * wpls;
5667 dptr = datad + i * wpld;
5668 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5669 *dptr = ((*(sptr) >> 1) | (*(sptr - 1) << 31)) |
5676 ferode_1_54(l_uint32 *datad,
5685 l_uint32 *sptr, *dptr;
5687 pwpls = (l_uint32)(w + 31) / 32;
5689 for (i = 0; i < h; i++) {
5690 sptr = datas + i * wpls;
5691 dptr = datad + i * wpld;
5692 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5693 *dptr = ((*(sptr) << 1) | (*(sptr + 1) >> 31)) &
5700 fdilate_1_55(l_uint32 *datad,
5709 l_uint32 *sptr, *dptr;
5711 pwpls = (l_uint32)(w + 31) / 32;
5713 for (i = 0; i < h; i++) {
5714 sptr = datas + i * wpls;
5715 dptr = datad + i * wpld;
5716 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5718 ((*(sptr - wpls) >> 1) | (*(sptr - wpls - 1) << 31));
5724 ferode_1_55(l_uint32 *datad,
5733 l_uint32 *sptr, *dptr;
5735 pwpls = (l_uint32)(w + 31) / 32;
5737 for (i = 0; i < h; i++) {
5738 sptr = datas + i * wpls;
5739 dptr = datad + i * wpld;
5740 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5742 ((*(sptr + wpls) << 1) | (*(sptr + wpls + 1) >> 31));
5748 fdilate_1_56(l_uint32 *datad,
5757 l_uint32 *sptr, *dptr;
5761 pwpls = (l_uint32)(w + 31) / 32;
5763 for (i = 0; i < h; i++) {
5764 sptr = datas + i * wpls;
5765 dptr = datad + i * wpld;
5766 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5767 *dptr = ((*(sptr + wpls2) >> 2) | (*(sptr + wpls2 - 1) << 30)) |
5768 ((*(sptr + wpls) >> 1) | (*(sptr + wpls - 1) << 31)) |
5770 ((*(sptr - wpls) << 1) | (*(sptr - wpls + 1) >> 31)) |
5771 ((*(sptr - wpls2) << 2) | (*(sptr - wpls2 + 1) >> 30));
5777 ferode_1_56(l_uint32 *datad,
5786 l_uint32 *sptr, *dptr;
5790 pwpls = (l_uint32)(w + 31) / 32;
5792 for (i = 0; i < h; i++) {
5793 sptr = datas + i * wpls;
5794 dptr = datad + i * wpld;
5795 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5796 *dptr = ((*(sptr - wpls2) << 2) | (*(sptr - wpls2 + 1) >> 30)) &
5797 ((*(sptr - wpls) << 1) | (*(sptr - wpls + 1) >> 31)) &
5799 ((*(sptr + wpls) >> 1) | (*(sptr + wpls - 1) << 31)) &
5800 ((*(sptr + wpls2) >> 2) | (*(sptr + wpls2 - 1) << 30));
5806 fdilate_1_57(l_uint32 *datad,
5815 l_uint32 *sptr, *dptr;
5819 pwpls = (l_uint32)(w + 31) / 32;
5821 for (i = 0; i < h; i++) {
5822 sptr = datas + i * wpls;
5823 dptr = datad + i * wpld;
5824 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5825 *dptr = ((*(sptr + wpls2) << 2) | (*(sptr + wpls2 + 1) >> 30)) |
5826 ((*(sptr + wpls) << 1) | (*(sptr + wpls + 1) >> 31)) |
5828 ((*(sptr - wpls) >> 1) | (*(sptr - wpls - 1) << 31)) |
5829 ((*(sptr - wpls2) >> 2) | (*(sptr - wpls2 - 1) << 30));
5835 ferode_1_57(l_uint32 *datad,
5844 l_uint32 *sptr, *dptr;
5848 pwpls = (l_uint32)(w + 31) / 32;
5850 for (i = 0; i < h; i++) {
5851 sptr = datas + i * wpls;
5852 dptr = datad + i * wpld;
5853 for (j = 0; j < pwpls; j++, sptr++, dptr++) {
5854 *dptr = ((*(sptr - wpls2) >> 2) | (*(sptr - wpls2 - 1) << 30)) &
5855 ((*(sptr - wpls) >> 1) | (*(sptr - wpls - 1) << 31)) &
5857 ((*(sptr + wpls) << 1) | (*(sptr + wpls + 1) >> 31)) &
5858 ((*(sptr + wpls2) << 2) | (*(sptr + wpls2 + 1) >> 30));