Monday, March 12, 2007

type tracking improved 2

able to better track the type using tug-of-war. when the object at the head of the worm is classified as a car, the tug-of-war is pushed 0.5 positive. when the object is a person, it's pulled -1. the overall type of the worm is car if the cars are winning, person if the people are winning. this works because people tend to jump classification a lot, and cars tend to stay classified as cars. another approach would be to change the ratio for dividing people vs. car classification. we suspect this will become more important when the foreshortening calibration calculation is actually used in classification. -ation -ation -ation.

type tracking improved

type history is implemented. the type of a worm can change during the video, but it's still recognized as the same worm. the final type of the worm is the average over the history of the worm. this doesn't work very well. everything ends up being categorized as a car. viewing the types updated frame-by-frame it doesn't appear this way though. further investigation is necessary.

the indicator box sometimes lags behind the moving blob. the blob joining might not be updating the blobs correctly. we haven't been able to find the documentation for the CopyEdges() function in OpenCV, but that's probably where the problem is.

worm tracking

worm tracking has been slightly improved. objects are tracked across the screen and not broken up into many smaller objects. there is even a part where two objects overlap, but they keep the correct object ID.
classification has not improved yet. the code has been written for foreshortening calculation. we are running tests to see the best threshold for the adjusted size.
unfortunately, we still have no way of posting the videos.

Monday, March 5, 2007

time to refine

we shot more footage over the weekend and ran our algorithm on it. this time we were in regents parking lot. the first set of videos was unusable because there were some branches in the way. we relocated and took a second set of videos which looked fine.
after running our current code on the second set, we found that the algorithm is currently making the assumption that car size would be the same. we had avoided using size in determining the type of a blob, but getting the blob in the first place relied on it being a particular size. because of this, we created some goals and compromises:
  1. better classification
    1. using object size with correction for foreshortening
  2. better object tracking
    1. be more forgiving when an objects class changes, call it the same object
    2. keep a history of the objects class at each frame and use that to update the overall class
  3. video will be shot from AP&M only until algorithm can be generalized