Programowanie w systemie UNIX/libvips/
VIPS
składnikiEdytuj
- libvips - biblioteka
- libvips-tools - narzędzi uruchomiane z linii poleceń
- nip2 - GUI
instalacjaEdytuj
narzędziaEdytuj
sudo apt install libvips-tools
bibliotekaEdytuj
Instalacja w Ubuntu: [1]
sudo apt install libvips libvips-dev
uruchomianieEdytuj
bibliotekaEdytuj
- w c[2]
guiEdytuj
W trybie graficznym:
nip2
w trybie linii poleceń:[3]
nip2 -e 'mean (Image_file "w.png")'
narzędziaEdytuj
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
createEdytuj
Tworzenie plików testowych. Program nie tworzy plikóœ OpenEXR.
blackEdytuj
Tworzy plik b.png z 3 bajtowym kolorem (3bands = RBG)
vips black b.png 1000 1000 --bands 3
eyeEdytuj
vips eye e.png 1000 1000 --factor 0.1 --uchar
worleyEdytuj
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
greyEdytuj
vips grey g.png 1000 1000 --uchar
gaussnoiseEdytuj
Szum Gaussa ( funkcja vips-gaussnoise
vips gaussnoise gn.png 1000 1000
Kod jest w pliku gaussnoise.c
fractsurfEdytuj
fractsurf ( funkcja vips_fractsurf)
vips fractsurf f.png 1000 1000 2.367409118563
sinesEdytuj
vips sines s.png 1000 1000 --hfreq 3.345 --vfreq 1.7556 --uchar
Szum PerlinEdytuj
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
xyzEdytuj
vips xyz xyz.png 1000 1000