2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩19頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、<p><b>  目錄</b></p><p><b>  第一章 緒論3</b></p><p>  第二章 研究內(nèi)容和意義4</p><p>  第三章 預(yù)期達(dá)到的技術(shù)目標(biāo)和擬解決的技術(shù)問題5</p><p>  第四章 研究、試驗方法和技術(shù)路線7</p>&

2、lt;p>  第五章 實現(xiàn)過程7</p><p><b>  5.1硬件7</b></p><p><b>  5.2軟件9</b></p><p>  5.3作品成型21</p><p>  第六章 課題總結(jié)22</p><p><b>  第一章

3、 緒論</b></p><p>  視頻采集技術(shù)目前最大的應(yīng)用領(lǐng)域還是安防監(jiān)控,隨著國內(nèi)經(jīng)濟(jì)的發(fā)展和與國際經(jīng)濟(jì)的接軌,工業(yè)檢測和醫(yī)療領(lǐng)域?qū)Χ嗦凡杉男枨笠苍诓粩嗟脑黾印T诮煌?、機(jī)器視覺、多媒體等領(lǐng)域也有重要的應(yīng)用。在交通領(lǐng)域的應(yīng)用主要是路面監(jiān)控、違章抓拍、停車場收費(fèi)、高速路收費(fèi);機(jī)器視覺領(lǐng)域的應(yīng)用主要是生產(chǎn)過程監(jiān)控、產(chǎn)品篩選等;多媒體領(lǐng)域的應(yīng)用主要是多路視頻采集后大屏顯示、電視節(jié)目監(jiān)播等。最后,視頻采

4、集應(yīng)用的領(lǐng)域還包括紡織、印刷、印鈔等大幅面圖像檢測應(yīng)用。</p><p>  基于圖像的視覺跟蹤伺服控制系統(tǒng),視覺伺服誤差直接定義在圖像特征空間,攝像機(jī)觀察到的特征信息直接用于反饋,不用對三維姿態(tài)進(jìn)行估計。基于圖像的視覺伺服控制系統(tǒng)中,二維圖像特征通過雅可比矩陣與三維笛卡爾坐標(biāo)系中的三維場景相聯(lián)系,所以這種控制系統(tǒng)中雅可比矩陣的求解是關(guān)鍵。確定雅可基于圖像的視覺伺服控比矩陣可以通過經(jīng)驗法、在線估計法、學(xué)習(xí)法等。經(jīng)

5、驗法主要是通過攝像機(jī)標(biāo)定或先驗?zāi)P椭R得到比較準(zhǔn)確的雅可比矩陣;在線估計的方法可以事先不用進(jìn)行攝像機(jī)標(biāo)定,但存在雅可比矩陣的初值選擇問題;學(xué)習(xí)方法主要是通過離線示教、自我學(xué)習(xí)、自我決策的人工神經(jīng)網(wǎng)絡(luò)的方法,這種方法需要大量樣本才能計算準(zhǔn)確?;趫D像的視覺伺服控制系統(tǒng)可以不用3D重建,直接用圖像特征控制執(zhí)行機(jī)構(gòu)運(yùn)動。與基于位置的方法相比,基于圖像的方法受傳感器模型、運(yùn)動學(xué)方程、攝像機(jī)標(biāo)定所到來的誤差的影響較小,靜態(tài)定位的精度也比較高,但動

6、態(tài)估計雅可比矩陣時,需要不斷進(jìn)行更新和求逆,計算時間上需要進(jìn)一步優(yōu)化;另外,由于系統(tǒng)是的且具有非線性解,因此不能保證在整個任務(wù)空間中都是收斂的。</p><p>  第二章 研究內(nèi)容和意義</p><p>  視覺跟蹤系統(tǒng)可分為基于位置和基于圖像兩種工作方式。</p><p>  基于位置的視覺跟蹤伺服控制系統(tǒng),視覺伺服誤差定義在三維笛卡爾坐標(biāo)空間,視覺特征信息用來

7、估計執(zhí)行機(jī)構(gòu)末端與目標(biāo)的相對位姿。這種方法的主要優(yōu)點是直接在三維空間控制執(zhí)行機(jī)構(gòu)運(yùn)動,另外它把視覺重構(gòu)問題從執(zhí)行機(jī)構(gòu)控制中分離出來,這樣可以分別對二者進(jìn)行研究,但這種方法一般需要對視覺系統(tǒng)和執(zhí)行機(jī)構(gòu)進(jìn)行標(biāo)定,而且由于要對圖像進(jìn)行解釋,因而增加了計算量,另外,這種方法受傳感器模型、運(yùn)動學(xué)方程、攝像機(jī)標(biāo)定所帶來的誤差影響較大。</p><p>  基于圖像的視覺跟蹤伺服控制系統(tǒng),視覺伺服誤差直接定義在圖像特征空間,攝

