計算機視覺演算法工程師筆試主要什麼內容?


計算機視覺裡面的主題比較多元化,應用上的差異也較大。

舉例來說,做檢測和識別的跟做SLAM的對應知識點要求就非常不一樣,往細了說, 做日常物體的檢測和識別跟做工業零件的檢測和識別不一樣,做日常物體的檢測和識別和做人臉相關的檢測識別涉及到的內容又不太一樣; 做Visual SLAM和做Sensor Fusion的知識點不太一樣, 做visual SLAM里前端跟蹤和後端優化的知識點又是不一樣……等等。

所以顯然是不應該有什麼通用的計算機視覺工程師筆試寶典的。

竊認為,一個計算機視覺工程師起碼需要知道的知識包括基本的圖像處理的演算法以及大概的實現原理。知道相機的成像原理以及簡單的標定原理。知道經典的特徵的實現思路以及使用。作為一個工程師,抽絲剝繭分析問題的能力和編程能力是必備的,剩下的就根據不同的工作職責來出考題了。

如果招深度學習相關的,應該需要知道基本的反向傳導的工作原理,知道經典layer是如何實現的,知道一些重要的權值歸一化方法,以及為什麼,知道起碼一種流行的框架的實現和使用,等。有些朋友還可能會考什麼貝葉斯優化方面的東西……

如果是SLAM方面,前端的話可能要考慮光流和跟蹤,圖像金字塔,FAST,ORB之類的實現,知道RANSAC以及幾種變體,再過一點就是知道經典的開源框架前端的實現思路,比如PTAM,ORB-SLAM2等等。後端的話…可能要考的是李群,最小二乘優化的幾種演算法,卡曼濾波,基本的BA演算法思路等。SLAM這邊,細心的話,都應該問問什麼E矩陣和F矩陣的區別,以及已經什麼時候用那個比較好,再就是一些矩陣分解之類的問題……往深了問幾乎都是數學了。

有些公司做醫學圖像的,需要考的問題還會包括很多計算幾何和圖形學方面的內容,比如spline,free-form surface, 向量場,流形優化,亞像素演算法等等…

做工業視覺的也會有不同的關注點。會考一些光學,結構光,雙目視覺,點雲處理,點對特徵,三維噪點過濾等等……

一個全能型的計算機視覺工程師要掌握的知識點太多了(捂眼睛),所以一般來說還是要對口地去找公司。自己私下不能停止學習,因為根本不是五年十年能學好的,為了生活過得開心點兒,你得能喜歡上這個事情。

這不是碗輕鬆飯,沒有決心和毅力的話切勿入坑。


圖像處理部分:

1、主要考察一維中值濾波,退化為區間濾波 編寫偽代碼,分析演算法複雜度;

2、主要考察二維中值濾波,編寫偽代碼,分析演算法複雜度;

3、如何去除脈衝雜訊,圖像中有大量隨機產生的255和0雜訊;

4、考察加權中值濾波公式推導以及一維加權中值濾波

計算機視覺部分:

1、考察特徵點匹配演算法,輸入兩幅圖像中的特徵點對,輸出匹配的特徵點對,(128維描述子)距離計算函數已給出無需考慮複雜度。編寫偽代碼,分析演算法複雜度;

2、考察圖像旋轉。左邊圖像時旋轉一定角度後的圖像(有黑邊),右邊為正常圖像。已知兩幅圖像都為WxH,以及左圖像與四邊的切點A1A2A3A4,設計旋轉演算法使左圖像變換矯正成右圖像,編寫偽代碼,分析演算法複雜度及優缺點;

3、主要考察雙目視覺中的標定知識。給出了雙目視覺的成像原理圖及相關定理和表達。第一小題,需要證明x"Fx=0 x"x為左右圖像中的匹配點對,並要求給出F矩陣的秩;第二小題要求推導出最少可由多少對左右圖像中匹配點可以推導出F矩陣;

4、要求寫出圖像處理和計算機視覺在無人飛行器中的3個重要應用。給出理由和解決方案並分析。

控制部分:

對象舉例均為四旋翼無人飛行器,各題目要求設計控制器,給出控制率,還有觀測方案設計等等;有一題比較簡單就是說明PID的各部分含義以及如何調節。

感覺考察比較基礎,有一定難度,希望對大家有用


透漏一個我們公司的計算機視覺筆試題之一,順便做個廣告,歡迎對計算機視覺,機器學習還有四旋翼無人機感興趣的來我們公司交流,可以直接加我微信聯繫,謝謝。


推薦閱讀:

很好奇為何四旋翼都採用圖1的設計而不採用圖二的設計呢?
沒有磁強計的陀螺儀能算出偏航角(Yaw)嗎?
小米會進一步進軍機器人行業嗎?
FOC控制中,速度控制模塊輸入為轉速之差,輸出為三相參考電流的幅值Is.推導過程是怎樣的?

TAG:計算機視覺 | 四軸飛行器 |