news 2026/9/10 9:45:57

导入mediapipe出现TypeError: Descriptors cannot not be created directly.的解决方法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
导入mediapipe出现TypeError: Descriptors cannot not be created directly.的解决方法

一、错误:

树莓派使用mediapipe时出现的错误,

import mediapipe Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/home/pi/.local/lib/python3.7/site-packages/mediapipe/__init__.py", line 17, in <module> import mediapipe.python.solutions as solutions File "/home/pi/.local/lib/python3.7/site-packages/mediapipe/python/solutions/__init__.py", line 17, in <module> import mediapipe.python.solutions.drawing_styles File "/home/pi/.local/lib/python3.7/site-packages/mediapipe/python/solutions/drawing_styles.py", line 20, in <module> from mediapipe.python.solutions.drawing_utils import DrawingSpec File "/home/pi/.local/lib/python3.7/site-packages/mediapipe/python/solutions/drawing_utils.py", line 25, in <module> from mediapipe.framework.formats import detection_pb2 File "/home/pi/.local/lib/python3.7/site-packages/mediapipe/framework/formats/detection_pb2.py", line 15, in <module> from mediapipe.framework.formats import location_data_pb2 as mediapipe_dot_framework_dot_formats_dot_location__data__pb2 File "/home/pi/.local/lib/python3.7/site-packages/mediapipe/framework/formats/location_data_pb2.py", line 15, in <module> from mediapipe.framework.formats.annotation import rasterization_pb2 as mediapipe_dot_framework_dot_formats_dot_annotation_dot_rasterization__pb2 File "/home/pi/.local/lib/python3.7/site-packages/mediapipe/framework/formats/annotation/rasterization_pb2.py", line 41, in <module> serialized_options=None, file=DESCRIPTOR), File "/home/pi/.local/lib/python3.7/site-packages/google/protobuf/descriptor.py", line 561, in __new__ _message.Message._CheckCalledFromGeneratedFile() TypeError: Descriptors cannot not be created directly. If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0. If you cannot immediately regenerate your protos, some other possible workarounds are: 1. Downgrade the protobuf package to 3.20.x or lower. 2. Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python (but this will use pure-Python parsing and will be much slower). More information: https://developers.google.com/protocol-buffers/docs/news/2022-05-06#python-updates

根据报错信息,是我们的protobuf版本过高,需要降低到3.20.x版本或以下

根据网络上查找的解决方法,都是让安装 protobuf3.20 版本,安装这个版本确实有用,但是通过正常的 pip3 install protobuf==3.20 是无法安装的,会报错:

No matching distribution found for protobuf==3.20

意思是没有找到对应版本的protobuf

二、解决方法:

从我资源里下载 protobuf3.20.1,传到板子上去,然后执行安装命令:

pip3 install protobuf-3.20.1-py2.py3-none-any.whl

资源链接:protobuf-3.20.1-py2.py3-none-any.whl

执行结果并测试:

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/10 9:45:39

S7-1200大型PLC项目实战:数据规划、Modbus通信与调试经验

把西门子博图&#xff08;TIA Portal&#xff09;里的自学Demo升级成真正能稳定运行在现场的大型项目程序&#xff0c;这个跨度比很多人想象的大得多。我接手过一套超市储藏环境自动控制项目&#xff0c;程序里二十多个FB、上百个DB变量、五路Modbus轮询&#xff0c;还要同时处…

作者头像 李华
网站建设 2026/9/10 9:44:37

三维WSN覆盖优化:基于麻雀搜索算法的空洞修复方案

1. 项目概述&#xff1a;三维WSN覆盖优化与空洞修复 在无线传感器网络&#xff08;WSN&#xff09;部署中&#xff0c;三维空间下的节点覆盖优化一直是个棘手问题。传统二维平面部署方案无法满足无人机监测、立体仓储等真实三维场景需求。我们团队最近用Matlab实现了一套基于麻…

作者头像 李华
网站建设 2026/9/10 9:43:17

CANN/ge LLM数据分发API

&#xfeff;# TransferWithCacheKeyConfig 【免费下载链接】ge GE&#xff08;Graph Engine&#xff09;是面向昇腾的图编译器和执行器&#xff0c;提供了计算图优化、多流并行、内存复用和模型下沉等技术手段&#xff0c;加速模型执行效率&#xff0c;减少模型内存占用。 GE …

作者头像 李华
网站建设 2026/9/10 9:43:11

TVBoxOSC 新手上手指南:电视盒子控制与管理应用

TVBoxOSC 新手上手指南&#xff1a;电视盒子控制与管理应用 【免费下载链接】TVBoxOSC TVBoxOSC - 一个基于第三方项目的代码库&#xff0c;用于电视盒子的控制和管理。 项目地址: https://gitcode.com/GitHub_Trending/tv/TVBoxOSC TVBoxOSC 是一个面向电视盒子的开源控…

作者头像 李华