本科阶段最后一次竞赛Vlog——2024年智能车大赛智慧医疗组准备全过程——12使用YOLO-Bin

news2024/12/27 8:24:25

本科阶段最后一次竞赛Vlog——2024年智能车大赛智慧医疗组准备全过程——12使用YOLO-Bin

​ 根据前面内容,所有的子任务已经基本结束,接下来就是调用转化的bin模型进行最后的逻辑控制了

1 .YOLO的bin使用

​ 对于yolo其实有个简单的办法,也不需要自己写代码进行推理

​ 直接找到websocker的demo修改配置文件

image-20241216150709943

​ 配置文件在手册其实也是作为一个demo进行演示,下面我把配置文件内容也给大家,大家就不需要去翻手册了

​ 但是下面内容要根据你实际情况修改类别和类别list里面的label

{
	"model_file": "/root/yolov5s_640x640.5.13.bin",
	"dnn_Parser": "yolov5",
	"model_output_count": 3,
	"class_num": 1,
	"cls_names_list": "/root/obstacles.list",
	"score_threshold": 0.65,
	"nms_threshold": 0.6,
	"nms_top_k": 2
}

2.模型数据的接受

​ 既然使用了websocket那么如何拿到标签信息,经过当时在论坛上找来找去,然后改了改这里给大家提供个demo

​ 大家可以根据自己的需要把需要得内容进行发布出去

import rclpy
from rclpy.node import Node
from std_msgs.msg import Float64
import numpy as np
from ai_msgs.msg import PerceptionTargets
import threading

class YOffsetsMaxPublisher(Node):

    def __init__(self):
        super().__init__('y_offsets_max_publisher')
        self.YoloV5Subscriber = self.create_subscription(
            PerceptionTargets,
            'hobot_dnn_detection',
            self.YoloV5_listener_callback,
            100)
        self.data_store = {
            "y_offsets_conf": 150,  # 示例值,根据实际情况调整
            "needzhuanwan": False
        }
        self.lock = threading.Lock()
        

    def YoloV5_listener_callback(self, msg):
        result_list = msg.targets 
        obj_len = len(result_list)
        self.obj_x = np.full(8, -1)  # 存坐标
        self.obj_y = np.full(8, -1)
        max_area = 0  # 用于存储最大面积
        with self.lock:
            for i in range(obj_len):
                if not result_list[i].rois:
                    continue
                for roi in result_list[i].rois:
                    box = roi.rect  # 直接获取 roi 的 rect 属性
                    x_offset = box.x_offset
                    y_offset = box.y_offset
                    width = box.width
                    height = box.height
                    area = width * height
                    id = result_list[i].track_id
                    

def main(args=None):
    rclpy.init(args=args)
    y_offsets_max_publisher = YOffsetsMaxPublisher()
    rclpy.spin(y_offsets_max_publisher)
    y_offsets_max_publisher.destroy_node()
    rclpy.shutdown()

if __name__ == '__main__':
    main()

3.总结

​ 目前对于yolo的使用已经结束,其实有需要大家可以使用cpp和py单独使用dnn模块进行推理也可以

​ 这里给大家带来小白用法,更多的用法大家可以去地瓜手册进行查询api函数

​ 下面给大家带来resnet使用
束,其实有需要大家可以使用cpp和py单独使用dnn模块进行推理也可以

​ 这里给大家带来小白用法,更多的用法大家可以去地瓜手册进行查询api函数

​ 下面给大家带来resnet使用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2266275.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

109.【C语言】数据结构之求二叉树的高度

目录 1.知识回顾:高度(也称深度) 2.分析 设计代码框架 返回左右子树高度较大的那个的写法一:if语句 返回左右子树高度较大的那个的写法二:三目操作符 3.代码 4.反思 问题 出问题的代码 改进后的代码 执行结果 1.知识回顾&#xf…

STM32学习(一)

STM32是什么 STM32是意法半导体(ST)公司基于ARM Cortex-M内核开发的32位微控制器‌。他的名字是由;意大利SGS&法国Thomson共同研制的,中国人民取两家公司名称的首字母于是ST就是这样来的,M是单片机M-Micro Contro…

Windows、CentOS环境下搭建自己的版本管理资料库:GitBlit

可以搭建属于公司内部或者个人的Git服务器,方便程序代码及文档版本管理。 官网:http://www.gitblit.com/ Windows环境下安装 提前已经安装好了JDK。 官网下载Windows版的GitBlit。 将zip包解压到自己想要放置的文件夹下。 建立版本库路径&#xff0c…

音视频入门基础:MPEG2-TS专题(22)——FFmpeg源码中,获取TS流的音频信息的实现

一、引言 通过FFmpeg命令可以获取到TS文件/TS流的音频压缩编码格式、音频压缩编码格式的profile、音频采样率、通道数、音频码率信息: ./ffmpeg -i XXX.ts 本文以音频为AAC为例讲述FFmpeg到底是从哪个地方获取到这些音频信息的。 二、音频压缩编码格式 FFmpeg获取…

中伟视界:电话、短信怎么在矿山智能分析平台中的报警等级管理中分级通知到相关人员

在现代矿山安全管理中,通讯报警系统的有效性不可忽视,智慧矿山的融合通信与AI智能预警的联动,已经成为矿山智能化的一个发展方向。随着科技的发展,矿山智能分析平台越来越受到企业的青睐,通过对报警信息的分级管理&…

