I have a folder containing over 200 raw
images, i want to convert all of them to png
or any other format, In C it's pretty easy but in python i don't know how it's done
I found this snippet
#import struct
import numpy, array, PIL, Image
from struct import *
#declarations
arr1D = array.array('H') #H is unsigned short
#------------------------------------
#read 16 bit unsigned raw depth image
#------------------------------------
w = 640
h = 480
fid = open('/home/salman/salman/NiSimpleRead_salman/data/200.raw')
#fid = open('/home/salman/test.raw')
numBytes = w*h
arr1D.read(fid, numBytes)
fid.close()
#----------------------------------------------------
#convert to float numpy array -> scale -> uint8 array
#----------------------------------------------------
numarr = numpy.array(arr1D, dtype='float');
numarr = 255 - (numarr*255.0/numarr.max())
numarr.shape = (h,w)
numarr = numarr.astype('uint8')
#======================
#IMAGES
#======================
#2D numpy array -> image
#-----------------------
img = Image.fromarray(numarr); #print data.dtype.name
#image view and save
#-------------------
#img.show()
img.save('/home/salman/test.png')
This is the only snippet that I can find, is this the proper way to do it?