IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 23826


Ignore:
Timestamp:
Apr 11, 2009, 7:57:18 AM (17 years ago)
Author:
eugene
Message:

add stats for the vector-method of overscan representation

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psModules/src/detrend/pmOverscan.c

    r21183 r23826  
    255255    psMetadataAddStr(hdu->header, PS_LIST_TAIL, "HISTORY", PS_META_DUPLICATE_OK,
    256256                     comment, "");
     257    psTrace ("psModules.detrend", 4, "%s\n", comment);
    257258    psFree(comment);
    258259
     
    344345        }
    345346
     347        // generate stats of overscan vector for header
     348        {
     349          psString comment = NULL;    // Comment to add
     350          psStats *vectorStats = psStatsAlloc (PS_STAT_SAMPLE_MEAN | PS_STAT_SAMPLE_STDEV);
     351          psVectorStats (vectorStats, reduced, NULL, NULL, 0);
     352          psStringAppend(&comment, "Mean Overscan value: %f", vectorStats->sampleMean);
     353          psMetadataAddStr(hdu->header, PS_LIST_TAIL, "HISTORY", PS_META_DUPLICATE_OK, comment, "");
     354          psFree(comment);
     355
     356          // write metadata header value
     357          psMetadataAddF32(hdu->header, PS_LIST_TAIL, "OVER_VAL", PS_META_REPLACE, "Overscan mean", vectorStats->sampleMean);
     358          psMetadataAddF32(hdu->header, PS_LIST_TAIL, "OVER_SIG", PS_META_REPLACE, "Overscan stdev", vectorStats->sampleStdev);
     359          psFree (vectorStats);
     360        }
     361
    346362        // Subtract row by row
    347363        for (int i = 0; i < image->numRows; i++) {
     
    392408        }
    393409
    394         // Subtract column by column
    395         for (int i = 0; i < image->numCols; i++) {
    396             for (int j = 0; j < image->numRows; j++) {
     410        // generate stats of overscan vector for header
     411        {
     412          psString comment = NULL;    // Comment to add
     413          psStats *vectorStats = psStatsAlloc (PS_STAT_SAMPLE_MEAN | PS_STAT_SAMPLE_STDEV);
     414          psVectorStats (vectorStats, reduced, NULL, NULL, 0);
     415          psStringAppend(&comment, "Mean Overscan value: %f", vectorStats->sampleMean);
     416          psMetadataAddStr(hdu->header, PS_LIST_TAIL, "HISTORY", PS_META_DUPLICATE_OK, comment, "");
     417          psFree(comment);
     418
     419          // write metadata header value
     420          psMetadataAddF32(hdu->header, PS_LIST_TAIL, "OVER_VAL", PS_META_REPLACE, "Overscan mean", vectorStats->sampleMean);
     421          psMetadataAddF32(hdu->header, PS_LIST_TAIL, "OVER_SIG", PS_META_REPLACE, "Overscan stdev", vectorStats->sampleStdev);
     422          psFree (vectorStats);
     423        }
     424
     425        // Subtract column by column
     426        for (int j = 0; j < image->numRows; j++) {
     427          for (int i = 0; i < image->numCols; i++) {
    397428                image->data.F32[j][i] -= reduced->data.F32[i];
    398429            }
Note: See TracChangeset for help on using the changeset viewer.