写真1枚で高精度な3D画像簡単作成やってみた【2】。(depthをnumpyで加工してみる)
概要
写真1枚で
高精度な3D画像↓ 簡単作成できるよう。
写真1枚で高精度な3D画像簡単作成やってみた【1】。(depthがPNGで編集できるようになりましたよ。)
の記事参照。
ここでは、
depthをnumpyで加工してみる
以下が論文とgithub。
https://arxiv.org/pdf/2004.04727.pdf
論文『3D Photography using Context-aware Layered Depth Inpainting』
Meng-Li Shih1 さんら
githubは、以下。
https://github.com/vt-vl-lab/3d-photo-inpainting
まず、普通の実施例
加工元画像
https://pixabay.com/ja/ を利用
numpyでdepthを加工
とりあえず、depthの値を20段階ぐらいに?離散化してみた。
(すみません、例として、失敗しています。作用が全くわからない。。。 作用は、次項参照。)
2行たしてみた
実際は、例えば、意味のある関数をつくって作用させればいい?ここの処理フェーズでやるのがいいかどうかは検討がいると思うが。
# compute
with torch.no_grad():
out = model.forward(img_input)
out = out//0.1#######追加
out = out*0.1#######追加
depth = utils.resize_depth(out, target_width, target_height)
img = cv2.resize((img * 255).astype(np.uint8), (target_width, target_height), interpolation=cv2.INTER_AREA)
numpyでdepthを加工(作用を強くした例)
上記より粒度を5倍にあげた。
out = out//0.5#######追加
out = out*0.5#######追加
あとがき
pngの編集を前の記事に書いたが、デフォルトのnumpyのほうが扱いやすいかもと思い、numpyでの編集の例を示した。(残念ながら、意味ある編集に至らず。。。)
コメントなどあればお願いします。
関連:
写真1枚で高精度な3D画像簡単作成やってみた【3】。勝手にdepthのみ 別の手法(intel-isl のMiDaS他)。
写真1枚で高精度な3D画像簡単作成やってみた【0】。(空間の捉え方を確認した)
写真1枚で高精度な3D画像簡単作成やってみた【-1】。(隠れた領域が、本当に見えるのか?)
役立つかもしれない情報(一連の記事【-1】~【3】総合)
【1】
・GFORCE GTX1050Ti(専用GPUメモリ4.0GB)では、
GPUのメモリ不足で動かない場合あり。
これは、画像サイズに依存するのではなく、
おそらく、画像の中身で3Dの表現に必要なメモリ量の関係か何か。
解決策、見つけていません。パラメータ変更等でなんとかなるのかも。
赤い車ので、専用GPUメモリ3.4GB程度、白のは2.7GB程度使用されていました。
このメモリ問題に関しては、とりえず、Google Colabとかを使うのがいいのでは?
・PNGによるdepth情報の編集を示しましたが、確か、デフォルトはnumpy?。
そのデータ(numpy)をガタガタ扱うのができる方は、そちらを編集するのもありかも。
・PNGで表現されたdepthの情報は、どこかで正規化されている気がする。PNGのdepthのレンジを
変更しても結果が同じだった気がする。
【3】
・全面が壁のような画像の場合、垂直面がうまく検出できないような気がする。
(簡単だと思うので、不思議。)depthの手法をいくつか試したが、
いまのところ良いものに出会ってない。
Author And Source
この問題について(写真1枚で高精度な3D画像簡単作成やってみた【2】。(depthをnumpyで加工してみる)), 我々は、より多くの情報をここで見つけました https://qiita.com/torinokaijyu/items/e761c00c87d6a00b8c30著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .