Usuń cień logo przed jego wektoryzacją
Usuń zauważalny cień ze spłaszczonego logo na kopii. Przetestuj maskę, chroń słabe szczegóły i rozpoznaj, kiedy potrzebny jest oryginał lub przerysowanie.
Na tej stronie
- Najpierw sprawdź, czy cień nadal jest efektem
- Zdiagnozuj znak przed wybraniem odcięcia
- Przetestuj maskę ciemnych pikseli na kopii roboczej
- Zamiast tego użyj edytora graficznego
- Co pokazały oryginalne kontrole
- Przed rozpoczęciem śledzenia sprawdź kontur
- Śledź zaakceptowany znak za pomocą PerfectVector
- Często zadawane pytania
- Źródła
Usuń cień logo przed wektoryzacją, uzyskując, jeśli to możliwe, płaski oryginał. Jeśli masz tylko spłaszczony raster, sprawdź, czy zamierzony znak da się oddzielić od cienia jego tonami. Ciemny znak na jaśniejszym cieniu może pozwolić na użyteczną maskę; dopasowanie tonów i słaba grafika mogą sprawić, że to samo czyszczenie będzie destrukcyjne.
Nie traktuj najczystszej sylwetki jako dowodu na odzyskanie logo. Porównaj otwory, narożniki, cienkie detale i kontur zewnętrzny z zatwierdzonymi wzorcami. Gdy zamierzona granica jest zasłonięta, poszukaj oryginału lub celowo przerysuj, zamiast akceptować odgadnięty kształt.
Próg oddziela tony, a nie intencje
Zachowaj spłaszczony plik nietknięty. Przetestuj duplikat, sprawdź każdy zamierzony szczegół i odrzuć maskę, jeśli usuwa grafikę lub zachowuje cień. Poniższy udany przykład wykorzystuje celowo rozdzielone tony; jego odcięcie nie jest uniwersalnym ustawieniem logo.
Najpierw sprawdź, czy cień nadal jest efektem
Jeśli edytowalne źródło nadal zawiera cień jako oddzielny efekt lub obiekt, poproś o płaski eksport z tego źródła. Usunięcie efektu pozwala uniknąć rekonstrukcji znaku z mieszanych pikseli. W tym artykule nie testowano kontroli efektów żadnej aplikacji.
Spłaszczony plik PNG lub JPG jest inny: znak, cień i tło mogą już być połączone w obraz. Wymazanie miękkiego szarego obszaru nie ujawnia ukrytego pod nim nieskazitelnego konturu. Aby uzyskać gładkie cieniowanie należące do kompozycji, a nie niepożądany efekt, zobacz oddzielny opis procesu wektoryzacji gradientu.
Zdiagnozuj znak przed wybraniem odcięcia
Próg klasyfikuje piksele według wybranej wartości. Maska wykorzystuje te decyzje do zachowania lub ukrycia części obrazu. Trasa maski jasności utrzymuje tutaj ciemne piksele i ukrywa jaśniejsze; nie wie, które piksele są logo, a które cieniem.
| Stan źródłowy | Możliwa trasa | Powód odrzucenia wyniku |
|---|---|---|
| Ciemny płaski ślad i wyraźnie jaśniejszy cień | Przetestuj maskę jasności na duplikacie | Narożniki kurczą się, dziury ulegają zmianie lub znikają blade detale |
| Zaznaczanie i cień dzielą się tonami | Poszukaj oryginalnej grafiki lub przerysuj | Jedno odcięcie nie pozwala na rozróżnienie pasujących wartości według zamiaru |
| Light litery lub kolorowe akcenty towarzyszą ciemnemu znakowi | Chroń te dane osobno lub użyj innej metody | Zaznaczenie ciemnych pikseli całego obrazu może je usunąć |
| Zatwierdzony kontur jest ukryty lub niejednoznaczny | Uzyskaj lepsze referencje | Wiarygodny zarys nie potwierdza pierwotnego kształtu |
Użyj odczytu wartości pikseli w edytorze obrazów, aby porównać wyraźny znak, wyraźny cień i najsłabsze potrzebne szczegóły. Wartości skali szarości w przykładzie wahają się od 0 dla czerni do 255 dla bieli. Próbuj w kilku miejscach; pojedynczy ciemny kąt nie świadczy wszędzie o separacji.
Przetestuj maskę ciemnych pikseli na kopii roboczej
Ten przykład wykonywalny wymaga Python 3 i Pillow. Testowaliśmy z Pillow 11.3.0. Użyj nieprzezroczystej kopii roboczej RGB o nazwie logo-flat.png, zachowaj oryginał i wybierz nieużywane nazwy wyjściowe. Ta trasa prowadzi do znaku, który powinien zachować swoje ciemne kształty; może odrzucić legalne jasne lub kolorowe dzieła sztuki.
- Zapisz to jako
mask-dark-mark.py. Pillow Odniesienie do obrazu dokumentuje mapowanie wartości za pomocąpointi zastosowanie kanału alfa za pomocąputalpha:
from pathlib import Path
from PIL import Image
import sys
source = Path(sys.argv[1])
output = Path(sys.argv[2])
cutoff = int(sys.argv[3])
mask_path = output.with_name(output.stem + "-mask.png")
if not 0 <= cutoff <= 255:
raise SystemExit("Use a cutoff from 0 to 255.")
if output.exists() or mask_path.exists():
raise SystemExit("Choose new output names to preserve existing files.")
image = Image.open(source).convert("RGB")
mask = image.convert("L").point(lambda value: 255 if value < cutoff else 0)
result = image.convert("RGBA")
result.putalpha(mask)
mask.save(mask_path)
result.save(output)- Uruchom test. W przypadku kontrolowanego źródła poniżej użyliśmy:
python3 mask-dark-mark.py logo-flat.png logo-cleaned.png 100Dzięki temu piksele, których wartość w skali szarości jest mniejsza niż 100. Zapisuje logo-cleaned-mask.png, gdzie biały oznacza zachowanie, oraz logo-cleaned.png, który zachowuje zachowane kolory źródłowe z binarną przezroczystością. Pozostawia źródło robocze niezmienione.
- Sprawdź oba pliki. Maska ułatwia identyfikację brakujących elementów i zachowanego cienia. Zobacz przezroczysty wynik na jasnym i ciemnym tle, tak aby biała przestrzeń wyświetlacza nie zakrywała zmienionego otworu lub krawędzi. Zamiast nadpisywać porównanie, użyj innej nazwy wyjściowej dla każdego testu.
- Zaakceptuj lub zatrzymaj. Zmień wartość odcięcia tylko porównując z zamierzonym znacznikiem. Jeśli żadne ustawienie nie zachowuje kompozycji bez cienia, ta metoda jasności całego obrazu jest nieodpowiednia. Selektywny retusz może pomóc w rozpoznaniu wady miejscowej; nieznany kontur wymaga oryginalnego lub celowego przerysowania.
Zamiast tego użyj edytora graficznego
GIMP dokumentuje Próg jako czarno-białą operację, która może pomóc w tworzeniu masek zaznaczenia. Jego instrukcja ostrzega również, że progowanie usuwa antyaliasing. Maska warstwy kontroluje, które części pozostaną widoczne.
Są to alternatywy oparte na dokumentacji, a nie testowany tutaj natywny przewodnik GIMP. Naszą wykonaną trasą jest skrypt Pillow. Twarda maska nie zachowuje miękkich przejść krawędzi dowolnej grafiki źródłowej; wybierz selektywny lub ręcznie przebudowany kontur, jeśli te przejścia mają znaczenie.
Co pokazały oryginalne kontrole
Stworzyliśmy płaski znak 640 × 460, dodaliśmy przesunięcie rozmytego cienia 32 pikseli w prawo i 26 w dół i spłaszczyliśmy wynik na biało. Znak był szary 22, podczas gdy każdy piksel poza jego znaną obsługą miał wartość pomiędzy 163 a 255. Wartość odcięcia wynosząca 100 utworzyła dokładnie zapisaną maskę znaczników: zero dodatkowych zachowanych pikseli i zero brakujących pikseli znaczników.
Wynik ten zależy od znanego, binarnego sterowania cyfrowego. Nie zapewnia dokładnego odzyskania nieznanego logo, zachowania wygładzonych krawędzi ani funkcji usuwania cieni PerfectVector.

