한눈에 떠나는 여행
사진은 화소 콘텐츠와 메타 데이터를 모두 포함하는 파일로 저장할 수 있습니다. Import를 사용하여 이러한 메타 데이터를 얻고 사진이 포함하고 있는 컨텍스트에 대해 프로그램 가능한 통찰력을 얻을 수 있습니다.
리스본 여행시 찍은 사진을 가져와서 분석합니다.
In[1]:=
![Click for copyable input](assets.ko/a-trip-at-a-glance/In_17.png)
files = Map[img \[Function] ExampleData[img, "FilePath"],
ExampleData[{"TestImageSet", "Lisbon2016"}]];
이미지의 날짜 히스토그램을 알아봅니다.
In[2]:=
![Click for copyable input](assets.ko/a-trip-at-a-glance/In_18.png)
dates = Map[file \[Function] Import[file, "DateTime"], files];
In[3]:=
![Click for copyable input](assets.ko/a-trip-at-a-glance/In_19.png)
DateHistogram[dates, Quantity[1, "Hours"]]
Out[3]=
![](assets.ko/a-trip-at-a-glance/O_11.png)
섬네일 콜라주를 확인합니다.
In[4]:=
![Click for copyable input](assets.ko/a-trip-at-a-glance/In_20.png)
thumbnails =
ExampleData[{"TestImageSet", "Lisbon2016"}, "ThumbnailList"];
In[5]:=
![Click for copyable input](assets.ko/a-trip-at-a-glance/In_21.png)
ImageCollage[thumbnails, Method -> "Columns", ImagePadding -> 2]
Out[5]=
![](assets.ko/a-trip-at-a-glance/O_12.png)
사진을 타임 라인에 정렬합니다.
In[6]:=
![Click for copyable input](assets.ko/a-trip-at-a-glance/In_22.png)
TimelinePlot[MapThread[Labeled, {dates, thumbnails}],
PlotLayout -> "Vertical", ImageSize -> Medium]
Out[6]=
![](assets.ko/a-trip-at-a-glance/O_13.png)
데이터 집합의 모든 정보를 모아봅니다.
In[7]:=
![Click for copyable input](assets.ko/a-trip-at-a-glance/In_23.png)
gps = Map[file \[Function] Import[file, "GeoPosition"], files];
In[8]:=
![Click for copyable input](assets.ko/a-trip-at-a-glance/In_24.png)
ds = Dataset[
MapThread[
AssociationThread[{"Thumbnail", "DateTime",
"GeoPosition"} -> {##}] &, {thumbnails, dates, gps}]]
Out[8]=
![](assets.ko/a-trip-at-a-glance/O_14.png)
이미지를 찍은 위치를 표시합니다.
In[9]:=
![Click for copyable input](assets.ko/a-trip-at-a-glance/In_25.png)
GeoGraphics[
MapThread[
GeoMarker, {Normal[ds[All, "GeoPosition"]],
Normal[ds[All, "Thumbnail"]]}], ImageSize -> Medium]
Out[9]=
![](assets.ko/a-trip-at-a-glance/O_15.png)