当前位置: 首页 > news >正文

百度网站优点西安做建站的公司

百度网站优点,西安做建站的公司,柳城网站建设,北京网站制作建设公司哪家好本方案的思路是最简单的不涉及复杂算法#xff1a;识别矩形框#xff0c;标记矩形框#xff0c;输出坐标和中心点#xff0c;计算长度#xff0c;控制舵机移动固定长度#xff01;仅供完成基础功能参考#xff0c;不喜勿喷#xff01; # 实现运动目标控制与自动追踪系…本方案的思路是最简单的不涉及复杂算法识别矩形框标记矩形框输出坐标和中心点计算长度控制舵机移动固定长度仅供完成基础功能参考不喜勿喷 # 实现运动目标控制与自动追踪系统 ## 任务概述 本文将介绍如何使用OpenMV开发板和舵机构建一个运动目标控制与自动追踪系统。该系统包括模拟目标运动的红色光斑位置控制系统和指示自动追踪的绿色光斑位置控制系统。通过本文的实现我们可以在图像中识别目标控制舵机沿着目标移动并输出目标矩形框的中心位置和长度。 ## 硬件准备 1. OpenMV H7 Plus开发板 2. 红色和绿色激光笔 3. 两个舵机连接到OpenMV开发板 ## 硬件连接 将两个舵机分别连接到OpenMV开发板的舵机引脚根据实际引脚选择。 ## 相机设置 在代码中我们将相机设置为QVGA分辨率和RGB565格式。 import sensor, image, math, pyb# 初始化相机 sensor.reset() sensor.set_pixformat(sensor.RGB565) sensor.set_framesize(sensor.QVGA) sensor.skip_frames(time2000)# 其他代码...## 目标检测与跟踪目标检测部分代码实测过 ### 寻找矩形函数 为了在图像中识别目标矩形框我们需要编写一个寻找矩形函数。该函数将返回第二大的矩形区域以便我们可以找到目标的位置。 # 寻找矩形函数返回第二大的矩形区域 def find_second_largest_rectangle(blobs):max_area 0max_blob Nonesecond_max_area 0second_max_blob Nonefor blob in blobs:area blob.area()if area max_area:second_max_area max_areasecond_max_blob max_blobmax_area areamax_blob blobelif area second_max_area:second_max_area areasecond_max_blob blobreturn second_max_blob## 主循环 在主循环中我们将不断获取图像并进行目标检测和跟踪。 while True:img sensor.snapshot() # 获取图像blobs img.find_blobs([black_threshold], pixels_threshold200, area_threshold200)if blobs:# 寻找第二大的矩形区域second_max_blob find_second_largest_rectangle(blobs)if second_max_blob:img.draw_rectangle(second_max_blob.rect(), color(255, 0, 0), thickness4) # 绘制第二大的矩形框颜色为红色# 其他代码...## 舵机控制 为了实现目标跟踪我们需要控制舵机使其沿着矩形框移动一圈并回到中心点。这里我们使用了pyb.Servo()来控制舵机运动。 # 舵机参数 servo_pan_pin 1 # 舵机1的引脚编号 servo_tilt_pin 2 # 舵机2的引脚编号 servo_pan pyb.Servo(servo_pan_pin) # 初始化舵机1 servo_tilt pyb.Servo(servo_tilt_pin) # 初始化舵机2 servo_speed 50 # 舵机转动速度0-100越大越快 servo_pan_range (0, 180) # 舵机1转动范围角度 servo_tilt_range (0, 180) # 舵机2转动范围角度# 控制舵机沿着矩形框移动一圈并回到中心点 for angle in range(servo_pan_range[0], servo_pan_range[1], servo_speed):servo_pan.angle(angle) # 控制舵机1水平旋转servo_tilt.angle(angle) # 控制舵机2垂直旋转pyb.delay(100) # 延时一段时间控制舵机转动速度# 将舵机回到中心点 servo_pan.angle((servo_pan_range[0] servo_pan_range[1]) // 2) servo_tilt.angle((servo_tilt_range[0] servo_tilt_range[1]) // 2)## 结果输出 在检测到目标后我们将输出目标矩形框的中心位置和长度。同时我们会在图像中标记出矩形框的位置。测试坐标和长度还是比较准备  # 获取矩形框的中心点坐标 x, y second_max_blob.cx(), second_max_blob.cy()# 计算矩形框的长度和宽度单位厘米 width_cm 2 * distance_cm * math.tan(math.radians(H_FOV / 2)) * (second_max_blob.w() / img.width()) height_cm 2 * distance_cm * math.tan(math.radians(V_FOV / 2)) * (second_max_blob.h() / img.height())# 输出矩形框的中心点坐标和长度单位厘米 print(Rectangle Center Coordinates (cm): x{}, y{}.format(x, y)) print(Rectangle Width (cm): {}, Height (cm): {}.format(width_cm, height_cm))# 绘制黄色圆点标记矩形框中心位置 img.draw_circle(x, y, 5, color(255, 255, 0), thickness2)## 运行效果 将硬件连接好后上传代码到OpenMV开发板并调整舵机参数和位置。运行代码后你将看到舵机沿着目标矩形框移动并在图像中标记出矩形框的位置和中心点。 ## 结束语 通过本文的实现我们成功搭建了一个运动目标控制与自动追踪系统。通过使用OpenMV开发板和舵机我们能够在图像中识别目标并控制舵机使其跟踪目标。 ## 参考链接 1. OpenMV官方网站: https://openmv.io/ 2. Pyb Servo文档: https://docs.openmv.io/library/pyb.Servo.html 欢迎大家提出宝贵的意见和建议共同探讨学习和改进。谢谢阅读
http://www.hkea.cn/news/14400761/

相关文章:

  • 学校网站建设及使用网页设计欣赏分析
  • 小米手机网站建设总结wordpress用户添加资源
  • 网站建设免费的WordPress用户管理系统
  • 企业移动网站制作东莞seo排名公司
  • 建设中网站如何上传图片找合作项目的平台
  • 西安建网站价格低怎么做网站底部备案号
  • 深圳制作网站开发费用网站备案要关闭吗
  • 亚马逊网站开发使用的什么方式无锡市新区建设环保局网站
  • 西安 网站 高端 公司2022年电商平台排行榜
  • 禅城建设网站深圳平面设计培训
  • 老外做汉字网站建手机网站的软件有哪些
  • 专业深圳网站建设公司摄影手机网站模板
  • 各电商网站的特点网页视频下载工具哪个好
  • 西安市做网站的公司网站设计论文的摘要
  • 找加工订单的网站企业文化宣传片拍摄
  • 网站备案和实名认证网络广告策划名词解释
  • 成都装饰网站建设凯里建设网站
  • 企业网站源代码下载中建西部建设北方有限公司网站
  • 凡科建站做网站需要几天建站企业网站
  • dw网站站点正确建设方式哈尔滨教育学会网站建设
  • 网站地址ip域名查询wordpress中文源码
  • 浙江网站优化公司遂宁做网站
  • 深圳做网站要做亚马逊网站一般发什么快递公司
  • 专业的网站设计html旅游网页完整代码
  • 网站建站和维护wordpress装多个博客
  • 北京国家建设部网站首页网站上的动态图怎么做的
  • 网站推广费用ihanshi网站分享对联广告
  • 中国十大大型门户网站网站网页的像素尺
  • 佛山优化网站方法劳动局免费培训项目
  • 提供手机自适应网站制作屏蔽网站推广