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



    • -- coding: utf-8 --

      import sensor, image, time, pyb, json

      from pyb import UART

      from pyb import Pin

      yellow_threshold = (60 ,83 , -9, 46, 31, 72)

      sensor.reset()

      sensor.set_pixformat(sensor.RGB565)

      sensor.set_framesize(sensor.QQVGA)

      sensor.skip_frames(time = 2000 )

      sensor.set_auto_whitebal(False)

      sensor.set_auto_whitebal(False)

      #关闭白平衡。白平衡是默认开启的,在颜色识别中,需要关闭白平衡。

      uart = UART(3, 9600, timeout_char=1000)
      uart = UART(3,9600)

      clock = time.clock()

      while(True):
      clock.tick()
      #FH = 0x55
      #str='%d'%(FH)
      uart.write('U')
      if uart.any():
      a=uart.readline().decode().strip()#首先是一个字节串,加入decode变为字符串,strip删掉回车和换行
      print(a)
      m = a[2:7]
      print(m)
      #n=int(m)
      # if n>=00000 and n<00130:
      # yellow_threshold = (39 ,72 , -11, 11, -46, -34)
      # print(1)
      #if n>=00130 and n<00200:
      # yellow_threshold = (19 ,68 , -9, 12, -40, -13)
      # print(2)
      #if n>=00450 and n<00650:
      # yellow_threshold = (60 ,23 , -9, 46, 31, 72)
      # print(3)
      #if n>=00650 and n<00850:
      # yellow_threshold = (0 ,0 , -11, 3, -33, -23)
      # print(4)
      #if n>=00850 and n<01050:
      # yellow_threshold = (60 ,23 , -9, 46, 31, 72)
      # print(5)
      #if n>=01050 and n<01250:
      # yellow_threshold = (60 ,23 , -9, 46, 31, 72)
      # print(6)
      #if n>=01250 and n<01450:
      # yellow_threshold = (60 ,23 , -9, 46, 31, 72)
      # print(7)
      #if n>=01450 and n<01650:
      # yellow_threshold = (60 ,23 , -9, 46, 31, 72)
      # print(8)
      #if n>=01650 and n<01850:
      # yellow_threshold = (60 ,23 , -9, 46, 31, 72)
      # print(9)
      #if n>=01850 and n<02000:
      # yellow_threshold = (60 ,23 , -9, 46, 31, 72)
      # print(10)

      img = sensor.snapshot().lens_corr(1.9)
      blob= img.find_blobs([yellow_threshold])#寻找黄色最大的色块
      if blob: #如果找到了目标颜色
          for b in blob:
              img.draw_rectangle(b[0:4]) # rect
              img.draw_cross(b[5], b[6]) # cx, cy这是我的代码


    • 感光模块是什么?

      我估计是协议有问题。