提交 4949f708 编写于 作者: V Vadim Pisarevsky

Merge pull request #3633 from mshabunin:fix-gdal-warning

......@@ -140,35 +140,6 @@ int gdal2opencv( const GDALDataType& gdalType, const int& channels ){
return -1;
}
std::string GetOpenCVTypeName( const int& type ){
switch(type){
case CV_8UC1:
return "CV_8UC1";
case CV_8UC3:
return "CV_8UC3";
case CV_8UC4:
return "CV_8UC4";
case CV_16UC1:
return "CV_16UC1";
case CV_16UC3:
return "CV_16UC3";
case CV_16UC4:
return "CV_16UC4";
case CV_16SC1:
return "CV_16SC1";
case CV_16SC3:
return "CV_16SC3";
case CV_16SC4:
return "CV_16SC4";
default:
return "Unknown";
}
return "Unknown";
}
/**
* GDAL Decoder Constructor
*/
......
......@@ -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));
......
......@@ -104,6 +104,7 @@ TEST(Imgcodecs_imread, regression)
ASSERT_TRUE(imread_compare(folder + string(filenames[i]), IMREAD_COLOR));
ASSERT_TRUE(imread_compare(folder + string(filenames[i]), IMREAD_ANYDEPTH));
ASSERT_TRUE(imread_compare(folder + string(filenames[i]), IMREAD_ANYCOLOR));
if (i != 2) // GDAL does not support hdr
ASSERT_TRUE(imread_compare(folder + string(filenames[i]), IMREAD_LOAD_GDAL));
}
}
......@@ -684,7 +685,7 @@ public:
compare(IMREAD_COLOR);
compare(IMREAD_ANYDEPTH);
compare(IMREAD_ANYCOLOR);
compare(IMREAD_LOAD_GDAL);
// compare(IMREAD_LOAD_GDAL); // GDAL does not support multi-page TIFFs
}
};
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册