A Diffusion-Driven Fine-Grained Nodule Synthesis Framework for Enhanced Lung Nodule Detection from Chest Radiographs
Organizations: Qure.ai, India · Indian Institute of Technology, Bombay
Abstract
Early detection of lung cancer in chest radiographs (CXRs) is crucial for improving patient outcomes, yet nodule detection remains challenging due to their subtle appearance and variability in radiological characteristics like size, texture, and boundary. For robust analysis, this diversity must be well represented in training datasets for deep learning based Computer-Assisted Diagnosis (CAD) systems. However, assembling such datasets is costly and often impractical, motivating the need for realistic synthetic data generation. Existing methods lack fine-grained control over synthetic nodule generation, limiting their utility in addressing data scarcity. This paper proposes a novel diffusion-based framework with low-rank adaptation (LoRA) adapters for characteristic controlled nodule synthesis on CXRs. We begin by addressing size and shape control through nodule mask conditioned training of the base diffusion model. To achieve individual characteristic control, we train separate LoRA modules, each dedicated to a specific radiological feature. However, since nodules rarely exhibit isolated characteristics, effective multi-characteristic control requires a balanced integration of features. We address this by leveraging the dynamic composability of LoRAs and revisiting existing merging strategies. Building on this, we identify two key issues, overlapping attention regions and non-orthogonal parameter spaces. To overcome these limitations, we introduce a novel orthogonality loss term during LoRA composition training. Extensive experiments on both in-house and public datasets demonstrate improved downstream nodule detection. Radiologist evaluations confirm the fine-grained controllability of our generated nodules, and across multiple quantitative metrics, our method surpasses existing nodule generation approaches for CXRs.
Figures & tables
| In-house | JSRT | CheX-ray14 | |||
|---|---|---|---|---|---|
| Diffusion Trainset | Downstream Trainset | Testset | Testset | Testset | |
| Total samples | 1,100,000 | 100,000 | 12,000 | 247 | 500 |
| Nodule samples | 28,000 | 10,000 | 2,000 | 154 | 66 |
| Nodule characteristic | Agreement (%) |
|---|---|
| Calcification | 80 |
| Regular border | 90 |
| Irregular border | 100 |
| Homogeneous texture | 90 |
| Inhomogeneous texture | 100 |
| Train Data | In-house | JSRT | CheX-ray14 | |||
|---|---|---|---|---|---|---|
| AUC | IoU | AUC | IoU | AUC | IoU | |
| 10k real | 0.9705 | 0.3090 | 0.8560 | 0.2475 | 0.9008 | 0.5285 |
| 10k real + 2k syn | 0.9788 | 0.3222 | 0.8639 | 0.2743 | 0.9168 | 0.5293 |
| 10k real + 4k syn | 0.9780 | 0.3197 | 0.8780 | 0.2589 | 0.9245 | 0.5500 |
| 10k real + 6k syn | 0.9802 | 0.3247 | 0.8940 | 0.2894 | 0.9315 | 0.5750 |
| 10k real + 8k syn | 0.9796 | 0.3274 | 0.8864 | 0.2923 | 0.9341 | 0.5954 |
| Characteristic | 5k Real | 5k Real + 2k fake |
|---|---|---|
| Nodule | 0.2696 | 0.3002 |
| Calcification | 0.2879 | 0.3199 |
| Regular Border | 0.2941 | 0.3301 |
| Irregular Border | 0.2733 | 0.3080 |
| Homogeneous | 0.2695 | 0.3050 |
| Inhomogeneous | 0.2706 | 0.2963 |
| Augmentation | JSRT | ChestX-ray14 |
|---|---|---|
| 10k real | 0.8560 | 0.9008 |
| 10k real + 10k ACGAN | 0.8780 | 0.9281 |
| 10k real + 10k ReACGAN | 0.8808 | 0.9259 |
| 10k real + 10k CRFILL | 0.8786 | 0.9296 |
| 10k real + 10k DiT-XL/2(Ours) | 0.9023 | 0.9318 |
Appendix figures & tables12 assets
Supplementary material from the paper’s appendix.
Appendix
| Parameter | Value |
|---|---|
| Model type | DiT-XL/2 |
| Input size (latent) | 32 |
| Patch size | 2 |
| Hidden size | 1152 |
| Depth | 28 |
| Attention heads | 16 |
| Parameter | Value |
|---|---|
| Rank ( ) | 32 |
| Scaling | 1.0 |
| Training method | noxattn |
| Epochs | 150 |
| Batch size | 200 |
| Learning rate |
| Parameter | Value |
|---|---|
| Temperature | 0.07 |
| Margin | 1.0 |
| Feature dimension | 1152 |
| Pooling | Mean pooling |
| Feature normalization | L2 norm |
| Positive pairs | Subtlety-based grouping |
| Parameter | Value |
|---|---|
| Ortho weight | 0.5 |
| Loss type | Frobenius norm |
| Target | Identity matrix |
| Adapter pairs | (calcified, homogeneous), (irregular, homogeneous), (calcified, irregular) |
| Training strategy | Alternating batches + joint optimization |
| Gradient accumulation | 2 |
| Component | Dimensions | Per Block | Total |
|---|---|---|---|
| QKV Adapters | 147,456 | 4,128,768 | |
| Proj Adapters | 73,728 | 2,064,384 | |
| Total per Adapter | – | 221,184 | 6,193,152 |
| Train | S5 | S4 | S3 | S2 | S1 |
|---|---|---|---|---|---|
| 10k Real | 100% | 96% | 70% | 69% | 40% |
| 10k Real + 12k Fake | 100% | 100% | 76% | 76% | 52% |
| Method | Full | Masked | ||||
|---|---|---|---|---|---|---|
| PSNR | SSIM | FID | PSNR | SSIM | FID | |
| ACGAN | 37.18 | 0.916 | 0.534 | 26.51 | 0.768 | 0.831 |
| ReACGAN | 37.44 | 0.916 | 0.604 | 27.54 | 0.786 | 1.227 |
| CR-Fill | 37.93 | 0.918 | 0.522 | 29.50 | 0.830 | 0.781 |
| DiT-XL/2 (Ours) | 38.74 | 0.920 | 0.390 | 34.26 | 0.892 | 0.475 |
| Characteristic | CFG Control (FID) | LoRA Control (FID) |
|---|---|---|
| Calcification | 15.87 1.51 | 2.29 0.09 |
| Regular Border | 4.04 0.84 | 1.96 0.12 |
| Irregular Border | 4.19 0.59 | 2.90 0.03 |
| Homogeneous Texture | 8.48 1.50 | 5.71 0.36 |
| Inhomogeneous Texture | 12.58 1.94 | 8.13 0.28 |
| Metric | Real images | Synthetic images | ||
|---|---|---|---|---|
| Rate | 95% CI | Rate | 95% CI | |
| Pooled “Looks real” rate | 0.867 | 0.700 | ||
| Majority-vote “Looks real” rate | 0.900 | 0.800 | ||
| Characteristic | Pooled “Yes” rate | Majority-vote “Yes” rate | ||
|---|---|---|---|---|
| Rate (k/n) | 95% CI | Rate (k/n) | 95% CI | |
| Homogeneous | ||||
| Inhomogeneous | ||||
| Irregular border | ||||
| Regular border | ||||
| Calcified | ||||
| Metric | Result (k/n) | Accuracy | 95% CI |
|---|---|---|---|
| Pooled | |||
| Majority-vote | |||
| Comparison | Separate | Two Adapters (Frobenius) | % Change |
|---|---|---|---|
| Calcified vs. Homogeneous | 329.01 | 430.89 | +30.97% |
| Homogeneous vs. Calcified | 388.23 | 502.42 | +29.41% |
| Irregular vs. Homogeneous | 539.28 | 711.84 | +32.00% |
| Homogeneous vs. Irregular | 388.23 | 803.59 | +106.99% |