本人是工作八年的視覺工程師,主要從事Halcon和Visionpro視覺開發(fā),談?wù)剛人對視覺學(xué)習(xí)看法:
1、HALCON是德國MVtec公司開發(fā)的一套完善的標(biāo)準(zhǔn)的機器視覺算法包,它節(jié)約了產(chǎn)品成本,縮短了軟件開發(fā)周期。
Halcon:底層功能算法多,運算性能快,開發(fā)需要一定軟件功底和圖像處理理論。
快速學(xué)習(xí)做法:研究實例、做實戰(zhàn)項目。halcon不能提供相應(yīng)的界面編程需求,需要和vs來構(gòu)造MFC界面或者QT使用,才能構(gòu)成一套完整軟件。
2、需求主要有二維三維二維:(1)識別定位;(2)OCR識別;(3)二維碼識別;(4)測量;(5)缺陷檢測;(6)機器控制等三維:(1)多目標(biāo)定(2)三維重建(3)三維匹配等
3、成為合格的機器視覺工程師須具備三個方面的知識
圖像處理涉及以下幾大領(lǐng)域:
A、圖像處理的基本理論知識(圖像理論的基礎(chǔ)知識)
B、圖像增強(對比度拉伸、灰度變換等)
C、圖像的幾何變換(仿射變換,旋轉(zhuǎn)矩陣等)
D、圖像的頻域處理(傅里葉變換、DFT、小波變換、高低通濾波器設(shè)計)
E、形態(tài)學(xué)(膨脹、腐蝕、開運算和閉運算以及凸殼等)
F、圖像分割
G、圖像復(fù)原
H、運動圖像
I、圖像配準(zhǔn)(模板匹配等)
J、模式識別(分類器訓(xùn)練,神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)等)
。2)軟件編程功底
具備C,C++,C#及MFC界面開發(fā)的功底
A、C語言的學(xué)習(xí)主要看譚浩強寫的C語言相關(guān)知識
B、C++主要看C++primerplus書籍
C、MFC的學(xué)習(xí)主要看孫鑫編寫的《VC++深入詳解》這本書及相應(yīng)的視頻教程,并在VC++6.0軟件或VS2010等軟件上編寫程序和實踐。
D、C#可以看書籍《C#從入門到精通》、《C#入門經(jīng)典》、《C#圖解教程》
。3)光學(xué)知識:
光學(xué)知識主要在你設(shè)計方案時相機、光源、鏡頭等選型時起到關(guān)鍵作用。
4、學(xué)習(xí)HALCON最重要的是學(xué)習(xí)其中的方法、流程和套路
HALCON主要完成圖像算法的流程套路如下:
特征提取總結(jié):
1、幾何特征(面積、周長、矩形度)
2、紋理特征(與灰度相關(guān),如熵、能量值)
3、顏色特征
4、概率特征
5、算子描述特征
6、Hough特征(梯度直方圖特征)
做機器視覺的項目,拿到項目時一般遵循如下流程:
第一步:需求分析,建立相應(yīng)的方案
第二步:算法流程規(guī)劃及業(yè)務(wù)邏輯設(shè)計
第三步:模塊化編程及集成化實現(xiàn)
第四步:調(diào)試,根據(jù)反饋結(jié)果來不斷的修改程序Bug,達到客戶需求,最后交付客戶及軟硬件操作文檔。
學(xué)習(xí)機器視覺的好方法:
1、學(xué)習(xí)機器視覺一定要結(jié)合項目實戰(zhàn),在實踐中學(xué) 結(jié)經(jīng)驗教訓(xùn),系統(tǒng)化學(xué)習(xí)所需知識。
2、補充一定的C++和c#知識,進行VS聯(lián)合開發(fā),客戶現(xiàn)場的學(xué)習(xí)和現(xiàn)場調(diào)試,不斷學(xué)習(xí)示例分析,掌握方法套路流程。
3、根據(jù)實際問題,學(xué)習(xí)模塊調(diào)用,按照方法套路學(xué)習(xí)。
4、最好是先用HALCON實現(xiàn)圖像處理部分,然后在VS2010開發(fā)軟件中利用MFC圖形界面實現(xiàn)出來,實踐學(xué)習(xí)是最好的方法。
這是我搜集的資料分享給大家,有需要的自己保存,也可以加我q1907812972或1348278430交流學(xué)習(xí)。
全套鏈接:
https://pan.baidu.com/s/1R6puDfHtT-oNZLU5yzdGRw 提取碼:8888
發(fā)展趨勢是結(jié)合神經(jīng)網(wǎng)絡(luò)、深度學(xué)習(xí)進行相應(yīng)的人工智能機器視覺開發(fā)。
敲黑板:本人經(jīng)常會發(fā)一些對大家學(xué)習(xí)非常有參考價值的帖子和分享一些視覺halcon學(xué)習(xí)的資料,大家可以關(guān)注我以及看下我其他帖子。
[ 此帖被斯塔克工業(yè)在2020-07-15 18:04重新編輯 ]