Machine learning for computer vision has drastically improved model performance for many image based tasks such as semantic segmentation, denoising and image classification. However, most machine learning approaches are based on supervised learning with requires a large and representative labelled dataset. Collecting labelled data for is time consuming, expensive and may require expert technical knowledge and is often scarce in real world machine learning problems. This has motivated the use of semi-supervised methods which use the principles of semi-supervised learning to simultaneously extract information from a combination of labelled and unlabelled data. In this project we have both developed new approaches for semi-supervised learning and applied them in both the hyperspectral and medical image setting. We have shown that from using semi-supervised we are able to match or outperform supervised approaches whilst using a fraction of the labelled data.