public frmCascadedClassifier(CascadedClassifier classifier, frmMain frmMain) { InitializeComponent(); _frmMain = frmMain; _classifier = classifier; LoadComponents(); }
private static IDetector LoadDetector(IObjectModel objectModel) { // scanning window generator IScanningWindowGenerator scanningWindowGenerator = new ScanningWindowGenerator ( 1.2f, 0.1f, 0.1f, 100 ); // cascaded classifier // variance classifier IClassifier varianceClassifier = new VarianceClassifier(scanningWindowGenerator, 0.5); // ensemble classifier int width = objectModel.PatchSize.Width; int height = objectModel.PatchSize.Height; IPixelComparisonScheduler pcs = new PixelComparisonScheduler(12, 3, width, height); IClassifier ensembleClassifier = new EnsembleClassifier(scanningWindowGenerator, pcs, 2); // nn classifier NnClassifier nnClassifier = new NnClassifier(scanningWindowGenerator, objectModel, 0.75f, 0.55f); // instantiate cascaded classifier IClassifier cascadedClassifier = new CascadedClassifier(varianceClassifier, ensembleClassifier, nnClassifier); IDetector detector = new Detector ( scanningWindowGenerator, cascadedClassifier, Service.NonMaximalBoundingBoxSuppress ); return(detector); }