/* * programme de test pour * les fonctions de base. */ #include #include #include #include #include #include "../floatimg.h" int verbosity; /* ---------------------------------------------------------------- */ int petit_dessin(FloatImg *img) { int x, y; float r, g, b; for (y=0; yheight; y++) { r = (float)y / (float)img->height; for (x=0; xwidth; x++) { g = (float)x / (float)img->width; b = 0.0;; fimg_plot_rgb(img, x, y, r, g, b); } } return -1; } /* ---------------------------------------------------------------- */ int essai_2gray(FloatImg *picz, char *outname) { int foo; FloatImg gray; fprintf(stderr, ">>> %s ( %p '%s' )\n", __func__, picz, outname); foo = fimg_create(&gray, picz->width, picz->height, FIMG_TYPE_GRAY); if (foo) { fprintf(stderr, "%s : err %d on fimg create\n", __func__, foo); exit(1); } foo = fimg_mk_gray_from(picz, &gray, 0); if (foo) { fprintf(stderr, "%s : err %d on fimg mk_gray_from\n", __func__, foo); exit(1); } foo = fimg_save_as_pnm(&gray, outname, 0); if (foo) { fprintf(stderr, "%s : err %d on save_as_pnm\n", __func__, foo); exit(1); } fimg_destroy(&gray); return 0; } /* ---------------------------------------------------------------- */ /**** foo = fimg_create(&dessin, W, H, 3); petit_dessin(&dessin); foo = fimg_create(&noise, W, H, 3); fimg_drand48(&noise, 0.1); ****/ /* ---------------------------------------------------------------- */ #define W 320 #define H 240 int main(int argc, char *argv[]) { int foo, idx; float coef; FloatImg dessin, noise, result; char outname[100]; verbosity = 1; fimg_print_version(1); foo = fimg_create_from_png("/home/tth/TMP/floatimg/s1.png", &dessin); if (foo) { fprintf(stderr, "s1 load err %d\n", foo); exit(1); } fimg_describe(&dessin, "s1 dessin"); fimg_to_gray(&dessin); foo = fimg_create_from_png("/home/tth/TMP/floatimg/s2.png", &noise); if (foo) { fprintf(stderr, "s2 load err %d\n", foo); exit(1); } fimg_describe(&noise, "s2 noise"); foo = fimg_create(&result, W, H, 3); #define NBRE 20 for (idx=0; idx