请教,jni调用,类型转换.用opencv进行静态人脸检测
答案:1 悬赏:0 手机版
解决时间 2021-01-26 06:35
- 提问者网友:欺烟
- 2021-01-26 02:15
请教,jni调用,类型转换.用opencv进行静态人脸检测
最佳答案
- 五星知识达人网友:你可爱的野爹
- 2021-01-26 02:27
/java到C
//原始图像数据
Mat imgData(h, w, CV_8UC4, (unsigned char*) cbuf);
Mat bgr;
//转换成BGR格式,与C层对应
cvtColor(imgData, bgr, CV_BGRA2BGR);
//C到java
//与Java层对应
Mat bgr1 = Mat(pInputImg);
Mat rgba; //java层的显示格式
cvtColor(bgr1, rgba, CV_BGR2BGRA);
uchar* ptr = imgData.ptr(0);
uchar* data = rgba.ptr(0);
for (int i = 0; i < w * h; i++) {
ptr[4 * i + 0] = data[4 * i + 0];
ptr[4 * i + 1] = data[4 * i + 1];
ptr[4 * i + 2] = data[4 * i + 2];
}
//原始图像数据
Mat imgData(h, w, CV_8UC4, (unsigned char*) cbuf);
Mat bgr;
//转换成BGR格式,与C层对应
cvtColor(imgData, bgr, CV_BGRA2BGR);
//C到java
//与Java层对应
Mat bgr1 = Mat(pInputImg);
Mat rgba; //java层的显示格式
cvtColor(bgr1, rgba, CV_BGR2BGRA);
uchar* ptr = imgData.ptr(0);
uchar* data = rgba.ptr(0);
for (int i = 0; i < w * h; i++) {
ptr[4 * i + 0] = data[4 * i + 0];
ptr[4 * i + 1] = data[4 * i + 1];
ptr[4 * i + 2] = data[4 * i + 2];
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