PBM Usuwanie tła

Usuń tło z dowolnego obrazu w swojej przeglądarce. Za darmo, na zawsze.

Prywatne i bezpieczne

Wszystko dzieje się w Twojej przeglądarce. Twoje pliki nigdy nie dotykają naszych serwerów.

Błyskawicznie

Bez przesyłania, bez czekania. Konwertuj w momencie upuszczenia pliku.

Rzeczywiście za darmo

Nie wymaga konta. Brak ukrytych kosztów. Brak sztuczek z rozmiarem pliku.

Usuwanie tła oddziela obiekt od otoczenia, dzięki czemu można go umieścić na przezroczystości, zamienić scenę lub wkomponować w nowy projekt. Pod maską szacujesz maskę alfa — nieprzezroczystość na piksel od 0 do 1 — a następnie komponujesz pierwszy plan z użyciem kanału alfa na czymś innym. To jest matematyka z Porter–Duff i przyczyna typowych pułapek, takich jak „frędzle” i alfa prosta a premultiplikowana. Praktyczne wskazówki dotyczące premultiplikacji i koloru liniowego można znaleźć w notatkach Win2D firmy Microsoft, Sørena Sandmanna i opracowaniu Lomonta na temat mieszania liniowego.


Główne sposoby usuwania tła

1) Kluczowanie chrominancyjne („zielony/niebieski ekran”)

Jeśli możesz kontrolować przechwytywanie, pomaluj tło na jednolity kolor (często zielony) i wyklucz ten odcień. Jest to szybkie, sprawdzone w filmie i telewizji oraz idealne do wideo. Kompromisy to oświetlenie i garderoba: kolorowe światło rozlewa się na krawędzie (zwłaszcza włosy), więc użyjesz narzędzi do usuwania rozlania, aby zneutralizować zanieczyszczenie. Dobre wprowadzenia obejmują dokumentację Nuke, Mixing Light i praktyczne demo Fusion.

2) Interaktywna segmentacja (klasyczne CV)

W przypadku pojedynczych obrazów z nieuporządkowanym tłem, algorytmy interaktywne potrzebują kilku wskazówek od użytkownika — np. luźnego prostokąta lub gryzmołów — i tworzą ostrą maskę. Kanoniczną metodą jest GrabCut (rozdział książki), który uczy się modeli kolorów dla pierwszego planu/tła i iteracyjnie wykorzystuje cięcia grafowe do ich rozdzielenia. Podobne pomysły zobaczysz w Zaznaczaniu pierwszego planu w GIMP opartym na SIOX (wtyczka ImageJ).

3) Matowanie obrazu (drobnoziarnista alfa)

Matowanie rozwiązuje problem częściowej przezroczystości na delikatnych granicach (włosy, futro, dym, szkło). Klasyczne matowanie w formie zamkniętej przyjmuje trimapę (zdecydowanie-pierwszy plan/zdecydowanie-tło/nieznane) i rozwiązuje układ liniowy dla alfy z dużą dokładnością krawędzi. Nowoczesne głębokie matowanie obrazu uczy sieci neuronowe na zbiorze danych Adobe Composition-1K (dokumentacja MMEditing) i jest oceniane za pomocą metryk takich jak SAD, MSE, Gradient i Connectivity (wyjaśnienie benchmarku).

4) Wycinanki z głębokiego uczenia (bez trimapy)

Powiązane prace nad segmentacją są również przydatne: DeepLabv3+ udoskonala granice za pomocą kodera-dekodera i splotów atrous (PDF); Mask R-CNN generuje maski dla poszczególnych instancji (PDF); a SAM (Segment Anything) to sterowany promptami model podstawowy, który generuje maski w trybie zero-shot na nieznanych obrazach.


Co robią popularne narzędzia


