init: 64 bits version of the webcam
This commit is contained in:
@ -40,10 +40,15 @@
|
||||
//
|
||||
//M*/
|
||||
|
||||
#ifndef __OPENCV_STITCHING_BLENDERS_HPP__
|
||||
#define __OPENCV_STITCHING_BLENDERS_HPP__
|
||||
#ifndef OPENCV_STITCHING_BLENDERS_HPP
|
||||
#define OPENCV_STITCHING_BLENDERS_HPP
|
||||
|
||||
#if defined(NO)
|
||||
# warning Detected Apple 'NO' macro definition, it can cause build conflicts. Please, include this header before any Apple headers.
|
||||
#endif
|
||||
|
||||
#include "opencv2/core.hpp"
|
||||
#include "opencv2/core/cuda.hpp"
|
||||
|
||||
namespace cv {
|
||||
namespace detail {
|
||||
@ -100,9 +105,9 @@ public:
|
||||
float sharpness() const { return sharpness_; }
|
||||
void setSharpness(float val) { sharpness_ = val; }
|
||||
|
||||
void prepare(Rect dst_roi);
|
||||
void feed(InputArray img, InputArray mask, Point tl);
|
||||
void blend(InputOutputArray dst, InputOutputArray dst_mask);
|
||||
void prepare(Rect dst_roi) CV_OVERRIDE;
|
||||
void feed(InputArray img, InputArray mask, Point tl) CV_OVERRIDE;
|
||||
void blend(InputOutputArray dst, InputOutputArray dst_mask) CV_OVERRIDE;
|
||||
|
||||
//! Creates weight maps for fixed set of source images by their masks and top-left corners.
|
||||
//! Final image can be obtained by simple weighting of the source images.
|
||||
@ -127,9 +132,9 @@ public:
|
||||
int numBands() const { return actual_num_bands_; }
|
||||
void setNumBands(int val) { actual_num_bands_ = val; }
|
||||
|
||||
void prepare(Rect dst_roi);
|
||||
void feed(InputArray img, InputArray mask, Point tl);
|
||||
void blend(InputOutputArray dst, InputOutputArray dst_mask);
|
||||
void prepare(Rect dst_roi) CV_OVERRIDE;
|
||||
void feed(InputArray img, InputArray mask, Point tl) CV_OVERRIDE;
|
||||
void blend(InputOutputArray dst, InputOutputArray dst_mask) CV_OVERRIDE;
|
||||
|
||||
private:
|
||||
int actual_num_bands_, num_bands_;
|
||||
@ -138,6 +143,22 @@ private:
|
||||
Rect dst_roi_final_;
|
||||
bool can_use_gpu_;
|
||||
int weight_type_; //CV_32F or CV_16S
|
||||
#if defined(HAVE_OPENCV_CUDAARITHM) && defined(HAVE_OPENCV_CUDAWARPING)
|
||||
std::vector<cuda::GpuMat> gpu_dst_pyr_laplace_;
|
||||
std::vector<cuda::GpuMat> gpu_dst_band_weights_;
|
||||
std::vector<Point> gpu_tl_points_;
|
||||
std::vector<cuda::GpuMat> gpu_imgs_with_border_;
|
||||
std::vector<std::vector<cuda::GpuMat> > gpu_weight_pyr_gauss_vec_;
|
||||
std::vector<std::vector<cuda::GpuMat> > gpu_src_pyr_laplace_vec_;
|
||||
std::vector<std::vector<cuda::GpuMat> > gpu_ups_;
|
||||
cuda::GpuMat gpu_dst_mask_;
|
||||
cuda::GpuMat gpu_mask_;
|
||||
cuda::GpuMat gpu_img_;
|
||||
cuda::GpuMat gpu_weight_map_;
|
||||
cuda::GpuMat gpu_add_mask_;
|
||||
int gpu_feed_idx_;
|
||||
bool gpu_initialized_;
|
||||
#endif
|
||||
};
|
||||
|
||||
|
||||
@ -160,4 +181,4 @@ void CV_EXPORTS restoreImageFromLaplacePyrGpu(std::vector<UMat>& pyr);
|
||||
} // namespace detail
|
||||
} // namespace cv
|
||||
|
||||
#endif // __OPENCV_STITCHING_BLENDERS_HPP__
|
||||
#endif // OPENCV_STITCHING_BLENDERS_HPP
|
||||
|
||||
Reference in New Issue
Block a user