Accès Webcam sans Opencv

user_3022 Messages postés 12 Statut Membre -  
mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   -

Bonjour,

Je suis sur mac avec python 3.11 et Opencv n'étant compatible qu'avec les version de python 3.6 et moins je ne peux pas l'utiliser.

Qu'y-a-t-il comme autre façon d'accèder à la webcam ?


Macintosh / Firefox 78.0

1 réponse

  1. mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   7 944
     

    Bonjour,

    Avec OpenCV

    Si l'on va sur la page PyPI d'OpenCV on voit effectivement deux wheels (pour rappel, une wheel est un paquet PIP qui enveloppe un module python) pour MacOS. Si on les télécharge, on peut examiner leur dépendances avec pkg_info :

    pkginfo -f requires_dist opencv_python-4.7.0.72-cp37-abi3-macosx_10_16_x86_64.whl
    requires_dist: ['numpy (>=1.13.3) ; python_version < "3.7"', 'numpy (>=1.21.0) ; python_version <= "3.9" and platform_system == "Darwin" and platform_machine == "arm64"', 'numpy (>=1.21.2) ; python_version >= "3.10"', 'numpy (>=1.21.4) ; python_version >= "3.10" and platform_system == "Darwin"', 'numpy (>=1.22.0) ; python_version >= "3.11"', 'numpy (>=1.19.3) ; python_version >= "3.6" and platform_system == "Linux" and platform_machine == "aarch64"', 'numpy (>=1.17.0) ; python_version >= "3.7"', 'numpy (>=1.17.3) ; python_version >= "3.8"', 'numpy (>=1.19.3) ; python_version >= "3.9"']
    pkginfo -f requires_dist opencv_python-4.7.0.72-cp37-abi3-macosx_11_0_arm64.whl
    requires_dist: ['numpy (>=1.13.3) ; python_version < "3.7"', 'numpy (>=1.21.0) ; python_version <= "3.9" and platform_system == "Darwin" and platform_machine == "arm64"', 'numpy (>=1.21.2) ; python_version >= "3.10"', 'numpy (>=1.21.4) ; python_version >= "3.10" and platform_system == "Darwin"', 'numpy (>=1.22.0) ; python_version >= "3.11"', 'numpy (>=1.19.3) ; python_version >= "3.6" and platform_system == "Linux" and platform_machine == "aarch64"', 'numpy (>=1.17.0) ; python_version >= "3.7"', 'numpy (>=1.17.3) ; python_version >= "3.8"', 'numpy (>=1.19.3) ; python_version >= "3.9"']

    On voit que selon la nature de la plateforme (i.e. l'architecture de ton CPU), OpenCV n'est pas accessible pour les mêmes versions de python.

    Cela suggère que pour ton architecture de CPU, il n'y a pas de wheel qui ont été préparées pour des versions modernes de python. Il y a peu de chance que "charcuter" les dépendances impliquées dans une wheel soit couronné de succès.

    La seule solution que je vois, c'est que tu recompiles ta propre version en téléchargeant les sources depuis le git d'OpenCV. Tu peux démarrer avec ce lien, mais sache qu'il existe de nombreux tutoriels sur Internet.

    Sans OpenCV

    Cette discussion recense plusieurs autres modules permettant d'accéder à la webcam, notamment :

    auquel on pourrait aussi ajouter visiblement webcam-streamer (et sans doute qu'il en existe encore d'autres).

    Après, il faut voir si lesdits paquets sont disponibles ou non pour ta version de python (en particulier, si certains d'entre eu dépendent d'OpenCV... ils ne t'aideront pas)

    Bonne chance

    0