본문 바로가기

과거

알씨의 Resize (이미지 크기 변경)의 문제점 (2)

알씨의 Resize 알고리즘을 알기위해서 테스트를 해보기로 했습니다.
테스트에 사용한 원본 그림 파일은 이렇습니다.

사용자 삽입 이미지

640 X 480 크기의 그림 파일에 1픽셀의 크기로 색깔이 다른 픽셀 8개를 찍었습니다.
이것을 알씨을 이용하여 500 X 375의 크기로 변경시켰습니다. 그 결과...


사용자 삽입 이미지
픽셀이 8개에서 6개로 줄었습니다. 그런데 이 Resize 알고리즘이 무지 단순합니다.
설명의 편의상 원본 그림파일의 픽셀을 왼쪽부터 1번에서 8번까지 번호를 매기면...
1번은 그대로, 2번은 그대로, 3번과 4번을 합쳐서 하나로, 5번은 그대로, 6번은 그대로, 7번과 8번은 합쳐서 하나로... 이렇게 해버린 겁니다. 이런 방식을 Box 라고 부르는 것 같습니다.


그렇다면 다른 그래픽 프로그램들은 어떻게 Resize를 하는가?
보통 Bilinear 나 Bicubic 등의 보간법(Interploation)을 사용합니다. 이를 통해 파일 크기 변동에 따른 이미지 손상을 보완하죠. AcdSee의 경우에는 그 외에도 Lanczos 나 Bell 등의 보간법을 사용합니다.

[Bilinear]
사용자 삽입 이미지

[Bicubic]
사용자 삽입 이미지

여기서 왜 알씨는 흔히 쓰는 Bicubic을 쓰지 않고 저런 단순한 알고리즘을 썼을까 하는 의문이 생겼습니다. 하지만 그것은 프로그램을 만드는 분들의 사정이고, 각각의 특징에 대해 제가 정확히 알지 못하기 때문에 가타부타 언급할 사항은 아니지만...
그래도 좀 아쉬운 것은 어쩔 수가 없습니다. 개인적으로 차기 버전에서는 Resize 알고리즘이 바뀌었으면 좋겠습니다. (요즈음에는 Bicubic도 낡았다며 새로운 보간법이 속속 등장하고 있는 상태입니다.)

덧붙여 알씨에 아쉬운 점 하나...
제 경우는 일반적으로 큰 그림을 화면 크기에 맞게 줄여서 봅니다. 알씨 역시 다른 이미지 뷰어들처럼 이미지 보정기능을 지원하는데, 문제는 이미지 보정 순간에 화면이 움찔움찔하는 현상이 일어납니다. 이미지 보정 알고리즘에 뭔가 문제가 있다는 뜻이겠죠. 다른 이미지 뷰어들에는 없는 현상이라 아쉬움이 많습니다.