A NOVEL 3 D CITY MODELLING APPROACH FOR SATELLITE STEREO DATA USING 3 D ACTIVE SHAPE MODELS ON DSMS

Since remote sensing provides new sensors and techniques to accumulate stereo data on urban regions, three-dimensional (3D) representation of these regions gained much interest for various applications. 3D urban region representation can e.g. be used for detailed urban monitoring, change and damage detection purposes. In order to obtain 3D representation, one of the easiest and cheapest way is to use Digital Surface Models (DSMs) which are generated from very high resolution stereo satellite images using stereovision techniques. Unfortunately after applying the DSM generation process, we cannot directly obtain a full 3D urban region representation. In the DSM which is generated using only one stereo image pair, generally noise, matching errors, and uncertainties on building wall locations are very high. These undesirable effects prevents a DSM to provide a realistic 3D city representation. Therefore, some automatic techniques should be applied to obtain real 3D city models using DSMs as input. In order to bring a solution to the existing problems in this field, herein we propose a fully automated approach based on the usage of a novel 3D active shape model. Our experimental results on DSMs of Munich city which are obtained from different satellite (Cartosat-1, Ikonos, WorldView-2) and airborne sensors (3K camera, HRSC, and LIDAR) indicate possible usage of the algorithm to obtain 3D city representation results automatically.


INTRODUCTION
As satellite and airborne sensor technology provides higher imaging qualities, especially 3D representation of cities gained much interest for various applications.For obtaining 3D representation, Digital Surface Models (DSMs) can be generated from optical stereo satellite or aerial images using stereovision techniques, or they can also be obtained by using LIDAR sensor technology.As a challenge, for satellite data, in most of the cases, just one stereo image pair is available for DSM generation.Unfortunately, after applying an automatic DSM generation process, due to the occlusion effects and stereo matching errors these DSMs do not correctly represent 3D city models with steep building walls and detailed rooftop representations.This is a major problem especially for DSMs which are generated over city centers, since many regions are occluded by dense and complex building structures.Although these occluded regions can be filled by interpolation, these techniques lead to a decrease in sharpness of building walls.Besides, deficiencies in the stereo matching process may cause noise within DSMs, e.g.due to shadow areas.Therefore, automatically obtaining 3D city models from DSMs is still an open and challenging problem for researchers.
In the previous work there is a wide variety of studies on building detection and shape extraction from two-dimensional single satellite or aerial images.The earliest studies in this field generally depend on edge and line extraction (Krishnamachari and Chellappa, 1996, Irvin and McKeown, 1989, Davis, 1982).Unfortunately, these methods generally fail to detect individual buildings which have highly textured rooftops or which appear in complex environments.In order to cope with this problem, Saeedi and Zwick (Saeedi and Zwick, 2008) combined edge information with graph based segmentation results of the region.Many researchers developed more advanced methods to extract shapes of the detected buildings (Karantzalos and Paragios, 2009, Cui et al., 2008, Benedek et al., 2009).Sirmacek and Unsalan (Sirmacek and Unsalan, 2010) developed a fast method to detect shapes of rectangular buildings which depends on growing a rectangular active shape.Unfortunately, they could not detect other building shapes with their approach.With the upcoming availability of DSMs from optical stereo images and from light detection and ranging measurements (LIDAR), many researchers began to pay attention to building detection from these data.Wurm et al. (Wurm et al., 2011), extracted 3D block models using an object-oriented approach based on data fusion from LIDAR and VHR optical imageries.Rottensteiner et al. (Rottensteiner et al., 2007) applied the DempsterShafer fusion of airborne laser scanner (ALS) point clouds and multispectral images for building detection.Haala et al. (Haala and Brenner, 1999) proposed a method to reconstruct building rooftops using surface normals extracted from LIDAR DSM data.They assumed that building boundaries are detected previously.In a following study (Haala et al., 1998), they detected building boundaries automatically by classifying a DSM and corresponding color image before applying their automatic rooftop reconstruction method.Brenner et al. (Brenner et al., 2001) discussed rooftop type derivation methods using given groundfloor shapes.They also projected two-dimensional terrestrial building facade images to generated models and obtain realistic 3D city representations.Brunn and Weidner (Brunn and Weidner, 1997) used surface normals on a DSM to discriminate buildings and vegetation.After detecting buildings, they measured the geometry of rooftops using surface normals and they interpolated polyhedral building descriptions to these structures.Fradkin et al. (Fradkin et al., 1999) proposed a segmentation based method to reconstruct 3D models of dense urban areas.To this end, they used very high resolution color aerial images and disparity maps.Canu et al. (Canu et al., 1996) used a high resolution DSM, which is obtained by stereo matching techniques, in order to reconstruct 3D buildings.First, they segmented the DSM into homogeneous regions.Then, they interpolated flat surfaces on these regions.Ortner et al. (Ortner et al., 2002) used a point process (Jacobsen, 2005)  In order to bring an automated solution to this problem, in previous work we have proposed a novel technique for obtaining 3D city representations by applying a building shape and rooftoptype detection approach to DSMs (Sirmacek et al., 2012).We started by applying local thresholding to raw DSMs in order to extract high urban objects which can indicate building locations.
We have extracted building shapes from regions which are obtained from a thresholding result by using a binary active shape growing algorithm.This methodology depends on growing rectangular shapes in elongated segments which are detected in binary masks obtained by thresholding the DSM.After extracting the building shapes, we generated 3D models by understanding the building rooftop-types.Herein, we follow a similar approach to reconstruct 3D city models, however for active shape growing we propose a novel approach which uses 3D information in calculating shape fitting criteria.Using this new method, we increase the robustness of complex building shape extraction which in turn increases robustness of 3D reconstruction.Besides introducing a new methodology, our experiments also provide and insight on applicabilities of DSMs obtained from different sensors.

