导航

    • 登录
    • 搜索
    • 版块
    • 产品
    • 教程
    • 论坛
    • 淘宝
    1. 主页
    2. grnm
    3. 帖子
    • 举报资料
    • 资料
    • 关注
    • 粉丝
    • 屏蔽
    • 帖子
    • 楼层
    • 最佳
    • 群组

    grnm 创建的帖子

    • 在使用snapshot(copy_to_fb=False)时,IDE缓冲区还是能看到图像,这是为啥?
      OpenMV Cam • • grnm

      2
      0
      赞同
      2
      楼层
      1693
      浏览

      copy_to_fb不会起作用,因为这个函数不能传递参数。 https://docs.singtown.com/micropython/zh/latest/openmvcam/library/omv.sensor.html#sensor.sensor.snapshot
    • 怎么通过串口发送一张图片?
      OpenMV Cam • • grnm

      2
      0
      赞同
      2
      楼层
      1844
      浏览

      可以直接uart.write(img) 但是串口发图片没意义。
    • 如何判断一张图片里有几个条形码?
      OpenMV Cam • • grnm

      5
      0
      赞同
      5
      楼层
      2737
      浏览

      但是实际情况下,两个码在一起很难在一个图像上放下。
    • if uart.any():是在中断里执行么?
      OpenMV Cam • • grnm

      3
      0
      赞同
      3
      楼层
      2306
      浏览

      import sensor, image, time, math from pyb import Pin,Timer,UART uart = UART(3, 115200) uart.init(115200, bits=8, parity=None, stop=1,read_buf_len=10) LED1 = Pin('P9', Pin.OUT_PP, Pin.PULL_NONE) LED1.value(True) sensor.reset() sensor.set_pixformat(sensor.GRAYSCALE) #灰度图 sensor.set_framesize(sensor.VGA) # 640*480 sensor.set_windowing((640, 300)) # V Res of 80 == less work (40 for 2X the speed). sensor.skip_frames(time = 1000)#延时1s等待设置生效 sensor.set_auto_gain(False) #关闭自动快门防止图像冲洗 clock = time.clock() LED1.value(False) #启用定时器2,频率0.2,发送心跳反馈5s一次 def tick(timer): LED1.value(True) #uart.write("STRHBEND")#发送心跳反馈 #print("心跳STRHBEND") time.sleep(1) LED1.value(False) tim = Timer(2, freq=0.2) # create a timer object using timer 2 - trigger at 1Hz tim.callback(tick) # set the callback to our tick function #条码类型定义 def barcode_name(code): if(code.type() == image.EAN2): return "EAN2" if(code.type() == image.EAN5): return "EAN5" if(code.type() == image.EAN8): return "EAN8" if(code.type() == image.UPCE): return "UPCE" if(code.type() == image.ISBN10): return "ISBN10" if(code.type() == image.UPCA): return "UPCA" if(code.type() == image.EAN13): return "EAN13" if(code.type() == image.ISBN13): return "ISBN13" if(code.type() == image.I25): return "I25" if(code.type() == image.DATABAR): return "DATABAR" if(code.type() == image.DATABAR_EXP): return "DATABAR_EXP" if(code.type() == image.CODABAR): return "CODABAR" if(code.type() == image.CODE39): return "CODE39" if(code.type() == image.PDF417): return "PDF417" if(code.type() == image.CODE93): return "CODE93" if(code.type() == image.CODE128): return "CODE128" #num=0#扫码计数 flag=0#串口接收标志位 uart_data=0#串口数据 cmd1=b'0'#命令字节1 cmd2=b'0'#命令字节2 while(True): clock.tick() code_data="code_data"#条码相关信息 #读串口命令 if uart.any(): uart_data = uart.read(1).decode()#一个字节一个字节分析,避免命令数据间断问题 if (flag==0)&(uart_data=="S"): flag=1 elif (flag==1)&(uart_data=="T"): flag=2 elif (flag==2)&(uart_data=="R"): flag=3 elif(flag==3): #接收命令段2字符 cmd1=uart_data flag=4 elif(flag==4): cmd2=uart_data flag=5 elif(flag==5): #接收序号2字符 num1=uart_data flag=6 elif(flag==6): num2=uart_data flag=7 elif(flag==7)&(uart_data=="E"): flag=8 elif(flag==8)&(uart_data=="N"): flag=9 elif(flag==9)&(uart_data=="D"): flag=10 else:flag=0 #收到STR_ _END 开始读码 if (flag==10)&(cmd1=="R")&(cmd2=="C") :#READ CODE命令 flag=0 #接收标志清零 img = sensor.snapshot() codes = img.find_barcodes() i = 0#条码个数统计 for code in codes: img.draw_rectangle(code.rect(),color=50,thickness=5) print_args = (barcode_name(code), code.payload(), code.quality(), clock.fps(),num1,num2) print("条码类型 %s, 码值 \"%s\", 数量 %d, 帧率 %f, 计数 %s%s" % print_args) #print(", 计数%d"%num)#不换行 , end = '' #计数值和条码位宽值位2位数,切条码位宽<21,直接发 if ( len(str(code.payload()))>9 ) & ( len(str(code.payload()))<21 ): #发送STRCV 计数值 条码位宽 条码值 END code_data=("STRCV%s%s%s%sEND"%(num1,num2,len(str(code.payload())), str(code.payload()))) elif len(str(code.payload())) < 10:#计数补一个字符0,凑足2位 #发送STRCV 计数值 "0"条码位宽 条码值 END code_data=("STRCV%s%s0%s%sEND"%(num1,num2,len(str(code.payload())), str(code.payload()))) i = i+1#条码个数统计 #LED1.value(False) #time.sleep(2) #判断有几个码 if i==1:#只有一个码,直接上传,指示灯闪亮一次 LED1.value(True) uart.write(code_data) LED1.value(False) else:#没有码或者多个码,报错,发NR uart.write("STRNR%s%sEND"%(num1,num2)) print("没有码, 帧率:%f,计数%s%s" % (clock.fps(),num1,num2 ) ) #flag=0 #心跳信号 elif(flag==10)&(cmd1=="H")&(cmd2=="B"): uart.write("STRHB%s%sEND"%(num1,num2) ) flag=0#清除命令接收标志
    • IDE的帧缓冲区图像滞后是怎么回事?
      OpenMV Cam • • grnm

      2
      0
      赞同
      2
      楼层
      1834
      浏览

      OpenMV是每次调用snapshot函数的时候,把上次的framebuffer发送到IDE。
    • pyb.uart和machine.uart有啥区别?
      OpenMV Cam • • grnm

      2
      0
      赞同
      2
      楼层
      1609
      浏览

      没什么区别。都可以用。
    • 串口接受的字节串,怎么取其中的一个字节?
      OpenMV Cam • • grnm

      2
      0
      赞同
      2
      楼层
      1577
      浏览

      a = uart.read(5) a[0] a[1] a[2]
    • openmv4plus识别圆的定位精度是多少?
      OpenMV Cam • • grnm

      1
      0
      赞同
      1
      楼层
      1409
      浏览

      尚无回复

    • 某个roi区域内的二维码识别不出来?
      OpenMV Cam • • grnm

      3
      0
      赞同
      3
      楼层
      1861
      浏览

      需要全部代码,否则我没办法测试。
    • 程序运行一半出现以下问题:
      OpenMV Cam • • grnm

      4
      0
      赞同
      4
      楼层
      2497
      浏览

      对,
    • 怎么把拍下来的图片截取其中的一部分保存下来?
      OpenMV Cam • • grnm

      2
      0
      赞同
      2
      楼层
      1657
      浏览

      https://docs.singtown.com/micropython/zh/latest/openmvcam/library/omv.image.html#image.save save里面有ROI参数。
    • 浮点数怎么转换成整数?
      OpenMV Cam • • grnm

      2
      0
      赞同
      2
      楼层
      1484
      浏览

      >>> a = 1.234 >>> b = int(a) >>> b 1
    • 在图像边缘区域识别DM二维码的问题
      OpenMV Cam • • grnm

      2
      0
      赞同
      2
      楼层
      1704
      浏览

      你试试这个:img.find_datamatrices(roi = (55,46,63,65), effort = 200) roi这个必须显示的写出来。
    • 找DM二维码只能识别图像中间区域的二维码,当把二维码移到图像边缘就识别不到了怎么回事?
      OpenMV Cam • • grnm

      6
      0
      赞同
      6
      楼层
      3503
      浏览

      @kidswong999 我已经把effort设置成5000了,还是不行呀,1000也试过都不行,而且还把搜索区域roi调的很小了,还是不行啊
    • 你好:问下我下载的源码文件里哪个是识别datamatrix二维码的程序,只找到识别qr二维码的
      OpenMV Cam • • grnm

      2
      0
      赞同
      2
      楼层
      2014
      浏览

      https://github.com/openmv/openmv/blob/6061b6d2bae9f7149ed34214209cbd03393bcacc/src/omv/img/dmtx.c#L6310
    • 找圆例程识别的不准怎么搞?
      OpenMV Cam • • grnm

      2
      0
      赞同
      2
      楼层
      1839
      浏览

      原因:背景和物体的边缘不明显。 解决办法: 1,打光,调整光线 2,调整背景颜色 https://docs.singtown.com/micropython/zh/latest/openmvcam/library/omv.image.html#image.find_circles 调整threshold参数默认的2000就很好,也可以增加一些。
    • MT9V034不支持R0GB565格式吗?
      OpenMV Cam • • grnm

      2
      0
      赞同
      2
      楼层
      1851
      浏览

      MT9V034是灰度的,不支持RGB565彩色。 只支持GRAYSCALE
    • 单片机的硬件资源可以自行分配么
      OpenMV Cam • • grnm

      2
      0
      赞同
      2
      楼层
      1830
      浏览

      https://singtown.com/product/50302/openmv-cam-h7/ 里面有引脚定义。改不了什么。
    • STM32坏了,自己焊一个上去行么
      OpenMV Cam • • grnm

      2
      0
      赞同
      2
      楼层
      1877
      浏览

      直接联系卖家维修。
    • 代码能移植到其他的硬件平台么
      OpenMV Cam • • grnm

      2
      0
      赞同
      2
      楼层
      1906
      浏览

      https://github.com/openmv/openmv 代码是完全开源的,你想怎么移植都可以,只是没有移植的教程。