機器視覺在生產制造中主要用在視覺引導,尺寸測量,產品檢測,物體識別等幾個領域。在這幾個領域中,一個最基本的算法就是產品識別和定位,比如視覺引導機器人,要在圖像中識別出要抓取的產品,并定位出坐標,才引導機器人到指定的產品位置。尺寸測量,產品檢測等也是一樣的,在測量和檢測之前,首先要知道有沒有產品,產品的位置在哪里,才可以應用后續的各種分析工具。因此,產品識別和定位是一個基本問題。
如果要設計一個可行的產品識別和定位的算法,需要克服幾方面的困難:
1.快速的指定產品:工業產品千差萬別。因此,對于每一個具體的應用,需要從幾張,甚至一張圖像上,快速指定需要查找的產品,比如當前產線需要定位鉚釘的位置,拍一張照片并進行相應的學習,就可以在后續的圖像中進行搜索定位。
2.快速的搜索產品:對于一張200萬像素的圖片,通常要求在幾十毫秒的時間可以識別和定位出產品的位置。
3.高精度的定位:工業生產對精度和公差有嚴格的要求,因此產品的定位就要力求準確?,F在普遍要求識別定位算法可以達到一個像素級別的定位精度,甚至可以達到亞像素級別。
4.可以適應產品缺失,遮擋,臟污等的影響:如果一個產品被遮擋,導致產品在圖像中缺失一定比列,需要依然可以識別定位到物體。反之,如果產品表面發生臟污,導致表面的特征發生變化,需要依然可以識別定位。
5.可以適應光照亮度不均勻的影響:如果產品的亮度發生變化,比如一半亮一半暗,需要依然可以識別定位。
6.可以識別旋轉的產品:產品通??赡茉?60度范圍內旋轉。
7.可以識別多個產品:一張圖像中可能有多個產品,需要分別識別定位。
8.可以準確識別接近對稱的物體:接近對稱的物體很容易別識別成錯誤的方向,需要進行相應的設計。
9.可以應對物體的極性翻轉:比如學習的產品是白底黑字,但是實際上產品圖像有可能是黑底白字,需要可以識別。
如果要設計一個可行的產品識別和定位的算法,需要克服幾方面的困難:
1.快速的指定產品:工業產品千差萬別。因此,對于每一個具體的應用,需要從幾張,甚至一張圖像上,快速指定需要查找的產品,比如當前產線需要定位鉚釘的位置,拍一張照片并進行相應的學習,就可以在后續的圖像中進行搜索定位。
2.快速的搜索產品:對于一張200萬像素的圖片,通常要求在幾十毫秒的時間可以識別和定位出產品的位置。
3.高精度的定位:工業生產對精度和公差有嚴格的要求,因此產品的定位就要力求準確?,F在普遍要求識別定位算法可以達到一個像素級別的定位精度,甚至可以達到亞像素級別。
4.可以適應產品缺失,遮擋,臟污等的影響:如果一個產品被遮擋,導致產品在圖像中缺失一定比列,需要依然可以識別定位到物體。反之,如果產品表面發生臟污,導致表面的特征發生變化,需要依然可以識別定位。
5.可以適應光照亮度不均勻的影響:如果產品的亮度發生變化,比如一半亮一半暗,需要依然可以識別定位。
6.可以識別旋轉的產品:產品通??赡茉?60度范圍內旋轉。
7.可以識別多個產品:一張圖像中可能有多個產品,需要分別識別定位。
8.可以準確識別接近對稱的物體:接近對稱的物體很容易別識別成錯誤的方向,需要進行相應的設計。
9.可以應對物體的極性翻轉:比如學習的產品是白底黑字,但是實際上產品圖像有可能是黑底白字,需要可以識別。