statgenetJimu / ShapeMove

ShapeMoveAnalysis Project
1 stars 2 forks source link

[重要]スタートラインはここ:ここまでできるようになろう #20

Open statgenetJimu opened 8 years ago

statgenetJimu commented 8 years ago

複数の多次元画像データを読み込んで4次元描出するアプリ「MITK」につき、みなさんのおかげで次の段階まで到達しました。ここがこのプロジェクトのスタートラインです。各自の作業環境をそのラインに揃えましょう。

1 MITKWorkbenchソース版をCmakeインストールする 2 プラグインをMITKWorkbenchに付け加える

山田はまだここまでできていませんが、昨日の時点で岩崎さんが扱っているManjaro Linuxで成功したとのことです(山田に質問しても仕方ないので岩崎さんに詳細は質問してください)。OSの都合で達成できない人は、研究室からLinuxノートPCの貸し出しも可能ですのでご相談ください。

このあと、3~高次元画像データを読み込んで処理するプラグインを書くのがこのプロジェクトのメインの仕事になります。まずはMITK,ITKが持っているフィルタをかけたり、VTK的オブジェクトを作ったりするプラグインを作ってほしいです。

※ ニコンの画像データの処理アプリNIS-elementsで画像処理をして、その処理結果を画像ファイルとして出力してMITKにつなぐ、という作業もやりたいのですが、そちらはそちらで苦労しています(村田さん)ので、そちらに参入してもらってもよいです。

ternbusty commented 8 years ago

MITKへの新規プラグイン組み込みログを取り敢えず残しておきます。環境はManjaro Linux、MITKのビルドディレクトリは/home/iwasaki/MITK-superbuilt/MITK-build/です。ここでは、segmentationプラグインの組み込みを扱いました。

※おそらく、デフォルトの設定のままでMITKWorkbenchをソースコードからビルドすると、segmentationやcommon.legacyは組み込まれていないものと思われます。この場合、以下の手順に従ってcmakeしようとしても、segmentationプラグインが依存しているcommon.legacyが存在しないというエラーが出ます。これを解決するためには、まずMITKのビルドディレクトリでccmakeを回し、必要なプラグインのオプションをONにしてビルドする必要があります。

1. /home/iwasaki/MITK-superbuilt/MITK-build/bin/にて

./MitkPluginGenerator --plugin-symbolic-name org.mycompany.myplugin --view-name "My View" --project-name "MyProject" --project-app-name "MyApp"

を実行。/tmp/MyProjectというディレクトリができるが、このままでは再起動時に削除されるのでMyProjectを/home/iwasaki/などにコピーしそこで作業を行う

2. 中身の削除&貼り付け /home/iwasaki/MyProject/Plugins/org.mycompany.myplugin/の中身を削除、/home/iwasaki/MITK/Plugins/org.mitk.gui.qt.segmentation(githubからクローンした、ビルド前のディレクトリにあるもの)の中身をすべてコピーして貼り付け ※権限がないなどと言われた場合はRoot権限でやればよい(?)

3. 名前の問題を解決するため、次のようにファイルを書き換える。

4. CMakeする ・/home/iwasaki/MyProject/にて

mkdir plugin-build
cd plugin-build
ccmake ..

configureしたときのオプション画面で、MyProject_USE_SUPERBUILD をOFFにする。 もう一度configureするとMITK_DIRを指定するよう求められるので/home/iwasaki/MITK-superbuilt/MITK-build/を入力、 再度configure、generate。

5. ビルド&実行

make

/home/iwasaki/MyProject/plugin-build/bin/にあるMyAppを実行すればプラグイン入りMitkWorkbenchが立ち上がる

TetsushiNakao commented 8 years ago

岩崎さん

 デフォルトでビルドした後に書いていただいている通りにやってみたのですが、ご指摘の通り「common.legacyが存在しないというエラー」がでました。

 「まずMITKのビルドディレクトリでccmakeを回し、必要なプラグインのオプションをONにしてビルドする」というところですが、これは1からMITKをビルドしなおすということですか?pluginを入れるたびにやるのは大変そうですが、現状仕方ないんですかね。

ternbusty commented 8 years ago

中尾先生 MITKのビルドディレクトリでccmakeを回すのはMITKの再インストールを意味するのではなく、追加のプラグインその他がビルドできます。1からMITKをビルドする必要はおそらくないです。

TetsushiNakao commented 8 years ago

岩崎さん

 ありがとうございます。最初と同じように

Source(元) : /HOME/MITK Binary(先):/HOME/MITK-superbuild

として $ ccmake →optionの選択 →configure →generate $ make -j4

とすると、おっしゃるように上書きされました。 ただ、optionでMITK_BUILD_ALL_PLUGINSをONにしたところ、 org.mitk.gui.qt.common.legacy 以外にも org.mitk.gui.qt.segmentation など全てのpluginが /HOME/MITK-superbuild/MITK-build/Plugins に組み込まれ、MitkWorkbenchを立ち上げると、実際にgui.qtと書いてあるpluginは全て使えるような感じです。OSX(Yosemite)での実行なのでその違いかもしれませんが。

 これはやはり重すぎたりするんでしょうか?そもそも、私のmacはメモリ4GBですが、立ち上げただけで100%に迫るメモリを食ってしまいます(これはインストール版でも、pluginを入れる前でも同様でしたが)

2015-12-20 22 33 20

ternbusty commented 8 years ago

中尾先生 ・一応windowsとlinuxで確認してみたところ、プラグインを入れた状態でもメモリ十数%しか使っていませんでした。Macだと重くなるんでしょうか(?) ・上で私がsegmentationを入れているログは、今後新規プラグインの組み込みをするにあたって、ソースコードをもとにプラグインを手動でビルドしてみる、ということの実験です(ので、実際、組み込んでみるプラグインは何でもよいです)。 ・私もsegmentationをMITKにインストールしてから今回の作業を行ったので、最終的にはsegmentationプラグインが2つ入っている状態になりました(名前は違いますが)

TetsushiNakao commented 8 years ago

岩崎さん  理解しました。ありがとうございます。