cozmo学习笔记2-数字图像缩放

在cozmo python sdk中02_cozmo_face的示例01中,看到有这样一段

image_settings = [(sdk_png, Image.BICUBIC),
                  (hello_png, Image.NEAREST)]

后面的Image.BICUBIC Image.NEAREST不知道是干什么用的,就找了一下资料。


简单地说,是用来缩放图片的。

这个函数属于Python的PIL图像处理库的Image模块,关于这个库具体的介绍详见博主 lyrichu的博客python PIL 图像处理库简介(一),文中提到

  • thumbnail(size,resample)(创建缩略图)
>>> im.thumbnail((50,50),resample=Image.BICUBIC)
>>> im.show()

上面的代码可以创建一个指定大小(size)的缩略图,需要注意的是,thumbnail方法是原地操作,返回值是None。第一个参数是指定的缩略图的大小,第二个是采样的,有Image.BICUBICPIL.Image.LANCZOSPIL.Image.BILINEARPIL.Image.NEAREST这四种采样方法。默认是Image.BICUBIC

至于BICUBIC是什么,又是什么原理,和图像缩放有什么关系,我在博主nandina179的博文双三次插值算法(bicubic interpolation)与图形学和计算方法的关系中找到了比较详尽的关于来历的解释。

双三次插值算法(bicubic interpolation),将某个像素点向外拓展成16个像素点,然后通过这16个像素点和原像素点的某种影响关系决定这16个像素点,以实现图像的缩放。

而PIL.Image.NEAREST是指缩放为最低质量,在cozmo上的直观体现就是e基本都被缩放成c了。


参考:

1.lyrichu,python PIL图像处理库简介(一),https://www.cnblogs.com/lyrichu/p/9124504.html

2.nandina179,双三次插值算法(bicubic interpolation)与图形学和计算方法的关系,https://blog.csdn.net/nandina179/article/details/85330552

3.菜鸟不倒,图像缩放之双三次插值法,https://blog.csdn.net/qq_29058565/article/details/52769497

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhangjiali12011

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值