MewwSikk
article thumbnail

์ด๋ฏธ์ง€ ํŒŒ์ผ ํ˜•์‹์—๋Š” BMP, JPEG, PNG ๋“ฑ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์œ ํ˜•์ด ์กด์žฌํ•˜๊ณ  TIF(TIFF)๋„ ์ด๋ฏธ์ง€ ํ˜•์‹ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.
 

1. TIF ํŒŒ์ผ์ด๋ž€?

 
tif๋Š” TIFF ํ˜•์‹์˜ ์ด๋ฏธ์ง€ ํŒŒ์ผ์— ๋Œ€ํ•œ ํ™•์žฅ์ž ์ž…๋‹ˆ๋‹ค.
TIFF๋Š” Tag Image File Format์˜ ์•ฝ์ž์ด๋ฉฐ windows๋‚˜ mac์— ๊ด€๊ณ„์—†์ด ์ฝ๊ณ  ์“ฐ๊ธฐ ๊ฐ€๋Šฅํ•œ ์ด๋ฏธ์ง€ ํŒŒ์ผ์„ ๋œปํ•ฉ๋‹ˆ๋‹ค.
์—ฌ๋Ÿฌ ์ด๋ฏธ์ง€ ํŒŒ์ผ ํ˜•์‹๋“ค์ด ์žˆ์ง€๋งŒ TIFF๋„ ๊ทธ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, "์Šค์บ๋„ˆ๋กœ ์Šค์บ”ํ•œ ํŒŒ์ผ"์€ ์ข…์ข… tif ํ˜•์‹์ž…๋‹ˆ๋‹ค. ๋˜ํ•œ ์ผ๋ถ€ ๋””์ง€ํ„ธ ์นด๋ฉ”๋ผ์—์„œ๋„ TIFF ์ด๋ฏธ์ง€๋กœ ๋ฐ์ดํ„ฐ ์ €์žฅ์— ๋Œ€์‘ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. 
 
tiff์˜ ํ™•์žฅ์ž๋กœ๋Š” 

๋ผ๋Š” 2๊ฐ€์ง€์˜ ์ข…๋ฅ˜๊ฐ€ ์žˆ์œผ๋ฉฐ, ์ด ๋‘ ์ข…๋ฅ˜ ๋ชจ๋‘ ๊ฐ™์€ ํŒŒ์ผ ํ™•์žฅ์ž ์ž…๋‹ˆ๋‹ค.
 

2. TIFF ํŒŒ์ผ ํŠน์ง•

์ด ํŒŒ์ผ์€ ๊ณ ํ•ด์ƒ๋„ ๊ทธ๋ž˜ํ”ฝ ์ด๋ฏธ์ง€๋ฅผ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ ํ‘œ์ค€ ํฌ๋ฉง์ž…๋‹ˆ๋‹ค.
 
์ด ํŒŒ์ผ์˜ ํŠน์ง•์€
1. ๊ณ ํ•ด์ƒ๋„ ์ด๋ฏธ์ง€ ์ €์žฅ: TIFF๋Š” ๋ณต์žกํ•˜๊ณ  ๊ณ ํ•ด์ƒ๋„์˜ ์ด๋ฏธ์ง€๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐ ์ ํ•ฉํ•œ ํฌ๋ฉง์ž…๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ข…์ข… ์œ„์„ฑ ์‚ฌ์ง„, ์•„ํŠธ์›Œํฌ, ์Šค์บ”ํ•œ ๋ฌธ์„œ ๋“ฑ์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
2. ๋ฌด์†์‹ค ์••์ถ•: TIFFํŒŒ์ผ์€ ๋ฌด์†์‹ค ์••์ถ•์„ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฏธ์ง€์˜ ํ’ˆ์งˆ์ด ์†์ƒ๋˜์ง€ ์•Š๋Š”๋‹ค๋Š” ํŠน์ง•์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. JPEG์™€ ๊ฐ™์€ ํฌ๋ฉง ํ˜•์‹์€ ์†์‹ค์ด ์ผ์–ด๋‚˜๋Š” ์ ์— ๋Œ€๋น„๋˜๋Š” ํŠน์ง•์ž…๋‹ˆ๋‹ค.
3. ๋‹ค์–‘ํ•œ ์ปฌ๋Ÿฌ ํฌ๋ฉง์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
4. ๋ ˆ์ด์–ด ๋ฐ ํŽ˜์ด์ง€ ์ง€์›: TIFF๋Š” ์—ฌ๋Ÿฌ ๋ ˆ์ด์–ด๋ฅผ ํฌํ•จํ•˜๋Š” ์ด๋ฏธ์ง€๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์—ฌ๋Ÿฌ ํŽ˜์ด์ง€๋ฅผ ํ•˜๋‚˜์˜ TIFF ํŒŒ์ผ๋กœ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๋ฌธ์„œ ์Šค์บ”์— ์œ ์šฉํ•˜๋‹ค๋Š” ํŠน์ง•์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
5. ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์ง€์›: TIFF๋Š” ํƒœ๊ทธ๋ฅผ ํ†ตํ•ด ์ด๋ฏธ์ง€์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์—๋Š” ์ œ์ž‘์ž, ์ดฌ์˜ ๋‚ ์งœ, GPS ์œ„์น˜ ์ •๋ณด ๋“ฑ์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
6. ๋„“์€ ํ˜ธํ™˜์„ฑ: TIFF๋Š” ๊ฑฐ์˜ ๋ชจ๋“  ์ด๋ฏธ์ง€ ํŽธ์ง‘ ์†Œํ”„ํŠธ์›จ์–ด์™€ ํ˜ธํ™˜๋ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํŒŒ์ผ ํฌ๊ธฐ๊ฐ€ ํฌ๊ธฐ ๋•Œ๋ฌธ์— ์›น์—์„œ์˜ ์‚ฌ์šฉ์€ ์ œํ•œ์ ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
 