8、像機(jī)觀察到的特征信息直接用于反饋,不用對三維姿態(tài)進(jìn)行估計?;趫D像的視覺伺服控制系統(tǒng)中,二維圖像特征通過雅可比矩陣與三維笛卡爾坐標(biāo)系中的三維場景相聯(lián)系,所以這種控制系統(tǒng)中雅可比矩陣的求解是關(guān)鍵。確定雅可基于圖像的視覺伺服控比矩陣可以通過經(jīng)驗法、在線估計法、學(xué)習(xí)法等。經(jīng)驗法主要是通過攝像機(jī)標(biāo)定或先驗?zāi)P椭R得到比較準(zhǔn)確的雅可比矩陣;在線估計的方法可以事先不用進(jìn)行攝像機(jī)標(biāo)定,但存在雅可比矩陣的初值選擇問題;學(xué)習(xí)方法主要是通過離線示教、自我學(xué)

9、習(xí)、自我決策的人工神經(jīng)網(wǎng)絡(luò)的方法,這種方法需要大量樣本才能計算準(zhǔn)確?;趫D像的視覺伺服控制系統(tǒng)可以不用3D重建,直接用圖像特征控制執(zhí)行機(jī)構(gòu)運(yùn)動。與基于位置的方法相比,基于圖像的方法受傳感器模型、運(yùn)動學(xué)方程、攝像機(jī)標(biāo)定所到來的誤差的影響較小,靜態(tài)定位的精度也比較高,但動態(tài)估計雅可比矩陣時,需要不斷進(jìn)行更新和求逆,計算時間上需要進(jìn)一步優(yōu)化;另外,由于系統(tǒng)是的且具有非線性解,因此不能保證在整個任務(wù)空間中都是收斂的。</p>&l

10、t;p>  本課題的工作主要基于uclinux操作系統(tǒng),實現(xiàn)對特定障礙的監(jiān)測,以及壁障預(yù)警工作。</p><p>  本立項實現(xiàn)的目標(biāo)包括如下幾個方面:</p><p>  ◇研究相關(guān)計算機(jī)視頻圖像采集的理論和方法</p><p><b>  ◇研究壁障技術(shù)</b></p><p>  ◇從復(fù)雜場景中提取特征障礙信

11、息</p><p>  ◇對障礙信息做出判斷,預(yù)警</p><p>  第三章 預(yù)期達(dá)到的技術(shù)目標(biāo) 和擬解決的技術(shù)問題</p><p>  一、計算機(jī)視覺圖像處理技術(shù)主要有以下凡項內(nèi)容:</p><p>  1、圖像數(shù)字化和壓縮編碼</p><p>  圖像數(shù)字化技術(shù)是把連續(xù)圖像信號變?yōu)殡x

12、散的數(shù)字信號,適應(yīng)數(shù)字計算機(jī)或其它數(shù)字設(shè)備的運(yùn)算處理。壓縮編碼技術(shù)是減少描述圖像的數(shù)據(jù)量即比特率,以便節(jié)省傳輸、處理時間和存儲器容量。</p><p><b>  2、圖像增強(qiáng)和復(fù)原</b></p><p>  圖像增強(qiáng)是突出圖像中感興趣的部分,圖像復(fù)原是使失真圖像盡可能恢復(fù)本來面貌。</p><p><b>  3、圖像分割<

13、/b></p><p>  圖像中包含的物體,按其灰度、色彩或幾何特性分割,并進(jìn)行分析處理,從中提取數(shù)據(jù)等有效分量。這是進(jìn)一步進(jìn)行圖像處理、模式識別和機(jī)器視覺等技術(shù)的基礎(chǔ)。</p><p><b>  4、圖像分類</b></p><p>  圖像分類是圖像處理技術(shù)的深入和發(fā)展,也可以認(rèn)為是模式識別的一個分支。其主要內(nèi)容是在圖像經(jīng)過某些預(yù)

