]> rtime.felk.cvut.cz Git - opencv.git/blobdiff - opencv/doc/cv_image_transform.tex
Many fixes for problems found by latex2sphinx. Turn citations into cite{}.
[opencv.git] / opencv / doc / cv_image_transform.tex
index 5bf73fd4114db5e59d18b9c3aafa7ca64c26c35c..4bca51dd2000ae705ff33e8cd45d02e174a2eeb5 100644 (file)
@@ -270,12 +270,12 @@ the Ford98
 
  \item Bayer $\rightarrow$ RGB (\texttt{CV\_BayerBG2BGR, CV\_BayerGB2BGR, CV\_BayerRG2BGR, CV\_BayerGR2BGR, CV\_BayerBG2RGB, CV\_BayerGB2RGB, CV\_BayerRG2RGB, CV\_BayerGR2RGB}) The Bayer pattern is widely used in CCD and CMOS cameras. It allows one to get color pictures from a single plane where R,G and B pixels (sensors of a particular component) are interleaved like this:
 
-\newcommand{\Rcell}{\color{red}R}
-\newcommand{\Gcell}{\color{green}G}
-\newcommand{\Bcell}{\color{blue}B}
 
 
 \[
+\newcommand{\Rcell}{\color{red}R}
+\newcommand{\Gcell}{\color{green}G}
+\newcommand{\Bcell}{\color{blue}B}
 \definecolor{BackGray}{rgb}{0.8,0.8,0.8}
 \begin{array}{ c c c c c }
 \Rcell&\Gcell&\Rcell&\Gcell&\Rcell\\
@@ -386,16 +386,7 @@ In this mode the processing time is still O(N), where N is the number of
 pixels. Thus, the function provides a very fast way to compute approximate
 Voronoi diagram for the binary image.
 
-\cvCPyFunc{FloodFill}
-Fills a connected component with the given color.
-
-\cvdefC{
-void cvFloodFill(\par CvArr* image,\par CvPoint seed\_point,\par CvScalar new\_val,\par
-                  CvScalar lo\_diff=cvScalarAll(0),\par CvScalar up\_diff=cvScalarAll(0),\par
-                  CvConnectedComp* comp=NULL,\par int flags=4,\par CvArr* mask=NULL );
-
-}
-\cvdefPy{FloodFill(image,seed\_point,new\_val,lo\_diff=(0,0,0,0),up\_diff=(0,0,0,0),flags=4,mask=NULL)-> comp}
+\cvclass{CvConnectedComp}
 
 \ifC
 \begin{lstlisting}
@@ -408,18 +399,38 @@ typedef struct CvConnectedComp
                       (the contour might have child contours corresponding to the holes) */
 } CvConnectedComp;
 
-#define CV_FLOODFILL_FIXED_RANGE (1 << 16)
-#define CV_FLOODFILL_MASK_ONLY   (1 << 17)
 \end{lstlisting}
 \fi
 
+\ifPy
+Connected component, represented as a tuple (area, value, rect), where
+area is the area of the component as a float, value is the average color
+as a \cross{CvScalar}, and rect is the ROI of the component, as a \cross{CvRect}.
+\fi
+
+\cvCPyFunc{FloodFill}
+Fills a connected component with the given color.
+
+\cvdefC{
+void cvFloodFill(\par CvArr* image,\par CvPoint seed\_point,\par CvScalar new\_val,\par
+                  CvScalar lo\_diff=cvScalarAll(0),\par CvScalar up\_diff=cvScalarAll(0),\par
+                  CvConnectedComp* comp=NULL,\par int flags=4,\par CvArr* mask=NULL );
+
+}
+\cvdefPy{FloodFill(image,seed\_point,new\_val,lo\_diff=(0,0,0,0),up\_diff=(0,0,0,0),flags=4,mask=NULL)-> comp}
+
+
 \begin{description}
 \cvarg{image}{Input 1- or 3-channel, 8-bit or floating-point image. It is modified by the function unless the \texttt{CV\_FLOODFILL\_MASK\_ONLY} flag is set (see below)}
 \cvarg{seed\_point}{The starting point}
 \cvarg{new\_val}{New value of the repainted domain pixels}
 \cvarg{lo\_diff}{Maximal lower brightness/color difference between the currently observed pixel and one of its neighbors belonging to the component, or a seed pixel being added to the component. In the case of 8-bit color images it is a packed value}
 \cvarg{up\_diff}{Maximal upper brightness/color difference between the currently observed pixel and one of its neighbors belonging to the component, or a seed pixel being added to the component. In the case of 8-bit color images it is a packed value}
