Merge remote-tracking branch 'origin/2.4'

Conflicts:
	doc/tutorials/features2d/feature_detection/feature_detection.rst
	modules/bioinspired/doc/retina/index.rst
	modules/core/include/opencv2/core/core.hpp
	modules/core/include/opencv2/core/mat.hpp
	modules/core/include/opencv2/core/operations.hpp
	modules/core/src/stat.cpp
	modules/features2d/include/opencv2/features2d/features2d.hpp
	modules/imgproc/src/filter.cpp
	modules/legacy/src/dpstereo.cpp
	modules/nonfree/src/surf.ocl.cpp
	modules/ocl/doc/image_processing.rst
	modules/ocl/doc/object_detection.rst
	modules/ocl/include/opencv2/ocl/ocl.hpp
	modules/ocl/include/opencv2/ocl/private/util.hpp
	modules/ocl/src/arithm.cpp
	modules/ocl/src/canny.cpp
	modules/ocl/src/filtering.cpp
	modules/ocl/src/imgproc.cpp
	modules/ocl/src/initialization.cpp
	modules/ocl/src/matrix_operations.cpp
	modules/ocl/src/pyrdown.cpp
	modules/ocl/src/pyrup.cpp
	modules/ocl/src/split_merge.cpp
	modules/ocl/test/test_objdetect.cpp
	modules/ocl/test/utility.hpp
This commit is contained in:
Roman Donchenko
2013-10-01 15:57:33 +04:00
142 changed files with 7821 additions and 13967 deletions

View File

@@ -1144,7 +1144,7 @@ CVAPI(void) cvSetRemove( CvSet* set_header, int index );
NULL is returned */
CV_INLINE CvSetElem* cvGetSetElem( const CvSet* set_header, int idx )
{
CvSetElem* elem = (CvSetElem*)cvGetSeqElem( (CvSeq*)set_header, idx );
CvSetElem* elem = (CvSetElem*)(void *)cvGetSeqElem( (CvSeq*)set_header, idx );
return elem && CV_IS_SET_ELEM( elem ) ? elem : 0;
}

View File

@@ -1734,13 +1734,13 @@ const _Tp& SparseMat::value(const Node* n) const
inline
SparseMat::Node* SparseMat::node(size_t nidx)
{
return (Node*)&hdr->pool[nidx];
return (Node*)(void*)&hdr->pool[nidx];
}
inline
const SparseMat::Node* SparseMat::node(size_t nidx) const
{
return (const Node*)&hdr->pool[nidx];
return (const Node*)(const void*)&hdr->pool[nidx];
}
inline
@@ -2488,7 +2488,7 @@ const _Tp& SparseMatConstIterator::value() const
inline
const SparseMat::Node* SparseMatConstIterator::node() const
{
return (ptr && m && m->hdr) ? (const SparseMat::Node*)(ptr - m->hdr->valueOffset) : 0;
return (ptr && m && m->hdr) ? (const SparseMat::Node*)(const void*)(ptr - m->hdr->valueOffset) : 0;
}
inline

View File

@@ -861,8 +861,8 @@ inline FileNode::operator String() const { String value; read(*this, value, valu
inline FileNodeIterator FileNode::begin() const { return FileNodeIterator(fs, node); }
inline FileNodeIterator FileNode::end() const { return FileNodeIterator(fs, node, size()); }
inline void FileNode::readRaw( const String& fmt, uchar* vec, size_t len ) const { begin().readRaw( fmt, vec, len ); }
inline FileNode FileNodeIterator::operator *() const { return FileNode(fs, (const CvFileNode*)reader.ptr); }
inline FileNode FileNodeIterator::operator ->() const { return FileNode(fs, (const CvFileNode*)reader.ptr); }
inline FileNode FileNodeIterator::operator *() const { return FileNode(fs, (const CvFileNode*)(const void*)reader.ptr); }
inline FileNode FileNodeIterator::operator ->() const { return FileNode(fs, (const CvFileNode*)(const void*)reader.ptr); }
inline String::String(const FileNode& fn): cstr_(0), len_(0) { read(fn, *this, *this); }
} // cv

View File

@@ -523,11 +523,11 @@ CV_INLINE double cvmGet( const CvMat* mat, int row, int col )
(unsigned)col < (unsigned)mat->cols );
if( type == CV_32FC1 )
return ((float*)(mat->data.ptr + (size_t)mat->step*row))[col];
return ((float*)(void*)(mat->data.ptr + (size_t)mat->step*row))[col];
else
{
assert( type == CV_64FC1 );
return ((double*)(mat->data.ptr + (size_t)mat->step*row))[col];
return ((double*)(void*)(mat->data.ptr + (size_t)mat->step*row))[col];
}
}
@@ -540,11 +540,11 @@ CV_INLINE void cvmSet( CvMat* mat, int row, int col, double value )
(unsigned)col < (unsigned)mat->cols );
if( type == CV_32FC1 )
((float*)(mat->data.ptr + (size_t)mat->step*row))[col] = (float)value;
((float*)(void*)(mat->data.ptr + (size_t)mat->step*row))[col] = (float)value;
else
{
assert( type == CV_64FC1 );
((double*)(mat->data.ptr + (size_t)mat->step*row))[col] = (double)value;
((double*)(void*)(mat->data.ptr + (size_t)mat->step*row))[col] = (double)value;
}
}

View File

@@ -238,6 +238,7 @@ template<typename _Tp> static inline _Tp* alignPtr(_Tp* ptr, int n=(int)sizeof(_
*/
static inline size_t alignSize(size_t sz, int n)
{
CV_DbgAssert((n & (n - 1)) == 0); // n is a power of 2
return (sz + n-1) & -n;
}