[NVIDIA DLI 환경] Synthetic Data Generation for Training Computer Vision Models (**코드 복붙 이슈 해결 방법, Sketchfab 사용 방법**)
앞으로 NVIDIA DLI 환경과 관련한 글을 작성할 예정이다.
이번에 포스팅할 주제는 Synthetic Data Generation for Training Computer Vision Models 인데, 실습을 진행하기 위해 START 버튼을 누른다. 누르면 5~10분 정도 로딩되다가, 아래와 같이 뜬다. 이때 LAUNCH를 누르면 실습이 시작된다.
이때 Course 바로 옆에 있는 숫자들이 "내가 사용하고 있는 시간 / 나에게 주어진 시간" 이다.
따라서 만약 실습 시간을 절약하고 싶다면, 쉬는 시간 마다 저 "사각형 stop task" 를 누르면 시간이 잠깐 멈춰진다.
물론... 쉬는 시간이 끝난 후, 다시 재부팅하려면 5분 전후로 걸리긴 하지만... 팁 아닌 팁이 될 수 있겠다.
(재부팅할 때 동안 시작된 줄 모르고 딴 짓 하면 시간 또 날라간다.. 나도 이렇게 해서 20분은 날렸다..)
이제 lanch 버튼 누르면 좀 로딩이 되다가 까만색 화면에 start 버튼이 뜬다.
이때 start 버튼을 누르면 귀여운 생쥐가 있는 파란색 화면이 뜬다.
여기서 맨 왼쪽 상단에 있는 "Omninerse Launcher"를 클릭한다.
(부팅되는 데에 약간의 시간이 소요된다.)
그 후, 아래와 같은 화면이 뜰텐데, 여기서 맨 왼쪽 상단에 있는 code를 누른 후, 그 옆에 있는 LAUNCH를 클릭한다.
(이것도 시간이 좀 걸린다.. 처음에는 눌러도 아무 반응이 없어서 '뭐지...?' 했는데.. 약간 매트랩이나 vivado 킬 때 시간 소요되는 거랑 비슷한 듯하다.)
자 이제 아래와 같이 코드 작성과 실습을 할 수 있는 환경이 주어진다.
처음에는 이렇게 뜨는데, 코드 작성을 하고 싶으면 중간쯤에 있는 script editor 를 누른다.
그럼 코드 작성란이 뜨고, 여기서 코드를 작성하면 된다.
이때 주의할 것은, 여기서는 코드 복붙이 안 된다....... 내 생각엔 서버 자체가 달라서, DLI 환경이 아닌 곳에서 복붙을 해서DLI로 들고 올 경우, 복붙 적용이 안 된다.
그래서 코드 작성을 하기 위해선 두 가지 방법이 있는데,...
방법1) 직접 그냥 손으로 다 작성한다.
방법2) 생쥐 화면의 아이콘들을 활용한다.
방법1)은.. 진짜 현실적으로 좀 힘든 이유가 있다. 코드를 손으로 힘들게 쳐서, 실행시키면... 작성했던 코드들이 없어진다..
그래서 다시 작성해야한다. 그렇기 때문에 코드 연습하려는 것 아니면 손으로 직접 코드를 치는 것은 비추한다.
방법2)는 그 아까 생쥐 화면으로 돌아가면, 왼쪽에는 주피터 노트북과 비주얼 스튜디오가 있고, 아래에는 파일, 인터넷.. 등등이 있다. 이때 인터넷 아이콘을 클릭하면 진짜 인터넷으로 연결이 된다. 이 인터넷으로 내 자료들을 다운받을 수 있다. 뭐 네이버 메일 내게 쓰기로 파일을 보내도 되고, 내 구글 드라이브에 올려도 된다. 필자는 2번째 방법을 이용했는데, 그 이유는 파일 다운과 코드 다운이 용이하기 때문이다. 앞으로 편의상 DLI 환경이 아닌 내 실제 노트북 환경, 즉 DLI 서버 밖 환경을 "내 환경" 이라 지칭하고, DLI 서버 속 환경을 "DLI 환경"이라 지칭하겠다.
(이때, DLI 환경 내에서는 복붙이 가능하다. 이 점을 이용해서 방법을 서술할 예정이다.)
내 환경에서 DLI 환경으로 파일을 보내고 싶을 때 쓰는 방법은 다음과 같다.
1. 내 환경에서 구글 드라이브를 들어가고, DLI 환경에서 쓰고 싶은 파일들을 업로드 한다.
2. DLI 환경에서 인터넷 아이콘을 클릭해서 인터넷 서버로 들어간다. 이때 맨 상단에 내 구글 드라이브 주소를 입력한다.
(EX. https://drive.google.com/drive/) 근데 이 주소는 사람마다 다르니까, 자기 주소에 맞는 주소를 입력한다. 이때 주소는.. 복붙이 안되므로 손수 입력해야 한다.
3. 아마 바로 들어가지는 못하고, 도서관 PC나 새로운 PC에서 구글 접속할 때처럼 본인 인증 과정을 거쳐야 할 것이다. 폰 숫자 입력하는 과정이나, 본인이 진짜 로그인하는 게 맞는지 등등의 과정을 거친다. (내 기억 상으로는 입력 장소가 미국 버지니아였던 걸로 기억하는데.. 어쨌든 입력 장소가 미국으로 뜰 것이다.)
4. 그래서 이제 DLI 환경 내에서도 내 구글 드라이브 서버 접속이 가능해진다. 이때 아까 전에 내 환경에서 업로드했던 파일들과 코드들을 다운받는다. (오른쪽에 보면 세로줄의 점 3개가 있는데, 그것을 누르면 다운로드가 가능하다.)
5. 4.에서 다운로드된 파일들은, 생쥐 화면에서 user 폴더 클릭해서 다운로드 폴더 들어가면 찾을 수 있다.
6. 만약 코드 복붙만이 목적이라면, 그냥 4.에서 코드 드래그해서 복사(ctrl+c)하면 된다. 그리고 아까 전의 script editor 에 붙여넣기(ctrl+v)하면 코드가 복붙된다!!
이때 코드를 실행시킬 때는 왼쪽 옆의 삼각형을 누르는 게 아니라 enter+___를 해야하는데.. 아마 맨 왼쪽 하단에 보면 run 하기 위해선 어떤 키를 눌러야 되는지 있을 것이다. (지금은 DLI 서버 접속 시간이 거의 다 되어서... 기억에 의존해서 포스팅을 하고 있으므로 양해 부탁합니다..)
나는 비키니 시티를 만들고 싶어서 sketchfab에서 파일들을 다운받았다.
이렇게 sketchfab를 검색하거나, 아래의 링크를 타고 들어가면 된다.
Log in to your Sketchfab account
sketchfab.com
아마 사이트를 이용하기 위해선 로그인을 해야 할 것 같은데... 로그인 하는 데에 얼마 안 걸리니, 빠르게 아이디를 만들자.
이제 본인이 만들고 싶은 환경을 꾸미기 위해, 그에 맞는 3D, 2D 모델들을 검색하자.
예를 들어, spongebob을 검색하면, 아래와 같이 다양한 캐릭터들이 나온다.
여기서 나는 환경이랑 캐릭터들 다운받고, 내 환경의 구글 드라이브에 올린 후, DLI 환경의 구글 드라이브에서 다운받았다.
이제 코드들을 활용해서 캐릭터들을 내 마음에 맞게 등장시켜서 꾸미면 된다.
이때 주의할 점은, 한꺼번에 캐릭터들과 환경들을 등장시키면 안 된다... 렉이 매우매우 잘 걸린다.
따라서 캐릭터들을 하나하나씩 등장시키고, 환경도 하나씩 등장시켜서 충분히 캐릭터들 코드에 익숙해지도록 시간을 주어야한다. (약간 자동차 예열 느낌이라고 생각하면 되겠다.)
나도 처음에는 캐릭터 3마리 한꺼번에 등장시켰다가..... 렉 걸려서.. 다시 하나하나 등장시켰다.
대충 아래와 같다!
이때 캐릭터들 크기랑 회전, 위치 잡는 데에 시간이 정말 많이 걸리는데..
물체마다 지정된 원점이 다르므로 완전 노가다식으로 물체들을 위치시켜야 한다.
이때 사용하는 방법은 코드 상에서 수정하지말고..
오른쪽 메뉴들 보면
Ref Xform 이 있을텐데, 그것을 클릭하면 밑에 rotation, scale.. 뭐 이런 것들이 뜬다. 이런 것들을 조정하면서 본인이 원하는 물체들의 물리량들을 정하면 된다.
내 캐릭터들의 물리량들은 대충 다음과 같다.
![]() |
![]() |
![]() |
음... 뭐.. 추가적으로 또 올리고 싶은 게 있다면 올리겠다.
끝!