- Today
- Total
목록분류 전체보기 (388)
작심삼일

My Summary & Opinion 단순히 SRCNN을 HEVC에 적용했던 IFCNN 과 달리 VRCNN은 다양한 filter size를 가진 네트워크를 설계했다. HEVC는 압축할 때 다양한 크기의 block을 사용하기 때문에 그 특성을 살리기 위해 다양한 filter size를 사용했다. 하지만 난 variable filter size를 사용한 것은 codec의 특성을 살린 것이 아니라 생각한다. 다양한 filter size를 사용하면 다양한 feature map을 뽑을 수 있기 때문에 단순히 codec에만 적용되는 것이 아니라 SR 문제에도 적용할 수 있다고 생각한다. 비교실험을 할 때 다른 마땅한 네트워크가 없었기 때문에 AR-CNN랑 비교했다고 생각하지만, 왜 IFCNN이랑 비교하지 않았는지 ..

디자인 패턴을 모르는 사람이 스터디를 하며 적은 것이라 틀린 부분이 있을 수 있습니다. 틀린 부분은 알려주시면 감사하겠습니다. 어떤 패턴인가 전자과에서는 디지털논리회로인가하는 과목에서 이 state를 이용해서 회로를 설계한다.그래서그런지 이 패턴이 반갑게 느껴졌다.그때 배웠던 것처럼 state에 따라 행동을 다르게 하는데, 그것을 그대로 함수로 구현하는 것이 State Pattern이다. 객체 내부 상태에 따라 스스로 행동을 변경할 수 있게 허가하는 패턴으로, 이렇게 하면 객체는 마치 자신의 클래스를 바꾸는 것처럼 보인다. 어떻게 쓰는가 각 상태에 따라 다르게 행동해야할 때 사용한다. 예를 들면, 횡단보도의 신호등이 빨간불일 때 브레이크를 밟고 초록불일 때 악셀 밟는 식으로 생각할 수 있다. 신호등이라는..

디자인 패턴을 모르는 사람이 스터디를 하며 적은 것이라 틀린 부분이 있을 수 있습니다. 틀린 부분은 알려주시면 감사하겠습니다. 어떤 패턴인가 "객체에 동적으로 새로운 책임을 추가할 수 있게 합니다. 기능을 추가하려면, 서브클래스를 생성하는 것보다 융통성 있는 방법을 제공합니다." 라고 책에 적혀있지만, 나는 이해하기 어려웠다. 스터디를 마친 후에야 decorator pattern이 이해됐는데, 한마디로 정리하자면, 기능을 계속 추가하는 패턴이다. 기본에 이것저것 가져다 붙일 때나, 규모를 분할하고 계층화할 때 유용하다. 하지만 데코레이터가 너무 많아지면 지저분해지고(여느 코드가 그렇 듯), 어디서 책임이 추가된 것인이 확인하기 어려워진다. 어떻게 쓰는가 Component, ConcreteComponent..

My Summary & Opinion 비디오 코덱의 In-loop 부분을 deep learning으로 대체한, SRCNN와 같이 전형적인 깃발 꼽기 논문이라고 생각된다. SRCNN을 그대로 가져와 SAO를 대체했다. 실험도 작은 크기의 영상에 적용한 결과만 있기 때문에 큰 영상에서는 어떻게 나올 지 궁금하다. AI 모드에서 성능이 제일 뛰어난 것은, SRCNN 자체가 SR 문제를 풀기위해 고안된 모델인데, AI 모드에는 IFCNN이 post-processing으로 들어가 또 다른 SR 문제라고 볼 수 있기 때문이라고 생각된다. Introduction HEVC는 blocking artifacts, ringing artifacts, blurring artifacts를 없애기 위해 in-loop filteri..

My Summary & Opinion 이 논문에서 제일 맘에 드는 점은 이름이 직관적이라는 점이다. Squeeze-and-Excitation이라는 이름을 보면 누구나 이것이 어떻게 작동하는지 와닿을 것이다. Squeeze 하는 부분은 핵심 feature들만 남기는 역할을 하고, Excitation은 그 핵심 feature들의 channel-wise dependency를 사용할 수 있게 하는 역할을 한다. 그 이후에 원래 크기로 다시 rescaling을 진행한다. SE block에서 제일 중요한 부분은 Excitation 부분이라고 생각한다.핵심 feature들을 뽑는 것은 쉽지만, 그것들을 어떻게 사용하느냐에 따라서 성능이 많이 달라지기 때문이다. 그리고 다른 네트워크들에 쉽게 적용할 수 있는 점이 SE..

디자인 패턴을 모르는 사람이 스터디를 하며 적은 것이라 틀린 부분이 있을 수 있습니다. 틀린 부분은 알려주시면 감사하겠습니다. 어떤 패턴인가 이 패턴도 개념은 이해하기 쉬웠다. 이름이 Template인 것처럼 알고리즘의 뼈대만 정의하고, 구체적인 수행 방법은 서브클래스에서 정의한다. 하지만 곧 Factory method와 헷갈리기 시작했다.내 스스로 정리해본 결과, Factory method보다 Template method가 좀 더 작은 내용인 것 같다.밑에도 써놨지만, 서브클래스의 확장을 제어하기 때문이다. 어떻게 쓰는가 대부분의 기능은 같지만, 사소한 부분이 다를 때 주로 사용한다. 또한 동시에 서브클래스를 어느 정도 제어하고 싶을 때도 사용한다. 많은 분들이 커피 만드는 것을 예시로 드는데, 이 예..

디자인 패턴을 모르는 사람이 스터디를 하며 적은 것이라 틀린 부분이 있을 수 있습니다. 틀린 부분은 알려주시면 감사하겠습니다. 어떤 패턴인가 Prototype method. 한글로는 원형 패턴이라고 한다. 난 이 '원형'이 circular list처럼 circle이라는 뜻인 줄 알았는데, 그게 아니라 '원본'의 뜻이었다;; Prototype의 의미먼저 생각해봤으면 이런 일은 없었을텐데 멍청하게 왜그랬을까... 아무튼 이 패턴도 매우 간단하다. 쉽게 말해 ctrl+C/V, 복붙을 할 때 사용하면 된다. 똑같은 객체를 매번 만들기 귀찮으니 cloning을 하는 것이다. 예시를 보면 이해가 빠르다. 어떻게 쓰는가 Prototype: 인터페이스 정의 ConcretePrototype: 복제 연산 구현 Client..

My Summary & Opinion PSNR에 의구심을 갖고 진행되는 연구가 많고, EnhanceNet도 그중 하나다. 기존의 Euclidean loss를 사용해 학습한 네트워크로는 PSNR 기준으로 SOTA를 찍었고, photo-realistic한 이미지를 만들기 위해 adversarial training, perceptual loss, texture transfer loss를 이용했다. Adversarial training과 perceptual loss는 이전의 SRGAN에서 사용했으니 texture transfer loss가 이 논문의 핵심이 되겠다. Texture transfer loss가 style transfer에서 사용되는 loss라는데, 그 영역에 대한 공부는 하지 않았지만, 수식을 보니..