Ini adalah perintah epsilon yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS
PROGRAM:
NAMA
EPSILON - kompresor gambar wavelet Sumber Terbuka yang kuat
RINGKASAN
epsilon COMMAND [PILIHAN] FILE...
DESKRIPSI
EPSILON adalah kompresor gambar wavelet Open Source yang kuat. Proyek ini ditujukan untuk
pemrosesan gambar paralel dan kuat. Paket sumber EPSILON terdiri dari dua bagian inti:
perpustakaan dan codec yang portabel, dirancang dengan baik, aman untuk thread, dibangun di atas perpustakaan.
API perpustakaan sangat bersih, sederhana, dan didokumentasikan dengan cermat.
Algoritma kompresi EPSILON didasarkan pada transformasi wavelet dan disebut tertanam
pengkodean. Yang pertama adalah teori matematika yang terkenal dan yang terakhir adalah yang sangat efektif,
namun metode sederhana pengkodean gambar progresif. Algoritma aktual yang digunakan dalam EPSILON adalah
disebut SPECK - Set Partitioned Embedded bloCK coder yang diperkenalkan oleh Asad Islam dan William
manusia mutiara.
Saat ini, EPSILON mendukung lebih dari 30 filter wavelet dan memiliki antarmuka otomatis
untuk menambahkan yang baru. Naskah yang disebut make_filterbank.pl menerjemahkan file XML dengan filter
deskripsi ke kode sumber C yang cocok untuk EPSILON. Jadi, satu-satunya operasi manual adalah
untuk menyalin dan menempelkan keluaran program ke dalam kode sumber EPSILON. Setelah kompilasi ulang
filter baru akan siap digunakan. Khusus catatan: jika Anda berhasil menambahkan filter baru,
tolong kirimkan ke saya. Mereka akan dimasukkan ke dalam pohon sumber utama.
Proyek EPSILON mengikuti tradisi lama dan berbuah UNIX untuk Keep It Simple. Sebagai contoh,
EPSILON bekerja dengan PPM (PixelMap Portabel) dan PGM (Portable GrayMap) gambar saja. Mereka
menyediakan fungsionalitas dasar dan berfungsi sebagai penyebut yang paling tidak umum untuk pertukaran
gambar truecolor dan grayscale antara platform dan sistem operasi yang berbeda. Melihat
untuk konverter? Mencoba netpbm (http://netpbm.sourceforge.net/) - alat Open Source yang sempurna-
kit dengan lebih dari 220 utilitas praktis!
Untuk menyimpan dan menukar gambar terkompresi, EPSILON mendefinisikannya sendiri PSI (ePSIlon)
format berkas. Format PSI dirancang dengan mempertimbangkan kesederhanaan dan toleransi kesalahan. SEBUAH
File PSI khas terdiri dari beberapa blok independen. Setiap blok mewakili ubin dari
gambar asli dan memiliki header yang lengkap. Setiap blok dilindungi dengan
CRC dan (sebenarnya dengan dua CRC: satu untuk header dan satu lagi untuk data) dipisahkan
dari blok lain dengan penanda unik khusus. Teknik sederhana namun efektif ini membuat
sinkronisasi aliran dan lokalisasi kesalahan hampir sepele. Selain itu, header blok adalah
disimpan sebagai teks biasa: Anda dapat mengeditnya secara manual dengan editor teks favorit Anda. Periksa
di luar!
EPSILON memiliki banyak fitur menarik. Misalnya, Anda dapat mengontrol dengan baik
rasio kompresi (berkat pengkodean yang disematkan), mendistribusikan anggaran bit secara manual di antara gambar
saluran, beralih ke mode penyandian dan pemfilteran yang berbeda, dan seterusnya. EPSILON juga
mendukung file BESAR dengan memori konstan dan kompleksitas waktu linier.
Fitur bagus lainnya adalah dukungan multi-threading. Cobalah untuk (kembali) mengkompilasi EPSILON dengan Pthreads
diaktifkan (lihat INSTALL untuk info lebih lanjut) dan Anda pasti akan melihat peningkatan kecepatan pengkodean yang signifikan
(dengan asumsi Anda memiliki CPU multicore atau beberapa CPU di komputer Anda).
Pada rilis 0.6.1 EPSILON juga mendukung mode pengelompokan. Ini adalah fitur yang sangat kuat
jika Anda memiliki beberapa mesin yang terhubung dengan jaringan berkapasitas tinggi, katakanlah gigabit ethernet atau
bahkan lebih cepat. Untuk membangun versi EPSILON yang sadar cluster, silakan baca file INSTALL.
Meskipun EPSILON memiliki banyak pilihan ad-hoc khusus yang tidak wajib Anda gunakan
mereka. Default biasanya baik-baik saja. Antarmuka baris perintah EPSILON sangat ramah
dan dirancang agar mirip dengan GZIP or BZIP. Jadi, `epsilon foo.ppm' dan `epsilon -d
bar.psi' biasanya cukup.
PILIHAN
Perintah:
-e, --encode-file
Encode file yang ditentukan. Ini adalah tindakan default jika tidak ada perintah yang diberikan.
-d, --dekode-file
Decode file yang ditentukan.
-t, --memotong-file
Potong file yang ditentukan. Karena pengkodean yang disematkan, pemotongan blok setara
untuk memblokir kompresi ulang. Dengan kata lain, pemotongan lebih lanjut mengompresi file PSI.
-s, --start-simpul
Mulai simpul klaster. Catatan: opsi ini tersedia dalam versi EPSILON yang sadar cluster
saja dan ditujukan untuk node SLAVE. Dengan kata lain, Anda harus memohon epsilon -s
pada setiap node SLAVE di cluster Anda. Menghentikan node cluster bahkan lebih sederhana: Bunuh semua
epsilon.
Perintah ini menjalankan program daemon yang menerima koneksi TCP pada port tertentu
(2718 secara default). Untuk setiap koneksi, proses anak baru bercabang dan yang utama
program menunggu koneksi berikutnya. Encoding dan decoding statistik adalah SYSLOG-ed
menggunakan fasilitas LOG_DAEMON.
Jika Anda telah menginstal DSH (Distributed SHell) pada node MASTER, Anda juga dapat menggunakan dua
skrip yang berguna, yaitu start_epsilon_nodes.pl dan stop_epsilon_nodes.pl, Untuk
memulai dan menghentikan semua node cluster masing-masing.
Konfigurasi host diambil dari apa yang disebut .epsilon.node mengajukan. Secara default,
pemeriksaan program .epsilon.node di direktori saat ini. Jika tidak ada file seperti itu,
percobaan program .epsilon.node di direktori home pengguna. Anda juga dapat secara eksplisit
tentukan lokasi file sebagai argumen untuk skrip. Format file dijelaskan di bawah ini.
-a, --daftar-semua-fb
Daftar semua bank filter yang tersedia. Perintah ini menunjukkan ID, NAMA dan JENIS ortogonalitas
untuk setiap bank filter yang tersedia. Pada rilis 0.8.1 EPSILON juga mendukung pengangkatan
implementasi transformasi wavelet biorthogonal Daubechies 9/7 yang terkenal. Berhasil
lebih cepat daripada rekan berbasis filter generik. ID default adalah memulaskan 97lift
-V, --Versi: kapan
Cetak versi program.
Opsi untuk menggunakan dengan `--enkode-file' perintah:
-f, --filter-id=ID
ID bank filter wavelet. Lihat juga --daftar-semua-fb perintah.
-b, --Ukuran blok=NILAI
Ukuran blok yang akan digunakan: 32, 64, 128, 256, 512 atau 1024. Nilai defaultnya adalah 256. Menggunakan
blok yang sangat kecil serta menggunakan blok yang sangat besar tidak disarankan: yang pertama
menambahkan overhead header yang substansial dan yang terakhir memperlambat encoding/decoding
tanpa keuntungan dalam kualitas gambar. Namun demikian, dalam beberapa keadaan langka ini
aturannya sangat berlawanan.
-n, --mode-normal
Gunakan apa yang disebut mode pemrosesan normal. Mode ini dapat digunakan dengan keduanya
filter ortogonal dan biorthogonal. Dalam praktiknya Anda harus menghindari parameter ini
kecuali jika Anda membuat penelitian di wavelet.
-o, --mode-otlpf
Gunakan apa yang disebut mode pemrosesan OTLPF. Singkatnya, OTLPF adalah semacam peretasan untuk
kurangi artefak batas saat gambar dipecah menjadi beberapa ubin (seperti biasanya
terjadi). Karena kendala matematika, metode ini dapat diterapkan pada biorthogonal
filter saja. Opsi ini diaktifkan secara default.
-r, --perbandingan=NILAI
Dengan parameter ini Anda dapat mengontrol rasio kompresi yang diinginkan dengan baik. Nilai ini adalah
tidak wajib menjadi integral: misalnya nilai 34.102 saja. Untuk
alasan yang jelas rasio kompresi harus lebih besar dari 1. Meskipun bit-bit EPSILON
algoritma alokasi cukup tepat, rasio kompresi yang terlalu tinggi akan terpotong
karena memblokir header di atas kepala. Di sisi lain, gambar kosong (misalnya seluruhnya hitam)
pasti akan dikodekan hanya dalam beberapa ratus byte terlepas dari
rasio kompresi yang Anda inginkan. Namun demikian, untuk sebagian besar gambar kehidupan nyata dan
rasio kompresi (katakanlah 10..200) rasio kompresi yang sebenarnya akan sangat dekat
dengan nilai yang Anda inginkan. Rasio kompresi default adalah 10.
-2, --dua-pass
Secara default EPSILON menggunakan algoritma alokasi bit laju bit konstan (CBR). CBR adalah
cukup cepat dan biasanya memberikan kualitas gambar yang dapat diterima. Jika kualitas gambar adalah
perhatian, coba algoritma alokasi bit variabel bit-rate (VBR) dua-pass sebagai gantinya.
VBR memberikan hasil yang lebih baik daripada CBR, tetapi berjalan sekitar dua kali lebih lambat.
-N, --node-daftar
File dengan konfigurasi cluster. Catatan: opsi ini tersedia di cluster-aware
Hanya versi EPSILON dan ditujukan untuk node MASTER. Setiap baris dalam file ini harus
mengikuti format berikut:
pengguna@host:port^number_of_CPU
Semua bidang wajib. Tidak ada komentar, spasi atau baris kosong diperbolehkan di sini. Itu
bidang kedua dapat berupa alamat IP atau nama host. Bidang terakhir sebenarnya adalah
jumlah koneksi TCP simultan dengan node SLAVE yang sesuai. Biasanya itu
diatur ke jumlah CPU atau agak lebih besar.
Jika Anda menghilangkan opsi ini, EPSILON akan mencoba .epsilon.node di saat ini dan rumah
direktori (dalam urutan itu).
Catatan 1: bidang pengguna´ digunakan oleh start_epsilon_nodes.pl dan stop_epsilon_nodes.pl untuk
SSH ke dalam kotak target.
Catatan 2: port´ adalah port EPSILON node bukan SSH.
-T, --utas
Jumlah utas penyandian. Catatan: opsi ini tersedia di EPSILON thread-aware
hanya versi.
--Y-rasio=NILAI, --Cb-rasio=NILAI, --Cr-rasio=NILAI
Persen anggaran bit untuk saluran Y, Cb dan Cr masing-masing. Nilai-nilai seharusnya
memberikan 100% sama sekali. Perhatikan bahwa opsi ini masuk akal untuk truecolor (yaitu PPM)
gambar saja. Nilai default adalah 90-5-5.
--tanpa pengambilan sampel ulang
Secara default, EPSILON melakukan resampling gambar truecolor menggunakan apa yang disebut resampling 4:2:0
skema. Trik ini pada dasarnya mempercepat encoding/decoding tanpa mengorbankan
kualitas gambar. Biasanya tidak ada alasan untuk menonaktifkan resampling.
Opsi untuk menggunakan dengan `--decode-file' perintah:
-T, --utas
Jumlah utas decoding. Catatan: opsi ini tersedia di EPSILON thread-aware
hanya versi.
-N, --node-daftar
File dengan konfigurasi cluster. Catatan: opsi ini tersedia di cluster-aware
Hanya versi EPSILON dan ditujukan untuk node MASTER. Setiap baris dalam file ini harus
mengikuti format berikut:
pengguna@host:port^number_of_CPU
Semua bidang wajib. Tidak ada komentar, spasi atau baris kosong diperbolehkan di sini. Itu
bidang kedua dapat berupa alamat IP atau nama host. Bidang terakhir sebenarnya adalah
jumlah koneksi TCP simultan dengan node SLAVE yang sesuai. Biasanya itu
diatur ke jumlah CPU atau agak lebih besar.
Jika Anda menghilangkan opsi ini, EPSILON akan mencoba .epsilon.node di saat ini dan rumah
direktori (dalam urutan itu).
--abaikan-hdr-crc
Abaikan kesalahan CRC header.
--abaikan-data-crc
Abaikan kesalahan data CRC.
--abaikan-format-err
Lewati blok yang cacat.
Opsi untuk menggunakan dengan `--memotong-file' perintah:
-r, --perbandingan=NILAI
Rasio pemotongan yang diinginkan. Lihat juga --memotong-file perintah.
Opsi untuk menggunakan dengan `--mulai-simpul' perintah:
-P, --Pelabuhan=NILAI
Secara default node cluster mendengarkan nomor port 2718. Dengan opsi ini Anda dapat mengatur
nomor port lain.
Umum pilihan:
-H, --halt-on-error
Secara default jika ada yang gagal EPSILON melanjutkan ke file input berikutnya. Dengan ini
opsi Anda dapat mengubah perilaku default: EPSILON akan berhenti pada kesalahan pertama. Catatan
bahwa dalam mode MPI opsi ini tidak tersedia dan EPSILON selalu berhenti pada kesalahan.
-q, --diam
Secara default EPSILON menunjukkan statistik yang cantik selama operasinya. Dengan opsi ini
Anda dapat meminta EPSILON untuk diam.
-O, --keluaran-dir=DIR
Direktori keluaran untuk file yang disandikan, didekode, dan terpotong. Jika tidak disetel, keluaran
file akan disimpan dalam direktori yang sama dengan yang dimasukkan.
Bantuan pilihan:
-?, --membantu
Tampilkan pesan bantuan.
--penggunaan
Tampilkan pesan penggunaan singkat.
CONTOH
Encode semua file PPM di direktori saat ini dengan algoritma VBR dua-pass:
epsilon *.ppm -2
Encode file PGM dengan rasio kompresi 1:100 menggunakan 4 utas:
epsilon -e besar.pgm -r 100 -T 4
Dekode semua file ke / Tmp direktori, beroperasi dengan tenang:
epsilon -dq *.psi -O / Tmp
Dekode daftar file yang sangat rusak:
epsilon -d *.psi --abaikan-hdr-crc --abaikan-data-crc --abaikan-format-err
Mulai node cluster dengan nomor port non-standar:
epsilon -s -P 1234
Encode file menggunakan konfigurasi cluster kustom:
epsilon *.ppm *.pgm -N /path/ke/.epsilon.nodes
Encode file dengan mesin MPI menggunakan semua prosesor yang tersedia:
pirun C epsilon tes.ppm
Gunakan epsilon online menggunakan layanan onworks.net