基于DSP的数字图像处理(3页).docVIP

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于DSP的数字图像处理(3页),dsp数字图像处理,dsp图像处理,dsp数字音频处理器,基于dsp的图像处理,dsp数字信号处理器,fpgadsp图像处理,dsp数字信号处理,dsp图像处理平台,dsp数字音频处理技术

实验目的: 1. 学习使用MATLAB读取图像,并输出.h文件 2. 学习使用TI IMGLIB库函数的使用方法 3. 理解掌握Sobel算子进行图像边缘检测的DSP实现 实验原理: 两个具有不同灰度值的相邻区域之间总存在边缘,边缘是灰度值不连续的表现。由于边缘是图像上灰度变化最剧烈的地方,边缘检测就是充分利用了这个特点,对图像各像素点进行微分或求二阶微分来确定边缘像素点。一阶微分图像的峰值处对应着图像的边缘点;二阶微分图像的过零点处对应着图像的边缘点。为了提取图像边缘,我们定义了图像的梯度为梯度算子,常用的梯度算子有Robert算子、Sobel算子、Prewitt算子和拉普拉斯算子等。 实验步骤: 一、对lenna.bmp图像的DSP处理 1. 用MATLAB读取图像并输出.h文件。本实验是对经典图像lenna.bmp的读取和数据分析。程序如下: [I,map]=imread(lenna.bmp); imshow(I) It(:,:,1) = I(:,:,1); I=double(I); fid=fopen(lenna.h,w); fprintf(fid,/*lenna image 256*256 */\n\n); fprintf(fid, sprintf(short lenna[256][256] = {\n)); for ii=1:65536 fprintf(fid, %3d,, I(ii)); if 0 == mod(ii, 8) fprintf(fid, \n); end end fprintf(fid,\n};\n); fclose(fid); 运行之后将产生一个lenna.h文件,文件内存取了256*256个数据,供CCS调用。 2. 使用TI IMGLIB实现Sobel边缘检测。 TI IMGLIB是图像/视频处理函数库,包含了许多经过优化的常用数字图像处理算法的函数。对于C6713 DSK,我们使用TI C62x IMGLIB(对C67x兼容)。 本实验实现Sobel边缘检测算法: 编写边缘检测程序sobel_edge_detect.c如下: #include img_sobel.h #include img_thr_le2min.h #include lenna.h #pragma DATA_SECTION(img_buf1, IRAM); #pragma DATA_ALIGN (img_buf1, 8); unsigned char img_buf1[N_PIXELS]; #pragma DATA_SECTION(img_buf2, IRAM); #pragma DATA_ALIGN (img_buf2, 8); unsigned char img_buf2[N_PIXELS]; static void sobel_edge_detect(unsigned char T) { IMG_sobel(img_s, img_buf2, Y_SIZE, X_SIZE); IMG_thr_le2min(img_buf2, img_buf1, Y_SIZE, X_SIZE, T); } void main() { /* process the image */ sobel_edge_detect((unsigned char)120); } 同时编写好img_sobel.h(边缘检测头文件)和img_thr_le2min.h(二值化头文件) 建立工程improc,添加源程序sobel_edge_detect.c,图像/视频库文件img62x.lib,头文件img_sobel.h、img_thr_le2min.h、lenna.h以及链接器命令文件dsk6713.cmd。编译链接后产生输出文件improc.out,将其载入,运行程序。 二、对已有的image.h文件进行边缘检测和二值化分析。与步骤一类似。 实验结果: 用CCS Graph 功能观察结果,CCS?View?Graph?Image 一、程序中img_buf2和img_buf1分别存储着边缘检测数据和二值化处理数据。 例如观察原图像进行如下设置: 原图像如下: 接着分别观察img_buf2和img_buf1 边缘检测后图像: 二值化处理后图像: 二、观察原图像配置如下: 原图像、边缘检测图像、二值化图像进行对比如下:

文档评论(0)

docinppt + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档