Frage:
Fehler beim Erstellen der MMAL-Komponente b'vc.ril.camera ': Nicht genügend Speicher
Justin
2018-05-06 09:03:52 UTC
view on stackexchange narkive permalink

Ich versuche, ein einfaches Skript auszuführen, das auf einen Knopfklick wartet und dann ein Bild macht. Sobald zwei Bilder aufgenommen wurden, werden die beiden mit OpenCV verglichen, um die Differenz zu berechnen. Beim Ausführen meines Skripts, gefolgt vom Skript selbst, tritt dieser Fehler auf:

  mmal: mmal_vc_component_create: Komponente 'vc.ril.camera' (1: ENOMEM) konnte nicht erstellt werden mmal: mmal_component_create_core: Komponente 'vc.ril.camera' konnte nicht erstellt werden (1) Traceback (letzter Aufruf zuletzt): Datei "/home/pi/.virtualenvs/cv/lib/python3.4/site-packages/picamera/camera.py" , Zeile 456, in _init_camera self._camera = mo.MMALCamera () Datei "/home/pi/.virtualenvs/cv/lib/python3.4/site-packages/picamera/mmalobj.py", Zeile 2279, in __init__ super (MMALCamera, self) .__ init __ () Datei "/home/pi/.virtualenvs/cv/lib/python3.4/site-packages/picamera/mmalobj.py", Zeile 633, in __init__ prefix = "MMAL konnte nicht erstellt werden Komponente% s "% self.component_type) -Datei" /home/pi/.virtualenvs/cv/lib/python3.4/site-packages/picamera/exc.py ", Zeile 184, in mmal_check erhöhen PiCameraMMALError (Status, Präfix) picamera.exc.PiCameraMMALError: MMAL-Komponente konnte nicht erstellt werden b'vc.ril.camera ': Nicht genügend Speicher während Bei der Behandlung der obigen Ausnahme ist eine weitere Ausnahme aufgetreten: Traceback (letzter Aufruf zuletzt): Datei "camera-daemon.py", Zeile 12, in der Datei <module> camera = PiCamera () "/home/pi/.virtualenvs/cv/lib /python3.4/site-packages/picamera/camera.py ", Zeile 431, in __init__ self._init_camera (camera_num, stereo_mode, stereo_decimate) Datei" /home/pi/.virtualenvs/cv/lib/python3.4/site -packages / picamera / camera.py ", Zeile 460, in _init_camera" Kamera ist nicht aktiviert. Versuchen Sie, 'sudo raspi-config' "picamera.exc.PiCameraError: Kamera ist nicht aktiviert. Versuchen Sie, 'sudo raspi-config' auszuführen, und stellen Sie sicher, dass die Kamera aktiviert wurde Signalimportpause vom Zeitimportschlaf
aus Datenbankimport einfügen von skimage.measure import strukturelle Ähnlichkeit als ssimimport cv2button = Button (17) camera = PiCamera () camera.resolution = (400.400) def capture (): image1 = capture_stream (False) sleep (3) image2 = capture_stream (False) diff = compute_diff (image1, image2) print (diff) def prepare_camera (Vorschau): globale Kamera # Wenn die Vorschau übergeben wird, möchten wir die Vorschau verwenden, wenn Vorschau: camera.start_preview () # Diese Druckanweisungen helfen beim Debuggen sowie # Lassen Sie der Kamera Zeit zum Aufwärmen. Drucken ("Bild aufnehmen") Drucken ("3") Ruhezustand (1) Drucken ("2") Ruhezustand (1) Drucken ("1") Ruhezustand (1) # Stoppen Sie die Kamera Vorschau bei Vorschau: camera.stop_preview () def capture_stream (Vorschau): globaler Kamerastream = BytesIO () prepare_camera (Vorschau) # Speichern Sie das Bild im Stream und geben Sie es zurück. camera.capture (stream, format = 'j peg ') # spult den Stream zurück, damit wir seinen Inhalt lesen können stream.seek (0) return Image.open (stream) # Berechne Bilddifferenzen basierend auf struktureller Ähnlichkeitdef compute_diff (A, B): imageA = cv2.imread (A) imageB = cv2.imread (B) imageA = cv2.cvtColor (imageA, cv2.COLOR_BGR2GRAY) imageB = cv2.cvtColor (imageB, cv2.COLOR_BGR2GRAY) return ssim (imageA, imageB) button.when_pressed = captureprint ("running ..." ) pause ()  

