ivl 679
|
A single or multi channel image of type T based on array. More...
#include <image_class.hpp>
Inherits array_common_base< image< T, OPTS > >.
Public Types | |
typedef ivl::color< T, OPTS::Ch > | color_type |
color type | |
typedef types::t_if < types::t_expr< N!=1 >, array < T, data::ref_iterator < const_iterator_nd, types::term, N > >, typename const_iterator::reference > ::type | const_pixel |
const pixel type | |
Public Member Functions | |
color_type | black () const |
predefined colors | |
size_t | channels () const |
color channels | |
const_pixel | col (const const_iterator &it) const |
const pixel from iterator | |
pixel | col (size_t row, size_t col) |
pixel access | |
pixel | col (const best_iterator &it) |
pixel from iterator | |
const_pixel | col (size_t row, size_t col) const |
const pixel access | |
size_t | cols () const |
image columns | |
size_t | height () const |
image height. same as rows | |
iplimage_t * | ipl () const |
Conversion to IplImage. | |
size_t | rows () const |
image rows | |
size_t | width () const |
image width. same as columns | |
Constructors | |
image () | |
Default constructor. always assign at least 1 channel to the image. | |
image (size_t rows, size_t cols, size_t channels=(!N?3:N)) | |
Create an empty image. | |
image (size_t rows, size_t cols, size_t channels, const T &value) | |
Create an image with initial value. | |
template<class J , class D > | |
image (size_t rows, size_t cols, size_t channels, const array< J, D > &a) | |
Create an image with size and pointer to data. | |
template<class S > | |
image (const array< size_t, S > &sz) | |
Create an image with size array. | |
template<class S > | |
image (const array< size_t, S > &sz, const T &value) | |
Create an image with size array and initial value. | |
template<class S > | |
image (const array< size_t, S > &sz, const T *ptr) | |
Create an image with size array and pointer to data. | |
template<class S > | |
image (const array< size_t, S > &sz, const data_init_arg &data) | |
Create an image with size array and a data_init_arg. | |
template<class S , class J , class D > | |
image (const array< size_t, S > &sz, const array< J, D > &a) | |
Create an image with size array and ivl::array or value. | |
image (const std::string &filename, image_channels channels=ic_auto) | |
Create an image from filename. | |
image (const iplimage_t *ipl) | |
Create an image from an IplImage. | |
template<class J , class S > | |
image (const array_nd< J, S > &a) | |
Construct from array_nd. | |
template<class J , class S > | |
image (array_nd< J, S > &a) | |
(special for ref_iterator) Construct from array_nd | |
image (const this_type &a) | |
Copy constructor. | |
Assignment operators | |
template<class K > | |
derived_type & | operator= (const K &k) |
this_type & | operator= (const this_type &a) |
derived_type & | operator= (const iplimage_t *src) |
assign from an OpenCV IplImage | |
derived_type & | operator= (iplimage_t *src) |
assign from an OpenCV IplImage | |
Basic plotting (not fast implementations) | |
derived_type & | put_pixel (double_point< 2 > a, color_type col=ivl::white< T, rgb >()) |
Draws a single pixel. | |
color_type | get_pixel (double_point< 2 > a) |
Retrieves the color of a single pixel. | |
derived_type & | line (double_point< 2 > a, double_point< 2 > b, color_type col=ivl::white< T, rgb >(), double thickness=1.5, double opacity=1.) |
Draws line from a => b, using the given color, thickness and opacity. anti-aliasing is performed. | |
derived_type & | circle (double_point< 2 > a, double radius, color_type col=ivl::white< T, rgb >(), double thickness=1.5, double opacity=1.) |
Draws circle on a with given radius, using the given color, thickness and opacity. anti-aliasing is performed. | |
derived_type & | rect (double_point< 2 > a, double_point< 2 > b, color_type col=ivl::white< T, rgb >(), double thickness=1.5, double opacity=1.) |
Draws a rectangle from corner a to corner b, using the given color, thickness and opacity. anti-aliasing is performed. | |
derived_type & | ellipse (double_point< 2 > a, double_point< 2 > b, double radius, color_type col=ivl::white< T, rgb >(), double thickness=1.5, double opacity=1.) |
Draws an ellipse using centers and and total radius radius, using the given color, thickness and opacity. anti-aliasing is performed. | |
derived_type & | ellipse (double_point< 2 > c, double radius1, double radius2, double angle, color_type col=ivl::white< T, rgb >(), double thickness=1.5, double opacity=1.) |
derived_type & | fill_circle (double_point< 2 > a, double radius, color_type col=ivl::white< T, rgb >(), double opacity=1.) |
derived_type & | fill_rect (double_point< 2 > a, double_point< 2 > b, color_type col=ivl::white(ivl::color_type< T, rgb >()), double opacity=1.) |
Fills circle on a with given radius, using the given color and opacity. anti-aliasing is performed. | |
derived_type & | fill_ellipse (double_point< 2 > a, double_point< 2 > b, double radius, color_type col=ivl::white(ivl::color_type< T, rgb >()), double opacity=1.) |
Fills an ellipse using centers and and total radius radius, using the given color and opacity. anti-aliasing is performed. | |
derived_type & | fill_ellipse (double_point< 2 > c, double radius1, double radius2, double angle, color_type col=ivl::white(ivl::color_type< T, rgb >()), double opacity=1.) |
derived_type & | fill_triangle (double_point< 2 > a, double_point< 2 > b, double_point< 2 > c, color_type col=ivl::white(ivl::color_type< T, rgb >()), double opacity=1.) |
Fills a triangle (a, b, c) using the given color and opacity. anti-aliasing is performed. | |
derived_type & | fill_quad (double_point< 2 > a, double_point< 2 > b, double_point< 2 > c, double_point< 2 > d, color_type col=ivl::white(ivl::color_type< T, rgb >()), double opacity=1.) |
Fills a quad (a, b, c, d) using the given color and opacity. anti-aliasing is performed. | |
Related Functions | |
(Note that these are not member functions.) | |
Image non-member functions | |
template<class T , class D > | |
void | show (const image< T, D > &im1, const char *title1, const image< T, D > &im2=image< T, D >(), const char *title2=NULL, const image< T, D > &im3=image< T, D >(), const char *title3=NULL, const image< T, D > &im4=image< T, D >(), const char *title4=NULL, const image< T, D > &im5=image< T, D >(), const char *title5=NULL) |
quickview, View ivl::image(s) into titled window(s) | |
template<class T1 , class D1 , class T2 , class D2 , class T3 , class D3 , class T4 , class D4 , class T5 , class D5 > | |
void | imshow_impl (const image< T1, D1 > &im1, const char *title1, const image< T2, D2 > &im2, const char *title2, const image< T3, D3 > &im3, const char *title3, const image< T4, D4 > &im4, const char *title4, const image< T5, D5 > &im5, const char *title5) |
template<class T , class D > | |
void | imshow (const image< T, D > &im1, const char *title1="") |
template<class T , class D , class T2 , class D2 > | |
void | imshow (const image< T, D > &im1, const char *title1, const image< T2, D2 > &im2, const char *title2="") |
template<class T , class D , class T2 , class D2 > | |
void | imshow (const image< T, D > &im1, const image< T2, D2 > &im2) |
template<class T , class D , class T2 , class D2 , class T3 , class D3 > | |
void | imshow (const image< T, D > &im1, const char *title1, const image< T2, D2 > &im2, const char *title2, const image< T3, D3 > &im3, const char *title3="") |
template<class T , class D , class T2 , class D2 , class T3 , class D3 > | |
void | imshow (const image< T, D > &im1, const image< T2, D2 > &im2, const image< T3, D3 > &im3) |
template<class T , class D > | |
void | view (const image< T, D > &img, const char *title) |
quickview, View ivl::image(s) into titled window(s) | |
template<class T , class D > | |
image< T, D >::create_similar | flipud (const image< T, D > &a) |
Horizontal and vertical flipping. | |
template<class T , class D > | |
image< T, D >::create_similar | fliplr (const image< T, D > &a) |
template<class T , class D > | |
image< T, D >::create_similar | grayscale (const image< T, D > &a) |
Grayscale. | |
template<class T , class D > | |
image< T, D >::create_new | sobel (const image< T, D > &a, int y_order, int x_order, int aperture_size=3) |
Sobel operator. | |
template<class T , class D > | |
image< T, D >::create_new | laplace (const image< T, D > &a, int aperture_size=3) |
Laplace. | |
template<class T , class D > | |
image< T, D >::create_new | edges (const image< T, D > &a, double threshold1, double threshold2, int aperture_size=3) |
Canny edge detection. | |
template<class T , class D > | |
image< T, D >::create_new | pre_corner_detect (const image< T, D > &a, int aperture_size=3) |
Corner detection, various algorithms. | |
template<class T , class D > | |
image< T, D >::create_new | corner_eigenvals (const image< T, D > &a, int block_size, int aperture_size=3) |
template<class T , class D > | |
image< T, D >::create_new | corner_min_eigenval (const image< T, D > &a, int block_size, int aperture_size=3) |
template<class T , class D > | |
image< T, D >::create_new | corner_harris (const image< T, D > &a, int block_size, int aperture_size=3, double k=0.04) |
template<class T , class D > | |
image< T, D >::create_new | pyramid_up (const image< T, D > &a) |
Pyramid algorithm. | |
template<class T , class D > | |
image< T, D >::create_new | pyramid_down (const image< T, D > &a) |
template<class T , class D > | |
image< T, D >::create_new | resample (const image< T, D > &a, size_t rows, size_t cols, interpolation interp=linear) |
Resize. | |
template<class T , class D > | |
image< T, D >::create_new | blur_no_scale (const image< T, D > &a, int neighbourhood_rows=0, int neighbourhood_cols=3) |
Blur algorithms. | |
template<class T , class D > | |
image< T, D >::create_new | blur (const image< T, D > &a, int neighbourhood_rows=0, int neighbourhood_cols=3) |
template<class T , class D > | |
image< T, D >::create_new | gaussian_blur (const image< T, D > &a, int neighbourhood_rows=0, int neighbourhood_cols=3, int vertical_sigma=0, int horizontal_sigma=0) |
template<class T , class D > | |
image< T, D >::create_new | median_blur (const image< T, D > &a, int neighbourhood=3) |
template<class T , class D > | |
image< T, D >::create_new | bilateral_blur (const image< T, D > &a, int color_sigma=3, int space_sigma=3) |
template<class T , class D > | |
image< T, D >::create_new | rotate (const image< T, D > &a, double angle, const float_point< 2 > ¢er, double scale=1.0, interpolation interp=linear, warp_method warp_m=fill_outliers, color< T, D::Ch > fill_color=ivl::black(color_type< T, rgb >())) |
Image Rotation. | |
template<class T , class D > | |
image< T, D >::create_new | get_quadrange_sub_pix (const image< T, D > &a, const array_2d< double > &map_matrix, const size_array &dst_size=idx(0, 0)) |
get_quadrange_sub_pix OpenCV wrapper. |
A single or multi channel image of type T based on array.
This class defines an image based on an array.
image< T, OPTS >::image | ( | size_t | rows, |
size_t | cols, | ||
size_t | channels, | ||
const array< J, D > & | a | ||
) | [inline] |
Create an image with size and pointer to data.
Create an empty image with similar initial value or array
derived_type& image< T, OPTS >::ellipse | ( | double_point< 2 > | c, |
double | radius1, | ||
double | radius2, | ||
double | angle, | ||
color_type | col = ivl::white<T, rgb>() , |
||
double | thickness = 1.5 , |
||
double | opacity = 1. |
||
) | [inline] |
Draws an ellipse using center , a given and radius1, radius2 of the two axis, horizontal and vertical. using the given color, thickness and opacity. anti-aliasing is performed
derived_type& image< T, OPTS >::fill_ellipse | ( | double_point< 2 > | c, |
double | radius1, | ||
double | radius2, | ||
double | angle, | ||
color_type | col = ivl::white(ivl::color_type<T, rgb>()) , |
||
double | opacity = 1. |
||
) | [inline] |
Fills an ellipse using center , a given and radius1, radius2 of the two axis, horizontal and vertical. using the given color and opacity. anti-aliasing is performed
void show | ( | const image< T, D > & | im1, |
const char * | title1, | ||
const image< T, D > & | im2 = image< T, D >() , |
||
const char * | title2 = NULL , |
||
const image< T, D > & | im3 = image< T, D >() , |
||
const char * | title3 = NULL , |
||
const image< T, D > & | im4 = image< T, D >() , |
||
const char * | title4 = NULL , |
||
const image< T, D > & | im5 = image< T, D >() , |
||
const char * | title5 = NULL |
||
) | [related] |
quickview, View ivl::image(s) into titled window(s)
quickview