cv2

2013-04-26 15 views
5

ile python'da çok kanallı sıfırlar oluşturun. Cv2 opencv sarıcı ile python'da çok kanallı bir mat nesne oluşturmak istiyorum.cv2

ben iyi görünüyor C++ Mat :: sıfır numpy.zeros değiştirilir net tutarı örnekler bulduk. ama hiçbir kanallı tip

göz koduna .. uyuyor:

import cv2 
import numpy as np 

size = 200, 200 
m = np.zeros(size, dtype=np.uint8) # ? 
m = cv2.cvtColor(m, cv2.COLOR_GRAY2BGR) 
p1 = (0,0) 
p2 = (200, 200) 
cv2.line(m, p1, p2, (0, 0, 255), 10) 

cv2.namedWindow("draw", cv2.CV_WINDOW_AUTOSIZE) 
while True: 
    cv2.imshow("draw", m) 

    ch = 0xFF & cv2.waitKey(1) 
    if ch == 27: 
     break 
cv2.destroyAllWindows() 

i m = cv2.cvtColor(m, cv2.COLOR_GRAY2BGR) ama hiçbiri cv2.CV_8UC3np.uin32 eser kaçınmak istiyorum.

bazı ipucu?

cevap

12

size olarak bu deneyin:

img = cv2.imread('/tmp/1.jpg') 
print img.shape, img.dtype 
# (398, 454, 3), uint8 

Ama bir ihtimalle de OpenCV belgelerinde bulabiliriz:

size = 200, 200, 3 
m = np.zeros(size, dtype=np.uint8) 

ben matris için gerekenleri argümanlar bulmak için yaptığımız Temelde budur.

+0

Bu belgelerde lütfen? – nkint

+0

Hm, bu konuda herhangi bir resmi opencv dokümanı bulamıyorum, ki bunu açıkça yapmanız gerektiğini belirtiyorsunuz, sanırım renkli bir görüntü için 3 katmana/boyuta ihtiyacınız olan bir "ortak bilgi". Ancak [http://stackoverflow.com/questions/12881926/create-a-new-rgb-opencv-image-using-python] SO sorusunu bulabildim. – gatto

İlgili konular