我在Android设备上使用了本地Android脸部检测,但它似乎很慢,我对可靠性不太确定。 我也使用过OpenCV的人脸检测,但仅限于PC,而不是Android设备。 对于Android,我猜我将不得不使用JavaCV(或OpenCV4Android?)。 你知道Android AP ...
提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供 中文繁体 英文版本 中英对照 版本,有任何建议请联系yoyou2525@163.com。
我最好的猜测:我不以某种方式释放框架吗?
我使用org.bytedeco.javacv.FFmpegFrameGrabber
阅读了视频,并将帧转换为opencv_core.Mat
,然后将opencv_core.Mat
转换为opencv.core.Mat
(因为我需要在其上运行CascadeClassifier
,所以我们不能CascadeClassifier
很好) 。 然后,我跳过已经处理的帧。
然后它崩溃了。
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x000000010a6c2d21, pid=746, tid=0x0000000000005103
#
# JRE version: Java(TM) SE Runtime Environment (8.0_191-b12) (build 1.8.0_191-b12)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.191-b12 mixed mode bsd-amd64 compressed oops)
# Problematic frame:
# C [libopencv_java342.dylib+0xed21] Java_org_opencv_core_Mat_n_1delete+0x21
奇怪的是:如果我不跳过先前处理过的帧,那看起来就可以了! 这就是为什么我想知道是否正在进行某些竞赛,我花在处理帧上的时间给了系统时间来清理垃圾?
代码(如果您有足够长的input.mp4文件进行测试,则应该能够检出项目并在IntelliJ中运行它)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.