The identification of animals and objects in complex environments is an area of computer vision which has largely been neglected due to high expense of datasets and intensive computational requirements for analysis. The challenges of identifying sharks and aquatic animals in environments littered with surfers, rocks and various other possible false positives required the development of a system incorporating the newest forms of computer vision machine learning.
With the new advancements in single board computers specifically the NVidia Jetson TX2 a new approach of on board computing can be accomplished. This significantly reduces the cost, complexity and scalability of the system. Having the capability of running all the computer vision models on the drone itself removing the need for expensive and cumbersome ground stations.
-The system consists of two major components:
-The training of the computer vision models on a deep learning computer
Running the models through python-OpenCv on the Jetson TX2 on a drone platform
The computer vision techniques used in the development of this detection software varied over time. Initially being built on the Viola-Jones cascade classifier it became evidently clear that the need for a more accurate system that could be efficiently be used to detect multiple object types was required. This is where the new developments in convolutional neural networks became a central focus of the project in finding the most effective model to work on the Jetson TX2. The majority of these models were developed on the Tensorflow library. This training of the neural network is a never ending step however with more and more datasets being added and tested to find the best solution.
The working model is then applied to the Jetson TX2 and run through Python-OpenCV program completing a range of tasks when detection is made. On detection the system runs through a range of thresholds to reduce false positives and then initiates its warning system.
This warning system completes a few main tasks:
-SMS – containing location, time and images of the detection
-Upload of all data and images to online database
-Adding location of detections to an online mapping system
This system was tested over the beaches of New South Wales Australia on a DJI-600 drone with success in all stages of the program. Turning all the thresholding down for testing purposes it successfully detected some dolphins 200m off the coast line. On this detection all stages were completed and warning received in under a minute. This is of course the first stage of testing with a range of improvements needing to be made but a great first step none the less.
The future of this project has near endless possibilities and room for improvements. The most necessary development needs to be on training the detection models and improving the efficiency of the code. Hardware wise the need for a carrier board and the move to a smaller cheaper fixed wing platform is also required. Running the system from a large multi-rotor platform reduces the overall possible area coverage and total flight time.