Namespaces | Functions

mln::debug Namespace Reference

Namespace of routines that help to debug. More...

Namespaces

namespace  impl
 

Implementation namespace of debug namespace.


Functions

template<typename I , typename G , typename F >
void draw_graph (Image< I > &ima, const p_vertices< G, F > &pv, typename I::value vcolor, typename I::value ecolor)
 Draw an image ima from a mln::p_vertices pv, with value vcolor for vertices, value ecolor for edges and 0 for the background.
template<typename I , typename G , typename F , typename V , typename E >
void draw_graph (Image< I > &ima, const p_vertices< G, F > &pv, const Function< V > &vcolor_f_, const Function< E > &ecolor_f_)
 Draw an image ima from a mln::p_vertices pv.
template<typename I , typename G , typename F , typename V , typename E >
void draw_graph (Image< I > &ima, const p_vertices< util::line_graph< G >, F > &pv, const Function< V > &vcolor_f_, const Function< E > &ecolor_f_)
 Draw an image ima from a mln::p_vertices pv.
std::string filename (const std::string &filename, int id)
 Constructs and returns a formatted output file name.
signed short format (signed char v)
 Format a signed char to print it properly, i.e., like an integer value.
unsigned short format (unsigned char v)
 Format an unsigned char to print it properly, i.e., like an integer value.
template<typename T >
const T & format (const T &v)
 Default version for formatting a value is a no-op.
char format (bool v)
 Format a Boolean to print it nicely: "|" for true and "-" for false.
template<typename I >
void iota (Image< I > &input, unsigned base_index)
template<typename I >
mln::trait::concrete< I >::ret mosaic (const util::array< I > &input, unsigned n_horizontal, const typename I::value &bg)
 Create a single image from an array of image.
template<typename I >
void println (const std::string &msg, const Image< I > &input)
 Print the message msg and the image input on the standard output.
template<typename I >
void println (const Image< I > &input)
 Print the image input on the standard output.
template<typename I >
void println_with_border (const Image< I > &input)
 Print the image input on the standard output.
void put_word (image2d< char > &inout, const point2d &word_start, const std::string &word)
 Put the word starting at location word_start in the image inout.
template<typename I >
image2d< typename I::value > slices_2d (const Image< I > &input, unsigned n_horizontal, unsigned n_vertical, const typename I::value &bg)
 Create a 2D image of the slices of the 3D image input.
template<typename I >
image2d< typename I::value > slices_2d (const Image< I > &input, float ratio_hv, const typename I::value &bg)
 Create a 2D image of the slices of the 3D image input.
template<typename I , typename J >
mln::trait::ch_value< I,
value::rgb8 >::ret 
superpose (const Image< I > &input, const Image< J > &object)
template<typename I , typename J >
mln::trait::ch_value< I,
value::rgb8 >::ret 
superpose (const Image< I > &input_, const Image< J > &object_, const value::rgb8 &object_color)
 Superpose two images.
template<typename I >
void z_order (Image< I > &input)

Detailed Description

Namespace of routines that help to debug.


Function Documentation

template<typename I , typename G , typename F >
void mln::debug::draw_graph ( Image< I > &  ima,
const p_vertices< G, F > &  pv,
typename I::value  vcolor,
typename I::value  ecolor 
) [inline]

Draw an image ima from a mln::p_vertices pv, with value vcolor for vertices, value ecolor for edges and 0 for the background.

Definition at line 142 of file draw_graph.hh.

References mln::p_vertices< G, F >::graph(), and mln::draw::line().

Referenced by mln::make_debug_graph_image().

template<typename I , typename G , typename F , typename V , typename E >
void mln::debug::draw_graph ( Image< I > &  ima,
const p_vertices< G, F > &  pv,
const Function< V > &  vcolor_f_,
const Function< E > &  ecolor_f_ 
) [inline]

Draw an image ima from a mln::p_vertices pv.

Colors for vertices are defined through vcolor_f_. Colors for edges are defined though ecolor_f_.

Definition at line 173 of file draw_graph.hh.

References mln::draw::box_plain(), mln::box< P >::crop_wrt(), mln::p_vertices< G, F >::graph(), and mln::draw::line().

template<typename I , typename G , typename F , typename V , typename E >
void mln::debug::draw_graph ( Image< I > &  ima,
const p_vertices< util::line_graph< G >, F > &  pv,
const Function< V > &  vcolor_f_,
const Function< E > &  ecolor_f_ 
) [inline]

Draw an image ima from a mln::p_vertices pv.

Colors for vertices are defined through vcolor_f_. Colors for edges are defined though ecolor_f_.

Definition at line 211 of file draw_graph.hh.

References mln::p_line2d::begin(), mln::p_line2d::end(), mln::p_vertices< G, F >::graph(), and mln::draw::line().

std::string mln::debug::filename ( const std::string &  filename,
int  id = -1 
) [inline]

