\hypertarget{a02746}{
\section{mln::transform Namespace Reference}
\label{d4/da5/a02746}\index{mln::transform@{mln::transform}}
}


Namespace of transforms.  


\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
{\footnotesize template$<$typename I , typename N , typename D $>$ }\\\hyperlink{a00392}{util::couple}$<$ mln::trait::ch\_\-value$<$ I, D $>$::ret, mln::trait::ch\_\-value$<$ I, typename I::psite $>$::ret $>$ \hyperlink{a02746_adfc53600fdb634c3e761235f645d3b61}{distance\_\-and\_\-closest\_\-point\_\-geodesic} (const \hyperlink{a00044}{Image}$<$ I $>$ \&input, const \hyperlink{a00296}{Neighborhood}$<$ N $>$ \&nbh, D max)
\begin{DoxyCompactList}\small\item\em Discrete geodesic distance transform. \item\end{DoxyCompactList}\item 
{\footnotesize template$<$typename P , typename N , typename D $>$ }\\\hyperlink{a00392}{util::couple}$<$ mln\_\-image\_\-from\_\-grid(mln\_\-grid(P), D), mln\_\-image\_\-from\_\-grid(mln\_\-grid(P), unsigned)$>$ \hyperlink{a02746_ae01deed57723f01a009de0eb212adeae}{distance\_\-and\_\-closest\_\-point\_\-geodesic} (const \hyperlink{a00300}{p\_\-array}$<$ P $>$ \&pset, const \hyperlink{a00135}{box}$<$ P $>$ \&closest\_\-point\_\-domain, const \hyperlink{a00296}{Neighborhood}$<$ N $>$ \&nbh, D max)
\begin{DoxyCompactList}\small\item\em Discrete geodesic distance transform. \item\end{DoxyCompactList}\item 
{\footnotesize template$<$typename I , typename N , typename D $>$ }\\\hyperlink{a00392}{util::couple}$<$ mln::trait::ch\_\-value$<$ I, D $>$::ret, I $>$ \hyperlink{a02746_a7e0c4cc9670fc5d05443d9da2c25999c}{distance\_\-and\_\-influence\_\-zone\_\-geodesic} (const \hyperlink{a00044}{Image}$<$ I $>$ \&input, const \hyperlink{a00296}{Neighborhood}$<$ N $>$ \&nbh, D max)
\begin{DoxyCompactList}\small\item\em Discrete geodesic distance transform. \item\end{DoxyCompactList}\item 
{\footnotesize template$<$typename I , typename N , typename W , typename D $>$ }\\mln::trait::ch\_\-value$<$ I, D $>$::ret \hyperlink{a02746_a50ba14392ae6a61549c4795ca4bdecf0}{distance\_\-front} (const \hyperlink{a00044}{Image}$<$ I $>$ \&input, const \hyperlink{a00296}{Neighborhood}$<$ N $>$ \&nbh, const \hyperlink{a00443}{Weighted\_\-Window}$<$ W $>$ \&w\_\-win, D max)
\begin{DoxyCompactList}\small\item\em Discrete front distance transform. \item\end{DoxyCompactList}\item 
{\footnotesize template$<$typename I , typename N , typename D $>$ }\\mln::trait::ch\_\-value$<$ I, D $>$::ret \hyperlink{a02746_ad37c9248646d8c2e05c297e5d643a9b0}{distance\_\-geodesic} (const \hyperlink{a00044}{Image}$<$ I $>$ \&input, const \hyperlink{a00296}{Neighborhood}$<$ N $>$ \&nbh, D max)
\begin{DoxyCompactList}\small\item\em Discrete geodesic distance transform. \item\end{DoxyCompactList}\item 
{\footnotesize template$<$typename I $>$ }\\\hyperlink{a00248}{image2d}$<$ float $>$ \hyperlink{a02746_ae1be61fc760f780a7b018273855fd0a9}{hough} (const \hyperlink{a00044}{Image}$<$ I $>$ \&input\_\-)
\begin{DoxyCompactList}\small\item\em Compute the hough transform from a binary image. \item\end{DoxyCompactList}\item 
{\footnotesize template$<$typename I , typename N , typename W $>$ }\\mln::trait::concrete$<$ I $>$::ret \hyperlink{a02746_a23c4a4f7a377d8190af0d67f304bb441}{influence\_\-zone\_\-front} (const \hyperlink{a00044}{Image}$<$ I $>$ \&input, const \hyperlink{a00296}{Neighborhood}$<$ N $>$ \&nbh, const \hyperlink{a00443}{Weighted\_\-Window}$<$ W $>$ \&w\_\-win)
\begin{DoxyCompactList}\small\item\em Influence zone transform. \item\end{DoxyCompactList}\item 
{\footnotesize template$<$typename I , typename N , typename W , typename D $>$ }\\mln::trait::concrete$<$ I $>$::ret \hyperlink{a02746_ac8df8da07cbfe46f71fd04d476713f9d}{influence\_\-zone\_\-front} (const \hyperlink{a00044}{Image}$<$ I $>$ \&input, const \hyperlink{a00296}{Neighborhood}$<$ N $>$ \&nbh, const \hyperlink{a00443}{Weighted\_\-Window}$<$ W $>$ \&w\_\-win, D max)
\begin{DoxyCompactList}\small\item\em Influence zone transform. \item\end{DoxyCompactList}\item 
{\footnotesize template$<$typename I , typename N $>$ }\\mln::trait::concrete$<$ I $>$::ret \hyperlink{a02746_ab11dd573a22c639c115f4284fe52f662}{influence\_\-zone\_\-geodesic} (const \hyperlink{a00044}{Image}$<$ I $>$ \&input, const \hyperlink{a00296}{Neighborhood}$<$ N $>$ \&nbh)
\begin{DoxyCompactList}\small\item\em Geodesic influence zone transform. \item\end{DoxyCompactList}\item 
{\footnotesize template$<$typename I , typename N , typename D $>$ }\\mln::trait::concrete$<$ I $>$::ret \hyperlink{a02746_a3cdffec2f2a15b2d002f3247ab06b83e}{influence\_\-zone\_\-geodesic\_\-saturated} (const \hyperlink{a00044}{Image}$<$ I $>$ \&input, const \hyperlink{a00296}{Neighborhood}$<$ N $>$ \&nbh, const D \&max, const typename I::value \&background\_\-value)
\begin{DoxyCompactList}\small\item\em Geodesic influence zone transform. \item\end{DoxyCompactList}\item 
{\footnotesize template$<$typename I , typename N , typename D $>$ }\\mln::trait::concrete$<$ I $>$::ret \hyperlink{a02746_a4644661832e605941e7169a2dc5fe1fa}{influence\_\-zone\_\-geodesic\_\-saturated} (const \hyperlink{a00044}{Image}$<$ I $>$ \&input, const \hyperlink{a00296}{Neighborhood}$<$ N $>$ \&nbh, const D \&max)
\end{DoxyCompactItemize}


