Since the beginning, we knew we wanted to create a product integrated with machine learning. As machine learning had infinite applications and could be deployed on mobile devices, the possibilities were endless. After listening to the news about the alarming statistics of world hunger that impacted billions worldwide, we knew we wanted to help. After researching the many causes of this issue, we decided to focus on improving agricultural production. Upon researching, we learned that a large percentage of crops went to waste when diseases and nutrient deficiencies went unnoticed. This prompted the creation of Plantly, which aims to increase agricultural productivity by providing management tools for plant diseases and deficiencies.

What it does

Plantly has four main features: information, identification, journal management system, and map.

Keeping track of plants and properly tending them can be tough. Utilizing the Firestore database, users can curate their own list of plants for easy tracking and management. To learn more about plant care, Plantly provides basic information on the plant, its ideal soil environments, and its ideal pH levels. This allows users to gain a better understanding of how to properly take care of their plants.

With a vast number of plant diseases and deficiencies, identifying a plant’s health condition is extremely difficult. Plantly’s identification tool identifies 38 common diseases from 14 of the world’s largest crops, as well as 10 common nutrient deficiencies. The user chooses to either open the camera through the app or choose a photo from their library to upload. Once the picture is uploaded, they are taken to a page containing the plant’s identification, as well as methods to treat the disease or deficiency. With over 93% accuracy, the model is able to accurately detect a plant’s health.

Using a journal to track plants can be extremely beneficial when encountering health problems in crops. Users are able to create and access journals that store data about their plants. These updates include a photo of the plant, its identification, and additional notes entered by the user. With Plantly’s journals, users can easily track the progression of their plants.

When left untreated, plant diseases spread and can soon become a universal issue. With the map feature, users can add their plants onto a worldwide map shared by Plantly’s entire user base. Each map annotation includes the plant, its health condition, and the date it was recorded. This will enable farmers to observe nearby plants in their communities and take preventative actions when necessary.

How I built it

To gather information on different plants, we used HTML web scraping to get information from databases. The machine learning model was trained with over 70,000 thousand images with a convolutional neural network image classifier in Python trained with TensorFlow’s Keras deep learning API. User accounts and data storage was supported by Google's Firebase database, for a real-time sync.

Challenges I ran into

At first, our model reached a meager 10% accuracy. After adding more layers and data to the neural network, we achieved a 97% accuracy. Furthermore, we were unsure how to grab information from websites to display on our app. We then came across SwiftSoup, which allowed us to easily web scrape HTML code on websites. Additionally, it was tricky to animate elements in Swift. After reading several articles, we were finally successful.

Accomplishments that I'm proud of

Coming into the challenge, we had little to no experience with machine learning. Afterward, we were able to write a python image classifier using Tensorflow's Keras API, which felt empowering. This was also our first time using Firebase to connect our application to a database.

What I learned

We learned how to use Tensorflow's Keras API to create an image classifier for detecting plant diseases and nutrient deficiencies. Furthermore, we learned how to read and write data in Firestore, as well as how to animate UI elements in our app.

What's next for Plantly

We plan to incorporate more types of plant diseases and nutrient deficiencies in our model for a more holistic plant health analysis. We will also gather more data to improve model accuracy. We are already in contact with a couple of nonprofits: The Land Institute and APS. We hope to use these partnerships to connect the app to farmers in the United States. Plantly will be released onto the iOS App Store in the near future. However, we plan to conduct beta testing through TestFlight beforehand. We are also currently developing an android version of the app.

Built With

  • keras
  • tensorflow
Share this project: