丝袜 教你如何用两行代码处罚YOLOv8多样模子推理
发布日期:2024-09-25 05:02 点击次数:162
序言丝袜
宇宙好,YOLOv8 框架本人提供的API函数是不错两行代码竣事 YOLOv8 模子推理,此次我把这段代码封装成了一个类,唯有40行代码傍边,不错同期撑捏YOLOv8对象检测、实例分割、姿态评估模子的GPU与CPU上推理演示。
递次竣事
使用PyQT5设立一个浅显的YOLOv8 框架本人提供的API函数演示交互界面,撑捏从界面上接受模子文献、测试图像粗略视频文献,点击开动推理 按钮就不错运行了,统统这个词递次的界面如下:
勾引指南
YOLOv8框架撑捏的函数推接待自动识别模子的类型是对象检测、实例分割、姿态评估中哪一种,有GPU撑捏的情况下,默许会使用GPU推理。 推理运行在一个单独的PyQT线程中,通过信号与槽机制竣事推理后果复返与更新。竣事的线程代码如下:
classInferenceThread(QtCore.QThread): fire_stats_signal=QtCore.pyqtSignal(dict) def__init__(self,settings): super(InferenceThread,self).__init__() self.settings=settings self.detector=YOLOv8PtInference(settings) self.input_image=settings.input_image defrun(self): ifself.detectorisNone: return ifself.input_image.endswith(".mp4"): cap=cv.VideoCapture(self.input_image) whileTrue: ret,frame=cap.read() ifretisTrue: self.detector.infer_image(frame) self.fire_stats_signal.emit({"result":frame}) else: break else: frame=cv.imread(self.input_image) self.detector.infer_image(frame) self.fire_stats_signal.emit({"result":frame}) self.fire_stats_signal.emit({"done":"done"}) return径直通过PT模子推理的公正有两点,一个是不需要写部署代码了,二是精度不会在模子回荡中有轻细逝世了。十分妥当Python设立者 对象检测 - 运行截图如下:
实例分割-运行截图如下:
姿态评估-运行截图如下:
审核裁剪:刘清丝袜