\subsection{Detailed Description}
Namespace of transforms. 

\subsection{Function Documentation}
\hypertarget{a02746_adfc53600fdb634c3e761235f645d3b61}{
\index{mln::transform@{mln::transform}!distance\_\-and\_\-closest\_\-point\_\-geodesic@{distance\_\-and\_\-closest\_\-point\_\-geodesic}}
\index{distance\_\-and\_\-closest\_\-point\_\-geodesic@{distance\_\-and\_\-closest\_\-point\_\-geodesic}!mln::transform@{mln::transform}}
\subsubsection[{distance\_\-and\_\-closest\_\-point\_\-geodesic}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I , typename N , typename D $>$ {\bf util::couple}$<$ mln::trait::ch\_\-value$<$ I, D $>$::ret, mln::trait::ch\_\-value$<$ I, typename I::psite $>$::ret $>$ mln::transform::distance\_\-and\_\-closest\_\-point\_\-geodesic (
\begin{DoxyParamCaption}
\item[{const Image$<$ I $>$ \&}]{ input, }
\item[{const Neighborhood$<$ N $>$ \&}]{ nbh, }
\item[{D}]{ max}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d4/da5/a02746_adfc53600fdb634c3e761235f645d3b61}


Discrete geodesic distance transform. 


\begin{DoxyParams}{Parameters}
\item[\mbox{\tt[in]} {\em input}]\hyperlink{a00044}{Image} from which the geodesic distance is computed. \item[\mbox{\tt[in]} {\em nbh}]\hyperlink{a00296}{Neighborhood} \item[\mbox{\tt[in]} {\em max}]Max distance of propagation.\end{DoxyParams}
\begin{DoxyReturn}{Returns}
a couple of images. The first one is the distance map and the second one is the closest point image. The closest point image contains sites.
\end{DoxyReturn}
\begin{DoxyPostcond}{Postcondition}
The returned images have the same domain as {\ttfamily input}. 
\end{DoxyPostcond}


Definition at line 90 of file distance\_\-and\_\-closest\_\-point\_\-geodesic.hh.



References mln::make::couple(), and distance\_\-geodesic().

\hypertarget{a02746_ae01deed57723f01a009de0eb212adeae}{
\index{mln::transform@{mln::transform}!distance\_\-and\_\-closest\_\-point\_\-geodesic@{distance\_\-and\_\-closest\_\-point\_\-geodesic}}
\index{distance\_\-and\_\-closest\_\-point\_\-geodesic@{distance\_\-and\_\-closest\_\-point\_\-geodesic}!mln::transform@{mln::transform}}
\subsubsection[{distance\_\-and\_\-closest\_\-point\_\-geodesic}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P , typename N , typename D $>$ {\bf util::couple}$<$ mln\_\-image\_\-from\_\-grid(mln\_\-grid(P), D), mln\_\-image\_\-from\_\-grid(mln\_\-grid(P), unsigned)$>$ mln::transform::distance\_\-and\_\-closest\_\-point\_\-geodesic (
\begin{DoxyParamCaption}
\item[{const p\_\-array$<$ P $>$ \&}]{ pset, }
\item[{const box$<$ P $>$ \&}]{ closest\_\-point\_\-domain, }
\item[{const Neighborhood$<$ N $>$ \&}]{ nbh, }
\item[{D}]{ max}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d4/da5/a02746_ae01deed57723f01a009de0eb212adeae}


Discrete geodesic distance transform. 


\begin{DoxyParams}{Parameters}
\item[\mbox{\tt[in]} {\em pset}]an array of sites. \item[\mbox{\tt[in]} {\em closest\_\-point\_\-domain}]domain of the returned image. \item[\mbox{\tt[in]} {\em nbh}]neighborhood \item[\mbox{\tt[in]} {\em max}]max distance of propagation.\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A couple of images. The first one is the distance map and the second one is the closest point image. The closest point image contains site indexes.
\end{DoxyReturn}
\begin{DoxyPostcond}{Postcondition}
The returned image domains are defined on {\ttfamily closest\_\-point\_\-domain}. 
\end{DoxyPostcond}


Definition at line 110 of file distance\_\-and\_\-closest\_\-point\_\-geodesic.hh.



References mln::geom::bbox(), mln::make::couple(), distance\_\-geodesic(), mln::data::fill(), and mln::box$<$ P $>$::is\_\-valid().

\hypertarget{a02746_a7e0c4cc9670fc5d05443d9da2c25999c}{
\index{mln::transform@{mln::transform}!distance\_\-and\_\-influence\_\-zone\_\-geodesic@{distance\_\-and\_\-influence\_\-zone\_\-geodesic}}
\index{distance\_\-and\_\-influence\_\-zone\_\-geodesic@{distance\_\-and\_\-influence\_\-zone\_\-geodesic}!mln::transform@{mln::transform}}
\subsubsection[{distance\_\-and\_\-influence\_\-zone\_\-geodesic}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I , typename N , typename D $>$ {\bf util::couple}$<$ mln::trait::ch\_\-value$<$ I, D $>$::ret, I $>$ mln::transform::distance\_\-and\_\-influence\_\-zone\_\-geodesic (
\begin{DoxyParamCaption}
\item[{const Image$<$ I $>$ \&}]{ input, }
\item[{const Neighborhood$<$ N $>$ \&}]{ nbh, }
\item[{D}]{ max}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d4/da5/a02746_a7e0c4cc9670fc5d05443d9da2c25999c}


Discrete geodesic distance transform. 


\begin{DoxyParams}{Parameters}
\item[\mbox{\tt[in]} {\em input}]\hyperlink{a00044}{Image} from which the geodesic distance is computed. \item[\mbox{\tt[in]} {\em nbh}]\hyperlink{a00296}{Neighborhood} \item[\mbox{\tt[in]} {\em max}]Max distance of propagation.\end{DoxyParams}
\begin{DoxyReturn}{Returns}
a couple of images. The first one is the distance map and the second one is the closest point image. The closest point image contains sites.
\end{DoxyReturn}
\begin{DoxyPostcond}{Postcondition}
The returned images have the same domain as {\ttfamily input}. 
\end{DoxyPostcond}


Definition at line 69 of file distance\_\-and\_\-influence\_\-zone\_\-geodesic.hh.



References mln::make::couple(), and distance\_\-geodesic().

\hypertarget{a02746_a50ba14392ae6a61549c4795ca4bdecf0}{
\index{mln::transform@{mln::transform}!distance\_\-front@{distance\_\-front}}
\index{distance\_\-front@{distance\_\-front}!mln::transform@{mln::transform}}
\subsubsection[{distance\_\-front}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I , typename N , typename W , typename D $>$ mln::trait::ch\_\-value$<$ I, D $>$::ret mln::transform::distance\_\-front (
\begin{DoxyParamCaption}
\item[{const Image$<$ I $>$ \&}]{ input, }
\item[{const Neighborhood$<$ N $>$ \&}]{ nbh, }
\item[{const Weighted\_\-Window$<$ W $>$ \&}]{ w\_\-win, }
\item[{D}]{ max}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d4/da5/a02746_a50ba14392ae6a61549c4795ca4bdecf0}


Discrete front distance transform. 



Definition at line 56 of file transform/distance\_\-front.hh.

\hypertarget{a02746_ad37c9248646d8c2e05c297e5d643a9b0}{
\index{mln::transform@{mln::transform}!distance\_\-geodesic@{distance\_\-geodesic}}
\index{distance\_\-geodesic@{distance\_\-geodesic}!mln::transform@{mln::transform}}
\subsubsection[{distance\_\-geodesic}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I , typename N , typename D $>$ mln::trait::ch\_\-value$<$ I, D $>$::ret mln::transform::distance\_\-geodesic (
\begin{DoxyParamCaption}
\item[{const Image$<$ I $>$ \&}]{ input, }
\item[{const Neighborhood$<$ N $>$ \&}]{ nbh, }
\item[{D}]{ max}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d4/da5/a02746_ad37c9248646d8c2e05c297e5d643a9b0}


Discrete geodesic distance transform. 



Definition at line 55 of file transform/distance\_\-geodesic.hh.



Referenced by distance\_\-and\_\-closest\_\-point\_\-geodesic(), and distance\_\-and\_\-influence\_\-zone\_\-geodesic().

\hypertarget{a02746_ae1be61fc760f780a7b018273855fd0a9}{
\index{mln::transform@{mln::transform}!hough@{hough}}
\index{hough@{hough}!mln::transform@{mln::transform}}
\subsubsection[{hough}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I $>$ {\bf image2d}$<$ float $>$ mln::transform::hough (
\begin{DoxyParamCaption}
\item[{const Image$<$ I $>$ \&}]{ input\_\-}
\end{DoxyParamCaption}
)}}
\label{d4/da5/a02746_ae1be61fc760f780a7b018273855fd0a9}


Compute the hough transform from a binary image. 

Objects used for computation must be set to 'true'.


\begin{DoxyParams}{Parameters}
\item[\mbox{\tt[in]} {\em input\_\-}]A binary image.\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A 2D image of float. Rows are used for the distance and columns are used for the angles. Angles go from 0 to 359. Distance goes from 0 to the maximum distance between the center and a corner. The site having the maximum value indicates through its column index the document inclination. 
\end{DoxyReturn}


Definition at line 98 of file hough.hh.



References mln::opt::at(), mln::data::fill(), mln::geom::min\_\-col(), mln::geom::min\_\-row(), mln::geom::ncols(), and mln::geom::nrows().

\hypertarget{a02746_a23c4a4f7a377d8190af0d67f304bb441}{
\index{mln::transform@{mln::transform}!influence\_\-zone\_\-front@{influence\_\-zone\_\-front}}
\index{influence\_\-zone\_\-front@{influence\_\-zone\_\-front}!mln::transform@{mln::transform}}
\subsubsection[{influence\_\-zone\_\-front}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I , typename N , typename W $>$ mln::trait::concrete$<$ I $>$::ret mln::transform::influence\_\-zone\_\-front (
\begin{DoxyParamCaption}
\item[{const Image$<$ I $>$ \&}]{ input, }
\item[{const Neighborhood$<$ N $>$ \&}]{ nbh, }
\item[{const Weighted\_\-Window$<$ W $>$ \&}]{ w\_\-win}
\end{DoxyParamCaption}
)}}
\label{d4/da5/a02746_a23c4a4f7a377d8190af0d67f304bb441}


Influence zone transform. 



Definition at line 78 of file influence\_\-zone\_\-front.hh.



References influence\_\-zone\_\-front().

\hypertarget{a02746_ac8df8da07cbfe46f71fd04d476713f9d}{
\index{mln::transform@{mln::transform}!influence\_\-zone\_\-front@{influence\_\-zone\_\-front}}
\index{influence\_\-zone\_\-front@{influence\_\-zone\_\-front}!mln::transform@{mln::transform}}
\subsubsection[{influence\_\-zone\_\-front}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I , typename N , typename W , typename D $>$ mln::trait::concrete$<$ I $>$::ret mln::transform::influence\_\-zone\_\-front (
\begin{DoxyParamCaption}
\item[{const Image$<$ I $>$ \&}]{ input, }
\item[{const Neighborhood$<$ N $>$ \&}]{ nbh, }
\item[{const Weighted\_\-Window$<$ W $>$ \&}]{ w\_\-win, }
\item[{D}]{ max}
\end{DoxyParamCaption}
)}}
\label{d4/da5/a02746_ac8df8da07cbfe46f71fd04d476713f9d}


Influence zone transform. 



Definition at line 60 of file influence\_\-zone\_\-front.hh.



References mln::canvas::distance\_\-front().



Referenced by influence\_\-zone\_\-front().

\hypertarget{a02746_ab11dd573a22c639c115f4284fe52f662}{
\index{mln::transform@{mln::transform}!influence\_\-zone\_\-geodesic@{influence\_\-zone\_\-geodesic}}
\index{influence\_\-zone\_\-geodesic@{influence\_\-zone\_\-geodesic}!mln::transform@{mln::transform}}
\subsubsection[{influence\_\-zone\_\-geodesic}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I , typename N $>$ mln::trait::concrete$<$ I $>$::ret mln::transform::influence\_\-zone\_\-geodesic (
\begin{DoxyParamCaption}
\item[{const Image$<$ I $>$ \&}]{ input, }
\item[{const Neighborhood$<$ N $>$ \&}]{ nbh}
\end{DoxyParamCaption}
)}}
\label{d4/da5/a02746_ab11dd573a22c639c115f4284fe52f662}


Geodesic influence zone transform. 


\begin{DoxyParams}{Parameters}
\item[\mbox{\tt[in]} {\em input}]An image. \item[\mbox{\tt[in]} {\em nbh}]A neighborhood.\end{DoxyParams}
\begin{DoxyReturn}{Returns}
An image of influence zone. 
\end{DoxyReturn}


Definition at line 216 of file influence\_\-zone\_\-geodesic.hh.

\hypertarget{a02746_a3cdffec2f2a15b2d002f3247ab06b83e}{
\index{mln::transform@{mln::transform}!influence\_\-zone\_\-geodesic\_\-saturated@{influence\_\-zone\_\-geodesic\_\-saturated}}
\index{influence\_\-zone\_\-geodesic\_\-saturated@{influence\_\-zone\_\-geodesic\_\-saturated}!mln::transform@{mln::transform}}
\subsubsection[{influence\_\-zone\_\-geodesic\_\-saturated}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I , typename N , typename D $>$ mln::trait::concrete$<$ I $>$::ret mln::transform::influence\_\-zone\_\-geodesic\_\-saturated (
\begin{DoxyParamCaption}
\item[{const Image$<$ I $>$ \&}]{ input, }
\item[{const Neighborhood$<$ N $>$ \&}]{ nbh, }
\item[{const D \&}]{ max, }
\item[{const typename I::value \&}]{ background\_\-value}
\end{DoxyParamCaption}
)}}
\label{d4/da5/a02746_a3cdffec2f2a15b2d002f3247ab06b83e}


Geodesic influence zone transform. 


\begin{DoxyParams}{Parameters}
\item[\mbox{\tt[in]} {\em input}]An image. \item[\mbox{\tt[in]} {\em nbh}]A neighborhood. \item[\mbox{\tt[in]} {\em max}]The maximum influence zone distance. \item[\mbox{\tt[in]} {\em background\_\-value}]The value used as background (i.e. not propagated).\end{DoxyParams}
\begin{DoxyReturn}{Returns}
An image of influence zone. 
\end{DoxyReturn}


Definition at line 73 of file influence\_\-zone\_\-geodesic\_\-saturated.hh.



References mln::canvas::distance\_\-geodesic().



Referenced by influence\_\-zone\_\-geodesic\_\-saturated().

\hypertarget{a02746_a4644661832e605941e7169a2dc5fe1fa}{
\index{mln::transform@{mln::transform}!influence\_\-zone\_\-geodesic\_\-saturated@{influence\_\-zone\_\-geodesic\_\-saturated}}
\index{influence\_\-zone\_\-geodesic\_\-saturated@{influence\_\-zone\_\-geodesic\_\-saturated}!mln::transform@{mln::transform}}
\subsubsection[{influence\_\-zone\_\-geodesic\_\-saturated}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I , typename N , typename D $>$ mln::trait::concrete$<$ I $>$::ret mln::transform::influence\_\-zone\_\-geodesic\_\-saturated (
\begin{DoxyParamCaption}
\item[{const Image$<$ I $>$ \&}]{ input, }
\item[{const Neighborhood$<$ N $>$ \&}]{ nbh, }
\item[{const D \&}]{ max}
\end{DoxyParamCaption}
)}}
\label{d4/da5/a02746_a4644661832e605941e7169a2dc5fe1fa}
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 93 of file influence\_\-zone\_\-geodesic\_\-saturated.hh.



References influence\_\-zone\_\-geodesic\_\-saturated(), and mln::literal::zero.

