为了账号安全,请及时绑定邮箱和手机立即绑定

Matlab Image与Plot 在统一画图框显示 椭圆

标签:
大数据

已知:椭圆的长轴端点左边
短轴长度
画椭圆。

clc
clear all
close all

syms x y;
x1=900;%坐标1
y1=720;

x2 = 1144;%坐标2
y2 = 622;
%% 图片参数设置
imgH = 512;% y
imgW = 800;% x
%% 椭圆参数设置
a = sqrt((x1-x2)^2 + (y1-y2)^2)/2;%半长轴
b = 0.5*a;%半短轴  任意认为固定
c = sqrt(a^2-b^2);%半焦距

e = c/a;%离心率(0<e<1),e=0时为圆,e接近椭圆
x0 = (x2 + x1)/2;%椭圆心 x 坐标
y0 = (y2 + y1)/2;%椭圆心 y 坐标

cosTheta = (x1-x2)/sqrt((x1-x2)^2+(y1-y2)^2);
theta = acos(cosTheta);%倾斜角
%% 任意椭圆公式
f = (a^2-c^2*cos(theta)^2)*(x-x0).^2  + (a^2-c^2*sin(theta)^2)*(y-y0).^2  -  c^2*sin(2*theta)*(x-x0).*(y-y0) - a^2*b^2 ;

%%  图片
Im2=imread('test.jpg');
ImB=imresize(Im2,[imgH,imgW]);
%%  叠加

imshow(Im2);
hold on
plotIm = ezplot(f,[-1.5*a+x0,1.5*a+x0,-1.5*a+y0,1.5*a+y0,]);
plotIm.Color = 'r';
plotIm.LineWidth = 10;
axis off

saveas(gcf,'result.jpg');
点击查看更多内容
2人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消