Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.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 使用pyautogui和opencv进行屏幕截图_Python_Opencv_Pillow - Fatal编程技术网

Python 使用pyautogui和opencv进行屏幕截图

Python 使用pyautogui和opencv进行屏幕截图,python,opencv,pillow,Python,Opencv,Pillow,我正在使用以下代码: import cv2 import numpy as np import pyautogui import sys img = pyautogui.screenshot() cv2.imshow('image',img) 当我运行这个时,它告诉我 mat is not a numpy array, neither a scalar 我曾尝试使用opencv中的不同函数,但它们似乎都返回相同的结果。我需要做什么才能拍摄一个屏幕截图,然后在opencv中使用它?经过

我正在使用以下代码:

import cv2

import numpy as np

import pyautogui
import sys


img = pyautogui.screenshot()
cv2.imshow('image',img)
当我运行这个时,它告诉我

mat is not a numpy array, neither a scalar

我曾尝试使用opencv中的不同函数,但它们似乎都返回相同的结果。我需要做什么才能拍摄一个屏幕截图,然后在opencv中使用它?

经过一番挖掘,我意识到pyautogui功能正在使用Pillow,它提供了一种必须适应opencv的格式

我添加了以下代码以使其正常工作:

open_cv_image = np.array(img) 
# Convert RGB to BGR 
open_cv_image = open_cv_image[:, :, ::-1].copy()