|
|
|
@ -46,36 +46,36 @@ mixChannels_( const T** src, const int* sdelta, |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static void mixChannels8u( const uchar** src, const int* sdelta, |
|
|
|
|
uchar** dst, const int* ddelta, |
|
|
|
|
static void mixChannels8u( const void** src, const int* sdelta, |
|
|
|
|
void** dst, const int* ddelta, |
|
|
|
|
int len, int npairs ) |
|
|
|
|
{ |
|
|
|
|
mixChannels_(src, sdelta, dst, ddelta, len, npairs); |
|
|
|
|
mixChannels_((const uchar**)src, sdelta, (uchar**)dst, ddelta, len, npairs); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static void mixChannels16u( const uchar** src, const int* sdelta, |
|
|
|
|
uchar** dst, const int* ddelta, |
|
|
|
|
static void mixChannels16u( const void** src, const int* sdelta, |
|
|
|
|
void** dst, const int* ddelta, |
|
|
|
|
int len, int npairs ) |
|
|
|
|
{ |
|
|
|
|
mixChannels_((const ushort**)src, sdelta, (ushort**)dst, ddelta, len, npairs); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static void mixChannels32s( const uchar** src, const int* sdelta, |
|
|
|
|
uchar** dst, const int* ddelta, |
|
|
|
|
static void mixChannels32s( const void** src, const int* sdelta, |
|
|
|
|
void** dst, const int* ddelta, |
|
|
|
|
int len, int npairs ) |
|
|
|
|
{ |
|
|
|
|
mixChannels_((const int**)src, sdelta, (int**)dst, ddelta, len, npairs); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static void mixChannels64s( const uchar** src, const int* sdelta, |
|
|
|
|
uchar** dst, const int* ddelta, |
|
|
|
|
static void mixChannels64s( const void** src, const int* sdelta, |
|
|
|
|
void** dst, const int* ddelta, |
|
|
|
|
int len, int npairs ) |
|
|
|
|
{ |
|
|
|
|
mixChannels_((const int64**)src, sdelta, (int64**)dst, ddelta, len, npairs); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
typedef void (*MixChannelsFunc)( const uchar** src, const int* sdelta, |
|
|
|
|
uchar** dst, const int* ddelta, int len, int npairs ); |
|
|
|
|
typedef void (*MixChannelsFunc)( const void** src, const int* sdelta, |
|
|
|
|
void** dst, const int* ddelta, int len, int npairs ); |
|
|
|
|
|
|
|
|
|
static MixChannelsFunc getMixchFunc(int depth) |
|
|
|
|
{ |
|
|
|
@ -158,7 +158,7 @@ void cv::mixChannels( const Mat* src, size_t nsrcs, Mat* dst, size_t ndsts, cons |
|
|
|
|
for( int t = 0; t < total; t += blocksize ) |
|
|
|
|
{ |
|
|
|
|
int bsz = std::min(total - t, blocksize); |
|
|
|
|
func( srcs, sdelta, dsts, ddelta, bsz, (int)npairs ); |
|
|
|
|
func( (const void**)srcs, sdelta, (void **)dsts, ddelta, bsz, (int)npairs ); |
|
|
|
|
|
|
|
|
|
if( t + blocksize < total ) |
|
|
|
|
for( k = 0; k < npairs; k++ ) |
|
|
|
|