Wskazówki dotyczące przepływu pracy dla czystszych wycinanek

  1. Fotografuj mądrze. Dobre oświetlenie i silny kontrast między obiektem a tłem pomagają każdej metodzie. W przypadku zielonych/niebieskich ekranów zaplanuj usuwanie rozlania (przewodnik).
  2. Zacznij od ogółu, a następnie dopracuj szczegóły. Uruchom automatyczne zaznaczanie (Zaznacz obiekt, U2-Net, SAM), a następnie dopracuj krawędzie pędzlami lub matowaniem (np. w formie zamkniętej).
  3. Zwróć uwagę na półprzezroczystość. Szkło, welony, rozmycie w ruchu, rozwiane włosy wymagają prawdziwej alfy (a nie tylko twardej maski). Metody, które również odzyskują F/B/α, minimalizują aureole.
  4. Zrozum kanał alfa. Prosta a premultiplikowana dają różne zachowania krawędzi; eksportuj/komponuj spójnie (zobacz przegląd, Hargreaves).
  5. Wybierz odpowiedni format wyjściowy. W przypadku „braku tła” dostarcz raster z czystą alfą (np. PNG/WebP) lub zachowaj pliki warstwowe z maskami, jeśli oczekiwane są dalsze edycje. Kluczem jest jakość obliczonej alfy, którą obliczyłeś — zakorzeniona w Porter–Duff.

Jakość i ocena

Prace akademickie raportują błędy SAD, MSE, Gradient i Connectivity na Composition-1K. Jeśli wybierasz model, szukaj tych metryk (definicje metryk; sekcja metryk Background Matting). W przypadku portretów/wideo MODNet i Background Matting V2 są skuteczne; w przypadku ogólnych obrazów „obiektów wyróżniających się”, U2-Net jest solidną podstawą; w przypadku trudnej przezroczystości FBA daje lepsze rezultaty.


Typowe przypadki brzegowe (i poprawki)

  • Włosy i futro: preferuj matowanie (trimapa lub matowanie portretowe, jak MODNet) i sprawdzaj na tle szachownicy.
  • Drobne struktury (szprychy rowerowe, żyłka wędkarska): używaj danych wejściowych o wysokiej rozdzielczości i segmentatora uwzględniającego granice, takiego jak DeepLabv3+ jako krok wstępny przed matowaniem.
  • Przezroczyste obiekty (dym, szkło): potrzebujesz ułamkowej alfy i często szacowania koloru pierwszego planu (FBA).
  • Wideokonferencje: jeśli możesz przechwycić czystą płytę, Background Matting V2 wygląda bardziej naturalnie niż naiwne opcje „wirtualnego tła”.

Gdzie to się pojawia w prawdziwym świecie

  • E-commerce: platformy handlowe (np. Amazon) często wymagają czysto białego tła głównego obrazu; zobacz Przewodnik po obrazach produktów (RGB 255,255,255).
  • Narzędzia do projektowania: Usuwanie tła w Canvie i Usuń tło w Photoshopie usprawniają szybkie wycinanki.
  • Wygoda na urządzeniu:Podnieś obiekt” w iOS/macOS jest świetne do swobodnego udostępniania.

Dlaczego wycinanki czasami wyglądają sztucznie (i poprawki)

  • Rozlanie koloru: zielone/niebieskie światło otacza obiekt — użyj kontroli usuwania rozlania lub ukierunkowanej wymiany kolorów.
  • Aureola/frędzle: zwykle niedopasowanie interpretacji alfy (prosta a premultiplikowana) lub piksele krawędzi zanieczyszczone starym tłem; konwertuj/interpretuj poprawnie (przegląd, szczegóły).
  • Niewłaściwe rozmycie/ziarno: wklej ostry jak brzytwa obiekt na rozmyte tło, a będzie się wyróżniał; dopasuj rozmycie obiektywu i ziarno po kompozycji (zobacz podstawy Porter–Duff).

