国产精品亚欧美一区二区_最新无码特级毛片免费播放_不卡无码视频在线_国产在线一二三四区_亚洲另类在线欧美制服_综合亚洲少妇精品_免费播放春色aⅴ视频_免费黄色视频应用下载_三级无码综合免费_午夜性色福利在线观看视频

  1. 首頁
  2. 視覺知識
  3. 技術(shù)動態(tài)

深圳市思普泰克科技有限公司

地址:深圳市寶安區(qū)沙井芙蓉工業(yè)區(qū)崗仔工業(yè)園第11棟

總部客服熱線:13077808017

關(guān)于我們

聯(lián)系我們

技術(shù)動態(tài)

圖像處理系統(tǒng)在自動化設(shè)備中用作位置反饋的一種方法

發(fā)布時間:2018-12-11 02:03:18作者:


  

  圖像處理系統(tǒng)在自動化設(shè)備中用作位置反饋的一種方法

  1. 在自動化設(shè)備中應(yīng)用圖像處理系統(tǒng)的優(yōu)點

  自動化設(shè)備為了獲得準確的位置精度,通常采用兩種方法,一種是采用滾珠絲桿加交流伺服電機組成半閉環(huán)位置控制系統(tǒng);另一種是采用位置傳感器,如:光柵尺、磁柵尺,以及高級控制器組成閉環(huán)控制系統(tǒng)。這兩種方法技術(shù)成熟,但成本較高。

  我們采用國產(chǎn)圖像卡、鏡頭、臺灣產(chǎn)攝像頭和PC機,再加上滑動絲桿、步進電機和多軸運動控制器等元器件構(gòu)成位置反饋控制系統(tǒng)。PC機通過處理圖像信息,檢測工件平面位置,控制電機運動,補償系統(tǒng)誤差。

  采用這種結(jié)構(gòu)我們成功的開發(fā)出多種自動化設(shè)備,如:自動點膠機、自動超聲波焊機等。其特點是:設(shè)備的精度高、成本低;由于有圖像顯示,調(diào)節(jié)點膠針頭、超聲波焊針和工裝的初始位置十分方便,對工裝的一致性要求也不高。

  2. 系統(tǒng)結(jié)構(gòu)與定位方法

  下面以自動點膠機為例介紹該系統(tǒng)結(jié)構(gòu)。圖1為該設(shè)備的外形,圖2為該設(shè)備的系統(tǒng)框圖。

  圖1 自動點膠機外形

  PC機通過攝像頭、圖像卡采集工件的平面圖像,經(jīng)過圖像處理后,得到工件的當(dāng)前位置;PC機通過RS-232串行端口,將運動指令發(fā)送給多軸運動控制器,控制器控制X-Y平臺、Z軸平臺運動以及點膠閥的開關(guān)。[1]

  攝像頭固定在機架上不動,其放大倍數(shù)也是固定的,所以,圖像上的像素點對應(yīng)工件上的長度是一定的,計算像素點個數(shù),就能推算出距離及位置。

  在正常工作之前,要將圖像系統(tǒng)和X-Y平臺位置、點膠針頭建立起對應(yīng)關(guān)系。如圖3所示,將X-Y平臺從其原點開始移動,使工裝上的第一個工件出現(xiàn)在攝像頭拍攝的畫面中央, 系統(tǒng)軟件記錄下X-Y平臺的初始位置(X0,Y0);調(diào)整固定在Z軸平臺上的點膠針頭的位置,使其落在圖像畫面的針頭定位框內(nèi),從而針頭和攝像頭的相對位置就確定了。

  正常工作時,系統(tǒng)軟件控制X-Y平臺從原點運動到第1個工件位置;抓取工件圖像,通過模板匹配技術(shù),獲取工件當(dāng)前位置;和理想位置比較后,調(diào)整X-Y平臺位置,消除誤差,并運動到點膠啟始位; Z軸下降到點膠高度,然后打開點膠閥開始點膠; X-Y平臺按點膠軌跡運動;關(guān)點膠閥,Z軸抬起,完成一個工件的點膠過程。

  然后,X平臺平移距離d,第2個工件進入圖像畫面,取圖像、調(diào)整位置、點膠;如此重復(fù),完成5個工件的點膠過程。

  3. 模板匹配算法的改進

  模板就是一幅已知的小圖像。模板匹配就是在一幅大圖像中搜尋目標,已知該圖中有要找的目標,且該目標同模板有相同的尺寸、方向和圖像,通過一定的算法可以在圖中找到目標,確定其坐標位置。

  如圖4所示,模板T( m ′ n個像素)疊放在被搜索圖S( W ′ H個像素)上平移,模板覆蓋被搜索圖的那塊區(qū)域叫子圖Sij。I,j為子圖左上角在被搜索圖S上的坐標。搜索范圍是:

  一種算法是衡量T和Sij的誤差,其公式為:

  E( i, j )為最小值處即為匹配目標。為提高計算速度,取一個誤差閾值E0,當(dāng)E( i, j )> E0時就停止該點的計算,繼續(xù)下一點計算。

  為了提高模板匹配處理速度,設(shè)計了二次匹配誤差算法,即:

  第一次匹配是粗略匹配。取模板的隔行隔列數(shù)據(jù),即四分之一的模板數(shù)據(jù),在被搜索圖上進行隔行隔列掃描匹配,即在原圖的四之分一的數(shù)據(jù)內(nèi)匹配。由于數(shù)據(jù)量大幅度減少,匹配速度顯著提高。

  為了合理的給出一個誤差閾值E0,設(shè)計了一個確定誤差閾值E0的準則:

  E0 = e0 * (m+1)/2 * (n+1)/2

  式中:e0為各點平均的最大誤差,一般取40~50即可;

  m,n為模板的長和寬。

  第二次匹配是精確匹配。在第一次誤差最小點( imin,jmin )的鄰域內(nèi),即在對角點為( imin-1, jmin-1), ( imin+1, jmin+1)的矩形內(nèi),進行搜索匹配,得到最后結(jié)果。

  表1是無閾值誤差法、有閾值誤差法、二次匹配誤差法這三種模板匹配算法對兩幅圖像進行模板匹配的結(jié)果比較:

  結(jié)果表明:被搜索圖越大,匹配速度越慢;模板越小,匹配速度越快。誤差法閾值的大小對匹配速度影響大,和模板的尺寸有關(guān)。改進后的二次匹配誤差法的速度大幅提高。

  圖5是自動點膠機的PC機界面。為了提高匹配速度,被搜索圖由藍色框決定,大小可調(diào);黃色框為模板,及工件的右下角;紅色框為工件外沿。從圖中可看出,工件偏向右側(cè),說明位置有誤差,但圖像系統(tǒng)通過辨識工件的右下角,確定了工件的準確位置。點膠將在紅色框內(nèi)進行。

  4.二次匹配誤差法的主要代碼

  #define AvEthreshold 40 // 各點平均誤差

  int Ethreshold; // 誤差閾值

  //計算誤差閾值

  Ethreshold=AvEthreshold*((lTemplateHeight+1)/2)*((lTemplateWidth+1)/2);

  // 第一次粗略匹配,找出誤差最小位置(nMaxHeight,nMaxWidth)

  // 僅使用模板中隔行隔列的數(shù)據(jù),在被搜索圖中隔行隔列匹配

  nMinError = 99999999;

  for (i = 0; i < lHeight - lTemplateHeight +1; i=i+2)

  {

  for(j = 0; j < lWidth - lTemplateWidth + 1; j=j+2)

  {

  nError = 0;

  for (m = 0; m < lTemplateHeight; m=m+2)

  {

  for(n = 0; n < lTemplateWidth; n=n+2)

  {

  // 指向被搜索圖像倒數(shù)第i+m行,第j+n個象素的指針

  lpSrc = (char *)lpDIBBits + lLineBytes * (i+m) + (j+n);

  // 指向模板圖像倒數(shù)第m行,第n個象素的指針

  lpTemplateSrc = (char *)lpTemplateDIBBits + lTemplateLineBytes * m + n;

  pixel = (unsigned char)*lpSrc;

  templatepixel = (unsigned char)*lpTemplateSrc;

  nDelta=(int)pixel-templatepixel;

  if (nDelta<0) // 做絕對值運算

  {nError = nError-nDelta;}

  else{nError = nError+nDelta;}

  }

  if (nError>(Ethreshold)) break; // 誤差大于閾值,進入下一點計算

  }

  if (nError < nMinError) //與最小誤差比較

  {

  nMinError = nError; // 記錄最小誤差及其坐標

  nMaxWidth = j;

  nMaxHeight = i;

  }

  }

  }


回到頂部