opencv for java_opencv for java
org.openpnpopencv3.4.2-1安装为了支持java需要先yum install antwget https://github.com/opencv/opencv/archive/3.4.2.zip$cd opencv$madir build$cd build$cmake -D WITH_TBB=ON -D WITH_EIGEN=ON ..$cmake -D BUILD_DOCS=
org.openpnp
opencv
3.4.2-1
安装
为了支持java需要先yum install ant
wget https://github.com/opencv/opencv/archive/3.4.2.zip
$cd opencv
$madir build
$cd build
$cmake -D WITH_TBB=ON -D WITH_EIGEN=ON ..
$cmake -D BUILD_DOCS=ON -D BUILD_TESTS=OFF -D BUILD_PERF_TESTS=OFF -D BUILD_EXAMPLES=OFF ..
$cmake -D WITH_OPENCL=OFF -D WITH_CUDA=OFF -D BUILD_opencv_gpu=OFF -D BUILD_opencv_gpuarithm=OFF -D BUILD_opencv_gpubgsegm=OFF -D BUILD_opencv_gpucodec=OFF -D BUILD_opencv_gpufeatures2d=OFF -D BUILD_opencv_gpufilters=OFF -D BUILD_opencv_gpuimgproc=OFF -D BUILD_opencv_gpulegacy=OFF -D BUILD_opencv_gpuoptflow=OFF -D BUILD_opencv_gpustereo=OFF -D BUILD_opencv_gpuwarping=OFF ..
$cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
$make
$sudo make install
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
byte[] bytes = FileUtils.readFileToByteArray(new File("./20200408180400133_FR_0.yuv"));
Mat img1 = new Mat(1080 , 1920, CvType.CV_8UC2); System.out.println(img1.width());
System.out.println(img1.height());
System.out.println(img1.channels());
img1.put(0, 0, bytes);
Mat img2 = new Mat(1080, 1920, CvType.CV_8UC3);
Imgproc.cvtColor(img1, img2, Imgproc.COLOR_YUV2BGR_YUY2);
Imgcodecs.imwrite("./20200408180400133_FR_0.jpg", img2);
C++
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
using namespace cv;
void yuv2jpg(string inputFileName, string savepath,int width,int height,int yuv2jpg_type)
{
int iImageSize = width * height * 2;
FILE * fpln = fopen(inputFileName.data(), "rb+");
if (fpln == NULL) {
printf("read yuv error.\n");
return;
}
cv::Mat yuvImg;
cv::Mat rgbImg(height, width, CV_8UC3);
yuvImg.create(height, width, CV_8UC2);
unsigned char *pYUVbuf = new unsigned char[iImageSize];
fread(pYUVbuf, iImageSize * sizeof(unsigned char), 1, fpln);
memcpy(yuvImg.data, pYUVbuf, iImageSize * sizeof(unsigned char));
cv::cvtColor(yuvImg, rgbImg, 116);
imwrite(savepath, rgbImg);
fclose(fpln);
}
int main() {
string yuv = "F:/pop2pop/p3/20200408180400133_FR_0.yuv";
yuv2jpg(yuv, "F:/pop2pop/p3/20200408180400133_FR_0.jpg",1920,1080,116);
return 0;
}
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)