# 导入文件
import sensor, image, time, pyb
from pyb import UART,Pin,Timer
import json
# 初始化摄像头
sensor.reset()
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QVGA)
sensor.skip_frames(time=2000) # 等待摄像头稳定
sensor.set_auto_gain(False) # 关闭自动增益。在颜色识别中,需要关闭自动增益
sensor.set_auto_whitebal(False)
clock = time.clock()
tim = Timer(4, freq=1000) # Frequency in Hz
led_dac = tim.channel(1, Timer.PWM, pin=Pin("P7"), pulse_width_percent=50)
led_dac.pulse_width_percent(100)
# 定义颜色阈值
red_threshold = (33, 100, 17, 127, -25, 52) # 红色阈值
green_threshold = (54, 20, -47, -18, -15, 41) # 绿色阈值
yellow_threshold = (40, 100, -56, 81, 25, 127) # 黄色阈值
# 初始化串口
uart = pyb.UART(3, 115200) # 使用UART3,波特率115200
# 定义帧头和帧尾
FRAME_HEADER = 0xAA
FRAME_TAIL = 0x55
# 上一次发送的颜色
last_detected_color = None
def find_max_blob(blobs):
max_blob = None
max_size = 0
for blob in blobs:
if blob.pixels() > max_size:
max_size = blob.pixels()
OpenMV识别颜色源码
最新推荐文章于 2025-08-23 10:20:54 发布


9802

被折叠的 条评论
为什么被折叠?



