NeRF Code Review - def batchify(fn, chunk)

HeyHo·2022년 11월 4일
0

NeRF code Review

목록 보기
6/7
def batchify(fn, chunk):
    """Constructs a version of 'fn' that applies to smaller batches.
    """
    if chunk is None:
        return fn
    def ret(inputs):
        return torch.cat([fn(inputs[i:i+chunk]) for i in range(0, inputs.shape[0], chunk)], 0)
    return ret
  1. if chunk is None:
    • chunk가 정해져 있지 않으면, fn을 반환한다. default 값으로 1024*64가 저장되어 있다.
  2. def ret(inputs):
    return torch.cat([fn(inputs[i:i+chunk]) for i in range(0, inputs.shape[0], chunk)], 0)
    • fn은 NeRF의 class object이다.
    • chunk 단위 만큼 input을 잘라서 NeRF network에 input으로 넣어준다.
      • 이 부분에서 run network가 실행된다(?) 추후에 알아보고 수정
    • fn(inputs[i:i+chunk]를 통해서 batch화 된 ray들이 NeRF network로 들어가서 RGB estimation이 진행된다.
profile
Coputer vision, AI

0개의 댓글