Visual C++实用图像处理专业教程

时间:2012-10-25 16:27:59
【文件属性】:
文件名称:Visual C++实用图像处理专业教程
文件大小:16.92MB
文件格式:RAR
更新时间:2012-10-25 16:27:59
Visual C++ 图像处理 源代码 1. \学习版Imgcx 打开文件夹Imgcx,执行SetUp,按提示安装Imgcx。该书各个章节所处理的图像都包含在安装后的文件夹…Imgcx\Image里。 2. \专业版Imgc 介绍该书配套的专业版软件Imgc。专业版软件包括该书全部图像处理的C语言源程序以及可执行的Visual C++ 界面源程序,可以满足大学教师、科研人员以及图像处理专业人员的需要。 3. \ImageSys试用版 包括通用图像处理系统ImgeSys的介绍和试用版的安装程序。通用图像处理系统ImageSys是一套大型专业图像处理软件,安装试用版后可以体会专业图像处理软件的魅力。 4. \动态图像处理 介绍北京现代富博科技有限公司的二维、三维动态图像处理软件系统。 有以下数字图像处理方法的实现: 1.一般2值化处理 void Threshold(BYTE *image_in, BYTE *image_out, int xsize, int ysize, int thresh, int mode); 2. 双阈值2值化处理 void Threshold_mid(BYTE *image_in, BYTE *image_out, int xsize, int ysize, int thresh_low, int thresh_high); 3.反转图像 void Reverse_image(BYTE *image_in, BYTE *image_out, int xsize, int ysize); 4.像素分布直方图 void Histgram(BYTE *image, int xsize, int ysize, long hist[256]); 5.计算直方图百分比 void CalHistPercent(long hist[], float hist_radio[], float &max_percent); 6.直方图平滑化 void Hist_smooth(long hist_in[256], long hist_out[256]); 7.直方图图像化(图像宽度大于等于64) void Hist_to_image(long hist[256], BYTE* image_hist, int xsize, int ysize); /*--------------------------提取轮廓-----------------------------*/ 8.1阶微分边沿检出(梯度算子) void Differential(BYTE *image_in, BYTE *image_out, int xsize, int ysize, float amp); 9.2阶微分边沿检出(拉普拉斯算子) void Differential2(BYTE *image_in, BYTE *image_out, int xsize, int ysize, float amp); 10.Prewitt法边沿检出 void Prewitt(BYTE *image_in, BYTE *image_out, int xsize, int ysize, float amp); 11.2值图像的细线化处理 void Thinning(BYTE *image_in, BYTE *image_out, int xsize, int ysize); /*--------------------------消除噪音-----------------------------*/ 12.去噪音处理(移动平均) void Image_smooth(BYTE *image_in, BYTE *image_out, int xsize, int ysize); 13.去噪音处理(中值) void Median(BYTE *image_in, BYTE *image_out, int xsize, int ysize); 14.膨胀 void Dilation(BYTE *image_in, BYTE *image_out, int xsize, int ysize); 15.腐蚀 void Erodible(BYTE *image_in, BYTE *image_out, int xsize, int ysize); /*--------------------------获取清晰图像------------------------*/ 16.亮度n倍 void Brightness_amplify(BYTE *image_in, BYTE *image_out, int xsize, int ysize, float n); 17.求亮度范围 void Brightness_range(BYTE *image_in, int xsize, int ysize, int *fmax, int *fmin); 18.亮度范围扩张 void Brightness_expand(BYTE *image_in, BYTE *image_out, int xsize, int ysize, int fmax, int fmin); 19.直方图平坦化 void Hist_plane(BYTE *image_in, BYTE *image_out, int xsize, int ysize, long hist[256]); /*--------------------------特征提取-----------------------------*/ 20.区域标记 int Labeling(BYTE *image_in, BYTE *image_out, int xsize, int ysize, int *cnt); 21.测算特征数据 void Features(BYTE *image_label_in, BYTE *image_label_out, int xsize, int ysize, int cnt, float size[], float length[], float ratio[], int center_x[], int center_y[]); 22.抽出具有某圆形度的对象物 void Ratio_extract(BYTE *image_label_in, BYTE *image_label_out, int xsize, int ysize, int cnt, float ratio[], float ratio_min, float ratio_max); 23.抽出某面积范围的对象物 void Size_extract(BYTE *image_label_in, BYTE *image_label_out, int xsize, int ysize, int cnt, float size[], float size_min, float size_max); 24.复制模块领域的原图像 void Mask_copy(BYTE *image_in, BYTE *image_out, BYTE *image_mask, int xsize, int ysize); /*--------------------------颜色变换-----------------------------*/ 25.做彩条 void Colorbar(BYTE *image_r, BYTE *image_g, BYTE *image_b, int xsize, int ysize, int level); 26.由R、G、B变换亮度、色差信号 void Rgb_to_yc(BYTE *image_r, BYTE *image_g, BYTE *image_b, int *y, int *c1, int *c2, int xsize, int ysize); 27.色差信号图像化 void Yc_to_image(int *data, BYTE *image, int xsize, int ysize); 28.由亮度、色差变换R、G、B信号 void Yc_to_rgb(int *y, int *c1, int *c2, BYTE *image_r, BYTE *image_g, BYTE *image_b, int xsize, int ysize); 29.由色差信号计算彩度和色相 void C_to_SH(int *c1, int *c2, int *sat, int *hue, int xsize, int ysize); 30.由彩度和色相计算色差信号 void SH_to_C(int *sat, int *hue, int *c1, int *c2, int xsize, int ysize); 31.由彩度数据变换灰度图像 int Sat_to_image(int *sat, BYTE *image_out, int xsize, int ysize); 32.由某点的RGB值计算计算彩度和色相 void Rgb_to_SH(BYTE r, BYTE g, BYTE b, double *sat, double *hue); 33.由色相数据变换灰度图像 void Hue_to_image(int *sat, int *hue, double stdhue, BYTE *image_out, int xsize, int ysize); 34.改变亮度、彩度和色相 void Change_YSH(int *in_y, int *in_sat, int *in_hue, int *out_y, int *out_sat, int *out_hue, float ym, float sm, float hd, int xsize, int ysize); /*------------------------基于颜色的提取----------------------*/ 35.计算2维直方图并图像化 void Hist2_image(BYTE *image_in1, BYTE *image_in2, BYTE *image_hist, int xsize, int ysize); 36.R,G,B的阈值处理 void Thresh_color(BYTE *image_in_r, BYTE *image_in_g, BYTE *image_in_b, BYTE *image_out_r, BYTE *image_out_g, BYTE *image_out_b, int thdrl, int thdrm, int thdgl, int thdgm, int thdbl, int thdbm, int xsize, int ysize); 37.生成硬合成键 void Hard_key(BYTE *image_in_r, BYTE *image_in_g, BYTE *image_in_b, BYTE *image_key, int xsize, int ysize, int thresh); 38.生成软合成键 void Soft_key(BYTE *image_in_r, BYTE *image_in_g, BYTE *image_in_b, BYTE *image_key, int xsize, int ysize, int thdh, int thdl); 39.图像硬合成 void Synth(BYTE *image_in1_r, BYTE *image_in1_g, BYTE *image_in1_b, BYTE *image_in2_r, BYTE *image_in2_g, BYTE *image_in2_b, BYTE *image_out_r, BYTE *image_out_g, BYTE *image_out_b, BYTE *image_key, int xsize, int ysize); 40.图像合成(消除境界线) void S_synth(BYTE *image_in1_r, BYTE *image_in1_g, BYTE *image_in1_b, BYTE *image_in2_r, BYTE *image_in2_g, BYTE *image_in2_b, BYTE *image_out_r, BYTE *image_out_g, BYTE *image_out_b, BYTE *image_key, int xsize, int ysize); /*--------------------------几何变换-----------------------------*/ 41.错误的扩大缩小法 void Scale_NG(BYTE *image_in, BYTE *image_out, int xsize, int ysize, float zx, float zy); 42.扩大、缩小(最近旁法) void Scale_near(BYTE *image_in, BYTE *image_out, int xsize, int ysize, float zx, float zy); 43.扩大、缩小(线性补间法) void Scale(BYTE *image_in, BYTE *image_out, int xsize, int ysize, float zx, float zy); 44.位移(线性补间法) void Shift(BYTE *image_in, BYTE *image_out, int xsize, int ysize, float px, float py); 45.回转(线性补间法) void Rotation(BYTE *image_in, BYTE *image_out, int xsize, int ysize, float deg); 46.仿射变换(移动、旋转、放大缩小) void Affine(BYTE *image_in, BYTE *image_out, int xsize, int ysize, float deg, float zx, float zy, float px, float py); 47.透视变换(线性补间法) void Perspective(BYTE *image_in, BYTE *image_out, int xsize, int ysize, float ax, float ay, float px, float py, float pz, float rz, float rx, float ry, float v, float s); /*---------------傅里叶变换程序---------------------------------*/ 48.1次傅里叶变换 int FFT1(float a_rl[], float a_im[], int ex, int inv); 49.1次傅里叶变换的主计算部分 void fft1core(float a_rl[], float a_im[], int length, int ex, float sin_tbl[], float cos_tbl[], float buf[]); 50.2次傅里叶变换 int FFT2 (float *a_rl, float *a_im, int inv, int xsize, int ysize); 51.将2次FFT的变换结果频率域图像化 int FFTImage(BYTE *image_in, BYTE *image_out, int xsize, int ysize); 52.2次FFT的滤波处理、滤波后的频率域图像化 int FFTFilter(BYTE *image_in, BYTE *image_out, int xsize, int ysize, int a, int b); 53.图像的2次FFT变换、滤波处理、逆傅里叶变换 int FFTFilterImage(BYTE *image_in, BYTE *image_out, int xsize, int ysize, int a, int b); /*---------------图像压缩程序---------------------------------*/ 54.预测编码 DPCM (预测法(1):处理一行区域) void Dpcm1(BYTE* image_in, int xsize, int line, short *data_out); 55.预测编码 DPCM (预测法(2):处理一行区域) void Dpcm2(BYTE* image_in, int xsize, int line, short *data_out); 56.DPCM数据分布直方图 void Histgram_dpcm(BYTE *image, int xsize, int ysize, long hist[512]); 57.计算DPCM直方图百分比 void CalHistPercent_dpcm(long hist[], float hist_radio[], float &max_percent); 58.DPCM的解码 (预测法(1):处理一行区域) void Idpcm1(short *data_in, int xsize, int line, BYTE* image_out); 59.DPCM的解码 (预测法(2):处理一行区域) void Idpcm2(short *data_in, int xsize, int line, BYTE* image_out); 60.变长编码 int Vlcode(short int data_in[], int no, char vlc_out[]); 61.变长编码的解码 void Ivlcode(char vlc_in[], int no, short int data_out[]); 62.由DPCM码到变长码的变换 int Event(short dt); 63.由变长码到DPCM码的转换 int Ievent(short ev); 64.DPCM + 变长编码 int Dpcm_vlcode(BYTE *image_in, int xsize, int ysize, BYTE* image_buf); 65.DPCM + 变长编码的解码 int Idpcm_vlcode(BYTE *image_buf, BYTE *image_out, int xsize, int ysize); /*------------------ 离散小波变换程序--------------------------------*/ 66.2维小波变换 void Wavelet2d (BYTE *image_in, int xsize, int ysize, double *s1, double *w1v, double *w1h, double *w1d); 67.2维小波信号图像化 void Wavelet2d_image (double *s1, double *w1v, double *w1h, double *w1d, BYTE *image_out, int xsize, int ysize); 68.2维逆小波变换 void Iwavelet2d (double *s1, double *w1v, double *w1h, double *w1d, BYTE *image_out, int xsize, int ysize ); 69.1维小波变换 void Wavelet1d (double *s0, int s_len, double *p, double *q, int sup, double *s1, double *w1); 70.1维逆小波变换
【文件预览】:
《Visual C++实用图像处理专业教程》
----其他()
--------DirectX图像采集系统.doc(273KB)
--------效率时间管理系统.files()
--------VFW图像采集系统.doc(258KB)
--------软件保护系统.doc(67KB)
--------效率时间管理系统.htm(8KB)
----光盘使用说明.doc(33KB)
----~$光盘使用说明.doc(162B)
----动态图像处理()
--------三维运动图像解析系统简介.files()
--------二维运动图像解析系统简介.files()
--------二维运动图像解析系统简介.htm(17KB)
--------三维运动图像解析系统简介.htm(14KB)
--------示范图()
----专业版Imgc()
--------Imgc介绍.doc(628KB)
----ImageSys试用版()
--------ImageSysHelp.chm(1.54MB)
--------Function Reference.htm(132KB)
--------ImageSys功能介绍 .doc(1.81MB)
--------ImageSys.msi(6.68MB)
----学习版Imgcx()
--------DISK_1()
--------SetUp.exe(20KB)
--------Imgcx介绍.doc(94KB)
--------Imgcx安装说明.doc(19KB)

