프로그레시브 그래픽스 파일
1. 개요
프로그레시브 그래픽스 파일(PGF)은 다양한 색상 모델을 지원하는 이미지 파일 형식이다. JPEG보다 압축 품질이 우수하며, 색 공간 변환, 이산 웨이블릿 변환, 양자화, 런 길이 부호화를 거쳐 이미지를 압축한다. JPEG 2000이나 PNG와 비교하여 장단점이 있으며, JPEG 표준에 비해 압축 성능, 다중 해상도 표현, 프로그레시브 전송, 무손실 및 손실 압축, 사이드 채널 공간 정보, ROI 추출 등의 장점을 가진다. libPGF 라이브러리, Xeraina, Digikam 등 PGF 파일을 지원하는 소프트웨어가 있으며, 파일 확장자 ".pgf"는 다른 용도로도 사용될 수 있다.
이미지 준비중입니다.
| 이름 | PGF |
|---|---|
| 파일 확장자 | .pgf |
| MIME 형식 | 해당 없음 |
| 소유자 | xeraina GmbH |
| creatorcode | 해당 없음 |
| 매직 넘버 | 504746h (ASCII PGF) |
| 파일 종류 | 웨이블릿 기반 비트맵 이미지 포맷 |
| 출시일 | 2000년 |
| 최신 버전 출시일 | 2021년 |
| 라이선스 | LGPLv2 |
| 확장 형식 | JPEG, PNG |
-
웨이블릿 -
웨이블릿 변환
웨이블릿 변환은 국부적인 작은 파인 웨이블릿을 패턴으로 신호, 시스템, 프로세스의 모델을 구성하는 방법으로, 푸리에 해석의 한계를 극복하고 시간-주파수 해석을 가능하게 하여 신호 분석, 노이즈 제거, 신호 압축 등에 활용된다. -
웨이블릿 -
이산 웨이블릿 변환
이산 웨이블릿 변환(DWT)은 시간과 주파수 정보를 동시에 분석하는 다중 해상도 분석 도구로, 하르 웨이블릿 제안 이후 도비시가 공식화하여 이미지 처리, 신호 코딩, 데이터 압축 등 다양한 분야에 응용되며, 고속 푸리에 변환(FFT)보다 효율적인 계산 복잡도를 가진다. -
오픈 포맷 -
HTML
HTML은 웹 페이지 제작을 위한 표준 마크업 언어로서, 팀 버너스리가 제안하고 구현한 후 인터넷 발전과 함께 널리 사용되며, SGML에 기반하여 하이퍼텍스트 기능으로 다양한 콘텐츠를 표현하고 연결하며, W3C와 WHATWG에서 표준화를 진행하고 최신 버전은 HTML Living Standard이다. -
오픈 포맷 -
오픈 소스
오픈 소스는 제품 설계 및 재배포를 장려하는 모델로, 소프트웨어 개발에서 시작하여 개방형 협업을 장려하며 다양한 분야에서 활용되고 있고 오픈 소스 이니셔티브와 같은 단체가 운동을 지원한다. -
빈 문단이 포함된 문서 -
광주고등법원
광주고등법원은 1952년에 설치되어 광주광역시, 전라남도, 전북특별자치도, 제주특별자치도를 관할하며, 제주와 전주에 원외재판부를 두고 있다. -
빈 문단이 포함된 문서 -
1502년
1502년은 율리우스력으로 수요일에 시작하는 평년으로, 이사벨 1세의 이슬람교 금지 칙령 발표, 콜럼버스의 중앙아메리카 해안 탐험, 바스쿠 다 가마의 인도 상관 설립, 크리미아 칸국의 킵차크 칸국 멸망, 비텐베르크 대학교 설립, 최초의 아프리카 노예들의 신대륙 도착 등의 주요 사건이 있었다.
2. 색 모델
PGF는 다양한 색상 모델을 지원한다.
| 색상 모델 | 비트/픽셀 |
|---|---|
| 그레이스케일 | 1, 8, 16, 31 비트 |
| 인덱스 색상 | 256 색상 팔레트 |
| RGB 색상 이미지 | 12, 24, 48 비트 (빨강: 5비트, 녹색: 6비트, 파랑: 5비트) |
| ARGB 색상 이미지 | 32 비트 |
| L\*a\*b 색상 이미지 | 24, 48 비트 |
| CMYK 색상 이미지 | 32, 64 비트 |
3. 기술적 논의
PGF는 JPEG보다 향상된 압축 품질을 제공하며, 특히 낮은 비트율에서 우수한 성능을 보인다. PGF는 다음 4단계의 과정을 거친다.
1. 색 공간 변환 (컬러 이미지의 경우)
2. 이산 웨이블릿 변환
3. 양자화 (손실 데이터 압축의 경우)
4. 계층적 비트 평면 런 길이 부호화
이미지는 먼저 RGB 색 공간에서 다른 색 공간으로 변환되어 세 개의 구성 요소를 별도로 처리한다. PGF는 완전히 가역적인 수정된 YUV 색상 변환을 사용한다. 변환 행렬은 다음과 같다.
:
색차 신호 구성 요소는 해상도를 낮출 수 있지만, 반드시 그럴 필요는 없다.
색상 요소는 임의의 깊이로 웨이블릿 변환된다. 8x8 블록 크기의 이산 코사인 변환을 사용하는 1992년 JPEG과 달리, PGF는 가역적인 웨이블릿 변환, 즉 CDF 5/3 웨이블릿 변환의 반올림된 버전을 사용한다. 이 웨이블릿 필터 뱅크는 JPEG 2000에서 사용되는 가역 웨이블릿과 정확히 동일하다. 정수 계수만 사용하므로 출력에 반올림(양자화)이 필요하지 않으며, 따라서 양자화 노이즈가 발생하지 않는다.
웨이블릿 변환 후, 품질 저하를 감수하고 계수를 스칼라 양자화하여 표현하는 데 필요한 비트 수를 줄인다. 출력은 비트 단위로 인코딩해야 하는 일련의 정수이다. 최종 품질을 설정하기 위해 변경할 수 있는 매개변수는 양자화 단계이다. 단계가 클수록 압축률이 커지고 품질이 저하된다. 양자화 단계가 1과 같으면 양자화가 수행되지 않는다(무손실 압축에 사용됨). JPEG 2000과 달리 PGF는 2의 거듭제곱만 사용하므로 매개변수 값 i는 2i의 양자화 단계를 나타낸다. 2의 거듭제곱만 사용하면 정수 곱셈 및 나눗셈 연산이 필요하지 않다.
이전 과정의 결과는 여러 근사 스케일을 나타내는 서브 밴드 모음이다. 서브 밴드는 특정 주파수 범위 및 이미지의 공간 영역과 관련된 이미지의 측면을 나타내는 일련의 계수 — 정수이다.
양자화된 서브 밴드는 웨이블릿 도메인에서 직사각형 영역인 블록으로 더 분할된다. 일반적으로 서브 밴드 내의 계수가 (재구성된) 이미지 도메인에서 대략적인 공간 블록을 형성하는 방식으로 선택되며 고정 크기 매크로블록으로 수집된다.
인코더는 가장 중요한 비트부터 시작하여 덜 중요한 비트까지 매크로블록의 모든 양자화된 계수의 비트를 인코딩해야 한다. 이 인코딩 과정에서 매크로블록의 각 비트 플레인은 두 개의 소위 코딩 패스로 인코딩되며, 먼저 유효한 계수의 비트를 인코딩한 다음 유효한 계수의 개선 비트를 인코딩한다. 분명히, 무손실 모드에서는 모든 비트 플레인을 인코딩해야 하며 비트 플레인을 삭제할 수 없다.
유효한 계수만 적응형 런 길이/Rice (RLR) 코더로 압축되는데, 이는 0이 길게 이어지기 때문이다. 파라미터 k(0의 런의 로그 길이)가 있는 RLR 코더는 차수 2k의 기본 골롬 부호로도 알려져 있다.
3.1. 다른 파일 형식과의 비교
PGF는 확장성 등의 기능을 추가하거나 개선하여 JPEG보다 향상된 압축 품질을 달성한다고 주장한다. 압축 성능은 원본 JPEG 표준과 유사하며, 매우 낮거나 높은 압축률(예: 무손실 압축)도 지원한다. 매우 넓은 범위의 유효 비트율을 처리할 수 있는 설계 능력이 PGF의 강점 중 하나이다. 예를 들어, 특정 양 이하로 그림의 비트 수를 줄이기 위해 첫 번째 JPEG 표준에서 권장하는 방법은 인코딩 전에 입력 이미지의 해상도를 줄이는 것이지만, PGF는 웨이블릿 확장성 속성 덕분에 일반적으로 이러한 과정이 필요하지 않다.
* JPEG 2000: 자연스러운 이미지를 처리하는 데 약간 더 공간 효율적이다. 동일한 압축률에 대한 PSNR은 평균적으로 PGF보다 3% 더 좋다. 압축률 면에서는 약간의 이점이 있지만, 인코딩 및 디코딩 시간이 더 오래 걸린다.
* PNG(Portable Network Graphics): 동일한 색상의 픽셀이 많은 이미지를 처리하는 데 더 공간 효율적이다.
PGF는 일반적인 JPEG 표준에 비해 다음과 같은 장점을 가진다.
* 우수한 압축 성능: 동일한 압축률에 대한 이미지 품질(PSNR)은 평균적으로 JPEG보다 3% 더 좋다. 낮은 비트율(예: 회색조 이미지의 경우 0.25비트/픽셀 미만)에서 PGF는 JPEG의 특정 모드에 비해 훨씬 더 큰 이점을 가지며, 아티팩트가 덜 보이고 블로킹이 거의 없다. JPEG에 비해 압축 이득은 DWT를 사용하기 때문이다.
* 다중 해상도 표현: PGF는 여러 이미지 구성 요소의 원활한 압축을 제공하며, 각 구성 요소는 구성 요소 샘플당 1~31비트를 전달한다. 이 기능 덕분에 미리 보기 이미지(thumbnails)를 별도로 저장할 필요가 없다.
* 프로그레시브 전송(해상도 정확도에 따른): PGF는 해상도별로 프로그레시브한 효율적인 코드 스트림 구성을 제공한다. 따라서 전체 파일의 작은 부분만 수신한 후에도 낮은 품질의 최종 그림을 볼 수 있으며, 소스에서 더 많은 데이터를 받아 품질을 점진적으로 향상시킬 수 있다.
* 무손실 및 손실 압축: PGF는 단일 압축 아키텍처에서 무손실 및 손실 압축을 모두 제공한다. 가역(정수) 웨이블릿 변환을 사용하여 손실 및 무손실 압축을 모두 지원한다.
* 사이드 채널 공간 정보: 투명도 및 알파 평면을 완벽하게 지원한다.
* ROI 추출: 버전 5부터 PGF는 전체 이미지를 디코딩하지 않고도 관심 영역(ROI)을 추출할 수 있다.
4. 특허
프로그레시브 그래픽스 파일 형식은 여러 특허로 보호되고 있다.
5. 사용 가능한 소프트웨어
libPGF는 GNU 약소 일반 공중 사용 허가서 버전 2.0으로 배포되는 PGF 라이브러리이다. Xeraina는 윈도우용 PGF 인코더 및 디코더와 WIC 기반 PGF 뷰어를 제공한다. 이 뷰어를 설치하면 파일 탐색기를 포함한 다른 WIC 응용 프로그램에서 PGF 이미지를 표시할 수 있다. Digikam은 썸네일 이미지에 libPGF를 사용하는 이미지 편집 및 카탈로그 소프트웨어이다.
6. 파일 확장자
파일 확장자 `.pgf`와 TLA PGF는 관련 없는 목적으로도 사용된다.
* 어도비 일러스트레이터는 캡슐화된 포스트스크립트 이전에 '프로그레시브 그래픽스 포맷'(Progressive Graphics Format)을 사용했다.
* PGF/TikZ는 SourceForge 프로젝트 'PGF'에서 '포터블 그래픽스 포맷'(Portable Graphics Format)을 사용한다.
* XnView 및 Konvertor는 파일 확장자 `.pgf`를 '포트폴리오 그래픽스(Portfolio Graphics)'와 연관시킨다.