精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

在樹莓派64位上安裝TensorFlow

jf_70714899 ? 來源:jf_70714899 ? 作者:jf_70714899 ? 2023-05-15 13:46 ? 次閱讀
「樹莓派」「上海晶珩」「EDATEC」在 Raspberry Pi 64 位 OS 上安裝 TensorFlow

介紹

本頁將指導您在Raspberry Pi 4 64位操作系統Bullseye 上安裝 TensorFlow 2.10.0 或更早版本。

TensorFlow是一個專門為深度學習開發的大型軟件庫。它消耗大量資源。你可以在Raspberry Pi 4上執行TensorFlow,但不要指望奇跡。它可以運行您的模型,如果不是太復雜,但它將無法訓練新模型。它也不能執行所謂的遷移學習。除了運行預先構建的深度學習模型外,您還可以使用該庫將所謂的凍結 TensorFlow 模型轉換為 TensorFlow Lite 平面緩沖區模型。

如果你只是想對深度學習有一些印象,請考慮安裝TensorFlow Lite。它的速度要快得多,使用的資源要少得多,因為它是為Raspberry Pi等小型計算機設計的。您可以使用許多現成的生成模型。在此處查看我們的 64 位 Raspberry 安裝指南。

路線圖

TensorFlow繼續增長。每個新版本都需要更多的資源、支持軟件和庫。它越來越多地給你的樹莓派帶來了沉重的負擔。它解釋了為什么最新版本在具有“過時”操作系統的“舊”Raspberry Pis上不能很好地運行。

另一方面,不建議在最新的Bullseye上安裝非常舊的TensorFlow版本。您將被迫降級某些系統庫,這將阻止其他軟件運行。這里最好遵循:“順其自然”。

以下是概述。綠色復選標記表示有版本可用。空的綠色盒子意味著沒有版本,但仍然可以安裝。灰色框指定不允許“正常”安裝的硬件或軟件限制。

wKgaomRhxyOAamx6AABzg3JnLsA27.webp

提示

wKgZomRhxyOAFqkwAAB_0SFVLJ401.webp

通常,我們會收到一個問題,如果我們有一個帶有預裝框架和深度學習示例的 Raspberry Pi 4 的 SD 圖像。
我們很樂意遵守這一要求。請在我們的GitHub頁面上找到一個完整的Raspberry Pi 4,專門用于深度學習。 從我們的GDrive網站下載zip文件,解壓縮并在16 GB SD卡上刷新圖像,然后開始吧!

我們討論了兩個安裝,一個用于 Python 3,一個用于 API 庫C++。 不幸的是,沒有官方的 aarch64 pip3 輪可用于 2.7、2.6 或 2.5 版本。但是,為了您的方便,我們使用 Bazel 創建了我們的輪子并將它們放在 GitHub 上。
本指南的最后一部分討論了Keras的安裝。

準備

Numpy

Tensorflow在最新版本的numpy中遇到了問題。將 TensorFlow 移植到 numpy 1.20 變得非常困難。現在,隨著TensorFlow版本2.8.0的出現,它終于成功了。最后,安裝TensorFlow時不再有numpy版本沖突。
但是,TensorFlow 2.7.0仍然報告了一些問題。為了安全起見,請使用 numpy 版本 1.19.5為了TF 2.7.0 以確保一切正常。

libclang 9.0.1

TensorFlow 2.7.0 依賴于 libclang 9.0.1。沒有適用于 Debian 10 的發行版。這就是為什么只有TensorFlow 2.7安裝在Debian11Bullseye上,。你可以從頭開始在Buster RPi上安裝libclang 9.0.1,這樣你就可以安裝TensorFlow了。請注意,clang構建需要大量資源,超過5 GB。最好切換到Bullseye,并在半小時內啟動并運行TensorFlow

Protobuffer 4.21

最新版本的Protobuffer 4.21.0與以前的版本3.20.1相比有一些重大改進。但是,TensorFlow尚不支持這些更改。為了使 TensorFlow 正常工作,如果您安裝了4.21 ,則需要將 Protobuf 降級到 3.20版本。

wKgaomRhxySAb05RAAKAu3XZWo857.webp

有關如何降級的更多信息,請訪問我們的 GitHub 頁面。

Tensorflow-io-gcs-filesystem

