|
Next:Raw Pixel Search Up:Model Validation Previous:Semantic Search on the
Feature Search on the Feature Table
Objects at the feature level are defined in a feature table in the database. Typical features for satellite imagery include spectral histogram and texture features.
The feature extraction process in our system is as follows:
- Divide the image under consideration into regular or irregular regions of uniform features using boundaries obtained from edge detection, image segmentation, or quad-tree-like spatial decomposition [9]. Without loss of generality, we assume that an image is uniformly segmented into (possibly overlapping) square blocks of size B. Thus, an
image is divided into square blocks, where and .
- Extract the features (e.g, texture features) from each region (or block) of the image. The I different features extracted from the mnth region are arranged in a feature vector
, where is the ith feature extracted from the mnth region in the image.
- Normalize (studentize) each individual element of the feature vector by subtracting the empirical mean and dividing the result by a standard deviation estimate.
- Use the normalized features vectors to train a clustering algorithm, such as the Kohonen self-organization map [2], to produce C
clusters. Record the cluster to which each feature vector belongs. Segment the image into connected regions of homogeneous features, namely, of features belonging to the same cluster.
As with objects, both image insertion and feature definition trigger feature extraction and segmentation processes. When a feature is newly defined, this feature is extracted from all the images in the archive.
When an image is inserted into the archive, all features are extracted (using previously defined feature types) and stored in the database.
Object search at the feature level is based on the following hybrid approach, which combines clustering and spatial indexing:
- Divide the target template, of size
, into regular or irregular regions. For sake of
discussion, here we assume that the template is divided into a total of blocks where and . Note that the same factor B for blocking the image is used here.
- Extract feature vectors from the target template. The feature vector from the klth region in the template is then denoted by
.
- Normalize the feature vectors using the mean and standard deviation previously computed.
- Cluster each block in the template using the clustering algorithm trained with the image features.
- Compute the similarity index between the blocks in the target template and the blocks from the
image. Sort the candidate regions according to the similarity index between the feature vectors of the target template and the feature vectors of the image.
Next:Raw Pixel Search Up:Model Validation Previous:Semantic Search on the |