?使用Linux ?grep 命令莱坎。例如在src/caffe/layer_factory.cpp 中有個宏調(diào)用:REGISTER_LAYER_CREATOR(Pooling,GetPoolingLayer)
cd $caffe_root
grep -n -H -R "REGISTER_LAYER_CREATOR"
命令行參數(shù)解釋:
-n ? --顯示行號,便于定位
-H ?--顯示文件名便于定位
-R ? --遞歸查詢每一個子目錄,適合工程較大钾恢,分對歌目錄存放的場景
直觀的顯示了所有包含這個宏的文件名和行號穆壕,我們能通過數(shù)策劃仔細(xì)甄別出宏定義的位置弃衍,另外,無需分別打開每個文件署照,也能看到這個那個工程中所有通過該宏注冊的層生成器(卷積層,下采樣層吗浩,非線形層Sigmoid,ReLU,和TanH,分類層So f t ma x,以及python 層建芙。)打開include/caffe/layer_factory.hpp ,跳到第113行可以看到該宏的定義
#define REGISTER_LAYER_CREATOR(type, creator)?
?static LayerRegistererg_creator_f_##type(#type, creator);?
?static LayerRegistererg_creator_d_##type(#type, creator)