学习笔记 山外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).
相关文章推荐
- hog特征原理详解及matlab代码学习笔记
- List的一阶函数操作代码实战详解之Scala学习笔记-25
- List的一阶函数操作代码实战详解之Scala学习笔记-24
- 步步为营 .NET 代码重构学习笔记 四、分解函数和替换算法(Replace Method And Substitute Algorithm)
- android 学习笔记(八)底层8.2 学习makefile 其中的函数
- PhoneGap学习笔记四:PhoneGap底层原理(下)
- 步步为营 .NET 代码重构学习笔记 五、分解函数和替换算法(Replace Method And Substitute Algorithm)
- 步步为营 .NET 代码重构学习笔记 五、分解函数和替换算法(Replace Method And Substitute Algorithm)
- 学习笔记:PHP上传图片代码详解
- 【OpenCV学习笔记】【函数学习】七(改变图像尺寸)
- php学习笔记(三十六)smarty中使用自定函数和代码块(smarty2和smarty3的不同)
- 学习笔记--- S3C2440 对NANDFLASH操作原理与测试代码分析
- SIPP 代码学习笔记3- 关于函数
- 编译原理之学习 lua 1.1 笔记 (二) 函数调用与局部变量
- Java菜鸟学习笔记--语法篇(四):BitOperator原理与详解
- php学习笔记(十四)php的图像处理函数
- MFC学习笔记之:程序关闭过程的函数响应顺序详解
- 【OpenCV学习笔记】之六 手写图像旋转函数---万丈高楼平地起
- 步步为营 .NET 代码重构学习笔记 五、移动函数和移动值域(Move Method And Move Field)
- 【OpenCV学习笔记】之六 手写图像旋转函数---万丈高楼平地起