Changeset 2706


Ignore:
Timestamp:
Aug 12, 2008, 7:18:30 PM (14 years ago)
Author:
Sam Hocevar
Message:
  • minmax.c: add pipi_min() and pipi_max() as another way to combine two images.
Location:
libpipi/trunk
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • libpipi/trunk/pipi/Makefile.am

    r2705 r2706  
    4141# Submodules
    4242combine_sources = \
    43         combine/mean.c
     43        combine/mean.c \
     44        combine/minmax.c
    4445
    4546filter_sources = \
  • libpipi/trunk/pipi/context.c

    r2705 r2706  
    147147        ctx->nimages--;
    148148    }
     149    else if(!strcmp(cmd, "min"))
     150    {
     151        pipi_image_t *dst;
     152
     153        if(ctx->nimages < 2)
     154            return -1;
     155        dst = pipi_min(ctx->images[ctx->nimages - 2],
     156                       ctx->images[ctx->nimages - 1]);
     157        if(dst == NULL)
     158            return -1;
     159        pipi_free(ctx->images[ctx->nimages - 2]);
     160        pipi_free(ctx->images[ctx->nimages - 1]);
     161        ctx->images[ctx->nimages - 2] = dst;
     162        ctx->nimages--;
     163    }
     164    else if(!strcmp(cmd, "max"))
     165    {
     166        pipi_image_t *dst;
     167
     168        if(ctx->nimages < 2)
     169            return -1;
     170        dst = pipi_max(ctx->images[ctx->nimages - 2],
     171                       ctx->images[ctx->nimages - 1]);
     172        if(dst == NULL)
     173            return -1;
     174        pipi_free(ctx->images[ctx->nimages - 2]);
     175        pipi_free(ctx->images[ctx->nimages - 1]);
     176        ctx->images[ctx->nimages - 2] = dst;
     177        ctx->nimages--;
     178    }
    149179    else if(!strcmp(cmd, "wrap"))
    150180    {
  • libpipi/trunk/pipi/pipi.h

    r2705 r2706  
    8787
    8888extern pipi_image_t *pipi_mean(pipi_image_t *, pipi_image_t *);
     89extern pipi_image_t *pipi_min(pipi_image_t *, pipi_image_t *);
     90extern pipi_image_t *pipi_max(pipi_image_t *, pipi_image_t *);
    8991
    9092extern pipi_image_t *pipi_convolution(pipi_image_t *, int, int, double[]);
  • libpipi/trunk/src/pipi.c

    r2705 r2706  
    5757                return EXIT_FAILURE;
    5858        }
     59        else if(!strcmp(argv[0], "--min"))
     60        {
     61            if(pipi_command(ctx, "min") != 0)
     62                return EXIT_FAILURE;
     63        }
     64        else if(!strcmp(argv[0], "--max"))
     65        {
     66            if(pipi_command(ctx, "max") != 0)
     67                return EXIT_FAILURE;
     68        }
    5969        else if(!strcmp(argv[0], "--output") || !strcmp(argv[0], "-o"))
    6070        {
Note: See TracChangeset for help on using the changeset viewer.