Era3Dとepipolar lineの勉強

Era3D: High-Resolution Multiview Diffusion using Efficient Row-wise Attention multiview diffusionは1 viewあたりの解像度が256x256のものが多く、それだと顔などの細かい部分が描けないという問題がある。era3dは1 viewあたり512で生成できるようで気…

basicsrが新しめのtorchvisionでエラー

ModuleNotFoundError: No module named 'torchvision.transforms.functional_tensor' というエラーになるので調べてみるとだいぶ前からissueになってる様子 [BREAKING FIX] [torchvision 0.17] Change functional_tensor import by TornjV · Pull Request #6…

TADAをimage-3dへ拡張

TADAは元々text-3dの手法でimage条件付けの実装は含まれていない。 しかし、それだとstable diffusionが知ってるキャラクターしか作れないため、画像からavatar生成ができるよう実装を加えてみたのでメモ。 guidanceの部分でreference imageを元にした生成が…

ImageDreamの調査

image条件づけによるmultiview diffusionであるImageDreamについてメモ [2312.02201] ImageDream: Image-Prompt Multi-view Diffusion for 3D Generation 最近は高品質なmultiview diffusionがよく出てくるが、初期の頃に出たものの中で高品質なものとしてMV…

手軽に多めのデータ移動をするためのワンライナー

ちょっと多めのファイルを手軽に移動させたいときに 早めに終わらせたい場合 nohup bash -c "find <src directory> -type f -mindepth 1 -maxdepth 1 | xargs -t -P8 cp -t <target directory>" & nohupで切れないように xargsに-tをつけてログを出しておく depthのoptionは間違い防止 再帰的</target></src>…

TADA! Text to Animatable Digital Avatarsを動かす

前回調べたTADAを動かしてみる 論文・実装調査(TADA! Text to Animatable Digital Avatars) - MEMOcho- 環境構築 公式のこちらに書いてある通り https://github.com/TingtingLiao/TADA?tab=readme-ov-file#install dataにはいろいろ書いてあるが、メインの…

論文・実装調査(TADA! Text to Animatable Digital Avatars)

animationまで可能なavatar生成としてTADAについてメモ 論文はこちら [2308.10899] TADA! Text to Animatable Digital Avatars 公式でコードがgithubに公開されている GitHub - TingtingLiao/TADA: [3DV 2024] Official Repository for "TADA! Text to Anima…

画像からopenposeとsmplxのパラメータ復元

人物が写った画像からその姿勢に合わせたopenposeのkeypointとsmplxのモデルを復元する。 以前smplについては書いた pytorch3dのTextureUVでSMPLのmeshにtextureを貼る - MEMOcho- smplxは上記の拡張版のモデルであり、smplに加えて顔の表情と手の形まで表現…

Desktop PCの起動時にファンが数秒毎に回る/止まるを繰り返す

タイトルのような状態になりpcが起動しなくなった。最終的に電源の交換により復旧したので調べたことをメモ。 問題発生 まず、上記のように起動しなくなる数ヶ月前からなんでもないところで突然再起動するという症状がたまに出ていた。そしてタイトルのよう…

一枚の画像に映る人物に対するSMPL上での部分的なtexture mapを取り出す

denseposeとsmplの組み合わせはよく見かけるので勉強がてら一つやってみる。 実装も上がっており、やっていることも最小限に見えるのでこちらの論文の前処理を題材とする。 論文: https://arxiv.org/abs/1904.08645 実装: https://github.com/thmoa/tex2shap…

pytorch3dのTextureUVでSMPLのmeshにtextureを貼る

3dの人体形状モデルとして有名なものにSMPLというのがあり、形状(shape)と姿勢(pose)を指定することで様々な人体形状のmeshを作り出せる。 https://smpl.is.tue.mpg.de/ SMPL自体はmeshを生成するものだが、対応するtexture mapも配布されていて、3d生成関連…

pytorchでのmulti gpu対応 (DP, DDP, DeepSpeed, Accelerate)

最近SEANというnvidiaが出しているGANのモデルを勉強がてら実装してみたが、その中でDataParallelを使った処理があった。 DataParallelについてpytorchのドキュメントを見てみると、DistributedDataParallelを使えと書いてある。このあたりについて今までち…

diffusionのコア部分をtoy datasetで実装

2022年はdiffusionを利用したtext-to-imageモデルによる画像生成が流行った。 2020年にDDPMの論文が出てから2年程度で実用的な意味でもSoTAな手法になったわけだが、transformerが出てきたときと同じような大きな流れである模様。 diffusionを改善・応用した…

deviation networkの実装とパッケージ化

テーブルデータの異常検知モデルとしてdeviation networkというのがある。 paper: https://arxiv.org/abs/1911.08623 repo: https://github.com/GuansongPang/deviation-network それまでの精度が高めなdeep learningを活用した異常検知モデルは2ステップに…

terraformでbrandのimport

