라즈베리파이4-yolov5

서유리·2022년 8월 26일
0

AI_Study

목록 보기
9/25
post-thumbnail

😀 이 글을 작성하게된 이유는 라즈베리파이 os의 bit 문제를 겪고 있는 사람들에게 도움을 주기 위함이다.

  • os32비트에서는 pip install -r requirements.txt가 실행되지 않는다
  • 이유는 알 수 없지만 (cpu 성능 때문일까?) 많은 사람들도 64bit에서 실행하고 있었다 (많은 사람들이 64비트를 사용하고 있는 이유가 있을 것이다..)
  • 그래서 나 또한 시행착오 끝에 64 bit 환경에서 실행하게 되었다 (*64 lite 아님)

🔴 목표

🙂 목표 2번까지 마무리 후 xshell에 연결한 후 실행한 명령어는 아래와 같다

🟠 1-1. 업데이트 & 업그레이드

sudo apt-get update
sudo apt-get upgrade

🟠 1-2. 도커 설치 스크립트 다운로드 (CURL)

  • curl 명령어로 get.docker.com URL의 스크립트를 get-docker.sh 파일로 다운받는다
curl -fsSL https://get.docker.com -o get-docker.sh
  • 다운로드 받은 쉘 스크립트를 실행한다
sudo sh get-docker.sh
  • 정상적인 결과
+ sh -c mkdir -p /etc/apt/keyrings && chmod -R 0755 /etc/apt/keyrings
+ sh -c curl -fsSL "https://download.docker.com/linux/debian/gpg" | gpg --dearmor --yes -
+ sh -c chmod a+r /etc/apt/keyrings/docker.gpg
+ sh -c echo "deb [arch=arm64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.do
+ sh -c apt-get update -qq >/dev/null
+ sh -c DEBIAN_FRONTEND=noninteractive apt-get install -y -qq --no-install-recommends doc
+ version_gte 20.10
+ [ -z  ]
+ return 0
+ sh -c DEBIAN_FRONTEND=noninteractive apt-get install -y -qq docker-ce-rootless-extras >
+ sh -c docker version
Client: Docker Engine - Community
 Version:           20.10.17
 API version:       1.41
 Go version:        go1.17.11
 Git commit:        100c701
 Built:             Mon Jun  6 23:02:34 2022
 OS/Arch:           linux/arm64
 Context:           default
 Experimental:      true
Server: Docker Engine - Community
 Engine:
  Version:          20.10.17
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.17.11
  Git commit:       a89b842
  Built:            Mon Jun  6 23:01:01 2022
  OS/Arch:          linux/arm64
  Experimental:     false
 containerd:
  Version:          1.6.7
  GitCommit:        0197261a30bf81f1ee8e6a4dd2dea0ef95d67ccb
 runc:
  Version:          1.1.3
  GitCommit:        v1.1.3-0-g6724737
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
================================================================================
To run Docker as a non-privileged user, consider setting up the
Docker daemon in rootless mode for your user:
    dockerd-rootless-setuptool.sh install
Visit https://docs.docker.com/go/rootless/ to learn about rootless mode.
To run the Docker daemon as a fully privileged service, but granting non-root
users access, refer to https://docs.docker.com/go/daemon-access/
WARNING: Access to the remote API on a privileged Docker daemon is equivalent
         to root access on the host. Refer to the 'Docker daemon attack surface'
         documentation for details: https://docs.docker.com/go/attack-surface/
================================================================================

🟠 1-3. 비루트 계정 권한 설정

  • 일반계정에서도 sudo 명령어 없이 도커 컨테이너를 실행하기 위해 docker 그룹에 사용자를 추가한다 (usermod 명령어 사용)
  • ${USER}는 라즈베리파이 로그인시에 사용한 계정명, 별다른 설정이 없으면 pi로 설정된다
# sudo usermod -aG docker ${USER}
sudo usermod -aG docker yuri
  • 그룹 할당 확인 명령어
# groups ${USER}
groups yuri
  • 정상적인 결과
yuri : yuri adm dialout cdrom sudo audio video plugdev games users input render netdev spi i2c gpio lpadmi

