Fixed GDAL loader check

This commit is contained in:
Maksim Shabunin
2015-01-21 14:01:21 +03:00
parent 1a15596f21
commit 036b13ee05
2 changed files with 8 additions and 7 deletions
+5 -5
View File
@@ -247,7 +247,7 @@ imread_( const String& filename, int flags, int hdrtype, Mat* mat=0 )
ImageDecoder decoder;
#ifdef HAVE_GDAL
if( (flags & IMREAD_LOAD_GDAL) == IMREAD_LOAD_GDAL ){
if(flags != IMREAD_UNCHANGED && (flags & IMREAD_LOAD_GDAL) == IMREAD_LOAD_GDAL ){
decoder = GdalDecoder().newDecoder();
}else{
#endif
@@ -275,7 +275,7 @@ imread_( const String& filename, int flags, int hdrtype, Mat* mat=0 )
// grab the decoded type
int type = decoder->type();
if( flags != -1 )
if( flags != IMREAD_UNCHANGED )
{
if( (flags & CV_LOAD_IMAGE_ANYDEPTH) == 0 )
type = CV_MAKETYPE(CV_8U, CV_MAT_CN(type));
@@ -336,7 +336,7 @@ imreadmulti_(const String& filename, int flags, std::vector<Mat>& mats)
ImageDecoder decoder;
#ifdef HAVE_GDAL
if ((flags & IMREAD_LOAD_GDAL) == IMREAD_LOAD_GDAL){
if (flags != IMREAD_UNCHANGED && (flags & IMREAD_LOAD_GDAL) == IMREAD_LOAD_GDAL){
decoder = GdalDecoder().newDecoder();
}
else{
@@ -362,7 +362,7 @@ imreadmulti_(const String& filename, int flags, std::vector<Mat>& mats)
{
// grab the decoded type
int type = decoder->type();
if (flags != -1)
if (flags != IMREAD_UNCHANGED)
{
if ((flags & CV_LOAD_IMAGE_ANYDEPTH) == 0)
type = CV_MAKETYPE(CV_8U, CV_MAT_CN(type));
@@ -508,7 +508,7 @@ imdecode_( const Mat& buf, int flags, int hdrtype, Mat* mat=0 )
size.height = decoder->height();
int type = decoder->type();
if( flags != -1 )
if( flags != IMREAD_UNCHANGED )
{
if( (flags & CV_LOAD_IMAGE_ANYDEPTH) == 0 )
type = CV_MAKETYPE(CV_8U, CV_MAT_CN(type));