试了一下把串口部分去掉脱机后确实可以动了,但是我的程序功能就完全没有了。加上串口通信后,lcd脱机就不能用吗?想问一下有什么解决办法吗,谢谢
W
wna3
@wna3
0
声望
3
楼层
538
资料浏览
0
粉丝
0
关注
wna3 发布的帖子
-
RE: 在ide中lcd的图像是动的,但是脱机运行后lcd上只显示一帧图片然后就不动了,想问一下是我的程序有什么问题吗?
-
RE: 在ide中lcd的图像是动的,但是脱机运行后lcd上只显示一帧图片然后就不动了,想问一下是我的程序有什么问题吗?
补充一下用了lcd的例程脱机后lcd上的图像是可以动的,但是我改的这个程序脱机后就不动了
-
在ide中lcd的图像是动的,但是脱机运行后lcd上只显示一帧图片然后就不动了,想问一下是我的程序有什么问题吗?
import sensor, time, image, pyb from pyb import UART import lcd uart=UART(3,9600) sensor.reset() # Initialize the camera sensor. sensor.set_pixformat(sensor.GRAYSCALE) # or sensor.GRAYSCALE sensor.set_framesize(sensor.QQVGA2) sensor.set_windowing((92,112)) sensor.skip_frames(10) # Let new settings take affect. sensor.skip_frames(time = 5000) #等待5s lcd.init() def min(pmin, a, s): global num if a<pmin: pmin=a num=s return pmin while(1): lcd.display(sensor.snapshot()) #SUB = "s1" NUM_SUBJECTS = 3 #图像库中不同人数,一共6人 NUM_SUBJECTS_IMGS = 10 #每人有20张样本图片 # 拍摄当前人脸。 img = sensor.snapshot() #img = image.Image("singtown/%s/1.pgm"%(SUB)) d0 = img.find_lbp((0, 0, img.width(), img.height())) #d0为当前人脸的lbp特征 img = None pmin = 999999 num=0 if uart.any(): num1=uart.readline() # print(num1) # num1=print(num1[0]) num1=int(num1) if(num1==8): print("key number") print(num1) num1=0 for s in range(1, NUM_SUBJECTS+1): dist = 0 for i in range(2, NUM_SUBJECTS_IMGS+1): img = image.Image("singtown/s%d/%d.pgm"%(s, i)) d1 = img.find_lbp((0, 0, img.width(), img.height())) #d1为第s文件夹中的第i张图片的lbp特征 dist += image.match_descriptor(d0, d1)#计算d0 d1即样本图像与被检测人脸的特征差异度。 print("Average dist for subject %d: %d"%(s, dist/NUM_SUBJECTS_IMGS)) pmin = min(pmin, dist/NUM_SUBJECTS_IMGS, s)#特征差异度越小,被检测人脸与此样本更相似更匹配。 print(pmin) print("people") print(num) # num为当前最匹配的人的编号。 uart.writechar(num) FH=bytearray([0x0d,0x0a]) uart.write(FH)