🟠 1-4. 버전 확인

sudo docker version
  • 정상적인 결과
Client: Docker Engine - Community
 Version:           20.10.17
 API version:       1.41
 Go version:        go1.17.11
 Git commit:        100c701
 Built:             Mon Jun  6 23:02:34 2022
 OS/Arch:           linux/arm64
 Context:           default
 Experimental:      true
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Gconnect: permission denied

🟠 1-5. 정보 확인

sudo docker info
  • 정상적인 결과
Client:
 Context:    default
 Debug Mode: false
 Plugins:
  app: Docker App (Docker Inc., v0.9.1-beta3)
  buildx: Docker Buildx (Docker Inc., v0.8.2-docker)
  compose: Docker Compose (Docker Inc., v2.6.0)
Server:
 Containers: 0
  Running: 0
  Paused: 0
  Stopped: 0
 Images: 0
 Server Version: 20.10.17
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Native Overlay Diff: true
  userxattr: false
 Logging Driver: json-file
 Cgroup Driver: systemd
 Cgroup Version: 2
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 0197261a30bf81f1ee8e6a4dd2dea0ef95d67ccb
 runc version: v1.1.3-0-g6724737
 init version: de40ad0
 Security Options:
  seccomp
   Profile: default
  cgroupns
 Kernel Version: 5.15.56-v8+
 Operating System: Debian GNU/Linux 11 (bullseye)
 OSType: linux
 Architecture: aarch64
 CPUs: 4
 Total Memory: 3.705GiB
 Name: raspberrypi
 ID: VRTX:AJXU:IZXE:DI5W:TXCB:BBPL:BCRG:7L3B:TW75:ZSI3:C773:2IFB
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false
WARNING: No memory limit support
WARNING: No swap limit support

🟠 1-6. 도커 실행

sudo docker run hello-world
  • 정상적인 결과
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
7050e35b49f5: Pull complete 
Digest: sha256:7d246653d0511db2a6b2e0436cfd0e52ac8c066000264b3ce63331ac66dca625
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (arm64v8)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.
To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash
Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/
For more examples and ideas, visit:
 https://docs.docker.com/get-started/

🟠 1-7. 시스템 부팅 시 자동으로 도커 서비스 실행

sudo systemctl enable docker
  • 정상적인 결과
Synchronizing state of docker.service with SysV service script with /lib/systemd/systemd-sysv-
Executing: /lib/systemd/systemd-sysv-install enable docker

® [라즈베리파이 도커설치하기] https://yogyui.tistory.com/entry/Raspberry-Pi-Docker-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0

🟡 2.1 도커 이미지 다운로드

docker pull ultralytics/yolov5:latest-arm64
  • 정상적인 결과
latest-arm64: Pulling from ultralytics/yolov5
a749a280e3e9: Pull complete 
c39b5b3d793d: Pull complete 
a7785bbf064f: Pull complete 
6949767ece97: Pull complete 
6f247b47afa8: Pull complete 
8a18774a5356: Pull complete 
077caa153a35: Pull complete 
840e78445cd0: Pull complete 
20ac2183ebd4: Pull complete 
4f4fb700ef54: Pull complete 
bc484b13ce12: Pull complete 
Digest: sha256:581142260872830894244cf47e21037de098e30176537778b5d50c96c55052f7
Status: Downloaded newer image for ultralytics/yolov5:latest-arm64
docker.io/ultralytics/yolov5:latest-arm64

🟢 3.1 도커 컨테이너 실행

sudo docker container run -it -d --name yolov5_2 ultralytics/yolov5:latest-arm64
# docker ps 
# container ID, IMAGE, STATUS 등 확인할 수 있음

🔵 4.1 git clone 및 설치

# 경로 확인
pwd
# 경로 
/usr/src/app
# git clone
git clone https://github.com/ultralytics/yolov5
# 확인
ls
  • 폴더 및 파일 확인
CONTRIBUTING.md  LICENSE  README.md  classify  data  detect.py  export.py  hubconf.py  models  requirements.txt  setup.cfg  train.py  tutorial.ipynb  utils  val.py  yolov5  yolov5_2
  • exit
