본문 바로가기

Saxul Story

PNG와 JPEG를 가지고 놀기

인터넷, 웹, 블로그, 모바일 환경에 있어서 구현되는 여러가지 그래픽 이미지에 대한 이야기가 있을 수 있지만 1980년도부터 조금씩 접근을 해온 방식들을 생각해보면 역시 몇가지를 생각해보게 됩니다. 그때만 해도 고화질, 고용량, 높은 색재현력에 대한 이해와 접근을 중심으로 생각을 했고, 우연치 않게 1990년도에 들어서 건드리게 된 DTP관련 이야기들을 생각해보면 참 많은 것을 생각해보게 됩니다.




왼쪽이 JPEG원본, 오른쪽이 투명 레이어 대충 만들어 저장한 PNG입니다. 


이야기의 발단은 이것입니다. 어떤 분이 제 블로그 내에서 표현되는 배경없이 물체만 보이게 하는 것에 대한 질문에 대해서 저는 그냥 "PNG 포맷, 레이어 살려서 저장하시면 되요." 라고 대답을 했는데 이런 것이 일반적인 접근인가 아닌가 등을 생각해보게 되었습니다. 실상, 이제는 그래픽관련 전문가가 아니더라도 TIFF, BMP, JPEG, GIF 같은 포맷에 대한 이해와 접근은 많이 넓어졌다고 생각을 합니다.

저도 사실, 이런저런 취미적인 접근에 있어서 TIFF, BMP, JPEG는 조금 일찍 접근한 편이지만 (개인용 PC를 손에 넣기 전부터 말입니다) 기본은 취미적인 재미로 시작한 부분이 강했습니다. 그런 가운데 웹표준에 대한 여러가지 기준이라는 것을 생각해보게 되었지요. 조금 홈페이지 같은 작업도 해보면서 개성적인 구분이라는 것을 생각했습니다. 그중 하나가 지금 여러분들이 보고 계시는 색상을 바탕으로 한 만보 홈페이지였습니다. 1999년을 아시는 분은 제가 이 색상에 이런 PNG이미지를 바탕으로한 홈페이지를 만들었던 것을 기억하실 것이라고 생각합니다.

다만 취미적인 DB작업에 있어서 웹 에디터를 통해 전부 다 작업하기에는 시간과 노력이 부족했기 대문에 대충 굴렸는데 이후 블로그 시스템이 세상에 나오게 되면서 저도 이쪽으로 이동하면서 새로운 접근을 하게됩니다.


개성적인 취미로 시작한 이미지 작업이지만 나중에 쓸데없이 포토샵, 일러스트레이터, 쿽 익스프레스, 코렐 드로우 등을 꼬작거리면서 결국 3D스튜디오 맥스나 소프트 이미지 등을 건들게 된 것을 생각하면 참 거시기한 취미경험이었다고 생각을 합니다. 쓸데없이 건들고 싶은 것, 알고 싶은 것이 많았던 것 때문에 여기저기에 관심을 둔 덕분에 혼자서 자가발전하는 스타일이었습니다. 이런 것은 사실 돈이 되는 것은 아니었다고 하겠지만 나중에 이런 것을 바탕으로 쌓은 경험이 다양한 생활을 하는데 도움이 되었던 것은 사실이라고 하겠습니다.


때문에 저는 예상하기를 BMP와 TIFF를 중심으로 발전할 미래상을 꿈꾸었지요. 초고화질 이미지, 지금 기준으로 볼 때 10000픽셀 이상되는 이미지를 좋은 형태로 바라보는 시각을 가지고 있었습니다. 때문에 SLR카메라를 가지고 더 고화질 이미지를 만들어 둔다는 생각을 했었던 것 같습니다. 때문에 초기 통신이나 인터넷 문화환경이 구축되고 있었을 때는 기대가 너무 컸습니다. 때문에 큰 이미지를 만들었다가 실패를 했지요, 만들어 업데이트하고 친구에게 보라고 했더니 친구가 욕하는 겁니다. 무슨 이미지를 그렇게 크게 올려놓냐고 말입니다.