+\ifC % {
 \cvarg{comp}{Pointer to the structure that the function fills with the information about the repainted domain}
+\else % }{
+\cvarg{comp}{Returned connected component for the repainted domain}
+\fi % }
 \cvarg{flags}{The operation flags. Lower bits contain connectivity value, 4 (by default) or 8, used within the function. Connectivity determines which neighbors of a pixel are considered. Upper bits can be 0 or a combination of the following flags:
 \begin{description}
   \cvarg{CV\_FLOODFILL\_FIXED\_RANGE}{if set, the difference between the current pixel and seed pixel is considered, otherwise the difference between neighbor pixels is considered (the range is floating)}
@@ -472,7 +483,7 @@ void cvInpaint( \par const CvArr* src, \par const CvArr* mask, \par CvArr* dst,
 \cvarg{flags}{The inpainting method, one of the following:
 \begin{description}
 \cvarg{CV\_INPAINT\_NS}{Navier-Stokes based method.}
-\cvarg{CV\_INPAINT\_TELEA}{The method by Alexandru Telea \href{\#Telea04}{[Telea04]}}
+\cvarg{CV\_INPAINT\_TELEA}{The method by Alexandru Telea \cite{Telea04}}
 \end{description}}
 \end{description}
 
@@ -663,8 +674,8 @@ Applies an adaptive threshold to an array.
 \cvarg{dst}{Destination image; will have the same size and the same type as \texttt{src}}
 \cvarg{maxValue}{The non-zero value assigned to the pixels for which the condition is satisfied. See the discussion}
 \cvarg{adaptiveMethod}{Adaptive thresholding algorithm to use,
-   \cvarg{ADAPTIVE\_THRESH\_MEAN\_C} or \cvarg{ADAPTIVE\_THRESH\_GAUSSIAN\_C} (see the discussion)}
-\cvarg{thresholdType}{Thresholding type; must be one of \cvarg{THRESH\_BINARY} or \cvarg{THRESH\_BINARY\_INV}}
+   \texttt{ADAPTIVE\_THRESH\_MEAN\_C} or \texttt{ADAPTIVE\_THRESH\_GAUSSIAN\_C} (see the discussion)}
+\cvarg{thresholdType}{Thresholding type; must be one of \texttt{THRESH\_BINARY} or \texttt{THRESH\_BINARY\_INV}}
 \cvarg{blockSize}{The size of a pixel neighborhood that is used to calculate a threshold value for the pixel: 3, 5, 7, and so on}
 \cvarg{C}{The constant subtracted from the mean or weighted mean (see the discussion); normally, it's positive, but may be zero or negative as well}
 \end{description}
@@ -910,12 +921,10 @@ The above formulas for converting RGB to/from various color spaces have been tak
 
  \item Bayer $\rightarrow$ RGB (\texttt{CV\_BayerBG2BGR, CV\_BayerGB2BGR, CV\_BayerRG2BGR, CV\_BayerGR2BGR, CV\_BayerBG2RGB, CV\_BayerGB2RGB, CV\_BayerRG2RGB, CV\_BayerGR2RGB}) The Bayer pattern is widely used in CCD and CMOS cameras. It allows one to get color pictures from a single plane where R,G and B pixels (sensors of a particular component) are interleaved like this:
 
+\[
 \newcommand{\Rcell}{\color{red}R}
 \newcommand{\Gcell}{\color{green}G}
 \newcommand{\Bcell}{\color{blue}B}
-
-
-\[
 \definecolor{BackGray}{rgb}{0.8,0.8,0.8}
 \begin{array}{ c c c c c }
 \Rcell&\Gcell&\Rcell&\Gcell&\Rcell\\