嵌入式TensorFlow Lite开发:代码定制、构建系统与测试实践
1. 项目文件获取与跨平台支持
在 tensorflow/lite/micro/tools/make/gen/disco_f746ng_x86_64/prj/micro_speech/mbed/ 目录下,你可以看到一组源文件,以及在Mbed环境中构建所需的所有依赖项和项目文件。同样的方法也适用于Keil和Arduino。还有一种通用版本,它仅输出源文件的文件夹层次结构,而不包含项目元信息(不过包含一个定义了一些构建规则的Visual Studio Code文件)。
可能有人会疑惑,这种Linux命令行方式对其他平台的用户有什么帮助。实际上,项目生成过程会作为每日持续集成工作流的一部分自动运行,并且在每次进行重大版本发布时也会运行。运行后,生成的文件会自动上传到公共Web服务器。这意味着所有平台的用户都能找到适合自己首选IDE的版本,并将项目作为一个独立的文件夹下载,而无需通过GitHub。
2. 代码定制
2.1 代码定制的机制
代码生成的一个好处是,很容易重写库的部分内容,使其在特定平台上运行良好,或者针对特定的参数集优化某个函数。为了解决一些构建环境在编译时难以传递自定义 #define 宏的问题,我们将库拆分为小模块。每个模块都有一个实现其默认功能的C++文件,以及一个定义其他代码可调用接口的C++头文件。
如果要编写模块的特定版本,可将新的实现保存为与原文件同名的C++实现文件,但放在原文件所在目录的子文件夹中。这个子文件夹的名称应该是你要定制的平台或功能的名称。在为该平台或
超级会员免费看
订阅专栏 解锁全文

421

被折叠的 条评论
为什么被折叠?



