2014-12-04 2 views
0

완벽하게 무작위 인 2 x 2 픽셀의 16 비트 그레이 스케일 이미지가 있다고 가정 해보십시오. 정보 내용은 2 x 2 x 2 바이트 = 8 바이트입니다.압축 된 이미지 형식

다음으로 경계를 이루는 2 x 2 초기 ​​픽셀 사이에 8 x 8 시간 픽셀을 쌍 선형 보간합니다. 각 픽셀마다 무지개 색상 맵에서 3 바이트 RGB 값을 찾습니다. 이 이미지를 압축하지 않은 상태로 저장하면 10 x 10 x 3 바이트 = 300 바이트가 필요합니다.

그러나 정보 내용이 많이 증가하지 않았습니다. 슈퍼 지능형 압축 알고리즘은 내 100 픽셀을보고 내가 한 것을 추론하고 초기 2 x 2 그레이 스케일 픽셀 + 컬러 맵을 저장할 수 있어야합니다.

그런 이미지를 저장하기 위해 기존 이미지 형식을 압축해야합니까?

+0

귀하의 설명을 이해하기가 어렵습니다. 당신은 근본적으로 10px 격자로 (나는 생각한다) 4 개의 무작위 회색 모서리를 만들고 중간에 무엇을 가지고 있는가? 무지개와 3 바이트 RGB 색상을 아무 곳에 나 소개하지 않으면 나를 잃어 버렸습니다. 회색 모서리와 색상이 같은 이미지를 우리에게 보여주는 것은 어떨까요? –

답변

1

이미지가 손실 또는 손실이 필요한지 여부에 따라 다릅니다. 나는 당신이 무손실을 원한다고 가정 할 것이다. 그것은 당신이 이미지로 무엇을하는지, 어떻게 이미지를 생성하는지에 달려 있습니다. 짧은 대답은 16 비트 PNG 투명성이 가장 일반적인 형식입니다. 손실을 사용하는 경우 JPEG가 더 나은 경우가 많지만 이미지가 사진과 같이 연속 톤인지 여부에 따라 다릅니다. Google WebP는 종종 다른 형식을 날려 버리는 놀라운 형식이지만 아직 지원되지 않습니다.

예를 들어 이미지를 게임용 텍스처로 사용하는 경우 게임 툴킷에 pvr 텍스처가 필요합니다. iOS에서 PNG 파일이 사용되지만 다른 바이트 순서를 사용하므로 기본적으로 PNG 파일은 다시 인코딩되므로 직접 PNG 파일을 생성하는 경우 올바른 바이트 순서로 쓰는지 확인하는 경우 재 압축을 해제 할 수 있습니다.

모든 PNG 인코더가 동일한 것은 아닙니다. 어떤 사람들은 다른 사람들보다 더 똑똑합니다. 따라서 크기를 절약하는 데 얼마나 신경 쓰는지에 따라 다릅니다. Photoshop은 편리하지만 작은 PNG 파일을 만드는 데만 쓸만합니다. 더 나은 일을하는 많은 opensource 도구가 있습니다. 나는 상황에 따라 선택한다. 일반적으로 GUI와 일괄 처리 옵션이 얼마나 좋은지에 따라 다릅니다. 코드를 압축 할 때 사용하는 환경에 따라 다릅니다. .NET에 있다면 전문 이미지 툴킷 및 StackOverflow에 대한 정보가 내장 된 이미지 클래스를 티크하는 방법을 살펴 봅니다.