2016-03-12 19 views
0

我使用下面的代碼:使用pyautogui和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的使用不同的功能,似乎他們都返回相同的。我需要做什麼才能截圖,然後在Open CV中使用它?

回答

0

經過一番挖掘,我意識到pyautogui函數使用Pillow,它給出了一個必須適應opencv的格式。

添加以下代碼,以便它的工作:

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