Hallo Allerseits,
meine ursprüngliche Aufgabe war ein etwas sehr in die Jahre gekommenes Gerät wieder Labortauglich zu machen. Bei dem Gerät handelt es sich um einen sogenannten Gel-Dokumenter. Dabei werden unter einer Haube Agarose-Gel-Platten auf einen Leuchttisch fotographiert und dokumentiert. Bisher diente dazu eine betagte Digital-Kamera mit der gigantischen Auflösung von 800x600 Pixeln.
Das einzig wirklich Gute an der Apparatur ist die Haube und die Optik mit einem C-Mount.
Ich habe die veraltete Kamera gegen eine HQ-Cam und einen RPi4 getauscht. Der Pi übernimmt mit der PiCam auch die Nachbearbeitung, sprich Archivierung, der Aufnahmen.
Mit Python und PiCamera habe ich ein Preview auf den Bildschirm gegeben und über einen GPIO-Pin die eigentliche Aufnahme ausgelöst. War auf dem Weg auch recht schnell erledigt, aber dann kam jemand aus dem Labor und wünschte sich statt der GPIO-Buttons eine GUI.
In meiner grenzenlosen Naivität habe ich zugesagt diesen Wunsch zu erfüllen und dazu auch Python zu nutzen. Normalerweise löse ich sowas über eine PHP-getriebene Web-Oberfläche mit CSS und JS. Wie da allerdings die Camera hineingepasst hätte, weiß ich nicht.
Als GUI Library habe ich mir guizero ausgesucht, das schien am schnellsten für mich als Python-Neuling erlen- und nutzbar zu sein.
Ob das wirklich so klug war, wage ich jetzt, nach mehreren Tagen frustrierenden Experimentierens, zu bezweifeln.
Allein das Positionieren der Widgets ist, CSS-verwöhnt wie ich nun mal bin, eine Zumutung.
Also hier meine wichtigsten Fragen:
- Gibt's einen Weg Logik und Verarbeitung vom Layout zu trennen?
- Gibt's eine "bessere" GUI Library für meine Zwecke, die auch in angemessener Zeit erlernbar ist?
- Momentan lege ich die Vorschau camera.start_preview(...) ganz brutal über einen Bereich des Bildschirms - geht das cleverer?
Die restlichen Fragen kenne ich noch garnicht.