pr esentation kadaster_final
TRANSCRIPT
3D Cadastre
McEnroe Gifford D’silvaPoojith N Jain
Motivation
Mr. SimonsMr. David
Mr. Toffel
Miss. GraceMr. Sharma
Mr. Jain
Owner : Mr. SimonsPrice : $ ******
Year Of Construction: 1998
Motivation
Miss. Grace
Mr. Sharma
Mr. David
Mr. Jain
Mr. Toffel
Mr. Simons
Mr. Simons
Aim of the project
• Feasibility study: Extension of CityGML• Extraction of information from building floor plans• Representing information in Extended CityGML
CityGML
• Semantic information model for representing 3D urban objects
• Open data model and XML-based format
• Implemented as an application schema of the Geography Markup Language 3 (GML3)
• Geometrical, topological, semantical, and appearance properties.
Building in CityGML 1
<Building gml:id=“Building0815”>…
<lod2SolidProperty>
<gml:Solid srsName=“urn:adv:crs:ETR2-h”>
<gml:exterior>
<gml:CompositeSurface>
<gml:surfaceMember>
<gml:Polygon>
<gml:exterior>
<gml:LinearRing>
<gml:pos>1.0 1.0 0.0</gml:pos>
<gml:pos>3.0 1.0 0.0</gml:pos>
………………..
<gml:pos>1.0 1.0 0.0</gml:pos>
</gml:LinearRing>
………….
</gml:CompositeSurface>
……………..
</lod2SolidProperty>
</Building>
Building in CityGML 2
<Building gml:id=“Building0815”>…
<lod2SolidProperty>
<gml:Solid srsName=“urn:adv:crs:ETR2-h”>
<gml:exterior>
<gml:CompositeSurface>
<gml:surfaceMember>
//front surface
</gml:surfaceMember>
<gml:surfaceMember>
//side surface
</gml:surfaceMember>
//here comes side, back, roof and ground surfaces
</gml:CompositeSurface>
</gml:exterior>
</gml:Solid>
</lod2SolidProperty>
</Building>
Features
• Modularisation• Representation of object surface characteristics
(textures, materials) • Multiscale model with 5 Levels of Detail (LOD)
Features
• Modularisation • Representation of object surface characteristics
(textures, materials) • Multiscale model with 5 Levels of Detail (LOD)
Modularisation
Features
• Modularisation • Representation of object surface characteristics
(textures, materials) • Multiscale model with 5 Levels of Detail (LOD)
Texturing
Features
• Modularisation• Representation of object surface characteristics
(textures, materials) • Multiscale model with 5 Levels of Detail (LOD)
5 Levels of Detail (LOD)
• LOD 0 – regional, landscape
• LOD 1 – city, region
• LOD 2 – city districts, projects
• LOD 3 – architectural models
(outside), landmarks
• LOD 4 – architectural models (interior)
Why CityGML ?
• Adds semantic and topological aspects into the models
• International standard
• Extendable
Extension of CityGML for Kadaster Purpose
Why extend CityGML ?
• No properties predefined for legal purpose
• Kadaster needs to model extra information
Extending CityGML
• Two methods for extending CityGML
Generic Objects/Attributes
Application Domain Extensions (ADE)
Generic Objects/Attributes
• Run time.• Key word Generic• Data types : String, Integer, Double, Date, URI• XML parser can not validate• Naming conflicts
Application Domain Extensions (ADE)
• Extra XML schema definition file• Explicitly imported• Own namespace• Validated by committee
Identified Properties
<<Feature>>_KadasterApartment
+ kad :: apartmentNumber[1] : xs : string+ kad :: apartmentOwner [1..*] : xs :: string+ kad :: ownership [1] : xs :: OwnershipType+ kad :: apartmentInhabitants [1] : xs :: positiveInteger+ kad :: roomCount [1] : xs :: positiveInteger+ kad :: detachedRoom [1] : xs :: boolean+ kad :: detachedRoomCount [1] : xs :: positiveInteger
<<Feature>>_AbstractBuilding
+ kad :: parcelNumber [1] : xs :: string + kad :: buildingOwner [1...*] : xs :: string+ kad :: buildingInhabitants [1] : xs :: positiveInteger+ kad :: buildingApartment [1] : xs :: positiveInteger+ kad :: buildingNumber [1] : xs :: string+ kad :: buildingType [1] : kad :: BuildingType
<<External CodeList>>
BuildingType Type
<<External CodeList>>
OwnershipType Type
Proposed CityGML Structure
<<Feature>>_CityObject
<<Feature>Site_
<<Feature>>_KadasterApartment
+ kad :: apartmentNumber[1] : xs : string+ kad :: apartmentOwner [1..*] : xs :: string+ kad :: ownership [1] : xs :: OwnershipType+ kad :: apartmentInhabitants [1] : xs :: positiveInteger+ kad :: roomCount [1] : xs :: positiveInteger+ kad :: detachedRoom [1] : xs :: boolean+ kad :: detachedRoomCount [1] : xs :: positiveInteger
Pre – defined Attributes
+ kad :: parcelNumber [1] : xs :: string + kad :: buildingOwner [1...*] : xs :: string+ kad :: buildingInhabitants [1] : xs :: positiveInteger+ kad :: buildingApartment [1] : xs :: positiveInteger+ kad :: buildingNumber [1] : xs :: string+ kad :: buildingType [1] : kad :: BuildingType
<<Feature>>_AbstractBuilding
+class : BuildingClassType [0..1]+function : BuildingFunctionType [0..*]+usage : BuildingUsageType [0..*]+yearOfConstruction : xs :: gYear [0..1]+yearOfDemolition : xs :: gYear [0..1]+roofType : RoofTypeType [0..1]+measuredHeight : gml :: LengthType [0..1]+storeysAboveGround : xs :: NonNegativeIntegers [0..1]+storeysBelowGround : xs :: NonNegativeIntegers [0..1]+storeysHeightAboveGround : xs :: MeasureOrNullListType [0..1]+storeysHeightBelowGround : xs :: MeasureOrNullListType [0..1]
<<Feature>Rooms
Modeled Building
Front View
Added Attributes to Building
Extended Properties to Building
Added Attributes to Apartment
Recognition system for the building floor plans
Introduction
• Aim• Extraction of the information• Representation of the information in CityGML
3
4
<CityObjectMember> <Polygon> <PosList> x1 y1 z1
x2 y2 z2. . . </PosList> </Polygon><CityObjectMember>
Basic Concepts
• Computer representation of images• Pixels• Pixel value based on the color• Array representation
The Process
Image Pre-processing Data Reduction
Graph Construction
CityGML
Building Floor Plans
• Gray scale image• High Resolution
Thick lines ownership boundaryNumbers ownership rightsTexts usage type
Assumptions made
• Thick lines indicate ownership boundary• Numbers enclosed in a polygon• Single number in a polygon• Numbers do not overlap with the lines and the
symbols
The Process
Image Pre-processing
Data Reduction
Graph Construction
CityGML
Thresholding and Noise Removal
• Thresholding• Noise
• Gaps • Missing pixels
• Continuity is important for contour detection
• Solution• Closing Operation
Closing Operation
Input Image
Structuring Element
The Process
Removing Texts and
Thin Lines
Number Identification
Image Pre-processing
Data Reduction
Graph Construction
CityGML
Ownership Identification
• Identify the location of the numbers
• Extract the numbers• Recognize numbers
OCR
OCR
{3,x,y}
{4,x,y}
1 11 1 1 2
1 1 2 2 21 2 2 2
3 3 3 4 43 3 3 4 4
• Connected component labeling
The Process
Removing Texts and
Thin Lines
Number Identification
Image Pre-processing
Data Reduction
Graph Construction
CityGML
Removing Texts and Thin Lines
• Texts indicate property usage and type
• Thin lines indicate sub region information
• Remove texts and thin lines.• Connected component
labeling• Opening operation
Opening Operation
• Opening
The Process
Image Pre-processing
Data Reduction
Graph Construction
CityGML
Graph
Graph is an ordered pair G: = (V,E) comprising a set V of vertices together with a set E of edges.
Graph is used to show connectivity of vertices.
The Process
Corner Detection
Graph Construction
Skeletonization
Image Pre Processing
Data Reduction
Graph Construction
Face and Floor
Identification
CityGML
Skeletonization
• Why Skeletonization?• Reduces foreground
regions in an image to a skeleton
• Skeleton should be• One pixel width• Preserves connectivity• Preserves Topology• Centered
The Process
Corner Detection
Graph Construction
Face and Floor
Identification
Skeletonization
Image Pre-processing
Data Reduction
Graph Construction
CityGML
Corner Detection
• Corners are intersection of two or more edges
• Corners form the nodes of the graph
• Harris Corner DetectionCorner
Detection
Graph Construction
• Identify the nodes• Identify the edges• Optimization
Graph Construction
• Identify the nodes• Identify the edges• Optimization
The Process
Corner Detection
Graph Construction
Skeletonization
Image Pre-processing
Data Reduction
Graph Construction
CityGML
Face and Floor
Identification
Face Recognition
• Each enclosed face becomes ownership boundary
• Associate ownership• Store the information
{3,x,y}
{4,x,y}
3
4Ownership
Ownership Right
Point co-ordinate
…
Floor Identification
• Identifying Floors• Storing Information
2 3 4 44
1 2 3 4
OwnershipOwnership Right
Floor Number
Co-ordinates
. . .
Storing the information
3
4
<OwnershipRights><Object>
<floorNumber> 1 </floorNumber><OwnershipRight> 3 </OwnershipRight><Polygon>
x1 y1 z1x2 y2 z2
. . .</Polygon></Object><Object> . . .<Object></OwnershipRights>
1
Representation of Apartment Rights in CityGML format.
Overall Process
CityGML Representation
ProcessInput File
Output(Extended CityGML)
Input File
Ownership
Ownership Right
Floor Number
Co-ordinates
. . .
Height
Width
...
Steps involved:
Identification of unique OwnershipRights and unique Floor Number
Identification of unique OwnershipRights and unique Floor Number
Separation of objects into OwnershipRights, Floor Number and Regions
Separation of objects into OwnershipRights, Floor Number and Regions
Example
2 1
Floor 1
1
Floor 2
Steps involved:
Identification of unique OwnershipRights and unique Floor Number
Identification of unique OwnershipRights and unique Floor Number
Separation of objects into OwnershipRights, Floor Number and Regions
Separation of objects into OwnershipRights, Floor Number and Regions
Grouping of regions with same OwnershipRightsGrouping of regions with same OwnershipRights
Advantages
• Use of any CityGML Viewer
• No plugins
Steps involved:
Identification of unique OwnershipRights and unique Floor Number
Identification of unique OwnershipRights and unique Floor Number
Separation of objects into OwnershipRights, Floor Number and Regions
Separation of objects into OwnershipRights, Floor Number and Regions
Grouping of regions with same OwnershipRightsGrouping of regions with same OwnershipRights
Transformation/translation of co-ordinates based on Floor Number
Transformation/translation of co-ordinates based on Floor Number
Translation based on floor number
Steps involved:
Identification of unique OwnershipRights and unique Floor Number
Identification of unique OwnershipRights and unique Floor Number
Separation of objects into OwnershipRights, Floor Number and Regions
Separation of objects into OwnershipRights, Floor Number and Regions
Grouping of regions with same OwnershipRightsGrouping of regions with same OwnershipRights
Transformation/translation of co-ordinates based on Floor Number
Transformation/translation of co-ordinates based on Floor Number
Representation in CityGML formatRepresentation in CityGML format
2D Output
Steps involved:
Identification of unique OwnershipRights and unique Floor Number
Identification of unique OwnershipRights and unique Floor Number
Separation of objects into OwnershipRights, Floor Number and Regions
Separation of objects into OwnershipRights, Floor Number and Regions
Grouping of regions with same OwnershipRightsGrouping of regions with same OwnershipRights
Transformation/translation of co-ordinates based on Floor Number
Transformation/translation of co-ordinates based on Floor Number
Representation in CityGML formatRepresentation in CityGML format
Converting the 2D model into a 3D modelConverting the 2D model into a 3D model
Final Output
Summary
• Extended CityGML can be used for cadastre purpose.
• Building floor plans can be effectively digitized and can be represented in CityGML.
PROJECT DEMONSTRATION
THANK YOU