CSC-coloer space convert,也有的地方叫CSM(color space matrix),通过一些线性变化,将原本图像的颜色空间转换到其他的颜色空间, 常见的有RGB2YUV,RGB2SV等等,如下图是MATLAB文档中对CSC的定义

但是通常在ISP的Pipeline中用到的CSC转换只有RGB2YUV,然后有一些主控(很多没有这个)设计的时候在CCM之后会有一个RGB2HSV的转换,以便进一步通过色度和饱和度两个层面对颜色做进一步的处理。
那么ISP要实现RGB2YUV转换就必定会有一个转换公式,通常在网上查这个公式,可能会查到不同的转换公式,这是因为各个转换公式的的标准不同,通常我们采用BT的标准,也就是国际电信联盟指定的标准,如下图分别罗列了BT601,BT709和BT2020三个标准,具体在选用的时候根据需要选择一个就行了。
BT601

BT709

BT2020

以上就是三个标准给出的转换公式的部分截图,感兴趣的同学也可自行上网搜完整的文档学习。

针对为什么pipeline中需要这么一个转换将RGB转为YUV,个人总结为三点:

YUV中Y表示亮度信号,UV表示色度信号也就是色差信息,通常查资料还会出现YCrCb这种信号,其实YCrCb是数字信号时代定义的一种色差信号,是通过YUV加上一定程度的offset得到的,使得色差数据都大于0,大多数情况下已经不对二者进行区分了,现在提到的YUV其实都是指的YCrCb格式,只是习惯原因通常还是会直接说是YUV。
YUV格式有很多种类,如下图是微软WindowsAPI文档中对YUV的一些宏定义

图中的那些数据格式都是YUV格式,而它们各自的区别主要就是采样比和信号的排列循序。

如图是三种最常见的采样比例,黑色实心点为Y分量,空心的圆圈为UV分量:
其实从定义看YUV420可能叫411更好理解,但是为啥又叫420呢?因为还有一种基本没见过(也可能是作者见识短)的格式叫YUV411,他和420一样也是4个Y对应一个UV,不同的是411只在水平方向对UV降采样,因为基本不用就不做过多介绍,感兴趣的同学可以自行上网搜索。
从微软文档中可以看到有一个YUY2的格式,其实这种格式又叫YUYV格式是一种422的采样格式,然后还有一种YVYU的格式也是422采样,两者又有什么不同呢,其实就是信号排列不同,比如在内存中YUYV格式存储为Y1U1Y2V1Y3U2Y4V2而YVYU则存储为Y1V1Y2U1Y3V2Y3U2这种方式都是Y和UV交替存储,还有一种常见的存储方式就是先将所有的Y分量存储好,然后再去存储UV分量,当时后续的UV分量的排列又会有不同的变化。这种排列组合方式很多也就带来的不同的格式的出现,这里就不在进一步做介绍了,有兴趣的同学可以自行上网了解。