14、處理(壓縮、增強(qiáng)、復(fù)原)后,將圖像中有用物體的特征進(jìn)行特征分割、特征選擇,進(jìn)而進(jìn)行判決分類。</p><p><b>  5、圖像重建</b></p><p>  圖像重建是對一些三維物體,應(yīng)用X射線、超聲波等物理方法獲取物體內(nèi)部結(jié)構(gòu)的數(shù)據(jù)。再將此數(shù)據(jù)進(jìn)行運(yùn)算處理構(gòu)成物體內(nèi)部某些部位的圖像。</p><p>  第四章 研究、試驗方法和技術(shù)路線

15、</p><p>  圖1:初期整個系統(tǒng)簡要分析。</p><p>  圖2:修改后整個系統(tǒng)簡要分析(即技術(shù)線路)。</p><p><b>  第五章 實現(xiàn)過程</b></p><p><b>  5.1 硬件</b></p><p><b>  1、應(yīng)用器件&l

16、t;/b></p><p>  ARM7開發(fā)板,L298 ,DS18B20, ST188,電容,電阻等</p><p><b>  2、電路原理圖</b></p><p><b>  圖3</b></p><p><b>  3、成型電路</b></p>&

17、lt;p><b>  圖4</b></p><p><b>  5.2 軟件</b></p><p><b>  1、軟件結(jié)構(gòu)圖</b></p><p><b>  圖5</b></p><p><b>  2、主要程序</b>

18、</p><p>  #include "stdafx.h"</p><p>  #include "cv.h"</p><p>  #include "highgui.h"</p><p>  #include <stdio.h></p><p>

19、;  #include <ctype.h></p><p>  IplImage *image = 0, *hsv = 0, *hue = 0, *mask = 0, *backproject = 0, *histimg = 0;</p><p>  //用HSV中的Hue分量進(jìn)行跟蹤</p><p>  CvHistogram *hist = 0;//

20、直方圖類</p><p>  int backproject_mode = 0;</p><p>  int select_object = 0;</p><p>  int track_object = 0;</p><p>  int show_hist = 1;</p><p>  CvPoint origin;

21、</p><p>  CvRect selection;</p><p>  CvRect track_window;</p><p>  CvBox2D track_box;//Meanshift跟蹤算法返回的Box類</p><p>  CvConnectedComp track_comp;</p><p>  i

22、nt hdims = 16;// 劃分直方圖bins的個數(shù),越多越精確</p><p>  float hranges_arr[] = {0,180};//像素值的范圍</p><p>  float* hranges = hranges_arr;//用于初始化CvHistogram類</p><p>  int vmin = 90, vmax = 256, smi

23、n = 90;</p><p>  CvScalar hsv2rgb( float hue );//用于將Hue量轉(zhuǎn)換成RGB量 這里沒寫</p><p>  void loadTemplateImage()</p><p><b>  {</b></p><p>  IplImage *tempimage = c

24、vLoadImage("red.jpg",1);</p><p>  cvCvtColor( tempimage, hsv, CV_BGR2HSV );</p><p>  int _vmin = vmin, _vmax = vmax;</p><p>  cvInRangeS( hsv, cvScalar(0,smin,MIN(_vmin,

25、_vmax),0),</p><p>  cvScalar(180,256,MAX(_vmin,_vmax),0), mask );</p><p>  cvSplit( hsv, hue, 0, 0, 0 );</p><p>  selection.x = 1;</p><p>  selection.y = 1;</p>

26、;<p>  selection.width = 640-1;</p><p>  selection.height= 480-1;</p><p>  cvSetImageROI( hue, selection );</p><p>  cvSetImageROI( mask, selection );</p><p>

27、  cvCalcHist( &hue, hist, 0, mask );</p><p>  float max_val = 0.f;</p><p>  cvGetMinMaxHistValue( hist, 0, &max_val, 0, 0 );</p><p>  cvConvertScale( hist->bins, his

28、t->bins, max_val ? 255. / max_val : 0., 0 );</p><p>  cvResetImageROI( hue );</p><p>  cvResetImageROI( mask );</p><p>  track_window = selection;</p><p>  track

29、_object = 1;</p><p>  cvZero( histimg );</p><p>  int bin_w = histimg->width / hdims;</p><p>  for(int i = 0; i < hdims; i++ )</p><p><b>  {</b>&l

30、t;/p><p>  int val = cvRound( cvGetReal1D(hist->bins,i)*histimg->height/255 );</p><p>  CvScalar color = hsv2rgb(i*180.f/hdims);</p><p>  cvRectangle( histimg, cvPoint(i*bin_

31、w,histimg->height),</p><p>  cvPoint((i+1)*bin_w,histimg->height - val),</p><p>  color, -1, 8, 0 );</p><p><b>  }</b></p><p>  cvReleaseImage(&t

32、empimage);</p><p><b>  }</b></p><p>  void on_mouse( int event, int x, int y, int flags, void* param )//該函數(shù)用于選擇跟蹤目標(biāo)</p><p><b>  { </b></p><p>

