Plant Recognition Advisor

Project Proposal by Martin Stacey


Plant Recognition Advisor

Software

An object oriented programming language such as Smalltalk or Java, or possibly Prolog or Lisp or an expert systems shell

Covers

Artificial intelligence, system design and programming

Skills Required

Systems analysis and design, programming, preferably some interest in artificial intelligence, ideally some interest in botany or gardening

Challenge

Conceptual ??? Technical ?? Programming ???

Brief Description

Sometimes gardeners and others encounter plants that they want to identify, for instance mushrooms and toadstools that might be edible, or particular varieties of flowers or fruit trees. Your mission is to develop a knowledge system that can support the recognition of the varieties of some kind of plant, or different plants within a category or easily confusable group. The system should be able to guide the user though making the necessary observations and measurements, and through making any necessary perceptual judgements, as well as performing the required AI reasoning about which variety the plant is.

Variants

I may be able to obtain detailed information about varieties of plums, that is used (by hand) to identify plum varieties. Descriptions of large numbers of mushrooms and toadstools are published in books.

Whether you need a database or not depends on your system architecture. But a large part of developing a knowledge based system for serious practical use is maintaining it. You might like to consider how to develop a system so that the knoweldge it holds can be easily modified and extended. If you want to display files or pictures or bits of text, you might want to use a database. You don't necessarily need a standard relational database, though relational database design should of course be done properly. This would be a good opportunity to explore the power of object oriented databases; a non-dbms approach to object persistence is another way to go.

A number of the world's useful commercial expert systems are programs for identifying plant diseases. And there's a lot of research literature on artifial intelligence approaches to diagnosis.

This system might be most useful deployed as a smartphone app...

Cross-Reference

I have proposed separately a project to develop a computer tutor for teaching people to recognise different trees (or other things that can be distinguished perceptually by people who've had some practice). This project is different in two ways. (1) It should go beyond one or two perceptual judgements, and include reasoning about the combined implications of different pieces of evidence. (2) It should be usable by people with no previous experience (for instance, homeowners who have one plum tree).


Back to