You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

KCC运行报错'float' object cannot be interpreted as an integer求助

故障原因

运行KCC时抛出'float' object cannot be interpreted as an integer报错,核心原因为高版本Pillow(Python图像处理库)的Image.point()接口不再接收浮点型像素值参数,KCC原有自动对比度逻辑的像素计算结果为浮点型,未做整型转换就传入接口,触发类型错误。此前修改代码未命中实际需要转换的计算返回值位置,因此问题未解决。

报错溯源

根据回溯栈可定位出错代码位于kindlecomicconverter/image.py第261行:

self.image = ImageOps.autocontrast(Image.eval(self.image, lambda a: 255 * (a / 255) ** gamma))

该行lambda表达式255 * (a / 255) ** gamma的计算结果为float类型,传入后续point方法时不符合参数类型要求。

修复步骤
  • 打开对应路径下的image.py文件,找到第261行的原有代码
  • 将该行代码替换为以下内容,对计算得到的像素值做四舍五入后显式转为整型,避免直接强转带来的精度损失:
self.image = ImageOps.autocontrast(Image.eval(self.image, lambda a: int(round(255 * (a / 255) ** gamma))))
  • 保存修改后的文件,重新启动KCC处理漫画即可。

注意:如果后续运行时还出现同类浮点转整型报错,检查同文件内其他调用Image.eval、image.point的代码段,对所有像素计算的返回值做相同的显式整型转换即可。

内容的提问来源于stack exchange,提问作者apau Vergara

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 06:15:35