|
|
|
@ -41,23 +41,28 @@ int fimg_interpolate(FloatImg *s1, FloatImg *s2, FloatImg *d, float coef) |
|
|
|
|
{ |
|
|
|
|
int foo; |
|
|
|
|
|
|
|
|
|
#if DEBUG_LEVEL |
|
|
|
|
fprintf(stderr, ">>> %s ( %p %p %p %f )\n", __func__, |
|
|
|
|
s1, s2, d, coef); |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
foo = fimg_images_compatible(s1, s2); |
|
|
|
|
if (foo) { |
|
|
|
|
fprintf(stderr, "compat -> %d\n", foo); |
|
|
|
|
fprintf(stderr, "compat s1 s2 -> %d\n", foo); |
|
|
|
|
return foo; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
foo = fimg_images_compatible(s1, d); |
|
|
|
|
if (foo) { |
|
|
|
|
fprintf(stderr, "compat -> %d\n", foo); |
|
|
|
|
fprintf(stderr, "compat s1 d -> %d\n", foo); |
|
|
|
|
return foo; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
switch (s1->type) { |
|
|
|
|
case FIMG_TYPE_GRAY: |
|
|
|
|
gray_interpolate(s1, s2, d, coef); break; |
|
|
|
|
gray_interpolate (s1, s2, d, coef); break; |
|
|
|
|
case FIMG_TYPE_RGB: |
|
|
|
|
rgb_interpolate(s1, s2, d, coef); break; |
|
|
|
|
rgb_interpolate (s1, s2, d, coef); break; |
|
|
|
|
default: |
|
|
|
|
fprintf(stderr, "%s, %d is a bad type\n", __func__, s1->type); |
|
|
|
|
return -18; |
|
|
|
|