DETECTING POSSIBLE BUILDING SEGMENTS FROM DSMS
In this step, we would like to detect approximate building locations from the DSM before extracting building shapes.If a digital terrain model (DTM) of the region is available, we could use it to calculate a normalized digital elevation model (nDEM).In a nDEM, ground height is referenced to zero, therefore it only pro-vides information about building heights independent from the height of the terrain.If a nDEM could be calculated, we could simply threshold it with a constant value in order to obtain high objects which can represent buildings or trees.In our study, we segment high objects directly from the DSMs by applying a local thresholding.Therefore, the algorithm can be also used for regions which do not have corresponding DTM data.In local thresholding, a 100 × 100 pixel size sliding window is used over the DSM, and a new threshold value is calculated for each region under the sliding window.This window size is chosen by considering approximate building sizes in given DSMs of the study region.However, the thresholding result does not differ significantly with slight changes of window size or with slight changes of input image resolution.Therefore, we can use the same window size for our input DSMs with different geometric resolutions.
After applying local thresholding to the DSM (D(x, y)), we obtain a binary image (BD(x, y)) where high objects are labeled with value 1.We apply labeling to BD(x, y) to obtain its connected components (Sonka et al., 1999).Here each connected component represents a building segment.If the size of a connected component is less than R pixels we discard it since these small regions generally correspond to tree clusters.Considering geometric resolutions of input DSMs, we assume the R value as 100, since building objects cannot be smaller than this pixel size in our input DSMs.However, this value should be fixed by considering minimum sizes of the buildings in study regions before starting to run the algorithm on DSMs.In Fig. 1(a) and (b), we represent a subpart of the D(x, y) and obtained BD(x, y) thresholding result respectively.Unfortunately, due to the low resolutions or surrounding trees around the building, thresholding result does not directly represent the building shape.However, it gives an idea about the approximate shape of the building.In the next step, we use the detected approximate segments to understand building complexity and to run our 3D active shape growing method.

