Proposals:Refactoring Statistics Framework 2007 New Statistics Framework

From KitwarePublic
Jump to navigationJump to search

Class Manifesto of New Statistics Framework

Summary Table

The classes that integrate the new statistics framework are categorized in the following table


Conceptual Class Number
Traits 1
Data Objects 4
Filters 11
Total 16

List of Classes per Category

Traits



  • MeasurementVectorTraits

Data Objects



  • Sample
  • ListSample
  • Histogram
  • Subsample

Filters

  • SampleToHistogramFilter
  • MeanFilter
  • WeightedMeanFilter
  • CovarianceFilter
  • WeightedCovarianceFilter
  • HistogramToTextureFeaturesFilter
  • ImageToListSampleFilter
  • ScalarImageToCooccurrenceMatrixFilter
  • SampleToSubsampleFilter
  • SampleClassifierFilter
  • NeighborhoodSubsampler

Classifiers (Suggested Design)

Elements

  • MembershipFunctionBase
    • DistanceToCentroidMembershipFunction (plugs in a DistanceMetric)
  • DistanceMetrics
    • Euclidean
    • Mahalanobis
    • 1_1

Filters

  • Sample, Array of Membership Functions --> MembershipSample(sample,labels) == SampleClassifierFilter
  • Sample, Array of Membership Functions --> GoodnessOfFitComponent (sample,weights) == SampleGoodnessOfFitFilter

Class Diagrams

Traits

This is a graph with borders and nodes. Maybe there is an Imagemap used so the nodes may be linking to some Pages.

Data Objects

This is a graph with borders and nodes. Maybe there is an Imagemap used so the nodes may be linking to some Pages.

Filters

This is a graph with borders and nodes. Maybe there is an Imagemap used so the nodes may be linking to some Pages.

Classifiers (Suggested Design)

This is a graph with borders and nodes. Maybe there is an Imagemap used so the nodes may be linking to some Pages.


Distance notation

  • Manhattan (L1) = sum of absolute values
  • Euclidean = square root of ( sum of squares )
  • Euclidean Squared (L2) = sum of squares
  • Mahalanobis = square root of ( V . M . VT )

API

  • DistanceToCentroidMembershipFunction
    • SetDistanceMetric( const DistanceMetric * ) (new)
    • const GetDistanceMetric() (new)
    • Evaluate( Measurement vector ) (already there)
    • SetCentroid( ) (already there)