Skip to content

Upgrade OpenCV Version #556

@leeping-ng

Description

@leeping-ng

It looks like it's time to upgrade our OpenCV dependency from opencv-python==4.1.2.30, for the following reasons:

  • Allow PeekingDuck to run on M1 Mac
  • Address behavioural differences with newer opencv versions, such as cv2.resizeWindow() and input arg types for coordinates when using draw functions

We should upgrade to version 4.5 and newer, as there are some issues with the prior versions as documented below. As of now, the latest opencv-python==4.5.4.60 still works with Python 3.6, which is the lowest version of Python supported by PeekingDuck.

Version Comments
4.1.2.30 Recommended openCV version for PeekingDuck as of 15 Dec 2021. Doesn't work for M1 Mac.
From 4.2.0.32 to 4.4.0.46 Not recommended to use these versions due to a few reported issues mainly due to QT issues with MacOS, such as imshow() not showing, or segmentation fault, or QT error in MacOS
4.5.1.48 Works with M1 Mac and the issues from earlier versions have been fixed by dropping QT support for Mac. Different behaviour for cv2.resize() and cv2.resize_window() when compared to 4.1.2.30.
4.5.2.52 Coordinates need to be int instead of float for drawing
4.5.2.54 Bugfix for 4.5.2.52

Definition of done:

  • Update requirements.txt and setup.cfg with the new version
  • Update draw nodes to take in int coordinates.

Metadata

Metadata

Assignees

No one assigned

    Labels

    dependenciesPull requests that update a dependency file

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions