kalman tracking for image processing applications student : julius oyeleke supervisor : dr martin...
TRANSCRIPT
Kalman Tracking for Image Processing Applications
Student: Julius Oyeleke
Supervisor: Dr Martin Glavin
Co-Supervisor: Dr Fearghal Morgan
Objective of Project
1. To track a red ball over a frame of video
2. Image Thresholding 3. Find the centre point of the ball
4. The use of Kalman filtering to • track the red ball in the image. • predict the path of the ball in future as an aid of detection.
5. Display with Overlay
OpenCV (computer vision library) is being used in this project
Why OpenCVReal time computer vision.
Provides powerful function to assist in object identification, motion tracking etc.
Virtually assist in any image processing application.
C-based program computer vision repository.
Step1: Image Acquiring
commission the OpenCV system to load frames of video into memory.
cvNamedWindow(“C:/Users/julius/Desktop/FYP/redblue.bmp);
// opens a window on the screen that can contain and display
an image
cvShowImage( “redblue.bmp”, img );
// show a named window that already exist
IplImage* img = cvLoadImage( argv[1] );
//determines the file format to be loaded based on the file
name
Step1: Problem & Solution
Problem:
• Commissioning OpenCV to read images
• Installation of OpenCV 2.0
Solution: • Uninstall OpenCV 2.0
• Install OpenCV 1.0
Step2: Image Thresholding
convert the RGB frames to the HSV format.
RGB HSV RGB HSV RGB
threshold the HSV to identify the region of interest.
RGB HSV Threshold RGB output to screen
cvCvtColor(src,gray,CV_BGR2GRAY);
cvThreshold(gray,gray,150,255,CV_THRESH_BINARY); //Threshold to make the gray black
//Create gray image
Step2: Problems & SolutionsProblems:
• Circle Detection with OpenCV 1.0
• OpenCV 1.0 takes hue value to be 0-255
Solutions:
• Uninstall OpenCV 1.0
• Install OpenCV 2.0
• In OpenCV 2.0 hue value is 0-180 (works better for the red colour detection) • OpenCV 2.0 has a better algorithm for circle detection.
C-make • C-make helped in compiling OpenCV from the source code
• OpenCV 2.0 needs different files for different versions of studio.
• One will need to complete visual studio 2008 for OpenCV 2.0
Example 1:
Example2
Step3: Centre Point detection
Finding the centre point of the red ball
• Hough transform
Kalman Tracking-Predicting the path of the Red ball
Step4: Implementation of the Kalman Filtering
Centre point& predicted values
Step4: Problems & Solutions
Problems:
• Kalman not tracking & predicting properly
• OpenCV only has a 1-D example
• Program Crashed at the lineCvKalmanCorrect( Kalman, z_k ); // Correct Kalman filter state
Solutions:• 2-D was needed for this project
• I added "if (circles->total > 0)
Step5: Display with Overlay
Displaying with overlay
Conclusions
• Project was hampered by issues, most of which were overcome.
• Ambitious goal of the project was fully fulfilled
• Further work would lead to a complete solution