Dwie kolejne kontrole pokazują, dlaczego inspekcja ma znaczenie:
- Pasujące odcienie: wykonaliśmy znak i przesunęliśmy cień w kolorze szarego 150. Odcięcie 100 usunęło wszystkie zamierzone piksele znaczników 54,527. Podniesienie go do 180 utrzymało znak, ale także 16,128 niepożądane piksele cienia. Nakładanie się nie rozróżniało już zamierzonych granic na podstawie jasności.
- Niewielki szczegół: dodaliśmy zamierzoną jednopikselową linię w kolorze szarym 185. Odcięcie 100 usunęło wszystkie 391 pikseli tego szczegółu, mimo że główny ciemny znak pozostał nienaruszony.
Są to zmierzone awarie wybranych masek, a nie zalecenie dalszego podnoszenia wartości odcięcia. Wejścia i wyjścia to oryginalne cyfrowe elementy sterujące, bez natywnego edytora obrazów lub testu konwersji PerfectVector.
Przed rozpoczęciem śledzenia sprawdź kontur
Sprawdź zapisane czyszczenie w stosunku do nietkniętego źródła i zatwierdzonego płaskiego odniesienia, jeśli jest dostępne:
- Zewnętrzny kontur nie ma przyciętego narożnika, spuchniętego obszaru ani brakującego przedłużenia.
- Liczniki i zamknięte otwory zachowują swój zamierzony kształt i pozostają otwarte.
- Cienkie linie, jasne akcenty i małe litery przetrwają tam, gdzie ich miejsce.
- Przesunięty cień nie pozostaje drugą sylwetką, pierścieniem, naszywką czy miękką grzywką.
Jeśli szczegół zniknie, wróć do źródła. Przywróć go, celowo zaznaczając lub przerysowując, zamiast zakładać, że był częścią cienia. Jeśli nie możesz rozróżnić ukrytej granicy, przestań domagać się odzyskania i poproś o oryginalny projekt. przewodnik po wektoryzacji logo omawia wybór automatycznego śledzenia w porównaniu z ręczną przebudową.
Usunięcie cienia i uczynienie tła przezroczystym to osobne decyzje o akceptacji. Sprawdź rzeczywistą przezroczystość i pozostałe obiekty zgodnie z opisem w przewodniku SVG dotyczącym przezroczystego tła; sam biały podgląd nie dowodzi braku niepożądanych pikseli.
Śledź zaakceptowany znak za pomocą PerfectVector
PerfectVector pasuje, gdy masz zaakceptowane płaskie logo rastrowe, którego widoczne kształty mają być edytowalnymi ścieżkami. Użyj wektoryzatora logo z tym źródłem, a następnie sprawdź, czy podgląd ma ten sam zatwierdzony kontur, otwory i drobne szczegóły.
To czyszczenie źródła odbywa się przed wektoryzacją. Ten przepływ pracy podejmuje decyzję o usunięciu cienia w masce źródłowej; podgląd wektorowy nie sprawdza, które piksele miały służyć jako znak. Jeśli na podglądzie widać pozostałości kształtu cienia lub brakujące szczegóły, wróć do rastra, zamiast traktować ślad jako dowód oryginalnego logo. Edycja i eksport wyniku wymagają jego odblokowania; chroniony podgląd jest przeznaczony tylko do przeglądania.
Często zadawane pytania
Czy próg zawsze może usunąć cień logo? Nie. Działa tylko wtedy, gdy zachowane wartości odróżniają zamierzony znak od niepożądanych pikseli. Dopasowane nakładanie się tonów i słabe szczegóły mogą sprawić, że próg całego obrazu będzie nieodpowiedni.
Czy usunięcie cienia odsłoni oryginalny kontur? Nie jest to niezawodne, gdy zasłaniają je spłaszczone piksele. Porównaj z zatwierdzonym referencją, uzyskaj oryginalny projekt lub przerysuj celowo, zamiast traktować wiarygodną granicę jako odzyskany fakt.
Dlaczego drobne szczegóły zniknęły, a główny znak pozostał? Mogą być lżejsze niż zachowuje to odcięcie. W naszym teście ciemny znak przetrwał, ale szara linia 185 utraciła wszystkie 391 pikseli. Wróć do źródła i osobno chroń szczegóły zamierzonego światła.
Źródła
- Pillow — Moduł obrazu — Dokumentuje operacje mapowania wartości i kanału alfa wykorzystywane przez testowany skrypt.
- GIMP — Próg — Definiuje próg binarny, użycie maski wyboru i ograniczenie antyaliasingu.
- GIMP — Dodaj maski warstw — objaśnia maski kontrolujące widoczne i przezroczyste części warstwy.
Kiedy płaski znak przejdzie kontrolę konturu, zacznij od tego logo. Przed użyciem wyniku sprawdź dziury, rogi i słabe szczegóły podglądu wektorowego w stosunku do zaakceptowanego źródła.
Więcej z bloga
Podpis do SVG: jak zwektoryzować swój prawdziwy odręczny podpis
Trzy różne rzeczy nazywa się podpisem SVG, ale tylko jedna z nich odzwierciedla Twoje pismo. Oto jak je rozróżnić i zwektoryzować prawdziwy podpis.
Biała obwódka na przezroczystym logo PNG: popraw krawędź
Przezroczysty plik PNG może zawierać biel w kolorach krawędzi. Zdiagnozuj bladą obwódkę logo, zachowaj miękką alfa i zweryfikuj naprawę pod kątem znanego znaku jednokolorowego.


