ML PoC for a plant pathology recognition solution
Itransition’s team delivered a proof of concept for an ML plant pathology recognition solution, enabling the customer to get investments and partner with several scientific institutes for further work on the solution.
Context
Our customer is a software startup that had an innovative idea for an image recognition and comparison solution. They wanted to create an app for field scientists and laboratories to scan, analyze, and compare plant photos and then determine pathology presence and types. Most of the solutions existing on the market offered the functionality of comparing plant samples but didn’t provide further analysis of grouping and cutting off irrelevant data and samples. In addition, such solutions didn’t connect to IoT devices for pathology research on the go.
The customer wanted to create a comprehensive solution that would simplify and enhance the process of plant pathology identification with the help of machine learning. They partnered with Itransition thanks to our extensive experience in delivering mobile solutions and web solutions equipped with ML features.
Solution
Itransition’s team suggested starting with a proof of concept (PoC) to evaluate the idea of a new solution before developing it fully. The PoC phase would give us an opportunity to elaborate on the details of ML features and study possible limitations that we’d need to overcome when creating a full-blown solution. As the customer already had a scanning device, the PoC solution should also have comprehensive interoperability with the scanner. The main goal of this phase was a functioning solution to offer to scientific institutions to work with and provide their feedback for further development.
ML approach
We created ML pipelines with a combination of C, Python, and .NET as the solution employs complex math and algorithms for comparison. The main language we used was Python thanks to its wide usage in ML solutions and quick development.
For the comparison algorithm to work properly, the images must be correctly preprocessed. The sample type should be identified first because we use different comparison methods for different sample types. Our team performed exploratory data analysis and prepared datasets for training by removing outliers, labeling data, and balancing datasets.
We trained two neural networks (NNs):
- Image classification using ResNet-50 model to identify sample types
- Multilabel classifier using ResNet-50 model to predict pathology types
As the customer didn’t have enough reference photos, we generated synthetic data based on 2,000 provided photos to extend the available training dataset. Our specialists:
- Performed image augmentation (random hue, contrast, coarse dropout, blur, image quality, adding random noise)
- Tested different input image types (RGB, grayscale, composite image)
Using Jupyter and PyTorch, we got the statistics on the dataset and predictions. We used Azure virtual machines for NN training and validation. Our specialists created a script that augments the dataset and feeds it to the NN. Considering the limited initial data, Itransition’s team prepared data for the NNs and grouped it into three categories for training.
We validated trained NNs on a given dataset and collected metrics, histograms, and analyzed model errors. As a result, we got the KPI of 80% correct pathology identification.
Mobile solution
Itransition’s team developed a mobile application that connects to the scanning device and uploads the scans to Azure Blob Storage. The mobile solution was developed with Swift and the .NET backend and deployed in Azure.
A mobile phone is connected to the customer’s device. A plant is put onto a flat surface on the other end of the device and scanned.
Disclaimer: According to the non-disclosure agreement that we signed with the customer, we cannot reveal the screenshots of the real system. In this case study we provide a few similar screenshots created with the view to offer the reader an idea of the solution developed by Itransition.
The application works with RAW and ProRAW formats for maximum photo quality. These photos are then uploaded to the backend and further analyzed by the NNs according to the predefined steps.
The solution allows for the validation and confirmation that all the data was uploaded to the backend. Then a user can see the list of photos that have not been uploaded yet but have been taken. To speed up the uploading, several photos are processed at a time.
Web application
Itransition’s team also delivered a web application for scientific experts to work with. The experts analyze the data processed and predicted by the NNs and give the final opinion on the plant pathology identification.
The web application is multi-tenant, allowing different expert organizations to register, and includes an admin portal where laboratories and users are managed. The solution is written with Tailwind CSS and React.
Results
Itransition’s team delivered a plant pathology recognition solution, and as a result of our cooperation, the customer:
- Successfully demonstrated the solution to the investors 8 months after the project’s start
- Partnered with 2 scientific institutes to develop the solution further
Services
Machine learning consulting
Explore our range of machine learning consulting services, along with related technologies, use cases, implementation roadmap, and payoffs.
Case study
An ML solution for brand analytics and reporting
Find out how Itransition’s team designed and developed an ML tool for brand tracking and analytics that processes images 50% faster than the legacy solution.
Case study
BI platform with AI and computer vision for a fashion retailer
Learn how Itransition delivered retail BI and deployed an ML-based customer analytics solution now processing 10TB of data.
Case study
ML PoC for aquatic environment analysis
Learn more about a PoC of an ML-based plankton detection and classification solution we developed, proving the suggested approach.
Case study
Internal talent marketplace for a global IT services company
Learn how we created Talenteer, an internal talent marketplace with AI features to optimize talent allocation in the company and reduce external hiring.
Insights
Machine learning in retail: 10 ways to upgrade your store
Explore the top use cases of machine learning in retail and find out what benefits this technology can bring to your business.