5
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

CTのDICOMデータからOsiriXでobjデータを書き出し、Unityを使ってiPhoneでARとして表現する方法

Last updated at Posted at 2021-09-21

医療とAR今後熱いと思う

医療者向けプログラミングスクール『ものづくり医療センター(通称もいせん)』を立ち上げた整形外科の北城です。
今回は、表題のようにCTをAR環境で表現することに無料で成功したので、作り方をまとめておきます。
完成したものは以下の通りです。

早速作り方を以下に示します。

環境

PC MacOS Big Sur ver. 11.5.2
OsiriX Lite
Unity 2020.1.17f1

OsiriXの設定

OsiriXとは無料で医療画像に用いられるDICOMデータを見ることができる、非常に便利なツールです。

Objectデータの作成方法

患者さんのCTデータをOsiriXに取り込みボリュームレンダリングで表示
Image from Gyazo

Image from Gyazo

不要な部分をカットツールを用いて削除
Image from Gyazo

その後、サーフェイスレンダリングを選択
Image from Gyazo

選択時に骨条件になるようにCT値を設定(約 280ぐらい)
Image from Gyazo

出来上がったサーフェイスレンダリングをobj形式で書き出し
Image from Gyazo

Unityの設定

基本的なAR環境の作成については下記の記事を参考に進めれば完成します。
UnityのARFoundationでAR空間に豆腐を召喚する
また、Build関係の設定はこちらの【IOS】で「AR FOUNDATION」を使用したARアプリの作り方を参考に進めました。
ここでは書き出したCTのobjデータの処理方法についてまとめます。

Objectデータの処理

取り込んだobjデータをシーンのヒエラルキーに取り込み、子要素のgrp9を開き、Mesh Colliderコンポーネントを追加します。
Image from Gyazo

このgrp9をboneobjなどに名前を変更し、prefab化します。
Image from Gyazo

Objectデータの起点の位置に注意!

あとは先程のAR環境構築の記事に沿って環境を構築し、上prefab化したobjデータをAR環境に表現します。
ここで注意するべきことは、objectデータの起点の位置、です。
起点の位置が思った場所よりもかなり遠くに位置してしまうために、設定をミスるととんでもない位置に画像が表現されるため、ARで見えなくなってしまいます。
ポイントは、起点となるオブジェクト(プレーンオブジェクトなど)を作成し、その子要素として先程作成したobjectデータを配置し、起点となるオブジェクトとの位置関係を意識して配置することです。

慣れれば、30分程度で医療AR環境が自作できます。

5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?