- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Ergebnis 1 bis 10 von 39

Thema: C/C++ Beispielprogramme mit USB Cam und openCV?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    40
    Beiträge
    3.416
    oh ich weis ich sollte es nicht schreiben, aber dennoch:
    Grundlagen der C/C++ Entwicklung
    dazu gehört auch ein wenig gesunder Menschenverstand und die Fähigkeit eine Fehlermeldung zu verstehen. (ich meine damit nicht die Bedeutung der Meldung an sich, sondern den Kontext und was man machen kann um es zu verstehen .. dazu gehört auch das richtige googeln)

    Dein Compiler gibt dir mit der ersten Meldung ausführlich zu verstehen, dass er nicht in der Lage ist die genannten Methoden/Funktionen zu finden. Ich würde jetzt kurzerhand mit grep über die Sources von OpenCV gehen und versuchen raus zu finden wo denn die geforderten Aufrufe zu finden sind und die includes zu ergänzen.

    Der 2te Fehler jedoch vermittelt mir den Eindruck, als ob sich deine Sources garnicht im richtigen Pfad befinden oder dein Geany davon ausgeht dass DU die notwendigen Resourcen in einem Projektspezifischen Ordner zur Verfügung stellst.

    Dir mangelt es an Grundlagenverständnis, welches du dir wohl oder übel anlernen musst, oder du wirst ewig abhängig davon sein, dass andere deine (entschuldige den Begriff, es ist nicht bös gemeint aber beschreibt es am besten) verdrehten Einstellungen/Makefiles deiner Entwicklungsumgebung repariert.

    KORREKTUR: Der 2te Fehler weist auf ein generelles Problem mit dem Makefile hin
    Geändert von Ceos (13.03.2017 um 13:04 Uhr)
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  2. #2
    HaWe
    Gast
    tja, spekulieren kann man viel - hilfreich ist es nur, wenn du es auch selber testen könntest und würdest, und zwar auf einem Pi mit einer USB cam und aktuellem Jessie samt Geany IDE.
    Andernfalls ist es nicht hilfreich, eben bloße Spekulation und Raterei.
    Und Hinweise auf "Menschenverstand" sind hier wirklich reichlich hochnäsig und absolut fehl am Platz. Ansonsten setze ihn doch mal selber ein, und berichte dann....!

    Tatsächlich compiliert es jetzt ohne errors und warnings mit den abgewandelten Parametern (die hier noch niemand erwähnt hat...!) :
    g++ -o test test.cpp -lopencv_highgui -lopencv_core -lstdc++

    Aber es zeigt kein Bild (LogiCam ist natürlich drin, und die läuft auch unter Windows.)

    Also, immerhin ein Stück weiter, aber immer noch kein Licht am Ende des Tunnels.
    Ganz zu schweigen von Farben- und Formen- und Mustererkennung.

  3. #3
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Soltau - Niedersachsen
    Alter
    46
    Beiträge
    1.369
    Ich hätte aber jetzt keine Lust DEIN Projekt zu MEINEM Projekt werden zu lassen, nur weil du das gerne so hättest.

  4. #4
    HaWe
    Gast
    Zitat Zitat von HeXPloreR Beitrag anzeigen
    Ich hätte aber jetzt keine Lust DEIN Projekt zu MEINEM Projekt werden zu lassen, nur weil du das gerne so hättest.
    musst du ja nicht, ich hatte ja gefragt, wer es möchte und sich dazu in der Lage sieht, und nicht, wer es nicht will und/oder nicht kann.
    Da du bisher aber noch nicht einmal hilfreiche Tipps für den Anfang geben konntest, denke ich, dass sich die Frage zu deiner Person bereits damit schon beantwortet hat.

  5. #5
    HaWe
    Gast
    Zitat Zitat von HaWe Beitrag anzeigen
    Tatsächlich compiliert es jetzt ohne errors und warnings mit den abgewandelten Parametern (die hier noch niemand erwähnt hat...!) :
    g++ -o test test.cpp -lopencv_highgui -lopencv_core -lstdc++

    Aber es zeigt kein Bild (LogiCam ist natürlich drin, und die läuft auch unter Windows.)
    Also, immerhin ein Stück weiter, aber immer noch kein Licht am Ende des Tunnels.
    Ganz zu schweigen von Farben- und Formen- und Mustererkennung.
    Update:
    ich habe jetzt eine neue, andere webcam probiert, und mit der bekommen ich mit den build-Parametern
    g++ (gcc) -o test test.cpp -lopencv_highgui -lopencv_core (-lstdc++)
    tatsächlich einen Videostream in einem kleinen extra-Window.
    Hardware funktioniert also, und opencv grundsätzlich auch.

    Nun könnte es losgehen mit dem Community-Projekt "opencv mit C++ und Geany", von dem sicher sehr viele profitieren würden, denn den Code werde ich natürlich zusammenfassen und verfügbar machen.

    Also, wer traut sich so etwas zu und will konstruktiv mitarbeiten ?

    so etwas in der Art wie hier in den Videos (mit Python) soll wie schon eingangs erwähnt als erste Ziele möglich werden:

    https://www.youtube.com/watch?v=MWK55A0RH0U
    https://www.youtube.com/watch?v=qcF5PFXZC3o
    https://www.youtube.com/watch?v=fns19y9NOpM
    https://www.youtube.com/watch?v=tpwokAPiqfs

  6. #6
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    18.01.2012
    Beiträge
    485
    Hallo HaWe,
    welche Auflösung und Bildwiederholrate benötigst du?
    Welcher Pi soll verwendet werden.
    Warum muß es eine USB-Cam sein?
    Ist es ein privates Projekt?

    Ich habe mich bis vor zwei Jahren mit dem Thema
    beschäftigt und habe es erst mal, zugunsten meines
    Turbinen-Generator-Projekt, auf Eis gelegt.
    Muß mich halt wieder rein arbeiten.
    Bin aber der Meinung, dass der Pi zu schwach ist.
    Für Experimente ist er aber sicherlich geeignet.

    Gruß
    AR

  7. #7
    HaWe
    Gast
    Zitat Zitat von ARetobor Beitrag anzeigen
    Hallo HaWe,
    welche Auflösung und Bildwiederholrate benötigst du?
    Welcher Pi soll verwendet werden.
    Warum muß es eine USB-Cam sein?
    Ist es ein privates Projekt?
    Ich habe mich bis vor zwei Jahren mit dem Thema
    beschäftigt und habe es erst mal, zugunsten meines
    Turbinen-Generator-Projekt, auf Eis gelegt.
    Muß mich halt wieder rein arbeiten.
    Bin aber der Meinung, dass der Pi zu schwach ist.
    Für Experimente ist er aber sicherlich geeignet.

    Gruß
    AR
    hallo,
    zu deinen Fragen:
    zu den Frames: 10-15 fps müssten ausreichen, es ist ja für die o.g. Beispiele nicht so extrem zeitkritisch, und selbst in Python funktionieren sie ja mit den Möglichkeiten, die ein Pi bietet (teilw sogar nur B+, teilw.auch 2 oder 3, siehe die Videos!). Es ist aber für mindestens einen Pi 2 (quadcore) gedacht.

    USB cam, weil die PiCam von den GPIOs insb. die für i2c-0 mit belegt, es soll aber i2c-0 als zusätzlicher I2C Port verfügbar bleiben. Außerdem sind die viel billiger als die PiCam.

    privates Projekt - auf jeden Fall privat, ja. Es geht um praktische Anwendungshandwerkzeuge, die man einfacher als die unglaublich komplizierten einzelnen opencv Einzelmodule ansprechen können soll. Quasi einen Haufen von zusätzlichen Wrappern, die es in C++ genauso einfach machen sollen, die opencv Funktionen zu verwenden, wie es in Python möglich ist. Es gibt zwar -zig Tutorials für opencv mit C++, aber der Code dort ist extrem monströs und unverständlich, und man braucht alleine linker flags, die so lang sind dass sie die Enzyklopedia Galactica sprengen würden. Auch hier bräuchte man eine radikale Vereinfachung, insgesamt so etwas wie ein "Arduino-Wiring" für den Pi mit g++ und opencv.

  8. #8
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    18.01.2012
    Beiträge
    485
    Hallo HaWe,
    du hast die Auflösung vergessen,
    640x480 macht schon 307200 Bildpunkte,
    bei 24 Bit Farbauflösung also mal 3 gleich 921600.
    Bei höherer Auflösung wird es dann schon für den kleinen
    Pi 2 recht schwer.
    Nun, privat kommen wir vielleicht zusammen, wenn nicht
    zu viel Termindruck entsteht.
    Wie gesagt, mein Generator-Projekt braucht noch einige Zeit.




    Gruß
    AR

  9. #9
    HaWe
    Gast
    die Auflösung weiß ich nicht, sie soll aber auch variabel bleiben - ich habe eine Cam in dieser Art:
    http://www.ebay.de/itm/381563562701?...%3AMEBIDX%3AIT
    vermutlich werden es 640x480 sein, vlt auch 800x600, keine Ahnung, aber die Lösung soll ja auch universell für andere handelsübliche USB cams mit höherer oder niedrigerer Auflösung funktionieren. Notfalls muss der User dann eben eine langsamerere Bildverarbeitung in Kauf nehmen.

    Ich habe inzwischen auch ein Tutorial über Blob Detection gefunden, eigentlich VisualC++ (weshalb ich es wschl bisher nicht gefunden habe für Pi und GCC), aber die Beispiele funktionieren offenbar mit kleinen Fehlern (waitKey funktioniert nicht) auch mit g++ : http://opencv-srf.blogspot.de/2010/0...eperation.html
    Hier funktioniert zumindest meine Cam auf Anhieb und mit leidlich erträglicher Geschwindingkeit. Die Linker flags sind allerdings der pure Horror.
    Ist auch recht gut erklärt, was die Grundfunktionen angeht, könnte allerdings noch etwas handlicher sein, aber mir geht es ja zusätzlich auch um praktische Anwendungen wie die oben verlinkten, quasi samt simplifiziertem C++ Code zum Nachbauen.
    Ich fange aber auf jeden Fall schon mal an und les mich in das VisualC++ Tutorial ein.

Ähnliche Themen

  1. suche Beispielprogramme für den RP6
    Von enni im Forum Robby RP6
    Antworten: 10
    Letzter Beitrag: 02.01.2009, 17:28
  2. Beispielprogramme? Anfänger
    Von jojo.glaser im Forum C - Programmierung (GCC u.a.)
    Antworten: 0
    Letzter Beitrag: 17.06.2006, 09:11
  3. Beispielprogramme für C
    Von solo im Forum Robby CCRP5
    Antworten: 6
    Letzter Beitrag: 14.02.2005, 18:06
  4. Beispielprogramme zur LPT1 Programmierung
    Von Sokrates87 im Forum C - Programmierung (GCC u.a.)
    Antworten: 4
    Letzter Beitrag: 07.01.2005, 18:57
  5. erklärung der beispielprogramme
    Von xandl33 im Forum Robby CCRP5
    Antworten: 6
    Letzter Beitrag: 03.05.2004, 01:51

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen