2017-11-30 12 views
0
import numpy as np 
import cv2 
import matplotlib.pyplot as plt 
from PIL import Image 
a=np.zeros([10,1080,1920,3]) 
path="C:\\Users\\zhzh7\\Desktop\\pictures\\ai2.jpg" 
img=cv2.imread(path,1) 
a[0]=img 
print(type(img)) 
print(type(a[0])) 
cv2.imshow("img",img) 
cv2.imshow("a",a[0]) 
cv2.waitKey(0) 
cv2.destroyAllWindows() 

はここに私のコードです正しい方法で配列を示して傾けます。 ご覧のとおり、画像を[0]に割り当て、cv2で[0]を表示しますが、ほぼ白ですが、青い画像にする必要があります。 See Image Here配列に画像を割り当て、

これを解決する方法を知っている人はどれですか? ありがとう!

答えて

0

これはデータ型です。 np.zeros()のデフォルトはfloat64docs)ですが、imgの画像はcv.imread()からdtype=uint8です。

ちょうどそうのようなdtypeを追加します。

# ... 
a=np.zeros([10,1080,1920,3], dtype=np.uint8) 
path="C:\\Users\\zhzh7\\Desktop\\pictures\\ai2.jpg" 
img=cv2.imread(path,1) 
a[0]=img 
# ... 
+0

はい、あなたは正しいです。どうもありがとうございました。 –