/usr/include/vtk-5.10/vtkImageHistogramStatistics.h is in libvtk5-dev 5.10.1+dfsg-2.1build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 | /*=========================================================================
Program: Visualization Toolkit
Module: vtkImageHistogramStatistics.h
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
All rights reserved.
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
// .NAME vtkImageHistogramStatistics - Compute statistics for an image
// .SECTION Description
// vtkImageHistogramStatistics computes statistics such as mean, median, and
// standard deviation. These statistics are computed from the histogram
// of the image, rather than from the image itself, because this is more
// efficient than computing the statistics while traversing the pixels.
// If the input image is of type float or double, then the precision of
// the Mean, Median, and StandardDeviation will depend on the number of
// histogram bins. By default, 65536 bins are used for float data, giving
// at least 16 bits of precision.
// .SECTION Thanks
// Thanks to David Gobbi at the Seaman Family MR Centre and Dept. of Clinical
// Neurosciences, Foothills Medical Centre, Calgary, for providing this class.
#ifndef __vtkImageHistogramStatistics_h
#define __vtkImageHistogramStatistics_h
#include "vtkImageHistogram.h"
class vtkImageStencilData;
class vtkIdTypeArray;
class VTK_IMAGING_EXPORT vtkImageHistogramStatistics : public vtkImageHistogram
{
public:
static vtkImageHistogramStatistics *New();
vtkTypeMacro(vtkImageHistogramStatistics,vtkImageHistogram);
void PrintSelf(ostream& os, vtkIndent indent);
// Description:
// Get the minimum value present in the image. This value is computed
// when Update() is called.
double GetMinimum() { return this->Minimum; }
// Description:
// Get the maximum value present in the image. This value is computed
// when Update() is called.
double GetMaximum() { return this->Maximum; }
// Description:
// Get the mean value of the image. This value is computed when Update()
// is called.
double GetMean() { return this->Mean; }
// Description:
// Get the median value. This is computed when Update() is called.
double GetMedian() { return this->Median; }
// Description:
// Get the standard deviation of the values in the image. This is
// computed when Update() is called.
double GetStandardDeviation() { return this->StandardDeviation; }
// Description:
// Set the percentiles to use for automatic view range computation.
// This allows one to compute a range that does not include outliers
// that are significantly darker or significantly brighter than the
// rest of the pixels in the image. The default is to use the first
// percentile and the 99th percentile.
vtkSetVector2Macro(AutoRangePercentiles, double);
vtkGetVector2Macro(AutoRangePercentiles, double);
// Description:
// Set lower and upper expansion factors to apply to the auto range
// that was computed from the AutoRangePercentiles. Any outliers that
// are within this expanded range will be included, even if they are
// beyond the percentile. This allows inclusion of values that are
// just slightly outside of the percentile, while rejecting values
// that are far beyond the percentile. The default is to expand the
// range by a factor of 0.1 at each end. The range will never be
// expanded beyond the Minimum or Maximum pixel values.
vtkSetVector2Macro(AutoRangeExpansionFactors, double);
vtkGetVector2Macro(AutoRangeExpansionFactors, double);
// Description:
// Get an automatically computed view range for the image, for use
// with the lookup table or image property that is used when viewing
// the image. The use of this range will avoid situations where an
// image looks too dark because a few pixels happen to be much brighter
// than the rest.
vtkGetVector2Macro(AutoRange, double);
protected:
vtkImageHistogramStatistics();
~vtkImageHistogramStatistics();
virtual int RequestData(vtkInformation *,
vtkInformationVector **,
vtkInformationVector *);
double Minimum;
double Maximum;
double Mean;
double StandardDeviation;
double Median;
double AutoRange[2];
double AutoRangePercentiles[2];
double AutoRangeExpansionFactors[2];
private:
vtkImageHistogramStatistics(const vtkImageHistogramStatistics&); // Not implemented.
void operator=(const vtkImageHistogramStatistics&); // Not implemented.
};
#endif
|