树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018

1、树莓派准备

(1)安装散热片
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第1张图片
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第2张图片

(2)树莓派外壳安装 同时安装散热风扇
风扇线的接口,看得到金属触片一面,朝外。4脚接风扇红线、6脚接风扇黑线。若不转,金属出片一侧朝内尝试。
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第3张图片
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第4张图片

2、上电前的系统安装准备(烧写树莓派镜像)

树莓派的SD卡最好是16G或32G,8G不够用。并且要买SD卡读写速度快一点的;

准备SD卡的读卡器

下载SDFormatter(格式化SD卡)

下载Win32DiskImager(SD卡系统烧写工具)
进入官网 https://www.raspberrypi.org/downloads/ 下载页面,选择“RASPBIAN
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第5张图片

下一步选择“RASPBIAN JESSIE LITE”,如果要使用桌面版本的,选择“RASPBIAN JESSIE WITH DESKTOP”下载压缩的镜像。将下载完的压缩镜像解压缩出来得到名为“xxxx-xx-xx-raspbian-jessie-lite.img”的镜像。
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第6张图片

SD卡插入读写器,读写器插入到电脑
使用SDFormatter格式化SD卡,否则无法SD卡分区无法取消,烧写镜像提示失败。
打开Win32DiskImager烧写镜像
选择镜像和设备(你的SD卡),点“写”开始烧写镜像,等几分钟后提示写入成功。
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第7张图片

当前版本的树莓派系统默认是关掉SSH的,你需要按如下的步骤操作开启SSH:
烧写完镜像后的SD卡,在Windows上可以看到一个boot分区,你需要在boot目录下创建一个名字为ssh的空文件(用记事本创建就好,保存时把.txt后缀删除),这一步做了才保证你后续远程登录没有问题。

3、启动树莓派
一切就绪,把卡插上,上电
树莓派网线连接路由器LAN口,电脑连接同一路由器网络,打开路由器管理界面,查找树莓派设备(设备名raspberrypi)查看树莓派IP
在电脑下载安装“putty”, 完成后打开软件,弹出配置界面,在主机名(Host Name)中输入树莓派对应IP地址、端口号,点击打开(弹出安全警告选择是)。
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第8张图片

在进入登陆界面后,输入对应得树莓派账号、密码(默认账号:pi 密码:raspberry)即可连接到树莓派。(输入密码时是不显示的,不要怀疑你的键盘坏了)
登陆成功后界面如下图所示
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第9张图片

4、系统配置
(1)开启SSH和VNC:
可直接利用sudo raspi-config命令进入设置模式,在Interfacing Options下面设置即可。
(2)为树莓派更换国内源。(国外的源延迟高,可能导致不能成功下载)
.执行命令:)
使用管理员权限(经由sudo),编辑/etc/apt/sources.list文件。参考命令行为:

$ sudo nano /etc/apt/sources.list

用#注释掉原文件内容,用以下内容取代:

deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-free rpi
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-free rpi

Ctrl+O 回车后保存文件,Ctrl+X 退出编辑器。
使用管理员权限(经由sudo),编辑/etc/apt/sources.list.d/raspi.list文件。参考命令行为:

$ sudo nano /etc/apt/sources.list.d/raspi.list

用#注释掉原文件内容,用以下内容取代:

deb http://mirror.tuna.tsinghua.edu.cn/raspberrypi/ stretch main ui
deb-src http://mirror.tuna.tsinghua.edu.cn/raspberrypi/ stretch main ui

Ctrl+O 回车后保存文件,Ctrl+X 退出编辑器。
注意: 网址末尾的raspbian重复两次是必须的。因为Raspbian的仓库中除了APT软件源还包含其他代码。APT软件源不在仓库的根目录,而在raspbian/子目录下。
编辑镜像站后,请使用sudo apt-get update命令,更新软件源列表,同时检查您的编辑是否正确
(3)安装中文字库
接着上一步,在我们重启sudo reboot后,输入终端更新命令:

sudo apt-get update

更新以后,输入以下命令

sudo apt-get install ttf-wqy-zenhei

