Skip to content

This repository is an exploration of applied video analytics for use in Wildlife conservation scenarios.

Notifications You must be signed in to change notification settings

evmoreno/AI-WildLife-Conservation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AI-Conservation

Exploration of Live Video Analytics in Australian Wildlife Conservation.

This repository is not complete, it contains simple prototypes that relate to real world problems where technology can be used to create positive outcomes for both Australian business and Australia's endemic wildlife. For me, innovation across this space should be an "and" not an "or" value proposition. When we bring scientists, government and technologists together we create diverse teams which are uniquely able to find solutions.

Key to the development of AI based image detection solutions is obtaning access to free labelled open data-sets. At this time there are no Australian species specific labelled open data-sets. This is by far the biggest challenge and one which can only be resolved by sharing of data.

Ideas

Moving Vehicles and Macrospods should never meet!

Sadly, and daily many Australian Macropods (https://lnkd.in/g72gXM9) which include kangaroos, wallabies, and wallaroos are killed when crossing train lines in rural and regional locations. When these events occur, the trains are required to be inspected and potentially go through costly maintenance and repair. Rather than accept this as an inevitable consequence of moving people and product across our nation, Australian businesses can explore use of edge-based video analytics and AI to see (detect), identity and respond appropriately to what lies ahead.

In this case, the installation a simple sensor to create a sound deterrent (https://lnkd.in/gnAn6Jp) would stop the frequency of these encounters. Solving this type of problem using technology is good for business and good for Australia’s endemic wildlife.

Augmenting physical things like trains, planes and ships with cognitive services and artifical intelligence can be a powerful method to save our planet.

https://www.linkedin.com/pulse/trains-elephants-what-could-possibly-have-common-ev-moreno/ this project inspired by Microsoft Project15, with a goal to conservation and ecosystem sustainability through use an open platform that brings the latest Microsoft cloud and Internet of Things (IoT) technologies to accelerate scientific teams building solutions like species tracking & observation, poaching prevention, ecosystem monitoring, pollution detection, etc. https://microsoft.github.io/project15/

Macropod-AI

This folder is a placeholder for a trained YOLO Model which identifies Brush Tailed Rock Wallabies, my objective is to capture and label an image set to assist local conservation initatives.

Right now, I am exploring SOM camera's, use of drones.

I am privelleged to live in Kangaroo Valley https://www.rockwallaby.org.au/#

Chicken-AI -protoype

The folder contains a docker image, with a trained YOLO model which identifies chickens in a live video stream.

chicken

26-May-Chickens.avi recording of an RTSP feed after deploying the first training iteration, which was based on 100 images captured using the Azure Percept development kit

Instructions for deploying the Development Kit.

The Azure Percept Portal is integrated with CustomVision.AI , this enables you to automate image capture, label images, train models and then deploy the trained model to the appliance.

You do not need Azure Percept Development Kit to explore and build for Vision on Edge Scenarios check out this blog post

Geese-AI -protoype

This folder contains a trained YOLO model which identifies Geese in a live video stream.

Find the snow leopard

All of the above are enabled by Azure IoT Edge

Concepts

Review the IoT Reference Architecture

iotrefarch

IoT Hubs manage devices such as IoT Edge Devices (compute) / IoT Devices (sensors) check out this quickstart guide.

IoT Edge Modules are containers, they can be stored in Azure Container registry or other public / private registries and deployed from IoT Hub to IoT Edge Runtime.

Pipeline

IoT Edge Runtime consists of the edgeHub and edgeAgent.

install-edge-full

Follow this tutorial to learn how to deploy modules and establish routes in IoT Edge.

IoT Edge Modules can operate offline after syncing at least once with IoT Hub. You cannot however create, delete or update IoT Edge modules that are running on an IoT Edge when it is disconnected. Inter Module communication is configured using routing statements (data input and output) and can include routing back to IoT Hub for use other Azure Services.

Outside of deploying modules to IoT Edge you may also need to configure the Edge compute's Port Bindings using Container Create options:

  1. Give modules access to host storage
  2. Map host port to module port

Binding Tip For example, on a Linux system, "Binds":["/etc/iotedge/storage/:/iotedge/storage/"] means the directory /etc/iotedge/storage on your host system is mapped to the directory /iotedge/storage/ in the container.

You can deploy so many Azure Services as container modules to IoT Edge:

  1. Azure Functions
  2. Azure Stream Analytics
  3. SQL Server (Time Series Insights) and SQL DB Edge

The MSFT container repository can be found here

About

This repository is an exploration of applied video analytics for use in Wildlife conservation scenarios.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published