所有依賴項都可以只用一個命令安裝,除了 tensorflow-io-gcs 文件系統。由于沒有 aarch64 機器的發行版,我們必須從頭開始構建 tensorflow-io-gcs 文件系統。整個過程可以在下面找到,應該在安裝TensorFlow本身之前完成。如果讓TensorFlow安裝io-gcs,它將選擇錯誤的版本并且不起作用。

# get a fresh start
$ sudo apt-get update
$ sudo apt-get upgrade
# install pip3
$ sudo apt-get install git python3-pip
# install correct version protobuf
$ sudo -H pip3 install --upgrade protobuf==3.20.0
Method 1
# download tensorflow io
$ git clone -b v0.23.1 --depth=1 --recursive https://github.com/tensorflow/io.git
$ cd io
$ python3 setup.py -q bdist_wheel --project tensorflow_io_gcs_filesystem
$ cd dist
$ sudo -H pip3 install tensorflow_io_gcs_filesystem-0.23.1-cp39-cp39-linux_aarch64.whl
$ cd ~
Method 2
# or download wheel
$ git clone https://github.com/Qengineering/Tensorflow-io.git
$ cd Tensorflow-io
$ sudo -H pip3 install tensorflow_io_gcs_filesystem-0.23.1-cp39-cp39-linux_aarch64.whl
$ cd ~

Python 3.9 的 TensorFlow wheels

TensorFlow由一個名為Bazel的Google軟件安裝程序安裝。最后,Bazel生成一個輪子來安裝TensorFlow Python版本,或者在安裝C++版本時生成一個壓縮包。這兩種方法都是樹莓派用戶所熟知的。我們已經在GitHub頁面上發布了Bazel的結果。隨意使用這些輪子。整個 TensorFlow 安裝過程從頭到尾需要很多小時(Python ±64,C++庫±1)。完成所有繁瑣的工作后,只需幾分鐘即可在Raspberry 64位Bullseye上安裝TensorFlow。對于很難完成的部分,本手冊稍后將介紹完整的程序。
整個快捷方式過程如下。wheels太大,無法存儲在GitHub上,因此使用Google驅動器代替。

TensorFlow 2.10.0

# install gdown to download from Google drive
$ sudo -H pip3 install gdown
# download the wheel
$ gdown https://drive.google.com/uc?id=1G2P-FaHAXJ-UuQAQn_0SYjNwBu0aShpd
# install TensorFlow 2.10.0
$ sudo -H pip3 install tensorflow-2.10.0-cp39-cp39-linux_aarch64.whl

TensorFlow 2.9.1

# install gdown to download from Google drive
$ sudo -H pip3 install gdown
# download the wheel
$ gdown https://drive.google.com/uc?id=1xP6ErBK85SMFnQamUh4ro3jRmdCV_qDU
# install TensorFlow 2.9.1
$ sudo -H pip3 install tensorflow-2.9.1-cp39-cp39-linux_aarch64.whl

TensorFlow 2.8.0

# install gdown to download from Google drive
$ sudo -H pip3 install gdown
# download the wheel
$ gdown https://drive.google.com/uc?id=1YpxNubmEL_4EgTrVMu-kYyzAbtyLis29
# install TensorFlow 2.8.0
$ sudo -H pip3 install tensorflow-2.8.0-cp39-cp39-linux_aarch64.whl

TensorFlow 2.7.0

# utmost important: use only numpy version 1.19.5
# check the version first
$ pip3 list | grep numpy
# if not version 1.19.5, update!
$ sudo -H pip3 install numpy==1.19.5
# (re)install termcolor at the correct location
$ python3 -m pip install termcolor
# install gdown to download from Google drive
$ sudo -H pip3 install gdown
# download the wheel
$ gdown https://drive.google.com/uc?id=1FdVZ1kX5QZgWk2SSgq31C2-CF95QhT58
# install TensorFlow 2.7.0
$ sudo -H pip3 install tensorflow-2.7.0-cp39-cp39-linux_aarch64.whl

安裝成功后,應獲得以下屏幕輸出。

wKgZomRhxySAeFn5AAPbDd9aQm034.webp

TensorFlow 2.8.0 C++ API

如果你打算用C++編程,你將需要TensorFlow的C++API版本,而不是Python版本。使用我們 GitHub 頁面中的預構建壓縮包安裝 C++ 庫可以為您節省大量時間。 請按照以下步驟操作。

