diff --git a/Article/Fig_method/parpaings.png b/Article/Fig_method/parpaings.png new file mode 100644 index 0000000000000000000000000000000000000000..ac6716017d8dd3a3b6d1bde446140a7032de1386 Binary files /dev/null and b/Article/Fig_method/parpaings.png differ diff --git a/Article/Fig_method/parpaings2.png b/Article/Fig_method/parpaings2.png new file mode 100644 index 0000000000000000000000000000000000000000..70b3376d8d3a44aff8525a29581a5de8b26b13a2 Binary files /dev/null and b/Article/Fig_method/parpaings2.png differ diff --git a/Article/Fig_method/parpaings3.png b/Article/Fig_method/parpaings3.png new file mode 100644 index 0000000000000000000000000000000000000000..a5844fe79faa96225bc829bc196d9d080e2a8275 Binary files /dev/null and b/Article/Fig_method/parpaings3.png differ diff --git a/Article/method.tex b/Article/method.tex index 0383ebcaecc8be8bcf61666bc7f49f6f30531ec6..cc263ff80a36202fcc7a0df4e74ccca012c57f2d 100755 --- a/Article/method.tex +++ b/Article/method.tex @@ -270,24 +270,28 @@ This distinction is illustrated on \RefFig{fig:edgeDir}. \label{fig:edgeDir} \end{figure} -Another option, called multi-detection allows the detection of all the -segments crossed by the input stroke $AB$. -The multi-detection algorithm (Algorithm 1) is displayed below. +\subsection{Multiple blurred segments detection} -\input{Fig_method/algoMulti} +Another option, called {\it multi-detection} (Algorithm 1), allows the +detection of all the segments crossed by the input stroke $AB$. +In order to avoid multiple detections of the same edge, an occupancy mask, +initially empty, collects the dilated points of all the blurred segments, +so that these points can not be add to another segment. -First the positions $M_j$ of the local maxima of the gradient magnitude found -under the stroke are sorted from the highest to the lowest. +First the positions $M_j$ of the prominent local maxima of the gradient +magnitude found under the stroke are sorted from the highest to the lowest. For each of them the main detection process is run with three modifications: -i) the initial detection takes $M_j$ and the orthogonal direction $AB_\perp$ +\begin{enumerate} +\item the initial detection takes $M_j$ and the orthogonal direction $AB_\perp$ to the stroke as input to build a static scan of fixed width $\varepsilon_{ini}$, and $M_j$ is used as start point of the blurred segment; -ii) an occupancy mask, initially empty, is filled in with the points of the -detected blurred segments $\mathcal{B}_j''$ at the end of each successful -detection; -iii) points marked as occupied are rejected when selecting candidates for the +\item the occupancy mask is filled in with the points of the detected blurred +segments $\mathcal{B}_j''$ at the end of each successful detection; +\item points marked as occupied are rejected when selecting candidates for the blurred segment extension in the fine tracking step. -Multiple detections of the same edge are thus avoided. +\end{enumerate} + +\input{Fig_method/algoMulti} In edge selection mode (\RefFig{fig:edgeDir} b), the multi-detection algorithm is executed twice, first in main edge selection mode, then @@ -353,31 +357,49 @@ to collect all the segments found under the stroke. \input{Fig_method/algoAuto} -The behavior of the unsupervised detection is depicted through the two -examples of \RefFig{fig:auto}. -The example on the left shows the detection of thin straight objects on a -circle with variable width. -On the left half of the circumference, the distance between both edges -exceeds the initial assigned width and a thick blurred segment is build -for each of them. Of course, on a curve, a continuous thickenning is -observed untill the blurred segment minimal width reaches the initial -assigned width. -On the right half, both edges are encompassed in a common blurred segment, -and at the extreme right part of the circle, the few distant residual points -are grouped to form a thick segment. - -The example on the right shows the limits of the edge detector on a picture -with quite dense repartition of gradient. -All the salient edges are well detected but they are surrounded by a lot -of false detections, that rely on the presence of many local maxima of -the gradient magnitude with similar orientations. +The performance of the detector is illustrated in \RefFig{fig:evalAuto}b +or in \RefFig{fig:noisy} where hardly perceptible edges are detected in this +quite textured image. When the initial value of the assigned width is small, +short edges are detected edges. Longer edges are detected if the initial +assigned width is larger, but the found segments incorporate a lot of +interfering outliers. \begin{figure}[h] \center - \begin{tabular}{c@{\hspace{0.2cm}}c} - \includegraphics[width=0.37\textwidth]{Fig_method/vcercleAuto.png} & - \includegraphics[width=0.58\textwidth]{Fig_method/plafondAuto.png} + \begin{tabular}{c@{\hspace{0.2cm}}c@{\hspace{0.2cm}}c} + \includegraphics[width=0.32\textwidth]{Fig_method/parpaings.png} & + \includegraphics[width=0.32\textwidth]{Fig_method/parpaings2.png} & + \includegraphics[width=0.32\textwidth]{Fig_method/parpaings3.png} \end{tabular} - \caption{Automatic detection of blurred segments.} - \label{fig:auto} + \caption{Automatic detection of blurred segments on a quite texture image.} + \label{fig:noisy} \end{figure} + +%The behavior of the unsupervised detection is depicted through the two +%examples of \RefFig{fig:auto}. +%The example on the left shows the detection of thin straight objects on a +%circle with variable width. +%On the left half of the circumference, the distance between both edges +%exceeds the initial assigned width and a thick blurred segment is build +%for each of them. Of course, on a curve, a continuous thickenning is +%observed untill the blurred segment minimal width reaches the initial +%assigned width. +%On the right half, both edges are encompassed in a common blurred segment, +%and at the extreme right part of the circle, the few distant residual points +%are grouped to form a thick segment. +% +%The example on the right shows the limits of the edge detector on a picture +%with quite dense repartition of gradient. +%All the salient edges are well detected but they are surrounded by a lot +%of false detections, that rely on the presence of many local maxima of +%the gradient magnitude with similar orientations. +% +%\begin{figure}[h] +%\center +% \begin{tabular}{c@{\hspace{0.2cm}}c} +% \includegraphics[width=0.37\textwidth]{Fig_method/vcercleAuto.png} & +% \includegraphics[width=0.58\textwidth]{Fig_method/plafondAuto.png} +% \end{tabular} +% \caption{Automatic detection of blurred segments.} +% \label{fig:auto} +%\end{figure}