[CUDA OpenCV]GPU加速的計算機視覺學習資源下載

2021-03-02 我愛計算機視覺

點擊我愛計算機視覺標星,更快獲取CVML新技術

今天跟大家介紹一本學習CUDA加速的OpenCV的新書《Hands-On GPU-Accelerated Computer Vision with OpenCV and CUDA》。

文末附pdf、code、video下載。

計算機視覺是典型的計算密集型應用,長久以來OpenCV的開發都繞不開加速,降低算法複雜度、開發易於並行的算法、榨乾硬體的計算能力(利用GPU、FPGA等)在實際應用場景中非常重要。

在OpenCV 3的時代,CPU指令級(SSE、AVX、NEON)、CUDA、OpenCL均被支持,甚至官方有過Halide語言(一種專門設計為利用各種硬體加速視覺算法運行的語言)嘗鮮。

在剛剛發布的OpenCV 4中(千呼萬喚始出來,OpenCV 4.0正式發布!),CUDA已被移出主模塊,不得不說很遺憾。

當然支持CUDA 的OpenCV 3會一直可以使用的,畢竟背後有NVIDIA的支持。

比較尷尬的是,除了官方文檔,業內一直沒有特別適合的為初學者準備的GPU加速的CUDA OpenCV教程。

不過今年9月份,Packt出版社的新書《Hands-On GPU-Accelerated Computer Vision with OpenCV and CUDA》,則提供了一套由淺入深的CUDA  OpenCV開發教程,值得相關工程技術人員、學生學習。

該書作者Bhaumik Vaidya博士稱,在計算機視覺中,經常需要實時處理大量圖像,這對於僅能利用CPU的OpenCV往往很難處理。但這卻是CUDA的亮點,它可以允許OpenCV利用功能強大的NVDIA GPU。而本書詳細介紹了如何將OpenCV與CUDA集成到實際應用中。

該書適合對OpenCV有一定了解,但對CUDA OpenCV的開發並不了解的讀者,該書作者稱:

「如果您是OpenCV的開發人員並希望學習如何通過利用GPU來處理更複雜的圖像數據,那麼本書是您的首選指南。 而學習本書前,最好需要全面了解計算機視覺概念和程式語言,如C ++或Python。」

該書共計12章,涵蓋以下內容:

1.了解如何從CUDA程序訪問GPU設備屬性和功能;

2.了解如何加快搜索和排序算法;

3.檢測圖像中的線條和圓形等形狀;

4.使用算法探索對象跟蹤和檢測;

5.在Jetson TX1中使用不同的視頻分析技術處理視頻;

6.從PyCUDA程序訪問GPU設備屬性;

7.了解內核執行的工作原理。

每章均配有代碼,並錄製了10個視頻教程。

作為該領域最新的相關開發教程,非常值得參考。

資源下載

在「我愛計算機視覺」微信公眾號對話界面回復「CUDA-OpenCV」,即可收到原書PDF(英文)、各章節Code、課程Video百度雲下載地址。

https://github.com/PacktPublishing/Hands-On-GPU-Accelerated-Computer-Vision-with-OpenCV-and-CUDA

加群交流

關注計算機視覺與機器學習技術,歡迎加入52CV群,掃碼添加52CV君拉你入群(請務必註明:加群):

喜歡在QQ交流的童鞋,可以加52CV官方QQ群:928997753。

(不會時時在線,如果沒能及時通過驗證還請見諒)

更多技術乾貨,詳見:

"我愛計算機視覺"精華文章分類匯總(2018年12月13日)

長按關注我愛計算機視覺

【點讚與轉發】就是一種鼓勵