terraformでbrand(同意画面の設定)をimportした際にエラーとなったのでメモ。 terraform import google_iap_brand.project_brand <brand_name> これでimportすると以下のエラー Error: Saw <brand_name> when the name is expected to have shape projects/{{project}}/brands/{{name</brand_name></brand_name>…

vpn用routing tableへのentry追加

vpnを繋いで特定のhostへアクセスしたい場合の設定をメモ やることとしてはvpn用routing tableへentry追加するだけ macを使ってる場合の手順はこちら ifconfigを実行 vpnに繋ぐ ifconfigを実行 新しく出てきたinterfaceがvpn用のもの(ipsec0とする) sudo rou…

gcpのloadbalancerにてパスの振り分けでcdnにアクセスした際に404

gcp

loadbalancerではurlに応じてbackendを振りわけることが可能で、例えば以下のような設定ができる。 https://example.com/app/* -> app serverとなるcloudrunのインスタンスへ https://example.com/web/* -> cloud storageへ 以下のurlにアクセスしたとき htt…

DllNotFoundException: Unable to load DLL

unityでタイトルのようなエラーが出たので調べた内容をメモ。 該当のファイルを確認すると確かに存在していたがファイルサイズが明らかに小さすぎる。なので中身を確認するとgit lfsのメタファイルになっていた。こういうやつ。 version https://git-lfs.git…

clangで#inclue <bits/stdc++.h>

c++で競プロ関連の調べ物をしていると、includeの手間を省くためにbits/stdc++.hをincludeする例が多い。 clangでもstdc++.hを使うための設定方法をメモしておく。 clang++のheaderファイルのsearch pathを確認 $ clang++ -x c++ -v -E /dev/null ... #inclu…

RSAではなくED25519

ssh keyを生成しようと参考にしたgithubのhelpページで以下のように鍵を生成するよう書かれていた。 ssh-keygen -t ed25519 -C "your_email@example.com" https://docs.github.com/ja/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-ke…

macbookpro(late 2016) 15inchのホコリ取り

mac

去年から夏が近くなるとmacの挙動がおかしくなるということが増えた。かなり発熱していたのでとりあえず小さな卓上扇風機やらファン側を持ち上げておくための小さなスタンドを置いてみたりなどして、一旦は落ち着いたのでそのまま使っていた。 ちなみに小さ…

whileでハマってTLE

前回このような記事を書いたのでついでにTLEとなったしまった例をもう一つ備忘録としてメモ。 https://jsapachehtml.hatenablog.com/entry/2022/06/05/163223 以下のコードはMを超える最小の2の指数を求める処理。無限ループに陥る場合があるがどのようなケ…

atcoderのabc254_eでTLE

こちらの問題で実行時間制限を超えてしまったのだが、普段あまり意識していなかった部分で引っかかっていたのでメモ。 https://atcoder.jp/contests/abc254/tasks/abc254_e 問題の概要は以下 グラフが与えられる(頂点数N=1.5e5) クエリが与えられる(クエリ数…

pytorchでデータ数を増やすとやけに学習時間が増えるバグ

pytorchで学習する処理を書いた際、データセット内のデータ数の増加により学習時間が増えた。 データ数増加で学習時間が増えるのは当然だろうと思うかもしれないが、今回書いていた処理はデータセットのすべてを学習に使わないもので、指定したbatch数分だけ…

kedroで01_rawのディレクトリ構造に合わせて各フェーズのデータを出力する

以前kedroのドキュメントを見たときに推奨されるデータ管理用のディレクトリ構造が定義されているのを見つけた。 https://kedro.readthedocs.io/en/stable/12_faq/01_faq.html#what-is-data-engineering-convention 整理しやすそうだと思ったため自前のスク…

pandasインストール時にエラー(pip 1.20.1)

以下の実行時にnumpyのインストールでエラーとなった。 pip install pandas==1.3.4 1.3.4は別の環境にて最近インストールした記憶があり、そちらは普通に成功していたはずだったので違いを調べてみたところpipのversionが違った。 失敗したのはpip1.20.1で、…

アルファベット文字列Sよりも辞書順で小さい回文のパターン数計算

今年に入って基本的なアルゴリズムの勉強としてatcoderのコンテストにチャレンジしている。勉強ついでのアウトプットとしてこちらの問題についてメモ。 https://atcoder.jp/contests/abc242/tasks/abc242_e 問題自体は、アルファベットのみの文字列Sに対し特…

wslでのcuda toolkitのインストールでエラー

wsl上でcuda toolkitを入れたらnvidia-smiでエラーが出るようになったのでメモ こちらで環境に合わせたインストールコマンドがわかる CUDA Toolkit 11.1 Update 1 Downloads | NVIDIA Developer 入れる前に実行してあったnvidia-smiの結果 +----------------…

tmuxで保存したセッションを間違って上書きしてしまった場合

通常tmuxのwindowやpaneの内容はtmux serverをkillしてしまうと消えてしまう。そのためPCの再起動などかける場合は消えてしまうのだが、tmux-resurrectというプラグインを利用することでディスクに内容を保存しておいて復旧することができる。 さきほどPCを…

tmuxで保存したセッションを間違って上書きしてしまった場合

通常tmuxのwindowやpaneの内容はtmux serverをkillしてしまうと消えてしまう。そのためPCの再起動などかける場合は消えてしまうのだが、tmux-resurrectというプラグインを利用することでディスクに内容を保存しておいて復旧することができる。 さきほどPCを…