国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

2022電賽泊車(chē)openmv代碼

這篇具有很好參考價(jià)值的文章主要介紹了2022電賽泊車(chē)openmv代碼。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

2022電賽泊車(chē)openmv代碼

  • 僅作為比賽參考,具體數(shù)值請(qǐng)自己調(diào)整
  • 注釋寫(xiě)的很清楚了
import sensor, image, time, math,pyb
from pyb import Pin, Timer,UART

# 串口通信
uart = pyb.UART(1,115200,timeout_char = 1000)#串口初始化

# 跟蹤黑色線條(閾值依據(jù)實(shí)驗(yàn)條件進(jìn)行更改)
thresholds = (0, 40)

# 五塊感性區(qū)域
ROIS = [                            #[ROI, weight]越近,權(quán)重越大,在這里權(quán)值暫時(shí)不考慮
              (30, 90,   100, 30, 0), #下面1
              (40, 40,   80, 40, 0), #中間2
              (30, 0,    100, 30, 0), #上面3  160 *120
              (0, 20,    30, 100, 0), #左邊4
              (130,20 ,   30, 100, 0)  #右邊5
      ]
weight_sum = 0
for r in ROIS: weight_sum += r[4] # r[4] is the roi weight.

#---------------------------------------攝像頭初始化-----------------------------------------#
sensor.reset()
sensor.set_pixformat(sensor.GRAYSCALE)  # 灰度圖做巡線
sensor.set_framesize(sensor.QQVGA) # 像素160*120
sensor.skip_frames(time=2000)
sensor.set_auto_gain(False)                         # 顏色追蹤關(guān)閉自動(dòng)增益
sensor.set_auto_whitebal(False)                     # 顏色追蹤關(guān)閉白平衡

#---------------------------------------標(biāo)志位和變量-----------------------------------------#
flag = 0
i = 0  #記錄第幾行數(shù)據(jù)
led=pyb.LED(3)#必要的時(shí)候進(jìn)行紅外補(bǔ)光

center_flag1 = 0 #區(qū)域標(biāo)志
center_flag2 = 0
center_flag3 = 0
center_flag4 = 0
center_flag5 = 0
mid_num = 0

# 串口輸出變量
out_str1 = ''
count_RT = 0
RT_tag = 0
T_tag = 0


clock = time.clock()
#定義一個(gè)定時(shí)發(fā)送數(shù)據(jù)的函數(shù)
def tick(timer):#we will receive the timer object when being called
       global flag
       flag=1

tim = Timer(4,freq=100)            # create a timer object using timer 4 - trigger at 1Hz
tim.callback(tick)                # set the callback to our tick function
#--------------------------------------while循環(huán)開(kāi)始-----------------------------------------#
while(True):
    pyb.LED(1).on()
    if(flag==1):
        img=sensor.snapshot()
        img.lens_corr(1.5) # for 2.8mm lens...攝像頭畸變糾正
        #--------------------------------------色塊的位置(此段代碼別動(dòng))--------------------------------------#
        #檢測(cè)黑色色塊位置
        for r in ROIS:
           i=i+1;
           blobs=img.find_blobs([thresholds], roi=r[0:4], merge=True,pixels_area=10) # r[0:4] is roi tuple.
           if blobs:#如果找到了顏色塊
               # Find the blob with the most pixels.
               largest_blob = max(blobs, key=lambda b: b.pixels())
               if(i==1):#下面矩形
                   if(largest_blob[2]>=5):#排除瑕疵點(diǎn)
                       if(largest_blob[3]>=5):
                           center_flag1=1;#下面的矩形找到的標(biāo)志
                           img.draw_rectangle(largest_blob.rect())
                           img.draw_cross(largest_blob.cx(),largest_blob.cy(),2)
               elif(i==2):#中間矩形
                   if(largest_blob[2]>=5):
                       if(largest_blob[3]>=5):
                           center_flag2=1;
                           img.draw_rectangle(largest_blob.rect())
                           img.draw_cross(largest_blob.cx(),largest_blob.cy(),2)
               elif(i==3):#上面的矩形
                   if(largest_blob[2]>=5):
                       if(largest_blob[3]>=5):
                           center_flag3=1;
                           img.draw_rectangle(largest_blob.rect())
                           img.draw_cross(largest_blob.cx(),largest_blob.cy(),2)
               elif(i==4):#左邊的矩形找到了
                   if(largest_blob[2]>=5):
                       if(largest_blob[3]>=5):
                           center_flag4=1;
                           img.draw_rectangle(largest_blob.rect())
                           img.draw_cross(largest_blob.cx(),largest_blob.cy(),2)
               elif(i==5):#右邊的矩形找到了
                   if(largest_blob[2]>=5):
                       if(largest_blob[3]>=5):
                           center_flag5=1;
                           img.draw_rectangle(largest_blob.rect())
                           img.draw_cross(largest_blob.cx(),largest_blob.cy(),2)

        #--------------------------------------“|-”型T型路口--------------------------------------#
        if(center_flag1>0 and center_flag3>0 and center_flag5>0):
            RT_tag = 1
            pass
        #--------------------------------------“T”型T型路口--------------------------------------#
        if(center_flag1>0 and center_flag4>0 and center_flag5>0):
            T_tag = 1
            pass
        #--------------------------------------走到空白路段“|-”型路口計(jì)數(shù)清除--------------------------------------#
        if (center_flag1 == 0 and center_flag2 == 0 and center_flag3 == 0 and center_flag4 == 0 and center_flag5 == 0):
            count_RT = 0
            pass
        #--------------------------------------“|-”型路口計(jì)數(shù)--------------------------------------#
        if(RT_tag > 0):
            mid_num += 1
            # 識(shí)別路口,mid_num變量即控制計(jì)數(shù)時(shí)間,不能過(guò)大也不能過(guò)小,依據(jù)小車(chē)速度和環(huán)境決定
            if(mid_num > 20):
                count_RT += 1
                mid_num = 0
        if(mid_num < 0 ):
            mid_num = 0

        # 串口發(fā)送的字符串: 按照位的順序
        out_str1 += '%.d' % int(RT_tag);  # 1.檢測(cè)到“|-”型T型路口
        out_str1 += '%.d' % int(T_tag);  # 2.檢測(cè)到“T”型T型路口
        out_str1 += '%.d' % int(count_RT);  # 3.“|-”型T型路口計(jì)數(shù)
        # 以s開(kāi)頭#結(jié)尾的串口字符串發(fā)送,可以去掉s和#
        uart.write('s'+out_str1+'#')
        print(out_str1)
        # 清零標(biāo)志
        center_flag1 = 0    # 區(qū)域標(biāo)志
        center_flag2 = 0
        center_flag3 = 0
        center_flag4 = 0
        center_flag5 = 0
        i = 0
        flag = 0
        RT_tag = 0
        T_tag = 0

        # 串口數(shù)組清零
        out_str1 = ''    # 清除之前的數(shù)據(jù)
        #-----------------------------------串口打印數(shù)據(jù)-----------------------------------------#


