Vision & Image Processing for RoboCup KSL League Rami Isachar Lihen Sternfled.

Slides:



Advertisements
Similar presentations
Goal: a graph representation of the topology of a gray scale image. The graph represents the hierarchy of the lower and upper level sets of the gray level.
Advertisements

5th Intensive Course on Soil Micromorphology Naples th - 14th September Image Analysis Lecture 5 Thresholding/Segmentation.
5th Intensive Course on Soil Micromorphology Naples th - 14th September Image Analysis Lecture 5 Thresholding/Segmentation.
1 ECE 495 – Integrated System Design I Introduction to Image Processing ECE 495, Spring 2013.
Automatic Color Gamut Calibration Cristobal Alvarez-Russell Michael Novitzky Phillip Marks.
Area and perimeter calculation using super resolution algorithms M. P. Cipolletti – C. A. Delrieux – M. C. Piccolo – G. M. E. Perillo IADO – UNS – CONICET.
QR Code Recognition Based On Image Processing
Grey Level Enhancement Contrast stretching Linear mapping Non-linear mapping Efficient implementation of mapping algorithms Design of classes to support.
Course Syllabus 1.Color 2.Camera models, camera calibration 3.Advanced image pre-processing Line detection Corner detection Maximally stable extremal regions.
Color spaces CIE - RGB space. HSV - space. CIE - XYZ space.
Chapter 9: Morphological Image Processing
Course Syllabus 1.Color 2.Camera models, camera calibration 3.Advanced image pre-processing Line detection Corner detection Maximally stable extremal regions.
Morphological Image Processing Md. Rokanujjaman Assistant Professor Dept of Computer Science and Engineering Rajshahi University.
Tutorial # 10 Morphological Operations I8oZE.
Course Website: Digital Image Processing Morphological Image Processing.
Highlights Lecture on the image part (10) Automatic Perception 16
[cvPONG] A 3-D Pong Game Controlled Using Computer Vision Techniques Quan Yu and Chris Wagner.
2007Theo Schouten1 Morphology Set theory is the mathematical basis for morphology. Sets in Euclidic space E 2 (or rather Z 2 : the set of pairs of integers)
E.G.M. PetrakisBinary Image Processing1 Binary Image Analysis Segmentation produces homogenous regions –each region has uniform gray-level –each region.
9/14/04© University of Wisconsin, CS559 Spring 2004 Last Time Intensity perception – the importance of ratios Dynamic Range – what it means and some of.
Kalman Tracking for Image Processing Applications Student : Julius Oyeleke Supervisor : Dr Martin Glavin Co-Supervisor : Dr Fearghal Morgan.
Tal Mor  Create an automatic system that given an image of a room and a color, will color the room walls  Maintaining the original texture.
CSE554Binary PicturesSlide 1 CSE 554 Lecture 1: Binary Pictures Fall 2013.
CSE554Binary PicturesSlide 1 CSE 554 Lecture 1: Binary Pictures Fall 2014.
Chapter 3 Binary Image Analysis. Types of images ► Digital image = I[r][c] is discrete for I, r, and c.  B[r][c] = binary image - range of I is in {0,1}
Deep Green System for real-time tracking and playing the board game Reversi Nadav Erell Intro to Computational and Biological Vision, CS department, Ben-Gurion.
Behaviour Based Robotics
CS 376b Introduction to Computer Vision 04 / 29 / 2008 Instructor: Michael Eckmann.
October 14, 2014Computer Vision Lecture 11: Image Segmentation I 1Contours How should we represent contours? A good contour representation should meet.
Chapter 9.  Mathematical morphology: ◦ A useful tool for extracting image components in the representation of region shape.  Boundaries, skeletons,
Facial Feature Extraction Yuri Vanzine C490/B657 Computer Vision.
Filtering and Color To filter a color image, simply filter each of R,G and B separately Re-scaling and truncating are more difficult to implement: –Adjusting.
Under Supervision of Dr. Kamel A. Arram Eng. Lamiaa Said Wed
September 23, 2014Computer Vision Lecture 5: Binary Image Processing 1 Binary Images Binary images are grayscale images with only two possible levels of.
Digital Image Processing CCS331 Relationships of Pixel 1.
Morphological Image Processing
1 Artificial Intelligence: Vision Stages of analysis Low level vision Surfaces and distance Object Matching.
1 Research Question  Can a vision-based mobile robot  with limited computation and memory,  and rapidly varying camera positions,  operate autonomously.
Eye regions localization Balázs Harangi – University of Debrecen Ciprian Pop – Technical University of Cluj-Napoca László Kovács – University of Debrecen.
Digital Image Processing CSC331 Morphological image processing 1.
Introduction to Image Processing Our first look at image processing will be through the use of Paint Shop Pro, a bitmap editing program available as shareware.
ICBV Course Final Project Sergey Tyrin Itamar Barkai.
CS654: Digital Image Analysis
Intelligent Robotics Today: Vision & Time & Space Complexity.
1 Mathematic Morphology used to extract image components that are useful in the representation and description of region shape, such as boundaries extraction.
Morphological Image Processing Robotics. 2/22/2016Introduction to Machine Vision Remember from Lecture 12: GRAY LEVEL THRESHOLDING Objects Set threshold.
Digital Image Processing
Computer Vision Computer Vision based Hole Filling Chad Hantak COMP December 9, 2003.
Morphological Image Processing (Chapter 9) CSC 446 Lecturer: Nada ALZaben.
Morphological Image Processing
RoboCup KSL Design and implementation of vision and image processing core Academic Supervisor: Dr. Kolberg Eli Mentors: Dr. Abramov Benjamin & Mr.
License Plate Recognition of A Vehicle using MATLAB
1 of 32 Computer Graphics Color. 2 of 32 Basics Of Color elements of color:
HADI Tutorial Void Inspection Contents 1.Basic Void Inspection Procedure 2.Smooth ROI 3.Background Processing (Flatten BG) 4.Thresholding (Void.
Coin Recognition Using MATLAB - Emad Zaben - Bakir Hasanein - Mohammed Omar.
IMAGE PROCESSING Tadas Rimavičius.
Digital Image Processing Lecture 15: Morphological Algorithms April 27, 2005 Prof. Charlene Tsai.
CSE 554 Lecture 1: Binary Pictures
Introduction to Computational and Biological Vision Keren shemesh
Vision processing for robot navigation
Computer Vision Lecture 5: Binary Image Processing
Fitting Curve Models to Edges
Digital Image Processing
Binary Image processing بهمن 92
Department of Computer Engineering
Digital Image Processing Lecture 15: Morphological Algorithms
Morphological Operators
ECE 692 – Advanced Topics in Computer Vision
Tracking the Eyes using a Webcam
DIGITAL IMAGE PROCESSING Elective 3 (5th Sem.)
Presentation transcript:

Vision & Image Processing for RoboCup KSL League Rami Isachar Lihen Sternfled

The Vision module is responsible for image processing. The main goal is to detect meaningful objects - ball, and distance to detected objects. The implementation uses some functions from the OpenCV image processing. Vision module

Calibration Tool Our design contains a separate tool that adjust our image-processing to the current environment colors. The tool ”teaches” the robot how to define the green color spectrum and the white spectrum. The tool shows the user 2 images - the original image and an ”only green”/”only white” image. The user clicks on the green pixels in the original image and the tool colors only these pixels in white in the ”only green”/”only white” image, as can be seen in figure 1. (a) Original Image (b) ”Only Green” Image Figure 1: Calibration-Tool Example (a) Original Image(b) ”Only Green” Image

Common Image Processing Techniques HSV - We prefer to use the HSV(hue,saturation & value) image format over the common RGB format. RGB components of an object’s color in a digital image are all correlated with the amount of light hitting the object,and therefore with each other. Thus, image descriptions in terms of RGB components make object discrimination difficult. Instead, descriptions in terms of HSV are far more relevant. Dynamic Threshold - Almost every image processing in our code starts with an ”image segmentation”. This is done in a very simple way, using the threshold method. The threshold uses the values that were calibrated with our calibration tool. By doing this, the threshold varies with every calibration, making it adaptive to a variety of lighting conditions, grass color, etc. Erosion & Dilation - After thresholding we use Erosion & Dilation to ”fill holes” in the given B&W image. Erosion is done by applying a filter on the image that changes pixel color to white iff all the pixels that surrounds it are white. Dilation does the same action for black pixels. Combining these filters gives us the ability to ”fill holes” and more. Various algorithms have been tested regarding ball, goal and white-lines detection. ultimately we’ve chosen the most efficient one in terms of fast computations and accuracy as described below.

Ball Detection The ball detection algorithm is based on finding circle shapes in a B&W image. Assuming light conditions are very noisy and therefore unexpected, as well as the colors of the ball are unknown, we have tried to develop an algorithm that is based on the geometry of the object and not on the objects color. We use OpenCV’s Hough transform functions, in particular HoughCircles, to detect circular objects.

Ball Detection Cont’ we ensure that the founded circular object is located on a green background, in order to eliminate circular objects positioned outside the field. We also take into consideration the fact that the ball is 50% white. We color in white the other 50% non-white pixels (which are inside the ball boundaries) by applying Erosion&Dilation to the B&W image. By doing it we get a perfect circle, which is easier to detect. A ball detection example is presented in figure 2 Figure 2: The robot detects the ball