TensorFlow 2.10.0

# get a fresh start
$ sudo apt-get update
$ sudo apt-get upgrade
# remove old versions (if found)
$ sudo rm -r /usr/local/lib/libtensorflow*
$ sudo rm -r /usr/local/include/tensorflow
# the dependencies
$ sudo apt-get install wget curl libhdf5-dev libc-ares-dev libeigen3-dev
$ sudo apt-get install libatomic1 libatlas-base-dev zip unzip
# install gdown to download from Google drive (if not already done)
$ sudo -H pip3 install gdown
# download the tarball
$ gdown https://drive.google.com/uc?id=1GOC5CiT5Ws2NpiBem4K3g3FRqmGDRcL7
# unpack the ball
$ sudo tar -C /usr/local -xzf libtensorflow_cp39_64OS_2_10_0.tar.gz

TensorFlow 2.9.1

# get a fresh start
$ sudo apt-get update
$ sudo apt-get upgrade
# remove old versions (if found)
$ sudo rm -r /usr/local/lib/libtensorflow*
$ sudo rm -r /usr/local/include/tensorflow
# the dependencies
$ sudo apt-get install wget curl libhdf5-dev libc-ares-dev libeigen3-dev
$ sudo apt-get install libatomic1 libatlas-base-dev zip unzip
# install gdown to download from Google drive (if not already done)
$ sudo -H pip3 install gdown
# download the tarball
$ gdown https://drive.google.com/uc?id=1Z83_RQTvCb2jL2BO1Zdez3x4Qx-XheRk
# unpack the ball
$ sudo tar -C /usr/local -xzf libtensorflow_cp39_64OS_2_9_1.tar.gz

TensorFlow 2.8.0

# get a fresh start
$ sudo apt-get update
$ sudo apt-get upgrade
# remove old versions (if found)
$ sudo rm -r /usr/local/lib/libtensorflow*
$ sudo rm -r /usr/local/include/tensorflow
# the dependencies
$ sudo apt-get install wget curl libhdf5-dev libc-ares-dev libeigen3-dev
$ sudo apt-get install libatomic1 libatlas-base-dev zip unzip
# install gdown to download from Google drive (if not already done)
$ sudo -H pip3 install gdown
# download the tarball
$ gdown https://drive.google.com/uc?id=1dmJKIk8lUi_XCzlVnRgL-UvfVFriRmCG
# unpack the ball
$ sudo tar -C /usr/local -xzf libtensorflow_cp39_64OS_2_8_0.tar.gz

TensorFlow 2.7.0

# get a fresh start
$ sudo apt-get update
$ sudo apt-get upgrade
# remove old versions (if found)
$ sudo rm -r /usr/local/lib/libtensorflow*
$ sudo rm -r /usr/local/include/tensorflow
# the dependencies
$ sudo apt-get install wget curl libhdf5-dev libc-ares-dev libeigen3-dev
$ sudo apt-get install libatomic1 libatlas-base-dev zip unzip
# install gdown to download from Google drive (if not already done)
$ sudo -H pip3 install gdown
# download the tarball
$ gdown https://drive.google.com/uc?id=1kScCKyj0pr265XbCgYmXqXs77xJFe6p1
# unpack the ball
$ sudo tar -C /usr/local -xzf libtensorflow_cp39_64OS_2_7_0.tar.gz

你最終應該將 TensorFlow 庫安裝在 /usr/local/lib 位置,并將頭文件安裝在文件夾 usr/local/include/tensorflow/c 中。

wKgaomRhxySACiSIAAIHvsW07Vs86.webpwKgZomRhxyWAEZqXAAJH43Vh91s34.webp

從頭開始安裝

內存交換大小

構建完整的 TensorFlow 2.8 包需要超過 6 GB 的 RAM。如果您有具有8 GB RAM的Raspberry Pi 4,那么您就很清楚了。否則,請確保增加交換大小以滿足此需求。板載 4 GB RAM,zram 可以提供額外的 2 GB。有了 2 GB 的 RAM,您就不能再依靠 zram 來壓縮超過 2 倍。在這種情況下,他們必須重新安裝dphys-swapfile才能從SD卡中獲取額外的空間。如果您必須安裝 dphys-swapfile,請按照以下命令操作。在 Bullseye 操作系統上設置交換空間時,完成重啟需要相當長的時間。

