Seite 1 von 1

RaspberryPi4 mit Python&OpenCV: ImageShow dauert 70ms

Verfasst: Montag 13. Juli 2020, 10:46
von Markovicz
Hallo zusammen,

ich würde gerne real-time-detection machen - die computation time liegt im Moment ca. bei 140ms, 70ms dauert allein das showimg-command, was die framerate halbiert und meine Anwendung ist bräuchte so viele frames wie möglich pro Sekunde :)

Im Moment lasse ich in etwa ein 1MB großes PNG Bild anzeigen und aktualisierte dort die personenzahl mit OpenCV. Ich habe schon daran gedacht, dass ich nur noch bei jedem zweiten oder vielleicht jedem 5Frame das Bild aktualisiere. Fällt euch etwas dazu ein, das showimage effizienter zu machen, gibt es evtl. noch andere Python-Module dafür?

Code: Alles auswählen

def showimage(img):
    to_show = img.copy()
    cv2.namedWindow("window", cv2.WND_PROP_FULLSCREEN)
    cv2.setWindowProperty("window",cv2.WND_PROP_FULLSCREEN,cv2.WINDOW_FULLSCREEN)
    cv2.putText(to_show, str(allowed), (180, 660), cv2.FONT_HERSHEY_SIMPLEX, 10, (255, 255, 255), 15)
    cv2.putText(to_show, str(people_inside), (180, 1020), cv2.FONT_HERSHEY_SIMPLEX, 10, (255, 255, 255), 15)
    cv2.imshow("window", to_show)
    cv2.waitKey(1)

Re: RaspberryPi4 mit Python&OpenCV: ImageShow dauert 70ms

Verfasst: Montag 13. Juli 2020, 10:48
von __deets__
Das einzige was hilft sind weniger Daten. Also zu probieren auf einer geringeren Auflösung zu arbeiten.

Re: RaspberryPi4 mit Python&OpenCV: ImageShow dauert 70ms

Verfasst: Montag 13. Juli 2020, 10:54
von Markovicz
Alles klar, dankeschön, also von der Auflösung 1920x1080 runterzugehen wahrscheinlich? Bildkompression wird wohl nichts bringen, weil opencv dann immernoch die gleiche Pixelanzahl anzeigen muss.

Re: RaspberryPi4 mit Python&OpenCV: ImageShow dauert 70ms

Verfasst: Montag 13. Juli 2020, 11:08
von __deets__
Ja. Und was willst du auf diesem Riesen Bild machen? ZB die meisten CNNs arbeiten auf ~200x200 Pixel großen Bildern.