亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

ValueError:無法將輸入數組從形狀(65536)廣播到形狀

ValueError:無法將輸入數組從形狀(65536)廣播到形狀

ibeautiful 2022-11-09 17:11:49
我有一個灰度圖像作為形狀為(256,256,1)的數組,我想將其展平為形狀(65536,)。我嘗試使用 reshape 、 flatten 和 ravel 但沒有任何效果。我也看了這個答案但我不太了解解決方案,因為我是 python 的初學者。我該如何解決這個問題?編輯:這是導致問題的代碼行image_width = image_height = 256 X[0] = np.reshape(X[0],(image_width*image_height))其中 X 具有以下形狀:(64, 256, 256, 1)數組的 dtype 是float32
查看完整描述

1 回答

?
30秒到達戰場

TA貢獻1828條經驗 獲得超6個贊

如果這不起作用:


In [80]: x = np.ones((256,256,1))                                                                      

In [81]: x.reshape(65536,).reshape((256,256,1)); 

你的陣列一定有什么不尋常的地方。更完整的數組描述(不僅是形狀,還有 dtype)以及代碼和完整的回溯可能會有所幫助。


===


你編輯表明你正在做的不止reshape。您正在嘗試將重塑的(子)陣列放回原始陣列。


將維度添加到x:


In [86]: x = np.ones((1,256,256,1))                                                                                                                                               

子數組的重塑仍然有效:


In [88]: x[0].reshape(65536);                                                                          

但試圖將重新整形的數組放回x會產生錯誤:


In [89]: x[0] = x[0].reshape(65536);                                                                   

---------------------------------------------------------------------------

ValueError                                Traceback (most recent call last)

<ipython-input-89-c488a5e4f450> in <module>

----> 1 x[0] = x[0].reshape(65536);


ValueError: could not broadcast input array from shape (65536) into shape (256,256,1)

就像我寫的那樣,reshape不會產生這個錯誤;這是任務。


查看完整回答
反對 回復 2022-11-09
  • 1 回答
  • 0 關注
  • 298 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號