Einbaukamera Mikroskop

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Liebe Menschen im Raspberry Forum. Dies ist meine erste Frage zu Raspberry überhaupt.

    Ich möchte für mein Mikroskop eine Einbaukamera verwirklichen, die ihr Livebild auf einem FullHD Monitor ausgibt. Durch die vorliegende Optik im Mikroskop brauche ich mindestens einen Halbformatchip (besser wäre ein Vollformatchip), der seine Bilddaten mit mindestens 12FPS, möglichst jedoch besser als 24 FPS sendet. Diesen LiveView würde ich gerne auf den Monitor außerhalb des Mikroskops (HDMI) ausgeben.

    Die meisten geeigneten Industrie Kameramodule bieten USB 3.X.

    Meine Fragen an Euch wären nun die Folgenden:

    1. Gibt es ein Kameramodul (mit oben genannten Eigenschaften), das direkt als Shield auf den Raspberry aufgesteckt werden könnte, um die im Forum manchmal beschriebenen USB Probleme zu umgehen?
    2. Wenn es doch nur über USB 3.X Industriekameras gehen sollte, was brauche ich dann für den Raspberry Pi (welche Zusatzmodule wären empfehlenswert für's Nachinstallieren)?

    3. Ich programmiere seit 40 Jahren in C/C++/C#. Wäre diese Sprachfamilie zu empfehlen? Muss es Python sein?

    4. Graphische Oberfläche GTK+? Oder was würdet Ihr empfehlen?


    Seufz!

    Ich weiß es sind viele Anfängerfragen, aber ich habe bislang nur eine kleines Programmierprojekt (mit QT als Interface) am Raspberry vor einigen Jahren gehabt. So bleibt mir nur auf Euere Geduld und Eueren guten Willen für die Beantwortung der obigen Fragen zu hoffen. <3

    Liebe Grüße

    Gerhard

    3 Mal editiert, zuletzt von Chlorella (4. März 2023 um 11:25)

    1. https://www.cnx-software.com/2023/01/23/ras…nd-noir-camera/
    2. In der Regel werden die Industriekameras über Ethernet angeschlossen und haben meist ein prorpietäres Protokoll.
    3. Ne, Python muss nicht sein. Python wird von der Community unterstützt, da diese Sprache für Einsteiger sehr einfach ist. Wenn du aber seit 40 Jahren C/C++ programmierst, hast du den Anfängern gegenüber einen Vorteil. Ich denke mal, dass Python ein Klotz an deinem Bein ist, wenn du die Sprache nicht verstehst. Was du z.B. machen könntest: Alles in C programmieren, API ggf. mit Python bereitstellen. Dafür gibt es Tools wie z.B. swig. Man selber kann seine eigene Bibliothek aber mit C einbinden. Das ist aber nur dann interessant, wenn andere den Code verwenden sollen.
    4. Nimm, was dir am besten passt. Ich bin z.B. ein Fan von Qt6. Ich würde einfach Qt6 verwenden und wenn z.B. die Anforderung ist, das Programm so klein wie möglich zu halten und die GUI nicht komplex ist, verwende ich TKinter. Ok, mit C/C++ weiß ich nicht, ob es dafür vernünftige Wrapper gibt. Besonders gut sieht TKinter jedenfalls nicht aus.
  • Lieber DeaD_Eye,

    vielen Dank für Deine Antwort, die mir schon ein bisschen weitergeholfen hat. Leider dat die Raspberry Kamera (Modul 3) nur eine Sensorgröße von 7.4mm diagonal. Ich bräuchte aber eine Halbformat oder besser noch Vollvormat Sensorfläche. Noch dazu muss ich das Bild direkt auf die Sensorfläche projizieren, daher würde die verbaute Linse der Raspberry Kamera stören.

    Die Kameras von The Imaging Source haben alle einen USB 3.X Anschluß- leider. Aber eventuell gibt es ja auch andere Hersteller, die einen Sensor passender Größe verbaut haben.

    Qt6 finde ich auch sehr gut. Ich habe in meinem früheren Raspberry Projekt ebenfalls gerne Qt als GUI verwendet.

    Bliebe nur noch die Frage nach der geeigneten Kamera und - falls von den Herstellern nur USB 3.X angeboten wird - wie bekomme ich die im Raspberry eingebunden? Sehr gerne verwende ich für Bildsignalanalyse OpenTk/OpenCv (unter Windows .Net).

    Wenn alle Raspberry Stricke reißen könnte ich ja auch einen Einplatinencomputer (MiniPC) mit Windows11 nutzen.

    Nochmals vielen Dank für Deine Antwort

    Einmal editiert, zuletzt von Chlorella (4. März 2023 um 18:26)

  • Die USB-Kameras werden vom Kernel unterstützt und erscheinen unter /dev/video0 usw.

    Mit den üblichen Tools kann man direkt drauf zugreifen und mit ioctl ggf. Einstellungen vornehmen.

    Auch mit C sollte das sehr einfach sein, das auszulesen.


    Alternativ könntest du einen anderen Sensor mit CSI nutzen: https://www.alliedvision.com/en/news/detail…n-requirements/

    Ob das direkt mit diesem Sensor geht, weiß ich nicht.

    USB funktioniert aber out of the box. Selbst das benötigte Kernel-Modul sollte beim RPi-Kernel mit dabei sein.

  • Hallo Chlorella

    Was meinst du mit Halbformat/Vollformat? Das Kleinbild wird Umgangssprachlich als Vollformat bezeichnet und hat eine Bilddiagonale von 43,3mm. Dann gibt es noch das Mittelformat, was größer als Vollformat ist. Mit Halbformat kann ich nichts anfangen.

    Ich habe das Gefühl du meinst Halbformat = 1/2 Zoll (8mm Diagonale) und Vollformat = 1 Zoll (15,9mm Diagonale).

    Vielleicht magst du das Aufklären. Denn wenn du ein Sensor suchst der 8mm Diagonale hat dann gibt es die HQ Kamera von der Foundation. Die hat 7,9mm Diagonale.

    Gruß

    Steinardo

    Gängige Formatfaktoren

  • @ Steinardo gerne,

    hier (oben) ein Bild aus meiner Vorlesung Digitale Bildsignalverarbeitung:

    @DeaD_EyE: WOW super, der Tipp mit dem Sensor ist sehr gut, das könnte mich schon echt weiter bringen. VIelen lieben Dank!

  • Ich weiss, dieses Thema ist steinalt aber mein DeFi belebt es wieder....

    Ich hatte mal, vor unsäglichen Zeiten, ein bisschen in Python an sowas rumprogrammiert. Ohne Oberfläche aber mit Softwarezoom und mit Bildausschnittsverschiebung als elektronische Mikroskop für Bauteilbestückung und zum Löten als auch für die Fernbeobachtung von Zielscheiben, bin Sportschütze. Der grösste Vorteil ist das das Kamerabild nahezu verzögerungsfrei aus dem HDMI Anschluss raus kommt weil nahezu alles im VideoCore gehandelt wird. Das ist total hilfreich wenn man lötet.

    Leider hat sich ja das Handling seit zwei Jahren geändert und ich habe das nie and die modernen RaspBian/RaspOS Versionen angepasst.

    https://github.com/White-SAndS/Mikrosko-Pi

    Vielleicht hilft es ja dennoch. Es liegt auch noch ein downloadbares Image für den Schnellsteinstieg dort rum.

    Vorsicht!!!! Das Image ist steinalt und es istn NICHT zu empfehlen es in irgend ein Netzwerk einzuklinken. Auch wenn das schon unheimlich praktisch war....

Jetzt mitmachen!

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