起点
个人的经验可以被整理成某种规律,
针对某个事项的规律集合起来便成了算法,
算法是机器学习的核心,
我们通过机器学习完成人工智能(AI)的构建。
给你一张图片,你可以分辨出是什么颜色,思考下如何让机器完成?
读取BMP文件
描述
不使用第三方模块的前提下,完成对24位bmp图像的图像数据分析与像素读取。 程序设计需要体现面向对象编程的特点,以创建类的形式编写。
参考资料:
以一张2*2的24位图的bmp格式图片为例
| Offset | Offset10 | Size | Hex value | Value | Description |
|---|---|---|---|---|---|
| BMP Header | |||||
| 0h | 0 | 2 | 42 4D | "BM" | ID field (42h, 4Dh) |
| 2h | 2 | 4 | 46 00 00 00 | 70 bytes (54+16) | BMP 文件的大小(54 字节标头 + 16 字节数据) |
| 6h | 6 | 2 | 00 00 | Unused | 特定应用 |
| 8h | 8 | 2 | 00 00 | Unused | 特定应用 |
| Ah | 10 | 4 | 36 00 00 00 | 54 bytes (14+40) | 可以找到像素阵列(位图数据)的偏移量 |
| DIB Header-Device Independent Bitmaps-设备无关位图 | |||||
| Eh | 14 | 4 | 28 00 00 00 | 40 bytes | DIB 头中的字节数(从此时开始) |
| 12h | 18 | 4 | 02 00 00 00 | 2 pixels (left to right order) | 位图的宽度(以像素为单位) |
| 16h | 22 | 4 | 02 00 00 00 | 2 pixels (bottom to top order) | 位图的高度(以像素为单位)。从下到上的像素顺序为正。 |
| 1Ah | 26 | 2 | 01 00 | 1 plane |