花生壳建设网站,色流网站如何做,广告公司属于什么行业,土特产网站建设【算法介绍】
基于YOLOv8的血细胞检测与计数系统是一种利用深度学习技术#xff0c;特别是YOLOv8目标检测算法#xff0c;实现高效、准确血细胞识别的系统。该系统能够自动识别并计数图像或视频中的血细胞#xff0c;包括红细胞、白细胞和血小板等#xff0c;为医疗诊断提…【算法介绍】
基于YOLOv8的血细胞检测与计数系统是一种利用深度学习技术特别是YOLOv8目标检测算法实现高效、准确血细胞识别的系统。该系统能够自动识别并计数图像或视频中的血细胞包括红细胞、白细胞和血小板等为医疗诊断提供重要支持。
YOLOv8以其高速和高精度的目标检测能力著称适用于实时目标检测应用。该系统通过收集并预处理包含各种血细胞类型的图像或视频数据利用YOLOv8算法进行模型训练从而学习血细胞的特征和分类信息。在实时检测阶段系统能够快速接收并处理图像或视频输入准确识别并计数血细胞生成详细的统计报告。
该系统不仅提高了血细胞检测的自动化程度和准确性还减少了人为误差大大减轻了医护人员的工作负担。同时其高效性和准确性为医疗诊断、疾病监测和治疗提供了可靠的数据支持具有重要的临床应用价值。此外该系统还可进一步应用于其他生物医学领域中的目标检测与计数任务为生物医学研究提供有力支持。
【效果介绍】 【测试环境】
windows10 anaconda3python3.8 torch1.9.0cu111 ultralytics8.2.70
【模型可以检测出类别】
Platelets RBC WBC sickle cell
【训练信息】
参数值训练集图片数2676验证集图片数60训练map87.4%训练精度(Precision)82.7%训练召回率(Recall)79.5%
【训练数据集(注意由于数据集优化可能和训练数据集有差异)】
https://download.csdn.net/download/FL1623863129/89725754?spm1001.2014.3001.5501 【部分实现源码】
class Ui_MainWindow(QtWidgets.QMainWindow):signal QtCore.pyqtSignal(str, str)def setupUi(self):self.setObjectName(MainWindow)self.resize(1280, 728)self.centralwidget QtWidgets.QWidget(self)self.centralwidget.setObjectName(centralwidget)self.weights_dir ./weightsself.picture QtWidgets.QLabel(self.centralwidget)self.picture.setGeometry(QtCore.QRect(260, 10, 1010, 630))self.picture.setStyleSheet(background:black)self.picture.setObjectName(picture)self.picture.setScaledContents(True)self.label_2 QtWidgets.QLabel(self.centralwidget)self.label_2.setGeometry(QtCore.QRect(10, 10, 81, 21))self.label_2.setObjectName(label_2)self.cb_weights QtWidgets.QComboBox(self.centralwidget)self.cb_weights.setGeometry(QtCore.QRect(10, 40, 241, 21))self.cb_weights.setObjectName(cb_weights)self.cb_weights.currentIndexChanged.connect(self.cb_weights_changed)self.label_3 QtWidgets.QLabel(self.centralwidget)self.label_3.setGeometry(QtCore.QRect(10, 70, 72, 21))self.label_3.setObjectName(label_3)self.hs_conf QtWidgets.QSlider(self.centralwidget)self.hs_conf.setGeometry(QtCore.QRect(10, 100, 181, 22))self.hs_conf.setProperty(value, 25)self.hs_conf.setOrientation(QtCore.Qt.Horizontal)self.hs_conf.setObjectName(hs_conf)self.hs_conf.valueChanged.connect(self.conf_change)self.dsb_conf QtWidgets.QDoubleSpinBox(self.centralwidget)self.dsb_conf.setGeometry(QtCore.QRect(200, 100, 51, 22))self.dsb_conf.setMaximum(1.0)self.dsb_conf.setSingleStep(0.01)self.dsb_conf.setProperty(value, 0.25)self.dsb_conf.setObjectName(dsb_conf)self.dsb_conf.valueChanged.connect(self.dsb_conf_change)self.dsb_iou QtWidgets.QDoubleSpinBox(self.centralwidget)self.dsb_iou.setGeometry(QtCore.QRect(200, 160, 51, 22))self.dsb_iou.setMaximum(1.0)self.dsb_iou.setSingleStep(0.01)self.dsb_iou.setProperty(value, 0.45)self.dsb_iou.setObjectName(dsb_iou)self.dsb_iou.valueChanged.connect(self.dsb_iou_change)self.hs_iou QtWidgets.QSlider(self.centralwidget)self.hs_iou.setGeometry(QtCore.QRect(10, 160, 181, 22))self.hs_iou.setProperty(value, 45)self.hs_iou.setOrientation(QtCore.Qt.Horizontal)self.hs_iou.setObjectName(hs_iou)self.hs_iou.valueChanged.connect(self.iou_change)self.label_4 QtWidgets.QLabel(self.centralwidget)self.label_4.setGeometry(QtCore.QRect(10, 130, 72, 21))self.label_4.setObjectName(label_4)self.label_5 QtWidgets.QLabel(self.centralwidget)self.label_5.setGeometry(QtCore.QRect(10, 210, 72, 21))self.label_5.setObjectName(label_5)self.le_res QtWidgets.QTextEdit(self.centralwidget)self.le_res.setGeometry(QtCore.QRect(10, 240, 241, 400))self.le_res.setObjectName(le_res)self.setCentralWidget(self.centralwidget)self.menubar QtWidgets.QMenuBar(self)self.menubar.setGeometry(QtCore.QRect(0, 0, 1110, 30))self.menubar.setObjectName(menubar)self.setMenuBar(self.menubar)self.statusbar QtWidgets.QStatusBar(self)self.statusbar.setObjectName(statusbar)self.setStatusBar(self.statusbar)self.toolBar QtWidgets.QToolBar(self)self.toolBar.setToolButtonStyle(QtCore.Qt.ToolButtonTextBesideIcon)self.toolBar.setObjectName(toolBar)self.addToolBar(QtCore.Qt.TopToolBarArea, self.toolBar)self.actionopenpic QtWidgets.QAction(self)icon QtGui.QIcon()icon.addPixmap(QtGui.QPixmap(:/images/1.png), QtGui.QIcon.Normal, QtGui.QIcon.Off)self.actionopenpic.setIcon(icon)self.actionopenpic.setObjectName(actionopenpic)self.actionopenpic.triggered.connect(self.open_image)self.action QtWidgets.QAction(self)icon1 QtGui.QIcon()icon1.addPixmap(QtGui.QPixmap(:/images/2.png), QtGui.QIcon.Normal, QtGui.QIcon.Off)self.action.setIcon(icon1)self.action.setObjectName(action)self.action.triggered.connect(self.open_video)self.action_2 QtWidgets.QAction(self)icon2 QtGui.QIcon()icon2.addPixmap(QtGui.QPixmap(:/images/3.png), QtGui.QIcon.Normal, QtGui.QIcon.Off)self.action_2.setIcon(icon2)self.action_2.setObjectName(action_2)self.action_2.triggered.connect(self.open_camera)self.actionexit QtWidgets.QAction(self)icon3 QtGui.QIcon()icon3.addPixmap(QtGui.QPixmap(:/images/4.png), QtGui.QIcon.Normal, QtGui.QIcon.Off)self.actionexit.setIcon(icon3)self.actionexit.setObjectName(actionexit)self.actionexit.triggered.connect(self.exit)self.toolBar.addAction(self.actionopenpic)self.toolBar.addAction(self.action)self.toolBar.addAction(self.action_2)self.toolBar.addAction(self.actionexit)self.retranslateUi()QtCore.QMetaObject.connectSlotsByName(self)self.init_all() 【使用步骤】
使用步骤 1首先根据官方框架https://github.com/ultralytics/ultralytics安装教程安装好yolov8环境并安装好pyqt5 2切换到自己安装的yolov8环境后并切换到源码目录执行python main.py即可运行启动界面进行相应的操作即可
【提供文件】
python源码 yolov8s.onnx模型不提供pytorch模型 训练的map,P,R曲线图(在weights\results.png) 测试图片在test_img文件夹下面
【源码下载地址】
https://download.csdn.net/download/FL1623863129/89725921