Checking into Dev Branch.... accidently checked directly into Master previously!
This commit is contained in:
parent
7d541255e6
commit
4c155d79e7
3 changed files with 52 additions and 18 deletions
31
DemoPrograms/Demo_OpenCV_Webcam_Minimal.py
Normal file
31
DemoPrograms/Demo_OpenCV_Webcam_Minimal.py
Normal file
|
@ -0,0 +1,31 @@
|
|||
import PySimpleGUI as sg
|
||||
# import PySimpleGUIQt as sg
|
||||
# import PySimpleGUIWeb as sg # has a known flicker problem that's being worked
|
||||
import cv2
|
||||
|
||||
"""
|
||||
Demo of using OpenCV to show your webcam in a GUI window.
|
||||
This demo will run on tkinter, Qt, and Web(Remi). The web version flickers at the moment though
|
||||
To exit, right click and choose exit. If on Qt, you'll have to kill the program as there are no right click menus
|
||||
in PySimpleGUIQt (yet).
|
||||
"""
|
||||
|
||||
sg.ChangeLookAndFeel('Black')
|
||||
|
||||
# define the window layout
|
||||
layout = [[sg.Image(filename='', key='_IMAGE_', tooltip='Right click for exit menu')],]
|
||||
|
||||
# create the window and show it without the plot
|
||||
window = sg.Window('Demo Application - OpenCV Integration', layout, location=(800,400),
|
||||
no_titlebar=True, grab_anywhere=True,
|
||||
right_click_menu=['&Right', ['E&xit']], ) # if trying Qt, you will need to remove this right click menu
|
||||
|
||||
# ---===--- Event LOOP Read and display frames, operate the GUI --- #
|
||||
cap = cv2.VideoCapture(0) # Setup the OpenCV capture device (webcam)
|
||||
while True:
|
||||
event, values = window.Read(timeout=20, timeout_key='timeout')
|
||||
if event in ('Exit', None):
|
||||
break
|
||||
ret, frame = cap.read() # Read image from capture device (camera)
|
||||
imgbytes=cv2.imencode('.png', frame)[1].tobytes() # Convert the image to PNG Bytes
|
||||
window.FindElement('_IMAGE_').Update(data=imgbytes) # Change the Image Element to show the new image
|
Loading…
Add table
Add a link
Reference in a new issue