我是新手OCV和android开发者。我要Imgproc.GaussianBlur过滤器在我的应用程序。当我使用它时,应用程序发送“应用程序停止”。我只在"OpenCV教程3-相机控制“中添加3行:
public Mat onCameraFrame(CvCameraViewFrame inputFrame) {
Mat mat = inputFrame.gray();
org.opencv.core.Size s = mat.size();
Imgproc.GaussianBlur(mat, mat, s, 2);
return mat;
}有什么不对的?我有联想A820安卓4.1.2,并在OpenCV 2.4.4、2.4.5和2.4.6上试用过。我尝试了不同的API。Imgproc.Sobel(mat,mat,-1,1,1);过滤器工作良好。
发布于 2013-12-24 09:10:48
看看文档 for GaussianBlur
它说:"ksize -高斯内核大小。ksize.width和ksize.height可以不同,但它们都必须是正的和奇怪的。“
因此,imho,您将内核大小与Mat的大小混淆,尝试如下所示:
Mat mat = inputFrame.gray();
org.opencv.core.Size s = new Size(3,3);
Imgproc.GaussianBlur(mat, mat, s, 2);
return mat;https://stackoverflow.com/questions/20753130
复制相似问题