数字图像处理(作业四)——边缘表达
任务要求:
1.将图像二值化,突出叶子
2.将图像中叶子的轮廓找出来
3.将叶子的轮廓用傅里叶方式表述
4.给出去掉高频后重构的轮廓
实现
首先分析思路
该问题分为两个部分,图像分割和边缘表达,图像分割要求将叶子和背景完全分离,边缘表达要求对按顺序提取出轮廓进行表述
图像分割:
1.首先将图像转换为灰度图像,然后利用最大类间方差法求得阈值,然后将其二值化,此时的结果不是太好。
2.故要对其进行一系列操作,孔洞填充+膨胀直到将内部的黑色全部消去(轮廓好像有点变形)
3.提取出边界
clc;clear;
A=imread('1.jpg');
A=rgb2gray(A);
T=graythresh(A);
B=im2bw(A,T);
B(500:end,700:end)=1;
mask=[0,1,0;1,1,1;0,1,0]; %膨胀操作的结构元
SE=strel('arbitrary',mask);
B=~B;
B=imfill(B,'holes');
B=imdilate(B,SE);
B=imdilate(B,SE);
B=imdilate(B,SE);
B=imerode(B,SE);
B=imfill(B,'holes');
E=bwperim(B,8);
imshow(E);
边缘表达:
1.按逆时针(or顺时针)提取出轮廓的坐标,一个是行向量,一个是列向量
2.算出行向量的均值和列向量的均值,利用行的波动向量和列的波动向量构建一个复数向量
3.对该复数向量做fft,然后取其低频分量(注意复数向量的频谱不是对称的,然后作一个低通滤波,注意低通滤波一定是中心对称的),然后反傅里叶变换
4.实部向量加上之前的均值即为滤波后的行向量,虚部向量加上之前的均值即为滤波后的列向量
5.构建一张新的背景图,在滤波后得到的位置标1即可得到平滑后的轮廓
[m,n]=find(E==1);
contour = bwtraceboundary(E,[m(1),n(1)],'W',4);
m=contour(:,1);
n=contour(:,2);
sr_mean=mean(m);
si_mean=mean(n);figure;
s=(m-sr_mean)+1i*(n-si_mean);
s_f=fft(s);sav=0.2;
tt=double(int32(sav*length(m)/2));
s_ff=s_f.*[ones(1,tt),zeros(1,length(m)-2*tt),ones(1,tt)]';
plot(abs(s_ff));
s_c=ifft(s_ff);
x_cd=real(s_c);
y_cd=imag(s_c);x_c=abs(double(int32(sr_mean+x_cd)));
y_c=abs(double(int32(si_mean+y_cd)));M=zeros(600,800);
for i=1:length(x_c)M(x_c(i),y_c(i))=1;
end
figure;
imshow(M);
结果:
这里的轮廓跟踪直接用的库函数。。。
数字图像处理(作业四)——边缘表达相关推荐
- 几何畸变图像恢复 openCV3 - 数字图像处理作业3
几何畸变图像恢复 OpenCV3 - 数字图像处理作业3 作业3:相同条件下拍到的棋盘图和日历钟表图,尝试建立几何畸变关系,并对它们进行恢复.注意:不能采用椭圆的变换. 算法步骤: 坐标变换: 在畸变 ...
- 【计算机视觉】数字图像处理(四)—— 图像增强
数字图像处理(四)-- 图像增强 图像增强的定义 图像增强方法 一.图像增强的点运算 (一)灰度变换 1. 线性变换 2. 分段线性变换 3. 非线性灰度变换 对数变换 指数变换 (二) 直方图修整法 ...
- 数字图像处理第四章——图像复原(下)
数字图像处理第四章 数字图像处理---图像复原 (三)仅有噪声的复原--空间滤波 3.1 空间噪声滤波器 3.2 自适应空间滤波 (四)退化函数建模 (五)维纳滤波 (六)约束的最小二乘法(规则化)滤 ...
- 数字图像处理第四版PDF
数字图像处理第四版PDF 要的私信(https://img-blog.csdnimg.cn/ce7b56995c444639a944d4630930ee07.png)(https://img-blog ...
- 【数字图像处理】四.MFC对话框绘制灰度直方图
本文主要讲述基于VC++6.0 MFC图像处理的应用知识,主要结合自己大三所学课程<数字图像处理>及课件进行回忆讲解,主要通过MFC单文档视图实现点击弹出对话框绘制BMP图片的灰度直方图, ...
- 数字图像处理实验四图像频域增强
一.实验目的 (1)了解图像增强的目的及意义,加深对图像增强的感性认识,巩固所学的图像增强的理论知识和相关算法. (2)熟练掌握低通.高通.带通.同态滤波器的使用方法,明确不同性质的滤波器对图像的影响 ...
- 数字图像处理作业——直方图均衡处理
将下面的图像进行直方图均衡处理. (1)列表写出图像直方图均衡化的过程(书上的格式或补充课件上的格式均可以): (2)画出均衡化以后的图像: (3)画出原始图像直方图和均衡化以后的图像直方图. [例一 ...
- 【数字图像处理】四种常用的滤波器
数字图像处理 四种常用滤波器 数字图像处理 一.平滑滤波器 1.1 基本原理 1.2 作用 1.3 邻域加权平均实现方式 二.高斯滤波器 2.1 基本原理 2.2 特点 三.中值滤波器 3.1 基本原 ...
- 数字图像处理第十一章——表达与描述
数字图像处理第十一章 数字图像处理---表达与描述 (一)背景知识 (二)表示 2.1 链码 2.2 使用最小周长多边形的多边形近似 2.3 标记 2.4 边界片段 2.5 骨骼 (三)边界描述子 3 ...
- 数字图像处理——第四章 频率域滤波
数字图像处理--第4章 频率域滤波 文章目录 数字图像处理--第4章 频率域滤波 频率域 1.傅里叶级数原理 1.1.一维傅里叶变换 1.2.二维傅里叶变换 2.python×傅里叶级数 2.1.傅里 ...
最新文章
- 【c++】iostreeam中的类为何不可以直接定义一个无参对象呢
- python有趣的小项目-有趣的十个Python实战项目,让你瞬间爱上Python!
- 图论-最长路--关于最长路的探讨2
- ubuntu下命令安装与卸载软件方法
- windows下jenkins slave 搭建
- 二维码提升对比度文献调研(2)--Zero-Reference Deep Curve Estimation for Low-Light Image Enhancement
- 三支一扶计算机基础知识,2017聊城三支一扶考试内容-公基:计算机基础知识
- 从信号转换角度研究血压(波形)预测的相关论文
- 会计基础(1)利得和损失
- struts2学到屎挫死-学习笔记(4)
- Android 高德获取经纬度工具类
- 【rmzt】动漫性感美女win7主题_8.13
- Docker--docker ps 命令与结果解析
- C语言:51单片机看这一篇就够了
- 活动|QuarkChain 高TPS悬赏令:看你能有多快!2.4BTC等你拿!
- 专业办公套件(Office 2019)for Mac
- ip 地址在线解析, api
- matlab构造传递函数
- 苹果x跟xr哪个好_苹果XR和苹果X哪个性价比高
- unity3d新手笔记
热门文章
- 黄国兴计算机应用基础,黄国兴计算机应用基础 - 百度学术
- 正反对角线java表示_连接4对角线Win Check
- Java 算法 等差数列
- Java 算法 邮票
- 解决python访问中突发requests.exceptions.ConnectionError:Max retries exceeded with url报错
- python与数学关系大吗_通过一个简单的数学游戏,清晰了解各大编程语言之间的一些区别...
- WPF TreeView 相关技巧
- SpringBoot-(1)-IDEA创建SpringBoot项目并运行访问接口
- HTML动画(难点)
- Unity打包APK细节(翻译自官网)