[질문] Jpeg 라이브러리 관련 질문입니다. (Update)
글쓴이: ddangkyoung / 작성시간: 월, 2009/11/16 - 9:24오후
혹시 Jpeg 소스를 분석해보신적이 있는 분이라면 좀 도와주십시오.
현재 제가 하고자 하는 일은
Jpeg 라이브러리에서 512 * 512 이미지를
DCT수행하고, 양자화를 수행하여
512 * 512 계수가 나오는데
이중에서 각각의 블럭(8*8픽셀)의 첫번째 계수
즉 각 블럭의 DC 성분이 되겠죠.
이 성분만 뽑아서 이 값을 하나의 픽셀로 하여 8배 축소된 이미지를 만드는 것인데요.
DC성분만 뽑는 법은 알겠는데
이것을 가지고 픽셀을 구성하여 8배 축소된 이미지를 만드는 법을 도저히 모르겠습니다;
Jpeg 고수님들 도와주세요.
부탁드립니다.
Forums:
..
질문하신 내용으로는 해본적도 없고...
어떻게 하는지도 모르겠습니다.
다만 8배 축소된 이미지를 얻는 방법은
LIBJPEG 에서 지원하는 기능입니다.
굳이 직접 개발해야 하시는 이유가 있다면 모르겠지만...
그렇지 않다면 LIBJPEG 을 이용하셔도 됩니다.
감사합니다.
그런데 라이브러리 코드를 직접 만져서 1/8로 압축해야 하는 거라서요 ㅠ
예를들어 한 블럭이 8 * 8 픽셀로 이루어 져 있다면
DCT 계수는 8*8의 64개가 나오겠죠.
그중에서 0,0성분
즉 DC성분만을 뽑아서
이것들을 한 픽셀값으로 모으면
가로 세로 1/8된 픽셀 배열이 생깁니다.
이것을 Decomress해서 출력해야 합니다.
어떻게 방법이 없을까요...
해당 DC성분만..
원본 가로/세로 크기에서 1/8줄어든 가로/세로 크기로 비트맵을 만든다 생각하시면 쉽게 하실 수 있을 것입니다. Thumbnail 안에 pixel 값으로 각 Block의 DC 성분을 넣는 것이지요. Thumbnail은 굳이 JPEG이 아니어도 될거 같은데요. 만약에 이미 본인이 Encorder/ Decorder를 만들어 놓았다면, 1/8줄어든 가로/세로 크기 비트맵으로 만들어서 다시 압축하면 되지 않을까요?
저도 비슷한 생각입니다.
일단 이미지를 압축을 풀고,
버퍼에 있는 큰 이미지를 1/8로 줄인 다음에
다시 압축하면 되지 않나요?
wrapping 으로 함수를 하나 만들어서 기존 라이브러리에 추가하면 될 것 같은데..( 편법같지만. -_-;; )
행복은 희생없이는 얻을 수 없는 것인가?
시대는 불행없이는 넘을 수 없는 것인가?
댓글 달기