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