generation of regions bounded by gevd_edgel chains More...
#include <vcl_vector.h>
#include <vcl_map.h>
#include <vtol/vtol_vertex_sptr.h>
#include <vtol/vtol_edge_2d_sptr.h>
#include <gevd/gevd_region_edge.h>
#include <gevd/gevd_bufferxy.h>
#include <vtol/vtol_intensity_face_sptr.h>
#include <vil1/vil1_image.h>
Go to the source code of this file.
Classes | |
class | gevd_edgel_regions |
generation of regions bounded by gevd_edgel chains
Inputs: Image, EdgelGroup Output: CoolListP<IntensityFace*>
The idea is to generate regions by inserting boundaries into an array. The boundaries are defined by a set of edgel chains and a boundary location is inserted at each edgel. The array is assumed to have a boundary at the perimeter of the ROI.
The array is scanned with a 2x2 neighborhood to form connected components in the usual way. Each of the connected component labels are reduced to the lowest equivalent label id by a transitive closure on the equivalence table.
A second scan of the label array is made to determine adjacency to a given edge. This process is enabled by a companion class, the gevd_region_edge which has storage for two labels, corresponding to each side of the edge.
The region edges are then used to collect the input edges which are adjacent to a given region. The set of edges adjacent to a region are used to construct a multiply-connected sub-class of Face, the IntensityFace. The IntensityFace maintains a scatter matrix of a planar fit to the intensity distribution over the corresponding region.
Definition in file gevd_edgel_regions.h.