目的是寻找旋转中心和旋转角度,但是旋转前和旋转后的图形在同一张图片上,如何区分旋转前后的图形的坐标。
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
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 在若依框架下实现人脸识别
- ¥15 网络科学导论,网络控制
- ¥100 安卓tv程序连接SQLSERVER2008问题
- ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
- ¥15 metadata提取的PDF元数据,如何转换为一个Excel
- ¥15 关于arduino编程toCharArray()函数的使用
- ¥100 vc++混合CEF采用CLR方式编译报错
- ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
- ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
- ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同