数字图像处理c语言pdf,数字图像处理C语言版.doc

博主分享了自己在大学时期用C语言编写的数字图像处理程序,包括读取和存储BMP、DAT文件,图像均衡、平滑、锐化处理,以及压缩和解压缩、阈值分割功能。由于时间紧迫,程序未做规范化处理,适用于初学者参考。作者提供邮箱以解答疑问。
摘要由CSDN通过智能技术生成

数字图像处理C语言程序

这个程序是我在大学时期期末课程设计时按照老师要求利用C语言写出来的,鉴于当时在网上的C语言图像处理资料少之又少,并且很多东西作用都不大,因此我今天把我当时写的程序共享给大家,希望对大家有帮助。

这个程序涉及了图像处理中的 读入图像信息,图像均衡处理,图像平滑处理,图像锐化处理,图像压缩(方块编码),图像解压,阈值分割功能,存储图像(处理后)信息,因为当时老师只提供了BMP文件和DAT文件,因此我的程序只设计了BMP,DAT文件的读取和存储程序,如果有其他类型的图像文件读入,请自行设计。

设计程序过程中因为时间仓促,所以对程序没有进行任何规范化处理,处理的各种功能也不是很强大,只是给大家一个参考,希望些没有想法,并且不知道如何下手的同学们有所帮助。

另外,如果大家有什么问题的话可以发邮件和我联系,我的邮箱地址是bianxiaoxiang@yeah.net。最近一年内会很忙,会很少登录,如果我见到会给大家解答。

祝大家学业有成

边肖翔

于西安科技大学

2011/7/31(大三暑期)

程序如下:

BMP头文件

#ifndef BMP_H_INCLUDE

#define BMP_H_INCLUDE

typedef unsigned short WORD;

typedef unsigned long DWORD;

typedef long LONG;

typedef unsigned char BYTE;

typedef struct tagBITMAPFILEHEADER

{

WORDbfType;

DWORDbfSize;

WORDbfReserved1;

WORDbfReserved2;

DWORDbfOffBits;

}BITMAPFILEHEADER;

typedef struct tagBITMAPINFOHEADER

{

DWORDbiSize;

LONGbiWidth;

LONGbiHeight;

WORDbiPlanes;

WORDbiBitCount;

DWORDbiCompression;

DWORDbiSizeImage;

LONGbiXPelsPerMeter;

LONGbiYPelsPerMeter;

DWORDbiClrUsed;

DWORDbiClrImportant;

}BITMAPINFOHEADER;

typedef struct tagRGBQUAD

{

BYTErgbBlue;

BYTErgbGreen;

BYTErgbRed;

BYTErgbReserved;

}RGBQUAD;

typedef struct tagBIMAPINFO

{

BITMAPINFOHEADER bmiHeader;

RGBQUAD bmiColors[1];

}BITMAPINFO;

typedef struct YaSuoHeader

{

charysType;

intysSize;

intysWidth;

intysHeight;

}ysHeader;

#endif

主程序

#include"stdio.h"

#include"stdlib.h"

#include"math.h"

#include "BMP.H"

#define WIDTH 256

#define HEIGHT 256

#define PI 3.1415926535897932384626433832795028841971

#define FFT_N 128

#define jj sqrt(-1)

#define e 2.718

int a[WIDTH][HEIGHT],b[WIDTH][HEIGHT];

int size,yssize;

bool ys=0;//标志是否对文件进行压缩

bool z=0;//标志是否生成直方图文件

BYTE A[HEIGHT*WIDTH];

int _temp=0;

int zhi[100][512]={0};

void ReadDataFile(char filepath[]);

void ReadBmpFile(char filepath[]);

void exchange();

void SaveDataFile(char filepath[]);

void SaveBmpFile(char filepath[]);

void junheng();

void

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值