RDK X3使用社区提供的rdk_model_zoo-main代码,修改后进行视频流推理,运行2分钟左右卡死

用户您好,请详细描述您所遇到的问题:-

RDK X3 model使用社区提供的rdk_model_zoo-main代码,修改后进行视频流推理,运行2分钟左右卡死,模型自己训练的和官方提供的都试了,都会出现卡死的情况,使用的是yolov5s的模型

官方代码使用的是

修改部分,就是将推理一张图片改为视频流。

def process_video_stream(model: YOLOv5_Detect, camera_index: int = 0):-
# 打开摄像头-
cap = cv2.VideoCapture(camera_index)-
if not cap.isOpened():-
logger.error(“无法打开摄像头!”)-
return-

while True:-
ret, frame = cap.read()-
if not ret:-
logger.warning(“无法读取视频流帧”)-
break-

# 对每一帧进行处理-
input_tensor = model.bgr2nv12(frame)-
outputs = model.c2numpy(model.forward(input_tensor))-
ids, scores, bboxes = model.postProcess(outputs)-

# 渲染-
for class_id, score, bbox in zip(ids, scores, bboxes):-
x1, y1, x2, y2 = bbox-
logger.info(“(%d, %d, %d, %d) → %s: %.2f”%(x1, y1, x2, y2, coco_names[class_id], score))-
draw_detection(frame, (x1, y1, x2, y2), score, class_id)-

# 使用imshow显示每一帧图像-
cv2.imshow(“YOLOv5 Detection”, frame)-

# 按’q’键退出-
if cv2.waitKey(1) & 0xFF == ord(‘q’):-
break-

cap.release()-
cv2.destroyAllWindows()-

def main():-
parser = argparse.ArgumentParser()-
parser.add_argument(‘--model-path’, type=str, default=‘guangxuan.bin’,-
help=“”“Path to BPU Quantized *.bin Model.”“”)-
parser.add_argument(‘--camera-index’, type=int, default=0, help=‘Camera index (default is 0).’)-
parser.add_argument(‘--classes-num’, type=int, default=25, help=‘Classes Num to Detect.’)-
parser.add_argument(‘--iou-thres’, type=float, default=0.45, help=‘IoU threshold.’)-
parser.add_argument(‘--conf-thres’, type=float, default=0.25, help=‘confidence threshold.’)-
parser.add_argument(‘--anchors’, type=lambda s: list(map(int, s.split(‘,’))),-
default=[10, 13, 16, 30, 33, 23, 30, 61, 62, 45, 59, 119, 116, 90, 156, 198, 373, 326],-
help=‘--anchors 10,13,16,30,33,23,30,61,62,45,59,119,116,90,156,198,373,326’)-
parser.add_argument(‘--strides’, type=lambda s: list(map(int, s.split(‘,’))),-
default=[8, 16, 32],-
help=‘--strides 8,16,32’)-
opt = parser.parse_args()-
logger.info(opt)-

# 实例化-
model = YOLOv5_Detect(opt.model_path, opt.conf_thres, opt.iou_thres, opt.classes_num, opt.anchors, opt.strides)-

# 调用处理视频流的函数-
process_video_stream(model, opt.camera_index)

通过free -h查了看cpu内存逐步下降,从700多,最后降到10左右,然后代码自动卡死退出。


社区求助贴发帖建议-

基础信息

1. 板卡型号及板卡外观图片

RDK X3,RDK X3 Module,RDK X5,RDK X5 Module,RDK Ultra,RDK S100,等等

2. 系统软件版本: 提供 sudo cat /etc/version 命令和 sudo rdkos_info 命令的返回结果

3. 问题涉及的技术领域-
硬件开发 / TROS (TogetheROS.Bot)/ 算法工具链 (OpenExplore)/ 多媒体开发

Linux开发 (驱动,RDK OS)/ RDK Studio / 其他

4. 问题描述:-
- 复现概率:必现、高、中、低,并描述大致的概率数值

- 已进行的排查措施、分析及结果:尽可能详细的描述在进行什么功能的开发或者测试,发现了什么问题,问题现象,并且提供预期的结果

- 搜索一下论坛是否有相关的案例

- 如果涉及到社区的资源或者第三方资源,请尽可能提供资源的网址

- 功能异常,先排查一下是不是运行的代码和demo存在差异,修改不多的情况下直接用对比软件先对比

- 提供必要的问题日志

常见问答100条: https://horizonrobotics.feishu.cn/docx/QYfCddrK8o2IIJxVUypcv3b7nsf-

多媒体相关问题发帖请参考:https://developer.d-robotics.cc/forumDetail/266441979142197461-

TROS 问题基础排查

确保您的tros软件包都是最新的:一些问题在新版本中已经被修复,在apt update确保有地瓜的apt源“archive.d-robotics.cc”后进行apt upgrade。在提问时也请使用apt list | grep tros*、apt show tros*命令提供您的软件包版本。

**尝试定位问题出现的node:**参考对应功能报的launch,将日志级别改为debug,重新运行,定位出现问题的node,并提供具体的ros2日志。一般tros的launch处于/opt/tros/share//launch目录下。ros2 日志一般在/root/.ros/log/目录下,排查前可以先rm -rf /root/.ros/log/*清空这个目录,再运行功能包收集日志。

**重新安装相关的tros功能包:**如果launch或者其他功能改乱了可以重装tros的软件包,利用apt重装tros软件包的一般步骤为,以hobot_usb_cam为例,先apt list | grep *hobot* 定位软件包的名称,然后apt remove tros-hobot-usb-cam,然后在apt update确保有地瓜的源“archive.d-robotics.cc”后进行apt install tros-hobot-usb-cam重新安装tros的包。

算法工具链 问题基础排查-
你好,提问请附上您的转化环境的horizon_nn(pip list | grep horizon)包版本,Python(py38/py310/py312)版本,onnx模型,yaml配置文件,编译使用命令,hb_mapper*.log等相关文件。很多问题在一两年前就已经解决,1.0.0的Docker的环境和手册入门章节安装conda中的环境都比较古老,请参考对应的OpenExplore发布帖子,下载对应的最新的Docker和OpenExplore包。-

社区算法资源(Open Explore)-
RDK X3 算法工具链社区手册:https://developer.d-robotics.cc/api/v1/fileData/horizon\_xj3\_open\_explorer\_cn\_doc/index.html-
RDK X3 OpenExplore 产品发布:https://developer.d-robotics.cc/forumDetail/136488103547258769-
RDK Ultra 算法工具链社区手册:https://developer.d-robotics.cc/api/v1/fileData/horizon\_j5\_open\_explorer\_cn\_doc/index.html-
RDK Ultra OpenExplore 产品发布:https://developer.d-robotics.cc/forumDetail/118363912788935318-
RDK X5 算法工具链社区手册:https://developer.d-robotics.cc/api/v1/fileData/x5\_doc-v126cn/index.html-
RDK X5 OpenExplore 产品发布:https://developer.d-robotics.cc/forumDetail/251934919646096384-