각 픽셀의 RGB 데이타를 이미지파일(ex. bmp, png 등)로 만들어주는 라이브러리 추천 부탁드립니다.
글쓴이: vudghkzm / 작성시간: 화, 2010/05/11 - 5:53오후
어떤 이미지의 가로와 세로 크기를 이미 알고 있습니다. 그리고 이 이미지의 각 픽셀의 RGB값도 이미 알고 있습니다. 이 상태에서 이 이미지를 bmp파일이나 png파일등 현재 널리 쓰이는 이미지파일로 만들어주는 C 또는 python용 라이브러리가 있다면 어떤게 있을까요? 이왕이면 작고 가벼우면 좋겠습니다.
예를 들어, bmp파일을 만들어주는 함수가 있다면...
void MakeBMP(int width, int height, char *pixels, char *filename)
뭐 위와 비슷한 형식의 함수가 제공되는 라이브러리를 찾고 있습니다. 굳이 위와 같이 하나의 함수로 제가 원하는 작업을 한번에 해줄 필요는 없고, 몇 단계로 나뉘어져도 괜찮습니다.
사실 bmp 파일 포맷이 간단해서, 직접 헤더만들어서 bmp파일을 만들고 있는데.. 이상하게 잘 안되네요. ^^;;; 그래서 왠지 간단한 라이브러리가 이미 있을 듯 해서 질문드려보네요.
Forums:
저도 못찾아서 만들어 사용했었었는데...
냉무
PPM 인가 PBM 인가 하는
PPM 인가 PBM 인가 하는 이미지 포맷이 가로와 세로 그리고 pixmap 이 그냥 일반 텍스트(plain text)로 저장되어 있는 형태 인걸로 기억합니다.
가로,세로,RGB 정보를 알고 있으면 그걸 PPM 포맷으로 쓰고 그 PPM 파일을 BMP 로 저장하면 될 것 같네요.
image magick(PyMagick)도 지원하고, PPM, BMP 이 두가지를 지원하는 이미지 컨버터를 찾으면 많이 나올 것 같습니다.
ps. 번거롭게 이럴 필요 없이 이런 거( http://code.google.com/p/libbmp/ ) 쓰셔도 되겠네요.
GD
http://www.libgd.org/Bindings
답변 주신 모든 분들
답변 주신 모든 분들 감사합니다.
알려주신 netpbm, libgd, libbmp 중에서 netpbm을 사용하기로 하였습니다.
우분투 9.10에 기본 포함된 패키지이고, 가볍다고 판단되었기 때문입니다.
libpng
이미 결정하신 듯 하지만 저는 개인적으로 libpng를 추천합니다.
댓글 달기