Image/object classification (or recognition)
(Multi-class) image/object classification (or recognition) typically refers to the task of assigning one label to an image, so we typically assume that there's only one main object in the image. The multi-class only refers to the fact that we have more than 2 possible classes or labels (if we had only 2, this would be binary classification), but note that this does not mean that we have more than one main object in each image. So, in this task, we are not interested in labelling each pixel, but to label the whole image, so, in this sense, this is a sparse classification task. An example of a dataset that is used for image classification is MNIST, where there's only one object (a number) per image. Here's a picture that shows 3 MNIST images, each of them has only one associated label (below), which corresponds to the number in the image.
Semantic segmentation
Semantic segmentation is the task of classifying each pixel in an image (or at least groups of pixels), so that objects of different classes have their pixels labelled differently. Instance segmentation is a similar task, but we additionally want to differentiate between different objects of the same class, so we assume that there could be more than one object in the image and there could even be more objects of the same type/label. Given that we label pixels, this is a dense classification task.
Here's an example of an image that has been segmented, i.e. pixels associated with the same object (e.g. the umbrella) have the same label (color).
Object detection
So, in this way, semantic (or instance) segmentation is more similar to object detection, which is both a classification and regression task, because we want both to classify one or more objects in the image, but we also want to draw a bounding box around them (and this is often solved as a regression problem). The reason why we draw a bounding box around each object is that, as opposed to image/object classification, there can be more than one object in the image, so we need a way to identify the locations of the objects. As opposed to semantic/instance segmentation, this is also a sparse classification task.
Here's an image to which object detection has been applied.