Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

enable more recent version of python with the OF #59

Closed
jpiesing opened this issue Sep 25, 2023 · 6 comments
Closed

enable more recent version of python with the OF #59

jpiesing opened this issue Sep 25, 2023 · 6 comments
Assignees
Labels
Deferred Deferred to future work Released Released and ready for check

Comments

@jpiesing
Copy link

The instructions for the OF state the following.

Note: If your system uses python version 3.10 or greater you will have to downgrade to one of the supported versions mentioned above. Some of the python packages required by the observation framework are not supported in python version 3.10 or greater.

In the medium term, this needs to be addressed. The OF should not require python packages that are not supported in the future.

Note that Ubuntu Jammy (22.04) includes python version 3.10 so requires a downgrade.

Forked from #58

@jpiesing jpiesing added the Deferred Deferred to future work label Sep 25, 2023
@yanj-github
Copy link
Collaborator

We have fixed OpenCV version because OpenCV library is linked directly to the observation result. Specified OpenCV version at the moment is not supported to more recent version of python. Therefore, OpenCV has to be upgraded and fix to more recently version. This has to be tested and carefully done to make sure new library and python versions fully supported.

@jpiesing
Copy link
Author

We have fixed OpenCV version because OpenCV library is linked directly to the observation result. Specified OpenCV version at the moment is not supported to more recent version of python. Therefore, OpenCV has to be upgraded and fix to more recently version. This has to be tested and carefully done to make sure new library and python versions fully supported.

Which is why I applied the "deferred" label at the same time as filing the issue :)

@yanj-github
Copy link
Collaborator

We have tested OpenCV v4.9.0.80 with Python v3.10.12 the new library and python versions are fully supported.

We also have compared observation results with OpenCV version OpenCV v4.9.0.80 (new) and OpenCV v4.5.2.52 (current), and noticed that the results are mostly same, except, the tests that contains low resolution contents such and switching set tests QR code.

e.g: cfhd_12.5_25_50-local-fullscreen-playback-of-switching-sets_ss1-2_debug and cfhd_12.5_25_50-local-overlapping-fragments_ss1_debug tests took from Plugfest 2024 on TV2.

  • For ss1-2 newer version is better pass duration check, newer OpenCV version detects QR codes better when it dim.
    PASS: Playback duration is 60004.06ms, expected track duration is 60000.0ms. Detected duration is different by 4.06ms. Allowed tolerance is 50ms and duration frame tolerance is 0. Starting missing frame number is 0. Ending missing frame number is 0.
    FAILL Playback duration 59908.42ms does not match expected duration 60000.0ms +/- tolerance of 50ms. Detected duration is different by 91.58ms. Allowed tolerance is 50ms and duration frame tolerance is 0. Starting missing frame number is 0. Ending missing frame number is 0.
  • But for overlapping the older version is better on number of frames detected, only one missing frame. It might be caused by better detection of bright QR code on the older version.
    PASS: Mid frame number tolerance is 10. Following frames are missing in playout 8: 2 10 Total of missing frames is 2.
    PASS: Mid frame number tolerance is 10. Following frames are missing in playout 8: 2 Total of missing frame count is 1.

The plugfest tests were taken in normal office environment not in controlled dark room. Recording taken carefully in controlled environment might not cause differences to the test results.

@yanj-github
Copy link
Collaborator

Package numpy is installed by matplotlib that we used to plot image for helping audio debugging.
numpy 2 is out now which was not compatible with opencv.
The compatibility issue is fixed on opencv version 4.10.0.84
We will consider to use opencv version 4.10.0.84 onwards.

@yanj-github
Copy link
Collaborator

Current latest version to date numpy 2.1.0 has a bug in reshaping function. We use this feature for audio processing using this specific version wont work with audio observation. We are looking to fix numpy package version on the set up script.

@yanj-github yanj-github added the In progress In progress label Sep 2, 2024
yanj-github pushed a commit to yanj-github/device-observation-framework that referenced this issue Sep 16, 2024
rcottingham added a commit that referenced this issue Sep 16, 2024
@yanj-github
Copy link
Collaborator

Changes made to the master please feel free to close the issue when you happy.

  • numpy 2.0.2
  • opencv-python 4.10.0.84
  • pyzbar 0.1.9

@yanj-github yanj-github added Released Released and ready for check and removed In progress In progress labels Sep 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Deferred Deferred to future work Released Released and ready for check
Projects
None yet
Development

No branches or pull requests

2 participants