# install dphys-swapfile
$ sudo apt-get install dphys-swapfile
# give the required memory size
$ sudo nano /etc/dphys-swapfile
# reboot afterwards
$ sudo reboot
wKgaomRhxyWAG8tIAACVPn_EDok87.webpwKgZomRhxyWAf4pEAAB0CCbky4Q03.webpwKgaomRhxyWAC8QUAACKZorUu3k28.webp

如果一切順利,你應該有這樣的東西。

wKgZomRhxyaAMY_mAAA7WiFRFe471.webp

作為記錄,顯示的數字是dphys-swapfile和zram分配的交換空間總量。請不要忘記在完成后刪除dphys-swapfile。

注意:如果在同時啟用 zram 和 dphys-swapfile 的情況下重新啟動 Raspberry Pi,zram 將在啟動期間禁用 dphys-swapfile。您必須手動重新激活此服務。

# reactivate dphys-swapfile after a reboot
# (when zram and dphys-swapfile are both enabled)
$ sudo /etc/init.d/dphys-swapfile stop
$ sudo /etc/init.d/dphys-swapfile start

Bazel

Bazel是Google的免費軟件工具,用于自動構建和測試軟件包。你可以將它與OpenCV使用的CMake進行比較,但后者只構建軟件,沒有測試工具。Bazel是用Java編寫的,Java是一種獨立于平臺的語言,在語法方面主要基于C++。要編譯 Bazel,我們必須首先使用以下命令安裝 Java 和其他一些依賴項。

# get a fresh start
$ sudo apt-get update
$ sudo apt-get upgrade
# install pip and pip3
$ sudo apt-get install python3-pip
# install some tools
$ sudo apt-get install zip unzip curl
# install Java
$ sudo apt-get install openjdk-11-jdk

接下來,我們可以下載并解壓縮 Bazel 軟件。我們需要 TensorFlow 2.1.0 的 Bazel 版本 5.1.1,因此請確保安裝正確的版本。

$ wget https://github.com/bazelbuild/bazel/releases/download/5.1.1/bazel-5.1.1-dist.zip
$ unzip -d bazel bazel-5.1.1-dist.zip
$ cd bazel

在安裝過程中,Bazel 使用預定義的可用工作內存比率。由于樹莓派的 RAM 大小有限,這個比例太小了。為防止崩潰,我們必須將此內存的大小定義為最大板載 RAM 的 40%。例如,800 MB用于2 GByte RAM Raspberry Pi。這是通過在腳本文件 compile.sh 中添加一些額外信息來完成的。您可以將文本 -J-Xmx800M 添加到以 run 開頭的行中。 (第 144 行左右)。請參閱下面的屏幕。使用眾所周知的、、保存更改(請參閱上面的幻燈片放映)。

$ nano scripts/bootstrap/compile.sh -c
wKgaomRhxyaAfCcfAAQZEyO8A9s82.webp

一旦 Bazel 的 Java 環境最大化,您就可以使用下一個命令開始構建 Bazel 軟件。完成后,將二進制文件復制到 /usr/local/bin 位置,以便 bash 可以在任何地方找到可執行文件。最后一個操作是刪除 zip 文件。整個構建大約需要 33 分鐘。

# start the build
$ env EXTRA_BAZEL_ARGS="--host_javabase=@local_jdk//:jdk" bash ./compile.sh
# copy the binary
$ sudo cp output/bazel /usr/local/bin/bazel
# clean up
$ cd ~
$ rm bazel-5.1.1-dist.zip
# if you have a copied bazel to /usr/local/bin you may also
# delete the whole bazel directory, freeing another 500 MByte
$ sudo rm -rf bazel
wKgZomRhxyaAIFsIAAQws0nroK013.webp

安裝 TensorFlow for Python 3

隨著Bazel的啟動和運行,我們可以開始在64位Raspberry Pi for Python 3上構建TensorFlow 2.10.0。這幾乎正在成為標準做法。首先,安裝一些依賴項,然后從 GitHub 下載 zip,最后解壓縮軟件。您還必須安裝 tensorflow_io_gcs 文件系統。它是通過使用我們的 GitHub 存儲庫中的預編譯輪來完成的。

TensorFlow 2.10.0

