2015-08-18 7 views
6

Czy w Julii można wygenerować duży, rzadki obraz? Świetna biblioteka Images.jl autorstwa Tima Holya wygląda tak, jakby była przeznaczona dla pełnych macierzy obrazów, w których jeden definiuje każdy piksel.Generowanie dużych, rzadkich obrazów w Julii

enter image description here

Chciałbym zrobić bifurcation diagram, co jest raczej rzadkie. Idealnie chciałbym zrobić taki, który ma rozmiar plakatu, ale odpowiednia pełna matryca obrazu byłaby zbyt duża do wygenerowania.

Dziękuję za poświęcony czas.

+0

Nie sądzę, że Images.jl jest właściwym podejściem. Czy nie lepiej byłoby skorzystać z biblioteki graficznej, takiej jak Gadfly (https://github.com/dcjones/Gadfly.jl)? Jak stworzyłeś png, który zawarłeś powyżej? – aneccodeal

+0

Och - to, co mam powyżej, to tylko link do wpisu wikipedia. Chciałbym móc stworzyć duży obraz o wysokiej rozdzielczości, ale miałem nadzieję, że istnieje sposób bezpośredniego zapisu do skompresowanego obrazu zamiast tworzenia ogromnej matrycy. Używanie biblioteki kreślarskiej do obsługi tego może być dobrym rozwiązaniem. – Mageek

+0

Aby było jasne - chcę zrobić plakat, który mogę przekazać znajomemu. Możliwe, że generowanie pliku PDF z biblioteką kreślenia jest drogą do zrobienia. – Mageek

Odpowiedz

6

An Image mogą być tworzone z dowolnego AbstractArray, który zawiera rzadki matrycy:

julia> using Images 

julia> S = sprand(10^4, 10^4, 0.01); 

julia> img = grayim(S) 
Gray Images.Image with: 
    data: 10000x10000 Base.SparseMatrix.SparseMatrixCSC{Float64,Int64} 
    properties: 
    colorspace: Gray 
    spatialorder: x y 

Teraz, co zrobić z tego obrazu będą decydować jak będziesz zadowolony z tego. Ale nic nie stoi na przeszkodzie, aby go zdefiniować.

AKTUALIZACJA: Obecnie obrazy traktowane są jako obrazy AbstractArray, nie ma już typu Images.

+0

Konstruowanie obrazu działa, ale nie mogę go zapisać: 'imwrite (img," test.png ")' rzuca błąd konwersji. Pdf i jpg również rzucają błędy. – Mageek

Powiązane problemy