Python 2.7とNumpyを使用しています。Pythonはイメージ配列(20,20)を配列(400)に変換します
私はB/Wイメージを配列(20,20)に格納しており、配列(400)に変換したいと考えています。私は多くの画像、つまり配列(x、20,20)を持っていると、これをPythonでどうやって行うことができますか?
ありがとうございます!
編集:ありがとうございます。最初は問題が間違っていたので、この単純なコードを理解することはできませんでした。
Python 2.7とNumpyを使用しています。Pythonはイメージ配列(20,20)を配列(400)に変換します
私はB/Wイメージを配列(20,20)に格納しており、配列(400)に変換したいと考えています。私は多くの画像、つまり配列(x、20,20)を持っていると、これをPythonでどうやって行うことができますか?
ありがとうございます!
編集:ありがとうございます。最初は問題が間違っていたので、この単純なコードを理解することはできませんでした。
私はnumpy.flatten()
はあなたが
>>> a = np.array([[1,2], [3,4]])
>>> a.flatten()
array([1, 2, 3, 4])
>>> a.flatten('F')
array([1, 3, 2, 4])
https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.ndarray.flatten.html
いいえ。配列(A、B)がある場合は、配列(A * B)が必要です。あなたが書いたのは配列(A + B)です。 例の配列はarray([3、4、6、8])となります。 – Leta
@Letaあなたの質問や基本的なMLアプリケーションがあれば、それはあまり意味がありません。後者の場合は、ピクセル値を変更する必要はありません。外側のディメンションのみを変更する必要があります。 **この回答は**大丈夫です。しかし、それは常にコピーであることを理解しておくべきです(他の回答に示されているものとは異なることがあります)。 – sascha
@Leta:それは意味をなさない。 – user2357112
探しているものをあなたが可能な場合は、配列の1次元のビューを取得するためにnp.ravel
を使用することができますだと思います。それ以外の場合はコピーが返されます。 '可能であれば'の定義については、リンクされたドキュメントを参照してください。
a = np.array([[1, 2, 3], [4, 5, 6]])
print(a.ravel())
# [1 2 3 4 5 6]
「arr.reshape(-1,400)」に変更しますか? – Divakar
これまでに何を試しましたか? –
@Leta 1Dアレイに折り畳まれた20x20アレイは、400の結果をもたらします。値を乗算すると、各ピクセルの色が変更されます。 – NendoTaka