当前位置: 首页 > news >正文

scalelsd 笔记 线段识别 本地部署 模型架构

ant-research/scalelsd | DeepWiki

https://arxiv.org/html/2506.09369?_immersive_translate_auto_translate=1

https://gitee.com/njsgcs/scalelsd

https://github.com/ant-research/scalelsd

https://huggingface.co/cherubicxn/scalelsd

模型链接: 

https://cdn-lfs-us-1.hf.co/repos/4b/b7/4bb773266cdc6bd3898cae785776f1dd52f835c2d4fcdf132ca4c487ecac7942/d0a7333c4de518a70af7d6ea4a283aa0ce9ffe1047525373b94070b1d1d4003f?response-content-disposition=attachment%3B+filename*%3DUTF-8%27%27scalelsd-vitbase-v2-train-sa1b.pt%3B+filename%3D%22scalelsd-vitbase-v2-train-sa1b.pt%22%3B&Expires=1752922960&Policy=eyJTdGF0ZW1lbnQiOlt7IkNvbmRpdGlvbiI6eyJEYXRlTGVzc1RoYW4iOnsiQVdTOkVwb2NoVGltZSI6MTc1MjkyMjk2MH19LCJSZXNvdXJjZSI6Imh0dHBzOi8vY2RuLWxmcy11cy0xLmhmLmNvL3JlcG9zLzRiL2I3LzRiYjc3MzI2NmNkYzZiZDM4OThjYWU3ODU3NzZmMWRkNTJmODM1YzJkNGZjZGYxMzJjYTRjNDg3ZWNhYzc5NDIvZDBhNzMzM2M0ZGU1MThhNzBhZjdkNmVhNGEyODNhYTBjZTlmZmUxMDQ3NTI1MzczYjk0MDcwYjFkMWQ0MDAzZj9yZXNwb25zZS1jb250ZW50LWRpc3Bvc2l0aW9uPSoifV19&Signature=fCSnqgEbqmYV7X3VhNo-uEz-ZO6gRvRUqtS4TzrEO2iSJ6U0LU%7EbrVwWwhc69FveoaXgoq7ikmJRWv7MZxomAF5qxPxQIr3Nhor1KyDeEp267ikFN6ASBAA8IcJ67unIWzT4d3CTrbNVh8wT0pn1JsL4gGK-Xl2A0x7%7ErVb9exw-8h7AUGDejkvg5yFbzrRIw6U4QqyuwOFpicMlZXNaPBPnjfyKuQmfdz4UzbZ4C5WeKKoUAa6sxsMTu-GEF4wv%7ETBbjQS1ev5ZQ2%7EYaZxZnICvEwcwdNxSpJPiZuJrrZq95xSOcTaTFORO-1wDT7zXJY9pdFPofzIV2CBv1i6AAQ__&Key-Pair-Id=K24J24Z295AEI9


https://cdn-lfs-us-1.hf.co/repos/4b/b7/4bb773266cdc6bd3898cae785776f1dd52f835c2d4fcdf132ca4c487ecac7942/a7eaabbfc5e79f8fc407251f923f791b39c739042eb585ca52bb85abe64c4ee7?response-content-disposition=attachment%3B+filename*%3DUTF-8%27%27scalelsd-vitbase-v1-train-sa1b.pt%3B+filename%3D%22scalelsd-vitbase-v1-train-sa1b.pt%22%3B&Expires=1752923360&Policy=eyJTdGF0ZW1lbnQiOlt7IkNvbmRpdGlvbiI6eyJEYXRlTGVzc1RoYW4iOnsiQVdTOkVwb2NoVGltZSI6MTc1MjkyMzM2MH19LCJSZXNvdXJjZSI6Imh0dHBzOi8vY2RuLWxmcy11cy0xLmhmLmNvL3JlcG9zLzRiL2I3LzRiYjc3MzI2NmNkYzZiZDM4OThjYWU3ODU3NzZmMWRkNTJmODM1YzJkNGZjZGYxMzJjYTRjNDg3ZWNhYzc5NDIvYTdlYWFiYmZjNWU3OWY4ZmM0MDcyNTFmOTIzZjc5MWIzOWM3MzkwNDJlYjU4NWNhNTJiYjg1YWJlNjRjNGVlNz9yZXNwb25zZS1jb250ZW50LWRpc3Bvc2l0aW9uPSoifV19&Signature=rtwQzCIgS2POke1hHELX2G7I-9MbRqzH51BWuHemwviaTAHyp1HaxOf3e%7EX1bGOld1k57ZR%7EHzeWh6D1PRLpaO-aG%7EgyhmCydrSIgkUzHd9VB2vGdGkoky8l9vP3HpUUkt7ERXCLInynopDd5191g3diZ0WyYy05d69Qel1ld-vhWlBOFrp8BzY%7EzLWnfITlCu0PGSlexlM86P9k0HaWor3vwqUYFJ0b0FVJ7DSrbRKIayP-S4M1fR4amT17tCXNDn3Jb-B2z4Eu1un-YpP67GeiItMuS0RtB4qkjHbJpVFKIQSvP0i08qb0HQuxiiN%7Ez%7EepWWWW1XxraAaWhbFcWA__&Key-Pair-Id=K24J24Z295AEI9

