라벨이 cvat인 게시물 표시

[CVAT] CVAT nuclio 배포 컨테이너 끄기

이미지
CVAT nuclio 배포 컨테이너 끄기 CVAT nuclio에서 이미 배포한 컨테이너에 대해 모델 변경을 원하는 경우가 있을텐데 이 때 어떻게 할 수 있는지 알아보겠습니다. 간단 모델 재배포 방법 저는 아래 배포 모델을 재배포할 예정입니다. nuctl get function --platform local Copy 이제 변경하려는 모델명을 main.py 파일에서 수정합니다. main.py 위치를 모르겠는 분은 여기 를 참고한 후에 읽어주세요. 모델 변경이 완료되었으면 이후 재배포를 진행합니다.(명령어는 cvat clone한 경로 기준) 저와 다르게 배포하신 분들은 yolo-custom을 본인의 NAME에 맞게 수정하세요. ./serverless/deploy_gpu.sh serverless/pytorch/mymodel/yolo-custom Copy 아래처럼 정상적으로 배포되었음을 확인할 수 있습니다. 만약, A_v1.0 모델을 A_v1.1 모델로 버전업해서 재배포하면 모델이 정말 v1.1로 배포되었는지 궁금할 수 있습니다. 그런 경우 도커 컨테이너 로그를 확인하면 되는데, 우선 아래 명령어를 통해 본인 컨테이너 name을 확인합니다.(pth-yolo-custom을 본인에게 맞도록 수정) docker ps | grep pth-yolo-custom Copy 이후 해당 컨테이너명을 기준으로 로그를 확인합니다.(여기선 yolo26s로 검색, 본인에게 맞게 수정) docker logs -f nuclio-nuclio-pth-yolo-custom | grep yolo26s Copy 위 방법의 재배포는 간단하지만, Docker 빌드 캐시로 특정 코드가 미반영될 수 있습니다. 예로 현재는 main.py 파일을 수정했는데 function-gpu.yaml 파일 구조적 변경은 in-place 업데이트 에러가 발생할 수 있습니다...

[CVAT] CVAT custom model auto-annotations 설정 방법

이미지
CVAT custom model auto-annotations 설정 CVAT custom model을 이용해 auto-annotations 하는 방법을 알아보겠습니다. Auto-Annotations를 설치전 필요한 CVAT 설치는 여기 를, Nuctl 설치는 여기 를 먼저 참고해 진행하세요. 1. 파일 설정 위 CVAT와 Nuctl 설치가 완료되었다면 deploy하려는 폴더 구조를 생성합니다. 폴더 구조는 본인의 cvat clone 경로에서 아래 명령어를 실행하세요. (저는 cd ~/projects/cvat 경로에서 실행) 아래 경로는 본인에게 맞게 수정해도 무방합니다. sudo mkdir -p serverless/pytorch/mymodel/yolo-custom/nuclio cd serverless/pytorch/mymodel/yolo-custom/nuclio Copy 위 폴더 경로에는 3개의 파일(function-gpu, main, model)이 필요합니다. function-gpu.yaml sudo vi function-gpu.yaml Copy 아래 클래스(person, helmet)는 본인 환경에 맞게 수정하세요. metadata: name: pth-yolo-custom namespace: cvat annotations: name: My Custom YOLO type: detector framework: pytorch spec: | [ { "id": 0, "name": "person" }, { "id": 1, "name": "helmet" } ] spec: description: Custom trained YOLO model runtim...

[CVAT] Ubuntu CVAT 터미널에서 계정 생성

이미지
터미널에서 CVAT 계정 생성 방법 Ubuntu 터미널에서 CVAT 계정 생성 방법을 알아보겠습니다. 기존 웹 브라우저에서 계정을 생성할 땐 비밀번호를 간단하게 생성할 수 없습니다. 간단 비밀번호 설정을 위해선 터미널에서 계정 생성이 필요합니다. docker exec -it cvat_server bash -ic 'python3 ~/manage.py createsuperuser' Copy 이후 계정명, 이메일, 비밀번호를 입력하면 비밀번호가 너무 쉽다는 경고 문구가 나옵니다. 그래도 진행을 원하면 'y'를 입력합니다. 이후 웹 브라우저에서 간단한 비밀번호로 로그인할 수 있습니다. 참고 문헌 [1]   https://sunnys-note.tistory.com/26

[CVAT] Ubuntu CVAT 설치 방법

이미지
CVAT 설치 방법 Ubuntu에서 CVAT 설치 방법을 알아보겠습니다. CVAT 설치 터미널에서 CVAT을 설치하려는 경로에서 아래 명령어를 입력해 git에서 cvat을 다운로드합니다. git clone https://github.com/opencv/cvat Copy 이후 다운로드한 cvat 경로로 이동합니다. cd cvat Copy 이후 docker로 실행시켜 cvat 필요한 부분들을 자동으로 다운로드합니다. docker compose up -d Copy 이후 localhost:8080으로 웹 브라우저에 접속하면 cvat에 들어갈 수 있습니다. 8080으로 바로 들어가는 것이 아닌 포트포워딩을 통해 접속하고 싶다면 여기 를 참고하세요. 참고 문헌 [1]   https://shpark98.github.io/devcourse-til/230607-CVAT-%EC%84%A4%EC%B9%98-%EB%B0%8F-%EC%A7%81%EC%A0%91-%EC%82%AC%EC%9A%A9/

[CVAT] Bad Gateway 해결방법

Bad Gateway 해결방법 CVAT에서 localhost:8080으로 접속을 시도하면 Bad Gateway가 발생하는데, 해결방법을 알아보겠습니다. rebuild 예전 cvat 이미지 사용으로 인해 발생하는 원인으로 추정되며, 이를 해결하기 위해선 rebuild를 진행하면 됩니다. docker compose -f docker-compose.yml -f components/serverless/docker-compose.serverless.yml down docker compose -f docker-compose.yml -f docker-compose.dev.yml build Copy rebuild가 완료되면 다시 cvat을 재실행합니다. docker compose -f docker-compose.yml -f components/serverless/docker-compose.serverless.yml up -d Copy 참고 문헌 [1]   https://github.com/cvat-ai/cvat/issues/5302

[CVAT] Auto Annotation을 위한 nuctl 커맨드 설치 방법

이미지
Nuclio 설치 방법 Auto Annotation을 위해 nuctl 커맨드를 설치하는 방법을 알아보겠습니다. nuctl 설치 nuctl이란 nuclio's command-line interface(CLI)의 약자입니다. CLI(Command Line Interface)는 명령어 인터페이스이며, 텍스트를 입력하여 컴퓨터에 명령을 내리는 방식입니다. (linux ls 명령어 등) nuctl을 설치하기 위해선 nuclio 버전을 확인해야합니다. cvat git clone한 경로에서 아래 명령어 입력 후, nuclio 버전을 확인합니다. cat components/serverless/docker-compose.serverless.yml Copy 버전 확인 후, 여기 에서 본인에게 맞는 버전을 확인하세요. 맞는 버전을 확인했으면, 아래 명령어를 통해 nuclio를 다운합니다.(여기선 버전 1.13.22 & os는 linux로 진행) wget https://github.com/nuclio/nuclio/releases/download/<version>/nuctl-<version>-<os>-amd64 Copy 다운로드 완료했으면, permission 할당과 symbolic link를 할당합니다. sudo chmod +x nuctl-<version>-<os>-amd64 sudo ln -s $(pwd)/nuctl-<version>-<os>-amd64 /usr/local/bin/nuctl ls -ll /usr/local/bin/nuctl Copy symbolic link는 절대경로로 줘야합니다. (위 사진 초록색 경로 참고) 위 과정이 정상적으로 이뤄졌다면 아래 명령어를 통해 제대로 설치되었음을 확인할 수 있습니다. nuctl Copy ...

[CVAT] CVAT 원격 IP 포트포워딩하는 방법

이미지
CVAT 원격 IP 포트포워딩 방법 CVAT에서 localhost:8080이 아닌 외부IP:포트를 이용해서 내부IP:8080으로 포트포워딩하여 접속하는 방법을 알아보겠습니다. 1. CVAT_HOST 설정 포트포워딩을 하기 앞서 localhost가 아닌 IP 설정을 진행합니다. cvat clone한 경로로 이동한 상태에서 .env 파일을 생성합니다. (해당 파일은 도커의 환경변수 설정 파일) .env 파일안에 CVAT_HOST={본인의 IP}를 기재합니다. vi .env CVAT_HOST=your IP Copy 2. 포트포워딩 설정 외부IP에서 내부IP로 접근하기 위해선 포트포워딩이 필요합니다. 본인 공유기에 접속하여 포트포워딩을 진행합니다. (본인이 원하는 포트 -> 8080으로 설정) 3. CVAT 실행 이미 데몬을 띄운 상태라면 데몬을 종료합니다. docker compose -f docker-compose.yml -f components/serverless/docker-compose.serverless.yml down Copy 이후 데몬을 재실행합니다. docker compose -f docker-compose.yml -f components/serverless/docker-compose.serverless.yml up -d Copy 재실행 후 웹브라우저에서 http://본인IP:설정한포트 로 접속하면 정상적으로 접근되는것을 확인할 수 있습니다.. 4. 그래도 접속이 안된다면? 4-1. Traefik 포트 확인 docker-compose.yml 파일에서 tracefik의 포트가 8080:8080 & 8090:8090으로 설정되어 있는지 확인하세요. IP:8080으로 Traefik에 접속 요청이 들어오는 부분입니다. 4-2. 포트포워딩 확인 외부IP에서 포트포워딩을 통해 내부IP:8080으로 접속 해...