Poradnik TL;DR

  1. Jeśli kontrolujesz przechwytywanie: użyj kluczowania chrominancyjnego; oświetlaj równomiernie; zaplanuj usuwanie rozlania.
  2. Jeśli to jednorazowe zdjęcie: wypróbuj Usuń tło w Photoshopie, narzędzie do usuwania w Canvie lub remove.bg; dopracuj pędzlami/matowaniem w przypadku włosów.
  3. Jeśli potrzebujesz krawędzi o jakości produkcyjnej: użyj matowania ( w formie zamkniętej lub głębokiego) i sprawdź alfę na przezroczystości; pamiętaj o interpretacji alfy.
  4. Do portretów/wideo: rozważ MODNet lub Background Matting V2; do segmentacji sterowanej kliknięciami, SAM jest potężnym narzędziem.

Jaki jest format PBM?

Przenośny format bitmapy (czarno-biały)

Format PBM (Portable Bitmap) jest jednym z najprostszych i najwcześniejszych formatów plików graficznych używanych do przechowywania obrazów monochromatycznych. Jest częścią pakietu Netpbm, który obejmuje również PGM (Portable GrayMap) dla obrazów w skali szarości i PPM (Portable PixMap) dla obrazów kolorowych. Format PBM został zaprojektowany tak, aby był niezwykle łatwy do odczytu i zapisu w programie oraz aby był jasny i jednoznaczny. Nie jest przeznaczony do samodzielnego użytku, lecz raczej jako najmniejszy wspólny mianownik do konwersji między różnymi formatami obrazów.

Format PBM obsługuje tylko obrazy czarno-białe (1-bitowe). Każdy piksel na obrazie jest reprezentowany przez pojedynczy bit – 0 dla bieli i 1 dla czerni. Prostota formatu sprawia, że jest łatwy do manipulowania za pomocą podstawowych narzędzi do edycji tekstu lub języków programowania bez potrzeby korzystania ze specjalistycznych bibliotek przetwarzania obrazu. Jednak ta prostota oznacza również, że pliki PBM mogą być większe niż bardziej zaawansowane formaty, takie jak JPEG lub PNG, które wykorzystują algorytmy kompresji w celu zmniejszenia rozmiaru pliku.

Istnieją dwie odmiany formatu PBM: format ASCII (zwykły), znany jako P1, oraz format binarny (surowy), znany jako P4. Format ASCII jest czytelny dla człowieka i można go utworzyć lub edytować za pomocą prostego edytora tekstu. Format binarny nie jest czytelny dla człowieka, ale jest bardziej oszczędny pod względem miejsca i szybszy do odczytu i zapisu dla programów. Pomimo różnic w przechowywaniu, oba formaty reprezentują ten sam typ danych obrazu i można je konwertować między sobą bez utraty informacji.

Struktura pliku PBM w formacie ASCII rozpoczyna się od dwubajtowego magicznego numeru, który identyfikuje typ pliku. Dla formatu PBM ASCII jest to „P1”. Po magicznym numerze znajduje się spacja (odstępy, znaki TAB, CR, LF), a następnie specyfikacja szerokości, która jest liczbą kolumn na obrazie, po której następuje więcej spacji, a następnie specyfikacja wysokości, która jest liczbą wierszy na obrazie. Po specyfikacji wysokości znajduje się więcej spacji, a następnie rozpoczynają się dane pikseli.

Dane pikseli w pliku ASCII PBM składają się z serii „0” i „1”, przy czym każde „0” reprezentuje biały piksel, a każde „1” reprezentuje czarny piksel. Piksele są ułożone w wierszach, przy czym każdy wiersz pikseli znajduje się w nowym wierszu. Spacje są dozwolone w dowolnym miejscu w danych pikseli, z wyjątkiem sekwencji dwuznakowej (nie są dozwolone między dwoma znakami sekwencji). Koniec pliku jest osiągany po odczytaniu szerokość*wysokość bitów.

Natomiast binarny format PBM zaczyna się od magicznego numeru „P4” zamiast „P1”. Po magicznym numerze format pliku jest taki sam jak w wersji ASCII, aż do momentu rozpoczęcia danych pikseli. Binarne dane pikseli są pakowane w bajty, przy czym najbardziej znaczący bit (MSB) każdego bajtu reprezentuje najbardziej wysunięty na lewo piksel, a każdy wiersz pikseli jest wypełniany w razie potrzeby, aby wypełnić ostatni bajt. Bity wypełnienia nie są istotne i ich wartości są ignorowane.

Format binarny jest bardziej oszczędny pod względem miejsca, ponieważ wykorzystuje pełny bajt do reprezentowania ośmiu pikseli, w przeciwieństwie do formatu ASCII, który wykorzystuje co najmniej osiem bajtów (jeden znak na piksel plus spacja). Jednak format binarny nie jest czytelny dla człowieka i wymaga programu, który rozumie format PBM, aby wyświetlić lub edytować obraz.

Tworzenie pliku PBM programowo jest stosunkowo proste. W języku programowania takim jak C można otworzyć plik w trybie zapisu, wyprowadzić odpowiedni magiczny numer, zapisać szerokość i wysokość jako liczby ASCII oddzielone spacją, a następnie wyprowadzić dane pikseli. W przypadku ASCII PBM dane pikseli można zapisać jako serię „0” i „1” z odpowiednimi podziałami wierszy. W przypadku binarnego PBM dane pikseli muszą być spakowane w bajty i zapisane do pliku w trybie binarnym.

Odczytywanie pliku PBM jest również proste. Program odczytuje magiczny numer, aby określić format, pomija spacje, odczytuje szerokość i wysokość, pomija więcej spacji, a następnie odczytuje dane pikseli. W przypadku ASCII PBM program może odczytywać znaki jeden po drugim i interpretować je jako wartości pikseli. W przypadku binarnego PBM program musi odczytywać bajty i rozpakowywać je na poszczególne bity, aby uzyskać wartości pikseli.

Format PBM nie obsługuje żadnej formy kompresji ani kodowania, co oznacza, że rozmiar pliku jest wprost proporcjonalny do liczby pikseli na obrazie. Może to skutkować bardzo dużymi plikami w przypadku obrazów o wysokiej rozdzielczości. Jednak prostota formatu sprawia, że jest idealny do nauki przetwarzania obrazu, do użytku w sytuacjach, gdy wierność obrazu jest ważniejsza niż rozmiar pliku, lub do użytku jako format pośredni w procesach konwersji obrazu.

Jedną z zalet formatu PBM jest jego prostota i łatwość manipulowania nim. Na przykład, aby odwrócić obraz PBM (zamienić wszystkie czarne piksele na białe i odwrotnie), można po prostu zastąpić wszystkie „0” na „1” i wszystkie „1” na „0” w danych pikseli. Można to zrobić za pomocą prostego skryptu lub programu do przetwarzania tekstu. Podobnie inne podstawowe operacje na obrazach, takie jak obracanie lub odbijanie lustrzane, można zaimplementować za pomocą prostych algorytmów.

Pomimo swojej prostoty format PBM nie jest szeroko stosowany do ogólnego przechowywania lub wymiany obrazów. Wynika to przede wszystkim z braku kompresji, co czyni go nieefektywnym do przechowywania dużych obrazów lub do użytku w Internecie, gdzie przepustowość może być problemem. Nowocześniejsze formaty, takie jak JPEG, PNG i GIF, oferują różne formy kompresji i są lepiej przystosowane do tych celów. Jednak format PBM jest nadal używany w niektórych kontekstach, szczególnie w przypadku prostych grafik w rozwoju oprogramowania oraz jako narzędzie dydaktyczne do nauki koncepcji przetwarzania obrazu.

