matlab练习程序(radon变换)

radon变换就是图像在不同方向上的投影。

下图f(x,y)可以代表图像,R(x')就是图像向右下方的投影。

数学上是按投影方向进行线积分,在图像领域就是按照投影方向累加像素就行了。

matlab中有radon函数,为了熟悉原理我又写了一个。

通过旋转图像映射,效率不怎么样。

canny后Lena:

45度投影:

代码如下:

main.m

复制代码
clear all; close all; clc;

img=imread('lena.jpg');
ed=edge(img,'canny');

r=Radon(ed,45);     %检测直线什么的,可以投影到0-179度上
%r=radon(ed,45);   %系统自带

figure;
plot(r)
复制代码

Radon.m

复制代码
function re=Radon(img,rotate)

    img=imrotate(img,rotate);   %没什么效率,实际中旋转投影方向比较好

    re=sum(img);  %已旋转后的图像按列求和

end
复制代码
  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值