android - Imageview 中的 OpenCV 人脸检测
问题描述
在我的 Android 工作室项目中,我遇到了一个严重的问题。我想使用 OpenCV 在导入的图像中检测人脸。
问题是,当应用程序运行时它什么也不返回,甚至没有错误。
这是我的按钮的代码。
imgImportedImage.setDrawingCacheEnabled(true);
imgImportedImage.buildDrawingCache();
Bitmap bitmapOfImage = imgImportedImage.getDrawingCache();
Mat mmGray = new Mat();
Utils.bitmapToMat(bitmapOfImage, mmGray);
MatOfRect faces = new MatOfRect();
if (mAbsoluteFaceSize == 0) {
int height = mmGray.rows();
if (Math.round(height * mRelativeFaceSize) > 0) {
mAbsoluteFaceSize = Math.round(height * mRelativeFaceSize);
}
}
CascadeClassifier mDetector = new CascadeClassifier();
mDetector.load("haarcascade_frontalface_default.xml");
mDetector.detectMultiScale(mmGray, faces, 1.1, 3, 0, new Size(mAbsoluteFaceSize, mAbsoluteFaceSize), new Size());
Rect[] facesArray = faces.toArray();
for(int i = 0; i < facesArray.length; i++){
Core.rectangle(mmGray, facesArray[i].tl(), facesArray[i].br(), FACE_RECT_COLOR, 2);
Toast.makeText(FdActivity.this, String.valueOf(facesArray[i]), Toast.LENGTH_SHORT).show();
}
解决方案
推荐阅读
- bootstrap-5 - 文本左侧和图像右侧引导 5 带点的轮播
- google-chrome-devtools - 为什么预检请求有时会出现在 Chrome DevTools 网络选项卡中的主请求之后?
- session - spring cloud gateway并发会话管理
- javascript - 如何正确重新布局图形并以节点为中心
- jenkins - Jenkins MaskPassword:什么是`var`?
- ruby-on-rails - 元编程和引用
- php - 如何在 PHP 中使用十六进制提取 GIF 帧?
- flutter - 如何在 Flutter 中为卡片添加渐变?
- c# - HttpClient 重试逻辑未按预期工作(.Net Core 3.1)
- java - Spock Framework Java测试中的模拟地图参数