쳇 그래서 저도 결국 웹용 이미지 포맷 3총사 GIF・JPEG・PNG 를 연구하게 됩니다. 물론 이전에도 용량을 줄인다는 목적으로 사용을 해보기는 했지만 그런 경우보다 HDD용량이 늘어나가는 것이 더 빨랐기 때문에 실질적으로 잘 사용하지 않게 되었습니다. 나름 생각을 해보면 취미로서 게임이다 뭐다 해서 조금 일찍 용량대비 도전이 빨랐습니다.  - 물론 이것은 주변에 취미용도 이상으로 컴퓨터를 활용하는 인간들이 많았기 때문입니다. - 

그런 구분에 있어서 저는 생각한 것이 일러스트 파일같은 AI포맷구분, 비트맵과 벡터 이미지 포맷에 대한 우월성 논란과 더불어 여러가지 기준을 생각해보기도 했습니다. 더불어 그런것은 완벽하게 호환시킬 수 있는 퍼펙트한 구조가 나올 수 없는 것일까? 하는 기대도 했지요.




일반 디지털 카메라 촬영사진 JPEG포맷으로 촬영, 리사이즈 해서 올린 것.


어찌되었든, 시대는 고속회선과 더불어 웹환경이 급격한 발전을 거듭하면서 대중적인 포맷으로서 GIF(Graphics Interchange Format)를 시작으로 JPEG(Joint Photograph Experts Group)로 도달하게 됩니다. 작은 아이콘 이미지나 반짝이는 애니메이션 효과등을 포함한 GIF에 더욱 효과적인 재미를 보았다고 말을 할 수도 있지만 이제 대용량 이미지를 보여주는 가운데에서 접근할 수 있는 선명하고 깨끗한 이미지를 원하는 이들에게 있어서 더 좋은 화질은 당연히 필요한 순서라고 하겠지요. 물론 그것은 압축률에 따른 확장성과 범용성으로서 접근이라고 하겠지요.

 

GIF는 최대 8비트 = 256색까지 색을 저장할 수 있는 압축화상방식으로 아이콘과 링크용 버튼, 로고 등에서 대표적으로 사용되었습니다. 여기에 단순하지만 다양한 애니메이션 효과들을 줄수 있다는 점에서 초반에 큰 주목을 받았다고 하겠습니다. 플래시 애니메이션의 대두가 아니었다면 나름 세상을 풍미했을 것이라는 말을 하게됩니다.

색표현과 더불어 압축률은 나름 웹용 포맷으로서 큰 기준을 가지게 했는데 그럴 때 이 GIF는 여러가지 기준을 만족시켜주었고 활용성이 높았으면서 사용자 접근이 쉬웠습니다. 저도 싫건 좋건 접근을 할 수밖에 없었지만 취향은 아니었습니다.

장점이라고 하면 당연히 화소수, 용량 절약을 기반으로 애니메이션이 가능한 용량대비 만족도가 높았다고 생각을 합니다. 무엇보다 이후에 막강한 라이벌이 된 JPEG보다 확실하게 뛰어난 투명색, 레이어 지정이 된다는 점은 여전히 좋은 기준이었다고 생각을 합니다.


그러나 결과적으로 보면 JPEG는 압축화상방식으로서 24비트 = 1670만색을 표현할수 있습니다. 이것은 아무래도 차이가 심하지요.

특히 디지털 카메라를 기반으로한 새로운 보여줄 것, 보여줄 수 있는 환경에서 접근하는 과정을 보면 이것은 대단히 적합한 구성입니다. 여기에 압축률을 따로지정할 수 있다는 점때문에 화질을 중시할 것인지 압축용량을 중시할 것인지를 선택할 수 있게 했습니다.

