Przejdź do zawartości

Programowanie w systemie UNIX/libvips/

Z Wikibooks, biblioteki wolnych podręczników.

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]

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
Szum Worleya

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

pomoc

[edytuj]

Źródła

[edytuj]
  1. libvips wiki: Build-for-Ubuntu
  2. libvips API: using-from-c.html
  3. libvips wiki: Hello-World