MaixPy Find color blocks

    Find all color blocks of the specified color in the picture

    Instructions

    MaixPy has implemented a method to find color patches in the image module, and a non-minimum firmware version is required.

    • Get pictures from the camera
    import image, sensor
    img=sensor.snapshot()
    
    • Find a list of all color block objects (image.blob) from the picture, and the incoming color threshold parameters follow the LAB format (l_lo, l_hi, a_lo, a_hi, b_lo, b_hi)
    green_threshold = (0, 80, -70, -10, -0, 30)
    blobs = img.find_blobs([green_threshold])
    
    • Manipulate color block objects

    Operate the color block object according to your own needs, for example, mark the color block object with a rectangular frame in the image

    tmp=img.draw_rectangle(b[0:4])
    

    For detailed API introduction, please refer to API-Image.

    Routine

    Find the green patch

    import sensor
    import image
    import lcd
    import time
    lcd.init()
    sensor.reset()
    sensor.set_pixformat(sensor.RGB565)
    sensor.set_framesize(sensor.QVGA)
    sensor.run(1)
    green_threshold = (0, 80, -70, -10, -0, 30)
    while True:
        img=sensor.snapshot()
        blobs = img.find_blobs([green_threshold])
        if blobs:
            for b in blobs:
                tmp=img.draw_rectangle(b[0:4])
                tmp=img.draw_cross(b[5], b[6])
                c=img.get_pixel(b[5], b[6])
        lcd.display(img)