다만, 기본적으로 JPEG는 손실형 압축방식입니다. 일반적인 레벨은 1~10단계이지만 포토샵 같은 프로그램에서는 11~12단계가 추가되어 비주얼적인 기준을 조금 더 강화할 정도로 손실성향을 가진 압축에는 아무래도 고급 이미지 작업을 하는 이들에게 있어서 아쉬움을 표현하게 되는 부분이라고 하겠습니다. GIF압축은 00000111111이라고 하는 01압축 비율과 그 패턴에 따른 기준을 가지고 재정리하는 하는 방법이지만 JPEG는 주로 명암과 색조 변화 데이터를  줄이거나 버리는 형태로 그 기준을 잡고 있습니다. 화상 변화에서 100% 기준 사이즈로 볼 때 크게 느낄 수 없는 정도를 버린다는 것인데 실상 이런 부분은 많이 대중성을 가질 수 있었음에도 불구하고 그래픽 작업을 전문으로 하는 사람들에게는 훌쩍 하는 기분을 만들어 주었다고 하겠습니다.

농담처럼 GIF는 정리정돈을 잘해서 압축을 하지만 JPEG는 쓸모없다고 판단되는 부분을 버려버리는 형태여서 당시 음악파일 WAVE의 압축 기준으로서 mpeg2~3 포맷에 대한 논으로도 발전하기도 했습니다. 그러나 결국 고속전송, 대용량규격에 적합하면서 대중성을 가지게 된 것은 JPEG라고 하겠습니다. 특히 그라데이션 효과부분에서는 미묘한 압축률 비교에 있어서 여러번 거론되었지만 대중적인 이용과 넓은 의미로서 확장성이 좋았다는 점때문에 꾸준히 고화질 압축방식으로서 애용되었습니다.




사진 RAW포맷에서 PNG로 변환한 이미지.

원본용량 51.3MB에서 PNG변환시 32.3MB.

웹용으로 가로 780px으로 리사이즈 (포토샵에서) 684KB.


오히려 PNG(Portable Network Graphic)은 GIF를 대신할 수 있는 색표현과 더불어 압축률이 높은 파일방식으로서 개발되었다고하겠습니다.

대중성은 떨어진다는 말도 있지만 실제 이런저런 작업에서 볼 때 충분히 좋은 발색을 보여주고, 앞서 말한 GIF의 장점이었던 투명색, 레이어 작업이 가능하다는 점이 있습니다. 나중에 압축방식 특허 허가에 관한 논란이 있어서 그런 부분에 대한 것도 해결하기 위해서 등장한 것이지만 충분히 완성형이라고 하겠지요. 다만 GIF의 장점이었던 애니메이션 표현이 되지 않고 컬러색 표현에 있어서 JPEG보다 압축률이 떨어진다라는 것 때문에 메이저 포맷으로 보기에는 어려움이 있다는 말을 듣기도 합니다. - 다만 용량대비는 '꼭'이라고 말할 수 없습니다. 가끔은 비슷한 수준으로도 가능합니다.


물론 정체된 GIF와 달리 JPEG와 PNG는 버전 업을 거듭하면서 더욱 좋은 환경을 보여주고 있는 것이 사실입니다.

덕분에 PNG는 이제 인터넷 익스플로러 4.0이상에서 정식으로 지원하는 포맷이 되었고, 넷스케이프 4.04이후 버전들에서 적용이 가능해졌습니다. 때문에 지금은 누구라도 쉽게 접근할 수 있는 이미지 방식 중 하나가 되었다고 하겠습니다.


실제 PNG는 W3C(World Wide Web Consortium)에서 권장하고 있는 화상이미지 포맷입니다.

더불어 GIF에서 표현하는 투명부분과 달리 PNG는 8비트 알파 채널을 이용한 투명층을 지원합니다. 이 부분은 조금 더 높은 활용성과 더불어 깨끗하게 뺄 수 있는 특징이 있는데 저 처럼 웹용으로 대충 빼서 쓰는 것과 달리 아주 부드러운 투명층을 형성할 수 있다는 것입니다. 때문에 웹용으로서 부드럽고 좋은 표현을 할 수 있는 형태로서 GIF, JPEG 구성이 PNG, JPEG로 바뀌고 있다고 생각을 합니다.

