{ "cells": [ { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Welcome to the Interactive Documentation for PlantCV\n", "\n", "The [PlantCV project](http://plantcv.danforthcenter.org/) is an open-source imaging processing package for plant phenotyping. The Jupyter notebooks contained here are the interactive version of some of the [PlantCV documentation](http://plantcv.readthedocs.io/en/latest/). The Jupyter notebooks can be used directly in an executable environment provided by [Binder](https://mybinder.org/), or they can be cloned and run locally.\n", "\n", "Please note, intermediate images output while running the tutorials below will not look identical to images found in the [PlantCV documentation](http://plantcv.readthedocs.io/en/latest/). Various changes have been made to suit the image size, but please refer to the [troubleshooting](https://plantcv.readthedocs.io/en/latest/analysis_approach/#troubleshooting) section of the PlantCV documentation if you run into any issues. Also, feel free to upload your own images and adjust parameters and Workflows to fit them. \n", "\n", "## Table of Contents\n", "\n", "### Tutorials\n", "\n", "- [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", "- [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", "- [PSII Workflow](notebooks/psII_tutorial.ipynb)\n", "- [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", "- [Multi-Plant Workflow](notebooks/multi_plant_tutorial.ipynb)\n", "- [Machine Learning Workflow](notebooks/machine_learning.ipynb)\n", "- [Color Correction Workflow](notebooks/color_correct_tutorial.ipynb) \n", "- [Watershed Segmentation Workflow](notebooks/segmentation.ipynb) \n", "- [Region of Interest Tools](notebooks/roi_package.ipynb)\n", "- [Thresholding Tools](notebooks/threshold.ipynb)\n", "- [Input/Output Tools](notebooks/input_output.ipynb) \n", "- [Morphology Workflow](notebooks/morphology_tutorial.ipynb) \n", "- [Thermal Workflow](notebooks/thermal.ipynb) \n", "\n", "### Example Use of Functions \n", "- **plantcv.acute_vertex** \n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", "- **plantcv.analyze_bound_horizontal**\n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", "- **plantcv.analyze_bound_vertical**\n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", "- **plantcv.analyze_color**\n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", "- **plantcv.analyze_nir_intensity** \n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", "- **plantcv.analyze_objects**\n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", " - [PSII Workflow](notebooks/psII_tutorial.ipynb)\n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", "- **plantcv.analyze_thermal_values**\n", " - [Thermal Workflow](notebooks/thermal.ipynb) \n", "- **plantcv.apply_mask**\n", " - [Machine Learning Workflow](notebooks/machine_learning.ipynb)\n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", " - [PSII Workflow](notebooks/psII_tutorial.ipynb)\n", " - [Watershed Segmentation Workflow](notebooks/segmentation.ipynb) \n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", "- **plantcv.auto_crop**\n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", "- **plantcv.background_subtraction**\n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", "- **plantcv.canny_edge_detect**\n", " - [Region of Interest Tools](notebooks/roi_package.ipynb)\n", "- **plantcv.closing**\n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", "- **plantcv.cluster_contour**\n", " - [Multi-Plant Workflow](notebooks/multi_plant_tutorial.ipynb)\n", "- **plantcv.cluster_contour_splitimg**\n", " - [Multi-Plant Workflow](notebooks/multi_plant_tutorial.ipynb)\n", "- **plantcv.crop_position_mask**\n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", "- **plantcv.dilate**\n", " - [Multi-Plant Workflow](notebooks/multi_plant_tutorial.ipynb)\n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", "- **plantcv.distance_transform** \n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", "- **plantcv.erode**\n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", "- **plantcv.fill**\n", " - [Multi-Plant Workflow](notebooks/multi_plant_tutorial.ipynb)\n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", " - [PSII Workflow](notebooks/psII_tutorial.ipynb)\n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", "- **plantcv.fluor_fvfm**\n", " - [PSII Workflow](notebooks/psII_tutorial.ipynb)\n", "- **plantcv.gaussian_blur**\n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", "- **plantcv.get_nir**\n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", "- **plantcv.hist_equalization**\n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", "- **plantcv.image_add** \n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", "- **plantcv.image_subtract**\n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", "- **plantcv.invert** \n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", " - [PSII Workflow](notebooks/psII_tutorial.ipynb)\n", "- **plantcv.laplace_filter** \n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", "- **plantcv.logical_and**\n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", "- **plantcv.logical_or**\n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", "- **plantcv.logical_xor** \n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", "- **plantcv.median_blur**\n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", " - [PSII Workflow](notebooks/psII_tutorial.ipynb)\n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", "- **plantcv.morphology.find_branch_pts**\n", " - [Morphology Workflow](notebooks/morphology_tutorial.ipynb)\n", "- **plantcv.morphology.find_tips**\n", " - [Morphology Workflow](notebooks/morphology_tutorial.ipynb)\n", "- **plantcv.morphology.prune**\n", " - [Morphology Workflow](notebooks/morphology_tutorial.ipynb)\n", "- **plantcv.morphology.segment_angles**\n", " - [Morphology Workflow](notebooks/morphology_tutorial.ipynb)\n", "- **plantcv.morphology.segment_curvature**\n", " - [Morphology Workflow](notebooks/morphology_tutorial.ipynb)\n", "- **plantcv.morphology.segment_euclidean_length**\n", " - [Morphology Workflow](notebooks/morphology_tutorial.ipynb)\n", "- **plantcv.morphology.segment_id**\n", " - [Morphology Workflow](notebooks/morphology_tutorial.ipynb)\n", "- **plantcv.morphology.segment_insertion_angle**\n", " - [Morphology Workflow](notebooks/morphology_tutorial.ipynb)\n", "- **plantcv.morphology.segment_path_length**\n", " - [Morphology Workflow](notebooks/morphology_tutorial.ipynb)\n", "- **plantcv.morphology.segment_skeleton**\n", " - [Morphology Workflow](notebooks/morphology_tutorial.ipynb)\n", "- **plantcv.morphology.segment_sort**\n", " - [Morphology Workflow](notebooks/morphology_tutorial.ipynb)\n", "- **plantcv.morphology.segment_tangent_angle**\n", " - [Morphology Workflow](notebooks/morphology_tutorial.ipynb)\n", "- **plantcv.morphology.skeletonize** \n", " - [Morphology Workflow](notebooks/morphology_tutorial.ipynb)\n", "- **plantcv.naive_bayes_classifier**\n", " - [Machine Learning Workflow](notebooks/machine_learning.ipynb)\n", "- **plantcv.object_composition** \n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", " - [PSII Workflow](notebooks/psII_tutorial.ipynb)\n", " - [Watershed Segmentation Workflow](notebooks/segmentation.ipynb)\n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", "- **plantcv.opening**\n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", "- **plantcv.outputs.add_observation**\n", " - [Machine Learning Workflow](notebooks/machine_learning.ipynb)\n", "- **plantcv.output_mask**\n", " - [Machine Learning Workflow](notebooks/machine_learning.ipynb)\n", "- **plantcv.plot_hist**\n", " - [Input/Output Tools](notebooks/input_output.ipynb) \n", "- **plantcv.plot_image**\n", " - [Input/Output Tools](notebooks/input_output.ipynb) \n", " - [Machine Learning Workflow](notebooks/machine_learning.ipynb)\n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", " - [PSII Workflow](notebooks/psII_tutorial.ipynb)\n", " - [Watershed Segmentation Workflow](notebooks/segmentation.ipynb) \n", "- **plantcv.print_image**\n", " - [Input/Output Tools](notebooks/input_output.ipynb) \n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", "- **plantcv.readbayer**\n", " - [Input/Output Tools](notebooks/input_output.ipynb) \n", "- **plantcv.rectangle_mask** \n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", " - [Region of Interest Tools](notebooks/roi_package.ipynb)\n", "- **plantcv.report_size_marker_area** \n", " - [Multi-Plant Workflow](notebooks/multi_plant_tutorial.ipynb)\n", "- **plantcv.resize**\n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", "- **plantcv.rgb2gray**\n", " - [Thresholding Tools](notebooks/threshold.ipynb)\n", "- **plantcv.rgb2gray_hsv**\n", " - [PSII Workflow](notebooks/psII_tutorial.ipynb)\n", " - [Thresholding Tools](notebooks/threshold.ipynb)\n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", "- **plantcv.rgb2gray_lab**\n", " - [Multi-Plant Workflow](notebooks/multi_plant_tutorial.ipynb)\n", " - [Watershed Segmentation Workflow](notebooks/segmentation.ipynb) \n", " - [Thresholding Tools](notebooks/threshold.ipynb)\n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", "- **plantcv.roi.circle**\n", " - [Region of Interest Tools](notebooks/roi_package.ipynb)\n", "- **plantcv.roi.ellipse**\n", " - [Region of Interest Tools](notebooks/roi_package.ipynb)\n", "- **plantcv.roi.from_binary_image**\n", " - [Region of Interest Tools](notebooks/roi_package.ipynb)\n", "- **plantcv.roi.rectangle** \n", " - [Multi-Plant Workflow](notebooks/multi_plant_tutorial.ipynb)\n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", " - [PSII Workflow](notebooks/psII_tutorial.ipynb)\n", " - [Region of Interest Tools](notebooks/roi_package.ipynb)\n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", " - [Thermal Workflow](notebooks/thermal.ipynb)\n", "- **plantcv.roi_objects**\n", " - [Multi-Plant Workflow](notebooks/multi_plant_tutorial.ipynb)\n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", " - [PSII Workflow](notebooks/psII_tutorial.ipynb)\n", " - [Region of Interest Tools](notebooks/roi_package.ipynb)\n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", " - [Thermal Workflow](notebooks/thermal.ipynb)\n", "- **plantcv.rotate**\n", " - [Multi-Plant Workflow](notebooks/multi_plant_tutorial.ipynb)\n", "- **plantcv.scharr_filter**\n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", "- **plantcv.shift_img** \n", " - [Color Correction Workflow](notebooks/color_correct_tutorial.ipynb) \n", " - [Multi-Plant Workflow](notebooks/multi_plant_tutorial.ipynb)\n", "- **plantcv.sobel_filter**\n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", "- **plantcv.threshold.binary**\n", " - [Multi-Plant Workflow](notebooks/multi_plant_tutorial.ipynb)\n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", " - [PSII Workflow](notebooks/psII_tutorial.ipynb)\n", " - [Watershed Segmentation Workflow](notebooks/segmentation.ipynb) \n", " - [Thresholding Tools](notebooks/threshold.ipynb)\n", " - [VIS/NIR Workflow](notebooks/vis_nir_tutorial.ipynb)\n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", " - [Thermal Workflow](notebooks/thermal.ipynb)\n", "- **plantcv.threshold.gaussian** \n", " - [Thresholding Tools](notebooks/threshold.ipynb)\n", "- **plantcv.threshold.mean**\n", " - [Thresholding Tools](notebooks/threshold.ipynb)\n", "- **plantcv.threshold.otsu**\n", " - [Thresholding Tools](notebooks/threshold.ipynb)\n", "- **plantcv.threshold.texture**\n", " - [Thresholding Tools](notebooks/threshold.ipynb)\n", "- **plantcv.threshold.triangle**\n", " - [Thresholding Tools](notebooks/threshold.ipynb)\n", "- **plantcv.transform.correct_color**\n", " - [Color Correction Workflow](notebooks/color_correct_tutorial.ipynb) \n", "- **plantcv.transform.create_color_card_mask**\n", " - [Color Correction Workflow](notebooks/color_correct_tutorial.ipynb) \n", "- **plantcv.transform.find_color_card**\n", " - [Color Correction Workflow](notebooks/color_correct_tutorial.ipynb) \n", "- **plantcv.transform.quick_color_check**\n", " - [Color Correction Workflow](notebooks/color_correct_tutorial.ipynb) \n", "- **plantcv.transform.rescale**\n", " - [Thermal Workflow](notebooks/thermal.ipynb)\n", "- **plantcv.transform.save_matrix**\n", " - [Color Correction Workflow](notebooks/color_correct_tutorial.ipynb) \n", "- **plantcv.visualzie.clustered_contours**\n", " - [Multi-Plant Workflow](notebooks/multi_plant_tutorial.ipynb)\n", "- **plantcv.visualize.colorize_masks**\n", " - [Machine Learning Workflow](notebooks/machine_learning.ipynb)\n", "- **plantcv.visualize.pseudocolor**\n", " - [NIR Workflow](notebooks/nir_tutorial.ipynb)\n", " - [PSII Workflow](notebooks/psII_tutorial.ipynb)\n", " - [Thermal Workflow](notebooks/thermal.ipynb)\n", "- **plantcv.watershed_segmentation**\n", " - [Watershed Segmentation Workflow](notebooks/segmentation.ipynb) \n", "- **plantcv.white_balance**\n", " - [Multi-Plant Workflow](notebooks/multi_plant_tutorial.ipynb)\n", "- **plantcv.within_frame**\n", " - [Multi-Plant Workflow](notebooks/multi_plant_tutorial.ipynb)\n", "- **plantcv.x_axis_pseudolandmarks**\n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n", "- **plantcv.y_axis_pseudolandmarks**\n", " - [VIS Workflow](notebooks/vis_tutorial.ipynb)\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.13" } }, "nbformat": 4, "nbformat_minor": 0 }