Beispiel #1
0
        /// <summary>
        /// HOG ディスクリプタおよび検出器を作成します
        /// </summary>
        /// <param name="winSize">検出窓サイズ.ブロックのサイズと移動量に合わせる必要があります.</param>
        /// <param name="blockSize">ピクセル単位で表されるブロックサイズ.セルサイズに合わせる必要があります.</param>
        /// <param name="blockStride">ブロックの移動量.セルサイズの倍数でなければいけません.</param>
        /// <param name="cellSize">セルサイズ.</param>
        /// <param name="nbins">ビンの個数.</param>
        /// <param name="derivAperture"></param>
        /// <param name="winSigma">ガウシアン平滑化窓パラメータ.</param>
        /// <param name="histogramNormType"></param>
        /// <param name="l2HysThreshold">L2-Hys 正規化縮小処理の閾値.</param>
        /// <param name="gammaCorrection">前処理としてガンマ補正を行うか否か,を指定します.</param>
        /// <param name="nlevels">検出窓拡大回数の最大値</param>
#else
        /// <summary>
        /// Creates the HOG descriptor and detector.
        /// </summary>
        /// <param name="winSize">Detection window size. Align to block size and block stride.</param>
        /// <param name="blockSize">Block size in pixels. Align to cell size. Only (16,16) is supported for now.</param>
        /// <param name="blockStride">Block stride. It must be a multiple of cell size.</param>
        /// <param name="cellSize">Cell size. Only (8, 8) is supported for now.</param>
        /// <param name="nbins">Number of bins. Only 9 bins per cell are supported for now.</param>
        /// <param name="derivAperture"></param>
        /// <param name="winSigma">Gaussian smoothing window parameter.</param>
        /// <param name="histogramNormType"></param>
        /// <param name="l2HysThreshold">L2-Hys normalization method shrinkage.</param>
        /// <param name="gammaCorrection">Flag to specify whether the gamma correction preprocessing is required or not.</param>
        /// <param name="nlevels">Maximum number of detection window increases.</param>
#endif
        public HOGDescriptor(
            Size? winSize = null,
            Size? blockSize = null,
            Size? blockStride = null,
            Size? cellSize = null,
            int nbins = 9, 
            int derivAperture = 1, 
            double winSigma = -1, 
            HistogramNormType histogramNormType = HistogramNormType.L2Hys, 
            double l2HysThreshold = 0.2, 
            bool gammaCorrection = true,
            int nlevels = DefaultNlevels)
        {
            ptr = NativeMethods.objdetect_HOGDescriptor_new2(
                winSize.GetValueOrDefault(new Size(64, 128)),
                blockSize.GetValueOrDefault(new Size(16, 16)),
                blockStride.GetValueOrDefault(new Size(8, 8)), 
                cellSize.GetValueOrDefault(new Size(8, 8)), 
                nbins,
                derivAperture, 
                winSigma, histogramNormType, 
                l2HysThreshold, 
                gammaCorrection ? 1 : 0, 
                nlevels);
        }
Beispiel #2
0
 public static extern IntPtr objdetect_HOGDescriptor_new2(Size winSize, Size blockSize, Size blockStride, Size cellSize,
                                                          int nbins, int derivAperture, double winSigma, [MarshalAs(UnmanagedType.I4)] HistogramNormType histogramNormType,
                                                          double l2HysThreshold, int gammaCorrection, int nlevels);
Beispiel #3
0
        /// <summary>
        /// HOG ディスクリプタおよび検出器を作成します
        /// </summary>
        /// <param name="winSize">検出窓サイズ.ブロックのサイズと移動量に合わせる必要があります.</param>
        /// <param name="blockSize">ピクセル単位で表されるブロックサイズ.セルサイズに合わせる必要があります.</param>
        /// <param name="blockStride">ブロックの移動量.セルサイズの倍数でなければいけません.</param>
        /// <param name="cellSize">セルサイズ.</param>
        /// <param name="nbins">ビンの個数.</param>
        /// <param name="derivAperture"></param>
        /// <param name="winSigma">ガウシアン平滑化窓パラメータ.</param>
        /// <param name="histogramNormType"></param>
        /// <param name="L2HysThreshold">L2-Hys 正規化縮小処理の閾値.</param>
        /// <param name="gammaCorrection">前処理としてガンマ補正を行うか否か,を指定します.</param>
        /// <param name="nlevels">検出窓拡大回数の最大値</param>
