Edge Detection mit der Picamera

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo liebe Forummitglieder,

    nach langem Überlegen habe ich mich doch hier im Forum angemeldet, weil ich das Problem einfach nicht gelöst bekommen.

    Ich habe vor mit meinem Raspi und er Picamera Bilder zu machen und dazu jeweils eine Egde-Detection durchzuführen. Ich habe auch schon allerhand Aneleitungen im Internet gefunden, nur gibt es zwischendrin immer wieder irgendein Problem.

    Nach der Anleitung hier:

    https://www.cl.cam.ac.uk/projects/raspb…sing/first.html

    stoße ich bei dem Befehl:

    "sudo python basics.py"

    auf folgende Fehlermeldung:

    "Cannot identify '/dev/video0': 2no such file or directory"

    Hat einer von euch ein Ahnung wie man das Problem lösen kann?

    Ich habe auch schon versucht als Alternative Scilab zu verwenden, leider ohne Erfolg :(
    Auch der Befehl "raspistill -0 image.jpg" lässt kein Bild enstehen, obwohl mechanisch alles in Ordnung ist.
    Vor einer Woche ging es noch in der Python-Befehlskonsole mit:

    "import picamera
    camera=camera.PiCamera()
    camera.capture('...')"

    Habt vielen Dank, und ich würde mich freuen wenn ihr Ideen oder Lösungsvorschläge hättet.

    • Offizieller Beitrag

    Die Raspberry Pi Camera erzeugt kein /dev/video0 device. Deswegen die Fehlermeldung. Die musst die Methodik auf ein mit der PiCamera aufgenommenes Bild adaptieren.

    Zuerst würde ich aber mal schauen warum die Camera überhaupt kein Bild macht. Kommen Fehlermeldungen bei raspistill bzw. picamera.capture? aktiviert ist Sie (raspi-config). Irgendwelche Änderungen in letzter Zeit? Kabel steckt zu 100% richtig drin.

  • Danke zunaechst fuer die schnelle Antwort.
    Ich bin sehr neu in dem Gebiet. Wie meinst du das genauer mit dem Bild adaptieren?

    Kabel stecken richtig drin und beim "enablen" der Kamera tritt auch keine Fehlermeldung auf.

    Die Fehlermeldung bei: "raspistill -o image.jpeg"

    mmal: mmal_vc_component_create: failed to create component 'vc.ril.camera' (1:ENOMEM)
    mmal: mmal_component_create_core: could not create component 'vc.ril.camera' (1)
    mmal: Failed to create camera component
    mmal: main: Failed to create camera component
    mmal: Camera is not enabled in this build. Try running "sudo raspi-config" and ensure that "camera" has been enabled


    Schon vor dem picamera.capture kommt folgende Fehlermeldung aufgrund des Befehls:

    "camera=picamera.PiCamera()

    Traceback (most recent call last):
    File "<pyshell#1>", line 1, in <module>
    camera=picamera.PiCamera()
    File "/usr/lib/python3/dist-packages/picamera/camera.py", line 379, in __init__
    camera_num, self.STEREO_MODES[stereo_mode], stereo_decimate)
    File "/usr/lib/python3/dist-packages/picamera/camera.py", line 415, in _init_camera
    "Camera is not enabled. Try running 'sudo raspi-config' "
    picamera.exc.PiCameraError: Camera is not enabled. Try running 'sudo raspi-config' and ensure that the camera has been enabled."

  • Ok ich habe da auch schon die Vermutung. Das Ladekabel von meinem S3 Mini, weil das mitgelieferte einen Wackelkontakt hatte. Ich habe auch noch ein USB Kabel sollte ich das vielleicht besser verwenden?

  • Du wirst es nicht glauben aber nach einen "sudo rpi-update" erscheint plötzlich ein Bild....unglaublich!!! :)
    Und ich kann jetzt auch wieder Fotos mit der Python-Konsole machen.

    Ok jetzt nochmal zu dem Problem mit dem "Cannot identify '/dev/video0': 2no such file or directory"

    Einmal editiert, zuletzt von Josef94 (23. September 2014 um 21:17)

    • Offizieller Beitrag

    Das ist wirklich sehr seltsam...egal ;).

    Zitat

    Now, we will load the webcam,

    Diese hast du ja nicht, du hast die Pi Cam, ergo musst du den Teil (aus Punkt 1.1)

    mit entsprechendem Code aus dem Picamera Python Modul ersetzen.

  • Ich habe die ersten Zeilen geaendert doch bei der Edge Detection stosse ich bei dem Code auf folgenden Error:


    Traceback (most recent call last):
    File "basics2.py", line 23, in <module>
    r, g, b = img[x - 1, y - 1]
    TypeError: 'NoneType' object has no attribute '__getitem__'

    hast du irgendeine Idee?

  • Klar ich versuche es:

    Ich vermute ich muss das jpg format in ein RGB konvertieren....

    • Offizieller Beitrag
    Code
    img = camera.capture('/home/pi/Desktop/image.jpg')

    Ich vermute das das capture vom picamera modul nicht dem GrabImage vom (webcam) Kamera Modul entspricht. Denn erstgenanntes speichert das Bild, während letzteres "das Bild" in der Variablen zu speichern scheint um es weiter zu verarbeiten.

    mach doch mal direkt unter der zeile ein

    Code
    print img
    print type(img)

    ...Ach ich weiß die Antwort schon..aber für dich zum Verständnis vielleicht hilfreich.

    aber nun kommt das groß Geheimnis wie wir das doch noch hinkriegen.....*trommelwirbel*...wir lesen Dokumentation :) und die sagt

    Zitat


    capture(output, format=None, use_video_port=False, resize=None, splitter_port=0, **options)
    Capture an image from the camera, storing it in output.

    If output is a string, it will be treated as a filename for a new file which the image will be written to. Otherwise, output is assumed to a be a file-like object and the image data is appended to it

    Hilft dir das schon weiter? Ich will ja auch das du was lernst :)

  • Vielen Dank :)

    Also ich habe es denke ich vom Problem her verstanden, nur weiß ich nicht wie ich die Syntax anwenden soll. Ich habe auch erst angefangen mit Python zu arbeiten, da es sich um ein Praktiukum handelt, bin jedoch sehr daran interessiert.

    Also wir wollen es als "String" speichern und nicht als jpg Bild weiterverarbeiten richtig?

    Es hilft mir noch nicht weiter :(

    • Offizieller Beitrag

    Macht ja nix ;). Also die doku sagt, wenn wir einen String angeben wird dieser String als Speicherpfad für die EndDatei interpretiert. (Das machst du grade, alles in "" ist ein string). Wenn wir das NICHT machen wird es als datei_objekt gewertet und alle Bildinfos darin gespeichert (Das ist das was wir wollen)

    Gut, du hast gewonnen...ich kram die Kamera raus...


  • Du wirst es nicht glauben aber nach einen "sudo rpi-update" erscheint plötzlich ein Bild....unglaublich!!! :)

    Hat jetzt nichts mit dem Topic zu tun, aber den Fehler hat ich auch vor zwei Tagen obwohl ich nichts an der Kamera geändert hatte. Aus "Verzweiflung" hatte ich nochmal das Kabel getauscht und auf einmal ging die Kamera wieder ...

    Ist schon interessant.

    Heute hab ich per apt-get update / upgrade auch noch was neues zum Thema V4L2 bekommen.

  • code]


    Es laeuft, jedoch sehr langsam, aber der Code passt! vielen Dank :)

    Einmal editiert, zuletzt von Josef94 (25. September 2014 um 20:51)

Jetzt mitmachen!

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