Datawhale Intel视觉识别 学习心得1

1. 人工智能引论

2. 计算机视觉

  1. 视频本质上是由一系列连续的图像构成,但因为图像之间的移动速度够快,让人们感受不到图片之间的切换,进而感受到物体的连续运动。
  2. 图像是由像素阵构成。
  3. 每个像素都有其表示强度的值,通常用RGB三个基本色来表示某个彩色颜色,其中灰色则是通过介于白色 0和黑色 255之间的值来表示。
  4. 平滑处理—对于图像中的每个像素的值都替换为周围8个像素的平均值,会得到较为模糊的图像。该方法被称为—模糊
  5. 反向扩大每个像素点与周围8个像素点差异的处理方法称为—锐化,若继续进行锐化,保留像素值中的显著差异,最终只能够看到物体的边缘。不断锐化只能看到表现强烈的边缘,此时可以用来查找特定目标,比如四条腿连在一个平面,便是一张桌子。
  6. OpenCV是用来加速计算机视觉的软件

3.视频处理

  1. 视频需要压缩来节省空间
  2. 利用—冗余,用较的比特呈现更的数据并使得信息的损失不那么大
  3. 空间冗余—在视频中连续的几张照片的同个位置,如果所有像素都是几乎相同的颜色,那么不需要储存这几张图片的所有该位置的像素,只需要存储该位置颜色的平均值,在显示时,将该颜色显示在该位置每一个像素点
  4. 时间冗余—若某个位置的颜色不发生改变,只是发生了平移,通常来说也不需要重复存储所有的这些像素,只需要存储第一张该位置的像素值
  5. I frame(I 帧)用来存储某一帧的所有像素,P frame(P 帧)用来存储前后两个I帧之间的差异,包含了如何从前一帧生成到该帧的方法,该帧的数据通常只有I帧的二分之一;I帧与P帧之间是B frame(B 帧),数据只有I帧的四分之一
  6. 视频传输需要通过压缩解压缩来实现(使用同一套规则:编解码器,例如Media-SDK)

4.神经网络

  1. 通过组合特征找到目标—提取特征值乘以权重,这些相乘的结果如果是1,则表示符合目标,如果为0,则表示不符合目标
  2. 对于不同的物体,需要改变具体某个对应的权重来做进一步的判别,实现更强大的归类区分
  3. 若想要检测出具体的某个物体,则需要一个更为复杂的函数来实现,需要用到神经网络
  4. 神经网络—内部层称为隐藏层,因此被称为深度学习
  5. 训练—用大量的数据集通过神经网络来判断出是否是猫,如果有误判的,则往回检查,改进权重,降低错误率,以获得具有特定权重的神经网络。以此反复操作,使得错误率降到最低
  6. 推理—输入一张新的猫的图像得到的结果称为推理
  7. 分类模型可以告诉图像包含特定模型的概率
  8. 检测模型可以检查目标模型的边界框
  9. 分隔模型可以对图像中的每个像素进行分类并告诉我们是否为特定对象
  10. DLDT(Deep Learning Deployment Toolkit—深度学习部署工具包)是一个训练完成的模型,处理来自深度学习框架的模型;然后使用模型优化器将所有格式的模型转化为中间模式(IR),可以转化模型,还可以更改权重格式优化拓扑等,之后,推理引擎将读取IR文件,并使用它们在AI应用中进行推理。(推理引擎上的代码只需要做少量修改便可以在英特尔多种硬件设备上进行推理)。
  11. 推理引擎—使用不同的库来实现神经网络的运算

5.综合应用

     视频分析=视频处理+计算机视觉+AI推理

  1. AI推理对视频进行分析
    1. 逐帧处理
      1. 解压
      2. 预处理—通过锐化,亮度调整等操作改善图像;缩小图像,或者截取感兴趣的局部图像;跳过次帧或者推理所有帧
      3. 推理—用深度学习模型进行推理;该阶段可能包含多个推理,可以对对象进行分类与检测然后分类更多对象。
      4. 后处理—继续处理原始图像
      5. 压缩
    2. 跨帧处理
      1. 跟踪—没必要重新检测,节省计算资源
      2. 使用OpenCv处理计算机视觉
    3. 使用Media-SDK进行视频解码,编码与处理
    4. 使用深度学习部署套件DLDT进行推理

6.OpenVino

  1. -i 表示使用视频输入的类型
  2. -m 表示使用的模型来源
  3. -nc 表示摄像头的数量
  4. -d 表示在某个集成显卡上操作
  5. 使用Netron进行拓扑结构的查看
  6. 读入的视频模型文件可以是.xml文件

7.工具的使用

     构建AI应用的流程

  1. 寻找模型—基于深度学习的模型来分析任务,如分割,检测等;一般在另一个模型进行训练,例如Tensorflow,coffe等训练框架
  2. 准备推理—一般在云环境中进行训练,因为拥有所需的所有资源;有时在较小的模型上进行准备,且必要时进行转换数据格式
  3. 性能指标评测—可以使用多种优化技术和多种数据格式进行评测,从而选择满足性能要求的平台
  4. 系统的选择—通过所需选取不同的CPU,GPU,FPGA,AI加速器
  5. 解码编码原理—使用尽可能多的摄像头来降低总体的成本;解码编码和推理是一起运行的
  6. 模拟完整的工作负载
  7. 构建软件—将所准备的内容整合到现有的应用中

总结:该初级教程讲解适合初级学习者入门,强大的工具套件支持拉进了人工智能与人们之间的距离,该课程讲解极好,建议初学者多反复进行学习以强化基础知识。这是我第一次发表学习笔记,以后会不断改善做修改,并坚持做学习笔记,每天学多一点,距离目标更近一点。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值