Programowanie w systemie UNIX/libvips/
VIPS
składniki edytuj
- libvips - biblioteka
- libvips-tools - narzędzi uruchomiane z linii poleceń
- nip2 - GUI
instalacja edytuj
narzędzia edytuj
sudo apt install libvips-tools
biblioteka edytuj
Instalacja w Ubuntu: [1]
sudo apt install libvips libvips-dev
uruchomianie edytuj
biblioteka edytuj
- w c[2]
gui edytuj
W trybie graficznym:
nip2
w trybie linii poleceń:[3]
nip2 -e 'mean (Image_file "w.png")'
narzędzia edytuj
Sprawdzamy wersję:
vips -v
Przykładowy wynik:
vips-8.9.1-Sun Feb 23 08:51:26 UTC 2020
Lista poleceń:
vips -l >vips.txt
W wynku otrzymamy około 300 opcji
create edytuj
Tworzenie plików testowych. Program nie tworzy plikóœ OpenEXR.
black edytuj
Tworzy plik b.png z 3 bajtowym kolorem (3bands = RBG)
vips black b.png 1000 1000 --bands 3
eye edytuj
vips eye e.png 1000 1000 --factor 0.1 --uchar
worley edytuj
Tworzymy plik w.png wielkości 1000x1000 pixeli zawierający szum Worleya
vips vipsworley w.png 1000 1000
Kod żródłowy polecenia Worley jest na GitHubie
grey edytuj
vips grey g.png 1000 1000 --uchar
gaussnoise edytuj
Szum Gaussa ( funkcja vips-gaussnoise
vips gaussnoise gn.png 1000 1000
Kod jest w pliku gaussnoise.c
fractsurf edytuj
fractsurf ( funkcja vips_fractsurf)
vips fractsurf f.png 1000 1000 2.367409118563
sines edytuj
vips sines s.png 1000 1000 --hfreq 3.345 --vfreq 1.7556 --uchar
Szum Perlin edytuj
vips perlin p.png 1000 1000 --uchar --cell-size 16
Ostatnim parametrem jest wymiar fraktalny ( ang. fractal_dimension). Jest to:
- liczba zmiannoprzecinkowa o podwójnej precyzji ( double)
- wymiar powinien być w zakresie od 2 do 3
xyz edytuj
vips xyz xyz.png 1000 1000