Intel RealSenseカメラおよびファイル読み込みに対応した、Unity 6 (URP) ベースのポイントクラウド(点群)ビューア・分析プロジェクトです。
本プロジェクトは、2つの主要な機能によって構成されています。
-
リアルタイム・ビューア (
RsPointCloudRenderer): Intel RealSenseデバイスから直接ストリームを取得し、Compute Shaderによるリアルタイムフィルタリングを経て、Graphics.DrawProceduralで点群を描画します。指定フレーム間のパフォーマンスログ機能も有します。 -
オフライン・アナライザ (
PointCloudViewer): ファイルから点群データをロードし、VoxelGrid(ボクセルグリッド)ベースの空間管理を行います。ノイズ除去、モルフォロジー演算、密度フィルタリング、密度補完などの高度なオフライン処理、およびマウス操作による近傍点検索機能を提供します。
本プロジェクトの実行およびビルドには、以下の環境が必須です。
- Unity:
6000.2.7f2 (2b518236b676)(Unity 6) - URP:
17.2.0(Unity 6 / URP 19 世代) - 必須ライブラリ: Intel RealSense SDK 2.0 (
realsense2.dllが必要です) - Git LFS: リポジトリにGit LFSが設定されているため、
git lfsのインストールが必須です。 - OS: Windows 11 (開発環境)
-
Git LFSのインストール まだインストールしていない場合、Git LFS をインストールします。
-
リポジトリのクローン
git clone [https://github.com/kotetsuOU/PointCloudViewer](https://github.com/kotetsuOU/PointCloudViewer)
-
LFSファイルのプル クローンしたディレクトリに移動し、LFSで管理されている大容量ファイルを取得します。
cd PointCloudViewer git lfs pull -
Unityで開く Unity
6000.2.7f2で、クローンしたPointCloudViewerフォルダをプロジェクトとして開きます。 (初回起動時、Libraryフォルダの再構築に時間がかかる場合があります。) -
実行
Assets/Others/Scenes/NakedEyeDisplay.unityシーンを開き、再生ボタンを押します。
- Intel RealSenseからのリアルタイム・ストリーミング
- Compute Shaderによる高速な座標変換とフィルタリング
Graphics.DrawProceduralによる低オーバーヘッドな描画- 処理時間のフレーム単位でのパフォーマンスロギング
- ファイルからの点群データロード
- VoxelGridベースの高速な空間検索
- マウスカーソル(レイキャスト)による最近傍点・近傍点のハイライト
- 各種フィルタリング(Compute Shader使用):
- 統計的ノイズ除去 (Statistical Outlier Removal)
- モルフォロジー演算 (膨張・収縮)
- Voxel密度ベースのフィルタリング
- 有効Voxelベースの点群補完
- Voxel密度情報のCSVエクスポート機能(Unityエディタ専用)
This project is licensed under the MIT License.
- Taiga Tsutsumi