Posts

Critical Reflection

Image
As mentioned in the preface, a thesis project is a learning process and a lifetime opportunity to get out of one’s comfort zone and boost one’s ability to learn and grasp new fields in a very short time. One’s capability to independently learn, discover , think out of the box and innovate tremendously increases . With this precious capability, one is ready to face and proceed in the professional (and academical) world. What a person does with this capability is up to their ambition, personal interest and motivation. I purposefully treaded out of my comfort zone during the fulfilment of this thesis, I used many different technologies I had never used before, because it was often the best suitable one or the only way to complete certain implementations. For example, I had never truly used Python before this thesis. However, for my AI implementation this was necessary, hence, I did not hesitate to use it. By stepping out of my comfort zone I exposed myself to new risks, some I ...

Future...

Recent developments in computer vision and artificial intelligence have made it possible to achieve classifications of complex patterns in images. These developments have made the successful implementation of this solution architecture achievable. My implementation does not represent a production-ready product as it is a PoC. However, it does prove that a product resulting from this solution is achievable. With this implementation it is safe to say that all technical requirements have been satisfied to an acceptable degree for this thesis. Future To achieve a production ready product a few improvements must be implemented.   Legal Compliance in general and specifically with regards to privacy/integrity (GDPR) and       Data Storage laws must be researched and implemented. 2.    A feature must be implemented in the AI implementation that allows for live training to support continuous improvement of the AI. This live training will lead to e...

Development Tools

In this blogpost I will cover the different tools I have used during the development process of this project. General The tool below is used in all implementations. Github This free hosting website was used for version control. It uses the git open-source VCS (Version Controll System) enabling a combination of both local and centralized version control. This allows for easy and efficient management of progress in development. AIDE Implementation AIDE or the AI Diagnosis Engine includes the pre-trained AI model. This model allows the diagnosis engine from the previous section to calculate the disease prediction rankings. It also handles the image pre-processing of incoming requests. The following components are involved in this process. Anaconda Distribution This tool is a python package manager and provides the ability to easily manage, test and deploy development environments. Pycharm This IDE made by the software company JetBrains, is used for Python...

AI Implementation

Image
To start with the AI implementation of this project, I researched some similar exisiting projects until I found an open-source project on GitHub  from Marko Arsenovic, that was comparing different results achieved by AI models using a plant disease dataset. This was an ideal starting point for my own project. A chart was also provided to clarify the results achieved by his project. I noticied that AlexNet achieved good results while not taking a lot of time to train as you can see in the chart below provided by Marko Arsenovic. This project used an open-source dataset provided by the R&D unit of Penn State University called PlantVillage, to train the neural networks in plant disease identification. This dataset includes 38 classifications each represented by more than 1000 pictures and spread over 14 plant types. In order to verify that our AI model is performing correctly it is important to keep some data for validation. Thus, 80% of plant disease images was used fo...

AI Diagnosis Engine

Image
Starting from this blog on I will switch to English as this makes my writing process much more efficiënt. In this blogpost I will describe one of the most import components of my project, the AI Diagnosis Engine. In the previous post, I wrote a short paragraph about the high level functionality this major component offers and what factor it depends on. Today I will talk about all the sub-components and relations/interactions between them.  Plant Deficiëntie Dataset The first sub-component of AIDE that I will cover is also the most critical part. The PDD (Plant deficiency dataset) is a dataset with labelled images representing different disease-plant combinations. The quality of the PDD is heavily reliant on the quality and quantity of labelled pictures it contains. This dataset is eventually used to train the AI model that will be used in the following sub-component to process analysis requests from the end-user. Actor Model This sub-component represents the e...

Tussen termijn - deel 2

Image
In het vorige deel heb ik de actoren overlopen van de oplossingsarchitectuur van mijn project en kort getoetst op het systeem. In dit deel ga ik alle onderdelen van het systeem kort overlopen en ga ik in een andere blogpost een aantal onderdelen verder uitdiepen. Ik voeg uit gemak ook het schema toe dat ik in de vorige blogpost heb getoond zodat de overzicht behouden wordt.  Figuur 1: De Oplossingsarchitectuur Knowledge Base De eerste functionele component van het systeem dat ik overloop is de "Knowledge Base". Dit component is in principe een woordenboek dat alle plant ziektes bevat dat het systeem ondersteunt, en hun remediërings advies. Dit woordenboek wordt gebruikt om het systeem te voorzien van relevante data, zodat het systeem deze data op zijn beurt kan presenteren aan de eind gebruiker in het geval dat de gebruiker die specifieke informatie nodig heeft. Ook word dit woordenboek samengesteld door betrouwbare kennis bronnen, (zie blogpost deel 1) Dit functione...

Tussen termijn - deel 1

Image
We zijn weer al een eindje verder in de ontwikkeling van mijn thesis. Om nog een overzicht te krijgen van de werking van het huidige systeem en wat er in de laatste maanden is behaald, wil ik dit in deze blogpost even overlopen. Om het probleem op te lossen dat ik in eerdere blogposts heb aangekaart en het doel van mijn thesis is, ben ik begonnen met het visualiseren van een architectuur die de functionaliteit kan voorzien, de "solution architecture". Dit visueel model dient als gids in de ontwikkeling en research proces voor mijn thesis. Deze werd meerdere keren aangepast wanneer er een fout was ontdekt in het model of een meer efficiënte oplossing werd gevonden. Figuur 1:  Solution Architecture Zoals je in de afbeelding hierboven kan zien, bestaat de solution architecture uit 2 hoofd onderdelen. Namelijk, de "actors" en het "systeem". Hierdonder zal deze 2 onderdelen verder toelichten. Actors De actors zijn externe entiteiten die c...