new function imread_reduced()

by this new function we can set libjpeg "scale_denom" parameter and load jpeg images scaled 1/2 - 1/4 - 1/8
other image formats resized after loading
This commit is contained in:
Suleyman TURKMEN
2015-06-27 17:18:51 +03:00
parent eb4bd6b4fb
commit 7b7d54df68
6 changed files with 57 additions and 3 deletions

View File

@@ -242,8 +242,12 @@ bool JpegDecoder::readHeader()
{
jpeg_read_header( &state->cinfo, TRUE );
m_width = state->cinfo.image_width;
m_height = state->cinfo.image_height;
state->cinfo.scale_num=1;
state->cinfo.scale_denom = m_scale_denom;
m_scale_denom=1; // trick! to know which decoder used scale_denom see imread_
jpeg_calc_output_dimensions(&state->cinfo);
m_width = state->cinfo.output_width;
m_height = state->cinfo.output_height;
m_type = state->cinfo.num_components > 1 ? CV_8UC3 : CV_8UC1;
result = true;
}