介绍:.so文件类似于dll,可直接调用
1. 基于xx_kernel.cu 和xx.c 生成_rroi_pooling.so动态链接文件的过程
Rotated Roi_Pooling(cuda实现)代码来源:https://github.com/siyecao99999/RRPN/tree/master/caffe-fast-rcnn/src/caffe/layers/rotate_roi_pooling_layer.cu
(1)仿照FasterRCNN中roi_pooling_kernel.cu编写rroi_pooling_kernel.cu文件,主要是添加函数RotateROIPoolForward和RotateROIPoolBackward
(2)使用编译命令nvcc -c -o rroi_pooling.cu.o rroi_pooling_kernel.cu -D GOOGLE_CUDA=1 -x cu -Xcompiler -fPIC -arch=sm_52生成rroi_pooling.cu.o文件
(3)运行roi_pooling下的build.py文件,在_ext/rroi_pooling下生成文件_rroi_pooling.so
2. 基于xx_kernel.cu和xx.pyx生成rbbox_overlaps.so和rotate_polygon_nms.so动态链接文件的过程
rotated相关代码来自https://github.com/siyecao99999/RRPN/tree/master/lib/rotation
(1) 在FasterRCNN中的setup.py里面添加相关的Extension实例,如下所示:
(2)运行命令python setup.py build_ext --inplace