Halaman ini diterjemahkan secara otomatis. Menemukan kesalahan?Bantu perbaiki.
Skip to content

Referensi Mesin AI

Paket @snapotter/ai mengoordinasikan alat asli dan waktu proses Python untuk operasi ML lokal. Kebanyakan alat ML menggunakan Python sidecar yang persisten untuk pemanasan cepat. OCR sengaja dipisahkan: fast memanggil biner Tesseract asli, sedangkan balanced dan best menggunakan JSONL dispatcher persisten khusus yang disematkan pada generasi RapidOCR aktif yang tidak dapat diubah di bawah /data/ai/v3. Setiap permintaan memiliki generation lease. Selama peningkatan, SnapOtter menjalankan smoke test pada kandidat sebelum aktivasi, secara atom beralih ke dispatcher baru, lalu menguras generasi lama sebelum garbage collection.

NVIDIA CUDA terdeteksi secara otomatis dan digunakan oleh runtime yang mendukungnya. OCR menggunakan CPU di setiap host, termasuk sistem dengan GPU NVIDIA, menghindari CUDA dan kopling driver untuk alat ini.

Akselerasi iGPU Intel/AMD melalui VA-API, Quick Sync, atau OpenCL saat ini tidak didukung untuk inferensi AI. Memetakan /dev/dri ke dalam sebuah kontainer tidak mempercepat alat sidecar Python ini kecuali tersedia GPU NVIDIA yang mendukung CUDA.

19 alat AI sidecar Python di empat modalitas (gambar, audio, video, dokumen), plus 2 alat dengan kemampuan AI opsional. Semua model berjalan secara lokal - tidak diperlukan internet setelah unduhan model awal.

Kompatibilitas OCR bahasa Korea

OCR Cepat mendukung auto, en, de, es, fr, zh, dan ja, tetapi tidak mendukung bahasa Korea (ko). Bahasa Korea memerlukan paket OCR Akurat dan balanced atau best. Paket berjalan pada kontainer resmi Linux amd64 dan arm64, termasuk host NVIDIA dengan OCR tetap memakai CPU. Sistem yang tidak didukung menerima kesalahan kompatibilitas yang jelas dan tidak pernah diam-diam kembali ke fast. Bahasa Korea dengan fast atau alias lama tesseract ditolak sebelum antre dengan FEATURE_INCOMPATIBLE dan fast-korean-unsupported.

Arsitektur

Node.js Tool Route
      |
      v
 @snapotter/ai bridge.ts
      | (stdin/stdout JSON + stderr progress events)
      v
 +-- Native Tesseract + Ghostscript (fast image/PDF OCR)
 |
 +-- Isolated OCR runtime (persistent JSONL dispatcher)
 |     `-- RapidOCR + ONNX Runtime CPU + pinned PP-OCR models
 |
 `-- Python dispatcher (persistent process, "ai" profile)
      |
      |-- remove_bg.py        (rembg / BiRefNet)
      |-- upscale.py          (RealESRGAN)
      |-- inpaint.py          (LaMa ONNX)
      |-- outpaint.py         (LaMa canvas expansion)
      |-- detect_faces.py     (MediaPipe)
      |-- face_landmarks.py   (MediaPipe landmarks)
      |-- enhance_faces.py    (GFPGAN / CodeFormer)
      |-- colorize.py         (DDColor)
      |-- noise_removal.py    (SCUNet / tiered denoising)
      |-- red_eye_removal.py  (landmark + color analysis)
      |-- restore.py          (scratch repair + enhancement + denoising)
      |-- transcribe.py       (faster-whisper speech-to-text)
      +-- install_feature.py  (on-demand bundle installer)

Profil dispatcher "docs" yang terpisah menggantikan allowlist AI dengan skrip pemrosesan dokumen (doc_pagecount, doc_health, doc_flatten, doc_redact, doc_text, doc_to_word, doc_metadata, doc_html_pdf) dan melewati impor ML yang berat.

Timeout: 300 d default; OCR dan penghapusan latar belakang BiRefNet mendapat 600 d.

Bundel Fitur

Model AI dikemas berdasarkan tumpukan dependensi bersama, bukan satu arsip per alat. Sebuah bundel fitur dapat mengaktifkan beberapa alat saat mereka memakai keluarga model, wheel Python, atau pustaka native yang sama. Ini menjaga image Docker rilis tetap lebih kecil dan menghindari penyimpanan salinan duplikat dari model matting latar belakang, deteksi wajah, OCR, restorasi, dan model bicara yang sama.

Image Docker mengirimkan aplikasi ditambah runtime umum. Arsip model besar diunduh sesuai permintaan ke dalam volume /data/ai persisten, lalu dipakai ulang oleh setiap alat yang membutuhkannya. Jika sebuah bundel sudah terpasang karena alat lain memerlukannya, mengaktifkan alat dependen baru tidak mengunduh bundel itu lagi.

Sebagian besar alat AI memerlukan satu atau lebih paket fitur sebelum dapat dijalankan. UI admin menginstalnya dengan alat melalui POST /api/v1/admin/tools/:toolId/features/install, yang menyelesaikan daftar bundel lengkap, melewati bundel yang sudah diinstal, dan hanya mengantri unduhan yang hilang. Misalnya, mengaktifkan Foto Paspor pada antrian instans baru background-removal dan face-detection; mengaktifkannya setelah Penghapusan Latar Belakang sudah diinstal antrian hanya face-detection. OCR adalah pengecualian karena fast tidak memerlukan paket; instal runtime akurat opsionalnya melalui UI atau POST /api/v1/admin/features/ocr/install.

BundelUkuranGrup dependensi bersamaAlat yang memakainya
background-removal4-5 GBmatting latar belakang rembg / BiRefNetremove-background, passport-photo, transparency-fixer, background-replace, blur-background
face-detection200-300 MBdeteksi wajah dan landmark MediaPipeblur-faces, red-eye-removal, smart-crop
object-eraser-colorize1-2 GBinpainting/outpainting LaMa dan DDColorerase-object, colorize, ai-canvas-expand
upscale-enhance5-6 GBRealESRGAN, GFPGAN / CodeFormer, denoisingupscale, enhance-faces, noise-removal
photo-restoration4-5 GBpipeline perbaikan goresan dan restorasirestore-photo
ocr~208-234 unduhan MiB / ~409-488 MiB terpasangOpsional RapidOCR 3.9.1, ONNX Runtime 1.20.1, dan model PP-OCR yang disematkanocr, ocr-pdf (hanya balanced dan best)
transcription~600 MBmodel speech-to-text faster-whispertranscribe-audio, auto-subtitles

Alat dengan dependensi lintas bundel:

AlatBundel yang diperlukanAlasan
passport-photobackground-removal, face-detectionMenghapus latar belakang, lalu memakai landmark wajah untuk membingkai crop sesuai aturan foto paspor dan KTP.
enhance-facesupscale-enhance, face-detectionMendeteksi wajah sebelum menjalankan peningkatan GFPGAN atau CodeFormer pada wilayah wajah yang dipilih.

Alat hanya tersedia ketika semua bundel yang diperlukan telah diinstal, kecuali OCR: tingkat fast bawaannya tetap tersedia tanpa paket OCR opsional. Penginstalan sebagian valid dan ditangani secara bertahap: bundel yang terinstal digunakan kembali, bundel yang hilang ditampilkan sebagai unduhan, dan antrean penginstalan dijalankan satu per satu sehingga lingkungan Python yang dibagikan tidak diubah secara bersamaan.

