黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

如何在 Windows 安裝 OpenPose 跟使用 Python API

系統(tǒng) 2449 0
原文鏈接: https://blog.techbridge.cc/2019/01/18/openpose-installation/

原文鏈接:https://blog.techbridge.cc/2019/01/18/openpose-installation/

注:轉(zhuǎn)載如有侵權(quán),請馬上聯(lián)系刪除。

如何在 Windows 安裝 OpenPose 跟使用 Python API 來偵測人體姿態(tài)

?

前言 如何在 Windows 安裝 OpenPose 跟使用 Python API 來偵測人體姿態(tài)_第1張圖片

?

OpenPose?是 Carnegie Mellon University(CMU)論文實作的開源函式庫,提供的功能主要就是可以偵測人體的各部位在什麼地方,例如可以在影像中找到臉、身體、手等等地方的特徵點。但他厲害的地方在於可以一次偵測很多人,看看下面這張圖就知道

如何在 Windows 安裝 OpenPose 跟使用 Python API 來偵測人體姿態(tài)_第2張圖片

這個 repository 仍然相當?shù)?active,有兩個 CMU 的學生常常在 Github 上面解 issue。這次因為筆者需要在 Windows 上面安裝 OpenPose 並呼叫 Python API,所以跟開發(fā)者有不少互動,才想到乾脆來寫一篇教學,讓之後想要使用 OpenPose 的讀者可以省去好幾天的環(huán)境安裝 debug。

OpenPose 演算法簡介

如何在 Windows 安裝 OpenPose 跟使用 Python API 來偵測人體姿態(tài)_第3張圖片

上面是 OpenPose 的架構(gòu)圖,輸入會是一張大小為 w x h 的彩色影像;接著會先經(jīng)過 Stage 0 的 VGG-19 Network,得到輸入影像的 feature map;然後會在 Stage 1 經(jīng)過一些 CNN 來得到身體各部位的 confidence map。Stage 1 分成兩個 branch,branch 1 可以產(chǎn)生某特定部位的 confidence map,例如左肩的 confidence map:

如何在 Windows 安裝 OpenPose 跟使用 Python API 來偵測人體姿態(tài)_第4張圖片

branch 2 則是產(chǎn)生不同身體部位之間的關(guān)聯(lián)性,例如脖子跟左肩的關(guān)係:

如何在 Windows 安裝 OpenPose 跟使用 Python API 來偵測人體姿態(tài)_第5張圖片

最後結(jié)合這些結(jié)果就可以得到全身各部位大致在什麼地方,還有彼此相對位置的關(guān)係。以上的講法有點過於簡化,有興趣的讀者可以看看延伸閱讀 1 的原始論文。

Windows 安裝步驟

  1. 確認一下你的硬體跟作業(yè)系統(tǒng)符合?OpenPose 要求

  2. Clone OpenPose 的原始碼

    因為我們要使用 Python API,所以不能只是下載已經(jīng)編譯好的 library 文件,必須要從原始碼開始編譯。我推薦大家可以用 Github Desktop 來下載原始碼 & 管理。

  3. 下載並安裝 CMake GUI

    可以上?CMake 的網(wǎng)站下載,Windows 的話請下載? cmake-X.X.X-win64-x64.msi

  4. 安裝 Visual Studio 2015

    OpenPose 的官方要求是 Visual Studio 2015 Enterprise Update 3,但似乎也有人用 Visual Studio 2015 Community 安裝成功。筆者是用 Enterprise 版本安裝成功的。

  5. 安裝 CUDA

    官方推薦的版本是 CUDA 8。這一步要在安裝完 Visual Studio 之後做,因為安裝過程會產(chǎn)生一些 Visual Studio 需要的檔案。

  6. 安裝 cuDNN

    官方建議安裝 5.1 版本。安裝方法很簡單,只要把下載的壓縮檔內(nèi)容解壓縮到? C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0 ?路徑就好。(cuDNN 壓縮檔裡面會有三個資料夾,可以對應到? C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0 ?裡面也有的資料夾,分別把檔案放到對應的資料夾就好)。

  7. 開始設定 CMake 來準備編譯需要的檔案

    • 設定檔案路徑(在 clone 下來的路徑中自己創(chuàng)一個 build 資料夾,並設定成? Where to build the binaries
      如何在 Windows 安裝 OpenPose 跟使用 Python API 來偵測人體姿態(tài)_第6張圖片

    • 按下 Configure 按鈕(generator 記得選 Visual Studio 14 2015 Win64)
      如何在 Windows 安裝 OpenPose 跟使用 Python API 來偵測人體姿態(tài)_第7張圖片
      如何在 Windows 安裝 OpenPose 跟使用 Python API 來偵測人體姿態(tài)_第8張圖片

    • 等待 Configure Done 如何在 Windows 安裝 OpenPose 跟使用 Python API 來偵測人體姿態(tài)_第9張圖片

    • 勾選 BUILD_PYTHON 如何在 Windows 安裝 OpenPose 跟使用 Python API 來偵測人體姿態(tài)_第10張圖片

    • 按下 Generate

  8. 用 Visual Studio 2015 打開? build/OpenPose.sln ?檔案

  9. 切換到 Release Mode 並 Build Project

這一步很重要,因為只用 Debug Mode build 會讓後面的 Python API 啟動失敗。詳見?issue 1026。

Python API 呼叫步驟

如果上面的步驟都做完,應該可以在? openpose\build\python\openpose\Release ?看到? openpose_python.cp36-win_amd64.pyd ?library 文件。(OpenPose 原生是用 C++ 寫的,是用 pybind11 包成 Python 可以呼叫的 library)。

接著,我們準備要來跑? openpose\build\examples\tutorial_api_python\1_body_from_image.py ,要記得把裡面的 library 搜尋路徑改成自己的:

我可以跑起來的範例如下:

?
                    
                      # Import Openpose (Windows/Ubuntu/OSX)
dir_path = os.path.dirname(os.path.realpath(__file__))
try:
# Windows Import
if platform == "win32":
# Change these variables to point to the correct folder (Release/x64 etc.)
sys.path.append(dir_path + '/../../python/openpose/Release');
os.environ['PATH'] = os.environ['PATH'] + ';' + dir_path + '/../../x64/Release;' + dir_path + '/../../bin;'
import openpose_python as op

                    
                  

這時,你就可以去 cmd.exe 執(zhí)行,執(zhí)行下列步驟

?
                    
                      ::切換到你自己的 openpose 路徑
cd openpose\build\examples\tutorial_api_python
python 1_body_from_image.py

                    
                  

然後跑出下面的結(jié)果:

總結(jié)

今天跟大家介紹了 CMU 的 OpenPose 要怎麼安裝,也稍微介紹了 Python API 要怎麼使用,理論上學完這篇教學的內(nèi)容後,你就可以用 Python 呼叫 OpenPose 的 API 來實作自己想要的更高階功能了。希望對你的研究或 project 有幫助!

延伸閱讀

  1. Convolutional Pose Machines

關(guān)於作者:
@pojenlai?演算法工程師,對機器人、電腦視覺和人工智慧有少許研究,正在學習用心體會事物的本質(zhì)跟不斷進入學生心態(tài)改進。

喜歡我們的文章嗎?歡迎分享按讚給予我們支持和鼓勵!


更多文章、技術(shù)交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論