Home

Awesome

Delving into Universal Lesion Segmentation: Method, Dataset, and Benchmark

This paper has been published in ECCV 2022.

This code is licensed for non-commerical research purpose only.

Introduction

Most efforts on lesion segmentation from CT slices focus on one specific lesion type. However, universal and multi-category lesion segmentation is more important because the diagnoses of different body parts are usually correlated and carried out simultaneously. The existing universal lesion segmentation methods are weakly-supervised due to the lack of pixel-level annotation data. To bring this field into the fully-supervised era, we establish a large-scale universal lesion segmentation dataset, SegLesion. We also propose a baseline method for this task. Considering that it is easy to encode CT slices owing to the limited CT scenarios, we propose a Knowledge Embedding Module (KEM) to adapt the concept of dictionary learning for this task. Specifically, KEM first learns the knowledge encoding of CT slices and then embeds the learned knowledge encoding into the deep features of a CT slice to increase the distinguishability. With KEM incorporated, a Knowledge Embedding Network (KEN) is designed for universal lesion segmentation. To extensively compare KEN to previous segmentation methods, we build a large benchmark for SegLesion. KEN achieves state-of-the-art performance and can thus serve as a strong baseline for future research.

KEN SegLesion

SegLesion

Citations

If you are using the code/model provided here in a publication, please consider citing:

@inproceedings{qiu2022delving,
title={Delving into Universal Lesion Segmentation: Method, Dataset, and Benchmark},
author={Qiu, Yu and Jing, Xu},
journal={Proceedings of the European conference on computer vision (ECCV)},
year={2022}
}

Requirements

The code is built with the following dependencies:

Data Preparation

The dataset SegLesion is coming soon.

The SegLesion dataset is organized into the following tree structure:

dataset
│
└───images
└───masks
└───val__masks
└───test_masks
└───train_set.txt
└───val_set.txt
└───test_set.txt
└───test_set_type.txt
└───class_set.txt
'''

Testing

The pretrained model of KEN can be downloaded:

Run the following scripts to test the model:

./FastSal/test.sh [--pretrained ./results_mod50/KEN_ResNet.pth]
                [--file_list test_set.txt]
                [--savedir ./output/]

Evaluate

Run the following scripts to evaluate the model:

python evaluate.py

Training

Run the following scripts to train the model:

./FastSal/train_resnet.sh [--cached_data_file ./duts_train.p]
                [--max_epochs 50]
                [--num_workers 4]
                [--batch_size 16]
                [--itersize 1]
                [--savedir ./results]
                [--lr_mode poly]
                [--lr 1e-4]  

Contact

For any questions, please contact me via e-mail: yqiu@mail.nankai.edu.cn.