december 2, 2013 thessaloniki, greece gnorasi workshop charalampos doulaverakis certh/iti knowledge...

21
December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning and semantic interpretation of visual data in GNORASI

Upload: lillian-phelps

Post on 16-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

December 2, 2013Thessaloniki, Greece

GNORASI WORKSHOP

Charalampos Doulaverakis

CERTH/ITI

Knowledge and processing algorithms for remote sensing data

Reasoning and semantic interpretation of visual data in GNORASI

Page 2: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

2

Goals of semantic interpretation

Reasoning and representation of knowledge for semantic-enabled image analysis Expert knowledge and visual information

processing data are represented through ontologies

Development of a reasoning process for the knowledge assisted interpretation of images

Reasoning methods Fuzzy inference support

Page 3: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

3

Definition on ontology Representation and querying Land use/Land cover ontologies

Ontologies and reasoning

Page 4: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

4

Ontology definition

An ontology defines a set of representational primitives with which to model a domain of knowledge or discourse (Gruber, 1995) Classes: which represent a set of objects Properties: which express attributes and

relations between classes and objects Constraints: for expressing logical

consistency Individuals: atoms (objects) which are

members of a class Abstraction level of data models

Analogous to hierarchical and relational models

Ontologies, through inference, can provide us with implicitly defined information Reasoning engines

Thomas R. Gruber. Toward Principles for the Design of Ontologies Used for Knowledge Sharing. International Journal of Human-Computer Studies, vol. 43, no. 5-6, pages 907-928, 1995

Page 5: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

5

Ontology languages

Several languages have been proposed RDF(S)

RDF: Uses URI for expressing relationships between objects (triples) RDF: Allows structured and semi-structured data to be mixed,

exposed, and shared across different applications. RDFS: Allows the definition of classes, the relations between them and

semantic constraints on RDF OWL

Based on Description Logics. Designed to represent rich and complex knowledge 3 types of increasing expressivity

Lite, DL, Full

OWL2 Logical extension of OWL Deals with weaknesses in OWL expression and integrates features

requested by users 3 variations

EL, QL, RL

Page 6: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

6

Rule languages

They add expressive extensions to ontology languages E.g: SandArea(?x), SeaArea(?y),

isAdjacent(?x,?y)-> Beach(?x) Standard languages have been defined

RuleML, SWRL Other rule languages are offered by

reasoning engines Such as Jena, OWLIM, Pellet, Hermit, …

Page 7: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

7

Query languages

Query languages have been proposed for retrieving information from ontology repositories SPARQL, SeRQL, RDQL

Most have similarities with SQL SELECT * WHERE {?X rdf:type gn:LandCover}

Retrieve all instances of class gn:LandCover (SPARQL) Query languages can be used for deriving new facts

CONSTRUCT {?region gn:depicts gn:Vegetation} WHERE {

?region gn:hasNDVI ?value . FILTER (?value > 0.5)

} A type of rule expression

Such approaches are proposed e.g. in SPIN (SPARQL Inference Notation)

Page 8: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

8

Land Use/Land Cover systems Available land classifications correspond to specific

applications, e.g. crop or vegetation characterization As such, they cannot be used for generic telesensing

applications Most important of them are

CORINE Organized in a 3 level hierarchy: 5 categories of the 1st level

are broken down to 15 categories on the 2nd level which in turn are broken down to 44 3rd level categories

Land Cover Classification System (LCCS) It doesn’t specify predefined land cover categories, it rather

defines general classification criteria for characterizing land covers

Page 9: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

GNORASI classification10

Challenges Solutions

Usage examples

Development details

Page 10: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

11

Challenges

Object-based image analysis produces a large number of objects (thousands)

Probabilistic inference for class membership

Classification is based on user-defined rules Feature-based Geospatial restrictions

Classes can appear as premises in rules

Page 11: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

12

Solutions

Numerical computations are executed outside the ontological framework Fuzzy membership values are computed using

membership functions Ontological inference is used for the assignment

of objects to classes According to user rules

SPARQL Update and GeoSPARQL are used to define the rules in ontological terms

Development decision The ontological classification is implemented as an

