1. A computing device comprising: a processing unit; and memory; the computing device configured to perform operations for multi-stage image classification, the operations comprising: performing a first classification stage, comprising: calculating, for an image, a relative entropy result for the image; and determining an overall classification for the image based on the relative entropy result, wherein the overall classification is one of a plurality of classification types; performing a second classification stage, comprising: obtaining a classification model based on the overall classification for the image; dividing the image into a plurality of blocks; and for each block of the plurality of blocks: calculating a plurality of features for the block, comprising calculating at least one histogram feature for the block, and calculating at least one texture feature for the block, wherein the at least one texture feature comprises a mean average difference feature, and wherein the at least one histogram feature is at least one of: a red channel histogram feature; a green channel histogram feature; a blue channel histogram feature; a luminance channel histogram feature; and one or more chroma channel histogram features; and classifying the block using the classification model and the plurality of features, wherein the block is classified into one of the plurality of classification types; and encoding the plurality of blocks using one or more encoding techniques, wherein the one or more encoding techniques are selected based on the classification types of the plurality of blocks.