OpenCV3.4.9
1.编译命令
g++ main.cpp -I /usr/local/include -L/usr/local/lib -lopencv_imgproc -lopencv_core -lopencv_imgcodecs -ldl
2.代码
#include <iostream>
#include <fstream>
/*opencv*/
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
#define IMAGE_LEN 3110400
#define IMAGE_WIDTH 1920
#define IMAGE_HEIGHT 1080
int main()
{
ifstream fd_yuv("in.yuv");
//yuv Mat
cv::Mat yuv_img(IMAGE_HEIGHT*1.5, IMAGE_WIDTH, CV_8UC1);
//read file to Mat
fd_yuv.read((char *)yuv_img.data, IMAGE_LEN);
//jpg Mat
cv::Mat jpg_img;
cv::cvtColor(yuv_img, jpg_img, CV_YUV420p2RGB);
imwrite("out.jpg", jpg_img);
return 0;
}
3.备注
YUV格式有很多种.
CV_YUV420p2RGB只适合YUV420P.