Video: Profilvideo: Cykelpartner.dk - Hvem er Cykelpartner? 2025
Ustrukturerede datafiler består af en række bits. Filen adskiller ikke bitene fra hinanden på nogen måde. Du kan ikke bare se på filen og se nogen struktur, fordi der ikke er nogen at se. Ustrukturerede filformater afhænger af filbrugeren for at vide, hvordan man tolker dataene.
For eksempel kan hver pixel i en billedfil bestå af tre 32-bit felter. At vide, at hvert felt er 32-bit, er op til dig. Et overskrift i starten af filen kan give vejledninger om at fortolke filen, men det er selvfølgelig op til dig at vide, hvordan man interagerer med filen.
Dette eksempel viser, hvordan man arbejder med et billede som en ustruktureret fil. Eksempelbilledet er et offentligt domæneudbud fra commons. Wikimedia. org. For at arbejde med billeder skal du få adgang til scikit-billedbiblioteket, som er en gratis samling af algoritmer, der bruges til billedbehandling. Her er en vejledning til dette bibliotek.
Den første opgave er at kunne vise billedet på skærmen ved hjælp af følgende kode. (Denne kode kan kræve lidt tid at køre. Billedet er klar, når den optagne indikator forsvinder fra fanen IPython Notebook.)
fra skimage. Io importerer indlæst
fra skimage. transformer import størrelse
fra matplotlib import pyplot som plt
import matplotlib. cm som cm
example_file = (" // upload.wikimedia.org /" +
"wikipedia / commons / 7 / 7d / Dog_face.png")
image = imread (example_file, as_grey = Sandt)
PLT. imshow (billede, cmap = cm. grå)
PLT. show ()
Koden begynder ved at importere en række biblioteker. Derefter oprettes en streng, der peger på eksempelfilen online og placerer den i
example_file
. Denne streng er en del af
imread ()
metodeopkaldet sammen med
as_grey
, som er sat til
True
. Argumentet
as_grey
fortæller Python at slå farvebilleder i gråtoner. Alle billeder, der allerede er i gråtoner, forbliver på den måde.
Nu når du har et billede indlæst, er det tid til at gøre det (gør det klart at vise på skærmen. Funktionen
imshow ()
udfører gengivelsen og bruger et farveskort med gråtoner. > show ()
funktionen viser faktisk
billede
for dig.
Billedet vises på skærmen, når du har gengivet og vist det.
I [*]:
indtastningen fortæller dig, at koden stadig kører, og du kan ikke gå videre til næste trin.) Handlingen med at lukke billedet slutter kodesegmentet. Nu har du et billede i hukommelsen, og du vil måske gerne vide mere om det.Når du kører følgende kode, opdager du billedtype og størrelse:
print ("datatype:% s, form:% s"%
(type (billede), billede. Form))
Udgangen fra dette opkald fortæller dig, at billedtypen er
numpy. ndarray
, og at billedstørrelsen er 90 pixel med 90 pixel. Billedet er faktisk et væld af pixels, som du kan manipulere på forskellige måder. Hvis du f.eks. Vil beskære billedet, kan du bruge følgende kode til at manipulere billedfeltet:
image2 = image [5: 70, 0: 70]
plt. imshow (image2, cmap = cm. grå)
plt. show ()
Det
numpy. ndarray
i
image2
er mindre end den i
image
, så output er også mindre. Typiske resultater er vist nedenfor. Formålet med at beskære billedet er at gøre det til en bestemt størrelse. Begge billeder skal have samme størrelse, så du kan analysere dem. Beskæring er en måde at sikre, at billederne er den korrekte størrelse til analyse.
Ved at beskære billedet bliver det mindre.
image3 = resize (image2, (30, 30), mode = "nærmeste")
plt. imshow (image3, cmap = cm. grå)
print ("datatype:% s, form:% s"%
(type3), billede3. form))
Udgangen fra < print ()
funktionen fortæller dig, at billedet nu er 30 pixels med 30 pixels i størrelse. Du kan sammenligne det med ethvert billede med samme dimensioner.
Når du har alle billederne i den rigtige størrelse, skal du fladse dem. En datasæt række er altid en enkelt dimension, ikke to dimensioner. Billedet er i øjeblikket et array på 30 pixels med 30 pixels, så du kan ikke gøre det til en del af et datasæt. Følgende kode flader
image3, så det bliver et array på 900 elementer, der er gemt i
image_row
:
image_row = image3. flad ()
print ("datatype:% s, form:% s"%
(type (image_row), image_row. form))
Bemærk, at typen stadig er
numpy. ndarray
. Du kan tilføje dette array til et datasæt og derefter bruge datasættet til analyseformål. Størrelsen er 900 elementer, som forventet.