Method Article

蝇黑腹蝇追踪与自动行为定量的方案

DOI:

10.3791/71417

July 24th, 2026

* These authors contributed equally

In This Article

Summary

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

该协议利用Python的姿态估计来追踪成对果 的关键体位,促进了对微妙社会行为(尤其是社交互动中的)的自动量化,以及热图和运动轨迹。

Abstract

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

为了开发一种开源分析工具,克服传统基于质心追踪方法的局限,我们提出了一个方案,用于准确分析自由行为果 配对的社交互动。具体来说,该方案灵感来自高分辨率网络(HRNet)框架,旨在同时追踪五个解剖关键点——头部、胸部、腹部以及左右翼尖——旨在生成高分辨率的坐标数据,用于后续社会行为的定量分析。该协议基于Python和我们设计的图形用户界面(GUI)提供了完整的工作流程,包括数据集构建、模型训练和自动坐标提取,并集成了生成空间占有热图、运动轨迹和苍蝇社交互动比率的模块。为验证该框架,采用了两种广泛使用的菌株 w1118 和 Canton-S(CS)进行测试。我们的结果证明了关键点检测的稳定性,并揭示了基因型在空间利用和机车结构上的特异性差异。该方法为果 的定量行为学和自动社会互动分析提供了可扩展的基础,同时减少了人工注释的工作量,提高了重复性。

Introduction

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

是一种广泛使用的模式生物,拥有强大的遗传工具和清晰的神经回路,能够进行行为的机理性解剖。它具有广泛的社交行为,包括求偶和攻击性,以及强大的学习能力 2,3,4,5,6,7,8。每个神经系统由不同的运动元件组成,这些运动单元由紧凑但极其有序的神经系统控制。重要的是,精确测量身体姿势对于理解行动选择的神经学基础至关重要,因为许多行为包含编码情境和内在状态信息的细微姿势动机(9,10)。

尽管需要单次果蝇分辨率来捕捉个体差异,许多果的高通量行为检测仍依赖群体级指标11。高通量行为检测包括社会偏好的T迷宫测试12,13、量化蝇间距离的社会间距测试,或感官刺激下的聚合/回避范式14,这些都能有效捕捉种群趋势。然而,它们本质上涉及个体间的平均值,从而掩盖了行动序列的异质性和社会交换的时间结构。多年来,尝试采用功能受限的方法,如基于规则的运动阈值事件检测、背景减法和质心追踪,以及手动视频标注15161718。因此,像扑击、拍打或翅膀威胁等离散行为常被忽视或错误标注,需要大量人工纠正。此类约束限制了需要精确时间对齐神经活动与个体动作的机制性研究。

得益于计算机视觉和基于机器学习的姿态估计的最新发展,一种革命性的解决方案现已问世。像DeepLabCut19 和SLEAP20 这样的开源框架实现了无标记的身体部位检测、可扩展的离散动作分类,以及即使在密切互动中也能保持个体身份。这些特性克服了以往基于群体和规则驱动方法的缺点,使复杂社会行为能够重复量化。

果蝇中的个体互动具有独特的运动特征,表明社会互动的进展。例如,攻击性包括典型行为,如扑击、翅膀威胁和缠斗,这些都代表了冲突升级阶段21,22。求偶行为同样由方向、单侧翅膀伸展伴随鸣唱、拍打和尝试交配来定义,这些因素共同构成了交配互动的时间序列23。捕捉这些意象依赖于对身体姿势和关节动作的准确识别24,25。实际上,采样需要在较长时间的记录中达到高空间和时间分辨率,以确保细微的运动模式能够被精确检测并与神经活动对齐 25,26

在这里,我们提出了一个开源、基于视觉的框架,用于自动识别五个解剖关键点——头部、胸部、腹部、左右翼尖部27。该系统包含完整的数据集构建、模型训练和坐标提取工作流程,并输出适合可定制行为分类的高分辨率时间序列数据。通过自动化人工注释流程和标准化分析流程,我们的方法实现了对社交互动行为的精细定量分析,提高了效率和可重复性,同时显著减少了分析所需的时间和劳动力。

为验证系统的可靠性,我们将该系统应用于两种常用实验室菌株w1118和Canton-S(CS),观察到跨帧的关键点检测稳定,以及基于头部距离和方向角的基因型特异性空间占有率、轨迹特征和社交互动指标差异。研究人员可以根据所需的时空分辨率(≥30 fps,≤0.5 mm/像素)和视频录制条件(照明和对比度)来评估该方案的适用性。像素大小可以直接通过相机设置确定。测量到体长的果蝇可以放置在成像视场内进行校准。该协议特别适用于以下情形:需要同时追踪两只自由互动的 果蝇 并区分它们的个体身份;关注细微姿势(如头部角度和距离),而不仅仅是重心位置;录制时长超过10分钟,无法手动注释;在后续分析中,行为事件与神经活动(如钙成像或电生理)之间需要毫秒级的时间对齐。

