fix rounding bug in Level creation
This commit is contained in:
parent
2bcb8dbd83
commit
022a8b9698
@ -81,16 +81,7 @@ struct __align__(8) Level //is actually 24 bytes
|
||||
uchar2 workRect;
|
||||
uchar2 objSize;
|
||||
|
||||
Level(int idx, const Octave& oct, const float scale, const int w, const int h)
|
||||
: octave(idx), relScale(scale / oct.scale), shrScale (relScale / (float)oct.shrinkage)
|
||||
{
|
||||
workRect.x = round(w / (float)oct.shrinkage);
|
||||
workRect.y = round(h / (float)oct.shrinkage);
|
||||
|
||||
objSize.x = round(oct.size.x * relScale);
|
||||
objSize.y = round(oct.size.y * relScale);
|
||||
}
|
||||
|
||||
Level(int idx, const Octave& oct, const float scale, const int w, const int h);
|
||||
__device Level(){}
|
||||
};
|
||||
|
||||
|
@ -553,7 +553,7 @@ void cv::gpu::integralBuffered(const GpuMat& src, GpuMat& sum, GpuMat& buffer, S
|
||||
|
||||
src.locateROI(whole, offset);
|
||||
|
||||
if (info.supports(WARP_SHUFFLE_FUNCTIONS) && src.cols <= 2048)
|
||||
if (false && info.supports(WARP_SHUFFLE_FUNCTIONS) && src.cols <= 2048)
|
||||
{
|
||||
GpuMat srcAlligned;
|
||||
|
||||
|
@ -65,6 +65,16 @@ cv::Size cv::gpu::SoftCascade::getRoiSize() const { throw_nogpu(); return cv::Si
|
||||
|
||||
#include <icf.hpp>
|
||||
|
||||
cv::gpu::device::icf::Level::Level(int idx, const Octave& oct, const float scale, const int w, const int h)
|
||||
: octave(idx), relScale(scale / oct.scale), shrScale (relScale / (float)oct.shrinkage)
|
||||
{
|
||||
workRect.x = round(w / (float)oct.shrinkage);
|
||||
workRect.y = round(h / (float)oct.shrinkage);
|
||||
|
||||
objSize.x = cv::saturate_cast<uchar>(oct.size.x * relScale);
|
||||
objSize.y = cv::saturate_cast<uchar>(oct.size.y * relScale);
|
||||
}
|
||||
|
||||
namespace cv { namespace gpu { namespace device {
|
||||
namespace icf {
|
||||
void fillBins(cv::gpu::PtrStepSzb hogluv, const cv::gpu::PtrStepSzf& nangle,
|
||||
@ -72,7 +82,7 @@ namespace icf {
|
||||
}
|
||||
namespace imgproc
|
||||
{
|
||||
void meanShiftFiltering_gpu(const PtrStepSzb& src, PtrStepSzb dst, int sp, int sr, int maxIter, float eps, cudaStream_t stream);
|
||||
void shfl_integral_gpu(PtrStepSzb img, PtrStepSz<unsigned int> integral, cudaStream_t stream);
|
||||
}
|
||||
}}}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user