Browse Source

more cleanup

master
tth 2 years ago
parent
commit
3cf887e103
  1. 26
      funcs/histogram.c
  2. 9
      funcs/t.c

26
funcs/histogram.c

@ -48,37 +48,43 @@ return -66; @@ -48,37 +48,43 @@ return -66;
}
/* --------------------------------------------------------------------- */
#define NSLICES 1000
int fimg_essai_histo(FloatImg *src, char *outpic, int k)
int fimg_essai_histo(FloatImg *src, char *outpic, int nbslices)
{
long histo[NSLICES];
long *histo;
int foo;
FILE *pipe;
fprintf(stderr, ">>> %s ( %p '%s' %d )\n", __func__, src, outpic, k);
fprintf(stderr, ">>> %s ( %p '%s' %d )\n", __func__, src, outpic, nbslices);
memset(histo, 0, NSLICES*sizeof(long));
if (NULL==(histo=calloc(nbslices, sizeof(long)))) {
fprintf(stderr, "OUT OF MEMORY\n");
abort();
}
foo = fimg_calcul_histo(src, histo, NSLICES);
foo = fimg_calcul_histo(src, histo, nbslices);
// for (foo=0; foo<NSLICES; foo++) {
// printf("%7d %ld\n", foo, histo[foo]);
// }
pipe = popen("gnuplot", "w");
if (NULL==pipe) {
fprintf(stderr, "%s: error running gnuplot\n", __func__);
return -17;
}
fprintf(pipe, "set term png size 1024,512\n");
fprintf(pipe, "set grid\n");
fprintf(pipe, "set output \"%s\"\n", outpic);
fprintf(pipe, "plot '/dev/stdin' with lines\n");
for (foo=0; foo<NSLICES; foo++) {
for (foo=0; foo<nbslices; foo++) {
fprintf(pipe, "%d %ld\n", foo, histo[foo]);
}
fclose(pipe);
pclose(pipe); // and not fclose (see man page)
free(histo);
return -1;
return 0;
}
/* --------------------------------------------------------------------- */

9
funcs/t.c

@ -409,6 +409,7 @@ int essai_histogramme(char *fname, int k) @@ -409,6 +409,7 @@ int essai_histogramme(char *fname, int k)
{
FloatImg fimg;
int foo;
fprintf(stderr, ">>> %s ( '%s' %d )\n", __func__, fname, k);
foo = fimg_create_from_dump(fname, &fimg);
@ -419,13 +420,15 @@ if (foo) { @@ -419,13 +420,15 @@ if (foo) {
foo = fimg_essai_histo(&fimg, "out.png", k);
if (foo) {
fprintf(stderr, "essai_histo -> %d\n", foo);
fprintf(stderr, "essai_histo -> error %d\n", foo);
return foo;
}
fimg_destroy(&fimg);
fprintf(stderr, "\\o/ end of %s\n", __func__);
return -1;
return 0;
}
/* --------------------------------------------------------------------- */
enum nCmd { Equalize=1, Rotate, Sfx0, F3x3, MIRE, Wfits, Wpng, Wtiff,
@ -536,7 +539,7 @@ switch(opt) { @@ -536,7 +539,7 @@ switch(opt) {
foo = essai_ecriture_tiff(filename);
break;
case Histo:
foo = essai_histogramme(filename, 0);
foo = essai_histogramme(filename, 98765);
break;
default:
fprintf(stderr, "%s : bad command\n", command);

Loading…
Cancel
Save