Protocol

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

1. 飞蝇准备

  1. 在实验前,在短暂的CO₂麻醉下,收集并进行约3至4天大的果蝇进行性别检测。
    注意:麻醉持续时间和二氧化碳流量可能因各实验室所用二氧化碳气瓶的规格和压力而异。麻醉期间应持续监测苍蝇,且仅应维持二氧化碳暴露,直到苍蝇完全麻醉且完全停止运动。
  2. 将每只果蝇单独放入50毫升Falcon管中,内含标准玉米粉-琼脂-葡萄糖-酵母培养基。
  3. 使用前,在25°C下保持12小时的光暗循环。

2. 竞技场建设

  1. 准备两块3毫米透明丙烯板和一块3毫米聚乙烯板。
  2. 在聚乙烯板中心切割四个圆形腔室(每个直径35毫米)。
  3. 用夹子将一块丙烯板与聚乙烯板结合,形成腔体底座;保留第二个丙烯板作为可拆卸的盖子。

figure-protocol-1
图1:行为领域及成像装置示意图。(A) 定制观测舱的建造如图所示。腔室由三层主要结构组成:3毫米透明丙烯酸底板;一块3毫米的聚乙烯板,配有四个直径35毫米的圆形切口作为独立的舱口;以及第二块可拆卸的压克力板。(B) 使用90°适配器夹将相机垂直安装在40厘米的光学杆上。在俯视成像中,相机直接位于多层观测场上方,光学轴垂直于腔体表面。 请点击此处查看该图的放大版本。

3. 成像设置

  1. 组装两根20厘米的光学杆和一根40厘米的杆,配有90°适配器夹。
  2. 将摄像机(1280 × 1024像素)垂直安装在40厘米的杆子上,垂直于场馆表面,并将帧率设置为150 fps。
  3. 将竞技场放置在一块25厘米×可调光的日光白LED面板上,覆盖一层扩散膜。
  4. 在场地表面将照明调到大约1500勒克斯。
    注意:确保机翼边缘在二进制预览中保持可见。避免使用>2000勒克斯,以防止热量诱发的伪影,因为果蝇可能因光源的热应力而改变其自然运动或分布。

4. 录制程序

  1. 在场地每个角落下方放置3厘米厚的泡沫垫以稳定场地。
  2. 将在二氧化碳麻醉下的蝇对转移到腔体内;用上层丙烯酸板封口。
  3. 让苍蝇适应环境40分钟后再记录。
  4. 使用MIAS.exe27开始视频采集:按Q开始,按C停止。
    注意:这会导致在标准条件下自由互动的飞对连续录影。

5. 定义社会活动小组

  1. 运行预处理脚本:python SoAL_PreProcess.py [video_file_path]
    注意:所有编码脚本均提供于 补充文件1中。
  2. 标注腔室面积,并以Genotype_age(天)×1(室数)为单位分配元数据。(例如,CS_3 × 1)
  3. 调整检测阈值滑块,直到机翼在二进制图像中几乎看不见,以确保最佳的背景减法和机翼可见度。

6. 数据集准备

  1. 通过运行以下方式创建新的数据集文件夹:
    Python 工具/SoAL_DatasetGen.py 数据集名 10(帧采样区间)
    注意:帧采样区间参数(“10”)是根据之前发布的协议27改编而来的。较低的数值增加采样密度和计算负载,而较高的数值则减少计算需求,并可根据现有硬件性能和实验需求进行调整。
  2. 在“tools/SoAL_DatasetUtils.py”中设置视频路径和数据集路径
  3. 发射手册标识界面:
    >python tools/SoAL_LabelUI.py DATASETNAME
    1. 画面导航:按空格键或Z键分别切换到下一帧或上一帧。或者,使用时间线滑块进行导航。
    2. 关键点标记:点击每张图片中苍蝇的正确位置(按特定顺序:头部、胸部、腹部、左翅和右翅)标记5个关键点。
    3. 关键点选择:按数字键选择关键点(白色圆圈表示)。下一次点击会重新分配一个新数字给选定的关键点。
    4. 保存:关闭窗口或按D键保存注释结果。
      注意:完整的训练集归档包含两个部分:图像目录和annotation.json文件。

