声呐矩形图像转换为扇形算法
2021/8/1 9:36:01
本文主要是介绍声呐矩形图像转换为扇形算法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
clear;clc;close; %% 读取输入图像数据 imIn=imread('lion.jpg'); imIn=flip(imIn);% 倒置读入图像数据 [hIn,wIn,~]=size(imIn);% 输入图像的宽和高 %% 根据扇形几何关系计算输出图像像素 angle=15; % 张开角度的一半 ratio=8/11; % 假定Llength/(Llength+Lstart)=8/9,要求<1 hOut=ceil(hIn/ratio); % 输出图像数据高度,取整操作 Lstart=ceil(hOut*(1-ratio)); Llength=hIn; wOut=2*ceil(hOut*sind(angle));% 输出图像数据宽度 imOut=zeros(hOut,wOut,3); % 根据大小分配输出图像数据空间 %% 根据张开角度范围划分射线角度 alpha=linspace(-angle,angle,wIn); %% 遍历输入图像数据每一列,找到输出图像数据中的坐标位置 figure(1) % 定位图像 set(gcf,'name','扇形定位点') % 定位图像 xlim([0 wOut]) ylim([0 hOut]) axis equal for i=1:wIn % 遍历输入图像数据每一列 d=cosd(alpha(i))*(Lstart:hOut) ;% 输出图像纵坐标 lats=ceil(d); b=sind(alpha(i))*(Lstart:hOut)+wOut/2; % 输出图像横坐标 lons=ceil(b); for j=1:hIn imOut(lats(j),lons(j),:)=imIn(j,i,:);% 由于扇形坐标经纬度点有重复,将输入图像每个数据点依次赋值给输出图像数据的对应点 end plot(lons,lats) % 画出经纬度坐标 axis equal hold on end imOut=uint8(imOut); figure(2) % 扇形输出图像 set(gcf,'name','输出图像') imOut=flip(imOut); h=imshow(imOut) axis equal figure(3) % 输入图像 set(gcf,'name','输入图像') imshow(imIn); axis equal
这篇关于声呐矩形图像转换为扇形算法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南