Read Image¶
Reads image into numpy ndarray and splits the path and image filename (*see note about when mode='envi'
). Most modes of use of this function is a wrapper for the OpenCV function imread.
plantcv.readimage(filename, mode="native")
returns img, path, image filename
-
Parameters:
- filename - image file to be read (possibly including a path)
- mode - return mode of image ("native," "rgb,", "rgba", "csv", "envi", or "gray"), defaults to "native"
-
Context:
- Reads in file to be processed
- Notes:
- In most cases, the alpha channel in RGBA image data is unused (and causes issue when used as RGB image data),
so unless specificed as
mode='rgba'
thepcv.readimage()
function will read RGBA data in as an RGB image under default settings (mode='native'
). However, if the alpha channel is needed users can specifymode='rgba'
. - Comma separated data can be read in with
mode='csv'
so that, for example, thermal data can be used in downstream analysis, such as pcv.analyze_thermal_values - ENVI hyperspectral data can be read in with
mode="envi"
where the filename parameter is the raw data file. This mode of reading in data expects afilename
.hdr file which gets used for shaping the hyperspectral datacube and labeling bands of data to the corresponding wavelength. An instance of theSpectral_data
class is created while reading in the data and this instance is returned to the user rather than the usualimg, path, filename
that is returned under other modes ofpcv.readimage
.
- In most cases, the alpha channel in RGBA image data is unused (and causes issue when used as RGB image data),
so unless specificed as
- Example use:
Note
ENVI mode currently supports Band Interleaved by Line (BIL), Band Interleaved by Pixel (BIP) Band Sequential (BSQ) raw data formats.
from plantcv import plantcv as pcv
# Set global debug behavior to None (default), "print" (to file),
# or "plot" (Jupyter Notebooks or X11)
pcv.params.debug = "print"
#read in image
img, path, img_filename = pcv.readimage(filename="home/user/images/test-image.png", mode="native")
Source Code: Here