OpenCV3.4.9
1.编译命令
g++ main.cpp -I /usr/local/include -L/usr/local/lib -lopencv_imgproc -lopencv_core -lopencv_imgcodecs -ldl
2.执行准备
export LD_LIBRARY_PATH=/usr/local/lib
3.代码
#include <iostream>
#include <fstream>
/*opencv*/
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
#define IMAGE_LEN 608256
#define IMAGE_WIDTH 704
#define IMAGE_HEIGHT 576
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_YUV2RGB_NV12);
imwrite("out.jpg", jpg_img);
return 0;
}
4.备注
YUV格式有很多种.
CV_YUV2RGB_NV12只适合NV12.