openmv串口发送数据_关于arduino和openmv串口通信的问题

#openmv的代码

import sensor, image, time

import json

from pyb import UART

# For color tracking to work really well you should ideally be in a very, very,

# very, controlled enviroment where the lighting is constant...

blue_threshold   = ( 0, 60, -20, 64, -128, 0)

# You may need to tweak the above settings for tracking green things...

# Select an area in the Framebuffer to copy the color settings.

#p4_10,p5_11,gnd_gnd

sensor.reset() # Initialize the camera sensor.

sensor.set_pixformat(sensor.RGB565) # use RGB565.

sensor.set_framesize(sensor.QQVGA) # use QQVGA for speed.

sensor.skip_frames(10) # Let new settings take affect.

sensor.set_auto_whitebal(False) # turn this off.

clock = time.clock() # Tracks FPS.

uart = UART(3, 115200)

'''

扩宽roi

'''

def expand_roi(roi):

# set for QQVGA 160*120

extra = 5

win_size = (160, 120)

(x, y, width, height) = roi

new_roi = [x-extra, y-extra, width+2*extra, height+2*extra]

if new_roi[0] < 0:

new_roi[0] = 0

if new_roi[1] < 0:

new_roi[1] = 0

if new_roi[2] > win_size[0]:

new_roi[2] = win_size[0]

if new_roi[3] > win_size[1]:

new_roi[3] = win_size[1]

return tuple(new_roi)

K=680 #the value should be measured

while(True):

clock.tick() # Track elapsed milliseconds between snapshots().

img = sensor.snapshot() # Take a picture and return the image.

blobs = img.find_blobs([blue_threshold], area_threshold=150)

if blobs:

#如果找到了目标颜色

data=[]

#print(blobs)

for blob in blobs:

#迭代找到的目标颜色区域

b = blob[0]

is_circle = False

max_circle = None

max_radius = -1

new_roi = expand_roi(blob.rect())

Lm = (blob[2]+blob[3])/2

length = K/Lm

length = str(length)

length = float(length)

for c in img.find_circles(threshold = 2000, x_margin = 10, y_margin = 10, r_margin = 10, roi=new_roi):

is_circle = True

# img.draw_circle(c.x(), c.y(), c.r(), color = (255, 255, 255))

if c.r() > max_radius:

max_radius = c.r()

max_circle = c

if is_circle:

# 如果有对应颜色的圆形 标记外框

# Draw a rect around the blob.

img.draw_rectangle(new_roi) # rect

img.draw_rectangle(blob.rect()) # rect

#用矩形标记出目标颜色区域

img.draw_cross(blob[5], blob[6]) # cx, cy

img.draw_circle(max_circle.x(), max_circle.y(), max_circle.r(), color = (0, 255, 0))

img.draw_circle(max_circle.x(), max_circle.y(), max_circle.r() + 1, color = (0, 255, 0))

data.append((max_circle.x(),max_circle.y(),length))

#data.append(length)

data_out = json.dumps(set(data))

uart.write(data_out +'\n')

print('you send:',data_out)

else:

print("not found!")

else:

print("not found!")

#print(clock.fps()) # Note: Your OpenMV Cam runs about half as fast while

# connected to your computer. The FPS should increase once disconnected.

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

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

相关文章

【渝粤教育】国家开放大学2018年春季 0175-21T社会调查研究与方法 参考试题

科目编号&#xff1a;0175 座位号 2017-2018学年度第二学期期末考试 社会调查研究与方法 试题 2018年 7 月 一、单选题&#xff08;本大题共10小题&#xff0c;每小题3分&#xff0c;共计30分&#xff09; &#xff08;★请考生务必将答案填入到下面对应序号的答题框中★&…

主流微型计算机,主流微型计算机硬件系统维护

主流微型计算机硬件系统维护通过其芯片技术的革新来缩短存取时间和提高内存访问周期效率的。FP打兰快页模式与EDO打兰占据原PC内存条的大部分市场&#xff0c;但随着电脑进入奔腾时代,SDRAM已作为内存条最新技术要求取代了前两者在新型号电脑上的位置。SDRAM即同步打兰也…

