深度学习的基本概念
深度学习做了什么样的一件事
在开始学习之前,我们首先要理解深度学习究竟要解决什么问题。
深度学习的核心目标是建立从输入到输出的复杂映射关系。比如一张猫的图片,人眼很容易区分图片中是否存在猫,但是对于计算机而言就不是那么容易了,我们需要找到一个映射关系$f(x)$,去让计算机通过这个关系来判断是否存在猫。
一旦找到这个准确的映射关系,计算机就能用它对新的图片进行自动判断。
简单神经网络
线性与非线性
最简单的数学变换是线性变换:$f(x)=wx+b$。
然而,现实世界中的大多数问题(如图像识别、语音处理)都是高度非线性的。单一线性变换无法捕捉这些复杂模式。这时就需要引入激活函数的概念,它的核心作用是将线性变换转换为非线性变换。不必担心激活函数会过于复杂,实践中使用的激活函数通常形式简洁且效果显著。
常用的激活函数:
Sigmoid函数,将输出压缩到(0,1)区间:$$\sigma(z)=\dfrac{1}{1+e^{-z}} $$
整流线性单元,计算简单,能有效缓解梯度消失:$$ReLU(z)=max(0,z)$$
从单输入到多输入
基础模型通常考虑单一 ...
安装IBus和Rime
1sduo apt-get install ibus ibus-rime
在使用Linux时,经常会使用apt-get去安装一些软件,但由于Ubuntu中默认下载源在国外,会导致下载失败,所以需要更换国内源。我选择的是阿里源。
我曾天真的认为使用VPN就可以解决。选择直接换源才是王道。
修改软件源配置文件
1sudo nano /etc/apt/sources.list
修改后查看。
1sudo cat /etc/apt/sources.list
阿里云镜像
x86架构
引用站外地址
阿里云镜像
x86架构
arm架构
引用站外地址
阿里云镜像
arm架构
根据对应的系统选择合适的指令
armx861234567891011121314deb https://m ...
v2rayN链接
引用站外地址
v2rayN
下载链接
安装
1sudo dpkg -i v2rayN-linux-64.deb
使用方法
驱动安装
官网
引用站外地址
nvidia官网
链接
查看是否安装成功
1nvidia-smi
使用此指令可以查看,当前驱动支持的最高版本的驱动。
若安装成功,则会显示
123456789101112131415161718192021222324252627282930313233sys120-1@sys120-1:~$ nvidia-smiMon Oct 27 09:09:11 2025 +---------------------------------------------------------------------------------------+| NVIDIA-SMI 530.30.02 Driver Version: 530.30.02 CUDA Version: 12.1 ||----------------- ...
环境配置
未读使用Anaconda新建环境
更新pip版本
1python -m pip install --upgrade pip
安装pytorch
获取GPU的CUDA版本。
打开终端,输入nvidia-smi。
进入官网获取pytorch安装指令。
引用站外地址
Pytorch最新版
下载链接
引用站外地址
Pytorch历史版
下载链接
安装指定Cuda版本的Pytorch
在Ubuntu中安装Cuda-11.8版本的Pytorch-2.1.1。
从Pytorch历史版中找到对应的指令。
1pip install torch==2.3.0 torchvision==0.18.0 tor ...
Linux
未读查看Linux磁盘大小
在终端执行df命令,-h 参数表示以人类可读的格式显示。
1df -h
终端返回结果如下显示。
12345678910elf@elf2-desktop:~$ df -hFilesystem Size Used Avail Use% Mounted on/dev/root 14G 4.6G 8.6G 35% /tmpfs 7.8G 0 7.8G 0% /dev/shmtmpfs 3.2G 2.5M 3.2G 1% /runtmpfs 5.0M 4.0K 5.0M 1% /run/locktmpfs 7.8G 20K 7.8G 1% /tmp/dev/mmcblk0p8 96G 284M 92G 1% /userdata/dev/mmcblk0p7 123M 12M 110M 10% /oemtmpfs 1.6G 96K 1.6G 1% /run/user/100 ...
开发环境
硬件平台:Smartfusion2
芯片型号:M2S010T-FG484
电脑系统: Windows 11
FPGA开发:Libero SoC v11.9
ARM开发:Keil4 uVision
实验内容
使用Libero SoC v11.9从新建工程开始,完成以下功能:
按键
LED
UART
MSS与Fabric通信
DDR3的使用
LVDS IP核的添加
CAN接口的配置
介绍
简介
基于 Flash 架构的 SmartFusion2 是 Microsemi 的第四代 65nm 工艺的片上系统产品,是满足工业、军事、航空、通信和医疗领域所亟需的高安全性、高可靠性和极低功耗的 SoC
系统的唯一选择。
硬件资源
本实验硬件接口定义
晶振:50MHz 外部晶振
复位:R15(全局复位引脚)
KEY0:M1(Fabric模式)
KEY1:L2(Fabric模式)
LED0:M2(Fabric模式)
LED1:N1(Fabric模式)
LED2:P2(Fabric模式)
UART0:RX T18 TX T19
UART0:RX K6 TX K7
DDR3: DDR引脚是 ...
开发环境
硬件平台:Smartfusion2
芯片型号:M2S010T-FG484
电脑系统: Windows 11
FPGA开发:Libero SoC v11.9
ARM开发:Keil4 uVision
由于在学习官方历程时,使用Libero SoC v2024.2.0版本,发现无法打开项目,且按照教程创建的项目出现编译错误的情况因此,使用Libero SoC v11.9版本。若使用最新版本,也可以参考此开发流程。
在使用Keil4 uVision开发ARM程序时,建议使用keil4 uviuVision。生成的keil工程在添加芯片型号时,出现了问题,因此,使用Keil4 uVision进行开发。
Libero SoC v11.9下载链接
引用站外地址
Libero SoC v11.9百度网盘
提取码: e5xw
引用站外地址
...
前言
相机标定是计算机视觉的基础。由于物理原因,相机采集到的图像存在一定的畸变需要进行标定,从而矫正图像。为后期计算视差图、识别等做准备。
生成标定板
在标定前需要标定板帮助我们进行标定。对于一般标定,无需昂贵的高精度标定板,下面推荐一个生成标定板的网站。
引用站外地址
标定板生成网站
https://github.com/KB-talk/picx-images-hosting/raw/master/双目相机标定/image.3yehbset9j.webp
相机校正
相机校正包括单目校正和双目校正两个步骤,其中单目校正主要计算出相机的内参,来对镜头进行去畸变以及深度的推算。双目校正则是计算出左右相机的外参,知道外参后可以将左右相机分别旋转一定角度,以至左右相机的同名点在同一平面且同一水平线上。
实验
本实验完整代码已上传到Github中,下面内容为实验过程及代码说明。
实验器材
本次 ...



























