no image
[Pytorch] 이미지 데이터세트에 대한 평균(mean)과 표준편차(std) 구하기
이미지 데이터는 촬영된 환경에 따라 명도나 채도 등이 서로 모두 다르기 때문에 영상 기반 딥러닝 모델을 학습시키기 전에 모든 이미지들을 동일한 환경으로 맞춰주는 작업이 필요하다. 즉, 전체 이미지에 대한 화소 값의 평균(mean)과, 표준편차(standard deviation)를 구하여 이 값들을 영상에 일괄적으로 적용하는 과정이 필요하다. 보통 Imagenet 데이터 세트에서 계산된 평균과 표준을 사용하게 된다. 이는 수백만 개의 이미지를 기반으로 계산된다. 자신의 데이터 세트에서 처음부터 학습하려는 경우 평균과 표준을 계산할 수 있지만, 그렇지 않은 경우(대부분) 자체 평균 및 표준이있는 Imagenet 으로 학습된 pre-trained model 을 사용하는 것이 좋다. 파이토치 데이터 세트에서 평..
2021.05.11
no image
Pytorch 에서의 TopK error (k not in range for dimension)
pytorch 에서의 input tensor 에서 주어진 k 값에 따라 가장 큰 값 k 개를 찾는 함수이다. image classification 에서 train/validation 시 accuracy 측정할 때 자주 사용된다. 아래와 같은 에러는 TopK 범위를 잘못 지정하였을 때 나는 에러이다. RuntimeError: invalid argument 5: k not in range for dimension at /pytorch/aten/src/THC/generic/THCTensorTopK.cu:26 RuntimeError: invalid argument 5: k not in range for dimension at /pytorch/aten/src/THC/generic/THCTensorTopK.cu:2..
2021.05.10
no image
[Linux] tar / tar.gz / zip 압축 및 압축 해제
보통 리눅스에서 파일을 압축 파일을 다룰 때, "tar로 압축(compress)한다"는 표현을 쓰는 경우가 많은데, 정확히 말하자면 tar 자체는 "데이터의 크기를 줄이기 위한 파일 압축"을 수행하지 않는다. 단지 여러 파일을 하나의 파일로 묶는 용도로 사용될 뿐이다. 대신, tar를 통해 하나로 합쳐진 파일을 gzip 또는 bzip2 방식을 사용하여 압축할 수 있다. (명령어로 수행 가능) tar가 널리 쓰이게 된 이유 중 한 가지는, 단순 아카이버 기능에 더해, tar로 묶여지기 전 파일들의 속성과 심볼릭 링크, 디렉토리 구조 등을 그대로 가져갈 수 있는 특징 때문이다. 그래서 최근에는 리눅스 용 프로그램, 데이터, 소스 및 라이브러리 등을 배포하는 용도로 많이 사용된다. 0. tar 명령어 옵션 (..
2021.05.10
no image
VNC viewer 에서 Pycharm 실행 시 DISPLAY 문제
VNC Viewer 에서 Pycharm 실행 시 아래와 같이 X11 window server 에 연결하지 못한다는 에러가 난다. Can't connect to X11 window server using 'localhost:2.0' as the value of the DISPLAY variable. 이와 관련된 해결법으로 $DISPLAY 변수를 지정해주는 방법들이 나왔는데, 아래와 같이 먼저 xhost + 명령어를 실행해주면 된다. 이 때 root 권한으로 아래와 같이 실행해준다. 이는 Xwindow의 모든 창들은 Owner(root)의 허락없이 열수 있다는 의미이다. $ xhost + 그 다음 local 환경에서 pycharm.sh 를 실행하면 실행이 정상적으로 된다. 참고자료 1 : xinet.kr/?..
2021.05.10
[Linux] Shell Script 활용하여 HEIC 파일 jpg 파일로 변환 시키기
리눅스 환경에서 쉘 스크립트로 heif-convert 패키지를 사용하여 HEIC 파일을 jpg 파일로 변환 시킬 수 있다. 참고로 HEIC 파일은 아이폰에서 주로 볼 수 있는 확장자이다. 가령 찍은 사진을 컴퓨터로 옮기면(e.g. 구글 드라이브) 이 확장자로 나타나기 때문에 변환이 필요하다. 1. heif-convert 패키지 다운로드 $ sudo add-apt-repository ppa:strukturag/libde265 $ sudo apt update $ sudo apt upgrade $ sudo apt-get install libheif-examples 2. (단일 파일) HEIC 파일 jpg 파일로 변환 시키기 $ heif-convert infile.heif outfile.jpg 3. (복수 파일..
2021.04.15
no image
[TensorRT] trtexec 사용하기
1. TensorRT 를 설치 2020.04.21 - [AI Development/TensorRT] - [TensorRT] NVIDIA TensorRT 개념, 설치방법, 사용하기 2. /usr/src/tensorrt/samples 에서 make 하여 빌드하기 3. /usr/src/tensorrt/bin 에 실행파일 생성됨 4. /usr/src/tensorrt/bin/trtexec 실행 $ /usr/src/tensorrt/bin/trtexec --help 아래와 같이 사용할 수 있는 명령어 확인 $ ./trtexec --help 모델 변환 시 saveEngine 을 지정하여 모델을 저장 가능 모델 실행 시 loadEngine 을 지정하여 모델 테스트 가능 (속도 테스트) INT8 Calibration 캐시..
2021.03.30
[Linux] 리눅스 scp 명령어 사용법
scp secure copy의 줄임말로 ssh를 이용하여 네트워크로 연결된 호스트간에 파일을 주고받는 명령어 원격지에 있는 파일과 디렉터리를 보내거나 가져올 때 사용하는 파일 전송 프로토콜 ssh와 동일한 22번 포트와 identity file을 사용해서 파일을 송수신하기 때문에 안정된 프로토콜 1. 로컬에서 원격지로 파일 전송 단일 파일을 원격지로 전송할 때 scp [옵션] [파일명] [원격지_id]@[원격지_ip]:[받는 위치] $ scp test1.txt root@192.168.000.000:/test 복수 파일을 원격지로 전송할 때 scp [옵션] [파일명 1] [파일명 2] [원격지_id]@[원격지_ip]:[받는 위치] $ scp test1.txt test2.txt root@192.168.000..
2021.03.24
docker 에서 authentication required 문제
docker docker pull 사용 시 아래와 같이 에러 나는 경우가 있다. Error response from daemon: Head https://~~~~: unauthorized: authentication required 아래와 같이 해결하면 된다. 1. 아래 사이트에서 엔비디아 계정과 같은 계정으로 로그인 (API key 를 생성하여 사용 필요) ngc.nvidia.com/ NVIDIA NGC ngc.nvidia.com 2. API key 는 안전한 곳에 저장 3. 도커 로그인 $ docker login nvcr.io Username: $oauthtoken Password: [API KEY] 4. 원하는 이미지 다운받기 $ docker pull nvcr.io/nvidia/pytorch:19...
2021.03.08
[GStreamer] 참고자료
GStreamer Tutorials gstreamer.freedesktop.org/documentation/tutorials/index.html?gi-language=c Tutorials Tutorials Welcome to the GStreamer Tutorials! The following sections introduce a series of tutorials designed to help you learn how to use GStreamer, the multi-platform, modular, open-source, media streaming framework. Prerequisites Before following these gstreamer.freedesktop.org GStreamer A..
2021.03.03
[Python] Ubuntu 18.04 에서 Python3.5 빌드하여 설치하기
1. 필수 패키지 설치 1 apt-get install libssl-dev apt-get install make build-essential libssl-dev zlib1g-dev libbz2-dev libsqlite3-dev 위와 같이 필요한 패키지를 설치하고 파이썬을 설치해야 정상 설치가 된다. 1-1. 필수 패키지 설치 2 sudo apt-get install libssl1.0 필자는 추가로 위 패키지도 설치해주었다. 위 패키지를 설치하지 않고 파이썬을 설치하고나서 pip 를 설치할 때 자꾸 아래와 같은 에러가 발생한다. 이것 때문에 2시간 삽질함, 아래는 삽질 기록이다. ~$ curl https://bootstrap.pypa.io/get-pip.py | python3.5 % Total % Rece..
2021.02.17
/usr/bin/ld: cannot find -luuid
/usr/bin/ld: cannot find -luuid 에러 발생 시 sudo apt-get install uuid-dev 참고자료 : www.programmersought.com/article/5373747707/ The solution to the -llzo2 and -luuid problems occurred during the android source code compilation process - Programmer Sought forward from:http://blog.csdn.net/hhwahzl/article/details/46520137 1. The following error occurred during the compilation process: lzo/lzo1x.h: No su..
2021.02.15
[Git] 한글 깨짐 문제
Git status 사용 시 한글 깨질 때 아래와 같은 옵션을 주면 해결된다. git config --global core.quotepath false 참고자료 : jyami.tistory.com/89 git status 한글 깨짐 git status를 할 때, 한글이름을 가지는 파일일 경우에 /200/300/385 이런식으로 파일명이 깨지는 경우가 있다. (mac 터미널) git config --global core.quotepath false 위 설정으로 바꾸면 올바르게 한글이름 파.. jyami.tistory.com
2021.02.09