小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

使用 OpenCV 進(jìn)行運(yùn)動(dòng)檢測(cè)

 小白學(xué)視覺(jué) 2021-10-04

重磅干貨,第一時(shí)間送達(dá)

Raspberry Pi 3 上的 OpenCV 運(yùn)動(dòng)檢測(cè)

這篇文章將解釋如何實(shí)現(xiàn)基本的運(yùn)動(dòng)檢測(cè),這可以用于我們的基于觸發(fā)器的監(jiān)控系統(tǒng)。

什么是 OpenCV?

OpenCV 是一個(gè)開(kāi)源的計(jì)算機(jī)視覺(jué)庫(kù),它的目標(biāo)是提供一個(gè)簡(jiǎn)單易用的計(jì)算機(jī)視覺(jué)基礎(chǔ)設(shè)施,幫助人們快速構(gòu)建復(fù)雜的應(yīng)用程序。它包含 500 多項(xiàng)功能,涵蓋許多視覺(jué)領(lǐng)域,包括工廠產(chǎn)品檢測(cè)、醫(yī)學(xué)成像、安全、用戶界面、相機(jī)校準(zhǔn)、立體視覺(jué)和機(jī)器人技術(shù)。

— 學(xué)習(xí) OpenCV,Gary Bradski 和 Adrian Kaehler,O'Reilly

安裝 OpenCV

我們指的是PiImageSearch安裝OpenCV的教程以及本文檔。在開(kāi)始安裝之前,只需更新系統(tǒng)—sudo apt update

1.安裝庫(kù)和依賴項(xiàng)

$ sudo apt-get install libjpeg-dev libpng-dev libtiff-dev $ sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev $ sudo apt-get install libxvidcore-dev libx264-dev

2.安裝GTK(GUI后端)

$ sudo apt-get install libgtk-3-dev $ sudo apt-get install libcanberra-gtk*

3. OpenCV的數(shù)值優(yōu)化

$ sudo apt-get install libatlas-base-dev gfortran

4. Python3 開(kāi)發(fā)頭文件

$ sudo apt-get install python3.7-devAfter installing to check if the dev files are installed in correct directory check using this command$ python3.7-config --includes-I/usr/include/python3.7m -I/usr/include/python3.7mThe first path is expected and second is current path. If they are not the same then you need to perform a copy command to change the current path$ sudo cp /current/path/to/dev/file/pyconfig.h /usr/include/python3.7mpyconfig.h is the dev file that you need to copy to correct directory

5.安裝pip

$ sudo apt-get install python3-pipIf this won't work then use the following commands$ wget https://bootstrap./get-pip.py$ sudo python3 get-pip.py$ sudo apt autoremoveIf pip is already installed then make sure it's the latest version $ pip --versionIf not then - $ pip install --upgrade pip

6.虛擬環(huán)境

$ sudo pip install virtualenv virtualenvwrapper$ sudo rm -rf ~/get-pip.py ~/.cache/pipUpdate .bashrc to finish installing the tools, use nano or similar text editor - # virtualenv and virtualenvwrapperexport WORKON_HOME=$HOME/.virtualenvsexport VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3source /usr/local/bin/virtualenvwrapper.shsave and exitAnd finally create the virtual environment- $ mkvirtualenv cv -p python3Verify if cv environment is working or not - $ workon cv(cv) pi@raspberrypi:~$(cv) indicates that we are inside a virtual environment

7.其他庫(kù)

Install Numpy$ pip install numpyInstall imutils$ pip install imutils

8.最后是 OpenCV

當(dāng)我們嘗試安裝 OpenCV 時(shí),安裝需要花費(fèi)大量時(shí)間,即使反復(fù)嘗試安裝,RasPi 仍然掛起。增加交換內(nèi)存讓我們?cè)跊](méi)有內(nèi)存耗盡的情況下編譯 OpenCV,Pi 不會(huì)掛起。即使在增加交換內(nèi)存后,在我們的 Pi 3 上安裝也需要大約 5 小時(shí)。

$ sudo nano /etc/dphys-swapfileEdit CONF_SWAPSIZE asCONF_SWAPSIZE=2048

保存并退出,使用這些命令檢查交換內(nèi)存 。

$ free -m$ swapon -s

增加交換內(nèi)存只占用SD卡的空間,所以增加交換內(nèi)存后只執(zhí)行OpenCV安裝。

現(xiàn)在安裝 OpenCV

$ pip install opencv-python$ pip install opencv-contrib-python // Ref.

裝完成后,將交換內(nèi)存恢復(fù)為原始值。CONF_SWAPSIZE=100

驗(yàn)證 OpenCV 是否安裝成功 :

驗(yàn)證 OpenCV 安裝

實(shí)現(xiàn)

我們使用 piimagesearch 的教程來(lái)實(shí)現(xiàn)基本的運(yùn)動(dòng)檢測(cè),它提供了開(kāi)源的代碼,并且可以下載。當(dāng)我在Pi上運(yùn)行此代碼時(shí),出現(xiàn)了此錯(cuò)誤。

運(yùn)行代碼時(shí)出錯(cuò)

當(dāng)我搜索imshow功能時(shí),我明白代碼需要X-server才能運(yùn)行。因?yàn)槲艺趯?duì)我的 Pi 執(zhí)行 ssh,所以代碼沒(méi)有運(yùn)行。運(yùn)行此命令使我可以在 ssh 期間訪問(wèn) X-server。

ssh -Y pi@<IP>

然后我再次運(yùn)行python代碼,我得到了這三個(gè)窗口——

運(yùn)行 piimagesearch 的 Python 代碼

根據(jù)教程,代碼需要第一幀為空來(lái)檢測(cè)該區(qū)域是被占用還是未被占用。

3個(gè)窗口分別是:


Thresh基本上是使用圖像閾值創(chuàng)建的,該閾值用于使圖像更易于分析。


Frame Delta,這是一個(gè)灰度圖像。


Security Feed,是最后的視頻源,它顯示框架中是否有人,該區(qū)域是否已被占用/未占用。

這段代碼非?;A(chǔ),正如我們所看到的,即使框架中只有我,代碼也會(huì)感應(yīng)其他運(yùn)動(dòng),就像電風(fēng)扇的一片扇葉一樣,并且有多個(gè)塊,所以需要更多的邏輯來(lái)建立在它之上。

這個(gè)實(shí)現(xiàn)還幫助我們了解我們是否可以在像Raspberry Pi這樣的低規(guī)格系統(tǒng)中實(shí)現(xiàn) OpenCV。盡管從介紹的 GIF 中可以看出,響應(yīng)速度很慢,但這是運(yùn)動(dòng)檢測(cè)的基本演示,我將在以后的文章中介紹更多用例。

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多