본문 바로가기

STUDY

(136)
Cannot handle this data type: (1, 1, 3), <f8 해결방법 넘파이 배열을 PIL 이미지로 변경하는 과정에서 에러가 발생했다. 에러를 자세히 보면 img_hr_arr, img_lr_arr는 잘 넘어가는데 img_lr_up에서 안된다. 그래서 4개의 이미지 각각의 타입을 확인해보았다. 타입을 보니 PIL로 변경이 되던 배열은 uint8타입이다. 안되는 배열은 float64이다. 이 에러를 해결하기 위해 astype()을 사용하여 타입을 uint8로 변경하면 된다. test3 = Image.fromarray(img_lr_up.astype(np.uint8)) test4 = Image.fromarray(img_lr_up_arr.astype(np.uint8)) 오류 없이 잘된 것을 알 수 있다.
(Neurocomputing 2022) SRDiff : Single image super-resolution with diffusion probabilistic models 리뷰 및 공부 * 논문 링크 https://www.sciencedirect.com/science/article/pii/S0925231222000522 SRDiff: Single image super-resolution with diffusion probabilistic models Single image super-resolution (SISR) aims to reconstruct high-resolution (HR) images from given low-resolution (LR) images. It is an ill-posed problem… www.sciencedirect.com * 저널 정보 SRDiff는 작년 논문으로 Neurocomputing에 발표된 논문이다. Neurocomputing이라는 저널은 처음..
torch.unsqueeze , torch.squeeze, torch.cat 설명 차원 변경을 위함. * torch.unsqueeze(input, dim) input : tensor dim : int 1을 어느 dim에 추가 할건지? 정하는 것 x = torch.unsqueeze(x,dim) [ 예시] 오리지널 입력을 만들어 놓는다. (3, 3)형태임. 이와 같이 dim을 0으로 한 후 unsqueeze 하면 0차원 자리에 1이 들어가는 것을 알 수 있음. 모양 또한 (1, 3, 3)에 맞춰서 바뀜 이와 같이 dim을 1으로 한 후 unsqueeze 하면 1차원 자리에 1이 들어가는 것을 알 수 있음. 모양 또한 (3, 1, 3)에 맞춰서 바뀜 이와 같이 dim을 2으로 한 후 unsqueeze 하면 2차원 자리에 1이 들어가는 것을 알 수 있음. 모양 또한 (3, 3, 2)에 맞춰서..
@staticmethod 란? @staticmethod 란 정적 메서드임 이 메서드를 사용하면 매개변수에 self 지정을 안해도 됨. self를 받지 않으므로 인스턴스 속성에는 접근할 수 없음. 위의 예시 코드를 보자면 @staticmethod가 적혀있는 cumsum 이라는 메서드는 self를 매개변수로 지정 안함. 따라서, 이는 보통 인스턴스 속성, 인스턴스 메서드라 필요하지 않을 경우에 사용함 쉬운 말로, cumsum 안에 있는 내용과 상관 없이 결과만 구하면 될 경우에 사용!
Diffusion model (1) https://youtu.be/a4Yfz2FxXiY 위 유튜브 내용을 정리한 것. *개요* [GAN : Generative Adversraial Network] 고품질 출력을 생성하지만 훈련하기 어려움 적대적 훈련을 통해 Vanishing gradients 혹은 mode collapse라는 문제를 일으킬 수 있음 [VAE : Variational Autoencoder] 입력을 잠재 분포로 압축한 후 훈련 훈련된 이 분포에서 샘플링하여 입력을 다시 복구함 따라서, GAN에 비해 이미지 품질이 좋지 않음 [Diffusion model] GAN의 다양성, VAE의 안정성을 모두 보장해주는 모델임 완전한 노이즈가 될때까지 입력에 노이즈를 더해줌 그 후, 신경망을 통해 노이즈에서 입력으로 복구하는 방식으로 작동 ..
An exception has occurred, use %tb to see the full traceback. 주피터 노트북에서 argparser 사용하기 .py 파일에서 사용하는 것처럼 argparse를 아래와 같이 해서 해보았다. 에러 발생... 어떻게 해결해야하나.. 고민도 하고... 저 많은 변수들을 하나하나 지정해야하나? 막막 했을 즈음.. 요 부분을 고치면 해결된다는 것을 알았다! args = parser.parse_args(args=[]) parse_args()안에 args=[]를 넣으면 해결된다 :) 성공!!
[프로그래머스] 겹치는 선분의 길이 파이썬 [나의 코드] def solution(lines): answer = 0 box = [line for line in lines] b_box = [] for b in box : for i in range(b[0]+1, b[1]+1): b_box.append('{0} {1}'.format(i-1,i)) bb_box = list(set(b_box)) for bb in bb_box: if b_box.count(bb)>1: answer += 1 return answer [다른 사람 코드] def solution(lines): sets = [set(range(min(l), max(l))) for l in lines] return len(sets[0] & sets[1] | sets[0] & sets[2] | sets[..
tensor 이미지 저장하는 법 tensor 이미지를 저장하는 방법은 아래 코드와 같다. from torchvision.utils import save_iamge save_image(img, '저장하고자하는 경로/이미지 명') 아래 캡쳐본과 같이 실제로 해보면? 아래 캡쳐 사진과 같이 잘 저장됨.

728x90