YOLOv3를 압축하여 모델을 생성하였으니 실제로 Raspberry Pi에서 실행하여 그 속도와 성능을 확인해보기로 했습니다.
최신 OS와 최신 패키지가 최적화를 하여 압축한 FLOPs에 맞는 성능을 내주었다고 결론을 내렸다.
https://stackoverflow.com/questions/60532678/what-is-the-difference-between-miniconda-and-miniforge
miniforge는 conda-forge 채널로 패키지를 설치하는 community가 conda를 작게 만든 것이고 miniconda는 Anaconda에서 conda를 작체 만든것이고 anaconda 채널을 이용하여 패키지를 설치한다고 되어 있다. miniforge가 시작된 것은 miniconda가 aarch64를 지원하지 않기 때문이라고 한다. 그래서 miniforge로 설치해야한다.
1. miniconda 설치 파일 다운로드
Linux installers Python 3.7의 Miniconda3 Linux-aarch64 64-bit를 다운 받는다.
다운로드 후 download 폴더에 있는 파일을 pi로 옮긴다.2. Verify your installation
https://conda.io/projects/conda/en/latest/user-guide/install/download.html#cryptographic-hash-verification
sha256sum Miniconda3-py37_4.11.0 Linux-aarch64.sh
3. Installing on Linux
https://conda.io/projects/conda/en/latest/user-guide/install/linux.html
bash Miniconda3-py37_4.11.0 Linux-aarch64.sh
엔터를 계속 누르고 yes를 하고 경로 설정 시 엔터를 눌러 기본값으로 설정한다.4. reload terminal window
설치가 완료되면 터미널 창을 껐다가 다시 켠다.
5. 설치 확인
conda list
명령을 입력하여 잘 동작하는지 확인한다.6. 가상환경 생성
conda create -n kickboard python=3.7
conda activate kickboard
https://github.com/conda-forge/miniforge
cd Download
bash Miniforge3-Linux-aarch64.sh
터미널 창을 껐다가 켰을 때 conda list
명령이 실행되는지 확인한다.
conda create -n kickboard python=3.7
conda activate kickboard
참고링크
다음 링크를 참고하여 설치하였다.
설치 전에 버전을 확인해야한다.
uname -a
aarch64인지 확인한다.
build시 충분한 Swap memory 공간이 있는지 확인한다.
이는 Raspberry Pi 4 2GB 버전만 해당되는 사항이고 Raspberry Pi 4 4GB 또는 8GB의 경우 바꿀 것이 없다. 따라서 이 과정은 생략한다.
EEPROM software version을 확인해야한다. 이를 하지 않으면 OpenCV 사용 시 열이 과도하게 발생하여 라즈베리 파이의 수명을 단축시킬 수 있다. 따라서 EEPROM software를 업데이트 하는 것만으로 열은 낮추어 라즈베리파이의 수명을 연장할 수 있다.
sudo rpi-eeprom-update
이때 BOOTLOAER: up-to-date 인지 확인한다.
이렇지 않다면 아래 명령을 실행한다.
sudo rpi-eeprom-update -a
sudo reboot
[menu]-[Preferences]-[Raspberry Pi Configuration]-[Performance]-[GPU Memory]를 128로 변경한다.
script를 이용하여 설치에 필요한 모든 명령을 한번에 수행할 수 있다.
메모리가 총 6.5GB가 넘는지 확인한다.
free -m
필요한 파일을 다운받고 script를 실행하여 OpenCV를 설치한다.
wget https://github.com/Qengineering/Install-OpenCV-Raspberry-Pi-64-bits/raw/main/OpenCV-4-5-5.sh
sudo chmod 755 ./OpenCV-4-5-5.sh
./OpenCV-4-5-5.sh
cd opencv/build
sudo make install
sudo ldconfig
conda list
패키지 이름에 python-opencv가 있으면 성공
https://egemenertugrul.github.io/blog/Darknet-NNPACK-on-Raspberry-Pi/
https://qengineering.eu/install-pytorch-on-raspberry-pi-4.html
위 링크를 참고하여 Bullseye OS 버전으로 설치하였다.