exit
  • docker ps
docker ps
  • docker ID, IMAGE, STATUE 확인
# IMAGE
ultralytics/yolov5:latest-arm64
  • best.pt로 테스트 하기 위해 테스트할 이미지 컨테이너로 복사
# docker cp [hostFilePath] [container_name]:[containerPath]
docker cp /home/yuri/Desktop/best.pt yolov5_2:/usr/src/app/best.pt
docker cp /home/yuri/Desktop/Save_crawling_lunchfood_img25.jpg yolov5_2:/usr/src/app/Save_crawling_lunchfood_img25.jpg
  • docker container exec -it yolov5_2 /bin/bash
docker container exec -it yolov5_2 /bin/bash
  • 현재 나의 경로 root@##:/usr/src/app#
ls
  • 확인
CONTRIBUTING.md  README.md                          best.pt   data       export.py   models            schoolfood_0.jpg  train.py        utils   yolov5
LICENSE          Save_crawling_lunchfood_img25.jpg  classify  detect.py  hubconf.py  requirements.txt  setup.cfg         tutorial.ipynb  val.py  yolov5_2
  • 현재 나의 경로 root@##:/usr/src/app#
pwd
# /usr/src/app
  • cd yolov5
cd yolov5
  • pip install -r requirements.txt
pip install -r requirements.txt
  • 정상적인 결과