때문에 저로서는 그냥 일반적인 사진 이미지들은 그냥 JPEG로 사용을 하고 있지만 레이어, 투명층을 활성시켜서 조금 더 이미지를 부각시키려고 할 때는 PNG 포맷을 사용합니다. 참고로 과거 포토샵은 1.5버전부터 사용한 사람들에게 있어서 조금 불만 불편한 점이 있었습니다. 대부분 소스지원에 대한 압축률 오류로 알려진 것 때문에 파일이 너무 커지는 꼴도 보여주었고 그만큼 사람들에게 신뢰를 잃을 뻔한 적도 많았습니다. 더불어 여전히 몇몇 프로그램들에서 사용자 환경에 따라서 그 용량차이가 다르게 나오는 경우를 보여주면서 안정적이지는 않다고 말을 하기도 합니다.


그렇기때문에 여전히 용량에 대한 압축대비 효과를 본다면 JPEG를 따라갈 포맷은 없습니다.

다만 조금 더 고화질, 중복 압축저장을 통해서 손실될 것으로 생각되는 이미지 보관에는 PNG도 좋은 형식이라는 말을 하게됩니다. 가끔보면 무턱대고 JPEG가 가장 많이 쓰이고 널리 알려진 형식이니까 그것만을 가지고 사용하는 모습을 보기도 합니다. 용량, 웹 로딩 속도에서 적합화된 구성을 생각한다면 어쩔 수 없는 부분이라고 하겠지만 인터넷 환경이 상당히 좋은 우리나라를 중심으로 해서 본다면 충분히 PNG는 좋은 활용도를 보여준다고 생각을 합니다.




1991년 필름카메라로 찍은 사진이미지를 스캔해서 JPEG 일반 압축으로 만들어 올린 것.


물론 고급 디지털 카메라를 이용한 데이터 활용에서도 좋은 구성이라는 기준을 말할 때는 RAW(비압축 원본저장방식)을 말하는 경우과 더불어 JPEG도 충분히 좋다는 말을 하게됩니다. 저도 쓸데없이 원본지향주의가 아니라 제대로 잘 나온 사진 이미지는 우선 원본을 보관하고 이후 웹용으로 사용하거나 이런저런 이미지 리터칭을 할 때 다른 압축방식을 사용해서 저장해두기도 합니다. 덕분에 조금 거시기 할 때는 원본 이미지 1개에 3~4개 정도 이미지포맷이 구분되어 저장되어 있기도 합니다. 저는 주로 RAW에서 TIFF와 JPEG, 그리고 PNG로 나누어서 보관을 합니다. 디지털 카메라 시절이 아니라 필름카메라 시절에도 PC저장을 위해서 보관방식을 지정할 때 역시 이런 방법을 했기 때문에 쓸데없이 보관용 하드디스트 드라이브 용량을 크게 잡아먹게 되었지요.


사실 저는 웹상에서 '표현하는 수단'으로서 포맷을 나누어서 지정했을 뿐, 크게 나누어서 구분하지는 않았습니다. 이제 블로그 포스트 구성에 있어서 용량이라는 것을 크게 따지지 않아도 되는 시대가 되었으니 말입니다. 쪼잔하게 1~2KB 아끼려고 (프로그램에서는 여전히 중요한 작업이지만) 압축률을 바꾸는 쇼를 하지 않아도 된다는 것이지요. 조금 농담같은 말이기도 하지만 예쁜 것, 귀여운 것을 표현하고 싶은데 그것이 이미지 포맷 방식때문에 덜 예쁘게, 덜 귀엽게 보이게 되는 일은 이제 거의 없다는 것이지요. - 물론 벡터와 비트맵은 여전히 그 논이 있습니다.

여기에 더 작은 것이 좋다. 라는 웹 논리는 통신환경이 좋지 않은 나라에서 본다면 여전히 적용되는 것입니다. 실제 고속기반 웹기반은 선진국형 몇몇 나라에서만 선호되는 구분일 뿐, 아직 전세계에 보급된 통신상황을 본다면 더 예쁘고 크고, 멋진 이미지를 보여준다는 기준은 이래저래 고생시키는 것이지요.


