我一直在为树莓派相机编写一些程序,一个只显示相机输出,一个拍照然后应用人脸识别等等。我得到了大部分工作,但我无法将所有这些合并到一个程序中。
我想的只是简单的按钮,而不是按下时会执行相关的python脚本,为简单起见,我想说我只想执行最简单的按钮,只是相机的输出。我有这样写的代码。
import cv2
import time
from picamera.array import PiRGBArray
from picamera import PiCamera
camera =PiCamera()
camera.resolution=(320, 240)
camera.framerate=30
rawCapture=PiRGBArray(camera, size=(320, 240))
time.sleep(1)
for frame in camera.capture_continuous(rawCapture, format="bgr" ,
use_video_port=True):
image=frame.array
cv2.imshow("Faces" , image)
key = cv2.waitKey(1)
rawCapture.truncate(0)
现在我有另一个代码,主要在tkinter中完成,只是调用代码来执行相机脚本的按钮。我希望它看起来像这样。
from Tkinter import *
def executeCameraScript():
#Code for the camera script to trigger
def option2():
#x
def option3():
#y
root = Tk()
frame= Frame(root)
frame.pack()
button=Button(frame,
text="Turn on the Camera",
command=executeCameraScript)
button.pack(side=LEFT)
button=Button(frame,
text="Option3",
command=option2)
button.pack(side=LEFT)
button=Button(frame,
text="Option3",
command=option3)
button.pack(side=LEFT)
root.mainloop()
我的问题是我应该使用什么,以便当我按下“打开相机”按钮时,它会执行相机脚本(最好不要关闭按钮框,这样我也可以从那里关闭脚本),有什么简单的吗?这样做的方法?