哼º 2022-06-29 22:37 采纳率: 78.6%
浏览 179
已结题

使用matlab内置几何变换函数 fitgeotrans imwarp transformPointsForward 遇到的问题

在使用matlab内置几何变换函数 fitgeotrans imwarp transformPointsForward 进行透视校正时遇到了一些问题
想要在透视校正后依然标出左下角方块的四个角点,但是不知道要怎么提取角点

img

img

I = imread([pn fn]);                %读入彩色图像
figure('NumberTitle','off','Name','原始图像');
imshow(I);title('原始图像');        %显示原始图像
%% prepare
img = rgb2gray(I);
width = size(img,2);
height = size(img,1);
figure;imshow(img)
% moving_points = [0,0;
%                 100,50;
%                 0,50;
%                 50,100];
moving_points = ginput(4);
hold on ; plot(moving_points(:,1),moving_points(:,2),'ro');
fixed_points = [0,0;
    100,0;
    0,200;
    100,200];

%% method 1,use matlab function
tfom = fitgeotrans(moving_points,fixed_points,'projective');
X = moving_points(:,1);
Y = moving_points(:,2);
[x,y] = transformPointsForward(tfom,X(:),Y(:));
figure;plot(x,y,'ro');title('验证坐标点对齐')
grid on
tic;    %计时
dst_img = imwarp(img,tfom);


t_sys = toc;
imshow(dst_img);title(['图像仿射变换后(系统函数),耗时(s):',num2str(t_sys)])

  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 7月7日
    • 创建了问题 6月29日

    悬赏问题

    • ¥20 关于#硬件工程#的问题,请各位专家解答!
    • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
    • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
    • ¥30 截图中的mathematics程序转换成matlab
    • ¥15 动力学代码报错,维度不匹配
    • ¥15 Power query添加列问题
    • ¥50 Kubernetes&Fission&Eleasticsearch
    • ¥15 報錯:Person is not mapped,如何解決?
    • ¥15 c++头文件不能识别CDialog
    • ¥15 Excel发现不可读取的内容