# get a fresh start
$ sudo apt-get update
$ sudo apt-get upgrade
# the dependencies
$ sudo apt-get install zip unzip
$ sudo -H pip3 install keras_applications --no-deps
$ sudo -H pip3 install keras_preprocessing --no-deps
# install correct version protobuf
$ sudo -H pip3 install --upgrade protobuf==3.20.0
# download tensorflow io
$ git clone https://github.com/Qengineering/Tensorflow-io.git
$ cd Tensorflow-io
$ sudo -H pip3 install tensorflow_io_gcs_filesystem-0.23.1-cp39-cp39-linux_aarch64.whl
$ cd ~
# download TensorFlow 2.10.0
$ wget -O tensorflow.zip https://github.com/tensorflow/tensorflow/archive/v2.10.0.zip
$ unzip tensorflow.zip
$ cd tensorflow-2.10.0
$ ./configure

TensorFlow 2.9.1

# get a fresh start
$ sudo apt-get update
$ sudo apt-get upgrade
# the dependencies
$ sudo apt-get install zip unzip
$ sudo -H pip3 install keras_applications --no-deps
$ sudo -H pip3 install keras_preprocessing --no-deps
# install correct version protobuf
$ sudo -H pip3 install --upgrade protobuf==3.20.0
# download tensorflow io
$ git clone https://github.com/Qengineering/Tensorflow-io.git
$ cd Tensorflow-io
$ sudo -H pip3 install tensorflow_io_gcs_filesystem-0.23.1-cp39-cp39-linux_aarch64.whl
$ cd ~
# download TensorFlow 2.9.1
$ wget -O tensorflow.zip https://github.com/tensorflow/tensorflow/archive/v2.9.1.zip
$ unzip tensorflow.zip
$ cd tensorflow-2.9.1
$ ./configure

TensorFlow 2.8.0

# get a fresh start
$ sudo apt-get update
$ sudo apt-get upgrade
# the dependencies
$ sudo apt-get install zip unzip
$ sudo -H pip3 install keras_applications --no-deps
$ sudo -H pip3 install keras_preprocessing --no-deps
# install correct version protobuf
$ sudo -H pip3 install --upgrade protobuf==3.20.0
$ cd ~
# download TensorFlow 2.8.0
$ wget -O tensorflow.zip https://github.com/tensorflow/tensorflow/archive/v2.8.0.zip
$ unzip tensorflow.zip
$ cd tensorflow-2.8.0
$ ./configure

TensorFlow 2.7.0

# get a fresh start
$ sudo apt-get update
$ sudo apt-get upgrade
# the dependencies
$ sudo apt-get install zip unzip
$ sudo -H pip3 install keras_applications --no-deps
$ sudo -H pip3 install keras_preprocessing --no-deps
# download TensorFlow 2.7.0
$ wget -O tensorflow.zip https://github.com/tensorflow/tensorflow/archive/v2.7.0.zip
$ unzip tensorflow.zip
$ cd tensorflow-2.7.0
$ ./configure

構建 Python 3 安裝輪之前的最后一步是使用一些環境變量配置構建。這是由 ./configure 腳本文件完成的。將 Python 3 定義為默認的 Python 版本,對所有其他問題定義為“否”。

pi@raspberrypi:~/tensorflow-2.10.0 $ ./configure
You have bazel 5.1.1- (@non-git) installed.
Please specify the location of python. [Default is /usr/bin/python3]: 

Found possible Python library paths:
 /usr/lib/python3/dist-packages
 /usr/local/lib/python3.9/dist-packages
Please input the desired Python library path to use.  Default is [/usr/lib/python3/dist-packages] 

Do you wish to build TensorFlow with ROCm support? [y/N]: n
No ROCm support will be enabled for TensorFlow.

Do you wish to build TensorFlow with CUDA support? [y/N]: n
No CUDA support will be enabled for TensorFlow.

Do you wish to download a fresh release of clang? (Experimental) [y/N]: n
Clang will not be downloaded.

Please specify optimization flags to use during compilation when bazel option "--config=opt" is specified [Default is -Wno-sign-compare]: 

Would you like to interactively configure ./WORKSPACE for Android builds? [y/N]: n
Not configuring the WORKSPACE for Android builds.

