在android中我试图使用以下代码扩展我的垫子。
Mat destMat = new Mat();
Size newSize=new Size(output.width()/6.0f, output.height()/6.0f);
Imgproc.resize(output, destMat, newSize, 0, 0, Imgproc.INTER_CUBIC);
当它尝试执行resize方法时,我得到以下异常。我的代码在onCameraFrame()。
MatToBitmap catched cv :: Exception: /home/reports/ci/slave_desktop/50-SDK/opencv/modules/java/generator/src/cpp/utils.cpp:97: 错误:(-215)src.dims == 2&& info.height ==(uint32_t)src.rows&& 函数void中的info.width ==(uint32_t)src.cols Java_org_opencv_android_Utils_nMatToBitmap2(JNIEnv *,jclass,jlong, jobject,jboolean)
答案 0 :(得分:0)
变量' newSize'是的,你实际上想要destMat的原始大小。您可以使用fx和fy参数缩小它。来自javadocs:
函数resize将图像src调整到或向上调整大小 指定大小。注意不采用初始dst类型或大小 考虑到了。相反,大小和类型来自 src,dsize,fx和fy。
后来:
//明确指定dsize = dst.size();将计算fx和fy 从那起。