matlab仿射变换代码(matlab编程及仿真应用)
admin 发布:2022-12-19 21:17 173
本篇文章给大家谈谈matlab仿射变换代码,以及matlab编程及仿真应用对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、用仿射函数maketform、imtransform进行图像的旋转变换
- 2、求一个matlab图形处理的程序加解析
- 3、求MATLAB GUI 环境下 图像处理图像的平移,任意角度的旋转,缩放和翻转,仿射变换等的源代码
- 4、matlab小问题。。。
- 5、如何根据角点做两幅图像之间的仿射变换
用仿射函数maketform、imtransform进行图像的旋转变换
其中maketform中的[0 -1 0; 1 0 0; 0 0 1]是使用到的仿射变换矩阵
然后利用变换矩阵[0 -1 0; 1 0 0; 0 0 1]对I只做一次仿射变换(即[0 -1 0; 1 0 0; 0 0 1]*i),得到了变换结果矩阵T
Maketform函数就是利用给定的参量建立变换结构,然后把该变换结构赋给结构体变换,根据得到的结构体变量T调用imtransform函数进行变换。
不懂可追问哦!~~
求一个matlab图形处理的程序加解析
一、实验题目
读取图像文件:q6g.jpg
生成新的车牌参考图像,该图像大小为120*330,其中间100*310大小的矩形设为白色,周围为黑色,显示该图像;
假设图像为仿射变换,手工选择的4个约束点,配准q6g.jpg中的车牌,并显示配准后的图像;
q6g.jpg中的车牌相对于车牌参考图像的仿射变换矩阵是?
二、实验要求
1. 生成新的车牌参考图像;
2. 用cpselect选择对应点;
3. 配准、显示图像;
4. 得出仿射变换矩阵。
三、实验目的
(1)练习使用Matlab;
(2)练习使用矩阵生成;
(3)练习使用cpselect选取配准点;
(4)理解变换结构,得出变换矩阵。
四、程序代码
close all;
clc;clear;
a=imread('q6g.jpg');
b=zeros(120,330); %开始生成参考图像
b(11:110,11:320)=255;
b=uint8(b); %生成参考图像
% b=imread('q0g.bmp'); %标准图像
imshow(a),figure,imshow(b);
[input_points, base_points]=cpselect(a,b,'wait',ture); %选择点 file-export—全选—ok
tform = cp2tform(input_points, base_points, 'affine'); %在此处设置断点
k = imtransform(a,tform); %修正图像
figure,imshow(k); %变换矩阵为
tform.tdata.T图片 要的话 先给 分 ,然后给图片
求MATLAB GUI 环境下 图像处理图像的平移,任意角度的旋转,缩放和翻转,仿射变换等的源代码
该gui函数基本上包括图像处理里面的最基本处理,相当于一个小型photoshop。
比如读取文件,
几何变换中的垂直镜像,平移,旋转,缩放;
正交变换的DFT,FFT,DCT,DST,DHT,DWashT;
灰度处理中的反色,直方图均衡,全局线性变换,分段线性变换,指数非线性变换,对数非线性变换;
图像增强里面的加噪声,平滑,锐化,伪彩色增强;
图像分割里面的灰度阈值法,Robert,Laplace,sobel,prewitt,canny算子边缘检测法;
图像恢复里面的直接逆滤波,维纳滤波;图像编码里面的霍夫曼编码,行程编码-
matlab小问题。。。
clear all;
clc;
I1=imread('D:\ebook\ref.bmp');
I2=imread('D:\ebook\swt.bmp');
unregistered =I2;%%未配准图像
rect=I1;%%参考图像
cpselect(unregistered(:,:,1),rect);%%%选择点对,选完后记得保存
uiwait(msgbox('Click OK after closing the CPSELECT window.','Waiting...'))
input_points_corr= cpcorr(input_points,base_points,unregistered,rect);
tform = cp2tform(input_points_corr,base_points,'linear conformal');%%仿射变换
registered = imtransform(unregistered,tform,'XData',[1 300], 'YData',[1 300]);%%对图像进行重采样
H.Position=[232 258 600 402];
figure(H)
subplot(2,2,1)
imagesc(rect)
title('Original image 1')
subplot(2,2,3)
imagesc(unregistered)
title('Unmatched image 2')
subplot(2,2,2)
imagesc(rect)
title('Original image 1')
subplot(2,2,4)
imagesc(registered)
title('Matched image 2')
colormap (gray)
步骤:
1 运行程序,在input里点一个点,在base里在大概相等的位置点一个点,这个两个点构成点对;
2 选取三对以上的点(仿射变换,至少需要三对点);
3 选完后,点file -save points to workspace ,然后再点击ok按钮;
这函数不是很好,你选取的点对位置差不多的话,配准较好,差的远的话,配准会失效;
如何根据角点做两幅图像之间的仿射变换
上面这个程序得在matlab R2013a上才能运行成功,之前的版本貌似还没有detectFASTFeatures这个函数。如果你没有安装matlab R2013a的话,就换个算法吧,比如说换成detectSURFFeature或者detectHarrisFeatures函数
关于matlab仿射变换代码和matlab编程及仿真应用的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;
相关推荐
- 05-14google应用商店,google应用商店官方下载
- 05-13aso应用商店优化,aso优化软件
- 05-09网页代码,网页代码快捷键
- 05-06单页网站的代码(完整的网页代码)[20240506更新]
- 05-06个人主页图片代码(个人主页图片代码怎么弄)[20240506更新]
- 05-06提取微信名片代码(微信名片信息提取)[20240506更新]
- 05-06php后台权限管理代码(php管理员权限)[20240506更新]
- 05-06付费观看代码php(付费观看代码)[20240506更新]
- 05-06在线html执行代码(html怎么运行)[20240506更新]
- 05-06源代码管理资源管理器(资源管理器运行代码)[20240506更新]
取消回复欢迎 你 发表评论:
- 标签列表
- 最近发表
- 友情链接