Title: Tracking Migratory Birds Around Large Structures
1Tracking Migratory BirdsAround Large
Structures Presented by Arik Brooks and
Nicholas Patrick Advisors Dr. Huggins, Dr.
Schertz, and Dr. Stewart Senior Design Project
2003-2004Bradley UniversityDepartment of
Electrical and Computer Engineering
2Project Background
- Every year, many birds are killed when their
migration path takes them near tall structures on
overcast nights. - One widely accepted theory on why this happens is
that the birds do not want to leave the lighted
area near a structure and end up running into it. - Wildlife biologists would like to study this
phenomenon.
3Outline
- Project summary
- Previous Work
- Detailed description
- System block diagram
- Subsystems
- Results
4Outline
- Test Plan
- Datasheet
- Conclusions
- Suggestions for future work
- Questions
5Project Summary
- The purpose of this project is to implement a
system to track the flight paths of birds in
real-time via stereoscopic imaging. - The desired system output is a display depicting
a 3-D representation of the trajectories of the
birds, and data relating to the trajectories.
6Previous Work
- 2003 seniors Brian Crombie and Matt Zivney
- Results basic object position location in a
laboratory environment with major limitations. - The groundwork laid out in their project
(algorithms, design equations, software
organization, etc.) was used as a starting point
for our system.
7Detailed Description
8System Block Diagram
System
9Hardware Block Diagram
10Subsystems
- Cameras
- Frame Grabber
- PCs/Network
11Camera Subsystem
- Includes two cameras mounted in parallel a known
distance apart allowing objects to be located in
space. - Inputs
- Photons -- Images collected by the cameras
- Synchronization -- Internal line lock
- Outputs
- Data -- Image data transmitted to the frame
grabber - Operation in System
- The cameras capture images at a rate dictated by
the speed of the preprocessing algorithm
12Frame Grabber Subsystem
- The frame grabber simultaneously captures images
from both cameras and supplies the digitized
image data to the PC. - Inputs
- Data -- Image data (NTSC format) from the cameras
- Setup -- Information from the PC
- Outputs
- Image Data to PC
- Operation in System
- The frame grabber operates at a rate dictated by
the speed of the preprocessing algorithm
13PCs/Network Subsystem
- Two PCs are networked together to divide
computation between the preprocessing and
trajectory calculation computers. - Inputs
- Image Data -- Arrays of intensity information
- Calibration Input -- Calibration data for the
cameras being used - Outputs
- Display GUI showing trajectories plotted in a
three dimensional representation - Statistics -- Pertinent data calculated from bird
trajectories - Raw Data -- Data file containing all preprocessed
data - Operation in System
- The PCs and network operate continuously
14Results
15Preprocessing Software
16Streamlined Preprocessing in C
- Implement faster centroid location code.
- Perimeter search vs. pixel-by-pixel search
- Improve background subtraction algorithm
- Fixed number of frames averaged for background
to 256 - Current frame added using shift operations
instead of multiplies/divides - Stored background is 16 bits
- upper 8 bits are image data
- lower 8 bits for accumulating round-off error
17Streamlined Preprocessing in C
- Improve background subtraction algorithm
- Speed Improvements (640x480, threshold image, do
not find objects) - Old -- 10.6 Frames per Second
- New 15.9 Frames per Second
- Updating average every 60 frames
- Without find object function -- 24 Frames per
Second - With find object function -- 18 Frames per Second
18Preprocessing in C
19Trajectory Determination in MATLAB
- Code to correlate objects between 2 cameras and
over time restructured - Added predictive searching to significantly
improve tracking ability - Improved graphing techniques real-time operation
- Implemented GUI for easy user interface
20Trajectory Determination comparison - two tennis
balls swinging
21Trajectory Determination comparison - two tennis
balls swinging
22Trajectory Determination Software
23Trajectory Determination in MATLAB
- Predictive Search Method
- Search for a new point within a sphere defined
by - Center at the location (x,y,z) predicted by the
previous two points in the trajectory and the
time taken between frame-grabs - Radius determined by average bird velocity, time
between frames, current velocity, and distance
from the cameras
24Trajectory Software GUI
25Test Plan
- There will be three primary test procedures that
will be performed to verify the system
specifications - Location Accuracy
- Max/Min Distance from Cameras
- Max Objects
Tennis Ball dispenser used in accuracy testing
26Test Plan
- Location Accuracy
- Capture data at known heights using a
stationary object and balls dropped from the
tennis ball dispenser. Compare theoretical to
experimental. - Max/Min Distance from Cameras
- Repeat Location Accuracy experiment at extremes
of range. - Max Objects
- Nerf Guns!!!
27T-Bird Accuracy Test 1
28T-Bird Accuracy Test 2
29T-Bird Demonstration
30T-Bird Demonstration
31Datasheet
- Average Migratory Bird Diameter 0.152 m
- Average Migratory Bird Speed 8.9409 m/s
- Max of Objects Tracked Simultaneously TBD
- Max Distance from Cameras 20 m
- Min Distance from Cameras 3 m
- Max Location Error (theoretical) 0.375 m
- Light Level Sensitivity
- Lab Cameras 0.22 Lux
- Low Light Cameras 0.0002 Lux
- Max Framerate 15 FPS
- Total Volume of Space Observed 606 m3
- Separation of Cameras assumed for calculations
0.5 m
32Conclusions
- Real-time tracking of multiple objects was
achieved in a laboratory setting.
33Suggestions for Future Work
- Implement boom (mechanical system and controls)
- Obtain and integrate high end cameras
- Optimize code (analyze algorithms, streamline
processes) - Port MATLAB to C
- Investigate feature detection methods for
improved target recognition
34Tracking Migratory BirdsAround Large
Structures Questions?