The naming sheme for the types is CV_<bit-depth>{U|S|F}C<number_of_channels>.
So CV_8UC4 translates to: four channels of unsigned char and CV_16S translates to: 1 channel of signed 2-byte integer.
Of course the topic is handled in the documentation. Here you can find more information.