본문 바로가기

Computer Vision/Vision Generative4

LaMa-Inpainting LaMa, 큰 구멍을 메우려면 얕은 층부터 이미지 전체를 봐야 한다요약인페인팅은 이미지에서 마스크로 가려진 영역을 그럴듯하게 채우는 작업입니다. 작은 흠집은 옆 픽셀만 봐도 되지만, 큰 구멍은 멀리 떨어진 맥락을 끌어와야 합니다.여기서 병목이 되는 게 수용영역입니다. 3x3 합성곱을 쌓으면 수용영역이 천천히 커지는데, 얕은 층에서는 아직 좁아 마스크 바깥을 못 봅니다. 심하면 생성자의 수용영역이 통째로 구멍 안에 들어가 "볼 게 마스크밖에 없는" 상태가 됩니다.LaMa의 해법은 푸리에 변환입니다. 주파수 영역에서 1x1 합성곱을 하면 점별 연산인데도 공간 영역에서는 이미지 전체에 영향을 줍니다. 얕은 층부터 전역 수용영역이 생깁니다.부수 효과가 큽니다. 모든 주파수에 같은 합성곱을 공유하므로 스케일 동변.. 2024. 2. 20.
[GAN] VAE GAN과 VAE, 확산에 밀려 사라진 게 아니라 부품이 되었다요약GAN과 VAE는 딥러닝 이미지 생성의 두 원류입니다. 데이터 분포를 배워 새 이미지를 만드는 두 가지 서로 다른 접근이고, 오늘날 확산 모델의 직접적 토대입니다.GAN은 암시적 생성입니다. 분포를 직접 계산하지 않고 샘플만 잘 뽑습니다. 선명하지만 불안정하고, mode collapse가 대표 실패입니다.VAE는 명시적 근사입니다. ELBO로 확률을 근사해 최적화합니다. 안정적이고 잠재공간이 매끄럽지만 흐릿합니다.자주 하는 오해 셋. 확산이 이 둘을 완전 대체하지 않았습니다. VAE는 Latent Diffusion의 잠재압축 오토인코더로, GAN의 적대손실은 초해상과 인페인팅에 현역입니다. 그리고 원조 GAN에는 인코더가 없고, 판별자는 배.. 2022. 11. 29.
[GAN] GAN (Generative Adversarial Network) 이란? GAN (Generative Adversarial Network) 이란? ‘Adversarial’이란 단어의 사전적 의미를 보면 대립하는, 적대하는 뜻을 갖는다. 이렇게 적대/대립을 하려면 상대방이 있어야 가능하다는 것을 크게 두 부분으로 나누어져 있다는 것을 알 수 있다 GAN은 다양한 노이즈 (Noise) 입력을 받아 원하는 카테고리의 기존에 존재하지 않는 새로운 이미지를 생성하는 생성(Generative) 네트워크와 생성된 이미지가 가까인지 진짜인지를 판별하는 판별(Discriminative) 네트워크를 적대적으로 (Adversarial) 학습시키며, 입력 이미지나 비디오를 다른 형태나 정보를 지닌 이미지나 비디오를 다른 형태나 정보를 지닌 이미지 또는 비디오로 변환하는 모델이다. 예를들어 두 모델.. 2022. 11. 29.
[GAN] AutoEncoder의 모든 것 (Revisit Deep Neural Networks) 오토 인코더의 모든 것 위키피티아를 통해 오토인코더의 키워드를 뽑아보면 크게 Unsupervised learning, Representation(= efficient coding learning), dimensionality reduction, generative model learning 으로 5가지로 주요 키워드를 뽑아 낼 수 있으며, 이중에서 가장 중요하게 생각하는 것은 dimensionality reduction을 사용하는 것이다. 이중에서 dimensionality reduction의 키워드를 뽑아보면 Unsupervised Learning, Nonlinear dimensionality reduction (= Representation learning = Efficient coding learn.. 2022. 10. 18.