mirror of https://github.com/davisking/dlib.git
merged
This commit is contained in:
commit
8f4f93b09e
|
@ -60,6 +60,13 @@ namespace dlib
|
|||
return (output_components_ == 3);
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------------------------
|
||||
|
||||
bool jpeg_loader::is_rgba() const
|
||||
{
|
||||
return (output_components_ == 4);
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------------------------
|
||||
|
||||
struct jpeg_loader_error_mgr
|
||||
|
@ -123,7 +130,8 @@ namespace dlib
|
|||
output_components_ = cinfo.output_components;
|
||||
|
||||
if (output_components_ != 1 &&
|
||||
output_components_ != 3)
|
||||
output_components_ != 3 &&
|
||||
output_components_ != 4)
|
||||
{
|
||||
fclose( fp );
|
||||
jpeg_destroy_decompress(&cinfo);
|
||||
|
|
|
@ -23,6 +23,7 @@ namespace dlib
|
|||
|
||||
bool is_gray() const;
|
||||
bool is_rgb() const;
|
||||
bool is_rgba() const;
|
||||
|
||||
template<typename T>
|
||||
void get_image( T& t_) const
|
||||
|
@ -37,7 +38,6 @@ namespace dlib
|
|||
COMPILE_TIME_ASSERT(sizeof(T) == 0);
|
||||
#endif
|
||||
image_view<T> t(t_);
|
||||
|
||||
t.set_size( height_, width_ );
|
||||
for ( unsigned n = 0; n < height_;n++ )
|
||||
{
|
||||
|
@ -49,6 +49,14 @@ namespace dlib
|
|||
unsigned char p = v[m];
|
||||
assign_pixel( t[n][m], p );
|
||||
}
|
||||
else if ( is_rgba() ) {
|
||||
rgb_alpha_pixel p;
|
||||
p.red = v[m*4];
|
||||
p.green = v[m*4+1];
|
||||
p.blue = v[m*4+2];
|
||||
p.alpha = v[m*4+3];
|
||||
assign_pixel( t[n][m], p );
|
||||
}
|
||||
else // if ( is_rgb() )
|
||||
{
|
||||
rgb_pixel p;
|
||||
|
|
Loading…
Reference in New Issue