再读福尔摩斯

在用喜马拉雅听福尔摩斯-血字的研究,一开始他就这么说到:

“你要知道,我认为人的脑子本来象一间空空的小阁楼,应该有选择地把一些家具装进去。只有傻瓜才会把他碰到的各种各样的破烂杂碎一古脑儿装进去。这样一来,那些对他有用的知识反而被挤了出来;或者,最多不过是和许多其他的东西掺杂在一起。因此,在取用的时候也就感到困难了。所以一个会工作的人,在他选择要把一些东西装进他的那间小阁楼似的头脑中去的时候,他确实是非常仔细小心的。除了工作中有用的工具以外,他什么也不带进去,而这些工具又样样具备,有条有理。如果认为这间小阁楼的墙壁富有弹性,可以任意伸缩,那就错了。请相信我的话,总有一天,当你增加新知识的时候,你就会把以前所熟习的东西忘了。所以最要紧的是,不要让一些无用的知识把有用的挤出去。”

在工作了三年之后,忽然发现,学得越来越多,脑袋里面塞的慢慢的,很混乱,没有什么系统,做事的时候也有些缺乏条理,没有那种工作三年后对事物更好的理解。也许真的像福尔摩斯说的一样,需要将脑袋清空清空了吧! 


在MATLAB中让学生们对头像图片进行福尔摩斯(Floyd-Steinberg)压缩,通常需要以下几个步骤: 1. **加载图片**: 使用`imread`函数读取学生头像图片,如 `img = imread('student_avatar.jpg')`。确认图片尺寸为512x512,如果不是,用`imresize`调整至该尺寸。 2. **转换为灰度图像**: 对于颜色图像,使用`rgb2gray`将其转换为灰度,以便进行单通道操作: ```matlab grayImg = rgb2gray(img); ``` 3. **进行压缩**: 实际上,MATLAB自带的数据压缩库`jpeg`可以用于类似的目的,但福尔摩斯算法并非MATLAB内置。如果你已经有了自定义的福尔摩斯压缩函数,可以在这里调用。若非如此,可以考虑先保存为JPEG格式再读回查看压缩效果,但这不属于纯意义上的福尔摩斯压缩。 4. **显示和比较**: 利用`subplot`创建两个子图,一个展示原始图像,一个展示可能通过其他方式进行的简单压缩,例如: ```matlab subplot(1,2,1), imshow(img), title('Original Image'); subplot(1,2,2), imshow(jpeg(compressedGrayImg)), title('JPEG Compressed Image (Not True F-S)'); ``` 5. **存储大小**: 获取原始和压缩后图像的大小,可以用`whos`命令检查变量内存占用,或者直接计算像素数乘以每个像素的字节数。 6. **指导作业**: 提供说明让学生了解这是简单的演示,并解释他们可能想要探索更复杂的压缩算法,如自定义的离散余弦变换(DCT)等。 记住,对于真正实现福尔摩斯压缩算法,需要你自己编写或者找到相关的开源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值