Cancer-Net SCa-Synth
收藏Cancer-Net-SCa-Synth 数据集概述
数据集结构
- data 目录:包含训练数据,推荐使用符号链接。
- jpeg 子目录:包含JPEG格式的图像。
- test 子目录:测试集图像。
- train 子目录:训练集图像。
- test.csv:测试集的元数据CSV文件。
- train.csv:训练集的元数据CSV文件。
- jpeg 子目录:包含JPEG格式的图像。
数据集来源
- ISIC 2020皮肤病变数据集:用于生成图像的原始数据集,可从Kaggle下载。
数据生成
- 生成训练数据集:使用
src/create_training_dataset.py脚本生成训练实例目录。-
示例命令: bash python src/create_training_dataset.py malignant
--source_csv data/train.csv --source_dir data/jpeg/train --target_dir data/generated/train-malignant --subset_size 300bash python src/create_training_dataset.py benign
--source_csv data/train.csv --source_dir data/jpeg/train --target_dir data/generated/train-benign --subset_size 300
-
模型训练
- Stable Diffusion (SD) 模型训练:使用
src/train_dreambooth.py脚本进行训练。- 示例命令: bash accelerate launch src/train_dreambooth.py --pretrained_model_name_or_path=$MODEL_NAME --instance_data_dir=$INSTANCE_DIR --output_dir=$OUTPUT_DIR --instance_prompt="melanoma" --resolution=512 --train_batch_size=1 --gradient_accumulation_steps=1 --learning_rate=5e-6 --lr_scheduler="constant" --lr_warmup_steps=0 --max_train_steps=400
图像生成
- 生成图像:使用
src/generate_images.py脚本生成图像。-
示例命令: bash python src/generate_images.py --pretrained_model_name_or_path="malignant-model" --prompt="melanoma" --num_images=5000 --output_folder="data/jpeg/generated"
bash python src/generate_images.py --pretrained_model_name_or_path="benign-model" --prompt="benign" --num_images="5000" --output_folder="data/jpeg/generated"
-
数据处理
- 数据预处理:使用
src/preprocess_data.py脚本对数据进行标准化处理。-
示例命令: bash python src/preprocess_data.py --raw_folder_location="data/jpeg/train" --csv_location="data/train.csv" --processed_output_folder="data/processed/train"
bash python src/preprocess_data.py --raw_folder_location="data/jpeg/test" --csv_location="data/test.csv" --processed_output_folder="data/processed/test"
bash python src/preprocess_data.py --raw_folder_location="data/jpeg/generated" --csv_location="data/generated.csv" --processed_output_folder="data/processed/generated"
-
模型训练
- MobileNetV2模型训练:使用
src/train_mobilenetv2_model.py脚本进行训练。-
示例命令: bash python src/train_mobilenetv2_model.py --output_folder results/scenarioA --train_csv_location data/train.csv --train_folder_location data/processed/train --test_csv_location data/test.csv --test_folder_location data/processed/test --pretrained_model_name_or_path imagenet
bash python src/train_mobilenetv2_model.py --output_folder results/scenarioB --train_csv_location data/generated.csv --train_folder_location data/processed/generated --test_csv_location data/test.csv --test_folder_location data/processed/test --pretrained_model_name_or_path imagenet
bash python src/train_mobilenetv2_model.py --output_folder results/scenarioC --train_csv_location data/train.csv --train_folder_location data/processed/train --test_csv_location data/test.csv --test_folder_location data/processed/test --pretrained_model_name_or_path results/scenarioB/best_model.weights.h5
-

- 1Cancer-Net SCa-Synth: An Open Access Synthetically Generated 2D Skin Lesion Dataset for Skin Cancer Classification滑铁卢大学 · 2024年



