编译faster rcnn或mask rcnn的extension问题

按照github的readme执行,一般会先运行build.py文件编译nms和roi pooling或roi align。
但一般这一步都会出现一个问题:

ImportError: torch.utils.ffi is deprecated. Please use cpp extensions instead

网上其他的解决方案一般是:使用from torch.utils.cpp_extension import BuildExtension替换from torch.utils.ffi import create_extension,并且将code中的create_extension也全部替换掉,你们可以试试,但一般都会报错:

dist must be a Distribution instance

新坑又出现了……

其实原始的错误貌似是因为setuptools的版本太新了,所以最直接的解决办法就是降低版本。

还有一种解决办法可以参考https://github.com/facebookresearch/maskrcnn-benchmark/,extension的创建以及setup.py的作用均等同于老版的faster rcnn中的nms或roi pooling部分的build.py,当然具体代码我还没有研究,但有大佬已经提前做好了faster rcnn 1.0的代码,https://github.com/jwyang/faster-rcnn.pytorch/blob/pytorch-1.0/

### 回答1: Faster R-CNN和Mask R-CNN都是目标检测算法,但是Mask R-CNN在Faster R-CNN的基础上增加了实例分割的功能。 具体来说,Faster R-CNN是一种两阶段的目标检测算法,它首先使用一个区域提议网络(Region Proposal Network,RPN)生成候选区域,然后对每个候选区域进行分类和回归,以得到最终的目标检测结果。 而Mask R-CNN在Faster R-CNN的基础上增加了一个分割分支,用于生成每个目标的掩码,从而实现实例分割。具体来说,Mask R-CNN在Faster R-CNN的基础上增加了一个分割分支,用于生成每个目标的掩码,从而实现实例分割。 因此,相比于Faster R-CNN,Mask R-CNN不仅可以检测目标,还可以对目标进行精确的分割,适用于更加复杂的场景和任务。 ### 回答2: Faster R-CNN和Mask R-CNN是计算机视觉领域中目标检测任务中的两种常见模型,它们在一些方面有相似之处,但在其它方面又有很大不同。 首先,Faster R-CNN模型是一种经典的两阶段检测器,其主要思路是先通过一个卷积神经网络(CNN)得到图像的特征图,然后再将特征图输入到一个基于Region Proposal Network(RPN)的模块中,生成若干个候选区域。最后,对每个候选区域再用一个分类器和回归器进行目标检测。相比于之前的目标检测方法,如R-CNN和Fast R-CNN,Faster R-CNN无需在每个候选区域上运行CNN,因此速度更快,精度更高。 而Mask R-CNN则是在Faster R-CNN的基础上进一步扩展得到的,它不仅可以完成目标检测,而且还能够生成每个目标的像素级别的语义分割(即每个像素的类别标注)。Mask R-CNN主要是在RPN后面加上一个实例分割网络,用于对候选区域中的物体进行精细分割。其主要思路是在每个候选区域中分别生成一张二值掩膜,在后续处理中再将掩膜大小调整到目标区域大小。在进行像素级别的分割时,Mask R-CNN可以将后面的分类器与一个卷积神经网络并行处理,这样可以在不增加计算量的情况下提高检测和分割的速度和精度。 总体来说,Faster R-CNN和Mask R-CNN都是目标检测任务中的高效模型,但二者的优缺点也各自存在。Faster R-CNN模型速度更快,但精细分割效果不够好;而Mask R-CNN模型在目标检测的基础上进一步增加了精细分割的功能,但必须要在每个候选区域上计算二值掩膜,因此速度略慢。总体来说,不同的应用场景需要根据任务需求选择最合适的模型。 ### 回答3: Faster RCNNMask RCNN 是计算机视觉领域中两个著名的深度学习物体检测模型,它们都是基于 Region-based Convolutional Neural Networks (R-CNNs) 并且显著提升了物体检测的准确度,速度和效率。 Faster RCNN 是2015年提出的第一个 R-CNNs 实现,它采用了两个阶段的物体检测策略。第一阶段是 Region Proposal Network (RPN),它可以从图像中提取出可能包含物体的候选区域 (region proposals)。第二阶段是 Fast R-CNN,它在已经提取的候选区域上运行物体检测网络,从而得到检测结果。相比于其他物体检测方法,Faster RCNN 有许多优势,它不仅速度快,而且能够提高物体检测的准确度。 Mask RCNN 是比 Faster RCNN 更加先进的模型,它是由 Facebook AI Research 在2017年提出的。这个模型允许在物体检测的过程中识别对象的分割区域,从而更准确地确定物体的位置和形状。例如,当模型检测到人脸后,它可以给出每个人脸区域的精确像素级分割结果。因此,Mask RCNN 在许多需要非常准确的物体检测的场景中得到了广泛应用,例如医学图像分析和自动驾驶系统。 虽然 Faster RCNNMask RCNN 在物体检测任务中都表现得非常出色,但是它们也存在一些不同之处。Mask RCNN 相对于 Faster RCNN 稍慢些,但却能够提供更加准确的结果。 Faster RCNN 的优点在于它的速度和效率,在大规模场景下可以更快地检测出物体位置。当然这两个模型的使用情境以及需要优化的方向也不尽相同,具体需要根据场景需求进行选择。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值