Pycharm scale px.py

From Colettapedia
Jump to navigation Jump to search
from pycharm import pymfg

def obtain_max_min():
	max_intens = 0
	min_intens = 65536
	for i in range( 0, im.width ):
		for j in range( 0, im.height):
			pixel_val = im.pixel(i,j,0).intensity
#		if pixel_val != 0:
#			print "x:{} y:{} val: {}".format(i,j,pixel_val)
			if pixel_val > max_intens:
				max_intens = pixel_val
			if pixel_val < min_intens:
				min_intens = pixel_val
	return [ max_intens, min_intens ]


im = pymfg.ImageMatrix()
im.OpenImage("Y24-2-2_GREEN.tif", 0, None, 0, 0)
im.SaveTiff("should_just_be_copy_of_orig.tif")

max_i, min_i = obtain_max_min()

print "before fftw max: {}".format(max_i)
print "before fftw min: {}".format(min_i)

im.fft2()
im.SaveTiff("fftw_transformed_NOT_normalized.tif")

max_i, min_i = obtain_max_min()

print "after fftw max: {}".format(max_i)
print "after fftw min: {}".format(min_i)

subtract_this = min_i
multiply_by_this = 65535 / (max_i - min_i)

for i in range( 0, im.width):
	for j in range( 0, im.height):
		val = ( im.pixel(i,j,0).intensity - subtract_this) * multiply_by_this
		im.SetInt( i, j, 0, val )

max_i, min_i = obtain_max_min()

print "after norm max: {}".format(max_i)
print "after norm min: {}".format(min_i)

im.SaveTiff("normalized.tif")