Iは32x32x3画像を持っているが、例えばkerasでcifar10画像の一つと言います。 今、いくつかの操作をしたいとします。まず、私が正しいことをしていることを確認するために、私はイメージをコピーしようとしていました(それはやりたいことではありませんので、私は3ループを行わずにイメージをコピーする方法を教えてください。いくつかの値を操作する)。
from keras.datasets import cifar10
import matplotlib.pyplot as plt
(X_train, Y_train), (X_test, Y_test) = cifar10.load_data()
im = numpy.reshape(X_train[0], (3, 32, 32))
im = im.transpose(1,2,0)
imC = numpy.zeros((32,32,3))
for k in range(3):
for row in range(0,32):
for col in range(0,32):
imC[row][col][k] = im[row][col][k]
今、私は、彼らが同じであれば、彼らはテストしている場合、実際に私が
if (im==imC).all():
print "cool"
をプリントアウトし、「クール」を参照してください。しかし、私はそれらを視覚化しようとすると、彼らは異なっている:
plt.imshow(imC)
plt.show()
plt.imshow(im)
plt.show()
何が起こっているのですか?
どう違うのですか?たぶんこの質問にプロットを追加することができます –
2つの配列の要素タイプは何ですか? (im.dtype、imC.dtype) –
@ガレス、あなたは正しい方向に考えていると思う、(im.dtype、imC.dtype)=(uint8、float64) – user