[解決済み】numpy: true_divide で無効な値に遭遇
2022-01-10 08:41:14
質問
Pythonで関数を実装したいのですが、2つのnumpy配列があり、一方の配列を他方の配列で割って、除数が0であれば、対応する結果は0に置き換えられます。
コードは以下の通りです。
log_norm_images = np.where(b_0 > 0, np.divide(diff_images, b_0), 0)
実行すると、エラーが発生します。
RuntimeWarning: invalid value encountered in true_divide
以下のコードを試すと
xx = np.isfinite(diff_images)
print (xx[xx == False])
xx = np.isfinite(b_0)
print (xx[xx == False])
しかし、これらは両方とも空の配列を返します。つまり、配列内のすべての値が有限であることを意味します。ですから、どこからが無効な値なのかがよくわかりません。np.where関数でb_0 > 0をチェックすることで、0による除算を行うことができると仮定しています。
2つの配列の形状は、(96, 96, 55, 64) と (96, 96, 55, 1) です。
どのように解決するのですか?
を持つことがあります。
NAN
,
INF
または
NINF
がどこかに浮かんでいます。これを試してみてください。
np.isfinite(diff_images).all()
np.isfinite(b_0).all()
そのうちの1つまたは両方が返された場合
False
それがランタイムエラーの原因である可能性が高いです。
関連
-
ピローによる動的キャプチャ認識のためのPythonサンプルコード
-
Pythonの画像ファイル処理用ライブラリ「Pillow」(グラフィックの詳細)
-
[解決済み】OSError: [WinError 193] %1 は有効な Win32 アプリケーションではありません。
-
[解決済み] Numpyのゼロ除算がnp.where()のtrue_divideで発生した。
-
[解決済み] JavaScript で配列に値が含まれているかどうかを確認するにはどうすればよいですか?
-
[解決済み] 辞書を値で並べ替えるにはどうしたらいいですか?
-
[解決済み] Javaで配列に特定の値が含まれているかどうかを判断するにはどうすればよいですか?
-
[解決済み] 配列を値でコピーする
-
[解決済み] NumPy の配列を csv ファイルにダンプする
-
[解決済み】オブジェクトの配列を文字列のプロパティ値でソートする
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
PythonによるLeNetネットワークモデルの学習と予測
-
ピロウズ画像色処理の具体的な活用方法
-
Python jiabaライブラリの使用方法について説明
-
pyCaret効率化乗算器 オープンソース ローコード Python機械学習ツール
-
[解決済み】OSError: [WinError 193] %1 は有効な Win32 アプリケーションではありません。
-
[解決済み】「SyntaxError.Syntax」は何ですか?Missing parentheses in call to 'print'」はPythonでどういう意味ですか?
-
[解決済み】IndexError: invalid index to scalar variableを修正する方法
-
[解決済み】Python: OverflowError: 数学の範囲エラー
-
[解決済み】ImportError: bs4という名前のモジュールがない(BeautifulSoup)
-
[解決済み] ゼロ除算で0を返すには