OpenCV-CL: OpenCL加速計算機視覺技術


大家好!我借這篇文章,分享給大家今年計算機視覺領域里的一些令人興奮不已的最新進展。特別是最新OpenCV(當前最流行的計算機視覺庫)的發布,您的計算機視覺應用程序可以在現代異構計算平台上充分利用CPU和GPU的全部計算力。

 

從OpenCV 2.4.3開始,到作了重大改進后的OpenCV 2.4.4,至將來發布的各種新版本中,OpenCV都會得到了OpenCL的有力支持。 OpenCV-CL正逐漸地成為功能優異而性能高效的計算機視覺庫,且在AMD的APU處理器和GPU顯卡上表現出優異性能。

 

下面列舉出了一些目前已經移植到OpenCL的OpenCV功能,包括即將發布的OpenCV2.4.6的一些功能:

•    OpenCV-CL 二進制下載

•    初始化和信息

•    單個元操作

•    圖像變換

•    還原

•    色彩轉換

•    豐富的濾波引擎,包括有各種類型的圖像濾波器,如高質量圖像增強

•    圖像的幾何轉換

•    基於均值漂移的變換,K-means,聚類

•    角特征檢測器

•    模板匹配

•    描述符匹配

•    特征檢測,Haar, 特征跟

•    特征描述符

•    加速的魯棒特征(speeded-up robust features, SURF)

•    梯度方向直方圖(HOG)

•    人臉識別 (Viola Jones)

•    光流,如LK, TV L1, Farneback

•    立體聲對應:BM, BP, CSBP

•    基於TV L1光流的超分辨率 

 

為有助於開發人員,最新發布的AMD APP SDK(2.8.1版)帶有兩個OpenCV- CL例子。例子程序“Hello World”驗證OpenCV- CL可否在您的系統中工作;互操作示例程序演示在不需要OpenCL管道的情況下,如何利用程序開發人員用自己編寫的OpenCL內核擴展OpenCV- CL!

 

下面簡要地介紹這個實現過程: 

 

OpenCV-CL是非常靈活的,可依照程序員的需要,盡可能多地或盡可能少地展現出OpenCL。即使具有很少或者根本沒有OpenCL開發經驗的程序員,也能簡單地調用支持OpenCL功能的cv:: OCL模塊,而無需了解或者編寫一行OpenCL API或OpenCL內核代碼。無論他使用的是APU中集成的GPU,還是獨立顯卡上的GPU,他的程序都能受益於GPU提供的優異的計算能力。事實上,你可以研究cv:: OCL模塊中的OpenCL例子程序,去學習如何在計算機視覺應用問題中使用OpenCL。對於熟悉OpenCV並且具有豐富的開發經驗的程序員,我們也給他們一個驚喜:他們可以利用OpenCV- CL的基礎架構,獲得免費的OpenCL支持輕松的使用OpenCL功能(僅僅只需要他們添加使用一行代碼而已)。然后,程序員可將自己的內核程序插入OpenCV-CL框架,就可以擴展該框架,而無需重新做編譯工作。 AMD特意在APP SDK2.8.1中引入這個互操作功能例子,就是為了說明這個過程是多么容易!

 

AMD開發者網站內,您能找到自己所需的資源,包括利用網站內的社區論壇,幫助自己創建異構計算解決方案。在這個論壇上,您也能分享對OpenCV或AMD APP SDK的建議或意見。我們會傾聽您的想法,讓我們能夠不斷地改進異構計算的軟件開發工具!

 

再者,請積極加入OpenCV論壇為改進OpenCV做出貢獻,或從github獲取最新、最棒的源代碼。請留意更新!我們的目標是借由異構計算使得計算機視覺更快、更方便集成!

 

請盡情享受異構計算帶來的全新體驗!

 

請在這里下載AMD APP SDK2.8.1。為了更好地使用APP SDK2.8.1,建議您升級驅動程序到AMD Catalyst 13.6 Beta2以上。

 

Harris Gasparakis博士是OpenCV-CL的項目經理,技術負責人和布道者。他的文章表達了他的個人意見,並不完全代表AMD的立場,策略或觀點。第三方網站的鏈接和第三方商標引用僅供方便和說明之用。除非明確說明,AMD不負責這些鏈接內的內容,並且沒有認可或暗示任何其產品。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM