• Anacode+YOLO识别图片


    一、安装Anacoda

    因为我原本是已经安装了python,后面直接卸载了,然后安装了最新版的anacoda

    下载网址为:

    Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

    下载版本是:

    按照安装教程直接安装即可:

    史上最全最详细的Anaconda安装教程-CSDN博客

    二、下载YOLO

    1.创建虚拟环境

    conda create -n yolo8 python=3.10

    创建完成后显示的内容

    2.激活虚拟环境

    conda activate yolo8

    命令行输入该代码,如果无报错,表示虚拟环境创建成功

    3.ultralytics下载:

    (ultralytics是一个功能强大且易于使用的YOLO实现,适用于需要在计算机视觉任务中进行目标检测的开发者)

    激活虚拟环境后,命令行输入该指令。

    pip install ultralytics

    具体展示如下:

    1.conda activate yolo8 激活yolo8环境

    2.pip install ultralytics 安装ultralytics

    3.安装完成,查看是否安装好,输入pip list

    4.测试YOLO8

    安装模型yolov8n,然后检测图片

    ultralytics的网页下载地址(如果直接用pip命令行安装,此处不需要下载):

    ”ultralytics“ 的搜索结果 | GitHub 中文社区 (github-zh.com)

    三、图片检测结果

    以下是在VScode里面的yolov8使用代码,图片结果为识别结果。

    1. import time
    2. import cv2
    3. import numpy as np
    4. import pyrealsense2 as rs
    5. from ultralytics import YOLO # 将YOLOv8导入到该py文件中
    6. # 深度相机
    7. pipeline = rs.pipeline() # 定义流程pipeline,创建一个管道
    8. config = rs.config() # 定义配置config
    9. config.enable_stream(rs.stream.depth, 1280, 720, rs.format.z16, 30) # 初始化摄像头深度流
    10. config.enable_stream(rs.stream.color, 1280, 720, rs.format.bgr8, 30) # 初始化摄像头彩色流
    11. pipe_profile = pipeline.start(config) # 启用管段流
    12. align = rs.align(rs.stream.color) #这个函数用于将深度图像与彩色图像对齐
    13. def get_aligned_images(): #定义一个获取图像帧的函数,返回深度和彩色数组
    14. frames = pipeline.wait_for_frames() # 等待获取图像帧
    15. depth_frame = frames.get_depth_frame() #获取深度帧
    16. color_frame = frames.get_color_frame() # 获取对齐帧中的的color帧
    17. depth_image = np.asanyarray(depth_frame.get_data()) # 将深度帧转换为NumPy数组
    18. color_image = np.asanyarray(color_frame.get_data()) # 将彩色帧转化为numpy数组
    19. return depth_image,color_image
    20. if __name__ == '__main__':
    21. model = YOLO(r"E:\Deep learning\YOLOv8\yolov8n.pt") # 加载权重文件,如需要更换为自己训练好的权重best.pt即可
    22. # 设置计时器
    23. start_time = time.time()#获取当前时间
    24. interval = 3 # 间隔时间(秒)
    25. try:
    26. while True:
    27. img_depth,img_color = get_aligned_images() # 获取深度帧和彩色帧
    28. # cv2.applyColorMap()将深度图像转化为彩色图像,以便更好的可视化分析
    29. depth_colormap = cv2.applyColorMap(cv2.convertScaleAbs(img_depth, alpha=0.07), cv2.COLORMAP_JET)
    30. # 将图像color_impage和depth_colormap水平堆叠
    31. images = np.hstack((img_color, depth_colormap))
    32. # 设置窗口,窗口大小根据图像自动调整
    33. cv2.namedWindow('RealSense', cv2.WINDOW_AUTOSIZE)
    34. # 将图像images显示在窗口中
    35. cv2.imshow('RealSense', images)
    36. # 检查是否达到间隔时间
    37. if time.time() - start_time >= interval:
    38. start_time = time.time() # 重置计时器
    39. source = [img_color]#将其赋值给source列表
    40. # 调用YOLOv8中的推理,还是相当于把d435i中某一帧的图片进行detect推理
    41. #results = model.predict(source,save=True,show_conf=False) # model = YOLO(r"E:\Deep learning\YOLOv8\yolov8n.pt")
    42. # 置信度show_conf=False,表示不显示置信度
    43. results = model.predict(source,save=True,show_conf=False)
    44. key = cv2.waitKey(1)#等待用户输入
    45. # Press esc or 'q' to close the image window
    46. if key & 0xFF == ord('q') or key == 27:
    47. cv2.destroyAllWindows()
    48. pipeline.stop()
    49. break
    50. finally:
    51. # Stop streaming
    52. pipeline.stop()

  • 相关阅读:
    java-net-php-python-springboot博客系统计算机毕业设计程序
    雷达实测数据的信噪比
    08 集群参数配置(下)
    QPaint绘制自定义仪表盘组件03
    使用阿里云RDS for SQL Server性能洞察优化数据库负载-初识性能洞察
    简易绘图 DataFrame.plot
    Nuxt - Vant 2 Tabbar 标签栏(详细使用教程)
    正向代理与反向代理的概念
    多元宇宙优化算法(Matlab代码实现)
    公司建设网站的好处及优势
  • 原文地址:https://blog.csdn.net/doudou2weiwei/article/details/139385467