33、  if( !image ) </p><p><b>  return; </b></p><p>  if( image->origin ) </p><p>  y = image->height - y; </p><p>  if( select_object )//如

34、果處于選擇跟蹤物體階段,則對selection用當(dāng)前的鼠標(biāo)位置進(jìn)行設(shè)置 </p><p><b>  { </b></p><p>  selection.x = MIN(x,origin.x); </p><p>  selection.y = MIN(y,origin.y); </p><p>  se

35、lection.width = selection.x + CV_IABS(x - origin.x); </p><p>  selection.height = selection.y + CV_IABS(y - origin.y); </p><p>  selection.x = MAX( selection.x, 0 ); </p><p>  se

36、lection.y = MAX( selection.y, 0 ); </p><p>  selection.width = MIN( selection.width, image->width ); </p><p>  selection.height = MIN( selection.height, image->height ); </p

37、><p>  selection.width -= selection.x; </p><p>  selection.height -= selection.y;</p><p><b>  } </b></p><p>  switch( event ) </p><p><b>  

38、{</b></p><p>  case CV_EVENT_LBUTTONDOWN://開始點擊選擇跟蹤物體</p><p>  origin = cvPoint(x,y);</p><p>  selection = cvRect(x,y,0,0);//坐標(biāo)</p><p>  select_object = 1;//表明開始進(jìn)

39、行選取</p><p><b>  break;</b></p><p>  case CV_EVENT_LBUTTONUP:</p><p>  select_object = 0;//選取完成 </p><p>  if( selection.width > 0 && selection.hei

40、ght > 0 )</p><p>  track_object = -1;//如果選擇物體有效,則打開跟蹤功能</p><p><b>  break;</b></p><p><b>  }</b></p><p>  CvScalar hsv2rgb( float hue )//用于將H

41、ue量轉(zhuǎn)換成RGB量</p><p><b>  {</b></p><p>  int rgb[3] , p, sector;</p><p>  static const int sector_data[][3]=</p><p>  {{0,2,1}, {1,2,0}, {1,0,2}, {2,0,1}, {2

42、,1,0}, {0,1,2}};</p><p>  hue *= 0.033333333333333333333333333333333f;</p><p>  sector = cvFloor(hue);</p><p>  p = cvRound(255*(hue - sector));</p><p>  p ^= sector &a

43、mp; 1 ? 255 : 0;</p><p>  rgb[sector_data[sector][0]] = 255;</p><p>  rgb[sector_data[sector][1]] = 0;</p><p>  rgb[sector_data[sector][2]] = p;</p><p>  return cvScala

44、r(rgb[2], rgb[1], rgb[0],0);//返回對應(yīng)的顏色值</p><p><b>  }</b></p><p>  int main( int argc, char** argv )</p><p><b>  {</b></p><p>  CvCapture* captur

45、e = 0;</p><p>  if( argc == 1 || (argc == 2 && strlen(argv[1]) == 1 && isdigit(argv[1][0])))</p><p>  capture = cvCaptureFromCAM( argc == 2 ? argv[1][0] - '0' : 0 );//打開攝

46、像頭</p><p>  else if( argc == 2 )</p><p>  capture = cvCaptureFromAVI( argv[1] );//打開AVI文件 </p><p>  if( !capture )</p><p><b>  {</b></p><p>  f

47、printf(stderr,"Could not initialize capturing...\n");//打開視頻流失敗處理</p><p>  return -1;</p><p><b>  }</b></p><p>  printf( "Hot keys: \n"</p><

48、;p>  "\tESC - quit the program\n"</p><p>  "\tc - stop the tracking\n"</p><p>  "\tb - switch to/from backprojection view\n"</p><p>  "\th - sh

49、ow/hide object histogram\n"</p><p>  "To initialize tracking, select the object with mouse\n" );////打印出程序功能列表</p><p>  cvNamedWindow( "Histogram", 0 );</p><p&

50、gt;  cvNamedWindow( "CamShiftDemo", 0 );//建立視頻窗口</p><p>  cvSetMouseCallback( "CamShiftDemo", on_mouse, 0 );// 設(shè)置鼠標(biāo)回調(diào)函數(shù)</p><p>  cvCreateTrackbar( "Vmin", "Cam

51、ShiftDemo", &vmin, 256, 0 );//建立滑動條</p><p>  cvCreateTrackbar( "Vmax", "CamShiftDemo", &vmax, 256, 0 );</p><p>  cvCreateTrackbar( "Smin", "CamShi

52、ftDemo", &smin, 256, 0 );</p><p>  for(;;)//進(jìn)入視頻幀處理主循環(huán)</p><p><b>  { </b></p><p>  IplImage* frame = 0;</p><p>  int i, bin_w, c;</p><p&

53、gt;  frame = cvQueryFrame( capture );</p><p>  if( !frame )</p><p><b>  break;</b></p><p>  cvAnd( backproject, mask, backproject, 0 );//得到反向投影圖mask內(nèi)的內(nèi)容</p><p

54、>  cvCamShift( backproject, track_window,</p><p>  cvTermCriteria( CV_TERMCRIT_EPS | CV_TERMCRIT_ITER, 10, 1 ),</p><p>  &track_comp, &track_box );//使用MeanShift算法對backproject中的內(nèi)容進(jìn)行搜索,

55、返回跟蹤結(jié)果</p><p>  track_window = track_comp.rect;//得到跟蹤結(jié)果的矩形框</p><p><b>  }</b></p><p>  if( select_object && selection.width > 0 && selection.height &g

56、t; 0 )//如果正處于物體選擇,畫出選擇框</p><p><b>  {</b></p><p>  cvSetImageROI( image, selection );</p><p>  cvXorS( image, cvScalarAll(255), image, 0 );</p><p>  cvReset

