2016-11-14 44 views
0

當我試圖添加圖像到列表中時,最後更新的圖像被添加到所有列表項。OpenCV python list append issue

如何將單獨的圖像添加到圖像中。

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在所有項目中都有相同的圖像。

在此先感謝..

回答

3

您只創建了一個圖像,然後將其重新附加到每次更改後的名單。如果你想讓它們成爲不同的圖像,你需要製作截然不同的圖像。