Practical overview
When it fits
Use CCT when a research or model-development workflow calls for semi-supervised semantic segmentation and you can provide the dataset, Python environment and training configuration.
Who it is for
- Computer-vision researchers studying semi-supervised semantic segmentation.
- Developers who want to train or evaluate segmentation models with limited labeled examples.
- Researchers exploring weak image-level labels or pixel-level labels across multiple domains.
Documented uses
- Train a segmentation model using the CCT method and configurable labeled-example counts.
- Generate pseudo-labels from image-level labels for the documented Pascal VOC workflow.
- Resume training from a saved `.pth` checkpoint.
- Apply a trained model to JPG images and save segmentation predictions as PNG files.
Requirements & limits
The implementation is available in a public GitHub repository under the MIT license.
- This is a code repository that requires a local Python setup, dataset and configuration, not a hosted segmentation interface.
- The documented base dataset is Pascal VOC 2012, augmented with SegmentationClassAug annotations.
- The README lists PyTorch 1.1.0 or later as runnable, and reports testing with PyTorch 1.1.0 and CUDA 10.0.
- Inference depends on both a pretrained checkpoint and the configuration used for training.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Train CCT on Pascal VOC
Prepare the documented Pascal VOC data and configure a CCT training run.
Before you start
- A Python environment with PyTorch, torchvision, PIL, OpenCV and tqdm; dominate is listed among additional modules.
- Pascal VOC 2012 and the additional SegmentationClassAug annotations.
Steps
Download and extract Pascal VOC 2012, then add the SegmentationClassAug annotations to the VOC2012 directory.
Install the repository requirements with the command below.
pip install -r requirements.txtSet
data_dirand other desired parameters inconfigs/config.json.Start training with the command below.
python train.py --config configs/config.json
Expected outcome
Training logs, `.pth` checkpoints and HTML validation results are saved under `saved`.
Guide limitations
- The repository describes Pascal VOC and its annotation augmentation for this workflow.
- The README reports testing on Ubuntu 18.04.3, Python 3.7, PyTorch 1.1.0 and CUDA 10.0; it says recent PyTorch versions from 1.1.0 should be runnable.
Generate segmentation predictions
Run inference on JPG images using a pretrained or trained CCT model.
Before you start
- A pretrained model checkpoint.
- The configuration used for training.
- A folder of JPG images.
Steps
Obtain a pretrained model from the repository’s releases or use a trained checkpoint.
Run the command below, substituting the paths to the configuration, model and image folder.
python inference.py --config config.json --model best_model.pth --images images_folder
Expected outcome
The README says predictions are saved as PNG images in `outputs`.
Guide limitations
- Inference requires a model and its training configuration.
- The documented input is a folder containing JPG images.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 16 October 2026
- Original website title
- yassouali/CCT · Official homepage title · retained in its source language

