Skip to content

Week 6 Log

Abhishek Rathore edited this page Jul 9, 2016 · 3 revisions

Improved CAMShift Algorithm with Histogram Equalization

  • As no previous algorithms worked fine so we have searched for other algorithms for object tracking and got this research paper accidently. Which uses histogram equalization and back projection for redetection of object.
  • We have understood new concepts used in this paper's algorithm like 'Histogram Equalization' etc.
  • We have improved this paper's algorithm by giving a small window to search object in place of whole frame, which is of a bit more size than object's size. We assumed that object is real and will not move very fast.
  • We have created Python code using OpenCV library for this algorithm and created tutorial on this algorithm which can be found here
  • Then we have tested this code using various objects.
  • It was working fine to some extent. If similar colored object as color of your object is inside the frame then the algorithm will track the object but in presence of similar colored whole background it will say object is lost. If object is inside the frame after ROI selection, algorithm will track object in any scale and orientation. But if object escapes and comes back into the frame then it will be tracked if it will come to almost similar scale of object at the time of ROI selection.

Combination of Motor movement code and Object tracking code

  • We have combined both motor movement code and object tracking code for creating final code for using camera and gimbal system to track object based on ROI selection.
  • Tested this code using various objects and found that as both code uses center of the object so it was not working.
  • Then we have fixed the center for object tracking algorithm as frame center but removed some checks in object tracking algorithm. This has reduced the robustness of object tracking algorithm as now it may shift the track window of object to similar colored object inside the frame.
  • Now combined both the algorithms and tested it on various objects and found that motors are moving slow because of absence of multithreading.
  • Then we have created Tutorial on this final combined algorithm and it can be found here

Clone this wiki locally