python predictor/predict.py -i Drawing_Annotation_Recognition8.v1i.yolov12/test/images/Snipaste_2025-07-12_19-54-54_png.rf.a562ea098219605eff9cb4ce58f09d0e.jpg

 

 

ptsd了看到这个界面就想到ai画图

 

比霍尔识别好,知道这里分两段,但是无中生有了线也缺线了,

 ​​​​​​​

 

有encoder

 

 

torchinfo看这个模型会报错好像是动态模型,模型里带if结构

 

 with open("model_structure.txt", "w") as f:f.write(str(model))
ScaleLSD((backbone): DPTFieldModel((pretrained): Module((model): VisionTransformer((patch_embed): HybridEmbed((backbone): ResNetV2((stem): Sequential((conv): StdConv2dSame(3, 64, kernel_size=(7, 7), stride=(2, 2), bias=False)(norm): GroupNormAct(32, 64, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(pool): MaxPool2dSame(kernel_size=(3, 3), stride=(2, 2), padding=(0, 0), dilation=(1, 1), ceil_mode=False))(stages): Sequential((0): ResNetStage((blocks): Sequential((0): Bottleneck((downsample): DownsampleConv((conv): StdConv2dSame(64, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): Identity()))(conv1): StdConv2dSame(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm1): GroupNormAct(32, 64, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv2): StdConv2dSame(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(norm2): GroupNormAct(32, 64, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv3): StdConv2dSame(64, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm3): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): Identity())(drop_path): Identity()(act3): ReLU(inplace=True))(1): Bottleneck((conv1): StdConv2dSame(256, 64, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm1): GroupNormAct(32, 64, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv2): StdConv2dSame(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(norm2): GroupNormAct(32, 64, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv3): StdConv2dSame(64, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm3): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): Identity())(drop_path): Identity()(act3): ReLU(inplace=True))(2): Bottleneck((conv1): StdConv2dSame(256, 64, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm1): GroupNormAct(32, 64, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv2): StdConv2dSame(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(norm2): GroupNormAct(32, 64, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv3): StdConv2dSame(64, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm3): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): Identity())(drop_path): Identity()(act3): ReLU(inplace=True))))(1): ResNetStage((blocks): Sequential((0): Bottleneck((downsample): DownsampleConv((conv): StdConv2dSame(256, 512, kernel_size=(1, 1), stride=(2, 2), bias=False)(norm): GroupNormAct(32, 512, eps=1e-05, affine=True(drop): Identity()(act): Identity()))(conv1): StdConv2dSame(256, 128, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm1): GroupNormAct(32, 128, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv2): StdConv2dSame(128, 128, kernel_size=(3, 3), stride=(2, 2), bias=False)(norm2): GroupNormAct(32, 128, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv3): StdConv2dSame(128, 512, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm3): GroupNormAct(32, 512, eps=1e-05, affine=True(drop): Identity()(act): Identity())(drop_path): Identity()(act3): ReLU(inplace=True))(1): Bottleneck((conv1): StdConv2dSame(512, 128, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm1): GroupNormAct(32, 128, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv2): StdConv2dSame(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(norm2): GroupNormAct(32, 128, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv3): StdConv2dSame(128, 512, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm3): GroupNormAct(32, 512, eps=1e-05, affine=True(drop): Identity()(act): Identity())(drop_path): Identity()(act3): ReLU(inplace=True))(2): Bottleneck((conv1): StdConv2dSame(512, 128, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm1): GroupNormAct(32, 128, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv2): StdConv2dSame(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(norm2): GroupNormAct(32, 128, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv3): StdConv2dSame(128, 512, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm3): GroupNormAct(32, 512, eps=1e-05, affine=True(drop): Identity()(act): Identity())(drop_path): Identity()(act3): ReLU(inplace=True))(3): Bottleneck((conv1): StdConv2dSame(512, 128, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm1): GroupNormAct(32, 128, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv2): StdConv2dSame(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(norm2): GroupNormAct(32, 128, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv3): StdConv2dSame(128, 512, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm3): GroupNormAct(32, 512, eps=1e-05, affine=True(drop): Identity()(act): Identity())(drop_path): Identity()(act3): ReLU(inplace=True))))(2): ResNetStage((blocks): Sequential((0): Bottleneck((downsample): DownsampleConv((conv): StdConv2dSame(512, 1024, kernel_size=(1, 1), stride=(2, 2), bias=False)(norm): GroupNormAct(32, 1024, eps=1e-05, affine=True(drop): Identity()(act): Identity()))(conv1): StdConv2dSame(512, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm1): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv2): StdConv2dSame(256, 256, kernel_size=(3, 3), stride=(2, 2), bias=False)(norm2): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv3): StdConv2dSame(256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm3): GroupNormAct(32, 1024, eps=1e-05, affine=True(drop): Identity()(act): Identity())(drop_path): Identity()(act3): ReLU(inplace=True))(1): Bottleneck((conv1): StdConv2dSame(1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm1): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv2): StdConv2dSame(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(norm2): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv3): StdConv2dSame(256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm3): GroupNormAct(32, 1024, eps=1e-05, affine=True(drop): Identity()(act): Identity())(drop_path): Identity()(act3): ReLU(inplace=True))(2): Bottleneck((conv1): StdConv2dSame(1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm1): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv2): StdConv2dSame(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(norm2): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv3): StdConv2dSame(256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm3): GroupNormAct(32, 1024, eps=1e-05, affine=True(drop): Identity()(act): Identity())(drop_path): Identity()(act3): ReLU(inplace=True))(3): Bottleneck((conv1): StdConv2dSame(1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm1): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv2): StdConv2dSame(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(norm2): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv3): StdConv2dSame(256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm3): GroupNormAct(32, 1024, eps=1e-05, affine=True(drop): Identity()(act): Identity())(drop_path): Identity()(act3): ReLU(inplace=True))(4): Bottleneck((conv1): StdConv2dSame(1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm1): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv2): StdConv2dSame(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(norm2): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv3): StdConv2dSame(256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm3): GroupNormAct(32, 1024, eps=1e-05, affine=True(drop): Identity()(act): Identity())(drop_path): Identity()(act3): ReLU(inplace=True))(5): Bottleneck((conv1): StdConv2dSame(1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm1): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv2): StdConv2dSame(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(norm2): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv3): StdConv2dSame(256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm3): GroupNormAct(32, 1024, eps=1e-05, affine=True(drop): Identity()(act): Identity())(drop_path): Identity()(act3): ReLU(inplace=True))(6): Bottleneck((conv1): StdConv2dSame(1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm1): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv2): StdConv2dSame(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(norm2): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv3): StdConv2dSame(256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm3): GroupNormAct(32, 1024, eps=1e-05, affine=True(drop): Identity()(act): Identity())(drop_path): Identity()(act3): ReLU(inplace=True))(7): Bottleneck((conv1): StdConv2dSame(1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm1): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv2): StdConv2dSame(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(norm2): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv3): StdConv2dSame(256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm3): GroupNormAct(32, 1024, eps=1e-05, affine=True(drop): Identity()(act): Identity())(drop_path): Identity()(act3): ReLU(inplace=True))(8): Bottleneck((conv1): StdConv2dSame(1024, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm1): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv2): StdConv2dSame(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(norm2): GroupNormAct(32, 256, eps=1e-05, affine=True(drop): Identity()(act): ReLU(inplace=True))(conv3): StdConv2dSame(256, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False)(norm3): GroupNormAct(32, 1024, eps=1e-05, affine=True(drop): Identity()(act): Identity())(drop_path): Identity()(act3): ReLU(inplace=True)))))(norm): Identity()(head): ClassifierHead((global_pool): SelectAdaptivePool2d(pool_type=, flatten=Identity())(drop): Dropout(p=0.0, inplace=False)(fc): Identity()(flatten): Identity()))(proj): Conv2d(1024, 768, kernel_size=(1, 1), stride=(1, 1)))(pos_drop): Dropout(p=0.0, inplace=False)(patch_drop): Identity()(norm_pre): Identity()(blocks): Sequential((0): Block((norm1): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(attn): Attention((qkv): Linear(in_features=768, out_features=2304, bias=True)(q_norm): Identity()(k_norm): Identity()(attn_drop): Dropout(p=0.0, inplace=False)(norm): Identity()(proj): Linear(in_features=768, out_features=768, bias=True)(proj_drop): Dropout(p=0.0, inplace=False))(ls1): Identity()(drop_path1): Identity()(norm2): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(mlp): Mlp((fc1): Linear(in_features=768, out_features=3072, bias=True)(act): GELU(approximate='none')(drop1): Dropout(p=0.0, inplace=False)(norm): Identity()(fc2): Linear(in_features=3072, out_features=768, bias=True)(drop2): Dropout(p=0.0, inplace=False))(ls2): Identity()(drop_path2): Identity())(1): Block((norm1): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(attn): Attention((qkv): Linear(in_features=768, out_features=2304, bias=True)(q_norm): Identity()(k_norm): Identity()(attn_drop): Dropout(p=0.0, inplace=False)(norm): Identity()(proj): Linear(in_features=768, out_features=768, bias=True)(proj_drop): Dropout(p=0.0, inplace=False))(ls1): Identity()(drop_path1): Identity()(norm2): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(mlp): Mlp((fc1): Linear(in_features=768, out_features=3072, bias=True)(act): GELU(approximate='none')(drop1): Dropout(p=0.0, inplace=False)(norm): Identity()(fc2): Linear(in_features=3072, out_features=768, bias=True)(drop2): Dropout(p=0.0, inplace=False))(ls2): Identity()(drop_path2): Identity())(2): Block((norm1): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(attn): Attention((qkv): Linear(in_features=768, out_features=2304, bias=True)(q_norm): Identity()(k_norm): Identity()(attn_drop): Dropout(p=0.0, inplace=False)(norm): Identity()(proj): Linear(in_features=768, out_features=768, bias=True)(proj_drop): Dropout(p=0.0, inplace=False))(ls1): Identity()(drop_path1): Identity()(norm2): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(mlp): Mlp((fc1): Linear(in_features=768, out_features=3072, bias=True)(act): GELU(approximate='none')(drop1): Dropout(p=0.0, inplace=False)(norm): Identity()(fc2): Linear(in_features=3072, out_features=768, bias=True)(drop2): Dropout(p=0.0, inplace=False))(ls2): Identity()(drop_path2): Identity())(3): Block((norm1): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(attn): Attention((qkv): Linear(in_features=768, out_features=2304, bias=True)(q_norm): Identity()(k_norm): Identity()(attn_drop): Dropout(p=0.0, inplace=False)(norm): Identity()(proj): Linear(in_features=768, out_features=768, bias=True)(proj_drop): Dropout(p=0.0, inplace=False))(ls1): Identity()(drop_path1): Identity()(norm2): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(mlp): Mlp((fc1): Linear(in_features=768, out_features=3072, bias=True)(act): GELU(approximate='none')(drop1): Dropout(p=0.0, inplace=False)(norm): Identity()(fc2): Linear(in_features=3072, out_features=768, bias=True)(drop2): Dropout(p=0.0, inplace=False))(ls2): Identity()(drop_path2): Identity())(4): Block((norm1): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(attn): Attention((qkv): Linear(in_features=768, out_features=2304, bias=True)(q_norm): Identity()(k_norm): Identity()(attn_drop): Dropout(p=0.0, inplace=False)(norm): Identity()(proj): Linear(in_features=768, out_features=768, bias=True)(proj_drop): Dropout(p=0.0, inplace=False))(ls1): Identity()(drop_path1): Identity()(norm2): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(mlp): Mlp((fc1): Linear(in_features=768, out_features=3072, bias=True)(act): GELU(approximate='none')(drop1): Dropout(p=0.0, inplace=False)(norm): Identity()(fc2): Linear(in_features=3072, out_features=768, bias=True)(drop2): Dropout(p=0.0, inplace=False))(ls2): Identity()(drop_path2): Identity())(5): Block((norm1): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(attn): Attention((qkv): Linear(in_features=768, out_features=2304, bias=True)(q_norm): Identity()(k_norm): Identity()(attn_drop): Dropout(p=0.0, inplace=False)(norm): Identity()(proj): Linear(in_features=768, out_features=768, bias=True)(proj_drop): Dropout(p=0.0, inplace=False))(ls1): Identity()(drop_path1): Identity()(norm2): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(mlp): Mlp((fc1): Linear(in_features=768, out_features=3072, bias=True)(act): GELU(approximate='none')(drop1): Dropout(p=0.0, inplace=False)(norm): Identity()(fc2): Linear(in_features=3072, out_features=768, bias=True)(drop2): Dropout(p=0.0, inplace=False))(ls2): Identity()(drop_path2): Identity())(6): Block((norm1): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(attn): Attention((qkv): Linear(in_features=768, out_features=2304, bias=True)(q_norm): Identity()(k_norm): Identity()(attn_drop): Dropout(p=0.0, inplace=False)(norm): Identity()(proj): Linear(in_features=768, out_features=768, bias=True)(proj_drop): Dropout(p=0.0, inplace=False))(ls1): Identity()(drop_path1): Identity()(norm2): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(mlp): Mlp((fc1): Linear(in_features=768, out_features=3072, bias=True)(act): GELU(approximate='none')(drop1): Dropout(p=0.0, inplace=False)(norm): Identity()(fc2): Linear(in_features=3072, out_features=768, bias=True)(drop2): Dropout(p=0.0, inplace=False))(ls2): Identity()(drop_path2): Identity())(7): Block((norm1): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(attn): Attention((qkv): Linear(in_features=768, out_features=2304, bias=True)(q_norm): Identity()(k_norm): Identity()(attn_drop): Dropout(p=0.0, inplace=False)(norm): Identity()(proj): Linear(in_features=768, out_features=768, bias=True)(proj_drop): Dropout(p=0.0, inplace=False))(ls1): Identity()(drop_path1): Identity()(norm2): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(mlp): Mlp((fc1): Linear(in_features=768, out_features=3072, bias=True)(act): GELU(approximate='none')(drop1): Dropout(p=0.0, inplace=False)(norm): Identity()(fc2): Linear(in_features=3072, out_features=768, bias=True)(drop2): Dropout(p=0.0, inplace=False))(ls2): Identity()(drop_path2): Identity())(8): Block((norm1): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(attn): Attention((qkv): Linear(in_features=768, out_features=2304, bias=True)(q_norm): Identity()(k_norm): Identity()(attn_drop): Dropout(p=0.0, inplace=False)(norm): Identity()(proj): Linear(in_features=768, out_features=768, bias=True)(proj_drop): Dropout(p=0.0, inplace=False))(ls1): Identity()(drop_path1): Identity()(norm2): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(mlp): Mlp((fc1): Linear(in_features=768, out_features=3072, bias=True)(act): GELU(approximate='none')(drop1): Dropout(p=0.0, inplace=False)(norm): Identity()(fc2): Linear(in_features=3072, out_features=768, bias=True)(drop2): Dropout(p=0.0, inplace=False))(ls2): Identity()(drop_path2): Identity())(9): Block((norm1): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(attn): Attention((qkv): Linear(in_features=768, out_features=2304, bias=True)(q_norm): Identity()(k_norm): Identity()(attn_drop): Dropout(p=0.0, inplace=False)(norm): Identity()(proj): Linear(in_features=768, out_features=768, bias=True)(proj_drop): Dropout(p=0.0, inplace=False))(ls1): Identity()(drop_path1): Identity()(norm2): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(mlp): Mlp((fc1): Linear(in_features=768, out_features=3072, bias=True)(act): GELU(approximate='none')(drop1): Dropout(p=0.0, inplace=False)(norm): Identity()(fc2): Linear(in_features=3072, out_features=768, bias=True)(drop2): Dropout(p=0.0, inplace=False))(ls2): Identity()(drop_path2): Identity())(10): Block((norm1): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(attn): Attention((qkv): Linear(in_features=768, out_features=2304, bias=True)(q_norm): Identity()(k_norm): Identity()(attn_drop): Dropout(p=0.0, inplace=False)(norm): Identity()(proj): Linear(in_features=768, out_features=768, bias=True)(proj_drop): Dropout(p=0.0, inplace=False))(ls1): Identity()(drop_path1): Identity()(norm2): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(mlp): Mlp((fc1): Linear(in_features=768, out_features=3072, bias=True)(act): GELU(approximate='none')(drop1): Dropout(p=0.0, inplace=False)(norm): Identity()(fc2): Linear(in_features=3072, out_features=768, bias=True)(drop2): Dropout(p=0.0, inplace=False))(ls2): Identity()(drop_path2): Identity())(11): Block((norm1): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(attn): Attention((qkv): Linear(in_features=768, out_features=2304, bias=True)(q_norm): Identity()(k_norm): Identity()(attn_drop): Dropout(p=0.0, inplace=False)(norm): Identity()(proj): Linear(in_features=768, out_features=768, bias=True)(proj_drop): Dropout(p=0.0, inplace=False))(ls1): Identity()(drop_path1): Identity()(norm2): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(mlp): Mlp((fc1): Linear(in_features=768, out_features=3072, bias=True)(act): GELU(approximate='none')(drop1): Dropout(p=0.0, inplace=False)(norm): Identity()(fc2): Linear(in_features=3072, out_features=768, bias=True)(drop2): Dropout(p=0.0, inplace=False))(ls2): Identity()(drop_path2): Identity()))(norm): LayerNorm((768,), eps=1e-06, elementwise_affine=True)(fc_norm): Identity()(head_drop): Dropout(p=0.0, inplace=False)(head): Linear(in_features=768, out_features=1000, bias=True))(act_postprocess1): Sequential((0): Identity()(1): Identity()(2): Identity())(act_postprocess2): Sequential((0): Identity()(1): Identity()(2): Identity())(act_postprocess3): Sequential((0): ProjectReadout((project): Sequential((0): Linear(in_features=1536, out_features=768, bias=True)(1): GELU(approximate='none')))(1): Transpose()(2): Unflatten(dim=2, unflattened_size=torch.Size([24, 24]))(3): Conv2d(768, 768, kernel_size=(1, 1), stride=(1, 1)))(act_postprocess4): Sequential((0): ProjectReadout((project): Sequential((0): Linear(in_features=1536, out_features=768, bias=True)(1): GELU(approximate='none')))(1): Transpose()(2): Unflatten(dim=2, unflattened_size=torch.Size([24, 24]))(3): Conv2d(768, 768, kernel_size=(1, 1), stride=(1, 1))(4): Conv2d(768, 768, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))))(scratch): Module((layer1_rn): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(layer2_rn): Conv2d(512, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(layer3_rn): Conv2d(768, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(layer4_rn): Conv2d(768, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(refinenet1): FeatureFusionBlock_custom((out_conv): Conv2d(256, 256, kernel_size=(1, 1), stride=(1, 1))(resConfUnit1): ResidualConvUnit_custom((conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)(bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)(activation): ReLU()(skip_add): FloatFunctional((activation_post_process): Identity()))(resConfUnit2): ResidualConvUnit_custom((conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)(bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)(activation): ReLU()(skip_add): FloatFunctional((activation_post_process): Identity()))(skip_add): FloatFunctional((activation_post_process): Identity()))(refinenet2): FeatureFusionBlock_custom((out_conv): Conv2d(256, 256, kernel_size=(1, 1), stride=(1, 1))(resConfUnit1): ResidualConvUnit_custom((conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)(bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)(activation): ReLU()(skip_add): FloatFunctional((activation_post_process): Identity()))(resConfUnit2): ResidualConvUnit_custom((conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)(bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)(activation): ReLU()(skip_add): FloatFunctional((activation_post_process): Identity()))(skip_add): FloatFunctional((activation_post_process): Identity()))(refinenet3): FeatureFusionBlock_custom((out_conv): Conv2d(256, 256, kernel_size=(1, 1), stride=(1, 1))(resConfUnit1): ResidualConvUnit_custom((conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)(bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)(activation): ReLU()(skip_add): FloatFunctional((activation_post_process): Identity()))(resConfUnit2): ResidualConvUnit_custom((conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)(bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)(activation): ReLU()(skip_add): FloatFunctional((activation_post_process): Identity()))(skip_add): FloatFunctional((activation_post_process): Identity()))(refinenet4): FeatureFusionBlock_custom((out_conv): Conv2d(256, 256, kernel_size=(1, 1), stride=(1, 1))(resConfUnit1): ResidualConvUnit_custom((conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)(bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)(activation): ReLU()(skip_add): FloatFunctional((activation_post_process): Identity()))(resConfUnit2): ResidualConvUnit_custom((conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)(bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)(bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)(activation): ReLU()(skip_add): FloatFunctional((activation_post_process): Identity()))(skip_add): FloatFunctional((activation_post_process): Identity()))(output_conv): Sequential((0): Conv2d(256, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))(1): ReLU(inplace=True)(2): MultitaskHead((heads): ModuleList((0): Sequential((0): Conv2d(128, 32, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))(1): ReLU(inplace=True)(2): Conv2d(32, 3, kernel_size=(1, 1), stride=(1, 1)))(1-2): 2 x Sequential((0): Conv2d(128, 32, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))(1): ReLU(inplace=True)(2): Conv2d(32, 1, kernel_size=(1, 1), stride=(1, 1)))(3-4): 2 x Sequential((0): Conv2d(128, 32, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))(1): ReLU(inplace=True)(2): Conv2d(32, 2, kernel_size=(1, 1), stride=(1, 1))))))))(loss): CrossEntropyLoss()(bce_loss): BCEWithLogitsLoss()
)