Pakiet Netpbm, który obejmuje format PBM, zapewnia kolekcję narzędzi do manipulowania plikami PBM, PGM i PPM. Narzędzia te umożliwiają konwersję między formatami Netpbm a innymi popularnymi formatami obrazów, a także podstawowe operacje przetwarzania obrazu, takie jak skalowanie, przycinanie i manipulowanie kolorami. Pakiet jest zaprojektowany tak, aby był łatwo rozszerzalny, z prostym interfejsem do dodawania nowych funkcji.

Podsumowując, format obrazu PBM jest prostym, bez zbędnych dodatków formatem pliku do przechowywania monochromatycznych obrazów bitmapowych. Jego prostota sprawia, że jest łatwy do zrozumienia i manipulowania, co może być korzystne w celach edukacyjnych lub w przypadku prostych zadań przetwarzania obrazu. Chociaż nie nadaje się do wszystkich zastosowań ze względu na brak kompresji i wynikające z tego duże rozmiary plików, pozostaje użytecznym formatem w określonych kontekstach, w których jego zalety są najbardziej korzystne. Format PBM, wraz z resztą pakietu Netpbm, nadal jest cennym narzędziem dla osób pracujących z podstawowym przetwarzaniem obrazu i konwersją formatów.

Obsługiwane formaty

AAI.aai

Obraz AAI Dune

AI.ai

Adobe Illustrator CS2

AVIF.avif

Format plików obrazów AV1

BAYER.bayer

Surowy obraz Bayera

BMP.bmp

Obraz bitmapy Microsoft Windows

CIN.cin

Plik obrazu Cineon

CLIP.clip

Maska klipu obrazu

CMYK.cmyk

Surowe próbki cyjanu, magenty, żółtego i czarnego

CUR.cur

Ikona Microsoftu

DCX.dcx

ZSoft IBM PC wielostronicowy Paintbrush

DDS.dds

Powierzchnia DirectDraw Microsoftu

DPX.dpx

Obraz SMTPE 268M-2003 (DPX 2.0)

DXT1.dxt1

Powierzchnia DirectDraw Microsoftu

EPDF.epdf

Załączony format dokumentu przenośnego

EPI.epi

Format wymiany Adobe Encapsulated PostScript

EPS.eps

Adobe Encapsulated PostScript

EPSF.epsf

Adobe Encapsulated PostScript

EPSI.epsi

Format wymiany Adobe Encapsulated PostScript

EPT.ept

Encapsulated PostScript z podglądem TIFF

EPT2.ept2

Encapsulated PostScript Level II z podglądem TIFF

EXR.exr

Obraz o wysokim zakresie dynamiki (HDR)

FF.ff

Farbfeld

FITS.fits

Elastyczny system transportu obrazów

GIF.gif

Format wymiany grafiki CompuServe

HDR.hdr

Obraz o wysokim zakresie dynamiki

HEIC.heic

Kontener obrazu wysokiej wydajności

HRZ.hrz

Slow Scan TeleVision

ICO.ico

Ikona Microsoftu

ICON.icon

Ikona Microsoftu

J2C.j2c

Strumień kodu JPEG-2000

J2K.j2k

Strumień kodu JPEG-2000

JNG.jng

Grafika sieciowa JPEG

JP2.jp2

Składnia formatu plików JPEG-2000

JPE.jpe

Format JFIF Joint Photographic Experts Group

JPEG.jpeg

Format JFIF Joint Photographic Experts Group

JPG.jpg

Format JFIF Joint Photographic Experts Group

JPM.jpm

Składnia formatu plików JPEG-2000

JPS.jps

Format JPS Joint Photographic Experts Group

JPT.jpt

Składnia formatu plików JPEG-2000

JXL.jxl

Obraz JPEG XL

MAP.map

Baza danych obrazów wielorozdzielczościowych (MrSID)

MAT.mat

Format obrazu MATLAB level 5

PAL.pal

Pikselmapa Palm

PALM.palm

Pikselmapa Palm

PAM.pam

Powszechny format bitmapy 2-wymiarowej

PBM.pbm

Przenośny format bitmapy (czarno-biały)

PCD.pcd

Photo CD

PCT.pct

Apple Macintosh QuickDraw/PICT

PCX.pcx

ZSoft IBM PC Paintbrush

PDB.pdb

Format ImageViewer bazy danych Palm

PDF.pdf

Przenośny format dokumentu

PDFA.pdfa

Format archiwum przenośnego dokumentu

PFM.pfm

Przenośny format float

PGM.pgm

Przenośny format szarej mapy (szarej skali)

PGX.pgx

Nieskompresowany format JPEG 2000

PICT.pict

Apple Macintosh QuickDraw/PICT

PJPEG.pjpeg

Format JFIF Grupy Ekspertów Fotografii Wspólnych

PNG.png

Przenośna grafika sieciowa

PNG00.png00

PNG dziedziczący głębię bitów, typ koloru z oryginalnego obrazu

PNG24.png24

Nieprzezroczysty lub binarnie przezroczysty 24-bitowy RGB (zlib 1.2.11)

PNG32.png32

Nieprzezroczysty lub binarnie przezroczysty 32-bitowy RGBA

PNG48.png48

Nieprzezroczysty lub binarnie przezroczysty 48-bitowy RGB

PNG64.png64

Nieprzezroczysty lub binarnie przezroczysty 64-bitowy RGBA

PNG8.png8

Nieprzezroczysty lub binarnie przezroczysty 8-bitowy indeksowany

PNM.pnm

Przenośna dowolna mapa

PPM.ppm

Przenośny format pikselmapy (kolor)

PS.ps

Plik Adobe PostScript

PSB.psb

Duży format dokumentu Adobe

PSD.psd

Bitmapa Adobe Photoshop

RGB.rgb

Surowe próbki czerwieni, zieleni i niebieskiego

RGBA.rgba

Surowe próbki czerwieni, zieleni, niebieskiego i alfa

RGBO.rgbo

Surowe próbki czerwieni, zieleni, niebieskiego i krycia

SIX.six

Format grafiki DEC SIXEL

SUN.sun

Rasterfile Sun

SVG.svg

Skalowalna grafika wektorowa

TIFF.tiff

Format pliku obrazu z tagami

VDA.vda

Obraz Truevision Targa

VIPS.vips

Obraz VIPS

WBMP.wbmp

Obraz bitmapy bezprzewodowej (poziom 0)

WEBP.webp

Format obrazu WebP

YUV.yuv

CCIR 601 4:1:1 lub 4:2:2

Często zadawane pytania

Jak to działa?

Ten konwerter działa w całości w Twojej przeglądarce. Po wybraniu pliku jest on wczytywany do pamięci i konwertowany do wybranego formatu. Następnie możesz pobrać przekonwertowany plik.

Ile czasu zajmuje konwersja pliku?

Konwersje rozpoczynają się natychmiast, a większość plików jest konwertowana w mniej niż sekundę. Większe pliki mogą zająć więcej czasu.

Co dzieje się z moimi plikami?

Twoje pliki nigdy nie są przesyłane na nasze serwery. Są one konwertowane w Twojej przeglądarce, a następnie pobierany jest przekonwertowany plik. Nigdy nie widzimy Twoich plików.

Jakie typy plików mogę konwertować?

Obsługujemy konwersję między wszystkimi formatami obrazów, w tym JPEG, PNG, GIF, WebP, SVG, BMP, TIFF i innymi.

Ile to kosztuje?

Ten konwerter jest całkowicie darmowy i zawsze będzie darmowy. Ponieważ działa w Twojej przeglądarce, nie musimy płacić za serwery, więc nie musimy pobierać od Ciebie opłat.

Czy mogę konwertować wiele plików jednocześnie?

Tak! Możesz konwertować dowolną liczbę plików jednocześnie. Wystarczy wybrać wiele plików podczas ich dodawania.