진행 그래픽 파일

Progressive Graphics File
PGF
LibPGF.PNG
파일 이름 확장명
.pgf
인터넷 미디어 유형image/x-pgf, application/octet-stream
매직넘버504746h(ASCII PGF)
개발자세리나 젬브h
초기 릴리즈2000; 22년 전(2000년)
최신 릴리즈
7.19.3
2019; 3년 전(2019년)
형식 유형wavelet 기반 비트맵 이미지 형식
연장 위치JPEG, PNG
오픈 포맷?LGPLv2[1]

PGF(Progressive Graphics File, Progressive Graphics File)는 무손실 손실 데이터 압축을 사용하는 웨이블렛 기반 비트맵 이미지 형식이다.PGF는 JPEG 형식을 개선하고 대체하기 위해 만들어졌다.JPEG 2000과 동시에 개발되었으나 압축비 대비 속도에 중점을 두고 개발되었다.[citation needed]

PGF는 인코딩/디코딩 시간을 더 많이 들이지 않고 원래 DCT 기반 JPEG 표준의 특징적인 "막히고 흐릿한" 아티팩트를 생성하지 않고 더 높은 압축 비율로 작동할 수 있다.[2]또한 보다 정교한 진행형 다운로드를 허용한다.[citation needed]

컬러 모델

PGF는 다양한 색상 모델을 지원한다."PGF Facts Sheet" (PDF).

  • 픽셀당 1, 8, 16 또는 31비트의 그레이스케일
  • 팔레트 크기가 256인 색인 색상
  • 픽셀당 12, 16비트(빨간색: 5비트, 녹색: 6비트, 파란색: 5비트), 24 또는 48비트인 RGB 컬러 영상
  • 픽셀당 32비트의 ARGB 컬러 영상
  • 픽셀당 24비트 또는 48비트의 L*a*b 컬러 영상
  • 픽셀당 32비트 또는 64비트의 CMYK 컬러 영상

기술 토론

PGF는 확장성과 같은 기능을 추가하거나 개선하는 JPEG에 비해 향상된 압축 품질을 달성한다고 주장한다.압축 성능은 기존 JPEG 표준과 유사하다.매우 낮고 매우 높은 압축률(무손실 압축 포함)도 PGF에서 지원한다.매우 광범위한 유효 비트 전송률을 처리하는 설계의 능력은 PGF의 강점 중 하나이다.예를 들어 그림의 비트 수를 일정 양 이하로 줄이려면 첫 번째 JPEG 표준에서 수행하는 권장 사항은 입력 이미지를 인코딩하기 전에 입력 이미지의 해상도를 줄이는 것이다. 이는 일반적으로 웨이블렛 확장성 특성 때문에 PGF를 사용할 때 해당 목적에 필요하지 않은 것이다.

PGF 프로세스 체인은 다음 4단계를 포함한다.

  1. 색 공간 변환(색상 이미지의 경우)
  2. 이산형 웨이브릿 변환
  3. 수량화(데이터 압축 손실 시)
  4. 계층형 비트 평면길이 인코딩

색 구성 요소 변환

초기에는 RGB 컬러 공간에서 다른 컬러 공간으로 영상을 변환해야 하므로 세 가지 구성요소가 별도로 처리된다.PGF는 완전히 되돌릴 수 있는 수정된 YUV 컬러 변환을 사용한다.변환 매트릭스는 다음과 같다.

색도 구성요소는 분해능을 낮출 수 있지만 반드시 낮출 필요는 없다.

웨이브릿 변환

그런 다음 색상 구성요소는 임의의 깊이로 변형된다.8x8 블록 크기의 이산 코사인 변환을 사용하는 JPEG 1992과 대조적으로, PGF는 하나의 가역성 파장 변환을 사용한다. 즉, 바이오르토곤 CDF 5/3 파장 변환의 둥근 버전이다.이 웨이블렛 필터 뱅크는 JPEG 2000에서 사용된 가역성 웨이블렛과 정확히 동일하다.정수 계수만 사용하므로 출력에는 반올림(양적)이 필요하지 않으므로 정량화 노이즈를 도입하지 않는다.

수량화

웨이브릿 변환 후 계수를 스칼라 정량화하여 품질 손실을 감수하고 계수를 나타내는 비트의 양을 줄인다.출력은 비트별로 인코딩해야 하는 정수 집합이다.최종 품질을 설정하기 위해 변경할 수 있는 파라미터는 정량화 단계: 단계가 클수록 압축과 품질 손실이 크다.1과 같은 정량화 단계에서는 정량화가 수행되지 않는다(무손실 압축에 사용된다).JPEG 2000과 대조적으로, PGF는 2의 힘만을 사용하므로 매개변수 i는 2의i 정량화 단계를 나타낸다.단지 두 개의 힘을 사용하는 것만으로 정수 곱셈과 분할 연산이 필요 없다.

코딩

이전 프로세스의 결과는 몇 가지 근사 척도를 나타내는 서브밴드 모음입니다.하위 대역은 계수의 집합으로, 영상의 공간 영역뿐만 아니라 특정 주파수 범위와 관련된 영상의 측면을 나타내는 정수 번호.

