可視化システムのための対話的問合せツールの開発と地震波データへの適用
全文
(2) Queryballlの 適 用 に つ い て 述 べ る .. 2. Queryball Queryball と は , 可 視 化 ア プ リ ケ ー シ ョ ン に お け る 問 合 せ を 行 う た め の 半 透 明 な 球 体 で あ る [1][2] . 我々はそれによって 3 次元空間での直接的操作を行う ことの出来るインタラクションモデルの開発を行って いる.本システムの主な特徴は,半透明な3次元物体 を通した対話的分析環境である.可視化データに対す る 問 合 せ イ ン タ ラ ク シ ョ ン を , GUI な ど に よ り 3 次 元 空間の外側から操作を行うのではなく,3次元空間の 中 で Queryball と い う 問 合 せ 機 能 を 持 つ 半 透 明 な 3 次 元物体を直接オブジェクトに重ね合わせることによっ て操作を行うということである.問合せの適用領域を 急な移動や大きさ変更などに置き換えて変更したり, また複数の問合せによる絞込みなどを複数の Queryball の 重 ね 合 わ せ で 表 現 す る 事 に よ っ て , 3 次 元空間での微妙な操作をより直感的かつ対話的に行う こ と が 可 能 と な る . 例 え ば , MRI ス キ ャ ン で 取 得 さ れ た 頭 部 画 像 の 場 合 ,「 皮 膚 部 分 と 骨 部 分 を 透 明 化 す る 」 と い う 探 索 条 件 お よ び 表 示 方 法 を Queryball に 設 定 し , それを頭部に重ね合わせることで脳が見える状態を作 り 出 す こ と が で き る .ま た「 灰 白 質 部 分 を 透 明 化 す る 」 「 腫 瘍 部 分 を 表 示 す る 」 な ど 複 数 の Queryball を 用 意 し,これらを重ね合わせていくことで部分的にくりぬ かれ重要な部分のみを表示した結果を対話的に作り出 す .こ の よ う に し て VR シ ス テ ム で 可 視 化 結 果 の 積 極 的 な分析を行うことができる.. 図 1: Queryball の 利 用 イ メ ー ジ この特徴を生かすことのできるターゲットアプリ ケーションとして医療分野やシミュレーション工学な ど3次元可視化による直感的な理解と分析を必要とす る分野が挙げられる. Queryball を 実 装 す る に あ た り , 汎 用 的 に 利 用 で き るようにする必要がある.可視化手法は適用するデー タや可視化用途によって非常に多様な手法が提案され ており,これも含めて全て我々が提供するのは好まし くない.そこで我々はモジュール型可視化システムで あ る Visualization Tool Kit (VTK )を 用 い , VTK の 1 モ ジ ュ ー ル と し て Queryball を 提 供 す る [3].モ ジ ュ ー ル型可視化システムとは,数多くの可視化処理をモジ ュールとして用意し,利用者が必要なモジュールをつ なぎ合わせ可視化フローを作り上げることで用途に合. わ せ た 可 視 化 を 実 現 さ せ る シ ス テ ム で あ り , VTK の ほ か に も AVS, Khoros な ど 様 々 な シ ス テ ム が 利 用 さ れ て いる. 今 回 ,我 々 が 用 い る VTK は 可 視 化 の た め の オ ー プ ン ソ ー ス の C++ラ イ ブ ラ リ で あ り , 可 視 化 処 理 の モ ジ ュ ー ル を ク ラ ス ラ イ ブ ラ リ と し て 提 供 し , ユ ー ザ は C++ プログラムで可視化パイプラインを記述する.また, VTK は JAVA, Python, Tcl な ど の 他 言 語 へ の Wrapper を 提供しており,これらの言語で記述することも可能で ある.. 3. 地 震 波 動 場 デ ー タ の 可 視 化 本システムの開発を進めていくためには,実際の可 視化事例に対して適用し,各事例での有用な利用法を 探っていくことが重要である.そこで,我々は地震波 動場のデータを用いてこれを可視化し,さらに波動場 の 対 話 的 分 析 に 有 効 と 思 わ れ る Queryball の 定 義 を 行 った. 本章では,今回用いる地震波データとその可視化に つ い て 述 べ る . 3.1 節 で 今 回 用 い た 地 震 波 動 場 デ ー タ と , そ の 可 視 化 手 法 に つ い て 述 べ , 3.2 節 に て 地 震 波 動場データの適切な可視化手法について述べる.また 3.3 節 で は , 3.2 節 で 述 べ た 可 視 化 手 法 を VTK に て 実 現するための可視化パイプラインを示す.. 3.1. 地 震 波 データ 本 稿 で は Queryball の 適 用 例 と し て , 地 震 波 動 場 の データを用いる.この地震波動データは防災科学技術 研究所による強震動予測計算システムによって計算さ れ た も の で あ る [4].こ の シ ス テ ム は 地 震 災 害 を 引 き 起 こす原因である強震動を予測するために,観測記録に 基づく経験的なアプローチによる予測手法と数値シミ ュレーションを利用した理論的な予測手法を用いてい る. 今回使用したデータは石川県の森本-富樫断層帯 地下構造と,その地点での地震波のシミュレーション のデータである.地下構造データは上記の地点の地質 などの 3 次元データであり,各格子点にはp波速度, s波速度,質量密度,減衰定数の 4 つの要素が格納さ れている.シミュレーションデータはこの地点で地震 が起こった場合の,周辺の地震波動場を各格子点でシ ミュレーションして得られたデータで,地震波の速度 場 の x 方 向 成 分 で あ る .双 方 と も region が 二 つ に 分 か れ て お り Region0 と region1 の グ リ ッ ド 幅 は そ れ ぞ れ 100m , 300m と な っ て い る .. 3.2. 地 震 波 データの視 覚 化 前節で述べた地震波データを視覚化するにあたっ て,ボリュームレンダリングという手法を使った.ボ リュームレンダリングとは,ボクセルと呼ばれる 3 次 元のピクセル要素が 3 次元的に並んだボリューム(3 次元画像)を,ポリゴンに変換せずに直接 2 次元画像 に変換し視覚化する方法である.3 次元空間内に分布 し て い る 特 徴 量 を , 任 意 の 視 線 (レ イ )に 沿 っ て 一 定 間 隔でサンプリングし,その値を加算していくことで最 終的に半透明な画像を生成する.レイに沿ってボリュ ームをサンプリングすることをレイ・キャスティング (ray casting)と い う .ボ リ ュ ー ム レ ン ダ リ ン グ を し て 半透明表示することにより,内部構造まで明らかにす ることができる.この地震波動データの任意の物性値. −28− -2-.
(3) の透明度を可変に可視化し,注目した構造を容易に把 握できるようにするために,この手法を用いた. ボリュームレンダリング法を用いて可視化を行う にあたって,データの値をどのような色や透明度に対 応させるか指定する必要がある.それを指定する方法 として,伝達関数というものがある.伝達関数とはデ ータの値を色や透明度にマッピングするための関数で ある.我々は今回用いる地下構造データおよび地震波 デ ー タ の 値 の 分 布 を 調 べ ,適 切 な 伝 達 関 数 を 設 定 す る . 【地下構造データ】 地 下 構 造 デ ー タ の う ち Vp( p 波 速 度 ) の 分 布 を 図 2 (a)に , 設 定 し た 伝 達 関 数 を 図 2 (b)に 示 す . 今 回 は 値の変化をわかりやすく表示するために,各格子点の 値をHSV色空間のHに対応させる伝達関数を適用し た.これは,色相を対応させることにより値の変化が もっともわかりやすくなるためである.また,地下構 造 は 図 3(b)か ら 分 か る よ う に 層 上 に 値 が 固 ま っ て い る ことがわかる.そこで,物性値ごとに色が明確に分け られるように色相を(データの数+1)等分して最小 値から最大値までの値を各々割り当てている.また, 透明度に関しては初期状態で半透明表示に設定し,後 に値を指定することで透明度を変更することが出来る ようにした. 物性値 格納数 15000000 10000000 5000000 0. 5970502 3496142 2000 3100 0. 1000. 2000. 3000. 11032587 6609226 4500 5350. 4000. 5000. 6000. 3.3. 適 用 する可 視 化 パイプライン 3.2 節 の 方 針 に 基 づ い て 作 成 し た 可 視 化 パ イ プ ラ ン を図4に示す.. 図4 可視化パイプライン 可視化パイプラインとは,データセットを読み込み, 3次元空間に表示するまでのフローをあらわしたもの である.基本的には,データセットをファイル読込モ ジ ュ ー ル (FileReader)で 取 得 し , 何 ら か の Filter を か ま せて可視化に適した状態にデータを変換,そのデータ を Mapper が マ ッ ピ ン グ し ,Actor が 描 画 を 行 う .こ の 例では,まず地震波もしくは地下構造データを FileReader で 読 み 込 む . デ ー タ の 数 値 は 浮 動 小 数 点 型 で 入 っ て い る が ,VTK の レ イ・キ ャ ス テ ィ ン グ 用 ラ イ ブ ラ リ で は ,unsigned char 型 か unsigned short 型 し か 読 み込むことができない.そのため元データをライブラ リ か ら 読 め る 形 に 変 換 し な け れ ば な ら な い .ShiftScale は指定した値を足す、もしくは掛けたり,データ型の 変 換 を 行 う Filter で あ る . VtkVolume は , ボ リ ュ ー ム レ ン ダ リ ン グ 用 の Actor で あ る . ま た 伝 達 関 数 の 設 定 は vtkVolume の プ ロ パ テ ィ と し て 定 義 さ れ て い る . 地震波および地下構造データをこのパイプライン にそって可視化した結果を図5に示す.. 色相. (a) 地 下 構 造 の Vp の 分 布 1 0.5 0 2000. 3100 4500 物性値. 5350. (b) V p に 適 用 し た 達 関 数. 図5可視化結果. 図 2 :地 下 構 造 デ ー タ の 分 布 と 伝 達 関 数 【地震波データ】 地震波データに適用した伝達関数を図3に示す.地 震波データの値は,地下構造とは違い,連続的な値が 分布している.そこで値の最大値と最小値を取ってき て赤と青とし,値にしたがって徐々に色相が変化する ようにした. 0.8. 色相. 0.6 0.4 0.2 0. 最小値(-0.627341). 最高値(0.627341). 図3:地震波データの伝達関数. 4. Queryball の 適 用 本節では地震波データの解析に利用できる Queryball の 適 用 方 法 を 考 察 し ,そ の 一 部 を 実 装 し た . まず,地震波データと地下構造を重ね合わせて表示 することで地下構造と対応してどのように地震がおき ているかを観察することができる. さ ら に Queryball を 適 用 し , 地 下 構 造 及 び 地 震 波 デ ータの一部の透明度や色を変えることでユーザの見た い部分の対応関係がより見やすくなると考えられる. 具体的な例として、我々は次の 3 つの例を挙げ, Queryball の 定 義 を 行 っ た . (1) Queryball と 地 下 構 造 デ ー タ の 重 な っ て い る 部 分 の透明度を高くする: 地下構造データに地震波データを重ねて表示してい るため,そのままでは地震波がとのようになってい るか把握しにくい.そこで,地下構造の透明度を高. −29− -3-.
(4) く す る Queryball を 重 ね 合 わ せ る こ と に よ り , 地 震 波の分布を見やすくすることができる.また Queryball の 外 側 に は 地 下 構 造 デ ー タ が 表 示 さ れ た ままになっているため,地下構造との関連も分かり やすくなると思われる. (2) 地 下 構 造 の 指 定 し た 層 の 透 明 度 を 変 更 す る : Queryball と 重 な っ て い る 部 分 の 地 下 構 造 デ ー タ のうち,ある特定の層だけを透明化する.これによ り透明化した特定の層での地震波の分布を把握する ことができる. (3) 地 下 構 造 デ ー タ の あ る 特 定 の 物 性 値 を 持 つ 格 子 点での地震波データだけ表示する: (1)の Queryball で 領 域 内 の 地 下 構 造 デ ー タ を 全 て 透明化した後,地下構造データの特定の値をもつ格子 点上の地震波データだけを表示する.これによる効果 は (2) と ほ ぼ 同 じ で 有 る 特 定 の 層 の 地 震 波 の 観 察 で あ る が ,(1)の Queryball で 周 囲 の 地 下 構 造 も 取 り 払 っ て いるため,いろいろな角度から地震波データを観察し やすくなる. Queryball の 問 合 せ を 記 述 す る 際 に は 可 視 化 パ イ プ ラ イ ン の 途 中 に Queryball 用 の フ ィ ル タ を 接 続 し , そ のフィルタのプロパティとしてデータセットに対する 問合せ条件文と,問合せに合致したデータセット(お よび合致しないデータセット)に対するパイプライン の 続 き を 定 義 す る . こ の う ち の 例 (2) で 用 い る Queryball は 図 6 の よ う に FileReader の 出 力 を Queryball 用 フ ィ ル タ に 接 続 し , フ ァ イ ル か ら 読 み 込 まれたデータに対して問合せを行う.問合せに合致し た(および合致しない)データセットのパイプライン の 流 れ 自 体 は 同 じ で あ る が , そ れ ぞ れ vtkVolume の プ ロパティとして定義されている伝達関数が異なってお り ,問 合 せ に 合 致 す る も の は 透 明 度 を 0.5 に ,合 致 し ないものは透明度を 1 にしている.. selectMapper=vtk.vtlVolumeRayCastMapper() selectMapper.SetInput(qb.GetDataSet()) sa=vtk.vtkVolume() sa.SetMapper(selectMapper) #元 のデータのプロパティをセットする sa.SetProperty(qb.origator.GetProperty()) #最 初 設 定 してあった透 明 度 の設 定 を初 期 化 する sa.GetProperty().GetScalarOpacity().RemoveAllPoints() #新 しく透 明 度 の設 定 を追 加 する sa.GetProperty().GetScalarOpacity().AddPoints( 0, 0.01) saVisibilityOn() qb.SetRestActor(ra) return def ShowRestData(self): return. 図 7 Queryball の 定 義. 図 8 Queryball の 適 用 結 果. 5. ま と め と 今 後 の 課 題 本 稿 で は ,地 震 波 デ ー タ を ボ リ ュ ー ム レ ン ダ リ ン グ に よ っ て 可 視 化 し ,Querybollと 組 み 合 わ せ る こ と に よ ってユーザによる対話的な操作を実現することごでき た .Queryball適 用 の 結 果 ,こ の デ ー タ の 問 合 せ に は 球 状 ではなく立方体や平面などが適しているのではないか と考えた.今後は,そういったよりデータの性質に適 した問合せの形状の提供や、リアルタイム性の追求を 進めていく方針である.. 図 6 Queryball を 適 用 し た 可 視 化 パ イ プ ラ イ ン VTK で は こ れ ら の 可 視 化 パ イ プ ラ イ ン を C++ま た は JAVA,Python,Tcl な ど の プ ロ グ ラ ミ ン グ 言 語 で 記 述 す る . Queryball の 定 義 を 図 7 に 示 す . ま た 3 次 元 空 間 で こ の Queryball を 適 用 し た 様 子 を 図 8 に 示 す .. 文 献 [1] 渡 辺 知 恵 美:”Queryball:VR シ ス テ ム の た め の 対 話 的 な 問 合 せ モ デ ル ”, 日 本 デ ー タ ベ ー ス 学 会 Letters Vos.2,No.2,pp.25-28,2003 [2] 石 田 愛 : 奈 良 女 子 大 学 ,卒 業 論 文 ,2004 [3] The Visualization ToolKit : http://www.vtk.org/ [4] 地 震 動 予 測 地 図 作 成 手 法 の 研 究 プ ロ ジ ェ ク ト : http://www.j-map.bosai.go.jp/j-map/. class RaiseOpacityQB(QBFilter) def SetQueryStatement(self): self.QueryStatement = "dataset" def ShowSelectData(self,qb):. 謝辞 最 後 に ,本 研 究 を 進 め る に あ た っ て 大 変 お 世 話 に な りました,三菱スペース・ソフトウェア株式会社つく ば事業部の皆様に深く感謝いたします.. −30− -4- E.
(5)
関連したドキュメント
Our goal is to define and examine the “manifold” of all solutions of the system ( ∗ ) using a generalized notion of manifold which, in effect, allows for non-standard solutions..
A major challenge involved in orbit design within the context of the circular restricted three-body problem CR3BP is the organization of the vast set of options that is available
in [Notes on an Integral Inequality, JIPAM, 7(4) (2006), Art.120] and give some answers which extend the results of Boukerrioua-Guezane-Lakoud [On an open question regarding an
Showing the compactness of Poincar´e operator and using a new generalized Gronwall’s inequality with impulse, mixed type integral operators and B-norm given by us, we
Variational iteration method is a powerful and efficient technique in finding exact and approximate solutions for one-dimensional fractional hyperbolic partial differential equations..
This paper presents an investigation into the mechanics of this specific problem and develops an analytical approach that accounts for the effects of geometrical and material data on
Amount of Remuneration, etc. The Company does not pay to Directors who concurrently serve as Executive Officer the remuneration paid to Directors. Therefore, “Number of Persons”
と発話行為(バロール)の関係が,社会構造(システム)とその実践(行