1. 程式人生 > >基於opencv 的 YUV420 與Mat互轉

基於opencv 的 YUV420 與Mat互轉

1. YUV420 -> Mat 可用於轉換接受到的YUV視訊源到OpenCV可以識別的資料

Mat myuv( Frame_Height + Frame_Height / 2, Frame_Width, CV_8UC1, (unsigned char *) YUV420_Image_Buffer);

cvtColor(myuv, mgMat, CV_YUV420p2RGB);

2. Mat -> YUV420 可用於OpenCV處理完視訊訊號後返回

cvtColor(mgMat, myuv,CV_RGB2YUV_I420); //CV_RGB2YUV_YV12, CV_RGB2YUV 會產生不同的效果,可以多嘗試幾個,看那個效果是正確的
memcpy( YUV420_Image_Buffer

, myuv.data, Frame_Width * Frame_Height * ( 3 / 2 ) * sizeof(unsigned char) );