#else
        /// <summary>
        /// 
        /// </summary>
        /// <param name="winSize"></param>
        /// <param name="blockSize"></param>
        /// <param name="blockStride"></param>
        /// <param name="cellSize"></param>
        /// <param name="nbins"></param>
        /// <param name="derivAperture"></param>
        /// <param name="winSigma"></param>
        /// <param name="histogramNormType"></param>
        /// <param name="l2HysThreshold"></param>
        /// <param name="gammaCorrection"></param>
        /// <param name="nlevels"></param>
#endif
        public HOGDescriptor(CvSize winSize, CvSize blockSize, CvSize blockStride, CvSize cellSize,
            int nbins, int derivAperture, double winSigma, HistogramNormType histogramNormType, double l2HysThreshold, bool gammaCorrection, int nlevels)
        {
            ptr = CppInvoke.HOGDescriptor_new2(winSize, blockSize, blockStride, cellSize, nbins, derivAperture, winSigma, histogramNormType, l2HysThreshold, gammaCorrection, nlevels);
        }
Beispiel #4
0
        /// <summary>
        /// HOG ディスクリプタおよび検出器を作成します
        /// </summary>
        /// <param name="winSize">検出窓サイズ.ブロックのサイズと移動量に合わせる必要があります.</param>
        /// <param name="blockSize">ピクセル単位で表されるブロックサイズ.セルサイズに合わせる必要があります.</param>
        /// <param name="blockStride">ブロックの移動量.セルサイズの倍数でなければいけません.</param>
        /// <param name="cellSize">セルサイズ.</param>
        /// <param name="nbins">ビンの個数.</param>
        /// <param name="derivAperture"></param>
        /// <param name="winSigma">ガウシアン平滑化窓パラメータ.</param>
        /// <param name="histogramNormType"></param>
#else
        /// <summary>
        /// 
        /// </summary>
        /// <param name="winSize"></param>
        /// <param name="blockSize"></param>
        /// <param name="blockStride"></param>
        /// <param name="cellSize"></param>
        /// <param name="nbins"></param>
        /// <param name="derivAperture"></param>
        /// <param name="winSigma"></param>
        /// <param name="histogramNormType"></param>
#endif
        public HOGDescriptor(CvSize winSize, CvSize blockSize, CvSize blockStride, CvSize cellSize,
            int nbins, int derivAperture, double winSigma, HistogramNormType histogramNormType)
            : this(winSize, blockSize, blockStride, cellSize, nbins, derivAperture, winSigma, histogramNormType, 0.2, false, DEFAULT_NLEVELS)
        {
        }
Beispiel #5
0
        /// <summary>
        /// HOG ディスクリプタおよび検出器を作成します
        /// </summary>
        /// <param name="winSize">検出窓サイズ.ブロックのサイズと移動量に合わせる必要があります.</param>
        /// <param name="blockSize">ピクセル単位で表されるブロックサイズ.セルサイズに合わせる必要があります.</param>
        /// <param name="blockStride">ブロックの移動量.セルサイズの倍数でなければいけません.</param>
        /// <param name="cellSize">セルサイズ.</param>
        /// <param name="nbins">ビンの個数.</param>
        /// <param name="derivAperture"></param>
        /// <param name="winSigma">ガウシアン平滑化窓パラメータ.</param>
        /// <param name="histogramNormType"></param>
        /// <param name="L2HysThreshold">L2-Hys 正規化縮小処理の閾値.</param>
        /// <param name="gammaCorrection">前処理としてガンマ補正を行うか否か,を指定します.</param>
#else
        /// <summary>
        /// 
        /// </summary>
        /// <param name="winSize"></param>
        /// <param name="blockSize"></param>
        /// <param name="blockStride"></param>
        /// <param name="cellSize"></param>
        /// <param name="nbins"></param>
        /// <param name="derivAperture"></param>
        /// <param name="winSigma"></param>
        /// <param name="histogramNormType"></param>
        /// <param name="l2HysThreshold"></param>
        /// <param name="gammaCorrection"></param>
#endif
        public HOGDescriptor(CvSize winSize, CvSize blockSize, CvSize blockStride, CvSize cellSize,
            int nbins, int derivAperture, double winSigma, HistogramNormType histogramNormType, double l2HysThreshold, bool gammaCorrection)
            : this(winSize, blockSize, blockStride, cellSize, nbins, derivAperture, winSigma, histogramNormType, l2HysThreshold, gammaCorrection, DEFAULT_NLEVELS)
        {
        }