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



    • import sensor,time,image#引入感光元件的模块
      
      from pyb import UART
      
      from pyb import LED
      from pyb import Pin
      import pyb
      # 设置摄像头
      
      sensor.reset()#初始化感光元件
      
      sensor.set_pixformat(sensor.RGB565)#设置为彩色
      
      sensor.set_framesize(sensor.QVGA)#设置图像的大小
      
      sensor.skip_frames()#跳过n张照片,在更改设置后,跳过一些帧,等待感光元件变稳定。
      
      
      uart = UART(3, 115200)
      
      led = LED(2)
      img = sensor.snapshot()
      uart.write(img.compress())
      

      原代码是这样,已经可以成功通过串口发送图片压缩后的二进制数据,但是在单片机接受的时候不能一次性接受那么多数据,请问如何将图片分包发送?



    • 直接用列表的切片。

      img = sensor.snapshot()
      img.compress()
      package_len = 1024
      for i in range(0,img.size(),package_len):
          uart.write(img[i:i+package_len])
      

      不过数据发送给单片机没什么意义。