openmv巡线小车

2023-10-08 08:40
文章标签 小车 openmv 巡线

本文主要是介绍openmv巡线小车,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

openmv巡线小车的功能:巡线,路口识别,90度大转弯,串口通信,数字识别,条形码二维码识别等

巡线如何实现:

路口识别如何实现:

串口通信

openmv数字识别方案:

往年电赛:


机器学习之线性回归(Linear Regression)算法_线性回归算法_落难Coder的博客-CSDN博客https://blog.csdn.net/u014297502/article/details/125098004?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168549920916800227447460%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=168549920916800227447460&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-1-125098004-null-null.142%5Ev88%5Econtrol_2,239%5Ev2%5Einsert_chatgpt&utm_term=%E7%BA%BF%E6%80%A7%E5%9B%9E%E5%BD%92%E7%AE%97%E6%B3%95&spm=1018.2226.3001.4187

2021-07-29 Openmv与stm32 的串口通信(HAL库)_openmv与stm32串口通信_️零柒️的博客-CSDN博客https://blog.csdn.net/qq_52111026/article/details/119209709?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168562337316800184162663%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=168562337316800184162663&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_click~default-6-119209709-null-null.142%5Ev88%5Econtrol_2,239%5Ev2%5Einsert_chatgpt&utm_term=openmv%E4%B8%8Estm32%E9%80%9A%E4%BF%A1&spm=1018.2226.3001.4187

获取对象信息 - 廖雪峰的官方网站 (liaoxuefeng.com)https://www.liaoxuefeng.com/wiki/1016959663602400/1017499532944768

视觉识别数字、十字路口和T字路口,巡线于一体的基于openmv的解决方案(2021年电赛f题)_openmv 巡线_Meat_buns_dogs的博客-CSDN博客https://blog.csdn.net/Meat_buns_dogs/article/details/126145510?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168610047016800182785741%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=168610047016800182785741&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_click~default-5-126145510-null-null.142%5Ev88%5Econtrol_2,239%5Ev2%5Einsert_chatgpt&utm_term=openmv%E5%B7%A1%E7%BA%BF&spm=1018.2226.3001.4187

实现巡线,可以使用哪些传感器?传感器的使用方案?

openmv巡线小车的功能:巡线,路口识别,90度大转弯,串口通信,数字识别,条形码二维码识别等

巡线如何实现:
  1. 线性回归:将视野中在设定的颜色阈值内的色块做一个回归函数,得到一个拟合直线。如果拟合直线效果(直线的模)>8,将拟合直线的斜率和截距做一个PID运算之后,作为差速值给电机的基本转速。                                                                                                                                                                                                                                                                       问题:受光线效果影响较大,颜色阈值选取,拟合直线不稳定,左右跳动。                     为了让这些问题最小化,必须注意许多细节处理。光线保证,视野保证,颜色阈值选取,二值化处理。
  2. (2条消息) OpenMV 线性回归巡线之一:赛道提取_openmv车道线检测_handsomeswp的博客-CSDN博客https://blog.csdn.net/handsomeswp/article/details/109111576?ops_request_misc=&request_id=&biz_id=102&utm_term=openmv%20%E5%B7%A1%E7%BA%BF&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-2-109111576.nonecase&spm=1018.2226.3001.4187
  3. 将整幅画面分为三个平行的感兴趣区,在三个感兴趣区分别寻找最大色块,获得三个坐标,然后用权重计算平均质点坐标,再用质点坐标计算得到巡线时的偏转角度。get_statistics

循迹识别小车:(四)OpenMV4部分_openmv循迹_南沐ヾ的博客-CSDN博客https://blog.csdn.net/weixin_48267104/article/details/112986168?ops_request_misc=&request_id=&biz_id=102&utm_term=openmv%20%E5%B7%A1%E7%BA%BF&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-4-112986168.nonecase&spm=1018.2226.3001.4187

3.选出5个roi区域,然后进行二值化或者阈值设定,当在各个区域识别到特定颜色的时候返回1,类似于红外模块,红外模块在遇到黑线和白线的时候也会返回不同的值。

(2条消息) 2021电赛F题之openmv巡线(附代码)_ZhangBlossom的博客-CSDN博客https://blog.csdn.net/Zhangsama1/article/details/121151751?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168895130216800182160886%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=168895130216800182160886&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~baidu_landing_v2~default-5-121151751-null-null.142%5Ev88%5Econtrol_2,239%5Ev2%5Einsert_chatgpt&utm_term=openmv%20%E5%B7%A1%E7%BA%BF&spm=1018.2226.3001.4187

