我想使用python代码使图像闪烁

时间:2016-01-14 19:30:58

标签: python numpy image-processing

我使用numpy创建了一个白色的图像矩阵,现在我想在我创建的图像矩阵的右半部分闪烁任何颜色我使用下面的代码,但它没有按预期工作

import numpy as np
import cv2
import time

i=0
img=np.zeros((400,800,3),np.uint8)
img.fill(255)
while(i<=1):
    img[0:400,400:800]=(153,0,255)
    cv2.imshow('package',img)
    time.sleep(5)
    img[0:400,400:800]=(255,255,255)
    cv2.imshow('package',img)
    time.sleep(5)
    img[0:400,400:800]=(153,0,255)
    cv2.imshow('package',img)
    i=i+1

cv2.waitKey(0)
cv2.destroyAllWindows()

`

1 个答案:

答案 0 :(得分:0)

在imshow之后你需要“waitkey”以确保重绘图像。 waitkey(5000)表示等待5秒钟。这里不需要“time.sleep(5)”:

    import numpy as np
    import cv2
    import time

    i=0
    img=np.zeros((400,800,3),np.uint8)
    img.fill(255)
    while(i<=1):
        img[0:400,400:800]=(153,0,255)
        cv2.imshow('package',img)
        cv2.waitKey(5000)        
        img[0:400,400:800]=(255,255,255)
        cv2.imshow('package',img)
        cv2.waitKey(5000)
        img[0:400,400:800]=(153,0,255)
        cv2.imshow('package',img)
        cv2.waitKey(5000)
        i=i+1

    cv2.destroyAllWindows()