Requirement already satisfied: matplotlib>=3.2.2 in /usr/local/lib/python3.8/dist-packages (from -r requirements.txt (line 5)) (3.5.3)
Requirement already satisfied: numpy>=1.18.5 in /usr/local/lib/python3.8/dist-packages (from -r requirements.txt (line 6)) (1.23.2)
Requirement already satisfied: opencv-python>=4.1.1 in /usr/local/lib/python3.8/dist-packages (from -r requirements.txt (line 7)) (4.6.0.66)
Requirement already satisfied: Pillow>=7.1.2 in /usr/local/lib/python3.8/dist-packages (from -r requirements.txt (line 8)) (9.2.0)
Requirement already satisfied: PyYAML>=5.3.1 in /usr/local/lib/python3.8/dist-packages (from -r requirements.txt (line 9)) (6.0)
Requirement already satisfied: requests>=2.23.0 in /usr/local/lib/python3.8/dist-packages (from -r requirements.txt (line 10)) (2.28.1)
Requirement already satisfied: scipy>=1.4.1 in /usr/local/lib/python3.8/dist-packages (from -r requirements.txt (line 11)) (1.9.0)
Requirement already satisfied: torch>=1.7.0 in /usr/local/lib/python3.8/dist-packages (from -r requirements.txt (line 12)) (1.12.1)
Requirement already satisfied: torchvision>=0.8.1 in /usr/local/lib/python3.8/dist-packages (from -r requirements.txt (line 13)) (0.13.1)
Requirement already satisfied: tqdm>=4.64.0 in /usr/local/lib/python3.8/dist-packages (from -r requirements.txt (line 14)) (4.64.0)
Requirement already satisfied: protobuf<=3.20.1 in /usr/local/lib/python3.8/dist-packages (from -r requirements.txt (line 15)) (3.19.4)
Requirement already satisfied: tensorboard>=2.4.1 in /usr/local/lib/python3.8/dist-packages (from -r requirements.txt (line 18)) (2.9.1)
Requirement already satisfied: pandas>=1.1.4 in /usr/local/lib/python3.8/dist-packages (from -r requirements.txt (line 23)) (1.4.3)
Requirement already satisfied: seaborn>=0.11.0 in /usr/local/lib/python3.8/dist-packages (from -r requirements.txt (line 24)) (0.11.2)
Requirement already satisfied: ipython in /usr/local/lib/python3.8/dist-packages (from -r requirements.txt (line 38)) (8.4.0)
Requirement already satisfied: psutil in /usr/local/lib/python3.8/dist-packages (from -r requirements.txt (line 39)) (5.9.1)
Requirement already satisfied: thop>=0.1.1 in /usr/local/lib/python3.8/dist-packages (from -r requirements.txt (line 40)) (0.1.1.post2207130030)
Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.8/dist-packages (from matplotlib>=3.2.2->-r requirements.txt (line 5)) (21.3)
Requirement already satisfied: python-dateutil>=2.7 in /usr/local/lib/python3.8/dist-packages (from matplotlib>=3.2.2->-r requirements.txt (line 5)) (2.8.2)
Requirement already satisfied: fonttools>=4.22.0 in /usr/local/lib/python3.8/dist-packages (from matplotlib>=3.2.2->-r requirements.txt (line 5)) (4.37.1)
Requirement already satisfied: pyparsing>=2.2.1 in /usr/local/lib/python3.8/dist-packages (from matplotlib>=3.2.2->-r requirements.txt (line 5)) (3.0.9)
Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.8/dist-packages (from matplotlib>=3.2.2->-r requirements.txt (line 5)) (1.4.4)
Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.8/dist-packages (from matplotlib>=3.2.2->-r requirements.txt (line 5)) (0.11.0)
Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.8/dist-packages (from requests>=2.23.0->-r requirements.txt (line 10)) (2022.6.15)
Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.8/dist-packages (from requests>=2.23.0->-r requirements.txt (line 10)) (3.3)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in /usr/local/lib/python3.8/dist-packages (from requests>=2.23.0->-r requirements.txt (line 10)) (1.26.12)
Requirement already satisfied: charset-normalizer<3,>=2 in /usr/local/lib/python3.8/dist-packages (from requests>=2.23.0->-r requirements.txt (line 10)) (2.1.1)
Requirement already satisfied: typing-extensions in /usr/local/lib/python3.8/dist-packages (from torch>=1.7.0->-r requirements.txt (line 12)) (4.3.0)
Requirement already satisfied: grpcio>=1.24.3 in /usr/local/lib/python3.8/dist-packages (from tensorboard>=2.4.1->-r requirements.txt (line 18)) (1.47.0)
Requirement already satisfied: werkzeug>=1.0.1 in /usr/local/lib/python3.8/dist-packages (from tensorboard>=2.4.1->-r requirements.txt (line 18)) (2.2.2)
Requirement already satisfied: markdown>=2.6.8 in /usr/local/lib/python3.8/dist-packages (from tensorboard>=2.4.1->-r requirements.txt (line 18)) (3.4.1)
Requirement already satisfied: tensorboard-plugin-wit>=1.6.0 in /usr/local/lib/python3.8/dist-packages (from tensorboard>=2.4.1->-r requirements.txt (line 18)) (1.8.1)
Requirement already satisfied: tensorboard-data-server<0.7.0,>=0.6.0 in /usr/local/lib/python3.8/dist-packages (from tensorboard>=2.4.1->-r requirements.txt (line 18)) (0.6.1)
Requirement already satisfied: setuptools>=41.0.0 in /usr/lib/python3/dist-packages (from tensorboard>=2.4.1->-r requirements.txt (line 18)) (45.2.0)
Requirement already satisfied: wheel>=0.26 in /usr/local/lib/python3.8/dist-packages (from tensorboard>=2.4.1->-r requirements.txt (line 18)) (0.37.1)
Requirement already satisfied: google-auth<3,>=1.6.3 in /usr/local/lib/python3.8/dist-packages (from tensorboard>=2.4.1->-r requirements.txt (line 18)) (2.11.0)
Requirement already satisfied: absl-py>=0.4 in /usr/local/lib/python3.8/dist-packages (from tensorboard>=2.4.1->-r requirements.txt (line 18)) (1.2.0)
Requirement already satisfied: google-auth-oauthlib<0.5,>=0.4.1 in /usr/local/lib/python3.8/dist-packages (from tensorboard>=2.4.1->-r requirements.txt (line 18)) (0.4.6)
Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.8/dist-packages (from pandas>=1.1.4->-r requirements.txt (line 23)) (2022.2.1)
Requirement already satisfied: stack-data in /usr/local/lib/python3.8/dist-packages (from ipython->-r requirements.txt (line 38)) (0.4.0)
Requirement already satisfied: pexpect>4.3 in /usr/local/lib/python3.8/dist-packages (from ipython->-r requirements.txt (line 38)) (4.8.0)
Requirement already satisfied: prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0 in /usr/local/lib/python3.8/dist-packages (from ipython->-r requirements.txt (line 38)) (3.0.30)
Requirement already satisfied: matplotlib-inline in /usr/local/lib/python3.8/dist-packages (from ipython->-r requirements.txt (line 38)) (0.1.6)
Requirement already satisfied: pygments>=2.4.0 in /usr/local/lib/python3.8/dist-packages (from ipython->-r requirements.txt (line 38)) (2.13.0)
Requirement already satisfied: decorator in /usr/local/lib/python3.8/dist-packages (from ipython->-r requirements.txt (line 38)) (5.1.1)
Requirement already satisfied: backcall in /usr/local/lib/python3.8/dist-packages (from ipython->-r requirements.txt (line 38)) (0.2.0)
Requirement already satisfied: jedi>=0.16 in /usr/local/lib/python3.8/dist-packages (from ipython->-r requirements.txt (line 38)) (0.18.1)
Requirement already satisfied: pickleshare in /usr/local/lib/python3.8/dist-packages (from ipython->-r requirements.txt (line 38)) (0.7.5)
Requirement already satisfied: traitlets>=5 in /usr/local/lib/python3.8/dist-packages (from ipython->-r requirements.txt (line 38)) (5.3.0)
Requirement already satisfied: cachetools<6.0,>=2.0.0 in /usr/local/lib/python3.8/dist-packages (from google-auth<3,>=1.6.3->tensorboard>=2.4.1->-r requirements.txt (line 18)) (5.2.0)
Requirement already satisfied: pyasn1-modules>=0.2.1 in /usr/local/lib/python3.8/dist-packages (from google-auth<3,>=1.6.3->tensorboard>=2.4.1->-r requirements.txt (line 18)) (0.2.8)
Requirement already satisfied: rsa<5,>=3.1.4 in /usr/local/lib/python3.8/dist-packages (from google-auth<3,>=1.6.3->tensorboard>=2.4.1->-r requirements.txt (line 18)) (4.7.2)
Requirement already satisfied: six>=1.9.0 in /usr/local/lib/python3.8/dist-packages (from google-auth<3,>=1.6.3->tensorboard>=2.4.1->-r requirements.txt (line 18)) (1.16.0)
Requirement already satisfied: requests-oauthlib>=0.7.0 in /usr/local/lib/python3.8/dist-packages (from google-auth-oauthlib<0.5,>=0.4.1->tensorboard>=2.4.1->-r requirements.txt (line 18)) (1.3.1)
Requirement already satisfied: parso<0.9.0,>=0.8.0 in /usr/local/lib/python3.8/dist-packages (from jedi>=0.16->ipython->-r requirements.txt (line 38)) (0.8.3)
Requirement already satisfied: importlib-metadata>=4.4 in /usr/local/lib/python3.8/dist-packages (from markdown>=2.6.8->tensorboard>=2.4.1->-r requirements.txt (line 18)) (4.12.0)
Requirement already satisfied: ptyprocess>=0.5 in /usr/local/lib/python3.8/dist-packages (from pexpect>4.3->ipython->-r requirements.txt (line 38)) (0.7.0)
Requirement already satisfied: wcwidth in /usr/local/lib/python3.8/dist-packages (from prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0->ipython->-r requirements.txt (line 38)) (0.2.5)
Requirement already satisfied: MarkupSafe>=2.1.1 in /usr/local/lib/python3.8/dist-packages (from werkzeug>=1.0.1->tensorboard>=2.4.1->-r requirements.txt (line 18)) (2.1.1)
Requirement already satisfied: executing in /usr/local/lib/python3.8/dist-packages (from stack-data->ipython->-r requirements.txt (line 38)) (0.10.0)
Requirement already satisfied: asttokens in /usr/local/lib/python3.8/dist-packages (from stack-data->ipython->-r requirements.txt (line 38)) (2.0.8)
Requirement already satisfied: pure-eval in /usr/local/lib/python3.8/dist-packages (from stack-data->ipython->-r requirements.txt (line 38)) (0.2.2)
Requirement already satisfied: zipp>=0.5 in /usr/local/lib/python3.8/dist-packages (from importlib-metadata>=4.4->markdown>=2.6.8->tensorboard>=2.4.1->-r requirements.txt (line 18)) (3.8.1)
Requirement already satisfied: pyasn1<0.5.0,>=0.4.6 in /usr/local/lib/python3.8/dist-packages (from pyasn1-modules>=0.2.1->google-auth<3,>=1.6.3->tensorboard>=2.4.1->-r requirements.txt (line 18)) (0.4.8)
Requirement already satisfied: oauthlib>=3.0.0 in /usr/local/lib/python3.8/dist-packages (from requests-oauthlib>=0.7.0->google-auth-oauthlib<0.5,>=0.4.1->tensorboard>=2.4.1->-r requirements.txt (line 18)) (3.2.0)
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv

🟣 best.pt로 이미지 1개 테스트 해보기

python3 detect.py --weights ../best.pt --img 640 --conf 0.5 --source ../Save_crawling_lunchfood_img25.jpg
  • 정상적인 결과
/usr/local/lib/python3.8/dist-packages/torchvision/io/image.py:13: UserWarning: Failed to load image Python extension: 
  warn(f"Failed to load image Python extension: {e}")
detect: weights=['../best.pt'], source=../Save_crawling_lunchfood_img25.jpg, data=data/coco128.yaml, imgsz=[640, 640], conf_thres=0.5, iou_thres=0.45, max_det=1000, device=, view_img=False, save_txt=False, save_conf=False, save_crop=False, nosave=False, classes=None, agnostic_nms=False, augment=False, visualize=False, update=False, project=runs/detect, name=exp, exist_ok=False, line_thickness=3, hide_labels=False, hide_conf=False, half=False, dnn=False
YOLOv5 🚀 v6.2-56-g30e674b Python-3.8.10 torch-1.12.1 CPU
Fusing layers... 
YOLOv5s summary: 213 layers, 7012822 parameters, 0 gradients
image 1/1 /usr/src/app/Save_crawling_lunchfood_img25.jpg: 640x480 (no detections), 941.0ms
Speed: 6.3ms pre-process, 941.0ms inference, 0.9ms NMS per image at shape (1, 3, 640, 640)
Results saved to runs/detect/exp2
  • 현재 나의 경로 root@##:/usr/src/app/yolov5#
