Compare commits
No commits in common. "63674c8eee95a8a7c701cd6e8d7952e0edec11e6" and "86a903360c80e6bb049957a81bbb91ab9c8862a2" have entirely different histories.
63674c8eee
...
86a903360c
22
.gitignore
vendored
22
.gitignore
vendored
@ -54,6 +54,23 @@ v4l2/*.tiff
|
|||||||
v4l2/video-infos
|
v4l2/video-infos
|
||||||
v4l2/nc-camcontrol
|
v4l2/nc-camcontrol
|
||||||
|
|
||||||
|
tools/fimg2png
|
||||||
|
tools/fimg2pnm
|
||||||
|
tools/fimg2tiff
|
||||||
|
tools/fimg2fits
|
||||||
|
tools/fimg2text
|
||||||
|
tools/fimgstats
|
||||||
|
tools/fimghalfsize
|
||||||
|
tools/mkfimg
|
||||||
|
tools/png2fimg
|
||||||
|
tools/addtga2fimg
|
||||||
|
tools/addpnm2fimg
|
||||||
|
tools/cumulfimgs
|
||||||
|
tools/fimgops
|
||||||
|
tools/fimgfx
|
||||||
|
tools/fimgmetadata
|
||||||
|
tools/*.png
|
||||||
|
tools/*.tiff
|
||||||
|
|
||||||
Fonderie/*.o
|
Fonderie/*.o
|
||||||
Fonderie/*.png
|
Fonderie/*.png
|
||||||
@ -76,3 +93,8 @@ experiment/muxplanes
|
|||||||
experiment/movepixels
|
experiment/movepixels
|
||||||
experiment/tcache
|
experiment/tcache
|
||||||
|
|
||||||
|
contrib/fimg2povhf
|
||||||
|
contrib/*.tga
|
||||||
|
contrib/pov.stderr
|
||||||
|
contrib/*.png
|
||||||
|
contrib/*.gif
|
||||||
|
9
contrib/.gitignore
vendored
9
contrib/.gitignore
vendored
@ -1,9 +0,0 @@
|
|||||||
|
|
||||||
fimg2povhf
|
|
||||||
demo_fmorph
|
|
||||||
|
|
||||||
*.tga
|
|
||||||
*.png
|
|
||||||
*.pnm
|
|
||||||
*.fimg
|
|
||||||
pov.stderr
|
|
@ -20,11 +20,11 @@
|
|||||||
* https://git.tetalab.org/tTh/FloatImg
|
* https://git.tetalab.org/tTh/FloatImg
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define FIMG_VERSION (208)
|
#define FIMG_VERSION (205)
|
||||||
#define RELEASE_NAME ("noname")
|
#define RELEASE_NAME ("noname")
|
||||||
|
|
||||||
/* XXX add a test for stdint.h / uint32_t XXX */
|
/* XXX add a test for stdint.h / uint32_t XXX */
|
||||||
#include <stdint.h>
|
|
||||||
/*
|
/*
|
||||||
* in memory descriptor of a floating image
|
* in memory descriptor of a floating image
|
||||||
*/
|
*/
|
||||||
|
@ -40,7 +40,7 @@ typedef struct
|
|||||||
static fpixel pixels[9];
|
static fpixel pixels[9];
|
||||||
|
|
||||||
/* --------------------------------------------------------------------- !*/
|
/* --------------------------------------------------------------------- !*/
|
||||||
static int comparaison_fgris(const void *A, const void *B)
|
static int comparaison(const void *A, const void *B)
|
||||||
{
|
{
|
||||||
return ((fpixel *)A)->fgris > ((fpixel *)B)->fgris;
|
return ((fpixel *)A)->fgris > ((fpixel *)B)->fgris;
|
||||||
}
|
}
|
||||||
@ -52,11 +52,11 @@ int fimg_filtre_morpho_0(FloatImg *sfimg, FloatImg *dfimg, int index)
|
|||||||
{
|
{
|
||||||
int xs, ys, loop9;
|
int xs, ys, loop9;
|
||||||
int xp, yp;
|
int xp, yp;
|
||||||
float rgb[3];
|
float rgb[3], fval;
|
||||||
|
|
||||||
// #if DEBUG_LEVEL
|
#if DEBUG_LEVEL
|
||||||
fprintf(stderr, ">>> %s ( %p %p %d )\n", __func__, sfimg, dfimg, index);
|
fprintf(stderr, ">>> %s ( %p %p %d )\n", __func__, sfimg, dfimg, index);
|
||||||
// #endif
|
#endif
|
||||||
|
|
||||||
if ( (index<0) || (index>8)) {
|
if ( (index<0) || (index>8)) {
|
||||||
fprintf(stderr, " %s: bad index %d\n", __func__, index);
|
fprintf(stderr, " %s: bad index %d\n", __func__, index);
|
||||||
@ -77,7 +77,7 @@ for (ys=1; ys<sfimg->height-1; ys++) {
|
|||||||
pixels[loop9].fgris = rgb[0];
|
pixels[loop9].fgris = rgb[0];
|
||||||
pixels[loop9].rang = loop9;
|
pixels[loop9].rang = loop9;
|
||||||
}
|
}
|
||||||
qsort(&pixels, 9, sizeof(fpixel), comparaison_fgris);
|
qsort(&pixels, 9, sizeof(fpixel), comparaison);
|
||||||
rgb[0] = rgb[1] = rgb[2] = pixels[index].fgris;
|
rgb[0] = rgb[1] = rgb[2] = pixels[index].fgris;
|
||||||
fimg_put_rgb(dfimg, xs, ys, rgb);
|
fimg_put_rgb(dfimg, xs, ys, rgb);
|
||||||
}
|
}
|
||||||
|
@ -108,13 +108,7 @@ return -1;
|
|||||||
/* --------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------- */
|
||||||
int print_rectangle(char *str, FimgArea51 *rect)
|
int print_rectangle(char *str, FimgArea51 *rect)
|
||||||
{
|
{
|
||||||
if (MAGIC_AREA51 != rect->magic) {
|
printf("rect @ %p '%s':\n\t %dx%d at %d,%d\n", rect, str,
|
||||||
fprintf(stderr, "%s: bad magic number 0x%08X\n", __func__,
|
|
||||||
rect->magic);
|
|
||||||
return -666;
|
|
||||||
}
|
|
||||||
|
|
||||||
printf("rect @ %p '%s' :\n\t %dx%d at %d,%d\n", rect, str,
|
|
||||||
rect->w, rect->h, rect->x, rect->y);
|
rect->w, rect->h, rect->x, rect->y);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -126,26 +120,22 @@ int parse_rectangle(char *str, FimgArea51 *r, int notused)
|
|||||||
{
|
{
|
||||||
int x, y, w, h, foo;
|
int x, y, w, h, foo;
|
||||||
|
|
||||||
#if DEBUG_LEVEL
|
|
||||||
fprintf(stderr, ">>> %s ( %s %p %d )\n", __func__, str, r, notused);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (notused) {
|
if (notused) {
|
||||||
fprintf(stderr, "notused was %d, must be 0 in %s\n",
|
fprintf(stderr, "notused was %d, must be 0 in %s\n",
|
||||||
notused, __func__); }
|
notused, __func__);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (verbosity)
|
||||||
|
fprintf(stderr, "parsing %s\n", str);
|
||||||
|
|
||||||
if (verbosity > 1) fprintf(stderr, "parsing '%s'\n", str);
|
|
||||||
foo = sscanf(str, "%d,%d,%d,%d", &w, &h, &x, &y);
|
foo = sscanf(str, "%d,%d,%d,%d", &w, &h, &x, &y);
|
||||||
if (4 == foo) {
|
if (4 == foo) {
|
||||||
r->x = x, r->y = y, r->w = w, r->h = h;
|
r->x = x, r->y = y, r->w = w, r->h = h;
|
||||||
r->magic = MAGIC_AREA51;
|
|
||||||
return 4;
|
return 4;
|
||||||
}
|
}
|
||||||
|
|
||||||
r->magic = 0xBAD;
|
|
||||||
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* --------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------- */
|
||||||
int format_from_extension(char *fname)
|
int format_from_extension(char *fname)
|
||||||
{
|
{
|
||||||
|
21
tools/.gitignore
vendored
21
tools/.gitignore
vendored
@ -1,21 +0,0 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
fimg2png
|
|
||||||
fimgextract
|
|
||||||
fimg2pnm
|
|
||||||
fimg2tiff
|
|
||||||
fimg2fits
|
|
||||||
fimg2text
|
|
||||||
fimgstats
|
|
||||||
fimghalfsize
|
|
||||||
mkfimg
|
|
||||||
png2fimg
|
|
||||||
addtga2fimg
|
|
||||||
addpnm2fimg
|
|
||||||
cumulfimgs
|
|
||||||
fimgops
|
|
||||||
fimgfx
|
|
||||||
fimgmetadata
|
|
||||||
*.png
|
|
||||||
*.tiff
|
|
@ -28,8 +28,7 @@ enum fxid { Fx_cos01=5, Fx_cos010, Fx_pow2, Fx_sqrt, Fx_gray0, Fx_halfsz0,
|
|||||||
Fx_rot90, Fx_cmixa, Fx_desat, Fx_ctr2x2, Fx_norm,
|
Fx_rot90, Fx_cmixa, Fx_desat, Fx_ctr2x2, Fx_norm,
|
||||||
Fx_classtrial, Fx_mirror, Fx_shift0, Fx_trimul,
|
Fx_classtrial, Fx_mirror, Fx_shift0, Fx_trimul,
|
||||||
Fx_xper, Fx_binarize, Fx_trinarize, Fx_hilight_R,
|
Fx_xper, Fx_binarize, Fx_trinarize, Fx_hilight_R,
|
||||||
Fx_absolute, Fx_clamp, Fx_fakol0, Fx_fakol3,
|
Fx_absolute, Fx_clamp, Fx_fakol0 };
|
||||||
Fx_morph0, Fx_morph4, Fx_morph8 };
|
|
||||||
|
|
||||||
Fx fx_list[] = {
|
Fx fx_list[] = {
|
||||||
{ "cos01", Fx_cos01, 0, 1 },
|
{ "cos01", Fx_cos01, 0, 1 },
|
||||||
@ -54,9 +53,6 @@ Fx fx_list[] = {
|
|||||||
{ "abs", Fx_absolute, 0, 1 },
|
{ "abs", Fx_absolute, 0, 1 },
|
||||||
{ "clamp", Fx_clamp, 0, 1 },
|
{ "clamp", Fx_clamp, 0, 1 },
|
||||||
{ "fakol0", Fx_fakol0, 0, 1 },
|
{ "fakol0", Fx_fakol0, 0, 1 },
|
||||||
{ "morph0", Fx_morph0, 0, 1 },
|
|
||||||
{ "morph4", Fx_morph4, 0, 1 },
|
|
||||||
{ "morph8", Fx_morph8, 0, 1 },
|
|
||||||
{ NULL, 0, 0, 0 }
|
{ NULL, 0, 0, 0 }
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -265,13 +261,6 @@ switch (action) {
|
|||||||
foo = fimg_falsecolors_0(&src, &dest, 0, 1.0);
|
foo = fimg_falsecolors_0(&src, &dest, 0, 1.0);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Fx_morph0:
|
|
||||||
foo = fimg_filtre_morpho_0(&src, &dest, 0); break;
|
|
||||||
case Fx_morph4:
|
|
||||||
foo = fimg_filtre_morpho_0(&src, &dest, 4); break;
|
|
||||||
case Fx_morph8:
|
|
||||||
foo = fimg_filtre_morpho_0(&src, &dest, 8); break;
|
|
||||||
|
|
||||||
default:
|
default:
|
||||||
fprintf(stderr, "%s %s : %d is bad action\n",
|
fprintf(stderr, "%s %s : %d is bad action\n",
|
||||||
__FILE__, __func__, action);
|
__FILE__, __func__, action);
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
SRC="../lib/quux.fimg"
|
SRC="in.fimg"
|
||||||
K="0.414"
|
K="0.414"
|
||||||
TMP="/tmp/foo.fimg"
|
TMP="/tmp/foo.fimg"
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user