Preconfigured Bazel build configs. You can use any of the below by adding "--config=<>" to your build command. See .bazelrc for more details.
--config=mkl          # Build with MKL support.
--config=mkl_aarch64 # Build with oneDNN and Compute Library for the Arm Architecture (ACL).
--config=monolithic   # Config for mostly static monolithic build.
--config=numa         # Build with NUMA support.
--config=dynamic_kernels # (Experimental) Build kernels into separate shared objects.
--config=v2           # Build TensorFlow 2.x instead of 1.x.
Preconfigured Bazel build configs to DISABLE default on features:
--config=noaws        # Disable AWS S3 filesystem support.
--config=nogcp        # Disable GCP support.
--config=nohdfs       # Disable HDFS support.
--config=nonccl       # Disable NVIDIA NCCL support.
Configuration finished

腳本文件現已全部設置完畢,可以使用以下命令開始大規模構建。-Xmx1624m 設置運行 Bazel 的 Java 環境的內存大小。給它盡可能多的空間。我們建議 80% 的樹莓派內存大小。在我們的例子中,我們有 2 GB 板載,所以 1624 MB 為除 Bazel 之外的其他線程留下了足夠的空間。
另一點是Basel 使用的內核數量。最好使用一個內核。運行慢一點比崩潰好一點(總是在最后)并重新開始。
在生成過程中關閉所有其他應用程序。運行的其他進程越少,編譯速度就越快。

$ sudo bazel clean
$ sudo bazel --host_jvm_args=-Xmx1624m build 
             --config=opt 
             --config=noaws 
             --config=nogcp 
             --config=nohdfs 
             --config=nonccl 
             --config=monolithic 
             --config=v2 
             --local_cpu_resources=1 
             --define=tflite_pip_with_flex=true 
             --copt=-ftree-vectorize 
             --copt=-funsafe-math-optimizations 
             --copt=-ftree-loop-vectorize 
             --copt=-fomit-frame-pointer 
             //tensorflow/tools/pip_package:build_pip_package

經過 41 小時(或更長時間!)編譯后,您將看到以下屏幕。

wKgaomRhxyaAfvP5AASrilmupNg70.webp


現在我們必須生成wheel并安裝它。這是通過以下命令完成的。安裝大約只需幾分鐘。

TensorFlow 2.10.0

# synthesize the wheel
$ sudo bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
$ cd ~
# go to the folder where the wheel is located and install tensorflow
$ cd /tmp/tensorflow_pkg
$ sudo -H pip3 install tensorflow-2.10.0-cp39-cp39-linux_aarch64.whl

TensorFlow 2.9.1

# synthesize the wheel
$ sudo bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
$ cd ~
# go to the folder where the wheel is located and install tensorflow
$ cd /tmp/tensorflow_pkg
$ sudo -H pip3 install tensorflow-2.9.1-cp39-cp39-linux_aarch64.whl

TensorFlow 2.8.0

# synthesize the wheel
$ sudo bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
$ cd ~
# go to the folder where the wheel is located and install tensorflow
$ cd /tmp/tensorflow_pkg
$ sudo -H pip3 install tensorflow-2.8.0-cp39-cp39-linux_aarch64.whl

TensorFlow 2.7.0

# synthesize the wheel
$ sudo bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
$ cd ~
# go to the folder where the wheel is located and install tensorflow
$ cd /tmp/tensorflow_pkg
$ sudo -H pip3 install tensorflow-2.7.0-cp39-cp39-linux_aarch64.whl

安裝 TensorFlow C++ API

如前所述,您可以使用 GitHub 頁面上的壓縮包非常快速地安裝 TensorFlow C++ API;不需要經過漫長的安裝過程。 對于那些想要自己構建 API 的人,現在遵循安裝指南。
首先,如果尚未安裝 Bazel。該過程也在上面描述。一旦 Bazel 開始工作,你可以安裝依賴項并下載 TensorFlow,如果之前還沒有為 Python 3 安裝完成的話。

TensorFlow 2.10.0

# the dependencies
$ sudo apt-get install build-essential make cmake wget zip unzip
$ sudo apt-get install libhdf5-dev libc-ares-dev libeigen3-dev
$ sudo apt-get install libatlas-base-dev
# download TensorFlow 2.10.0
$ wget -O tensorflow.zip https://github.com/tensorflow/tensorflow/archive/v2.10.0.zip
# unpack the folder
$ unzip tensorflow.zip
$ cd tensorflow-2.10.0
$ ./configure