【渝粤教育】国家开放大学2018年春季 0257-22T高级英语听力(1) 参考试题

试卷代码&#xff1a;0257 2017-2018学年度第二学期期末考试 高级英语听力&#xff08;1&#xff09;试题 2018年7月 注 意 事 项 一、将你的准考证号、学生证号、姓名及分校&#xff08;工作站&#xff09;名称填写在答题纸规定栏内。 考试结束后&#xff0c;把试卷和答题纸放…

什么叫POE交换机?POE交换机使用方法介绍?

供电用的交换机&#xff0c;比如安装网络监控时不方便给摄像头拉电线&#xff0c;就可以使用PoE交换机供电&#xff0c;还有弄无线网络时也可以给AP供电&#xff0c;主要方便&#xff0c;关于怎么使用&#xff0c;如果那些需要供电的设备支持PoE直接连接就行了。那么&#xff0…

【渝粤教育】国家开放大学2018年春季 0359-22T会计学原理 参考试题

科目编号&#xff1a;0359 座位号 2017-2018学年第二学期期末考试 基础会计试题 2018 年7月一、单项选择题&#xff1a;请将正确答案填在下面的表格内 &#xff08;每小题2分&#xff0c;共30分&#xff09; 1.企业法定盈余公积金的计算依据是&#xff08; &#xff09;。 A.…

前9个免费的Java进程监视工具以及如何选择一种

这样就可以运行Java代码了。 也许它甚至可以在生产服务器上运行。 在您完成出色工作之后&#xff0c;我们得到了好消息和令人讨厌的消息。 令人讨厌的消息是&#xff0c;现在开始调试。 就是调试和应用程序性能监视。 这意味着您不仅需要查看编写的代码&#xff0c;还可以查看…

redisson的锁的类型_厉害了,中间件Redisson原来这么好用!

点击上方[全栈开发者社区]→右上角[...]→[设为星标⭐]作者&#xff1a;bravoban原文&#xff1a;http://tech.lede.com/2017/03/08/rd/server/Redisson/针对项目中使用的分布式锁进行简单的示例配置以及源码解析&#xff0c;并列举源码中使用到的一些基础知识点&#xff0c;但…

计算机应用与科学专业简介,计算机应用技术学科专业简介

计算机应用技术学科是计算机科学与技术一级学科所属的二级学科。该学科以计算机基本理论为基础&#xff0c;突出计算机理论和技术的实际应用&#xff0c;是计算机科学服务于国民经济的钥匙与纽带。本学科主要研究对于计算机各种应用具有共性的理论、技术和方法&#xff0c;以及…

【渝粤教育】国家开放大学2018年春季 0554-21T立体构成(一) 参考试题

编号&#xff1a;0554 座位号&#xff1a; 2017&#xff5e;2018学年度第二学期期末考试 平面构成 试题 2018年7月 一、设计题&#xff1a;&#xff08;100分&#xff09; 在25cm25cm的方形内&#xff0c;用“自由分割”的构成方式&#xff0c;设计一张广告招贴图。主题不限&a…

q7goodies事例_Java 8 Friday Goodies:新的新I / O API

q7goodies事例在Data Geekery &#xff0c;我们喜欢Java。 而且&#xff0c;由于我们真的很喜欢jOOQ的流畅的API和查询DSL &#xff0c;我们对Java 8将为我们的生态系统带来什么感到非常兴奋。 我们已经写了一些关于Java 8好东西的博客 &#xff0c;现在我们觉得是时候开始一个…

网管交换机与非网管交换机的利弊介绍

交换机可以分为网管交换机以及非网管交换机&#xff0c;网管型交换机就字面上的意思&#xff0c;可以网络管理的交换机&#xff0c;而非网管交换机&#xff0c;是相对网管型交换机而言的&#xff0c;非网管交换机又称为傻瓜型交换机&#xff0c;不需要任何设置&#xff0c;插上…

