1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
|
// Copyright (C) 2006 Davis E. King (davis@dlib.net)
// License: Boost Software License See LICENSE.txt for the full license.
#undef DLIB_IMAGE_LOADEr_ABSTRACT_
#ifdef DLIB_IMAGE_LOADEr_ABSTRACT_
#include <iosfwd>
#include "../algs.h"
#include "../pixel.h"
namespace dlib
{
class image_load_error : public dlib::error
{
/*!
WHAT THIS OBJECT REPRESENTS
This is an exception used to indicate a failure to load an image.
Its type member variable will be set to EIMAGE_LOAD.
!*/
};
// ----------------------------------------------------------------------------------------
template <
typename image_type
>
void load_bmp (
image_type& image,
std::istream& in
);
/*!
requires
- image_type == is an implementation of array2d/array2d_kernel_abstract.h
- pixel_traits<typename image_type::type> is defined
ensures
- #image == the image of the MS Windows BMP file that was available
in the input stream in.
- #image[0][0] will be the upper left corner of the image
- #image[image.nr()-1][image.nc()-1] will be the lower right
corner of the image
- Performs any color space conversion necessary to convert the
BMP image data into the pixel type used by the given image
object.
throws
- image_load_error
This exception is thrown if there is an error that prevents us
from loading the image. If this exception is thrown then
#image will have an initial value for its type.
- std::bad_alloc
If this exception is thrown then #image will have an initial
value for its type.
!*/
// ----------------------------------------------------------------------------------------
template <
typename image_type
>
void load_bmp (
image_type& image,
const std::string& file_name
);
/*!
requires
- image_type == is an implementation of array2d/array2d_kernel_abstract.h
- pixel_traits<typename image_type::type> is defined
ensures
- opens the file indicated by file_name with an input file stream named fin
and performs:
load_bmp(image,fin);
!*/
// ----------------------------------------------------------------------------------------
/*!
dlib dng file format:
This is a file format I created for this library. It is a lossless
compressed image format that is similar to the PNG format but uses
the dlib PPM compression algorithms instead of the DEFLATE algorithm.
!*/
template <
typename image_type
>
void load_dng (
image_type& image,
std::istream& in
);
/*!
requires
- image_type == is an implementation of array2d/array2d_kernel_abstract.h
- pixel_traits<typename image_type::type> is defined
ensures
- #image == the image of the dlib dng file that was available
in the input stream in.
- #image[0][0] will be the upper left corner of the image
- #image[image.nr()-1][image.nc()-1] will be the lower right
corner of the image
- Performs any color space conversion necessary to convert the
dng image data into the pixel type used by the given image
object.
throws
- image_load_error
This exception is thrown if there is an error that prevents us
from loading the image. If this exception is thrown then
#image will have an initial value for its type.
- std::bad_alloc
If this exception is thrown then #image will have an initial
value for its type.
!*/
// ----------------------------------------------------------------------------------------
template <
typename image_type
>
void load_dng (
image_type& image,
const std::string& file_name
);
/*!
requires
- image_type == is an implementation of array2d/array2d_kernel_abstract.h
- pixel_traits<typename image_type::type> is defined
ensures
- opens the file indicated by file_name with an input file stream named fin
and performs:
load_dng(image,fin);
!*/
// ----------------------------------------------------------------------------------------
}
#endif // DLIB_IMAGE_LOADEr_ABSTRACT_
|