- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
尝试使用在 Camera.Face 类中发现的 Android 4 API 14 人脸识别。
我在获取面部坐标 [左/右眼、嘴巴] 的值时遇到困难。
我使用的设备是 Samsung Galaxy Tab 2 [GT-P5100] with Android 4.0.4
我正在初始化人脸检测,类似于下面的代码 fragment ,当在上述设备上运行时,camera.getParameters().getMaxNumDetectedFaces() 的值返回为 3。
现在,当人脸被引入表面框架并在人脸检测监听器中检测到时,它会返回 faces[0].rect.flattenToString() 中的值,以识别人脸在表面上的位置。然而,其余的值,即面部 ID、左/右眼和嘴巴分别返回为 -1 和 Null。
此行为在 documentation 中有所描述作为
This is an optional field, may not be supported on all devices. If not supported, the value will always be set to null. The optional fields are supported as a set. Either they are all valid, or none of them are.
所以问题是我是否遗漏了什么,或者仅仅是我的设备不支持 Camera.Face 中的 Android API 人脸识别?
值得一提的是,同一台设备提供人脸登录设备,这是通过用户设置配置的。
FaceDetectionListener faceDetectionListener = new FaceDetectionListener(){
@Override
public void onFaceDetection(Face[] faces, Camera camera) {
if (faces.length == 0){
prompt.setText(" No Face Detected! ");
}else{
prompt.setText(String.valueOf(faces.length) + " Face Detected :) [ "
+ faces[0].rect.flattenToString()
+ "Coordinates : Left Eye - " + faces[0].leftEye + "]"
) ;
Log.i("TEST", "face coordinates = Rect :" + faces[0].rect.flattenToString());
Log.i("TEST", "face coordinates = Left eye : " + String.valueOf(faces[0].leftEye));
Log.i("TEST", "face coordinates = Right eye - " + String.valueOf(faces[0].rightEye));
Log.i("TEST", "face coordinates = Mouth - " + String.valueOf(faces[0].mouth));
}
.....
if (camera != null){
try {
camera.setPreviewDisplay(surfaceHolder);
camera.startPreview();
prompt.setText(String.valueOf(
"Max Face: " + camera.getParameters().getMaxNumDetectedFaces()));
camera.startFaceDetection();
previewing = true;
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
最佳答案
在你的初始化代码中,你需要为摄像头设置人脸检测监听器。
关于Android ICS API 14 - Camera.Face 人脸识别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12278531/
如何防止我的仅 ICS 小部件出现在旧手机上,同时仍然保持我的应用程序向后兼容。目前,我的任务管理器在 froyo 及更高版本上运行,但我有一个 ICS 和更高版本的小部件,我只想向兼容用户显示。 最
我遇到一个问题,加载动画(5 个连续点从左向右移动)在 ICS 后设备中不起作用,但在 ICS 前设备中完美运行。我尝试在两者中复制调用动画的相同方法,但它似乎不起作用。 提前致谢, 阿曼尼·斯旺
我刚刚查看了 Ice Cream Sandwich 源代码,因为我正在尝试将 Holo 主题移植到所有 4.0 之前的设备。 我使用了很多有用的工具: 操作栏:ActionBarSherlock IC
我正在从 C# WPF 应用程序创建 ICS 文件并使用以下代码生成 ICS 文件。 StreamWriter writer; writer = new StreamWriter(filePath);
有没有办法在应用程序中的非 ICS android 手机上获得 android ICS 控件?例如,我已经看到 echofone 或其他一些使用 ICS 控件的应用程序,这些应用程序在低于 ICS (
我的应用创建了一个 ICS 文件,并将其作为 mimeType:@"text/calendar" 类型的电子邮件附件发送。 在 iOS6 中一切都运行完美。如果设备有 iOS7,电子邮件的附件 .IC
在我的应用程序中,我使用一些对话框来显示信息。我的应用程序的主题是 Theme.Light 从 2 年开始,这些对话框从一开始就一直是黑色的。 现在有了 ICS,Google 似乎只是改变了主意,将这
我们正在从 Java 代码生成一个 ICS 文件,并最初以 UTC 格式输入时间。 我们发现,在创建定期约会时,如果第一个日期和最后一个日期之间的 DST 发生变化,一些 session 会在正确时间
嗨,我刚刚发现了 ics 文件格式,我想知道是否可以在事件条目中包含一个或两个警报点,这些警报点将自动被拾取? 代码: BEGIN:VEVENT DTSTART;TZID=Europe/Amsterd
我正在使用 ASP.NET 创建一个 ics 文件,用于将假日导入 Outlook 2007 并尝试设置全天事件标志。这在多日假期中效果很好,但对于单日假期,它似乎没有注册,我只是得到了从午夜到午夜预
这个问题已经有答案了: 已关闭11 年前。 Possible Duplicate: Strange NetworkOnMainThreadException in Android app? Tryin
我制作了一个 ICS 提要,其中包含一长串事件。我的时区似乎不起作用。 在下面的示例中,您会看到我的事件应于 07:55:00 开始并于 09:30:00 结束。这就是我的日历中应该显示的内容。相反,
我们为我们的外联网开发了一个日历。每周我们都会为学校的所有师生更新下周的类(class)安排。这也会触发向选择该选项的用户发送每封电子邮件的 ICS 文件。 现在,几乎总是会发生最后一刻的更改,因此需
我正在为公司使用 JavaScript 开发 EPUB 阅读器,该应用程序在 Android 2.2 上运行良好,但当我在 ICS 和 HoneyCom 上尝试时,JavaScript 无法正常运行。
我有一项 Activity ,其中的 ListView 来自网络。在加载数据时,我想显示一个进度对话框而不是 ListView 。 我的布局: 我这样做是为了让进度条自行显示(
我熟悉android 2.2,一直在做手机开发,那么ICS平板开发该从何入手呢?我从 quick-google 学到的主要内容是,现在我必须将 fragment 用于多 Pane 布局,而不仅仅是 A
我试着读出所有现有的日历。我试过这里的例子: http://developer.android.com/guide/topics/providers/calendar-provider.html 但我
我正在尝试在模拟器上测试 ICS 的加密功能。 为了启用“加密电话”,我们运行“telnet localhost 5554”,然后运行“power capacity 100”。 在此之后,当我单击“加
我已设置 android:targetSdkVersion=15 并将 SDK 构建为 15,同时假设该应用程序将使用来自 ICS 的新的好日期选择器,而在 2.x 设备上它将使用旧的讨厌的日期选择器
我在我的 Skyrocket 设备和模拟器上的 Android ICS 浏览器中发现了一个奇怪的错误。基本上,我拥有的固定 header 几乎失去了所有样式(恢复为文本,尽管它看起来仍然是固定的)。当
我是一名优秀的程序员,十分优秀!