路口识别如何实现:
  1. 判断左方和右方区域是否有路线来识别路口。
    ROI = [(10,0,40,50),(110,0,50,50)]#x分别为10和110,Y为0blobs1 = img.find_blobs(RED_THRESHOLD,roi = ROI[0],area_threshold=150,merge=True)#先找左上角红线if blobs1:blobs2 = img.find_blobs(RED_THRESHOLD,roi = ROI[1],area_threshold=150,merge=True)if blobs2:print("+")sending_data(10,10)#表示识别到十字

2.模板匹配。设置左右两侧的roi,识别两侧的数字。看需要的数字在左边还是右边。

串口通信

openmv发送两个字节大小的数据时,低8位在前,高8位在后。如果在openmv的数据是负数,STM32接收到之后会读取为正数(uint),所以在使用数据之前,需要判断最高位是1还是0。

openmv数字识别方案:
  • 模板匹配,将灰度图二值化,使用图片处理软件处理一下,可以提高识别的准确率。为了提高准确率,还可以进行多次匹配。
ZhangBlossom/2021电赛F题openmv通过模板匹配的数字识别 - 码云 - 开源中国 (gitee.com)https://gitee.com/myoshino/num_recognition
往年电赛:

电赛OpenMV巡线巡迹_*Sun_Rising*的博客-CSDN博客https://blog.csdn.net/weixin_53434575/article/details/130542864?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168895130216800182160886%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=168895130216800182160886&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~baidu_landing_v2~default-6-130542864-null-null.142%5Ev88%5Econtrol_2,239%5Ev2%5Einsert_chatgpt&utm_term=openmv%20%E5%B7%A1%E7%BA%BF&spm=1018.2226.3001.4187

2021电赛F题智能送药小车方案分析(openMV数字识别,红线循迹,STM32HAL库freeRTOS,串级PID快速学习,小车自动返回)_也无风雨也无晴W的博客-CSDN博客icon-default.png?t=N658https://blog.csdn.net/cubejava/article/details/121274043?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168904088716800185839438%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=168904088716800185839438&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-8-121274043-null-null.142^v88^control_2,239^v2^insert_chatgpt&utm_term=openmv%20%E5%B7%A1%E7%BA%BF%E5%B0%8F%E8%BD%A6%20%E4%BB%A3%E7%A0%81%20%E5%B7%A5%E7%A8%8B&spm=1018.2226.3001.4187

总结了一下CSDN上的多篇文章以及openmv官网的资料,自己做了一个巡线的小车。主要记录一下自己使用的PID的rho_pid的p参数取的是0.6,小车的基本速度取55。55这个速度在启动时可能会有点艰难。下面是个人账号的视频。

巡线小车_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV18P411y7Xf/?vd_source=8ea4713eb134e2cbfd2860e217cf1a31

这篇关于openmv巡线小车的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/164070

相关文章

基于UE5和ROS2的激光雷达+深度RGBD相机小车的仿真指南(五):Blender锥桶建模

前言 本系列教程旨在使用UE5配置一个具备激光雷达+深度摄像机的仿真小车,并使用通过跨平台的方式进行ROS2和UE5仿真的通讯,达到小车自主导航的目的。本教程默认有ROS2导航及其gazebo仿真相关方面基础,Nav2相关的学习教程可以参考本人的其他博客Nav2代价地图实现和原理–Nav2源码解读之CostMap2D(上)-CSDN博客往期教程: 第一期:基于UE5和ROS2的激光雷达+深度RG

基于微信小程序与嵌入式系统的智能小车开发(详细流程)

一、项目概述 本项目旨在开发一款智能小车,结合微信小程序与嵌入式系统,提供实时图像处理与控制功能。用户可以通过微信小程序远程操控小车,并实时接收摄像头采集的图像。该项目解决了传统遥控小车在图像反馈和控制延迟方面的问题,提升了小车的智能化水平,适用于教育、科研和娱乐等多个领域。 二、系统架构 1. 系统架构设计 本项目的系统架构主要分为以下几个部分: 微信小程序:负责用户界面、控制指令的

基于51单片机的智能小车转向控制系统设计与实现