물론 저는 과거 폭탄급 포스트를 한 적이 몇번 있습니다. 네이버 블로그에서 이미지 업데이트 용량제한이 풀린 것을 기념해서 포스트 한 개에 사진 이미지를 약 350장 정도 (그것도 나름 가로 PX이 840인 것) 넣은 것을 주르르륵 연달아 올리기도 했지요. 덕분에 어떤 분들에게는 로딩하는데에만 7~8분 이상 걸리게 만드는 쇼를 하기도 했지요. - 사실 주목적은 나누어서 쓰는 것이 귀찮아서 였지만 실제 업데이트 후에 많은 분들이 웬 폭탄 포스트? 라는 말을 듣고 깨달았습니다. 특히 해외, 선이 늦은 곳에 있는 취미인 친구는 욕을 하더군요. 그래서 이후에는 자중하고 있습니다.


결국 표현한다는 방법에 있어서 구분을 하는 것이지만, 그외 기준으로 본다면 개개인의 취향과 느낌에 따라서 달리 사용할 수 있다고 생각을 합니다. 게다가 이제는 표현할 수 있는 방법으로서 모바일 환경도 생각을 해야하고 JPEG는 새롭게 포맷기준을 강화시키는 등 (비손실 압축을 지원한 JPEG2000) 독자적인 가능성을 보여줍니다. 다만 웹브라우저 등에서 지원해주지 않기 때문에 훌쩍하는 상황이 되고 말았지만요. 개인적으로는 마이크로 소프트와 함께 개발된 JPEG XR 같은 포맷도 확장성이나 대중성을 가지고 만들어진 기준이라고 생각을 합니다. 다만 이쪽은 포맷명칭 변환이 조금 심했지요. 윈도 미디어 포토(Windows Media Photo)였다가 HD 포토(HD Photo)로 불리다가 손실형태와 비손실 압축을 동시에 지원하면서 마이크로소프트 XPS 문서에 선호되는 이미지 형식으로서 안정감을 가지게 되었지만 결국 더 높은 활용성을 가지기에는 조금 더 기다려 봐야 할 것 같습니다. 사실 그 이유는 코덱 공식 관리 코드가 비공식 관리 코드로 지정되면서 프레임워크 3.0 이상 WIC 일부에서만 지원되는 것 때문에 윈도우 비스타, 윈도 7에서만 지원되는 것도 조금 한정적이었지요. 실질 비교는 조금 어렵습니다. 웹에서 사용한다면요. - 이후에 포맷변환해서 윈도우 XP에서도 볼 수 있게 개선(?)되었지만요.




BMP로 업데이트 했지만 웹(네이버)에서 자동 PNG변환된 이미지.

BMP 리사이즈 용량은 2.81MB입니다.


웹에서는 아직 지정할 수 있는 이미지가 한정적입니다. BMP를 비롯하여 TIFF나 앞서 이야기한 JPEG진영의 확장형 포맷은 아직 지원이 되지 않습니다. 때문에 여러가지 다양한 포맷보다는 확실하게 기준치가 높아지는 것을 볼 수 있지요. 특히 근래에 나오고 있는 화제라고 한다면 '사전출판 가능 포맷'으로서의 가능성이나 가치를 논하게도 됩니다. 과거 블로그 포맷이나 이미지는 단순하게 텍스트로서 개인의 의견을 전파하는 과정을 밟았지만 대중에게 널리 알려질 수 있는 가능성으로서 조금 더 폭이 넓은 지원을 하게되기를 바라고 있다고 하겠습니다.

물론 여기까지 가게되면 그냥 포맷을 지정해서 자기 스타일에 맞추어 따로 작업하는 것이 더 나을 수도 있지만 그렇게까지 하면서 전문적인 형태로 구성한다는 것은 어느정도 시각디자인이나 출판, 보여주는 이미지로서 가지는 능력을 더 연구해야하는 귀찮음도 있습니다. 취미로서 이쁘게 꾸미는 것은 사실 보는 이들에게는 즐거운 일이지만 그것을 통해서 들이는 시간대비 기능적인 면을 본다면 제법 많은 노력과 센스가 필요하기 때문이라고 하겠습니다.


네이버를 비롯한 한국형 웹 블로그 시스템은 확실히 나중에 조금 더 한국적인 멋을 더 살린 형태로 발전할 가능성을 포함하고 있습니다. 그런 구분들을 잘 활용해서 자기 블로그를 꾸민다는 재미도 차근차근 해보는 것도 좋지 않을까 합니다.