Mugichoko's blog

Mugichoko’s blog

プログラミングを中心としたメモ書き.

プログラミング

RGB-D SLAMを実装する #1

目標 アルゴリズム 参考文献 目標 KellerらのRGB-D SLAM[1]が実装したい!と思い立ったので実装していく,というモチベーションの日誌.今回が初稿.ちょっとずつ実装していく.今回は,論文読解とアルゴリズムの整理を行う. アルゴリズム 論文を読んで,今…

GLSL #11: Bilateral Filter

目標 実装環境 参考サイト main.cpp bilateralFilter.comp 結果 目標 前回(下記参照)の予告通り,Bilateral Filterを実装する. mugichoko.hatenablog.com 実装環境 Windows 10 64bit Visual Studio 2015 GLEW 3.2.1 設定方法はこちらを参照 GLEW 1.13.0 …

GLSL #10: RGB-D画像からの頂点・法線マップ生成

目標 実装環境 処理内容 流れ 頂点マップの計算 法線マップの計算 サンプルプログラム main.cpp calcVertMap.comp calcNormMap.comp 結果 参考文献 目標 前回(下記参照)は,Compute Shaderを使って,3DCGを描画した際に生成されるZバッファの線形化を行う…

ドロネー三角形分割:三角形に所属する各点のIDを取得

目標 実装環境 プログラム 実行結果 目標 前回ランダムに生成した2次元点を入力として,ドロネー三角形分割を行い,結果を描画した. 今回は,そこで用いたFade2Dを利用して,各三角形にどの2次元点が使われたかを特定する方法を実装する. mugichoko.hatena…

Python 3.6 + OpenCV 3.2 on Windows 10 64-bit

目標 実装環境 遭遇した問題 解決策 解決策1:conda-forge 参考 解決策2:pipと.whil 参考 解決策3:Python3.5へのダウングレード(未確認) テストコード 実行結果 目標 Python版OpenCVを使ったプログラミングを,Visual Studioでできるようにする. 今回は…

GLSL #9: Zバッファの線形化

目標 Zバッファの線形化とは? 実装環境 レンダリングの流れ サンプルプログラム main.cpp zbuff.comp 結果 目標 前回(下記参照)までの実装を少し変更して,Compute Shaderを使って,3DCGを描画した際に生成されるZバッファの線形化を行うプログラムを作成…

GLSLのCompute ShaderでZバッファを読み込む際のトラブルと解決方法

問題 GLSLのCompute ShaderでZバッファを読み込みたかったのだが,下記のリンクと同じ問題に遭遇した. stackoverflow.com 簡単には,Zバッファを可視化したところ,ワイヤーフレームが強調された用な結果が出力されてしまう問題だ. 結果的に,私の場合は単…

GLSL #8: Compute Shaderを使った画像処理

目標 実装環境 レンダリングの流れ サンプルプログラム main.cpp sample.comp 結果 目標 前回(下記参照)までの実装を組み合わせて用いることで,3DCGを描画した結果に対してCompute Shaderを使って画像処理(Sobelフィルタによるエッジ検出)を行うプログ…

GLSL #7: Compute Shader

目標 実装環境 レンダリングの流れ サンプルプログラム shaderUtil.h shaderUtil.cpp main.cpp sample.comp 結果 目標 こちらの内容を参考に,とりあえずCompute Shaderが動作することを確認する. 尚,今回実装する内容は,前回(下記参照)までの実装に基…

GLSL #6: Frame Buffer Object (FBO)

目標 実装環境 レンダリングの流れと結果 サンプルプログラム modelTex.h modelTex.cpp fbo.h fbo.cpp main.cpp 目標 前回(下記参照)は,テクスチャマッピングを行うプログラムを作成しました. 今回は,そのプログラムをベースに,FBOに描画した結果を四…

GLSL #5: テクスチャマッピング

目標 実装環境 DevILのダウンロード Visual Studioのプロジェクト作成 サンプルプログラム model.h model.cpp modelTex.h modelTex.cpp main.cpp modelTex.vert modelTex.vert 結果 目標 前回のプログラムをベースに,今度はテクスチャマッピングを実装する…

GLSL #4: シェーダを使った三角形の描画

目標 実装環境 GLMのダウンロード Visual Studioのプロジェクト作成 サンプルプログラム window.h window.cpp shaderUtil.h shaderUtil.cpp main.cpp simple.vert simple.frag 結果 目標 前回作成したプログラム(下記参照)の固定パイプラインによる描画部…

GLSL #3: 固定パイプラインを使った三角形の描画

目標 実装環境 GLEWのダウンロード Visual Studioのプロジェクト作成 サンプルプログラム window.h window.cpp main.cpp 結果 目標 GLFWを使って作成したウィンドウ(下記の前回記事参照)に,固定パイプラインを使って三角形を描画する.ここで初めてGLEWを…

GLSL #2: コールバック関数の登録

目標 実装環境 サンプルプログラム window.h window.cpp main.cpp 結果 目標 GLFWを使って作成したウィンドウ(下記の前回記事参照)にコールバック関数を用いた,エラーハンドリング,キー操作,スクロール操作を追加する. mugichoko.hatenablog.com 実装…

GLSL #1: Window作成

目標 実装環境 GLFWのダウンロード Visual Studioのプロジェクト作成 サンプルプログラム window.h window.cpp main.cpp 結果 目標 GLFWを使ってウィンドウを作る*1. 実装環境 GLEW 3.2.1 Windows 10 64bit Visual Studio 2015 GLFWのダウンロード ここから…

ドロネー三角形分割:描画

目標 実装環境 OpenCV Subdiv2D Visual Studioの設定 プログラム 実行結果 Fade2D ダウンロードとインストール Visual Studioのプロジェクト作成 プログラム 実行結果 目標 ランダムに生成した2次元点を入力として,ドロネー三角形分割を行い,結果を描画す…

はじめてのVTK

目標 実装環境 VTKのダウンロードとビルド Visual Studioのプロジェクト作成 サンプルプログラムの実行 結果 目標 とりあえずVisual StudioでVTKを扱えるようになる. 実装環境 VTK 7.1.1 Windows 10 64bit Visual Studio 2015 VTKのダウンロードとビルド こ…

PCL + RGBDカメラ

目標 実装環境 プログラム 結果 目標 Microsoft KinectやASUS XtionといったRGBDカメラを使って取得できるRGBD画像から生成した色付き点群を,PCLのウィンドウ上に描画する. 尚,前回作ったVisual Studioのプロジェクトを基にして実装する.前回の記事は以…

はじめてのPCL

目標 実装環境 PCLのダウンロード Visual Studioのプロジェクト作成 サンプルプログラムの実行 結果 目標 とりあえずVisual StudioでPCLを扱えるようになる. 実装環境 PCL 1.8.0 Windows 10 64bit Visual Studio 2015 PCLのダウンロード ここからインストー…