
前言
Python是現如今在人工智能領域較為熱門的程式設計語言,因其簡潔的語言風格、豐富的類庫支援以及具有活躍的交流社群,受到廣大開發者的喜愛。起初,python是一門輔助科學研究的一門語言,但因其在當今大熱的大資料、人工智能領域得到大量運用,受到衆多開發人員的追捧。Python也同樣可在樹莓派中運作,畢竟樹莓派就是一台簡易的Linux電腦。
那我們該如何在利用python在樹莓派中進行人臉識别呢?這就需要用到一個庫 opencv(當然也其他庫可供選擇,這裡就隻介紹opencv)
什麼是opencv
OpenCV是一個用于圖像處理、分析、機器視覺方面的開源函數庫.
不管你是做科學研究,還是商業應用,opencv都能夠作為你理想的工具庫,由于,對于這兩者,它全然是免費的。 該庫採用C及C++語言編寫,能夠在windows, linux, mac OSX系統上面執行。該庫的全部代碼都經過優化,計算效率非常高,由于,它更專注于設計成為一種用于實時系統的開源庫。opencv採用C語言進行優化,并且,在多核機器上面,其執行速度會更快。它的一個目标是提供友好的機器視覺接口函數,進而使得複雜的機器視覺産品能夠加速面世。該庫包括了橫跨工業産品檢測、醫學圖像處理、安防、使用者界面、攝像頭标定、三維成像、機器視覺等領域的超過500個接口函數。
同一時候,由于計算機視覺與機器學習密不可分,該庫也包括了比較經常使用的一些機器學習算法。也許,非常多人知道,圖像識别、機器視覺在安防領域有所應用。但,非常少有人知道,在航拍圖檔、街道圖檔(比如google street view)中,要嚴重依賴于機器視覺的攝像頭标定、圖像融合等技術。 近年來,在入侵檢測、特定目标跟蹤、目标檢測、人臉檢測、人臉識别、人臉跟蹤等領域,opencv可謂大顯身手,而這些,不過其應用的冰山一角。
現在,來自世界各地的各大公司、科研機構的研究人員,共同維護支援着opencv的開源庫開發。這些公司和機構包括:微軟,IBM,索尼、西門子、google、intel、斯坦福、MIT、CMU、劍橋。
安裝最新python版本
為了確定一些最新的東西能夠被使用,我建議有必要安裝一個python3x版本。目前網上一些最新的教程基本都使用的python3版本,python3相對于python2進行了一些重構,是以能在python3上運作的代碼在python2不一定能運作,為了避免一些不必要的麻煩,安裝一個最新版本的python顯得非常重要。
安裝 python3在下載下傳前若你沒有更換軟體源,為了節約下載下傳時間,建議更換軟。什麼?不知道如何更換軟體源?請看這《更換軟體源》 當然,要是你時間不是問題,你大可忽略。
1、在指令視窗輸入如下指令下載下傳python3:
sudo apt install python3
2、删除掉原先 python 的連結
sudo rm /usr/bin/python
3、建立一個新的連結指向剛剛安裝的 python3
sudo ln -s /usr/bin/python3 /usr/bin/python
4、測試
在指令視窗輸入
python3
若能正常輸出python3x版本則安裝成功。
安裝opencv
python3在樹莓派中安裝opencv的方式有兩種,一種是編譯安裝,另一種是pip指令安裝。前者編譯安裝往往需要花費數小時時間,出現錯誤也會被整的挺煩躁的,對于大型項目就建議使用編譯安裝,但對于我們這些做些小項目的初學者,pip指令安裝僅需幾分鐘就能完成,何樂而不為呢。
這裡我隻介紹pip安裝。當然,如果你有編譯安裝的需求可看這篇文章:https://zhuanlan.zhihu.com/p/46032511
1、安裝依賴請逐條執行以下指令:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libhdf5-dev libhdf5-serial-dev
sudo apt-get install libqtgui4 libqtwebkit4 libqt4-test python3-pyqt5
sudo apt-get install libatlas-base-dev
sudo apt-get install libjasper-dev
這些安裝包保證了OpenCV的基礎運作
2、安裝opencvsudo pip3 install --no-cache-dir opencv-contrib-python==3.4.3.18
經過幾分鐘的等待之後,opencv就可安裝完成了。
3、測試是否成功安裝依次運作如下指令: sudo python3 >>> import cv2 >>> print(cv2.
version) 能正常輸出安裝版本則代表安裝成功。
在python中運作opencv
在樹莓派自帶的python IDE中運作以下代碼即可調用攝像頭。
什麼?你不知道如何在樹莓派安裝攝像頭?請看這篇文章:《樹莓派攝像頭》
python代碼:
import cv2 # 導入庫
cap = cv2.VideoCapture(0) # 開啟攝像頭
# 循環讀取圖像
while True:
ok, img = cap.read() # 讀取攝像頭圖像
if ok is False:
print('無法讀取到攝像頭!')
break
# 展示圖像
cv2.imshow('image', img)
k = cv2.waitKey(10) # 鍵盤值
if k == 27: # 通過esc鍵退出攝像
break
# 關閉攝像頭
cap.release()
cv2.destroyAllWindows()
運作效果
結尾
到這裡OpenCV就安裝成功了,對于圖像識别你有啥想法就盡情嘗試吧~
參考來源
- 什麼是opencv:https://blog.csdn.net/wtfloser/article/details/89315982
- 更新樹莓派python版本:https://www.jianshu.com/p/61b3119ab3f5
- 在樹莓派上安裝基于python3的OpenCV:https://zhuanlan.zhihu.com/p/92184435
原文
在樹莓派上基于Python3安裝OpenCV - 小A的個人站blog.fasv.top