PNG转Raw像素数据

将PNG图像导出为Raw像素数据缓冲文件,用于开发流程和底层图像处理

将 PNG 图像解码后的像素直接写入不带文件头的Raw像素缓冲文件。它适合渲染管线、着色器、自定义图像处理代码,以及那些需要单独提供宽度、高度、通道数和位深度的下游工具。它不会生成 DNG、CR2、NEF、ARW 这类摄影相机 RAW 格式。

Click to upload file or drag and drop file here

Maximum file size: 50MB Supported formats: image/png

关键信息

分类
图像、音频与视频
输入类型
file, select, checkbox
输出类型
file
样本覆盖
4
支持 API
Yes

概览

PNG转裸像素数据工具可将PNG图像解码,并将其像素数据直接写入不带文件头的二进制裸像素缓冲(RAW)文件中。该工具专为渲染管线、着色器开发和底层图像处理设计,支持自定义位深度(8位或16位)以及Alpha通道预乘设置,无需生成复杂的相机RAW格式。

适用场景

  • 需要将PNG图像导入自定义渲染引擎或着色器,且不需要任何图像文件头信息时。
  • 在底层图像处理或嵌入式开发中,需要直接读取连续的RGB/RGBA像素内存数据时。
  • 需要对图像进行Alpha通道预乘处理,并导出为纯二进制像素缓冲区时。

工作原理

  • 上传需要转换的PNG图像文件。
  • 选择输出的位深度(每通道8位或16位),并根据需要勾选是否进行Alpha通道预乘。
  • 工具解码PNG图像,提取像素数据并按配置处理后,直接写入无文件头的二进制缓冲文件并提供下载。

使用场景

游戏引擎纹理加载:将PNG转换为裸像素缓冲,以便在自定义游戏引擎中快速加载纹理,避免运行时解码开销。
嵌入式系统显示:为没有复杂图像解码库的嵌入式屏幕直接提供可读取的帧缓冲像素数据。
图像处理算法测试:在C++或Rust等底层语言中直接读取无格式的像素数组,用于快速验证自定义滤镜或着色器算法。

用户案例

1. 游戏引擎纹理快速导入

游戏引擎开发人员
背景原因
正在开发一款自定义的2D游戏引擎,需要将UI贴图快速加载到GPU中,但不想在引擎中集成复杂的PNG解码库。
解决问题
需要将PNG格式的UI图标转换为无文件头的纯RGBA像素数据,以便直接通过glTexImage2D载入。
如何使用
上传 ui_icons.png,选择位深度为“每通道8位”,勾选“预乘Alpha通道”,然后点击转换。
示例配置
位深度: 8位, 预乘Alpha通道: 开启
效果
获得一个纯二进制的像素缓冲文件,引擎可直接读取该文件并将其作为纹理数据上传至GPU。

2. 嵌入式LCD屏幕图像显示

嵌入式系统工程师
背景原因
在微控制器(MCU)上驱动一块彩色LCD屏幕,MCU的内存和计算资源非常有限,无法运行PNG解码器。
解决问题
需要将一张PNG格式的系统Logo图片转换为可以直接写入屏幕帧缓冲的裸像素数据。
如何使用
上传 logo.png,选择位深度为“每通道8位”,不勾选预乘Alpha,直接导出。
示例配置
位深度: 8位, 预乘Alpha通道: 关闭
效果
得到一个大小正好等于“宽×高×通道数”字节的二进制文件,MCU读取后可直接通过SPI发送至LCD显示。

用 Samples 测试

image, png, file

相关专题

常见问题

这个工具生成的RAW文件是相机的RAW格式(如DNG、CR2)吗?

不是。它生成的是不带任何文件头的纯二进制裸像素数据缓冲文件(Raw Pixel Buffer),而非摄影相机的RAW格式。

转换后的文件包含图像的宽度和高度信息吗?

不包含。输出文件仅包含纯像素数据,您需要在读取该文件时自行指定或记录图像的宽度、高度和通道数。

什么是“预乘Alpha通道”选项?

勾选后,工具会在输出前将每个像素的RGB通道值乘以其对应的Alpha通道值,常用于特定的渲染和合成算法。

支持哪些位深度选择?

支持每通道8位(8-bit)或每通道16位(16-bit)的像素数据导出。

导出的像素通道顺序是怎样的?

默认按照解码后的RGBA(或RGB)顺序依次排列写入二进制文件。

API 文档

请求端点

POST /zh/api/tools/png-to-raw

请求参数

参数名 类型 必填 描述
imageFile file (需要先上传) -
bitDepth select -
premultiplied checkbox -

文件类型参数需要先通过 POST /upload/png-to-raw 上传获取 filePath,然后将 filePath 传递给对应的文件字段。

响应格式

{
  "filePath": "/public/processing/randomid.ext",
  "fileName": "output.ext",
  "contentType": "application/octet-stream",
  "size": 1024,
  "metadata": {
    "key": "value"
  },
  "error": "Error message (optional)",
  "message": "Notification message (optional)"
}
文件: 文件

AI MCP 文档

将此工具添加到您的 MCP 服务器配置中:

{
  "mcpServers": {
    "elysiatools-png-to-raw": {
      "name": "png-to-raw",
      "description": "将PNG图像导出为Raw像素数据缓冲文件,用于开发流程和底层图像处理",
      "baseUrl": "https://elysiatools.com/mcp/sse?toolId=png-to-raw",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

你可以串联多个工具,比如:`https://elysiatools.com/mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp`,最多20个。

支持 URL 文件链接或 Base64 编码作为文件参数。

如果遇见问题,请联系我们:[email protected]