EXTRACTING BUILDING SHAPES
In a previous study, Sirmacek and Unsalan (Sirmacek and Unsalan, 2010) proposed an automatic rectangular binary active shape growing approach (called box-fitting).First they used color invariant features to extract possible building rooftop segments.Mass centers of the rectangular segments are assumed as seedpoints (as approximate building centers).Seed-point locations are used to grow a virtual active rectangular shape based on an energy criteria.In previous studies (Sirmacek et al., 2010) and (Sirmacek et al., 2012), we have used this binary active shape growing approach to detect complex building shapes from a binary BD(x, y) approximate building segment mask.First, we started by deciding if the building segment is complex or not.If there are inner yards (holes) inside of the segments, we assumed them as complex shape.We make this decision by computing an Euler number on binary building segment (Horn, 1986).If a International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Volume XXXIX-B3, 2012 XXII ISPRS Congress, 25 August -01 September 2012, Melbourne, Australia building segment is in a complex shape, we divided the building segment into elongated pieces using its skeleton.To do so, we detected junctions and endpoints of the building segment skeleton.We divided the skeleton into pieces by removing these junction pixels from the skeleton.For each obtained skeleton piece, we divided it again into l pixel length pieces if it is longer than l pixels.We assume center pixels of obtained skeleton pieces as our seed-point locations to run the box-fitting algorithm.Herein, similarly to our previous applications, we assume l value as equal to 20 pixels.In our previous study (Sirmacek et al., 2012), we provided effects of choosing l value to the shape detection result in detail.
For detecting complex building shapes, herein we follow a similar methodology.However instead of using the binary active shape growing approach in each seed-point location, we propose a novel active shape growing approach based on the usage of 3D information.To do so, after extracting (xs, ys) seed point locations as we describe in (Sirmacek et al., 2012) in detail, we start to grow our active rectangular shapes in each seed point location by regarding the height information.We assume that (x n v , y n v ) array holds the pixel coordinates for nth edge of the virtual rectangular shape.Iteratively, we sweep each edge to the outwards growing direction if the edge pixels satisfy (max Here, δ threshold is the minimum building height that we would like to detect in the region.In our application we assume δ as equal to 3, which means that we assume the buildings to be higher than 3 meters to be detected.When the growing process stops for each edge, we calculate the final energy value by using the equation that we represent in Eqn. 1.In the equation, m(.) represents the mean value.For the same seed-point, we apply growing process for all θ ∈ [0, π/6, π/3, π/2, 2π/3, ..., 2π] angles with θ dif = π/6 radian turning steps.As we discussed in detail in (Sirmacek et al., 2012), by reducing θ dif step sizes, we can obtain more accurate approximations, however in this case we need more computation time.After calculating E θ for all θ angles, herein we pick the estimated box which exhibits the highest E θ energy as detected building shape.Since most buildings appear like compositions of rectangular building segments, it makes sense to extract rectangular shapes on buildings.The main advantage of using the box-fitting approach is that approximate building shapes still can be found even if the building edges are not well-determined, or even if there are trees adjacent to the building facades.However, other region growing algorithms fail to extract an object shape in these cases, since the growing region can flow out easily when the parameters are not set precisely.
For complex buildings, after fitting a chain of boxes, discontinuity between adjacent boxes should be smoothed.For this purpose, we simply benefit from morphological operations.First, we start with filling inside of the detected binary boxes with 1 value in BB(x, y) binary mask.Then, we apply morphological dilation and erosion operations respectively to the detected boxes, using a disk shaped structuring element with radius 1.After this operation small discontinuity between adjacent boxes can be smoothed.
Final improved building shapes are kept in a new B(x, y) binary mask.
The detected shape for our sample building can be seen in Fig.

1.(d).
Obtained building shape is used to insert sharp building walls into our 3D model.

Rooftop-type Classification
After detecting building groundfloor shapes, we focus on reconstruction of rooftops.For this purpose, we benefit from our previous approach that we represent in (Sirmacek et al., 2012).We first start with ridge-line and tower detection.Using obtained ridge-lines we classify rooftops as flat or gable type.Obtained information is used to insert realistic models into our 3D city representations.
The ridge-line detection approach is based on derivative calculation over the DSM.We use the following derivative filter.For a symmetric Gaussian function G(x, y) = exp(−(x 2 + y 2 )), it is possible to define basis filters Gp0 and G p π 2 as follows, We can find a derivative in an arbitrary θ direction using following filter function, We convolve our DSM with this derivative filter in θ ∈ [0, π/12, ..., 23π/12] directions as follows, If θ angle is perpendicular to the building ridge-line orientation, then one side of the building rooftop gives positive response, and the other side of the building rooftop gives negative response to the filter.Assuming B j (x, y) is the jth connected component in B(x, y) binary building segment matrix, we assume that two sides of the building rooftop (RP j θ and RN j θ ) can be extracted as follows, Since we have no pre-information about building orientations, we should do the derivative filtering in all possible orientations.Therefore, we calculate ∑ θ RL j θ for θ ∈ [0, π/12, ..., 23π/12] directions.Building ridge-lines will be extracted in θj filtering angle which is almost perpendicular to the ridge-line orientation.However the ridge-line will be also detected in θj − π/12 and θj + π/12 neighbor filtering directions.Therefore, the ridge-line will have a value of higher than 2 in the ∑ θ RL j θ result.As a result, the ridge-line of jth building rooftop can be obtained by calculating R j (x, y) = ∑ θ RL j θ > 2 and eliminating connected components which are less than 10 pixels in order to eliminate redundant information coming from small objects on rooftop.
Towers around buildings are very important attributes to be considered in 3D model generation.Therefore, beside ridge-line detection and rooftop classification, tower detection from the input DSM is needed.To this end, in our study we detect maximum International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Volume XXXIX-B3, 2012 XXII ISPRS Congress, 25 August -01 September 2012, Melbourne, Australia values of the DSM (mx) for each building segment.For jth building which is held as jth connected component in B(x, y) binary building mask, the maximum height value is calculated as; mx = max(B j (x, y) × D(x, y)).Then, we threshold the DSM at building region using the following equation; t j (x, y) = (B j (x, y) × D(x, y)) > 0.8mx.Here, we obtained our threshold value by extensive tests.Finally, we apply size thresholding to t j (x, y) binary mask.In order to make the size thresholding process independent from the geometric resolutions of the input DSM, we compare the obtained region in t j (x, y) with the total sizes of the jth building segment.If the size of the region in t j (x, y) is smaller than 1/10 size of B j (x, y) segment, then t j (x, y) is assumed as a binary mask which holds a tower region inside.Otherwise, all pixel values in t j (x, y) matrix are changed with zero values.After applying the same methodology to all building segments in B(x, y), union of all t j (x, y) matrices give us a binary mask which holds the tower regions.Binary tower matrix (T (x, y)) is obtained by calculating T (x, y) = ∪ t j (x, y) for all j values.
Next, we use detected ridge-lines for roof-type classification and 3D rooftop model reconstruction purposes.We benefit from detected roof ridge-lines to classify rooftops as 'flat roof' or 'gable roof' type.
If there is no ridge-line detection result on a building segment, we assume that building as flat roof.If there is a ridge-line on the jth building segment, then we calculate mean of DSM height values on ridge-line location by calculating ∑ (x,y) R j (x, y) × D(x, y)/M , where M is the total number of ridge-line pixels in R j (x, y) binary matrix.We also calculate mean of DSM height values on building border by calculating ∑ (x,y) B j (x, y) ×D(x, y) /N , where N holds the total number of building border pixels in B j (x, y) binary matrix.If the difference between these two mean values is lower than 2 meters, then we assume the rooftop as a flat rooftop.Otherwise, it is assumed as gable rooftop.This 2 meters criteria is obtained by observing gable rooftop characteristics over test area.

Generating 3D City Models
In raw DSM data, both building walls and rooftops need to be improved, since generally building walls make a soft transition from rooftop to the ground and the rooftop contains noise.In addition to that, raw DSM may include spurious values coming from stereo image matching errors in the DSM generation process.Therefore, in order to obtain better 3D representation, we should sharpen building walls and towers, and we should also enhance the rooftop view.
First, we start with generating a zero matrix D2(x, y) with the same size with D(x, y) matrix.New height values belonging to objects in the city will be stored in D2(x, y) matrix.In order to eliminate noise in non-built regions, we apply median filtering to the original DSM (D(x, y)) by using a 3 × 3 pixel size window, and we obtain smoothed DSM (D f (x, y)).For nonbuilt areas, or in other saying for (x, y) coordinates which satisfy B(x, y) = 0, we apply D2(x, y) = D f (x, y).That means; we assign smoothed ground height values for non-built regions.As building wall, we insert a single height value to each building boundary which is stored in B(x, y) binary building shape matrix.For each building, the building height value is assigned by calculating the mean of D(x, y) values on building boundary pixels.After smoothing the noise on the ground and inserting sharp building walls, finally rooftop height values are assigned to D2(x, y) matrix.Rooftop height assignment is done by considering the roof-type.If the roof is classified as a flat roof, then only one single height value is assigned to all building areas which is equal to building wall heights.If the rooftop is classified as a gable-roof, we follow different approaches depending on the building complexity.If the building is not detected as a complex building as structure type (if the Euler number is equal to 1), then we can find polygons which define the rooftop in 3D space.To this end, we detect corners of the building segment using Harris corner detection algorithm (Harris and Stephens, 1988) over panchromatic image of the test region.Besides, we also detect endpoints of the building ridge-line.We pick each building corner one by one.Then, we find the closest ridge-line endpoint.A line between building corner and the closest ridge-line endpoint can divide the rooftop into polygons.A detailed demonstration of this approach is illustrated in (Sirmacek et al., 2012).Height values of rooftop polygons are assigned to corresponding pixels in D2(x, y) matrix.If the building is detected as a complex structure or if the building ridge-line could not be extracted properly, unfortunately we cannot use the same idea for building rooftop reconstruction and more advanced rooftop reconstruction approaches are needed.Herein we leave the building rooftop reconstruction at this level.For complex building rooftops and for rooftops for which we cannot extract the ridge-line properly, we only insert corresponding pixel values from D f (x, y) matrix.Finally, for tower regions which are stored in T (x, y) binary matrix we insert the original DSM values (not filtered DSM values) to D2(x, y) matrix from D(x, y).

Data Sets
The investigated data set consists of six DSMs which are obtained from different sensors covering each parts of the city of Munich, Germany.Three of them are obtained from the satellite sensors Cartosat-1, Ikonos, WorldView-2 and will show the potential of stereo satellite data to derive and enhance building models depending on their spatial resolution.All satellite data are along-track stereo data, since taking data from different dates is not appropriate due to radiometric changes and different shadow properties, which reduce the image matching density and quality significantly.The Cartosat-1 sensor on-board the Indian satellite IRS-P5 collects panchromatic data with two pushbroom cameras having a ground sampling distance (GSD) of approximately 2.5 m and a stereo angle of 31 • .They are delivered with RPC values in a level called Ortho Ready, which is equivalent to Level 1A.RPCs have to be refined by ground control using an affine correction.The data set used has been acquired in May 2008.The whole area covered is about 30 km × 30 km, equivalent to one scene.
The Ikonos data used in this paper exhibit a GSD of 1 m and a stereo angle of approximately 10 • , which is quite suitable for DSM generation in city areas (Reinartz et al., 2010).The data cover an area of approximately 10 km × 10 km and have been acquired in July 2005; the processing level is "radiometric corrected", so also equivalent to Level 1A.
The WorldView-2 data used have a GSD of 0.5 m and are comprised of 2 stereo pairs acquired on the same day and orbit with an overlap in the test area, leading to 4 different viewing directions with stereo angles between 12 • and 24 • .These data have been acquired in July 2010 with the processing level "Level 2 Ortho Ready", which is equivalent to a projection on a plain for each single image.The overlapping for all 4 images is about 2 km × 10 km in size.The DSMs for all three sensor data, generated by the above mentioned dense matching procedure (d'Angelo and Reinartz, 2011), have the same sampling distance as the image data and cover all parts of the city center of Munich.
Two of the DSMs are obtained from airborne cameras, namely the High Resolution Stereo Camera (HRSC) and the 3K-camera system, both operated by DLR.The HRSC-AX (High Resolution Stereo Camera Airborne Extended) is a pushbroom camera and is especially designed to acquire stereo aerial photographs from 5 viewing directions.The image data exhibit a GSD of 1 m while the DSM, generated as described in (Hirschmueller et al., Springer, DAGM 2005, Wien, Austria).
The DLR 3K-camera system consists of three off the shelf digital frame cameras (Canon EOS 1Ds Mark, 16 MPixel) mounted on a platform, of which one is pointed nadir, the second pointed to the left and the third is pointed to the right according to the flight direction (Kurz et al., 2008).The data used are acquired from a flight altitude of approximately 1500 m, leading to a GSD of 25 cm The DSM has a GSD of 50 cm and is derived using images with 80% overlap leading to 4 viewing directions per object.The airborne stereo data also cover parts of the Munich city center.Therefore for further investigations an area is used where DSM data from all sensors are available.
The sixth DSM, which is mainly used as a reference was acquired by an Airborne Laser Scanning (ALS) system and provided through the Bavarian Surveying Authorities, the 3D point cloud with a density of 2 points per square meter has been interpolated to a regular sampling distance grid of 1 m spacing.

Evaluation of Performances
In this section, we discuss the automatic 3D modelling performance of the proposed system on six different DSMs of a test building.In order to be able to calculate quantitative values for shape detection performance analysis, we use a binary building shape mask which includes groundfloor shapes of the buildings.This mask has been prepared by Munich municipality by using cadastral data.We apply pixel based performance analysis by counting the number of correctly detected building groundfloor pixels (True Positives -TP), and the number of false detected building groundfloor pixels (False Alarm -FA).By dividing the obtained numbers to the total number of building groundfloor pixels appearing in the groundtruth mask, in Table 1 we present TP and FA numbers as percentages.As can be seen in this table, the highest detection performance is obtained for the 3K, HRSC and LIDAR sensor DSMs, as expected since these are all derived from airborne data.But it has to be noted that also the WV2 DSM provides quite good results, with a quite low FA rate.On the other hand, the lowest detection performance is obtained on Cartosat1 sensor DSM since the low resolution of this sensor does not allow seeing neighbored building segments separately.The highest false alarm rate is obtained again on the Cartosat1 sensor DSM for the same reason.The lowest false alarm rate is obtained with LIDAR sensor DSM because of its high spatial resolution and since this DSM does not include trees which generally appear connected to the building facades.
In order to provide an insight on height estimation performances, we visualize a demonstration in Fig. 2. In Finally, we compare the automatic reconstruction method that we propose herein with our previous reconstruction method which is based on active shape growing using building edge information (Sirmacek et al., 2012).On the same building sample of WV2 DSM, our previous approach gives performance values as TP = % 65.02 and FA = % 34.97.Unfortunately, the previous approach cannot obtain successful detection results when the building edges cannot be detected correctly because of the noisy DSM or because of the objects on the building rooftops.

CONCLUSIONS
Developing remote sensing technology and methods offer new and low-cost approaches such as DSM generation based on stereo satellite image matching principle.Herein, we introduced a novel method for automatic 3D detailed city modeling based on building shape, tower, and rooftop ridge-line extraction.Using the proposed approach we could generate 3D city models with high details even by using satellite images.Especially for regions which cannot be covered by airborne measurements, or for fast map updating or damage assessment purposes these data are well suited.
Besides proposing a novel and robust approach for 3D city modeling, we provided a detailed assessment of the algorithm performance for different sensor data.For this purpose, we used DSMs which are obtained from different satellite (Cartosat-1, Ikonos, WorldView-2) and airborne sensors (3K camera, HRSC, and LI-DAR).Beyond the development of the fine detailed 3D city models, we believe that the provided performance analysis over different sensor DSMs presents an important information about the capabilities of the different sensors and their remotely sensed stereo data.
Figure 1: (a) A sub-part of the original Worldview2 satellite DSM (D(x, y)), (b) After applying local thresholding (sub-part of BD(x, y)), (c) Skeleton of the building in the same sub-part of BD(x, y), (d) Detected building shape.
Fig. 2.(a), we represent a profile of the sample building where we take height values.In 2.(b), the red dashed profile represents original WV2 DSM values, black dashed profile represents the LIDAR DSM values, while the blue continuous line represents automatically obtained reconstruction values by using WV2 DSM.

Figure 2 :
Figure 2: (a) The slice of the sample building where the hight values are taken.(b) Red dashed profile represents original WV2 DSM values, black dashed profile represents the LIDAR DSM values, blue continues line represents automatically obtained reconstruction values by using WV2 DSM.
to model urban areas.They represented urban areas as interacting particles International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Volume XXXIX-B3, 2012 XXII ISPRS Congress, 25 August -01 September 2012, Melbourne, Australia where each particle stands for an urban object.Preknowledge about building shapes is used to model these particles.Arefi et al. (Arefi et al., 2008) extracted above-ground objects from LI-DAR data.Then, 3D buildings are reconstructed by hierarchical fitting of minimum boundary rectangles (MBR) and a RANSAC based straight line fitting algorithm.Kada and McKinley (Kada

Table 1 :
Pixel Based Building Groundfloor Detection Performances for Six Different DSMs