探探自动配对PHP_CentOS7 - 安装Apache HTTP Server和PHP

安装Apache HTTP Server和PHP你可能听说过LAMP的缩写&#xff0c;它代表Linux&#xff0c;Apache&#xff0c;MySQL和PHP。 它指的是用于提供网站和Web应用程序的流行技术配对。 本文教您如何安装Apache HTTP Server(简称Apache)并将其配置为与PHP一起使用以提供动态Web内容.Ap…

网管型交换机比普通交换机有哪些明显优势

现在网络这么普及&#xff0c;对于交换机的需求也就越发的重要了&#xff0c;而市面上交换机的型号这么多&#xff0c;之前我们也分析过按照不同的情况怎么区分交换机&#xff0c;但浏览名称的时候我们也会发现&#xff0c;许多交换机的简介都会写着网管型交换机和非网管型交换…

广西计算机学业水平考试,2017年6月广西信息技术学业水平考试(1)-2017广西信息技术会考真题...

2017年6月广西壮族自治区普通高中学业水平考试信息技术(全卷满分100分&#xff0c;考试时间90分钟)一、单项选择题(本大题共60小题&#xff0c;每小题1分&#xff0c;共60分。温馨提示&#xff1a;请在答题卡上作答&#xff0c;在本试题上作答无效。)1.下列选项中&#xff0c;属…

cryptojs支持rsa加密_新特性解读 | 从 wireshark 看 MySQL 8.0 加密连接

作者&#xff1a;秦福朗爱可生 DBA 团队成员&#xff0c;负责项目日常问题处理及公司平台问题排查。热爱 IT&#xff0c;喜欢在互联网里畅游&#xff0c;擅长摄影、厨艺&#xff0c;不会厨艺的 DBA 不是好司机&#xff0c;didi~本文来源&#xff1a;原创投稿*爱可生开源社区出品…

2021苏州大学计算机考研分数,苏州大学2021考研分数线已公布

基本要求(一)复试分数线1.各基层研究生培养单位根据本单位学科(专业)考生的初试情况和招生计划&#xff0c;自主确定不低于教育部2021年全国硕士研究生招生考试考生进入复试的一区初试成绩基本要求的复试分数线。(1)同一专业学位的全日制与非全日制复试分数线一致。(2)一志愿上…

工业交换机如何预防雷电?

工业交换机需要综合进行防雷防范&#xff0c;因为如果偏重哪一方的防雷只能称为局部防雷&#xff0c;而局部防雷带有“先天不足”问题。所以工业交换机的防雷不能偏重任何一方。那么工业交换机如何防雷呢&#xff1f;接下来我们就跟随飞畅科技的小编一起来详细了解下吧&#xf…

sap-erp实施心得_实施动态代理-比较

sap-erp实施心得有时需要拦截某些方法调用&#xff0c;以便每次调用被拦截方法时都执行自己的逻辑。 如果您不属于Java EE的CDI领域&#xff0c;并且不想使用诸如Aspectj之类的AOP框架&#xff0c;那么您将有一个简单而有效的替代方法。 从1.5版开始&#xff0c;JDK附带了类ja…

保存点云数据_PCL入门系列三——PCL进行数据读写

本节课我们将了解到以下内容&#xff1a;基本的PCL中的数据类型&#xff1b;使用PCL进行简单编程&#xff1a;写文件与读文件。一、PCL库基本数据类型上一节课&#xff0c;我们使用PCL库在本地写入了一个名为test_pcd.pcd的文件。我们划分一下程序的任务步骤&#xff1a;构造pc…

计算机辅助技术课设,《计算机辅助设计技术》课程标准-20210311103339.doc-原创力文档...

.《计算机辅助设计技术》课程标准教研室主任&#xff1a;专业带头人&#xff1a;(部 )主任&#xff1a;教务处处长&#xff1a;教学副院长&#xff1a;审核批准日期&#xff1a;二○一三年 十二月Word 资料.《计算机辅助设计》课程标准(基本信息)课程编码&#xff1a;课程类别&…