NDVI and NRG
ndvi

NDVI stands for "Normalized Difference Vegetation Index". NRG stands for "Near-infrared / Red / Green". NDVI and NRG are both ways to visualize the amounts of infrared and other wavelengths of light reflected from vegetation. Because both these methods compare ratios of blue and red light absorbed versus green and IR light reflected, they can be used to evaluate the health of vegetation. It's a snapshot of how much photosynthesis is happening. This is helpful in assessing vegetative health or stress. (Read more here: https://www.agronomy.org/publications/jeq/articles/36/3/832) ## Do-It-Yourself These techniques for vegetation analysis were developed for satellite imagery, but at Public Lab, we've been working a lot on capturing infrared imagery using our DIY [near-infrared camera](/wiki/near-infrared-camera) setup, and combining it with visible bands to produce NDVI images such as the one above. ## What these images mean What exactly are these images we're trying to make? What do they tell us about vegetation, and why? These diagrams should help to understand what it is we're doing and why these are good ways to analyze plant life. ## The NDVI equation [![NDVI_is_eq.jpg](/i/44723)](/i/44723) **NDVI = (Near Infrared - Red)/(Near Infrared + Red)** NDVI is a ratio which tries to emphasize photosynthesis while filtering out sun glare. The above equation is run for every pixel, using source data from an infrared photo and a visible light photo, like this pair: [![5390895115_c9d4d38fec_o.jpg](https://publiclab.org/system/images/photos/000/021/771/large/5390895115_c9d4d38fec_o.jpg)](https://publiclab.org/system/images/photos/000/021/771/original/5390895115_c9d4d38fec_o.jpg) The result can be false-colored to make the high-photosynthesis areas more clear, and used to examine where plants are and how healthy they are. [![PetVISNDVIcomp.png](https://publiclab.org/system/images/photos/000/021/770/large/PetVISNDVIcomp.png)](https://publiclab.org/system/images/photos/000/021/770/original/PetVISNDVIcomp.png) _Figure above: Normal color photo (right) and normalized difference vegetation index (NDVI) image (left). NDVI image was derived from two color channels in a single photo taken with a camera modified with a special infrared filter. Note that tree trunks, brown grass, and rocks have very low NDVI values because they are not photosynthetic. Healthy plants typically have NDVI values between 0.1 and 0.9. -- @cfastie_ ### Activities Here are a range of activities you can do to produce and interpret your own NDVI imagery, whether downloaded from a satellite imagery provider or [collected yourself using a DIY technique](/wiki/multispectral-imaging) [activities:ndvi] **** ![IMG_0511-split.png](https://i.publiclab.org/system/images/photos/000/000/279/medium/IMG_0511-split.png) ![infrared-combination.png](https://i.publiclab.org/system/images/photos/000/000/278/medium/infrared-combination.png) Most DIY converted cameras today (those from Public Lab) use RGN instead of NRG, so the blue channel represents infrared instead of the red channel. That looks like this: [![rgn-split.png](/i/45468)](/i/45468?s=o) **** ## NRG imagery Some people are also interested in producing NRG imagery (like the below image), where `Near-Infrared, Red, and Green` are used to compose a picture instead of the usual `Red, Green, and Blue`. [![5415783775_502f79ac8c_o.png](/i/25064)](/i/25064) This diagram explains the swapping, which allows us to 'see' infrared as if it were a normal color: [![5396083368_40528d3da2_o.png](/i/25063)](/i/25063) **In NRG images, the deeper and clearer the red color, the denser and healthier the vegetation (more or less).** ### Questions [questions:ndvi] ### Other examples of DIY NDVI imaging From around the internet: Begin watching at 2 minutes to see the resulting imagery: *This topic is part of the [Grassroots Mapping Curriculum](/wiki/mapping-curriculum) series.* **** [![5416397210_5e3be40cf5_o.png](/i/25066)](/i/25066) [![5412520298_93873f36d0_o.png](/i/25065)](/i/25065) ...


