麻烦问一下,运行老是出现图片上的提示,这是什么问题
-
import sensor, image, time, lcd import json from pyb import UART green_threshold = (41, 66, -61, -27, 8, 43) red_threshold = (41, 61, 42, 127, -128, 127) yellow_threshold = ( 60 ,10,-15,20,30,80) sensor.set_hmirror(True) sensor.set_vflip(True) sensor.reset() sensor.set_pixformat(sensor.RGB565) sensor.set_framesize(sensor.QQVGA2) sensor.skip_frames(10) sensor.set_auto_whitebal(False) clock = time.clock() lcd.init() # Initialize the lcd screen. uart = UART(3, 9600) def find_max(blobs): max_size=0 for blob in blobs: if blob.pixels() > max_size: max_blob=blob max_size = blob.pixels() return max_blob while(True): clock.tick() img = sensor.snapshot() blobs0 = img.find_blobs([green_threshold]) blobs1 = img.find_blobs([red_threshold]) blobs2 = img.find_blobs([yellow_threshold]) if blobs0: max_blob=find_max(blobs0) img.draw_rectangle(max_blob.rect()) img.draw_cross(max_blob.cx(), max_blob.cy()) img.draw_string(100,100, 'x=' + str(blobs0.cx()), color=(0,0,0)) img.draw_string(100,120, 'y=' + str(blobs0.cy()), color=(0,0,0)) data="0" data_out = json.dumps(set(data)) uart.write(data_out +'\n') print('you send:',data_out) elif blobs1: max_blob=find_max(blobs1) img.draw_rectangle(max_blob.rect()) img.draw_cross(max_blob.cx(), max_blob.cy()) data="1" data_out = json.dumps(set(data)) uart.write(data_out +'\n') print('you send:',data_out) elif blobs2: max_blob=find_max(blobs2) img.draw_rectangle(max_blob.rect()) img.draw_cross(max_blob.cx(), max_blob.cy()) data="2" data_out = json.dumps(set(data)) uart.write(data_out +'\n') print('you send:',data_out) else: print('not found','4') lcd.display(img) # Take a picture and display the image.
-
40行:
blobs0.cx()
改为max_blob.cx()
41行:blobs0.cy()
改为max_blob.cy()