Convolutional Neural Networks (CNNs) are a class of deep neural networks primarily used for analyzing visual imagery, characterized by their ability to automatically and adaptively learn spatial hierarchies of features through backpropagation by using multiple building blocks, such as convolution layers, pooling layers, and fully connected layers. They are particularly effective in applications like image and video recognition, image classification, medical image analysis, and self-driving cars due to their high accuracy and ability to capture spatial and temporal dependencies in data.