Imej & foto · Pengubah Imej Sosial
Penapis Pensampelan Semula Diterangkan: Terdekat, Dwilinear, Bikubik dan Lanczos
· Latar belakang
saiz semula imej pensampelan semula kanvas
Setiap saiz semula perlu menentukan warna piksel baharu daripada yang lama: salinan jiran terdekat, purata bilinear empat, berat bikubik enam belas dan Lanczos menggunakan sinc bertingkap. Siaran ini menerangkan setiap satu, pertukaran antara kabur, deringan dan pengalian serta perkara yang diberikan oleh pelayar kepada anda.
Foto yang sama, tiga alat, tiga hasil — teka-teki konkrit imej yang diubah saiz yang berbeza dalam ketajaman dan kilauan
Dua alat mengubah saiz boleh menghasilkan fail dengan dimensi yang sama dan bahagian tepi yang berbeza. Geometri mungkin sepadan sementara pensampelan berbeza: setiap piksel keluaran memerlukan warna yang diperoleh daripada maklumat sumber, dan terbitan itu boleh memihak kepada ketajaman, kelancaran atau ketahanan terhadap pengalianan. Dimensi fail sahaja tidak dapat mengenal pasti kaedah.
Social Image Resizer sengaja membuat janji yang lebih sempit. Sebelum drawImage ia membolehkan pelicinan imej dan meminta kualiti pelicinan yang tinggi. Kanvas 2D API tidak memberitahu apl yang menamakan kernel yang dipilih oleh pelayar, jadi produk tidak boleh melabelkan outputnya yang paling hampir, dwilinear, bikubik atau Lanczos dengan kepastian peringkat sumber.
Masalah pensampelan — mengapa mengecilkan imej tanpa penapisan menghasilkan moiré dan tepi bergerigi, secara jelas
Mengecut mengeluarkan sampel. Jika jalur frekuensi tinggi, rambut atau rangkaian dipetakan tanpa penapisan yang mencukupi, ia boleh menjadi bergerigi, berkilauan atau membentuk corak palsu. Pembesaran mewujudkan kedudukan sampel baharu antara yang sedia ada. Dalam kedua-dua arah, resampler menganggarkan output daripada sumber terhingga dan bukannya mendedahkan butiran tersembunyi.
Imej ujian yang berguna menggabungkan pepenjuru, garisan satu piksel, grid berulang dan kecerunan licin. Eksportnya pada beberapa skala dan periksa satu sama satu piksel serta saiz paparan biasa. Pemerhatian menunjukkan cara pelayar yang diuji mengendalikan kandungan yang sukar tanpa berpura-pura merekayasa terbalik pelaksanaan dalamannya.
Terhampir dan bilinear ialah konsep yang berguna, tetapi ToolAcre tidak mendedahkannya sebagai pilihan
Jiran terdekat secara konsep memilih sampel sumber terdekat dan cenderung untuk mengekalkan blok piksel keras. Interpolasi dwilinear secara konsepnya menggabungkan sampel berdekatan dan secara amnya melancarkan peralihan. Perihalan tersebut membantu menjelaskan keterlaluan yang boleh dilihat, tetapi ToolAcre tidak menawarkan suis yang dilabelkan dengan mana-mana kaedah dan ujiannya tidak mengenal pasti kernel enjin.
Jangan membuat kesimpulan penapis bernama semata-mata dari satu tepi. Pelaksanaan pelayar boleh mengoptimumkan atau mengubah tingkah laku mengikut skala. Satu-satunya pernyataan produk yang boleh dipercayai ialah pelicinan didayakan dan sifat kualiti ditetapkan kepada tinggi. Sebarang klasifikasi yang lebih mendalam memerlukan bukti khusus pelayar di luar modul ini.
Tingkah laku bikubik tidak dijanjikan oleh pelaksanaan kanvas ini
Kaedah bikubik menggunakan kejiranan yang lebih luas dan pemberat padu, dengan varian yang menukar kelembutan dengan kelebihan kelebihan. Itulah latar belakang yang berharga untuk membandingkan aplikasi imej khusus. Ia bukan kontrak untuk keluaran Kanvas 2D, kerana render.js tidak memilih pekali padu mahupun mengimport perpustakaan bikubik.
Jika aliran kerja pengeluaran memerlukan isirong padu tertentu, gunakan alat yang menamakan dan mengujinya. Social Image Resizer mengutamakan ketersediaan pelayar asli dan operasi setempat. Hasilnya harus dinilai sebagai output sampel semula pelayar di bawah enjin dan versi yang direkodkan, tidak diwakili sebagai pelaksanaan saintifik terkawal bagi satu varian.
Lanczos berada di luar kontrak alat dan tidak dituntut sebagai lalai
Lanczos menggunakan idea sinc bertingkap untuk mengekalkan perincian semasa mengawal aliasing, dan tepi keras boleh menunjukkan deringan di bawah beberapa tetapan. Buku kerja mengatakan ia adalah lalai dalam banyak alat foto, tetapi kelaziman itu tidak diperoleh di sini. Lebih penting lagi, tiada apa dalam ToolAcre meminta Lanczos mengikut nama.
Peninggalan ini penting apabila mendiagnosis halo. Melihat seseorang tidak membuktikan kernel Lanczos, dan tidak melihatnya tidak membuktikan algoritma lain. Bandingkan sumber dan output, skala dokumen dan pelayar, dan elakkan memberikan sebab yang tidak dapat diperhatikan oleh aplikasi. Gejala visual boleh membimbing ujian tanpa memperakui kod tersembunyi.
Perkara yang ditawarkan oleh pelayar — menukar togol dan pembayang kualiti berbanding penapis yang dinamakan, dan sebab output berbeza antara pelayar dan versi
Kanvas pelayar mendedahkan imageSmoothingEnabled dan imageSmoothingQuality dan bukannya katalog penapis. ToolAcre menetapkan benar pertama dan tinggi kedua serta-merta sebelum melukis sumber berskala. Enjin mungkin mentafsir pembayang secara berbeza atau berkembang antara versi, itulah sebabnya JavaScript yang serupa boleh menghasilkan perbezaan kecil silang pelayar.
Geometri kekal eksplisit walaupun persampelan tidak. computeFrame mengembalikan skala tepat dan dimensi lukisan; drawRect memusatkan dan mengimbangi hasilnya; kanvas output mempunyai dimensi sasaran integer. Asingkan fakta yang diketahui tersebut daripada pilihan pensampelan tersembunyi apabila menyemak perbezaan antara pelayar.
Perkara yang tidak dicakupi ini — mengasah selepas mengubah saiz dan penimbang yang sedar kandungan atau pembelajaran mesin
Mengasah selepas mengubah saiz, kaedah sedar kandungan dan pembinaan semula pembelajaran mesin tidak ada. Tiada kawalan topeng unsharp, pengesan tepi atau model butiran terjana. Kawalan kualiti output mempengaruhi pengekodan untuk format lossy, bukan peringkat penajaman selepas saiz semula. Anggap mereka sebagai operasi yang berbeza.
Aliran kerja asli pelayar kekal berguna dengan tepat kerana ia mudah dan tersedia. Untuk tanaman sosial rutin, periksa hasil sebenar. Untuk pengimejan saintifik, induk tipografi atau pemeliharaan seni piksel, pilih alat dengan kawalan penapis eksplisit dan pengesahan yang sesuai dengan kandungan tersebut.
Bawa pulang: penapis menerangkan rupa — Pengubah Imej Sosial menggunakan pensampelan semula pelayar sendiri, jadi mengetahui istilah ini memberitahu anda apa yang diharapkan dan perkara yang perlu diperiksa
Pensampelan semula menerangkan sebab saiz bukan keseluruhan cerita, tetapi bukti mesti sepadan dengan alat. Social Image Resizer meminta lukisan kanvas yang licin dan berkualiti tinggi dan meninggalkan kernel yang tepat kepada pelayar. Itu sudah cukup untuk menghasilkan tanaman berguna tanpa memasarkan penapis yang tidak pernah dipilih oleh kod itu.
Simpan imej ujian yang sukar, rekod butiran pelayar dan bandingkan eksport apabila kualiti penting. Terminologi membantu menerangkan perkara yang anda lihat; pelaksanaan memberitahu anda perkara yang boleh anda tuntut dengan jujur. Algoritma yang dinamakan tergolong sahaja apabila kod atau bukti pelayar berwibawa menunjukkannya.