[CS50 x Edwith]Topic7: 컴퓨터는 어떻게 이미지 파일을 구별할 수 있을까요?

Yewon Jeong·2023년 5월 28일
0

CS 스터디

목록 보기
6/19

이미지

이미지는 여러 가지 파일 유형으로 저장된다. 보통 우리가 많이 볼 수 있는 이미지 파일 형식으로는 비트맵(.bmp),JPG(.jpg),PNG(.png),GIF(.gif)등이 있다. 이 외에도 다양한 이미지 파일 유형들이 있는데, 각각의 파일 유형들에는 장점과 단점이 있다. 어떤 파일 유형으로 저장하는가에 따라 이미지 파일이 더 크거나 작을 수 있고, 더 선명하거나 그렇지 않을 수 있다.

사진 파일에 들어있는 정보

여러분이 사진을 찍어 이미지에 저장하면 그 이미지는 보통 JPEG라는 확장자를 갖게 되고 이미지를 압축하여 저장한다. 윈도우에서 많이 볼 수 있는 파일 형식에는 BMP도 있다. 하나의 이미지를 다양한 이미지 파일 형식으로 저장할 수 있는데, 저장되는 형식에 따라 파일 안에 들어가 있는 비트 데이터들의 구조 또한 다르다. 이 때문에 각각의 이미지 파일은 보통 첫 부분에 파일을 구분할 수 있는 구분자를 넣어둔다. JPEG의 첫 부분에는 16진수 단원에서 배웠던 것처럼 255 216 255라는 10진수로 시작된다. 이렇게 JPEG파일을 들여다 보면 파일을 구분할 수 있는 정보가 처음에 보이고 나머지 정보들이 그 다음에 저장되게 된다.

비트맵 이미지 파일에 들어있는 정보

여러분이 윈도우에서 많이 볼 수 있는 BMP 파일 형식은 이미지 데이터를 가장 단순하게 저장한다. 대신 압축을 하지 않아 파일 크기가 크다는 단점이 있다. BMP 파일 형식 역시 JPEG파일 처럼 파일의 가장 처음 부분에 비트맵 파일에 대한 정보가 있다는 것을 알 수 있다.

JPEG 파일은 이미지를 압축하는 장점을 갖고 있으며, GIF 파일이 256색을 표시할 수 있는데 비해 JPEG는 1600만 색상을 나타낼 수 있어 고해상도를 나타내기에 적합하다.

GIF는 이미지의 전송을 빠르게 하기 위한 압축저장 방식을 사용한다. JPEG보다 압축률은 낮지만 압축 시 이미지의 손상이 적다.
PNG는 GIF와 JPEG의 장점만을 합쳐 놓은 압축방식이다. GIF보다 압축률이 좋고 JPEG보다 원본에 손상이 적어 효과적이다.

ANSWER

JPEG,GIF,PNG 워드 문서,엑셀 파일 간에 구분되는 점은 서로 다른 비트 패턴을 사용한다는 것, 그러한 비트 패턴들은 보통 파일 초반부(헤더)에 있다. 여러분들의 컴퓨터가 워드 문서나 JPEG를 열면 대체로 파일의 첫 비트들을 본다. 만약 그 패턴을 인식하면서 이 파일이 이미지라는 것을 알면 사용자에게 그래픽으로 보여준다. 워드 doc 문서라면 문서 형식으로 보여줄 것이다.

예시) BMP 파일 처리.
비트맵 파일은 픽셀이라는 점들의 패턴이다, 말 그대로 비트로 된 맵. BMP 파일 형식이 흥미로운 점은 내부적으로 파일의 헤더 즉 처음 몇몇 바이트는 3byte 이상으로 이루어져 있다. 모든 비트맵 파일 즉 그래픽 파일 형식은 숫자들로 이루어져 있다는 점을 기억하세요 이 파일 형식을 만든 마이크로소프트는 데이터들을 int형,char형,float 형으로 정하지 않고 WORD형,DWORD형,LONG형, BYTE형으로 정했습니다. 이 둘은 서로 다른 자료형입니다, 같은 것을 뜻하는데 이름만 다르게 한 겁니다. 여러분 하드디스크에 있는 BMP 파일을 열면 창이 열리고 해당 이미지를 볼 수 있습니다.그렇게 되는 이유는 아마도 운영체제가 아마도 BMP 파일 이름에 있는 확장자를 인식할 뿐만 아니라 비트맵파일의 맨 앞에 있는 비트 패턴을 확인하기 때문입니다.

참고

https://www.edwith.org/cs50/lecture/22811

profile
일단 하는 중

0개의 댓글