Files
SnapOtter/apps/docs/pl/tools/image/content-aware-resize.md
T
SnapOtterandGitHub 4963ab3bbd feat(docs-i18n): translate all documentation into 20 languages
All 181 docs markdown files translated into 20 languages (apps/docs/<locale>/**). Companion to the i18n code PR; admin-merged because the file count exceeds GitHub's per-PR CI trigger limit. Validated by pnpm i18n:check (all surfaces, 0 stale/missing) and a clean all-locale docs build.
2026-07-11 13:52:47 +08:00

3.0 KiB

description, i18n_source_hash, i18n_provenance, i18n_output_hash
description i18n_source_hash i18n_provenance i18n_output_hash
Zmiana rozmiaru metodą wycinania szwów, która dodaje lub usuwa piksele wzdłuż ścieżek o niskim znaczeniu, aby zachować kluczową zawartość i twarze. f383b28ab62a human 041fb6c6b708

Zmiana rozmiaru uwzględniająca treść

Zmiana rozmiaru metodą wycinania szwów, która inteligentnie usuwa lub dodaje piksele wzdłuż ścieżek o najmniejszym znaczeniu wizualnym, zachowując istotną zawartość i opcjonalnie chroniąc twarze.

Punkt końcowy API

POST /api/v1/tools/image/content-aware-resize

Przetwarzanie: synchroniczne (zwraca wynik bezpośrednio)

Pakiet modelu: żaden nie jest wymagany do podstawowego działania. Ochrona twarzy używa pakietu face-detection (200-300 MB), jeśli jest włączona.

Parametry

Parametr Typ Wymagany Domyślnie Opis
file file Tak - Plik obrazu (multipart)
width number Nie - Docelowa szerokość w pikselach
height number Nie - Docelowa wysokość w pikselach
protectFaces boolean Nie false Wykrywaj i chroń twarze przed usuwaniem szwów
blurRadius number Nie 4 Promień rozmycia wstępnego przetwarzania na potrzeby obliczania energii (0-20)
sobelThreshold number Nie 2 Próg wykrywania krawędzi Sobela (1-20). Wyższe wartości sprawiają, że algorytm jest bardziej agresywny
square boolean Nie false Zmień rozmiar do kwadratu (używa mniejszego wymiaru)

Należy podać co najmniej jeden z parametrów width, height lub square.

Przykładowe żądanie

curl -X POST http://localhost:1349/api/v1/tools/image/content-aware-resize \
  -F "file=@landscape.jpg" \
  -F 'settings={"width":800,"protectFaces":true}'

Odpowiedź (200 OK)

{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/{jobId}/landscape_seam.png",
  "originalSize": 450000,
  "processedSize": 380000,
  "width": 800,
  "height": 600
}

Uwagi

  • Ta niestandardowa trasa zwraca obecnie synchroniczną odpowiedź 200.
  • Wykorzystuje bibliotekę wycinania szwów caire do zmiany rozmiaru uwzględniającej treść.
  • Tylko zmniejsza wymiary (usuwa szwy). Nie może powiększyć obrazu poza jego oryginalny rozmiar.
  • Opcja protectFaces używa wykrywania twarzy przez AI, aby oznaczyć obszary twarzy jako wysokoenergetyczne, uniemożliwiając przechodzenie szwów przez twarze.
  • blurRadius steruje wygładzaniem przed obliczeniem mapy energii. Wyższe wartości czynią mapę energii bardziej jednorodną, co może pomóc przy zaszumionych obrazach.
  • sobelThreshold wpływa na to, jak agresywnie wykrywane są krawędzie. Niższe wartości zachowują więcej subtelnych krawędzi.
  • Wynik ma zawsze format PNG.
  • Obsługuje formaty wejściowe HEIC/HEIF, RAW, TGA, PSD, EXR i HDR poprzez automatyczne dekodowanie.