作者|facebookresearch 編譯|flin **|github
如果你嘗試做一些全新的事情,你可能希望在detectron2中完全從頭開始實現乙個模型。但是,在許多情況下,你可能對修改或擴充套件現有模型的某些元件感興趣.因此,我們還提供了一種註冊機制,可讓你覆蓋標準模型的某些內部元件的行為。
例如,要新增新的主幹,請將以下**匯入你的**中:
from detectron2.modeling import backbone_registry, backbone, shapespec
@backbone_registry.register()
class toybackbone(backbone):
def __init__(self, cfg, input_shape):
# 建立你的backbone
self.conv1 = nn.conv2d(3, 64, kernel_size=7, stride=16, padding=3)
def forward(self, image):
return
def output_shape(self):
return
然後,可以在配置物件中使用cfg.model.backbone.name ='toybackbone'
。build_model(cfg)
將呼叫你的toybackbone
。
再舉乙個例子,要將新功能新增到廣義r-cnn元體系結構的roi頭中, 你可以實現乙個新的roiheads
子類並將其放在roi_heads_registry中。請參閱detectron2
和meshrcnn
中的densepose,以獲取實現新roihead以執行新任務的示例。project/
包含更多實現不同體系結構的示例。
完整的登錄檔列表可以在api文件中找到。你可以在這些登錄檔中註冊元件,以自定義模型的不同部分或整個模型。
sklearn機器學習中文官方文件:
Detectron2入門教程
目錄 1.概述 1.1.自己的原始碼閱讀流程 1.2.目錄結構 1.3.搭積木過程 1.4.官方文件閱讀 2.資料處理 2.1.概述 2.2.基本流程 2.3.build detection train loader 方法解析 2.4.其他 3.模型搭建 3.1.概述 3.2.基本流程 3.3.其他...
Detectron2 部署 十一
作者 facebookresearch 編譯 flin github caffe2部署 我們目前支援通過onnx將detectron2模型轉換為caffe2格式。轉換後的caffe2模型可以在python或c 中執行而無需detectron2依賴性。它具有針對cpu和移動裝置推理優化的執行時,但不適...
Detectron2 擴充套件預設值 三
作者 facebookresearch 編譯 flin github 研究是以新的方式做事。這給如何在 中建立抽象帶來了壓力,對於任何規模較大的研究工程專案而言,這都是乙個挑戰 一方面,它需要具有非常精簡的抽象,以允許以新方式進行所有操作。打破現有的抽象並將其替換為新的抽象應該相當容易。另一方面,這...