Habitat destruction and fragmentation is the biggest cause of the extinction of species. It is absolutely vital that environmental researchers are able to accurately and efficiently partition regions into natural and artificial land in order to track the rate at which man-made structures encroach upon the natural environment.
What it does
Yesterday, researchers had to use expensive LiDAR cameras and had to spend hours compiling data into something they can visually see. Today, all they will need is a clear birds-eye view image of the landscape (either from a drone or a screenshot from google maps), 15 seconds of time, and our nifty little piece of software. AcreageContour takes images of landscapes and is able to visually segment it into Forests, Grassland/Fields, Water, Roads, and Buildings. Periodic measurements allow one to easily track phenomenons such as Urban Sprawl, Deforestation, Wild Fires, Natural disasters, and Habitat Destruction right from their desk anywhere in the world on any device they please (Perfect for social distancing).
How we built it
Using the tools we had at hand, we got to work testing our skills to build AcreageContour. Using the power of Machine learning in the form of Pytorch we were able to get our model to accurately detect landscape features with an approximate loss of 0.07 (If you don't know what this means, just remember this is a big deal!). We also used Flask and Node.js to power the backend infrastructure that allows AcreageContour to send and receive images from users as well as pass data to and from our Machine Learning model. Our users cant see the inner workings of AcreageContour but, they are able to see the user-friendly web interface built and developed using HTML, CSS, and the MaterialUI library.
Challenges we ran into
Throughout the course of the weekend, we endlessly worked to get our frontend and backend to work together. We initially were going to build a node.js backend that would handle all file and data transfer but that plan fell apart when we were plagued with errors. Feeling determined, we pivoted and built our backend with Flask which turned out perfectly. (We are still using some node.js in our frontend stack)
Accomplishments that we're proud of
With every Machine Learning based hack, it is always a relief to see it work as intended. We were especially happy to see our Machine Learning loss was exceptionally low given the small amount of data we had as well as our short time frame. At the end of the day, a finished product no matter what it's function may be is always something to be proud of.
What we learned
Going into this hack, all three of us had different skills and talents. Kevin was our frontend wizard, Trevor our Machine Learning Guru, and Aryan our backend conjurer. Each and every one of us will leave this hack with a new skill as well as an improvement in our teamwork skills and problem-solving skills given the circumstances of remote collaboration due to COVID-19. Not only that but our ability to quickly identify problems that have no logical solutions and pivot to avoid wasting valuable time will notably improve after this hack given our node.js and Flask encounters.
What's next for AcreageContour
We plan on making AcreageContour more intuitive for our users. The addition of new features such as feature percentages and automation will enable us to achieve this end goal. In addition to new features, we plan on enriching our Machine Learning model even more though the help of even more training and even more terrain data from around the world.