ARM平台实现于仕琪人脸检测库YSQfastfd
平台要求
ARM32 platform hardware board Ubuntu 16.04 with GTK3 library USB camera (480P/720P), YUYV
步骤
sudo apt install build-essential vim-gtk libgtk-3-0 libgtk-3-dev libegl1-mesa-dev sudo git clone git@github.com:OAID/YSQfastfd.git cd YSQfastfd/ sudo make -j4 sudo chmod +x ./run.sh ./run.sh
运行之前需要检查一下是否安装摄像头及其驱动;
ls /dev/vi*
如果没有,需要重新安装驱动;
cd camera_driver_dir sudo make clean make sudo make insert
问题
Video stream image info Image pixel : 1280 x 720 Pixel format : (hex : 56595559) - YUYV Frame/Time : 30/1 videodev_init: Inappropriate ioctl for device videodev_init: Inappropriate ioctl for device [*Error*]Failure @ line 455 in function "create_vidcapture" [*Error*]Failure @ line 75 in function "main"
个人感觉主要是调用ioctl的过程有点问题。
$ grep -rns Inappropriate / /opt/valgrind/coregrind/m_syscall.c:1169: case VKI_ENOTTY: return "Inappropriate ioctl for device";
问题没有解决,还没找到错误原因,桑心,有点丧。。。调试过程中觉得应该是调用camera的过程中的内存管理问题。
fun videodev_init
Error: VIDIOC_QUERYBUF failed...
Error: VIDIOC_QBUF failed...
camera driver...
另外,github上有说这个code只能运行大概2k张图片。。。
参考
1.YSQfastfd;
2.V4L2应用程序框架;
完