7. 模型训练

  1. 将数据集划分为训练集和验证集:
    Python 工具/SoAL_DatasetGen.py数据集名称划分
    “dataset/”中将创建两个新文件夹。
  2. 在 hrnet/fly_w32.yaml 中配置训练参数:
    旋转系数:15°
    比例因子:0.35
    亮度系数:0.25
    批次数量:24
    时代:200
  3. 开展培训项目:
    Python HRnet/Tools/train.py --CFG HRnet/fly_w32.yaml
    当平均精度(AP)停滞时终止训练集;保留最佳模型(AP>90%)。
  4. 验证模型的方法包括:
    Python HRnet/Tools/test.py --cfg HRnet/fly_w32.yaml
    结果:基于HRNet的稳健模型,用于多飞关键点检测。

8. 运行检测程序

  1. 将新的视频文件复制到视频目录中。
  2. 注释元数据,如步骤5所示。
  3. 运行检测程序:Python SoAL_KptDetect.py
  4. 检查检测结果:
    Python 工具/SoAL_ViewKptUI.py excel_file_path (.cvs/xslx)
    结果:每次飞行中可获得五个解剖标志的二维坐标。

9. 行为量化

  1. 启动独立的图形用户界面应用进行分析(补充文件2),并将坐标文件导入界面。
  2. 生成空间占用热图(场馆位置的概率密度)。
  3. 从坐标时间序列重建运动轨迹。
  4. 创建社会互动数据,包括头部距离、方位和推导出的社会状态。
    结果:基因型特异性空间使用和运动动态的标准化可视化。

Results

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

图1 展示了果 中用于记录自然社交互动的场地几何结构、照明配置和摄像机位置。该装置确保光线均匀且成像条件稳定,适合姿态估计和坐标提取。

所有录制视频均采用自动姿态估计,提取每只果蝇预定义解剖关键点的二维坐标。模型在近距离互动中,能够持续识别头部、胸部、腹部和翅膀的关节。 图2 展示了一个具有重叠关键点的代表性帧,展示了准确的多飞跟踪和整个录制过程中稳定的关键点检测。这一步骤的可靠性确保提取的坐标时间序列能够作为后续定量分析的坚实基础。 图3 展示了分析工作流程。

利用提取的坐标和每个坐标的帧比例,我们生成了空间占用热图,以可视化场馆内飞蝇位置的累积分布。这些热力图总结了苍蝇位置随时间变化的概率密度,并突出显示了优先占用区域。图4图5展示了w1118和Canton-S(CS)飞蝇的代表性热力图。两种基因型中中心区和外围区间空间使用模式的差异易于观察,反映了竞技场探索和区域偏好的不同倾向。

除了占用模式外,我们还从坐标时间序列中重建了运动轨迹,以捕捉细微尺度的运动动态。轨迹是通过将每个连续帧中飞蝇的二维坐标连接而成,无需平滑处理。 图4图5 所示轨迹展示了w1118和CS蝇的个体移动路径,揭示了基因型在运动范围、路径复杂度及高占有区间过渡上的差异。关键点检测结果、热图和轨迹重建共同表明,结合姿态估计与坐标分析流程,有效捕捉并区分了跨基因型自由互动果 的行为结构。

我们还基于五个解剖关键点的二维坐标定义了每个帧中的社交互动。当两项条件同时满足:头对头距离大于0.5毫米但小于20毫米,且方向差超过30°28293031时,一对被认为具有社交参与度。因此,我们测量了每对配对(每基因型六对)社交互动时间的比例。我们的方法可以可靠地测量果蝇的社会行为,如图6所示。W1118和CS蝇的平均社会比分别为0.270±0.001和0.252±0.005,显示不同实验组间具有较强的可重复性。结果也一致,两种野生型蝇株之间的社会比例无显著差异。

figure-results-1
图2:具有代表性的关键点检测结果。 自动姿态估计识别了每帧飞蝇所有预定义的解剖关键点。叠加标记展示了自然社交互动中多蝇准确的跟踪。 请点击此处查看该图的放大版本。

figure-results-2
图3:分析工作流程。 主要工作流程包括预处理、数据准备、模型训练和验证,最终得到果 的二维坐标,随后进行基于图形界面的分析。 请点击此处查看该图的放大版本。

figure-results-3
图4:w1118蝇类的代表性活动热图和运动轨迹。请点击此处查看该图的更大版本。

热力图显示场内超过10分钟的累计空间占用情况,揭示了每只w1118飞蝇的首选活动区域。叠加轨迹展示了从坐标时间序列重建的单个运动路径。

