bmp 转换 txt (一个有有趣的算法)

本文介绍了一种将BMP图像转换成类似图案的字符文本的方法。通过将位图分割,计算每块的灰度平均值,并与预定义字符的灰度值对比,选择最接近的字符来代表图像部分。利用字符的黑点数量估算灰度值,并提供了一个包含95个字符及其对应灰度值的数组。
摘要由CSDN通过智能技术生成
图像处理----bmp 转换 txt (一个有有趣的算法)

    把位图文件转换成和图案很相似的字符文本。其实原理很简单,用到了和图案化技术类似的思想:首先将位图分成同样大小的小块,求出每一块灰度的平均值,然后和每个字符的灰度做比较,找出最接近的那个字符,来代表这一小块图象。那么,怎么确定字符的灰度呢?做下面的实验就明白了。

    打开notepad,输入字符“1”,选定该字符,使其反色。按Alt+PrintScreen键拷贝窗口屏幕。打开paintbrush,粘贴,然后把图放到最大(*8),打开“查看”->“缩放”->“显示网格”菜单

这时数数字符“1”用了几个点?是22个。字符的灰度和它所占的黑色点数有关,点越少,灰度值越大,空格字符的灰度最大,为全白,因为它一个黑点也没有;而字符“W”的灰度值就比较低了。每个字符的面积是8*16(宽*高),所以一个字符的灰度值可以用如下的公式计算(1-所占的黑点数/8*16))*255。下面是可显示的字符,及对应的灰度,共有95个。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值