Proposals:Refactoring Statistics Framework 2007 New Statistics Framework: Difference between revisions
From KitwarePublic
Jump to navigationJump to search
(11 intermediate revisions by the same user not shown) | |||
Line 126: | Line 126: | ||
Object [URL="http://public.kitware.com/Insight/Doxygen/html/classitk_1_1Object.html"]; | 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"]; | 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"]; | 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"]; | 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 | Object -> FunctionBase | ||
FunctionBase -> MembershipFunctionBase | FunctionBase -> MembershipFunctionBase | ||
FunctionBase -> DistanceMetric | |||
DistanceMetric -> MahalanobisDistanceMetric | |||
DistanceMetric -> EuclideanDistanceMetric | |||
DistanceMetric -> EuclideanSquaredDistanceMetric | |||
DistanceMetric -> ManhattanDistanceMetric | |||
MembershipFunctionBase -> DistanceToCentroidMembershipFunction | MembershipFunctionBase -> DistanceToCentroidMembershipFunction | ||
} | } | ||
</graphviz> | </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)