[Groovy][QuPath] 章5 自動化、バッチ処理
※ 画像解析ソフトQuPathに関する本を執筆中。完成した章から公開していく。
Workflow
QuPathではすべての解析記録が自動保存されているだけでなく、一連をワークフローとして書き出して別の画像に同じ操作を行うことができる。
例えば、画像を開いて既に作ったRegion*クラスのアノテーションを作成するPixel classifierを使ってエリアアノテーションを作成するとする。
すると、左ウィンドウのWorkflow
タブにPixel classifier create annotationとあるように実行内容が記録されているのが分かる。
ワークフローは明示的にマウス操作で行った作業でなくとも、内容を再現するために必要な記録が行われている。
Set image type, Set color deconvolution stainsは画像を開く際に最初に行われている作業で、すでに画像タイプをHEなどのように設定済みの場合でもワークフローとしてはこの2つは毎回行われる。
Reset selectionは特に明示的には行っていないが、Pixel classifier create annotationsの対象を画像全体に行っているために一旦Annotationの選択状態を解除しているようである。
Create script
左下のCreate script
から一連の作業記録をQuPathスクリプトとして書き出すことができる。
Script Editor
ウィンドウが立ち上がり、Workflowの内容がスクリプト化される。
重要なスクリプトの場合、File
> Save as
などで保存しておけばよい。拡張子はgroovyである。
Script Editorは上部メニューのAutomate
> Show script editor
から呼び出せる。
保存したgroovyファイルはFile
> Open
から開くことができる。
batch処理
Script Editorで開いたスクリプトを使えば、QuPath project内の他の画像に同じ作業を一括で行うことができる。
まずはRun
> Run for project
を選択する。
そして、対象とする画像を選択する。画像を選択して><で移動するか、>> <<で全画像を移動する。
OKを押すと、他の画像へのBatch処理が進行する。
処理後の画像を開いてみると、同じパラメーターでRegion* annotationが作成されているのが確認できる。
Create workflow
左下のCreate workflow
から実行内容のパラメーターを確認することができる。
開かれたウィンドウで1つの作業記録を選択すると、そのパラメーターやスクリプトでのコマンドが表示される。
Set color deconvolution stainsを選択した画面
Workflowでは行った殆どの作業が記録されてしまうため、他の画像に実行するには不要な箇所も出てくる。
Create script
では全作業を一括でスクリプト化してしまうが、Create workflow
では実際に必要な作業のみに編集することができる。
右クリックを押すと、不要な作業を削除したり、順序を入れ替えたり、その作業のコマンドのみをコピーすることができる。
Workflow完成後は同ウィンドウ内のCreate script
を押して、groovyスクリプト化する。
Discussion