对于linux下笔记本内置摄像头图像采集,一开始也挺头大的,怎样去驱动笔记本内置摄像头呢?伟大的互联网告诉我们这都不叫事。通过 lsusb查看摄像头信息,如果不明显,可以用lsusb -v|less 查看详细信息,确定摄像头是usb设备后,v4l2框架才是可用的。
V4L2(Video For Linux Two) 是内核提供给应用程序访问音、视频驱动的统一接口,它图像采集的操作步骤:
打开设备-> 检查和设置设备属性-> 设置帧格式-> 设置一种输入输出方法(缓冲 区管理)-> 循环获取数据-> 关闭设备。
V4L2接口的介绍可参考http://blog.csdn.net/g_salamander/article/details/8107692,具体V4L2采集数据的源码http://download.csdn.net/detail/xiaohouye/9499342,但过程中应该注意的是摄像头所支持视频输出的格式,可以用V4L2提供的指令去通过ioctl获得,也可以用比较懒的方法,先安装luvceiw,然后命令行luvceiw -L,查看相应摄像头输出的详细信息。
由于我的摄像头是YUV422输出,采集到的数据还要相应转成图片格式输出,先把YUV422转成RGB,再从RGB转到bmp格式。
来源:oschina
链接:https://my.oschina.net/u/1459287/blog/664013