C语言实现生成一张12bit的RAW图像并保存到文件
时间: 2023-12-30 19:06:29 浏览: 180
有关RAW图像恢复的各种算法的C程序实现
4星 · 用户满意度95%
好的,以下是C语言实现生成一张12bit的RAW图像并保存到文件的代码示例:
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
// 图像的宽度和高度
int width = 640;
int height = 480;
// 像素数据数组
unsigned short *data = malloc(width * height * sizeof(unsigned short));
// 生成随机像素数据
int i, j;
for (i = 0; i < height; i++) {
for (j = 0; j < width; j++) {
data[i * width + j] = rand() % 4096; // 12bit的取值范围为0~4095
}
}
// 保存为RAW格式文件
FILE *fp = fopen("image.raw", "wb");
fwrite(data, sizeof(unsigned short), width * height, fp);
fclose(fp);
// 释放内存
free(data);
return 0;
}
```
此代码生成一个宽度为640,高度为480的随机12bit RAW图像,并保存为文件image.raw。您可以根据实际需求修改图像大小和文件名。需要注意的是,生成的RAW图像没有任何头部信息,因此在读取时需要知道图像的宽度和高度。
阅读全文