ロバストセグメンテーションのための束理論的視点
これは、A-Sheaf-Theoretic-Perspective-for-Robust-Segmentation に関する私たちの取り組みのリポジトリです。
説明
このリポジトリには、離散潜在空間で形状等分散を強制し、出力セグメンテーション マップのトポロジの構成性をモデル化し、構成ベースの損失を強制する細胞層理論を使用することにより、ロバストなセグメンテーション モデルをトレーニングするためのコードが含まれています (詳細については論文を参照)。このコードベースには、モデルのトレーニング コードとモデル コードが含まれています。さまざまなタイプのモデルをご用意しております。論文で説明したように、対照的な損失を使用して等分散性を強制するモデルがあります。対比ベース損失を使用して、二面体グループ (D4) に等分散性を適用します。また、モデル内の畳み込みカーネルを正規または既約グループ表現に制約することにより、等分散性を強制します。
はじめる
依存関係
- python=3.7の環境を用意し、依存関係を「pip install -rrequirements.txt」コマンドで取得してください。
データセット
- 3 つの csv ファイル (train.csv、validation.csv、test.csv) を作成する必要があります。 train.csv には、画像へのパスと対応するセグメンテーションを含む 3 つの列 ('t2image'、'adcimage'、't2label') が必要です。 validation.csv と test.csv には、画像へのパスと対応するセグメンテーションを含む 2 つの列 ('t2image'、't2label') が必要です。 niftiフォーマットに対応しております。 data/Prostate に前立腺データの例を示します。
- 必要に応じて前処理された、選択したデータセットでトレーニングすることを自由に選択できます。前立腺データセット用のデータローダーを提供しています。
- 前立腺: 前立腺データセットは、NCI-ISBI13 チャレンジおよび十種競技データセットから取得されます。
トレーニング/テスト。
- トレーニング/テスト スクリプトを main.py と一緒に実行できます。トレーニング、検証、テストの CSV ファイルへのパスと、結果と画像を保存するための出力ディレクトリを入力する必要があります。 main.py にあるデータセットに従って他のハイパーパラメータを調整する必要があります。 「ShapeVQUnet」、「HybridShapeVQUnet」、「HybridSE3VQUnet」、「3DSE3VQUnet」の 4 つのモデルがあります。 「ShapeVQUnet」および「HybridShapeVQUnet」モデルは、対比ベースの損失を使用して、潜在空間を D4 グループの等変形状空間に制約します。 'ShapeVQUnet' または 'HybridShapeVQUnet' モデルを選択する場合は引数 --contrastive True を選択し、それ以外の場合は --contrastive False を選択する必要があります。 「ShapeVQUnet」は 3D モデルですが、「HybridShapeVQUnet」は 2D/3D モデルです。 「HybridSE3VQUnet」および「3DSE3VQUnet」モデルは、畳み込みカーネルを SE3 グループに制約します。 'HybridSE3VQUnet' と '3DSE3VQUnet' のいずれかを選択した場合は、通常 (' Regular') グループ表現 ('Irreducible') グループ表現 (--repr) のどちらを使用するかを選択する必要があります。通常の (「レギュラー」) グループ表現を選択した場合は、グループ (--group) を選択する必要があります。たとえば、--group 4 は D4 グループと等価です。 「HybridSE3VQUnet」および「3DSE3VQUnet」モデルを選択した場合は、グループ内の各要素の多重度 (--multiplicity) も選択する必要があります。すべてのモデルで、細胞層ベースの損失 (--topo_epoch) を含めるエポック数も選択する必要があります。以下は前立腺データの例です。
python main.py --modeltype 'HybridShapeVQUnet' --contrastive True --topo_epoch 25 --training_data '.../Sheaves_for_Segmentation/data/Prostate/train.csv' --validation_data '.../Sheaves_for_Segmentation/data/Prostate/validation.csv' --test_data '.../Sheaves_for_Segmentation/data/Prostate/test.csv', --output_directory '.../Sheaves_for_Segmentation/data/Prostate/output/'
著者
寄稿者の名前と連絡先情報
アインカラン サンティラセカラム ([email protected])
参考文献