2013-07-04 8 views
1

저는 '원시'이진 이미지 파일을 열고 표시하는 매우 간단한 스크립트가 Matlab에 있습니다. 이것은 파이썬에서 numpy를 사용하여 쉽게 재현 할 수 있습니까? 나는 다양한 게시물 등, 버퍼를 지정, 포장을 해체 논의 엔디안 처리 건너했습니다하지만 간단해야처럼이 matlab에 인터페이스가Python의 Raw 이진 이미지에서 읽기

>> fileID = fopen('sampleX3.raw','rb') 

fileID = 

    1 

>> A = fread(fileID,[1024,1024],'int16'); 
size(A) 

ans = 

     1024  1024 

>> max(max(A)) 

ans = 

     12345 

>> close all; figure; imagesc(A); 
+0

openCV를 사용해 보셨습니까? 그것은 컴퓨터 비전을 위해 설계되었습니다 ... –

답변

4

이 사용 같은 일을 할 것입니다 얼마나 간단한을 기반으로 보인다 NumPy와 및하기 matplotlib는 :

import numpy as np 
from matplotlib import pylab as plt 

A = np.fromfile(filename, dtype='int16', sep="") 
A = A.reshape([1024, 1024]) 
plt.imshow(A) 

나는 데이터를 저장하는 원시 이진 파일을 사용하는 것은 일반적으로 좋은 생각이라고 언급 의무감을 느낀다.

+2

왜 이진 파일의 저장소 데이터가 좋지 않다고 생각하십니까? – Pablo

+0

불행히도 내 카메라는 원시 이진 데이터를 읽습니다. – Joe