[카테고리:] Engineering
-
[Pytorch] torch.fft 작동 방식
파이토치를 이용해 이미지를 frequency domain으로 변환시켜주는 함수들에 대해 정리해보려 한다. 파이토치의 torch.fft 모듈은 푸리에 변환(Fourier Transform)을 수행하는 다양한 함수를 제공한다. ( 관련 모든 함수들은 다음 링크를 참조 https://pytorch.org/docs/stable/fft.html ) 이번 글에서는 torch.fft.fftn, torch.fft.fftshift, torch.fft.rfftn, 그리고 역변환인 torch.fft.ifftn의 작동 방식을 설명하고 실행예시를 정리하려 한다. torch.fft.fftn 가장 먼저 torch.fft.fftn 이다. n 차원의 tensor에 discrete Fourier transform을 적용시켜주는…
-
[Pytorch] torch.roll 작동 방식
파이토치로 사용할수 있는 torch.roll에 대한 설명과 실행예시이다. 아래 그림처럼 swin transformer를 사용할때 Shifted Window Partitioning을 적용하기 위해 사용하는 함수이고 이미지를 간단하게 shift할 수 있다. 아래는 실행 결과이다. 왼쪽의 이미지를 torch.roll(img_tensor, shifts=(-100, -100), dims=(1, 2)) 를 통해 변환하면 오른쪽 이미지가 된다. 밀린 픽셀 수는 각각 shifts 값으로 설정한 100이다. 변환된 결과를 보면 알겠지만 shift로 넘어가지는 부분이…
-
Git 개념 정리 (Branch, Workflow, Reset)
Why do we need a branching? Branch가 필요한 이유들은 아래와 같다 Branch를 관리하는 방법은 정해져 있지 않고 하기 나름이다. 복잡하고 대규모 프로젝트를 진행할수록 그 중요성이 높아지고 유용해진다. Git Workflow 대략적인 Git에서의 Workflow 의 이해를 돕기 위해 아래의 그림을 먼저 보자 Git에서 Head는 현재 branch를 가리킨다. 이전 포스팅에서 설명했지만 Working Directory는 작업자가 직접 작업을 하고 있는…
-
Git 개념 정리 (What is Git?, Git states)
What is Git? A distributed version control system (DVCS), 즉 분산 버전 관리 시스템의 일종이다. 아래 그림은 다른 local 버전 관리, 중앙 집중형 버전 관리 시스템과 분산 버전 관리 시스템을 그림으로 비교한 것이다. Git (분산 버전 관리 시스템) 에서는 각 Local에서도 버전을 관리할 뿐만 아니라 Server에서도 Version을 관리하고 각각 다른 Computer끼리도 버전을 공유하고 같이 관리할…