3. Jupyter lab์—์„œ .tif ํŒŒ์ผ์„ ์—ฌ๋Š” ๋ฐฉ๋ฒ•

Jupyter Lab์—์„œ TIF ํŒŒ์ผ์„ ์—ด๊ธฐ ์œ„ํ•ด Python์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ธ 'PIL' (Pillow) ๋˜๋Š” 'rasterio'๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 
 
๋‹ค์Œ์€ Python๊ณผ Pillow๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ TIF ํŒŒ์ผ์„ ์—ด๊ณ  ๋ณด์—ฌ์ฃผ๋Š” ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

<python />
from PIL import Image import matplotlib.pyplot as plt # Open the image file img = Image.open('image_file.tif') # Display the image plt.imshow(img) plt.show()

rasterio๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

<python />
import rasterio import matplotlib.pyplot as plt # Open the image file with rasterio.open('image_file.tif') as src:     img = src.read(1) # Display the image plt.imshow(img) plt.show()

์—ฌ๊ธฐ์—์„œ ์žˆ๋Š” src.read(1)์˜ 1์€ ์ฝ์–ด๋“ค์ผ ์ด๋ฏธ์ง€์˜ ์ฑ„๋„์„ ์ง€์ •ํ•˜๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๋œปํ•ฉ๋‹ˆ๋‹ค.
์˜ˆ๋ฅผ ๋“ค์–ด, RGB ์ฑ„๋„์„ ๊ฐ€์ง„ ์ด๋ฏธ์ง€๋ฅผ ์ฝ์„ ๋•Œ. 
src.read(1)์€ ์ฒซ ๋ฒˆ์งธ ์ฑ„๋„์„ ์ฝ์–ด์˜จ๋‹ค๋Š” ์˜๋ฏธ์ด๊ณ , src.read(2)๋Š” ๋‘ ๋ฒˆ์งธ ์ฑ„๋„์„ ์ฝ์–ด์˜จ๋‹ค๋Š” ์˜๋ฏธ, src.read(3)์€ ์„ธ ๋ฒˆ์งธ ์ฑ„๋„์„ ์ฝ์–ด์˜จ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค. 
๋˜ํ•œ ๋ชจ๋“  ์ฑ„๋„์„ ํ•œ ๋ฒˆ์— ์ฝ์–ด์˜ค๊ณ  ์‹ถ๋‹ค๋ฉด, src.read()๋ผ๊ณ  ์ž‘์„ฑํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๊ฒฐ๊ณผ๋Š” ๊ฐ ์ฑ„๋„์˜ 2D ๋ฐฐ์—ด์„ ์š”์†Œ๋กœ ๊ฐ–๋Š” 3D ๋ฐฐ์—ด์— ๋ฉ๋‹ˆ๋‹ค. ์ด ๋ฐฐ์—ด์˜ ์ฒซ ๋ฒˆ์งธ ์ฐจ์›์€ ์ฑ„๋„์„ ๊ฐ€๋ฆฌํ‚ค๊ณ  ๋‘ ๋ฒˆ์งธ์™€ ์„ธ ๋ฒˆ์งธ ์ฐจ์›์€ ์ด๋ฏธ์ง€์˜ ํ–‰ ๋˜๋Š” ์—ด์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. 
 
[ํ™•์žฅ์ž๋ž€]
ํŒŒ์ผ ํ™•์žฅ์ž๋ž€ ํŒŒ์ผ ์ด๋ฆ„์˜ ๋งˆ์ง€๋ง‰์— ์œ„์น˜ํ•˜๋ฉฐ, ์ฃผ๋กœ Dot('.')์œผ๋กœ ๊ตฌ๋ถ„๋˜๋Š” ๋ช‡ ๊ธ€์ž์˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. 
ํŒŒ์ผ ํ™•์žฅ์ž๋Š” ํŒŒ์ผ์˜ ํ˜•์‹์ด๋‚˜ ํŒŒ์ผ์ด ์–ด๋–ค ๋ฐ์ดํ„ฐ๋ฅผ ํฌํ•จํ•˜๊ณ  ์žˆ๋Š”์ง€๋ฅผ ์šด์˜ ์ฒด์ œ์™€ ์‚ฌ์šฉ์ž์—๊ฒŒ ์•Œ๋ ค์ฃผ๋Š” ๊ธฐ๋Šฅ์„ ๋‹ด๋‹นํ•ฉ๋‹ˆ๋‹ค.

profile

MewwSikk

@Mu Gyum

ํฌ์ŠคํŒ…์ด ์ข‹์•˜๋‹ค๋ฉด "์ข‹์•„์š”โค๏ธ" ๋˜๋Š” "๊ตฌ๋…๐Ÿ‘๐Ÿป" ํ•ด์ฃผ์„ธ์š”!