figure-results-4
图5:Canton-S(CS)飞蝇的代表性活动热图和运动轨迹。请点击此处查看该图的更大版本。

热力图显示了每只CS飞蝇在自由互动10分钟内的空间占有分布。重建的轨迹突出显示了运动范围和路径结构,便于与w1118行为模式进行比较。

figure-results-5
图6:野生型蝇的社会性比。 在舱内10分钟后对社交行为进行定量分析。在一个小型场地中,每种基因型的六对,以确定社会接触的百分比。W1118蝇和CS蝇的社会比值分别为0.270±0.001和0.252±0.005。数据以平均值±标准差(SD)呈现。统计比较使用未配对双尾学生t检验进行。 请点击此处查看该图的放大版本。

补充档案1。所有执行协议所需的编码文件。请点击这里下载此文件。

补充档案2。独立的图形界面应用请点击此处下载此文件。

补充档案3。Python 要求点击此处下载此文件。

Discussion

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

我们的研究表明,基于机器学习的姿态估计为果中细粒度社交互动提供了一种可扩展且可靠的方法。它克服了基于重心的方法15161718的局限性,通过自由互动跟踪五个解剖关键点,从而获得由身体轴线提供的角度信息和从头部点推断的头对距离。 我们的技术可以通过追踪每帧果蝇的重心坐标来重建空间占用模式和运动轨迹,从而获得运动路线,并利用五点地标估算头部方向。w1118和Canton-S菌株中观察到的稳定关键点检测表明该管线对运动动态的自然变化具有鲁棒性,为下游行为分类提供了可重复的基础。这些能力对于剖析编码社会行为中内在状态和情境信息的细粒度运动元素至关重要 8,9

研究发现,若干方法学因素对于保证结果一致至关重要。照明系统的热量和照明强度显著影响行为表现,这与之前环境因素影响果蝇社交和运动活动的研究结果一致32,33。成像参数,包括焦点距离、对比度和伽马,在我们的实验中通过经验调整,也影响了姿态估计的准确性,这与之前的发现一致:高速行为记录需要精确的光学校准以捕捉快速动作34,35。行为变异性也受操作程序影响:CO₂麻醉导致社会互动和运动发生可量化的变化,与此前关于麻醉诱导行为变化的文献一致(36,37,38)。这一步尤为关键,因为当麻醉不足时,苍蝇在进入麻醉舱后可能会恢复意识并逃脱;相反,在充分麻醉下,苍蝇必须有足够时间恢复,因为适应不足会降低其后续活动的动力,严重影响后续分析。

即使管道强大,仍有若干限制。姿态估计的准确性对注释质量非常敏感,因此即使是很小的标记错误也可能在重建轨迹中产生扭曲。此前,这一问题在其他姿态估计框架中已有观察到,20,34。由光照、背景纹理变化或苍蝇应变引起的领域偏移可能降低模型性能,需要定期重新训练或扩展数据集。此外,关键点帧超过5%未被检测到的实验应被排除或纳入迭代模型细化。严格的版本控制(如补充文件3所述)对于计算可重复性也是必要的,因为由于程序依赖差异可能导致输出不一致。

未来的改进可能包括自动校准程序、领域适应策略以增强实验条件下的模型泛化,以及整合自监督学习以减少手工注释的需求。通过标准化影像参数、环境因素和模型训练设置的报告,进一步提升实验室间的可重复性。综合来看,这些因素凸显了基于机器学习的行为量化的优缺点,并为进一步改进 果蝇 社会行为研究中的姿势估计方法提供了路线图。

Disclosures

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

作者声明不存在财务利益冲突。

Acknowledgements

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

我们感谢广州医科大学研究生院张景元博士提供并维护了影像设备。

资助:广州医学重点学科项目(2025-2027)

Materials

List of materials used in this article
NameCompanyCatalog NumberComments
琼脂BioFroxx8211GR500
摄像头(MV-CU013-A0UC)海康威视MV-CU013-A0UC
二氧化碳Messer124-38-9
无水D(+)-葡萄糖BioFroxx1179GR500
果蝇狭窄瓶(Falcon管)Biolgix51-0500
乙醇Chron Chemicals64-17-5
LED面板//定制
甲基对羟基苯甲酸酯Sigma99-76-3
聚乙烯板//定制
Python/版本3.6
蔗糖达茂57-50-1
透明亚克力板//定制
酵母天使100004237033

Reprints and Permissions

Request permission to reuse the text or figures of this JoVE article

Request Permission

Tags

BehaviorDrosophila social behaviorMachine learningHRNet inspired framework

Related Articles