1
0
mirror of https://github.com/opencv/opencv.git synced 2026-07-30 07:43:03 +04:00

Merge remote-tracking branch 'upstream/3.4' into merge-3.4

This commit is contained in:
Alexander Alekhin
2018-11-10 20:10:57 +00:00
90 changed files with 6261 additions and 6657 deletions
+2 -2
View File
@@ -99,7 +99,7 @@ void RBaseStream::readBlock()
{
if( m_block_pos == 0 && m_current < m_end )
return;
CV_THROW (RBS_THROW_EOS);
throw RBS_THROW_EOS;
}
fseek( m_file, m_block_pos, SEEK_SET );
@@ -107,7 +107,7 @@ void RBaseStream::readBlock()
m_end = m_start + readed;
if( readed == 0 || m_current >= m_end )
CV_THROW (RBS_THROW_EOS);
throw RBS_THROW_EOS;
}
+9 -10
View File
@@ -80,15 +80,14 @@ ExifReader::~ExifReader()
*/
bool ExifReader::parse()
{
CV_TRY {
try {
m_exif = getExif();
if( !m_exif.empty() )
{
return true;
}
return false;
} CV_CATCH (ExifParsingError, e) {
CV_UNUSED(e);
} catch (ExifParsingError&) {
return false;
}
}
@@ -152,11 +151,11 @@ std::map<int, ExifEntry_t > ExifReader::getExif()
case COM:
bytesToSkip = getFieldSize();
if (bytesToSkip < markerSize) {
CV_THROW (ExifParsingError());
throw ExifParsingError();
}
m_stream.seekg( static_cast<long>( bytesToSkip - markerSize ), m_stream.cur );
if ( m_stream.fail() ) {
CV_THROW (ExifParsingError());
throw ExifParsingError();
}
break;
@@ -167,12 +166,12 @@ std::map<int, ExifEntry_t > ExifReader::getExif()
case APP1: //actual Exif Marker
exifSize = getFieldSize();
if (exifSize <= offsetToTiffHeader) {
CV_THROW (ExifParsingError());
throw ExifParsingError();
}
m_data.resize( exifSize - offsetToTiffHeader );
m_stream.seekg( static_cast<long>( offsetToTiffHeader ), m_stream.cur );
if ( m_stream.fail() ) {
CV_THROW (ExifParsingError());
throw ExifParsingError();
}
m_stream.read( reinterpret_cast<char*>(&m_data[0]), exifSize - offsetToTiffHeader );
exifFound = true;
@@ -416,7 +415,7 @@ std::string ExifReader::getString(const size_t offset) const
dataOffset = getU32( offset + 8 );
}
if (dataOffset > m_data.size() || dataOffset + size > m_data.size()) {
CV_THROW (ExifParsingError());
throw ExifParsingError();
}
std::vector<uint8_t>::const_iterator it = m_data.begin() + dataOffset;
std::string result( it, it + size ); //copy vector content into result
@@ -433,7 +432,7 @@ std::string ExifReader::getString(const size_t offset) const
uint16_t ExifReader::getU16(const size_t offset) const
{
if (offset + 1 >= m_data.size())
CV_THROW (ExifParsingError());
throw ExifParsingError();
if( m_format == INTEL )
{
@@ -451,7 +450,7 @@ uint16_t ExifReader::getU16(const size_t offset) const
uint32_t ExifReader::getU32(const size_t offset) const
{
if (offset + 3 >= m_data.size())
CV_THROW (ExifParsingError());
throw ExifParsingError();
if( m_format == INTEL )
{
+6 -6
View File
@@ -89,7 +89,7 @@ bool BmpDecoder::readHeader()
else if( !m_strm.open( m_filename ))
return false;
CV_TRY
try
{
m_strm.skip( 10 );
m_offset = m_strm.getDWord();
@@ -173,9 +173,9 @@ bool BmpDecoder::readHeader()
}
}
}
CV_CATCH_ALL
catch(...)
{
CV_RETHROW();
throw;
}
// in 32 bit case alpha channel is used - so require CV_8UC4 type
m_type = iscolor ? (m_bpp == 32 ? CV_8UC4 : CV_8UC3 ) : CV_8UC1;
@@ -225,7 +225,7 @@ bool BmpDecoder::readData( Mat& img )
}
uchar *src = _src.data(), *bgr = _bgr.data();
CV_TRY
try
{
m_strm.setPos( m_offset );
@@ -490,9 +490,9 @@ decode_rle8_bad: ;
CV_Error(cv::Error::StsError, "Invalid/unsupported mode");
}
}
CV_CATCH_ALL
catch(...)
{
CV_RETHROW();
throw;
}
return result;
+18 -18
View File
@@ -379,25 +379,25 @@ bool PAMDecoder::readHeader()
}
else if( !m_strm.open( m_filename ))
return false;
CV_TRY
try
{
byte = m_strm.getByte();
if( byte != 'P' )
CV_THROW( RBS_BAD_HEADER );
throw RBS_BAD_HEADER;
byte = m_strm.getByte();
if (byte != '7')
CV_THROW( RBS_BAD_HEADER );
throw RBS_BAD_HEADER;
byte = m_strm.getByte();
if (byte != '\n' && byte != '\r')
CV_THROW( RBS_BAD_HEADER );
throw RBS_BAD_HEADER;
uint i;
memset (&flds, 0x00, sizeof (struct parsed_fields));
do {
if (!ReadPAMHeaderLine(m_strm, fieldtype, value))
CV_THROW( RBS_BAD_HEADER );
throw RBS_BAD_HEADER;
switch (fieldtype) {
case PAM_HEADER_NONE:
case PAM_HEADER_COMMENT:
@@ -407,32 +407,32 @@ bool PAMDecoder::readHeader()
break;
case PAM_HEADER_HEIGHT:
if (flds.height)
CV_THROW( RBS_BAD_HEADER );
throw RBS_BAD_HEADER;
if (!ParseNumber (value, &m_height))
CV_THROW( RBS_BAD_HEADER );
throw RBS_BAD_HEADER;
flds.height = true;
break;
case PAM_HEADER_WIDTH:
if (flds.width)
CV_THROW( RBS_BAD_HEADER );
throw RBS_BAD_HEADER;
if (!ParseNumber (value, &m_width))
CV_THROW( RBS_BAD_HEADER );
throw RBS_BAD_HEADER;
flds.width = true;
break;
case PAM_HEADER_DEPTH:
if (flds.depth)
CV_THROW( RBS_BAD_HEADER );
throw RBS_BAD_HEADER;
if (!ParseNumber (value, &m_channels))
CV_THROW( RBS_BAD_HEADER );
throw RBS_BAD_HEADER;
flds.depth = true;
break;
case PAM_HEADER_MAXVAL:
if (flds.maxval)
CV_THROW( RBS_BAD_HEADER );
throw RBS_BAD_HEADER;
if (!ParseNumber (value, &m_maxval))
CV_THROW( RBS_BAD_HEADER );
throw RBS_BAD_HEADER;
if ( m_maxval > 65535 )
CV_THROW( RBS_BAD_HEADER );
throw RBS_BAD_HEADER;
if ( m_maxval > 255 ) {
m_sampledepth = CV_16U;
}
@@ -451,7 +451,7 @@ bool PAMDecoder::readHeader()
}
break;
default:
CV_THROW( RBS_BAD_HEADER );
throw RBS_BAD_HEADER;
}
} while (fieldtype != PAM_HEADER_ENDHDR);
@@ -469,7 +469,7 @@ bool PAMDecoder::readHeader()
return true;
}
} CV_CATCH_ALL
} catch(...)
{
}
@@ -512,7 +512,7 @@ bool PAMDecoder::readData( Mat& img )
}
}
CV_TRY
try
{
m_strm.setPos( m_offset );
@@ -610,7 +610,7 @@ bool PAMDecoder::readData( Mat& img )
}
res = true;
} CV_CATCH_ALL
} catch(...)
{
}
+13 -15
View File
@@ -150,11 +150,11 @@ bool PxMDecoder::readHeader()
else if( !m_strm.open( m_filename ))
return false;
CV_TRY
try
{
int code = m_strm.getByte();
if( code != 'P' )
CV_THROW (RBS_BAD_HEADER);
throw RBS_BAD_HEADER;
code = m_strm.getByte();
switch( code )
@@ -162,7 +162,7 @@ bool PxMDecoder::readHeader()
case '1': case '4': m_bpp = 1; break;
case '2': case '5': m_bpp = 8; break;
case '3': case '6': m_bpp = 24; break;
default: CV_THROW (RBS_BAD_HEADER);
default: throw RBS_BAD_HEADER;
}
m_binary = code >= '4';
@@ -173,7 +173,7 @@ bool PxMDecoder::readHeader()
m_maxval = m_bpp == 1 ? 1 : ReadNumber(m_strm);
if( m_maxval > 65535 )
CV_THROW (RBS_BAD_HEADER);
throw RBS_BAD_HEADER;
//if( m_maxval > 255 ) m_binary = false; nonsense
if( m_maxval > 255 )
@@ -185,15 +185,14 @@ bool PxMDecoder::readHeader()
result = true;
}
}
CV_CATCH (cv::Exception, e)
catch (const cv::Exception&)
{
CV_UNUSED(e);
CV_RETHROW();
throw;
}
CV_CATCH_ALL
catch (...)
{
std::cerr << "PXM::readHeader(): unknown C++ exception" << std::endl << std::flush;
CV_RETHROW();
throw;
}
if( !result )
@@ -233,7 +232,7 @@ bool PxMDecoder::readData( Mat& img )
FillGrayPalette( palette, m_bpp==1 ? 1 : 8 , m_bpp == 1 );
}
CV_TRY
try
{
m_strm.setPos( m_offset );
@@ -359,15 +358,14 @@ bool PxMDecoder::readData( Mat& img )
CV_Error(Error::StsError, "m_bpp is not supported");
}
}
CV_CATCH (cv::Exception, e)
catch (const cv::Exception&)
{
CV_UNUSED(e);
CV_RETHROW();
throw;
}
CV_CATCH_ALL
catch (...)
{
std::cerr << "PXM::readData(): unknown exception" << std::endl << std::flush;
CV_RETHROW();
throw;
}
return result;
+4 -4
View File
@@ -84,7 +84,7 @@ bool SunRasterDecoder::readHeader()
if( !m_strm.open( m_filename )) return false;
CV_TRY
try
{
m_strm.skip( 4 );
m_width = m_strm.getDWord();
@@ -144,7 +144,7 @@ bool SunRasterDecoder::readHeader()
}
}
}
CV_CATCH_ALL
catch(...)
{
}
@@ -179,7 +179,7 @@ bool SunRasterDecoder::readData( Mat& img )
if( !color && m_maptype == RMT_EQUAL_RGB )
CvtPaletteToGray( m_palette, gray_palette, 1 << m_bpp );
CV_TRY
try
{
m_strm.setPos( m_offset );
@@ -376,7 +376,7 @@ bad_decoding_end:
CV_Error(Error::StsInternal, "");
}
}
CV_CATCH_ALL
catch( ... )
{
}
+18 -18
View File
@@ -433,18 +433,18 @@ imread_( const String& filename, int flags, Mat& mat )
/// set the filename in the driver
decoder->setSource( filename );
CV_TRY
try
{
// read the header to make sure it succeeds
if( !decoder->readHeader() )
return 0;
}
CV_CATCH (cv::Exception, e)
catch (const cv::Exception& e)
{
std::cerr << "imread_('" << filename << "'): can't read header: " << e.what() << std::endl << std::flush;
return 0;
}
CV_CATCH_ALL
catch (...)
{
std::cerr << "imread_('" << filename << "'): can't read header: unknown exception" << std::endl << std::flush;
return 0;
@@ -472,16 +472,16 @@ imread_( const String& filename, int flags, Mat& mat )
// read the image data
bool success = false;
CV_TRY
try
{
if (decoder->readData(mat))
success = true;
}
CV_CATCH (cv::Exception, e)
catch (const cv::Exception& e)
{
std::cerr << "imread_('" << filename << "'): can't read data: " << e.what() << std::endl << std::flush;
}
CV_CATCH_ALL
catch (...)
{
std::cerr << "imread_('" << filename << "'): can't read data: unknown exception" << std::endl << std::flush;
}
@@ -534,18 +534,18 @@ imreadmulti_(const String& filename, int flags, std::vector<Mat>& mats)
decoder->setSource(filename);
// read the header to make sure it succeeds
CV_TRY
try
{
// read the header to make sure it succeeds
if( !decoder->readHeader() )
return 0;
}
CV_CATCH (cv::Exception, e)
catch (const cv::Exception& e)
{
std::cerr << "imreadmulti_('" << filename << "'): can't read header: " << e.what() << std::endl << std::flush;
return 0;
}
CV_CATCH_ALL
catch (...)
{
std::cerr << "imreadmulti_('" << filename << "'): can't read header: unknown exception" << std::endl << std::flush;
return 0;
@@ -573,16 +573,16 @@ imreadmulti_(const String& filename, int flags, std::vector<Mat>& mats)
// read the image data
Mat mat(size.height, size.width, type);
bool success = false;
CV_TRY
try
{
if (decoder->readData(mat))
success = true;
}
CV_CATCH (cv::Exception, e)
catch (const cv::Exception& e)
{
std::cerr << "imreadmulti_('" << filename << "'): can't read data: " << e.what() << std::endl << std::flush;
}
CV_CATCH_ALL
catch (...)
{
std::cerr << "imreadmulti_('" << filename << "'): can't read data: unknown exception" << std::endl << std::flush;
}
@@ -749,16 +749,16 @@ imdecode_( const Mat& buf, int flags, Mat& mat )
}
bool success = false;
CV_TRY
try
{
if (decoder->readHeader())
success = true;
}
CV_CATCH (cv::Exception, e)
catch (const cv::Exception& e)
{
std::cerr << "imdecode_('" << filename << "'): can't read header: " << e.what() << std::endl << std::flush;
}
CV_CATCH_ALL
catch (...)
{
std::cerr << "imdecode_('" << filename << "'): can't read header: unknown exception" << std::endl << std::flush;
}
@@ -794,16 +794,16 @@ imdecode_( const Mat& buf, int flags, Mat& mat )
mat.create( size.height, size.width, type );
success = false;
CV_TRY
try
{
if (decoder->readData(mat))
success = true;
}
CV_CATCH (cv::Exception, e)
catch (const cv::Exception& e)
{
std::cerr << "imdecode_('" << filename << "'): can't read data: " << e.what() << std::endl << std::flush;
}
CV_CATCH_ALL
catch (...)
{
std::cerr << "imdecode_('" << filename << "'): can't read data: unknown exception" << std::endl << std::flush;
}