当我尝试将图像添加到列表时,最后更新的图像将添加到所有列表项中。
如何向outimages添加单独的图像。
import cv2
import matplotlib.pyplot as plt
import matplotlib.image as mpimage
import numpy as np
import time
in_image = cv2.imread("/home/vivek/Codes/Stackoverflow/face.jpg",-1)
gray = cv2.cvtColor(in_image,cv2.COLOR_BGR2GRAY)
#find canny
cannyimg = cv2.Canny(in_image,100,200)
#Contour
contours, hierarcy = cv2.findContours(cannyimg, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
#create new image
outimage = np.zeros(in_image.shape)
imgs = []
for a in range(0,5):
cv2.drawContours(outimage, contours, a, (20,255,80), 3)
imgs.append(outimage)
for a in range(0,5):
cv2.imshow('outimg',imgs[a]
cv2.waitKey(33)
imgs在所有项目中都有相同的图像。
提前致谢..
答案 0 :(得分:3)
您只创建了一个图像,并在每次更改后将其重新附加到列表中。如果您希望它们是不同的图像,则需要制作不同的图像。