IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 29522


Ignore:
Timestamp:
Oct 22, 2010, 11:39:15 AM (16 years ago)
Author:
eugene
Message:

rework jpeg options to allow flips and scale bar

Location:
branches/eam_branches/ipp-20100823
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_branches/ipp-20100823/ippconfig/recipes/jpeg.mdc

    r29514 r29522  
    55# * SCALE.MIN: Minimum for scaling
    66# * SCALE.MAX: Maximum for scaling
     7# * OPTIONS: comma-separated list : -SB,+SB,+X,+Y,-X,-Y
    78
    89PPIMAGE.JPEG1           METADATA
     
    1112        SCALE.MIN       F32      -5.0
    1213        SCALE.MAX       F32     +10.0
    13         SCALE.BAR       BOOL    T
     14        OPTIONS         STR     +SB,-X,+Y
    1415END
    1516
     
    1920        SCALE.MIN       F32     0.95
    2021        SCALE.MAX       F32     1.05
    21         SCALE.BAR       BOOL    F
     22        OPTIONS         STR     +SB,-X,+Y
    2223END
    2324
     
    2728        SCALE.MIN       F32      -5.0
    2829        SCALE.MAX       F32     +10.0
    29         SCALE.BAR       BOOL    F
     30        OPTIONS         STR     -SB,-X,+Y
    3031END
    3132
     
    3536        SCALE.MIN       F32      -8.0
    3637        SCALE.MAX       F32      +8.0
    37         SCALE.BAR       BOOL    T
     38        OPTIONS         STR     +SB,-X,+Y
    3839END
    3940
     
    4344        SCALE.MIN       F32      -8.0
    4445        SCALE.MAX       F32      +8.0
    45         SCALE.BAR       BOOL    F
     46        OPTIONS         STR     -SB,-X,+Y
    4647END
    4748
     
    5152        SCALE.MIN       F32      -8.0
    5253        SCALE.MAX       F32      +8.0
    53         SCALE.BAR       BOOL    T
     54        OPTIONS         STR     +SB,-X,+Y
    5455END
    5556
     
    5960        SCALE.MIN       F32      -5.0
    6061        SCALE.MAX       F32     +10.0
    61         SCALE.BAR       BOOL    T
     62        OPTIONS         STR     +SB,-X,+Y
    6263END
    6364
     
    6768        SCALE.MIN       F32      -5.0
    6869        SCALE.MAX       F32     +10.0
    69         SCALE.BAR       BOOL    F
     70        OPTIONS         STR     -SB,-X,+Y
    7071END
    7172
     
    7677                SCALE.MIN       F32     -5.0
    7778                SCALE.MAX       F32     +5.0
    78                 SCALE.BAR       BOOL    T
     79                OPTIONS         STR     +SB,-X,+Y
    7980        END
    8081
     
    8485                SCALE.MIN       F32     -5.0
    8586                SCALE.MAX       F32     +5.0
    86                 SCALE.BAR       BOOL    F
     87                OPTIONS         STR     -SB,-X,+Y
    8788        END
    8889END
     
    9596                SCALE.MIN       F32     -5.0
    9697                SCALE.MAX       F32     +5.0
    97                 SCALE.BAR       BOOL    T
     98                OPTIONS         STR     +SB,-X,+Y
    9899        END
    99100
     
    103104                SCALE.MIN       F32     -5.0
    104105                SCALE.MAX       F32     +5.0
    105                 SCALE.BAR       BOOL    F
     106                OPTIONS         STR     -SB,-X,+Y
    106107        END
    107108END
     
    114115                SCALE.MIN       F32     -2.0
    115116                SCALE.MAX       F32     +3.0
    116                 SCALE.BAR       BOOL    T
     117                OPTIONS         STR     +SB,-X,+Y
    117118        END
    118119
     
    122123                SCALE.MIN       F32     -2.0
    123124                SCALE.MAX       F32     +3.0
    124                 SCALE.BAR       BOOL    F
     125                OPTIONS         STR     -SB,-X,+Y
    125126        END
    126127END
     
    133134                SCALE.MIN       F32     0.90
    134135                SCALE.MAX       F32     1.10
    135                 SCALE.BAR       BOOL    T
     136                OPTIONS         STR     +SB,-X,+Y
    136137        END
    137138
     
    141142                SCALE.MIN       F32     0.95
    142143                SCALE.MAX       F32     1.05
    143                 SCALE.BAR       BOOL    F
     144                OPTIONS         STR     -SB,-X,+Y
    144145        END
    145146END
     
    151152                SCALE.MIN       F32     -5.0
    152153                SCALE.MAX       F32     +5.0
    153                 SCALE.BAR       BOOL    T
    154         END
    155 
    156         PPIMAGE.JPEG2            METADATA
    157                 COLORMAP        STR     -greyscale
    158                 SCALE.MODE      STR     VALUE
    159                 SCALE.MIN       F32     -5.0
    160                 SCALE.MAX       F32     +5.0
    161                 SCALE.BAR       BOOL    F
     154                OPTIONS         STR     +SB,-X,+Y
     155        END
     156
     157        PPIMAGE.JPEG2            METADATA
     158                COLORMAP        STR     -greyscale
     159                SCALE.MODE      STR     VALUE
     160                SCALE.MIN       F32     -5.0
     161                SCALE.MAX       F32     +5.0
     162                OPTIONS         STR     -SB,-X,+Y
    162163        END
    163164END
     
    169170                SCALE.MIN       F32     0.99
    170171                SCALE.MAX       F32     1.01
    171                 SCALE.BAR       BOOL    T
     172                OPTIONS         STR     +SB,-X,+Y
    172173        END
    173174
     
    177178                SCALE.MIN       F32     0.99
    178179                SCALE.MAX       F32     1.01
    179                 SCALE.BAR       BOOL    F
     180                OPTIONS         STR     -SB,-X,+Y
    180181        END
    181182END
     
    188189                SCALE.MIN       F32     -2.0
    189190                SCALE.MAX       F32     +3.0
    190                 SCALE.BAR       BOOL    T
    191         END
    192 
    193         PPIMAGE.JPEG2            METADATA
    194                 COLORMAP        STR     -greyscale
    195                 SCALE.MODE      STR     RANGE
    196                 SCALE.MIN       F32     -2.0
    197                 SCALE.MAX       F32     +3.0
    198                 SCALE.BAR       BOOL    F
     191                OPTIONS         STR     +SB,-X,+Y
     192        END
     193
     194        PPIMAGE.JPEG2            METADATA
     195                COLORMAP        STR     -greyscale
     196                SCALE.MODE      STR     RANGE
     197                SCALE.MIN       F32     -2.0
     198                SCALE.MAX       F32     +3.0
     199                OPTIONS         STR     -SB,-X,+Y
    199200        END
    200201END
     
    206207                SCALE.MIN       F32     0.95
    207208                SCALE.MAX       F32     1.05
    208                 SCALE.BAR       BOOL    T
     209                OPTIONS         STR     +SB,-X,+Y
    209210        END
    210211
     
    214215                SCALE.MIN       F32     0.95
    215216                SCALE.MAX       F32     1.05
    216                 SCALE.BAR       BOOL    F
     217                OPTIONS         STR     -SB,-X,+Y
    217218        END
    218219END
     
    224225                SCALE.MIN       F32     0.0
    225226                SCALE.MAX       F32     5.0
    226                 SCALE.BAR       BOOL    T
     227                OPTIONS         STR     +SB,-X,+Y
    227228        END
    228229
     
    232233                SCALE.MIN       F32     0.0
    233234                SCALE.MAX       F32     5.0
    234                 SCALE.BAR       BOOL    F
     235                OPTIONS         STR     -SB,-X,+Y
    235236        END
    236237END
     
    242243        SCALE.MIN       F32      -8.0
    243244        SCALE.MAX       F32      +8.0
    244         SCALE.BAR       BOOL    T
     245        OPTIONS         STR     +SB,-X,+Y
    245246END
    246247
     
    250251        SCALE.MIN       F32      -8.0
    251252        SCALE.MAX       F32      +8.0
    252         SCALE.BAR       BOOL    F
    253 END
    254 
     253        OPTIONS         STR     -SB,-X,+Y
     254END
     255
  • branches/eam_branches/ipp-20100823/psModules/src/camera/pmFPA_JPEG.c

    r29514 r29522  
    179179    psFree(stats);
    180180
     181    // default options are: no flip in X or Y, scale bar on bottom
     182    psImageJpegOptions *jpegOptions = psImageJpegOptionsAlloc();
     183
    181184    char *colormapName = psMetadataLookupStr(NULL, options, "COLORMAP"); // Name of colour map
    182185    if (!colormapName) {
    183186        colormapName = "-greyscale";
    184187    }
     188    psImageJpegColormapSet(jpegOptions, colormapName);
     189
     190    // set up the scale options
    185191    char *mode = psMetadataLookupStr(NULL, options, "SCALE.MODE"); // Mode for scaling image
    186192    if (!mode) {
     
    195201        fmax = +6.0;
    196202    }
    197     bool haveBar = psMetadataLookupBool(&status, options, "SCALE.BAR"); // Mode for scaling image
    198     if (!status) {
    199         haveBar = false;
    200     }
    201 
    202     float min = 0, max = 0;             // Minimum and maximum for stretch
    203 
    204203    if (!strcasecmp(mode, "RANGE")) {
    205         min = mean + fmin*delta;
    206         max = mean + fmax*delta;
     204        jpegOptions->min = mean + fmin*delta;
     205        jpegOptions->max = mean + fmax*delta;
    207206    } else if (!strcasecmp(mode, "FRACTION")) {
    208         min = fmin*mean;
    209         max = fmax*mean;
     207        jpegOptions->min = fmin*mean;
     208        jpegOptions->max = fmax*mean;
    210209    } else if (!strcasecmp(mode, "VALUE")) {
    211         min = fmin;
    212         max = fmax;
     210        jpegOptions->min = fmin;
     211        jpegOptions->max = fmax;
    213212    } else {
    214213        psError(PS_ERR_BAD_PARAMETER_VALUE, true, "Unrecognised scaling mode: %s", mode);
    215214        return false;
    216215    }
    217 
    218     if (!isfinite(min) || !isfinite(max)) {
     216    if (!isfinite(jpegOptions->min) || !isfinite(jpegOptions->max)) {
    219217        psLogMsg("psModules.jpeg", PS_LOG_WARN,
    220218                 "The stretch parameters are not both finite --- writing blank jpeg");
    221         min = 0;
    222         max = 1;
    223     }
    224 
    225     psImageJpegOptions *jpegOptions = psImageJpegOptionsAlloc();
    226     psImageJpegColormapSet(jpegOptions, colormapName);
    227 
    228     // default options are: no flip in X or Y, scale bar on bottom
    229     jpegOptions->min = min;
    230     jpegOptions->max = max;
    231 
    232     if (haveBar) {
    233         jpegOptions->showScale = PS_JPEG_SHOWSCALE_BOTTOM;
    234     } else {
    235         jpegOptions->showScale = PS_JPEG_SHOWSCALE_NONE;
     219        jpegOptions->min = 0;
     220        jpegOptions->max = 1;
     221    }
     222
     223    jpegOptions->showScale = PS_JPEG_SHOWSCALE_NONE;
     224    jpegOptions->xFlip = false;
     225    jpegOptions->yFlip = false;
     226   
     227    char *userOptions = psMetadataLookupStr(&status, options, "OPTIONS"); // Mode for scaling image
     228    if (userOptions) {
     229        // just use strstr for now
     230        if (strcasestr(userOptions, "+SB")) {
     231            jpegOptions->showScale = PS_JPEG_SHOWSCALE_BOTTOM;
     232        }
     233        if (strcasestr(userOptions, "-X")) {
     234            jpegOptions->xFlip = true;
     235        }
     236        if (strcasestr(userOptions, "-Y")) {
     237            jpegOptions->yFlip = true;
     238        }
    236239    }
    237240
Note: See TracChangeset for help on using the changeset viewer.