object recognition in ros using feature extractors and feature matchers by dolev shapira
TRANSCRIPT
![Page 1: Object Recognition in ROS Using Feature Extractors and Feature Matchers By Dolev Shapira](https://reader036.vdocuments.net/reader036/viewer/2022082709/56649f445503460f94c64db4/html5/thumbnails/1.jpg)
Object Recognition in ROS
Using Feature Extractors
and Feature MatchersBy Dolev Shapira
![Page 2: Object Recognition in ROS Using Feature Extractors and Feature Matchers By Dolev Shapira](https://reader036.vdocuments.net/reader036/viewer/2022082709/56649f445503460f94c64db4/html5/thumbnails/2.jpg)
Introduction and Goals
• Provide a reliable, modular system for object recognition.
• Provide guidance for the user how to optimize the use of the system.
• Creation of a “standalone” node that provides an of abstraction between object recognition and other processes.
![Page 3: Object Recognition in ROS Using Feature Extractors and Feature Matchers By Dolev Shapira](https://reader036.vdocuments.net/reader036/viewer/2022082709/56649f445503460f94c64db4/html5/thumbnails/3.jpg)
Introduction to ROS
“What is ROS?The Robot Operating System (ROS) is a set of software libraries and tools that help you build robot applications. From drivers to state-of-the-art algorithms, and with powerful developer tools, ROS has what you need for your next
robotics project. And it's all open source”.
ROS.org
![Page 4: Object Recognition in ROS Using Feature Extractors and Feature Matchers By Dolev Shapira](https://reader036.vdocuments.net/reader036/viewer/2022082709/56649f445503460f94c64db4/html5/thumbnails/4.jpg)
Introduction to ROS
ROS provides an interface that allows the user to create a modular independent pieces of code called “Nodes”, communicating with each other
using “Topics .”
![Page 5: Object Recognition in ROS Using Feature Extractors and Feature Matchers By Dolev Shapira](https://reader036.vdocuments.net/reader036/viewer/2022082709/56649f445503460f94c64db4/html5/thumbnails/5.jpg)
Introduction to ROS
• Nodes – “processes”.• Topics – “message boards”.• Subscribers – Nodes “watching” the topics
and reading incoming messages.• Publishers – Nodes publishing (“posting”)
messages into topics.
![Page 6: Object Recognition in ROS Using Feature Extractors and Feature Matchers By Dolev Shapira](https://reader036.vdocuments.net/reader036/viewer/2022082709/56649f445503460f94c64db4/html5/thumbnails/6.jpg)
OpenCV
OpenCV (Open Source Computer Vision Library) is an open source computer vision and machine learning software library. OpenCV was built to provide a common infrastructure for computer vision applications and to accelerate the use of machine perception in the commercial products.
![Page 7: Object Recognition in ROS Using Feature Extractors and Feature Matchers By Dolev Shapira](https://reader036.vdocuments.net/reader036/viewer/2022082709/56649f445503460f94c64db4/html5/thumbnails/7.jpg)
Feature Detection
We have seen in this course a biological mechanism used for feature detection.•Simple cells – Orientation.•Complex cells – Orientation and Direction.•Hypercomplex cells – “end-stop” property.The only question in hand is, what feature should we trace?
![Page 8: Object Recognition in ROS Using Feature Extractors and Feature Matchers By Dolev Shapira](https://reader036.vdocuments.net/reader036/viewer/2022082709/56649f445503460f94c64db4/html5/thumbnails/8.jpg)
SIFT Feature Detector
• Scale invariant.• Rotation invariant.• Functions well even when there is a change in
illumination.• Function relatively well even when there’s
noise.David G. Lowe 2004
![Page 9: Object Recognition in ROS Using Feature Extractors and Feature Matchers By Dolev Shapira](https://reader036.vdocuments.net/reader036/viewer/2022082709/56649f445503460f94c64db4/html5/thumbnails/9.jpg)
How Does it Work?
• We load a set of “Templates” prepared beforehand.
• We sample images from the camera (scenes).• We detect features both in the scene, and the
templates.• We match between the two using a Matcher.
![Page 10: Object Recognition in ROS Using Feature Extractors and Feature Matchers By Dolev Shapira](https://reader036.vdocuments.net/reader036/viewer/2022082709/56649f445503460f94c64db4/html5/thumbnails/10.jpg)
Templates
• Should not be noisy.• Should not contain a transparent part of an
object.• Should not contain a reflective part of an
object.• Should contain “static” features.• Should be of a part proportional to the object
itself (with relation to the resolution).
![Page 11: Object Recognition in ROS Using Feature Extractors and Feature Matchers By Dolev Shapira](https://reader036.vdocuments.net/reader036/viewer/2022082709/56649f445503460f94c64db4/html5/thumbnails/11.jpg)
Results
![Page 12: Object Recognition in ROS Using Feature Extractors and Feature Matchers By Dolev Shapira](https://reader036.vdocuments.net/reader036/viewer/2022082709/56649f445503460f94c64db4/html5/thumbnails/12.jpg)
Results