樹莓派筆記RaspberryPi -(11) Bullseye安裝python OpenCV模組

更新於 發佈於 閱讀時間約 4 分鐘

  在樹莓派安裝OpenCV一直是個頭大的問題,有些教學寫要編譯,有些寫pip就可以,基本上就是一些版本不同造成的差異。最近想把window環境開發的影線辨識程式移過來測試又從系統安裝從頭搞了一次,順手紀錄。板子是樹莓派3B(沒有+),系統raspbian bullseye 32bit灌到USB隨身碟,特別提到os位元是因為會影響tensorflow的安裝。必須有的python模組是opencv4.x、qt5、matplotlib。先把os灌好之後開機,進terminal,安裝流程如下:


更新軟體資訊和列表

sudo apt-get update

更新已安裝軟體為最新版,有詢問都自動yes。Bullseye安裝好開機進桌面右上角其實有個提醒可以更新所有軟體的icon,點那個就可以不用自己執行這兩個步驟。

sudo apt-get upgrade -y

安裝opencv基本包,版本隨便,最好指定舊一點的版本,否則會卡在『Building wheel for opencv-python (PEP 517) ... -』到天荒地老然後timeout,我選的是python3.9可以裝的最舊版本。

pip install opencv-python==3.4.10.37

安裝真正要用的cv版本完整包,btw python2終於在bullseye從預設軟體裡消失了,沒有必要再用pip3把模組裝到python3下了

pip install opencv-contrib-python==4.4.0.46

安裝opencv依賴的庫,最後兩個有些指引說要裝但我實測是已經被廢棄了無法安裝。

sudo apt-get install libatlas-base-dev -y
sudo apt-get install libjasper-dev -y
sudo apt-get install libhdf5-dev -y
sudo apt-get install libv4l-dev -y
sudo apt-get install libqtgui4 -y
sudo apt-get install libqt4-test -y

安裝qt5以及designer等開發工具,開發工具不是必須的但蠻好用的所以要裝。

sudo apt-get install python3-pyqt5 -y
sudo apt-get install qttools5-dev-tools -y

順便裝常用的模組,其中scipy、matpplotlib跟windows不一樣不能用pip安裝。

pip install beautifulsoup4
pip install dilb
pip install pyaudio
pip install pygame
pip install colorama
pip install pyvisa
pip install selenium
pip install virtualenv
pip install pyqt-5
pip install pyqt-led
sudo apt install python3-scipy python3-matplotlib

最後隨便一個IDE開個.py檔用以下程式碼測試cv2能不能正確被import,有時候opencv會發生裝完沒跳錯(通常是錯誤埋在一堆訊息裡),然後import會報錯的狀況。

import cv2
print(cv2.__version__)

有空再整理用隨身碟安裝系統還有tensorflow2的紀錄。

後記:測試完程式發現影像檔的處理效率爆差,查了很久結果是從pip安裝的標準wheel沒有支援libv4l,就算有灌也沒用,結果要自己編譯opencv然後啟動lbv4l的支援。


