Full text: ISPRS Workshop on 3D Virtual City Modeling (VCM 2013)

   
| that a human ex- 
1 of features seem 
ind. Note that this 
‘ormation, if an in- 
)ose to circumvent 
umber of intensity 
of scales, both per 
ubset is then auto- 
of-the-art airborne 
ace borne imagery 
In such very high 
s like single trees 
like building roofs 
le patterns emerge. 
rriability of the ra- 
fic texture patterns, 
a pixels’ neighbor- 
es of its neighbors 
iture vector. Typi- 
epending on image 
ous different win- 
ficient, leading to a 
el. Thus we obtain 
images with three 
pase its decision on 
includes the case of 
0 the strongly over- 
> neighborhood can 
S. 
wood This feature 
| the optical remote 
ghborhood of each 
ell as linear combi- 
| N input channels, 
feature vectors, be- 
the goal here, while 
tion anyway. PCA 
, thus for each pixel 
ghborhood into the 
mensions per chan- 
us three PCA chan- 
dimensional feature 
r bank wide-spread 
sion domain. Im- 
ussian color model 
anges due to light- 
tested several other 
le responses). Nor- 
set of filters adopted 
the RFS filters. It 
aussian derivatives, 
ee Gaussian kernels 
der Gaussian deriva- 
-direction at scales 
the four LoGs have 
s are computed per 
e space for our test 
ple choices of o and 
that by convolution 
; neigborhood is im- 
  
7x7 5X5 WITH 4X4 3X3 WITH 2X2 
  
  
ri 
E 
ie 
e 
  
  
  
= 
LEE 
  
  
  
  
  
  
  
  
  
  
Figure 1: Multi-scale patches: Pixels are displayed grey, 2X2 and 
4X4 patches red, 3X3, 5X5, and 7X7 black. 
2.2 Quasi-exhaustive features 
The main idea of the proposed quasi-exhaustive features is to 
avoid data-specific feature engineering altogether, by offering a 
redundant, comprehensive feature set. We do not attempt to learn 
a compact but complicated feature set, as for example deep learn- 
ing (Hinton and Salakhutdinov, 2006; Ranzato et al., 2007) or 
generative texture priors (Gimel’farb, 1996; Zhu et al., 1997). 
Rather we propose to brute-force the feature extraction by com- 
puting a large, redundant set of simple features and selecting a 
small subset of those automatically during training. The data- 
specific selection allows one to adapt to specific sensor charac- 
teristics, lighting conditions and scene content, while the fixed, 
simple set of feature candidates makes it possible to extract them 
efficiently. The hope is that in this way one can mitigate the limi- 
tations of smaller filter banks, whose performance tends to vary a 
lot depending on data and scene content (Drauschke and Mayer, 
2010). Our quasi-exhaustive feature bank includes (see Fig. 1): 
e raw pixel intensities within a 15x 15 neighborhood in three 
different scales: (i) individual pixel intensities, (ii) intensi- 
ties averaged over 3x3 blocks, and (iii) intensities averaged 
over 5x5 blocks, 
e pixel-wise intensity differences within each channel. These 
are only computed within a 9x9 neighborhood; using the 
full 15x15 neighborhood would only marginally increase 
the information relevant for the central pixel, but dramati- 
cally increase the amount of features to 25200 per channel, 
significantly increasing computation time. 
e mean intensity differences between patches of size 2x2, 
3x3, 4x4, 5x5, 7x7 inside the 15x 15 neighborhood, both 
within and across channels. The patches are chosen to be 
(i) non-overlapping, (ii) symmetric with respect to the full 
window, to approximate gradient/texture filters for the cen- 
tral pixel (Fig. 1). 
This feature set ensures that a large range of scales and texture 
frequencies will be covered and is a reasonable approximation of 
proper (e.g., Gaussian) derivative filters. Furthermore, the infor- 
mation based on the differences between the spectral channels of 
an image is exploited. The feature computation is done highly 
efficient by using integral images (Viola and Jones, 2001). Note 
that the dimension of the feature space compared to the baseline 
methods is large, for example, 14553 for our test images with 
three channels. 
2.3 Boosting classifier 
As a classification algorithm we choose a variant of discrete Ad- 
aBoost (Freund and Schapire, 1997) since it can perform feature 
selection and thus the computational effort of the testing phase 
can be reduced. Generally speaking, boosting is a method to im- 
prove the accuracy of predictions of learning algorithms. It works 
ISPRS Annals of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Volume II-3/W1, 2013 
VCM 2013 - The ISPRS Workshop on 3D Virtual City Modeling, 28 May 2013, Regina, Canada 
  
