18 using System.ComponentModel;
19 using TraceLab.Components.DevelopmentKit.Postprocessors;
21 using TraceLabSDK.Types;
23 namespace TraceLab.Components.Library.Postprocessors
25 [Component(Name =
"Affine Tranformation",
26 Description =
"Performs an affine transformation combining two distributions.",
27 Author =
"SEMERU; Evan Moritz",
30 [IOSpec(IOSpecType.Input,
"LargeExpert", typeof(TLSimilarityMatrix))]
31 [IOSpec(IOSpecType.Input,
"SmallExpert", typeof(TLSimilarityMatrix))]
32 [IOSpec(IOSpecType.Output,
"CombinedSimilarities", typeof(TLSimilarityMatrix))]
33 [Tag(
"Postprocessors")]
42 Configuration = _config;
47 TLSimilarityMatrix large = (TLSimilarityMatrix)Workspace.Load(
"LargeExpert");
48 TLSimilarityMatrix small = (TLSimilarityMatrix)Workspace.Load(
"SmallExpert");
50 Workspace.Store(
"CombinedSimilarities", combined);
56 private double _lambda;
58 [DisplayName(
"Lambda")]
59 [Description(
"Weight percentage given to LargeExpert")]
68 if (value < 0 || value > 1)
70 throw new ArgumentException(
"Lambda must be between 0 and 1");