BMP(不带点)或将输出名称与扩展名一起传递。现在要处理该错误,您需要在频域中适当地修改数据以将其保存为整数图像,
PIL这告诉您它不接受将浮点数据保存为BMP。
这是进行转换以实现正确可视化的建议(还有其他一些小的修改,例如使用
fftshift和
numpy.array代替
numpy.asarray):
import sysimport numpyfrom PIL import Imageimg = Image.open(sys.argv[1]).convert('L')im = numpy.array(img)fft_mag = numpy.abs(numpy.fft.fftshift(numpy.fft.fft2(im)))visual = numpy.log(fft_mag)visual = (visual - visual.min()) / (visual.max() - visual.min())result = Image.fromarray((visual * 255).astype(numpy.uint8))result.save('out.bmp')
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)