no image
Opencv 설치시 fatal error: va/va.h: No such file or directory 오류
libva-dev 패키지에 포함된 va/va.h 헤더 파일을 찾을 수 있어야 하는데 못찾아서 생긴 오류입니다. VA API는 비디오 가속을 위한 오픈소스 라이브러리입니다. 대부분의 Linux 배포판에서는 libva-dev 패키지에 해당 파일들이 포함되어 있습니다. sudo apt-get updatesudo apt-get install libva-dev위 코드를 실행하고도 다시 빌드하여도 안될경우에는 cmake -DCMAKE_CXX_FLAGS="-I/usr/include/va" -DCMAKE_C_FLAGS="-I/usr/include/va" ../{opencv_path}위와 같이 헤더파일 경로를 추가적으로 명시하여 해결할 수 있습니다.
2024.03.12
no image
Pytorch Tips(정리중)
torch.numel torch.numel input tensor에 대해 element의 총 개수를 return >>> a = torch.randn(1, 2, 3, 4, 5) >>> torch.numel(a) 120 >>> a = torch.zeros(4,4) >>> torch.numel(a) 16
2023.04.03
no image
Pythonic한 코드를 위해서(정리중)
Python 에러 핸들링 방식: Printing vs Logging # option A try: do_something_that_might_error() except Exception as error: traceback.print_exc() # option B import logging logging.basicConfig(level=logging.DEBUG) logger = logging.getLogger(__name__) try: do_something_that_might_error() except Exception as error: logger.exception(error) 파이썬의 dictionary 접근방식 # option A example_dict = {'foo': 'bar'} if exampl..
2023.04.03
no image
3 in pd.Series(3) 이게 왜 False일까?
연산되는 방식 python의 모든 연산자는 특수메서드로 구현되어있다. 따라서 p in z라는 구문을 실행했을 때 __contains__라는 특수메서드가 호출되게 된다. pandas 구현 아래의 특수메서드가 호출된다 이때 key in self._info_axis연산을 하게 되는데 # pandas.core.generic.py > NDFrame > __contains__ @final def __contains__(self, key) -> bool_t: """True if the key is in the info axis""" return key in self._info_axis 따라서 아래와 같은 방식으로 Index의 값과 비교해야지 True를 반환한다. * 추가적으로 @final 데코레이터는 상속 및 재정의..
2023.03.25
no image
Functools(정리중)
Partial 어떤 특정한 함수가 주어졌을 때 특정 인수가 미리 채워진채로 함수를 정의하기 위해서 사용됨 거듭 제곱의 함수가 아래와 같이 주어졌다고 가정하자. def power(base, exponent): return base ** exponent 이 때 지수가 고정 된 함수를 만들기 위해선 아래와 같은 함수를 구현해야 한다. def square(base): return power(base , 2) def cube(base): return power(base, 3) 하지만 이럴 경우 중복 코드가 작성 되기 때문에 아래와 같이 partial 함수를 써 새로운 함수를 간결하게 만들 수 있다. from functools import partial square = partial(power, exponent=2..
2023.03.21
no image
Custom mini-batch Loader
Custom mini batch Loader로 원하는 데이터 mini batch에 강제하기 현재 축관 제조공정 중 결함을 감지하는 Object detection Task에서 데이터 셋 3만장 중 결함이 있는 데이터는 3%에 불과합니다. 하지만 학습환경상 최대 설정 batch size가 8이었고, mini batch 안에 결함이 들어갈 이미지가 들어갈 확률은 극도로 작아 결함데이터에 대해 학습하지 못할 가능성이 높았습니다. 따라서 custom mini batch loader를 만들어 이 문제를 해결하려 했습니다. 1) Pytorch 구현 방식 파이토치에서 기본적으로 데이터로더를 쓸 때 불러와지는 것은 Dataset RandomSampler BatchSampler DataLoader 이 4가지 입니다. py..
2023.03.21