43 #ifndef __OPENCV_GPU_HPP__
44 #define __OPENCV_GPU_HPP__
57 namespace cv {
namespace gpu {
73 enum { ALLOC_PAGE_LOCKED = 1, ALLOC_ZEROCOPY = 2, ALLOC_WRITE_COMBINED = 4 };
83 explicit CudaMem(
const Mat&
m,
int alloc_type = ALLOC_PAGE_LOCKED);
93 void create(
int rows,
int cols,
int type,
int alloc_type = ALLOC_PAGE_LOCKED);
94 void create(
Size size,
int type,
int alloc_type = ALLOC_PAGE_LOCKED);
100 Mat createMatHeader()
const;
101 operator Mat()
const;
104 GpuMat createGpuMatHeader()
const;
108 static bool canMapHostMemory();
111 bool isContinuous()
const;
112 size_t elemSize()
const;
113 size_t elemSize1()
const;
117 size_t step1()
const;
150 bool queryIfComplete();
151 void waitForCompletion();
156 void enqueueDownload(
const GpuMat& src,
Mat& dst);
161 void enqueueUpload(
const Mat& src,
GpuMat& dst);
171 void enqueueConvert(
const GpuMat& src,
GpuMat& dst,
int dtype,
double a = 1,
double b = 0);
179 operator bool()
const;
184 explicit Stream(Impl* impl);
326 int columnBorderType = -1);
329 int columnBorderType = -1);
354 static inline void blur(
const GpuMat& src, GpuMat& dst,
Size ksize,
Point anchor =
Point(-1,-1), Stream& stream =
Stream::Null())
356 boxFilter(src, dst, -1, ksize, anchor, stream);
360 CV_EXPORTS
void erode(
const GpuMat& src, GpuMat& dst,
const Mat& kernel,
Point anchor =
Point(-1, -1),
int iterations = 1);
361 CV_EXPORTS
void erode(
const GpuMat& src, GpuMat& dst,
const Mat& kernel, GpuMat& buf,
367 CV_EXPORTS
void dilate(
const GpuMat& src, GpuMat& dst,
const Mat& kernel, GpuMat& buf,
373 CV_EXPORTS
void morphologyEx(
const GpuMat& src, GpuMat& dst,
int op,
const Mat& kernel, GpuMat& buf1, GpuMat& buf2,
380 CV_EXPORTS
void sepFilter2D(
const GpuMat& src, GpuMat& dst,
int ddepth,
const Mat& kernelX,
const Mat& kernelY,
382 CV_EXPORTS
void sepFilter2D(
const GpuMat& src, GpuMat& dst,
int ddepth,
const Mat& kernelX,
const Mat& kernelY, GpuMat& buf,
387 CV_EXPORTS
void Sobel(
const GpuMat& src, GpuMat& dst,
int ddepth,
int dx,
int dy,
int ksize = 3,
double scale = 1,
389 CV_EXPORTS
void Sobel(
const GpuMat& src, GpuMat& dst,
int ddepth,
int dx,
int dy, GpuMat& buf,
int ksize = 3,
double scale = 1,
393 CV_EXPORTS
void Scharr(
const GpuMat& src, GpuMat& dst,
int ddepth,
int dx,
int dy,
double scale = 1,
395 CV_EXPORTS
void Scharr(
const GpuMat& src, GpuMat& dst,
int ddepth,
int dx,
int dy, GpuMat& buf,
double scale = 1,
399 CV_EXPORTS
void GaussianBlur(
const GpuMat& src, GpuMat& dst,
Size ksize,
double sigma1,
double sigma2 = 0,
401 CV_EXPORTS
void GaussianBlur(
const GpuMat& src, GpuMat& dst,
Size ksize, GpuMat& buf,
double sigma1,
double sigma2 = 0,
421 CV_EXPORTS
void flip(
const GpuMat&
a, GpuMat&
b,
int flipCode, Stream& stream =
Stream::Null());
426 CV_EXPORTS
void LUT(
const GpuMat& src,
const Mat&
lut, GpuMat& dst, Stream& stream =
Stream::Null());
429 CV_EXPORTS
void merge(
const GpuMat* src,
size_t n, GpuMat& dst, Stream& stream =
Stream::Null());
432 CV_EXPORTS
void merge(
const vector<GpuMat>& src, GpuMat& dst, Stream& stream =
Stream::Null());
435 CV_EXPORTS
void split(
const GpuMat& src, GpuMat* dst, Stream& stream =
Stream::Null());
438 CV_EXPORTS
void split(
const GpuMat& src, vector<GpuMat>& dst, Stream& stream =
Stream::Null());
450 CV_EXPORTS
void magnitude(
const GpuMat&
x,
const GpuMat&
y, GpuMat& magnitude, Stream& stream =
Stream::Null());
458 CV_EXPORTS
void phase(
const GpuMat& x,
const GpuMat& y, GpuMat&
angle,
bool angleInDegrees =
false, Stream& stream =
Stream::Null());
462 CV_EXPORTS
void cartToPolar(
const GpuMat& x,
const GpuMat& y, GpuMat& magnitude, GpuMat& angle,
bool angleInDegrees =
false, Stream& stream =
Stream::Null());
466 CV_EXPORTS
void polarToCart(
const GpuMat& magnitude,
const GpuMat& angle, GpuMat& x, GpuMat& y,
bool angleInDegrees =
false, Stream& stream =
Stream::Null());
469 CV_EXPORTS
void normalize(
const GpuMat& src, GpuMat& dst,
double alpha = 1,
double beta = 0,
470 int norm_type =
NORM_L2,
int dtype = -1,
const GpuMat&
mask = GpuMat());
471 CV_EXPORTS
void normalize(
const GpuMat& src, GpuMat& dst,
double a,
double b,
472 int norm_type,
int dtype,
const GpuMat&
mask, GpuMat& norm_buf, GpuMat& cvt_buf);
478 CV_EXPORTS
void add(
const GpuMat& a,
const GpuMat& b, GpuMat&
c,
const GpuMat&
mask = GpuMat(),
int dtype = -1, Stream& stream =
Stream::Null());
480 CV_EXPORTS
void add(
const GpuMat& a,
const Scalar& sc, GpuMat& c,
const GpuMat&
mask = GpuMat(),
int dtype = -1, Stream& stream =
Stream::Null());
483 CV_EXPORTS
void subtract(
const GpuMat& a,
const GpuMat& b, GpuMat& c,
const GpuMat&
mask = GpuMat(),
int dtype = -1, Stream& stream =
Stream::Null());
485 CV_EXPORTS
void subtract(
const GpuMat& a,
const Scalar& sc, GpuMat& c,
const GpuMat&
mask = GpuMat(),
int dtype = -1, Stream& stream =
Stream::Null());
488 CV_EXPORTS
void multiply(
const GpuMat& a,
const GpuMat& b, GpuMat& c,
double scale = 1,
int dtype = -1, Stream& stream =
Stream::Null());
493 CV_EXPORTS
void divide(
const GpuMat& a,
const GpuMat& b, GpuMat& c,
double scale = 1,
int dtype = -1, Stream& stream =
Stream::Null());
497 CV_EXPORTS
void divide(
double scale,
const GpuMat& b, GpuMat& c,
int dtype = -1, Stream& stream =
Stream::Null());
500 CV_EXPORTS
void addWeighted(
const GpuMat& src1,
double alpha,
const GpuMat& src2,
double beta,
double gamma, GpuMat& dst,
504 static inline void scaleAdd(
const GpuMat& src1,
double alpha,
const GpuMat& src2, GpuMat& dst, Stream& stream =
Stream::Null())
506 addWeighted(src1, alpha, src2, 1.0, 0.0, dst, -1, stream);
510 CV_EXPORTS
void absdiff(
const GpuMat& a,
const GpuMat& b, GpuMat& c, Stream& stream =
Stream::Null());
516 CV_EXPORTS
void abs(
const GpuMat& src, GpuMat& dst, Stream& stream =
Stream::Null());
520 CV_EXPORTS
void sqr(
const GpuMat& src, GpuMat& dst, Stream& stream =
Stream::Null());
524 CV_EXPORTS
void sqrt(
const GpuMat& src, GpuMat& dst, Stream& stream =
Stream::Null());
528 CV_EXPORTS
void exp(
const GpuMat& a, GpuMat& b, Stream& stream =
Stream::Null());
532 CV_EXPORTS
void log(
const GpuMat& a, GpuMat& b, Stream& stream =
Stream::Null());
538 CV_EXPORTS
void pow(
const GpuMat& src,
double power, GpuMat& dst, Stream& stream =
Stream::Null());
541 CV_EXPORTS
void compare(
const GpuMat& a,
const GpuMat& b, GpuMat& c,
int cmpop, Stream& stream =
Stream::Null());
548 CV_EXPORTS
void bitwise_or(
const GpuMat& src1,
const GpuMat& src2, GpuMat& dst,
const GpuMat&
mask=GpuMat(), Stream& stream =
Stream::Null());
554 CV_EXPORTS
void bitwise_and(
const GpuMat& src1,
const GpuMat& src2, GpuMat& dst,
const GpuMat&
mask=GpuMat(), Stream& stream =
Stream::Null());
560 CV_EXPORTS
void bitwise_xor(
const GpuMat& src1,
const GpuMat& src2, GpuMat& dst,
const GpuMat&
mask=GpuMat(), Stream& stream =
Stream::Null());
567 CV_EXPORTS
void rshift(
const GpuMat& src, Scalar_<int> sc, GpuMat& dst, Stream& stream =
Stream::Null());
571 CV_EXPORTS
void lshift(
const GpuMat& src, Scalar_<int> sc, GpuMat& dst, Stream& stream =
Stream::Null());
574 CV_EXPORTS
void min(
const GpuMat& src1,
const GpuMat& src2, GpuMat& dst, Stream& stream =
Stream::Null());
577 CV_EXPORTS
void min(
const GpuMat& src1,
double src2, GpuMat& dst, Stream& stream =
Stream::Null());
580 CV_EXPORTS
void max(
const GpuMat& src1,
const GpuMat& src2, GpuMat& dst, Stream& stream =
Stream::Null());
583 CV_EXPORTS
void max(
const GpuMat& src1,
double src2, GpuMat& dst, Stream& stream =
Stream::Null());
590 CV_EXPORTS
void alphaComp(
const GpuMat& img1,
const GpuMat& img2, GpuMat& dst,
int alpha_op, Stream& stream =
Stream::Null());
597 CV_EXPORTS
void remap(
const GpuMat& src, GpuMat& dst,
const GpuMat& xmap,
const GpuMat& ymap,
607 CV_EXPORTS
void meanShiftProc(
const GpuMat& src, GpuMat& dstr, GpuMat& dstsp,
int sp,
int sr,
648 CV_EXPORTS
void demosaicing(
const GpuMat& src, GpuMat& dst,
int code,
int dcn = -1, Stream& stream =
Stream::Null());
661 CV_EXPORTS
double threshold(
const GpuMat& src, GpuMat& dst,
double thresh,
double maxval,
int type, Stream& stream =
Stream::Null());
683 GpuMat& map_x, GpuMat& map_y, Stream& stream =
Stream::Null());
687 GpuMat& map_x, GpuMat& map_y, Stream& stream =
Stream::Null());
691 GpuMat& map_x, GpuMat& map_y, Stream& stream =
Stream::Null());
696 CV_EXPORTS
void rotate(
const GpuMat& src, GpuMat& dst,
Size dsize,
double angle,
double xShift = 0,
double yShift = 0,
716 CV_EXPORTS
void columnSum(
const GpuMat& src, GpuMat& sum);
725 CV_EXPORTS
void cornerHarris(
const GpuMat& src, GpuMat& dst, GpuMat& Dx, GpuMat& Dy,
int blockSize,
int ksize,
double k,
int borderType =
BORDER_REFLECT101);
726 CV_EXPORTS
void cornerHarris(
const GpuMat& src, GpuMat& dst, GpuMat& Dx, GpuMat& Dy, GpuMat& buf,
int blockSize,
int ksize,
double k,
732 CV_EXPORTS
void cornerMinEigenVal(
const GpuMat& src, GpuMat& dst, GpuMat& Dx, GpuMat& Dy, GpuMat& buf,
int blockSize,
int ksize,
741 CV_EXPORTS
void mulAndScaleSpectrums(
const GpuMat& a,
const GpuMat& b, GpuMat& c,
int flags,
float scale,
bool conjB=
false, Stream& stream =
Stream::Null());
754 CV_EXPORTS
void dft(
const GpuMat& src, GpuMat& dst,
Size dft_size,
int flags=0, Stream& stream =
Stream::Null());
768 static Size estimateBlockSize(
Size result_size,
Size templ_size);
840 explicit CannyBuf(
const Size& image_size,
int apperture_size = 3) {create(image_size, apperture_size);}
844 CV_EXPORTS
void Canny(
const GpuMat& image, GpuMat&
edges,
double low_thresh,
double high_thresh,
int apperture_size = 3,
bool L2gradient =
false);
845 CV_EXPORTS
void Canny(
const GpuMat& image,
CannyBuf& buf, GpuMat&
edges,
double low_thresh,
double high_thresh,
int apperture_size = 3,
bool L2gradient =
false);
846 CV_EXPORTS
void Canny(
const GpuMat& dx,
const GpuMat& dy, GpuMat&
edges,
double low_thresh,
double high_thresh,
bool L2gradient =
false);
847 CV_EXPORTS
void Canny(
const GpuMat& dx,
const GpuMat& dy,
CannyBuf& buf, GpuMat&
edges,
double low_thresh,
double high_thresh,
bool L2gradient =
false);
855 build(img, nLayers, stream);
871 std::vector<GpuMat> pyramid_;
902 CV_EXPORTS
void HoughCircles(
const GpuMat& src,
GpuMat& circles,
int method,
float dp,
float minDist,
int cannyThreshold,
int votesThreshold,
int minRadius,
int maxRadius,
int maxCircles = 4096);
903 CV_EXPORTS
void HoughCircles(
const GpuMat& src,
GpuMat& circles,
HoughCirclesBuf& buf,
int method,
float dp,
float minDist,
int cannyThreshold,
int votesThreshold,
int minRadius,
int maxRadius,
int maxCircles = 4096);
917 void setTemplate(
const GpuMat& templ,
int cannyThreshold = 100,
Point templCenter =
Point(-1, -1));
921 void detect(
const GpuMat& image,
GpuMat& positions,
int cannyThreshold = 100);
931 virtual void releaseImpl() = 0;
1000 const Mat& camera_mat,
const Mat& dist_coef,
GpuMat& dst,
1004 const Mat& dist_coef,
Mat& rvec,
Mat& tvec,
bool use_extrinsic_guess=
false,
1005 int num_iters=100,
float max_dist=8.0,
int min_inlier_count=100,
1006 std::vector<int>* inliers=NULL);
1078 enum { BASIC_PRESET = 0, PREFILTER_XSOBEL = 1 };
1080 enum { DEFAULT_NDISP = 64, DEFAULT_WINSZ = 19 };
1085 StereoBM_GPU(
int preset,
int ndisparities = DEFAULT_NDISP,
int winSize = DEFAULT_WINSZ);
1094 static bool checkIfGpuCallReasonable();
1107 GpuMat minSSD, leBuf, riBuf;
1117 enum { DEFAULT_NDISP = 64 };
1118 enum { DEFAULT_ITERS = 5 };
1119 enum { DEFAULT_LEVELS = 5 };
1121 static void estimateRecommendedParams(
int width,
int height,
int& ndisp,
int& iters,
int& levels);
1125 int iters = DEFAULT_ITERS,
1126 int levels = DEFAULT_LEVELS,
1127 int msg_type = CV_32F);
1136 float max_data_term,
float data_weight,
1137 float max_disc_term,
float disc_single_jump,
1138 int msg_type = CV_32F);
1161 std::vector<GpuMat> datas;
1173 enum { DEFAULT_NDISP = 128 };
1174 enum { DEFAULT_ITERS = 8 };
1175 enum { DEFAULT_LEVELS = 4 };
1176 enum { DEFAULT_NR_PLANE = 4 };
1178 static void estimateRecommendedParams(
int width,
int height,
int& ndisp,
int& iters,
int& levels,
int& nr_plane);
1182 int iters = DEFAULT_ITERS,
1183 int levels = DEFAULT_LEVELS,
1184 int nr_plane = DEFAULT_NR_PLANE,
1185 int msg_type = CV_32F);
1191 float max_data_term,
float data_weight,
float max_disc_term,
float disc_single_jump,
1192 int min_disp_th = 0,
1193 int msg_type = CV_32F);
1231 enum { DEFAULT_NDISP = 64 };
1232 enum { DEFAULT_RADIUS = 3 };
1233 enum { DEFAULT_ITERS = 1 };
1252 float edge_threshold;
1253 float max_disc_threshold;
1267 vector<double> part_scores[4];
1272 enum { DEFAULT_WIN_SIGMA = -1 };
1273 enum { DEFAULT_NLEVELS = 64 };
1278 int nbins=9,
double win_sigma=DEFAULT_WIN_SIGMA,
1279 double threshold_L2hys=0.2,
bool gamma_correction=
true,
1280 int nlevels=DEFAULT_NLEVELS);
1282 size_t getDescriptorSize()
const;
1283 size_t getBlockHistogramSize()
const;
1285 void setSVMDetector(
const vector<float>&
detector);
1287 static vector<float> getDefaultPeopleDetector();
1288 static vector<float> getPeopleDetector48x96();
1289 static vector<float> getPeopleDetector64x128();
1291 void detect(
const GpuMat& img, vector<Point>& found_locations,
1292 double hit_threshold=0,
Size win_stride=
Size(),
1295 void detectMultiScale(
const GpuMat& img, vector<Rect>& found_locations,
1296 double hit_threshold=0,
Size win_stride=
Size(),
1297 Size padding=
Size(),
double scale0=1.05,
1298 int group_threshold=2);
1300 void computeConfidence(
const GpuMat& img, vector<Point>& hits,
double hit_threshold,
1301 Size win_stride,
Size padding, vector<Point>&
locations, vector<double>& confidences);
1303 void computeConfidenceMultiScale(
const GpuMat& img, vector<Rect>& found_locations,
1304 double hit_threshold,
Size win_stride,
Size padding,
1305 vector<HOGConfidence> &conf_out,
int group_threshold);
1307 void getDescriptors(
const GpuMat& img,
Size win_stride,
1309 int descr_format=DESCR_FORMAT_COL_BY_COL);
1322 void computeBlockHistograms(
const GpuMat& img);
1325 double getWinSigma()
const;
1326 bool checkDetectorSize()
const;
1328 static int numPartsWithin(
int size,
int part_size,
int stride);
1363 void add(
const std::vector<GpuMat>& descCollection);
1366 const std::vector<GpuMat>& getTrainDescriptors()
const;
1375 bool isMaskSupported()
const;
1378 void matchSingle(
const GpuMat& query,
const GpuMat& train,
1383 static void matchDownload(
const GpuMat& trainIdx,
const GpuMat& distance, std::vector<DMatch>& matches);
1385 static void matchConvert(
const Mat& trainIdx,
const Mat& distance, std::vector<DMatch>& matches);
1391 void makeGpuCollection(
GpuMat& trainCollection,
GpuMat& maskCollection,
const std::vector<GpuMat>& masks = std::vector<GpuMat>());
1394 void matchCollection(
const GpuMat& query,
const GpuMat& trainCollection,
1399 static void matchDownload(
const GpuMat& trainIdx,
const GpuMat& imgIdx,
const GpuMat& distance, std::vector<DMatch>& matches);
1401 static void matchConvert(
const Mat& trainIdx,
const Mat& imgIdx,
const Mat& distance, std::vector<DMatch>& matches);
1404 void match(
const GpuMat& query, std::vector<DMatch>& matches,
const std::vector<GpuMat>& masks = std::vector<GpuMat>());
1407 void knnMatchSingle(
const GpuMat& query,
const GpuMat& train,
1415 static void knnMatchDownload(
const GpuMat& trainIdx,
const GpuMat& distance,
1416 std::vector< std::vector<DMatch> >& matches,
bool compactResult =
false);
1418 static void knnMatchConvert(
const Mat& trainIdx,
const Mat& distance,
1419 std::vector< std::vector<DMatch> >& matches,
bool compactResult =
false);
1425 void knnMatch(
const GpuMat& query,
const GpuMat& train,
1426 std::vector< std::vector<DMatch> >& matches,
int k,
const GpuMat& mask =
GpuMat(),
1427 bool compactResult =
false);
1430 void knnMatch2Collection(
const GpuMat& query,
const GpuMat& trainCollection,
1438 static void knnMatch2Download(
const GpuMat& trainIdx,
const GpuMat& imgIdx,
const GpuMat& distance,
1439 std::vector< std::vector<DMatch> >& matches,
bool compactResult =
false);
1441 static void knnMatch2Convert(
const Mat& trainIdx,
const Mat& imgIdx,
const Mat& distance,
1442 std::vector< std::vector<DMatch> >& matches,
bool compactResult =
false);
1448 void knnMatch(
const GpuMat& query, std::vector< std::vector<DMatch> >& matches,
int k,
1449 const std::vector<GpuMat>& masks = std::vector<GpuMat>(),
bool compactResult =
false);
1458 void radiusMatchSingle(
const GpuMat& query,
const GpuMat& train,
1467 static void radiusMatchDownload(
const GpuMat& trainIdx,
const GpuMat& distance,
const GpuMat& nMatches,
1468 std::vector< std::vector<DMatch> >& matches,
bool compactResult =
false);
1470 static void radiusMatchConvert(
const Mat& trainIdx,
const Mat& distance,
const Mat& nMatches,
1471 std::vector< std::vector<DMatch> >& matches,
bool compactResult =
false);
1475 void radiusMatch(
const GpuMat& query,
const GpuMat& train,
1476 std::vector< std::vector<DMatch> >& matches,
float maxDistance,
1477 const GpuMat& mask =
GpuMat(),
bool compactResult =
false);
1484 const std::vector<GpuMat>& masks = std::vector<GpuMat>(),
Stream& stream =
Stream::Null());
1491 static void radiusMatchDownload(
const GpuMat& trainIdx,
const GpuMat& imgIdx,
const GpuMat& distance,
const GpuMat& nMatches,
1492 std::vector< std::vector<DMatch> >& matches,
bool compactResult =
false);
1494 static void radiusMatchConvert(
const Mat& trainIdx,
const Mat& imgIdx,
const Mat& distance,
const Mat& nMatches,
1495 std::vector< std::vector<DMatch> >& matches,
bool compactResult =
false);
1499 void radiusMatch(
const GpuMat& query, std::vector< std::vector<DMatch> >& matches,
float maxDistance,
1500 const std::vector<GpuMat>& masks = std::vector<GpuMat>(),
bool compactResult =
false);
1505 std::vector<GpuMat> trainDescCollection;
1508 template <
class Distance>
1511 template <
typename T>
1518 template <
typename T>
1548 bool load(
const std::string& filename);
1552 int detectMultiScale(
const GpuMat& image,
GpuMat& objectsBuf,
double scaleFactor = 1.2,
int minNeighbors = 4,
Size minSize =
Size());
1553 int detectMultiScale(
const GpuMat& image,
GpuMat& objectsBuf,
Size maxObjectSize,
Size minSize =
Size(),
double scaleFactor = 1.1,
int minNeighbors = 4);
1558 Size getClassifierSize()
const;
1561 struct CascadeClassifierImpl;
1562 CascadeClassifierImpl* impl;
1565 friend class CascadeClassifier_GPU_LBP;
1581 static const int FEATURE_SIZE = 7;
1583 explicit FAST_GPU(
int threshold,
bool nonmaxSuppression =
true,
double keypointsRatio = 0.05);
1591 void downloadKeypoints(
const GpuMat& d_keypoints, std::vector<KeyPoint>&
keypoints);
1594 void convertKeypoints(
const Mat& h_keypoints, std::vector<KeyPoint>&
keypoints);
1608 int calcKeyPointsLocation(
const GpuMat& image,
const GpuMat& mask);
1642 DEFAULT_FAST_THRESHOLD = 20
1646 explicit ORB_GPU(
int nFeatures = 500,
float scaleFactor = 1.2
f,
int nLevels = 8,
int edgeThreshold = 31,
1647 int firstLevel = 0,
int WTA_K = 2,
int scoreType = 0,
int patchSize = 31);
1665 void downloadKeyPoints(
GpuMat& d_keypoints, std::vector<KeyPoint>&
keypoints);
1668 void convertKeyPoints(
Mat& d_keypoints, std::vector<KeyPoint>&
keypoints);
1676 fastDetector_.nonmaxSuppression = nonmaxSuppression;
1686 enum { kBytes = 32 };
1688 void buildScalePyramids(
const GpuMat& image,
const GpuMat& mask);
1690 void computeKeyPointsPyramid();
1706 std::vector<size_t> n_features_per_level_;
1711 std::vector<GpuMat> imagePyr_;
1712 std::vector<GpuMat> maskPyr_;
1716 std::vector<GpuMat> keyPointsPyr_;
1717 std::vector<int> keyPointsCount_;
1731 BroxOpticalFlow(
float alpha_,
float gamma_,
float scale_factor_,
int inner_iterations_,
int outer_iterations_,
int solver_iterations_) :
1732 alpha(alpha_), gamma(gamma_), scale_factor(scale_factor_),
1733 inner_iterations(inner_iterations_), outer_iterations(outer_iterations_), solver_iterations(solver_iterations_)
1769 int blockSize = 3,
bool useHarrisDetector =
false,
double harrisK = 0.04);
1788 minMaxbuf_.release();
1789 tmpCorners_.release();
1802 int blockSize_,
bool useHarrisDetector_,
double harrisK_)
1807 blockSize = blockSize_;
1823 void releaseMemory();
1835 vector<GpuMat> prevPyr_;
1836 vector<GpuMat> nextPyr_;
1838 vector<GpuMat> buf_;
1839 vector<GpuMat> unused;
1840 bool isDeviceArch11_;
1851 fastPyramids =
false;
1873 frames_[0].release();
1874 frames_[1].release();
1875 pyrLevel_[0].release();
1876 pyrLevel_[1].release();
1881 blurredFrame_[0].release();
1882 blurredFrame_[1].release();
1888 void prepareGaussian(
1889 int n,
double sigma,
float *
g,
float *xg,
float *xxg,
1890 double &ig11,
double &ig03,
double &ig33,
double &ig55);
1892 void setPolynomialExpansionConsts(
int n,
double sigma);
1894 void updateFlow_boxFilter(
1898 void updateFlow_gaussianBlur(
1903 GpuMat pyrLevel_[2], M_, bufM_, R_[2], blurredFrame_[2];
1904 std::vector<GpuMat> pyramid0_, pyramid1_;
1906 bool isDeviceArch11_;
1922 void collectGarbage();
1974 std::vector<GpuMat> I0s;
1975 std::vector<GpuMat> I1s;
1976 std::vector<GpuMat> u1s;
1977 std::vector<GpuMat> u2s;
2101 std::auto_ptr<Impl> impl_;
2120 void initialize(
Size frameSize,
int frameType);
2163 void initialize(
Size frameSize,
int frameType);
2239 GpuMat bgmodelUsedModes_;
2260 void initialize(
Size frameSize,
float min = 0.0
f,
float max = 255.0
f);
2299 float maxVal_, minVal_;
2344 void open(
const std::string& fileName,
cv::Size frameSize,
double fps, SurfaceFormat
format = SF_BGR);
2345 void open(
const std::string& fileName,
cv::Size frameSize,
double fps,
const EncoderParams&
params, SurfaceFormat
format = SF_BGR);
2349 bool isOpened()
const;
2379 void load(
const std::string& configFile);
2380 void save(
const std::string& configFile)
const;
2399 virtual uchar* acquireBitStream(
int* bufferSize) = 0;
2402 virtual void releaseBitStream(
unsigned char*
data,
int size) = 0;
2405 virtual void onBeginFrame(
int frameNumber, PicType picType) = 0;
2408 virtual void onEndFrame(
int frameNumber, PicType picType) = 0;
2416 std::auto_ptr<Impl> impl_;
2442 Uncompressed_YUV420 = ((
'I'<<24)|(
'Y'<<16)|(
'U'<<8)|(
'V')),
2443 Uncompressed_YV12 = ((
'Y'<<24)|(
'V'<<16)|(
'1'<<8)|(
'2')),
2444 Uncompressed_NV12 = ((
'N'<<24)|(
'V'<<16)|(
'1'<<8)|(
'2')),
2445 Uncompressed_YUYV = ((
'Y'<<24)|(
'U'<<16)|(
'Y'<<8)|(
'V')),
2446 Uncompressed_UYVY = ((
'U'<<24)|(
'Y'<<16)|(
'V'<<8)|(
'Y'))
2473 void open(
const std::string&
filename);
2475 bool isOpened()
const;
2482 void dumpFormat(std::ostream& st);
2491 virtual void start() = 0;
2492 virtual void stop() = 0;
2493 virtual bool isStarted()
const = 0;
2494 virtual bool hasError()
const = 0;
2496 void setFrameQueue(detail::FrameQueue* frameQueue) { frameQueue_ = frameQueue; }
2497 void setVideoParser(detail::VideoParser* videoParser) { videoParser_ = videoParser; }
2500 bool parseVideoData(
const uchar*
data,
size_t size,
bool endOfStream =
false);
2506 detail::FrameQueue* frameQueue_;
2507 detail::VideoParser* videoParser_;
2515 std::auto_ptr<Impl> impl_;
CV_EXPORTS void minMaxLoc(const GpuMat &src, double *minVal, double *maxVal=0, Point *minLoc=0, Point *maxLoc=0, const GpuMat &mask=GpuMat())
finds global minimum and maximum array elements and returns their values with locations ...
CV_EXPORTS void solvePnPRansac(const Mat &object, const Mat &image, const Mat &camera_mat, const Mat &dist_coef, Mat &rvec, Mat &tvec, bool use_extrinsic_guess=false, int num_iters=100, float max_dist=8.0, int min_inlier_count=100, std::vector< int > *inliers=NULL)
CvArr CvPoint2D32f double M
Definition: imgproc_c.h:186
GpuMat map
Definition: gpu.hpp:834
float backgroundRatio
Definition: gpu.hpp:2191
Point2i Point
Definition: core.hpp:893
const CvArr CvArr CvArr const CvPoint2D32f CvPoint2D32f int CvSize int char * status
Definition: tracking.hpp:73
int AvgBitrate
Definition: gpu.hpp:2360
GLsizei GLsizei GLchar * source
CV_EXPORTS void buildWarpPerspectiveMaps(const Mat &M, bool inverse, Size dsize, GpuMat &xmap, GpuMat &ymap, Stream &stream=Stream::Null())
CvArr * edges
Definition: imgproc_c.h:555
int ClearStat
Definition: gpu.hpp:2369
CV_EXPORTS void compare(const GpuMat &a, const GpuMat &b, GpuMat &c, int cmpop, Stream &stream=Stream::Null())
compares elements of two arrays (c = a b)
CV_EXPORTS void erode(const GpuMat &src, GpuMat &dst, const Mat &kernel, Point anchor=Point(-1,-1), int iterations=1)
erodes the image (applies the local minimum operator)
CV_EXPORTS void sqrt(const GpuMat &src, GpuMat &dst, Stream &stream=Stream::Null())
GLenum GLint GLint y
Definition: core_c.h:613
int ndisp
Definition: gpu.hpp:1097
virtual CV_WRAP void apply(InputArray src, OutputArray dst)=0
double polySigma
Definition: gpu.hpp:1866
CV_EXPORTS void exp(const GpuMat &a, GpuMat &b, Stream &stream=Stream::Null())
int levels
Definition: gpu.hpp:1151
CV_EXPORTS Ptr< BaseFilter_GPU > getMinFilter_GPU(int srcType, int dstType, const Size &ksize, Point anchor=Point(-1,-1))
returns minimum filter
virtual ~VideoSource()
Definition: gpu.hpp:2488
CV_EXPORTS Ptr< BaseFilter_GPU > getMaxFilter_GPU(int srcType, int dstType, const Size &ksize, Point anchor=Point(-1,-1))
returns maximum filter
IplImage CvRect * roi
Definition: legacy.hpp:234
GLdouble GLdouble GLdouble GLdouble top
Termination criteria in iterative algorithms.
Definition: core.hpp:2091
float gamma
gradient constancy importance
Definition: gpu.hpp:1748
GLenum GLenum GLuint components
float avergeTexThreshold
Definition: gpu.hpp:1104
CV_EXPORTS void LUT(const GpuMat &src, const Mat &lut, GpuMat &dst, Stream &stream=Stream::Null())
CV_EXPORTS void HoughLinesDownload(const GpuMat &d_lines, OutputArray h_lines, OutputArray h_votes=noArray())
float disc_single_jump
Definition: gpu.hpp:1209
CvArr const CvArr * lut
Definition: core_c.h:1439
CV_EXPORTS void pow(const GpuMat &src, double power, GpuMat &dst, Stream &stream=Stream::Null())
computes power of each matrix element:
bool useInitialFlow
Definition: gpu.hpp:1969
double pyrScale
Definition: gpu.hpp:1861
const char const char ** filename
Definition: core_c.h:1750
float fVarMax
Definition: gpu.hpp:2207
Codec
Definition: gpu.hpp:2431
int depth
Definition: core_c.h:73
CV_EXPORTS void addWeighted(const GpuMat &src1, double alpha, const GpuMat &src2, double beta, double gamma, GpuMat &dst, int dtype=-1, Stream &stream=Stream::Null())
computes the weighted sum of two arrays (dst = alpha*src1 + beta*src2 + gamma)
int flags
Definition: gpu.hpp:1867
int iters
Definition: gpu.hpp:1150
int double fps
Definition: highgui_c.h:598
float fVarMin
Definition: gpu.hpp:2206
float alpha2
Definition: gpu.hpp:2065
CV_EXPORTS void max(const GpuMat &src1, const GpuMat &src2, GpuMat &dst, Stream &stream=Stream::Null())
computes per-element maximum of two arrays (dst = max(src1, src2))
float varThreshold
Definition: gpu.hpp:2132
CV_EXPORTS void createOpticalFlowNeedleMap(const GpuMat &u, const GpuMat &v, GpuMat &vertex, GpuMat &colors)
bool visualizeInPlace
Definition: gpu.hpp:1556
int rows
Definition: gpu.hpp:124
DistType
Definition: gpu.hpp:1358
int nr_plane
Definition: gpu.hpp:1204
float varThreshold
Definition: gpu.hpp:2181
CV_EXPORTS void warpAffine(const GpuMat &src, GpuMat &dst, const Mat &M, Size dsize, int flags=INTER_LINEAR, int borderMode=BORDER_CONSTANT, Scalar borderValue=Scalar(), Stream &stream=Stream::Null())
int msg_type
Definition: gpu.hpp:1158
const CvArr CvArr * fgmask
Definition: legacy.hpp:3418
int ksize
Definition: gpu.hpp:208
const CvArr CvSize CvSize CvSize int use_previous
Definition: legacy.hpp:3127
BaseRowFilter_GPU(int ksize_, int anchor_)
Definition: gpu.hpp:205
CV_EXPORTS void reprojectImageTo3D(const GpuMat &disp, GpuMat &xyzw, const Mat &Q, int dst_cn=4, Stream &stream=Stream::Null())
float data_weight
Definition: gpu.hpp:1207
CV_EXPORTS void min(const GpuMat &src1, const GpuMat &src2, GpuMat &dst, Stream &stream=Stream::Null())
computes per-element minimum of two arrays (dst = min(src1, src2))
float fTau
Definition: gpu.hpp:2222
int ndisp
Definition: gpu.hpp:1148
Size2i Size
Definition: core.hpp:896
void int double dp
Definition: imgproc_c.h:608
CV_EXPORTS Ptr< BaseFilter_GPU > getBoxFilter_GPU(int srcType, int dstType, const Size &ksize, Point anchor=Point(-1,-1))
const CvArr * curr
Definition: legacy.hpp:3123
CV_EXPORTS void equalizeHist(const GpuMat &src, GpuMat &dst, Stream &stream=Stream::Null())
normalizes the grayscale image brightness and contrast by normalizing its histogram ...
uchar * data
Definition: gpu.hpp:127
float delta
Definition: gpu.hpp:2068
CV_EXPORTS void rshift(const GpuMat &src, Scalar_< int > sc, GpuMat &dst, Stream &stream=Stream::Null())
CV_EXPORTS Ptr< BaseColumnFilter_GPU > getColumnSumFilter_GPU(int sumType, int dstType, int ksize, int anchor=-1)
int DeblockMode
Definition: gpu.hpp:2365
CV_EXPORTS_W Scalar mean(InputArray src, InputArray mask=noArray())
computes mean value of selected array elements
int history
Definition: gpu.hpp:2131
int descriptorSize() const
returns the descriptor size in bytes
Definition: gpu.hpp:1671
int inner_iterations
number of lagged non-linearity iterations (inner loop)
Definition: gpu.hpp:1754
Ptr< FilterEngine_GPU > filterDY
Definition: gpu.hpp:837
double theta
Definition: gpu.hpp:1943
CV_EXPORTS void integralBuffered(const GpuMat &src, GpuMat &sum, GpuMat &buffer, Stream &stream=Stream::Null())
buffered version
CannyBuf cannyBuf
Definition: gpu.hpp:899
CV_EXPORTS void abs(const GpuMat &src, GpuMat &dst, Stream &stream=Stream::Null())
const int * idx
Definition: core_c.h:323
uchar * dataend
Definition: gpu.hpp:131
BruteForceMatcher_GPU()
Definition: gpu.hpp:1515
const CvArr * src1
Definition: core_c.h:436
int warps
Definition: gpu.hpp:1956
Size block_size
Definition: gpu.hpp:759
CvSize size
Definition: calib3d.hpp:212
int Presets
Definition: gpu.hpp:2371
OutputArray OutputArray sqsum
Definition: imgproc.hpp:620
CV_EXPORTS void calcWobbleSuppressionMaps(int left, int idx, int right, Size size, const Mat &ml, const Mat &mr, GpuMat &mapx, GpuMat &mapy)
GpuMat templf
Definition: gpu.hpp:781
GpuMat buf
Definition: gpu.hpp:1762
CV_EXPORTS void blendLinear(const GpuMat &img1, const GpuMat &img2, const GpuMat &weights1, const GpuMat &weights2, GpuMat &result, Stream &stream=Stream::Null())
cv::gpu::GpuMat background
Definition: gpu.hpp:2089
float max_disc_term
Definition: gpu.hpp:1208
GLuint src
Definition: core_c.h:1650
void int double rho
Definition: imgproc_c.h:603
CV_EXPORTS void meanShiftSegmentation(const GpuMat &src, Mat &dst, int sp, int sr, int minsize, TermCriteria criteria=TermCriteria(TermCriteria::MAX_ITER+TermCriteria::EPS, 5, 1))
Does mean shift segmentation with elimination of small regions.
int int int flags
Definition: highgui_c.h:186
CV_EXPORTS Scalar sqrSum(const GpuMat &src)
CV_EXPORTS Ptr< cv::gpu::CLAHE > createCLAHE(double clipLimit=40.0, Size tileGridSize=Size(8, 8))
CV_EXPORTS void cvtColor(const GpuMat &src, GpuMat &dst, int code, int dcn=0, Stream &stream=Stream::Null())
converts image from one color space to another
The class implements the following algorithm: "Improved adaptive Gausian mixture model for background...
Definition: gpu.hpp:2156
int smoothingRadius
Smoothing radius, in pixels, for cleaning up FG image.
Definition: gpu.hpp:2293
const CvArr CvSize CvArr CvArr * vely
Definition: legacy.hpp:3123
GLsizei GLsizei GLenum GLenum const GLvoid * data
Definition: core_c.h:403
int d
Definition: legacy.hpp:3064
CV_EXPORTS void cornerHarris(const GpuMat &src, GpuMat &dst, int blockSize, int ksize, double k, int borderType=BORDER_REFLECT101)
computes Harris cornerness criteria at each image pixel
float scale_factor
pyramid scale factor
Definition: gpu.hpp:1751
CannyBuf()
Definition: gpu.hpp:839
CvRect r
Definition: core_c.h:1282
const CvMat const CvMat const CvMat CvMat CvMat CvMat CvMat CvSize CvMat CvMat * T
Definition: calib3d.hpp:270
GLfloat angle
Definition: core_c.h:1297
Size block_size
Definition: gpu.hpp:1312
CV_EXPORTS void compactPoints(GpuMat &points0, GpuMat &points1, const GpuMat &mask)
removes points (CV_32FC2, single row matrix) with zero mask value
CV_EXPORTS void HoughCircles(const GpuMat &src, GpuMat &circles, int method, float dp, float minDist, int cannyThreshold, int votesThreshold, int minRadius, int maxRadius, int maxCircles=4096)
CV_EXPORTS void histEven(const GpuMat &src, GpuMat &hist, int histSize, int lowerLevel, int upperLevel, Stream &stream=Stream::Null())
double tau
Definition: gpu.hpp:1927
CV_EXPORTS Ptr< FilterEngine_GPU > createSeparableLinearFilter_GPU(int srcType, int dstType, const Mat &rowKernel, const Mat &columnKernel, const Point &anchor=Point(-1,-1), int rowBorderType=BORDER_DEFAULT, int columnBorderType=-1)
returns the separable linear filter engine
Gaussian Mixture-based Backbround/Foreground Segmentation Algorithm.
Definition: gpu.hpp:2113
The Base Class for Non-Separable 2D Filters.
Definition: gpu.hpp:231
float T
Definition: gpu.hpp:2069
int perform_morphing
Definition: gpu.hpp:2061
CV_EXPORTS void registerPageLocked(Mat &m)
void setFrameQueue(detail::FrameQueue *frameQueue)
Definition: gpu.hpp:2496
bool use_local_init_data_cost
Definition: gpu.hpp:1215
CvArr const CvMat * kernel
Definition: imgproc_c.h:89
CV_EXPORTS void sqr(const GpuMat &src, GpuMat &dst, Stream &stream=Stream::Null())
CV_EXPORTS void buildWarpPlaneMaps(Size src_size, Rect dst_roi, const Mat &K, const Mat &R, const Mat &T, float scale, GpuMat &map_x, GpuMat &map_y, Stream &stream=Stream::Null())
builds plane warping maps
const CvArr CvSize CvSize shift_size
Definition: legacy.hpp:3127
std::vector< GpuMat > images
Definition: gpu.hpp:782
CV_EXPORTS void absdiff(const GpuMat &a, const GpuMat &b, GpuMat &c, Stream &stream=Stream::Null())
computes element-wise absolute difference of two arrays (c = abs(a - b))
size_t step
Definition: gpu.hpp:125
CV_EXPORTS void bitwise_xor(const GpuMat &src1, const GpuMat &src2, GpuMat &dst, const GpuMat &mask=GpuMat(), Stream &stream=Stream::Null())
calculates per-element bit-wise "exclusive or" operation
CV_EXPORTS void transpose(const GpuMat &src1, GpuMat &dst, Stream &stream=Stream::Null())
int polyN
Definition: gpu.hpp:1865
CV_EXPORTS void buildWarpSphericalMaps(Size src_size, Rect dst_roi, const Mat &K, const Mat &R, float scale, GpuMat &map_x, GpuMat &map_y, Stream &stream=Stream::Null())
builds spherical warping maps
GLXDrawable GLXDrawable read
int QP_Level_Intra
Definition: gpu.hpp:2362
CV_EXPORTS void reduce(const GpuMat &mtx, GpuMat &vec, int dim, int reduceOp, int dtype=-1, Stream &stream=Stream::Null())
reduces a matrix to a vector
CV_EXPORTS void lshift(const GpuMat &src, Scalar_< int > sc, GpuMat &dst, Stream &stream=Stream::Null())
HoughCircles.
Definition: gpu.hpp:894
GpuMat templ_spect
Definition: gpu.hpp:764
virtual ~BaseColumnFilter_GPU()
Definition: gpu.hpp:221
int QP_Level_InterP
Definition: gpu.hpp:2363
GLenum GLsizei GLenum GLenum const GLvoid * image
Definition: highgui_c.h:230
const CvArr CvArr int method
Definition: imgproc_c.h:281
CV_EXPORTS void integral(const GpuMat &src, GpuMat &sum, Stream &stream=Stream::Null())
CV_EXPORTS_W void write(FileStorage &fs, const string &name, int value)
struct CV_EXPORTS CannyBuf
Definition: ocl.hpp:979
CV_EXPORTS void histRange(const GpuMat &src, GpuMat &hist, const GpuMat &levels, Stream &stream=Stream::Null())
CV_EXPORTS void merge(const GpuMat *src, size_t n, GpuMat &dst, Stream &stream=Stream::Null())
makes multi-channel array out of several single-channel arrays
Size winSize
Definition: gpu.hpp:1825
virtual ~BaseRowFilter_GPU()
Definition: gpu.hpp:206
DistType distType
Definition: gpu.hpp:1502
ImagePyramid(const GpuMat &img, int nLayers, Stream &stream=Stream::Null())
Definition: gpu.hpp:853
int winSize
Definition: gpu.hpp:1098
CvRect rect
Definition: core_c.h:100
void clear(const ColorA &color=ColorA::black(), bool clearDepthBuffer=true)
bool bShadowDetection
Definition: gpu.hpp:2220
CV_EXPORTS string format(const char *fmt,...)
CV_EXPORTS void pyrDown(const GpuMat &src, GpuMat &dst, Stream &stream=Stream::Null())
smoothes the source image and downsamples it
int threshold
Definition: gpu.hpp:1601
int numLevels
Definition: gpu.hpp:1860
float free_coef
Definition: gpu.hpp:1332
const CvPoint2D32f vertex[4]
Definition: legacy.hpp:1070
GoodFeaturesToTrackDetector_GPU(int maxCorners=1000, double qualityLevel=0.01, double minDistance=0.0, int blockSize=3, bool useHarrisDetector=false, double harrisK=0.04)
Definition: gpu.hpp:1801
CV_EXPORTS void gemm(const GpuMat &src1, const GpuMat &src2, double alpha, const GpuMat &src3, double beta, GpuMat &dst, int flags=0, Stream &stream=Stream::Null())
implements generalized matrix product algorithm GEMM from BLAS
The 2D size class.
Definition: core.hpp:81
bool is_obj_without_holes
Definition: gpu.hpp:2060
const CvMat const CvMat const CvMat CvSize const CvMat const CvMat CvMat * R1
Definition: calib3d.hpp:284
CV_EXPORTS void split(const GpuMat &src, GpuMat *dst, Stream &stream=Stream::Null())
copies each plane of a multi-channel array to a dedicated array
CV_EXPORTS Ptr< BaseRowFilter_GPU > getLinearRowFilter_GPU(int srcType, int bufType, const Mat &rowKernel, int anchor=-1, int borderType=BORDER_DEFAULT)
const CvArr const CvArr CvArr * result
Definition: core_c.h:805
typedef void(CV_CDECL *CvMouseCallback)(int event
CV_EXPORTS Ptr< FilterEngine_GPU > createMorphologyFilter_GPU(int op, int type, const Mat &kernel, const Point &anchor=Point(-1,-1), int iterations=1)
returns morphological filter engine. Only MORPH_ERODE and MORPH_DILATE are supported.
bool getMinEigenVals
Definition: gpu.hpp:1831
ImagePyramid()
Definition: gpu.hpp:852
CV_EXPORTS void buildWarpAffineMaps(const Mat &M, bool inverse, Size dsize, GpuMat &xmap, GpuMat &ymap, Stream &stream=Stream::Null())
CV_EXPORTS void magnitude(const GpuMat &xy, GpuMat &magnitude, Stream &stream=Stream::Null())
vector< double > confidences
Definition: gpu.hpp:1266
The Base Class for 1D or Row-wise Filters.
Definition: gpu.hpp:202
CvPoint2D32f double CvTermCriteria criteria
Definition: calib3d.hpp:65
int outer_iterations
number of warping iterations (number of pyramid levels)
Definition: gpu.hpp:1757
Size win_size
Definition: gpu.hpp:1311
CvArr const CvArr const CvArr * mapy
Definition: imgproc_c.h:176
CV_EXPORTS void morphologyEx(const GpuMat &src, GpuMat &dst, int op, const Mat &kernel, Point anchor=Point(-1,-1), int iterations=1)
applies an advanced morphological operation to the image
int ForceIntra
Definition: gpu.hpp:2367
CvPoint CvPoint void * buffer
Definition: imgproc_c.h:262
const CvArr CvSize CvSize CvSize max_range
Definition: legacy.hpp:3127
CV_EXPORTS void columnSum(const GpuMat &src, GpuMat &sum)
computes vertical sum, supports only CV_32FC1 images
int nbins
Definition: gpu.hpp:1315
float max_data_term
Definition: gpu.hpp:1206
GLint GLvoid * img
Definition: legacy.hpp:1150
int RCType
Definition: gpu.hpp:2359
float backgroundRatio
Definition: gpu.hpp:2133
CvMemStoragePos * pos
Definition: core_c.h:933
double harrisK
Definition: gpu.hpp:1780
double start
Definition: core_c.h:774
Definition: stream_accessor.hpp:57
SourceFileRef load(const DataSourceRef &dataSource, size_t sampleRate=0)
GpuMat list
Definition: gpu.hpp:880
CannyBuf(const Size &image_size, int apperture_size=3)
Definition: gpu.hpp:840
int N1c
Definition: gpu.hpp:2051
const CvArr CvArr double int levels
Definition: tracking.hpp:102
GpuMat qangle_buf
Definition: gpu.hpp:1343
CV_EXPORTS void Canny(const GpuMat &image, GpuMat &edges, double low_thresh, double high_thresh, int apperture_size=3, bool L2gradient=false)
float disc_single_jump
Definition: gpu.hpp:1156
CvArr const CvArr * mapx
Definition: imgproc_c.h:176
float decisionThreshold
Value above which pixel is determined to be FG.
Definition: gpu.hpp:2290
const CvArr const CvArr const CvArr * src3
Definition: core_c.h:436
Definition: gpumat.hpp:106
CV_EXPORTS void divide(const GpuMat &a, const GpuMat &b, GpuMat &c, double scale=1, int dtype=-1, Stream &stream=Stream::Null())
computes element-wise weighted quotient of the two arrays (c = a / b)
CV_EXPORTS void Scharr(const GpuMat &src, GpuMat &dst, int ddepth, int dx, int dy, double scale=1, int rowBorderType=BORDER_DEFAULT, int columnBorderType=-1)
applies the vertical or horizontal Scharr operator to the image
int PeakBitrate
Definition: gpu.hpp:2361
Size cell_size
Definition: gpu.hpp:1314
BruteForceMatcher_GPU(Hamming)
Definition: gpu.hpp:1529
float alpha
flow smoothness
Definition: gpu.hpp:1745
int alloc_type
Definition: gpu.hpp:133
float minEigThreshold
Definition: gpu.hpp:1830
CV_EXPORTS void pyrUp(const GpuMat &src, GpuMat &dst, Stream &stream=Stream::Null())
upsamples the source image and then smoothes it
CV_EXPORTS void gammaCorrection(const GpuMat &src, GpuMat &dst, bool forward=true, Stream &stream=Stream::Null())
Routines for correcting image color gamma.
float noiseSigma
Definition: gpu.hpp:2134
CV_EXPORTS void projectPoints(const GpuMat &src, const Mat &rvec, const Mat &tvec, const Mat &camera_mat, const Mat &dist_coef, GpuMat &dst, Stream &stream=Stream::Null())
int quantizationLevels
Number of discrete levels in each channel to be used in histograms.
Definition: gpu.hpp:2284
double lambda
Definition: gpu.hpp:1935
int maxFeatures
Total number of distinct colors to maintain in histogram.
Definition: gpu.hpp:2275
bool updateBackgroundModel
Perform background model update.
Definition: gpu.hpp:2296
bool nonmaxSuppression
Definition: gpu.hpp:1599
FarnebackOpticalFlow()
Definition: gpu.hpp:1847
PicType
Definition: gpu.hpp:2388
CV_EXPORTS void sepFilter2D(const GpuMat &src, GpuMat &dst, int ddepth, const Mat &kernelX, const Mat &kernelY, Point anchor=Point(-1,-1), int rowBorderType=BORDER_DEFAULT, int columnBorderType=-1)
applies separable 2D linear filter to the image
the desired accuracy or change in parameters at which the iterative algorithm stops ...
Definition: core.hpp:2098
const CvArr CvSeq ** keypoints
Definition: compat.hpp:647
CV_EXPORTS Ptr< FilterEngine_GPU > createFilter2D_GPU(const Ptr< BaseFilter_GPU > &filter2D, int srcType, int dstType)
returns the non-separable filter engine with the specified filter
CvArr const CvMat * Q
Definition: calib3d.hpp:365
CV_EXPORTS void meanStdDev(const GpuMat &mtx, Scalar &mean, Scalar &stddev)
void setFastParams(int threshold, bool nonmaxSuppression=true)
Definition: gpu.hpp:1673
int DisableCabac
Definition: gpu.hpp:2372
GLenum GLsizei GLsizei height
GLclampf GLclampf GLclampf alpha
Definition: core_c.h:687
int CvHistogram * hist
Definition: imgproc_c.h:440
CV_EXPORTS void cornerMinEigenVal(const GpuMat &src, GpuMat &dst, int blockSize, int ksize, int borderType=BORDER_REFLECT101)
computes minimum eigen value of 2x2 derivative covariation matrix at each pixel - the cornerness crit...
Size ksize
Definition: gpu.hpp:237
const CvMat const CvMat const CvMat CvMat CvMat CvMat CvMat CvSize CvMat * R
Definition: calib3d.hpp:270
CV_EXPORTS void filter2D(const GpuMat &src, GpuMat &dst, int ddepth, const Mat &kernel, Point anchor=Point(-1,-1), int borderType=BORDER_DEFAULT, Stream &stream=Stream::Null())
applies non-separable 2D linear filter to the image
void release()
Definition: gpu.hpp:862
CV_EXPORTS void HoughLines(const GpuMat &src, GpuMat &lines, float rho, float theta, int threshold, bool doSort=false, int maxLines=4096)
CV_EXPORTS void rectStdDev(const GpuMat &src, const GpuMat &sqr, GpuMat &dst, const Rect &rect, Stream &stream=Stream::Null())
float fCT
Definition: gpu.hpp:2214
float backgroundPrior
Prior probability that any given pixel is a background pixel. A sensitivity parameter.
Definition: gpu.hpp:2287
virtual ~BaseFilter_GPU()
Definition: gpu.hpp:235
CV_EXPORTS void boxFilter(const GpuMat &src, GpuMat &dst, int ddepth, Size ksize, Point anchor=Point(-1,-1), Stream &stream=Stream::Null())
Mat labels_host
Definition: gpu.hpp:1337
std::vector< GpuMat > image_sqsums
Definition: gpu.hpp:784
Fast (but approximate)version of non-local means algorith similar to CPU function (running sums techn...
Definition: gpu.hpp:812
CV_EXPORTS void unregisterPageLocked(Mat &m)
int nlevels
Definition: gpu.hpp:1319
CV_EXPORTS void interpolateFrames(const GpuMat &frame0, const GpuMat &frame1, const GpuMat &fu, const GpuMat &fv, const GpuMat &bu, const GpuMat &bv, float pos, GpuMat &newFrame, GpuMat &buf, Stream &stream=Stream::Null())
int iterations
Definition: gpu.hpp:1967
CV_EXPORTS Ptr< FilterEngine_GPU > createLinearFilter_GPU(int srcType, int dstType, const Mat &kernel, Point anchor=Point(-1,-1), int borderType=BORDER_DEFAULT)
returns the non-separable linear filter engine
Point anchor
Definition: gpu.hpp:238
bool gamma_correction
Definition: gpu.hpp:1318
GpuMat detector
Definition: gpu.hpp:1333
GpuMat block_hists_buf
Definition: gpu.hpp:1340
void int int uchar void * userData
Definition: legacy.hpp:78
CV_EXPORTS Ptr< BaseFilter_GPU > getMorphologyFilter_GPU(int op, int type, const Mat &kernel, const Size &ksize, Point anchor=Point(-1,-1))
CvArr int block_size
Definition: imgproc_c.h:566
Size dft_size
Definition: gpu.hpp:761
const CvMat CvMat CvMat int k
Definition: legacy.hpp:3052
Smart pointer for GPU memory with reference counting. Its interface is mostly similar with cv::Mat...
Definition: gpumat.hpp:154
GLenum GLint x
Definition: core_c.h:632
CV_EXPORTS void flip(const GpuMat &a, GpuMat &b, int flipCode, Stream &stream=Stream::Null())
CV_EXPORTS void bilateralFilter(const GpuMat &src, GpuMat &dst, int kernel_size, float sigma_color, float sigma_spatial, int borderMode=BORDER_DEFAULT, Stream &stream=Stream::Null())
Performa bilateral filtering of passsed image.
CV_EXPORTS void resize(const GpuMat &src, GpuMat &dst, Size dsize, double fx=0, double fy=0, int interpolation=INTER_LINEAR, Stream &stream=Stream::Null())
bool blurForDescriptor
if true, image will be blurred before descriptors calculation
Definition: gpu.hpp:1683
CV_EXPORTS Ptr< FilterEngine_GPU > createBoxFilter_GPU(int srcType, int dstType, const Size &ksize, const Point &anchor=Point(-1,-1))
returns box filter engine
CvOpenGlDrawCallback callback
Definition: highgui_c.h:256
CvArr double double sr
Definition: imgproc_c.h:125
Definition: features2d.hpp:1004
Definition: gpumat.hpp:71
CV_EXPORTS void minMax(const GpuMat &src, double *minVal, double *maxVal=0, const GpuMat &mask=GpuMat())
finds global minimum and maximum array elements and returns their values
CV_EXPORTS Ptr< BaseRowFilter_GPU > getRowSumFilter_GPU(int srcType, int sumType, int ksize, int anchor=-1)
bool findLargestObject
Definition: gpu.hpp:1555
bool useInitialFlow
Definition: gpu.hpp:1829
CV_EXPORTS void subtract(const GpuMat &a, const GpuMat &b, GpuMat &c, const GpuMat &mask=GpuMat(), int dtype=-1, Stream &stream=Stream::Null())
subtracts one matrix from another (c = a - b)
bool useHarrisDetector
Definition: gpu.hpp:1779
int levels
Definition: gpu.hpp:1202
BroxOpticalFlow(float alpha_, float gamma_, float scale_factor_, int inner_iterations_, int outer_iterations_, int solver_iterations_)
Definition: gpu.hpp:1731
int flags
Definition: gpu.hpp:123
int iters
Definition: gpu.hpp:1827
int blockSize
Definition: gpu.hpp:1778
virtual ~EncoderCallBack()
Definition: gpu.hpp:2395
void releaseMemory()
Definition: gpu.hpp:1871
void int double double theta
Definition: imgproc_c.h:603
int DynamicGOP
Definition: gpu.hpp:2358
CV_EXPORTS Ptr< BaseColumnFilter_GPU > getLinearColumnFilter_GPU(int bufType, int dstType, const Mat &columnKernel, int anchor=-1, int borderType=BORDER_DEFAULT)
GpuMat unused
Definition: gpu.hpp:836
uchar * datastart
Definition: gpu.hpp:130
CV_EXPORTS void add(const GpuMat &a, const GpuMat &b, GpuMat &c, const GpuMat &mask=GpuMat(), int dtype=-1, Stream &stream=Stream::Null())
adds one matrix to another (c = a + b)
const CvArr CvArr double int int int iterations
Definition: tracking.hpp:102
CV_EXPORTS void multiply(const GpuMat &a, const GpuMat &b, GpuMat &c, double scale=1, int dtype=-1, Stream &stream=Stream::Null())
computes element-wise weighted product of the two arrays (c = scale * a * b)
ChromaFormat
Definition: gpu.hpp:2449
int spect_len
Definition: gpu.hpp:762
double const CvArr double beta
Definition: core_c.h:523
int ForceIDR
Definition: gpu.hpp:2368
float alpha3
Definition: gpu.hpp:2066
GLboolean GLboolean GLboolean b
Definition: legacy.hpp:633
CV_EXPORTS Ptr< FilterEngine_GPU > createDerivFilter_GPU(int srcType, int dstType, int dx, int dy, int ksize, int rowBorderType=BORDER_DEFAULT, int columnBorderType=-1)
returns filter engine for the generalized Sobel operator
The n-dimensional matrix class.
Definition: core.hpp:1688
double epsilon
Definition: gpu.hpp:1962
double keypointsRatio
max keypoints = keypointsRatio * img.size().area()
Definition: gpu.hpp:1604
int IDR_Period
Definition: gpu.hpp:2357
int rows
Definition: core_c.h:114
BaseFilter_GPU(const Size &ksize_, const Point &anchor_)
Definition: gpu.hpp:234
int numInitializationFrames
Number of frames of video to use to initialize histograms.
Definition: gpu.hpp:2281
VideoSource()
Definition: gpu.hpp:2487
CV_EXPORTS int countNonZero(const GpuMat &src)
counts non-zero array elements
CV_EXPORTS void buildWarpCylindricalMaps(Size src_size, Rect dst_roi, const Mat &K, const Mat &R, float scale, GpuMat &map_x, GpuMat &map_y, Stream &stream=Stream::Null())
builds cylindrical warping maps
ditto
Definition: core.hpp:2097
const CvArr CvSeq CvSeq ** descriptors
Definition: compat.hpp:647
CvArr CvPoint2D32f double maxRadius
Definition: imgproc_c.h:191
GLsizei const GLfloat * value
Definition: core_c.h:341
CV_EXPORTS void graphcut(GpuMat &terminals, GpuMat &leftTransp, GpuMat &rightTransp, GpuMat &top, GpuMat &bottom, GpuMat &labels, GpuMat &buf, Stream &stream=Stream::Null())
performs labeling via graph cuts of a 2D regular 4-connected graph.
CvSize CvPoint2D32f * corners
Definition: calib3d.hpp:215
GpuMat accum
Definition: gpu.hpp:879
int nscales
Definition: gpu.hpp:1948
bilinear interpolation
Definition: imgproc.hpp:555
int solver_iterations
number of linear system solver iterations
Definition: gpu.hpp:1760
OutputArray OutputArray labels
Definition: imgproc.hpp:823
int maxCorners
Definition: gpu.hpp:1774
unsigned char nShadowDetection
Definition: gpu.hpp:2221
int Lcc
Definition: gpu.hpp:2055
int cols
Definition: core_c.h:109
CV_EXPORTS void matchTemplate(const GpuMat &image, const GpuMat &templ, GpuMat &result, int method, Stream &stream=Stream::Null())
computes the proximity map for the raster template and the image where the template is searched for ...
int maxLevel
Definition: gpu.hpp:1826
GLuint GLuint GLsizei GLenum type
Definition: core_c.h:114
void void * frame
Definition: core_c.h:1459
GLenum const GLfloat * params
Definition: compat.hpp:688
CV_EXPORTS void mulSpectrums(const GpuMat &a, const GpuMat &b, GpuMat &c, int flags, bool conjB=false, Stream &stream=Stream::Null())
const GLubyte * c
Definition: legacy.hpp:633
SurfaceFormat
Definition: gpu.hpp:2325
GpuMat edges
Definition: gpu.hpp:896
CV_EXPORTS void Sobel(const GpuMat &src, GpuMat &dst, int ddepth, int dx, int dy, int ksize=3, double scale=1, int rowBorderType=BORDER_DEFAULT, int columnBorderType=-1)
applies generalized Sobel operator to the image
int int type
Definition: core_c.h:109
float alpha1
Definition: gpu.hpp:2064
int int int int int int h
CV_EXPORTS void demosaicing(const GpuMat &src, GpuMat &dst, int code, int dcn=-1, Stream &stream=Stream::Null())
class CV_EXPORTS BruteForceMatcher_GPU
Definition: gpu.hpp:1509
CV_EXPORTS void labelComponents(const GpuMat &mask, GpuMat &components, int flags=0, Stream &stream=Stream::Null())
performs connected componnents labeling.
int int channels
Definition: core_c.h:73
float data_weight
Definition: gpu.hpp:1154
int N2c
Definition: gpu.hpp:2052
CV_EXPORTS void warpPerspective(const GpuMat &src, GpuMat &dst, const Mat &M, Size dsize, int flags=INTER_LINEAR, int borderMode=BORDER_CONSTANT, Scalar borderValue=Scalar(), Stream &stream=Stream::Null())
int N2cc
Definition: gpu.hpp:2057
template 2D point class.
Definition: core.hpp:82
int NaluFramingType
Definition: gpu.hpp:2373
BruteForceMatcher_GPU()
Definition: gpu.hpp:1522
CV_EXPORTS double norm(const GpuMat &src1, int normType=NORM_L2)
double win_sigma
Definition: gpu.hpp:1316
CvArr double sp
Definition: imgproc_c.h:125
std::vector< std::vector< cv::Point > > foreground_regions
Definition: gpu.hpp:2094
Definition: imgproc.hpp:62
int N1cc
Definition: gpu.hpp:2056
const CvArr CvSize win_size
Definition: legacy.hpp:3123
int DIMode
Definition: gpu.hpp:2370
CV_EXPORTS void HoughCirclesDownload(const GpuMat &d_circles, OutputArray h_circles)
Definition: imgproc.hpp:66
CV_EXPORTS void bitwise_or(const GpuMat &src1, const GpuMat &src2, GpuMat &dst, const GpuMat &mask=GpuMat(), Stream &stream=Stream::Null())
calculates per-element bit-wise disjunction of two arrays
int ksize
Definition: gpu.hpp:223
CvArr int code
Definition: imgproc_c.h:144
std::vector< GpuMat > image_scales
Definition: gpu.hpp:1349
GpuMat templ_block
Definition: gpu.hpp:765
GLboolean GLboolean GLboolean GLboolean a
Definition: legacy.hpp:633
int iters
Definition: gpu.hpp:1201
Definition: features2d.hpp:988
CV_EXPORTS Ptr< BaseFilter_GPU > getLinearFilter_GPU(int srcType, int dstType, const Mat &kernel, Point anchor=Point(-1,-1), int borderType=BORDER_DEFAULT)
Definition: imgproc.hpp:766
CV_EXPORTS void normalize(const GpuMat &src, GpuMat &dst, double alpha=1, double beta=0, int norm_type=NORM_L2, int dtype=-1, const GpuMat &mask=GpuMat())
scales and shifts array elements so that either the specified norm (alpha) or the minimum (alpha) and...
Base class for high-level OpenCV algorithms.
Definition: core.hpp:4390
const CvArr CvArr * disparity
Definition: calib3d.hpp:353
HoughLines.
Definition: gpu.hpp:877
CV_EXPORTS void connectivityMask(const GpuMat &image, GpuMat &mask, const cv::Scalar &lo, const cv::Scalar &hi, Stream &stream=Stream::Null())
compute mask for Generalized Flood fill componetns labeling.
GpuMat list
Definition: gpu.hpp:898
int numIters
Definition: gpu.hpp:1864
GLsizei const GLint * locations
CV_EXPORTS void dft(const GpuMat &src, GpuMat &dst, Size dft_size, int flags=0, Stream &stream=Stream::Null())
CV_EXPORTS void cartToPolar(const GpuMat &x, const GpuMat &y, GpuMat &magnitude, GpuMat &angle, bool angleInDegrees=false, Stream &stream=Stream::Null())
BruteForceMatcher_GPU(L2< T >)
Definition: gpu.hpp:1523
Size result_size
Definition: gpu.hpp:758
CV_EXPORTS void log(const GpuMat &a, GpuMat &b, Stream &stream=Stream::Null())
CV_EXPORTS void convolve(const GpuMat &image, const GpuMat &templ, GpuMat &result, bool ccorr=false)
int DisableSPSPPS
Definition: gpu.hpp:2374
CV_EXPORTS void drawColorDisp(const GpuMat &src_disp, GpuMat &dst_disp, int ndisp, Stream &stream=Stream::Null())
const CvMat CvSize image_size
Definition: calib3d.hpp:126
float learningRate
Set between 0.0 and 1.0, determines how quickly features are "forgotten" from histograms.
Definition: gpu.hpp:2278
GpuMat labels_buf
Definition: gpu.hpp:1336
The Base Class for Column-wise Filters.
Definition: gpu.hpp:217
unsigned char uchar
Definition: types_c.h:170
const CvArr CvSize CvArr * velx
Definition: legacy.hpp:3123
CV_EXPORTS void bitwise_and(const GpuMat &src1, const GpuMat &src2, GpuMat &dst, const GpuMat &mask=GpuMat(), Stream &stream=Stream::Null())
calculates per-element bit-wise conjunction of two arrays
GLenum GLsizei GLenum format
void setVideoParser(detail::VideoParser *videoParser)
Definition: gpu.hpp:2497
double const CvArr double double gamma
Definition: core_c.h:523
GLuint dst
Definition: calib3d.hpp:134
int P_Interval
Definition: gpu.hpp:2356
CV_EXPORTS void swapChannels(GpuMat &image, const int dstOrder[4], Stream &stream=Stream::Null())
cv::gpu::GpuMat foreground
Definition: gpu.hpp:2092
Size user_block_size
Definition: gpu.hpp:760
int winSize
Definition: gpu.hpp:1863
CV_EXPORTS double threshold(const GpuMat &src, GpuMat &dst, double thresh, double maxval, int type, Stream &stream=Stream::Null())
applies fixed threshold to the image
int msg_type
Definition: gpu.hpp:1213
void releaseMemory()
Definition: gpu.hpp:1782
CV_EXPORTS void polarToCart(const GpuMat &magnitude, const GpuMat &angle, GpuMat &x, GpuMat &y, bool angleInDegrees=false, Stream &stream=Stream::Null())
CV_EXPORTS Scalar sum(const GpuMat &src)
CV_EXPORTS void sqrIntegral(const GpuMat &src, GpuMat &sqsum, Stream &stream=Stream::Null())
CV_EXPORTS void calcOpticalFlowBM(const GpuMat &prev, const GpuMat &curr, Size block_size, Size shift_size, Size max_range, bool use_previous, GpuMat &velx, GpuMat &vely, GpuMat &buf, Stream &stream=Stream::Null())
Calculates optical flow for 2 images using block matching algorithm */.
GpuMat accum
Definition: gpu.hpp:897
CV_EXPORTS Scalar absSum(const GpuMat &src)
const CvArr * templ
Definition: imgproc_c.h:281
Smart pointer to dynamically allocated objects.
Definition: core.hpp:1268
CV_EXPORTS void phase(const GpuMat &x, const GpuMat &y, GpuMat &angle, bool angleInDegrees=false, Stream &stream=Stream::Null())
GLdouble GLdouble GLdouble bottom
CV_EXPORTS Ptr< FilterEngine_GPU > createGaussianFilter_GPU(int type, Size ksize, double sigma1, double sigma2=0, int rowBorderType=BORDER_DEFAULT, int columnBorderType=-1)
returns the Gaussian filter engine
bool fastPyramids
Definition: gpu.hpp:1862
int ndisp
Definition: gpu.hpp:1199
CV_EXPORTS void meanShiftProc(const GpuMat &src, GpuMat &dstr, GpuMat &dstsp, int sp, int sr, TermCriteria criteria=TermCriteria(TermCriteria::MAX_ITER+TermCriteria::EPS, 5, 1), Stream &stream=Stream::Null())
Does mean shift procedure on GPU.
GpuMat mag
Definition: gpu.hpp:833
CV_EXPORTS Ptr< FilterEngine_GPU > createSeparableFilter_GPU(const Ptr< BaseRowFilter_GPU > &rowFilter, const Ptr< BaseColumnFilter_GPU > &columnFilter, int srcType, int bufType, int dstType)
returns the separable filter engine with the specified filters
int ProfileLevel
Definition: gpu.hpp:2366
CvMat * points1
Definition: calib3d.hpp:117
float minArea
Definition: gpu.hpp:2070
Size block_stride
Definition: gpu.hpp:1313
CV_EXPORTS void magnitudeSqr(const GpuMat &xy, GpuMat &magnitude, Stream &stream=Stream::Null())
float fVarInit
Definition: gpu.hpp:2205
bool supports(FeatureSet feature_set) const
CV_EXPORTS void bitwise_not(const GpuMat &src, GpuMat &dst, const GpuMat &mask=GpuMat(), Stream &stream=Stream::Null())
performs per-elements bit-wise inversion
CvArr CvArr * temp
Definition: imgproc_c.h:242
CV_EXPORTS void remap(const GpuMat &src, GpuMat &dst, const GpuMat &xmap, const GpuMat &ymap, int interpolation, int borderMode=BORDER_CONSTANT, Scalar borderValue=Scalar(), Stream &stream=Stream::Null())
CV_EXPORTS void GaussianBlur(const GpuMat &src, GpuMat &dst, Size ksize, double sigma1, double sigma2=0, int rowBorderType=BORDER_DEFAULT, int columnBorderType=-1)
smooths the image using Gaussian filter.
CV_EXPORTS OutputArray noArray()
Definition: imgproc.hpp:64
GLenum GLenum GLenum GLenum GLenum scale
CV_EXPORTS void transformPoints(const GpuMat &src, const Mat &rvec, const Mat &tvec, GpuMat &dst, Stream &stream=Stream::Null())
CvArr double power
Definition: core_c.h:618
int preset
Definition: gpu.hpp:1096
CV_EXPORTS void mulAndScaleSpectrums(const GpuMat &a, const GpuMat &b, GpuMat &c, int flags, float scale, bool conjB=false, Stream &stream=Stream::Null())
int min_disp_th
Definition: gpu.hpp:1211
const CvArr const CvArr * src2
Definition: core_c.h:436
double scale
Definition: gpu.hpp:1264
virtual ~FilterEngine_GPU()
Definition: gpu.hpp:250
GLenum GLint GLuint mask
Definition: tracking.hpp:132
int QP_Level_InterB
Definition: gpu.hpp:2364
double qualityLevel
Definition: gpu.hpp:1775
BruteForceMatcher_GPU()
Definition: gpu.hpp:1528
CvPoint int radius
Definition: core_c.h:1290
float varThresholdGen
Definition: gpu.hpp:2198
BruteForceMatcher_GPU(L1< T >)
Definition: gpu.hpp:1516
CvLatentSvmDetector * detector
Definition: objdetect.hpp:270
BaseColumnFilter_GPU(int ksize_, int anchor_)
Definition: gpu.hpp:220
CV_EXPORTS void copyMakeBorder(const GpuMat &src, GpuMat &dst, int top, int bottom, int left, int right, int borderType, const Scalar &value=Scalar(), Stream &stream=Stream::Null())
copies 2D array to a larger destination array and pads borders with user-specifiable constant ...
CV_EXPORTS void calcHist(const GpuMat &src, GpuMat &hist, Stream &stream=Stream::Null())
CV_EXPORTS void alphaComp(const GpuMat &img1, const GpuMat &img2, GpuMat &dst, int alpha_op, Stream &stream=Stream::Null())
CV_EXPORTS void dilate(const GpuMat &src, GpuMat &dst, const Mat &kernel, Point anchor=Point(-1,-1), int iterations=1)
dilates the image (applies the local maximum operator)
float max_disc_term
Definition: gpu.hpp:1155
GLsizeiptr size
Definition: core_c.h:939
Scalar_< double > Scalar
Definition: core.hpp:968
Proxy datatype for passing Mat's and vector<>'s as input parameters.
Definition: core.hpp:1400
double minDistance
Definition: gpu.hpp:1776
Definition: features2d.hpp:972
Size user_block_size
Definition: gpu.hpp:780
CV_EXPORTS void rotate(const GpuMat &src, GpuMat &dst, Size dsize, double angle, double xShift=0, double yShift=0, int interpolation=INTER_LINEAR, Stream &stream=Stream::Null())
CV_EXPORTS void Laplacian(const GpuMat &src, GpuMat &dst, int ddepth, int ksize=1, double scale=1, int borderType=BORDER_DEFAULT, Stream &stream=Stream::Null())
int * refcount
Definition: gpu.hpp:128
GpuMat dy
Definition: gpu.hpp:832
CV_EXPORTS void HoughLinesP(const GpuMat &image, GpuMat &lines, HoughLinesBuf &buf, float rho, float theta, int minLineLength, int maxLineGap, int maxLines=4096)
HoughLinesP.
double derivLambda
Definition: gpu.hpp:1828
Rect_< int > Rect
Definition: core.hpp:897
The Base Class for Filter Engine.
Definition: gpu.hpp:247
int Lc
Definition: gpu.hpp:2050
float max_data_term
Definition: gpu.hpp:1153
CV_EXPORTS void evenLevels(GpuMat &levels, int nLevels, int lowerLevel, int upperLevel)
Compute levels with even distribution. levels will have 1 row and nLevels cols and CV_32SC1 type...
std::vector< GpuMat > image_sums
Definition: gpu.hpp:783
BFMatcher_GPU(int norm=NORM_L2)
Definition: gpu.hpp:1535
int history
Definition: gpu.hpp:2177
GpuMat st2
Definition: gpu.hpp:835
vector< Point > locations
Definition: gpu.hpp:1265
CV_EXPORTS void meanShiftFiltering(const GpuMat &src, GpuMat &dst, int sp, int sr, TermCriteria criteria=TermCriteria(TermCriteria::MAX_ITER+TermCriteria::EPS, 5, 1), Stream &stream=Stream::Null())
Does mean shift filtering on GPU.
double threshold_L2hys
Definition: gpu.hpp:1317
CV_EXPORTS void nonLocalMeans(const GpuMat &src, GpuMat &dst, float h, int search_window=21, int block_size=7, int borderMode=BORDER_DEFAULT, Stream &s=Stream::Null())
Brute force non-local means algorith (slow but universal)