Proposals:Refactoring Statistics Framework 2007 New Statistics Framework: Difference between revisions
From KitwarePublic
Jump to navigationJump to search
(12 intermediate revisions by the same user not shown) | |||
Line 118: | Line 118: | ||
} | } | ||
</graphviz> | </graphviz> | ||
== Classifiers (Suggested Design) == | |||
<graphviz> | |||
digraph G { | |||
Object [URL="http://public.kitware.com/Insight/Doxygen/html/classitk_1_1Object.html"]; | |||
FunctionBase [URL="http://public.kitware.com/Insight/Doxygen/html/classitk_1_1FunctionBase.html"]; | |||
MembershipFunctionBase [shape=box, URL="http://public.kitware.com/Insight/Doxygen/html/classitk_1_1Statistics_1_1MembershipFunctionBase.html"]; | |||
DistanceToCentroidMembershipFunction [shape=box, URL="http://public.kitware.com/Insight/Doxygen/html/classitk_1_1Statistics_1_1DistanceToCentroidMembershipFunction.html"]; | |||
DistanceMetric [shape=box, URL="http://public.kitware.com/Insight/Doxygen/html/classitk_1_1Statistics_1_1DistanceMetric.html"]; | |||
EuclideanDistanceMetric [shape=box, URL="http://public.kitware.com/Insight/Doxygen/html/classitk_1_1Statistics_1_1EuclideanDistanceMetric.html"]; | |||
MahalanobisDistanceMetric [shape=box, URL="http://public.kitware.com/Insight/Doxygen/html/classitk_1_1Statistics_1_1MahalanobisDistanceMetric.html"]; | |||
Object -> FunctionBase | |||
FunctionBase -> MembershipFunctionBase | |||
FunctionBase -> DistanceMetric | |||
DistanceMetric -> MahalanobisDistanceMetric | |||
DistanceMetric -> EuclideanDistanceMetric | |||
DistanceMetric -> EuclideanSquaredDistanceMetric | |||
DistanceMetric -> ManhattanDistanceMetric | |||
MembershipFunctionBase -> DistanceToCentroidMembershipFunction | |||
} | |||
</graphviz> | |||
=== 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) |
Latest revision as of 20:57, 17 July 2008
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
Data Objects
Filters
Classifiers (Suggested Design)
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)