57、ImageROI( image );</p><p><b>  }</b></p><p>  cvShowImage( "CamShiftDemo", image );//顯示視頻和直方圖</p><p>  cvShowImage( "Histogram", histimg );</p>

58、<p>  c = cvWaitKey(10);</p><p>  if( c == 27 )break;</p><p>  switch( c )</p><p><b>  {</b></p><p><b>  case 'b':</b></p&g

59、t;<p>  backproject_mode ^= 1;break;</p><p><b>  case 'c':</b></p><p>  track_object = 0;cvZero( histimg );break;</p><p>  case 'h':show_hist ^= 1

60、;</p><p>  if( !show_hist )</p><p>  cvDestroyWindow( "Histogram" );</p><p>  default: ;</p><p><b>  }</b></p><p><b>

61、;  }</b></p><p>  cvReleaseCapture( &capture ); </p><p>  cvDestroyWindow("CamShiftDemo"); </p><p><b>  return 0;</b></p><p><b

62、>  }</b></p><p>  #ifdef _EiC</p><p>  main(1,"camshiftdemo.c");</p><p><b>  #endif</b></p><p><b>  5.3 作品成型</b></p>&

63、lt;p>  作品成型后如圖所示:</p><p><b>  圖6</b></p><p><b>  第六章 課題總結(jié)</b></p><p>  將近三個月的課題研究,我們基本上完成了題為小車的制作,作品基本能完成要求的功能。在此期間經(jīng)過不斷地學(xué)習(xí)與探索,使我們了解了ARM的工作原理及其應(yīng)用。在電路原理圖到電路

64、成型的整個過程中,使我們深刻的了解到各種電子器件的電氣特性以及工作環(huán)境,尤其是要參考現(xiàn)場環(huán)境因素。實現(xiàn)了小車通過紅外傳感器的準(zhǔn)確巡線,驅(qū)動模塊正常工作。還有通過軟件的調(diào)試使四位共陰數(shù)碼管實現(xiàn)精確計時。</p><p>  指導(dǎo)老師把設(shè)計和制作的任務(wù)完全交給了我們,我們得自選方案,畫好設(shè)計所需的電路圖,還要從硬件和軟件兩個方面著手開展我們的設(shè)計與制作。這和我們以前做的課程設(shè)計有很大的不同,一是沒有現(xiàn)成的方案供選擇,

65、二是沒有現(xiàn)成的電路圖供參考,三是沒有類似的算法和程序供使用。我們初期復(fù)習(xí)了單片機(jī)的基礎(chǔ)知識,因為智能小車控制的核心部件是單片機(jī),然后我們從小車需要完成的不同任務(wù)著手查閱了大量的資料,確定小車制作需要的控制模塊。確定好控制模塊后,我們開始動手制作各個相關(guān)的模塊,同時還要把控制各個模塊的程序?qū)懞貌⑼瓿上嚓P(guān)的硬件和軟件的調(diào)試。 </p><p>  此次設(shè)計涉及到電氣專業(yè)的許多主干課程:模電(放大器和光電隔離)、數(shù)電(

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論