Ich habe bereits die FAQ gelesen und ihre Vorschläge ausprobiert. Ich habe auch die meisten Lösungen für alle anderen Fragen zum Stapelaustausch mit denselben oder ähnlichen Problemen ausprobiert. Keiner hat gearbeitet. Zuletzt habe ich versucht, die Speicheraufteilung langsam zu erhöhen, und es wird immer noch dieser Fehler ausgegeben.

BEARBEITEN: Ich denke, es ist wichtig zu beachten, dass die Kamera einwandfrei funktioniert, wenn ich ein separates Skript mit nur kamerabezogenem Code ausführe, sodass es kein Problem mit der Verbindung der Kamera gibt. del> Überprüfen Sie die Kamera Verbindung Obwohl meine Testskripte zuerst funktionierten, wurde meine Kamera irgendwann getrennt.

Ich verwende Python 3.4 , PiCamera 1.13 und OpenCV 3.4 .

Gerne stelle ich Ihnen weitere Informationen zur Verfügung. Jede Hilfe wird sehr geschätzt!

Fünf antworten:
Justin
2018-05-06 21:35:18 UTC
view on stackexchange narkive permalink

Dieser Fehler wurde behoben, als ich mein Kameramodul getrennt und wieder angeschlossen habe.

Irgendwie muss sich mein Kameramodul gelöst haben, als ich damit gearbeitet habe und der Pi die Kamera nicht erkennen konnte. Ich habe den folgenden Befehl ausgeführt:

vcgencmd get_camera und wurde unterstützt zurückgegeben = 1 erkannt = 0

Nachdem die Kamera wieder verbunden wurde, konnte ich ausführen p>

raspistill -o image.jpg zum Testen und es hat funktioniert.

Auch einige Informationen, die ich nicht kannte: Der Kragen oben auf der CSI (Kamera) ) Der Anschluss soll leicht angehoben werden und dann das Kameraband eingeführt und der Kragen vorsichtig wieder verriegelt werden. Sie sollten Ihr Farbband nicht in den Anschluss stecken müssen.

alex
2018-05-06 11:55:36 UTC
view on stackexchange narkive permalink

Das erste, was mir in den Sinn kommt, ist, dass die Kamera gleichzeitig von einem anderen Skript oder Programm verwendet wird. Bitte überprüfen Sie, ob die Kamera nicht verwendet wird. Stellen Sie außerdem sicher, dass Sie jeweils nur eine Instanz des Skripts ausführen. Die allgemeine Idee ist, dass auf die Kamera nicht von mehreren Orten gleichzeitig zugegriffen werden kann.

Hoffe, es hilft!

Kennen Sie eine Möglichkeit, dies zu erkennen? Ich habe versucht, "ts -a" auszuführen, und es werden keine anderen Prozesse ausgeführt.
234Mike432
2020-02-15 03:10:45 UTC
view on stackexchange narkive permalink

Ich habe ein Python-Programm ausgeführt, das die Kamera verwendet und das von mir erstellte Programm geschlossen, Python jedoch offen gelassen hat. Beim Testen eines C ++ - Programms mit der Kamera wurde dieser Fehler angezeigt, obwohl das von mir erstellte Python-Programm geschlossen war.

Nachdem ich Python selbst geschlossen hatte, konnte meine Kamera in C ++

arbeiten
D.Deriso
2020-06-05 00:24:31 UTC
view on stackexchange narkive permalink

An Ihrem Kameramodul befinden sich zwei Anschlüsse. Eine ist für das Flachbandkabel und die andere für einen Schnappverbinder. Drehen Sie die Kamera um und sehen Sie oben nach, ob Ihre Kamera über einen Schnappverschluss verfügt. In meinem AIY Vision Kit befindet sich ein Schnappverbinder. Drücken Sie auf diesen Anschluss und stellen Sie sicher, dass er eingerastet ist.

user5745411
2020-04-25 17:22:49 UTC
view on stackexchange narkive permalink

1- Kamera in Himbeer-Pi aktivieren: Öffnen Sie die Himbeer-Pi-Konfiguration, indem Sie dies im Befehlsterminal eingeben: "sudo raspi-config"
2- Schnittstellenoptionen auswählen
Kamera aktivieren und drücken Sie die Eingabetaste. Gehen Sie dann zu Beenden Sie den Vorgang, und Sie werden zum Neustart aufgefordert.
3- Testen Sie nach dem Neustart von raspberry pi Ihre Kamera, indem Sie das Terminal eingeben: vcgencmd get_camera Sie wurden zurückgegeben: unterstützt = 1 erkannt = 14- Testen Sie Ihre Kamera einige Sekunden lang durch Eingabe dies im Terminal: "raspistill -o image.jpg"



Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 4.0-Lizenz, unter der er vertrieben wird.
Loading...