0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

instantNeRFのevaluation

Last updated at Posted at 2023-01-07

instantNeRFの推論結果についてPSNRとSSIM計算する機能の動作を確認しました。

run.py

parseを見ると--test_transformsを与えるとPSNRを計算するとありました。

	parser.add_argument("--test_transforms", default="", help="Path to a nerf style transforms json from which we will compute PSNR.")

216行付近が計算処理の内容でした。transform.jsonと同様に画像ファイルの名前とカメラの外部パラメータを指定するようです。
230106_1.png

... というEllipsisオブジェクトが使用されていました。

評価用の画像にalphaチャンネルがないと実行時にエラーが出ましたので、差分をとる前にalphaチャンネルを削除して回避しました。

				image = np.delete(image, 3, 2)		# add 230104 delete alpha 
				diffimg = np.absolute(image - ref_image)

transform.json

今回は提供されているfoxを使用しました。
ここでは0007, 0014, 0018, 0025, 0049の5枚以外を学習用としましたので、その5枚の表記部分をコメントアウトしました。

evaluation.json

使用するtransform.jsonを複製し、評価用の5枚の表記部分以外をコメントアウトしました。
置き場所をtransform.jsonと同じにすると処理が混ざるので、場所を別のフォルダにしました。
また評価用の画像をevaluation.jsonを置いたフォルダに作ったimagesに置きました。

230106_2.png

python run.py

ここではMSAAの影響を考慮するつもりでspp=1としました。

学習済みのsnapshotがない場合

このとき35000回イテレーションかけたときの評価がなされました。
ここで学習用のtransform.jsonは.\data\nerf\fox2に置きました。
またevaluation.jsonは.\data\nerf\evaluation\evaluation.jsonに置きました。

(ngp) PS D:\git\instant-ngpOrtho\instant-ngp> python.exe .\scripts\run.py --mode nerf --scene .\data\nerf\fox2 --test_transforms .\data\nerf\evaluation\evaluation.json --screenshot_spp 1
学習済みのsnapshotがある場合

予めtestbed.exeで学習し保存したbase.msgpackを使用します。

(ngp) PS D:\git\instant-ngpOrtho\instant-ngp> python.exe .\scripts\run.py --mode nerf --load_snapshot .\data\nerf\fox2\base.msgpack --test_transforms .\data\nerf\evaluation\evaluation.json --screenshot_spp 1
結果

各画像のPSNRとを出力するように変更しました。

PSNR=31.60 [min=29.08 max=33.73] SSIM=0.905
image .\data\nerf\evaluation\images/0007, PSNR=33.37 SSIM=0.929
image .\data\nerf\evaluation\images/0014, PSNR=29.08 SSIM=0.911
image .\data\nerf\evaluation\images/0018, PSNR=32.44 SSIM=0.914
image .\data\nerf\evaluation\images/0025, PSNR=33.73 SSIM=0.924
image .\data\nerf\evaluation\images/0049, PSNR=29.36 SSIM=0.845

それぞれの推論画像と差分画像を出力するように変更しました。
数字が比較的悪い0014と0049について確認しました。

0014のreference画像, inference画像, difference画像です。testbedで確認したところ、フローターが挟まっていたようです。
230106_3.png

0049のreference画像, inference画像, difference画像です。毛並みの中の細かい陰が再現されていないようです。
230106_4.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?