jpeg图片解码灰度二值化c语言实现
标签:
•
文件类型: .zip
•
文件大小: 3.92MB
•
下载次数: 1
•
利用C语言实现JPEG图片解码,转换为BMP图片,在将其灰度化,自定义阈值二值化。
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-11-04 11:46 JPEGtoGarytoBIN_c代码
目录 0 2017-10-24 23:05 JPEGtoGarytoBIN_c代码mptoBIN
文件 2726 2017-10-10 01:29 JPEGtoGarytoBIN_c代码mptoBINmp (2).c
文件 2726 2017-10-10 01:29 JPEGtoGarytoBIN_c代码mptoBINmp.c
文件 133584 2017-10-10 01:29 JPEGtoGarytoBIN_c代码mptoBINmp.exe
文件 493554 2017-10-10 10:25 JPEGtoGarytoBIN_c代码mptoBINupt_out.bmp
文件 493554 2017-10-10 00:44 JPEGtoGarytoBIN_c代码mptoBIN est.bmp
文件 2781 2017-10-10 01:25 JPEGtoGarytoBIN_c代码mptoBIN用C语言进行BMP图像二值化-显示其长宽-最好有解释.txt
目录 0 2017-10-24 23:05 JPEGtoGarytoBIN_c代码jpegTobmp
文件 758 1998-04-23 14:04 JPEGtoGarytoBIN_c代码jpegTobmpJPEG.H
文件 1214 2017-10-10 16:25 JPEGtoGarytoBIN_c代码jpegTobmpMakefile.win
文件 921654 2017-10-10 16:25 JPEGtoGarytoBIN_c代码jpegTobmpRGB.bmp
文件 23059 2017-10-10 16:25 JPEGtoGarytoBIN_c代码jpegTobmpjpeg2bmp.c
文件 25438 2017-10-10 16:25 JPEGtoGarytoBIN_c代码jpegTobmpjpeg2bmp.o
文件 196 2017-10-10 16:23 JPEGtoGarytoBIN_c代码jpegTobmpmain.c
文件 1137 2017-10-10 16:23 JPEGtoGarytoBIN_c代码jpegTobmpmain.o
文件 92599 2017-10-10 16:22 JPEGtoGarytoBIN_c代码jpegTobmp est.jpg
文件 1459 2017-10-10 15:54 JPEGtoGarytoBIN_c代码jpegTobmp obmp.dev
文件 151580 2017-10-10 16:25 JPEGtoGarytoBIN_c代码jpegTobmp obmp.exe
文件 414 2017-10-10 18:37 JPEGtoGarytoBIN_c代码jpegTobmp obmp.layout
目录 0 2017-10-24 23:05 JPEGtoGarytoBIN_c代码jpegTobmp新建文件夹
文件 2367 2017-10-10 00:54 JPEGtoGarytoBIN_c代码jpegTobmp新建文件夹inary.c
文件 1341 2017-10-10 00:54 JPEGtoGarytoBIN_c代码jpegTobmp新建文件夹inary.o
文件 15217 2017-10-10 00:11 JPEGtoGarytoBIN_c代码jpegTobmp新建文件夹 est.jpg
文件 4474 2017-10-10 00:56 JPEGtoGarytoBIN_c代码jpegTobmp新建文件夹 obinary.c
文件 3084 2017-10-10 00:53 JPEGtoGarytoBIN_c代码jpegTobmp新建文件夹 obinary.o
文件 86 2017-10-10 00:32 JPEGtoGarytoBIN_c代码jpegTobmp说明.txt
目录 0 2017-10-24 23:05 JPEGtoGarytoBIN_c代码 oBIN
文件 165578 2017-10-10 22:40 JPEGtoGarytoBIN_c代码 oBIN1.bmp
文件 3651 2017-10-10 10:36 JPEGtoGarytoBIN_c代码 oBINin.c
文件 135137 2017-10-10 01:45 JPEGtoGarytoBIN_c代码 oBINin.exe
............此处省略39个文件信息
#include
#include
#include
/*以下注释部分为BMP灰度图的文件结构(已经包含在windows.h文件中在此列出来方便LZ参考)*/
/*
//位图文件头
typedef struct tagBITMAPFILEHEADER {
WORD bfType;
DWORD bfSize;
WORD bfReserved1;
WORD bfReserved2;
DWORD bfOffBits;
} BITMAPFILEHEADER;
typedef struct tagBITMAPINFOHEADER {
DWORD biSize;
LONG biWidth;
LONG biHeight;
WORD biPlanes;
WORD biBitCount
DWORD biCompression;
DWORD biSizeImage;
LONG biXPelsPerMeter;
LONG biYPelsPerMeter;
DWORD biClrUsed;
DWORD biClrImportant;
} BITMAPINFOHEADER;
//彩色表
typedef struct tagRGBQUAD {
BYTE rgbBlue;
BYTE rgbGreen;
BYTE rgbRed;
BYTE rgbReserved;
} RGBQUAD;
//位图信息头
typedef struct tagBITMAPINFO {
BITMAPINFOHEADER bmiHeader;
RGBQUAD bmiColors[1];
} BITMAPINFO;
*/
void main()
{//所举例程为从BMP灰度图中抽取一层并输出为图片
FILE *fi*fo;
UINT count=0;
BITMAPFILEHEADER bmfh;
BITMAPINFO bmi;
int ij;
BYTE p;
BYTE buf[2000];
//fi = fopen(“bupt_8bit.bmp““rb“);
fi = fopen(“test.bmp““rb“);
if(fi==NULL)
{
printf(“文件打开错误!
“);
return;
}
//读取文件头
fread(&bmfhsizeof( bmfh ) 1fi);
printf(“文件头信息:
“);
printf(“文件类型:%c%c
“bmfh.bfType%256 bmfh.bfType/256);
printf(“文件大小:%d
“bmfh.bfSize);
printf(“图像数据偏移量:%d
“bmfh.bfOffBits);
//读BMP信息头--------读彩色表
fread(&bmisizeof(BITMAPINFO)1fi);
printf(“
图像信息:
“);
printf(“位图宽度:%d
“bmi.bmiHeader.biWidth);
printf(“位图高度:%d
“bmi.bmiHeader.biHeight);
printf(“每个像素的位数:%d
“bmi.bmiHeader.biBitCount);
printf(“位图数据的大小:%d
“bmi.bmiHeader.biSizeImage);
printf(“用像素/米表示的水平分辨率:%d
“bmi.bmiHeader.biXPelsPerMeter);
printf(“用像素/米表示的垂直分辨率:%d
“bmi.bmiHeader.biYPelsPerMeter);
printf(“每个像素的位数:%d
“bmi.bmiHeader.biBitCount);
printf(“位图使用的颜色数:%d
“bmi.bmiHeader.biClrUsed);
for(i=0;i<8;i++)//像为8bits,所以只有8层
{
//fo = fopen(“bupt_8bit_out.bmp““wb“);
fo = fopen(“bupt_out.bmp““wb“);
fseek(fi00);
fread(&buf1bmfh.bfOffBitsfi);//1是因为此处图像为8bits的,所以size是1字节
fwrite(&buf1bmfh.bfOffBitsfo);
fseek(fibmfh.bfOffBits0);//将指针定位到图像数据处,偏移量为bmfh.bfOffBits
for(j=0;j {
fread(&p11fi);
p = (p>>(i+1))<<(i+1);//将后最低i+1层写为0
fwrite(&p11fo);
}
while(fread(&p11fi))
fwrite(&p11fo);
fclose(fo);
printf(“替换%d后的结果回车继续。
“i);
getchar();
}
fclose(fi);
getchar();
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-11-04 11:46 JPEGtoGarytoBIN_c代码
目录 0 2017-10-24 23:05 JPEGtoGarytoBIN_c代码mptoBIN
文件 2726 2017-10-10 01:29 JPEGtoGarytoBIN_c代码mptoBINmp (2).c
文件 2726 2017-10-10 01:29 JPEGtoGarytoBIN_c代码mptoBINmp.c
文件 133584 2017-10-10 01:29 JPEGtoGarytoBIN_c代码mptoBINmp.exe
文件 493554 2017-10-10 10:25 JPEGtoGarytoBIN_c代码mptoBINupt_out.bmp
文件 493554 2017-10-10 00:44 JPEGtoGarytoBIN_c代码mptoBIN est.bmp
文件 2781 2017-10-10 01:25 JPEGtoGarytoBIN_c代码mptoBIN用C语言进行BMP图像二值化-显示其长宽-最好有解释.txt
目录 0 2017-10-24 23:05 JPEGtoGarytoBIN_c代码jpegTobmp
文件 758 1998-04-23 14:04 JPEGtoGarytoBIN_c代码jpegTobmpJPEG.H
文件 1214 2017-10-10 16:25 JPEGtoGarytoBIN_c代码jpegTobmpMakefile.win
文件 921654 2017-10-10 16:25 JPEGtoGarytoBIN_c代码jpegTobmpRGB.bmp
文件 23059 2017-10-10 16:25 JPEGtoGarytoBIN_c代码jpegTobmpjpeg2bmp.c
文件 25438 2017-10-10 16:25 JPEGtoGarytoBIN_c代码jpegTobmpjpeg2bmp.o
文件 196 2017-10-10 16:23 JPEGtoGarytoBIN_c代码jpegTobmpmain.c
文件 1137 2017-10-10 16:23 JPEGtoGarytoBIN_c代码jpegTobmpmain.o
文件 92599 2017-10-10 16:22 JPEGtoGarytoBIN_c代码jpegTobmp est.jpg
文件 1459 2017-10-10 15:54 JPEGtoGarytoBIN_c代码jpegTobmp obmp.dev
文件 151580 2017-10-10 16:25 JPEGtoGarytoBIN_c代码jpegTobmp obmp.exe
文件 414 2017-10-10 18:37 JPEGtoGarytoBIN_c代码jpegTobmp obmp.layout
目录 0 2017-10-24 23:05 JPEGtoGarytoBIN_c代码jpegTobmp新建文件夹
文件 2367 2017-10-10 00:54 JPEGtoGarytoBIN_c代码jpegTobmp新建文件夹inary.c
文件 1341 2017-10-10 00:54 JPEGtoGarytoBIN_c代码jpegTobmp新建文件夹inary.o
文件 15217 2017-10-10 00:11 JPEGtoGarytoBIN_c代码jpegTobmp新建文件夹 est.jpg
文件 4474 2017-10-10 00:56 JPEGtoGarytoBIN_c代码jpegTobmp新建文件夹 obinary.c
文件 3084 2017-10-10 00:53 JPEGtoGarytoBIN_c代码jpegTobmp新建文件夹 obinary.o
文件 86 2017-10-10 00:32 JPEGtoGarytoBIN_c代码jpegTobmp说明.txt
目录 0 2017-10-24 23:05 JPEGtoGarytoBIN_c代码 oBIN
文件 165578 2017-10-10 22:40 JPEGtoGarytoBIN_c代码 oBIN1.bmp
文件 3651 2017-10-10 10:36 JPEGtoGarytoBIN_c代码 oBINin.c
文件 135137 2017-10-10 01:45 JPEGtoGarytoBIN_c代码 oBINin.exe
............此处省略39个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)