TensorFlow 2.9.1

# the dependencies
$ sudo apt-get install build-essential make cmake wget zip unzip
$ sudo apt-get install libhdf5-dev libc-ares-dev libeigen3-dev
$ sudo apt-get install libatlas-base-dev
# download TensorFlow 2.10.0
$ wget -O tensorflow.zip https://github.com/tensorflow/tensorflow/archive/v2.10.0.zip
# unpack the folder
$ unzip tensorflow.zip
$ cd tensorflow-2.10.0
$ ./configure

TensorFlow 2.8.0

# the dependencies
$ sudo apt-get install build-essential make cmake wget zip unzip
$ sudo apt-get install libhdf5-dev libc-ares-dev libeigen3-dev
$ sudo apt-get install libatlas-base-dev
# download TensorFlow 2.8.0
$ wget -O tensorflow.zip https://github.com/tensorflow/tensorflow/archive/v2.8.0.zip
# unpack the folder
$ unzip tensorflow.zip
$ cd tensorflow-2.8.0
$ ./configure

TensorFlow 2.7.0

# the dependencies
$ sudo apt-get install build-essential make cmake wget zip unzip
$ sudo apt-get install libhdf5-dev libc-ares-dev libeigen3-dev
$ sudo apt-get install libatlas-base-dev
# download TensorFlow 2.7.0
$ wget -O tensorflow.zip https://github.com/tensorflow/tensorflow/archive/v2.7.0.zip
# unpack the folder
$ unzip tensorflow.zip
$ cd tensorflow-2.7.0
$ ./configure

同樣,我們需要在實際構建開始之前配置 Bazel。盡管我們要構建一個C++ API,但Bazel腳本文件需要設置為Python 3作為默認Python版本,而所有其他問題則需要設置為“否”。 回答腳本文件的所有問題后,您最終會得到與上所示相同的輸出屏幕。

最后一步是命令行及其選項。同樣,與之前使用的幾乎相同。這里最重要的是 --config=monolithic 標志。沒有這個方向,TensorFlow將無法與OpenCV一起使用,反之亦然。就像pip編譯一樣,Java環境(-Xmx1624m)的內存必須最大化到Raspberry Pi板載內存的80%。 最后一行表示壓縮包庫構建,而不是pip wheel。

$ sudo bazel --host_jvm_args=-Xmx1624m build 
             --config=opt 
             --config=noaws 
             --config=nogcp 
             --config=nohdfs 
             --config=nonccl 
             --config=monolithic 
             --config=v2 
             --local_cpu_resources=1 
             --copt=-ftree-vectorize 
             --copt=-funsafe-math-optimizations 
             --copt=-ftree-loop-vectorize 
             --copt=-fomit-frame-pointer 
             //tensorflow/tools/lib_package:libtensorflow

經過漫長的 12 個小時等待,您將看到以下屏幕。

wKgZomRhxyeAQDwnAAQ7lLnz7z843.webp

最后一步是安裝壓縮包。這是通過以下命令完成的。

$ sudo tar -C /usr/local -xzf bazel-bin/tensorflow/tools/lib_package/libtensorflow.tar.gz

安裝后,您必須具有相同的文件夾(/usr/local/lib 和 usr/local/include/tensorflow/c),如本頁開頭所示。

清除

成功安裝后,不再需要許多文件。bazel 生成的中間對象文件占用大約 6 GB 的磁盤。刪除不會造成任何傷害。

# clean up the whole bazel cache
$ sudo rm -rf ~/.cache/bazel

如果您必須重新安裝 dphys-swapfile,是時候再次卸載它了。這樣,您將延長SD卡的使用壽命。

# remove the dphys-swapfile (if installed)
$ sudo /etc/init.d/dphys-swapfile stop
$ sudo apt-get remove --purge dphys-swapfile

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 工控機
    +關注

    關注

    10

    文章

    1688

    瀏覽量

    50451
  • 樹莓派
    +關注

    關注

    116

    文章

    1699

    瀏覽量

    105537
  • tensorflow
    +關注

    關注

    13

    文章

    329

    瀏覽量

    60500
