대부분의 이미지의 경우 헤더 + 픽셀 데이터로 이루어집니다.
이 중 해상도는 픽셀 데이터 개수에 영향을 줍니다.
예를 이미지 크기가 1024x720일 경우 1024x720개의 픽셀이 있습니다.
픽셀의 경우 영상 포멧 + 정보표현 사이즈에 영향을 받습니다.
예를 들어 RGBA8888 포멧에 각각 8bit(0~255범위)의 영상정보를 가지면 픽셀 한 개당 4 * 8 bit의 데이터를 가집니다.
저장할 포멧을 YUV420에 8bit 정보로 변경하면 2 * 8 bit로 표현가능하며, 그 경우 헤더를 무시한다면 사이즈는 절반으로 줄어들겁니다. 색표현 범위를 4bit로 조절하는 것도 마찬가지고요. 하지만 이 경우에도 색상 손실은 발생합니다. 따라서 잘 조정을 해보셔야 할 겁니다.
BMP은 픽셀 정보를 전혀 압축하지 않습니다. 사용하시는 목적을 모르겠지만. 가능하면, 픽셀 정보를 압축하는 jpeg같은 것으로 변경하면 색상 손실을 줄이면서 화질을 유지 할 수 있을 겁니다.