[Conda] miniconda의 기본 채널 변경 : conda-forge
·
Programming
1. conda에서 channel이란?conda를 통해 패키지 관리 및 가상환경 관리를 할 때, channel을 틍해 어디서 패키지를 가져와 설치할지를 지정할 수 있다. chnnel은 간단히 말하자면, 패키지들이 저장되어 있으면서 호스팅 되는 위치라고 생각하면 된다.conda는 https://repo.anaconda.com/pkgs/를 default channel로 사용.2. conda-forge란?이 글의 제목에 보이는 conda-forge는 여러 자발적인 기여자들이 모인 conda-forge라는 커뮤니티에서 운영 및 관리하는 conda용 채널이다.개인도 채널을 운영가능한 구조이므로 정말 많은 채널이 존재함.그 중에서도 기본 채널 그 이상의 퀄리티를 보여주는 채널이 바로 conda-forge라고 생각한..
sh파일(non-interactive shell script)에서 conda 가상환경 activation!
·
Programming
ubuntu에서 셀스크립트를 작성하던 중, conda activate 가 동작하지 않던 문제가 발생.non-interactive shell script 의 경우 ~/.bashrc 를 로드하지 않아서 이를 통한 초기화가 수행되지 않음.cron 등을 이용한 경우가 전형적인 non-interactive shell script 임.셀 스크립트 작성방법가상환경 이름이 test라고 한다면, 다음과 같이 처리해야 함.#!/bin/bashsource ~/miniconda3/etc/profile.d/conda.shconda activate test이하생략.위의 경우는 miniconda를 설치한 경우이며 anaconda인 경우 첫번째 줄을 다음과 같이 변경.#!/bin/bashsource ~/anaconda3/etc/pr..
PIL과 opencv에서의 image 변환.
·
Programming/DIP
PIL과 opencv에서의 image 변환.필요성tensorflow 나 pytorch등에서의 이미지 로딩의 경우,일반적으로, PIL.Image.Image를 기본적으로 이미지를 위한 class 타입으로 사용함.from tensorflow.keras.preprocessing import imageimage_tf = image.load_img('test.gif')print(f'type : {type(image_tf)}') 결과는 다음과 같음type : opencv or scikit-image를 이용한 전처리 수행하고 싶은 경우에는 이 두 라이브러리의 데이터 간 변환이 필요함. 위의 두 패키지 모두 NumPy의 ndarray를 사용하여 이미지를 다룸: channel 순서만 차이가 있음 (BGR or RGB)..
Conda backup for DIP 2021
·
Programming/DIP
Pre-requirements conda : 4.10.3 (miniconda) yml file : 참고 conda env export --from-history > dip2021.yml cmd conda env create -f dip2021.yml dip라는 이름의 virtual env 생성됨. opencv, matplotlib, scikit-image, jupyterlab, git 등의 패키지 설치됨. 삭제하기 설치한 virtual env 삭제하려면 다음을 수행. codna env remove -n dip References Exporting an environment file across platforms(conda.io)
NumPy : sum, mean, std, and so on
·
Programming/DIP
영상이나 텐서를 처리할 때, 각 pixel intensity 나 각 요소에 대해 다양한 통계처리가 필요함.NumPy는 자체적으로 다양한 통계처리 함수들 (집계함수, 또는 Aggregation Function 이라고 불림) 을 제공함. 참고로, 영상 데이터에서는 pixel (or element)의 값이 NaN인 경우가 거의 없으나다른 matrix나 tensor 데이터의 경우에는 NaN 인 원소를 가질 수 있음.이 경우, NaN Safe Aggregation Functions를 사용하여 NaN은 무시하고 값을 구할 수 있음.https://ds31x.tistory.com/223 [Tensor] NaN Safe Aggregation FunctionsNaN (Not a Number) 값을 포함하는 Tensor 인..
NumPy 검색
·
Programming/DIP
np.where# np.where는 NumPy의 조건 기반 선택 함수np.where(condition[, x, y]) Return elements chosen from x or y depending on condition.condition : 검색에 사용될 조건.실제로 boolean array가 됨.x : condition이 True에 해당하는 위치에 지정되는 값 또는 array (검색에 사용된 ndarray로 broadcast처리 가능한 shape이어야 함)y : condition이 False에 해당하는 위치에 지정되는 값 또는 array (검색에 사용된 ndarray로 broadcast처리 가능한 shape이어야 함)반환값x,y를 설정해준 경우엔 조건에 따라 해당 값으로 채워진 ndarray임.아닌 ..