2014-02-21 3 views
2

원시 이미지 데이터를 파이썬과 함께 png로 변환하려고합니다. 저는 파이썬과 특히 이미지 처리에 새로운 경험이 있습니다 ...원시 이미지를 파이썬을 사용하여 png로 변환하는 방법

원시 파일은 16 비트 그레이 스케일 이미지입니다.

가 누군가가 나에게 설명 할 것은 원시 모드가

입니다

Traceback (most recent call last): 
    File "****\Programs\Python 2.7.6\readraw\readraw.py", line 11, in <module> 
    img = Image.fromstring('L', imgSize, rawfile, 'raw', 'F;16') 
    File "****\Programs\Python 2.7.6\lib\site-packages\PIL\Image.py", line 1835, in fromstring 
    return frombytes(*args, **kw) 
    File "****\Programs\Python 2.7.6\lib\site-packages\PIL\Image.py", line 1822, in frombytes 
    im.frombytes(data, decoder_name, args) 
    File "****\Programs\Python 2.7.6\lib\site-packages\PIL\Image.py", line 608, in frombytes 
    d = _getdecoder(self.mode, decoder_name, args) 
    File "****\Programs\Python 2.7.6\lib\site-packages\PIL\Image.py", line 390, in _getdecoder 
    return decoder(mode, *args + extra) 
ValueError: unknown raw mode 
이유 :

from PIL import Image, ImageFilter 
import numpy as np 
from scipy import ndimage, misc 


rawfile = np.fromfile('test.raw', dtype=np.int16) 

rawfile.shape = (1025,1025) 
imgSize = (1025,1025) 

img = Image.fromstring('L', imgSize, rawfile, 'raw', 'F;16') 
img.save("rawData.png") 

는하지만 다음과 같은 오류가 점점 계속 : 이미 포럼을 스캔으로

나는 다음과 같은 솔루션을 함께했다 알 수 없는? 나는 Docs를 점검했고, 주제를 이해하는 한, PILLOW lib는 이것과 함께해야만 하는가?!

안부


는 당신의 도움을 너희들을 감사합니다!

나는 내 코드를 변경하고 지금은 작동하는 것 같다 :

from PIL import Image, ImageFilter 
import numpy as np 
from scipy import ndimage, misc 


rawfile = np.fromfile('test.raw', "uint16") 

rawfile.shape = (1025,1025) 
misc.imsave("test.png", rawfile) 

답변

0

PIL (및 PILLOW)은 numpy 배열에서 직접 작동하지 않습니다. numpy로 앞뒤로 변환하는 함수가 있지만이 유형의 PIL을 사용하지 않는 경향이 있습니다.

대신에 배열을 scipy.misc.imsave()으로 저장하면이 함수는 PNG로 저장할 수 있다고 제안합니다.

0

내가 PIL이 NumPy와 객체를 이해하고 생각하지 않습니다. PIL Image에는 원본 파일을 디스크에서 읽는 방법이 있다고 생각합니다. 그런 다음 메모리의 이미지를 수정하고 원하는 형식으로 저장/내보내기 할 수 있습니다.

+0

내가 처음 생각한 바가 있지만 문서에 나와있는 방법을 찾을 수 없습니다. 내가 찾은 유일한 것은 자신의 디코더를 코딩하는 튜토리얼이었습니다 – user3338564

0

사용 raw2png.py?

출처 : http://www.cl.cam.ac.uk/~cs448/git/trunk/src/bin/raw2png.py

또는 ImageMagick이 exec 명령 라인 : convert?

+0

tbh이 소스 코드는 정말 저를 혼란스럽게합니다 ... 나는 그것을 읽으려고 노력했지만 초보자로서 꽤 힘든 일이었습니다 :) – user3338564

관련 문제