IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 【OPENMV】openmv与单片机进行URAT通讯 发送坐标 2021-7-21 -> 正文阅读

[嵌入式]【OPENMV】openmv与单片机进行URAT通讯 发送坐标 2021-7-21

任务目标:使用openmv检测红色小球 ,找到小球在ROI中的坐标值,通过URAT通讯将 小球的二维平面坐标值发送给STM32单片机。

首先是寻找红色小球的色块

while(True):
    clock.tick()
    img = sensor.snapshot()
    for blob in img.find_blobs([thresholds[threshold_index]], pixels_threshold=200, area_threshold=200, merge=True):

利用img.find_blobs函数?

image.find_blobs(thresholds[,?invert=False[,?roi[,?x_stride=2[,?y_stride=1[,?area_threshold=10[,?pixels_threshold=10[,?merge=False[,?margin=0[,?threshold_cb=None[,?merge_cb=None]]]]]]]]]])

thresholds 是检测对象的颜色阈值

invert?是反转阈值操作,像素在已知颜色范围之外进行匹配,而非在已知颜色范围内。

roi?是感兴趣区域的矩形元组(x,y,w,h)。如果未指定,ROI即整个图像的图像矩形。 操作范围仅限于?roi?区域内的像素。

x_stride?是查找某色块时需要跳过的x像素的数量。找到色块后,直线填充算法将精确像素。 若已知色块较大,可增加?x_stride?来提高查找色块的速度。

y_stride?是查找某色块时需要跳过的y像素的数量。找到色块后,直线填充算法将精确像素。 若已知色块较大,可增加?y_stride?来提高查找色块的速度。

若一个色块的边界框区域小于?area_threshold?,则会被过滤掉。

若一个色块的像素数小于?pixel_threshold?,则会被过滤掉。

merge?若为True,则合并所有没有被过滤掉的色块,这些色块的边界矩形互相交错重叠。?margin?可在相交测试中用来增大或减小色块边界矩形的大小。例如:边缘为1、相互间边界矩形为1的色块将被合并。

URAT

uart = UART(3, 115200)

uart.init(115200, bits=8, parity=None, stop=1)  #8位数据位,无校验位,1位停止位、
    if blob: #如果找到了目标颜色
        uart.write("X,Y\r")#一帧数据的帧头
        for b in blob:
        #迭代找到的目标颜色区域
            img.draw_rectangle(b[0:4]) # rect
            img.draw_cross(b[5], b[6]) # cx, cy
            x = b.cx()
            y = b.cy()
            output_str="[%d,%d]" % (x,y) #方式1
            #output_str=json.dumps([max_blob.cx(),max_blob.cy()]) #方式2
            print('you send:',output_str)

            uart.write(output_str+'\r\n')

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-07-22 14:21:29  更:2021-07-22 14:22:34 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 19:42:26-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码