Python3 openCV-4 Tensorflow-2 Python-Programme mit Shell starten fehlerhaft

  • Hallo,

    suche Jemanden der vielleicht etwas Erfahrung mit openCV 4

    und Tensorflow 2 gesammelt hat.

    Die Python-Programme von openCV und auch von Tensorflow

    kann ich nur direkt starten.

    In Verbindung mit einer Shell erhalte ich Fehler.

    Einfache Python-Programme zeigen dieses Fehler NICHT!


    Raspberry Pi4B 4Giga mit Raspbian Buster

    pi@raspberrypi:~ $ uname -a

    Linux raspberrypi 4.19.114-v7l+ #1303 SMP Tue Apr 7 15:49:34 BST 2020 armv7l GNU/Linux

    pi@raspberrypi:~ $ python3 tensorflow_versionA.py

    TensorFlow version: 2.1.0

    pi@raspberrypi:~ $ ./start_version.sh

    2.1.0

    pi@raspberrypi:~ $

    pi@raspberrypi:~ $ ./opencv_example

    Welcome to OpenCV 4.2.0

    pi@raspberrypi:~ $

    pi@raspberrypi:~ $ python3 -V

    Python 3.7.3

    pi@raspberrypi:~ $


    --SHELL

    Ostart_object.sh

    #!/bin/bash

    python3 /home/pi/tensorflow1/models/research/object_detection/Object_detection_picamera.py

    exit 0

    Hier ist alles OK:

    pi@raspberrypi:~/tensorflow1/models/research/object_detection $ ./Ostart_object.sh

    pi@raspberrypi:~/tensorflow1/models/research/object_detection $

    Hier habe ich einen Fehler:

    pi@raspberrypi:~ $ ./Ostart_object.sh

    Traceback (most recent call last):

    File "/home/pi/tensorflow1/models/research/object_detection/Object_detection_picamera.py", line 51, in <module>

    from utils import label_map_util

    File "/home/pi/tensorflow1/models/research/object_detection/utils/label_map_util.py", line 27, in <module>

    from object_detection.protos import string_int_label_map_pb2

    ModuleNotFoundError: No


    Kennt Jemand das Problem?

    Gruß

    RE

  • Python3 openCV-4 Tensorflow-2 Python-Programme mit Shell starten fehlerhaft? Schau mal ob du hier fündig wirst!

  • Das hat wohl was mit Portobuf zu tun. Für eine tiefere Analyse ist jetzt zu spät, aber wenn es aus dem Arbeitsverzeichnis geht, dann Wechsel da doch mit dem Skript vorher rein, bevor du das dann startest.

  • Ein Skript ist nicht fundamental anders als eine Eingabe in einem Terminal. Das bekommt man hin. Im Terminal hast du ein anderes Arbeitsverzeichnis. Das ist das offensichtlichste, was anders ist. Andere Dinge danach wuerden ggf. die Umgebung betreffen. Aber das war es auch schon. Hast du verstanden, was ich gesagt habe, und hast du meinen Vorschlag ausprobiert?

  • Hallo deets,

    Ich verstehe deine Antwort nicht?

    Mit einfachen Python Programmen funktioniert der Aufruf

    mit absoluten und auch mit relativen Pfad.

    Nur bei den openCV und tensorflow .py Programmen geht der Aufruf nur

    direkt aus dem Verzeichnis ohne Fehler.

    Ich habe das Phython3.7 Programm im usr/bin/python3.7 vorübergehend deaktiviert und direkt in das Verzeichnis kopiert.

    Gleiches Ergebnis:

    direkt geht und sonst Fehler.

    Gruß

    RE

  • Du sollst nicht Python kopieren. Du sollst vor dem Aufruf in das Verzeichnis wechseln, und dann aufrufen.

    cd /home/pi/tensorflow1/models/research/object_detection/

    python3 Object_detection_picamera.py

    exit 0

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!