安装过程中会提示你是否继续,按Y
这样中文字库就安装好了。
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第10张图片

(4)将菜单界面设置成中文
输入命令

sudo dpkg-reconfigure locales

用空格键勾选前面带有 “zhCN” 的选项,这些表示是中文字库。
确保 “zhCN.UTF-8” 被选中,同时在选local字库时选择“zh_CN.UTF-8”
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第11张图片

(5)安装中文输入法
输入命令

sudo apt-get install scim-pinyin

安装完成后,重启树莓派

sudo reboot

树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第12张图片

(6)设置时间
修改时间首先应该修改树莓派的时区,输入命令:

sudo dpkg-reconfigure tzdata

选择亚洲,然后选择上海
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第13张图片

在树莓派上,打date命令可以看到系统的日期时间
在这里插入图片描述

5、远程桌面服务配置

(1)如果想远程树莓派,并有图像界面,则需安装xrdp和Linux的桌面服务
在putty的命令窗口下执行:

sudo apt-get install tightvncserver 

完成Linux 桌面服务的安装。
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第14张图片

在putty的命令窗口下执行

sudo apt-get install xrdp

(有Y/N选择时回车),完成xrdp的安装。
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第15张图片

(2)打开电脑的运行窗口(快捷键:Window + R),输入mstsc,然后执行,在远程桌面连接窗口中输入树莓派IP,点击连接,

然后在Login to xrdp窗口中,Module选择sesman-Xvnc,用户名:pi,密码:raspberry,完成后即可进入系统图像界面。
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第16张图片树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第17张图片
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第18张图片

在远程其树莓派时的电脑时提示错误“客户端无法建立与远程计算机的连接,远程计算机可能不支持所需的FIPS安全级别”或者“由于安全设置错误,客户端无法连接到远程计算机。确定你已登录到网络后。
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第19张图片

注:在win10家庭版中无法进行下列操作
1、打开win10下的控制面板;
2、选择“管理工具”;
3、打开管理工具的“本地安全策略”;
4、在本地安全策略中,打开“本地策略”下的“安全选项”;
5、在右边的策略中,找到“系统加密:将FIPS算法用于加密 、哈希和签名”点击右键属性;
6、将“本地安全设置”设置为“已禁用”,在单击“应用”,后”确定”,即可远程控制!

6、使用USB免驱动摄像头获取图像

(1)安装软件“fswebcam、mplayer、alsamixer”
安装fswebcam(一款小型摄像头程序)输入命令:

sudo apt-get install fswebcam

安装mplayer(多媒体播放器)输入命令:

sudo apt-get install mplayer

(2)连接设备:
在终端输入:
ls /dev
查找,是否可以看见 video0 这个设备,如果有,说明树莓派已识别它了,如果没有,需要重新更新下固件
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第20张图片

运行lsusb命令,有相关摄像头的信息,
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第21张图片

(3)调用摄像头看效果
在终端输入(必须在树莓派端执行,在SSH下执行命令会提示失败):

sudo mplayer tv://

即可调用mplayer看到实时图像
执行命令试拍一张看看效果

fswebcam -d /dev/video0 --no-banner -r 320x240 /home/pi/image.jpg

-d是配置使用哪个摄像设备,–no-banner应该是水印相关,不加的话,可能会报字体问题, -r后的是图片的宽与高,最后的是待保存的图片路径。
在实际使用时拍摄出的照片是纯黑,需要加-S参数,控制拍照延时。我使用的是10,实际它并不是命令等待10秒后才拍摄,大约只等待1s左右,不影响使用。

fswebcam -d /dev/video0 --no-banner -r 320x240 -S 10 /home/pi/image.jpg

树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第22张图片
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第23张图片
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第24张图片

七、安装opencv
(1)下载若干依赖项
更新软件源

sudo apt-get update
sudo apt-get upgrade

依次下载依赖项

sudo apt-get install build-essential
sudo apt-get install cmake
sudo apt-get install libgtk2.0-dev
sudo apt-get install pkg-config
sudo apt-get install python-dev python-numpy
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev

