Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用opencv和pyautogui与用户交互保存图像_Python_Opencv_Pyautogui - Fatal编程技术网

Python 使用opencv和pyautogui与用户交互保存图像

Python 使用opencv和pyautogui与用户交互保存图像,python,opencv,pyautogui,Python,Opencv,Pyautogui,我有下面的代码,我尝试执行以下操作: 开始拍摄相机图像,但还希望显示一个包含文本字段和“确定”按钮的对话框,用户必须在其中输入值并按下“确定”按钮,然后scritp保存图像(jpg),并使用用户传递的值命名图像 import cv2 import time import pyautogui camera_port = 0 camera = cv2.VideoCapture(camera_port) camera.set(3, 1280)# set the resolution camera.

我有下面的代码,我尝试执行以下操作: 开始拍摄相机图像,但还希望显示一个包含文本字段和“确定”按钮的对话框,用户必须在其中输入值并按下“确定”按钮,然后scritp保存图像(jpg),并使用用户传递的值命名图像

import cv2
import time
import pyautogui

camera_port = 0

camera = cv2.VideoCapture(camera_port)
camera.set(3, 1280)# set the resolution
camera.set(4, 1024)

emLoop = True

while (emLoop):

    retval, img = camera.read()
    #gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    cv2.imshow('Foto', img)

    k = cv2.waitKey(100)

    if k == 27:
        emLoop = False

    elif k == ord('s'):
        nome = input(pyautogui.prompt(text='Scanei o código.', title='Aviso:', default=''))
        cv2.imwrite(nome, img)

camera.release()
cv2.destroyAllWindows()
捕获将始终处于活动状态,只要用户输入值并单击“确定”将保存图像,当用户单击“取消”对话框时,将结束捕获并终止脚本。
我正试图这样做,但到目前为止没有成功…:(

函数
pyautogui.prompt
打开一个带有文本字段的对话框,用户可以在其中键入将返回的内容。这类似于函数
input
的工作方式。两者都有一个字符串作为参数,作为提示消息显示给用户。区别在于前者使用终端作为输入界面而不是对话框

将它们混合在一起看起来很奇怪:
nome=input(pyautogui.prompt(…)
。这意味着:打开一个对话框,用户可以键入一条提示消息,该消息将在控制台中为自己显示。然后,他再次键入将返回到
nome
变量的内容

尝试以下任一方法:

nome = pyautogui.prompt(text='Scanei o código.', title='Aviso:', default='')
或者这个:

nome = input('Aviso: Scanei o código.')

出现什么错误?脚本在输入中循环,我试图更改输入以接收用户值,但无效。请尝试打印
k
。当用户单击“确定”按钮后脚本崩溃