• No results found

6.4 The Multi-Hough Transform

6.4.4 The Multi-Hough Loop

If all peaks above the threshold value are taken as legitimate lines, then the modified Hough transform described above has a strong tendency to produce too many lines. After trying many different values for the Hough map threshold, I discovered that there was no clear value that consistently kept the good lines and rejected the lines that did not belong. So I developed a procedure for removing the hits associated with an already identified Hough line and regenerating the Hough map to look for smaller lines. With the hits associated with the first line removed, the dominant features in the new Hough map are less representative of noise and much more representative of shorter, legitimate, physics tracks.

After a line is identified from the tallest peak in the Hough map, I loop over the list of all hits to determine which ones are associated with that line. Any hit within 6 cm of the line will be reassigned a weight of zero (each hit in the hit list has a weight assigned to it, with the default values all being set to one.) This 6 cm cutoff distance is another configurable parameter, which I chose because it represents roughly the size of one cell.

After the hits are removed, I reset the weights of the most upstream and most downstream

hits (as determined by the Z coordinate and allowing for ties between at most two hits) to one, so as to not remove hits potentially associated with another line. Lastly, I “scrub”

the hit list by removing hits that have no neighbors within 30 cm. I use this new list to generate the next iteration of the Hough map.

The same procedure outlined above is applied to the new Hough map, the tallest peak is taken to be a legitimate line, that peak value is refined, and the hits associated with that line are removed. In addition to these steps, I test the new line against all the other lines found so far to determine if it is identical to any of the others. I consider two lines to be identical if their ρ values are within 15 cm and their θ values are within 0.02 radians. If a line is found to be identical to another by this definition, then I remove the hits associated with it but do not add it to the list of Hough lines before proceeding to the next iteration.

Finally, I repeat this “Multi-Hough” loop. To exit the loop, one of two criterion must be met. Either no more peaks are found above the threshold value, or a maximum number of lines is reached. The maximum number of lines is a configurable parameter with a default value of 10.

6.4.5 Results and Performance

Figure 6.11 depicts the results of the Multi-Hough transform from a simulated, νµCC event in the NOvA near detector on the surface (NDOS). For simplicity, only one view (the YZ view) is shown as the algorithm steps through its iterative process. Shown next to each event is the corresponding Hough map. Note that by removing the hits on each good line, the noise is drastically reduced in the Hough map for the following iteration.

Given that the main goal of this algorithm is to provide input to a vertex finding algorithm, one of the primary metrics that I used to asses performance is the perpendicular distance from the Hough lines to the true Monte Carlo interaction vertex. Since the Hough

Figure 6.11: An example of the Multi-Hough algorithm. Shown are the results after four iterations through the peak finding loop. The figure on the right is the corresponding Hough space map for each event on the left.

transform works in two dimensions, I calculate this separately for each view in the detector.

In general, this can be thought of as an indication of how correct the intercept of the line is. The validation data sample I used was composed of simulated events in our far detector

and was divided into 8688 νµ CC, 8802 νe CC, and 9343 NC events. Shown in figure 6.12 are the plots for the perpendicular distance to the first and second Hough lines found in the event for the XZ view. The results for the Hough lines in the YZ view are essentially the same.

Figure 6.12: Perpendicular distance from the first (left) and second (right) Hough lines to the true vertex in the X view (area normalized to 1).

data type number of entries mean [cm] RMS [cm] overflow

νµCC 1st line 8688 4.1 5.1 113

νeCC 1st line 8802 2.7 5.0 145

νXNC 1st line 9343 6.7 8.5 761

νµCC 2nd line 7844 8.2 10.0 1419

νeCC 2nd line 8366 8.8 10.1 1493

νXNC 2nd line 7100 9.9 10.2 1482

νµCC 3rd line 5758 8.4 10.3 1002

νeCC 3rd line 6533 8.8 10.1 955

νXNC 3rd line 4052 9.8 10.1 802

Table 6.4: Perpendicular distance from the Hough lines to the true vertex in the X-view.

The second validation metric was a matching of Hough lines to simulated particle tra-jectories using the dot product between the two. The criteria I used for a particle trajectory to be matched to a Hough line were as follows:

1. The particle could not have been a neutrino, neutron, or π0.

2. The Hough line must have passed within 10 cm of the origin of the particle.

3. The particle track must have been longer than 20 cm.

4. The particle track can not have been matched to any other Hough line.

I considered a Hough line and particle trajectory with the greatest normalized dot product to be a match if the above criteria was met. Shown in figure 6.13 are the results of the dot product matching for the first and second Hough lines in the XZ view (again, the YZ results are similar.) This metric can be thought of as how correct the slope of the Hough line is.

Figure 6.13: Dot Product with the first (left) and second (right) Hough lines and the best matched MC particle trajectory in the X view (area normalized to 1.)