中易网

caffe中怎么写python层

答案:1  悬赏:30  
解决时间 2021-02-21 01:15
caffe中怎么写python层
最佳答案
这两天一直在研究faster rcnn的源码,可是依旧感觉云里雾里,故下定决心把caffe调用Python
layer的流程仔细走一遍,好明白到底是什么在调用python layer。话说 linux
调试还真是蛋疼啊,木有ide那样直接下断点,gdb又不会用,只能傻比比的不断的LOG(INFO)输出。还好最终还是明白了,我就直接顺着
faster rcnn来说,并记录在此。
faster
rcnn最核心的代码就是在lib文件中,其他的都只是各种调用文件而已。不过lib里写了很多个模块,如何让caffe知道模块在哪里,并调用呢?这是
我搞一晚上的初衷。我先大概说一下caffe正常的流程,首先从文件中读入solver并生成一个solver,然后根据solver的net路径生成一
个net,net调用layer_factory循环生成每个层,最后根据读入model或是filler来初始化参数。实际上也怪自己马虎大意,没太细
看代码,导致所用的时间比较多。从上面的流程可以知道layer_factory是循环生成每个层,我看.cpp文件也的确写了#if
WITH_PYTHON_LAYER,然后有什么什么操作,比如储存python
layer的python_param,并调用setup,不过我没看出来这里实际上已经是利用boost进行C++
Python混编了。这些操作的定义就在python_layer.hpp文件中,我当初还以为在什么pythonXXX.cpp中,找了半天也没找到。
layer_factory中python
layer的setup相关具体操作是,先根据param找到module的位置,再加载module,再根据层名加载层,然后前向计算反向计算什么的。
这些就已经算是达到目的了。不过只是知道相对路径,怎么可能加载成功呢?然后又继续找啊找,终于在faster
rcnn的tools文件中找到。_init_paths里有写一些预操作,比如将lib路径写入PYTHONPATH中,当然如果写入的话,这样就可以
直接加载了。终于搞定。
这次也算是个小问题而已,不过只有再理清了整条脉络,看代码才会更加清晰,故也算是个重要的问题吧。不过这次也算是暴露了我不认真的问题,以后还是要耐心仔细找答案才行啊。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
我有一11平台账号,名为whenyousay,密码为po
爸爸带我去爬树这篇短文的背景资料
奇瑞和开瑞到底是什么关系?
凌迟到底有多痛,五马分尸了?
我的ipad登录qq提示对不起,您的qq签名错误,登
亲戚家买了君盟天派的沙发,还不错。广大网友
妇联房介婚介中心地址在哪,我要去那里办事
黄马路/S322(路口)地址在哪,我要去那里办事
孙媳妇有权继承奶奶的土地吗
i2国际私塾(桐梓林校区)这个地址在什么地方,
请问大家,要拉直头发,去普通店和好的店效果会
小朱家庄村地址有知道的么?有点事想过去
小四年级作文写介绍永春的一项工艺品
急 狗狗桃子怎么这样啊 是不是发情啊?可是没
麦客纯K安吉店在什么地方啊,我要过去处理事
推荐资讯
求一个简单的C# winform TCP同步socket能成功
甲丽净地址有知道的么?有点事想过去
登陆手机大智慧提示转发错误
牵手婚庆摄影楼地址在哪,我要去那里办事
求出处。。。。。求大神指路 越详细越好,最
移动亲情号码如果解绑不缴费还会显示短号吗
大连青泥洼街道办事处在什么位置上
如何把百分之75的酒精调成百分之60的酒精
对口高职填报志愿时能换专业填吗
城西大药房在哪里啊,我有事要去这个地方
网通管业洛阳营销中心我想知道这个在什么地方
盱眙县旧铺派出所地址有知道的么?有点事想过
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?