Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
object_pose_representation [2012/12/01 14:27] – tenorth | object_pose_representation [2014/06/05 11:38] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Object pose representation ====== | + | #REDIRECT doc:object_pose_representation |
- | + | ||
- | Information about the poses and dimensions of objects is crucial for finding and manipulating them. In KnowRob, object dimensions are described as simple bounding boxes or cylinders (specifying the height, and either width and depth or the radius). While this is clearly not sufficient for grasping, we chose this description as a compromise in order not to put too many details like point clouds or meshes into the knowledge base. Such information is rather linked and stored in specialized file formats. | + | |
- | + | ||
- | Object poses are described via homography matrices. Per default, the system assumes all poses to be in the same global coordinate system. Pose matrices can, however, be qualified with a coordinate frame identifier. The robot can then transform these local poses into the global coordinate system, for example using the [[http:// | + | |
- | + | ||
- | Since robots act in dynamic environments, | + | |
- | + | ||
- | Memory, prediction, and planning, however, are central components of intelligent systems. The reason why the naive approach does not support such qualified statements is the limitation of OWL to binary relations that link exactly two entities. These relations can only express if something is related or not, but cannot qualify these statements by saying that a relation held an hour ago, or is supposed to hold with a certain probability. For this purpose, we need an additional instance in between that links e.g. the object, the location, the time, and the probability. | + | |
- | + | ||
- | In KnowRob, these elements are linked by the event that created the respective belief: the | + | |
- | perception of an object, an inference process, or the prediction of future states based on projec- | + | |
- | tion or simulation. The relation is thus reified, that is, transformed into a first-class object. These | + | |
- | reified perceptions or inference results are described as instances of subclasses of MentalEvent | + | |
- | (Figure 3.4), for instance VisualPerception or Reasoning. Object recognition algorithms, for in- | + | |
- | stance, are described as sub-classes in the VisualPerception tree. Multiple events can be assigned | + | |
- | to one object, describing different detections over time or differences between the current world | + | |
- | state and the state to be achieved (Figure 3.5). | + | |
- | + | ||
- | {{ : | + | |
- | + | ||
- | {{ : | + | |
- | + | ||
- | This representation is similar to the fluent calculus [Thielscher, | + | |
- | objects that represent the change of values over time. In our case, however, the reified objects | + | |
- | contain more information than just a changing value: the current and all past states of the relation, | + | |
- | including the times at which state changes were detected, and the type of event that established | + | |
- | the relation. Using our representation, | + | |
- | the perceived world, a description of how the world is supposed to look like, and the world state | + | |
- | a robot predicts as the result of some actions it performs. Since all states are represented in the | + | |
- | same system, it becomes possible to compare them, to check for inconsistencies or to derive | + | |
- | the required actions, which would be difficult if separate knowledge bases would be used for | + | |
- | perceived and inferred world states. | + | |
- | + | ||
- | (text taken from [[http:// | + |