Some Frequently Asked Questions are collected here, grouped by category.


Related pages: guides to installing PlantCV, contributing, and updating documentation.

  • Q: Which version of PlantCV should I use?
    • A: We suggest using the latest code from GitHub ('master' branch), as described in the installation instructions. If you are trying to reproduce the results from a specific manuscript, you may prefer to use one of the stable releases. These releases are assigned Digital Object Identifiers (DOI) and archived at
  • Q: How should I cite PlantCV?
    • A: See the main 'About' page. At minimum, you ought to cite the original published description of PlantCV. You should ideally reference the specific version used (by number and DOI) and publications related to specific features added since the initial release.
  • Q: What version(s) of Python and OpenCV does PlantCV work with?
    • A: PlantCV currently works with both Python 2.7 and 3+ and OpenCV 2 and 3. Python 2.7 can be used with either OpenCV 2 or 3 but Python 3 can only be used with OpenCV 3. Our recommended configuration is Python 3 and OpenCV 3. In the future, Python 2 and OpenCV 2 support will end but removing support is not currently on our roadmap.
  • Q: When will the next stable version of PlantCV be released?
    • A: Please see the Milestones page for target date estimates and the status of selected planned releases.

Image acquisition

  • Q: How should I grow plants and acquire images for quantitative processing?
  • Q: Can I use PlantCV to process photos taken with a Raspberry Pi camera?
  • Q: Can PlantCV use information about the temporal relation of images for object tracking etc.?
    • A: Not at present. OpenCV includes tools for analyzing video data, so this could be added in the future.
  • Q: My plants are touching, and getting merged into a single object. What can I do?
    • A: Not much, for now. PlantCV is geared toward images of well-spaced plants. Facilities for drawing custom boundaries exist in other tools, and could in principle be added.


We try to continually improve our documentation. We have not (necessarily) written answers for the following questions. Users are encouraged to ask questions by filing an issue and also to submit candidate questions and answers via pull request.

  • Q: How is PlantCV structured?
    • A: As of v3.0 we are following semantic version numbering.
  • Q: How is PlantCV tested?
    • A: Unit tests are in the 'tests' directory in the root of the source tree. We use the Travis Continuous Integration tool to monitor status and test pull requests for breaking changes.
  • Q: Does PlantCV follow Semantic Version Numbering for stable releases?
    • A: Not entirely. Major releases are mostly based on new features. We try to avoid changes that break compatibility between minor version releases.
  • Q: Is there a naming convention for PlantCV functions?
    • A: No, not at present. Please see the guide to contributing for some general advice on code style, PEP8 docstrings etc.