예제 #1
0
        /// <summary>
        ///   Constructs a new Haar object detector.
        /// </summary>
        /// <param name="cascade">
        ///   The <see cref="HaarCascade"/> to use in the detector's classifier.
        ///   For the default face cascade, please take a look on
        ///   <see cref="FaceHaarCascade"/>.
        /// </param>
        /// <param name="minSize">Minimum window size to consider when searching
        /// objects. Default value is <c>15</c>.</param>
        /// <param name="searchMode">The <see cref="ObjectDetectorSearchMode"/> to use
        /// during search. Please see documentation of <see cref="ObjectDetectorSearchMode"/>
        /// for details. Default is <see cref="ObjectDetectorSearchMode.NoOverlap"/>.</param>
        /// <param name="scaleFactor">The scaling factor to rescale the window
        /// during search. Default value is <c>1.2f</c>.</param>
        /// <param name="scalingMode">The <see cref="ObjectDetectorScalingMode"/> to use
        /// when re-scaling the search window during search. Default is <see cref="ObjectDetectorScalingMode.SmallerToGreater"/>.</param>
        ///
        private HaarObjectDetector(HaarCascade.HaarCascade cascade, int minSize, ObjectDetectorSearchMode searchMode,
                                   float scaleFactor,
                                   ObjectDetectorScalingMode scalingMode)
        {
            this.classifier      = new HaarClassifier(cascade);
            this.minSize         = new Size(minSize, minSize);
            this.searchMode      = searchMode;
            this.ScalingMode     = scalingMode;
            this.factor          = scaleFactor;
            this.detectedObjects = new List <Rectangle>();

            this.baseWidth  = cascade.Width;
            this.baseHeight = cascade.Height;
        }
예제 #2
0
 /// <summary>
 ///   Constructs a new Haar object detector.
 /// </summary>
 /// <param name="cascade">
 ///   The <see cref="HaarCascade"/> to use in the detector's classifier.
 ///   For the default face cascade, please take a look on
 ///   <see cref="FaceHaarCascade"/>.
 /// </param>
 /// <param name="minSize">Minimum window size to consider when searching
 /// objects. Default value is <c>15</c>.</param>
 /// <param name="searchMode">The <see cref="ObjectDetectorSearchMode"/> to use
 /// during search. Please see documentation of <see cref="ObjectDetectorSearchMode"/>
 /// for details. Default value is <see cref="ObjectDetectorSearchMode.NoOverlap"/></param>
 ///
 public HaarObjectDetector(HaarCascade.HaarCascade cascade, int minSize, ObjectDetectorSearchMode searchMode = ObjectDetectorSearchMode.NoOverlap)
     : this(cascade, minSize, searchMode, 1.2f)
 {
 }
예제 #3
0
 /// <summary>
 ///   Constructs a new Haar object detector.
 /// </summary>
 /// <param name="cascade">
 ///   The <see cref="HaarCascade"/> to use in the detector's classifier.
 ///   For the default face cascade, please take a look on
 ///   <see cref="FaceHaarCascade"/>.
 /// </param>
 /// <param name="minSize">Minimum window size to consider when searching
 /// objects. Default value is <c>15</c>.</param>
 /// <param name="searchMode">The <see cref="ObjectDetectorSearchMode"/> to use
 /// during search. Please see documentation of <see cref="ObjectDetectorSearchMode"/>
 /// for details. Default value is <see cref="ObjectDetectorSearchMode.NoOverlap"/></param>
 /// <param name="scaleFactor">The re-scaling factor to use when re-scaling the window during search.</param>
 ///
 public HaarObjectDetector(HaarCascade.HaarCascade cascade, int minSize, ObjectDetectorSearchMode searchMode,
                           float scaleFactor)
     : this(cascade, minSize, searchMode, scaleFactor, ObjectDetectorScalingMode.SmallerToGreater)
 {
 }
예제 #4
0
 /// <summary>
 ///   Constructs a new Haar object detector.
 /// </summary>
 /// <param name="cascade">
 ///   The <see cref="HaarCascade"/> to use in the detector's classifier.
 ///   For the default face cascade, please take a look on
 ///   <see cref="FaceHaarCascade"/>.
 /// </param>
 ///
 public HaarObjectDetector(HaarCascade.HaarCascade cascade)
     : this(cascade, 15)
 {
 }