ACCURACY VS. BOOSTING ITERATIONS 
90% 
  
  
  
  
  
  
> 
= > x Sen 
s 70% esie erbe =. m. 7 
= 
= 
= 
Ss 
= 
à 50% 15x15 
2 —e- Augmented 
= 
E 30% —Quasi-exhaustive 
2 
& 
  
1096 
> 
20 40 60 80 100 
Number of iterations 
Figure 2: Classification accuracy versus training iterations of the 
boosting classifier for test scene VAIHINGEN (without nDSM). 
by combining many classification rules (called weak learners) 
that are inaccurate by themselves into an accurate (strong) clas- 
sifier. As often done in image processing our weak learners are 
simple decision stumps (i.e., thresholds on single feature dimen- 
sions). AdaBoost selects the weak learners (and thus the features) 
in a greedy fashion. 
As mentioned before, AdaBoost is an ensemble method. It com- 
bines many weak classifiers hj into a strong classifier H by linear 
combination. The final classifier for a feature vector x is there- 
fore built as: 
H(x) = N^ ou. ha (x) (1) 
k 
The sign of H is the predicted class (--1 or —1), its magnitude 
can be used as a confidence measure. The weak learners are 
added incrementally to the strong classifier. In each iteration Ad- 
aBoost tries to find the best weak learner to add to the strong 
classifier, by looking at the weighted error rate e. The best weak 
learner is the one that maximizes |e — 0.5]. The weak classifier 
is assigned a weight a according to the relation: 
iu arsi e 
This ensures that the classifier gets a higher weight when it op- 
erates farther away from chance. Then, the weight w; of each 
instance is multiplied by exp (—oy;h(xi)). This means that sam- 
ples that were classified correctly (where y; — A(xi)) decrease 
in weight, while samples that were classified incorrectly increase 
in weight. The weights are then normalized to sum to 1 and 
the boosting procedure is repeated until the desired number of 
weak classifier is reached, or until no weak classifiers that im- 
prove the error rate are found. The re-weighting ensures that the 
algorithm focuses on hard samples that are misclassified by many 
weak classifiers. 
  
AdaBoost is a binary classifier, meaning that it learns to dis- 
tinguish a “positive” (label y = +1) from a “negative” (label 
y — —1) class. Since in this paper we have more than two classes 
(as is often the case in remote sensing), we employ AdaBoost.MH 
(Schapire and Singer, 1999), which is a multi-class extension 
to AdaBoost.! AdaBoost.MH effectively applies the one-vs-all 
strategy to create a set of binary problems from the multi-class 
problem (Friedman et al., 2000). In the case of K classes, H 
and h are vector-valued functions with Æ components. The label 
In the experiments, the software of Benbouzid et al. (2012) was used. 
    
  
  
    
   
    
   
   
   
    
    
     
    
     
    
   
    
   
    
     
    
     
    
   
     
   
   
   
    
    
    
  
   
    
   
   
   
   
     
  
  
	        
Waiting...

Note to user

Dear user,

In response to current developments in the web technology used by the Goobi viewer, the software no longer supports your browser.

Please use one of the following browsers to display this page correctly.

Thank you.