Skip to content
Snippets Groups Projects
Commit 2173153e authored by even's avatar even
Browse files

Article: enhancements

parent 7bf52bb9
No related branches found
No related tags found
No related merge requests found
...@@ -6,7 +6,8 @@ This paper introduced a new edge detector based on a local analysis of ...@@ -6,7 +6,8 @@ This paper introduced a new edge detector based on a local analysis of
the image gradient and on the use of blurred segments to vehiculate an the image gradient and on the use of blurred segments to vehiculate an
estimation of the edge thickness. estimation of the edge thickness.
It relies on directional scans of the image around maximal values of the It relies on directional scans of the image around maximal values of the
gradient magnitude, that have previously been presented in a former paper. gradient magnitude, that have previously been presented in
\cite{KerautretEven09}.
Despite of good performances obtained compared to existing detection methods Despite of good performances obtained compared to existing detection methods
found in the literature, the former approach suffers of two major drawbacks. found in the literature, the former approach suffers of two major drawbacks.
It does not estimate the edge thickness so that many outliers are inserted It does not estimate the edge thickness so that many outliers are inserted
...@@ -22,8 +23,8 @@ the control of the assigned width based on the observation of the ...@@ -22,8 +23,8 @@ the control of the assigned width based on the observation of the
blurred segment thickenning in the early stage of its expansion. blurred segment thickenning in the early stage of its expansion.
Expected gains in execution time linked to the suppression of a useless Expected gains in execution time linked to the suppression of a useless
repetition of the fine tracking stage were confirmed by the experimental repetition of the fine tracking stage were confirmed by the experiments
campaign both in supervised and unsupervised contexts. both in supervised and unsupervised contexts.
The residual weakness is the high sensitivity to the initial conditions The residual weakness is the high sensitivity to the initial conditions
despite of the valuable enhancement brought by the duplication of the despite of the valuable enhancement brought by the duplication of the
initial detection. initial detection.
...@@ -34,7 +35,7 @@ In supervised context, the user can easily select a favourable area where ...@@ -34,7 +35,7 @@ In supervised context, the user can easily select a favourable area where
the awaited edge is dominant. the awaited edge is dominant.
But this default remains quite sensible in unsupervised context. But this default remains quite sensible in unsupervised context.
In future works, we intend to provide some protection against this drawback In future works, we intend to provide some solutions for this drawback
by scoring the detection result on the base of a characterization of the by scoring the detection result on the base of a characterization of the
initial context. initial context.
Then experimental validation of the consistency of the estimated width and Then experimental validation of the consistency of the estimated width and
......
...@@ -5,15 +5,13 @@ ...@@ -5,15 +5,13 @@
The evaluation stage aims at quantifying the advantages of the new detector The evaluation stage aims at quantifying the advantages of the new detector
compared to the former one. compared to the former one.
For a fair comparison, the process flow of the former method (the initial For a fair comparison, the process flow of the former method (the initial
detection followed by two refinement steps) was coded as an option of the detection followed by two refinement steps) is integrated as an option
new detector, because since that time, the code of basic routineshas into the code of the new detector, so that both methods rely on the same
largely been improved. optimized basic routines.
For instance, the new directional scanners are encoded as an iterator so that
only required scan lines are provided when required, whereas with the former The first test compares the computation times of both detectors on a
code, all the scan lines were computed and returned, whenever they were used selection of input strokes (\RefFig{fig:buro}). Results are displayed
or not. in \RefTab{tab:cmpOldNew}.
Outputs of the new coding of the former detector were compared to those of
the old release, to ensure an equivalent behaviour.
\begin{figure}[h] \begin{figure}[h]
\center \center
...@@ -46,10 +44,6 @@ the old release, to ensure an equivalent behaviour. ...@@ -46,10 +44,6 @@ the old release, to ensure an equivalent behaviour.
\label{fig:buro} \label{fig:buro}
\end{figure} \end{figure}
The first test compares the computation times of both detectors on a
selection of input strokes (\RefFig{fig:buro}). Results are displayed
in table \RefTab{tab:cmpOldNew}.
\begin{table} \begin{table}
\centering \centering
\begin{tabular}{|l||l|l|l|l|l|l|l|l|l|l|} \begin{tabular}{|l||l|l|l|l|l|l|l|l|l|l|}
...@@ -87,7 +81,7 @@ former detector on the left, and the new detector on the right.} ...@@ -87,7 +81,7 @@ former detector on the left, and the new detector on the right.}
\label{fig:evalAuto} \label{fig:evalAuto}
\end{figure} \end{figure}
The former detector do not estimate the edge width, but just circumscribes The former detector does not estimate the edge width, but just circumscribes
the edge with a blurred segment of assigned width. the edge with a blurred segment of assigned width.
If the edge is very thin, the blurred segment is free to rotate around the If the edge is very thin, the blurred segment is free to rotate around the
extracted edge and the provided orientation is biased. extracted edge and the provided orientation is biased.
......
...@@ -67,7 +67,7 @@ edge he wants to extract from the image. ...@@ -67,7 +67,7 @@ edge he wants to extract from the image.
The detection method previously described is continuously run during mouse The detection method previously described is continuously run during mouse
dragging and the output blurred segment is displayed on-the-fly. dragging and the output blurred segment is displayed on-the-fly.
The method is very sensitive to the local conditions of the initial detection The method is quite sensitive to the local conditions of the initial detection
so that the output blurred segment may be quite unstable. so that the output blurred segment may be quite unstable.
In order to temper this undesirable behaviour for particular applications, In order to temper this undesirable behaviour for particular applications,
the initial detection can be optionally run twice, the second fast scan being the initial detection can be optionally run twice, the second fast scan being
...@@ -85,11 +85,11 @@ For each of them the main detection process is run with three modifications: ...@@ -85,11 +85,11 @@ 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$ i) 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 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; $\varepsilon_{ini}$, and $M_j$ is used as start point of the blurred segment;
ii) a occupancy mask, initially empty, is filled in with the points of the ii) an occupancy mask, initially empty, is filled in with the points of the
detected blurred segments $\mathcal{B}_{j3}$ at the end of each successful detected blurred segments $\mathcal{B}_j$ at the end of each successful
detection; detection;
iii) points marked as occupied are rejected when selecting candidates for the iii) points marked as occupied are rejected when selecting candidates for the
blurred selegment extension in the fine tracking step. blurred segment extension in the fine tracking step.
\input{Fig_method/algoMulti} \input{Fig_method/algoMulti}
...@@ -112,11 +112,11 @@ the awaited one. ...@@ -112,11 +112,11 @@ the awaited one.
\parbox{0.22\textwidth}{\centering{\scriptsize{c)}}} & \parbox{0.22\textwidth}{\centering{\scriptsize{c)}}} &
\parbox{0.22\textwidth}{\centering{\scriptsize{d)}}} \parbox{0.22\textwidth}{\centering{\scriptsize{d)}}}
\end{tabular} \end{tabular}
\caption{Example of edge, detected only in multi-detection mode: \caption{Example of edge disclosed by the multi-detection mode:
a) the stroke on the intensity image, a) the input selection on the intensity image,
b) the gradient map, b) the gradient map,
c) the result of the classical single mode detection, c) the only sharper edge detected in classical single mode,
d) the result of the multi-detection. } d) a neighbouring edge disclosed by the multi-detection mode. }
\label{fig:voisins} \label{fig:voisins}
\end{figure} \end{figure}
...@@ -143,14 +143,14 @@ the tile joins of \RefFig{fig:edgeDir}. ...@@ -143,14 +143,14 @@ the tile joins of \RefFig{fig:edgeDir}.
\label{fig:edgeDir} \label{fig:edgeDir}
\end{figure} \end{figure}
On that example, when a straight features detection is run On that example, when a straight feature detection is run
(\RefFig{fig:edgeDir} a)), (\RefFig{fig:edgeDir} a),
a thick blurred segment which extends up to four tiles is provided. a thick blurred segment which extends up to four tiles is provided.
When a straight edge detection is run, a very thin blurred segment is When a straight edge detection is run, a very thin blurred segment is
built to follow only one join edge. built to follow only one join edge.
The multi-detection can also be applied to both thin object or edge detection. The multi-detection can also be applied to both thin object or edge detection.
In the latter case, the detection algorithm is run twice using opposite In the latter case, the detection algorithm is run twice using opposite
directions, so that in the exemple of figure (\RefFig{fig:edgeDir} b)), directions, so that in the exemple of figure (\RefFig{fig:edgeDir} b),
both edges (in different colours) are highlighted. both edges (in different colours) are highlighted.
These two thin blurred segments are much shorter, probably because the These two thin blurred segments are much shorter, probably because the
tiles are not perfectly aligned. tiles are not perfectly aligned.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment