  Deep neural networks (DNNs) have witnessed great successes in semantic
segmentation, which requires a large number of labeled data for training. We
present a novel learning framework called Uncertainty guided Cross-head
Co-training (UCC) for semi-supervised semantic segmentation. Our framework
introduces weak and strong augmentations within a shared encoder to achieve
co-training, which naturally combines the benefits of consistency and
self-training. Every segmentation head interacts with its peers and, the weak
augmentation result is used for supervising the strong. The consistency
training samples' diversity can be boosted by Dynamic Cross-Set Copy-Paste
(DCSCP), which also alleviates the distribution mismatch and class imbalance
problems. Moreover, our proposed Uncertainty Guided Re-weight Module (UGRM)
enhances the self-training pseudo labels by suppressing the effect of the
low-quality pseudo labels from its peer via modeling uncertainty. Extensive
experiments on Cityscapes and PASCAL VOC 2012 demonstrate the effectiveness of
our UCC. Our approach significantly outperforms other state-of-the-art
semi-supervised semantic segmentation methods. It achieves 77.17$\%$, 76.49$\%$
mIoU on Cityscapes and PASCAL VOC 2012 datasets respectively under 1/16
protocols, which are +10.1$\%$, +7.91$\%$ better than the supervised baseline.
