hjj54 2021-06-25 23:39 采纳率: 100%
浏览 106
已采纳

Matlab/如何寻找旋转中心和旋转坐标

目的是寻找旋转中心和旋转角度,但是旋转前和旋转后的图形在同一张图片上,如何区分旋转前后的图形的坐标。

  • 写回答

1条回答 默认 最新

  • CSDN专家-黄老师 2021-06-26 10:29
    关注
    function re = getCurve(img)
    
    [m,n]=size(img);
    
    oy=m/2;
    ox=n/2;
    
    %求中心點到圖像四個角的距離
    up_left=sqrt((oy-0)^2+(ox-0)^2);
    up_right=sqrt((oy-0)^2+(ox-n)^2);
    down_left=sqrt((oy-m)^2+(ox-0)^2);
    down_right=sqrt((oy-m)^2+(ox-n)^2);
    
    num=3600;
    %求中心點距離四角距離的最大值,作為變換后圖像的高。
    %這個最大值也是極坐標變換的極徑
    radius=round(max([up_left up_right down_left down_right]));
    re = zeros(num,1);
    
    for i=0:1:radius          %縱坐標代表極徑,不同情況不一樣
        for j=1:num       %橫坐標代表極角,為3600
            %oy,ox作為極坐標變換中心坐標,需要作為偏移量相加
            ind = j/10;
            h=round(oy+i*sin(ind*pi/180));
            w=round(ox+i*cos(ind*pi/180));
            
            if h>0 && w> 0&& h<=m && w<=n       %超出原圖像的像素忽略
                re(j)= re(j) +double(img(h,w));
            end
        end
    end
    re = re/sum(re);
    end

    参考一下:https://zh.codeprj.com/blog/b5066a1.html

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥30 酬劳2w元求合作写文章
  • ¥15 在现有系统基础上增加功能
  • ¥15 远程桌面文档内容复制粘贴,格式会变化
  • ¥15 关于#java#的问题:找一份能快速看完mooc视频的代码
  • ¥15 这种微信登录授权 谁可以做啊
  • ¥15 请问我该如何添加自己的数据去运行蚁群算法代码
  • ¥20 用HslCommunication 连接欧姆龙 plc有时会连接失败。报异常为“未知错误”
  • ¥15 网络设备配置与管理这个该怎么弄
  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图