Difference between revisions of "Bee counter software"

From HiveTool
Jump to: navigation, search
Line 8: Line 8:
 
[[File:BeeTrack1_1e.png|thumb|right|450px|White track has terminated in green area and will count as out]]  
 
[[File:BeeTrack1_1e.png|thumb|right|450px|White track has terminated in green area and will count as out]]  
  
 +
==Summary==
  
 
beeTrack1 is a c++ program using openCV libraries.  Here is an example of it processing video:
 
beeTrack1 is a c++ program using openCV libraries.  Here is an example of it processing video:
Line 34: Line 35:
 
       <tr bgcolor="violet"><td>7 bees</td><td>Violet</td></tr>
 
       <tr bgcolor="violet"><td>7 bees</td><td>Violet</td></tr>
 
     </table>
 
     </table>
 +
 +
==Background==
 +
Open Computer Vision ([[http://opencv.org/|openCV]]) is an open source computer vision and machine learning software library. The library has more than 2500 optimized algorithms, which includes a comprehensive set of both classic and state-of-the-art computer vision and machine learning algorithms.
 +
 +
Kyle Hounslow  has posted several YouTube videos on using openCV for motion tracking:
 +
 +
 +
https://www.youtube.com/watch?v=X6rPdRZzgjg
 +
 +
 +
Note: what most videos call tracking, is really object identification.  Tracking the object from frame to frame is trivial if there is only one object, but becomes harder and more error prone if there are multiple objects, especially if they can touch or occlude each other.

Revision as of 01:12, 20 March 2015

beeTrack1
Threshold image.
Filtered (smothed) threshold image.
Show contours
Show contours and tracks.
Same but input image is off
White track has terminated in green area and will count as out

Summary

beeTrack1 is a c++ program using openCV libraries. Here is an example of it processing video:

http://hivetool.org/counter/beeTrack1_1.mp4

Processing steps for each frame:

  1. Convert image to grey scale.
  2. Threshold based on grey value.
  3. Filter to smooth the noise.
  4. Draw a color contour around each object and color code it based on size (area).
  5. Check each existing track to see if one falls within a contour of an object.
  6. If so, append the center coordinates of the object to the track. If not, start a new track.
  7. When the track ends, increment the IN or OUT counter depending on where the track starts, ends and length.


Hivetool
1 beeBrown
2 beesRed
3 beesOrange
4 beesYellow
5 beesGreen
6 beesBlue
7 beesViolet

Background

Open Computer Vision ([[1]]) is an open source computer vision and machine learning software library. The library has more than 2500 optimized algorithms, which includes a comprehensive set of both classic and state-of-the-art computer vision and machine learning algorithms.

Kyle Hounslow has posted several YouTube videos on using openCV for motion tracking:


https://www.youtube.com/watch?v=X6rPdRZzgjg


Note: what most videos call tracking, is really object identification. Tracking the object from frame to frame is trivial if there is only one object, but becomes harder and more error prone if there are multiple objects, especially if they can touch or occlude each other.