1.按照树莓派官网 https://www.raspberrypi.org/downloads/ 提供的说明步骤选择需要的操作系统,并将其写入到SD卡中。本示例下载的是:Raspberry Pi OS (32-bit) with desktop and recommended software(学习用推荐) Version: May 2020
2.将烧写有操作系统的SD卡插入树莓派,启动树莓派
3.在树莓派终端下以root权限运行raspi-config
$sudo raspi-config
(1) 进入树莓派配置界面主要对
4 Localisation Opttions
7 Advance Options
8 Updated 进行配置
4-I(1)Change Locale
选择 zh_CN GB2312、zh_CN.UTF-8 UTF-8
设置需要的默认系统语言
4-I(2)Change Timezone
Asia\Shanghai
4-I(3)Change Keyboard Layout
Generic 104-key PC\Other\English(US)\English(US)\The default for the keyboard layout\No compose key
Use Control+Alt+Backspace to terminate the X server
7-A1 Expand Filesystem
用来保证SD卡所有空间可用目前默认只能使用8G,该选项在下次启动时生效
7-A2 Overscan 不支持
7-A3 Memory Split
修改显存大小,由64M改为128M
7-A4 Audio
7-A5 Resolution 不改
7-A6 Pixel Doubling 不改
7-A7 GL Driver 不改
8 Updated 更新操作系统,时间较长可能出错,换源后重试……
3.安装树莓派下的截屏工具
$sudo apt-get install scrot
$sudo scort -s为鼠标截屏命令
4.安装vim编辑器
$sudo apt-get install vim
5.修改系统更新源用国内镜像替代国外源
参考:清华源 https://mirrors.tuna.tsinghua.edu.cn/help/raspbian/
中科大源 https://mirrors.ustc.edu.cn/help/raspbian.html#
$sudo vim /etc/apt/sources.list
(1)将文件里的默认的官方软件源用# 注释掉
(2)添加下面的软件源(清华大学的软件源 ) (手动添加注意空格)
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi
(or 2)运行以下命令(中国科技大学的软件源 )
$sudo sed -i 's|raspbian.raspberrypi.org|mirrors.ustc.edu.cn/raspbian|g' /etc/apt/sources.list
6.修改系统固件更新源,用国内镜像代替国外源
$sudo vim /etc/apt/sources.list.d/raspi.list
(1)将文件里的默认的官方软件源用# 注释掉
(2)添加下面的软件源(清华大学的软件源 )(手动添加注意空格)
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui
(or 2)运行以下命令(中国科技大学的软件源 )
$sudo sed -i 's|//archive.raspberrypi.org|//mirrors.ustc.edu.cn/archive.raspberrypi.org|g' /etc/apt/sources.list.d/raspi.list
(3)
$sudo apt-get update
$sudo apt-get upgrade
$reboot
$sudo rpi-update 更新系统内核及各种软件★谨慎使用
7.安装中文字库
$sudo apt-get -y install fonts-wqy-zenhei
8.安装中文输入法
(1)安装 Fcitx
$sudo apt install fcitx
(2)配置 Fcitx
$im-config
$sudo reboot(重启使配置生效)
(3)安装输入法
$sudo apt install fcitx-googlepinyin
$sudo apt install fcitx-table-wubi (五笔输入)
$sudo apt install fcitx-table-wbpy(五笔拼音混输)
(4)配置输入法
$fcitx-config-gtk3
9.安装QT
$sudo apt-get install qt5-default
$sudo apt-get install qtcreator
由于Qt Creator不能自动识别树莓派上的工具链,因此需要手动添加。
点击Tools -> Options打开配置对话框,
在Build & Run -> Kits选项卡中点击Add。
Compiler设置为/usr/bin/gcc,
Debugger可设置为/usr/bin/gdb,
Devices type选择Desktop,
Device选择local,
qt version选择/usr/bin/qmake。
PS:如果选择qt version时弹出qmake not exetuable,则说明qt4/qt5没有安装,需要
$sudo apt-get install qt-sdk
$sudo apt-get install qt5-default ★慎用会装qt4
10.安装OpenCV3.4.0
参考:https://docs.opencv.org/3.4.0/d7/d9f/tutorial_linux_install.html
安装相关库和工具
[compiler] sudo apt-get install build-essential
[required] sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
[optional] sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
下载OpenCV源码
使用cmake生成OpenCV Makefile文件
在OpenCV源码目录下建立build目录
$cd opencv
$sudo mkdir build
$cd build
$sudo cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
编译OpenCV
$sudo make -j4
在树莓派0中是极其漫长的等待,期间各种警告可以忽略
安装OpenCV
$sudo make install
$sudo ldconfig //这一步一定要执行否则在运行程序时会报XX.so未找到错误
//具体配置在/etc/ld.so.conf中
Ok系统环境搭建完成,可以开始开发了。
Ps 如果要安装OpenCV最新版本只需要运行
$sudo apt-get install libopencv-dev
即可
11.QT程序命令行编译
(1)在工程所在目录下
$qmake -project
(2)$qmake
(3)$make
12.OpenCV程序命令行编译
参考:CMake 使用方法 & CMakeList.txt
https://blog.csdn.net/u012150179/article/details/17852273
(1)拷贝 OpenCV的 build 目录下的CMakeList.txt 到工程项目目录下
(2)根据项目情况修改CMakeList.txt文件内容
(3)$cmake.
(4)$make
13.QT 与 OpenCV联合工程命令行编译
(1)在工程所在目录下
$qmake -project
(2)$qmake
(3)需改生成的 .pro文件增加以下内容
INCLUDEPATH += /usr/local/include \
/usr/local/include/opencv \
/usr/local/include/opencv2
LIBS += /usr/local/lib/libopencv_highgui.so \
/usr/local/lib/libopencv_core.so \
/usr/local/lib/libopencv_imgproc.so \
/usr/local/lib/libopencv_shape.so
LIBS += -L/usr/local/lib -lopencv_core -lopencv_imgcodecs -lopencv_highgui
(4)用以下程序测试如果可以显示测试图片,恭喜你所有配置正确
#include
using namespace cv;
int main()
{
// 【1】读入测试图片
Mat img = imread("test.jpeg");
// 【2】在窗口中显示载入的测试图片
imshow("测试窗口",img);
// 【3】等待用户输入以结束程序
waitKey(0);
return 0;
}