Changeset 17400 for trunk/Mars/mcore


Ignore:
Timestamp:
11/29/13 13:00:29 (11 years ago)
Author:
tbretz
Message:
To determine the maximum devision by 8 is not necessary, only for the result; added a safety check for a sqrt-argument less than 0; added arguments to set beginskip and endskip
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Mars/mcore/DrsCalib.h

    r17336 r17400  
    857857    }
    858858
    859     static double GetPixelStats(float *ptr, const float *data, uint16_t roi)
     859    static double GetPixelStats(float *ptr, const float *data, uint16_t roi, uint16_t begskip=0, uint16_t endskip=0)
    860860    {
    861861        if (roi==0)
     
    863863
    864864        // Skip first 10 samples
    865         const uint beg = roi>10 ? 10 : 0;
    866         const uint end = roi-beg>5 ? roi-5 : roi;
     865        const uint beg = roi>begskip ? begskip : 0;
     866        const uint end = roi-beg>endskip ? roi-endskip : roi;
    867867        const uint len = end-beg;
    868868
     
    887887            sum  /= len;
    888888            sum2 /= len;
    889 
    890             if (i%9!=8 && vec[pos]>0)
     889            sum2 -= sum*sum;
     890
     891            if (i%9!=8)
    891892                patch += vec[pos];
    892 
    893             if (i%9==8)
    894             {
    895                 patch /= 8;
     893            else
     894            {
    896895                if (patch > max)
    897896                    max = patch;
     
    899898            }
    900899
    901             //if (i%9!=8 && vec[pos]>max)
    902             //    max = vec[pos];
    903 
    904900            *(ptr+0*1440+i) = sum;
    905             *(ptr+1*1440+i) = sqrt(sum2 - sum * sum);
     901            *(ptr+1*1440+i) = sum2<0 ? 0 : sqrt(sum2);
    906902            *(ptr+2*1440+i) = vec[pos];
    907903            *(ptr+3*1440+i) = pos;
    908904        }
    909905
    910         return max;
     906        return max/8;
    911907    }
    912908
Note: See TracChangeset for help on using the changeset viewer.