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



    • 
      import sensor, image, time, os, tf,pyb
      from pyb import UART
      
      sensor.reset()                         # Reset and initialize the sensor.
      sensor.set_pixformat(sensor.RGB565)    # Set pixel format to RGB565 (or GRAYSCALE)
      sensor.set_framesize(sensor.QVGA)      # Set frame size to QVGA (320x240)
      sensor.set_windowing((240, 240))       # Set 240x240 window.
      sensor.skip_frames(time=2000)          # Let the camera adjust.
      
      
      pinADir0 = pyb.Pin('P3', pyb.Pin.OUT_PP, pyb.Pin.PULL_NONE)
      pinADir1 = pyb.Pin('P2', pyb.Pin.OUT_PP, pyb.Pin.PULL_NONE)
      pinBDir0 = pyb.Pin('P1', pyb.Pin.OUT_PP, pyb.Pin.PULL_NONE)
      pinBDir1 = pyb.Pin('P0', pyb.Pin.OUT_PP, pyb.Pin.PULL_NONE)
      
      net = "trained.tflite"
      labels = [line.rstrip('\n') for line in open("labels.txt")]
      clock = time.clock()
      
      pinADir0.value(0)
      pinADir1.value(1)
      
      pinBDir0.value(0)
      pinBDir1.value(1)
      
      tim = pyb.Timer(4, freq=1000)
      
      chA = tim.channel(1, pyb.Timer.PWM, pin=pyb.Pin("P7"))
      chB = tim.channel(2, pyb.Timer.PWM, pin=pyb.Pin("P8"))
      
      tim = pyb.Timer(4, freq=1000)
      
      chA = tim.channel(1, pyb.Timer.PWM, pin=pyb.Pin("P7"))
      chB = tim.channel(2, pyb.Timer.PWM, pin=pyb.Pin("P8"))
      
      uart1=UART(3,115200)
      
      while(True):
          clock.tick()
          img = sensor.snapshot()
      
          # default settings just do one detection... change them to search the image...
          for obj in tf.classify(net, img, min_scale=1.0, scale_mul=0.8, x_overlap=0.5, y_overlap=0.5):
              print("**********\nPredictions at [x=%d,y=%d,w=%d,h=%d]" % obj.rect())
              img.draw_rectangle(obj.rect())
              # This combines the labels and confidence values into a list of tuples
              list1=list(labels)
              list2=list(obj.output())
              position=list2.index(max(list2))
              print(list1[position])
      
              if list1[position]=dianchi
              pyb.delay(100)
              chA.pulse_width_percent(20)
              pyb.delay(100)
              chA.pulse_width_percent(0)
              chB.pulse_width_percent(20)
              pyb.delay(100)
              chB.pulse_width_percent(0)
      
      
              
              
              uart.write(position)
              time.sleep_ms(1000)
      请在这里粘贴代码
      


    • 以及怎么控制电机转动一定的角度?