# Ontology-Based Framework for Cooperative Learning of 3D Object Recognition
## 4 Cooperative Robot Learning Approach
### Ontological Knowledge Population  
To enable cooperative learning and recognition of 3D objects among multiple service robots, we propose a new ontology, namely the Robot Object Description (ROD) ontology, which utilizes the existing SUMO ontology to represent object knowledge for service robots. Furthermore, we perform linguistic analysis on user-provided labels of objects to find the best matching concept. This allows a common understanding of an object between multiple service robots, multiple users, and multiple applications. Figure 8 shows the relationships between ROD core concepts in detail. Figure 8: Ontological knowledge base integrated with WordNet. Figure 7: Capturing PCD using RGB depth camera. (**a**) Acquire an image. (**b**) Subtract background. (**c**) Capture the PCD for the isolated object scene. An Object Description is an abstraction of a real-world object. An object instantiated from an Object Description also refers to a SUMO concept to represent the object's type. The object description also links to a Wordnet concept through the relation _hasLabel_. The object description also contains the textual description, PCD files, and grasping strategies through the relations _hasDescription_, _hasPCD_ and _hasGraspingStrategy_, respectively. A Grasping Strategy provides information about how to grasp an object through the relation _hasURL_. A Robot Description is an abstraction of a real-world service robot. A robot can learn about objects and has a URDF structure through the relations _hasLearnt_ and _hasURDF_, respectively. Moreover, a robot can be trained by a person represented via FOAF through the relation _hasTrained_. Figure 8 also depicts an ontological knowledge base for a sample object _Object A_, represented as an instance of concept _Object Description_ from the ROD ontology and _Drinking Cup_ from the SUMO ontology. With the use of linguistic analysis and WordNet, we can construct a linkage property, _ROD: hasLabel_, between _Object A_ and the English concept _Coffee_Mug_ in WordNet. Furthermore, _Object A_ has an additional description through the property _ROD: hasDescription_. Thereafter, we construct a sample grasping strategy, _Grasping A_, as an instance of a Grasping Strategy from ROD. Thus, _Object A_ links to _Grasping A_ through _ROD: hasGraspingStrategy_. The relationship between an object and a robot is enabled by instantiating a Robot Description, for example, _Robot A_. The fact that _RobotA_ has learnt _Object A_ is represented through the property _ROD: hasLearnt_. The person instance _Person A_ is represented using the FOAF ontology. If _Person A_ is the person who provided the label for a particular object to _Robot A_, this information is provided through property _ROD: hasTrained_. Finally, we construct linkages of _Object A_, _Grasping A_, and _Robot A_ to their Internet resources through the property _ROD: hasPCD_, hasURL_, and _hasURDF_, respectively. List 1 depicts an excerpt of the ontological knowledge base in RDF (Resource Description Framework) format. **List 1. ** Excerpt of the ontological knowledge base in RDF. 1. ObjectA rdf:type SUMO:DrinkingCup
2. ObjectA rdf:type ROD:ObjectDescription
3. ObjectA ROD:hasLabel \"coffee_mug\"
4. ObjectA ROD:hasDescription \"Coffee mug 40 oz\"
5. ObjectA ROD:hasPCD \"[[http://rovi.diitrsu.com/objectA/training1.pcd](http://rovi.diitrsu.com/objectA/training1.pcd)]([http://rovi.diitrsu.com/objectA/training1.pcd](http://rovi.diitrsu.com/objectA/training1.pcd))\"
6. GraspingA rdf:type ROD:GraspingStrategy
7. GraspingA ROD:hasURL \"[[http://rovi.diitrsu.com/grasping/objectA](http://rovi.diitrsu.com/grasping/objectA)]([http://rovi.diitrsu.com/grasping/objectA](http://rovi.diitrsu.com/grasping/objectA))\"
8. ObjectA ROD:hasGraspingStrategy GraspingA
9. RobotA rdf:type ROD:RobotDescription
10. RobotA ROD:hasURDF \"[[http://rovi.diitrsu.com/robot_a.urd](http://rovi.diitrsu.com/robot_a.urd)]([http://rovi.diitrsu.com/robot_a.urd](http://rovi.diitrsu.com/robot_a.urd))\"
11. RobotA ROD:hasLearnt ObjectA
12.