forked from tTh/FloatImg
work in progress
This commit is contained in:
parent
1364698e63
commit
5aa9d5b88b
|
@ -3,7 +3,7 @@
|
|||
* ugly code from tTh
|
||||
*/
|
||||
|
||||
#define FIMG_VERSION 105
|
||||
#define FIMG_VERSION 106
|
||||
|
||||
/*
|
||||
* in memory descriptor
|
||||
|
@ -126,7 +126,7 @@ int fimg_shift_to_zero(FloatImg *s, FloatImg *d, float coefs[6]);
|
|||
|
||||
|
||||
/* module funcs/geometry.c */
|
||||
int fimg_equalize_compute(FloatImg *src, void *vptr);
|
||||
int fimg_equalize_compute(FloatImg *src, void *vptr, float vmax);
|
||||
|
||||
int fimg_mk_gray_from(FloatImg *src, FloatImg*dst, int k);
|
||||
int fimg_desaturate(FloatImg *src, FloatImg *dst, int k);
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/*
|
||||
* FLOATIMG
|
||||
* egalisation dinamique approximative
|
||||
* egalisation dynamique approximative
|
||||
* #coronamaison Thu 09 Apr 2020 03:37:10 PM CEST
|
||||
*/
|
||||
|
||||
|
@ -12,25 +12,39 @@
|
|||
extern int verbosity;
|
||||
|
||||
/* --------------------------------------------------------------------- */
|
||||
int fimg_equalize_compute(FloatImg *src, void *vptr)
|
||||
int fimg_equalize_compute(FloatImg *src, void *vptr, float vmax)
|
||||
{
|
||||
float minmax[6];
|
||||
int foo;
|
||||
float dr, dg, db;
|
||||
|
||||
#if DEBUG_LEVEL
|
||||
fprintf(stderr, ">>> %s ( %p )\n", __func__, src);
|
||||
#endif
|
||||
|
||||
memset(minmax, 0, 6*sizeof(float));
|
||||
|
||||
foo = fimg_get_minmax_rgb(src, minmax);
|
||||
printf("Rmin %12.4g Rmax %12.4g\n", minmax[0], minmax[1]);
|
||||
printf("Gmin %12.4g Gmax %12.4g\n", minmax[2], minmax[3]);
|
||||
printf("Bmin %12.4g Bmax %12.4g\n", minmax[4], minmax[5]);
|
||||
if (foo) {
|
||||
fprintf(stderr, "err %d get minmax in %s\n", foo, __func__);
|
||||
return foo;
|
||||
}
|
||||
|
||||
dr = minmax[1] - minmax[0];
|
||||
dg = minmax[3] - minmax[2];
|
||||
db = minmax[5] - minmax[4];
|
||||
|
||||
printf("Rmin %12.4g Rmax %12.4g delta %12.4g\n", minmax[0], minmax[1], dr);
|
||||
printf("Gmin %12.4g Gmax %12.4g delta %12.4g\n", minmax[2], minmax[3], dg);
|
||||
printf("Bmin %12.4g Bmax %12.4g delta %12.4g\n", minmax[4], minmax[5], db);
|
||||
|
||||
if ( (minmax[0]<0.0) || (minmax[2]<0.0) || (minmax[4]<0.0) ) {
|
||||
fprintf(stderr, "%s: negative value ?\n", __func__);
|
||||
return -4;
|
||||
}
|
||||
|
||||
// printf("deltas %12.4g %12.4g %12.4g\n", dr, dg, db);
|
||||
|
||||
return 0;
|
||||
}
|
||||
/* --------------------------------------------------------------------- */
|
||||
|
|
Loading…
Reference in New Issue