external web service

Page 12: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

13

Rule definition UI

Hierarchy

Class ruleset

Rule definition

Page 13: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

14

Fuzzy values

The outcome of the rule definition processor are the fuzzy values of all objects for the features present in the rules

These arithmetic values have to be assigned to semantic entities, i.e. the defined classes

Object id

Fuzzy Band1 Mean

Fuzzy Roundness

Fuzzy NDVI

Fuzzy Band3 Kurtosis

1 0.335 0.843 0.776 0.094

2 0.598 0.321 0.705 0.544

3 0.101 0.202 0.777 0.000

4 0.000 0.101 1.000 0.333

Page 14: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

15

Ontology data

The fuzzy values along with the class hierarchy and rule definitions are sent to the ontology classification service

The following are performed by the service The class hierarchy is added to the core

ontology The fuzzy values are transformed to

ontological data properties Rules are translated to SPARQL Update

queries Rules are iteratively executed

Page 15: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

16

Example SPARQL Update

Example queries for assigning an object to classes Sidewalk and Vegetation with confidences ?conf1 and ?conf2Sidewalk

INSERT {?object gn:depicts gn:depiction1. gn:depiction1 gn:depictsClass gn:Sidewalk. gn:depiction1 gn:withConfidence ?conf.} WHERE {?object rdf:type gn:Object.

?object gn:fuzzyNDVIMean ?conf.}

VegetationINSERT {?object gn:depicts gn:depiction2. gn:depiction2 gn:depictsClass gn:Vegetation. gn:depiction2 gn:withConfidence ?conf2.} WHERE {?object rdf:type gn:Object. ?object gn:fuzzyNDVIMean ?conf2.}

INSERT {?object gn:depicts gn:depiction1. gn:depiction1 gn:depictsClass gn:Sidewalk. gn:depiction1 gn:withConfidence ?conf.} WHERE {?object rdf:type gn:Object . ?object gn:fuzzyNDVIMean ?conf. ?filterObject rdf:type gn:Object. ?filterObject gn:depicts ?gn:filterDepiction. ?filterDepiction gn:depictsClass gn:Road FILTER (geof:sfTouches(?object, ?filterObject))}

Sidewalk rule with geospatial restriction (adjacent to Road)

Page 16: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

17

Classification

In the example, Sidewalk depends on Road definition. Objects assigned to Road must exist

Iterative rule execution until convergence (no changes in the repository)

In the end, every object will be assigned to classes with different membership values

INSERT {?object gn:depicts gn:depiction1. gn:depiction1 gn:depictsClass gn:Sidewalk. gn:depiction1 gn:withConfidence ?conf.} WHERE { ?object rdf:type gn:Object.

?object gn:fuzzyNDVIMean ?conf.?filterObject rdf:type gn:Object.?filterObject gn:depicts ?

gn:filterDepiction.?filterDepiction gn:depictsClass

gn:RoadFILTER (geof:touches(?object, ?

filterObject))}

Page 17: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

18

Classification

In a hierarchy, objects will try to match the deepest classes

Page 18: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

19

Classification

Object are assigned to classes with the highest membership value

A minimum threshold is applied The service returns a list

[<object id> <class id> <confidence>]* This is the classification result

Page 19: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

20

Development

Java based REST communication Server

Grizzly project1

Reasoner employed OpenRDF Sesame2 backend, OWLIM-lite3

reasoner Geospatial library

uSeekM IndexingSail41 Grizzy, https://grizzly.java.net/2 OpenRDF Sesame, http://www.openrdf.org3 OWLIM Lite, http://www.ontotext.com/owlim4 IndexingSail, https://dev.opensahara.com/projects/useekm/wiki/IndexingSail

Page 20: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

21

Concluding

Efficient ontology-based classification Employ both feature-based classification

and geospatial restrictions Handling of fuzzy membership values Built as a web service

Page 21: December 2, 2013 Thessaloniki, Greece GNORASI WORKSHOP Charalampos Doulaverakis CERTH/ITI Knowledge and processing algorithms for remote sensing data Reasoning

22

Thank you!

Questions?