mirror of
https://github.com/opencv/opencv.git
synced 2026-07-30 07:43:03 +04:00
opencv: Use cv::AutoBuffer<>::data()
This commit is contained in:
committed by
Alexander Alekhin
parent
135ea264ef
commit
b09a4a98d4
+30
-30
@@ -908,7 +908,7 @@ DFT(const OcvDftOptions & c, const Complex<T>* src, Complex<T>* dst)
|
||||
int p, q, factor2 = (factor - 1)/2;
|
||||
int d, dd, dw_f = c.tab_size/factor;
|
||||
AutoBuffer<Complex<T> > buf(factor2 * 2);
|
||||
Complex<T>* a = buf;
|
||||
Complex<T>* a = buf.data();
|
||||
Complex<T>* b = a + factor2;
|
||||
|
||||
for( i = 0; i < c.n; i += n )
|
||||
@@ -2895,7 +2895,7 @@ protected:
|
||||
uchar* dptr = dptr0;
|
||||
|
||||
if( needBufferA )
|
||||
dptr = tmp_bufA;
|
||||
dptr = tmp_bufA.data();
|
||||
|
||||
contextA->apply(sptr, dptr);
|
||||
|
||||
@@ -2921,12 +2921,12 @@ protected:
|
||||
const uchar* sptr0 = src_data;
|
||||
uchar* dptr0 = dst_data;
|
||||
|
||||
dbuf0 = buf0, dbuf1 = buf1;
|
||||
dbuf0 = buf0.data(), dbuf1 = buf1.data();
|
||||
|
||||
if( needBufferB )
|
||||
{
|
||||
dbuf1 = tmp_bufB;
|
||||
dbuf0 = buf1;
|
||||
dbuf1 = tmp_bufB.data();
|
||||
dbuf0 = buf1.data();
|
||||
}
|
||||
|
||||
if( real_transform )
|
||||
@@ -2937,42 +2937,42 @@ protected:
|
||||
b = (count+1)/2;
|
||||
if( !inv )
|
||||
{
|
||||
memset( buf0, 0, len*complex_elem_size );
|
||||
CopyColumn( sptr0, src_step, buf0, complex_elem_size, len, elem_size );
|
||||
memset( buf0.data(), 0, len*complex_elem_size );
|
||||
CopyColumn( sptr0, src_step, buf0.data(), complex_elem_size, len, elem_size );
|
||||
sptr0 += stage_dst_channels*elem_size;
|
||||
if( even )
|
||||
{
|
||||
memset( buf1, 0, len*complex_elem_size );
|
||||
memset( buf1.data(), 0, len*complex_elem_size );
|
||||
CopyColumn( sptr0 + (count-2)*elem_size, src_step,
|
||||
buf1, complex_elem_size, len, elem_size );
|
||||
buf1.data(), complex_elem_size, len, elem_size );
|
||||
}
|
||||
}
|
||||
else if( stage_src_channels == 1 )
|
||||
{
|
||||
CopyColumn( sptr0, src_step, buf0, elem_size, len, elem_size );
|
||||
ExpandCCS( buf0, len, elem_size );
|
||||
CopyColumn( sptr0, src_step, buf0.data(), elem_size, len, elem_size );
|
||||
ExpandCCS( buf0.data(), len, elem_size );
|
||||
if( even )
|
||||
{
|
||||
CopyColumn( sptr0 + (count-1)*elem_size, src_step,
|
||||
buf1, elem_size, len, elem_size );
|
||||
ExpandCCS( buf1, len, elem_size );
|
||||
buf1.data(), elem_size, len, elem_size );
|
||||
ExpandCCS( buf1.data(), len, elem_size );
|
||||
}
|
||||
sptr0 += elem_size;
|
||||
}
|
||||
else
|
||||
{
|
||||
CopyColumn( sptr0, src_step, buf0, complex_elem_size, len, complex_elem_size );
|
||||
CopyColumn( sptr0, src_step, buf0.data(), complex_elem_size, len, complex_elem_size );
|
||||
if( even )
|
||||
{
|
||||
CopyColumn( sptr0 + b*complex_elem_size, src_step,
|
||||
buf1, complex_elem_size, len, complex_elem_size );
|
||||
buf1.data(), complex_elem_size, len, complex_elem_size );
|
||||
}
|
||||
sptr0 += complex_elem_size;
|
||||
}
|
||||
|
||||
if( even )
|
||||
contextB->apply(buf1, dbuf1);
|
||||
contextB->apply(buf0, dbuf0);
|
||||
contextB->apply(buf1.data(), dbuf1);
|
||||
contextB->apply(buf0.data(), dbuf0);
|
||||
|
||||
if( stage_dst_channels == 1 )
|
||||
{
|
||||
@@ -3019,13 +3019,13 @@ protected:
|
||||
{
|
||||
if( i+1 < b )
|
||||
{
|
||||
CopyFrom2Columns( sptr0, src_step, buf0, buf1, len, complex_elem_size );
|
||||
contextB->apply(buf1, dbuf1);
|
||||
CopyFrom2Columns( sptr0, src_step, buf0.data(), buf1.data(), len, complex_elem_size );
|
||||
contextB->apply(buf1.data(), dbuf1);
|
||||
}
|
||||
else
|
||||
CopyColumn( sptr0, src_step, buf0, complex_elem_size, len, complex_elem_size );
|
||||
CopyColumn( sptr0, src_step, buf0.data(), complex_elem_size, len, complex_elem_size );
|
||||
|
||||
contextB->apply(buf0, dbuf0);
|
||||
contextB->apply(buf0.data(), dbuf0);
|
||||
|
||||
if( i+1 < b )
|
||||
CopyTo2Columns( dbuf0, dbuf1, dptr0, dst_step, len, complex_elem_size );
|
||||
@@ -3134,9 +3134,9 @@ public:
|
||||
if (len != prev_len || (!inplace_transform && opt.isInverse && real_transform))
|
||||
{
|
||||
wave_buf.allocate(opt.n*complex_elem_size);
|
||||
opt.wave = wave_buf;
|
||||
opt.wave = wave_buf.data();
|
||||
itab_buf.allocate(opt.n);
|
||||
opt.itab = itab_buf;
|
||||
opt.itab = itab_buf.data();
|
||||
DFTInit( opt.n, opt.nf, opt.factors, opt.itab, complex_elem_size,
|
||||
opt.wave, stage == 0 && opt.isInverse && real_transform );
|
||||
}
|
||||
@@ -4152,31 +4152,31 @@ public:
|
||||
bool inplace_transform = opt.factors[0] == opt.factors[opt.nf-1];
|
||||
|
||||
wave_buf.allocate(len*complex_elem_size);
|
||||
opt.wave = wave_buf;
|
||||
opt.wave = wave_buf.data();
|
||||
itab_buf.allocate(len);
|
||||
opt.itab = itab_buf;
|
||||
opt.itab = itab_buf.data();
|
||||
DFTInit( len, opt.nf, opt.factors, opt.itab, complex_elem_size, opt.wave, isInverse );
|
||||
|
||||
dct_wave.allocate((len/2 + 1)*complex_elem_size);
|
||||
src_buf.allocate(len*elem_size);
|
||||
src_dft_buf = src_buf;
|
||||
src_dft_buf = src_buf.data();
|
||||
if(!inplace_transform)
|
||||
{
|
||||
dst_buf.allocate(len*elem_size);
|
||||
dst_dft_buf = dst_buf;
|
||||
dst_dft_buf = dst_buf.data();
|
||||
}
|
||||
else
|
||||
{
|
||||
dst_dft_buf = src_buf;
|
||||
dst_dft_buf = src_buf.data();
|
||||
}
|
||||
DCTInit( len, complex_elem_size, dct_wave, isInverse);
|
||||
DCTInit( len, complex_elem_size, dct_wave.data(), isInverse);
|
||||
prev_len = len;
|
||||
}
|
||||
// otherwise reuse the tables calculated on the previous stage
|
||||
for(unsigned i = 0; i < static_cast<unsigned>(count); i++ )
|
||||
{
|
||||
dct_func( opt, sptr + i*sstep0, sstep1, src_dft_buf, dst_dft_buf,
|
||||
dptr + i*dstep0, dstep1, dct_wave);
|
||||
dptr + i*dstep0, dstep1, dct_wave.data());
|
||||
}
|
||||
src = dst;
|
||||
src_step = dst_step;
|
||||
|
||||
Reference in New Issue
Block a user