|
|
|
@ -97,9 +97,19 @@ FimgFilter3x3 hipass = { |
|
|
|
|
1.0, 0.0 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
FimgFilter3x3 diagonal = { |
|
|
|
|
{ |
|
|
|
|
2.0, 1.0, 0.0, |
|
|
|
|
1.0, 0.0, -1.0, |
|
|
|
|
0.0, -1.0, -2.0, |
|
|
|
|
}, |
|
|
|
|
1.0, 0.0 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
switch (typef) { |
|
|
|
|
case 0: pfiltre = &lowpass; break; |
|
|
|
|
case 1: pfiltre = &hipass; break; |
|
|
|
|
case 2: pfiltre = &diagonal; break; |
|
|
|
|
default: |
|
|
|
|
fprintf(stderr, "%s: bad filter number %d\n", |
|
|
|
|
__func__, typef); |
|
|
|
@ -114,7 +124,9 @@ if (retval) { |
|
|
|
|
fprintf(stderr, "%s error %d on filter\n", __func__, retval); |
|
|
|
|
exit(1); |
|
|
|
|
} |
|
|
|
|
fimg_killborders(&img); /* XXX WTF OMG */ |
|
|
|
|
/*
|
|
|
|
|
* may be, here, we can check for negative values ? */ |
|
|
|
|
fimg_killborders(&img); |
|
|
|
|
fimg_copy_data(&img, pimg); |
|
|
|
|
fimg_destroy(&img); |
|
|
|
|
|
|
|
|
@ -220,6 +232,9 @@ switch (idFx) { |
|
|
|
|
/* hipass filter */ |
|
|
|
|
retval = insitu_filtre3x3(image, 1); |
|
|
|
|
break; |
|
|
|
|
case CR_diagonal: |
|
|
|
|
retval = insitu_filtre3x3(image, 2); |
|
|
|
|
break; |
|
|
|
|
case CR_octotree: |
|
|
|
|
retval = octotree_classif(image, 0.500, 0); |
|
|
|
|
break; |
|
|
|
|