OpenCV for Tegra compilation fix for

- Gaussian blur;
- CascadeClassifier;
- Blenders in stitching module;
- Laplacial pyromids in stitching module.
This commit is contained in:
Alexander Smorkalov 2015-01-06 16:57:21 +03:00
parent 28833421ae
commit 1fa37fe733
4 changed files with 10 additions and 6 deletions

View File

@ -1497,7 +1497,9 @@ void cv::GaussianBlur( InputArray _src, OutputArray _dst, Size ksize,
}
#ifdef HAVE_TEGRA_OPTIMIZATION
if(sigma1 == 0 && sigma2 == 0 && tegra::gaussian(_src.getMat(), _dst.getMat(), ksize, borderType))
Mat src = _src.getMat();
Mat dst = _dst.getMat();
if(sigma1 == 0 && sigma2 == 0 && tegra::gaussian(src, dst, ksize, borderType))
return;
#endif

View File

@ -931,7 +931,7 @@ Ptr<CascadeClassifierImpl::MaskGenerator> CascadeClassifierImpl::getMaskGenerato
Ptr<BaseCascadeClassifier::MaskGenerator> createFaceDetectionMaskGenerator()
{
#ifdef HAVE_TEGRA_OPTIMIZATION
return tegra::getCascadeClassifierMaskGenerator(*this);
return tegra::getCascadeClassifierMaskGenerator();
#else
return Ptr<BaseCascadeClassifier::MaskGenerator>();
#endif

View File

@ -1,5 +1,7 @@
#pragma once
#include "opencv2/core/ocl.hpp"
namespace cv
{

View File

@ -477,6 +477,8 @@ static bool ocl_normalizeUsingWeightMap(InputArray _weight, InputOutputArray _ma
void normalizeUsingWeightMap(InputArray _weight, InputOutputArray _src)
{
#ifdef HAVE_TEGRA_OPTIMIZATION
Mat weight = _weight.getMat();
Mat src = _src.getMat();
if(tegra::normalizeUsingWeightMap(weight, src))
return;
#endif
@ -486,9 +488,6 @@ void normalizeUsingWeightMap(InputArray _weight, InputOutputArray _src)
!ocl_normalizeUsingWeightMap(_weight, _src) )
#endif
{
Mat weight = _weight.getMat();
Mat src = _src.getMat();
CV_Assert(src.type() == CV_16SC3);
if(weight.type() == CV_32FC1)
@ -547,7 +546,8 @@ void createWeightMap(InputArray mask, float sharpness, InputOutputArray weight)
void createLaplacePyr(InputArray img, int num_levels, std::vector<UMat> &pyr)
{
#ifdef HAVE_TEGRA_OPTIMIZATION
if(tegra::createLaplacePyr(img, num_levels, pyr))
cv::Mat imgMat = img.getMat();
if(tegra::createLaplacePyr(imgMat, num_levels, pyr))
return;
#endif