cd runs/detect/exp2
  • 현재 나의 경로 root@##:/usr/src/app/yolov5/runs/detect/exp2#
ls
# Save_crawling_lunchfood_img25.jpg
  • exit
exit
  • 현재 나의 경로 root@##:/home/yuri#
# docker cp <containerId>:/file/path/within/container /host/path/target
docker cp yolov5_2:/usr/src/app/yolov5/runs/detect/exp2/Save_crawling_lunchfood_img25.jpg /home/yuri/Desktop/de_Save_crawling_lunchfood_img25.jpg

® [yolov5 라즈베리파이4] https://github.com/Qengineering/YoloV5-ncnn-Raspberry-Pi-4

🍒 docker 명령어 참고용

  • docker 모든 images를 삭제하고 싶을 때
docker rm -f $(docker ps -aq)
  • docker login & commit & push 하는 방법
docker login
docker ps
# docker commit CONTAIERID DOCKER_ID_USER/REPOSITORY_NAME:TAG
docker commit CONTAIERID yuri0329/yolov5_rasberry64:0.1
# docker push DOCKER_ID_USER/REPOSITORY_NAME
docker push yuri0329/yolov5_rasberry64:0.1

  • ps. 👍 도움을 준 현기님께 감사미~
profile
best of best

1개의 댓글

comment-user-thumbnail
2023년 5월 31일

docker대신 한가지 py프로그램으로 실행시켜 결과를 저장할 수도 있나요??

답글 달기