音视频入门知识(二)、图像篇

⭐二、图像篇 视频基本要素:宽、高、帧率、编码方式、码率、分辨率 ​ 其中码率的计算:码率(kbps)=文件大小(KB)*8/时间(秒),即码率和视频文件大小成正比 YUV和RGB可相互转换 ★YUV(原始数据&am…

论文研读:AnimateDiff—通过微调SD,用图片生成动画

1.概述 AnimateDiff 设计了3个模块来微调通用的文生图Stable Diffusion预训练模型, 以较低的消耗实现图片到动画生成。 论文名:AnimateDiff: Animate Your Personalized Text-to-Image Diffusion Models without Specific Tuning 三大模块: 视频域适应…

百度地图绘制行政区域及设置中心点

// 画行政区 const drwaDistrict (disList, clear true) > {clear && clearOverlays();if (!bMapGL.value) return;let bd new bMapGL.value.Boundary();disList.map((item) > {bd.get(item, function (rs1) {// rs1 是行政区对应的点集合 此处非每次必反信息…

jetson Orin nx + yolov8 TensorRT 加速量化 环境配置

参考【Jetson】Jetson Orin NX纯系统配置环境-CSDN博客 一 系统环境配置: 1.更换源: sudo vi /etc/apt/sources.list.d/nvidia-l4t-apt-source.list2.更新源: sudo apt upgradesudo apt updatesudo apt dist-upgrade sudo apt-get updat…

VirtualBox下ubuntu23.04使用主机串口以及使用 minicom 进行串口调试

VirtualBox下ubuntu23.04使用主机串口以及使用 minicom 进行串口调试 一、打开设备管理器看主机(Window系统)是否识别出串口,我这边显示的串行通信端口是COM3 二、打开VirtualBox,设置串口和USB设备 串口设置: 启用…

Python 自动化 打开网站 填表登陆 例子

图样 简价: 简要说明这个程序的功能: 1. **基本功能**: - 自动打开网站 - 自动填写登录信息(号、公司名称、密码) - 显示半透明状态窗口实时提示操作进度 2. **操作流程**: - 打开网站后自动…

本原多项式

将 G F ( p ) GF(p) GF(p)延伸为有 p m p^m pm个元素的域,称之为 G F ( p ) GF(p) GF(p)的扩域,表示为 G F ( p m ) GF(p^m) GF(pm). G F ( p ) GF(p) GF(p)是 G F ( p m ) GF(p^m) GF(pm)的子集。 G F ( p m ) GF(p^m) GF(pm)元素个数为 p m p^m pm。 …

【物联网技术与应用】实验15:电位器传感器实验

实验15 电位器传感器实验 【实验介绍】 电位器可以帮助控制Arduino板上的LED闪烁的时间间隔。 【实验组件】 ● Arduino Uno主板* 1 ● 电位器模块* 1 ● USB电缆*1 ● 面包板* 1 ● 9V方型电池* 1 ● 跳线若干 【实验原理】 模拟电位器是模拟电子元件,模…

能省一点是一点 - 享元模式(Flyweight Pattern)

享元模式(Flyweight Pattern) 享元模式(Flyweight Pattern)享元模式(Flyweight Pattern)概述享元模式包含的角色:享元模式应用场景 talk is cheap, show you my code总结 享元模式&a…

学习C++:变量

变量: 作用:给一段指定的内存空间起名,方便操作这段内容 (变量存在的意义:方便我们管理内存空间) 语法:数据类型 变量名 初始值; 实例:

蓝桥杯物联网开发板硬件组成

第一节 开发板简介 物联网设计与开发竞赛实训平台由蓝桥杯大赛技术支持单位北京四梯科技有限公司设计和生产,该产品可用于参加蓝桥杯物联网设计与开发赛道的竞赛实训或院校相关课程的 实践教学环节。 开发板基于STM32WLE5无线微控制器设计,芯片提供了25…

Day35汉明距离

两个整数之间的 汉明距离 指的是这两个数字对应二进制位不同的位置的数目。 给你两个整数 x 和 y,计算并返回它们之间的汉明距离。 class Solution {public int hammingDistance(int x, int y) {int cnt 0;while (Math.max(x, y) ! 0) {if ((x & 1) ! (y &…

matplotlib pyton 如何画柱状图,利用kimi,直接把图拉倒上面,让他生成

要绘制类似于您提供的图像的柱状图,您可以使用Python中的Matplotlib库,这是一个非常流行的绘图库。以下是一个简单的示例代码,展示如何使用Matplotlib来创建一个类似的柱状图: python import matplotlib.pyplot as plt import nu…

计算机网络——期末复习(3)4-6章考试重点

第四章 根据IPv4第1个十进制数值判断,127以下为A类,128~191为B类,192~223为C类不能分配给主机或路由器接口的:A类网络号0和127,主机号全为0或全为1私有地址(Private IP Address)是指一类专门保…

【安全编码】Web平台如何设计防止重放攻击

我们先来做一道关于防重放的题,答案在文末 防止重放攻击最有效的方法是( )。 A.对用户密码进行加密存储使用 B.使用一次一密的加密方式 C.强制用户经常修改用户密码 D.强制用户设置复杂度高的密码 如果这道题目自己拿不准,或者…