您的位置:首页 > 编程语言

学习笔记 山外K60库图像解压函数原理(底层代码详解)

2017-11-24 00:12 537 查看


图一 用户调用的函数



图二 山外K60库底层函数

原图像imgbuff数组中0表示白色,1表示黑色,转化为img数组后255表示白色,0表示黑色。

底层库中img_extract函数运行流程如下:

分别对imgbuff,img取地址,循环CAMERA_SIZE(IMG_H*IMG_W/8=80*60/8=600)次(1个字节表示8个像素点的信息),每次循环imgbuff的地址自加1(取完一幅图像所有的像素信息),接着对这个字节的数据进行处理,(>>7)的意义是向左移7位(即取这8个二进制码的第一个数),(&)的意义是按位与操作(即0&0x01=0;1&0x01=1),最后将colour数组的值赋给新数组img。

举例

原数组imgbuff中有1个字节的二进制码(11100001)经解压得新数组img的数组元素是(0 0 0 255 255 255 255 0)或八个八位二进制码(0=00000000;255=11111111).
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  函数
相关文章推荐