Silverlight/Workshop

Deep Zoom Composer Online (PHP 버전) 화질개선 하였습니다.

길버트리 2008. 8. 15. 23:45
사용자 삽입 이미지

Deep Zoom Composer Online ?


Deep Zoom Composer Online (PHP 버전)이 무엇인지 궁금하신 분들은
제가 2주 전쯤 포스팅한 Deep Zoom Composer Online (PHP 버전) 제작기를 참고해 주세요.


What's New

제가 처음 Deep Zoom Composer Online을 제작할 때,
이미지를 resize하기 위해서 사용한 PHP의 GD 함수는 imagecopyresized였습니다.

하지만 제작기를 보시면 아시겠지만, 화질이 Microsoft의 Deep Zoom Composer
따라가지 못했습니다.

2주 지난 후, 짬이 좀 나서 개선 방법을 찾아봤습니다.
구글링을 해보니, 매우 쉬운 개선책이 있었던거죠~

imagecopyresized 대신에 imagecopyresampled를 사용하면 되는 것이었습니다.

제가 PHP는 10년을 주무르고 있었습니다만,
Image GD 쪽 함수는 거의 사용할 일이 없어서 잘 몰랐던 것이죠.


Side Effects

imagecopyresized 대신에 imagecopyresampled를 사용하면,
이미지 축소 시 화질은 좋아지고, 축소하는 데 걸리는 시간은 좀 더 걸립니다.

일반적으로 웹호스팅 환경에서의 max_execution_time (서버측 PHP 설정) 값이 60초이므로,
60초 안에 작업이 안 끝나서 결과물을 볼 수 없는 이미지들이 더 생겨날 수 있다는 말씀입니다.

테스트 해본 결과 7356x3146(약 2300만 픽셀)의 이미지는 컴포징 타임이 34초 가량 걸려서 성공했구요.
5031x12224(6150만 픽셀)의 이미지는 time out으로 실패했습니다.

정확한 임계값은 적당한 이미지를 찾아서 실험으로 찾아봐야겠습니다만,
제 예감으로는 time out 60초 조건에서는 4000만 픽셀이 넘어가는 고해상도 이미지는 컴포징이
불가능 할 것으로 보입니다.

역시 월세(웹호스팅) 생활은 힘들어요!


Live Demo

자 그럼 개선된 DZC Online (PHP)로 만들어 낸 컨텐츠를 한번 감상해 보시죠!

Get Microsoft Silverlight
첫번째로 아리따운 엠마왓슨(헤르미온느역, 해리포터)양입니다.
하지만, 확대해 보면 어찌그리 입가에 수염이 생생한지...

Get Microsoft Silverlight
두번째로 웬트워스 밀러(마이클역, Prison Break)씨,
확대해 보면 이 미남도 코끝에 약간의 피지가 발견되네요. 정말 다행입니다!

무섭군요! 고해상도 이미지가 웹을 통해 손쉽게 배포된다는 것은...

더 많은 Deep Zoom 이미지를 감상하시고 싶으시다거나, 자신이 가지고 있는 고해상도 이미지를
온라인 상에서 Deep Zoom 이미지화 하고 싶으신 분은 지금 방문해 주십시오.

Visit Deep Zoom Composer Online (PHP)

감사합니다.