This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] SK-AM68:edgeai-modelmaker 压缩错误

Guru**** 2327840 points
Other Parts Discussed in Thread: AM68A, AM68
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1514829/sk-am68-edgeai-modelmaker-compilling-error

器件型号:SK-AM68
Thread 中讨论的其他器件:AM68、AM68A

工具/软件:

我使用 AM68 SDK10.0、  
使用 edgeai-modelmaker 进行编译有时会失败并显示以下错误消息:
2025/05/16 14:29:04 - mmengine - error -/home/edgeai-tensorlab/edgeai-mmdetection/mmdet/evaluation/metrics/coco_metric.py - computer_metrics - 465 -整个数据集的测试结果为空。

我的数据集通过 edgeai-composer 导出、同一个数据集通过 modelcomposer 成功编译
我的一些数据集可以编译、有些数据集无法编译。 它是否与数据集中的图像分辨率和数量有关? 为什么会出现上述错误?


  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Csscyt:

    我无法从单个错误消息中确定太多。  如果您可以附加模型和数据集并展示如何运行它、我将运行它并确定根本原因。  

    此致、

    Chris

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我已上传数据集和配置文件、运行日志
    run_modelmaker.sh AM68A config_imx296.yaml
    e2e.ti.com/.../5861.test.zip


  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是否有任何更新? 谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我一直到这个星期五。  我将在星期五对此进行研究。

    此致、

    Chirs.

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    根据日志、培训看起来已经完成。 从您的角度来看、您估计这里有什么问题吗?

    Unknown 说:
    它是否与数据集中的图像分辨率和数量有关? 为什么会出现上述错误?

    不、不应该是这样。  

    我在中看到、有时数据集将具有指向数据集"图像"部分的"训练"和"val"软链接。 不过、这些函数实际上并不会将数据筛选为训练集和验证集。 也许该软链接预计会存在、但缺少? 我在您提供的.ZIP 中没有看到这些软链接。


    我还注意到您的 ONNX 模型使用的是 opset 17。 我们的10.0 SDK 支持8、11、18。 我看到了 opset 17格式的模型的一些问题、这解释了 compile.log 中的一些错误、如"Invalid Layer Name /multi_level_conv_cls.2/Conv_output_0"。

    我建议您尝试以下几种方法:

    BR、
    Reese

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    您在 opset 中所做的更改应该是正确的--将这里作为导出的一部分、或者在使用我链接的资源手动处理事实之后进行处理是有效的。

    但它仍然会给您带来问题...

    您能给我传递您的模型的工件吗?

    在上一个线程中、他们通过从 modelmaker 中取出训练后的模型、并使用 10.1 SDK 的 rel_10_01使用 edgeai-tidl-tools 运行导入来解决他们的难题

    让我在内部检查这是否是一个已知问题

    BR、
    Reese

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您能给我传递您的模型的工件吗?

    e2e.ti.com/.../20250521_2D00_172759.zip
    这是编译 TI 对象检测样本程序的结果。


    在上一个线程中、他们通过将训练后的模型从 modelmaker 中取出来并使用 edgeai-tidl-tools (对10.1 SDK
    使用 rel_10_01)运行导入、从而解决了他们的难题

    能提供吗 详细说明 结果呢?
    还是在 sdk10_0上有一种权变措施? 我不想过于频繁地更改 SDK。 谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    感谢您提供培训目录。 我发现了该问题(并将在后端寻求解决方案、以便将来解决该问题)。 我能够重现使用这些无效的图层名称时看到的内容

    首先、这些伪影是有效的。 您看到的消息不会导致功能丧失、但可能会降低准确性。  

    这些层有一个配置、以16位模式运行、并且名称与正在编译的模型不同步。 这通常可提高精度和边界框稳定性、但并非模型正常工作的绝对必要条件。  

    现在我可以通过 edgeai-tidl-tools 进行编译来解决这一问题、因为该模型导入配置不包括这些16位层名称

    您不需要更改 SDK

    您可以在 tensorlab 安装中应用以下修补程序文件: /cfs-file/__key/communityserver-discussions-components-files/791/0001_2D00_Append_2D00_bbox_5F00_head_2D00_for_2D00_16_2D00_bit_2D00_layer_2D00_names_2D00_in_2D00_yolox.patch

    • 但我发现一个奇怪的行为,在我这边生成的模型使用数字的图层名称,而不是文本说明。 这可能与某些软件包版本有关。 我在上面提供的修补程序与基于文本的图层名称一致、而不是数字。 请应用此补丁并检查它是否能解决您的问题。  

    不过、这是与原来的问题背道而驰的。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的快速答复我将应用您的补丁。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    应用了这个补丁、 现在  错误日志消失了
    图层名称 /multi_level_conv_obj.0/Conv_output_0无效

    虽然

    回到原始问题、
    mengine - error - edgeai-tensorlab/edgeai-mmdetection/mmdet_evaluation/metrics/coco_metric.py - computer_metrics - 465 -整个数据集的测试结果为空。

    我做了以下实验、

    1) 使用模型编写器进行训练和编译  

     训练参数:



    培训结果:76.2%

    培训日志:
    e2e.ti.com/.../Training_5F00_Log_5F00_yolox_5F00_s_5F00_lite_5F00_May-26_2C00_-2025_2C00_-11_5F00_09_5F00_03-AM.txt

     编译参数和结果:   accurity_ap50%:71.74 %


    编译日志:

    e2e.ti.com/.../Compile_5F00_Log_5F00_yolox_5F00_s_5F00_lite_5F00_May-26_2C00_-2025_2C00_-11_5F00_09_5F00_03-AM-_2800_1_2900_.txt



    2) 导出数据集并通过 Model Maker 进行训练和编译

      DataSets:
    e2e.ti.com/.../ce7dfea0_5F00_dataset.zip

         使用与模型编写器相同的训练和编译参数




    common:
        target_module: 'vision'
        task_type: 'detection'
        target_device: 'AM68A'
        # run_name can be any string, but there are some special cases:
        # {date-time} will be replaced with datetime.datetime.now().strftime("%Y%m%d-%H%M%S")
        # {model_name} will be replaced with the name of the model
        run_name: '{date-time}/{model_name}'
    
    dataset:
        # enable/disable dataset loading
        enable: True #False
        # max_num_files: [750, 250] #None
    
        # Object Detection Dataset Examples:
        # -------------------------------------
        # Example 1, (known datasets): 'widerface_detection', 'pascal_voc0712', 'coco_detection', 'udacity_selfdriving', 'tomato_detection', 'tiscapes2017_driving'
        # dataset_name: widerface_detection
        # -------------------------------------
        # Example 2, give a dataset name and input_data_path.
        # input_data_path could be a path to zip file, tar file, folder OR http, https link to zip or tar files
        # for input_data_path these are provided with this repository as examples:
        #    'software-dl.ti.com/.../tiscapes2017_driving.zip'
        #    'software-dl.ti.com/.../animal_detection.zip'
        # -------------------------------------
        # Example 3, give image folders with annotation files (require list with values for both train and val splits)
        # dataset_name: coco_detection
        # input_data_path: ["./data/projects/coco_detection/dataset/train2017",
        #                        "./data/projects/coco_detection/dataset/val2017"]
        # input_annotation_path: ["./data/projects/coco_detection/dataset/annotations/instances_train2017.json",
        #                        "./data/projects/coco_detection/dataset/annotations/instances_val2017.json"]
        # -------------------------------------
        dataset_name: imx296 
       #input_data_path: ["./data/datasets/obj_detection/images/"]
        #input_annotation_path: ["./data/datasets/obj_detection/annotations/instances.json"]
        input_data_path: './data/datasets/imx296'
        input_annotation_path: './data/datasets/imx296/annotations/instances.json'
    training:
        # enable/disable training
        enable: True #False
    
        # Object Detection model chosen can be changed here if needed
        # options are: 'yolox_s_lite', 'yolox_tiny_lite', 'yolox_nano_lite', 'yolox_pico_lite', 'yolox_femto_lite'
        model_name: 'yolox_s_lite'
    
        training_epochs: 60 #30
        batch_size: 8 #32
        learning_rate: 0.001
        #num_gpus: 0 #1 #4
    
    compilation:
        # enable/disable compilation
        enable: True #False
        tensor_bits: 16 #16 #32
        detection_top_k: 500 
        detection_threshold: 0.05
        calibration_iterations: 10
        Calibration Frames: 10  

    您可以检查特定日志以获取最终训练和编译结果
    e2e.ti.com/.../20250526_2D00_113240.zip



    通过 Model Maker 进行训练和编译的问题如下:

     a)训练的前5个阶段有错误消息
        mmengine - error - edgeai-tensorlab/edgeai-mmdetection/mmdet/evaluation/metrics/coco_metric.py - comput_metrics- 465 -测试     整个数据集的结果为空。
     b) 整个训练的平均精度非常低 <10%
        
      
    DONE (t=0.03s).
     Average Precision  (AP) @[ IoU=0.50:0.95 | area=   all | maxDets=100 ] = 0.009
     Average Precision  (AP) @[ IoU=0.50      | area=   all | maxDets=1000 ] = 0.051
     Average Precision  (AP) @[ IoU=0.75      | area=   all | maxDets=1000 ] = 0.000
     Average Precision  (AP) @[ IoU=0.50:0.95 | area= small | maxDets=1000 ] = 0.000
     Average Precision  (AP) @[ IoU=0.50:0.95 | area=medium | maxDets=1000 ] = 0.028
     Average Precision  (AP) @[ IoU=0.50:0.95 | area= large | maxDets=1000 ] = 0.010
     Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets=100 ] = 0.078
     Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets=300 ] = 0.078
     Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets=1000 ] = 0.078
     Average Recall     (AR) @[ IoU=0.50:0.95 | area= small | maxDets=1000 ] = 0.000
     Average Recall     (AR) @[ IoU=0.50:0.95 | area=medium | maxDets=1000 ] = 0.063
     Average Recall     (AR) @[ IoU=0.50:0.95 | area= large | maxDets=1000 ] = 0.233
    05/26 12:42:18 - mmengine - INFO - bbox_mAP_copypaste: 0.009 0.051 0.000 0.000 0.028 0.010
    05/26 12:42:18 - mmengine - INFO - Epoch(val) [55][6/6]    coco/bbox_mAP: 0.0090  coco/bbox_mAP_50: 0.0510  coco/bbox_mAP_75: 0.0000  coco/bbox_mAP_s: 0.0000  coco/bbox_mAP_m: 0.0280  coco/bbox_mAP_l: 0.0100  data_time: 0.0161  time: 0.8761
    


    c) 最终编译 结果非常低  "accurity_ap50%":6.158416




    您能否通过我的数据集确认此问题? 为什么对于相同的数据集、这两个工具的结果如此不同?





  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    数据集出现问题的可能性最大。  

    在您的安装中、您现在可以根据 tiscapes2017_driving 数据集进行验证。 我认为您的安装培训正确、没有显示这样的警告。  

    目录结构有什么不同吗? 我注意到您在上面传递的内容

    ./run_modelmaker.sh AM68A config_imx296.yaml
    5861.test.zip

    注释和图像文件夹直接位于 imx296目录中。 在 tiscap 数据集中、还有一个附加的"dataset"文件夹、用于保存注释和图像。 这可能是数据位置问题。  

    BR、
    Reese  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    目录结构是否有任何区别? 我注意到您在上方传递的内容

    我遵循这一点:




    edgeai-tensorlab/edgeai-modelmaker/data/datetases/imx296$ tree -d

    ├──注释
    └──图像


    在 tiscapes 数据集中、还有一个附加的"dataset"文件夹、用于保存注释和图像。 这可能是数据位置问题

    生成的工程目录下有一个数据集目录  


    edgeai-tensorlab/edgeai-modelmaker/data/projects/imx296/dataset$ tree -d

    ├──注释
    ├──图像
    ├──train -> images
    └──val -> images

    在网上搜索,很多人都有这个问题,
    https://github.com/open-mmlab/mmdetection/issues/2942#issuecomment-643910329
    我尝试了上面提到的解决方案、但它不起作用。
    我的数据集使用 Model Composer 成功编译、但数据集和 Model Maker 之间似乎存在问题。

    您能否帮助我在您的环境中检查数据集、或帮助我查看错误日志的原因?

    mmengine - error - edgeai-tensorlab/edgeai-mmdetection/mmdet/evaluation/metrics/coco_metric.py - comput_metrics- 465 -测试     整个数据集的结果为空。


  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好

    edgeai-tensorlab/edgeai-modelmaker/data/projects/imx296/dataset$ tree -d

    ├──注释
    ├──图像
    ├──train -> images
    └──val ->图像

    这(以及任何较早的行)是否意味着您有两个数据集副本、一个在数据/数据集下、另一个在数据/项目/imx296/dataset 下? 我希望后者能根据我的环境工作。  

    我需要几天的时间来复制它在我这边(几天内我的开发机器的可用性有限)。 我会在这一周即将结束的时候回到您的身边。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    数据/数据集

    只有这一个

    data/projects

    这是通过编译自动生成的

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    好的、明白。 让我们花上一两天时间来重现这种行为

    BR、
    Reese

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    我正在训练模型,因为我键入这个(将需要一些时间来完成 CPU 后端; 25%现在完成),但 已经有重要的观察结果。

    我可以重现您的误差、但精度在我这边提高得更快。 例如、epoch 10处验证集的 coco/BBOX_MAP_50 = 0.3210。 在您的日志中、我在0.013处看到了这一点。 这很奇怪、因为我使用的 YAML 配置和数据集完全相同。  

    • 其他指标(如损耗)同样表明、尽管所有配置都相同、我的一侧的进展比您的更好。 在每个 epoch、学习速率(LR)也相同

    此错误:   mengine - error -/home/edgeai-tensorlab/edgeai-mmdetection/mmdet/evaluation/metrics/coco_metric.py - computer_metrics - 465 -整个数据集的测试结果为空。

    • 对我来说是 epoch 5、epoch 1适合您
    • 我不再看到此错误、您的日志也不会显示此错误
      • 我想知道这是否是因为验证集没有显示检测,所以要计算指标的 BBOX 列表是空的? 这将普遍在低时代,但不应显示在高时代。

    我在 mmdet 工程中找到了有关该主题的以下参考:

    • https://github.com/open-mmlab/mmdetection/issues/2942
    • 用户似乎表示改变学习速度可以帮助实现这一点、但这并不是整个解决方案。 否则,我们应该看到我们自己的训练之间更加接近的行为。 有一些随机性,但不应该是这样。 我有你所做的同样的 LR。  

    我将在完成后发布整个日志、以供参考。 我还会在完成后发布我的工件。 (编辑; 完成 )

    • 培训日志: train.log
      • 未达到模型编写器 accuary 76.2%;Mine 达到70.8%
    • 工件目录:  od-8220.tar.gz
      • 我已经注意到,我的安装导出一个 ONNX 模型,其中图层名称是数字的,而不是文本。 因此、16位配置(我之前为您提供了一个补丁)无效、并提供了有关图层名称有效性的常见警告
      • 'Accurity_ap[.5:.95]%':16.370583、 'accuraction_ap50%':64.981469 --是您生产的产品的10倍

    那么、我们从这里学到了什么?

    • 您的数据集和 YAML 配置显示有效
    • 你的训练本身并不能有效地融合--根本原因不清楚
      • 在整个培训过程中、我发现完全相同的 YAML 配置使损失/准确性提高了10-100倍
      • 我很好奇这是否与任何特定的依赖关系有关。 请参阅我的虚拟环境的整个依赖关系列表:  
      • 您正在进行 CPU 培训、对吧?
      • 模型编写器图中显示的精度指标适用于 IOU=0.50时的 AP:   
        平均精度(AP)@[ IOU=0.50 | Area= All | maxDets=1000 ]= 0.452 
        • 到目前为止、我的精度似乎是遵循模型编写器的、还不到几个百分点、因此我的机器是一个很好的参考。  
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您正在接受 CPU 培训、对吗?

    是的



    我很好奇这是否与任何特定依赖关系有关。 查看我的虚拟环境的整个依赖关系列表:

    这是我的虚拟环境的 depency 列表、 基于版本 r10.0、并测试了以前的修补程序。

    e2e.ti.com/.../freeze.log

    应该注意的是、关于之前的错误日志信息、我在两台 Ubuntu 主机上遇到了相同的错误。

    mengine - error -/home/edgeai-tensorlab/edgeai-mmdetection/mmdet/evaluation/metrics/coco_metric.py - computer_metrics - 465 -整个数据集的测试结果为空。
    我在主机上重新安装了 egdeai-ternsorlab 环境、并使用了相同的数据集和配置。 上面的错误消息消失。 我不知道问题的根本原因是什么。 可能此问题稍后会再次出现。


    编译后的结果与您的结果类似。 如您所见、使用模型编写器编译时、相同的数据集和配置可能会相差10个百分点。 您知道造成这种差异的原因吗?



  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    若要确认当前状态、如有错误、请更正我的理解:

    • 您重新安装了10.0版 tensorlab、并应用了共享修补程序以解决层命名不匹配问题
    • 你重新训练,现在看到明显更好的准确性,这是类似于我得到的:~65%地图50

    我对错误消息的解释是、验证运行在您的数据上(约48张 val 集中的图像)、并发现零检测-测试结果将为空。 我可以在精度非常差的早期时代看到这种情况发生,不应该在以后发生。

    • 这是我的解释... mmdet 是一个开源工具、我不知道所有的详细信息

    编译后的结果与您的结果类似。 如您所见、使用模型编写器编译时、相同的数据集和配置可能会相差10个百分点。 您知道造成这种差异的原因吗?

    是的--我们已经接近模型编写器、但没有复制准确性。 我们从相同的预训练的重量开始,所以随机的主要来源是消除的。 大多数情况下,只有几个适合类数的 Conv 图层是随机的,需要重新训练。  

    我们看到了与训练本身的区别--编译版本的准确度在我这边是4-5%不同的(它没有正确地将混合精度应用到敏感的 Conv 层)。 在编译之前、验证集的报告精确度为70.8%

    我不知道为什么两个培训框架之间有如此大的差异(~6%)。 也许我们安装的工具的特定依赖关系(非常相似)与模型编写器工具集有更多的不同。 或者、是否有一些隐藏的参数(学习速度计划? 仅 LR 是一样的),但我是怀疑的。 默认权重衰减也为0.0001。 它们可能会以更多的 epoch 收敛到相同值。  

    此处的另一个差异来源是验证/训练分割。 对于这样的小型(200图像)数据集、训练/验证中一些简单/硬图像的差异可能会在训练中产生显著差异。 数据采样器的种子可能基于时间戳

    BR、
    Reese

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您重新安装了10.0版 tensorlab、并应用了共享修补程序以解决层命名不匹配问题

    应用修补程序层命名问题 已消失、准确性似乎没有显著提高。  


    You retrained、现在看到明显更好的准确性、这类似于我得到的:~65% map 50

    重新安装 tensorlab 并保留


    也许我们安装的工具的特定依赖关系(非常相似)与模型编写器工具集有更多的不同

    您是否对这两种编译器工具的依赖项进行了比较?

    我之前提到了这个关于所编译两种工具的准确性的问题、但未找到根本原因。

    e2e.ti.com/.../5479430

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    让我询问我们的后端团队是否可以共享该依赖项列表。 它作为 Docker 容器在 AWS 实例中运行。 我需要几天时间才能从他们那里获得这些信息。

    总之、当然、您希望获得尽可能高的精度。 我建议调整超参数并对网络进行几次训练、以查看最终精度是否可以更高。 我建议首先增加 epoch 的数量。  

    • 我没有说有一个巨大的跳跃的准确性在 EPOCH 45。 在训练过程中、75%的时间似乎有某种机制可以消除增强或其他数据处理
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    总的来说、您当然希望获得最佳的精度。 我建议调整超参数并对网络进行几次训练、以查看最终精度是否可以更高。 我建议首先增加 epoch 的数量。  [/报价]

    将 epoch 增加到120或150并改变 超参数,  似乎没有显著改善

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    好的、明白。 它不会收敛到任何更高的精度水平

    模型编写器正在运行的依赖项应如下所示:  

    absl-py==2.1.0
    addict==2.4.0
    attrs==23.2.0
    cachetools==5.3.3
    certifi==2024.6.2
    charset-normalizer==3.3.2
    cloudpickle==3.0.0
    colorama==0.4.6
    contourpy==1.2.1
    cycler==0.12.1
    Cython==3.0.10
    decorator==5.1.1
    distro==1.9.0
    dlr==1.13.0
    exceptiongroup==1.2.1
    filelock==3.14.0
    flatbuffers==1.12
    fonttools==4.53.0
    google-auth==2.30.0
    google-auth-oauthlib==0.4.6
    graphviz==0.20.3
    grpcio==1.64.1
    h5py==3.11.0
    idna==3.7
    importlib_metadata==7.1.0
    iniconfig==2.0.0
    Jinja2==3.1.4
    joblib==1.4.2
    json-tricks==3.17.3
    kiwisolver==1.4.5
    Markdown==3.6
    MarkupSafe==2.1.5
    matplotlib==3.9.0
    mmcv-full==1.4.8
    mmdet==2.22.0
    mpmath==1.3.0
    munkres==1.1.4
    networkx==3.3
    numpy==1.23.0
    oauthlib==3.2.2
    onnx==1.9.0
    onnxruntime-tidl==1.7.0
    opencv-python==4.10.0.82
    opencv-python-headless==4.10.0.82
    osrt-model-tools==1.2
    packaging==24.0
    pillow==10.3.0
    Pillow-SIMD==9.0.0.post1
    pip==23.3.1
    platformdirs==4.2.2
    pluggy==1.5.0
    plyfile==1.0.3
    progiter==2.0.0
    protobuf==3.19.4
    psutil==5.9.8
    pyasn1==0.6.0
    pyasn1_modules==0.4.0
    pybind11==2.12.0
    pybind11_global==2.12.0
    pycocotools==2.0.7
    pyparsing==3.1.2
    pytest==8.2.2
    python-dateutil==2.9.0.post0
    PyYAML==6.0.1
    requests==2.32.3
    requests-oauthlib==2.0.0
    rsa==4.9
    scikit-learn==1.5.0
    scipy==1.13.1
    setuptools==69.0.2
    six==1.16.0
    sympy==1.12.1
    tensorboard==2.11.2
    tensorboard-data-server==0.6.1
    tensorboard-plugin-wit==1.8.1
    terminaltables==3.1.10
    tflite==2.10.0
    tflite-runtime==2.8.2
    threadpoolctl==3.5.0
    tomli==2.0.1
    torch==2.0.1+cpu
    torchinfo==1.8.0
    torchvision==0.15.2+cpu
    tornado==6.4.1
    tqdm==4.66.4
    tvm==0.12.0
    typing_extensions==4.12.1
    urllib3==2.2.1
    Werkzeug==3.0.3
    wheel==0.43.0
    wurlitzer==3.1.0
    yapf==0.40.2
    yolox==0.1.0
    zipp==3.19.2

    另外还安装了一些软件包、但这些软件包是否有所不同值得怀疑

    fastapi==0.79.0
    uvicorn[standard]
    webp

    BR、
    Reese