• 大小: 3KB
    文件类型: .py
    金币: 2
    下载: 2 次
    发布日期: 2021-06-18
  • 语言: Python
  • 标签: openmv  同时识别  

资源简介

停车 识别三种颜色 通过串口 发送给arduino 进行处理。。利用的是色块的横坐标 大小比较 从而将三种颜色 排列组合 到达排序效果 针对工程训练大赛 openmv 颜色识别 共享此代码 欢迎学习

资源截图

代码片段和文件信息

import sensor image time pyb
red_threshold = (47 68 55 103 25 63) # red_thresholds
green_threshold  = (82 58 -15 -99 -49 31) # green_thresholds
blue_threshold  = (28 81 -52 81 -29 -87)# blue_thresholds

sensor.reset()
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QVGA)
sensor.skip_frames(time = 2000)
sensor.set_auto_gain(False) # must be turned off for color tracking
sensor.set_auto_whitebal(False) # must be turned off for color tracking
sensor.set_vflip(True)#垂直翻转
sensor.set_hmirror(True)#水平翻转
clock = time.clock()
uart = pyb.UART(1 9600 timeout_char = 100)
# 只有比“pixel_threshold”多的像素和多于“area_threshold”的区域才被
# 下面的“find_blobs”返回。 如果更改相机分辨率,
# 请更改“pixels_threshold”和“area_threshold”。 “merge = True”合并图像中所有重叠的色块。
r=0
g=0
b=0
k=1
c=2
d=0
while(True):
    clock.tick()
    c = uart.readchar()-48

    if c==1 :
        while(c==1):
            img = sensor.snapshot().lens_corr(1.8)
            for blob in img.find_blobs([red_threshold] pixels_threshold=800 area_threshold=800):
                img.draw_rectangle(blob.rect())
                img.draw_cross(blob.cx() blob.cy())
                r=blob.cx()
            #print(“1111111111111“)
            #print(r)
            for blob in img.find_blobs([green_threshold] pixels_threshold=200 area_th

评论

共有 条评论