找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 190|回复: 2
打印 上一主题 下一主题
收起左侧

openmv颜色阈值识别

[复制链接]
跳转到指定楼层
楼主
ID:1153365 发表于 2025-6-10 17:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本人是小白,想请问大佬们openmv利用颜色阈值法识别如何能排除白色背景干扰,精准追击白色色块呢?试过用面积大小,色块横纵比限制等辅助识别方法,识别效果都不尽人意。偶尔会出现镜头昏暗的情况,镜头模糊不清,识别不出颜色,应该如何解决呢?如果不使用颜色阈值的方法,有没有其他方法能够精准快速识别白色色块呢?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

无效楼层,该帖已经被删除
板凳
ID:669414 发表于 2025-6-11 14:22 | 只看该作者
调整颜色阈值参数是最直接的方法。OpenMV 使用 LAB 颜色空间,通过调整 L (亮度)、
A (红绿)、B (黄蓝) 三个通道的范围,可以更精确地过滤掉白色背景。
回复

使用道具 举报

地板
ID:669414 发表于 2025-6-11 14:22 | 只看该作者
# 设置颜色阈值,这里以红色物体为例
# (L Min, L Max, A Min, A Max, B Min, B Max)
# 调整L值范围以减少白色背景的影响
red_threshold = (30, 100, 15, 127, 15, 127)  # 较暗的红色物体
# red_threshold = (20, 100, 15, 127, 15, 127)  # 较亮的红色物体

while(True):
    clock.tick()
    img = sensor.snapshot()
   
    # 使用颜色阈值查找色块
    blobs = img.find_blobs([red_threshold], pixels_threshold=200, area_threshold=200)
   
    # 在找到的色块周围绘制矩形
    for blob in blobs:
        img.draw_rectangle(blob.rect())
        img.draw_cross(blob.cx(), blob.cy())
   
    print(clock.fps())

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表