(2)获取源代码
从opencv官网下载opencv3.3.1的linux版本。建立opencv文件夹,解压opencv3.3.1

unzip opencv-3.3.1.zip

(3)安装opencv
进入解压文件夹(具体版本而定

cd opencv-3.2.0

创建release文件夹

mkdir release

进入release目录下

cd release

配置cmake

sudo cmake -DCMAKE_BUILD_TYPE=RELEASE \
-D WITH_FFMPEG=OFF
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D INSTALL_PYTHON_EXAMPLES=ON \
-DOPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.3.1/modules \
-D BUILD_EXAMPLES=ON ..

编译源代码的时间非常的长

make
sudo make install;

八、安装tensorflow

(1)安装tensorflow-1.1.0-cp27-none-linux_armv7l.whl
首先用浏览器下载tensorflow-1.1.0-cp27-none-linux_armv7l.whl网址https://github.com/samjabrahams/tensorflow-on-raspberry-pi/releases/download/v1.1.0/tensorflow-1.1.0-cp27-none-linux_armv7l.whl
接下来,便是把下载的文件tensorflow-1.1.0-cp27-none-linux_armv7l.whl发送给树莓派,我是用的是Filezilla软件。然后安装。

sudo pip install tensorflow-1.1.0-cp27-none-linux_armv7l.whl

注意:文件名称和执行命令是否一致,特别注意空格。否则可能出现以下情况。
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第25张图片

(2)卸载,重装mock
For Python 2.7

sudo pip uninstall mock
sudo pip install mock
 

树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第26张图片
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第27张图片

(3)查找存放了用于图像识别的代码
查看Tensorflow的文件目录:/usr/local/lib/python2.7/dist-packages/tensorflow,在该目录的models/image/imagenet目录下,存放了用于图像识别的代码classify_image.py。
问题又来了
安装的一样是tensorflowv1.1.0,你会发现你没有models,更别说classify_image.py了。因为1.0版本以后models就被SamAbrahams大佬独立出来了,不在放在一个压缩包里了。
到网上下载models的文件包通过FileZilla发送给树莓派。
通过Linux命令将models文件复制到/usr/local/lib/python2.7/dist-packages/tensorflow目录下

sudo cp -r /home/pi/models /ucr/local/lib/python2.7/dist-packages/tensorflow

(4)下载解压Tensorflow深度学习图像识别库
通过电脑下载inception-2015-12-05.tgz后通过FileZilla发送给树莓派通过Linux命令复制到/usr/local/lib/python2.7/distpackages/tensorflow/models/image/imagenet/目录下

sudo cp -r /home/pi/inception-2015-12-05.tgz /usr/local/lib/python2.7/distpackages/tensorflow/models/image/imagenet/

打开inception-2015-12-05.tgz所在目录

sudo cp -r /home/pi/cat.jpg /usr/local/lib/python2.7/dist-packages/tensorflow/models/image/imagenet

用指令tar解压该图像识别库

sudo tar xf inception-2015-12-05.tgz

解压后,可以看到目录下存放了一张实例图片cropped_panda.jpg
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第28张图片

(5)小测试,模型识别物体

$ cd /usr/local/lib/python2.7/dist-packages/tensorflow/models/image/imagenet
$ python3.5 classify_image.py --model_dir /usr/local/lib/python2.7/dist-packages/tensorflow/models/image/imagenet --image_file mobike.jpg

其中,/usr/local/lib/python2.7/dist-packages/tensorflow/models/image/imagenet这个路径是TensorFlow的 Python图像分类程序 classify_image.py 所在的路径,不同的OS可能不一样。–model_dir 参数传入的是我们前面解压出来的模型文件所在的路径,–image_file 是待识别的图片的路径。
树莓派环境搭建(远程桌面、免驱摄像头、tensorflow)总结2018_第29张图片

可见,TensorFlow认为图片是山地自行车(mountain bike)/全地形自行车(all-terrain bike)/越野车(off-roader)的概率是0.59306,识别结果还算可以。

你可能感兴趣的:(树莓派,tensorflow,python,raspberry,pi)