文章目录 前言资料获取设计介绍功能介绍具体实现截图参考文献设计获取 前言 💗博主介绍:✌全网粉丝10W+,CSDN特邀作者、博客专家、CSDN新星计划导师,一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设计 主要对象是咱们电子相关专业的大学生,希望您们都共创辉煌!✌💗 👇🏻 精彩专栏 推荐订阅👇🏻 单片机设计精品

C语言《智能自平衡小车,实现平衡功能的基础上,加入了超声波避障、超声波跟随、蓝牙遥控等功能》+源代码+文档说明

文章目录 源代码下载地址项目介绍项目功能 项目备注源代码下载地址 源代码下载地址 点击这里下载源码 项目介绍 C语言《智能自平衡小车,实现平衡功能的基础上,加入了超声波避障、超声波跟随、蓝牙遥控等功能》+源代码+文档说明 项目功能 为了实现小车功能,小车硬件主要包括: 控制核心板带编码器的直流电机车架12V 1900mah锂电池 项目备注 1、该资源内项目代码都经过

电赛2024年H题智能小车基于MSPM0G3507主控MCU(利用8路灰度加上MPU6050的解决方式)具体项目报告

题目:自动行驶小车(H题) 摘要 本项目由微处理器MSPM0G3507,编码器电机驱动,8路灰度传感器指示线巡线单元,MPU6050六轴传感器无线直行单元,OLED显示人机互动单元,红色LED及蜂鸣器声光提示单元构成。系统运行由两部分组成:自动行驶小车的无指示线直行控制部分和有指示线弯道行驶的实时转向控制部分,小车的无指示线直行控制部分,由MPU6050六轴传感器获得小车姿态的偏航角,通过获得

电赛2024年H题智能小车基于MSPM0G3507主控MCU(利用8路灰度加上MPU6050的解决方式)

一.前言         前段时间,激烈的电赛刚刚结束,很荣幸啊,也是十分的不甘心,本次的湖北赛区H题只拿到了一个省二,看最终的排名,在H题中我们离省一也就差几名。但是整个比赛已经过去了,现在不甘与不舍,也没有任何意义了,只有接收这一现实了。         当时我们整个比赛要求一二三都完美完成,要求四能够十分稳定的跑下来但是跑完四圈得花1分30秒,大概是跑十次才死一两次的样子(毕竟比赛,谁也

解决OpenMV非官方LCD显示

以下代码可以解决花屏,就是屏幕被分割的情况,但是并不能够解决完全能解决,屏幕起码能看,额,最好的方式就是改变驱动。之后再说。感谢一位友的分享。 # SPI 控制## 这个例子展示了,如何使用OpenMV的SPI总线# LCD 扩展板没有使用内置的lcd驱动。而是使用了SPI。# 需要插入LCD扩展板来运行这个例子import sensor, image, timefrom pyb i

微信小程序App实现小车方向控制

目录 概述 1 系统框架结构 1.1 结构介绍  1.2 硬件模块介绍 1.2.1 蓝牙模块介绍 1.2 .2 模块功能介绍 2 功能实现 2.1 微信小程序APP 2.2 下位机功能 3 功能测试 3.1 小程序UI测试 3.2 小车方向控制 微信小程序和蓝牙模块控制小车运行状态 概述 本文主要介绍使用微信小程序和蓝牙模块设计一个智能小程控制系统,笔者介

第六章-课后作业-openmv和STM32与arduino 完成一些功能

将第四章和第五章结合一起,实现openmv 识别特定图形坐标发送到STM32、或arduino 准备USB转TTL (CH340模块) 一个人两个openmv 识别黑色圆形 砝码 、识别黄色正方形、调试终端输出坐标openmv 识别黑色圆形 砝码 、识别黄色正方形、串口 三输出坐标 6.1-penmv 识别黑色圆形(或砝码顶端 ) 坐标输出调试终端和串口三 先在 原来 代码 基础上修改阈值

Underactuated Robotics - 欠驱动机器人学(三)- 体操机器人、小车摆杆和四旋翼飞行器

系列文章目录 前言 在低维模型系统的背景下,已经开展了大量有关欠驱动系统控制的工作。这些模型系统捕捉到了问题的本质,却没有引入更真实世界的例子中经常涉及的所有复杂性。在本章中,我们将重点讨论两个最著名、研究最深入的模型系统--Acrobot 和 Cart-Pole。在我们开发了一些工具后,我们将看到这些工具可以直接应用于其他模型系统;我们将使用四旋翼机器人举出一些例子。所有这些系统都是