资源简介
最近一个项目用到将TVP5150抓的RGB565 数据上传,
但电脑无法显示RGB565图像,所以参考网络上的代码
稍微进行了调整,可以使用!
使用方法:
将RGB565文件放到工程或者DEBUG目录下,文件名为test无扩展名
文件分辨率大小为 720x530
如果需要其它分辨率 可直接去代码中修改 宽度和高度即可。
由于项目时间关系,没有做参数直接传入就能用的功能。
同时提供一个
BMP转rgb565 的工具:
使用方法,调入图片后,可以调整图像的上下左右等。
然后点Save as 后弹出 转换的输出格式。
然后选择你想要的rgb565即可。
但注意一点,转出来的Data 的第一行要删除掉(这行看起来是个数据头)
剩下的全是图像数据。
代码片段和文件信息
// rgb565.cpp : Defines the entry point for the console application.
//
#include “stdafx.h“
//主函数
#include
#include
#include
#include “rgb2bmp.h“
#include
/****************************
RGB加上头部信息转换成BMP
参数說明:
rgb_buffer :RGB数据文件中的信息
nData :RGB数据的长度
nWidth :图像宽度的像素数
nHeight :图像高度的像素数
fp1 :所存放的文件
*****************************/
int RGB2BMP(unsigned char *rgb_bufferint nWidthint nHeightFILE*fp1)
{
BmpHead m_BMPHeader;
char bfType[2]={‘B‘‘M‘};
m_BMPHeader.imageSize=3*nWidth*nHeight+54;
m_BMPHeader.blank=0;
m_BMPHeader.startPosition=54;
fwrite(bfType1sizeof(bfType)fp1);
fwrite(&m_BMPHeader.imageSize1sizeof(m_BMPHeader.imageSize)fp1);
fwrite(&m_BMPHeader.blank1sizeof(m_BMPHeader.blank)fp1);
fwrite(&m_BMPHeader.startPosition1sizeof(m_BMPHeader.startPosition)fp1);
InfoHead m_BMPInfoHeader;
m_BMPInfoHeader.Length=40;
m_BMPInfoHeader.width=nWidth;
m_BMPInfoHeader.height=nHeight;
m_BMPInfoHeader.colorPlane=1;
m_BMPInfoHeader.bitColor=24;
m_BMPInfoHeader.zipFormat=0;
m_BMPInfoHeader.realSize=3*nWidth*nHeight;
m_BMPInfoHeader.xPels=0;
m_BMPInfoHeader.yPels=0;
m_BMPInfoHeader.colorUse=0;
m_BMPInfoHeader.colorImportant=0;
fwrite(&m_BMPInfoHeader.Length1sizeof(m_BMPInfoHeader.Length)fp1);
fwrite(&m_BMPInfoHeader.width1sizeof(m_BMPInfoHeader.width)fp1);
fwrite(&m_BMPInfoHeader.height1sizeof(m_BMPInfoHeader.height)fp1);
fwrite(&m_BMPInfoHeader.colorPlane1sizeof(m_BMPInfoHeader.colorPlane)fp1);
fwrite(&m_BMPInfoHeader.bitColor1sizeof(m_BMPInfoHeader.bitColor)fp1);
fwrite(&m_BMPInfoHeader.zipFormat1sizeof(m_BMPInfoHeader.zipFormat)fp1);
fwrite(&m_BMPInfoHeader.realSize1sizeof(m_BMPInfoHeader.realSize)fp1);
fwrite(&m_BMPInfoHeader.xPels1sizeof(m_BMPInfoHeader.xPels)fp1);
fwrite(&m_BMPInfoHeader.yPels1sizeof(m_BMPInfoHeader.yPels)fp1);
fwrite(&m_BMPInfoHeader.colorUse1sizeof(m_BMPInfoHeader.colorUse)fp1);
fwrite(&m_BMPInfoHeader.colorImportant1sizeof(m_BMPInfoHeader.colorImportant)fp1);
fwrite(rgb_buffer3*nWidth*nHeight1fp1);
return 0;
}
int main(int argc char* argv[])
{ FILE* p;
/*************** input data ***********
filename :RGB数据文件名称
nWidth :所生成文件的水平像素
nHeight :所生成文件的垂直像素
newFile :最终生成文件的名称
***********************************************/
char* filename = “test“;
int nWidth = 720;
int nHeight = 530;
char* newFile = “test.bmp“;
int num;
p = fopen(filename“rb“);
if (p == NULL)
{
printf(“!!!file %s open failed.n“ filename);
return 0;
}
printf(“file %s open success\n“filename);
/*********** read Image
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 113664 2011-06-29 15:28 RGB-BMP互转\bmp转rgb565\BmpCvt.exe
文件 254001 2015-09-29 17:46 RGB-BMP互转\RGB565转BMP\Debug\rgb565.exe
文件 369084 2015-09-29 17:46 RGB-BMP互转\RGB565转BMP\Debug\rgb565.ilk
文件 16672 2015-09-29 17:46 RGB-BMP互转\RGB565转BMP\Debug\rgb565.obj
文件 203728 2015-09-29 17:04 RGB-BMP互转\RGB565转BMP\Debug\rgb565.pch
文件 590848 2015-09-29 17:46 RGB-BMP互转\RGB565转BMP\Debug\rgb565.pdb
文件 1814 2015-09-29 17:04 RGB-BMP互转\RGB565转BMP\Debug\StdAfx.obj
文件 763200 2015-09-29 16:48 RGB-BMP互转\RGB565转BMP\Debug\test
文件 74752 2015-09-30 09:15 RGB-BMP互转\RGB565转BMP\Debug\vc60.idb
文件 110592 2015-09-29 17:46 RGB-BMP互转\RGB565转BMP\Debug\vc60.pdb
文件 1208 2015-09-29 13:53 RGB-BMP互转\RGB565转BMP\ReadMe.txt
文件 3092 2015-09-29 14:05 RGB-BMP互转\RGB565转BMP\rgb2bmp.h
文件 4213 2015-09-29 17:46 RGB-BMP互转\RGB565转BMP\rgb565.cpp
文件 4536 2015-09-29 13:53 RGB-BMP互转\RGB565转BMP\rgb565.dsp
文件 535 2015-09-29 13:53 RGB-BMP互转\RGB565转BMP\rgb565.dsw
文件 50176 2015-09-30 09:16 RGB-BMP互转\RGB565转BMP\rgb565.ncb
文件 53760 2015-09-30 09:16 RGB-BMP互转\RGB565转BMP\rgb565.opt
文件 246 2015-09-29 17:47 RGB-BMP互转\RGB565转BMP\rgb565.plg
文件 293 2015-09-29 13:53 RGB-BMP互转\RGB565转BMP\StdAfx.cpp
文件 769 2015-09-29 13:53 RGB-BMP互转\RGB565转BMP\StdAfx.h
文件 763200 2015-09-29 16:48 RGB-BMP互转\RGB565转BMP\test
文件 581 2015-09-30 09:54 RGB-BMP互转\说明.txt
目录 0 2015-09-30 09:51 RGB-BMP互转\RGB565转BMP\Debug
目录 0 2015-09-30 09:52 RGB-BMP互转\bmp转rgb565
目录 0 2015-09-30 09:51 RGB-BMP互转\RGB565转BMP
目录 0 2015-09-30 09:54 RGB-BMP互转
----------- --------- ---------- ----- ----
3380964 26
- 上一篇:异形窗口与gif动画带透明背景的实现
- 下一篇:Unity 3D小游戏
相关资源
- 视频插帧 帧率上转换程序 FRUC MCFI
- 基于verilog实现的AD 转换程序
- 用友审易数据采集转换工具V5.5(2/2)
- 用友审易数据采集转换工具V5.5(1/2)
- 简易信号发生器vhdl.rar
- 七参数转换及大地坐标系与空间坐标
- 汇率转换app小程序
- STM32采集风向
- DGVU+PDG+PDF电子书转换工具
- 科学计算器进制转换
- 使用openoffice将docxdocpptpptx等转换pdf格
- 聚合客服V24.5.0+PC端插件V5.6.0开源版
- 大地测量控制点坐标转换技术规程
- 图片转换DXF格式工具
- 常用CAD软件转换GERBER的方法及技[1].
- Computer.Systems.A.Programmers.Perspective.3rd深
- 网易云音乐ncm格式转换器 NCM文件转换
- AD9235_mod.zip
- 项目二_五轴加工坐标系转换.pptx
- PANTONE色值互相转换RGB与CMYK
- stm32f103c8t6模数转换AD例程
- 坐标转换高程拟合
- 易表数据转换引擎包
- stm32f407实现定时器3Timer3触发ADC双通道
- 导航、机体常用坐标系及变换
- 汇编转换工具
- 坐标转换软件--七参数、四参数,可反
- 高德坐标系到WGS84坐标系转换_R语言
- 低功耗CMOS逐次逼近型模数转换器.pd
- 模型格式转换工具(osgb-obj-ive)
评论
共有 条评论