版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
浙江大學(xué)第九屆“中控杯”機器機器人超市取物技術(shù)報7008——購物隊長:鄒成業(yè)隊員:吳翌辛一、方案總述機器人功能設(shè)的涉及研制重點opencv二、機械結(jié)構(gòu)設(shè)計重要零件加工電機選型和選型論三、電路設(shè)計電路功能描述 主控選我們采用了ATmega16。32I/O四 810位16KBFlash512Byte1KB28位計時器/RISC–32832I/O四路輸810位16KBFlash512Byte1KB28位計時器/RISC–328擦寫:10,000–具有獨立鎖定位的可選通過片上Boot程序?qū)崿F(xiàn)系統(tǒng)內(nèi)編程–512字節(jié)的EEPROM擦寫:100,000次–1K字節(jié)的片內(nèi)JTAG接口(IEEE1149.1標準兼容//–四通道–8108TQFP72個具有可編程增益(1x,10x,200x)–兩個可編程的串行–可工作于主機/SPI–片內(nèi)經(jīng)過標定的RC–片內(nèi)/6種睡眠模式:空閑模式、ADC噪聲抑制模式、省電模式、掉電模式、Standby模式以I/O–32I/O–40引腳PDIP封裝44引腳TQFP封裝,44MLF–0-8MHz–0-16MHzATmega16L1MHz3V25°C–正常模式1.1–空閑模式0.35–掉電模式1 直流電機采用L298L298L298 4.8-46 2L298功 線L298L298L298TTL邏可以在不依賴于輸入信號的情況下,使能或禁用L298器件。L298低位晶體管的連接到一起,而其對應(yīng)的外部端口則可用來連接一個外部感應(yīng)電阻。L298還提供一個額外的電壓輸入,所以其邏輯電路可以工作在更低的電壓下。輸入4路輸出,有兩個使能端。外接元件可防止電路過流或超過額定功率燒壞。20ms,20ms,寬度1.5ms1.5ms的基準信號,有一個比較器將外的基準信號,有一個比較器將外的基準舵機的控制信號是周期為20ms20ms的信號,其中脈沖寬度從信號,其中脈沖寬度從0.5ms~2.5ms0.5ms~2.5ms0.5ms~2.5ms0.5ms~2.5ms對應(yīng)于-90~90°,呈線性變化,也就是說給他提供一定的脈寬輸出軸會保持在個相對應(yīng)。PCB四、機器人整體可行性機器人預(yù)計重量:25kg左右五、機器人創(chuàng)新點六、尚未解決的難點問題圖像匹配的成功率,對拍攝下的因為抖動失真的進行智能篩選。七、經(jīng)費預(yù)算直流步進電機驅(qū) 直線絲杠 &adid=&amid=&cmid=140105335569ed55e27b&pmid=金屬4 520速馬達arduinounoR3atmega328pavr超大扭矩12v24v30轉(zhuǎn)全金屬齒輪直流電42cnc48八、簡單算法思路說明SURFSurfFeatureDetector中,利用類內(nèi)的detect函數(shù)vectorMat中。最后強行匹配兩幅圖像的特征向量,利用了類BruteMatcher中的函數(shù)match。代碼如下:#include<stdio.h>#include<iostream>#include#include"opencv2/features2d/features2d.hpp"#include"opencv2/highgui/highgui.hpp"usingnamespacecv;void@function@briefMainintmain(intargc,char**argv{if(argc!=3{return-1;Matimg_1=imread(argv[1],CV_LOAD_IMAGE_GRAYSCALE);if(!img_1.data||!img_2.data{return-1;//--Step1:DetectthekeypointsusingSURFDetectorintminHessian=400;SurfFeatureDetectordetector(minHessian);std::vector<KeyPoint>keypoints_1,keypoints_2;detector.detect(img_1,keypoints_1);detector.detect(img_2,keypoints_2);//--Step2:Calculatedescriptors(featurevectors)SurfDescriptorExtractorextractor;Matdescriptors_1,pute(img_1,keypoints_1,descriptors_1);//--Step3:Matchingdescriptorvectorswithabrute Matcher<L2<float>>matcher;std::vector<DMatch>//--DrawmatchesMat//--Showdetectedmatchesimshow("Matches",img_matches);return}@functionvoid{std::cout<<"Usage:./SURF_descriptor<img1><img2>"<<std::endl;以上是進行強匹配的算法,然而,強匹配效果不夠理想,這里再介紹一種FLANNFlannBasedMatcher類進行特征匹配,//--Step3:MatchingdescriptorvectorsusingFLANNmatcherFlannBasedMatchermatcher;std::vector<DMatch>matcher.match(descriptors_1,descriptors_2,matches);doublemax_dist=0;doublemin_dist=100;//--Quickcalculationofmaxandmindistancesbetweenkeypointsfor(inti=0;i<descriptors_1.rows;i++){doubledist=matches[i].distance;if(dist<min_dist)min_dist=dist;if(dist>max_dist)max_dist=}printf("--Maxdist:%f\n",max_dist);printf("--Mindist:%f\n",min_dist//--Drawonly"good"matches(i.e.whosedistanceislessthan2*min_dist//--PS.-radiusMatchcanalsobeusedhere.std::vector<DMatch>good_matches;for(inti=0;i<descriptors_1.rows;i++{if(matches[i].distance<2*min_dist}//--Drawonly"good"matchesMatimg_matches;good_matches,img_matches,Scalar::all(-1),Scalar::all(-1),vector<char>(),DrawMatchesFlags::NOT_DRAW_SINGLE_POINTS);//--ShowdetectedFLANN特征匹配的基礎(chǔ)上,還可以進一步利用Homography映射找出已知物體。具體來說就是利用findHomography函數(shù)利用匹配的關(guān)鍵點找出相應(yīng)的變換,再利用Transform函數(shù)映射點群。具體代碼如下://--Localizetheobjectfromimg_1inimg_2std::vector<Point2f>obj;std::vector<Point2f>scene;for(inti=0;i<good_matches.size();i++{//--Getthekeypointsfromthegoodobj.push_back(keypoints_1[good_matches[i].queryIdx].pt);scene.push_back(keypoints_2[good_matches[i].trainIdx].pt);}MatH=findHomography(obj,scene,CV_RANSAC//--Getthecornersfromtheimage_1(theobjecttobe"detected"Point2fobj_corners[4]={cvPoint(0,0),cvPoint(img_1.cols,0),cvPoint(img_1.cols,img_1.rows),cvPoint(0,img_1.rows)};Point//--Mapthesecornersinthescene(image_2)for(inti=0;i<4;i++){doublex=obj_corners[i].x;doubley=obj_corners[i].y;doubleZ=1./(H.at<double>(2,0)*x+H.at<double>(2,1)*y+H.at<double>(2,2));doubleX=(H.at<double>(0,0)*x+H.at<double>(0,1)*y+H.at<double>(0,2))*Z;doubleY=(H.at<double>(1,0)*x+H.at<double>(1,1)*y+H.at<double>(1,2))*Z;scene_corners[i]=cvPoint(cvRound(X)+img_1.cols,cvRound(Y));}//--Drawlinesbetweenthecorners(themappedobjectinthescene-image_2)line(img_matches,scene_corners[0],scene_corners[1],Scalar(0,255,0),2);line(img_matches,scene_corners[1],scene_corners[2],Scalar(0,255,0),2line(img_matches,scene_corners[2],scene_corners[3],Scalar(0,255,0),2line(img_matches,scene_corners[3],scene_corners[0],Scalar(0,255,0),2//--Showdetectedimshow("GoodMatches&Objectdetection",img_matches最大特點就是它具有唯一可識別這一特點,通常指邊界、角點(點、斑點(區(qū)域。harris角點檢測是一種直接基于灰度圖像的角點提取算法,穩(wěn)定性高,尤其對L型行角點檢測,還可以利用Shi-Tomasi方法進行角點檢測。使用函數(shù)goodFeaturesToTrack對minMaxLoc函數(shù),最后的特征點選取,判斷條件要根據(jù)自己的情況編輯。如果對特征點,角點的精度要求更高,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單位管理制度呈現(xiàn)匯編職員管理篇
- 單位管理制度呈現(xiàn)大全人員管理篇
- 藝術(shù)節(jié)主持詞
- 70MW光伏發(fā)電項目工程(EPC)總承包投標文件 承包人實施計劃
- 《市場營銷學(xué)導(dǎo)言》課件
- 《天貓規(guī)則學(xué)習(xí)》課件
- 空調(diào)維修公司保安工作總結(jié)
- 財務(wù)工作品質(zhì)提升總結(jié)
- 兒童新媒體編輯工作總結(jié)
- 2003年廣東高考語文真題及答案
- 與公公婆婆斷絕關(guān)系協(xié)議書
- 某金礦技改工程建設(shè)項目可行性研究報告
- 消化鏡之電子結(jié)腸鏡課件
- 2023-2024學(xué)年安徽省蕪湖市小學(xué)語文五年級期末自測考試題附參考答案和詳細解析
- 旋挖樁基泥漿護壁施工方案全套
- 電動力學(xué)試卷及答案
- 中學(xué)美育工作制度
- 資金管理審計
- 安徽華塑股份有限公司華塑股份產(chǎn)品結(jié)構(gòu)調(diào)整改造一體化項目年產(chǎn)12萬噸生物可降解新材料環(huán)境影響報告書
- 2023年貴州貴陽市貴安新區(qū)產(chǎn)業(yè)發(fā)展控股集團有限公司招聘筆試題庫含答案解析
- 相干測風(fēng)激光雷達系統(tǒng)設(shè)計及數(shù)據(jù)處理算法研究共3篇
評論
0/150
提交評論