久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3918|回復: 1
打印 上一主題 下一主題
收起左側

基于openmv的單個色環閾值分割python代碼

[復制鏈接]
跳轉到指定樓層
樓主
基于openmv閾值分割的代碼

  1. import sensor, image, time, lcd, math,ujson, pyb ,json

  2. from pyb import UART
  3. from pyb import LED
  4. obj = [[12,0],[10,12],[22,10],[99,11]]   #json

  5. threshold_index = 0 # 0 for red, 1 for green, 2 for blue

  6. objthresholds = [(51, 76, 8, 77, 7, 23), # generic_red_thresholds
  7.            (37, 60, -32, 33, 0, 67), # generic_green_thresholds
  8.            (37, 60, -5, 33, -60, 67)] # generic_blue_thresholds

  9. graythreshold=[(100,255)]

  10. red_led = LED(1)
  11. green_led = LED(2)
  12. blue_led = LED(3)

  13. sensor.reset()
  14. sensor.set_pixformat(sensor.RGB565)
  15. sensor.set_framesize(sensor.QVGA)
  16. sensor.skip_frames(time = 2000)

  17. uart = UART(3, 115200)

  18. red_led.off()
  19. green_led.off()
  20. blue_led.off()

  21. def compareBlob(blob1, blob2):
  22.    tmp = blob1.pixels() - blob2.pixels()
  23.    if tmp == 0:
  24.        return 0;
  25.    elif tmp > 0:
  26.        return 1;
  27.    else:
  28.        return -1;

  29. A=6

  30. while(True):
  31.     img = sensor.snapshot()
  32.     #img.lens_corr(1.0)
  33.                                                                         #accepet
  34.     if(uart.any()):
  35.         r = uart.readline()

  36.         if r == b'R':
  37.             A=6
  38.         elif r == b'G' :
  39.             A=7
  40.         elif r == b'B':
  41.             A=8
  42.         else:
  43.             A=0

  44.     if(A==6):
  45.         img.binary([objthresholds[0]])
  46.         img.dilate(2)

  47.         blobs=img.find_blobs(graythreshold, pixels_threshold=2025, area_threshold=1600, merge=True)
  48.         if len(blobs) == 0:
  49.             continue
  50.             bigBlob = blobs[0]
  51.             for blob in blobs:
  52.                 if compareBlob(bigBlob, blob) == -1:
  53.                     bigBlob = blob
  54.                 img.draw_rectangle(bigBlob.rect())
  55.                 print(bigBlob.cx(), bigBlob.cy())
  56.                 #output_str=json.dumps([bigBlob.cx(),bigBlob.cy()])
  57.                 data_out = 'O'
  58.             red_led.on()
  59.             green_led.off()
  60.             blue_led.off()
  61.             uart.write(data_out)
  62.             print(data_out)

  63.     if(A==7):
  64.         img.binary([objthresholds[1]])
  65.         img.dilate(4)
  66.         blobs=img.find_blobs(graythreshold, pixels_threshold=2025, area_threshold=1600, merge=True)
  67.         if len(blobs) == 0:
  68.            continue
  69.         bigBlob = blobs[0]
  70.         for blob in blobs:
  71.             if compareBlob(bigBlob, blob) == -1:
  72.                 bigBlob = blob
  73.                 img.draw_rectangle(bigBlob.rect())
  74.                 print(bigBlob.cx(), bigBlob.cy())
  75.                 #output_str=json.dumps([bigBlob.cx(),bigBlob.cy()])
  76.                 data_out ='P'
  77.             red_led.off()
  78.             green_led.on()
  79.             blue_led.off()
  80.             uart.write(data_out)
  81.             print(data_out)

  82.     if(A==8):
  83.         img.binary([objthresholds[2]])
  84.         img.dilate(4)

  85.         blobs=img.find_blobs(graythreshold, pixels_threshold=900, area_threshold=900, merge=True)
  86.         if len(blobs) == 0:
  87.             continue
  88.             bigBlob = blobs[0]
  89.             for blob in blobs:
  90.                 if compareBlob(bigBlob, blob) == -1:
  91.                     bigBlob = blob
  92.                 img.draw_rectangle(bigBlob.rect())
  93.                 print(bigBlob.cx(), bigBlob.cy())

  94.                 data_out ='Q'
  95.             red_led.off()
  96.             green_led.off()
  97.             blue_led.on()
  98.             uart.write(data_out)
  99.             print(data_out)

  100.     if(A==0):
  101.         red_led.on()
  102.         time.sleep(50)
  103.         red_led.off()
復制代碼

下載: 單個色環識別uart.zip (1.05 KB, 下載次數: 23)
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:362900 發表于 2019-7-13 22:51 | 只看該作者
深度學習,謝謝樓主!!
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 色婷婷综合网 | 日日夜夜草| 中文在线一区二区 | 国产一区二区三区四区三区四 | 韩国av一区二区 | 中国大陆高清aⅴ毛片 | 成年精品| 一级毛片视频 | 亚洲精品在线免费观看视频 | 成人在线免费观看视频 | 刘亦菲国产毛片bd | 亚洲一区二区成人 | 国产欧美一区二区三区免费 | 亚洲乱码国产乱码精品精的特点 | 久久www免费人成看片高清 | 久久精品国产久精国产 | 福利视频网站 | 超碰伊人| 午夜男人的天堂 | av网站观看| 在线观看亚洲精品视频 | 国产成人精品一区二区三区四区 | 欧美a在线观看 | 中文字幕在线中文 | 亚洲成人免费观看 | 久久精品99国产精品 | 亚洲国产精品va在线看黑人 | 欧美专区在线视频 | 欧美日韩1区2区3区 欧美久久一区 | 老牛嫩草一区二区三区av | 91av视频| 国产91一区二区三区 | 久久久国产一区二区三区 | 6080yy精品一区二区三区 | 在线观看日本网站 | 羞羞色在线观看 | 日韩精品免费视频 | 日韩中文字幕免费 | 成人一区二区在线 | 久久小视频 | 日韩二区|