본문 바로가기
  • AI 개발자가 될래요

Python35

[Python] Pyqt5로 GUI 제작 시 모니터 해상도, 배율에 따른 사이즈 변화 조정 Pyqt5로 GUI 제작 시 모니터 해상도, 배율에 따른 윈도우, 폰트 사이즈 변화 조정 요즘 Lip Color Change GUI를 작성중인데.. 사용하는 모니터의 해상도와 배율에 따라서 GUI의 크기가 달라지고 폰트가 짤린다. 예를 들면 화면 배율을 200%(노트북 제조사에서 권장하는 배율) 로 설정 시 아래와 같이 버튼이 짤린다. 따라서 해상도와 배율에 독립적인 GUI를 만들 필요가 있다. 이 문제를 해결하는 방법은 아래와 같다. 맨 위에 import 부분에 다음 코드를 넣어준다. 여러 warning들을 설정해 준다. from os import environ def suppress_qt_warnings(): environ["QT_DEVICE_PIXEL_RATIO"] = "0" environ["QT_.. 2023. 6. 14.
[아나콘다] anaconda3 가상환경 삭제 아나콘다3 가상환경 삭제 방법 1. 현재 가상환경 리스트 출력 현재 만들어진 가상 환경들을 출력하는 명령어를 입력해보자. conda info --envs 그러면 만들어진 가상환경들이 나오는데, 나는 여기서 'torch2others' 가상 환경을 지우고 싶다. 2. 가상환경 삭제 가상환경을 삭제하는 명령어는 다음과 같다. {가상환경 이름} 대신 지우고 싶은 가상환경의 이름을 적으면 된다. conda env remove -n {가상환경 이름} 필자의 경우에는 'torch2others'를 지우고 싶었으므로 이렇게 입력했다. conda env remove -n torch2others 3. 가상환경 삭제 확인 확인차 conda info --envs 를 입력하면 'torch2others' 가상환경이 삭제된 것을 볼.. 2023. 3. 13.
[Python] Segmentation 분야에서 클래스 별 레이블이 필요할 때 - Label One-Hot Encoding / python 코드 Segmentation 분야에서 딥러닝 모델을 학습시킬 때, 레이블에는 주로 아래 사진과 같이 한 장의 이미지에 픽셀 별로 Segmentation된 이미지가 들어간다. 하지만 모델을 고치거나 Loss Function을 변형하려 하면 각각의 클래스들로만 구성된 레이어들이 필요할 때가 있다. 나는 Fairness Learning을 위해 DRO를 사용하거나, Focal Loss Function을 사용하기 위해 필요했다. 예를 들어 클래스가 왼쪽 눈, 오른쪽 눈, ... , 목 으로 총 19개 있다면 왼쪽 눈만 있는 레이어, 오른쪽 눈만 있는 레이어, ... , 목만 있는 레이어 해서 총 19개의 레이어가 필요한 것이다. 사진을 보고 예시를 들자면 아래와 같은 레이어들이 필요한 것이다. Label One-Hot.. 2023. 2. 2.
[한국어] OMP: Error #15: Initializing libiomp5md.dll, but found libiomp5md.dll already initialized. Style-Gan 기만 모델을 계속 돌려보다가 에러가 떴다. https://stackoverflow.com/questions/53014306/error-15-initializing-libiomp5-dylib-but-found-libiomp5-dylib-already-initial Error #15: Initializing libiomp5.dylib, but found libiomp5.dylib already initialized Getting the error message when using matplotlib: Error #15: Initializing libiomp5.dylib, but found libiomp5.dylib already initialized OMP: Hint: This means .. 2023. 1. 31.
[Python] 2차원 리스트 원소 별로 합치는 방법 - 2차원 리스트를 원소 별로 합치는 방법 아래와 같이 (1, 3) shape의 2차원 리스트가 있다고 가정해보자. a = [[1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1], [1, 0, 0, 1, 1, 0, 1, 0]] 우리가 원하는 답은 리스트 a의 원소 별로 합쳐서 새로운 1차원 리스트를 만드는 것이다. 위 예제와 같은 경우에는 sum(a[0]) = 8 sum(a[1]) = 8 sum(a[2]) = 4 이므로 [8, 8, 4] 와 같은 output을 얻고 싶다. 이를 구하는 방법은 다음과 같다. sum_a = list(map(sum, a)) print(sum_a) >> [8, 8, 4] output은 우리가 원하는 대로 [8, 8, 4]가 나온다. 2023. 1. 25.
[PyTorch] Setting up PyTorch plugin "upfirdn2d_plugin"... 문제 Image Inpainting Task를 하다 Setting up PyTorch plugin "upfirdn2d_plugin"... 문제에 직면했다. 구글링 해보니 stylegan2 에서 종종 발생하는 문제인가보다.. MAT https://github.com/fenglinglwb/MAT GitHub - fenglinglwb/MAT: MAT: Mask-Aware Transformer for Large Hole Image Inpainting MAT: Mask-Aware Transformer for Large Hole Image Inpainting - GitHub - fenglinglwb/MAT: MAT: Mask-Aware Transformer for Large Hole Image Inpainting git.. 2022. 12. 20.