Author Comment Last activity Moderation
parker_rose "Hello @silentsairam , My name is Rose. I've been testing the image deletion on the website. Thank you for making us aware of the issue. I'm follo..." | Read more » about 5 years ago
kauemv2 " Many Thanks for your answer, cfastie!! So, can I ask for the question for awb_gains in another thread? " | Read more » about 5 years ago
MaggPi " To @cagiva, I applied the same NDVI technique to Nottingham UK planet.com satellite imagery; you can see the results on Mapknitter: https://ma..." | Read more » about 5 years ago
cfastie " The NDVI result will be the same whether you use one or more layers of filter. Using two layers reduces the amount of light reaching the sensor tw..." | Read more » about 5 years ago
havipiplaw " Hi Sairam! We're working on a fix for the deletion bug! https://havip.com.vn/ " | Read more » about 5 years ago
warren "Hi Sairam! We're working on a fix for the deletion bug! https://github.com/publiclab/mapknitter/issues/591 On Sat, May 11, 2019, 2:36 PM \<noti..." | Read more » about 5 years ago
silentsairam "Yes @warren . This is quite interesting and the satellite methodology approach would be more precise in mapping. I would be happy to explore more o..." | Read more » about 5 years ago
cagiva "Using the ultra blue Band 1 from LandSat 8, I created a video showing how to apply the NDVI to Landsat-8 images using QGIS. The tiles are from the..." | Read more » about 5 years ago
warren "@eustatic or @a1ahna ? " | Read more » about 5 years ago
warren " @silentsairam would you have any interest in this? " | Read more » about 5 years ago
petter_mansson1 "For calibrating the Raspberry PInoIR camera I wrote a gui application to just play around with till I found a good result. I looked for values that..." | Read more » about 5 years ago
MaggPi " These are really good questions. 1) Calibration - Calibration typically involves placing known reference samples in the scene, check out https://..." | Read more » about 5 years ago
petter_mansson1 "I use a combination of PILLOW, numpy and Matplotlib. You can also find all my camera settings in https://github.com/PiddePannkauga/ndviMachine. It ..." | Read more » about 5 years ago
jmdavison12 " Thanks Petter, I'm using a headless Raspberry Pi so I don't have the option of writing a GUI application (without networking the stream and severe..." | Read more » about 5 years ago
petter_mansson1 "Here is my repo for the GUI application. Run the script on your raspberry pi. Think you need to install a Tkinter library. At first I only created ..." | Read more » about 5 years ago
petter_mansson1 " I wrote a simple GUI application using TK for Python with 2 sliders to control AWB gains. That was my approach to finding a good balance. I don't ..." | Read more » about 5 years ago
jmdavison12 " " | Read more » about 5 years ago
jmdavison12 " Hi Peter, What red/blue gains did you use for these photos (I assume you are using picamera)? I know that lighting conditions vary and white bala..." | Read more » about 5 years ago
jmdavison12 "Dang, nice! Didn't realize this was possible with the blue filter that ships with the piNoIR. I can't believe how clear these results are. I'm als..." | Read more » about 5 years ago
petter_mansson1 " Hi Jacob, Cool! It would be interesting to compare ideas. I'm taking a single image, using the blue filter that came with the NoIR camera module..." | Read more » about 5 years ago
jmdavison12 " Wow, great work Peter! Have you not included the non-filtered image used to generate the single channel NDVI? or are you doing 'single image' NDVI..." | Read more » about 5 years ago
ankurp836 " Thanks for buddy Post " | Read more » about 5 years ago
warren "that'd be awesome. The image workflow we've built is javascript based, but it's also possible to use Pi Builder to produce reproducible python tool..." | Read more » about 5 years ago
petter_mansson1 " I was not aware of this. Very cool, I had an idea doing something of the same sort but it's better if we work together! I'd love to share what I'v..." | Read more » about 5 years ago