像素
构成数字影像的最基本单元。800万像素表示一张图片有800万个像素点
比如sensor.set_framesize(sensor.QVGA)表示图片大小为320*240即该图像由320个像素组成的宽度和240个像素组成的高度构成
lab通道
由一个亮通道和两个颜色通道组成的,各分量含义
L 表示明度 取值0-100
a 表示从绿色到红色的分量,取值-128-127 //红绿通道
b 表示从蓝色到黄色的分量,取值-128-127 //蓝黄通道
#识别蓝色色块,像素低于500过滤掉,并返回中心位置x,y坐标
#识别蓝色色块,像素低于500过滤掉,并返回中心位置x,y坐标
import sensor,lcd,time,utime
#摄像头初始化
sensor.reset()
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QVGA)
sensor.set_vflip(1) #后置模式,所见即所得
#lcd 初始化
lcd.init()
#创建一个时钟
clock=time.clock()
#颜色识别阈值(L Min,L Max,A Min,A Max,B Min,B Max)
thresholds=[(30,100,15 ,127,15 ,127),#红色阈值
(30,100,-64,-8 ,-32 ,32),#绿色阈值
(0 ,30 ,0 ,64 ,-128,-20)]#蓝色阈值
#threshold[0]表
while True:
img=sensor.snapshot()
blobs=img.find_blobs([thresholds[2]],pixels_threshold=400)
if blobs:
tmp=img.draw_rectangle(blobs[0][0:4])
tmp=img.draw_cross(blobs[0].cx(),blobs[0].cy())
#画框描边,在中心画十字
lcd.display(img)
#显示
print(blobs[0].cy(),blobs[0].cx())
#打印输出中心坐标
utime.sleep_ms(100)
python还是知道的太浅啊哈。我感觉大概是识别色块成功后blobs才是有一个成员的list,然后这个成员是包含我们想要的方法的list。