文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-589981.html

到了這里,關(guān)于2022電賽泊車(chē)openmv代碼的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 2023年電賽---運(yùn)動(dòng)目標(biāo)控制與自動(dòng)追蹤系統(tǒng)(E題)OpenART mini的代碼移植到OpenMV

    如果有嵌入式企業(yè)需要招聘校園大使,湖南區(qū)域的日常實(shí)習(xí),任何區(qū)域的暑假Linux驅(qū)動(dòng)實(shí)習(xí)崗位,可C站直接私聊,或者郵件:zhangyixu02@gmail.com,此消息至2025年1月1日前均有效 (1)已經(jīng)有不少同學(xué)根據(jù)我上一篇博客完成了前三問(wèn),恭喜恭喜。有很多同學(xué)卡在了第四問(wèn)。 (2)我

    2024年02月14日
    瀏覽(21)
  • 2022電賽小車(chē)開(kāi)源代碼講解開(kāi)源

    2022電賽小車(chē)開(kāi)源代碼講解開(kāi)源

    2022電賽小車(chē)我認(rèn)為有主要是幾個(gè)主要的問(wèn)題,我將分這幾個(gè)部分來(lái)講解 目錄 一、循跡 二、藍(lán)牙通信,雙車(chē)數(shù)據(jù)傳輸 三、起始路口的識(shí)別 四、分叉路口的識(shí)別 五、源碼 ?2022電賽,雙車(chē)穩(wěn)定行駛_嗶哩嗶哩_bilibili 循跡我們組用的是五路灰度,灰度跟紅外對(duì)管的作用是差不多的

    2024年02月09日
    瀏覽(18)
  • 【手拉手 帶你準(zhǔn)備電賽】單色塊識(shí)別(基于openmv)

    【手拉手 帶你準(zhǔn)備電賽】單色塊識(shí)別(基于openmv)

    目錄 文章背景 openmv介紹 openmv色塊識(shí)別原理 openmv色塊識(shí)別代碼 最終結(jié)果 疑惑細(xì)解: 關(guān)于閾值的設(shè)置: 關(guān)于自動(dòng)增益和白平衡 ????????我們都聽(tīng)說(shuō)過(guò)什么圖像識(shí)別、色塊識(shí)別,并且在2021年電賽——智能送藥小車(chē)中也使用到了相關(guān)技術(shù),那么你知道相關(guān)的原理和實(shí)現(xiàn)方法

    2024年02月11日
    瀏覽(14)
  • 2023年電賽---運(yùn)動(dòng)目標(biāo)控制與自動(dòng)追蹤系統(tǒng)(E題)OpenMV方案

    2023年電賽---運(yùn)動(dòng)目標(biāo)控制與自動(dòng)追蹤系統(tǒng)(E題)OpenMV方案

    如果有嵌入式企業(yè)需要招聘校園大使,湖南區(qū)域的日常實(shí)習(xí),任何區(qū)域的暑假Linux驅(qū)動(dòng)實(shí)習(xí)崗位,可C站直接私聊,或者郵件:zhangyixu02@gmail.com,此消息至2025年1月1日前均有效 (1)廢話少說(shuō),很多人可能無(wú)法訪問(wèn)GitHub,所以我直接貼出可能要用的代碼。 此博客還會(huì)進(jìn)行更新,

    2024年02月14日
    瀏覽(18)
  • 2021電賽F題送藥小車(chē)視覺(jué)部分的一種思路(雙OpenMV法)

    2021電賽F題送藥小車(chē)視覺(jué)部分的一種思路(雙OpenMV法)

    前言: 最近參加了2021年電賽的F題,因?yàn)橹T多原因未能完賽,現(xiàn)將圖像識(shí)別部分的記錄一下,交流學(xué)習(xí)。 因?yàn)橹唤榻B視覺(jué)部分,我們就節(jié)選相關(guān)的部分吧。 設(shè)計(jì)并制作智能送藥小車(chē),模擬完成在醫(yī)院藥房與病房間藥品的送取作業(yè)。院區(qū)結(jié)構(gòu)示意如圖 1 所示。院區(qū)走廊兩側(cè)的

    2024年02月15日
    瀏覽(16)
  • 【日常收支賬本】【Day05】編輯賬本界面增加刪除、更新記錄功能——提高代碼復(fù)用性

    【日常收支賬本】【Day05】編輯賬本界面增加刪除、更新記錄功能——提高代碼復(fù)用性

    https://github.com/LinFeng-BingYi/DailyAccountBook 點(diǎn)擊刪除按鈕后,獲取對(duì)應(yīng)行的數(shù)據(jù)組成字典,用字典的鍵值對(duì)匹配到對(duì)應(yīng)日期的記錄元素; 接著用該字典數(shù)據(jù)沖正存款賬戶余額(實(shí)現(xiàn)思路為新增記錄時(shí)的反向操作),同時(shí)刪除記錄元素; 最后再更新表格。 其中處理xml文件的方法代

    2024年02月08日
    瀏覽(19)
  • 2022電賽小車(chē)跟隨行駛系統(tǒng)(C題)復(fù)盤(pán)

    2022電賽小車(chē)跟隨行駛系統(tǒng)(C題)復(fù)盤(pán)

    此次的電賽感覺(jué)結(jié)束的挺突然的,在找到方向準(zhǔn)備細(xì)化地進(jìn)行調(diào)試的時(shí)候卻是沒(méi)有足夠時(shí)間來(lái)完成代碼上的完善。想著此次遺憾,寫(xiě)一篇博客來(lái)記錄一下自己的經(jīng)歷吧,總結(jié)總結(jié)此次的電賽時(shí)光。 ? 電賽題目 ?首先便是題目的選擇,由于我們之前校電賽時(shí)簡(jiǎn)單接觸過(guò)小車(chē)的題

    2024年02月16日
    瀏覽(23)
  • MSP430F5529循跡小車(chē) 2022電賽 C題

    MSP430F5529循跡小車(chē) 2022電賽 C題

    編輯時(shí)間2022/8/21 選用材料:主控MSP430F5529、直流減速電機(jī)(帶光電編碼器)、TB6612電機(jī)驅(qū)動(dòng)、超聲波測(cè)距、灰度傳感器、無(wú)線透?jìng)?、OLED屏顯示。 使用灰度傳感器巡線,超聲波檢測(cè)前后車(chē)距作為位置環(huán)反饋,通過(guò)位置環(huán)調(diào)節(jié)前后車(chē)距離。 :MSP430?? 循跡?? ?無(wú)線串口透

    2024年02月16日
    瀏覽(22)
  • python日常記賬本源代碼,基于PySide6,支持快速查詢(xún)、繪制圖表

    python日常記賬本源代碼,基于PySide6,支持快速查詢(xún)、繪制圖表

    python日常記賬本源代碼,基于PySide6(Qt for Python 6)的賬本,界面簡(jiǎn)潔、功能強(qiáng)大,支持保存文件、快速查詢(xún)、繪制圖表等,是平時(shí)記賬的不錯(cuò)選擇。賬目查詢(xún)、賬本編輯、添加/刪除、撤銷(xiāo)/重做、統(tǒng)計(jì)數(shù)據(jù)、生成圖表。 運(yùn)行截圖: 完整程序下載地址:python日常記賬本源代碼

    2024年02月11日
    瀏覽(43)
  • 基于智能優(yōu)化算法實(shí)現(xiàn)自動(dòng)泊車(chē)的路徑動(dòng)態(tài)規(guī)劃(Matlab代碼實(shí)現(xiàn))

    基于智能優(yōu)化算法實(shí)現(xiàn)自動(dòng)泊車(chē)的路徑動(dòng)態(tài)規(guī)劃(Matlab代碼實(shí)現(xiàn))

    目錄 ??1 概述 ??2 運(yùn)行結(jié)果 ??3 參考文獻(xiàn) ?????4 Matlab代碼 作為一種方便、快捷的交通工具,汽車(chē)已成為人們生活和工作的重要組成部分。隨著汽車(chē)數(shù)量的逐年增加,有限的城市空間顯得日趨擁擠,車(chē)輛平均分配到的停放空間也日趨縮小,車(chē)輛泊車(chē)入位困難問(wèn)題在人們生

    2024年02月07日
    瀏覽(30)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包