タグ

cgに関するsh19910711のブックマーク (97)

  • CV・CG・ロボティクスのためのリー群・リー代数入門: (1) リー群 - swk's log はてな別館

    シリーズ一覧へ このエントリでは,回転を題材としてリー群の定義を説明し,それを導入する動機と基的な考え方を導入する. ざっくりと言うと,回転を考えるというのはある種の「曲がった空間」を考えることであって,理論上も実用上も面倒な点が多い.ところがここで,回転が「群」と呼ばれる数学的構造を持っていることに着目すると,さっきの「曲がった空間」に関する問題を,それに対応する「真っ直ぐな空間」に関する問題に置き換えて考えることができる.ここで言う「曲がった空間」がリー群であり,「真っ直ぐな空間」がリー代数と呼ばれるものであり,それらの間の対応を表すのが指数写像と呼ばれるものである,という話をこのエントリとそれに続く 2 エントリくらいを通じて見ていきたい. 何やら魔法のような話に聞こえるかもしれないが,こんな風に,ある問題をそれと対応関係にある別の問題に置き換えて考えるというのは数学ではよくある話

    CV・CG・ロボティクスのためのリー群・リー代数入門: (1) リー群 - swk's log はてな別館
    sh19910711
    sh19910711 2024/06/10
    "回転が「群」と呼ばれる数学的構造を持っていることに着目 / 「曲がった空間」に関する問題を,それに対応する「真っ直ぐな空間」に関する問題に置き換えて考える" 2019
  • 【感想】巴山竜来『リアルタイムグラフィックスの数学―GLSLではじめるシェーダプログラミング』 - Technically, technophobic.

    このを数か月前に読んで面白かったです。2022年に読んだ技術書の中でベストだったので、紹介しよう。と思って書き始めたら、なんか前置きが長いだけの謎文章になってしまったけど公開します。。 このを読むと、こんなのが作れるようになります。 8章。レイマーチング完全に理解した。 #リアルタイムグラフィックスの数学 pic.twitter.com/VDYhxIlar3— Hiroaki Yutani (@yutannihilation) 2022年9月12日 ちなみに私はGLSLじゃなくてRustとWGSLでやってたんですが、もし興味あればここにメモとコードを公開しています。 メモ: https://zenn.dev/yutannihilation/articles/d7fe746f4bce38 コード: https://github.com/yutannihilation/math_of_re

    【感想】巴山竜来『リアルタイムグラフィックスの数学―GLSLではじめるシェーダプログラミング』 - Technically, technophobic.
    sh19910711
    sh19910711 2024/06/09
    "「どう使うのか」ではなく「どのようにできあがっているのか」についてゼロから解説 / 前章まででつくったパーツを組み合わせて更に高度なグラフィックができあがっていくので達成感があり" 2023
  • threestudioでProlificDreamerを動かす

    はじめに 画像生成だけでなく、3Dモデル生成の品質もかなり上がってきました。特にtext-to-3Dモデルは、驚異的な進歩を見せています。 一番左のDreamFusion(2022年9月公開)から、一番右のProlificDreamer(2023年5月公開)まで、僅か8ヶ月しか経っていません。 研究者であれ開発者であれクリエイターであれ経営者であれ、このぐらいの技術進歩速度は予見して行動すべきでしょうし、少なくとも追従できる必要があると思います。 幸いなことにProlificDreamerの論文公開3日後には、技術解説記事が公開されています。 また、幸いなことに論文公開当日には、3Dモデル生成のライブラリであるthreestudioで非公式実装が公開されています。 公開当初から品質が改善され、昨日2023/6/3時点では以下のような生成ができるようです。 記事では、threestudio

    threestudioでProlificDreamerを動かす
    sh19910711
    sh19910711 2024/06/08
    "3Dモデル生成の品質もかなり上がってきました。特にtext-to-3Dモデルは驚異的な進歩 / DreamFusion(2022年9月公開)から、一番右のProlificDreamer(2023年5月公開)まで僅か8ヶ月" 2023
  • CNNを用いたテクスチャ合成(Texture Synthesis)の仕組みのメモ - めも

    問題設定と評価指標 既存の手法 ノンパラメトリックな手法 パラメトリックな手法 提案手法 概要 詳細 ステップ1 ステップ2 これを基にした画風変換 参考文献 自分の研究が画像処理系の機械学習と関係ないのでやや適当です。 問題設定と評価指標 [Gatys2015]より。 ある画風の画像を入力して、その画風を持った見た目が自然な画像を出力する。 画風の元になった画像が認識できない状態を保って成功とする。つまり画像のつぎはぎが目立つ、といったケースは問題にしない。 CNNを用いた画風変換の元になったモデル。 既存の手法 パラメトリック、ノンパラメトリックと大きく二つの方針に分かれている。 ノンパラメトリックな手法 画風の元になる画像を指定して、そこから画風(を表してると思われるもの)をうまくサンプリングして新しい画像や物体に適用する。 画風変換で検索すると、もはやCNNベースの手法しか検索で出

    CNNを用いたテクスチャ合成(Texture Synthesis)の仕組みのメモ - めも
    sh19910711
    sh19910711 2024/06/07
    "CNNベースの手法が出る前のテクスチャ合成に関するサーベイ論文は[Wei2009]が詳しい / テクスチャに存在する画像の位置情報によらない画風に関する情報は特徴マップの相関で表現できるはず" 2017
  • OpenGLでゲーム向け3次元剛体シミュレーションをやる - ゆべねこの足跡

    最近こちらの(以降参考書)を読みました。 ゲーム制作者のための物理シミュレーション 剛体編 作者:原田 隆宏,松生 裕史インプレスAmazon タイトル通り、物理エンジンの内部でどのように剛体シミュレーションが行われているかについて解説している書籍となっています。一通り読み終わったので、復習も兼ねて軽く剛体シミュレーションについて解説しようと思います。 できたもの 公開されているサンプルコードを参考にしつつ、自分の環境でも剛体シミュレーションをやってみました。 youtu.be シェーディングがおかしいことには目を瞑ってください...。 使ったライブラリ: OpenGL SDL(Simple Directmedia Layer) GLM(OpenGL Mathematics) https://github.com/yubeneko/PhysicsSimulation 剛体シミュレーション

    OpenGLでゲーム向け3次元剛体シミュレーションをやる - ゆべねこの足跡
    sh19910711
    sh19910711 2024/06/07
    "物理エンジンの内部でどのように剛体シミュレーションが行われているかについて解説している書籍 / 剛体: 「形状」、「状態」、「属性」の3つのデータ構造が必要 + 「属性」は質量や慣性テンソル、反発係数など" 2022
  • 3Dゲームファンのためのプレイステーション 3 GPU講座~「PS3のGPUは1つではない。全部で1+7個ある」

    3Dゲームファンのためのプレイステーション 3 GPU講座 ~「PS3のGPUは1つではない。全部で1+7個ある」 5月18日~20日(現地時間) 開催 会場:Los Angels Convention Center プレイステーション 3のグラフィックサブシステムには謎があった。それは (1) UMAを採用せず、CPU(CELLプロセッサ)に接続されるメインメモリをXDR DRAMを256MB、グラフィックスチップ(GPU:RSX、以下RSX-GPU)にGDDR3 SDRAMを256MB……という構成にしたこと。 (2) NVIDIA社長のJen-Hsun氏のプレゼンでRSXが、自身のビデオメモリ容量256MBを超える512MBのレンダリングが行なえるという記述があったということ。 この2点だ。

    sh19910711
    sh19910711 2024/05/28
    "David Kirk: NVIDIAの全てのGPU開発に携わる「GeForceの父」の異名を取る / SPE: 4要素の32ビット浮動小数点実数ベクトル演算に特化した128ビットSIMD型RISCプロセッサ / SLI: 複数のGPUでレンダリングを行なう技術" 2005
  • 驚くほどキレイな三次元シーン復元、「3D Gaussian Splatting」を徹底的に解説する - Qiita

    はじめに 最近、3D業界で大きな衝撃を与えた「3D Gaussian Splatting」1について、ご存知でしょうか?数少ない写真から、目を奪われるほど美しい三次元シーンを再構成できるデモを見て私も大感動しました。なぜこんなに美しいのか、どんな技術で実現したのか、興味が湧いています! "普通の3D物体ではなく、カメラの移動に合わせて、水面に映る景色も正確に表現しています。これはなかなか凄い..." 私も時間をかけて論文や公開されたコード2を勉強しました。家の実装はCUDA化されており、難解な部分が多く、論文に書かれていないこともあります。そのため、「3D Gaussian Splatting」を勉強したい人にむけ、わかりやすい解説記事を書こうと思いました。単に概念や考え方だけでなく、ゼロから再実装できるように、すべてのロジックを数式として整理し、徹底的に解説しようと思います。 「3D

    驚くほどキレイな三次元シーン復元、「3D Gaussian Splatting」を徹底的に解説する - Qiita
    sh19910711
    sh19910711 2024/05/22
    "3D Gaussian Splatting: ボクセルで空間を分割せず、かなり高密度なガウス分布に従う単位を使うことで、細かい物体の形状を表現 / カメラの姿勢に応じて、見えた3D Gaussianの色を計算"
  • 画像から人体の3Dモデルを生成する技術 - Qiita

    背景 メタバースやAR等の進展で人体の3Dモデル化は需要大 (Vtuber等のアバター,ゲームモーション作成、映像コンテンツの作成等) 今回は画像や動画からどうやって人体を3D化するかという技術を紹介したいと思います。 3Dモデルの表現方法 画像から3Dモデルを作成する上で重要なのは3Dをどのような形で表現をすればよりNNの学習に適しているかということです。 3DモデルをPoint Cloudのような点群として表現するのか、メッシュとして表現するのかなど同じ3Dにしても多数の表現方法があります。用途やNNの学習に適した表現形式 が多数提案されており、今回はSMPLとNeRFという2つの表現方法に関してご紹介いたします。 押さえておきたい要素技術1: SMPLモデル SMPLとは? パラメータ化された人体の3Dモデル SMPL: A Skinned Multi-Person Linear M

    画像から人体の3Dモデルを生成する技術 - Qiita
    sh19910711
    sh19910711 2024/05/18
    "SMPL: 間接点,人の向いている方向,それぞれに対する回転角度𝜃と人の体格を決める10次元のパラメータ𝛽という人間が解釈しやすい82個のパラメータで操作可能 / ml-neuman: NeRF+人背景分離用のMaskRCNN+画像からのSMPL推定" 2023
  • レイマーチングのための複雑な距離関数 - Qiita

    レイマーチングで使える複雑めな距離関数を収集していきます。 球や直方体など単純な図形に関しては以下にまとまっているので、ここでは触れません。 Inigo Quilez :: fractals, computer graphics, mathematics, shaders, demoscene and more Recursive Tetrahedron http://glslsandbox.com/e#55834.0 四面体のIFSによる繰り返しです。最終的に四面体の頂点に対して距離を計算しています。 #define ITERATIONS 8 float deRecursiveTetrahedron(vec3 p, vec3 offset, float scale) { vec4 z = vec4(p, 1.0); for (int i = 0; i < ITERATIONS; i++)

    レイマーチングのための複雑な距離関数 - Qiita
    sh19910711
    sh19910711 2024/05/08
    "Menger Sponge: 再帰的にクロス状の図形との論理差を取ることで穴を開けていきます / 六角形: 単純にmodを用いた繰り返しを使用してもうまくいきません + タイリングを2つに分けてそれぞれ距離を計算し論理和で結合" 2019
  • VFX Graphの気になるアップデートを軽率に紹介したい/wanna-introduce-vfx-graph-updates

    sh19910711
    sh19910711 2024/05/07
    "VFX Graph: Shurikenに代わる新しいパーティクルシステム + 表現力の高いパーティクルを簡単にハイパフォーマンスで作ることができる / SDF: 点から形状への距離と方向 + 3Dテクスチャとして扱われる + 以前はHoudiniで作成" 2021
  • Unityで点だけのメッシュを動的に生成する - Qiita

    点の生成 3Dの編集モードで新規にプロジェクトを作成するか、新規シーンを作成してから、3D Object→Cubeを配置します。座標は(0,0,0)にしておくと素直にカメラに映ります。 作成したCubeに以下の内容のスクリプトをアタッチします。 using UnityEngine; public class CreateSimplePointMesh : MonoBehaviour { void Start() { int numPoints = 60000; // 点の個数 float r = 1.0f; // 半径 Mesh meshSurface = CreateSimpleSurfacePointMesh(numPoints, r); GetComponent<MeshFilter>().mesh = meshSurface; } /// <summary> /// 球の表面にラン

    Unityで点だけのメッシュを動的に生成する - Qiita
    sh19910711
    sh19910711 2024/05/05
    "旧来のUnityでは65535頂点を超えるメッシュを扱えなかったのです(過去形) / Unity2017.3からはこの制約が無くなった / Post Processing StackのBloomを使うと、光っているように見せることもできます" 2018
  • Unity×レイマーチングによる映像制作の実践手法 / KLab Tech Meetup 4

    ブログ版: https://gam0022.net/blog/2019/06/25/unity-raymarching/ イベント詳細: https://techplay.jp/event/733454

    Unity×レイマーチングによる映像制作の実践手法 / KLab Tech Meetup 4
    sh19910711
    sh19910711 2024/05/03
    "規則的な動きはシェーダーが得意 / レイマーチング: 距離関数という数式で形状を定義 / 映像を構成する3要素: 形状 + 質感 + 演出 / IFS: 自身の縮小コピーを重ね合わせることでフラクタル図形をつくるテクニック" 2019
  • 【DirectX12】Mesh Shaderを使用した次世代頂点パイプラインの検証 - Qiita

    自作フレームワークにMesh Shaderを組み込み、従来の頂点シェーダーと比較してどのくらいパフォーマンスが変化するか検証しました。 CADデータをポリゴン化したモデル、3DスキャンやZBrushでスカルプトしたような超ハイポリゴンモデルの場合 Mesh Shaderが圧倒的優位である。 しかし低ポリゴン数のモデルが配置されたシーンではVertex Shaderの方が優位になる。 低ポリゴン数のモデルをAmplification Shaderと併用して描画するとMesh Shaderのみの場合と比べて速度が低下する。 超ハイポリゴンモデルの場合、Amplification Shaderを併用するとより高速になる。 自作フレームワーク せっかくなので今回検証に使用した自作フレームワークをちょっとだけ紹介させてください。 API 開発環境 CPU RAM GPU

    【DirectX12】Mesh Shaderを使用した次世代頂点パイプラインの検証 - Qiita
    sh19910711
    sh19910711 2024/04/18
    "3DスキャンやZBrushでスカルプトしたような超ハイポリゴンモデルの場合 Mesh Shaderが圧倒的 / ローポリなシーンでは頂点シェーダーの方が高速 / 標準的なシーンでは頂点シェーダーでもメッシュシェーダーでも変わらない" 2021
  • DirectX12の魔導書を読んだ - Gaming Life

    『DirectX12の魔導書』を大体読み終わったので感想。 DirectX 12の魔導書 3Dレンダリングの基礎からMMDモデルを踊らせるまで 作者:川野 竜一発売日: 2020/02/13メディア: Kindle版 自分はDirectXやOpenGLなどのグラフィックスAPIをほぼ触ったことがなかったので(昔DX11で三角ポリゴン出したくらい?)、勉強として買った。 の構成は以下の通り。 Chapter1 前提となる知識とDirectX12の概略 Chapter2 グラフィックスパイプラインと様々なシェーダー Chapter3 初期化から画面クリアまで Chapter4 ポリゴンの表示 Chapter5 ポリゴンにテクスチャを貼り付ける Chapter6 行列による座標変換 Chapter7 PMDの読み込みとモデルの表示 Chapter8 マテリアル Chapter9 リファクタリン

    DirectX12の魔導書を読んだ - Gaming Life
    sh19910711
    sh19910711 2024/04/17
    "昔DX11で三角ポリゴン出した / 本書は高校数学とC++の最低限の知識がある読者を想定 + そこまでの知識でこの本を完走するのは厳しく / 副読書としてCGエンジニア検定の参考書あたりを持っておくのがよさそう" 2020
  • 私とProcessingときっかけ

    なぜこの記事を作成したのか Processingを始めたきっかけや魅力に気づいたきっかけなど、さまざまな「きっかけ」を今なら言語化できるのでは?と感じ、記事として残そうと思いました。 また過去に募集した質問箱でも「きっかけ」や「理由」を尋ねてくる質問が多かったのもあって具体的に答える形で書いてみます。 ritocoの歴史みたいな視点で見てくれたら幸いです。 目次 なぜこの記事を作成したのか 目次 私について Processingって? Processingを知ったきっかけ Processingの授業を受講したきっかけ Processingの魅力に気づいたきっかけ Processingで自主制作したいと思ったきっかけ Processingを深く学ぶ・知ることになったきっかけ Processing作品を投稿しようと思ったきっかけ 今日までのアウトプットのきっかけ 様々なきっかけがあって 私につ

    私とProcessingときっかけ
    sh19910711
    sh19910711 2024/04/05
    "Processingのよさ: 成長が目に見えてわかる + 「ちょっとした思いつき→ 動かす → 発見」のProcessing無限ループにいつのまにか楽しくハマって / 制作してきたものは駄作でも残しておく" 2019
  • Adobe Substance 3Dに生成AI機能。文章で3Dテクスチャが作成可能に

    Adobe Substance 3Dに生成AI機能。文章で3Dテクスチャが作成可能に
    sh19910711
    sh19910711 2024/03/22
    "Substance 3D Samplerに「テキストからテクスチャ生成」、Substance 3D Stagerに「背景を生成」のAdobe Firefly搭載機能が追加 / オブジェクトが実際にその場にあるように見える背景を、テキストプロンプトから生成"
  • フォトグラメトリーで3Dモデルを作ってみよう! (撮影〜加工まで)|しろ

    こんにちは、しろです⛄️ 最近フォトグラメトリーで3Dモデルを作るのにハマっています。 元々べ物の写真を撮ったり、絵を描いたりするのが好きなのですが、写真を撮るだけで簡単に物そっくりのモデルができてしまうことに感動して以来、モデルを作りたいがために美味しそうなものを探しに行く毎日です。 べ物ばっかりだね実際に3Dモデルに加工したものはこちら↓ 全面動かして見ることができます。 この記事では、フォトグラメトリーのサービスで3Dを作る方法と、撮影した3DデータをVRゲームで使えるようにBlenderで加工する方法を備忘録でまとめました。 試行錯誤中なのでもっと良い方法があるかもしれないです。 なぜフォトグラメトリーをはじめたのか去年、VRCHATのワールド作成をした際に、ワールドに配置するモデルを制作&探すのにかなり苦労したからです。 デフォルメのモデルであればBlenderで比較的簡

    フォトグラメトリーで3Dモデルを作ってみよう! (撮影〜加工まで)|しろ
    sh19910711
    sh19910711 2024/03/10
    "撮影した3DデータをVRやゲームで使えるようにBlenderで加工する / 必要なもの: お皿 + 無地(白色)がおすすめ + 回転台→あると便利 / 面白い形の野菜、子供の成長記録、旅先の思い出など立体物として残しておける"
  • GPUインスタンスと生成系AIを組み合わせてPlayCanvasで3Dシーンを構築してみました。

    GPUインスタンスと生成系AIを組み合わせてPlayCanvasで3Dシーンを構築してみました。 2023-07-21 2023-07-21 PlayCanvas ChatGPT, Shap-E 455回 0件 はじめに GMOグローバルサイン・ホールディングスの羽賀(@mxcn3)です。ゲームエンジンPlayCanvasの日コミュニティ運営や、テクニカルサポートを担当しております。GPUインスタンスと生成系AIを組み合わせて作成したデモプロジェクトの検証結果を紹介いたします。 経緯 この記事を書くきっかけとなったのは、全社的な生成系AIの取り組み強化を目指し、2023年6月21日に始まった「AI 活用 No.1 企業グループへの取組を加速全パートナー向け、NVIDIA 社最新 GPU 搭載サーバー/ノートパソコンの無償貸出を実施」プログラムにより、GPUインスタンスを借りたことです。

    GPUインスタンスと生成系AIを組み合わせてPlayCanvasで3Dシーンを構築してみました。
    sh19910711
    sh19910711 2024/03/03
    "Function callingを使用して3Dシーンの出力 / PlayCanvas: ウェブ上で3Dコンテンツを作成するためのプラットフォーム / Shap-E: OpenAIが公開しているテキストや画像から3Dモデルを生成するためのツール" 2023
  • nerfstudioでスマホで撮影した動画から三次元データを作ってみる

    こんにちは、初めましての方は初めまして。株式会社 Fusic の瓦です。梅雨に入って降り込める雨を眺めるたびに々とした気持ちになる反面、「引きこもるための口実が出来て良かった」と思ってしまいます。 以前こちらの記事で NeRF という、画像から三次元形状を復元する技術についてのレビュー論文の紹介をしました。この記事では、NeRF を手軽に試せる nerfstudio というツールを使って自分で撮影した動画から物体の三次元形状の復元を行い、さらに点群データとして出力して python でデータを触ってみたいと思います。 nerfstudio の簡単な紹介 Nerfstudio provides a simple API that allows for a simplified end-to-end process of creating, training, and visualizing

    nerfstudioでスマホで撮影した動画から三次元データを作ってみる
    sh19910711
    sh19910711 2023/06/16
    "nerfstudio: NeRF を簡単に扱えるようにするためのツール / ちょうどケーキが冷蔵庫にあった / 可視化には open3d というライブラリを使用しました / 「詳解 3次元点群処理 Pythonによる基礎アルゴリズムの実装」という本"
  • GPUラーメンを作ろう - Qiita

    概要 デモはこちら Gitはこちら Three.jsでラーメンを作ります。 ラーメンの主な成分はGPU Trailですが、こちらは前の記事でベースを作ったのでそちらも参照してください。だいたい同じ内容です。 Three.jsでGPU Trails 今回はこいつにメッシュを貼ってべ応えのあるラーメンに仕上げていきたいと思います。 GPUComputationRendererの初期化 GPUComputationRendererを初期化します。 initComputeRenderer(){ this.computeRenderer = new GPUComputationRenderer(this.length,this.num,this.renderer); let initPositionTex = this.computeRenderer.createTexture(); let in

    GPUラーメンを作ろう - Qiita
    sh19910711
    sh19910711 2023/04/09
    2019 / "GPUラーメンを作ろう / 美味しい麺を作るためにはやはり麺の光沢感というのが必要 / blenderでぽちぽち作ってGLTFで書き出し + gltfの読み込みにはthree-gltf2-loaderを使いました"