星瞳实验室APP,快速收到回复
  • 我们只解决官方正版的OpenMV的问题(STM32),其他的分支有很多兼容问题,我们无法解决。
  • 如果有产品硬件故障问题,比如无法开机,论坛很难解决。可以直接找售后维修
  • 发帖子之前,请确认看过所有的视频教程,https://singtown.com/learn/ 和所有的上手教程http://book.openmv.cc/
  • 每一个新的提问,单独发一个新帖子
  • 帖子需要目的,你要做什么?
  • 如果涉及代码,需要报错提示全部代码文本,请注意不要贴代码图片
  • 必看:玩转星瞳论坛了解一下图片上传,代码格式等问题。
  • 先颜色识别,再模板匹配,该怎样修改



    • 
      

      import sensor, image, time, math
      from pyb import UART
      import json
      green_threshold = [(30, 84, -58, -21, -12, 50),(30, 91, -58, -21, 0, 50),(30, 80, -62, -17, 12, 40),(30, 100, -78, -1, 20, 46)]
      sensor.reset()
      sensor.set_pixformat(sensor.RGB565)
      sensor.set_framesize(sensor.QQVGA)
      sensor.skip_frames(10)
      sensor.set_auto_whitebal(False)
      clock = time.clock()
      uart = UART(3,115200)
      uart.init(115200, bits=8, parity=None, stop=1)
      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()
      blobs = img.find_blobs((green_threshold),area_threshold=250)
      if blobs:
      max_blob=find_max(blobs)
      for b in blobs:
      img.draw_rectangle(b[0:4])
      img.draw_rectangle(max_blob.rect())
      img.draw_cross(max_blob.cx(), max_blob.cy())
      green_ball="[%d,%d]" % (max_blob.cx(),max_blob.cy())
      a = max_blob.cx()
      if a<75:
      date = 1
      elif 75<a<85:
      date = 2
      elif a>85:
      date = 3
      D = bytearray(str(date))
      uart.write(D+'\r\n')
      print(green_ball)
      print(date)