1. 项目背景与核心价值
在建筑文化遗产保护领域,传统民居的数字化建档一直是个耗时费力的工作。过去需要专业人员实地勘测、手工绘制图纸,不仅效率低下,还容易因主观判断导致数据偏差。我们团队基于YOLOv5改进的RSCD模型,成功实现了传统民居建筑元素的自动化识别与标注,识别准确率较原版提升12.3%,特别在复杂背景下的榫卯结构检测中表现突出。
这个项目最实用的价值在于:当你在古镇考察时,用手机拍下老宅照片,系统就能自动标出屋脊形式、窗棂纹样等特征,并关联到建筑年代数据库。去年在江南水乡的实测中,我们仅用3天就完成了过去需要两周的民居普查工作。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 模型改进关键技术解析
2.1 RSCD模块设计原理
原版YOLOv5在检测细小建筑构件时,常出现漏检问题。我们在Backbone末端加入了Residual Spatial Context Detector(RSCD)模块,其核心创新点在于:
- 多尺度特征融合:通过3个并行的空洞卷积(dilation rate=3,5,7)捕获飞檐、斗拱等不同尺度的建筑元素
- 残差注意力机制:引入轻量化的ECA-Net模块,使模型更关注瓦当纹样、雕花细节等关键区域
- 上下文感知:新增的空间金字塔池化层(SPPF+)能识别构件之间的位置关系,比如门簪与门楣的配套特征
python复制class RSCD(nn.Module):
def __init__(self, c1, c2):
super().__init__()
self.cv1 = Conv(c1, c2, 1, 1)
self.dconv3 = Conv(c2, c2//3, 3, 1, dilation=3)
self.dconv5 = Conv(c2, c2//3, 3, 1, dilation=5)
self.dconv7 = Conv(c2, c2//3, 3, 1, dilation=7)
self.eca = ECAAttention(kernel_size=3)
def forward(self, x):
x = self.cv1(x)
x1 = self.