相關焦點

  • OpenCV 強大的開源計算機視覺庫
    計算機視覺是人工智慧的一個交叉領域,意圖賦予計算機和其它具有計算能力的電子設備高層次的對圖像和視頻的理解能力。
  • 【CUDA學習筆記】第八篇:源碼編譯OpenCV+CUDA模塊(完整源碼打包一次成功編譯)
    此刻開始我們一起學習進步!1、OpenCV+CUDA+Contrib的源碼編譯2、OpenCV+CUDA+Contrib的測試3、源碼級相關難下載文件的集成下載(附連結)1、OpenCV+CUDA+Contrib的源碼編譯1、cmake軟體打開,選擇opencv源碼文件夾
  • 視覺算法工業部署及優化學習路線分享
    2017年:比你大一屆,本人也是20屆的渣渣碩士,剛剛上研的時候,和大多數「內捲兒」一樣,我也很幸運被老闆安排了「計算機視覺&圖像處理&模式識別」的研究方向。屁顛屁顛的開始看cvpr,iccv的paper。
  • 【CUDA學習筆記】第五篇:內存以及案例解釋(附案例代碼下載方式)
    此刻開始我們一起學習進步!N * sizeof(float), cudaMemcpyHostToDevice);cudaMemcpyToSymbol(constant_f, &h_f, sizeof(int), 0, cudaMemcpyHostToDevice);cudaMemcpyToSymbol(constant_g, &h_g, sizeof(int));gpu_constant_memory <
  • 【CUDA學習筆記】第九篇:基本計算機視覺操作【上】(附實踐源碼下載)
    此刻開始我們一起學習進步!由於這是個計算密集的步驟,因此CUDA加速將有助於提高程序的性能。OpenCV為直方圖均衡提供equalizeHist函數,需要兩個參數:第一個參數是源圖像,第二個參數是目標圖像。然後將目標圖像下載回主機,並顯示在控制臺上。直方圖均衡後的輸出如圖        可以看出,經過直方圖均衡的圖像比原始圖像的視覺質量更好。
  • 獨家 | 如何為計算機視覺和深度學習安置英偉達?
    標籤:計算機視覺,深度學習之前我們討論了如何使用我的 pre-configured Nano .img file,那今天,你將學習從頭開始想學習如何安置你自己的Nano。本教程需要你有至少48小時的空餘時間完成你英偉達 Jetson Nano 的自主安置(是的,這就是這麼有挑戰)。
  • 【2020新書】深度學習計算機視覺,467頁pdf用Python實戰OpenCV和TensorFlow
    利用實用的、循序漸進的方法運用計算機視覺和機器學習概念開發商業和工業應用。
  • 「python opencv 計算機視覺零基礎實戰」第一節
    前置條件說明:本系列opencv實戰教程將從基礎到實戰,若只是簡單學習完python也可以通過該教程完成一般的機器學習編程;文中將會對很多python的基礎內容進行講解,但由於文章定位的原因將不會贅述過多的基礎內容,基礎內容進行第一次講解後第二次將不會過多贅述,本文主要講解的是opencv相關知識。
  • 基於RTX2060構建TensorFlow-gpu(keras)學習平臺
    建立虛擬環境:conda create --name tf36gpu python=3.6 anaconda2. 激活虛擬環境:activate tf36gpu3.如果機器上有gpu,則安裝gpu版本,沒有GPU就安裝cpu版。版本問題,現在TensorFlow到了最新的2.0.0版本,但是很多函數不兼容1.**版本。因此利用1.14版本,最新是1.15後面幾沒有版本了。2. 安裝tensorflow:pip install tensorflow-gpu==1.143.
  • Pytorch-GPU1.7.1 和 TensorFlow-GPU1.14.0 安裝指南(基於windows10)
    GPU的並行計算能力,在過去幾年裡恰當地滿足了深度學習的需求。AMD的GPU基本沒有什麼支持,可以不用考慮。驅動:沒有顯卡驅動,就不能識別GPU硬體,不能調用其計算資源。CUDA:是顯卡廠商NVIDIA推出的只能用於自家GPU的並行計算框架。只有安裝這個框架才能夠進行複雜的並行計算。主流的深度學習框架也都是基於CUDA進行GPU並行加速的,幾乎無一例外。
  • 寫CUDA到底難在哪?
    編輯:深度學習與計算機視覺作者:Keepinhttps://www.zhihu.com/question/437131193/answer/1658645679cuda目前主要事利用GPU的特性進行加速,使用cuda進行加速有幾個重要點需要考慮:如果一個算法無法通過並行加速,那麼可以考慮放棄用cuda實現,因為這樣cuda實現沒有太大的效益。
  • GPU並行編程:熟練使用CUDA C語言
    這並不是什麼新概念,並行計算已經存在多年,PC使用多個CPU並行處理任務,提高不同應用程式的執行速度,你可以將上面提到的「人」看作一個進程或一個線程,計算機可以將每個進程分配給不同的處理器,接收到任務的所有處理器並行執行一個任務(計算)。
  • OpenCV能做哪些好玩的項目?適合初學者學習的五個計算機視覺項目
    OpenCV是一個基於BSD許可(開源)發行的跨平臺計算機視覺庫,可以運行在Linux、Windows、Android和Mac OS作業系統上。它輕量級而且高效——由一系列 C 函數和少量 C++ 類構成 ,同時提供了Python、Ruby、MATLAB等語言的接口,實現了圖像處理和計算機視覺方面的很多通用算法。自 2000 年第一個開源版本發布以來,受到了很多計算機視覺領域開發者的喜愛,也不斷有開發者投身計算機視覺領域中,今天 Gitee 推薦的開源項目就是為 OpenCV 初學者們準備的,一起來看看吧。
  • 【計算機視覺處理一】OpenCV入門
    OpenCV是一個跨平臺且開源的計算機視覺和機器學習庫,全稱Open Source Computer Vision Library 。由Intel公司開源。其中主體庫的代碼是Intel用C/C++編寫的,部分貢獻庫代碼由社區程式設計師提供。OpenCV不僅支持多個平臺,同時還提供了多種語言的接口,包括Java、Python、Ruby等。本次課程使用的Python語言。
  • 小叮噹機器學習:Python3.6配置TensorFlow的GPU版詳細安裝教程
    Step1.環境確認想要使用GPU版的TesnorFlow來加速我們的神經網絡運算,首先要確保,我們的GPU依賴環境已經搭好。值得注意:此時下載速度極慢,只有83KB/s,於是我們使用命令:pip install tensorflow-gpu -i https://pypi.doubanio.com/simple/ 從豆瓣鏡像中下載,發現速度為11.9MB
  • CUDA之CUDA編程模型概述(一)
    Keywords: CUDA編程模型,CUDA編程結構,內存管理,線程管理,CUDA核函數,CUDA錯誤處理開篇廢話過年了,祝大家新年快樂,新年希望自己學習的東西能都學會這是一隻不愛學習的狗,總看電視!
  • 深度學習筆記15:ubuntu16.04 下深度學習開發環境搭建與配置
    深度學習筆記6:神經網絡優化算法之從SGD到Adam深度學習筆記7:Tensorflow入門深度學習筆記8:利用Tensorflow搭建神經網絡深度學習筆記9:卷積神經網絡(CNN)入門深度學習筆記10:三維卷積、池化與全連接深度學習筆記11:利用numpy搭建一個卷積神經網絡
  • 深度學習環境搭建
    如果要學習如何在Linux作業系統中下載和安裝CUDA9.0、cudnn7.3、tensorflow_gpu1.10,請瀏覽本文作者的另外一篇文章《在谷歌雲伺服器上搭建深度學習平臺》,連結:https://www.jianshu.com/p/893d622d1b5a《在谷歌雲伺服器上搭建深度學習平臺》這篇文章中有部分內容是如何建立和連接雲虛擬機,這部分內容對於擁有Linux主機的讀者是無用的
  • 不知道這 7 大 OpenCV 函數怎麼向計算機視覺專家進階?
    作者 | Lazar Gugleta譯者 | Arvin,責編 | 夕顏頭圖 | CSDN付費下載自視覺中國計算機視覺和計算機圖形學現在非常流行,因為它們與人工智慧息息相關,它們主要的共同點是使用同一個OpenCV庫,以理解數字圖像或視頻(CV)或生成圖像(CG)中深層含義。
  • 入門計算機視覺OpenCV
    同濟子豪兄6節課帶你掌握OpenCV下拉文末,加入課程交流群 計算機視覺顧名思義就是讓計算機或者其他電子設備具有類似人類的視覺系統,可以通過採集的圖片或視頻進行處理,從而獲得場景或事物的三維信息,並進行識別判斷。