前言
学习几个月的mtcnn以及ssd等目标检测的源码,所以对caffe源码以及cmake基本用法都比较熟悉,而caffe源码的学习更加深了我对于卷积网络的理解,特别是理解mtcnn算法,而学习mtcnn算法则又加深了我对ssd源码的学习,真的感觉自己变强了,不过头发也没秃-_-。近来做项目有车牌识别准备通过mtcnn检测,然后用ssd对字符进行识别,感觉效果应该会比较好(虽然还未实现)。但由于对新知识的渴求,主要是需求在哪里(通过GAN网络生成图片进行训练,当然,次要原因想从源码理解对抗生成网络)。而pytorch的实现比较多,故最近需要学习pytorch,而然看了一天的pytorch以及AlexNet等常见卷积网路的实现,感觉对pytorch还是比较陌生,所以最近想先从源码编译入手,从源码来理解pytorch是如何实现对应的卷积池化等层,然后学习对抗生成网络(GAN)。当然,第一步首先是学习CMake然后找到对应的源码,所以在这里做一下笔记记录下来 -------------------- 2018.11.29
#CMake常用预定义变量
- PROJECT_SOURCE_DIR 所运行的CMakeList.txt所在文件夹下的工程目录
- CMAKE_CURRENT_SOURCE_DIR 当前处理的CMakeLists.txt所在的目录
在cmake还可以添加c++文件中的宏定义:
add_compile_definitions()
- 比如我们如果在所需编译的c++代码中调用了#ifdef CUDA,我们