http://www.lryc.cn/news/593724.html

相关文章:

  • 【面试题】大厂高压面经实录丨第三期
  • SpringBoot服装推荐系统实战
  • 石子问题(区间dp)
  • 泛型机制详解
  • Java中缓存的使用浅讲
  • 从代码学习深度强化学习 - SAC PyTorch版
  • openmv小车追小球
  • PCA主成分分析
  • xss-labs1-8题
  • lvs笔记
  • JAVA高级第六章 输入和输出处理(一)
  • python类Keys
  • OpenCV 官翻 2 - 图像处理
  • CAN通信驱动开发注意事项
  • 使用C#对象将WinRiver项目文件进行复杂的XML序列化和反序列化实例详解
  • 软考高级之工程工期成本计算题
  • 用虚拟机体验纯血鸿蒙所有机型!
  • 深入解析LVS负载均衡核心原理
  • Python MCP与Excel增强智能:构建下一代数据处理和自动化解决方案
  • 线性回归问题
  • 【超详细笔记】概率:中心极限定理的直观理解——样本均值为何趋近正态
  • Linux“一切皆文件“设计哲学 与 Linux文件抽象层:struct file与file_operations的架构解析
  • 使用 validation 框架生成一个校验参数是否在枚举内的校验器
  • 环形区域拉普拉斯方程傅里叶级数解
  • DC-DC降压转换5.5V/3A高效率低静态同步降压转换具有自适应关断功能
  • 基于 Google Earth Engine 的 DEM 鞍部自动提取
  • 动态规划——状压DP经典题目
  • 鸿蒙蓝牙通信
  • 【Java源码阅读系列56】深度解读Java Constructor 类源码
  • GitLab 社区版 10.8.4 安装、汉化与使用教程