小编imh*_*tep的帖子

Python Opencv output.avi 屏幕抓取颜色是蓝色密集的

当我尝试执行屏幕的视频捕获时,输出文件中的输出总是有更多的蓝色。它永远不会完全复制颜色。

我已经尝试了几种不同的编解码器,以便与 opencv 和视频编写器一起使用 Fourcc。我尝试过使用 .mjpg 和 XVID .avi 文件类型的 MJPG。还尝试将 .convert('RBGA') 添加到 ImagrGrab.grab() 行的末尾。ex ImageGrab.grab().convert('RGBA')

from PIL import ImageGrab
from PIL import ImageColor
import cv2
import numpy as np

def run():
    fourcc = cv2.VideoWriter_fourcc(*'MJPG')
    vid = cv2.VideoWriter('test5.mjpg', fourcc, 8, (width, height))
    while(True):
        img = ImageGrab.grab(bbox=(0, 0, width, height))#testSpec: bbox=(0, 0, 800, 1000)
        img_np = np.array(img)
        # frame = cv2.cvtColor(img_np, cv2.COLOR_BGR2GRAY)
        vid.write(img_np)
        ## Visually inspect recording in progress, by showing frame. 
        # cv2.imshow("frame", img_np) #frame 
        key = cv2.waitKey(1)
        if key …
Run Code Online (Sandbox Code Playgroud)

python opencv numpy python-imaging-library

2
推荐指数
1
解决办法
1712
查看次数

标签 统计

numpy ×1

opencv ×1

python ×1

python-imaging-library ×1