网友评论

  • 好东西!!!!
  • 资源很好,下载下来看了,非常感谢
  • 没有源码,不好用。上当的感觉!
  • 还要转个软件才能查看,有些资源找不到
  • 内容很全很详细!多谢分享!
  • 光盘里的内容不错,有许多有用的东西,在学习中
  • 不会用 所以感觉不好
  • 谢谢楼主,很有用
  • 我以为是书呢,我想要电子版的书,唉!!imgc专业版没有程序,只有简单的说明
  • 资源很好,下载下来看了,非常感谢
  • 不会用啊!挺麻烦的
  • 下载了。网上找了很久了终于找到了~
  • 看着很不错,不过不会使用
  • 一般般,还行
  • 不会用啊!挺麻烦的
  • 不错的参考资料,学习分享!
  • 上面介绍是有代码的,结果下载下来没有代码,参考价值就和只有学习版差不多了
  • 和想象的不一样,诶有源代码
  • 下载了。能使用!网上找了很久了终于找到了~~ 感谢楼主分享.
  • 什么玩意?把当中的源代码删了,早知道就不下啦
  • 十分感谢不过图像处理还是用opencv比较方便
  • 没有代码啊,只有书籍,一般般了
  • 没有代码,不是开源的啊
  • 感觉还不错,比自己做得好
  • 很不错,值得学习