日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

基于 OpenCv 和 Python 的手指识别及追踪

發(fā)布時(shí)間:2024/8/23 python 81 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于 OpenCv 和 Python 的手指识别及追踪 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

本文為 AI 研習(xí)社編譯的技術(shù)博客,原標(biāo)題 Finger Detection and Tracking using OpenCV and Python,作者為Jason Brownlee


詳細(xì)代碼參考:https://github.com/amarlearning/opencv


手指追蹤是許多計(jì)算機(jī)視覺應(yīng)用的重要特征。在該應(yīng)用中,使用基于直方圖的方法將手與背景幀分離。 使用閾值處理和濾波技術(shù)來進(jìn)行背景消除以獲得最佳結(jié)果。


我在手指識(shí)別時(shí)遇到的挑戰(zhàn)之一是將手與背景區(qū)分開并識(shí)別手指的尖端。我將向您展示我用于手指跟蹤的技術(shù),我在此項(xiàng)目中使用了該技術(shù)。如果想要查看手指識(shí)別和跟蹤的實(shí)際操作,請(qǐng)觀看我上傳的視頻。



在要跟蹤用戶手部移動(dòng)的應(yīng)用程序中,膚色在要跟蹤用戶手部移動(dòng)的應(yīng)用程序中,膚色直方圖將非常有用。使用直方圖從圖像中剔除背景,僅留下包含膚色的圖像部分。


檢測(cè)皮膚的一種更簡單的方法是找到特定 RGB 或 HSV 范圍內(nèi)的像素。如果您想了解更多有關(guān)此方法的信息,請(qǐng)點(diǎn)擊此處(https://docs.opencv.org/3.4.2/df/d9d/tutorial_py_colorspaces.html)。


上述方法的問題在于改變光線條件和膚色可能會(huì)使皮膚檢測(cè)的結(jié)果很糟糕。另一方面,直方圖往往更準(zhǔn)確,并且直方圖能夠考慮到當(dāng)前的光照條件。



在框架中繪制一個(gè)綠色的長方形并且用戶將他們的手放置在長方形中。應(yīng)用程序提取用戶手掌的膚色,然后繪制成一個(gè)直方圖。


繪制長方形的過程遵循以下函數(shù):



這個(gè)過程非常簡單——我創(chuàng)建了四行代碼來表示每個(gè)長方形的坐標(biāo)。


hand_rect_one_x

hand_rect_one_y

hand_rect_two_x

hand_rect_two_y


這四行代碼不斷迭代以在框架內(nèi)使用:cv2.rectangle 繪制生成長方形;這里的total_rectangle表示行列的長度9。


現(xiàn)在用戶理解了在哪里放置他們的手掌,接下來成功的關(guān)鍵步驟是從這些長方形中提取像素,然后基于像素生成 HSV 直方圖



函數(shù)把輸入框架轉(zhuǎn)換成 HSV 直方圖。使用 Numpy 庫生成一張圖像。圖像大小為[90*10],顏色通道數(shù)為 3。我們將其命名為 ROI (Region of Interest). 它從綠色的長方形中提取了 900 個(gè)像素值,然后將它們放入 ROI 矩陣中。cv2.calcHist 基于 ROI 矩陣給膚色創(chuàng)建了一個(gè)直方圖并且 cv2.normalize 使用 norm 類型對(duì)矩陣進(jìn)行歸一化 cv2.NORM_MINMAX 。現(xiàn)在我們可以用直方圖來檢測(cè)框架中的皮膚區(qū)域。


現(xiàn)在用戶理解了將他們的手掌放在哪里,下一步就是從這些長方形中提取像素然后用它們生成HSV直方圖。


現(xiàn)在基于膚色直方圖我們可以找到包含皮膚的框架區(qū)域,OpenCV 提供了一個(gè)簡便的方法,cv2.calvBackProject,該方法使用直方圖來分離圖像中的特征。我通過這個(gè)函數(shù)來把膚色直方圖應(yīng)用到框架中。如果你想獲取更多關(guān)于 back project 的信息,可以通過鏈接1(https://docs.opencv.org/master/dc/df6/tutorial_py_histogram_backprojection.html)和鏈接2(https://docs.opencv.org/2.4/doc/tutorials/imgproc/histograms/back_projection/back_projection.html)來獲取。


......

翻譯 | 余杭? Lamaric

來源 | 雷鋒網(wǎng)

算法數(shù)學(xué)之美微信公眾號(hào)歡迎賜稿

稿件涉及數(shù)學(xué)、物理、算法、計(jì)算機(jī)、編程等相關(guān)領(lǐng)域,經(jīng)采用我們將奉上稿酬。

投稿郵箱:math_alg@163.com

總結(jié)

以上是生活随笔為你收集整理的基于 OpenCv 和 Python 的手指识别及追踪的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。