오픈소스 배경 제거 SOTA 모델 'FeyNoBg'와 학습 라이브러리 공개
Feyn Labs 연구진이 8개 벤치마크에서 최고 수준의 성능을 기록한 자동 배경 제거 모델 'FeyNoBg'와 이를 학습시킬 수 있는 오픈소스 라이브러리 'NoBg'를 공개했습니다. 이 모델은 피사체 인식 능력과 경계선 처리(이미지 매팅) 능력의 불균형을 해결하기 위해, BiRefNet 아키텍처를 확장하고 정제된 합성 데이터로 학습시켜 복잡한 이미지에서도 훌륭한 결과물을 냅니다. 개발자들은 허깅페이스(Hugging Face)와 깃허브(GitHub)를 통해 모델과 라이브러리를 무료로 다운로드하고 직접 커스텀 모델을 구축할 수 있습니다.
연구 · 현장 노트 FeyNoBg: 배경 제거를 위한 SOTA(State-of-the-Art) 모델 저자: Hafedh Hichri, Shreyash Nigam 소속: Feyn Labs 발행일: 2026년 7월 21일 읽는 시간: 8분
당사는 자동 배경 제거를 위한 최고 수준의 모델인 FeyNoBg를 소개합니다. 8개의 벤치마크에서 4개의 벤치마크 부문에서 최고의 S-measure(구조적 유사성 측정 지표)를 기록했으며, 나머지 부문에서도 1위 모델과 2% 이내의 차이를 보였습니다. 또한 당사가 모델 학습에 사용한 라이브러리인 NoBg도 함께 릴리스합니다. NoBg를 사용하여 FeyNoBg를 실행하거나 나만의 배경 제거 모델을 학습시킬 수 있습니다. 두 가지 모두 오픈소스입니다. Hugging Face에서 FeyNoBg를 다운로드하거나, GitHub에서 NoBg를 사용하여 빌드해 보세요.
배경 제거에는 결합이 필수입니다 컴퓨터에서 이미지는 픽셀 격자로 저장됩니다. 배경 제거 알고리즘의 목표는 배경 픽셀은 투명하게, 전경 픽셀은 불투명하게, 경계선 픽셀은 반투명하게 만들기 위해 각 픽셀의 불투명도(투명도) 값을 예측하는 것입니다.
이러한 불투명도 맵을 생성하려면 두 가지 기술이 필요합니다. 첫째, 모델이 전경과 배경을 분리해야 합니다. 피사체가 단순한 배경 앞에 서 있을 때는 색상을 비교하여 쉽게 분리할 수 있습니다. 하지만 대비가 낮거나, 붐비거나, 위장된(주변과 섞여 구별하기 어려운) 이미지에서는 모델이 모양, 질감 및 문맥을 사용하여 어떤 픽셀이 피사체를 형성하는지 인식해야 합니다.
둘째, 모델이 전경의 경계선을 추적해야 합니다. 단순한 이미지에서는 색상이나 질감의 급격한 변화가 강력한 가장자리 신호를 제공합니다. 하지만 실제 경계선은 더 다루기 어렵습니다. 머리카락, 털, 얇은 전선, 모션 블러는 전경과 배경 요소를 뒤섞어 버립니다. 모델은 가장자리 픽셀이 얼마나 피사체에 속하는지 측정하고 그에 따라 불투명도를 설정해야 합니다. 이를 이미지 매팅(Image Matting)이라고 합니다.
일반적으로 이러한 기술은 각기 다른 종류의 특정 맞춤형 데이터로 학습됩니다. 이로 인해 실패 지점이 발생합니다. 훈련 데이터 구성이 좋지 않으면 한 가지 기술이 향상되는 대신 다른 기술이 희생되는 불균형한 모델이 탄생할 수 있습니다. 그 결과, 출력 결과물은 피사체의 일부를 잃어버리거나 깔끔하지 못한 가장자리를 갖게 됩니다. 실제 이미지는 복잡하며, 전경 인식의 민첩성과 경계선의 정밀함이 모두 필요합니다. 이것이 FeyNoBg를 훈련시킬 때 우리가 가졌던 핵심 통찰이었습니다.
학습의 여유 공간 확보 우리는 BiRefNet의 아키텍처가 이미 우리의 목표와 일치했기 때문에 FeyNoBg의 기반으로 선택했습니다. BiRefNet은 모델의 두 부분에 상호 보완적인 역할을 부여합니다. 현지화(Localization) 모듈은 전경을 찾고, 재구성(Reconstruction) 모듈은 피사체의 경계선을 추적합니다.
이 모델은 입력 이미지를 4단계로 실행되는 특징 추출기(Feature Extractor)를 통과시키는 것으로 시작됩니다. 초기 단계에서는 국소적인 세부 정보를 캡처합니다. 이후 단계에서는 수집된 세부 정보를 특징 맵(Feature Map)이라는 더 넓은 이미지 표현으로 결합합니다. 현지화 모듈은 이 맵을 사용하여 피사체를 찾고, 재구성 모듈은 이를 사용하여 경계선을 복구합니다.
특징 추출기의 세 번째 단계가 가장 어려운 작업을 수행합니다. 이 단계는 모양을 표현하는 데 필요한 공간적 세부 정보를 유지하면서도 전체 피사체를 추론할 수 있을 만큼 충분히 이미지를 살핍니다. 현지화와 경계선 재구성 모두 여기서 생성된 특징 맵에 크게 의존합니다. 이 단계가 담고 있는 풍부한 이미지 표현을 고려할 때, 여기에 깊이를 더하면 모델이 정보를 더 잘 유지하여 성능을 향상시킬 수 있을 것이라고 예상했습니다.
이에 따라 우리는 세 번째 단계를 18개 블록에서 24개 블록으로 확장했습니다. 이로 인해 모델 파라미터는 2억 2,200만 개에서 2억 6,300만 개로 약간 증가했습니다. 우리는 확장하는 동안 호환되는 모든 사전 학습된 가중치(Pre-trained Weight)를 보존했습니다. 새로 추가된 6개 블록만 처음부터 학습을 시작했습니다. 이를 통해 FeyNoBg는 기본 모델이 이미 알고 있는 것을 잊지 않고 새로운 기술을 학습할 수 있는 추가적인 용량을 확보했습니다. 더 많이 학습할 여유 공간이 생겼으니, 이제 기존 모델에게 새로운 기술을 가르칠 차례였습니다.
다양한 데이터에서 나오는 강점 우리의 첫 번째 학습 실행은 정밀한 전경 분할(Foreground Segmentation)을 위해 만들어진 합성 이미지 및 마스크 쌍 모음인 MaskFactory를 사용했습니다. 이것이 해당 실행에 사용된 유일한 데이터셋이었습니다. 우리의 직관이 맞다면, 결과 모델은 일부 벤치마크에서는 향상되고 다른 벤치마크에서는 성능이 퇴보할 것입니다. 통제된 평가에서도 그런 일이 바로 일어났습니다.