python 用PIL打开TIFF格式图片无法转换为灰度图是为什么?一直报错,有代码注释,和错误截图 70
#-*-coding:utf-8-*-fromPILimportImagefromPILimportImageDrawimportarcpyfromarcpyimport...
# -*- coding: utf-8 -*-
from PIL import Image
from PIL import ImageDraw
import arcpy
from arcpy import env
im = Image.open('E:\\w2.tif').convert("RGB")
im = im.convert('L')#彩图转换为灰度图
width, height = im.size
pw = width
pix = im.load()
a = [0.00]*3 #此处决定是否为浮点型如果写[0]则后面概率计算出的小数都会被取0
for w in xrange(width):
for h in xrange(height):
p = pix[w,h]
if p > 220:
a[0]+=1
elif p < 35:
a[1]+=1
else:
a[2]+=1
print ("剧烈变化地区所占百分比: %.3f %%"%(a[0]/(width*height)*100))
print ("无变化区域所占百分比: %.3f %%"%(a[1]/(width*height)*100))
print ("适度变化区域百分比: %.3f %%"%(a[2]/(width*height)*100))#%%输出%号 展开
from PIL import Image
from PIL import ImageDraw
import arcpy
from arcpy import env
im = Image.open('E:\\w2.tif').convert("RGB")
im = im.convert('L')#彩图转换为灰度图
width, height = im.size
pw = width
pix = im.load()
a = [0.00]*3 #此处决定是否为浮点型如果写[0]则后面概率计算出的小数都会被取0
for w in xrange(width):
for h in xrange(height):
p = pix[w,h]
if p > 220:
a[0]+=1
elif p < 35:
a[1]+=1
else:
a[2]+=1
print ("剧烈变化地区所占百分比: %.3f %%"%(a[0]/(width*height)*100))
print ("无变化区域所占百分比: %.3f %%"%(a[1]/(width*height)*100))
print ("适度变化区域百分比: %.3f %%"%(a[2]/(width*height)*100))#%%输出%号 展开
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励10(财富值+成长值)+提问者悬赏70(财富值+成长值)
1个回答
展开全部
It's either a bug or unimplemented in PIL/Pillow. Here is a workaround:
import Image
image = Image.open("Fredy1_002.tif")
image.mode = 'I'
image.point(lambda i:i*(1./256)).convert('L').save('my.jpeg')
import Image
image = Image.open("Fredy1_002.tif")
image.mode = 'I'
image.point(lambda i:i*(1./256)).convert('L').save('my.jpeg')
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询