Public Lab Research note

Computer Vision/LED Plant Measurement System

by MaggPi | March 15, 2018 06:57 15 Mar 06:57 | #15957 | #15957

The project incorporates a digital camera, light emitting diodes (LEDs), and software image analysis tools to conduct non-contact plant growth analysis. The system measures growth parameters such as leaf size and leaf reflectance. Plant growth characteristics can then be used to regulate the spectral and temporal output of the LED grow lights. The goal of the system is to provide real time feedback to optimize plant development with minimum energy.

I believe this project directly relates to the climate change and food shortage challenges. Combining LED and computer vision technology creates the opportunity to develop plant light algorithms that can simultaneously improve plant yield and greenhouse energy efficiency.

Attached video,, shows computer vision measurements of a basil plant over a 30 day period. The goal was to understand computer vision performance for the LED plant measurement system. Images show the ability of computer vision to measure small features less than 1mm without contact. Computer vision software (SimpleCV) extracts basil plant 'blob' features from soil background and counts number of pixels in each plant 'blob'.

Video info: Unprocessed Image (right), computer vision processed image (left) marks counted pixels in green. Text below displays # of pixels in area/ length/width and perimeter for each image. Images are scaled/calibrated by ruler - 1 pixel measures .6mm x .6mm. blob measurement

Materials for the project are listed here: Materials Project schematic is available at: Schematic

It is also possible to conduct multi spectral observations by sequencing the camera with different LED colors. The objective is to see if reflectance at different wavelengths provide useful information about plant health. Attached figure shows different images ![Mulitspactral4 of the same basil plant illuminated by different LED wavelengths. Top left is a computer vision enhanced image. Top right is white light image. Images below are for ultraviolet (uv1),ultraviolet (uv2), blue(blu), green (grn), red and infrared (ir). Remaining images are processed images that highlight color contrast.

Looking for collaborators to adapt raspberry pi / computer vision tech to conduct real time spatial/spectral analysis. Please respond if you are interested in applying CV techniques to real time grating spectroscopy or multi-spectral imaging systems.

Thank You, MaggPI

I did this Help out by offering feedback! Browse other activities for "multispectral-imaging"

People who did this (0)

None yet. Be the first to post one!


Thanks for posting, @MaggPi, this project looks really exciting! We've linked to it on some of our social media, to give it some attention, but if there are specific questions you're hoping to work on with collaborators you might also consider breaking things up and posting to the questions page. I appreciate how well you've documented the instructions.. I've added an activity tag to help it show up with other projects that might be replicated by folks in the community. Very cool!

Reply to this comment...

Here's an intro the Pytourch, one of the more popular ML/AI frameworks which could be relevant for this project!

Reply to this comment...

Here is an interesting curveball - I just started using this implementation of rfcnn. It would be really interesting to see if can be used to solve (or help in solving) this problem! Have a look here:

Reply to this comment...

MaggPi very interesting project. Was there a link for status/instructions? I also noticed David Prutchi of Hacketeria had an interesting multi-band polarizing imager, probably we could reach out to him. I have been researching a portable microscopic imager and spectrophotometer. I also thought about how your project could benefit from several VOC/CO2 sensors or light sensors to inform research goals.

Thanks for sharing!

Is this a question? Click here to post it to the Questions page.

Reply to this comment...

This looks very interesting. I'm currently doing research within the same area

Maybe we could schedule some kind of meeting/event and discuss ideas. Would be nice if we could use the calendar on this site so that people with interest could join as well.

Reply to this comment...


It has taken me a while to get up to speed on your work. There are differences and similarities between our efforts. Please see comments below:

-My effort measured plant size vs NDVI values. The thinking at the time is that there wouldn’t be much variance in NDVI since the growing conditions were controlled and maintained a ‘healthy’ environment. I also wasn’t familiar with camera calibration features at the time (as you know the gain settings are important for NDVI comparisons).

-I used different selections of R,G,B, UV and NIR LEDS to control both the growing light and the camera exposure light. While the NIR light isn’t useful for growing, the high plant reflectance creates high contrast images which helps the computer vision measurements. In retrospect, using an NDVI image would have been a good approach to try. I assume you are using sunlight as your growing light?

-We both used python to control the Raspberry Pi camera but the work above used SimpleCV for image processing. I eventually moved to OpenCV and concentrated on real time image processing. It looks like your proficient in all this but have provided links below that describe my related work (Not all of the code uses OpenCV).
--General overview: ; --Video demos at: ; --Github readme file :

-General observations:

--I realized when I discussed my project that most didn’t understand both the bio part and the computer part. So it’s important to explain why the NDVI measurement technique was selected and how that relates to the nutrient solution.

--I don’t see much NDVI variation (they all look the same green color to me) in your pictures and the biggest difference seems to be size. The article referenced describes, "segmentation as the process of classifying an image into plant and non-plant pixels”, this may be different than using NDVI to measure the effect of nutrients on plant growth. Some options that may bring out subtle differences: scaling NDVI, from 0 to 1 (instead of -1 to 1), comparing NDVI images (image subtraction)or use an image color histogram to count the number of ‘green’ and other color pixels.
--I know how much work it takes to do set-ups like this, growth experiments are time intensive and it’s difficult to maintain a constant environment, etc. One criticism of my project was there wasn’t enough samples for a good statistical analysis. You may want to include a discussion of the sampling issues involved , the difficulties of scaling, future work, etc.

-FYI, My recent efforts have focused on satellite based NDVI images:

Is this a question? Click here to post it to the Questions page.

Reply to this comment...

Login to comment.