Compare commits
No commits in common. "1a185d05c5d9ece5c0793e160fca525cb0abc8a7" and "cdeeb9d92d4c8ef6b215357c671a40658fac9090" have entirely different histories.
1a185d05c5
...
cdeeb9d92d
@ -98,6 +98,23 @@ fimg_destroy(&img);
|
|||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
/* -------------------------------------------------------------- */
|
/* -------------------------------------------------------------- */
|
||||||
|
static int desaturate(FloatImg *pimg)
|
||||||
|
{
|
||||||
|
FloatImg img;
|
||||||
|
int retval;
|
||||||
|
fimg_clone(pimg, &img, 0);
|
||||||
|
retval = fimg_desaturate(pimg, &img, 0);
|
||||||
|
if (retval) {
|
||||||
|
fprintf(stderr, "%s : err desaturate %d\n",
|
||||||
|
__func__, retval);
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
fimg_copy_data(&img, pimg);
|
||||||
|
fimg_destroy(&img);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
/* -------------------------------------------------------------- */
|
||||||
/*
|
/*
|
||||||
* This is the main filter engine used both for input and
|
* This is the main filter engine used both for input and
|
||||||
* output processing. It can be called by the filterstack
|
* output processing. It can be called by the filterstack
|
||||||
@ -176,7 +193,7 @@ switch (idFx) {
|
|||||||
retval = insitu_filtre3x3(image, 0);
|
retval = insitu_filtre3x3(image, 0);
|
||||||
break;
|
break;
|
||||||
case 14:
|
case 14:
|
||||||
retval = fimg_desaturate(image, image, 0);
|
retval = desaturate(image);
|
||||||
break;
|
break;
|
||||||
case 15:
|
case 15:
|
||||||
retval = kill_a_few_lines(image, fval,
|
retval = kill_a_few_lines(image, fval,
|
||||||
@ -206,7 +223,7 @@ switch (idFx) {
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 26:
|
case 26:
|
||||||
retval = random_blocks(image, 70);
|
retval = random_blocks(image, 80);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default :
|
default :
|
||||||
|
@ -188,10 +188,6 @@ if (foo) {
|
|||||||
string...
|
string...
|
||||||
*/
|
*/
|
||||||
tmparg = alloca(strlen(argument) + 1);
|
tmparg = alloca(strlen(argument) + 1);
|
||||||
if (NULL==tmparg) {
|
|
||||||
fprintf(stderr, "memory panic in %s:%s\n", __FILE__, __func__);
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
strcpy(tmparg, argument);
|
strcpy(tmparg, argument);
|
||||||
|
|
||||||
for (;;) {
|
for (;;) {
|
||||||
@ -213,5 +209,3 @@ if (verbosity) filterstack_list(numid, __func__);
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
/* ----------------------------------------------------------- */
|
/* ----------------------------------------------------------- */
|
||||||
|
|
||||||
|
|
||||||
|
@ -100,19 +100,13 @@ int random_blocks(FloatImg *picture, int percent)
|
|||||||
{
|
{
|
||||||
int x, y;
|
int x, y;
|
||||||
|
|
||||||
if ( (picture->width%16) || (picture->height%8) )
|
for (y=0; y<picture->height; y+=8) {
|
||||||
{
|
for (x=0; x<picture->width; x+=8) {
|
||||||
fprintf(stderr, "%s: %d%d bad dims\n", __func__,
|
|
||||||
picture->width, picture->height);
|
|
||||||
}
|
|
||||||
|
|
||||||
for (y=0; y<picture->height; y+=16) {
|
|
||||||
for (x=0; x<picture->width; x+=16) {
|
|
||||||
if (percent < (rand()%100) ) {
|
if (percent < (rand()%100) ) {
|
||||||
un_petit_flou_8x8(picture, x, y);
|
|
||||||
un_petit_flou_8x8(picture, x+8, y);
|
un_petit_flou_8x8(picture,x, y);
|
||||||
un_petit_flou_8x8(picture, x, y+8);
|
|
||||||
un_petit_flou_8x8(picture, x+8, y+8);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -52,7 +52,6 @@ for (foo=0; foo<nbb; foo++) {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
/* --------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------- */
|
||||||
/* this function can work 'in place' */
|
|
||||||
int fimg_desaturate(FloatImg *src, FloatImg *dst, int notused)
|
int fimg_desaturate(FloatImg *src, FloatImg *dst, int notused)
|
||||||
{
|
{
|
||||||
int foo, nbb;
|
int foo, nbb;
|
||||||
|
Loading…
Reference in New Issue
Block a user