본문 바로가기

Computer Vision/CV (Computer Vision)10

BiRefNet (Bilateral Reference for High-Resolution Dichotomous Image Segmentation) BiRefNet 정리요약누끼(배경 제거)에는 근본 딜레마가 있습니다. 입력을 키우면 머리카락 같은 얇은 경계가 살지만 메모리가 폭증하고, 줄이면 경계가 뭉개집니다.BiRefNet의 해법은 참조를 두 갈래로 분리하는 것입니다. 위치는 저해상도 특징으로 싸게 잡고, 경계 디테일만 원본에서 따로 끌어옵니다. "전부를 고해상도로"가 아니라 "필요한 곳만 고해상도 참조"입니다.U-Net이나 IS-Net은 스킵 연결로 인코더 특징만 디코더에 넘깁니다. BiRefNet은 여기에 원본 이미지 패치와 그래디언트 맵이라는 외부 참조 두 갈래를 추가로 주입합니다. 디코더가 "줄어든 특징"이 아니라 "원본 디테일"을 다시 봅니다.사실관계를 정확히 해둘 필요가 있습니다. DIS라는 과제와 DIS5K 데이터셋과 기준선 IS-Ne.. 2024. 11. 25.
Vision Metrics 비전 평가 지표, 같은 "mAP"라도 같은 숫자가 아니다요약비전에서는 "맞았다 틀렸다"만으로 부족합니다. 클래스뿐 아니라 위치까지 맞아야 하기 때문입니다. 그래서 얼마나 잘 겹쳤나(IoU)를 기준으로 검출과 분할 지표 전부가 세워집니다.가장 흔한 착시가 여기 있습니다. VOC식 mAP@0.5와 COCO식 AP@[.5:.95]는 척도가 다른 지표입니다. COCO가 더 엄격해 같은 모델이라도 숫자가 낮게 나옵니다. 두 논문의 "mAP"를 나란히 놓으면 틀린 비교입니다.과제마다 지표가 정해져 있습니다. 분류는 Top-1과 Top-5, 검출은 COCO AP, 시맨틱 분할은 mIoU, 파놉틱 분할은 PQ, 전경 분리는 MAE와 F-measure 계열, 복원과 생성은 PSNR, SSIM, LPIPS, FID입니다... 2023. 7. 13.
[CV] One-Stage와 Two-Stage 차이 One-Stage와 Two-Stage는 객체 감지(object detection) 모델의 접근 방식에 대한 용어로 사용됩니다. One-Stage Detectors One-Stage Detectors는 한 번의 단계로 객체의 경계 상자(bounding box)와 클래스 레이블(class label)을 직접적으로 예측하는 모델입니다.이러한 모델은 일반적으로 입력 이미지 전체에 대해 여러 위치와 스케일에서 밀집 그리드(grid) 또는 제안(proposal)를 사용합니다. 앵커(anchor) 또는 제안에 대해 동시에 분류(classification)와 회귀(regression) 작업을 수행하여 최종 감지 결과를 예측합니다. 대표적인 One-Stage Detectors로는 YOLO (You Only Look On.. 2022. 11. 16.
[CV] 영상 처리(image processing) 영상처리(image processing) : 디지털 카메라를 통하여 영상을 전자적으로 얻은 후, 컴퓨터로 영상을 처리하여 원하는 출력 영상을 얻는 기술 분야 영상처리는 아날로그 영상 처리와 디지털 영상 처리로 구분할 수 있지만 최근에 컴퓨터의 발전으로 영상 처리라고 하면 일반적으로 디지털 영상 처리를 의미한다. 영상은 수학적으로는 2차원 함수 f(x,y)로 정의될 수 있으며, 여기서 x와 y는 2차원 공간 좌표이다. 좌표는 (x, y)에서 f의 값이 그 점에서의 영상의 밝기 (intensity)가 된다. 만약 x와 y가 유한하고 이산적일 때이러한 영상 f(x,y)을 디지털 영상이라고 한다. 디지털 영상은 유한한 개수의 점들로 구성되며, 이러한 점을 화소(pixel: picture element)라고 부른.. 2022. 10. 28.
[CV] VGGNet (Simonyan and Zisserman, 2015) VGGNet 이상적인 구조 형태에 대한 정보를 아직 확보하지 못한 시점에서 Simonyan and Zisserman(2015)는 깊이가 증가함에 따라 나타나느 효과에 대해 확인하는 작업을 수행했다. 이를 위해 기본적인 네트워크에서 최대 뉴런 입력 필드를 3X3으로 제한해 필요한 매개변수의 양을 상당 수준으로 줄였다 구체적으로 합성곱 입력 필드와 스트라이드를 각각 3X3과 1X1 크기로, 각 서브샘플링 레이어에 대해서는 입력 필드와 스트라이드 크기를 2X2로 제한했다. 또한 체계적으로 빠르게 수렴에 도달하도록 하여, 5단계의 레이어를 지남에 따라 224X224에서 7X7로 크기가 줄어들고, 1X1 크기의 단일 완전 연결 단계에 도달하게 딘다. 그런 다음 추가로 2개의 완전 연결 레이러를 지나 최종적으로 s.. 2022. 10. 28.
[CV] ResNet ResNet의 주요 개념 ResNet은 네트워크를 얼마나 깊이 쌓을 수 있을까라는 의문에서 시작되었고, 해당 논문의 연구자들은 일정 수준 이상의 깊이가 되면 오히려 얕은 모델보다 깊은 모델의 성능이 더 떨어진다는 점을 발견했습니다. 그래서 이 문제를 해결할 방법으로 잔차 학습(residual learning)이란 방법을 제시했고 이를 구현한 ResNet으로 2015년 이미지 대회에서 우승했다. 아이디어는 꽤 단순하다. 특정 위치에서 입력이 들어왔을 때 합성곱 연산을 통과한 결과와 입력으로 들어온 결과 두가지 더해서 다음 레이어에 전달하는게 ResNet의 핵심이다. 즉 입력 값을 출력 값에 더해 줄 수 있도록 지름길 (shortcut)을 하나 만들어준 것 뿐이다. 잔차 학습 블록은 이전 단계에서 뽑았던 특.. 2022. 10. 11.
[영상] Bilinear Interpolation Bilinear Interpolation Bilinear interpolation은 우리 말로 적자면 쌍선형 보간법, 또는 이중선형 보간법 정도가 되며 1차원에서의 선형 보간법을 2차원으로 확장한 것이다. Bilinear interpolation 방법을 설명하기 위해 아래 그림과 같이 직사각형의 네 꼭지점에서의 값이 주어져 있을 때, 이 사각형의 변 및 내부의 임의의 점에서의 값을 추정하는 문제를 생각해 보자. 그림과 같이 점 P에서 x축 방향으로 사각형의 변까지의 거리를 w1, w2, y축 방향으로 거리를 h1, h2라 하고, 알려진 네 점에서의 데이터 값을 A, B, C, D라 할 때, P에서의 데이터 값은 bilinear interpolation에 의해 다음과 같이 계산된다 (단, α=h1/(h1+.. 2022. 10. 6.
[CV] 특징(Feature) 이란? 특징 (Feature) 이란? 머신러닝에서 말하는 특징은 관찰된 현상에서 측정할 수 있는 속성 (property)이나 특성 (characteristic)을 말한다. 머신러닝 모델은 특징을 입력받아 예측 또는 분류 결과를 내놓는다. 예를 들어 주택 가격을 예측할 때, 면적, 방의 수, 욕실 등과 같은 속성을 입력하면 모델은 특징값을 기반으로 예측한 주택 가격을 출력한다. 대상을 잘 드러내는 좋은 특징을 선택해야 머신러닝 알고리즘의 정확도를 높일 수 있다 왜 특징을 사용할까? 입력 이미지에는 분류와 무관한 정보가 너무 많다. 그러므로 전처리 후 가장 먼저 해야할 일은 분류에 중요한 정보만 남겨 단순화 시키고 불필요한 정보는 빼는 것이다. 복잡하고 많은 양의 데이터를 이미지의 중요한 일부분이나 색상을 추출하는.. 2022. 9. 26.
[CV] albumentations (Image Augmentation) albumentations Albumentations는 Image Augmentations을 위한 python 라이브러리이다. Image augmentation 은 딥러닝과 컴퓨터 비전에서 학습모델의 성능을 향상시키는 역할을 한다. Image augmentation의 목적은 현재의 데이터로부터 새로운 학습 샘플링을 만들기 위함이다. albumentations의 장점 1. 모든 컴퓨터 비전의 task 를 지원한다 ex) classification, semantic segmentation, instance segmentation, object detection, and pose estimation. 2. 단순화된 통일된 API로 공급 3. 70개 이상의 서로 다른 Augmentation를 포함 4. Fast.. 2022. 8. 23.