Constructs and returns a formatted output file name.

The file name is formatted as follow:

`filename_prefix`_`id`_`filename`

Where:

  • `filename_prefix` can be set through the global variable debug::internal::filename_prefix.

`postfix_id` is autoincremented by default. Its value can be forced.

  • `filename` is the given filename

Definition at line 86 of file filename.hh.

signed short mln::debug::format ( signed char  v  )  [inline]

Format a signed char to print it properly, i.e., like an integer value.

Definition at line 78 of file format.hh.

unsigned short mln::debug::format ( unsigned char  v  )  [inline]

Format an unsigned char to print it properly, i.e., like an integer value.

Definition at line 85 of file format.hh.

template<typename T >
const T & mln::debug::format ( const T &  v  )  [inline]

Default version for formatting a value is a no-op.

Definition at line 64 of file format.hh.

Referenced by mln::value::operator<<(), and mln::Gpoint< E >::operator<<().

char mln::debug::format ( bool  v  )  [inline]

Format a Boolean to print it nicely: "|" for true and "-" for false.

Definition at line 71 of file format.hh.

template<typename I >
void mln::debug::iota ( Image< I > &  input,
unsigned  base_index 
) [inline]

Fill the image input with successive values.

Parameters:
[in,out] input The image in which values are assigned.

Definition at line 88 of file debug/iota.hh.

References iota().

Referenced by iota().

template<typename I >
mln::trait::concrete< I >::ret mln::debug::mosaic ( const util::array< I > &  input,
unsigned  n_horizontal,
const typename I::value &  bg 
) [inline]

Create a single image from an array of image.

The size of the output image is defined by:

width = n_horizontal * max(input[i].ncols()) height = (input.size() / n_horizontal) * max(input[i].nrows())

Returns:
a single image where all the input images are displayed as a mosaic.

Definition at line 77 of file mosaic.hh.

References mln::apply_p2p(), mln::data::fill(), and mln::data::paste().

template<typename I >
void mln::debug::println ( const std::string &  msg,
const Image< I > &  input 
)

Print the message msg and the image input on the standard output.

Definition at line 98 of file println.hh.

References println().

template<typename I >
void mln::debug::println ( const Image< I > &  input  )  [inline]

Print the image input on the standard output.

Definition at line 87 of file println.hh.

References mln::geom::bbox().

Referenced by println().

template<typename I >
void mln::debug::println_with_border ( const Image< I > &  input  )  [inline]

Print the image input on the standard output.

Definition at line 79 of file println_with_border.hh.

References mln::geom::bbox().

void mln::debug::put_word ( image2d< char > &  inout,
const point2d &  word_start,
const std::string &  word 
) [inline]

Put the word starting at location word_start in the image inout.

Definition at line 55 of file put_word.hh.

References mln::image2d< T >::has(), and mln::point< G, C >::last_coord().

template<typename I >
image2d< typename I::value > mln::debug::slices_2d ( const Image< I > &  input,
unsigned  n_horizontal,
unsigned  n_vertical,
const typename I::value &  bg 
) [inline]

Create a 2D image of the slices of the 3D image input.

Definition at line 79 of file slices_2d.hh.

References mln::apply_p2p(), mln::data::fill(), and mln::data::paste().

Referenced by slices_2d().

template<typename I >
image2d< typename I::value > mln::debug::slices_2d ( const Image< I > &  input,
float  ratio_hv,
const typename I::value &  bg 
)

Create a 2D image of the slices of the 3D image input.

Definition at line 162 of file slices_2d.hh.

References slices_2d().

template<typename I , typename J >
mln::trait::ch_value< I, value::rgb8 >::ret mln::debug::superpose ( const Image< I > &  input,
const Image< J > &  object 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 106 of file debug/superpose.hh.

References mln::literal::red, and superpose().

template<typename I , typename J >
mln::trait::ch_value< I, value::rgb8 >::ret mln::debug::superpose ( const Image< I > &  input_,
const Image< J > &  object_,
const value::rgb8 &  object_color 
)

Superpose two images.

Parameters:
[in] input_ An image. Its value type must be convertible toward value::rgb8 thanks to a conversion operator or convert::from_to.
[in] object_ A scalar or labeled image. Objects used for superposition. have their pixel values different from 0.
[in] object_color The color used to draw the objects in object_.
Precondition:
input_ and object_ must have the same domain.
Returns:
A color image.

Definition at line 79 of file debug/superpose.hh.

References mln::data::convert(), mln::data::fill(), and mln::literal::zero.

Referenced by superpose().

template<typename I >
void mln::debug::z_order ( Image< I > &  input  )  [inline]

Fill the image input with Z-order (curve) values.

Parameters:
[in,out] input The image in which values are assigned.

Reference: http://en.wikipedia.org/wiki/Z-order_(curve)

Definition at line 142 of file z_order.hh.