Video Object Tracking
This project involves building a basic object tracking system that detects moving objects in a video by identifying changes between consecutive frames. It includes extracting frames from a video, analyzing pixel differences to detect movement, and visualizing these changes with color overlays. The modified frames will be recombined into a video. This project introduces foundational concepts in computer vision and video processing, focusing on detecting and highlighting moving objects.
Running the Program
- Use FFmpeg to split the input video into individual frames (images) using ProcessBuilder, saving frames in a format that preserves quality (e.g., PNG).
- For each frame (starting from the second frame), calculate the pixel-by-pixel difference with the previous frame.
- Identify pixels that have changed significantly (based on a threshold for intensity difference).
- For pixels that changed, apply a color overlay with transparency (alpha) to highlight areas of movement.
- Each section of changed pixels (contiguous moving areas) should be colored uniquely.
- Track and color each moving section consistently across frames if possible.
- After processing all frames, combine them back into a video format.
Testing
- Experiment with different change threshold values to observe how sensitivity affects detection.
- Test the program on videos with varying frame rates and resolutions.
- Record the processing time for splitting, analyzing, and reassembling the video.
Present the results with informative charts/figures and provide explanations based on both numeric and visual observations.