最近一直对机器人方面的东西比较感兴趣,之前一直在折腾Arduino,前段时间把智能避障小车做完了,虽然程序还有待完善,但是基本的功能已经实现了,寻思着在车上装个wifi摄像头,看了一些资料,如果使用arduino来做监控比较麻烦,刚好手头有个树莓派和一个罗技c270摄像头,网上找了一下资料,比较常用的实现的软件有两种,一种是用motion,一种是用mjpg_streamer,motion的安装比较容易,具体安装方法可以参考《教你用树莓派通过usb摄像头实现网络监控功能》,照着教程做就没问题了,这里说一下mjpg_streamer的安装,这玩意折腾了几天,问了不少群和百度了不少教程,差点就放弃了,没想到最后还是搞定了~~在这里MARK一个,留着以后用~~~
这里我只按照我手头有的硬件说明安装步骤,至于其他的硬件是不是有出入我这里没测试过,所以也不知道可不可行。
首先需要一个支持uvc格式的摄像头,不支持的也可以,但是图像帧数会很低,摄像头插入树莓派,运行命令lsusb查看摄像头是否被识别
这里系统已经识别出了我的罗技C270摄像头,也可通过命令 ls /dev/vid*查看是否存在video0设备
如果设备不被识别,那只能放弃或者更换摄像头了,不然可能需要重新编译内核才能实现,具体方法这里就不说了(其实是我也不会-_-||)下面开始安装软件
$sudo apt-get install libv4l-dev
$sudo apt-get install libjpeg8-dev
$sudo apt-get install imagemagick
然后开始下载mjpg_streamer源码包进行编译安装,这里说明一下,直接编译安装程序会报错,需要先运行一下命令,创建一个软连接
sudo ln -s /usr/include/libv4l1-videodev.h /usr/include/linux/videodev.h
创建完成后开始下载编译安装mjpg_streamer源码包
$sudo apt-get install subversion
$svn co http://svn.code.sf.net/p/mjpg-streamer/code/ mjpg-streamer-code-182
$cd mjpg-streamer-code-182/mjpg-streamer
&sudo make USE_LIBV4L2=true clean all
$sudo make DESTDIR=/usr install
编译安装完成后,运行程序目录下的start..sh命令启动服务,会看到如下画面
虽然有一堆报错信息,但是服务确是正常的,用Firefox浏览器输入http://<树莓派IP地址>:8080 此时应该可以看到摄像头的监控画面了,如图