정량화된 서브밴드는 더 멀리 파장 영역의 사각형 영역인 블록으로 분할된다.그것들은 일반적으로 서브밴드 전체에 걸쳐 그 안에 있는 계수가 (재구성된) 이미지 영역의 대략적인 공간 블록을 형성하고 고정된 크기의 매크로 블록으로 수집되는 방식으로 선택된다.

인코더는 매크로 블록의 모든 정량화된 계수의 비트를 인코딩해야 하며, 가장 중요한 비트에서 시작하여 덜 중요한 비트로 진행해야 한다.이 인코딩 프로세스에서 매크로블록의 각 비트 평면은 소위 코딩 패스라고 불리는 두 개의 코딩 패스로 인코딩되며, 처음에는 유의한 계수의 비트를 인코딩한 다음, 유의한 계수의 정제 비트를 한다.분명히 무손실 모드에서는 모든 비트플레인이 인코딩되어야 하며 비트플레인은 삭제될 수 없다.

유의한 계수만 적응형 런 길이/RLR(Run-Length/Rice) 코더로 압축되는데, 이 코더는 0의 긴 런을 포함하기 때문이다.매개변수 k(영점 연속 실행의 로그 길이)를 가진 RLR 코더는 순서 2의k 기본 골롬 코드라고도 한다.

다른 파일 형식과의 비교

  • JPEG 2000은 자연 이미지를 처리하는데 있어 공간 효율성이 약간 더 높다.동일한 압축비에 대한 PSNR은 PGF의 PSNR보다 평균 3% 더 좋다.압축비에서는 작은 장점이 있지만 인코딩과 디코딩 시간이 길다.[2]
  • PNG(Portable Network Graphics)는 동일한 색상의 픽셀이 많은 영상을 보다 공간 효율적으로 처리한다.

일반적인 JPEG 표준에 비해 PGF의 몇 가지 자칭 장점이 있다.[2]

  • 탁월한 압축 성능:동일한 압축비에 대한 영상 화질(PSNR로 측정)은 JPEG의 PSNR보다 평균 3% 더 좋다.낮은 비트 전송률(예: 그레이 스케일 영상의 경우 0.25비트/픽셀 미만)에서 PGF는 JPEG의 특정 모드보다 훨씬 더 중요한 이점을 가지고 있다. 즉, 아티팩트가 덜 보이고 거의 차단되지 않는다.JPEG에 대한 압축 이득은 DWT의 사용에 기인한다.
  • 다중 분해능 표현: PGF는 여러 이미지 구성요소의 원활한 압축을 제공하며 각 구성요소는 샘플당 1비트에서 31비트를 운반한다.이 기능을 사용하면 미리 보기 이미지(썸네일)를 별도로 저장할 필요가 없다.
  • 분해능 정확도에 의한 점진적 전송(일반적으로 프로그레시브 디코딩: PGF)은 분해능에 의해 프로그레시브되는 효율적인 코데스트림 조직을 제공한다.이렇게 하면 전체 파일의 작은 부분을 수신한 후 최종 사진의 낮은 화질을 볼 수 있고, 소스에서 더 많은 데이터를 얻어 단조롭게 화질을 개선할 수 있다.
  • 무손실 압축: PGF는 단일 압축 아키텍처에서 무손실 압축과 무손실 압축을 모두 제공한다.손실 압축과 무손실 압축은 모두 가역형(integer) 웨이브릿 변환을 사용하여 제공된다.
  • 사이드 채널 공간 정보:투명도 및 알파 평면이 완전히 지원됨
  • ROI 추출:버전 5 이후 PGF는 전체 이미지를 디코딩하지 않고 관심 영역(ROI) 추출을 지원한다.

사용 가능한 소프트웨어

저자는 GNU 소일반공용면허 버전 2.0에 따라 SourceForge를 통해 libPGF를 출판했다.[1] .8bi파일 형식 플러그인, Win32 콘솔 인코더 및 디코더, 32비트 및 64비트 윈도우즈 플랫폼용 WIC 기반 PGF 뷰어.사진 갤러리를 포함한 다른 WIC 애플리케이션은 이 뷰어를 설치한 후 PGF 영상을 표시할 수 있다.[3]

디지캄은 썸네일에 libPGF를 사용하는 인기 오픈소스 이미지 편집 및 카탈로그화 소프트웨어다.그것은 PGF 이미지의 점진적인 디코딩 기능을 이용하여 각 썸네일의 단일 버전을 저장하는데, 이것은 손실 없이 다른 해상도로 디코딩될 수 있기 때문에 사용자는 썸네일을 다시 계산할 필요 없이 썸네일의 크기를 동적으로 변경할 수 있다.[citation needed]

참고 항목

파일 확장자

파일 확장자.pgf 또한 TLAPGF는 관련 없는 목적으로 사용된다.

참조

  1. ^ a b Christoph Stamm (2015). "PGF libPGF.org". SourceForge project libpgf. Retrieved 14 September 2015. {{cite web}}:외부 링크 위치 work=(도움말)
  2. ^ a b c Christoph Stamm. "PGF – A new progressive file format for lossy and lossless image compression" (PDF). Archived from the original (PDF) on 7 March 2007. Retrieved 13 March 2014.
  3. ^ "PGF download". xeraina. 2013. Retrieved 14 March 2014.