ich habe am Montag damit begonnen mich in Python einzulesen und bin daher ziemlich schlecht und fühle mich bei der mir gestellten Aufgabe schlichtweg überfordert, daher hoffe ich dass ihr mir helfen könnt.
Die Aufgabe an sich ist es über Python mit einem Raspberry Pi 2 und der dazugehörigen Kamera folgendes zu bewerkstelligen:
1. Erstellen eines Fotos
2. Eingabe von 8 Parametern in eine Maske welche anschließend am unteren Rand des Fotos erscheinen.
3. Speichern der Bilder in numerischer Reihenfolge (image1,image2,image3,...)
Das Erstellen des Bildes an sich stellt kein Problem dar aber alles was danach kommt...zur 2. Aufgabenstellung konnte ich über eine Internetsuche folgenden Code finden(netzmafia.de):
Code: Alles auswählen
import picamera
import time
import pygame
# Voreinstellungen
WIDTH=1280
HEIGHT=1024
FONTSIZE=50
# Kamera initialisieren
camera = picamera.PiCamera()
camera.vflip = False
camera.hflip = False
camera.brightness = 60
# Bildschirmfenster aufbauen, Hintergrund schwarz, Schrift weiss
pygame.init()
screen = pygame.display.set_mode((WIDTH,HEIGHT))
black = pygame.Color(0, 0, 0)
textcol = pygame.Color(255, 255, 0)
screen.fill(black)
while True:
# Bild machen, als GIF speichern, gleiche Größe wie Fenster
camera.start_preview()
sleep(1)
camera.capture('image.gif', format='gif', resize=(WIDTH,HEIGHT))
camera.stop_preview()
# altes Bild löschen
screen.fill(black)
pygame.display.update()
# Bild einlesen und anzeigen
img = pygame.image.load('image.gif')
screen.blit(img, (0, 0))
# Datum und Uhrzeit darüber legen
font = pygame.font.Font('freesansbold.ttf', FONTSIZE)
text = time.strftime("%d.%m.%Y um %H:%M:%S Uhr")
font_surf = font.render(text, True, textcol)
font_rect = font_surf.get_rect()
font_rect.left = 100
font_rect.top = 100
screen.blit(font_surf, font_rect)
pygame.display.update()
# etwas warten
sleep(5)
# aus die Maus
camera.close()
pygame.quit()
Leider gibt mir das Skript nur einen schwarzen Bildschirm aus und speichert ein unbeschriebenes .gif, sobald ich hier aber das Bild als .jpg ausgeben will hängt sich Python bei dem Versuch das Programm abzubrechen auf, woran liegt das ?
Mein Wunsch ist es nun auch noch 6 weitere Parameter (neben Datum und Uhrzeit) auf dem Bild festzuhalten, die ich vorher über eine entry-Eingabe wie im folgenden Beispiel erlange:
Code: Alles auswählen
from tkinter import *
def show_entry_fields():
print("A: %s\nB: %s" % (e1.get(), e2.get()))
master = Tk()
Label(master, text="A").grid(row=0)
Label(master, text="B").grid(row=1)
e1 = Entry(master)
e2 = Entry(master)
e1.grid(row=0, column=1)
e2.grid(row=1, column=1)
Button(master, text='Quit', command=master.quit).grid(row=3, column=0, sticky=W, pady=4)
Button(master, text='Show', command=show_entry_fields).grid(row=3, column=1, sticky=W, pady=4)
mainloop( )
Wie kann ich nun realisieren dass dies alles über ein Programm geschieht ? Ich habe die Themen hier im Forum bereits durchgesehen und nicht das gefunden wonach ich gesucht habe, das gleiche Spiel bei Google. Vielleicht suche ich einfach nach den falschen Begriffen, wie gesagt bin noch recht neu was Python angeht.
Bin für jeglichen Tipp oder Hilfestellung zur Lösung meines Problems mehr als dankbar.