five

Linear workflow for relating multispectral remote sensing imagery with on-farm plant measurements

收藏
NIAID Data Ecosystem2026-03-12 收录
下载链接:
https://doi.org/10.7910/DVN/CW20DZ
下载链接
链接失效反馈
官方服务:
资源简介:
Linear workflow for relating multispectral remote sensing imagery with on-farm plant measurements 1. Automated spectral index computation in ArcPy Spectral_Index_List.xlsx Spectral_Index_Computation_ArcPy.txt sUAS_Spectral_Index.jpg 2. Pearson Correlation Coefficient (PCC) plotting in R PCC_Plotting_R.txt PCC_ZStats_Median.jpg 3. Multiple linear regression (MLR) permutations in R & variance inflation factor (VIF) calculation MLR_Permutations_R.txt SPAD_Spectral_Index_Relation.jpg 4. LASSO (least absolute shrinkage and selection operator) regression in R LASSO_Regression_R.txt ---PART I----------------------------------------------------------------------------------------------------------- This dataverse entry was originally created to supplement a publication by Peter et al. (2020) that evaluated effective spatial resolutions for monitoring crop productivity from sUAS, commercial, and national government imaging platforms. The original entry included a workflow for automating spectral index computation in ArcPy and conducting multiple linear regressions (R) in R. Associated manuscript: Peter, B. G., Messina, J. P., Carroll, J. W., Zhi, J., Chimonyo, V., Lin, S., and Snapp, S. S. 2020. Multi-spatial resolution satellite and sUAS imagery for precision agriculture on smallholder farms in Malawi. Photogrammetric Engineering & Remote Sensing (PE&RS) 86(2):107–119. doi: 10.14358/PERS.86.2.107 ---PART II---------------------------------------------------------------------------------------------------------- In follow-up research, the focus shifted toward evaluating a comprehensive collection of multispectral indices for monitoring agricultural productivity (Peter et al. in review). The automated spectral index computation in ArcPy and the MLR regression code were updated enhance their utility. A variance inflation factor (VIF) calculation was added to the MLR code to further evaluate collinearity among predictor variables. Pearson Correlation Coefficient (PCC) plotting was also improved and code for LASSO (least absolute shrinkage and selection operator) regression in R was added. Three figures and a table were also added to this entry to supplement the Peter et al. (in review) manuscript: PCC_ZStats_Median.jpg, SPAD_Spectral_Index_Relation.jpg sUAS_Spectral_Index.jpg, and Spectral_Index_List.tab. These are expanded versions of the figures available in the manuscript, which had to be shortened to meet length requirements. The table lists equations, abbreviations, and references of the 20 spectral indices used in the Peter et al. (in review) manuscript. Associated manuscript: Peter, B. G., Messina, J. P., Carroll, J. W., and Chikowo, R. A case for green-based spectral indices: Plot-scale sUAS imagery relation to crop chlorophyll content at two maize farms in Malawi. [Unpublished, submitted to Remote Sensing Letters January 2021]. ---CODE------------------------------------------------------------------------------------------------------------ 1. Automated spectral index computation in ArcPy import arcpy, os from arcpy.sa import * arcpy.env.overwriteOutput = True folder = "C:\\imagery\\folder\\" name = "naming_prefix_" region = "name" R = Float(folder + "\\" + name + "R.tif") NIR = Float(folder + "\\" + name + "NIR.tif") G = Float(folder + "\\" + name + "G.tif") shape = "C:\\zone\\shapes\\zone_shapes.shp" output = arcpy.CreateFolder_management("C:\\imagery\\folder\\", "indices_"+region) intFolder = arcpy.CreateFolder_management("C:\\imagery\\folder\\", "integer_"+region) stats = arcpy.CreateFolder_management("C:\\imagery\\folder\\", "zstats_"+region) outFile = G/(NIR+R+G) outFile.save(str(output) + "\\" + name + "ngi_float.tif") outFile = R/(NIR+R+G) outFile.save(str(output) + "\\" + name + "nri_float.tif") outFile = NIR/R outFile.save(str(output) + "\\" + name + "rvi_float.tif") outFile = NIR/G outFile.save(str(output) + "\\" + name + "grvi_float.tif") sq = SquareRoot((NIR/R)+1) outFile = ((NIR/R)-1)/sq outFile.save(str(output) + "\\" + name + "msr_float.tif") outFile = NIR-R outFile.save(str(output) + "\\" + name + "dvi_float.tif") outFile = NIR-G outFile.save(str(output) + "\\" + name + "gdvi_float.tif") sq = SquareRoot(NIR+R) outFile = (NIR-R)/sq outFile.save(str(output) + "\\" + name + "rdvi_float.tif") outFile = (NIR-R)/(NIR+R) outFile.save(str(output) + "\\" + name + "ndvi_float.tif") outFile = (NIR-G)/(NIR+G) outFile.save(str(output) + "\\" + name + "gndvi_float.tif") outFile = 1.5*((NIR-R)/(NIR+R+0.5)) outFile.save(str(output) + "\\" + name + "savi_float.tif") outFile = 1.5*((NIR-G)/(NIR+G+0.5)) outFile.save(str(output) + "\\" + name + "gsavi_float.tif") outFile = (NIR-R)/(NIR+R+0.16) outFile.save(str(output) + "\\" + name + "osavi_float.tif") outFile = (NIR-G)/(NIR+G+0.16) outFile.save(str(output) + "\\" + name + "gosavi_float.tif") sq = SquareRoot(((2*NIR)+1)*((2*NIR)+1)-(8*(NIR-R))) outFile = (((2*NIR)+1)-sq)/2 outFile.save(str(output) + "\\" + name + "msavi2_float.tif")...
创建时间:
2021-01-25
二维码
社区交流群
二维码
科研交流群
商业服务