• 免费好用的星瞳AI云服务上线!简单标注,云端训练,支持OpenMV H7和OpenMV H7 Plus。可以替代edge impulse。 https://forum.singtown.com/topic/9519
  • 我们只解决官方正版的OpenMV的问题(STM32),其他的分支有很多兼容问题,我们无法解决。
  • 如果有产品硬件故障问题,比如无法开机,论坛很难解决。可以直接找售后维修
  • 发帖子之前,请确认看过所有的视频教程,https://singtown.com/learn/ 和所有的上手教程http://book.openmv.cc/
  • 每一个新的提问,单独发一个新帖子
  • 帖子需要目的,你要做什么?
  • 如果涉及代码,需要报错提示全部代码文本,请注意不要贴代码图片
  • 必看:玩转星瞳论坛了解一下图片上传,代码格式等问题。
  • 如何跳出多重循环



    • 目的是为了从下往上,从左往右找寻第一个黑点,代码如下:

      def find():
          for i in range(240,180,-1):
              for j in range(0,320,1):
                 if img.get_pixel(j,i)==0:
                      #print(img.get_pixel(i,j))
                      piexel_y_L=j
                      piexel_x_L=i
                      print('%d,%d'%(i,j))
                      break
              else:
                      piexel_x_L=0
                      print('%d,%d'%(j,0))
              
      
      import pyb, sensor, image,time
      sensor.reset()
      sensor.set_framesize(sensor.QVGA)
      uart = pyb.UART(3, 19200)
      grayscale_thres = (150, 255)
      
      
      while(True):
      
          sensor.set_pixformat(sensor.GRAYSCALE)
          #sensor.set_windowing((0, 180,320,60))
          #for i in range(20):
          img = sensor.snapshot()
          img.binary([grayscale_thres])
          img.erode(2)
          find()
      

      0_1531016371728_QQ图片20180708101905.png
      假设看到的画面如图
      因为没法跳出第一个大循环 for i in range(240,180,-1):
      所以会把每一行找到的第一个黑点都输出,所以想问问解决的办法



    • 直接return



    • return加在哪?试过不行啊



    • 建议你先学习下python的语法

      if 找到白色:
      return 坐标