Instalasi runtime OCR {#accurate-ocr-runtime-installation} yang akurat

Paket OCR yang akurat adalah runtime khusus platform untuk kontainer resmi Linux amd64 atau Linux arm64. Versi amd64 menggunakan Python 3.12; build arm64 menggunakan Python 3.11. Kedua build menjalankan RapidOCR melalui CPUExecutionProvider ONNX Runtime, sehingga paket yang sama hanya berfungsi pada CPU dan host NVIDIA Docker. Runtime yang akurat memerlukan setidaknya 4 GiB memori efektif: batas cgroup kontainer yang dikonfigurasi, jika tidak, memori host. Sistem di bawah minimum kompatibilitas yang ditandatangani akan ditolak sebelum diunduh. Persyaratan ini tidak berlaku untuk Fast OCR bawaan. Build Bare-metal ditolak karena libc dan Python ABI tidak dapat disimpulkan dengan aman; OCR cepat tetap tersedia ketika host menyediakan Tesseract dan Ghostscript.

Artefak opsional adalah sekitar 208-234 MiB yang dikompresi dan 409-488 MiB yang diekstraksi, bergantung pada arsitektur. Indeks yang ditandatangani mengikat jumlah byte yang dikompresi dan diekstraksi secara tepat yang diterapkan oleh penginstal. Tesseract bawaan menambahkan sekitar 25 MiB ke gambar resmi dan tidak memerlukan file di /data/ai.

Instalasi online mengambil indeks rilis yang ditandatangani dan artefak alamat konten yang tepat untuk platform saat ini. SnapOtter memverifikasi tanda tangan indeks Ed25519, ukuran artefak, intisari SHA-256, intisari model, jalur, mode file, dan smoke test yang dipentaskan sebelum mengaktifkan generasi baru secara atom. Penginstalan yang gagal membuat generasi sehat sebelumnya tetap aktif.

Untuk instalasi dengan celah udara, unggah ocr-runtime-index.json rilis dan arsip runtime OCR yang cocok ke POST /api/v1/admin/features/import menggunakan bidang multibagian bernama index dan archive. Impor offline menerapkan pemeriksaan tanda tangan, hash, ekstraksi, kompatibilitas, dan uji asap yang sama seperti instalasi online; arsip tanpa indeks bertanda tangan tepercaya ditolak.


Penghapusan Latar Belakang

Rute alat: remove-background
Model: rembg dengan BiRefNet (default) atau varian U2-Net

ParameterTipeDefaultDeskripsi
modelstring-Varian model (override opsional)
backgroundTypestring"transparent"Salah satu dari: transparent, color, gradient, blur, image
backgroundColorstring-Warna hex untuk latar belakang solid
gradientColor1string-Warna gradien pertama
gradientColor2string-Warna gradien kedua
gradientAnglenumber-Sudut gradien dalam derajat
blurEnabledboolean-Aktifkan efek blur latar belakang
blurIntensitynumber (0-100)-Intensitas blur
shadowEnabledboolean-Aktifkan drop shadow pada subjek
shadowOpacitynumber (0-100)-Opasitas bayangan
outputFormatstring-Format keluaran: png, webp, atau avif
edgeRefineinteger (0-3)-Tingkat penyempurnaan tepi
decontaminateboolean-Hilangkan rembesan warna dari tepi

Penggantian Latar Belakang

Rute alat: background-replace
Model: rembg / BiRefNet (dibagikan dengan remove-background)

Menghapus latar belakang dan menggantinya dengan warna solid atau gradien.

ParameterTipeDefaultDeskripsi
backgroundType"color" | "gradient""color"Mode latar belakang
colorstring"#ffffff"Warna hex latar belakang (saat backgroundType adalah color)
gradientColor1string-Warna hex gradien pertama
gradientColor2string-Warna hex gradien kedua
gradientAngleinteger (0-360)180Sudut gradien dalam derajat
featherinteger (0-20)0Radius feathering tepi
format"png" | "webp""png"Format keluaran

Blur Latar Belakang

Rute alat: blur-background
Model: rembg / BiRefNet (dibagikan dengan remove-background)

Memburamkan latar belakang sambil menjaga subjek tetap tajam.

ParameterTipeDefaultDeskripsi
intensityinteger (1-100)50Intensitas blur
featherinteger (0-20)0Radius feathering tepi
format"png" | "webp""png"Format keluaran

Upscaling Gambar

Rute alat: upscale
Model: RealESRGAN (dengan fallback Lanczos saat tidak tersedia)

ParameterTipeDefaultDeskripsi
scalenumber2Faktor upscale
modelstring"auto"Varian model
faceEnhancebooleanfalseTerapkan tahap peningkatan wajah GFPGAN
denoisenumber0Kekuatan denoising
formatstring"auto"Override format keluaran
qualitynumber95Kualitas keluaran (1-100)

OCR / Ekstraksi Teks

Rute alat: ocr
Model: Tesseract (fast); RapidOCR dengan model kecil PP-OCRv6 (balanced); Model medium PP-OCRv6 dengan penilaian varian terkalibrasi (best)

ParameterTipeDefaultDeskripsi
quality"fast" | "balanced" | "best"DinamisJika quality dan engine tidak diberikan, SnapOtter memilih tingkat terbaik yang tersedia dengan urutan best, balanced, lalu fast. Untuk bahasa Korea, fast tidak pernah dipilih; sistem memakai best, lalu balanced, atau mengembalikan kesalahan instalasi maupun kompatibilitas runtime akurat.
languagestring"auto"Bahasa: auto, en, de, fr, es, zh, ja, ko
enhancebooleanBergantung pada tingkatanTingkatkan kontras lokal. Fast menerapkannya secara langsung; tingkatan akurat mempertahankan varian hanya ketika skor yang dikalibrasi meningkatkan OCR. Defaultnya aktif untuk yang Terbaik
enginerangkaian-Alias ​​​​kompatibilitas yang tidak digunakan lagi. Memetakan tesseract ke fast dan nilai paddleocr lama ke balanced; itu tidak memuat PaddlePaddle

Mengembalikan teks yang diekstraksi ditambah metadata asal: mesin, kualitas yang diminta dan aktual, perangkat, penyedia, status degradasi, peringatan, dan versi runtime/model yang akurat bila berlaku. Permintaan kualitas eksplisit tidak pernah kembali ke tingkat lain. Jika balanced atau best tidak tersedia, API mengembalikan FEATURE_NOT_INSTALLED atau FEATURE_INCOMPATIBLE alih-alih menjalankan fast secara diam-diam.

OCR PDF

Rute alat: ocr-pdf
Model: Sistem tingkat yang sama seperti OCR gambar

Mengekstrak teks dari dokumen PDF hasil pindaian menggunakan OCR bertenaga AI, halaman per halaman.

ParameterTipeDefaultDeskripsi
quality"fast" | "balanced" | "best"DinamisJika quality dan engine tidak diberikan, SnapOtter memilih tingkat terbaik yang tersedia dengan urutan best, balanced, lalu fast. Untuk bahasa Korea, fast tidak pernah dipilih; sistem memakai best, lalu balanced, atau mengembalikan kesalahan instalasi maupun kompatibilitas runtime akurat.
languagestring"auto"Bahasa: auto, en, de, fr, es, zh, ja, ko
pagesstring"all"Pemilihan halaman: "all", "1-3", "1,3,5"
enhancebooleanBergantung pada tingkatanTingkatkan kontras lokal. Fast menerapkannya secara langsung; tingkatan akurat mempertahankan varian hanya ketika skor yang dikalibrasi meningkatkan OCR. Defaultnya aktif untuk yang Terbaik
enginerangkaian-Alias ​​​​kompatibilitas yang tidak digunakan lagi. Memetakan tesseract ke fast dan nilai paddleocr lama ke balanced; itu tidak memuat PaddlePaddle

Aturan larangan penurunan versi yang sama juga berlaku untuk PDF OCR. Halaman PDF diraster sebelum dikenali, dan satu permintaan dapat memilih maksimal 50 halaman.

Blur Wajah / PII

Rute alat: blur-faces
Model: deteksi wajah MediaPipe

ParameterTipeDefaultDeskripsi
blurRadiusnumber (1-100)30Radius blur Gaussian
sensitivitynumber (0-1)0.5Ambang kepercayaan deteksi

Peningkatan Wajah

Rute alat: enhance-faces
Model: GFPGAN, CodeFormer

ParameterTipeDefaultDeskripsi
model"auto" | "gfpgan" | "codeformer""auto"Model peningkatan
strengthnumber (0-1)0.8Kekuatan peningkatan
sensitivitynumber (0-1)0.5Ambang deteksi wajah
onlyCenterFacebooleanfalseTingkatkan hanya wajah paling tengah

Pewarnaan AI

Rute alat: colorize
Model: DDColor (dengan fallback OpenCV DNN)

Mengubah foto hitam-putih atau grayscale menjadi berwarna penuh.

ParameterTipeDefaultDeskripsi
intensitynumber (0-1)1.0Kekuatan saturasi warna
model"auto" | "ddcolor" | "opencv""auto"Varian model

Penghapusan Derau

Rute alat: noise-removal
Model: SCUNet (pipeline denoising bertingkat)

ParameterTipeDefaultDeskripsi
tier"quick" | "balanced" | "quality" | "maximum""balanced"Tingkat pemrosesan
strengthnumber (0-100)50Kekuatan denoising
detailPreservationnumber (0-100)50Seberapa banyak detail yang dipertahankan; makin tinggi makin banyak tekstur yang terjaga
colorNoisenumber (0-100)30Kekuatan pengurangan derau warna
formatstring"original"Format keluaran: original, png, jpeg, webp, avif, jxl
qualitynumber (1-100)90Kualitas enkoding keluaran

Penghapusan Mata Merah

Rute alat: red-eye-removal

Mendeteksi landmark wajah, menemukan wilayah mata, dan mengoreksi oversaturasi kanal merah.

ParameterTipeDefaultDeskripsi
sensitivitynumber (0-100)50Ambang deteksi piksel merah
strengthnumber (0-100)70Kekuatan koreksi
formatstring-Override format keluaran (opsional)
qualitynumber (1-100)90Kualitas keluaran

Restorasi Foto

Rute alat: restore-photo

Pipeline multi-langkah untuk foto lama atau rusak: deteksi dan perbaikan goresan/robekan, peningkatan wajah, denoising, dan pewarnaan opsional.

ParameterTipeDefaultDeskripsi
scratchRemovalbooleantrueDeteksi dan perbaiki goresan, robekan
faceEnhancementbooleantrueTerapkan tahap peningkatan wajah
fidelitynumber (0-1)0.7Kekuatan peningkatan wajah (makin tinggi = makin konservatif)
denoisebooleantrueTerapkan tahap denoising
denoiseStrengthnumber (0-100)25Kekuatan denoising
colorizebooleanfalseWarnai setelah restorasi
colorizeStrengthnumber (0-100)85Intensitas pewarnaan

Foto Paspor

Rute alat: passport-photo
Model: landmark wajah MediaPipe + penghapusan latar belakang BiRefNet

Alur kerja dua fase: analisis (deteksi wajah + hapus latar belakang) lalu hasilkan (crop, ubah ukuran, tile). Mendukung 37+ negara di 6 kawasan.

Fase 1: Analisis

POST /api/v1/tools/image/passport-photo/analyze

Menerima berkas gambar (multipart). Mengembalikan data landmark wajah, pratinjau base64, dan dimensi gambar.

Fase 2: Hasilkan

POST /api/v1/tools/image/passport-photo/generate

Menerima body JSON berisi hasil Fase 1 ditambah pengaturan pembuatan:

ParameterTipeDefaultDeskripsi
jobIdstring(wajib)Job ID dari Fase 1
filenamestring(wajib)Nama berkas asli dari Fase 1
countryCodestring(wajib)Kode negara ISO (mis., US, GB, IN)
documentTypestring"passport"Tipe dokumen
bgColorstring"#FFFFFF"Hex warna latar belakang
printLayoutstring"none"Tata letak cetak: none, 4x6, a4, letter
maxFileSizeKbnumber0Ukuran berkas maks dalam KB (0 = tanpa batas)
dpinumber (72-1200)300DPI keluaran
customWidthMmnumber-Lebar kustom dalam mm (menimpa spesifikasi negara)
customHeightMmnumber-Tinggi kustom dalam mm (menimpa spesifikasi negara)
zoomnumber (0.5-3)1Faktor zoom
adjustXnumber0Penyesuaian posisi horizontal
adjustYnumber0Penyesuaian posisi vertikal
landmarksobject(wajib)Landmark dari Fase 1
imageWidthnumber(wajib)Lebar gambar dari Fase 1
imageHeightnumber(wajib)Tinggi gambar dari Fase 1

Penghapusan Objek (Inpainting)

Rute alat: erase-object
Model: LaMa via ONNX Runtime

Mask dikirim sebagai bagian berkas kedua (fieldname mask), bukan sebagai base64. Piksel putih dalam mask menandai area yang akan dihapus. Pengaturan format dan quality dikirim sebagai field form tingkat atas.

ParameterTipeDefaultDeskripsi
filefile(wajib)Gambar sumber (multipart)
maskfile(wajib)Gambar mask (multipart, fieldname mask, putih = hapus)
formatstring"auto"Format keluaran: auto, png, jpg, jpeg, webp, tiff, gif, avif, heic, heif, jxl
qualityinteger (1-100)95Kualitas keluaran

Dipercepat dengan CUDA saat GPU NVIDIA tersedia.

AI Canvas Expand

Rute alat: ai-canvas-expand
Model: outpainting berbasis LaMa

Memperluas kanvas gambar ke segala arah dan mengisi area baru dengan konten yang dihasilkan AI yang cocok dengan gambar yang ada.

ParameterTipeDefaultDeskripsi
extendTopinteger0Piksel untuk diperluas di atas
extendRightinteger0Piksel untuk diperluas di kanan
extendBottominteger0Piksel untuk diperluas di bawah
extendLeftinteger0Piksel untuk diperluas di kiri
tier"fast" | "balanced" | "high""balanced"Tingkat kualitas
formatstring"auto"Format keluaran: auto, png, jpg, jpeg, webp, tiff, gif, avif, heic, heif, jxl
qualityinteger (1-100)95Kualitas keluaran

Setidaknya satu arah perluasan harus lebih besar dari 0.

Smart Crop

Rute alat: smart-crop
Model: deteksi wajah MediaPipe (hanya mode wajah)

ParameterTipeDefaultDeskripsi
modestring"subject"Strategi crop: subject, face, trim
strategy"attention" | "entropy""attention"Strategi untuk mode subjek
widthinteger-Lebar keluaran
heightinteger-Tinggi keluaran
paddinginteger (0-50)0Persentase padding di sekitar subjek
facePresetstring"head-shoulders"Pembingkaian preset saat mode=face
sensitivitynumber (0-1)0.5Ambang deteksi wajah
thresholdinteger (0-255)30Ambang deteksi latar belakang (mode trim)
padToSquarebooleanfalseIsi hasil yang di-trim menjadi persegi
padColorstring"#ffffff"Warna latar belakang untuk padding persegi
targetSizeinteger-Ukuran target untuk keluaran ber-padding (piksel)
qualityinteger (1-100)-Kualitas keluaran

Nilai mode lawas attention dan content diterima dan dipetakan masing-masing ke subject dan trim.

Preset wajah:

PresetTerbaik untuk
closeupHeadshot
head-shouldersFoto profil
upper-bodyLinkedIn / formal
half-bodySeluruh tubuh bagian atas

Transkripsi Audio

Rute alat: transcribe-audio
Model: faster-whisper

Mengubah ucapan menjadi teks. Mendukung format keluaran teks polos, SRT, dan VTT.

ParameterTipeDefaultDeskripsi
languagestring"auto"Bahasa: auto, en, de, fr, es, zh, ja, ko, id, th, vi
outputFormat"txt" | "srt" | "vtt""txt"Format keluaran

Subtitle Otomatis

Rute alat: auto-subtitles
Model: faster-whisper (mengekstrak audio dari video, lalu mentranskripsi)

Menghasilkan berkas subtitle dari trek audio sebuah video.

ParameterTipeDefaultDeskripsi
languagestring"auto"Bahasa: auto, en, de, fr, es, zh, ja, ko, id, th, vi
format"srt" | "vtt""srt"Format subtitle keluaran

Perbaikan Transparansi PNG

Rute alat: transparency-fixer
Model: BiRefNet HR-matting (resolusi 2048x2048)

Memperbaiki PNG "transparan palsu" di mana latar belakang telah dihapus tetapi meninggalkan fringing, halo, atau artefak semi-transparan. Menggunakan model matting resolusi tinggi BiRefNet untuk menghasilkan kanal alpha yang bersih, lalu menerapkan pemrosesan defringe yang dapat dikonfigurasi untuk menghilangkan kontaminasi warna di sepanjang tepi.

Rantai fallback OOM: Jika BiRefNet HR-matting melampaui memori yang tersedia, alat secara otomatis beralih ke birefnet-general, lalu ke u2net.

ParameterTipeDefaultDeskripsi
defringenumber (0-100)30Kekuatan defringe tepi untuk menghilangkan kontaminasi warna
outputFormat"png" | "webp""png"Format gambar keluaran
removeWatermarkbooleanfalseTerapkan pra-pemrosesan penghapusan watermark (filter median)
bash
curl -X POST http://localhost:1349/api/v1/tools/image/transparency-fixer \
  -H "Authorization: Bearer <token>" \
  -F "file=@fake-transparent.png" \
  -F 'settings={"defringe":30,"outputFormat":"png"}'

Alat dengan Kemampuan AI Opsional

Alat berikut bukan alat sidecar Python tetapi memakai fitur AI saat opsi tertentu diaktifkan.

Peningkatan Gambar

Rute alat: image-enhancement
Mesin: Berbasis analisis (histogram dan statistik Sharp)

Menganalisis gambar dan menerapkan koreksi otomatis untuk eksposur, kontras, white balance, saturasi, ketajaman, dan derau. Mendukung mode spesifik-adegan.

ParameterTipeDefaultDeskripsi
mode"auto" | "portrait" | "landscape" | "low-light" | "food" | "document""auto"Mode adegan untuk menyetel koreksi
intensitynumber (0-100)50Kekuatan koreksi keseluruhan
corrections.exposurebooleantrueTerapkan koreksi eksposur
corrections.contrastbooleantrueTerapkan koreksi kontras
corrections.whiteBalancebooleantrueTerapkan koreksi white balance
corrections.saturationbooleantrueTerapkan koreksi saturasi
corrections.sharpnessbooleantrueTerapkan koreksi ketajaman
corrections.denoisebooleantrueTerapkan denoising
deepEnhancebooleanfalseAktifkan penghapusan derau AI via SCUNet (memerlukan bundel upscale-enhance)

Endpoint analisis tambahan tersedia di POST /api/v1/tools/image/image-enhancement/analyze yang mengembalikan koreksi yang terdeteksi tanpa menerapkannya.

Ubah Ukuran Sadar-Konten (Seam Carving)

Rute alat: content-aware-resize
Mesin: biner Go caire (bukan Python - tidak ada manfaat GPU)

Mengubah ukuran gambar secara cerdas dengan menghapus seam berenergi rendah, mempertahankan konten penting.

ParameterTipeDefaultDeskripsi
widthnumber-Lebar target
heightnumber-Tinggi target
protectFacesbooleanfalseLindungi wilayah wajah yang terdeteksi (memerlukan bundel face-detection)
blurRadiusnumber (0-20)4Pra-blur untuk perhitungan energi
sobelThresholdnumber (1-20)2Ambang sensitivitas tepi
squarebooleanfalsePaksa keluaran persegi