留言
avatar-img
留言分享你的想法!
avatar-img
hls Ding的沙龍
7會員
64內容數
ktest
hls Ding的沙龍的其他內容
2025/03/06
import csv import os folder = 'D:/PROGRAMMING/PythonCode/data_arrange/' fname_sum = 'sum.csv' bump = 6 csv_filenames = [f for f in os.listdir(folde
2025/03/06
import csv import os folder = 'D:/PROGRAMMING/PythonCode/data_arrange/' fname_sum = 'sum.csv' bump = 6 csv_filenames = [f for f in os.listdir(folde
看更多
你可能也想看
Thumbnail
介紹朋友新開的蝦皮選物店『10樓2選物店』,並分享方格子與蝦皮合作的分潤計畫,註冊流程簡單,0成本、無綁約,推薦給想增加收入的讀者。
Thumbnail
介紹朋友新開的蝦皮選物店『10樓2選物店』,並分享方格子與蝦皮合作的分潤計畫,註冊流程簡單,0成本、無綁約,推薦給想增加收入的讀者。
Thumbnail
當你邊吃粽子邊看龍舟競賽直播的時候,可能會順道悼念一下2300多年前投江的屈原。但你知道端午節及其活動原先都與屈原毫無關係嗎?這是怎麼回事呢? 本文深入探討端午節設立初衷、粽子、龍舟競渡與屈原自沉四者。看完這篇文章,你就會對端午、粽子、龍舟和屈原的四角關係有新的認識喔。那就讓我們一起解開謎團吧!
Thumbnail
當你邊吃粽子邊看龍舟競賽直播的時候,可能會順道悼念一下2300多年前投江的屈原。但你知道端午節及其活動原先都與屈原毫無關係嗎?這是怎麼回事呢? 本文深入探討端午節設立初衷、粽子、龍舟競渡與屈原自沉四者。看完這篇文章,你就會對端午、粽子、龍舟和屈原的四角關係有新的認識喔。那就讓我們一起解開謎團吧!
Thumbnail
pip 的安裝、使用,多種功能一一展示,完整教學
Thumbnail
pip 的安裝、使用,多種功能一一展示,完整教學
Thumbnail
在 Linux 系統創建 python 虛擬環境的詳細流程 (完全不需要 Anaconda)
Thumbnail
在 Linux 系統創建 python 虛擬環境的詳細流程 (完全不需要 Anaconda)
Thumbnail
  環境佈置很重要!!所以按照這樣的方法下去安裝未來使用的時候才不會很麻煩,而且python會有很多外來模組要安裝,因此安裝路徑一定要設定好,未來找尋的時候才找的到,版本的差異沒有調整好也有可能用到最後有些會出現各種錯誤。所以環境佈置這真的很重要!!很重要!!很重要!!
Thumbnail
  環境佈置很重要!!所以按照這樣的方法下去安裝未來使用的時候才不會很麻煩,而且python會有很多外來模組要安裝,因此安裝路徑一定要設定好,未來找尋的時候才找的到,版本的差異沒有調整好也有可能用到最後有些會出現各種錯誤。所以環境佈置這真的很重要!!很重要!!很重要!!
Thumbnail
  2023/Apr/8 補充更新 - 想訓練AI模型的人,建議正常安裝Python和Git,理由如下:
Thumbnail
  2023/Apr/8 補充更新 - 想訓練AI模型的人,建議正常安裝Python和Git,理由如下:
Thumbnail
在樹莓派安裝OpenCV的紀錄。板子是樹莓派3B(沒有+),系統raspbian bullseye 32bit灌到USB隨身碟。
Thumbnail
在樹莓派安裝OpenCV的紀錄。板子是樹莓派3B(沒有+),系統raspbian bullseye 32bit灌到USB隨身碟。
Thumbnail
Python安裝、外部程式包安裝(pip install xxx)、Hello World 【安裝Python】 Visual Studio Code-Download 進入vscode(延伸模組) 安裝中文介面(輸入ch搜尋) 安裝 搜尋命令提示字元 命令提示字元打python 創建檔案
Thumbnail
Python安裝、外部程式包安裝(pip install xxx)、Hello World 【安裝Python】 Visual Studio Code-Download 進入vscode(延伸模組) 安裝中文介面(輸入ch搜尋) 安裝 搜尋命令提示字元 命令提示字元打python 創建檔案
Thumbnail
初玩python時常用pip安裝各式各樣的套件下來,而這些套件在本機中是以全域的方式安裝。假設今天需要接手別人的專案,所用的套件版本不相容,對於這些仰賴的套件(依賴dependencies)進行管理跟切分就成了一個課題。
Thumbnail
初玩python時常用pip安裝各式各樣的套件下來,而這些套件在本機中是以全域的方式安裝。假設今天需要接手別人的專案,所用的套件版本不相容,對於這些仰賴的套件(依賴dependencies)進行管理跟切分就成了一個課題。
Thumbnail
PYTHON 介紹 Python 是一種被廣泛使用的高階編程語言,它的用途十分廣泛,支援了多種的程式設計的範式,包括函數式、指令式、結構化、物件導向。 Python的設計哲學強調了它簡潔的語法,是使用空格縮進來劃分程式碼。 Python是的社群中擁有許多模組可以使用,在進行某些用途時可以很引入模組,
Thumbnail
PYTHON 介紹 Python 是一種被廣泛使用的高階編程語言,它的用途十分廣泛,支援了多種的程式設計的範式,包括函數式、指令式、結構化、物件導向。 Python的設計哲學強調了它簡潔的語法,是使用空格縮進來劃分程式碼。 Python是的社群中擁有許多模組可以使用,在進行某些用途時可以很引入模組,
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News