收藏 人收藏

    評論

    相關推薦

    「EDATEC」如何在樹莓4安裝64操作系統

    本文將幫助您在樹莓 4 安裝樹莓 64
    的頭像 發表于 03-31 17:11 ?2783次閱讀
    「EDATEC」如何在<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>4<b class='flag-5'>上</b><b class='flag-5'>安裝</b><b class='flag-5'>64</b><b class='flag-5'>位</b>操作系統

    樹莓如何安裝和啟動

    `樹莓如何安裝和啟動呢。安裝樹莓必須的裝備:1.2G以上
    發表于 06-30 23:18

    樹莓基礎功能設置

    樹莓基礎功能設置 目錄1、重置root密碼,樹莓開啟root2、樹莓配置‘ll’命令3、
    發表于 03-02 09:10

    RK3399開發板香橙4Ubuntu系統下如何安裝TensorFlow

    `主要的區別是香橙4B內置了NPU(人工智能處理器),可以協助CPU做神經網絡加速計算。下文將介紹下香橙4/4B安裝TensorFlow的一種方式:步驟:從以下下載
    發表于 10-19 15:55

    arm的云服務器外樹莓4安裝kata-container

    kata-container是目前比較熱門的安全容器項目,目前kata-container已經支持arm64平臺運行。如果你想在arm64平臺
    發表于 07-12 16:02

    樹莓設置基本流程(

    第一步,win系統下安裝樹莓的系統到SD卡 第二步,安裝和啟動樹莓
    發表于 11-30 11:03 ?17次下載

    樹莓_庫函數安裝教程

    樹莓_庫函數安裝教程,樹莓嵌入式拔高篇,非常適合新手學習
    發表于 01-14 15:12 ?32次下載

    樹莓的種類_樹莓安裝教程

    樹莓(Raspberry Pi)是尺寸僅有信用卡大小的一個小型電腦,您可以將樹莓連接電視、顯示器、鍵盤鼠標等設備使用。目前,樹莓
    發表于 11-27 22:01 ?5366次閱讀

    樹莓3硬件配置_樹莓3都能裝什么系統_樹莓3系統安裝教程

    樹莓3一直頗受電子發燒友的青睞,這篇文章主要討論的就是樹莓3的硬件配置、樹莓3都能裝什么系
    發表于 12-08 14:36 ?2.6w次閱讀

    樹莓3系統安裝介紹_Noobs進行樹莓3系統安裝_Noobs進行樹莓3系統恢復

    這篇文章主要和大家一起來討論一下關于樹莓3的系統安裝是什么,基于Noobs的樹莓3的系統安裝
    發表于 12-08 15:02 ?5937次閱讀
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>3系統<b class='flag-5'>安裝</b>介紹_Noobs進行<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>3系統<b class='flag-5'>安裝</b>_Noobs進行<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>3系統恢復

    使用樹莓設計智能小車教程之如何進行樹莓模塊安裝資料免費下載

      本文檔的主要內容詳細介紹的是使用樹莓設計智能小車教程之如何進行樹莓模塊安裝資料免費下載。
    發表于 06-24 08:00 ?21次下載

    樹莓3B運行64系統的測評詳細說明

    今天,我們團隊感受了一下樹莓3B 的主板運行64bit 系統的感覺!那種感覺您如果有幸感受的話,您一定會說:這才是我要的
    發表于 11-21 16:17 ?12次下載

    樹莓樹莓4B新手篇:安裝官網Raspbian Buster系統及基礎配置

    目錄1、前言2、樹莓4B有什么特色?3、樹莓新手準備4、燒錄Raspbian Buster系統到Micro SD卡開啟SSH及配置無線連接5、啟動
    發表于 11-06 18:21 ?26次下載
    【<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>】<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>4B新手篇:<b class='flag-5'>安裝</b>官網Raspbian Buster系統及基礎配置

    樹莓32 64 位在實際測試中表現如何

    上周,樹莓派發布了用戶期待已久的 64 Raspberry Pi OS,從理論上來說 64 的操作系統能夠更好地利用
    的頭像 發表于 03-17 14:28 ?2933次閱讀

    TensorFlow手勢識別樹莓開源

    電子發燒友網站提供《TensorFlow手勢識別樹莓開源.zip》資料免費下載
    發表于 11-09 09:27 ?1次下載
    <b class='flag-5'>TensorFlow</b>手勢識別<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>開源