U-VLM: Hierarchical Vision Language Modeling for Report Generation

Pengcheng Shi, Minghui Zhang, Kehan Song, Jiaqi Liu, Yun Gu +1 more
2/28/2026
cs.CV

Official code: yinghemedical/U-VLM (20 stars, Apache-2.0, last commit 2026-04-30).

Abstract

Automated radiology report generation is key for reducing radiologist workload and improving diagnostic consistency, yet generating accurate reports for 3D medical imaging remains challenging. Existing vision-language models face two limitations: they do not leverage segmentation-pretrained encoders, and they inject visual features only at the input layer of language models, losing multi-scale information. We propose U-VLM, which enables hierarchical vision-language modeling in both training and architecture: (1) progressive training from segmentation to classification to report generation, and (2) multi-layer visual injection that routes U-Net encoder features to corresponding language model layers. Each training stage can leverage different datasets without unified annotations. U-VLM achieves state-of-the-art performance on CT-RATE (F1: 0.414 vs 0.258, BLEU-mean: 0.349 vs 0.305) and AbdomenAtlas 3.0 (F1: 0.624 vs 0.518 for segmentation-based detection) using only a 0.1B decoder trained from scratch, demonstrating that well-designed vision encoder pretraining outweighs the benefits of 7B+ pre-trained language models. Ablation studies show that progressive pretraining significantly improves F1, while multi-layer injection improves BLEU-mean. Code is available at https://github.com/yinghemedical/U-VLM.

View on arXivView PDF

Code Implementations(1)

Apache-2.0

U-VLM: Hierarchical Vision Language Modeling for Report Generation

201Shell, PythonFeb 28, 20265 months agoApache-2.0

Similar Papers

Cite this paper

@article{shi2026uvlm,
  title  = {U-VLM: Hierarchical Vision Language Modeling for Report Generation},
  author = {Pengcheng Shi and Minghui Zhang and Kehan Song and Jiaqi Liu and Yun Gu and Xinglin Zhang},
  year   = {2026},
  eprint = {2603.00479},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2603.00479v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2603.00479.svg)](https://codeofpaper.com/paper/2603.00479)

Discussion