< NCNN-Lession-10 > Forward Net

开始

今天我们学一下ncnn怎么进行网络前向的,学习了之后,会发现ncnn的网络前向流程的设计是多么的优雅,废话不多说,先插一个小红旗压压惊:

Read more

< NCNN-Lession-9 > Load Image

开始

由于马上学习网络forward的部分,这一节先学习一下ncnn如何读取外部图片的.

我们再插一个小红旗:

Read more
< NCNN-Lession-7 > Mat类的实现

< NCNN-Lession-7 > Mat类的实现

开始

这一节我们终于要学习Mat类.大家可以看到,这个类的名字”Mat”其实和Opencv中常用的Mat类是一样的名字,但二者不是同一个东西,一个是ncnn的Mat类,一个是Opencv的Mat类,大家要注意.好,废话不多说,我们再插上一个小红旗(压压惊):

Read more

< NCNN-Lession-6 > 内存管理,allocator的实现

开始

由于在下一节我们要学习最重要的Mat类的实现,所以我们这节要为下节做一下准备.我们这一节学习实现Mat类的一个关键,那就是内存分配方面的实现:allocator.

我们再插一个小红旗(压压惊):

Read more

< NCNN-Lession-5 > create_layer的实现

开始

在第三节我们实现了读取网络proto的基本流程,但是有一个功能没有实现,就是我们在实例化Layer的时候,其实是实例化了父类的Layer,并没有实例化子类的Layer,这样后面就没法调用子类Layer的方法.在上一节,我们实现了squeezenet中用到的所有子类Layer,所以在这一节,我们就实现如何对在读取网络proto的时候,智能的实例化不同的子类Layer.

我们继续插上新的小红旗:

Read more

< NCNN-Lession-4 > 创建layer子类

开始

今天我们开始下一节,那就是我们要开始创建Layer子类,因为有了Layer子类,我们才可以针对不同的op进行不同的操作.所以我们再次插上一个小红旗.

Read more

< NCNN-Lession-1 > 数据读取类DataReader

开始

从本篇开始,我们来拆解NCNN的代码,共同学习一下NCNN的相关知识.如果有错误,希望大佬指正,大家共同学习.

初步的大计划程如下:

Read more