jpeg은 1986년에 나온 컬러 정지영상의 압축표준이다.
1992년 컬러 정지화상압출을 위한 국제 표준으로 확정되었다.
jpeg보다 좋은 정지영상 코덱이 여러개 있지만 무료라서 앞으로도 계속 사용될 예정이다.
압축률은 20:1이상이고 품질 저하가 발생하는 손실압축 방식을 사용하지만 눈에 띄는 손실 없이 최대 25:1까지 압축 가능하다. 손실을 감수하면 100:1까지도 압축이 가능하다
적은 파일 용량으로 품질이 우수한 이미지를 표현할 수 있기 때문에 사진 압축에 많이 사용된다. 선이나 문자, 세밀한 격자 등이 다수 포함된 이미지는 gif나 png같은 비손실 압축 표준을 사용하는것이 바람직하다. 그래픽 계열은 gif png를 사용하는것이 좋고 jpeg를 사용하면 오히려 데이터 크기가 커진다.
jpeg2000은 wavelet transform사용해서 압축률을 30% 더 높였지만 loyalty를 받기 때문에 사용되지 않음.
jpeg ar은 증강현실 표준이고, jpsearch는 content based still image search기술 표준으로 사진은 파일이름이 없기 때문에 자동으로 사진을 분류하고 찾기 위한 기술이다. search engine등에서 사용된다.
jpeg은 홀로그램 등 지금도 새로운 응용분야 개척을 모색하고 있다.
jpeg은 동영상 압축 표준인 mpeg의 기초가 된다.
jpeg은 손실방식과 무손실 방식이 있는데 lossless는 x-ray같은 픽셀 하나하나 중요한 경우에 사용하는 방식이고 lossy는 dct+Q+VLC방식으로 인간의 관심이 많이가는 부분은 정밀하게 처리하고 관심이 안가는 부분은 과감하게 삭제처리한다.
JPEG압축방식에는 가역방식(lossless)이 있고 비가역방식(lossy)이 있다.
lossy방식은 baseline방식과 extended방식으로 나뉜다.
가역방식은 DPCM+VLC를 사용하는 방식으로 DPCM은 차를 구해서 laplacian분포를 만든 이후에 확률 편중을 이용해서 VLC로 많이 나오는 symbol에 짧은 이름을 붙이는 방식이다. spatial model에서 공간적 중복성을 제거하는 방법이다.
original 영상이 predictor에서 DPCM을 통해서 데이터가 늘어난 상태에서 VLC를 거쳐서 bitstream이로 변환된다. 엔트로피 코딩을 수행하기 위해서는 인코더와 디코더가 동일한 VLC테이블을 가지고 있어야 한다.
모든 symbol을 VLC로 처리하면 테이블의 크기가 커지고 메모리에서 테이블을 참조해야하는데 그렇게 되면 parsing 속도가 느려진다. 따라서 캐시를 사용해서 많이 사용되는 symbol을 저장하고 테이블의 크기도 가능한 줄이는것이 좋다.